diff --git a/.editorconfig b/.editorconfig index 635a7065..ff1acb70 100644 --- a/.editorconfig +++ b/.editorconfig @@ -16,7 +16,7 @@ indent_style = space line_length = 120 multi_line_output = 3 -[*.{css,html,js,json,sass,scss,yml,yaml}] +[*.{css,html,js,json,liquid,yml,yaml}] indent_size = 2 indent_style = space diff --git a/.github/workflows/deploy-to-ghpages.yml b/.github/workflows/deploy-to-ghpages.yml new file mode 100644 index 00000000..3be6a16a --- /dev/null +++ b/.github/workflows/deploy-to-ghpages.yml @@ -0,0 +1,47 @@ +name: Deploy to GitHub Pages + +on: + push: + branches: + - main + pull_request: + +jobs: + deploy: + runs-on: ubuntu-latest + permissions: + contents: write + concurrency: + group: ${{ github.workflow }}-${{ github.ref }} + steps: + - uses: actions/checkout@v3 + + - name: Setup Node + uses: actions/setup-node@v3 + with: + node-version: "20" + + - name: Persist npm cache + uses: actions/cache@v3 + with: + path: ~/.npm + key: ${{ runner.os }}-node-${{ hashFiles('**/package.json') }} + + - name: Persist Eleventy .cache + uses: actions/cache@v3 + with: + path: ./.cache + key: ${{ runner.os }}-eleventy-fetch-cache + + - name: Install dependencies + run: npm install + + - name: Build + run: npm run build + + - name: Deploy + uses: peaceiris/actions-gh-pages@v3 + with: + github_token: ${{ secrets.GITHUB_TOKEN }} + publish_dir: ./dist + publish_branch: gh-pages diff --git a/.gitignore b/.gitignore index df48ed89..ce8f2f62 100644 --- a/.gitignore +++ b/.gitignore @@ -1,12 +1,133 @@ -.bundle -.jekyll-cache -.jekyll-metadata -.sass-cache -.vendor -_site -Gemfile.lock -node_modules -vendor -node_modules -.DS_Store -docker-compose.override.yml +# Logs +logs +*.log +npm-debug.log* +yarn-debug.log* +yarn-error.log* +lerna-debug.log* +.pnpm-debug.log* + +# Diagnostic reports (https://nodejs.org/api/report.html) +report.[0-9]*.[0-9]*.[0-9]*.[0-9]*.json + +# Runtime data +pids +*.pid +*.seed +*.pid.lock + +# Directory for instrumented libs generated by jscoverage/JSCover +lib-cov + +# Coverage directory used by tools like istanbul +coverage +*.lcov + +# nyc test coverage +.nyc_output + +# Grunt intermediate storage (https://gruntjs.com/creating-plugins#storing-task-files) +.grunt + +# Bower dependency directory (https://bower.io/) +bower_components + +# node-waf configuration +.lock-wscript + +# Compiled binary addons (https://nodejs.org/api/addons.html) +build/Release + +# Dependency directories +node_modules/ +jspm_packages/ + +# Snowpack dependency directory (https://snowpack.dev/) +web_modules/ + +# TypeScript cache +*.tsbuildinfo + +# Optional npm cache directory +.npm + +# Optional eslint cache +.eslintcache + +# Optional stylelint cache +.stylelintcache + +# Microbundle cache +.rpt2_cache/ +.rts2_cache_cjs/ +.rts2_cache_es/ +.rts2_cache_umd/ + +# Optional REPL history +.node_repl_history + +# Output of 'npm pack' +*.tgz + +# Yarn Integrity file +.yarn-integrity + +# dotenv environment variable files +.env +.env.development.local +.env.test.local +.env.production.local +.env.local + +# parcel-bundler cache (https://parceljs.org/) +.cache +.parcel-cache + +# Next.js build output +.next +out + +# Nuxt.js build / generate output +.nuxt +dist + +# Gatsby files +.cache/ +# Comment in the public line in if your project uses Gatsby and not Next.js +# https://nextjs.org/blog/next-9-1#public-directory-support +# public + +# vuepress build output +.vuepress/dist + +# vuepress v2.x temp and cache directory +.temp +.cache + +# Docusaurus cache and generated files +.docusaurus + +# Serverless directories +.serverless/ + +# FuseBox cache +.fusebox/ + +# DynamoDB Local files +.dynamodb/ + +# TernJS port file +.tern-port + +# Stores VSCode versions used for testing VSCode extensions +.vscode-test + +# yarn v2 +.yarn/cache +.yarn/unplugged +.yarn/build-state.yml +.yarn/install-state.gz +.pnp.* + +# System fiels +.DS_Store \ No newline at end of file diff --git a/_includes/styleguide/styleguide-icons.html b/.nojekyll similarity index 100% rename from _includes/styleguide/styleguide-icons.html rename to .nojekyll diff --git a/.ruby-version b/.ruby-version deleted file mode 100644 index 6a81b4c8..00000000 --- a/.ruby-version +++ /dev/null @@ -1 +0,0 @@ -2.7.8 diff --git a/CNAME b/CNAME index 4842e16d..8213385f 100644 --- a/CNAME +++ b/CNAME @@ -1 +1 @@ -2024.djangocon.us +durham.djangocon.us \ No newline at end of file diff --git a/Gemfile b/Gemfile deleted file mode 100644 index af000052..00000000 --- a/Gemfile +++ /dev/null @@ -1,5 +0,0 @@ -source "https://rubygems.org" - -gem "webrick" - -gem "github-pages", group: :jekyll_plugins diff --git a/README copy.md b/README copy.md deleted file mode 100644 index 0c1c815d..00000000 --- a/README copy.md +++ /dev/null @@ -1,238 +0,0 @@ -# 2023.djangocon.us Website - -[![Contributors](https://img.shields.io/github/contributors/djangocon/2023.djangocon.us.svg)](https://github.com/djangocon/2023.djangocon.us/graphs/contributors) - -The 2023 DjangoCon.us website is a static site compiled with [Jekyll](https://jekyllrb.com/docs/home/). The frontend relies heavily on the [Foundation](http://foundation.zurb.com/sites/docs/) framework. Frontend dependencies are installed and updated with [npm](https://www.npmjs.com/). - -## Code of Conduct - -As a contributor, you can help us keep the Django community open and inclusive. -Please read and follow our [Code of Conduct](CODE_OF_CONDUCT.md). - -## Getting Started - -Get started contributing by reading our [Contributing](CONTRIBUTING.md) guidelines. - -### Contributing via Browser - -1. Navigate to the [DjangoCon US website repo](https://github.com/djangocon/2023.djangocon.us) on GitHub. In the upper right hand corner of the repo, click the "Fork" button. Alternatively, click on an individual file and click the pencil icon. GitHub will automatically fork the repo for you. - -2. Head over to your GitHub account, where you will find the forked repo. This is a copy of the official code. Your changes to this forked code will not affect the official code, unless you submit a pull request and an admin merges your pull request. - -3. For changes that do not need to be tested locally, the change can be made and submitted in the browser. - -4. Within your forked repo, make sure the "Branch" tab is set to the `main` branch. - -5. Once you are on the correct branch, navigate to the file you intend to change and click the pencil icon to open it. Make the change and click the "Commit changes" button. - -6. Staying within your forked repo, navigate back to the main page of the branch (note: your pull request should be submitted via your forked repo, not the main repo). Click "New pull request." Click the "Commit changes" button. At the "Comparing changes" page, double check that you are happy with your proposed change. If so, click "Create pull request." Add a descriptive title and comment if applicable, then click "Create pull request" at the bottom to submit. An admin will review your proposed change, merge it, or give you feedback. If you are not ready for your pull request to be immediately merged, you can let those reviewing pull requests know by using the acronym WIP (Work in Progress) or a similar message in your pull request title. - -#### Example: Updating Organizer Info - -Follow the above instructions to step 5. - -Click on the `_organizer` folder, then your own `MY_NAME.md` file. Click on the pencil icon to open the file. Make your changes, making sure that your information is placed within quotation marks. - -**To add a photo:** navigate to the `static/img/organizers` folder. Click "Upload files". Drag or choose your photo file into the window. Click "Commit changes". Your photo should now be in the folder. Ideally, the photo should be 400 x 400px. In your `MY_NAME.md` file, make sure the path to your photo has the proper name and file ending (`.jpg`, `.png`, etc.). - -If you need assistance, please ask! Complete step 6. - -### Contributing via Local Development - -For changes that require cloning/running the code locally, follow the above instructions to step 5. Instead of navigating to the file through the browser, open up your computer terminal (you will need to have Git installed locally and a code editor of your choice). - -Clone your forked repo locally via the terminal, replacing the username in the URL with your own (note: not all operating systems will use a `$` as a terminal prompt). - -```bash -$ git clone https://github.com//2023.djangocon.us -``` - -Change directory into the folder - -```bash -$ cd 2023.djangocon.us -``` - -Verify that you are on the `main` branch - -```bash -$ git branch -``` - -Follow the instructions below to run the website on a local server. GitHub recommends using [Bundler](http://bundler.io/) to install and run Jekyll. [Ruby](https://www.ruby-lang.org) is a pre-requisite. One of the project dependencies (nokogiri) requires a Ruby version >= 2.1.0. See the [Jekyll Quick-start Guide](https://jekyllrb.com/docs/quickstart/) for more info. - -#### Install Jekyll - -You might need to use ```$ sudo gem install jekyll bundler foreman``` - -```bash -$ gem install jekyll bundler -$ bundle install -``` - -#### Install Node Dependencies - -You will need Node v10.0 or greater to compile frontend assets. We're using [Webpack](https://webpack.js.org/) to compile Scss and JavaScript. - -You'll need to install all the JS dependencies. - -```bash -$ npm install . -# installs dependencies listed in package.json -``` - -#### Compile CSS & JS - -```bash -$ npm run build -# Builds production-ready assets -``` - -#### Run Jekyll - -```bash -$ bundle exec jekyll serve -# => Now browse to http://localhost:4000 -``` - -#### Run html-proofer to find broken links and accessibility issues - -```bash -$ bundle exec rake test -``` - -#### Pushing to GitHub and Submitting a Pull Request - -After you have made your changes, you will need to push the local files with the changes back to GitHub in order to submit a pull request. Assuming you are still on the `main` branch, you will be pushing your changes from the local `main` branch to the `main` branch of the forked repo at your GitHub account. - -```bash -$ git add . -$ git commit -m "Your note" -$ git push origin main -``` - -You will then resume the process at step 6 to submit a pull request. - -If you plan to continue working locally and submitting pull requests, you may want to add an upstream remote locally that points to the DjangoCon US repo, in order to fetch changes. You may also want to consider creating a feature branch (also known as a "topic" branch), making your changes there (instead of in the `main` branch), pushing to GitHub and submitting the update via pull request. You can then keep your `main` branch up-to-date while working on multiple features. - -### Adding Contributors - -If you have gone through the previous installation steps, the `all-contributors-cli` package should already be installed locally by npm. The developer dependency and scripts can be found in `package.json` and the init config and JSON entries in the `.all-contributorsrc` file. - -To add a contributor by GitHub username (this will add a JSON entry to `.all-contributorsrc` and add the contributor to the `README` list), run the following command, hitting enter twice to avoid choosing any contribution type - -```bash -$ npm run add -- -hit enter twice -``` - -To generate a README list from the `.all-contributorsrc` file - -```bash -$ npm run generate -``` - -## Contributors - -Thanks goes to these wonderful people: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - - - -This project uses the [`all-contributors-cli`](https://www.npmjs.com/package/all-contributors-cli). Contributions of any kind welcome! - -## License - -[MIT License](LICENSE) diff --git a/README.md b/README.md index d1932b4b..6227763a 100644 --- a/README.md +++ b/README.md @@ -1,307 +1,24 @@ -# 2024.djangocon.us +# DjangoCon.us Conference Website -[![Contributors](https://img.shields.io/github/contributors/djangocon/2023.djangocon.us.svg)](https://github.com/djangocon/2024.djangocon.us/graphs/contributors) +## Installation -The 2024 DjangoCon.us website is a static site compiled with [Jekyll](https://jekyllrb.com/docs/home/). The frontend relies heavily on the [Foundation](http://foundation.zurb.com/sites/docs/) framework. Frontend dependencies are installed and updated with [npm](https://www.npmjs.com/). +This project requires Node v20 or greater. -## Code of Conduct +1. Run `npm install` to install Node packages. -As a contributor, you can help us keep the Django community open and inclusive. -Please read and follow our [Code of Conduct](CODE_OF_CONDUCT.md). +## Building & Development -## Getting Started +This project uses Liquid for templating. As such, you may wish to install syntax highlighting for Liquid in your text editor. -Get started contributing by reading our [Contributing](CONTRIBUTING.md) guidelines. +* VS Code: [Liquid Language Support](https://marketplace.visualstudio.com/items?itemName=neilding.language-liquid) +* [Liquid documentation](https://liquidjs.com/) -### Contributing via Browser +Build and watch for local changes by running: -1. Navigate to the [DjangoCon U.S. website repo](https://github.com/djangocon/2024.djangocon.us) on GitHub. In the upper right hand corner of the repo, click the "Fork" button. Alternatively, click on an individual file and click the pencil icon. GitHub will automatically fork the repo for you. +`npm run serve` -2. Head over to your GitHub account, where you will find the forked repo. This is a copy of the official code. Your changes to this forked code will not affect the official code, unless you submit a pull request and an admin merges your pull request. +This opens a local server at `http://localhost:8080/` and watches for changes to the source files. -3. For changes that do not need to be tested locally, the change can be made and submitted in the browser. +# To Dos -4. Within your forked repo, make sure the "Branch" tab is set to the `main` branch. - -5. Once you are on the correct branch, navigate to the file you intend to change and click the pencil icon to open it. Make the change and click the "Commit changes" button. - -6. Staying within your forked repo, navigate back to the main page of the branch (note: your pull request should be submitted via your forked repo, not the main repo). Click "New pull request." Click the "Commit changes" button. At the "Comparing changes" page, double check that you are happy with your proposed change. If so, click "Create pull request." Add a descriptive title and comment if applicable, then click "Create pull request" at the bottom to submit. An admin will review your proposed change, merge it, or give you feedback. If you are not ready for your pull request to be immediately merged, you can let those reviewing pull requests know by using the acronym WIP (Work in Progress) or a similar message in your pull request title. - -#### Example: Updating Organizer Info - -Follow the above instructions to step 5. - -Click on the `_organizer` folder, then your own `MY_NAME.md` file. Click on the pencil icon to open the file. Make your changes, making sure that your information is placed within quotation marks. - -**To add a photo:** navigate to the `static/img/organizers` folder. Click "Upload files". Drag or choose your photo file into the window. Click "Commit changes". Your photo should now be in the folder. Ideally, the photo should be 400 x 400px. In your `MY_NAME.md` file, make sure the path to your photo has the proper name and file ending (`.jpg`, `.png`, etc.). - -If you need assistance, please ask! Complete step 6. - -### Contributing via Local Development - -For changes that require cloning/running the code locally, follow the above instructions to step 5. Instead of navigating to the file through the browser, open up your computer terminal (you will need to have Git installed locally and a code editor of your choice). - -Clone your forked repo locally via the terminal, replacing the username in the URL with your own (note: not all operating systems will use a `$` as a terminal prompt). - -```bash -$ git clone https://github.com//2024.djangocon.us -``` - -Change directory into the folder - -```bash -$ cd 2024.djangocon.us -``` - -Verify that you are on the `main` branch - -```bash -$ git branch -``` - -Follow the instructions below to run the website on a local server. - -#### Prerequisites - -- [Ruby](https://www.ruby-lang.org) (>= 2.5.0 & < 3.X) - - See the [Jekyll Quick-start Guide](https://jekyllrb.com/docs/quickstart/) for more info. -- NodeJS (>= 10.0) -- Python (for node-gyp) - -#### Install Jekyll - -GitHub recommends using [Bundler](http://bundler.io/) to install and run Jekyll. - -You might need to use `$ sudo gem install jekyll bundler foreman` - -```bash -$ gem install jekyll bundler -$ bundle install -``` - -#### Install Node Dependencies - -You'll need to install all the JS dependencies. - -```bash -$ npm install . -# installs dependencies listed in package.json -``` - -#### Compile CSS & JS - -We're using [Webpack](https://webpack.js.org/) to compile Scss and JavaScript. - -```bash -$ npm run build -# Builds production-ready assets -``` - -#### Run Jekyll - -```bash -$ bundle exec jekyll serve -# => Now browse to http://localhost:4000 -``` - -#### Run html-proofer to find broken links and accessibility issues - -```bash -$ bundle exec rake test -``` - -#### Pushing to GitHub and Submitting a Pull Request - -After you have made your changes, you will need to push the local files with the changes back to GitHub in order to submit a pull request. Assuming you are still on the `main` branch, you will be pushing your changes from the local `main` branch to the `main` branch of the forked repo at your GitHub account. - -```bash -$ git add . -$ git commit -m "Your note" -$ git push origin main -``` - -You will then resume the process at step 6 to submit a pull request. - -If you plan to continue working locally and submitting pull requests, you may want to add an upstream remote locally that points to the DjangoCon US repo, in order to fetch changes. You may also want to consider creating a feature branch (also known as a "topic" branch), making your changes there (instead of in the `main` branch), pushing to GitHub and submitting the update via pull request. You can then keep your `main` branch up-to-date while working on multiple features. - -### Contributing via Docker and Docker Compose - -If you want to use [Docker](https://www.docker.com/) and [Docker Compose](https://docs.docker.com/compose/) to run a web server locally please follow the below steps. - -If Docker and Docker Compose are not installed on your system please install them by following the above links. - -Once both are installed you can type the following command on the project root directory. - -```bash -$ docker compose up -``` - -If everything works then a local server is available at `http://0.0.0.0:4000`. - -If you want to shutdown your local server you can anytime press `ctrl-c` to stop the local server from the command line from which you have started the local server. - -### Adding Contributors - -If you have gone through the previous installation steps, the `all-contributors-cli` package should already be installed locally by npm. The developer dependency and scripts can be found in `package.json` and the init config and JSON entries in the `.all-contributorsrc` file. - -To add a contributor by GitHub username (this will add a JSON entry to `.all-contributorsrc` and add the contributor to the `README` list), run the following command, hitting enter twice to avoid choosing any contribution type - -```bash -$ npm run add -- -hit enter twice -``` - -To generate a README list from the `.all-contributorsrc` file - -```bash -$ npm run generate -``` - -## Contributors - -Thanks goes to these wonderful people: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - - - -This project uses the [`all-contributors-cli`](https://www.npmjs.com/package/all-contributors-cli). Contributions of any kind welcome! - -## License - -[MIT License](LICENSE) +1. Replace autoprefixer and cssnano with lightningcss diff --git a/THEME.md b/THEME.md new file mode 100644 index 00000000..fbd137df --- /dev/null +++ b/THEME.md @@ -0,0 +1,14 @@ +# Theme Customization + +`THEME-X` is an identifier that has been used to denote where a customization has been made. + +## Making changes + +1. Modify key variables in `:root` in `main.css`. +2. Look for `THEME-X` comments throughout the codebase and make appropriat changes. + + +## Design guidelines + +1. Sizing, padding, spacing, typography, and general "shape" should stay the same. +2. Colors, fonts, photo treatment, and artistic treatments should be the focus of the theme. diff --git a/_config.yml b/_config.yml deleted file mode 100644 index 89ceb81e..00000000 --- a/_config.yml +++ /dev/null @@ -1,125 +0,0 @@ -title: DjangoCon US -url: "https://2024.djangocon.us" -author : DjangoCon US -description: | - DjangoCon US 2024 conference will take place in Durham, NC - from September 22-27, 2024! -enforce_ssl: "2024.djangocon.us" -relative_permalinks: false -permalink: news/:title/ # permalink: date -timezone: America/New_York -conf_year: 2024 - -include: - - _pages - -# Build settings -markdown: kramdown - -plugins: -- jekyll-feed -- jekyll-gist -- jekyll-mentions -- jekyll-paginate -- jekyll-redirect-from -- jekyll-remote-theme -- jekyll-seo-tag -- jekyll-sitemap -- jemoji - -exclude: -- "*.yaml" -- "*.yml" -- .cache -- .editorconfig -- .gitignore -- .vendor -- bin -- bower_components -- CNAME -- CODE_OF_CONDUCT.md -- CONTRIBUTING.md -- docker-compose.yml -- EDITORS_GUIDE.md -- Gemfile -- Gemfile.lock -- justfile -- LICENSE -- Makefile -- node_modules -- NOTES.md -- package*.json -- Procfile -- README.md -- requirements.in -- vendor -- webpack.config.js - -# We need `future` to allow our schedule to work :/ -future: true - -collections: # process the _data folder - components: - output: false - schedule: - output: true - permalink: /:collection/:name/ - organizers: - output: false - permalink: /:collection/ - presenters: - output: true - permalink: /:collection/ - sponsors: - output: false - permalink: /:collection/ - places: - output: false - permalink: /:collection/ - jobs: - output: true - permalink: /:collection/:name/ - -# SEO Plugin settings - -twitter: - username: djangocon - -# This is the default logo that people see with opengraph -logo: /static/img/social/share.png - -# Frontmatter fallback settings -# This is the default logo that people see on blog posts -defaults: - - scope: - path: "" - values: - image: /static/img/social/share.png - - scope: - path: "_presenters" - type: presenters - values: - sitemap: false - -# Our DjangoCon US settings... -conduct_email: "conduct@djangocon.us" -contact_us_email: "hello@djangocon.us" -opportunity_grants_email: "grants@djangocon.us" -program_team_email: "program@djangocon.us" -sponsors_email: "sponsors@djangocon.us" -visa_email: "visas@djangocon.us" - -# Our DjangoCon US links -cfp_application: "https://pretalx.com/djangocon-us-2024/cfp" -hotel_reservation_link: "https://www.marriott.com/events/start.mi?id=1707512209729&key=GRP" -# slack_link: "https://djangoconus2022.herokuapp.com" -merchandise_link: "" -opportunity_grant_application: "https://forms.gle/Pi12J6vFQHq2CSAy5" -slack_link: "" -sponsorship_prospectus: "" -ticket_link: "https://ti.to/defna/djangocon-us-2024" -# youtube_link: "" - -github: [metadata] -facebook: - app_id: 280981518972848 diff --git a/_data/photos.yml b/_data/photos.yml deleted file mode 100644 index cbbadfbc..00000000 --- a/_data/photos.yml +++ /dev/null @@ -1,37 +0,0 @@ -photos: - - # First Row - - - title: The crowd of DjangoCon US 2019 attendees - image: "https://live.staticflickr.com/65535/48901261227_cf74b0d848_w.jpg" - src: "https://www.flickr.com/photos/djangocon/48901261227/in/album-72157711339647298/" - - title: The crowd of DjangoCon US 2019 attendees - image: "https://live.staticflickr.com/65535/48899454613_c45abfb302_w.jpg" - src: "https://www.flickr.com/photos/djangocon/48899454613/in/album-72157711339647298/" - - # Second Row - - - title: The crowd of DjangoCon US 2019 attendees - image: "https://live.staticflickr.com/65535/48899978896_96c9c2a5fe_w.jpg" - src: "https://www.flickr.com/photos/djangocon/48899978896/in/album-72157711339647298/" - - title: The crowd of DjangoCon US 2019 attendees - image: "https://live.staticflickr.com/65535/48901009341_e64f8b66c5_w.jpg" - src: "https://www.flickr.com/photos/djangocon/48901009341/in/album-72157711339647298/" - - title: The crowd of DjangoCon US 2019 attendees - image: "https://live.staticflickr.com/65535/48900154482_1248dfdc4b_w.jpg" - src: "https://www.flickr.com/photos/djangocon/48900154482/in/album-72157711339647298/" - - title: The crowd of DjangoCon US 2019 attendees - image: "https://live.staticflickr.com/65535/48899439763_481204a45d_w.jpg" - src: "https://www.flickr.com/photos/djangocon/48899439763/in/album-72157711339647298/" - - # Third Row - - - title: The crowd of DjangoCon US 2019 attendees - image: "https://live.staticflickr.com/65535/48900972046_30b2149c11_w.jpg" - src: "https://www.flickr.com/photos/djangocon/48900972046/in/album-72157711339647298/" - - title: The crowd of DjangoCon US 2019 attendees - image: "https://live.staticflickr.com/65535/48900106547_50e83e8a82_w.jpg" - src: "https://www.flickr.com/photos/djangocon/48900106547/in/album-72157711339647298/" - - title: The crowd of DjangoCon US 2019 attendees - image: "https://live.staticflickr.com/65535/48899409558_f798cb1f9c_w.jpg" - src: "https://www.flickr.com/photos/djangocon/48899409558/in/album-72157711339647298/" diff --git a/_drafts/2019-03-25-announcing-djangocon-us-2019.md b/_drafts/2019-03-25-announcing-djangocon-us-2019.md deleted file mode 100644 index 5400f652..00000000 --- a/_drafts/2019-03-25-announcing-djangocon-us-2019.md +++ /dev/null @@ -1,26 +0,0 @@ ---- -author: Rebecca Kindschi -category: General -date: 2019-03-25 06:00:00 -layout: post -image: /static/img/blog/announcing-2019.png -title: "Ready, Set, Here We Go Again!" -published: false ---- -Hello, everyone! We are very excited to announce that the website for DjangoCon US 2019 is [live](https://2019.djangocon.us). Many thanks to [YupGup](http://yupgup.com/) for the website. It looks amazing! - -This year the conference will be September 22-27. - -- September 22: Tutorials (Additional fee) -- September 23-25: Talks -- September 26-27: Sprints - -This year we will be returning to the [Marriott of Mission Valley](https://2019.djangocon.us/venue/) in San Diego, CA. Tickets are [on sale now](https://ti.to/defna/djangocon-us-2019) and our [hotel block is open](https://bit.ly/2UZ0oQQ). We sold out last year, so take advantage of our early bird pricing! If you’re looking for a ride or room share, [check out this spreadsheet](https://docs.google.com/spreadsheets/d/1-O7vSIeSls_xH9w9QVjVrVjgmEciKGduKQRMocCskkk/edit?usp=sharing). - -We will open our [opportunity grant](https://2019.djangocon.us/opportunity-grants/) (formerly financial aid) application on April 1. - -Now is the time to start getting your submissions for talks and tutorials ready because the [call for proposals (CFP)](https://2019.djangocon.us/speaking/) will open on April 1. We look forward to seeing all of the prospective talks and tutorials! - -[Keep in touch](https://twitter.com/djangocon) for more announcements along the way! - -DjangoCon US Organizers :sailboat: diff --git a/_drafts/2019-04-01-announcing-call-for-proposals.md b/_drafts/2019-04-01-announcing-call-for-proposals.md deleted file mode 100644 index ba24fa90..00000000 --- a/_drafts/2019-04-01-announcing-call-for-proposals.md +++ /dev/null @@ -1,26 +0,0 @@ ---- -author: Katia Lira -category: Program -date: 2019-04-01 06:00:00 -layout: post -image: /static/img/blog/cfp-announcement.png -post_photo_url: /static/img/blog/speaking.jpg -post_photo_alt: "Anna Makarudze speaking at DjangoCon US 2018" -title: "The Call for Proposals for DjangoCon US 2019 Is Now Open!" -published: false ---- -We are starting this Monday off with great news: our [call for proposals](https://www.papercall.io/djangocon-us-2019) is now open! The deadline for submissions is May 20th, 2019 [AoE](https://time.is/compare/0000_21_May_2019_in_Anywhere_on_Earth). As long as it’s still May 20th anywhere on earth, you can submit your proposal. - -We invite you to submit your proposal no matter your background or experience level with Django. Proposals can be from a wide range of topics; non-Django and community topics are welcome. You can look at our [talk schedule](https://2018.djangocon.us/talks/) from last year for reference. - -First-time speakers are encouraged! Do you have an idea but don’t know how to submit it? We have experienced speaker mentors who can guide you through the process, from writing the proposal to preparing and presenting the talk. Please contact one of our amazing [speaker mentors](https://2019.djangocon.us/speaking/speaker-resources/) to help you on your way. - -Every presenter receives free admission to the conference. This year we’re also pleased to announce that we have set aside money intended to help offset the cost of travel for accepted speakers. We also have [opportunity grants](https://2019.djangocon.us/opportunity-grants/) that can assist with travel and lodging expenses. - -For more information on talk and tutorial formats, please check out our [speaker information page](https://2019.djangocon.us/speaking/). - -We want everyone attending DjangoCon US to feel safe, welcome, and included. To that end, we have a [Code of Conduct](https://2019.djangocon.us/conduct/) for all speakers and attendees. - -If you have questions feel free [to contact us](mailto:hello@djangocon.us). - -We look forward to your proposals! diff --git a/_drafts/2019-04-03-apply-for-opportunity-grant.md b/_drafts/2019-04-03-apply-for-opportunity-grant.md deleted file mode 100644 index 05041736..00000000 --- a/_drafts/2019-04-03-apply-for-opportunity-grant.md +++ /dev/null @@ -1,20 +0,0 @@ ---- -author: Katia Lira -category: Program -date: 2019-04-03 06:00:00 -layout: post -image: /static/img/blog/cfp-oppgrants.png -post_photo_url: /static/img/blog/cfp-oppgrants.jpg -post_photo_alt: "Atendees at DjangoCon US 2018" -title: "Now You Can Apply for an Opportunity Grant!" -published: false ---- -We are thrilled to announce that we are now accepting applications for [opportunity grants](https://docs.google.com/forms/d/e/1FAIpQLScrtXuXGuqTJFcKh9MIb1JR7APz-k7fABi3qvrH8_Do3r5-lQ/viewform). The deadline for submission is May 20th, 2019 [AoE](https://time.is/compare/0000_21_May_2019_in_Anywhere_on_Earth). - -The primary purpose of an opportunity grant is to facilitate the participation of those who otherwise might not be able to attend the conference. By providing grants that can be used for conference-related expenses like travel, lodging, etc., we hope to help make the conference more accessible to a wider audience. - -Everybody who would benefit from a grant is welcome to apply! It doesn’t matter if you are a first-time attendee or not, if you are an expert on Django or a newbie. However, we have limited funds, and we are trying to promote a more diverse community by prioritizing first-time speakers and those in underrepresented or marginalized groups. - -Our team is committed to maximizing the impact of the opportunity grant program, and the selection process will take into consideration an applicant’s background, involvement in the community and positive influence attending can have in their development. - -If you have questions, please reach out to us at [grants@djangocon.us](mailto:grants@djangocon.us). diff --git a/_drafts/2019-05-02-call-for-community-reviewers.md b/_drafts/2019-05-02-call-for-community-reviewers.md deleted file mode 100644 index d16cc785..00000000 --- a/_drafts/2019-05-02-call-for-community-reviewers.md +++ /dev/null @@ -1,16 +0,0 @@ ---- -author: Rebecca Kindschi -category: Program -date: 2019-05-01 06:00:00 -layout: post -image: /static/img/blog/call-for-reviewers-2019.png -post_photo_url: /static/img/blog/call-for-reviewers.jpg -post_photo_alt: "Lacey Williams Henschel speaking at DjangoCon US 2018" -title: "Announcing Call for Community Reviewers" -published: false ---- -The [call for proposals for DjangoCon US 2019](https://www.papercall.io/djangocon-us-2019) is open, and we would love to have you (yes, you!) help us select our talks and tutorials this year. We strive to create a schedule that appeals to the wider community, and the best way for us to do that is by having members of said community vote for the talks you’d like to see. If you are interested in guiding the 2019 program, this is your chance! - -We welcome reviewers with all levels of experience, even those brand new to the community. You don’t need to be a Django expert, a previous reviewer, or a frequent DjangoCon US attendee to provide great feedback on how to make a program that appeals to everyone! - -If you are interested in volunteering as a community reviewer, please send an email to [program@djangocon.us](mailto:program@djangocon.us) and we’ll help you get started! Please note, we can only grant access to around 30 community reviewers and it will be on a first-come, first-served basis. diff --git a/_drafts/2019-06-26-announcing-talk-lineup.md b/_drafts/2019-06-26-announcing-talk-lineup.md deleted file mode 100644 index 96f27f2a..00000000 --- a/_drafts/2019-06-26-announcing-talk-lineup.md +++ /dev/null @@ -1,61 +0,0 @@ ---- -author: Rebecca Kindschi -category: Program -date: 2019-06-26 06:00:00 -layout: post -image: /static/img/blog/talk-lineup-2019.png -title: "Announcing the 2019 Talk Lineup!" -published: false ---- -We are excited to present our tutorial and talk lineup! The Django community and beyond submitted an incredible number of talk proposals, and selecting these talks was extremely difficult for our program team. We were only able to accept 19% of the submissions we received, and we appreciate the effort everyone put into their submissions; thank you! Another huge thank you to our reviewers, without whom this list would still be weeks in the making. - -We’ll announce the tutorial schedule and full conference schedule soon. If you haven’t purchased your ticket yet, [they’re still on sale](https://ti.to/defna/djangocon-us-2019). - -Congratulations to the presenters of the tutorials and talks below! - -## Tutorials -- Django Real-time Chat: WebSockets, Django Channels, and Deploying to Production (Cara Borenstein) -- Django bootstrapping done right (Pablo García) -- Build a headless content managed site, with Wagtail and Vue.js (Tom Dyson) -- Hands-On Web UI Testing (Andrew Knight) -- Hands-On Web Application Security (Jacinda Shelly) -- Mastering the Django ORM (James Bennett) - -## Talks -- Goodbye Print, Hello Debugger! (Nina Zakharenko) -- To comment or not? A data-driven look at attitudes toward code comments (Veronica Hanus) -- The promised Django Land; the tale of one team’s epic journey from Flask (Nicole Zuckerman) -- Building effective Django queries with expressions (Vanessa Barreiros) -- Everything you need to know but were afraid to ask about Data Classes (Casey Faist) -- The Unspeakable Horror of Discovering You Didn't Write Tests (Melanie Crutchfield) -- Think Like a Product Manager: Straightforward frameworks for building great products (Eleanor Stribling) -- Forklifting Django: Migrating A Complex Django App To Kubernetes (Noah Kantrowitz) -- Lazy Looping: The Next Iteration (Trey Hunner) -- The blameless post mortem: how embracing failure makes us better (Chris Wilcox) -- Search From the Ground Up (William S. Vincent) -- Static Typing in Python (Dustin Ingram) -- Pull Requests: Merging good practices into your project (Luca Bezerra) -- Django REST Framework: Taking your API to the next level. (Carlos Martinez) -- Postgres Index types and where to find them (Louise Grandjonc) -- Using a custom template loader at scale (Dane Hillard) -- Logging and Exception Handling for Django (Ryan Sullivan) -- Prepping Your Project for Production (Peter Baumgartner) -- Migrating legacy data to your Django project. (Adolfo Fitoria) -- Building a multi factor SSO for a whole country with Django (Juan Saavedra) -- Eita! Why Internationalization and Localization matter (Nicolle Cysneiros) -- Creating a containerized Django + React + PostgreSQL development environment (Dan Taylor) -- How to Hack (Legally): Python Edition (Karen Miller) -- Technical Debt: Why it'll ruin your software (Luan Fonseca) -- Nothingness and identity in Python and Django (Daniele Procida) -- Roll Your Own Tech Job: Starting a Business or Side Hustle from Scratch (Erin Mullaney) -- Prefetching for Fun and Profit (Mike Hansen) -- Awesome Automated APIs with Automagic REST (Timothy Allen) -- Just Add Await: Retrofitting Async Into Django (Andrew Godwin) -- Using Django as a Micro-Framework: Hacking on the HTTP handlers and middleware (for fun and profit) (Carlton Gibson) -- Understanding Django authentication (Renato Oliveira) -- Generic View? What is that and why would I use it? (Felipe Lee) -- The Ins and Outs of Model Inheritance (Blythe J Dunham) -- WASM matter? (Russell Keith-Magee) - - -If you’d like to check out these talks and more, [tickets are still on sale](https://ti.to/defna/djangocon-us-2019). Tutorials (sold separately from conference registration) are $195 each, and we will have the schedule for those up soon. We hope to see you in San Diego! :sailboat: diff --git a/_drafts/2019-08-20-childcare-during-djangocon.md b/_drafts/2019-08-20-childcare-during-djangocon.md deleted file mode 100644 index fec2f82a..00000000 --- a/_drafts/2019-08-20-childcare-during-djangocon.md +++ /dev/null @@ -1,19 +0,0 @@ ---- -author: David Fischer -category: General -date: 2019-08-20 00:00:00 -layout: post -image: /static/img/blog/childcare-info.png -title: "Childcare During DjangoCon US" -published: false ---- - -Childcare at DjangoCon US and tech conferences more generally is an important factor that helps folks attend who otherwise may not be able to. We want to make sure that parents feel welcome bringing their children to DjangoCon US and that the availability of childcare is not a barrier to attending. - -Last year, our recommended provider for childcare was [Destination Sitters](https://www.destinationsitters.com/), and feedback was so positive that we are recommending them again. Destination Sitters is a service where certified and vetted sitters come directly to your hotel room and bring a bag of toys for your little ones to play with. There's no need to arrange a pick-up and drop-off at a faraway daycare. They work with children of all ages. - -* **Booking:** Destination Sitters recommends you book a sitter 2-3 weeks in advance although they may be able to accommodate shorter notice. To book a sitter, you can [book online](https://www.destinationsitters.com/book-a-hotel-babysitter/) or call (888) 748-5439. -* **Payment:** DjangoCon US will reimburse you for childcare (up to $150 per day) with a receipt. To request a reimbursement, please email [hello@defna.org](mailto:hello@defna.org). Destination Sitters' [rates are posted on their website](https://www.destinationsitters.com/about-us/#sdca). -* **Other accommodations:** Destination Sitters is not exclusive to the Marriott. If you are staying at another hotel or at a private rental, they can still help. - -We look forward to seeing you -- and your kids -- soon in San Diego! diff --git a/_drafts/2019-08-26-deep-dive-day.md b/_drafts/2019-08-26-deep-dive-day.md deleted file mode 100644 index d9eb5309..00000000 --- a/_drafts/2019-08-26-deep-dive-day.md +++ /dev/null @@ -1,14 +0,0 @@ ---- -author: Rebecca Kindschi -category: General -date: 2019-08-26 06:00:00 -layout: post -image: /static/img/blog/deep-dive-day.png -title: "Introducing Deep Dive Day" -published: false ---- -We’re excited to announce that this year we will be curating a [deep dive day](https://2019.djangocon.us/schedule/#Day-Talk3) to focus on exploring Django and Django-adjacent topics in detail. This single-track day is meant to follow in the footsteps of [Django Under the Hood](https://djangounderthehood.com/) and will provide a range of topics presented in depth, targeting varying levels of Django experience. Whether you're new to Django or have been using it for years, there will be something for you on Deep Dive Day. - -Join us for talks on retrofitting [Async into Django](https://2019.djangocon.us/talks/just-add-await-retrofitting-async-into/), [model inheritance](https://2019.djangocon.us/talks/the-ins-and-outs-of-model-inheritance/), [using Django as a micro-framework](https://2019.djangocon.us/talks/using-django-as-a-micro-framework-on-the/), [WASM](https://2019.djangocon.us/talks/wasm-matter/), [generic views](https://2019.djangocon.us/talks/generic-view-what-is-that-and-why-would/), and [authentication](https://2019.djangocon.us/talks/understanding-django-authentication/). - -Don't miss these awesome talks! [Buy your ticket]({{site.ticket_link}}) today. diff --git a/_drafts/2019-09-05-og.md b/_drafts/2019-09-05-og.md deleted file mode 100644 index b6dd56b3..00000000 --- a/_drafts/2019-09-05-og.md +++ /dev/null @@ -1,22 +0,0 @@ ---- -author: Heather Luna -category: Sponsorship -date: 2019-09-05 22:00:00 -layout: post -title: "Diversity & Inclusion" -published: false ---- - -The Python and Django communities continue to show a commitment to diversity. When it comes to DjangoCon US we always strive to be as diverse and inclusive as we can possibly be. We have an iron clad [Code of Conduct](https://2019.djangocon.us/conduct/) that we stick by and take action on. This helps facilitate a conference atmosphere that everyone feels comfortable and safe in. - -This year, opportunity grants will help folks who under normal circumstances wouldn’t have been able to attend the conference. The grants help to cover the cost of conference related expenses like travel and lodging. - -Thanks to our friends at the [Django Software Foundation](https://www.djangoproject.com/foundation/), the [Python Software Foundation](https://www.python.org/psf/), and the [Django Events Foundation of North America](https://www.defna.org/) - we raised $20,000 for opportunity grants this year!!! - -We’d also like to thank our long time friends at [Nexmo](https://www.nexmo.com/voice) for their contribution to opportunity grants in addition to their Gold sponsorship. - -At the end of the day it’s important to remember that we’re all in this together. It’s been a privilege to see the community join forces to support one another so that we can all immerse ourselves in a week of amazing talks and learning. - -If you’d like to contribute to next year’s opportunity grants please reach out for more information: [hello@djangocon.us](mailto:hello@djangocon.us) - -We look forward to seeing everyone in sunny San Diego in a couple weeks! diff --git a/_drafts/2019-09-09-orientation.md b/_drafts/2019-09-09-orientation.md deleted file mode 100644 index 72834ec1..00000000 --- a/_drafts/2019-09-09-orientation.md +++ /dev/null @@ -1,24 +0,0 @@ ---- -author: Kojo Idrissa -category: Program -date: 2019-09-09 06:00:00 -layout: post -image: /static/img/blog/orientation.png -title: "DjangoCon US 2019 Orientation Event" -published: false ---- -![]({{ page.image }}) - -We're a couple of weeks out from DjangoCon US 2019. As has become our tradition, we're pleased to have an Orientation event on the first day. But we promise it's not like those boring orientations you had to attend in school. - -## What is *Orientation*? -Orientation is designed to help attendees get the most out of DjangoCon US. Over time, we've learned people attending their first con or attending DjangoCon US alone can feel lost, overwhelmed, or left out. An informal survey of potential new conference attendees also revealed the desire for some sort of "guidance" when attending a conference. There are two primary groups we're focusing on: - -- **New or solo attendees**: Tech conferences can be overwhelming, especially if it's your first one or you're attending on your own. We want to help people coming to their first DjangoCon US or their first tech conference have the best experience possible. -- **Traditionally underrepresented groups**: If you're worried that DjangoCon US isn't for "people like you", *don't* worry. We want to assure you that you are more than welcome, and we want you to be as comfortable as possible. - -## What to Expect -We'll have a brief but informative presentation by Kojo Idrissa, our Orientation Chair. We'll start with some basic housekeeping around maximizing your comfort in a large crowd of strangers, as well as how the [Code of Conduct](https://2019.djangocon.us/conduct/) helps you become a better software engineer. We'll then focus on helping you decide how to get the most from DjangoCon US for YOU. - -## When and Where? -The Orientation will be Monday, September 23 at 9:30 am in Salon A-E. That will give you plenty of time to [register and eat breakfast](https://2019.djangocon.us/talks/). As an added bonus, the Opening and Keynote start at 10:00 am in the same room. So, you'll be registered, well-fed, oriented, and ready to start your DjangoCon US adventure! diff --git a/_drafts/2019-09-11-lactation-room.md b/_drafts/2019-09-11-lactation-room.md deleted file mode 100644 index 9a660bfb..00000000 --- a/_drafts/2019-09-11-lactation-room.md +++ /dev/null @@ -1,32 +0,0 @@ ---- -author: Lacey Williams Henschel -category: General -date: 2019-09-11 08:00:00 -layout: post -image: /static/img/blog/lactation-room.png -title: "Information About Our Lactation Room" -published: false ---- - -This year, DjangoCon US is dedicating a room to nursing parents who need to pump breast milk during the conference. This room will be available on the tutorial and talk days, Sunday - Wednesday. - -**Hours**: - -- Sunday: 8:00 a.m. - 5:30 p.m. -- Monday-Wednesday 8:00 a.m. - 6:30 p.m. - -**Location**: Private Dining Room - -You may sign up for pumping times in one-hour blocks on a sign-up sheet that will be posted on the lactation room door. The entrance to the lactation room will be draped from the outside to protect the privacy of the people inside. - -The lactation room will contain: - -- A small fridge to store pumped milk -- Supplies to label your pumped milk -- Antibacterial wipes - -The lactation room will not contain a sink, but a bathroom is not far. Unfortunately, we are not able to stream the audio or video for the talks into this room. - -Please be sure to collect pumped milk by 5:30 p.m. on Sunday or 6:30 p.m. Monday - Wednesday. Pumped milk not collected by 6:30 p.m. on Wednesday, Sept. 25, will be thrown out because the hotel will be removing the fridge and breaking down the room. - -If there's anything else we can do to support your needs at DjangoCon US, let us know by emailing hello@djangocon.us! diff --git a/_drafts/2019-09-13-git-help-desk.md b/_drafts/2019-09-13-git-help-desk.md deleted file mode 100644 index 5adb44fe..00000000 --- a/_drafts/2019-09-13-git-help-desk.md +++ /dev/null @@ -1,18 +0,0 @@ ---- -author: Nic James -category: General -date: 2019-09-13 06:00:00 -layout: post -image: /static/img/blog/git-help-desk.png -title: "Introducing the Git Help Desk!" -published: false ---- - -We are excited to continue making sprints more accessible to everyone this year! In order to make it easier for the sprint leaders to focus on sprinting, we are setting up a **Git Help Desk** during both days of the sprints to help sprinters with their commits. You don’t have to be an expert, but if you are willing to pair with someone until they find their solution, please sign up to be a part of the Git Help Desk! - -If you’re interested in helping out at DjangoCon US, please consider [volunteering for the help desk](https://docs.google.com/spreadsheets/d/1VO8Xh6xPOQb32WjUD7pKJCMXvqCdcMz95CqIoNToUsA/edit#gid=164602686). - -For the sprint newbies or anyone who wants a refresher, we will also be holding an **Introduction to Contributing to Open Source** in Cabrillo 2 from 9am-12pm on Thursday, Sept. 26 hosted by Jeffrey Eliasen. - -Already know how to use Git and GitHub but need help getting set up to contribute to Django? This year we will have Carlton Gibson, one of our Django Fellows, walking you through **How To Start Contributing to Django**, also in Cabrillo 2 from 9am-12pm on Thursday, Sept. 26. - diff --git a/_drafts/2019-09-14-first-time-things-to-bring.md b/_drafts/2019-09-14-first-time-things-to-bring.md deleted file mode 100644 index 59912789..00000000 --- a/_drafts/2019-09-14-first-time-things-to-bring.md +++ /dev/null @@ -1,46 +0,0 @@ ---- -author: Drew Winstel -category: General -date: 2019-09-14 06:00:00 -layout: post -image: /static/img/blog/what-should-i-bring.png -title: "It’s my first DjangoCon US. What should I bring?" -published: false ---- - -It’s your first DjangoCon US (or maybe even your first tech conference). Are you concerned about what you should pack? - -I (Drew Winstel, the 2019 Opportunity Grants chair) was in that position two years ago at DjangoCon US 2017 in Spokane, WA. Here’s what I think you should pack. - -## Notepad and pen/pencil, or a laptop and charger -Perhaps you like your notes a bit more analog? A notepad is exactly what you need. Many people like to leave their laptops in their rooms entirely during talks and take notes on paper instead. Plus, it’s great for logging contact info of people you meet if you don’t have the time or patience to log their contact info into your phone’s contacts immediately. - -If you can't live without your laptop, make sure you bring your charging cable. There’s ample Wi-Fi at the conference provided by the Marriott, so you’ll have the internet at your disposal. Many attendees will have their laptops open to take notes, follow along with slides, and/or test out the concepts being presented during talks. Plus, it’s much easier to live-tweet talks from your computer than your phone if you’re into that sort of thing. - -## Refillable water bottle and/or coffee cup -It’s pretty annoying getting thirsty in the middle of a conference talk. The Marriott provides water dispensers in the hotel lobby, each of the conference rooms, the green room, and the West Lawn, so there are ample opportunities to keep yourself hydrated. Plus, you can be greener by reusing your own vessel instead of single-use disposable cups. - -There are coffee and tea in the West Lawn as well, so if you're a coffee/tea drinker, bring your own tumbler if you want extra for the talks. - -## Comfortable clothes -Everyone is welcome, and dress casually and comfortably, whether that's shorts, pants, a dress, or whatever makes you feel good. It’s up to you to decide what you would like to wear. As long as it isn’t a Code of Conduct violation, it’s pretty much up to you. - -Some of the rooms can get a bit chilly, so you might want to have a jacket or sweater handy. - -## Cell phone -It’s practically essential for survival in suburban America. The mobile coverage is great in the venue area for all four major providers, so about any device will work. - -## Sunglasses and sunscreen -It’s San Diego, California. It’s going to be warm and sunny. Preliminary forecasts show no meaningful chances of rain between the time I wrote this post and the tutorial day, with highs around 75-80 °F (24-27 °C) and lows around 65-68 °F (18-20 °C). There’s quite a bit of outdoor space to relax at the Marriott, and the walk between the conference rooms and the West Lawn (where breakfast and lunch are served) involves a brief outdoor trip across some bright concrete. Plus, there are lots of outdoor tables for eating under the sun. - -## Snacks -The Marriott will have breakfast, lunch, and snacks during the breaks (11:00 AM and 3:40 PM on main talk days) on all conference days as well as appetizers for the opening party on Monday. If you’re an early riser like me, you’ll probably want a snack before breakfast (8:30 AM on Monday, 9:00 AM Tuesday and Wednesday). Also, if you have special dietary needs, it can’t hurt to have a spare snack on hand just in case. - -## Exercise clothes -Before or after a long day of conference talks, I like to at least get a brief workout in. The hotel has some exercise machines indoors and outside on the pool deck, which is a refreshing way to unwind while catching up on my favorite podcasts. - -## Swimsuit -The hotel has a nice pool and hot tub in the courtyard. While outdoor temperatures may be a bit cool for most of us to enjoy the pool, the hot tub gets lots of use after a day of sitting in meeting room chairs. It’s open until 11 PM every night. - -## Thanks -Thanks to [@Obidecoque](https://twitter.com/Obidecoque) for [inspiring](https://twitter.com/Obidecoque/status/1172588365864218624) this post and [@Rachell_Calhoun](https://twitter.com/Rachell_Calhoun) for [suggesting](https://twitter.com/Rachell_Calhoun/status/1175117174509375488) refillable coffee mugs. diff --git a/_drafts/2019-09-14-volunteer-opportunities.md b/_drafts/2019-09-14-volunteer-opportunities.md deleted file mode 100644 index 3b399246..00000000 --- a/_drafts/2019-09-14-volunteer-opportunities.md +++ /dev/null @@ -1,31 +0,0 @@ ---- -author: Rebecca Kindschi -category: General -date: 2019-09-14 06:00:00 -layout: post -image: /static/img/blog/volunteer-opportunities-2019.png -title: "Help Run DjangoCon US" -published: false ---- - -We have a wide variety of volunteer slots available! If you’d like to sign up for one (or more) we have a [handy spreadsheet](https://docs.google.com/spreadsheets/d/1VO8Xh6xPOQb32WjUD7pKJCMXvqCdcMz95CqIoNToUsA/edit#gid=0). Here's more information on each role. - -## Session Chairs - -**Session chairs** help foster a supportive environment by welcoming guests, introducing speakers, and making sure folks get to where they need to be. You are the moderator of the session. You’ll arrive in the room where the talks on your schedule take place 10 minutes before the talk starts. Meet your speaker and find out a few things: how do you pronounce your name? Do you want to take questions? How do you want us to count down time? There will be a handy questionnaire on your clipboard to assist with this. At showtime, you’ll introduce the speaker to the audience, keeping it simple — their name, where they’re from, and talk title. During the talk, watch the clock and let the speaker know how much time they have left before questions (show signs at the -15, -10 and -5 mark). Mediate questions (if any), and let the speaker and attendees know when it’s time to wrap it all up. After that, help the speaker disconnect the microphone and make any announcements. There will be a session manager checking in to support you throughout your shift. - -## Swag Bag Stuffing - -We'll be stuffing swag bags for everyone on Sunday afternoon! If you'll be around and not in a tutorial, we'd appreciate your help. The more people we have, the faster it will go. - -## Registration Desk - -We'll need people at the registration desk to check people into the conference and help answer questions. Shifts are one hour long, and you'll always have a partner working with you! - -## Sprint Mentors, Volunteers, and Git Help Desk - -Sign up to help mentor or run errands at the sprints. For this volunteer opportunity, you just need to be willing to help newcomers to the sprints make their first commits! - -The Git Help Desk will help Git newbies make their first PRs and free up the sprint mentors for questions about the sprint projects. - -[Sign up here](https://docs.google.com/spreadsheets/d/1VO8Xh6xPOQb32WjUD7pKJCMXvqCdcMz95CqIoNToUsA/edit#gid=0)! diff --git a/_drafts/2019-09-20-social-events.md b/_drafts/2019-09-20-social-events.md deleted file mode 100644 index 44904882..00000000 --- a/_drafts/2019-09-20-social-events.md +++ /dev/null @@ -1,37 +0,0 @@ ---- -author: Lacey Williams Henschel -category: General -date: 2019-09-20 06:00:00 -layout: post -image: /static/img/blog/opening_reception.png -title: "Social Events at DjangoCon US" -published: false ---- - -We're so excited to tell you about your opportunities to socialize with and get to know other attendees, speakers, organizers, and sponsors! - -## Opening Reception - -**When**: 6:30-8:00 pm, Monday, September 23 - -**Where**: West Lawn at the Marriott (on the other side of the pool from the Marriott restaurant) - -**What**: Join us for some food and non-alcoholic drinks to relax after the first day of talks! We'll have a mac and cheese station, a slider bar, and other tasty snacks for you. - -## Board Game Night - -**When**: 6:00-10:00 pm, Tuesday, September 24 - -**Where**: Salon A-E - -**What**: Get together with other Djangonauts for board games and camaraderie. We'll have some games on hand, but feel free to bring your favorites! - -## Sponsor Events - -### Mini-Golf with Caktus - -**When**: 7:00 pm, Wednesday, September 25 - -**Where**: Tiki Town Adventure Golf (3114 Mission Blvd, San Diego) - -**What**: Play a round of mini-golf on Caktus! [RSVP and get more information here](/news/caktus-blog-1/), and note that this event might reach capacity. diff --git a/_drafts/2019-10-13-Conference-Wrap-Up.md b/_drafts/2019-10-13-Conference-Wrap-Up.md deleted file mode 100644 index f5320795..00000000 --- a/_drafts/2019-10-13-Conference-Wrap-Up.md +++ /dev/null @@ -1,20 +0,0 @@ ---- -author: Jessica Deaton -category: General -date: 2019-10-13 06:00:00 -layout: post -title: "2019 Conference Wrap Up" -published: false ---- - -What an incredible year! DjangoCon US 2019 is officially over, but what an amazing ride. Thank you so much to each of the 400+ folks who attended this year. We had attendees, speakers, and sponsors from all over the world, and we are so thrilled to have such amazing representation from all the people that make up our community. - -DjangoCon US is a volunteer-run conference that succeeds because of the dedicated people who give up their lunches, nights, and weekends to tackle tasks small and large. We are very lucky to have so many organizers that see the value this conference brings to the tech world and are willing to donate their time to bring it to fruition. - -Thank you to the amazing teams we had running our media this year! The folks from AV101 were working long hours and were so accommodating. The women from White Coat Captioning were so kind and talented; the accuracy of their captioning was phenomenal. The women from ConFreaks were wonderful to work with and provided great suggestions on how we could make our video content better by being mindful of Q&A locations in each room. - -We also want to give a special thanks to the speakers, tutorial presenters, and workshop hosts! We had over 400 attendees this year who were able to benefit from the time and effort put into all of the 2019 presentations. We were lucky enough to have talks that made us examine both the human and technology ecosystems, while still helping us learn and making us laugh. Keep an eye on the [DjangoCon US YouTube channel](https://www.youtube.com/channel/UC0yY6a79pPY9J0ShIHRf6yw) to catch the ones you missed or to rewatch your favorites from this year and last. - -Lastly, we want to thank our sponsors. Without their contributions, DjangoCon US would truly not be possible. Sponsorship funding is how we are able to bring people to the conference who might not otherwise be able to attend, provide food and fun to our attendees, hire amazing media folks to make sure our attendees and speakers have the best possible experience, and post talks to YouTube so that people in our community who are unable to attend can share in the learning. We were sponsored by so many companies that truly care about the DjangoCon community this year, and we are touched by their support. - -We hope that everyone had a wonderful year at DjangoCon US 2019, and we hope to see you all in 2022! Until then, consider checking out [some conferences recommended and run by DjangoCon US 2019 attendees](http://bit.ly/dcus2019friends). Keep an eye on our [Twitter account](https://twitter.com/djangocon) for news about where we will be in 2022! If you would like to be part of the amazing organizing team that puts together DjangoCon US every year, [send us an email](mailto:hello@djangocon.us)! diff --git a/_drafts/2022-04-22-announcing-djangocon-us-2022.md b/_drafts/2022-04-22-announcing-djangocon-us-2022.md deleted file mode 100644 index 6f9c3898..00000000 --- a/_drafts/2022-04-22-announcing-djangocon-us-2022.md +++ /dev/null @@ -1,26 +0,0 @@ ---- -author: DjangoCon US Organizers -category: General -date: 2022-04-22 06:00:00 -layout: post -image: /static/img/blog/announcing-2019.png -title: "Ready, Set, Here We Go Again!" -published: false ---- -Hello, everyone! We are very excited to announce that the website for DjangoCon US 2022 is [live](https://2022.djangocon.us). Many thanks to [YupGup](http://yupgup.com/) for the website. It looks amazing! - -This year the conference will be October 16-21. - -- October 16: Tutorials (Additional fee) -- October 17-19: Talks -- October 20-21: Sprints - -This year we will be returning to the [Marriott of Mission Valley](https://2022.djangocon.us/venue/) in San Diego, CA. Tickets are [on sale now](https://ti.to/defna/djangocon-us-2019) and our [hotel block is open](https://bit.ly/2UZ0oQQ). We sold out last year, so take advantage of our early bird pricing! If you’re looking for a ride or room share, [check out this spreadsheet](https://docs.google.com/spreadsheets/d/1-O7vSIeSls_xH9w9QVjVrVjgmEciKGduKQRMocCskkk/edit?usp=sharing). - -We will open our [opportunity grant](https://2019.djangocon.us/opportunity-grants/) (formerly financial aid) application on April 1. - -Now is the time to start getting your submissions for talks and tutorials ready because the [call for proposals (CFP)](https://2022.djangocon.us/speaking/) will open on April 1. We look forward to seeing all of the prospective talks and tutorials! - -[Keep in touch](https://twitter.com/djangocon) for more announcements along the way! - -DjangoCon US Organizers :sailboat: diff --git a/_drafts/2023-03-01-announcing-djangocon-us-2023.md b/_drafts/2023-03-01-announcing-djangocon-us-2023.md deleted file mode 100644 index 7e3a7cad..00000000 --- a/_drafts/2023-03-01-announcing-djangocon-us-2023.md +++ /dev/null @@ -1,35 +0,0 @@ ---- -author: DjangoCon US Organizers -category: General -date: 2023-03-01 05:00:00 -layout: post -title: Ready, Set, Here We Go Again! ---- - -Hello, everyone! -We are very excited to announce that the website for DjangoCon US 2023 is [live](https://2024.djangocon.us). -{% comment %} -TODO: Update graphic designer for 2023 -Many thanks to [YupGup](http://yupgup.com/) for the website. -It looks amazing! -{% endcomment %} - -The conference will have tutorials on Sunday, October 8, talks from Monday, October 16th, through Wednesday, October 18th, and sprints on Thursday and Friday October 19th and 20th, 2023. - -- October 8: Tutorials - Online only - ($199 per tutorial) -- October 16, 17, & 18: Talks -- October 19 & 20: Sprints - -This year our venue will be [Durham Convention Center](https://2024.djangocon.us/venue/) in Durham, NC. -{% comment %}Tickets are [on sale now](https://ti.to/defna/djangocon-us-2023){% endcomment %}Tickets will be on sale soon, and our hotel block will be announced shortly. - -We sold out in previous years, so please take advantage of our early bird pricing! - -We are accepting [opportunity grant](https://2024.djangocon.us/opportunity-grants/) applications is open until May 15th, 2023 at [6 PM EDT](https://time.is/0600PM_15_May_2023_in_Durham,_United_States?DjangoCon_US_CFP_Closes). - -Now is the time to start getting your submissions for talks and tutorials ready because our [call for proposals (CFP)](https://2024.djangocon.us/speaking/) deadline open until May 15th, 2023 at [6 PM EDT](https://time.is/0600PM_15_May_2023_in_Durham,_United_States?DjangoCon_US_CFP_Closes). -We look forward to seeing all of the prospective talks and tutorials! - -[Keep in touch](https://twitter.com/djangocon) for more announcements along the way! - -DjangoCon US Organizers :ox: diff --git a/_includes/analytics.html b/_includes/analytics.html deleted file mode 100644 index 691839c2..00000000 --- a/_includes/analytics.html +++ /dev/null @@ -1,7 +0,0 @@ - - diff --git a/_includes/footer.html b/_includes/footer.html deleted file mode 100644 index f2b08af4..00000000 --- a/_includes/footer.html +++ /dev/null @@ -1,70 +0,0 @@ - diff --git a/_includes/logo.svg.html b/_includes/logo.svg.html deleted file mode 100644 index 822f6582..00000000 --- a/_includes/logo.svg.html +++ /dev/null @@ -1 +0,0 @@ -{{ site.conf_year }} DjangoCon US Durham diff --git a/_includes/nav.html b/_includes/nav.html deleted file mode 100755 index aec0f4ee..00000000 --- a/_includes/nav.html +++ /dev/null @@ -1,63 +0,0 @@ -
  • - About - -
  • -
  • - Schedule - -
  • -
  • - Venue - -
  • -
  • - Speaking - -
  • -
  • - Sponsors - -
  • -
  • News
  • -
  • - - Buy Tickets - - - Buy Tickets - - -
  • diff --git a/_includes/schedule-session-full.html b/_includes/schedule-session-full.html deleted file mode 100644 index 548f54f8..00000000 --- a/_includes/schedule-session-full.html +++ /dev/null @@ -1,46 +0,0 @@ -
  • - {% if post.link %} - - {% else %} - {% if post.permalink %} - - {% else %} - - {% endif %} - {% endif %} - - {% if post.title %} -

    {{ post.title }}

    - {% endif %} - - {% if post.link %} -
    - {% else %} - {% if post.permalink %} - - {% else %} - - {% endif %} - {% endif %} - - {{ post.room }} - - {% if post.presenter_slugs %} - {% for presenter_slug in post.presenter_slugs %} - {% assign presenter = site.presenters | where: "slug", presenter_slug | first %} -

    - {% if presenter.photo_url != blank %} - Photo of {{ presenter.name }} - {% endif %} - {{ presenter.name }} - {% if presenter.pronouns != blank %} - ({{ presenter.pronouns }}) - {% endif %} -

    - {% endfor %} - {% endif %} -
  • diff --git a/_includes/schedule-session.html b/_includes/schedule-session.html deleted file mode 100644 index e89b9b41..00000000 --- a/_includes/schedule-session.html +++ /dev/null @@ -1,61 +0,0 @@ -
  • - {% unless post.room == 'filler' %} - {% if post.permalink %} - - {% else %} - {% if post.link %} - - {% else %} -
    - {% endif %} - {% endif %} - - {% if post.title %} -

    {{ post.title }}

    - {% endif %} - {% if post.difficulty %} - Audience level: {{ post.difficulty }} - {% endif %} - {% if post.room %} -

    {{ post.room }}

    - {% endif %} - - {% if post.presenter_slugs %} - {% for presenter_slug in post.presenter_slugs %} - {% assign presenter = site.presenters | where: "slug", presenter_slug | first %} -

    - {% if presenter.photo_url != blank %} - Photo of {{ presenter.name }} - {% endif %} - {{ presenter.name }} - {% if presenter.pronouns != blank %} - ({{ presenter.pronouns }}) - {% endif %} -

    - {% endfor %} - {% endif %} - - {% if post.permalink %} -
    - {% else %} - {% if post.link %} - - {% else %} -
    - {% endif %} - {% endif %} - {% endunless %} -
  • diff --git a/_includes/schedule-sprints-day.html b/_includes/schedule-sprints-day.html deleted file mode 100644 index 0902e3c4..00000000 --- a/_includes/schedule-sprints-day.html +++ /dev/null @@ -1,50 +0,0 @@ -{% if post.accepted == true and post.hidden != true %} - - {% if post.schedule_layout == 'full' %} -
  • -
    -
    - -
    -
    -
      - {% include schedule-session-full.html %} -
    -
    -
    -
  • - {% else %} - {% capture slot %}{% cycle 'begin', 'skip', 'end' %}{% endcapture %} - - {% if slot == 'begin' %} -
  • -
    -
    - -
    -
    -
      - {% endif %} - - {% include schedule-session.html %} - - {% if slot == 'end' %} -
    -
    -
    -
  • - {% endif %} - - {% endif %} - -{% endif %} diff --git a/_includes/schedule-talks-day.html b/_includes/schedule-talks-day.html deleted file mode 100644 index cbc7ffa2..00000000 --- a/_includes/schedule-talks-day.html +++ /dev/null @@ -1,69 +0,0 @@ -{% if post.accepted == true and post.hidden != true %} - - {% if post.schedule_layout == 'full' %} -
  • -
    -
    - -
    -
    -
      - {% include schedule-session-full.html %} -
    -
    -
    -
  • - {% else %} - {% if post.talk_slot == 'full' %} -
  • -
    -
    - -
    -
    -
      - {% include schedule-session.html %} -
    -
    -
    -
  • - {% else %} - {% capture slot %}{% cycle 'begin', 'end' %}{% endcapture %} - - {% if slot == 'begin' %} -
  • -
    -
    - -
    -
    -
      - {% endif %} - - {% include schedule-session.html %} - - {% if slot == 'end' %} -
    -
    -
    -
  • - {% endif %} - {% endif %} - {% endif %} - -{% endif %} diff --git a/_includes/schedule-tutorials-day.html b/_includes/schedule-tutorials-day.html deleted file mode 100644 index 0902e3c4..00000000 --- a/_includes/schedule-tutorials-day.html +++ /dev/null @@ -1,50 +0,0 @@ -{% if post.accepted == true and post.hidden != true %} - - {% if post.schedule_layout == 'full' %} -
  • -
    -
    - -
    -
    -
      - {% include schedule-session-full.html %} -
    -
    -
    -
  • - {% else %} - {% capture slot %}{% cycle 'begin', 'skip', 'end' %}{% endcapture %} - - {% if slot == 'begin' %} -
  • -
    -
    - -
    -
    -
      - {% endif %} - - {% include schedule-session.html %} - - {% if slot == 'end' %} -
    -
    -
    -
  • - {% endif %} - - {% endif %} - -{% endif %} diff --git a/_includes/social-icons.html b/_includes/social-icons.html deleted file mode 100644 index 6a81504c..00000000 --- a/_includes/social-icons.html +++ /dev/null @@ -1,23 +0,0 @@ - - - - - - - - - - - - - - - {% comment %} - - - - {% endcomment %} - - - - diff --git a/_includes/sponsor-footer.html b/_includes/sponsor-footer.html deleted file mode 100644 index 10d14002..00000000 --- a/_includes/sponsor-footer.html +++ /dev/null @@ -1,25 +0,0 @@ - diff --git a/_includes/styleguide/hero-example1.html b/_includes/styleguide/hero-example1.html deleted file mode 100644 index 2996d511..00000000 --- a/_includes/styleguide/hero-example1.html +++ /dev/null @@ -1,46 +0,0 @@ -
    - -
    -
    -
    -

    The talks at DjangoCon US have always been of high quality. That’s why we send our devs every year. The insights gained have helped us build better software at PonyCorp.

    - Rory McHenry
    - Director, Application Development PonyCorp -
    -
    - Join Rory. Buy your ticket -
    - -
    -
    - -
    - -
    -
    -
    -

    The talks at DjangoCon US have always been of high quality. That’s why we send our devs every year. The insights gained have helped us build better software at PonyCorp.

    - Rory McHenry
    - Director, Application Development PonyCorp -
    -
    - Join Rory. Buy your ticket -
    - -
    -
    - -
    - -
    -
    -
    -

    The talks at DjangoCon US have always been of high quality. That’s why we send our devs every year. The insights gained have helped us build better software at PonyCorp.

    - Rory McHenry
    - Director, Application Development PonyCorp -
    -
    - Join Rory. Buy your ticket -
    -
    -
    diff --git a/_includes/styleguide/profile-example1.html b/_includes/styleguide/profile-example1.html deleted file mode 100644 index e4a8cb06..00000000 --- a/_includes/styleguide/profile-example1.html +++ /dev/null @@ -1,108 +0,0 @@ -
    -
    -
    - -
    -

    Jane Doe

    -

    This is what Jane does.

    -
    - -
    - -
    - -
    -
    - -
    -

    Jane Doe

    -

    This is what Jane does.

    -
    - -
    - -
    - -
    -
    - -
    -

    Jane Doe

    -

    This is what Jane does.

    -
    - -
    - -
    - -
    -
    - -
    -

    Jane Doe

    -

    This is what Jane does.

    -
    - -
    -
    -
    diff --git a/_includes/styleguide/styleguide-branding.html b/_includes/styleguide/styleguide-branding.html deleted file mode 100644 index ad08404d..00000000 --- a/_includes/styleguide/styleguide-branding.html +++ /dev/null @@ -1,11 +0,0 @@ -

    Branding Guidelines

    -

    The DjangoCon.us brand uses the official Django brand as a base. A case could be - made for a designer to change the colors and positioning of the date and location - from year-to-year. However, the goal with this logo is to highlight the casual, - friendly, professional atmosphere of the conference and can be used for subsequent - years with minimal alterations.

    -

    -

    Typefaces

    - diff --git a/_includes/styleguide/styleguide-colors.html b/_includes/styleguide/styleguide-colors.html deleted file mode 100644 index 69a19ec6..00000000 --- a/_includes/styleguide/styleguide-colors.html +++ /dev/null @@ -1,20 +0,0 @@ -

    Color guide

    -
      - {% comment %} - Primary Colors - {% endcomment %} -
    • Brand Color 1
      #140A44
    • -
    • Brand Color 2
      #E47048
    • -
    • Brand Color 3
      #4975C3
    • -
    • Brand Color 4
      #766591
    • -
    • Brand Color 5
      #FDCA85
    • -
    • Brand Color 6
      #A1CCE4
    • - - {% comment %} - Black, White, & Gray - {% endcomment %} -
    • Light Gray
      #F7F8F9
    • -
    • Medium Gray
      #E9E9E9
    • -
    • Dark Gray
      #CACACA
    • -
    • Black
      #191919
    • -
    diff --git a/_includes/styleguide/styleguide-hero.html b/_includes/styleguide/styleguide-hero.html deleted file mode 100644 index 51c503a6..00000000 --- a/_includes/styleguide/styleguide-hero.html +++ /dev/null @@ -1,14 +0,0 @@ -

    Photo hero section

    -

    This module will display a background image behind text on large displays and - an image above text on smaller displays. Tints can be applied to the - large-display background image with the class .tint-[color] on the main - .photo hero element. The text can be positioned at the left, right, or center - by changing the classes of its parent element. (See _layouts/home.html - for an example of how these settings can be applied and changed using Jekyll - metadata in the markdown files.)

    - -{% highlight html %}{% include styleguide/hero-example1.html %}{% endhighlight %} - -
    - {% include styleguide/hero-example1.html %} -
    diff --git a/_includes/styleguide/styleguide-introduction.html b/_includes/styleguide/styleguide-introduction.html deleted file mode 100644 index 75dc2649..00000000 --- a/_includes/styleguide/styleguide-introduction.html +++ /dev/null @@ -1,7 +0,0 @@ -

    Introduction

    -

    The DjangoCon US website was built using several Open Source technologies. Below is - a list of the most important packages, with their respective documentation.

    - diff --git a/_includes/styleguide/styleguide-logos.html b/_includes/styleguide/styleguide-logos.html deleted file mode 100644 index 2563710e..00000000 --- a/_includes/styleguide/styleguide-logos.html +++ /dev/null @@ -1,55 +0,0 @@ -

    Logo files

    -

    Download all brand files

    - diff --git a/_includes/styleguide/styleguide-nav.html b/_includes/styleguide/styleguide-nav.html deleted file mode 100644 index 8abe48de..00000000 --- a/_includes/styleguide/styleguide-nav.html +++ /dev/null @@ -1,31 +0,0 @@ - diff --git a/_includes/styleguide/styleguide-profile.html b/_includes/styleguide/styleguide-profile.html deleted file mode 100644 index 431204bb..00000000 --- a/_includes/styleguide/styleguide-profile.html +++ /dev/null @@ -1,8 +0,0 @@ -

    Profile card

    -

    This module is used for Organizers.

    - -{% highlight html %}{% include styleguide/profile-example1.html %}{% endhighlight %} - -
    - {% include styleguide/profile-example1.html %} -
    diff --git a/_includes/styleguide/styleguide-themes.html b/_includes/styleguide/styleguide-themes.html deleted file mode 100644 index 9117603f..00000000 --- a/_includes/styleguide/styleguide-themes.html +++ /dev/null @@ -1,44 +0,0 @@ -

    Themed page sections

    -

    Themes can be applied to page sections using the color palette provided in the - _settings.scss file. Elements with the theme-[color] class applied will - be styled with the appropriate background color, and default colors will be - applied to the text within.

    - - - {% highlight html %}{% include styleguide/themes-example1.html %}{% endhighlight %} - - -
    - {% include styleguide/themes-example1.html %} -
    - -
    - -

    Card themes

    -

    The following pattern can be used with an icon or without. Themes may be applied - to individual cards with the named colors listed in _settings.scss using the - class name pattern here: <div class="card card-theme-brand-color1">. SVG icons in these - tiles will inherit the color of the card theme if there is no fill specified - in the SVG file itself.

    - - {% highlight html %}{% include styleguide/themes-example2.html %}{% endhighlight %} - -
    - {% include styleguide/themes-example2.html %} -
    - - -
    - - -

    Right and Left options.

    -

    In addition, cards have additional modifier classes for when the icon should be - displayed to the left or right. This CSS pattern uses flexbox with a float-based - fallback. To enable this option, add .icon-right or .icon-left to the .card - element.

    - - {% highlight html %}{% include styleguide/themes-example3.html %}{% endhighlight %} - -
    - {% include styleguide/themes-example3.html %} -
    diff --git a/_includes/styleguide/themes-example1.html b/_includes/styleguide/themes-example1.html deleted file mode 100644 index cacee754..00000000 --- a/_includes/styleguide/themes-example1.html +++ /dev/null @@ -1,40 +0,0 @@ -
    -

    Headline

    -

    This section has `theme-brand-color1` applied.

    -
    -
    -

    Headline

    -

    This section has `theme-brand-color2` applied.

    -
    -
    -

    Headline

    -

    This section has `theme-brand-color3` applied.

    -
    -
    -

    Headline

    -

    This section has `theme-brand-color4` applied.

    -
    -
    -

    Headline

    -

    This section has `theme-brand-color5` applied.

    -
    -
    -

    Headline

    -

    This section has `theme-brand-color6` applied.

    -
    -
    -

    Headline

    -

    This section has `theme-light-gray` applied.

    -
    -
    -

    Headline

    -

    This section has `theme-medium-gray` applied.

    -
    -
    -

    Headline

    -

    This section has `theme-dark-gray` applied.

    -
    -
    -

    Headline

    -

    This section has `theme-black` applied.

    -
    diff --git a/_includes/styleguide/themes-example2.html b/_includes/styleguide/themes-example2.html deleted file mode 100644 index 74634814..00000000 --- a/_includes/styleguide/themes-example2.html +++ /dev/null @@ -1,48 +0,0 @@ -
    -
    -
    - -
    -

    Code of Conduct

    -

    We’re committed to providing a safe and friendly environment for everyone to learn, meet, and enjoy the conference.

    -
    -
    -
    -
    -
    - -
    -

    Help with your talk

    -

    Speaker mentors are available to help you give you best talk ever. We’ve also provided templates, tips & tricks, and more to help you wow the room.

    -
    -
    -
    -
    -
    - -
    -

    Apply for an Opportunity Grant

    -

    Please apply if you are a member of an underrepresented group and you won’t be able to attend DjangoCon US without financial help.

    -
    -
    -
    -
    diff --git a/_includes/styleguide/themes-example3.html b/_includes/styleguide/themes-example3.html deleted file mode 100644 index 68c75da8..00000000 --- a/_includes/styleguide/themes-example3.html +++ /dev/null @@ -1,83 +0,0 @@ -
    -
    -
    -
    - -
    -

    Program

    -

    The DjangoCon US program features both novice talks for people just starting their journey into the world of development, as well as advanced talks for experienced developers.

    -
    -
    -
    -
    -
    - -
    - -

    We’ll have boards available so you can let people know if you’re recruiting new team members, or looking for a new position yourself!

    -
    -
    -
    -
    -
    -
    -
    -
    -
    - -
    -

    Program

    -

    The DjangoCon US program features both novice talks for people just starting their journey into the world of development, as well as advanced talks for experienced developers.

    -
    -
    -
    -
    -
    - -
    - -

    We’ll have boards available so you can let people know if you’re recruiting new team members, or looking for a new position yourself!

    -
    -
    -
    -
    -
    diff --git a/_includes/titlebar.html b/_includes/titlebar.html deleted file mode 100644 index 10e42292..00000000 --- a/_includes/titlebar.html +++ /dev/null @@ -1,20 +0,0 @@ - diff --git a/_includes/twitter-copy-and-paste.html b/_includes/twitter-copy-and-paste.html deleted file mode 100644 index f85b0e61..00000000 --- a/_includes/twitter-copy-and-paste.html +++ /dev/null @@ -1,18 +0,0 @@ -{% capture tweet %} -🎉 {{ include.post.title }} - -{% if include.presenter_slugs %} by -{% for presenter_slug in include.presenter_slugs %} -{% assign presenter = site.presenters | where: "slug", presenter_slug | first %} -{% if include.presenter_slugs.size > 1 %} - {% if presenter.twitter != blank %}@{{ presenter.twitter }}{% else %}{{ presenter.name }}{% endif %} -{% else %} - {{ presenter.name }} {% if presenter.twitter != blank %}@{{ presenter.twitter }}{% endif %} -{% endif %} -{% endfor %} -{% endif %} - #djangocon - #dcus -{% endcapture %}{{ tweet | strip_newlines }} -{% if video_url %}📺 Watch on YouTube {{ post.video_url }}{% endif %} -➡️ Talk information {{ site.url }}{{ include.post.url }} diff --git a/_includes/youtube-copy-and-paste.html b/_includes/youtube-copy-and-paste.html deleted file mode 100644 index c9d78c6b..00000000 --- a/_includes/youtube-copy-and-paste.html +++ /dev/null @@ -1,19 +0,0 @@ -{% if include.post.abstract != blank %}{{ include.post.abstract }} -{% endif %} -This talk was presented at: {{ site.url }}{{ include.post.url }} - -LINKS:{% if include.presenter_slugs %}{% for presenter_slug in post.presenter_slugs %}{% assign presenter = site.presenters | where: "slug", presenter_slug | first %} -Follow {{ presenter.name }} 👇 -{% if presenter.twitter != blank %}On Twitter: https://twitter.com/{{ presenter.twitter }} -{% endif %}{% if presenter.github != blank %}On GitHub: https://github.com/{{ presenter.github }} -{% endif %}{% if presenter.website != blank %}Website: {{ presenter.website }}{% endif %} -{% endfor %}{% endif %} - -Follow DjangCon US 👇 -https://twitter.com/djangocon - -Follow DEFNA 👇 -https://twitter.com/defnado -https://www.defna.org/ - -Video production by the speaker and DjangoCon US 2021 Volunteers. diff --git a/_includes/youtube-embed-head.html b/_includes/youtube-embed-head.html deleted file mode 100644 index c000117e..00000000 --- a/_includes/youtube-embed-head.html +++ /dev/null @@ -1,8 +0,0 @@ - - - - - - - - diff --git a/_includes/youtube-embed.html b/_includes/youtube-embed.html deleted file mode 100644 index 7ba063e1..00000000 --- a/_includes/youtube-embed.html +++ /dev/null @@ -1,3 +0,0 @@ -
    - -
    diff --git a/_jobs/2021-10-22-example.md b/_jobs/2021-10-22-example.md deleted file mode 100644 index bd6f9540..00000000 --- a/_jobs/2021-10-22-example.md +++ /dev/null @@ -1,58 +0,0 @@ ---- -hidden: true -layout: job-detail -name: STG -post_photo_url: /static/img/sponsors/STG_condensed.png -website: mailto:JOBS@THESUMMITGRP.COM -website_text: Apply here ---- - -**Senior Python/Django Developer** - -*Remote or Mechanicsburg, PA* -
    -*$120,000.00 - $200,000.00 + bonus* - -STG is growing and our development team needs top talent for Python and DJango experts. We develop SaaS solutions deployed on the public cloud for customers all around the country. - -This is a full-time, non-contract position. - -We are fast-paced and require our team to work in a dynamic environment. Work from home or join us if you're local. - -Our benefits are top-notch, unlimited PTO and we pay competitive salaries for top talent. - -Join our team! - -Include a few examples of your current projects with your resume. - -As this position requires a high level of expertise, please expect a technical review from a senior member of our development team during the interview processes. - -**Benefits:** - -- 401(k) -- 401(k) matching -- Dental insurance -- Flexible schedule -- Health insurance -- Life insurance -- Paid time off -- Retirement plan -- Vision insurance - -**Schedule:** - -- Monday to Friday - -**Education:** -- Bachelor's Degree in Computer Science/Software Engineering (Preferred) - -**Experience (Preferred):** -- Python: 5+ years -- Django: 5+ years -- PostgreSQL: 3+ years -- Aggressive Problem Diagnosis -- Experience with AWS -- Developing for large scale applications -- Experience in financial services - -Send your resume to: JOBS@THESUMMITGRP.COM. diff --git a/_layouts/base.html b/_layouts/base.html deleted file mode 100644 index 160abe52..00000000 --- a/_layouts/base.html +++ /dev/null @@ -1,65 +0,0 @@ - - - - - - -{% seo %} - -{% if page.video_url != blank %} -{% assign youtube_id = page.video_url | replace:"https://youtu.be/",""%} -{% include youtube-embed-head.html id=youtube_id %} -{% endif %} - - - - - - - - - - - - {% include social-icons.html %} - -
    -
    - {% comment %} - disable navigation until we have the 2024 site ready -
    - -
    - {% endcomment %} - -
    - {% comment %} - disable title until we have the 2024 site ready - {% include titlebar.html %} - {% endcomment %} - -
    - {{ content }} -
    - - {% include footer.html %} -
    -
    -
    - - - - - - - {% include analytics.html %} - - diff --git a/_layouts/default.html b/_layouts/default.html deleted file mode 100644 index bd8d19a9..00000000 --- a/_layouts/default.html +++ /dev/null @@ -1,16 +0,0 @@ ---- -title: 2024.djangocon.us -layout: base ---- - -
    -

    {% if page.heading %}{{ page.heading }}{% else %}{{ page.title }}{% endif %}

    -
    - -
    -
    - - {{ content }} - -
    -
    diff --git a/_layouts/home.html b/_layouts/home.html deleted file mode 100644 index fb8c0aaa..00000000 --- a/_layouts/home.html +++ /dev/null @@ -1,154 +0,0 @@ ---- -layout: base ---- - -
    -
    -
    -

    Join us for five days of inspiration, education, and networking opportunities

    - -
    - October 16-20, 2023 - - - Durham Convention Center in - Durham, NC - -
    - - Buy Tickets - {% comment %} - Submit Talk - {% endcomment %} - - {% comment %} - Join Mailing List - {% endcomment %} - Conference Schedule -
    -
    -
    - - - - - - -
    -
    -

    A conference with heart

    -
    -
    -
    -
    - -
    -

    Public Health / COVID-19

    -

    Read our Public Health Policy, including testing requirement and mask recommendation.

    -
    -
    -
    -
    -
    - -
    -

    Conference Schedule

    -

    Check out the conference schedule and start planning your DjangoCon US experience!

    -
    -
    -
    -
    -
    - -
    -

    Code of Conduct

    -

    Participants are expected to be respectful to each other. For details on our expectations, and who to contact if you need assistance, see our Code of Conduct.

    -
    -
    -
    -
    -
    - -
    -
    -

    Latest News

    -
    - -
    - {% for post in site.posts limit:12 %} - {% unless post.hidden %} - - {% endunless %} - {% endfor %} -
    - -
    - -
    -
    - -{% include sponsor-footer.html %} - - diff --git a/_layouts/job-detail.html b/_layouts/job-detail.html deleted file mode 100644 index 50a28b3f..00000000 --- a/_layouts/job-detail.html +++ /dev/null @@ -1,23 +0,0 @@ ---- -layout: base ---- - -
    -

    {{ page.name }}

    -
    - -
    -
    -
    - {% if page.post_photo_url %} - {{ page.post_photo_alt }} - {% endif %} - - {{ content }} - {% if page.website_text %}{{ page.website_text }}{% else %}More information{% endif %} -
    -
    -
    diff --git a/_layouts/new_layout.html b/_layouts/new_layout.html deleted file mode 100644 index 2ce2ca3d..00000000 --- a/_layouts/new_layout.html +++ /dev/null @@ -1,380 +0,0 @@ - - - - - - - - {% seo %} - - - - - - - - - - - -
    -
    - -
    -

    {% if page.heading %}{{ page.heading }}{% else %}{{ page.title }}{% endif %}

    -
    - - - -
    -
    - {{ content }} -
    -
    - -
    - - -
    - -{% comment %} - To add SVGs to the sprite, simply add them in via . - Be sure to condense your SVG code via something like SVGO online: - https://jakearchibald.github.io/svgomg/ - - You'll also need: - - 1. A unique idea - 2. Add: fill="currentColor" to any paths or objects so color may be used - 3. A descriptive for accessibility - - See the <svg><use ..> pattern above for reference on adding to the page. -{% endcomment %} -<svg xmlns="http://www.w3.org/2000/svg" style="display: none;"> - <symbol id="github-icon" viewBox="0 0 32.58 31.77"> - <path fill="currentColor" d="M16.29,0a16.29,16.29,0,0,0-5.15,31.75c.81.15,1.11-.35,1.11-.79s0-1.41,0-2.77C7.7,29.18,6.74,26,6.74,26a4.31,4.31,0,0,0-1.81-2.38c-1.48-1,.11-1,.11-1a3.42,3.42,0,0,1,2.5,1.68,3.47,3.47,0,0,0,4.74,1.35,3.48,3.48,0,0,1,1-2.18C9.7,23.08,5.9,21.68,5.9,15.44a6.3,6.3,0,0,1,1.68-4.37,5.86,5.86,0,0,1,.16-4.31s1.37-.44,4.48,1.67a15.44,15.44,0,0,1,8.16,0c3.11-2.11,4.48-1.67,4.48-1.67A5.85,5.85,0,0,1,25,11.07a6.29,6.29,0,0,1,1.67,4.37c0,6.26-3.81,7.63-7.44,8a3.89,3.89,0,0,1,1.11,3c0,2.18,0,3.93,0,4.47s.29.94,1.12.78A16.29,16.29,0,0,0,16.29,0Z"/> - </symbol> - <symbol id="twitter-icon" viewBox="0 0 32.804 26.499"> - <path fill="currentColor" d="M32.804 3.055c-.887 1.28-1.971 2.462-3.35 3.447v.887c0 3.054-.689 6.107-2.167 8.964-1.379 2.856-3.645 5.221-6.601 7.191-2.955 1.97-6.402 2.955-10.343 2.955-3.842 0-7.29-.985-10.344-2.955.296 0 .887.099 1.675.099 3.152 0 5.911-.985 8.373-2.857-1.478 0-2.758-.492-3.94-1.379s-1.97-1.97-2.363-3.349c.196.098.689.098 1.28.098s1.182-.098 1.772-.196c-1.575-.296-2.856-1.084-3.841-2.364-.985-1.281-1.479-2.66-1.479-4.236v-.1c.887.493 1.872.788 2.956.887-1.971-1.379-2.956-3.25-2.956-5.614 0-1.183.296-2.266.887-3.35 3.646 4.433 8.274 6.797 13.89 6.994a5.95 5.95 0 0 1-.197-1.478c0-1.872.69-3.448 1.971-4.729S20.982 0 22.854 0c1.97 0 3.546.69 4.826 2.069 1.379-.296 2.857-.788 4.236-1.576-.493 1.576-1.478 2.758-2.955 3.743 1.38-.296 2.66-.689 3.843-1.181z"/> - </symbol> - <symbol id="facebook-icon" viewBox="0 0 42 42"> - <path fill="currentColor" d="M39.68,0H2.32A2.32,2.32,0,0,0,0,2.32V39.68A2.32,2.32,0,0,0,2.32,42H22.43V25.74H17V19.4h5.47V14.72c0-5.42,3.31-8.38,8.15-8.38a44.91,44.91,0,0,1,4.89.25v5.67H32.12c-2.63,0-3.14,1.25-3.14,3.09v4h6.28l-.82,6.34H29V42h10.7A2.32,2.32,0,0,0,42,39.68V2.32A2.32,2.32,0,0,0,39.68,0Z"/> - </symbol> - <symbol id="logo" viewBox="0 0 310 58.9"> - <path fill="currentColor" d="M34.9.1h9.3v9.5h-9.3zM29.4 0h-9.3v14.1c-1.3-.3-2.7-.5-4.1-.5-9.7 0-16 6.1-16 15.5C0 38.9 5.9 43.9 17.3 44c4.1 0 8.1-.4 12.1-1.2V0zm-9.3 36.3c-1.1.2-2.1.2-3.2.2-4.8 0-7.4-2.7-7.4-7.6s2.7-7.9 7.4-7.9c1.1 0 2.1.1 3.1.5l.1 14.8z"/><path fill="currentColor" d="M34.9 32.4c0 8-.4 11.1-1.8 13.7s-3.3 4.3-7.4 6.2l8.6 4.1c4.1-2 6.1-3.9 7.6-6.8s2.2-6.6 2.2-14V14.2h-9.3v18.2zM62.1 13.6c-4.3 0-8.5.9-12.3 2.8v7.1c3.4-1.8 7.1-2.7 10.9-2.8 2.3 0 3.2.6 3.2 2.3v2c-11.4 1-16.1 3.9-16.1 10.4 0 6 3.5 8.7 11.3 8.7 4.4 0 8.9-.4 13.3-1V24.3c0-3.8-.2-5.6-1-7-1.4-2.5-4.5-3.7-9.3-3.7zm2.3 23.6c-1.5.3-3 .4-4.5.4-2.5 0-3.7-.8-3.7-2.6 0-2.4 2-3.4 8.2-4v6.2zM154.8 44.4c9.4 0 15.4-6 15.4-15.7 0-9.4-5.7-15.2-15-15.2-9.5 0-15.4 6-15.4 15.7 0 9.4 5.7 15.2 15 15.2zm.3-23.5c3.6 0 5.6 3 5.6 8s-2.1 8-5.7 8-5.7-2.9-5.7-8 2.1-8 5.8-8zM140.8 15c-4-.9-8.1-1.3-12.1-1.3-13.6 0-21.3 5.9-21.3 16.4 0 8.4 5.2 13.8 13.3 13.8 2.1.1 4.1-.4 6-1.3v.2c0 5.9-2.6 8.3-8.7 8.3-3.5 0-6.9-.8-10-2.4v8.5c3.2 1.2 6.6 1.8 10 1.8 4.9 0 8.8-1.1 11.7-3.2.5-.3 1-.7 1.4-1.1.8-.7 1.4-1.5 2-2.4 2-3.1 2.7-6.8 2.7-14.7V35c-.1-1.3-.1-2.5-.1-3.8l-.1-5-.1-3.9v-1c1.9.2-.4-.2 2.1.2l3.2-6.5zm-14 20.1v.7c-1.1.4-2.3.6-3.5.6-4.1 0-6.4-2.6-6.4-7.2 0-3.2 1.2-5.5 3.4-6.8 1.6-.9 3.5-1.4 5.4-1.3h1v.7l.1 3 .1 4.2c0 1.3.1 2.5.1 3.5l-.2 2.6zM91.6 13.6c-4.9.1-9.9.8-14.6 2.1v27.9h9.3V21.7c1.4-.4 2.8-.7 4.3-.7 3.3 0 4.5 1.3 4.5 4.9v17.7h9.3V25.5c0-4.6-.6-6.8-2.5-8.7s-5.5-3.2-10.3-3.2zM231.6 29.2c0-9.4-5.7-15.2-15-15.2-9.5 0-15.4 6-15.4 15.7 0 9.3 5.7 15.2 15.1 15.2s15.3-6 15.3-15.7zm-20.9.2c0-5.1 2.1-8 5.8-8s5.6 3 5.6 8-2.1 8-5.7 8-5.7-2.8-5.7-8zM252.5 26.4v17.7h9.3V26c0-4.6-.6-6.8-2.5-8.7s-5.5-3.2-10.3-3.2c-4.9.1-9.9.8-14.6 2.1v27.9h9.3V22.2c1.4-.4 2.8-.7 4.3-.6 3.3 0 4.5 1.3 4.5 4.8zM291 43.4c1.3-1.4 1.8-2.9 1.8-6.1V24.7h-6.5V37c0 2.5-.8 3.4-3.1 3.4-1 0-2-.2-3-.5V24.7h-6.4v19.4c3.3.9 6.7 1.4 10.2 1.4 3.2.1 5.6-.7 7-2.1zM177.8 40.6c3 2.8 8.5 3.8 12.2 3.7 2.9 0 5.8-.7 8.4-2.1v-7.4c-2 1-4.2 1.6-6.4 1.6-3.6 0-9.3-1.4-9.3-7.8s5.7-7.8 9.3-7.8c2.2 0 4.3.7 6.2 1.8v-7.5c-2.5-1.2-5.3-1.8-8.1-1.8-3.7 0-8.8 1.1-11.8 4-3.2 2.9-5.1 7-5.1 11.3-.3 4.5 1.4 8.9 4.6 12zM302.7 32.3c-1.5-.7-1.4-1.5-1.4-1.5s0-1.3 2.6-1.3c1.9 0 3.7.5 5.4 1.3v-4.9c-2-1-4.3-1.4-6.6-1.2-7.5.3-7.4 6-7.4 6-.2 1.5.4 3 1.4 4.2 1.6 1.3 3.4 2.3 5.3 3 1.4.5 1.9 1.2 1.9 1.5s.2 1.4-2.6 1.4c-2.1-.1-4.1-.7-6-1.6v5.1c2.8 1.1 5.9 1.5 8.8 1.1 2.8-.5 5.6-1.4 5.9-5.9.3-4.4-4.1-5.8-7.3-7.2zM264.1 36.7h7.4v7.4h-7.4z"/> - </symbol> -</svg> -<script src="/static/main.js"></script> -{% include analytics.html %} -</body> -</html> diff --git a/_layouts/news-base.html b/_layouts/news-base.html deleted file mode 100644 index 454be250..00000000 --- a/_layouts/news-base.html +++ /dev/null @@ -1,16 +0,0 @@ ---- -title: 2024.djangocon.us -layout: base ---- - -<header class="subpage-header"> - <h1>News</h1> -</header> - -<div class="content subpage-content"> - <div class="row"> - <div class="column medium-10 medium-centered large-9 large-centered"> - {{ content }} - </div> - </div> -</div><!-- end .content --> diff --git a/_layouts/post-list.html b/_layouts/post-list.html deleted file mode 100644 index 8788f671..00000000 --- a/_layouts/post-list.html +++ /dev/null @@ -1,20 +0,0 @@ ---- -layout: news-base -permalink: /news/ ---- - -{% for post in site.posts %} - {% unless post.hidden or post.category == 'talk' or post.category == 'tutorial' %} - <article class="post-item"> - <time class="post-meta" datetime="{{ post.date | date_to_xmlschema }}">{{ post.date | date: "%b %-d, %Y" }}</time> - <h2 class="post-title"> - <a - class="post-link" - href="{{ post.url | prepend: site.baseurl }}">{{ post.title | escape }}</a> - </h2> - {% if forloop.first %} - {{ post.excerpt }} - {% endif %} - </article> - {% endunless %} -{% endfor %} diff --git a/_layouts/post.html b/_layouts/post.html deleted file mode 100644 index 19ac9f69..00000000 --- a/_layouts/post.html +++ /dev/null @@ -1,24 +0,0 @@ ---- -layout: base ---- - -<header class="subpage-header{% if page.post_photo_url %} has-post-photo{% endif %}"> - <time class="post-meta" datetime="{{ page.date | date_to_xmlschema }}">{{ page.date | date: "%b %-d, %Y" }}</time> - <h1 class="post-title">{{ page.title }}</h1> -</header> - -<div class="content subpage-content"> - <div class="row"> - <div class="column medium-10 medium-centered large-9 large-centered v-pad-bottom"> - - {% if page.post_photo_url %} - <img - src="{{ page.post_photo_url }}" - alt="{{ page.post_photo_alt }}" - class="post-photo" /> - {% endif %} - - {{ content }} - </div> - </div> -</div><!-- end .content --> diff --git a/_layouts/schedule.html b/_layouts/schedule.html deleted file mode 100644 index dfc157db..00000000 --- a/_layouts/schedule.html +++ /dev/null @@ -1,11 +0,0 @@ ---- -layout: base ---- - -<header class="subpage-header"> - <h1>{% if page.heading %}{{ page.heading }}{% else %}{{ page.title }}{% endif %}</h1> -</header> - -<div class="content subpage-content"> - {{ content }} -</div> diff --git a/_layouts/session-details.html b/_layouts/session-details.html deleted file mode 100644 index e771e11d..00000000 --- a/_layouts/session-details.html +++ /dev/null @@ -1,144 +0,0 @@ ---- -layout: base ---- - -<header class="subpage-header"> - <h1> - {% if page.heading %}{{ page.heading }}{% else %}{{ page.title }}{% endif %} - </h1> - <p class="lead"> - <local-time datetime="{{ page.date | date_to_xmlschema }}" month="short" day="numeric" hour="numeric" minute="numeric" - time-zone-name="short"> - {{ page.date | date: "%b %d %l:%M %p %Z" }} - </local-time> - <a href="https://time.is/compare/{{ page.date | date: "%I%M%p_%d_%B_%Y" }}_in_Durham" aria-label="View talk time on time.is">:calendar:</a> - {% if page.end_date %} to {{ page.end_date | date: "%l:%M %P" }}{% endif %} - {% comment %}, in {{ page.room }}{% endcomment %} - {% if page.difficulty %} - <br> - <span class="label"><span class="sr-only">Audience level: </span>{{ page.difficulty }}</span> - {% endif %} - </p> -</header> - -<div class="content subpage-content"> - <div class="row"> - <div class="column medium-10 medium-centered" markdown="1"> - {% if page.show_video_urls or site.schedule_show_video_urls and page.video_url != blank %} - {% assign youtube_id = page.video_url | replace:"https://youtu.be/","" %} - {% include youtube-embed.html id=youtube_id %} - - <section class="event-links"> - <a - href="{{ page.video_url }}" - class="event-link button theme-brand-color5"> - <svg xmlns="http://www.w3.org/2000/svg" class="event-link-icon" viewBox="0 0 100 100"><title>Video - Video - - {% if page.slides_url != blank %} - - Slideshow - Slides - - {% endif %} - - {% endif %} - -

    About This - {% case page.category %} - {% when "talks" %} - Talk - {% when "tutorials" %} - Tutorial - {% when "sprints" %} - Sprint - {% else %} - {{ page.category|capitalize }} - {% endcase %} -

    - {{ content }} - - - Buy Tickets Now - - - - - -{% if page.presenter_slugs %} - -
    -
    -

    Presenters

    -
    - -
      - {% for presenter_slug in page.presenter_slugs %} - {% assign presenter = site.presenters | where: "slug", presenter_slug | first %} -
      -
      - {% if presenter.photo_url != blank %} - Photo of {{ presenter.name }} - {% endif %} -
      - -
      -

      - {{ presenter.name }} - {% if presenter.pronouns != blank %} - ({{ presenter.pronouns }}) - {% endif %} -

      - - {% if presenter.twitter or presenter.github or presenter.website %} - - {% endif %} - - {% if presenter.content != blank %} - {{ presenter.content | markdownify }} - {% endif %} -
      -
      - {% endfor %} -
    -{% else %} -{% comment %}HACK! add some blank lines so the swoop at the top of the footer doesn't obscure the buy tickets button{% endcomment %} -



    -{% endif %} - - - diff --git a/_layouts/speaker-template.html b/_layouts/speaker-template.html deleted file mode 100644 index 769fd3d5..00000000 --- a/_layouts/speaker-template.html +++ /dev/null @@ -1,41 +0,0 @@ - - - - - - - - - - - - - -
    - {% if page.photo_url != blank %} - {{ page.name }} - {% endif %} - -

    {{ page.name }}

    - - {% assign presentations = site.schedule | where: "presenter_slugs", page.slug %} - - {% if page.override_schedule_title %} -

    {{ page.override_schedule_title }}

    - {% else %} - {% assign unique_titles = "" | split: "," %} - {% for schedule in presentations %} - {% unless unique_titles contains schedule.title %} -

    {{ schedule.title }}

    - {% assign unique_titles = unique_titles | push: schedule.title %} - {% endunless %} - {% endfor %} - {% endif %} -
    - - - diff --git a/_organizers/abigail-afi-gbadago.md b/_organizers/abigail-afi-gbadago.md deleted file mode 100644 index bc4abc99..00000000 --- a/_organizers/abigail-afi-gbadago.md +++ /dev/null @@ -1,8 +0,0 @@ ---- -github: AfiMaameDufie -layout: base -name: Abigail Afi Gbadago -photo_url: /static/img/organizers/afi.jpeg -role: Program Committee, Website Committee -twitter: afi_maame ---- diff --git a/_organizers/adam-fast.md b/_organizers/adam-fast.md deleted file mode 100644 index bcdaef1b..00000000 --- a/_organizers/adam-fast.md +++ /dev/null @@ -1,9 +0,0 @@ ---- -github: adamfast -layout: base -name: Adam Fast -photo_url: /static/img/organizers/adam.jpg -role: A/V Chair, Code of Conduct team -twitter: adamcanfly -website: http://www.adamfast.com/ ---- diff --git a/_organizers/aditya-dhoot.md b/_organizers/aditya-dhoot.md deleted file mode 100644 index 88274cab..00000000 --- a/_organizers/aditya-dhoot.md +++ /dev/null @@ -1,10 +0,0 @@ ---- -github: adityadhoot -layout: base -mastodon: null -name: Aditya Dhoot -photo_url: /static/img/organizers/aditya.jpg -role: Program team -twitter: null -website: null ---- diff --git a/_organizers/adrienne-franke.md b/_organizers/adrienne-franke.md deleted file mode 100644 index 35b1e46b..00000000 --- a/_organizers/adrienne-franke.md +++ /dev/null @@ -1,10 +0,0 @@ ---- -github: adriennefranke -layout: base -mastodon: https://mastodon.world/@adriennefranke -name: Adrienne Franke -photo_url: /static/img/organizers/adrienne.jpg -role: Code of Conduct co-chair -twitter: adriennefranke -website: https://adriennefranke.com ---- diff --git a/_organizers/benedict-kofi-amofah.md b/_organizers/benedict-kofi-amofah.md deleted file mode 100644 index cc2decb5..00000000 --- a/_organizers/benedict-kofi-amofah.md +++ /dev/null @@ -1,10 +0,0 @@ ---- -github: iamDREAMO-BenedictKofiAmofah -layout: base -mastodon: https://mastodon.world/@iamDREAMO -name: Benedict kofi Amofah -photo_url: /static/img/organizers/benedict.jpg -role: Opportunity Grants Team, Online Conference Team, Communication Team -twitter: iamDREAMO -website: '' ---- diff --git a/_organizers/carol-ganz.md b/_organizers/carol-ganz.md deleted file mode 100644 index b424df59..00000000 --- a/_organizers/carol-ganz.md +++ /dev/null @@ -1,9 +0,0 @@ ---- -github: '' -layout: base -name: Carol Ganz -photo_url: /static/img/organizers/carol-ganz.jpg -role: DEFNA Director, Opportunity Grants Chair, Code of Conduct team -twitter: crlganz -website: https://www.sixfeetup.com/ ---- diff --git a/_organizers/catherine-holmes.md b/_organizers/catherine-holmes.md deleted file mode 100644 index 04b907e9..00000000 --- a/_organizers/catherine-holmes.md +++ /dev/null @@ -1,9 +0,0 @@ ---- -github: '' -layout: base -name: Catherine Holmes -photo_url: /static/img/organizers/catherine.png -role: Sponsors & Tickets Chair, Code of Conduct team -twitter: '' -website: '' ---- diff --git a/_organizers/david-fischer.md b/_organizers/david-fischer.md deleted file mode 100644 index 478b495b..00000000 --- a/_organizers/david-fischer.md +++ /dev/null @@ -1,8 +0,0 @@ ---- -github: davidfischer -hidden: true -layout: base -name: David Fischer -photo_url: /static/img/organizers/davidfischer.jpg -role: Onsite Coordinator ---- diff --git a/_organizers/dawn-wages.md b/_organizers/dawn-wages.md deleted file mode 100644 index bfba439b..00000000 --- a/_organizers/dawn-wages.md +++ /dev/null @@ -1,10 +0,0 @@ ---- -github: dawnwages -layout: base -mastodon: https://mastodon.online/@fly00gemini8712 -name: Dawn Wages -photo_url: /static/img/organizers/dawn.jpg -role: Sponsors Chair, Code of Conduct team -twitter: dawnwagessays -website: http://www.dawnwages.info/ ---- diff --git a/_organizers/drew-winstel.md b/_organizers/drew-winstel.md deleted file mode 100644 index 73a84638..00000000 --- a/_organizers/drew-winstel.md +++ /dev/null @@ -1,11 +0,0 @@ ---- -github: drewbrew -layout: base -mastodon: https://mastodon.cloud/@drewbrew -name: Drew Winstel -photo_url: /static/img/organizers/drew.jpg -role: DEFNA Vice President, Program Co-Chair, Opportunity Grants team, Code of Conduct - team -twitter: '' -website: https://winstel.dev/ ---- diff --git a/_organizers/emmanuel-owusu.md b/_organizers/emmanuel-owusu.md deleted file mode 100644 index 7a55edbb..00000000 --- a/_organizers/emmanuel-owusu.md +++ /dev/null @@ -1,10 +0,0 @@ ---- -github: eowusu14 -layout: base -mastodon: '' -name: Emmanuel Owusu -photo_url: /static/img/organizers/owusu.png -role: Community Team, Opportunity Grants Team -twitter: owusu_e1 -website: '' ---- diff --git a/_organizers/erin-mullaney.md b/_organizers/erin-mullaney.md deleted file mode 100644 index 5eae400f..00000000 --- a/_organizers/erin-mullaney.md +++ /dev/null @@ -1,10 +0,0 @@ ---- -github: emullaney -layout: base -mastodon: https://fosstodon.org/@erinrachel -name: Erin Mullaney -photo_url: /static/img/organizers/erin-mullaney.jpg -role: Program Co-Chair, Public Health chair -twitter: _erin_rachel -website: '' ---- diff --git a/_organizers/ezra-yendau.md b/_organizers/ezra-yendau.md deleted file mode 100644 index 153c4605..00000000 --- a/_organizers/ezra-yendau.md +++ /dev/null @@ -1,10 +0,0 @@ ---- -github: Ezi-code -layout: base -mastodon: https://mastodon.world/@ezra_yendau -name: Ezra Yendau -photo_url: /static/img/organizers/ezra.jpg -role: Opportunity Grants Team, Social Team -twitter: ezra_yendau -website: '' ---- diff --git a/_organizers/hama-barhamou.md b/_organizers/hama-barhamou.md deleted file mode 100644 index caae7f81..00000000 --- a/_organizers/hama-barhamou.md +++ /dev/null @@ -1,9 +0,0 @@ ---- -github: HamaBarhamou -layout: base -name: ISSAKA HAMA Barhamou -photo_url: /static/img/organizers/barhamou.png -role: Website team -twitter: hama_barhamou -website: https://hamabarhamou.github.io/monCV/ ---- diff --git a/_organizers/hope-adoli.md b/_organizers/hope-adoli.md deleted file mode 100644 index 2e983661..00000000 --- a/_organizers/hope-adoli.md +++ /dev/null @@ -1,9 +0,0 @@ ---- -github: hopeadoli -layout: base -name: Hope Adoli -photo_url: /static/img/organizers/hope-adoli.png -role: Website, Social media/communications, Swags -twitter: uxkafui -website: https://www.uxkafui.co/ ---- diff --git a/_organizers/jason-judkins.md b/_organizers/jason-judkins.md deleted file mode 100644 index 8f5c3232..00000000 --- a/_organizers/jason-judkins.md +++ /dev/null @@ -1,9 +0,0 @@ ---- -github: jcjudkins -layout: base -mastodon: https://fosstodon.org/@jjudkins -name: Jason Judkins -photo_url: /static/img/organizers/jason-judkins.jpg -role: Marketing Chair, Community Chair, Social Events co-chair -twitter: jjudkins77 ---- diff --git a/_organizers/jeff-triplett.md b/_organizers/jeff-triplett.md deleted file mode 100644 index 7126d078..00000000 --- a/_organizers/jeff-triplett.md +++ /dev/null @@ -1,10 +0,0 @@ ---- -github: jefftriplett -layout: base -mastodon: https://mastodon.social/@webology -name: Jeff Triplett -photo_url: /static/img/organizers/jeff.jpg -role: DEFNA Cofounder, Code of Conduct team -twitter: webology -website: https://jefftriplett.com/ ---- diff --git a/_organizers/jennifer-myers.md b/_organizers/jennifer-myers.md deleted file mode 100644 index b86f7bf4..00000000 --- a/_organizers/jennifer-myers.md +++ /dev/null @@ -1,9 +0,0 @@ ---- -github: '' -layout: base -name: Jennifer Myers -photo_url: /static/img/organizers/jennifer-myers.jpg -role: DEFNA Treasurer -twitter: '' -website: https://www.sixfeetup.com/ ---- diff --git a/_organizers/jorge-gimeno.md b/_organizers/jorge-gimeno.md deleted file mode 100644 index e0a42179..00000000 --- a/_organizers/jorge-gimeno.md +++ /dev/null @@ -1,9 +0,0 @@ ---- -github: jlgimeno -layout: base -name: Jorge Gimeno -photo_url: /static/img/organizers/jorge.jpg -role: Onsite Coordinator, Code of Conduct team -twitter: JorgeGimeno8 -website: '' ---- diff --git a/_organizers/julius-boakye.md b/_organizers/julius-boakye.md deleted file mode 100644 index a74d6f22..00000000 --- a/_organizers/julius-boakye.md +++ /dev/null @@ -1,10 +0,0 @@ ---- -github: Darkbeast-glitch -layout: base -mastodon: https://mastodon.social/deck/@JuliTech -name: Julius Boakye -photo_url: /static/img/organizers/Julius.jpg -role: Opportunity Grants co-chair -twitter: KayTechie -website: https://boakye.pythonanywhere.com ---- diff --git a/_organizers/kati-michel.md b/_organizers/kati-michel.md deleted file mode 100644 index cfce7f97..00000000 --- a/_organizers/kati-michel.md +++ /dev/null @@ -1,10 +0,0 @@ ---- -github: KatherineMichel -layout: base -mastodon: https://fosstodon.org/@kati -name: Katherine "Kati" Michel -photo_url: /static/img/organizers/kati.jpg -role: DEFNA Director -twitter: KatiMichel -website: http://katherinemichel.github.io/ ---- diff --git a/_organizers/kojo-idrissa.md b/_organizers/kojo-idrissa.md deleted file mode 100644 index 50df9ffc..00000000 --- a/_organizers/kojo-idrissa.md +++ /dev/null @@ -1,10 +0,0 @@ ---- -github: kojoidrissa -hidden: false -layout: base -name: Kojo Idrissa -photo_url: /static/img/organizers/kojo.jpg -role: Orientation, Lightning Talks & Sprints Chair -twitter: KojoIdrissa -website: https://kojoidrissa.com/ ---- diff --git a/_organizers/kudzayi-bamhare.md b/_organizers/kudzayi-bamhare.md deleted file mode 100644 index aed83521..00000000 --- a/_organizers/kudzayi-bamhare.md +++ /dev/null @@ -1,9 +0,0 @@ ---- -github: kudzmat -layout: base -name: Kudzayi Bamhare -photo_url: /static/img/organizers/Kudzayi.jpg -role: Program Committee, Sprints Committee -twitter: BamBamm_Boogie -website: https://medium.com/@kudzayibamhare ---- diff --git a/_organizers/lidya-k-tilahun.md b/_organizers/lidya-k-tilahun.md deleted file mode 100644 index 88359a29..00000000 --- a/_organizers/lidya-k-tilahun.md +++ /dev/null @@ -1,10 +0,0 @@ -github: LideviK -layout: base -mastodon: https://mastodon.social/@HotMitmita -name: Lidya K Tilahun -photo_url: /static/img/organizers/lidya.jpg -role: Program, Communications and Opportunity Grants committee -twitter: lidyaKef -website: '' ---- - diff --git a/_organizers/michael-clark.md b/_organizers/michael-clark.md deleted file mode 100644 index 9add046c..00000000 --- a/_organizers/michael-clark.md +++ /dev/null @@ -1,10 +0,0 @@ ---- -github: mclarknc -layout: base -mastodon: https://mastodon.social/@mdc -name: Michael Clark -photo_url: /static/img/organizers/mclark.png -role: Code of Conduct Committee Co-chair -twitter: '' -website: '' ---- diff --git a/_organizers/nicole-dominguez.md b/_organizers/nicole-dominguez.md deleted file mode 100644 index b787bdc9..00000000 --- a/_organizers/nicole-dominguez.md +++ /dev/null @@ -1,10 +0,0 @@ ---- -github: sodevious -layout: base -mastodon: https://fosstodon.org/@sodevious -name: Nicole Dominguez -photo_url: /static/img/organizers/nicole.jpg -role: DEFNA Director, Swag team, Website team -twitter: sodevious -website: https://www.nicoledominguez.com ---- diff --git a/_organizers/noah-alorwu.md b/_organizers/noah-alorwu.md deleted file mode 100644 index 623a0898..00000000 --- a/_organizers/noah-alorwu.md +++ /dev/null @@ -1,8 +0,0 @@ ---- -github: noahalorwu -layout: base -name: Noah Alorwu -photo_url: /static/img/organizers/noah.jpg -role: Onsite Coordinator, Visa Support -twitter: plasmadray ---- diff --git a/_organizers/peter-grandstaff.md b/_organizers/peter-grandstaff.md deleted file mode 100644 index ab4e3987..00000000 --- a/_organizers/peter-grandstaff.md +++ /dev/null @@ -1,9 +0,0 @@ ---- -github: petergrand -layout: base -name: Peter Grandstaff -photo_url: /static/img/organizers/peter-grandstaff.jpg -role: DEFNA President, Conference Chair, Venue Chair -twitter: pgrandstaff -website: https://tworock.io/ ---- diff --git a/_organizers/rachell-calhoun.md b/_organizers/rachell-calhoun.md deleted file mode 100644 index 9b98123b..00000000 --- a/_organizers/rachell-calhoun.md +++ /dev/null @@ -1,10 +0,0 @@ ---- -github: RachellCalhoun -layout: base -mastodon: https://mastodon.social/@Rachell -name: Rachell Calhoun -photo_url: /static/img/organizers/rachell-calhoun.jpg -role: Volunteer Chair, Sprints Co-chair -twitter: Rachell_Calhoun -website: '' ---- diff --git a/_organizers/salim-a-nuru.md b/_organizers/salim-a-nuru.md deleted file mode 100644 index d7b166ab..00000000 --- a/_organizers/salim-a-nuru.md +++ /dev/null @@ -1,9 +0,0 @@ ---- -github: theShinigami -layout: base -name: Salim A Nuru -photo_url: /static/img/organizers/sal.jpg -role: Website, Automation -twitter: iamsalimabdella -website: https://hackmd.io/@sal ---- diff --git a/_organizers/tim-allen.md b/_organizers/tim-allen.md deleted file mode 100644 index 04f50ddf..00000000 --- a/_organizers/tim-allen.md +++ /dev/null @@ -1,10 +0,0 @@ ---- -github: FlipperPA -layout: base -mastodon: https://fosstodon.org/@FlipperPA -name: Tim Allen -photo_url: /static/img/organizers/tallen.jpg -role: Social Chair -twitter: FlipperPA -website: https://PyPhilly.org/ ---- diff --git a/_organizers/tim-schilling.md b/_organizers/tim-schilling.md deleted file mode 100644 index 5e3f9d8e..00000000 --- a/_organizers/tim-schilling.md +++ /dev/null @@ -1,10 +0,0 @@ ---- -github: tim-schilling -layout: base -mastodon: https://fosstodon.org/@CodenameTim -name: Tim Schilling -photo_url: /static/img/organizers/tim-schilling.jpg -role: DEFNA Secretary, Marketing co-chair, Community team, Code of Conduct team -twitter: CodenameTim -website: https://www.better-simple.com/ ---- diff --git a/_organizers/velda-kiara.md b/_organizers/velda-kiara.md deleted file mode 100644 index f1c591b0..00000000 --- a/_organizers/velda-kiara.md +++ /dev/null @@ -1,10 +0,0 @@ ---- -github: VeldaKiara -layout: base -mastodon: https://mastodon.social/@veldakiara -name: Velda Kiara -photo_url: /static/img/organizers/velda-kiara.png -role: Code of Conduct Team, Website -twitter: VeldaKiara -website: https://veldakiara.notion.site/veldakiara/Velda-Kiara-46aec24028fd4e8dbdba003097c18b5b ---- diff --git a/_pages/404.md b/_pages/404.md deleted file mode 100644 index 4bac447e..00000000 --- a/_pages/404.md +++ /dev/null @@ -1,15 +0,0 @@ ---- -layout: default -permalink: /404.html -sitemap: false -title: '404: Page not found' ---- - -
    - -Sorry, we've misplaced that URL or it's pointing to something that doesn't exist. Head back home to try finding it again. - -
    -
    -
    -
    diff --git a/_pages/about.html b/_pages/about.html deleted file mode 100644 index cc6748df..00000000 --- a/_pages/about.html +++ /dev/null @@ -1,246 +0,0 @@ ---- -description: DjangoCon US is dedicated to providing a fun harassment-free conference - experience for everyone, regardless of gender, gender identity, sexual orientation, - disability, physical appearance, body size, race, or religion. -heading: About DjangoCon US -hero_text_align: center -hero_theme: brand-color1 -layout: base -permalink: /about/ -testimonial_img: /static/img/about.jpg -testimonial_img_mobile: /static/img/about-mobile.jpg -title: About DjangoCon US 2023 ---- - -
    -

    {{ page.heading }}

    -
    - -
    -
    -
    -

    - DjangoCon US is a five-day international conference for the community by the community about the Django web framework, held each year in North America. -

    - -

    - DjangoCon US has something for everyone, from the person who develops Django applications for a living to the person who just tinkers in their spare time. You'll discover details about a range of diverse applications that people from all over the world are building with Django, get a deeper understanding of concepts you’re already familiar with and discover new ways to use them, and have a lot of fun! -

    -
    -
    - -
    -

    Pre-Conference

    -
    -
    -
    -
    -
    May
    -
    15
    -
    -
    -
    -

    Call for Proposals Closes

    -
    -
    -
    - -
    -
    -
    -
    -
    May
    -
    15
    -
    -
    -
    -

    Opportunity Grant Application Closes

    -
    -
    -
    - -
    -
    -
    -
    -
    June
    -
    28
    -
    -
    -
    -

    Opportunity Grant and Proposal Notifications

    -
    -
    -
    - - {% comment %} - - {% endcomment %} -
    - -
    -
    -

    Conference Schedule

    - -
    -
    -
    -
    -
    Oct
    -
    16-18
    -
    -
    -
    -

    Talks

    -

    Dozens of talks chosen by the community

    -
    -
    -
    -
    -
    -
    -
    -
    Oct
    -
    19-20
    -
    -
    -
    -

    Sprints

    -

    Team up to work on Django!

    -
    -
    -
    -
    - {% comment %} -
    -
    - -
    -
    - {% endcomment %} -
    - -
    -
    -

    Conference Features

    -
    -
    -
    -
    - -
    -

    Code of Conduct

    -

    We’re committed to providing a safe and friendly environment for everyone to learn, meet, and enjoy the conference. All organizers, attendees, speakers and sponsors must follow the Code of Conduct.

    -
    -
    -
    -
    -
    - -
    -

    Commitment to Diversity

    -

    It is a core aim of DjangoCon US 2023 to encourage diversity, enforce our Code of Conduct, and make our event as inclusive and accessible as possible.

    -
    -
    -
    -
    -
    - -
    -

    Public Health / COVID-19 Policy

    -

    As part of our commitment to the safety of our attendees, we have a Public Health Policy and require all attendees to have a negative COVID test prior to attending.

    -
    -
    -
    -
    -
    - - -
    - DjangoCon US attendees smiling for a picture. -
    -
    - -

    Day 1 Orientation

    -

    - Are you new to DjangoCon US or tech conferences in general?
    - Are you worried you might feel out of place?
    - Are you attending DjangoCon US by yourself?
    -

    -

    If so, the Day 1 orientation is for you! We’ll help you get your bearings so you can have the BEST conference experience possible. More details coming in the blog.

    -
    -
    -
    - -{% comment %} -
    -
    -
    -
    - -
    -

    Program

    -

    The DjangoCon US program features both novice talks for people just starting their journey into the world of development, as well as advanced talks for experienced developers.

    -
    -
    -
    -
    -
    - -
    - -

    We’ll have boards available so you can let people know if you’re recruiting new team members, or looking for a new position yourself!

    -
    -
    -
    -
    -
    -{% endcomment %} - -
    diff --git a/_pages/catering-menus.html b/_pages/catering-menus.html deleted file mode 100644 index f7866b3e..00000000 --- a/_pages/catering-menus.html +++ /dev/null @@ -1,170 +0,0 @@ ---- -description: Soup's up! -heading: Catering Menus -layout: default -permalink: /catering-menus/ -title: Catering Menus ---- - -
    -

    Monday - Breakfast

    -
      -
    • Southern Biscuits
    • -
    • Butter Croissants
    • -
    • Applewood Smoked Bacon
    • -
    • Sausage Links
    • -
    • Buttermilk Pancakes with Strawberry Compote, Warm Syrup, Whipped Cream
    • -
    • Fluffy Eggs with Chives
    • -
    • Rosemary Breakfast Potatoes
    • -
    • Sliced Fruit
    • -
    • Orange Juice
    • -
    • Coffee (Regular and Decaf)
    • -
    - -

    Monday - Morning Break

    -
      -
    • Potato Chips
    • -
    • Sun Chips
    • -
    • Grandma Cookies
    • -
    • Pretzels
    • -
    • Trail Mix
    • -
    • Goldfish
    • -
    • Cheez-Its
    • -
    • Smart Popcorn
    • -
    • Breakfast Bars & Granola Bars
    • -
    - -

    Monday - Lunch

    -
      -
    • Potato Salad
    • -
    • Cole Slaw
    • -
    • Eastern Pulled Pork
    • -
    • Cherrywine Barbecue Grilled Chicken
    • -
    • Corkscrew Fried Shrimp with Cocktail Sauce
    • -
    • Fried Green Tomatoes
    • -
    • Collard Greens with Smoked Turkey
    • -
    • Roasted North Carolina Sweet Potatoes
    • -
    • Strawberry Shortcake and Sweet Potato Maple Cheesecake
    • -
    • Tea (Sweet and Unsweet)
    • -
    • Grilled Stuffed Portobello Mushrooms
    • -
    • Halal Meals
    • -
    - -

    Monday - Afternoon Break

    -
      -
    • Fresh Butter Popcorn
    • -
    • Roasted Peanuts
    • -
    • Cracker Jack
    • -
    • Soft Pretzels with Spicy Mustard
    • -
    • Premium Ice Cream Novelties
    • -
    • Fresh Squeezed Lemonade
    • -
    -
    - -
    -

    Tuesday - Breakfast

    -
      -
    • Freshly Baked Scones
    • -
    • Assorted Muffins
    • -
    • Applewood Smoked Bacon
    • -
    • Turkey Sausage
    • -
    • French Toast with Strawberry Compote, Warm Syrup, Whipped Cream
    • -
    • Fried Eggs
    • -
    • Fried Seasoned Hashbrowns
    • -
    • Sliced Fruit
    • -
    • Orange Juice
    • -
    • Coffee (Regular and Decaf)
    • -
    - -

    Tuesday - Morning Break

    -
      -
    • Potato Chips
    • -
    • Sun Chips
    • -
    • Grandma Cookies
    • -
    • Pretzels
    • -
    • Trail Mix
    • -
    • Goldfish
    • -
    • Cheez-Its
    • -
    • Smart Popcorn
    • -
    • Breakfast Bars & Granola Bars
    • -
    - -

    Tuesday - Lunch

    -
      -
    • Garden Salad with Seasonal Dressings
    • -
    • Vegetable Barley Soup
    • -
    • Grilled Airline Chicken Breast Herb Jus
    • -
    • Baked Blackened Salmon with Lemon Butter Sauce
    • -
    • Herb Roasted Potatoes
    • -
    • Roasted Seasonal Vegetables
    • -
    • Honey Butter Rolls
    • -
    • Carrot Cake and Chocolate Cake
    • -
    • Tea (Sweet and Unsweet)
    • -
    • Gluten-Free Pasta Primavera with Tomato Sauce
    • -
    • Halal Meals
    • -
    - -

    Tuesday - Afternoon Break

    -
      -
    • Funnel Cake Sticks with Powdered Sugar
    • -
    • Mini Corn Dogs with Spicy Mustard
    • -
    • Glazed Donuts
    • -
    • Premium Ice Cream Novelties
    • -
    • Strawberry Lemonade
    • -
    -
    -
    -

    Wednesday - Breakfast

    -
      -
    • Assorted Bagels
    • -
    • Cinnamon Rolls
    • -
    • Applewood Smoked Bacon
    • -
    • Sausage Links
    • -
    • Belgian Waffles with Strawberry Compote, Warm Syrup, Whipped Cream
    • -
    • Fluffy Eggs with Chives
    • -
    • Roasted Potatoes with Peppers and Onions
    • -
    • Sliced Fruit
    • -
    • Orange Juice
    • -
    • Coffee (Regular and Decaf)
    • -
    - -

    Wednesday - Morning Break

    -
      -
    • Potato Chips
    • -
    • Sun Chips
    • -
    • Grandma Cookies
    • -
    • Pretzels
    • -
    • Trail Mix
    • -
    • Goldfish
    • -
    • Cheez-Its
    • -
    • Smart Popcorn
    • -
    • Breakfast Bars & Granola Bars
    • -
    - -

    Wednesday - Lunch

    - -
      -
    • Classic Caesar Salad with Parmesan and Herb Garlic Croutons
    • -
    • Italian Wedding Soup
    • -
    • Antipasto Pasta Salad
    • -
    • Grilled Chicken Breast with Lemon and Italian Herbs
    • -
    • Italian Sausage with Peppers and Onions Served with Tomato Basil Marinara
    • -
    • Roasted Seasonal Vegetables
    • -
    • Four Cheese Rigatoni
    • -
    • Garlic Parmesan Dinner Rolls
    • -
    • Tiramisu
    • -
    • Tea (Sweet and Unsweet)
    • -
    - -

    Wednesday - Afternoon Break

    -
      -
    • Grilled Crudite Platter
    • -
    • Traditional and Roasted Red Pepper Hummus
    • -
    • Spinach Dip
    • -
    • Dried Mixed Nuts
    • -
    • Dried Mixed Fruits
    • -
    • Grilled Pita
    • -
    • Assorted Crackers
    • -
    • Seasonal Infused Water
    • -
    -
    diff --git a/_pages/colophon.md b/_pages/colophon.md deleted file mode 100644 index c25b8a89..00000000 --- a/_pages/colophon.md +++ /dev/null @@ -1,65 +0,0 @@ ---- -description: Thank you to those who have inspired us -heading: Colophon -layout: default -permalink: /colophon/ -title: Colophon ---- - -We are grateful to the past organizers of DjangoCon US and of other events for their help and inspiration. The following is an incomplete list of organizations and conferences whose positive example, advice, and generosity have helped make DjangoCon US the welcoming conference it is today. - -## Organization - -- [Geek Feminism Wiki](http://geekfeminism.wikia.com/wiki/Conference_anti-harassment/Policy), Code of Conduct -- [AlterConf](https://www.alterconf.com/speak), speaker slide guidelines -- [DjangoCon Europe](https://2016.djangocon.eu), Code of Conduct Transparency Report -- [DjangoCon Europe](https://2015.djangocon.eu), speaker mentorship program -- [University of Bristol, LGBT+ Society](http://www.lgbtplusbristol.org.uk/), bathroom signage -- [Django Under the Hood](https://djangounderthehood.com/), deep dive day - -## Website Design - -This website is based on free and open source software, and was designed by our friends at [YupGup](http://yupgup.com/). - -- [Jekyll](https://jekyllrb.com/) -- [Foundation](https://foundation.zurb.com/sites/docs/) -- [PyCon Australia](https://2018.pycon-au.org/colophon/), for this colophon -- [Ela Conf](https://elaconf.github.io/), for the Recap page inspiration -- [Styleguide](/styleguide/), to see the fonts and colors used in this website - -## Code of Conduct - -- [Conduct Hotline](https://conducthotline.com) by [Thea Flowers](https://thea.codes/) - -## Image Credits - -- [DjangoCon US 2018 Group Photo](https://www.flickr.com/photos/144080672@N05/albums/72157702995974445), Bartek Pawlik, CC BY-NC 2.0 -- [Group visit to ENIAC](https://www.flickr.com/photos/144080672@N05/28810970252/in/album-72157672216515946/), Bartek Pawlik, CC BY-NC 2.0 -- [San Diego Crowd](https://www.flickr.com/photos/144080672@N05/albums/72157702995974445), Bartek Pawlik, CC BY-NC 2.0 -- [San Diego Marriott Mission Valley](https://www.marriott.com/hotels/travel/sanmv-san-diego-marriott-mission-valley/), courtesy of the hotel - - diff --git a/_pages/faqs.html b/_pages/faqs.html deleted file mode 100644 index 8f6a85cb..00000000 --- a/_pages/faqs.html +++ /dev/null @@ -1,117 +0,0 @@ ---- -description: Answers to common conference questions. -heading: Frequently Asked Questions -layout: base -permalink: /faq/ -sitemap: true -title: Frequently Asked Questions ---- - -
    -

    {{ page.heading }}

    -
    - -
    - - -
    -
    -
    -

    Tickets

    -

    Tickets are on sale now! More information is on our Tickets page. {% comment %}Conference tickets are sold out for 2023, but tutorial tickets may still be available.{% endcomment %}

    -
      - {% comment %} -
    • Is the conference over?
    • - {% endcomment %} -
    • I cannot attend DjangoCon US after all. Can I get a refund, or transfer my ticket to someone else?
    • -
    • Can I switch the tutorial I registered for, as long as there is still space available in the tutorial I would like to take instead?
    • -
    • Do tutorials cost extra?
    • -
    • Do I have to register for sprints?
    • -
    • Can I come to sprints even if I forgot to register?
    • -
    • Can I register for a tutorial without registering for the whole conference?
    • -
    • Can I register for sprints without registering for the whole conference?
    • -
    -
    -
    -
    - -
    -
    -
    -

    Schedule

    - {% comment %}

    More information can be found on the Schedule page.

    {% endcomment %} -
      -
    • Will after-hours events, like the opening reception or a board game night, be listed on the schedule?
    • -
    • Will videos of talks be posted online?
    • -
    • Will breakfast and lunch be served during tutorial, talk, and sprint days?
    • -
    • Will there be a Slack channel that I can join?
    • -
    -
    -
    -
    - -
    -
    -
    -

    Speaking

    -

    More information is on our Speaker Resources page.

    -
      -
    • Are speaker mentors available to help me with my talk?
    • -
    • Do I need to present from my own laptop?
    • -
    • Does the 25/45-minute time limit include Q&A?
    • -
    • Can you help me send installation/setup instructions to my tutorial attendees prior to the conference?
    • -
    -
    -
    -
    - -
    -
    -
    -

    Accessibility

    -

    More information is on our Venue page.

    -
      -
    • Can I use a bathroom that corresponds with my gender identity?
    • -
    • Is my service animal welcome, and is there a place nearby to walk my service animal?
    • -
    • Is step-free access available to all parts of the venue, including presentation areas?
    • -
    • Is there a nearby recovery meeting?
    • -
    • Will there be vegetarian, vegan, and/or gluten-free options at meals?
    • - {% comment %} -
    • Will you reimburse me for some of my childcare expenses?
    • -
    • Is there a lactation room?
    • - {% endcomment %} -
    -
    -
    -
    - -
    -
    -
    -

    Opportunity Grants

    -

    More information is on our Opportunity Grants page.

    -
      -
    • Do I need to provide receipts in order to be reimbursed for my opportunity grant?
    • -
    • Will I be reimbursed promptly at or shortly after the conference?
    • -
    -
    -
    -
    - -
    -
    -
    -

    Sponsors

    -

    More information is on our Become a Sponsor page. Sponsorship signups for 2023 are now available!

    -
      -
    • Can I sign up as a sponsor for DjangoCon US 2023?
    • -
    • Can I sign up as a sponsor for Opportunity Grants?
    • - {% comment %}
    • Are any of the sponsors hiring?
    • {% endcomment %} -
    -
    -
    -
    -
    diff --git a/_pages/fundraising-loudswarm.html b/_pages/fundraising-loudswarm.html deleted file mode 100644 index cafe6eb6..00000000 --- a/_pages/fundraising-loudswarm.html +++ /dev/null @@ -1,28 +0,0 @@ ---- -description: Support the Django Software Foundation by making a donation today! -heading: DSF Fundraising -layout: base -permalink: /loudswarm/dsf-fundraising/ -published: true -sitemap: false -title: Support the Django Software Foundation ---- - -
    -

    {{ page.heading }}

    -
    - -
    -
    -
    -

    - Help support Django by making a donation today! -

    -

    - - Click here to make a donation - -

    -
    -
    -
    diff --git a/_pages/homepage-coming-soon.html b/_pages/homepage-coming-soon.html deleted file mode 100644 index b4e52781..00000000 --- a/_pages/homepage-coming-soon.html +++ /dev/null @@ -1,537 +0,0 @@ ---- -description: DjangoCon US 2024 will be at the Durham Convention Center in Durham, - North Carolina, on September 22-27, 2024! -permalink: / -sitemap: false -title: DjangoCon US 2024 will be at the Durham Convention Center in Durham, North - Carolina, on September 22-27, 2024! ---- - - - - - - - - {% seo %} - - - - - - - - - - - -
    -
    - -
    -
    -
    - -

    Learn from Django's Brightest

    -

    Every conference is packed with talks and workshops by Django veterans and enthusiastic first-time presenters.

    - See last year's schedule -
    -
    - -

    Let's Grow Together—Organize DjangoCon US

    -

    Help make the conference happen by taking a leadership role on the organizing team, or volunteering to help out over the next several months.

    - Contact us to volunteer -
    -
    - -

    Code of Conduct

    -

    Participants are expected to be respectful to each other. DjangoCon US is a welcoming environment.

    - - See our code of conduct -
    -
    -
    -
    -

    Latest News

    -
    - -
    - {% for post in site.posts limit:12 %} - {% unless post.hidden %} - - {% endunless %} - {% endfor %} -
    - -
    - -
    -
    -
    -

    Sponsor DjangoCon US

    -

    By giving to the community who builds and supports the software you use, you help ensure its happiness, health, and productivity. Sponsoring DjangoCon US also puts your brand in front of >10,000 Python professionals and opportunities to speak directly to all of them.

    - -

    - Ask About Sponsorship - -

    -
    -
    -
    - - -
    - -{% comment %} - To add SVGs to the sprite, simply add them in via . - Be sure to condense your SVG code via something like SVGO online: - https://jakearchibald.github.io/svgomg/ - - You'll also need: - - 1. A unique idea - 2. Add: fill="currentColor" to any paths or objects so color may be used - 3. A descriptive for accessibility - - See the <svg><use ..> pattern above for reference on adding to the page. -{% endcomment %} -<svg xmlns="http://www.w3.org/2000/svg" style="display: none;"> - <symbol id="mastodon-icon" viewBox="0 0 16 16"> - <path fill="currentColor" d="M11.19 12.195c2.016-.24 3.77-1.475 3.99-2.603.348-1.778.32-4.339.32-4.339 0-3.47-2.286-4.488-2.286-4.488C12.062.238 10.083.017 8.027 0h-.05C5.92.017 3.942.238 2.79.765c0 0-2.285 1.017-2.285 4.488l-.002.662c-.004.64-.007 1.35.011 2.091.083 3.394.626 6.74 3.78 7.57 1.454.383 2.703.463 3.709.408 1.823-.1 2.847-.647 2.847-.647l-.06-1.317s-1.303.41-2.767.36c-1.45-.05-2.98-.156-3.215-1.928a3.614 3.614 0 0 1-.033-.496s1.424.346 3.228.428c1.103.05 2.137-.064 3.188-.189zm1.613-2.47H11.13v-4.08c0-.859-.364-1.295-1.091-1.295-.804 0-1.207.517-1.207 1.541v2.233H7.168V5.89c0-1.024-.403-1.541-1.207-1.541-.727 0-1.091.436-1.091 1.296v4.079H3.197V5.522c0-.859.22-1.541.66-2.046.456-.505 1.052-.764 1.793-.764.856 0 1.504.328 1.933.983L8 4.39l.417-.695c.429-.655 1.077-.983 1.934-.983.74 0 1.336.259 1.791.764.442.505.661 1.187.661 2.046v4.203z"/> - </symbol> - <symbol id="github-icon" viewBox="0 0 32.58 31.77"> - <path fill="currentColor" d="M16.29,0a16.29,16.29,0,0,0-5.15,31.75c.81.15,1.11-.35,1.11-.79s0-1.41,0-2.77C7.7,29.18,6.74,26,6.74,26a4.31,4.31,0,0,0-1.81-2.38c-1.48-1,.11-1,.11-1a3.42,3.42,0,0,1,2.5,1.68,3.47,3.47,0,0,0,4.74,1.35,3.48,3.48,0,0,1,1-2.18C9.7,23.08,5.9,21.68,5.9,15.44a6.3,6.3,0,0,1,1.68-4.37,5.86,5.86,0,0,1,.16-4.31s1.37-.44,4.48,1.67a15.44,15.44,0,0,1,8.16,0c3.11-2.11,4.48-1.67,4.48-1.67A5.85,5.85,0,0,1,25,11.07a6.29,6.29,0,0,1,1.67,4.37c0,6.26-3.81,7.63-7.44,8a3.89,3.89,0,0,1,1.11,3c0,2.18,0,3.93,0,4.47s.29.94,1.12.78A16.29,16.29,0,0,0,16.29,0Z"/> - </symbol> - <symbol id="twitter-icon" viewBox="0 0 32.804 26.499"> - <path fill="currentColor" d="M32.804 3.055c-.887 1.28-1.971 2.462-3.35 3.447v.887c0 3.054-.689 6.107-2.167 8.964-1.379 2.856-3.645 5.221-6.601 7.191-2.955 1.97-6.402 2.955-10.343 2.955-3.842 0-7.29-.985-10.344-2.955.296 0 .887.099 1.675.099 3.152 0 5.911-.985 8.373-2.857-1.478 0-2.758-.492-3.94-1.379s-1.97-1.97-2.363-3.349c.196.098.689.098 1.28.098s1.182-.098 1.772-.196c-1.575-.296-2.856-1.084-3.841-2.364-.985-1.281-1.479-2.66-1.479-4.236v-.1c.887.493 1.872.788 2.956.887-1.971-1.379-2.956-3.25-2.956-5.614 0-1.183.296-2.266.887-3.35 3.646 4.433 8.274 6.797 13.89 6.994a5.95 5.95 0 0 1-.197-1.478c0-1.872.69-3.448 1.971-4.729S20.982 0 22.854 0c1.97 0 3.546.69 4.826 2.069 1.379-.296 2.857-.788 4.236-1.576-.493 1.576-1.478 2.758-2.955 3.743 1.38-.296 2.66-.689 3.843-1.181z"/> - </symbol> - <symbol id="facebook-icon" viewBox="0 0 42 42"> - <path fill="currentColor" d="M39.68,0H2.32A2.32,2.32,0,0,0,0,2.32V39.68A2.32,2.32,0,0,0,2.32,42H22.43V25.74H17V19.4h5.47V14.72c0-5.42,3.31-8.38,8.15-8.38a44.91,44.91,0,0,1,4.89.25v5.67H32.12c-2.63,0-3.14,1.25-3.14,3.09v4h6.28l-.82,6.34H29V42h10.7A2.32,2.32,0,0,0,42,39.68V2.32A2.32,2.32,0,0,0,39.68,0Z"/> - </symbol> - <symbol id="logo" viewBox="0 0 300 89"> - <path d="M136.2 30.8C132.3 30 128.4 29.6 124.5 29.6C111.4 29.6 103.9 35.3 103.9 45.4C103.9 53.5 108.9 58.7 116.7 58.7C118.7 58.8 120.7 58.3 122.4 57.5V57.7C122.4 63.4 119.9 65.7 114 65.7C110.6 65.7 107.3 64.9 104.4 63.3V71.5C107.5 72.6 110.7 73.2 114 73.2C118.7 73.2 122.5 72.2 125.3 70.1C125.8 69.8 126.2 69.4 126.6 69.1C127.4 68.4 127.9 67.7 128.5 66.7C130.4 63.7 131.1 60.1 131.1 52.6V50.1C131 48.9 131 47.6 131 46.4L130.9 41.6L130.8 37.8V36.9C132.6 37.1 130.4 36.7 132.8 37.1L136.2 30.8ZM34.2 47.6C34.2 55.3 33.8 58.2 32.5 60.8C31.2 63.4 29.3 64.9 25.3 66.7L33.6 70.7C37.6 68.8 39.4 66.9 41 64.1C42.4 61.3 43.1 57.8 43.1 50.6V30.1H34.1L34.2 47.6ZM292.3 47.5C290.9 46.8 291 46.1 291 46.1C291 46.1 291 44.9 293.5 44.9C295.3 44.9 297.1 45.4 298.7 46.1V41.4C296.8 40.5 294.6 40.1 292.4 40.3C285.1 40.6 285.2 46 285.2 46C285 47.4 285.6 48.9 286.5 50.1C288 51.3 289.8 52.4 291.6 53C292.9 53.5 293.4 54.1 293.4 54.4C293.4 54.7 293.6 55.7 290.9 55.7C288.9 55.6 286.9 55 285.2 54.2V59.1C287.9 60.1 290.9 60.5 293.7 60.1C296.4 59.6 299.1 58.8 299.4 54.4C299.6 50.1 295.3 48.8 292.3 47.5ZM281 58.1C282.2 56.8 282.7 55.3 282.7 52.3V40.1H276.5V52C276.5 54.5 275.7 55.3 273.5 55.3C272.6 55.3 271.6 55.1 270.6 54.8V40.1H264.5V58.8C267.7 59.6 270.9 60.1 274.3 60.1C277.3 60.3 279.7 59.6 281 58.1ZM223.8 44.5C223.8 35.5 218.3 29.9 209.4 29.9C200.3 29.9 194.6 35.6 194.6 45.1C194.6 54.1 200.1 59.7 209.1 59.7C218 59.7 223.8 53.8 223.8 44.5ZM149.7 59.2C158.7 59.2 164.5 53.5 164.5 44C164.5 35 159 29.4 150.1 29.4C141 29.4 135.3 35.1 135.3 44.6C135.3 53.5 140.8 59.2 149.7 59.2ZM172 55.5C174.9 58.2 180.2 59.2 183.8 59.1C186.6 59.1 189.4 58.4 191.9 57.1V49.9C190 50.8 187.8 51.4 185.8 51.4C182.3 51.4 176.8 50.1 176.8 43.9C176.8 37.7 182.3 36.4 185.8 36.4C187.9 36.4 189.9 37.1 191.7 38.1V30.8C189.2 29.7 186.6 29.1 183.9 29.1C180.3 29.1 175.4 30.1 172.5 33C169.4 35.8 167.6 39.8 167.6 43.9C167.1 48.2 168.8 52.5 172 55.5ZM243.9 41.8V58.9H252.9V41.4C252.9 37 252.3 34.8 250.4 33C248.6 31.2 245.1 29.9 240.5 29.9C235.8 30 231 30.7 226.5 31.9V59H235.5V37.8C236.8 37.4 238.2 37.1 239.6 37.2C242.7 37.1 243.9 38.4 243.9 41.8ZM255.1 51.7H262.3V58.9H255.1V51.7ZM60.4 29.5C56.3 29.5 52.2 30.3 48.5 32.2V39C51.8 37.3 55.4 36.4 59 36.3C61.3 36.3 62.1 36.9 62.1 38.6V40.5C51.1 41.4 46.5 44.3 46.5 50.5C46.5 56.2 49.9 58.9 57.4 58.9C61.6 58.9 66 58.5 70.2 58V39.8C70.2 36.1 70 34.4 69.3 33C68 30.6 65.1 29.5 60.4 29.5ZM28.9 16.4H19.9V30C18.7 29.7 17.3 29.5 15.9 29.5C6.6 29.5 0.5 35.3 0.5 44.4C0.5 53.8 6.2 58.6 17.2 58.7C21.2 58.7 25 58.3 28.9 57.6V16.4ZM88.8 29.5C84.1 29.6 79.3 30.3 74.8 31.5V58.4H83.8V37.2C85.1 36.8 86.5 36.5 87.9 36.5C91.1 36.5 92.2 37.7 92.2 41.2V58.3H101.2V40.9C101.2 36.5 100.6 34.3 98.7 32.5C96.9 30.7 93.4 29.5 88.8 29.5ZM62.6 52.2C61.2 52.5 59.7 52.6 58.3 52.6C55.8 52.6 54.7 51.8 54.7 50.1C54.7 47.7 56.6 46.8 62.6 46.2V52.2ZM203.6 44.7C203.6 39.8 205.6 37 209.2 37C212.8 37 214.6 39.9 214.6 44.7C214.6 49.5 212.6 52.4 209.1 52.4C205.6 52.4 203.6 49.7 203.6 44.7ZM150 36.5C153.5 36.5 155.4 39.4 155.4 44.2C155.4 49 153.4 51.9 149.9 51.9C146.4 51.9 144.4 49.1 144.4 44.2C144.4 39.3 146.5 36.5 150 36.5ZM19.9 51.4C18.9 51.6 17.9 51.6 16.8 51.6C12.2 51.6 9.6 49 9.6 44.2C9.6 39.4 12.2 36.6 16.8 36.6C17.8 36.6 18.8 36.7 19.8 37.1L19.9 51.4ZM122.7 50.1V50.8C121.7 51.2 120.4 51.4 119.3 51.4C115.3 51.4 113.2 48.9 113.2 44.4C113.2 41.3 114.3 39.1 116.5 37.8C118 37 119.9 36.5 121.7 36.6H122.6V37.3L122.7 40.2L122.8 44.3C122.8 45.5 122.9 46.8 122.9 47.7L122.7 50.1ZM34.2 16.5H43.2V25.6H34.2V16.5Z" fill="currentColor"/> - <path d="M52.9769 20.0001C52.7719 20.0001 52.5989 19.9301 52.4589 19.7901C52.3189 19.6501 52.2489 19.4871 52.2489 19.3001V17.3121C52.2489 17.1811 52.2859 16.9811 52.3609 16.7101C52.4359 16.4391 52.6319 16.1831 52.9489 15.9401L55.8609 13.0841C57.3539 11.9451 58.5819 10.9791 59.5429 10.1861C60.5039 9.39306 61.2179 8.68806 61.6849 8.07206C62.1519 7.45606 62.3849 6.87706 62.3849 6.33606C62.3849 5.70106 62.2219 5.17406 61.8949 4.75406C61.5679 4.33406 61.0039 4.12406 60.2009 4.12406C59.6599 4.12406 59.2119 4.24106 58.8569 4.47406C58.5019 4.70706 58.2269 5.01106 58.0309 5.38406C57.8349 5.75706 57.6999 6.14006 57.6249 6.53206C57.5499 6.77506 57.4239 6.94306 57.2469 7.03606C57.0699 7.12906 56.8779 7.17606 56.6729 7.17606H53.1729C53.0049 7.17606 52.8649 7.12006 52.7529 7.00806C52.6409 6.89606 52.5849 6.75606 52.5849 6.58806C52.6039 5.69206 52.7949 4.84706 53.1589 4.05406C53.5229 3.26106 54.0359 2.56506 54.6989 1.96806C55.3619 1.37106 56.1549 0.899057 57.0789 0.554057C58.0029 0.209057 59.0439 0.0360565 60.2009 0.0360565C61.7879 0.0360565 63.1359 0.293056 64.2469 0.806056C65.3579 1.31906 66.2019 2.02906 66.7809 2.93406C67.3599 3.83906 67.6489 4.89906 67.6489 6.11206C67.6489 7.02706 67.4479 7.88106 67.0469 8.67406C66.6459 9.46706 66.0759 10.2231 65.3389 10.9421C64.6019 11.6611 63.7289 12.4031 62.7209 13.1681L60.1449 15.7721H67.3409C67.5459 15.7721 67.7189 15.8371 67.8589 15.9681C67.9989 16.0991 68.0689 16.2671 68.0689 16.4721V19.3001C68.0689 19.4871 67.9989 19.6501 67.8589 19.7901C67.7189 19.9301 67.5459 20.0001 67.3409 20.0001H52.9769Z" fill="currentColor"/> - <path d="M78.7929 20.2801C77.4489 20.2801 76.2869 20.0891 75.3069 19.7061C74.3269 19.3231 73.5099 18.7961 72.8569 18.1241C72.2039 17.4521 71.7089 16.6681 71.3729 15.7721C71.0369 14.8761 70.8409 13.9151 70.7849 12.8881C70.7659 12.3841 70.7519 11.8101 70.7429 11.1661C70.7339 10.5221 70.7339 9.86906 70.7429 9.20606C70.7519 8.54306 70.7659 7.95106 70.7849 7.42806C70.8409 6.40106 71.0419 5.44506 71.3869 4.55806C71.7319 3.67106 72.2359 2.89706 72.8989 2.23406C73.5619 1.57106 74.3829 1.05306 75.3629 0.680056C76.3429 0.307056 77.4859 0.120056 78.7929 0.120056C80.1179 0.120056 81.2709 0.307056 82.2509 0.680056C83.2309 1.05306 84.0479 1.57106 84.7009 2.23406C85.3539 2.89706 85.8579 3.67106 86.2129 4.55806C86.5679 5.44506 86.7729 6.40106 86.8289 7.42806C86.8479 7.95106 86.8619 8.54306 86.8709 9.20606C86.8799 9.86906 86.8799 10.5221 86.8709 11.1661C86.8619 11.8101 86.8479 12.3841 86.8289 12.8881C86.7729 13.9151 86.5719 14.8761 86.2269 15.7721C85.8819 16.6681 85.3869 17.4521 84.7429 18.1241C84.0989 18.7961 83.2869 19.3231 82.3069 19.7061C81.3269 20.0891 80.1559 20.2801 78.7929 20.2801ZM78.7929 16.2201C79.7639 16.2201 80.4679 15.9071 80.9069 15.2821C81.3459 14.6571 81.5739 13.8121 81.5929 12.7481C81.6299 12.2071 81.6539 11.6371 81.6629 11.0401C81.6719 10.4431 81.6719 9.84506 81.6629 9.24806C81.6539 8.65106 81.6299 8.10006 81.5929 7.59606C81.5739 6.56906 81.3459 5.73906 80.9069 5.10406C80.4679 4.46906 79.7639 4.14306 78.7929 4.12406C77.8409 4.14306 77.1459 4.46906 76.7069 5.10406C76.2679 5.73906 76.0299 6.56906 75.9929 7.59606C75.9929 8.10006 75.9879 8.65106 75.9789 9.24806C75.9699 9.84506 75.9699 10.4431 75.9789 11.0401C75.9879 11.6371 75.9929 12.2071 75.9929 12.7481C76.0299 13.8121 76.2729 14.6571 76.7209 15.2821C77.1689 15.9071 77.8599 16.2201 78.7929 16.2201Z" fill="currentColor"/> - <path d="M90.2169 20.0001C90.0119 20.0001 89.8389 19.9301 89.6989 19.7901C89.5589 19.6501 89.4889 19.4871 89.4889 19.3001V17.3121C89.4889 17.1811 89.5259 16.9811 89.6009 16.7101C89.6759 16.4391 89.8719 16.1831 90.1889 15.9401L93.1009 13.0841C94.5939 11.9451 95.8219 10.9791 96.7829 10.1861C97.7439 9.39306 98.4579 8.68806 98.9249 8.07206C99.3919 7.45606 99.6249 6.87706 99.6249 6.33606C99.6249 5.70106 99.4619 5.17406 99.1349 4.75406C98.8079 4.33406 98.2439 4.12406 97.4409 4.12406C96.8999 4.12406 96.4519 4.24106 96.0969 4.47406C95.7419 4.70706 95.4669 5.01106 95.2709 5.38406C95.0749 5.75706 94.9399 6.14006 94.8649 6.53206C94.7899 6.77506 94.6639 6.94306 94.4869 7.03606C94.3099 7.12906 94.1179 7.17606 93.9129 7.17606H90.4129C90.2449 7.17606 90.1049 7.12006 89.9929 7.00806C89.8809 6.89606 89.8249 6.75606 89.8249 6.58806C89.8439 5.69206 90.0349 4.84706 90.3989 4.05406C90.7629 3.26106 91.2759 2.56506 91.9389 1.96806C92.6019 1.37106 93.3949 0.899057 94.3189 0.554057C95.2429 0.209057 96.2839 0.0360565 97.4409 0.0360565C99.0279 0.0360565 100.376 0.293056 101.487 0.806056C102.598 1.31906 103.442 2.02906 104.021 2.93406C104.6 3.83906 104.889 4.89906 104.889 6.11206C104.889 7.02706 104.688 7.88106 104.287 8.67406C103.886 9.46706 103.316 10.2231 102.579 10.9421C101.842 11.6611 100.969 12.4031 99.9609 13.1681L97.3849 15.7721H104.581C104.786 15.7721 104.959 15.8371 105.099 15.9681C105.239 16.0991 105.309 16.2671 105.309 16.4721V19.3001C105.309 19.4871 105.239 19.6501 105.099 19.7901C104.959 19.9301 104.786 20.0001 104.581 20.0001H90.2169Z" fill="currentColor"/> - <path d="M115.641 20.2801C114.204 20.2801 112.967 20.1071 111.931 19.7621C110.895 19.4171 110.05 18.9691 109.397 18.4181C108.744 17.8671 108.258 17.2791 107.941 16.6541C107.624 16.0291 107.456 15.4271 107.437 14.8481C107.437 14.6801 107.498 14.5401 107.619 14.4281C107.74 14.3161 107.885 14.2601 108.053 14.2601H111.721C111.926 14.2601 112.094 14.3021 112.225 14.3861C112.356 14.4701 112.477 14.6051 112.589 14.7921C112.738 15.1471 112.958 15.4361 113.247 15.6601C113.536 15.8841 113.886 16.0381 114.297 16.1221C114.708 16.2061 115.156 16.2481 115.641 16.2481C116.593 16.2481 117.335 16.0291 117.867 15.5901C118.399 15.1511 118.665 14.5491 118.665 13.7841C118.665 12.9811 118.413 12.4071 117.909 12.0621C117.405 11.7171 116.686 11.5441 115.753 11.5441H112.645C112.44 11.5441 112.272 11.4791 112.141 11.3481C112.01 11.2171 111.945 11.0491 111.945 10.8441V9.27606C111.945 9.05206 111.992 8.85606 112.085 8.68806C112.178 8.52006 112.281 8.39905 112.393 8.32405L116.985 4.43205H109.201C109.014 4.43205 108.851 4.36705 108.711 4.23605C108.571 4.10505 108.501 3.93705 108.501 3.73205V1.10006C108.501 0.895055 108.571 0.727055 108.711 0.596055C108.851 0.465055 109.014 0.400055 109.201 0.400055H122.081C122.286 0.400055 122.459 0.465055 122.599 0.596055C122.739 0.727055 122.809 0.895055 122.809 1.10006V3.48006C122.809 3.68506 122.762 3.86705 122.669 4.02605C122.576 4.18505 122.473 4.31106 122.361 4.40406L118.105 8.35206L118.301 8.40806C119.384 8.53906 120.34 8.81905 121.171 9.24805C122.002 9.67705 122.66 10.2891 123.145 11.0821C123.63 11.8751 123.873 12.8791 123.873 14.0921C123.873 15.3611 123.514 16.4581 122.795 17.3821C122.076 18.3061 121.101 19.0201 119.869 19.5241C118.637 20.0281 117.228 20.2801 115.641 20.2801Z" fill="currentColor"/> - <path d="M136.66 88C136.455 88 136.287 87.9347 136.156 87.804C136.025 87.6733 135.96 87.5053 135.96 87.3V69.1C135.96 68.8947 136.025 68.7267 136.156 68.596C136.287 68.4653 136.455 68.4 136.66 68.4H143.94C145.769 68.4 147.328 68.6987 148.616 69.296C149.904 69.8747 150.893 70.7333 151.584 71.872C152.275 72.992 152.648 74.3827 152.704 76.044C152.723 76.8653 152.732 77.584 152.732 78.2C152.732 78.816 152.723 79.5253 152.704 80.328C152.629 82.064 152.256 83.5013 151.584 84.64C150.931 85.7787 149.969 86.628 148.7 87.188C147.449 87.7293 145.909 88 144.08 88H136.66ZM140.972 83.968H143.94C144.743 83.968 145.405 83.8467 145.928 83.604C146.469 83.3427 146.871 82.9413 147.132 82.4C147.412 81.8587 147.561 81.1493 147.58 80.272C147.617 79.7307 147.636 79.2453 147.636 78.816C147.655 78.3867 147.655 77.9573 147.636 77.528C147.636 77.0987 147.617 76.6227 147.58 76.1C147.543 74.8307 147.207 73.9067 146.572 73.328C145.956 72.7307 145.032 72.432 143.8 72.432H140.972V83.968Z" fill="currentColor"/> - <path d="M164.207 88.28C162.527 88.28 161.052 88.0093 159.783 87.468C158.532 86.908 157.562 86.0587 156.871 84.92C156.18 83.7627 155.835 82.2973 155.835 80.524V69.1C155.835 68.8947 155.9 68.7267 156.031 68.596C156.162 68.4653 156.33 68.4 156.535 68.4H160.147C160.352 68.4 160.52 68.4653 160.651 68.596C160.782 68.7267 160.847 68.8947 160.847 69.1V80.496C160.847 81.7093 161.136 82.624 161.715 83.24C162.312 83.8373 163.143 84.136 164.207 84.136C165.252 84.136 166.064 83.8373 166.643 83.24C167.24 82.624 167.539 81.7093 167.539 80.496V69.1C167.539 68.8947 167.604 68.7267 167.735 68.596C167.884 68.4653 168.052 68.4 168.239 68.4H171.879C172.066 68.4 172.224 68.4653 172.355 68.596C172.504 68.7267 172.579 68.8947 172.579 69.1V80.524C172.579 82.2973 172.234 83.7627 171.543 84.92C170.852 86.0587 169.882 86.908 168.631 87.468C167.38 88.0093 165.906 88.28 164.207 88.28Z" fill="currentColor"/> - <path d="M176.992 88C176.787 88 176.619 87.9347 176.488 87.804C176.357 87.6733 176.292 87.5053 176.292 87.3V69.1C176.292 68.8947 176.357 68.7267 176.488 68.596C176.619 68.4653 176.787 68.4 176.992 68.4H184.608C187.016 68.4 188.911 68.96 190.292 70.08C191.692 71.1813 192.392 72.7493 192.392 74.784C192.392 76.1093 192.065 77.2293 191.412 78.144C190.777 79.0587 189.937 79.7493 188.892 80.216L192.756 87.104C192.812 87.216 192.84 87.3187 192.84 87.412C192.84 87.5613 192.775 87.7013 192.644 87.832C192.532 87.944 192.392 88 192.224 88H188.528C188.173 88 187.912 87.916 187.744 87.748C187.576 87.5613 187.455 87.3933 187.38 87.244L184.188 81.084H181.304V87.3C181.304 87.5053 181.239 87.6733 181.108 87.804C180.977 87.9347 180.809 88 180.604 88H176.992ZM181.304 77.136H184.552C185.429 77.136 186.083 76.9213 186.512 76.492C186.96 76.0627 187.184 75.4747 187.184 74.728C187.184 74 186.969 73.412 186.54 72.964C186.129 72.516 185.467 72.292 184.552 72.292H181.304V77.136Z" fill="currentColor"/> - <path d="M196.351 88C196.146 88 195.978 87.9347 195.847 87.804C195.717 87.6733 195.651 87.5053 195.651 87.3V69.1C195.651 68.8947 195.717 68.7267 195.847 68.596C195.978 68.4653 196.146 68.4 196.351 68.4H199.963C200.169 68.4 200.337 68.4653 200.467 68.596C200.598 68.7267 200.663 68.8947 200.663 69.1V75.848H207.579V69.1C207.579 68.8947 207.645 68.7267 207.775 68.596C207.906 68.4653 208.074 68.4 208.279 68.4H211.891C212.097 68.4 212.265 68.4653 212.395 68.596C212.526 68.7267 212.591 68.8947 212.591 69.1V87.3C212.591 87.5053 212.526 87.6733 212.395 87.804C212.265 87.9347 212.097 88 211.891 88H208.279C208.074 88 207.906 87.9347 207.775 87.804C207.645 87.6733 207.579 87.5053 207.579 87.3V80.328H200.663V87.3C200.663 87.5053 200.598 87.6733 200.467 87.804C200.337 87.9347 200.169 88 199.963 88H196.351Z" fill="currentColor"/> - <path d="M215.395 88C215.245 88 215.105 87.944 214.975 87.832C214.863 87.7013 214.807 87.5613 214.807 87.412C214.807 87.3187 214.816 87.2347 214.835 87.16L221.415 69.184C221.471 68.9787 221.583 68.8013 221.751 68.652C221.937 68.484 222.189 68.4 222.507 68.4H226.651C226.968 68.4 227.211 68.484 227.379 68.652C227.565 68.8013 227.687 68.9787 227.743 69.184L234.295 87.16C234.332 87.2347 234.351 87.3187 234.351 87.412C234.351 87.5613 234.285 87.7013 234.155 87.832C234.043 87.944 233.903 88 233.735 88H230.291C230.011 88 229.796 87.9347 229.647 87.804C229.516 87.6547 229.432 87.524 229.395 87.412L228.303 84.556H220.827L219.763 87.412C219.725 87.524 219.641 87.6547 219.511 87.804C219.38 87.9347 219.156 88 218.839 88H215.395ZM221.975 80.524H227.183L224.551 73.132L221.975 80.524Z" fill="currentColor"/> - <path d="M237.258 88C237.071 88 236.903 87.9347 236.754 87.804C236.623 87.6733 236.558 87.5053 236.558 87.3V69.1C236.558 68.8947 236.623 68.7267 236.754 68.596C236.903 68.4653 237.071 68.4 237.258 68.4H240.282C240.58 68.4 240.804 68.484 240.954 68.652C241.122 68.8013 241.224 68.9227 241.262 69.016L246.19 77.864L251.118 69.016C251.174 68.9227 251.267 68.8013 251.398 68.652C251.547 68.484 251.78 68.4 252.098 68.4H255.094C255.299 68.4 255.467 68.4653 255.598 68.596C255.747 68.7267 255.822 68.8947 255.822 69.1V87.3C255.822 87.5053 255.747 87.6733 255.598 87.804C255.467 87.9347 255.299 88 255.094 88H251.762C251.556 88 251.379 87.9347 251.23 87.804C251.099 87.6733 251.034 87.5053 251.034 87.3V76.8L247.87 82.652C247.795 82.82 247.683 82.9693 247.534 83.1C247.384 83.2307 247.179 83.296 246.918 83.296H245.462C245.2 83.296 244.995 83.2307 244.846 83.1C244.696 82.9693 244.575 82.82 244.482 82.652L241.318 76.8V87.3C241.318 87.5053 241.252 87.6733 241.122 87.804C240.991 87.9347 240.823 88 240.618 88H237.258Z" fill="currentColor"/> - </symbol> -</svg> - -{% include analytics.html %} -</body> -</html> diff --git a/_pages/homepage-default.md b/_pages/homepage-default.md deleted file mode 100644 index d89a98df..00000000 --- a/_pages/homepage-default.md +++ /dev/null @@ -1,11 +0,0 @@ ---- -description: Five days of talks, sprints, and tutorials by the community for the community. -hero_text_align: left -hero_theme: green -layout: home -permalink: /homepage/ -sitemap: false -testimonial_img: /static/img/home-testimonial.jpg -testimonial_img_mobile: /static/img/home-testimonial-mobile.jpg -title: DjangoCon US 2023 • October 16-20, 2023 • Durham, NC United States ---- diff --git a/_pages/homepage-recap.html b/_pages/homepage-recap.html deleted file mode 100644 index 69baa993..00000000 --- a/_pages/homepage-recap.html +++ /dev/null @@ -1,305 +0,0 @@ ---- -heading: 2022 DjangoCon US Recap -layout: base -permalink: /recap/ -title: 2022 DjangoCon US Recap ---- - -<header class="subpage-header recap-header"> - <h1>{{ page.heading }}</h1> -</header> - -<div class="content"> - -<div class="section-pad theme-light-gray recap-intro"> - <div class="row column"> - <h2 class="demp recap-heading"> - The 2022 DjangoCon US Conference is a wrap! Thanks for another amazing year! - </h2> - </div> - - <div class="row"> - <div class="column medium-7"> - <img - src="https://live.staticflickr.com/65535/52487681415_8a244bdcf9_b.jpg" - alt="The crowd of DjangoCon US 2022 attendees" /> - </div> - - <div class="column medium-5"> - <p class="lead"> - DjangoCon US 2022 was in San Diego for the second year and hosted 425 attendees from all over the world! - </p> - - {% comment %} - <p>Supportive copy speaking to the line up or topics discussed, generally setting the mood for a successful event. Basically the primary takeaway.</p> - {% endcomment %} - - <p><strong>Fond memory from 2022?</strong> Share it with us:</p> - - <!-- TODO: Icons are white and don't have sufficient contrast on screen --> - <ul class="social-icons highlight"> - <li> - <a class="twitter" href="https://twitter.com/djangocon"> - <svg class="social-icon"> - <title>Twitter - - - - -
  • - - - -
  • -
  • - -
  • - - - - - - -
    -
    -
    -

    From tutorials on APIs and testing to talks about burnout and async to hallway tracks where we made buttons and planned our sprint contributions, 2022 was DjangoCon US's best year ever!

    - -

    This was an innovative year for DjangoCon US! Every year, DjangoCon US works hard to make our program better and more accessible, and this year we're super proud of the features we were able to add:

    - -
      -
    • Deep Dive Day, a single-track conference day dedicated to talks that go into more detail on Django topics
    • -
    • Accessibility wins: In addition to subsidized child care and captioned conference videos, this year we had a dedicated lactation room and live captioning for all talks
    • -
    • Travel stipends for all speakers
    • -
    - -

    Thanks to our generous sponsors, who helped make these conference dreams a reality.

    -
    - -
    - {% comment %} - Main graphic/icon for the year. e.g. for 2018, the crab. 2022, the boat. - {% endcomment %} - -
    -
    -
    - -
    -
    -
    -

    Awesome Talks and Tutorials

    -

    We featured over 40 talks & tutorials this year. Here are some crowd favorites!

    - See the full schedule -
    - {% for post in site.schedule %} - {% if post.featured %} - {% if post.permalink and post.room != 'filler' %} - - {% endif %} - {% endif %} - {% endfor %} -
    -
    - -
    -

    {{ "Our Presenters are :sparkles: Amazing :sparkles:" | markdownify | remove: '

    ' | remove: '

    ' }}

    -
    - {% for presenter in site.presenters %} - {% unless presenter.hidden %} - {% if presenter.name %} - - {% endif %} - {% endunless %} - {% endfor %} -
    -
    - -{% include sponsor-footer.html %} - -
    -
    -
    -

    {{ ":chart_with_upwards_trend: 2022 By the Numbers" | markdownify | remove: '

    ' | remove: '

    ' }}

    -

    2022 was an amazing year for attendance, sponsorship, talks, food, really everything that goes into making a conference great.

    -

    The buzz we heard on Twitter was that it was a lot of people's favorite DjangoCon US ever!

    -
    - -
    -
    - - - - - - - - - - - - - - - - - - - - - - - - - -
    What?Tell me about it.
    Attendees425
    Tutorials6
    Talks38
    Favorite foodMac and cheese bar at the opening reception
    -
    -
    -
    - - {% comment %} -
    -
    -

    And remember...

    -

    Under the hood it's all just a grid system. So you can just add a new row if you want to associate more text with this block. Easy peasy, lemon squeezy.

    -
    -
    - {% endcomment %} -
    - -
    -
    -

    Picture Perfect

    -

    We captured so many Kodak moments over the week! Thanks to Bartek Pawlik for being our official conference photographer and saving these memories for us.

    - View all photos -
    - - {% for photo in site.data.photos.photos %} -
    - {{ photo.title }} -
    - {% endfor %} -
    - - -
    -
    -
    -

    {{ "DjangoCon US 2022 was possible through lots of :heart:" | markdownify | remove: '

    ' | remove: '

    ' }}

    -

    Our organizers put hundreds of hours of heart and soul into this conference. We couldn't do it without each and every one of you!

    -
    -
    -
    - {% for organizer in site.organizers %} - {% unless organizer.hidden %} -
    -
    - Photo of {{ organizer.name }} -
    -

    - {{ organizer.name }} - {% if organizer.pronouns != blank %} - ({{ organizer.pronouns }}) - {% endif %} -

    - {{ organizer.role }} -
    - -
    -
    - {% endunless %} - {% endfor %} -
    -
    - - diff --git a/_pages/iframe.html b/_pages/iframe.html deleted file mode 100644 index bce1843d..00000000 --- a/_pages/iframe.html +++ /dev/null @@ -1,34 +0,0 @@ ---- -layout: null -permalink: /iframe/ -published: false -sitemap: false ---- - - - - - - - - - - -

    This is a testing harness. Browse to - - /iframe/?page=/conduct/ - - to test the conduct page in an iframe. -

    - - - - diff --git a/_pages/invite-letter.html b/_pages/invite-letter.html deleted file mode 100644 index 2e04ff0a..00000000 --- a/_pages/invite-letter.html +++ /dev/null @@ -1,95 +0,0 @@ ---- -description: Request your visa invitation letter for DjangoCon US 2024 here. -heading: Visa Invitation Letter -layout: base -permalink: /invitation/ -title: Visa Invitation Letter ---- - - - -
    -

    {{ page.heading }}

    -
    - -
    - - -
    - -
    - - - - - - - - - - - - -
    - - -
    -
    - - -
    - -
    - -
    -

    Thank you for your interest in DjangoCon US 2024! We're generating your invitation letter -

    -
    -

    Your invitation letter has been sent to the DjangoCon US organizers for review. Once they approve it, - they will email it to you. Thanks for your interest!

    -
    -
    - - -
    - - diff --git a/_pages/merch.html b/_pages/merch.html deleted file mode 100644 index 9702658b..00000000 --- a/_pages/merch.html +++ /dev/null @@ -1,12 +0,0 @@ ---- -description: Merchandise Redirect -heading: Merchandise Redirect -layout: null -permalink: /merch/ -sitemap: false -title: Slack Redirect ---- - -{% if site.merchandise_link != empty %} - -{% endif %} diff --git a/_pages/news.md b/_pages/news.md deleted file mode 100644 index 89665b92..00000000 --- a/_pages/news.md +++ /dev/null @@ -1,7 +0,0 @@ ---- -description: The latest DjangoCon US 2018 news. -heading: News -layout: post-list -permalink: /news/ -title: News ---- diff --git a/_pages/opportunity-grants.md b/_pages/opportunity-grants.md deleted file mode 100644 index aa99fefb..00000000 --- a/_pages/opportunity-grants.md +++ /dev/null @@ -1,86 +0,0 @@ ---- -description: As part of our commitment to diversity, we are thrilled to announce that - we will be supporting individuals who need opportunity grants to attend DjangoCon - US. -heading: Opportunity Grants -layout: default -permalink: /opportunity-grants/ -title: Opportunity Grants ---- - -{% comment %} -**UPDATE**: The application window has been extended to Monday, April 29th at Noon EDT! - -Our opportunity grant application is open until April 29, 2024 at [12 PM EDT](https://time.is/1200PM_29_Apr_2024_in_New_York?DjangoCon_US_2024_CFP_closes). -{% endcomment %} - -{% comment %} -Our opportunity grant application window is now closed. All decision notifications have been sent. -{% endcomment %} - -Our opportunity grant application window is now closed. All decision notifications will be sent by July 8th, 2024. - -If you have any questions, feel free to reach out to the opportunity grants team at [{{ site.opportunity_grants_email }}](mailto:{{ site.opportunity_grants_email }}). - -
    - -## Diversity Sponsorships - -Your organization can help increase diversity at DjangoCon US by contributing to the Opportunity Grant Fund. -{% comment %}Please check out our [Sponsorship Information](/sponsors/information/) page for more information.{% endcomment %}Please e-mail us to ask about sponsorship opportunities. - -
    - -## Frequently Asked Questions - -### What are opportunity grants? -They are grants to encourage and facilitate the participation of those who otherwise might not be able to attend the conference. -They can be used for conference-related expenses like travel, lodging, etc. - -### Why did the name change to "opportunity grants"? -We renamed "financial aid" to "opportunity grants" to become a more inclusive and diverse conference. -We feel the wording "opportunity grants" makes a positive shift towards being a thriving, supportive and trusting community. - -### When will I find out whether I've received an opportunity grant? - -You will be notified by July 8, 2024. - -{% comment %} -You should have received your notification. If you haven't, please email the opportunity grant team at [{{ site.opportunity_grants_email }}](mailto:{{ site.opportunity_grants_email }}). -{% endcomment %} - -### Do I need to be a speaker, a first-time attendee, or a member of an underrepresented group to receive an opportunity grant? - -We try to allocate opportunity grants to a diverse set of attendees based on need. -Our review process is holistic and considers many different factors, most notably the impact we think attending DjangoCon US will have on the applicant. -{% comment %}We want to encourage everyone who needs aid to apply for it. Do not rule yourself out before you have even applied! {% endcomment %} - -### When will I receive my opportunity grant? - -The opportunity grant is paid to the recipient at the conference or shortly after. - -### How will I receive my opportunity grant? - -The opportunity grant is paid to the recipient in a check for US account holders. -A bank transfer is used for non-US account holders. -We typically use TransferWise for international payments but have used other services for currencies they do not support. - -We require receipts for the items that the opportunity grant was spent on. - -### Is there anything I should know if I am traveling into the US from another country? - -If you are traveling into the United States, we strongly encourage you to wait to purchase airfare or book a hotel room until after your visa has been accepted. - -Find out more details and get your invitation letter at our Visa information page. - -### What if there is an emergency and I cannot attend? - -If you are denied entry to the US with a valid visa, we will pay your non-refundable costs (up to the amount of your opportunity grant). -For other emergencies or additional costs, we will review the recipient's needs on a case-by-case basis. - -### How To Donate - -Become a Sponsor! You or your company can sponsor at a specific level or sponsor a particular need, such as wifi, meals, or sprints. -Contact our sponsorship chair directly to find out how you can sponsor us. - -You may also donate directly to the Opportunity Grant Fund by buying an extra ticket for an attendee who couldn't otherwise afford it when you purchase your ticket. Alternatively, you can add a dollar amount of your choosing. diff --git a/_pages/organizers.html b/_pages/organizers.html deleted file mode 100644 index 29a128cb..00000000 --- a/_pages/organizers.html +++ /dev/null @@ -1,79 +0,0 @@ ---- -description: Meet the people who made DjangoCon US 2023 possible. -heading: Organizers -layout: base -permalink: /organizers/ -redirect_from: -- /about/organizers/ -title: Organizers ---- - -
    -

    {{ page.heading }}

    -
    - -
    -
    -
    -

    - There is no "I" in DjangoCon US. Thank you to all our volunteers who make DjangoCon US happen! -

    -
    - {% for organizer in site.organizers %} - {% unless organizer.hidden %} -
    -
    - Photo of {{ organizer.name }} -
    -

    - {{ organizer.name }} - {% if organizer.pronouns != blank %} - ({{ organizer.pronouns }}) - {% endif %} -

    - {{ organizer.role }} -
    - -
    -
    - {% endunless %} - {% endfor %} - -
    -
    -
    -
    diff --git a/_pages/presenters.html b/_pages/presenters.html deleted file mode 100644 index 972f8bf7..00000000 --- a/_pages/presenters.html +++ /dev/null @@ -1,21 +0,0 @@ ---- -heading: Speakers -layout: default -permalink: /presenters -published: true -sitemap: false -title: Speakers ---- - -{% assign presentations = site.schedule %} - -{% for presentation in presentations %} - {% for presenter_slug in presentation.presenter_slugs %} - {% assign presenter = site.presenters | where: "slug", presenter_slug | first %} - {{ presenter }} - -
    -
    -
    - {% endfor %} -{% endfor %} diff --git a/_pages/public-health.html b/_pages/public-health.html deleted file mode 100644 index 1af8eb54..00000000 --- a/_pages/public-health.html +++ /dev/null @@ -1,95 +0,0 @@ ---- -description: DjangoCon US 2024's public health policy includes required testing - and a mask recommendation. -heading: Public Health Policy -layout: base -permalink: /public-health/ -redirect_from: -- /covid/ -title: Public Health Policy ---- - -
    -

    {{ page.heading }}

    -
    - -
    -
    -
    -

    - DjangoCon US 2024's public health policy includes required testing and a mask recommendation. -

    -
    -
    - -
    -
    -
    -

    Public Health Policy

    -

    - In order to keep conference attendees safe, DjangoCon US will require proof of a negative COVID test. We ask that people test again before sprints begin on Thursday. We strongly recommend that people wear a mask and have the latest vaccination boosters. If you are not familiar, we suggest you check out the CDC's Travel guidelines to stay safe. -
    -
    - Scroll down to the TLDR at the bottom for a condensed version of the following rules. -
    -
    - The conference will feature select areas in the talk rooms where attendees will be required to wear masks. These areas will be some distance (but not separated by walls) from non-masked areas to allow diffusion. -
    -
    - We are requiring a negative test before coming to the registration desk on your first day of attendance. If you are taking a rapid test, you must take it within 24 hours of your first ticketed day. We will have tests on site if you wish to test when you arrive. If you are taking a PCR test, it must be within 3 days of your first ticketed day (e.g. if you are attending Sunday's sessions, the test must be taken no earlier than Thursday, September 19). -
    -
    - We will be sending the testing instructions to in-person ticket-holders prior to the conference. -
    -
    - The conference will provide N95 masks for people to wear. We recommend that all attendees wear a certified KN95 / N95 respirator mask (with no outflow vent) while inside. If you prefer to wear a surgical mask, we recommend an ASTM Level 3 rated mask. -
    -
    - If you prefer to purchase your own PPE, DjangoCon US is offering up to a $50 reimbursement. This should be for higher filtration PPE you acquire yourself (i.e. reusable respirators, etc). Please email us before the conference to coordinate. -
    -
    - DjangoCon US reserves the right to increase the requirements of this policy based on COVID-19 infection, hospitalization or positive test rates as reported by the CDC. We may also be required to alter our policy to conform with local, state, or federal mandates. -
    -
    - If you have questions about our Public Health Policy, please email us. -

    -

    TLDR: A short-version of the policy is as follows:

    -
      -
    • Negative test required to enter conference
    • -
    • Test again before sprints
    • -
    • Masks are recommended (KN95 / N95 preferred)
    • -
    • Specific seating areas that will require masks
    • -
    • N95 Masks will be provided
    • -
    • $50 PPE reimbursement for higher filtration PPE you acquire yourself (i.e. reusable respirators, etc)
    • -
    • DjangoCon US reserves the right to make the policy more restrictive based on COVID-19 numbers
    • -
    -
    -
    - {% comment %} -
    -
    -
    -

    Check-in Procedure

    -

    - We're asking that all registrants go through the COVID-19 check-in process before registration. - The COVID-19 registration area will consist of two tables, one for taking tests and the other - for showing proof of a negative test. Further on will be the conference - registration desk with your badge. -

    -
      -
    1. Acquire recommended N95/KN95 equivalent mask (we have them at the table)
    2. -
    3. Take COVID-19 test (follow instructions on the box, perform the test at secondary table or at home/the hotel)
    4. -
    5. Show test result or photo of negative test at COVID-19 desk with handwritten note containing the date
    6. -
    7. Proceed to registration desk
    8. -
    -

    - If you have taken a test 24 hours within the start of the conference, you do not have to take - another test. Here is an example of a negative test with the date: -
    - A negative COVID-19 test with a phone showing the current date. -

    -
    -
    - {% endcomment %} -
    -
    diff --git a/_pages/room-sharing.md b/_pages/room-sharing.md deleted file mode 100644 index 1920abed..00000000 --- a/_pages/room-sharing.md +++ /dev/null @@ -1,32 +0,0 @@ ---- -description: Do you want to share a room at the venue with other attendees, have accommodation - available, or want to share a ride from nearby cities? -heading: Room and Ride Sharing -layout: default -permalink: /room-sharing/ -title: Room and Ride Sharing ---- - -Do you want to share a room at [one of the hotels](/venue/#welcome) with other attendees, or do you have local accommodation available? Do you want to drive to DjangoCon US from Charlotte, Greensboro, Raleigh, or other relatively nearby cities? - -We have a [Google sheet](https://docs.google.com/spreadsheets/d/1-MESCzq4TmzGf8t1V2FZmdVTfuwuwxBR8mlnPKOa0UU/edit?usp=sharing) just for you! There are tabs for people who already have room -reservations and are looking for roommates, who haven't yet booked anything, who live locally and want to offer -their homes as accommodation, and who will be driving to Durham and need car buddies. - -If you're looking for a room, list your contact information along with: - -- How many other people you want to share with -- What nights you'll be there -- Whether you've already reserved a room -- Any other requirements (e.g. man/woman, smoking/non, snoring/non, etc.) - -If you're looking for or offering a ride, list your contact information along with the dates you're travelling and where you're coming from. - -**Note:** If any of your roommates will be arriving separately, be sure to list their names on the reservation as having permission to check in and get a key to your shared room from the front desk by showing photo ID. - -When reserving your room, be sure to specify the type and number of beds. Some rooms only have a single king size bed. - -**Caution:** Room and ride sharing arrangements are the responsibilities of the individual parties involved. DEFNA, DSF, and DjangoCon US staff take no responsibility, and cannot be involved in any disputes. - -[Share a Room or Ride (spreadsheet information)](https://docs.google.com/spreadsheets/d/1-MESCzq4TmzGf8t1V2FZmdVTfuwuwxBR8mlnPKOa0UU/edit?usp=sharing -){: class="button center medium-centered" } diff --git a/_pages/schedule.html b/_pages/schedule.html deleted file mode 100644 index fbf29459..00000000 --- a/_pages/schedule.html +++ /dev/null @@ -1,138 +0,0 @@ ---- -description: DjangoCon US 2023 Full Conference Schedule -heading: Full Conference Schedule -layout: default -permalink: /schedule/ -published: true -sitemap: true -title: Full Conference Schedule ---- - -

    All sessions are in Eastern Daylight Time (UTC-04:00).

    - -

    - The talks in the Grand Ballroom are restricted in capacity due to COVID-19, so - get your seat early! If there is not an available chair, you will not be - allowed in the room. -

    - - - - -
    -
    -

    Tutorials: Sunday, October 8 (Online)

    -

    - Tutorials are a separate registration and are $199 per session. Buy - tutorial tickets before they sell - out! All tutorials are online this year due to venue availability in - Durham. -

    -
      - {% for post in site.schedule %} {% capture day %}{{ post.date | date: "%A" - }}{% endcapture %} {% if day == 'Sunday' %} {% include - schedule-tutorials-day.html %} {% endif %} {% endfor %} -
    -
    -
    - - - -
    -
    -

    Talks: Monday, October 16

    -
      - {% for post in site.schedule %} {% capture day %}{{ post.date | date: "%A" - }}{% endcapture %} {% if day == 'Monday' %} {% include - schedule-talks-day.html %} {% endif %} {% endfor %} -
    -
    -
    - - - -
    -
    -

    Talks: Tuesday, October 17

    - {% comment %} -

    - Tutorials are a separate registration and are TBD per session. Buy - tutorial tickets before they sell out! -

    - {% endcomment %} -
      - {% for post in site.schedule %} {% capture day %}{{ post.date | date: "%A" - }}{% endcapture %} {% if day == 'Tuesday' %} {% include - schedule-talks-day.html %} {% endif %} {% endfor %} -
    -
    -
    - - - -
    -
    -

    Talks - Deep Dives: Wednesday, October 18

    - {% comment %} -

    - Tutorials are a separate registration and are TBD per session. Buy - tutorial tickets before they sell out! -

    - {% endcomment %} -
      - {% for post in site.schedule %} {% capture day %}{{ post.date | date: "%A" - }}{% endcapture %} {% if day == 'Wednesday' %} {% include - schedule-talks-day.html %} {% endif %} {% endfor %} -
    -
    -
    - - - -
    -
    -

    Sprints: Thursday, October 19

    - {% comment %} -

    - Tutorials are a separate registration and are TBD per session. Buy - tutorial tickets before they sell out! -

    - {% endcomment %} -
      - {% for post in site.schedule %} {% capture day %}{{ post.date | date: "%A" - }}{% endcapture %} {% if day == 'Thursday' %} {% include - schedule-sprints-day.html %} {% endif %} {% endfor %} -
    -
    -
    - - - -
    -
    -

    Sprints: Friday, October 20

    - {% comment %} -

    - Tutorials are a separate registration and are TBD per session. Buy - tutorial tickets before they sell out! -

    - {% endcomment %} -
      - {% for post in site.schedule %} {% capture day %}{{ post.date | date: "%A" - }}{% endcapture %} {% if day == 'Friday' %} {% include - schedule-sprints-day.html %} {% endif %} {% endfor %} -
    -
    -
    - diff --git a/_pages/slack.html b/_pages/slack.html deleted file mode 100644 index a8b66800..00000000 --- a/_pages/slack.html +++ /dev/null @@ -1,12 +0,0 @@ ---- -description: Slack Redirect -heading: Slack Redirect -layout: null -permalink: /slack/ -sitemap: false -title: Slack Redirect ---- - -{% if site.slack_link != empty %} - -{% endif %} diff --git a/_pages/speaking-resources.md b/_pages/speaking-resources.md deleted file mode 100644 index 153d0487..00000000 --- a/_pages/speaking-resources.md +++ /dev/null @@ -1,69 +0,0 @@ ---- -description: Resources to support DjangoCon US 2024 speakers -heading: Speaker Resources -layout: default -permalink: /speaking/speaker-resources/ -title: Speaker Resources ---- - -## Information for Speakers - -* The Speaker Green Room will be in Meeting Room 2 on Monday-Wednesday. -* Please be in your presentation room at least 15 minutes before your talk to meet your session chair. -* A Quiet Room will be available for attendees and speakers on all conference days. -* We reserve the right to ask for a draft of your slides/notes not more than 3 weeks in advance of the presentation for review. This draft will not be shared with anyone outside the program and code of conduct teams. - -## Need some help with your presentation? - -Presenters, regardless of experience, sometimes want a little help. If you’d like any help in preparing or presenting your talk, some awesome members of our community have volunteered to be speaker mentors. A mentor is an experienced presenter who has volunteered to help other presenters. For first-time presenters, non-native English speakers, under-confident or uncertain speakers, or anyone who would just appreciate another set of eyes, our mentors will be here to help. You’ll get the best results by forming a relationship with one mentor, rather than contacting several. - - -* [Anna Ossowski](mailto:annabell.ossowski@gmail.com), Anna works as a Senior Community Program Manager at Github and actively volunteer across many different open source communities related to the Python Programming Language. This includes her former role on the Board of the Directors for the Python Software Foundation and as a current organizer for PyLadies in London. She’s a strong advocate for mental health and mentorship as well as supporting effective open source communities. Her newest hobby is writing and performing stand up comedy. -* [Frank Wiles](mailto:frank@revsys.com), Former President of the Board, Django Software Foundation, Founder, REVSYS. - -{% comment %} -* [Eng Seng Ng](mailto:eng@energy-solution.com), Senior Engineer at Energy Solutions. Eng Seng leads the documentation and training team for a climate-change-fighting software product at Energy Solutions. -* [Katie McLaughlin](mailto:katie+djangoconus@glasnt.com), Developer Advocate and frequent public speaker (occasional keynoter), DjangoCon AU organiser, and Secretary for the Django Software Foundation. -* [Philip James](mailto:pjj@philipjohnjames.com), Core Contributor to the BeeWare project and Senior Software Engineer at Patreon. Philip has spoken at a number of DjangoCons and PyCons around the world. -* [Dr. Russell Keith-Magee](mailto:russell@keith-magee.com), Founder of the BeeWare project, developing GUI tools and libraries to support the development of Python software on desktop and mobile platforms. He is also a 13 year veteran of the Django Core Team, and for 5 years, was President of the Django Software Foundation. In his day job, he wrangles data pipelines for Survata. -{% endcomment %} - -## Talk Guidelines - -### Accessibility - -* You can submit a draft copy of your slides with notes indicating what you plan to say a minimum of three weeks before your talk to give the captioners time to train on your data and therefore improve caption accuracy. This is extremely helpful to our attendees who read the live captions if you're using jargon beyond "Django" and "the ORM". -* These slides will not be shared outside of the organizing team and the captioners. Send the slides to hello AT djangocon DOT us when you are ready. It's perfectly fine if your slides and notes change between the draft and final version. -* When describing media in your talk (images, screenshots, graphs, videos, etc.), please give a verbal description of what you're showing so that blind or vision-impaired attendees can understand what you're describing. - * Example: instead of "here's a graph showing performance improvements with our new async code," say "here's a line graph showing our average response time that decreased from 450 milliseconds to 150 milliseconds after adding our new async code." - -### General - -* Use gender-neutral language wherever possible. Don't default to [using "he", "him", or "guys"](https://heyguys.cc) everywhere. -* Be respectful of other speakers, your audience, and the community at large, especially when offering critiques. It's possible to say "this needs improvement" without saying "this is bad." -* Consider including your social media handle(s) on your opening and closing slides! If you have space, you can even include them on the footer of every slide. -* Consider publishing your slides after your talk (on the platform of your choice) and sharing the link with the #DjangoCon hashtag on social media. -* Include a copy of what you plan to say in each slide's notes (if possible). This will help you while you're in presenter view and also make it easier for people who may be looking at your slides after the conference. -* Before you connect your laptop to the projector, make sure you have every window except for your slides minimized or closed to avoid accidental information disclosure. -* Make sure you turn on your computer's do not disturb mode before starting your presentation to avoid interruptions. -* If your computer needs a dongle to connect to an HDMI cable, please bring it. We'll have most of the common ones, including a USB-C/Thunderbolt connector, but it always helps to have one that you know works. - -## Slide Guidelines - -### Format - -* Minimal slides are best—-avoid walls of text and long lists of bullets. -* Light background with dark text is easiest to read; be mindful that the projection screen is white. - Choose fonts with adequate spacing between letters, and avoid thin or cursive fonts. -* Leave the bottom 25% of your slides free of text to ensure nothing is obscured by other attendees' heads. -* If your talk requires live coding or using the terminal, make sure your editor or terminal settings are legible. Dark text on a light background (high contrast) with a large font is best. -* Images, memes, and GIFs should be appropriate for a professional audience. - -### Accessibility - -* Aim for high contrast slides, avoiding colors that may be difficult to see for those with colorblindness. (You can [check your contrast online](http://webaim.org/resources/contrastchecker/); you just need the hex codes for your colors!) -* Avoid or limit flashing videos or animated GIFs, as these may have negative effects for people with seizure disorders, migraines, or ADD/ADHD. -* Make text as large as possible. People need to be able to read the text from a very long distance. -* Your talk should lose nothing if the slides aren’t visible. Generally describe graphs, images, and other information for the audience. - -Thanks to [AlterConf](https://www.alterconf.com/speak) for their amazing speaking recommendations! diff --git a/_pages/speaking-status.md b/_pages/speaking-status.md deleted file mode 100644 index 960e5f0f..00000000 --- a/_pages/speaking-status.md +++ /dev/null @@ -1,48 +0,0 @@ ---- -description: Our Speaking Status for YouTube catching missing links -heading: Speaking Status -layout: default -permalink: /speaking/status/ -published: true -sitemap: false -title: Speaking Status ---- - - - - - - - - - - - - - - - - -{% for post in site.schedule %} -{% capture day %}{{ post.date | date: "%A" }}{% endcapture %} -{% if day == 'Sunday' or day == 'Monday' or day == 'Tuesday' or day == 'Wednesday' %} -{% if post.presenter_slugs %} -{% for presenter_slug in post.presenter_slugs %} -{% assign presenter = site.presenters | where: "slug", presenter_slug | first %} - - - - - - - - - - - -{% endfor %} -{% endif %} -{% endif %} -{% endfor %} - -
    titlenamepronounsphoto_urlgithubtwitterwebsitevideo_urlslides
    {{ post.title }}{{ presenter.name }}{% if presenter.pronouns != blank %}✅{% else %}❌{% endif %}{% if presenter.photo_url != blank %}✅{% else %}❌{% endif %}{% if presenter.github != blank %}✅{% else %}❌{% endif %}{% if presenter.twitter != blank %}✅{% else %}❌{% endif %}{% if presenter.website != blank %}✅{% else %}❌{% endif %}{% if post.video_url != blank %}✅{% else %}❌{% endif %}{% if post.slides_url != blank %}✅{% else %}❌{% endif %}
    diff --git a/_pages/speaking-twitter.md b/_pages/speaking-twitter.md deleted file mode 100644 index d9f1ca15..00000000 --- a/_pages/speaking-twitter.md +++ /dev/null @@ -1,38 +0,0 @@ ---- -description: Twitter Template for Tweets (this should not be in our sitemaps file) -heading: Twitter Template for Tweets -layout: default -permalink: /speaking/twitter/ -sitemap: false -title: Twitter Template for Tweets ---- - - - -{% for post in site.schedule %} -{% capture day %}{{ post.date | date: "%A" }}{% endcapture %} -{% if day == 'Sunday' or day == 'Monday' or day == 'Tuesday' or day == 'Wednesday' %} -{% if post.group == 'talks' or post.group == 'tutorials' %} - - -
    -{% endif %} -{% endif %} -{% endfor %} - - - diff --git a/_pages/speaking-youtube-checklists.md b/_pages/speaking-youtube-checklists.md deleted file mode 100644 index e62e69c0..00000000 --- a/_pages/speaking-youtube-checklists.md +++ /dev/null @@ -1,71 +0,0 @@ ---- -description: Our Speaking Checklists for YouTube Videos (this should not be in our - sitemaps file) -heading: Speaking Checklists for YouTube Videos -layout: default -permalink: /speaking/youtube/checklists/ -sitemap: false -title: Speaking Checklists for YouTube Videos ---- - - - -{% for post in site.schedule %} -{% capture day %}{{ post.date | date: "%A" }}{% endcapture %} -{% if day == 'Monday' or day == 'Tuesday' or day == 'Wednesday' %} -{% if post.group == 'talks' or post.group == 'tutorials' %} - -
    -{% endif %} -{% endif %} -{% endfor %} - - - diff --git a/_pages/speaking-youtube.md b/_pages/speaking-youtube.md deleted file mode 100644 index e56d5b69..00000000 --- a/_pages/speaking-youtube.md +++ /dev/null @@ -1,43 +0,0 @@ ---- -description: Our Speaking Template for YouTube Videos (this should not be in our sitemaps - file) -heading: Speaking Template for YouTube Videos -layout: default -permalink: /speaking/youtube/ -sitemap: false -title: Speaking Template for YouTube Videos ---- - - - -{% for post in site.schedule %} -{% capture day %}{{ post.date | date: "%A" }}{% endcapture %} -{% if day == 'Monday' or day == 'Tuesday' or day == 'Wednesday' %} -{% if post.group == 'talks' or post.group == 'tutorials' %} - -
    -{% endif %} -{% endif %} -{% endfor %} - - - diff --git a/_pages/speaking.md b/_pages/speaking.md deleted file mode 100644 index fab4f62a..00000000 --- a/_pages/speaking.md +++ /dev/null @@ -1,127 +0,0 @@ ---- -description: Information about submitting a proposal to speak at DjangoCon US -heading: Speaking at DjangoCon US -layout: default -permalink: /speaking/ -title: Speaking at DjangoCon US -redirect_from: -- /Applications ---- - -{% comment %} -Our Call for Proposals (CFP) will open soon! -{% endcomment %} - -Our Call for Proposals is now closed. -Decision notifications will be sent by July 8th, 2024. - - -{% comment %} -Our Call for Proposals is now closed and all decision notifications have been sent. -{% endcomment %} - -{% comment %} -**UPDATE**: The CFP has been extended to Monday, April 29th at Noon EDT! - -Our Call for Proposals (CFP) is now open! -Submit your talk or tutorial proposal by April 29, 2024 at [12 PM EDT](https://time.is/1200PM_29_Apr_2024_in_New_York?DjangoCon_US_2024_CFP_closes), and encourage your friends and colleagues to do the same. - -Need help with your proposal? We've got mentors and helpful tips on our [Speaker Resources](/speaking/speaker-resources/) page! - -Submit a Proposal -{% endcomment %} - -## Why Speak at DjangoCon US? - -- Presenters receive a **free ticket** to DjangoCon US and up to **$500 in travel cost reimbursement!** -- A professionally produced video of your talk will be published on our YouTube channel. (You may opt-out of this.) -- Professional photographer on hand to photograph your talk. (Also optional.) -- Expose the Django community to new tools, practices, or ideas. -- Expand your technical, professional, and personal networks. -- Share your discoveries with a large audience. -- Give back to the Django community! - -### Public Health / COVID-19 - -Please see our Public Health Policy for more information. - -At this time, we are planning on most presenters being in Durham to present their talks in person. Things may always change depending on how the situation progresses over the year as well as availability of online platforms and organizer decisions. As in 2022 and 2023, we are currently planning to have a handful of online-exclusive talks that will air during the in-person breaks and meals, but in the event that we do not have a live-streamed component, we will give you the option to speak in-person instead if your talk is chosen for an online slot. - -Please indicate your format preference (in-person or online) as part of your proposal. - -## Proposing to DjangoCon US - -### Selection process - -We'll choose a selection of talks and tutorials that we feel add to the most enjoyable and engaging program for our attendees. Volunteers from the Django community are invited to help us pick talks, and we rely heavily on them to help us select interesting and beneficial ones for our attendees. Community volunteers and conference organizers will review anonymized submissions and collectively decide which ones to accept. - -### Talks (September 23rd, 24th, & 25th) - -Length: 25 minutes or 45 minutes - -**NOTE** For online talks especially, these times are a hard limit and cannot be exceeded. - -We are looking for original and exciting talks that can benefit the diverse interests of our audience. -Don't feel boxed into Django-centric themes; we also love talks about community, web development, user experience, etc. -If you're a first-timer - don't fret! We would love to be remembered as the conference where you started your speaking career. - -Here are some examples of what has been accepted over the last couple of years: - -- [DjangoCon US 2023 Talks](https://2023.djangocon.us/talks/) -- [DjangoCon US 2022 Talks](https://2022.djangocon.us/talks/) -- [DjangoCon US 2021 Talks](https://2021.djangocon.us/talks/) -- [DjangoCon US 2019 Talks](https://2019.djangocon.us/talks/) - -#### Online talks - -Just like in 2022 and 2023, most talks will be in-person, and we are planning to have several online-exclusive talks that air during breaks in the in-person session. These will air across all three talk days (Monday through Wednesday). Please indicate your preference for online or in-person in your submissions. There's a required question in pretalx asking your preference. - -### Deep Dive Talks (September 25th) - -This year, we will be curating a deep dive day to focus on exploring Django and Django-adjacent topics in detail. -Deep dive day is meant to follow in the footsteps of [Django Under the Hood](https://djangounderthehood.com/) and will provide a range of topics presented in-depth, targeting varying levels of Django experience. -Talks of this nature will mix community submissions and personal invitations. -If you believe your talk is a good fit, please indicate so on your submission to our CFP by choosing the "deep dive" tag! - -### Tutorials (September 22nd) - -- Length: 3-3.5 hours -- Format: in-person - -We’re open to all kinds of ideas, especially ones we haven’t thought of! Technical tutorials tend to be more popular, but we welcome all topics! Tutorials can be targeted at any experience level, just be sure to indicate clearly what you expect your students to already know or have experience with in your proposal! - -Still unsure if you should submit? Not only will we cover your DjangoCon US ticket, but _tutorials are compensated_! However, they do not include the price of your travel or lodging. If you need help with these costs, fill out the opportunity grant form by April 29 2024. Decision notifications will be sent by June 14, 2024. - -#### New Expectations for Tutorials - -In order to streamline the tutorial process, we're going to offer volunteer staffed office hours for tutorial attendees to help them get their machine set up. Tutorial presenters are not required to participate in these office hours. We will require that all tutorials include a setup guide by September 8th. This guide is what will be followed during the office hours. - -The setup guide should include a step confirming that the setup has been complete. For example, if the tutorial requires a working Django application, having the user create a superuser, run `runserver`, then log into the Django Administration site would suffice. The goal here is to uncover and resolve setup issues so that the tutorial's time can be spent on content. A thorough example for a setup guide [can be found here](https://github.com/tim-schilling/debug-tutorial/#getting-setup). - -### Lightning Talks :zap: (September 23rd, 24th, & 25th) - -Not up for a full-on talk or tutorial? Looking to give your first talk at a conference? -Lightning talks are talks under 5 minutes with or without slides on almost any topic you want! -Even if you're nervous or shy, remember: it's a **maximum** of 5 minutes. -Sign-ups will happen at the conference. - -### Speaker Travel Assistance - -As we have in the past, this year, we have set aside up to $500 per speaker to help offset the cost of travel to the conference. -In order to maximize the amount we can provide, we ask that speakers who will be reimbursed by their employer decline the assistance offered so it can be spread out among speakers who do not receive travel reimbursement. -Receipts for travel expenses will be required. - -If $500 will not cover your expenses, we encourage you to apply for an opportunity grant, but we cannot guarantee it will be awarded to you. - -Opportunity grant applications close on April 29, 2024 at [12 PM EDT](https://time.is/1200PM_29_Apr_2024_in_New_York?DjangoCon_US_2024_CFP_closes). We will send decision notifications by June 14, 2024. - - -### Online speaker gear reimbursement - -If you are speaking online, we are pleased to offer up to $500 for recording gear reimbursement to be used on qualifying expenses (camera, light, microphone, etc.). This cannot be used in conjunction with the above travel reimbursement (it's an either/or proposition). - -## Pre-conference information - -You will have the option to upload a rough transcript of your talk approximately three weeks before the conference to give the captioning team a chance to train on any jargon you might use in your talk. This is by no means required but it will provide a more accessible experience to your audience. - -The organizing team reserves the right to request a review of draft slides at any point up to the start of the conference for any reason including but not limited to content, messaging quality, and more. Failure to provide these slides in a timely manner may result in your removal from the program. We understand that the slides are draft quality and will not be shared outside the program and code of conduct teams. diff --git a/_pages/sponsors-information.md b/_pages/sponsors-information.md deleted file mode 100644 index 63dfa489..00000000 --- a/_pages/sponsors-information.md +++ /dev/null @@ -1,113 +0,0 @@ ---- -description: Become a Sponsor -heading: Become a Sponsor -hidden: true -layout: default -permalink: /sponsors/information/ -title: Become a Sponsor ---- - -## About the Event - -DjangoCon US is not possible without your support. The spirit of the event focuses on providing a platform for new and experiences speakers to share their stories and knowledge. - -### Our goal is to keep ticket costs low while providing: - -- Free childcare stipends -- Opportunity grants -- A lactation room -- Meals -- A centrally located venue -- Reimbursement for speaker travel and lodging expenses -- A networking party to start the event. - -The DjangoCon US Slack channel currently has 700+ members where attendees get and give advice, discuss Django/Python issues, and all-around support each other, establishing a year-round connection that helps ensure the conference is as welcoming and comfortable as possible. - -We promote our sponsors on our @djangocon Twitter account, which has over 13K followers, and our [@djangocon@fosstodon.org](https://fosstodon.org/@djangocon) Mastodon account . Our posts are seen around the world. - -In the event that a profit is made from our fundraising efforts, we pay it forward by making a donation to the Django Software Foundation and supporting other Django events in North America who support our mission. - -Endless thanks for your support, and we cannot wait to call you a partner in our mission. - -Because the conference is organized by [DEFNA](https://www.defna.org/), a non-profit 501(c)(3) organization, your sponsorship is tax-deductible! - -{% comment %}**Sponsorship is closed for this year**. Want to know more about sponsorship for 2024?{% endcomment %} - -**Want to know more about sponsorship??** - -Contact Us Today - -## Sponsorship Levels - -### Diversity Sponsorships - -Django and the Python community at large pride themselves on their commitment to diversity and inclusion. Talk to us about contributing to our Opportunity Grant Fund, which prioritizes grants for people from underrepresented groups. Diversity sponsorship funds will also be used to offset the cost of offering child care! - -### Other Sponsorship Opportunities - -The following a la carte offerings are available to increase visibility on site. - -| | Diamond
    $19,000 | Platinum
    $9,000 | Gold
    $5,500 | Silver
    $3,000 | Bronze
    $2,000 | -| ------------------------------------------------------------------ | :-----------------: | :-----------------: | :-------------------------------------: | :----------------: | :----------------: | -| Free sponsor tickets | 8 | 8 | 4 | 2 | 1 | -| 10% discount conference tickets
    (Corporate rate) | 8 | 8 | 4 | 2 | 1 | -| Tote bag insert
    (provided by Sponsor) | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | -| Sponsor name, logo, link, and description on website | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | -| Optional “Is Hiring” indicator with link on website | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | -| Logo in break video rotation | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | | -| Social media: Twitter and Facebook posts | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | | -| Logo on conference T-SHIRT! | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | | | -| Exhibit Table | 2 | 2 | :heavy_check_mark:
    space permitting | | | -| Sponsor Banner stands
    (2 max; provided by sponsor) | Preeminent | :heavy_check_mark: | :heavy_check_mark:
    space permitting | | | -| Logo featured on Speaker backdrop | :heavy_check_mark: | :heavy_check_mark: | | | | -| Logo on ALL conference talk videos available forever | :heavy_check_mark: | :heavy_check_mark: | $1,000 | $1,000 | $1,000 | -| Featured in wrap-up video with special thanks | Preeminent | Preeminent | $1,000 | $1,000 | $1,000 | -| Optional ten minute speaking slot after a keynote (max 3 sponsors) | :heavy_check_mark: | | | | | -| 1 notification to attendees during the conference | :heavy_check_mark: | | | | | - - - -#### T-Shirts! Included in Gold Tier + - -Sign your sponsorship contract and pay your invoice by August 15, 2023 to get your logo on our conference t-shirts for all sponsors Gold and up!* T-shirts are distributed at the conference for in-person attendees to wear at no cost to them. Online attendees will be able to purchase the t-shirt to have it delivered to them from a distributor. Logos will ideally be given in one color on a transparent background and be delivered in SVG format. - - -#### Opening Party -- $10,000-$14,000 - -This can be very customized. Sponsoring the opening party is a great way to introduce yourself to our attendees in a fun, lighthearted environment outside the main conference. We'll help you coordinate logistics and get the word out about your company! - -#### Lanyard -- *Silver Tier Minimum* -- $3,500 - -The lanyard sponsor's logo will appear on the badge lanyards that attendees wear at the conference (and thus in all photos). - -#### Tote Bag -- *Silver Tier Minimum* -- $1,500 - -Multiple sponsors accepted until capacity. Logo will appear prominently on our reusable tote bag, which attendees will keep for years to come. - -#### Refreshments -- *Bronze Tier Minimum* -- $2,000+ - -Display your company's name and logo on the break tables next to the coffee, and let us thank you! This add-on is potentially open to multiple sponsors in the Bronze Tier or higher. - -#### Invitation Sponsor -- *Bronze Tier Minimum* -- $3,000 - -Sponsor logo, link, and a brief statement will appear in the email sent to all attendees welcoming them to the conference and providing instructions. This add-on is open to a single sponsor in the Bronze Tier or higher. - -#### Opportunity Grant Sponsor - -This sponsorship can be of any amount more than an individual ticket and can be with or without a normal sponsorship tier. These grants help us give sponsorship to attendees who could not otherwise afford to come. Sponsors will be added with name, link, and logo on our website. -{% comment %} -#### Django Girls Sponsor -- $1,000+ - -Django Girls will be hosting a workshop aimed to encourage women and other underrepresented genders into Django development, and we are inviting you to sponsor! - -Donors will be added to the DjangoCon US break video rotation, get a tote bag insert, and a social media post. This stacks with DjangoCon US tier perks. It's a great value! This is a gender-inclusive event. -{% endcomment %} -#### Need a custom sponsorship package? - -We've helped sponsors host luncheons, throw parties, and add opportunity grant sponsorship and other perks to existing packages. - -Whether you're joining us in Durham or supporting us from afar, please consider sponsoring DjangoCon US 2023. - -We can't do it without you and hope to see you there! - -Contact Us Today diff --git a/_pages/sponsors.html b/_pages/sponsors.html deleted file mode 100644 index ffa4937c..00000000 --- a/_pages/sponsors.html +++ /dev/null @@ -1,69 +0,0 @@ ---- -description: DjangoCon US is only possible through the support of various organizations. -heading: Sponsors -layout: base -permalink: /sponsors/ ---- - -
    -

    {{ page.heading }}

    -
    - -
    -
    -
    -

    - DjangoCon US is only possible through the generosity of the organizations and businesses on this page. Their donations make it possible for us to provide opportunity grants to speakers and attendees, record all talks, host sprints, and feed everyone for five days. Thank you for your support! -

    -
    -
    - {% comment %} -
    -

    Looking for a job?

    -

    Some of our sponsors are hiring! Take a look at our virtual jobs board to learn more.

    - Check out our jobs board -
    - {% endcomment %} - {% comment %} -
    -

    Sponsor DjangoCon US!

    -

    Sign up to sponsor DjangoCon US and help make the conference happen.

    - Check out sponsorship opportunities -
    - {% endcomment %} -
    -
    - -{% assign sponsors_by_level = "Diamond|Platinum|Gold|Lanyard|Silver|Bronze|Opportunity Grant|Community" | split: "|" %} -{% for level in sponsors_by_level %} -
    -

    {{ level }}

    - {% for sponsor in site.sponsors %} - {% if sponsor.level == level %} - {% unless sponsor.hidden %} -
    -
    - - - -
    -
    -

    {{ sponsor.name }}

    - {% capture sponsor_description %}{{ sponsor.description }}{: .partner-description }{% endcapture %} - {{ sponsor_description | markdownify }} - - {% if sponsor.hiring_url %} - {{ sponsor.name }} is hiring! - {% endif %} -
    -
    - {% endunless %} - {% endif %} - {% endfor %} -
    -{% endfor %} - -
    diff --git a/_pages/sprints.html b/_pages/sprints.html deleted file mode 100644 index ac7e4ab9..00000000 --- a/_pages/sprints.html +++ /dev/null @@ -1,47 +0,0 @@ ---- -description: DjangoCon US 2023 Sprints Schedule -heading: Sprints Schedule -layout: default -permalink: /sprints/ -published: true -sitemap: true -title: Sprints Schedule ---- - - -
    -
    -

    Sprints: Thursday, October 19

    -
      - {% for post in site.schedule %} - {% capture day %}{{ post.date | date: "%A" }}{% endcapture %} - {% if day == 'Thursday' %} - {% include schedule-sprints-day.html %} - {% endif %} - {% endfor %} -
    -
    -
    - - - - -
    -
    -

    Sprints: Friday, October 20

    - {% comment %} -

    - Tutorials are a separate registration and are TBD per session. Buy tutorial tickets before they sell out! -

    - {% endcomment %} -
      - {% for post in site.schedule %} - {% capture day %}{{ post.date | date: "%A" }}{% endcapture %} - {% if day == 'Friday' %} - {% include schedule-sprints-day.html %} - {% endif %} - {% endfor %} -
    -
    -
    - diff --git a/_pages/styleguide.html b/_pages/styleguide.html deleted file mode 100644 index 98ddd540..00000000 --- a/_pages/styleguide.html +++ /dev/null @@ -1,57 +0,0 @@ ---- -layout: base -permalink: /styleguide/ -sitemap: false ---- - -
    -
    - - {% comment %} - Styleguide Navigation - {% endcomment %} -
    - {% include styleguide/styleguide-nav.html %} -
    - -
    -
    - -
    - {% include styleguide/styleguide-introduction.html %} -
    - -
    - {% include styleguide/styleguide-branding.html %} -
    - -
    - {% include styleguide/styleguide-colors.html %} -
    - -
    - {% include styleguide/styleguide-logos.html %} -
    - -
    - {% include styleguide/styleguide-icons.html %} -
    - -
    - {% include styleguide/styleguide-themes.html %} -
    - -
    - {% include styleguide/styleguide-hero.html %} -
    - -
    - {% include styleguide/styleguide-profile.html %} -
    -
    -
    - -
    -
    - - diff --git a/_pages/talks.html b/_pages/talks.html deleted file mode 100644 index 2e0b1cf9..00000000 --- a/_pages/talks.html +++ /dev/null @@ -1,57 +0,0 @@ ---- -description: DjangoCon US 2023 Talks / General Sessions Schedule -heading: Talks Schedule -layout: default -permalink: /talks/ -published: true -sitemap: true -title: Talks Schedule ---- - - -
    -
    -

    Talks: Monday, October 16

    -
      - {% for post in site.schedule %} - {% capture day %}{{ post.date | date: "%A" }}{% endcapture %} - {% if day == 'Monday' %} - {% include schedule-talks-day.html %} - {% endif %} - {% endfor %} -
    -
    -
    - - - -
    -
    -

    Talks: Tuesday, October 17

    -
      - {% for post in site.schedule %} - {% capture day %}{{ post.date | date: "%A" }}{% endcapture %} - {% if day == 'Tuesday' %} - {% include schedule-talks-day.html %} - {% endif %} - {% endfor %} -
    -
    -
    - - - -
    -
    -

    Talks - Deep Dives: Wednesday, October 18

    -
      - {% for post in site.schedule %} - {% capture day %}{{ post.date | date: "%A" }}{% endcapture %} - {% if day == 'Wednesday' %} - {% include schedule-talks-day.html %} - {% endif %} - {% endfor %} -
    -
    -
    - diff --git a/_pages/tickets.html b/_pages/tickets.html deleted file mode 100644 index dbaf61cb..00000000 --- a/_pages/tickets.html +++ /dev/null @@ -1,144 +0,0 @@ ---- -description: Information about buying tickets to DjangoCon US -heading: Tickets -layout: base -permalink: /tickets/ -title: Tickets ---- - -
    -

    {{ page.heading }}

    -
    - -
    -
    -
    - {% comment %} -

    DjangoCon US 2023 tickets are no longer on sale

    -

    But if you want to see what they cost, or need to consult the refund policy, keep reading!

    - {% endcomment %} -

    Which ticket should I buy?

    -

    Most people should buy an Individual ticket. If your company is paying, they should use the Corporate rate (or the Concierge rate for more flexibility; see below). For those who can't afford the Individual ticket, a discounted ticket is available; see below. And for those who want to go above and beyond and support our mission, check out the Patron ticket.

    - Buy Tickets Now -
    - -
    -
    -

    Don't Forget!

    -
      -
    • Early bird tickets on sale until they're gone
    • -
    • If your employer is paying, please use the corporate rate.
    • -
    - {% comment %} -

    Tickets are nearly sold out!

    -
      -
    • Join the waiting list and we'll let you know if there's a cancellation. It happens!
    • -
    • There might still be tutorials available.
    • -
    • You can still register for sprints!
    • -
    - {% endcomment %} -
    -
    - - -
    -
    - -
    -
    -

    Ticket Prices and Types

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    TypeEarly BirdFull PriceWho?
    Individual$449$499
    People paying their own way
    Companies with 5 or fewer employees
    Corporate$699$799
    Companies with more than 5 employees
    (including state agencies and nonprofits, if able)
    Online Only - Individual$99$149
    People paying their own way
    Companies with 5 or fewer employees
    Online Only - Corporate$199$299
    Companies with more than 5 employees
    (including government agencies and nonprofits, if able)
    Patron$999Every year, particularly generous attendees ask how they can pay extra for their ticket to help us expand our mission. The extra cost of this ticket will be put toward conference expenses that increase access to the conference, such as the Opportunity Grant Fund and video captioning. Ticket holders of this type will also be invited to a special "thank you" event at the conference.
    Corporate Concierge Service$999Companies who want to purchase several tickets in advance, but decide who will be attending the conference at a later date, or companies who cannot pay by credit card. We'll send you a registration code your employees can use to register when you're ready. We will also send you a paper invoice for record-keeping if you need.
    Discounted$299If you’re unemployed, on a lower income, or would benefit from a lower-priced ticket for another reason. If your company is paying for your ticket, you are not eligible for this ticket type.
    Tutorials$199They are a separate cost from your conference ticket. You can register for a tutorial without registering for the conference itself.
    SprintsFreeThe ticket is free, but we ask you to register so we can buy you lunch. You do not have to register for the conference itself to register for sprints.
    - -
    -
    - -
    -
    -

    What is the refund policy?

    -

    We would hate for you to miss the conference! But we know things come up, so here's our refund policy:

    -
      -
    • Refunds requested before October 1, 2023, incur a 10% cancellation fee.
    • -
    • Refunds requested between October 2 and October 8, 2023, incur a 25% cancellation fee.
    • -
    • Refunds requested between October 9 and October 15, 2023, incur a 50% cancellation fee.
    • -
    • The cancellation fee applies to each ticket, including tutorials.
    • -
    • Requests received after October 15, 2023 at 5:00 pm PDT are not eligible for a refund.
    • -
    • Tickets may be transferred to someone else at no charge by October 7, 2023, for tutorials and October 15 for the conference.
    • -
    -

    Tickets may also be converted to online tickets, in which case the cancellation fee will only apply to the difference between the in-person ticket and the online ticket.

    - -

    For all dates the cutoff is on or before 5:00 PM PDT per the time stamp on DEFNA’s servers.

    - - {% comment %}

    DjangoCon US sold out in 2019, so buy your ticket soon!

    {% endcomment %} - -

    We hope to see you in Durham!

    -
    -
    diff --git a/_pages/trivia.html b/_pages/trivia.html deleted file mode 100644 index bb70c1d6..00000000 --- a/_pages/trivia.html +++ /dev/null @@ -1,103 +0,0 @@ ---- -description: Meet the winners of the Great DjangoCon US 2023 Trivia Contest. -heading: Trivia -layout: base -permalink: /trivia/ -title: Trivia ---- - -
    -

    {{ page.heading }}

    -
    - -
    -
    -
    -

    Schedule

    - -

    Rules

    -
      -
    • The DjangoCon US Code of Conduct is in effect
    • -
    • Don't look things up on the internet
    • -
    • Answers will be submitted via Google Forms; do not post them publicly
    • -
    -

    Logistics

    -
      -
    • Teams should be limited to a maximum of five people
    • -
    • 3 rounds with 5 questions each
    • -
    • The questions for a round will be posted all at once via a Google Form
    • -
    • You will have 10 minutes per round to submit your answers
    • -
    • You can resubmit your answers for the round as many times as you'd like, but only the last will be considered
    • -
    • Tiebreakers will be decided by the time to submit answers
    • -
    • Questions with multiple answers are worth as many points as answers
    • -
    -
    -
    -
    -
    -

    - Meet your (future) Great DjangoCon US 2023 Trivia Contest winners! -

    -
    -
    -
    - Your photo could be here as a future trivia winner. Currently a placeholder illustration with a smiling lemur on a branch -
    -

    - Your name here! -

    - You could say something witty and profound like "hi mom!" -
    - -
    -
    -
    - -
    -

    - Your name here! -

    - You could advertise your personal project even! -
    - -
    -
    - -
    -
    -
    -
    diff --git a/_pages/tutorials.html b/_pages/tutorials.html deleted file mode 100644 index ab4dede2..00000000 --- a/_pages/tutorials.html +++ /dev/null @@ -1,27 +0,0 @@ ---- -description: DjangoCon US 2023 Tutorials Schedule -heading: Tutorials Schedule -layout: default -permalink: /tutorials/ -published: true -sitemap: true -title: Tutorials Schedule ---- - - -
    -
    -

    Tutorials: Sunday, October 8 (Online)

    -

    - Tutorials are a separate registration and are $199 per session. Buy - tutorial tickets before they sell - out! -

    -
      - {% for post in site.schedule %} {% capture day %}{{ post.date | date: "%A" - }}{% endcapture %} {% if day == 'Sunday' %} {% include - schedule-tutorials-day.html %} {% endif %} {% endfor %} -
    -
    -
    - diff --git a/_pages/venue.html b/_pages/venue.html deleted file mode 100644 index 02017420..00000000 --- a/_pages/venue.html +++ /dev/null @@ -1,260 +0,0 @@ ---- -description: DjangoCon US 2023 is being held at the Durham Convention Center in Durham, - NC. -heading: Venue -layout: base -permalink: /venue/ -title: Venue ---- - -
    -

    {{ page.heading }}

    -

    - - Durham Convention Center
    - 301 W Morgan St, Durham, NC 27701 -
    -

    -
    - -
    -
    -

    Welcome to Durham!

    -

    - This year's venue is the Durham Convention Center! Located just 20 minutes - from Raleigh-Durham International Airport, the Durham Convention Center - provides the perfect setting. -

    -

    - Due to the combination of a Duke home football game on October 14 and - another tech conference right after ours, hotel space will be - extremely limited in 2023. -

    -
    -
    - -

    - View Larger Map -

    -
    -
    - -
    -
    -
    - Exterior photo of Durham Marriott City Center -
    -
    -

    Staying at the Durham Marriott City Center

    -

    - Our group rate has expired, but there are still rooms at the hotel. - Please don't wait to book your room! -

    -
      -
    • Free Wi-Fi
    • -
    • Room for hallway hacking
    • -
    • In the middle of downtown
    • -
    - {% comment %} -

    - ATTENTION!: If you try to book and it says the capacity is full, please - call the hotel to try to book your room. -

    - {% endcomment %} -

    - Book a Room -

    -
    -
    -
    - -
    -
    -
    -

    Other Hotel Options

    - {% comment %} -

    - Our room block at the Marriott is almost completely sold out, so check - out these other nearby options! -

    - {% endcomment %} - - -

    All rates are "the last time we checked" and may be outdated.

    -
    -
    - - Exterior photo of the Unscripted Hotel in Durham -
    -
    -
    - -
    -
    -

    Around Durham

    -

    - Public transportation is available via the - GoTriangle - and - GoDurham - systems which includes transit via bus to/from the Raleigh-Durham - International Airport and the Durham Station (approximately 1/4 mile walk - from the station to the hotel). Popular ride sharing services are also - available. While you're cruising around town, be sure to check out our - favorite spots: -

    -
    - - {% comment %} Beginning of Places Around Durham... To update the information - in this section, please see: `_data/places.yml` {% endcomment %} {% if - site.places %} -
    - {% for places in site.places %} - -
    -
    -
    - - Photo of {{ places.name }} - -
    -
    -

    - {{ places.name }} -

    -

    - Website: - {{ places.name }}
    - Distance: - {{ places.distance }}
    - Address: - {{ places.location }} -
    - {{ places.description }} -

    -
    -
    -
    - - {% endfor %} -
    - {% endif %} {% comment %} End of Places Around Durham... {% endcomment %} -
    - -
    -
    -
    -

    An Accessible Experience

    -

    - We're working with the staff at the Durham Convention Center to - accommodate the diverse needs of our attendees. -

    -

    - Are we missing something? - Let us know. -

    -
    - -
    -
    -
      -
    • There is step-free access to all parts of the venue.
    • -
    • All public restrooms have accessible stalls.
    • -
    • - The convention center does not provide gender-neutral restrooms. - Please use the restroom for the gender with which you identify. -
    • -
    • - Service animals are welcome, and there is a grassy area outside the - hotel and convention center where they can be walked. -
    • -
    • - The Quiet Room will be available on all conference days. This room - is not for socializing. -
    • -
    • - A Lactation Room will be available as needed Sunday-Wednesday. {% - comment %}A refrigerator will be available in that room. - Read more about using the lactation room{% endcomment %}. -
    • - {% comment %} -
    • - Attend a recovery meeting. - There are many recovery meetings near the conference hotel, - which can be seen on a map here. These include traditional AA meetings, LBGTQ community meetings, - secular meetings, and more. If you need more information or want to - carpool to meetings, please contact - recovery@pyphilly.org. - Anonymity will be maintained. -
    • - {% endcomment %} -
    • - Sponsored childcare - will be provided. -
    • -
    -
    -
    -
    -
    diff --git a/_pages/virtual-job-board.html b/_pages/virtual-job-board.html deleted file mode 100644 index e6119aa1..00000000 --- a/_pages/virtual-job-board.html +++ /dev/null @@ -1,41 +0,0 @@ ---- -description: DjangoCon US Sponsors are hiring! Check out our virtual job board to - see the job postings. -heading: Virtual Jobs Board -hero_text_align: center -hero_theme: brand-color1 -layout: base -permalink: /job-board/ -testimonial_img: /static/img/about.jpg -testimonial_img_mobile: /static/img/about-mobile.jpg -title: Virtual Jobs Board ---- - -
    -

    {{ page.heading }}

    -
    -

    DjangoCon US sponsors are hiring! Want to see your job posted here next year? Contact us about becoming a sponsor for DjangoCon US 2023 and recruit the best talent for your organization.

    -
    -
    - -
    -
    -
    - - {% for job in site.jobs %} - {% unless job.hidden %} - -
    -
    -
    -

    {{ job.name }}

    -

    {{ job.content | markdownify }}

    -

    {% if job.website_text %}{{ job.website_text }}{% else %}More information{% endif %}

    -
    -
    -
    - {% endunless %} - {% endfor %} -
    -
    -
    diff --git a/_pages/visas.md b/_pages/visas.md deleted file mode 100644 index 3b3ff52b..00000000 --- a/_pages/visas.md +++ /dev/null @@ -1,28 +0,0 @@ ---- -description: Information about obtaining a Visa to visit DjangoCon US -heading: Visa Support at DjangoCon US -layout: default -permalink: /visas/ -title: Visa Support at DjangoCon US ---- - -## Do I need a visa to enter the USA? - -That depends on which country issued your passport; see the [US State Department](https://travel.state.gov/content/travel/en/us-visas/tourism-visit.html) website for more information. - -## I need a letter to obtain a visa. Can you help me with that? - -We sure can! Head over to Get Invitation Letter to request your letter of invitation for your visa application at the US Consulate. You will be required to provide: - -- Full name (as it appears on your passport) -- Passport number -- Date of birth -- Home address -- Title of talk you're presenting (if any) -- Amount of opportunity grant funds awarded (if any) - -Do this as soon as you can! Wait times to get a visitor visa interview are extremely long (and in some countries are over a year). - -## I can't get an appointment with the US Consulate in time for the conference. Can I get a refund? - -Send an email to our visa team and we'll make sure you get taken care of. diff --git a/_pages/why-djangocon-us.html b/_pages/why-djangocon-us.html deleted file mode 100644 index 50f0551b..00000000 --- a/_pages/why-djangocon-us.html +++ /dev/null @@ -1,290 +0,0 @@ ---- -description: Why you should attend DjangoCon US and encourage your employees to attend. -heading: Why DjangoCon US? -layout: base -permalink: /why-djangocon-us/ -redirect_from: -- /about/why-djangocon-us/ -title: Why DjangoCon US? ---- - -
    -

    {{ page.heading }}

    -
    - -
    -
    -
    -

    Learn alongside the community's best and brightest.

    -

    We bring your favorite project maintainers, leading teams, passionate researchers, and creative hobbyists under one roof for a jam-packed week of knowledge sharing. The opportunities to learn and connect are endless!

    -
    -
    -
    -

    DjangoCon provides a great opportunity for Django enthusiasts and experts to meet [...]. The quantity of training sessions mixed with case studies and networking opportunities provides a huge ROI for employers who want to help employees improve their technical chops quickly and efficiently.

    - Rikki Endsley
    - Coommunity Manager & Tech Journalist
    - Opensource.com -
    -
    -
    -
    -
    - -
    -

    A hundred other reasons and counting ...

    -
    -
    -
    -
    - -
    -
    -

    {% comment %}Sessions{% endcomment %}Sessions cover a wide variety of Django topics across experience levels. There’s something for everyone.

    -
    -
    -
    -
    -
    -
    - -
    -
    -

    It’s common to see entire teams attend. Why? Because learning and exploring together is a great way to build your team.

    -
    -
    -
    -
    -
    -
    - -
    -
    -

    Two-day {% comment %}sprints{% endcomment %}sprints are an excellent opportunity to work shoulder-to-shoulder with experts in the community.

    -
    -
    -
    -
    -
    -
    - -
    -
    -

    DjangoCon US is regularly attended by Django veterans. The conference is your chance to build connections with top talent.

    -
    -
    -
    -
    -
    -
    - -
    -
    -

    DjangoCon US is an affordable, community-run event. Registration, airfare, and hotel are <$1,400 for most attendees — less than the price of just a ticket at other conferences.

    -
    -
    -
    -
    -
    -
    - -
    -
    -

    {% comment %}Learn{% endcomment %}Learn best practices from people who discovered them the hard way. Get cutting edge tips and tricks you won’t find on Stack Overflow.

    -
    -
    -
    -
    -
    -
    - -
    -
    -

    Leading brands sponsor DjangoCon US year after year. Come meet officials from groups like Mozilla, JetBrains, Guidebook, and more and see why they love the conference.

    -
    -
    -
    -
    -
    -
    - -
    -
    -

    Are you hiring? Post on our job board and meet potential candidates in a comfortable environment.

    -
    -
    -
    -
    -
    - -
    -
    -
    -

    Experience a high-quality assortment of content created, selected, and produced by the community.

    -

    Our {% comment %}program{% endcomment %}program services different experience levels and interests. Between a mix of tutorials, talks, breakout sessions, and the conference “hallway track”, your team will undoubtedly learn something new.

    -
    -
    -
    - Last Year's Top Session -
    - -
    -

    Finally Understand Authentication in Django REST Framework

    -

    by William S. Vincent

    -
    -
    -
    -
    - - - -
    -
    -
    -

    Additional Topics

    -

    Django never ships alone. We also feature sessions on other related topics.

    -
    - -
    -
      -
    • Deployment
    • -
    • Django REST Framework
    • -
    • The Django ORM
    • -
    • Containerization
    • -
    • Django + React
    • -
    • Internationalization
    • -
    • Testing
    • -
    • Denormalized Query Engines
    • -
    -
    -
    -
    - -
    -
    -
    - A bug depicted on a desktop monitor -
    -
    -

    Stay for the FREE post- conference, two-day sprints and collaborate with Django enthusiasts.

    -

    Bring your special project or know-how and team up with fellow developers to solve problems! Got a bug that’s been driving you crazy? Have questions about architecture or deployment? Sprints are the perfect place to give and receive help.

    -
    -
    -
    - -
    - A crowd of people watching a speaker present a talk at DjangoCon US. -
    -
    -
    -

    The biggest obvious benefit to employees is being exposed to the conference material. The larger, but less obvious, benefit is the community interactions and connections your employees will make. Have a problem with a library? It's possible your employee knows one of the core maintainers or someone else who uses it and can reach out for some quick advice that simply isn't possible without the human connection.

    - Frank Wiles
    - DSF President and Founder of REVSYS -
    -
    - {% comment %}Join Frank. Buy Your ticket{% endcomment %} -
    -
    -
    diff --git a/_pages/wp-admin.html b/_pages/wp-admin.html deleted file mode 100644 index db416711..00000000 --- a/_pages/wp-admin.html +++ /dev/null @@ -1,22 +0,0 @@ ---- -permalink: /admin/ -redirect_from: -- /wp-admin/index.php ---- - - - - - - - - - -
    - - -
    - - diff --git a/_sponsors/2021-10-04-defna.md b/_sponsors/2021-10-04-defna.md deleted file mode 100644 index 1aec25fa..00000000 --- a/_sponsors/2021-10-04-defna.md +++ /dev/null @@ -1,14 +0,0 @@ ---- -layout: base - -hidden: false -level: 'Community' -name: "DEFNA" -logo: "/static/img/sponsors/defna.png" -logo_orientation: "landscape" -url_target: "https://www.defna.org/" -url_friendly: "defna.org" -description: | - Django Events Foundation North America (DEFNA) is a non-profit based in California USA. It was formed in 2015 at the request of the Django Software Foundation (DSF) to run DjangoCon US. The DSF have licensed DEFNA to run DjangoCon US since 2015. Beyond DjangoCon US we also plan to be involved with other events in North America that cover the education and outreach of Django. -hiring: false ---- diff --git a/_sponsors/2021-10-04-dsf.md b/_sponsors/2021-10-04-dsf.md deleted file mode 100644 index c36aba26..00000000 --- a/_sponsors/2021-10-04-dsf.md +++ /dev/null @@ -1,14 +0,0 @@ ---- -layout: base - -hidden: false -level: "Opportunity Grant" -name: "Django Software Foundation" -logo: "/static/img/sponsors/django-logo-positive.svg" -logo_orientation: "landscape" -url_target: "https://www.djangoproject.com/foundation/" -url_friendly: "djangoproject.com/foundation" -description: | - Development of Django is supported by an independent foundation established as a 501(c)(3) non-profit. Like most open-source foundations, the goal of the Django Software Foundation is to promote, support, and advance its open-source project: in our case, the Django Web framework. -hiring: false ---- diff --git a/_sponsors/2021-10-04-psf.md b/_sponsors/2021-10-04-psf.md deleted file mode 100644 index 8d0254a6..00000000 --- a/_sponsors/2021-10-04-psf.md +++ /dev/null @@ -1,14 +0,0 @@ ---- -layout: base - -hidden: false -level: "Opportunity Grant" -name: "Python Software Foundation" -logo: "/static/img/sponsors/psf-logo.svg" -logo_orientation: "landscape" -url_target: "https://www.python.org/psf/" -url_friendly: "python.org/psf" -description: | - The Python Software Foundation (PSF) is a 501(c)(3) non-profit corporation that holds the intellectual property rights behind the Python programming language. We manage the open source licensing for Python version 2.1 and later and own and protect the trademarks associated with Python. We also run the North American PyCon conference annually, support other Python conferences around the world, and fund Python related development with our grants program and by funding special projects. -hiring: false ---- diff --git a/_sponsors/2022-06-21-lincolnloop.md b/_sponsors/2022-06-21-lincolnloop.md deleted file mode 100644 index 40256996..00000000 --- a/_sponsors/2022-06-21-lincolnloop.md +++ /dev/null @@ -1,14 +0,0 @@ ---- -layout: base - -hidden: false -level: "Gold" -name: "Lincoln Loop" -logo: "/static/img/sponsors/ll_logo_landscape_color.svg" -logo_orientation: "landscape" -url_target: "https://lincolnloop.com/" -url_friendly: "lincolnloop.com" -description: | - Lincoln Loop is a full-service software development agency with a focus on building scalable content platforms for publishers, non-profits & educators. Since 2007 their emphasis on quality in an agile environment has helped numerous startups and high-traffic sites grow their businesses. In addition to rock-solid Python and Django-powered backends, Lincoln Loop provides user experience, deployment, and real-time application development with JavaScript. -hiring_url: false ---- \ No newline at end of file diff --git a/_sponsors/2022-06-21-revsys.md b/_sponsors/2022-06-21-revsys.md deleted file mode 100644 index cfdaafe0..00000000 --- a/_sponsors/2022-06-21-revsys.md +++ /dev/null @@ -1,14 +0,0 @@ ---- -layout: base - -hidden: false -level: "Platinum" -name: "REVSYS" -logo: "/static/img/sponsors/revsys.png" -logo_orientation: portrait -url_target: "http://www.revsys.com/" -url_friendly: "revsys.com" -description: | - We are performance tuners, Python and Django experts, infrastructure and scaling architects. Your best opportunity for success in any situation is to have access to the highest level of knowledge and a thorough understanding of how to make the most of it. What you don’t know can hurt you. Let us help you over and around the bumps in the road you are on. At REVSYS, we help our clients with architecture decisions, implementing best practices, identifying cost savings, improving development velocity, mentoring, and ops automation. You need to move fast. We can help rev up your people, processes, and products. -hiring: false ---- \ No newline at end of file diff --git a/_sponsors/2022-07-08-tworocksoftware.md b/_sponsors/2022-07-08-tworocksoftware.md deleted file mode 100644 index c797e3e5..00000000 --- a/_sponsors/2022-07-08-tworocksoftware.md +++ /dev/null @@ -1,14 +0,0 @@ ---- -layout: base - -hidden: false -level: "Gold" -name: "Two Rock Software" -logo: "/static/img/sponsors/Two-Rock-Software-Logo.svg" -logo_orientation: "landscape" -url_target: "https://tworock.io" -url_friendly: "tworock.io" -description: | - Two Rock Software is a friendly Django shop that focuses on developing custom solutions for humans. We enjoy collaborating at every level of a project from conception and brainstorming to launch and beyond. Our clients include a range of small to midsize businesses and nonprofits. Contact us to discover new ways to achieve growth and efficiency. -hiring_url: "https://tworock.io/jobs/" ---- \ No newline at end of file diff --git a/_sponsors/2022-07-20-sixfeetup.md b/_sponsors/2022-07-20-sixfeetup.md deleted file mode 100644 index 2c4bd302..00000000 --- a/_sponsors/2022-07-20-sixfeetup.md +++ /dev/null @@ -1,14 +0,0 @@ ---- -layout: base -hidden: false -level: "Diamond" -name: "Six Feet Up" -logo: "/static/img/sponsors/SixFeetUp_Logo.png" -logo_orientation: "landscape" -url_target: "https://www.sixfeetup.com/?utm_source=djangocon2023" -url_friendly: "sixfeetup.com" -description: | - Six Feet Up is dedicated to accelerating your impact as a tech leader, making the world a better place. As a consulting company specializing in Python and AI for good, we empower you to make informed decisions, access accurate data faster and scale up your operations. Our expert engineers are here to help you with application development, AI, and big data. - We value human life and our shared Earth. If you're passionate about climate action, clean energy, or initiatives that benefit humankind, you're in the right place. In fact, our goal is to complete 10 IMPACTFUL Projects — defined as impressive, purposeful, and transformative — by 2025 with clients like you. - Driven by the EOS Process™ and home to an AWS Hero, Six Feet Up is a woman-owned and gender balanced software company. We're a top 10 US Custom Software Development Company according to Clutch.co. Organizations like Capital One, NASA, Purdue University, and UNEP have leveraged our reliable software solutions since 1999. We’re eager to help you achieve your goals. ---- diff --git a/_sponsors/2022-08-05-healthvana.md b/_sponsors/2022-08-05-healthvana.md deleted file mode 100644 index 6a7af371..00000000 --- a/_sponsors/2022-08-05-healthvana.md +++ /dev/null @@ -1,14 +0,0 @@ ---- -layout: base - -hidden: false -level: "Bronze" -name: "Healthvana" -logo: "/static/img/sponsors/healthvana_logo.png" -logo_orientation: "landscape" -url_target: "https://healthvana.com/" -url_friendly: "healthvana.com" -description: | - Healthvana uses modern technology to make healthcare better for patients - and has done so over 50 million times since 2015. Its HIPAA-compliant patient communication platform is used by healthcare providers to engage their patient populations in over 20 states. The company's evidence-based solutions lead to better health outcomes, with a focus on underserved populations. Healthvana’s work has been featured everywhere from Fox News to the New York Times, and even at the White House. For more information, visit www.Healthvana.com. ---- - diff --git a/_sponsors/2022-08-08-testdrivenio.md b/_sponsors/2022-08-08-testdrivenio.md deleted file mode 100644 index e1a73c5d..00000000 --- a/_sponsors/2022-08-08-testdrivenio.md +++ /dev/null @@ -1,13 +0,0 @@ ---- -layout: base - -hidden: false -level: "Bronze" -name: "TestDriven.io" -logo: "/static/img/sponsors/black_preferred_TestDriven.png" -logo_orientation: "landscape" -url_target: "https://testdriven.io" -url_friendly: "testdriven.io" -description: | - TestDriven.io is a training company that focuses on teaching mid to senior level web developers Test-driven Development, microservice architecture patterns, container orchestration, and IT operations. ---- diff --git a/_sponsors/2022-09-15-jbssolutions.md b/_sponsors/2022-09-15-jbssolutions.md deleted file mode 100644 index 3f4a0ce7..00000000 --- a/_sponsors/2022-09-15-jbssolutions.md +++ /dev/null @@ -1,17 +0,0 @@ ---- -layout: base - -hidden: false -level: "Gold" -name: "JBS Solutions" -logo: "/static/img/sponsors/jbslogo.png" -logo_orientation: "landscape" -url_target: "https://www.jbssolutions.com/" -url_friendly: "www.jbssolutions.com" -description: | - JBS is a highly experienced team of senior developers and technology trailblazers obsessed with accelerating business - innovation at any size. From high-growth startups to Fortune 500 organizations, we are problem-solvers orchestrating - software development with the right harmony of passion and pragmatism to closely align with your business needs and - growth. -hiring_url: "https://www.jbssolutions.com/careers/career-opportunities/" ---- diff --git a/_sponsors/2023-06-29-foxleytalent.md b/_sponsors/2023-06-29-foxleytalent.md deleted file mode 100644 index f3ccaa9b..00000000 --- a/_sponsors/2023-06-29-foxleytalent.md +++ /dev/null @@ -1,16 +0,0 @@ ---- -layout: base - -hidden: false -level: 'Gold' -name: "Foxley Talent" -logo: "/static/img/sponsors/foxley-talent.jpg" -logo_orientation: "landscape" -url_target: "https://www.foxleytalent.com" -url_friendly: "foxleytalent.org" -description: | - Foxley Talent is the go-to recruiter for the django community in America. We specialise in helping django engineers move into new jobs with great companies. Speak to us throughout (or before) the conference for job opportunities, hiring solutions or career advice. - - As a part of the community and Silver Member of the Django Software Foundation we donate 5% of our profits to the DSF. -hiring: true ---- diff --git a/_sponsors/2023-06-29-platformsh.md b/_sponsors/2023-06-29-platformsh.md deleted file mode 100644 index 40eca986..00000000 --- a/_sponsors/2023-06-29-platformsh.md +++ /dev/null @@ -1,13 +0,0 @@ ---- -layout: base - -hidden: false -level: "Diamond" -name: "Platform.sh" -logo: "/static/img/sponsors/platformsh.png" -logo_orientation: "landscape" -url_target: "https://platform.sh/" -url_friendly: "platform.sh" -description: | - Platform.sh is a unified, secure, enterprise-grade platform for building, running and scaling fleets of websites and applications. ---- diff --git a/_sponsors/2023-08-15-aptible.md b/_sponsors/2023-08-15-aptible.md deleted file mode 100644 index db665ee5..00000000 --- a/_sponsors/2023-08-15-aptible.md +++ /dev/null @@ -1,14 +0,0 @@ ---- -layout: base - -hidden: false -level: "Platinum" -name: "Aptible" -logo: "/static/img/sponsors/aptible.png" -logo_orientation: landscape -url_target: "https://www.aptible.com/" -url_friendly: "aptible.com" -description: | - Aptible is a platform as a service (PaaS) that’s built for engineering teams who need highly scalable, reliable, and secure infrastructure for their mission critical applications. Our web app and API hosting platform abstracts away any infrastructure complexity, and automates the work of provisioning, managing, and scaling infrastructure, so teams can focus on what actually matters: their product. -hiring: false ---- \ No newline at end of file diff --git a/_sponsors/2023-08-15-wharton.md b/_sponsors/2023-08-15-wharton.md deleted file mode 100644 index fc54169d..00000000 --- a/_sponsors/2023-08-15-wharton.md +++ /dev/null @@ -1,14 +0,0 @@ ---- -layout: base - -hidden: false -level: "Gold" -name: "The Wharton School" -logo: "/static/img/sponsors/wharton-logo.svg" -logo_orientation: "landscape" -url_target: "https://www.wharton.upenn.edu/" -url_friendly: "wharton.upenn.edu" -description: | - For 25+ years, Wharton Research Data Services (WRDS) has supported 500+ institutions across 38 countries with targeted solutions that underpin research, reinforce learning, and enable discovery. WRDS enables comprehensive thought leadership — democratizing data access and giving users the power to analyze complex information through curated Classroom Teaching guides, Video Learning Pathways, Analytics/Linking tools, Research Applications, and the raw data through our website powered by Django and Wagtail, Jupyter, direct PostgreSQL access, SSH on the WRDS Cloud, and SAS. Partnering with global vendors, WRDS hosts over 400 TB of raw data, including one of the largest PostgreSQL clusters on the planet — across all disciplines including Accounting, Banking, Economics, ESG, Finance, Healthcare, Insurance, Marketing, and Statistics — giving users the power to analyze complex information. Supporting a global community of 75,000+ commercial, academic, and government users across 38 countries, WRDS is the global gold standard in data management, innovative tools, analytics, and research services — all backed by the credibility and leadership of the Wharton School. -hiring: false ---- diff --git a/_sponsors/2023-08-17-rollbar.md b/_sponsors/2023-08-17-rollbar.md deleted file mode 100644 index 264774c8..00000000 --- a/_sponsors/2023-08-17-rollbar.md +++ /dev/null @@ -1,14 +0,0 @@ ---- -layout: base - -hidden: false -level: "Gold" -name: "Rollbar" -logo: "/static/img/sponsors/rollbar.svg" -logo_orientation: "landscape" -url_target: "https://rollbar.com/?utm_source=django&utm_campaign=django&utm_medium=django" -url_friendly: "rollbar.com" -description: | - Rollbar is the leading error monitoring platform that proactively discovers, predicts, and remediates errors with real-time AI-assisted workflows. With Rollbar, developers continually improve their code and constantly innovate rather than spending time monitoring, investigating, and debugging. Try Rollbar with your code today! -hiring_url: "https://rollbar.com/careers/" ---- diff --git a/_sponsors/2023-08-17-sentry.md b/_sponsors/2023-08-17-sentry.md deleted file mode 100644 index eda48790..00000000 --- a/_sponsors/2023-08-17-sentry.md +++ /dev/null @@ -1,15 +0,0 @@ ---- -layout: base - -hidden: false -level: "Gold" -name: "Sentry" -logo: "/static/img/sponsors/sentry.svg" -logo_orientation: "landscape" -url_target: "https://sentry.io/for/django/" -url_friendly: "sentry.io" -description: | - Sentry is the application monitoring platform for development teams to holistically monitor their code health from the frontend to the backend to see clearer, solve quicker, and learn continuously. - growth. -hiring_url: "https://sentry.io/careers/" ---- diff --git a/_sponsors/2023-08-18-coherence.md b/_sponsors/2023-08-18-coherence.md deleted file mode 100644 index ed41d70f..00000000 --- a/_sponsors/2023-08-18-coherence.md +++ /dev/null @@ -1,13 +0,0 @@ ---- -layout: base - -hidden: false -level: "Gold" -name: "Coherence" -logo: "/static/img/sponsors/coherence.jpg" -logo_orientation: "landscape" -url_target: "https://www.withcoherence.com/" -url_friendly: "withcoherence.com" -description: | - Coherence provides automated environments for developing, testing, and deploying your app in your AWS or GCP account. With a minimal yaml file, you get a Heroku-like experience with preview environments, CI/CD pipelines, and production deployments configured for you as a best in class development platform. ---- diff --git a/_sponsors/2023-08-24-ansible.md b/_sponsors/2023-08-24-ansible.md deleted file mode 100644 index b71123cf..00000000 --- a/_sponsors/2023-08-24-ansible.md +++ /dev/null @@ -1,17 +0,0 @@ ---- -layout: base - -hidden: false -level: "Gold" -name: "Ansible" -logo: "/static/img/sponsors/Ansible-Mark-Large-RGB-Pool.png" -logo_orientation: "portrait" -url_target: "https://www.ansible.com/community" -url_friendly: "ansible.com" -description: | - Automation powered by community. - - Ansible is an open source, command-line IT automation software application written in Python. It can configure systems, deploy software, and orchestrate advanced workflows to support application deployment, system updates, and more. - - Open source and collaboration are at the heart of the Ansible community. Ansible Core + Collections, Ansible Galaxy, AWX, and other upstream projects to Red Hat Ansible Automation Platform are created by — and supported with — contributions from active community members to solve automation challenges that fuel enterprise innovation. ---- diff --git a/_sponsors/2023-08-24-caktus.md b/_sponsors/2023-08-24-caktus.md deleted file mode 100644 index 7eb2b0df..00000000 --- a/_sponsors/2023-08-24-caktus.md +++ /dev/null @@ -1,13 +0,0 @@ ---- -layout: base - -hidden: false -level: "Platinum" -name: "Caktus Consulting Group LLC" -logo: "/static/img/sponsors/caktus-logo-square.png" -logo_orientation: "portrait" -url_target: "https://www.caktusgroup.com/" -url_friendly: "caktusgroup.com" -description: | - A web dev shop started by some friends out of college that grew into an employee-owned, self-directed agency working across governmental systems, social impact organizations, and other industries with a specialty for Django and Python development. We're curious and we love meeting interesting people. If you want to trade stories, share clever ideas about the future of work, or compare opportunities , schedule an exploratory chat with our Chief of Curation! ---- diff --git a/_sponsors/2023-09-10-scout-apm.md b/_sponsors/2023-09-10-scout-apm.md deleted file mode 100644 index 02929693..00000000 --- a/_sponsors/2023-09-10-scout-apm.md +++ /dev/null @@ -1,15 +0,0 @@ ---- -layout: base - -hidden: false -level: "Gold" -name: "Scout APM" -logo: "/static/img/sponsors/ScoutAPM_logo_rounded_square.png" -logo_orientation: "portrait" -url_target: "https://scoutapm.com/python-monitoring?utm_campaign=event_link&utm_medium=event&utm_source=djangocon" -url_friendly: "scoutapm.com" -description: | - Scout APM is Django Application Performance Monitoring that streamlines troubleshooting by helping developers find and fix performance issues before customers ever see them. With real-time alerting, a developer-centric UI, and tracing logic that ties bottlenecks directly to source code, Scout APM helps you spend less time debugging and more time building a great product. - - Quickly identify, prioritize, and resolve Python performance problems – memory leaks, N+1 queries, slow database queries, and more – with an agent that instruments the dependencies you need at a fraction of the overhead. ---- diff --git a/_sponsors/2023-09-11-jetbrains.md b/_sponsors/2023-09-11-jetbrains.md deleted file mode 100644 index 0d296335..00000000 --- a/_sponsors/2023-09-11-jetbrains.md +++ /dev/null @@ -1,13 +0,0 @@ ---- -layout: base - -hidden: false -level: "Gold" -name: "Jetbrains" -logo: "/static/img/sponsors/jetbrains.png" -logo_orientation: "portrait" -url_target: "https://www.jetbrains.com/" -url_friendly: "jetbrains.com" -description: | - We build our software so you can enjoy building yours ---- diff --git a/_sponsors/2023-09-11-wagtail.md b/_sponsors/2023-09-11-wagtail.md deleted file mode 100644 index d6425557..00000000 --- a/_sponsors/2023-09-11-wagtail.md +++ /dev/null @@ -1,15 +0,0 @@ ---- -layout: base - -hidden: false -level: "Gold" -name: "Wagtail CMS" -logo: "/static/img/sponsors/wagtail.png" -logo_orientation: "portrait" -url_target: "https://wagtail.org/" -url_friendly: "wagtail.org" -description: | - Meet Wagtail, a free open-source Django content management system. It’s fast, elegant, and designed to give everyone on your team the tools they need to manage content at enterprise scale. - - Thanks to our partners [Torchbox](https://torchbox.com/) and [CodeRed](https://www.codered.cloud/) for bringing Wagtail to Djangocon ---- diff --git a/_src/main.js b/_src/main.js deleted file mode 100644 index 7f3e030a..00000000 --- a/_src/main.js +++ /dev/null @@ -1,14 +0,0 @@ -// JS -import jQuery from 'jquery'; -import 'foundation-sites'; - -window.$ = window.jQuery = jQuery; - -// init Foundation -$(document).foundation(); - -// toggle hamburger menu on offcanvas open -$("[data-off-canvas-wrapper]") - .bind("opened.zf.offcanvas closed.zf.offcanvas", function(e) { - $(".hamburger").toggleClass("is-active"); -}); diff --git a/_src/scss/_settings.scss b/_src/scss/_settings.scss deleted file mode 100644 index 7b2d045f..00000000 --- a/_src/scss/_settings.scss +++ /dev/null @@ -1,682 +0,0 @@ -@use 'sass:math'; - -// This file started as a copy from the Foundation project -// for ease of customization. - - -// Foundation for Sites Settings -// ----------------------------- -// -// Table of Contents: -// -// 1. Global -// 2. Breakpoints -// 3. The Grid -// 4. Base Typography -// 5. Typography Helpers -// 6. Abide -// 7. Accordion -// 8. Accordion Menu -// 9. Badge -// 10. Breadcrumbs -// 11. Button -// 12. Button Group -// 13. Callout -// 14. Card -// 15. Close Button -// 16. Drilldown -// 17. Dropdown -// 18. Dropdown Menu -// 19. Forms -// 20. Label -// 21. Media Object -// 22. Menu -// 23. Meter -// 24. Off-canvas -// 25. Orbit -// 26. Pagination -// 27. Progress Bar -// 28. Responsive Embed -// 29. Reveal -// 30. Slider -// 31. Switch -// 32. Table -// 33. Tabs -// 34. Thumbnail -// 35. Title Bar -// 36. Tooltip -// 37. Top Bar - - -// Primary Colors -$brand-color1: #140A44; -$brand-color2: #E47048; -$brand-color3: #4975C3; -$brand-color4: #766591; -$brand-color5: #FDCA85; -$brand-color6: #A1CCE4; - -$color-twitter: #1DB4EB; -$color-facebook: #44649D; -$color-tumblr: #335069; -$color-instagram: #356692; -$color-linkedin: #2b75b2; -$color-pinterest: #CF3132; -$color-youtube: #E4251A; -$color-google-plus: #D55441; -$color-github: #4078c0; -$color-mastodon: #3088D4; -$color-rss: #FD8A22; - -// 1. Global -// --------- - -$global-font-size: 130%; -$global-width: rem-calc(1200); -$global-lineheight: 1.4; - -$foundation-palette: ( - 'primary': $brand-color1, - 'secondary': $brand-color2, - 'success': #3adb76, - 'warning': #ffae00, - 'alert': #cc4b37, - 'black': $black, -); - -@include add-foundation-colors; - -$light-gray: #F7F8F9; -$medium-gray: #E9E9E9; -$dark-gray: #CACACA; -$black: #1E1E1E; -$white: #FFFFFF; - - -$djangocon-palette: ( - 'brand-color1': $brand-color1, - 'brand-color2': $brand-color2, - 'brand-color3': $brand-color3, - 'brand-color4': $brand-color4, - - 'brand-color5': $brand-color5, - 'brand-color6': $brand-color6, - - 'white': $white, - 'light-gray': $light-gray, - 'medium-gray': $medium-gray, - 'dark-gray': $dark-gray, - 'black': $black -); - - -$body-background: $white; -$body-font-color: $black; -$body-font-family: 'Plus Jakarta Sans', sans-serif; -$body-antialiased: true; -$global-margin: 1rem; -$global-padding: 1rem; -$global-weight-normal: 400; -$global-weight-semibold: 600; -$global-weight-bold: 700; -$global-radius: 0; -$global-text-direction: ltr; -$global-flexbox: false; -$print-transparent-backgrounds: true; - - -// 2. Breakpoints -// -------------- - -$breakpoints: ( - small: 0, - smedium: 524px, - medium: 890px, - large: 1024px, - xlarge: 1200px, - xxlarge: 1440px, -); -$print-breakpoint: large; -$breakpoint-classes: (small smedium medium large); - -// 3. The Grid -// ----------- - -$grid-row-width: $global-width; -$grid-column-count: 12; -$grid-column-gutter: ( - small: 20px, - medium: 30px, -); -$grid-column-align-edge: true; -$block-grid-max: 8; - -// 4. Base Typography -// ------------------ - -$header-font-family: $body-font-family; -$header-font-weight: 600; -$header-font-style: normal; -$font-family-monospace: Consolas, 'Liberation Mono', Courier, monospace; -$header-color: inherit; -$header-lineheight: 1.3; -$header-margin-bottom: 1rem; -$header-styles: ( - small: ( - 'h1': ('font-size': 34), - 'h2': ('font-size': 34), - 'h3': ('font-size': 24), - 'h4': ('font-size': 20), - 'h5': ('font-size': 17), - 'h6': ('font-size': 16), - ), - medium: ( - 'h1': ('font-size': 44), - 'h2': ('font-size': 36), - 'h3': ('font-size': 28), - 'h4': ('font-size': 22), - 'h5': ('font-size': 20), - 'h6': ('font-size': 16), - ), -); -$header-text-rendering: optimizeLegibility; -$small-font-size: 80%; -$header-small-font-color: $dark-gray; -$paragraph-lineheight: 1.6; -$paragraph-margin-bottom: 1rem; -$paragraph-text-rendering: optimizeLegibility; -$code-color: $black; -$code-font-family: $font-family-monospace; -$code-font-weight: $global-weight-normal; -$code-background: rgba(255,255,255,0.2); -$code-border: 1px solid rgba(255,255,255,0.4); -$code-padding: rem-calc(2 5 1); -$anchor-color: $brand-color3; -$anchor-color-hover: scale-color($anchor-color, $lightness: -14%); -$anchor-text-decoration: underline; -$anchor-text-decoration-hover: none; -$hr-width: $global-width; -$hr-border: 1px solid $medium-gray; -$hr-margin: rem-calc(20) auto; -$list-lineheight: 1.25; -$list-margin-bottom: $paragraph-margin-bottom; -$list-style-type: disc; -$list-style-position: outside; -$list-side-margin: 1.25rem; -$list-nested-side-margin: 1.25rem; -$defnlist-margin-bottom: 1rem; -$defnlist-term-weight: $global-weight-bold; -$defnlist-term-margin-bottom: 0.3rem; -$blockquote-color: $primary-color; -$blockquote-padding: rem-calc(9 20); -$blockquote-border: 8px solid $brand-color5; -$cite-font-size: rem-calc(15); -$cite-color: $secondary-color; -$cite-pseudo-content: '\2014 \0020'; -$keystroke-font: $font-family-monospace; -$keystroke-color: $black; -$keystroke-background: $light-gray; -$keystroke-padding: rem-calc(2 4 0); -$keystroke-radius: $global-radius; -$abbr-underline: 1px dotted $black; - -// 5. Typography Helpers -// --------------------- - -$lead-font-size: 1.125rem; -$lead-lineheight: 1.5; -$subheader-lineheight: 1.4; -$subheader-color: $dark-gray; -$subheader-font-weight: $global-weight-normal; -$subheader-margin-top: 0.2rem; -$subheader-margin-bottom: 0.5rem; -$stat-font-size: 2.5rem; - -// 6. Abide -// -------- - -$abide-inputs: true; -$abide-labels: true; -$input-background-invalid: get-color(alert); -$form-label-color-invalid: get-color(alert); -$input-error-color: get-color(alert); -$input-error-font-size: rem-calc(12); -$input-error-font-weight: $global-weight-bold; - -// 7. Accordion -// ------------ - -$accordion-background: $white; -$accordion-plusminus: true; -$accordion-title-font-size: rem-calc(12); -$accordion-item-color: $secondary-color; -$accordion-item-background-hover: $light-gray; -$accordion-item-padding: 1.25rem 1rem; -$accordion-content-background: $white; -$accordion-content-border: 1px solid $light-gray; -$accordion-content-color: $body-font-color; -$accordion-content-padding: 1rem; - -// 8. Accordion Menu -// ----------------- - -$accordionmenu-arrows: true; -$accordionmenu-arrow-color: $secondary-color; -$accordionmenu-arrow-size: 6px; - -// 9. Badge -// -------- - -$badge-background: $secondary-color; -$badge-color: $white; -$badge-color-alt: $black; -$badge-palette: $foundation-palette; -$badge-padding: 0.3em; -$badge-minwidth: 2.1em; -$badge-font-size: 0.6rem; - -// 10. Breadcrumbs -// --------------- - -$breadcrumbs-margin: 0 0 $global-margin 0; -$breadcrumbs-item-font-size: rem-calc(11); -$breadcrumbs-item-color: $secondary-color; -$breadcrumbs-item-color-current: $black; -$breadcrumbs-item-color-disabled: $medium-gray; -$breadcrumbs-item-margin: 0.75rem; -$breadcrumbs-item-uppercase: true; -$breadcrumbs-item-slash: true; - -// 11. Button -// ---------- - -$button-padding: 0.85em 1.25em; -$button-margin: 0 0 $global-margin 0; -$button-fill: solid; -$button-background: $white; -//$button-background-hover: $brand-color2; -$button-color: $white; -$button-color-alt: $black; -$button-radius: 0; -$button-sizes: ( - tiny: 0.6rem, - small: 0.75rem, - default: 0.9rem, - large: 1.25rem, -); -$button-palette: $foundation-palette; -$button-opacity-disabled: 0.25; -$button-background-hover-lightness: -20%; -$button-hollow-hover-lightness: -50%; -$button-hollow-border-width: 2px; -$button-transition: background-color 0.25s ease-out, color 0.25s ease-out; - -// 12. Button Group -// ---------------- - -$buttongroup-margin: 1rem; -$buttongroup-spacing: 4px; -$buttongroup-child-selector: '.button'; -$buttongroup-expand-max: 6; -$buttongroup-radius-on-each: true; - -// 13. Callout -// ----------- - -$callout-background: transparent; -$callout-background-fade: 0%; -$callout-border: 4px solid $brand-color2; -$callout-margin: 0 0 1rem 0; -$callout-padding: 1.5rem; -$callout-font-color: $body-font-color; -/* -// Disabled to quell contrast errors. -// Setting these does not seem to work. -// See globals for actual font color. -$callout-font-color-alt: $body-font-color; -*/ - -$callout-radius: $global-radius; -$callout-link-tint: 0%; - -// 14. Card -// -------- - -$card-background: transparent; -$card-font-color: $body-font-color; -$card-divider-background: $light-gray; -$card-border: none; -$card-shadow: none; -$card-border-radius: $global-radius; -$card-padding: $global-padding * 1.5; -$card-margin: $global-margin; - -// 15. Close Button -// ---------------- - -$closebutton-position: right top; -$closebutton-offset-horizontal: ( - small: 0.66rem, - medium: 1rem, -); -$closebutton-offset-vertical: ( - small: 0.33em, - medium: 0.5rem, -); -$closebutton-size: ( - small: 1.5em, - medium: 2em, -); -$closebutton-lineheight: 1; -$closebutton-color: $dark-gray; -$closebutton-color-hover: $black; - -// 16. Drilldown -// ------------- - -$drilldown-transition: transform 0.15s linear; -$drilldown-arrows: true; -$drilldown-arrow-color: $medium-gray; -$drilldown-arrow-size: 6px; -$drilldown-background: $brand-color3; - -// 17. Dropdown -// ------------ - -$dropdown-padding: 1rem; -$dropdown-background: $body-background; -$dropdown-border: 1px solid $medium-gray; -$dropdown-font-size: 1rem; -$dropdown-width: 300px; -$dropdown-radius: $global-radius; -$dropdown-sizes: ( - tiny: 100px, - small: 200px, - large: 400px, -); - -// 18. Dropdown Menu -// ----------------- - -$dropdownmenu-arrows: true; -$dropdownmenu-arrow-color: $brand-color6; -$dropdownmenu-arrow-size: 6px; -$dropdownmenu-min-width: 280px; -$dropdownmenu-background: transparent; -$dropdownmenu-border: none; -$dropdownmenu-submenu-background: $brand-color3; - -// 19. Forms -// --------- - -$fieldset-border: 1px solid $medium-gray; -$fieldset-padding: rem-calc(20); -$fieldset-margin: rem-calc(18 0); -$legend-padding: rem-calc(0 3); -$form-spacing: rem-calc(16); -$helptext-color: $black; -$helptext-font-size: rem-calc(13); -$helptext-font-style: italic; -$input-prefix-color: $black; -$input-prefix-background: $light-gray; -$input-prefix-border: 1px solid $medium-gray; -$input-prefix-padding: 1rem; -$form-label-color: $black; -$form-label-font-size: rem-calc(14); -$form-label-font-weight: $global-weight-normal; -$form-label-line-height: 1.8; -$select-background: $white; -$select-triangle-color: $dark-gray; -$select-radius: $global-radius; -$input-color: $black; -$input-placeholder-color: $medium-gray; -$input-font-family: inherit; -$input-font-size: rem-calc(16); -$input-font-weight: $global-weight-normal; -$input-background: $white; -$input-background-focus: $white; -$input-background-disabled: $light-gray; -$input-border: 1px solid $medium-gray; -$input-border-focus: 1px solid $dark-gray; -$input-shadow: inset 0 1px 2px rgba($black, 0.1); -$input-shadow-focus: 0 0 5px $medium-gray; -$input-cursor-disabled: not-allowed; -$input-transition: box-shadow 0.5s, border-color 0.25s ease-in-out; -$input-number-spinners: true; -$input-radius: $global-radius; -$form-button-radius: $global-radius; - -// 20. Label -// --------- - -$label-background: $brand-color4; -$label-color: $white; -$label-color-alt: $black; -$label-palette: $foundation-palette; -$label-font-size: 0.9rem; -$label-padding: 0.3333em 0.5em; -$label-radius: 4px; - -// 21. Media Object -// ---------------- - -$mediaobject-margin-bottom: $global-margin; -$mediaobject-section-padding: $global-padding; -$mediaobject-image-width-stacked: 100%; - -// 22. Menu -// -------- - -$menu-margin: 0; -$menu-margin-nested: 0; -$menu-item-padding: .8rem; -$menu-item-color-active: $brand-color1; -$menu-item-background-active: get-color(primary); -$menu-icon-spacing: 0.25rem; -$menu-item-background-hover: $light-gray; -$menu-border: $light-gray; - -// 23. Meter -// --------- - -$meter-height: 1rem; -$meter-radius: $global-radius; -$meter-background: $medium-gray; -$meter-fill-good: $success-color; -$meter-fill-medium: $warning-color; -$meter-fill-bad: $alert-color; - -// 24. Off-canvas -// -------------- - -$offcanvas-sizes: ( - small: 280px -); -$offcanvas-vertical-sizes: ( - small: 280px -); -$offcanvas-background: $brand-color3; -$offcanvas-shadow: 0 0 10px rgba($black, 0.7); -$offcanvas-push-zindex: 1; -$offcanvas-overlap-zindex: 10; -$offcanvas-reveal-zindex: 1; -$offcanvas-transition-length: 0.5s; -$offcanvas-transition-timing: ease; -$offcanvas-fixed-reveal: true; -$offcanvas-exit-background: rgba($body-background, 0.7); -$maincontent-class: 'off-canvas-content'; - -// 25. Orbit -// --------- - -$orbit-bullet-background: $medium-gray; -$orbit-bullet-background-active: $dark-gray; -$orbit-bullet-diameter: 1.2rem; -$orbit-bullet-margin: 0.1rem; -$orbit-bullet-margin-top: 0.8rem; -$orbit-bullet-margin-bottom: 0.8rem; -$orbit-caption-background: rgba($black, 0.5); -$orbit-caption-padding: 1rem; -$orbit-control-background-hover: rgba($black, 0.5); -$orbit-control-padding: 1rem; -$orbit-control-zindex: 10; - -// 26. Pagination -// -------------- - -$pagination-font-size: rem-calc(14); -$pagination-margin-bottom: $global-margin; -$pagination-item-color: $black; -$pagination-item-padding: rem-calc(3 10); -$pagination-item-spacing: rem-calc(1); -$pagination-radius: $global-radius; -$pagination-item-background-hover: $light-gray; -$pagination-item-background-current: $secondary-color; -$pagination-item-color-current: $white; -$pagination-item-color-disabled: $medium-gray; -$pagination-ellipsis-color: $black; -$pagination-mobile-items: false; -$pagination-mobile-current-item: false; -$pagination-arrows: true; - -// 27. Progress Bar -// ---------------- - -$progress-height: 1rem; -$progress-background: $medium-gray; -$progress-margin-bottom: $global-margin; -$progress-meter-background: $secondary-color; -$progress-radius: $global-radius; - -// 28. Responsive Embed -// -------------------- - -$responsive-embed-margin-bottom: rem-calc(16); -$responsive-embed-ratios: ( - default: 4 by 3, - widescreen: 16 by 9, -); - -// 29. Reveal -// ---------- - -$reveal-background: $white; -$reveal-width: 600px; -$reveal-max-width: $global-width; -$reveal-padding: $global-padding; -$reveal-border: 1px solid $medium-gray; -$reveal-radius: $global-radius; -$reveal-zindex: 1005; -$reveal-overlay-background: rgba($black, 0.45); - -// 30. Slider -// ---------- - -$slider-width-vertical: 0.5rem; -$slider-transition: all 0.2s ease-in-out; -$slider-height: 0.5rem; -$slider-background: $light-gray; -$slider-fill-background: $medium-gray; -$slider-handle-height: 1.4rem; -$slider-handle-width: 1.4rem; -$slider-handle-background: $primary-color; -$slider-opacity-disabled: 0.25; -$slider-radius: $global-radius; - -// 31. Switch -// ---------- - -$switch-background: $medium-gray; -$switch-background-active: $secondary-color; -$switch-height: 2rem; -$switch-height-tiny: 1.5rem; -$switch-height-small: 1.75rem; -$switch-height-large: 2.5rem; -$switch-radius: $global-radius; -$switch-margin: $global-margin; -$switch-paddle-background: $white; -$switch-paddle-offset: 0.25rem; -$switch-paddle-radius: $global-radius; -$switch-paddle-transition: all 0.25s ease-out; - -// 32. Table -// --------- - -$table-background: darken($light-gray, 5%); -$table-color-scale: 5%; -$table-border: 1px solid smart-scale($table-background, $table-color-scale); -$table-padding: rem-calc(8 10 10); -$table-hover-scale: 2%; -$table-row-hover: darken($table-background, $table-hover-scale); -$table-row-stripe-hover: darken($table-background, $table-color-scale + $table-hover-scale); -$table-is-striped: true; -$table-striped-background: smart-scale($table-background, $table-color-scale); -$table-stripe: even; -$table-head-background: smart-scale($table-background, math.div($table-color-scale, 2)); -$table-head-row-hover: darken($table-head-background, $table-hover-scale); -$table-foot-background: smart-scale($table-background, $table-color-scale); -$table-foot-row-hover: darken($table-foot-background, $table-hover-scale); -$table-head-font-color: $body-font-color; -$table-foot-font-color: $body-font-color; -$show-header-for-stacked: false; - -// 33. Tabs -// -------- - -$tab-margin: 0; -$tab-background: rgba(255,255,255,0.3); -$tab-color: get-color(secondary); -$tab-background-active: get-color(secondary); -$tab-active-color: $white; -$tab-item-font-size: rem-calc(20); -$tab-item-background-hover: $white; -$tab-item-padding: .8rem 1rem; -$tab-expand-max: 6; -$tab-content-background: $body-background; -$tab-content-border: transparent; -$tab-content-color: $body-font-color; -$tab-content-padding: 0; - -// 34. Thumbnail -// ------------- - -$thumbnail-border: solid 4px $white; -$thumbnail-margin-bottom: $global-margin; -$thumbnail-shadow: 0 0 0 2px $brand-color2; -$thumbnail-shadow-hover: none; -$thumbnail-transition: none; -$thumbnail-radius: 0; - -// 35. Title Bar -// ------------- - -$titlebar-background: $white; -$titlebar-color: $brand-color1; -$titlebar-padding: 0; -$titlebar-text-font-weight: $global-weight-normal; -$titlebar-icon-color: $brand-color1; -$titlebar-icon-color-hover: $brand-color2; -$titlebar-icon-spacing: 0.25rem; - -// 36. Tooltip -// ----------- - -$has-tip-font-weight: $global-weight-bold; -$has-tip-border-bottom: dotted 1px $dark-gray; -$tooltip-background-color: $black; -$tooltip-color: $white; -$tooltip-padding: 0.75rem; -$tooltip-font-size: $small-font-size; -$tooltip-pip-width: 0.75rem; -$tooltip-pip-height: $tooltip-pip-width * 0.866; -$tooltip-radius: $global-radius; - -// 37. Top Bar -// ----------- - -$topbar-padding: 0.5rem; -$topbar-background: $light-gray; -$topbar-submenu-background: $topbar-background; -$topbar-title-spacing: 0.5rem 1rem 0.5rem 0; -$topbar-input-width: 200px; -$topbar-unstack-breakpoint: medium; diff --git a/_src/scss/_themes.scss b/_src/scss/_themes.scss deleted file mode 100644 index cf7badb1..00000000 --- a/_src/scss/_themes.scss +++ /dev/null @@ -1,156 +0,0 @@ - -// This file creates classes to manipulate colors. The color options can be found -// in the $djangocon-palette sass map in _settings.scss. Here are the available -// classes and what they do (where 'n' is the name of the color): -// ``` -// `.theme-n` // Adds a background color to the block it's applied to. For darker -// colors, text and links default to white. A generic class of `.theme-color` -// can be applied to elements within the theme to inherit that color as well, -// so themes can be applied quickly to parent elements to change the colors -// further down the cascade. -// -// `.swatch-color-n` can be applied to any element to change that element's text -// color. -// -// `.card-theme-n` can be applied to Foundation's 'card' element to add a colored -// top border, and change the color of any headlines or SVG icons inside the -// container. `.theme-color` and `.theme-bg` can also be used generically -// inside these containers. - - - -/// Sets up basic background/foreground and link theme support for block -/// (page-wide) elements. -/// @param {Map} $colors The map of colors to run through -@mixin generate-block-themes($colors: $djangocon-palette) { - @each $name, $color in $djangocon-palette { - $foreground-color: $white; - - .theme-#{$name}, - .button.theme-#{$name} { - background-color: $color; - - @if not index(($light-gray, $medium-gray, $white, $brand-color4), $color) { - color: $white; - - a, - a:hover { - color: $white; - } - } - - .theme-color { - color: $color; - } - } - } -} - -[class*="tint-brand"] { - position: relative; - - &, - blockquote, - blockquote p, - cite { - color: $white; - } - - a, - a:hover { - color: $white; - } - - &:after { - position: absolute; - top: 0; - right: 0; - bottom: 0; - left: 0; - background-image: linear-gradient(94.94deg, #430632 1.88%, #B5313D 41.15%); - content: ""; - opacity: 0.65; - } - - .column { - padding: 1.5rem 1rem; - background: rgba(#B5313D, .6); - } -} - -@include generate-block-themes($djangocon-palette); - -/// Take a map of colors and generates helpful classes to use them -/// as color properties. -/// @param {Map} $map A map of names with colors -@mixin generate-palette-helpers($map: $palette) { - $params-ok: false; - - @if type-of($map) != "map" { - @error "Parameter `#{$map}` must be a map."; - } @else { - $params-ok: true; - } - - @if $params-ok { - @each $name, $color in $map { - .swatch-color-#{$name} { - color: $color; - } - - .card-theme-#{$name} { - border: none; - border-top: 8px solid $color; - - h1, - h2, - h3, - h4, - h5, - h6, - a:not(.button) { - color: $color; - } - - a:not(.button):hover { - color: mix(black, $color, 30%); - } - - .theme-color { - color: $color; - } - - .theme-bg { - background-color: $color; - color: $white; - } - - path { - fill: $color; - } - } - } - } -} - -@include generate-palette-helpers($djangocon-palette); - -.card-bg-1 { - background-image: url(/static/img/theme/card-1.svg); - background-size: cover; -} - -.card-bg-2 { - background-image: url(/static/img/theme/card-2.svg); - background-size: cover; -} - -.card-bg-3 { - background-image: url(/static/img/theme/card-3.svg); - background-size: cover; -} - -.card-bg-4 { - background-image: url(/static/img/theme/card-4.svg); - background-size: cover; -} diff --git a/_src/scss/_utilities.scss b/_src/scss/_utilities.scss deleted file mode 100644 index bcb1ca0d..00000000 --- a/_src/scss/_utilities.scss +++ /dev/null @@ -1,53 +0,0 @@ -/// Removes trailing space at the bottom of elements. -@mixin bottomless { - & > *:last-child { - margin-bottom: 0; - } -} - -.bottomless { - @include bottomless; -} - -.section-pad { - position: relative; - z-index: 0; - - padding-top: 1rem; - padding-bottom: 1rem; - - @include breakpoint(medium) { - padding-top: 4rem; - padding-bottom: 4rem; - } -} - -.v-pad-bottom { - padding-bottom: 1rem; - - @include breakpoint(medium) { - padding-bottom: 2rem; - } -} - -.v-pad-bottom-extra { - padding-bottom: 4rem; - - @include breakpoint(medium) { - padding-bottom: 8rem; - } -} - -.v-pad-top { - padding-top: 1rem; - - @include breakpoint(medium) { - padding-top: 2rem; - } -} - -// Ensure emoji in headers display correct, size wise -h1 img.emoji { - width: 1em; - height: 1em; -} diff --git a/_src/scss/base/_buttons.scss b/_src/scss/base/_buttons.scss deleted file mode 100644 index eb515c05..00000000 --- a/_src/scss/base/_buttons.scss +++ /dev/null @@ -1,37 +0,0 @@ -.button { - background-color: $brand-color3; - - -webkit-mask-image: url(/static/img/theme/button.svg); - mask-image: url(/static/img/theme/button.svg); - -webkit-mask-repeat: no-repeat; - mask-repeat: no-repeat; - -webkit-mask-size: cover; - mask-size: cover; - - font-weight: $global-weight-bold; - text-decoration: none; - color: $white; - - &:hover { - background-color: darken($brand-color3, 15%); - } -} - -.button.hollow { - -webkit-mask-image: none; - mask-image: none; - - border: none; - - background-image: url(/static/img/theme/button-hollow.svg); - background-repeat: no-repeat; - background-size: cover; - - color: $brand-color2; - - &:hover { - border-color: transparent; - background-image: url(/static/img/theme/button-hollow-hover.svg); - color: $white; - } -} diff --git a/_src/scss/base/_global.scss b/_src/scss/base/_global.scss deleted file mode 100644 index 3914725f..00000000 --- a/_src/scss/base/_global.scss +++ /dev/null @@ -1,131 +0,0 @@ -h1, -h2, -h3, -h4, -h5, -h6 { - a { - text-decoration: none; - } -} - -li { - margin-bottom: .85rem; -} - -.lead { - margin-bottom: 2.5rem; - font-weight: $global-weight-normal; - - @include breakpoint(medium) { - font-size: 1.3rem; - } -} - -.lead.stripes { - margin-bottom: 3.5rem; - padding-top: 1rem; - padding-bottom: 1rem; - border-top: 2px solid $white; - border-bottom: 2px solid $white; -} - -.lead.min { - margin-bottom: 1.5rem; -} - -.lead:last-child { - margin-bottom: 0; -} - -.demp { - font-weight: $global-weight-normal; -} - -.label { - font-weight: $global-weight-semibold; -} - -hr { - margin-top: $global-margin * 2; - margin-bottom: $global-margin * 2; -} - -// For patching headers -.contrast-fix { - display: inline-block; - margin-right: auto; - margin-left: auto; - padding: .35em; - background: get-color(secondary); -} - -iframe, -.highlighter-rouge { - margin-bottom: $global-margin; -} - -.responsive-embed iframe { - margin-bottom: 0; - max-width: 100%; -} - -.thumbnail-block { - border-radius: 0; -} - -.list-split { - @include breakpoint(medium) { - display: flex; - flex-flow: row wrap; - justify-content: space-between; - - li { - width: 45%; - } - } -} - -.back { - position: relative; - z-index: -10; - // Trick Safari into hardware acceleration - transform: translate3d(0,0,0); -} - -// Ensure we have space for anchors and the header does not cover them. -:target:before { - display:block; - margin: -70px 0 0; /* negative fixed header height */ - height: 70px; /* fixed header height*/ - content: ""; - - @include breakpoint(medium) { - margin-top: -110px; - height: 110px; - } -} - -.media-object img { - min-width: 100px; -} - -.section-heading { - margin-bottom: $global-margin * 3; - text-align: center; -} - -.callout { - color: $callout-font-color; -} - -blockquote { - cite { - font-size: rem-calc(14px); - color: $body-font-color; - } - - p:last-of-type { - margin-bottom: 0; - } -} diff --git a/_src/scss/layout/_event.scss b/_src/scss/layout/_event.scss deleted file mode 100644 index 76566b0e..00000000 --- a/_src/scss/layout/_event.scss +++ /dev/null @@ -1,5 +0,0 @@ -@use 'sass:math'; - -.event-page h1 { - margin-bottom: math.div($global-margin, 2); -} diff --git a/_src/scss/layout/_footer.scss b/_src/scss/layout/_footer.scss deleted file mode 100644 index 4b85fd38..00000000 --- a/_src/scss/layout/_footer.scss +++ /dev/null @@ -1,83 +0,0 @@ -.footer { - position: relative; - padding-bottom: clamp(4rem, 20vw, 12rem); - background-color: $brand-color5; - color: $brand-color1; - - background-image: url(/static/img/theme/footer-bottom.svg); - background-position: bottom center; - background-repeat: no-repeat; - background-size: 100% auto; - - &::before { - content: ""; - position: relative; - top: 0; - left: 0; - right: 0; - - display: block; - margin-bottom: 2rem; - - width: 100%; - aspect-ratio: 1584 / 795; - - background-image: url(/static/img/theme/footer-top.svg); - background-position: top center; - background-repeat: no-repeat; - background-size: 100% auto; - } - - p, - a, - small { - color: $brand-color1; - } - - .legal { - display: block; - } -} - -.footer-logo { - display: block; - margin: 0 auto 1.5em; - width: 140px; - - svg { - max-width: 100%; - height: auto; - } - - path { - fill: $white; - } -} - -.footer-nav { - margin: 0; - padding: 0; - - font-size: rem-calc(24); - font-weight: bold; - list-style: none; - - a { - display: block; - padding: 0.25em 0.5em; - color: $white; - } - - @include breakpoint(medium) { - text-align: center; - - li { - display: inline-block; - vertical-align: baseline; - } - } -} - -.footer .social-icons { - text-align: center; -} diff --git a/_src/scss/layout/_layouts.scss b/_src/scss/layout/_layouts.scss deleted file mode 100644 index 49a9d2ba..00000000 --- a/_src/scss/layout/_layouts.scss +++ /dev/null @@ -1,18 +0,0 @@ -@use 'sass:math'; -// Patterns that are specific to a page and likely not reusable. - -.partner-cta-box h2 { - margin-bottom: math.div($global-margin, 2); - font-size: rem-calc(28); -} - -.session-details-page .subpage-content , -.schedule-page .subpage-content { - padding-bottom: 0; -} - -.session-details-page { - .responsive-embed + .event-links { - margin-top: $global-margin * 2; - } -} diff --git a/_src/scss/layout/_navbar.scss b/_src/scss/layout/_navbar.scss deleted file mode 100644 index 5434b1cd..00000000 --- a/_src/scss/layout/_navbar.scss +++ /dev/null @@ -1,162 +0,0 @@ -// headroom is the plugin used to pin the navbar to the top. -// it adds classes with JS, and those classes are used here. -// Documentation here: http://wicky.nillia.ms/headroom.js/ - -// title bar text overrides -.title-bar .menu a { - text-decoration: none; -} - -.title-bar .menu a:not(.button) { - color: $brand-color1; -} - -.title-bar .menu { - // Trick Safari into hardware acceleration - transform: translate3d(0,0,0); -} - -.title-bar .menu .menu { - position: absolute; -} - -.off-canvas .menu a { - color: $white; -} - -.off-canvas .menu li, -.dropdown .menu li { - margin-bottom: 0; -} - -.title-bar .menu > li > a { - font-weight: $global-weight-semibold; -} - -.off-canvas .menu .button { - margin-right: 20px; - margin-left: 20px; - - &.hollow { - display: none; - } -} - - -.menu .menu { // subnav menu, with the headroom class added so it doesn't change - text-align: left; -} - -.headroom--top .menu .navbar-button, -.navbar-button { - text-align: center; - - small { - font-size: rem-calc(16); - } -} - -.headroom .menu .menu a { - font-size: rem-calc(18); - color: $white; -} - -.title-bar { - max-width: $global-width; - margin: 0 auto; - - .logo { - display: block; - margin: 10px 0 -20px 10px; - width: 160px; - height: auto; // for IE - } - - .menu > li > a { - padding: .6rem; - font-size: .8rem; - } -} - -// change appearance on scroll. -.headroom { - position: fixed; - top: 0; - right: 0; - left: 0; - z-index: 10; - - transition: all 200ms ease; - will-change: transform; - - &, - .hamburger { - height: 80px; - } -} - -.drilldown .is-drilldown-submenu { - background: $brand-color3; // Fix overlap issue -} - -.is-drilldown { - min-height: 480px !important; // Weird Foundation bug fix -} - -// tightening drop-down arrows on navigaiton parent elements -.dropdown.menu > li.is-dropdown-submenu-parent > a { - padding-right: 1.1rem; -} - -@include breakpoint(smedium down) { - .is-dropdown-submenu-parent { - position: static; // fixing drilldown - } -} - -@include breakpoint(large) { - .headroom { - position: relative !important; - height: 120px; - } - - .title-bar { - .logo { - margin-top: $global-margin; - margin-left: $global-margin; - width: 170px; - height: 100%; - } - - .menu > li > a { - font-size: .9rem; - } - } - - .title-bar-right { - padding: 1rem 1rem 0; - } - - .title-bar .button { - display: none; - - &.hollow { - display: inline-block; - } - } -} - -@include breakpoint(xlarge) { - .title-bar { - padding-bottom: .5rem; - - .menu > li > a { - padding: 1rem; - } - - .logo { - width: 200px; - height: 100%; - } - } -} diff --git a/_src/scss/layout/_post-page.scss b/_src/scss/layout/_post-page.scss deleted file mode 100644 index 2b217352..00000000 --- a/_src/scss/layout/_post-page.scss +++ /dev/null @@ -1,36 +0,0 @@ -.post-page { - h2:not(:first-child), - h3 { - margin-top: $global-margin * 2; - } - - h2, - h3 { - font-weight: $global-weight-semibold; - } - - img.full-width { - margin-left: -2rem; - max-width: calc(100% + 4rem); - } -} - -.subpage-header.has-post-photo { - padding-bottom: 2rem; -} - -.post-photo { - display: block; - - &:first-child { - margin-bottom: $global-margin * 2; - } -} - -@include breakpoint(medium) { - .post-photo { - margin-left: -3rem; - width: calc(100% + 6rem); - max-width: none; - } -} diff --git a/_src/scss/layout/_styleguide.scss b/_src/scss/layout/_styleguide.scss deleted file mode 100644 index b4c0026e..00000000 --- a/_src/scss/layout/_styleguide.scss +++ /dev/null @@ -1,86 +0,0 @@ -/* This styles code blocks used for examples. */ -.highlight { - background: $light-gray; -} - -.highlight, -.ss-code-live { - margin-bottom: 1.5rem; -} - -.highlight code { - display: block; - padding: 1rem; - font-size: 0.7em; - overflow: auto; -} - -.styleguide-logo { - display: block; - margin: 2rem auto; - max-width: 400px; -} - -.tabs-title a { - font-size: .9rem; - font-weight: $global-weight-bold; - text-decoration: none; -} - -/* This styles the color blocks used in the color documentation. */ -.colors { - margin: 1em 0; - padding: 0; - list-style: none; -} - -.color { - display: inline-block; - margin: 10px; - padding-top: 84px; - width: 200px; - height: 200px; - box-shadow: 0 0 8px rgba(0, 0, 0, 0.1); - border-radius: 50%; - line-height: 1.2; - text-align: center; -} - -.logo-set-wrap { - display: flex; - flex-flow: row wrap; - justify-content: center; - margin-top: 2rem; -} - -.logo-set { - margin-bottom: 2em; -} - -.logo-set img { - display: block; - margin: 0 auto 1em; - max-width: 80%; -} - -.download-links { - margin: 0.5em 0; - font-size: 0.8rem; - text-align: center; - list-style: none; -} - -.download-links li { - display: inline-block; - padding: 0 6px; - vertical-align: baseline; -} - -.styleguide-add-max-width { - max-width: 1200px; -} - -.styleguide-content { - margin-top: 80px; - margin-bottom: 80px; -} diff --git a/_src/scss/layout/_subpage-content.scss b/_src/scss/layout/_subpage-content.scss deleted file mode 100644 index c62ad577..00000000 --- a/_src/scss/layout/_subpage-content.scss +++ /dev/null @@ -1,5 +0,0 @@ -.subpage-content { - .section-pad:first-child { - padding-top: 0; - } -} diff --git a/_src/scss/layout/_subpage-masthead.scss b/_src/scss/layout/_subpage-masthead.scss deleted file mode 100644 index 8ed2da86..00000000 --- a/_src/scss/layout/_subpage-masthead.scss +++ /dev/null @@ -1,31 +0,0 @@ -.subpage-header { - position: relative; - padding: 6rem 0 2rem; - text-align: center; - - &.no-bottom { - padding-bottom: 0; - } -} - -.subpage-header h1 { - position: relative; - margin: 0 auto 2rem; - padding: 0 1rem; - max-width: 60rem; -} - -.subpage-header h1:after { - position: relative; - bottom: -.8rem; - left: calc(50% - 1.5rem); - display: block; - width: 3rem; - height: 4px; - background: $brand-color2; - content: ""; -} - -.subpage-header a { - text-decoration: none; -} diff --git a/_src/scss/layout/_why-djangocon.scss b/_src/scss/layout/_why-djangocon.scss deleted file mode 100644 index ebe08112..00000000 --- a/_src/scss/layout/_why-djangocon.scss +++ /dev/null @@ -1,59 +0,0 @@ -.video-card { - .label { - float: right; - margin-right: 10px; - border-radius: $label-radius $label-radius 0 0; - font-weight: $global-weight-bold; - } - - .responsive-embed { - clear: both; - } - - &-title, - &-presenter { - font-family: $body-font-family; - } - - &-title { - margin-bottom: .5rem; - font-size: rem-calc(24px); - } - - &-presenter { - font-size: rem-calc(20px); - font-weight: $global-weight-normal; - } -} - -.tutorials-block { - padding: 1rem; - - .media-icon { - float: left; - margin-right: 1rem; - width: 74px; - height: 74px; - } - - .tutorials-block-heading { - font-size: rem-calc(24px); - font-weight: 600; - } -} - -// TODO: 2018 specific -.sprints-img { - display: inline-block; - margin: 0 auto $global-margin; - max-width: 75%; -} - -// TODO: 2018 specific -.why-quote { - margin-bottom: 100px; - - @include breakpoint(medium) { - margin-bottom: 0; - } -} diff --git a/_src/scss/main.scss b/_src/scss/main.scss deleted file mode 100644 index 62d312b8..00000000 --- a/_src/scss/main.scss +++ /dev/null @@ -1,95 +0,0 @@ -@charset 'utf-8'; - -/* - app.css - part of http://daigofuji.github.io/jekyll-foundation-56-starter/ by Daigo Fujiwara (@DaigoFuji) - http://google-styleguide.googlecode.com/svn/trunk/htmlcssguide.xml#CSS_Style_Rules - http://csslint.net/ (Will hurt your feelings) - http://cssguidelin.es/ -*/ - -@import '../../node_modules/foundation-sites/scss/foundation'; -@import 'settings'; -@import '../../node_modules/motion-ui/motion-ui'; - -@include foundation-global-styles; -@include foundation-grid; -@include foundation-typography; -@include foundation-button; -@include foundation-forms; -@include foundation-visibility-classes; -@include foundation-float-classes; -@include foundation-accordion; -@include foundation-accordion-menu; -@include foundation-badge; -@include foundation-breadcrumbs; -@include foundation-button-group; -@include foundation-card; -@include foundation-callout; -@include foundation-close-button; -@include foundation-drilldown-menu; -@include foundation-dropdown; -@include foundation-dropdown-menu; -@include foundation-label; -@include foundation-media-object; -@include foundation-menu; -@include foundation-off-canvas; -@include foundation-orbit; -@include foundation-pagination; -@include foundation-progress-bar; -//@include responsive-embed; -@include foundation-slider; -@include foundation-sticky; -@include foundation-reveal; -@include foundation-switch; -@include foundation-table; -@include foundation-tabs; -@include foundation-thumbnail; -@include foundation-title-bar; -@include foundation-tooltip; -@include foundation-top-bar; - - -@include motion-ui-transitions; -@include motion-ui-animations; - -/* DjangoCon US customizations */ - -@import 'themes'; -@import 'utilities'; - -@import 'base/global'; -@import 'base/buttons'; - -@import 'layout/event'; -@import 'layout/navbar'; -@import 'layout/home-content'; -@import 'layout/post-page'; -//@import 'layout/recap'; -@import 'layout/why-djangocon'; -@import 'layout/subpage-content'; -@import 'layout/subpage-masthead'; -@import 'layout/footer'; -@import 'layout/layouts'; -@import 'layout/styleguide'; - - -@import 'module/attraction'; -@import 'module/event-info'; -@import 'module/event-links'; -@import 'module/faqs'; -@import 'module/home-hero'; -@import 'module/photo-hero'; -@import 'module/home-news'; -@import 'module/hamburger'; -@import 'module/date-cards'; -@import 'module/card-rows'; -@import 'module/icons'; -@import 'module/presenters'; -@import 'module/profile'; -@import 'module/post-list'; -@import 'module/schedule'; -@import 'module/speaker-template'; -@import 'module/sponsors'; -@import 'module/sponsor-footer'; -@import 'module/social-icons'; diff --git a/_src/scss/module/_attraction.scss b/_src/scss/module/_attraction.scss deleted file mode 100644 index d3cb56e0..00000000 --- a/_src/scss/module/_attraction.scss +++ /dev/null @@ -1,32 +0,0 @@ -@use 'sass:math'; - -.attraction-name { - margin-bottom: math.div($global-margin, 2); -} - -.attraction-location { - font-size: .8rem; -} - -.attraction-location .label { - margin-right: 1rem; - font-size: .8em; - font-weight: $global-weight-bold; -} - -.attraction-description { - max-width: 24em; - font-size: .9rem; -} - -.attraction-list .column { - @include breakpoint(large) { - margin-bottom: 2.5rem; - - // 2-by-2 grid. Bottom 2 columns shouldn't have margin bottom - &:nth-last-child(1), - &:nth-last-child(2) { - margin-bottom: 0; - } - } -} diff --git a/_src/scss/module/_card-rows.scss b/_src/scss/module/_card-rows.scss deleted file mode 100644 index 879baae1..00000000 --- a/_src/scss/module/_card-rows.scss +++ /dev/null @@ -1,62 +0,0 @@ -@include breakpoint(medium) { - .card-row { - display: flex; - justify-content: center; - - > .column { - display: flex; - } - } -} - -.card { - width: 100%; -} - -.card.icon-right { - .card-icon { - float: right; - margin: 1em 0 2em 2em; - } -} - -.card.icon-left, -.card.icon-right { - display: flex; - align-items: flex-start; - - .card-title { - text-align: left; - } - - .card-icon { - float: left; // no-flex fallback - align-self: center; - margin: 0 0 0 1em; - width: 240px; - } -} - -.card.icon-right { - flex-direction: row-reverse; - - .card-icon { - float: right; // no-flex fallback - margin: 0 1em 0 0; - } -} - -.card-icon { - display: block; - margin: 1em auto 0; - width: 100px; - height: 100px; -} - -.card-title { - text-align: center; -} - -.card-section { - min-height: 120px; -} diff --git a/_src/scss/module/_date-cards.scss b/_src/scss/module/_date-cards.scss deleted file mode 100644 index d7bc4580..00000000 --- a/_src/scss/module/_date-cards.scss +++ /dev/null @@ -1,56 +0,0 @@ -.date-card { - margin-bottom: 2rem; - - a { - display: flex; - text-decoration: none; - color: $body-font-color; - } - - a:hover { - color: $body-font-color; - } - - .date-card-title { - margin-bottom: .5rem; - font-size: 1.6rem; - font-weight: $global-weight-bold; - } - - p { - margin-bottom: 0; - font-size: .85rem; - font-weight: $global-weight-semibold; - line-height: 1.25; - } - - .dates { - flex: 0 0 120px; - margin-right: 20px; - font-weight: $global-weight-bold; - text-align: center; - } - - .month { - display: block; - padding: .3em .2em; - background-image: url(/static/img/theme/card-highlight.svg); - background-size: cover; - font-size: .82rem; - font-weight: $global-weight-bold; - text-transform: uppercase; - color: $white; - } - - .days { - display: block; - padding-top: .5rem; - padding-bottom: .5rem; - font-size: 1.4rem; - color: $brand-color2; - } - - @include breakpoint(large) { - margin-bottom: 0; - } -} diff --git a/_src/scss/module/_event-info.scss b/_src/scss/module/_event-info.scss deleted file mode 100644 index c2e2e202..00000000 --- a/_src/scss/module/_event-info.scss +++ /dev/null @@ -1,10 +0,0 @@ -.event-info { - display: flex; - align-items: center; - margin: 0 auto; - - &-date { - display: block; - font-size: 1.3rem; - } -} diff --git a/_src/scss/module/_event-links.scss b/_src/scss/module/_event-links.scss deleted file mode 100644 index e43632aa..00000000 --- a/_src/scss/module/_event-links.scss +++ /dev/null @@ -1,30 +0,0 @@ -.event-links { - display: flex; - justify-content: center; - margin-bottom: $global-margin * 3; -} - -.event-links-heading { - margin-right: 1em; - font-size: rem-calc(28); - color: $black; -} - -.event-link-icon { - height: 36px; -} - -.event-link-icon path { - fill: currentColor; -} - -.event-link { - display: inline-flex; - justify-content: center; - align-items: center; - padding: .75em 1.75em; -} - -.event-link-icon { - margin-right: .5em; -} diff --git a/_src/scss/module/_faqs.scss b/_src/scss/module/_faqs.scss deleted file mode 100644 index 15ad2dde..00000000 --- a/_src/scss/module/_faqs.scss +++ /dev/null @@ -1,11 +0,0 @@ -.faq-item { - margin-bottom: $global-margin * 3; -} - -.faq-item-question { - font-size: rem-calc(30); - - @include breakpoint(medium) { - font-size: rem-calc(38); - } -} diff --git a/_src/scss/module/_hamburger.scss b/_src/scss/module/_hamburger.scss deleted file mode 100644 index f2034108..00000000 --- a/_src/scss/module/_hamburger.scss +++ /dev/null @@ -1,18 +0,0 @@ -// Hamburger menu options. The source is pulled in from a bower -// component. Docs: https://github.com/jonsuh/hamburgers; -$hamburger-layer-color: $white; -$hamburger-layer-width: 30px; -$hamburger-layer-height: 2px; -$hamburger-types: (spin); - -@import '../../../node_modules/hamburgers/_sass/hamburgers/hamburgers'; - -.hamburger { - padding: 16px 15px 10px; -} - -.hamburger-inner, -.hamburger-inner:before, -.hamburger-inner:after { - background-color: $brand-color3; -} diff --git a/_src/scss/module/_home-hero.scss b/_src/scss/module/_home-hero.scss deleted file mode 100644 index 67b26a62..00000000 --- a/_src/scss/module/_home-hero.scss +++ /dev/null @@ -1,94 +0,0 @@ -.home-hero { - position: relative; - margin: 80px auto 0; - - .row { - padding: 2.5rem 1.5rem; - } - - h1 { - margin-bottom: 2.25rem; - font-size: 1.6rem; - } - - h1 strong { - color: #ED8F6F; - } - - .event-info-detail { - margin-bottom: 1.5rem; - color: $brand-color5; - } - - .event-info-location { - font-weight: $global-weight-bold; - } - - .event-info-location a { - color: $brand-color5; - } - - .button + .button { - margin-left: .5rem; - } -} - -@include breakpoint(medium) { - .home-hero { - h1 { - font-size: 2rem; - } - - .row { - background-image: - url(/static/img/theme/hero-lemur.svg); - - background-repeat: - no-repeat; - - background-size: - auto 100%; - - background-position: - right -12.25vw center; - } - - .header-text { - max-width: 26rem; - } - } -} - -@include breakpoint(large) { - .home-hero { - margin-top: 0; - - .row { - background-image: - url(/static/img/theme/hero-lemur.svg), - url(/static/img/theme/hero-map.svg); - - background-repeat: - no-repeat, - no-repeat; - - background-size: - auto 100%, - auto 100%; - - background-position: - right 10% center, - right -16vw center - } - } -} - -@include breakpoint(xlarge) { - .home-hero { - .row { - background-position: - right 28% center, - right -15% center; - } - } -} diff --git a/_src/scss/module/_home-news.scss b/_src/scss/module/_home-news.scss deleted file mode 100644 index 44a24d4a..00000000 --- a/_src/scss/module/_home-news.scss +++ /dev/null @@ -1,11 +0,0 @@ -.news { - @include breakpoint(medium) { - display: flex; - flex-flow: row wrap; - justify-content: center; - - .news-title { - display: flex; - } - } -} diff --git a/_src/scss/module/_home-sponsors.scss b/_src/scss/module/_home-sponsors.scss deleted file mode 100644 index 35aa8bb1..00000000 --- a/_src/scss/module/_home-sponsors.scss +++ /dev/null @@ -1,24 +0,0 @@ -.partner-list { - margin: 0; - padding: 0; - text-align: center; - list-style: none; - - .item { - display: inline-block; - margin: 0.5em; - max-width: 200px; - } - - .partner { - display: block; - opacity: 0.7; - transition: all 300ms ease; - filter: grayscale(100%); - - &:hover { - filter: grayscale(0%); - opacity: 1; - } - } -} diff --git a/_src/scss/module/_icons.scss b/_src/scss/module/_icons.scss deleted file mode 100644 index 788d38b3..00000000 --- a/_src/scss/module/_icons.scss +++ /dev/null @@ -1,39 +0,0 @@ -.icon { - display: inline-block; - vertical-align: middle; -} - -.icon.float-left { - margin-right: 20px; - margin-bottom: 20px; -} - -.icon.float-right { - margin-bottom: 20px; - margin-left: 20px; -} - -.icon-small { - width: 24px; - height: 24; -} - -.icon-medium { - width: 48px; - height: 48px; -} - -.icon-large { - width: 64px; - height: 64px; -} - -.icon-xlarge { - width: 128px; - height: 128px; -} - -.icon-jumbo { - width: 256px; - height: 256px; -} \ No newline at end of file diff --git a/_src/scss/module/_photo-hero.scss b/_src/scss/module/_photo-hero.scss deleted file mode 100644 index 6d7697ab..00000000 --- a/_src/scss/module/_photo-hero.scss +++ /dev/null @@ -1,44 +0,0 @@ -.photo-hero { - background-size: cover; - - .hero-content { - position: relative; - z-index: 2; - padding-top: rem-calc(10); - background: $body-background; - - .column { - @include bottomless; - } - } - - blockquote { - padding: 0; - border: none; - font-size: rem-calc(26); - } - - cite { - font-size: rem-calc(20); - } - - @include breakpoint(medium) { - padding-top: 16vh; - padding-bottom: 16vh; - - .hero-content { - padding-top: 0; - background: transparent; - } - } -} - -.photo-hero-inline { - position: relative; - - img { - display: block; - width: 100%; - } -} - diff --git a/_src/scss/module/_post-list.scss b/_src/scss/module/_post-list.scss deleted file mode 100644 index 49c5f3c6..00000000 --- a/_src/scss/module/_post-list.scss +++ /dev/null @@ -1,18 +0,0 @@ -.post-item { - margin-bottom: 2rem; - padding-bottom: 2rem; - border-bottom: 1px solid $dark-gray; - @include bottomless; -} - -.post-title a { - color: $brand-color3; - - &:hover { - color: $brand-color1; - } -} - -.post-item:last-child { - border-bottom: none; -} diff --git a/_src/scss/module/_presenters.scss b/_src/scss/module/_presenters.scss deleted file mode 100644 index 14ce448e..00000000 --- a/_src/scss/module/_presenters.scss +++ /dev/null @@ -1,11 +0,0 @@ -.presenters { - margin-top: $global-margin * 2; -} - -.presenters .profile { - margin-bottom: $global-margin * 3; - - &:last-child { - margin-bottom: 0; - } -} diff --git a/_src/scss/module/_profile.scss b/_src/scss/module/_profile.scss deleted file mode 100644 index b217fe3d..00000000 --- a/_src/scss/module/_profile.scss +++ /dev/null @@ -1,32 +0,0 @@ -.profile { - margin: 0 auto; - padding: 20px; - max-width: 360px; - - font-size: .9rem; - line-height: 1.5; - - &:last-child { - margin-bottom: 0; - } -} - -.profile.wide { - padding: 0; - max-width: $global-width; -} - -.profile-name { - font-size: rem-calc(30); - font-weight: $global-weight-semibold; -} - -.profile .social-icons a { - color: $brand-color3; - - svg { - width: 34px; - height: 34px; - fill: currentColor; - } -} diff --git a/_src/scss/module/_schedule.scss b/_src/scss/module/_schedule.scss deleted file mode 100644 index 62fab6c1..00000000 --- a/_src/scss/module/_schedule.scss +++ /dev/null @@ -1,314 +0,0 @@ -@use 'sass:math'; - -%has-bg { - background: $light-gray; -} - -.schedule { - margin: 0; - padding-right: 0; - padding-left: 0; - list-style: none; - - .day { - font-weight: $global-weight-normal; - } -} - -[id*='Day-']:target { - padding-top: 4rem; -} - -.time { - display: block; - margin-bottom: 1rem; - font-size: 1.6rem; - font-weight: $global-weight-semibold; -} - -.events { - margin: 0; - padding: 0; - list-style: none; -} - -.event { - @include clearfix; - @include bottomless; - - position: relative; - margin: 0 0 1em; - padding: 0; - width: 100%; - - a { - text-decoration: none; - } - - .location, - a:hover { - color: $black; - } - - a:hover .event-title { - color: $secondary-color; - } - - a:hover .mini-profile-byline { - color: $body-font-color; - } - - .event-content { - @include bottomless; - display: flex; - flex-direction: column; - flex-grow: 1; - } - - .label { - align-self: flex-start; - font-size: .75rem; - } - - .avatar { - aspect-ratio: 1; - margin: 0 .5em 0 0; - width: 60px; - object-fit: cover; - border-radius: 50%; - vertical-align: middle; - } - - .location { - position: absolute; - top:6px; - right: 12px; - font-size: 0.8em; - } - - &-links .button { - margin-right: .5rem; - } - - &-links .button:last-child { - margin-right: 0; - } - - &-byline { - margin-top: 1rem; - } - - &-speaker { - margin-top: 1rem; - margin-bottom: 0; - } - - &-speaker + &-speaker { - margin-top: .75rem; - } - - & & { - position: static; - } -} - -// Fallback style, mostly used on Why DjangoCon US? -.event.boxed { - padding: $global-margin; - border: 1px solid $medium-gray; - background: $white; - - .event-content { - display: block; - } - - .mini-profile-byline { - margin-top: $global-margin; - padding-top: 0; - } -} - -.event-title { - margin-bottom: .5rem; - font-size: 1.2rem; -} - -// Handle variations -.event.loc-main { - @extend %has-bg; - border-top: 8px solid $brand-color6; -} - -.event.loc-main .location { - background: $light-gray; -} - -.event.loc-alt { - @extend %has-bg; - border-top: 8px solid $brand-color3; -} - -.event.loc-alt-2 { - @extend %has-bg; - border-top: 8px solid $brand-color2; -} - -.event.loc-alt-3 { - @extend %has-bg; - border-top: 8px solid $brand-color1; -} - -.event.loc-main, -.event.loc-alt, -.event.loc-alt-2, -.event.loc-alt-3 { - padding: ($global-margin * 1.75) $global-margin $global-margin; -} - -.mini-profile-byline { - display: flex; - align-items: center; - - margin-top: 30px; - margin-bottom: 0; - - line-height: 1.2; - text-decoration: none; - - & + & { - margin-top: math.div($global-margin, 2); - } - - .avatar { - margin: 0 .5em 0 0; - max-width: 60px; - border-radius: 50%; - vertical-align: middle; - } -} - -@include breakpoint(medium) { - .hour-row { - padding: $global-margin 0; - } - - .events { - display: flex; - } - - .event { - display: flex; - flex-direction: column; - margin: 0 math.div($global-margin, 2); - text-align: left; - flex-grow: 1; - - &:first-child { - margin-left: 0; - } - - &:last-child { - margin-right: 0; - } - } - - .event .label { - display: inline-block; - align-self: flex-start; - margin-left: 0; - } - - .time { - margin-bottom: 0; - font-size: 1.2rem; - text-align: right; - - .muted { - display: block; - font-weight: $global-weight-normal; - opacity: 0.6; - } - } - - .schedule { - .day, - .lead { - text-align: center; - } - } -} - - -.schedule-nav { - margin-bottom: $global-margin; - - &-title { - display: block; - margin-bottom: $global-margin; - padding: .3em 1em; - background: $brand-color2; - font-weight: $global-weight-bold; - text-align: center; - color: $white; - } - - &-list { - display: flex; - flex-flow: row wrap; - justify-content: space-between; - margin: 0; - padding: 0; - } - - li { - margin-bottom: 0; - list-style: none; - width: 50%; - } - - a { - display: block; - padding: .5rem 1rem; - font-weight: $global-weight-semibold; - text-align: center; - } - - @include breakpoint(720px) { - li { - width: 33.33%; - } - } - - @include breakpoint(920px) { - display: flex; - - &-title { - display: inline-block; - margin-bottom: 0; - } - - &-list { - flex: 1; - flex-flow: row nowrap; - justify-content: space-between; - } - - li { - flex: 1; - width: auto; - } - - li, - a { - display: flex; - justify-content: center; - align-items: center; - margin-bottom: 0; - } - - a { - padding-right: .5rem; - padding-left: .5rem; - } - } -} diff --git a/_src/scss/module/_social-icons.scss b/_src/scss/module/_social-icons.scss deleted file mode 100644 index 930c139d..00000000 --- a/_src/scss/module/_social-icons.scss +++ /dev/null @@ -1,59 +0,0 @@ -.social-icons { - margin: 2em auto; - list-style: none; - - li { - display: inline-block; - margin: 0 1em; - } - - .profile & { - margin: 1em 0; - - li { - margin: 0 0.5em; - } - } -} - -.social-icons a { - display: block; - - svg { - width: 42px; - height: 42px; - fill: $primary-color; - } - - &:hover svg { - fill: $white; - } - - &.facebook:hover svg { - fill: $color-facebook; - } - - &.twitter:hover svg { - fill: $color-twitter; - } - - &.linkedin:hover svg { - fill: $color-linkedin; - } - - &.instagram:hover svg { - fill: $color-instagram; - } - - &.github:hover svg { - fill: $color-github; - } - - &.mastodon:hover svg { - fill: $color-mastodon; - } -} - -.social-icons.highlight svg { - fill: $brand-color5; -} diff --git a/_src/scss/module/_speaker-template.scss b/_src/scss/module/_speaker-template.scss deleted file mode 100644 index 87343afa..00000000 --- a/_src/scss/module/_speaker-template.scss +++ /dev/null @@ -1,93 +0,0 @@ -.speaker-template { - position: relative; - padding: 30px 30px 0 30px; - width: 1200px; - height: 630px; - - background-color: #F4E9DC; - background-image: url(/static/img/theme/speaker-card/speaker-card-bg.svg); - background-position: top right; - background-size: 50% 100%; - background-repeat: no-repeat; - - display: flex; - flex-flow: column; - justify-content: center; -} - -.speaker-template::after { - display: block; - - position: absolute; - top: 0; - right: 0; - - z-index: 1; - - width: 436px; - height: 164px; - - background-image: url(/static/img/theme/speaker-card/banner.svg); - background-repeat: no-repeat; - background-size: contain; - content: ""; -} - -.speaker-template-name, -.speaker-template-session-title { - max-width: 600px; -} - -.speaker-template-name { - position: relative; - font-size: 3rem; - font-weight: $global-weight-bold; - color: $brand-color1; -} - -.speaker-template-name::after { - display: block; - position: relative; - - margin: .5rem 0 1rem; - - width: 36%; - height: 26px; - - background-image: url(/static/img/theme/speaker-card/line.svg); - background-repeat: no-repeat; - background-size: auto 100%; - - content: ""; -} - -.speaker-template-session-title { - font-size: 2.5rem; - font-weight: $global-weight-normal; - color: #150944; - line-height: 1.2; - - & + & { - margin-top: 2rem; - } -} - -.speaker-template-photo { - position: absolute; - right: 30px; - top: 40px; - - z-index: 0; - - -webkit-mask-image: url(/static/img/theme/speaker-card/speaker-mask.svg); - mask-image: url(/static/img/theme/speaker-card/speaker-mask.svg); - -webkit-mask-repeat: no-repeat; - mask-repeat: no-repeat; - -webkit-mask-size: cover; - mask-size: cover; - - width: 414px; - height: 414px; - object-fit: contain; -} - diff --git a/_src/scss/module/_sponsor-footer.scss b/_src/scss/module/_sponsor-footer.scss deleted file mode 100644 index 442d88da..00000000 --- a/_src/scss/module/_sponsor-footer.scss +++ /dev/null @@ -1,90 +0,0 @@ -.partner-footer { - h3 { - @extend h2; - margin-bottom: $global-margin * 2; - } - - .lead { - font-size: rem-calc(20); - font-weight: $global-weight-bold; - text-transform: uppercase; - } - - .partner-list { - position: relative; - margin-bottom: $global-margin * 2; - - &:not(:last-child):after { - position: absolute; - bottom: 0; - display: block; - width: 80%; - height: 1px; - background: $medium-gray; - content: ""; - } - } -} - -.partner-list { - display: flex; - flex-flow: row wrap; - justify-content: center; - align-items: center; -} - -.partner-block { - padding: 0 $global-margin $global-margin; - width: 100%; - - @include breakpoint(smedium) { - width: 33.33%; - } - - @include breakpoint(medium) { - width: 25%; - } - - @include breakpoint(large) { - width: 20%; - } -} - -.partner-list { - .partner-logo.portrait { - max-height: 70px; - } - - .partner-logo.landscape { - max-width: 160px; - } -} - - -/* -// LEGACY -.partner-list { - list-style: none; - margin: 0; - padding: 0; - text-align: center; - - .item { - display: inline-block; - max-width: 200px; - margin: 0.5em; - } - - .partner { - display: block; - opacity: 0.7; - transition: all 300ms ease; - filter: grayscale(100%); - - &:hover { - filter: grayscale(0%); - opacity: 1; - } - } -} -*/ diff --git a/_src/scss/module/_sponsors.scss b/_src/scss/module/_sponsors.scss deleted file mode 100644 index f3ff2bf7..00000000 --- a/_src/scss/module/_sponsors.scss +++ /dev/null @@ -1,25 +0,0 @@ -.partner { - margin-bottom: $global-margin * 3; -} - -.partner-name { - font-size: rem-calc(36); - font-weight: $global-weight-normal; -} - -.partner-url { - font-size: rem-calc(20); - font-weight: $global-weight-normal; -} - -.partner-logo { - margin-bottom: $global-margin; -} - -.partner-logo.portrait { - max-height: 200px; -} - -.partner-logo.landscape { - max-width: 300px; -} diff --git a/docker-compose.override.yml.example b/docker-compose.override.yml.example deleted file mode 100644 index 8cb2c5a9..00000000 --- a/docker-compose.override.yml.example +++ /dev/null @@ -1,7 +0,0 @@ -services: - - devd: - platform: linux/amd64 - - jekyll: - platform: linux/amd64 diff --git a/docker-compose.yml b/docker-compose.yml deleted file mode 100644 index f9303325..00000000 --- a/docker-compose.yml +++ /dev/null @@ -1,26 +0,0 @@ -services: - - devd: - image: ghcr.io/jefftriplett/devd:latest - command: --livewatch - expose: - - 8000 - init: true - ports: - - 8000:8000 - volumes: - - .:/srv/jekyll - - jekyll: - image: jekyll/jekyll:latest - command: jekyll serve --watch --port 4000 - environment: - - BUNDLE_PATH=/usr/local/bundle - expose: - - 4000 - init: true - ports: - - 4000:4000 - volumes: - - .:/srv/jekyll:cached - - ./.vendor/bundle:/usr/local/bundle:cached diff --git a/eleventy.config.js b/eleventy.config.js new file mode 100644 index 00000000..13a1461f --- /dev/null +++ b/eleventy.config.js @@ -0,0 +1,150 @@ +const path = require('path'); + +const Image = require('@11ty/eleventy-img'); +const markdownIt = require("markdown-it"); + +module.exports = (config) => { + /* + Setup collections + https://www.11ty.dev/docs/collections/ + */ + config.addCollection("posts", function(collectionApi) { + return collectionApi.getFilteredByGlob("src/_content/posts/*.md"); + }); + + config.addCollection("places", function(collectionApi) { + return collectionApi.getFilteredByGlob("src/_content/places/*.md"); + }); + + config.addCollection("presenters", function(collectionApi) { + return collectionApi.getFilteredByGlob("src/_content/presenters/*.md"); + }); + + config.addCollection("organizers", function(collectionApi) { + return collectionApi.getFilteredByGlob("src/_content/organizers/*.md").filter(item => !item.data.hidden); + }); + + config.addCollection("sponsorsByLevel", function(collectionApi) { + const sponsors = collectionApi.getFilteredByGlob("src/_content/sponsors/*.md"); + const visibleSponsors = sponsors.filter(sponsor => !sponsor.data.hidden); + const levelOrder = [ + "Diamond", + "Platnum", + "Gold", + "Silver", + "Bronze", + "Coffee", + "Opportunity Grant", + "Community", + ]; + + const sponsorsByLevel = visibleSponsors.reduce((acc, sponsor) => { + const level = sponsor.data.level; + if (!acc[level]) { + acc[level] = []; + } + acc[level].push(sponsor); + return acc; + }, {}); + + // Sort levels based on predefined order + const sortedSponsorsByLevel = {}; + levelOrder.forEach(level => { + if (sponsorsByLevel[level]) { + sortedSponsorsByLevel[level] = sponsorsByLevel[level]; + } + }); + + return sortedSponsorsByLevel; + }); + + /* + Setup passthrough file copy + https://www.11ty.dev/docs/copy/ + */ + config.addPassthroughCopy("src/assets/img/**/*"); + config.addPassthroughCopy("src/assets/js/"); + config.addPassthroughCopy("src/assets/favicons/"); + config.addPassthroughCopy({ + "src/_content/sponsors/*.{png,jpg,jpeg,svg}": "sponsors/", + "src/_content/places/*.{png,jpg,jpeg,webp}": "venue/", + }); + config.addPassthroughCopy("CNAME"); + + /* + Setup watch targets + https://www.11ty.dev/docs/watch-serve/#add-your-own-watch-targets + */ + config.addWatchTarget("src/assets/js/"); + + /* + Shortcodes + */ + config.addLiquidShortcode("year", () => `${new Date().getFullYear()}`); + + // TODO: Accept widths or support different widths + config.addLiquidShortcode("image", async function( + src, + outputDir, + urlPath, + alt, + sizes, + classes = "") { + let metadata = await Image(src, { + widths: [300, 600], + formats: ["webp"], + outputDir, + urlPath, + filenameFormat: function (id, src, width, format, options) { + // Get the original filename without the extension + const originalFilename = path.basename(src, path.extname(src)); + + return `${originalFilename}-${width}.${format}`; + }, + }); + + let imageAttributes = { + class: classes, + alt, + sizes, + loading: "lazy", + decoding: "async", + }; + + return Image.generateHTML(metadata, imageAttributes); + }); + + /* + Filters + */ + config.addFilter("markdown", function(content = "") { + let markdown = markdownIt({ + html: true, + breaks: true, + linkify: true + }); + + return markdown.render(content); + }); + + /* + Misc configuration + */ + config.setFrontMatterParsingOptions({ + excerpt: true, + excerpt_separator: "" + }); + + return { + dir: { + input: "src", + output: "dist", + layouts: '_layouts', + }, + + // Use Liquid for templating + // https://www.11ty.dev/docs/languages/liquid/ + htmlTemplateEngine: "liquid", + markdownTemplateEngine: "liquid" + } +}; diff --git a/package-lock.json b/package-lock.json index 0df65f3b..efaa53f1 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,4655 +1,5576 @@ { - "name": "DjangoConUS", + "name": "durham.djangocon.us", "version": "1.0.0", - "lockfileVersion": 2, + "lockfileVersion": 3, "requires": true, "packages": { "": { - "name": "DjangoConUS", + "name": "durham.djangocon.us", "version": "1.0.0", - "license": "MIT", - "dependencies": { - "foundation-sites": "^6.7.5", - "hamburgers": "^1.2.1", - "jquery": "^3.6.0", - "motion-ui": "^2.0.4" - }, "devDependencies": { - "all-contributors-cli": "^6.20.0", - "css-loader": "^6.7.1", - "mini-css-extract-plugin": "^2.6.1", - "resolve-url-loader": "^5.0.0", - "sass": "^1.62.1", - "sass-loader": "^13.0.2", - "webpack": "^5.80.0", - "webpack-cli": "^4.10.0" - } + "@11ty/eleventy": "^2.0.1", + "@11ty/eleventy-img": "^4.0.2", + "@tailwindcss/container-queries": "^0.1.1", + "@tailwindcss/typography": "^0.5.10", + "autoprefixer": "^10.4.18", + "concurrently": "^8.2.2", + "cross-env": "^7.0.3", + "cssnano": "^6.1.0", + "gray-matter": "^4.0.3", + "markdown-it": "^14.0.0", + "postcss": "^8.4.35", + "postcss-cli": "^11.0.0", + "postcss-import": "^16.0.1", + "tailwindcss": "^3.4.1", + "yaml": "^2.4.1" + } + }, + "node_modules/@11ty/dependency-tree": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/@11ty/dependency-tree/-/dependency-tree-2.0.1.tgz", + "integrity": "sha512-5R+DsT9LJ9tXiSQ4y+KLFppCkQyXhzAm1AIuBWE/sbU0hSXY5pkhoqQYEcPJQFg/nglL+wD55iv2j+7O96UAvg==", + "dev": true }, - "node_modules/@babel/runtime": { - "version": "7.21.0", - "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.21.0.tgz", - "integrity": "sha512-xwII0//EObnq89Ji5AKYQaRYiW/nZ3llSv29d49IuxPhKbtJoLP+9QUUZ4nVragQVtaVGeZrpB+ZtG/Pdy/POw==", + "node_modules/@11ty/eleventy": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/@11ty/eleventy/-/eleventy-2.0.1.tgz", + "integrity": "sha512-t8XVUbCJByhVEa1RzO0zS2QzbL3wPY8ot1yUw9noqiSHxJWUwv6jiwm1/MZDPTYtkZH2ZHvdQIRQ5/SjG9XmLw==", "dev": true, "dependencies": { - "regenerator-runtime": "^0.13.11" + "@11ty/dependency-tree": "^2.0.1", + "@11ty/eleventy-dev-server": "^1.0.4", + "@11ty/eleventy-utils": "^1.0.1", + "@11ty/lodash-custom": "^4.17.21", + "@iarna/toml": "^2.2.5", + "@sindresorhus/slugify": "^1.1.2", + "bcp-47-normalize": "^1.1.1", + "chokidar": "^3.5.3", + "cross-spawn": "^7.0.3", + "debug": "^4.3.4", + "dependency-graph": "^0.11.0", + "ejs": "^3.1.9", + "fast-glob": "^3.2.12", + "graceful-fs": "^4.2.11", + "gray-matter": "^4.0.3", + "hamljs": "^0.6.2", + "handlebars": "^4.7.7", + "is-glob": "^4.0.3", + "iso-639-1": "^2.1.15", + "kleur": "^4.1.5", + "liquidjs": "^10.7.0", + "luxon": "^3.3.0", + "markdown-it": "^13.0.1", + "micromatch": "^4.0.5", + "minimist": "^1.2.8", + "moo": "^0.5.2", + "multimatch": "^5.0.0", + "mustache": "^4.2.0", + "normalize-path": "^3.0.0", + "nunjucks": "^3.2.3", + "path-to-regexp": "^6.2.1", + "please-upgrade-node": "^3.2.0", + "posthtml": "^0.16.6", + "posthtml-urls": "^1.0.0", + "pug": "^3.0.2", + "recursive-copy": "^2.0.14", + "semver": "^7.3.8", + "slugify": "^1.6.6" + }, + "bin": { + "eleventy": "cmd.js" }, "engines": { - "node": ">=6.9.0" + "node": ">=14" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/11ty" } }, - "node_modules/@discoveryjs/json-ext": { - "version": "0.5.7", - "resolved": "https://registry.npmjs.org/@discoveryjs/json-ext/-/json-ext-0.5.7.tgz", - "integrity": "sha512-dBVuXR082gk3jsFp7Rd/JI4kytwGHecnCoTtXFb7DB6CNHp4rg5k1bhg0nWdLGLnOV71lmDzGQaLMy8iPLY0pw==", + "node_modules/@11ty/eleventy-dev-server": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/@11ty/eleventy-dev-server/-/eleventy-dev-server-1.0.4.tgz", + "integrity": "sha512-qVBmV2G1KF/0o5B/3fITlrrDHy4bONUI2YuN3/WJ3BNw4NU1d/we8XhKrlgq13nNvHoBx5czYp3LZt8qRG53Fg==", "dev": true, + "dependencies": { + "@11ty/eleventy-utils": "^1.0.1", + "chokidar": "^3.5.3", + "debug": "^4.3.4", + "dev-ip": "^1.0.1", + "finalhandler": "^1.2.0", + "mime": "^3.0.0", + "minimist": "^1.2.8", + "morphdom": "^2.7.0", + "please-upgrade-node": "^3.2.0", + "ssri": "^8.0.1", + "ws": "^8.13.0" + }, + "bin": { + "eleventy-dev-server": "cmd.js" + }, "engines": { - "node": ">=10.0.0" + "node": ">=14" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/11ty" } }, - "node_modules/@jridgewell/gen-mapping": { - "version": "0.3.3", - "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.3.tgz", - "integrity": "sha512-HLhSWOLRi875zjjMG/r+Nv0oCW8umGb0BgEhyX3dDX3egwZtB8PqLnjz3yedt8R5StBrzcg4aBpnh8UA9D1BoQ==", + "node_modules/@11ty/eleventy-fetch": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/@11ty/eleventy-fetch/-/eleventy-fetch-4.0.1.tgz", + "integrity": "sha512-yIiLM5ziBmg86i4TlXpBdcIygJHvh/GgPJyAiFOckO9H4y9cQDM8eIcJCUQ4Mum0NEVui/OjhEut2R08xw0vlQ==", "dev": true, "dependencies": { - "@jridgewell/set-array": "^1.0.1", - "@jridgewell/sourcemap-codec": "^1.4.10", - "@jridgewell/trace-mapping": "^0.3.9" + "debug": "^4.3.4", + "flat-cache": "^3.0.4", + "node-fetch": "^2.6.7", + "p-queue": "^6.6.2" }, "engines": { - "node": ">=6.0.0" + "node": ">=14" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/11ty" } }, - "node_modules/@jridgewell/resolve-uri": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.0.tgz", - "integrity": "sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w==", + "node_modules/@11ty/eleventy-img": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/@11ty/eleventy-img/-/eleventy-img-4.0.2.tgz", + "integrity": "sha512-MSCkZRJk9rWa7nojx9HBMZJePOrm+V3XNpT091qguj61SG5UsgXbxAkoeejO3npmKIQJTyVIV/rrA6d7xZYOvw==", "dev": true, + "dependencies": { + "@11ty/eleventy-fetch": "^4.0.0", + "brotli-size": "^4.0.0", + "debug": "^4.3.4", + "entities": "^4.5.0", + "image-size": "^1.1.1", + "p-queue": "^6.6.2", + "sharp": "^0.33.2" + }, "engines": { - "node": ">=6.0.0" + "node": ">=18" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/11ty" } }, - "node_modules/@jridgewell/set-array": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.2.tgz", - "integrity": "sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==", + "node_modules/@11ty/eleventy-img/node_modules/entities": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/entities/-/entities-4.5.0.tgz", + "integrity": "sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==", "dev": true, "engines": { - "node": ">=6.0.0" + "node": ">=0.12" + }, + "funding": { + "url": "https://github.com/fb55/entities?sponsor=1" } }, - "node_modules/@jridgewell/source-map": { - "version": "0.3.3", - "resolved": "https://registry.npmjs.org/@jridgewell/source-map/-/source-map-0.3.3.tgz", - "integrity": "sha512-b+fsZXeLYi9fEULmfBrhxn4IrPlINf8fiNarzTof004v3lFdntdwa9PF7vFJqm3mg7s+ScJMxXaE3Acp1irZcg==", + "node_modules/@11ty/eleventy-utils": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@11ty/eleventy-utils/-/eleventy-utils-1.0.2.tgz", + "integrity": "sha512-Zy2leMK1DQR6Q6ZPSagv7QpJaAz9uVbb+RmVetYFp3foMeQtOSZx7w2u5daRFmP+PeNq9vO9H4xtBToYFWZwHA==", "dev": true, "dependencies": { - "@jridgewell/gen-mapping": "^0.3.0", - "@jridgewell/trace-mapping": "^0.3.9" + "normalize-path": "^3.0.0" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/11ty" } }, - "node_modules/@jridgewell/sourcemap-codec": { - "version": "1.4.14", - "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz", - "integrity": "sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==", + "node_modules/@11ty/eleventy/node_modules/argparse": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", "dev": true }, - "node_modules/@jridgewell/trace-mapping": { - "version": "0.3.18", - "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.18.tgz", - "integrity": "sha512-w+niJYzMHdd7USdiH2U6869nqhD2nbfZXND5Yp93qIbEmnDNk7PD48o+YchRVpzMU7M6jVCbenTR7PA1FLQ9pA==", - "dev": true, - "dependencies": { - "@jridgewell/resolve-uri": "3.1.0", - "@jridgewell/sourcemap-codec": "1.4.14" - } - }, - "node_modules/@types/eslint": { - "version": "8.37.0", - "resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-8.37.0.tgz", - "integrity": "sha512-Piet7dG2JBuDIfohBngQ3rCt7MgO9xCO4xIMKxBThCq5PNRB91IjlJ10eJVwfoNtvTErmxLzwBZ7rHZtbOMmFQ==", + "node_modules/@11ty/eleventy/node_modules/linkify-it": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/linkify-it/-/linkify-it-4.0.1.tgz", + "integrity": "sha512-C7bfi1UZmoj8+PQx22XyeXCuBlokoyWQL5pWSP+EI6nzRylyThouddufc2c1NDIcP9k5agmN9fLpA7VNJfIiqw==", "dev": true, "dependencies": { - "@types/estree": "*", - "@types/json-schema": "*" + "uc.micro": "^1.0.1" } }, - "node_modules/@types/eslint-scope": { - "version": "3.7.4", - "resolved": "https://registry.npmjs.org/@types/eslint-scope/-/eslint-scope-3.7.4.tgz", - "integrity": "sha512-9K4zoImiZc3HlIp6AVUDE4CWYx22a+lhSZMYNpbjW04+YF0KWj4pJXnEMjdnFTiQibFFmElcsasJXDbdI/EPhA==", + "node_modules/@11ty/eleventy/node_modules/markdown-it": { + "version": "13.0.2", + "resolved": "https://registry.npmjs.org/markdown-it/-/markdown-it-13.0.2.tgz", + "integrity": "sha512-FtwnEuuK+2yVU7goGn/MJ0WBZMM9ZPgU9spqlFs7/A/pDIUNSOQZhUgOqYCficIuR2QaFnrt8LHqBWsbTAoI5w==", "dev": true, "dependencies": { - "@types/eslint": "*", - "@types/estree": "*" + "argparse": "^2.0.1", + "entities": "~3.0.1", + "linkify-it": "^4.0.1", + "mdurl": "^1.0.1", + "uc.micro": "^1.0.5" + }, + "bin": { + "markdown-it": "bin/markdown-it.js" } }, - "node_modules/@types/estree": { + "node_modules/@11ty/eleventy/node_modules/mdurl": { "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.1.tgz", - "integrity": "sha512-LG4opVs2ANWZ1TJoKc937iMmNstM/d0ae1vNbnBvBhqCSezgVUOzcLCqbI5elV8Vy6WKwKjaqR+zO9VKirBBCA==", + "resolved": "https://registry.npmjs.org/mdurl/-/mdurl-1.0.1.tgz", + "integrity": "sha512-/sKlQJCBYVY9Ers9hqzKou4H6V5UWc/M59TH2dvkt+84itfnq7uFOMLpOiOS4ujvHP4etln18fmIxA5R5fll0g==", "dev": true }, - "node_modules/@types/json-schema": { - "version": "7.0.11", - "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.11.tgz", - "integrity": "sha512-wOuvG1SN4Us4rez+tylwwwCV1psiNVOkJeM3AUWUNWg/jDQY2+HE/444y5gc+jBmRqASOm2Oeh5c1axHobwRKQ==", + "node_modules/@11ty/eleventy/node_modules/uc.micro": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/uc.micro/-/uc.micro-1.0.6.tgz", + "integrity": "sha512-8Y75pvTYkLJW2hWQHXxoqRgV7qb9B+9vFEtidML+7koHUFapnVJAZ6cKs+Qjz5Aw3aZWHMC6u0wJE3At+nSGwA==", "dev": true }, - "node_modules/@types/node": { - "version": "18.15.12", - "resolved": "https://registry.npmjs.org/@types/node/-/node-18.15.12.tgz", - "integrity": "sha512-Wha1UwsB3CYdqUm2PPzh/1gujGCNtWVUYF0mB00fJFoR4gTyWTDPjSm+zBF787Ahw8vSGgBja90MkgFwvB86Dg==", - "dev": true - }, - "node_modules/@webassemblyjs/ast": { - "version": "1.11.5", - "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.11.5.tgz", - "integrity": "sha512-LHY/GSAZZRpsNQH+/oHqhRQ5FT7eoULcBqgfyTB5nQHogFnK3/7QoN7dLnwSE/JkUAF0SrRuclT7ODqMFtWxxQ==", + "node_modules/@11ty/lodash-custom": { + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/@11ty/lodash-custom/-/lodash-custom-4.17.21.tgz", + "integrity": "sha512-Mqt6im1xpb1Ykn3nbcCovWXK3ggywRJa+IXIdoz4wIIK+cvozADH63lexcuPpGS/gJ6/m2JxyyXDyupkMr5DHw==", "dev": true, - "dependencies": { - "@webassemblyjs/helper-numbers": "1.11.5", - "@webassemblyjs/helper-wasm-bytecode": "1.11.5" + "engines": { + "node": ">=14" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/11ty" } }, - "node_modules/@webassemblyjs/floating-point-hex-parser": { - "version": "1.11.5", - "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.11.5.tgz", - "integrity": "sha512-1j1zTIC5EZOtCplMBG/IEwLtUojtwFVwdyVMbL/hwWqbzlQoJsWCOavrdnLkemwNoC/EOwtUFch3fuo+cbcXYQ==", - "dev": true - }, - "node_modules/@webassemblyjs/helper-api-error": { - "version": "1.11.5", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.11.5.tgz", - "integrity": "sha512-L65bDPmfpY0+yFrsgz8b6LhXmbbs38OnwDCf6NpnMUYqa+ENfE5Dq9E42ny0qz/PdR0LJyq/T5YijPnU8AXEpA==", - "dev": true - }, - "node_modules/@webassemblyjs/helper-buffer": { - "version": "1.11.5", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.11.5.tgz", - "integrity": "sha512-fDKo1gstwFFSfacIeH5KfwzjykIE6ldh1iH9Y/8YkAZrhmu4TctqYjSh7t0K2VyDSXOZJ1MLhht/k9IvYGcIxg==", - "dev": true - }, - "node_modules/@webassemblyjs/helper-numbers": { - "version": "1.11.5", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-numbers/-/helper-numbers-1.11.5.tgz", - "integrity": "sha512-DhykHXM0ZABqfIGYNv93A5KKDw/+ywBFnuWybZZWcuzWHfbp21wUfRkbtz7dMGwGgT4iXjWuhRMA2Mzod6W4WA==", + "node_modules/@alloc/quick-lru": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/@alloc/quick-lru/-/quick-lru-5.2.0.tgz", + "integrity": "sha512-UrcABB+4bUrFABwbluTIBErXwvbsU/V7TZWfmbgJfbkwiBuziS9gxdODUyuiecfdGQ85jglMW6juS3+z5TsKLw==", "dev": true, - "dependencies": { - "@webassemblyjs/floating-point-hex-parser": "1.11.5", - "@webassemblyjs/helper-api-error": "1.11.5", - "@xtuc/long": "4.2.2" + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/@webassemblyjs/helper-wasm-bytecode": { - "version": "1.11.5", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.11.5.tgz", - "integrity": "sha512-oC4Qa0bNcqnjAowFn7MPCETQgDYytpsfvz4ujZz63Zu/a/v71HeCAAmZsgZ3YVKec3zSPYytG3/PrRCqbtcAvA==", - "dev": true - }, - "node_modules/@webassemblyjs/helper-wasm-section": { - "version": "1.11.5", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.11.5.tgz", - "integrity": "sha512-uEoThA1LN2NA+K3B9wDo3yKlBfVtC6rh0i4/6hvbz071E8gTNZD/pT0MsBf7MeD6KbApMSkaAK0XeKyOZC7CIA==", + "node_modules/@babel/helper-string-parser": { + "version": "7.23.4", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.23.4.tgz", + "integrity": "sha512-803gmbQdqwdf4olxrX4AJyFBV/RTr3rSmOj0rKwesmzlfhYNDEs+/iOcznzpNWlJlIlTJC2QfPFcHB6DlzdVLQ==", "dev": true, - "dependencies": { - "@webassemblyjs/ast": "1.11.5", - "@webassemblyjs/helper-buffer": "1.11.5", - "@webassemblyjs/helper-wasm-bytecode": "1.11.5", - "@webassemblyjs/wasm-gen": "1.11.5" + "engines": { + "node": ">=6.9.0" } }, - "node_modules/@webassemblyjs/ieee754": { - "version": "1.11.5", - "resolved": "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.11.5.tgz", - "integrity": "sha512-37aGq6qVL8A8oPbPrSGMBcp38YZFXcHfiROflJn9jxSdSMMM5dS5P/9e2/TpaJuhE+wFrbukN2WI6Hw9MH5acg==", + "node_modules/@babel/helper-validator-identifier": { + "version": "7.22.20", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.22.20.tgz", + "integrity": "sha512-Y4OZ+ytlatR8AI+8KZfKuL5urKp7qey08ha31L8b3BwewJAoJamTzyvxPR/5D+KkdJCGPq/+8TukHBlY10FX9A==", "dev": true, - "dependencies": { - "@xtuc/ieee754": "^1.2.0" + "engines": { + "node": ">=6.9.0" } }, - "node_modules/@webassemblyjs/leb128": { - "version": "1.11.5", - "resolved": "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.11.5.tgz", - "integrity": "sha512-ajqrRSXaTJoPW+xmkfYN6l8VIeNnR4vBOTQO9HzR7IygoCcKWkICbKFbVTNMjMgMREqXEr0+2M6zukzM47ZUfQ==", + "node_modules/@babel/parser": { + "version": "7.24.0", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.24.0.tgz", + "integrity": "sha512-QuP/FxEAzMSjXygs8v4N9dvdXzEHN4W1oF3PxuWAtPo08UdM17u89RDMgjLn/mlc56iM0HlLmVkO/wgR+rDgHg==", "dev": true, - "dependencies": { - "@xtuc/long": "4.2.2" + "bin": { + "parser": "bin/babel-parser.js" + }, + "engines": { + "node": ">=6.0.0" } }, - "node_modules/@webassemblyjs/utf8": { - "version": "1.11.5", - "resolved": "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.11.5.tgz", - "integrity": "sha512-WiOhulHKTZU5UPlRl53gHR8OxdGsSOxqfpqWeA2FmcwBMaoEdz6b2x2si3IwC9/fSPLfe8pBMRTHVMk5nlwnFQ==", - "dev": true - }, - "node_modules/@webassemblyjs/wasm-edit": { - "version": "1.11.5", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.11.5.tgz", - "integrity": "sha512-C0p9D2fAu3Twwqvygvf42iGCQ4av8MFBLiTb+08SZ4cEdwzWx9QeAHDo1E2k+9s/0w1DM40oflJOpkZ8jW4HCQ==", + "node_modules/@babel/runtime": { + "version": "7.24.0", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.24.0.tgz", + "integrity": "sha512-Chk32uHMg6TnQdvw2e9IlqPpFX/6NLuK0Ys2PqLb7/gL5uFn9mXvK715FGLlOLQrcO4qIkNHkvPGktzzXexsFw==", "dev": true, "dependencies": { - "@webassemblyjs/ast": "1.11.5", - "@webassemblyjs/helper-buffer": "1.11.5", - "@webassemblyjs/helper-wasm-bytecode": "1.11.5", - "@webassemblyjs/helper-wasm-section": "1.11.5", - "@webassemblyjs/wasm-gen": "1.11.5", - "@webassemblyjs/wasm-opt": "1.11.5", - "@webassemblyjs/wasm-parser": "1.11.5", - "@webassemblyjs/wast-printer": "1.11.5" + "regenerator-runtime": "^0.14.0" + }, + "engines": { + "node": ">=6.9.0" } }, - "node_modules/@webassemblyjs/wasm-gen": { - "version": "1.11.5", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.11.5.tgz", - "integrity": "sha512-14vteRlRjxLK9eSyYFvw1K8Vv+iPdZU0Aebk3j6oB8TQiQYuO6hj9s4d7qf6f2HJr2khzvNldAFG13CgdkAIfA==", + "node_modules/@babel/types": { + "version": "7.24.0", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.24.0.tgz", + "integrity": "sha512-+j7a5c253RfKh8iABBhywc8NSfP5LURe7Uh4qpsh6jc+aLJguvmIUBdjSdEMQv2bENrCR5MfRdjGo7vzS/ob7w==", "dev": true, "dependencies": { - "@webassemblyjs/ast": "1.11.5", - "@webassemblyjs/helper-wasm-bytecode": "1.11.5", - "@webassemblyjs/ieee754": "1.11.5", - "@webassemblyjs/leb128": "1.11.5", - "@webassemblyjs/utf8": "1.11.5" + "@babel/helper-string-parser": "^7.23.4", + "@babel/helper-validator-identifier": "^7.22.20", + "to-fast-properties": "^2.0.0" + }, + "engines": { + "node": ">=6.9.0" } }, - "node_modules/@webassemblyjs/wasm-opt": { - "version": "1.11.5", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.11.5.tgz", - "integrity": "sha512-tcKwlIXstBQgbKy1MlbDMlXaxpucn42eb17H29rawYLxm5+MsEmgPzeCP8B1Cl69hCice8LeKgZpRUAPtqYPgw==", + "node_modules/@emnapi/runtime": { + "version": "0.45.0", + "resolved": "https://registry.npmjs.org/@emnapi/runtime/-/runtime-0.45.0.tgz", + "integrity": "sha512-Txumi3td7J4A/xTTwlssKieHKTGl3j4A1tglBx72auZ49YK7ePY6XZricgIg9mnZT4xPfA+UPCUdnhRuEFDL+w==", "dev": true, + "optional": true, "dependencies": { - "@webassemblyjs/ast": "1.11.5", - "@webassemblyjs/helper-buffer": "1.11.5", - "@webassemblyjs/wasm-gen": "1.11.5", - "@webassemblyjs/wasm-parser": "1.11.5" + "tslib": "^2.4.0" } }, - "node_modules/@webassemblyjs/wasm-parser": { - "version": "1.11.5", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.11.5.tgz", - "integrity": "sha512-SVXUIwsLQlc8srSD7jejsfTU83g7pIGr2YYNb9oHdtldSxaOhvA5xwvIiWIfcX8PlSakgqMXsLpLfbbJ4cBYew==", - "dev": true, - "dependencies": { - "@webassemblyjs/ast": "1.11.5", - "@webassemblyjs/helper-api-error": "1.11.5", - "@webassemblyjs/helper-wasm-bytecode": "1.11.5", - "@webassemblyjs/ieee754": "1.11.5", - "@webassemblyjs/leb128": "1.11.5", - "@webassemblyjs/utf8": "1.11.5" - } + "node_modules/@iarna/toml": { + "version": "2.2.5", + "resolved": "https://registry.npmjs.org/@iarna/toml/-/toml-2.2.5.tgz", + "integrity": "sha512-trnsAYxU3xnS1gPHPyU961coFyLkh4gAD/0zQ5mymY4yOZ+CYvsPqUbOFSw0aDM4y0tV7tiFxL/1XfXPNC6IPg==", + "dev": true }, - "node_modules/@webassemblyjs/wast-printer": { - "version": "1.11.5", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.11.5.tgz", - "integrity": "sha512-f7Pq3wvg3GSPUPzR0F6bmI89Hdb+u9WXrSKc4v+N0aV0q6r42WoF92Jp2jEorBEBRoRNXgjp53nBniDXcqZYPA==", + "node_modules/@img/sharp-darwin-arm64": { + "version": "0.33.2", + "resolved": "https://registry.npmjs.org/@img/sharp-darwin-arm64/-/sharp-darwin-arm64-0.33.2.tgz", + "integrity": "sha512-itHBs1rPmsmGF9p4qRe++CzCgd+kFYktnsoR1sbIAfsRMrJZau0Tt1AH9KVnufc2/tU02Gf6Ibujx+15qRE03w==", + "cpu": [ + "arm64" + ], "dev": true, - "dependencies": { - "@webassemblyjs/ast": "1.11.5", - "@xtuc/long": "4.2.2" + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "glibc": ">=2.26", + "node": "^18.17.0 || ^20.3.0 || >=21.0.0", + "npm": ">=9.6.5", + "pnpm": ">=7.1.0", + "yarn": ">=3.2.0" + }, + "funding": { + "url": "https://opencollective.com/libvips" + }, + "optionalDependencies": { + "@img/sharp-libvips-darwin-arm64": "1.0.1" } }, - "node_modules/@webpack-cli/configtest": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/@webpack-cli/configtest/-/configtest-1.2.0.tgz", - "integrity": "sha512-4FB8Tj6xyVkyqjj1OaTqCjXYULB9FMkqQ8yGrZjRDrYh0nOE+7Lhs45WioWQQMV+ceFlE368Ukhe6xdvJM9Egg==", + "node_modules/@img/sharp-darwin-x64": { + "version": "0.33.2", + "resolved": "https://registry.npmjs.org/@img/sharp-darwin-x64/-/sharp-darwin-x64-0.33.2.tgz", + "integrity": "sha512-/rK/69Rrp9x5kaWBjVN07KixZanRr+W1OiyKdXcbjQD6KbW+obaTeBBtLUAtbBsnlTTmWthw99xqoOS7SsySDg==", + "cpu": [ + "x64" + ], "dev": true, - "peerDependencies": { - "webpack": "4.x.x || 5.x.x", - "webpack-cli": "4.x.x" + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "glibc": ">=2.26", + "node": "^18.17.0 || ^20.3.0 || >=21.0.0", + "npm": ">=9.6.5", + "pnpm": ">=7.1.0", + "yarn": ">=3.2.0" + }, + "funding": { + "url": "https://opencollective.com/libvips" + }, + "optionalDependencies": { + "@img/sharp-libvips-darwin-x64": "1.0.1" } }, - "node_modules/@webpack-cli/info": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/@webpack-cli/info/-/info-1.5.0.tgz", - "integrity": "sha512-e8tSXZpw2hPl2uMJY6fsMswaok5FdlGNRTktvFk2sD8RjH0hE2+XistawJx1vmKteh4NmGmNUrp+Tb2w+udPcQ==", + "node_modules/@img/sharp-libvips-darwin-arm64": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@img/sharp-libvips-darwin-arm64/-/sharp-libvips-darwin-arm64-1.0.1.tgz", + "integrity": "sha512-kQyrSNd6lmBV7O0BUiyu/OEw9yeNGFbQhbxswS1i6rMDwBBSX+e+rPzu3S+MwAiGU3HdLze3PanQ4Xkfemgzcw==", + "cpu": [ + "arm64" + ], "dev": true, - "dependencies": { - "envinfo": "^7.7.3" + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "macos": ">=11", + "npm": ">=9.6.5", + "pnpm": ">=7.1.0", + "yarn": ">=3.2.0" }, - "peerDependencies": { - "webpack-cli": "4.x.x" + "funding": { + "url": "https://opencollective.com/libvips" } }, - "node_modules/@webpack-cli/serve": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/@webpack-cli/serve/-/serve-1.7.0.tgz", - "integrity": "sha512-oxnCNGj88fL+xzV+dacXs44HcDwf1ovs3AuEzvP7mqXw7fQntqIhQ1BRmynh4qEKQSSSRSWVyXRjmTbZIX9V2Q==", + "node_modules/@img/sharp-libvips-darwin-x64": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@img/sharp-libvips-darwin-x64/-/sharp-libvips-darwin-x64-1.0.1.tgz", + "integrity": "sha512-eVU/JYLPVjhhrd8Tk6gosl5pVlvsqiFlt50wotCvdkFGf+mDNBJxMh+bvav+Wt3EBnNZWq8Sp2I7XfSjm8siog==", + "cpu": [ + "x64" + ], "dev": true, - "peerDependencies": { - "webpack-cli": "4.x.x" + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "macos": ">=10.13", + "npm": ">=9.6.5", + "pnpm": ">=7.1.0", + "yarn": ">=3.2.0" }, - "peerDependenciesMeta": { - "webpack-dev-server": { - "optional": true - } + "funding": { + "url": "https://opencollective.com/libvips" } }, - "node_modules/@xtuc/ieee754": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/@xtuc/ieee754/-/ieee754-1.2.0.tgz", - "integrity": "sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA==", - "dev": true - }, - "node_modules/@xtuc/long": { - "version": "4.2.2", - "resolved": "https://registry.npmjs.org/@xtuc/long/-/long-4.2.2.tgz", - "integrity": "sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==", - "dev": true - }, - "node_modules/acorn": { - "version": "8.8.2", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.8.2.tgz", - "integrity": "sha512-xjIYgE8HBrkpd/sJqOGNspf8uHG+NOHGOw6a/Urj8taM2EXfdNAH2oFcPeIFfsv3+kz/mJrS5VuMqbNLjCa2vw==", + "node_modules/@img/sharp-libvips-linux-arm": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-arm/-/sharp-libvips-linux-arm-1.0.1.tgz", + "integrity": "sha512-FtdMvR4R99FTsD53IA3LxYGghQ82t3yt0ZQ93WMZ2xV3dqrb0E8zq4VHaTOuLEAuA83oDawHV3fd+BsAPadHIQ==", + "cpu": [ + "arm" + ], "dev": true, - "bin": { - "acorn": "bin/acorn" - }, + "optional": true, + "os": [ + "linux" + ], "engines": { - "node": ">=0.4.0" + "glibc": ">=2.28", + "npm": ">=9.6.5", + "pnpm": ">=7.1.0", + "yarn": ">=3.2.0" + }, + "funding": { + "url": "https://opencollective.com/libvips" } }, - "node_modules/acorn-import-assertions": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/acorn-import-assertions/-/acorn-import-assertions-1.8.0.tgz", - "integrity": "sha512-m7VZ3jwz4eK6A4Vtt8Ew1/mNbP24u0FhdyfA7fSvnJR6LMdfOYnmuIrrJAgrYfYJ10F/otaHTtrtrtmHdMNzEw==", + "node_modules/@img/sharp-libvips-linux-arm64": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-arm64/-/sharp-libvips-linux-arm64-1.0.1.tgz", + "integrity": "sha512-bnGG+MJjdX70mAQcSLxgeJco11G+MxTz+ebxlz8Y3dxyeb3Nkl7LgLI0mXupoO+u1wRNx/iRj5yHtzA4sde1yA==", + "cpu": [ + "arm64" + ], "dev": true, - "peerDependencies": { - "acorn": "^8" + "optional": true, + "os": [ + "linux" + ], + "engines": { + "glibc": ">=2.26", + "npm": ">=9.6.5", + "pnpm": ">=7.1.0", + "yarn": ">=3.2.0" + }, + "funding": { + "url": "https://opencollective.com/libvips" } }, - "node_modules/adjust-sourcemap-loader": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/adjust-sourcemap-loader/-/adjust-sourcemap-loader-4.0.0.tgz", - "integrity": "sha512-OXwN5b9pCUXNQHJpwwD2qP40byEmSgzj8B4ydSN0uMNYWiFmJ6x6KwUllMmfk8Rwu/HJDFR7U8ubsWBoN0Xp0A==", + "node_modules/@img/sharp-libvips-linux-s390x": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-s390x/-/sharp-libvips-linux-s390x-1.0.1.tgz", + "integrity": "sha512-3+rzfAR1YpMOeA2zZNp+aYEzGNWK4zF3+sdMxuCS3ey9HhDbJ66w6hDSHDMoap32DueFwhhs3vwooAB2MaK4XQ==", + "cpu": [ + "s390x" + ], "dev": true, - "dependencies": { - "loader-utils": "^2.0.0", - "regex-parser": "^2.2.11" - }, + "optional": true, + "os": [ + "linux" + ], "engines": { - "node": ">=8.9" + "glibc": ">=2.28", + "npm": ">=9.6.5", + "pnpm": ">=7.1.0", + "yarn": ">=3.2.0" + }, + "funding": { + "url": "https://opencollective.com/libvips" } }, - "node_modules/ajv": { - "version": "8.12.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz", - "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==", + "node_modules/@img/sharp-libvips-linux-x64": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-x64/-/sharp-libvips-linux-x64-1.0.1.tgz", + "integrity": "sha512-3NR1mxFsaSgMMzz1bAnnKbSAI+lHXVTqAHgc1bgzjHuXjo4hlscpUxc0vFSAPKI3yuzdzcZOkq7nDPrP2F8Jgw==", + "cpu": [ + "x64" + ], "dev": true, - "dependencies": { - "fast-deep-equal": "^3.1.1", - "json-schema-traverse": "^1.0.0", - "require-from-string": "^2.0.2", - "uri-js": "^4.2.2" + "optional": true, + "os": [ + "linux" + ], + "engines": { + "glibc": ">=2.26", + "npm": ">=9.6.5", + "pnpm": ">=7.1.0", + "yarn": ">=3.2.0" }, "funding": { - "type": "github", - "url": "https://github.com/sponsors/epoberezkin" + "url": "https://opencollective.com/libvips" } }, - "node_modules/ajv-formats": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ajv-formats/-/ajv-formats-2.1.1.tgz", - "integrity": "sha512-Wx0Kx52hxE7C18hkMEggYlEifqWZtYaRgouJor+WMdPnQyEK13vgEWyVNup7SoeeoLMsr4kf5h6dOW11I15MUA==", + "node_modules/@img/sharp-libvips-linuxmusl-arm64": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linuxmusl-arm64/-/sharp-libvips-linuxmusl-arm64-1.0.1.tgz", + "integrity": "sha512-5aBRcjHDG/T6jwC3Edl3lP8nl9U2Yo8+oTl5drd1dh9Z1EBfzUKAJFUDTDisDjUwc7N4AjnPGfCA3jl3hY8uDg==", + "cpu": [ + "arm64" + ], "dev": true, - "dependencies": { - "ajv": "^8.0.0" - }, - "peerDependencies": { - "ajv": "^8.0.0" + "optional": true, + "os": [ + "linux" + ], + "engines": { + "musl": ">=1.2.2", + "npm": ">=9.6.5", + "pnpm": ">=7.1.0", + "yarn": ">=3.2.0" }, - "peerDependenciesMeta": { - "ajv": { - "optional": true - } + "funding": { + "url": "https://opencollective.com/libvips" } }, - "node_modules/ajv-keywords": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-5.1.0.tgz", - "integrity": "sha512-YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw==", + "node_modules/@img/sharp-libvips-linuxmusl-x64": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linuxmusl-x64/-/sharp-libvips-linuxmusl-x64-1.0.1.tgz", + "integrity": "sha512-dcT7inI9DBFK6ovfeWRe3hG30h51cBAP5JXlZfx6pzc/Mnf9HFCQDLtYf4MCBjxaaTfjCCjkBxcy3XzOAo5txw==", + "cpu": [ + "x64" + ], "dev": true, - "dependencies": { - "fast-deep-equal": "^3.1.3" + "optional": true, + "os": [ + "linux" + ], + "engines": { + "musl": ">=1.2.2", + "npm": ">=9.6.5", + "pnpm": ">=7.1.0", + "yarn": ">=3.2.0" }, - "peerDependencies": { - "ajv": "^8.8.2" + "funding": { + "url": "https://opencollective.com/libvips" } }, - "node_modules/all-contributors-cli": { - "version": "6.24.0", - "resolved": "https://registry.npmjs.org/all-contributors-cli/-/all-contributors-cli-6.24.0.tgz", - "integrity": "sha512-7oSKr2PnqxsOotuSwciltcFTS1eVRdjR0cn99hbElfff7gRQBShVhsf/XBprY41sLcgqTk0l0MKgKv6QNgZdMg==", + "node_modules/@img/sharp-linux-arm": { + "version": "0.33.2", + "resolved": "https://registry.npmjs.org/@img/sharp-linux-arm/-/sharp-linux-arm-0.33.2.tgz", + "integrity": "sha512-Fndk/4Zq3vAc4G/qyfXASbS3HBZbKrlnKZLEJzPLrXoJuipFNNwTes71+Ki1hwYW5lch26niRYoZFAtZVf3EGA==", + "cpu": [ + "arm" + ], "dev": true, - "dependencies": { - "@babel/runtime": "^7.7.6", - "async": "^3.1.0", - "chalk": "^4.0.0", - "didyoumean": "^1.2.1", - "inquirer": "^7.3.3", - "json-fixer": "^1.6.8", - "lodash": "^4.11.2", - "node-fetch": "^2.6.0", - "pify": "^5.0.0", - "yargs": "^15.0.1" + "optional": true, + "os": [ + "linux" + ], + "engines": { + "glibc": ">=2.28", + "node": "^18.17.0 || ^20.3.0 || >=21.0.0", + "npm": ">=9.6.5", + "pnpm": ">=7.1.0", + "yarn": ">=3.2.0" }, - "bin": { - "all-contributors": "dist/cli.js" + "funding": { + "url": "https://opencollective.com/libvips" }, - "engines": { - "node": ">=4" + "optionalDependencies": { + "@img/sharp-libvips-linux-arm": "1.0.1" } }, - "node_modules/ansi-escapes": { - "version": "4.3.2", - "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.2.tgz", - "integrity": "sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==", + "node_modules/@img/sharp-linux-arm64": { + "version": "0.33.2", + "resolved": "https://registry.npmjs.org/@img/sharp-linux-arm64/-/sharp-linux-arm64-0.33.2.tgz", + "integrity": "sha512-pz0NNo882vVfqJ0yNInuG9YH71smP4gRSdeL09ukC2YLE6ZyZePAlWKEHgAzJGTiOh8Qkaov6mMIMlEhmLdKew==", + "cpu": [ + "arm64" + ], "dev": true, - "dependencies": { - "type-fest": "^0.21.3" - }, + "optional": true, + "os": [ + "linux" + ], "engines": { - "node": ">=8" + "glibc": ">=2.26", + "node": "^18.17.0 || ^20.3.0 || >=21.0.0", + "npm": ">=9.6.5", + "pnpm": ">=7.1.0", + "yarn": ">=3.2.0" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "url": "https://opencollective.com/libvips" + }, + "optionalDependencies": { + "@img/sharp-libvips-linux-arm64": "1.0.1" } }, - "node_modules/ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "node_modules/@img/sharp-linux-s390x": { + "version": "0.33.2", + "resolved": "https://registry.npmjs.org/@img/sharp-linux-s390x/-/sharp-linux-s390x-0.33.2.tgz", + "integrity": "sha512-MBoInDXDppMfhSzbMmOQtGfloVAflS2rP1qPcUIiITMi36Mm5YR7r0ASND99razjQUpHTzjrU1flO76hKvP5RA==", + "cpu": [ + "s390x" + ], "dev": true, + "optional": true, + "os": [ + "linux" + ], "engines": { - "node": ">=8" + "glibc": ">=2.28", + "node": "^18.17.0 || ^20.3.0 || >=21.0.0", + "npm": ">=9.6.5", + "pnpm": ">=7.1.0", + "yarn": ">=3.2.0" + }, + "funding": { + "url": "https://opencollective.com/libvips" + }, + "optionalDependencies": { + "@img/sharp-libvips-linux-s390x": "1.0.1" } }, - "node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "node_modules/@img/sharp-linux-x64": { + "version": "0.33.2", + "resolved": "https://registry.npmjs.org/@img/sharp-linux-x64/-/sharp-linux-x64-0.33.2.tgz", + "integrity": "sha512-xUT82H5IbXewKkeF5aiooajoO1tQV4PnKfS/OZtb5DDdxS/FCI/uXTVZ35GQ97RZXsycojz/AJ0asoz6p2/H/A==", + "cpu": [ + "x64" + ], "dev": true, - "dependencies": { - "color-convert": "^2.0.1" + "optional": true, + "os": [ + "linux" + ], + "engines": { + "glibc": ">=2.26", + "node": "^18.17.0 || ^20.3.0 || >=21.0.0", + "npm": ">=9.6.5", + "pnpm": ">=7.1.0", + "yarn": ">=3.2.0" + }, + "funding": { + "url": "https://opencollective.com/libvips" }, + "optionalDependencies": { + "@img/sharp-libvips-linux-x64": "1.0.1" + } + }, + "node_modules/@img/sharp-linuxmusl-arm64": { + "version": "0.33.2", + "resolved": "https://registry.npmjs.org/@img/sharp-linuxmusl-arm64/-/sharp-linuxmusl-arm64-0.33.2.tgz", + "integrity": "sha512-F+0z8JCu/UnMzg8IYW1TMeiViIWBVg7IWP6nE0p5S5EPQxlLd76c8jYemG21X99UzFwgkRo5yz2DS+zbrnxZeA==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], "engines": { - "node": ">=8" + "musl": ">=1.2.2", + "node": "^18.17.0 || ^20.3.0 || >=21.0.0", + "npm": ">=9.6.5", + "pnpm": ">=7.1.0", + "yarn": ">=3.2.0" }, "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" + "url": "https://opencollective.com/libvips" + }, + "optionalDependencies": { + "@img/sharp-libvips-linuxmusl-arm64": "1.0.1" } }, - "node_modules/anymatch": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", - "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", + "node_modules/@img/sharp-linuxmusl-x64": { + "version": "0.33.2", + "resolved": "https://registry.npmjs.org/@img/sharp-linuxmusl-x64/-/sharp-linuxmusl-x64-0.33.2.tgz", + "integrity": "sha512-+ZLE3SQmSL+Fn1gmSaM8uFusW5Y3J9VOf+wMGNnTtJUMUxFhv+P4UPaYEYT8tqnyYVaOVGgMN/zsOxn9pSsO2A==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "musl": ">=1.2.2", + "node": "^18.17.0 || ^20.3.0 || >=21.0.0", + "npm": ">=9.6.5", + "pnpm": ">=7.1.0", + "yarn": ">=3.2.0" + }, + "funding": { + "url": "https://opencollective.com/libvips" + }, + "optionalDependencies": { + "@img/sharp-libvips-linuxmusl-x64": "1.0.1" + } + }, + "node_modules/@img/sharp-wasm32": { + "version": "0.33.2", + "resolved": "https://registry.npmjs.org/@img/sharp-wasm32/-/sharp-wasm32-0.33.2.tgz", + "integrity": "sha512-fLbTaESVKuQcpm8ffgBD7jLb/CQLcATju/jxtTXR1XCLwbOQt+OL5zPHSDMmp2JZIeq82e18yE0Vv7zh6+6BfQ==", + "cpu": [ + "wasm32" + ], "dev": true, + "optional": true, "dependencies": { - "normalize-path": "^3.0.0", - "picomatch": "^2.0.4" + "@emnapi/runtime": "^0.45.0" }, "engines": { - "node": ">= 8" + "node": "^18.17.0 || ^20.3.0 || >=21.0.0", + "npm": ">=9.6.5", + "pnpm": ">=7.1.0", + "yarn": ">=3.2.0" + }, + "funding": { + "url": "https://opencollective.com/libvips" } }, - "node_modules/async": { - "version": "3.2.4", - "resolved": "https://registry.npmjs.org/async/-/async-3.2.4.tgz", - "integrity": "sha512-iAB+JbDEGXhyIUavoDl9WP/Jj106Kz9DEn1DPgYw5ruDn0e3Wgi3sKFm55sASdGBNOQB8F59d9qQ7deqrHA8wQ==", - "dev": true - }, - "node_modules/big.js": { - "version": "5.2.2", - "resolved": "https://registry.npmjs.org/big.js/-/big.js-5.2.2.tgz", - "integrity": "sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ==", + "node_modules/@img/sharp-win32-ia32": { + "version": "0.33.2", + "resolved": "https://registry.npmjs.org/@img/sharp-win32-ia32/-/sharp-win32-ia32-0.33.2.tgz", + "integrity": "sha512-okBpql96hIGuZ4lN3+nsAjGeggxKm7hIRu9zyec0lnfB8E7Z6p95BuRZzDDXZOl2e8UmR4RhYt631i7mfmKU8g==", + "cpu": [ + "ia32" + ], "dev": true, + "optional": true, + "os": [ + "win32" + ], "engines": { - "node": "*" + "node": "^18.17.0 || ^20.3.0 || >=21.0.0", + "npm": ">=9.6.5", + "pnpm": ">=7.1.0", + "yarn": ">=3.2.0" + }, + "funding": { + "url": "https://opencollective.com/libvips" } }, - "node_modules/binary-extensions": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", - "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==", + "node_modules/@img/sharp-win32-x64": { + "version": "0.33.2", + "resolved": "https://registry.npmjs.org/@img/sharp-win32-x64/-/sharp-win32-x64-0.33.2.tgz", + "integrity": "sha512-E4magOks77DK47FwHUIGH0RYWSgRBfGdK56kIHSVeB9uIS4pPFr4N2kIVsXdQQo4LzOsENKV5KAhRlRL7eMAdg==", + "cpu": [ + "x64" + ], "dev": true, + "optional": true, + "os": [ + "win32" + ], "engines": { - "node": ">=8" + "node": "^18.17.0 || ^20.3.0 || >=21.0.0", + "npm": ">=9.6.5", + "pnpm": ">=7.1.0", + "yarn": ">=3.2.0" + }, + "funding": { + "url": "https://opencollective.com/libvips" } }, - "node_modules/braces": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", - "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "node_modules/@isaacs/cliui": { + "version": "8.0.2", + "resolved": "https://registry.npmjs.org/@isaacs/cliui/-/cliui-8.0.2.tgz", + "integrity": "sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==", "dev": true, "dependencies": { - "fill-range": "^7.0.1" + "string-width": "^5.1.2", + "string-width-cjs": "npm:string-width@^4.2.0", + "strip-ansi": "^7.0.1", + "strip-ansi-cjs": "npm:strip-ansi@^6.0.1", + "wrap-ansi": "^8.1.0", + "wrap-ansi-cjs": "npm:wrap-ansi@^7.0.0" }, "engines": { - "node": ">=8" + "node": ">=12" } }, - "node_modules/browserslist": { - "version": "4.21.5", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.21.5.tgz", - "integrity": "sha512-tUkiguQGW7S3IhB7N+c2MV/HZPSCPAAiYBZXLsBhFB/PCy6ZKKsZrmBayHV9fdGV/ARIfJ14NkxKzRDjvp7L6w==", + "node_modules/@isaacs/cliui/node_modules/ansi-regex": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.0.1.tgz", + "integrity": "sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==", "dev": true, - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/browserslist" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/browserslist" - } - ], - "dependencies": { - "caniuse-lite": "^1.0.30001449", - "electron-to-chromium": "^1.4.284", - "node-releases": "^2.0.8", - "update-browserslist-db": "^1.0.10" - }, - "bin": { - "browserslist": "cli.js" - }, "engines": { - "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-regex?sponsor=1" } }, - "node_modules/buffer-from": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", - "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==", - "dev": true - }, - "node_modules/camelcase": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", - "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", + "node_modules/@isaacs/cliui/node_modules/ansi-styles": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-6.2.1.tgz", + "integrity": "sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==", "dev": true, "engines": { - "node": ">=6" + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "node_modules/caniuse-lite": { - "version": "1.0.30001480", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001480.tgz", - "integrity": "sha512-q7cpoPPvZYgtyC4VaBSN0Bt+PJ4c4EYRf0DrduInOz2SkFpHD5p3LnvEpqBp7UnJn+8x1Ogl1s38saUxe+ihQQ==", - "dev": true, - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/browserslist" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/caniuse-lite" - }, - { - "type": "github", - "url": "https://github.com/sponsors/ai" - } - ] + "node_modules/@isaacs/cliui/node_modules/emoji-regex": { + "version": "9.2.2", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz", + "integrity": "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==", + "dev": true }, - "node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "node_modules/@isaacs/cliui/node_modules/string-width": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-5.1.2.tgz", + "integrity": "sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==", "dev": true, "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" + "eastasianwidth": "^0.2.0", + "emoji-regex": "^9.2.2", + "strip-ansi": "^7.0.1" }, "engines": { - "node": ">=10" + "node": ">=12" }, "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/chardet": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/chardet/-/chardet-0.7.0.tgz", - "integrity": "sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==", - "dev": true - }, - "node_modules/chokidar": { - "version": "3.5.3", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz", - "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==", + "node_modules/@isaacs/cliui/node_modules/strip-ansi": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.1.0.tgz", + "integrity": "sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==", "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://paulmillr.com/funding/" - } - ], "dependencies": { - "anymatch": "~3.1.2", - "braces": "~3.0.2", - "glob-parent": "~5.1.2", - "is-binary-path": "~2.1.0", - "is-glob": "~4.0.1", - "normalize-path": "~3.0.0", - "readdirp": "~3.6.0" + "ansi-regex": "^6.0.1" }, "engines": { - "node": ">= 8.10.0" + "node": ">=12" }, - "optionalDependencies": { - "fsevents": "~2.3.2" + "funding": { + "url": "https://github.com/chalk/strip-ansi?sponsor=1" } }, - "node_modules/chrome-trace-event": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/chrome-trace-event/-/chrome-trace-event-1.0.3.tgz", - "integrity": "sha512-p3KULyQg4S7NIHixdwbGX+nFHkoBiA4YQmyWtjb8XngSKV124nJmRysgAeujbUVb15vh+RvFUfCPqU7rXk+hZg==", + "node_modules/@isaacs/cliui/node_modules/wrap-ansi": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-8.1.0.tgz", + "integrity": "sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==", "dev": true, + "dependencies": { + "ansi-styles": "^6.1.0", + "string-width": "^5.0.1", + "strip-ansi": "^7.0.1" + }, "engines": { - "node": ">=6.0" + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" } }, - "node_modules/cli-cursor": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.1.0.tgz", - "integrity": "sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==", + "node_modules/@jridgewell/gen-mapping": { + "version": "0.3.5", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.5.tgz", + "integrity": "sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg==", "dev": true, "dependencies": { - "restore-cursor": "^3.1.0" + "@jridgewell/set-array": "^1.2.1", + "@jridgewell/sourcemap-codec": "^1.4.10", + "@jridgewell/trace-mapping": "^0.3.24" }, "engines": { - "node": ">=8" + "node": ">=6.0.0" } }, - "node_modules/cli-width": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-3.0.0.tgz", - "integrity": "sha512-FxqpkPPwu1HjuN93Omfm4h8uIanXofW0RxVEW3k5RKx+mJJYSthzNhp32Kzxxy3YAEZ/Dc/EWN1vZRY0+kOhbw==", + "node_modules/@jridgewell/resolve-uri": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz", + "integrity": "sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==", "dev": true, "engines": { - "node": ">= 10" + "node": ">=6.0.0" } }, - "node_modules/cliui": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-6.0.0.tgz", - "integrity": "sha512-t6wbgtoCXvAzst7QgXxJYqPt0usEfbgQdftEPbLL/cvv6HPE5VgvqCuAIDR0NgU52ds6rFwqrgakNLrHEjCbrQ==", + "node_modules/@jridgewell/set-array": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.2.1.tgz", + "integrity": "sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==", "dev": true, - "dependencies": { - "string-width": "^4.2.0", - "strip-ansi": "^6.0.0", - "wrap-ansi": "^6.2.0" + "engines": { + "node": ">=6.0.0" } }, - "node_modules/clone-deep": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/clone-deep/-/clone-deep-4.0.1.tgz", - "integrity": "sha512-neHB9xuzh/wk0dIHweyAXv2aPGZIVk3pLMe+/RNzINf17fe0OG96QroktYAUm7SM1PBnzTabaLboqqxDyMU+SQ==", + "node_modules/@jridgewell/sourcemap-codec": { + "version": "1.4.15", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz", + "integrity": "sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==", + "dev": true + }, + "node_modules/@jridgewell/trace-mapping": { + "version": "0.3.25", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz", + "integrity": "sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==", "dev": true, "dependencies": { - "is-plain-object": "^2.0.4", - "kind-of": "^6.0.2", - "shallow-clone": "^3.0.0" - }, - "engines": { - "node": ">=6" + "@jridgewell/resolve-uri": "^3.1.0", + "@jridgewell/sourcemap-codec": "^1.4.14" } }, - "node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "node_modules/@nodelib/fs.scandir": { + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", + "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", "dev": true, "dependencies": { - "color-name": "~1.1.4" + "@nodelib/fs.stat": "2.0.5", + "run-parallel": "^1.1.9" }, "engines": { - "node": ">=7.0.0" + "node": ">= 8" } }, - "node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/colorette": { - "version": "2.0.20", - "resolved": "https://registry.npmjs.org/colorette/-/colorette-2.0.20.tgz", - "integrity": "sha512-IfEDxwoWIjkeXL1eXcDiow4UbKjhLdq6/EuSVR9GMN7KVH3r9gQ83e73hsz1Nd1T3ijd5xv1wcWRYO+D6kCI2w==", - "dev": true - }, - "node_modules/commander": { - "version": "2.20.3", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", - "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", - "dev": true - }, - "node_modules/convert-source-map": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.7.0.tgz", - "integrity": "sha512-4FJkXzKXEDB1snCFZlLP4gpC3JILicCpGbzG9f9G7tGqGCzETQ2hWPrcinA9oU4wtf2biUaEH5065UnMeR33oA==", + "node_modules/@nodelib/fs.stat": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", + "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", "dev": true, - "dependencies": { - "safe-buffer": "~5.1.1" + "engines": { + "node": ">= 8" } }, - "node_modules/cross-spawn": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", - "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", + "node_modules/@nodelib/fs.walk": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", + "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", "dev": true, "dependencies": { - "path-key": "^3.1.0", - "shebang-command": "^2.0.0", - "which": "^2.0.1" + "@nodelib/fs.scandir": "2.1.5", + "fastq": "^1.6.0" }, "engines": { "node": ">= 8" } }, - "node_modules/css-loader": { - "version": "6.7.3", - "resolved": "https://registry.npmjs.org/css-loader/-/css-loader-6.7.3.tgz", - "integrity": "sha512-qhOH1KlBMnZP8FzRO6YCH9UHXQhVMcEGLyNdb7Hv2cpcmJbW0YrddO+tG1ab5nT41KpHIYGsbeHqxB9xPu1pKQ==", + "node_modules/@pkgjs/parseargs": { + "version": "0.11.0", + "resolved": "https://registry.npmjs.org/@pkgjs/parseargs/-/parseargs-0.11.0.tgz", + "integrity": "sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==", + "dev": true, + "optional": true, + "engines": { + "node": ">=14" + } + }, + "node_modules/@sindresorhus/merge-streams": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/@sindresorhus/merge-streams/-/merge-streams-2.3.0.tgz", + "integrity": "sha512-LtoMMhxAlorcGhmFYI+LhPgbPZCkgP6ra1YL604EeF6U98pLlQ3iWIGMdWSC+vWmPBWBNgmDBAhnAobLROJmwg==", + "dev": true, + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@sindresorhus/slugify": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@sindresorhus/slugify/-/slugify-1.1.2.tgz", + "integrity": "sha512-V9nR/W0Xd9TSGXpZ4iFUcFGhuOJtZX82Fzxj1YISlbSgKvIiNa7eLEZrT0vAraPOt++KHauIVNYgGRgjc13dXA==", "dev": true, "dependencies": { - "icss-utils": "^5.1.0", - "postcss": "^8.4.19", - "postcss-modules-extract-imports": "^3.0.0", - "postcss-modules-local-by-default": "^4.0.0", - "postcss-modules-scope": "^3.0.0", - "postcss-modules-values": "^4.0.0", - "postcss-value-parser": "^4.2.0", - "semver": "^7.3.8" + "@sindresorhus/transliterate": "^0.1.1", + "escape-string-regexp": "^4.0.0" }, "engines": { - "node": ">= 12.13.0" + "node": ">=10" }, "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - }, - "peerDependencies": { - "webpack": "^5.0.0" + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/cssesc": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz", - "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==", + "node_modules/@sindresorhus/transliterate": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/@sindresorhus/transliterate/-/transliterate-0.1.2.tgz", + "integrity": "sha512-5/kmIOY9FF32nicXH+5yLNTX4NJ4atl7jRgqAJuIn/iyDFXBktOKDxCvyGE/EzmF4ngSUvjXxQUQlQiZ5lfw+w==", "dev": true, - "bin": { - "cssesc": "bin/cssesc" + "dependencies": { + "escape-string-regexp": "^2.0.0", + "lodash.deburr": "^4.1.0" }, "engines": { - "node": ">=4" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/decamelize": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", - "integrity": "sha512-z2S+W9X73hAUUki+N+9Za2lBlun89zigOyGrsax+KUQ6wKW4ZoWpEYBkGhQjwAjjDCkWxhY0VKEhk8wzY7F5cA==", + "node_modules/@sindresorhus/transliterate/node_modules/escape-string-regexp": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz", + "integrity": "sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==", "dev": true, "engines": { - "node": ">=0.10.0" + "node": ">=8" } }, - "node_modules/detect-libc": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-1.0.3.tgz", - "integrity": "sha512-pGjwhsmsp4kL2RTz08wcOlGN83otlqHeD/Z5T8GXZB+/YcpQ/dgo+lbU8ZsGxV0HIvqqxo9l7mqYwyYMD9bKDg==", + "node_modules/@tailwindcss/container-queries": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/@tailwindcss/container-queries/-/container-queries-0.1.1.tgz", + "integrity": "sha512-p18dswChx6WnTSaJCSGx6lTmrGzNNvm2FtXmiO6AuA1V4U5REyoqwmT6kgAsIMdjo07QdAfYXHJ4hnMtfHzWgA==", "dev": true, - "optional": true, - "peer": true, - "bin": { - "detect-libc": "bin/detect-libc.js" - }, - "engines": { - "node": ">=0.10" + "peerDependencies": { + "tailwindcss": ">=3.2.0" } }, - "node_modules/didyoumean": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/didyoumean/-/didyoumean-1.2.2.tgz", - "integrity": "sha512-gxtyfqMg7GKyhQmb056K7M3xszy/myH8w+B4RT+QXBQsvAOdc3XymqDDPHx1BgPgsdAA5SIifona89YtRATDzw==", - "dev": true - }, - "node_modules/electron-to-chromium": { - "version": "1.4.368", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.368.tgz", - "integrity": "sha512-e2aeCAixCj9M7nJxdB/wDjO6mbYX+lJJxSJCXDzlr5YPGYVofuJwGN9nKg2o6wWInjX6XmxRinn3AeJMK81ltw==", - "dev": true - }, - "node_modules/emoji-regex": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", - "dev": true - }, - "node_modules/emojis-list": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/emojis-list/-/emojis-list-3.0.0.tgz", - "integrity": "sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q==", + "node_modules/@tailwindcss/typography": { + "version": "0.5.10", + "resolved": "https://registry.npmjs.org/@tailwindcss/typography/-/typography-0.5.10.tgz", + "integrity": "sha512-Pe8BuPJQJd3FfRnm6H0ulKIGoMEQS+Vq01R6M5aCrFB/ccR/shT+0kXLjouGC1gFLm9hopTFN+DMP0pfwRWzPw==", "dev": true, - "engines": { - "node": ">= 4" + "dependencies": { + "lodash.castarray": "^4.4.0", + "lodash.isplainobject": "^4.0.6", + "lodash.merge": "^4.6.2", + "postcss-selector-parser": "6.0.10" + }, + "peerDependencies": { + "tailwindcss": ">=3.0.0 || insiders" } }, - "node_modules/enhanced-resolve": { - "version": "5.13.0", - "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.13.0.tgz", - "integrity": "sha512-eyV8f0y1+bzyfh8xAwW/WTSZpLbjhqc4ne9eGSH4Zo2ejdyiNG9pU6mf9DG8a7+Auk6MFTlNOT4Y2y/9k8GKVg==", + "node_modules/@tailwindcss/typography/node_modules/postcss-selector-parser": { + "version": "6.0.10", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.10.tgz", + "integrity": "sha512-IQ7TZdoaqbT+LCpShg46jnZVlhWD2w6iQYAcYXfHARZ7X1t/UGhhceQDs5X0cGqKvYlHNOuv7Oa1xmb0oQuA3w==", "dev": true, "dependencies": { - "graceful-fs": "^4.2.4", - "tapable": "^2.2.0" + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" }, "engines": { - "node": ">=10.13.0" + "node": ">=4" } }, - "node_modules/envinfo": { - "version": "7.8.1", - "resolved": "https://registry.npmjs.org/envinfo/-/envinfo-7.8.1.tgz", - "integrity": "sha512-/o+BXHmB7ocbHEAs6F2EnG0ogybVVUdkRunTT2glZU9XAaGmhqskrvKwqXuDfNjEO0LZKWdejEEpnq8aM0tOaw==", + "node_modules/@trysound/sax": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/@trysound/sax/-/sax-0.2.0.tgz", + "integrity": "sha512-L7z9BgrNEcYyUYtF+HaEfiS5ebkh9jXqbszz7pC0hRBPaatV0XjSD3+eHrpqFemQfgwiFF0QPIarnIihIDn7OA==", "dev": true, - "bin": { - "envinfo": "dist/cli.js" - }, "engines": { - "node": ">=4" + "node": ">=10.13.0" } }, - "node_modules/es-module-lexer": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-1.2.1.tgz", - "integrity": "sha512-9978wrXM50Y4rTMmW5kXIC09ZdXQZqkE4mxhwkd8VbzsGkXGPgV4zWuqQJgCEzYngdo2dYDa0l8xhX4fkSwJSg==", + "node_modules/@types/minimatch": { + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/@types/minimatch/-/minimatch-3.0.5.tgz", + "integrity": "sha512-Klz949h02Gz2uZCMGwDUSDS1YBlTdDDgbWHi+81l29tQALUtvz4rAYi5uoVhE5Lagoq6DeqAUlbrHvW/mXDgdQ==", "dev": true }, - "node_modules/escalade": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", - "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==", + "node_modules/a-sync-waterfall": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/a-sync-waterfall/-/a-sync-waterfall-1.0.1.tgz", + "integrity": "sha512-RYTOHHdWipFUliRFMCS4X2Yn2X8M87V/OpSqWzKKOGhzqyUxzyVmhHDH9sAvG+ZuQf/TAOFsLCpMw09I1ufUnA==", + "dev": true + }, + "node_modules/acorn": { + "version": "7.4.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz", + "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==", "dev": true, + "bin": { + "acorn": "bin/acorn" + }, "engines": { - "node": ">=6" + "node": ">=0.4.0" } }, - "node_modules/escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", "dev": true, "engines": { - "node": ">=0.8.0" + "node": ">=8" } }, - "node_modules/eslint-scope": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz", - "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==", + "node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", "dev": true, "dependencies": { - "esrecurse": "^4.3.0", - "estraverse": "^4.1.1" + "color-convert": "^2.0.1" }, "engines": { - "node": ">=8.0.0" + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "node_modules/esrecurse": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", - "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", + "node_modules/any-promise": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/any-promise/-/any-promise-0.1.0.tgz", + "integrity": "sha512-lqzY9o+BbeGHRCOyxQkt/Tgvz0IZhTmQiA+LxQW8wSNpcTbj8K+0cZiSEvbpNZZP9/11Gy7dnLO3GNWUXO4d1g==", + "dev": true + }, + "node_modules/anymatch": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", + "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", "dev": true, "dependencies": { - "estraverse": "^5.2.0" + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" }, "engines": { - "node": ">=4.0" + "node": ">= 8" + } + }, + "node_modules/arg": { + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/arg/-/arg-5.0.2.tgz", + "integrity": "sha512-PYjyFOLKQ9y57JvQ6QLo8dAgNqswh8M1RMJYdQduT6xbWSgK36P/Z/v+p888pM69jMMfS8Xd8F6I1kQ/I9HUGg==", + "dev": true + }, + "node_modules/argparse": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", + "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", + "dev": true, + "dependencies": { + "sprintf-js": "~1.0.2" } }, - "node_modules/esrecurse/node_modules/estraverse": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", - "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "node_modules/array-differ": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/array-differ/-/array-differ-3.0.0.tgz", + "integrity": "sha512-THtfYS6KtME/yIAhKjZ2ul7XI96lQGHRputJQHO80LAWQnuGP4iCIN8vdMRboGbIEYBwU33q8Tch1os2+X0kMg==", "dev": true, "engines": { - "node": ">=4.0" + "node": ">=8" } }, - "node_modules/estraverse": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", - "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", + "node_modules/array-union": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz", + "integrity": "sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==", "dev": true, "engines": { - "node": ">=4.0" + "node": ">=8" } }, - "node_modules/events": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz", - "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==", + "node_modules/array-uniq": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/array-uniq/-/array-uniq-1.0.3.tgz", + "integrity": "sha512-MNha4BWQ6JbwhFhj03YK552f7cb3AzoE8SzeljgChvL1dl3IcvggXVz1DilzySZkCja+CXuZbdW7yATchWn8/Q==", "dev": true, "engines": { - "node": ">=0.8.x" + "node": ">=0.10.0" } }, - "node_modules/external-editor": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-3.1.0.tgz", - "integrity": "sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew==", + "node_modules/arrify": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/arrify/-/arrify-2.0.1.tgz", + "integrity": "sha512-3duEwti880xqi4eAMN8AyR4a0ByT90zoYdLlevfrvU43vb0YZwZVfxOgxWrLXXXpyugL0hNZc9G6BiB5B3nUug==", "dev": true, - "dependencies": { - "chardet": "^0.7.0", - "iconv-lite": "^0.4.24", - "tmp": "^0.0.33" - }, "engines": { - "node": ">=4" + "node": ">=8" } }, - "node_modules/fast-deep-equal": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", - "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", + "node_modules/asap": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/asap/-/asap-2.0.6.tgz", + "integrity": "sha512-BSHWgDSAiKs50o2Re8ppvp3seVHXSRM44cdSsT9FfNEUUZLOGWVCsiWaRPWM1Znn+mqZ1OfVZ3z3DWEzSp7hRA==", "dev": true }, - "node_modules/fast-json-stable-stringify": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", - "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", + "node_modules/assert-never": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/assert-never/-/assert-never-1.2.1.tgz", + "integrity": "sha512-TaTivMB6pYI1kXwrFlEhLeGfOqoDNdTxjCdwRfFFkEA30Eu+k48W34nlok2EYWJfFFzqaEmichdNM7th6M5HNw==", "dev": true }, - "node_modules/fastest-levenshtein": { - "version": "1.0.16", - "resolved": "https://registry.npmjs.org/fastest-levenshtein/-/fastest-levenshtein-1.0.16.tgz", - "integrity": "sha512-eRnCtTTtGZFpQCwhJiUOuxPQWRXVKYDn0b2PeHfXL6/Zi53SLAzAHfVhVWK2AryC/WH05kGfxhFIPvTF0SXQzg==", - "dev": true, - "engines": { - "node": ">= 4.9.1" - } + "node_modules/async": { + "version": "3.2.5", + "resolved": "https://registry.npmjs.org/async/-/async-3.2.5.tgz", + "integrity": "sha512-baNZyqaaLhyLVKm/DlvdW051MSgO6b8eVfIezl9E5PqWxFgzLm/wQntEW4zOytVburDEr0JlALEpdOFwvErLsg==", + "dev": true }, - "node_modules/fibers": { - "version": "5.0.3", - "resolved": "https://registry.npmjs.org/fibers/-/fibers-5.0.3.tgz", - "integrity": "sha512-/qYTSoZydQkM21qZpGLDLuCq8c+B8KhuCQ1kLPvnRNhxhVbvrpmH9l2+Lblf5neDuEsY4bfT7LeO553TXQDvJw==", + "node_modules/autoprefixer": { + "version": "10.4.18", + "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.18.tgz", + "integrity": "sha512-1DKbDfsr6KUElM6wg+0zRNkB/Q7WcKYAaK+pzXn+Xqmszm/5Xa9coeNdtP88Vi+dPzZnMjhge8GIV49ZQkDa+g==", "dev": true, - "hasInstallScript": true, - "optional": true, - "peer": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/autoprefixer" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], "dependencies": { - "detect-libc": "^1.0.3" + "browserslist": "^4.23.0", + "caniuse-lite": "^1.0.30001591", + "fraction.js": "^4.3.7", + "normalize-range": "^0.1.2", + "picocolors": "^1.0.0", + "postcss-value-parser": "^4.2.0" }, - "engines": { - "node": ">=10.0.0" - } - }, - "node_modules/figures": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/figures/-/figures-3.2.0.tgz", - "integrity": "sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg==", - "dev": true, - "dependencies": { - "escape-string-regexp": "^1.0.5" + "bin": { + "autoprefixer": "bin/autoprefixer" }, "engines": { - "node": ">=8" + "node": "^10 || ^12 || >=14" }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "peerDependencies": { + "postcss": "^8.1.0" } }, - "node_modules/fill-range": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", - "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "node_modules/babel-walk": { + "version": "3.0.0-canary-5", + "resolved": "https://registry.npmjs.org/babel-walk/-/babel-walk-3.0.0-canary-5.tgz", + "integrity": "sha512-GAwkz0AihzY5bkwIY5QDR+LvsRQgB/B+1foMPvi0FZPMl5fjD7ICiznUiBdLYMH1QYe6vqu4gWYytZOccLouFw==", "dev": true, "dependencies": { - "to-regex-range": "^5.0.1" + "@babel/types": "^7.9.6" }, "engines": { - "node": ">=8" + "node": ">= 10.0.0" } }, - "node_modules/find-up": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", - "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", + "node_modules/balanced-match": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", + "dev": true + }, + "node_modules/bcp-47": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/bcp-47/-/bcp-47-1.0.8.tgz", + "integrity": "sha512-Y9y1QNBBtYtv7hcmoX0tR+tUNSFZGZ6OL6vKPObq8BbOhkCoyayF6ogfLTgAli/KuAEbsYHYUNq2AQuY6IuLag==", "dev": true, "dependencies": { - "locate-path": "^5.0.0", - "path-exists": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/foundation-sites": { - "version": "6.7.5", - "resolved": "https://registry.npmjs.org/foundation-sites/-/foundation-sites-6.7.5.tgz", - "integrity": "sha512-MEjAENdF/IV2XQvlQmg20o+iDTyyWu0N/j440e8fKbEylbKxARzgg5S7vcnxtjukC1Lqg+rRm7ZDSSyGhVVoUQ==", - "engines": { - "node": ">=12.0" + "is-alphabetical": "^1.0.0", + "is-alphanumerical": "^1.0.0", + "is-decimal": "^1.0.0" }, - "peerDependencies": { - "jquery": ">=3.6.0", - "motion-ui": "latest", - "what-input": ">=5.2.10" + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" } }, - "node_modules/fsevents": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", - "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", + "node_modules/bcp-47-match": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/bcp-47-match/-/bcp-47-match-1.0.3.tgz", + "integrity": "sha512-LggQ4YTdjWQSKELZF5JwchnBa1u0pIQSZf5lSdOHEdbVP55h0qICA/FUp3+W99q0xqxYa1ZQizTUH87gecII5w==", "dev": true, - "hasInstallScript": true, - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": "^8.16.0 || ^10.6.0 || >=11.0.0" + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" } }, - "node_modules/function-bind": { + "node_modules/bcp-47-normalize": { "version": "1.1.1", - "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", - "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", - "dev": true - }, - "node_modules/get-caller-file": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", - "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", + "resolved": "https://registry.npmjs.org/bcp-47-normalize/-/bcp-47-normalize-1.1.1.tgz", + "integrity": "sha512-jWZ1Jdu3cs0EZdfCkS0UE9Gg01PtxnChjEBySeB+Zo6nkqtFfnvtoQQgP1qU1Oo4qgJgxhTI6Sf9y/pZIhPs0A==", "dev": true, - "engines": { - "node": "6.* || 8.* || >= 10.*" + "dependencies": { + "bcp-47": "^1.0.0", + "bcp-47-match": "^1.0.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" } }, - "node_modules/glob-parent": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", - "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "node_modules/binary-extensions": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.3.0.tgz", + "integrity": "sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw==", "dev": true, - "dependencies": { - "is-glob": "^4.0.1" - }, "engines": { - "node": ">= 6" + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/glob-to-regexp": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz", - "integrity": "sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==", - "dev": true - }, - "node_modules/graceful-fs": { - "version": "4.2.11", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", - "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==", + "node_modules/boolbase": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz", + "integrity": "sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==", "dev": true }, - "node_modules/hamburgers": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/hamburgers/-/hamburgers-1.2.1.tgz", - "integrity": "sha512-uFuVVF7/MeUtRWrA+S1FGGo4iVi7RgPzZAmljBnSeDh4snOZzaQ+oB6CI1m4vKD5RGz9s70ufgiJLxgivqA26Q==" - }, - "node_modules/has": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", - "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", + "node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", "dev": true, "dependencies": { - "function-bind": "^1.1.1" - }, - "engines": { - "node": ">= 0.4.0" + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" } }, - "node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "node_modules/braces": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", "dev": true, + "dependencies": { + "fill-range": "^7.0.1" + }, "engines": { "node": ">=8" } }, - "node_modules/iconv-lite": { - "version": "0.4.24", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", - "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", + "node_modules/brotli-size": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/brotli-size/-/brotli-size-4.0.0.tgz", + "integrity": "sha512-uA9fOtlTRC0iqKfzff1W34DXUA3GyVqbUaeo3Rw3d4gd1eavKVCETXrn3NzO74W+UVkG3UHu8WxUi+XvKI/huA==", "dev": true, "dependencies": { - "safer-buffer": ">= 2.1.2 < 3" + "duplexer": "0.1.1" }, "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/icss-utils": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/icss-utils/-/icss-utils-5.1.0.tgz", - "integrity": "sha512-soFhflCVWLfRNOPU3iv5Z9VUdT44xFRbzjLsEzSr5AQmgqPMTHdU3PMT1Cf1ssx8fLNJDA1juftYl+PUcv3MqA==", - "dev": true, - "engines": { - "node": "^10 || ^12 || >= 14" - }, - "peerDependencies": { - "postcss": "^8.1.0" + "node": ">= 10.16.0" } }, - "node_modules/immutable": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.3.0.tgz", - "integrity": "sha512-0AOCmOip+xgJwEVTQj1EfiDDOkPmuyllDuTuEX+DDXUgapLAsBIfkg3sxCYyCEA8mQqZrrxPUGjcOQ2JS3WLkg==", - "dev": true - }, - "node_modules/import-local": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/import-local/-/import-local-3.1.0.tgz", - "integrity": "sha512-ASB07uLtnDs1o6EHjKpX34BKYDSqnFerfTOJL2HvMqF70LnxpjkzDB8J44oT9pu4AMPkQwf8jl6szgvNd2tRIg==", + "node_modules/browserslist": { + "version": "4.23.0", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.23.0.tgz", + "integrity": "sha512-QW8HiM1shhT2GuzkvklfjcKDiWFXHOeFCIA/huJPwHsslwcydgk7X+z2zXpEijP98UCY7HbubZt5J2Zgvf0CaQ==", "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], "dependencies": { - "pkg-dir": "^4.2.0", - "resolve-cwd": "^3.0.0" + "caniuse-lite": "^1.0.30001587", + "electron-to-chromium": "^1.4.668", + "node-releases": "^2.0.14", + "update-browserslist-db": "^1.0.13" }, "bin": { - "import-local-fixture": "fixtures/cli.js" + "browserslist": "cli.js" }, "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" } }, - "node_modules/inquirer": { - "version": "7.3.3", - "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-7.3.3.tgz", - "integrity": "sha512-JG3eIAj5V9CwcGvuOmoo6LB9kbAYT8HXffUl6memuszlwDC/qvFAJw49XJ5NROSFNPxp3iQg1GqkFhaY/CR0IA==", + "node_modules/call-bind": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.7.tgz", + "integrity": "sha512-GHTSNSYICQ7scH7sZ+M2rFopRoLh8t2bLSW6BbgrtLsahOIB5iyAVJf9GjWK3cYTDaMj4XdBpM1cA6pIS0Kv2w==", "dev": true, "dependencies": { - "ansi-escapes": "^4.2.1", - "chalk": "^4.1.0", - "cli-cursor": "^3.1.0", - "cli-width": "^3.0.0", - "external-editor": "^3.0.3", - "figures": "^3.0.0", - "lodash": "^4.17.19", - "mute-stream": "0.0.8", - "run-async": "^2.4.0", - "rxjs": "^6.6.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0", - "through": "^2.3.6" + "es-define-property": "^1.0.0", + "es-errors": "^1.3.0", + "function-bind": "^1.1.2", + "get-intrinsic": "^1.2.4", + "set-function-length": "^1.2.1" }, "engines": { - "node": ">=8.0.0" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/interpret": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/interpret/-/interpret-2.2.0.tgz", - "integrity": "sha512-Ju0Bz/cEia55xDwUWEa8+olFpCiQoypjnQySseKtmjNrnps3P+xfpUmGr90T7yjlVJmOtybRvPXhKMbHr+fWnw==", + "node_modules/camelcase-css": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/camelcase-css/-/camelcase-css-2.0.1.tgz", + "integrity": "sha512-QOSvevhslijgYwRx6Rv7zKdMF8lbRmx+uQGx2+vDc+KI/eBnsy9kit5aj23AgGu3pa4t9AgwbnXWqS+iOY+2aA==", "dev": true, "engines": { - "node": ">= 0.10" + "node": ">= 6" } }, - "node_modules/is-binary-path": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", - "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", - "dev": true, - "dependencies": { - "binary-extensions": "^2.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/is-core-module": { - "version": "2.12.0", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.12.0.tgz", - "integrity": "sha512-RECHCBCd/viahWmwj6enj19sKbHfJrddi/6cBDsNTKbNq0f7VeaUkBo60BqzvPqo/W54ChS62Z5qyun7cfOMqQ==", + "node_modules/caniuse-api": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/caniuse-api/-/caniuse-api-3.0.0.tgz", + "integrity": "sha512-bsTwuIg/BZZK/vreVTYYbSWoe2F+71P7K5QGEX+pT250DZbfU1MQ5prOKpPR+LL6uWKK3KMwMCAS74QB3Um1uw==", "dev": true, "dependencies": { - "has": "^1.0.3" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "browserslist": "^4.0.0", + "caniuse-lite": "^1.0.0", + "lodash.memoize": "^4.1.2", + "lodash.uniq": "^4.5.0" } }, - "node_modules/is-extglob": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", - "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", + "node_modules/caniuse-lite": { + "version": "1.0.30001597", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001597.tgz", + "integrity": "sha512-7LjJvmQU6Sj7bL0j5b5WY/3n7utXUJvAe1lxhsHDbLmwX9mdL86Yjtr+5SRCyf8qME4M7pU2hswj0FpyBVCv9w==", "dev": true, - "engines": { - "node": ">=0.10.0" - } + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/caniuse-lite" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ] }, - "node_modules/is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, "engines": { - "node": ">=8" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" } }, - "node_modules/is-glob": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", - "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", + "node_modules/chalk/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", "dev": true, "dependencies": { - "is-extglob": "^2.1.1" + "has-flag": "^4.0.0" }, "engines": { - "node": ">=0.10.0" + "node": ">=8" } }, - "node_modules/is-number": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", - "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "node_modules/character-parser": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/character-parser/-/character-parser-2.2.0.tgz", + "integrity": "sha512-+UqJQjFEFaTAs3bNsF2j2kEN1baG/zghZbdqoYEDxGZtJo9LBzl1A+m0D4n3qKx8N2FNv8/Xp6yV9mQmBuptaw==", "dev": true, - "engines": { - "node": ">=0.12.0" + "dependencies": { + "is-regex": "^1.0.3" } }, - "node_modules/is-plain-object": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", - "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", + "node_modules/chokidar": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.6.0.tgz", + "integrity": "sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==", "dev": true, "dependencies": { - "isobject": "^3.0.1" + "anymatch": "~3.1.2", + "braces": "~3.0.2", + "glob-parent": "~5.1.2", + "is-binary-path": "~2.1.0", + "is-glob": "~4.0.1", + "normalize-path": "~3.0.0", + "readdirp": "~3.6.0" }, "engines": { - "node": ">=0.10.0" + "node": ">= 8.10.0" + }, + "funding": { + "url": "https://paulmillr.com/funding/" + }, + "optionalDependencies": { + "fsevents": "~2.3.2" } }, - "node_modules/isexe": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", - "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", - "dev": true - }, - "node_modules/isobject": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", - "integrity": "sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==", + "node_modules/cliui": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz", + "integrity": "sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==", "dev": true, + "dependencies": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.1", + "wrap-ansi": "^7.0.0" + }, "engines": { - "node": ">=0.10.0" + "node": ">=12" } }, - "node_modules/jest-worker": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz", - "integrity": "sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==", + "node_modules/color": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/color/-/color-4.2.3.tgz", + "integrity": "sha512-1rXeuUUiGGrykh+CeBdu5Ie7OJwinCgQY0bc7GCRxy5xVHy+moaqkpL/jqQq0MtQOeYcrqEz4abc5f0KtU7W4A==", "dev": true, "dependencies": { - "@types/node": "*", - "merge-stream": "^2.0.0", - "supports-color": "^8.0.0" + "color-convert": "^2.0.1", + "color-string": "^1.9.0" }, "engines": { - "node": ">= 10.13.0" + "node": ">=12.5.0" } }, - "node_modules/jest-worker/node_modules/supports-color": { - "version": "8.1.1", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", - "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", + "node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", "dev": true, "dependencies": { - "has-flag": "^4.0.0" + "color-name": "~1.1.4" }, "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/supports-color?sponsor=1" + "node": ">=7.0.0" } }, - "node_modules/jquery": { - "version": "3.6.4", - "resolved": "https://registry.npmjs.org/jquery/-/jquery-3.6.4.tgz", - "integrity": "sha512-v28EW9DWDFpzcD9O5iyJXg3R3+q+mET5JhnjJzQUZMHOv67bpSIHq81GEYpPNZHG+XXHsfSme3nxp/hndKEcsQ==" + "node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true }, - "node_modules/json-fixer": { - "version": "1.6.15", - "resolved": "https://registry.npmjs.org/json-fixer/-/json-fixer-1.6.15.tgz", - "integrity": "sha512-TuDuZ5KrgyjoCIppdPXBMqiGfota55+odM+j2cQ5rt/XKyKmqGB3Whz1F8SN8+60yYGy/Nu5lbRZ+rx8kBIvBw==", + "node_modules/color-string": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/color-string/-/color-string-1.9.1.tgz", + "integrity": "sha512-shrVawQFojnZv6xM40anx4CkoDP+fZsw/ZerEMsW/pyzsRbElpsL/DBVW7q3ExxwusdNXI3lXpuhEZkzs8p5Eg==", "dev": true, "dependencies": { - "@babel/runtime": "^7.18.9", - "chalk": "^4.1.2", - "pegjs": "^0.10.0" - }, - "engines": { - "node": ">=10" + "color-name": "^1.0.0", + "simple-swizzle": "^0.2.2" } }, - "node_modules/json-parse-even-better-errors": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz", - "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==", + "node_modules/colord": { + "version": "2.9.3", + "resolved": "https://registry.npmjs.org/colord/-/colord-2.9.3.tgz", + "integrity": "sha512-jeC1axXpnb0/2nn/Y1LPuLdgXBLH7aDcHu4KEKfqw3CUhX7ZpfBSlPKyqXE6btIgEzfWtrX3/tyBCaCvXvMkOw==", "dev": true }, - "node_modules/json-schema-traverse": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", - "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", + "node_modules/concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", "dev": true }, - "node_modules/json5": { - "version": "2.2.3", - "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz", - "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==", + "node_modules/concurrently": { + "version": "8.2.2", + "resolved": "https://registry.npmjs.org/concurrently/-/concurrently-8.2.2.tgz", + "integrity": "sha512-1dP4gpXFhei8IOtlXRE/T/4H88ElHgTiUzh71YUmtjTEHMSRS2Z/fgOxHSxxusGHogsRfxNq1vyAwxSC+EVyDg==", "dev": true, + "dependencies": { + "chalk": "^4.1.2", + "date-fns": "^2.30.0", + "lodash": "^4.17.21", + "rxjs": "^7.8.1", + "shell-quote": "^1.8.1", + "spawn-command": "0.0.2", + "supports-color": "^8.1.1", + "tree-kill": "^1.2.2", + "yargs": "^17.7.2" + }, "bin": { - "json5": "lib/cli.js" + "conc": "dist/bin/concurrently.js", + "concurrently": "dist/bin/concurrently.js" }, "engines": { - "node": ">=6" + "node": "^14.13.0 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/open-cli-tools/concurrently?sponsor=1" } }, - "node_modules/kind-of": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", - "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", + "node_modules/constantinople": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/constantinople/-/constantinople-4.0.1.tgz", + "integrity": "sha512-vCrqcSIq4//Gx74TXXCGnHpulY1dskqLTFGDmhrGxzeXL8lF8kvXv6mpNWlJj1uD4DW23D4ljAqbY4RRaaUZIw==", + "dev": true, + "dependencies": { + "@babel/parser": "^7.6.0", + "@babel/types": "^7.6.1" + } + }, + "node_modules/cross-env": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/cross-env/-/cross-env-7.0.3.tgz", + "integrity": "sha512-+/HKd6EgcQCJGh2PSjZuUitQBQynKor4wrFbRg4DtAgS1aWO+gU52xpH7M9ScGgXSYmAVS9bIJ8EzuaGw0oNAw==", "dev": true, + "dependencies": { + "cross-spawn": "^7.0.1" + }, + "bin": { + "cross-env": "src/bin/cross-env.js", + "cross-env-shell": "src/bin/cross-env-shell.js" + }, "engines": { - "node": ">=0.10.0" + "node": ">=10.14", + "npm": ">=6", + "yarn": ">=1" } }, - "node_modules/klona": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/klona/-/klona-2.0.6.tgz", - "integrity": "sha512-dhG34DXATL5hSxJbIexCft8FChFXtmskoZYnoPWjXQuebWYCNkVeV3KkGegCK9CP1oswI/vQibS2GY7Em/sJJA==", + "node_modules/cross-spawn": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", + "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", "dev": true, + "dependencies": { + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" + }, "engines": { "node": ">= 8" } }, - "node_modules/loader-runner": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/loader-runner/-/loader-runner-4.3.0.tgz", - "integrity": "sha512-3R/1M+yS3j5ou80Me59j7F9IMs4PXs3VqRrm0TU3AbKPxlmpoY1TNscJV/oGJXo8qCatFGTfDbY6W6ipGOYXfg==", + "node_modules/css-declaration-sorter": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/css-declaration-sorter/-/css-declaration-sorter-7.1.1.tgz", + "integrity": "sha512-dZ3bVTEEc1vxr3Bek9vGwfB5Z6ESPULhcRvO472mfjVnj8jRcTnKO8/JTczlvxM10Myb+wBM++1MtdO76eWcaQ==", "dev": true, "engines": { - "node": ">=6.11.5" + "node": "^14 || ^16 || >=18" + }, + "peerDependencies": { + "postcss": "^8.0.9" } }, - "node_modules/loader-utils": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.4.tgz", - "integrity": "sha512-xXqpXoINfFhgua9xiqD8fPFHgkoq1mmmpE92WlDbm9rNRd/EbRb+Gqf908T2DMfuHjjJlksiK2RbHVOdD/MqSw==", + "node_modules/css-select": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/css-select/-/css-select-5.1.0.tgz", + "integrity": "sha512-nwoRF1rvRRnnCqqY7updORDsuqKzqYJ28+oSMaJMMgOauh3fvwHqMS7EZpIPqK8GL+g9mKxF1vP/ZjSeNjEVHg==", "dev": true, "dependencies": { - "big.js": "^5.2.2", - "emojis-list": "^3.0.0", - "json5": "^2.1.2" + "boolbase": "^1.0.0", + "css-what": "^6.1.0", + "domhandler": "^5.0.2", + "domutils": "^3.0.1", + "nth-check": "^2.0.1" }, - "engines": { - "node": ">=8.9.0" + "funding": { + "url": "https://github.com/sponsors/fb55" } }, - "node_modules/locate-path": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", - "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", + "node_modules/css-select/node_modules/dom-serializer": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-2.0.0.tgz", + "integrity": "sha512-wIkAryiqt/nV5EQKqQpo3SToSOV9J0DnbJqwK7Wv/Trc92zIAYZ4FlMu+JPFW1DfGFt81ZTCGgDEabffXeLyJg==", "dev": true, "dependencies": { - "p-locate": "^4.1.0" + "domelementtype": "^2.3.0", + "domhandler": "^5.0.2", + "entities": "^4.2.0" }, - "engines": { - "node": ">=8" + "funding": { + "url": "https://github.com/cheeriojs/dom-serializer?sponsor=1" } }, - "node_modules/lodash": { - "version": "4.17.21", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", - "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==", - "dev": true - }, - "node_modules/lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "node_modules/css-select/node_modules/domhandler": { + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-5.0.3.tgz", + "integrity": "sha512-cgwlv/1iFQiFnU96XXgROh8xTeetsnJiDsTc7TYCLFd9+/WNkIqPTxiM/8pSd8VIrhXGTf1Ny1q1hquVqDJB5w==", "dev": true, "dependencies": { - "yallist": "^4.0.0" + "domelementtype": "^2.3.0" }, "engines": { - "node": ">=10" + "node": ">= 4" + }, + "funding": { + "url": "https://github.com/fb55/domhandler?sponsor=1" } }, - "node_modules/merge-stream": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", - "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==", - "dev": true + "node_modules/css-select/node_modules/domutils": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/domutils/-/domutils-3.1.0.tgz", + "integrity": "sha512-H78uMmQtI2AhgDJjWeQmHwJJ2bLPD3GMmO7Zja/ZZh84wkm+4ut+IUnUdRa8uCGX88DiVx1j6FRe1XfxEgjEZA==", + "dev": true, + "dependencies": { + "dom-serializer": "^2.0.0", + "domelementtype": "^2.3.0", + "domhandler": "^5.0.3" + }, + "funding": { + "url": "https://github.com/fb55/domutils?sponsor=1" + } }, - "node_modules/mime-db": { - "version": "1.52.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", - "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", + "node_modules/css-select/node_modules/entities": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/entities/-/entities-4.5.0.tgz", + "integrity": "sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==", "dev": true, "engines": { - "node": ">= 0.6" + "node": ">=0.12" + }, + "funding": { + "url": "https://github.com/fb55/entities?sponsor=1" } }, - "node_modules/mime-types": { - "version": "2.1.35", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", - "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", + "node_modules/css-tree": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/css-tree/-/css-tree-2.3.1.tgz", + "integrity": "sha512-6Fv1DV/TYw//QF5IzQdqsNDjx/wc8TrMBZsqjL9eW01tWb7R7k/mq+/VXfJCl7SoD5emsJop9cOByJZfs8hYIw==", "dev": true, "dependencies": { - "mime-db": "1.52.0" + "mdn-data": "2.0.30", + "source-map-js": "^1.0.1" }, "engines": { - "node": ">= 0.6" + "node": "^10 || ^12.20.0 || ^14.13.0 || >=15.0.0" } }, - "node_modules/mimic-fn": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", - "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", + "node_modules/css-what": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/css-what/-/css-what-6.1.0.tgz", + "integrity": "sha512-HTUrgRJ7r4dsZKU6GjmpfRK1O76h97Z8MfS1G0FozR+oF2kG6Vfe8JE6zwrkbxigziPHinCJ+gCPjA9EaBDtRw==", "dev": true, "engines": { - "node": ">=6" + "node": ">= 6" + }, + "funding": { + "url": "https://github.com/sponsors/fb55" + } + }, + "node_modules/cssesc": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz", + "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==", + "dev": true, + "bin": { + "cssesc": "bin/cssesc" + }, + "engines": { + "node": ">=4" } }, - "node_modules/mini-css-extract-plugin": { - "version": "2.7.5", - "resolved": "https://registry.npmjs.org/mini-css-extract-plugin/-/mini-css-extract-plugin-2.7.5.tgz", - "integrity": "sha512-9HaR++0mlgom81s95vvNjxkg52n2b5s//3ZTI1EtzFb98awsLSivs2LMsVqnQ3ay0PVhqWcGNyDaTE961FOcjQ==", + "node_modules/cssnano": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/cssnano/-/cssnano-6.1.0.tgz", + "integrity": "sha512-e2v4w/t3OFM6HTuSweI4RSdABaqgVgHlJp5FZrQsopHnKKHLFIvK2D3C4kHWeFIycN/1L1J5VIrg5KlDzn3r/g==", "dev": true, "dependencies": { - "schema-utils": "^4.0.0" + "cssnano-preset-default": "^6.1.0", + "lilconfig": "^3.1.1" }, "engines": { - "node": ">= 12.13.0" + "node": "^14 || ^16 || >=18.0" }, "funding": { "type": "opencollective", - "url": "https://opencollective.com/webpack" + "url": "https://opencollective.com/cssnano" }, "peerDependencies": { - "webpack": "^5.0.0" + "postcss": "^8.4.31" } }, - "node_modules/motion-ui": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/motion-ui/-/motion-ui-2.0.4.tgz", - "integrity": "sha512-7GjtcXXqRHUQGH9Gm8KLbvx9sz5tNGlftsaJ/J5d4q33PzfgKnUm+OynDji4VR3fiZXPT3nMkzBQlZsifYTIOg==", + "node_modules/cssnano-preset-default": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/cssnano-preset-default/-/cssnano-preset-default-6.1.0.tgz", + "integrity": "sha512-4DUXZoDj+PI3fRl3MqMjl9DwLGjcsFP4qt+92nLUcN1RGfw2TY+GwNoG2B38Usu1BrcTs8j9pxNfSusmvtSjfg==", + "dev": true, + "dependencies": { + "browserslist": "^4.23.0", + "css-declaration-sorter": "^7.1.1", + "cssnano-utils": "^4.0.2", + "postcss-calc": "^9.0.1", + "postcss-colormin": "^6.1.0", + "postcss-convert-values": "^6.1.0", + "postcss-discard-comments": "^6.0.2", + "postcss-discard-duplicates": "^6.0.3", + "postcss-discard-empty": "^6.0.3", + "postcss-discard-overridden": "^6.0.2", + "postcss-merge-longhand": "^6.0.4", + "postcss-merge-rules": "^6.1.0", + "postcss-minify-font-values": "^6.0.3", + "postcss-minify-gradients": "^6.0.3", + "postcss-minify-params": "^6.1.0", + "postcss-minify-selectors": "^6.0.3", + "postcss-normalize-charset": "^6.0.2", + "postcss-normalize-display-values": "^6.0.2", + "postcss-normalize-positions": "^6.0.2", + "postcss-normalize-repeat-style": "^6.0.2", + "postcss-normalize-string": "^6.0.2", + "postcss-normalize-timing-functions": "^6.0.2", + "postcss-normalize-unicode": "^6.1.0", + "postcss-normalize-url": "^6.0.2", + "postcss-normalize-whitespace": "^6.0.2", + "postcss-ordered-values": "^6.0.2", + "postcss-reduce-initial": "^6.1.0", + "postcss-reduce-transforms": "^6.0.2", + "postcss-svgo": "^6.0.3", + "postcss-unique-selectors": "^6.0.3" + }, + "engines": { + "node": "^14 || ^16 || >=18.0" + }, "peerDependencies": { - "jquery": ">=2.2.0" + "postcss": "^8.4.31" } }, - "node_modules/mute-stream": { - "version": "0.0.8", - "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.8.tgz", - "integrity": "sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA==", - "dev": true - }, - "node_modules/nanoid": { - "version": "3.3.6", - "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.6.tgz", - "integrity": "sha512-BGcqMMJuToF7i1rt+2PWSNVnWIkGCU78jBG3RxO/bZlnZPK2Cmi2QaffxGO/2RvWi9sL+FAiRiXMgsyxQ1DIDA==", + "node_modules/cssnano-utils": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/cssnano-utils/-/cssnano-utils-4.0.2.tgz", + "integrity": "sha512-ZR1jHg+wZ8o4c3zqf1SIUSTIvm/9mU343FMR6Obe/unskbvpGhZOo1J6d/r8D1pzkRQYuwbcH3hToOuoA2G7oQ==", "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/ai" - } - ], - "bin": { - "nanoid": "bin/nanoid.cjs" - }, "engines": { - "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" + "node": "^14 || ^16 || >=18.0" + }, + "peerDependencies": { + "postcss": "^8.4.31" } }, - "node_modules/neo-async": { - "version": "2.6.2", - "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.6.2.tgz", - "integrity": "sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==", - "dev": true + "node_modules/cssnano/node_modules/lilconfig": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/lilconfig/-/lilconfig-3.1.1.tgz", + "integrity": "sha512-O18pf7nyvHTckunPWCV1XUNXU1piu01y2b7ATJ0ppkUkk8ocqVWBrYjJBCwHDjD/ZWcfyrA0P4gKhzWGi5EINQ==", + "dev": true, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/antonk52" + } }, - "node_modules/node-fetch": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.9.tgz", - "integrity": "sha512-DJm/CJkZkRjKKj4Zi4BsKVZh3ValV5IR5s7LVZnW+6YMh0W1BfNA8XSs6DLMGYlId5F3KnA70uu2qepcR08Qqg==", + "node_modules/csso": { + "version": "5.0.5", + "resolved": "https://registry.npmjs.org/csso/-/csso-5.0.5.tgz", + "integrity": "sha512-0LrrStPOdJj+SPCCrGhzryycLjwcgUSHBtxNA8aIDxf0GLsRh1cKYhB00Gd1lDOS4yGH69+SNn13+TWbVHETFQ==", "dev": true, "dependencies": { - "whatwg-url": "^5.0.0" + "css-tree": "~2.2.0" }, "engines": { - "node": "4.x || >=6.0.0" + "node": "^10 || ^12.20.0 || ^14.13.0 || >=15.0.0", + "npm": ">=7.0.0" + } + }, + "node_modules/csso/node_modules/css-tree": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/css-tree/-/css-tree-2.2.1.tgz", + "integrity": "sha512-OA0mILzGc1kCOCSJerOeqDxDQ4HOh+G8NbOJFOTgOCzpw7fCBubk0fEyxp8AgOL/jvLgYA/uV0cMbe43ElF1JA==", + "dev": true, + "dependencies": { + "mdn-data": "2.0.28", + "source-map-js": "^1.0.1" }, - "peerDependencies": { - "encoding": "^0.1.0" - }, - "peerDependenciesMeta": { - "encoding": { - "optional": true - } + "engines": { + "node": "^10 || ^12.20.0 || ^14.13.0 || >=15.0.0", + "npm": ">=7.0.0" } }, - "node_modules/node-releases": { - "version": "2.0.10", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.10.tgz", - "integrity": "sha512-5GFldHPXVG/YZmFzJvKK2zDSzPKhEp0+ZR5SVaoSag9fsL5YgHbUHDfnG5494ISANDcK4KwPXAx2xqVEydmd7w==", + "node_modules/csso/node_modules/mdn-data": { + "version": "2.0.28", + "resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-2.0.28.tgz", + "integrity": "sha512-aylIc7Z9y4yzHYAJNuESG3hfhC+0Ibp/MAMiaOZgNv4pmEdFyfZhhhny4MNiAfWdBQ1RQ2mfDWmM1x8SvGyp8g==", "dev": true }, - "node_modules/normalize-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", - "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/onetime": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz", - "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==", + "node_modules/date-fns": { + "version": "2.30.0", + "resolved": "https://registry.npmjs.org/date-fns/-/date-fns-2.30.0.tgz", + "integrity": "sha512-fnULvOpxnC5/Vg3NCiWelDsLiUc9bRwAPs/+LfTLNvetFCtCTN+yQz15C/fs4AwX1R9K5GLtLfn8QW+dWisaAw==", "dev": true, "dependencies": { - "mimic-fn": "^2.1.0" + "@babel/runtime": "^7.21.0" }, "engines": { - "node": ">=6" + "node": ">=0.11" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/os-tmpdir": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", - "integrity": "sha512-D2FR03Vir7FIu45XBY20mTb+/ZSWB00sjU9jdQXt83gDrI4Ztz5Fs7/yy74g2N5SVQY4xY1qDr4rNddwYRVX0g==", - "dev": true, - "engines": { - "node": ">=0.10.0" + "type": "opencollective", + "url": "https://opencollective.com/date-fns" } }, - "node_modules/p-limit": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", - "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "node_modules/debug": { + "version": "4.3.4", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", + "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", "dev": true, "dependencies": { - "p-try": "^2.0.0" + "ms": "2.1.2" }, "engines": { - "node": ">=6" + "node": ">=6.0" }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } } }, - "node_modules/p-locate": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", - "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", + "node_modules/define-data-property": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/define-data-property/-/define-data-property-1.1.4.tgz", + "integrity": "sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A==", "dev": true, "dependencies": { - "p-limit": "^2.2.0" + "es-define-property": "^1.0.0", + "es-errors": "^1.3.0", + "gopd": "^1.0.1" }, "engines": { - "node": ">=8" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/p-try": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", - "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", + "node_modules/dependency-graph": { + "version": "0.11.0", + "resolved": "https://registry.npmjs.org/dependency-graph/-/dependency-graph-0.11.0.tgz", + "integrity": "sha512-JeMq7fEshyepOWDfcfHK06N3MhyPhz++vtqWhMT5O9A3K42rdsEDpfdVqjaqaAhsw6a+ZqeDvQVtD0hFHQWrzg==", "dev": true, "engines": { - "node": ">=6" + "node": ">= 0.6.0" } }, - "node_modules/path-exists": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", - "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", + "node_modules/detect-libc": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-2.0.2.tgz", + "integrity": "sha512-UX6sGumvvqSaXgdKGUsgZWqcUyIXZ/vZTrlRT/iobiKhGL0zL4d3osHj3uqllWJK+i+sixDS/3COVEOFbupFyw==", "dev": true, "engines": { "node": ">=8" } }, - "node_modules/path-key": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", - "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", + "node_modules/dev-ip": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/dev-ip/-/dev-ip-1.0.1.tgz", + "integrity": "sha512-LmVkry/oDShEgSZPNgqCIp2/TlqtExeGmymru3uCELnfyjY11IzpAproLYs+1X88fXO6DBoYP3ul2Xo2yz2j6A==", "dev": true, + "bin": { + "dev-ip": "lib/dev-ip.js" + }, "engines": { - "node": ">=8" + "node": ">= 0.8.0" } }, - "node_modules/path-parse": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", - "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", + "node_modules/didyoumean": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/didyoumean/-/didyoumean-1.2.2.tgz", + "integrity": "sha512-gxtyfqMg7GKyhQmb056K7M3xszy/myH8w+B4RT+QXBQsvAOdc3XymqDDPHx1BgPgsdAA5SIifona89YtRATDzw==", "dev": true }, - "node_modules/pegjs": { - "version": "0.10.0", - "resolved": "https://registry.npmjs.org/pegjs/-/pegjs-0.10.0.tgz", - "integrity": "sha512-qI5+oFNEGi3L5HAxDwN2LA4Gg7irF70Zs25edhjld9QemOgp0CbvMtbFcMvFtEo1OityPrcCzkQFB8JP/hxgow==", - "dev": true, - "bin": { - "pegjs": "bin/pegjs" - }, - "engines": { - "node": ">=0.10" - } + "node_modules/dlv": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/dlv/-/dlv-1.1.3.tgz", + "integrity": "sha512-+HlytyjlPKnIG8XuRG8WvmBP8xs8P71y+SKKS6ZXWoEgLuePxtDoUEiH7WkdePWrQ5JBpE6aoVqfZfJUQkjXwA==", + "dev": true }, - "node_modules/picocolors": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", - "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==", + "node_modules/doctypes": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/doctypes/-/doctypes-1.1.0.tgz", + "integrity": "sha512-LLBi6pEqS6Do3EKQ3J0NqHWV5hhb78Pi8vvESYwyOy2c31ZEZVdtitdzsQsKb7878PEERhzUk0ftqGhG6Mz+pQ==", "dev": true }, - "node_modules/picomatch": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", - "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", + "node_modules/dom-serializer": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-1.4.1.tgz", + "integrity": "sha512-VHwB3KfrcOOkelEG2ZOfxqLZdfkil8PtJi4P8N2MMXucZq2yLp75ClViUlOVwyoHEDjYU433Aq+5zWP61+RGag==", "dev": true, - "engines": { - "node": ">=8.6" + "dependencies": { + "domelementtype": "^2.0.1", + "domhandler": "^4.2.0", + "entities": "^2.0.0" }, "funding": { - "url": "https://github.com/sponsors/jonschlinkert" + "url": "https://github.com/cheeriojs/dom-serializer?sponsor=1" } }, - "node_modules/pify": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-5.0.0.tgz", - "integrity": "sha512-eW/gHNMlxdSP6dmG6uJip6FXN0EQBwm2clYYd8Wul42Cwu/DK8HEftzsapcNdYe2MfLiIwZqsDk2RDEsTE79hA==", + "node_modules/dom-serializer/node_modules/entities": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/entities/-/entities-2.2.0.tgz", + "integrity": "sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==", "dev": true, - "engines": { - "node": ">=10" - }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/pkg-dir": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz", - "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==", - "dev": true, - "dependencies": { - "find-up": "^4.0.0" - }, - "engines": { - "node": ">=8" + "url": "https://github.com/fb55/entities?sponsor=1" } }, - "node_modules/postcss": { - "version": "8.4.31", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.31.tgz", - "integrity": "sha512-PS08Iboia9mts/2ygV3eLpY5ghnUcfLV/EXTOW1E2qYxJKGGBUtNjN76FYHnMs36RmARn41bC0AZmn+rR0OVpQ==", + "node_modules/domelementtype": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.3.0.tgz", + "integrity": "sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==", "dev": true, "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/postcss" - }, { "type": "github", - "url": "https://github.com/sponsors/ai" + "url": "https://github.com/sponsors/fb55" } - ], - "dependencies": { - "nanoid": "^3.3.6", - "picocolors": "^1.0.0", - "source-map-js": "^1.0.2" - }, - "engines": { - "node": "^10 || ^12 || >=14" - } - }, - "node_modules/postcss-modules-extract-imports": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/postcss-modules-extract-imports/-/postcss-modules-extract-imports-3.0.0.tgz", - "integrity": "sha512-bdHleFnP3kZ4NYDhuGlVK+CMrQ/pqUm8bx/oGL93K6gVwiclvX5x0n76fYMKuIGKzlABOy13zsvqjb0f92TEXw==", - "dev": true, - "engines": { - "node": "^10 || ^12 || >= 14" - }, - "peerDependencies": { - "postcss": "^8.1.0" - } + ] }, - "node_modules/postcss-modules-local-by-default": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/postcss-modules-local-by-default/-/postcss-modules-local-by-default-4.0.0.tgz", - "integrity": "sha512-sT7ihtmGSF9yhm6ggikHdV0hlziDTX7oFoXtuVWeDd3hHObNkcHRo9V3yg7vCAY7cONyxJC/XXCmmiHHcvX7bQ==", + "node_modules/domhandler": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-4.3.1.tgz", + "integrity": "sha512-GrwoxYN+uWlzO8uhUXRl0P+kHE4GtVPfYzVLcUxPL7KNdHKj66vvlhiweIHqYYXWlw+T8iLMp42Lm67ghw4WMQ==", "dev": true, "dependencies": { - "icss-utils": "^5.0.0", - "postcss-selector-parser": "^6.0.2", - "postcss-value-parser": "^4.1.0" + "domelementtype": "^2.2.0" }, "engines": { - "node": "^10 || ^12 || >= 14" + "node": ">= 4" }, - "peerDependencies": { - "postcss": "^8.1.0" + "funding": { + "url": "https://github.com/fb55/domhandler?sponsor=1" } }, - "node_modules/postcss-modules-scope": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/postcss-modules-scope/-/postcss-modules-scope-3.0.0.tgz", - "integrity": "sha512-hncihwFA2yPath8oZ15PZqvWGkWf+XUfQgUGamS4LqoP1anQLOsOJw0vr7J7IwLpoY9fatA2qiGUGmuZL0Iqlg==", + "node_modules/domutils": { + "version": "2.8.0", + "resolved": "https://registry.npmjs.org/domutils/-/domutils-2.8.0.tgz", + "integrity": "sha512-w96Cjofp72M5IIhpjgobBimYEfoPjx1Vx0BSX9P30WBdZW2WIKU0T1Bd0kz2eNZ9ikjKgHbEyKx8BB6H1L3h3A==", "dev": true, "dependencies": { - "postcss-selector-parser": "^6.0.4" + "dom-serializer": "^1.0.1", + "domelementtype": "^2.2.0", + "domhandler": "^4.2.0" }, - "engines": { - "node": "^10 || ^12 || >= 14" - }, - "peerDependencies": { - "postcss": "^8.1.0" + "funding": { + "url": "https://github.com/fb55/domutils?sponsor=1" } }, - "node_modules/postcss-modules-values": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/postcss-modules-values/-/postcss-modules-values-4.0.0.tgz", - "integrity": "sha512-RDxHkAiEGI78gS2ofyvCsu7iycRv7oqw5xMWn9iMoR0N/7mf9D50ecQqUo5BZ9Zh2vH4bCUR/ktCqbB9m8vJjQ==", - "dev": true, - "dependencies": { - "icss-utils": "^5.0.0" - }, - "engines": { - "node": "^10 || ^12 || >= 14" - }, - "peerDependencies": { - "postcss": "^8.1.0" - } + "node_modules/duplexer": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/duplexer/-/duplexer-0.1.1.tgz", + "integrity": "sha512-sxNZ+ljy+RA1maXoUReeqBBpBC6RLKmg5ewzV+x+mSETmWNoKdZN6vcQjpFROemza23hGFskJtFNoUWUaQ+R4Q==", + "dev": true }, - "node_modules/postcss-selector-parser": { - "version": "6.0.11", - "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.11.tgz", - "integrity": "sha512-zbARubNdogI9j7WY4nQJBiNqQf3sLS3wCP4WfOidu+p28LofJqDH1tcXypGrcmMHhDk2t9wGhCsYe/+szLTy1g==", + "node_modules/eastasianwidth": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/eastasianwidth/-/eastasianwidth-0.2.0.tgz", + "integrity": "sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==", + "dev": true + }, + "node_modules/ee-first": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", + "integrity": "sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==", + "dev": true + }, + "node_modules/ejs": { + "version": "3.1.10", + "resolved": "https://registry.npmjs.org/ejs/-/ejs-3.1.10.tgz", + "integrity": "sha512-UeJmFfOrAQS8OJWPZ4qtgHyWExa088/MtK5UEyoJGFH67cDEXkZSviOiKRCZ4Xij0zxI3JECgYs3oKx+AizQBA==", "dev": true, "dependencies": { - "cssesc": "^3.0.0", - "util-deprecate": "^1.0.2" + "jake": "^10.8.5" + }, + "bin": { + "ejs": "bin/cli.js" }, "engines": { - "node": ">=4" + "node": ">=0.10.0" } }, - "node_modules/postcss-value-parser": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz", - "integrity": "sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==", + "node_modules/electron-to-chromium": { + "version": "1.4.707", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.707.tgz", + "integrity": "sha512-qRq74Mo7ChePOU6GHdfAJ0NREXU8vQTlVlfWz3wNygFay6xrd/fY2J7oGHwrhFeU30OVctGLdTh/FcnokTWpng==", "dev": true }, - "node_modules/punycode": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.0.tgz", - "integrity": "sha512-rRV+zQD8tVFys26lAGR9WUuS4iUAngJScM+ZRSKtvl5tKeZ2t5bvdNFdNHBW9FWR4guGHlgmsZ1G7BSm2wTbuA==", + "node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true + }, + "node_modules/encodeurl": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", + "integrity": "sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==", "dev": true, "engines": { - "node": ">=6" + "node": ">= 0.8" } }, - "node_modules/randombytes": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz", - "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==", + "node_modules/entities": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/entities/-/entities-3.0.1.tgz", + "integrity": "sha512-WiyBqoomrwMdFG1e0kqvASYfnlb0lp8M5o5Fw2OFq1hNZxxcNk8Ik0Xm7LxzBhuidnZB/UtBqVCgUz3kBOP51Q==", "dev": true, - "dependencies": { - "safe-buffer": "^5.1.0" + "engines": { + "node": ">=0.12" + }, + "funding": { + "url": "https://github.com/fb55/entities?sponsor=1" } }, - "node_modules/readdirp": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", - "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", + "node_modules/errno": { + "version": "0.1.8", + "resolved": "https://registry.npmjs.org/errno/-/errno-0.1.8.tgz", + "integrity": "sha512-dJ6oBr5SQ1VSd9qkk7ByRgb/1SH4JZjCHSW/mr63/QcXO9zLVxvJ6Oy13nio03rxpSnVDDjFor75SjVeZWPW/A==", "dev": true, "dependencies": { - "picomatch": "^2.2.1" + "prr": "~1.0.1" }, - "engines": { - "node": ">=8.10.0" + "bin": { + "errno": "cli.js" } }, - "node_modules/rechoir": { - "version": "0.7.1", - "resolved": "https://registry.npmjs.org/rechoir/-/rechoir-0.7.1.tgz", - "integrity": "sha512-/njmZ8s1wVeR6pjTZ+0nCnv8SpZNRMT2D1RLOJQESlYFDBvwpTA4KWJpZ+sBJ4+vhjILRcK7JIFdGCdxEAAitg==", + "node_modules/es-define-property": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.0.tgz", + "integrity": "sha512-jxayLKShrEqqzJ0eumQbVhTYQM27CfT1T35+gCgDFoL82JLsXqTJ76zv6A0YLOgEnLUMvLzsDsGIrl8NFpT2gQ==", "dev": true, "dependencies": { - "resolve": "^1.9.0" + "get-intrinsic": "^1.2.4" }, "engines": { - "node": ">= 0.10" + "node": ">= 0.4" } }, - "node_modules/regenerator-runtime": { - "version": "0.13.11", - "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.11.tgz", - "integrity": "sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg==", - "dev": true - }, - "node_modules/regex-parser": { - "version": "2.2.11", - "resolved": "https://registry.npmjs.org/regex-parser/-/regex-parser-2.2.11.tgz", - "integrity": "sha512-jbD/FT0+9MBU2XAZluI7w2OBs1RBi6p9M83nkoZayQXXU9e8Robt69FcZc7wU4eJD/YFTjn1JdCk3rbMJajz8Q==", - "dev": true - }, - "node_modules/require-directory": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", - "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==", + "node_modules/es-errors": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/es-errors/-/es-errors-1.3.0.tgz", + "integrity": "sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==", "dev": true, "engines": { - "node": ">=0.10.0" + "node": ">= 0.4" } }, - "node_modules/require-from-string": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz", - "integrity": "sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==", + "node_modules/escalade": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.2.tgz", + "integrity": "sha512-ErCHMCae19vR8vQGe50xIsVomy19rg6gFu3+r3jkEO46suLMWBksvVyoGgQV+jOfl84ZSOSlmv6Gxa89PmTGmA==", "dev": true, "engines": { - "node": ">=0.10.0" + "node": ">=6" } }, - "node_modules/require-main-filename": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-2.0.0.tgz", - "integrity": "sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==", + "node_modules/escape-html": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", + "integrity": "sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==", "dev": true }, - "node_modules/resolve": { - "version": "1.22.2", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.2.tgz", - "integrity": "sha512-Sb+mjNHOULsBv818T40qSPeRiuWLyaGMa5ewydRLFimneixmVy2zdivRl+AF6jaYPC8ERxGDmFSiqui6SfPd+g==", + "node_modules/escape-string-regexp": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", + "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", "dev": true, - "dependencies": { - "is-core-module": "^2.11.0", - "path-parse": "^1.0.7", - "supports-preserve-symlinks-flag": "^1.0.0" - }, - "bin": { - "resolve": "bin/resolve" + "engines": { + "node": ">=10" }, "funding": { - "url": "https://github.com/sponsors/ljharb" + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/resolve-cwd": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/resolve-cwd/-/resolve-cwd-3.0.0.tgz", - "integrity": "sha512-OrZaX2Mb+rJCpH/6CpSqt9xFVpN++x01XnN2ie9g6P5/3xelLAkXWVADpdz1IHD/KFfEXyE6V0U01OQ3UO2rEg==", + "node_modules/esprima": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", + "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", "dev": true, - "dependencies": { - "resolve-from": "^5.0.0" + "bin": { + "esparse": "bin/esparse.js", + "esvalidate": "bin/esvalidate.js" }, "engines": { - "node": ">=8" + "node": ">=4" } }, - "node_modules/resolve-from": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", - "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", - "dev": true, - "engines": { - "node": ">=8" - } + "node_modules/eventemitter3": { + "version": "4.0.7", + "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-4.0.7.tgz", + "integrity": "sha512-8guHBZCwKnFhYdHr2ysuRWErTwhoN2X8XELRlrRwpmfeY2jjuUN4taQMsULKUVo1K4DvZl+0pgfyoysHxvmvEw==", + "dev": true }, - "node_modules/resolve-url-loader": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/resolve-url-loader/-/resolve-url-loader-5.0.0.tgz", - "integrity": "sha512-uZtduh8/8srhBoMx//5bwqjQ+rfYOUq8zC9NrMUGtjBiGTtFJM42s58/36+hTqeqINcnYe08Nj3LkK9lW4N8Xg==", + "node_modules/extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==", "dev": true, "dependencies": { - "adjust-sourcemap-loader": "^4.0.0", - "convert-source-map": "^1.7.0", - "loader-utils": "^2.0.0", - "postcss": "^8.2.14", - "source-map": "0.6.1" + "is-extendable": "^0.1.0" }, "engines": { - "node": ">=12" + "node": ">=0.10.0" } }, - "node_modules/restore-cursor": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-3.1.0.tgz", - "integrity": "sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==", + "node_modules/fast-glob": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.2.tgz", + "integrity": "sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow==", "dev": true, "dependencies": { - "onetime": "^5.1.0", - "signal-exit": "^3.0.2" + "@nodelib/fs.stat": "^2.0.2", + "@nodelib/fs.walk": "^1.2.3", + "glob-parent": "^5.1.2", + "merge2": "^1.3.0", + "micromatch": "^4.0.4" }, "engines": { - "node": ">=8" + "node": ">=8.6.0" } }, - "node_modules/run-async": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.4.1.tgz", - "integrity": "sha512-tvVnVv01b8c1RrA6Ep7JkStj85Guv/YrMcwqYQnwjsAS2cTmmPGBBjAjpCW7RrSodNSoE2/qg9O4bceNvUuDgQ==", + "node_modules/fastq": { + "version": "1.17.1", + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.17.1.tgz", + "integrity": "sha512-sRVD3lWVIXWg6By68ZN7vho9a1pQcN/WBFaAAsDDFzlJjvoGx0P8z7V1t72grFJfJhu3YPZBuu25f7Kaw2jN1w==", "dev": true, - "engines": { - "node": ">=0.12.0" + "dependencies": { + "reusify": "^1.0.4" } }, - "node_modules/rxjs": { - "version": "6.6.7", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.6.7.tgz", - "integrity": "sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ==", + "node_modules/filelist": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/filelist/-/filelist-1.0.4.tgz", + "integrity": "sha512-w1cEuf3S+DrLCQL7ET6kz+gmlJdbq9J7yXCSjK/OZCPA+qEN1WyF4ZAf0YYJa4/shHJra2t/d/r8SV4Ji+x+8Q==", "dev": true, "dependencies": { - "tslib": "^1.9.0" - }, - "engines": { - "npm": ">=2.0.0" + "minimatch": "^5.0.1" } }, - "node_modules/safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", - "dev": true - }, - "node_modules/safer-buffer": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", - "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", - "dev": true + "node_modules/filelist/node_modules/brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0" + } }, - "node_modules/sass": { - "version": "1.62.1", - "resolved": "https://registry.npmjs.org/sass/-/sass-1.62.1.tgz", - "integrity": "sha512-NHpxIzN29MXvWiuswfc1W3I0N8SXBd8UR26WntmDlRYf0bSADnwnOjsyMZ3lMezSlArD33Vs3YFhp7dWvL770A==", + "node_modules/filelist/node_modules/minimatch": { + "version": "5.1.6", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.6.tgz", + "integrity": "sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==", "dev": true, "dependencies": { - "chokidar": ">=3.0.0 <4.0.0", - "immutable": "^4.0.0", - "source-map-js": ">=0.6.2 <2.0.0" - }, - "bin": { - "sass": "sass.js" + "brace-expansion": "^2.0.1" }, "engines": { - "node": ">=14.0.0" + "node": ">=10" } }, - "node_modules/sass-loader": { - "version": "13.2.2", - "resolved": "https://registry.npmjs.org/sass-loader/-/sass-loader-13.2.2.tgz", - "integrity": "sha512-nrIdVAAte3B9icfBiGWvmMhT/D+eCDwnk+yA7VE/76dp/WkHX+i44Q/pfo71NYbwj0Ap+PGsn0ekOuU1WFJ2AA==", + "node_modules/fill-range": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", + "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", "dev": true, "dependencies": { - "klona": "^2.0.6", - "neo-async": "^2.6.2" + "to-regex-range": "^5.0.1" }, "engines": { - "node": ">= 14.15.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - }, - "peerDependencies": { - "fibers": ">= 3.1.0", - "node-sass": "^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0", - "sass": "^1.3.0", - "sass-embedded": "*", - "webpack": "^5.0.0" - }, - "peerDependenciesMeta": { - "fibers": { - "optional": true - }, - "node-sass": { - "optional": true - }, - "sass": { - "optional": true - }, - "sass-embedded": { - "optional": true - } + "node": ">=8" } }, - "node_modules/schema-utils": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.0.1.tgz", - "integrity": "sha512-lELhBAAly9NowEsX0yZBlw9ahZG+sK/1RJ21EpzdYHKEs13Vku3LJ+MIPhh4sMs0oCCeufZQEQbMekiA4vuVIQ==", + "node_modules/finalhandler": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.2.0.tgz", + "integrity": "sha512-5uXcUVftlQMFnWC9qu/svkWv3GTd2PfUhK/3PLkYNAe7FbqJMt3515HaxE6eRL74GdsriiwujiawdaB1BpEISg==", "dev": true, "dependencies": { - "@types/json-schema": "^7.0.9", - "ajv": "^8.9.0", - "ajv-formats": "^2.1.1", - "ajv-keywords": "^5.1.0" + "debug": "2.6.9", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "on-finished": "2.4.1", + "parseurl": "~1.3.3", + "statuses": "2.0.1", + "unpipe": "~1.0.0" }, "engines": { - "node": ">= 12.13.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" + "node": ">= 0.8" } }, - "node_modules/semver": { - "version": "7.5.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.0.tgz", - "integrity": "sha512-+XC0AD/R7Q2mPSRuy2Id0+CGTZ98+8f+KvwirxOKIEyid+XSx6HbC63p+O4IndTHuX5Z+JxQ0TghCkO5Cg/2HA==", + "node_modules/finalhandler/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", "dev": true, "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" + "ms": "2.0.0" + } + }, + "node_modules/finalhandler/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true + }, + "node_modules/flat-cache": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.2.0.tgz", + "integrity": "sha512-CYcENa+FtcUKLmhhqyctpclsq7QF38pKjZHsGNiSQF5r4FtoKDWabFDl3hzaEQMvT1LHEysw5twgLvpYYb4vbw==", + "dev": true, + "dependencies": { + "flatted": "^3.2.9", + "keyv": "^4.5.3", + "rimraf": "^3.0.2" }, "engines": { - "node": ">=10" + "node": "^10.12.0 || >=12.0.0" } }, - "node_modules/serialize-javascript": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-6.0.1.tgz", - "integrity": "sha512-owoXEFjWRllis8/M1Q+Cw5k8ZH40e3zhp/ovX+Xr/vi1qj6QesbyXXViFbpNvWvPNAD62SutwEXavefrLJWj7w==", + "node_modules/flat-cache/node_modules/rimraf": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", + "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", "dev": true, "dependencies": { - "randombytes": "^2.1.0" + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/set-blocking": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", - "integrity": "sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw==", + "node_modules/flatted": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.3.1.tgz", + "integrity": "sha512-X8cqMLLie7KsNUDSdzeN8FYK9rEt4Dt67OsG/DNGnYTSDBG4uFAJFBnUeiV+zCVAvwFy56IjM9sH51jVaEhNxw==", "dev": true }, - "node_modules/shallow-clone": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/shallow-clone/-/shallow-clone-3.0.1.tgz", - "integrity": "sha512-/6KqX+GVUdqPuPPd2LxDDxzX6CAbjJehAAOKlNpqqUpAqPM6HeL8f+o3a+JsyGjn2lv0WY8UsTgUJjU9Ok55NA==", + "node_modules/foreground-child": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.1.1.tgz", + "integrity": "sha512-TMKDUnIte6bfb5nWv7V/caI169OHgvwjb7V4WkeUvbQQdjr5rWKqHFiKWb/fcOwB+CzBT+qbWjvj+DVwRskpIg==", "dev": true, "dependencies": { - "kind-of": "^6.0.2" + "cross-spawn": "^7.0.0", + "signal-exit": "^4.0.1" }, "engines": { - "node": ">=8" + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/shebang-command": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", - "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", + "node_modules/fraction.js": { + "version": "4.3.7", + "resolved": "https://registry.npmjs.org/fraction.js/-/fraction.js-4.3.7.tgz", + "integrity": "sha512-ZsDfxO51wGAXREY55a7la9LScWpwv9RxIrYABrlvOFBlH/ShPnrtsXeuUIfXKKOVicNxQ+o8JTbJvjS4M89yew==", "dev": true, - "dependencies": { - "shebang-regex": "^3.0.0" - }, "engines": { - "node": ">=8" + "node": "*" + }, + "funding": { + "type": "patreon", + "url": "https://github.com/sponsors/rawify" } }, - "node_modules/shebang-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", - "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", + "node_modules/fs-extra": { + "version": "11.2.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-11.2.0.tgz", + "integrity": "sha512-PmDi3uwK5nFuXh7XDTlVnS17xJS7vW36is2+w3xcv8SVxiB4NyATf4ctkVY5bkSjX0Y4nbvZCq1/EjtEyr9ktw==", "dev": true, + "dependencies": { + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + }, "engines": { - "node": ">=8" + "node": ">=14.14" } }, - "node_modules/signal-exit": { - "version": "3.0.7", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", - "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", + "node_modules/fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==", "dev": true }, - "node_modules/source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "node_modules/fsevents": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", + "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", "dev": true, + "hasInstallScript": true, + "optional": true, + "os": [ + "darwin" + ], "engines": { - "node": ">=0.10.0" + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" } }, - "node_modules/source-map-js": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.2.tgz", - "integrity": "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==", + "node_modules/function-bind": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz", + "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/get-caller-file": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", + "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", "dev": true, "engines": { - "node": ">=0.10.0" + "node": "6.* || 8.* || >= 10.*" } }, - "node_modules/source-map-support": { - "version": "0.5.21", - "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz", - "integrity": "sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==", + "node_modules/get-intrinsic": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.4.tgz", + "integrity": "sha512-5uYhsJH8VJBTv7oslg4BznJYhDoRI6waYCxMmCdnTrcCrHA/fCFKoTFz2JKKE0HdDFUF7/oQuhzumXJK7paBRQ==", "dev": true, "dependencies": { - "buffer-from": "^1.0.0", - "source-map": "^0.6.0" + "es-errors": "^1.3.0", + "function-bind": "^1.1.2", + "has-proto": "^1.0.1", + "has-symbols": "^1.0.3", + "hasown": "^2.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "node_modules/get-stdin": { + "version": "9.0.0", + "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-9.0.0.tgz", + "integrity": "sha512-dVKBjfWisLAicarI2Sf+JuBE/DghV4UzNAVe9yhEJuzeREd3JhOTE9cUaJTeSa77fsbQUK3pcOpJfM59+VKZaA==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/glob": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", "dev": true, "dependencies": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" }, "engines": { - "node": ">=8" + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "node_modules/glob-parent": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", "dev": true, "dependencies": { - "ansi-regex": "^5.0.1" + "is-glob": "^4.0.1" }, "engines": { - "node": ">=8" + "node": ">= 6" } }, - "node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "node_modules/globby": { + "version": "14.0.1", + "resolved": "https://registry.npmjs.org/globby/-/globby-14.0.1.tgz", + "integrity": "sha512-jOMLD2Z7MAhyG8aJpNOpmziMOP4rPLcc95oQPKXBazW82z+CEgPFBQvEpRUa1KeIMUJo4Wsm+q6uzO/Q/4BksQ==", "dev": true, "dependencies": { - "has-flag": "^4.0.0" + "@sindresorhus/merge-streams": "^2.1.0", + "fast-glob": "^3.3.2", + "ignore": "^5.2.4", + "path-type": "^5.0.0", + "slash": "^5.1.0", + "unicorn-magic": "^0.1.0" }, "engines": { - "node": ">=8" + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/supports-preserve-symlinks-flag": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", - "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", + "node_modules/globby/node_modules/slash": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-5.1.0.tgz", + "integrity": "sha512-ZA6oR3T/pEyuqwMgAKT0/hAv8oAXckzbkmR0UkUosQ+Mc4RxGoJkRmwHgHufaenlyAgE1Mxgpdcrf75y6XcnDg==", "dev": true, "engines": { - "node": ">= 0.4" + "node": ">=14.16" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/gopd": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.0.1.tgz", + "integrity": "sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==", + "dev": true, + "dependencies": { + "get-intrinsic": "^1.1.3" }, "funding": { "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/tapable": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.2.1.tgz", - "integrity": "sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==", + "node_modules/graceful-fs": { + "version": "4.2.11", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", + "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==", + "dev": true + }, + "node_modules/gray-matter": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/gray-matter/-/gray-matter-4.0.3.tgz", + "integrity": "sha512-5v6yZd4JK3eMI3FqqCouswVqwugaA9r4dNZB1wwcmrD02QkV5H0y7XBQW8QwQqEaZY1pM9aqORSORhJRdNK44Q==", "dev": true, + "dependencies": { + "js-yaml": "^3.13.1", + "kind-of": "^6.0.2", + "section-matter": "^1.0.0", + "strip-bom-string": "^1.0.0" + }, "engines": { - "node": ">=6" + "node": ">=6.0" } }, - "node_modules/terser": { - "version": "5.17.1", - "resolved": "https://registry.npmjs.org/terser/-/terser-5.17.1.tgz", - "integrity": "sha512-hVl35zClmpisy6oaoKALOpS0rDYLxRFLHhRuDlEGTKey9qHjS1w9GMORjuwIMt70Wan4lwsLYyWDVnWgF+KUEw==", + "node_modules/hamljs": { + "version": "0.6.2", + "resolved": "https://registry.npmjs.org/hamljs/-/hamljs-0.6.2.tgz", + "integrity": "sha512-/chXRp4WpL47I+HX1vCCdSbEXAljEG2FBMmgO7Am0bYsqgnEjreeWzUdX1onXqwZtcfgxbCg5WtEYYvuZ5muBg==", + "dev": true + }, + "node_modules/handlebars": { + "version": "4.7.8", + "resolved": "https://registry.npmjs.org/handlebars/-/handlebars-4.7.8.tgz", + "integrity": "sha512-vafaFqs8MZkRrSX7sFVUdo3ap/eNiLnb4IakshzvP56X5Nr1iGKAIqdX6tMlm6HcNRIkr6AxO5jFEoJzzpT8aQ==", "dev": true, "dependencies": { - "@jridgewell/source-map": "^0.3.2", - "acorn": "^8.5.0", - "commander": "^2.20.0", - "source-map-support": "~0.5.20" + "minimist": "^1.2.5", + "neo-async": "^2.6.2", + "source-map": "^0.6.1", + "wordwrap": "^1.0.0" }, "bin": { - "terser": "bin/terser" + "handlebars": "bin/handlebars" }, "engines": { - "node": ">=10" + "node": ">=0.4.7" + }, + "optionalDependencies": { + "uglify-js": "^3.1.4" } }, - "node_modules/terser-webpack-plugin": { - "version": "5.3.7", - "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-5.3.7.tgz", - "integrity": "sha512-AfKwIktyP7Cu50xNjXF/6Qb5lBNzYaWpU6YfoX3uZicTx0zTy0stDDCsvjDapKsSDvOeWo5MEq4TmdBy2cNoHw==", + "node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", "dev": true, - "dependencies": { - "@jridgewell/trace-mapping": "^0.3.17", - "jest-worker": "^27.4.5", - "schema-utils": "^3.1.1", - "serialize-javascript": "^6.0.1", - "terser": "^5.16.5" - }, "engines": { - "node": ">= 10.13.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - }, - "peerDependencies": { - "webpack": "^5.1.0" - }, - "peerDependenciesMeta": { - "@swc/core": { - "optional": true - }, - "esbuild": { - "optional": true - }, - "uglify-js": { - "optional": true - } + "node": ">=8" } }, - "node_modules/terser-webpack-plugin/node_modules/ajv": { - "version": "6.12.6", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", - "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "node_modules/has-property-descriptors": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.2.tgz", + "integrity": "sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg==", "dev": true, "dependencies": { - "fast-deep-equal": "^3.1.1", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.4.1", - "uri-js": "^4.2.2" + "es-define-property": "^1.0.0" }, "funding": { - "type": "github", - "url": "https://github.com/sponsors/epoberezkin" + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/terser-webpack-plugin/node_modules/ajv-keywords": { - "version": "3.5.2", - "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz", - "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==", + "node_modules/has-proto": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has-proto/-/has-proto-1.0.3.tgz", + "integrity": "sha512-SJ1amZAJUiZS+PhsVLf5tGydlaVB8EdFpaSO4gmiUKUOxk8qzn5AIy4ZeJUmh22znIdk/uMAUT2pl3FxzVUH+Q==", "dev": true, - "peerDependencies": { - "ajv": "^6.9.1" + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/terser-webpack-plugin/node_modules/json-schema-traverse": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", - "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", - "dev": true - }, - "node_modules/terser-webpack-plugin/node_modules/schema-utils": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.1.2.tgz", - "integrity": "sha512-pvjEHOgWc9OWA/f/DE3ohBWTD6EleVLf7iFUkoSwAxttdBhB9QUebQgxER2kWueOvRJXPHNnyrvvh9eZINB8Eg==", + "node_modules/has-symbols": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz", + "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==", "dev": true, - "dependencies": { - "@types/json-schema": "^7.0.8", - "ajv": "^6.12.5", - "ajv-keywords": "^3.5.2" - }, "engines": { - "node": ">= 10.13.0" + "node": ">= 0.4" }, "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/through": { - "version": "2.3.8", - "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", - "integrity": "sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg==", - "dev": true - }, - "node_modules/tmp": { - "version": "0.0.33", - "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz", - "integrity": "sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==", + "node_modules/has-tostringtag": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.2.tgz", + "integrity": "sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw==", "dev": true, "dependencies": { - "os-tmpdir": "~1.0.2" + "has-symbols": "^1.0.3" }, "engines": { - "node": ">=0.6.0" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/to-regex-range": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", - "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "node_modules/hasown": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.2.tgz", + "integrity": "sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==", "dev": true, "dependencies": { - "is-number": "^7.0.0" + "function-bind": "^1.1.2" }, "engines": { - "node": ">=8.0" + "node": ">= 0.4" } }, - "node_modules/tr46": { - "version": "0.0.3", - "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", - "integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==", - "dev": true - }, - "node_modules/tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", - "dev": true + "node_modules/htmlparser2": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-7.2.0.tgz", + "integrity": "sha512-H7MImA4MS6cw7nbyURtLPO1Tms7C5H602LRETv95z1MxO/7CP7rDVROehUYeYBUYEON94NXXDEPmZuq+hX4sog==", + "dev": true, + "funding": [ + "https://github.com/fb55/htmlparser2?sponsor=1", + { + "type": "github", + "url": "https://github.com/sponsors/fb55" + } + ], + "dependencies": { + "domelementtype": "^2.0.1", + "domhandler": "^4.2.2", + "domutils": "^2.8.0", + "entities": "^3.0.1" + } }, - "node_modules/type-fest": { - "version": "0.21.3", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.21.3.tgz", - "integrity": "sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==", + "node_modules/http-equiv-refresh": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/http-equiv-refresh/-/http-equiv-refresh-1.0.0.tgz", + "integrity": "sha512-TScO04soylRN9i/QdOdgZyhydXg9z6XdaGzEyOgDKycePeDeTT4KvigjBcI+tgfTlieLWauGORMq5F1eIDa+1w==", "dev": true, "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">= 0.10" } }, - "node_modules/update-browserslist-db": { - "version": "1.0.11", - "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.11.tgz", - "integrity": "sha512-dCwEFf0/oT85M1fHBg4F0jtLwJrutGoHSQXCh7u4o2t1drG+c0a9Flnqww6XUKSfQMPpJBRjU8d4RXB09qtvaA==", + "node_modules/ignore": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.1.tgz", + "integrity": "sha512-5Fytz/IraMjqpwfd34ke28PTVMjZjJG2MPn5t7OE4eUCUNf8BAa7b5WUS9/Qvr6mwOQS7Mk6vdsMno5he+T8Xw==", + "dev": true, + "engines": { + "node": ">= 4" + } + }, + "node_modules/image-size": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/image-size/-/image-size-1.1.1.tgz", + "integrity": "sha512-541xKlUw6jr/6gGuk92F+mYM5zaFAc5ahphvkqvNe2bQ6gVBkd6bfrmVJ2t4KDAfikAYZyIqTnktX3i6/aQDrQ==", "dev": true, - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/browserslist" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/browserslist" - }, - { - "type": "github", - "url": "https://github.com/sponsors/ai" - } - ], "dependencies": { - "escalade": "^3.1.1", - "picocolors": "^1.0.0" + "queue": "6.0.2" }, "bin": { - "update-browserslist-db": "cli.js" + "image-size": "bin/image-size.js" }, - "peerDependencies": { - "browserslist": ">= 4.21.0" + "engines": { + "node": ">=16.x" } }, - "node_modules/uri-js": { - "version": "4.4.1", - "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", - "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", + "node_modules/inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", "dev": true, "dependencies": { - "punycode": "^2.1.0" + "once": "^1.3.0", + "wrappy": "1" } }, - "node_modules/util-deprecate": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", - "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==", + "node_modules/inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", "dev": true }, - "node_modules/watchpack": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.4.0.tgz", - "integrity": "sha512-Lcvm7MGST/4fup+ifyKi2hjyIAwcdI4HRgtvTpIUxBRhB+RFtUh8XtDOxUfctVCnhVi+QQj49i91OyvzkJl6cg==", + "node_modules/is-alphabetical": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-alphabetical/-/is-alphabetical-1.0.4.tgz", + "integrity": "sha512-DwzsA04LQ10FHTZuL0/grVDk4rFoVH1pjAToYwBrHSxcrBIGQuXrQMtD5U1b0U2XVgKZCTLLP8u2Qxqhy3l2Vg==", + "dev": true, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/is-alphanumerical": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-alphanumerical/-/is-alphanumerical-1.0.4.tgz", + "integrity": "sha512-UzoZUr+XfVz3t3v4KyGEniVL9BDRoQtY7tOyrRybkVNjDFWyo1yhXNGrrBTQxp3ib9BLAWs7k2YKBQsFRkZG9A==", "dev": true, "dependencies": { - "glob-to-regexp": "^0.4.1", - "graceful-fs": "^4.1.2" + "is-alphabetical": "^1.0.0", + "is-decimal": "^1.0.0" }, - "engines": { - "node": ">=10.13.0" + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" } }, - "node_modules/webidl-conversions": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz", - "integrity": "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==", + "node_modules/is-arrayish": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.3.2.tgz", + "integrity": "sha512-eVRqCvVlZbuw3GrM63ovNSNAeA1K16kaR/LRY/92w0zxQ5/1YzwblUX652i4Xs9RwAGjW9d9y6X88t8OaAJfWQ==", "dev": true }, - "node_modules/webpack": { - "version": "5.80.0", - "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.80.0.tgz", - "integrity": "sha512-OIMiq37XK1rWO8mH9ssfFKZsXg4n6klTEDL7S8/HqbAOBBaiy8ABvXvz0dDCXeEF9gqwxSvVk611zFPjS8hJxA==", - "dev": true, - "dependencies": { - "@types/eslint-scope": "^3.7.3", - "@types/estree": "^1.0.0", - "@webassemblyjs/ast": "^1.11.5", - "@webassemblyjs/wasm-edit": "^1.11.5", - "@webassemblyjs/wasm-parser": "^1.11.5", - "acorn": "^8.7.1", - "acorn-import-assertions": "^1.7.6", - "browserslist": "^4.14.5", - "chrome-trace-event": "^1.0.2", - "enhanced-resolve": "^5.13.0", - "es-module-lexer": "^1.2.1", - "eslint-scope": "5.1.1", - "events": "^3.2.0", - "glob-to-regexp": "^0.4.1", - "graceful-fs": "^4.2.9", - "json-parse-even-better-errors": "^2.3.1", - "loader-runner": "^4.2.0", - "mime-types": "^2.1.27", - "neo-async": "^2.6.2", - "schema-utils": "^3.1.2", - "tapable": "^2.1.1", - "terser-webpack-plugin": "^5.3.7", - "watchpack": "^2.4.0", - "webpack-sources": "^3.2.3" - }, - "bin": { - "webpack": "bin/webpack.js" + "node_modules/is-binary-path": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", + "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", + "dev": true, + "dependencies": { + "binary-extensions": "^2.0.0" }, "engines": { - "node": ">=10.13.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - }, - "peerDependenciesMeta": { - "webpack-cli": { - "optional": true - } + "node": ">=8" } }, - "node_modules/webpack-cli": { - "version": "4.10.0", - "resolved": "https://registry.npmjs.org/webpack-cli/-/webpack-cli-4.10.0.tgz", - "integrity": "sha512-NLhDfH/h4O6UOy+0LSso42xvYypClINuMNBVVzX4vX98TmTaTUxwRbXdhucbFMd2qLaCTcLq/PdYrvi8onw90w==", + "node_modules/is-core-module": { + "version": "2.13.1", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.13.1.tgz", + "integrity": "sha512-hHrIjvZsftOsvKSn2TRYl63zvxsgE0K+0mYMoH6gD4omR5IWB2KynivBQczo3+wF1cCkjzvptnI9Q0sPU66ilw==", "dev": true, "dependencies": { - "@discoveryjs/json-ext": "^0.5.0", - "@webpack-cli/configtest": "^1.2.0", - "@webpack-cli/info": "^1.5.0", - "@webpack-cli/serve": "^1.7.0", - "colorette": "^2.0.14", - "commander": "^7.0.0", - "cross-spawn": "^7.0.3", - "fastest-levenshtein": "^1.0.12", - "import-local": "^3.0.2", - "interpret": "^2.2.0", - "rechoir": "^0.7.0", - "webpack-merge": "^5.7.3" - }, - "bin": { - "webpack-cli": "bin/cli.js" - }, - "engines": { - "node": ">=10.13.0" + "hasown": "^2.0.0" }, "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - }, - "peerDependencies": { - "webpack": "4.x.x || 5.x.x" - }, - "peerDependenciesMeta": { - "@webpack-cli/generators": { - "optional": true - }, - "@webpack-cli/migrate": { - "optional": true - }, - "webpack-bundle-analyzer": { - "optional": true - }, - "webpack-dev-server": { - "optional": true - } + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/webpack-cli/node_modules/commander": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/commander/-/commander-7.2.0.tgz", - "integrity": "sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw==", + "node_modules/is-decimal": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-decimal/-/is-decimal-1.0.4.tgz", + "integrity": "sha512-RGdriMmQQvZ2aqaQq3awNA6dCGtKpiDFcOzrTWrDAT2MiWrKQVPmxLGHl7Y2nNu6led0kEyoX0enY0qXYsv9zw==", "dev": true, - "engines": { - "node": ">= 10" + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" } }, - "node_modules/webpack-merge": { - "version": "5.8.0", - "resolved": "https://registry.npmjs.org/webpack-merge/-/webpack-merge-5.8.0.tgz", - "integrity": "sha512-/SaI7xY0831XwP6kzuwhKWVKDP9t1QY1h65lAFLbZqMPIuYcD9QAW4u9STIbU9kaJbPBB/geU/gLr1wDjOhQ+Q==", + "node_modules/is-expression": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/is-expression/-/is-expression-4.0.0.tgz", + "integrity": "sha512-zMIXX63sxzG3XrkHkrAPvm/OVZVSCPNkwMHU8oTX7/U3AL78I0QXCEICXUM13BIa8TYGZ68PiTKfQz3yaTNr4A==", "dev": true, "dependencies": { - "clone-deep": "^4.0.1", - "wildcard": "^2.0.0" - }, + "acorn": "^7.1.1", + "object-assign": "^4.1.1" + } + }, + "node_modules/is-extendable": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", + "integrity": "sha512-5BMULNob1vgFX6EjQw5izWDxrecWK9AM72rugNr0TFldMOi0fj6Jk+zeKIt0xGj4cEfQIJth4w3OKWOJ4f+AFw==", + "dev": true, "engines": { - "node": ">=10.0.0" + "node": ">=0.10.0" } }, - "node_modules/webpack-sources": { - "version": "3.2.3", - "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-3.2.3.tgz", - "integrity": "sha512-/DyMEOrDgLKKIG0fmvtz+4dUX/3Ghozwgm6iPp8KRhvn+eQf9+Q7GWxVNMk3+uCPWfdXYC4ExGBckIXdFEfH1w==", + "node_modules/is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", "dev": true, "engines": { - "node": ">=10.13.0" + "node": ">=0.10.0" + } + }, + "node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "dev": true, + "engines": { + "node": ">=8" } }, - "node_modules/webpack/node_modules/ajv": { - "version": "6.12.6", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", - "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "node_modules/is-glob": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", + "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", "dev": true, "dependencies": { - "fast-deep-equal": "^3.1.1", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.4.1", - "uri-js": "^4.2.2" + "is-extglob": "^2.1.1" }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/epoberezkin" + "engines": { + "node": ">=0.10.0" } }, - "node_modules/webpack/node_modules/ajv-keywords": { - "version": "3.5.2", - "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz", - "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==", + "node_modules/is-json": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-json/-/is-json-2.0.1.tgz", + "integrity": "sha512-6BEnpVn1rcf3ngfmViLM6vjUjGErbdrL4rwlv+u1NO1XO8kqT4YGL8+19Q+Z/bas8tY90BTWMk2+fW1g6hQjbA==", + "dev": true + }, + "node_modules/is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", "dev": true, - "peerDependencies": { - "ajv": "^6.9.1" + "engines": { + "node": ">=0.12.0" } }, - "node_modules/webpack/node_modules/json-schema-traverse": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", - "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", + "node_modules/is-promise": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/is-promise/-/is-promise-2.2.2.tgz", + "integrity": "sha512-+lP4/6lKUBfQjZ2pdxThZvLUAafmZb8OAxFb8XXtiQmS35INgr85hdOGoEs124ez1FCnZJt6jau/T+alh58QFQ==", "dev": true }, - "node_modules/webpack/node_modules/schema-utils": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.1.2.tgz", - "integrity": "sha512-pvjEHOgWc9OWA/f/DE3ohBWTD6EleVLf7iFUkoSwAxttdBhB9QUebQgxER2kWueOvRJXPHNnyrvvh9eZINB8Eg==", + "node_modules/is-regex": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.4.tgz", + "integrity": "sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==", "dev": true, "dependencies": { - "@types/json-schema": "^7.0.8", - "ajv": "^6.12.5", - "ajv-keywords": "^3.5.2" + "call-bind": "^1.0.2", + "has-tostringtag": "^1.0.0" }, "engines": { - "node": ">= 10.13.0" + "node": ">= 0.4" }, "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/what-input": { - "version": "5.2.12", - "resolved": "https://registry.npmjs.org/what-input/-/what-input-5.2.12.tgz", - "integrity": "sha512-3yrSa7nGSXGJS6wZeSkO6VNm95pB1mZ9i3wFzC1hhY7mn4/afue/MvXz04OXNdBC8bfo4AB4RRd3Dem9jXM58Q==", - "peer": true + "node_modules/isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", + "dev": true }, - "node_modules/whatwg-url": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz", - "integrity": "sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==", + "node_modules/iso-639-1": { + "version": "2.1.15", + "resolved": "https://registry.npmjs.org/iso-639-1/-/iso-639-1-2.1.15.tgz", + "integrity": "sha512-7c7mBznZu2ktfvyT582E2msM+Udc1EjOyhVRE/0ZsjD9LBtWSm23h3PtiRh2a35XoUsTQQjJXaJzuLjXsOdFDg==", + "dev": true, + "engines": { + "node": ">=6.0" + } + }, + "node_modules/jackspeak": { + "version": "2.3.6", + "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-2.3.6.tgz", + "integrity": "sha512-N3yCS/NegsOBokc8GAdM8UcmfsKiSS8cipheD/nivzr700H+nsMOxJjQnvwOcRYVuFkdH0wGUvW2WbXGmrZGbQ==", "dev": true, "dependencies": { - "tr46": "~0.0.3", - "webidl-conversions": "^3.0.0" + "@isaacs/cliui": "^8.0.2" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + }, + "optionalDependencies": { + "@pkgjs/parseargs": "^0.11.0" } }, - "node_modules/which": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", - "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "node_modules/jake": { + "version": "10.8.7", + "resolved": "https://registry.npmjs.org/jake/-/jake-10.8.7.tgz", + "integrity": "sha512-ZDi3aP+fG/LchyBzUM804VjddnwfSfsdeYkwt8NcbKRvo4rFkjhs456iLFn3k2ZUWvNe4i48WACDbza8fhq2+w==", "dev": true, "dependencies": { - "isexe": "^2.0.0" + "async": "^3.2.3", + "chalk": "^4.0.2", + "filelist": "^1.0.4", + "minimatch": "^3.1.2" }, "bin": { - "node-which": "bin/node-which" + "jake": "bin/cli.js" }, "engines": { - "node": ">= 8" + "node": ">=10" } }, - "node_modules/which-module": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz", - "integrity": "sha512-B+enWhmw6cjfVC7kS8Pj9pCrKSc5txArRyaYGe088shv/FGWH+0Rjx/xPgtsWfsUtS27FkP697E4DDhgrgoc0Q==", - "dev": true + "node_modules/jiti": { + "version": "1.21.0", + "resolved": "https://registry.npmjs.org/jiti/-/jiti-1.21.0.tgz", + "integrity": "sha512-gFqAIbuKyyso/3G2qhiO2OM6shY6EPP/R0+mkDbyspxKazh8BXDC5FiFsUjlczgdNz/vfra0da2y+aHrusLG/Q==", + "dev": true, + "bin": { + "jiti": "bin/jiti.js" + } }, - "node_modules/wildcard": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/wildcard/-/wildcard-2.0.0.tgz", - "integrity": "sha512-JcKqAHLPxcdb9KM49dufGXn2x3ssnfjbcaQdLlfZsL9rH9wgDQjUtDxbo8NE0F6SFvydeu1VhZe7hZuHsB2/pw==", + "node_modules/js-stringify": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/js-stringify/-/js-stringify-1.0.2.tgz", + "integrity": "sha512-rtS5ATOo2Q5k1G+DADISilDA6lv79zIiwFd6CcjuIxGKLFm5C+RLImRscVap9k55i+MOZwgliw+NejvkLuGD5g==", "dev": true }, - "node_modules/wrap-ansi": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz", - "integrity": "sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==", + "node_modules/js-yaml": { + "version": "3.14.1", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", + "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", "dev": true, "dependencies": { - "ansi-styles": "^4.0.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0" + "argparse": "^1.0.7", + "esprima": "^4.0.0" }, - "engines": { - "node": ">=8" + "bin": { + "js-yaml": "bin/js-yaml.js" } }, - "node_modules/y18n": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.3.tgz", - "integrity": "sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ==", - "dev": true - }, - "node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "node_modules/json-buffer": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.1.tgz", + "integrity": "sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==", "dev": true }, - "node_modules/yargs": { - "version": "15.4.1", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-15.4.1.tgz", - "integrity": "sha512-aePbxDmcYW++PaqBsJ+HYUFwCdv4LVvdnhBy78E57PIor8/OVvhMrADFFEDh8DHDFRv/O9i3lPhsENjO7QX0+A==", + "node_modules/jsonfile": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.1.0.tgz", + "integrity": "sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==", "dev": true, "dependencies": { - "cliui": "^6.0.0", - "decamelize": "^1.2.0", - "find-up": "^4.1.0", - "get-caller-file": "^2.0.1", - "require-directory": "^2.1.1", - "require-main-filename": "^2.0.0", - "set-blocking": "^2.0.0", - "string-width": "^4.2.0", - "which-module": "^2.0.0", - "y18n": "^4.0.0", - "yargs-parser": "^18.1.2" + "universalify": "^2.0.0" }, - "engines": { - "node": ">=8" + "optionalDependencies": { + "graceful-fs": "^4.1.6" } }, - "node_modules/yargs-parser": { - "version": "18.1.3", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-18.1.3.tgz", - "integrity": "sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==", + "node_modules/jstransformer": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/jstransformer/-/jstransformer-1.0.0.tgz", + "integrity": "sha512-C9YK3Rf8q6VAPDCCU9fnqo3mAfOH6vUGnMcP4AQAYIEpWtfGLpwOTmZ+igtdK5y+VvI2n3CyYSzy4Qh34eq24A==", "dev": true, "dependencies": { - "camelcase": "^5.0.0", - "decamelize": "^1.2.0" - }, - "engines": { - "node": ">=6" + "is-promise": "^2.0.0", + "promise": "^7.0.1" } - } - }, - "dependencies": { - "@babel/runtime": { - "version": "7.21.0", - "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.21.0.tgz", - "integrity": "sha512-xwII0//EObnq89Ji5AKYQaRYiW/nZ3llSv29d49IuxPhKbtJoLP+9QUUZ4nVragQVtaVGeZrpB+ZtG/Pdy/POw==", + }, + "node_modules/junk": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/junk/-/junk-1.0.3.tgz", + "integrity": "sha512-3KF80UaaSSxo8jVnRYtMKNGFOoVPBdkkVPsw+Ad0y4oxKXPduS6G6iHkrf69yJVff/VAaYXkV42rtZ7daJxU3w==", "dev": true, - "requires": { - "regenerator-runtime": "^0.13.11" + "engines": { + "node": ">=0.10.0" } }, - "@discoveryjs/json-ext": { - "version": "0.5.7", - "resolved": "https://registry.npmjs.org/@discoveryjs/json-ext/-/json-ext-0.5.7.tgz", - "integrity": "sha512-dBVuXR082gk3jsFp7Rd/JI4kytwGHecnCoTtXFb7DB6CNHp4rg5k1bhg0nWdLGLnOV71lmDzGQaLMy8iPLY0pw==", - "dev": true - }, - "@jridgewell/gen-mapping": { - "version": "0.3.3", - "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.3.tgz", - "integrity": "sha512-HLhSWOLRi875zjjMG/r+Nv0oCW8umGb0BgEhyX3dDX3egwZtB8PqLnjz3yedt8R5StBrzcg4aBpnh8UA9D1BoQ==", + "node_modules/keyv": { + "version": "4.5.4", + "resolved": "https://registry.npmjs.org/keyv/-/keyv-4.5.4.tgz", + "integrity": "sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==", "dev": true, - "requires": { - "@jridgewell/set-array": "^1.0.1", - "@jridgewell/sourcemap-codec": "^1.4.10", - "@jridgewell/trace-mapping": "^0.3.9" + "dependencies": { + "json-buffer": "3.0.1" } }, - "@jridgewell/resolve-uri": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.0.tgz", - "integrity": "sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w==", - "dev": true + "node_modules/kind-of": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", + "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } }, - "@jridgewell/set-array": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.2.tgz", - "integrity": "sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==", - "dev": true + "node_modules/kleur": { + "version": "4.1.5", + "resolved": "https://registry.npmjs.org/kleur/-/kleur-4.1.5.tgz", + "integrity": "sha512-o+NO+8WrRiQEE4/7nwRJhN1HWpVmJm511pBHUxPLtp0BUISzlBplORYSmTclCnJvQq2tKu/sgl3xVpkc7ZWuQQ==", + "dev": true, + "engines": { + "node": ">=6" + } }, - "@jridgewell/source-map": { - "version": "0.3.3", - "resolved": "https://registry.npmjs.org/@jridgewell/source-map/-/source-map-0.3.3.tgz", - "integrity": "sha512-b+fsZXeLYi9fEULmfBrhxn4IrPlINf8fiNarzTof004v3lFdntdwa9PF7vFJqm3mg7s+ScJMxXaE3Acp1irZcg==", + "node_modules/lilconfig": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/lilconfig/-/lilconfig-2.1.0.tgz", + "integrity": "sha512-utWOt/GHzuUxnLKxB6dk81RoOeoNeHgbrXiuGk4yyF5qlRz+iIVWu56E2fqGHFrXz0QNUhLB/8nKqvRH66JKGQ==", "dev": true, - "requires": { - "@jridgewell/gen-mapping": "^0.3.0", - "@jridgewell/trace-mapping": "^0.3.9" + "engines": { + "node": ">=10" } }, - "@jridgewell/sourcemap-codec": { - "version": "1.4.14", - "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz", - "integrity": "sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==", + "node_modules/lines-and-columns": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz", + "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==", "dev": true }, - "@jridgewell/trace-mapping": { - "version": "0.3.18", - "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.18.tgz", - "integrity": "sha512-w+niJYzMHdd7USdiH2U6869nqhD2nbfZXND5Yp93qIbEmnDNk7PD48o+YchRVpzMU7M6jVCbenTR7PA1FLQ9pA==", + "node_modules/linkify-it": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/linkify-it/-/linkify-it-5.0.0.tgz", + "integrity": "sha512-5aHCbzQRADcdP+ATqnDuhhJ/MRIqDkZX5pyjFHRRysS8vZ5AbqGEoFIb6pYHPZ+L/OC2Lc+xT8uHVVR5CAK/wQ==", "dev": true, - "requires": { - "@jridgewell/resolve-uri": "3.1.0", - "@jridgewell/sourcemap-codec": "1.4.14" + "dependencies": { + "uc.micro": "^2.0.0" } }, - "@types/eslint": { - "version": "8.37.0", - "resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-8.37.0.tgz", - "integrity": "sha512-Piet7dG2JBuDIfohBngQ3rCt7MgO9xCO4xIMKxBThCq5PNRB91IjlJ10eJVwfoNtvTErmxLzwBZ7rHZtbOMmFQ==", + "node_modules/liquidjs": { + "version": "10.10.1", + "resolved": "https://registry.npmjs.org/liquidjs/-/liquidjs-10.10.1.tgz", + "integrity": "sha512-h699VW79OLoshCTjFF02tmRCrd8t/E49LSIsjLwlg4k0TbMVjxsCRXVUEsURXbfKl3HUln2cShlDQCrSNm2YaA==", "dev": true, - "requires": { - "@types/estree": "*", - "@types/json-schema": "*" + "dependencies": { + "commander": "^10.0.0" + }, + "bin": { + "liquid": "bin/liquid.js", + "liquidjs": "bin/liquid.js" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/liquidjs" } }, - "@types/eslint-scope": { - "version": "3.7.4", - "resolved": "https://registry.npmjs.org/@types/eslint-scope/-/eslint-scope-3.7.4.tgz", - "integrity": "sha512-9K4zoImiZc3HlIp6AVUDE4CWYx22a+lhSZMYNpbjW04+YF0KWj4pJXnEMjdnFTiQibFFmElcsasJXDbdI/EPhA==", + "node_modules/liquidjs/node_modules/commander": { + "version": "10.0.1", + "resolved": "https://registry.npmjs.org/commander/-/commander-10.0.1.tgz", + "integrity": "sha512-y4Mg2tXshplEbSGzx7amzPwKKOCGuoSRP/CjEdwwk0FOGlUbq6lKuoyDZTNZkmxHdJtp54hdfY/JUrdL7Xfdug==", "dev": true, - "requires": { - "@types/eslint": "*", - "@types/estree": "*" + "engines": { + "node": ">=14" } }, - "@types/estree": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.1.tgz", - "integrity": "sha512-LG4opVs2ANWZ1TJoKc937iMmNstM/d0ae1vNbnBvBhqCSezgVUOzcLCqbI5elV8Vy6WKwKjaqR+zO9VKirBBCA==", + "node_modules/list-to-array": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/list-to-array/-/list-to-array-1.1.0.tgz", + "integrity": "sha512-+dAZZ2mM+/m+vY9ezfoueVvrgnHIGi5FvgSymbIgJOFwiznWyA59mav95L+Mc6xPtL3s9gm5eNTlNtxJLbNM1g==", "dev": true }, - "@types/json-schema": { - "version": "7.0.11", - "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.11.tgz", - "integrity": "sha512-wOuvG1SN4Us4rez+tylwwwCV1psiNVOkJeM3AUWUNWg/jDQY2+HE/444y5gc+jBmRqASOm2Oeh5c1axHobwRKQ==", + "node_modules/lodash": { + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", + "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==", "dev": true }, - "@types/node": { - "version": "18.15.12", - "resolved": "https://registry.npmjs.org/@types/node/-/node-18.15.12.tgz", - "integrity": "sha512-Wha1UwsB3CYdqUm2PPzh/1gujGCNtWVUYF0mB00fJFoR4gTyWTDPjSm+zBF787Ahw8vSGgBja90MkgFwvB86Dg==", + "node_modules/lodash.castarray": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/lodash.castarray/-/lodash.castarray-4.4.0.tgz", + "integrity": "sha512-aVx8ztPv7/2ULbArGJ2Y42bG1mEQ5mGjpdvrbJcJFU3TbYybe+QlLS4pst9zV52ymy2in1KpFPiZnAOATxD4+Q==", "dev": true }, - "@webassemblyjs/ast": { - "version": "1.11.5", - "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.11.5.tgz", - "integrity": "sha512-LHY/GSAZZRpsNQH+/oHqhRQ5FT7eoULcBqgfyTB5nQHogFnK3/7QoN7dLnwSE/JkUAF0SrRuclT7ODqMFtWxxQ==", - "dev": true, - "requires": { - "@webassemblyjs/helper-numbers": "1.11.5", - "@webassemblyjs/helper-wasm-bytecode": "1.11.5" - } - }, - "@webassemblyjs/floating-point-hex-parser": { - "version": "1.11.5", - "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.11.5.tgz", - "integrity": "sha512-1j1zTIC5EZOtCplMBG/IEwLtUojtwFVwdyVMbL/hwWqbzlQoJsWCOavrdnLkemwNoC/EOwtUFch3fuo+cbcXYQ==", + "node_modules/lodash.deburr": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/lodash.deburr/-/lodash.deburr-4.1.0.tgz", + "integrity": "sha512-m/M1U1f3ddMCs6Hq2tAsYThTBDaAKFDX3dwDo97GEYzamXi9SqUpjWi/Rrj/gf3X2n8ktwgZrlP1z6E3v/IExQ==", "dev": true }, - "@webassemblyjs/helper-api-error": { - "version": "1.11.5", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.11.5.tgz", - "integrity": "sha512-L65bDPmfpY0+yFrsgz8b6LhXmbbs38OnwDCf6NpnMUYqa+ENfE5Dq9E42ny0qz/PdR0LJyq/T5YijPnU8AXEpA==", + "node_modules/lodash.isplainobject": { + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/lodash.isplainobject/-/lodash.isplainobject-4.0.6.tgz", + "integrity": "sha512-oSXzaWypCMHkPC3NvBEaPHf0KsA5mvPrOPgQWDsbg8n7orZ290M0BmC/jgRZ4vcJ6DTAhjrsSYgdsW/F+MFOBA==", "dev": true }, - "@webassemblyjs/helper-buffer": { - "version": "1.11.5", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.11.5.tgz", - "integrity": "sha512-fDKo1gstwFFSfacIeH5KfwzjykIE6ldh1iH9Y/8YkAZrhmu4TctqYjSh7t0K2VyDSXOZJ1MLhht/k9IvYGcIxg==", + "node_modules/lodash.memoize": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/lodash.memoize/-/lodash.memoize-4.1.2.tgz", + "integrity": "sha512-t7j+NzmgnQzTAYXcsHYLgimltOV1MXHtlOWf6GjL9Kj8GK5FInw5JotxvbOs+IvV1/Dzo04/fCGfLVs7aXb4Ag==", "dev": true }, - "@webassemblyjs/helper-numbers": { - "version": "1.11.5", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-numbers/-/helper-numbers-1.11.5.tgz", - "integrity": "sha512-DhykHXM0ZABqfIGYNv93A5KKDw/+ywBFnuWybZZWcuzWHfbp21wUfRkbtz7dMGwGgT4iXjWuhRMA2Mzod6W4WA==", - "dev": true, - "requires": { - "@webassemblyjs/floating-point-hex-parser": "1.11.5", - "@webassemblyjs/helper-api-error": "1.11.5", - "@xtuc/long": "4.2.2" - } + "node_modules/lodash.merge": { + "version": "4.6.2", + "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz", + "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==", + "dev": true }, - "@webassemblyjs/helper-wasm-bytecode": { - "version": "1.11.5", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.11.5.tgz", - "integrity": "sha512-oC4Qa0bNcqnjAowFn7MPCETQgDYytpsfvz4ujZz63Zu/a/v71HeCAAmZsgZ3YVKec3zSPYytG3/PrRCqbtcAvA==", + "node_modules/lodash.uniq": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.uniq/-/lodash.uniq-4.5.0.tgz", + "integrity": "sha512-xfBaXQd9ryd9dlSDvnvI0lvxfLJlYAZzXomUYzLKtUeOQvOP5piqAWuGtrhWeqaXK9hhoM/iyJc5AV+XfsX3HQ==", "dev": true }, - "@webassemblyjs/helper-wasm-section": { - "version": "1.11.5", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.11.5.tgz", - "integrity": "sha512-uEoThA1LN2NA+K3B9wDo3yKlBfVtC6rh0i4/6hvbz071E8gTNZD/pT0MsBf7MeD6KbApMSkaAK0XeKyOZC7CIA==", + "node_modules/lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", "dev": true, - "requires": { - "@webassemblyjs/ast": "1.11.5", - "@webassemblyjs/helper-buffer": "1.11.5", - "@webassemblyjs/helper-wasm-bytecode": "1.11.5", - "@webassemblyjs/wasm-gen": "1.11.5" + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" } }, - "@webassemblyjs/ieee754": { - "version": "1.11.5", - "resolved": "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.11.5.tgz", - "integrity": "sha512-37aGq6qVL8A8oPbPrSGMBcp38YZFXcHfiROflJn9jxSdSMMM5dS5P/9e2/TpaJuhE+wFrbukN2WI6Hw9MH5acg==", + "node_modules/luxon": { + "version": "3.4.4", + "resolved": "https://registry.npmjs.org/luxon/-/luxon-3.4.4.tgz", + "integrity": "sha512-zobTr7akeGHnv7eBOXcRgMeCP6+uyYsczwmeRCauvpvaAltgNyTbLH/+VaEAPUeWBT+1GuNmz4wC/6jtQzbbVA==", "dev": true, - "requires": { - "@xtuc/ieee754": "^1.2.0" + "engines": { + "node": ">=12" } }, - "@webassemblyjs/leb128": { - "version": "1.11.5", - "resolved": "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.11.5.tgz", - "integrity": "sha512-ajqrRSXaTJoPW+xmkfYN6l8VIeNnR4vBOTQO9HzR7IygoCcKWkICbKFbVTNMjMgMREqXEr0+2M6zukzM47ZUfQ==", + "node_modules/markdown-it": { + "version": "14.0.0", + "resolved": "https://registry.npmjs.org/markdown-it/-/markdown-it-14.0.0.tgz", + "integrity": "sha512-seFjF0FIcPt4P9U39Bq1JYblX0KZCjDLFFQPHpL5AzHpqPEKtosxmdq/LTVZnjfH7tjt9BxStm+wXcDBNuYmzw==", "dev": true, - "requires": { - "@xtuc/long": "4.2.2" + "dependencies": { + "argparse": "^2.0.1", + "entities": "^4.4.0", + "linkify-it": "^5.0.0", + "mdurl": "^2.0.0", + "punycode.js": "^2.3.1", + "uc.micro": "^2.0.0" + }, + "bin": { + "markdown-it": "bin/markdown-it.mjs" } }, - "@webassemblyjs/utf8": { - "version": "1.11.5", - "resolved": "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.11.5.tgz", - "integrity": "sha512-WiOhulHKTZU5UPlRl53gHR8OxdGsSOxqfpqWeA2FmcwBMaoEdz6b2x2si3IwC9/fSPLfe8pBMRTHVMk5nlwnFQ==", + "node_modules/markdown-it/node_modules/argparse": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", "dev": true }, - "@webassemblyjs/wasm-edit": { - "version": "1.11.5", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.11.5.tgz", - "integrity": "sha512-C0p9D2fAu3Twwqvygvf42iGCQ4av8MFBLiTb+08SZ4cEdwzWx9QeAHDo1E2k+9s/0w1DM40oflJOpkZ8jW4HCQ==", - "dev": true, - "requires": { - "@webassemblyjs/ast": "1.11.5", - "@webassemblyjs/helper-buffer": "1.11.5", - "@webassemblyjs/helper-wasm-bytecode": "1.11.5", - "@webassemblyjs/helper-wasm-section": "1.11.5", - "@webassemblyjs/wasm-gen": "1.11.5", - "@webassemblyjs/wasm-opt": "1.11.5", - "@webassemblyjs/wasm-parser": "1.11.5", - "@webassemblyjs/wast-printer": "1.11.5" - } - }, - "@webassemblyjs/wasm-gen": { - "version": "1.11.5", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.11.5.tgz", - "integrity": "sha512-14vteRlRjxLK9eSyYFvw1K8Vv+iPdZU0Aebk3j6oB8TQiQYuO6hj9s4d7qf6f2HJr2khzvNldAFG13CgdkAIfA==", + "node_modules/markdown-it/node_modules/entities": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/entities/-/entities-4.5.0.tgz", + "integrity": "sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==", "dev": true, - "requires": { - "@webassemblyjs/ast": "1.11.5", - "@webassemblyjs/helper-wasm-bytecode": "1.11.5", - "@webassemblyjs/ieee754": "1.11.5", - "@webassemblyjs/leb128": "1.11.5", - "@webassemblyjs/utf8": "1.11.5" + "engines": { + "node": ">=0.12" + }, + "funding": { + "url": "https://github.com/fb55/entities?sponsor=1" } }, - "@webassemblyjs/wasm-opt": { - "version": "1.11.5", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.11.5.tgz", - "integrity": "sha512-tcKwlIXstBQgbKy1MlbDMlXaxpucn42eb17H29rawYLxm5+MsEmgPzeCP8B1Cl69hCice8LeKgZpRUAPtqYPgw==", + "node_modules/maximatch": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/maximatch/-/maximatch-0.1.0.tgz", + "integrity": "sha512-9ORVtDUFk4u/NFfo0vG/ND/z7UQCVZBL539YW0+U1I7H1BkZwizcPx5foFv7LCPcBnm2U6RjFnQOsIvN4/Vm2A==", "dev": true, - "requires": { - "@webassemblyjs/ast": "1.11.5", - "@webassemblyjs/helper-buffer": "1.11.5", - "@webassemblyjs/wasm-gen": "1.11.5", - "@webassemblyjs/wasm-parser": "1.11.5" + "dependencies": { + "array-differ": "^1.0.0", + "array-union": "^1.0.1", + "arrify": "^1.0.0", + "minimatch": "^3.0.0" + }, + "engines": { + "node": ">=0.10.0" } }, - "@webassemblyjs/wasm-parser": { - "version": "1.11.5", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.11.5.tgz", - "integrity": "sha512-SVXUIwsLQlc8srSD7jejsfTU83g7pIGr2YYNb9oHdtldSxaOhvA5xwvIiWIfcX8PlSakgqMXsLpLfbbJ4cBYew==", + "node_modules/maximatch/node_modules/array-differ": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/array-differ/-/array-differ-1.0.0.tgz", + "integrity": "sha512-LeZY+DZDRnvP7eMuQ6LHfCzUGxAAIViUBliK24P3hWXL6y4SortgR6Nim6xrkfSLlmH0+k+9NYNwVC2s53ZrYQ==", "dev": true, - "requires": { - "@webassemblyjs/ast": "1.11.5", - "@webassemblyjs/helper-api-error": "1.11.5", - "@webassemblyjs/helper-wasm-bytecode": "1.11.5", - "@webassemblyjs/ieee754": "1.11.5", - "@webassemblyjs/leb128": "1.11.5", - "@webassemblyjs/utf8": "1.11.5" + "engines": { + "node": ">=0.10.0" } }, - "@webassemblyjs/wast-printer": { - "version": "1.11.5", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.11.5.tgz", - "integrity": "sha512-f7Pq3wvg3GSPUPzR0F6bmI89Hdb+u9WXrSKc4v+N0aV0q6r42WoF92Jp2jEorBEBRoRNXgjp53nBniDXcqZYPA==", + "node_modules/maximatch/node_modules/array-union": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/array-union/-/array-union-1.0.2.tgz", + "integrity": "sha512-Dxr6QJj/RdU/hCaBjOfxW+q6lyuVE6JFWIrAUpuOOhoJJoQ99cUn3igRaHVB5P9WrgFVN0FfArM3x0cueOU8ng==", "dev": true, - "requires": { - "@webassemblyjs/ast": "1.11.5", - "@xtuc/long": "4.2.2" + "dependencies": { + "array-uniq": "^1.0.1" + }, + "engines": { + "node": ">=0.10.0" } }, - "@webpack-cli/configtest": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/@webpack-cli/configtest/-/configtest-1.2.0.tgz", - "integrity": "sha512-4FB8Tj6xyVkyqjj1OaTqCjXYULB9FMkqQ8yGrZjRDrYh0nOE+7Lhs45WioWQQMV+ceFlE368Ukhe6xdvJM9Egg==", - "dev": true, - "requires": {} - }, - "@webpack-cli/info": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/@webpack-cli/info/-/info-1.5.0.tgz", - "integrity": "sha512-e8tSXZpw2hPl2uMJY6fsMswaok5FdlGNRTktvFk2sD8RjH0hE2+XistawJx1vmKteh4NmGmNUrp+Tb2w+udPcQ==", + "node_modules/maximatch/node_modules/arrify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz", + "integrity": "sha512-3CYzex9M9FGQjCGMGyi6/31c8GJbgb0qGyrx5HWxPd0aCwh4cB2YjMb2Xf9UuoogrMrlO9cTqnB5rI5GHZTcUA==", "dev": true, - "requires": { - "envinfo": "^7.7.3" + "engines": { + "node": ">=0.10.0" } }, - "@webpack-cli/serve": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/@webpack-cli/serve/-/serve-1.7.0.tgz", - "integrity": "sha512-oxnCNGj88fL+xzV+dacXs44HcDwf1ovs3AuEzvP7mqXw7fQntqIhQ1BRmynh4qEKQSSSRSWVyXRjmTbZIX9V2Q==", - "dev": true, - "requires": {} - }, - "@xtuc/ieee754": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/@xtuc/ieee754/-/ieee754-1.2.0.tgz", - "integrity": "sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA==", - "dev": true - }, - "@xtuc/long": { - "version": "4.2.2", - "resolved": "https://registry.npmjs.org/@xtuc/long/-/long-4.2.2.tgz", - "integrity": "sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==", + "node_modules/mdn-data": { + "version": "2.0.30", + "resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-2.0.30.tgz", + "integrity": "sha512-GaqWWShW4kv/G9IEucWScBx9G1/vsFZZJUO+tD26M8J8z3Kw5RDQjaoZe03YAClgeS/SWPOcb4nkFBTEi5DUEA==", "dev": true }, - "acorn": { - "version": "8.8.2", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.8.2.tgz", - "integrity": "sha512-xjIYgE8HBrkpd/sJqOGNspf8uHG+NOHGOw6a/Urj8taM2EXfdNAH2oFcPeIFfsv3+kz/mJrS5VuMqbNLjCa2vw==", + "node_modules/mdurl": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/mdurl/-/mdurl-2.0.0.tgz", + "integrity": "sha512-Lf+9+2r+Tdp5wXDXC4PcIBjTDtq4UKjCPMQhKIuzpJNW0b96kVqSwW0bT7FhRSfmAiFYgP+SCRvdrDozfh0U5w==", "dev": true }, - "acorn-import-assertions": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/acorn-import-assertions/-/acorn-import-assertions-1.8.0.tgz", - "integrity": "sha512-m7VZ3jwz4eK6A4Vtt8Ew1/mNbP24u0FhdyfA7fSvnJR6LMdfOYnmuIrrJAgrYfYJ10F/otaHTtrtrtmHdMNzEw==", - "dev": true, - "requires": {} - }, - "adjust-sourcemap-loader": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/adjust-sourcemap-loader/-/adjust-sourcemap-loader-4.0.0.tgz", - "integrity": "sha512-OXwN5b9pCUXNQHJpwwD2qP40byEmSgzj8B4ydSN0uMNYWiFmJ6x6KwUllMmfk8Rwu/HJDFR7U8ubsWBoN0Xp0A==", - "dev": true, - "requires": { - "loader-utils": "^2.0.0", - "regex-parser": "^2.2.11" - } - }, - "ajv": { - "version": "8.12.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz", - "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==", + "node_modules/merge2": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", + "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", "dev": true, - "requires": { - "fast-deep-equal": "^3.1.1", - "json-schema-traverse": "^1.0.0", - "require-from-string": "^2.0.2", - "uri-js": "^4.2.2" + "engines": { + "node": ">= 8" } }, - "ajv-formats": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ajv-formats/-/ajv-formats-2.1.1.tgz", - "integrity": "sha512-Wx0Kx52hxE7C18hkMEggYlEifqWZtYaRgouJor+WMdPnQyEK13vgEWyVNup7SoeeoLMsr4kf5h6dOW11I15MUA==", + "node_modules/micromatch": { + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz", + "integrity": "sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==", "dev": true, - "requires": { - "ajv": "^8.0.0" + "dependencies": { + "braces": "^3.0.2", + "picomatch": "^2.3.1" + }, + "engines": { + "node": ">=8.6" } }, - "ajv-keywords": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-5.1.0.tgz", - "integrity": "sha512-YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw==", + "node_modules/mime": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/mime/-/mime-3.0.0.tgz", + "integrity": "sha512-jSCU7/VB1loIWBZe14aEYHU/+1UMEHoaO7qxCOVJOw9GgH72VAWppxNcjU+x9a2k3GSIBXNKxXQFqRvvZ7vr3A==", "dev": true, - "requires": { - "fast-deep-equal": "^3.1.3" + "bin": { + "mime": "cli.js" + }, + "engines": { + "node": ">=10.0.0" } }, - "all-contributors-cli": { - "version": "6.24.0", - "resolved": "https://registry.npmjs.org/all-contributors-cli/-/all-contributors-cli-6.24.0.tgz", - "integrity": "sha512-7oSKr2PnqxsOotuSwciltcFTS1eVRdjR0cn99hbElfff7gRQBShVhsf/XBprY41sLcgqTk0l0MKgKv6QNgZdMg==", + "node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", "dev": true, - "requires": { - "@babel/runtime": "^7.7.6", - "async": "^3.1.0", - "chalk": "^4.0.0", - "didyoumean": "^1.2.1", - "inquirer": "^7.3.3", - "json-fixer": "^1.6.8", - "lodash": "^4.11.2", - "node-fetch": "^2.6.0", - "pify": "^5.0.0", - "yargs": "^15.0.1" + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" } }, - "ansi-escapes": { - "version": "4.3.2", - "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.2.tgz", - "integrity": "sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==", + "node_modules/minimist": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz", + "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==", "dev": true, - "requires": { - "type-fest": "^0.21.3" + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - "dev": true - }, - "ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "node_modules/minipass": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", "dev": true, - "requires": { - "color-convert": "^2.0.1" + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=8" } }, - "anymatch": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", - "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", + "node_modules/mkdirp": { + "version": "0.5.6", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", + "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", "dev": true, - "requires": { - "normalize-path": "^3.0.0", - "picomatch": "^2.0.4" + "dependencies": { + "minimist": "^1.2.6" + }, + "bin": { + "mkdirp": "bin/cmd.js" } }, - "async": { - "version": "3.2.4", - "resolved": "https://registry.npmjs.org/async/-/async-3.2.4.tgz", - "integrity": "sha512-iAB+JbDEGXhyIUavoDl9WP/Jj106Kz9DEn1DPgYw5ruDn0e3Wgi3sKFm55sASdGBNOQB8F59d9qQ7deqrHA8wQ==", + "node_modules/moo": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/moo/-/moo-0.5.2.tgz", + "integrity": "sha512-iSAJLHYKnX41mKcJKjqvnAN9sf0LMDTXDEvFv+ffuRR9a1MIuXLjMNL6EsnDHSkKLTWNqQQ5uo61P4EbU4NU+Q==", "dev": true }, - "big.js": { - "version": "5.2.2", - "resolved": "https://registry.npmjs.org/big.js/-/big.js-5.2.2.tgz", - "integrity": "sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ==", + "node_modules/morphdom": { + "version": "2.7.2", + "resolved": "https://registry.npmjs.org/morphdom/-/morphdom-2.7.2.tgz", + "integrity": "sha512-Dqb/lHFyTi7SZpY0a5R4I/0Edo+iPMbaUexsHHsLAByyixCDiLHPHyVoKVmrpL0THcT7V9Cgev9y21TQYq6wQg==", "dev": true }, - "binary-extensions": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", - "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==", + "node_modules/ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", "dev": true }, - "braces": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", - "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "node_modules/multimatch": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/multimatch/-/multimatch-5.0.0.tgz", + "integrity": "sha512-ypMKuglUrZUD99Tk2bUQ+xNQj43lPEfAeX2o9cTteAmShXy2VHDJpuwu1o0xqoKCt9jLVAvwyFKdLTPXKAfJyA==", "dev": true, - "requires": { - "fill-range": "^7.0.1" + "dependencies": { + "@types/minimatch": "^3.0.3", + "array-differ": "^3.0.0", + "array-union": "^2.1.0", + "arrify": "^2.0.1", + "minimatch": "^3.0.4" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "browserslist": { - "version": "4.21.5", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.21.5.tgz", - "integrity": "sha512-tUkiguQGW7S3IhB7N+c2MV/HZPSCPAAiYBZXLsBhFB/PCy6ZKKsZrmBayHV9fdGV/ARIfJ14NkxKzRDjvp7L6w==", + "node_modules/mustache": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/mustache/-/mustache-4.2.0.tgz", + "integrity": "sha512-71ippSywq5Yb7/tVYyGbkBggbU8H3u5Rz56fH60jGFgr8uHwxs+aSKeqmluIVzM0m0kB7xQjKS6qPfd0b2ZoqQ==", "dev": true, - "requires": { - "caniuse-lite": "^1.0.30001449", - "electron-to-chromium": "^1.4.284", - "node-releases": "^2.0.8", - "update-browserslist-db": "^1.0.10" + "bin": { + "mustache": "bin/mustache" } }, - "buffer-from": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", - "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==", - "dev": true - }, - "camelcase": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", - "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", - "dev": true - }, - "caniuse-lite": { - "version": "1.0.30001480", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001480.tgz", - "integrity": "sha512-q7cpoPPvZYgtyC4VaBSN0Bt+PJ4c4EYRf0DrduInOz2SkFpHD5p3LnvEpqBp7UnJn+8x1Ogl1s38saUxe+ihQQ==", - "dev": true - }, - "chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "node_modules/mz": { + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/mz/-/mz-2.7.0.tgz", + "integrity": "sha512-z81GNO7nnYMEhrGh9LeymoE4+Yr0Wn5McHIZMK5cfQCl+NDX08sCZgUc9/6MHni9IWuFLm1Z3HTCXu2z9fN62Q==", "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" + "dependencies": { + "any-promise": "^1.0.0", + "object-assign": "^4.0.1", + "thenify-all": "^1.0.0" } }, - "chardet": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/chardet/-/chardet-0.7.0.tgz", - "integrity": "sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==", + "node_modules/mz/node_modules/any-promise": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/any-promise/-/any-promise-1.3.0.tgz", + "integrity": "sha512-7UvmKalWRt1wgjL1RrGxoSJW/0QZFIegpeGvZG9kjp8vrRu55XTHbwnqq2GpXm9uLbcuhxm3IqX9OB4MZR1b2A==", "dev": true }, - "chokidar": { - "version": "3.5.3", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz", - "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==", + "node_modules/nanoid": { + "version": "3.3.7", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.7.tgz", + "integrity": "sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g==", "dev": true, - "requires": { - "anymatch": "~3.1.2", - "braces": "~3.0.2", - "fsevents": "~2.3.2", - "glob-parent": "~5.1.2", - "is-binary-path": "~2.1.0", - "is-glob": "~4.0.1", - "normalize-path": "~3.0.0", - "readdirp": "~3.6.0" + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "bin": { + "nanoid": "bin/nanoid.cjs" + }, + "engines": { + "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" } }, - "chrome-trace-event": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/chrome-trace-event/-/chrome-trace-event-1.0.3.tgz", - "integrity": "sha512-p3KULyQg4S7NIHixdwbGX+nFHkoBiA4YQmyWtjb8XngSKV124nJmRysgAeujbUVb15vh+RvFUfCPqU7rXk+hZg==", + "node_modules/neo-async": { + "version": "2.6.2", + "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.6.2.tgz", + "integrity": "sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==", "dev": true }, - "cli-cursor": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.1.0.tgz", - "integrity": "sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==", + "node_modules/node-fetch": { + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.7.0.tgz", + "integrity": "sha512-c4FRfUm/dbcWZ7U+1Wq0AwCyFL+3nt2bEw05wfxSz+DWpWsitgmSgYmy2dQdWyKC1694ELPqMs/YzUSNozLt8A==", "dev": true, - "requires": { - "restore-cursor": "^3.1.0" + "dependencies": { + "whatwg-url": "^5.0.0" + }, + "engines": { + "node": "4.x || >=6.0.0" + }, + "peerDependencies": { + "encoding": "^0.1.0" + }, + "peerDependenciesMeta": { + "encoding": { + "optional": true + } } }, - "cli-width": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-3.0.0.tgz", - "integrity": "sha512-FxqpkPPwu1HjuN93Omfm4h8uIanXofW0RxVEW3k5RKx+mJJYSthzNhp32Kzxxy3YAEZ/Dc/EWN1vZRY0+kOhbw==", + "node_modules/node-releases": { + "version": "2.0.14", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.14.tgz", + "integrity": "sha512-y10wOWt8yZpqXmOgRo77WaHEmhYQYGNA6y421PKsKYWEK8aW+cqAphborZDhqfyKrbZEN92CN1X2KbafY2s7Yw==", "dev": true }, - "cliui": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-6.0.0.tgz", - "integrity": "sha512-t6wbgtoCXvAzst7QgXxJYqPt0usEfbgQdftEPbLL/cvv6HPE5VgvqCuAIDR0NgU52ds6rFwqrgakNLrHEjCbrQ==", + "node_modules/normalize-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", "dev": true, - "requires": { - "string-width": "^4.2.0", - "strip-ansi": "^6.0.0", - "wrap-ansi": "^6.2.0" + "engines": { + "node": ">=0.10.0" } }, - "clone-deep": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/clone-deep/-/clone-deep-4.0.1.tgz", - "integrity": "sha512-neHB9xuzh/wk0dIHweyAXv2aPGZIVk3pLMe+/RNzINf17fe0OG96QroktYAUm7SM1PBnzTabaLboqqxDyMU+SQ==", + "node_modules/normalize-range": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/normalize-range/-/normalize-range-0.1.2.tgz", + "integrity": "sha512-bdok/XvKII3nUpklnV6P2hxtMNrCboOjAcyBuQnWEhO665FwrSNRxU+AqpsyvO6LgGYPspN+lu5CLtw4jPRKNA==", "dev": true, - "requires": { - "is-plain-object": "^2.0.4", - "kind-of": "^6.0.2", - "shallow-clone": "^3.0.0" + "engines": { + "node": ">=0.10.0" } }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "node_modules/nth-check": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-2.1.1.tgz", + "integrity": "sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w==", "dev": true, - "requires": { - "color-name": "~1.1.4" + "dependencies": { + "boolbase": "^1.0.0" + }, + "funding": { + "url": "https://github.com/fb55/nth-check?sponsor=1" } }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "colorette": { - "version": "2.0.20", - "resolved": "https://registry.npmjs.org/colorette/-/colorette-2.0.20.tgz", - "integrity": "sha512-IfEDxwoWIjkeXL1eXcDiow4UbKjhLdq6/EuSVR9GMN7KVH3r9gQ83e73hsz1Nd1T3ijd5xv1wcWRYO+D6kCI2w==", - "dev": true - }, - "commander": { - "version": "2.20.3", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", - "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", - "dev": true - }, - "convert-source-map": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.7.0.tgz", - "integrity": "sha512-4FJkXzKXEDB1snCFZlLP4gpC3JILicCpGbzG9f9G7tGqGCzETQ2hWPrcinA9oU4wtf2biUaEH5065UnMeR33oA==", + "node_modules/nunjucks": { + "version": "3.2.4", + "resolved": "https://registry.npmjs.org/nunjucks/-/nunjucks-3.2.4.tgz", + "integrity": "sha512-26XRV6BhkgK0VOxfbU5cQI+ICFUtMLixv1noZn1tGU38kQH5A5nmmbk/O45xdyBhD1esk47nKrY0mvQpZIhRjQ==", "dev": true, - "requires": { - "safe-buffer": "~5.1.1" + "dependencies": { + "a-sync-waterfall": "^1.0.0", + "asap": "^2.0.3", + "commander": "^5.1.0" + }, + "bin": { + "nunjucks-precompile": "bin/precompile" + }, + "engines": { + "node": ">= 6.9.0" + }, + "peerDependencies": { + "chokidar": "^3.3.0" + }, + "peerDependenciesMeta": { + "chokidar": { + "optional": true + } } }, - "cross-spawn": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", - "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", + "node_modules/nunjucks/node_modules/commander": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-5.1.0.tgz", + "integrity": "sha512-P0CysNDQ7rtVw4QIQtm+MRxV66vKFSvlsQvGYXZWR3qFU0jlMKHZZZgw8e+8DSah4UDKMqnknRDQz+xuQXQ/Zg==", "dev": true, - "requires": { - "path-key": "^3.1.0", - "shebang-command": "^2.0.0", - "which": "^2.0.1" + "engines": { + "node": ">= 6" } }, - "css-loader": { - "version": "6.7.3", - "resolved": "https://registry.npmjs.org/css-loader/-/css-loader-6.7.3.tgz", - "integrity": "sha512-qhOH1KlBMnZP8FzRO6YCH9UHXQhVMcEGLyNdb7Hv2cpcmJbW0YrddO+tG1ab5nT41KpHIYGsbeHqxB9xPu1pKQ==", + "node_modules/object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==", "dev": true, - "requires": { - "icss-utils": "^5.1.0", - "postcss": "^8.4.19", - "postcss-modules-extract-imports": "^3.0.0", - "postcss-modules-local-by-default": "^4.0.0", - "postcss-modules-scope": "^3.0.0", - "postcss-modules-values": "^4.0.0", - "postcss-value-parser": "^4.2.0", - "semver": "^7.3.8" + "engines": { + "node": ">=0.10.0" } }, - "cssesc": { + "node_modules/object-hash": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz", - "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==", - "dev": true - }, - "decamelize": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", - "integrity": "sha512-z2S+W9X73hAUUki+N+9Za2lBlun89zigOyGrsax+KUQ6wKW4ZoWpEYBkGhQjwAjjDCkWxhY0VKEhk8wzY7F5cA==", - "dev": true - }, - "detect-libc": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-1.0.3.tgz", - "integrity": "sha512-pGjwhsmsp4kL2RTz08wcOlGN83otlqHeD/Z5T8GXZB+/YcpQ/dgo+lbU8ZsGxV0HIvqqxo9l7mqYwyYMD9bKDg==", + "resolved": "https://registry.npmjs.org/object-hash/-/object-hash-3.0.0.tgz", + "integrity": "sha512-RSn9F68PjH9HqtltsSnqYC1XXoWe9Bju5+213R98cNGttag9q9yAOTzdbsqvIa7aNm5WffBZFpWYr2aWrklWAw==", "dev": true, - "optional": true, - "peer": true - }, - "didyoumean": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/didyoumean/-/didyoumean-1.2.2.tgz", - "integrity": "sha512-gxtyfqMg7GKyhQmb056K7M3xszy/myH8w+B4RT+QXBQsvAOdc3XymqDDPHx1BgPgsdAA5SIifona89YtRATDzw==", - "dev": true - }, - "electron-to-chromium": { - "version": "1.4.368", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.368.tgz", - "integrity": "sha512-e2aeCAixCj9M7nJxdB/wDjO6mbYX+lJJxSJCXDzlr5YPGYVofuJwGN9nKg2o6wWInjX6XmxRinn3AeJMK81ltw==", - "dev": true - }, - "emoji-regex": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", - "dev": true + "engines": { + "node": ">= 6" + } }, - "emojis-list": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/emojis-list/-/emojis-list-3.0.0.tgz", - "integrity": "sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q==", - "dev": true + "node_modules/on-finished": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.4.1.tgz", + "integrity": "sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==", + "dev": true, + "dependencies": { + "ee-first": "1.1.1" + }, + "engines": { + "node": ">= 0.8" + } }, - "enhanced-resolve": { - "version": "5.13.0", - "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.13.0.tgz", - "integrity": "sha512-eyV8f0y1+bzyfh8xAwW/WTSZpLbjhqc4ne9eGSH4Zo2ejdyiNG9pU6mf9DG8a7+Auk6MFTlNOT4Y2y/9k8GKVg==", + "node_modules/once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", "dev": true, - "requires": { - "graceful-fs": "^4.2.4", - "tapable": "^2.2.0" + "dependencies": { + "wrappy": "1" } }, - "envinfo": { - "version": "7.8.1", - "resolved": "https://registry.npmjs.org/envinfo/-/envinfo-7.8.1.tgz", - "integrity": "sha512-/o+BXHmB7ocbHEAs6F2EnG0ogybVVUdkRunTT2glZU9XAaGmhqskrvKwqXuDfNjEO0LZKWdejEEpnq8aM0tOaw==", - "dev": true + "node_modules/p-finally": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/p-finally/-/p-finally-1.0.0.tgz", + "integrity": "sha512-LICb2p9CB7FS+0eR1oqWnHhp0FljGLZCWBE9aix0Uye9W8LTQPwMTYVGWQWIw9RdQiDg4+epXQODwIYJtSJaow==", + "dev": true, + "engines": { + "node": ">=4" + } }, - "es-module-lexer": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-1.2.1.tgz", - "integrity": "sha512-9978wrXM50Y4rTMmW5kXIC09ZdXQZqkE4mxhwkd8VbzsGkXGPgV4zWuqQJgCEzYngdo2dYDa0l8xhX4fkSwJSg==", + "node_modules/p-queue": { + "version": "6.6.2", + "resolved": "https://registry.npmjs.org/p-queue/-/p-queue-6.6.2.tgz", + "integrity": "sha512-RwFpb72c/BhQLEXIZ5K2e+AhgNVmIejGlTgiB9MzZ0e93GRvqZ7uSi0dvRF7/XIXDeNkra2fNHBxTyPDGySpjQ==", + "dev": true, + "dependencies": { + "eventemitter3": "^4.0.4", + "p-timeout": "^3.2.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/p-timeout": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/p-timeout/-/p-timeout-3.2.0.tgz", + "integrity": "sha512-rhIwUycgwwKcP9yTOOFK/AKsAopjjCakVqLHePO3CC6Mir1Z99xT+R63jZxAT5lFZLa2inS5h+ZS2GvR99/FBg==", + "dev": true, + "dependencies": { + "p-finally": "^1.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/parse-srcset": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/parse-srcset/-/parse-srcset-1.0.2.tgz", + "integrity": "sha512-/2qh0lav6CmI15FzA3i/2Bzk2zCgQhGMkvhOhKNcBVQ1ldgpbfiNTVslmooUmWJcADi1f1kIeynbDRVzNlfR6Q==", "dev": true }, - "escalade": { + "node_modules/parseurl": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz", + "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==", + "dev": true, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/path-is-absolute": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/path-key": { "version": "3.1.1", - "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", - "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", + "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/path-parse": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", + "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", + "dev": true + }, + "node_modules/path-scurry": { + "version": "1.10.1", + "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-1.10.1.tgz", + "integrity": "sha512-MkhCqzzBEpPvxxQ71Md0b1Kk51W01lrYvlMzSUaIzNsODdd7mqhiimSZlr+VegAz5Z6Vzt9Xg2ttE//XBhH3EQ==", + "dev": true, + "dependencies": { + "lru-cache": "^9.1.1 || ^10.0.0", + "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/path-scurry/node_modules/lru-cache": { + "version": "10.2.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.2.0.tgz", + "integrity": "sha512-2bIM8x+VAf6JT4bKAljS1qUWgMsqZRPGJS6FSahIMPVvctcNhyVp7AJu7quxOW9jwkryBReKZY5tY5JYv2n/7Q==", + "dev": true, + "engines": { + "node": "14 || >=16.14" + } + }, + "node_modules/path-scurry/node_modules/minipass": { + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.0.4.tgz", + "integrity": "sha512-jYofLM5Dam9279rdkWzqHozUo4ybjdZmCsDHePy5V/PbBcVMiSZR97gmAy45aqi8CK1lG2ECd356FU86avfwUQ==", + "dev": true, + "engines": { + "node": ">=16 || 14 >=14.17" + } + }, + "node_modules/path-to-regexp": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-6.2.1.tgz", + "integrity": "sha512-JLyh7xT1kizaEvcaXOQwOc2/Yhw6KZOvPf1S8401UyLk86CU79LN3vl7ztXGm/pZ+YjoyAJ4rxmHwbkBXJX+yw==", "dev": true }, - "escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "node_modules/path-type": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-5.0.0.tgz", + "integrity": "sha512-5HviZNaZcfqP95rwpv+1HDgUamezbqdSYTyzjTvwtJSnIH+3vnbmWsItli8OFEndS984VT55M3jduxZbX351gg==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/picocolors": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", + "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==", "dev": true }, - "eslint-scope": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz", - "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==", + "node_modules/picomatch": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", + "dev": true, + "engines": { + "node": ">=8.6" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/pify": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "integrity": "sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/pirates": { + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/pirates/-/pirates-4.0.6.tgz", + "integrity": "sha512-saLsH7WeYYPiD25LDuLRRY/i+6HaPYr6G1OUlN39otzkSTxKnubR9RTxS3/Kk50s1g2JTgFwWQDQyplC5/SHZg==", + "dev": true, + "engines": { + "node": ">= 6" + } + }, + "node_modules/please-upgrade-node": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/please-upgrade-node/-/please-upgrade-node-3.2.0.tgz", + "integrity": "sha512-gQR3WpIgNIKwBMVLkpMUeR3e1/E1y42bqDQZfql+kDeXd8COYfM8PQA4X6y7a8u9Ua9FHmsrrmirW2vHs45hWg==", + "dev": true, + "dependencies": { + "semver-compare": "^1.0.0" + } + }, + "node_modules/postcss": { + "version": "8.4.35", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.35.tgz", + "integrity": "sha512-u5U8qYpBCpN13BsiEB0CbR1Hhh4Gc0zLFuedrHJKMctHCHAGrMdG0PRM/KErzAL3CU6/eckEtmHNB3x6e3c0vA==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/postcss" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "dependencies": { + "nanoid": "^3.3.7", + "picocolors": "^1.0.0", + "source-map-js": "^1.0.2" + }, + "engines": { + "node": "^10 || ^12 || >=14" + } + }, + "node_modules/postcss-calc": { + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/postcss-calc/-/postcss-calc-9.0.1.tgz", + "integrity": "sha512-TipgjGyzP5QzEhsOZUaIkeO5mKeMFpebWzRogWG/ysonUlnHcq5aJe0jOjpfzUU8PeSaBQnrE8ehR0QA5vs8PQ==", + "dev": true, + "dependencies": { + "postcss-selector-parser": "^6.0.11", + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^14 || ^16 || >=18.0" + }, + "peerDependencies": { + "postcss": "^8.2.2" + } + }, + "node_modules/postcss-cli": { + "version": "11.0.0", + "resolved": "https://registry.npmjs.org/postcss-cli/-/postcss-cli-11.0.0.tgz", + "integrity": "sha512-xMITAI7M0u1yolVcXJ9XTZiO9aO49mcoKQy6pCDFdMh9kGqhzLVpWxeD/32M/QBmkhcGypZFFOLNLmIW4Pg4RA==", + "dev": true, + "dependencies": { + "chokidar": "^3.3.0", + "dependency-graph": "^0.11.0", + "fs-extra": "^11.0.0", + "get-stdin": "^9.0.0", + "globby": "^14.0.0", + "picocolors": "^1.0.0", + "postcss-load-config": "^5.0.0", + "postcss-reporter": "^7.0.0", + "pretty-hrtime": "^1.0.3", + "read-cache": "^1.0.0", + "slash": "^5.0.0", + "yargs": "^17.0.0" + }, + "bin": { + "postcss": "index.js" + }, + "engines": { + "node": ">=18" + }, + "peerDependencies": { + "postcss": "^8.0.0" + } + }, + "node_modules/postcss-cli/node_modules/lilconfig": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/lilconfig/-/lilconfig-3.1.1.tgz", + "integrity": "sha512-O18pf7nyvHTckunPWCV1XUNXU1piu01y2b7ATJ0ppkUkk8ocqVWBrYjJBCwHDjD/ZWcfyrA0P4gKhzWGi5EINQ==", + "dev": true, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/antonk52" + } + }, + "node_modules/postcss-cli/node_modules/postcss-load-config": { + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/postcss-load-config/-/postcss-load-config-5.0.3.tgz", + "integrity": "sha512-90pBBI5apUVruIEdCxZic93Wm+i9fTrp7TXbgdUCH+/L+2WnfpITSpq5dFU/IPvbv7aNiMlQISpUkAm3fEcvgQ==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "dependencies": { + "lilconfig": "^3.0.0", + "yaml": "^2.3.4" + }, + "engines": { + "node": ">= 18" + }, + "peerDependencies": { + "jiti": ">=1.21.0", + "postcss": ">=8.0.9" + }, + "peerDependenciesMeta": { + "jiti": { + "optional": true + }, + "postcss": { + "optional": true + } + } + }, + "node_modules/postcss-cli/node_modules/slash": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-5.1.0.tgz", + "integrity": "sha512-ZA6oR3T/pEyuqwMgAKT0/hAv8oAXckzbkmR0UkUosQ+Mc4RxGoJkRmwHgHufaenlyAgE1Mxgpdcrf75y6XcnDg==", + "dev": true, + "engines": { + "node": ">=14.16" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/postcss-colormin": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/postcss-colormin/-/postcss-colormin-6.1.0.tgz", + "integrity": "sha512-x9yX7DOxeMAR+BgGVnNSAxmAj98NX/YxEMNFP+SDCEeNLb2r3i6Hh1ksMsnW8Ub5SLCpbescQqn9YEbE9554Sw==", + "dev": true, + "dependencies": { + "browserslist": "^4.23.0", + "caniuse-api": "^3.0.0", + "colord": "^2.9.3", + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^14 || ^16 || >=18.0" + }, + "peerDependencies": { + "postcss": "^8.4.31" + } + }, + "node_modules/postcss-convert-values": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/postcss-convert-values/-/postcss-convert-values-6.1.0.tgz", + "integrity": "sha512-zx8IwP/ts9WvUM6NkVSkiU902QZL1bwPhaVaLynPtCsOTqp+ZKbNi+s6XJg3rfqpKGA/oc7Oxk5t8pOQJcwl/w==", + "dev": true, + "dependencies": { + "browserslist": "^4.23.0", + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^14 || ^16 || >=18.0" + }, + "peerDependencies": { + "postcss": "^8.4.31" + } + }, + "node_modules/postcss-discard-comments": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/postcss-discard-comments/-/postcss-discard-comments-6.0.2.tgz", + "integrity": "sha512-65w/uIqhSBBfQmYnG92FO1mWZjJ4GL5b8atm5Yw2UgrwD7HiNiSSNwJor1eCFGzUgYnN/iIknhNRVqjrrpuglw==", + "dev": true, + "engines": { + "node": "^14 || ^16 || >=18.0" + }, + "peerDependencies": { + "postcss": "^8.4.31" + } + }, + "node_modules/postcss-discard-duplicates": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/postcss-discard-duplicates/-/postcss-discard-duplicates-6.0.3.tgz", + "integrity": "sha512-+JA0DCvc5XvFAxwx6f/e68gQu/7Z9ud584VLmcgto28eB8FqSFZwtrLwB5Kcp70eIoWP/HXqz4wpo8rD8gpsTw==", + "dev": true, + "engines": { + "node": "^14 || ^16 || >=18.0" + }, + "peerDependencies": { + "postcss": "^8.4.31" + } + }, + "node_modules/postcss-discard-empty": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/postcss-discard-empty/-/postcss-discard-empty-6.0.3.tgz", + "integrity": "sha512-znyno9cHKQsK6PtxL5D19Fj9uwSzC2mB74cpT66fhgOadEUPyXFkbgwm5tvc3bt3NAy8ltE5MrghxovZRVnOjQ==", + "dev": true, + "engines": { + "node": "^14 || ^16 || >=18.0" + }, + "peerDependencies": { + "postcss": "^8.4.31" + } + }, + "node_modules/postcss-discard-overridden": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/postcss-discard-overridden/-/postcss-discard-overridden-6.0.2.tgz", + "integrity": "sha512-j87xzI4LUggC5zND7KdjsI25APtyMuynXZSujByMaav2roV6OZX+8AaCUcZSWqckZpjAjRyFDdpqybgjFO0HJQ==", + "dev": true, + "engines": { + "node": "^14 || ^16 || >=18.0" + }, + "peerDependencies": { + "postcss": "^8.4.31" + } + }, + "node_modules/postcss-import": { + "version": "16.0.1", + "resolved": "https://registry.npmjs.org/postcss-import/-/postcss-import-16.0.1.tgz", + "integrity": "sha512-i2Pci0310NaLHr/5JUFSw1j/8hf1CzwMY13g6ZDxgOavmRHQi2ba3PmUHoihO+sjaum+KmCNzskNsw7JDrg03g==", + "dev": true, + "dependencies": { + "postcss-value-parser": "^4.0.0", + "read-cache": "^1.0.0", + "resolve": "^1.1.7" + }, + "engines": { + "node": ">=18.0.0" + }, + "peerDependencies": { + "postcss": "^8.0.0" + } + }, + "node_modules/postcss-js": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/postcss-js/-/postcss-js-4.0.1.tgz", + "integrity": "sha512-dDLF8pEO191hJMtlHFPRa8xsizHaM82MLfNkUHdUtVEV3tgTp5oj+8qbEqYM57SLfc74KSbw//4SeJma2LRVIw==", + "dev": true, + "dependencies": { + "camelcase-css": "^2.0.1" + }, + "engines": { + "node": "^12 || ^14 || >= 16" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + "peerDependencies": { + "postcss": "^8.4.21" + } + }, + "node_modules/postcss-load-config": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/postcss-load-config/-/postcss-load-config-4.0.2.tgz", + "integrity": "sha512-bSVhyJGL00wMVoPUzAVAnbEoWyqRxkjv64tUl427SKnPrENtq6hJwUojroMz2VB+Q1edmi4IfrAPpami5VVgMQ==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "dependencies": { + "lilconfig": "^3.0.0", + "yaml": "^2.3.4" + }, + "engines": { + "node": ">= 14" + }, + "peerDependencies": { + "postcss": ">=8.0.9", + "ts-node": ">=9.0.0" + }, + "peerDependenciesMeta": { + "postcss": { + "optional": true + }, + "ts-node": { + "optional": true + } + } + }, + "node_modules/postcss-load-config/node_modules/lilconfig": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/lilconfig/-/lilconfig-3.1.1.tgz", + "integrity": "sha512-O18pf7nyvHTckunPWCV1XUNXU1piu01y2b7ATJ0ppkUkk8ocqVWBrYjJBCwHDjD/ZWcfyrA0P4gKhzWGi5EINQ==", + "dev": true, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/antonk52" + } + }, + "node_modules/postcss-merge-longhand": { + "version": "6.0.4", + "resolved": "https://registry.npmjs.org/postcss-merge-longhand/-/postcss-merge-longhand-6.0.4.tgz", + "integrity": "sha512-vAfWGcxUUGlFiPM3nDMZA+/Yo9sbpc3JNkcYZez8FfJDv41Dh7tAgA3QGVTocaHCZZL6aXPXPOaBMJsjujodsA==", + "dev": true, + "dependencies": { + "postcss-value-parser": "^4.2.0", + "stylehacks": "^6.1.0" + }, + "engines": { + "node": "^14 || ^16 || >=18.0" + }, + "peerDependencies": { + "postcss": "^8.4.31" + } + }, + "node_modules/postcss-merge-rules": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/postcss-merge-rules/-/postcss-merge-rules-6.1.0.tgz", + "integrity": "sha512-lER+W3Gr6XOvxOYk1Vi/6UsAgKMg6MDBthmvbNqi2XxAk/r9XfhdYZSigfWjuWWn3zYw2wLelvtM8XuAEFqRkA==", + "dev": true, + "dependencies": { + "browserslist": "^4.23.0", + "caniuse-api": "^3.0.0", + "cssnano-utils": "^4.0.2", + "postcss-selector-parser": "^6.0.15" + }, + "engines": { + "node": "^14 || ^16 || >=18.0" + }, + "peerDependencies": { + "postcss": "^8.4.31" + } + }, + "node_modules/postcss-minify-font-values": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/postcss-minify-font-values/-/postcss-minify-font-values-6.0.3.tgz", + "integrity": "sha512-SmAeTA1We5rMnN3F8X9YBNo9bj9xB4KyDHnaNJnBfQIPi+60fNiR9OTRnIaMqkYzAQX0vObIw4Pn0vuKEOettg==", + "dev": true, + "dependencies": { + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^14 || ^16 || >=18.0" + }, + "peerDependencies": { + "postcss": "^8.4.31" + } + }, + "node_modules/postcss-minify-gradients": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/postcss-minify-gradients/-/postcss-minify-gradients-6.0.3.tgz", + "integrity": "sha512-4KXAHrYlzF0Rr7uc4VrfwDJ2ajrtNEpNEuLxFgwkhFZ56/7gaE4Nr49nLsQDZyUe+ds+kEhf+YAUolJiYXF8+Q==", + "dev": true, + "dependencies": { + "colord": "^2.9.3", + "cssnano-utils": "^4.0.2", + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^14 || ^16 || >=18.0" + }, + "peerDependencies": { + "postcss": "^8.4.31" + } + }, + "node_modules/postcss-minify-params": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/postcss-minify-params/-/postcss-minify-params-6.1.0.tgz", + "integrity": "sha512-bmSKnDtyyE8ujHQK0RQJDIKhQ20Jq1LYiez54WiaOoBtcSuflfK3Nm596LvbtlFcpipMjgClQGyGr7GAs+H1uA==", + "dev": true, + "dependencies": { + "browserslist": "^4.23.0", + "cssnano-utils": "^4.0.2", + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^14 || ^16 || >=18.0" + }, + "peerDependencies": { + "postcss": "^8.4.31" + } + }, + "node_modules/postcss-minify-selectors": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/postcss-minify-selectors/-/postcss-minify-selectors-6.0.3.tgz", + "integrity": "sha512-IcV7ZQJcaXyhx4UBpWZMsinGs2NmiUC60rJSkyvjPCPqhNjVGsrJUM+QhAtCaikZ0w0/AbZuH4wVvF/YMuMhvA==", + "dev": true, + "dependencies": { + "postcss-selector-parser": "^6.0.15" + }, + "engines": { + "node": "^14 || ^16 || >=18.0" + }, + "peerDependencies": { + "postcss": "^8.4.31" + } + }, + "node_modules/postcss-nested": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/postcss-nested/-/postcss-nested-6.0.1.tgz", + "integrity": "sha512-mEp4xPMi5bSWiMbsgoPfcP74lsWLHkQbZc3sY+jWYd65CUwXrUaTp0fmNpa01ZcETKlIgUdFN/MpS2xZtqL9dQ==", + "dev": true, + "dependencies": { + "postcss-selector-parser": "^6.0.11" + }, + "engines": { + "node": ">=12.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + "peerDependencies": { + "postcss": "^8.2.14" + } + }, + "node_modules/postcss-normalize-charset": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/postcss-normalize-charset/-/postcss-normalize-charset-6.0.2.tgz", + "integrity": "sha512-a8N9czmdnrjPHa3DeFlwqst5eaL5W8jYu3EBbTTkI5FHkfMhFZh1EGbku6jhHhIzTA6tquI2P42NtZ59M/H/kQ==", + "dev": true, + "engines": { + "node": "^14 || ^16 || >=18.0" + }, + "peerDependencies": { + "postcss": "^8.4.31" + } + }, + "node_modules/postcss-normalize-display-values": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/postcss-normalize-display-values/-/postcss-normalize-display-values-6.0.2.tgz", + "integrity": "sha512-8H04Mxsb82ON/aAkPeq8kcBbAtI5Q2a64X/mnRRfPXBq7XeogoQvReqxEfc0B4WPq1KimjezNC8flUtC3Qz6jg==", + "dev": true, + "dependencies": { + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^14 || ^16 || >=18.0" + }, + "peerDependencies": { + "postcss": "^8.4.31" + } + }, + "node_modules/postcss-normalize-positions": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/postcss-normalize-positions/-/postcss-normalize-positions-6.0.2.tgz", + "integrity": "sha512-/JFzI441OAB9O7VnLA+RtSNZvQ0NCFZDOtp6QPFo1iIyawyXg0YI3CYM9HBy1WvwCRHnPep/BvI1+dGPKoXx/Q==", + "dev": true, + "dependencies": { + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^14 || ^16 || >=18.0" + }, + "peerDependencies": { + "postcss": "^8.4.31" + } + }, + "node_modules/postcss-normalize-repeat-style": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/postcss-normalize-repeat-style/-/postcss-normalize-repeat-style-6.0.2.tgz", + "integrity": "sha512-YdCgsfHkJ2jEXwR4RR3Tm/iOxSfdRt7jplS6XRh9Js9PyCR/aka/FCb6TuHT2U8gQubbm/mPmF6L7FY9d79VwQ==", + "dev": true, + "dependencies": { + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^14 || ^16 || >=18.0" + }, + "peerDependencies": { + "postcss": "^8.4.31" + } + }, + "node_modules/postcss-normalize-string": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/postcss-normalize-string/-/postcss-normalize-string-6.0.2.tgz", + "integrity": "sha512-vQZIivlxlfqqMp4L9PZsFE4YUkWniziKjQWUtsxUiVsSSPelQydwS8Wwcuw0+83ZjPWNTl02oxlIvXsmmG+CiQ==", + "dev": true, + "dependencies": { + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^14 || ^16 || >=18.0" + }, + "peerDependencies": { + "postcss": "^8.4.31" + } + }, + "node_modules/postcss-normalize-timing-functions": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/postcss-normalize-timing-functions/-/postcss-normalize-timing-functions-6.0.2.tgz", + "integrity": "sha512-a+YrtMox4TBtId/AEwbA03VcJgtyW4dGBizPl7e88cTFULYsprgHWTbfyjSLyHeBcK/Q9JhXkt2ZXiwaVHoMzA==", + "dev": true, + "dependencies": { + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^14 || ^16 || >=18.0" + }, + "peerDependencies": { + "postcss": "^8.4.31" + } + }, + "node_modules/postcss-normalize-unicode": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/postcss-normalize-unicode/-/postcss-normalize-unicode-6.1.0.tgz", + "integrity": "sha512-QVC5TQHsVj33otj8/JD869Ndr5Xcc/+fwRh4HAsFsAeygQQXm+0PySrKbr/8tkDKzW+EVT3QkqZMfFrGiossDg==", + "dev": true, + "dependencies": { + "browserslist": "^4.23.0", + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^14 || ^16 || >=18.0" + }, + "peerDependencies": { + "postcss": "^8.4.31" + } + }, + "node_modules/postcss-normalize-url": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/postcss-normalize-url/-/postcss-normalize-url-6.0.2.tgz", + "integrity": "sha512-kVNcWhCeKAzZ8B4pv/DnrU1wNh458zBNp8dh4y5hhxih5RZQ12QWMuQrDgPRw3LRl8mN9vOVfHl7uhvHYMoXsQ==", + "dev": true, + "dependencies": { + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^14 || ^16 || >=18.0" + }, + "peerDependencies": { + "postcss": "^8.4.31" + } + }, + "node_modules/postcss-normalize-whitespace": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/postcss-normalize-whitespace/-/postcss-normalize-whitespace-6.0.2.tgz", + "integrity": "sha512-sXZ2Nj1icbJOKmdjXVT9pnyHQKiSAyuNQHSgRCUgThn2388Y9cGVDR+E9J9iAYbSbLHI+UUwLVl1Wzco/zgv0Q==", + "dev": true, + "dependencies": { + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^14 || ^16 || >=18.0" + }, + "peerDependencies": { + "postcss": "^8.4.31" + } + }, + "node_modules/postcss-ordered-values": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/postcss-ordered-values/-/postcss-ordered-values-6.0.2.tgz", + "integrity": "sha512-VRZSOB+JU32RsEAQrO94QPkClGPKJEL/Z9PCBImXMhIeK5KAYo6slP/hBYlLgrCjFxyqvn5VC81tycFEDBLG1Q==", + "dev": true, + "dependencies": { + "cssnano-utils": "^4.0.2", + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^14 || ^16 || >=18.0" + }, + "peerDependencies": { + "postcss": "^8.4.31" + } + }, + "node_modules/postcss-reduce-initial": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/postcss-reduce-initial/-/postcss-reduce-initial-6.1.0.tgz", + "integrity": "sha512-RarLgBK/CrL1qZags04oKbVbrrVK2wcxhvta3GCxrZO4zveibqbRPmm2VI8sSgCXwoUHEliRSbOfpR0b/VIoiw==", + "dev": true, + "dependencies": { + "browserslist": "^4.23.0", + "caniuse-api": "^3.0.0" + }, + "engines": { + "node": "^14 || ^16 || >=18.0" + }, + "peerDependencies": { + "postcss": "^8.4.31" + } + }, + "node_modules/postcss-reduce-transforms": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/postcss-reduce-transforms/-/postcss-reduce-transforms-6.0.2.tgz", + "integrity": "sha512-sB+Ya++3Xj1WaT9+5LOOdirAxP7dJZms3GRcYheSPi1PiTMigsxHAdkrbItHxwYHr4kt1zL7mmcHstgMYT+aiA==", + "dev": true, + "dependencies": { + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^14 || ^16 || >=18.0" + }, + "peerDependencies": { + "postcss": "^8.4.31" + } + }, + "node_modules/postcss-reporter": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/postcss-reporter/-/postcss-reporter-7.1.0.tgz", + "integrity": "sha512-/eoEylGWyy6/DOiMP5lmFRdmDKThqgn7D6hP2dXKJI/0rJSO1ADFNngZfDzxL0YAxFvws+Rtpuji1YIHj4mySA==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "dependencies": { + "picocolors": "^1.0.0", + "thenby": "^1.3.4" + }, + "engines": { + "node": ">=10" + }, + "peerDependencies": { + "postcss": "^8.1.0" + } + }, + "node_modules/postcss-selector-parser": { + "version": "6.0.16", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.16.tgz", + "integrity": "sha512-A0RVJrX+IUkVZbW3ClroRWurercFhieevHB38sr2+l9eUClMqome3LmEmnhlNy+5Mr2EYN6B2Kaw9wYdd+VHiw==", + "dev": true, + "dependencies": { + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/postcss-svgo": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/postcss-svgo/-/postcss-svgo-6.0.3.tgz", + "integrity": "sha512-dlrahRmxP22bX6iKEjOM+c8/1p+81asjKT+V5lrgOH944ryx/OHpclnIbGsKVd3uWOXFLYJwCVf0eEkJGvO96g==", + "dev": true, + "dependencies": { + "postcss-value-parser": "^4.2.0", + "svgo": "^3.2.0" + }, + "engines": { + "node": "^14 || ^16 || >= 18" + }, + "peerDependencies": { + "postcss": "^8.4.31" + } + }, + "node_modules/postcss-unique-selectors": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/postcss-unique-selectors/-/postcss-unique-selectors-6.0.3.tgz", + "integrity": "sha512-NFXbYr8qdmCr/AFceaEfdcsKGCvWTeGO6QVC9h2GvtWgj0/0dklKQcaMMVzs6tr8bY+ase8hOtHW8OBTTRvS8A==", + "dev": true, + "dependencies": { + "postcss-selector-parser": "^6.0.15" + }, + "engines": { + "node": "^14 || ^16 || >=18.0" + }, + "peerDependencies": { + "postcss": "^8.4.31" + } + }, + "node_modules/postcss-value-parser": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz", + "integrity": "sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==", + "dev": true + }, + "node_modules/posthtml": { + "version": "0.16.6", + "resolved": "https://registry.npmjs.org/posthtml/-/posthtml-0.16.6.tgz", + "integrity": "sha512-JcEmHlyLK/o0uGAlj65vgg+7LIms0xKXe60lcDOTU7oVX/3LuEuLwrQpW3VJ7de5TaFKiW4kWkaIpJL42FEgxQ==", + "dev": true, + "dependencies": { + "posthtml-parser": "^0.11.0", + "posthtml-render": "^3.0.0" + }, + "engines": { + "node": ">=12.0.0" + } + }, + "node_modules/posthtml-parser": { + "version": "0.11.0", + "resolved": "https://registry.npmjs.org/posthtml-parser/-/posthtml-parser-0.11.0.tgz", + "integrity": "sha512-QecJtfLekJbWVo/dMAA+OSwY79wpRmbqS5TeXvXSX+f0c6pW4/SE6inzZ2qkU7oAMCPqIDkZDvd/bQsSFUnKyw==", + "dev": true, + "dependencies": { + "htmlparser2": "^7.1.1" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/posthtml-render": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/posthtml-render/-/posthtml-render-3.0.0.tgz", + "integrity": "sha512-z+16RoxK3fUPgwaIgH9NGnK1HKY9XIDpydky5eQGgAFVXTCSezalv9U2jQuNV+Z9qV1fDWNzldcw4eK0SSbqKA==", + "dev": true, + "dependencies": { + "is-json": "^2.0.1" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/posthtml-urls": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/posthtml-urls/-/posthtml-urls-1.0.0.tgz", + "integrity": "sha512-CMJ0L009sGQVUuYM/g6WJdscsq6ooAwhUuF6CDlYPMLxKp2rmCYVebEU+wZGxnQstGJhZPMvXsRhtqekILd5/w==", + "dev": true, + "dependencies": { + "http-equiv-refresh": "^1.0.0", + "list-to-array": "^1.1.0", + "parse-srcset": "^1.0.2", + "promise-each": "^2.2.0" + }, + "engines": { + "node": ">= 4" + } + }, + "node_modules/pretty-hrtime": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/pretty-hrtime/-/pretty-hrtime-1.0.3.tgz", + "integrity": "sha512-66hKPCr+72mlfiSjlEB1+45IjXSqvVAIy6mocupoww4tBFE9R9IhwwUGoI4G++Tc9Aq+2rxOt0RFU6gPcrte0A==", "dev": true, - "requires": { - "esrecurse": "^4.3.0", - "estraverse": "^4.1.1" + "engines": { + "node": ">= 0.8" } }, - "esrecurse": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", - "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", + "node_modules/promise": { + "version": "7.3.1", + "resolved": "https://registry.npmjs.org/promise/-/promise-7.3.1.tgz", + "integrity": "sha512-nolQXZ/4L+bP/UGlkfaIujX9BKxGwmQ9OT4mOt5yvy8iK1h3wqTEJCijzGANTCCl9nWjY41juyAn2K3Q1hLLTg==", "dev": true, - "requires": { - "estraverse": "^5.2.0" - }, "dependencies": { - "estraverse": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", - "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", - "dev": true - } + "asap": "~2.0.3" } }, - "estraverse": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", - "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", - "dev": true + "node_modules/promise-each": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/promise-each/-/promise-each-2.2.0.tgz", + "integrity": "sha512-67roqt1k3QDA41DZ8xi0V+rF3GoaMiX7QilbXu0vXimut+9RcKBNZ/t60xCRgcsihmNUsEjh48xLfNqOrKblUg==", + "dev": true, + "dependencies": { + "any-promise": "^0.1.0" + } }, - "events": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz", - "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==", + "node_modules/prr": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/prr/-/prr-1.0.1.tgz", + "integrity": "sha512-yPw4Sng1gWghHQWj0B3ZggWUm4qVbPwPFcRG8KyxiU7J2OHFSoEHKS+EZ3fv5l1t9CyCiop6l/ZYeWbrgoQejw==", "dev": true }, - "external-editor": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-3.1.0.tgz", - "integrity": "sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew==", + "node_modules/pug": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/pug/-/pug-3.0.2.tgz", + "integrity": "sha512-bp0I/hiK1D1vChHh6EfDxtndHji55XP/ZJKwsRqrz6lRia6ZC2OZbdAymlxdVFwd1L70ebrVJw4/eZ79skrIaw==", "dev": true, - "requires": { - "chardet": "^0.7.0", - "iconv-lite": "^0.4.24", - "tmp": "^0.0.33" + "dependencies": { + "pug-code-gen": "^3.0.2", + "pug-filters": "^4.0.0", + "pug-lexer": "^5.0.1", + "pug-linker": "^4.0.0", + "pug-load": "^3.0.0", + "pug-parser": "^6.0.0", + "pug-runtime": "^3.0.1", + "pug-strip-comments": "^2.0.0" } }, - "fast-deep-equal": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", - "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", - "dev": true + "node_modules/pug-attrs": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pug-attrs/-/pug-attrs-3.0.0.tgz", + "integrity": "sha512-azINV9dUtzPMFQktvTXciNAfAuVh/L/JCl0vtPCwvOA21uZrC08K/UnmrL+SXGEVc1FwzjW62+xw5S/uaLj6cA==", + "dev": true, + "dependencies": { + "constantinople": "^4.0.1", + "js-stringify": "^1.0.2", + "pug-runtime": "^3.0.0" + } }, - "fast-json-stable-stringify": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", - "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", - "dev": true + "node_modules/pug-code-gen": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/pug-code-gen/-/pug-code-gen-3.0.2.tgz", + "integrity": "sha512-nJMhW16MbiGRiyR4miDTQMRWDgKplnHyeLvioEJYbk1RsPI3FuA3saEP8uwnTb2nTJEKBU90NFVWJBk4OU5qyg==", + "dev": true, + "dependencies": { + "constantinople": "^4.0.1", + "doctypes": "^1.1.0", + "js-stringify": "^1.0.2", + "pug-attrs": "^3.0.0", + "pug-error": "^2.0.0", + "pug-runtime": "^3.0.0", + "void-elements": "^3.1.0", + "with": "^7.0.0" + } }, - "fastest-levenshtein": { - "version": "1.0.16", - "resolved": "https://registry.npmjs.org/fastest-levenshtein/-/fastest-levenshtein-1.0.16.tgz", - "integrity": "sha512-eRnCtTTtGZFpQCwhJiUOuxPQWRXVKYDn0b2PeHfXL6/Zi53SLAzAHfVhVWK2AryC/WH05kGfxhFIPvTF0SXQzg==", + "node_modules/pug-error": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/pug-error/-/pug-error-2.0.0.tgz", + "integrity": "sha512-sjiUsi9M4RAGHktC1drQfCr5C5eriu24Lfbt4s+7SykztEOwVZtbFk1RRq0tzLxcMxMYTBR+zMQaG07J/btayQ==", "dev": true }, - "fibers": { - "version": "5.0.3", - "resolved": "https://registry.npmjs.org/fibers/-/fibers-5.0.3.tgz", - "integrity": "sha512-/qYTSoZydQkM21qZpGLDLuCq8c+B8KhuCQ1kLPvnRNhxhVbvrpmH9l2+Lblf5neDuEsY4bfT7LeO553TXQDvJw==", + "node_modules/pug-filters": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/pug-filters/-/pug-filters-4.0.0.tgz", + "integrity": "sha512-yeNFtq5Yxmfz0f9z2rMXGw/8/4i1cCFecw/Q7+D0V2DdtII5UvqE12VaZ2AY7ri6o5RNXiweGH79OCq+2RQU4A==", "dev": true, - "optional": true, - "peer": true, - "requires": { - "detect-libc": "^1.0.3" + "dependencies": { + "constantinople": "^4.0.1", + "jstransformer": "1.0.0", + "pug-error": "^2.0.0", + "pug-walk": "^2.0.0", + "resolve": "^1.15.1" } }, - "figures": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/figures/-/figures-3.2.0.tgz", - "integrity": "sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg==", + "node_modules/pug-lexer": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/pug-lexer/-/pug-lexer-5.0.1.tgz", + "integrity": "sha512-0I6C62+keXlZPZkOJeVam9aBLVP2EnbeDw3An+k0/QlqdwH6rv8284nko14Na7c0TtqtogfWXcRoFE4O4Ff20w==", "dev": true, - "requires": { - "escape-string-regexp": "^1.0.5" + "dependencies": { + "character-parser": "^2.2.0", + "is-expression": "^4.0.0", + "pug-error": "^2.0.0" } }, - "fill-range": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", - "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "node_modules/pug-linker": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/pug-linker/-/pug-linker-4.0.0.tgz", + "integrity": "sha512-gjD1yzp0yxbQqnzBAdlhbgoJL5qIFJw78juN1NpTLt/mfPJ5VgC4BvkoD3G23qKzJtIIXBbcCt6FioLSFLOHdw==", "dev": true, - "requires": { - "to-regex-range": "^5.0.1" + "dependencies": { + "pug-error": "^2.0.0", + "pug-walk": "^2.0.0" } }, - "find-up": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", - "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", + "node_modules/pug-load": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pug-load/-/pug-load-3.0.0.tgz", + "integrity": "sha512-OCjTEnhLWZBvS4zni/WUMjH2YSUosnsmjGBB1An7CsKQarYSWQ0GCVyd4eQPMFJqZ8w9xgs01QdiZXKVjk92EQ==", "dev": true, - "requires": { - "locate-path": "^5.0.0", - "path-exists": "^4.0.0" + "dependencies": { + "object-assign": "^4.1.1", + "pug-walk": "^2.0.0" } }, - "foundation-sites": { - "version": "6.7.5", - "resolved": "https://registry.npmjs.org/foundation-sites/-/foundation-sites-6.7.5.tgz", - "integrity": "sha512-MEjAENdF/IV2XQvlQmg20o+iDTyyWu0N/j440e8fKbEylbKxARzgg5S7vcnxtjukC1Lqg+rRm7ZDSSyGhVVoUQ==", - "requires": {} - }, - "fsevents": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", - "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", + "node_modules/pug-parser": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/pug-parser/-/pug-parser-6.0.0.tgz", + "integrity": "sha512-ukiYM/9cH6Cml+AOl5kETtM9NR3WulyVP2y4HOU45DyMim1IeP/OOiyEWRr6qk5I5klpsBnbuHpwKmTx6WURnw==", "dev": true, - "optional": true - }, - "function-bind": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", - "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", - "dev": true + "dependencies": { + "pug-error": "^2.0.0", + "token-stream": "1.0.0" + } }, - "get-caller-file": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", - "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", + "node_modules/pug-runtime": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/pug-runtime/-/pug-runtime-3.0.1.tgz", + "integrity": "sha512-L50zbvrQ35TkpHwv0G6aLSuueDRwc/97XdY8kL3tOT0FmhgG7UypU3VztfV/LATAvmUfYi4wNxSajhSAeNN+Kg==", "dev": true }, - "glob-parent": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", - "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "node_modules/pug-strip-comments": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/pug-strip-comments/-/pug-strip-comments-2.0.0.tgz", + "integrity": "sha512-zo8DsDpH7eTkPHCXFeAk1xZXJbyoTfdPlNR0bK7rpOMuhBYb0f5qUVCO1xlsitYd3w5FQTK7zpNVKb3rZoUrrQ==", "dev": true, - "requires": { - "is-glob": "^4.0.1" + "dependencies": { + "pug-error": "^2.0.0" } }, - "glob-to-regexp": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz", - "integrity": "sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==", - "dev": true - }, - "graceful-fs": { - "version": "4.2.11", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", - "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==", + "node_modules/pug-walk": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/pug-walk/-/pug-walk-2.0.0.tgz", + "integrity": "sha512-yYELe9Q5q9IQhuvqsZNwA5hfPkMJ8u92bQLIMcsMxf/VADjNtEYptU+inlufAFYcWdHlwNfZOEnOOQrZrcyJCQ==", "dev": true }, - "hamburgers": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/hamburgers/-/hamburgers-1.2.1.tgz", - "integrity": "sha512-uFuVVF7/MeUtRWrA+S1FGGo4iVi7RgPzZAmljBnSeDh4snOZzaQ+oB6CI1m4vKD5RGz9s70ufgiJLxgivqA26Q==" + "node_modules/punycode.js": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/punycode.js/-/punycode.js-2.3.1.tgz", + "integrity": "sha512-uxFIHU0YlHYhDQtV4R9J6a52SLx28BCjT+4ieh7IGbgwVJWO+km431c4yRlREUAsAmt/uMjQUyQHNEPf0M39CA==", + "dev": true, + "engines": { + "node": ">=6" + } }, - "has": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", - "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", + "node_modules/queue": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/queue/-/queue-6.0.2.tgz", + "integrity": "sha512-iHZWu+q3IdFZFX36ro/lKBkSvfkztY5Y7HMiPlOUjhupPcG2JMfst2KKEpu5XndviX/3UhFbRngUPNKtgvtZiA==", "dev": true, - "requires": { - "function-bind": "^1.1.1" + "dependencies": { + "inherits": "~2.0.3" } }, - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true + "node_modules/queue-microtask": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", + "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] }, - "iconv-lite": { - "version": "0.4.24", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", - "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", + "node_modules/read-cache": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/read-cache/-/read-cache-1.0.0.tgz", + "integrity": "sha512-Owdv/Ft7IjOgm/i0xvNDZ1LrRANRfew4b2prF3OWMQLxLfu3bS8FVhCsrSCMK4lR56Y9ya+AThoTpDCTxCmpRA==", "dev": true, - "requires": { - "safer-buffer": ">= 2.1.2 < 3" + "dependencies": { + "pify": "^2.3.0" } }, - "icss-utils": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/icss-utils/-/icss-utils-5.1.0.tgz", - "integrity": "sha512-soFhflCVWLfRNOPU3iv5Z9VUdT44xFRbzjLsEzSr5AQmgqPMTHdU3PMT1Cf1ssx8fLNJDA1juftYl+PUcv3MqA==", + "node_modules/readdirp": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", + "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", "dev": true, - "requires": {} - }, - "immutable": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.3.0.tgz", - "integrity": "sha512-0AOCmOip+xgJwEVTQj1EfiDDOkPmuyllDuTuEX+DDXUgapLAsBIfkg3sxCYyCEA8mQqZrrxPUGjcOQ2JS3WLkg==", - "dev": true + "dependencies": { + "picomatch": "^2.2.1" + }, + "engines": { + "node": ">=8.10.0" + } }, - "import-local": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/import-local/-/import-local-3.1.0.tgz", - "integrity": "sha512-ASB07uLtnDs1o6EHjKpX34BKYDSqnFerfTOJL2HvMqF70LnxpjkzDB8J44oT9pu4AMPkQwf8jl6szgvNd2tRIg==", - "dev": true, - "requires": { - "pkg-dir": "^4.2.0", - "resolve-cwd": "^3.0.0" - } - }, - "inquirer": { - "version": "7.3.3", - "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-7.3.3.tgz", - "integrity": "sha512-JG3eIAj5V9CwcGvuOmoo6LB9kbAYT8HXffUl6memuszlwDC/qvFAJw49XJ5NROSFNPxp3iQg1GqkFhaY/CR0IA==", - "dev": true, - "requires": { - "ansi-escapes": "^4.2.1", - "chalk": "^4.1.0", - "cli-cursor": "^3.1.0", - "cli-width": "^3.0.0", - "external-editor": "^3.0.3", - "figures": "^3.0.0", - "lodash": "^4.17.19", - "mute-stream": "0.0.8", - "run-async": "^2.4.0", - "rxjs": "^6.6.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0", - "through": "^2.3.6" + "node_modules/recursive-copy": { + "version": "2.0.14", + "resolved": "https://registry.npmjs.org/recursive-copy/-/recursive-copy-2.0.14.tgz", + "integrity": "sha512-K8WNY8f8naTpfbA+RaXmkaQuD1IeW9EgNEfyGxSqqTQukpVtoOKros9jUqbpEsSw59YOmpd8nCBgtqJZy5nvog==", + "dev": true, + "dependencies": { + "errno": "^0.1.2", + "graceful-fs": "^4.1.4", + "junk": "^1.0.1", + "maximatch": "^0.1.0", + "mkdirp": "^0.5.1", + "pify": "^2.3.0", + "promise": "^7.0.1", + "rimraf": "^2.7.1", + "slash": "^1.0.0" } }, - "interpret": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/interpret/-/interpret-2.2.0.tgz", - "integrity": "sha512-Ju0Bz/cEia55xDwUWEa8+olFpCiQoypjnQySseKtmjNrnps3P+xfpUmGr90T7yjlVJmOtybRvPXhKMbHr+fWnw==", + "node_modules/regenerator-runtime": { + "version": "0.14.1", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.14.1.tgz", + "integrity": "sha512-dYnhHh0nJoMfnkZs6GmmhFknAGRrLznOu5nc9ML+EJxGvrx6H7teuevqVqCuPcPK//3eDrrjQhehXVx9cnkGdw==", "dev": true }, - "is-binary-path": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", - "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", + "node_modules/require-directory": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", + "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==", "dev": true, - "requires": { - "binary-extensions": "^2.0.0" + "engines": { + "node": ">=0.10.0" } }, - "is-core-module": { - "version": "2.12.0", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.12.0.tgz", - "integrity": "sha512-RECHCBCd/viahWmwj6enj19sKbHfJrddi/6cBDsNTKbNq0f7VeaUkBo60BqzvPqo/W54ChS62Z5qyun7cfOMqQ==", + "node_modules/resolve": { + "version": "1.22.8", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.8.tgz", + "integrity": "sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==", "dev": true, - "requires": { - "has": "^1.0.3" + "dependencies": { + "is-core-module": "^2.13.0", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" + }, + "bin": { + "resolve": "bin/resolve" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "is-extglob": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", - "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", - "dev": true + "node_modules/reusify": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", + "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==", + "dev": true, + "engines": { + "iojs": ">=1.0.0", + "node": ">=0.10.0" + } }, - "is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", - "dev": true + "node_modules/rimraf": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", + "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", + "dev": true, + "dependencies": { + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" + } }, - "is-glob": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", - "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", + "node_modules/run-parallel": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", + "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==", "dev": true, - "requires": { - "is-extglob": "^2.1.1" + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "dependencies": { + "queue-microtask": "^1.2.2" } }, - "is-number": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", - "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", - "dev": true + "node_modules/rxjs": { + "version": "7.8.1", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.8.1.tgz", + "integrity": "sha512-AA3TVj+0A2iuIoQkWEK/tqFjBq2j+6PO6Y0zJcvzLAFhEFIO3HL0vls9hWLncZbAAbK0mar7oZ4V079I/qPMxg==", + "dev": true, + "dependencies": { + "tslib": "^2.1.0" + } }, - "is-plain-object": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", - "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", + "node_modules/section-matter": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/section-matter/-/section-matter-1.0.0.tgz", + "integrity": "sha512-vfD3pmTzGpufjScBh50YHKzEu2lxBWhVEHsNGoEXmCmn2hKGfeNLYMzCJpe8cD7gqX7TJluOVpBkAequ6dgMmA==", "dev": true, - "requires": { - "isobject": "^3.0.1" + "dependencies": { + "extend-shallow": "^2.0.1", + "kind-of": "^6.0.0" + }, + "engines": { + "node": ">=4" } }, - "isexe": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", - "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", - "dev": true + "node_modules/semver": { + "version": "7.6.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.0.tgz", + "integrity": "sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==", + "dev": true, + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } }, - "isobject": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", - "integrity": "sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==", + "node_modules/semver-compare": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/semver-compare/-/semver-compare-1.0.0.tgz", + "integrity": "sha512-YM3/ITh2MJ5MtzaM429anh+x2jiLVjqILF4m4oyQB18W7Ggea7BfqdH/wGMK7dDiMghv/6WG7znWMwUDzJiXow==", "dev": true }, - "jest-worker": { - "version": "27.5.1", - "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz", - "integrity": "sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==", + "node_modules/set-function-length": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/set-function-length/-/set-function-length-1.2.2.tgz", + "integrity": "sha512-pgRc4hJ4/sNjWCSS9AmnS40x3bNMDTknHgL5UaMBTMyJnU90EgWh1Rz+MC9eFu4BuN/UwZjKQuY/1v3rM7HMfg==", "dev": true, - "requires": { - "@types/node": "*", - "merge-stream": "^2.0.0", - "supports-color": "^8.0.0" - }, "dependencies": { - "supports-color": { - "version": "8.1.1", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", - "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - } + "define-data-property": "^1.1.4", + "es-errors": "^1.3.0", + "function-bind": "^1.1.2", + "get-intrinsic": "^1.2.4", + "gopd": "^1.0.1", + "has-property-descriptors": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" } }, - "jquery": { - "version": "3.6.4", - "resolved": "https://registry.npmjs.org/jquery/-/jquery-3.6.4.tgz", - "integrity": "sha512-v28EW9DWDFpzcD9O5iyJXg3R3+q+mET5JhnjJzQUZMHOv67bpSIHq81GEYpPNZHG+XXHsfSme3nxp/hndKEcsQ==" - }, - "json-fixer": { - "version": "1.6.15", - "resolved": "https://registry.npmjs.org/json-fixer/-/json-fixer-1.6.15.tgz", - "integrity": "sha512-TuDuZ5KrgyjoCIppdPXBMqiGfota55+odM+j2cQ5rt/XKyKmqGB3Whz1F8SN8+60yYGy/Nu5lbRZ+rx8kBIvBw==", + "node_modules/sharp": { + "version": "0.33.2", + "resolved": "https://registry.npmjs.org/sharp/-/sharp-0.33.2.tgz", + "integrity": "sha512-WlYOPyyPDiiM07j/UO+E720ju6gtNtHjEGg5vovUk1Lgxyjm2LFO+37Nt/UI3MMh2l6hxTWQWi7qk3cXJTutcQ==", "dev": true, - "requires": { - "@babel/runtime": "^7.18.9", - "chalk": "^4.1.2", - "pegjs": "^0.10.0" + "hasInstallScript": true, + "dependencies": { + "color": "^4.2.3", + "detect-libc": "^2.0.2", + "semver": "^7.5.4" + }, + "engines": { + "libvips": ">=8.15.1", + "node": "^18.17.0 || ^20.3.0 || >=21.0.0" + }, + "funding": { + "url": "https://opencollective.com/libvips" + }, + "optionalDependencies": { + "@img/sharp-darwin-arm64": "0.33.2", + "@img/sharp-darwin-x64": "0.33.2", + "@img/sharp-libvips-darwin-arm64": "1.0.1", + "@img/sharp-libvips-darwin-x64": "1.0.1", + "@img/sharp-libvips-linux-arm": "1.0.1", + "@img/sharp-libvips-linux-arm64": "1.0.1", + "@img/sharp-libvips-linux-s390x": "1.0.1", + "@img/sharp-libvips-linux-x64": "1.0.1", + "@img/sharp-libvips-linuxmusl-arm64": "1.0.1", + "@img/sharp-libvips-linuxmusl-x64": "1.0.1", + "@img/sharp-linux-arm": "0.33.2", + "@img/sharp-linux-arm64": "0.33.2", + "@img/sharp-linux-s390x": "0.33.2", + "@img/sharp-linux-x64": "0.33.2", + "@img/sharp-linuxmusl-arm64": "0.33.2", + "@img/sharp-linuxmusl-x64": "0.33.2", + "@img/sharp-wasm32": "0.33.2", + "@img/sharp-win32-ia32": "0.33.2", + "@img/sharp-win32-x64": "0.33.2" } }, - "json-parse-even-better-errors": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz", - "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==", - "dev": true - }, - "json-schema-traverse": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", - "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", - "dev": true - }, - "json5": { - "version": "2.2.3", - "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz", - "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==", - "dev": true + "node_modules/shebang-command": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", + "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", + "dev": true, + "dependencies": { + "shebang-regex": "^3.0.0" + }, + "engines": { + "node": ">=8" + } }, - "kind-of": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", - "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", - "dev": true + "node_modules/shebang-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", + "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", + "dev": true, + "engines": { + "node": ">=8" + } }, - "klona": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/klona/-/klona-2.0.6.tgz", - "integrity": "sha512-dhG34DXATL5hSxJbIexCft8FChFXtmskoZYnoPWjXQuebWYCNkVeV3KkGegCK9CP1oswI/vQibS2GY7Em/sJJA==", - "dev": true + "node_modules/shell-quote": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/shell-quote/-/shell-quote-1.8.1.tgz", + "integrity": "sha512-6j1W9l1iAs/4xYBI1SYOVZyFcCis9b4KCLQ8fgAGG07QvzaRLVVRQvAy85yNmmZSjYjg4MWh4gNvlPujU/5LpA==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } }, - "loader-runner": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/loader-runner/-/loader-runner-4.3.0.tgz", - "integrity": "sha512-3R/1M+yS3j5ou80Me59j7F9IMs4PXs3VqRrm0TU3AbKPxlmpoY1TNscJV/oGJXo8qCatFGTfDbY6W6ipGOYXfg==", - "dev": true + "node_modules/signal-exit": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz", + "integrity": "sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==", + "dev": true, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } }, - "loader-utils": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.4.tgz", - "integrity": "sha512-xXqpXoINfFhgua9xiqD8fPFHgkoq1mmmpE92WlDbm9rNRd/EbRb+Gqf908T2DMfuHjjJlksiK2RbHVOdD/MqSw==", + "node_modules/simple-swizzle": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/simple-swizzle/-/simple-swizzle-0.2.2.tgz", + "integrity": "sha512-JA//kQgZtbuY83m+xT+tXJkmJncGMTFT+C+g2h2R9uxkYIrE2yy9sgmcLhCnw57/WSD+Eh3J97FPEDFnbXnDUg==", "dev": true, - "requires": { - "big.js": "^5.2.2", - "emojis-list": "^3.0.0", - "json5": "^2.1.2" + "dependencies": { + "is-arrayish": "^0.3.1" } }, - "locate-path": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", - "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", + "node_modules/slash": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-1.0.0.tgz", + "integrity": "sha512-3TYDR7xWt4dIqV2JauJr+EJeW356RXijHeUlO+8djJ+uBXPn8/2dpzBc8yQhh583sVvc9CvFAeQVgijsH+PNNg==", "dev": true, - "requires": { - "p-locate": "^4.1.0" + "engines": { + "node": ">=0.10.0" } }, - "lodash": { - "version": "4.17.21", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", - "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==", - "dev": true - }, - "lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "node_modules/slugify": { + "version": "1.6.6", + "resolved": "https://registry.npmjs.org/slugify/-/slugify-1.6.6.tgz", + "integrity": "sha512-h+z7HKHYXj6wJU+AnS/+IH8Uh9fdcX1Lrhg1/VMdf9PwoBQXFcXiAdsy2tSK0P6gKwJLXp02r90ahUCqHk9rrw==", "dev": true, - "requires": { - "yallist": "^4.0.0" + "engines": { + "node": ">=8.0.0" } }, - "merge-stream": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", - "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==", - "dev": true - }, - "mime-db": { - "version": "1.52.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", - "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", - "dev": true - }, - "mime-types": { - "version": "2.1.35", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", - "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", + "node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", "dev": true, - "requires": { - "mime-db": "1.52.0" + "engines": { + "node": ">=0.10.0" } }, - "mimic-fn": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", - "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", - "dev": true - }, - "mini-css-extract-plugin": { - "version": "2.7.5", - "resolved": "https://registry.npmjs.org/mini-css-extract-plugin/-/mini-css-extract-plugin-2.7.5.tgz", - "integrity": "sha512-9HaR++0mlgom81s95vvNjxkg52n2b5s//3ZTI1EtzFb98awsLSivs2LMsVqnQ3ay0PVhqWcGNyDaTE961FOcjQ==", + "node_modules/source-map-js": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.2.tgz", + "integrity": "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==", "dev": true, - "requires": { - "schema-utils": "^4.0.0" + "engines": { + "node": ">=0.10.0" } }, - "motion-ui": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/motion-ui/-/motion-ui-2.0.4.tgz", - "integrity": "sha512-7GjtcXXqRHUQGH9Gm8KLbvx9sz5tNGlftsaJ/J5d4q33PzfgKnUm+OynDji4VR3fiZXPT3nMkzBQlZsifYTIOg==", - "requires": {} - }, - "mute-stream": { - "version": "0.0.8", - "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.8.tgz", - "integrity": "sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA==", - "dev": true - }, - "nanoid": { - "version": "3.3.6", - "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.6.tgz", - "integrity": "sha512-BGcqMMJuToF7i1rt+2PWSNVnWIkGCU78jBG3RxO/bZlnZPK2Cmi2QaffxGO/2RvWi9sL+FAiRiXMgsyxQ1DIDA==", + "node_modules/spawn-command": { + "version": "0.0.2", + "resolved": "https://registry.npmjs.org/spawn-command/-/spawn-command-0.0.2.tgz", + "integrity": "sha512-zC8zGoGkmc8J9ndvml8Xksr1Amk9qBujgbF0JAIWO7kXr43w0h/0GJNM/Vustixu+YE8N/MTrQ7N31FvHUACxQ==", "dev": true }, - "neo-async": { - "version": "2.6.2", - "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.6.2.tgz", - "integrity": "sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==", + "node_modules/sprintf-js": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", + "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==", "dev": true }, - "node-fetch": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.9.tgz", - "integrity": "sha512-DJm/CJkZkRjKKj4Zi4BsKVZh3ValV5IR5s7LVZnW+6YMh0W1BfNA8XSs6DLMGYlId5F3KnA70uu2qepcR08Qqg==", + "node_modules/ssri": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/ssri/-/ssri-8.0.1.tgz", + "integrity": "sha512-97qShzy1AiyxvPNIkLWoGua7xoQzzPjQ0HAH4B0rWKo7SZ6USuPcrUiAFrws0UH8RrbWmgq3LMTObhPIHbbBeQ==", "dev": true, - "requires": { - "whatwg-url": "^5.0.0" + "dependencies": { + "minipass": "^3.1.1" + }, + "engines": { + "node": ">= 8" } }, - "node-releases": { - "version": "2.0.10", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.10.tgz", - "integrity": "sha512-5GFldHPXVG/YZmFzJvKK2zDSzPKhEp0+ZR5SVaoSag9fsL5YgHbUHDfnG5494ISANDcK4KwPXAx2xqVEydmd7w==", - "dev": true - }, - "normalize-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", - "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", - "dev": true - }, - "onetime": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz", - "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==", + "node_modules/statuses": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", + "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==", "dev": true, - "requires": { - "mimic-fn": "^2.1.0" + "engines": { + "node": ">= 0.8" } }, - "os-tmpdir": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", - "integrity": "sha512-D2FR03Vir7FIu45XBY20mTb+/ZSWB00sjU9jdQXt83gDrI4Ztz5Fs7/yy74g2N5SVQY4xY1qDr4rNddwYRVX0g==", - "dev": true - }, - "p-limit": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", - "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", "dev": true, - "requires": { - "p-try": "^2.0.0" + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" } }, - "p-locate": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", - "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", + "node_modules/string-width-cjs": { + "name": "string-width", + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", "dev": true, - "requires": { - "p-limit": "^2.2.0" + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" } }, - "p-try": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", - "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", - "dev": true - }, - "path-exists": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", - "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", - "dev": true - }, - "path-key": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", - "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", - "dev": true - }, - "path-parse": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", - "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", - "dev": true + "node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dev": true, + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } }, - "pegjs": { - "version": "0.10.0", - "resolved": "https://registry.npmjs.org/pegjs/-/pegjs-0.10.0.tgz", - "integrity": "sha512-qI5+oFNEGi3L5HAxDwN2LA4Gg7irF70Zs25edhjld9QemOgp0CbvMtbFcMvFtEo1OityPrcCzkQFB8JP/hxgow==", - "dev": true + "node_modules/strip-ansi-cjs": { + "name": "strip-ansi", + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dev": true, + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } }, - "picocolors": { + "node_modules/strip-bom-string": { "version": "1.0.0", - "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", - "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==", - "dev": true - }, - "picomatch": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", - "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", - "dev": true - }, - "pify": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-5.0.0.tgz", - "integrity": "sha512-eW/gHNMlxdSP6dmG6uJip6FXN0EQBwm2clYYd8Wul42Cwu/DK8HEftzsapcNdYe2MfLiIwZqsDk2RDEsTE79hA==", - "dev": true - }, - "pkg-dir": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz", - "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==", + "resolved": "https://registry.npmjs.org/strip-bom-string/-/strip-bom-string-1.0.0.tgz", + "integrity": "sha512-uCC2VHvQRYu+lMh4My/sFNmF2klFymLX1wHJeXnbEJERpV/ZsVuonzerjfrGpIGF7LBVa1O7i9kjiWvJiFck8g==", "dev": true, - "requires": { - "find-up": "^4.0.0" + "engines": { + "node": ">=0.10.0" } }, - "postcss": { - "version": "8.4.31", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.31.tgz", - "integrity": "sha512-PS08Iboia9mts/2ygV3eLpY5ghnUcfLV/EXTOW1E2qYxJKGGBUtNjN76FYHnMs36RmARn41bC0AZmn+rR0OVpQ==", + "node_modules/stylehacks": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/stylehacks/-/stylehacks-6.1.0.tgz", + "integrity": "sha512-ETErsPFgwlfYZ/CSjMO2Ddf+TsnkCVPBPaoB99Ro8WMAxf7cglzmFsRBhRmKObFjibtcvlNxFFPHuyr3sNlNUQ==", "dev": true, - "requires": { - "nanoid": "^3.3.6", - "picocolors": "^1.0.0", - "source-map-js": "^1.0.2" + "dependencies": { + "browserslist": "^4.23.0", + "postcss-selector-parser": "^6.0.15" + }, + "engines": { + "node": "^14 || ^16 || >=18.0" + }, + "peerDependencies": { + "postcss": "^8.4.31" } }, - "postcss-modules-extract-imports": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/postcss-modules-extract-imports/-/postcss-modules-extract-imports-3.0.0.tgz", - "integrity": "sha512-bdHleFnP3kZ4NYDhuGlVK+CMrQ/pqUm8bx/oGL93K6gVwiclvX5x0n76fYMKuIGKzlABOy13zsvqjb0f92TEXw==", + "node_modules/sucrase": { + "version": "3.35.0", + "resolved": "https://registry.npmjs.org/sucrase/-/sucrase-3.35.0.tgz", + "integrity": "sha512-8EbVDiu9iN/nESwxeSxDKe0dunta1GOlHufmSSXxMD2z2/tMZpDMpvXQGsc+ajGo8y2uYUmixaSRUc/QPoQ0GA==", "dev": true, - "requires": {} + "dependencies": { + "@jridgewell/gen-mapping": "^0.3.2", + "commander": "^4.0.0", + "glob": "^10.3.10", + "lines-and-columns": "^1.1.6", + "mz": "^2.7.0", + "pirates": "^4.0.1", + "ts-interface-checker": "^0.1.9" + }, + "bin": { + "sucrase": "bin/sucrase", + "sucrase-node": "bin/sucrase-node" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + } }, - "postcss-modules-local-by-default": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/postcss-modules-local-by-default/-/postcss-modules-local-by-default-4.0.0.tgz", - "integrity": "sha512-sT7ihtmGSF9yhm6ggikHdV0hlziDTX7oFoXtuVWeDd3hHObNkcHRo9V3yg7vCAY7cONyxJC/XXCmmiHHcvX7bQ==", + "node_modules/sucrase/node_modules/brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", "dev": true, - "requires": { - "icss-utils": "^5.0.0", - "postcss-selector-parser": "^6.0.2", - "postcss-value-parser": "^4.1.0" + "dependencies": { + "balanced-match": "^1.0.0" } }, - "postcss-modules-scope": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/postcss-modules-scope/-/postcss-modules-scope-3.0.0.tgz", - "integrity": "sha512-hncihwFA2yPath8oZ15PZqvWGkWf+XUfQgUGamS4LqoP1anQLOsOJw0vr7J7IwLpoY9fatA2qiGUGmuZL0Iqlg==", + "node_modules/sucrase/node_modules/commander": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/commander/-/commander-4.1.1.tgz", + "integrity": "sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA==", "dev": true, - "requires": { - "postcss-selector-parser": "^6.0.4" + "engines": { + "node": ">= 6" } }, - "postcss-modules-values": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/postcss-modules-values/-/postcss-modules-values-4.0.0.tgz", - "integrity": "sha512-RDxHkAiEGI78gS2ofyvCsu7iycRv7oqw5xMWn9iMoR0N/7mf9D50ecQqUo5BZ9Zh2vH4bCUR/ktCqbB9m8vJjQ==", + "node_modules/sucrase/node_modules/glob": { + "version": "10.3.10", + "resolved": "https://registry.npmjs.org/glob/-/glob-10.3.10.tgz", + "integrity": "sha512-fa46+tv1Ak0UPK1TOy/pZrIybNNt4HCv7SDzwyfiOZkvZLEbjsZkJBPtDHVshZjbecAoAGSC20MjLDG/qr679g==", "dev": true, - "requires": { - "icss-utils": "^5.0.0" + "dependencies": { + "foreground-child": "^3.1.0", + "jackspeak": "^2.3.5", + "minimatch": "^9.0.1", + "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0", + "path-scurry": "^1.10.1" + }, + "bin": { + "glob": "dist/esm/bin.mjs" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, - "postcss-selector-parser": { - "version": "6.0.11", - "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.11.tgz", - "integrity": "sha512-zbARubNdogI9j7WY4nQJBiNqQf3sLS3wCP4WfOidu+p28LofJqDH1tcXypGrcmMHhDk2t9wGhCsYe/+szLTy1g==", + "node_modules/sucrase/node_modules/minimatch": { + "version": "9.0.3", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.3.tgz", + "integrity": "sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==", "dev": true, - "requires": { - "cssesc": "^3.0.0", - "util-deprecate": "^1.0.2" + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, - "postcss-value-parser": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz", - "integrity": "sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==", - "dev": true - }, - "punycode": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.0.tgz", - "integrity": "sha512-rRV+zQD8tVFys26lAGR9WUuS4iUAngJScM+ZRSKtvl5tKeZ2t5bvdNFdNHBW9FWR4guGHlgmsZ1G7BSm2wTbuA==", - "dev": true - }, - "randombytes": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz", - "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==", + "node_modules/sucrase/node_modules/minipass": { + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.0.4.tgz", + "integrity": "sha512-jYofLM5Dam9279rdkWzqHozUo4ybjdZmCsDHePy5V/PbBcVMiSZR97gmAy45aqi8CK1lG2ECd356FU86avfwUQ==", "dev": true, - "requires": { - "safe-buffer": "^5.1.0" + "engines": { + "node": ">=16 || 14 >=14.17" } }, - "readdirp": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", - "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", + "node_modules/supports-color": { + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", + "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", "dev": true, - "requires": { - "picomatch": "^2.2.1" + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/supports-color?sponsor=1" } }, - "rechoir": { - "version": "0.7.1", - "resolved": "https://registry.npmjs.org/rechoir/-/rechoir-0.7.1.tgz", - "integrity": "sha512-/njmZ8s1wVeR6pjTZ+0nCnv8SpZNRMT2D1RLOJQESlYFDBvwpTA4KWJpZ+sBJ4+vhjILRcK7JIFdGCdxEAAitg==", + "node_modules/supports-preserve-symlinks-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", + "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", "dev": true, - "requires": { - "resolve": "^1.9.0" + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "regenerator-runtime": { - "version": "0.13.11", - "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.11.tgz", - "integrity": "sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg==", - "dev": true - }, - "regex-parser": { - "version": "2.2.11", - "resolved": "https://registry.npmjs.org/regex-parser/-/regex-parser-2.2.11.tgz", - "integrity": "sha512-jbD/FT0+9MBU2XAZluI7w2OBs1RBi6p9M83nkoZayQXXU9e8Robt69FcZc7wU4eJD/YFTjn1JdCk3rbMJajz8Q==", - "dev": true - }, - "require-directory": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", - "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==", - "dev": true - }, - "require-from-string": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz", - "integrity": "sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==", - "dev": true - }, - "require-main-filename": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-2.0.0.tgz", - "integrity": "sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==", - "dev": true - }, - "resolve": { - "version": "1.22.2", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.2.tgz", - "integrity": "sha512-Sb+mjNHOULsBv818T40qSPeRiuWLyaGMa5ewydRLFimneixmVy2zdivRl+AF6jaYPC8ERxGDmFSiqui6SfPd+g==", + "node_modules/svgo": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/svgo/-/svgo-3.2.0.tgz", + "integrity": "sha512-4PP6CMW/V7l/GmKRKzsLR8xxjdHTV4IMvhTnpuHwwBazSIlw5W/5SmPjN8Dwyt7lKbSJrRDgp4t9ph0HgChFBQ==", "dev": true, - "requires": { - "is-core-module": "^2.11.0", - "path-parse": "^1.0.7", - "supports-preserve-symlinks-flag": "^1.0.0" + "dependencies": { + "@trysound/sax": "0.2.0", + "commander": "^7.2.0", + "css-select": "^5.1.0", + "css-tree": "^2.3.1", + "css-what": "^6.1.0", + "csso": "^5.0.5", + "picocolors": "^1.0.0" + }, + "bin": { + "svgo": "bin/svgo" + }, + "engines": { + "node": ">=14.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/svgo" } }, - "resolve-cwd": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/resolve-cwd/-/resolve-cwd-3.0.0.tgz", - "integrity": "sha512-OrZaX2Mb+rJCpH/6CpSqt9xFVpN++x01XnN2ie9g6P5/3xelLAkXWVADpdz1IHD/KFfEXyE6V0U01OQ3UO2rEg==", + "node_modules/svgo/node_modules/commander": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-7.2.0.tgz", + "integrity": "sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw==", "dev": true, - "requires": { - "resolve-from": "^5.0.0" + "engines": { + "node": ">= 10" } }, - "resolve-from": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", - "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", - "dev": true - }, - "resolve-url-loader": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/resolve-url-loader/-/resolve-url-loader-5.0.0.tgz", - "integrity": "sha512-uZtduh8/8srhBoMx//5bwqjQ+rfYOUq8zC9NrMUGtjBiGTtFJM42s58/36+hTqeqINcnYe08Nj3LkK9lW4N8Xg==", + "node_modules/tailwindcss": { + "version": "3.4.1", + "resolved": "https://registry.npmjs.org/tailwindcss/-/tailwindcss-3.4.1.tgz", + "integrity": "sha512-qAYmXRfk3ENzuPBakNK0SRrUDipP8NQnEY6772uDhflcQz5EhRdD7JNZxyrFHVQNCwULPBn6FNPp9brpO7ctcA==", "dev": true, - "requires": { - "adjust-sourcemap-loader": "^4.0.0", - "convert-source-map": "^1.7.0", - "loader-utils": "^2.0.0", - "postcss": "^8.2.14", - "source-map": "0.6.1" + "dependencies": { + "@alloc/quick-lru": "^5.2.0", + "arg": "^5.0.2", + "chokidar": "^3.5.3", + "didyoumean": "^1.2.2", + "dlv": "^1.1.3", + "fast-glob": "^3.3.0", + "glob-parent": "^6.0.2", + "is-glob": "^4.0.3", + "jiti": "^1.19.1", + "lilconfig": "^2.1.0", + "micromatch": "^4.0.5", + "normalize-path": "^3.0.0", + "object-hash": "^3.0.0", + "picocolors": "^1.0.0", + "postcss": "^8.4.23", + "postcss-import": "^15.1.0", + "postcss-js": "^4.0.1", + "postcss-load-config": "^4.0.1", + "postcss-nested": "^6.0.1", + "postcss-selector-parser": "^6.0.11", + "resolve": "^1.22.2", + "sucrase": "^3.32.0" + }, + "bin": { + "tailwind": "lib/cli.js", + "tailwindcss": "lib/cli.js" + }, + "engines": { + "node": ">=14.0.0" } }, - "restore-cursor": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-3.1.0.tgz", - "integrity": "sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==", + "node_modules/tailwindcss/node_modules/glob-parent": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", + "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", "dev": true, - "requires": { - "onetime": "^5.1.0", - "signal-exit": "^3.0.2" + "dependencies": { + "is-glob": "^4.0.3" + }, + "engines": { + "node": ">=10.13.0" } }, - "run-async": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.4.1.tgz", - "integrity": "sha512-tvVnVv01b8c1RrA6Ep7JkStj85Guv/YrMcwqYQnwjsAS2cTmmPGBBjAjpCW7RrSodNSoE2/qg9O4bceNvUuDgQ==", - "dev": true - }, - "rxjs": { - "version": "6.6.7", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.6.7.tgz", - "integrity": "sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ==", + "node_modules/tailwindcss/node_modules/postcss-import": { + "version": "15.1.0", + "resolved": "https://registry.npmjs.org/postcss-import/-/postcss-import-15.1.0.tgz", + "integrity": "sha512-hpr+J05B2FVYUAXHeK1YyI267J/dDDhMU6B6civm8hSY1jYJnBXxzKDKDswzJmtLHryrjhnDjqqp/49t8FALew==", "dev": true, - "requires": { - "tslib": "^1.9.0" + "dependencies": { + "postcss-value-parser": "^4.0.0", + "read-cache": "^1.0.0", + "resolve": "^1.1.7" + }, + "engines": { + "node": ">=14.0.0" + }, + "peerDependencies": { + "postcss": "^8.0.0" } }, - "safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", - "dev": true - }, - "safer-buffer": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", - "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", + "node_modules/thenby": { + "version": "1.3.4", + "resolved": "https://registry.npmjs.org/thenby/-/thenby-1.3.4.tgz", + "integrity": "sha512-89Gi5raiWA3QZ4b2ePcEwswC3me9JIg+ToSgtE0JWeCynLnLxNr/f9G+xfo9K+Oj4AFdom8YNJjibIARTJmapQ==", "dev": true }, - "sass": { - "version": "1.62.1", - "resolved": "https://registry.npmjs.org/sass/-/sass-1.62.1.tgz", - "integrity": "sha512-NHpxIzN29MXvWiuswfc1W3I0N8SXBd8UR26WntmDlRYf0bSADnwnOjsyMZ3lMezSlArD33Vs3YFhp7dWvL770A==", + "node_modules/thenify": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/thenify/-/thenify-3.3.1.tgz", + "integrity": "sha512-RVZSIV5IG10Hk3enotrhvz0T9em6cyHBLkH/YAZuKqd8hRkKhSfCGIcP2KUY0EPxndzANBmNllzWPwak+bheSw==", "dev": true, - "requires": { - "chokidar": ">=3.0.0 <4.0.0", - "immutable": "^4.0.0", - "source-map-js": ">=0.6.2 <2.0.0" + "dependencies": { + "any-promise": "^1.0.0" } }, - "sass-loader": { - "version": "13.2.2", - "resolved": "https://registry.npmjs.org/sass-loader/-/sass-loader-13.2.2.tgz", - "integrity": "sha512-nrIdVAAte3B9icfBiGWvmMhT/D+eCDwnk+yA7VE/76dp/WkHX+i44Q/pfo71NYbwj0Ap+PGsn0ekOuU1WFJ2AA==", + "node_modules/thenify-all": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/thenify-all/-/thenify-all-1.6.0.tgz", + "integrity": "sha512-RNxQH/qI8/t3thXJDwcstUO4zeqo64+Uy/+sNVRBx4Xn2OX+OZ9oP+iJnNFqplFra2ZUVeKCSa2oVWi3T4uVmA==", "dev": true, - "requires": { - "klona": "^2.0.6", - "neo-async": "^2.6.2" + "dependencies": { + "thenify": ">= 3.1.0 < 4" + }, + "engines": { + "node": ">=0.8" } }, - "schema-utils": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.0.1.tgz", - "integrity": "sha512-lELhBAAly9NowEsX0yZBlw9ahZG+sK/1RJ21EpzdYHKEs13Vku3LJ+MIPhh4sMs0oCCeufZQEQbMekiA4vuVIQ==", - "dev": true, - "requires": { - "@types/json-schema": "^7.0.9", - "ajv": "^8.9.0", - "ajv-formats": "^2.1.1", - "ajv-keywords": "^5.1.0" - } + "node_modules/thenify/node_modules/any-promise": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/any-promise/-/any-promise-1.3.0.tgz", + "integrity": "sha512-7UvmKalWRt1wgjL1RrGxoSJW/0QZFIegpeGvZG9kjp8vrRu55XTHbwnqq2GpXm9uLbcuhxm3IqX9OB4MZR1b2A==", + "dev": true }, - "semver": { - "version": "7.5.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.0.tgz", - "integrity": "sha512-+XC0AD/R7Q2mPSRuy2Id0+CGTZ98+8f+KvwirxOKIEyid+XSx6HbC63p+O4IndTHuX5Z+JxQ0TghCkO5Cg/2HA==", + "node_modules/to-fast-properties": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", + "integrity": "sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==", "dev": true, - "requires": { - "lru-cache": "^6.0.0" + "engines": { + "node": ">=4" } }, - "serialize-javascript": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-6.0.1.tgz", - "integrity": "sha512-owoXEFjWRllis8/M1Q+Cw5k8ZH40e3zhp/ovX+Xr/vi1qj6QesbyXXViFbpNvWvPNAD62SutwEXavefrLJWj7w==", + "node_modules/to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", "dev": true, - "requires": { - "randombytes": "^2.1.0" + "dependencies": { + "is-number": "^7.0.0" + }, + "engines": { + "node": ">=8.0" } }, - "set-blocking": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", - "integrity": "sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw==", + "node_modules/token-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/token-stream/-/token-stream-1.0.0.tgz", + "integrity": "sha512-VSsyNPPW74RpHwR8Fc21uubwHY7wMDeJLys2IX5zJNih+OnAnaifKHo+1LHT7DAdloQ7apeaaWg8l7qnf/TnEg==", "dev": true }, - "shallow-clone": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/shallow-clone/-/shallow-clone-3.0.1.tgz", - "integrity": "sha512-/6KqX+GVUdqPuPPd2LxDDxzX6CAbjJehAAOKlNpqqUpAqPM6HeL8f+o3a+JsyGjn2lv0WY8UsTgUJjU9Ok55NA==", - "dev": true, - "requires": { - "kind-of": "^6.0.2" - } + "node_modules/tr46": { + "version": "0.0.3", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", + "integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==", + "dev": true }, - "shebang-command": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", - "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", + "node_modules/tree-kill": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/tree-kill/-/tree-kill-1.2.2.tgz", + "integrity": "sha512-L0Orpi8qGpRG//Nd+H90vFB+3iHnue1zSSGmNOOCh1GLJ7rUKVwV2HvijphGQS2UmhUZewS9VgvxYIdgr+fG1A==", "dev": true, - "requires": { - "shebang-regex": "^3.0.0" + "bin": { + "tree-kill": "cli.js" } }, - "shebang-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", - "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", - "dev": true - }, - "signal-exit": { - "version": "3.0.7", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", - "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", + "node_modules/ts-interface-checker": { + "version": "0.1.13", + "resolved": "https://registry.npmjs.org/ts-interface-checker/-/ts-interface-checker-0.1.13.tgz", + "integrity": "sha512-Y/arvbn+rrz3JCKl9C4kVNfTfSm2/mEp5FSz5EsZSANGPSlQrpRI5M4PKF+mJnE52jOO90PnPSc3Ur3bTQw0gA==", "dev": true }, - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "node_modules/tslib": { + "version": "2.6.2", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.2.tgz", + "integrity": "sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==", "dev": true }, - "source-map-js": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.2.tgz", - "integrity": "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==", + "node_modules/uc.micro": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/uc.micro/-/uc.micro-2.1.0.tgz", + "integrity": "sha512-ARDJmphmdvUk6Glw7y9DQ2bFkKBHwQHLi2lsaH6PPmz/Ka9sFOBsBluozhDltWmnv9u/cF6Rt87znRTPV+yp/A==", "dev": true }, - "source-map-support": { - "version": "0.5.21", - "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz", - "integrity": "sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==", + "node_modules/uglify-js": { + "version": "3.17.4", + "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.17.4.tgz", + "integrity": "sha512-T9q82TJI9e/C1TAxYvfb16xO120tMVFZrGA3f9/P4424DNu6ypK103y0GPFVa17yotwSyZW5iYXgjYHkGrJW/g==", "dev": true, - "requires": { - "buffer-from": "^1.0.0", - "source-map": "^0.6.0" + "optional": true, + "bin": { + "uglifyjs": "bin/uglifyjs" + }, + "engines": { + "node": ">=0.8.0" } }, - "string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "node_modules/unicorn-magic": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/unicorn-magic/-/unicorn-magic-0.1.0.tgz", + "integrity": "sha512-lRfVq8fE8gz6QMBuDM6a+LO3IAzTi05H6gCVaUpir2E1Rwpo4ZUog45KpNXKC/Mn3Yb9UDuHumeFTo9iV/D9FQ==", "dev": true, - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "node_modules/universalify": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.1.tgz", + "integrity": "sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==", "dev": true, - "requires": { - "ansi-regex": "^5.0.1" + "engines": { + "node": ">= 10.0.0" } }, - "supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "node_modules/unpipe": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", + "integrity": "sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==", "dev": true, - "requires": { - "has-flag": "^4.0.0" + "engines": { + "node": ">= 0.8" } }, - "supports-preserve-symlinks-flag": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", - "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", - "dev": true - }, - "tapable": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.2.1.tgz", - "integrity": "sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==", - "dev": true - }, - "terser": { - "version": "5.17.1", - "resolved": "https://registry.npmjs.org/terser/-/terser-5.17.1.tgz", - "integrity": "sha512-hVl35zClmpisy6oaoKALOpS0rDYLxRFLHhRuDlEGTKey9qHjS1w9GMORjuwIMt70Wan4lwsLYyWDVnWgF+KUEw==", - "dev": true, - "requires": { - "@jridgewell/source-map": "^0.3.2", - "acorn": "^8.5.0", - "commander": "^2.20.0", - "source-map-support": "~0.5.20" - } - }, - "terser-webpack-plugin": { - "version": "5.3.7", - "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-5.3.7.tgz", - "integrity": "sha512-AfKwIktyP7Cu50xNjXF/6Qb5lBNzYaWpU6YfoX3uZicTx0zTy0stDDCsvjDapKsSDvOeWo5MEq4TmdBy2cNoHw==", - "dev": true, - "requires": { - "@jridgewell/trace-mapping": "^0.3.17", - "jest-worker": "^27.4.5", - "schema-utils": "^3.1.1", - "serialize-javascript": "^6.0.1", - "terser": "^5.16.5" - }, - "dependencies": { - "ajv": { - "version": "6.12.6", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", - "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", - "dev": true, - "requires": { - "fast-deep-equal": "^3.1.1", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.4.1", - "uri-js": "^4.2.2" - } - }, - "ajv-keywords": { - "version": "3.5.2", - "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz", - "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==", - "dev": true, - "requires": {} + "node_modules/update-browserslist-db": { + "version": "1.0.13", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.13.tgz", + "integrity": "sha512-xebP81SNcPuNpPP3uzeW1NYXxI3rxyJzF3pD6sH4jE7o/IX+WtSpwnVU+qIsDPyk0d3hmFQ7mjqc6AtV604hbg==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" }, - "json-schema-traverse": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", - "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", - "dev": true + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" }, - "schema-utils": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.1.2.tgz", - "integrity": "sha512-pvjEHOgWc9OWA/f/DE3ohBWTD6EleVLf7iFUkoSwAxttdBhB9QUebQgxER2kWueOvRJXPHNnyrvvh9eZINB8Eg==", - "dev": true, - "requires": { - "@types/json-schema": "^7.0.8", - "ajv": "^6.12.5", - "ajv-keywords": "^3.5.2" - } + { + "type": "github", + "url": "https://github.com/sponsors/ai" } - } - }, - "through": { - "version": "2.3.8", - "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", - "integrity": "sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg==", - "dev": true - }, - "tmp": { - "version": "0.0.33", - "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz", - "integrity": "sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==", - "dev": true, - "requires": { - "os-tmpdir": "~1.0.2" - } - }, - "to-regex-range": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", - "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", - "dev": true, - "requires": { - "is-number": "^7.0.0" - } - }, - "tr46": { - "version": "0.0.3", - "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", - "integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==", - "dev": true - }, - "tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", - "dev": true - }, - "type-fest": { - "version": "0.21.3", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.21.3.tgz", - "integrity": "sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==", - "dev": true - }, - "update-browserslist-db": { - "version": "1.0.11", - "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.11.tgz", - "integrity": "sha512-dCwEFf0/oT85M1fHBg4F0jtLwJrutGoHSQXCh7u4o2t1drG+c0a9Flnqww6XUKSfQMPpJBRjU8d4RXB09qtvaA==", - "dev": true, - "requires": { + ], + "dependencies": { "escalade": "^3.1.1", "picocolors": "^1.0.0" + }, + "bin": { + "update-browserslist-db": "cli.js" + }, + "peerDependencies": { + "browserslist": ">= 4.21.0" } }, - "uri-js": { - "version": "4.4.1", - "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", - "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", - "dev": true, - "requires": { - "punycode": "^2.1.0" - } - }, - "util-deprecate": { + "node_modules/util-deprecate": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==", "dev": true }, - "watchpack": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.4.0.tgz", - "integrity": "sha512-Lcvm7MGST/4fup+ifyKi2hjyIAwcdI4HRgtvTpIUxBRhB+RFtUh8XtDOxUfctVCnhVi+QQj49i91OyvzkJl6cg==", + "node_modules/void-elements": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/void-elements/-/void-elements-3.1.0.tgz", + "integrity": "sha512-Dhxzh5HZuiHQhbvTW9AMetFfBHDMYpo23Uo9btPXgdYP+3T5S+p+jgNy7spra+veYhBP2dCSgxR/i2Y02h5/6w==", "dev": true, - "requires": { - "glob-to-regexp": "^0.4.1", - "graceful-fs": "^4.1.2" + "engines": { + "node": ">=0.10.0" } }, - "webidl-conversions": { + "node_modules/webidl-conversions": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz", "integrity": "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==", "dev": true }, - "webpack": { - "version": "5.80.0", - "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.80.0.tgz", - "integrity": "sha512-OIMiq37XK1rWO8mH9ssfFKZsXg4n6klTEDL7S8/HqbAOBBaiy8ABvXvz0dDCXeEF9gqwxSvVk611zFPjS8hJxA==", - "dev": true, - "requires": { - "@types/eslint-scope": "^3.7.3", - "@types/estree": "^1.0.0", - "@webassemblyjs/ast": "^1.11.5", - "@webassemblyjs/wasm-edit": "^1.11.5", - "@webassemblyjs/wasm-parser": "^1.11.5", - "acorn": "^8.7.1", - "acorn-import-assertions": "^1.7.6", - "browserslist": "^4.14.5", - "chrome-trace-event": "^1.0.2", - "enhanced-resolve": "^5.13.0", - "es-module-lexer": "^1.2.1", - "eslint-scope": "5.1.1", - "events": "^3.2.0", - "glob-to-regexp": "^0.4.1", - "graceful-fs": "^4.2.9", - "json-parse-even-better-errors": "^2.3.1", - "loader-runner": "^4.2.0", - "mime-types": "^2.1.27", - "neo-async": "^2.6.2", - "schema-utils": "^3.1.2", - "tapable": "^2.1.1", - "terser-webpack-plugin": "^5.3.7", - "watchpack": "^2.4.0", - "webpack-sources": "^3.2.3" - }, - "dependencies": { - "ajv": { - "version": "6.12.6", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", - "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", - "dev": true, - "requires": { - "fast-deep-equal": "^3.1.1", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.4.1", - "uri-js": "^4.2.2" - } - }, - "ajv-keywords": { - "version": "3.5.2", - "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz", - "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==", - "dev": true, - "requires": {} - }, - "json-schema-traverse": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", - "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", - "dev": true - }, - "schema-utils": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.1.2.tgz", - "integrity": "sha512-pvjEHOgWc9OWA/f/DE3ohBWTD6EleVLf7iFUkoSwAxttdBhB9QUebQgxER2kWueOvRJXPHNnyrvvh9eZINB8Eg==", - "dev": true, - "requires": { - "@types/json-schema": "^7.0.8", - "ajv": "^6.12.5", - "ajv-keywords": "^3.5.2" - } - } - } - }, - "webpack-cli": { - "version": "4.10.0", - "resolved": "https://registry.npmjs.org/webpack-cli/-/webpack-cli-4.10.0.tgz", - "integrity": "sha512-NLhDfH/h4O6UOy+0LSso42xvYypClINuMNBVVzX4vX98TmTaTUxwRbXdhucbFMd2qLaCTcLq/PdYrvi8onw90w==", - "dev": true, - "requires": { - "@discoveryjs/json-ext": "^0.5.0", - "@webpack-cli/configtest": "^1.2.0", - "@webpack-cli/info": "^1.5.0", - "@webpack-cli/serve": "^1.7.0", - "colorette": "^2.0.14", - "commander": "^7.0.0", - "cross-spawn": "^7.0.3", - "fastest-levenshtein": "^1.0.12", - "import-local": "^3.0.2", - "interpret": "^2.2.0", - "rechoir": "^0.7.0", - "webpack-merge": "^5.7.3" - }, - "dependencies": { - "commander": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/commander/-/commander-7.2.0.tgz", - "integrity": "sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw==", - "dev": true - } - } - }, - "webpack-merge": { - "version": "5.8.0", - "resolved": "https://registry.npmjs.org/webpack-merge/-/webpack-merge-5.8.0.tgz", - "integrity": "sha512-/SaI7xY0831XwP6kzuwhKWVKDP9t1QY1h65lAFLbZqMPIuYcD9QAW4u9STIbU9kaJbPBB/geU/gLr1wDjOhQ+Q==", - "dev": true, - "requires": { - "clone-deep": "^4.0.1", - "wildcard": "^2.0.0" - } - }, - "webpack-sources": { - "version": "3.2.3", - "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-3.2.3.tgz", - "integrity": "sha512-/DyMEOrDgLKKIG0fmvtz+4dUX/3Ghozwgm6iPp8KRhvn+eQf9+Q7GWxVNMk3+uCPWfdXYC4ExGBckIXdFEfH1w==", - "dev": true - }, - "what-input": { - "version": "5.2.12", - "resolved": "https://registry.npmjs.org/what-input/-/what-input-5.2.12.tgz", - "integrity": "sha512-3yrSa7nGSXGJS6wZeSkO6VNm95pB1mZ9i3wFzC1hhY7mn4/afue/MvXz04OXNdBC8bfo4AB4RRd3Dem9jXM58Q==", - "peer": true - }, - "whatwg-url": { + "node_modules/whatwg-url": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz", "integrity": "sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==", "dev": true, - "requires": { + "dependencies": { "tr46": "~0.0.3", "webidl-conversions": "^3.0.0" } }, - "which": { + "node_modules/which": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", "dev": true, - "requires": { + "dependencies": { "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/node-which" + }, + "engines": { + "node": ">= 8" } }, - "which-module": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz", - "integrity": "sha512-B+enWhmw6cjfVC7kS8Pj9pCrKSc5txArRyaYGe088shv/FGWH+0Rjx/xPgtsWfsUtS27FkP697E4DDhgrgoc0Q==", - "dev": true + "node_modules/with": { + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/with/-/with-7.0.2.tgz", + "integrity": "sha512-RNGKj82nUPg3g5ygxkQl0R937xLyho1J24ItRCBTr/m1YnZkzJy1hUiHUJrc/VlsDQzsCnInEGSg3bci0Lmd4w==", + "dev": true, + "dependencies": { + "@babel/parser": "^7.9.6", + "@babel/types": "^7.9.6", + "assert-never": "^1.2.1", + "babel-walk": "3.0.0-canary-5" + }, + "engines": { + "node": ">= 10.0.0" + } }, - "wildcard": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/wildcard/-/wildcard-2.0.0.tgz", - "integrity": "sha512-JcKqAHLPxcdb9KM49dufGXn2x3ssnfjbcaQdLlfZsL9rH9wgDQjUtDxbo8NE0F6SFvydeu1VhZe7hZuHsB2/pw==", + "node_modules/wordwrap": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-1.0.0.tgz", + "integrity": "sha512-gvVzJFlPycKc5dZN4yPkP8w7Dc37BtP1yczEneOb4uq34pXZcvrtRTmWV8W+Ume+XCxKgbjM+nevkyFPMybd4Q==", "dev": true }, - "wrap-ansi": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz", - "integrity": "sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==", + "node_modules/wrap-ansi": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", "dev": true, - "requires": { + "dependencies": { "ansi-styles": "^4.0.0", "string-width": "^4.1.0", "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" } }, - "y18n": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.3.tgz", - "integrity": "sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ==", + "node_modules/wrap-ansi-cjs": { + "name": "wrap-ansi", + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } + }, + "node_modules/wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==", "dev": true }, - "yallist": { + "node_modules/ws": { + "version": "8.16.0", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.16.0.tgz", + "integrity": "sha512-HS0c//TP7Ina87TfiPUz1rQzMhHrl/SG2guqRcTOIUYD2q8uhUdNHZYJUaQ8aTGPzCh+c6oawMKW35nFl1dxyQ==", + "dev": true, + "engines": { + "node": ">=10.0.0" + }, + "peerDependencies": { + "bufferutil": "^4.0.1", + "utf-8-validate": ">=5.0.2" + }, + "peerDependenciesMeta": { + "bufferutil": { + "optional": true + }, + "utf-8-validate": { + "optional": true + } + } + }, + "node_modules/y18n": { + "version": "5.0.8", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", + "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", + "dev": true, + "engines": { + "node": ">=10" + } + }, + "node_modules/yallist": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", "dev": true }, - "yargs": { - "version": "15.4.1", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-15.4.1.tgz", - "integrity": "sha512-aePbxDmcYW++PaqBsJ+HYUFwCdv4LVvdnhBy78E57PIor8/OVvhMrADFFEDh8DHDFRv/O9i3lPhsENjO7QX0+A==", + "node_modules/yaml": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.4.1.tgz", + "integrity": "sha512-pIXzoImaqmfOrL7teGUBt/T7ZDnyeGBWyXQBvOVhLkWLN37GXv8NMLK406UY6dS51JfcQHsmcW5cJ441bHg6Lg==", + "dev": true, + "bin": { + "yaml": "bin.mjs" + }, + "engines": { + "node": ">= 14" + } + }, + "node_modules/yargs": { + "version": "17.7.2", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.7.2.tgz", + "integrity": "sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==", "dev": true, - "requires": { - "cliui": "^6.0.0", - "decamelize": "^1.2.0", - "find-up": "^4.1.0", - "get-caller-file": "^2.0.1", + "dependencies": { + "cliui": "^8.0.1", + "escalade": "^3.1.1", + "get-caller-file": "^2.0.5", "require-directory": "^2.1.1", - "require-main-filename": "^2.0.0", - "set-blocking": "^2.0.0", - "string-width": "^4.2.0", - "which-module": "^2.0.0", - "y18n": "^4.0.0", - "yargs-parser": "^18.1.2" + "string-width": "^4.2.3", + "y18n": "^5.0.5", + "yargs-parser": "^21.1.1" + }, + "engines": { + "node": ">=12" } }, - "yargs-parser": { - "version": "18.1.3", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-18.1.3.tgz", - "integrity": "sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==", + "node_modules/yargs-parser": { + "version": "21.1.1", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz", + "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==", "dev": true, - "requires": { - "camelcase": "^5.0.0", - "decamelize": "^1.2.0" + "engines": { + "node": ">=12" } } } diff --git a/package.json b/package.json index 14384acf..bcf00735 100644 --- a/package.json +++ b/package.json @@ -1,35 +1,50 @@ { - "name": "DjangoConUS", + "name": "durham.djangocon.us", "version": "1.0.0", - "description": "DjangoCon US Website", - "devDependencies": { - "all-contributors-cli": "^6.20.0", - "css-loader": "^6.7.1", - "mini-css-extract-plugin": "^2.6.1", - "resolve-url-loader": "^5.0.0", - "sass": "^1.62.1", - "sass-loader": "^13.0.2", - "webpack": "^5.80.0", - "webpack-cli": "^4.10.0" - }, + "description": "DjangoCon.us conference website built on 11ty", + "main": "index.js", "scripts": { - "add": "all-contributors add", - "generate": "all-contributors generate", - "build": "webpack", - "css": "sass _src/scss/main.scss:static/main.css --no-source-map", - "watch-jk-dev": "bundle exec jekyll serve --watch -l -H 0.0.0.0" + "start": "npm run serve", + "watch": "concurrently -c auto npm:css:watch npm:11ty:watch", + "serve": "concurrently -c auto npm:css:watch npm:11ty:serve", + "build": "npm run css:build && npm run 11ty:build", + "debug": "cross-env DEBUG=Eleventy* npm run build", + "clean": "node ./scripts/cleanDist.js", + "11ty:watch": "cross-env NODE_ENV=development eleventy --watch --incremental", + "11ty:serve": "cross-env NODE_ENV=development eleventy --serve --incremental", + "11ty:build": "cross-env NODE_ENV=production eleventy", + "css:watch": "postcss src/assets/css/main.css -o dist/assets/css/main.css --watch", + "css:build": "NODE_ENV=production postcss src/assets/css/main.css -o dist/assets/css/main.css" }, "repository": { "type": "git", - "url": "https://github.com/djangocon/2023.djangocon.us" + "url": "git+ssh://git@github.com/djangocon/durham.djangocon.us.git" }, + "keywords": [ + "django", + "djangocon", + "conference" + ], "author": "DEFNA", - "license": "MIT", - "private": true, - "dependencies": { - "foundation-sites": "^6.7.5", - "hamburgers": "^1.2.1", - "jquery": "^3.6.0", - "motion-ui": "^2.0.4" + "bugs": { + "url": "https://github.com/djangocon/durham.djangocon.us/issues" + }, + "homepage": "https://github.com/djangocon/durham.djangocon.us#README", + "devDependencies": { + "@11ty/eleventy": "^2.0.1", + "@11ty/eleventy-img": "^4.0.2", + "@tailwindcss/container-queries": "^0.1.1", + "@tailwindcss/typography": "^0.5.10", + "autoprefixer": "^10.4.18", + "concurrently": "^8.2.2", + "cross-env": "^7.0.3", + "cssnano": "^6.1.0", + "gray-matter": "^4.0.3", + "markdown-it": "^14.0.0", + "postcss": "^8.4.35", + "postcss-cli": "^11.0.0", + "postcss-import": "^16.0.1", + "tailwindcss": "^3.4.1", + "yaml": "^2.4.1" } } diff --git a/postcss.config.js b/postcss.config.js new file mode 100644 index 00000000..4f22c7d7 --- /dev/null +++ b/postcss.config.js @@ -0,0 +1,8 @@ +module.exports = { + plugins: { + 'postcss-import': {}, + tailwindcss: {}, + autoprefixer: {}, + ...(process.env.NODE_ENV === 'production' ? { cssnano: {} } : {}) + } +} \ No newline at end of file diff --git a/scripts/cleanDist.js b/scripts/cleanDist.js new file mode 100644 index 00000000..5aed31a5 --- /dev/null +++ b/scripts/cleanDist.js @@ -0,0 +1,8 @@ +const fs = require('fs'); + +if (fs.existsSync('dist')) { + fs.rmSync('dist', { recursive: true, force: true }); + console.log('Cleared dist folder'); +} else { + console.log('dist folder does not exist'); +} diff --git a/scripts/cleanSponsorData.js b/scripts/cleanSponsorData.js new file mode 100644 index 00000000..b44d2d7a --- /dev/null +++ b/scripts/cleanSponsorData.js @@ -0,0 +1,54 @@ +const fs = require('fs'); +const path = require('path'); +const glob = require('glob'); +const matter = require('gray-matter'); + +// Get all Markdown files in the src/_content/sponsors/ folder +const files = glob.sync('src/_content/sponsors/*.md'); + +files.forEach(file => { + // Read the file and parse the front matter + const content = fs.readFileSync(file, 'utf8'); + const parsed = matter(content); + + delete parsed.data.layout; + + // Move the description field into the content area + parsed.content = parsed.data.description + '\n\n\n' + parsed.content; + delete parsed.data.description; + + // Rename logo to filename and logo_orientation to orientation + // Place both under a logo attribute + parsed.data.logo = { + filename: parsed.data.logo, + orientation: parsed.data.logo_orientation + }; + delete parsed.data.logo_orientation; + + // Move url_target and url_friendly under a url attribute + // Remove the url_ prefix + parsed.data.url = { + target: parsed.data.url_target, + friendly: parsed.data.url_friendly + }; + delete parsed.data.url_target; + delete parsed.data.url_friendly; + + // If there is a hiring or hiring_url attribute + // Change hiring to active and hiring_url to url + // Place both under a hiring attribute + if (parsed.data.hiring || parsed.data.hiring_url) { + parsed.data.hiring = {}; + if (parsed.data.hiring !== undefined) { + parsed.data.hiring.active = parsed.data.hiring; + } + if (parsed.data.hiring_url !== undefined) { + parsed.data.hiring.url = parsed.data.hiring_url; + } + delete parsed.data.hiring_url; + } + + // Stringify the front matter and write the file back + const newContent = matter.stringify(parsed.content, parsed.data, { indent: 4 }); + fs.writeFileSync(file, newContent, 'utf8'); +}); diff --git a/scripts/moveSocial.js b/scripts/moveSocial.js new file mode 100644 index 00000000..6f56aa37 --- /dev/null +++ b/scripts/moveSocial.js @@ -0,0 +1,47 @@ +/* + Move Social + =========== + + This script moves the twitter, website, mastodon, and + github entries under a social variable for all people. + + Requires the following Node packages: + - gray-matter + - yaml + */ + +const fs = require('fs'); +const path = require('path'); +const matter = require('gray-matter'); +const stringify = require('yaml').stringify; + +const dirs = [ + 'src/_content/organizers', + 'src/_content/presenters' +]; + +dirs.forEach(dir => { + fs.readdirSync(dir).forEach(file => { + if (path.extname(file) === '.md') { + const filePath = path.join(dir, file); + const fileContent = fs.readFileSync(filePath, 'utf8'); + const parsed = matter(fileContent); + + // Move twitter, website, mastodon, and github entries under a social variable + parsed.data.social = { + twitter: parsed.data.twitter, + website: parsed.data.website, + mastodon: parsed.data.mastodon, + github: parsed.data.github, + }; + delete parsed.data.twitter; + delete parsed.data.website; + delete parsed.data.mastodon; + delete parsed.data.github; + + // Write the updated metadata and the original content back to the file + const newContent = '---\n' + stringify(parsed.data, { indent: 4 }) + '---\n' + parsed.content; + fs.writeFileSync(filePath, newContent, 'utf8'); + } + }); +}); diff --git a/src/404.html b/src/404.html new file mode 100644 index 00000000..964fce0c --- /dev/null +++ b/src/404.html @@ -0,0 +1,19 @@ +--- +layout: default + +title: Page Not Found +description: > + The page you're looking for doesn't exist. +--- + +
    +
    +
    +

    404: Page Not Found

    + A majestic pony flying upwards over a rainbow. Just under the rainbow there words 'Oops' are written in a cartoonish style. +
    +
    +
    diff --git a/static/img/organizers/afi.jpeg b/src/_content/organizers/abigail-afi-gbadago.jpeg similarity index 100% rename from static/img/organizers/afi.jpeg rename to src/_content/organizers/abigail-afi-gbadago.jpeg diff --git a/src/_content/organizers/abigail-afi-gbadago.md b/src/_content/organizers/abigail-afi-gbadago.md new file mode 100644 index 00000000..e96cdc6f --- /dev/null +++ b/src/_content/organizers/abigail-afi-gbadago.md @@ -0,0 +1,8 @@ +--- +name: Abigail Afi Gbadago +photo: abigail-afi-gbadago.jpeg +role: Program Committee, Website Committee +social: + twitter: afi_maame + github: AfiMaameDufie +--- diff --git a/static/img/organizers/adam.jpg b/src/_content/organizers/adam-fast.jpg similarity index 100% rename from static/img/organizers/adam.jpg rename to src/_content/organizers/adam-fast.jpg diff --git a/src/_content/organizers/adam-fast.md b/src/_content/organizers/adam-fast.md new file mode 100644 index 00000000..3376450c --- /dev/null +++ b/src/_content/organizers/adam-fast.md @@ -0,0 +1,9 @@ +--- +name: Adam Fast +photo: adam-fast.jpg +role: A/V Chair, Code of Conduct team +social: + twitter: adamcanfly + website: http://www.adamfast.com/ + github: adamfast +--- diff --git a/static/img/organizers/aditya.jpg b/src/_content/organizers/aditya-dhoot.jpg similarity index 100% rename from static/img/organizers/aditya.jpg rename to src/_content/organizers/aditya-dhoot.jpg diff --git a/src/_content/organizers/aditya-dhoot.md b/src/_content/organizers/aditya-dhoot.md new file mode 100644 index 00000000..f85087fd --- /dev/null +++ b/src/_content/organizers/aditya-dhoot.md @@ -0,0 +1,10 @@ +--- +name: Aditya Dhoot +photo: aditya-dhoot.jpg +role: Program team +social: + twitter: null + website: null + mastodon: null + github: adityadhoot +--- diff --git a/static/img/organizers/adrienne.jpg b/src/_content/organizers/adrienne-franke.jpg similarity index 100% rename from static/img/organizers/adrienne.jpg rename to src/_content/organizers/adrienne-franke.jpg diff --git a/src/_content/organizers/adrienne-franke.md b/src/_content/organizers/adrienne-franke.md new file mode 100644 index 00000000..d230d75b --- /dev/null +++ b/src/_content/organizers/adrienne-franke.md @@ -0,0 +1,10 @@ +--- +name: Adrienne Franke +photo: adrienne-franke.jpg +role: Code of Conduct co-chair +social: + twitter: adriennefranke + website: https://adriennefranke.com + mastodon: https://mastodon.world/@adriennefranke + github: adriennefranke +--- diff --git a/static/img/organizers/benedict.jpg b/src/_content/organizers/benedict-kofi-amofah.jpg similarity index 100% rename from static/img/organizers/benedict.jpg rename to src/_content/organizers/benedict-kofi-amofah.jpg diff --git a/src/_content/organizers/benedict-kofi-amofah.md b/src/_content/organizers/benedict-kofi-amofah.md new file mode 100644 index 00000000..ac2de9a4 --- /dev/null +++ b/src/_content/organizers/benedict-kofi-amofah.md @@ -0,0 +1,10 @@ +--- +name: Benedict kofi Amofah +photo: benedict-kofi-amofah.jpg +role: Opportunity Grants Team, Online Conference Team, Communication Team +social: + twitter: iamDREAMO + website: null + mastodon: https://mastodon.world/@iamDREAMO + github: iamDREAMO-BenedictKofiAmofah +--- diff --git a/static/img/organizers/carol-ganz.jpg b/src/_content/organizers/carol-ganz.jpg similarity index 100% rename from static/img/organizers/carol-ganz.jpg rename to src/_content/organizers/carol-ganz.jpg diff --git a/src/_content/organizers/carol-ganz.md b/src/_content/organizers/carol-ganz.md new file mode 100644 index 00000000..e4601b6a --- /dev/null +++ b/src/_content/organizers/carol-ganz.md @@ -0,0 +1,9 @@ +--- +name: Carol Ganz +photo: carol-ganz.jpg +role: DEFNA Director, Opportunity Grants Chair, Code of Conduct team +social: + twitter: crlganz + website: https://www.sixfeetup.com/ + github: "" +--- diff --git a/src/_content/organizers/catherine-holmes.md b/src/_content/organizers/catherine-holmes.md new file mode 100644 index 00000000..f291656e --- /dev/null +++ b/src/_content/organizers/catherine-holmes.md @@ -0,0 +1,9 @@ +--- +name: Catherine Holmes +photo: catherine-holmes.png +role: Sponsors & Tickets Chair, Code of Conduct team +social: + twitter: "" + website: null + github: "" +--- diff --git a/static/img/organizers/catherine.png b/src/_content/organizers/catherine-holmes.png similarity index 100% rename from static/img/organizers/catherine.png rename to src/_content/organizers/catherine-holmes.png diff --git a/static/img/organizers/davidfischer.jpg b/src/_content/organizers/david-fischer.jpg similarity index 100% rename from static/img/organizers/davidfischer.jpg rename to src/_content/organizers/david-fischer.jpg diff --git a/src/_content/organizers/david-fischer.md b/src/_content/organizers/david-fischer.md new file mode 100644 index 00000000..f22ea649 --- /dev/null +++ b/src/_content/organizers/david-fischer.md @@ -0,0 +1,8 @@ +--- +hidden: true +name: David Fischer +photo: david-fischer.jpg +role: Onsite Coordinator +social: + github: davidfischer +--- diff --git a/static/img/organizers/dawn.jpg b/src/_content/organizers/dawn-wages.jpg similarity index 100% rename from static/img/organizers/dawn.jpg rename to src/_content/organizers/dawn-wages.jpg diff --git a/src/_content/organizers/dawn-wages.md b/src/_content/organizers/dawn-wages.md new file mode 100644 index 00000000..dce52703 --- /dev/null +++ b/src/_content/organizers/dawn-wages.md @@ -0,0 +1,10 @@ +--- +name: Dawn Wages +photo: dawn-wages.jpg +role: Sponsors Chair, Code of Conduct team +social: + twitter: dawnwagessays + website: http://www.dawnwages.info/ + mastodon: https://mastodon.online/@fly00gemini8712 + github: dawnwages +--- diff --git a/static/img/organizers/drew.jpg b/src/_content/organizers/drew-winstel.jpg similarity index 100% rename from static/img/organizers/drew.jpg rename to src/_content/organizers/drew-winstel.jpg diff --git a/src/_content/organizers/drew-winstel.md b/src/_content/organizers/drew-winstel.md new file mode 100644 index 00000000..a415d297 --- /dev/null +++ b/src/_content/organizers/drew-winstel.md @@ -0,0 +1,11 @@ +--- +name: Drew Winstel +photo: drew-winstel.jpg +role: DEFNA Vice President, Program Co-Chair, Opportunity Grants team, Code of + Conduct team +social: + twitter: "" + website: https://winstel.dev/ + mastodon: https://mastodon.cloud/@drewbrew + github: drewbrew +--- diff --git a/src/_content/organizers/emmanuel-owusu.md b/src/_content/organizers/emmanuel-owusu.md new file mode 100644 index 00000000..7cfccdb2 --- /dev/null +++ b/src/_content/organizers/emmanuel-owusu.md @@ -0,0 +1,10 @@ +--- +name: Emmanuel Owusu +photo: emmanuel-owusu.png +role: Community Team, Opportunity Grants Team +social: + twitter: owusu_e1 + website: null + mastodon: "" + github: eowusu14 +--- diff --git a/static/img/organizers/owusu.png b/src/_content/organizers/emmanuel-owusu.png similarity index 100% rename from static/img/organizers/owusu.png rename to src/_content/organizers/emmanuel-owusu.png diff --git a/static/img/organizers/erin-mullaney.jpg b/src/_content/organizers/erin-mullaney.jpg similarity index 100% rename from static/img/organizers/erin-mullaney.jpg rename to src/_content/organizers/erin-mullaney.jpg diff --git a/src/_content/organizers/erin-mullaney.md b/src/_content/organizers/erin-mullaney.md new file mode 100644 index 00000000..a32bde80 --- /dev/null +++ b/src/_content/organizers/erin-mullaney.md @@ -0,0 +1,10 @@ +--- +name: Erin Mullaney +photo: erin-mullaney.jpg +role: Public Health chair +social: + twitter: _erin_rachel + website: null + mastodon: https://fosstodon.org/@erinrachel + github: emullaney +--- diff --git a/static/img/organizers/ezra.jpg b/src/_content/organizers/ezra-yendau.jpg similarity index 100% rename from static/img/organizers/ezra.jpg rename to src/_content/organizers/ezra-yendau.jpg diff --git a/src/_content/organizers/ezra-yendau.md b/src/_content/organizers/ezra-yendau.md new file mode 100644 index 00000000..ba163c8f --- /dev/null +++ b/src/_content/organizers/ezra-yendau.md @@ -0,0 +1,10 @@ +--- +name: Ezra Yendau +photo: ezra-yendau.jpg +role: Opportunity Grants Team, Social Team +social: + twitter: ezra_yendau + website: null + mastodon: https://mastodon.world/@ezra_yendau + github: Ezi-code +--- diff --git a/src/_content/organizers/hama-barhamou.md b/src/_content/organizers/hama-barhamou.md new file mode 100644 index 00000000..40e0788b --- /dev/null +++ b/src/_content/organizers/hama-barhamou.md @@ -0,0 +1,9 @@ +--- +name: ISSAKA HAMA Barhamou +photo: hama-barhamou.png +role: Website team +social: + twitter: hama_barhamou + website: https://hamabarhamou.github.io/monCV/ + github: HamaBarhamou +--- diff --git a/static/img/organizers/barhamou.png b/src/_content/organizers/hama-barhamou.png similarity index 100% rename from static/img/organizers/barhamou.png rename to src/_content/organizers/hama-barhamou.png diff --git a/src/_content/organizers/hope-adoli.md b/src/_content/organizers/hope-adoli.md new file mode 100644 index 00000000..727872dd --- /dev/null +++ b/src/_content/organizers/hope-adoli.md @@ -0,0 +1,9 @@ +--- +name: Hope Adoli +photo: hope-adoli.png +role: Website, Social media/communications, Swags +social: + twitter: uxkafui + website: https://www.uxkafui.co/ + github: hopeadoli +--- diff --git a/static/img/organizers/hope-adoli.png b/src/_content/organizers/hope-adoli.png similarity index 100% rename from static/img/organizers/hope-adoli.png rename to src/_content/organizers/hope-adoli.png diff --git a/static/img/organizers/jason-judkins.jpg b/src/_content/organizers/jason-judkins.jpg similarity index 100% rename from static/img/organizers/jason-judkins.jpg rename to src/_content/organizers/jason-judkins.jpg diff --git a/src/_content/organizers/jason-judkins.md b/src/_content/organizers/jason-judkins.md new file mode 100644 index 00000000..319c2b79 --- /dev/null +++ b/src/_content/organizers/jason-judkins.md @@ -0,0 +1,9 @@ +--- +name: Jason Judkins +photo: jason-judkins.jpg +role: Marketing Chair, Community Chair, Social Events co-chair +social: + twitter: jjudkins77 + mastodon: https://fosstodon.org/@jjudkins + github: jcjudkins +--- diff --git a/static/img/organizers/jeff.jpg b/src/_content/organizers/jeff-triplett.jpg similarity index 100% rename from static/img/organizers/jeff.jpg rename to src/_content/organizers/jeff-triplett.jpg diff --git a/src/_content/organizers/jeff-triplett.md b/src/_content/organizers/jeff-triplett.md new file mode 100644 index 00000000..eb518e9b --- /dev/null +++ b/src/_content/organizers/jeff-triplett.md @@ -0,0 +1,10 @@ +--- +name: Jeff Triplett +photo: jeff-triplett.jpg +role: DEFNA Cofounder, Code of Conduct team +social: + twitter: webology + website: https://jefftriplett.com/ + mastodon: https://mastodon.social/@webology + github: jefftriplett +--- diff --git a/static/img/organizers/jennifer-myers.jpg b/src/_content/organizers/jennifer-myers.jpg similarity index 100% rename from static/img/organizers/jennifer-myers.jpg rename to src/_content/organizers/jennifer-myers.jpg diff --git a/src/_content/organizers/jennifer-myers.md b/src/_content/organizers/jennifer-myers.md new file mode 100644 index 00000000..e1290357 --- /dev/null +++ b/src/_content/organizers/jennifer-myers.md @@ -0,0 +1,9 @@ +--- +name: Jennifer Myers +photo: jennifer-myers.jpg +role: DEFNA Treasurer +social: + twitter: "" + website: https://www.sixfeetup.com/ + github: "" +--- diff --git a/static/img/organizers/jorge.jpg b/src/_content/organizers/jorge-gimeno.jpg similarity index 100% rename from static/img/organizers/jorge.jpg rename to src/_content/organizers/jorge-gimeno.jpg diff --git a/src/_content/organizers/jorge-gimeno.md b/src/_content/organizers/jorge-gimeno.md new file mode 100644 index 00000000..97c53a49 --- /dev/null +++ b/src/_content/organizers/jorge-gimeno.md @@ -0,0 +1,9 @@ +--- +name: Jorge Gimeno +photo: jorge-gimeno.jpg +role: Onsite Coordinator, Code of Conduct team +social: + twitter: JorgeGimeno8 + website: null + github: jlgimeno +--- diff --git a/static/img/organizers/Julius.jpg b/src/_content/organizers/julius-boakye.jpg similarity index 100% rename from static/img/organizers/Julius.jpg rename to src/_content/organizers/julius-boakye.jpg diff --git a/src/_content/organizers/julius-boakye.md b/src/_content/organizers/julius-boakye.md new file mode 100644 index 00000000..27d3f1ea --- /dev/null +++ b/src/_content/organizers/julius-boakye.md @@ -0,0 +1,10 @@ +--- +name: Julius Boakye +photo: julius-boakye.jpg +role: Opportunity Grants co-chair +social: + twitter: KayTechie + website: https://boakye.pythonanywhere.com + mastodon: https://mastodon.social/deck/@JuliTech + github: Darkbeast-glitch +--- diff --git a/static/img/organizers/kati.jpg b/src/_content/organizers/kati-michel.jpg similarity index 100% rename from static/img/organizers/kati.jpg rename to src/_content/organizers/kati-michel.jpg diff --git a/src/_content/organizers/kati-michel.md b/src/_content/organizers/kati-michel.md new file mode 100644 index 00000000..f81b031b --- /dev/null +++ b/src/_content/organizers/kati-michel.md @@ -0,0 +1,10 @@ +--- +name: Katherine "Kati" Michel +photo: kati-michel.jpg +role: DEFNA Director +social: + twitter: KatiMichel + website: http://katherinemichel.github.io/ + mastodon: https://fosstodon.org/@kati + github: KatherineMichel +--- diff --git a/static/img/organizers/katialira.jpg b/src/_content/organizers/katialira.jpg similarity index 100% rename from static/img/organizers/katialira.jpg rename to src/_content/organizers/katialira.jpg diff --git a/static/img/organizers/kojo.jpg b/src/_content/organizers/kojo-idrissa.jpg similarity index 100% rename from static/img/organizers/kojo.jpg rename to src/_content/organizers/kojo-idrissa.jpg diff --git a/src/_content/organizers/kojo-idrissa.md b/src/_content/organizers/kojo-idrissa.md new file mode 100644 index 00000000..7023a387 --- /dev/null +++ b/src/_content/organizers/kojo-idrissa.md @@ -0,0 +1,10 @@ +--- +hidden: false +name: Kojo Idrissa +photo: kojo-idrissa.jpg +role: Orientation, Lightning Talks & Sprints Chair +social: + twitter: KojoIdrissa + website: https://kojoidrissa.com/ + github: kojoidrissa +--- diff --git a/src/_content/organizers/michael-clark.md b/src/_content/organizers/michael-clark.md new file mode 100644 index 00000000..8982b6ba --- /dev/null +++ b/src/_content/organizers/michael-clark.md @@ -0,0 +1,10 @@ +--- +name: Michael Clark +photo: michael-clark.png +role: Code of Conduct Committee Co-chair +social: + twitter: "" + website: null + mastodon: https://mastodon.social/@mdc + github: mclarknc +--- diff --git a/static/img/organizers/mclark.png b/src/_content/organizers/michael-clark.png similarity index 100% rename from static/img/organizers/mclark.png rename to src/_content/organizers/michael-clark.png diff --git a/static/img/organizers/nicole.jpg b/src/_content/organizers/nicole-dominguez.jpg similarity index 100% rename from static/img/organizers/nicole.jpg rename to src/_content/organizers/nicole-dominguez.jpg diff --git a/src/_content/organizers/nicole-dominguez.md b/src/_content/organizers/nicole-dominguez.md new file mode 100644 index 00000000..43976f9b --- /dev/null +++ b/src/_content/organizers/nicole-dominguez.md @@ -0,0 +1,10 @@ +--- +name: Nicole Dominguez +photo: nicole-dominguez.jpg +role: DEFNA Director, Swag team, Website team +social: + twitter: sodevious + website: https://www.nicoledominguez.com + mastodon: https://fosstodon.org/@sodevious + github: sodevious +--- diff --git a/static/img/organizers/noah.jpg b/src/_content/organizers/noah-alorwu.jpg similarity index 100% rename from static/img/organizers/noah.jpg rename to src/_content/organizers/noah-alorwu.jpg diff --git a/src/_content/organizers/noah-alorwu.md b/src/_content/organizers/noah-alorwu.md new file mode 100644 index 00000000..72472152 --- /dev/null +++ b/src/_content/organizers/noah-alorwu.md @@ -0,0 +1,8 @@ +--- +name: Noah Alorwu +photo: noah-alorwu.jpg +role: Onsite Coordinator, Visa Support +social: + twitter: plasmadray + github: noahalorwu +--- diff --git a/src/_content/organizers/organizers.json b/src/_content/organizers/organizers.json new file mode 100644 index 00000000..5df2e98b --- /dev/null +++ b/src/_content/organizers/organizers.json @@ -0,0 +1,3 @@ +{ + "permalink": false +} diff --git a/static/img/organizers/peter-grandstaff.jpg b/src/_content/organizers/peter-grandstaff.jpg similarity index 100% rename from static/img/organizers/peter-grandstaff.jpg rename to src/_content/organizers/peter-grandstaff.jpg diff --git a/src/_content/organizers/peter-grandstaff.md b/src/_content/organizers/peter-grandstaff.md new file mode 100644 index 00000000..d95197a1 --- /dev/null +++ b/src/_content/organizers/peter-grandstaff.md @@ -0,0 +1,9 @@ +--- +name: Peter Grandstaff +photo: peter-grandstaff.jpg +role: DEFNA President, Conference Chair, Venue Chair +social: + twitter: pgrandstaff + website: https://tworock.io/ + github: petergrand +--- diff --git a/static/img/organizers/rachell-calhoun.jpg b/src/_content/organizers/rachell-calhoun.jpg similarity index 100% rename from static/img/organizers/rachell-calhoun.jpg rename to src/_content/organizers/rachell-calhoun.jpg diff --git a/src/_content/organizers/rachell-calhoun.md b/src/_content/organizers/rachell-calhoun.md new file mode 100644 index 00000000..f82aab23 --- /dev/null +++ b/src/_content/organizers/rachell-calhoun.md @@ -0,0 +1,10 @@ +--- +name: Rachell Calhoun +photo: rachell-calhoun.jpg +role: Volunteer Chair, Sprints Co-chair +social: + twitter: Rachell_Calhoun + website: null + mastodon: https://mastodon.social/@Rachell + github: RachellCalhoun +--- diff --git a/static/img/organizers/tallen.jpg b/src/_content/organizers/tim-allen.jpg similarity index 100% rename from static/img/organizers/tallen.jpg rename to src/_content/organizers/tim-allen.jpg diff --git a/src/_content/organizers/tim-allen.md b/src/_content/organizers/tim-allen.md new file mode 100644 index 00000000..cd7bc45e --- /dev/null +++ b/src/_content/organizers/tim-allen.md @@ -0,0 +1,10 @@ +--- +name: Tim Allen +photo: tim-allen.jpg +role: Social Chair +social: + twitter: FlipperPA + website: https://PyPhilly.org/ + mastodon: https://fosstodon.org/@FlipperPA + github: FlipperPA +--- diff --git a/static/img/organizers/tim-schilling.jpg b/src/_content/organizers/tim-schilling.jpg similarity index 100% rename from static/img/organizers/tim-schilling.jpg rename to src/_content/organizers/tim-schilling.jpg diff --git a/src/_content/organizers/tim-schilling.md b/src/_content/organizers/tim-schilling.md new file mode 100644 index 00000000..d4ef86f5 --- /dev/null +++ b/src/_content/organizers/tim-schilling.md @@ -0,0 +1,10 @@ +--- +name: Tim Schilling +photo: tim-schilling.jpg +role: DEFNA Secretary, Marketing co-chair, Community team, Code of Conduct team +social: + twitter: CodenameTim + website: https://www.better-simple.com/ + mastodon: https://fosstodon.org/@CodenameTim + github: tim-schilling +--- diff --git a/src/_content/organizers/velda-kiara.md b/src/_content/organizers/velda-kiara.md new file mode 100644 index 00000000..db034651 --- /dev/null +++ b/src/_content/organizers/velda-kiara.md @@ -0,0 +1,10 @@ +--- +name: Velda Kiara +photo: velda-kiara.png +role: Code of Conduct Team, Website +social: + twitter: VeldaKiara + website: https://veldakiara.notion.site/veldakiara/Velda-Kiara-46aec24028fd4e8dbdba003097c18b5b + mastodon: https://mastodon.social/@veldakiara + github: VeldaKiara +--- diff --git a/static/img/organizers/velda-kiara.png b/src/_content/organizers/velda-kiara.png similarity index 100% rename from static/img/organizers/velda-kiara.png rename to src/_content/organizers/velda-kiara.png diff --git a/static/img/places/21c-museum.png b/src/_content/places/21c-museum.png similarity index 100% rename from static/img/places/21c-museum.png rename to src/_content/places/21c-museum.png diff --git a/src/_content/places/21c.md b/src/_content/places/21c.md new file mode 100644 index 00000000..7977caab --- /dev/null +++ b/src/_content/places/21c.md @@ -0,0 +1,12 @@ +--- +name: "21C Museum, Hotel, and Restaurant" +hidden: false +photo: "21c-museum.png" +location: "111 Corcoran Street" +distance: "2 blocks (0.1 miles) away" +map: "https://goo.gl/maps/sHmC8kuSBycrRfek8" +website: "https://www.21cmuseumhotels.com/durham/" + +--- + +A boutique hotel with a restaurant and rotating art displays that are open to the public even if you're not staying at the hotel. diff --git a/static/img/places/boxcar.jpg b/src/_content/places/boxcar.jpg similarity index 100% rename from static/img/places/boxcar.jpg rename to src/_content/places/boxcar.jpg diff --git a/src/_content/places/boxcar.md b/src/_content/places/boxcar.md new file mode 100644 index 00000000..c6c7c618 --- /dev/null +++ b/src/_content/places/boxcar.md @@ -0,0 +1,11 @@ +--- +name: "Boxcar Bar & Arcade" +hidden: false +photo: "21c-museum.png" +location: "621 Foster Street" +distance: "5 blocks (0.4 miles) away" +map: "https://goo.gl/maps/1V9XiyibxNzJvs1r6" +website: "https://theboxcarbar.com/durham/" +--- + +A dog-friendly bar and arcade with 70 games, 24+ craft beers on tap, a large outdoor patio, and a Neapolitan-style pizza kitchen. diff --git a/static/img/places/cocoa-cinnamon.jpg b/src/_content/places/cocoa-cinnamon.jpg similarity index 100% rename from static/img/places/cocoa-cinnamon.jpg rename to src/_content/places/cocoa-cinnamon.jpg diff --git a/src/_content/places/cocoa-cinnamon.md b/src/_content/places/cocoa-cinnamon.md new file mode 100644 index 00000000..908be36f --- /dev/null +++ b/src/_content/places/cocoa-cinnamon.md @@ -0,0 +1,12 @@ +--- + +name: "Cocoa Cinnamon Old North Durham" +hidden: false +photo: "cocoa-cinnamon.jpg" +location: "420 W. Geer Street" +distance: "6 blocks (0.5 miles) away" +map: "https://goo.gl/maps/QppXc5ZG5i3ifGMb7" +website: "https://littlewaves.coffee" +description: | + A popular local coffee shop using beans from local roaster Little Waves Coffee Roasters. One of our local organizers recommends that you try the Dr. Durham latte. +--- diff --git a/static/img/places/everlou.jpg b/src/_content/places/everlou.jpg similarity index 100% rename from static/img/places/everlou.jpg rename to src/_content/places/everlou.jpg diff --git a/src/_content/places/everlou.md b/src/_content/places/everlou.md new file mode 100644 index 00000000..a9fe56fc --- /dev/null +++ b/src/_content/places/everlou.md @@ -0,0 +1,11 @@ +--- +name: "EverLou Coffee Company" +hidden: false +photo: "everlou.jpg" +location: "506 N. Mangum St., Suite 102" +distance: "4 blocks (0.3 miles) away" +map: "https://goo.gl/maps/9tZ8CKQp6NXjrN6E6" +website: "https://www.everloucoffee.com/" +--- + +A popular local coffee shop with vegan and gluten free bakery options. One of our local organizers calls it their "personal fave for a good latte." diff --git a/static/img/places/luna-rotisserie.jpg b/src/_content/places/luna-rotisserie.jpg similarity index 100% rename from static/img/places/luna-rotisserie.jpg rename to src/_content/places/luna-rotisserie.jpg diff --git a/src/_content/places/luna-rotisserie.md b/src/_content/places/luna-rotisserie.md new file mode 100644 index 00000000..cda540ca --- /dev/null +++ b/src/_content/places/luna-rotisserie.md @@ -0,0 +1,11 @@ +--- +name: Luna Rotisserie and Empanadas +hidden: false +photo: "luna-rotisserie.jpg" +location: "112 W. Main St" +distance: "1 block (less than 0.1 miles) away" +map: "https://goo.gl/maps/hY9DFxEejfoKwvPc8" +website: "http://www.lunarotisserie.com/" +--- + +Restaurant featuring South American bowls, empanadas, and cocktails with a casual atmosphere and lots of outdoor seating. diff --git a/src/_content/places/neomonde.md b/src/_content/places/neomonde.md new file mode 100644 index 00000000..56f8fd13 --- /dev/null +++ b/src/_content/places/neomonde.md @@ -0,0 +1,11 @@ +--- +name: Neomonde Mediterranean +hidden: false +photo: "neomonde.png" +location: "202 Corcoran St" +distance: "2 blocks (0.1 miles) away" +map: "https://goo.gl/maps/jwbJcR6EAQ3y1zG46" +website: "https://www.neomonde.com/mediterranean-restaurant-durham/" +--- + +Restaurant featuring Mediterranean fare since 1977. Try a pick-four dish and enjoy four different items. diff --git a/static/img/places/neomonde.png b/src/_content/places/neomonde.png similarity index 100% rename from static/img/places/neomonde.png rename to src/_content/places/neomonde.png diff --git a/static/img/places/parlour.jpg b/src/_content/places/parlour.jpg similarity index 100% rename from static/img/places/parlour.jpg rename to src/_content/places/parlour.jpg diff --git a/src/_content/places/parlour.md b/src/_content/places/parlour.md new file mode 100644 index 00000000..2165632d --- /dev/null +++ b/src/_content/places/parlour.md @@ -0,0 +1,11 @@ +--- +name: The Parlour +hidden: false +photo: "parlour.jpg" +location: "117 Market St" +distance: "1 block (less than 0.1 miles) away" +map: "https://goo.gl/maps/URWTyM8VreJMXRhv7" +website: "https://theparlour.co/" +--- + +Hand-made ice cream made from local dairy plus vegan options. diff --git a/static/img/places/placeholder.jpg b/src/_content/places/placeholder.jpg similarity index 100% rename from static/img/places/placeholder.jpg rename to src/_content/places/placeholder.jpg diff --git a/src/_content/places/places.json b/src/_content/places/places.json new file mode 100644 index 00000000..5df2e98b --- /dev/null +++ b/src/_content/places/places.json @@ -0,0 +1,3 @@ +{ + "permalink": false +} diff --git a/src/_content/places/pure-soul.md b/src/_content/places/pure-soul.md new file mode 100644 index 00000000..0f1635b9 --- /dev/null +++ b/src/_content/places/pure-soul.md @@ -0,0 +1,11 @@ +--- +name: Pure Soul +hidden: false +photo: "pure-soul.png" +location: "4125 Durham-Chapell Hill Blvd" +distance: "4.5 miles away" +map: "https://goo.gl/maps/kkAHRkiJzGdoJNHn9" +website: "https://puresoulff.com/" +--- + +100% Vegan Soul Food from a local Black-owned business with lots of outdoor seating diff --git a/static/img/places/pure-soul.png b/src/_content/places/pure-soul.png similarity index 100% rename from static/img/places/pure-soul.png rename to src/_content/places/pure-soul.png diff --git a/src/_content/places/simons-says.md b/src/_content/places/simons-says.md new file mode 100644 index 00000000..8675729e --- /dev/null +++ b/src/_content/places/simons-says.md @@ -0,0 +1,11 @@ +--- +name: Simons Says Dip This +hidden: false +photo: "simons-says.png" +location: "117 W Parrish St" +distance: "3 blocks (0.2 miles) away" +map: "https://goo.gl/maps/jGbY3SfbhT63wK17A" +website: "http://simonssaysdipthis.com/" +--- + +Vanilla soft-serve ice cream (dairy or vegan) with 20 different dip options and countless toppings. diff --git a/static/img/places/simons-says.png b/src/_content/places/simons-says.png similarity index 100% rename from static/img/places/simons-says.png rename to src/_content/places/simons-says.png diff --git a/_drafts/2023-03-01-announcing-call-for-proposals.md b/src/_content/posts/announcing-call-for-proposals.md similarity index 55% rename from _drafts/2023-03-01-announcing-call-for-proposals.md rename to src/_content/posts/announcing-call-for-proposals.md index 51b89f5b..ac708e57 100644 --- a/_drafts/2023-03-01-announcing-call-for-proposals.md +++ b/src/_content/posts/announcing-call-for-proposals.md @@ -1,26 +1,22 @@ --- -author: DjangoCon US Organizers +author: Jason Judkins category: General -date: 2023-03-01 06:00:00 -# TODO: Need image -# image: -layout: post -# TODO: Need image and alt -# post_photo_alt: -# post_photo_url: -title: The Call for Proposals for DjangoCon US 2023 Is Now Open! +date: 2024-03-09 06:00:00 +cover: + url: /assets/img/blog/speaker_cfp.jpg + alt: "Abigail Mesrenyame Dogbe speaking at DjangoCon US 2023" +title: "The Call for Proposals for DjangoCon US 2024 Is Now Open!" --- -We are excited that DjangoCon US 2023 is now open for talk submissions: [call for proposals](https://pretalx.com/djangocon-2023/cfp)! The deadline for submissions is May 15th, 2023 at [6 PM EDT](https://time.is/0600PM_15_May_2023_in_Durham,_United_States?DjangoCon_US_CFP_Closes). +We are excited that DjangoCon US 2024 is now open for talk submissions: [call for proposals](https://pretalx.com/djangocon-us-2024/cfp)! The deadline for submissions is April 24th, 2024 at [Noon EDT](https://time.is/1200PM_24_April_2024_in_Durham,_United_States?DjangoCon_US_CFP_Closes). -We invite you to submit your proposal no matter your background or experience level with Django. Proposals can be from a wide range of topics; non-Django and community topics are welcome. You can look at our [talk schedule](https://2022.djangocon.us/talks/) from last year for reference. + -We fancy first-timers! If you haven’t spoken at a conference or given a tutorial before, this is your invitation to do so. Don’t let the idea that you’re not famous or an expert stop you from submitting. It certainly won’t stop us from selecting your talk or tutorial and it won’t stop the audience from enjoying it! +We invite you to submit your proposal no matter your background or experience level with Django. Proposals can be from a wide range of topics; non-Django and community topics are welcome. You can look at our [talk schedule](https://2023.djangocon.us/talks/) from last year for reference. -{% comment %} -TODO: Update opportunity graph form and remove comments -Plus there are perks! Presenters get free admission to DjangoCon US! Grants to assist with your travel and lodging expenses are available as well. Fill out the [Opportunity Grant](https://docs.google.com/forms/d/1yc1HqqcJwi669vxTTs1daJbTeiNYwqM2h3gIgqbpWVE/viewform) form by May 15th, 2023. Decision notifications will be sent by June 28, 2023. -{% endcomment %} +We fancy first-timers! If you haven’t spoken at a conference or given a tutorial before, this is your invitation to do so. Don’t let the idea that you’re not famous or an expert stop you from submitting. It certainly won’t stop us from selecting your talk or tutorial and it won’t stop the audience from enjoying it! Please contact one of our amazing [speaker mentors](https://2024.djangocon.us/speaking/speaker-resources/) to help you on your way. + +Plus there are perks! Presenters get free admission to DjangoCon US! Grants to assist with your travel and lodging expenses are available as well. Fill out the [Opportunity Grants](https://forms.gle/Pi12J6vFQHq2CSAy5) form by April 24th, 2024. Decision notifications will be sent by June 14, 2024. For more information on talk and tutorial formats, please check out our [speaker information page](https://2024.djangocon.us/speaking/). diff --git a/src/_content/posts/announcing-djangocon-us-2024.md b/src/_content/posts/announcing-djangocon-us-2024.md new file mode 100644 index 00000000..df740b68 --- /dev/null +++ b/src/_content/posts/announcing-djangocon-us-2024.md @@ -0,0 +1,25 @@ +--- +title: Code, test, ship it! DjangoCon US 2024 has been announced! +layout: post + +author: DjangoCon US Organizers +category: General +date: 2024-01-17 05:00:00 +--- + +Hello everyone, we have our dates! September 22nd-27th. + +The conference will have tutorials on Sunday, September 22nd, talks from Monday, September 23rd through Wednesday, September 25th, and sprints on Thursday and Friday, September 26th and 27th, 2024. + +- September 22: Tutorials (Additional fee) +- September 23-25: Talks +- September 26-27: Sprints + +This year, our venue will again be the Durham Convention Center in Durham, NC. + +Please start getting your submissions for talks and tutorials ready. We will be posting updates when our Opportunity Grants and speaking CFP open. +We look forward to seeing everyone for another great year at DjangoCon US! + +Keep in touch on [Twitter/X](https://twitter.com/djangocon) or [Mastodon](https://fosstodon.org/@djangocon) for more announcements along the way! + +DjangoCon US Organizers 🐂 diff --git a/src/_content/posts/benefits-of-speaking-djangocon.md b/src/_content/posts/benefits-of-speaking-djangocon.md new file mode 100644 index 00000000..44c1641d --- /dev/null +++ b/src/_content/posts/benefits-of-speaking-djangocon.md @@ -0,0 +1,41 @@ +--- +author: DjangoCon US Communications Team +category: General +date: 2024-04-04 12:00:00 +layout: post +cover: + url: /assets/img/blog/cfp-announced-2024.png + alt: Speaker presenting at DjangoCon US 2023 in Durham, NC +title: What are the Benefits of Speaking at DjangoCon US? +--- + +The DjangoCon US team would like to make sure you are aware of some of the benefits of giving a talk at DjangoCon US 2024. + +## Benefits you will receive for being a presenter: + +- **FREE! Ticket to DjancoCon US 2024.** + +- **Up to $500 in travel cost reimbursement!** + +- **A professionally produced video of your talk will be published on our YouTube channel.** (You may opt out of this.) + +- **Professional photographer on hand to photograph your talk.** (Also optional.) + +## Still on the fence deciding if you want to give a talk or not? + +- **Building your reputation:** Presenting at DjangoCon US can establish you as an expert in the Django community, raising your profile and building your reputation. +- **Networking:** Speaking at DjangoCon US provides an opportunity to connect with other developers, designers, and enthusiasts in the Django community, allowing you to expand your network and make new connections. +- **Career advancement:** Speaking at DjangoCon US can help you advance your career by demonstrating your knowledge and expertise, which can lead to new job opportunities or promotions. +- **Feedback and learning:** Presenting at DjangoCon US gives you the opportunity to receive feedback from your peers, which helps you improve your skills and knowledge. +- **Giving back to the community:** By sharing your knowledge and experience with others at DjangoCon US, you are contributing to the growth and development of the Django community, which is a rewarding experience in itself. +- **Travel and conference experience:** Speaking at DjangoCon US includes travel to interesting locations, attending the conference to learn from other presenters, and give you a valuable conference experience that broadens your horizons. + +## Need Topic Ideas? + +We've had organizers create lists of talk ideas they'd like to see: +- [Kati's list](https://katherinemichel.github.io/portfolio/djangocon-us-2024-topics-inspiration-list.html) +- [Drew's list](https://winstel.dev/2024/03/01/talk-ideas-for-dcus-24/) + +## All right, you've convinced me. How do I submit? + +Go to the [Speaking page](/speaking/) to see all the details. diff --git a/src/_content/posts/call-for-2024-volunteers.md b/src/_content/posts/call-for-2024-volunteers.md new file mode 100644 index 00000000..53da3e74 --- /dev/null +++ b/src/_content/posts/call-for-2024-volunteers.md @@ -0,0 +1,309 @@ +--- +author: Abigail Afi Gbadago +category: General +date: 2024-04-05 12:00:00-07:00 +layout: post +title: "Call for Volunteers: DjangoCon US 2024" +--- + +Organizing DjangoCon US 2024 has begun! We need organizers to help make DjangoCon US 2024 the best it can be. + +We have some [documentation about the various roles](https://djangocon.github.io/djangocon-us-docs/), but here's a quick overview of the teams at DjangoCon US. + +The DEFNA board will not leave you stranded; we have a lot of documentation to help you on your way, including rough checklists of tasks needed for each team. + +Ideally, all committees will have a chair and co-chair to allow for one or the other to take vacations, handle day job duties, and so forth. This list is by no means comprehensive, but it should hopefully give you an idea of what each committee is responsible for. + +## Conference Leadership + +The conference chair and co-chair lead the conference, including coordinating between teams and making executive decisions (including approaching the DEFNA board when applicable). Expect to be in meetings with the venue and online conference provider, weekly organizer check-ins, monthly reports to the DEFNA board, and lots of questions on Slack. You'll also lead the volunteer kickoff meetings in early 2024 (ideally mid-to-late January) and recruit organizers as you see fit. You'll need to recommend an online conference provider to the DEFNA board (might be part of a sponsorship deal). + +At the conference, you'll be making speeches at the start of each day and the end-of-conference wrap-up in addition to coordinating setup, teardown, and everything in between. + +These two roles have the highest time commitment and the most visibility. If you want to help people get things done and get up on stage, these are the roles for you. + +## Program Committee + +Size: 2-4 + +The program committee is responsible for making sure that the schedule of tutorials and talks is the best it can be. + +### Pre-conference responsibilities + +- Start the call for proposals process (opened in March 2024, closes April 29) +- Coordinate with the Opportunity Grants team to schedule the opening and closing of the CFP +- Publish blog posts announcing the CFP, speaker mentors, and speaker resources +- Recruit keynote speakers (the DEFNA board will offer suggestions, but if you have a message you'd like the keynotes to send, you have lots of latitude here, but keep in mind conference diversity goals) +- Recruit speaker mentors (start with the 2019, 2021, and 2022 reviewers and bring in more as you like) +- Review proposals as they come in for anonymization (ideally, recruit one member of the program committee who will not be reviewing talks to do the anonymization before opening talks for review) +- Recruit talk reviewers (the DEFNA board will send you the 2023 reviewers, but more reviewers are encouraged, especially from diverse backgrounds). There will likely be over 100 submissions, so having more reviewers lessens the load for individual talks +- Decide on any tweaks to the format (Spanish-language talks? Keep the Deep Dive Day? This is your chance to put your mark on the program) +- Review talks +- Once reviews are completed, de-anonymize talks and filter for duplicate speakers, multiple speakers from the same organization, diversity goals, overlapping topics, and more +- Select the best talks (where "best" is extremely subjective; we have documentation on things we look for in good proposals); you're not strictly bound to pick the highest scoring talks, so you have some leeway +- Coordinate with the Opportunity Grants team to send them a list of accepted speakers so they can prioritize them for awards +- Coordinate with the OG team to notify speakers in waves (ideally completed by July 1) +- Build a schedule (ideally by July 15) +- Publish blog posts announcing speakers and keynotes (ideally by August 15) +- Update schedules based on speakers' needs +- Coordinate with the DEFNA board to approve reimbursement requests +- Generate cue sheets for session chairs and speaker mentors +- Review online talks for Code of Conduct compliance +- Recruit backup speakers in case of speakers having to back out (visa issues, illness, etc.) +- Work with the social events team to arrange a speaker appreciation dinner +- Generate spreadsheets in multiple formats to make other teams' lives easier + +### At-conference responsibilities + +- Work with registration desk to make sure that all speakers show up +- Work with session managers (other organizers) to ensure distribution of cue sheets and speaker gifts +- Check with tutorial speakers to make sure they have everything they need + +## Opportunity Grants Committee + +Size: 2 (plus reviewers) + +The OG committee is responsible for obtaining grants from the DSF and PSF and awarding grants to people who will best use them, prioritizing speakers, first time attendees, and people from underrepresented and/or historically disadvantaged groups. + +### Pre-conference responsibilities + +- Start call for grants process (concurrent with CFP) +- Publish blog posts announcing the grant process +- Request grants from the Django Software Foundation and Python Software Foundation (the DEFNA board will help you fill out the forms) +- Recruit grant reviewers (other organizers and DEFNA members are happy to help) +- Review submissions +- Coordinate with the program team about grants to speakers +- Notify grant recipients in waves (concurrent with program notifications) +- Communicate with recipients on how to get reimbursed (we'll have templates) +- Give DEFNA a list of recipients and amounts +- Approve reimbursements as requests come in +- Coordinate with the visa (community) team as needed to approve invitation letter requests +- Write a transparency report giving a high-level overview of how the grants were awarded + +### At-conference responsibilities + +- Answer questions from grant recipients and the DEFNA board + +## Community Team + +Size: 2-4 + +### Pre-conference responsibilities + +- Schedule orientation +- Arrange childcare and lactation room +- Coordinate visa applications +- Improve accessibility of the venue and conference as a whole + +### At-conference responsibilities + +- Post-sign-ups for the lactation room and distribute keys as needed +- Collect receipts for childcare reimbursement + +## Sponsorship Committee + +Size: 2-4 + +The sponsorship committee recruits sponsors which helps offset the cost of running DCUS. + +### Pre-conference responsibilities + +- Create and announce sponsorship prospectus (we have templates, and DEFNA will help with specifics) +- Recruit sponsors +- Coordinate contract signing with DEFNA +- Consider awarding community sponsorships (non-financial) to other non-profit Python conferences and related communities (local Python meetups near the conference will love the exposure) +- Coordinate shipping of sponsor swag for the swag bag +- Lay out sponsor tables (on a venue map) +- Work with sponsor chair/co-chair to handle sponsor shout-outs if needed +- Order banners to go behind the speakers on stage + +### At-conference responsibilities + +- Direct sponsors to their booths/tables and swag +- Ensure that booths are reserved for sponsors who have reserved a booth, and are not open for others +- Field complaints/questions from sponsors + +## Code of Conduct Committee + +Size: 4-6 + +The CoC committee suggests improvements to the CoC and investigates reports. This is the heart of the conference because, without the CoC, we wouldn't have the welcoming environment that we have at DCUS. + +### Pre-conference responsibilities + +- Suggest modifications/improvements to the CoC +- Assist program committee with pre-conference review of recorded online talks + +### At-conference responsibilities + +- Field reports and investigate them, including recommending actions to the DEFNA board +- Follow up on reports, including conversations with both reporters and those who have been reported, and facilitate the appropriate response +- Write a CoC transparency report to recap reports (heavily anonymized) and actions taken + +## Social Events Committee + +Size: 2-3 + +The social events committee is responsible for scheduling the "after-hours" events at DCUS to give people chances to socialize and unwind after a long day of talks. + +### Pre-conference responsibilities + +- Find a venue for the speaker appreciation dinner and coordinate contract signing with DEFNA +- Plan opening reception (if sponsored, this will become a bigger event compared to previous years) +- Plan any other fun events like board game night + +### At-conference responsibilities + +- Work with the venue on any work needed for social events + +## Venue Committee + +Size: 1-2 + +The venue committee is responsible for coordinating plans between the other organizing teams and the venue(s). + +### Pre-conference responsibilities + +- Work with the event venue to select and lay out talk, tutorial, and sprint rooms +- Lay out the extra rooms needed for the conference (lactation room, quiet room, organizers room, speaker green room, lunch/break areas) +- Work with event venue and DEFNA to select catering menus (and providers if we're not contractually obligated to use one) +- Work with the hotel to coordinate room blocks +- Work with the venue to plan logistics (sponsor gear shipping, signage, etc.) +- Allocate reward rooms in coordination with the DEFNA board +- Order supplies for restroom stocking + +### At-conference responsibilities + +- Review room guest list against ticket list to claim reward nights +- Handle any last-minute requests from vendors/sponsors/organizers/etc. +- Notify venue staff of any needs (bathroom cleanliness, meals to accommodate special diets, etc.) + +## Online Committee + +Size: 2-3 + +### During-conference responsibilities +- Increase online engagement during the conference +- Investigate online lightning talks + +## Audio/Video (A/V) Committee + +Size: 2-3 + +The A/V committee is responsible for making everything look good. They handle coordination between the on-site crew, the online streaming platform, and the post-conference processing teams and upload the results to YouTube after the conference. + +### Pre-conference responsibilities + +- Select on-site video production crew +- Select post-conference processing crew +- Coordinate both of the above teams with the online platform +- Work with the venue team to ensure high-speed wired internet access to the on-site video crew +- Transfer pre-recorded talks to the post-conference processing crew and then the online conference provider +- Procure a wide variety of dongles for presenters to hook their laptops up to the projectors +- Procure projectors and screens if the venue doesn't already have them, including one for the green room so speakers can test their setup + +### At-conference responsibilities + +- Help on-site crew set up equipment and ensure streaming works +- Get dongles to the right rooms as needed +- Help keynote speakers get presentation mode working if needed +- Answer lots and lots of questions + +## Swag Committee + +Size: 1-2 + +The swag committee is responsible for everything speakers and attendees take home from the conference (aside from knowledge!). + +### Pre-conference responsibilities + +- Design and order attendee t-shirts (with sponsor logos) +- Design and order swag bags (with sponsor logos) +- Design and order speaker gifts +- Design and order DCUS-branded swag (stickers/magnets/etc.) +- Order masks and COVID tests (if needed) +- Order lanyards, badges, and badge flags + +### At-conference responsibilities + +- Recruit volunteers to stuff swag bags on Sunday afternoon +- Get T-shirts and swag bags to the registration desk +- Get speaker gifts to the program team for distribution + +## Volunteer Committee + +Size: 2 + +The volunteer committee is responsible for cultivating new volunteers, who can become organizers in future years. + +### Pre-conference responsibilities + +- Determine what roles need on-site volunteer support (session chairs, session managers, registration desk, etc.) +- Set up sign-up for on-site volunteers and online volunteers (moderators/cheerleaders) +- Draft announcements for calls for volunteers + +### At-conference responsibilities + +- Tell volunteers where to go +- Give volunteers tools to succeed + +## Communications Committee + +Size: 2-4 + +The communications committee is responsible for getting the word out about DCUS. + +This team manages the various DCUS social network feeds, including Twitter, Mastodon, Bluesky, Instagram, LinkedIn, and more. This team also edits and posts blogs on the DCUS main page and coordinates bulk emails to ticketholders to remind them about the conference as it approaches. + +### Pre-conference responsibilities + +- Publish announcements and reminders on social media, the conference blog, and more (Django News, Python Community News, etc.) +- Send a copy to the Django Software Foundation to get major news events on the Django blog +- Review, edit, and suggest copy for the other teams' announcements +- Tweet. Lots of tweeting. +- Select an "official emoji" for the conference (typically suggested by the design package for the year's website) +- Boost and retweet speakers and organizers talking about the conference +- Schedule tweets announcing talks and events + +### At-conference responsibilities + +- Pay attention to the `#djangocon` topic on social media and mentions to `@djangocon` on various social networks +- Boost speakers and organizers +- Answer questions as they come up +- Run the `#help-desk` channel on the conference attendee slack + +## Website Committee + +Size: 2-3 + +The website committee is responsible for updating the website as the conference transitions through phases (CFP coming soon, CFP open, CFP closed, schedule released, hotel block closed, conference over, etc.), reviewing pull requests, and adding content (e.g. new sponsors). This requires the most coding of any team aside from maybe the program team. + +### Pre-conference responsibilities + +- Update static pages for CFP status +- Update static pages for venue information +- Review pull requests from other teams +- Add sponsors as directed by the sponsorship team + +## Automation Team + +This team is more free-flowing and writes scripts to make teams' lives easier. Responsibilities vary based on the year, and if you have ideas for special projects for the future, have at it! + +## Sprints Team + +Size: 2-4 + +### Pre-conference responsibilities + +- Write blog posts announcing sprints +- Invite people to launch special sessions (e.g. Carlton's ["Getting Started Contributing to Django"](https://2022.djangocon.us/sprints/getting-started-contributing-to-django/)) +- Ensure we have signage and power equipment + +### At-conference responsibilities + +- Coordinate help desk +- Direct people to lunches and breaks + +## Wrap-up + +To sign up for any of the teams (or just say "Put me to work"), send an email to hello@djangocon.us and we'll add you to our organizer Slack instance and invite you to our fortnightly organizer catch-up meetings. We would love to have you! You do not have to have previous organizing experience (although we might prefer it for some of the leadership roles). diff --git a/src/_content/posts/call-for-community-reviewers.md b/src/_content/posts/call-for-community-reviewers.md new file mode 100644 index 00000000..c729a3d6 --- /dev/null +++ b/src/_content/posts/call-for-community-reviewers.md @@ -0,0 +1,30 @@ +--- +layout: post + +title: "Announcing Call for Community Reviewers" + + +author: DjangoCon US Communication Team +category: General +date: 2024-04-08 06:00:00 + +cover: + url: /assets/img/blog/call-for-reviewers-2024.png + alt: "Lacey Henschel speaking at DjangoCon US 2018" +--- + +The [call for proposals for DjangoCon US 2024](/speaking/) +is open, and we would love to have you (yes, you!) help us select our talks and tutorials +this year. We strive to create a schedule that appeals to the wider community, and the best +way for us to do that is by having members of said community vote for the talks you’d like +to see. If you are interested in guiding the 2024 program, this is your chance! + +We welcome reviewers with all levels of experience, including those who are brand +new to the community. You don’t need to be a Django expert, a previous reviewer, +or a frequent DjangoCon US attendee. It takes people of all backgrounds to make +a program that appeals to everyone! + +If you are interested in volunteering as a community reviewer, please email +[program@djangocon.us](mailto:program@djangocon.us). Please note, we can +only grant access to around 30 community reviewers. We will grant access +on a first-come, first-served basis. diff --git a/src/_content/posts/cfp-last-call.md b/src/_content/posts/cfp-last-call.md new file mode 100644 index 00000000..a2567d78 --- /dev/null +++ b/src/_content/posts/cfp-last-call.md @@ -0,0 +1,35 @@ +--- +title: "Don't Miss Out: Last Call for DjangoCon US 2024 Talk Proposals!" +layout: post + +author: DjangoCon US Communication Team +category: General +date: 2024-04-18 06:00:00 + +cover: + url: /assets/img/blog/speaker_cfp.jpg + alt: "Abigail Mesrenyame Dogbe speaking at DjangoCon US 2023" +--- + +Hey Django enthusiasts! + +**UPDATE**: The CFP has been extended to Monday, April 29th at Noon EDT! + +Have you submitted your talk or tutorial for DjangoCon US 2024, in beautiful Durham, North Carolina, USA? + +Time flies, and we're fast approaching the deadline (April 29, 2024 at [12 PM EDT](https://time.is/1200PM_29_Apr_2024_in_New_York?DjangoCon_US_2024_CFP_closes)) for DjangoCon US 2024 [Call for Proposals (CFP)](https://pretalx.com/djangocon-us-2024/cfp). If you've been pondering sharing your Django journey, showcasing your innovative projects, or imparting your expertise to fellow developers, now is the perfect moment to seize the opportunity! + +Here's why you should take action and submit your proposals before the clock runs out: + +- **Share Your Knowledge:** DjangoCon US isn't just a conference; it's a platform for sharing insights, discoveries, and lessons learned. Your unique experiences could be just what someone else needs to overcome a hurdle or spark a new idea. +- **Join the Community:** DjangoCon US isn't just about talks; it's about building connections. By presenting at the conference, you become an integral part of the vibrant Django community, exchanging ideas, and forging new friendships with like-minded developers. +- **Boost Your Profile:** Whether you're a seasoned speaker or a first-time presenter, DjangoCon US offers a valuable opportunity to elevate your profile in the tech industry. Showcase your expertise, gain visibility, and enhance your professional credibility among peers and potential employers. +- **Contribute to Diversity:** DjangoCon US values diversity and inclusion. Your perspective matters, and by sharing your voice, you contribute to creating a more inclusive and representative tech community. + +Submitting a proposal is easy! Just head over to the DjangoCon US website, fill out the submission form, and share your compelling idea with us. Whether it's a deep dive into a technical topic, a case study of your latest project, or a discussion on the future of Django, we want to hear from you. + +Remember, the deadline for CFP submissions is fast approaching, so don't wait until the last minute. Take this opportunity to inspire, educate, and connect with your fellow Django enthusiasts at DjangoCon US 2024! + +See you at the conference! + +If you have questions feel free [to contact us](mailto:hello@djangocon.us). diff --git a/src/_content/posts/early-bird-tickets-on-sale.md b/src/_content/posts/early-bird-tickets-on-sale.md new file mode 100644 index 00000000..ce8ed2a4 --- /dev/null +++ b/src/_content/posts/early-bird-tickets-on-sale.md @@ -0,0 +1,31 @@ +--- +author: DjangoCon US Communication Team +category: General +date: 2024-04-24 06:00:00 +layout: post +cover: + url: /assets/img/blog/early-bird-2024.png + alt: "Early-bird tickets now on sale!" +title: "Early-bird tickets now on sale!" +--- + +## Hey Django fans! 👋 + +Tickets for DjangoCon US 2024 in Durham, NC are now on sale. + +🐂 **[Buy yours today!]({{ site.ticket_link }})** 🐂 + +This year we have limited early-bird pricing for individual tickets and corporate tickets. We lowered Individual ticket prices to make the conference more accessible and more affordable so that anyone paying to attend DjangoCon US out of their own pocket can more easily do so. + +- Early-bird individual: $339 (full price: $499) +- Early-bird corporate: $699 (full price: $799) + +**The early-bird pricing will only be available through the month of May.** Starting June 1st, tickets will be available at their full price. + +Purchasing your tickets early not only saves you money, but it also helps organizers prepare for the conference. Besides the obvious factors of knowing how many meals to order and what size projector screens we'll need, it offsets the early payments made to vendors and gives us confidence to enhance and expand the conference experience. If you're able to commit to attending DjangoCon US early, that's fantastic. If you need more time, don't worry; that works for us too. + +And lastly, if you're ecstatic about the idea of attending DjangoCon US but need financial assistance to do so, our [Opportunity Grant CFP](/about/opportunity-grants/) is open until April 29th. + +We can’t wait to see you in Durham! + +🐂 **[Buy your ticket here!]({{ site.ticket_link }})** 🐂 diff --git a/src/_content/posts/opportunity-grant-last-call.md b/src/_content/posts/opportunity-grant-last-call.md new file mode 100644 index 00000000..1efa742c --- /dev/null +++ b/src/_content/posts/opportunity-grant-last-call.md @@ -0,0 +1,38 @@ +--- +author: DjangoCon US Communication Team +category: General +date: 2024-04-22 06:00:00 +layout: post +cover: + url: /assets/img/blog/og-last-call.jpg + alt: "End of our Opportunity Grants is coming up!" + +title: "Heads Up! End of our Opportunity Grants is coming up!" +--- + +## Hey Django lovers, + +**UPDATE**: The application window has been extended to Monday, April 29th at Noon EDT! + +Here to remind you that the [opportunity grants](https://2024.djangocon.us/opportunity-grants/) will be closing on April 29, 2024 at [12 PM EDT](https://time.is/1200PM_29_Apr_2024_in_New_York?DjangoCon_US_2024_CFP_closes). + +If you haven't already applied, make sure to fill the [opportunity grant application form](https://forms.gle/Pi12J6vFQHq2CSAy5) soon. + + +**What are opportunity grants?** + +They are grants to encourage and facilitate the participation of those who otherwise might not be able to attend the conference. They can be used for conference-related expenses like travel, lodging, etc. + + +**Who will be eligible to receive an opportunity grant?** + +Anyone, anyone who needs financial support attending our conference. + + +**When will I find out whether I’ve received an opportunity grant?** + +You will be notified by **June 14, 2024**. + +If you would like more information on opportunity grants, click [here](https://2024.djangocon.us/opportunity-grants/) to go to the grants information page. + +Happy Scrolling! diff --git a/src/_content/posts/posts.json b/src/_content/posts/posts.json new file mode 100644 index 00000000..24b3fec9 --- /dev/null +++ b/src/_content/posts/posts.json @@ -0,0 +1,4 @@ +{ + "layout": "post", + "permalink": "news/{{ page.fileSlug }}/" +} diff --git a/_presenters/abigail-afi-gbadago.md b/src/_content/presenters/abigail-afi-gbadago.md similarity index 76% rename from _presenters/abigail-afi-gbadago.md rename to src/_content/presenters/abigail-afi-gbadago.md index 1abfb51d..b1cd7193 100644 --- a/_presenters/abigail-afi-gbadago.md +++ b/src/_content/presenters/abigail-afi-gbadago.md @@ -1,14 +1,14 @@ --- company: Django Girls Ghana hidden: false -layout: speaker-template -mastodon: null name: Abigail Afi Gbadago permalink: /presenters/abigail-afi-gbadago/ -photo_url: /static/img/presenters/abigail-gbadago.jpeg +photo: abigail-gbadago.jpeg slug: abigail-afi-gbadago -twitter: afi_maame -website: null +social: + twitter: afi_maame + website: null + mastodon: null --- I am Abigail Afi Gbadago; a software engineer, community builder and technical writer. diff --git a/_presenters/abigail-dogbe.md b/src/_content/presenters/abigail-dogbe.md similarity index 85% rename from _presenters/abigail-dogbe.md rename to src/_content/presenters/abigail-dogbe.md index 35349094..05c1dd00 100644 --- a/_presenters/abigail-dogbe.md +++ b/src/_content/presenters/abigail-dogbe.md @@ -1,15 +1,15 @@ --- -github: mesrenyamedogbe hidden: false -instagram: MesrenyameDogbe -layout: speaker-template -linkedin: abigail-mesrenyame-dogbe name: Abigail Mesrenyame Dogbe permalink: /presenters/abigail-dogbe/ -photo_url: /static/img/blog/Dogbe_Abigail-DSC07499-1.jpg +photo: /assets/img/blog/Dogbe_Abigail-DSC07499-1.jpg slug: abigail-dogbe -twitter: MesrenyameDogbe -website: null +social: + linkedin: abigail-mesrenyame-dogbe + instagram: MesrenyameDogbe + twitter: MesrenyameDogbe + website: null + github: mesrenyamedogbe --- Mesrenyame is an Open Source Community Builder, Programs Manager, and STEM Education advocate from Ghana who loves the power that Open Source can put in people’s hands. She wants to help create more awareness, through community building, advocacy, and research. diff --git a/static/img/presenters/abigail-gbadago.jpeg b/src/_content/presenters/abigail-gbadago.jpg similarity index 100% rename from static/img/presenters/abigail-gbadago.jpeg rename to src/_content/presenters/abigail-gbadago.jpg diff --git a/static/img/presenters/adrienne-franke.jpg b/src/_content/presenters/adrienne-franke.jpg similarity index 100% rename from static/img/presenters/adrienne-franke.jpg rename to src/_content/presenters/adrienne-franke.jpg diff --git a/_presenters/adrienne-franke.md b/src/_content/presenters/adrienne-franke.md similarity index 76% rename from _presenters/adrienne-franke.md rename to src/_content/presenters/adrienne-franke.md index 5d1dc09c..1534843e 100644 --- a/_presenters/adrienne-franke.md +++ b/src/_content/presenters/adrienne-franke.md @@ -1,14 +1,13 @@ --- -github: adriennefranke -layout: speaker-template -mastodon: https://mastodon.world/@adriennefranke name: Adrienne Franke permalink: /presenters/adrienne-franke/ -photo_url: /static/img/organizers/adrienne.jpg +photo: /static/img/organizers/adrienne.jpg slug: adrienne-franke -title: null -twitter: adriennefranke -website: https://adriennefranke.com +social: + twitter: adriennefranke + website: https://adriennefranke.com + mastodon: https://mastodon.world/@adriennefranke + github: adriennefranke --- Adrienne Franke works in the Data Science & Analytics department at [Healthcare Bluebook](https://www.healthcarebluebook.com/), where she leads a team responsible for billions of rows of healthcare provider data. When she's not helping her teammates out or removing roadblocks, she's tinkering with an internal Django Admin app or automating boring work away with Python and SQL. In her free time, Adrienne is one half of the electronic music duo [The Feature](https://thefeaturemusic.bandcamp.com/). She also enjoys making apps using Ruby on Rails for fun, going on trail runs, and hanging out with her cat. diff --git a/static/img/presenters/andrej-baranovskij.png b/src/_content/presenters/andrej-baranovskij.png similarity index 100% rename from static/img/presenters/andrej-baranovskij.png rename to src/_content/presenters/andrej-baranovskij.png diff --git a/static/img/presenters/andrew-godwin.jpg b/src/_content/presenters/andrew-godwin.jpg similarity index 100% rename from static/img/presenters/andrew-godwin.jpg rename to src/_content/presenters/andrew-godwin.jpg diff --git a/_presenters/andrew-knight.md b/src/_content/presenters/andrew-knight.md similarity index 78% rename from _presenters/andrew-knight.md rename to src/_content/presenters/andrew-knight.md index 0cf1d80b..05993e81 100644 --- a/_presenters/andrew-knight.md +++ b/src/_content/presenters/andrew-knight.md @@ -1,13 +1,13 @@ --- -company: '' -github: '' -layout: speaker-template +company: "" name: Andrew Knight permalink: /presenters/andrew-knight/ -photo_url: /static/img/blog/andy_django_profile_zoom_small.jpg +photo: /assets/img/blog/andy_django_profile_zoom_small.jpg slug: andrew-knight -twitter: AutomationPanda -website: https://automationpanda.com/ +social: + twitter: AutomationPanda + website: https://automationpanda.com/ + github: "" --- Andrew Knight, also known as “Pandy,” is the Automation Panda. He’s a software quality champion who loves to help people build better quality software. An avid supporter of open source software, Pandy is a Playwright Ambassador as well as the lead developer for Boa Constrictor, the .NET Screenplay Pattern. On the side, he is writing a book on software testing with Manning Publications. Check out his tech blog at [AutomationPanda.com](https://www.automationpanda.com/), follow him on Twitter at [@AutomationPanda](https://twitter.com/AutomationPanda). diff --git a/static/img/presenters/andrew-mshar.jpeg b/src/_content/presenters/andrew-mshar.jpeg similarity index 100% rename from static/img/presenters/andrew-mshar.jpeg rename to src/_content/presenters/andrew-mshar.jpeg diff --git a/static/img/presenters/benjamin-zags-zagorsky.jpg b/src/_content/presenters/benjamin-zags-zagorsky.jpg similarity index 100% rename from static/img/presenters/benjamin-zags-zagorsky.jpg rename to src/_content/presenters/benjamin-zags-zagorsky.jpg diff --git a/_presenters/benjamin-zags-zagorsky.md b/src/_content/presenters/benjamin-zags-zagorsky.md similarity index 81% rename from _presenters/benjamin-zags-zagorsky.md rename to src/_content/presenters/benjamin-zags-zagorsky.md index d07f388e..1283b2ee 100644 --- a/_presenters/benjamin-zags-zagorsky.md +++ b/src/_content/presenters/benjamin-zags-zagorsky.md @@ -1,15 +1,15 @@ --- company: Zagaran, Inc. hidden: false -layout: speaker-template -mastodon: null name: Benjamin "Zags" Zagorsky permalink: /presenters/benjamin-zags-zagorsky/ -photo_url: /static/img/presenters/benjamin-zags-zagorsky.jpg +photo: benjamin-zags-zagorsky.jpg pronouns: he/him slug: benjamin-zags-zagorsky -twitter: null -website: null +social: + twitter: null + website: null + mastodon: null --- Zags is the co-founder and CTO of [Zagaran, Inc.](https://zagaran.com), a software consulting company. He has led dozens of full-stack software development projects between both the private and public sectors. Zags graduated from Harvard in 2012 with bachelor’s and master’s degrees in Computer Science. He previously worked at Google, mentors for TechStars, and is a published game theorist. diff --git a/static/img/presenters/brent-o-connor.jpg b/src/_content/presenters/brent-o-connor.jpg similarity index 100% rename from static/img/presenters/brent-o-connor.jpg rename to src/_content/presenters/brent-o-connor.jpg diff --git a/static/img/presenters/calvin-hendryx-parker.jpg b/src/_content/presenters/calvin-hendryx-parker.jpg similarity index 100% rename from static/img/presenters/calvin-hendryx-parker.jpg rename to src/_content/presenters/calvin-hendryx-parker.jpg diff --git a/_presenters/calvin-hendryx-parker.md b/src/_content/presenters/calvin-hendryx-parker.md similarity index 92% rename from _presenters/calvin-hendryx-parker.md rename to src/_content/presenters/calvin-hendryx-parker.md index 050ea8f3..9f8668ef 100644 --- a/_presenters/calvin-hendryx-parker.md +++ b/src/_content/presenters/calvin-hendryx-parker.md @@ -1,15 +1,15 @@ --- company: Six Feet Up hidden: false -layout: speaker-template -mastodon: https://fosstodon.org/@calvinhp name: Calvin Hendryx-Parker override_schedule_title: Powering Energy Storage Beyond Excel permalink: /presenters/calvin-hendryx-parker/ -photo_url: /static/img/presenters/calvin-hendryx-parker.jpg +photo: calvin-hendryx-parker.jpg slug: calvin-hendryx-parker -twitter: calvinhp -website: null +social: + twitter: calvinhp + website: null + mastodon: https://fosstodon.org/@calvinhp --- Calvin Hendryx-Parker is the co-founder and CTO of Six Feet Up, a Python and AI consulting company that makes the world a better place by using technology to accelerate the initiatives of companies that do good. Six Feet Up is a top 10 United States Custom Software Development Company according to Clutch.co. diff --git a/static/img/presenters/camila-maia.jpg b/src/_content/presenters/camila-maia.jpg similarity index 100% rename from static/img/presenters/camila-maia.jpg rename to src/_content/presenters/camila-maia.jpg diff --git a/static/img/presenters/carlton-gibson.jpg b/src/_content/presenters/carlton-gibson.jpg similarity index 100% rename from static/img/presenters/carlton-gibson.jpg rename to src/_content/presenters/carlton-gibson.jpg diff --git a/static/img/presenters/carmela-beiro.jpeg b/src/_content/presenters/carmela-beiro.jpeg similarity index 100% rename from static/img/presenters/carmela-beiro.jpeg rename to src/_content/presenters/carmela-beiro.jpeg diff --git a/static/img/presenters/chad-carlson.jpg b/src/_content/presenters/chad-carlson.jpg similarity index 100% rename from static/img/presenters/chad-carlson.jpg rename to src/_content/presenters/chad-carlson.jpg diff --git a/_presenters/chaim-kirby.md b/src/_content/presenters/chaim-kirby.md similarity index 95% rename from _presenters/chaim-kirby.md rename to src/_content/presenters/chaim-kirby.md index 43686b6f..daba5235 100644 --- a/_presenters/chaim-kirby.md +++ b/src/_content/presenters/chaim-kirby.md @@ -1,10 +1,10 @@ --- company: Django Software Foundation hidden: false -layout: speaker-template name: Chaim Kirby permalink: /presenters/chaim-kirby/ slug: chaim-kirby +social: {} --- Chaim Kirby is the President of the Django Software Foundation, an engineering leader with over 20 years experience in the health tech space building complex web applications, and an administrator of a python focused slack with over 40,000 registered users. Chaim is currently Head of Engineering at Budgie-Health. He's been working with Django since v1.1 and has been a community participant since 2014. diff --git a/static/img/presenters/charlotte-mays.jpeg b/src/_content/presenters/charlotte-mays.jpeg similarity index 100% rename from static/img/presenters/charlotte-mays.jpeg rename to src/_content/presenters/charlotte-mays.jpeg diff --git a/_presenters/charlotte-mays.md b/src/_content/presenters/charlotte-mays.md similarity index 71% rename from _presenters/charlotte-mays.md rename to src/_content/presenters/charlotte-mays.md index 514e60db..aa5ba7d0 100644 --- a/_presenters/charlotte-mays.md +++ b/src/_content/presenters/charlotte-mays.md @@ -1,15 +1,15 @@ --- company: None currently hidden: false -layout: speaker-template -mastodon: https://hachyderm.io/@charlotte name: Charlotte Mays permalink: /presenters/charlotte-mays/ -photo_url: /static/img/presenters/charlotte-mays.jpeg +photo: charlotte-mays.jpeg pronouns: she/her slug: charlotte-mays -twitter: null -website: null +social: + twitter: null + website: null + mastodon: https://hachyderm.io/@charlotte --- Charlotte has worked with Django for several different companies, and loves the ecosystem and community that goes with it. When not writing code, she can often be found making things out of yarn or flying small airplanes. diff --git a/static/img/presenters/cheuk-ting-ho.jpeg b/src/_content/presenters/cheuk-ting-ho.jpeg similarity index 100% rename from static/img/presenters/cheuk-ting-ho.jpeg rename to src/_content/presenters/cheuk-ting-ho.jpeg diff --git a/_presenters/cheuk-ting-ho.md b/src/_content/presenters/cheuk-ting-ho.md similarity index 86% rename from _presenters/cheuk-ting-ho.md rename to src/_content/presenters/cheuk-ting-ho.md index d9ef681d..3453edfd 100644 --- a/_presenters/cheuk-ting-ho.md +++ b/src/_content/presenters/cheuk-ting-ho.md @@ -1,15 +1,15 @@ --- company: Anaconda hidden: false -layout: speaker-template -mastodon: https://fosstodon.org/@cheukting_ho name: Cheuk Ting Ho permalink: /presenters/cheuk-ting-ho/ -photo_url: /static/img/presenters/cheuk-ting-ho.jpeg +photo: cheuk-ting-ho.jpeg pronouns: she/her slug: cheuk-ting-ho -twitter: cheukting_ho -website: null +social: + twitter: cheukting_ho + website: null + mastodon: https://fosstodon.org/@cheukting_ho --- Before working in Developer Relations, Cheuk has been a Data Scientist in various companies which demands high numerical and programmatical skills, especially in Python. To follow her passion for the tech community, Cheuk is now the Developer Advocate at Anaconda. Cheuk also contributes to multiple Open Source libraries like Hypothesis and Pandas. diff --git a/static/img/presenters/chris-may.jpeg b/src/_content/presenters/chris-may.jpeg similarity index 100% rename from static/img/presenters/chris-may.jpeg rename to src/_content/presenters/chris-may.jpeg diff --git a/_presenters/chris-may.md b/src/_content/presenters/chris-may.md similarity index 89% rename from _presenters/chris-may.md rename to src/_content/presenters/chris-may.md index a0cd5b84..ba7dc600 100644 --- a/_presenters/chris-may.md +++ b/src/_content/presenters/chris-may.md @@ -1,15 +1,15 @@ --- company: Everyday Superpowers hidden: false -layout: speaker-template -mastodon: https://fosstodon.org/@_chrismay name: Chris May permalink: /presenters/chris-may/ -photo_url: /static/img/presenters/chris-may.jpeg +photo: chris-may.jpeg pronouns: he/him slug: chris-may -twitter: _chrismay -website: null +social: + twitter: _chrismay + website: null + mastodon: https://fosstodon.org/@_chrismay --- Meet Chris, an experienced developer, technical coach, and advocate for creating exceptional user and team experiences. With over 25 years of industry experience, he brings a wealth of knowledge to the table and fosters effective team dynamics. diff --git a/static/img/presenters/colin-copeland.jpeg b/src/_content/presenters/colin-copeland.jpeg similarity index 100% rename from static/img/presenters/colin-copeland.jpeg rename to src/_content/presenters/colin-copeland.jpeg diff --git a/static/img/presenters/daniele-procida.jpeg b/src/_content/presenters/daniele-procida.jpeg similarity index 100% rename from static/img/presenters/daniele-procida.jpeg rename to src/_content/presenters/daniele-procida.jpeg diff --git a/_presenters/daniele-procida.md b/src/_content/presenters/daniele-procida.md similarity index 77% rename from _presenters/daniele-procida.md rename to src/_content/presenters/daniele-procida.md index de550fc5..2ceb681b 100644 --- a/_presenters/daniele-procida.md +++ b/src/_content/presenters/daniele-procida.md @@ -1,14 +1,14 @@ --- company: Canonical hidden: false -layout: speaker-template -mastodon: https://mastodon.online/@EvilDMP name: Daniele Procida permalink: /presenters/daniele-procida/ -photo_url: /static/img/presenters/daniele-procida.jpeg +photo: daniele-procida.jpeg slug: daniele-procida -twitter: null -website: null +social: + twitter: null + website: null + mastodon: https://mastodon.online/@EvilDMP --- I am a Director of Engineering at Canonical, where I lead documentation practice. I enjoy helping organise community conferences for Python and Django, and helping people and open-source projects improve their documentation. diff --git a/static/img/presenters/dara-silvera.jpeg b/src/_content/presenters/dara-silvera.jpeg similarity index 100% rename from static/img/presenters/dara-silvera.jpeg rename to src/_content/presenters/dara-silvera.jpeg diff --git a/_presenters/dara-silvera.md b/src/_content/presenters/dara-silvera.md similarity index 70% rename from _presenters/dara-silvera.md rename to src/_content/presenters/dara-silvera.md index 83c3abae..765e6ba6 100644 --- a/_presenters/dara-silvera.md +++ b/src/_content/presenters/dara-silvera.md @@ -1,14 +1,14 @@ --- company: Octobot hidden: false -layout: speaker-template -mastodon: null name: Dara Silvera permalink: /presenters/dara-silvera/ -photo_url: /static/img/presenters/dara-silvera.jpeg +photo: dara-silvera.jpeg slug: dara-silvera -twitter: null -website: null +social: + twitter: null + website: null + mastodon: null --- Dara is a computer Engineer with 2+ years of experience as Full Stack Developer, working with technologies such as Python, Django, ReactJS, React Native, Docker, etc. diff --git a/static/img/presenters/david-foster.jpg b/src/_content/presenters/david-foster.jpg similarity index 100% rename from static/img/presenters/david-foster.jpg rename to src/_content/presenters/david-foster.jpg diff --git a/static/img/presenters/david-graves.jpeg b/src/_content/presenters/david-graves.jpeg similarity index 100% rename from static/img/presenters/david-graves.jpeg rename to src/_content/presenters/david-graves.jpeg diff --git a/static/img/presenters/dawn-wages.jpeg b/src/_content/presenters/dawn-wages.jpeg similarity index 100% rename from static/img/presenters/dawn-wages.jpeg rename to src/_content/presenters/dawn-wages.jpeg diff --git a/_presenters/dawn-wages.md b/src/_content/presenters/dawn-wages.md similarity index 72% rename from _presenters/dawn-wages.md rename to src/_content/presenters/dawn-wages.md index 3f56549e..a3f99231 100644 --- a/_presenters/dawn-wages.md +++ b/src/_content/presenters/dawn-wages.md @@ -1,14 +1,14 @@ --- company: Microsoft, Wagtail CMS Core Team, PSF Board hidden: false -layout: speaker-template -mastodon: https://mastodon.online/@bajoranengineer name: Dawn Wages permalink: /presenters/dawn-wages/ -photo_url: /static/img/presenters/dawn-wages.jpeg +photo: dawn-wages.jpeg slug: dawn-wages -twitter: null -website: null +social: + twitter: null + website: null + mastodon: https://mastodon.online/@bajoranengineer --- Dawn (she/her) is the Treasurer for the PSF, Wagtail Core Team Member, Python Community Advocate at Microsoft and Django software engineer. She lives in Philadelphia, USA with her partner and three dogs watching Star Trek and noodling about inclusive tech. diff --git a/static/img/presenters/deb-nicholson.jpg b/src/_content/presenters/deb-nicholson.jpg similarity index 100% rename from static/img/presenters/deb-nicholson.jpg rename to src/_content/presenters/deb-nicholson.jpg diff --git a/_presenters/deb-nicholson.md b/src/_content/presenters/deb-nicholson.md similarity index 78% rename from _presenters/deb-nicholson.md rename to src/_content/presenters/deb-nicholson.md index a081ba15..5daa8b9f 100644 --- a/_presenters/deb-nicholson.md +++ b/src/_content/presenters/deb-nicholson.md @@ -1,15 +1,15 @@ --- company: Python Software Foundation hidden: false -layout: speaker-template -mastodon: https://freeradical.zone/@baconandcoconut name: Deb Nicholson permalink: /presenters/deb-nicholson/ -photo_url: /static/img/presenters/deb-nicholson.jpg +photo: deb-nicholson.jpg pronouns: she/her slug: deb-nicholson -twitter: baconandcoconut -website: null +social: + twitter: baconandcoconut + website: null + mastodon: https://freeradical.zone/@baconandcoconut --- Deb Nicholson is a free software policy expert and a passionate community advocate. She is the Executive Director at the Python Software Foundation which serves as the non-profit steward of the Python programming language. She has previously served the open source ecosystem through her work at the Open Source Initiative, Software Freedom Conservancy, and the Open Invention Network. She lives with her husband and her lucky black cat in Cambridge, Massachusetts. diff --git a/static/img/presenters/denny-biasiolli.jpeg b/src/_content/presenters/denny-biasiolli.jpeg similarity index 100% rename from static/img/presenters/denny-biasiolli.jpeg rename to src/_content/presenters/denny-biasiolli.jpeg diff --git a/_presenters/denny-biasiolli.md b/src/_content/presenters/denny-biasiolli.md similarity index 67% rename from _presenters/denny-biasiolli.md rename to src/_content/presenters/denny-biasiolli.md index 49b32b13..d7dd3b95 100644 --- a/_presenters/denny-biasiolli.md +++ b/src/_content/presenters/denny-biasiolli.md @@ -1,15 +1,15 @@ --- company: Fingerprint Compliance Services Ltd. hidden: false -layout: speaker-template -mastodon: https://mastodon.uno/@dennybiasiolli name: Denny Biasiolli permalink: /presenters/denny-biasiolli/ -photo_url: /static/img/presenters/denny-biasiolli.jpeg +photo: denny-biasiolli.jpeg pronouns: he/him slug: denny-biasiolli -twitter: dennybiasiolli -website: null +social: + twitter: dennybiasiolli + website: null + mastodon: https://mastodon.uno/@dennybiasiolli --- Developer for many years, I enjoy contributing to open source projects and I love long and exhausting sports, like triathlon, mountain running and software development :) diff --git a/static/img/presenters/drishti-jain.jpeg b/src/_content/presenters/drishti-jain.jpeg similarity index 100% rename from static/img/presenters/drishti-jain.jpeg rename to src/_content/presenters/drishti-jain.jpeg diff --git a/_presenters/drishti-jain.md b/src/_content/presenters/drishti-jain.md similarity index 84% rename from _presenters/drishti-jain.md rename to src/_content/presenters/drishti-jain.md index a931bd9c..0c395f24 100644 --- a/_presenters/drishti-jain.md +++ b/src/_content/presenters/drishti-jain.md @@ -1,15 +1,15 @@ --- company: NA hidden: false -layout: speaker-template -mastodon: null name: Drishti Jain permalink: /presenters/drishti-jain/ -photo_url: /static/img/presenters/drishti-jain.jpeg +photo: drishti-jain.jpeg pronouns: she/her slug: drishti-jain -twitter: drishtijjain -website: https://drishtij.github.io/ +social: + twitter: drishtijjain + website: https://drishtij.github.io/ + mastodon: null --- Drishti is a Computer Engineer and a technology enthusiast. She believes in democratizing opportunities and brings knowledge of the latest developments in the fast-moving field of technology to early professionals, students, and keep them up to date and well-equipped for their professional careers. Her initiative "SkillUp with Drishti" enables students and professionals to grow in their career. diff --git a/static/img/presenters/ed-rivas.jpeg b/src/_content/presenters/ed-rivas.jpeg similarity index 100% rename from static/img/presenters/ed-rivas.jpeg rename to src/_content/presenters/ed-rivas.jpeg diff --git a/static/img/presenters/eduardo-felipe-castegnaro.jpg b/src/_content/presenters/eduardo-felipe-castegnaro.jpg similarity index 100% rename from static/img/presenters/eduardo-felipe-castegnaro.jpg rename to src/_content/presenters/eduardo-felipe-castegnaro.jpg diff --git a/_presenters/eliana-rosselli.md b/src/_content/presenters/eliana-rosselli.md similarity index 81% rename from _presenters/eliana-rosselli.md rename to src/_content/presenters/eliana-rosselli.md index 52abc0db..e33d1110 100644 --- a/_presenters/eliana-rosselli.md +++ b/src/_content/presenters/eliana-rosselli.md @@ -1,15 +1,15 @@ --- company: Octobot hidden: false -layout: speaker-template -mastodon: null name: Eliana Rosselli permalink: /presenters/eliana-rosselli/ -photo_url: /static/img/presenters/eliana-rosselli.png +photo: eliana-rosselli.png pronouns: she/her slug: eliana-rosselli -twitter: null -website: null +social: + twitter: null + website: null + mastodon: null --- Eliana is a Computer Engineer with 3+ years of experience working as a fullstack developer on end-to-end product development projects. She's passionate about good quality code and unit tests, and was previously a teacher assistant for a Data Structures and Algorithms course at UTU (Uruguay). She currently works as a fullstack developer at Octobot, using technologies like Django and ReactJs. diff --git a/static/img/presenters/eliana-rosselli.png b/src/_content/presenters/eliana-rosselli.png similarity index 100% rename from static/img/presenters/eliana-rosselli.png rename to src/_content/presenters/eliana-rosselli.png diff --git a/_presenters/elizabeth-christensen.md b/src/_content/presenters/elizabeth-christensen.md similarity index 83% rename from _presenters/elizabeth-christensen.md rename to src/_content/presenters/elizabeth-christensen.md index bfa85651..59083abc 100644 --- a/_presenters/elizabeth-christensen.md +++ b/src/_content/presenters/elizabeth-christensen.md @@ -1,14 +1,14 @@ --- company: Crunchy Data hidden: false -layout: speaker-template -mastodon: null name: Elizabeth Christensen permalink: /presenters/elizabeth-christensen/ -photo_url: /static/img/presenters/elizabeth-christensen.png +photo: elizabeth-christensen.png slug: elizabeth-christensen -twitter: sqlliz -website: null +social: + twitter: sqlliz + website: null + mastodon: null --- Elizabeth is a Customer Success Manager at Crunchy Data and volunteers for the US PostgreSQL Association. Elizabeth enjoys writing about Postgres for Newbies and teaching people about databases whenever she gets the chance. She has a background in open source project management and enjoys working with development teams to build products and applications using all the fun things in the open source toy box. Elizabeth hails from Lawrence, Kansas and spends most of her free time pretending like she lives on a farm in the 1860s. diff --git a/static/img/presenters/elizabeth-christensen.png b/src/_content/presenters/elizabeth-christensen.png similarity index 100% rename from static/img/presenters/elizabeth-christensen.png rename to src/_content/presenters/elizabeth-christensen.png diff --git a/static/img/presenters/elizabeth-garrett-christensen.jpeg b/src/_content/presenters/elizabeth-garrett-christensen.jpeg similarity index 100% rename from static/img/presenters/elizabeth-garrett-christensen.jpeg rename to src/_content/presenters/elizabeth-garrett-christensen.jpeg diff --git a/static/img/presenters/eric-holscher.jpg b/src/_content/presenters/eric-holscher.jpg similarity index 100% rename from static/img/presenters/eric-holscher.jpg rename to src/_content/presenters/eric-holscher.jpg diff --git a/static/img/presenters/eric-matthes.jpg b/src/_content/presenters/eric-matthes.jpg similarity index 100% rename from static/img/presenters/eric-matthes.jpg rename to src/_content/presenters/eric-matthes.jpg diff --git a/static/img/presenters/erin-mullaney.jpg b/src/_content/presenters/erin-mullaney.jpg similarity index 100% rename from static/img/presenters/erin-mullaney.jpg rename to src/_content/presenters/erin-mullaney.jpg diff --git a/static/img/presenters/ernesto-rico-schmidt.jpeg b/src/_content/presenters/ernesto-rico-schmidt.jpeg similarity index 100% rename from static/img/presenters/ernesto-rico-schmidt.jpeg rename to src/_content/presenters/ernesto-rico-schmidt.jpeg diff --git a/_presenters/ernesto-rico-schmidt.md b/src/_content/presenters/ernesto-rico-schmidt.md similarity index 72% rename from _presenters/ernesto-rico-schmidt.md rename to src/_content/presenters/ernesto-rico-schmidt.md index 9a6c0d74..8e988dcd 100644 --- a/_presenters/ernesto-rico-schmidt.md +++ b/src/_content/presenters/ernesto-rico-schmidt.md @@ -1,15 +1,15 @@ --- company: Radio Helsinki in Graz, Austria hidden: false -layout: speaker-template -mastodon: https://hachyderm.io/@eigenwijsje name: Ernesto Rico Schmidt permalink: /presenters/ernesto-rico-schmidt/ -photo_url: /static/img/presenters/ernesto-rico-schmidt.jpeg +photo: ernesto-rico-schmidt.jpeg pronouns: he/him slug: ernesto-rico-schmidt -twitter: null -website: https://eigenwijsje.dev +social: + twitter: null + website: https://eigenwijsje.dev + mastodon: https://hachyderm.io/@eigenwijsje --- - Electrical Engineer diff --git a/static/img/presenters/felipe.jpeg b/src/_content/presenters/felipe.jpeg similarity index 100% rename from static/img/presenters/felipe.jpeg rename to src/_content/presenters/felipe.jpeg diff --git a/_presenters/felipe.md b/src/_content/presenters/felipe.md similarity index 86% rename from _presenters/felipe.md rename to src/_content/presenters/felipe.md index 0383ef34..9f1c8c65 100644 --- a/_presenters/felipe.md +++ b/src/_content/presenters/felipe.md @@ -1,15 +1,15 @@ --- company: AfroPython hidden: false -layout: speaker-template -mastodon: null name: Felipe de Morais permalink: /presenters/felipe-de-morais/ -photo_url: /static/img/presenters/felipe.jpeg +photo: felipe.jpeg pronouns: he/him slug: felipe -twitter: felipedemorais_ -website: null +social: + twitter: felipedemorais_ + website: null + mastodon: null --- Meet Felipe de Morais, also known as FeliPython, a skilled software engineer with years of experience under his belt. As a co-founder of AfroPython and open-source contributor, Felipe has made significant contributions to the Python Community, earning recognition from both the Python Software Foundation and the Brazilian Python Association. In addition to his professional career, Felipe enjoys practicing Jiu Jitsu, and his furry companion, Paçoca, named after his favorite Brazilian candy. Passionate about helping others, Felipe is always willing to lend a hand and share his expertise. Get ready to be inspired by his journey and insights at Django Con US! diff --git a/static/img/presenters/flavio-juvenal.jpg b/src/_content/presenters/flavio-juvenal.jpg similarity index 100% rename from static/img/presenters/flavio-juvenal.jpg rename to src/_content/presenters/flavio-juvenal.jpg diff --git a/_presenters/flavio-juvenal.md b/src/_content/presenters/flavio-juvenal.md similarity index 77% rename from _presenters/flavio-juvenal.md rename to src/_content/presenters/flavio-juvenal.md index 8515c9af..40128894 100644 --- a/_presenters/flavio-juvenal.md +++ b/src/_content/presenters/flavio-juvenal.md @@ -1,15 +1,15 @@ --- company: Vinta Software hidden: false -layout: speaker-template -mastodon: null name: Flávio Juvenal permalink: /presenters/flavio-juvenal/ -photo_url: /static/img/presenters/flavio-juvenal.jpg +photo: flavio-juvenal.jpg pronouns: he/him slug: flavio-juvenal -twitter: flaviojuvenal -website: https://www.vinta.com.br +social: + twitter: flaviojuvenal + website: https://www.vinta.com.br + mastodon: null --- I'm a software engineer from Brazil and Chief Scientist at Vinta Software (www.vinta.com.br). I’ve been building web products with Python and Django for the last 13 years. I love drinking medium and light roast coffee and visiting museums around the world. Recently I got into retrogaming and I've been (trying) to fix and play SNES and Genesis consoles. diff --git a/static/img/presenters/gajendra-deshpande.jpg b/src/_content/presenters/gajendra-deshpande.jpg similarity index 100% rename from static/img/presenters/gajendra-deshpande.jpg rename to src/_content/presenters/gajendra-deshpande.jpg diff --git a/static/img/presenters/gajendra-deshpande.png b/src/_content/presenters/gajendra-deshpande.png similarity index 100% rename from static/img/presenters/gajendra-deshpande.png rename to src/_content/presenters/gajendra-deshpande.png diff --git a/static/img/presenters/heidi-white.jpeg b/src/_content/presenters/heidi-white.jpeg similarity index 100% rename from static/img/presenters/heidi-white.jpeg rename to src/_content/presenters/heidi-white.jpeg diff --git a/static/img/presenters/ilya-bass.jpeg b/src/_content/presenters/ilya-bass.jpeg similarity index 100% rename from static/img/presenters/ilya-bass.jpeg rename to src/_content/presenters/ilya-bass.jpeg diff --git a/static/img/presenters/iuri-de-silvio.png b/src/_content/presenters/iuri-de-silvio.png similarity index 100% rename from static/img/presenters/iuri-de-silvio.png rename to src/_content/presenters/iuri-de-silvio.png diff --git a/static/img/presenters/jack-linke.jpg b/src/_content/presenters/jack-linke.jpg similarity index 100% rename from static/img/presenters/jack-linke.jpg rename to src/_content/presenters/jack-linke.jpg diff --git a/_presenters/james-walters.md b/src/_content/presenters/james-walters.md similarity index 81% rename from _presenters/james-walters.md rename to src/_content/presenters/james-walters.md index e905a9fc..2595fe68 100644 --- a/_presenters/james-walters.md +++ b/src/_content/presenters/james-walters.md @@ -1,15 +1,15 @@ --- company: Unique Management Services hidden: false -layout: speaker-template -mastodon: https://fosstodon.org/@jameswalters name: James Walters permalink: /presenters/james-walters/ -photo_url: /static/img/presenters/james-walters.png +photo: james-walters.png pronouns: he/him slug: james-walters -twitter: null -website: http://james.walters.click/ +social: + twitter: null + website: http://james.walters.click/ + mastodon: https://fosstodon.org/@jameswalters --- Two years ago, James and his manager started learning Python and Django to rebuild an internal web app used in their company's call center. An old soul at heart, he started exploring the web before Angular or React ever came along, so the Web 1.0 feel of Django immediately clicked. Today that web app, built with Bootstrap and htmx, is in production use. Going through the process of deploying this app helped him crystallize how to think about getting a project from the code editor to the web browser, and he's here to share those insights and distill deployment down to something more approachable. diff --git a/static/img/presenters/james-walters.png b/src/_content/presenters/james-walters.png similarity index 100% rename from static/img/presenters/james-walters.png rename to src/_content/presenters/james-walters.png diff --git a/static/img/presenters/jay-miller.jpg b/src/_content/presenters/jay-miller.jpg similarity index 100% rename from static/img/presenters/jay-miller.jpg rename to src/_content/presenters/jay-miller.jpg diff --git a/_presenters/jay-miller.md b/src/_content/presenters/jay-miller.md similarity index 68% rename from _presenters/jay-miller.md rename to src/_content/presenters/jay-miller.md index 7174e3ea..c6ca37bf 100644 --- a/_presenters/jay-miller.md +++ b/src/_content/presenters/jay-miller.md @@ -1,15 +1,15 @@ --- company: Microsoft -github: kjaymiller hidden: false -layout: speaker-template name: Jay Miller permalink: /presenters/jay-miller/ -photo_url: /static/img/presenters/jay-miller.jpg +photo: jay-miller.jpg pronouns: he/them slug: jay-miller -twitter: kjaymiller -website: https://kjaymiller.com/ +social: + twitter: kjaymiller + website: https://kjaymiller.com/ + github: kjaymiller --- Jay is a Senior Cloud Advocate at Microsoft based in San Diego, CA. As an advocate, Jay has appeared on numerous podcasts and video channels, presenting to developers around the globe! diff --git a/static/img/presenters/jiten-sidhpura.jpg b/src/_content/presenters/jiten-sidhpura.jpg similarity index 100% rename from static/img/presenters/jiten-sidhpura.jpg rename to src/_content/presenters/jiten-sidhpura.jpg diff --git a/static/img/presenters/joaquin-scocozza.jpeg b/src/_content/presenters/joaquin-scocozza.jpeg similarity index 100% rename from static/img/presenters/joaquin-scocozza.jpeg rename to src/_content/presenters/joaquin-scocozza.jpeg diff --git a/_presenters/josh-thomas.md b/src/_content/presenters/josh-thomas.md similarity index 66% rename from _presenters/josh-thomas.md rename to src/_content/presenters/josh-thomas.md index 103cf4cf..4b9d6318 100644 --- a/_presenters/josh-thomas.md +++ b/src/_content/presenters/josh-thomas.md @@ -1,15 +1,15 @@ --- company: The Westervelt Company hidden: false -layout: speaker-template -mastodon: https://joshthomas.dev/@josh name: Josh Thomas permalink: /presenters/josh-thomas/ -photo_url: /static/img/presenters/josh-thomas.png +photo: josh-thomas.png pronouns: he/him slug: josh-thomas -twitter: null -website: null +social: + twitter: null + website: null + mastodon: https://joshthomas.dev/@josh --- Josh Thomas is the web developer at The Westervelt Company, a lumber and land company founded in 1884 and headquartered in Tuscaloosa, AL. diff --git a/static/img/presenters/josh-thomas.png b/src/_content/presenters/josh-thomas.png similarity index 100% rename from static/img/presenters/josh-thomas.png rename to src/_content/presenters/josh-thomas.png diff --git a/static/img/presenters/joshua-weaver.jpeg b/src/_content/presenters/joshua-weaver.jpeg similarity index 100% rename from static/img/presenters/joshua-weaver.jpeg rename to src/_content/presenters/joshua-weaver.jpeg diff --git a/static/img/presenters/juan-saavedra.jpg b/src/_content/presenters/juan-saavedra.jpg similarity index 100% rename from static/img/presenters/juan-saavedra.jpg rename to src/_content/presenters/juan-saavedra.jpg diff --git a/_presenters/julia-solorzano.md b/src/_content/presenters/julia-solorzano.md similarity index 91% rename from _presenters/julia-solorzano.md rename to src/_content/presenters/julia-solorzano.md index cc39352b..ee78a635 100644 --- a/_presenters/julia-solorzano.md +++ b/src/_content/presenters/julia-solorzano.md @@ -1,13 +1,13 @@ --- -github: juliaelman hidden: false -layout: speaker-template name: Julia Solórzano permalink: /presenters/julia-solorzano/ -photo_url: /static/img/blog/julia-solorzano.JPG +photo: /assets/img/blog/julia-solorzano.JPG slug: julia-solorzano -twitter: null -website: null +social: + twitter: null + website: null + github: juliaelman --- Julia Solórzano is a Security Experience Supervisor is based in Durham, NC. She leads security, user experience and engineering teams, and coaches people to help them reach their full potential to create amazing things. Outside of Login.gov, her most recent work includes [Login.gov](https://login.gov), [Department of Veterans API](https://developer.va.gov/) program and the [U.S. Web Design System](https://designsystem.digital.gov/). She is also an adjunct professor at Georgetown University where she teaches technology design and development. diff --git a/static/img/presenters/katie-mclaughlin.jpg b/src/_content/presenters/katie-mclaughlin.jpg similarity index 100% rename from static/img/presenters/katie-mclaughlin.jpg rename to src/_content/presenters/katie-mclaughlin.jpg diff --git a/static/img/presenters/ken-whitesell.jpg b/src/_content/presenters/ken-whitesell.jpg similarity index 100% rename from static/img/presenters/ken-whitesell.jpg rename to src/_content/presenters/ken-whitesell.jpg diff --git a/_presenters/kojo-idrissa.md b/src/_content/presenters/kojo-idrissa.md similarity index 77% rename from _presenters/kojo-idrissa.md rename to src/_content/presenters/kojo-idrissa.md index 7c92be48..ac28d881 100644 --- a/_presenters/kojo-idrissa.md +++ b/src/_content/presenters/kojo-idrissa.md @@ -1,15 +1,15 @@ --- company: Decisio Health -github: kojoidrissa -layout: speaker-template -mastodon: https://fosstodon.org/@kojoidrissa name: Kojo Idrissa override_schedule_title: Welcome and Orientation permalink: /presenters/kojo-idrissa/ -photo_url: /static/img/organizers/kojo.jpg +photo: /static/img/organizers/kojo.jpg slug: kojo-idrissa -twitter: kojoidrissa -website: http://kojoidrissa.com/ +social: + twitter: kojoidrissa + website: http://kojoidrissa.com/ + mastodon: https://fosstodon.org/@kojoidrissa + github: kojoidrissa --- Kojo Idrissa _was_ an accountant who got an MBA and taught at university in diff --git a/static/img/presenters/kuldeep-pisda.jpeg b/src/_content/presenters/kuldeep-pisda.jpeg similarity index 100% rename from static/img/presenters/kuldeep-pisda.jpeg rename to src/_content/presenters/kuldeep-pisda.jpeg diff --git a/_presenters/kuldeep-pisda.md b/src/_content/presenters/kuldeep-pisda.md similarity index 90% rename from _presenters/kuldeep-pisda.md rename to src/_content/presenters/kuldeep-pisda.md index b590d333..18544abd 100644 --- a/_presenters/kuldeep-pisda.md +++ b/src/_content/presenters/kuldeep-pisda.md @@ -1,15 +1,15 @@ --- company: Goldcast Inc hidden: false -layout: speaker-template -mastodon: null name: Kuldeep Pisda permalink: /presenters/kuldeep-pisda/ -photo_url: /static/img/presenters/kuldeep-pisda.jpeg +photo: kuldeep-pisda.jpeg pronouns: he/him slug: kuldeep-pisda -twitter: KdPisda -website: null +social: + twitter: KdPisda + website: null + mastodon: null --- As someone passionate about technology, I have had the privilege of speaking at several international tech conferences, including APIDays India 2022, APISecure 2022, and DjangoCon US 2022. I was honored to have my proposal selected for DjangoCon US 2022, where I could share my insights with a global audience. diff --git a/static/img/presenters/lee-trout.jpeg b/src/_content/presenters/lee-trout.jpeg similarity index 100% rename from static/img/presenters/lee-trout.jpeg rename to src/_content/presenters/lee-trout.jpeg diff --git a/static/img/presenters/levi-mann.jpg b/src/_content/presenters/levi-mann.jpg similarity index 100% rename from static/img/presenters/levi-mann.jpg rename to src/_content/presenters/levi-mann.jpg diff --git a/static/img/presenters/lisa-tagliaferri.jpg b/src/_content/presenters/lisa-tagliaferri.jpg similarity index 100% rename from static/img/presenters/lisa-tagliaferri.jpg rename to src/_content/presenters/lisa-tagliaferri.jpg diff --git a/static/img/presenters/luke-lee.jpg b/src/_content/presenters/luke-lee.jpg similarity index 100% rename from static/img/presenters/luke-lee.jpg rename to src/_content/presenters/luke-lee.jpg diff --git a/static/img/presenters/marc-gibbons.jpeg b/src/_content/presenters/marc-gibbons.jpeg similarity index 100% rename from static/img/presenters/marc-gibbons.jpeg rename to src/_content/presenters/marc-gibbons.jpeg diff --git a/_presenters/marc-gibbons.md b/src/_content/presenters/marc-gibbons.md similarity index 85% rename from _presenters/marc-gibbons.md rename to src/_content/presenters/marc-gibbons.md index e5d66f4e..a2d3d6cd 100644 --- a/_presenters/marc-gibbons.md +++ b/src/_content/presenters/marc-gibbons.md @@ -1,15 +1,15 @@ --- company: Marc Gibbons hidden: false -layout: speaker-template -mastodon: https://mastodon.social/@marcgibbons name: Marc Gibbons permalink: /presenters/marc-gibbons/ -photo_url: /static/img/presenters/marc-gibbons.jpeg +photo: marc-gibbons.jpeg pronouns: he/him slug: marc-gibbons -twitter: null -website: null +social: + twitter: null + website: null + mastodon: https://mastodon.social/@marcgibbons --- Marc is a full stack developer and consultant based in the Greater Toronto Area. He has been working with Django since version 1.4 was released over a decade ago. He specializes in API development and is passionate about developer quality of life. diff --git a/static/img/presenters/marcelo-elizeche-lando.jpg b/src/_content/presenters/marcelo-elizeche-lando.jpg similarity index 100% rename from static/img/presenters/marcelo-elizeche-lando.jpg rename to src/_content/presenters/marcelo-elizeche-lando.jpg diff --git a/_presenters/mario-munoz.md b/src/_content/presenters/mario-munoz.md similarity index 74% rename from _presenters/mario-munoz.md rename to src/_content/presenters/mario-munoz.md index ed50d6b5..578e00f3 100644 --- a/_presenters/mario-munoz.md +++ b/src/_content/presenters/mario-munoz.md @@ -1,14 +1,14 @@ --- company: Python By Night hidden: false -layout: speaker-template -mastodon: https://fosstodon.org/@pythonbynight name: Mario Munoz permalink: /presenters/mario-munoz/ -photo_url: /static/img/presenters/mario-munoz.png +photo: mario-munoz.png slug: mario-munoz -twitter: PythonByNight -website: null +social: + twitter: PythonByNight + website: null + mastodon: https://fosstodon.org/@pythonbynight --- I code Python by night, which is what happens when there's not enough time during the day. In the past couple of years, I've presented several talks/tutorials at PyCon US, DjangoCon US, Python Web Conference, and others. Sometimes I neglect/blog on my website [Python By Night](https://pythonbynight.com), and start (and abandon) too many side projects. diff --git a/static/img/presenters/mario-munoz.png b/src/_content/presenters/mario-munoz.png similarity index 100% rename from static/img/presenters/mario-munoz.png rename to src/_content/presenters/mario-munoz.png diff --git a/static/img/presenters/mason-egger.jpg b/src/_content/presenters/mason-egger.jpg similarity index 100% rename from static/img/presenters/mason-egger.jpg rename to src/_content/presenters/mason-egger.jpg diff --git a/static/img/presenters/maxim-danilov.jpeg b/src/_content/presenters/maxim-danilov.jpeg similarity index 100% rename from static/img/presenters/maxim-danilov.jpeg rename to src/_content/presenters/maxim-danilov.jpeg diff --git a/static/img/presenters/maxwell-muoto.jpeg b/src/_content/presenters/maxwell-muoto.jpeg similarity index 100% rename from static/img/presenters/maxwell-muoto.jpeg rename to src/_content/presenters/maxwell-muoto.jpeg diff --git a/_presenters/maxwell-muoto.md b/src/_content/presenters/maxwell-muoto.md similarity index 65% rename from _presenters/maxwell-muoto.md rename to src/_content/presenters/maxwell-muoto.md index 7255e59e..378467df 100644 --- a/_presenters/maxwell-muoto.md +++ b/src/_content/presenters/maxwell-muoto.md @@ -1,14 +1,14 @@ --- company: Standard Metrics hidden: false -layout: speaker-template -mastodon: null name: Maxwell Muoto permalink: /presenters/maxwell-muoto/ -photo_url: /static/img/presenters/maxwell-muoto.jpeg +photo: maxwell-muoto.jpeg slug: maxwell-muoto -twitter: maxmuoto -website: null +social: + twitter: maxmuoto + website: null + mastodon: null --- I'm a software engineer at Standard Metrics where I focus on fullstack development for our Venture product. diff --git a/static/img/presenters/meagen-voss.jpg b/src/_content/presenters/meagen-voss.jpg similarity index 100% rename from static/img/presenters/meagen-voss.jpg rename to src/_content/presenters/meagen-voss.jpg diff --git a/static/img/presenters/melanie-arbor.jpeg b/src/_content/presenters/melanie-arbor.jpeg similarity index 100% rename from static/img/presenters/melanie-arbor.jpeg rename to src/_content/presenters/melanie-arbor.jpeg diff --git a/static/img/presenters/michael-trythall.jpg b/src/_content/presenters/michael-trythall.jpg similarity index 100% rename from static/img/presenters/michael-trythall.jpg rename to src/_content/presenters/michael-trythall.jpg diff --git a/_presenters/michael-trythall.md b/src/_content/presenters/michael-trythall.md similarity index 63% rename from _presenters/michael-trythall.md rename to src/_content/presenters/michael-trythall.md index ee45e6e7..e2e946e8 100644 --- a/_presenters/michael-trythall.md +++ b/src/_content/presenters/michael-trythall.md @@ -1,14 +1,14 @@ --- company: Lincoln Loop hidden: false -layout: speaker-template -mastodon: https://mastodon.yupgup.com/@michael name: Michael Trythall permalink: /presenters/michael-trythall/ -photo_url: /static/img/presenters/michael-trythall.jpg +photo: michael-trythall.jpg slug: michael-trythall -twitter: null -website: https://lincolnloop.com/ +social: + twitter: null + website: https://lincolnloop.com/ + mastodon: https://mastodon.yupgup.com/@michael --- Michael has been designing and building content-managed websites for nearly 20 years. He enjoys creating delightfully effective user experiences to solve big problems. diff --git a/static/img/presenters/mike-hoolehan.jpg b/src/_content/presenters/mike-hoolehan.jpg similarity index 100% rename from static/img/presenters/mike-hoolehan.jpg rename to src/_content/presenters/mike-hoolehan.jpg diff --git a/_presenters/mike-hoolehan.md b/src/_content/presenters/mike-hoolehan.md similarity index 81% rename from _presenters/mike-hoolehan.md rename to src/_content/presenters/mike-hoolehan.md index 81ea18a5..c330e131 100644 --- a/_presenters/mike-hoolehan.md +++ b/src/_content/presenters/mike-hoolehan.md @@ -1,15 +1,15 @@ --- company: StarHeight Media hidden: false -layout: speaker-template -mastodon: null name: Mike Hoolehan permalink: /presenters/mike-hoolehan/ -photo_url: /static/img/presenters/mike-hoolehan.jpg +photo: mike-hoolehan.jpg pronouns: he/him slug: mike-hoolehan -twitter: null -website: null +social: + twitter: null + website: null + mastodon: null --- Mike is a software developer living in Tallinn, Estonia. Although his list of former hobbies is expansive and every-growing, his love of software is constant and keeps him curious and enthusiastic after 20 years of professional software development across numerous languages and frameworks. Currently, Mike is following his bliss with Django, Flutter, bike-touring, camping, and tabletop gaming. diff --git a/_presenters/mohamed-elkalioby.md b/src/_content/presenters/mohamed-elkalioby.md similarity index 60% rename from _presenters/mohamed-elkalioby.md rename to src/_content/presenters/mohamed-elkalioby.md index b235b7eb..5424d75e 100644 --- a/_presenters/mohamed-elkalioby.md +++ b/src/_content/presenters/mohamed-elkalioby.md @@ -1,12 +1,12 @@ --- company: null hidden: false -layout: speaker-template -mastodon: null name: Mohamed ElKalioby permalink: /presenters/mohamed-elkalioby/ -photo_url: '' +photo: "" slug: mohamed-elkalioby -twitter: null -website: null +social: + twitter: null + website: null + mastodon: null --- diff --git a/static/img/presenters/natalia-bidart.jpg b/src/_content/presenters/natalia-bidart.jpg similarity index 100% rename from static/img/presenters/natalia-bidart.jpg rename to src/_content/presenters/natalia-bidart.jpg diff --git a/_presenters/natalia-bidart.md b/src/_content/presenters/natalia-bidart.md similarity index 91% rename from _presenters/natalia-bidart.md rename to src/_content/presenters/natalia-bidart.md index 6d441dfe..b2f5d06b 100644 --- a/_presenters/natalia-bidart.md +++ b/src/_content/presenters/natalia-bidart.md @@ -1,13 +1,13 @@ --- -github: nessita -layout: speaker-template -mastodon: https://fosstodon.org/@nessita name: Natalia Bidart permalink: /presenters/natalia-bidart/ -photo_url: /static/img/presenters/natalia-bidart.jpg +photo: natalia-bidart.jpg pronouns: she/her slug: natalia-bidart title: Django Fellow +social: + mastodon: https://fosstodon.org/@nessita + github: nessita --- Natalia is a Python expert with almost 15 years of experience working with Django. She graduated from the National University of Cordoba, Argentina, with a degree in Computer Science in 2007, and began her professional career in 2005 working for a Python startup before joining Canonical in 2009. diff --git a/_presenters/nikolay-samokhvalov.md b/src/_content/presenters/nikolay-samokhvalov.md similarity index 85% rename from _presenters/nikolay-samokhvalov.md rename to src/_content/presenters/nikolay-samokhvalov.md index 96765fe1..f883e2ef 100644 --- a/_presenters/nikolay-samokhvalov.md +++ b/src/_content/presenters/nikolay-samokhvalov.md @@ -1,14 +1,14 @@ --- company: Postgres.ai hidden: false -layout: speaker-template -mastodon: null name: Nikolay Samokhvalov permalink: /presenters/nikolay-samokhvalov/ -photo_url: '' +photo: "" slug: nikolay-samokhvalov -twitter: samokhvalov -website: null +social: + twitter: samokhvalov + website: null + mastodon: null --- - Founder of [Postgres.ai](https://postgres.ai): automation of database testing in CI/CD, modern database monitoring for Postgres, databases in clouds. Among clients: Chewy.com, GitLab.com, Mercury.com, Miro.com. diff --git a/static/img/presenters/noah-kantrowitz.jpeg b/src/_content/presenters/noah-kantrowitz.jpeg similarity index 100% rename from static/img/presenters/noah-kantrowitz.jpeg rename to src/_content/presenters/noah-kantrowitz.jpeg diff --git a/_presenters/noah-kantrowitz.md b/src/_content/presenters/noah-kantrowitz.md similarity index 74% rename from _presenters/noah-kantrowitz.md rename to src/_content/presenters/noah-kantrowitz.md index b6c4217a..24225fa5 100644 --- a/_presenters/noah-kantrowitz.md +++ b/src/_content/presenters/noah-kantrowitz.md @@ -1,14 +1,14 @@ --- company: Geomagical Labs/IKEA hidden: false -layout: speaker-template -mastodon: https://cloudisland.nz/@coderanger name: Noah Kantrowitz permalink: /presenters/noah-kantrowitz/ -photo_url: /static/img/presenters/noah-kantrowitz.jpeg +photo: noah-kantrowitz.jpeg slug: noah-kantrowitz -twitter: kantrn -website: null +social: + twitter: kantrn + website: null + mastodon: https://cloudisland.nz/@coderanger --- Noah Kantrowitz is a web developer turned infrastructure automation enthusiast, and all around engineering rabble-rouser. By day he runs infrastructure at Geomagical/IKEA and by night he makes candy and stickers. He is an active member of the DevOps community, and enjoys merge commits, cat pictures, and beards. diff --git a/static/img/presenters/paolo-melchiorre.jpg b/src/_content/presenters/paolo-melchiorre.jpg similarity index 100% rename from static/img/presenters/paolo-melchiorre.jpg rename to src/_content/presenters/paolo-melchiorre.jpg diff --git a/_presenters/paolo-melchiorre.md b/src/_content/presenters/paolo-melchiorre.md similarity index 75% rename from _presenters/paolo-melchiorre.md rename to src/_content/presenters/paolo-melchiorre.md index 4321e19a..cd903050 100644 --- a/_presenters/paolo-melchiorre.md +++ b/src/_content/presenters/paolo-melchiorre.md @@ -1,16 +1,16 @@ --- company: 20tab -github: pauloxnet hidden: false -layout: speaker-template -mastodon: https://fosstodon.org/@paulox name: Paolo Melchiorre permalink: /presenters/paolo-melchiorre/ -photo_url: /static/img/presenters/paolo-melchiorre.jpg +photo: paolo-melchiorre.jpg pronouns: he/him slug: paolo-melchiorre -twitter: pauloxnet -website: https://www.paulox.net +social: + twitter: pauloxnet + website: https://www.paulox.net + mastodon: https://fosstodon.org/@paulox + github: pauloxnet --- I’m Paolo Melchiorre, a longtime Python backend developer who contributes to the Django project and gives talks at tech conferences. diff --git a/_presenters/pat-viafore.md b/src/_content/presenters/pat-viafore.md similarity index 84% rename from _presenters/pat-viafore.md rename to src/_content/presenters/pat-viafore.md index 3f02030c..26244fd8 100644 --- a/_presenters/pat-viafore.md +++ b/src/_content/presenters/pat-viafore.md @@ -1,15 +1,15 @@ --- company: Author of Robust Python hidden: false -layout: speaker-template -mastodon: null name: Pat Viafore permalink: /presenters/pat-viafore/ -photo_url: /static/img/presenters/pat-viafore.png +photo: pat-viafore.png pronouns: he/him slug: pat-viafore -twitter: PatViaforever -website: null +social: + twitter: PatViaforever + website: null + mastodon: null --- Pat Viafore has been in the industry for over 15 years, working on various systems such as lightning detection systems, operating systems, and virtualization. He focuses on testing, software engineering, and developer experience. diff --git a/static/img/presenters/pat-viafore.png b/src/_content/presenters/pat-viafore.png similarity index 100% rename from static/img/presenters/pat-viafore.png rename to src/_content/presenters/pat-viafore.png diff --git a/static/img/presenters/patrick-arminio.jpeg b/src/_content/presenters/patrick-arminio.jpeg similarity index 100% rename from static/img/presenters/patrick-arminio.jpeg rename to src/_content/presenters/patrick-arminio.jpeg diff --git a/static/img/presenters/paul-gilzow.jpeg b/src/_content/presenters/paul-gilzow.jpeg similarity index 100% rename from static/img/presenters/paul-gilzow.jpeg rename to src/_content/presenters/paul-gilzow.jpeg diff --git a/_presenters/paul-gilzow.md b/src/_content/presenters/paul-gilzow.md similarity index 74% rename from _presenters/paul-gilzow.md rename to src/_content/presenters/paul-gilzow.md index 912349fe..9d328761 100644 --- a/_presenters/paul-gilzow.md +++ b/src/_content/presenters/paul-gilzow.md @@ -1,16 +1,17 @@ --- company: Platform.sh hidden: false -layout: speaker-template -mastodon: https://higheredweb.social/@gilzow name: Paul Gilzow -override_schedule_title: "Introduction to GitHub Actions: Understanding Key Terms and Building Your First GitHub Action" +override_schedule_title: "Introduction to GitHub Actions: Understanding Key + Terms and Building Your First GitHub Action" permalink: /presenters/paul-gilzow/ -photo_url: /static/img/presenters/paul-gilzow.jpeg +photo: paul-gilzow.jpeg pronouns: he/him/his slug: paul-gilzow -twitter: gilzow -website: null +social: + twitter: gilzow + website: null + mastodon: https://higheredweb.social/@gilzow --- Developer Relations Engineer at Platform.sh. Former Programmer/Analyst-Principal at the University of Missouri. Web application security and accessibility evangelist. Software instructor. Conference lecturer and presenter. Runs on passion and coffee. Outside of work, you'll find Gilzow mountain biking, snowboarding, enjoying live music with his kids, and dancing wherever the mood strikes. diff --git a/static/img/presenters/pavel-sviridov.jpeg b/src/_content/presenters/pavel-sviridov.jpeg similarity index 100% rename from static/img/presenters/pavel-sviridov.jpeg rename to src/_content/presenters/pavel-sviridov.jpeg diff --git a/_presenters/pavel-sviridov.md b/src/_content/presenters/pavel-sviridov.md similarity index 80% rename from _presenters/pavel-sviridov.md rename to src/_content/presenters/pavel-sviridov.md index 42acf9ec..a8e08530 100644 --- a/_presenters/pavel-sviridov.md +++ b/src/_content/presenters/pavel-sviridov.md @@ -1,15 +1,15 @@ --- company: TripleTen hidden: false -layout: speaker-template -mastodon: null name: Pavel Sviridov permalink: /presenters/pavel-sviridov/ -photo_url: /static/img/presenters/pavel-sviridov.jpeg +photo: pavel-sviridov.jpeg pronouns: he/his slug: pavel-sviridov -twitter: sviridov_pavel -website: https://svipy.com/ +social: + twitter: sviridov_pavel + website: https://svipy.com/ + mastodon: null --- Pavel Sviridov, the Head of Backend Development at [TripleTen](https://tripleten.com) since 2019, brings over eight years of Python development experience, with a specialization in Django. His hands-on approach to Domain-Driven Design (DDD) in Django projects is bolstered by real-world experience and collaborative feedback. Known for his ability to make complex topics accessible, Pavel's sessions blend theoretical knowledge with practical, real-world examples. diff --git a/static/img/presenters/peter-baumgartner.jpg b/src/_content/presenters/peter-baumgartner.jpg similarity index 100% rename from static/img/presenters/peter-baumgartner.jpg rename to src/_content/presenters/peter-baumgartner.jpg diff --git a/_presenters/peter-grandstaff.md b/src/_content/presenters/peter-grandstaff.md similarity index 73% rename from _presenters/peter-grandstaff.md rename to src/_content/presenters/peter-grandstaff.md index fe6de550..6f9f26be 100644 --- a/_presenters/peter-grandstaff.md +++ b/src/_content/presenters/peter-grandstaff.md @@ -1,15 +1,14 @@ --- -github: petergrand -layout: speaker-template -mastodon: null name: Peter Grandstaff override_schedule_title: Opening and Closing Remarks permalink: /presenters/peter-grandstaff/ -photo_url: /static/img/organizers/peter-grandstaff.jpg +photo: /static/img/organizers/peter-grandstaff.jpg slug: peter-grandstaff -title: null -twitter: pgrandstaff -website: https://tworock.io/ +social: + twitter: pgrandstaff + website: https://tworock.io/ + mastodon: null + github: petergrand --- Peter is a Django developer and co-founder of Two Rock Software, a North Carolina based software development company specializing in business workflow automation. He also enjoys solving devops puzzles. When he's not working he loves exploring new foods, gardening, and movement practices like martial arts, aerial dance, and contact improv. diff --git a/_presenters/philip-james.md b/src/_content/presenters/philip-james.md similarity index 81% rename from _presenters/philip-james.md rename to src/_content/presenters/philip-james.md index d17fd416..eec35250 100644 --- a/_presenters/philip-james.md +++ b/src/_content/presenters/philip-james.md @@ -1,15 +1,15 @@ --- company: Crowdalert hidden: false -layout: speaker-template -mastodon: https://phildini.net/@phildini name: Philip James permalink: /presenters/philip-james/ -photo_url: /static/img/presenters/philip-james.png +photo: philip-james.png pronouns: he/him slug: philip-james -twitter: null -website: null +social: + twitter: null + website: null + mastodon: https://phildini.net/@phildini --- Philip James (aka phildini) has been using Python since a friend used a projector at a summer camp to teach him code basics, changing the entire course of his life from "moody theater kid" to "moody (but smiling) Pythonista". Philip has used Python to help build the Internet at Eventbrite and Patreon, and now uses Python and Django every day as CTO at Burb. diff --git a/static/img/presenters/philip-james.png b/src/_content/presenters/philip-james.png similarity index 100% rename from static/img/presenters/philip-james.png rename to src/_content/presenters/philip-james.png diff --git a/src/_content/presenters/presenters.json b/src/_content/presenters/presenters.json new file mode 100644 index 00000000..36c055e7 --- /dev/null +++ b/src/_content/presenters/presenters.json @@ -0,0 +1,4 @@ +{ + "permalink": "/presenter/{{ page.fileSlug }}", + "layout": "presenter" +} diff --git a/static/img/presenters/ramon-huidobro.jpeg b/src/_content/presenters/ramon-huidobro.jpeg similarity index 100% rename from static/img/presenters/ramon-huidobro.jpeg rename to src/_content/presenters/ramon-huidobro.jpeg diff --git a/_presenters/ramon-huidobro.md b/src/_content/presenters/ramon-huidobro.md similarity index 70% rename from _presenters/ramon-huidobro.md rename to src/_content/presenters/ramon-huidobro.md index 7367c616..1532ed2d 100644 --- a/_presenters/ramon-huidobro.md +++ b/src/_content/presenters/ramon-huidobro.md @@ -1,15 +1,15 @@ --- company: Consultant hidden: false -layout: speaker-template -mastodon: https://hola-soy-milk.online/@ramon name: Ramón Huidobro permalink: /presenters/ramon-huidobro/ -photo_url: /static/img/presenters/ramon-huidobro.jpeg +photo: ramon-huidobro.jpeg pronouns: he/him slug: ramon-huidobro -twitter: hola_soy_milk -website: null +social: + twitter: hola_soy_milk + website: null + mastodon: https://hola-soy-milk.online/@ramon --- Ramón Huidobro is a developer advocate and deved enthusiast. He thrives on lifting others up in their tech careers and loves a good CSS challenge. Always excited to talk about teaching tech, especialmente en Español, oder auf Deutsch. diff --git a/static/img/presenters/rana-ransom-alt.jpg b/src/_content/presenters/rana-ransom-alt.jpg similarity index 100% rename from static/img/presenters/rana-ransom-alt.jpg rename to src/_content/presenters/rana-ransom-alt.jpg diff --git a/static/img/presenters/rana-ransom.jpg b/src/_content/presenters/rana-ransom.jpg similarity index 100% rename from static/img/presenters/rana-ransom.jpg rename to src/_content/presenters/rana-ransom.jpg diff --git a/static/img/presenters/richard-yen.jpg b/src/_content/presenters/richard-yen.jpg similarity index 100% rename from static/img/presenters/richard-yen.jpg rename to src/_content/presenters/richard-yen.jpg diff --git a/_presenters/richard-yen.md b/src/_content/presenters/richard-yen.md similarity index 77% rename from _presenters/richard-yen.md rename to src/_content/presenters/richard-yen.md index b47cd2fc..104776d1 100644 --- a/_presenters/richard-yen.md +++ b/src/_content/presenters/richard-yen.md @@ -1,14 +1,14 @@ --- company: EnterpriseDB hidden: false -layout: speaker-template -mastodon: null name: Richard Yen permalink: /presenters/richard-yen/ -photo_url: /static/img/presenters/richard-yen.jpg +photo: richard-yen.jpg slug: richard-yen -twitter: null -website: null +social: + twitter: null + website: null + mastodon: null --- Richard has been using PostgreSQL since v. 7.4 in 2003. He is a Principal Support Engineer at EnterpriseDB, providing technical support to DBAs and developers around the world, and works with many clients ranging from private corporations to government organizations and financial institutions. diff --git a/_presenters/ronald-maravanyika.md b/src/_content/presenters/ronald-maravanyika.md similarity index 72% rename from _presenters/ronald-maravanyika.md rename to src/_content/presenters/ronald-maravanyika.md index 68cf4448..ce05d2c3 100644 --- a/_presenters/ronald-maravanyika.md +++ b/src/_content/presenters/ronald-maravanyika.md @@ -1,15 +1,15 @@ --- company: ZimboPy hidden: false -layout: speaker-template -mastodon: null name: Ronald Maravanyika permalink: /presenters/ronald-maravanyika/ -photo_url: '' +photo: "" pronouns: he/him slug: ronald-maravanyika -twitter: ronn_zw -website: null +social: + twitter: ronn_zw + website: null + mastodon: null --- Co-founder ZimboPy | DSF member | PSF contributing member | DevOps Engineer diff --git a/static/img/presenters/russell-keith-magee.jpg b/src/_content/presenters/russell-keith-magee.jpg similarity index 100% rename from static/img/presenters/russell-keith-magee.jpg rename to src/_content/presenters/russell-keith-magee.jpg diff --git a/static/img/presenters/ruth-ikegah.jpg b/src/_content/presenters/ruth-ikegah.jpg similarity index 100% rename from static/img/presenters/ruth-ikegah.jpg rename to src/_content/presenters/ruth-ikegah.jpg diff --git a/static/img/presenters/ryan-cheley.jpeg b/src/_content/presenters/ryan-cheley.jpeg similarity index 100% rename from static/img/presenters/ryan-cheley.jpeg rename to src/_content/presenters/ryan-cheley.jpeg diff --git a/_presenters/ryan-cheley.md b/src/_content/presenters/ryan-cheley.md similarity index 65% rename from _presenters/ryan-cheley.md rename to src/_content/presenters/ryan-cheley.md index 6f059bfe..c751e6be 100644 --- a/_presenters/ryan-cheley.md +++ b/src/_content/presenters/ryan-cheley.md @@ -1,14 +1,14 @@ --- company: Desert Oasis Healthcare hidden: false -layout: speaker-template -mastodon: https://mastodon.social/@ryancheley name: Ryan Cheley (he/him) permalink: /presenters/ryan-cheley/ -photo_url: /static/img/presenters/ryan-cheley.jpeg +photo: ryan-cheley.jpeg slug: ryan-cheley -twitter: null -website: https://www.ryancheley.com +social: + twitter: null + website: https://www.ryancheley.com + mastodon: https://mastodon.social/@ryancheley --- Ryan Cheley is a Health IT Leader with nearly 15 years of experience implementing Enterprise EHRs, Web, and Data solutions. He works to build solutions that scale with technology and people. diff --git a/static/img/presenters/sage-abdullah.jpeg b/src/_content/presenters/sage-abdullah.jpeg similarity index 100% rename from static/img/presenters/sage-abdullah.jpeg rename to src/_content/presenters/sage-abdullah.jpeg diff --git a/_presenters/sage-abdullah.md b/src/_content/presenters/sage-abdullah.md similarity index 85% rename from _presenters/sage-abdullah.md rename to src/_content/presenters/sage-abdullah.md index 48b87f44..1cbcf2b5 100644 --- a/_presenters/sage-abdullah.md +++ b/src/_content/presenters/sage-abdullah.md @@ -1,15 +1,15 @@ --- company: Torchbox hidden: false -layout: speaker-template -mastodon: https://fosstodon.org/@laymonage name: Sage Abdullah permalink: /presenters/sage-abdullah/ -photo_url: /static/img/presenters/sage-abdullah.jpeg +photo: sage-abdullah.jpeg pronouns: he/him slug: sage-abdullah -twitter: laymonage -website: null +social: + twitter: laymonage + website: null + mastodon: https://fosstodon.org/@laymonage --- I'm Sage and I'm from Jakarta, Indonesia. diff --git a/static/img/presenters/sanyam-khurana.jpeg b/src/_content/presenters/sanyam-khurana.jpeg similarity index 100% rename from static/img/presenters/sanyam-khurana.jpeg rename to src/_content/presenters/sanyam-khurana.jpeg diff --git a/static/img/presenters/scott-cranfill.jpeg b/src/_content/presenters/scott-cranfill.jpeg similarity index 100% rename from static/img/presenters/scott-cranfill.jpeg rename to src/_content/presenters/scott-cranfill.jpeg diff --git a/_presenters/scott-cranfill.md b/src/_content/presenters/scott-cranfill.md similarity index 88% rename from _presenters/scott-cranfill.md rename to src/_content/presenters/scott-cranfill.md index f8c2abc8..090009c9 100644 --- a/_presenters/scott-cranfill.md +++ b/src/_content/presenters/scott-cranfill.md @@ -1,15 +1,15 @@ --- company: NASA Jet Propulsion Laboratory hidden: false -layout: speaker-template -mastodon: null name: Scott Cranfill permalink: /presenters/scott-cranfill/ -photo_url: /static/img/presenters/scott-cranfill.jpeg +photo: scott-cranfill.jpeg pronouns: he/him slug: scott-cranfill -twitter: null -website: null +social: + twitter: null + website: null + mastodon: null --- Scott is currently a full-stack web developer at NASA's [Jet Propulsion Laboratory](https://www.jpl.nasa.gov/) (JPL), where his team uses Django to power the main JPL website, the JPL Space intranet, and a large number of other internal websites. He's also a member of the core team for [Wagtail](https://wagtail.org/), the CMS used on all of the above JPL sites, and is also a part of its accessibility subteam. diff --git a/_presenters/sheena-o-connell.md b/src/_content/presenters/sheena-o-connell.md similarity index 88% rename from _presenters/sheena-o-connell.md rename to src/_content/presenters/sheena-o-connell.md index 35fe6f4d..9ca35573 100644 --- a/_presenters/sheena-o-connell.md +++ b/src/_content/presenters/sheena-o-connell.md @@ -1,15 +1,15 @@ --- company: Umuzi hidden: false -layout: speaker-template -mastodon: https://mastodon.social/@sheenarbw name: Sheena O'Connell permalink: /presenters/sheena-o-connell/ -photo_url: /static/img/presenters/sheena.jpeg +photo: sheena.jpeg pronouns: she/her slug: sheena-o-connell -twitter: sheena_oconnel -website: null +social: + twitter: sheena_oconnel + website: null + mastodon: https://mastodon.social/@sheenarbw --- I've been programming in some form since my early teens. After high school, I went on to get an Honors degree in electrical engineering from the University of the Witwatersrand, South Africa. I've always been drawn to software development and to teaching. I worked for a string of startups and gained a lot of experience in all aspects of software development, from requirements gathering and UX design to implementation, deployment, and monitoring. diff --git a/static/img/presenters/sheena-oconnell.jpg b/src/_content/presenters/sheena-oconnell.jpg similarity index 100% rename from static/img/presenters/sheena-oconnell.jpg rename to src/_content/presenters/sheena-oconnell.jpg diff --git a/static/img/presenters/sheena.jpeg b/src/_content/presenters/sheena.jpeg similarity index 100% rename from static/img/presenters/sheena.jpeg rename to src/_content/presenters/sheena.jpeg diff --git a/static/img/presenters/simon-charette.jpg b/src/_content/presenters/simon-charette.jpg similarity index 100% rename from static/img/presenters/simon-charette.jpg rename to src/_content/presenters/simon-charette.jpg diff --git a/static/img/presenters/simon-willison.jpeg b/src/_content/presenters/simon-willison.jpeg similarity index 100% rename from static/img/presenters/simon-willison.jpeg rename to src/_content/presenters/simon-willison.jpeg diff --git a/static/img/presenters/stephen-mitchell.jpg b/src/_content/presenters/stephen-mitchell.jpg similarity index 100% rename from static/img/presenters/stephen-mitchell.jpg rename to src/_content/presenters/stephen-mitchell.jpg diff --git a/_presenters/stephen-mitchell.md b/src/_content/presenters/stephen-mitchell.md similarity index 83% rename from _presenters/stephen-mitchell.md rename to src/_content/presenters/stephen-mitchell.md index dfce57b3..b64a0a73 100644 --- a/_presenters/stephen-mitchell.md +++ b/src/_content/presenters/stephen-mitchell.md @@ -1,14 +1,14 @@ --- company: Echodot hidden: false -layout: speaker-template -mastodon: null name: Stephen Mitchell permalink: /presenters/stephen-mitchell/ -photo_url: /static/img/presenters/stephen-mitchell.jpg +photo: stephen-mitchell.jpg slug: stephen-mitchell -twitter: null -website: null +social: + twitter: null + website: null + mastodon: null --- Stephen has been working with Django since the beta in 2006. Working out of the Philadelphia area, Stephen has varied experience in programming from sales companies, to healthcare tech, and is currently working at the media streaming site Volume.com. He is the creator and maintainer of django-mail-panel, Red: UI for Redis, and a contributor to many other Django-related open-source projects. diff --git a/static/img/presenters/syed-dawoud-sheraz.jpg b/src/_content/presenters/syed-dawoud-sheraz.jpg similarity index 100% rename from static/img/presenters/syed-dawoud-sheraz.jpg rename to src/_content/presenters/syed-dawoud-sheraz.jpg diff --git a/static/img/presenters/thiago-bellini-ribeiro.jpeg b/src/_content/presenters/thiago-bellini-ribeiro.jpeg similarity index 100% rename from static/img/presenters/thiago-bellini-ribeiro.jpeg rename to src/_content/presenters/thiago-bellini-ribeiro.jpeg diff --git a/_presenters/thiago-bellini-ribeiro.md b/src/_content/presenters/thiago-bellini-ribeiro.md similarity index 88% rename from _presenters/thiago-bellini-ribeiro.md rename to src/_content/presenters/thiago-bellini-ribeiro.md index dce80188..d5816e6d 100644 --- a/_presenters/thiago-bellini-ribeiro.md +++ b/src/_content/presenters/thiago-bellini-ribeiro.md @@ -1,15 +1,15 @@ --- company: CTO at BLB Ventures hidden: false -layout: speaker-template -mastodon: null name: Thiago Bellini Ribeiro permalink: /presenters/thiago-bellini-ribeiro/ -photo_url: /static/img/presenters/thiago-bellini-ribeiro.jpeg +photo: thiago-bellini-ribeiro.jpeg pronouns: he/him slug: thiago-bellini-ribeiro -twitter: _bellini666 -website: https://bellini.dev +social: + twitter: _bellini666 + website: https://bellini.dev + mastodon: null --- I'm a 35-year-old software developer based in Ribeirão Preto, Brazil with a passion for Python programming. Since embarking on my software development journey in 2007, I've honed my skills and specialized in Python development since 2011. Over the years, I've collaborated on numerous Python-based applications, always striving to contribute to the open-source community in meaningful ways. diff --git a/_presenters/thibaud-colas.md b/src/_content/presenters/thibaud-colas.md similarity index 76% rename from _presenters/thibaud-colas.md rename to src/_content/presenters/thibaud-colas.md index 4bfda3c7..31df5e62 100644 --- a/_presenters/thibaud-colas.md +++ b/src/_content/presenters/thibaud-colas.md @@ -1,14 +1,14 @@ --- company: Torchbox hidden: false -layout: speaker-template -mastodon: null name: Thibaud Colas permalink: /presenters/thibaud-colas/ -photo_url: '' +photo: "" slug: thibaud-colas -twitter: thibaud_colas -website: null +social: + twitter: thibaud_colas + website: null + mastodon: null --- Thibaud is a developer interested in all things accessibility and sustainability. I’m a core contributor to the Wagtail open source CMS, and part of Django’s accessibility team. diff --git a/static/img/presenters/thulasidharan-lg.jpeg b/src/_content/presenters/thulasidharan-lg.jpeg similarity index 100% rename from static/img/presenters/thulasidharan-lg.jpeg rename to src/_content/presenters/thulasidharan-lg.jpeg diff --git a/static/img/presenters/tim-schilling.jpeg b/src/_content/presenters/tim-schilling.jpeg similarity index 100% rename from static/img/presenters/tim-schilling.jpeg rename to src/_content/presenters/tim-schilling.jpeg diff --git a/static/img/presenters/timothy-allen.jpg b/src/_content/presenters/timothy-allen.jpg similarity index 100% rename from static/img/presenters/timothy-allen.jpg rename to src/_content/presenters/timothy-allen.jpg diff --git a/static/img/presenters/tobias-mcnulty.jpeg b/src/_content/presenters/tobias-mcnulty.jpeg similarity index 100% rename from static/img/presenters/tobias-mcnulty.jpeg rename to src/_content/presenters/tobias-mcnulty.jpeg diff --git a/_presenters/tobias-mcnulty.md b/src/_content/presenters/tobias-mcnulty.md similarity index 80% rename from _presenters/tobias-mcnulty.md rename to src/_content/presenters/tobias-mcnulty.md index faba4d42..6da65850 100644 --- a/_presenters/tobias-mcnulty.md +++ b/src/_content/presenters/tobias-mcnulty.md @@ -1,15 +1,15 @@ --- company: Caktus Group hidden: false -layout: speaker-template -mastodon: https://fosstodon.org/@tobiasmcnulty name: Tobias McNulty permalink: /presenters/tobias-mcnulty/ -photo_url: /static/img/presenters/tobias-mcnulty.jpeg +photo: tobias-mcnulty.jpeg pronouns: he/him slug: tobias-mcnulty -twitter: tobiasmcnulty -website: null +social: + twitter: tobiasmcnulty + website: null + mastodon: https://fosstodon.org/@tobiasmcnulty --- Tobias co-founded Caktus in 2007 and, as Chief Executive Officer, guides the strategic vision of the company. He has been an active member of the Django development community, is a core developer of the RapidSMS framework, and makes regular contributions to both the projects. He is the co-author of and chief advocate for the messages framework that was introduced in Django 1.2 and has helped his co-founder Colin Copeland organize several successful Django development sprints in the North Carolina Research Triangle area. diff --git a/_presenters/velda-kiara.md b/src/_content/presenters/velda-kiara.md similarity index 94% rename from _presenters/velda-kiara.md rename to src/_content/presenters/velda-kiara.md index b4e52c7d..0ff014ff 100644 --- a/_presenters/velda-kiara.md +++ b/src/_content/presenters/velda-kiara.md @@ -1,15 +1,15 @@ --- company: Open Source Community Africa Nairobi hidden: false -layout: speaker-template -mastodon: null name: Velda Kiara permalink: /presenters/velda-kiara/ -photo_url: '' +photo: "" pronouns: she/her slug: velda-kiara -twitter: VeldaKiara -website: null +social: + twitter: VeldaKiara + website: null + mastodon: null --- I am a seasoned web developer with a passion for creating high-quality software solutions. With over 2 years of experience in writing Django and React, I have honed my skills in developing custom web applications that are scalable, efficient, and user-friendly. My expertise in frontend and backend web development allows them to build end-to-end solutions that meet clients' needs. diff --git a/static/img/presenters/victor-ogunjobi.jpeg b/src/_content/presenters/victor-ogunjobi.jpeg similarity index 100% rename from static/img/presenters/victor-ogunjobi.jpeg rename to src/_content/presenters/victor-ogunjobi.jpeg diff --git a/_presenters/victor-ogunjobi.md b/src/_content/presenters/victor-ogunjobi.md similarity index 85% rename from _presenters/victor-ogunjobi.md rename to src/_content/presenters/victor-ogunjobi.md index f2d0c8f9..01b84a0a 100644 --- a/_presenters/victor-ogunjobi.md +++ b/src/_content/presenters/victor-ogunjobi.md @@ -1,14 +1,14 @@ --- company: Code Warriors hidden: false -layout: speaker-template -mastodon: null name: Victor Ogunjobi permalink: /presenters/victor-ogunjobi/ -photo_url: /static/img/presenters/victor-ogunjobi.jpeg +photo: victor-ogunjobi.jpeg slug: victor-ogunjobi -twitter: chemicopy_ -website: null +social: + twitter: chemicopy_ + website: null + mastodon: null --- Victor Ogunjobi is a Data Scientist and Inclusivity Advocate. He currently serves as a Student Ambassador at Code Warriors, a renowned organization that provides comprehensive training and mentorship to aspiring coders. diff --git a/static/img/presenters/wes-kendall.jpeg b/src/_content/presenters/wes-kendall.jpeg similarity index 100% rename from static/img/presenters/wes-kendall.jpeg rename to src/_content/presenters/wes-kendall.jpeg diff --git a/_presenters/wes-kendall.md b/src/_content/presenters/wes-kendall.md similarity index 77% rename from _presenters/wes-kendall.md rename to src/_content/presenters/wes-kendall.md index c54101a6..edd24d62 100644 --- a/_presenters/wes-kendall.md +++ b/src/_content/presenters/wes-kendall.md @@ -1,14 +1,14 @@ --- company: Standard Metrics hidden: false -layout: speaker-template -mastodon: null name: Wes Kendall permalink: /presenters/wes-kendall/ -photo_url: /static/img/presenters/wes-kendall.jpeg +photo: wes-kendall.jpeg slug: wes-kendall -twitter: null -website: null +social: + twitter: null + website: null + mastodon: null --- Wes Kendall is the primary author and maintainer of several Django/Postgres libraries in the [github.com/Opus10](github.com/Opus10) organization. He's been working with Django for the better part of a decade now and currently uses Django at [Standard Metrics](https://standardmetrics.io) diff --git a/static/img/presenters/will-vincent.png b/src/_content/presenters/will-vincent.png similarity index 100% rename from static/img/presenters/will-vincent.png rename to src/_content/presenters/will-vincent.png diff --git a/static/img/sponsors/Andela_StackedLogo_TM_2021_AndelaBlue.png b/src/_content/sponsors/Andela_StackedLogo_TM_2021_AndelaBlue.png similarity index 100% rename from static/img/sponsors/Andela_StackedLogo_TM_2021_AndelaBlue.png rename to src/_content/sponsors/Andela_StackedLogo_TM_2021_AndelaBlue.png diff --git a/static/img/sponsors/Ansible-Mark-Large-RGB-Pool.png b/src/_content/sponsors/Ansible-Mark-Large-RGB-Pool.png similarity index 100% rename from static/img/sponsors/Ansible-Mark-Large-RGB-Pool.png rename to src/_content/sponsors/Ansible-Mark-Large-RGB-Pool.png diff --git a/static/img/sponsors/Kolo_black.png b/src/_content/sponsors/Kolo_black.png similarity index 100% rename from static/img/sponsors/Kolo_black.png rename to src/_content/sponsors/Kolo_black.png diff --git a/static/img/sponsors/Nextbite.png b/src/_content/sponsors/Nextbite.png similarity index 100% rename from static/img/sponsors/Nextbite.png rename to src/_content/sponsors/Nextbite.png diff --git a/static/img/sponsors/ODLogo_Black.svg b/src/_content/sponsors/ODLogo_Black.svg similarity index 100% rename from static/img/sponsors/ODLogo_Black.svg rename to src/_content/sponsors/ODLogo_Black.svg diff --git a/static/img/sponsors/Octopus_Energy.png b/src/_content/sponsors/Octopus_Energy.png similarity index 100% rename from static/img/sponsors/Octopus_Energy.png rename to src/_content/sponsors/Octopus_Energy.png diff --git a/static/img/sponsors/STG_condensed.png b/src/_content/sponsors/STG_condensed.png similarity index 100% rename from static/img/sponsors/STG_condensed.png rename to src/_content/sponsors/STG_condensed.png diff --git a/static/img/sponsors/ScoutAPM_logo_rounded_square.png b/src/_content/sponsors/ScoutAPM_logo_rounded_square.png similarity index 100% rename from static/img/sponsors/ScoutAPM_logo_rounded_square.png rename to src/_content/sponsors/ScoutAPM_logo_rounded_square.png diff --git a/static/img/sponsors/SixFeetUp_Logo.png b/src/_content/sponsors/SixFeetUp_Logo.png similarity index 100% rename from static/img/sponsors/SixFeetUp_Logo.png rename to src/_content/sponsors/SixFeetUp_Logo.png diff --git a/static/img/sponsors/SpatialChat_ConferenceTheater.png b/src/_content/sponsors/SpatialChat_ConferenceTheater.png similarity index 100% rename from static/img/sponsors/SpatialChat_ConferenceTheater.png rename to src/_content/sponsors/SpatialChat_ConferenceTheater.png diff --git a/static/img/sponsors/SpatialChat_Discord.png b/src/_content/sponsors/SpatialChat_Discord.png similarity index 100% rename from static/img/sponsors/SpatialChat_Discord.png rename to src/_content/sponsors/SpatialChat_Discord.png diff --git a/static/img/sponsors/SpatialChat_Library.png b/src/_content/sponsors/SpatialChat_Library.png similarity index 100% rename from static/img/sponsors/SpatialChat_Library.png rename to src/_content/sponsors/SpatialChat_Library.png diff --git a/static/img/sponsors/SpatialChat_Login.png b/src/_content/sponsors/SpatialChat_Login.png similarity index 100% rename from static/img/sponsors/SpatialChat_Login.png rename to src/_content/sponsors/SpatialChat_Login.png diff --git a/static/img/sponsors/SpatialChat_MicAndCamera.png b/src/_content/sponsors/SpatialChat_MicAndCamera.png similarity index 100% rename from static/img/sponsors/SpatialChat_MicAndCamera.png rename to src/_content/sponsors/SpatialChat_MicAndCamera.png diff --git a/static/img/sponsors/SpatialChat_PanelRoom.png b/src/_content/sponsors/SpatialChat_PanelRoom.png similarity index 100% rename from static/img/sponsors/SpatialChat_PanelRoom.png rename to src/_content/sponsors/SpatialChat_PanelRoom.png diff --git a/static/img/sponsors/SpatialChat_SignUp.png b/src/_content/sponsors/SpatialChat_SignUp.png similarity index 100% rename from static/img/sponsors/SpatialChat_SignUp.png rename to src/_content/sponsors/SpatialChat_SignUp.png diff --git a/static/img/sponsors/SpatialChat_WorkshopRoom.png b/src/_content/sponsors/SpatialChat_WorkshopRoom.png similarity index 100% rename from static/img/sponsors/SpatialChat_WorkshopRoom.png rename to src/_content/sponsors/SpatialChat_WorkshopRoom.png diff --git a/static/img/sponsors/Two-Rock-Software-Logo.svg b/src/_content/sponsors/Two-Rock-Software-Logo.svg similarity index 100% rename from static/img/sponsors/Two-Rock-Software-Logo.svg rename to src/_content/sponsors/Two-Rock-Software-Logo.svg diff --git a/src/_content/sponsors/ansible.md b/src/_content/sponsors/ansible.md new file mode 100644 index 00000000..49e40fd0 --- /dev/null +++ b/src/_content/sponsors/ansible.md @@ -0,0 +1,20 @@ +--- +hidden: true +level: Gold +name: Ansible +date: 2023-08-24 +logo: + filename: Ansible-Mark-Large-RGB-Pool.png + orientation: portrait +url: + target: 'https://www.ansible.com/community' + label: ansible.com +--- +Automation powered by community. + +Ansible is an open source, command-line IT automation software application written in Python. It can configure systems, deploy software, and orchestrate advanced workflows to support application deployment, system updates, and more. + +Open source and collaboration are at the heart of the Ansible community. Ansible Core + Collections, Ansible Galaxy, AWX, and other upstream projects to Red Hat Ansible Automation Platform are created by — and supported with — contributions from active community members to solve automation challenges that fuel enterprise innovation. + + + diff --git a/src/_content/sponsors/aptible.md b/src/_content/sponsors/aptible.md new file mode 100644 index 00000000..cea788be --- /dev/null +++ b/src/_content/sponsors/aptible.md @@ -0,0 +1,17 @@ +--- +hidden: false +level: Platinum +name: Aptible +date: 2023-08-15 +logo: + filename: aptible.png + orientation: landscape + +url: + target: 'https://www.aptible.com/' + label: aptible.com +--- +Aptible is a platform as a service (PaaS) that’s built for engineering teams who need highly scalable, reliable, and secure infrastructure for their mission critical applications. Our web app and API hosting platform abstracts away any infrastructure complexity, and automates the work of provisioning, managing, and scaling infrastructure, so teams can focus on what actually matters: their product. + + + diff --git a/static/img/sponsors/aptible.png b/src/_content/sponsors/aptible.png similarity index 100% rename from static/img/sponsors/aptible.png rename to src/_content/sponsors/aptible.png diff --git a/static/img/sponsors/black_preferred_TestDriven.png b/src/_content/sponsors/black_preferred_TestDriven.png similarity index 100% rename from static/img/sponsors/black_preferred_TestDriven.png rename to src/_content/sponsors/black_preferred_TestDriven.png diff --git a/static/img/sponsors/butter_black.svg b/src/_content/sponsors/butter_black.svg similarity index 100% rename from static/img/sponsors/butter_black.svg rename to src/_content/sponsors/butter_black.svg diff --git a/static/img/sponsors/caktus-logo-square.png b/src/_content/sponsors/caktus-logo-square.png similarity index 100% rename from static/img/sponsors/caktus-logo-square.png rename to src/_content/sponsors/caktus-logo-square.png diff --git a/src/_content/sponsors/caktus.md b/src/_content/sponsors/caktus.md new file mode 100644 index 00000000..d4d30b29 --- /dev/null +++ b/src/_content/sponsors/caktus.md @@ -0,0 +1,16 @@ +--- +hidden: true +level: Platinum +name: Caktus Consulting Group LLC +date: 2023-08-24 +logo: + filename: caktus-logo-square.png + orientation: portrait +url: + target: 'https://www.caktusgroup.com/' + label: caktusgroup.com +--- +A web dev shop started by some friends out of college that grew into an employee-owned, self-directed agency working across governmental systems, social impact organizations, and other industries with a specialty for Django and Python development. We're curious and we love meeting interesting people. If you want to trade stories, share clever ideas about the future of work, or compare opportunities , schedule an exploratory chat with our Chief of Curation! + + + diff --git a/static/img/sponsors/codered.png b/src/_content/sponsors/codered.png similarity index 100% rename from static/img/sponsors/codered.png rename to src/_content/sponsors/codered.png diff --git a/static/img/sponsors/coherence.jpg b/src/_content/sponsors/coherence.jpg similarity index 100% rename from static/img/sponsors/coherence.jpg rename to src/_content/sponsors/coherence.jpg diff --git a/src/_content/sponsors/coherence.md b/src/_content/sponsors/coherence.md new file mode 100644 index 00000000..5b0f1430 --- /dev/null +++ b/src/_content/sponsors/coherence.md @@ -0,0 +1,16 @@ +--- +hidden: true +level: Gold +name: Coherence +date: 2023-08-18 +logo: + filename: coherence.jpg + orientation: landscape +url: + target: 'https://www.withcoherence.com/' + label: withcoherence.com +--- +Coherence provides automated environments for developing, testing, and deploying your app in your AWS or GCP account. With a minimal yaml file, you get a Heroku-like experience with preview environments, CI/CD pipelines, and production deployments configured for you as a best in class development platform. + + + diff --git a/src/_content/sponsors/defna.md b/src/_content/sponsors/defna.md new file mode 100644 index 00000000..4c3b0542 --- /dev/null +++ b/src/_content/sponsors/defna.md @@ -0,0 +1,17 @@ +--- +hidden: false +level: Community +name: DEFNA +date: 2021-10-04 +logo: + filename: defna.png + orientation: landscape + +url: + target: 'https://www.defna.org/' + label: defna.org +--- +Django Events Foundation North America (DEFNA) is a non-profit based in California USA. It was formed in 2015 at the request of the Django Software Foundation (DSF) to run DjangoCon US. The DSF have licensed DEFNA to run DjangoCon US since 2015. Beyond DjangoCon US we also plan to be involved with other events in North America that cover the education and outreach of Django. + + + diff --git a/static/img/sponsors/defna.png b/src/_content/sponsors/defna.png similarity index 100% rename from static/img/sponsors/defna.png rename to src/_content/sponsors/defna.png diff --git a/static/img/sponsors/django-logo-positive.svg b/src/_content/sponsors/django-logo-positive.svg similarity index 100% rename from static/img/sponsors/django-logo-positive.svg rename to src/_content/sponsors/django-logo-positive.svg diff --git a/src/_content/sponsors/dsf.md b/src/_content/sponsors/dsf.md new file mode 100644 index 00000000..31fe4d40 --- /dev/null +++ b/src/_content/sponsors/dsf.md @@ -0,0 +1,17 @@ +--- +hidden: false +level: Opportunity Grant +name: Django Software Foundation +date: 2021-10-04 +logo: + filename: django-logo-positive.svg + orientation: landscape + +url: + target: 'https://www.djangoproject.com/foundation/' + label: djangoproject.com/foundation +--- +Development of Django is supported by an independent foundation established as a 501(c)(3) non-profit. Like most open-source foundations, the goal of the Django Software Foundation is to promote, support, and advance its open-source project: in our case, the Django Web framework. + + + diff --git a/static/img/sponsors/elastic-logo.svg b/src/_content/sponsors/elastic-logo.svg similarity index 100% rename from static/img/sponsors/elastic-logo.svg rename to src/_content/sponsors/elastic-logo.svg diff --git a/static/img/sponsors/foxley-talent.jpg b/src/_content/sponsors/foxley-talent.jpg similarity index 100% rename from static/img/sponsors/foxley-talent.jpg rename to src/_content/sponsors/foxley-talent.jpg diff --git a/src/_content/sponsors/foxleytalent.md b/src/_content/sponsors/foxleytalent.md new file mode 100644 index 00000000..373cf19f --- /dev/null +++ b/src/_content/sponsors/foxleytalent.md @@ -0,0 +1,18 @@ +--- +hidden: true +level: Gold +name: Foxley Talent +date: 2023-06-29 +logo: + filename: foxley-talent.jpg + orientation: landscape +url: + target: 'https://www.foxleytalent.com' + label: foxleytalent.org +--- +Foxley Talent is the go-to recruiter for the django community in America. We specialise in helping django engineers move into new jobs with great companies. Speak to us throughout (or before) the conference for job opportunities, hiring solutions or career advice. + +As a part of the community and Silver Member of the Django Software Foundation we donate 5% of our profits to the DSF. + + + diff --git a/static/img/sponsors/google.png b/src/_content/sponsors/google.png similarity index 100% rename from static/img/sponsors/google.png rename to src/_content/sponsors/google.png diff --git a/src/_content/sponsors/healthvana.md b/src/_content/sponsors/healthvana.md new file mode 100644 index 00000000..2013b3d0 --- /dev/null +++ b/src/_content/sponsors/healthvana.md @@ -0,0 +1,17 @@ +--- +hidden: true +level: Bronze +name: Healthvana +date: 2022-08-05 +logo: + filename: healthvana_logo.png + orientation: landscape +url: + target: 'https://healthvana.com/' + label: healthvana.com +--- +Healthvana uses modern technology to make healthcare better for patients - and has done so over 50 million times since 2015. Its HIPAA-compliant patient communication platform is used by healthcare providers to engage their patient populations in over 20 states. The company's evidence-based solutions lead to better health outcomes, with a focus on underserved populations. Healthvana’s work has been featured everywhere from Fox News to the New York Times, and even at the White House. For more information, visit www.Healthvana.com. + + + + diff --git a/static/img/sponsors/healthvana_logo.png b/src/_content/sponsors/healthvana_logo.png similarity index 100% rename from static/img/sponsors/healthvana_logo.png rename to src/_content/sponsors/healthvana_logo.png diff --git a/static/img/sponsors/influxdata.svg b/src/_content/sponsors/influxdata.svg similarity index 100% rename from static/img/sponsors/influxdata.svg rename to src/_content/sponsors/influxdata.svg diff --git a/static/img/sponsors/jbslogo.png b/src/_content/sponsors/jbslogo.png similarity index 100% rename from static/img/sponsors/jbslogo.png rename to src/_content/sponsors/jbslogo.png diff --git a/src/_content/sponsors/jbssolutions.md b/src/_content/sponsors/jbssolutions.md new file mode 100644 index 00000000..b93ad77c --- /dev/null +++ b/src/_content/sponsors/jbssolutions.md @@ -0,0 +1,20 @@ +--- +hidden: true +level: Gold +name: JBS Solutions +date: 2022-09-15 +logo: + filename: jbslogo.png + orientation: landscape +url: + target: 'https://www.jbssolutions.com/' + label: www.jbssolutions.com +hiring_url: 'https://www.jbssolutions.com/careers/career-opportunities/' +--- +JBS is a highly experienced team of senior developers and technology trailblazers obsessed with accelerating business +innovation at any size. From high-growth startups to Fortune 500 organizations, we are problem-solvers orchestrating +software development with the right harmony of passion and pragmatism to closely align with your business needs and +growth. + + + diff --git a/src/_content/sponsors/jetbrains.md b/src/_content/sponsors/jetbrains.md new file mode 100644 index 00000000..80968523 --- /dev/null +++ b/src/_content/sponsors/jetbrains.md @@ -0,0 +1,16 @@ +--- +hidden: true +level: Gold +name: Jetbrains +date: 2023-09-11 +logo: + filename: jetbrains.png + orientation: portrait +url: + target: 'https://www.jetbrains.com/' + label: jetbrains.com +--- +We build our software so you can enjoy building yours + + + diff --git a/static/img/sponsors/jetbrains.png b/src/_content/sponsors/jetbrains.png similarity index 100% rename from static/img/sponsors/jetbrains.png rename to src/_content/sponsors/jetbrains.png diff --git a/static/img/sponsors/kloppindustries.png b/src/_content/sponsors/kloppindustries.png similarity index 100% rename from static/img/sponsors/kloppindustries.png rename to src/_content/sponsors/kloppindustries.png diff --git a/src/_content/sponsors/lincolnloop.md b/src/_content/sponsors/lincolnloop.md new file mode 100644 index 00000000..345261ba --- /dev/null +++ b/src/_content/sponsors/lincolnloop.md @@ -0,0 +1,17 @@ +--- +hidden: true +level: Gold +name: Lincoln Loop +date: 2022-06-21 +logo: + filename: ll_logo_landscape_color.svg + orientation: landscape +hiring_url: false +url: + target: 'https://lincolnloop.com/' + label: lincolnloop.com +--- +Lincoln Loop is a full-service software development agency with a focus on building scalable content platforms for publishers, non-profits & educators. Since 2007 their emphasis on quality in an agile environment has helped numerous startups and high-traffic sites grow their businesses. In addition to rock-solid Python and Django-powered backends, Lincoln Loop provides user experience, deployment, and real-time application development with JavaScript. + + + diff --git a/static/img/sponsors/ll_logo_landscape_color.svg b/src/_content/sponsors/ll_logo_landscape_color.svg similarity index 100% rename from static/img/sponsors/ll_logo_landscape_color.svg rename to src/_content/sponsors/ll_logo_landscape_color.svg diff --git a/static/img/sponsors/microsoftlogo.png b/src/_content/sponsors/microsoftlogo.png similarity index 100% rename from static/img/sponsors/microsoftlogo.png rename to src/_content/sponsors/microsoftlogo.png diff --git a/static/img/sponsors/netlandish640trans.png b/src/_content/sponsors/netlandish640trans.png similarity index 100% rename from static/img/sponsors/netlandish640trans.png rename to src/_content/sponsors/netlandish640trans.png diff --git a/static/img/sponsors/newrelic.png b/src/_content/sponsors/newrelic.png similarity index 100% rename from static/img/sponsors/newrelic.png rename to src/_content/sponsors/newrelic.png diff --git a/static/img/sponsors/octologo.svg b/src/_content/sponsors/octologo.svg similarity index 100% rename from static/img/sponsors/octologo.svg rename to src/_content/sponsors/octologo.svg diff --git a/static/img/sponsors/oddbird.svg b/src/_content/sponsors/oddbird.svg similarity index 100% rename from static/img/sponsors/oddbird.svg rename to src/_content/sponsors/oddbird.svg diff --git a/static/img/sponsors/oreilly.png b/src/_content/sponsors/oreilly.png similarity index 100% rename from static/img/sponsors/oreilly.png rename to src/_content/sponsors/oreilly.png diff --git a/static/img/sponsors/pathai.png b/src/_content/sponsors/pathai.png similarity index 100% rename from static/img/sponsors/pathai.png rename to src/_content/sponsors/pathai.png diff --git a/static/img/sponsors/pglogo.png b/src/_content/sponsors/pglogo.png similarity index 100% rename from static/img/sponsors/pglogo.png rename to src/_content/sponsors/pglogo.png diff --git a/static/img/sponsors/pgxlogo.png b/src/_content/sponsors/pgxlogo.png similarity index 100% rename from static/img/sponsors/pgxlogo.png rename to src/_content/sponsors/pgxlogo.png diff --git a/src/_content/sponsors/platformsh.md b/src/_content/sponsors/platformsh.md new file mode 100644 index 00000000..68f71f1b --- /dev/null +++ b/src/_content/sponsors/platformsh.md @@ -0,0 +1,16 @@ +--- +hidden: true +level: Diamond +name: Platform.sh +date: 2023-06-29 +logo: + filename: platformsh.png + orientation: landscape +url: + target: 'https://platform.sh/' + label: platform.sh +--- +Platform.sh is a unified, secure, enterprise-grade platform for building, running and scaling fleets of websites and applications. + + + diff --git a/static/img/sponsors/platformsh.png b/src/_content/sponsors/platformsh.png similarity index 100% rename from static/img/sponsors/platformsh.png rename to src/_content/sponsors/platformsh.png diff --git a/static/img/sponsors/polkadot.svg b/src/_content/sponsors/polkadot.svg similarity index 100% rename from static/img/sponsors/polkadot.svg rename to src/_content/sponsors/polkadot.svg diff --git a/static/img/sponsors/psf-logo.svg b/src/_content/sponsors/psf-logo.svg similarity index 100% rename from static/img/sponsors/psf-logo.svg rename to src/_content/sponsors/psf-logo.svg diff --git a/src/_content/sponsors/psf.md b/src/_content/sponsors/psf.md new file mode 100644 index 00000000..f2a25bb3 --- /dev/null +++ b/src/_content/sponsors/psf.md @@ -0,0 +1,17 @@ +--- +hidden: false +level: Opportunity Grant +name: Python Software Foundation +date: 2021-10-04 +logo: + filename: psf-logo.svg + orientation: landscape + +url: + target: 'https://www.python.org/psf/' + label: python.org/psf +--- +The Python Software Foundation (PSF) is a 501(c)(3) non-profit corporation that holds the intellectual property rights behind the Python programming language. We manage the open source licensing for Python version 2.1 and later and own and protect the trademarks associated with Python. We also run the North American PyCon conference annually, support other Python conferences around the world, and fund Python related development with our grants program and by funding special projects. + + + diff --git a/static/img/sponsors/python-community-news.jpg b/src/_content/sponsors/python-community-news.jpg similarity index 100% rename from static/img/sponsors/python-community-news.jpg rename to src/_content/sponsors/python-community-news.jpg diff --git a/src/_content/sponsors/revsys.md b/src/_content/sponsors/revsys.md new file mode 100644 index 00000000..521cec58 --- /dev/null +++ b/src/_content/sponsors/revsys.md @@ -0,0 +1,17 @@ +--- +hidden: true +level: Platinum +name: REVSYS +date: 2022-06-21 +logo: + filename: revsys.png + orientation: portrait + +url: + target: 'http://www.revsys.com/' + label: revsys.com +--- +We are performance tuners, Python and Django experts, infrastructure and scaling architects. Your best opportunity for success in any situation is to have access to the highest level of knowledge and a thorough understanding of how to make the most of it. What you don’t know can hurt you. Let us help you over and around the bumps in the road you are on. At REVSYS, we help our clients with architecture decisions, implementing best practices, identifying cost savings, improving development velocity, mentoring, and ops automation. You need to move fast. We can help rev up your people, processes, and products. + + + diff --git a/static/img/sponsors/revsys.png b/src/_content/sponsors/revsys.png similarity index 100% rename from static/img/sponsors/revsys.png rename to src/_content/sponsors/revsys.png diff --git a/src/_content/sponsors/rollbar.md b/src/_content/sponsors/rollbar.md new file mode 100644 index 00000000..c56b6602 --- /dev/null +++ b/src/_content/sponsors/rollbar.md @@ -0,0 +1,18 @@ +--- +hidden: true +level: Gold +name: Rollbar +date: 2023-08-17 +logo: + filename: rollbar.svg + orientation: landscape +url: + target: >- + https://rollbar.com/?utm_source=django&utm_campaign=django&utm_medium=django + label: rollbar.com +hiring_url: 'https://rollbar.com/careers/' +--- +Rollbar is the leading error monitoring platform that proactively discovers, predicts, and remediates errors with real-time AI-assisted workflows. With Rollbar, developers continually improve their code and constantly innovate rather than spending time monitoring, investigating, and debugging. Try Rollbar with your code today! + + + diff --git a/static/img/sponsors/rollbar.svg b/src/_content/sponsors/rollbar.svg similarity index 100% rename from static/img/sponsors/rollbar.svg rename to src/_content/sponsors/rollbar.svg diff --git a/src/_content/sponsors/scout-apm.md b/src/_content/sponsors/scout-apm.md new file mode 100644 index 00000000..34986059 --- /dev/null +++ b/src/_content/sponsors/scout-apm.md @@ -0,0 +1,19 @@ +--- +hidden: true +level: Gold +name: Scout APM +date: 2023-09-10 +logo: + filename: ScoutAPM_logo_rounded_square.png + orientation: portrait +url: + target: >- + https://scoutapm.com/python-monitoring?utm_campaign=event_link&utm_medium=event&utm_source=djangocon + label: scoutapm.com +--- +Scout APM is Django Application Performance Monitoring that streamlines troubleshooting by helping developers find and fix performance issues before customers ever see them. With real-time alerting, a developer-centric UI, and tracing logic that ties bottlenecks directly to source code, Scout APM helps you spend less time debugging and more time building a great product. + +Quickly identify, prioritize, and resolve Python performance problems – memory leaks, N+1 queries, slow database queries, and more – with an agent that instruments the dependencies you need at a fraction of the overhead. + + + diff --git a/src/_content/sponsors/sentry.md b/src/_content/sponsors/sentry.md new file mode 100644 index 00000000..d8c5fe3d --- /dev/null +++ b/src/_content/sponsors/sentry.md @@ -0,0 +1,18 @@ +--- +hidden: true +level: Gold +name: Sentry +date: 2023-08-17 +logo: + filename: sentry.svg + orientation: landscape +url: + target: 'https://sentry.io/for/django/' + label: sentry.io +hiring_url: 'https://sentry.io/careers/' +--- +Sentry is the application monitoring platform for development teams to holistically monitor their code health from the frontend to the backend to see clearer, solve quicker, and learn continuously. +growth. + + + diff --git a/static/img/sponsors/sentry.svg b/src/_content/sponsors/sentry.svg similarity index 100% rename from static/img/sponsors/sentry.svg rename to src/_content/sponsors/sentry.svg diff --git a/src/_content/sponsors/sixfeetup.md b/src/_content/sponsors/sixfeetup.md new file mode 100644 index 00000000..d40595cd --- /dev/null +++ b/src/_content/sponsors/sixfeetup.md @@ -0,0 +1,20 @@ +--- +hidden: true +level: Diamond +name: Six Feet Up +date: 2022-07-20 +logo: + filename: SixFeetUp_Logo.png + orientation: landscape +url: + target: 'https://www.sixfeetup.com/?utm_source=djangocon2023' + label: sixfeetup.com +--- +Six Feet Up is dedicated to accelerating your impact as a tech leader, making the world a better place. As a consulting company specializing in Python and AI for good, we empower you to make informed decisions, access accurate data faster and scale up your operations. Our expert engineers are here to help you with application development, AI, and big data. + +We value human life and our shared Earth. If you're passionate about climate action, clean energy, or initiatives that benefit humankind, you're in the right place. In fact, our goal is to complete 10 IMPACTFUL Projects — defined as impressive, purposeful, and transformative — by 2025 with clients like you. + +Driven by the EOS Process™ and home to an AWS Hero, Six Feet Up is a woman-owned and gender balanced software company. We're a top 10 US Custom Software Development Company according to Clutch.co. Organizations like Capital One, NASA, Purdue University, and UNEP have leveraged our reliable software solutions since 1999. We’re eager to help you achieve your goals. + + + diff --git a/src/_content/sponsors/sponsors.json b/src/_content/sponsors/sponsors.json new file mode 100644 index 00000000..5df2e98b --- /dev/null +++ b/src/_content/sponsors/sponsors.json @@ -0,0 +1,3 @@ +{ + "permalink": false +} diff --git a/static/img/sponsors/summit-technology-group.png b/src/_content/sponsors/summit-technology-group.png similarity index 100% rename from static/img/sponsors/summit-technology-group.png rename to src/_content/sponsors/summit-technology-group.png diff --git a/static/img/sponsors/swan-softweb-logo.svg b/src/_content/sponsors/swan-softweb-logo.svg similarity index 100% rename from static/img/sponsors/swan-softweb-logo.svg rename to src/_content/sponsors/swan-softweb-logo.svg diff --git a/src/_content/sponsors/testdrivenio.md b/src/_content/sponsors/testdrivenio.md new file mode 100644 index 00000000..30328d6c --- /dev/null +++ b/src/_content/sponsors/testdrivenio.md @@ -0,0 +1,16 @@ +--- +hidden: true +level: Bronze +name: TestDriven.io +date: 2022-08-08 +logo: + filename: black_preferred_TestDriven.png + orientation: landscape +url: + target: 'https://testdriven.io' + label: testdriven.io +--- +TestDriven.io is a training company that focuses on teaching mid to senior level web developers Test-driven Development, microservice architecture patterns, container orchestration, and IT operations. + + + diff --git a/static/img/sponsors/torchbox.svg b/src/_content/sponsors/torchbox.svg similarity index 100% rename from static/img/sponsors/torchbox.svg rename to src/_content/sponsors/torchbox.svg diff --git a/static/img/sponsors/twilio.svg b/src/_content/sponsors/twilio.svg similarity index 100% rename from static/img/sponsors/twilio.svg rename to src/_content/sponsors/twilio.svg diff --git a/src/_content/sponsors/tworocksoftware.md b/src/_content/sponsors/tworocksoftware.md new file mode 100644 index 00000000..db3009de --- /dev/null +++ b/src/_content/sponsors/tworocksoftware.md @@ -0,0 +1,17 @@ +--- +hidden: false +level: Gold +name: Two Rock Software +date: 2022-07-08 +logo: + filename: Two-Rock-Software-Logo.svg + orientation: landscape +url: + target: 'https://tworock.io' + label: tworock.io +hiring_url: 'https://tworock.io/jobs/' +--- +Two Rock Software is a friendly Django shop that focuses on developing custom solutions for humans. We enjoy collaborating at every level of a project from conception and brainstorming to launch and beyond. Our clients include a range of small to midsize businesses and nonprofits. Contact us to discover new ways to achieve growth and efficiency. + + + diff --git a/static/img/sponsors/vinta.svg b/src/_content/sponsors/vinta.svg similarity index 100% rename from static/img/sponsors/vinta.svg rename to src/_content/sponsors/vinta.svg diff --git a/src/_content/sponsors/wagtail.md b/src/_content/sponsors/wagtail.md new file mode 100644 index 00000000..bc432592 --- /dev/null +++ b/src/_content/sponsors/wagtail.md @@ -0,0 +1,18 @@ +--- +hidden: true +level: Gold +name: Wagtail CMS +date: 2023-09-11 +logo: + filename: wagtail.png + orientation: portrait +url: + target: 'https://wagtail.org/' + label: wagtail.org +--- +Meet Wagtail, a free open-source Django content management system. It’s fast, elegant, and designed to give everyone on your team the tools they need to manage content at enterprise scale. + +Thanks to our partners [Torchbox](https://torchbox.com/) and [CodeRed](https://www.codered.cloud/) for bringing Wagtail to Djangocon + + + diff --git a/static/img/sponsors/wagtail.png b/src/_content/sponsors/wagtail.png similarity index 100% rename from static/img/sponsors/wagtail.png rename to src/_content/sponsors/wagtail.png diff --git a/static/img/sponsors/wharton-logo.svg b/src/_content/sponsors/wharton-logo.svg similarity index 100% rename from static/img/sponsors/wharton-logo.svg rename to src/_content/sponsors/wharton-logo.svg diff --git a/src/_content/sponsors/wharton.md b/src/_content/sponsors/wharton.md new file mode 100644 index 00000000..e7a17c13 --- /dev/null +++ b/src/_content/sponsors/wharton.md @@ -0,0 +1,17 @@ +--- +hidden: true +level: Gold +name: The Wharton School +date: 2023-08-15 +logo: + filename: wharton-logo.svg + orientation: landscape + +url: + target: 'https://www.wharton.upenn.edu/' + label: wharton.upenn.edu +--- +For 25+ years, Wharton Research Data Services (WRDS) has supported 500+ institutions across 38 countries with targeted solutions that underpin research, reinforce learning, and enable discovery. WRDS enables comprehensive thought leadership — democratizing data access and giving users the power to analyze complex information through curated Classroom Teaching guides, Video Learning Pathways, Analytics/Linking tools, Research Applications, and the raw data through our website powered by Django and Wagtail, Jupyter, direct PostgreSQL access, SSH on the WRDS Cloud, and SAS. Partnering with global vendors, WRDS hosts over 400 TB of raw data, including one of the largest PostgreSQL clusters on the planet — across all disciplines including Accounting, Banking, Economics, ESG, Finance, Healthcare, Insurance, Marketing, and Statistics — giving users the power to analyze complex information. Supporting a global community of 75,000+ commercial, academic, and government users across 38 countries, WRDS is the global gold standard in data management, innovative tools, analytics, and research services — all backed by the credibility and leadership of the Wharton School. + + + diff --git a/src/_data/site.json b/src/_data/site.json new file mode 100644 index 00000000..d898ef24 --- /dev/null +++ b/src/_data/site.json @@ -0,0 +1,21 @@ +{ + "domain": "https://2024.djangocon.us/", + "timezone": "America/New_York", + "conf_year": 2024, + + "conduct_email": "conduct@djangocon.us", + "contact_us_email": "hello@djangocon.us", + "opportunity_grants_email": "grants@djangocon.us", + "program_team_email": "program@djangocon.us", + "sponsors_email": "sponsors@djangocon.us", + "visa_email": "visas@djangocon.us", + + "mailing_list": "https://emails.djangocon.us/subscription?f=Gs892S6cdJ676370nkSBxLOWzUsgYKPBcwkEMMvt0rr70f3IeA7634kuMTKJCLrdcgOQHQHdzwqLwvmcETbcm6KWtu9g", + "cfp_application": "https://pretalx.com/djangocon-us-2024/cfp", + "hotel_reservation_link": "https://www.marriott.com/events/start.mi?id=1707512209729&key=GRP", + "merchandise_link": "https://django.threadless.com/designs/djangocon-us-2024/mens/t-shirt/regular?variation=front&color=lemon", + "opportunity_grant_application": "https://forms.gle/LamfHzoXULdv63h18", + "slack_link": "", + "sponsorship_prospectus": "", + "ticket_link": "https://ti.to/defna/djangocon-us-2024" +} diff --git a/src/_includes/components/date-card.html b/src/_includes/components/date-card.html new file mode 100644 index 00000000..0f6db5a7 --- /dev/null +++ b/src/_includes/components/date-card.html @@ -0,0 +1,7 @@ +
    + +

    {{ heading }}

    +
    diff --git a/src/_includes/components/organizers-grid.html b/src/_includes/components/organizers-grid.html new file mode 100644 index 00000000..51dc6ba5 --- /dev/null +++ b/src/_includes/components/organizers-grid.html @@ -0,0 +1,76 @@ +
      + {%- for organizer in collections.organizers -%} + {% assign photo = 'src/_content/organizers/' | append: organizer.data.photo %} +
    • + {% image photo, './dist/organizers', '/organizers/', organizer.data.name, '(min-width: 1024px) 300px, 600px', 'block w-full object-cover object-left-top aspect-square media' %} +
      +

      {{ organizer.data.name }}

      +

      {{ organizer.data.role }}

      + + {% if organizer.data.social %} + + {% endif %} +
      +
    • + {%- endfor -%} +
    diff --git a/src/_includes/components/place.html b/src/_includes/components/place.html new file mode 100644 index 00000000..e5af25b8 --- /dev/null +++ b/src/_includes/components/place.html @@ -0,0 +1,37 @@ +
  • +
    + Photo of {{ place.data.name }} +
    + +
    +

    + {{ place.data.name }} +

    +
    +
    Distance:
    +
    🚶🏻 {{ place.data.distance }}
    + +
    Address:
    +
    + 📍 + {{ place.data.location }} +
    + +
    Website:
    +
    + Visit website +
    +
    + +
    + {{ place.content | markdown }} +
    +
    +
  • diff --git a/src/_includes/nav.html b/src/_includes/nav.html new file mode 100644 index 00000000..97890f4b --- /dev/null +++ b/src/_includes/nav.html @@ -0,0 +1,42 @@ + diff --git a/src/_includes/social-icons.html b/src/_includes/social-icons.html new file mode 100644 index 00000000..e49d5d0d --- /dev/null +++ b/src/_includes/social-icons.html @@ -0,0 +1,17 @@ + + + + + + + + + + + + + + + + + diff --git a/src/_layouts/default.html b/src/_layouts/default.html new file mode 100644 index 00000000..ccade2dc --- /dev/null +++ b/src/_layouts/default.html @@ -0,0 +1,138 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + {{ title }} + + {% comment %} + THEME-X - Adjust fonts to theme + {% endcomment %} + + + + + + + + + + +
    + {%- block content -%} + {{- content -}} + {%- endblock -%} +
    + + {% comment %} + + {% endcomment %} + + + {%- comment -%} + Social icons added as sprite + {%- endcomment -%} + {%- include 'social-icons.html' -%} + + + + diff --git a/src/_layouts/post.html b/src/_layouts/post.html new file mode 100644 index 00000000..4cdcef9c --- /dev/null +++ b/src/_layouts/post.html @@ -0,0 +1,26 @@ +--- +layout: default +templateClass: view-post +--- + +
    +
    + +

    {{ title }}

    +
    + +
    +
    + {% if cover %} +
    + {{ cover.alt }} +
    + {% endif %} + + {{ content }} +
    +
    +
    diff --git a/src/_layouts/presenter.html b/src/_layouts/presenter.html new file mode 100644 index 00000000..a9edd3c9 --- /dev/null +++ b/src/_layouts/presenter.html @@ -0,0 +1,6 @@ +--- +layout: default +templateClass: view-presenter +--- + +{{ content }} diff --git a/_pages/conduct.html b/src/about/conduct.html similarity index 61% rename from _pages/conduct.html rename to src/about/conduct.html index fad0030b..ddbe6a4c 100644 --- a/_pages/conduct.html +++ b/src/about/conduct.html @@ -1,105 +1,107 @@ --- -description: DjangoCon US is dedicated to providing a fun harassment-free conference - experience for everyone, regardless of gender, gender identity, sexual orientation, - disability, physical appearance, body size, race, or religion. -heading: Code of Conduct -layout: base -permalink: /conduct/ -redirect_from: -- /about/coc/ -- /about/conduct/ -- /coc/ +layout: default title: Code of Conduct +description: > + DjangoCon US is dedicated to providing a fun harassment-free conference experience for everyone, regardless of gender, gender identity, sexual orientation, disability, physical appearance, body size, race, or religion. --- -
    -

    {{ page.heading }}

    -
    - -
    -
    -
    -

    - DjangoCon US is dedicated to providing a fun harassment-free conference experience for everyone, regardless of gender, gender identity, sexual orientation, disability, physical appearance, body size, race, or religion. -

    -
    -
    - -
    -
    -
    -

    Be kind to others. Do not insult or put down other attendees. Behave professionally. -
    -
    - Remember that harassment and sexist, racist, or exclusionary jokes are not appropriate for DjangoCon US. -
    -
    - Attendees violating these rules may be asked to leave the conference without a refund at the sole discretion of the conference organizers. -
    -
    - Thank you for helping make this a welcoming, friendly event for all. -

    -
    -
    -
    - -
    -

    Need help?

    -

    If you are being harassed, notice that someone else is being harassed, or have any other concerns, please contact the conference Code of Conduct committee at {{site.conduct_email}}{% comment %} or 201-899-4189{% endcomment %}.

    -

    To ensure we receive all the necessary information, please refer to our Procedures for Reporting Incidents.

    -
    -
    +
    +
    +
    +

    {{ title }}

    + +
    +

    + DjangoCon US is dedicated to providing a fun harassment-free conference experience for everyone, regardless of gender, gender identity, sexual orientation, disability, physical appearance, body size, race, or religion. +

    +
    +
    +
    +
    + + +
    +
    +
    +
    +

    Be kind to others. Do not insult or put down other attendees. Behave professionally.

    +

    Remember that harassment and sexist, racist, or exclusionary jokes are not appropriate for DjangoCon US.

    +

    Attendees violating these rules may be asked to leave the conference without a refund at the sole discretion of the conference organizers.

    +

    Thank you for helping make this a welcoming, friendly event for all.

    +
    + +
    +

    Need help?

    +
    +

    If you are being harassed, notice that someone else is being harassed, or have any other concerns, please contact the conference Code of Conduct committee at {{site.conduct_email}}{% comment %} or 201-899-4189{% endcomment %}.

    +

    To ensure we receive all the necessary information, please refer to our Procedures for Reporting Incidents.

    +
    -
    +
    + -
    -
    -

    +
    +
    +
    +

    Important Numbers

    -

    Conference staff will be happy to help participants contact venue security or local law enforcement, provide escorts, or otherwise assist those experiencing harassment to feel safe for the duration of the conference. We value your attendance.

    +

    Conference staff will be happy to help participants contact venue security or local law enforcement, provide escorts, or otherwise assist those experiencing harassment to feel safe for the duration of the conference. We value your attendance.

    + +

    If your physical safety or the physical safety of others is at risk, please dial 911. If you are outside of Durham, or on a cell phone, and need to access Durham's 911 services, dial (919) 560-4600. For other needs, contact the relevant authorities below.

    +
    +
    +
    +

    Code of Conduct team

    +
      +
    • Adam Fast
    • +
    • Adrienne Franke
    • +
    • Carol Ganz
    • +
    • Catherine Holmes
    • +
    • Dawn Wages
    • +
    • Drew Winstel
    • +
    • Jeff Triplett
    • +
    • Peter Grandstaff
    • +
    • Tim Schilling
    • +
    +
    +
    +
    +
    +
    -

    If your physical safety or the physical safety of others is at risk, please dial 911. If you are outside of Durham, or on a cell phone, and need to access Durham's 911 services, dial (919) 560-4600. For other needs, contact the relevant authorities below.

    +
    +
    +
    +

    Local authorities

    + +
    +
    +
    +
    +
    +

    Procedures for Reporting Incidents

    If you believe someone has violated the Code of Conduct, we encourage you to report it. If you are unsure whether the incident is a violation, or whether the space where it happened is covered by the Code of Conduct, we encourage you to still report it. We are fine with receiving reports where we decide to take no action for the sake of creating a safer space.

    General Reporting Procedure

    - +

    The best way to contact the DjangoCon Code of Conduct committee is by emailing {{site.conduct_email}}

    Report Data

    @@ -107,14 +109,14 @@

    Report Data

    When you make a report via email or phone, please include:

      -
    • Your contact info (so we can get in touch with you if we need to follow up)
    • -
    • Date and time of the incident
    • -
    • Location of incident
    • -
    • Whether the incident is ongoing
    • -
    • Description of the incident
    • -
    • Identifying information of the reported person: name, physical appearance, height, clothing, voice accent, identifying badge information such as company name, ribbons, or badge number
    • -
    • Additional circumstances surrounding the incident
    • -
    • Other people involved in or witnesses to the incident and their contact information or description
    • +
    • Your contact info (so we can get in touch with you if we need to follow up)
    • +
    • Date and time of the incident
    • +
    • Location of incident
    • +
    • Whether the incident is ongoing
    • +
    • Description of the incident
    • +
    • Identifying information of the reported person: name, physical appearance, height, clothing, voice accent, identifying badge information such as company name, ribbons, or badge number
    • +
    • Additional circumstances surrounding the incident
    • +
    • Other people involved in or witnesses to the incident and their contact information or description

    Please provide as much information as possible.

    @@ -155,7 +157,7 @@

    Choose Your Words

    Exhibitors in the expo hall, sponsor or vendor booths, or similar activities are also subject to the anti-harassment policy. In particular, exhibitors should not use sexualized images, activities, or other material. Booth staff (including volunteers) should not use sexualized clothing/uniforms/costumes, or otherwise create a sexualized environment.

    Examples of Inappropriate Behavior

    - +

    Examples of unacceptable behavior by participants include:

    • Harassment of any participants in any form
    • @@ -181,7 +183,7 @@

      Examples of Inappropriate Behavior

      Photography

      -

      In order to make DjangoCon US 2023 a great experience for everyone, do not photograph, video, or audio record anyone at DjangoCon without their express permission, sought in advance. If someone does not want to be photographed, video or audio recorded, please respect their wishes.

      +

      In order to make DjangoCon US 2024 a great experience for everyone, do not photograph, video, or audio record anyone at DjangoCon without their express permission, sought in advance. If someone does not want to be photographed, video or audio recorded, please respect their wishes.

      Crowd shots are permitted, but when only the faces of a few people are visible, permission should be sought from all of those individuals.

      @@ -195,5 +197,5 @@

      License

      DjangoCon US Conference Code of Conduct is licensed under a Creative Commons Attribution 3.0 Unported License.

    -

    - + + diff --git a/src/about/faq.html b/src/about/faq.html new file mode 100644 index 00000000..b49dd875 --- /dev/null +++ b/src/about/faq.html @@ -0,0 +1,160 @@ +--- +layout: default + +title: Frequently Asked Questions +description: > + Common questions and answers about DjangoCon US. +--- + +
    +
    +
    +

    {{ title }}

    + +
    +

    + The answer to every question below is YES! +

    + +

    + Inspired by a sign at a roadside rest stop. If you have a question that is not answered below, please let us know! +

    +
    +
    +
    +
    + + +
    +
    +
    +
    +
    +

    Tickets

    +

    + Tickets are on sale now! More information is on our Tickets page. + {% comment %}Conference tickets are sold out for 2024, but tutorial tickets may still be available.{% endcomment %} +

    +
    + +
    +
      + {% comment %} +
    • Is the conference over?
    • + {% endcomment %} + +
    • I cannot attend DjangoCon US after all. Can I get a refund, or transfer my ticket to someone else?
    • +
    • Can I switch the tutorial I registered for, as long as there is still space available in the tutorial I would like to take instead?
    • + + {% comment %} +
    • Do tutorials cost extra?
    • + {% endcomment %} + +
    • Do I have to register for sprints?
    • +
    • Can I come to sprints even if I forgot to register?
    • +
    • Can I register for a tutorial without registering for the whole conference?
    • +
    • Can I register for sprints without registering for the whole conference?
    • +
    +
    +
    + +
    +
    +

    Schedule

    + {% comment %} +

    More information can be found on the Schedule page.

    + {% endcomment %} +
    + +
    +
      +
    • Will after-hours events, like the opening reception or a board game night, be listed on the schedule?
    • +
    • Will videos of talks be posted online?
    • +
    • Will breakfast and lunch be served during tutorial, talk, and sprint days?
    • +
    • Will there be a Slack channel that I can join?
    • +
    +
    +
    +
    +
    +
    + + +
    +
    +
    +
    +
    +

    Speaking

    +

    More information is on our Speaker Resources page.

    +
    + +
    +
      +
    • Are speaker mentors available to help me with my talk?
    • +
    • Do I need to present from my own laptop?
    • +
    • Does the 25/45-minute time limit include Q&A?
    • +
    • Can you help me send installation/setup instructions to my tutorial attendees prior to the conference?
    • +
    +
    +
    + +
    +
    +

    Accessibility

    +

    More information is on our Venue page.

    +
    + +
    +
      +
    • Can I use a bathroom that corresponds with my gender identity?
    • +
    • Is my service animal welcome, and is there a place nearby to walk my service animal?
    • +
    • Is step-free access available to all parts of the venue, including presentation areas?
    • +
    • Is there a nearby recovery meeting?
    • +
    • Will there be vegetarian, vegan, and/or gluten-free options at meals?
    • + {% comment %} +
    • Will you reimburse me for some of my childcare expenses?
    • +
    • Is there a lactation room?
    • + {% endcomment %} +
    +
    +
    +
    +
    +
    + +
    +
    +
    +
    +
    +

    Opportunity Grants

    +

    More information is on our Opportunity Grants page.

    +
    + +
    +
      +
    • Do I need to provide receipts in order to be reimbursed for my opportunity grant?
    • +
    • Will I be reimbursed promptly at or shortly after the conference?
    • +
    +
    +
    + +
    +
    +

    Sponsors

    +

    More information is on our Become a Sponsor page. Sponsorship signups for 2024 are now available!

    +
    + +
    +
      +
    • Can I sign up as a sponsor for DjangoCon US 2024?
    • +
    • Can I sign up as a sponsor for Opportunity Grants?
    • + {% comment %}
    • Are any of the sponsors hiring?
    • {% endcomment %} +
    +
    +
    +
    +
    +
    + diff --git a/src/about/index.html b/src/about/index.html new file mode 100644 index 00000000..44fd6a32 --- /dev/null +++ b/src/about/index.html @@ -0,0 +1,201 @@ +--- +layout: default + +title: About DjangoCon US +description: > + DjangoCon US is dedicated to providing a fun harassment-free conference experience for everyone, regardless of gender, gender identity, sexual orientation, disability, physical appearance, body size, race, or religion. +--- + +
    +
    +
    +

    {{ title }}

    + +
    +

    + DjangoCon US is a five-day international conference for the community by the community about the Django web framework, held each year in North America. +

    + +

    + DjangoCon US has something for everyone, from the person who develops Django applications for a living to the person who just tinkers in their spare time. You'll discover details about a range of diverse applications that people from all over the world are building with Django, get a deeper understanding of concepts you’re already familiar with and discover new ways to use them, and have a lot of fun! +

    +
    +
    +
    +
    + +
    +
    +
    +
    +

    Pre-Conference

    + +
      +
    • + {% + include 'components/date-card.html', + month:"Apr", + days:"29", + heading:"Calls for Proposals Closes" + %} +
    • + +
    • + {% + include 'components/date-card.html', + month:"Apr", + days:"29", + heading:"Opportunity Grant Application Closes" + %} +
    • + +
    • + {% + include 'components/date-card.html', + month:"July", + days:"8", + heading:"Opportunity Grant and Proposal Notifications" + %} +
    • +
    + + {% comment %} + + {% endcomment %} +
    + +
    +

    Conference Schedule

    + +
      +
    • + {% + include 'components/date-card.html', + month:"Sep", + days:"22", + heading:"Tutorials: One day, numerous sessions" + %} +
    • +
    • + {% + include 'components/date-card.html', + month:"Sep", + days:"23-25", + heading:"Talks: Dozens of talks chosen by the community" + %} +
    • +
    • + {% + include 'components/date-card.html', + month:"Sep", + days:"26-27", + heading:"Sprints: Team up to work on Django!" + %} +
    • +
    + + +
    + Buy Tickets + {% comment %} + Full Schedule + {% endcomment %} +
    +
    +
    +
    +
    + + +
    +
    +

    Conference Features

    + +
    +
    + Two people. One person is standing slightly in front of the other. +

    Code of Conduct

    +

    We’re committed to providing a safe and friendly environment for everyone to learn, meet, and enjoy the conference. All organizers, attendees, speakers and sponsors must follow the Code of Conduct.

    +
    + +
    + A heart. +

    Commitment to Diversity

    +

    It is a core aim of DjangoCon US 2024 to encourage diversity, enforce our Code of Conduct, and make our event as inclusive and accessible as possible.

    +
    + +
    + An official document with words written on it. +

    COVID-19 Safety

    +

    As part of our commitment to the safety of our attendees, we have a COVID-19 Policy and require all attendees to be vaccinated and masked, and have a negative COVID test prior to attending.

    +
    +
    +
    +
    + +
    +
    +
    +
    + + DjangoCon US attendees smiling for a picture. + +
    + +
    +

    Day 1 Orientation

    + +
    +
      +
    • Are you new to DjangoCon US or tech conferences in general?
    • +
    • Are you worried you might feel out of place?
    • +
    • Are you attending DjangoCon US by yourself?
    • +
    + +

    If so, the Day 1 orientation is for you! We’ll help you get your bearings so you can have the BEST conference experience possible.

    + +

    More details coming in the blog.

    +
    +
    +
    +
    +
    + +{% comment %} +
    +
    +
    +
    + +
    +

    Program

    +

    The DjangoCon US program features both novice talks for people just starting their journey into the world of development, as well as advanced talks for experienced developers.

    +
    +
    +
    +
    +
    + +
    + +

    We’ll have boards available so you can let people know if you’re recruiting new team members, or looking for a new position yourself!

    +
    +
    +
    +
    +
    +{% endcomment %} diff --git a/src/about/opportunity-grants.html b/src/about/opportunity-grants.html new file mode 100644 index 00000000..b60cc2cd --- /dev/null +++ b/src/about/opportunity-grants.html @@ -0,0 +1,87 @@ +--- +layout: default + +title: Opportunity Grants +description: > + As part of our commitment to diversity, we are thrilled to announce that we will be supporting individuals who need opportunity grants to attend DjangoCon US. +--- + + +
    +
    +

    {{ title }}

    +
    +
    + +
    +
    +
    +

    The application window is now closed. Decision notifications will be sent by July 8th, 2024.

    + + {% comment %} +

    UPDATE: The application window has been extended to Monday, April 29th at Noon EDT!

    + +

    Our opportunity grant application is open until April 29, 2024 at 12 PM EDT.

    + {% endcomment %} + +

    If you have any questions, feel free to reach out to the opportunity grants team at grants@djangocon.us.

    + +

    Diversity Sponsorships

    + +

    Your organization can help increase diversity at DjangoCon US by contributing to the Opportunity Grant Fund. + Please e-mail us to ask about sponsorship opportunities.

    + +


    + +

    Frequently Asked Questions

    + +

    What are opportunity grants?

    +

    They are grants to encourage and facilitate the participation of those who otherwise might not be able to attend the conference. + They can be used for conference-related expenses like travel, lodging, etc.

    + +

    Why did the name change to “opportunity grants”?

    +

    We renamed “financial aid” to “opportunity grants” to become a more inclusive and diverse conference. + We feel the wording “opportunity grants” makes a positive shift towards being a thriving, supportive and trusting community.

    + +

    When will I find out whether I’ve received an opportunity grant?

    + +

    You will be notified by June 14, 2024.

    + +

    Do I need to be a speaker, a first-time attendee, or a member of an underrepresented group to receive an opportunity grant?

    + +

    We try to allocate opportunity grants to a diverse set of attendees based on need. + Our review process is holistic and considers many different factors, most notably the impact we think attending DjangoCon US will have on the applicant.

    + +

    When will I receive my opportunity grant?

    + +

    The opportunity grant is paid to the recipient at the conference or shortly after.

    + +

    How will I receive my opportunity grant?

    + +

    The opportunity grant is paid to the recipient in a check for US account holders. + A bank transfer is used for non-US account holders. + We typically use TransferWise for international payments but have used other services for currencies they do not support.

    + +

    We require receipts for the items that the opportunity grant was spent on.

    + +

    Is there anything I should know if I am traveling into the US from another country?

    + +

    If you are traveling into the United States, we strongly encourage you to wait to purchase airfare or book a hotel room until after your visa has been accepted.

    + +

    Find out more details and get your invitation letter at our Visa information page.

    + +

    What if there is an emergency and I cannot attend?

    + +

    If you are denied entry to the US with a valid visa, we will pay your non-refundable costs (up to the amount of your opportunity grant). + For other emergencies or additional costs, we will review the recipient’s needs on a case-by-case basis.

    + +

    How To Donate

    + +

    Become a Sponsor! You or your company can sponsor at a specific level or sponsor a particular need, such as wifi, meals, or sprints. + Contact our sponsorship chair directly to find out how you can sponsor us.

    + +

    You may also donate directly to the Opportunity Grant Fund by buying an extra ticket for an attendee who couldn’t otherwise afford it when you purchase your ticket. Alternatively, you can add a dollar amount of your choosing.

    + +
    +
    +
    diff --git a/src/about/organizers.html b/src/about/organizers.html new file mode 100644 index 00000000..15f21192 --- /dev/null +++ b/src/about/organizers.html @@ -0,0 +1,17 @@ +--- +title: Conference Organizers +layout: default +--- + +
    +
    +

    {{ title }}

    +

    There is no "I" in DjangoCon US. Thank you to all our volunteers who make DjangoCon US happen!

    +
    +
    + +
    +
    + {% include 'components/organizers-grid.html' %} +
    +
    diff --git a/src/about/public-health.html b/src/about/public-health.html new file mode 100644 index 00000000..b921492b --- /dev/null +++ b/src/about/public-health.html @@ -0,0 +1,96 @@ +--- +layout: default + +title: Public Health Policy +description: > + DjangoCon US 2024's public health policy includes required testing and a mask recommendation. +--- + +
    +
    +
    +

    {{ title }}

    +

    DjangoCon US 2024's public health policy includes required testing and a mask recommendation.

    +
    +
    +
    + +
    +
    +
    +
    +

    Public Health Policy

    +

    In order to keep conference attendees safe, DjangoCon US will require proof of a negative COVID test. We ask that people test again before sprints begin on Thursday. We strongly recommend that people wear a mask and have the latest vaccination boosters. If you are not familiar, we suggest you check out the CDC's Travel guidelines to stay safe.

    + +

    The conference will feature select areas in the talk rooms where attendees will be required to wear masks. These areas will be some distance (but not separated by walls) from non-masked areas to allow diffusion.

    + +

    We are requiring a negative test before coming to the registration desk on your first day of attendance. If you are taking a rapid test, you must take it within 24 hours of your first ticketed day. We will have tests on site if you wish to test when you arrive. If you are taking a PCR test, it must be within 3 days of your first ticketed day (e.g. if you are attending Sunday's sessions, the test must be taken no earlier than Thursday, September 19).

    + +

    We will be sending the testing instructions to in-person ticket-holders prior to the conference.

    + +

    The conference will provide N95 masks for people to wear. We recommend that all attendees wear a certified KN95 / N95 respirator mask (with no outflow vent) while inside. If you prefer to wear a surgical mask, we recommend an ASTM Level 3 rated mask.

    + +

    If you prefer to purchase your own PPE, DjangoCon US is offering up to a $50 reimbursement. This should be for higher filtration PPE you acquire yourself (i.e. reusable respirators, etc). Please email us before the conference to coordinate.

    + +

    DjangoCon US reserves the right to increase the requirements of this policy based on COVID-19 infection, hospitalization or positive test rates as reported by the CDC. We may also be required to alter our policy to conform with local, state, or federal mandates.

    +
    + +
    +

    TLDR: A short-version of the policy is as follows:

    +
      +
    • Negative test required to enter conference
    • +
    • Test again before sprints
    • +
    • Masks are recommended (KN95 / N95 preferred)
    • +
    • Specific seating areas that will require masks
    • +
    • N95 Masks will be provided
    • +
    • $50 PPE reimbursement for higher filtration PPE you acquire yourself (i.e. reusable respirators, etc)
    • +
    • DjangoCon US reserves the right to make the policy more restrictive based on COVID-19 numbers
    • +
    +
    +
    +
    +
    + +{% comment %} +
    +
    +
    +
    +

    Check-in Procedure

    +

    + We're asking that all registrants go through the COVID-19 check-in process before registration. + The COVID-19 registration area will consist of two tables, one for taking tests and the other + for showing proof of a negative test. Further on will be the conference + registration desk with your badge. +

    + +
      +
    1. Acquire recommended N95/KN95 equivalent mask (we have them at the table)
    2. +
    3. Take COVID-19 test (follow instructions on the box, perform the test at secondary table or at home/the hotel)
    4. +
    5. Show test result or photo of negative test at COVID-19 desk with handwritten note containing the date
    6. +
    7. Proceed to registration desk
    8. +
    + +

    + If you have taken a test 24 hours within the start of the conference, you do not have to take + another test. Here is an example of a negative test with the date: +

    +
    +
    + A negative COVID-19 test with a phone showing the current date. +
    +
    +
    +
    +{% endcomment %} + +
    +
    +

    Questions about our Public Health Policy?

    + Email the organizers +
    +
    diff --git a/src/about/tickets.html b/src/about/tickets.html new file mode 100644 index 00000000..2d1e442d --- /dev/null +++ b/src/about/tickets.html @@ -0,0 +1,174 @@ +--- +layout: default + +title: DjangoCon US Tickets + +description: > + Information about buying tickets to DjangoCon US +--- + + +
    +
    +
    +

    {{ title }}

    + +
    +

    + DjangoCon US 2024 tickets are no longer on sale, but if you want to see what they cost, or need to consult the refund policy, keep reading! +

    +
    +
    +
    +
    + +
    +
    +

    Which ticket should I buy?

    + +
    +
    +
      +
    • Most people should buy an Individual ticket.
    • +
    • If your company is paying, they should use the Corporate rate (or the Concierge rate for more flexibility; see below).
    • +
    • For those who can't afford the Individual ticket, a discounted ticket is available; see below.
    • +
    • And for those who want to go above and beyond and support our mission, check out the Patron ticket.
    • +
    + Buy Tickets Now +
    + +
    +

    Don't Forget!

    +
      +
    • Early bird tickets are on sale through May 31st or until they're gone.
    • +
    • If your employer is paying, please use the corporate rate.
    • +
    + {% comment %} +

    Tickets are nearly sold out!

    +
      +
    • Join the waiting list and we'll let you know if there's a cancellation. It happens!
    • +
    • There might still be tutorials available.
    • +
    • You can still register for sprints!
    • +
    + {% endcomment %} +
    +
    +
    +
    + +
    +
    + +

    Ticket Prices and Types

    + +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    TypeEarly BirdFull PriceWho?
    Individual$339$499
    People paying their own way
    Companies with 5 or fewer employees
    Corporate$699$799
    Companies with more than 5 employees
    (including state agencies and nonprofits, if able)
    Online Only - Individual$99$149
    People paying their own way
    Companies with 5 or fewer employees
    Online Only - Corporate$199$299
    Companies with more than 5 employees
    (including government agencies and nonprofits, if able)
    Patron$999Every year, particularly generous attendees ask how they can pay extra for their ticket to help us expand our mission. The extra cost of this ticket will be put toward conference expenses that increase access to the conference, such as the Opportunity Grant Fund and video captioning. Ticket holders of this type will also be invited to a special "thank you" event at the conference.
    Corporate Concierge Service$999Companies who want to purchase several tickets in advance, but decide who will be attending the conference at a later date, or companies who cannot pay by credit card. We'll send you a registration code your employees can use to register when you're ready. We will also send you a paper invoice for record-keeping if you need.
    Discounted$299If you’re unemployed, on a lower income, or would benefit from a lower-priced ticket for another reason. If your company is paying for your ticket, you are not eligible for this ticket type.
    Tutorials$199They are a separate cost from your conference ticket. You can register for a tutorial without registering for the conference itself.
    SprintsFreeThe ticket is free, but we ask you to register so we can buy you lunch. You do not have to register for the conference itself to register for sprints.
    +
    +
    +
    + +
    +
    +

    What is the refund policy?

    + +
    +
    +

    If you have an in person ticket and find that you can't attend, please ask about converting to an online ticket.

    + +

    Otherwise for cancelling in-person or online main tickets:

    + +
      +
    • Refunds requested before September 1, 2024, incur a 10% cancellation fee.
    • +
    • Refunds requested between September 2 and September 9, 2024, incur a 25% cancellation fee.
    • +
    • Refunds requested between September 10 and September 21, 2024, incur a 50% cancellation fee.
    • +
    • Requests received after September 21, 2024 at 5:00 pm PDT are not eligible for a refund.
    • +
    • Tickets may be transferred to someone else at no charge by September 20 for tutorials and September 21 for the conference.
    • +
    +
    + +
    +
    +

    PLEASE do not come in person if you feel at all sick of any kind. Even if the conference has already begun, we can help get you connected virtually.

    + +

    In-person tickets can be converted to online tickets at ANY TIME. For that refund amount, we will take the cost of your ticket, subtract the value of the online equivalent, and then apply the same discount percentage above.

    + +

    For all dates the cutoff is on or before 5:00 PM PDT per the time stamp on DEFNA’s servers.

    + + {% comment %} +

    DjangoCon US sold out in 2023, so buy your ticket soon!

    + {% endcomment %} + +

    We hope to see you in Durham!

    +
    +
    +
    +
    +
    diff --git a/src/about/visas.html b/src/about/visas.html new file mode 100644 index 00000000..a0a6751d --- /dev/null +++ b/src/about/visas.html @@ -0,0 +1,45 @@ +--- +layout: default + +title: Visa Support at DjangoCon US +description: > + Information about obtaining a Visa to visit DjangoCon US +--- + +
    +
    +
    +

    {{ title }}

    +
    +
    +
    + +
    +
    +
    +

    Do I need a visa to enter the USA?

    + +

    That depends on which country issued your passport; see the US State Department website for more information.

    + +

    I need a letter to obtain a visa. Can you help me with that?

    + +

    We sure can! Head over to Get Invitation Letter to request your letter of invitation for your visa application at the US Consulate. You will be required to provide:

    + +
      +
    • Full name (as it appears on your passport)
    • +
    • Passport number
    • +
    • Date of birth
    • +
    • Home address
    • +
    • Title of talk you’re presenting (if any)
    • +
    • Amount of opportunity grant funds awarded (if any)
    • +
    + +

    Do this as soon as you can! Wait times to get a visitor visa interview are extremely long (and in some countries are over a year).

    + +

    I can’t get an appointment with the US Consulate in time for the conference. Can I get a refund?

    + +

    Send an email to our visa team and we’ll make sure you get taken care of.

    + +
    +
    +
    diff --git a/src/assets/css/components/_badge.css b/src/assets/css/components/_badge.css new file mode 100644 index 00000000..a3bf8e88 --- /dev/null +++ b/src/assets/css/components/_badge.css @@ -0,0 +1,12 @@ +.badge { + @apply inline-block px-4 py-2 font-medium rounded-lg text-sm; + @apply bg-gray-100; + + /* THEME-X: Text color */ + color: var(--theme-text-color); +} + +/* THEME-X: Color configuration */ +.badge-blue { + @apply text-blue-900 bg-blue-50; +} diff --git a/src/assets/css/components/_buttons.css b/src/assets/css/components/_buttons.css new file mode 100644 index 00000000..fc221c59 --- /dev/null +++ b/src/assets/css/components/_buttons.css @@ -0,0 +1,26 @@ +.button { + @apply relative inline-flex items-center justify-center px-4 py-2 rounded-md; + @apply border-2; + @apply font-semibold text-base !no-underline; + + border-color: var(--theme-text-color); + + /* THEME-X */ + @apply border-b-4 border-r-4; + + + background: linear-gradient(to bottom, transparent 50%, theme('colors.carolina-yellow') 50%); + background-size: 100% 200%; + background-position: top; + transition: all .125s ease-out; +} + + +.button:hover { + background-position: bottom; +} + + +.button-group { + @apply flex flex-wrap gap-4; +} diff --git a/src/assets/css/components/_containers.css b/src/assets/css/components/_containers.css new file mode 100644 index 00000000..2c21a463 --- /dev/null +++ b/src/assets/css/components/_containers.css @@ -0,0 +1,25 @@ +.block-container { + @apply py-14; +} + +.wrapper { + @apply container px-4 mx-auto; +} + +.hero { + @apply pt-8 pb-12; +} + +.grid-1-2 { + @apply grid gap-8 lg:grid-cols-2 lg:gap-16; +} + +@screen lg { + .block-container { + @apply py-16; + } + + .hero { + @apply pt-10 pb-16; + } +} diff --git a/src/assets/css/components/_table.css b/src/assets/css/components/_table.css new file mode 100644 index 00000000..3b1ccc40 --- /dev/null +++ b/src/assets/css/components/_table.css @@ -0,0 +1,18 @@ +table { + @apply border-collapse border-spacing-0; + @apply w-full; +} + +th { + @apply font-semibold text-left text-lg; + @apply p-4; + @apply bg-gray-200; +} + +td { + @apply px-4 py-2; +} + +tr:nth-child(even) { + @apply bg-gray-100; +} diff --git a/src/assets/css/main.css b/src/assets/css/main.css new file mode 100644 index 00000000..0c3769bf --- /dev/null +++ b/src/assets/css/main.css @@ -0,0 +1,151 @@ +@import "tailwindcss/base"; + +@import "tailwindcss/components"; +@import "components/_badge.css"; +@import "components/_buttons.css"; +@import "components/_table.css"; + +@import "components/_containers.css"; + +@import "tailwindcss/utilities"; + +@layer base { + /* THEME-X */ + :root { + /* Typography */ + --theme-text-color: #000; + + /* Colors */ + } + + /* + h-screen and flex-col on the body allow the footer + to be fixed to the bottom of the viewport. + */ + html, + body { + @apply h-screen; + } + + body { + @apply flex flex-col relative; + @apply antialiased; + + color: var(--theme-text-color); + } + + figcaption { + @apply text-sm text-center mt-3; + } + + .link { + @apply underline; + } + + .link:hover { + @apply no-underline; + } + + .reverse-link:hover { + @apply underline; + } + + .font-heading { + @apply leading-tight font-medium; + } + + .icon { + @apply inline-block; + @apply align-middle; + @apply w-6 h-6; + } + + .media { + @apply border-4 border-gray-100 rounded; + } + + .pageheading { + @apply text-4xl font-bold leading-tight lg:text-5xl; + } + + .subheading { + @apply text-xl leading-tight font-medium lg:text-3xl; + } + + .lead { + @apply text-lg lg:text-xl; + } + + .photo-effect { + @apply relative; + } + + .photo-effect::before { + @apply absolute z-10; + @apply block w-full h-full rounded; + content: ''; + + opacity: 0.4; + background: linear-gradient(126deg, theme('colors.mosaic-blue') 11.2%, theme('colors.lucky-orange') 69.95%, theme('colors.brick-red') 90.34%); + } + + .photo-effect img { + @apply rounded; + } +} + +@layer components { + .prose { + /* THEME-X */ + /* Prose (long form text) overrides */ + --tw-prose-body: var(--theme-text-color); + --tw-prose-headings: var(--theme-text-color); + --tw-prose-lead: var(--theme-text-color); + --tw-prose-links: var(--theme-text-color); + --tw-prose-bold: var(--theme-text-color); + --tw-prose-counters: var(--theme-text-color); + --tw-prose-bullets: var(--theme-text-color); + --tw-prose-hr: var(--theme-text-color); + --tw-prose-quotes: var(--theme-text-color); + --tw-prose-quote-borders: var(--theme-text-color); + --tw-prose-captions: var(--theme-text-color); + --tw-prose-kbd: var(--theme-text-color); + --tw-prose-kbd-shadows: 17 24 39; + --tw-prose-code: var(--theme-text-color); + } + + .prose a { + @apply link; + } + + + /* Nav styles */ + [data-menu-trigger] { + @apply relative flex items-center gap-1; + } + + [data-menu-trigger]::after { + @apply block w-5 h-5; + @apply bg-ice-cream-purple; + + mask: url('/assets/img/theme/icons/Triangle.svg'); + mask-size: cover; + mask-repeat: no-repeat; + + @apply rotate-180; + + content: ''; + } +} + +@layer utilities { + *:has(> .cover) { + @apply relative; + } + + .cover::before { + @apply absolute left-0 top-0; + @apply h-full w-full; + content: ''; + } +} diff --git a/static/favicons/apple-touch-icon.png b/src/assets/favicons/apple-touch-icon.png similarity index 100% rename from static/favicons/apple-touch-icon.png rename to src/assets/favicons/apple-touch-icon.png diff --git a/static/favicons/favicon.ico b/src/assets/favicons/favicon.ico similarity index 100% rename from static/favicons/favicon.ico rename to src/assets/favicons/favicon.ico diff --git a/static/favicons/favicon.png b/src/assets/favicons/favicon.png similarity index 100% rename from static/favicons/favicon.png rename to src/assets/favicons/favicon.png diff --git a/static/img/blog/call-for-reviewers-2024.png b/src/assets/img/blog/call-for-reviewers-2024.png similarity index 100% rename from static/img/blog/call-for-reviewers-2024.png rename to src/assets/img/blog/call-for-reviewers-2024.png diff --git a/static/img/blog/call-for-reviewers.jpg b/src/assets/img/blog/call-for-reviewers.jpg similarity index 100% rename from static/img/blog/call-for-reviewers.jpg rename to src/assets/img/blog/call-for-reviewers.jpg diff --git a/static/img/blog/cfp-announced-2024.png b/src/assets/img/blog/cfp-announced-2024.png similarity index 100% rename from static/img/blog/cfp-announced-2024.png rename to src/assets/img/blog/cfp-announced-2024.png diff --git a/static/img/blog/early-bird-2024.png b/src/assets/img/blog/early-bird-2024.png similarity index 100% rename from static/img/blog/early-bird-2024.png rename to src/assets/img/blog/early-bird-2024.png diff --git a/static/img/blog/og-last-call.jpg b/src/assets/img/blog/og-last-call.jpg similarity index 100% rename from static/img/blog/og-last-call.jpg rename to src/assets/img/blog/og-last-call.jpg diff --git a/static/img/blog/speaker_cfp.jpg b/src/assets/img/blog/speaker_cfp.jpg similarity index 100% rename from static/img/blog/speaker_cfp.jpg rename to src/assets/img/blog/speaker_cfp.jpg diff --git a/static/img/about.jpg b/src/assets/img/crowd-1.jpg similarity index 100% rename from static/img/about.jpg rename to src/assets/img/crowd-1.jpg diff --git a/static/img/crowd.jpg b/src/assets/img/crowd-2.jpg similarity index 100% rename from static/img/crowd.jpg rename to src/assets/img/crowd-2.jpg diff --git a/src/assets/img/misc/covid19-test-example.webp b/src/assets/img/misc/covid19-test-example.webp new file mode 100644 index 00000000..de875805 Binary files /dev/null and b/src/assets/img/misc/covid19-test-example.webp differ diff --git a/src/assets/img/noah.jpg b/src/assets/img/noah.jpg new file mode 100644 index 00000000..1b68b9c2 Binary files /dev/null and b/src/assets/img/noah.jpg differ diff --git a/static/img/social/avatar-main.png b/src/assets/img/social/avatar-main.png similarity index 100% rename from static/img/social/avatar-main.png rename to src/assets/img/social/avatar-main.png diff --git a/src/assets/img/social/og-share.jpg b/src/assets/img/social/og-share.jpg new file mode 100644 index 00000000..308250a0 Binary files /dev/null and b/src/assets/img/social/og-share.jpg differ diff --git a/static/img/social/share.png b/src/assets/img/social/share.png similarity index 100% rename from static/img/social/share.png rename to src/assets/img/social/share.png diff --git a/src/assets/img/theme/404.svg b/src/assets/img/theme/404.svg new file mode 100644 index 00000000..ddecad68 --- /dev/null +++ b/src/assets/img/theme/404.svg @@ -0,0 +1,524 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/assets/img/theme/city.svg b/src/assets/img/theme/city.svg new file mode 100644 index 00000000..c0d7c90c --- /dev/null +++ b/src/assets/img/theme/city.svg @@ -0,0 +1,8 @@ + + + + + + + + diff --git a/src/assets/img/theme/graphics/Bike.svg b/src/assets/img/theme/graphics/Bike.svg new file mode 100644 index 00000000..3110286d --- /dev/null +++ b/src/assets/img/theme/graphics/Bike.svg @@ -0,0 +1,149 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/assets/img/theme/graphics/Bull.svg b/src/assets/img/theme/graphics/Bull.svg new file mode 100644 index 00000000..49d15c1f --- /dev/null +++ b/src/assets/img/theme/graphics/Bull.svg @@ -0,0 +1,471 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/assets/img/theme/graphics/Caution.svg b/src/assets/img/theme/graphics/Caution.svg new file mode 100644 index 00000000..11cbe664 --- /dev/null +++ b/src/assets/img/theme/graphics/Caution.svg @@ -0,0 +1,278 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/assets/img/theme/graphics/Lightbulb.svg b/src/assets/img/theme/graphics/Lightbulb.svg new file mode 100644 index 00000000..a0900dbc --- /dev/null +++ b/src/assets/img/theme/graphics/Lightbulb.svg @@ -0,0 +1,77 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/assets/img/theme/graphics/Meal.svg b/src/assets/img/theme/graphics/Meal.svg new file mode 100644 index 00000000..2f4827ef --- /dev/null +++ b/src/assets/img/theme/graphics/Meal.svg @@ -0,0 +1,276 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/assets/img/theme/hero-bg.svg b/src/assets/img/theme/hero-bg.svg new file mode 100644 index 00000000..fb5957fe --- /dev/null +++ b/src/assets/img/theme/hero-bg.svg @@ -0,0 +1,13 @@ + + + + + + + + + + + + + diff --git a/src/assets/img/theme/hero-img.webp b/src/assets/img/theme/hero-img.webp new file mode 100644 index 00000000..84081538 Binary files /dev/null and b/src/assets/img/theme/hero-img.webp differ diff --git a/src/assets/img/theme/icons/Bag.svg b/src/assets/img/theme/icons/Bag.svg new file mode 100644 index 00000000..77ff6f06 --- /dev/null +++ b/src/assets/img/theme/icons/Bag.svg @@ -0,0 +1,10 @@ + + + + + + + + + + diff --git a/src/assets/img/theme/icons/Bull.svg b/src/assets/img/theme/icons/Bull.svg new file mode 100644 index 00000000..43714a8d --- /dev/null +++ b/src/assets/img/theme/icons/Bull.svg @@ -0,0 +1,11 @@ + + + + + + + + + + + diff --git a/src/assets/img/theme/icons/Checklist.svg b/src/assets/img/theme/icons/Checklist.svg new file mode 100644 index 00000000..32a945fe --- /dev/null +++ b/src/assets/img/theme/icons/Checklist.svg @@ -0,0 +1,10 @@ + + + + + + + + + + diff --git a/src/assets/img/theme/icons/Compass.svg b/src/assets/img/theme/icons/Compass.svg new file mode 100644 index 00000000..282a13fb --- /dev/null +++ b/src/assets/img/theme/icons/Compass.svg @@ -0,0 +1,10 @@ + + + + + + + + + + diff --git a/src/assets/img/theme/icons/Document.svg b/src/assets/img/theme/icons/Document.svg new file mode 100644 index 00000000..fd477d1d --- /dev/null +++ b/src/assets/img/theme/icons/Document.svg @@ -0,0 +1,11 @@ + + + + + + + + + + + diff --git a/src/assets/img/theme/icons/Globe.svg b/src/assets/img/theme/icons/Globe.svg new file mode 100644 index 00000000..efae0bca --- /dev/null +++ b/src/assets/img/theme/icons/Globe.svg @@ -0,0 +1,10 @@ + + + + + + + + + + diff --git a/src/assets/img/theme/icons/Hands.svg b/src/assets/img/theme/icons/Hands.svg new file mode 100644 index 00000000..db67df08 --- /dev/null +++ b/src/assets/img/theme/icons/Hands.svg @@ -0,0 +1,10 @@ + + + + + + + + + + diff --git a/src/assets/img/theme/icons/Hat.svg b/src/assets/img/theme/icons/Hat.svg new file mode 100644 index 00000000..fbd96425 --- /dev/null +++ b/src/assets/img/theme/icons/Hat.svg @@ -0,0 +1,11 @@ + + + + + + + + + + + diff --git a/src/assets/img/theme/icons/Heart.svg b/src/assets/img/theme/icons/Heart.svg new file mode 100644 index 00000000..4d292fa4 --- /dev/null +++ b/src/assets/img/theme/icons/Heart.svg @@ -0,0 +1,10 @@ + + + + + + + + + + diff --git a/src/assets/img/theme/icons/Megaphone.svg b/src/assets/img/theme/icons/Megaphone.svg new file mode 100644 index 00000000..97101158 --- /dev/null +++ b/src/assets/img/theme/icons/Megaphone.svg @@ -0,0 +1,10 @@ + + + + + + + + + + diff --git a/src/assets/img/theme/icons/Money.svg b/src/assets/img/theme/icons/Money.svg new file mode 100644 index 00000000..d182fea2 --- /dev/null +++ b/src/assets/img/theme/icons/Money.svg @@ -0,0 +1,10 @@ + + + + + + + + + + diff --git a/src/assets/img/theme/icons/People.svg b/src/assets/img/theme/icons/People.svg new file mode 100644 index 00000000..cb6566a2 --- /dev/null +++ b/src/assets/img/theme/icons/People.svg @@ -0,0 +1,10 @@ + + + + + + + + + + diff --git a/src/assets/img/theme/icons/Prompt.svg b/src/assets/img/theme/icons/Prompt.svg new file mode 100644 index 00000000..96fe465b --- /dev/null +++ b/src/assets/img/theme/icons/Prompt.svg @@ -0,0 +1,11 @@ + + + + + + + + + + + diff --git a/src/assets/img/theme/icons/Star.svg b/src/assets/img/theme/icons/Star.svg new file mode 100644 index 00000000..ab54aeaa --- /dev/null +++ b/src/assets/img/theme/icons/Star.svg @@ -0,0 +1,10 @@ + + + + + + + + + + diff --git a/src/assets/img/theme/icons/Triangle.svg b/src/assets/img/theme/icons/Triangle.svg new file mode 100644 index 00000000..a7cad74c --- /dev/null +++ b/src/assets/img/theme/icons/Triangle.svg @@ -0,0 +1,3 @@ + + + diff --git a/src/assets/img/theme/logo.svg b/src/assets/img/theme/logo.svg new file mode 100644 index 00000000..d6bd538d --- /dev/null +++ b/src/assets/img/theme/logo.svg @@ -0,0 +1,32 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/assets/img/theme/squiggle.svg b/src/assets/img/theme/squiggle.svg new file mode 100644 index 00000000..014a8017 --- /dev/null +++ b/src/assets/img/theme/squiggle.svg @@ -0,0 +1,10 @@ + + + + + + + + + + diff --git a/static/img/venue/durham-marriott-exterior.jpeg b/src/assets/img/venue/durham-marriott-exterior.jpeg similarity index 100% rename from static/img/venue/durham-marriott-exterior.jpeg rename to src/assets/img/venue/durham-marriott-exterior.jpeg diff --git a/static/img/venue/durham-marriott-exterior.webp b/src/assets/img/venue/durham-marriott-exterior.webp similarity index 100% rename from static/img/venue/durham-marriott-exterior.webp rename to src/assets/img/venue/durham-marriott-exterior.webp diff --git a/static/img/venue/unscripted-exterior.jpeg b/src/assets/img/venue/unscripted-exterior.jpeg similarity index 100% rename from static/img/venue/unscripted-exterior.jpeg rename to src/assets/img/venue/unscripted-exterior.jpeg diff --git a/src/assets/js/main.js b/src/assets/js/main.js new file mode 100644 index 00000000..2af57279 --- /dev/null +++ b/src/assets/js/main.js @@ -0,0 +1,53 @@ +const navToggler = document.getElementById('NavToggler'); +const navMenu = document.getElementById('NavMenu'); +const allMenus = navMenu.querySelectorAll('[data-menu-list]'); + +/* TODO: Not accessible */ +navToggler.addEventListener('click', () => { + const siteMain = document.getElementById('SiteMain'); + const siteFooter = document.getElementById('SiteFooter'); + + if (navMenu.classList.contains('flex')) { + navMenu.classList.replace('flex', 'hidden'); + } else { + navMenu.classList.replace('hidden', 'flex'); + } + + /* + Hide the main content and footer when the mobile menu is open. + This allows the menu to be scrollable and limits the DOM for screen readrs. + */ + siteMain.classList.toggle('hidden'); + siteFooter.classList.toggle('hidden'); +}); + +const navMenuTriggers = document.querySelectorAll('[data-menu-trigger]'); + +navMenuTriggers.forEach(trigger => { + trigger.addEventListener('click', (evt) => { + evt.preventDefault(); + const target = trigger.nextElementSibling; + + allMenus.forEach((menu) => { + if (menu !== target) { + menu.classList.replace('flex', 'hidden'); + } + }); + + if (target.classList.contains('hidden')) { + target.classList.replace('hidden', 'flex'); + } else { + target.classList.replace('flex', 'hidden'); + } + }); +}); + +// Close all menus when the user clicks outside +document.addEventListener('click', function (evt) { + if (!navMenu.contains(evt.target) && navToggler !== evt.target) { + // Close all menus if you click outside of menu + allMenus.forEach((menu) => { + menu.classList.replace('flex', 'hidden'); + }); + } +}); diff --git a/_src/scss/layout/_home-content.scss b/src/feed.xml similarity index 100% rename from _src/scss/layout/_home-content.scss rename to src/feed.xml diff --git a/src/index.html b/src/index.html new file mode 100644 index 00000000..3929218a --- /dev/null +++ b/src/index.html @@ -0,0 +1,204 @@ +--- +layout: default + +title: Welcome to DjangoCon US +--- + +
    +
    +
    +
    +

    + Join us for five days
    + of inspiration, education,
    and networking +

    + +

    + September 22-27, 2024 +

    + +

    + Durham Convention Center
    Durham, NC
    +

    + +
    + Buy Tickets + Book a Room + + {% comment %} + Submit Talk + Join Mailing List + Conference Schedule + {% endcomment %} +
    +
    + +
    + A collage of Durham, NC centric stickers and photos. +
    +
    +
    +
    + +
    +
    +
    +
    +

    + For Django fans
    + of all levels +

    +

    + DjangoCon US has something for everyone, from the person who develops + Django applications for a living to the person who just tinkers in + their spare time. +

    + About DjangoCon US +
    +
    +
      +
    • + {% include 'components/date-card.html', month:"Sep", days:"22", + heading:"Tutorials: One day, numerous sessions" %} +
    • +
    • + {% include 'components/date-card.html', month:"Sep", days:"23-25", + heading:"Talks: Dozens of talks chosen by the community" %} +
    • +
    • + {% include 'components/date-card.html', month:"Sep", days:"26-27", + heading:"Sprints: Team up to work on Django!" %} +
    • +
    +
    +
    +
    +
    + +
    +
    +

    + A friendly conference for a friendly community +

    + +
    +
    + Two people. One person is standing slightly in front of the other. +

    + Code of Conduct +

    +

    + Participants are expected to be respectful to each other. For details + on our expectations, and who to contact if you need assistance, see + our + Code of Conduct. +

    +
    + +
    + An official document with words written on it. +

    COVID-19

    +

    + Read our + COVID-19 Policy, including mask and testing requirements. +

    +
    + +
    + A heart. +

    Accessiblity

    +

    + We offer a range of accommodations, including live captioning, + thoughtful lunch options, and a dedicated accessibility team to ensure + everyone can fully participate. +

    +
    +
    +
    +
    + +
    +
    +
    +
    + {% comment %} TODO: Use Image component {% endcomment %} + + Noah Alorwu smiling for a picture. + +
    +
    +

    + Latest News +

    + +
      + {%- for post in collections.posts reversed -%} {% unless post.hidden + or post.category == 'talk' or post.category == 'tutorial' %} {% if + forloop.index0 < 3 %} +
    1. + +
    2. + {% endif %} {% endunless %} {%- endfor -%} +
    + + Read More News +
    +
    +
    +
    diff --git a/src/news.html b/src/news.html new file mode 100644 index 00000000..984e98f3 --- /dev/null +++ b/src/news.html @@ -0,0 +1,40 @@ +--- +title: Latest News +layout: default +--- + +
    +
    +

    {{ title }}

    +
    +
    + +
    +
    +
      + {%- for post in collections.posts reversed -%} + {% unless post.hidden or post.category == 'talk' or post.category == 'tutorial' %} + {% assign heading_size = 'lg:text-3xl' %} + {% if forloop.first %} + {% assign heading_size = 'lg:text-4xl' %} + {% endif %} + +
    1. +
      + +

      {{ post.data.title | escape }}

      + + {%- if post.data.page.excerpt -%} +
      + {{ post.data.page.excerpt | markdown }} +
      + {%- endif -%} +
      +
    2. + {% endunless %} + {%- endfor -%} +
    +
    +
    diff --git a/src/speaking/index.html b/src/speaking/index.html new file mode 100644 index 00000000..e50bd293 --- /dev/null +++ b/src/speaking/index.html @@ -0,0 +1,123 @@ +--- +layout: default + +title: Speaking at DjangoCon US +description: > + Information about submitting a proposal to speak at DjangoCon US +--- + +
    +
    +
    +

    {{ title }}

    +
    +
    +
    + +
    +
    +
    +

    Our Call for Proposals is now closed. Decision notifications will be sent by July 8th, 2024.

    + +

    Why Speak at DjangoCon US?

    + +
      +
    • Presenters receive a free ticket to DjangoCon US and up to $500 in travel cost reimbursement! +
    • +
    • A professionally produced video of your talk will be published on our YouTube channel. (You may opt-out of this.)
    • +
    • Professional photographer on hand to photograph your talk. (Also optional.)
    • +
    • Expose the Django community to new tools, practices, or ideas.
    • +
    • Expand your technical, professional, and personal networks.
    • +
    • Share your discoveries with a large audience.
    • +
    • Give back to the Django community!
    • +
    + +

    COVID-19

    + +

    Please see our COVID-19 Policy for more information.

    + +

    At this time, we are planning on most presenters being in Durham to present their talks in person. Things may always change depending on how the pandemic progresses over the year. As in 2022, we will have a handful of online-exclusive talks that will air during the in-person breaks and meals.

    + +

    Please indicate your format preference (in-person or online) as part of your proposal.

    + +

    Proposing to DjangoCon US

    + +

    Selection process

    + +

    We’ll choose a selection of talks and tutorials that we feel add to the most enjoyable and engaging program for our attendees. Volunteers from the Django community are invited to help us pick talks, and we rely heavily on them to help us select interesting and beneficial ones for our attendees. Community volunteers and conference organizers will review anonymized submissions and collectively decide which ones to accept.

    + +

    Talks (September 23rd, 24th, & 25th)

    + +

    Length: 25 minutes or 45 minutes

    + +

    NOTE For online talks especially, these times are a hard limit and cannot be exceeded.

    + +

    We are looking for original and exciting talks that can benefit the diverse interests of our audience. + Don’t feel boxed into Django-centric themes; we also love talks about community, web development, user experience, etc. + If you’re a first-timer - don’t fret! We would love to be remembered as the conference where you started your speaking career.

    + +

    Here are some examples of what has been accepted over the last couple of years:

    + + + +

    Online talks

    + +

    Just like in 2023, most talks will be in-person, and we will have several online-exclusive talks that air during breaks in the in-person session. These will air across all three talk days (Monday through Wednesday). Please indicate your preference for online or in-person in your submissions. There’s a required question in pretalx asking your preference.

    + +

    Deep Dive Talks (September 18th)

    + +

    This year, we will be curating a deep dive day to focus on exploring Django and Django-adjacent topics in detail. + Deep dive day is meant to follow in the footsteps of Django Under the Hood and will provide a range of topics presented in-depth, targeting varying levels of Django experience. + Talks of this nature will mix community submissions and personal invitations. + If you believe your talk is a good fit, please indicate so on your submission to our CFP by choosing the “deep dive” tag!

    + +

    Tutorials (September 22nd)

    + +
      +
    • Length: 3-3.5 hours
    • +
    • Format: In-person
    • +
    + +

    We’re open to all kinds of ideas, especially ones we haven’t thought of! Technical tutorials tend to be more popular, but we welcome all topics! Tutorials can be targeted at any experience level, just be sure to indicate clearly what you expect your students to already know or have experience with in your proposal!

    + +

    Still unsure if you should submit? Not only will we cover your DjangoCon ticket, but tutorials are compensated! However, they do not include the price of your travel or lodging. If you need help with these costs, fill out the opportunity grant form by April 29, 2024. Decision notifications will be sent by June 14, 2024.

    + +

    New Expectations for Tutorials

    + +

    In order to streamline the tutorial process, we’re going to offer volunteer staffed office hours for tutorial attendees to help them get their machine set up. Tutorial presenters are not required to participate in these office hours. We will require that all tutorials include a setup guide by October 1st. This guide is what will be followed during the office hours.

    + +

    The setup guide should include a step confirming that the setup has been complete. For example, if the tutorial requires a working Django application, having the user create a superuser, run runserver, then log into the Django Administration site would suffice. The goal here is to uncover and resolve setup issues so that the tutorial’s time can be spent on content. A thorough example for a setup guide can be found here.

    + + +

    + Lightning Talks + (September 23rd, 24th, & 25th) +

    + +

    Not up for a full-on talk or tutorial? Looking to give your first talk at a conference? + Lightning talks are talks under 5 minutes with or without slides on almost any topic you want! + Even if you’re nervous or shy, remember: it’s a maximum of 5 minutes. + Sign-ups will happen at the conference.

    + +

    Speaker Travel Assistance

    + +

    As we have in the past, this year, we have set aside up to $500 per speaker to help offset the cost of travel to the conference. + In order to maximize the amount we can provide, we ask that speakers who will be reimbursed by their employer decline the assistance offered so it can be spread out among speakers who do not receive travel reimbursement. + Receipts for travel expenses will be required.

    + +

    Online speaker gear reimbursement

    + +

    If you are speaking online, we are pleased to offer up to $500 for recording gear reimbursement to be used on qualifying expenses (camera, light, microphone, etc.). This cannot be used in conjunction with the above travel reimbursement (it’s an either/or proposition).

    + +

    Pre-conference information

    + +

    You will have the option to upload a rough transcript of your talk approximately two weeks before the conference to give the captioning team a chance to train on any jargon you might use in your talk. This is by no means required but it will provide a more accessible experience to your audience.

    + +

    The organizing team reserves the right to request a review of draft slides at any point up to the start of the conference for any reason including but not limited to content, messaging quality, and more. Failure to provide these slides in a timely manner may result in your removal from the program. We understand that the slides are draft quality and will not be shared outside the program and code of conduct teams.

    +
    +
    diff --git a/src/speaking/speaker-resources.html b/src/speaking/speaker-resources.html new file mode 100644 index 00000000..4c8c4fa6 --- /dev/null +++ b/src/speaking/speaker-resources.html @@ -0,0 +1,90 @@ +--- +layout: default + +title: Speaker Resources +description: > + Resources to support DjangoCon US 2024 speakers +--- + +
    +
    +
    +

    {{ title }}

    +
    +
    +
    + +
    +
    +
    +

    Information for Speakers

    + +
      +
    • Please be in your presentation room at least 15 minutes before your talk to meet your session chair.
    • +
    • A Quiet Room will be available for attendees and speakers on all conference days.
    • +
    • We reserve the right to ask for a draft of your slides/notes not more than 3 weeks in advance of the presentation for review. This draft will not be shared with anyone outside the program and code of conduct teams.
    • +
    + +

    Need some help with your presentation?

    + +

    Presenters, regardless of experience, sometimes want a little help. If you’d like any help in preparing or presenting your talk, some awesome members of our community have volunteered to be speaker mentors. A mentor is an experienced presenter who has volunteered to help other presenters. For first-time presenters, non-native English speakers, under-confident or uncertain speakers, or anyone who would just appreciate another set of eyes, our mentors will be here to help. You’ll get the best results by forming a relationship with one mentor, rather than contacting several.

    + +
      +
    • + Eng Seng Ng, Senior Engineer at Energy Solutions. Eng Seng leads the documentation and training team for a climate-change-fighting software product at Energy Solutions.
    • +
    • + Katie McLaughlin, Developer Advocate and frequent public speaker (occasional keynoter), DjangoCon AU organiser, and Secretary for the Django Software Foundation.
    • +
    + +

    Talk Guidelines

    + +

    Accessibility

    + +
      +
    • You can submit a draft copy of your slides with notes indicating what you plan to say a minimum of three weeks before your talk to give the captioners time to train on your data and therefore improve caption accuracy. This is extremely helpful to our attendees who read the live captions if you’re using jargon beyond “Django” and “the ORM”.
    • +
    • These slides will not be shared outside of the organizing team and the captioners. Send the slides to hello AT djangocon DOT us when you are ready. It’s perfectly fine if your slides and notes change between the draft and final version.
    • +
    • When describing media in your talk (images, screenshots, graphs, videos, etc.), please give a verbal description of what you’re showing so that blind or vision-impaired attendees can understand what you’re describing. +
        +
      • Example: instead of “here’s a graph showing performance improvements with our new async code,” say “here’s a line graph showing our average response time that decreased from 450 milliseconds to 150 milliseconds after adding our new async code.”
      • +
      +
    • +
    + +

    General

    + +
      +
    • Use gender-neutral language wherever possible. Don’t default to using “he”, “him”, or “guys” everywhere.
    • +
    • Be respectful of other speakers, your audience, and the community at large, especially when offering critiques. It’s possible to say “this needs improvement” without saying “this is bad.”
    • +
    • Consider including your social media handle(s) on your opening and closing slides! If you have space, you can even include them on the footer of every slide.
    • +
    • Consider publishing your slides after your talk (on the platform of your choice) and sharing the link with the #DjangoCon hashtag on social media.
    • +
    • Include a copy of what you plan to say in each slide’s notes (if possible). This will help you while you’re in presenter view and also make it easier for people who may be looking at your slides after the conference.
    • +
    • Before you connect your laptop to the projector, make sure you have every window except for your slides minimized or closed to avoid accidental information disclosure.
    • +
    • Make sure you turn on your computer’s do not disturb mode before starting your presentation to avoid interruptions.
    • +
    • If your computer needs a dongle to connect to an HDMI cable, please bring it. We’ll have most of the common ones, including a USB-C/Thunderbolt connector, but it always helps to have one that you know works.
    • +
    + +

    Slide Guidelines

    + +

    Format

    + +
      +
    • Minimal slides are best—-avoid walls of text and long lists of bullets.
    • +
    • Light background with dark text is easiest to read; be mindful that the projection screen is white. + Choose fonts with adequate spacing between letters, and avoid thin or cursive fonts.
    • +
    • Leave the bottom 25% of your slides free of text to ensure nothing is obscured by other attendees’ heads.
    • +
    • If your talk requires live coding or using the terminal, make sure your editor or terminal settings are legible. Dark text on a light background (high contrast) with a large font is best.
    • +
    • Images, memes, and GIFs should be appropriate for a professional audience.
    • +
    + +

    Accessibility

    + +
      +
    • Aim for high contrast slides, avoiding colors that may be difficult to see for those with colorblindness. (You can check your contrast online; you just need the hex codes for your colors!)
    • +
    • Avoid or limit flashing videos or animated GIFs, as these may have negative effects for people with seizure disorders, migraines, or ADD/ADHD.
    • +
    • Make text as large as possible. People need to be able to read the text from a very long distance.
    • +
    • Your talk should lose nothing if the slides aren’t visible. Generally describe graphs, images, and other information for the audience.
    • +
    + +

    Thanks to AlterConf for their amazing speaking recommendations!

    +
    +
    diff --git a/src/sponsors/index.html b/src/sponsors/index.html new file mode 100644 index 00000000..b62b77f4 --- /dev/null +++ b/src/sponsors/index.html @@ -0,0 +1,63 @@ +--- +title: Sponsors +layout: default +--- + +
    +
    +
    +

    {{ title }}

    +

    DjangoCon US is only possible through the generosity of the organizations and businesses on this page. Their donations make it possible for us to provide opportunity grants to speakers and attendees, record all talks, host sprints, and feed everyone for five days. Thank you for your support!

    +
    +
    +
    + +{% for level in collections.sponsorsByLevel %} +
    +
    +

    {{ level[0] }}

    + +
      + {% for sponsor in level[1] %} +
    • +
      +
      + {% if sponsor.data.logo %} + {% assign orientation_class = "max-w-72" %} + {% if sponsor.data.logo.orientation == "portrait" %} + {% assign orientation_class = "max-h-48" %} + {% endif %} + {{ sponsor.data.name }} logo + {% endif %} +
      + +
      +

      + {% if sponsor.data.url %} + {{ sponsor.data.name }} + {% endif %} +

      + {% if sponsor.data.url %} + + {% endif %} + {% if sponsor.content %} +
      + {{ sponsor.content | markdown }} +
      + {% endif %} + {% if sponsor.data.hiring_url %} + + 🌟 {{ sponsor.data.name }} is hiring! + {% endif %} +
      +
      +
    • + {% endfor %} +
    +
    +
    +{% endfor %} + diff --git a/src/sponsors/information.html b/src/sponsors/information.html new file mode 100644 index 00000000..b0300ab9 --- /dev/null +++ b/src/sponsors/information.html @@ -0,0 +1,246 @@ +--- +layout: default + +title: Become a Sponsor +description: Become a Sponsor +--- + +
    +
    +
    +

    {{ title }}

    +
    +

    DjangoCon US is not possible without your support. The spirit of the event focuses on providing a platform for new and experiences speakers to share their stories and knowledge.

    +
    +
    +
    +
    + +
    +
    +
    +
    +

    Our goal is to keep ticket costs low while providing:

    + +
      +
    • Free childcare stipends
    • +
    • Opportunity grants
    • +
    • A lactation room
    • +
    • Meals
    • +
    • A centrally located venue
    • +
    • Reimbursement for speaker travel and lodging expenses
    • +
    • A networking party to start the event.
    • +
    + +

    The DjangoCon US Slack channel currently has 700+ members where attendees get and give advice, discuss Django/Python issues, and all-around support each other, establishing a year-round connection that helps ensure the conference is as welcoming and comfortable as possible.

    + +

    We promote our sponsors on our @djangocon Twitter account, which has over 13K followers, and our @djangocon@fosstodon.org Mastodon account . Our posts are seen around the world.

    + +

    In the event that a profit is made from our fundraising efforts, we pay it forward by making a donation to the Django Software Foundation and supporting other Django events in North America who support our mission.

    + +

    Endless thanks for your support, and we cannot wait to call you a partner in our mission.

    + +

    Because the conference is organized by DEFNA, a non-profit 501(c)(3) organization, your sponsorship is tax-deductible!

    +
    + +
    +
    +
    + +
    +
    +
    +

    Sponsorship Levels

    + +

    Diversity Sponsorships

    + +

    Django and the Python community at large pride themselves on their commitment to diversity and inclusion. Talk to us about contributing to our Opportunity Grant Fund, which prioritizes grants for people from underrepresented groups. Diversity sponsorship funds will also be used to offset the cost of offering child care!

    + +

    Other Sponsorship Opportunities

    + +

    The following a la carte offerings are available to increase visibility on site.

    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
     Diamond
    $19,000
    Platinum
    $9,000
    Gold
    $5,500
    Silver
    $3,000
    Bronze
    $2,000
    Free sponsor tickets88421
    10% discount conference tickets
    (Corporate rate)
    88421
    Tote bag insert
    (provided by Sponsor)
    :heavy_check_mark::heavy_check_mark::heavy_check_mark::heavy_check_mark::heavy_check_mark:
    Sponsor name, logo, link, and description on website:heavy_check_mark::heavy_check_mark::heavy_check_mark::heavy_check_mark::heavy_check_mark:
    Optional “Is Hiring” indicator with link on website:heavy_check_mark::heavy_check_mark::heavy_check_mark::heavy_check_mark::heavy_check_mark:
    Logo in break video rotation:heavy_check_mark::heavy_check_mark::heavy_check_mark::heavy_check_mark: 
    Social media: Twitter and Facebook posts:heavy_check_mark::heavy_check_mark::heavy_check_mark::heavy_check_mark: 
    Logo on conference T-SHIRT!:heavy_check_mark::heavy_check_mark::heavy_check_mark:  
    Exhibit Table22 + :heavy_check_mark:
    space permitting
      
    Sponsor Banner stands
    (2 max; provided by sponsor)
    Preeminent:heavy_check_mark: + :heavy_check_mark:
    space permitting
      
    Logo featured on Speaker backdrop:heavy_check_mark::heavy_check_mark:   
    Logo on ALL conference talk videos available forever:heavy_check_mark::heavy_check_mark:$1,000$1,000$1,000
    Featured in wrap-up video with special thanksPreeminentPreeminent$1,000$1,000$1,000
    Optional ten minute speaking slot after a keynote (max 3 sponsors):heavy_check_mark:    
    1 notification to attendees during the conference:heavy_check_mark:    
    + +
    + +

    T-Shirts! Included in Gold Tier +

    + +

    Sign your sponsorship contract and pay your invoice by August 15, 2024 to get your logo on our conference t-shirts for all sponsors Gold and up!* T-shirts are distributed at the conference for in-person attendees to wear at no cost to them. Online attendees will be able to purchase the t-shirt to have it delivered to them from a distributor. Logos will ideally be given in one color on a transparent background and be delivered in SVG format.

    + +

    Opening Party – $10,000-$14,000

    + +

    This can be very customized. Sponsoring the opening party is a great way to introduce yourself to our attendees in a fun, lighthearted environment outside the main conference. We’ll help you coordinate logistics and get the word out about your company!

    + +

    Lanyard – Silver Tier Minimum – $3,500

    + +

    The lanyard sponsor’s logo will appear on the badge lanyards that attendees wear at the conference (and thus in all photos).

    + +

    Tote Bag – Silver Tier Minimum – $1,500

    + +

    Multiple sponsors accepted until capacity. Logo will appear prominently on our reusable tote bag, which attendees will keep for years to come.

    + +

    Refreshments – Bronze Tier Minimum – $2,000+

    + +

    Display your company’s name and logo on the break tables next to the coffee, and let us thank you! This add-on is potentially open to multiple sponsors in the Bronze Tier or higher.

    + +

    Invitation Sponsor – Bronze Tier Minimum – $3,000

    + +

    Sponsor logo, link, and a brief statement will appear in the email sent to all attendees welcoming them to the conference and providing instructions. This add-on is open to a single sponsor in the Bronze Tier or higher.

    + +

    Opportunity Grant Sponsor

    + +

    This sponsorship can be of any amount more than an individual ticket and can be with or without a normal sponsorship tier. These grants help us give sponsorship to attendees who could not otherwise afford to come. Sponsors will be added with name, link, and logo on our website.

    + +

    Need a custom sponsorship package?

    + +

    We’ve helped sponsors host luncheons, throw parties, and add opportunity grant sponsorship and other perks to existing packages.

    + +

    Whether you’re joining us in Durham or supporting us from afar, please consider sponsoring DjangoCon US 2024.

    + +

    We can’t do it without you and hope to see you there!

    + +

    Contact Us Today

    +
    +
    +
    +
    diff --git a/src/venue.html b/src/venue.html new file mode 100644 index 00000000..b32e8b2a --- /dev/null +++ b/src/venue.html @@ -0,0 +1,258 @@ +--- +layout: default + +title: Welcome to Durham! +description: DjangoCon US 2024 is being held at the Durham Convention Center in Durham, NC. + +other_lodging: + - name: 21c Museum and Hotel + price_night: $350 + website: https://www.21cmuseumhotels.com/durham/ + feature: Closest option + - name: Unscripted Durham + price_night: $226 + website: https://www.unscriptedhotels.com/ + feature: Most inexpensive and walkable option + - name: Holiday Inn Express Durham + price_night: $151 + website: https://www.ihg.com/holidayinnexpress/hotels/us/en/durham/rduhm/hoteldetail + feature: Inexpensive, close, but not walkable + - name: Hilton Garden Inn Durham/University Medical Center + price_night: $191 + website: https://www.hilton.com/en/hotels/rdumcgi-hilton-garden-inn-durham-university-medical-center/ + feature: Nearest Hilton brand option + +--- + +
    +
    +
    +
    +

    Welcome to Durham!

    +
    +

    + This year's venue is the Durham Convention Center! Located just 20 minutes + from Raleigh-Durham International Airport, the Durham Convention Center + provides the perfect setting. +

    +
    +
    + +
    + + +
    + View Larger Map + + + Durham Convention Center
    + 301 W Morgan St, Durham, NC 27701 +
    +
    +
    +
    +
    +
    + +
    +
    +
    +
    + Exterior photo of Durham Marriott City Center +
    Durham Marriott City Center
    +
    + +
    +

    Staying at the Durham Marriott City Center

    +

    + Our group rate has expired, but there are still rooms at the hotel. + Please don't wait to book your room! +

    +
      +
    • 🛜 Free Wi-Fi
    • +
    • 🧑‍💻 Room for hallway hacking
    • +
    • 🏙️ In the middle of downtown
    • +
    + + {% comment %} + +

    + ATTENTION!: If you try to book and it says the capacity is full, please + call the hotel to try to book your room. +

    + {% endcomment %} +

    + Book a Room +

    +
    +
    +
    + +
    +
    +

    Other hotel options

    +
    + +
    +
    + {% comment %} +

    + Our room block at the Marriott is almost completely sold out, so check + out these other nearby options! +

    + {% endcomment %} + +
      + {% for lodge in other_lodging %} +
    • +
      + {{ lodge.name }} + + + {{ lodge.price_night }}/night + +
      + + {{ lodge.feature }} +
    • + {% endfor %} +
    + +

    All rates are "the last time we checked" and may be outdated.

    +
    + +
    +
    +
    + +
    +
    +
    +

    Around Durham

    +

    + Public transportation is available via the + GoTriangle + and + GoDurham + systems which includes transit via bus to/from the Raleigh-Durham + International Airport and the Durham Station (approximately 1/4 mile walk + from the station to the hotel). Popular ride sharing services are also + available. While you're cruising around town, be sure to check out our + favorite spots: +

    +
    + +
    + {% comment %} + Beginning of Places Around Durham. + + To update the information + in this section, please see: `src/_content/places` + {% endcomment %} + +
    +
      + {% for place in collections.places %} + {% include 'components/place.html' %} + {% endfor %} +
    +
    + +
    +
    +
    + + +
    +
    +
    +

    An Accessible Experience

    +
    +

    + We're working with the staff at the Durham Convention Center to + accommodate the diverse needs of our attendees. +

    +

    + Are we missing something? + Let us know. +

    +
    +
    + +
      +
    • All public restrooms have accessible stalls.
    • +
    • + The convention center does not provide gender-neutral restrooms. + Please use the restroom for the gender with which you identify. +
    • +
    • There is step-free access to all parts of the venue.
    • +
    • + Service animals are welcome, and there is a grassy area outside the + hotel and convention center where they can be walked. +
    • +
    • + The Quiet Room will be available on all conference days. This room + is not for socializing. +
    • +
    • + A Lactation Room will be available as needed Sunday-Wednesday. + {% comment %} + A refrigerator will be available in that room. + Read more about using the lactation room. + {% endcomment %} +
    • + + + + {% comment %} +
    • + Attend a recovery meeting. + There are many recovery meetings near the conference hotel, + which can be seen on a map here. These include traditional AA meetings, LBGTQ community meetings, + secular meetings, and more. If you need more information or want to + carpool to meetings, please contact + recovery@pyphilly.org. + Anonymity will be maintained. +
    • + {% endcomment %} +
    • + Sponsored childcare + will be provided. +
    • +
    +
    +
    diff --git a/static/gpx/beach-to-marriott.gpx b/static/gpx/beach-to-marriott.gpx deleted file mode 100755 index 30bfb4f2..00000000 --- a/static/gpx/beach-to-marriott.gpx +++ /dev/null @@ -1,855 +0,0 @@ - - - - Beach to Marriott - - Garmin Connect - - - - - Beach to Marriott - - - 2.0 - - - - 2.0 - - - - 1.0 - - - - 1.0 - - - - 1.0 - - - - 1.0 - - - - 0.0 - - - - 0.0 - - - - 0.0 - - - - 0.0 - - - - 0.0 - - - - 0.0 - - - - 0.0 - - - - 0.0 - - - - 0.0 - - - - 0.0 - - - - 0.0 - - - - 0.0 - - - - 0.0 - - - - 0.0 - - - - 0.0 - - - - 1.0 - - - - 1.0 - - - - 1.0 - - - - 1.0 - - - - 3.0 - - - - 4.0 - - - - 4.0 - - - - 4.0 - - - - 5.0 - - - - 5.0 - - - - 5.0 - - - - 5.0 - - - - 5.0 - - - - 6.0 - - - - 6.0 - - - - 6.0 - - - - 6.0 - - - - 6.0 - - - - 6.0 - - - - 6.0 - - - - 6.0 - - - - 6.0 - - - - 6.0 - - - - 6.0 - - - - 6.0 - - - - 5.0 - - - - 5.0 - - - - 5.0 - - - - 5.0 - - - - 5.0 - - - - 5.0 - - - - 5.0 - - - - 4.0 - - - - 4.0 - - - - 4.0 - - - - 4.0 - - - - 4.0 - - - - 4.0 - - - - 4.0 - - - - 4.0 - - - - 5.0 - - - - 5.0 - - - - 5.0 - - - - 5.0 - - - - 5.0 - - - - 5.0 - - - - 5.0 - - - - 5.0 - - - - 5.0 - - - - 6.0 - - - - 6.0 - - - - 6.0 - - - - 6.0 - - - - 7.0 - - - - 7.0 - - - - 8.0 - - - - 9.0 - - - - 9.0 - - - - 10.0 - - - - 10.0 - - - - 10.0 - - - - 11.0 - - - - 11.0 - - - - 11.0 - - - - 11.0 - - - - 11.0 - - - - 11.0 - - - - 10.0 - - - - 10.0 - - - - 10.0 - - - - 10.0 - - - - 10.0 - - - - 10.0 - - - - 10.0 - - - - 10.0 - - - - 10.0 - - - - 10.0 - - - - 10.0 - - - - 9.0 - - - - 9.0 - - - - 9.0 - - - - 9.0 - - - - 9.0 - - - - 8.0 - - - - 8.0 - - - - 8.0 - - - - 8.0 - - - - 9.0 - - - - 9.0 - - - - 9.0 - - - - 9.0 - - - - 9.0 - - - - 10.0 - - - - 10.0 - - - - 11.0 - - - - 11.0 - - - - 11.0 - - - - 11.0 - - - - 11.0 - - - - 11.0 - - - - 11.0 - - - - 11.0 - - - - 11.0 - - - - 11.0 - - - - 11.0 - - - - 11.0 - - - - 11.0 - - - - 11.0 - - - - 11.0 - - - - 10.0 - - - - 10.0 - - - - 10.0 - - - - 10.0 - - - - 9.0 - - - - 9.0 - - - - 9.0 - - - - 9.0 - - - - 9.0 - - - - 9.0 - - - - 9.0 - - - - 9.0 - - - - 9.0 - - - - 9.0 - - - - 9.0 - - - - 9.0 - - - - 10.0 - - - - 10.0 - - - - 10.0 - - - - 10.0 - - - - 11.0 - - - - 11.0 - - - - 12.0 - - - - 12.0 - - - - 12.0 - - - - 13.0 - - - - 13.0 - - - - 12.0 - - - - 12.0 - - - - 12.0 - - - - 12.0 - - - - 12.0 - - - - 12.0 - - - - 11.0 - - - - 10.0 - - - - 10.0 - - - - 10.0 - - - - 10.0 - - - - 10.0 - - - - 10.0 - - - - 10.0 - - - - 10.0 - - - - 10.0 - - - - 11.0 - - - - 11.0 - - - - 12.0 - - - - 12.0 - - - - 13.0 - - - - 13.0 - - - - 14.0 - - - - 14.0 - - - - 15.0 - - - - 15.0 - - - - 15.0 - - - - 16.0 - - - - 16.0 - - - - 16.0 - - - - 16.0 - - - - 16.0 - - - - 16.0 - - - - 16.0 - - - - 16.0 - - - - 16.0 - - - - 16.0 - - - - 16.0 - - - - 16.0 - - - - 15.0 - - - - 15.0 - - - - 15.0 - - - - 15.0 - - - - 15.0 - - - - 15.0 - - - - 15.0 - - - - 14.0 - - - - 14.0 - - - - 14.0 - - - - 13.0 - - - - 13.0 - - - - 13.0 - - - - - diff --git a/static/gpx/marriott-to-beach.gpx b/static/gpx/marriott-to-beach.gpx deleted file mode 100755 index 5b80cf33..00000000 --- a/static/gpx/marriott-to-beach.gpx +++ /dev/null @@ -1,859 +0,0 @@ - - - - Marriott to the beach - - Garmin Connect - - - - - Marriott to the beach - - - 13.0 - - - - 13.0 - - - - 13.0 - - - - 14.0 - - - - 14.0 - - - - 14.0 - - - - 14.0 - - - - 14.0 - - - - 15.0 - - - - 15.0 - - - - 15.0 - - - - 15.0 - - - - 16.0 - - - - 16.0 - - - - 16.0 - - - - 15.0 - - - - 15.0 - - - - 15.0 - - - - 14.0 - - - - 14.0 - - - - 14.0 - - - - 14.0 - - - - 14.0 - - - - 13.0 - - - - 13.0 - - - - 13.0 - - - - 12.0 - - - - 12.0 - - - - 12.0 - - - - 11.0 - - - - 11.0 - - - - 11.0 - - - - 10.0 - - - - 10.0 - - - - 10.0 - - - - 10.0 - - - - 10.0 - - - - 10.0 - - - - 11.0 - - - - 11.0 - - - - 11.0 - - - - 11.0 - - - - 11.0 - - - - 11.0 - - - - 12.0 - - - - 11.0 - - - - 11.0 - - - - 11.0 - - - - 10.0 - - - - 10.0 - - - - 10.0 - - - - 10.0 - - - - 10.0 - - - - 10.0 - - - - 10.0 - - - - 9.0 - - - - 9.0 - - - - 9.0 - - - - 9.0 - - - - 9.0 - - - - 9.0 - - - - 9.0 - - - - 9.0 - - - - 9.0 - - - - 9.0 - - - - 9.0 - - - - 9.0 - - - - 10.0 - - - - 10.0 - - - - 10.0 - - - - 10.0 - - - - 10.0 - - - - 10.0 - - - - 11.0 - - - - 11.0 - - - - 11.0 - - - - 11.0 - - - - 11.0 - - - - 11.0 - - - - 11.0 - - - - 11.0 - - - - 11.0 - - - - 11.0 - - - - 11.0 - - - - 11.0 - - - - 11.0 - - - - 11.0 - - - - 11.0 - - - - 10.0 - - - - 10.0 - - - - 10.0 - - - - 9.0 - - - - 9.0 - - - - 9.0 - - - - 9.0 - - - - 8.0 - - - - 8.0 - - - - 8.0 - - - - 8.0 - - - - 8.0 - - - - 9.0 - - - - 9.0 - - - - 9.0 - - - - 9.0 - - - - 9.0 - - - - 10.0 - - - - 10.0 - - - - 10.0 - - - - 10.0 - - - - 10.0 - - - - 10.0 - - - - 10.0 - - - - 10.0 - - - - 11.0 - - - - 10.0 - - - - 10.0 - - - - 10.0 - - - - 10.0 - - - - 11.0 - - - - 11.0 - - - - 11.0 - - - - 11.0 - - - - 11.0 - - - - 10.0 - - - - 10.0 - - - - 10.0 - - - - 9.0 - - - - 9.0 - - - - 9.0 - - - - 8.0 - - - - 8.0 - - - - 7.0 - - - - 7.0 - - - - 7.0 - - - - 6.0 - - - - 6.0 - - - - 6.0 - - - - 5.0 - - - - 5.0 - - - - 5.0 - - - - 5.0 - - - - 5.0 - - - - 5.0 - - - - 5.0 - - - - 5.0 - - - - 5.0 - - - - 4.0 - - - - 4.0 - - - - 4.0 - - - - 4.0 - - - - 4.0 - - - - 4.0 - - - - 4.0 - - - - 4.0 - - - - 4.0 - - - - 5.0 - - - - 5.0 - - - - 5.0 - - - - 5.0 - - - - 5.0 - - - - 5.0 - - - - 5.0 - - - - 6.0 - - - - 6.0 - - - - 6.0 - - - - 6.0 - - - - 6.0 - - - - 6.0 - - - - 6.0 - - - - 6.0 - - - - 6.0 - - - - 6.0 - - - - 6.0 - - - - 5.0 - - - - 5.0 - - - - 5.0 - - - - 5.0 - - - - 5.0 - - - - 5.0 - - - - 5.0 - - - - 5.0 - - - - 4.0 - - - - 4.0 - - - - 4.0 - - - - 3.0 - - - - 2.0 - - - - 2.0 - - - - 2.0 - - - - 1.0 - - - - 1.0 - - - - 1.0 - - - - 1.0 - - - - 1.0 - - - - 0.0 - - - - 0.0 - - - - 0.0 - - - - 0.0 - - - - 0.0 - - - - 0.0 - - - - 0.0 - - - - 0.0 - - - - 0.0 - - - - 0.0 - - - - 0.0 - - - - 0.0 - - - - 0.0 - - - - 1.0 - - - - 1.0 - - - - 1.0 - - - - 2.0 - - - - - diff --git a/static/iframe_compat.js b/static/iframe_compat.js deleted file mode 100644 index c9b2156d..00000000 --- a/static/iframe_compat.js +++ /dev/null @@ -1,9 +0,0 @@ -$(function() { - console.log('rendered', window.parent, window, window.parent !== window) - if (window.parent !== window) { - // We're in an iframe. Let's remove the navbar and the footer - $('nav:not(.faq-nav),footer').remove() - // With no navbar, the top padding for the content can be removed - $('header.subpage-header').addClass('no-top') - } -}); diff --git a/static/img/about-mobile.jpg b/static/img/about-mobile.jpg deleted file mode 100644 index 25d69664..00000000 Binary files a/static/img/about-mobile.jpg and /dev/null differ diff --git a/static/img/aid-line.svg b/static/img/aid-line.svg deleted file mode 100644 index fbd3f006..00000000 --- a/static/img/aid-line.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/static/img/aid.svg b/static/img/aid.svg deleted file mode 100644 index 3e2193ac..00000000 --- a/static/img/aid.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/static/img/attendees.jpg b/static/img/attendees.jpg deleted file mode 100644 index 2eceb956..00000000 Binary files a/static/img/attendees.jpg and /dev/null differ diff --git a/static/img/blog/Dogbe_Abigail-DSC07499-1.jpg b/static/img/blog/Dogbe_Abigail-DSC07499-1.jpg deleted file mode 100644 index 645d7653..00000000 Binary files a/static/img/blog/Dogbe_Abigail-DSC07499-1.jpg and /dev/null differ diff --git a/static/img/blog/Volunteer1.jpg b/static/img/blog/Volunteer1.jpg deleted file mode 100644 index 56d07467..00000000 Binary files a/static/img/blog/Volunteer1.jpg and /dev/null differ diff --git a/static/img/blog/about-proposals.png b/static/img/blog/about-proposals.png deleted file mode 100644 index b9c93a43..00000000 Binary files a/static/img/blog/about-proposals.png and /dev/null differ diff --git a/static/img/blog/access-san-diego-river-trail.png b/static/img/blog/access-san-diego-river-trail.png deleted file mode 100755 index 9d3d9020..00000000 Binary files a/static/img/blog/access-san-diego-river-trail.png and /dev/null differ diff --git a/static/img/blog/andrew-godwin.jpg b/static/img/blog/andrew-godwin.jpg deleted file mode 100755 index 22817499..00000000 Binary files a/static/img/blog/andrew-godwin.jpg and /dev/null differ diff --git a/static/img/blog/andy_django_profile_zoom_small.jpg b/static/img/blog/andy_django_profile_zoom_small.jpg deleted file mode 100644 index 329283a3..00000000 Binary files a/static/img/blog/andy_django_profile_zoom_small.jpg and /dev/null differ diff --git a/static/img/blog/anna_keynote.png b/static/img/blog/anna_keynote.png deleted file mode 100644 index ff5456f7..00000000 Binary files a/static/img/blog/anna_keynote.png and /dev/null differ diff --git a/static/img/blog/announcing-2019.png b/static/img/blog/announcing-2019.png deleted file mode 100644 index 90071680..00000000 Binary files a/static/img/blog/announcing-2019.png and /dev/null differ diff --git a/static/img/blog/around-town.jpg b/static/img/blog/around-town.jpg deleted file mode 100644 index c6fe0954..00000000 Binary files a/static/img/blog/around-town.jpg and /dev/null differ diff --git a/static/img/blog/board_games.jpg b/static/img/blog/board_games.jpg deleted file mode 100644 index 5cd7c68b..00000000 Binary files a/static/img/blog/board_games.jpg and /dev/null differ diff --git a/static/img/blog/caktus-blog-1.jpg b/static/img/blog/caktus-blog-1.jpg deleted file mode 100644 index 66004ae8..00000000 Binary files a/static/img/blog/caktus-blog-1.jpg and /dev/null differ diff --git a/static/img/blog/caktusgolf.jpg b/static/img/blog/caktusgolf.jpg deleted file mode 100644 index ed0d697e..00000000 Binary files a/static/img/blog/caktusgolf.jpg and /dev/null differ diff --git a/static/img/blog/call-for-reviewers-2019.png b/static/img/blog/call-for-reviewers-2019.png deleted file mode 100644 index 78582539..00000000 Binary files a/static/img/blog/call-for-reviewers-2019.png and /dev/null differ diff --git a/static/img/blog/call_for_reviewers.png b/static/img/blog/call_for_reviewers.png deleted file mode 100644 index c4bc1482..00000000 Binary files a/static/img/blog/call_for_reviewers.png and /dev/null differ diff --git a/static/img/blog/cfp-announced-2022.png b/static/img/blog/cfp-announced-2022.png deleted file mode 100644 index 6b78d8f1..00000000 Binary files a/static/img/blog/cfp-announced-2022.png and /dev/null differ diff --git a/static/img/blog/cfp-announced-2023.png b/static/img/blog/cfp-announced-2023.png deleted file mode 100755 index 0c720750..00000000 Binary files a/static/img/blog/cfp-announced-2023.png and /dev/null differ diff --git a/static/img/blog/cfp-announcement.png b/static/img/blog/cfp-announcement.png deleted file mode 100644 index 92d14629..00000000 Binary files a/static/img/blog/cfp-announcement.png and /dev/null differ diff --git a/static/img/blog/cfp-closing-soon.png b/static/img/blog/cfp-closing-soon.png deleted file mode 100644 index 418fd56b..00000000 Binary files a/static/img/blog/cfp-closing-soon.png and /dev/null differ diff --git a/static/img/blog/cfp-oppgrants.jpg b/static/img/blog/cfp-oppgrants.jpg deleted file mode 100644 index e852a369..00000000 Binary files a/static/img/blog/cfp-oppgrants.jpg and /dev/null differ diff --git a/static/img/blog/cfp-oppgrants.png b/static/img/blog/cfp-oppgrants.png deleted file mode 100644 index d70b8521..00000000 Binary files a/static/img/blog/cfp-oppgrants.png and /dev/null differ diff --git a/static/img/blog/cfp_open.png b/static/img/blog/cfp_open.png deleted file mode 100644 index 5404f666..00000000 Binary files a/static/img/blog/cfp_open.png and /dev/null differ diff --git a/static/img/blog/childcare-info.png b/static/img/blog/childcare-info.png deleted file mode 100644 index 3087d627..00000000 Binary files a/static/img/blog/childcare-info.png and /dev/null differ diff --git a/static/img/blog/childcare-lactation-family.png b/static/img/blog/childcare-lactation-family.png deleted file mode 100644 index 7be71090..00000000 Binary files a/static/img/blog/childcare-lactation-family.png and /dev/null differ diff --git a/static/img/blog/childcare.png b/static/img/blog/childcare.png deleted file mode 100644 index 1df13827..00000000 Binary files a/static/img/blog/childcare.png and /dev/null differ diff --git a/static/img/blog/chloe_keynote.png b/static/img/blog/chloe_keynote.png deleted file mode 100644 index ff7b78ff..00000000 Binary files a/static/img/blog/chloe_keynote.png and /dev/null differ diff --git a/static/img/blog/deep-dive-day.png b/static/img/blog/deep-dive-day.png deleted file mode 100644 index 4a20156a..00000000 Binary files a/static/img/blog/deep-dive-day.png and /dev/null differ diff --git a/static/img/blog/dg1.jpg b/static/img/blog/dg1.jpg deleted file mode 100644 index f78129a1..00000000 Binary files a/static/img/blog/dg1.jpg and /dev/null differ diff --git a/static/img/blog/dg10.jpg b/static/img/blog/dg10.jpg deleted file mode 100644 index e9ca4aa6..00000000 Binary files a/static/img/blog/dg10.jpg and /dev/null differ diff --git a/static/img/blog/dg11.jpg b/static/img/blog/dg11.jpg deleted file mode 100644 index c24bb2c0..00000000 Binary files a/static/img/blog/dg11.jpg and /dev/null differ diff --git a/static/img/blog/dg12.jpg b/static/img/blog/dg12.jpg deleted file mode 100644 index a7b037f3..00000000 Binary files a/static/img/blog/dg12.jpg and /dev/null differ diff --git a/static/img/blog/dg13.jpg b/static/img/blog/dg13.jpg deleted file mode 100644 index a56f5798..00000000 Binary files a/static/img/blog/dg13.jpg and /dev/null differ diff --git a/static/img/blog/dg14.jpg b/static/img/blog/dg14.jpg deleted file mode 100644 index c54f873f..00000000 Binary files a/static/img/blog/dg14.jpg and /dev/null differ diff --git a/static/img/blog/dg2.jpg b/static/img/blog/dg2.jpg deleted file mode 100644 index 7f85cdfd..00000000 Binary files a/static/img/blog/dg2.jpg and /dev/null differ diff --git a/static/img/blog/dg3.jpg b/static/img/blog/dg3.jpg deleted file mode 100644 index 8f0cb16c..00000000 Binary files a/static/img/blog/dg3.jpg and /dev/null differ diff --git a/static/img/blog/dg4.jpg b/static/img/blog/dg4.jpg deleted file mode 100644 index 69318abd..00000000 Binary files a/static/img/blog/dg4.jpg and /dev/null differ diff --git a/static/img/blog/dg5.jpg b/static/img/blog/dg5.jpg deleted file mode 100644 index e31a9142..00000000 Binary files a/static/img/blog/dg5.jpg and /dev/null differ diff --git a/static/img/blog/dg6.jpg b/static/img/blog/dg6.jpg deleted file mode 100644 index dbbc9824..00000000 Binary files a/static/img/blog/dg6.jpg and /dev/null differ diff --git a/static/img/blog/dg7.jpg b/static/img/blog/dg7.jpg deleted file mode 100644 index b36b02b0..00000000 Binary files a/static/img/blog/dg7.jpg and /dev/null differ diff --git a/static/img/blog/dg8.jpg b/static/img/blog/dg8.jpg deleted file mode 100644 index 4caef655..00000000 Binary files a/static/img/blog/dg8.jpg and /dev/null differ diff --git a/static/img/blog/dg9.jpg b/static/img/blog/dg9.jpg deleted file mode 100644 index 79fe3f3d..00000000 Binary files a/static/img/blog/dg9.jpg and /dev/null differ diff --git a/static/img/blog/django-girls.png b/static/img/blog/django-girls.png deleted file mode 100644 index c9467a01..00000000 Binary files a/static/img/blog/django-girls.png and /dev/null differ diff --git a/static/img/blog/django.social_Durham.jpg b/static/img/blog/django.social_Durham.jpg deleted file mode 100644 index 659f74ec..00000000 Binary files a/static/img/blog/django.social_Durham.jpg and /dev/null differ diff --git a/static/img/blog/djangocon_us_earlybird_pricing_2023.png b/static/img/blog/djangocon_us_earlybird_pricing_2023.png deleted file mode 100644 index 1c71d417..00000000 Binary files a/static/img/blog/djangocon_us_earlybird_pricing_2023.png and /dev/null differ diff --git a/static/img/blog/djangocon_us_organizers_2022.jpg b/static/img/blog/djangocon_us_organizers_2022.jpg deleted file mode 100644 index 116d4810..00000000 Binary files a/static/img/blog/djangocon_us_organizers_2022.jpg and /dev/null differ diff --git a/static/img/blog/djangocon_us_sprints_2022.jpg b/static/img/blog/djangocon_us_sprints_2022.jpg deleted file mode 100644 index e53f8186..00000000 Binary files a/static/img/blog/djangocon_us_sprints_2022.jpg and /dev/null differ diff --git a/static/img/blog/djangocon_us_sprints_closeup_2022.jpg b/static/img/blog/djangocon_us_sprints_closeup_2022.jpg deleted file mode 100644 index 24ec7ac1..00000000 Binary files a/static/img/blog/djangocon_us_sprints_closeup_2022.jpg and /dev/null differ diff --git a/static/img/blog/fin_aid_allocation.png b/static/img/blog/fin_aid_allocation.png deleted file mode 100644 index cdbd0ec5..00000000 Binary files a/static/img/blog/fin_aid_allocation.png and /dev/null differ diff --git a/static/img/blog/frank-wiles.jpg b/static/img/blog/frank-wiles.jpg deleted file mode 100644 index 08ed0641..00000000 Binary files a/static/img/blog/frank-wiles.jpg and /dev/null differ diff --git a/static/img/blog/git-help-desk.png b/static/img/blog/git-help-desk.png deleted file mode 100644 index 61646945..00000000 Binary files a/static/img/blog/git-help-desk.png and /dev/null differ diff --git a/static/img/blog/guidebook.png b/static/img/blog/guidebook.png deleted file mode 100644 index b5f684d3..00000000 Binary files a/static/img/blog/guidebook.png and /dev/null differ diff --git a/static/img/blog/international_travel.png b/static/img/blog/international_travel.png deleted file mode 100644 index 51d879a9..00000000 Binary files a/static/img/blog/international_travel.png and /dev/null differ diff --git a/static/img/blog/julia-solorzano.JPG b/static/img/blog/julia-solorzano.JPG deleted file mode 100644 index 32f52993..00000000 Binary files a/static/img/blog/julia-solorzano.JPG and /dev/null differ diff --git a/static/img/blog/lactation-room.png b/static/img/blog/lactation-room.png deleted file mode 100644 index b1776c1a..00000000 Binary files a/static/img/blog/lactation-room.png and /dev/null differ diff --git a/static/img/blog/lightning_talks.png b/static/img/blog/lightning_talks.png deleted file mode 100644 index 4d56d1f9..00000000 Binary files a/static/img/blog/lightning_talks.png and /dev/null differ diff --git a/static/img/blog/mariatta_keynote.png b/static/img/blog/mariatta_keynote.png deleted file mode 100644 index 142063dd..00000000 Binary files a/static/img/blog/mariatta_keynote.png and /dev/null differ diff --git a/static/img/blog/melanie-and-jay.jpg b/static/img/blog/melanie-and-jay.jpg deleted file mode 100644 index 345a6ef8..00000000 Binary files a/static/img/blog/melanie-and-jay.jpg and /dev/null differ diff --git a/static/img/blog/new-ticket-types.png b/static/img/blog/new-ticket-types.png deleted file mode 100644 index 1d1aab1c..00000000 Binary files a/static/img/blog/new-ticket-types.png and /dev/null differ diff --git a/static/img/blog/orientation.png b/static/img/blog/orientation.png deleted file mode 100644 index d8964664..00000000 Binary files a/static/img/blog/orientation.png and /dev/null differ diff --git a/static/img/blog/philippe-oursel-hEzxeDOMXoo-unsplash-biking.jpg b/static/img/blog/philippe-oursel-hEzxeDOMXoo-unsplash-biking.jpg deleted file mode 100644 index 8cd30da5..00000000 Binary files a/static/img/blog/philippe-oursel-hEzxeDOMXoo-unsplash-biking.jpg and /dev/null differ diff --git a/static/img/blog/program_announcement.png b/static/img/blog/program_announcement.png deleted file mode 100644 index 4181c8f9..00000000 Binary files a/static/img/blog/program_announcement.png and /dev/null differ diff --git a/static/img/blog/rachell-calhoun.jpg b/static/img/blog/rachell-calhoun.jpg deleted file mode 100755 index ba3476c6..00000000 Binary files a/static/img/blog/rachell-calhoun.jpg and /dev/null differ diff --git a/static/img/blog/schedule.png b/static/img/blog/schedule.png deleted file mode 100644 index fc0e9403..00000000 Binary files a/static/img/blog/schedule.png and /dev/null differ diff --git a/static/img/blog/speaking-2022-cfp.jpg b/static/img/blog/speaking-2022-cfp.jpg deleted file mode 100644 index 88262c54..00000000 Binary files a/static/img/blog/speaking-2022-cfp.jpg and /dev/null differ diff --git a/static/img/blog/speaking-2023-cfp.jpg b/static/img/blog/speaking-2023-cfp.jpg deleted file mode 100755 index 85e68018..00000000 Binary files a/static/img/blog/speaking-2023-cfp.jpg and /dev/null differ diff --git a/static/img/blog/speaking-2023.jpg b/static/img/blog/speaking-2023.jpg deleted file mode 100644 index 139d2917..00000000 Binary files a/static/img/blog/speaking-2023.jpg and /dev/null differ diff --git a/static/img/blog/speaking.jpg b/static/img/blog/speaking.jpg deleted file mode 100644 index 1a923993..00000000 Binary files a/static/img/blog/speaking.jpg and /dev/null differ diff --git a/static/img/blog/sprints_intro.png b/static/img/blog/sprints_intro.png deleted file mode 100644 index d368bff7..00000000 Binary files a/static/img/blog/sprints_intro.png and /dev/null differ diff --git a/static/img/blog/sprints_organizers.png b/static/img/blog/sprints_organizers.png deleted file mode 100644 index 6fde0c57..00000000 Binary files a/static/img/blog/sprints_organizers.png and /dev/null differ diff --git a/static/img/blog/state-of-django.png b/static/img/blog/state-of-django.png deleted file mode 100644 index b1edff26..00000000 Binary files a/static/img/blog/state-of-django.png and /dev/null differ diff --git a/static/img/blog/talk-lineup-2019.png b/static/img/blog/talk-lineup-2019.png deleted file mode 100644 index f40f7958..00000000 Binary files a/static/img/blog/talk-lineup-2019.png and /dev/null differ diff --git a/static/img/blog/tecolote-canyon-exit.jpg b/static/img/blog/tecolote-canyon-exit.jpg deleted file mode 100755 index 1cab1cca..00000000 Binary files a/static/img/blog/tecolote-canyon-exit.jpg and /dev/null differ diff --git a/static/img/blog/thankyoujbs.png b/static/img/blog/thankyoujbs.png deleted file mode 100644 index 9e9849b3..00000000 Binary files a/static/img/blog/thankyoujbs.png and /dev/null differ diff --git a/static/img/blog/ticket-last-call.png b/static/img/blog/ticket-last-call.png deleted file mode 100644 index a9142f01..00000000 Binary files a/static/img/blog/ticket-last-call.png and /dev/null differ diff --git a/static/img/blog/tickets_on_sale.png b/static/img/blog/tickets_on_sale.png deleted file mode 100644 index d7c61dfa..00000000 Binary files a/static/img/blog/tickets_on_sale.png and /dev/null differ diff --git a/static/img/blog/trivia_night.png b/static/img/blog/trivia_night.png deleted file mode 100644 index ef89cb15..00000000 Binary files a/static/img/blog/trivia_night.png and /dev/null differ diff --git a/static/img/blog/trythall-zoomies.jpg b/static/img/blog/trythall-zoomies.jpg deleted file mode 100644 index 87b788cb..00000000 Binary files a/static/img/blog/trythall-zoomies.jpg and /dev/null differ diff --git a/static/img/blog/tutorial_announcement.png b/static/img/blog/tutorial_announcement.png deleted file mode 100644 index b670703e..00000000 Binary files a/static/img/blog/tutorial_announcement.png and /dev/null differ diff --git a/static/img/blog/volunteer-opportunities-2019.png b/static/img/blog/volunteer-opportunities-2019.png deleted file mode 100644 index e842befc..00000000 Binary files a/static/img/blog/volunteer-opportunities-2019.png and /dev/null differ diff --git a/static/img/blog/volunteer-opportunities.png b/static/img/blog/volunteer-opportunities.png deleted file mode 100644 index dee9262d..00000000 Binary files a/static/img/blog/volunteer-opportunities.png and /dev/null differ diff --git a/static/img/blog/volunteer2.jpg b/static/img/blog/volunteer2.jpg deleted file mode 100644 index 901fac84..00000000 Binary files a/static/img/blog/volunteer2.jpg and /dev/null differ diff --git a/static/img/blog/volunteer3.jpg b/static/img/blog/volunteer3.jpg deleted file mode 100644 index bb4e3a40..00000000 Binary files a/static/img/blog/volunteer3.jpg and /dev/null differ diff --git a/static/img/blog/volunteer3_large.jpg b/static/img/blog/volunteer3_large.jpg deleted file mode 100644 index 65c118b5..00000000 Binary files a/static/img/blog/volunteer3_large.jpg and /dev/null differ diff --git a/static/img/blog/volunteer4.jpg b/static/img/blog/volunteer4.jpg deleted file mode 100644 index 7dc10ed6..00000000 Binary files a/static/img/blog/volunteer4.jpg and /dev/null differ diff --git a/static/img/blog/what-should-i-bring.jpg b/static/img/blog/what-should-i-bring.jpg deleted file mode 100644 index e82677e1..00000000 Binary files a/static/img/blog/what-should-i-bring.jpg and /dev/null differ diff --git a/static/img/blog/what-should-i-bring.png b/static/img/blog/what-should-i-bring.png deleted file mode 100644 index c603e885..00000000 Binary files a/static/img/blog/what-should-i-bring.png and /dev/null differ diff --git a/static/img/briefcase-line.svg b/static/img/briefcase-line.svg deleted file mode 100644 index c9b9f45a..00000000 --- a/static/img/briefcase-line.svg +++ /dev/null @@ -1 +0,0 @@ - diff --git a/static/img/briefcase.svg b/static/img/briefcase.svg deleted file mode 100644 index 97d8e311..00000000 --- a/static/img/briefcase.svg +++ /dev/null @@ -1 +0,0 @@ - diff --git a/static/img/bug-line.svg b/static/img/bug-line.svg deleted file mode 100644 index a7355974..00000000 --- a/static/img/bug-line.svg +++ /dev/null @@ -1 +0,0 @@ - diff --git a/static/img/bug.svg b/static/img/bug.svg deleted file mode 100644 index 9f6cdc90..00000000 --- a/static/img/bug.svg +++ /dev/null @@ -1 +0,0 @@ -bug \ No newline at end of file diff --git a/static/img/cap-line.svg b/static/img/cap-line.svg deleted file mode 100644 index 88d7ec88..00000000 --- a/static/img/cap-line.svg +++ /dev/null @@ -1 +0,0 @@ - diff --git a/static/img/cap.svg b/static/img/cap.svg deleted file mode 100644 index c40ac8fd..00000000 --- a/static/img/cap.svg +++ /dev/null @@ -1 +0,0 @@ -cap \ No newline at end of file diff --git a/static/img/case.svg b/static/img/case.svg deleted file mode 100644 index dd639b1d..00000000 --- a/static/img/case.svg +++ /dev/null @@ -1 +0,0 @@ -case \ No newline at end of file diff --git a/static/img/click-here-to-login.png b/static/img/click-here-to-login.png deleted file mode 100644 index df9ca463..00000000 Binary files a/static/img/click-here-to-login.png and /dev/null differ diff --git a/static/img/code-line.svg b/static/img/code-line.svg deleted file mode 100644 index 8d2f1993..00000000 --- a/static/img/code-line.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/static/img/code.svg b/static/img/code.svg deleted file mode 100644 index 058d047b..00000000 --- a/static/img/code.svg +++ /dev/null @@ -1 +0,0 @@ -code \ No newline at end of file diff --git a/static/img/compass.svg b/static/img/compass.svg deleted file mode 100644 index 892c7731..00000000 --- a/static/img/compass.svg +++ /dev/null @@ -1 +0,0 @@ -compass \ No newline at end of file diff --git a/static/img/covid/covid19_test_example.png b/static/img/covid/covid19_test_example.png deleted file mode 100644 index b704f660..00000000 Binary files a/static/img/covid/covid19_test_example.png and /dev/null differ diff --git a/static/img/crab-arm.svg b/static/img/crab-arm.svg deleted file mode 100644 index 98b1e592..00000000 --- a/static/img/crab-arm.svg +++ /dev/null @@ -1,12 +0,0 @@ - - - - - - - - - - - - diff --git a/static/img/crowd-mobile.jpg b/static/img/crowd-mobile.jpg deleted file mode 100644 index e396e626..00000000 Binary files a/static/img/crowd-mobile.jpg and /dev/null differ diff --git a/static/img/dollar-line.svg b/static/img/dollar-line.svg deleted file mode 100644 index 98b50f8a..00000000 --- a/static/img/dollar-line.svg +++ /dev/null @@ -1 +0,0 @@ - diff --git a/static/img/dollar.svg b/static/img/dollar.svg deleted file mode 100644 index 3e2193ac..00000000 --- a/static/img/dollar.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/static/img/dsf_donate_image.png b/static/img/dsf_donate_image.png deleted file mode 100644 index 1be63e8b..00000000 Binary files a/static/img/dsf_donate_image.png and /dev/null differ diff --git a/static/img/email/2024-logo.png b/static/img/email/2024-logo.png deleted file mode 100644 index 8c1b2586..00000000 Binary files a/static/img/email/2024-logo.png and /dev/null differ diff --git a/static/img/email/banner.jpg b/static/img/email/banner.jpg deleted file mode 100644 index 20f8f8e0..00000000 Binary files a/static/img/email/banner.jpg and /dev/null differ diff --git a/static/img/email/sixftup.png b/static/img/email/sixftup.png deleted file mode 100644 index c1e7ab66..00000000 Binary files a/static/img/email/sixftup.png and /dev/null differ diff --git a/static/img/file.svg b/static/img/file.svg deleted file mode 100644 index 184aa7b5..00000000 --- a/static/img/file.svg +++ /dev/null @@ -1 +0,0 @@ -file \ No newline at end of file diff --git a/static/img/globe-line.svg b/static/img/globe-line.svg deleted file mode 100644 index fca16f36..00000000 --- a/static/img/globe-line.svg +++ /dev/null @@ -1 +0,0 @@ - diff --git a/static/img/globe.svg b/static/img/globe.svg deleted file mode 100644 index b37404fa..00000000 --- a/static/img/globe.svg +++ /dev/null @@ -1 +0,0 @@ -globe \ No newline at end of file diff --git a/static/img/hands-line.svg b/static/img/hands-line.svg deleted file mode 100644 index 2d01dc48..00000000 --- a/static/img/hands-line.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/static/img/hands.svg b/static/img/hands.svg deleted file mode 100644 index 8cc8b90f..00000000 --- a/static/img/hands.svg +++ /dev/null @@ -1 +0,0 @@ -hands \ No newline at end of file diff --git a/static/img/heart-line.svg b/static/img/heart-line.svg deleted file mode 100644 index 452a2cfe..00000000 --- a/static/img/heart-line.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/static/img/heart.svg b/static/img/heart.svg deleted file mode 100644 index edde376b..00000000 --- a/static/img/heart.svg +++ /dev/null @@ -1 +0,0 @@ -heart \ No newline at end of file diff --git a/static/img/home-testimonial-mobile.jpg b/static/img/home-testimonial-mobile.jpg deleted file mode 100644 index 33f135d1..00000000 Binary files a/static/img/home-testimonial-mobile.jpg and /dev/null differ diff --git a/static/img/home-testimonial.jpg b/static/img/home-testimonial.jpg deleted file mode 100644 index 3fd68f97..00000000 Binary files a/static/img/home-testimonial.jpg and /dev/null differ diff --git a/static/img/hotel_2.png b/static/img/hotel_2.png deleted file mode 100644 index 73041e4c..00000000 Binary files a/static/img/hotel_2.png and /dev/null differ diff --git a/static/img/job.svg b/static/img/job.svg deleted file mode 100644 index a3576d23..00000000 --- a/static/img/job.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/static/img/jobs-line.svg b/static/img/jobs-line.svg deleted file mode 100644 index be8d7140..00000000 --- a/static/img/jobs-line.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/static/img/landing-page/logo.svg b/static/img/landing-page/logo.svg deleted file mode 100644 index e4ef1ee0..00000000 --- a/static/img/landing-page/logo.svg +++ /dev/null @@ -1 +0,0 @@ -DjangoCon.us diff --git a/static/img/landing-page/people.jpg b/static/img/landing-page/people.jpg deleted file mode 100644 index 81f4ec14..00000000 Binary files a/static/img/landing-page/people.jpg and /dev/null differ diff --git a/static/img/list-line.svg b/static/img/list-line.svg deleted file mode 100644 index 78298e75..00000000 --- a/static/img/list-line.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/static/img/list.svg b/static/img/list.svg deleted file mode 100644 index 8e38ec9c..00000000 --- a/static/img/list.svg +++ /dev/null @@ -1 +0,0 @@ -list \ No newline at end of file diff --git a/static/img/logo-2022.svg b/static/img/logo-2022.svg deleted file mode 100644 index fd630d12..00000000 --- a/static/img/logo-2022.svg +++ /dev/null @@ -1,88 +0,0 @@ - - - - - - - - - - - diff --git a/static/img/logo-2023.svg b/static/img/logo-2023.svg deleted file mode 100644 index 741f6cc6..00000000 --- a/static/img/logo-2023.svg +++ /dev/null @@ -1,24 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/static/img/logo.svg b/static/img/logo.svg deleted file mode 100644 index 6dbdcda8..00000000 --- a/static/img/logo.svg +++ /dev/null @@ -1,80 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/static/img/marker.svg b/static/img/marker.svg deleted file mode 100644 index 49e32536..00000000 --- a/static/img/marker.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/static/img/megaphone-line.svg b/static/img/megaphone-line.svg deleted file mode 100644 index 04915deb..00000000 --- a/static/img/megaphone-line.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/static/img/megaphone.svg b/static/img/megaphone.svg deleted file mode 100644 index fe45371c..00000000 --- a/static/img/megaphone.svg +++ /dev/null @@ -1 +0,0 @@ -megaphone \ No newline at end of file diff --git a/static/img/money.svg b/static/img/money.svg deleted file mode 100644 index 84c1dd0d..00000000 --- a/static/img/money.svg +++ /dev/null @@ -1 +0,0 @@ -money \ No newline at end of file diff --git a/static/img/navigate-line.svg b/static/img/navigate-line.svg deleted file mode 100644 index 66b48a3a..00000000 --- a/static/img/navigate-line.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/static/img/navigate.svg b/static/img/navigate.svg deleted file mode 100644 index e1c2c22a..00000000 --- a/static/img/navigate.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/static/img/organizers/Kudzayi.jpg b/static/img/organizers/Kudzayi.jpg deleted file mode 100644 index df112ddc..00000000 Binary files a/static/img/organizers/Kudzayi.jpg and /dev/null differ diff --git a/static/img/organizers/lacey.jpg b/static/img/organizers/lacey.jpg deleted file mode 100644 index c3a0f3e1..00000000 Binary files a/static/img/organizers/lacey.jpg and /dev/null differ diff --git a/static/img/organizers/lidya.jpg b/static/img/organizers/lidya.jpg deleted file mode 100644 index f962b454..00000000 Binary files a/static/img/organizers/lidya.jpg and /dev/null differ diff --git a/static/img/organizers/sal.jpg b/static/img/organizers/sal.jpg deleted file mode 100644 index 3b43dc65..00000000 Binary files a/static/img/organizers/sal.jpg and /dev/null differ diff --git a/static/img/people-line.svg b/static/img/people-line.svg deleted file mode 100644 index 53b15f25..00000000 --- a/static/img/people-line.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/static/img/people.svg b/static/img/people.svg deleted file mode 100644 index 208e6e07..00000000 --- a/static/img/people.svg +++ /dev/null @@ -1 +0,0 @@ -people \ No newline at end of file diff --git a/static/img/program-line.svg b/static/img/program-line.svg deleted file mode 100644 index 45a5a301..00000000 --- a/static/img/program-line.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/static/img/program.svg b/static/img/program.svg deleted file mode 100644 index c96f784b..00000000 --- a/static/img/program.svg +++ /dev/null @@ -1 +0,0 @@ - diff --git a/static/img/social/presenters/abigail-afi-gbadago.png b/static/img/social/presenters/abigail-afi-gbadago.png deleted file mode 100644 index 272aa9e4..00000000 Binary files a/static/img/social/presenters/abigail-afi-gbadago.png and /dev/null differ diff --git a/static/img/social/presenters/abigail-dogbe.png b/static/img/social/presenters/abigail-dogbe.png deleted file mode 100644 index 43c44ad4..00000000 Binary files a/static/img/social/presenters/abigail-dogbe.png and /dev/null differ diff --git a/static/img/social/presenters/adrienne-franke.png b/static/img/social/presenters/adrienne-franke.png deleted file mode 100644 index 69d84993..00000000 Binary files a/static/img/social/presenters/adrienne-franke.png and /dev/null differ diff --git a/static/img/social/presenters/andrew-knight.png b/static/img/social/presenters/andrew-knight.png deleted file mode 100644 index 673d991d..00000000 Binary files a/static/img/social/presenters/andrew-knight.png and /dev/null differ diff --git a/static/img/social/presenters/benjamin-zags-zagorsky.png b/static/img/social/presenters/benjamin-zags-zagorsky.png deleted file mode 100644 index 0046e1ce..00000000 Binary files a/static/img/social/presenters/benjamin-zags-zagorsky.png and /dev/null differ diff --git a/static/img/social/presenters/calvin-hendryx-parker.png b/static/img/social/presenters/calvin-hendryx-parker.png deleted file mode 100644 index 2f9ea968..00000000 Binary files a/static/img/social/presenters/calvin-hendryx-parker.png and /dev/null differ diff --git a/static/img/social/presenters/chaim-kirby.png b/static/img/social/presenters/chaim-kirby.png deleted file mode 100644 index e95ee87f..00000000 Binary files a/static/img/social/presenters/chaim-kirby.png and /dev/null differ diff --git a/static/img/social/presenters/charlotte-mays.png b/static/img/social/presenters/charlotte-mays.png deleted file mode 100644 index 676f1019..00000000 Binary files a/static/img/social/presenters/charlotte-mays.png and /dev/null differ diff --git a/static/img/social/presenters/cheuk-ting-ho.png b/static/img/social/presenters/cheuk-ting-ho.png deleted file mode 100644 index 13467825..00000000 Binary files a/static/img/social/presenters/cheuk-ting-ho.png and /dev/null differ diff --git a/static/img/social/presenters/chris-may.png b/static/img/social/presenters/chris-may.png deleted file mode 100644 index 27f6dfd7..00000000 Binary files a/static/img/social/presenters/chris-may.png and /dev/null differ diff --git a/static/img/social/presenters/daniele-procida.png b/static/img/social/presenters/daniele-procida.png deleted file mode 100644 index 1d14e458..00000000 Binary files a/static/img/social/presenters/daniele-procida.png and /dev/null differ diff --git a/static/img/social/presenters/dara-silvera.png b/static/img/social/presenters/dara-silvera.png deleted file mode 100644 index ba607e1b..00000000 Binary files a/static/img/social/presenters/dara-silvera.png and /dev/null differ diff --git a/static/img/social/presenters/dawn-wages.png b/static/img/social/presenters/dawn-wages.png deleted file mode 100644 index 04b3e8eb..00000000 Binary files a/static/img/social/presenters/dawn-wages.png and /dev/null differ diff --git a/static/img/social/presenters/deb-nicholson.png b/static/img/social/presenters/deb-nicholson.png deleted file mode 100644 index cfbfcb46..00000000 Binary files a/static/img/social/presenters/deb-nicholson.png and /dev/null differ diff --git a/static/img/social/presenters/denny-biasiolli.png b/static/img/social/presenters/denny-biasiolli.png deleted file mode 100644 index 5dd5d28e..00000000 Binary files a/static/img/social/presenters/denny-biasiolli.png and /dev/null differ diff --git a/static/img/social/presenters/drishti-jain.png b/static/img/social/presenters/drishti-jain.png deleted file mode 100644 index 72dfe29c..00000000 Binary files a/static/img/social/presenters/drishti-jain.png and /dev/null differ diff --git a/static/img/social/presenters/eliana-rosselli.png b/static/img/social/presenters/eliana-rosselli.png deleted file mode 100644 index 0cbbf2ad..00000000 Binary files a/static/img/social/presenters/eliana-rosselli.png and /dev/null differ diff --git a/static/img/social/presenters/elizabeth-christensen.png b/static/img/social/presenters/elizabeth-christensen.png deleted file mode 100644 index 9dcd678f..00000000 Binary files a/static/img/social/presenters/elizabeth-christensen.png and /dev/null differ diff --git a/static/img/social/presenters/ernesto-rico-schmidt.png b/static/img/social/presenters/ernesto-rico-schmidt.png deleted file mode 100644 index 2ac6e0be..00000000 Binary files a/static/img/social/presenters/ernesto-rico-schmidt.png and /dev/null differ diff --git a/static/img/social/presenters/felipe.png b/static/img/social/presenters/felipe.png deleted file mode 100644 index 1b0c2fde..00000000 Binary files a/static/img/social/presenters/felipe.png and /dev/null differ diff --git a/static/img/social/presenters/flavio-juvenal.png b/static/img/social/presenters/flavio-juvenal.png deleted file mode 100644 index ff2b3c62..00000000 Binary files a/static/img/social/presenters/flavio-juvenal.png and /dev/null differ diff --git a/static/img/social/presenters/james-walters.png b/static/img/social/presenters/james-walters.png deleted file mode 100644 index 5488fbe0..00000000 Binary files a/static/img/social/presenters/james-walters.png and /dev/null differ diff --git a/static/img/social/presenters/jay-miller.png b/static/img/social/presenters/jay-miller.png deleted file mode 100644 index 9a7710a4..00000000 Binary files a/static/img/social/presenters/jay-miller.png and /dev/null differ diff --git a/static/img/social/presenters/josh-thomas.png b/static/img/social/presenters/josh-thomas.png deleted file mode 100644 index 4a1231a7..00000000 Binary files a/static/img/social/presenters/josh-thomas.png and /dev/null differ diff --git a/static/img/social/presenters/julia-solorzano.png b/static/img/social/presenters/julia-solorzano.png deleted file mode 100644 index 4d261195..00000000 Binary files a/static/img/social/presenters/julia-solorzano.png and /dev/null differ diff --git a/static/img/social/presenters/kojo-idrissa.png b/static/img/social/presenters/kojo-idrissa.png deleted file mode 100644 index f4ee3591..00000000 Binary files a/static/img/social/presenters/kojo-idrissa.png and /dev/null differ diff --git a/static/img/social/presenters/kuldeep-pisda.png b/static/img/social/presenters/kuldeep-pisda.png deleted file mode 100644 index b75e96ae..00000000 Binary files a/static/img/social/presenters/kuldeep-pisda.png and /dev/null differ diff --git a/static/img/social/presenters/marc-gibbons.png b/static/img/social/presenters/marc-gibbons.png deleted file mode 100644 index 793b9a87..00000000 Binary files a/static/img/social/presenters/marc-gibbons.png and /dev/null differ diff --git a/static/img/social/presenters/mario-munoz.png b/static/img/social/presenters/mario-munoz.png deleted file mode 100644 index be37285e..00000000 Binary files a/static/img/social/presenters/mario-munoz.png and /dev/null differ diff --git a/static/img/social/presenters/maxwell-muoto.png b/static/img/social/presenters/maxwell-muoto.png deleted file mode 100644 index a33c8a83..00000000 Binary files a/static/img/social/presenters/maxwell-muoto.png and /dev/null differ diff --git a/static/img/social/presenters/michael-trythall.png b/static/img/social/presenters/michael-trythall.png deleted file mode 100644 index ccee9bb9..00000000 Binary files a/static/img/social/presenters/michael-trythall.png and /dev/null differ diff --git a/static/img/social/presenters/mike-hoolehan.png b/static/img/social/presenters/mike-hoolehan.png deleted file mode 100644 index f2e13f65..00000000 Binary files a/static/img/social/presenters/mike-hoolehan.png and /dev/null differ diff --git a/static/img/social/presenters/mohamed-elkalioby.png b/static/img/social/presenters/mohamed-elkalioby.png deleted file mode 100644 index 6558805c..00000000 Binary files a/static/img/social/presenters/mohamed-elkalioby.png and /dev/null differ diff --git a/static/img/social/presenters/natalia-bidart.png b/static/img/social/presenters/natalia-bidart.png deleted file mode 100644 index b77f37e8..00000000 Binary files a/static/img/social/presenters/natalia-bidart.png and /dev/null differ diff --git a/static/img/social/presenters/nikolay-samokhvalov.png b/static/img/social/presenters/nikolay-samokhvalov.png deleted file mode 100644 index da11e181..00000000 Binary files a/static/img/social/presenters/nikolay-samokhvalov.png and /dev/null differ diff --git a/static/img/social/presenters/noah-kantrowitz.png b/static/img/social/presenters/noah-kantrowitz.png deleted file mode 100644 index ad17bd14..00000000 Binary files a/static/img/social/presenters/noah-kantrowitz.png and /dev/null differ diff --git a/static/img/social/presenters/paolo-melchiorre.png b/static/img/social/presenters/paolo-melchiorre.png deleted file mode 100644 index 084e690c..00000000 Binary files a/static/img/social/presenters/paolo-melchiorre.png and /dev/null differ diff --git a/static/img/social/presenters/pat-viafore.png b/static/img/social/presenters/pat-viafore.png deleted file mode 100644 index 6a0105ab..00000000 Binary files a/static/img/social/presenters/pat-viafore.png and /dev/null differ diff --git a/static/img/social/presenters/paul-gilzow.png b/static/img/social/presenters/paul-gilzow.png deleted file mode 100644 index 5d528880..00000000 Binary files a/static/img/social/presenters/paul-gilzow.png and /dev/null differ diff --git a/static/img/social/presenters/pavel-sviridov.png b/static/img/social/presenters/pavel-sviridov.png deleted file mode 100644 index 327982c1..00000000 Binary files a/static/img/social/presenters/pavel-sviridov.png and /dev/null differ diff --git a/static/img/social/presenters/peter-grandstaff.png b/static/img/social/presenters/peter-grandstaff.png deleted file mode 100644 index 2a4b8823..00000000 Binary files a/static/img/social/presenters/peter-grandstaff.png and /dev/null differ diff --git a/static/img/social/presenters/philip-james.png b/static/img/social/presenters/philip-james.png deleted file mode 100644 index 9fef7d41..00000000 Binary files a/static/img/social/presenters/philip-james.png and /dev/null differ diff --git a/static/img/social/presenters/ramon-huidobro.png b/static/img/social/presenters/ramon-huidobro.png deleted file mode 100644 index 58ac0801..00000000 Binary files a/static/img/social/presenters/ramon-huidobro.png and /dev/null differ diff --git a/static/img/social/presenters/richard-yen.png b/static/img/social/presenters/richard-yen.png deleted file mode 100644 index 0f76dfbe..00000000 Binary files a/static/img/social/presenters/richard-yen.png and /dev/null differ diff --git a/static/img/social/presenters/ronald-maravanyika.png b/static/img/social/presenters/ronald-maravanyika.png deleted file mode 100644 index ebaf36cd..00000000 Binary files a/static/img/social/presenters/ronald-maravanyika.png and /dev/null differ diff --git a/static/img/social/presenters/ryan-cheley.png b/static/img/social/presenters/ryan-cheley.png deleted file mode 100644 index 49ee5e05..00000000 Binary files a/static/img/social/presenters/ryan-cheley.png and /dev/null differ diff --git a/static/img/social/presenters/sage-abdullah.png b/static/img/social/presenters/sage-abdullah.png deleted file mode 100644 index a09055c3..00000000 Binary files a/static/img/social/presenters/sage-abdullah.png and /dev/null differ diff --git a/static/img/social/presenters/scott-cranfill.png b/static/img/social/presenters/scott-cranfill.png deleted file mode 100644 index 95f4dc01..00000000 Binary files a/static/img/social/presenters/scott-cranfill.png and /dev/null differ diff --git a/static/img/social/presenters/sheena-o-connell.png b/static/img/social/presenters/sheena-o-connell.png deleted file mode 100644 index 51770c86..00000000 Binary files a/static/img/social/presenters/sheena-o-connell.png and /dev/null differ diff --git a/static/img/social/presenters/stephen-mitchell.png b/static/img/social/presenters/stephen-mitchell.png deleted file mode 100644 index a193439f..00000000 Binary files a/static/img/social/presenters/stephen-mitchell.png and /dev/null differ diff --git a/static/img/social/presenters/thiago-bellini-ribeiro.png b/static/img/social/presenters/thiago-bellini-ribeiro.png deleted file mode 100644 index 805be63f..00000000 Binary files a/static/img/social/presenters/thiago-bellini-ribeiro.png and /dev/null differ diff --git a/static/img/social/presenters/thibaud-colas.png b/static/img/social/presenters/thibaud-colas.png deleted file mode 100644 index 2aee76ac..00000000 Binary files a/static/img/social/presenters/thibaud-colas.png and /dev/null differ diff --git a/static/img/social/presenters/tobias-mcnulty.png b/static/img/social/presenters/tobias-mcnulty.png deleted file mode 100644 index 17e0e8d9..00000000 Binary files a/static/img/social/presenters/tobias-mcnulty.png and /dev/null differ diff --git a/static/img/social/presenters/velda-kiara.png b/static/img/social/presenters/velda-kiara.png deleted file mode 100644 index 0f585d32..00000000 Binary files a/static/img/social/presenters/velda-kiara.png and /dev/null differ diff --git a/static/img/social/presenters/victor-ogunjobi.png b/static/img/social/presenters/victor-ogunjobi.png deleted file mode 100644 index 25a8726f..00000000 Binary files a/static/img/social/presenters/victor-ogunjobi.png and /dev/null differ diff --git a/static/img/social/presenters/wes-kendall.png b/static/img/social/presenters/wes-kendall.png deleted file mode 100644 index 640be9cb..00000000 Binary files a/static/img/social/presenters/wes-kendall.png and /dev/null differ diff --git a/static/img/speak.svg b/static/img/speak.svg deleted file mode 100644 index e556a411..00000000 --- a/static/img/speak.svg +++ /dev/null @@ -1 +0,0 @@ -speak \ No newline at end of file diff --git a/static/img/star-line.svg b/static/img/star-line.svg deleted file mode 100644 index 2d408891..00000000 --- a/static/img/star-line.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/static/img/star.svg b/static/img/star.svg deleted file mode 100644 index ce5f95bb..00000000 --- a/static/img/star.svg +++ /dev/null @@ -1 +0,0 @@ -star \ No newline at end of file diff --git a/static/img/submark-2022.svg b/static/img/submark-2022.svg deleted file mode 100644 index ddfed083..00000000 --- a/static/img/submark-2022.svg +++ /dev/null @@ -1,39 +0,0 @@ - - - - - - diff --git a/static/img/submark-2023.svg b/static/img/submark-2023.svg deleted file mode 100644 index 9292d56f..00000000 --- a/static/img/submark-2023.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/static/img/submark.svg b/static/img/submark.svg deleted file mode 100644 index 73b3270d..00000000 --- a/static/img/submark.svg +++ /dev/null @@ -1,36 +0,0 @@ - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/static/img/talk.svg b/static/img/talk.svg deleted file mode 100644 index 9ad9a8b1..00000000 --- a/static/img/talk.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/static/img/text-gradient.jpg b/static/img/text-gradient.jpg deleted file mode 100644 index e0e8d305..00000000 Binary files a/static/img/text-gradient.jpg and /dev/null differ diff --git a/static/img/theme/button-hollow-hover.svg b/static/img/theme/button-hollow-hover.svg deleted file mode 100644 index 9516314f..00000000 --- a/static/img/theme/button-hollow-hover.svg +++ /dev/null @@ -1,3 +0,0 @@ - - - diff --git a/static/img/theme/button-hollow.svg b/static/img/theme/button-hollow.svg deleted file mode 100644 index da21a807..00000000 --- a/static/img/theme/button-hollow.svg +++ /dev/null @@ -1,3 +0,0 @@ - - - diff --git a/static/img/theme/button.svg b/static/img/theme/button.svg deleted file mode 100644 index 1e453c61..00000000 --- a/static/img/theme/button.svg +++ /dev/null @@ -1,3 +0,0 @@ - - - diff --git a/static/img/theme/card-1.svg b/static/img/theme/card-1.svg deleted file mode 100644 index acfa433f..00000000 --- a/static/img/theme/card-1.svg +++ /dev/null @@ -1,3 +0,0 @@ - - - diff --git a/static/img/theme/card-2.svg b/static/img/theme/card-2.svg deleted file mode 100644 index 27b0a6a9..00000000 --- a/static/img/theme/card-2.svg +++ /dev/null @@ -1,3 +0,0 @@ - - - diff --git a/static/img/theme/card-3.svg b/static/img/theme/card-3.svg deleted file mode 100644 index aa926d55..00000000 --- a/static/img/theme/card-3.svg +++ /dev/null @@ -1,3 +0,0 @@ - - - diff --git a/static/img/theme/card-4.svg b/static/img/theme/card-4.svg deleted file mode 100644 index 347081ca..00000000 --- a/static/img/theme/card-4.svg +++ /dev/null @@ -1,3 +0,0 @@ - - - diff --git a/static/img/theme/card-highlight.svg b/static/img/theme/card-highlight.svg deleted file mode 100644 index 72629d63..00000000 --- a/static/img/theme/card-highlight.svg +++ /dev/null @@ -1,3 +0,0 @@ - - - diff --git a/static/img/theme/footer-bottom.svg b/static/img/theme/footer-bottom.svg deleted file mode 100644 index 89be5462..00000000 --- a/static/img/theme/footer-bottom.svg +++ /dev/null @@ -1,27 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/static/img/theme/footer-top.svg b/static/img/theme/footer-top.svg deleted file mode 100644 index 300469cd..00000000 --- a/static/img/theme/footer-top.svg +++ /dev/null @@ -1,5489 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/static/img/theme/hero-lemur.svg b/static/img/theme/hero-lemur.svg deleted file mode 100644 index abd63364..00000000 --- a/static/img/theme/hero-lemur.svg +++ /dev/null @@ -1,935 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/static/img/theme/hero-map.svg b/static/img/theme/hero-map.svg deleted file mode 100644 index de328d1b..00000000 --- a/static/img/theme/hero-map.svg +++ /dev/null @@ -1,4286 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/static/img/theme/icons/bag.svg b/static/img/theme/icons/bag.svg deleted file mode 100644 index 04b55956..00000000 --- a/static/img/theme/icons/bag.svg +++ /dev/null @@ -1,12 +0,0 @@ - - - - - - - - - - - - diff --git a/static/img/theme/icons/bull.svg b/static/img/theme/icons/bull.svg deleted file mode 100644 index b03e60cb..00000000 --- a/static/img/theme/icons/bull.svg +++ /dev/null @@ -1,10 +0,0 @@ - - - - - - - - - - diff --git a/static/img/theme/icons/cap.svg b/static/img/theme/icons/cap.svg deleted file mode 100644 index b099201b..00000000 --- a/static/img/theme/icons/cap.svg +++ /dev/null @@ -1,12 +0,0 @@ - - - - - - - - - - - - diff --git a/static/img/theme/icons/checklist.svg b/static/img/theme/icons/checklist.svg deleted file mode 100644 index 1326c1d4..00000000 --- a/static/img/theme/icons/checklist.svg +++ /dev/null @@ -1,15 +0,0 @@ - - - - - - - - - - - - - - - diff --git a/static/img/theme/icons/code.svg b/static/img/theme/icons/code.svg deleted file mode 100644 index 50004014..00000000 --- a/static/img/theme/icons/code.svg +++ /dev/null @@ -1,11 +0,0 @@ - - - - - - - - - - - diff --git a/static/img/theme/icons/compass.svg b/static/img/theme/icons/compass.svg deleted file mode 100644 index 2d40c7bc..00000000 --- a/static/img/theme/icons/compass.svg +++ /dev/null @@ -1,16 +0,0 @@ - - - - - - - - - - - - - - - - diff --git a/static/img/theme/icons/globe.svg b/static/img/theme/icons/globe.svg deleted file mode 100644 index 3b3b8b49..00000000 --- a/static/img/theme/icons/globe.svg +++ /dev/null @@ -1,11 +0,0 @@ - - - - - - - - - - - diff --git a/static/img/theme/icons/hands.svg b/static/img/theme/icons/hands.svg deleted file mode 100644 index 20679df3..00000000 --- a/static/img/theme/icons/hands.svg +++ /dev/null @@ -1,19 +0,0 @@ - - - - - - - - - - - - - - - - - - - diff --git a/static/img/theme/icons/heart.svg b/static/img/theme/icons/heart.svg deleted file mode 100644 index ad0c0a52..00000000 --- a/static/img/theme/icons/heart.svg +++ /dev/null @@ -1,3 +0,0 @@ - - - diff --git a/static/img/theme/icons/megaphone.svg b/static/img/theme/icons/megaphone.svg deleted file mode 100644 index c0a4056c..00000000 --- a/static/img/theme/icons/megaphone.svg +++ /dev/null @@ -1,16 +0,0 @@ - - - - - - - - - - - - - - - - diff --git a/static/img/theme/icons/money.svg b/static/img/theme/icons/money.svg deleted file mode 100644 index f110d2e3..00000000 --- a/static/img/theme/icons/money.svg +++ /dev/null @@ -1,13 +0,0 @@ - - - - - - - - - - - - - diff --git a/static/img/theme/icons/people.svg b/static/img/theme/icons/people.svg deleted file mode 100644 index 86f54c7a..00000000 --- a/static/img/theme/icons/people.svg +++ /dev/null @@ -1,13 +0,0 @@ - - - - - - - - - - - - - diff --git a/static/img/theme/icons/program.svg b/static/img/theme/icons/program.svg deleted file mode 100644 index 0ab50e48..00000000 --- a/static/img/theme/icons/program.svg +++ /dev/null @@ -1,13 +0,0 @@ - - - - - - - - - - - - - diff --git a/static/img/theme/icons/star.svg b/static/img/theme/icons/star.svg deleted file mode 100644 index 659f1699..00000000 --- a/static/img/theme/icons/star.svg +++ /dev/null @@ -1,3 +0,0 @@ - - - diff --git a/static/img/theme/logos/submark.svg b/static/img/theme/logos/submark.svg deleted file mode 100644 index 73b3270d..00000000 --- a/static/img/theme/logos/submark.svg +++ /dev/null @@ -1,36 +0,0 @@ - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/static/img/theme/speaker-card/banner.svg b/static/img/theme/speaker-card/banner.svg deleted file mode 100644 index bb50012e..00000000 --- a/static/img/theme/speaker-card/banner.svg +++ /dev/null @@ -1,16 +0,0 @@ - - - - - - - - - - - - - - - - diff --git a/static/img/theme/speaker-card/line.svg b/static/img/theme/speaker-card/line.svg deleted file mode 100644 index 3f514b55..00000000 --- a/static/img/theme/speaker-card/line.svg +++ /dev/null @@ -1,3 +0,0 @@ - - - diff --git a/static/img/theme/speaker-card/pattern-bg.svg b/static/img/theme/speaker-card/pattern-bg.svg deleted file mode 100644 index 946d779d..00000000 --- a/static/img/theme/speaker-card/pattern-bg.svg +++ /dev/null @@ -1,3 +0,0 @@ - - - diff --git a/static/img/theme/speaker-card/speaker-card-bg.svg b/static/img/theme/speaker-card/speaker-card-bg.svg deleted file mode 100644 index 12c17aa4..00000000 --- a/static/img/theme/speaker-card/speaker-card-bg.svg +++ /dev/null @@ -1,38 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/static/img/theme/speaker-card/speaker-mask.svg b/static/img/theme/speaker-card/speaker-mask.svg deleted file mode 100644 index 7b9dce45..00000000 --- a/static/img/theme/speaker-card/speaker-mask.svg +++ /dev/null @@ -1,8 +0,0 @@ - - - - - - - - diff --git a/static/invitation.js b/static/invitation.js deleted file mode 100644 index 885e7a10..00000000 --- a/static/invitation.js +++ /dev/null @@ -1,101 +0,0 @@ - -const form = document.getElementById("form"); -form.addEventListener("submit", start); - -const loader = document.querySelector("#loading"); -// showing loading -function displayLoading() { - loader.classList.add("display"); -} - -// hiding loading -function hideLoading() { - loader.classList.remove("display"); -} - -async function start(ev) { - ev.preventDefault(); - console.log("start form"); - - $("#inprogress").show(); - const form = new FormData(ev.target); - const fullname = form.get("fullname"); - const address = form.get("address"); - const email = form.get("email"); - const dob = form.get("dob"); - const lettertype = form.get("letterselection"); - const og = form.get("og"); - const speaker = form.get("talk"); - const passport_no = form.get("passport_no"); - var data - - displayLoading(); - - if (lettertype == "none") { - data = { - "fullname": fullname, - "address": address, - "email": email, - "dob": dob, - "passport_no": passport_no - } - - } else if (lettertype == "og") { - data = { - "fullname": fullname, - "address": address, - "email": email, - "dob": dob, - "passport_no": passport_no, - "letteropt": { - "key": "og", - "value": og - } - }; - } else if (lettertype == "speaker") { - data = { - "fullname": fullname, - "address": address, - "email": email, - "dob": dob, - "passport_no": passport_no, - "letteropt": { - "key": "speaker", - "value": speaker - } - }; - } - - displayLoading() - $("#form").hide(); - await fetch('https://djc-invitation-letter-api-noahalorwu.vercel.app/invitation', { - method: 'POST', - headers: { - 'Content-Type': 'application/json', - }, - body: JSON.stringify(data) - }).then(res => res.json()).then(data => { - hideLoading() - console.log(data) - $("#inprogress").hide(); - $("#ready").show(); - }); -} - -$(document).ready(function () { - $("#letterselection").change(function () { - var selected = $(this).val(); - if (selected == "none") { - $("#og").hide(); - $("#speaker").hide(); - } - else if (selected == "og") { - $("#og").show(); - $("#speaker").hide(); - } - else if (selected == "speaker") { - $("#og").hide(); - $("#speaker").show(); - } - }); -}); diff --git a/static/main.css b/static/main.css deleted file mode 100644 index b8c28778..00000000 --- a/static/main.css +++ /dev/null @@ -1,9016 +0,0 @@ -@charset "UTF-8"; -/* - app.css - part of http://daigofuji.github.io/jekyll-foundation-56-starter/ by Daigo Fujiwara (@DaigoFuji) - http://google-styleguide.googlecode.com/svn/trunk/htmlcssguide.xml#CSS_Style_Rules - http://csslint.net/ (Will hurt your feelings) - http://cssguidelin.es/ -*/ -/** - * Foundation for Sites - * Version 6.7.5 - * https://get.foundation - * Licensed under MIT Open Source - */ -@media print, screen and (min-width: 40em) { - .reveal.large, .reveal.small, .reveal.tiny, .reveal { - right: auto; - left: auto; - margin: 0 auto; - } -} -/* -// Disabled to quell contrast errors. -// Setting these does not seem to work. -// See globals for actual font color. -$callout-font-color-alt: $body-font-color; -*/ -.slide-in-down.mui-enter { - transition-duration: 500ms; - transition-timing-function: linear; - transform: translateY(-100%); - transition-property: transform, opacity; - backface-visibility: hidden; -} - -.slide-in-down.mui-enter.mui-enter-active { - transform: translateY(0); -} - -.slide-in-left.mui-enter { - transition-duration: 500ms; - transition-timing-function: linear; - transform: translateX(-100%); - transition-property: transform, opacity; - backface-visibility: hidden; -} - -.slide-in-left.mui-enter.mui-enter-active { - transform: translateX(0); -} - -.slide-in-up.mui-enter { - transition-duration: 500ms; - transition-timing-function: linear; - transform: translateY(100%); - transition-property: transform, opacity; - backface-visibility: hidden; -} - -.slide-in-up.mui-enter.mui-enter-active { - transform: translateY(0); -} - -.slide-in-right.mui-enter { - transition-duration: 500ms; - transition-timing-function: linear; - transform: translateX(100%); - transition-property: transform, opacity; - backface-visibility: hidden; -} - -.slide-in-right.mui-enter.mui-enter-active { - transform: translateX(0); -} - -.slide-out-down.mui-leave { - transition-duration: 500ms; - transition-timing-function: linear; - transform: translateY(0); - transition-property: transform, opacity; - backface-visibility: hidden; -} - -.slide-out-down.mui-leave.mui-leave-active { - transform: translateY(100%); -} - -.slide-out-right.mui-leave { - transition-duration: 500ms; - transition-timing-function: linear; - transform: translateX(0); - transition-property: transform, opacity; - backface-visibility: hidden; -} - -.slide-out-right.mui-leave.mui-leave-active { - transform: translateX(100%); -} - -.slide-out-up.mui-leave { - transition-duration: 500ms; - transition-timing-function: linear; - transform: translateY(0); - transition-property: transform, opacity; - backface-visibility: hidden; -} - -.slide-out-up.mui-leave.mui-leave-active { - transform: translateY(-100%); -} - -.slide-out-left.mui-leave { - transition-duration: 500ms; - transition-timing-function: linear; - transform: translateX(0); - transition-property: transform, opacity; - backface-visibility: hidden; -} - -.slide-out-left.mui-leave.mui-leave-active { - transform: translateX(-100%); -} - -.fade-in.mui-enter { - transition-duration: 500ms; - transition-timing-function: linear; - opacity: 0; - transition-property: opacity; -} - -.fade-in.mui-enter.mui-enter-active { - opacity: 1; -} - -.fade-out.mui-leave { - transition-duration: 500ms; - transition-timing-function: linear; - opacity: 1; - transition-property: opacity; -} - -.fade-out.mui-leave.mui-leave-active { - opacity: 0; -} - -.hinge-in-from-top.mui-enter { - transition-duration: 500ms; - transition-timing-function: linear; - transform: perspective(2000px) rotateX(-90deg); - transform-origin: top; - transition-property: transform, opacity; - opacity: 0; -} - -.hinge-in-from-top.mui-enter.mui-enter-active { - transform: perspective(2000px) rotate(0deg); - opacity: 1; -} - -.hinge-in-from-right.mui-enter { - transition-duration: 500ms; - transition-timing-function: linear; - transform: perspective(2000px) rotateY(-90deg); - transform-origin: right; - transition-property: transform, opacity; - opacity: 0; -} - -.hinge-in-from-right.mui-enter.mui-enter-active { - transform: perspective(2000px) rotate(0deg); - opacity: 1; -} - -.hinge-in-from-bottom.mui-enter { - transition-duration: 500ms; - transition-timing-function: linear; - transform: perspective(2000px) rotateX(90deg); - transform-origin: bottom; - transition-property: transform, opacity; - opacity: 0; -} - -.hinge-in-from-bottom.mui-enter.mui-enter-active { - transform: perspective(2000px) rotate(0deg); - opacity: 1; -} - -.hinge-in-from-left.mui-enter { - transition-duration: 500ms; - transition-timing-function: linear; - transform: perspective(2000px) rotateY(90deg); - transform-origin: left; - transition-property: transform, opacity; - opacity: 0; -} - -.hinge-in-from-left.mui-enter.mui-enter-active { - transform: perspective(2000px) rotate(0deg); - opacity: 1; -} - -.hinge-in-from-middle-x.mui-enter { - transition-duration: 500ms; - transition-timing-function: linear; - transform: perspective(2000px) rotateX(-90deg); - transform-origin: center; - transition-property: transform, opacity; - opacity: 0; -} - -.hinge-in-from-middle-x.mui-enter.mui-enter-active { - transform: perspective(2000px) rotate(0deg); - opacity: 1; -} - -.hinge-in-from-middle-y.mui-enter { - transition-duration: 500ms; - transition-timing-function: linear; - transform: perspective(2000px) rotateY(-90deg); - transform-origin: center; - transition-property: transform, opacity; - opacity: 0; -} - -.hinge-in-from-middle-y.mui-enter.mui-enter-active { - transform: perspective(2000px) rotate(0deg); - opacity: 1; -} - -.hinge-out-from-top.mui-leave { - transition-duration: 500ms; - transition-timing-function: linear; - transform: perspective(2000px) rotate(0deg); - transform-origin: top; - transition-property: transform, opacity; - opacity: 1; -} - -.hinge-out-from-top.mui-leave.mui-leave-active { - transform: perspective(2000px) rotateX(90deg); - opacity: 0; -} - -.hinge-out-from-right.mui-leave { - transition-duration: 500ms; - transition-timing-function: linear; - transform: perspective(2000px) rotate(0deg); - transform-origin: right; - transition-property: transform, opacity; - opacity: 1; -} - -.hinge-out-from-right.mui-leave.mui-leave-active { - transform: perspective(2000px) rotateY(90deg); - opacity: 0; -} - -.hinge-out-from-bottom.mui-leave { - transition-duration: 500ms; - transition-timing-function: linear; - transform: perspective(2000px) rotate(0deg); - transform-origin: bottom; - transition-property: transform, opacity; - opacity: 1; -} - -.hinge-out-from-bottom.mui-leave.mui-leave-active { - transform: perspective(2000px) rotateX(-90deg); - opacity: 0; -} - -.hinge-out-from-left.mui-leave { - transition-duration: 500ms; - transition-timing-function: linear; - transform: perspective(2000px) rotate(0deg); - transform-origin: left; - transition-property: transform, opacity; - opacity: 1; -} - -.hinge-out-from-left.mui-leave.mui-leave-active { - transform: perspective(2000px) rotateY(-90deg); - opacity: 0; -} - -.hinge-out-from-middle-x.mui-leave { - transition-duration: 500ms; - transition-timing-function: linear; - transform: perspective(2000px) rotate(0deg); - transform-origin: center; - transition-property: transform, opacity; - opacity: 1; -} - -.hinge-out-from-middle-x.mui-leave.mui-leave-active { - transform: perspective(2000px) rotateX(90deg); - opacity: 0; -} - -.hinge-out-from-middle-y.mui-leave { - transition-duration: 500ms; - transition-timing-function: linear; - transform: perspective(2000px) rotate(0deg); - transform-origin: center; - transition-property: transform, opacity; - opacity: 1; -} - -.hinge-out-from-middle-y.mui-leave.mui-leave-active { - transform: perspective(2000px) rotateY(90deg); - opacity: 0; -} - -.scale-in-up.mui-enter { - transition-duration: 500ms; - transition-timing-function: linear; - transform: scale(0.5); - transition-property: transform, opacity; - opacity: 0; -} - -.scale-in-up.mui-enter.mui-enter-active { - transform: scale(1); - opacity: 1; -} - -.scale-in-down.mui-enter { - transition-duration: 500ms; - transition-timing-function: linear; - transform: scale(1.5); - transition-property: transform, opacity; - opacity: 0; -} - -.scale-in-down.mui-enter.mui-enter-active { - transform: scale(1); - opacity: 1; -} - -.scale-out-up.mui-leave { - transition-duration: 500ms; - transition-timing-function: linear; - transform: scale(1); - transition-property: transform, opacity; - opacity: 1; -} - -.scale-out-up.mui-leave.mui-leave-active { - transform: scale(1.5); - opacity: 0; -} - -.scale-out-down.mui-leave { - transition-duration: 500ms; - transition-timing-function: linear; - transform: scale(1); - transition-property: transform, opacity; - opacity: 1; -} - -.scale-out-down.mui-leave.mui-leave-active { - transform: scale(0.5); - opacity: 0; -} - -.spin-in.mui-enter { - transition-duration: 500ms; - transition-timing-function: linear; - transform: rotate(-0.75turn); - transition-property: transform, opacity; - opacity: 0; -} - -.spin-in.mui-enter.mui-enter-active { - transform: rotate(0); - opacity: 1; -} - -.spin-out.mui-leave { - transition-duration: 500ms; - transition-timing-function: linear; - transform: rotate(0); - transition-property: transform, opacity; - opacity: 1; -} - -.spin-out.mui-leave.mui-leave-active { - transform: rotate(0.75turn); - opacity: 0; -} - -.spin-in-ccw.mui-enter { - transition-duration: 500ms; - transition-timing-function: linear; - transform: rotate(0.75turn); - transition-property: transform, opacity; - opacity: 0; -} - -.spin-in-ccw.mui-enter.mui-enter-active { - transform: rotate(0); - opacity: 1; -} - -.spin-out-ccw.mui-leave { - transition-duration: 500ms; - transition-timing-function: linear; - transform: rotate(0); - transition-property: transform, opacity; - opacity: 1; -} - -.spin-out-ccw.mui-leave.mui-leave-active { - transform: rotate(-0.75turn); - opacity: 0; -} - -.slow { - transition-duration: 750ms !important; -} - -.fast { - transition-duration: 250ms !important; -} - -.linear { - transition-timing-function: linear !important; -} - -.ease { - transition-timing-function: ease !important; -} - -.ease-in { - transition-timing-function: ease-in !important; -} - -.ease-out { - transition-timing-function: ease-out !important; -} - -.ease-in-out { - transition-timing-function: ease-in-out !important; -} - -.bounce-in { - transition-timing-function: cubic-bezier(0.485, 0.155, 0.24, 1.245) !important; -} - -.bounce-out { - transition-timing-function: cubic-bezier(0.485, 0.155, 0.515, 0.845) !important; -} - -.bounce-in-out { - transition-timing-function: cubic-bezier(0.76, -0.245, 0.24, 1.245) !important; -} - -.short-delay { - transition-delay: 300ms !important; -} - -.long-delay { - transition-delay: 700ms !important; -} - -.shake { - animation-name: shake-7; -} -@keyframes shake-7 { - 0%, 10%, 20%, 30%, 40%, 50%, 60%, 70%, 80%, 90% { - transform: translateX(7%); - } - 5%, 15%, 25%, 35%, 45%, 55%, 65%, 75%, 85%, 95% { - transform: translateX(-7%); - } -} - -.spin-cw { - animation-name: spin-cw-1turn; -} -@keyframes spin-cw-1turn { - 0% { - transform: rotate(-1turn); - } - 100% { - transform: rotate(0); - } -} - -.spin-ccw { - animation-name: spin-ccw-1turn; -} -@keyframes spin-ccw-1turn { - 0% { - transform: rotate(0); - } - 100% { - transform: rotate(-1turn); - } -} - -.wiggle { - animation-name: wiggle-7deg; -} -@keyframes wiggle-7deg { - 40%, 50%, 60% { - transform: rotate(7deg); - } - 35%, 45%, 55%, 65% { - transform: rotate(-7deg); - } - 0%, 30%, 70%, 100% { - transform: rotate(0); - } -} - -.shake, -.spin-cw, -.spin-ccw, -.wiggle { - animation-duration: 500ms; -} - -.infinite { - animation-iteration-count: infinite; -} - -.slow { - animation-duration: 750ms !important; -} - -.fast { - animation-duration: 250ms !important; -} - -.linear { - animation-timing-function: linear !important; -} - -.ease { - animation-timing-function: ease !important; -} - -.ease-in { - animation-timing-function: ease-in !important; -} - -.ease-out { - animation-timing-function: ease-out !important; -} - -.ease-in-out { - animation-timing-function: ease-in-out !important; -} - -.bounce-in { - animation-timing-function: cubic-bezier(0.485, 0.155, 0.24, 1.245) !important; -} - -.bounce-out { - animation-timing-function: cubic-bezier(0.485, 0.155, 0.515, 0.845) !important; -} - -.bounce-in-out { - animation-timing-function: cubic-bezier(0.76, -0.245, 0.24, 1.245) !important; -} - -.short-delay { - animation-delay: 300ms !important; -} - -.long-delay { - animation-delay: 700ms !important; -} - -/*! normalize.css v8.0.0 | MIT License | github.com/necolas/normalize.css */ -html { - line-height: 1.15; - -webkit-text-size-adjust: 100%; -} - -body { - margin: 0; -} - -h1 { - font-size: 2em; - margin: 0.67em 0; -} - -hr { - box-sizing: content-box; - height: 0; - overflow: visible; -} - -pre { - font-family: monospace, monospace; - font-size: 1em; -} - -a { - background-color: transparent; -} - -abbr[title] { - border-bottom: 0; - text-decoration: underline dotted; -} - -b, -strong { - font-weight: bolder; -} - -code, -kbd, -samp { - font-family: monospace, monospace; - font-size: 1em; -} - -small { - font-size: 80%; -} - -sub, -sup { - font-size: 75%; - line-height: 0; - position: relative; - vertical-align: baseline; -} - -sub { - bottom: -0.25em; -} - -sup { - top: -0.5em; -} - -img { - border-style: none; -} - -button, -input, -optgroup, -select, -textarea { - font-family: inherit; - font-size: 100%; - line-height: 1.15; - margin: 0; -} - -button, -input { - overflow: visible; -} - -button, -select { - text-transform: none; -} - -button, -[type=button], -[type=reset], -[type=submit] { - -webkit-appearance: button; -} - -button::-moz-focus-inner, -[type=button]::-moz-focus-inner, -[type=reset]::-moz-focus-inner, -[type=submit]::-moz-focus-inner { - border-style: none; - padding: 0; -} - -button:-moz-focusring, -[type=button]:-moz-focusring, -[type=reset]:-moz-focusring, -[type=submit]:-moz-focusring { - outline: 1px dotted ButtonText; -} - -fieldset { - padding: 0.35em 0.75em 0.625em; -} - -legend { - box-sizing: border-box; - color: inherit; - display: table; - max-width: 100%; - padding: 0; - white-space: normal; -} - -progress { - vertical-align: baseline; -} - -textarea { - overflow: auto; -} - -[type=checkbox], -[type=radio] { - box-sizing: border-box; - padding: 0; -} - -[type=number]::-webkit-inner-spin-button, -[type=number]::-webkit-outer-spin-button { - height: auto; -} - -[type=search] { - -webkit-appearance: textfield; - outline-offset: -2px; -} - -[type=search]::-webkit-search-decoration { - -webkit-appearance: none; -} - -::-webkit-file-upload-button { - -webkit-appearance: button; - font: inherit; -} - -details { - display: block; -} - -summary { - display: list-item; -} - -template { - display: none; -} - -[hidden] { - display: none; -} - -[data-whatintent=mouse] *, [data-whatintent=mouse] *:focus, -[data-whatintent=touch] *, -[data-whatintent=touch] *:focus, -[data-whatinput=mouse] *, -[data-whatinput=mouse] *:focus, -[data-whatinput=touch] *, -[data-whatinput=touch] *:focus { - outline: none; -} - -[draggable=false] { - -webkit-touch-callout: none; - -webkit-user-select: none; -} - -.foundation-mq { - font-family: "small=0em&smedium=32.75em&medium=55.625em&large=64em&xlarge=75em&xxlarge=90em"; -} - -html { - box-sizing: border-box; - font-size: 130%; -} - -*, -*::before, -*::after { - box-sizing: inherit; -} - -body { - margin: 0; - padding: 0; - background: #FFFFFF; - font-family: "Plus Jakarta Sans", sans-serif; - font-weight: 400; - line-height: 1.4; - color: #1E1E1E; - -webkit-font-smoothing: antialiased; - -moz-osx-font-smoothing: grayscale; -} - -img { - display: inline-block; - vertical-align: middle; - max-width: 100%; - height: auto; - -ms-interpolation-mode: bicubic; -} - -textarea { - height: auto; - min-height: 50px; - border-radius: 0; -} - -select { - box-sizing: border-box; - width: 100%; - border-radius: 0; -} - -.map_canvas img, -.map_canvas embed, -.map_canvas object, -.mqa-display img, -.mqa-display embed, -.mqa-display object { - max-width: none !important; -} - -button { - padding: 0; - appearance: none; - border: 0; - border-radius: 0; - background: transparent; - line-height: 1; - cursor: auto; -} -[data-whatinput=mouse] button { - outline: 0; -} - -pre { - overflow: auto; - -webkit-overflow-scrolling: touch; -} - -button, -input, -optgroup, -select, -textarea { - font-family: inherit; -} - -.is-visible { - display: block !important; -} - -.is-hidden { - display: none !important; -} - -.row { - max-width: 57.6923076923rem; - margin-right: auto; - margin-left: auto; -} -.row::before, .row::after { - display: table; - content: " "; -} -.row::after { - clear: both; -} -.row.collapse > .column, .row.collapse > .columns { - padding-right: 0; - padding-left: 0; -} -.row .row { - margin-right: -0.4807692308rem; - margin-left: -0.4807692308rem; -} -@media screen and (min-width: 32.75em) { - .row .row { - margin-right: -0.4807692308rem; - margin-left: -0.4807692308rem; - } -} -@media print, screen and (min-width: 55.625em) { - .row .row { - margin-right: -0.7211538462rem; - margin-left: -0.7211538462rem; - } -} -@media print, screen and (min-width: 64em) { - .row .row { - margin-right: -0.7211538462rem; - margin-left: -0.7211538462rem; - } -} -.row .row.collapse { - margin-right: 0; - margin-left: 0; -} -.row.expanded { - max-width: none; -} -.row.expanded .row { - margin-right: auto; - margin-left: auto; -} -.row:not(.expanded) .row { - max-width: none; -} -.row.gutter-small > .column, .row.gutter-small > .columns { - padding-right: 0.4807692308rem; - padding-left: 0.4807692308rem; -} -.row.gutter-medium > .column, .row.gutter-medium > .columns { - padding-right: 0.7211538462rem; - padding-left: 0.7211538462rem; -} - -.column, .columns { - padding-right: 0.4807692308rem; - padding-left: 0.4807692308rem; - width: 100%; - float: left; -} -@media print, screen and (min-width: 55.625em) { - .column, .columns { - padding-right: 0.7211538462rem; - padding-left: 0.7211538462rem; - } -} -.column, .columns, .column:last-child:not(:first-child) { - float: left; - clear: none; -} -.column:last-child:not(:first-child), .columns:last-child:not(:first-child) { - float: right; -} -.column.end:last-child:last-child, .end.columns:last-child:last-child { - float: left; -} - -.column.row.row, .row.row.columns { - float: none; -} - -.row .column.row.row, .row .row.row.columns { - margin-right: 0; - margin-left: 0; - padding-right: 0; - padding-left: 0; -} - -.small-1 { - width: 8.3333333333%; -} - -.small-push-1 { - position: relative; - left: 8.3333333333%; -} - -.small-pull-1 { - position: relative; - left: -8.3333333333%; -} - -.small-offset-0 { - margin-left: 0%; -} - -.small-2 { - width: 16.6666666667%; -} - -.small-push-2 { - position: relative; - left: 16.6666666667%; -} - -.small-pull-2 { - position: relative; - left: -16.6666666667%; -} - -.small-offset-1 { - margin-left: 8.3333333333%; -} - -.small-3 { - width: 25%; -} - -.small-push-3 { - position: relative; - left: 25%; -} - -.small-pull-3 { - position: relative; - left: -25%; -} - -.small-offset-2 { - margin-left: 16.6666666667%; -} - -.small-4 { - width: 33.3333333333%; -} - -.small-push-4 { - position: relative; - left: 33.3333333333%; -} - -.small-pull-4 { - position: relative; - left: -33.3333333333%; -} - -.small-offset-3 { - margin-left: 25%; -} - -.small-5 { - width: 41.6666666667%; -} - -.small-push-5 { - position: relative; - left: 41.6666666667%; -} - -.small-pull-5 { - position: relative; - left: -41.6666666667%; -} - -.small-offset-4 { - margin-left: 33.3333333333%; -} - -.small-6 { - width: 50%; -} - -.small-push-6 { - position: relative; - left: 50%; -} - -.small-pull-6 { - position: relative; - left: -50%; -} - -.small-offset-5 { - margin-left: 41.6666666667%; -} - -.small-7 { - width: 58.3333333333%; -} - -.small-push-7 { - position: relative; - left: 58.3333333333%; -} - -.small-pull-7 { - position: relative; - left: -58.3333333333%; -} - -.small-offset-6 { - margin-left: 50%; -} - -.small-8 { - width: 66.6666666667%; -} - -.small-push-8 { - position: relative; - left: 66.6666666667%; -} - -.small-pull-8 { - position: relative; - left: -66.6666666667%; -} - -.small-offset-7 { - margin-left: 58.3333333333%; -} - -.small-9 { - width: 75%; -} - -.small-push-9 { - position: relative; - left: 75%; -} - -.small-pull-9 { - position: relative; - left: -75%; -} - -.small-offset-8 { - margin-left: 66.6666666667%; -} - -.small-10 { - width: 83.3333333333%; -} - -.small-push-10 { - position: relative; - left: 83.3333333333%; -} - -.small-pull-10 { - position: relative; - left: -83.3333333333%; -} - -.small-offset-9 { - margin-left: 75%; -} - -.small-11 { - width: 91.6666666667%; -} - -.small-push-11 { - position: relative; - left: 91.6666666667%; -} - -.small-pull-11 { - position: relative; - left: -91.6666666667%; -} - -.small-offset-10 { - margin-left: 83.3333333333%; -} - -.small-12 { - width: 100%; -} - -.small-offset-11 { - margin-left: 91.6666666667%; -} - -.small-up-1 > .column, .small-up-1 > .columns { - float: left; - width: 100%; -} -.small-up-1 > .column:nth-of-type(1n), .small-up-1 > .columns:nth-of-type(1n) { - clear: none; -} -.small-up-1 > .column:nth-of-type(1n+1), .small-up-1 > .columns:nth-of-type(1n+1) { - clear: both; -} -.small-up-1 > .column:last-child, .small-up-1 > .columns:last-child { - float: left; -} - -.small-up-2 > .column, .small-up-2 > .columns { - float: left; - width: 50%; -} -.small-up-2 > .column:nth-of-type(1n), .small-up-2 > .columns:nth-of-type(1n) { - clear: none; -} -.small-up-2 > .column:nth-of-type(2n+1), .small-up-2 > .columns:nth-of-type(2n+1) { - clear: both; -} -.small-up-2 > .column:last-child, .small-up-2 > .columns:last-child { - float: left; -} - -.small-up-3 > .column, .small-up-3 > .columns { - float: left; - width: 33.3333333333%; -} -.small-up-3 > .column:nth-of-type(1n), .small-up-3 > .columns:nth-of-type(1n) { - clear: none; -} -.small-up-3 > .column:nth-of-type(3n+1), .small-up-3 > .columns:nth-of-type(3n+1) { - clear: both; -} -.small-up-3 > .column:last-child, .small-up-3 > .columns:last-child { - float: left; -} - -.small-up-4 > .column, .small-up-4 > .columns { - float: left; - width: 25%; -} -.small-up-4 > .column:nth-of-type(1n), .small-up-4 > .columns:nth-of-type(1n) { - clear: none; -} -.small-up-4 > .column:nth-of-type(4n+1), .small-up-4 > .columns:nth-of-type(4n+1) { - clear: both; -} -.small-up-4 > .column:last-child, .small-up-4 > .columns:last-child { - float: left; -} - -.small-up-5 > .column, .small-up-5 > .columns { - float: left; - width: 20%; -} -.small-up-5 > .column:nth-of-type(1n), .small-up-5 > .columns:nth-of-type(1n) { - clear: none; -} -.small-up-5 > .column:nth-of-type(5n+1), .small-up-5 > .columns:nth-of-type(5n+1) { - clear: both; -} -.small-up-5 > .column:last-child, .small-up-5 > .columns:last-child { - float: left; -} - -.small-up-6 > .column, .small-up-6 > .columns { - float: left; - width: 16.6666666667%; -} -.small-up-6 > .column:nth-of-type(1n), .small-up-6 > .columns:nth-of-type(1n) { - clear: none; -} -.small-up-6 > .column:nth-of-type(6n+1), .small-up-6 > .columns:nth-of-type(6n+1) { - clear: both; -} -.small-up-6 > .column:last-child, .small-up-6 > .columns:last-child { - float: left; -} - -.small-up-7 > .column, .small-up-7 > .columns { - float: left; - width: 14.2857142857%; -} -.small-up-7 > .column:nth-of-type(1n), .small-up-7 > .columns:nth-of-type(1n) { - clear: none; -} -.small-up-7 > .column:nth-of-type(7n+1), .small-up-7 > .columns:nth-of-type(7n+1) { - clear: both; -} -.small-up-7 > .column:last-child, .small-up-7 > .columns:last-child { - float: left; -} - -.small-up-8 > .column, .small-up-8 > .columns { - float: left; - width: 12.5%; -} -.small-up-8 > .column:nth-of-type(1n), .small-up-8 > .columns:nth-of-type(1n) { - clear: none; -} -.small-up-8 > .column:nth-of-type(8n+1), .small-up-8 > .columns:nth-of-type(8n+1) { - clear: both; -} -.small-up-8 > .column:last-child, .small-up-8 > .columns:last-child { - float: left; -} - -.small-collapse > .column, .small-collapse > .columns { - padding-right: 0; - padding-left: 0; -} -.small-collapse .row { - margin-right: 0; - margin-left: 0; -} - -.expanded.row .small-collapse.row { - margin-right: 0; - margin-left: 0; -} - -.small-uncollapse > .column, .small-uncollapse > .columns { - padding-right: 0.4807692308rem; - padding-left: 0.4807692308rem; -} - -.small-centered { - margin-right: auto; - margin-left: auto; -} -.small-centered, .small-centered:last-child:not(:first-child) { - float: none; - clear: both; -} - -.small-uncentered, .small-push-0, .small-pull-0 { - position: static; - margin-right: 0; - margin-left: 0; -} -.small-uncentered, .small-uncentered:last-child:not(:first-child), .small-push-0, .small-push-0:last-child:not(:first-child), .small-pull-0, .small-pull-0:last-child:not(:first-child) { - float: left; - clear: none; -} -.small-uncentered:last-child:not(:first-child), .small-push-0:last-child:not(:first-child), .small-pull-0:last-child:not(:first-child) { - float: right; -} - -@media screen and (min-width: 32.75em) { - .smedium-1 { - width: 8.3333333333%; - } - .smedium-push-1 { - position: relative; - left: 8.3333333333%; - } - .smedium-pull-1 { - position: relative; - left: -8.3333333333%; - } - .smedium-offset-0 { - margin-left: 0%; - } - .smedium-2 { - width: 16.6666666667%; - } - .smedium-push-2 { - position: relative; - left: 16.6666666667%; - } - .smedium-pull-2 { - position: relative; - left: -16.6666666667%; - } - .smedium-offset-1 { - margin-left: 8.3333333333%; - } - .smedium-3 { - width: 25%; - } - .smedium-push-3 { - position: relative; - left: 25%; - } - .smedium-pull-3 { - position: relative; - left: -25%; - } - .smedium-offset-2 { - margin-left: 16.6666666667%; - } - .smedium-4 { - width: 33.3333333333%; - } - .smedium-push-4 { - position: relative; - left: 33.3333333333%; - } - .smedium-pull-4 { - position: relative; - left: -33.3333333333%; - } - .smedium-offset-3 { - margin-left: 25%; - } - .smedium-5 { - width: 41.6666666667%; - } - .smedium-push-5 { - position: relative; - left: 41.6666666667%; - } - .smedium-pull-5 { - position: relative; - left: -41.6666666667%; - } - .smedium-offset-4 { - margin-left: 33.3333333333%; - } - .smedium-6 { - width: 50%; - } - .smedium-push-6 { - position: relative; - left: 50%; - } - .smedium-pull-6 { - position: relative; - left: -50%; - } - .smedium-offset-5 { - margin-left: 41.6666666667%; - } - .smedium-7 { - width: 58.3333333333%; - } - .smedium-push-7 { - position: relative; - left: 58.3333333333%; - } - .smedium-pull-7 { - position: relative; - left: -58.3333333333%; - } - .smedium-offset-6 { - margin-left: 50%; - } - .smedium-8 { - width: 66.6666666667%; - } - .smedium-push-8 { - position: relative; - left: 66.6666666667%; - } - .smedium-pull-8 { - position: relative; - left: -66.6666666667%; - } - .smedium-offset-7 { - margin-left: 58.3333333333%; - } - .smedium-9 { - width: 75%; - } - .smedium-push-9 { - position: relative; - left: 75%; - } - .smedium-pull-9 { - position: relative; - left: -75%; - } - .smedium-offset-8 { - margin-left: 66.6666666667%; - } - .smedium-10 { - width: 83.3333333333%; - } - .smedium-push-10 { - position: relative; - left: 83.3333333333%; - } - .smedium-pull-10 { - position: relative; - left: -83.3333333333%; - } - .smedium-offset-9 { - margin-left: 75%; - } - .smedium-11 { - width: 91.6666666667%; - } - .smedium-push-11 { - position: relative; - left: 91.6666666667%; - } - .smedium-pull-11 { - position: relative; - left: -91.6666666667%; - } - .smedium-offset-10 { - margin-left: 83.3333333333%; - } - .smedium-12 { - width: 100%; - } - .smedium-offset-11 { - margin-left: 91.6666666667%; - } - .smedium-up-1 > .column, .smedium-up-1 > .columns { - float: left; - width: 100%; - } - .smedium-up-1 > .column:nth-of-type(1n), .smedium-up-1 > .columns:nth-of-type(1n) { - clear: none; - } - .smedium-up-1 > .column:nth-of-type(1n+1), .smedium-up-1 > .columns:nth-of-type(1n+1) { - clear: both; - } - .smedium-up-1 > .column:last-child, .smedium-up-1 > .columns:last-child { - float: left; - } - .smedium-up-2 > .column, .smedium-up-2 > .columns { - float: left; - width: 50%; - } - .smedium-up-2 > .column:nth-of-type(1n), .smedium-up-2 > .columns:nth-of-type(1n) { - clear: none; - } - .smedium-up-2 > .column:nth-of-type(2n+1), .smedium-up-2 > .columns:nth-of-type(2n+1) { - clear: both; - } - .smedium-up-2 > .column:last-child, .smedium-up-2 > .columns:last-child { - float: left; - } - .smedium-up-3 > .column, .smedium-up-3 > .columns { - float: left; - width: 33.3333333333%; - } - .smedium-up-3 > .column:nth-of-type(1n), .smedium-up-3 > .columns:nth-of-type(1n) { - clear: none; - } - .smedium-up-3 > .column:nth-of-type(3n+1), .smedium-up-3 > .columns:nth-of-type(3n+1) { - clear: both; - } - .smedium-up-3 > .column:last-child, .smedium-up-3 > .columns:last-child { - float: left; - } - .smedium-up-4 > .column, .smedium-up-4 > .columns { - float: left; - width: 25%; - } - .smedium-up-4 > .column:nth-of-type(1n), .smedium-up-4 > .columns:nth-of-type(1n) { - clear: none; - } - .smedium-up-4 > .column:nth-of-type(4n+1), .smedium-up-4 > .columns:nth-of-type(4n+1) { - clear: both; - } - .smedium-up-4 > .column:last-child, .smedium-up-4 > .columns:last-child { - float: left; - } - .smedium-up-5 > .column, .smedium-up-5 > .columns { - float: left; - width: 20%; - } - .smedium-up-5 > .column:nth-of-type(1n), .smedium-up-5 > .columns:nth-of-type(1n) { - clear: none; - } - .smedium-up-5 > .column:nth-of-type(5n+1), .smedium-up-5 > .columns:nth-of-type(5n+1) { - clear: both; - } - .smedium-up-5 > .column:last-child, .smedium-up-5 > .columns:last-child { - float: left; - } - .smedium-up-6 > .column, .smedium-up-6 > .columns { - float: left; - width: 16.6666666667%; - } - .smedium-up-6 > .column:nth-of-type(1n), .smedium-up-6 > .columns:nth-of-type(1n) { - clear: none; - } - .smedium-up-6 > .column:nth-of-type(6n+1), .smedium-up-6 > .columns:nth-of-type(6n+1) { - clear: both; - } - .smedium-up-6 > .column:last-child, .smedium-up-6 > .columns:last-child { - float: left; - } - .smedium-up-7 > .column, .smedium-up-7 > .columns { - float: left; - width: 14.2857142857%; - } - .smedium-up-7 > .column:nth-of-type(1n), .smedium-up-7 > .columns:nth-of-type(1n) { - clear: none; - } - .smedium-up-7 > .column:nth-of-type(7n+1), .smedium-up-7 > .columns:nth-of-type(7n+1) { - clear: both; - } - .smedium-up-7 > .column:last-child, .smedium-up-7 > .columns:last-child { - float: left; - } - .smedium-up-8 > .column, .smedium-up-8 > .columns { - float: left; - width: 12.5%; - } - .smedium-up-8 > .column:nth-of-type(1n), .smedium-up-8 > .columns:nth-of-type(1n) { - clear: none; - } - .smedium-up-8 > .column:nth-of-type(8n+1), .smedium-up-8 > .columns:nth-of-type(8n+1) { - clear: both; - } - .smedium-up-8 > .column:last-child, .smedium-up-8 > .columns:last-child { - float: left; - } - .smedium-collapse > .column, .smedium-collapse > .columns { - padding-right: 0; - padding-left: 0; - } - .smedium-collapse .row { - margin-right: 0; - margin-left: 0; - } - .expanded.row .smedium-collapse.row { - margin-right: 0; - margin-left: 0; - } - .smedium-uncollapse > .column, .smedium-uncollapse > .columns { - padding-right: 0.4807692308rem; - padding-left: 0.4807692308rem; - } - .smedium-centered { - margin-right: auto; - margin-left: auto; - } - .smedium-centered, .smedium-centered:last-child:not(:first-child) { - float: none; - clear: both; - } - .smedium-uncentered, .smedium-push-0, .smedium-pull-0 { - position: static; - margin-right: 0; - margin-left: 0; - } - .smedium-uncentered, .smedium-uncentered:last-child:not(:first-child), .smedium-push-0, .smedium-push-0:last-child:not(:first-child), .smedium-pull-0, .smedium-pull-0:last-child:not(:first-child) { - float: left; - clear: none; - } - .smedium-uncentered:last-child:not(:first-child), .smedium-push-0:last-child:not(:first-child), .smedium-pull-0:last-child:not(:first-child) { - float: right; - } -} -@media print, screen and (min-width: 55.625em) { - .medium-1 { - width: 8.3333333333%; - } - .medium-push-1 { - position: relative; - left: 8.3333333333%; - } - .medium-pull-1 { - position: relative; - left: -8.3333333333%; - } - .medium-offset-0 { - margin-left: 0%; - } - .medium-2 { - width: 16.6666666667%; - } - .medium-push-2 { - position: relative; - left: 16.6666666667%; - } - .medium-pull-2 { - position: relative; - left: -16.6666666667%; - } - .medium-offset-1 { - margin-left: 8.3333333333%; - } - .medium-3 { - width: 25%; - } - .medium-push-3 { - position: relative; - left: 25%; - } - .medium-pull-3 { - position: relative; - left: -25%; - } - .medium-offset-2 { - margin-left: 16.6666666667%; - } - .medium-4 { - width: 33.3333333333%; - } - .medium-push-4 { - position: relative; - left: 33.3333333333%; - } - .medium-pull-4 { - position: relative; - left: -33.3333333333%; - } - .medium-offset-3 { - margin-left: 25%; - } - .medium-5 { - width: 41.6666666667%; - } - .medium-push-5 { - position: relative; - left: 41.6666666667%; - } - .medium-pull-5 { - position: relative; - left: -41.6666666667%; - } - .medium-offset-4 { - margin-left: 33.3333333333%; - } - .medium-6 { - width: 50%; - } - .medium-push-6 { - position: relative; - left: 50%; - } - .medium-pull-6 { - position: relative; - left: -50%; - } - .medium-offset-5 { - margin-left: 41.6666666667%; - } - .medium-7 { - width: 58.3333333333%; - } - .medium-push-7 { - position: relative; - left: 58.3333333333%; - } - .medium-pull-7 { - position: relative; - left: -58.3333333333%; - } - .medium-offset-6 { - margin-left: 50%; - } - .medium-8 { - width: 66.6666666667%; - } - .medium-push-8 { - position: relative; - left: 66.6666666667%; - } - .medium-pull-8 { - position: relative; - left: -66.6666666667%; - } - .medium-offset-7 { - margin-left: 58.3333333333%; - } - .medium-9 { - width: 75%; - } - .medium-push-9 { - position: relative; - left: 75%; - } - .medium-pull-9 { - position: relative; - left: -75%; - } - .medium-offset-8 { - margin-left: 66.6666666667%; - } - .medium-10 { - width: 83.3333333333%; - } - .medium-push-10 { - position: relative; - left: 83.3333333333%; - } - .medium-pull-10 { - position: relative; - left: -83.3333333333%; - } - .medium-offset-9 { - margin-left: 75%; - } - .medium-11 { - width: 91.6666666667%; - } - .medium-push-11 { - position: relative; - left: 91.6666666667%; - } - .medium-pull-11 { - position: relative; - left: -91.6666666667%; - } - .medium-offset-10 { - margin-left: 83.3333333333%; - } - .medium-12 { - width: 100%; - } - .medium-offset-11 { - margin-left: 91.6666666667%; - } - .medium-up-1 > .column, .medium-up-1 > .columns { - float: left; - width: 100%; - } - .medium-up-1 > .column:nth-of-type(1n), .medium-up-1 > .columns:nth-of-type(1n) { - clear: none; - } - .medium-up-1 > .column:nth-of-type(1n+1), .medium-up-1 > .columns:nth-of-type(1n+1) { - clear: both; - } - .medium-up-1 > .column:last-child, .medium-up-1 > .columns:last-child { - float: left; - } - .medium-up-2 > .column, .medium-up-2 > .columns { - float: left; - width: 50%; - } - .medium-up-2 > .column:nth-of-type(1n), .medium-up-2 > .columns:nth-of-type(1n) { - clear: none; - } - .medium-up-2 > .column:nth-of-type(2n+1), .medium-up-2 > .columns:nth-of-type(2n+1) { - clear: both; - } - .medium-up-2 > .column:last-child, .medium-up-2 > .columns:last-child { - float: left; - } - .medium-up-3 > .column, .medium-up-3 > .columns { - float: left; - width: 33.3333333333%; - } - .medium-up-3 > .column:nth-of-type(1n), .medium-up-3 > .columns:nth-of-type(1n) { - clear: none; - } - .medium-up-3 > .column:nth-of-type(3n+1), .medium-up-3 > .columns:nth-of-type(3n+1) { - clear: both; - } - .medium-up-3 > .column:last-child, .medium-up-3 > .columns:last-child { - float: left; - } - .medium-up-4 > .column, .medium-up-4 > .columns { - float: left; - width: 25%; - } - .medium-up-4 > .column:nth-of-type(1n), .medium-up-4 > .columns:nth-of-type(1n) { - clear: none; - } - .medium-up-4 > .column:nth-of-type(4n+1), .medium-up-4 > .columns:nth-of-type(4n+1) { - clear: both; - } - .medium-up-4 > .column:last-child, .medium-up-4 > .columns:last-child { - float: left; - } - .medium-up-5 > .column, .medium-up-5 > .columns { - float: left; - width: 20%; - } - .medium-up-5 > .column:nth-of-type(1n), .medium-up-5 > .columns:nth-of-type(1n) { - clear: none; - } - .medium-up-5 > .column:nth-of-type(5n+1), .medium-up-5 > .columns:nth-of-type(5n+1) { - clear: both; - } - .medium-up-5 > .column:last-child, .medium-up-5 > .columns:last-child { - float: left; - } - .medium-up-6 > .column, .medium-up-6 > .columns { - float: left; - width: 16.6666666667%; - } - .medium-up-6 > .column:nth-of-type(1n), .medium-up-6 > .columns:nth-of-type(1n) { - clear: none; - } - .medium-up-6 > .column:nth-of-type(6n+1), .medium-up-6 > .columns:nth-of-type(6n+1) { - clear: both; - } - .medium-up-6 > .column:last-child, .medium-up-6 > .columns:last-child { - float: left; - } - .medium-up-7 > .column, .medium-up-7 > .columns { - float: left; - width: 14.2857142857%; - } - .medium-up-7 > .column:nth-of-type(1n), .medium-up-7 > .columns:nth-of-type(1n) { - clear: none; - } - .medium-up-7 > .column:nth-of-type(7n+1), .medium-up-7 > .columns:nth-of-type(7n+1) { - clear: both; - } - .medium-up-7 > .column:last-child, .medium-up-7 > .columns:last-child { - float: left; - } - .medium-up-8 > .column, .medium-up-8 > .columns { - float: left; - width: 12.5%; - } - .medium-up-8 > .column:nth-of-type(1n), .medium-up-8 > .columns:nth-of-type(1n) { - clear: none; - } - .medium-up-8 > .column:nth-of-type(8n+1), .medium-up-8 > .columns:nth-of-type(8n+1) { - clear: both; - } - .medium-up-8 > .column:last-child, .medium-up-8 > .columns:last-child { - float: left; - } - .medium-collapse > .column, .medium-collapse > .columns { - padding-right: 0; - padding-left: 0; - } - .medium-collapse .row { - margin-right: 0; - margin-left: 0; - } - .expanded.row .medium-collapse.row { - margin-right: 0; - margin-left: 0; - } - .medium-uncollapse > .column, .medium-uncollapse > .columns { - padding-right: 0.7211538462rem; - padding-left: 0.7211538462rem; - } - .medium-centered { - margin-right: auto; - margin-left: auto; - } - .medium-centered, .medium-centered:last-child:not(:first-child) { - float: none; - clear: both; - } - .medium-uncentered, .medium-push-0, .medium-pull-0 { - position: static; - margin-right: 0; - margin-left: 0; - } - .medium-uncentered, .medium-uncentered:last-child:not(:first-child), .medium-push-0, .medium-push-0:last-child:not(:first-child), .medium-pull-0, .medium-pull-0:last-child:not(:first-child) { - float: left; - clear: none; - } - .medium-uncentered:last-child:not(:first-child), .medium-push-0:last-child:not(:first-child), .medium-pull-0:last-child:not(:first-child) { - float: right; - } -} -@media print, screen and (min-width: 64em) { - .large-1 { - width: 8.3333333333%; - } - .large-push-1 { - position: relative; - left: 8.3333333333%; - } - .large-pull-1 { - position: relative; - left: -8.3333333333%; - } - .large-offset-0 { - margin-left: 0%; - } - .large-2 { - width: 16.6666666667%; - } - .large-push-2 { - position: relative; - left: 16.6666666667%; - } - .large-pull-2 { - position: relative; - left: -16.6666666667%; - } - .large-offset-1 { - margin-left: 8.3333333333%; - } - .large-3 { - width: 25%; - } - .large-push-3 { - position: relative; - left: 25%; - } - .large-pull-3 { - position: relative; - left: -25%; - } - .large-offset-2 { - margin-left: 16.6666666667%; - } - .large-4 { - width: 33.3333333333%; - } - .large-push-4 { - position: relative; - left: 33.3333333333%; - } - .large-pull-4 { - position: relative; - left: -33.3333333333%; - } - .large-offset-3 { - margin-left: 25%; - } - .large-5 { - width: 41.6666666667%; - } - .large-push-5 { - position: relative; - left: 41.6666666667%; - } - .large-pull-5 { - position: relative; - left: -41.6666666667%; - } - .large-offset-4 { - margin-left: 33.3333333333%; - } - .large-6 { - width: 50%; - } - .large-push-6 { - position: relative; - left: 50%; - } - .large-pull-6 { - position: relative; - left: -50%; - } - .large-offset-5 { - margin-left: 41.6666666667%; - } - .large-7 { - width: 58.3333333333%; - } - .large-push-7 { - position: relative; - left: 58.3333333333%; - } - .large-pull-7 { - position: relative; - left: -58.3333333333%; - } - .large-offset-6 { - margin-left: 50%; - } - .large-8 { - width: 66.6666666667%; - } - .large-push-8 { - position: relative; - left: 66.6666666667%; - } - .large-pull-8 { - position: relative; - left: -66.6666666667%; - } - .large-offset-7 { - margin-left: 58.3333333333%; - } - .large-9 { - width: 75%; - } - .large-push-9 { - position: relative; - left: 75%; - } - .large-pull-9 { - position: relative; - left: -75%; - } - .large-offset-8 { - margin-left: 66.6666666667%; - } - .large-10 { - width: 83.3333333333%; - } - .large-push-10 { - position: relative; - left: 83.3333333333%; - } - .large-pull-10 { - position: relative; - left: -83.3333333333%; - } - .large-offset-9 { - margin-left: 75%; - } - .large-11 { - width: 91.6666666667%; - } - .large-push-11 { - position: relative; - left: 91.6666666667%; - } - .large-pull-11 { - position: relative; - left: -91.6666666667%; - } - .large-offset-10 { - margin-left: 83.3333333333%; - } - .large-12 { - width: 100%; - } - .large-offset-11 { - margin-left: 91.6666666667%; - } - .large-up-1 > .column, .large-up-1 > .columns { - float: left; - width: 100%; - } - .large-up-1 > .column:nth-of-type(1n), .large-up-1 > .columns:nth-of-type(1n) { - clear: none; - } - .large-up-1 > .column:nth-of-type(1n+1), .large-up-1 > .columns:nth-of-type(1n+1) { - clear: both; - } - .large-up-1 > .column:last-child, .large-up-1 > .columns:last-child { - float: left; - } - .large-up-2 > .column, .large-up-2 > .columns { - float: left; - width: 50%; - } - .large-up-2 > .column:nth-of-type(1n), .large-up-2 > .columns:nth-of-type(1n) { - clear: none; - } - .large-up-2 > .column:nth-of-type(2n+1), .large-up-2 > .columns:nth-of-type(2n+1) { - clear: both; - } - .large-up-2 > .column:last-child, .large-up-2 > .columns:last-child { - float: left; - } - .large-up-3 > .column, .large-up-3 > .columns { - float: left; - width: 33.3333333333%; - } - .large-up-3 > .column:nth-of-type(1n), .large-up-3 > .columns:nth-of-type(1n) { - clear: none; - } - .large-up-3 > .column:nth-of-type(3n+1), .large-up-3 > .columns:nth-of-type(3n+1) { - clear: both; - } - .large-up-3 > .column:last-child, .large-up-3 > .columns:last-child { - float: left; - } - .large-up-4 > .column, .large-up-4 > .columns { - float: left; - width: 25%; - } - .large-up-4 > .column:nth-of-type(1n), .large-up-4 > .columns:nth-of-type(1n) { - clear: none; - } - .large-up-4 > .column:nth-of-type(4n+1), .large-up-4 > .columns:nth-of-type(4n+1) { - clear: both; - } - .large-up-4 > .column:last-child, .large-up-4 > .columns:last-child { - float: left; - } - .large-up-5 > .column, .large-up-5 > .columns { - float: left; - width: 20%; - } - .large-up-5 > .column:nth-of-type(1n), .large-up-5 > .columns:nth-of-type(1n) { - clear: none; - } - .large-up-5 > .column:nth-of-type(5n+1), .large-up-5 > .columns:nth-of-type(5n+1) { - clear: both; - } - .large-up-5 > .column:last-child, .large-up-5 > .columns:last-child { - float: left; - } - .large-up-6 > .column, .large-up-6 > .columns { - float: left; - width: 16.6666666667%; - } - .large-up-6 > .column:nth-of-type(1n), .large-up-6 > .columns:nth-of-type(1n) { - clear: none; - } - .large-up-6 > .column:nth-of-type(6n+1), .large-up-6 > .columns:nth-of-type(6n+1) { - clear: both; - } - .large-up-6 > .column:last-child, .large-up-6 > .columns:last-child { - float: left; - } - .large-up-7 > .column, .large-up-7 > .columns { - float: left; - width: 14.2857142857%; - } - .large-up-7 > .column:nth-of-type(1n), .large-up-7 > .columns:nth-of-type(1n) { - clear: none; - } - .large-up-7 > .column:nth-of-type(7n+1), .large-up-7 > .columns:nth-of-type(7n+1) { - clear: both; - } - .large-up-7 > .column:last-child, .large-up-7 > .columns:last-child { - float: left; - } - .large-up-8 > .column, .large-up-8 > .columns { - float: left; - width: 12.5%; - } - .large-up-8 > .column:nth-of-type(1n), .large-up-8 > .columns:nth-of-type(1n) { - clear: none; - } - .large-up-8 > .column:nth-of-type(8n+1), .large-up-8 > .columns:nth-of-type(8n+1) { - clear: both; - } - .large-up-8 > .column:last-child, .large-up-8 > .columns:last-child { - float: left; - } - .large-collapse > .column, .large-collapse > .columns { - padding-right: 0; - padding-left: 0; - } - .large-collapse .row { - margin-right: 0; - margin-left: 0; - } - .expanded.row .large-collapse.row { - margin-right: 0; - margin-left: 0; - } - .large-uncollapse > .column, .large-uncollapse > .columns { - padding-right: 0.7211538462rem; - padding-left: 0.7211538462rem; - } - .large-centered { - margin-right: auto; - margin-left: auto; - } - .large-centered, .large-centered:last-child:not(:first-child) { - float: none; - clear: both; - } - .large-uncentered, .large-push-0, .large-pull-0 { - position: static; - margin-right: 0; - margin-left: 0; - } - .large-uncentered, .large-uncentered:last-child:not(:first-child), .large-push-0, .large-push-0:last-child:not(:first-child), .large-pull-0, .large-pull-0:last-child:not(:first-child) { - float: left; - clear: none; - } - .large-uncentered:last-child:not(:first-child), .large-push-0:last-child:not(:first-child), .large-pull-0:last-child:not(:first-child) { - float: right; - } -} -.column-block { - margin-bottom: 0.9615384615rem; -} -.column-block > :last-child { - margin-bottom: 0; -} -@media print, screen and (min-width: 55.625em) { - .column-block { - margin-bottom: 1.4423076923rem; - } - .column-block > :last-child { - margin-bottom: 0; - } -} - -div, -dl, -dt, -dd, -ul, -ol, -li, -h1, -h2, -.partner-footer h3, -h3, -h4, -h5, -h6, -pre, -form, -p, -blockquote, -th, -td { - margin: 0; - padding: 0; -} - -p { - margin-bottom: 1rem; - font-size: inherit; - line-height: 1.6; - text-rendering: optimizeLegibility; -} - -em, -i { - font-style: italic; - line-height: inherit; -} - -strong, -b { - font-weight: 700; - line-height: inherit; -} - -small { - font-size: 80%; - line-height: inherit; -} - -h1, .h1, -h2, -.partner-footer h3, .h2, -h3, .h3, -h4, .h4, -h5, .h5, -h6, .h6 { - font-family: "Plus Jakarta Sans", sans-serif; - font-style: normal; - font-weight: 600; - color: inherit; - text-rendering: optimizeLegibility; -} -h1 small, .h1 small, -h2 small, -.partner-footer h3 small, .h2 small, -h3 small, .h3 small, -h4 small, .h4 small, -h5 small, .h5 small, -h6 small, .h6 small { - line-height: 0; - color: #CACACA; -} - -h1, .h1 { - font-size: 1.6346153846rem; - line-height: 1.3; - margin-top: 0; - margin-bottom: 1rem; -} - -h2, .partner-footer h3, .h2 { - font-size: 1.6346153846rem; - line-height: 1.3; - margin-top: 0; - margin-bottom: 1rem; -} - -h3, .h3 { - font-size: 1.1538461538rem; - line-height: 1.3; - margin-top: 0; - margin-bottom: 1rem; -} - -h4, .h4 { - font-size: 0.9615384615rem; - line-height: 1.3; - margin-top: 0; - margin-bottom: 1rem; -} - -h5, .h5 { - font-size: 0.8173076923rem; - line-height: 1.3; - margin-top: 0; - margin-bottom: 1rem; -} - -h6, .h6 { - font-size: 0.7692307692rem; - line-height: 1.3; - margin-top: 0; - margin-bottom: 1rem; -} - -@media print, screen and (min-width: 55.625em) { - h1, .h1 { - font-size: 2.1153846154rem; - } - h2, .partner-footer h3, .h2 { - font-size: 1.7307692308rem; - } - h3, .h3 { - font-size: 1.3461538462rem; - } - h4, .h4 { - font-size: 1.0576923077rem; - } - h5, .h5 { - font-size: 0.9615384615rem; - } - h6, .h6 { - font-size: 0.7692307692rem; - } -} -a { - line-height: inherit; - color: #4975C3; - text-decoration: underline; - cursor: pointer; -} -a:hover, a:focus { - color: #3963ad; - text-decoration: none; -} -a img { - border: 0; -} - -hr { - clear: both; - max-width: 57.6923076923rem; - height: 0; - margin: 0.9615384615rem auto; - border-top: 0; - border-right: 0; - border-bottom: 1px solid #E9E9E9; - border-left: 0; -} - -ul, -ol, -dl { - margin-bottom: 1rem; - list-style-position: outside; - line-height: 1.25; -} - -li { - font-size: inherit; -} - -ul { - margin-left: 1.25rem; - list-style-type: disc; -} - -ol { - margin-left: 1.25rem; -} - -ul ul, ul ol, ol ul, ol ol { - margin-left: 1.25rem; - margin-bottom: 0; -} - -dl { - margin-bottom: 1rem; -} -dl dt { - margin-bottom: 0.3rem; - font-weight: 700; -} - -blockquote { - margin: 0 0 1rem; - padding: 0.4326923077rem 0.9615384615rem; - border-left: 8px solid #FDCA85; -} -blockquote, blockquote p { - line-height: 1.6; - color: #140A44; -} - -abbr, abbr[title] { - border-bottom: 1px dotted #1E1E1E; - cursor: help; - text-decoration: none; -} - -figure { - margin: 0; -} - -kbd { - margin: 0; - padding: 0.0961538462rem 0.1923076923rem 0; - background-color: #F7F8F9; - font-family: Consolas, "Liberation Mono", Courier, monospace; - color: #1E1E1E; -} - -.subheader { - margin-top: 0.2rem; - margin-bottom: 0.5rem; - font-weight: 400; - line-height: 1.4; - color: #CACACA; -} - -.lead { - font-size: 1.125rem; - line-height: 1.5; -} - -.stat { - font-size: 2.5rem; - line-height: 1; -} -p + .stat { - margin-top: -1rem; -} - -ul.no-bullet, ol.no-bullet { - margin-left: 0; - list-style: none; -} - -.cite-block, cite { - display: block; - color: #E47048; - font-size: 0.7211538462rem; -} -.cite-block:before, cite:before { - content: "— "; -} - -.code-inline, code { - border: 1px solid rgba(255, 255, 255, 0.4); - background-color: rgba(255, 255, 255, 0.2); - font-family: Consolas, "Liberation Mono", Courier, monospace; - font-weight: 400; - color: #1E1E1E; - display: inline; - max-width: 100%; - word-wrap: break-word; - padding: 0.0961538462rem 0.2403846154rem 0.0480769231rem; -} - -.code-block { - border: 1px solid rgba(255, 255, 255, 0.4); - background-color: rgba(255, 255, 255, 0.2); - font-family: Consolas, "Liberation Mono", Courier, monospace; - font-weight: 400; - color: #1E1E1E; - display: block; - overflow: auto; - white-space: pre; - padding: 1rem; - margin-bottom: 1.5rem; -} - -.text-left { - text-align: left; -} - -.text-right { - text-align: right; -} - -.text-center { - text-align: center; -} - -.text-justify { - text-align: justify; -} - -@media screen and (min-width: 32.75em) { - .smedium-text-left { - text-align: left; - } - .smedium-text-right { - text-align: right; - } - .smedium-text-center { - text-align: center; - } - .smedium-text-justify { - text-align: justify; - } -} -@media print, screen and (min-width: 55.625em) { - .medium-text-left { - text-align: left; - } - .medium-text-right { - text-align: right; - } - .medium-text-center { - text-align: center; - } - .medium-text-justify { - text-align: justify; - } -} -@media print, screen and (min-width: 64em) { - .large-text-left { - text-align: left; - } - .large-text-right { - text-align: right; - } - .large-text-center { - text-align: center; - } - .large-text-justify { - text-align: justify; - } -} -.show-for-print { - display: none !important; -} - -@media print { - * { - background: transparent !important; - color: black !important; - print-color-adjust: economy; - box-shadow: none !important; - text-shadow: none !important; - } - .show-for-print { - display: block !important; - } - .hide-for-print { - display: none !important; - } - table.show-for-print { - display: table !important; - } - thead.show-for-print { - display: table-header-group !important; - } - tbody.show-for-print { - display: table-row-group !important; - } - tr.show-for-print { - display: table-row !important; - } - td.show-for-print { - display: table-cell !important; - } - th.show-for-print { - display: table-cell !important; - } - a, - a:visited { - text-decoration: underline; - } - a[href]:after { - content: " (" attr(href) ")"; - } - .ir a:after, - a[href^="javascript:"]:after, - a[href^="#"]:after { - content: ""; - } - abbr[title]:after { - content: " (" attr(title) ")"; - } - pre, - blockquote { - border: 1px solid #CACACA; - page-break-inside: avoid; - } - thead { - display: table-header-group; - } - tr, - img { - page-break-inside: avoid; - } - img { - max-width: 100% !important; - } - @page { - margin: 0.5cm; - } - p, - h2, - .partner-footer h3, - h3 { - orphans: 3; - widows: 3; - } - h2, .partner-footer h3, - h3 { - page-break-after: avoid; - } - .print-break-inside { - page-break-inside: auto; - } -} -.button { - display: inline-block; - vertical-align: middle; - margin: 0 0 1rem 0; - padding: 0.85em 1.25em; - border: 1px solid transparent; - border-radius: 0; - transition: background-color 0.25s ease-out, color 0.25s ease-out; - font-family: inherit; - font-size: 0.9rem; - -webkit-appearance: none; - line-height: 1; - text-align: center; - cursor: pointer; -} -[data-whatinput=mouse] .button { - outline: 0; -} -.button.tiny { - font-size: 0.6rem; -} -.button.small { - font-size: 0.75rem; -} -.button.large { - font-size: 1.25rem; -} -.button.expanded { - display: block; - width: 100%; - margin-right: 0; - margin-left: 0; -} -.button, .button.disabled, .button[disabled], .button.disabled:hover, .button[disabled]:hover, .button.disabled:focus, .button[disabled]:focus { - background-color: #FFFFFF; - color: #FFFFFF; -} -.button:hover, .button:focus { - background-color: #14679e; - color: #FFFFFF; -} -.button.primary, .button.primary.disabled, .button.primary[disabled], .button.primary.disabled:hover, .button.primary[disabled]:hover, .button.primary.disabled:focus, .button.primary[disabled]:focus { - background-color: #140A44; - color: #FFFFFF; -} -.button.primary:hover, .button.primary:focus { - background-color: #100836; - color: #FFFFFF; -} -.button.secondary, .button.secondary.disabled, .button.secondary[disabled], .button.secondary.disabled:hover, .button.secondary[disabled]:hover, .button.secondary.disabled:focus, .button.secondary[disabled]:focus { - background-color: #E47048; - color: #1E1E1E; -} -.button.secondary:hover, .button.secondary:focus { - background-color: #d14d1f; - color: #1E1E1E; -} -.button.success, .button.success.disabled, .button.success[disabled], .button.success.disabled:hover, .button.success[disabled]:hover, .button.success.disabled:focus, .button.success[disabled]:focus { - background-color: #3adb76; - color: #1E1E1E; -} -.button.success:hover, .button.success:focus { - background-color: #22bb5b; - color: #1E1E1E; -} -.button.warning, .button.warning.disabled, .button.warning[disabled], .button.warning.disabled:hover, .button.warning[disabled]:hover, .button.warning.disabled:focus, .button.warning[disabled]:focus { - background-color: #ffae00; - color: #1E1E1E; -} -.button.warning:hover, .button.warning:focus { - background-color: #cc8b00; - color: #1E1E1E; -} -.button.alert, .button.alert.disabled, .button.alert[disabled], .button.alert.disabled:hover, .button.alert[disabled]:hover, .button.alert.disabled:focus, .button.alert[disabled]:focus { - background-color: #cc4b37; - color: #FFFFFF; -} -.button.alert:hover, .button.alert:focus { - background-color: #a53b2a; - color: #FFFFFF; -} -.button.black, .button.black.disabled, .button.black[disabled], .button.black.disabled:hover, .button.black[disabled]:hover, .button.black.disabled:focus, .button.black[disabled]:focus { - background-color: #0a0a0a; - color: #FFFFFF; -} -.button.black:hover, .button.black:focus { - background-color: #080808; - color: #FFFFFF; -} -.button.hollow, .button.hollow:hover, .button.hollow:focus, .button.hollow.disabled, .button.hollow.disabled:hover, .button.hollow.disabled:focus, .button.hollow[disabled], .button.hollow[disabled]:hover, .button.hollow[disabled]:focus { - background-color: transparent; -} -.button.hollow, .button.hollow.disabled, .button.hollow[disabled], .button.hollow.disabled:hover, .button.hollow[disabled]:hover, .button.hollow.disabled:focus, .button.hollow[disabled]:focus { - border: 2px solid #FFFFFF; - color: #FFFFFF; -} -.button.hollow:hover, .button.hollow:focus { - border-color: gray; - color: gray; -} -.button.hollow.primary, .button.hollow.primary.disabled, .button.hollow.primary[disabled], .button.hollow.primary.disabled:hover, .button.hollow.primary[disabled]:hover, .button.hollow.primary.disabled:focus, .button.hollow.primary[disabled]:focus { - border: 2px solid #140A44; - color: #140A44; -} -.button.hollow.primary:hover, .button.hollow.primary:focus { - border-color: #0a0522; - color: #0a0522; -} -.button.hollow.secondary, .button.hollow.secondary.disabled, .button.hollow.secondary[disabled], .button.hollow.secondary.disabled:hover, .button.hollow.secondary[disabled]:hover, .button.hollow.secondary.disabled:focus, .button.hollow.secondary[disabled]:focus { - border: 2px solid #E47048; - color: #E47048; -} -.button.hollow.secondary:hover, .button.hollow.secondary:focus { - border-color: #833013; - color: #833013; -} -.button.hollow.success, .button.hollow.success.disabled, .button.hollow.success[disabled], .button.hollow.success.disabled:hover, .button.hollow.success[disabled]:hover, .button.hollow.success.disabled:focus, .button.hollow.success[disabled]:focus { - border: 2px solid #3adb76; - color: #3adb76; -} -.button.hollow.success:hover, .button.hollow.success:focus { - border-color: #157539; - color: #157539; -} -.button.hollow.warning, .button.hollow.warning.disabled, .button.hollow.warning[disabled], .button.hollow.warning.disabled:hover, .button.hollow.warning[disabled]:hover, .button.hollow.warning.disabled:focus, .button.hollow.warning[disabled]:focus { - border: 2px solid #ffae00; - color: #ffae00; -} -.button.hollow.warning:hover, .button.hollow.warning:focus { - border-color: #805700; - color: #805700; -} -.button.hollow.alert, .button.hollow.alert.disabled, .button.hollow.alert[disabled], .button.hollow.alert.disabled:hover, .button.hollow.alert[disabled]:hover, .button.hollow.alert.disabled:focus, .button.hollow.alert[disabled]:focus { - border: 2px solid #cc4b37; - color: #cc4b37; -} -.button.hollow.alert:hover, .button.hollow.alert:focus { - border-color: #67251a; - color: #67251a; -} -.button.hollow.black, .button.hollow.black.disabled, .button.hollow.black[disabled], .button.hollow.black.disabled:hover, .button.hollow.black[disabled]:hover, .button.hollow.black.disabled:focus, .button.hollow.black[disabled]:focus { - border: 2px solid #0a0a0a; - color: #0a0a0a; -} -.button.hollow.black:hover, .button.hollow.black:focus { - border-color: #050505; - color: #050505; -} -.button.clear, .button.clear:hover, .button.clear:focus, .button.clear.disabled, .button.clear.disabled:hover, .button.clear.disabled:focus, .button.clear[disabled], .button.clear[disabled]:hover, .button.clear[disabled]:focus { - border-color: transparent; - background-color: transparent; -} -.button.clear, .button.clear.disabled, .button.clear[disabled], .button.clear.disabled:hover, .button.clear[disabled]:hover, .button.clear.disabled:focus, .button.clear[disabled]:focus { - color: #FFFFFF; -} -.button.clear:hover, .button.clear:focus { - color: gray; -} -.button.clear.primary, .button.clear.primary.disabled, .button.clear.primary[disabled], .button.clear.primary.disabled:hover, .button.clear.primary[disabled]:hover, .button.clear.primary.disabled:focus, .button.clear.primary[disabled]:focus { - color: #140A44; -} -.button.clear.primary:hover, .button.clear.primary:focus { - color: #0a0522; -} -.button.clear.secondary, .button.clear.secondary.disabled, .button.clear.secondary[disabled], .button.clear.secondary.disabled:hover, .button.clear.secondary[disabled]:hover, .button.clear.secondary.disabled:focus, .button.clear.secondary[disabled]:focus { - color: #E47048; -} -.button.clear.secondary:hover, .button.clear.secondary:focus { - color: #833013; -} -.button.clear.success, .button.clear.success.disabled, .button.clear.success[disabled], .button.clear.success.disabled:hover, .button.clear.success[disabled]:hover, .button.clear.success.disabled:focus, .button.clear.success[disabled]:focus { - color: #3adb76; -} -.button.clear.success:hover, .button.clear.success:focus { - color: #157539; -} -.button.clear.warning, .button.clear.warning.disabled, .button.clear.warning[disabled], .button.clear.warning.disabled:hover, .button.clear.warning[disabled]:hover, .button.clear.warning.disabled:focus, .button.clear.warning[disabled]:focus { - color: #ffae00; -} -.button.clear.warning:hover, .button.clear.warning:focus { - color: #805700; -} -.button.clear.alert, .button.clear.alert.disabled, .button.clear.alert[disabled], .button.clear.alert.disabled:hover, .button.clear.alert[disabled]:hover, .button.clear.alert.disabled:focus, .button.clear.alert[disabled]:focus { - color: #cc4b37; -} -.button.clear.alert:hover, .button.clear.alert:focus { - color: #67251a; -} -.button.clear.black, .button.clear.black.disabled, .button.clear.black[disabled], .button.clear.black.disabled:hover, .button.clear.black[disabled]:hover, .button.clear.black.disabled:focus, .button.clear.black[disabled]:focus { - color: #0a0a0a; -} -.button.clear.black:hover, .button.clear.black:focus { - color: #050505; -} -.button.disabled, .button[disabled] { - opacity: 0.25; - cursor: not-allowed; -} -.button.dropdown::after { - display: block; - width: 0; - height: 0; - border-style: solid; - border-width: 0.4em; - content: ""; - border-bottom-width: 0; - border-color: #FFFFFF transparent transparent; - position: relative; - top: 0.4em; - display: inline-block; - float: right; - margin-left: 1.25em; -} -.button.dropdown.hollow::after, .button.dropdown.clear::after { - border-top-color: #FFFFFF; -} -.button.dropdown.hollow.primary::after, .button.dropdown.clear.primary::after { - border-top-color: #140A44; -} -.button.dropdown.hollow.secondary::after, .button.dropdown.clear.secondary::after { - border-top-color: #E47048; -} -.button.dropdown.hollow.success::after, .button.dropdown.clear.success::after { - border-top-color: #3adb76; -} -.button.dropdown.hollow.warning::after, .button.dropdown.clear.warning::after { - border-top-color: #ffae00; -} -.button.dropdown.hollow.alert::after, .button.dropdown.clear.alert::after { - border-top-color: #cc4b37; -} -.button.dropdown.hollow.black::after, .button.dropdown.clear.black::after { - border-top-color: #0a0a0a; -} -.button.arrow-only::after { - top: -0.1em; - float: none; - margin-left: 0; -} - -a.button:hover, a.button:focus { - text-decoration: none; -} - -[type=text], [type=password], [type=date], [type=datetime], [type=datetime-local], [type=month], [type=week], [type=email], [type=number], [type=search], [type=tel], [type=time], [type=url], [type=color], -textarea { - display: block; - box-sizing: border-box; - width: 100%; - height: 2.1057692308rem; - margin: 0 0 0.7692307692rem; - padding: 0.5rem; - border: 1px solid #E9E9E9; - border-radius: 0; - background-color: #FFFFFF; - box-shadow: inset 0 1px 2px rgba(30, 30, 30, 0.1); - font-family: inherit; - font-size: 0.7692307692rem; - font-weight: 400; - line-height: 1.5; - color: #1E1E1E; - transition: box-shadow 0.5s, border-color 0.25s ease-in-out; - appearance: none; -} -[type=text]:focus, [type=password]:focus, [type=date]:focus, [type=datetime]:focus, [type=datetime-local]:focus, [type=month]:focus, [type=week]:focus, [type=email]:focus, [type=number]:focus, [type=search]:focus, [type=tel]:focus, [type=time]:focus, [type=url]:focus, [type=color]:focus, -textarea:focus { - outline: none; - border: 1px solid #CACACA; - background-color: #FFFFFF; - box-shadow: 0 0 5px #E9E9E9; - transition: box-shadow 0.5s, border-color 0.25s ease-in-out; -} - -textarea { - max-width: 100%; -} -textarea[rows] { - height: auto; -} - -input:disabled, input[readonly], -textarea:disabled, -textarea[readonly] { - background-color: #F7F8F9; - cursor: not-allowed; -} - -[type=submit], -[type=button] { - appearance: none; - border-radius: 0; -} - -input[type=search] { - box-sizing: border-box; -} - -::placeholder { - color: #E9E9E9; -} - -[type=file], -[type=checkbox], -[type=radio] { - margin: 0 0 0.7692307692rem; -} - -[type=checkbox] + label, -[type=radio] + label { - display: inline-block; - vertical-align: baseline; - margin-left: 0.3846153846rem; - margin-right: 0.7692307692rem; - margin-bottom: 0; -} -[type=checkbox] + label[for], -[type=radio] + label[for] { - cursor: pointer; -} - -label > [type=checkbox], -label > [type=radio] { - margin-right: 0.3846153846rem; -} - -[type=file] { - width: 100%; -} - -label { - display: block; - margin: 0; - font-size: 0.6730769231rem; - font-weight: 400; - line-height: 1.8; - color: #1E1E1E; -} -label.middle { - margin: 0 0 0.7692307692rem; - line-height: 1.4; - padding: 0.4326923077rem 0; -} - -.help-text { - margin-top: -0.3846153846rem; - font-size: 0.625rem; - font-style: italic; - color: #1E1E1E; -} - -.input-group { - display: table; - width: 100%; - margin-bottom: 0.7692307692rem; -} -.input-group > :first-child, .input-group > :first-child.input-group-button > * { - border-radius: 0 0 0 0; -} -.input-group > :last-child, .input-group > :last-child.input-group-button > * { - border-radius: 0 0 0 0; -} - -.input-group-button a, -.input-group-button input, -.input-group-button button, -.input-group-button label, .input-group-button, .input-group-field, .input-group-label { - margin: 0; - white-space: nowrap; - display: table-cell; - vertical-align: middle; -} - -.input-group-label { - padding: 0 1rem; - border: 1px solid #E9E9E9; - background: #F7F8F9; - color: #1E1E1E; - text-align: center; - white-space: nowrap; - width: 1%; - height: 100%; -} -.input-group-label:first-child { - border-right: 0; -} -.input-group-label:last-child { - border-left: 0; -} - -.input-group-field { - border-radius: 0; -} - -.input-group-button { - padding-top: 0; - padding-bottom: 0; - text-align: center; - width: 1%; - height: 100%; -} -.input-group-button a, -.input-group-button input, -.input-group-button button, -.input-group-button label { - height: 2.1057692308rem; - padding-top: 0; - padding-bottom: 0; - font-size: 0.7692307692rem; -} - -.input-group .input-group-button { - display: table-cell; -} - -fieldset { - margin: 0; - padding: 0; - border: 0; -} - -legend { - max-width: 100%; - margin-bottom: 0.3846153846rem; -} - -.fieldset { - margin: 0.8653846154rem 0; - padding: 0.9615384615rem; - border: 1px solid #E9E9E9; -} -.fieldset legend { - margin: 0; - margin-left: -0.1442307692rem; - padding: 0 0.1442307692rem; -} - -select { - height: 2.1057692308rem; - margin: 0 0 0.7692307692rem; - padding: 0.5rem; - appearance: none; - border: 1px solid #E9E9E9; - border-radius: 0; - background-color: #FFFFFF; - font-family: inherit; - font-size: 0.7692307692rem; - font-weight: 400; - line-height: 1.5; - color: #1E1E1E; - background-image: url('data:image/svg+xml;utf8,'); - background-origin: content-box; - background-position: right -0.7692307692rem center; - background-repeat: no-repeat; - background-size: 9px 6px; - padding-right: 1.1538461538rem; - transition: box-shadow 0.5s, border-color 0.25s ease-in-out; -} -@media screen and (min-width: 0\0 ) { - select { - background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAYCAYAAACbU/80AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAMBJREFUeNrEllsOhCAMRVszC9IlzU7KCmVHTJsoMWYMUtpyv9BgbuXQB5ZSdgBYYY4ycgBivk8KYFsQMfMiTTBP4o3nUzCKzOabLJbLy2/g31evGkAginR4/ZegKH5qX3bJCscA3t0x3kgO5tQFyhhFf50xRqFLbyMUNJQzgyjGS/wgCpvKqkRBpuWrE4V9d+1E4dPUXqIg107SQOE/2DRQxMwTDygIInVDET9T3lCoj/6j/VCmGjZOl2lKpZ8AAwDQP7zIimDGFQAAAABJRU5ErkJggg=="); - } -} -select:focus { - outline: none; - border: 1px solid #CACACA; - background-color: #FFFFFF; - box-shadow: 0 0 5px #E9E9E9; - transition: box-shadow 0.5s, border-color 0.25s ease-in-out; -} -select:disabled { - background-color: #F7F8F9; - cursor: not-allowed; -} -select::-ms-expand { - display: none; -} -select[multiple] { - height: auto; - background-image: none; -} -select:not([multiple]) { - padding-top: 0; - padding-bottom: 0; -} - -.is-invalid-input:not(:focus) { - border-color: #cc4b37; - background-color: #faedeb; -} -.is-invalid-input:not(:focus)::placeholder { - color: #cc4b37; -} - -.is-invalid-label { - color: #cc4b37; -} - -.form-error { - display: none; - margin-top: -0.3846153846rem; - margin-bottom: 0.7692307692rem; - font-size: 0.5769230769rem; - font-weight: 700; - color: #cc4b37; -} -.form-error.is-visible { - display: block; -} - -.hide { - display: none !important; -} - -.invisible { - visibility: hidden; -} - -.visible { - visibility: visible; -} - -@media print, screen and (max-width: 32.74875em) { - .hide-for-small-only { - display: none !important; - } -} - -@media screen and (max-width: 0em), screen and (min-width: 32.75em) { - .show-for-small-only { - display: none !important; - } -} - -@media screen and (min-width: 32.75em) { - .hide-for-smedium { - display: none !important; - } -} - -@media screen and (max-width: 32.74875em) { - .show-for-smedium { - display: none !important; - } -} - -@media screen and (min-width: 32.75em) and (max-width: 55.62375em) { - .hide-for-smedium-only { - display: none !important; - } -} - -@media screen and (max-width: 32.74875em), screen and (min-width: 55.625em) { - .show-for-smedium-only { - display: none !important; - } -} - -@media print, screen and (min-width: 55.625em) { - .hide-for-medium { - display: none !important; - } -} - -@media screen and (max-width: 55.62375em) { - .show-for-medium { - display: none !important; - } -} - -@media print, screen and (min-width: 55.625em) and (max-width: 63.99875em) { - .hide-for-medium-only { - display: none !important; - } -} - -@media screen and (max-width: 55.62375em), screen and (min-width: 64em) { - .show-for-medium-only { - display: none !important; - } -} - -@media print, screen and (min-width: 64em) { - .hide-for-large { - display: none !important; - } -} - -@media screen and (max-width: 63.99875em) { - .show-for-large { - display: none !important; - } -} - -@media print, screen and (min-width: 64em) and (max-width: 74.99875em) { - .hide-for-large-only { - display: none !important; - } -} - -@media screen and (max-width: 63.99875em), screen and (min-width: 75em) { - .show-for-large-only { - display: none !important; - } -} - -.show-for-sr, -.show-on-focus { - position: absolute !important; - width: 1px !important; - height: 1px !important; - padding: 0 !important; - overflow: hidden !important; - clip: rect(0, 0, 0, 0) !important; - white-space: nowrap !important; - border: 0 !important; -} - -.show-on-focus:active, .show-on-focus:focus { - position: static !important; - width: auto !important; - height: auto !important; - overflow: visible !important; - clip: auto !important; - white-space: normal !important; -} - -.show-for-landscape, -.hide-for-portrait { - display: block !important; -} -@media screen and (orientation: landscape) { - .show-for-landscape, - .hide-for-portrait { - display: block !important; - } -} -@media screen and (orientation: portrait) { - .show-for-landscape, - .hide-for-portrait { - display: none !important; - } -} - -.hide-for-landscape, -.show-for-portrait { - display: none !important; -} -@media screen and (orientation: landscape) { - .hide-for-landscape, - .show-for-portrait { - display: none !important; - } -} -@media screen and (orientation: portrait) { - .hide-for-landscape, - .show-for-portrait { - display: block !important; - } -} - -.show-for-dark-mode { - display: none; -} - -.hide-for-dark-mode { - display: block; -} - -@media screen and (prefers-color-scheme: dark) { - .show-for-dark-mode { - display: block !important; - } - .hide-for-dark-mode { - display: none !important; - } -} -.show-for-ie { - display: none; -} - -@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) { - .show-for-ie { - display: block !important; - } - .hide-for-ie { - display: none !important; - } -} -.show-for-sticky { - display: none; -} - -.is-stuck .show-for-sticky { - display: block; -} - -.is-stuck .hide-for-sticky { - display: none; -} - -.float-left { - float: left !important; -} - -.float-right { - float: right !important; -} - -.float-center { - display: block; - margin-right: auto; - margin-left: auto; -} - -.clearfix::before, .clearfix::after { - display: table; - content: " "; -} -.clearfix::after { - clear: both; -} - -.accordion { - margin-left: 0; - background: #FFFFFF; - list-style-type: none; -} -.accordion[disabled] .accordion-title { - cursor: not-allowed; -} - -.accordion-item:first-child > :first-child { - border-radius: 0 0 0 0; -} -.accordion-item:last-child > :last-child { - border-radius: 0 0 0 0; -} - -.accordion-title { - position: relative; - display: block; - padding: 1.25rem 1rem; - border: 1px solid #F7F8F9; - border-bottom: 0; - font-size: 0.5769230769rem; - line-height: 1; - color: #E47048; -} -:last-child:not(.is-active) > .accordion-title { - border-bottom: 1px solid #F7F8F9; - border-radius: 0 0 0 0; -} -.accordion-title:hover, .accordion-title:focus { - background-color: #F7F8F9; -} -.accordion-title::before { - position: absolute; - top: 50%; - right: 1rem; - margin-top: -0.5rem; - content: "+"; -} -.is-active > .accordion-title::before { - content: "–"; -} - -.accordion-content { - display: none; - padding: 1rem; - border: 1px solid #F7F8F9; - border-bottom: 0; - background-color: #FFFFFF; - color: #1E1E1E; -} -:last-child > .accordion-content:last-child { - border-bottom: 1px solid #F7F8F9; -} - -.accordion-menu li { - width: 100%; -} -.accordion-menu a { - padding: 0.7rem 1rem; -} -.accordion-menu .is-accordion-submenu a { - padding: 0.7rem 1rem; -} -.accordion-menu .nested.is-accordion-submenu { - margin-right: 0; - margin-left: 1rem; -} -.accordion-menu.align-right .nested.is-accordion-submenu { - margin-right: 1rem; - margin-left: 0; -} -.accordion-menu .is-accordion-submenu-parent:not(.has-submenu-toggle) > a { - position: relative; -} -.accordion-menu .is-accordion-submenu-parent:not(.has-submenu-toggle) > a::after { - display: block; - width: 0; - height: 0; - border-style: solid; - border-width: 6px; - content: ""; - border-bottom-width: 0; - border-color: #E47048 transparent transparent; - position: absolute; - top: 50%; - margin-top: -3px; - right: 1rem; -} -.accordion-menu.align-left .is-accordion-submenu-parent > a::after { - right: 1rem; - left: auto; -} -.accordion-menu.align-right .is-accordion-submenu-parent > a::after { - right: auto; - left: 1rem; -} -.accordion-menu .is-accordion-submenu-parent[aria-expanded=true] > a::after { - transform: rotate(180deg); - transform-origin: 50% 50%; -} - -.is-accordion-submenu-parent { - position: relative; -} - -.has-submenu-toggle > a { - margin-right: 40px; -} - -.submenu-toggle { - position: absolute; - top: 0; - right: 0; - width: 40px; - height: 40px; - cursor: pointer; -} -.submenu-toggle::after { - display: block; - width: 0; - height: 0; - border-style: solid; - border-width: 6px; - content: ""; - border-bottom-width: 0; - border-color: #E47048 transparent transparent; - top: 0; - bottom: 0; - margin: auto; -} - -.submenu-toggle[aria-expanded=true]::after { - transform: scaleY(-1); - transform-origin: 50% 50%; -} - -.submenu-toggle-text { - position: absolute !important; - width: 1px !important; - height: 1px !important; - padding: 0 !important; - overflow: hidden !important; - clip: rect(0, 0, 0, 0) !important; - white-space: nowrap !important; - border: 0 !important; -} - -.badge { - display: inline-block; - min-width: 2.1em; - padding: 0.3em; - border-radius: 50%; - font-size: 0.6rem; - text-align: center; - background: #E47048; - color: #FFFFFF; -} -.badge.primary { - background: #140A44; - color: #FFFFFF; -} -.badge.secondary { - background: #E47048; - color: #1E1E1E; -} -.badge.success { - background: #3adb76; - color: #1E1E1E; -} -.badge.warning { - background: #ffae00; - color: #1E1E1E; -} -.badge.alert { - background: #cc4b37; - color: #FFFFFF; -} -.badge.black { - background: #0a0a0a; - color: #FFFFFF; -} - -.breadcrumbs { - margin: 0 0 1rem 0; - list-style: none; -} -.breadcrumbs::before, .breadcrumbs::after { - display: table; - content: " "; -} -.breadcrumbs::after { - clear: both; -} -.breadcrumbs li { - float: left; - font-size: 0.5288461538rem; - color: #1E1E1E; - cursor: default; - text-transform: uppercase; -} -.breadcrumbs li:not(:last-child)::after { - position: relative; - margin: 0 0.75rem; - opacity: 1; - content: "/"; - color: #cacaca; -} -.breadcrumbs a { - color: #E47048; -} -.breadcrumbs a:hover { - text-decoration: underline; -} -.breadcrumbs .disabled { - color: #E9E9E9; - cursor: not-allowed; -} - -.button-group { - margin-bottom: 1rem; - font-size: 0; -} -.button-group::before, .button-group::after { - display: table; - content: " "; -} -.button-group::after { - clear: both; -} -.button-group .button { - margin: 0; - margin-right: 4px; - margin-bottom: 4px; - font-size: 0.9rem; -} -.button-group .button:last-child { - margin-right: 0; -} -.button-group.tiny .button { - font-size: 0.6rem; -} -.button-group.small .button { - font-size: 0.75rem; -} -.button-group.large .button { - font-size: 1.25rem; -} -.button-group.expanded { - margin-right: -4px; -} -.button-group.expanded::before, .button-group.expanded::after { - display: none; -} -.button-group.expanded .button:first-child:last-child { - width: calc(100% - 4px); -} -.button-group.expanded .button:first-child:nth-last-child(2), .button-group.expanded .button:first-child:nth-last-child(2):first-child:nth-last-child(2) ~ .button { - display: inline-block; - width: calc(50% - 4px); - margin-right: 4px; -} -.button-group.expanded .button:first-child:nth-last-child(2):last-child, .button-group.expanded .button:first-child:nth-last-child(2):first-child:nth-last-child(2) ~ .button:last-child { - margin-right: -24px; -} -.button-group.expanded .button:first-child:nth-last-child(3), .button-group.expanded .button:first-child:nth-last-child(3):first-child:nth-last-child(3) ~ .button { - display: inline-block; - width: calc(33.3333333333% - 4px); - margin-right: 4px; -} -.button-group.expanded .button:first-child:nth-last-child(3):last-child, .button-group.expanded .button:first-child:nth-last-child(3):first-child:nth-last-child(3) ~ .button:last-child { - margin-right: -24px; -} -.button-group.expanded .button:first-child:nth-last-child(4), .button-group.expanded .button:first-child:nth-last-child(4):first-child:nth-last-child(4) ~ .button { - display: inline-block; - width: calc(25% - 4px); - margin-right: 4px; -} -.button-group.expanded .button:first-child:nth-last-child(4):last-child, .button-group.expanded .button:first-child:nth-last-child(4):first-child:nth-last-child(4) ~ .button:last-child { - margin-right: -24px; -} -.button-group.expanded .button:first-child:nth-last-child(5), .button-group.expanded .button:first-child:nth-last-child(5):first-child:nth-last-child(5) ~ .button { - display: inline-block; - width: calc(20% - 4px); - margin-right: 4px; -} -.button-group.expanded .button:first-child:nth-last-child(5):last-child, .button-group.expanded .button:first-child:nth-last-child(5):first-child:nth-last-child(5) ~ .button:last-child { - margin-right: -24px; -} -.button-group.expanded .button:first-child:nth-last-child(6), .button-group.expanded .button:first-child:nth-last-child(6):first-child:nth-last-child(6) ~ .button { - display: inline-block; - width: calc(16.6666666667% - 4px); - margin-right: 4px; -} -.button-group.expanded .button:first-child:nth-last-child(6):last-child, .button-group.expanded .button:first-child:nth-last-child(6):first-child:nth-last-child(6) ~ .button:last-child { - margin-right: -24px; -} -.button-group.primary .button, .button-group.primary .button.disabled, .button-group.primary .button[disabled], .button-group.primary .button.disabled:hover, .button-group.primary .button[disabled]:hover, .button-group.primary .button.disabled:focus, .button-group.primary .button[disabled]:focus { - background-color: #140A44; - color: #FFFFFF; -} -.button-group.primary .button:hover, .button-group.primary .button:focus { - background-color: #100836; - color: #FFFFFF; -} -.button-group.secondary .button, .button-group.secondary .button.disabled, .button-group.secondary .button[disabled], .button-group.secondary .button.disabled:hover, .button-group.secondary .button[disabled]:hover, .button-group.secondary .button.disabled:focus, .button-group.secondary .button[disabled]:focus { - background-color: #E47048; - color: #1E1E1E; -} -.button-group.secondary .button:hover, .button-group.secondary .button:focus { - background-color: #d14d1f; - color: #1E1E1E; -} -.button-group.success .button, .button-group.success .button.disabled, .button-group.success .button[disabled], .button-group.success .button.disabled:hover, .button-group.success .button[disabled]:hover, .button-group.success .button.disabled:focus, .button-group.success .button[disabled]:focus { - background-color: #3adb76; - color: #1E1E1E; -} -.button-group.success .button:hover, .button-group.success .button:focus { - background-color: #22bb5b; - color: #1E1E1E; -} -.button-group.warning .button, .button-group.warning .button.disabled, .button-group.warning .button[disabled], .button-group.warning .button.disabled:hover, .button-group.warning .button[disabled]:hover, .button-group.warning .button.disabled:focus, .button-group.warning .button[disabled]:focus { - background-color: #ffae00; - color: #1E1E1E; -} -.button-group.warning .button:hover, .button-group.warning .button:focus { - background-color: #cc8b00; - color: #1E1E1E; -} -.button-group.alert .button, .button-group.alert .button.disabled, .button-group.alert .button[disabled], .button-group.alert .button.disabled:hover, .button-group.alert .button[disabled]:hover, .button-group.alert .button.disabled:focus, .button-group.alert .button[disabled]:focus { - background-color: #cc4b37; - color: #FFFFFF; -} -.button-group.alert .button:hover, .button-group.alert .button:focus { - background-color: #a53b2a; - color: #FFFFFF; -} -.button-group.black .button, .button-group.black .button.disabled, .button-group.black .button[disabled], .button-group.black .button.disabled:hover, .button-group.black .button[disabled]:hover, .button-group.black .button.disabled:focus, .button-group.black .button[disabled]:focus { - background-color: #0a0a0a; - color: #FFFFFF; -} -.button-group.black .button:hover, .button-group.black .button:focus { - background-color: #080808; - color: #FFFFFF; -} -.button-group.hollow .button, .button-group.hollow .button:hover, .button-group.hollow .button:focus, .button-group.hollow .button.disabled, .button-group.hollow .button.disabled:hover, .button-group.hollow .button.disabled:focus, .button-group.hollow .button[disabled], .button-group.hollow .button[disabled]:hover, .button-group.hollow .button[disabled]:focus { - background-color: transparent; -} -.button-group.hollow .button, .button-group.hollow .button.disabled, .button-group.hollow .button[disabled], .button-group.hollow .button.disabled:hover, .button-group.hollow .button[disabled]:hover, .button-group.hollow .button.disabled:focus, .button-group.hollow .button[disabled]:focus { - border: 2px solid #FFFFFF; - color: #FFFFFF; -} -.button-group.hollow .button:hover, .button-group.hollow .button:focus { - border-color: gray; - color: gray; -} -.button-group.hollow.primary .button, .button-group.hollow.primary .button.disabled, .button-group.hollow.primary .button[disabled], .button-group.hollow.primary .button.disabled:hover, .button-group.hollow.primary .button[disabled]:hover, .button-group.hollow.primary .button.disabled:focus, .button-group.hollow.primary .button[disabled]:focus, .button-group.hollow .button.primary, .button-group.hollow .button.primary.disabled, .button-group.hollow .button.primary[disabled], .button-group.hollow .button.primary.disabled:hover, .button-group.hollow .button.primary[disabled]:hover, .button-group.hollow .button.primary.disabled:focus, .button-group.hollow .button.primary[disabled]:focus { - border: 2px solid #140A44; - color: #140A44; -} -.button-group.hollow.primary .button:hover, .button-group.hollow.primary .button:focus, .button-group.hollow .button.primary:hover, .button-group.hollow .button.primary:focus { - border-color: #0a0522; - color: #0a0522; -} -.button-group.hollow.secondary .button, .button-group.hollow.secondary .button.disabled, .button-group.hollow.secondary .button[disabled], .button-group.hollow.secondary .button.disabled:hover, .button-group.hollow.secondary .button[disabled]:hover, .button-group.hollow.secondary .button.disabled:focus, .button-group.hollow.secondary .button[disabled]:focus, .button-group.hollow .button.secondary, .button-group.hollow .button.secondary.disabled, .button-group.hollow .button.secondary[disabled], .button-group.hollow .button.secondary.disabled:hover, .button-group.hollow .button.secondary[disabled]:hover, .button-group.hollow .button.secondary.disabled:focus, .button-group.hollow .button.secondary[disabled]:focus { - border: 2px solid #E47048; - color: #E47048; -} -.button-group.hollow.secondary .button:hover, .button-group.hollow.secondary .button:focus, .button-group.hollow .button.secondary:hover, .button-group.hollow .button.secondary:focus { - border-color: #833013; - color: #833013; -} -.button-group.hollow.success .button, .button-group.hollow.success .button.disabled, .button-group.hollow.success .button[disabled], .button-group.hollow.success .button.disabled:hover, .button-group.hollow.success .button[disabled]:hover, .button-group.hollow.success .button.disabled:focus, .button-group.hollow.success .button[disabled]:focus, .button-group.hollow .button.success, .button-group.hollow .button.success.disabled, .button-group.hollow .button.success[disabled], .button-group.hollow .button.success.disabled:hover, .button-group.hollow .button.success[disabled]:hover, .button-group.hollow .button.success.disabled:focus, .button-group.hollow .button.success[disabled]:focus { - border: 2px solid #3adb76; - color: #3adb76; -} -.button-group.hollow.success .button:hover, .button-group.hollow.success .button:focus, .button-group.hollow .button.success:hover, .button-group.hollow .button.success:focus { - border-color: #157539; - color: #157539; -} -.button-group.hollow.warning .button, .button-group.hollow.warning .button.disabled, .button-group.hollow.warning .button[disabled], .button-group.hollow.warning .button.disabled:hover, .button-group.hollow.warning .button[disabled]:hover, .button-group.hollow.warning .button.disabled:focus, .button-group.hollow.warning .button[disabled]:focus, .button-group.hollow .button.warning, .button-group.hollow .button.warning.disabled, .button-group.hollow .button.warning[disabled], .button-group.hollow .button.warning.disabled:hover, .button-group.hollow .button.warning[disabled]:hover, .button-group.hollow .button.warning.disabled:focus, .button-group.hollow .button.warning[disabled]:focus { - border: 2px solid #ffae00; - color: #ffae00; -} -.button-group.hollow.warning .button:hover, .button-group.hollow.warning .button:focus, .button-group.hollow .button.warning:hover, .button-group.hollow .button.warning:focus { - border-color: #805700; - color: #805700; -} -.button-group.hollow.alert .button, .button-group.hollow.alert .button.disabled, .button-group.hollow.alert .button[disabled], .button-group.hollow.alert .button.disabled:hover, .button-group.hollow.alert .button[disabled]:hover, .button-group.hollow.alert .button.disabled:focus, .button-group.hollow.alert .button[disabled]:focus, .button-group.hollow .button.alert, .button-group.hollow .button.alert.disabled, .button-group.hollow .button.alert[disabled], .button-group.hollow .button.alert.disabled:hover, .button-group.hollow .button.alert[disabled]:hover, .button-group.hollow .button.alert.disabled:focus, .button-group.hollow .button.alert[disabled]:focus { - border: 2px solid #cc4b37; - color: #cc4b37; -} -.button-group.hollow.alert .button:hover, .button-group.hollow.alert .button:focus, .button-group.hollow .button.alert:hover, .button-group.hollow .button.alert:focus { - border-color: #67251a; - color: #67251a; -} -.button-group.hollow.black .button, .button-group.hollow.black .button.disabled, .button-group.hollow.black .button[disabled], .button-group.hollow.black .button.disabled:hover, .button-group.hollow.black .button[disabled]:hover, .button-group.hollow.black .button.disabled:focus, .button-group.hollow.black .button[disabled]:focus, .button-group.hollow .button.black, .button-group.hollow .button.black.disabled, .button-group.hollow .button.black[disabled], .button-group.hollow .button.black.disabled:hover, .button-group.hollow .button.black[disabled]:hover, .button-group.hollow .button.black.disabled:focus, .button-group.hollow .button.black[disabled]:focus { - border: 2px solid #0a0a0a; - color: #0a0a0a; -} -.button-group.hollow.black .button:hover, .button-group.hollow.black .button:focus, .button-group.hollow .button.black:hover, .button-group.hollow .button.black:focus { - border-color: #050505; - color: #050505; -} -.button-group.clear .button, .button-group.clear .button:hover, .button-group.clear .button:focus, .button-group.clear .button.disabled, .button-group.clear .button.disabled:hover, .button-group.clear .button.disabled:focus, .button-group.clear .button[disabled], .button-group.clear .button[disabled]:hover, .button-group.clear .button[disabled]:focus { - border-color: transparent; - background-color: transparent; -} -.button-group.clear .button, .button-group.clear .button.disabled, .button-group.clear .button[disabled], .button-group.clear .button.disabled:hover, .button-group.clear .button[disabled]:hover, .button-group.clear .button.disabled:focus, .button-group.clear .button[disabled]:focus { - color: #FFFFFF; -} -.button-group.clear .button:hover, .button-group.clear .button:focus { - color: gray; -} -.button-group.clear.primary .button, .button-group.clear.primary .button.disabled, .button-group.clear.primary .button[disabled], .button-group.clear.primary .button.disabled:hover, .button-group.clear.primary .button[disabled]:hover, .button-group.clear.primary .button.disabled:focus, .button-group.clear.primary .button[disabled]:focus, .button-group.clear .button.primary, .button-group.clear .button.primary.disabled, .button-group.clear .button.primary[disabled], .button-group.clear .button.primary.disabled:hover, .button-group.clear .button.primary[disabled]:hover, .button-group.clear .button.primary.disabled:focus, .button-group.clear .button.primary[disabled]:focus { - color: #140A44; -} -.button-group.clear.primary .button:hover, .button-group.clear.primary .button:focus, .button-group.clear .button.primary:hover, .button-group.clear .button.primary:focus { - color: #0a0522; -} -.button-group.clear.secondary .button, .button-group.clear.secondary .button.disabled, .button-group.clear.secondary .button[disabled], .button-group.clear.secondary .button.disabled:hover, .button-group.clear.secondary .button[disabled]:hover, .button-group.clear.secondary .button.disabled:focus, .button-group.clear.secondary .button[disabled]:focus, .button-group.clear .button.secondary, .button-group.clear .button.secondary.disabled, .button-group.clear .button.secondary[disabled], .button-group.clear .button.secondary.disabled:hover, .button-group.clear .button.secondary[disabled]:hover, .button-group.clear .button.secondary.disabled:focus, .button-group.clear .button.secondary[disabled]:focus { - color: #E47048; -} -.button-group.clear.secondary .button:hover, .button-group.clear.secondary .button:focus, .button-group.clear .button.secondary:hover, .button-group.clear .button.secondary:focus { - color: #833013; -} -.button-group.clear.success .button, .button-group.clear.success .button.disabled, .button-group.clear.success .button[disabled], .button-group.clear.success .button.disabled:hover, .button-group.clear.success .button[disabled]:hover, .button-group.clear.success .button.disabled:focus, .button-group.clear.success .button[disabled]:focus, .button-group.clear .button.success, .button-group.clear .button.success.disabled, .button-group.clear .button.success[disabled], .button-group.clear .button.success.disabled:hover, .button-group.clear .button.success[disabled]:hover, .button-group.clear .button.success.disabled:focus, .button-group.clear .button.success[disabled]:focus { - color: #3adb76; -} -.button-group.clear.success .button:hover, .button-group.clear.success .button:focus, .button-group.clear .button.success:hover, .button-group.clear .button.success:focus { - color: #157539; -} -.button-group.clear.warning .button, .button-group.clear.warning .button.disabled, .button-group.clear.warning .button[disabled], .button-group.clear.warning .button.disabled:hover, .button-group.clear.warning .button[disabled]:hover, .button-group.clear.warning .button.disabled:focus, .button-group.clear.warning .button[disabled]:focus, .button-group.clear .button.warning, .button-group.clear .button.warning.disabled, .button-group.clear .button.warning[disabled], .button-group.clear .button.warning.disabled:hover, .button-group.clear .button.warning[disabled]:hover, .button-group.clear .button.warning.disabled:focus, .button-group.clear .button.warning[disabled]:focus { - color: #ffae00; -} -.button-group.clear.warning .button:hover, .button-group.clear.warning .button:focus, .button-group.clear .button.warning:hover, .button-group.clear .button.warning:focus { - color: #805700; -} -.button-group.clear.alert .button, .button-group.clear.alert .button.disabled, .button-group.clear.alert .button[disabled], .button-group.clear.alert .button.disabled:hover, .button-group.clear.alert .button[disabled]:hover, .button-group.clear.alert .button.disabled:focus, .button-group.clear.alert .button[disabled]:focus, .button-group.clear .button.alert, .button-group.clear .button.alert.disabled, .button-group.clear .button.alert[disabled], .button-group.clear .button.alert.disabled:hover, .button-group.clear .button.alert[disabled]:hover, .button-group.clear .button.alert.disabled:focus, .button-group.clear .button.alert[disabled]:focus { - color: #cc4b37; -} -.button-group.clear.alert .button:hover, .button-group.clear.alert .button:focus, .button-group.clear .button.alert:hover, .button-group.clear .button.alert:focus { - color: #67251a; -} -.button-group.clear.black .button, .button-group.clear.black .button.disabled, .button-group.clear.black .button[disabled], .button-group.clear.black .button.disabled:hover, .button-group.clear.black .button[disabled]:hover, .button-group.clear.black .button.disabled:focus, .button-group.clear.black .button[disabled]:focus, .button-group.clear .button.black, .button-group.clear .button.black.disabled, .button-group.clear .button.black[disabled], .button-group.clear .button.black.disabled:hover, .button-group.clear .button.black[disabled]:hover, .button-group.clear .button.black.disabled:focus, .button-group.clear .button.black[disabled]:focus { - color: #0a0a0a; -} -.button-group.clear.black .button:hover, .button-group.clear.black .button:focus, .button-group.clear .button.black:hover, .button-group.clear .button.black:focus { - color: #050505; -} -.button-group.no-gaps .button { - margin-right: -0.0961538462rem; -} -.button-group.no-gaps .button + .button { - border-left-color: transparent; -} -.button-group.stacked .button, .button-group.stacked-for-small .button, .button-group.stacked-for-medium .button { - width: 100%; -} -.button-group.stacked .button:last-child, .button-group.stacked-for-small .button:last-child, .button-group.stacked-for-medium .button:last-child { - margin-bottom: 0; -} -.button-group.stacked.expanded, .button-group.stacked-for-small.expanded, .button-group.stacked-for-medium.expanded { - margin-right: -4px; -} -.button-group.stacked.expanded::before, .button-group.stacked.expanded::after, .button-group.stacked-for-small.expanded::before, .button-group.stacked-for-small.expanded::after, .button-group.stacked-for-medium.expanded::before, .button-group.stacked-for-medium.expanded::after { - display: none; -} -.button-group.stacked.expanded .button:first-child:last-child, .button-group.stacked-for-small.expanded .button:first-child:last-child, .button-group.stacked-for-medium.expanded .button:first-child:last-child { - width: calc(100% - 4px); -} -.button-group.stacked.expanded .button:first-child:nth-last-child(2), .button-group.stacked.expanded .button:first-child:nth-last-child(2):first-child:nth-last-child(2) ~ .button, .button-group.stacked-for-small.expanded .button:first-child:nth-last-child(2), .button-group.stacked-for-small.expanded .button:first-child:nth-last-child(2):first-child:nth-last-child(2) ~ .button, .button-group.stacked-for-medium.expanded .button:first-child:nth-last-child(2), .button-group.stacked-for-medium.expanded .button:first-child:nth-last-child(2):first-child:nth-last-child(2) ~ .button { - display: inline-block; - width: calc(50% - 4px); - margin-right: 4px; -} -.button-group.stacked.expanded .button:first-child:nth-last-child(2):last-child, .button-group.stacked.expanded .button:first-child:nth-last-child(2):first-child:nth-last-child(2) ~ .button:last-child, .button-group.stacked-for-small.expanded .button:first-child:nth-last-child(2):last-child, .button-group.stacked-for-small.expanded .button:first-child:nth-last-child(2):first-child:nth-last-child(2) ~ .button:last-child, .button-group.stacked-for-medium.expanded .button:first-child:nth-last-child(2):last-child, .button-group.stacked-for-medium.expanded .button:first-child:nth-last-child(2):first-child:nth-last-child(2) ~ .button:last-child { - margin-right: -24px; -} -.button-group.stacked.expanded .button:first-child:nth-last-child(3), .button-group.stacked.expanded .button:first-child:nth-last-child(3):first-child:nth-last-child(3) ~ .button, .button-group.stacked-for-small.expanded .button:first-child:nth-last-child(3), .button-group.stacked-for-small.expanded .button:first-child:nth-last-child(3):first-child:nth-last-child(3) ~ .button, .button-group.stacked-for-medium.expanded .button:first-child:nth-last-child(3), .button-group.stacked-for-medium.expanded .button:first-child:nth-last-child(3):first-child:nth-last-child(3) ~ .button { - display: inline-block; - width: calc(33.3333333333% - 4px); - margin-right: 4px; -} -.button-group.stacked.expanded .button:first-child:nth-last-child(3):last-child, .button-group.stacked.expanded .button:first-child:nth-last-child(3):first-child:nth-last-child(3) ~ .button:last-child, .button-group.stacked-for-small.expanded .button:first-child:nth-last-child(3):last-child, .button-group.stacked-for-small.expanded .button:first-child:nth-last-child(3):first-child:nth-last-child(3) ~ .button:last-child, .button-group.stacked-for-medium.expanded .button:first-child:nth-last-child(3):last-child, .button-group.stacked-for-medium.expanded .button:first-child:nth-last-child(3):first-child:nth-last-child(3) ~ .button:last-child { - margin-right: -24px; -} -.button-group.stacked.expanded .button:first-child:nth-last-child(4), .button-group.stacked.expanded .button:first-child:nth-last-child(4):first-child:nth-last-child(4) ~ .button, .button-group.stacked-for-small.expanded .button:first-child:nth-last-child(4), .button-group.stacked-for-small.expanded .button:first-child:nth-last-child(4):first-child:nth-last-child(4) ~ .button, .button-group.stacked-for-medium.expanded .button:first-child:nth-last-child(4), .button-group.stacked-for-medium.expanded .button:first-child:nth-last-child(4):first-child:nth-last-child(4) ~ .button { - display: inline-block; - width: calc(25% - 4px); - margin-right: 4px; -} -.button-group.stacked.expanded .button:first-child:nth-last-child(4):last-child, .button-group.stacked.expanded .button:first-child:nth-last-child(4):first-child:nth-last-child(4) ~ .button:last-child, .button-group.stacked-for-small.expanded .button:first-child:nth-last-child(4):last-child, .button-group.stacked-for-small.expanded .button:first-child:nth-last-child(4):first-child:nth-last-child(4) ~ .button:last-child, .button-group.stacked-for-medium.expanded .button:first-child:nth-last-child(4):last-child, .button-group.stacked-for-medium.expanded .button:first-child:nth-last-child(4):first-child:nth-last-child(4) ~ .button:last-child { - margin-right: -24px; -} -.button-group.stacked.expanded .button:first-child:nth-last-child(5), .button-group.stacked.expanded .button:first-child:nth-last-child(5):first-child:nth-last-child(5) ~ .button, .button-group.stacked-for-small.expanded .button:first-child:nth-last-child(5), .button-group.stacked-for-small.expanded .button:first-child:nth-last-child(5):first-child:nth-last-child(5) ~ .button, .button-group.stacked-for-medium.expanded .button:first-child:nth-last-child(5), .button-group.stacked-for-medium.expanded .button:first-child:nth-last-child(5):first-child:nth-last-child(5) ~ .button { - display: inline-block; - width: calc(20% - 4px); - margin-right: 4px; -} -.button-group.stacked.expanded .button:first-child:nth-last-child(5):last-child, .button-group.stacked.expanded .button:first-child:nth-last-child(5):first-child:nth-last-child(5) ~ .button:last-child, .button-group.stacked-for-small.expanded .button:first-child:nth-last-child(5):last-child, .button-group.stacked-for-small.expanded .button:first-child:nth-last-child(5):first-child:nth-last-child(5) ~ .button:last-child, .button-group.stacked-for-medium.expanded .button:first-child:nth-last-child(5):last-child, .button-group.stacked-for-medium.expanded .button:first-child:nth-last-child(5):first-child:nth-last-child(5) ~ .button:last-child { - margin-right: -24px; -} -.button-group.stacked.expanded .button:first-child:nth-last-child(6), .button-group.stacked.expanded .button:first-child:nth-last-child(6):first-child:nth-last-child(6) ~ .button, .button-group.stacked-for-small.expanded .button:first-child:nth-last-child(6), .button-group.stacked-for-small.expanded .button:first-child:nth-last-child(6):first-child:nth-last-child(6) ~ .button, .button-group.stacked-for-medium.expanded .button:first-child:nth-last-child(6), .button-group.stacked-for-medium.expanded .button:first-child:nth-last-child(6):first-child:nth-last-child(6) ~ .button { - display: inline-block; - width: calc(16.6666666667% - 4px); - margin-right: 4px; -} -.button-group.stacked.expanded .button:first-child:nth-last-child(6):last-child, .button-group.stacked.expanded .button:first-child:nth-last-child(6):first-child:nth-last-child(6) ~ .button:last-child, .button-group.stacked-for-small.expanded .button:first-child:nth-last-child(6):last-child, .button-group.stacked-for-small.expanded .button:first-child:nth-last-child(6):first-child:nth-last-child(6) ~ .button:last-child, .button-group.stacked-for-medium.expanded .button:first-child:nth-last-child(6):last-child, .button-group.stacked-for-medium.expanded .button:first-child:nth-last-child(6):first-child:nth-last-child(6) ~ .button:last-child { - margin-right: -24px; -} -@media print, screen and (min-width: 55.625em) { - .button-group.stacked-for-small .button { - width: auto; - margin-bottom: 0; - } -} -@media print, screen and (min-width: 64em) { - .button-group.stacked-for-medium .button { - width: auto; - margin-bottom: 0; - } -} -@media print, screen and (max-width: 32.74875em) { - .button-group.stacked-for-small.expanded { - display: block; - } - .button-group.stacked-for-small.expanded .button { - display: block; - margin-right: 0; - } -} -@media print, screen and (max-width: 63.99875em) { - .button-group.stacked-for-medium.expanded { - display: block; - } - .button-group.stacked-for-medium.expanded .button { - display: block; - margin-right: 0; - } -} - -.card { - margin-bottom: 1rem; - border: none; - border-radius: 0; - background: transparent; - box-shadow: none; - overflow: hidden; - color: #1E1E1E; -} -.card > :last-child { - margin-bottom: 0; -} - -.card-divider { - padding: 1.5rem; - background: #F7F8F9; -} -.card-divider > :last-child { - margin-bottom: 0; -} - -.card-section { - padding: 1.5rem; -} -.card-section > :last-child { - margin-bottom: 0; -} - -.card-image { - min-height: 1px; -} - -.callout { - position: relative; - margin: 0 0 1rem 0; - padding: 1rem; - border: 4px solid #E47048; - border-radius: 0; - background-color: rgba(0, 0, 0, 0); - color: #fefefe; -} -.callout > :first-child { - margin-top: 0; -} -.callout > :last-child { - margin-bottom: 0; -} -.callout.primary { - background-color: #140a44; - color: #fefefe; -} -.callout.secondary { - background-color: #e47048; - color: #1E1E1E; -} -.callout.success { - background-color: #3adb76; - color: #1E1E1E; -} -.callout.warning { - background-color: #ffae00; - color: #1E1E1E; -} -.callout.alert { - background-color: #cc4b37; - color: #fefefe; -} -.callout.black { - background-color: #0a0a0a; - color: #fefefe; -} -.callout.small { - padding-top: 0.5rem; - padding-right: 0.5rem; - padding-bottom: 0.5rem; - padding-left: 0.5rem; -} -.callout.large { - padding-top: 3rem; - padding-right: 3rem; - padding-bottom: 3rem; - padding-left: 3rem; -} - -.close-button { - position: absolute; - z-index: 10; - color: #CACACA; - cursor: pointer; -} -[data-whatinput=mouse] .close-button { - outline: 0; -} -.close-button:hover, .close-button:focus { - color: #1E1E1E; -} -.close-button.small { - right: 0.66rem; - top: 0.33em; - font-size: 1.5em; - line-height: 1; -} - -.close-button.medium, .close-button { - right: 1rem; - top: 0.5rem; - font-size: 2em; - line-height: 1; -} - -.is-drilldown { - position: relative; - overflow: hidden; -} -.is-drilldown li { - display: block; -} -.is-drilldown.animate-height { - transition: height 0.5s; -} - -.drilldown a { - padding: 0.7rem 1rem; - background: #4975C3; -} -.drilldown .is-drilldown-submenu { - position: absolute; - top: 0; - left: 100%; - z-index: -1; - width: 100%; - background: #fefefe; - transition: transform 0.15s linear; -} -.drilldown .is-drilldown-submenu.is-active { - z-index: 1; - display: block; - transform: translateX(-100%); -} -.drilldown .is-drilldown-submenu.is-closing { - transform: translateX(100%); -} -.drilldown .is-drilldown-submenu a { - padding: 0.7rem 1rem; -} -.drilldown .nested.is-drilldown-submenu { - margin-right: 0; - margin-left: 0; -} -.drilldown .drilldown-submenu-cover-previous { - min-height: 100%; -} -.drilldown .is-drilldown-submenu-parent > a { - position: relative; -} -.drilldown .is-drilldown-submenu-parent > a::after { - display: block; - width: 0; - height: 0; - border-style: solid; - border-width: 6px; - content: ""; - border-right-width: 0; - border-color: transparent transparent transparent #E9E9E9; - position: absolute; - top: 50%; - margin-top: -6px; - right: 1rem; -} -.drilldown.align-left .is-drilldown-submenu-parent > a::after { - display: block; - width: 0; - height: 0; - border-style: solid; - border-width: 6px; - content: ""; - border-right-width: 0; - border-color: transparent transparent transparent #A1CCE4; - right: 1rem; - left: auto; -} -.drilldown.align-right .is-drilldown-submenu-parent > a::after { - display: block; - width: 0; - height: 0; - border-style: solid; - border-width: 6px; - content: ""; - border-left-width: 0; - border-color: transparent #A1CCE4 transparent transparent; - right: auto; - left: 1rem; -} -.drilldown .js-drilldown-back > a::before { - display: block; - width: 0; - height: 0; - border-style: solid; - border-width: 6px; - content: ""; - border-left-width: 0; - border-color: transparent #E9E9E9 transparent transparent; - display: inline-block; - vertical-align: middle; - margin-right: 0.75rem; -} - -.dropdown-pane { - position: absolute; - z-index: 10; - display: none; - width: 300px; - padding: 1rem; - visibility: hidden; - border: 1px solid #E9E9E9; - border-radius: 0; - background-color: #FFFFFF; - font-size: 1rem; -} -.dropdown-pane.is-opening { - display: block; -} -.dropdown-pane.is-open { - display: block; - visibility: visible; -} - -.dropdown-pane.tiny { - width: 100px; -} - -.dropdown-pane.small { - width: 200px; -} - -.dropdown-pane.large { - width: 400px; -} - -.dropdown.menu > li.opens-left > .is-dropdown-submenu { - top: 100%; - right: 0; - left: auto; -} -.dropdown.menu > li.opens-right > .is-dropdown-submenu { - top: 100%; - right: auto; - left: 0; -} -.dropdown.menu > li.is-dropdown-submenu-parent > a { - position: relative; - padding-right: 1.5rem; -} -.dropdown.menu > li.is-dropdown-submenu-parent > a::after { - display: block; - width: 0; - height: 0; - border-style: solid; - border-width: 6px; - content: ""; - border-bottom-width: 0; - border-color: #A1CCE4 transparent transparent; - right: 5px; - left: auto; - margin-top: -3px; -} -[data-whatinput=mouse] .dropdown.menu a { - outline: 0; -} -.dropdown.menu > li > a { - background: transparent; - padding: 0.7rem 1rem; -} -.dropdown.menu > li.is-active > a { - background: transparent; - color: #1779ba; -} -.no-js .dropdown.menu ul { - display: none; -} -.dropdown.menu .nested.is-dropdown-submenu { - margin-right: 0; - margin-left: 0; -} -.dropdown.menu.vertical > li .is-dropdown-submenu { - top: 0; -} -.dropdown.menu.vertical > li.opens-left > .is-dropdown-submenu { - top: 0; - right: 100%; - left: auto; -} -.dropdown.menu.vertical > li.opens-right > .is-dropdown-submenu { - right: auto; - left: 100%; -} -.dropdown.menu.vertical > li > a::after { - right: 14px; -} -.dropdown.menu.vertical > li.opens-left > a::after { - display: block; - width: 0; - height: 0; - border-style: solid; - border-width: 6px; - content: ""; - border-left-width: 0; - border-color: transparent #A1CCE4 transparent transparent; - right: auto; - left: 5px; -} -.dropdown.menu.vertical > li.opens-right > a::after { - display: block; - width: 0; - height: 0; - border-style: solid; - border-width: 6px; - content: ""; - border-right-width: 0; - border-color: transparent transparent transparent #A1CCE4; -} -@media screen and (min-width: 32.75em) { - .dropdown.menu.smedium-horizontal > li.opens-left > .is-dropdown-submenu { - top: 100%; - right: 0; - left: auto; - } - .dropdown.menu.smedium-horizontal > li.opens-right > .is-dropdown-submenu { - top: 100%; - right: auto; - left: 0; - } - .dropdown.menu.smedium-horizontal > li.is-dropdown-submenu-parent > a { - position: relative; - padding-right: 1.5rem; - } - .dropdown.menu.smedium-horizontal > li.is-dropdown-submenu-parent > a::after { - display: block; - width: 0; - height: 0; - border-style: solid; - border-width: 6px; - content: ""; - border-bottom-width: 0; - border-color: #A1CCE4 transparent transparent; - right: 5px; - left: auto; - margin-top: -3px; - } - .dropdown.menu.smedium-vertical > li .is-dropdown-submenu { - top: 0; - } - .dropdown.menu.smedium-vertical > li.opens-left > .is-dropdown-submenu { - top: 0; - right: 100%; - left: auto; - } - .dropdown.menu.smedium-vertical > li.opens-right > .is-dropdown-submenu { - right: auto; - left: 100%; - } - .dropdown.menu.smedium-vertical > li > a::after { - right: 14px; - } - .dropdown.menu.smedium-vertical > li.opens-left > a::after { - display: block; - width: 0; - height: 0; - border-style: solid; - border-width: 6px; - content: ""; - border-left-width: 0; - border-color: transparent #A1CCE4 transparent transparent; - right: auto; - left: 5px; - } - .dropdown.menu.smedium-vertical > li.opens-right > a::after { - display: block; - width: 0; - height: 0; - border-style: solid; - border-width: 6px; - content: ""; - border-right-width: 0; - border-color: transparent transparent transparent #A1CCE4; - } -} -@media print, screen and (min-width: 55.625em) { - .dropdown.menu.medium-horizontal > li.opens-left > .is-dropdown-submenu { - top: 100%; - right: 0; - left: auto; - } - .dropdown.menu.medium-horizontal > li.opens-right > .is-dropdown-submenu { - top: 100%; - right: auto; - left: 0; - } - .dropdown.menu.medium-horizontal > li.is-dropdown-submenu-parent > a { - position: relative; - padding-right: 1.5rem; - } - .dropdown.menu.medium-horizontal > li.is-dropdown-submenu-parent > a::after { - display: block; - width: 0; - height: 0; - border-style: solid; - border-width: 6px; - content: ""; - border-bottom-width: 0; - border-color: #A1CCE4 transparent transparent; - right: 5px; - left: auto; - margin-top: -3px; - } - .dropdown.menu.medium-vertical > li .is-dropdown-submenu { - top: 0; - } - .dropdown.menu.medium-vertical > li.opens-left > .is-dropdown-submenu { - top: 0; - right: 100%; - left: auto; - } - .dropdown.menu.medium-vertical > li.opens-right > .is-dropdown-submenu { - right: auto; - left: 100%; - } - .dropdown.menu.medium-vertical > li > a::after { - right: 14px; - } - .dropdown.menu.medium-vertical > li.opens-left > a::after { - display: block; - width: 0; - height: 0; - border-style: solid; - border-width: 6px; - content: ""; - border-left-width: 0; - border-color: transparent #A1CCE4 transparent transparent; - right: auto; - left: 5px; - } - .dropdown.menu.medium-vertical > li.opens-right > a::after { - display: block; - width: 0; - height: 0; - border-style: solid; - border-width: 6px; - content: ""; - border-right-width: 0; - border-color: transparent transparent transparent #A1CCE4; - } -} -@media print, screen and (min-width: 64em) { - .dropdown.menu.large-horizontal > li.opens-left > .is-dropdown-submenu { - top: 100%; - right: 0; - left: auto; - } - .dropdown.menu.large-horizontal > li.opens-right > .is-dropdown-submenu { - top: 100%; - right: auto; - left: 0; - } - .dropdown.menu.large-horizontal > li.is-dropdown-submenu-parent > a { - position: relative; - padding-right: 1.5rem; - } - .dropdown.menu.large-horizontal > li.is-dropdown-submenu-parent > a::after { - display: block; - width: 0; - height: 0; - border-style: solid; - border-width: 6px; - content: ""; - border-bottom-width: 0; - border-color: #A1CCE4 transparent transparent; - right: 5px; - left: auto; - margin-top: -3px; - } - .dropdown.menu.large-vertical > li .is-dropdown-submenu { - top: 0; - } - .dropdown.menu.large-vertical > li.opens-left > .is-dropdown-submenu { - top: 0; - right: 100%; - left: auto; - } - .dropdown.menu.large-vertical > li.opens-right > .is-dropdown-submenu { - right: auto; - left: 100%; - } - .dropdown.menu.large-vertical > li > a::after { - right: 14px; - } - .dropdown.menu.large-vertical > li.opens-left > a::after { - display: block; - width: 0; - height: 0; - border-style: solid; - border-width: 6px; - content: ""; - border-left-width: 0; - border-color: transparent #A1CCE4 transparent transparent; - right: auto; - left: 5px; - } - .dropdown.menu.large-vertical > li.opens-right > a::after { - display: block; - width: 0; - height: 0; - border-style: solid; - border-width: 6px; - content: ""; - border-right-width: 0; - border-color: transparent transparent transparent #A1CCE4; - } -} -.dropdown.menu.align-right .is-dropdown-submenu.first-sub { - top: 100%; - right: 0; - left: auto; -} - -.is-dropdown-menu.vertical { - width: 100px; -} -.is-dropdown-menu.vertical.align-right { - float: right; -} - -.is-dropdown-submenu-parent { - position: relative; -} -.is-dropdown-submenu-parent a::after { - position: absolute; - top: 50%; - right: 5px; - left: auto; - margin-top: -6px; -} -.is-dropdown-submenu-parent.opens-inner > .is-dropdown-submenu { - top: 100%; - left: auto; -} -.is-dropdown-submenu-parent.opens-left > .is-dropdown-submenu { - right: 100%; - left: auto; -} -.is-dropdown-submenu-parent.opens-right > .is-dropdown-submenu { - right: auto; - left: 100%; -} - -.is-dropdown-submenu { - position: absolute; - top: 0; - left: 100%; - z-index: 1; - display: none; - min-width: 280px; - border: none; - background: #4975C3; -} -.dropdown .is-dropdown-submenu a { - padding: 0.7rem 1rem; -} -.is-dropdown-submenu .is-dropdown-submenu-parent > a::after { - right: 14px; -} -.is-dropdown-submenu .is-dropdown-submenu-parent.opens-left > a::after { - display: block; - width: 0; - height: 0; - border-style: solid; - border-width: 6px; - content: ""; - border-left-width: 0; - border-color: transparent #A1CCE4 transparent transparent; - right: auto; - left: 5px; -} -.is-dropdown-submenu .is-dropdown-submenu-parent.opens-right > a::after { - display: block; - width: 0; - height: 0; - border-style: solid; - border-width: 6px; - content: ""; - border-right-width: 0; - border-color: transparent transparent transparent #A1CCE4; -} -.is-dropdown-submenu .is-dropdown-submenu { - margin-top: -1px; -} -.is-dropdown-submenu > li { - width: 100%; -} -.is-dropdown-submenu.js-dropdown-active { - display: block; -} - -.label { - display: inline-block; - padding: 0.3333em 0.5em; - border-radius: 4px; - font-size: 0.9rem; - line-height: 1; - white-space: nowrap; - cursor: default; - background: #766591; - color: #FFFFFF; -} -.label.primary { - background: #140A44; - color: #FFFFFF; -} -.label.secondary { - background: #E47048; - color: #1E1E1E; -} -.label.success { - background: #3adb76; - color: #1E1E1E; -} -.label.warning { - background: #ffae00; - color: #1E1E1E; -} -.label.alert { - background: #cc4b37; - color: #FFFFFF; -} -.label.black { - background: #0a0a0a; - color: #FFFFFF; -} - -.media-object { - display: block; - margin-bottom: 1rem; -} -.media-object img { - max-width: none; -} - -.media-object-section { - display: table-cell; - vertical-align: top; -} -.media-object-section:first-child { - padding-right: 1rem; -} -.media-object-section:last-child:not(:nth-child(2)) { - padding-left: 1rem; -} -.media-object-section > :last-child { - margin-bottom: 0; -} -@media print, screen and (max-width: 32.74875em) { - .stack-for-small .media-object-section { - padding: 0; - padding-bottom: 1rem; - display: block; - } - .stack-for-small .media-object-section img { - width: 100%; - } -} -.media-object-section.middle { - vertical-align: middle; -} -.media-object-section.bottom { - vertical-align: bottom; -} - -.menu { - padding: 0; - margin: 0; - list-style: none; - position: relative; -} -[data-whatinput=mouse] .menu li { - outline: 0; -} -.menu a, -.menu .button { - line-height: 1; - text-decoration: none; - display: block; - padding: 0.7rem 1rem; -} -.menu input, -.menu select, -.menu a, -.menu button { - margin-bottom: 0; -} -.menu input { - display: inline-block; -} -.menu li, .menu.horizontal li { - display: inline-block; -} -.menu.vertical li { - display: block; -} -.menu.expanded { - display: table; - width: 100%; -} -.menu.expanded > li { - display: table-cell; - vertical-align: middle; -} -.menu.simple li + li { - margin-left: 1rem; -} -.menu.simple a { - padding: 0; -} -@media screen and (min-width: 32.75em) { - .menu.smedium-horizontal li { - display: inline-block; - } - .menu.smedium-vertical li { - display: block; - } - .menu.smedium-expanded { - display: table; - width: 100%; - } - .menu.smedium-expanded > li { - display: table-cell; - vertical-align: middle; - } - .menu.smedium-simple { - display: table; - width: 100%; - } - .menu.smedium-simple > li { - display: table-cell; - vertical-align: middle; - } -} -@media print, screen and (min-width: 55.625em) { - .menu.medium-horizontal li { - display: inline-block; - } - .menu.medium-vertical li { - display: block; - } - .menu.medium-expanded { - display: table; - width: 100%; - } - .menu.medium-expanded > li { - display: table-cell; - vertical-align: middle; - } - .menu.medium-simple { - display: table; - width: 100%; - } - .menu.medium-simple > li { - display: table-cell; - vertical-align: middle; - } -} -@media print, screen and (min-width: 64em) { - .menu.large-horizontal li { - display: inline-block; - } - .menu.large-vertical li { - display: block; - } - .menu.large-expanded { - display: table; - width: 100%; - } - .menu.large-expanded > li { - display: table-cell; - vertical-align: middle; - } - .menu.large-simple { - display: table; - width: 100%; - } - .menu.large-simple > li { - display: table-cell; - vertical-align: middle; - } -} -.menu.nested { - margin-right: 0; - margin-left: 1rem; -} -.menu.icons img, -.menu.icons i, -.menu.icons svg { - vertical-align: middle; -} -.menu.icons img + span, -.menu.icons i + span, -.menu.icons svg + span { - vertical-align: middle; -} -.menu.icon-top img, -.menu.icon-top i, -.menu.icon-top svg, .menu.icon-right img, -.menu.icon-right i, -.menu.icon-right svg, .menu.icon-bottom img, -.menu.icon-bottom i, -.menu.icon-bottom svg, .menu.icon-left img, -.menu.icon-left i, -.menu.icon-left svg { - vertical-align: middle; -} -.menu.icon-top img + span, -.menu.icon-top i + span, -.menu.icon-top svg + span, .menu.icon-right img + span, -.menu.icon-right i + span, -.menu.icon-right svg + span, .menu.icon-bottom img + span, -.menu.icon-bottom i + span, -.menu.icon-bottom svg + span, .menu.icon-left img + span, -.menu.icon-left i + span, -.menu.icon-left svg + span { - vertical-align: middle; -} -.menu.icon-left li a img, -.menu.icon-left li a i, -.menu.icon-left li a svg, .menu.nested.icon-left li a img, -.menu.nested.icon-left li a i, -.menu.nested.icon-left li a svg { - margin-right: 0.25rem; - display: inline-block; -} -.menu.icon-right li a img, -.menu.icon-right li a i, -.menu.icon-right li a svg, .menu.nested.icon-right li a img, -.menu.nested.icon-right li a i, -.menu.nested.icon-right li a svg { - margin-left: 0.25rem; - display: inline-block; -} -.menu.icon-top li a, .menu.nested.icon-top li a { - text-align: center; -} -.menu.icon-top li a img, -.menu.icon-top li a i, -.menu.icon-top li a svg, .menu.nested.icon-top li a img, -.menu.nested.icon-top li a i, -.menu.nested.icon-top li a svg { - display: block; - margin: 0 auto 0.25rem; -} -.menu.icon-bottom li a, .menu.nested.icon-bottom li a { - text-align: center; -} -.menu.icon-bottom li a img, -.menu.icon-bottom li a i, -.menu.icon-bottom li a svg, .menu.nested.icon-bottom li a img, -.menu.nested.icon-bottom li a i, -.menu.nested.icon-bottom li a svg { - display: block; - margin: 0.25rem auto 0; -} -.menu .is-active > a { - background: #140A44; - color: #0a0a0a; -} -.menu .active > a { - background: #140A44; - color: #0a0a0a; -} -.menu.align-left { - text-align: left; -} -.menu.align-right { - text-align: right; -} -.menu.align-right .submenu li { - text-align: left; -} -.menu.align-right.vertical .submenu li { - text-align: right; -} -.menu.align-right .nested { - margin-right: 1rem; - margin-left: 0; -} -.menu.align-center { - text-align: center; -} -.menu.align-center .submenu li { - text-align: left; -} -.menu .menu-text { - padding: 0.7rem 1rem; - font-weight: bold; - line-height: 1; - color: inherit; -} - -.menu-centered > .menu { - text-align: center; -} -.menu-centered > .menu .submenu li { - text-align: left; -} - -.no-js [data-responsive-menu] ul { - display: none; -} - -.is-off-canvas-open { - overflow: hidden; -} - -.js-off-canvas-overlay { - position: absolute; - top: 0; - left: 0; - z-index: 11; - width: 100%; - height: 100%; - transition: opacity 0.5s ease, visibility 0.5s ease; - background: rgba(255, 255, 255, 0.7); - opacity: 0; - visibility: hidden; - overflow: hidden; -} -.js-off-canvas-overlay.is-visible { - opacity: 1; - visibility: visible; -} -.js-off-canvas-overlay.is-closable { - cursor: pointer; -} -.js-off-canvas-overlay.is-overlay-absolute { - position: absolute; -} -.js-off-canvas-overlay.is-overlay-fixed { - position: fixed; -} - -.off-canvas-wrapper { - position: relative; - overflow: hidden; -} - -.off-canvas { - position: fixed; - z-index: 12; - transition: transform 0.5s ease; - backface-visibility: hidden; - background: #4975C3; -} -[data-whatinput=mouse] .off-canvas { - outline: 0; -} -.off-canvas.is-transition-push { - z-index: 12; -} -.off-canvas.is-closed { - visibility: hidden; -} -.off-canvas.is-transition-overlap { - z-index: 13; -} -.off-canvas.is-transition-overlap.is-open { - box-shadow: 0 0 10px rgba(30, 30, 30, 0.7); -} -.off-canvas.is-open { - transform: translate(0, 0); -} - -.off-canvas-absolute { - position: absolute; - z-index: 12; - transition: transform 0.5s ease; - backface-visibility: hidden; - background: #4975C3; -} -[data-whatinput=mouse] .off-canvas-absolute { - outline: 0; -} -.off-canvas-absolute.is-transition-push { - z-index: 12; -} -.off-canvas-absolute.is-closed { - visibility: hidden; -} -.off-canvas-absolute.is-transition-overlap { - z-index: 13; -} -.off-canvas-absolute.is-transition-overlap.is-open { - box-shadow: 0 0 10px rgba(30, 30, 30, 0.7); -} -.off-canvas-absolute.is-open { - transform: translate(0, 0); -} - -.position-left { - top: 0; - left: 0; - height: 100%; - overflow-y: auto; - -webkit-overflow-scrolling: touch; - width: 280px; - transform: translateX(-280px); -} -.off-canvas-content .off-canvas.position-left { - transform: translateX(-280px); -} -.off-canvas-content .off-canvas.position-left.is-transition-overlap.is-open { - transform: translate(0, 0); -} - -.off-canvas-content.is-open-left.has-transition-push { - transform: translateX(280px); -} - -.position-left.is-transition-push { - box-shadow: inset -13px 0 20px -13px rgba(10, 10, 10, 0.25); -} - -.position-right { - top: 0; - right: 0; - height: 100%; - overflow-y: auto; - -webkit-overflow-scrolling: touch; - width: 280px; - transform: translateX(280px); -} -.off-canvas-content .off-canvas.position-right { - transform: translateX(280px); -} -.off-canvas-content .off-canvas.position-right.is-transition-overlap.is-open { - transform: translate(0, 0); -} - -.off-canvas-content.is-open-right.has-transition-push { - transform: translateX(-280px); -} - -.position-right.is-transition-push { - box-shadow: inset 13px 0 20px -13px rgba(10, 10, 10, 0.25); -} - -.position-top { - top: 0; - left: 0; - width: 100%; - overflow-x: auto; - -webkit-overflow-scrolling: touch; - height: 280px; - transform: translateY(-280px); -} -.off-canvas-content .off-canvas.position-top { - transform: translateY(-280px); -} -.off-canvas-content .off-canvas.position-top.is-transition-overlap.is-open { - transform: translate(0, 0); -} - -.off-canvas-content.is-open-top.has-transition-push { - transform: translateY(280px); -} - -.position-top.is-transition-push { - box-shadow: inset 0 -13px 20px -13px rgba(10, 10, 10, 0.25); -} - -.position-bottom { - bottom: 0; - left: 0; - width: 100%; - overflow-x: auto; - -webkit-overflow-scrolling: touch; - height: 280px; - transform: translateY(280px); -} -.off-canvas-content .off-canvas.position-bottom { - transform: translateY(280px); -} -.off-canvas-content .off-canvas.position-bottom.is-transition-overlap.is-open { - transform: translate(0, 0); -} - -.off-canvas-content.is-open-bottom.has-transition-push { - transform: translateY(-280px); -} - -.position-bottom.is-transition-push { - box-shadow: inset 0 13px 20px -13px rgba(10, 10, 10, 0.25); -} - -.off-canvas-content { - transform: none; - backface-visibility: hidden; -} -.off-canvas-content.has-transition-overlap, .off-canvas-content.has-transition-push { - transition: transform 0.5s ease; -} -.off-canvas-content.has-transition-push { - transform: translate(0, 0); -} -.off-canvas-content .off-canvas.is-open { - transform: translate(0, 0); -} - -@media screen and (min-width: 32.75em) { - .position-left.reveal-for-smedium { - transform: none; - z-index: 12; - transition: none; - visibility: visible; - } - .position-left.reveal-for-smedium .close-button { - display: none; - } - .off-canvas-content .position-left.reveal-for-smedium { - transform: none; - } - .off-canvas-content.has-reveal-left { - margin-left: 280px; - } - .position-left.reveal-for-smedium ~ .off-canvas-content { - margin-left: 280px; - } - .position-right.reveal-for-smedium { - transform: none; - z-index: 12; - transition: none; - visibility: visible; - } - .position-right.reveal-for-smedium .close-button { - display: none; - } - .off-canvas-content .position-right.reveal-for-smedium { - transform: none; - } - .off-canvas-content.has-reveal-right { - margin-right: 280px; - } - .position-right.reveal-for-smedium ~ .off-canvas-content { - margin-right: 280px; - } - .position-top.reveal-for-smedium { - transform: none; - z-index: 12; - transition: none; - visibility: visible; - } - .position-top.reveal-for-smedium .close-button { - display: none; - } - .off-canvas-content .position-top.reveal-for-smedium { - transform: none; - } - .off-canvas-content.has-reveal-top { - margin-top: 280px; - } - .position-top.reveal-for-smedium ~ .off-canvas-content { - margin-top: 280px; - } - .position-bottom.reveal-for-smedium { - transform: none; - z-index: 12; - transition: none; - visibility: visible; - } - .position-bottom.reveal-for-smedium .close-button { - display: none; - } - .off-canvas-content .position-bottom.reveal-for-smedium { - transform: none; - } - .off-canvas-content.has-reveal-bottom { - margin-bottom: 280px; - } - .position-bottom.reveal-for-smedium ~ .off-canvas-content { - margin-bottom: 280px; - } -} -@media print, screen and (min-width: 55.625em) { - .position-left.reveal-for-medium { - transform: none; - z-index: 12; - transition: none; - visibility: visible; - } - .position-left.reveal-for-medium .close-button { - display: none; - } - .off-canvas-content .position-left.reveal-for-medium { - transform: none; - } - .off-canvas-content.has-reveal-left { - margin-left: 280px; - } - .position-left.reveal-for-medium ~ .off-canvas-content { - margin-left: 280px; - } - .position-right.reveal-for-medium { - transform: none; - z-index: 12; - transition: none; - visibility: visible; - } - .position-right.reveal-for-medium .close-button { - display: none; - } - .off-canvas-content .position-right.reveal-for-medium { - transform: none; - } - .off-canvas-content.has-reveal-right { - margin-right: 280px; - } - .position-right.reveal-for-medium ~ .off-canvas-content { - margin-right: 280px; - } - .position-top.reveal-for-medium { - transform: none; - z-index: 12; - transition: none; - visibility: visible; - } - .position-top.reveal-for-medium .close-button { - display: none; - } - .off-canvas-content .position-top.reveal-for-medium { - transform: none; - } - .off-canvas-content.has-reveal-top { - margin-top: 280px; - } - .position-top.reveal-for-medium ~ .off-canvas-content { - margin-top: 280px; - } - .position-bottom.reveal-for-medium { - transform: none; - z-index: 12; - transition: none; - visibility: visible; - } - .position-bottom.reveal-for-medium .close-button { - display: none; - } - .off-canvas-content .position-bottom.reveal-for-medium { - transform: none; - } - .off-canvas-content.has-reveal-bottom { - margin-bottom: 280px; - } - .position-bottom.reveal-for-medium ~ .off-canvas-content { - margin-bottom: 280px; - } -} -@media print, screen and (min-width: 64em) { - .position-left.reveal-for-large { - transform: none; - z-index: 12; - transition: none; - visibility: visible; - } - .position-left.reveal-for-large .close-button { - display: none; - } - .off-canvas-content .position-left.reveal-for-large { - transform: none; - } - .off-canvas-content.has-reveal-left { - margin-left: 280px; - } - .position-left.reveal-for-large ~ .off-canvas-content { - margin-left: 280px; - } - .position-right.reveal-for-large { - transform: none; - z-index: 12; - transition: none; - visibility: visible; - } - .position-right.reveal-for-large .close-button { - display: none; - } - .off-canvas-content .position-right.reveal-for-large { - transform: none; - } - .off-canvas-content.has-reveal-right { - margin-right: 280px; - } - .position-right.reveal-for-large ~ .off-canvas-content { - margin-right: 280px; - } - .position-top.reveal-for-large { - transform: none; - z-index: 12; - transition: none; - visibility: visible; - } - .position-top.reveal-for-large .close-button { - display: none; - } - .off-canvas-content .position-top.reveal-for-large { - transform: none; - } - .off-canvas-content.has-reveal-top { - margin-top: 280px; - } - .position-top.reveal-for-large ~ .off-canvas-content { - margin-top: 280px; - } - .position-bottom.reveal-for-large { - transform: none; - z-index: 12; - transition: none; - visibility: visible; - } - .position-bottom.reveal-for-large .close-button { - display: none; - } - .off-canvas-content .position-bottom.reveal-for-large { - transform: none; - } - .off-canvas-content.has-reveal-bottom { - margin-bottom: 280px; - } - .position-bottom.reveal-for-large ~ .off-canvas-content { - margin-bottom: 280px; - } -} -@media screen and (min-width: 32.75em) { - .off-canvas.in-canvas-for-smedium { - visibility: visible; - height: auto; - position: static; - background: none; - width: auto; - overflow: visible; - transition: none; - } - .off-canvas.in-canvas-for-smedium.position-left, .off-canvas.in-canvas-for-smedium.position-right, .off-canvas.in-canvas-for-smedium.position-top, .off-canvas.in-canvas-for-smedium.position-bottom { - box-shadow: none; - transform: none; - } - .off-canvas.in-canvas-for-smedium .close-button { - display: none; - } -} -@media print, screen and (min-width: 55.625em) { - .off-canvas.in-canvas-for-medium { - visibility: visible; - height: auto; - position: static; - background: none; - width: auto; - overflow: visible; - transition: none; - } - .off-canvas.in-canvas-for-medium.position-left, .off-canvas.in-canvas-for-medium.position-right, .off-canvas.in-canvas-for-medium.position-top, .off-canvas.in-canvas-for-medium.position-bottom { - box-shadow: none; - transform: none; - } - .off-canvas.in-canvas-for-medium .close-button { - display: none; - } -} -@media print, screen and (min-width: 64em) { - .off-canvas.in-canvas-for-large { - visibility: visible; - height: auto; - position: static; - background: none; - width: auto; - overflow: visible; - transition: none; - } - .off-canvas.in-canvas-for-large.position-left, .off-canvas.in-canvas-for-large.position-right, .off-canvas.in-canvas-for-large.position-top, .off-canvas.in-canvas-for-large.position-bottom { - box-shadow: none; - transform: none; - } - .off-canvas.in-canvas-for-large .close-button { - display: none; - } -} -.orbit { - position: relative; -} - -.orbit-container { - position: relative; - height: 0; - margin: 0; - list-style: none; - overflow: hidden; -} - -.orbit-slide { - width: 100%; - position: absolute; -} -.orbit-slide.no-motionui.is-active { - top: 0; - left: 0; -} - -.orbit-figure { - margin: 0; -} - -.orbit-image { - width: 100%; - max-width: 100%; - margin: 0; -} - -.orbit-caption { - position: absolute; - bottom: 0; - width: 100%; - margin-bottom: 0; - padding: 1rem; - background-color: rgba(30, 30, 30, 0.5); - color: #FFFFFF; -} - -.orbit-next, .orbit-previous { - position: absolute; - top: 50%; - transform: translateY(-50%); - z-index: 10; - padding: 1rem; - color: #FFFFFF; -} -[data-whatinput=mouse] .orbit-next, [data-whatinput=mouse] .orbit-previous { - outline: 0; -} -.orbit-next:hover, .orbit-previous:hover, .orbit-next:active, .orbit-previous:active, .orbit-next:focus, .orbit-previous:focus { - background-color: rgba(30, 30, 30, 0.5); -} - -.orbit-previous { - left: 0; -} - -.orbit-next { - left: auto; - right: 0; -} - -.orbit-bullets { - position: relative; - margin-top: 0.8rem; - margin-bottom: 0.8rem; - text-align: center; -} -[data-whatinput=mouse] .orbit-bullets { - outline: 0; -} -.orbit-bullets button { - width: 1.2rem; - height: 1.2rem; - margin: 0.1rem; - border-radius: 50%; - background-color: #E9E9E9; -} -.orbit-bullets button:hover { - background-color: #CACACA; -} -.orbit-bullets button.is-active { - background-color: #CACACA; -} - -.pagination { - margin-left: 0; - margin-bottom: 1rem; -} -.pagination::before, .pagination::after { - display: table; - content: " "; -} -.pagination::after { - clear: both; -} -.pagination li { - margin-right: 0.0480769231rem; - border-radius: 0; - font-size: 0.6730769231rem; - display: none; -} -.pagination li:last-child, .pagination li:first-child { - display: inline-block; -} -@media print, screen and (min-width: 55.625em) { - .pagination li { - display: inline-block; - } -} -.pagination a, -.pagination button { - display: block; - padding: 0.1442307692rem 0.4807692308rem; - border-radius: 0; - color: #1E1E1E; -} -.pagination a:hover, -.pagination button:hover { - background: #F7F8F9; -} -.pagination .current { - padding: 0.1442307692rem 0.4807692308rem; - background: #E47048; - color: #FFFFFF; - cursor: default; -} -.pagination .disabled { - padding: 0.1442307692rem 0.4807692308rem; - color: #E9E9E9; - cursor: not-allowed; -} -.pagination .disabled:hover { - background: transparent; -} -.pagination .ellipsis::after { - padding: 0.1442307692rem 0.4807692308rem; - content: "…"; - color: #1E1E1E; -} - -.pagination-previous a::before, -.pagination-previous.disabled::before { - display: inline-block; - margin-right: 0.5rem; - content: "«"; -} - -.pagination-next a::after, -.pagination-next.disabled::after { - display: inline-block; - margin-left: 0.5rem; - content: "»"; -} - -.progress { - height: 1rem; - margin-bottom: 1rem; - border-radius: 0; - background-color: #E9E9E9; -} -.progress.primary .progress-meter { - background-color: #140A44; -} -.progress.secondary .progress-meter { - background-color: #E47048; -} -.progress.success .progress-meter { - background-color: #3adb76; -} -.progress.warning .progress-meter { - background-color: #ffae00; -} -.progress.alert .progress-meter { - background-color: #cc4b37; -} -.progress.black .progress-meter { - background-color: #0a0a0a; -} - -.progress-meter { - position: relative; - display: block; - width: 0%; - height: 100%; - background-color: #E47048; -} - -.progress-meter-text { - position: absolute; - top: 50%; - left: 50%; - transform: translate(-50%, -50%); - margin: 0; - font-size: 0.75rem; - font-weight: bold; - color: #FFFFFF; - white-space: nowrap; -} - -.slider { - position: relative; - height: 0.5rem; - margin-top: 1.25rem; - margin-bottom: 2.25rem; - background-color: #F7F8F9; - cursor: pointer; - user-select: none; - touch-action: none; -} - -.slider-fill { - position: absolute; - top: 0; - left: 0; - display: inline-block; - max-width: 100%; - height: 0.5rem; - background-color: #E9E9E9; - transition: all 0.2s ease-in-out; -} -.slider-fill.is-dragging { - transition: all 0s linear; -} - -.slider-handle { - position: absolute; - top: 50%; - transform: translateY(-50%); - left: 0; - z-index: 1; - cursor: grab; - display: inline-block; - width: 1.4rem; - height: 1.4rem; - border-radius: 0; - background-color: #140A44; - transition: all 0.2s ease-in-out; - touch-action: manipulation; -} -[data-whatinput=mouse] .slider-handle { - outline: 0; -} -.slider-handle:hover { - background-color: #11093a; -} -.slider-handle.is-dragging { - transition: all 0s linear; - cursor: grabbing; -} - -.slider.disabled, -.slider[disabled] { - opacity: 0.25; - cursor: not-allowed; -} - -.slider.vertical { - display: inline-block; - width: 0.5rem; - height: 12.5rem; - margin: 0 1.25rem; - transform: scale(1, -1); -} -.slider.vertical .slider-fill { - top: 0; - width: 0.5rem; - max-height: 100%; -} -.slider.vertical .slider-handle { - position: absolute; - top: 0; - left: 50%; - width: 1.4rem; - height: 1.4rem; - transform: translateX(-50%); -} - -.sticky-container { - position: relative; -} - -.sticky { - position: relative; - z-index: 0; - transform: translate3d(0, 0, 0); -} - -.sticky.is-stuck { - position: fixed; - z-index: 5; - width: 100%; -} -.sticky.is-stuck.is-at-top { - top: 0; -} -.sticky.is-stuck.is-at-bottom { - bottom: 0; -} - -.sticky.is-anchored { - position: relative; - right: auto; - left: auto; -} -.sticky.is-anchored.is-at-bottom { - bottom: 0; -} - -html.is-reveal-open { - position: fixed; - width: 100%; - overflow-y: hidden; -} -html.is-reveal-open.zf-has-scroll { - overflow-y: scroll; - -webkit-overflow-scrolling: touch; -} -html.is-reveal-open body { - overflow-y: hidden; -} - -.reveal-overlay { - position: fixed; - top: 0; - right: 0; - bottom: 0; - left: 0; - z-index: 1005; - display: none; - background-color: rgba(30, 30, 30, 0.45); - overflow-y: auto; - -webkit-overflow-scrolling: touch; -} - -.reveal { - z-index: 1006; - backface-visibility: hidden; - display: none; - padding: 1rem; - border: 1px solid #E9E9E9; - border-radius: 0; - background-color: #FFFFFF; - position: relative; - top: 100px; - margin-right: auto; - margin-left: auto; - overflow-y: auto; - -webkit-overflow-scrolling: touch; -} -[data-whatinput=mouse] .reveal { - outline: 0; -} -@media print, screen and (min-width: 55.625em) { - .reveal { - min-height: 0; - } -} -.reveal .column, .reveal .columns { - min-width: 0; -} -.reveal > :last-child { - margin-bottom: 0; -} -@media print, screen and (min-width: 55.625em) { - .reveal { - width: 600px; - max-width: 57.6923076923rem; - } -} -.reveal.collapse { - padding: 0; -} -@media print, screen and (min-width: 55.625em) { - .reveal.tiny { - width: 30%; - max-width: 57.6923076923rem; - } -} -@media print, screen and (min-width: 55.625em) { - .reveal.small { - width: 50%; - max-width: 57.6923076923rem; - } -} -@media print, screen and (min-width: 55.625em) { - .reveal.large { - width: 90%; - max-width: 57.6923076923rem; - } -} -.reveal.full { - top: 0; - right: 0; - bottom: 0; - left: 0; - width: 100%; - max-width: none; - height: 100%; - min-height: 100%; - margin-left: 0; - border: 0; - border-radius: 0; -} -@media print, screen and (max-width: 32.74875em) { - .reveal { - top: 0; - right: 0; - bottom: 0; - left: 0; - width: 100%; - max-width: none; - height: 100%; - min-height: 100%; - margin-left: 0; - border: 0; - border-radius: 0; - } -} -.reveal.without-overlay { - position: fixed; -} - -.switch { - position: relative; - margin-bottom: 1rem; - outline: 0; - font-size: 0.6730769231rem; - font-weight: bold; - color: #FFFFFF; - user-select: none; - height: 2rem; -} - -.switch-input { - position: absolute; - margin-bottom: 0; - opacity: 0; -} - -.switch-paddle { - position: relative; - display: block; - width: 4rem; - height: 2rem; - border-radius: 0; - background: #E9E9E9; - transition: all 0.25s ease-out; - font-weight: inherit; - color: inherit; - cursor: pointer; -} -input + .switch-paddle { - margin: 0; -} -.switch-paddle::after { - position: absolute; - top: 0.25rem; - left: 0.25rem; - display: block; - width: 1.5rem; - height: 1.5rem; - transform: translate3d(0, 0, 0); - border-radius: 0; - background: #FFFFFF; - transition: all 0.25s ease-out; - content: ""; -} -input:checked ~ .switch-paddle { - background: #E47048; -} -input:checked ~ .switch-paddle::after { - left: 2.25rem; -} -input:disabled ~ .switch-paddle { - cursor: not-allowed; - opacity: 0.5; -} -[data-whatinput=mouse] input:focus ~ .switch-paddle { - outline: 0; -} - -.switch-inactive, .switch-active { - position: absolute; - top: 50%; - transform: translateY(-50%); -} - -.switch-active { - left: 8%; - display: none; -} -input:checked + label > .switch-active { - display: block; -} - -.switch-inactive { - right: 15%; -} -input:checked + label > .switch-inactive { - display: none; -} - -.switch.tiny { - height: 1.5rem; -} -.switch.tiny .switch-paddle { - width: 3rem; - height: 1.5rem; - font-size: 0.4807692308rem; -} -.switch.tiny .switch-paddle::after { - top: 0.25rem; - left: 0.25rem; - width: 1rem; - height: 1rem; -} -.switch.tiny input:checked ~ .switch-paddle::after { - left: 1.75rem; -} - -.switch.small { - height: 1.75rem; -} -.switch.small .switch-paddle { - width: 3.5rem; - height: 1.75rem; - font-size: 0.5769230769rem; -} -.switch.small .switch-paddle::after { - top: 0.25rem; - left: 0.25rem; - width: 1.25rem; - height: 1.25rem; -} -.switch.small input:checked ~ .switch-paddle::after { - left: 2rem; -} - -.switch.large { - height: 2.5rem; -} -.switch.large .switch-paddle { - width: 5rem; - height: 2.5rem; - font-size: 0.7692307692rem; -} -.switch.large .switch-paddle::after { - top: 0.25rem; - left: 0.25rem; - width: 2rem; - height: 2rem; -} -.switch.large input:checked ~ .switch-paddle::after { - left: 2.75rem; -} - -table { - border-collapse: collapse; - width: 100%; - margin-bottom: 1rem; - border-radius: 0; -} -thead, -tbody, -tfoot { - border: 1px solid #dbdfe4; - background-color: #e8ebee; -} - -caption { - padding: 0.3846153846rem 0.4807692308rem 0.4807692308rem; - font-weight: 700; -} - -thead { - background: #e2e5e9; - color: #1E1E1E; -} - -tfoot { - background: #dbdfe4; - color: #1E1E1E; -} - -thead tr, -tfoot tr { - background: transparent; -} -thead th, -thead td, -tfoot th, -tfoot td { - padding: 0.3846153846rem 0.4807692308rem 0.4807692308rem; - font-weight: 700; - text-align: left; -} - -tbody th, -tbody td { - padding: 0.3846153846rem 0.4807692308rem 0.4807692308rem; -} - -tbody tr:nth-child(even) { - border-bottom: 0; - background-color: #dbdfe4; -} - -table.unstriped tbody { - background-color: #e8ebee; -} -table.unstriped tbody tr { - border-bottom: 1px solid #dbdfe4; - background-color: #e8ebee; -} - -@media print, screen and (max-width: 63.99875em) { - table.stack thead { - display: none; - } - table.stack tfoot { - display: none; - } - table.stack tr, - table.stack th, - table.stack td { - display: block; - } - table.stack td { - border-top: 0; - } -} - -table.scroll { - display: block; - width: 100%; - overflow-x: auto; -} - -table.hover thead tr:hover { - background-color: #dce0e5; -} -table.hover tfoot tr:hover { - background-color: #d5dae0; -} -table.hover tbody tr:hover { - background-color: #e3e6ea; -} -table.hover:not(.unstriped) tr:nth-of-type(even):hover { - background-color: #d4d9df; -} - -.table-scroll { - overflow-x: auto; -} - -.tabs { - margin: 0; - border: 1px solid transparent; - background: rgba(255, 255, 255, 0.3); - list-style-type: none; -} -.tabs::before, .tabs::after { - display: table; - content: " "; -} -.tabs::after { - clear: both; -} - -.tabs.vertical > li { - display: block; - float: none; - width: auto; -} - -.tabs.simple > li > a { - padding: 0; -} -.tabs.simple > li > a:hover { - background: transparent; -} - -.tabs.primary { - background: #140A44; -} -.tabs.primary > li > a { - color: #FFFFFF; -} -.tabs.primary > li > a:hover, .tabs.primary > li > a:focus { - background: #1a0d57; -} - -.tabs-title { - float: left; -} -.tabs-title > a { - display: block; - padding: 0.8rem 1rem; - font-size: 0.9615384615rem; - line-height: 1; - color: #E47048; -} -[data-whatinput=mouse] .tabs-title > a { - outline: 0; -} -.tabs-title > a:hover { - background: #FFFFFF; - color: #df5323; -} -.tabs-title > a:focus, .tabs-title > a[aria-selected=true] { - background: #E47048; - color: #FFFFFF; -} - -.tabs-content { - border: 1px solid transparent; - border-top: 0; - background: #FFFFFF; - color: #1E1E1E; - transition: all 0.5s ease; -} - -.tabs-content.vertical { - border: 1px solid transparent; - border-left: 0; -} - -.tabs-panel { - display: none; - padding: 0; -} -.tabs-panel.is-active { - display: block; -} - -.thumbnail { - display: inline-block; - max-width: 100%; - margin-bottom: 1rem; - border: solid 4px #FFFFFF; - border-radius: 0; - box-shadow: 0 0 0 2px #E47048; - line-height: 0; -} - -a.thumbnail { - transition: none; -} -a.thumbnail:hover, a.thumbnail:focus { - box-shadow: none; -} -a.thumbnail image { - box-shadow: none; -} - -.title-bar { - padding: 0; - background: #FFFFFF; - color: #140A44; -} -.title-bar::before, .title-bar::after { - display: table; - content: " "; -} -.title-bar::after { - clear: both; -} -.title-bar .menu-icon { - margin-left: 0.25rem; - margin-right: 0.25rem; -} - -.title-bar-left { - float: left; -} - -.title-bar-right { - float: right; - text-align: right; -} - -.title-bar-title { - display: inline-block; - vertical-align: middle; - font-weight: 400; -} - -.has-tip { - position: relative; - display: inline-block; - border-bottom: dotted 1px #CACACA; - font-weight: 700; - cursor: help; -} - -.tooltip { - position: absolute; - top: calc(100% + 0.6495rem); - z-index: 1200; - max-width: 10rem; - padding: 0.75rem; - border-radius: 0; - background-color: #1E1E1E; - font-size: 80%; - color: #FFFFFF; -} -.tooltip::before { - position: absolute; -} -.tooltip.bottom::before { - display: block; - width: 0; - height: 0; - border-style: solid; - border-width: 0.75rem; - content: ""; - border-top-width: 0; - border-color: transparent transparent #1E1E1E; - bottom: 100%; -} -.tooltip.bottom.align-center::before { - left: 50%; - transform: translateX(-50%); -} -.tooltip.top::before { - display: block; - width: 0; - height: 0; - border-style: solid; - border-width: 0.75rem; - content: ""; - border-bottom-width: 0; - border-color: #1E1E1E transparent transparent; - top: 100%; - bottom: auto; -} -.tooltip.top.align-center::before { - left: 50%; - transform: translateX(-50%); -} -.tooltip.left::before { - display: block; - width: 0; - height: 0; - border-style: solid; - border-width: 0.75rem; - content: ""; - border-right-width: 0; - border-color: transparent transparent transparent #1E1E1E; - left: 100%; -} -.tooltip.left.align-center::before { - bottom: auto; - top: 50%; - transform: translateY(-50%); -} -.tooltip.right::before { - display: block; - width: 0; - height: 0; - border-style: solid; - border-width: 0.75rem; - content: ""; - border-left-width: 0; - border-color: transparent #1E1E1E transparent transparent; - right: 100%; - left: auto; -} -.tooltip.right.align-center::before { - bottom: auto; - top: 50%; - transform: translateY(-50%); -} -.tooltip.align-top::before { - bottom: auto; - top: 10%; -} -.tooltip.align-bottom::before { - bottom: 10%; - top: auto; -} -.tooltip.align-left::before { - left: 10%; - right: auto; -} -.tooltip.align-right::before { - left: auto; - right: 10%; -} - -.top-bar { - padding: 0.5rem; -} -.top-bar::before, .top-bar::after { - display: table; - content: " "; -} -.top-bar::after { - clear: both; -} -.top-bar, -.top-bar ul { - background-color: #F7F8F9; -} -.top-bar input { - max-width: 200px; - margin-right: 1rem; -} -.top-bar .input-group-field { - width: 100%; - margin-right: 0; -} -.top-bar input.button { - width: auto; -} -.top-bar .top-bar-left, -.top-bar .top-bar-right { - width: 100%; -} -@media print, screen and (min-width: 55.625em) { - .top-bar .top-bar-left, - .top-bar .top-bar-right { - width: auto; - } -} -@media screen and (max-width: 55.62375em) { - .top-bar.stacked-for-smedium .top-bar-left, - .top-bar.stacked-for-smedium .top-bar-right { - width: 100%; - } -} -@media print, screen and (max-width: 63.99875em) { - .top-bar.stacked-for-medium .top-bar-left, - .top-bar.stacked-for-medium .top-bar-right { - width: 100%; - } -} -@media print, screen and (max-width: 74.99875em) { - .top-bar.stacked-for-large .top-bar-left, - .top-bar.stacked-for-large .top-bar-right { - width: 100%; - } -} - -.top-bar-title { - display: inline-block; - float: left; - padding: 0.5rem 1rem 0.5rem 0; -} -.top-bar-title .menu-icon { - bottom: 2px; -} - -.top-bar-left { - float: left; -} - -.top-bar-right { - float: right; -} - -.slide-in-down.mui-enter { - transition-duration: 500ms; - transition-timing-function: linear; - transform: translateY(-100%); - transition-property: transform, opacity; - backface-visibility: hidden; -} - -.slide-in-down.mui-enter.mui-enter-active { - transform: translateY(0); -} - -.slide-in-left.mui-enter { - transition-duration: 500ms; - transition-timing-function: linear; - transform: translateX(-100%); - transition-property: transform, opacity; - backface-visibility: hidden; -} - -.slide-in-left.mui-enter.mui-enter-active { - transform: translateX(0); -} - -.slide-in-up.mui-enter { - transition-duration: 500ms; - transition-timing-function: linear; - transform: translateY(100%); - transition-property: transform, opacity; - backface-visibility: hidden; -} - -.slide-in-up.mui-enter.mui-enter-active { - transform: translateY(0); -} - -.slide-in-right.mui-enter { - transition-duration: 500ms; - transition-timing-function: linear; - transform: translateX(100%); - transition-property: transform, opacity; - backface-visibility: hidden; -} - -.slide-in-right.mui-enter.mui-enter-active { - transform: translateX(0); -} - -.slide-out-down.mui-leave { - transition-duration: 500ms; - transition-timing-function: linear; - transform: translateY(0); - transition-property: transform, opacity; - backface-visibility: hidden; -} - -.slide-out-down.mui-leave.mui-leave-active { - transform: translateY(100%); -} - -.slide-out-right.mui-leave { - transition-duration: 500ms; - transition-timing-function: linear; - transform: translateX(0); - transition-property: transform, opacity; - backface-visibility: hidden; -} - -.slide-out-right.mui-leave.mui-leave-active { - transform: translateX(100%); -} - -.slide-out-up.mui-leave { - transition-duration: 500ms; - transition-timing-function: linear; - transform: translateY(0); - transition-property: transform, opacity; - backface-visibility: hidden; -} - -.slide-out-up.mui-leave.mui-leave-active { - transform: translateY(-100%); -} - -.slide-out-left.mui-leave { - transition-duration: 500ms; - transition-timing-function: linear; - transform: translateX(0); - transition-property: transform, opacity; - backface-visibility: hidden; -} - -.slide-out-left.mui-leave.mui-leave-active { - transform: translateX(-100%); -} - -.fade-in.mui-enter { - transition-duration: 500ms; - transition-timing-function: linear; - opacity: 0; - transition-property: opacity; -} - -.fade-in.mui-enter.mui-enter-active { - opacity: 1; -} - -.fade-out.mui-leave { - transition-duration: 500ms; - transition-timing-function: linear; - opacity: 1; - transition-property: opacity; -} - -.fade-out.mui-leave.mui-leave-active { - opacity: 0; -} - -.hinge-in-from-top.mui-enter { - transition-duration: 500ms; - transition-timing-function: linear; - transform: perspective(2000px) rotateX(-90deg); - transform-origin: top; - transition-property: transform, opacity; - opacity: 0; -} - -.hinge-in-from-top.mui-enter.mui-enter-active { - transform: perspective(2000px) rotate(0deg); - opacity: 1; -} - -.hinge-in-from-right.mui-enter { - transition-duration: 500ms; - transition-timing-function: linear; - transform: perspective(2000px) rotateY(-90deg); - transform-origin: right; - transition-property: transform, opacity; - opacity: 0; -} - -.hinge-in-from-right.mui-enter.mui-enter-active { - transform: perspective(2000px) rotate(0deg); - opacity: 1; -} - -.hinge-in-from-bottom.mui-enter { - transition-duration: 500ms; - transition-timing-function: linear; - transform: perspective(2000px) rotateX(90deg); - transform-origin: bottom; - transition-property: transform, opacity; - opacity: 0; -} - -.hinge-in-from-bottom.mui-enter.mui-enter-active { - transform: perspective(2000px) rotate(0deg); - opacity: 1; -} - -.hinge-in-from-left.mui-enter { - transition-duration: 500ms; - transition-timing-function: linear; - transform: perspective(2000px) rotateY(90deg); - transform-origin: left; - transition-property: transform, opacity; - opacity: 0; -} - -.hinge-in-from-left.mui-enter.mui-enter-active { - transform: perspective(2000px) rotate(0deg); - opacity: 1; -} - -.hinge-in-from-middle-x.mui-enter { - transition-duration: 500ms; - transition-timing-function: linear; - transform: perspective(2000px) rotateX(-90deg); - transform-origin: center; - transition-property: transform, opacity; - opacity: 0; -} - -.hinge-in-from-middle-x.mui-enter.mui-enter-active { - transform: perspective(2000px) rotate(0deg); - opacity: 1; -} - -.hinge-in-from-middle-y.mui-enter { - transition-duration: 500ms; - transition-timing-function: linear; - transform: perspective(2000px) rotateY(-90deg); - transform-origin: center; - transition-property: transform, opacity; - opacity: 0; -} - -.hinge-in-from-middle-y.mui-enter.mui-enter-active { - transform: perspective(2000px) rotate(0deg); - opacity: 1; -} - -.hinge-out-from-top.mui-leave { - transition-duration: 500ms; - transition-timing-function: linear; - transform: perspective(2000px) rotate(0deg); - transform-origin: top; - transition-property: transform, opacity; - opacity: 1; -} - -.hinge-out-from-top.mui-leave.mui-leave-active { - transform: perspective(2000px) rotateX(90deg); - opacity: 0; -} - -.hinge-out-from-right.mui-leave { - transition-duration: 500ms; - transition-timing-function: linear; - transform: perspective(2000px) rotate(0deg); - transform-origin: right; - transition-property: transform, opacity; - opacity: 1; -} - -.hinge-out-from-right.mui-leave.mui-leave-active { - transform: perspective(2000px) rotateY(90deg); - opacity: 0; -} - -.hinge-out-from-bottom.mui-leave { - transition-duration: 500ms; - transition-timing-function: linear; - transform: perspective(2000px) rotate(0deg); - transform-origin: bottom; - transition-property: transform, opacity; - opacity: 1; -} - -.hinge-out-from-bottom.mui-leave.mui-leave-active { - transform: perspective(2000px) rotateX(-90deg); - opacity: 0; -} - -.hinge-out-from-left.mui-leave { - transition-duration: 500ms; - transition-timing-function: linear; - transform: perspective(2000px) rotate(0deg); - transform-origin: left; - transition-property: transform, opacity; - opacity: 1; -} - -.hinge-out-from-left.mui-leave.mui-leave-active { - transform: perspective(2000px) rotateY(-90deg); - opacity: 0; -} - -.hinge-out-from-middle-x.mui-leave { - transition-duration: 500ms; - transition-timing-function: linear; - transform: perspective(2000px) rotate(0deg); - transform-origin: center; - transition-property: transform, opacity; - opacity: 1; -} - -.hinge-out-from-middle-x.mui-leave.mui-leave-active { - transform: perspective(2000px) rotateX(90deg); - opacity: 0; -} - -.hinge-out-from-middle-y.mui-leave { - transition-duration: 500ms; - transition-timing-function: linear; - transform: perspective(2000px) rotate(0deg); - transform-origin: center; - transition-property: transform, opacity; - opacity: 1; -} - -.hinge-out-from-middle-y.mui-leave.mui-leave-active { - transform: perspective(2000px) rotateY(90deg); - opacity: 0; -} - -.scale-in-up.mui-enter { - transition-duration: 500ms; - transition-timing-function: linear; - transform: scale(0.5); - transition-property: transform, opacity; - opacity: 0; -} - -.scale-in-up.mui-enter.mui-enter-active { - transform: scale(1); - opacity: 1; -} - -.scale-in-down.mui-enter { - transition-duration: 500ms; - transition-timing-function: linear; - transform: scale(1.5); - transition-property: transform, opacity; - opacity: 0; -} - -.scale-in-down.mui-enter.mui-enter-active { - transform: scale(1); - opacity: 1; -} - -.scale-out-up.mui-leave { - transition-duration: 500ms; - transition-timing-function: linear; - transform: scale(1); - transition-property: transform, opacity; - opacity: 1; -} - -.scale-out-up.mui-leave.mui-leave-active { - transform: scale(1.5); - opacity: 0; -} - -.scale-out-down.mui-leave { - transition-duration: 500ms; - transition-timing-function: linear; - transform: scale(1); - transition-property: transform, opacity; - opacity: 1; -} - -.scale-out-down.mui-leave.mui-leave-active { - transform: scale(0.5); - opacity: 0; -} - -.spin-in.mui-enter { - transition-duration: 500ms; - transition-timing-function: linear; - transform: rotate(-0.75turn); - transition-property: transform, opacity; - opacity: 0; -} - -.spin-in.mui-enter.mui-enter-active { - transform: rotate(0); - opacity: 1; -} - -.spin-out.mui-leave { - transition-duration: 500ms; - transition-timing-function: linear; - transform: rotate(0); - transition-property: transform, opacity; - opacity: 1; -} - -.spin-out.mui-leave.mui-leave-active { - transform: rotate(0.75turn); - opacity: 0; -} - -.spin-in-ccw.mui-enter { - transition-duration: 500ms; - transition-timing-function: linear; - transform: rotate(0.75turn); - transition-property: transform, opacity; - opacity: 0; -} - -.spin-in-ccw.mui-enter.mui-enter-active { - transform: rotate(0); - opacity: 1; -} - -.spin-out-ccw.mui-leave { - transition-duration: 500ms; - transition-timing-function: linear; - transform: rotate(0); - transition-property: transform, opacity; - opacity: 1; -} - -.spin-out-ccw.mui-leave.mui-leave-active { - transform: rotate(-0.75turn); - opacity: 0; -} - -.slow { - transition-duration: 750ms !important; -} - -.fast { - transition-duration: 250ms !important; -} - -.linear { - transition-timing-function: linear !important; -} - -.ease { - transition-timing-function: ease !important; -} - -.ease-in { - transition-timing-function: ease-in !important; -} - -.ease-out { - transition-timing-function: ease-out !important; -} - -.ease-in-out { - transition-timing-function: ease-in-out !important; -} - -.bounce-in { - transition-timing-function: cubic-bezier(0.485, 0.155, 0.24, 1.245) !important; -} - -.bounce-out { - transition-timing-function: cubic-bezier(0.485, 0.155, 0.515, 0.845) !important; -} - -.bounce-in-out { - transition-timing-function: cubic-bezier(0.76, -0.245, 0.24, 1.245) !important; -} - -.short-delay { - transition-delay: 300ms !important; -} - -.long-delay { - transition-delay: 700ms !important; -} - -.shake { - animation-name: shake-7; -} -@keyframes shake-7 { - 0%, 10%, 20%, 30%, 40%, 50%, 60%, 70%, 80%, 90% { - transform: translateX(7%); - } - 5%, 15%, 25%, 35%, 45%, 55%, 65%, 75%, 85%, 95% { - transform: translateX(-7%); - } -} - -.spin-cw { - animation-name: spin-cw-1turn; -} -@keyframes spin-cw-1turn { - 0% { - transform: rotate(-1turn); - } - 100% { - transform: rotate(0); - } -} - -.spin-ccw { - animation-name: spin-ccw-1turn; -} -@keyframes spin-ccw-1turn { - 0% { - transform: rotate(0); - } - 100% { - transform: rotate(-1turn); - } -} - -.wiggle { - animation-name: wiggle-7deg; -} -@keyframes wiggle-7deg { - 40%, 50%, 60% { - transform: rotate(7deg); - } - 35%, 45%, 55%, 65% { - transform: rotate(-7deg); - } - 0%, 30%, 70%, 100% { - transform: rotate(0); - } -} - -.shake, -.spin-cw, -.spin-ccw, -.wiggle { - animation-duration: 500ms; -} - -.infinite { - animation-iteration-count: infinite; -} - -.slow { - animation-duration: 750ms !important; -} - -.fast { - animation-duration: 250ms !important; -} - -.linear { - animation-timing-function: linear !important; -} - -.ease { - animation-timing-function: ease !important; -} - -.ease-in { - animation-timing-function: ease-in !important; -} - -.ease-out { - animation-timing-function: ease-out !important; -} - -.ease-in-out { - animation-timing-function: ease-in-out !important; -} - -.bounce-in { - animation-timing-function: cubic-bezier(0.485, 0.155, 0.24, 1.245) !important; -} - -.bounce-out { - animation-timing-function: cubic-bezier(0.485, 0.155, 0.515, 0.845) !important; -} - -.bounce-in-out { - animation-timing-function: cubic-bezier(0.76, -0.245, 0.24, 1.245) !important; -} - -.short-delay { - animation-delay: 300ms !important; -} - -.long-delay { - animation-delay: 700ms !important; -} - -/* DjangoCon US customizations */ -[class*=tint-brand] { - position: relative; -} -[class*=tint-brand], -[class*=tint-brand] blockquote, -[class*=tint-brand] blockquote p, -[class*=tint-brand] cite { - color: #FFFFFF; -} -[class*=tint-brand] a, -[class*=tint-brand] a:hover { - color: #FFFFFF; -} -[class*=tint-brand]:after { - position: absolute; - top: 0; - right: 0; - bottom: 0; - left: 0; - background-image: linear-gradient(94.94deg, #430632 1.88%, #B5313D 41.15%); - content: ""; - opacity: 0.65; -} -[class*=tint-brand] .column, [class*=tint-brand] .columns { - padding: 1.5rem 1rem; - background: rgba(181, 49, 61, 0.6); -} - -.theme-brand-color1, -.button.theme-brand-color1 { - background-color: #140A44; - color: #FFFFFF; -} -.theme-brand-color1 a, -.theme-brand-color1 a:hover, -.button.theme-brand-color1 a, -.button.theme-brand-color1 a:hover { - color: #FFFFFF; -} -.theme-brand-color1 .theme-color, -.button.theme-brand-color1 .theme-color { - color: #140A44; -} - -.theme-brand-color2, -.button.theme-brand-color2 { - background-color: #E47048; - color: #FFFFFF; -} -.theme-brand-color2 a, -.theme-brand-color2 a:hover, -.button.theme-brand-color2 a, -.button.theme-brand-color2 a:hover { - color: #FFFFFF; -} -.theme-brand-color2 .theme-color, -.button.theme-brand-color2 .theme-color { - color: #E47048; -} - -.theme-brand-color3, -.button.theme-brand-color3 { - background-color: #4975C3; - color: #FFFFFF; -} -.theme-brand-color3 a, -.theme-brand-color3 a:hover, -.button.theme-brand-color3 a, -.button.theme-brand-color3 a:hover { - color: #FFFFFF; -} -.theme-brand-color3 .theme-color, -.button.theme-brand-color3 .theme-color { - color: #4975C3; -} - -.theme-brand-color4, -.button.theme-brand-color4 { - background-color: #766591; -} -.theme-brand-color4 .theme-color, -.button.theme-brand-color4 .theme-color { - color: #766591; -} - -.theme-brand-color5, -.button.theme-brand-color5 { - background-color: #FDCA85; - color: #FFFFFF; -} -.theme-brand-color5 a, -.theme-brand-color5 a:hover, -.button.theme-brand-color5 a, -.button.theme-brand-color5 a:hover { - color: #FFFFFF; -} -.theme-brand-color5 .theme-color, -.button.theme-brand-color5 .theme-color { - color: #FDCA85; -} - -.theme-brand-color6, -.button.theme-brand-color6 { - background-color: #A1CCE4; - color: #FFFFFF; -} -.theme-brand-color6 a, -.theme-brand-color6 a:hover, -.button.theme-brand-color6 a, -.button.theme-brand-color6 a:hover { - color: #FFFFFF; -} -.theme-brand-color6 .theme-color, -.button.theme-brand-color6 .theme-color { - color: #A1CCE4; -} - -.theme-white, -.button.theme-white { - background-color: #FFFFFF; -} -.theme-white .theme-color, -.button.theme-white .theme-color { - color: #FFFFFF; -} - -.theme-light-gray, -.button.theme-light-gray { - background-color: #F7F8F9; -} -.theme-light-gray .theme-color, -.button.theme-light-gray .theme-color { - color: #F7F8F9; -} - -.theme-medium-gray, -.button.theme-medium-gray { - background-color: #E9E9E9; -} -.theme-medium-gray .theme-color, -.button.theme-medium-gray .theme-color { - color: #E9E9E9; -} - -.theme-dark-gray, -.button.theme-dark-gray { - background-color: #CACACA; - color: #FFFFFF; -} -.theme-dark-gray a, -.theme-dark-gray a:hover, -.button.theme-dark-gray a, -.button.theme-dark-gray a:hover { - color: #FFFFFF; -} -.theme-dark-gray .theme-color, -.button.theme-dark-gray .theme-color { - color: #CACACA; -} - -.theme-black, -.button.theme-black { - background-color: #1E1E1E; - color: #FFFFFF; -} -.theme-black a, -.theme-black a:hover, -.button.theme-black a, -.button.theme-black a:hover { - color: #FFFFFF; -} -.theme-black .theme-color, -.button.theme-black .theme-color { - color: #1E1E1E; -} - -.swatch-color-brand-color1 { - color: #140A44; -} - -.card-theme-brand-color1 { - border: none; - border-top: 8px solid #140A44; -} -.card-theme-brand-color1 h1, -.card-theme-brand-color1 h2, -.card-theme-brand-color1 h3, -.card-theme-brand-color1 h4, -.card-theme-brand-color1 h5, -.card-theme-brand-color1 h6, -.card-theme-brand-color1 a:not(.button) { - color: #140A44; -} -.card-theme-brand-color1 a:not(.button):hover { - color: #0e0730; -} -.card-theme-brand-color1 .theme-color { - color: #140A44; -} -.card-theme-brand-color1 .theme-bg { - background-color: #140A44; - color: #FFFFFF; -} -.card-theme-brand-color1 path { - fill: #140A44; -} - -.swatch-color-brand-color2 { - color: #E47048; -} - -.card-theme-brand-color2 { - border: none; - border-top: 8px solid #E47048; -} -.card-theme-brand-color2 h1, -.card-theme-brand-color2 h2, -.card-theme-brand-color2 h3, -.card-theme-brand-color2 h4, -.card-theme-brand-color2 h5, -.card-theme-brand-color2 h6, -.card-theme-brand-color2 a:not(.button) { - color: #E47048; -} -.card-theme-brand-color2 a:not(.button):hover { - color: #a04e32; -} -.card-theme-brand-color2 .theme-color { - color: #E47048; -} -.card-theme-brand-color2 .theme-bg { - background-color: #E47048; - color: #FFFFFF; -} -.card-theme-brand-color2 path { - fill: #E47048; -} - -.swatch-color-brand-color3 { - color: #4975C3; -} - -.card-theme-brand-color3 { - border: none; - border-top: 8px solid #4975C3; -} -.card-theme-brand-color3 h1, -.card-theme-brand-color3 h2, -.card-theme-brand-color3 h3, -.card-theme-brand-color3 h4, -.card-theme-brand-color3 h5, -.card-theme-brand-color3 h6, -.card-theme-brand-color3 a:not(.button) { - color: #4975C3; -} -.card-theme-brand-color3 a:not(.button):hover { - color: #335289; -} -.card-theme-brand-color3 .theme-color { - color: #4975C3; -} -.card-theme-brand-color3 .theme-bg { - background-color: #4975C3; - color: #FFFFFF; -} -.card-theme-brand-color3 path { - fill: #4975C3; -} - -.swatch-color-brand-color4 { - color: #766591; -} - -.card-theme-brand-color4 { - border: none; - border-top: 8px solid #766591; -} -.card-theme-brand-color4 h1, -.card-theme-brand-color4 h2, -.card-theme-brand-color4 h3, -.card-theme-brand-color4 h4, -.card-theme-brand-color4 h5, -.card-theme-brand-color4 h6, -.card-theme-brand-color4 a:not(.button) { - color: #766591; -} -.card-theme-brand-color4 a:not(.button):hover { - color: #534766; -} -.card-theme-brand-color4 .theme-color { - color: #766591; -} -.card-theme-brand-color4 .theme-bg { - background-color: #766591; - color: #FFFFFF; -} -.card-theme-brand-color4 path { - fill: #766591; -} - -.swatch-color-brand-color5 { - color: #FDCA85; -} - -.card-theme-brand-color5 { - border: none; - border-top: 8px solid #FDCA85; -} -.card-theme-brand-color5 h1, -.card-theme-brand-color5 h2, -.card-theme-brand-color5 h3, -.card-theme-brand-color5 h4, -.card-theme-brand-color5 h5, -.card-theme-brand-color5 h6, -.card-theme-brand-color5 a:not(.button) { - color: #FDCA85; -} -.card-theme-brand-color5 a:not(.button):hover { - color: #b18d5d; -} -.card-theme-brand-color5 .theme-color { - color: #FDCA85; -} -.card-theme-brand-color5 .theme-bg { - background-color: #FDCA85; - color: #FFFFFF; -} -.card-theme-brand-color5 path { - fill: #FDCA85; -} - -.swatch-color-brand-color6 { - color: #A1CCE4; -} - -.card-theme-brand-color6 { - border: none; - border-top: 8px solid #A1CCE4; -} -.card-theme-brand-color6 h1, -.card-theme-brand-color6 h2, -.card-theme-brand-color6 h3, -.card-theme-brand-color6 h4, -.card-theme-brand-color6 h5, -.card-theme-brand-color6 h6, -.card-theme-brand-color6 a:not(.button) { - color: #A1CCE4; -} -.card-theme-brand-color6 a:not(.button):hover { - color: #718fa0; -} -.card-theme-brand-color6 .theme-color { - color: #A1CCE4; -} -.card-theme-brand-color6 .theme-bg { - background-color: #A1CCE4; - color: #FFFFFF; -} -.card-theme-brand-color6 path { - fill: #A1CCE4; -} - -.swatch-color-white { - color: #FFFFFF; -} - -.card-theme-white { - border: none; - border-top: 8px solid #FFFFFF; -} -.card-theme-white h1, -.card-theme-white h2, -.card-theme-white h3, -.card-theme-white h4, -.card-theme-white h5, -.card-theme-white h6, -.card-theme-white a:not(.button) { - color: #FFFFFF; -} -.card-theme-white a:not(.button):hover { - color: #b3b3b3; -} -.card-theme-white .theme-color { - color: #FFFFFF; -} -.card-theme-white .theme-bg { - background-color: #FFFFFF; - color: #FFFFFF; -} -.card-theme-white path { - fill: #FFFFFF; -} - -.swatch-color-light-gray { - color: #F7F8F9; -} - -.card-theme-light-gray { - border: none; - border-top: 8px solid #F7F8F9; -} -.card-theme-light-gray h1, -.card-theme-light-gray h2, -.card-theme-light-gray h3, -.card-theme-light-gray h4, -.card-theme-light-gray h5, -.card-theme-light-gray h6, -.card-theme-light-gray a:not(.button) { - color: #F7F8F9; -} -.card-theme-light-gray a:not(.button):hover { - color: #adaeae; -} -.card-theme-light-gray .theme-color { - color: #F7F8F9; -} -.card-theme-light-gray .theme-bg { - background-color: #F7F8F9; - color: #FFFFFF; -} -.card-theme-light-gray path { - fill: #F7F8F9; -} - -.swatch-color-medium-gray { - color: #E9E9E9; -} - -.card-theme-medium-gray { - border: none; - border-top: 8px solid #E9E9E9; -} -.card-theme-medium-gray h1, -.card-theme-medium-gray h2, -.card-theme-medium-gray h3, -.card-theme-medium-gray h4, -.card-theme-medium-gray h5, -.card-theme-medium-gray h6, -.card-theme-medium-gray a:not(.button) { - color: #E9E9E9; -} -.card-theme-medium-gray a:not(.button):hover { - color: #a3a3a3; -} -.card-theme-medium-gray .theme-color { - color: #E9E9E9; -} -.card-theme-medium-gray .theme-bg { - background-color: #E9E9E9; - color: #FFFFFF; -} -.card-theme-medium-gray path { - fill: #E9E9E9; -} - -.swatch-color-dark-gray { - color: #CACACA; -} - -.card-theme-dark-gray { - border: none; - border-top: 8px solid #CACACA; -} -.card-theme-dark-gray h1, -.card-theme-dark-gray h2, -.card-theme-dark-gray h3, -.card-theme-dark-gray h4, -.card-theme-dark-gray h5, -.card-theme-dark-gray h6, -.card-theme-dark-gray a:not(.button) { - color: #CACACA; -} -.card-theme-dark-gray a:not(.button):hover { - color: #8d8d8d; -} -.card-theme-dark-gray .theme-color { - color: #CACACA; -} -.card-theme-dark-gray .theme-bg { - background-color: #CACACA; - color: #FFFFFF; -} -.card-theme-dark-gray path { - fill: #CACACA; -} - -.swatch-color-black { - color: #1E1E1E; -} - -.card-theme-black { - border: none; - border-top: 8px solid #1E1E1E; -} -.card-theme-black h1, -.card-theme-black h2, -.card-theme-black h3, -.card-theme-black h4, -.card-theme-black h5, -.card-theme-black h6, -.card-theme-black a:not(.button) { - color: #1E1E1E; -} -.card-theme-black a:not(.button):hover { - color: #151515; -} -.card-theme-black .theme-color { - color: #1E1E1E; -} -.card-theme-black .theme-bg { - background-color: #1E1E1E; - color: #FFFFFF; -} -.card-theme-black path { - fill: #1E1E1E; -} - -.card-bg-1 { - background-image: url(/static/img/theme/card-1.svg); - background-size: cover; -} - -.card-bg-2 { - background-image: url(/static/img/theme/card-2.svg); - background-size: cover; -} - -.card-bg-3 { - background-image: url(/static/img/theme/card-3.svg); - background-size: cover; -} - -.card-bg-4 { - background-image: url(/static/img/theme/card-4.svg); - background-size: cover; -} - -.bottomless > *:last-child { - margin-bottom: 0; -} - -.section-pad { - position: relative; - z-index: 0; - padding-top: 1rem; - padding-bottom: 1rem; -} -@media print, screen and (min-width: 55.625em) { - .section-pad { - padding-top: 4rem; - padding-bottom: 4rem; - } -} - -.v-pad-bottom { - padding-bottom: 1rem; -} -@media print, screen and (min-width: 55.625em) { - .v-pad-bottom { - padding-bottom: 2rem; - } -} - -.v-pad-bottom-extra { - padding-bottom: 4rem; -} -@media print, screen and (min-width: 55.625em) { - .v-pad-bottom-extra { - padding-bottom: 8rem; - } -} - -.v-pad-top { - padding-top: 1rem; -} -@media print, screen and (min-width: 55.625em) { - .v-pad-top { - padding-top: 2rem; - } -} - -h1 img.emoji { - width: 1em; - height: 1em; -} - -h1 a, -h2 a, -.partner-footer h3 a, -h3 a, -h4 a, -h5 a, -h6 a { - text-decoration: none; -} - -li { - margin-bottom: 0.85rem; -} - -.lead { - margin-bottom: 2.5rem; - font-weight: 400; -} -@media print, screen and (min-width: 55.625em) { - .lead { - font-size: 1.3rem; - } -} - -.lead.stripes { - margin-bottom: 3.5rem; - padding-top: 1rem; - padding-bottom: 1rem; - border-top: 2px solid #FFFFFF; - border-bottom: 2px solid #FFFFFF; -} - -.lead.min { - margin-bottom: 1.5rem; -} - -.lead:last-child { - margin-bottom: 0; -} - -.demp { - font-weight: 400; -} - -.label { - font-weight: 600; -} - -hr { - margin-top: 2rem; - margin-bottom: 2rem; -} - -.contrast-fix { - display: inline-block; - margin-right: auto; - margin-left: auto; - padding: 0.35em; - background: #E47048; -} - -iframe, -.highlighter-rouge { - margin-bottom: 1rem; -} - -.responsive-embed iframe { - margin-bottom: 0; - max-width: 100%; -} - -.thumbnail-block { - border-radius: 0; -} - -@media print, screen and (min-width: 55.625em) { - .list-split { - display: flex; - flex-flow: row wrap; - justify-content: space-between; - } - .list-split li { - width: 45%; - } -} - -.back { - position: relative; - z-index: -10; - transform: translate3d(0, 0, 0); -} - -:target:before { - display: block; - margin: -70px 0 0; /* negative fixed header height */ - height: 70px; /* fixed header height*/ - content: ""; -} -@media print, screen and (min-width: 55.625em) { - :target:before { - margin-top: -110px; - height: 110px; - } -} - -.media-object img { - min-width: 100px; -} - -.section-heading { - margin-bottom: 3rem; - text-align: center; -} - -.callout { - color: #1E1E1E; -} - -blockquote cite { - font-size: 0.6730769231rem; - color: #1E1E1E; -} -blockquote p:last-of-type { - margin-bottom: 0; -} - -.button { - background-color: #4975C3; - -webkit-mask-image: url(/static/img/theme/button.svg); - mask-image: url(/static/img/theme/button.svg); - -webkit-mask-repeat: no-repeat; - mask-repeat: no-repeat; - -webkit-mask-size: cover; - mask-size: cover; - font-weight: 700; - text-decoration: none; - color: #FFFFFF; -} -.button:hover { - background-color: #2f5290; -} - -.button.hollow { - -webkit-mask-image: none; - mask-image: none; - border: none; - background-image: url(/static/img/theme/button-hollow.svg); - background-repeat: no-repeat; - background-size: cover; - color: #E47048; -} -.button.hollow:hover { - border-color: transparent; - background-image: url(/static/img/theme/button-hollow-hover.svg); - color: #FFFFFF; -} - -.event-page h1 { - margin-bottom: 0.5rem; -} - -.title-bar .menu a { - text-decoration: none; -} - -.title-bar .menu a:not(.button) { - color: #140A44; -} - -.title-bar .menu { - transform: translate3d(0, 0, 0); -} - -.title-bar .menu .menu { - position: absolute; -} - -.off-canvas .menu a { - color: #FFFFFF; -} - -.off-canvas .menu li, -.dropdown .menu li { - margin-bottom: 0; -} - -.title-bar .menu > li > a { - font-weight: 600; -} - -.off-canvas .menu .button { - margin-right: 20px; - margin-left: 20px; -} -.off-canvas .menu .button.hollow { - display: none; -} - -.menu .menu { - text-align: left; -} - -.headroom--top .menu .navbar-button, -.navbar-button { - text-align: center; -} -.headroom--top .menu .navbar-button small, -.navbar-button small { - font-size: 0.7692307692rem; -} - -.headroom .menu .menu a { - font-size: 0.8653846154rem; - color: #FFFFFF; -} - -.title-bar { - max-width: 57.6923076923rem; - margin: 0 auto; -} -.title-bar .logo { - display: block; - margin: 10px 0 -20px 10px; - width: 160px; - height: auto; -} -.title-bar .menu > li > a { - padding: 0.6rem; - font-size: 0.8rem; -} - -.headroom { - position: fixed; - top: 0; - right: 0; - left: 0; - z-index: 10; - transition: all 200ms ease; - will-change: transform; -} -.headroom, -.headroom .hamburger { - height: 80px; -} - -.drilldown .is-drilldown-submenu { - background: #4975C3; -} - -.is-drilldown { - min-height: 480px !important; -} - -.dropdown.menu > li.is-dropdown-submenu-parent > a { - padding-right: 1.1rem; -} - -@media screen and (max-width: 55.62375em) { - .is-dropdown-submenu-parent { - position: static; - } -} -@media print, screen and (min-width: 64em) { - .headroom { - position: relative !important; - height: 120px; - } - .title-bar .logo { - margin-top: 1rem; - margin-left: 1rem; - width: 170px; - height: 100%; - } - .title-bar .menu > li > a { - font-size: 0.9rem; - } - .title-bar-right { - padding: 1rem 1rem 0; - } - .title-bar .button { - display: none; - } - .title-bar .button.hollow { - display: inline-block; - } -} -@media screen and (min-width: 75em) { - .title-bar { - padding-bottom: 0.5rem; - } - .title-bar .menu > li > a { - padding: 1rem; - } - .title-bar .logo { - width: 200px; - height: 100%; - } -} -.post-page h2:not(:first-child), -.post-page h3 { - margin-top: 2rem; -} -.post-page h2, -.post-page h3 { - font-weight: 600; -} -.post-page img.full-width { - margin-left: -2rem; - max-width: calc(100% + 4rem); -} - -.subpage-header.has-post-photo { - padding-bottom: 2rem; -} - -.post-photo { - display: block; -} -.post-photo:first-child { - margin-bottom: 2rem; -} - -@media print, screen and (min-width: 55.625em) { - .post-photo { - margin-left: -3rem; - width: calc(100% + 6rem); - max-width: none; - } -} -.video-card .label { - float: right; - margin-right: 10px; - border-radius: 4px 4px 0 0; - font-weight: 700; -} -.video-card .responsive-embed { - clear: both; -} -.video-card-title, .video-card-presenter { - font-family: "Plus Jakarta Sans", sans-serif; -} -.video-card-title { - margin-bottom: 0.5rem; - font-size: 1.1538461538rem; -} -.video-card-presenter { - font-size: 0.9615384615rem; - font-weight: 400; -} - -.tutorials-block { - padding: 1rem; -} -.tutorials-block .media-icon { - float: left; - margin-right: 1rem; - width: 74px; - height: 74px; -} -.tutorials-block .tutorials-block-heading { - font-size: 1.1538461538rem; - font-weight: 600; -} - -.sprints-img { - display: inline-block; - margin: 0 auto 1rem; - max-width: 75%; -} - -.why-quote { - margin-bottom: 100px; -} -@media print, screen and (min-width: 55.625em) { - .why-quote { - margin-bottom: 0; - } -} - -.subpage-content .section-pad:first-child { - padding-top: 0; -} - -.subpage-header { - position: relative; - padding: 6rem 0 2rem; - text-align: center; -} -.subpage-header.no-bottom { - padding-bottom: 0; -} -.subpage-header.no-top { - padding-top: 0; -} - -.subpage-header h1 { - position: relative; - margin: 0 auto 2rem; - padding: 0 1rem; - max-width: 60rem; -} - -.subpage-header h1:after { - position: relative; - bottom: -0.8rem; - left: calc(50% - 1.5rem); - display: block; - width: 3rem; - height: 4px; - background: #E47048; - content: ""; -} - -.subpage-header a { - text-decoration: none; -} - -.footer { - position: relative; - padding-bottom: clamp(4rem, 20vw, 12rem); - background-color: #FDCA85; - color: #140A44; - background-image: url(/static/img/theme/footer-bottom.svg); - background-position: bottom center; - background-repeat: no-repeat; - background-size: 100% auto; -} -.footer::before { - content: ""; - position: relative; - top: 0; - left: 0; - right: 0; - display: block; - margin-bottom: 2rem; - width: 100%; - aspect-ratio: 1584/795; - background-image: url(/static/img/theme/footer-top.svg); - background-position: top center; - background-repeat: no-repeat; - background-size: 100% auto; -} -.footer p, -.footer a, -.footer small { - color: #140A44; -} -.footer .legal { - display: block; -} - -.footer-logo { - display: block; - margin: 0 auto 1.5em; - width: 140px; -} -.footer-logo svg { - max-width: 100%; - height: auto; -} -.footer-logo path { - fill: #FFFFFF; -} - -.footer-nav { - margin: 0; - padding: 0; - font-size: 1.1538461538rem; - font-weight: bold; - list-style: none; -} -.footer-nav a { - display: block; - padding: 0.25em 0.5em; - color: #FFFFFF; -} -@media print, screen and (min-width: 55.625em) { - .footer-nav { - text-align: center; - } - .footer-nav li { - display: inline-block; - vertical-align: baseline; - } -} - -.footer .social-icons { - text-align: center; -} - -.partner-cta-box h2, .partner-cta-box .partner-footer h3, .partner-footer .partner-cta-box h3 { - margin-bottom: 0.5rem; - font-size: 1.3461538462rem; -} - -.session-details-page .subpage-content, -.schedule-page .subpage-content { - padding-bottom: 0; -} - -.session-details-page .responsive-embed + .event-links { - margin-top: 2rem; -} - -/* This styles code blocks used for examples. */ -.highlight { - background: #F7F8F9; -} - -.highlight, -.ss-code-live { - margin-bottom: 1.5rem; -} - -.highlight code { - display: block; - padding: 1rem; - font-size: 0.7em; - overflow: auto; -} - -.styleguide-logo { - display: block; - margin: 2rem auto; - max-width: 400px; -} - -.tabs-title a { - font-size: 0.9rem; - font-weight: 700; - text-decoration: none; -} - -/* This styles the color blocks used in the color documentation. */ -.colors { - margin: 1em 0; - padding: 0; - list-style: none; -} - -.color { - display: inline-block; - margin: 10px; - padding-top: 84px; - width: 200px; - height: 200px; - box-shadow: 0 0 8px rgba(0, 0, 0, 0.1); - border-radius: 50%; - line-height: 1.2; - text-align: center; -} - -.logo-set-wrap { - display: flex; - flex-flow: row wrap; - justify-content: center; - margin-top: 2rem; -} - -.logo-set { - margin-bottom: 2em; -} - -.logo-set img { - display: block; - margin: 0 auto 1em; - max-width: 80%; -} - -.download-links { - margin: 0.5em 0; - font-size: 0.8rem; - text-align: center; - list-style: none; -} - -.download-links li { - display: inline-block; - padding: 0 6px; - vertical-align: baseline; -} - -.styleguide-add-max-width { - max-width: 1200px; -} - -.styleguide-content { - margin-top: 80px; - margin-bottom: 80px; -} - -.attraction-name { - margin-bottom: 0.5rem; -} - -.attraction-location { - font-size: 0.8rem; -} - -.attraction-location .label { - margin-right: 1rem; - font-size: 0.8em; - font-weight: 700; -} - -.attraction-description { - max-width: 24em; - font-size: 0.9rem; -} - -@media print, screen and (min-width: 64em) { - .attraction-list .column, .attraction-list .columns { - margin-bottom: 2.5rem; - } - .attraction-list .column:nth-last-child(1), .attraction-list .columns:nth-last-child(1), .attraction-list .column:nth-last-child(2), .attraction-list .columns:nth-last-child(2) { - margin-bottom: 0; - } -} - -.event-info { - display: flex; - align-items: center; - margin: 0 auto; -} -.event-info-date { - display: block; - font-size: 1.3rem; -} - -.event-links { - display: flex; - justify-content: center; - margin-bottom: 3rem; -} - -.event-links-heading { - margin-right: 1em; - font-size: 1.3461538462rem; - color: #1E1E1E; -} - -.event-link-icon { - height: 36px; -} - -.event-link-icon path { - fill: currentColor; -} - -.event-link { - display: inline-flex; - justify-content: center; - align-items: center; - padding: 0.75em 1.75em; -} - -.event-link-icon { - margin-right: 0.5em; -} - -.faq-item { - margin-bottom: 3rem; -} - -.faq-item-question { - font-size: 1.4423076923rem; -} -@media print, screen and (min-width: 55.625em) { - .faq-item-question { - font-size: 1.8269230769rem; - } -} - -.home-hero { - position: relative; - margin: 80px auto 0; -} -.home-hero .row { - padding: 2.5rem 1.5rem; -} -.home-hero h1 { - margin-bottom: 2.25rem; - font-size: 1.6rem; -} -.home-hero h1 strong { - color: #ED8F6F; -} -.home-hero .event-info-detail { - margin-bottom: 1.5rem; - color: #FDCA85; -} -.home-hero .event-info-location { - font-weight: 700; -} -.home-hero .event-info-location a { - color: #FDCA85; -} -.home-hero .button + .button { - margin-left: 0.5rem; -} - -@media print, screen and (min-width: 55.625em) { - .home-hero h1 { - font-size: 2rem; - } - .home-hero .row { - background-image: url(/static/img/theme/hero-lemur.svg); - background-repeat: no-repeat; - background-size: auto 100%; - background-position: right -12.25vw center; - } - .home-hero .header-text { - max-width: 26rem; - } -} -@media print, screen and (min-width: 64em) { - .home-hero { - margin-top: 0; - } - .home-hero .row { - background-image: url(/static/img/theme/hero-lemur.svg), url(/static/img/theme/hero-map.svg); - background-repeat: no-repeat, no-repeat; - background-size: auto 100%, auto 100%; - background-position: right 10% center, right -16vw center; - } -} -@media screen and (min-width: 75em) { - .home-hero .row { - background-position: right 28% center, right -15% center; - } -} -.photo-hero { - background-size: cover; -} -.photo-hero .hero-content { - position: relative; - z-index: 2; - padding-top: 0.4807692308rem; - background: #FFFFFF; -} -.photo-hero .hero-content .column > *:last-child, .photo-hero .hero-content .columns > *:last-child { - margin-bottom: 0; -} -.photo-hero blockquote { - padding: 0; - border: none; - font-size: 1.25rem; -} -.photo-hero cite { - font-size: 0.9615384615rem; -} -@media print, screen and (min-width: 55.625em) { - .photo-hero { - padding-top: 16vh; - padding-bottom: 16vh; - } - .photo-hero .hero-content { - padding-top: 0; - background: transparent; - } -} - -.photo-hero-inline { - position: relative; -} -.photo-hero-inline img { - display: block; - width: 100%; -} - -@media print, screen and (min-width: 55.625em) { - .news { - display: flex; - flex-flow: row wrap; - justify-content: center; - } - .news .news-title { - display: flex; - } -} - -/*! - * Hamburgers - * @description Tasty CSS-animated hamburgers - * @author Jonathan Suh @jonsuh - * @site https://jonsuh.com/hamburgers - * @link https://github.com/jonsuh/hamburgers - */ -.hamburger { - padding: 15px 15px; - display: inline-block; - cursor: pointer; - transition-property: opacity, filter; - transition-duration: 0.15s; - transition-timing-function: linear; - font: inherit; - color: inherit; - text-transform: none; - background-color: transparent; - border: 0; - margin: 0; - overflow: visible; -} -.hamburger:hover { - opacity: 0.7; -} -.hamburger.is-active:hover { - opacity: 0.7; -} -.hamburger.is-active .hamburger-inner, -.hamburger.is-active .hamburger-inner::before, -.hamburger.is-active .hamburger-inner::after { - background-color: #FFFFFF; -} - -.hamburger-box { - width: 30px; - height: 18px; - display: inline-block; - position: relative; -} - -.hamburger-inner { - display: block; - top: 50%; - margin-top: -1px; -} -.hamburger-inner, .hamburger-inner::before, .hamburger-inner::after { - width: 30px; - height: 2px; - background-color: #FFFFFF; - border-radius: 4px; - position: absolute; - transition-property: transform; - transition-duration: 0.15s; - transition-timing-function: ease; -} -.hamburger-inner::before, .hamburger-inner::after { - content: ""; - display: block; -} -.hamburger-inner::before { - top: -8px; -} -.hamburger-inner::after { - bottom: -8px; -} - -/* - * Spin - */ -.hamburger--spin .hamburger-inner { - transition-duration: 0.22s; - transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); -} -.hamburger--spin .hamburger-inner::before { - transition: top 0.1s 0.25s ease-in, opacity 0.1s ease-in; -} -.hamburger--spin .hamburger-inner::after { - transition: bottom 0.1s 0.25s ease-in, transform 0.22s cubic-bezier(0.55, 0.055, 0.675, 0.19); -} -.hamburger--spin.is-active .hamburger-inner { - transform: rotate(225deg); - transition-delay: 0.12s; - transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); -} -.hamburger--spin.is-active .hamburger-inner::before { - top: 0; - opacity: 0; - transition: top 0.1s ease-out, opacity 0.1s 0.12s ease-out; -} -.hamburger--spin.is-active .hamburger-inner::after { - bottom: 0; - transform: rotate(-90deg); - transition: bottom 0.1s ease-out, transform 0.22s 0.12s cubic-bezier(0.215, 0.61, 0.355, 1); -} - -.hamburger { - padding: 16px 15px 10px; -} - -.hamburger-inner, -.hamburger-inner:before, -.hamburger-inner:after { - background-color: #4975C3; -} - -.date-card { - margin-bottom: 2rem; -} -.date-card a { - display: flex; - text-decoration: none; - color: #1E1E1E; -} -.date-card a:hover { - color: #1E1E1E; -} -.date-card .date-card-title { - margin-bottom: 0.5rem; - font-size: 1.6rem; - font-weight: 700; -} -.date-card p { - margin-bottom: 0; - font-size: 0.85rem; - font-weight: 600; - line-height: 1.25; -} -.date-card .dates { - flex: 0 0 120px; - margin-right: 20px; - font-weight: 700; - text-align: center; -} -.date-card .month { - display: block; - padding: 0.3em 0.2em; - background-image: url(/static/img/theme/card-highlight.svg); - background-size: cover; - font-size: 0.82rem; - font-weight: 700; - text-transform: uppercase; - color: #FFFFFF; -} -.date-card .days { - display: block; - padding-top: 0.5rem; - padding-bottom: 0.5rem; - font-size: 1.4rem; - color: #E47048; -} -@media print, screen and (min-width: 64em) { - .date-card { - margin-bottom: 0; - } -} - -@media print, screen and (min-width: 55.625em) { - .card-row { - display: flex; - justify-content: center; - } - .card-row > .column, .card-row > .columns { - display: flex; - } -} -.card { - width: 100%; -} - -.card.icon-right .card-icon { - float: right; - margin: 1em 0 2em 2em; -} - -.card.icon-left, -.card.icon-right { - display: flex; - align-items: flex-start; -} -.card.icon-left .card-title, -.card.icon-right .card-title { - text-align: left; -} -.card.icon-left .card-icon, -.card.icon-right .card-icon { - float: left; - align-self: center; - margin: 0 0 0 1em; - width: 240px; -} - -.card.icon-right { - flex-direction: row-reverse; -} -.card.icon-right .card-icon { - float: right; - margin: 0 1em 0 0; -} - -.card-icon { - display: block; - margin: 1em auto 0; - width: 100px; - height: 100px; -} - -.card-title { - text-align: center; -} - -.card-section { - min-height: 120px; -} - -.icon { - display: inline-block; - vertical-align: middle; -} - -.icon.float-left { - margin-right: 20px; - margin-bottom: 20px; -} - -.icon.float-right { - margin-bottom: 20px; - margin-left: 20px; -} - -.icon-small { - width: 24px; - height: 24; -} - -.icon-medium { - width: 48px; - height: 48px; -} - -.icon-large { - width: 64px; - height: 64px; -} - -.icon-xlarge { - width: 128px; - height: 128px; -} - -.icon-jumbo { - width: 256px; - height: 256px; -} - -.presenters { - margin-top: 2rem; -} - -.presenters .profile { - margin-bottom: 3rem; -} -.presenters .profile:last-child { - margin-bottom: 0; -} - -.profile { - margin: 0 auto; - padding: 20px; - max-width: 360px; - font-size: 0.9rem; - line-height: 1.5; -} -.profile:last-child { - margin-bottom: 0; -} - -.profile.wide { - padding: 0; - max-width: 57.6923076923rem; -} - -.profile-name { - font-size: 1.4423076923rem; - font-weight: 600; -} - -.profile .social-icons a { - color: #4975C3; -} -.profile .social-icons a svg { - width: 34px; - height: 34px; - fill: currentColor; -} - -.post-item { - margin-bottom: 2rem; - padding-bottom: 2rem; - border-bottom: 1px solid #CACACA; -} -.post-item > *:last-child { - margin-bottom: 0; -} - -.post-title a { - color: #4975C3; -} -.post-title a:hover { - color: #140A44; -} - -.post-item:last-child { - border-bottom: none; -} - -.event.loc-alt-3, .event.loc-alt-2, .event.loc-alt, .event.loc-main { - background: #F7F8F9; -} - -.schedule { - margin: 0; - padding-right: 0; - padding-left: 0; - list-style: none; -} -.schedule .day { - font-weight: 400; -} - -[id*=Day-]:target { - padding-top: 4rem; -} - -.time { - display: block; - margin-bottom: 1rem; - font-size: 1.6rem; - font-weight: 600; -} - -.events { - margin: 0; - padding: 0; - list-style: none; -} - -.event { - position: relative; - margin: 0 0 1em; - padding: 0; - width: 100%; -} -.event::before, .event::after { - display: table; - content: " "; -} -.event::after { - clear: both; -} -.event > *:last-child { - margin-bottom: 0; -} -.event a { - text-decoration: none; -} -.event .location, -.event a:hover { - color: #1E1E1E; -} -.event a:hover .event-title { - color: #E47048; -} -.event a:hover .mini-profile-byline { - color: #1E1E1E; -} -.event .event-content { - display: flex; - flex-direction: column; - flex-grow: 1; -} -.event .event-content > *:last-child { - margin-bottom: 0; -} -.event .label { - align-self: flex-start; - font-size: 0.75rem; -} -.event .avatar { - aspect-ratio: 1; - margin: 0 0.5em 0 0; - width: 60px; - object-fit: cover; - border-radius: 50%; - vertical-align: middle; -} -.event .location { - position: absolute; - top: 6px; - right: 12px; - font-size: 0.8em; -} -.event-links .button { - margin-right: 0.5rem; -} -.event-links .button:last-child { - margin-right: 0; -} -.event-byline { - margin-top: 1rem; -} -.event-speaker { - margin-top: 1rem; - margin-bottom: 0; -} -.event-speaker + .event-speaker { - margin-top: 0.75rem; -} -.event .event { - position: static; -} - -.event.boxed { - padding: 1rem; - border: 1px solid #E9E9E9; - background: #FFFFFF; -} -.event.boxed .event-content { - display: block; -} -.event.boxed .mini-profile-byline { - margin-top: 1rem; - padding-top: 0; -} - -.event-title { - margin-bottom: 0.5rem; - font-size: 1.2rem; -} - -.event.loc-main { - border-top: 8px solid #A1CCE4; -} - -.event.loc-main .location { - background: #F7F8F9; -} - -.event.loc-alt { - border-top: 8px solid #4975C3; -} - -.event.loc-alt-2 { - border-top: 8px solid #E47048; -} - -.event.loc-alt-3 { - border-top: 8px solid #140A44; -} - -.event.loc-main, -.event.loc-alt, -.event.loc-alt-2, -.event.loc-alt-3 { - padding: 1.75rem 1rem 1rem; -} - -.mini-profile-byline { - display: flex; - align-items: center; - margin-top: 30px; - margin-bottom: 0; - line-height: 1.2; - text-decoration: none; -} -.mini-profile-byline + .mini-profile-byline { - margin-top: 0.5rem; -} -.mini-profile-byline .avatar { - margin: 0 0.5em 0 0; - max-width: 60px; - border-radius: 50%; - vertical-align: middle; -} - -@media print, screen and (min-width: 55.625em) { - .hour-row { - padding: 1rem 0; - } - .events { - display: flex; - } - .event { - display: flex; - flex-direction: column; - margin: 0 0.5rem; - text-align: left; - flex-grow: 1; - } - .event:first-child { - margin-left: 0; - } - .event:last-child { - margin-right: 0; - } - .event .label { - display: inline-block; - align-self: flex-start; - margin-left: 0; - } - .time { - margin-bottom: 0; - font-size: 1.2rem; - text-align: right; - } - .time .muted { - display: block; - font-weight: 400; - opacity: 0.6; - } - .schedule .day, - .schedule .lead { - text-align: center; - } -} -.schedule-nav { - margin-bottom: 1rem; -} -.schedule-nav-title { - display: block; - margin-bottom: 1rem; - padding: 0.3em 1em; - background: #E47048; - font-weight: 700; - text-align: center; - color: #FFFFFF; -} -.schedule-nav-list { - display: flex; - flex-flow: row wrap; - justify-content: space-between; - margin: 0; - padding: 0; -} -.schedule-nav li { - margin-bottom: 0; - list-style: none; - width: 50%; -} -.schedule-nav a { - display: block; - padding: 0.5rem 1rem; - font-weight: 600; - text-align: center; -} -@media screen and (min-width: 45em) { - .schedule-nav li { - width: 33.33%; - } -} -@media screen and (min-width: 57.5em) { - .schedule-nav { - display: flex; - } - .schedule-nav-title { - display: inline-block; - margin-bottom: 0; - } - .schedule-nav-list { - flex: 1; - flex-flow: row nowrap; - justify-content: space-between; - } - .schedule-nav li { - flex: 1; - width: auto; - } - .schedule-nav li, - .schedule-nav a { - display: flex; - justify-content: center; - align-items: center; - margin-bottom: 0; - } - .schedule-nav a { - padding-right: 0.5rem; - padding-left: 0.5rem; - } -} - -.speaker-template { - position: relative; - padding: 30px 30px 0 30px; - width: 1200px; - height: 630px; - background-color: #F4E9DC; - background-image: url(/static/img/theme/speaker-card/speaker-card-bg.svg); - background-position: top right; - background-size: 50% 100%; - background-repeat: no-repeat; - display: flex; - flex-flow: column; - justify-content: center; -} - -.speaker-template::after { - display: block; - position: absolute; - top: 0; - right: 0; - z-index: 1; - width: 436px; - height: 164px; - background-image: url(/static/img/theme/speaker-card/banner.svg); - background-repeat: no-repeat; - background-size: contain; - content: ""; -} - -.speaker-template-name, -.speaker-template-session-title { - max-width: 600px; -} - -.speaker-template-name { - position: relative; - font-size: 3rem; - font-weight: 700; - color: #140A44; -} - -.speaker-template-name::after { - display: block; - position: relative; - margin: 0.5rem 0 1rem; - width: 36%; - height: 26px; - background-image: url(/static/img/theme/speaker-card/line.svg); - background-repeat: no-repeat; - background-size: auto 100%; - content: ""; -} - -.speaker-template-session-title { - font-size: 2.5rem; - font-weight: 400; - color: #150944; - line-height: 1.2; -} -.speaker-template-session-title + .speaker-template-session-title { - margin-top: 2rem; -} - -.speaker-template-photo { - position: absolute; - right: 30px; - top: 40px; - z-index: 0; - -webkit-mask-image: url(/static/img/theme/speaker-card/speaker-mask.svg); - mask-image: url(/static/img/theme/speaker-card/speaker-mask.svg); - -webkit-mask-repeat: no-repeat; - mask-repeat: no-repeat; - -webkit-mask-size: cover; - mask-size: cover; - width: 414px; - height: 414px; - object-fit: contain; -} - -.partner { - margin-bottom: 2rem; -} - -.partner-name { - font-size: 1.7307692308rem; - font-weight: 400; -} - -.partner-url { - font-size: 0.9615384615rem; - font-weight: 400; -} - -.partner-logo { - margin-bottom: 1rem; -} - -.partner-logo.portrait { - max-height: 200px; -} - -.partner-logo.landscape { - max-width: 300px; -} - -.partner-footer h3 { - margin-bottom: 2rem; -} -.partner-footer .lead { - font-size: 0.9615384615rem; - font-weight: 700; - text-transform: uppercase; -} -.partner-footer .partner-list { - position: relative; - margin-bottom: 2rem; -} -.partner-footer .partner-list:not(:last-child):after { - position: absolute; - bottom: 0; - display: block; - width: 80%; - height: 1px; - background: #E9E9E9; - content: ""; -} - -.partner-list { - display: flex; - flex-flow: row wrap; - justify-content: center; - align-items: center; -} - -.partner-block { - padding: 0 1rem 1rem; - width: 100%; -} -@media screen and (min-width: 32.75em) { - .partner-block { - width: 33.33%; - } -} -@media print, screen and (min-width: 55.625em) { - .partner-block { - width: 25%; - } -} -@media print, screen and (min-width: 64em) { - .partner-block { - width: 20%; - } -} - -.partner-list .partner-logo.portrait { - max-height: 70px; -} -.partner-list .partner-logo.landscape { - max-width: 160px; -} - -/* -// LEGACY -.partner-list { - list-style: none; - margin: 0; - padding: 0; - text-align: center; - - .item { - display: inline-block; - max-width: 200px; - margin: 0.5em; - } - - .partner { - display: block; - opacity: 0.7; - transition: all 300ms ease; - filter: grayscale(100%); - - &:hover { - filter: grayscale(0%); - opacity: 1; - } - } -} -*/ -.social-icons { - margin: 2em auto; - list-style: none; -} -.social-icons li { - display: inline-block; - margin: 0 1em; -} -.profile .social-icons { - margin: 1em 0; -} -.profile .social-icons li { - margin: 0 0.5em; -} - -.social-icons a { - display: block; -} -.social-icons a svg { - width: 42px; - height: 42px; - fill: #140A44; -} -.social-icons a:hover svg { - fill: #FFFFFF; -} -.social-icons a.facebook:hover svg { - fill: #44649D; -} -.social-icons a.twitter:hover svg { - fill: #1DB4EB; -} -.social-icons a.linkedin:hover svg { - fill: #2b75b2; -} -.social-icons a.instagram:hover svg { - fill: #356692; -} -.social-icons a.github:hover svg { - fill: #4078c0; -} -.social-icons a.mastodon:hover svg { - fill: #3088D4; -} - -.social-icons.highlight svg { - fill: #FDCA85; -} diff --git a/static/main.js b/static/main.js deleted file mode 100644 index 7ee1ca77..00000000 --- a/static/main.js +++ /dev/null @@ -1,2 +0,0 @@ -/*! For license information please see main.js.LICENSE.txt */ -(()=>{var t={755:function(t,e){var n;!function(e,n){"use strict";"object"==typeof t.exports?t.exports=e.document?n(e,!0):function(t){if(!t.document)throw new Error("jQuery requires a window with a document");return n(t)}:n(e)}("undefined"!=typeof window?window:this,(function(i,s){"use strict";var o=[],a=Object.getPrototypeOf,r=o.slice,l=o.flat?function(t){return o.flat.call(t)}:function(t){return o.concat.apply([],t)},c=o.push,u=o.indexOf,h={},d=h.toString,f=h.hasOwnProperty,p=f.toString,v=p.call(Object),g={},m=function(t){return"function"==typeof t&&"number"!=typeof t.nodeType&&"function"!=typeof t.item},y=function(t){return null!=t&&t===t.window},b=i.document,w={type:!0,src:!0,nonce:!0,noModule:!0};function $(t,e,n){var i,s,o=(n=n||b).createElement("script");if(o.text=t,e)for(i in w)(s=e[i]||e.getAttribute&&e.getAttribute(i))&&o.setAttribute(i,s);n.head.appendChild(o).parentNode.removeChild(o)}function k(t){return null==t?t+"":"object"==typeof t||"function"==typeof t?h[d.call(t)]||"object":typeof t}var C="3.6.4",x=function(t,e){return new x.fn.init(t,e)};function _(t){var e=!!t&&"length"in t&&t.length,n=k(t);return!m(t)&&!y(t)&&("array"===n||0===e||"number"==typeof e&&e>0&&e-1 in t)}x.fn=x.prototype={jquery:C,constructor:x,length:0,toArray:function(){return r.call(this)},get:function(t){return null==t?r.call(this):t<0?this[t+this.length]:this[t]},pushStack:function(t){var e=x.merge(this.constructor(),t);return e.prevObject=this,e},each:function(t){return x.each(this,t)},map:function(t){return this.pushStack(x.map(this,(function(e,n){return t.call(e,n,e)})))},slice:function(){return this.pushStack(r.apply(this,arguments))},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},even:function(){return this.pushStack(x.grep(this,(function(t,e){return(e+1)%2})))},odd:function(){return this.pushStack(x.grep(this,(function(t,e){return e%2})))},eq:function(t){var e=this.length,n=+t+(t<0?e:0);return this.pushStack(n>=0&&n+~]|"+P+")"+P+"*"),U=new RegExp(P+"|>"),G=new RegExp(N),Y=new RegExp("^"+I+"$"),V={ID:new RegExp("^#("+I+")"),CLASS:new RegExp("^\\.("+I+")"),TAG:new RegExp("^("+I+"|[*])"),ATTR:new RegExp("^"+M),PSEUDO:new RegExp("^"+N),CHILD:new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\("+P+"*(even|odd|(([+-]|)(\\d*)n|)"+P+"*(?:([+-]|)"+P+"*(\\d+)|))"+P+"*\\)|)","i"),bool:new RegExp("^(?:"+q+")$","i"),needsContext:new RegExp("^"+P+"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\("+P+"*((?:-\\d)?\\d*)"+P+"*\\)|)(?=[^-]|$)","i")},Q=/HTML$/i,X=/^(?:input|select|textarea|button)$/i,K=/^h\d$/i,Z=/^[^{]+\{\s*\[native \w/,J=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,tt=/[+~]/,et=new RegExp("\\\\[\\da-fA-F]{1,6}"+P+"?|\\\\([^\\r\\n\\f])","g"),nt=function(t,e){var n="0x"+t.slice(1)-65536;return e||(n<0?String.fromCharCode(n+65536):String.fromCharCode(n>>10|55296,1023&n|56320))},it=/([\0-\x1f\x7f]|^-?\d)|^-$|[^\0-\x1f\x7f-\uFFFF\w-]/g,st=function(t,e){return e?"\0"===t?"�":t.slice(0,-1)+"\\"+t.charCodeAt(t.length-1).toString(16)+" ":"\\"+t},ot=function(){d()},at=wt((function(t){return!0===t.disabled&&"fieldset"===t.nodeName.toLowerCase()}),{dir:"parentNode",next:"legend"});try{D.apply(S=H.call($.childNodes),$.childNodes),S[$.childNodes.length].nodeType}catch(t){D={apply:S.length?function(t,e){L.apply(t,H.call(e))}:function(t,e){for(var n=t.length,i=0;t[n++]=e[i++];);t.length=n-1}}}function rt(t,e,i,s){var o,r,c,u,h,p,m,y=e&&e.ownerDocument,$=e?e.nodeType:9;if(i=i||[],"string"!=typeof t||!t||1!==$&&9!==$&&11!==$)return i;if(!s&&(d(e),e=e||f,v)){if(11!==$&&(h=J.exec(t)))if(o=h[1]){if(9===$){if(!(c=e.getElementById(o)))return i;if(c.id===o)return i.push(c),i}else if(y&&(c=y.getElementById(o))&&b(e,c)&&c.id===o)return i.push(c),i}else{if(h[2])return D.apply(i,e.getElementsByTagName(t)),i;if((o=h[3])&&n.getElementsByClassName&&e.getElementsByClassName)return D.apply(i,e.getElementsByClassName(o)),i}if(n.qsa&&!z[t+" "]&&(!g||!g.test(t))&&(1!==$||"object"!==e.nodeName.toLowerCase())){if(m=t,y=e,1===$&&(U.test(t)||W.test(t))){for((y=tt.test(t)&&mt(e.parentNode)||e)===e&&n.scope||((u=e.getAttribute("id"))?u=u.replace(it,st):e.setAttribute("id",u=w)),r=(p=a(t)).length;r--;)p[r]=(u?"#"+u:":scope")+" "+bt(p[r]);m=p.join(",")}try{return D.apply(i,y.querySelectorAll(m)),i}catch(e){z(t,!0)}finally{u===w&&e.removeAttribute("id")}}}return l(t.replace(F,"$1"),e,i,s)}function lt(){var t=[];return function e(n,s){return t.push(n+" ")>i.cacheLength&&delete e[t.shift()],e[n+" "]=s}}function ct(t){return t[w]=!0,t}function ut(t){var e=f.createElement("fieldset");try{return!!t(e)}catch(t){return!1}finally{e.parentNode&&e.parentNode.removeChild(e),e=null}}function ht(t,e){for(var n=t.split("|"),s=n.length;s--;)i.attrHandle[n[s]]=e}function dt(t,e){var n=e&&t,i=n&&1===t.nodeType&&1===e.nodeType&&t.sourceIndex-e.sourceIndex;if(i)return i;if(n)for(;n=n.nextSibling;)if(n===e)return-1;return t?1:-1}function ft(t){return function(e){return"input"===e.nodeName.toLowerCase()&&e.type===t}}function pt(t){return function(e){var n=e.nodeName.toLowerCase();return("input"===n||"button"===n)&&e.type===t}}function vt(t){return function(e){return"form"in e?e.parentNode&&!1===e.disabled?"label"in e?"label"in e.parentNode?e.parentNode.disabled===t:e.disabled===t:e.isDisabled===t||e.isDisabled!==!t&&at(e)===t:e.disabled===t:"label"in e&&e.disabled===t}}function gt(t){return ct((function(e){return e=+e,ct((function(n,i){for(var s,o=t([],n.length,e),a=o.length;a--;)n[s=o[a]]&&(n[s]=!(i[s]=n[s]))}))}))}function mt(t){return t&&void 0!==t.getElementsByTagName&&t}for(e in n=rt.support={},o=rt.isXML=function(t){var e=t&&t.namespaceURI,n=t&&(t.ownerDocument||t).documentElement;return!Q.test(e||n&&n.nodeName||"HTML")},d=rt.setDocument=function(t){var e,s,a=t?t.ownerDocument||t:$;return a!=f&&9===a.nodeType&&a.documentElement?(p=(f=a).documentElement,v=!o(f),$!=f&&(s=f.defaultView)&&s.top!==s&&(s.addEventListener?s.addEventListener("unload",ot,!1):s.attachEvent&&s.attachEvent("onunload",ot)),n.scope=ut((function(t){return p.appendChild(t).appendChild(f.createElement("div")),void 0!==t.querySelectorAll&&!t.querySelectorAll(":scope fieldset div").length})),n.cssHas=ut((function(){try{return f.querySelector(":has(*,:jqfake)"),!1}catch(t){return!0}})),n.attributes=ut((function(t){return t.className="i",!t.getAttribute("className")})),n.getElementsByTagName=ut((function(t){return t.appendChild(f.createComment("")),!t.getElementsByTagName("*").length})),n.getElementsByClassName=Z.test(f.getElementsByClassName),n.getById=ut((function(t){return p.appendChild(t).id=w,!f.getElementsByName||!f.getElementsByName(w).length})),n.getById?(i.filter.ID=function(t){var e=t.replace(et,nt);return function(t){return t.getAttribute("id")===e}},i.find.ID=function(t,e){if(void 0!==e.getElementById&&v){var n=e.getElementById(t);return n?[n]:[]}}):(i.filter.ID=function(t){var e=t.replace(et,nt);return function(t){var n=void 0!==t.getAttributeNode&&t.getAttributeNode("id");return n&&n.value===e}},i.find.ID=function(t,e){if(void 0!==e.getElementById&&v){var n,i,s,o=e.getElementById(t);if(o){if((n=o.getAttributeNode("id"))&&n.value===t)return[o];for(s=e.getElementsByName(t),i=0;o=s[i++];)if((n=o.getAttributeNode("id"))&&n.value===t)return[o]}return[]}}),i.find.TAG=n.getElementsByTagName?function(t,e){return void 0!==e.getElementsByTagName?e.getElementsByTagName(t):n.qsa?e.querySelectorAll(t):void 0}:function(t,e){var n,i=[],s=0,o=e.getElementsByTagName(t);if("*"===t){for(;n=o[s++];)1===n.nodeType&&i.push(n);return i}return o},i.find.CLASS=n.getElementsByClassName&&function(t,e){if(void 0!==e.getElementsByClassName&&v)return e.getElementsByClassName(t)},m=[],g=[],(n.qsa=Z.test(f.querySelectorAll))&&(ut((function(t){var e;p.appendChild(t).innerHTML="",t.querySelectorAll("[msallowcapture^='']").length&&g.push("[*^$]="+P+"*(?:''|\"\")"),t.querySelectorAll("[selected]").length||g.push("\\["+P+"*(?:value|"+q+")"),t.querySelectorAll("[id~="+w+"-]").length||g.push("~="),(e=f.createElement("input")).setAttribute("name",""),t.appendChild(e),t.querySelectorAll("[name='']").length||g.push("\\["+P+"*name"+P+"*="+P+"*(?:''|\"\")"),t.querySelectorAll(":checked").length||g.push(":checked"),t.querySelectorAll("a#"+w+"+*").length||g.push(".#.+[+~]"),t.querySelectorAll("\\\f"),g.push("[\\r\\n\\f]")})),ut((function(t){t.innerHTML="";var e=f.createElement("input");e.setAttribute("type","hidden"),t.appendChild(e).setAttribute("name","D"),t.querySelectorAll("[name=d]").length&&g.push("name"+P+"*[*^$|!~]?="),2!==t.querySelectorAll(":enabled").length&&g.push(":enabled",":disabled"),p.appendChild(t).disabled=!0,2!==t.querySelectorAll(":disabled").length&&g.push(":enabled",":disabled"),t.querySelectorAll("*,:x"),g.push(",.*:")}))),(n.matchesSelector=Z.test(y=p.matches||p.webkitMatchesSelector||p.mozMatchesSelector||p.oMatchesSelector||p.msMatchesSelector))&&ut((function(t){n.disconnectedMatch=y.call(t,"*"),y.call(t,"[s!='']:x"),m.push("!=",N)})),n.cssHas||g.push(":has"),g=g.length&&new RegExp(g.join("|")),m=m.length&&new RegExp(m.join("|")),e=Z.test(p.compareDocumentPosition),b=e||Z.test(p.contains)?function(t,e){var n=9===t.nodeType&&t.documentElement||t,i=e&&e.parentNode;return t===i||!(!i||1!==i.nodeType||!(n.contains?n.contains(i):t.compareDocumentPosition&&16&t.compareDocumentPosition(i)))}:function(t,e){if(e)for(;e=e.parentNode;)if(e===t)return!0;return!1},A=e?function(t,e){if(t===e)return h=!0,0;var i=!t.compareDocumentPosition-!e.compareDocumentPosition;return i||(1&(i=(t.ownerDocument||t)==(e.ownerDocument||e)?t.compareDocumentPosition(e):1)||!n.sortDetached&&e.compareDocumentPosition(t)===i?t==f||t.ownerDocument==$&&b($,t)?-1:e==f||e.ownerDocument==$&&b($,e)?1:u?R(u,t)-R(u,e):0:4&i?-1:1)}:function(t,e){if(t===e)return h=!0,0;var n,i=0,s=t.parentNode,o=e.parentNode,a=[t],r=[e];if(!s||!o)return t==f?-1:e==f?1:s?-1:o?1:u?R(u,t)-R(u,e):0;if(s===o)return dt(t,e);for(n=t;n=n.parentNode;)a.unshift(n);for(n=e;n=n.parentNode;)r.unshift(n);for(;a[i]===r[i];)i++;return i?dt(a[i],r[i]):a[i]==$?-1:r[i]==$?1:0},f):f},rt.matches=function(t,e){return rt(t,null,null,e)},rt.matchesSelector=function(t,e){if(d(t),n.matchesSelector&&v&&!z[e+" "]&&(!m||!m.test(e))&&(!g||!g.test(e)))try{var i=y.call(t,e);if(i||n.disconnectedMatch||t.document&&11!==t.document.nodeType)return i}catch(t){z(e,!0)}return rt(e,f,null,[t]).length>0},rt.contains=function(t,e){return(t.ownerDocument||t)!=f&&d(t),b(t,e)},rt.attr=function(t,e){(t.ownerDocument||t)!=f&&d(t);var s=i.attrHandle[e.toLowerCase()],o=s&&E.call(i.attrHandle,e.toLowerCase())?s(t,e,!v):void 0;return void 0!==o?o:n.attributes||!v?t.getAttribute(e):(o=t.getAttributeNode(e))&&o.specified?o.value:null},rt.escape=function(t){return(t+"").replace(it,st)},rt.error=function(t){throw new Error("Syntax error, unrecognized expression: "+t)},rt.uniqueSort=function(t){var e,i=[],s=0,o=0;if(h=!n.detectDuplicates,u=!n.sortStable&&t.slice(0),t.sort(A),h){for(;e=t[o++];)e===t[o]&&(s=i.push(o));for(;s--;)t.splice(i[s],1)}return u=null,t},s=rt.getText=function(t){var e,n="",i=0,o=t.nodeType;if(o){if(1===o||9===o||11===o){if("string"==typeof t.textContent)return t.textContent;for(t=t.firstChild;t;t=t.nextSibling)n+=s(t)}else if(3===o||4===o)return t.nodeValue}else for(;e=t[i++];)n+=s(e);return n},i=rt.selectors={cacheLength:50,createPseudo:ct,match:V,attrHandle:{},find:{},relative:{">":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(t){return t[1]=t[1].replace(et,nt),t[3]=(t[3]||t[4]||t[5]||"").replace(et,nt),"~="===t[2]&&(t[3]=" "+t[3]+" "),t.slice(0,4)},CHILD:function(t){return t[1]=t[1].toLowerCase(),"nth"===t[1].slice(0,3)?(t[3]||rt.error(t[0]),t[4]=+(t[4]?t[5]+(t[6]||1):2*("even"===t[3]||"odd"===t[3])),t[5]=+(t[7]+t[8]||"odd"===t[3])):t[3]&&rt.error(t[0]),t},PSEUDO:function(t){var e,n=!t[6]&&t[2];return V.CHILD.test(t[0])?null:(t[3]?t[2]=t[4]||t[5]||"":n&&G.test(n)&&(e=a(n,!0))&&(e=n.indexOf(")",n.length-e)-n.length)&&(t[0]=t[0].slice(0,e),t[2]=n.slice(0,e)),t.slice(0,3))}},filter:{TAG:function(t){var e=t.replace(et,nt).toLowerCase();return"*"===t?function(){return!0}:function(t){return t.nodeName&&t.nodeName.toLowerCase()===e}},CLASS:function(t){var e=x[t+" "];return e||(e=new RegExp("(^|"+P+")"+t+"("+P+"|$)"))&&x(t,(function(t){return e.test("string"==typeof t.className&&t.className||void 0!==t.getAttribute&&t.getAttribute("class")||"")}))},ATTR:function(t,e,n){return function(i){var s=rt.attr(i,t);return null==s?"!="===e:!e||(s+="","="===e?s===n:"!="===e?s!==n:"^="===e?n&&0===s.indexOf(n):"*="===e?n&&s.indexOf(n)>-1:"$="===e?n&&s.slice(-n.length)===n:"~="===e?(" "+s.replace(j," ")+" ").indexOf(n)>-1:"|="===e&&(s===n||s.slice(0,n.length+1)===n+"-"))}},CHILD:function(t,e,n,i,s){var o="nth"!==t.slice(0,3),a="last"!==t.slice(-4),r="of-type"===e;return 1===i&&0===s?function(t){return!!t.parentNode}:function(e,n,l){var c,u,h,d,f,p,v=o!==a?"nextSibling":"previousSibling",g=e.parentNode,m=r&&e.nodeName.toLowerCase(),y=!l&&!r,b=!1;if(g){if(o){for(;v;){for(d=e;d=d[v];)if(r?d.nodeName.toLowerCase()===m:1===d.nodeType)return!1;p=v="only"===t&&!p&&"nextSibling"}return!0}if(p=[a?g.firstChild:g.lastChild],a&&y){for(b=(f=(c=(u=(h=(d=g)[w]||(d[w]={}))[d.uniqueID]||(h[d.uniqueID]={}))[t]||[])[0]===k&&c[1])&&c[2],d=f&&g.childNodes[f];d=++f&&d&&d[v]||(b=f=0)||p.pop();)if(1===d.nodeType&&++b&&d===e){u[t]=[k,f,b];break}}else if(y&&(b=f=(c=(u=(h=(d=e)[w]||(d[w]={}))[d.uniqueID]||(h[d.uniqueID]={}))[t]||[])[0]===k&&c[1]),!1===b)for(;(d=++f&&d&&d[v]||(b=f=0)||p.pop())&&((r?d.nodeName.toLowerCase()!==m:1!==d.nodeType)||!++b||(y&&((u=(h=d[w]||(d[w]={}))[d.uniqueID]||(h[d.uniqueID]={}))[t]=[k,b]),d!==e)););return(b-=s)===i||b%i==0&&b/i>=0}}},PSEUDO:function(t,e){var n,s=i.pseudos[t]||i.setFilters[t.toLowerCase()]||rt.error("unsupported pseudo: "+t);return s[w]?s(e):s.length>1?(n=[t,t,"",e],i.setFilters.hasOwnProperty(t.toLowerCase())?ct((function(t,n){for(var i,o=s(t,e),a=o.length;a--;)t[i=R(t,o[a])]=!(n[i]=o[a])})):function(t){return s(t,0,n)}):s}},pseudos:{not:ct((function(t){var e=[],n=[],i=r(t.replace(F,"$1"));return i[w]?ct((function(t,e,n,s){for(var o,a=i(t,null,s,[]),r=t.length;r--;)(o=a[r])&&(t[r]=!(e[r]=o))})):function(t,s,o){return e[0]=t,i(e,null,o,n),e[0]=null,!n.pop()}})),has:ct((function(t){return function(e){return rt(t,e).length>0}})),contains:ct((function(t){return t=t.replace(et,nt),function(e){return(e.textContent||s(e)).indexOf(t)>-1}})),lang:ct((function(t){return Y.test(t||"")||rt.error("unsupported lang: "+t),t=t.replace(et,nt).toLowerCase(),function(e){var n;do{if(n=v?e.lang:e.getAttribute("xml:lang")||e.getAttribute("lang"))return(n=n.toLowerCase())===t||0===n.indexOf(t+"-")}while((e=e.parentNode)&&1===e.nodeType);return!1}})),target:function(e){var n=t.location&&t.location.hash;return n&&n.slice(1)===e.id},root:function(t){return t===p},focus:function(t){return t===f.activeElement&&(!f.hasFocus||f.hasFocus())&&!!(t.type||t.href||~t.tabIndex)},enabled:vt(!1),disabled:vt(!0),checked:function(t){var e=t.nodeName.toLowerCase();return"input"===e&&!!t.checked||"option"===e&&!!t.selected},selected:function(t){return t.parentNode&&t.parentNode.selectedIndex,!0===t.selected},empty:function(t){for(t=t.firstChild;t;t=t.nextSibling)if(t.nodeType<6)return!1;return!0},parent:function(t){return!i.pseudos.empty(t)},header:function(t){return K.test(t.nodeName)},input:function(t){return X.test(t.nodeName)},button:function(t){var e=t.nodeName.toLowerCase();return"input"===e&&"button"===t.type||"button"===e},text:function(t){var e;return"input"===t.nodeName.toLowerCase()&&"text"===t.type&&(null==(e=t.getAttribute("type"))||"text"===e.toLowerCase())},first:gt((function(){return[0]})),last:gt((function(t,e){return[e-1]})),eq:gt((function(t,e,n){return[n<0?n+e:n]})),even:gt((function(t,e){for(var n=0;ne?e:n;--i>=0;)t.push(i);return t})),gt:gt((function(t,e,n){for(var i=n<0?n+e:n;++i1?function(e,n,i){for(var s=t.length;s--;)if(!t[s](e,n,i))return!1;return!0}:t[0]}function kt(t,e,n,i,s){for(var o,a=[],r=0,l=t.length,c=null!=e;r-1&&(o[c]=!(a[c]=h))}}else m=kt(m===a?m.splice(p,m.length):m),s?s(null,a,m,l):D.apply(a,m)}))}function xt(t){for(var e,n,s,o=t.length,a=i.relative[t[0].type],r=a||i.relative[" "],l=a?1:0,u=wt((function(t){return t===e}),r,!0),h=wt((function(t){return R(e,t)>-1}),r,!0),d=[function(t,n,i){var s=!a&&(i||n!==c)||((e=n).nodeType?u(t,n,i):h(t,n,i));return e=null,s}];l1&&$t(d),l>1&&bt(t.slice(0,l-1).concat({value:" "===t[l-2].type?"*":""})).replace(F,"$1"),n,l0,s=t.length>0,o=function(o,a,r,l,u){var h,p,g,m=0,y="0",b=o&&[],w=[],$=c,C=o||s&&i.find.TAG("*",u),x=k+=null==$?1:Math.random()||.1,_=C.length;for(u&&(c=a==f||a||u);y!==_&&null!=(h=C[y]);y++){if(s&&h){for(p=0,a||h.ownerDocument==f||(d(h),r=!v);g=t[p++];)if(g(h,a||f,r)){l.push(h);break}u&&(k=x)}n&&((h=!g&&h)&&m--,o&&b.push(h))}if(m+=y,n&&y!==m){for(p=0;g=e[p++];)g(b,w,a,r);if(o){if(m>0)for(;y--;)b[y]||w[y]||(w[y]=O.call(l));w=kt(w)}D.apply(l,w),u&&!o&&w.length>0&&m+e.length>1&&rt.uniqueSort(l)}return u&&(k=x,c=$),b};return n?ct(o):o}(o,s)),r.selector=t}return r},l=rt.select=function(t,e,n,s){var o,l,c,u,h,d="function"==typeof t&&t,f=!s&&a(t=d.selector||t);if(n=n||[],1===f.length){if((l=f[0]=f[0].slice(0)).length>2&&"ID"===(c=l[0]).type&&9===e.nodeType&&v&&i.relative[l[1].type]){if(!(e=(i.find.ID(c.matches[0].replace(et,nt),e)||[])[0]))return n;d&&(e=e.parentNode),t=t.slice(l.shift().value.length)}for(o=V.needsContext.test(t)?0:l.length;o--&&(c=l[o],!i.relative[u=c.type]);)if((h=i.find[u])&&(s=h(c.matches[0].replace(et,nt),tt.test(l[0].type)&&mt(e.parentNode)||e))){if(l.splice(o,1),!(t=s.length&&bt(l)))return D.apply(n,s),n;break}}return(d||r(t,f))(s,e,!v,n,!e||tt.test(t)&&mt(e.parentNode)||e),n},n.sortStable=w.split("").sort(A).join("")===w,n.detectDuplicates=!!h,d(),n.sortDetached=ut((function(t){return 1&t.compareDocumentPosition(f.createElement("fieldset"))})),ut((function(t){return t.innerHTML="","#"===t.firstChild.getAttribute("href")}))||ht("type|href|height|width",(function(t,e,n){if(!n)return t.getAttribute(e,"type"===e.toLowerCase()?1:2)})),n.attributes&&ut((function(t){return t.innerHTML="",t.firstChild.setAttribute("value",""),""===t.firstChild.getAttribute("value")}))||ht("value",(function(t,e,n){if(!n&&"input"===t.nodeName.toLowerCase())return t.defaultValue})),ut((function(t){return null==t.getAttribute("disabled")}))||ht(q,(function(t,e,n){var i;if(!n)return!0===t[e]?e.toLowerCase():(i=t.getAttributeNode(e))&&i.specified?i.value:null})),rt}(i);x.find=T,x.expr=T.selectors,x.expr[":"]=x.expr.pseudos,x.uniqueSort=x.unique=T.uniqueSort,x.text=T.getText,x.isXMLDoc=T.isXML,x.contains=T.contains,x.escapeSelector=T.escape;var z=function(t,e,n){for(var i=[],s=void 0!==n;(t=t[e])&&9!==t.nodeType;)if(1===t.nodeType){if(s&&x(t).is(n))break;i.push(t)}return i},A=function(t,e){for(var n=[];t;t=t.nextSibling)1===t.nodeType&&t!==e&&n.push(t);return n},E=x.expr.match.needsContext;function S(t,e){return t.nodeName&&t.nodeName.toLowerCase()===e.toLowerCase()}var O=/^<([a-z][^\/\0>:\x20\t\r\n\f]*)[\x20\t\r\n\f]*\/?>(?:<\/\1>|)$/i;function L(t,e,n){return m(e)?x.grep(t,(function(t,i){return!!e.call(t,i,t)!==n})):e.nodeType?x.grep(t,(function(t){return t===e!==n})):"string"!=typeof e?x.grep(t,(function(t){return u.call(e,t)>-1!==n})):x.filter(e,t,n)}x.filter=function(t,e,n){var i=e[0];return n&&(t=":not("+t+")"),1===e.length&&1===i.nodeType?x.find.matchesSelector(i,t)?[i]:[]:x.find.matches(t,x.grep(e,(function(t){return 1===t.nodeType})))},x.fn.extend({find:function(t){var e,n,i=this.length,s=this;if("string"!=typeof t)return this.pushStack(x(t).filter((function(){for(e=0;e1?x.uniqueSort(n):n},filter:function(t){return this.pushStack(L(this,t||[],!1))},not:function(t){return this.pushStack(L(this,t||[],!0))},is:function(t){return!!L(this,"string"==typeof t&&E.test(t)?x(t):t||[],!1).length}});var D,H=/^(?:\s*(<[\w\W]+>)[^>]*|#([\w-]+))$/;(x.fn.init=function(t,e,n){var i,s;if(!t)return this;if(n=n||D,"string"==typeof t){if(!(i="<"===t[0]&&">"===t[t.length-1]&&t.length>=3?[null,t,null]:H.exec(t))||!i[1]&&e)return!e||e.jquery?(e||n).find(t):this.constructor(e).find(t);if(i[1]){if(e=e instanceof x?e[0]:e,x.merge(this,x.parseHTML(i[1],e&&e.nodeType?e.ownerDocument||e:b,!0)),O.test(i[1])&&x.isPlainObject(e))for(i in e)m(this[i])?this[i](e[i]):this.attr(i,e[i]);return this}return(s=b.getElementById(i[2]))&&(this[0]=s,this.length=1),this}return t.nodeType?(this[0]=t,this.length=1,this):m(t)?void 0!==n.ready?n.ready(t):t(x):x.makeArray(t,this)}).prototype=x.fn,D=x(b);var R=/^(?:parents|prev(?:Until|All))/,q={children:!0,contents:!0,next:!0,prev:!0};function P(t,e){for(;(t=t[e])&&1!==t.nodeType;);return t}x.fn.extend({has:function(t){var e=x(t,this),n=e.length;return this.filter((function(){for(var t=0;t-1:1===n.nodeType&&x.find.matchesSelector(n,t))){o.push(n);break}return this.pushStack(o.length>1?x.uniqueSort(o):o)},index:function(t){return t?"string"==typeof t?u.call(x(t),this[0]):u.call(this,t.jquery?t[0]:t):this[0]&&this[0].parentNode?this.first().prevAll().length:-1},add:function(t,e){return this.pushStack(x.uniqueSort(x.merge(this.get(),x(t,e))))},addBack:function(t){return this.add(null==t?this.prevObject:this.prevObject.filter(t))}}),x.each({parent:function(t){var e=t.parentNode;return e&&11!==e.nodeType?e:null},parents:function(t){return z(t,"parentNode")},parentsUntil:function(t,e,n){return z(t,"parentNode",n)},next:function(t){return P(t,"nextSibling")},prev:function(t){return P(t,"previousSibling")},nextAll:function(t){return z(t,"nextSibling")},prevAll:function(t){return z(t,"previousSibling")},nextUntil:function(t,e,n){return z(t,"nextSibling",n)},prevUntil:function(t,e,n){return z(t,"previousSibling",n)},siblings:function(t){return A((t.parentNode||{}).firstChild,t)},children:function(t){return A(t.firstChild)},contents:function(t){return null!=t.contentDocument&&a(t.contentDocument)?t.contentDocument:(S(t,"template")&&(t=t.content||t),x.merge([],t.childNodes))}},(function(t,e){x.fn[t]=function(n,i){var s=x.map(this,e,n);return"Until"!==t.slice(-5)&&(i=n),i&&"string"==typeof i&&(s=x.filter(i,s)),this.length>1&&(q[t]||x.uniqueSort(s),R.test(t)&&s.reverse()),this.pushStack(s)}}));var I=/[^\x20\t\r\n\f]+/g;function M(t){return t}function N(t){throw t}function j(t,e,n,i){var s;try{t&&m(s=t.promise)?s.call(t).done(e).fail(n):t&&m(s=t.then)?s.call(t,e,n):e.apply(void 0,[t].slice(i))}catch(t){n.apply(void 0,[t])}}x.Callbacks=function(t){t="string"==typeof t?function(t){var e={};return x.each(t.match(I)||[],(function(t,n){e[n]=!0})),e}(t):x.extend({},t);var e,n,i,s,o=[],a=[],r=-1,l=function(){for(s=s||t.once,i=e=!0;a.length;r=-1)for(n=a.shift();++r-1;)o.splice(n,1),n<=r&&r--})),this},has:function(t){return t?x.inArray(t,o)>-1:o.length>0},empty:function(){return o&&(o=[]),this},disable:function(){return s=a=[],o=n="",this},disabled:function(){return!o},lock:function(){return s=a=[],n||e||(o=n=""),this},locked:function(){return!!s},fireWith:function(t,n){return s||(n=[t,(n=n||[]).slice?n.slice():n],a.push(n),e||l()),this},fire:function(){return c.fireWith(this,arguments),this},fired:function(){return!!i}};return c},x.extend({Deferred:function(t){var e=[["notify","progress",x.Callbacks("memory"),x.Callbacks("memory"),2],["resolve","done",x.Callbacks("once memory"),x.Callbacks("once memory"),0,"resolved"],["reject","fail",x.Callbacks("once memory"),x.Callbacks("once memory"),1,"rejected"]],n="pending",s={state:function(){return n},always:function(){return o.done(arguments).fail(arguments),this},catch:function(t){return s.then(null,t)},pipe:function(){var t=arguments;return x.Deferred((function(n){x.each(e,(function(e,i){var s=m(t[i[4]])&&t[i[4]];o[i[1]]((function(){var t=s&&s.apply(this,arguments);t&&m(t.promise)?t.promise().progress(n.notify).done(n.resolve).fail(n.reject):n[i[0]+"With"](this,s?[t]:arguments)}))})),t=null})).promise()},then:function(t,n,s){var o=0;function a(t,e,n,s){return function(){var r=this,l=arguments,c=function(){var i,c;if(!(t=o&&(n!==N&&(r=void 0,l=[i]),e.rejectWith(r,l))}};t?u():(x.Deferred.getStackHook&&(u.stackTrace=x.Deferred.getStackHook()),i.setTimeout(u))}}return x.Deferred((function(i){e[0][3].add(a(0,i,m(s)?s:M,i.notifyWith)),e[1][3].add(a(0,i,m(t)?t:M)),e[2][3].add(a(0,i,m(n)?n:N))})).promise()},promise:function(t){return null!=t?x.extend(t,s):s}},o={};return x.each(e,(function(t,i){var a=i[2],r=i[5];s[i[1]]=a.add,r&&a.add((function(){n=r}),e[3-t][2].disable,e[3-t][3].disable,e[0][2].lock,e[0][3].lock),a.add(i[3].fire),o[i[0]]=function(){return o[i[0]+"With"](this===o?void 0:this,arguments),this},o[i[0]+"With"]=a.fireWith})),s.promise(o),t&&t.call(o,o),o},when:function(t){var e=arguments.length,n=e,i=Array(n),s=r.call(arguments),o=x.Deferred(),a=function(t){return function(n){i[t]=this,s[t]=arguments.length>1?r.call(arguments):n,--e||o.resolveWith(i,s)}};if(e<=1&&(j(t,o.done(a(n)).resolve,o.reject,!e),"pending"===o.state()||m(s[n]&&s[n].then)))return o.then();for(;n--;)j(s[n],a(n),o.reject);return o.promise()}});var F=/^(Eval|Internal|Range|Reference|Syntax|Type|URI)Error$/;x.Deferred.exceptionHook=function(t,e){i.console&&i.console.warn&&t&&F.test(t.name)&&i.console.warn("jQuery.Deferred exception: "+t.message,t.stack,e)},x.readyException=function(t){i.setTimeout((function(){throw t}))};var B=x.Deferred();function W(){b.removeEventListener("DOMContentLoaded",W),i.removeEventListener("load",W),x.ready()}x.fn.ready=function(t){return B.then(t).catch((function(t){x.readyException(t)})),this},x.extend({isReady:!1,readyWait:1,ready:function(t){(!0===t?--x.readyWait:x.isReady)||(x.isReady=!0,!0!==t&&--x.readyWait>0||B.resolveWith(b,[x]))}}),x.ready.then=B.then,"complete"===b.readyState||"loading"!==b.readyState&&!b.documentElement.doScroll?i.setTimeout(x.ready):(b.addEventListener("DOMContentLoaded",W),i.addEventListener("load",W));var U=function(t,e,n,i,s,o,a){var r=0,l=t.length,c=null==n;if("object"===k(n))for(r in s=!0,n)U(t,e,r,n[r],!0,o,a);else if(void 0!==i&&(s=!0,m(i)||(a=!0),c&&(a?(e.call(t,i),e=null):(c=e,e=function(t,e,n){return c.call(x(t),n)})),e))for(;r1,null,!0)},removeData:function(t){return this.each((function(){J.remove(this,t)}))}}),x.extend({queue:function(t,e,n){var i;if(t)return e=(e||"fx")+"queue",i=Z.get(t,e),n&&(!i||Array.isArray(n)?i=Z.access(t,e,x.makeArray(n)):i.push(n)),i||[]},dequeue:function(t,e){e=e||"fx";var n=x.queue(t,e),i=n.length,s=n.shift(),o=x._queueHooks(t,e);"inprogress"===s&&(s=n.shift(),i--),s&&("fx"===e&&n.unshift("inprogress"),delete o.stop,s.call(t,(function(){x.dequeue(t,e)}),o)),!i&&o&&o.empty.fire()},_queueHooks:function(t,e){var n=e+"queueHooks";return Z.get(t,n)||Z.access(t,n,{empty:x.Callbacks("once memory").add((function(){Z.remove(t,[e+"queue",n])}))})}}),x.fn.extend({queue:function(t,e){var n=2;return"string"!=typeof t&&(e=t,t="fx",n--),arguments.length\x20\t\r\n\f]*)/i,yt=/^$|^module$|\/(?:java|ecma)script/i;pt=b.createDocumentFragment().appendChild(b.createElement("div")),(vt=b.createElement("input")).setAttribute("type","radio"),vt.setAttribute("checked","checked"),vt.setAttribute("name","t"),pt.appendChild(vt),g.checkClone=pt.cloneNode(!0).cloneNode(!0).lastChild.checked,pt.innerHTML="",g.noCloneChecked=!!pt.cloneNode(!0).lastChild.defaultValue,pt.innerHTML="",g.option=!!pt.lastChild;var bt={thead:[1,"","
    "],col:[2,"","
    "],tr:[2,"","
    "],td:[3,"","
    "],_default:[0,"",""]};function wt(t,e){var n;return n=void 0!==t.getElementsByTagName?t.getElementsByTagName(e||"*"):void 0!==t.querySelectorAll?t.querySelectorAll(e||"*"):[],void 0===e||e&&S(t,e)?x.merge([t],n):n}function $t(t,e){for(var n=0,i=t.length;n",""]);var kt=/<|&#?\w+;/;function Ct(t,e,n,i,s){for(var o,a,r,l,c,u,h=e.createDocumentFragment(),d=[],f=0,p=t.length;f-1)s&&s.push(o);else if(c=rt(o),a=wt(h.appendChild(o),"script"),c&&$t(a),n)for(u=0;o=a[u++];)yt.test(o.type||"")&&n.push(o);return h}var xt=/^([^.]*)(?:\.(.+)|)/;function _t(){return!0}function Tt(){return!1}function zt(t,e){return t===function(){try{return b.activeElement}catch(t){}}()==("focus"===e)}function At(t,e,n,i,s,o){var a,r;if("object"==typeof e){for(r in"string"!=typeof n&&(i=i||n,n=void 0),e)At(t,r,n,i,e[r],o);return t}if(null==i&&null==s?(s=n,i=n=void 0):null==s&&("string"==typeof n?(s=i,i=void 0):(s=i,i=n,n=void 0)),!1===s)s=Tt;else if(!s)return t;return 1===o&&(a=s,s=function(t){return x().off(t),a.apply(this,arguments)},s.guid=a.guid||(a.guid=x.guid++)),t.each((function(){x.event.add(this,e,s,i,n)}))}function Et(t,e,n){n?(Z.set(t,e,!1),x.event.add(t,e,{namespace:!1,handler:function(t){var i,s,o=Z.get(this,e);if(1&t.isTrigger&&this[e]){if(o.length)(x.event.special[e]||{}).delegateType&&t.stopPropagation();else if(o=r.call(arguments),Z.set(this,e,o),i=n(this,e),this[e](),o!==(s=Z.get(this,e))||i?Z.set(this,e,!1):s={},o!==s)return t.stopImmediatePropagation(),t.preventDefault(),s&&s.value}else o.length&&(Z.set(this,e,{value:x.event.trigger(x.extend(o[0],x.Event.prototype),o.slice(1),this)}),t.stopImmediatePropagation())}})):void 0===Z.get(t,e)&&x.event.add(t,e,_t)}x.event={global:{},add:function(t,e,n,i,s){var o,a,r,l,c,u,h,d,f,p,v,g=Z.get(t);if(X(t))for(n.handler&&(n=(o=n).handler,s=o.selector),s&&x.find.matchesSelector(at,s),n.guid||(n.guid=x.guid++),(l=g.events)||(l=g.events=Object.create(null)),(a=g.handle)||(a=g.handle=function(e){return void 0!==x&&x.event.triggered!==e.type?x.event.dispatch.apply(t,arguments):void 0}),c=(e=(e||"").match(I)||[""]).length;c--;)f=v=(r=xt.exec(e[c])||[])[1],p=(r[2]||"").split(".").sort(),f&&(h=x.event.special[f]||{},f=(s?h.delegateType:h.bindType)||f,h=x.event.special[f]||{},u=x.extend({type:f,origType:v,data:i,handler:n,guid:n.guid,selector:s,needsContext:s&&x.expr.match.needsContext.test(s),namespace:p.join(".")},o),(d=l[f])||((d=l[f]=[]).delegateCount=0,h.setup&&!1!==h.setup.call(t,i,p,a)||t.addEventListener&&t.addEventListener(f,a)),h.add&&(h.add.call(t,u),u.handler.guid||(u.handler.guid=n.guid)),s?d.splice(d.delegateCount++,0,u):d.push(u),x.event.global[f]=!0)},remove:function(t,e,n,i,s){var o,a,r,l,c,u,h,d,f,p,v,g=Z.hasData(t)&&Z.get(t);if(g&&(l=g.events)){for(c=(e=(e||"").match(I)||[""]).length;c--;)if(f=v=(r=xt.exec(e[c])||[])[1],p=(r[2]||"").split(".").sort(),f){for(h=x.event.special[f]||{},d=l[f=(i?h.delegateType:h.bindType)||f]||[],r=r[2]&&new RegExp("(^|\\.)"+p.join("\\.(?:.*\\.|)")+"(\\.|$)"),a=o=d.length;o--;)u=d[o],!s&&v!==u.origType||n&&n.guid!==u.guid||r&&!r.test(u.namespace)||i&&i!==u.selector&&("**"!==i||!u.selector)||(d.splice(o,1),u.selector&&d.delegateCount--,h.remove&&h.remove.call(t,u));a&&!d.length&&(h.teardown&&!1!==h.teardown.call(t,p,g.handle)||x.removeEvent(t,f,g.handle),delete l[f])}else for(f in l)x.event.remove(t,f+e[c],n,i,!0);x.isEmptyObject(l)&&Z.remove(t,"handle events")}},dispatch:function(t){var e,n,i,s,o,a,r=new Array(arguments.length),l=x.event.fix(t),c=(Z.get(this,"events")||Object.create(null))[l.type]||[],u=x.event.special[l.type]||{};for(r[0]=l,e=1;e=1))for(;c!==this;c=c.parentNode||this)if(1===c.nodeType&&("click"!==t.type||!0!==c.disabled)){for(o=[],a={},n=0;n-1:x.find(s,this,null,[c]).length),a[s]&&o.push(i);o.length&&r.push({elem:c,handlers:o})}return c=this,l\s*$/g;function Dt(t,e){return S(t,"table")&&S(11!==e.nodeType?e:e.firstChild,"tr")&&x(t).children("tbody")[0]||t}function Ht(t){return t.type=(null!==t.getAttribute("type"))+"/"+t.type,t}function Rt(t){return"true/"===(t.type||"").slice(0,5)?t.type=t.type.slice(5):t.removeAttribute("type"),t}function qt(t,e){var n,i,s,o,a,r;if(1===e.nodeType){if(Z.hasData(t)&&(r=Z.get(t).events))for(s in Z.remove(e,"handle events"),r)for(n=0,i=r[s].length;n1&&"string"==typeof p&&!g.checkClone&&Ot.test(p))return t.each((function(s){var o=t.eq(s);v&&(e[0]=p.call(this,s,o.html())),It(o,e,n,i)}));if(d&&(o=(s=Ct(e,t[0].ownerDocument,!1,t,i)).firstChild,1===s.childNodes.length&&(s=o),o||i)){for(r=(a=x.map(wt(s,"script"),Ht)).length;h0&&$t(a,!l&&wt(t,"script")),r},cleanData:function(t){for(var e,n,i,s=x.event.special,o=0;void 0!==(n=t[o]);o++)if(X(n)){if(e=n[Z.expando]){if(e.events)for(i in e.events)s[i]?x.event.remove(n,i):x.removeEvent(n,i,e.handle);n[Z.expando]=void 0}n[J.expando]&&(n[J.expando]=void 0)}}}),x.fn.extend({detach:function(t){return Mt(this,t,!0)},remove:function(t){return Mt(this,t)},text:function(t){return U(this,(function(t){return void 0===t?x.text(this):this.empty().each((function(){1!==this.nodeType&&11!==this.nodeType&&9!==this.nodeType||(this.textContent=t)}))}),null,t,arguments.length)},append:function(){return It(this,arguments,(function(t){1!==this.nodeType&&11!==this.nodeType&&9!==this.nodeType||Dt(this,t).appendChild(t)}))},prepend:function(){return It(this,arguments,(function(t){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var e=Dt(this,t);e.insertBefore(t,e.firstChild)}}))},before:function(){return It(this,arguments,(function(t){this.parentNode&&this.parentNode.insertBefore(t,this)}))},after:function(){return It(this,arguments,(function(t){this.parentNode&&this.parentNode.insertBefore(t,this.nextSibling)}))},empty:function(){for(var t,e=0;null!=(t=this[e]);e++)1===t.nodeType&&(x.cleanData(wt(t,!1)),t.textContent="");return this},clone:function(t,e){return t=null!=t&&t,e=null==e?t:e,this.map((function(){return x.clone(this,t,e)}))},html:function(t){return U(this,(function(t){var e=this[0]||{},n=0,i=this.length;if(void 0===t&&1===e.nodeType)return e.innerHTML;if("string"==typeof t&&!St.test(t)&&!bt[(mt.exec(t)||["",""])[1].toLowerCase()]){t=x.htmlPrefilter(t);try{for(;n=0&&(l+=Math.max(0,Math.ceil(t["offset"+e[0].toUpperCase()+e.slice(1)]-o-l-r-.5))||0),l}function se(t,e,n){var i=Ft(t),s=(!g.boxSizingReliable()||n)&&"border-box"===x.css(t,"boxSizing",!1,i),o=s,a=Yt(t,e,i),r="offset"+e[0].toUpperCase()+e.slice(1);if(Nt.test(a)){if(!n)return a;a="auto"}return(!g.boxSizingReliable()&&s||!g.reliableTrDimensions()&&S(t,"tr")||"auto"===a||!parseFloat(a)&&"inline"===x.css(t,"display",!1,i))&&t.getClientRects().length&&(s="border-box"===x.css(t,"boxSizing",!1,i),(o=r in t)&&(a=t[r])),(a=parseFloat(a)||0)+ie(t,e,n||(s?"border":"content"),o,i,a)+"px"}function oe(t,e,n,i,s){return new oe.prototype.init(t,e,n,i,s)}x.extend({cssHooks:{opacity:{get:function(t,e){if(e){var n=Yt(t,"opacity");return""===n?"1":n}}}},cssNumber:{animationIterationCount:!0,columnCount:!0,fillOpacity:!0,flexGrow:!0,flexShrink:!0,fontWeight:!0,gridArea:!0,gridColumn:!0,gridColumnEnd:!0,gridColumnStart:!0,gridRow:!0,gridRowEnd:!0,gridRowStart:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,widows:!0,zIndex:!0,zoom:!0},cssProps:{},style:function(t,e,n,i){if(t&&3!==t.nodeType&&8!==t.nodeType&&t.style){var s,o,a,r=Q(e),l=jt.test(e),c=t.style;if(l||(e=Zt(r)),a=x.cssHooks[e]||x.cssHooks[r],void 0===n)return a&&"get"in a&&void 0!==(s=a.get(t,!1,i))?s:c[e];"string"==(o=typeof n)&&(s=st.exec(n))&&s[1]&&(n=ut(t,e,s),o="number"),null!=n&&n==n&&("number"!==o||l||(n+=s&&s[3]||(x.cssNumber[r]?"":"px")),g.clearCloneStyle||""!==n||0!==e.indexOf("background")||(c[e]="inherit"),a&&"set"in a&&void 0===(n=a.set(t,n,i))||(l?c.setProperty(e,n):c[e]=n))}},css:function(t,e,n,i){var s,o,a,r=Q(e);return jt.test(e)||(e=Zt(r)),(a=x.cssHooks[e]||x.cssHooks[r])&&"get"in a&&(s=a.get(t,!0,n)),void 0===s&&(s=Yt(t,e,i)),"normal"===s&&e in ee&&(s=ee[e]),""===n||n?(o=parseFloat(s),!0===n||isFinite(o)?o||0:s):s}}),x.each(["height","width"],(function(t,e){x.cssHooks[e]={get:function(t,n,i){if(n)return!Jt.test(x.css(t,"display"))||t.getClientRects().length&&t.getBoundingClientRect().width?se(t,e,i):Bt(t,te,(function(){return se(t,e,i)}))},set:function(t,n,i){var s,o=Ft(t),a=!g.scrollboxSize()&&"absolute"===o.position,r=(a||i)&&"border-box"===x.css(t,"boxSizing",!1,o),l=i?ie(t,e,i,r,o):0;return r&&a&&(l-=Math.ceil(t["offset"+e[0].toUpperCase()+e.slice(1)]-parseFloat(o[e])-ie(t,e,"border",!1,o)-.5)),l&&(s=st.exec(n))&&"px"!==(s[3]||"px")&&(t.style[e]=n,n=x.css(t,e)),ne(0,n,l)}}})),x.cssHooks.marginLeft=Vt(g.reliableMarginLeft,(function(t,e){if(e)return(parseFloat(Yt(t,"marginLeft"))||t.getBoundingClientRect().left-Bt(t,{marginLeft:0},(function(){return t.getBoundingClientRect().left})))+"px"})),x.each({margin:"",padding:"",border:"Width"},(function(t,e){x.cssHooks[t+e]={expand:function(n){for(var i=0,s={},o="string"==typeof n?n.split(" "):[n];i<4;i++)s[t+ot[i]+e]=o[i]||o[i-2]||o[0];return s}},"margin"!==t&&(x.cssHooks[t+e].set=ne)})),x.fn.extend({css:function(t,e){return U(this,(function(t,e,n){var i,s,o={},a=0;if(Array.isArray(e)){for(i=Ft(t),s=e.length;a1)}}),x.Tween=oe,oe.prototype={constructor:oe,init:function(t,e,n,i,s,o){this.elem=t,this.prop=n,this.easing=s||x.easing._default,this.options=e,this.start=this.now=this.cur(),this.end=i,this.unit=o||(x.cssNumber[n]?"":"px")},cur:function(){var t=oe.propHooks[this.prop];return t&&t.get?t.get(this):oe.propHooks._default.get(this)},run:function(t){var e,n=oe.propHooks[this.prop];return this.options.duration?this.pos=e=x.easing[this.easing](t,this.options.duration*t,0,1,this.options.duration):this.pos=e=t,this.now=(this.end-this.start)*e+this.start,this.options.step&&this.options.step.call(this.elem,this.now,this),n&&n.set?n.set(this):oe.propHooks._default.set(this),this}},oe.prototype.init.prototype=oe.prototype,oe.propHooks={_default:{get:function(t){var e;return 1!==t.elem.nodeType||null!=t.elem[t.prop]&&null==t.elem.style[t.prop]?t.elem[t.prop]:(e=x.css(t.elem,t.prop,""))&&"auto"!==e?e:0},set:function(t){x.fx.step[t.prop]?x.fx.step[t.prop](t):1!==t.elem.nodeType||!x.cssHooks[t.prop]&&null==t.elem.style[Zt(t.prop)]?t.elem[t.prop]=t.now:x.style(t.elem,t.prop,t.now+t.unit)}}},oe.propHooks.scrollTop=oe.propHooks.scrollLeft={set:function(t){t.elem.nodeType&&t.elem.parentNode&&(t.elem[t.prop]=t.now)}},x.easing={linear:function(t){return t},swing:function(t){return.5-Math.cos(t*Math.PI)/2},_default:"swing"},x.fx=oe.prototype.init,x.fx.step={};var ae,re,le=/^(?:toggle|show|hide)$/,ce=/queueHooks$/;function ue(){re&&(!1===b.hidden&&i.requestAnimationFrame?i.requestAnimationFrame(ue):i.setTimeout(ue,x.fx.interval),x.fx.tick())}function he(){return i.setTimeout((function(){ae=void 0})),ae=Date.now()}function de(t,e){var n,i=0,s={height:t};for(e=e?1:0;i<4;i+=2-e)s["margin"+(n=ot[i])]=s["padding"+n]=t;return e&&(s.opacity=s.width=t),s}function fe(t,e,n){for(var i,s=(pe.tweeners[e]||[]).concat(pe.tweeners["*"]),o=0,a=s.length;o1)},removeAttr:function(t){return this.each((function(){x.removeAttr(this,t)}))}}),x.extend({attr:function(t,e,n){var i,s,o=t.nodeType;if(3!==o&&8!==o&&2!==o)return void 0===t.getAttribute?x.prop(t,e,n):(1===o&&x.isXMLDoc(t)||(s=x.attrHooks[e.toLowerCase()]||(x.expr.match.bool.test(e)?ve:void 0)),void 0!==n?null===n?void x.removeAttr(t,e):s&&"set"in s&&void 0!==(i=s.set(t,n,e))?i:(t.setAttribute(e,n+""),n):s&&"get"in s&&null!==(i=s.get(t,e))?i:null==(i=x.find.attr(t,e))?void 0:i)},attrHooks:{type:{set:function(t,e){if(!g.radioValue&&"radio"===e&&S(t,"input")){var n=t.value;return t.setAttribute("type",e),n&&(t.value=n),e}}}},removeAttr:function(t,e){var n,i=0,s=e&&e.match(I);if(s&&1===t.nodeType)for(;n=s[i++];)t.removeAttribute(n)}}),ve={set:function(t,e,n){return!1===e?x.removeAttr(t,n):t.setAttribute(n,n),n}},x.each(x.expr.match.bool.source.match(/\w+/g),(function(t,e){var n=ge[e]||x.find.attr;ge[e]=function(t,e,i){var s,o,a=e.toLowerCase();return i||(o=ge[a],ge[a]=s,s=null!=n(t,e,i)?a:null,ge[a]=o),s}}));var me=/^(?:input|select|textarea|button)$/i,ye=/^(?:a|area)$/i;function be(t){return(t.match(I)||[]).join(" ")}function we(t){return t.getAttribute&&t.getAttribute("class")||""}function $e(t){return Array.isArray(t)?t:"string"==typeof t&&t.match(I)||[]}x.fn.extend({prop:function(t,e){return U(this,x.prop,t,e,arguments.length>1)},removeProp:function(t){return this.each((function(){delete this[x.propFix[t]||t]}))}}),x.extend({prop:function(t,e,n){var i,s,o=t.nodeType;if(3!==o&&8!==o&&2!==o)return 1===o&&x.isXMLDoc(t)||(e=x.propFix[e]||e,s=x.propHooks[e]),void 0!==n?s&&"set"in s&&void 0!==(i=s.set(t,n,e))?i:t[e]=n:s&&"get"in s&&null!==(i=s.get(t,e))?i:t[e]},propHooks:{tabIndex:{get:function(t){var e=x.find.attr(t,"tabindex");return e?parseInt(e,10):me.test(t.nodeName)||ye.test(t.nodeName)&&t.href?0:-1}}},propFix:{for:"htmlFor",class:"className"}}),g.optSelected||(x.propHooks.selected={get:function(t){var e=t.parentNode;return e&&e.parentNode&&e.parentNode.selectedIndex,null},set:function(t){var e=t.parentNode;e&&(e.selectedIndex,e.parentNode&&e.parentNode.selectedIndex)}}),x.each(["tabIndex","readOnly","maxLength","cellSpacing","cellPadding","rowSpan","colSpan","useMap","frameBorder","contentEditable"],(function(){x.propFix[this.toLowerCase()]=this})),x.fn.extend({addClass:function(t){var e,n,i,s,o,a;return m(t)?this.each((function(e){x(this).addClass(t.call(this,e,we(this)))})):(e=$e(t)).length?this.each((function(){if(i=we(this),n=1===this.nodeType&&" "+be(i)+" "){for(o=0;o-1;)n=n.replace(" "+s+" "," ");a=be(n),i!==a&&this.setAttribute("class",a)}})):this:this.attr("class","")},toggleClass:function(t,e){var n,i,s,o,a=typeof t,r="string"===a||Array.isArray(t);return m(t)?this.each((function(n){x(this).toggleClass(t.call(this,n,we(this),e),e)})):"boolean"==typeof e&&r?e?this.addClass(t):this.removeClass(t):(n=$e(t),this.each((function(){if(r)for(o=x(this),s=0;s-1)return!0;return!1}});var ke=/\r/g;x.fn.extend({val:function(t){var e,n,i,s=this[0];return arguments.length?(i=m(t),this.each((function(n){var s;1===this.nodeType&&(null==(s=i?t.call(this,n,x(this).val()):t)?s="":"number"==typeof s?s+="":Array.isArray(s)&&(s=x.map(s,(function(t){return null==t?"":t+""}))),(e=x.valHooks[this.type]||x.valHooks[this.nodeName.toLowerCase()])&&"set"in e&&void 0!==e.set(this,s,"value")||(this.value=s))}))):s?(e=x.valHooks[s.type]||x.valHooks[s.nodeName.toLowerCase()])&&"get"in e&&void 0!==(n=e.get(s,"value"))?n:"string"==typeof(n=s.value)?n.replace(ke,""):null==n?"":n:void 0}}),x.extend({valHooks:{option:{get:function(t){var e=x.find.attr(t,"value");return null!=e?e:be(x.text(t))}},select:{get:function(t){var e,n,i,s=t.options,o=t.selectedIndex,a="select-one"===t.type,r=a?null:[],l=a?o+1:s.length;for(i=o<0?l:a?o:0;i-1)&&(n=!0);return n||(t.selectedIndex=-1),o}}}}),x.each(["radio","checkbox"],(function(){x.valHooks[this]={set:function(t,e){if(Array.isArray(e))return t.checked=x.inArray(x(t).val(),e)>-1}},g.checkOn||(x.valHooks[this].get=function(t){return null===t.getAttribute("value")?"on":t.value})})),g.focusin="onfocusin"in i;var Ce=/^(?:focusinfocus|focusoutblur)$/,xe=function(t){t.stopPropagation()};x.extend(x.event,{trigger:function(t,e,n,s){var o,a,r,l,c,u,h,d,p=[n||b],v=f.call(t,"type")?t.type:t,g=f.call(t,"namespace")?t.namespace.split("."):[];if(a=d=r=n=n||b,3!==n.nodeType&&8!==n.nodeType&&!Ce.test(v+x.event.triggered)&&(v.indexOf(".")>-1&&(g=v.split("."),v=g.shift(),g.sort()),c=v.indexOf(":")<0&&"on"+v,(t=t[x.expando]?t:new x.Event(v,"object"==typeof t&&t)).isTrigger=s?2:3,t.namespace=g.join("."),t.rnamespace=t.namespace?new RegExp("(^|\\.)"+g.join("\\.(?:.*\\.|)")+"(\\.|$)"):null,t.result=void 0,t.target||(t.target=n),e=null==e?[t]:x.makeArray(e,[t]),h=x.event.special[v]||{},s||!h.trigger||!1!==h.trigger.apply(n,e))){if(!s&&!h.noBubble&&!y(n)){for(l=h.delegateType||v,Ce.test(l+v)||(a=a.parentNode);a;a=a.parentNode)p.push(a),r=a;r===(n.ownerDocument||b)&&p.push(r.defaultView||r.parentWindow||i)}for(o=0;(a=p[o++])&&!t.isPropagationStopped();)d=a,t.type=o>1?l:h.bindType||v,(u=(Z.get(a,"events")||Object.create(null))[t.type]&&Z.get(a,"handle"))&&u.apply(a,e),(u=c&&a[c])&&u.apply&&X(a)&&(t.result=u.apply(a,e),!1===t.result&&t.preventDefault());return t.type=v,s||t.isDefaultPrevented()||h._default&&!1!==h._default.apply(p.pop(),e)||!X(n)||c&&m(n[v])&&!y(n)&&((r=n[c])&&(n[c]=null),x.event.triggered=v,t.isPropagationStopped()&&d.addEventListener(v,xe),n[v](),t.isPropagationStopped()&&d.removeEventListener(v,xe),x.event.triggered=void 0,r&&(n[c]=r)),t.result}},simulate:function(t,e,n){var i=x.extend(new x.Event,n,{type:t,isSimulated:!0});x.event.trigger(i,null,e)}}),x.fn.extend({trigger:function(t,e){return this.each((function(){x.event.trigger(t,e,this)}))},triggerHandler:function(t,e){var n=this[0];if(n)return x.event.trigger(t,e,n,!0)}}),g.focusin||x.each({focus:"focusin",blur:"focusout"},(function(t,e){var n=function(t){x.event.simulate(e,t.target,x.event.fix(t))};x.event.special[e]={setup:function(){var i=this.ownerDocument||this.document||this,s=Z.access(i,e);s||i.addEventListener(t,n,!0),Z.access(i,e,(s||0)+1)},teardown:function(){var i=this.ownerDocument||this.document||this,s=Z.access(i,e)-1;s?Z.access(i,e,s):(i.removeEventListener(t,n,!0),Z.remove(i,e))}}}));var _e=i.location,Te={guid:Date.now()},ze=/\?/;x.parseXML=function(t){var e,n;if(!t||"string"!=typeof t)return null;try{e=(new i.DOMParser).parseFromString(t,"text/xml")}catch(t){}return n=e&&e.getElementsByTagName("parsererror")[0],e&&!n||x.error("Invalid XML: "+(n?x.map(n.childNodes,(function(t){return t.textContent})).join("\n"):t)),e};var Ae=/\[\]$/,Ee=/\r?\n/g,Se=/^(?:submit|button|image|reset|file)$/i,Oe=/^(?:input|select|textarea|keygen)/i;function Le(t,e,n,i){var s;if(Array.isArray(e))x.each(e,(function(e,s){n||Ae.test(t)?i(t,s):Le(t+"["+("object"==typeof s&&null!=s?e:"")+"]",s,n,i)}));else if(n||"object"!==k(e))i(t,e);else for(s in e)Le(t+"["+s+"]",e[s],n,i)}x.param=function(t,e){var n,i=[],s=function(t,e){var n=m(e)?e():e;i[i.length]=encodeURIComponent(t)+"="+encodeURIComponent(null==n?"":n)};if(null==t)return"";if(Array.isArray(t)||t.jquery&&!x.isPlainObject(t))x.each(t,(function(){s(this.name,this.value)}));else for(n in t)Le(n,t[n],e,s);return i.join("&")},x.fn.extend({serialize:function(){return x.param(this.serializeArray())},serializeArray:function(){return this.map((function(){var t=x.prop(this,"elements");return t?x.makeArray(t):this})).filter((function(){var t=this.type;return this.name&&!x(this).is(":disabled")&&Oe.test(this.nodeName)&&!Se.test(t)&&(this.checked||!gt.test(t))})).map((function(t,e){var n=x(this).val();return null==n?null:Array.isArray(n)?x.map(n,(function(t){return{name:e.name,value:t.replace(Ee,"\r\n")}})):{name:e.name,value:n.replace(Ee,"\r\n")}})).get()}});var De=/%20/g,He=/#.*$/,Re=/([?&])_=[^&]*/,qe=/^(.*?):[ \t]*([^\r\n]*)$/gm,Pe=/^(?:GET|HEAD)$/,Ie=/^\/\//,Me={},Ne={},je="*/".concat("*"),Fe=b.createElement("a");function Be(t){return function(e,n){"string"!=typeof e&&(n=e,e="*");var i,s=0,o=e.toLowerCase().match(I)||[];if(m(n))for(;i=o[s++];)"+"===i[0]?(i=i.slice(1)||"*",(t[i]=t[i]||[]).unshift(n)):(t[i]=t[i]||[]).push(n)}}function We(t,e,n,i){var s={},o=t===Ne;function a(r){var l;return s[r]=!0,x.each(t[r]||[],(function(t,r){var c=r(e,n,i);return"string"!=typeof c||o||s[c]?o?!(l=c):void 0:(e.dataTypes.unshift(c),a(c),!1)})),l}return a(e.dataTypes[0])||!s["*"]&&a("*")}function Ue(t,e){var n,i,s=x.ajaxSettings.flatOptions||{};for(n in e)void 0!==e[n]&&((s[n]?t:i||(i={}))[n]=e[n]);return i&&x.extend(!0,t,i),t}Fe.href=_e.href,x.extend({active:0,lastModified:{},etag:{},ajaxSettings:{url:_e.href,type:"GET",isLocal:/^(?:about|app|app-storage|.+-extension|file|res|widget):$/.test(_e.protocol),global:!0,processData:!0,async:!0,contentType:"application/x-www-form-urlencoded; charset=UTF-8",accepts:{"*":je,text:"text/plain",html:"text/html",xml:"application/xml, text/xml",json:"application/json, text/javascript"},contents:{xml:/\bxml\b/,html:/\bhtml/,json:/\bjson\b/},responseFields:{xml:"responseXML",text:"responseText",json:"responseJSON"},converters:{"* text":String,"text html":!0,"text json":JSON.parse,"text xml":x.parseXML},flatOptions:{url:!0,context:!0}},ajaxSetup:function(t,e){return e?Ue(Ue(t,x.ajaxSettings),e):Ue(x.ajaxSettings,t)},ajaxPrefilter:Be(Me),ajaxTransport:Be(Ne),ajax:function(t,e){"object"==typeof t&&(e=t,t=void 0),e=e||{};var n,s,o,a,r,l,c,u,h,d,f=x.ajaxSetup({},e),p=f.context||f,v=f.context&&(p.nodeType||p.jquery)?x(p):x.event,g=x.Deferred(),m=x.Callbacks("once memory"),y=f.statusCode||{},w={},$={},k="canceled",C={readyState:0,getResponseHeader:function(t){var e;if(c){if(!a)for(a={};e=qe.exec(o);)a[e[1].toLowerCase()+" "]=(a[e[1].toLowerCase()+" "]||[]).concat(e[2]);e=a[t.toLowerCase()+" "]}return null==e?null:e.join(", ")},getAllResponseHeaders:function(){return c?o:null},setRequestHeader:function(t,e){return null==c&&(t=$[t.toLowerCase()]=$[t.toLowerCase()]||t,w[t]=e),this},overrideMimeType:function(t){return null==c&&(f.mimeType=t),this},statusCode:function(t){var e;if(t)if(c)C.always(t[C.status]);else for(e in t)y[e]=[y[e],t[e]];return this},abort:function(t){var e=t||k;return n&&n.abort(e),_(0,e),this}};if(g.promise(C),f.url=((t||f.url||_e.href)+"").replace(Ie,_e.protocol+"//"),f.type=e.method||e.type||f.method||f.type,f.dataTypes=(f.dataType||"*").toLowerCase().match(I)||[""],null==f.crossDomain){l=b.createElement("a");try{l.href=f.url,l.href=l.href,f.crossDomain=Fe.protocol+"//"+Fe.host!=l.protocol+"//"+l.host}catch(t){f.crossDomain=!0}}if(f.data&&f.processData&&"string"!=typeof f.data&&(f.data=x.param(f.data,f.traditional)),We(Me,f,e,C),c)return C;for(h in(u=x.event&&f.global)&&0==x.active++&&x.event.trigger("ajaxStart"),f.type=f.type.toUpperCase(),f.hasContent=!Pe.test(f.type),s=f.url.replace(He,""),f.hasContent?f.data&&f.processData&&0===(f.contentType||"").indexOf("application/x-www-form-urlencoded")&&(f.data=f.data.replace(De,"+")):(d=f.url.slice(s.length),f.data&&(f.processData||"string"==typeof f.data)&&(s+=(ze.test(s)?"&":"?")+f.data,delete f.data),!1===f.cache&&(s=s.replace(Re,"$1"),d=(ze.test(s)?"&":"?")+"_="+Te.guid+++d),f.url=s+d),f.ifModified&&(x.lastModified[s]&&C.setRequestHeader("If-Modified-Since",x.lastModified[s]),x.etag[s]&&C.setRequestHeader("If-None-Match",x.etag[s])),(f.data&&f.hasContent&&!1!==f.contentType||e.contentType)&&C.setRequestHeader("Content-Type",f.contentType),C.setRequestHeader("Accept",f.dataTypes[0]&&f.accepts[f.dataTypes[0]]?f.accepts[f.dataTypes[0]]+("*"!==f.dataTypes[0]?", "+je+"; q=0.01":""):f.accepts["*"]),f.headers)C.setRequestHeader(h,f.headers[h]);if(f.beforeSend&&(!1===f.beforeSend.call(p,C,f)||c))return C.abort();if(k="abort",m.add(f.complete),C.done(f.success),C.fail(f.error),n=We(Ne,f,e,C)){if(C.readyState=1,u&&v.trigger("ajaxSend",[C,f]),c)return C;f.async&&f.timeout>0&&(r=i.setTimeout((function(){C.abort("timeout")}),f.timeout));try{c=!1,n.send(w,_)}catch(t){if(c)throw t;_(-1,t)}}else _(-1,"No Transport");function _(t,e,a,l){var h,d,b,w,$,k=e;c||(c=!0,r&&i.clearTimeout(r),n=void 0,o=l||"",C.readyState=t>0?4:0,h=t>=200&&t<300||304===t,a&&(w=function(t,e,n){for(var i,s,o,a,r=t.contents,l=t.dataTypes;"*"===l[0];)l.shift(),void 0===i&&(i=t.mimeType||e.getResponseHeader("Content-Type"));if(i)for(s in r)if(r[s]&&r[s].test(i)){l.unshift(s);break}if(l[0]in n)o=l[0];else{for(s in n){if(!l[0]||t.converters[s+" "+l[0]]){o=s;break}a||(a=s)}o=o||a}if(o)return o!==l[0]&&l.unshift(o),n[o]}(f,C,a)),!h&&x.inArray("script",f.dataTypes)>-1&&x.inArray("json",f.dataTypes)<0&&(f.converters["text script"]=function(){}),w=function(t,e,n,i){var s,o,a,r,l,c={},u=t.dataTypes.slice();if(u[1])for(a in t.converters)c[a.toLowerCase()]=t.converters[a];for(o=u.shift();o;)if(t.responseFields[o]&&(n[t.responseFields[o]]=e),!l&&i&&t.dataFilter&&(e=t.dataFilter(e,t.dataType)),l=o,o=u.shift())if("*"===o)o=l;else if("*"!==l&&l!==o){if(!(a=c[l+" "+o]||c["* "+o]))for(s in c)if((r=s.split(" "))[1]===o&&(a=c[l+" "+r[0]]||c["* "+r[0]])){!0===a?a=c[s]:!0!==c[s]&&(o=r[0],u.unshift(r[1]));break}if(!0!==a)if(a&&t.throws)e=a(e);else try{e=a(e)}catch(t){return{state:"parsererror",error:a?t:"No conversion from "+l+" to "+o}}}return{state:"success",data:e}}(f,w,C,h),h?(f.ifModified&&(($=C.getResponseHeader("Last-Modified"))&&(x.lastModified[s]=$),($=C.getResponseHeader("etag"))&&(x.etag[s]=$)),204===t||"HEAD"===f.type?k="nocontent":304===t?k="notmodified":(k=w.state,d=w.data,h=!(b=w.error))):(b=k,!t&&k||(k="error",t<0&&(t=0))),C.status=t,C.statusText=(e||k)+"",h?g.resolveWith(p,[d,k,C]):g.rejectWith(p,[C,k,b]),C.statusCode(y),y=void 0,u&&v.trigger(h?"ajaxSuccess":"ajaxError",[C,f,h?d:b]),m.fireWith(p,[C,k]),u&&(v.trigger("ajaxComplete",[C,f]),--x.active||x.event.trigger("ajaxStop")))}return C},getJSON:function(t,e,n){return x.get(t,e,n,"json")},getScript:function(t,e){return x.get(t,void 0,e,"script")}}),x.each(["get","post"],(function(t,e){x[e]=function(t,n,i,s){return m(n)&&(s=s||i,i=n,n=void 0),x.ajax(x.extend({url:t,type:e,dataType:s,data:n,success:i},x.isPlainObject(t)&&t))}})),x.ajaxPrefilter((function(t){var e;for(e in t.headers)"content-type"===e.toLowerCase()&&(t.contentType=t.headers[e]||"")})),x._evalUrl=function(t,e,n){return x.ajax({url:t,type:"GET",dataType:"script",cache:!0,async:!1,global:!1,converters:{"text script":function(){}},dataFilter:function(t){x.globalEval(t,e,n)}})},x.fn.extend({wrapAll:function(t){var e;return this[0]&&(m(t)&&(t=t.call(this[0])),e=x(t,this[0].ownerDocument).eq(0).clone(!0),this[0].parentNode&&e.insertBefore(this[0]),e.map((function(){for(var t=this;t.firstElementChild;)t=t.firstElementChild;return t})).append(this)),this},wrapInner:function(t){return m(t)?this.each((function(e){x(this).wrapInner(t.call(this,e))})):this.each((function(){var e=x(this),n=e.contents();n.length?n.wrapAll(t):e.append(t)}))},wrap:function(t){var e=m(t);return this.each((function(n){x(this).wrapAll(e?t.call(this,n):t)}))},unwrap:function(t){return this.parent(t).not("body").each((function(){x(this).replaceWith(this.childNodes)})),this}}),x.expr.pseudos.hidden=function(t){return!x.expr.pseudos.visible(t)},x.expr.pseudos.visible=function(t){return!!(t.offsetWidth||t.offsetHeight||t.getClientRects().length)},x.ajaxSettings.xhr=function(){try{return new i.XMLHttpRequest}catch(t){}};var Ge={0:200,1223:204},Ye=x.ajaxSettings.xhr();g.cors=!!Ye&&"withCredentials"in Ye,g.ajax=Ye=!!Ye,x.ajaxTransport((function(t){var e,n;if(g.cors||Ye&&!t.crossDomain)return{send:function(s,o){var a,r=t.xhr();if(r.open(t.type,t.url,t.async,t.username,t.password),t.xhrFields)for(a in t.xhrFields)r[a]=t.xhrFields[a];for(a in t.mimeType&&r.overrideMimeType&&r.overrideMimeType(t.mimeType),t.crossDomain||s["X-Requested-With"]||(s["X-Requested-With"]="XMLHttpRequest"),s)r.setRequestHeader(a,s[a]);e=function(t){return function(){e&&(e=n=r.onload=r.onerror=r.onabort=r.ontimeout=r.onreadystatechange=null,"abort"===t?r.abort():"error"===t?"number"!=typeof r.status?o(0,"error"):o(r.status,r.statusText):o(Ge[r.status]||r.status,r.statusText,"text"!==(r.responseType||"text")||"string"!=typeof r.responseText?{binary:r.response}:{text:r.responseText},r.getAllResponseHeaders()))}},r.onload=e(),n=r.onerror=r.ontimeout=e("error"),void 0!==r.onabort?r.onabort=n:r.onreadystatechange=function(){4===r.readyState&&i.setTimeout((function(){e&&n()}))},e=e("abort");try{r.send(t.hasContent&&t.data||null)}catch(t){if(e)throw t}},abort:function(){e&&e()}}})),x.ajaxPrefilter((function(t){t.crossDomain&&(t.contents.script=!1)})),x.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},contents:{script:/\b(?:java|ecma)script\b/},converters:{"text script":function(t){return x.globalEval(t),t}}}),x.ajaxPrefilter("script",(function(t){void 0===t.cache&&(t.cache=!1),t.crossDomain&&(t.type="GET")})),x.ajaxTransport("script",(function(t){var e,n;if(t.crossDomain||t.scriptAttrs)return{send:function(i,s){e=x("