From edfb4060f40cd1d9b593b124be0ead374bc98004 Mon Sep 17 00:00:00 2001 From: Benjamin Granados <40007659+benjagm@users.noreply.github.com> Date: Mon, 29 Jul 2024 13:35:44 +0200 Subject: [PATCH] Feat: Rebuilding getting started component (#687) (#782) * Feat: Rebuilding getting started component (#687) * adding componet * adding data * connecting with data * Pushed data changes * Fix:getting started data fetching problem * updating component rendering * adjusting layout * update: changing interating logics * update: changing file location * fix: minor fixes * schema data fetching * fixing workflow * adding fetch testing * replacing code editor * feat: enabling instnaces and moving to new component * fix: state rendering problem solved * feat:adding text and icons * fix: instances fix * fixing text alignment * fix: instances fix * Refactoring and improvements * removing some codes * Refactoring component and bug fixes * Add plausible events * Update package.json * adding better messaging --------- Co-authored-by: Benjamin Granados * Change font sizes for code editors * feat: adding download button * adding zip install * added more examples * Squashed commit of the following: commit 2e899cc47830fe2288366591e9a33b1017ed8fc3 Author: Alok Gupta Date: Mon Jul 29 16:12:12 2024 +0530 chore(documentation) : updated docs for setting up environment variables (#797) * Added docs for setting up env variables * Updated env docs commit b06a316f520d8b42c18603ccfb3d17b299e84902 Author: Jason Desrosiers Date: Mon Jul 29 03:41:28 2024 -0700 Fix bundling docs bug (#822) commit 9f65d1ec7e579e12c71c3bd07d9f1c7c9466987e Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon Jul 29 12:32:33 2024 +0200 chore(deps): bump @typescript-eslint/eslint-plugin from 6.13.1 to 6.21.0 (#833) Bumps [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) from 6.13.1 to 6.21.0. - [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases) - [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md) - [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v6.21.0/packages/eslint-plugin) --- updated-dependencies: - dependency-name: "@typescript-eslint/eslint-plugin" dependency-type: direct:development update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> commit f49db6727828b2cf217a933b445f53c53f6b327a Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon Jul 29 12:32:14 2024 +0200 chore(deps): bump husky from 9.0.11 to 9.1.3 (#834) Bumps [husky](https://github.com/typicode/husky) from 9.0.11 to 9.1.3. - [Release notes](https://github.com/typicode/husky/releases) - [Commits](https://github.com/typicode/husky/compare/v9.0.11...v9.1.3) --- updated-dependencies: - dependency-name: husky dependency-type: direct:development update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> commit f7407b8514cfa6da33f5fe68df5cec39c8a427b1 Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon Jul 29 12:31:56 2024 +0200 chore(deps): bump prettier from 3.2.5 to 3.3.3 (#835) Bumps [prettier](https://github.com/prettier/prettier) from 3.2.5 to 3.3.3. - [Release notes](https://github.com/prettier/prettier/releases) - [Changelog](https://github.com/prettier/prettier/blob/main/CHANGELOG.md) - [Commits](https://github.com/prettier/prettier/compare/3.2.5...3.3.3) --- updated-dependencies: - dependency-name: prettier dependency-type: direct:development update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> commit acb797e4a63ff3a1c3cf7588c2beaf5eac0de95e Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon Jul 29 12:31:30 2024 +0200 chore(deps): bump axios from 1.6.0 to 1.7.2 (#836) Bumps [axios](https://github.com/axios/axios) from 1.6.0 to 1.7.2. - [Release notes](https://github.com/axios/axios/releases) - [Changelog](https://github.com/axios/axios/blob/v1.x/CHANGELOG.md) - [Commits](https://github.com/axios/axios/compare/v1.6.0...v1.7.2) --- updated-dependencies: - dependency-name: axios dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> commit 753017be7a4b8618f2c93c151c80198a5c6fbfda Author: Benjamin Granados <40007659+benjagm@users.noreply.github.com> Date: Wed Jul 24 14:15:25 2024 +0200 New slack redirect commit 8f099f4834bf13724c989d9529d7a82c1916893b Author: Dhairya Majmudar <124715224+DhairyaMajmudar@users.noreply.github.com> Date: Wed Jul 24 13:39:33 2024 +0530 Feat: Refactoring toc styles (#796) * refactoring toc * updating es * adding heading * adding heading commit 16369d3ebaa7e431a9d54849e6891da71014d537 Author: Benjamin Granados <40007659+benjagm@users.noreply.github.com> Date: Wed Jul 24 09:46:39 2024 +0200 Add docs help component (#820) commit a58bd3610e20e0bcc63de360818ca4b70881429a Author: Benjamin Granados <40007659+benjagm@users.noreply.github.com> Date: Wed Jul 24 09:03:39 2024 +0200 Web release 3 (#655) * Standardize List Display with Card Component (#433) (#460) * Standardize List Display with Card Component (#433) * Addressed comments, added images, and implemented new styles * Increased padding on the x-axis * feat: added Faq section (#534) * Fix faq * Added Case Studies page in Overview Section (#473) * updated UI of blog-page * Added Case Studies Page * fixed linting errors * Added casestudies * changing index.page.tsx * Delete components/CustomComponent.tsx * Delete pages/overview/casestudies.md * removed unnecessary changes * removed unnecessary files * fixed bug * removed changes * removed unnecessary files * Pushing last changes. --------- Co-authored-by: Benjamin Granados * feat: added resource section (#509) * fixed * feat: added resource section * feat: added resource section * revert changes cd6d848 * revert changes 65e9f3e * revert changes 877b0f0 * revert changes 74711cd * fix: fixed the width issue * revert change * fix: added resource icon * Tiny changes to adjust look and feel. * Last changes to fix dark theme --------- Co-authored-by: Benjamin Granados * Feat: Add the Newsletter feature to the website. (#489) * initialize the Test directory. * Added the subscribe button. * Added the subscribe page. * Added the newsletter page. * changed name to newsletter. * removed the unwated code. * removed the unwated components. * decreased the horizontal width and changed the color. * decreased the font size. * Added the changes for the newsletter banner. * Added the newletter component to landing page. * added the color for input. * Added the required horizontal padding. * Added the required horizontal padding. for newsletter page. * Add changes to make it work with mailchimp * added the yarn file back. * Added yarn.lock file. * Update yarn.lock * linted the newsletter.tsx * linted newsletter * fix the index.page * Small improvement in page layout. * Fix dark theme behavior * . --------- Co-authored-by: AyushNautiyalDeveloper Co-authored-by: Benjamin Granados * Added welcome page (#566) * added welcome page * Pushed some changes to changes - Better location in sidebar - Changes to move what is json schema into getting started - move page inside overview --------- Co-authored-by: Benjamin Granados * Added Use-cases page (#589) * added use-cases page, modified card component * fix * Added some changes to better merge with the dev branch. --------- Co-authored-by: Benjamin Granados * Change docs link * fix: spacing between buttons (#575) * docs: added definition of json hyper-schema * fixed * fix: spacing b/w buttons * fix: added spacing in mobile design * fix: spacing on tablet screen * fix: spacing on less than 300px screen * community-page (#646) * community-page * Some final changes for the community page --------- Co-authored-by: Benjamin Granados * Update Sidebar.tsx * Add resources file * Update Sidebar.tsx * Update case-studies.json * Text colours for dark theme * New version of the implementers page * Feat: Replacing Axios to fs fetching in resources page (#657) * cleaning * changing axios to fs * Remove articles from sidebar --------- Co-authored-by: Benjamin Granados * Improve Case Studies and Use Cases welcome messages * adding codeowners * Fixing bugs and adding back lost files * fix sidebar dropdown for FAQ * community page major changes and faq bug fix * community page bug fixes and responsive issues in several pages * Update index.page.tsx (#684) * Update index.page.tsx Edited the placeholder texts for the welcome page. * fixed lint error * Edited wordings for the Welcome page of release 3 * Update pages/overview/welcome/index.page.tsx Co-authored-by: Benjamin Granados <40007659+benjagm@users.noreply.github.com> * Update pages/overview/welcome/index.page.tsx Co-authored-by: Benjamin Granados <40007659+benjagm@users.noreply.github.com> * Remove data duplication and fix intro text --------- Co-authored-by: Benjamin Granados <40007659+benjagm@users.noreply.github.com> Co-authored-by: Benjamin Granados * Feat: Removing resources and newletter from web-release-3 branch (#698) * removing newsletter * removing resources * removing resources.yml file * removing resources from welcomee page --------- Co-authored-by: Benjamin Granados <40007659+benjagm@users.noreply.github.com> * case-studies bug fix and hover delay fix * adding ts comment * Small corrections * Update blogs link * Ambassadors button aligned to the left * Feat: Fixing responsive bugs from community page * community page bug fixes * Added uses cases texts * Last changes to use-cases * Add html to the use cases definition * feat:adding html parser for use-cases page * removing links from images * improved FAQ description text (#709) * improved FAQ description text * Updated FAQ general questions * Updated FAQ description text for fix one-sentence bug * Update data/faq.json Co-authored-by: Benjamin Granados <40007659+benjagm@users.noreply.github.com> * Update data/faq.json Co-authored-by: Benjamin Granados <40007659+benjagm@users.noreply.github.com> * Update data/faq.json Co-authored-by: Benjamin Granados <40007659+benjagm@users.noreply.github.com> * Update pages/overview/faq/index.page.tsx --------- Co-authored-by: Benjamin Granados <40007659+benjagm@users.noreply.github.com> * Improvement for case studies * merge confilts * removing merge conflicts * Fix:community card gap * Align with main branch * Align with main branch * Align with main branch * Update pages/overview/what-is-jsonschema.md Co-authored-by: Ben Hutton * Remove welcome data file * Move welcome outside overview section * Change welcome text * Feat: Replaced axios with fetch * moved path to function * Updating community filters * Update pages/community/index.page.tsx Co-authored-by: Ben Hutton * Fix the menu links * Update the JSON Schema calendar link * Change ambassadors image --------- Co-authored-by: Michael Obubelebra Amachree Co-authored-by: Akshay Bagai <100753870+Akshaybagai52@users.noreply.github.com> Co-authored-by: Tamanna <96949249+TamannaVerma99@users.noreply.github.com> Co-authored-by: Ayush Nautiyal <78146753+ayushnau@users.noreply.github.com> Co-authored-by: AyushNautiyalDeveloper Co-authored-by: VivekJaiswal18 <96608169+VivekJaiswal18@users.noreply.github.com> Co-authored-by: Neeraj Saini <118799941+officeneerajsaini@users.noreply.github.com> Co-authored-by: Dhairya Majmudar <124715224+DhairyaMajmudar@users.noreply.github.com> Co-authored-by: Dhairya Majmudar <2022kuec2045@iiitkota.ac.in> Co-authored-by: Blessing Ene Anyebe <60541622+kwennB@users.noreply.github.com> Co-authored-by: Ben Hutton commit aacf7416eb49b77135f2610cc8c3091478a4fdab Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed Jul 24 08:41:05 2024 +0200 chore(deps): bump @docsearch/react from 3.5.2 to 3.6.1 (#811) Bumps [@docsearch/react](https://github.com/algolia/docsearch) from 3.5.2 to 3.6.1. - [Release notes](https://github.com/algolia/docsearch/releases) - [Changelog](https://github.com/algolia/docsearch/blob/main/CHANGELOG.md) - [Commits](https://github.com/algolia/docsearch/compare/v3.5.2...v3.6.1) --- updated-dependencies: - dependency-name: "@docsearch/react" dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> commit c90385bec3654c0427ef79b7ae9def388f6ab523 Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed Jul 24 08:40:47 2024 +0200 chore(deps): bump @types/react-syntax-highlighter (#812) Bumps [@types/react-syntax-highlighter](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react-syntax-highlighter) from 15.5.10 to 15.5.13. - [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases) - [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/react-syntax-highlighter) --- updated-dependencies: - dependency-name: "@types/react-syntax-highlighter" dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> commit e78dfaf67a902841645657f2251c08a8b05458b6 Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed Jul 24 08:40:27 2024 +0200 chore(deps): bump eslint-plugin-n from 16.3.1 to 16.6.2 (#810) Bumps [eslint-plugin-n](https://github.com/eslint-community/eslint-plugin-n) from 16.3.1 to 16.6.2. - [Release notes](https://github.com/eslint-community/eslint-plugin-n/releases) - [Changelog](https://github.com/eslint-community/eslint-plugin-n/blob/master/CHANGELOG.md) - [Commits](https://github.com/eslint-community/eslint-plugin-n/compare/16.3.1...16.6.2) --- updated-dependencies: - dependency-name: eslint-plugin-n dependency-type: direct:development update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> commit 674943c06076dc6e6e9aa5857d020d7bca1b4af4 Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed Jul 24 08:40:03 2024 +0200 chore(deps): bump Renato66/auto-label from 3.0.0 to 3.1.0 (#809) Bumps [Renato66/auto-label](https://github.com/renato66/auto-label) from 3.0.0 to 3.1.0. - [Release notes](https://github.com/renato66/auto-label/releases) - [Commits](https://github.com/renato66/auto-label/compare/v3.0.0...v3.1.0) --- updated-dependencies: - dependency-name: Renato66/auto-label dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> commit 4d947f54fbd6641b308b5bd7cff1109ecab21b79 Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed Jul 24 08:39:35 2024 +0200 chore(deps): bump eslint-plugin-react from 7.33.2 to 7.35.0 (#813) Bumps [eslint-plugin-react](https://github.com/jsx-eslint/eslint-plugin-react) from 7.33.2 to 7.35.0. - [Release notes](https://github.com/jsx-eslint/eslint-plugin-react/releases) - [Changelog](https://github.com/jsx-eslint/eslint-plugin-react/blob/master/CHANGELOG.md) - [Commits](https://github.com/jsx-eslint/eslint-plugin-react/compare/v7.33.2...v7.35.0) --- updated-dependencies: - dependency-name: eslint-plugin-react dependency-type: direct:development update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> commit af4ba88dd78fc437b41f7e6edb0a4a141d1deb14 Author: Benjamin Granados <40007659+benjagm@users.noreply.github.com> Date: Mon Jul 22 14:04:44 2024 +0200 Add new sponsors (#814) commit 71a18df1fe5ee4e421ec9f2c64b86181484391ca Author: Alok Gupta Date: Tue Jul 16 22:08:08 2024 +0530 Chore(github-actions) : add CI/CD workflows guidelines and improve naming conventions (#789) * chore(ci.yml) improve naming of ci.yml workflow * chore(issue.yml) : improve workflow steps, jobs name for better clarity and consistency * chore(link.yml & pr_target.yml) : Improve docs * renamed links.yml and stale.yml * Added workflow guidelines documentation commit 10bb5d4eecb136c8e4b1da7175b285475e33a311 Author: Juan Cruz Viotti Date: Tue Jul 16 12:35:24 2024 -0400 Add JSON Toolkit as a C++ implementation (#761) Signed-off-by: Juan Cruz Viotti commit a842501471c495502c181480b7ea566baa24cf1e Author: Zeel Rajodiya Date: Tue Jul 16 22:04:47 2024 +0530 Enchantment Dark Mode Toggle shows a popup (#735) * Refactor DarkModeToggle component to include a theme selection dropdown * Refactor DarkModeToggle component to include a theme selection dropdown Fix dark mode toggle icon rendering issue commit eda0dcfc8171c54e1c3e9a253b5b0931edc71dd4 Author: Joost Holslag Date: Tue Jul 16 18:31:38 2024 +0200 remove trailing comma from getting-started-step-by-step.md (#800) commit 8f18c3aae080080a6a0a60a7faeb5a9852a4a00e Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue Jul 16 18:29:22 2024 +0200 chore(deps): bump react and @types/react (#744) Bumps [react](https://github.com/facebook/react/tree/HEAD/packages/react) and [@types/react](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react). These dependencies needed to be updated together. Updates `react` from 18.2.0 to 18.3.1 - [Release notes](https://github.com/facebook/react/releases) - [Changelog](https://github.com/facebook/react/blob/main/CHANGELOG.md) - [Commits](https://github.com/facebook/react/commits/v18.3.1/packages/react) Updates `@types/react` from 18.2.37 to 18.3.3 - [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases) - [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/react) --- updated-dependencies: - dependency-name: react dependency-type: direct:production update-type: version-update:semver-minor - dependency-name: "@types/react" dependency-type: direct:development update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Benjamin Granados <40007659+benjagm@users.noreply.github.com> commit fa59c06f4b090a646491a17acaf48b869c1b89cc Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue Jul 16 16:27:55 2024 +0200 chore(deps): bump next from 14.1.1 to 14.2.5 (#794) Bumps [next](https://github.com/vercel/next.js) from 14.1.1 to 14.2.5. - [Release notes](https://github.com/vercel/next.js/releases) - [Changelog](https://github.com/vercel/next.js/blob/canary/release.js) - [Commits](https://github.com/vercel/next.js/compare/v14.1.1...v14.2.5) --- updated-dependencies: - dependency-name: next dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> commit 43e36542a411d7d0ba611adade7bf6dc05b77dde Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue Jul 16 16:27:03 2024 +0200 chore(deps): bump @types/node from 20.10.1 to 20.14.10 (#798) Bumps [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) from 20.10.1 to 20.14.10. - [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases) - [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node) --- updated-dependencies: - dependency-name: "@types/node" dependency-type: direct:development update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> commit d30dd6913374abb09c9d9c3d3c54f8adb1db4a34 Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue Jul 16 16:26:31 2024 +0200 chore(deps): bump markdown-to-jsx from 7.3.2 to 7.4.7 (#799) Bumps [markdown-to-jsx](https://github.com/quantizor/markdown-to-jsx) from 7.3.2 to 7.4.7. - [Release notes](https://github.com/quantizor/markdown-to-jsx/releases) - [Changelog](https://github.com/quantizor/markdown-to-jsx/blob/main/CHANGELOG.md) - [Commits](https://github.com/quantizor/markdown-to-jsx/compare/v7.3.2...v7.4.7) --- updated-dependencies: - dependency-name: markdown-to-jsx dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> commit 605bbb37fb4819d823c089afa7b0db2ffcee0f2e Author: Alok Gupta Date: Tue Jul 16 19:19:49 2024 +0530 Added two workflows for fetching contributor and project roadmap data (#781) * github-actions : added sync.contributors.yml * github-actions : Added sync-project-roadmap.yml commit e9d84d05f411c4d5ac1693cc8f1a48ccf65444ce Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu Jul 11 08:21:52 2024 +0200 chore(deps): bump next-themes from 0.2.1 to 0.3.0 (#743) Bumps [next-themes](https://github.com/pacocoursey/next-themes) from 0.2.1 to 0.3.0. - [Release notes](https://github.com/pacocoursey/next-themes/releases) - [Commits](https://github.com/pacocoursey/next-themes/commits/v0.3.0) --- updated-dependencies: - dependency-name: next-themes dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> commit f7b499e666858b816b37f5453426fd140015a7c9 Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu Jul 11 08:21:38 2024 +0200 chore(deps): bump actions/github-script from 6 to 7 (#740) Bumps [actions/github-script](https://github.com/actions/github-script) from 6 to 7. - [Release notes](https://github.com/actions/github-script/releases) - [Commits](https://github.com/actions/github-script/compare/v6...v7) --- updated-dependencies: - dependency-name: actions/github-script dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> commit 81de1e47238b93fbc9951c5dd5e10e1ce3d2bec2 Author: Benjamin Granados <40007659+benjagm@users.noreply.github.com> Date: Mon Jul 8 17:25:06 2024 +0200 Add new sopnsor (#793) commit 2b5b44ef47d40480f9e5839da464c60c06bbd33a Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon Jul 8 11:03:58 2024 +0200 chore(deps): bump eslint-plugin-promise from 6.1.1 to 6.4.0 (#787) Bumps [eslint-plugin-promise](https://github.com/eslint-community/eslint-plugin-promise) from 6.1.1 to 6.4.0. - [Release notes](https://github.com/eslint-community/eslint-plugin-promise/releases) - [Changelog](https://github.com/eslint-community/eslint-plugin-promise/blob/main/CHANGELOG.md) - [Commits](https://github.com/eslint-community/eslint-plugin-promise/compare/v6.1.1...v6.4.0) --- updated-dependencies: - dependency-name: eslint-plugin-promise dependency-type: direct:development update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> commit ae2a377abed26397f29724a5b89a62acd6909c82 Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon Jul 8 11:02:13 2024 +0200 chore(deps): bump Renato66/auto-label from 2.3.0 to 3.0.0 (#788) Bumps [Renato66/auto-label](https://github.com/renato66/auto-label) from 2.3.0 to 3.0.0. - [Release notes](https://github.com/renato66/auto-label/releases) - [Commits](https://github.com/renato66/auto-label/compare/v2.3.0...v3.0.0) --- updated-dependencies: - dependency-name: Renato66/auto-label dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> commit 72414490bf7fac5b937b8a415a25c244caccb31e Author: Tabah Baridule M Date: Wed Jun 26 16:56:00 2024 +0100 Update pages/understanding-json-schema/structuring.md Co-authored-by: Jason Desrosiers commit bd7ddb276fa78ab533f510ebef571672aa9f22ea Author: Tabah Baridule M. Date: Tue Jun 25 15:51:14 2024 +0100 Update structuring.md commit 3a29a3371f52b65fd73512078a7777fe5a361ed2 Author: Tabah Baridule M. Date: Tue Jun 25 15:49:36 2024 +0100 The URI-references without fragment was remove commit 43dd3f9096942a5fca86cb06da22949671c8fcbc Author: Tabah Baridule M. Date: Mon Apr 22 18:00:34 2024 +0100 Updated the `$id` and included a Draft-specific info box section --------- Co-authored-by: Dhairya Majmudar <124715224+DhairyaMajmudar@users.noreply.github.com> Co-authored-by: Dhairya Majmudar <2022kuec2045@iiitkota.ac.in> --- components/GettingStarted.tsx | 258 ++++++++++++++++++ package.json | 3 + .../getting-started-step-by-step.md | 31 +-- .../index.page.tsx | 47 ++++ .../next-steps.md | 12 + public/data/getting-started-examples.json | 84 ++++++ .../instances/conditional-ok.json | 4 + .../instances/default-extended-ok.json | 15 + .../instances/default-ko.json | 5 + .../instances/default-ok.json | 6 + .../instances/enumerated-ok.json | 3 + .../instances/regex-ok.json | 3 + .../schemas/conditional.json | 39 +++ .../schemas/default-extended.json | 51 ++++ .../schemas/default.json | 32 +++ .../schemas/enumerated.json | 11 + .../schemas/regex.json | 12 + public/icons/green-tick.svg | 1 + public/icons/red-cross.svg | 17 ++ yarn.lock | 137 +++++++--- 20 files changed, 717 insertions(+), 54 deletions(-) create mode 100644 components/GettingStarted.tsx rename pages/learn/{ => getting-started-step-by-step}/getting-started-step-by-step.md (90%) create mode 100644 pages/learn/getting-started-step-by-step/index.page.tsx create mode 100644 pages/learn/getting-started-step-by-step/next-steps.md create mode 100644 public/data/getting-started-examples.json create mode 100644 public/data/getting-started-examples/instances/conditional-ok.json create mode 100644 public/data/getting-started-examples/instances/default-extended-ok.json create mode 100644 public/data/getting-started-examples/instances/default-ko.json create mode 100644 public/data/getting-started-examples/instances/default-ok.json create mode 100644 public/data/getting-started-examples/instances/enumerated-ok.json create mode 100644 public/data/getting-started-examples/instances/regex-ok.json create mode 100644 public/data/getting-started-examples/schemas/conditional.json create mode 100644 public/data/getting-started-examples/schemas/default-extended.json create mode 100644 public/data/getting-started-examples/schemas/default.json create mode 100644 public/data/getting-started-examples/schemas/enumerated.json create mode 100644 public/data/getting-started-examples/schemas/regex.json create mode 100644 public/icons/green-tick.svg create mode 100644 public/icons/red-cross.svg diff --git a/components/GettingStarted.tsx b/components/GettingStarted.tsx new file mode 100644 index 000000000..a17382121 --- /dev/null +++ b/components/GettingStarted.tsx @@ -0,0 +1,258 @@ +import React, { useState, useEffect } from 'react'; +import { atomOneDark } from 'react-syntax-highlighter/dist/cjs/styles/hljs'; +import Highlight from 'react-syntax-highlighter'; +import JSZip from 'jszip'; +import { saveAs } from 'file-saver'; + +async function fetchData() { + const response = await fetch('/data/getting-started-examples.json'); + const data = await response.json(); + + const defaultSchemaData = data.find((data: any) => data.default === true); + + const schemaResp = await fetch(defaultSchemaData.file); + const schemaData = await schemaResp.json(); + + const defaultInstanceData = defaultSchemaData.instances.find( + (instance: any) => instance.default === true, + ); + + const instanceResp = await fetch(defaultInstanceData.file); + const instanceData = await instanceResp.json(); + + return { + data, + schemaData, + instanceData, + initialInstance: defaultSchemaData.instances, + initialDetails: [defaultInstanceData.details, defaultInstanceData.valid], + }; +} + +interface SchemaOption { + file: string; + instances: InstanceOption[]; +} + +interface InstanceOption { + file: string; + details: string; + valid: string; +} + +const GettingStarted = () => { + useEffect(() => { + fetchData() + .then( + ({ + data, + schemaData, + instanceData, + initialInstance, + initialDetails, + }) => { + setOptions(data); + setFetchedSchema(schemaData); + setFetchedInstance(instanceData); + setInstances(initialInstance); + setDetails(initialDetails); + }, + ) + .catch((e) => console.log('Error: ', e)); + }, []); + + const [options, setOptions] = useState([]); + const [instances, setInstances] = useState([]); + const [details, setDetails] = useState(['', '']); + const [fetchedSchema, setFetchedSchema] = useState(); + const [fetchedInstance, setFetchedInstance] = useState(); + + const handleSchemaChange = async ( + e: React.ChangeEvent, + ) => { + const selectedSchema = options.find( + (schema) => schema.file === e.target.value, + ); + + if (selectedSchema) { + const schemaResponse = await fetch(e.target.value); + const schData = await schemaResponse.json(); + + setFetchedSchema(schData); + setInstances(selectedSchema.instances); + + const instResp = await fetch(selectedSchema.instances[0].file); + const instData = await instResp.json(); + setFetchedInstance(instData); + } else { + setInstances([]); + setFetchedSchema(null!); + } + }; + + const handleInstanceChange = async ( + e: React.ChangeEvent, + ) => { + const selectedInstance = instances.find( + (instance) => instance.file === e.target.value, + ) as InstanceOption; + + if (selectedInstance) { + const instanceResponse = await fetch(e.target.value); + const instanceData = await instanceResponse.json(); + + setFetchedInstance(instanceData); + setDetails([selectedInstance.details, selectedInstance.valid]); + } else { + setFetchedInstance(undefined); + } + }; + + const createZip = async () => { + try { + const zip = new JSZip(); + zip.file('schema.json', JSON.stringify(fetchedSchema, null, 2)); + zip.file('instance.json', JSON.stringify(fetchedInstance, null, 2)); + + zip.generateAsync({ type: 'blob' }).then((content) => { + saveAs(content, 'getting-started-examples.zip'); + }); + } catch (e) { + console.log('Error zipping files', e); + } + }; + + return ( + <> +
+
+
+

JSON Schema

+
+ + +
+
+ +
+ { + const isHighlighted = false; + return { + className: `${isHighlighted ? 'bg-code-editor-dark-highlight block ml-10 w-full' : ''} pr-8`, + }; + }} + codeTagProps={{ + className: 'mr-8', + }} + > + {JSON.stringify(fetchedSchema, null, 2)} + +
+
+ +
+
+

JSON Instance

+
+ + +
+
+
+ { + const isHighlighted = false; + return { + className: `${isHighlighted ? 'bg-code-editor-dark-highlight block ml-10 w-full' : ''} pr-8`, + }; + }} + codeTagProps={{ + className: 'mr-8', + }} + > + {JSON.stringify(fetchedInstance, null, 2)} + +
+

Validation Result

+
+

{details[0]}

+ + {details[1] ? ( + green tick + ) : ( + red cross + )} +
+
+ + +
+ + ); +}; + +export default GettingStarted; diff --git a/package.json b/package.json index 25a9de30c..371a344a7 100644 --- a/package.json +++ b/package.json @@ -25,8 +25,10 @@ "axios": "1.7.2", "classnames": "^2.3.1", "feed": "^4.2.2", + "file-saver": "^2.0.5", "gray-matter": "^4.0.3", "js-yaml": "^4.1.0", + "jszip": "^3.10.1", "markdown-to-jsx": "^7.4.7", "moment": "2.29.4", "next": "14.2.5", @@ -47,6 +49,7 @@ }, "devDependencies": { "@next/eslint-plugin-next": "^14.0.1", + "@types/file-saver": "^2.0.7", "@types/js-yaml": "^4.0.5", "@types/node": "^20.0.0", "@types/react": "18.3.3", diff --git a/pages/learn/getting-started-step-by-step.md b/pages/learn/getting-started-step-by-step/getting-started-step-by-step.md similarity index 90% rename from pages/learn/getting-started-step-by-step.md rename to pages/learn/getting-started-step-by-step/getting-started-step-by-step.md index 31e2cdfde..30731701e 100644 --- a/pages/learn/getting-started-step-by-step.md +++ b/pages/learn/getting-started-step-by-step/getting-started-step-by-step.md @@ -3,9 +3,11 @@ title: Creating your first schema section: docs --- -JSON Schema is a vocabulary that you can use to annotate and validate JSON documents. This tutorial guides you through the process of creating a JSON Schema document. +JSON Schema is a vocabulary that you can use to annotate and validate JSON documents. This tutorial guides you through the process of creating a JSON Schema. -After you create the JSON Schema document, you can validate the example data against your schema using a validator in a language of your choice. See [Tools](https://json-schema.org/implementations) for a current list of supported validators. +After creating your JSON Schema, you can then validate example data against your schema by using a validator in a language of your choice. Please, visit [Tools](https://json-schema.org/implementations#validators) and select the validator that better suit your needs. + +If you already know how to create JSON Schemas and you are looking for different JSON Schema use cases like schema generation, code generation, documentation, UI generation or JSON Schema processing or conversion, please visit [Tools](https://json-schema.org/implementations) and explore the amazing tooling available in the JSON Schema Ecosystem. @@ -573,28 +575,11 @@ With the external schema reference, the overall schema looks like this: ## Validate JSON data against the schema -This section describes how to validate JSON data against the product catalog schema. +Now that you have your JSON Schema is time to validate [JSON data](https://json-schema.org/learn/glossary#instance) against it using a [JSON Schema Validator](https://json-schema.org/implementations#validators). -This example JSON data matches the product catalog schema: +A Validator is a tool that implements the JSON Schema specification. All validators works in a similar way: they take a JSON Schema and a JSON Instance as input and they returns the validation result as output. -```json -{ - "productId": 1, - "productName": "An ice sculpture", - "price": 12.50, - "tags": [ "cold", "ice" ], - "dimensions": { - "length": 7.0, - "width": 12.0, - "height": 9.5 - }, - "warehouseLocation": { - "latitude": -78.75, - "longitude": 20.4 - } -} -``` +![How JSON Schema works](https://json-schema.org/img/json_schema.svg) -To validate this JSON data against the product catalog JSON Schema, you can use any validator of your choice. In addition to command-line and browser tools, validation tools are available in a wide range of languages, including Java, Python, .NET, and many others. To find a validator that’s right for your project, see [Tools](https://json-schema.org/implementations). +To try it yourself, please visit [Tools](https://json-schema.org/implementations#validators) and select the validator that better suit your needs, our use the editors available below to explore the different Schemas and Instances and see the different validation results. -Use the example JSON data as the input data and the product catalog JSON Schema as the schema. Your validation tool compares the data against the schema, and if the data meets all the requirements defined in the schema, validation is successful. diff --git a/pages/learn/getting-started-step-by-step/index.page.tsx b/pages/learn/getting-started-step-by-step/index.page.tsx new file mode 100644 index 000000000..b1b8b7eb2 --- /dev/null +++ b/pages/learn/getting-started-step-by-step/index.page.tsx @@ -0,0 +1,47 @@ +import React from 'react'; +import fs from 'fs'; + +import { getLayout } from '~/components/Sidebar'; +import Head from 'next/head'; +import { Headline1 } from '~/components/Headlines'; +import matter from 'gray-matter'; +import StyledMarkdown from '~/components/StyledMarkdown'; +import { SectionContext } from '~/context'; +import { DocsHelp } from '~/components/DocsHelp'; +import GettingStarted from '~/components/GettingStarted'; + +export async function getStaticProps() { + const block1 = fs.readFileSync( + 'pages/learn/getting-started-step-by-step/getting-started-step-by-step.md', + 'utf-8', + ); + const block2 = fs.readFileSync( + 'pages/learn/getting-started-step-by-step/next-steps.md', + 'utf-8', + ); + const { content: block1Content } = matter(block1); + const { content: block2Content } = matter(block2); + return { + props: { + blocks: [block1Content, block2Content], + }, + }; +} + +export default function StyledValidator({ blocks }: { blocks: any[] }) { + const newTitle = 'Creating your first schema'; + + return ( + + + {newTitle} + + {newTitle} + + + + + + ); +} +StyledValidator.getLayout = getLayout; diff --git a/pages/learn/getting-started-step-by-step/next-steps.md b/pages/learn/getting-started-step-by-step/next-steps.md new file mode 100644 index 000000000..a986de19d --- /dev/null +++ b/pages/learn/getting-started-step-by-step/next-steps.md @@ -0,0 +1,12 @@ +--- +title: Getting Started Next Steps +section: docs +--- + +## What Next? + +Now that you know how to create a JSON Schema and use it to validate JSON data, we'd invite you to continue your JSON Schema journey: +* Learn more about JSON Schema by visiting the [reference documentation](../understanding-json-schema). +* Explore the details of the current version of the Spec [2020-12](https://json-schema.org/specification). + +If you already know how to create JSON Schemas and you are looking for different JSON Schema use cases like schema generation, code generation, documentation, UI generation or JSON Schema processing or conversion, please visit [Tools](https://json-schema.org/implementations) and explore the amazing tooling available in the JSON Schema Ecosystem. \ No newline at end of file diff --git a/public/data/getting-started-examples.json b/public/data/getting-started-examples.json new file mode 100644 index 000000000..b723ab71d --- /dev/null +++ b/public/data/getting-started-examples.json @@ -0,0 +1,84 @@ +[ + { + "name": "Getting started basic schema", + "default": true, + "file": "/data/getting-started-examples/schemas/default.json", + "instances": [ + { + "name": "Valid instance", + "default": true, + "valid": true, + "file": "/data/getting-started-examples/instances/default-ok.json", + "details": "This is a valid JSON instance for the provided JSON Schema" + }, + { + "name": "Invalid instance", + "default": false, + "valid": false, + "file": "/data/getting-started-examples/instances/default-ko.json", + "details": "Invalid: The value of 'price' property must be a number" + } + ] + }, + + { + "name": "Getting started extended schema", + "default": false, + "file": "/data/getting-started-examples/schemas/default-extended.json", + "instances": [ + { + "name": "Valid instance", + "default": true, + "valid": true, + "file": "/data/getting-started-examples/instances/default-extended-ok.json", + "details": "This is a valid JSON instance for the provided JSON Schema" + } + ] + }, + + { + "name": "Enumerated values schema", + "default": false, + "file": "/data/getting-started-examples/schemas/enumerated.json", + "instances": [ + { + "name": "Valid instance", + "default": true, + "valid": true, + "file": "/data/getting-started-examples/instances/enumerated-ok.json", + "details": "This is a valid JSON instance for the provided JSON Schema" + } + ] + }, + + { + "name": "Regular expression schema", + "default": false, + "file": "/data/getting-started-examples/schemas/regex.json", + "instances": [ + { + "name": "Valid instance", + "default": true, + "valid": true, + "file": "/data/getting-started-examples/instances/regex-ok.json", + "details": "This is a valid JSON instance for the provided JSON Schema" + } + ] + }, + + { + "name": "Conditional validation with if-else schema", + "default": false, + "file": "/data/getting-started-examples/schemas/conditional.json", + "instances": [ + { + "name": "Valid instance", + "default": true, + "valid": true, + "file": "/data/getting-started-examples/instances/conditional-ok.json", + "details": "This is a valid JSON instance for the provided JSON Schema" + } + ] + } + +] diff --git a/public/data/getting-started-examples/instances/conditional-ok.json b/public/data/getting-started-examples/instances/conditional-ok.json new file mode 100644 index 000000000..95e0d986b --- /dev/null +++ b/public/data/getting-started-examples/instances/conditional-ok.json @@ -0,0 +1,4 @@ +{ + "isMember": true, + "membershipNumber": "1234567890" + } \ No newline at end of file diff --git a/public/data/getting-started-examples/instances/default-extended-ok.json b/public/data/getting-started-examples/instances/default-extended-ok.json new file mode 100644 index 000000000..adab3fa26 --- /dev/null +++ b/public/data/getting-started-examples/instances/default-extended-ok.json @@ -0,0 +1,15 @@ +{ + "productId": 1, + "productName": "An ice sculpture", + "price": 12.5, + "tags": ["cold", "ice"], + "dimensions": { + "length": 7.0, + "width": 12.0, + "height": 9.5 + }, + "warehouseLocation": { + "latitude": -78.75, + "longitude": 20.4 + } +} diff --git a/public/data/getting-started-examples/instances/default-ko.json b/public/data/getting-started-examples/instances/default-ko.json new file mode 100644 index 000000000..4c04215da --- /dev/null +++ b/public/data/getting-started-examples/instances/default-ko.json @@ -0,0 +1,5 @@ +{ + "productId": 1, + "product": "An ice sculpture", + "price": "100" +} diff --git a/public/data/getting-started-examples/instances/default-ok.json b/public/data/getting-started-examples/instances/default-ok.json new file mode 100644 index 000000000..f9aabe01c --- /dev/null +++ b/public/data/getting-started-examples/instances/default-ok.json @@ -0,0 +1,6 @@ +{ + "productId": 1, + "productName": "An ice sculpture", + "price": 12.5, + "tags": ["cold", "ice"] +} diff --git a/public/data/getting-started-examples/instances/enumerated-ok.json b/public/data/getting-started-examples/instances/enumerated-ok.json new file mode 100644 index 000000000..4ad5e5aed --- /dev/null +++ b/public/data/getting-started-examples/instances/enumerated-ok.json @@ -0,0 +1,3 @@ +{ + "data": [1, 2, 3] +} \ No newline at end of file diff --git a/public/data/getting-started-examples/instances/regex-ok.json b/public/data/getting-started-examples/instances/regex-ok.json new file mode 100644 index 000000000..6255bcc09 --- /dev/null +++ b/public/data/getting-started-examples/instances/regex-ok.json @@ -0,0 +1,3 @@ +{ + "code": "ABC-123" +} \ No newline at end of file diff --git a/public/data/getting-started-examples/schemas/conditional.json b/public/data/getting-started-examples/schemas/conditional.json new file mode 100644 index 000000000..10c924c4f --- /dev/null +++ b/public/data/getting-started-examples/schemas/conditional.json @@ -0,0 +1,39 @@ +{ + "$id": "https://example.com/conditional-validation-if-else.schema.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", + "title": "Conditional Validation with If-Else", + "type": "object", + "properties": { + "isMember": { + "type": "boolean" + }, + "membershipNumber": { + "type": "string" + } + }, + "required": ["isMember"], + "if": { + "properties": { + "isMember": { + "const": true + } + } + }, + "then": { + "properties": { + "membershipNumber": { + "type": "string", + "minLength": 10, + "maxLength": 10 + } + } + }, + "else": { + "properties": { + "membershipNumber": { + "type": "string", + "minLength": 15 + } + } + } + } \ No newline at end of file diff --git a/public/data/getting-started-examples/schemas/default-extended.json b/public/data/getting-started-examples/schemas/default-extended.json new file mode 100644 index 000000000..8ff9cc558 --- /dev/null +++ b/public/data/getting-started-examples/schemas/default-extended.json @@ -0,0 +1,51 @@ +{ + "$schema": "https://json-schema.org/draft/2020-12/schema", + "$id": "https://example.com/product.schema.json", + "title": "Product", + "description": "A product from Acme's catalog", + "type": "object", + "properties": { + "productId": { + "description": "The unique identifier for a product", + "type": "integer" + }, + "productName": { + "description": "Name of the product", + "type": "string" + }, + "price": { + "description": "The price of the product", + "type": "number", + "exclusiveMinimum": 0 + }, + "tags": { + "description": "Tags for the product", + "type": "array", + "items": { + "type": "string" + }, + "minItems": 1, + "uniqueItems": true + }, + "dimensions": { + "type": "object", + "properties": { + "length": { + "type": "number" + }, + "width": { + "type": "number" + }, + "height": { + "type": "number" + } + }, + "required": ["length", "width", "height"] + }, + "warehouseLocation": { + "description": "Coordinates of the warehouse where the product is located.", + "$ref": "https://example.com/geographical-location.schema.json" + } + }, + "required": ["productId", "productName", "price"] +} \ No newline at end of file diff --git a/public/data/getting-started-examples/schemas/default.json b/public/data/getting-started-examples/schemas/default.json new file mode 100644 index 000000000..c783e1b70 --- /dev/null +++ b/public/data/getting-started-examples/schemas/default.json @@ -0,0 +1,32 @@ +{ + "$schema": "https://json-schema.org/draft/2020-12/schema", + "$id": "https://example.com/product.schema.json", + "title": "Product", + "description": "A product from Acme's catalog", + "type": "object", + "properties": { + "productId": { + "description": "The unique identifier for a product", + "type": "integer" + }, + "productName": { + "description": "Name of the product", + "type": "string" + }, + "price": { + "description": "The price of the product", + "type": "number", + "exclusiveMinimum": 0 + }, + "tags": { + "description": "Tags for the product", + "type": "array", + "items": { + "type": "string" + }, + "minItems": 1, + "uniqueItems": true + } + }, + "required": ["productId", "productName", "price"] +} diff --git a/public/data/getting-started-examples/schemas/enumerated.json b/public/data/getting-started-examples/schemas/enumerated.json new file mode 100644 index 000000000..c7e9e1588 --- /dev/null +++ b/public/data/getting-started-examples/schemas/enumerated.json @@ -0,0 +1,11 @@ +{ + "$id": "https://example.com/enumerated-values.schema.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", + "title": "Enumerated Values", + "type": "object", + "properties": { + "data": { + "enum": [42, true, "hello", null, [1, 2, 3]] + } + } +} \ No newline at end of file diff --git a/public/data/getting-started-examples/schemas/regex.json b/public/data/getting-started-examples/schemas/regex.json new file mode 100644 index 000000000..7d23a0d87 --- /dev/null +++ b/public/data/getting-started-examples/schemas/regex.json @@ -0,0 +1,12 @@ +{ + "$id": "https://example.com/regex-pattern.schema.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", + "title": "Regular Expression Pattern", + "type": "object", + "properties": { + "code": { + "type": "string", + "pattern": "^[A-Z]{3}-\\d{3}$" + } + } +} \ No newline at end of file diff --git a/public/icons/green-tick.svg b/public/icons/green-tick.svg new file mode 100644 index 000000000..0301794bb --- /dev/null +++ b/public/icons/green-tick.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/public/icons/red-cross.svg b/public/icons/red-cross.svg new file mode 100644 index 000000000..758f9b0c0 --- /dev/null +++ b/public/icons/red-cross.svg @@ -0,0 +1,17 @@ + + + + + + + + diff --git a/yarn.lock b/yarn.lock index 234ba681a..955fc0994 100644 --- a/yarn.lock +++ b/yarn.lock @@ -381,6 +381,11 @@ "@swc/counter" "^0.1.3" tslib "^2.4.0" +"@types/file-saver@^2.0.7": + version "2.0.7" + resolved "https://registry.yarnpkg.com/@types/file-saver/-/file-saver-2.0.7.tgz#8dbb2f24bdc7486c54aa854eb414940bbd056f7d" + integrity sha512-dNKVfHd/jk0SkR/exKGj2ggkB45MAkzvWCaqLUUgkyjITkGNzH8H+yUwr+BLJUBjZOe9w8X3wgmXhZDRg1ED6A== + "@types/hast@^2.0.0": version "2.3.8" resolved "https://registry.yarnpkg.com/@types/hast/-/hast-2.3.8.tgz#4ac5caf38b262b7bd5ca3202dda71f0271635660" @@ -1088,6 +1093,11 @@ concat-map@0.0.1: resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b" integrity sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg== +core-util-is@~1.0.0: + version "1.0.3" + resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.3.tgz#a6042d3634c2b27e9328f837b965fac83808db85" + integrity sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ== + cross-spawn@^7.0.0, cross-spawn@^7.0.2: version "7.0.3" resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-7.0.3.tgz#f73a85b9d5d41d045551c177e2882d4ac85728a6" @@ -1806,6 +1816,11 @@ file-entry-cache@^6.0.1: dependencies: flat-cache "^3.0.4" +file-saver@^2.0.5: + version "2.0.5" + resolved "https://registry.yarnpkg.com/file-saver/-/file-saver-2.0.5.tgz#d61cfe2ce059f414d899e9dd6d4107ee25670c38" + integrity sha512-P9bmyZ3h/PRG+Nzga+rbdI4OEpNDzAVyy74uVO9ATgzLK6VtAsYybF/+TOCvrc0MO793d6+42lLyZTw7/ArVzA== + fill-range@^7.0.1: version "7.0.1" resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-7.0.1.tgz#1919a6a7c75fe38b2c7c77e5198535da9acdda40" @@ -2142,6 +2157,11 @@ ignore@^5.1.1, ignore@^5.2.0, ignore@^5.2.4: resolved "https://registry.yarnpkg.com/ignore/-/ignore-5.3.0.tgz#67418ae40d34d6999c95ff56016759c718c82f78" integrity sha512-g7dmpshy+gD7mh88OC9NwSGTKoc3kyLAZQRU1mt53Aw/vnvfXnbC+F/7F7QoYVKbV+KNvJx8wArewKy1vXMtlg== +immediate@~3.0.5: + version "3.0.6" + resolved "https://registry.yarnpkg.com/immediate/-/immediate-3.0.6.tgz#9db1dbd0faf8de6fbe0f5dd5e56bb606280de69b" + integrity sha512-XXOFtyqDjNDAQxVfYxuF7g9Il/IbWmmlQg2MYKOH8ExIT1qg6xc4zyS3HaEEATgs1btfzxq15ciUiY7gjSXRGQ== + immer@^10.0.3: version "10.0.3" resolved "https://registry.yarnpkg.com/immer/-/immer-10.0.3.tgz#a8de42065e964aa3edf6afc282dfc7f7f34ae3c9" @@ -2168,7 +2188,7 @@ inflight@^1.0.4: once "^1.3.0" wrappy "1" -inherits@2: +inherits@2, inherits@~2.0.3: version "2.0.4" resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.4.tgz#0fa2c64f932917c3433a0ded55363aae37416b7c" integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ== @@ -2451,6 +2471,11 @@ isarray@^2.0.5: resolved "https://registry.yarnpkg.com/isarray/-/isarray-2.0.5.tgz#8af1e4c1221244cc62459faf38940d4e644a5723" integrity sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw== +isarray@~1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/isarray/-/isarray-1.0.0.tgz#bb935d48582cba168c06834957a54a3e07124f11" + integrity sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ== + isexe@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10" @@ -2533,6 +2558,16 @@ json5@^1.0.2: object.assign "^4.1.4" object.values "^1.1.6" +jszip@^3.10.1: + version "3.10.1" + resolved "https://registry.yarnpkg.com/jszip/-/jszip-3.10.1.tgz#34aee70eb18ea1faec2f589208a157d1feb091c2" + integrity sha512-xXDvecyTpGLrqFrvkrUSoxxfJI5AH7U8zxxtVclpsUtMCq4JQ290LY8AW5c7Ggnr/Y/oK+bQMbqK2qmtk3pN4g== + dependencies: + lie "~3.3.0" + pako "~1.0.2" + readable-stream "~2.3.6" + setimmediate "^1.0.5" + keyv@^4.5.3: version "4.5.4" resolved "https://registry.yarnpkg.com/keyv/-/keyv-4.5.4.tgz#a879a99e29452f942439f2a405e3af8b31d4de93" @@ -2565,6 +2600,13 @@ levn@^0.4.1: prelude-ls "^1.2.1" type-check "~0.4.0" +lie@~3.3.0: + version "3.3.0" + resolved "https://registry.yarnpkg.com/lie/-/lie-3.3.0.tgz#dcf82dee545f46074daf200c7c1c5a08e0f40f6a" + integrity sha512-UaiMJzeWRlEujzAuw5LokY1L5ecNQYZKfmyZ9L7wDHb/p5etKaxXhohBcrw0EYby+G/NA52vRSN4N39dxHAIwQ== + dependencies: + immediate "~3.0.5" + lilconfig@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/lilconfig/-/lilconfig-2.1.0.tgz#78e23ac89ebb7e1bfbf25b18043de756548e7f52" @@ -2895,6 +2937,11 @@ p-locate@^5.0.0: dependencies: p-limit "^3.0.2" +pako@~1.0.2: + version "1.0.11" + resolved "https://registry.yarnpkg.com/pako/-/pako-1.0.11.tgz#6c9599d340d54dfd3946380252a35705a6b992bf" + integrity sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw== + parent-module@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/parent-module/-/parent-module-1.0.1.tgz#691d2709e78c79fae3a156622452d00762caaaa2" @@ -3052,6 +3099,11 @@ prismjs@~1.27.0: resolved "https://registry.yarnpkg.com/prismjs/-/prismjs-1.27.0.tgz#bb6ee3138a0b438a3653dd4d6ce0cc6510a45057" integrity sha512-t13BGPUlFDR7wRB5kQDG4jjl7XeuH6jbJGt11JHPL96qwsEHNX2+68tFXqc1/k+/jALsbSWJKUOT/hcYAZ5LkA== +process-nextick-args@~2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-2.0.1.tgz#7820d9b16120cc55ca9ae7792680ae7dba6d7fe2" + integrity sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag== + prop-types@^15.5.7, prop-types@^15.8.1: version "15.8.1" resolved "https://registry.yarnpkg.com/prop-types/-/prop-types-15.8.1.tgz#67d87bf1a694f48435cf332c24af10214a3140b5" @@ -3128,6 +3180,19 @@ read-cache@^1.0.0: dependencies: pify "^2.3.0" +readable-stream@~2.3.6: + version "2.3.8" + resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.8.tgz#91125e8042bba1b9887f49345f6277027ce8be9b" + integrity sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA== + dependencies: + core-util-is "~1.0.0" + inherits "~2.0.3" + isarray "~1.0.0" + process-nextick-args "~2.0.0" + safe-buffer "~5.1.1" + string_decoder "~1.1.1" + util-deprecate "~1.0.1" + readdirp@~3.6.0: version "3.6.0" resolved "https://registry.yarnpkg.com/readdirp/-/readdirp-3.6.0.tgz#74a370bd857116e245b29cc97340cd431a02a6c7" @@ -3246,16 +3311,6 @@ run-parallel@^1.1.9: dependencies: queue-microtask "^1.2.2" -safe-array-concat@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/safe-array-concat/-/safe-array-concat-1.0.1.tgz#91686a63ce3adbea14d61b14c99572a8ff84754c" - integrity sha512-6XbUAseYE2KtOuGueyeobCySj9L4+66Tn6KQMOPQJrAJEowYKW/YR/MGJZl7FdydUdaFu4LYyDZjxf4/Nmo23Q== - dependencies: - call-bind "^1.0.2" - get-intrinsic "^1.2.1" - has-symbols "^1.0.3" - isarray "^2.0.5" - safe-array-concat@^1.1.2: version "1.1.2" resolved "https://registry.yarnpkg.com/safe-array-concat/-/safe-array-concat-1.1.2.tgz#81d77ee0c4e8b863635227c721278dd524c20edb" @@ -3266,6 +3321,11 @@ safe-array-concat@^1.1.2: has-symbols "^1.0.3" isarray "^2.0.5" +safe-buffer@~5.1.0, safe-buffer@~5.1.1: + version "5.1.2" + resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.2.tgz#991ec69d296e0313747d59bdfd2b745c35f8828d" + integrity sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g== + safe-regex-test@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/safe-regex-test/-/safe-regex-test-1.0.0.tgz#793b874d524eb3640d1873aad03596db2d4f2295" @@ -3323,16 +3383,6 @@ semver@^7.0.0, semver@^7.5.3, semver@^7.5.4: dependencies: lru-cache "^6.0.0" -set-function-length@^1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/set-function-length/-/set-function-length-1.1.1.tgz#4bc39fafb0307224a33e106a7d35ca1218d659ed" - integrity sha512-VoaqjbBJKiWtg4yRcKBQ7g7wnGnLV3M8oLvVWwOk2PdYY6PEFegR1vezXR0tw6fZGF9csVakIRjrJiy2veSBFQ== - dependencies: - define-data-property "^1.1.1" - get-intrinsic "^1.2.1" - gopd "^1.0.1" - has-property-descriptors "^1.0.0" - set-function-length@^1.2.1: version "1.2.2" resolved "https://registry.yarnpkg.com/set-function-length/-/set-function-length-1.2.2.tgz#aac72314198eaed975cf77b2c3b6b880695e5449" @@ -3350,9 +3400,27 @@ set-function-name@^2.0.0, set-function-name@^2.0.1: resolved "https://registry.yarnpkg.com/set-function-name/-/set-function-name-2.0.1.tgz#12ce38b7954310b9f61faa12701620a0c882793a" integrity sha512-tMNCiqYVkXIZgc2Hnoy2IvC/f8ezc5koaRFkCjrpWzGpCd3qbZXPzVy9MAZzK1ch/X0jvSkojys3oqJN0qCmdA== dependencies: - define-data-property "^1.0.1" + 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" + +set-function-name@^2.0.2: + version "2.0.2" + resolved "https://registry.yarnpkg.com/set-function-name/-/set-function-name-2.0.2.tgz#16a705c5a0dc2f5e638ca96d8a8cd4e1c2b90985" + integrity sha512-7PGFlmtwsEADb0WYyvCMa1t+yke6daIG4Wirafur5kcf+MhUnPms1UeR0CKQdTZD81yESwMHbtn+TR+dMviakQ== + dependencies: + define-data-property "^1.1.4" + es-errors "^1.3.0" functions-have-names "^1.2.3" - has-property-descriptors "^1.0.0" + has-property-descriptors "^1.0.2" + +setimmediate@^1.0.5: + version "1.0.5" + resolved "https://registry.yarnpkg.com/setimmediate/-/setimmediate-1.0.5.tgz#290cbb232e306942d7d7ea9b83732ab7856f8285" + integrity sha512-MATJdZp8sLqDl/68LfQmbP8zKPLQNV6BIZoIgrscFDQ+RsvK/BxeDQOgyxKKoh0y/8h3BqVFnCqQ/gd+reiIXA== set-function-name@^2.0.2: version "2.0.2" @@ -3544,14 +3612,21 @@ string.prototype.trimend@^1.0.8: define-properties "^1.2.1" es-object-atoms "^1.0.0" -string.prototype.trimstart@^1.0.7: - version "1.0.7" - resolved "https://registry.yarnpkg.com/string.prototype.trimstart/-/string.prototype.trimstart-1.0.7.tgz#d4cdb44b83a4737ffbac2d406e405d43d0184298" - integrity sha512-NGhtDFu3jCEm7B4Fy0DpLewdJQOZcQ0rGbwQ/+stjnrp2i+rlKeCvos9hOIeCmqwratM47OBxY7uFZzjxHXmrg== +string.prototype.trimstart@^1.0.8: + version "1.0.8" + resolved "https://registry.yarnpkg.com/string.prototype.trimstart/-/string.prototype.trimstart-1.0.8.tgz#7ee834dda8c7c17eff3118472bb35bfedaa34dde" + integrity sha512-UXSH262CSZY1tfu3G3Secr6uGLCFVPMhIqHjlgCUtCCcgihYc/xKs9djMTMUOb2j1mVSeU8EU6NWc/iQKU6Gfg== dependencies: - call-bind "^1.0.2" - define-properties "^1.2.0" - es-abstract "^1.22.1" + call-bind "^1.0.7" + define-properties "^1.2.1" + es-object-atoms "^1.0.0" + +string_decoder@~1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.1.1.tgz#9cf1611ba62685d7030ae9e4ba34149c3af03fc8" + integrity sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg== + dependencies: + safe-buffer "~5.1.0" string.prototype.trimstart@^1.0.8: version "1.0.8" @@ -3872,7 +3947,7 @@ use-sync-external-store@1.2.0: resolved "https://registry.yarnpkg.com/use-sync-external-store/-/use-sync-external-store-1.2.0.tgz#7dbefd6ef3fe4e767a0cf5d7287aacfb5846928a" integrity sha512-eEgnFxGQ1Ife9bzYs6VLi8/4X6CObHMw9Qr9tPY43iKwsPw8xE8+EFsf/2cFZ5S3esXgpWgtSCtLNS41F+sKPA== -util-deprecate@^1.0.2: +util-deprecate@^1.0.2, util-deprecate@~1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf" integrity sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==