From 6c468942420dc07fba882d9cd3fdedf395c07054 Mon Sep 17 00:00:00 2001 From: Salama Ashoush Date: Mon, 13 Nov 2023 02:08:01 +0100 Subject: [PATCH 01/16] chore(release): v0.0.2 --- packages/utils/CHANGELOG.md | 5 ++++ packages/utils/package.json | 56 +++++++++++++++++++++++++++++++------ 2 files changed, 53 insertions(+), 8 deletions(-) create mode 100644 packages/utils/CHANGELOG.md diff --git a/packages/utils/CHANGELOG.md b/packages/utils/CHANGELOG.md new file mode 100644 index 00000000..8792b69a --- /dev/null +++ b/packages/utils/CHANGELOG.md @@ -0,0 +1,5 @@ +# Changelog + + +## v0.0.2 + diff --git a/packages/utils/package.json b/packages/utils/package.json index 6cc2489b..9184ebb4 100644 --- a/packages/utils/package.json +++ b/packages/utils/package.json @@ -1,12 +1,26 @@ { "name": "@design-sync/utils", - "version": "0.0.1", + "version": "0.0.2", "description": "Tokenize utils", + "repository": "salamaashoush/tokenize", + "license": "MIT", + "sideEffects": false, + "type": "module", + "private": false, "main": "src/index.ts", + "files": [ + "dist" + ], "scripts": { - "lint": "eslint ./src --ext .ts,.tsx,.js,.jsx", - "lint:fix": "pnpm run lint --fix", - "verify": "tsc --pretty", + "build": "unbuild", + "dev": "npm run build -- --watch", + "play": "jiti playground", + "lint": "eslint --cache --ext .ts,.js,.mjs,.cjs . && prettier -c src test", + "lint:fix": "eslint --cache --ext .ts,.js,.mjs,.cjs . --fix && prettier -c src test -w", + "prepack": "pnpm run build", + "release": "pnpm test && changelogen --release && pnpm publish && git push --follow-tags", + "test": "pnpm lint && pnpm test:types && vitest run --coverage", + "test:types": "tsc --noEmit --skipLibCheck", "precommit": "lint-staged" }, "dependencies": { @@ -14,13 +28,39 @@ "just-camel-case": "6.2.0", "just-clone": "6.2.0", "just-safe-get": "4.2.0", - "just-safe-set": "4.2.1" + "just-safe-set": "4.2.1", + "deepmerge": "4.3.1" }, "devDependencies": { "@design-sync/eslint-config": "workspace:*", "@design-sync/tsconfig": "workspace:*", "eslint": "^8.53.0", - "lint-staged": "^15.0.2", - "typescript": "^5.2.2" + "lint-staged": "^15.1.0", + "@types/node": "^20.9.0", + "@vitest/coverage-v8": "^0.34.6", + "changelogen": "^0.5.5", + "jiti": "^1.21.0", + "typescript": "^5.2.2", + "unbuild": "^2.0.0", + "vitest": "^0.34.6" + }, + "publishConfig": { + "access": "public", + "exports": { + ".": { + "types": "./dist/index.d.ts", + "import": { + "types": "./dist/index.d.mts", + "default": "./dist/index.mjs" + }, + "require": { + "types": "./dist/index.d.cts", + "default": "./dist/index.cjs" + } + } + }, + "main": "./dist/index.cjs", + "module": "./dist/index.mjs", + "types": "./dist/index.d.ts" } -} +} \ No newline at end of file From 2c1532b8ceb4f0fbd970fa1edac805214ade4031 Mon Sep 17 00:00:00 2001 From: Salama Ashoush Date: Mon, 13 Nov 2023 02:12:51 +0100 Subject: [PATCH 02/16] :rotating_light: Update ESLint configs and add new test file --- .github/workflows/ci.yml | 2 +- apps/cli/.eslintignore | 3 + apps/cli/.eslintrc.cjs | 4 + apps/cli/.eslintrc.js | 4 - apps/cli/.gitignore | 2 +- apps/cli/README.md | 96 + apps/cli/example.json | 679 --- apps/cli/package.json | 61 +- apps/cli/src/fetcher/fetch.ts | 15 - apps/cli/src/manager/manager.ts | 65 - apps/cli/tokenize.cli.json | 6 - apps/new-plugin/.eslintignore | 3 + apps/new-plugin/.eslintrc.js | 4 + apps/new-plugin/package.json | 6 +- apps/new-plugin/src/example.json | 5022 ----------------- apps/playground/.eslintignore | 3 + apps/playground/.eslintrc.js | 2 +- apps/playground/package.json | 6 +- apps/plugin/.eslintignore | 3 + apps/plugin/.eslintrc.js | 2 +- apps/plugin/package.json | 6 +- package.json | 7 +- packages/design-tokens/.eslintignore | 3 + packages/design-tokens/.eslintrc.js | 2 +- packages/design-tokens/package.json | 4 +- packages/eslint-config/.eslintignore | 3 + packages/eslint-config/base.js | 21 + packages/eslint-config/index.js | 35 - packages/eslint-config/node.js | 8 + packages/eslint-config/package.json | 9 +- packages/eslint-config/preact.js | 12 + packages/eslint-config/solid.js | 12 + packages/icons/.eslintignore | 3 + packages/icons/.eslintrc.js | 2 +- packages/icons/package.json | 4 +- packages/rpc/.eslintignore | 3 + packages/rpc/.eslintrc.js | 2 +- packages/rpc/package.json | 4 +- packages/storage/.eslintignore | 3 + packages/storage/.eslintrc.js | 2 +- packages/storage/package.json | 4 +- packages/tsconfig/.eslintignore | 3 + packages/uikit/.eslintignore | 3 + packages/uikit/.eslintrc.js | 2 +- packages/uikit/package.json | 4 +- packages/utils/.eslintignore | 3 + packages/utils/.eslintrc.cjs | 4 + packages/utils/.eslintrc.js | 4 - packages/utils/CHANGELOG.md | 5 - packages/utils/README.md | 61 + packages/utils/build.config.ts | 10 + packages/utils/package.json | 4 +- packages/utils/test/test.test.ts | 8 + packages/w3c-dtfm/.eslintignore | 3 + packages/w3c-dtfm/.eslintrc.cjs | 4 + packages/w3c-dtfm/.eslintrc.js | 4 - packages/w3c-dtfm/.npmignore | 1 - packages/w3c-dtfm/README.md | 22 +- .../w3c-dtfm/design-sync-w3c-dtfm-0.0.1.tgz | Bin 19995 -> 0 bytes packages/w3c-dtfm/package.json | 10 +- pnpm-lock.yaml | 859 +-- turbo.json | 2 +- 62 files changed, 837 insertions(+), 6316 deletions(-) create mode 100644 apps/cli/.eslintignore create mode 100644 apps/cli/.eslintrc.cjs delete mode 100644 apps/cli/.eslintrc.js delete mode 100644 apps/cli/example.json delete mode 100644 apps/cli/src/fetcher/fetch.ts delete mode 100644 apps/cli/src/manager/manager.ts delete mode 100644 apps/cli/tokenize.cli.json create mode 100644 apps/new-plugin/.eslintignore create mode 100644 apps/new-plugin/.eslintrc.js delete mode 100644 apps/new-plugin/src/example.json create mode 100644 apps/playground/.eslintignore create mode 100644 apps/plugin/.eslintignore create mode 100644 packages/design-tokens/.eslintignore create mode 100644 packages/eslint-config/.eslintignore create mode 100644 packages/eslint-config/base.js delete mode 100644 packages/eslint-config/index.js create mode 100644 packages/eslint-config/node.js create mode 100644 packages/eslint-config/preact.js create mode 100644 packages/eslint-config/solid.js create mode 100644 packages/icons/.eslintignore create mode 100644 packages/rpc/.eslintignore create mode 100644 packages/storage/.eslintignore create mode 100644 packages/tsconfig/.eslintignore create mode 100644 packages/uikit/.eslintignore create mode 100644 packages/utils/.eslintignore create mode 100644 packages/utils/.eslintrc.cjs delete mode 100644 packages/utils/.eslintrc.js create mode 100644 packages/utils/README.md create mode 100644 packages/utils/build.config.ts create mode 100644 packages/utils/test/test.test.ts create mode 100644 packages/w3c-dtfm/.eslintignore create mode 100644 packages/w3c-dtfm/.eslintrc.cjs delete mode 100644 packages/w3c-dtfm/.eslintrc.js delete mode 100644 packages/w3c-dtfm/.npmignore delete mode 100644 packages/w3c-dtfm/design-sync-w3c-dtfm-0.0.1.tgz diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 2f7e39a6..43244180 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -16,7 +16,7 @@ jobs: - run: corepack enable - uses: actions/setup-node@v4 with: - node-version: 18 + node-version: 21 cache: 'pnpm' - run: pnpm install - run: pnpm lint diff --git a/apps/cli/.eslintignore b/apps/cli/.eslintignore new file mode 100644 index 00000000..9c628283 --- /dev/null +++ b/apps/cli/.eslintignore @@ -0,0 +1,3 @@ +node_modules +coverage +dist diff --git a/apps/cli/.eslintrc.cjs b/apps/cli/.eslintrc.cjs new file mode 100644 index 00000000..944eaef2 --- /dev/null +++ b/apps/cli/.eslintrc.cjs @@ -0,0 +1,4 @@ +export default { + root: true, + extends: '@design-sync/eslint-config/node', +}; diff --git a/apps/cli/.eslintrc.js b/apps/cli/.eslintrc.js deleted file mode 100644 index 968ea85a..00000000 --- a/apps/cli/.eslintrc.js +++ /dev/null @@ -1,4 +0,0 @@ -module.exports = { - root: true, - extends: '@design-sync/eslint-config', -}; diff --git a/apps/cli/.gitignore b/apps/cli/.gitignore index 4f6e7009..7c1743ab 100644 --- a/apps/cli/.gitignore +++ b/apps/cli/.gitignore @@ -1,2 +1,2 @@ debug.json -src/tokens.ts +generated diff --git a/apps/cli/README.md b/apps/cli/README.md index e69de29b..4a683702 100644 --- a/apps/cli/README.md +++ b/apps/cli/README.md @@ -0,0 +1,96 @@ +# @design-sync/sync + +[![npm version][npm-version-src]][npm-version-href] +[![npm downloads][npm-downloads-src]][npm-downloads-href] + + +Design Sync CLI + +## Usage + +Install package: + +```sh +# npm +npm install -D @design-sync/sync + +# yarn +yarn add --dev @design-sync/sync + +# pnpm +pnpm install @design-sync/sync + +# bun +bun install @design-sync/sync +``` + +Initialize: + +```sh +# npm +npm run design-sync init + +# yarn +yarn design-sync init + +# pnpm +pnpm design-sync init + +# bun +bun design-sync init +``` + +follow the prompt to create a `design-sync.config` file or pass `-y` to skip the prompt and use the default values. + + +Sync: + +```sh +# npm +npm run design-sync sync + +# yarn +yarn dlx design-sync sync + +# pnpm +pnpm dlx design-sync sync + +# bun +bun design-sync sync +``` + +## Configuration +WIP + +## Plugins +WIP + +## Schema Extensions +WIP + + +## Development + +- Clone this repository +- Install latest LTS version of [Node.js](https://nodejs.org/en/) +- Enable [Corepack](https://github.com/nodejs/corepack) using `corepack enable` +- Install dependencies using `pnpm install` +- Run interactive tests using `pnpm dev` + +## License + +Made with 💛 + +Published under [MIT License](./LICENSE). + + + +[npm-version-src]: https://img.shields.io/npm/v/@design-sync/sync?style=flat&colorA=18181B&colorB=F0DB4F +[npm-version-href]: https://npmjs.com/package/@design-sync/sync +[npm-downloads-src]: https://img.shields.io/npm/dm/@design-sync/sync?style=flat&colorA=18181B&colorB=F0DB4F +[npm-downloads-href]: https://npmjs.com/package/@design-sync/sync + diff --git a/apps/cli/example.json b/apps/cli/example.json deleted file mode 100644 index a8ccf990..00000000 --- a/apps/cli/example.json +++ /dev/null @@ -1,679 +0,0 @@ -{ - "$extensions": { - "modes": { - "requiredModes": ["light", "dark"], - "defaultMode": "light" - } - }, - "kda": { - "foundation": { - "radius": { - "no": { - "$type": "number", - "$value": 0 - }, - "xs": { - "$type": "number", - "$value": 2 - }, - "sm": { - "$type": "number", - "$value": "{kda.foundation.size.n1.$value}" - }, - "md": { - "$type": "number", - "$value": 6 - }, - "lg": { - "$type": "number", - "$value": "{kda.foundation.size.n2.$value}" - }, - "round": { - "$type": "dimension", - "$value": "999rem" - } - }, - "color": { - "intent": { - "primary": { - "default": { - "background": { - "$type": "color", - "$description": "color description", - "$value": "#aabbcc" - } - } - }, - "secondary": { - "$title": "Secondary Title", - "$type": "color", - "$description": "color description", - "$value": "{kda.foundation.color.foreground.$value}" - }, - "tertiary": { - "$type": "color", - "$description": "color description", - "$value": "#5794FF", - "$extensions": { - "mode": { - "dark": "#2012CC" - } - } - } - }, - "categorical": { - "category1": { - "$type": "color", - "$description": "This is the category 1 color", - "$value": "#AABBCC", - "$extensions": { - "mode": { - "dark": "#CCBBAA" - }, - "generators": [ - { - "type": "alpha", - "value": { - "@20": { - "value": 20, - "base": "{kda.foundation.color.categorical.category2.$value}" - }, - "@40": { - "value": 40, - "base": "{kda.foundation.color.intent.primary.default.background.$value}" - }, - "@60": { - "value": 60, - "base": "{kda.foundation.color.intent.secondary.$value}" - }, - "@80": { - "value": 70, - "base": "{kda.foundation.color.intent.tertiary.$value}" - } - } - } - ] - } - }, - "category2": { - "$type": "color", - "$value": "#00FF00", - "$extensions": { - "mode": { - "dark": "#000000" - }, - "generators": [ - { - "type": "alpha", - "value": { - "@20": 20, - "@40": 30, - "@60": 40, - "@80": 50 - } - } - ] - } - } - }, - "foreground": { - "$type": "color", - "$description": "primary foreground color", - "$value": "#aa4411", - "$extensions": { - "mode": { - "dark": "#cccccc" - } - } - }, - "background": { - "$type": "color", - "$description": "primary background color", - "$value": "#ff0011", - "$extensions": { - "mode": { - "dark": "#0099CC" - } - } - } - }, - "effect": { - "defaultBlur": { - "$type": "dimension", - "$title": "Default layer blur", - "$description": "This is the default layer blur description", - "$value": "{kda.foundation.size.n2.$value}" - }, - "blur": { - "$name": "layerBlur", - "$type": "dimension", - "$title": "Layer Blur", - "$description": "This is the layer blur description", - "$value": "{kda.foundation.size.n3.$value}" - }, - "defaultShadow": { - "$name": "main", - "$type": "shadow", - "$title": "Default Shadow", - "$description": "This is the default shadow effect description", - "$value": { - "color": "{kda.foundation.color.categorical.category1.$value}", - "offsetX": "4px", - "offsetY": "0.5rem", - "blur": "{kda.foundation.size.n3.$value}", - "spread": "4px" - } - }, - "shadow": { - "level1": { - "$name": "level1", - "$type": "shadow", - "$title": "Shadow Level 1", - "$description": "This is the shadow 1 description", - "$value": { - "color": "{kda.foundation.color.categorical.category1.$value}", - "offsetX": "4px", - "offsetY": "0.5rem", - "blur": "{kda.foundation.size.n3.$value}", - "spread": "4px" - } - }, - "level2": { - "$name": "level2", - "$type": "shadow", - "$title": "Shadow Level 2", - "$description": "This is the shadow 2 description", - "$value": { - "color": "{kda.foundation.color.categorical.category2.$value}", - "offsetX": "4rem", - "offsetY": "4rem", - "blur": "{kda.foundation.size.n3.$value}", - "spread": "2rem" - } - }, - "level3": { - "$name": "level3", - "$type": "shadow", - "$title": "Shadow Level 3", - "$description": "This is the shadow 3 description updated", - "$value": { - "color": "{kda.foundation.color.categorical.category2.$value}", - "offsetX": 0, - "offsetY": 0, - "blur": "{kda.foundation.size.n3.$value}", - "spread": "24px" - } - } - } - }, - "size": { - "$description": "Size units for sizing and spacing elements", - "n0": { - "$type": "dimension", - "$value": 0 - }, - "n1": { - "$type": "dimension", - "$value": "0.125rem" - }, - "n2": { - "$type": "dimension", - "$value": "0.25rem" - }, - "n3": { - "$type": "dimension", - "$value": "0.5rem" - }, - "n4": { - "$type": "dimension", - "$value": "1rem" - }, - "n5": { - "$type": "dimension", - "$value": "1.25rem" - }, - "n6": { - "$type": "dimension", - "$value": "1.5rem" - }, - "n7": { - "$type": "dimension", - "$value": "1.75rem" - }, - "n8": { - "$type": "dimension", - "$value": "2rem" - }, - "n9": { - "$type": "dimension", - "$value": "2.25rem" - }, - "n10": { - "$type": "dimension", - "$value": "2.5rem" - }, - "n11": { - "$type": "dimension", - "$value": "2.75rem" - }, - "n12": { - "$type": "dimension", - "$value": "3rem" - }, - "n13": { - "$type": "dimension", - "$value": "3.25rem" - }, - "n14": { - "$type": "dimension", - "$value": "3.5rem" - }, - "n15": { - "$type": "dimension", - "$value": "3.75rem" - }, - "n16": { - "$type": "dimension", - "$value": "4rem" - }, - "n17": { - "$type": "dimension", - "$value": "4.25rem" - }, - "n18": { - "$type": "dimension", - "$value": "4.5rem" - }, - "n19": { - "$type": "dimension", - "$value": "4.75rem" - }, - "n20": { - "$type": "dimension", - "$value": "5rem" - }, - "n24": { - "$type": "dimension", - "$value": "6rem" - }, - "n25": { - "$type": "dimension", - "$value": "6.25rem" - }, - "n32": { - "$type": "dimension", - "$value": "8rem" - }, - "n35": { - "$type": "dimension", - "$value": "8.75rem" - }, - "n40": { - "$type": "dimension", - "$value": "10rem" - }, - "n48": { - "$type": "dimension", - "$value": "12rem" - }, - "n56": { - "$type": "dimension", - "$value": "14rem" - }, - "n64": { - "$type": "dimension", - "$value": "16rem" - } - }, - "spacing": { - "xxs": { - "$type": "dimension", - "$value": "{kda.foundation.size.n1.$value}" - }, - "xs": { - "$type": "dimension", - "$value": "{kda.foundation.size.n2.$value}" - }, - "sm": { - "$type": "dimension", - "$value": "{kda.foundation.size.n3.$value}" - }, - "md": { - "$type": "dimension", - "$value": "{kda.foundation.size.n4.$value}" - }, - "lg": { - "$type": "dimension", - "$value": "{kda.foundation.size.n6.$value}" - }, - "xl": { - "$type": "dimension", - "$value": "{kda.foundation.size.n7.$value}" - }, - "xxl": { - "$type": "dimension", - "$value": "{kda.foundation.size.n9.$value}" - }, - "xxxl": { - "$type": "dimension", - "$value": "{kda.foundation.size.n10.$value}" - } - }, - "border": { - "sm": { - "$type": "border", - "$value": { - "width": 1, - "style": "solid", - "color": "{kda.foundation.color.intent.tertiary.$value}" - } - }, - "md": { - "$type": "border", - "$value": { - "width": 2, - "style": "solid", - "color": "{kda.foundation.color.intent.tertiary.$value}" - } - } - }, - "typography": { - "fontSize": { - "xs": { - "$type": "dimension", - "$value": "0.75rem" - }, - "sm": { - "$type": "dimension", - "$value": "0.875rem" - }, - "base": { - "$type": "dimension", - "$value": "{kda.foundation.size.n4}" - }, - "md": { - "$type": "dimension", - "$value": "1.125rem" - }, - "lg": { - "$type": "dimension", - "$value": "1.25rem" - }, - "xl": { - "$type": "dimension", - "$value": "1.5rem" - }, - "2xl": { - "$type": "dimension", - "$value": "1.75rem" - }, - "3xl": { - "$type": "dimension", - "$value": "2rem" - }, - "4xl": { - "$type": "dimension", - "$value": "2.25rem" - }, - "5xl": { - "$type": "dimension", - "$value": "2.5rem" - }, - "6xl": { - "$type": "dimension", - "$value": "2.75rem" - }, - "7xl": { - "$type": "dimension", - "$value": "3rem" - }, - "8xl": { - "$type": "dimension", - "$value": "3.25rem" - }, - "9xl": { - "$type": "dimension", - "$value": "3.75rem" - }, - "10xl": { - "$type": "dimension", - "$value": "4.5rem" - }, - "11xl": { - "$type": "dimension", - "$value": "5rem" - }, - "12xl": { - "$type": "dimension", - "$value": "5.25rem" - } - }, - "family": { - "primaryFont": { - "$value": "Haas Grot Disp", - "$type": "fontFamily" - }, - "headingFont": { - "$value": "Haas Grot Disp", - "$type": "fontFamily" - }, - "codeFont": { - "$value": "Kode Mono", - "$type": "fontFamily" - }, - "bodyFont": { - "$value": ["Haas Grot Disp", "Helvetica", "Arial", "sans-serif"], - "$type": "fontFamily" - } - }, - "lineHeight": { - "primaryFont": { - "initial": { - "$value": "initial", - "$type": "custom" - }, - "normal": { - "$value": "normal", - "$type": "fontWeight" - }, - "base": { - "$value": 1.4, - "$type": "number" - }, - "lg": { - "$value": 1.9, - "$type": "number" - } - }, - "secondaryFont": { - "initial": { - "$value": "initial", - "$type": "custom" - }, - "normal": { - "$value": "normal", - "$type": "fontWeight" - }, - "base": { - "$value": 1.4, - "$type": "number" - }, - "lg": { - "$value": 1.9, - "$type": "number" - } - }, - "codeFont": { - "initial": { - "$value": "initial", - "$type": "custom" - }, - "normal": { - "$value": "normal", - "$type": "fontWeight" - }, - "base": { - "$value": 1.4, - "$type": "number" - }, - "lg": { - "$value": 1.9, - "$type": "number" - } - } - }, - "font": { - "Header 1": { - "$name": "heading", - "$description": "This is the codeblock description", - "$type": "typography", - "$title": "Header 1", - "$value": { - "fontFamily": "{kda.foundation.typography.family.headingFont.$value}", - "fontSize": 40, - "fontWeight": "75 Bold", - "letterSpacing": "0px", - "lineHeight": 1.9 - } - }, - "Code Block": { - "$name": "code", - "$description": "This is the codeblock description", - "$type": "typography", - "$title": "Code Block", - "$value": { - "fontFamily": "Kode Mono", - "fontSize": 40, - "fontWeight": 700, - "letterSpacing": "20px", - "lineHeight": 1.9 - } - }, - "Small Code Bloc": { - "$name": "smallCode", - "$description": "This is the small codeblock description", - "$type": "typography", - "$title": "Small Code Block", - "$value": { - "fontFamily": "{kda.foundation.typography.family.codeFont.$value}", - "fontSize": "{kda.foundation.size.n10.$value}", - "fontWeight": "Regular", - "letterSpacing": "{kda.foundation.size.n1.$value}", - "lineHeight": "24px" - } - } - }, - "weight": { - "primaryFont": { - "light": { - "$value": "300", - "$type": "fontWeight" - }, - "normal": { - "$value": "400", - "$type": "fontWeight" - }, - "medium": { - "$value": "500", - "$type": "fontWeight" - }, - "semiBold": { - "$value": "600", - "$type": "fontWeight" - }, - "bold": { - "$value": "700", - "$type": "fontWeight" - } - }, - "secondaryFont": { - "light": { - "$value": "300", - "$type": "fontWeight" - }, - "normal": { - "$value": "400", - "$type": "fontWeight" - }, - "medium": { - "$value": "500", - "$type": "fontWeight" - }, - "semiBold": { - "$value": "600", - "$type": "fontWeight" - }, - "bold": { - "$value": "700", - "$type": "fontWeight" - } - }, - "codeFont": { - "light": { - "$value": "300", - "$type": "fontWeight" - }, - "normal": { - "$value": "400", - "$type": "fontWeight" - }, - "medium": { - "$value": "500", - "$type": "fontWeight" - }, - "semiBold": { - "$value": "600", - "$type": "fontWeight" - }, - "bold": { - "$value": "700", - "$type": "fontWeight" - } - } - } - } - }, - "button": { - "color": { - "foreground": { - "$type": "color", - "$description": "primary foreground color", - "$value": "#aa4411", - "$extensions": { - "mode": { - "dark": "{kda.foundation.color.background.$value}" - } - } - }, - "background": { - "$type": "color", - "$description": "primary background color", - "$value": "{kda.foundation.color.background.$value}", - "$extensions": { - "mode": { - "dark": "{kda.foundation.color.foreground.$value}" - } - } - }, - "intent": { - "primary": { - "default": { - "background": { - "$type": "color", - "$description": "color description", - "$value": "{kda.foundation.color.background.$value}" - } - } - }, - "secondary": { - "$type": "color", - "$description": "color description", - "$value": "{kda.foundation.color.foreground.$value}" - } - } - } - } - }, - "$name": "Kode Design System", - "$version": "0.0.1" -} diff --git a/apps/cli/package.json b/apps/cli/package.json index 5a6fecb5..60339018 100644 --- a/apps/cli/package.json +++ b/apps/cli/package.json @@ -1,34 +1,69 @@ { - "name": "@design-sync/cli", - "version": "0.0.1", + "name": "@design-sync/sync", + "description": "CLI for Design Sync", + "version": "0.0.0", + "repository": "salamaashoush/tokenize", + "license": "MIT", + "sideEffects": false, + "private": false, + "type": "module", + "main": "src/index.ts", + "files": [ + "dist" + ], "scripts": { - "cli": "tsx src/main.ts", - "lint": "eslint ./src --ext .ts,.tsx,.js,.jsx", - "lint:fix": "pnpm run lint --fix", - "verify": "tsc --pretty", + "dev": "tsx src/cli.ts", + "build": "unbuild", + "lint": "eslint --cache --ext .ts,.js,.mjs,.cjs . && prettier -c src test", + "lint:fix": "eslint --cache --ext .ts,.js,.mjs,.cjs . --fix && prettier -c src test -w", + "prepack": "pnpm run build", + "release": "pnpm test && changelogen --release && pnpm publish && git push --follow-tags", + "test": "pnpm lint && pnpm test:types && vitest run --coverage", + "test:types": "tsc --noEmit --skipLibCheck", "precommit": "lint-staged" }, "dependencies": { "@design-sync/utils": "workspace:*", "@design-sync/w3c-dtfm": "workspace:*", - "ajv": "^8.12.0", "citty": "^0.1.4", "consola": "^3.2.3", "giget": "^1.1.3", - "unconfig": "^0.3.11" + "c12": "^1.5.1" }, "devDependencies": { "@design-sync/eslint-config": "workspace:*", "@design-sync/tsconfig": "workspace:*", - "@types/node": "^20.9.0", - "@vanilla-extract/css": "^1.13.0", + "@vanilla-extract/css": "^1.14.0", "eslint": "^8.53.0", "prettier": "^3.0.3", - "tsx": "^4.0.0", + "tsx": "^4.1.1", + "@types/node": "^20.9.0", + "@vitest/coverage-v8": "^0.34.6", + "changelogen": "^0.5.5", "typescript": "^5.2.2", - "unbuild": "^2.0.0" + "unbuild": "^2.0.0", + "vitest": "^0.34.6" }, "bin": { - "design-sync": "bin/design-sync.js" + "design-sync": "bin/design-sync.mjs" + }, + "publishConfig": { + "access": "public", + "exports": { + ".": { + "types": "./dist/index.d.ts", + "import": { + "types": "./dist/index.d.mts", + "default": "./dist/index.mjs" + }, + "require": { + "types": "./dist/index.d.cts", + "default": "./dist/index.cjs" + } + } + }, + "main": "./dist/index.cjs", + "module": "./dist/index.mjs", + "types": "./dist/index.d.ts" } } diff --git a/apps/cli/src/fetcher/fetch.ts b/apps/cli/src/fetcher/fetch.ts deleted file mode 100644 index 3a5e15f2..00000000 --- a/apps/cli/src/fetcher/fetch.ts +++ /dev/null @@ -1,15 +0,0 @@ -import { downloadTemplate } from 'giget'; -import { mkdtemp, readFile } from 'node:fs/promises'; -import { tmpdir } from 'node:os'; -import { join } from 'node:path'; - -export async function fetchTokens(repo: string, filePath: string, auth?: string) { - const tmpDir = await mkdtemp(join(tmpdir(), 'tokenize-')); - const { dir } = await downloadTemplate(repo, { - cwd: tmpDir, - dir: tmpDir, - auth, - }); - const tokens = await readFile(join(dir, filePath), 'utf-8'); - return JSON.parse(tokens); -} diff --git a/apps/cli/src/manager/manager.ts b/apps/cli/src/manager/manager.ts deleted file mode 100644 index 780bb4a9..00000000 --- a/apps/cli/src/manager/manager.ts +++ /dev/null @@ -1,65 +0,0 @@ -import { TokenWalkerFn, TokensWalker } from '@design-sync/w3c-dtfm'; -import { existsSync } from 'node:fs'; -import { mkdir, rm, writeFile } from 'node:fs/promises'; -import { join } from 'node:path'; -import { CliConfig, formatTextWithPrettier } from '../utils'; - -export interface TokensManagerPlugin { - name: string; - start?(manager: TokensManager): Promise | void; - walk: TokenWalkerFn; - end?(manager: TokensManager): Promise | void; -} - -export class TokensManager { - private plugins: TokensManagerPlugin[] = []; - private walker = new TokensWalker(); - - constructor(private config: CliConfig) {} - - setTokens(tokens: Record) { - this.walker.setTokens(tokens); - } - - getTokens() { - return this.walker.getTokens(); - } - - getModes() { - return this.walker.getModes(); - } - - async writeFile(path: string, content: string) { - // check if the folder exists - const folderPath = path.split('/').slice(0, -1).join('/'); - if (!existsSync(folderPath)) { - await mkdir(folderPath, { recursive: true }); - } - const formattedContent = await formatTextWithPrettier(content); - return writeFile(path, formattedContent); - } - - async run() { - // clean the dist folder - const outPath = join(process.cwd(), this.config.out); - if (existsSync(outPath)) { - await rm(outPath, { recursive: true }); - } - // run the plugins - await Promise.all( - this.plugins.map(async (plugin) => { - await plugin.start?.(this); - this.walker.walkTokens(plugin.walk); - return plugin.end?.(this); - }), - ); - } - - use(plugin: TokensManagerPlugin) { - this.plugins.push(plugin); - } - - getConfig() { - return this.config; - } -} diff --git a/apps/cli/tokenize.cli.json b/apps/cli/tokenize.cli.json deleted file mode 100644 index 0b9e4758..00000000 --- a/apps/cli/tokenize.cli.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "repo": "gh:kadena-community/design-system#main", - "branch": "main", - "out": "dist", - "tokensPath": "build/kda-design-system.tokens.json" -} diff --git a/apps/new-plugin/.eslintignore b/apps/new-plugin/.eslintignore new file mode 100644 index 00000000..9c628283 --- /dev/null +++ b/apps/new-plugin/.eslintignore @@ -0,0 +1,3 @@ +node_modules +coverage +dist diff --git a/apps/new-plugin/.eslintrc.js b/apps/new-plugin/.eslintrc.js new file mode 100644 index 00000000..88ac7141 --- /dev/null +++ b/apps/new-plugin/.eslintrc.js @@ -0,0 +1,4 @@ +module.exports = { + root: true, + extends: '@design-sync/eslint-config/preact', +}; diff --git a/apps/new-plugin/package.json b/apps/new-plugin/package.json index fb4dc0cc..132fa2a4 100644 --- a/apps/new-plugin/package.json +++ b/apps/new-plugin/package.json @@ -3,7 +3,7 @@ "version": "0.0.0", "description": "Tokenize Figma Plugin", "scripts": { - "verify": "tsc --pretty", + "test:types": "tsc --noEmit --skipLibCheck", "build": "build-figma-plugin --minify", "watch": "build-figma-plugin --watch", "precommit": "lint-staged" @@ -39,8 +39,8 @@ "@vanilla-extract/esbuild-plugin": "^2.3.0", "@vanilla-extract/integration": "^6.2.2", "esbuild": "^0.19.5", - "eslint": "8.52.0", - "lint-staged": "^15.0.2", + "eslint": "8.53.0", + "lint-staged": "^15.1.0", "typescript": "^5.2.2" }, "figma-plugin": { diff --git a/apps/new-plugin/src/example.json b/apps/new-plugin/src/example.json deleted file mode 100644 index a4a2abd9..00000000 --- a/apps/new-plugin/src/example.json +++ /dev/null @@ -1,5022 +0,0 @@ -{ - "core": { - "color": { - "palette": { - "primary": { - "50": { - "value": "$color.brand.magicMint15", - "type": "color", - "description": " " - }, - "100": { - "value": "$color.brand.magicMint30", - "type": "color", - "description": " " - }, - "200": { - "value": "$color.brand.magicMint45", - "type": "color", - "description": " " - }, - "300": { - "value": "$color.brand.magicMint60", - "type": "color", - "description": " " - }, - "400": { - "value": "$color.brand.magicMint", - "type": "color", - "description": " " - }, - "500": { - "value": "#78b4b5", - "type": "color", - "description": "brand primary" - }, - "600": { - "value": "#469595", - "type": "color" - }, - "700": { - "value": "$color.brand.magicMintDark", - "type": "color", - "description": " base color" - }, - "800": { - "value": "#006666", - "type": "color", - "description": " " - }, - "900": { - "value": "#005252", - "type": "color", - "description": " " - } - }, - "neutral": { - "50": { - "value": "$color.brand.deepKoamaru5", - "type": "color", - "description": " " - }, - "100": { - "value": "#ececef", - "type": "color" - }, - "200": { - "value": "$color.brand.deepKoamaru15", - "type": "color", - "description": " " - }, - "300": { - "value": "$color.brand.deepKoamaru30", - "type": "color", - "description": " " - }, - "400": { - "value": "#a7a7b8", - "type": "color" - }, - "500": { - "value": "$color.brand.deepKoamaru60", - "type": "color", - "description": " " - }, - "600": { - "value": "$color.brand.deepKoamaru80", - "type": "color", - "description": " " - }, - "700": { - "value": "$color.brand.deepKoamaru", - "type": "color", - "description": " " - }, - "800": { - "value": "#282942", - "type": "color", - "description": " " - }, - "900": { - "value": "#0c0c13", - "type": "color" - } - }, - "accent": { - "50": { - "value": "#CBF1FF", - "type": "color" - }, - "100": { - "value": "#98DCF6", - "type": "color" - }, - "200": { - "value": "#74CAEC", - "type": "color" - }, - "300": { - "value": "#46B9E5", - "type": "color" - }, - "400": { - "value": "#18A7DF", - "type": "color" - }, - "500": { - "value": "#1A91DA", - "type": "color" - }, - "600": { - "value": "#0779C9", - "type": "color" - }, - "700": { - "value": "#0B5BAF", - "type": "color", - "description": "base color" - }, - "800": { - "value": "#1548AA", - "type": "color" - }, - "900": { - "value": "#0C3489", - "type": "color" - } - }, - "success": { - "50": { - "value": "$color.brand.magicMint15", - "type": "color" - }, - "100": { - "value": "$color.brand.magicMint30", - "type": "color", - "description": " " - }, - "200": { - "value": "$color.brand.magicMint45", - "type": "color" - }, - "300": { - "value": "$color.brand.magicMint60", - "type": "color", - "description": " " - }, - "400": { - "value": "$color.brand.magicMint", - "type": "color" - }, - "500": { - "value": "$color.brand.verdigris", - "type": "color", - "description": " " - }, - "600": { - "value": "#0f9494", - "type": "color" - }, - "700": { - "value": "$color.brand.magicMintDark", - "type": "color", - "description": " " - }, - "800": { - "value": "#006666", - "type": "color" - }, - "900": { - "value": "#005252", - "type": "color", - "description": " " - } - }, - "warning": { - "50": { - "value": "#fff6eb", - "type": "color" - }, - "100": { - "value": "$color.brand.alert15", - "type": "color", - "description": " " - }, - "200": { - "value": "#ffe0c3", - "type": "color" - }, - "300": { - "value": "$color.brand.alert30", - "type": "color", - "description": " " - }, - "400": { - "value": "#fcc38c", - "type": "color" - }, - "500": { - "value": "$color.brand.alert60", - "type": "color", - "description": " " - }, - "600": { - "value": "#f2972e", - "type": "color" - }, - "700": { - "value": "$color.brand.alert100", - "type": "color", - "description": " " - }, - "800": { - "value": "#e16a00", - "type": "color", - "description": "base" - }, - "900": { - "value": "#d64a00", - "type": "color", - "description": " " - } - }, - "error": { - "50": { - "value": "#fae3e4", - "type": "color" - }, - "100": { - "value": "$color.brand.coralRed30", - "type": "color", - "description": " " - }, - "200": { - "value": "#f2adaf", - "type": "color" - }, - "300": { - "value": "$color.brand.coralRed60", - "type": "color", - "description": "base" - }, - "400": { - "value": "#e86d72", - "type": "color" - }, - "500": { - "value": "$color.brand.coralRed100", - "type": "color", - "description": " " - }, - "600": { - "value": "#cc383d", - "type": "color" - }, - "700": { - "value": "$color.brand.warning90", - "type": "color", - "description": "base" - }, - "800": { - "value": "#981416", - "type": "color" - }, - "900": { - "value": "$color.brand.warning100", - "type": "color", - "description": "$warning100" - } - }, - "white": { - "value": "#ffffff", - "type": "color" - }, - "black": { - "value": "#000000", - "type": "color" - }, - "secondary": { - "50": { - "value": "#FCFAFA", - "type": "color", - "description": "Base" - }, - "100": { - "value": "#FCF8F7", - "type": "color", - "description": "Base" - }, - "200": { - "value": "#FAF5F4", - "type": "color", - "description": "Base" - }, - "300": { - "value": "#F7F0EF", - "type": "color", - "description": "Base" - }, - "400": { - "value": "#F0E6E4", - "type": "color", - "description": "Base" - }, - "500": { - "value": "#EDDCD9", - "type": "color", - "description": "Base" - }, - "600": { - "value": "#EAD6D1", - "type": "color", - "description": "Base" - }, - "700": { - "value": "#E2C8C2", - "type": "color", - "description": "Base" - }, - "800": { - "value": "#DEC1BA", - "type": "color", - "description": "Base" - }, - "900": { - "value": "#DBBAB3", - "type": "color", - "description": "Base" - } - } - }, - "background": { - "solid": { - "value": "$color.palette.neutral.50", - "type": "color" - }, - "gradient": { - "value": "linear-gradient(180deg, $color.brand.deepKoamaru15 20%, $color.brand.seaShell20 100%)", - "type": "color" - }, - "scrim": { - "value": "rgba(55, 56, 92, 0.3)", - "type": "color" - } - }, - "brand": { - "magicMintDark": { - "value": "#008080", - "type": "color" - }, - "magicMintDark200": { - "value": "#006666", - "type": "color" - }, - "magicMintDark300": { - "value": "#005252", - "type": "color" - }, - "magicMintSemiDark": { - "value": "#8fb8b9", - "type": "color" - }, - "magicMint": { - "value": "#A0CECF", - "type": "color" - }, - "magicMint60": { - "value": "#BFE3E4", - "type": "color" - }, - "magicMint45": { - "value": "#D0EBEB", - "type": "color" - }, - "magicMint30": { - "value": "#E0F2F1", - "type": "color" - }, - "magicMint15": { - "value": "#EFF8F8", - "type": "color" - }, - "deepKoamaru": { - "value": "#37385C", - "type": "color" - }, - "deepKoamaru90": { - "value": "#4B4C6C", - "type": "color" - }, - "deepKoamaru80": { - "value": "#5F607D", - "type": "color" - }, - "deepKoamaru60": { - "value": "#8788A0", - "type": "color" - }, - "deepKoamaru30": { - "value": "#C3C3CF", - "type": "color" - }, - "deepKoamaru15": { - "value": "#E2E2E7", - "type": "color" - }, - "deepKoamaru5": { - "value": "#F5F5F7", - "type": "color" - }, - "activeBlue": { - "value": "#2152CC", - "type": "color" - }, - "verdigris": { - "value": "#1DA8A8", - "type": "color" - }, - "alert100": { - "value": "#E77D00", - "type": "color" - }, - "alert60": { - "value": "#FBAE56", - "type": "color" - }, - "alert30": { - "value": "#FDD7AD", - "type": "color" - }, - "alert15": { - "value": "#FFEBD7", - "type": "color" - }, - "warning100": { - "value": "#840000", - "type": "color" - }, - "warning90": { - "value": "#B32427", - "type": "color" - }, - "coralRed100": { - "value": "#E2494F", - "type": "color" - }, - "coralRed60": { - "value": "#EE9295", - "type": "color" - }, - "coralRed30": { - "value": "#F6C8CA", - "type": "color" - }, - "coralRed15": { - "value": "#FBE4E5", - "type": "color" - }, - "seaShell": { - "value": "#F0E6E4", - "type": "color" - }, - "seaShell60": { - "value": "#f7f0ef", - "type": "color" - }, - "seaShell40": { - "value": "#faf5f4", - "type": "color" - }, - "seaShell30": { - "value": "#fcf8f7", - "type": "color" - }, - "seaShell20": { - "value": "#fcfafa", - "type": "color" - }, - "unbleachedSilk": { - "value": "#f2d6c1", - "type": "color" - }, - "unbleachedSilk60": { - "value": "#fce6d8", - "type": "color" - }, - "unbleachedSilk30": { - "value": "#fef3ec", - "type": "color" - }, - "unbleachedSilk15": { - "value": "#fff9f6", - "type": "color" - }, - "virusViolet": { - "value": "#7b4388", - "type": "color" - }, - "virusViolet60": { - "value": "#b78cbb", - "type": "color" - }, - "virusViolet30": { - "value": "#dbc5dd", - "type": "color" - }, - "virusViolet15": { - "value": "#eee3ee", - "type": "color" - } - }, - "opacity": { - "neutral": { - "0": { - "value": "#37385C00", - "type": "color" - }, - "50": { - "value": "rgba(55,56,92,0.05)", - "type": "color" - }, - "100": { - "value": "rgba(55,56,92,0.1)", - "type": "color" - }, - "200": { - "value": "rgba(55,56,92,0.15)", - "type": "color" - }, - "300": { - "value": "rgba(55,56,92,0.3)", - "type": "color" - }, - "400": { - "value": "rgba(55,56,92,0.45)", - "type": "color" - }, - "500": { - "value": "rgba(55,56,92,0.6)", - "type": "color" - }, - "600": { - "value": "rgba(55,56,92,0.8)", - "type": "color" - }, - "700": { - "value": "rgba(32,33,63,0.9)", - "type": "color" - }, - "800": { - "value": "rgba(9,10,37,0.9)", - "type": "color" - }, - "900": { - "value": "rgba(9,10,37,0.99)", - "type": "color" - } - } - }, - "text": { - "emphasized": { - "value": "{color.palette.neutral.900}", - "type": "color" - }, - "primary": { - "value": "{color.palette.neutral.800}", - "type": "color" - }, - "secondary": { - "value": "{color.palette.neutral.600}", - "type": "color" - }, - "subtle": { - "value": "{color.palette.neutral.500}", - "type": "color" - }, - "dimmed": { - "value": "{color.palette.neutral.400}", - "type": "color" - }, - "success": { - "value": "{color.palette.success.800}", - "type": "color" - }, - "error": { - "value": "{color.palette.error.800}", - "type": "color" - }, - "white": { - "value": "{color.palette.white}", - "type": "color" - }, - "warning": { - "value": "{color.palette.warning.800}", - "type": "color" - } - } - }, - "spacing": { - "xxxs": { - "value": "4px", - "type": "spacing" - }, - "xxs": { - "value": "8px", - "type": "spacing" - }, - "xs": { - "value": "12px", - "type": "spacing" - }, - "sm": { - "value": "16px", - "type": "spacing" - }, - "md": { - "value": "20px", - "type": "spacing" - }, - "lg": { - "value": "24px", - "type": "spacing" - }, - "xl": { - "value": "32px", - "type": "spacing" - }, - "xxl": { - "value": "40px", - "type": "spacing" - }, - "xxxl": { - "value": "48px", - "type": "spacing" - }, - "xxxxl": { - "value": "56px", - "type": "spacing" - }, - "xxxxxl": { - "value": "72px", - "type": "spacing" - } - }, - "fontWeight": { - "regular": { - "value": "400", - "type": "fontWeights" - }, - "bold": { - "value": "700", - "type": "fontWeights" - }, - "medium": { - "value": "500", - "type": "fontWeights" - }, - "semiBold": { - "value": "600", - "type": "fontWeights" - }, - "italic": { - "value": "Italic", - "type": "fontWeights" - } - }, - "lineHeight": { - "xxs": { - "value": "110%", - "type": "lineHeights" - }, - "xs": { - "value": "120%", - "type": "lineHeights" - }, - "sm": { - "value": "130%", - "type": "lineHeights" - }, - "md": { - "value": "140%", - "type": "lineHeights", - "description": "Base line height" - }, - "lg": { - "value": "150%", - "type": "lineHeights" - }, - "xl": { - "value": "160%", - "type": "lineHeights" - }, - "xxl": { - "value": "170%", - "type": "lineHeights" - } - }, - "fontSize": { - "xs": { - "value": "12px", - "type": "fontSizes" - }, - "sm": { - "value": "14px", - "type": "fontSizes" - }, - "base": { - "value": "16px", - "type": "fontSizes" - }, - "lg": { - "value": "20px", - "type": "fontSizes" - }, - "xl": { - "value": "24px", - "type": "fontSizes" - }, - "xxl": { - "value": "28px", - "type": "fontSizes" - }, - "xxxl": { - "value": "32px", - "type": "fontSizes" - }, - "xxxxl": { - "value": "36px", - "type": "fontSizes" - }, - "xxxxxl": { - "value": "44px", - "type": "fontSizes" - } - }, - "letterSpacing": { - "tight": { - "value": "-1%", - "type": "letterSpacing" - }, - "normal": { - "value": "0%", - "type": "letterSpacing" - }, - "wide": { - "value": "1%", - "type": "letterSpacing" - } - }, - "letterCase": { - "none": { - "value": "none", - "type": "textCase" - }, - "uppercase": { - "value": "uppercase", - "type": "textCase" - } - }, - "textDecoration": { - "none": { - "value": "none", - "type": "textDecoration" - } - }, - "borderRadius": { - "sharp": { - "value": "0px", - "type": "borderRadius" - }, - "xs": { - "value": "2px", - "type": "borderRadius", - "description": " " - }, - "sm": { - "value": "4px", - "type": "borderRadius", - "description": "Buttons" - }, - "md": { - "value": "8px", - "type": "borderRadius" - }, - "lg": { - "value": "12px", - "type": "borderRadius" - }, - "xl": { - "value": "24px", - "type": "borderRadius" - }, - "round": { - "value": "999px", - "type": "borderRadius" - } - }, - "fontFamily": { - "main": { - "value": "Mulish", - "type": "fontFamilies" - }, - "brand": { - "value": "Gentium Book Basic", - "type": "fontFamilies" - } - }, - "borderWidth": { - "regular": { - "value": "1px", - "type": "borderWidth" - }, - "medium": { - "value": "2px", - "type": "borderWidth" - }, - "large": { - "value": "4px", - "type": "borderWidth" - }, - "none": { - "value": "0px", - "type": "borderWidth" - } - }, - "elevation": { - "low": { - "value": { - "x": "0", - "y": "4", - "blur": "8", - "spread": "0", - "color": "rgba(55, 56, 92, 16%)", - "type": "dropShadow" - }, - "type": "boxShadow" - }, - "medium": { - "value": { - "x": "0", - "y": "6", - "blur": "12", - "spread": "0", - "color": "rgba(55, 56, 92, 16%)", - "type": "dropShadow" - }, - "type": "boxShadow" - }, - "high": { - "value": { - "x": "0", - "y": "8", - "blur": "24", - "spread": "0", - "color": "rgba(55, 56, 92, 16%)", - "type": "dropShadow" - }, - "type": "boxShadow" - } - }, - "sizing": { - "general": { - "xxxs": { - "value": "20px", - "type": "sizing" - }, - "xxs": { - "value": "24px", - "type": "sizing" - }, - "xs": { - "value": "56px", - "type": "sizing" - }, - "sm": { - "value": "72px", - "type": "sizing" - }, - "md": { - "value": "200px", - "type": "sizing" - }, - "lg": { - "value": "300px", - "type": "sizing" - }, - "xl": { - "value": "400px", - "type": "sizing" - }, - "xxl": { - "value": "500px", - "type": "sizing" - }, - "xxxl": { - "value": "600px", - "type": "sizing" - } - }, - "iconSize": { - "xs": { - "value": "12px", - "type": "sizing" - }, - "sm": { - "value": "16px", - "type": "sizing" - }, - "md": { - "value": "20px", - "type": "sizing" - }, - "lg": { - "value": "24px", - "type": "sizing" - }, - "xl": { - "value": "32px", - "type": "sizing" - } - } - }, - "breakpoint": { - "xs": { - "value": "0", - "type": "other" - }, - "sm": { - "value": "576px", - "type": "other", - "description": "576px - 767px" - }, - "md": { - "value": "768px", - "type": "other", - "description": "768px - 991px" - }, - "lg": { - "value": "992px", - "type": "other", - "description": "992px - 1199px" - }, - "xl": { - "value": "1200px", - "type": "other", - "description": "1200px - 1399px" - }, - "xxl": { - "value": "1400px", - "type": "other", - "description": "1400px -" - } - }, - "layer": { - "modal": { - "value": "1300", - "type": "other" - }, - "drawer": { - "value": "1200", - "type": "other" - }, - "popover": { - "value": "1400", - "type": "other" - }, - "toasts": { - "value": "1500", - "type": "other" - }, - "tooltip": { - "value": "1600", - "type": "other" - }, - "appBar": { - "value": "1100", - "type": "other" - } - }, - "border": { - "focus": { - "value": { - "color": "{color.palette.accent.600}", - "width": "{borderWidth.medium}", - "style": "solid" - }, - "type": "border" - }, - "standard": { - "value": { - "color": "{color.brand.alert100}", - "width": "{borderWidth.regular}", - "style": "dashed" - }, - "type": "border" - } - }, - "opacity": { - "0": { - "value": "0", - "type": "opacity" - }, - "10": { - "value": "0.1", - "type": "opacity" - }, - "20": { - "value": "0.2", - "type": "opacity" - }, - "30": { - "value": "0.3", - "type": "opacity" - }, - "40": { - "value": "0.4", - "type": "opacity" - }, - "50": { - "value": "0.5", - "type": "opacity" - }, - "60": { - "value": "0.6", - "type": "opacity" - }, - "70": { - "value": "0.7", - "type": "opacity" - }, - "80": { - "value": "0.8", - "type": "opacity" - }, - "90": { - "value": "0.9", - "type": "opacity" - }, - "100": { - "value": "1.0", - "type": "opacity" - } - } - }, - "pro/component": { - "component": { - "button": { - "base": { - "borderRadius": { - "value": "{borderRadius.sm}", - "type": "borderRadius" - }, - "typography": { - "value": "{typography.button.btn1}", - "type": "typography" - }, - "focusRing": { - "value": "{border.focus}", - "type": "border" - } - }, - "variants": { - "intent": { - "primary": { - "default": { - "background": { - "value": "{color.palette.primary.700}", - "type": "color" - }, - "foreground": { - "value": "{color.palette.white}", - "type": "color" - } - }, - "hover": { - "background": { - "value": "{color.palette.primary.800}", - "type": "color" - }, - "foreground": { - "value": "{color.palette.white}", - "type": "color" - } - }, - "focused": { - "background": { - "value": "{color.palette.primary.800}", - "type": "color" - }, - "foreground": { - "value": "{color.palette.white}", - "type": "color" - } - }, - "active": { - "background": { - "value": "{color.palette.primary.900}", - "type": "color" - }, - "foreground": { - "value": "{color.palette.white}", - "type": "color" - } - }, - "disabled": { - "background": { - "value": "{color.palette.neutral.200}", - "type": "color" - }, - "foreground": { - "value": "{color.palette.neutral.500}", - "type": "color" - } - } - }, - "standard": { - "default": { - "background": { - "value": "{color.palette.neutral.700}", - "type": "color" - }, - "foreground": { - "value": "{color.palette.white}", - "type": "color" - } - }, - "hover": { - "background": { - "value": "{color.palette.neutral.600}", - "type": "color" - }, - "foreground": { - "value": "{color.palette.white}", - "type": "color" - } - }, - "focused": { - "background": { - "value": "{color.palette.neutral.600}", - "type": "color" - }, - "foreground": { - "value": "{color.palette.white}", - "type": "color" - } - }, - "active": { - "background": { - "value": "{color.palette.neutral.600}", - "type": "color" - }, - "foreground": { - "value": "{color.palette.white}", - "type": "color" - } - }, - "disabled": { - "background": { - "value": "{color.palette.neutral.200}", - "type": "color" - }, - "foreground": { - "value": "{color.palette.neutral.500}", - "type": "color" - } - } - }, - "outline": { - "default": { - "background": { - "value": "none", - "type": "color" - }, - "foreground": { - "value": "{color.palette.neutral.800}", - "type": "color" - }, - "border": { - "value": { - "color": "{color.palette.neutral.800}", - "width": "{borderWidth.regular}", - "style": "solid" - }, - "type": "border" - } - }, - "hover": { - "background": { - "value": "{color.palette.neutral.50}", - "type": "color" - }, - "foreground": { - "value": "{color.palette.neutral.900}", - "type": "color" - }, - "border": { - "value": { - "color": "{color.palette.neutral.800}", - "width": "{borderWidth.regular}", - "style": "solid" - }, - "type": "border" - } - }, - "focused": { - "background": { - "value": "{color.opacity.neutral.50}", - "type": "color" - }, - "foreground": { - "value": "{color.palette.neutral.900}", - "type": "color" - } - }, - "active": { - "background": { - "value": "{color.opacity.neutral.100}", - "type": "color" - }, - "foreground": { - "value": "{color.palette.neutral.900}", - "type": "color" - }, - "border": { - "value": { - "color": "{color.palette.neutral.800}", - "width": "{borderWidth.regular}", - "style": "solid" - }, - "type": "border" - } - }, - "disabled": { - "background": { - "value": "none", - "type": "color" - }, - "foreground": { - "value": "{color.palette.neutral.400}", - "type": "color" - }, - "border": { - "value": { - "color": "{color.palette.neutral.400}", - "width": "{borderWidth.regular}", - "style": "solid" - }, - "type": "border" - } - } - }, - "plain": { - "default": { - "background": { - "value": "none", - "type": "color" - }, - "foreground": { - "value": "{color.palette.neutral.800}", - "type": "color" - } - }, - "hover": { - "background": { - "value": "{color.opacity.neutral.50}", - "type": "color" - }, - "foreground": { - "value": "{color.palette.neutral.900}", - "type": "color" - } - }, - "focused": { - "background": { - "value": "{color.palette.neutral.50}", - "type": "color" - }, - "foreground": { - "value": "{color.palette.neutral.900}", - "type": "color" - } - }, - "active": { - "background": { - "value": "{color.palette.neutral.100}", - "type": "color" - }, - "foreground": { - "value": "{color.palette.neutral.900}", - "type": "color" - } - }, - "disabled": { - "background": { - "value": "none", - "type": "color" - }, - "foreground": { - "value": "{color.palette.neutral.400}", - "type": "color" - } - } - } - }, - "size": { - "large": { - "paddingLeft": { - "value": "{spacing.xl}", - "type": "spacing" - }, - "paddingRight": { - "value": "{spacing.xl}", - "type": "spacing" - }, - "paddingTop": { - "value": "{spacing.xs}", - "type": "spacing" - }, - "paddingBottom": { - "value": "{spacing.xs}", - "type": "spacing" - }, - "gap": { - "value": "{spacing.xs}", - "type": "spacing" - }, - "iconSize": { - "value": "20px", - "type": "sizing", - "description": "In icon button: add 2px margin" - } - }, - "medium": { - "paddingLeft": { - "value": "{spacing.sm}", - "type": "spacing" - }, - "paddingRight": { - "value": "{spacing.sm}", - "type": "spacing" - }, - "paddingTop": { - "value": "{spacing.xxs}", - "type": "spacing" - }, - "paddingBottom": { - "value": "{spacing.xxs}", - "type": "spacing" - }, - "gap": { - "value": "{spacing.xxs}", - "type": "spacing" - }, - "iconSize": { - "value": "20px", - "type": "sizing", - "description": "In icon button: add 2px margin" - } - }, - "small": { - "paddingLeft": { - "value": "{spacing.xs}", - "type": "spacing" - }, - "paddingRight": { - "value": "{spacing.xs}", - "type": "spacing" - }, - "paddingTop": { - "value": "{spacing.xxxs}", - "type": "spacing" - }, - "paddingBottom": { - "value": "{spacing.xxxs}", - "type": "spacing" - }, - "gap": { - "value": "{spacing.xxs}", - "type": "spacing" - }, - "iconSize": { - "value": "16px", - "type": "sizing", - "description": "In icon button: add 4px margin" - }, - "typography": { - "value": "{typography.button.btn2}", - "type": "typography" - } - } - } - }, - "compoundVariants": { - "simple-intent-size": { - "true-plain-all": { - "paddingRight": { - "value": "0", - "type": "spacing" - }, - "paddingLeft": { - "value": "0", - "type": "spacing" - } - } - }, - "startIcon-size": { - "true-large": { - "paddingLeft": { - "value": "{spacing.lg}", - "type": "spacing" - } - }, - "true-medium": { - "paddingLeft": { - "value": "{spacing.xs}", - "type": "spacing" - } - }, - "true-small": { - "paddingLeft": { - "value": "{spacing.xxs}", - "type": "spacing" - } - } - }, - "endIcon-size": { - "true-large": { - "paddingRight": { - "value": "{spacing.lg}", - "type": "spacing" - } - }, - "true-medium": { - "paddingRight": { - "value": "{spacing.xs}", - "type": "spacing" - } - }, - "true-small": { - "paddingRight": { - "value": "{spacing.xxs}", - "type": "spacing" - } - } - }, - "onlyIcon-size": { - "true-large": { - "paddingRight": { - "value": "{spacing.xs}", - "type": "spacing" - }, - "paddingLeft": { - "value": "{spacing.xs}", - "type": "spacing" - }, - "paddingTop": { - "value": "{spacing.xs}", - "type": "spacing" - }, - "paddingBottom": { - "value": "{spacing.xs}", - "type": "spacing" - } - }, - "true-medium": { - "paddingRight": { - "value": "{spacing.xxs}", - "type": "spacing" - }, - "paddingLeft": { - "value": "{spacing.xxs}", - "type": "spacing" - }, - "paddingTop": { - "value": "{spacing.xxs}", - "type": "spacing" - }, - "paddingBottom": { - "value": "{spacing.xxs}", - "type": "spacing" - } - }, - "true-small": { - "paddingRight": { - "value": "{spacing.xxxs}", - "type": "spacing" - }, - "paddingLeft": { - "value": "{spacing.xxxs}", - "type": "spacing" - }, - "paddingTop": { - "value": "{spacing.xxxs}", - "type": "spacing" - }, - "paddingBottom": { - "value": "{spacing.xxxs}", - "type": "spacing" - } - } - } - } - }, - "placeholder": { - "base": { - "background": { - "value": "#eeeeee", - "description": "Placeholder background color (please Jonna check why it is hardcoded)", - "type": "color" - }, - "highlightColor": { - "value": "#f5f5f5", - "description": "Placeholder highlight color (please Jonna check why it is hardcoded)", - "type": "color" - } - } - }, - "chat": { - "message": { - "base": { - "typography": { - "value": "{typography.body.body2.regular}", - "type": "typography" - }, - "timestampTypography": { - "value": "{typography.body.body3.regular}", - "type": "typography" - }, - "paddingX": { - "value": "{spacing.xs}", - "type": "spacing" - }, - "paddingY": { - "value": "{spacing.xxs}", - "type": "spacing" - }, - "gap": { - "value": "{spacing.xxxs}", - "type": "spacing" - }, - "borderRadius": { - "value": "{borderRadius.lg}", - "type": "borderRadius" - }, - "borderRadiusAnchor": { - "value": "{borderRadius.xs}", - "type": "borderRadius" - }, - "foreground": { - "value": "{color.text.emphasized}", - "type": "color" - } - }, - "variants": { - "type": { - "incoming": { - "background": { - "value": "{color.palette.neutral.200}", - "type": "color" - } - }, - "outgoing": { - "background": { - "value": "{color.palette.primary.300}", - "type": "color" - } - } - }, - "firstInGroup": { - "true": { - "borderEndStartRadius": { - "value": "{component.chat.message.base.borderRadiusAnchor}", - "type": "borderRadius" - } - } - }, - "middleInGroup": { - "true": { - "borderStartStartRadius": { - "value": "{component.chat.message.base.borderRadiusAnchor}", - "type": "borderRadius" - }, - "borderEndStartRadius": { - "value": "{component.chat.message.base.borderRadiusAnchor}", - "type": "borderRadius" - } - } - }, - "lastInGroup": { - "true": { - "borderStartStartRadius": { - "value": "{component.chat.message.base.borderRadiusAnchor}", - "type": "borderRadius" - } - } - } - } - }, - "messageGroup": { - "base": { - "width": { - "value": "70%", - "type": "sizing" - }, - "mobileWidth": { - "value": "100%", - "type": "sizing" - }, - "paddingY": { - "value": "{spacing.xxs}", - "type": "spacing" - }, - "gapY": { - "value": "{spacing.xxxs}", - "type": "spacing" - }, - "gapX": { - "value": "{spacing.xxs}", - "type": "spacing" - } - } - } - }, - "form": { - "formField": { - "label": { - "default": { - "foreground": { - "value": "{color.text.primary}", - "type": "color" - } - }, - "disabled": { - "foreground": { - "value": "{color.text.dimmed}", - "type": "color" - } - } - }, - "helpText": { - "default": { - "foreground": { - "value": "{color.text.primary}", - "type": "color" - } - }, - "disabled": { - "foreground": { - "value": "{color.text.dimmed}", - "type": "color" - } - }, - "error": { - "foreground": { - "value": "{color.text.error}", - "type": "color" - } - } - }, - "base": { - "gap": { - "value": "{spacing.xxs}", - "type": "spacing" - } - } - }, - "input": { - "base": { - "default": { - "placeholderForeground": { - "type": "color", - "value": "{color.text.subtle}" - }, - "iconForeground": { - "type": "color", - "value": "{color.text.subtle}" - }, - "borderRadius": { - "type": "borderRadius", - "value": "4px" - }, - "borderWidth": { - "type": "borderWidth", - "value": "{borderWidth.regular}" - }, - "foreground": { - "type": "color", - "value": "{color.text.primary}" - }, - "borderColor": { - "type": "color", - "value": "{color.palette.neutral.400}" - }, - "background": { - "type": "color", - "value": "{color.palette.white}" - } - }, - "active": { - "foreground": { - "type": "color", - "value": "{color.text.emphasized}" - }, - "borderColor": { - "type": "color", - "value": "{color.palette.neutral.800}" - }, - "background": { - "type": "color", - "value": "{color.opacity.neutral.100}" - } - }, - "disabled": { - "foreground": { - "type": "color", - "value": "{color.text.dimmed}" - }, - "borderColor": { - "type": "color", - "value": "{color.palette.neutral.300}" - }, - "background": { - "type": "color", - "value": "{color.palette.neutral.50}" - } - }, - "hover": { - "borderColor": { - "type": "color", - "value": "{color.palette.neutral.800}" - } - }, - "focused": { - "borderColor": { - "type": "color", - "value": "{color.palette.accent.500}" - } - }, - "error": { - "borderWidth": { - "type": "borderWidth", - "value": "{borderWidth.medium}" - }, - "borderColor": { - "type": "color", - "value": "{color.palette.error.700}" - } - } - }, - "variants": { - "size": { - "small": { - "paddingX": { - "type": "spacing", - "value": "{spacing.xxs}" - }, - "paddingY": { - "type": "spacing", - "value": "{spacing.xxxs}" - }, - "gap": { - "type": "spacing", - "value": "{spacing.xxs}" - } - }, - "medium": { - "paddingX": { - "type": "spacing", - "value": "{spacing.xs}" - }, - "paddingY": { - "type": "spacing", - "value": "{spacing.xxs}" - }, - "gap": { - "type": "spacing", - "value": "{spacing.xxs}" - } - }, - "large": { - "paddingX": { - "type": "spacing", - "value": "{spacing.sm}" - }, - "paddingY": { - "type": "spacing", - "value": "{spacing.xs}" - }, - "gap": { - "type": "spacing", - "value": "{spacing.xs}" - } - } - } - } - }, - "checkbox-radio": { - "label": { - "default": { - "gap": { - "value": "{spacing.xs}", - "type": "spacing" - }, - "foreground": { - "value": "{color.text.primary}", - "type": "color" - }, - "background": { - "value": "transparent", - "type": "color" - }, - "paddingY": { - "value": "{spacing.xxxs}", - "type": "spacing" - }, - "paddingX": { - "value": "{spacing.xxxs}", - "type": "spacing" - } - }, - "hover": { - "background": { - "value": "{color.opacity.neutral.50}", - "type": "color" - }, - "foreground": { - "value": "{color.text.emphasized}", - "type": "color" - } - }, - "focused": { - "borderWidth": { - "value": "{component.common.focusRing.borderWidth}", - "type": "borderWidth" - }, - "borderColor": { - "value": "{component.common.focusRing.borderColor}", - "type": "color" - }, - "background": { - "value": "{color.opacity.neutral.50}", - "type": "color" - }, - "foreground": { - "value": "{color.text.emphasized}", - "type": "color" - } - }, - "disabled": { - "foreground": { - "value": "{color.text.dimmed}", - "type": "color" - } - } - }, - "box": { - "default": { - "borderColor": { - "value": "{color.palette.neutral.400}", - "type": "color" - }, - "borderWidth": { - "value": "{borderWidth.regular}", - "type": "borderWidth" - }, - "borderRadius": { - "value": "{borderRadius.sm}", - "type": "borderRadius" - }, - "background": { - "value": "{color.palette.white}", - "type": "color" - }, - "size": { - "value": "{sizing.general.xxxs}", - "type": "sizing", - "description": "Apply to width and height" - } - }, - "hover": { - "borderColor": { - "value": "{color.palette.neutral.700}", - "type": "color" - }, - "background": { - "value": "{color.palette.white}", - "type": "color" - } - }, - "disabled": { - "borderColor": { - "value": "{color.palette.neutral.300}", - "type": "color" - }, - "background": { - "value": "{color.palette.neutral.50}", - "type": "color" - } - }, - "checked": { - "borderColor": { - "value": "{color.opacity.neutral.0}", - "type": "color" - }, - "background": { - "value": "{color.palette.neutral.700}", - "type": "color" - }, - "foreground": { - "value": "{color.palette.white}", - "type": "color" - } - }, - "checked-disabled": { - "borderColor": { - "value": "{color.opacity.neutral.0}", - "type": "color" - }, - "foreground": { - "value": "{color.palette.white}", - "type": "color" - }, - "background": { - "value": "{color.palette.neutral.400}", - "type": "color" - } - } - }, - "group": { - "gapX": { - "value": "{spacing.xxs}", - "type": "spacing" - }, - "gapY": { - "value": "0", - "type": "spacing" - } - } - } - }, - "common": { - "focusRing": { - "borderWidth": { - "type": "borderWidth", - "value": "{borderWidth.medium}" - }, - "borderColor": { - "value": "{color.palette.accent.500}", - "type": "color" - } - } - }, - "panel": { - "base": { - "borderRadius": { - "value": "{borderRadius.md}", - "type": "borderRadius" - }, - "background": { - "value": "{color.palette.white}", - "type": "color" - }, - "foregroundPrimary": { - "value": "{color.text.primary}", - "type": "color" - }, - "foregroundSecondary": { - "value": "{color.text.secondary}", - "type": "color" - }, - "scrim": { - "value": "{color.opacity.neutral.300}", - "type": "color" - } - }, - "variants": { - "density": { - "compact": { - "paddingX": { - "value": "{spacing.lg}", - "type": "spacing" - }, - "paddingTop": { - "value": "{spacing.xl}", - "type": "spacing" - }, - "paddingBottom": { - "value": "{spacing.lg}", - "type": "spacing" - }, - "gap": { - "value": "{spacing.sm}", - "type": "spacing" - } - }, - "regular": { - "paddingX": { - "value": "{spacing.xl}", - "type": "spacing" - }, - "paddingTop": { - "value": "{spacing.xxl}", - "type": "spacing" - }, - "paddingBottom": { - "value": "{spacing.xl}", - "type": "spacing" - }, - "gap": { - "value": "{spacing.lg}", - "type": "spacing" - } - }, - "comfortable": { - "paddingX": { - "value": "{spacing.xxl}", - "type": "spacing" - }, - "paddingTop": { - "value": "{spacing.xxxl}", - "type": "spacing" - }, - "paddingBottom": { - "value": "{spacing.xxl}", - "type": "spacing" - }, - "gap": { - "value": "{spacing.xl}", - "type": "spacing" - } - } - } - } - }, - "list": { - "listItem": { - "base": { - "default": { - "background": { - "value": "{color.palette.white}", - "type": "color" - }, - "foreground": { - "value": "{color.text.primary}", - "type": "color" - }, - "foregroundQuiet": { - "value": "{color.text.secondary}", - "type": "color" - } - }, - "hover": { - "background": { - "value": "{color.opacity.neutral.50}", - "type": "color" - }, - "foreground": { - "value": "{color.text.emphasized}", - "type": "color" - } - }, - "active": { - "background": { - "value": "{color.opacity.neutral.100}", - "type": "color" - }, - "foreground": { - "value": "{color.text.emphasized}", - "type": "color" - } - }, - "disabled": { - "background": { - "value": "{color.palette.white}", - "type": "color" - }, - "foreground": { - "value": "{color.text.dimmed}", - "type": "color" - } - } - }, - "variants": { - "density": { - "comfortable": { - "paddingX": { - "value": "{spacing.md}", - "type": "spacing" - }, - "paddingY": { - "value": "{spacing.sm}", - "type": "spacing" - }, - "gap": { - "value": "{spacing.md}", - "type": "spacing" - } - }, - "compact": { - "paddingX": { - "value": "{spacing.sm}", - "type": "spacing" - }, - "paddingY": { - "value": "{spacing.xs}", - "type": "spacing" - }, - "gap": { - "value": "{spacing.sm}", - "type": "spacing" - } - } - } - } - } - }, - "page": { - "background": { - "value": "#F0EFF2", - "type": "color" - } - }, - "menu": { - "list": { - "paddingY": { - "value": "{spacing.xxs}", - "type": "spacing" - }, - "background": { - "value": "{color.palette.white}", - "type": "color" - }, - "borderRadius": { - "value": "{borderRadius.sm}", - "type": "borderRadius" - } - }, - "separator": { - "height": { - "value": "{borderWidth.regular}", - "type": "borderWidth" - }, - "background": { - "value": "{color.palette.neutral.200}", - "type": "color" - } - }, - "sectionHeading": { - "paddingX": { - "value": "{spacing.sm}", - "type": "spacing" - }, - "paddingY": { - "value": "{spacing.xxs}", - "type": "spacing" - }, - "background": { - "value": "{color.palette.white}", - "type": "color" - }, - "foreground": { - "value": "{color.text.primary}", - "type": "color" - } - }, - "item": { - "default": { - "paddingX": { - "value": "{spacing.sm}", - "type": "spacing" - }, - "paddingY": { - "value": "{spacing.xxs}", - "type": "spacing" - }, - "gap": { - "value": "{spacing.xs}", - "type": "spacing" - }, - "background": { - "value": "{color.palette.white}", - "type": "color" - }, - "foreground": { - "value": "{color.text.primary}", - "type": "color" - } - }, - "hover": { - "background": { - "value": "{color.opacity.neutral.50}", - "type": "color" - }, - "foreground": { - "value": "{color.text.emphasized}", - "type": "color" - } - }, - "active": { - "background": { - "value": "{color.opacity.neutral.100}", - "type": "color" - }, - "foreground": { - "value": "{color.text.emphasized}", - "type": "color" - } - }, - "focused": { - "background": { - "value": "{color.opacity.neutral.50}", - "type": "color" - }, - "foreground": { - "value": "{color.text.emphasized}", - "type": "color" - } - }, - "disabled": { - "background": { - "value": "{color.palette.white}", - "type": "color" - }, - "foreground": { - "value": "{color.text.dimmed}", - "type": "color" - } - } - } - }, - "tabs": { - "tabBar": { - "base": { - "gap": { - "value": "{spacing.md}", - "type": "spacing" - }, - "background": { - "value": "transparent", - "type": "color" - } - }, - "variants": { - "inline": { - "true": { - "background": { - "value": "{color.palette.white}", - "type": "color" - } - } - } - } - }, - "tab": { - "base": { - "default": { - "background": { - "value": "{color.opacity.neutral.0}", - "type": "color" - }, - "foreground": { - "value": "{color.text.primary}", - "type": "color" - }, - "paddingY": { - "value": "{spacing.xxs}", - "type": "spacing" - } - }, - "hover": { - "background": { - "value": "{color.opacity.neutral.50}", - "type": "color" - }, - "foreground": { - "value": "{color.text.emphasized}", - "type": "color" - } - }, - "active": { - "foreground": { - "value": "{color.palette.primary.800}", - "type": "color" - }, - "borderColor": { - "value": "{color.palette.primary.800}", - "type": "color" - }, - "hover": { - "foreground": { - "value": "{color.palette.primary.900}", - "type": "color" - }, - "borderColor": { - "value": "{color.palette.primary.900}", - "type": "color" - } - } - } - }, - "variants": { - "inline": { - "true": { - "default": { - "paddingX": { - "value": "{spacing.sm}", - "type": "spacing" - }, - "paddingY": { - "value": "{spacing.xxs}", - "type": "spacing" - } - } - } - } - } - } - }, - "badge": { - "base": { - "borderRadius": { - "value": "{borderRadius.sm}", - "type": "borderRadius" - }, - "paddingX": { - "value": "{spacing.xxxs}", - "type": "spacing" - }, - "paddingY": { - "value": "0", - "type": "spacing" - }, - "gap": { - "value": "{spacing.xxxs}", - "type": "spacing" - }, - "iconSize": { - "value": "{sizing.iconSize.sm}", - "type": "sizing" - } - }, - "variants": { - "intent": { - "success": { - "background": { - "value": "{color.palette.primary.700}", - "type": "color" - }, - "foreground": { - "value": "{color.palette.white}", - "type": "color" - } - }, - "success-quiet": { - "background": { - "value": "{color.palette.primary.200}", - "type": "color" - }, - "foreground": { - "value": "{color.palette.primary.900}", - "type": "color" - } - }, - "warning": { - "background": { - "value": "{color.palette.warning.700}", - "type": "color" - }, - "foreground": { - "value": "{color.palette.white}", - "type": "color" - } - }, - "warning-quiet": { - "background": { - "value": "{color.palette.warning.100}", - "type": "color" - }, - "foreground": { - "value": "{color.palette.warning.900}", - "type": "color" - } - }, - "alert": { - "background": { - "value": "{color.palette.error.600}", - "type": "color" - }, - "foreground": { - "value": "{color.palette.white}", - "type": "color" - } - }, - "alert-quiet": { - "background": { - "value": "{color.palette.error.50}", - "type": "color" - }, - "foreground": { - "value": "{color.palette.error.900}", - "type": "color" - } - }, - "info": { - "background": { - "value": "{color.palette.accent.600}", - "type": "color" - }, - "foreground": { - "value": "{color.palette.white}", - "type": "color" - } - }, - "info-quiet": { - "background": { - "value": "{color.palette.accent.50}", - "type": "color" - }, - "foreground": { - "value": "{color.palette.accent.900}", - "type": "color" - } - }, - "neutral": { - "background": { - "value": "{color.palette.neutral.700}", - "type": "color" - }, - "foreground": { - "value": "{color.palette.white}", - "type": "color" - } - }, - "neutral-quiet": { - "background": { - "value": "{color.palette.neutral.100}", - "type": "color" - }, - "foreground": { - "value": "{color.text.emphasized}", - "type": "color" - } - }, - "u1": { - "background": { - "value": "{color.palette.error.700}", - "type": "color" - }, - "foreground": { - "value": "{color.palette.white}", - "type": "color" - } - }, - "u2": { - "background": { - "value": "{color.palette.error.500}", - "type": "color" - }, - "foreground": { - "value": "{color.palette.white}", - "type": "color" - } - }, - "u3": { - "background": { - "value": "{color.palette.warning.700}", - "type": "color" - }, - "foreground": { - "value": "{color.palette.white}", - "type": "color" - } - }, - "u4": { - "background": { - "value": "{color.palette.accent.400}", - "type": "color" - }, - "foreground": { - "value": "{color.palette.white}", - "type": "color" - } - }, - "u5": { - "background": { - "value": "{color.palette.success.500}", - "type": "color" - }, - "foreground": { - "value": "{color.palette.white}", - "type": "color" - } - }, - "uc": { - "background": { - "value": "{color.brand.virusViolet}", - "type": "color" - }, - "foreground": { - "value": "{color.palette.white}", - "type": "color" - } - }, - "ucth": { - "background": { - "value": "{color.brand.virusViolet30}", - "type": "color" - }, - "foreground": { - "value": "{color.text.emphasized}", - "type": "color" - } - } - }, - "startIcon": { - "true": { - "paddingLeft": { - "value": "0", - "type": "spacing" - } - } - }, - "endIcon": { - "true": { - "paddingRight": { - "value": "0", - "type": "spacing" - } - } - } - } - }, - "notifications": { - "toast": { - "base": { - "borderRadius": { - "value": "{borderRadius.sharp}", - "type": "borderRadius" - }, - "borderWidth": { - "value": "{borderWidth.regular}", - "type": "borderWidth" - }, - "minWidth": { - "value": "276px", - "type": "sizing" - }, - "maxWidth": { - "value": "492px", - "type": "sizing" - }, - "iconSize": { - "value": "{sizing.iconSize.lg}", - "type": "sizing" - }, - "paddingX": { - "value": "{spacing.sm}", - "type": "spacing" - }, - "paddingY": { - "value": "{spacing.sm}", - "type": "spacing" - }, - "gap": { - "value": "{spacing.xs}", - "type": "spacing" - }, - "background": { - "value": "{color.palette.white}", - "type": "color" - }, - "foreground": { - "value": "{color.text.emphasized}", - "type": "color" - } - }, - "variants": { - "intent": { - "info": { - "borderColor": { - "value": "{color.palette.accent.300}", - "type": "color" - }, - "background": { - "value": "{color.palette.accent.50}", - "type": "color" - }, - "iconColor": { - "value": "{color.palette.accent.700}", - "type": "color" - }, - "foreground": { - "value": "{color.text.emphasized}", - "type": "color" - } - }, - "success": { - "borderColor": { - "value": "{color.palette.success.400}", - "type": "color" - }, - "background": { - "value": "{color.palette.success.100}", - "type": "color" - }, - "iconColor": { - "value": "{color.palette.success.800}", - "type": "color" - }, - "foreground": { - "value": "{color.text.emphasized}", - "type": "color" - } - }, - "warning": { - "borderColor": { - "value": "{color.palette.warning.400}", - "type": "color" - }, - "background": { - "value": "{color.palette.warning.100}", - "type": "color" - }, - "iconColor": { - "value": "{color.palette.warning.800}", - "type": "color" - }, - "foreground": { - "value": "{color.text.emphasized}", - "type": "color" - } - }, - "error": { - "borderColor": { - "value": "{color.palette.error.300}", - "type": "color" - }, - "background": { - "value": "{color.palette.error.50}", - "type": "color" - }, - "iconColor": { - "value": "{color.palette.error.800}", - "type": "color" - }, - "foreground": { - "value": "{color.text.emphasized}", - "type": "color" - } - }, - "neutral": { - "borderColor": { - "value": "{color.palette.neutral.400}", - "type": "color" - }, - "background": { - "value": "{color.palette.neutral.100}", - "type": "color" - }, - "iconColor": { - "value": "{color.palette.neutral.800}", - "type": "color" - }, - "foreground": { - "value": "{color.text.emphasized}", - "type": "color" - } - } - } - } - } - } - } - }, - "pro/typography": { - "typography": { - "title": { - "title1": { - "value": { - "fontFamily": "{fontFamily.brand}", - "fontWeight": "$fontWeight.bold", - "lineHeight": "$lineHeight.xs", - "fontSize": "{fontSize.xxxxxl}", - "letterSpacing": "$letterSpacing.normal", - "paragraphSpacing": "", - "textCase": "$letterCase.none", - "textDecoration": "{textDecoration.none}" - }, - "type": "typography" - }, - "title2": { - "value": { - "fontFamily": "{fontFamily.brand}", - "fontWeight": "$fontWeight.bold", - "lineHeight": "$lineHeight.xs", - "fontSize": "$fontSize.xxl", - "letterSpacing": "$letterSpacing.normal", - "paragraphSpacing": "", - "textCase": "$letterCase.none", - "textDecoration": "{textDecoration.none}" - }, - "type": "typography" - }, - "title3": { - "value": { - "fontFamily": "{fontFamily.brand}", - "fontWeight": "$fontWeight.bold", - "lineHeight": "$lineHeight.xs", - "fontSize": "$fontSize.xxl", - "letterSpacing": "$letterSpacing.normal", - "paragraphSpacing": "", - "textCase": "$letterCase.none", - "textDecoration": "{textDecoration.none}" - }, - "type": "typography" - } - }, - "header": { - "h1": { - "value": { - "fontFamily": "$fontFamily.main", - "fontWeight": "$fontWeight.bold", - "lineHeight": "$lineHeight.xs", - "fontSize": "$fontSize.xxl", - "letterSpacing": "$letterSpacing.normal", - "paragraphSpacing": "", - "textCase": "$letterCase.none", - "textDecoration": "$textDecoration.none" - }, - "type": "typography" - }, - "h1Mobile": { - "value": { - "fontFamily": "$fontFamily.main", - "fontWeight": "$fontWeight.bold", - "lineHeight": "$lineHeight.xs", - "fontSize": "$fontSize.xxl", - "letterSpacing": "$letterSpacing.normal", - "paragraphSpacing": "", - "textCase": "$letterCase.none", - "textDecoration": "$textDecoration.none" - }, - "type": "typography" - }, - "h2": { - "value": { - "fontFamily": "$fontFamily.main", - "fontWeight": "$fontWeight.bold", - "lineHeight": "$lineHeight.xs", - "fontSize": "$fontSize.xl", - "letterSpacing": "$letterSpacing.normal", - "paragraphSpacing": "", - "textCase": "$letterCase.none", - "textDecoration": "$textDecoration.none" - }, - "type": "typography" - }, - "h2Mobile": { - "value": { - "fontFamily": "$fontFamily.main", - "fontWeight": "$fontWeight.bold", - "lineHeight": "$lineHeight.xs", - "fontSize": "$fontSize.lg", - "letterSpacing": "$letterSpacing.normal", - "paragraphSpacing": "", - "textCase": "$letterCase.none", - "textDecoration": "$textDecoration.none" - }, - "type": "typography" - }, - "h3": { - "value": { - "fontFamily": "$fontFamily.main", - "fontWeight": "$fontWeight.bold", - "lineHeight": "$lineHeight.md", - "fontSize": "$fontSize.lg", - "letterSpacing": "$letterSpacing.normal", - "paragraphSpacing": "", - "textCase": "$letterCase.none", - "textDecoration": "$textDecoration.none" - }, - "type": "typography" - }, - "h4": { - "value": { - "fontFamily": "$fontFamily.main", - "fontWeight": "$fontWeight.bold", - "lineHeight": "$lineHeight.md", - "fontSize": "$fontSize.base", - "letterSpacing": "$letterSpacing.normal", - "paragraphSpacing": "", - "textCase": "$letterCase.none", - "textDecoration": "$textDecoration.none" - }, - "type": "typography" - } - }, - "body": { - "body1": { - "regular": { - "value": { - "fontFamily": "{fontFamily.main}", - "fontWeight": "$fontWeight.regular", - "lineHeight": "{lineHeight.md}", - "fontSize": "{fontSize.lg}", - "letterSpacing": "$letterSpacing.normal", - "paragraphSpacing": "", - "textCase": "$letterCase.none", - "textDecoration": "{textDecoration.none}" - }, - "type": "typography" - }, - "bold": { - "value": { - "fontFamily": "{fontFamily.main}", - "fontWeight": "$fontWeight.bold", - "lineHeight": "{lineHeight.md}", - "fontSize": "{fontSize.lg}", - "letterSpacing": "$letterSpacing.normal", - "paragraphSpacing": "", - "textCase": "$letterCase.none", - "textDecoration": "{textDecoration.none}" - }, - "type": "typography" - }, - "italic": { - "value": { - "fontFamily": "{fontFamily.main}", - "fontWeight": "{fontWeight.italic}", - "lineHeight": "{lineHeight.md}", - "fontSize": "{fontSize.lg}", - "letterSpacing": "{letterSpacing.normal}", - "paragraphSpacing": "", - "textCase": "{letterCase.none}", - "textDecoration": "{textDecoration.none}" - }, - "type": "typography" - } - }, - "body2": { - "regular": { - "value": { - "fontFamily": "$fontFamily.main", - "fontWeight": "$fontWeight.regular", - "lineHeight": "$lineHeight.lg", - "fontSize": "$fontSize.base", - "letterSpacing": "$letterSpacing.normal", - "paragraphSpacing": "", - "textCase": "$letterCase.none", - "textDecoration": "$textDecoration.none" - }, - "type": "typography" - }, - "bold": { - "value": { - "fontFamily": "$fontFamily.main", - "fontWeight": "$fontWeight.bold", - "lineHeight": "$lineHeight.lg", - "fontSize": "$fontSize.base", - "letterSpacing": "$letterSpacing.normal", - "paragraphSpacing": "", - "textCase": "$letterCase.none", - "textDecoration": "$textDecoration.none" - }, - "type": "typography" - }, - "italic": { - "value": { - "fontFamily": "$fontFamily.main", - "fontWeight": "{fontWeight.italic}", - "lineHeight": "$lineHeight.lg", - "fontSize": "$fontSize.base", - "letterSpacing": "$letterSpacing.normal", - "paragraphSpacing": "", - "textCase": "$letterCase.none", - "textDecoration": "$textDecoration.none" - }, - "type": "typography" - } - }, - "body3": { - "regular": { - "value": { - "fontFamily": "{fontFamily.main}", - "fontWeight": "$fontWeight.regular", - "lineHeight": "{lineHeight.md}", - "fontSize": "{fontSize.sm}", - "letterSpacing": "$letterSpacing.normal", - "paragraphSpacing": "", - "textCase": "$letterCase.none", - "textDecoration": "{textDecoration.none}" - }, - "type": "typography" - }, - "bold": { - "value": { - "fontFamily": "{fontFamily.main}", - "fontWeight": "$fontWeight.bold", - "lineHeight": "{lineHeight.md}", - "fontSize": "{fontSize.sm}", - "letterSpacing": "$letterSpacing.normal", - "paragraphSpacing": "", - "textCase": "$letterCase.none", - "textDecoration": "{textDecoration.none}" - }, - "type": "typography" - }, - "italic": { - "value": { - "fontFamily": "{fontFamily.main}", - "fontWeight": "{fontWeight.italic}", - "lineHeight": "{lineHeight.md}", - "fontSize": "{fontSize.sm}", - "letterSpacing": "$letterSpacing.normal", - "paragraphSpacing": "", - "textCase": "$letterCase.none", - "textDecoration": "{textDecoration.none}" - }, - "type": "typography" - } - } - }, - "button": { - "btn1": { - "value": { - "fontFamily": "{fontFamily.main}", - "fontWeight": "$fontWeight.semiBold", - "lineHeight": "24px", - "fontSize": "$fontSize.base", - "letterSpacing": "$letterSpacing.normal", - "paragraphSpacing": "", - "textCase": "$letterCase.none", - "textDecoration": "$textDecoration.none" - }, - "type": "typography" - }, - "btn2": { - "value": { - "fontFamily": "{fontFamily.main}", - "fontWeight": "$fontWeight.semiBold", - "lineHeight": "24px", - "fontSize": "{fontSize.sm}", - "letterSpacing": "$letterSpacing.normal", - "paragraphSpacing": "", - "textCase": "$letterCase.none", - "textDecoration": "{textDecoration.none}" - }, - "type": "typography" - }, - "link1": { - "value": { - "fontFamily": "{fontFamily.main}", - "fontWeight": "$fontWeight.semiBold", - "lineHeight": "$lineHeight.lg", - "fontSize": "$fontSize.base", - "letterSpacing": "$letterSpacing.normal", - "paragraphSpacing": "", - "textCase": "$letterCase.none", - "textDecoration": "$textDecoration.none" - }, - "type": "typography" - }, - "link2": { - "value": { - "fontFamily": "{fontFamily.main}", - "fontWeight": "$fontWeight.semiBold", - "lineHeight": "$lineHeight.xxl", - "fontSize": "{fontSize.sm}", - "letterSpacing": "$letterSpacing.normal", - "paragraphSpacing": "", - "textCase": "$letterCase.none", - "textDecoration": "{textDecoration.none}" - }, - "type": "typography" - } - }, - "overline": { - "overline1": { - "value": { - "fontFamily": "{fontFamily.main}", - "fontWeight": "$fontWeight.bold", - "lineHeight": "{lineHeight.lg}", - "fontSize": "{fontSize.sm}", - "letterSpacing": "$letterSpacing.normal", - "paragraphSpacing": "", - "textCase": "$letterCase.uppercase", - "textDecoration": "{textDecoration.none}" - }, - "type": "typography" - } - }, - "tag": { - "tag1": { - "value": { - "fontFamily": "{fontFamily.main}", - "fontWeight": "{fontWeight.bold}", - "lineHeight": "{lineHeight.md}", - "fontSize": "{fontSize.sm}", - "letterSpacing": "{letterSpacing.wide}", - "paragraphSpacing": "", - "textDecoration": "{textDecoration.none}", - "textCase": "{letterCase.none}" - }, - "type": "typography" - }, - "tag2": { - "value": { - "fontFamily": "{fontFamily.main}", - "fontWeight": "{fontWeight.bold}", - "lineHeight": "{lineHeight.lg}", - "fontSize": "{fontSize.xs}", - "letterSpacing": "{letterSpacing.wide}", - "paragraphSpacing": "", - "textDecoration": "{textDecoration.none}", - "textCase": "{letterCase.none}" - }, - "type": "typography" - } - } - } - }, - "patient/component": { - "component": { - "button": { - "base": { - "borderRadius": { - "value": "{borderRadius.round}", - "type": "borderRadius" - }, - "typography": { - "value": "{typography.button.btn1}", - "type": "typography" - }, - "focusRing": { - "value": "{border.focus}", - "type": "border" - } - }, - "variants": { - "intent": { - "primary": { - "default": { - "background": { - "value": "{color.palette.primary.300}", - "type": "color" - }, - "foreground": { - "value": "{color.palette.neutral.800}", - "type": "color" - } - }, - "hover": { - "background": { - "value": "{color.palette.primary.400}", - "type": "color" - }, - "foreground": { - "value": "{color.palette.neutral.900}", - "type": "color" - } - }, - "focused": { - "background": { - "value": "{color.palette.primary.400}", - "type": "color" - }, - "foreground": { - "value": "{color.palette.neutral.900}", - "type": "color" - } - }, - "active": { - "background": { - "value": "{color.palette.primary.500}", - "type": "color" - }, - "foreground": { - "value": "{color.palette.neutral.900}", - "type": "color" - } - }, - "disabled": { - "background": { - "value": "{color.palette.primary.100}", - "type": "color" - }, - "foreground": { - "value": "{color.palette.neutral.500}", - "type": "color" - } - } - }, - "standard": { - "default": { - "background": { - "value": "{color.palette.neutral.700}", - "type": "color" - }, - "foreground": { - "value": "{color.palette.white}", - "type": "color" - } - }, - "hover": { - "background": { - "value": "{color.palette.neutral.800}", - "type": "color" - }, - "foreground": { - "value": "{color.palette.white}", - "type": "color" - } - }, - "focused": { - "background": { - "value": "{color.palette.neutral.700}", - "type": "color" - }, - "foreground": { - "value": "{color.palette.white}", - "type": "color" - } - }, - "active": { - "background": { - "value": "{color.palette.neutral.900}", - "type": "color" - }, - "foreground": { - "value": "{color.palette.white}", - "type": "color" - } - }, - "disabled": { - "background": { - "value": "{color.palette.neutral.300}", - "type": "color" - }, - "foreground": { - "value": "{color.palette.white}", - "type": "color" - } - } - }, - "outline": { - "default": { - "background": { - "value": "none", - "type": "color" - }, - "foreground": { - "value": "{color.palette.neutral.800}", - "type": "color" - }, - "border": { - "value": { - "color": "{color.palette.neutral.300}", - "width": "{borderWidth.regular}", - "style": "solid" - }, - "type": "border" - } - }, - "hover": { - "background": { - "value": "none", - "type": "color" - }, - "foreground": { - "value": "{color.palette.neutral.800}", - "type": "color" - }, - "border": { - "value": { - "color": "{color.palette.neutral.500}", - "width": "{borderWidth.regular}", - "style": "solid" - }, - "type": "border" - } - }, - "focused": { - "background": { - "value": "none", - "type": "color" - }, - "foreground": { - "value": "{color.palette.neutral.800}", - "type": "color" - } - }, - "active": { - "background": { - "value": "none", - "type": "color" - }, - "foreground": { - "value": "{color.palette.neutral.800}", - "type": "color" - }, - "border": { - "value": { - "color": "{color.palette.neutral.800}", - "width": "{borderWidth.regular}", - "style": "solid" - }, - "type": "border" - } - }, - "disabled": { - "background": { - "value": "none", - "type": "color" - }, - "foreground": { - "value": "{color.palette.neutral.400}", - "type": "color" - }, - "border": { - "value": { - "color": "{color.palette.neutral.300}", - "width": "{borderWidth.regular}", - "style": "solid" - }, - "type": "border" - } - } - }, - "plain": { - "default": { - "background": { - "value": "none", - "type": "color" - }, - "foreground": { - "value": "{color.palette.neutral.800}", - "type": "color" - } - }, - "hover": { - "background": { - "value": "none", - "type": "color" - }, - "foreground": { - "value": "{color.palette.neutral.900}", - "type": "color" - } - }, - "focused": { - "background": { - "value": "none", - "type": "color" - }, - "foreground": { - "value": "{color.palette.neutral.900}", - "type": "color" - } - }, - "active": { - "background": { - "value": "none", - "type": "color" - }, - "foreground": { - "value": "{color.palette.neutral.900}", - "type": "color" - } - }, - "disabled": { - "background": { - "value": "none", - "type": "color" - }, - "foreground": { - "value": "{color.palette.neutral.400}", - "type": "color" - } - } - } - }, - "size": { - "large": { - "paddingLeft": { - "value": "{spacing.xl}", - "type": "spacing" - }, - "paddingRight": { - "value": "{spacing.xl}", - "type": "spacing" - }, - "paddingTop": { - "value": "{spacing.sm}", - "type": "spacing" - }, - "paddingBottom": { - "value": "{spacing.sm}", - "type": "spacing" - }, - "gap": { - "value": "{spacing.xs}", - "type": "spacing" - }, - "iconSize": { - "value": "20px", - "type": "sizing", - "description": "In icon button: add 2px margin" - } - }, - "medium": { - "paddingLeft": { - "value": "{spacing.sm}", - "type": "spacing" - }, - "paddingRight": { - "value": "{spacing.sm}", - "type": "spacing" - }, - "paddingTop": { - "value": "{spacing.xxs}", - "type": "spacing" - }, - "paddingBottom": { - "value": "{spacing.xxs}", - "type": "spacing" - }, - "gap": { - "value": "{spacing.xxs}", - "type": "spacing" - }, - "iconSize": { - "value": "20px", - "type": "sizing", - "description": "In icon button: add 2px margin" - } - }, - "small": { - "paddingLeft": { - "value": "{spacing.xs}", - "type": "spacing" - }, - "paddingRight": { - "value": "{spacing.xs}", - "type": "spacing" - }, - "paddingTop": { - "value": "{spacing.xxxs}", - "type": "spacing" - }, - "paddingBottom": { - "value": "{spacing.xxxs}", - "type": "spacing" - }, - "gap": { - "value": "{spacing.xxs}", - "type": "spacing" - }, - "iconSize": { - "value": "16px", - "type": "sizing", - "description": "In icon button: add 4px margin" - }, - "typography": { - "value": "{typography.button.btn2}", - "type": "typography" - } - } - } - }, - "compoundVariants": { - "simple-intent-size": { - "true-plain-all": { - "paddingRight": { - "value": "0", - "type": "spacing" - }, - "paddingLeft": { - "value": "0", - "type": "spacing" - } - } - }, - "startIcon-size": { - "true-large": { - "paddingLeft": { - "value": "{spacing.lg}", - "type": "spacing" - } - }, - "true-medium": { - "paddingLeft": { - "value": "{spacing.xs}", - "type": "spacing" - } - }, - "true-small": { - "paddingLeft": { - "value": "{spacing.xs}", - "type": "spacing" - } - } - }, - "onlyIcon-size": { - "true-large": { - "paddingRight": { - "value": "{spacing.xs}", - "type": "spacing" - }, - "paddingLeft": { - "value": "{spacing.xs}", - "type": "spacing" - }, - "paddingTop": { - "value": "{spacing.xs}", - "type": "spacing" - }, - "paddingBottom": { - "value": "{spacing.xs}", - "type": "spacing" - } - }, - "true-medium": { - "paddingRight": { - "value": "{spacing.xxs}", - "type": "spacing" - }, - "paddingLeft": { - "value": "{spacing.xxs}", - "type": "spacing" - }, - "paddingTop": { - "value": "{spacing.xxs}", - "type": "spacing" - }, - "paddingBottom": { - "value": "{spacing.xxs}", - "type": "spacing" - } - }, - "true-small": { - "paddingRight": { - "value": "{spacing.xxxs}", - "type": "spacing" - }, - "paddingLeft": { - "value": "{spacing.xxxs}", - "type": "spacing" - }, - "paddingTop": { - "value": "{spacing.xxxs}", - "type": "spacing" - }, - "paddingBottom": { - "value": "{spacing.xxxs}", - "type": "spacing" - } - } - }, - "endIcon-size": { - "true-large": { - "paddingRight": { - "value": "{spacing.lg}", - "type": "spacing" - } - }, - "true-medium": { - "paddingRight": { - "value": "{spacing.xs}", - "type": "spacing" - } - }, - "true-small": { - "paddingRight": { - "value": "{spacing.xs}", - "type": "spacing" - } - } - } - } - }, - "placeholder": { - "base": { - "background": { - "value": "#eeeeee", - "description": "Placeholder background color (please Jonna check why it is hardcoded)", - "type": "color" - }, - "highlightColor": { - "value": "#f5f5f5", - "description": "Placeholder highlight color (please Jonna check why it is hardcoded)", - "type": "color" - } - } - }, - "chat": { - "message": { - "base": { - "typography": { - "value": "{typography.body.body2.regular}", - "type": "typography" - }, - "timestampTypography": { - "value": "{typography.body.body3.regular}", - "type": "typography" - }, - "paddingX": { - "value": "{spacing.xs}", - "type": "spacing" - }, - "paddingY": { - "value": "{spacing.xxs}", - "type": "spacing" - }, - "gap": { - "value": "{spacing.xxxs}", - "type": "spacing" - }, - "borderRadius": { - "value": "{borderRadius.lg}", - "type": "borderRadius" - }, - "borderRadiusAnchor": { - "value": "{borderRadius.xs}", - "type": "borderRadius" - }, - "foreground": { - "value": "{color.text.emphasized}", - "type": "color" - } - }, - "variants": { - "type": { - "incoming": { - "background": { - "value": "{color.palette.neutral.200}", - "type": "color" - } - }, - "outgoing": { - "background": { - "value": "{color.palette.primary.300}", - "type": "color" - } - } - }, - "firstInGroup": { - "true": { - "borderEndStartRadius": { - "value": "{component.chat.message.base.borderRadiusAnchor}", - "type": "borderRadius" - } - } - }, - "middleInGroup": { - "true": { - "borderStartStartRadius": { - "value": "{component.chat.message.base.borderRadiusAnchor}", - "type": "borderRadius" - }, - "borderEndStartRadius": { - "value": "{component.chat.message.base.borderRadiusAnchor}", - "type": "borderRadius" - } - } - }, - "lastInGroup": { - "true": { - "borderStartStartRadius": { - "value": "{component.chat.message.base.borderRadiusAnchor}", - "type": "borderRadius" - } - } - } - } - }, - "messageGroup": { - "base": { - "width": { - "value": "70%", - "type": "sizing" - }, - "mobileWidth": { - "value": "100%", - "type": "sizing" - }, - "paddingY": { - "value": "{spacing.xxs}", - "type": "spacing" - }, - "gapY": { - "value": "{spacing.xxxs}", - "type": "spacing" - }, - "gapX": { - "value": "{spacing.xxs}", - "type": "spacing" - } - } - } - }, - "form": { - "formField": { - "label": { - "default": { - "foreground": { - "value": "{color.text.primary}", - "type": "color" - } - }, - "disabled": { - "foreground": { - "value": "{color.text.dimmed}", - "type": "color" - } - } - }, - "helpText": { - "default": { - "foreground": { - "value": "{color.text.primary}", - "type": "color" - } - }, - "disabled": { - "foreground": { - "value": "{color.text.dimmed}", - "type": "color" - } - }, - "error": { - "foreground": { - "value": "{color.text.error}", - "type": "color" - } - } - }, - "base": { - "gap": { - "value": "{spacing.xxs}", - "type": "spacing" - } - } - }, - "input": { - "base": { - "default": { - "placeholderForeground": { - "type": "color", - "value": "{color.text.subtle}" - }, - "iconForeground": { - "type": "color", - "value": "{color.text.subtle}" - }, - "borderRadius": { - "type": "borderRadius", - "value": "4px" - }, - "borderWidth": { - "type": "borderWidth", - "value": "{borderWidth.regular}" - }, - "foreground": { - "type": "color", - "value": "{color.text.primary}" - }, - "borderColor": { - "type": "color", - "value": "{color.palette.neutral.400}" - }, - "background": { - "type": "color", - "value": "{color.palette.white}" - } - }, - "active": { - "foreground": { - "type": "color", - "value": "{color.text.emphasized}" - }, - "borderColor": { - "type": "color", - "value": "{color.palette.neutral.800}" - }, - "background": { - "type": "color", - "value": "{color.opacity.neutral.100}" - } - }, - "disabled": { - "foreground": { - "type": "color", - "value": "{color.text.dimmed}" - }, - "borderColor": { - "type": "color", - "value": "{color.palette.neutral.300}" - }, - "background": { - "type": "color", - "value": "{color.palette.neutral.50}" - } - }, - "hover": { - "borderColor": { - "type": "color", - "value": "{color.palette.neutral.800}" - } - }, - "focused": { - "borderColor": { - "type": "color", - "value": "{color.palette.accent.500}" - } - }, - "error": { - "borderWidth": { - "type": "borderWidth", - "value": "{borderWidth.medium}" - }, - "borderColor": { - "type": "color", - "value": "{color.palette.error.700}" - } - } - }, - "variants": { - "size": { - "small": { - "paddingX": { - "type": "spacing", - "value": "{spacing.xxs}" - }, - "paddingY": { - "type": "spacing", - "value": "{spacing.xxxs}" - }, - "gap": { - "type": "spacing", - "value": "{spacing.xxs}" - } - }, - "medium": { - "paddingX": { - "type": "spacing", - "value": "{spacing.xs}" - }, - "paddingY": { - "type": "spacing", - "value": "{spacing.xxs}" - }, - "gap": { - "type": "spacing", - "value": "{spacing.xxs}" - } - }, - "large": { - "paddingX": { - "type": "spacing", - "value": "{spacing.sm}" - }, - "paddingY": { - "type": "spacing", - "value": "{spacing.xs}" - }, - "gap": { - "type": "spacing", - "value": "{spacing.xs}" - } - } - } - } - }, - "checkbox-radio": { - "label": { - "default": { - "gap": { - "value": "{spacing.xs}", - "type": "spacing" - }, - "foreground": { - "value": "{color.text.primary}", - "type": "color" - }, - "background": { - "value": "transparent", - "type": "color" - }, - "paddingY": { - "value": "{spacing.xxxs}", - "type": "spacing" - }, - "paddingX": { - "value": "{spacing.xxxs}", - "type": "spacing" - } - }, - "hover": { - "background": { - "value": "{color.opacity.neutral.50}", - "type": "color" - }, - "foreground": { - "value": "{color.text.emphasized}", - "type": "color" - } - }, - "focused": { - "borderWidth": { - "value": "{component.common.focusRing.borderWidth}", - "type": "borderWidth" - }, - "borderColor": { - "value": "{component.common.focusRing.borderColor}", - "type": "color" - }, - "background": { - "value": "{color.opacity.neutral.50}", - "type": "color" - }, - "foreground": { - "value": "{color.text.emphasized}", - "type": "color" - } - }, - "disabled": { - "foreground": { - "value": "{color.text.dimmed}", - "type": "color" - } - } - }, - "box": { - "default": { - "borderColor": { - "value": "{color.palette.neutral.400}", - "type": "color" - }, - "borderWidth": { - "value": "{borderWidth.regular}", - "type": "borderWidth" - }, - "borderRadius": { - "value": "{borderRadius.sm}", - "type": "borderRadius" - }, - "background": { - "value": "{color.palette.white}", - "type": "color" - }, - "size": { - "value": "{sizing.general.xxxs}", - "type": "sizing", - "description": "Apply to width and height" - } - }, - "hover": { - "borderColor": { - "value": "{color.palette.neutral.700}", - "type": "color" - }, - "background": { - "value": "{color.palette.white}", - "type": "color" - } - }, - "disabled": { - "borderColor": { - "value": "{color.palette.neutral.300}", - "type": "color" - }, - "background": { - "value": "{color.palette.neutral.50}", - "type": "color" - } - }, - "checked": { - "borderColor": { - "value": "{color.opacity.neutral.0}", - "type": "color" - }, - "background": { - "value": "{color.palette.neutral.700}", - "type": "color" - }, - "foreground": { - "value": "{color.palette.white}", - "type": "color" - } - }, - "checked-disabled": { - "borderColor": { - "value": "{color.opacity.neutral.0}", - "type": "color" - }, - "foreground": { - "value": "{color.palette.white}", - "type": "color" - }, - "background": { - "value": "{color.palette.neutral.400}", - "type": "color" - } - } - }, - "group": { - "gapX": { - "value": "{spacing.xxs}", - "type": "spacing" - }, - "gapY": { - "value": "0", - "type": "spacing" - } - } - } - }, - "common": { - "focusRing": { - "borderWidth": { - "type": "borderWidth", - "value": "{borderWidth.medium}" - }, - "borderColor": { - "value": "{color.palette.accent.500}", - "type": "color" - } - } - }, - "panel": { - "base": { - "borderRadius": { - "value": "{borderRadius.lg}", - "type": "borderRadius" - }, - "background": { - "value": "{color.palette.white}", - "type": "color" - }, - "foregroundPrimary": { - "value": "{color.text.primary}", - "type": "color" - }, - "foregroundSecondary": { - "value": "{color.text.secondary}", - "type": "color" - }, - "scrim": { - "value": "{color.opacity.neutral.300}", - "type": "color" - } - }, - "variants": { - "density": { - "compact": { - "paddingX": { - "value": "{spacing.lg}", - "type": "spacing" - }, - "paddingTop": { - "value": "{spacing.xl}", - "type": "spacing" - }, - "paddingBottom": { - "value": "{spacing.md}", - "type": "spacing" - }, - "gap": { - "value": "{spacing.lg}", - "type": "spacing" - } - }, - "regular": { - "paddingX": { - "value": "{spacing.xl}", - "type": "spacing" - }, - "paddingTop": { - "value": "{spacing.xxl}", - "type": "spacing" - }, - "paddingBottom": { - "value": "{spacing.xl}", - "type": "spacing" - }, - "gap": { - "value": "{spacing.lg}", - "type": "spacing" - } - }, - "comfortable": { - "paddingX": { - "value": "{spacing.xxl}", - "type": "spacing" - }, - "paddingTop": { - "value": "{spacing.xxxl}", - "type": "spacing" - }, - "paddingBottom": { - "value": "{spacing.xxl}", - "type": "spacing" - }, - "gap": { - "value": "{spacing.xl}", - "type": "spacing" - } - } - } - } - }, - "list": { - "listItem": { - "base": { - "default": { - "background": { - "value": "{color.palette.white}", - "type": "color" - }, - "foreground": { - "value": "{color.text.primary}", - "type": "color" - }, - "foregroundQuiet": { - "value": "{color.text.secondary}", - "type": "color" - } - }, - "hover": { - "background": { - "value": "{color.opacity.neutral.50}", - "type": "color" - }, - "foreground": { - "value": "{color.text.emphasized}", - "type": "color" - } - }, - "active": { - "background": { - "value": "{color.opacity.neutral.100}", - "type": "color" - }, - "foreground": { - "value": "{color.text.emphasized}", - "type": "color" - } - }, - "disabled": { - "background": { - "value": "{color.palette.white}", - "type": "color" - }, - "foreground": { - "value": "{color.text.dimmed}", - "type": "color" - } - } - }, - "variants": { - "density": { - "comfortable": { - "paddingX": { - "value": "{spacing.md}", - "type": "spacing" - }, - "paddingY": { - "value": "{spacing.sm}", - "type": "spacing" - }, - "gap": { - "value": "{spacing.md}", - "type": "spacing" - } - }, - "compact": { - "paddingX": { - "value": "{spacing.sm}", - "type": "spacing" - }, - "paddingY": { - "value": "{spacing.xs}", - "type": "spacing" - }, - "gap": { - "value": "{spacing.sm}", - "type": "spacing" - } - } - } - } - } - }, - "page": { - "background": { - "value": "#F0EFF2", - "type": "color" - } - }, - "menu": { - "list": { - "paddingY": { - "value": "{spacing.xxs}", - "type": "spacing" - }, - "background": { - "value": "{color.palette.white}", - "type": "color" - }, - "borderRadius": { - "value": "{borderRadius.sm}", - "type": "borderRadius" - } - }, - "separator": { - "height": { - "value": "{borderWidth.regular}", - "type": "borderWidth" - }, - "background": { - "value": "{color.palette.neutral.200}", - "type": "color" - } - }, - "sectionHeading": { - "paddingX": { - "value": "{spacing.sm}", - "type": "spacing" - }, - "paddingY": { - "value": "{spacing.xxs}", - "type": "spacing" - }, - "background": { - "value": "{color.palette.white}", - "type": "color" - }, - "foreground": { - "value": "{color.text.primary}", - "type": "color" - } - }, - "item": { - "default": { - "paddingX": { - "value": "{spacing.sm}", - "type": "spacing" - }, - "paddingY": { - "value": "{spacing.xxs}", - "type": "spacing" - }, - "gap": { - "value": "{spacing.xs}", - "type": "spacing" - }, - "background": { - "value": "{color.palette.white}", - "type": "color" - }, - "foreground": { - "value": "{color.text.primary}", - "type": "color" - } - }, - "hover": { - "background": { - "value": "{color.opacity.neutral.50}", - "type": "color" - }, - "foreground": { - "value": "{color.text.emphasized}", - "type": "color" - } - }, - "active": { - "background": { - "value": "{color.opacity.neutral.100}", - "type": "color" - }, - "foreground": { - "value": "{color.text.emphasized}", - "type": "color" - } - }, - "focused": { - "background": { - "value": "{color.opacity.neutral.50}", - "type": "color" - }, - "foreground": { - "value": "{color.text.emphasized}", - "type": "color" - } - }, - "disabled": { - "background": { - "value": "{color.palette.white}", - "type": "color" - }, - "foreground": { - "value": "{color.text.dimmed}", - "type": "color" - } - } - } - }, - "tabs": { - "tabBar": { - "base": { - "gap": { - "value": "{spacing.md}", - "type": "spacing" - }, - "background": { - "value": "transparent", - "type": "color" - } - }, - "variants": { - "inline": { - "true": { - "background": { - "value": "{color.palette.white}", - "type": "color" - } - } - } - } - }, - "tab": { - "base": { - "default": { - "background": { - "value": "{color.opacity.neutral.0}", - "type": "color" - }, - "foreground": { - "value": "{color.text.primary}", - "type": "color" - }, - "paddingY": { - "value": "{spacing.xxs}", - "type": "spacing" - } - }, - "hover": { - "background": { - "value": "{color.opacity.neutral.50}", - "type": "color" - }, - "foreground": { - "value": "{color.text.emphasized}", - "type": "color" - } - }, - "active": { - "foreground": { - "value": "{color.palette.primary.800}", - "type": "color" - }, - "borderColor": { - "value": "{color.palette.primary.800}", - "type": "color" - }, - "hover": { - "foreground": { - "value": "{color.palette.primary.900}", - "type": "color" - }, - "borderColor": { - "value": "{color.palette.primary.900}", - "type": "color" - } - } - } - }, - "variants": { - "inline": { - "true": { - "default": { - "paddingX": { - "value": "{spacing.sm}", - "type": "spacing" - }, - "paddingY": { - "value": "{spacing.xxs}", - "type": "spacing" - } - } - } - } - } - } - }, - "badge": { - "base": { - "borderRadius": { - "value": "{borderRadius.sm}", - "type": "borderRadius" - }, - "paddingX": { - "value": "{spacing.xxxs}", - "type": "spacing" - }, - "paddingY": { - "value": "0", - "type": "spacing" - }, - "gap": { - "value": "{spacing.xxxs}", - "type": "spacing" - }, - "iconSize": { - "value": "{sizing.iconSize.sm}", - "type": "sizing" - } - }, - "variants": { - "intent": { - "success": { - "background": { - "value": "{color.palette.primary.700}", - "type": "color" - }, - "foreground": { - "value": "{color.palette.white}", - "type": "color" - } - }, - "success-quiet": { - "background": { - "value": "{color.palette.primary.200}", - "type": "color" - }, - "foreground": { - "value": "{color.palette.primary.900}", - "type": "color" - } - }, - "warning": { - "background": { - "value": "{color.palette.warning.700}", - "type": "color" - }, - "foreground": { - "value": "{color.palette.white}", - "type": "color" - } - }, - "warning-quiet": { - "background": { - "value": "{color.palette.warning.100}", - "type": "color" - }, - "foreground": { - "value": "{color.palette.warning.900}", - "type": "color" - } - }, - "alert": { - "background": { - "value": "{color.palette.error.600}", - "type": "color" - }, - "foreground": { - "value": "{color.palette.white}", - "type": "color" - } - }, - "alert-quiet": { - "background": { - "value": "{color.palette.error.50}", - "type": "color" - }, - "foreground": { - "value": "{color.palette.error.900}", - "type": "color" - } - }, - "info": { - "background": { - "value": "{color.palette.accent.600}", - "type": "color" - }, - "foreground": { - "value": "{color.palette.white}", - "type": "color" - } - }, - "info-quiet": { - "background": { - "value": "{color.palette.accent.50}", - "type": "color" - }, - "foreground": { - "value": "{color.palette.accent.900}", - "type": "color" - } - }, - "neutral": { - "background": { - "value": "{color.palette.neutral.700}", - "type": "color" - }, - "foreground": { - "value": "{color.palette.white}", - "type": "color" - } - }, - "neutral-quiet": { - "background": { - "value": "{color.palette.neutral.100}", - "type": "color" - }, - "foreground": { - "value": "{color.text.emphasized}", - "type": "color" - } - }, - "u1": { - "background": { - "value": "{color.palette.error.700}", - "type": "color" - }, - "foreground": { - "value": "{color.palette.white}", - "type": "color" - } - }, - "u2": { - "background": { - "value": "{color.palette.error.500}", - "type": "color" - }, - "foreground": { - "value": "{color.palette.white}", - "type": "color" - } - }, - "u3": { - "background": { - "value": "{color.palette.warning.700}", - "type": "color" - }, - "foreground": { - "value": "{color.palette.white}", - "type": "color" - } - }, - "u4": { - "background": { - "value": "{color.palette.accent.400}", - "type": "color" - }, - "foreground": { - "value": "{color.palette.white}", - "type": "color" - } - }, - "u5": { - "background": { - "value": "{color.palette.success.500}", - "type": "color" - }, - "foreground": { - "value": "{color.palette.white}", - "type": "color" - } - }, - "uc": { - "background": { - "value": "{color.brand.virusViolet}", - "type": "color" - }, - "foreground": { - "value": "{color.palette.white}", - "type": "color" - } - }, - "ucth": { - "background": { - "value": "{color.brand.virusViolet30}", - "type": "color" - }, - "foreground": { - "value": "{color.text.emphasized}", - "type": "color" - } - } - }, - "startIcon": { - "true": { - "paddingLeft": { - "value": "0", - "type": "spacing" - } - } - }, - "endIcon": { - "true": { - "paddingRight": { - "value": "0", - "type": "spacing" - } - } - } - } - }, - "notifications": { - "toast": { - "base": { - "borderRadius": { - "value": "{borderRadius.lg}", - "type": "borderRadius" - }, - "borderWidth": { - "value": "{borderWidth.regular}", - "type": "borderWidth" - }, - "minWidth": { - "value": "276px", - "type": "sizing" - }, - "maxWidth": { - "value": "492px", - "type": "sizing" - }, - "iconSize": { - "value": "{sizing.iconSize.lg}", - "type": "sizing" - }, - "paddingX": { - "value": "{spacing.sm}", - "type": "spacing" - }, - "paddingY": { - "value": "{spacing.sm}", - "type": "spacing" - }, - "gap": { - "value": "{spacing.xs}", - "type": "spacing" - }, - "background": { - "value": "{color.palette.white}", - "type": "color" - }, - "foreground": { - "value": "{color.text.emphasized}", - "type": "color" - } - }, - "variants": { - "intent": { - "info": { - "borderColor": { - "value": "{color.palette.accent.300}", - "type": "color" - }, - "background": { - "value": "{color.palette.accent.50}", - "type": "color" - }, - "iconColor": { - "value": "{color.palette.accent.700}", - "type": "color" - }, - "foreground": { - "value": "{color.text.emphasized}", - "type": "color" - } - }, - "success": { - "borderColor": { - "value": "{color.palette.success.400}", - "type": "color" - }, - "background": { - "value": "{color.palette.success.100}", - "type": "color" - }, - "iconColor": { - "value": "{color.palette.success.800}", - "type": "color" - }, - "foreground": { - "value": "{color.text.emphasized}", - "type": "color" - } - }, - "warning": { - "borderColor": { - "value": "{color.palette.warning.400}", - "type": "color" - }, - "background": { - "value": "{color.palette.warning.100}", - "type": "color" - }, - "iconColor": { - "value": "{color.palette.warning.800}", - "type": "color" - }, - "foreground": { - "value": "{color.text.emphasized}", - "type": "color" - } - }, - "error": { - "borderColor": { - "value": "{color.palette.error.300}", - "type": "color" - }, - "background": { - "value": "{color.palette.error.50}", - "type": "color" - }, - "iconColor": { - "value": "{color.palette.error.800}", - "type": "color" - }, - "foreground": { - "value": "{color.text.emphasized}", - "type": "color" - } - }, - "neutral": { - "borderColor": { - "value": "{color.palette.neutral.400}", - "type": "color" - }, - "background": { - "value": "{color.palette.neutral.100}", - "type": "color" - }, - "iconColor": { - "value": "{color.palette.neutral.800}", - "type": "color" - }, - "foreground": { - "value": "{color.text.emphasized}", - "type": "color" - } - } - } - } - } - } - } - }, - "patient/typography": { - "typography": { - "title": { - "title1": { - "value": { - "fontFamily": "{fontFamily.brand}", - "fontWeight": "$fontWeight.bold", - "lineHeight": "$lineHeight.xs", - "fontSize": "{fontSize.xxxxxl}", - "letterSpacing": "$letterSpacing.normal", - "paragraphSpacing": "", - "textCase": "$letterCase.none", - "textDecoration": "{textDecoration.none}" - }, - "type": "typography" - }, - "title2": { - "value": { - "fontFamily": "{fontFamily.brand}", - "fontWeight": "$fontWeight.bold", - "lineHeight": "$lineHeight.xs", - "fontSize": "$fontSize.xxl", - "letterSpacing": "$letterSpacing.normal", - "paragraphSpacing": "", - "textCase": "$letterCase.none", - "textDecoration": "{textDecoration.none}" - }, - "type": "typography" - }, - "title3": { - "value": { - "fontFamily": "{fontFamily.brand}", - "fontWeight": "$fontWeight.bold", - "lineHeight": "$lineHeight.xs", - "fontSize": "$fontSize.xxl", - "letterSpacing": "$letterSpacing.normal", - "paragraphSpacing": "", - "textCase": "$letterCase.none", - "textDecoration": "{textDecoration.none}" - }, - "type": "typography" - } - }, - "header": { - "h1": { - "value": { - "fontFamily": "$fontFamily.brand", - "fontWeight": "$fontWeight.bold", - "lineHeight": "$lineHeight.xs", - "fontSize": "$fontSize.xxxxxl", - "letterSpacing": "$letterSpacing.normal", - "paragraphSpacing": "", - "textCase": "$letterCase.none", - "textDecoration": "$textDecoration.none" - }, - "type": "typography" - }, - "h1Mobile": { - "value": { - "fontFamily": "$fontFamily.brand", - "fontWeight": "$fontWeight.bold", - "lineHeight": "$lineHeight.xxs", - "fontSize": "$fontSize.xxxxl", - "letterSpacing": "$letterSpacing.normal", - "paragraphSpacing": "", - "textCase": "$letterCase.none", - "textDecoration": "$textDecoration.none" - }, - "type": "typography" - }, - "h2": { - "value": { - "fontFamily": "$fontFamily.main", - "fontWeight": "$fontWeight.bold", - "lineHeight": "$lineHeight.sm", - "fontSize": "$fontSize.xl", - "letterSpacing": "$letterSpacing.normal", - "paragraphSpacing": "", - "textCase": "$letterCase.none", - "textDecoration": "$textDecoration.none" - }, - "type": "typography" - }, - "h2Mobile": { - "value": { - "fontFamily": "$fontFamily.main", - "fontWeight": "$fontWeight.bold", - "lineHeight": "$lineHeight.xs", - "fontSize": "$fontSize.lg", - "letterSpacing": "$letterSpacing.normal", - "paragraphSpacing": "", - "textCase": "$letterCase.none", - "textDecoration": "$textDecoration.none" - }, - "type": "typography" - }, - "h3": { - "value": { - "fontFamily": "$fontFamily.main", - "fontWeight": "$fontWeight.bold", - "lineHeight": "$lineHeight.md", - "fontSize": "$fontSize.lg", - "letterSpacing": "$letterSpacing.normal", - "paragraphSpacing": "", - "textCase": "$letterCase.none", - "textDecoration": "$textDecoration.none" - }, - "type": "typography" - }, - "h4": { - "value": { - "fontFamily": "$fontFamily.main", - "fontWeight": "$fontWeight.bold", - "lineHeight": "$lineHeight.md", - "fontSize": "$fontSize.base", - "letterSpacing": "$letterSpacing.normal", - "paragraphSpacing": "", - "textCase": "$letterCase.none", - "textDecoration": "$textDecoration.none" - }, - "type": "typography" - } - }, - "body": { - "body1": { - "regular": { - "value": { - "fontFamily": "{fontFamily.main}", - "fontWeight": "$fontWeight.regular", - "lineHeight": "{lineHeight.md}", - "fontSize": "{fontSize.lg}", - "letterSpacing": "$letterSpacing.normal", - "paragraphSpacing": "", - "textCase": "$letterCase.none", - "textDecoration": "{textDecoration.none}" - }, - "type": "typography" - }, - "bold": { - "value": { - "fontFamily": "{fontFamily.main}", - "fontWeight": "$fontWeight.bold", - "lineHeight": "{lineHeight.md}", - "fontSize": "{fontSize.lg}", - "letterSpacing": "$letterSpacing.normal", - "paragraphSpacing": "", - "textCase": "$letterCase.none", - "textDecoration": "{textDecoration.none}" - }, - "type": "typography" - }, - "italic": { - "value": { - "fontFamily": "{fontFamily.main}", - "fontWeight": "{fontWeight.italic}", - "lineHeight": "{lineHeight.md}", - "fontSize": "{fontSize.lg}", - "letterSpacing": "{letterSpacing.normal}", - "paragraphSpacing": "", - "textCase": "{letterCase.none}", - "textDecoration": "{textDecoration.none}" - }, - "type": "typography" - } - }, - "body2": { - "regular": { - "value": { - "fontFamily": "$fontFamily.main", - "fontWeight": "$fontWeight.regular", - "lineHeight": "$lineHeight.lg", - "fontSize": "$fontSize.base", - "letterSpacing": "$letterSpacing.normal", - "paragraphSpacing": "", - "textCase": "$letterCase.none", - "textDecoration": "$textDecoration.none" - }, - "type": "typography" - }, - "bold": { - "value": { - "fontFamily": "$fontFamily.main", - "fontWeight": "$fontWeight.bold", - "lineHeight": "$lineHeight.lg", - "fontSize": "$fontSize.base", - "letterSpacing": "$letterSpacing.normal", - "paragraphSpacing": "", - "textCase": "$letterCase.none", - "textDecoration": "$textDecoration.none" - }, - "type": "typography" - }, - "italic": { - "value": { - "fontFamily": "$fontFamily.main", - "fontWeight": "{fontWeight.italic}", - "lineHeight": "$lineHeight.lg", - "fontSize": "$fontSize.base", - "letterSpacing": "$letterSpacing.normal", - "paragraphSpacing": "", - "textCase": "$letterCase.none", - "textDecoration": "$textDecoration.none" - }, - "type": "typography" - } - }, - "body3": { - "regular": { - "value": { - "fontFamily": "{fontFamily.main}", - "fontWeight": "$fontWeight.regular", - "lineHeight": "{lineHeight.md}", - "fontSize": "{fontSize.sm}", - "letterSpacing": "$letterSpacing.normal", - "paragraphSpacing": "", - "textCase": "$letterCase.none", - "textDecoration": "{textDecoration.none}" - }, - "type": "typography" - }, - "bold": { - "value": { - "fontFamily": "{fontFamily.main}", - "fontWeight": "$fontWeight.bold", - "lineHeight": "{lineHeight.md}", - "fontSize": "{fontSize.sm}", - "letterSpacing": "$letterSpacing.normal", - "paragraphSpacing": "", - "textCase": "$letterCase.none", - "textDecoration": "{textDecoration.none}" - }, - "type": "typography" - }, - "italic": { - "value": { - "fontFamily": "{fontFamily.main}", - "fontWeight": "{fontWeight.italic}", - "lineHeight": "{lineHeight.md}", - "fontSize": "{fontSize.sm}", - "letterSpacing": "$letterSpacing.normal", - "paragraphSpacing": "", - "textCase": "$letterCase.none", - "textDecoration": "{textDecoration.none}" - }, - "type": "typography" - } - } - }, - "button": { - "btn1": { - "value": { - "fontFamily": "{fontFamily.main}", - "fontWeight": "$fontWeight.bold", - "lineHeight": "24px", - "fontSize": "$fontSize.base", - "letterSpacing": "$letterSpacing.normal", - "paragraphSpacing": "", - "textCase": "$letterCase.none", - "textDecoration": "$textDecoration.none" - }, - "type": "typography" - }, - "btn2": { - "value": { - "fontFamily": "{fontFamily.main}", - "fontWeight": "$fontWeight.bold", - "lineHeight": "24px", - "fontSize": "{fontSize.sm}", - "letterSpacing": "$letterSpacing.normal", - "paragraphSpacing": "", - "textCase": "$letterCase.none", - "textDecoration": "{textDecoration.none}" - }, - "type": "typography" - }, - "link1": { - "value": { - "fontFamily": "{fontFamily.main}", - "fontWeight": "$fontWeight.semiBold", - "lineHeight": "$lineHeight.lg", - "fontSize": "$fontSize.base", - "letterSpacing": "$letterSpacing.normal", - "paragraphSpacing": "", - "textCase": "$letterCase.none", - "textDecoration": "$textDecoration.none" - }, - "type": "typography" - }, - "link2": { - "value": { - "fontFamily": "{fontFamily.main}", - "fontWeight": "$fontWeight.semiBold", - "lineHeight": "$lineHeight.xxl", - "fontSize": "{fontSize.sm}", - "letterSpacing": "$letterSpacing.normal", - "paragraphSpacing": "", - "textCase": "$letterCase.none", - "textDecoration": "{textDecoration.none}" - }, - "type": "typography" - } - }, - "overline": { - "overline1": { - "value": { - "fontFamily": "{fontFamily.main}", - "fontWeight": "$fontWeight.bold", - "lineHeight": "{lineHeight.lg}", - "fontSize": "{fontSize.sm}", - "letterSpacing": "$letterSpacing.normal", - "paragraphSpacing": "", - "textCase": "$letterCase.uppercase", - "textDecoration": "{textDecoration.none}" - }, - "type": "typography" - } - }, - "tag": { - "tag1": { - "value": { - "fontFamily": "{fontFamily.main}", - "fontWeight": "{fontWeight.bold}", - "lineHeight": "{lineHeight.md}", - "fontSize": "{fontSize.sm}", - "letterSpacing": "{letterSpacing.wide}", - "paragraphSpacing": "", - "textDecoration": "{textDecoration.none}", - "textCase": "{letterCase.none}" - }, - "type": "typography" - }, - "tag2": { - "value": { - "fontFamily": "{fontFamily.main}", - "fontWeight": "{fontWeight.bold}", - "lineHeight": "{lineHeight.lg}", - "fontSize": "{fontSize.xs}", - "letterSpacing": "{letterSpacing.wide}", - "paragraphSpacing": "", - "textDecoration": "{textDecoration.none}", - "textCase": "{letterCase.none}" - }, - "type": "typography" - } - } - } - }, - "$themes": [], - "$metadata": { - "tokenSetOrder": ["core", "pro/component", "pro/typography", "patient/component", "patient/typography"] - } -} diff --git a/apps/playground/.eslintignore b/apps/playground/.eslintignore new file mode 100644 index 00000000..9c628283 --- /dev/null +++ b/apps/playground/.eslintignore @@ -0,0 +1,3 @@ +node_modules +coverage +dist diff --git a/apps/playground/.eslintrc.js b/apps/playground/.eslintrc.js index 968ea85a..8c777ac8 100644 --- a/apps/playground/.eslintrc.js +++ b/apps/playground/.eslintrc.js @@ -1,4 +1,4 @@ module.exports = { root: true, - extends: '@design-sync/eslint-config', + extends: '@design-sync/eslint-config/solid', }; diff --git a/apps/playground/package.json b/apps/playground/package.json index 1a7d78a5..4a66d271 100644 --- a/apps/playground/package.json +++ b/apps/playground/package.json @@ -6,7 +6,7 @@ "dev": "vite", "lint": "eslint ./src --ext .ts,.tsx,.js,.jsx", "lint:fix": "pnpm run lint --fix", - "verify": "tsc --pretty", + "test:types": "tsc --noEmit --skipLibCheck", "precommit": "lint-staged" }, "license": "MIT", @@ -18,8 +18,8 @@ "@vanilla-extract/recipes": "^0.5.0", "@vanilla-extract/sprinkles": "^1.6.1", "@vanilla-extract/vite-plugin": "^3.9.0", - "eslint": "8.52.0", - "lint-staged": "^15.0.2", + "eslint": "8.53.0", + "lint-staged": "^15.1.0", "solid-devtools": "^0.28.1", "typescript": "^5.2.2", "vite": "^4.5.0", diff --git a/apps/plugin/.eslintignore b/apps/plugin/.eslintignore new file mode 100644 index 00000000..9c628283 --- /dev/null +++ b/apps/plugin/.eslintignore @@ -0,0 +1,3 @@ +node_modules +coverage +dist diff --git a/apps/plugin/.eslintrc.js b/apps/plugin/.eslintrc.js index 968ea85a..8c777ac8 100644 --- a/apps/plugin/.eslintrc.js +++ b/apps/plugin/.eslintrc.js @@ -1,4 +1,4 @@ module.exports = { root: true, - extends: '@design-sync/eslint-config', + extends: '@design-sync/eslint-config/solid', }; diff --git a/apps/plugin/package.json b/apps/plugin/package.json index 2f7941df..591409bd 100644 --- a/apps/plugin/package.json +++ b/apps/plugin/package.json @@ -13,7 +13,7 @@ "clean": "node ./bin/clean.mjs", "lint": "eslint ./src --ext .ts,.tsx,.js,.jsx", "lint:fix": "pnpm run lint --fix", - "verify": "tsc --pretty", + "test:types": "tsc --noEmit --skipLibCheck", "precommit": "lint-staged" }, "license": "MIT", @@ -29,8 +29,8 @@ "@vanilla-extract/vite-plugin": "^3.9.0", "concurrently": "^8.2.2", "esbuild": "^0.19.5", - "eslint": "8.52.0", - "lint-staged": "^15.0.2", + "eslint": "8.53.0", + "lint-staged": "^15.1.0", "typescript": "^5.2.2", "vite": "^4.5.0", "vite-plugin-mkcert": "1.16.0", diff --git a/package.json b/package.json index 67b678a0..8ba0ab4c 100644 --- a/package.json +++ b/package.json @@ -8,14 +8,13 @@ "apps/*" ], "scripts": { - "build": "turbo run build --parallel", + "build": "turbo run build", "test": "turbo test", "lint": "turbo lint", "lint:fix": "turbo lint", - "verify": "turbo verify", + "test:types": "turbo test:types", "precommit": "turbo precommit", - "postinstall": "husky install", - "format": "prettier --write \"**/*.{js,jsx,ts,tsx,json,css,scss,md}\"" + "postinstall": "husky install" }, "license": "MIT", "dependencies": { diff --git a/packages/design-tokens/.eslintignore b/packages/design-tokens/.eslintignore new file mode 100644 index 00000000..9c628283 --- /dev/null +++ b/packages/design-tokens/.eslintignore @@ -0,0 +1,3 @@ +node_modules +coverage +dist diff --git a/packages/design-tokens/.eslintrc.js b/packages/design-tokens/.eslintrc.js index 968ea85a..8c777ac8 100644 --- a/packages/design-tokens/.eslintrc.js +++ b/packages/design-tokens/.eslintrc.js @@ -1,4 +1,4 @@ module.exports = { root: true, - extends: '@design-sync/eslint-config', + extends: '@design-sync/eslint-config/solid', }; diff --git a/packages/design-tokens/package.json b/packages/design-tokens/package.json index a47a34ef..3c1cbd9e 100644 --- a/packages/design-tokens/package.json +++ b/packages/design-tokens/package.json @@ -6,7 +6,7 @@ "scripts": { "lint": "eslint ./src --ext .ts,.tsx,.js,.jsx", "lint:fix": "pnpm run lint --fix", - "verify": "tsc --pretty", + "test:types": "tsc --noEmit --skipLibCheck", "precommit": "lint-staged" }, "dependencies": { @@ -18,7 +18,7 @@ "@design-sync/eslint-config": "workspace:*", "@design-sync/tsconfig": "workspace:*", "eslint": "^8.53.0", - "lint-staged": "^15.0.2", + "lint-staged": "^15.1.0", "typescript": "^5.2.2" } } diff --git a/packages/eslint-config/.eslintignore b/packages/eslint-config/.eslintignore new file mode 100644 index 00000000..9c628283 --- /dev/null +++ b/packages/eslint-config/.eslintignore @@ -0,0 +1,3 @@ +node_modules +coverage +dist diff --git a/packages/eslint-config/base.js b/packages/eslint-config/base.js new file mode 100644 index 00000000..70d6d2c8 --- /dev/null +++ b/packages/eslint-config/base.js @@ -0,0 +1,21 @@ +/** + * + * @type {import('eslint').Linter.Config} + */ + +module.exports = { + parser: '@typescript-eslint/parser', + parserOptions: { + ecmaVersion: 'latest', + sourceType: 'module', + }, + env: { + es2021: true, + }, + plugins: ['simple-import-sort'], + extends: ['plugin:@typescript-eslint/recommended', 'plugin:prettier/recommended'], + rules: { + '@typescript-eslint/no-unused-vars': ['warn', { ignoreRestSiblings: true, argsIgnorePattern: '^_' }], // Allow unused variables starting with _ (e.g. _foo) + '@typescript-eslint/no-explicit-any': 'warn', + }, +}; diff --git a/packages/eslint-config/index.js b/packages/eslint-config/index.js deleted file mode 100644 index ed28c165..00000000 --- a/packages/eslint-config/index.js +++ /dev/null @@ -1,35 +0,0 @@ -module.exports = { - parser: '@typescript-eslint/parser', - parserOptions: { - ecmaVersion: 2018, - sourceType: 'module', - ecmaFeatures: { - jsx: true, - }, - }, - env: { - browser: true, - es2021: true, - }, - plugins: ['solid', 'simple-import-sort', 'jsx-a11y'], - extends: [ - 'plugin:@typescript-eslint/recommended', - 'plugin:import/errors', - 'plugin:import/warnings', - 'plugin:import/typescript', - 'plugin:prettier/recommended', - 'plugin:solid/typescript', - // 'plugin:jsx-a11y/recommended', - ], - settings: { - 'import/resolver': { - node: { - extensions: ['.ts', '.tsx', '.js', '.jsx'], - }, - }, - }, - rules: { - '@typescript-eslint/no-unused-vars': ['warn', { ignoreRestSiblings: true, argsIgnorePattern: '^_' }], // Allow unused variables starting with _ (e.g. _foo) - '@typescript-eslint/no-explicit-any': 'warn', - }, -}; diff --git a/packages/eslint-config/node.js b/packages/eslint-config/node.js new file mode 100644 index 00000000..ae13753e --- /dev/null +++ b/packages/eslint-config/node.js @@ -0,0 +1,8 @@ +/** + * + * @type {import('eslint').Linter.Config} + */ + +module.exports = { + extends: ['./base.js'], +}; diff --git a/packages/eslint-config/package.json b/packages/eslint-config/package.json index 34c2a49d..dad85f1f 100644 --- a/packages/eslint-config/package.json +++ b/packages/eslint-config/package.json @@ -2,20 +2,19 @@ "name": "@design-sync/eslint-config", "version": "0.0.1", "description": "Tokenize ESLint", - "main": "index.js", + "main": "base.js", "dependencies": { "@typescript-eslint/eslint-plugin": "^6.10.0", "@typescript-eslint/parser": "^6.10.0", - "eslint": "8.52.0", + "eslint": "8.53.0", "eslint-config-prettier": "^9.0.0", - "eslint-config-turbo": "^1.10.16", - "eslint-plugin-import": "^2.29.0", "eslint-plugin-jsx-a11y": "^6.8.0", "eslint-plugin-prettier": "^5.0.1", "eslint-plugin-simple-import-sort": "^10.0.0", "eslint-plugin-solid": "^0.13.0", - "lint-staged": "^15.0.2", + "lint-staged": "^15.1.0", "prettier": "^3.0.3", + "eslint-config-preact": "^1.3.0", "typescript": "^5.2.2" } } diff --git a/packages/eslint-config/preact.js b/packages/eslint-config/preact.js new file mode 100644 index 00000000..b264261a --- /dev/null +++ b/packages/eslint-config/preact.js @@ -0,0 +1,12 @@ +/** + * + * @type {import('eslint').Linter.Config} + */ + +module.exports = { + extends: ['./base.js', 'preact'], + env: { + browser: true, + }, + plugins: ['solid'], +}; diff --git a/packages/eslint-config/solid.js b/packages/eslint-config/solid.js new file mode 100644 index 00000000..151bc4cd --- /dev/null +++ b/packages/eslint-config/solid.js @@ -0,0 +1,12 @@ +/** + * + * @type {import('eslint').Linter.Config} + */ + +module.exports = { + extends: ['./base.js', 'plugin:solid/typescript'], + env: { + browser: true, + }, + plugins: ['solid'], +}; diff --git a/packages/icons/.eslintignore b/packages/icons/.eslintignore new file mode 100644 index 00000000..9c628283 --- /dev/null +++ b/packages/icons/.eslintignore @@ -0,0 +1,3 @@ +node_modules +coverage +dist diff --git a/packages/icons/.eslintrc.js b/packages/icons/.eslintrc.js index 968ea85a..8c777ac8 100644 --- a/packages/icons/.eslintrc.js +++ b/packages/icons/.eslintrc.js @@ -1,4 +1,4 @@ module.exports = { root: true, - extends: '@design-sync/eslint-config', + extends: '@design-sync/eslint-config/solid', }; diff --git a/packages/icons/package.json b/packages/icons/package.json index 78adc6c9..87875a2f 100644 --- a/packages/icons/package.json +++ b/packages/icons/package.json @@ -7,7 +7,7 @@ "scripts": { "lint": "eslint ./src --ext .ts,.tsx,.js,.jsx", "lint:fix": "pnpm lint --fix", - "verify": "tsc --pretty", + "test:types": "tsc --noEmit --skipLibCheck", "build:icons": "ts-node generate/main.ts" }, "devDependencies": { @@ -16,7 +16,7 @@ "@types/node": "^20.9.0", "cheerio": "1.0.0-rc.12", "eslint": "^8.53.0", - "lint-staged": "^15.0.2", + "lint-staged": "^15.1.0", "prettier": "^3.0.3", "solid-js": "^1.8.5", "svgo": "^3.0.3", diff --git a/packages/rpc/.eslintignore b/packages/rpc/.eslintignore new file mode 100644 index 00000000..9c628283 --- /dev/null +++ b/packages/rpc/.eslintignore @@ -0,0 +1,3 @@ +node_modules +coverage +dist diff --git a/packages/rpc/.eslintrc.js b/packages/rpc/.eslintrc.js index 968ea85a..ee665c8a 100644 --- a/packages/rpc/.eslintrc.js +++ b/packages/rpc/.eslintrc.js @@ -1,4 +1,4 @@ module.exports = { root: true, - extends: '@design-sync/eslint-config', + extends: '@design-sync/eslint-config/node', }; diff --git a/packages/rpc/package.json b/packages/rpc/package.json index 2878af4f..87848418 100644 --- a/packages/rpc/package.json +++ b/packages/rpc/package.json @@ -6,7 +6,7 @@ "scripts": { "lint": "eslint ./src --ext .ts,.tsx,.js,.jsx", "lint:fix": "pnpm run lint --fix", - "verify": "tsc --pretty", + "test:types": "tsc --noEmit --skipLibCheck", "precommit": "lint-staged" }, "dependencies": { @@ -17,7 +17,7 @@ "@design-sync/eslint-config": "workspace:*", "@design-sync/tsconfig": "workspace:*", "eslint": "^8.53.0", - "lint-staged": "^15.0.2", + "lint-staged": "^15.1.0", "typescript": "^5.2.2" } } diff --git a/packages/storage/.eslintignore b/packages/storage/.eslintignore new file mode 100644 index 00000000..9c628283 --- /dev/null +++ b/packages/storage/.eslintignore @@ -0,0 +1,3 @@ +node_modules +coverage +dist diff --git a/packages/storage/.eslintrc.js b/packages/storage/.eslintrc.js index 968ea85a..ee665c8a 100644 --- a/packages/storage/.eslintrc.js +++ b/packages/storage/.eslintrc.js @@ -1,4 +1,4 @@ module.exports = { root: true, - extends: '@design-sync/eslint-config', + extends: '@design-sync/eslint-config/node', }; diff --git a/packages/storage/package.json b/packages/storage/package.json index f7c0d9e5..00eabe41 100644 --- a/packages/storage/package.json +++ b/packages/storage/package.json @@ -6,7 +6,7 @@ "scripts": { "lint": "eslint ./src --ext .ts,.tsx,.js,.jsx", "lint:fix": "pnpm run lint --fix", - "verify": "tsc --pretty", + "test:types": "tsc --noEmit --skipLibCheck", "precommit": "lint-staged" }, "devDependencies": { @@ -14,7 +14,7 @@ "@design-sync/tsconfig": "workspace:*", "@figma/plugin-typings": "^1.80.0", "eslint": "^8.53.0", - "lint-staged": "^15.0.2", + "lint-staged": "^15.1.0", "typescript": "^5.2.2" } } diff --git a/packages/tsconfig/.eslintignore b/packages/tsconfig/.eslintignore new file mode 100644 index 00000000..9c628283 --- /dev/null +++ b/packages/tsconfig/.eslintignore @@ -0,0 +1,3 @@ +node_modules +coverage +dist diff --git a/packages/uikit/.eslintignore b/packages/uikit/.eslintignore new file mode 100644 index 00000000..9c628283 --- /dev/null +++ b/packages/uikit/.eslintignore @@ -0,0 +1,3 @@ +node_modules +coverage +dist diff --git a/packages/uikit/.eslintrc.js b/packages/uikit/.eslintrc.js index 968ea85a..8c777ac8 100644 --- a/packages/uikit/.eslintrc.js +++ b/packages/uikit/.eslintrc.js @@ -1,4 +1,4 @@ module.exports = { root: true, - extends: '@design-sync/eslint-config', + extends: '@design-sync/eslint-config/solid', }; diff --git a/packages/uikit/package.json b/packages/uikit/package.json index 88b50490..7566fe22 100644 --- a/packages/uikit/package.json +++ b/packages/uikit/package.json @@ -6,7 +6,7 @@ "scripts": { "lint": "eslint ./src --ext .ts,.tsx,.js,.jsx", "lint:fix": "pnpm run lint --fix", - "verify": "tsc --pretty", + "test:types": "tsc --noEmit --skipLibCheck", "precommit": "lint-staged" }, "dependencies": { @@ -25,7 +25,7 @@ "@design-sync/eslint-config": "workspace:*", "@design-sync/tsconfig": "workspace:*", "eslint": "^8.53.0", - "lint-staged": "^15.0.2", + "lint-staged": "^15.1.0", "solid-js": "^1.8.5", "typescript": "^5.2.2" } diff --git a/packages/utils/.eslintignore b/packages/utils/.eslintignore new file mode 100644 index 00000000..9c628283 --- /dev/null +++ b/packages/utils/.eslintignore @@ -0,0 +1,3 @@ +node_modules +coverage +dist diff --git a/packages/utils/.eslintrc.cjs b/packages/utils/.eslintrc.cjs new file mode 100644 index 00000000..ee665c8a --- /dev/null +++ b/packages/utils/.eslintrc.cjs @@ -0,0 +1,4 @@ +module.exports = { + root: true, + extends: '@design-sync/eslint-config/node', +}; diff --git a/packages/utils/.eslintrc.js b/packages/utils/.eslintrc.js deleted file mode 100644 index 968ea85a..00000000 --- a/packages/utils/.eslintrc.js +++ /dev/null @@ -1,4 +0,0 @@ -module.exports = { - root: true, - extends: '@design-sync/eslint-config', -}; diff --git a/packages/utils/CHANGELOG.md b/packages/utils/CHANGELOG.md index 8792b69a..e69de29b 100644 --- a/packages/utils/CHANGELOG.md +++ b/packages/utils/CHANGELOG.md @@ -1,5 +0,0 @@ -# Changelog - - -## v0.0.2 - diff --git a/packages/utils/README.md b/packages/utils/README.md new file mode 100644 index 00000000..b9d53151 --- /dev/null +++ b/packages/utils/README.md @@ -0,0 +1,61 @@ +# @design-sync/utils + +[![npm version][npm-version-src]][npm-version-href] +[![npm downloads][npm-downloads-src]][npm-downloads-href] + + +General JS/TS utils used in the design sync project + +## Usage + +Install package: + +```sh +# npm +npm install @design-sync/utils + +# yarn +yarn add @design-sync/utils + +# pnpm +pnpm install @design-sync/utils + +# bun +bun install @design-sync/utils +``` + +Import: + +```js +// ESM +import {} from "@design-sync/utils"; + +// CommonJS +const {} = require("@design-sync/utils"); +``` + +## Development + +- Clone this repository +- Install latest LTS version of [Node.js](https://nodejs.org/en/) +- Enable [Corepack](https://github.com/nodejs/corepack) using `corepack enable` +- Install dependencies using `pnpm install` +- Run interactive tests using `pnpm dev` + +## License + +Made with 💛 + +Published under [MIT License](./LICENSE). + + + +[npm-version-src]: https://img.shields.io/npm/v/@design-sync/utils?style=flat&colorA=18181B&colorB=F0DB4F +[npm-version-href]: https://npmjs.com/package/@design-sync/utils +[npm-downloads-src]: https://img.shields.io/npm/dm/@design-sync/utils?style=flat&colorA=18181B&colorB=F0DB4F +[npm-downloads-href]: https://npmjs.com/package/@design-sync/utils + diff --git a/packages/utils/build.config.ts b/packages/utils/build.config.ts new file mode 100644 index 00000000..83bda2cc --- /dev/null +++ b/packages/utils/build.config.ts @@ -0,0 +1,10 @@ +import { defineBuildConfig } from 'unbuild'; + +export default defineBuildConfig({ + entries: ['src/index.ts'], + rollup: { + emitCJS: true, + }, + clean: true, + declaration: true, +}); diff --git a/packages/utils/package.json b/packages/utils/package.json index 9184ebb4..83f63781 100644 --- a/packages/utils/package.json +++ b/packages/utils/package.json @@ -1,6 +1,6 @@ { "name": "@design-sync/utils", - "version": "0.0.2", + "version": "0.0.0", "description": "Tokenize utils", "repository": "salamaashoush/tokenize", "license": "MIT", @@ -63,4 +63,4 @@ "module": "./dist/index.mjs", "types": "./dist/index.d.ts" } -} \ No newline at end of file +} diff --git a/packages/utils/test/test.test.ts b/packages/utils/test/test.test.ts new file mode 100644 index 00000000..a4211636 --- /dev/null +++ b/packages/utils/test/test.test.ts @@ -0,0 +1,8 @@ +import { describe, expect, it } from 'vitest'; +import {} from '../src'; + +describe('test', () => { + it.todo('pass', () => { + expect(true).toBe(true); + }); +}); diff --git a/packages/w3c-dtfm/.eslintignore b/packages/w3c-dtfm/.eslintignore new file mode 100644 index 00000000..9c628283 --- /dev/null +++ b/packages/w3c-dtfm/.eslintignore @@ -0,0 +1,3 @@ +node_modules +coverage +dist diff --git a/packages/w3c-dtfm/.eslintrc.cjs b/packages/w3c-dtfm/.eslintrc.cjs new file mode 100644 index 00000000..ee665c8a --- /dev/null +++ b/packages/w3c-dtfm/.eslintrc.cjs @@ -0,0 +1,4 @@ +module.exports = { + root: true, + extends: '@design-sync/eslint-config/node', +}; diff --git a/packages/w3c-dtfm/.eslintrc.js b/packages/w3c-dtfm/.eslintrc.js deleted file mode 100644 index 968ea85a..00000000 --- a/packages/w3c-dtfm/.eslintrc.js +++ /dev/null @@ -1,4 +0,0 @@ -module.exports = { - root: true, - extends: '@design-sync/eslint-config', -}; diff --git a/packages/w3c-dtfm/.npmignore b/packages/w3c-dtfm/.npmignore deleted file mode 100644 index 42401056..00000000 --- a/packages/w3c-dtfm/.npmignore +++ /dev/null @@ -1 +0,0 @@ -src/index.ts diff --git a/packages/w3c-dtfm/README.md b/packages/w3c-dtfm/README.md index bae1fb69..d4a99a2a 100644 --- a/packages/w3c-dtfm/README.md +++ b/packages/w3c-dtfm/README.md @@ -2,8 +2,8 @@ [![npm version][npm-version-src]][npm-version-href] [![npm downloads][npm-downloads-src]][npm-downloads-href] -[![bundle][bundle-src]][bundle-href] -[![Codecov][codecov-src]][codecov-href] + Design tokens module format (DTFM) utils and types @@ -13,26 +13,26 @@ Install package: ```sh # npm -npm install packageName +npm install @design-sync/w3c-dtfm # yarn -yarn add packageName +yarn add @design-sync/w3c-dtfm # pnpm -pnpm install packageName +pnpm install @design-sync/w3c-dtfm # bun -bun install packageName +bun install @design-sync/w3c-dtfm ``` Import: ```js // ESM -import {} from "packageName"; +import {} from "@design-sync/w3c-dtfm"; // CommonJS -const {} = require("packageName"); +const {} = require("@design-sync/w3c-dtfm"); ``` ## Development @@ -51,11 +51,11 @@ Published under [MIT License](./LICENSE). -[npm-version-src]: https://img.shields.io/npm/v/packageName?style=flat&colorA=18181B&colorB=F0DB4F +[npm-version-src]: https://img.shields.io/npm/v/@design-sync/w3c-dtfm?style=flat&colorA=18181B&colorB=F0DB4F [npm-version-href]: https://npmjs.com/package/@design-sync/w3c-dtfm [npm-downloads-src]: https://img.shields.io/npm/dm/@design-sync/w3c-dtfm?style=flat&colorA=18181B&colorB=F0DB4F [npm-downloads-href]: https://npmjs.com/package/@design-sync/w3c-dtfm -[codecov-src]: https://img.shields.io/codecov/c/gh/unjs/@design-sync/w3c-dtfm/main?style=flat&colorA=18181B&colorB=F0DB4F + diff --git a/packages/w3c-dtfm/design-sync-w3c-dtfm-0.0.1.tgz b/packages/w3c-dtfm/design-sync-w3c-dtfm-0.0.1.tgz deleted file mode 100644 index c98abbadc0d7dac821b0160e6fe3ecaa7f67dedc..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 19995 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 z z#wL`mvMYo5(!SU{Xota|+-Et$QYQ_@Sb$naK@=Gcnr}nla6hkT<3gu>P*0k1`&_@a*Vv|}e=lsr{T>7c zgUsDU&P87sB@x7E_q^AfDdcfS_szc9MjU27a;kEcApG?3Awct}XdljmnI#s?dkYor zLquBVAu~7Np`b5w)H%{zWz=k2LC_rWN8rsm9C~l>3jqWU6+#>!H;M4bHx1-~H8Pdf zLu6_W1x$C6U^U=%GIcr|%!FR=6WR?5-t21xvyRRAJfINANjRFe8Dt}QgsrN6KBO(c zOrpnbbEu{!*nqRMu^!#f0LD>5O9iJXp_r&DA~ZsS!X#u*o|yfJp?M_qLpXyrBoGTI zzD{45LETFDK}tu4f?3b-KP(;Wr_vr%4}JCNbV0!lb0pF+!ay!lF`;W=G3gjsfaL>6 zz?NnDEB54j_(NcKaw8xUaJqBnPCjr#gIdv}0|6&@56CG0d6^#5DbG8a#H!s-BQBbv zw-o)LDXbQ6gc?3tXPtR@&5&R`xQ18SOl7iba`b5Z(TbeVUAn^0{XBVMMyISNnqjyrCO9^BsHwhFeIB49x35bUZC8a|LvCtQ zsVZTd4YH!HtRNv~)%=qiM;De?jAceq!?d2X-(X!q2PSmxlOE%J3bjH{*v*`zr4;ct zAY6AySgfsLd&#S*g%S4!7V|g3!sYId(=ZFq*0k6Q5=|UfGwMpe&&PZ&ko)T9XKGmx z^XU13tgO9+?MInPxts_)S^NR(zCGzDR!HkybIFBlx5xl31aYgP`-X;ow!mPhu$Fm! zudMawG#&BucUs_I6{ZZE6Gk9oSf+A#c;2l~T?$g=$+hv*;svnVGZI&>SiIz2e|jeA z+lR!FgCz3fXDPA3k)i_+y@k6Fqp|j$B_ikQ`&5wOLk)op8RN35NE@3WJl@)2kFc`E zcDJPyzbKGC?><_Y%T4J}7w`GnQTY71;|#d(f!isk?28JCqDNK?3u#9q6stmx@MBd@ zWwZ_Qb$@6a+w}-OjPyi6r-QxN{YBya2P;N2pSNlHl0?(C?@cSYN5H|FW#bH$O(Ul*tNCkmX6Z4GgteiS@%BU zK6qIU``*GqvZQffU{9TNCn9|4Q|!m+;#jy|wXiflt+B*gc^}@uczKm$q(3Y3Sf=4M+~Ohfe&<4YF~QhWQkZ0SPffRNl7mcBoO_UcmQ`l2x@nW3fm7k85CUH||9 diff --git a/packages/w3c-dtfm/package.json b/packages/w3c-dtfm/package.json index 25f5cacb..09895ff6 100644 --- a/packages/w3c-dtfm/package.json +++ b/packages/w3c-dtfm/package.json @@ -1,6 +1,6 @@ { "name": "@design-sync/w3c-dtfm", - "version": "0.0.1", + "version": "0.0.0", "description": "Design tokens module format (DTFM) utils and types", "repository": "salamaashoush/tokenize", "license": "MIT", @@ -14,7 +14,7 @@ "scripts": { "build": "unbuild", "dev": "npm run build -- --watch", - "play": "tsx playground/index.ts", + "play": "jiti playground", "lint": "eslint --cache --ext .ts,.js,.mjs,.cjs . && prettier -c src test", "lint:fix": "eslint --cache --ext .ts,.js,.mjs,.cjs . --fix && prettier -c src test -w", "prepack": "pnpm run build", @@ -35,9 +35,8 @@ "@vitest/coverage-v8": "^0.34.6", "changelogen": "^0.5.5", "eslint": "^8.53.0", - "tsx": "^4.0.0", "jiti": "^1.21.0", - "lint-staged": "^15.0.2", + "lint-staged": "^15.1.0", "prettier": "^3.0.3", "typescript": "^5.2.2", "unbuild": "^2.0.0", @@ -61,6 +60,5 @@ "main": "./dist/index.cjs", "module": "./dist/index.mjs", "types": "./dist/index.d.ts" - }, - "packageManager": "pnpm@8.10.2" + } } diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 223b95dd..a9bfbebc 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -32,9 +32,9 @@ importers: '@design-sync/w3c-dtfm': specifier: workspace:* version: link:../../packages/w3c-dtfm - ajv: - specifier: ^8.12.0 - version: 8.12.0 + c12: + specifier: ^1.5.1 + version: 1.5.1 citty: specifier: ^0.1.4 version: 0.1.4 @@ -44,9 +44,6 @@ importers: giget: specifier: ^1.1.3 version: 1.1.3 - unconfig: - specifier: ^0.3.11 - version: 0.3.11 devDependencies: '@design-sync/eslint-config': specifier: workspace:* @@ -58,8 +55,14 @@ importers: specifier: ^20.9.0 version: 20.9.0 '@vanilla-extract/css': - specifier: ^1.13.0 - version: 1.13.0 + specifier: ^1.14.0 + version: 1.14.0 + '@vitest/coverage-v8': + specifier: ^0.34.6 + version: 0.34.6(vitest@0.34.6) + changelogen: + specifier: ^0.5.5 + version: 0.5.5 eslint: specifier: ^8.53.0 version: 8.53.0 @@ -67,14 +70,17 @@ importers: specifier: ^3.0.3 version: 3.0.3 tsx: - specifier: ^4.0.0 - version: 4.0.0 + specifier: ^4.1.1 + version: 4.1.1 typescript: specifier: ^5.2.2 version: 5.2.2 unbuild: specifier: ^2.0.0 version: 2.0.0(typescript@5.2.2) + vitest: + specifier: ^0.34.6 + version: 0.34.6 apps/new-plugin: dependencies: @@ -161,11 +167,11 @@ importers: specifier: ^0.18.17 version: 0.18.17 eslint: - specifier: 8.52.0 - version: 8.52.0 + specifier: 8.53.0 + version: 8.53.0 lint-staged: - specifier: ^15.0.2 - version: 15.0.2 + specifier: ^15.1.0 + version: 15.1.0 typescript: specifier: ^5.2.2 version: 5.2.2 @@ -207,11 +213,11 @@ importers: specifier: ^3.9.0 version: 3.9.0(vite@4.5.0) eslint: - specifier: 8.52.0 - version: 8.52.0 + specifier: 8.53.0 + version: 8.53.0 lint-staged: - specifier: ^15.0.2 - version: 15.0.2 + specifier: ^15.1.0 + version: 15.1.0 solid-devtools: specifier: ^0.28.1 version: 0.28.1(solid-js@1.8.5)(vite@4.5.0) @@ -295,11 +301,11 @@ importers: specifier: ^0.18.17 version: 0.18.17 eslint: - specifier: 8.52.0 - version: 8.52.0 + specifier: 8.53.0 + version: 8.53.0 lint-staged: - specifier: ^15.0.2 - version: 15.0.2 + specifier: ^15.1.0 + version: 15.1.0 typescript: specifier: ^5.2.2 version: 5.2.2 @@ -338,8 +344,8 @@ importers: specifier: ^8.53.0 version: 8.53.0 lint-staged: - specifier: ^15.0.2 - version: 15.0.2 + specifier: ^15.1.0 + version: 15.1.0 typescript: specifier: ^5.2.2 version: 5.2.2 @@ -348,37 +354,34 @@ importers: dependencies: '@typescript-eslint/eslint-plugin': specifier: ^6.10.0 - version: 6.10.0(@typescript-eslint/parser@6.10.0)(eslint@8.52.0)(typescript@5.2.2) + version: 6.10.0(@typescript-eslint/parser@6.10.0)(eslint@8.53.0)(typescript@5.2.2) '@typescript-eslint/parser': specifier: ^6.10.0 - version: 6.10.0(eslint@8.52.0)(typescript@5.2.2) + version: 6.10.0(eslint@8.53.0)(typescript@5.2.2) eslint: - specifier: 8.52.0 - version: 8.52.0 + specifier: 8.53.0 + version: 8.53.0 + eslint-config-preact: + specifier: ^1.3.0 + version: 1.3.0(@typescript-eslint/eslint-plugin@6.10.0)(eslint@8.53.0)(typescript@5.2.2) eslint-config-prettier: specifier: ^9.0.0 - version: 9.0.0(eslint@8.52.0) - eslint-config-turbo: - specifier: ^1.10.16 - version: 1.10.16(eslint@8.52.0) - eslint-plugin-import: - specifier: ^2.29.0 - version: 2.29.0(@typescript-eslint/parser@6.10.0)(eslint@8.52.0) + version: 9.0.0(eslint@8.53.0) eslint-plugin-jsx-a11y: specifier: ^6.8.0 - version: 6.8.0(eslint@8.52.0) + version: 6.8.0(eslint@8.53.0) eslint-plugin-prettier: specifier: ^5.0.1 - version: 5.0.1(eslint-config-prettier@9.0.0)(eslint@8.52.0)(prettier@3.0.3) + version: 5.0.1(eslint-config-prettier@9.0.0)(eslint@8.53.0)(prettier@3.0.3) eslint-plugin-simple-import-sort: specifier: ^10.0.0 - version: 10.0.0(eslint@8.52.0) + version: 10.0.0(eslint@8.53.0) eslint-plugin-solid: specifier: ^0.13.0 - version: 0.13.0(eslint@8.52.0)(typescript@5.2.2) + version: 0.13.0(eslint@8.53.0)(typescript@5.2.2) lint-staged: - specifier: ^15.0.2 - version: 15.0.2 + specifier: ^15.1.0 + version: 15.1.0 prettier: specifier: ^3.0.3 version: 3.0.3 @@ -404,8 +407,8 @@ importers: specifier: ^8.53.0 version: 8.53.0 lint-staged: - specifier: ^15.0.2 - version: 15.0.2 + specifier: ^15.1.0 + version: 15.1.0 prettier: specifier: ^3.0.3 version: 3.0.3 @@ -441,8 +444,8 @@ importers: specifier: ^8.53.0 version: 8.53.0 lint-staged: - specifier: ^15.0.2 - version: 15.0.2 + specifier: ^15.1.0 + version: 15.1.0 typescript: specifier: ^5.2.2 version: 5.2.2 @@ -462,8 +465,8 @@ importers: specifier: ^8.53.0 version: 8.53.0 lint-staged: - specifier: ^15.0.2 - version: 15.0.2 + specifier: ^15.1.0 + version: 15.1.0 typescript: specifier: ^5.2.2 version: 5.2.2 @@ -504,8 +507,8 @@ importers: specifier: ^8.53.0 version: 8.53.0 lint-staged: - specifier: ^15.0.2 - version: 15.0.2 + specifier: ^15.1.0 + version: 15.1.0 solid-js: specifier: ^1.8.5 version: 1.8.5 @@ -515,6 +518,9 @@ importers: packages/utils: dependencies: + deepmerge: + specifier: 4.3.1 + version: 4.3.1 fast-memoize: specifier: ^2.5.2 version: 2.5.2 @@ -537,15 +543,33 @@ importers: '@design-sync/tsconfig': specifier: workspace:* version: link:../tsconfig + '@types/node': + specifier: ^20.9.0 + version: 20.9.0 + '@vitest/coverage-v8': + specifier: ^0.34.6 + version: 0.34.6(vitest@0.34.6) + changelogen: + specifier: ^0.5.5 + version: 0.5.5 eslint: specifier: ^8.53.0 version: 8.53.0 + jiti: + specifier: ^1.21.0 + version: 1.21.0 lint-staged: - specifier: ^15.0.2 - version: 15.0.2 + specifier: ^15.1.0 + version: 15.1.0 typescript: specifier: ^5.2.2 version: 5.2.2 + unbuild: + specifier: ^2.0.0 + version: 2.0.0(typescript@5.2.2) + vitest: + specifier: ^0.34.6 + version: 0.34.6 packages/w3c-dtfm: dependencies: @@ -581,14 +605,11 @@ importers: specifier: ^1.21.0 version: 1.21.0 lint-staged: - specifier: ^15.0.2 - version: 15.0.2 + specifier: ^15.1.0 + version: 15.1.0 prettier: specifier: ^3.0.3 version: 3.0.3 - tsx: - specifier: ^4.0.0 - version: 4.0.0 typescript: specifier: ^5.2.2 version: 5.2.2 @@ -611,11 +632,6 @@ packages: dependencies: '@jridgewell/gen-mapping': 0.3.3 '@jridgewell/trace-mapping': 0.3.18 - dev: true - - /@antfu/utils@0.7.6: - resolution: {integrity: sha512-pvFiLP2BeOKA/ZOS6jxx4XhKzdVLHDhGlFEaZ2flWWYf2xOqVniqpk38I04DFRyz+L0ASggl7SkItTc+ZLju4w==} - dev: false /@babel/code-frame@7.22.13: resolution: {integrity: sha512-XktuhWlJ5g+3TJXc5upd9Ks1HutSArik6jf2eAjYFyIOf4ej3RN+184cZbzDvbPnuTJIUhPKKJE3cIsYTiAT3w==} @@ -623,7 +639,6 @@ packages: dependencies: '@babel/highlight': 7.22.20 chalk: 2.4.2 - dev: true /@babel/code-frame@7.22.5: resolution: {integrity: sha512-Xmwn266vad+6DAqEB2A6V/CcZVp62BbwVmcOJc2RPuwih1kw02TjQvWVWlcKGbBPd+8/0V5DEkOcizRGYsspYQ==} @@ -635,7 +650,6 @@ packages: /@babel/compat-data@7.22.9: resolution: {integrity: sha512-5UamI7xkUcJ3i9qVDS+KFDEK8/7oJ55/sJMB1Ge7IEapr7KfdfV/HErR+koZwOfd+SgtFKOKRhRakdg++DcJpQ==} engines: {node: '>=6.9.0'} - dev: true /@babel/core@7.22.9: resolution: {integrity: sha512-G2EgeufBcYw27U4hhoIwFcgc1XU7TlXJ3mv04oOv1WCuo900U/anZSPzEqNjwdjgffkk2Gs0AN0dW1CKVLcG7w==} @@ -681,7 +695,20 @@ packages: semver: 6.3.1 transitivePeerDependencies: - supports-color - dev: true + + /@babel/eslint-parser@7.23.3(@babel/core@7.23.2)(eslint@8.53.0): + resolution: {integrity: sha512-9bTuNlyx7oSstodm1cR1bECj4fkiknsDa1YniISkJemMY3DGhJNYBECbe6QD/q54mp2J8VO66jW3/7uP//iFCw==} + engines: {node: ^10.13.0 || ^12.13.0 || >=14.0.0} + peerDependencies: + '@babel/core': ^7.11.0 + eslint: ^7.5.0 || ^8.0.0 + dependencies: + '@babel/core': 7.23.2 + '@nicolo-ribaudo/eslint-scope-5-internals': 5.1.1-v1 + eslint: 8.53.0 + eslint-visitor-keys: 2.1.0 + semver: 6.3.1 + dev: false /@babel/generator@7.22.9: resolution: {integrity: sha512-KtLMbmicyuK2Ak/FTCJVbDnkN1SlT8/kceFTiuDiiRUUSMnHMidxSCdG4ndkTOHHpoomWe/4xkvHkEOncwjYIw==} @@ -701,7 +728,6 @@ packages: '@jridgewell/gen-mapping': 0.3.3 '@jridgewell/trace-mapping': 0.3.18 jsesc: 2.5.2 - dev: true /@babel/helper-annotate-as-pure@7.22.5: resolution: {integrity: sha512-LvBTxu8bQSQkcyKOU+a1btnNFQ1dMAd0R6PyW3arXes06F6QLWLIrd681bxRPIXlrMGR3XYnW9JyML7dP3qgxg==} @@ -719,7 +745,6 @@ packages: browserslist: 4.21.9 lru-cache: 5.1.1 semver: 6.3.1 - dev: true /@babel/helper-compilation-targets@7.22.9(@babel/core@7.22.9): resolution: {integrity: sha512-7qYrNM6HjpnPHJbopxmb8hSPoZ0gsX8IvUS32JGVoy+pU9e5N0nLr1VjJoR6kA4d9dmGLxNYOjeB8sUDal2WMw==} @@ -756,7 +781,6 @@ packages: /@babel/helper-environment-visitor@7.22.20: resolution: {integrity: sha512-zfedSIzFhat/gFhWfHtgWvlec0nqB9YEIVrpuwjruLlXfUSnA8cJB0miHKwqDnQ7d32aKo2xt88/xZptwxbfhA==} engines: {node: '>=6.9.0'} - dev: true /@babel/helper-environment-visitor@7.22.5: resolution: {integrity: sha512-XGmhECfVA/5sAt+H+xpSg0mfrHq6FzNr9Oxh7PSEBBRUb/mL7Kz3NICXb194rCqAEdxkhPT1a88teizAFyvk8Q==} @@ -777,14 +801,12 @@ packages: dependencies: '@babel/template': 7.22.15 '@babel/types': 7.23.0 - dev: true /@babel/helper-hoist-variables@7.22.5: resolution: {integrity: sha512-wGjk9QZVzvknA6yKIUURb8zY3grXCcOZt+/7Wcy8O2uctxhplmUPkOdlgoNhmdVee2c92JXbf1xpMtVNbfoxRw==} engines: {node: '>=6.9.0'} dependencies: '@babel/types': 7.23.0 - dev: true /@babel/helper-member-expression-to-functions@7.23.0: resolution: {integrity: sha512-6gfrPwh7OuT6gZyJZvd6WbTfrqAo7vm4xCzAXOusKqq/vWdKXphTpj5klHKNmRUU6/QRGlBsyU9mAIPaWHlqJA==} @@ -805,7 +827,6 @@ packages: engines: {node: '>=6.9.0'} dependencies: '@babel/types': 7.23.0 - dev: true /@babel/helper-module-imports@7.22.5: resolution: {integrity: sha512-8Dl6+HD/cKifutF5qGd/8ZJi84QeAKh+CEe1sBzz8UayBBGg1dAIJrdHOcOM5b2MpzWL2yuotJTtGjETq0qjXg==} @@ -840,7 +861,6 @@ packages: '@babel/helper-simple-access': 7.22.5 '@babel/helper-split-export-declaration': 7.22.6 '@babel/helper-validator-identifier': 7.22.20 - dev: true /@babel/helper-optimise-call-expression@7.22.5: resolution: {integrity: sha512-HBwaojN0xFRx4yIvpwGqxiV2tUfl7401jlok564NgB9EHS1y6QT17FmKWm4ztqjeVdXLuC4fSvHc5ePpQjoTbw==} @@ -852,7 +872,6 @@ packages: /@babel/helper-plugin-utils@7.22.5: resolution: {integrity: sha512-uLls06UVKgFG9QD4OeFYLEGteMIAa5kpTPcFL28yuCIIzsf6ZyKZMllKVOCZFhiZ5ptnwX4mtKdWCBE/uT4amg==} engines: {node: '>=6.9.0'} - dev: true /@babel/helper-replace-supers@7.22.9(@babel/core@7.23.2): resolution: {integrity: sha512-LJIKvvpgPOPUThdYqcX6IXRuIcTkcAub0IaDRGCZH0p5GPUp7PhRU9QVgFcDDd51BaPkk77ZjqFwh6DZTAEmGg==} @@ -871,7 +890,6 @@ packages: engines: {node: '>=6.9.0'} dependencies: '@babel/types': 7.23.0 - dev: true /@babel/helper-skip-transparent-expression-wrappers@7.22.5: resolution: {integrity: sha512-tK14r66JZKiC43p8Ki33yLBVJKlQDFoA8GYN67lWCDCqoL6EMMSuM9b+Iff2jHaM/RRFYl7K+iiru7hbRqNx8Q==} @@ -885,17 +903,14 @@ packages: engines: {node: '>=6.9.0'} dependencies: '@babel/types': 7.23.0 - dev: true /@babel/helper-string-parser@7.22.5: resolution: {integrity: sha512-mM4COjgZox8U+JcXQwPijIZLElkgEpO5rsERVDJTc2qfCDfERyob6k5WegS14SX18IIjv+XD+GrqNumY5JRCDw==} engines: {node: '>=6.9.0'} - dev: true /@babel/helper-validator-identifier@7.22.20: resolution: {integrity: sha512-Y4OZ+ytlatR8AI+8KZfKuL5urKp7qey08ha31L8b3BwewJAoJamTzyvxPR/5D+KkdJCGPq/+8TukHBlY10FX9A==} engines: {node: '>=6.9.0'} - dev: true /@babel/helper-validator-identifier@7.22.5: resolution: {integrity: sha512-aJXu+6lErq8ltp+JhkJUfk1MTGyuA4v7f3pA+BJ5HLfNC6nAQ0Cpi9uOquUj8Hehg0aUiHzWQbOVJGao6ztBAQ==} @@ -905,7 +920,6 @@ packages: /@babel/helper-validator-option@7.22.15: resolution: {integrity: sha512-bMn7RmyFjY/mdECUbgn9eoSY4vqvacUnS9i9vGAGttgFWesO6B4CYWA7XlpbWgBt71iv/hfbPlynohStqnu5hA==} engines: {node: '>=6.9.0'} - dev: true /@babel/helper-validator-option@7.22.5: resolution: {integrity: sha512-R3oB6xlIVKUnxNUxbmgq7pKjxpru24zlimpE8WK47fACIlM0II/Hm1RS8IaOI7NgCr6LNS+jl5l75m20npAziw==} @@ -932,7 +946,6 @@ packages: '@babel/types': 7.23.0 transitivePeerDependencies: - supports-color - dev: true /@babel/highlight@7.22.20: resolution: {integrity: sha512-dkdMCN3py0+ksCgYmGG8jKeGA/8Tk+gJwSYYlFGxG5lmhfKNoAy004YpLxpS1W2J8m/EK2Ew+yOs9pVRwO89mg==} @@ -941,7 +954,6 @@ packages: '@babel/helper-validator-identifier': 7.22.20 chalk: 2.4.2 js-tokens: 4.0.0 - dev: true /@babel/highlight@7.22.5: resolution: {integrity: sha512-BSKlD1hgnedS5XRnGOljZawtag7H1yPfQp0tdNJCHoH6AZ+Pcm9VvkrK59/Yy593Ypg0zMxH2BxD1VPYUQ7UIw==} @@ -966,7 +978,25 @@ packages: hasBin: true dependencies: '@babel/types': 7.23.0 - dev: true + + /@babel/plugin-syntax-class-properties@7.12.13(@babel/core@7.23.2): + resolution: {integrity: sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA==} + peerDependencies: + '@babel/core': ^7.0.0-0 + dependencies: + '@babel/core': 7.23.2 + '@babel/helper-plugin-utils': 7.22.5 + dev: false + + /@babel/plugin-syntax-decorators@7.23.3(@babel/core@7.23.2): + resolution: {integrity: sha512-cf7Niq4/+/juY67E0PbgH0TDhLQ5J7zS8C/Q5FFx+DWyrRa9sUQdTXkjqKu8zGvuqr7vw1muKiukseihU+PJDA==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + dependencies: + '@babel/core': 7.23.2 + '@babel/helper-plugin-utils': 7.22.5 + dev: false /@babel/plugin-syntax-jsx@7.22.5(@babel/core@7.23.2): resolution: {integrity: sha512-gvyP4hZrgrs/wWMaocvxZ44Hw0b3W8Pe+cMxc8V1ULQ07oh8VNbIRaoD1LRZVTvD+0nieDKjfgKg89sD7rrKrg==} @@ -976,7 +1006,6 @@ packages: dependencies: '@babel/core': 7.23.2 '@babel/helper-plugin-utils': 7.22.5 - dev: true /@babel/plugin-syntax-typescript@7.22.5(@babel/core@7.22.9): resolution: {integrity: sha512-1mS2o03i7t1c6VzH6fdQ3OA8tcEIxwG18zIPRp+UY1Ihv6W+XZzBCVxExF9upussPXJ0xE9XRHwMoNs1ep/nRQ==} @@ -1062,7 +1091,6 @@ packages: '@babel/code-frame': 7.22.13 '@babel/parser': 7.23.0 '@babel/types': 7.23.0 - dev: true /@babel/template@7.22.5: resolution: {integrity: sha512-X7yV7eiwAxdj9k94NEylvbVHLiVG1nvzCV2EAowhxLTwODV1jl9UzZ48leOC0sH7OnuHrIkllaBgneUykIcZaw==} @@ -1107,7 +1135,6 @@ packages: globals: 11.12.0 transitivePeerDependencies: - supports-color - dev: true /@babel/types@7.22.5: resolution: {integrity: sha512-zo3MIHGOkPOfoRXitsgHLjEXmlDaD/5KU1Uzuc9GNiZPhSqVxVRtxuPaSBZDsYZ9qV88AjtMtWW7ww98loJ9KA==} @@ -1125,7 +1152,6 @@ packages: '@babel/helper-string-parser': 7.22.5 '@babel/helper-validator-identifier': 7.22.20 to-fast-properties: 2.0.0 - dev: true /@bcoe/v8-coverage@0.2.3: resolution: {integrity: sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==} @@ -1414,15 +1440,6 @@ packages: dev: true optional: true - /@eslint-community/eslint-utils@4.4.0(eslint@8.52.0): - resolution: {integrity: sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - peerDependencies: - eslint: ^6.0.0 || ^7.0.0 || >=8.0.0 - dependencies: - eslint: 8.52.0 - eslint-visitor-keys: 3.4.3 - /@eslint-community/eslint-utils@4.4.0(eslint@8.53.0): resolution: {integrity: sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} @@ -1431,28 +1448,11 @@ packages: dependencies: eslint: 8.53.0 eslint-visitor-keys: 3.4.3 - dev: true /@eslint-community/regexpp@4.6.2: resolution: {integrity: sha512-pPTNuaAG3QMH+buKyBIGJs3g/S5y0caxw0ygM3YyE6yJFySwiGGSzA+mM3KJ8QQvzeLh3blwgSonkFjgQdxzMw==} engines: {node: ^12.0.0 || ^14.0.0 || >=16.0.0} - /@eslint/eslintrc@2.1.2: - resolution: {integrity: sha512-+wvgpDsrB1YqAMdEUCcnTlpfVBH7Vqn6A/NT3D8WVXFIaKMlErPIZT3oCIAVCOtarRpMtelZLqJeU3t7WY6X6g==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - dependencies: - ajv: 6.12.6 - debug: 4.3.4 - espree: 9.6.1 - globals: 13.20.0 - ignore: 5.2.4 - import-fresh: 3.3.0 - js-yaml: 4.1.0 - minimatch: 3.1.2 - strip-json-comments: 3.1.1 - transitivePeerDependencies: - - supports-color - /@eslint/eslintrc@2.1.3: resolution: {integrity: sha512-yZzuIG+jnVu6hNSzFEN07e8BxF3uAzYtQb6uDkaYZLo6oYZDCq454c5kB8zxnzfCYyP4MIuyBn10L0DqwujTmA==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} @@ -1468,16 +1468,10 @@ packages: strip-json-comments: 3.1.1 transitivePeerDependencies: - supports-color - dev: true - - /@eslint/js@8.52.0: - resolution: {integrity: sha512-mjZVbpaeMZludF2fsWLD0Z9gCref1Tk4i9+wddjRvpUNqqcndPkBD09N/Mapey0b3jaXbLm2kICwFv2E64QinA==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} /@eslint/js@8.53.0: resolution: {integrity: sha512-Kn7K8dx/5U6+cT1yEhpX1w4PCSg0M+XyRILPgvwcEBjerFWCwQj5sbr3/VmxqV0JGHCBCzyd6LxypEuehypY1w==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - dev: true /@figma/plugin-typings@1.79.0: resolution: {integrity: sha512-Nzi+ShWOs/0IHWQqUwBS4xydglgcgqNEKPSUhTXM+io4o4vSspwpKWy7XBrl5azqqoCozzBa10aPhwXsA+tJfg==} @@ -1616,12 +1610,10 @@ packages: '@jridgewell/set-array': 1.1.2 '@jridgewell/sourcemap-codec': 1.4.15 '@jridgewell/trace-mapping': 0.3.18 - dev: true /@jridgewell/resolve-uri@3.1.0: resolution: {integrity: sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w==} engines: {node: '>=6.0.0'} - dev: true /@jridgewell/resolve-uri@3.1.1: resolution: {integrity: sha512-dSYZh7HhCDtCKm4QakX0xFpsRDqjjtZf/kjI/v3T3Nwt5r8/qz/M19F9ySyOqU94SXBmeG9ttTul+YnR4LOxFA==} @@ -1631,22 +1623,18 @@ packages: /@jridgewell/set-array@1.1.2: resolution: {integrity: sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==} engines: {node: '>=6.0.0'} - dev: true /@jridgewell/sourcemap-codec@1.4.14: resolution: {integrity: sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==} - dev: true /@jridgewell/sourcemap-codec@1.4.15: resolution: {integrity: sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==} - dev: true /@jridgewell/trace-mapping@0.3.18: resolution: {integrity: sha512-w+niJYzMHdd7USdiH2U6869nqhD2nbfZXND5Yp93qIbEmnDNk7PD48o+YchRVpzMU7M6jVCbenTR7PA1FLQ9pA==} dependencies: '@jridgewell/resolve-uri': 3.1.0 '@jridgewell/sourcemap-codec': 1.4.14 - dev: true /@jridgewell/trace-mapping@0.3.9: resolution: {integrity: sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==} @@ -1691,6 +1679,10 @@ packages: '@vanilla-extract/css': 1.13.0 dev: false + /@mdn/browser-compat-data@5.3.30: + resolution: {integrity: sha512-rMYcyYjBLBvZhULbaJdWJ63jOqDIbdyTvaOKc0d6O8wo1GSjYlnamsZZI4RhqqdbaiAaOyE1wjk1oRqfKBcK7A==} + dev: false + /@modular-forms/preact@0.7.0(@preact/signals@1.2.1)(preact@10.18.2): resolution: {integrity: sha512-5foVL0SMAwCLjj/pM5RiUf3Zx8co7AgfvwtpACHTwOtZI+8fHt+Ya71pHxfXuAeAJLndkGgYtlCw2KhcDmhgsw==} peerDependencies: @@ -1701,6 +1693,12 @@ packages: preact: 10.18.2 dev: false + /@nicolo-ribaudo/eslint-scope-5-internals@5.1.1-v1: + resolution: {integrity: sha512-54/JRvkLIzzDWshCWfuhadfrfZVPiElY8Fcgmg1HroEly/EDSszzhBAsarCux+D/kOslTRquNzuyGSmUSTTHGg==} + dependencies: + eslint-scope: 5.1.1 + dev: false + /@nodelib/fs.scandir@2.1.5: resolution: {integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==} engines: {node: '>= 8'} @@ -2292,10 +2290,6 @@ packages: resolution: {integrity: sha512-Hr5Jfhc9eYOQNPYO5WLDq/n4jqijdHNlDXjuAQkkt+mWdQR+XJToOHrsD4cPaMXpn6KO7y2+wM8AZEs8VpBLVA==} dev: false - /@types/json5@0.0.29: - resolution: {integrity: sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ==} - dev: false - /@types/node@20.9.0: resolution: {integrity: sha512-nekiGu2NDb1BcVofVcEKMIwzlx4NjHlcjhoxxKBNLtz15Y1z7MYf549DFvkHSId02Ax6kGwWntIBPC3l/JZcmw==} dependencies: @@ -2314,7 +2308,7 @@ packages: resolution: {integrity: sha512-iEN8J0BoMnsWBqjVbWH/c0G0Hh7O21lpR2/+PrvAVgWdzL7eexIFm4JN/Wn10PTcmNdtS6U67r499mlWMXOxNw==} dev: true - /@typescript-eslint/eslint-plugin@6.10.0(@typescript-eslint/parser@6.10.0)(eslint@8.52.0)(typescript@5.2.2): + /@typescript-eslint/eslint-plugin@6.10.0(@typescript-eslint/parser@6.10.0)(eslint@8.53.0)(typescript@5.2.2): resolution: {integrity: sha512-uoLj4g2OTL8rfUQVx2AFO1hp/zja1wABJq77P6IclQs6I/m9GLrm7jCdgzZkvWdDCQf1uEvoa8s8CupsgWQgVg==} engines: {node: ^16.0.0 || >=18.0.0} peerDependencies: @@ -2326,13 +2320,13 @@ packages: optional: true dependencies: '@eslint-community/regexpp': 4.6.2 - '@typescript-eslint/parser': 6.10.0(eslint@8.52.0)(typescript@5.2.2) + '@typescript-eslint/parser': 6.10.0(eslint@8.53.0)(typescript@5.2.2) '@typescript-eslint/scope-manager': 6.10.0 - '@typescript-eslint/type-utils': 6.10.0(eslint@8.52.0)(typescript@5.2.2) - '@typescript-eslint/utils': 6.10.0(eslint@8.52.0)(typescript@5.2.2) + '@typescript-eslint/type-utils': 6.10.0(eslint@8.53.0)(typescript@5.2.2) + '@typescript-eslint/utils': 6.10.0(eslint@8.53.0)(typescript@5.2.2) '@typescript-eslint/visitor-keys': 6.10.0 debug: 4.3.4 - eslint: 8.52.0 + eslint: 8.53.0 graphemer: 1.4.0 ignore: 5.2.4 natural-compare: 1.4.0 @@ -2343,7 +2337,20 @@ packages: - supports-color dev: false - /@typescript-eslint/parser@6.10.0(eslint@8.52.0)(typescript@5.2.2): + /@typescript-eslint/experimental-utils@5.62.0(eslint@8.53.0)(typescript@5.2.2): + resolution: {integrity: sha512-RTXpeB3eMkpoclG3ZHft6vG/Z30azNHuqY6wKPBHlVMZFuEvrtlEDe8gMqDb+SO+9hjC/pLekeSCryf9vMZlCw==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + peerDependencies: + eslint: ^6.0.0 || ^7.0.0 || ^8.0.0 + dependencies: + '@typescript-eslint/utils': 5.62.0(eslint@8.53.0)(typescript@5.2.2) + eslint: 8.53.0 + transitivePeerDependencies: + - supports-color + - typescript + dev: false + + /@typescript-eslint/parser@6.10.0(eslint@8.53.0)(typescript@5.2.2): resolution: {integrity: sha512-+sZwIj+s+io9ozSxIWbNB5873OSdfeBEH/FR0re14WLI6BaKuSOnnwCJ2foUiu8uXf4dRp1UqHP0vrZ1zXGrog==} engines: {node: ^16.0.0 || >=18.0.0} peerDependencies: @@ -2358,12 +2365,20 @@ packages: '@typescript-eslint/typescript-estree': 6.10.0(typescript@5.2.2) '@typescript-eslint/visitor-keys': 6.10.0 debug: 4.3.4 - eslint: 8.52.0 + eslint: 8.53.0 typescript: 5.2.2 transitivePeerDependencies: - supports-color dev: false + /@typescript-eslint/scope-manager@5.62.0: + resolution: {integrity: sha512-VXuvVvZeQCQb5Zgf4HAxc04q5j+WrNAtNh9OwCsCgpKqESMTu3tF/jhZ3xG6T4NZwWl65Bg8KuS2uEvhSfLl0w==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + dependencies: + '@typescript-eslint/types': 5.62.0 + '@typescript-eslint/visitor-keys': 5.62.0 + dev: false + /@typescript-eslint/scope-manager@6.10.0: resolution: {integrity: sha512-TN/plV7dzqqC2iPNf1KrxozDgZs53Gfgg5ZHyw8erd6jd5Ta/JIEcdCheXFt9b1NYb93a1wmIIVW/2gLkombDg==} engines: {node: ^16.0.0 || >=18.0.0} @@ -2380,7 +2395,7 @@ packages: '@typescript-eslint/visitor-keys': 6.9.0 dev: false - /@typescript-eslint/type-utils@6.10.0(eslint@8.52.0)(typescript@5.2.2): + /@typescript-eslint/type-utils@6.10.0(eslint@8.53.0)(typescript@5.2.2): resolution: {integrity: sha512-wYpPs3hgTFblMYwbYWPT3eZtaDOjbLyIYuqpwuLBBqhLiuvJ+9sEp2gNRJEtR5N/c9G1uTtQQL5AhV0fEPJYcg==} engines: {node: ^16.0.0 || >=18.0.0} peerDependencies: @@ -2391,15 +2406,20 @@ packages: optional: true dependencies: '@typescript-eslint/typescript-estree': 6.10.0(typescript@5.2.2) - '@typescript-eslint/utils': 6.10.0(eslint@8.52.0)(typescript@5.2.2) + '@typescript-eslint/utils': 6.10.0(eslint@8.53.0)(typescript@5.2.2) debug: 4.3.4 - eslint: 8.52.0 + eslint: 8.53.0 ts-api-utils: 1.0.1(typescript@5.2.2) typescript: 5.2.2 transitivePeerDependencies: - supports-color dev: false + /@typescript-eslint/types@5.62.0: + resolution: {integrity: sha512-87NVngcbVXUahrRTqIK27gD2t5Cu1yuCXxbLcFtCzZGlfyVWWh8mLHkoxzjsB6DDNnvdL+fW8MiwPEJyGJQDgQ==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + dev: false + /@typescript-eslint/types@6.10.0: resolution: {integrity: sha512-36Fq1PWh9dusgo3vH7qmQAj5/AZqARky1Wi6WpINxB6SkQdY5vQoT2/7rW7uBIsPDcvvGCLi4r10p0OJ7ITAeg==} engines: {node: ^16.0.0 || >=18.0.0} @@ -2410,6 +2430,27 @@ packages: engines: {node: ^16.0.0 || >=18.0.0} dev: false + /@typescript-eslint/typescript-estree@5.62.0(typescript@5.2.2): + resolution: {integrity: sha512-CmcQ6uY7b9y694lKdRB8FEel7JbU/40iSAPomu++SjLMntB+2Leay2LO6i8VnJk58MtE9/nQSFIH6jpyRWyYzA==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + peerDependencies: + typescript: '*' + peerDependenciesMeta: + typescript: + optional: true + dependencies: + '@typescript-eslint/types': 5.62.0 + '@typescript-eslint/visitor-keys': 5.62.0 + debug: 4.3.4 + globby: 11.1.0 + is-glob: 4.0.3 + semver: 7.5.4 + tsutils: 3.21.0(typescript@5.2.2) + typescript: 5.2.2 + transitivePeerDependencies: + - supports-color + dev: false + /@typescript-eslint/typescript-estree@6.10.0(typescript@5.2.2): resolution: {integrity: sha512-ek0Eyuy6P15LJVeghbWhSrBCj/vJpPXXR+EpaRZqou7achUWL8IdYnMSC5WHAeTWswYQuP2hAZgij/bC9fanBg==} engines: {node: ^16.0.0 || >=18.0.0} @@ -2452,44 +2493,72 @@ packages: - supports-color dev: false - /@typescript-eslint/utils@6.10.0(eslint@8.52.0)(typescript@5.2.2): + /@typescript-eslint/utils@5.62.0(eslint@8.53.0)(typescript@5.2.2): + resolution: {integrity: sha512-n8oxjeb5aIbPFEtmQxQYOLI0i9n5ySBEY/ZEHHZqKQSFnxio1rv6dthascc9dLuwrL0RC5mPCxB7vnAVGAYWAQ==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + peerDependencies: + eslint: ^6.0.0 || ^7.0.0 || ^8.0.0 + dependencies: + '@eslint-community/eslint-utils': 4.4.0(eslint@8.53.0) + '@types/json-schema': 7.0.12 + '@types/semver': 7.5.0 + '@typescript-eslint/scope-manager': 5.62.0 + '@typescript-eslint/types': 5.62.0 + '@typescript-eslint/typescript-estree': 5.62.0(typescript@5.2.2) + eslint: 8.53.0 + eslint-scope: 5.1.1 + semver: 7.5.4 + transitivePeerDependencies: + - supports-color + - typescript + dev: false + + /@typescript-eslint/utils@6.10.0(eslint@8.53.0)(typescript@5.2.2): resolution: {integrity: sha512-v+pJ1/RcVyRc0o4wAGux9x42RHmAjIGzPRo538Z8M1tVx6HOnoQBCX/NoadHQlZeC+QO2yr4nNSFWOoraZCAyg==} engines: {node: ^16.0.0 || >=18.0.0} peerDependencies: eslint: ^7.0.0 || ^8.0.0 dependencies: - '@eslint-community/eslint-utils': 4.4.0(eslint@8.52.0) + '@eslint-community/eslint-utils': 4.4.0(eslint@8.53.0) '@types/json-schema': 7.0.12 '@types/semver': 7.5.0 '@typescript-eslint/scope-manager': 6.10.0 '@typescript-eslint/types': 6.10.0 '@typescript-eslint/typescript-estree': 6.10.0(typescript@5.2.2) - eslint: 8.52.0 + eslint: 8.53.0 semver: 7.5.4 transitivePeerDependencies: - supports-color - typescript dev: false - /@typescript-eslint/utils@6.9.0(eslint@8.52.0)(typescript@5.2.2): + /@typescript-eslint/utils@6.9.0(eslint@8.53.0)(typescript@5.2.2): resolution: {integrity: sha512-5Wf+Jsqya7WcCO8me504FBigeQKVLAMPmUzYgDbWchINNh1KJbxCgVya3EQ2MjvJMVeXl3pofRmprqX6mfQkjQ==} engines: {node: ^16.0.0 || >=18.0.0} peerDependencies: eslint: ^7.0.0 || ^8.0.0 dependencies: - '@eslint-community/eslint-utils': 4.4.0(eslint@8.52.0) + '@eslint-community/eslint-utils': 4.4.0(eslint@8.53.0) '@types/json-schema': 7.0.12 '@types/semver': 7.5.0 '@typescript-eslint/scope-manager': 6.9.0 '@typescript-eslint/types': 6.9.0 '@typescript-eslint/typescript-estree': 6.9.0(typescript@5.2.2) - eslint: 8.52.0 + eslint: 8.53.0 semver: 7.5.4 transitivePeerDependencies: - supports-color - typescript dev: false + /@typescript-eslint/visitor-keys@5.62.0: + resolution: {integrity: sha512-07ny+LHRzQXepkGg6w0mFY41fVUNBrL2Roj/++7V1txKugfjm/Ci/qSND03r2RhlJhJYMcTn9AhhSSqQp0Ysyw==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + dependencies: + '@typescript-eslint/types': 5.62.0 + eslint-visitor-keys: 3.4.3 + dev: false + /@typescript-eslint/visitor-keys@6.10.0: resolution: {integrity: sha512-xMGluxQIEtOM7bqFCo+rCMh5fqI+ZxV5RUUOa29iVPz1OgCZrtc7rFnz5cLUazlkPKYqX+75iuDq7m0HQ48nCg==} engines: {node: ^16.0.0 || >=18.0.0} @@ -2536,6 +2605,22 @@ packages: media-query-parser: 2.0.2 outdent: 0.8.0 + /@vanilla-extract/css@1.14.0: + resolution: {integrity: sha512-rYfm7JciWZ8PFzBM/HDiE2GLnKI3xJ6/vdmVJ5BSgcCZ5CxRlM9Cjqclni9lGzF3eMOijnUhCd/KV8TOzyzbMA==} + dependencies: + '@emotion/hash': 0.9.1 + '@vanilla-extract/private': 1.0.3 + chalk: 4.1.2 + css-what: 6.1.0 + cssesc: 3.0.0 + csstype: 3.1.2 + deep-object-diff: 1.1.9 + deepmerge: 4.3.1 + media-query-parser: 2.0.2 + modern-ahocorasick: 1.0.0 + outdent: 0.8.0 + dev: true + /@vanilla-extract/esbuild-plugin@2.3.0: resolution: {integrity: sha512-YsBLRDWvbqj/Zep0UdbgI1FfHfXJhf4tHYbVr5oPbVIf53p736hx+V3Wggo9ScK8Eu0aWVavxg6OvPOUITxdqg==} dependencies: @@ -2557,7 +2642,7 @@ packages: '@babel/core': 7.22.9 '@babel/plugin-syntax-typescript': 7.22.5(@babel/core@7.22.9) '@vanilla-extract/babel-plugin-debug-ids': 1.0.3 - '@vanilla-extract/css': 1.13.0 + '@vanilla-extract/css': 1.14.0 esbuild: 0.18.17 eval: 0.1.8 find-up: 5.0.0 @@ -2712,15 +2797,6 @@ packages: json-schema-traverse: 0.4.1 uri-js: 4.4.1 - /ajv@8.12.0: - resolution: {integrity: sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==} - dependencies: - fast-deep-equal: 3.1.3 - json-schema-traverse: 1.0.0 - require-from-string: 2.0.2 - uri-js: 4.4.1 - dev: false - /ansi-escapes@5.0.0: resolution: {integrity: sha512-5GFMVX8HqE/TB+FuBJGuO5XG0WrsA6ptUqoODaT/n9mmUaZFkqnBueB4leqGBCmrUHnCnC4PCZTCd0E7QQ83bA==} engines: {node: '>=12'} @@ -2740,7 +2816,6 @@ packages: engines: {node: '>=4'} dependencies: color-convert: 1.9.3 - dev: true /ansi-styles@4.3.0: resolution: {integrity: sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==} @@ -2763,7 +2838,6 @@ packages: dependencies: normalize-path: 3.0.0 picomatch: 2.3.1 - dev: true /arg@4.1.3: resolution: {integrity: sha512-58S9QDqG0Xx27YwPSt9fJxivjYl432YCwfDMfZ+71RAqUrZef7LrKQZ3LHLOwCS4FLNBplP533Zx895SeOCHvA==} @@ -2812,17 +2886,6 @@ packages: engines: {node: '>=8'} dev: false - /array.prototype.findlastindex@1.2.3: - resolution: {integrity: sha512-LzLoiOMAxvy+Gd3BAq3B7VeIgPdo+Q8hthvKtXybMvRV0jrXfJM/t8mw7nNlpEcVlVUnCnM2KSX4XU5HmpodOA==} - engines: {node: '>= 0.4'} - dependencies: - call-bind: 1.0.2 - define-properties: 1.2.0 - es-abstract: 1.22.1 - es-shim-unscopables: 1.0.0 - get-intrinsic: 1.2.1 - dev: false - /array.prototype.flat@1.3.1: resolution: {integrity: sha512-roTU0KWIOmJ4DRLmwKd19Otg0/mT3qPNt0Qb3GWW8iObuZXxrjB/pzn0R3hqpRSWg4HCwqx+0vwOnWnvlOyeIA==} engines: {node: '>= 0.4'} @@ -2853,6 +2916,16 @@ packages: es-shim-unscopables: 1.0.0 dev: false + /array.prototype.tosorted@1.1.2: + resolution: {integrity: sha512-HuQCHOlk1Weat5jzStICBCd83NxiIMwqDg/dHEsoefabn/hJRj5pVdWcPUSpRrwhwxZOsQassMpgN/xRYFBMIg==} + dependencies: + call-bind: 1.0.2 + define-properties: 1.2.1 + es-abstract: 1.22.1 + es-shim-unscopables: 1.0.0 + get-intrinsic: 1.2.1 + dev: false + /arraybuffer.prototype.slice@1.0.1: resolution: {integrity: sha512-09x0ZWFEjj4WD8PDbykUwo3t9arLn8NIzmmYEJFpYekOAQjpkGSyrQhNoRTcwwcFRu+ycWF78QZ63oWTqSjBcw==} engines: {node: '>= 0.4'} @@ -2869,6 +2942,12 @@ packages: resolution: {integrity: sha512-jgsaNduz+ndvGyFt3uSuWqvy4lCnIJiovtouQN5JZHOKCS2QuhEdbcQHFhVksz2N2U9hXJo8odG7ETyWlEeuDw==} dev: true + /ast-metadata-inferer@0.8.0: + resolution: {integrity: sha512-jOMKcHht9LxYIEQu+RVd22vtgrPaVCtDRQ/16IGmurdzxvYbDd5ynxjnyrzLnieG96eTcAyaoj/wN/4/1FyyeA==} + dependencies: + '@mdn/browser-compat-data': 5.3.30 + dev: false + /ast-types-flow@0.0.8: resolution: {integrity: sha512-OH/2E5Fg20h2aPrbe+QL8JZQFko0YZaF+j4mnQ7BGhfavO7OpSLa8a0y9sBwomHdSbkhTS8TQNayBfnW5DwbvQ==} dev: false @@ -2945,7 +3024,6 @@ packages: /binary-extensions@2.2.0: resolution: {integrity: sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==} engines: {node: '>=8'} - dev: true /boolbase@1.0.0: resolution: {integrity: sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==} @@ -2984,7 +3062,17 @@ packages: electron-to-chromium: 1.4.475 node-releases: 2.0.13 update-browserslist-db: 1.0.11(browserslist@4.21.9) - dev: true + + /browserslist@4.22.1: + resolution: {integrity: sha512-FEVc202+2iuClEhZhrWy6ZiAcRLvNMyYcxZ8raemul1DYVOVdFsbqckWLdsixQZCpJlwe77Z3UTalE7jsjnKfQ==} + engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7} + hasBin: true + dependencies: + caniuse-lite: 1.0.30001561 + electron-to-chromium: 1.4.581 + node-releases: 2.0.13 + update-browserslist-db: 1.0.13(browserslist@4.22.1) + dev: false /buffer-from@1.1.2: resolution: {integrity: sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==} @@ -3017,7 +3105,6 @@ packages: rc9: 2.1.1 transitivePeerDependencies: - supports-color - dev: true /cac@6.7.14: resolution: {integrity: sha512-b6Ilus+c3RrdDk+JhLKUAQfzzgLEPy6wcXqS7f/xe1EETvsDP6GORG7SFuOs6cID5YkqchW/LXZbX5bc8j7ZcQ==} @@ -3051,7 +3138,10 @@ packages: /caniuse-lite@1.0.30001517: resolution: {integrity: sha512-Vdhm5S11DaFVLlyiKu4hiUTkpZu+y1KA/rZZqVQfOD5YdDT/eQKlkt7NaE0WGOFgX32diqt9MiP9CAiFeRklaA==} - dev: true + + /caniuse-lite@1.0.30001561: + resolution: {integrity: sha512-NTt0DNoKe958Q0BE0j0c1V9jbUzhBxHIEJy7asmGrpE0yG63KTV7PLHPnK2E1O9RsQrQ081I3NLuXGS6zht3cw==} + dev: false /chai@4.3.10: resolution: {integrity: sha512-0UXG04VuVbruMUYbJ6JctvH0YnC/4q3/AkT18q4NaITo91CUm0liMS9VqzT9vZhVQ/1eqPanMWjBM+Juhfb/9g==} @@ -3073,7 +3163,6 @@ packages: ansi-styles: 3.2.1 escape-string-regexp: 1.0.5 supports-color: 5.5.0 - dev: true /chalk@4.1.2: resolution: {integrity: sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==} @@ -3152,7 +3241,6 @@ packages: readdirp: 3.6.0 optionalDependencies: fsevents: 2.3.3 - dev: true /chownr@2.0.0: resolution: {integrity: sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==} @@ -3194,7 +3282,6 @@ packages: resolution: {integrity: sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==} dependencies: color-name: 1.1.3 - dev: true /color-convert@2.0.1: resolution: {integrity: sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==} @@ -3204,7 +3291,6 @@ packages: /color-name@1.1.3: resolution: {integrity: sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==} - dev: true /color-name@1.1.4: resolution: {integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==} @@ -3269,7 +3355,6 @@ packages: /convert-source-map@2.0.0: resolution: {integrity: sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==} - dev: true /create-require@1.1.1: resolution: {integrity: sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ==} @@ -3418,17 +3503,6 @@ packages: '@babel/runtime': 7.22.6 dev: true - /debug@3.2.7: - resolution: {integrity: sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==} - peerDependencies: - supports-color: '*' - peerDependenciesMeta: - supports-color: - optional: true - dependencies: - ms: 2.1.3 - dev: false - /debug@4.3.4: resolution: {integrity: sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==} engines: {node: '>=6.0'} @@ -3522,7 +3596,6 @@ packages: /destr@2.0.2: resolution: {integrity: sha512-65AlobnZMiCET00KaFFjUefxDX0khFA/E4myqZ7a6Sq1yZtR8+FVIvilVX66vF2uobSumxooYZChiRPCKNqhmg==} - dev: true /diff-sequences@29.6.3: resolution: {integrity: sha512-EjePK1srD3P08o2j4f0ExnylqRs5B9tJjcp9t1krH2qRi8CCdsYfwe9JgSLurFBWwq4uOlipzfk5fHNvwFKr8Q==} @@ -3580,22 +3653,19 @@ packages: domhandler: 5.0.3 dev: true - /dotenv@16.0.3: - resolution: {integrity: sha512-7GO6HghkA5fYG9TYnNxi14/7K9f5occMlp3zXAuSxn7CKCxt9xbNWG7yF8hTCSUchlfWSe3uLmlPfigevRItzQ==} - engines: {node: '>=12'} - dev: false - /dotenv@16.3.1: resolution: {integrity: sha512-IPzF4w4/Rd94bA9imS68tZBaYyBWSCE47V1RGuMrB94iyTOIEwRmVL2x/4An+6mETpLrKJ5hQkB8W4kFAadeIQ==} engines: {node: '>=12'} - dev: true /eastasianwidth@0.2.0: resolution: {integrity: sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==} /electron-to-chromium@1.4.475: resolution: {integrity: sha512-mTye5u5P98kSJO2n7zYALhpJDmoSQejIGya0iR01GpoRady8eK3bw7YHHnjA1Rfi4ZSLdpuzlAC7Zw+1Zu7Z6A==} - dev: true + + /electron-to-chromium@1.4.581: + resolution: {integrity: sha512-6uhqWBIapTJUxgPTCHH9sqdbxIMPt7oXl0VcAL1kOtlU6aECdcMncCrX5Z7sHQ/invtrC9jUQUef7+HhO8vVFw==} + dev: false /emoji-regex@8.0.0: resolution: {integrity: sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==} @@ -3730,12 +3800,10 @@ packages: /escalade@3.1.1: resolution: {integrity: sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==} engines: {node: '>=6'} - dev: true /escape-string-regexp@1.0.5: resolution: {integrity: sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==} engines: {node: '>=0.8.0'} - dev: true /escape-string-regexp@4.0.0: resolution: {integrity: sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==} @@ -3746,99 +3814,75 @@ packages: engines: {node: '>=12'} dev: true - /eslint-config-prettier@9.0.0(eslint@8.52.0): - resolution: {integrity: sha512-IcJsTkJae2S35pRsRAwoCE+925rJJStOdkKnLVgtE+tEpqU0EVVM7OqrwxqgptKdX29NUwC82I5pXsGFIgSevw==} - hasBin: true + /eslint-config-preact@1.3.0(@typescript-eslint/eslint-plugin@6.10.0)(eslint@8.53.0)(typescript@5.2.2): + resolution: {integrity: sha512-yHYXg5qNzEJd3D/30AmsIW0W8MuY858KpApXp7xxBF08IYUljSKCOqMx+dVucXHQnAm7+11wOnMkgVHIBAechw==} peerDependencies: - eslint: '>=7.0.0' + eslint: 6.x || 7.x || 8.x dependencies: - eslint: 8.52.0 + '@babel/core': 7.23.2 + '@babel/eslint-parser': 7.23.3(@babel/core@7.23.2)(eslint@8.53.0) + '@babel/plugin-syntax-class-properties': 7.12.13(@babel/core@7.23.2) + '@babel/plugin-syntax-decorators': 7.23.3(@babel/core@7.23.2) + '@babel/plugin-syntax-jsx': 7.22.5(@babel/core@7.23.2) + eslint: 8.53.0 + eslint-plugin-compat: 4.2.0(eslint@8.53.0) + eslint-plugin-jest: 25.7.0(@typescript-eslint/eslint-plugin@6.10.0)(eslint@8.53.0)(typescript@5.2.2) + eslint-plugin-react: 7.33.2(eslint@8.53.0) + eslint-plugin-react-hooks: 4.6.0(eslint@8.53.0) + transitivePeerDependencies: + - '@typescript-eslint/eslint-plugin' + - jest + - supports-color + - typescript dev: false - /eslint-config-turbo@1.10.16(eslint@8.52.0): - resolution: {integrity: sha512-O3NQI72bQHV7FvSC6lWj66EGx8drJJjuT1kuInn6nbMLOHdMBhSUX/8uhTAlHRQdlxZk2j9HtgFCIzSc93w42g==} + /eslint-config-prettier@9.0.0(eslint@8.53.0): + resolution: {integrity: sha512-IcJsTkJae2S35pRsRAwoCE+925rJJStOdkKnLVgtE+tEpqU0EVVM7OqrwxqgptKdX29NUwC82I5pXsGFIgSevw==} + hasBin: true peerDependencies: - eslint: '>6.6.0' - dependencies: - eslint: 8.52.0 - eslint-plugin-turbo: 1.10.16(eslint@8.52.0) - dev: false - - /eslint-import-resolver-node@0.3.9: - resolution: {integrity: sha512-WFj2isz22JahUv+B788TlO3N6zL3nNJGU8CcZbPZvVEkBPaJdCV4vy5wyghty5ROFbCRnm132v8BScu5/1BQ8g==} + eslint: '>=7.0.0' dependencies: - debug: 3.2.7 - is-core-module: 2.13.1 - resolve: 1.22.8 - transitivePeerDependencies: - - supports-color + eslint: 8.53.0 dev: false - /eslint-module-utils@2.8.0(@typescript-eslint/parser@6.10.0)(eslint-import-resolver-node@0.3.9)(eslint@8.52.0): - resolution: {integrity: sha512-aWajIYfsqCKRDgUfjEXNN/JlrzauMuSEy5sbd7WXbtW3EH6A6MpwEh42c7qD+MqQo9QMJ6fWLAeIJynx0g6OAw==} - engines: {node: '>=4'} + /eslint-plugin-compat@4.2.0(eslint@8.53.0): + resolution: {integrity: sha512-RDKSYD0maWy5r7zb5cWQS+uSPc26mgOzdORJ8hxILmWM7S/Ncwky7BcAtXVY5iRbKjBdHsWU8Yg7hfoZjtkv7w==} + engines: {node: '>=14.x'} peerDependencies: - '@typescript-eslint/parser': '*' - eslint: '*' - eslint-import-resolver-node: '*' - eslint-import-resolver-typescript: '*' - eslint-import-resolver-webpack: '*' - peerDependenciesMeta: - '@typescript-eslint/parser': - optional: true - eslint: - optional: true - eslint-import-resolver-node: - optional: true - eslint-import-resolver-typescript: - optional: true - eslint-import-resolver-webpack: - optional: true + eslint: ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0 dependencies: - '@typescript-eslint/parser': 6.10.0(eslint@8.52.0)(typescript@5.2.2) - debug: 3.2.7 - eslint: 8.52.0 - eslint-import-resolver-node: 0.3.9 - transitivePeerDependencies: - - supports-color + '@mdn/browser-compat-data': 5.3.30 + ast-metadata-inferer: 0.8.0 + browserslist: 4.22.1 + caniuse-lite: 1.0.30001561 + eslint: 8.53.0 + find-up: 5.0.0 + lodash.memoize: 4.1.2 + semver: 7.5.4 dev: false - /eslint-plugin-import@2.29.0(@typescript-eslint/parser@6.10.0)(eslint@8.52.0): - resolution: {integrity: sha512-QPOO5NO6Odv5lpoTkddtutccQjysJuFxoPS7fAHO+9m9udNHvTCPSAMW9zGAYj8lAIdr40I8yPCdUYrncXtrwg==} - engines: {node: '>=4'} + /eslint-plugin-jest@25.7.0(@typescript-eslint/eslint-plugin@6.10.0)(eslint@8.53.0)(typescript@5.2.2): + resolution: {integrity: sha512-PWLUEXeeF7C9QGKqvdSbzLOiLTx+bno7/HC9eefePfEb257QFHg7ye3dh80AZVkaa/RQsBB1Q/ORQvg2X7F0NQ==} + engines: {node: ^12.13.0 || ^14.15.0 || >=16.0.0} peerDependencies: - '@typescript-eslint/parser': '*' - eslint: ^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0 || ^8 + '@typescript-eslint/eslint-plugin': ^4.0.0 || ^5.0.0 + eslint: ^6.0.0 || ^7.0.0 || ^8.0.0 + jest: '*' peerDependenciesMeta: - '@typescript-eslint/parser': + '@typescript-eslint/eslint-plugin': + optional: true + jest: optional: true dependencies: - '@typescript-eslint/parser': 6.10.0(eslint@8.52.0)(typescript@5.2.2) - array-includes: 3.1.7 - array.prototype.findlastindex: 1.2.3 - array.prototype.flat: 1.3.2 - array.prototype.flatmap: 1.3.2 - debug: 3.2.7 - doctrine: 2.1.0 - eslint: 8.52.0 - eslint-import-resolver-node: 0.3.9 - eslint-module-utils: 2.8.0(@typescript-eslint/parser@6.10.0)(eslint-import-resolver-node@0.3.9)(eslint@8.52.0) - hasown: 2.0.0 - is-core-module: 2.13.1 - is-glob: 4.0.3 - minimatch: 3.1.2 - object.fromentries: 2.0.7 - object.groupby: 1.0.1 - object.values: 1.1.7 - semver: 6.3.1 - tsconfig-paths: 3.14.2 + '@typescript-eslint/eslint-plugin': 6.10.0(@typescript-eslint/parser@6.10.0)(eslint@8.53.0)(typescript@5.2.2) + '@typescript-eslint/experimental-utils': 5.62.0(eslint@8.53.0)(typescript@5.2.2) + eslint: 8.53.0 transitivePeerDependencies: - - eslint-import-resolver-typescript - - eslint-import-resolver-webpack - supports-color + - typescript dev: false - /eslint-plugin-jsx-a11y@6.8.0(eslint@8.52.0): + /eslint-plugin-jsx-a11y@6.8.0(eslint@8.53.0): resolution: {integrity: sha512-Hdh937BS3KdwwbBaKd5+PLCOmYY6U4f2h9Z2ktwtNKvIdIEu137rjYbcb9ApSbVJfWxANNuiKTD/9tOKjK9qOA==} engines: {node: '>=4.0'} peerDependencies: @@ -3854,7 +3898,7 @@ packages: damerau-levenshtein: 1.0.8 emoji-regex: 9.2.2 es-iterator-helpers: 1.0.15 - eslint: 8.52.0 + eslint: 8.53.0 hasown: 2.0.0 jsx-ast-utils: 3.3.5 language-tags: 1.0.9 @@ -3863,7 +3907,7 @@ packages: object.fromentries: 2.0.7 dev: false - /eslint-plugin-prettier@5.0.1(eslint-config-prettier@9.0.0)(eslint@8.52.0)(prettier@3.0.3): + /eslint-plugin-prettier@5.0.1(eslint-config-prettier@9.0.0)(eslint@8.53.0)(prettier@3.0.3): resolution: {integrity: sha512-m3u5RnR56asrwV/lDC4GHorlW75DsFfmUcjfCYylTUs85dBRnB7VM6xG8eCMJdeDRnppzmxZVf1GEPJvl1JmNg==} engines: {node: ^14.18.0 || >=16.0.0} peerDependencies: @@ -3877,29 +3921,63 @@ packages: eslint-config-prettier: optional: true dependencies: - eslint: 8.52.0 - eslint-config-prettier: 9.0.0(eslint@8.52.0) + eslint: 8.53.0 + eslint-config-prettier: 9.0.0(eslint@8.53.0) prettier: 3.0.3 prettier-linter-helpers: 1.0.0 synckit: 0.8.5 dev: false - /eslint-plugin-simple-import-sort@10.0.0(eslint@8.52.0): + /eslint-plugin-react-hooks@4.6.0(eslint@8.53.0): + resolution: {integrity: sha512-oFc7Itz9Qxh2x4gNHStv3BqJq54ExXmfC+a1NjAta66IAN87Wu0R/QArgIS9qKzX3dXKPI9H5crl9QchNMY9+g==} + engines: {node: '>=10'} + peerDependencies: + eslint: ^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0-0 + dependencies: + eslint: 8.53.0 + dev: false + + /eslint-plugin-react@7.33.2(eslint@8.53.0): + resolution: {integrity: sha512-73QQMKALArI8/7xGLNI/3LylrEYrlKZSb5C9+q3OtOewTnMQi5cT+aE9E41sLCmli3I9PGGmD1yiZydyo4FEPw==} + engines: {node: '>=4'} + peerDependencies: + eslint: ^3 || ^4 || ^5 || ^6 || ^7 || ^8 + dependencies: + array-includes: 3.1.7 + array.prototype.flatmap: 1.3.2 + array.prototype.tosorted: 1.1.2 + doctrine: 2.1.0 + es-iterator-helpers: 1.0.15 + eslint: 8.53.0 + estraverse: 5.3.0 + jsx-ast-utils: 3.3.5 + minimatch: 3.1.2 + object.entries: 1.1.7 + object.fromentries: 2.0.7 + object.hasown: 1.1.3 + object.values: 1.1.7 + prop-types: 15.8.1 + resolve: 2.0.0-next.5 + semver: 6.3.1 + string.prototype.matchall: 4.0.10 + dev: false + + /eslint-plugin-simple-import-sort@10.0.0(eslint@8.53.0): resolution: {integrity: sha512-AeTvO9UCMSNzIHRkg8S6c3RPy5YEwKWSQPx3DYghLedo2ZQxowPFLGDN1AZ2evfg6r6mjBSZSLxLFsWSu3acsw==} peerDependencies: eslint: '>=5.0.0' dependencies: - eslint: 8.52.0 + eslint: 8.53.0 dev: false - /eslint-plugin-solid@0.13.0(eslint@8.52.0)(typescript@5.2.2): + /eslint-plugin-solid@0.13.0(eslint@8.53.0)(typescript@5.2.2): resolution: {integrity: sha512-Sutd+DxEGu9+Z9ITtHKXRAClxVe1a6C1XQZSuN8iBsMy0IAVEc6Tca1UYgc7tD2ZrRRjZKB9mohBOaZl5NJLgg==} engines: {node: '>=12.0.0'} peerDependencies: eslint: ^6.0.0 || ^7.0.0 || ^8.0.0 dependencies: - '@typescript-eslint/utils': 6.9.0(eslint@8.52.0)(typescript@5.2.2) - eslint: 8.52.0 + '@typescript-eslint/utils': 6.9.0(eslint@8.53.0)(typescript@5.2.2) + eslint: 8.53.0 is-html: 2.0.0 jsx-ast-utils: 3.3.4 kebab-case: 1.0.2 @@ -3910,13 +3988,12 @@ packages: - typescript dev: false - /eslint-plugin-turbo@1.10.16(eslint@8.52.0): - resolution: {integrity: sha512-ZjrR88MTN64PNGufSEcM0tf+V1xFYVbeiMeuIqr0aiABGomxFLo4DBkQ7WI4WzkZtWQSIA2sP+yxqSboEfL9MQ==} - peerDependencies: - eslint: '>6.6.0' + /eslint-scope@5.1.1: + resolution: {integrity: sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==} + engines: {node: '>=8.0.0'} dependencies: - dotenv: 16.0.3 - eslint: 8.52.0 + esrecurse: 4.3.0 + estraverse: 4.3.0 dev: false /eslint-scope@7.2.2: @@ -3926,6 +4003,11 @@ packages: esrecurse: 4.3.0 estraverse: 5.3.0 + /eslint-visitor-keys@2.1.0: + resolution: {integrity: sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==} + engines: {node: '>=10'} + dev: false + /eslint-visitor-keys@3.4.2: resolution: {integrity: sha512-8drBzUEyZ2llkpCA67iYrgEssKDUu68V8ChqqOfFupIaG/LCVPUT+CoGJpT77zJprs4T/W7p07LP7zAIMuweVw==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} @@ -3935,52 +4017,6 @@ packages: resolution: {integrity: sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - /eslint@8.52.0: - resolution: {integrity: sha512-zh/JHnaixqHZsolRB/w9/02akBk9EPrOs9JwcTP2ek7yL5bVvXuRariiaAjjoJ5DvuwQ1WAE/HsMz+w17YgBCg==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - hasBin: true - dependencies: - '@eslint-community/eslint-utils': 4.4.0(eslint@8.52.0) - '@eslint-community/regexpp': 4.6.2 - '@eslint/eslintrc': 2.1.2 - '@eslint/js': 8.52.0 - '@humanwhocodes/config-array': 0.11.13 - '@humanwhocodes/module-importer': 1.0.1 - '@nodelib/fs.walk': 1.2.8 - '@ungap/structured-clone': 1.2.0 - ajv: 6.12.6 - chalk: 4.1.2 - cross-spawn: 7.0.3 - debug: 4.3.4 - doctrine: 3.0.0 - escape-string-regexp: 4.0.0 - eslint-scope: 7.2.2 - eslint-visitor-keys: 3.4.3 - espree: 9.6.1 - esquery: 1.5.0 - esutils: 2.0.3 - fast-deep-equal: 3.1.3 - file-entry-cache: 6.0.1 - find-up: 5.0.0 - glob-parent: 6.0.2 - globals: 13.20.0 - graphemer: 1.4.0 - ignore: 5.2.4 - imurmurhash: 0.1.4 - is-glob: 4.0.3 - is-path-inside: 3.0.3 - js-yaml: 4.1.0 - json-stable-stringify-without-jsonify: 1.0.1 - levn: 0.4.1 - lodash.merge: 4.6.2 - minimatch: 3.1.2 - natural-compare: 1.4.0 - optionator: 0.9.3 - strip-ansi: 6.0.1 - text-table: 0.2.0 - transitivePeerDependencies: - - supports-color - /eslint@8.53.0: resolution: {integrity: sha512-N4VuiPjXDUa4xVeV/GC/RV3hQW9Nw+Y463lkWaKKXKYMvmRiRDAtfpuPFLN+E1/6ZhyR8J2ig+eVREnYgUsiag==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} @@ -4026,7 +4062,6 @@ packages: text-table: 0.2.0 transitivePeerDependencies: - supports-color - dev: true /espree@9.6.1: resolution: {integrity: sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==} @@ -4048,6 +4083,11 @@ packages: dependencies: estraverse: 5.3.0 + /estraverse@4.3.0: + resolution: {integrity: sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==} + engines: {node: '>=4.0'} + dev: false + /estraverse@5.3.0: resolution: {integrity: sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==} engines: {node: '>=4.0'} @@ -4182,7 +4222,6 @@ packages: /flat@5.0.2: resolution: {integrity: sha512-b6suED+5/3rTpUBdG1gupIl8MPFCAMA0QXwmljLhvCUKcUvdE4gWky9zpuGCcXHOsz4J9wPGNWq6OKpmIzz3hQ==} hasBin: true - dev: true /flatted@3.2.7: resolution: {integrity: sha512-5nqDSxl8nn5BSNxyR3n4I6eDmbolI6WT+QqR547RwxQapgjQBmtktdP+HTBb/a/zLsbzERTONyUB5pefh5TtjQ==} @@ -4245,7 +4284,6 @@ packages: engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0} os: [darwin] requiresBuild: true - dev: true optional: true /function-bind@1.1.1: @@ -4278,7 +4316,6 @@ packages: /gensync@1.0.0-beta.2: resolution: {integrity: sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==} engines: {node: '>=6.9.0'} - dev: true /get-caller-file@2.0.5: resolution: {integrity: sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==} @@ -4382,7 +4419,6 @@ packages: /globals@11.12.0: resolution: {integrity: sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==} engines: {node: '>=4'} - dev: true /globals@13.20.0: resolution: {integrity: sha512-Qg5QtVkCy/kv3FUSlu4ukeZDVf9ee0iXLAUYX13gbR17bnejFTzr4iS9bY7kwCf1NztRNm1t91fjOiyx4CSwPQ==} @@ -4440,7 +4476,6 @@ packages: /has-flag@3.0.0: resolution: {integrity: sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==} engines: {node: '>=4'} - dev: true /has-flag@4.0.0: resolution: {integrity: sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==} @@ -4630,7 +4665,6 @@ packages: engines: {node: '>=8'} dependencies: binary-extensions: 2.2.0 - dev: true /is-boolean-object@1.1.2: resolution: {integrity: sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==} @@ -4918,30 +4952,17 @@ packages: resolution: {integrity: sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==} engines: {node: '>=4'} hasBin: true - dev: true /json-schema-traverse@0.4.1: resolution: {integrity: sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==} - /json-schema-traverse@1.0.0: - resolution: {integrity: sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==} - dev: false - /json-stable-stringify-without-jsonify@1.0.1: resolution: {integrity: sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==} - /json5@1.0.2: - resolution: {integrity: sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==} - hasBin: true - dependencies: - minimist: 1.2.8 - dev: false - /json5@2.2.3: resolution: {integrity: sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==} engines: {node: '>=6'} hasBin: true - dev: true /jsonc-parser@3.2.0: resolution: {integrity: sha512-gfFQZrcTc8CnKXp6Y4/CBT3fTc0OVuDofpre4aEeEpSBPV5X5v4+Vmx+8snU7RLPrNHPKSgLxGo9YuQzz20o+w==} @@ -5025,8 +5046,8 @@ packages: resolution: {integrity: sha512-utWOt/GHzuUxnLKxB6dk81RoOeoNeHgbrXiuGk4yyF5qlRz+iIVWu56E2fqGHFrXz0QNUhLB/8nKqvRH66JKGQ==} engines: {node: '>=10'} - /lint-staged@15.0.2: - resolution: {integrity: sha512-vnEy7pFTHyVuDmCAIFKR5QDO8XLVlPFQQyujQ/STOxe40ICWqJ6knS2wSJ/ffX/Lw0rz83luRDh+ET7toN+rOw==} + /lint-staged@15.1.0: + resolution: {integrity: sha512-ZPKXWHVlL7uwVpy8OZ7YQjYDAuO5X4kMh0XgZvPNxLcCCngd0PO5jKQyy3+s4TL2EnHoIXIzP1422f/l3nZKMw==} engines: {node: '>=18.12.0'} hasBin: true dependencies: @@ -5039,7 +5060,7 @@ packages: micromatch: 4.0.5 pidtree: 0.6.0 string-argv: 0.3.2 - yaml: 2.3.3 + yaml: 2.3.4 transitivePeerDependencies: - supports-color @@ -5083,7 +5104,6 @@ packages: /lodash.memoize@4.1.2: resolution: {integrity: sha512-t7j+NzmgnQzTAYXcsHYLgimltOV1MXHtlOWf6GjL9Kj8GK5FInw5JotxvbOs+IvV1/Dzo04/fCGfLVs7aXb4Ag==} - dev: true /lodash.merge@4.6.2: resolution: {integrity: sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==} @@ -5128,7 +5148,6 @@ packages: resolution: {integrity: sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==} dependencies: yallist: 3.1.1 - dev: true /lru-cache@6.0.0: resolution: {integrity: sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==} @@ -5227,10 +5246,6 @@ packages: brace-expansion: 2.0.1 dev: true - /minimist@1.2.8: - resolution: {integrity: sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==} - dev: false - /minipass@3.3.6: resolution: {integrity: sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==} engines: {node: '>=8'} @@ -5308,6 +5323,11 @@ packages: pkg-types: 1.0.3 ufo: 1.3.1 + /modern-ahocorasick@1.0.0: + resolution: {integrity: sha512-vg0ZzTD3tmcIPUMpuJKfcCpoxzsQu9ka/jAAGQLdrq2yLu/jUUMq/IWw9578q8QE0bNrQHonaFHmvqrhTGpk4g==} + requiresBuild: true + dev: true + /mri@1.2.0: resolution: {integrity: sha512-tzzskb3bG8LvYGFF/mDTpq3jpI6Q9wc3LEmBaghu+DdCssd1FakN7Bc0hVNmEyGq1bq3RgfkCb3cmQLpNPOroA==} engines: {node: '>=4'} @@ -5315,10 +5335,6 @@ packages: /ms@2.1.2: resolution: {integrity: sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==} - /ms@2.1.3: - resolution: {integrity: sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==} - dev: false - /nanoid@3.3.6: resolution: {integrity: sha512-BGcqMMJuToF7i1rt+2PWSNVnWIkGCU78jBG3RxO/bZlnZPK2Cmi2QaffxGO/2RvWi9sL+FAiRiXMgsyxQ1DIDA==} engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1} @@ -5349,12 +5365,10 @@ packages: /node-releases@2.0.13: resolution: {integrity: sha512-uYr7J37ae/ORWdZeQ1xxMJe3NtdmqMC/JZK+geofDrkLUApKRHPd18/TxtBOJ4A0/+uUIliorNrfYV6s1b02eQ==} - dev: true /normalize-path@3.0.0: resolution: {integrity: sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==} engines: {node: '>=0.10.0'} - dev: true /npm-run-path@4.0.1: resolution: {integrity: sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==} @@ -5374,6 +5388,11 @@ packages: boolbase: 1.0.0 dev: true + /object-assign@4.1.1: + resolution: {integrity: sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==} + engines: {node: '>=0.10.0'} + dev: false + /object-inspect@1.12.3: resolution: {integrity: sha512-geUvdk7c+eizMNUDkRpW1wJwgfOiOeHbxBR/hLXK1aT6zmVSO0jsQcs7fj6MGw89jC/cjGfLcNOrtMYtGqm81g==} dev: false @@ -5411,13 +5430,11 @@ packages: es-abstract: 1.22.1 dev: false - /object.groupby@1.0.1: - resolution: {integrity: sha512-HqaQtqLnp/8Bn4GL16cj+CUYbnpe1bh0TtEaWvybszDG4tgxCJuRpV8VGuvNaI1fAnI4lUJzDG55MXcOH4JZcQ==} + /object.hasown@1.1.3: + resolution: {integrity: sha512-fFI4VcYpRHvSLXxP7yiZOMAd331cPfd2p7PFDVbgUsYOfCT3tICVqXWngbjr4m49OvsBwUBQ6O2uQoJvy3RexA==} dependencies: - call-bind: 1.0.2 - define-properties: 1.2.0 + define-properties: 1.2.1 es-abstract: 1.22.1 - get-intrinsic: 1.2.1 dev: false /object.values@1.1.6: @@ -5448,7 +5465,6 @@ packages: /ohash@1.1.3: resolution: {integrity: sha512-zuHHiGTYTA1sYJ/wZN+t5HKZaH23i4yI1HMwbuXm24Nid7Dv0KcuRlKoNKS9UNfAVSBlnGLcuQrnOKWOZoEGaw==} - dev: true /once@1.4.0: resolution: {integrity: sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==} @@ -5580,7 +5596,6 @@ packages: /perfect-debounce@1.0.0: resolution: {integrity: sha512-xCy9V055GLEqoFaHoC1SoLIaLmWctgCUaBaWxDZ7/Zx4CTyX7cJQLJOok/orfjZAh9kEYpjJa4d0KcJmCbctZA==} - dev: true /picocolors@1.0.0: resolution: {integrity: sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==} @@ -6021,6 +6036,14 @@ packages: react-is: 18.2.0 dev: true + /prop-types@15.8.1: + resolution: {integrity: sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg==} + dependencies: + loose-envify: 1.4.0 + object-assign: 4.1.1 + react-is: 16.13.1 + dev: false + /proxy-from-env@1.1.0: resolution: {integrity: sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==} dev: true @@ -6038,7 +6061,10 @@ packages: defu: 6.1.3 destr: 2.0.2 flat: 5.0.2 - dev: true + + /react-is@16.13.1: + resolution: {integrity: sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==} + dev: false /react-is@18.2.0: resolution: {integrity: sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w==} @@ -6056,7 +6082,6 @@ packages: engines: {node: '>=8.10.0'} dependencies: picomatch: 2.3.1 - dev: true /reflect.getprototypeof@1.0.4: resolution: {integrity: sha512-ECkTw8TmJwW60lOTR+ZkODISW6RQ8+2CL3COqtiJKLd6MmB45hN51HprHFziKLGkAuTGQhBb91V8cy+KHlaCjw==} @@ -6091,11 +6116,6 @@ packages: engines: {node: '>=0.10.0'} dev: true - /require-from-string@2.0.2: - resolution: {integrity: sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==} - engines: {node: '>=0.10.0'} - dev: false - /require-like@0.1.2: resolution: {integrity: sha512-oyrU88skkMtDdauHDuKVrgR+zuItqr6/c//FXzvmxRGMexSDc6hNvJInGW3LL46n+8b50RykrvwSUIIQH2LQ5A==} dev: true @@ -6115,6 +6135,16 @@ packages: is-core-module: 2.13.1 path-parse: 1.0.7 supports-preserve-symlinks-flag: 1.0.0 + dev: true + + /resolve@2.0.0-next.5: + resolution: {integrity: sha512-U7WjGVG9sH8tvjW5SmGbQuui75FiyjAX72HX15DwBBwF9dNiQZRQAg9nnPhYy+TUnE0+VcrttuvNI8oSxZcocA==} + hasBin: true + dependencies: + is-core-module: 2.13.1 + path-parse: 1.0.7 + supports-preserve-symlinks-flag: 1.0.0 + dev: false /restore-cursor@4.0.0: resolution: {integrity: sha512-I9fPXU9geO9bHOt9pHHOhOkYerIMsmVaWB0rA2AI9ERh/+x/i7MV5HKBNrg+ljO5eoPVgCcnFuRjJ9uH6I/3eg==} @@ -6392,6 +6422,20 @@ packages: emoji-regex: 9.2.2 strip-ansi: 7.1.0 + /string.prototype.matchall@4.0.10: + resolution: {integrity: sha512-rGXbGmOEosIQi6Qva94HUjgPs9vKW+dkG7Y8Q5O2OYkWL6wFaTRZO8zM4mhP94uX55wgyrXzfS2aGtGzUL7EJQ==} + dependencies: + call-bind: 1.0.2 + define-properties: 1.2.1 + es-abstract: 1.22.1 + get-intrinsic: 1.2.1 + has-symbols: 1.0.3 + internal-slot: 1.0.5 + regexp.prototype.flags: 1.5.0 + set-function-name: 2.0.1 + side-channel: 1.0.4 + dev: false + /string.prototype.trim@1.2.7: resolution: {integrity: sha512-p6TmeT1T3411M8Cgg9wBTMRtY2q9+PNy9EV1i2lIXUN/btt763oIfxwN3RR8VU6wHX8j/1CFy0L+YuThm6bgOg==} engines: {node: '>= 0.4'} @@ -6429,11 +6473,6 @@ packages: dependencies: ansi-regex: 6.0.1 - /strip-bom@3.0.0: - resolution: {integrity: sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==} - engines: {node: '>=4'} - dev: false - /strip-final-newline@2.0.0: resolution: {integrity: sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==} engines: {node: '>=6'} @@ -6474,7 +6513,6 @@ packages: engines: {node: '>=4'} dependencies: has-flag: 3.0.0 - dev: true /supports-color@7.2.0: resolution: {integrity: sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==} @@ -6592,7 +6630,6 @@ packages: /to-fast-properties@2.0.0: resolution: {integrity: sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==} engines: {node: '>=4'} - dev: true /to-regex-range@5.0.1: resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==} @@ -6649,20 +6686,25 @@ packages: yn: 3.1.1 dev: true - /tsconfig-paths@3.14.2: - resolution: {integrity: sha512-o/9iXgCYc5L/JxCHPe3Hvh8Q/2xm5Z+p18PESBU6Ff33695QnCHBEjcytY2q19ua7Mbl/DavtBOLq+oG0RCL+g==} - dependencies: - '@types/json5': 0.0.29 - json5: 1.0.2 - minimist: 1.2.8 - strip-bom: 3.0.0 + /tslib@1.14.1: + resolution: {integrity: sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==} dev: false /tslib@2.6.1: resolution: {integrity: sha512-t0hLfiEKfMUoqhG+U1oid7Pva4bbDPHYfJNiB7BiIjRkj1pyC++4N3huJfqY6aRH6VTB0rvtzQwjM4K6qpfOig==} - /tsx@4.0.0: - resolution: {integrity: sha512-jd3C5kw9tR68gtvqHUYo/2IwxaA46/CyKvcVQ4DsKRAPb19/vWgl7zF9mYNjFRY6KcGKiwne41RU91ll31IggQ==} + /tsutils@3.21.0(typescript@5.2.2): + resolution: {integrity: sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==} + engines: {node: '>= 6'} + peerDependencies: + typescript: '>=2.8.0 || >= 3.2.0-dev || >= 3.3.0-dev || >= 3.4.0-dev || >= 3.5.0-dev || >= 3.6.0-dev || >= 3.6.0-beta || >= 3.7.0-dev || >= 3.7.0-beta' + dependencies: + tslib: 1.14.1 + typescript: 5.2.2 + dev: false + + /tsx@4.1.1: + resolution: {integrity: sha512-zyPn5BFMB0TB5kMLbYPNx4x/oL/oSlaecdKCv6WeJ0TeSEfx8RTJWjuB5TZ2dSewktgfBsBO/HNA9mrMWqLXMA==} engines: {node: '>=18.0.0'} hasBin: true dependencies: @@ -6874,15 +6916,6 @@ packages: - supports-color dev: true - /unconfig@0.3.11: - resolution: {integrity: sha512-bV/nqePAKv71v3HdVUn6UefbsDKQWRX+bJIkiSm0+twIds6WiD2bJLWWT3i214+J/B4edufZpG2w7Y63Vbwxow==} - dependencies: - '@antfu/utils': 0.7.6 - defu: 6.1.3 - jiti: 1.21.0 - mlly: 1.4.2 - dev: false - /undici-types@5.26.5: resolution: {integrity: sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA==} dev: true @@ -6931,7 +6964,17 @@ packages: browserslist: 4.21.9 escalade: 3.1.1 picocolors: 1.0.0 - dev: true + + /update-browserslist-db@1.0.13(browserslist@4.22.1): + resolution: {integrity: sha512-xebP81SNcPuNpPP3uzeW1NYXxI3rxyJzF3pD6sH4jE7o/IX+WtSpwnVU+qIsDPyk0d3hmFQ7mjqc6AtV604hbg==} + hasBin: true + peerDependencies: + browserslist: '>= 4.21.0' + dependencies: + browserslist: 4.22.1 + escalade: 3.1.1 + picocolors: 1.0.0 + dev: false /uri-js@4.4.1: resolution: {integrity: sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==} @@ -6999,7 +7042,7 @@ packages: dependencies: cac: 6.7.14 debug: 4.3.4 - mlly: 1.4.0 + mlly: 1.4.2 pathe: 1.1.1 picocolors: 1.0.0 vite: 4.5.0(@types/node@20.9.0) @@ -7276,7 +7319,6 @@ packages: /yallist@3.1.1: resolution: {integrity: sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==} - dev: true /yallist@4.0.0: resolution: {integrity: sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==} @@ -7289,6 +7331,11 @@ packages: /yaml@2.3.3: resolution: {integrity: sha512-zw0VAJxgeZ6+++/su5AFoqBbZbrEakwu+X0M5HmcwUiBL7AzcuPKjj5we4xfQLp78LkEMpD0cOnUhmgOVy3KdQ==} engines: {node: '>= 14'} + dev: true + + /yaml@2.3.4: + resolution: {integrity: sha512-8aAvwVUSHpfEqTQ4w/KMlf3HcRdt50E5ODIQJBw1fQ5RL34xabzxtUlzTXVqc4rkZsPbvrXKWnABCD7kWSmocA==} + engines: {node: '>= 14'} /yargs-parser@21.1.1: resolution: {integrity: sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==} diff --git a/turbo.json b/turbo.json index 364fb611..5801ee38 100644 --- a/turbo.json +++ b/turbo.json @@ -11,7 +11,7 @@ "outputs": ["coverage/**"] }, "format": {}, - "verify": {}, + "test:types": {}, "dev": {}, "precommit": {} } From cdbbc629e5c833ba73427eb4e27a46d5e12117b9 Mon Sep 17 00:00:00 2001 From: Salama Ashoush Date: Mon, 13 Nov 2023 02:14:10 +0100 Subject: [PATCH 03/16] :sparkles: Add toArray,deepMerge utils --- packages/utils/src/array.ts | 6 ++++++ packages/utils/src/index.ts | 2 ++ packages/utils/src/merge.ts | 1 + 3 files changed, 9 insertions(+) create mode 100644 packages/utils/src/array.ts create mode 100644 packages/utils/src/merge.ts diff --git a/packages/utils/src/array.ts b/packages/utils/src/array.ts new file mode 100644 index 00000000..b2e0c549 --- /dev/null +++ b/packages/utils/src/array.ts @@ -0,0 +1,6 @@ +export function toArray(a: T | T[] | undefined | null): T[] { + if (a == null) { + return []; + } + return Array.isArray(a) ? a : [a]; +} diff --git a/packages/utils/src/index.ts b/packages/utils/src/index.ts index 851f3790..f4bd6499 100644 --- a/packages/utils/src/index.ts +++ b/packages/utils/src/index.ts @@ -3,9 +3,11 @@ export { default as camelCase } from 'just-camel-case'; export { default as get } from 'just-safe-get'; export { default as set } from 'just-safe-set'; +export * from './array'; export * from './clone'; export * from './error'; export * from './id'; export * from './is'; export * from './math'; +export * from './merge'; export * from './types'; diff --git a/packages/utils/src/merge.ts b/packages/utils/src/merge.ts new file mode 100644 index 00000000..671e14bb --- /dev/null +++ b/packages/utils/src/merge.ts @@ -0,0 +1 @@ +export { default as deepMerge } from 'deepmerge'; From 6dc632e1ae31d0c09e5c5b4bd153359eda20c273 Mon Sep 17 00:00:00 2001 From: Salama Ashoush Date: Mon, 13 Nov 2023 02:14:47 +0100 Subject: [PATCH 04/16] :recycle: Update CLI config loading and split commands --- apps/cli/bin/design-sync.mjs | 0 apps/cli/build.config.ts | 4 +- apps/cli/design-sync.config.js | 8 +++ apps/cli/src/cli.ts | 17 ++++++ apps/cli/src/commands/init.ts | 81 ++++++++++++++++++++++++++ apps/cli/src/commands/sync.ts | 56 ++++++++++++++++++ apps/cli/src/config.ts | 58 +++++------------- apps/cli/src/configTemplate.ts | 36 ++++++++++++ apps/cli/src/fetch.ts | 19 ++++++ apps/cli/src/index.ts | 12 ++++ apps/cli/src/logger.ts | 2 +- apps/cli/src/main.ts | 59 ------------------- apps/cli/src/manager.ts | 66 +++++++++++++++++++++ apps/cli/src/plugins/index.ts | 1 + apps/cli/src/plugins/vanillaExtract.ts | 7 ++- apps/cli/src/types.ts | 13 +++++ apps/cli/src/utils.ts | 46 ++++----------- apps/cli/src/validator/validate.ts | 14 ----- apps/cli/test/manager.test.ts | 6 ++ 19 files changed, 345 insertions(+), 160 deletions(-) mode change 100644 => 100755 apps/cli/bin/design-sync.mjs create mode 100644 apps/cli/design-sync.config.js create mode 100755 apps/cli/src/cli.ts create mode 100644 apps/cli/src/commands/init.ts create mode 100644 apps/cli/src/commands/sync.ts create mode 100644 apps/cli/src/configTemplate.ts create mode 100644 apps/cli/src/fetch.ts create mode 100644 apps/cli/src/index.ts delete mode 100755 apps/cli/src/main.ts create mode 100644 apps/cli/src/manager.ts create mode 100644 apps/cli/src/plugins/index.ts create mode 100644 apps/cli/src/types.ts delete mode 100644 apps/cli/src/validator/validate.ts create mode 100644 apps/cli/test/manager.test.ts diff --git a/apps/cli/bin/design-sync.mjs b/apps/cli/bin/design-sync.mjs old mode 100644 new mode 100755 diff --git a/apps/cli/build.config.ts b/apps/cli/build.config.ts index 434ed542..6d640038 100644 --- a/apps/cli/build.config.ts +++ b/apps/cli/build.config.ts @@ -1,9 +1,9 @@ import { defineBuildConfig } from 'unbuild'; export default defineBuildConfig({ - entries: ['src/main'], + entries: ['src/index.ts', 'src/cli.ts'], rollup: { - inlineDependencies: true, + emitCJS: true, }, clean: true, declaration: true, diff --git a/apps/cli/design-sync.config.js b/apps/cli/design-sync.config.js new file mode 100644 index 00000000..65bf8e20 --- /dev/null +++ b/apps/cli/design-sync.config.js @@ -0,0 +1,8 @@ +import { defineConfig, vanillaExtractPlugin } from '.'; + +export default defineConfig({ + repo: 'gh:salamaashoush/design-sync-examples#main', + out: 'generated', + tokensPath: 'tokens.json', + plugins: [vanillaExtractPlugin()], +}); diff --git a/apps/cli/src/cli.ts b/apps/cli/src/cli.ts new file mode 100755 index 00000000..afefecdd --- /dev/null +++ b/apps/cli/src/cli.ts @@ -0,0 +1,17 @@ +#!/usr/bin/env -S npx tsx +import cliPkg from '../package.json'; + +import { defineCommand, runMain } from 'citty'; + +const main = defineCommand({ + meta: { + name: cliPkg.name, + description: 'DesignSync CLI', + version: cliPkg.version, + }, + subCommands: { + sync: () => import('./commands/sync').then((r) => r.default), + init: () => import('./commands/init').then((r) => r.default), + }, +}); +runMain(main); diff --git a/apps/cli/src/commands/init.ts b/apps/cli/src/commands/init.ts new file mode 100644 index 00000000..f4f288b8 --- /dev/null +++ b/apps/cli/src/commands/init.ts @@ -0,0 +1,81 @@ +import { defineCommand } from 'citty'; +import { existsSync } from 'fs'; +import { writeFile } from 'fs/promises'; +import { join } from 'path'; +import { ConfigTemplateOptions, generateConfigTemplate } from '../configTemplate'; +import { logger } from '../logger'; + +async function configPrompt() { + const repo = await logger.prompt('What is the url of your tokens git repo?', { + type: 'text', + placeholder: 'gh:username/repo#branch', + default: 'gh:username/repo#branch', + }); + + const tokensPath = await logger.prompt('Where are your tokens located?', { + type: 'text', + placeholder: 'tokens.json', + default: 'tokens.json', + }); + + const out = await logger.prompt('Where would you like to output your tokens?', { + type: 'text', + placeholder: 'src/design-sync', + default: 'src/design-sync', + }); + + const plugin = await logger.prompt('Which plugin would you like to use?', { + type: 'select', + options: [ + 'vanilla-extract', + 'styled-components', + 'emotion', + 'tailwindcss', + 'stitches', + 'css-modules', + 'css', + 'typescript', + ], + initial: 'vanilla-extract', + }); + + return { repo, tokensPath, out, plugin }; +} + +export default defineCommand({ + meta: { + name: 'init', + description: 'Init design sync config', + }, + args: { + cwd: { + type: 'string', + description: 'path to cwd', + default: process.cwd(), + }, + default: { + type: 'boolean', + description: 'use default config', + alias: 'y', + default: false, + }, + }, + async run({ args }) { + let config: ConfigTemplateOptions = { + repo: 'gh:username/repo#branch', + out: 'src/design-sync', + tokensPath: 'tokens.json', + plugin: 'vanilla-extract', + }; + + if (!args.default) { + config = await configPrompt(); + } + const isCJS = typeof require !== 'undefined'; + const isTypescript = existsSync(`${args.cwd}/tsconfig.json`); + const template = generateConfigTemplate(config, isCJS); + const configPath = isTypescript ? 'design-sync.config.ts' : 'design-sync.config.js'; + await writeFile(join(args.cwd, configPath), template); + logger.success(`Config file created at ${configPath}`); + }, +}); diff --git a/apps/cli/src/commands/sync.ts b/apps/cli/src/commands/sync.ts new file mode 100644 index 00000000..a18193ee --- /dev/null +++ b/apps/cli/src/commands/sync.ts @@ -0,0 +1,56 @@ +import { defineCommand } from 'citty'; +import { resolveConfig } from '../config'; +import { fetchTokens } from '../fetch'; +import { logger } from '../logger'; +import { TokensManager } from '../manager'; + +export default defineCommand({ + meta: { + name: 'sync', + description: 'Sync tokens from the git repo', + }, + args: { + repo: { + type: 'positional', + description: 'git repo url', + valueHint: 'gh:username/repo#branch', + required: false, + }, + tokensPath: { + type: 'string', + description: 'path to tokens file in repo', + }, + out: { + type: 'string', + description: 'path to output file', + }, + config: { + type: 'string', + description: 'path to config file', + }, + auth: { + type: 'string', + description: 'git provider auth token', + }, + }, + async run({ args }) { + const config = await resolveConfig(); + const tokensManager = new TokensManager(config); + const { repo, tokensPath, auth, plugins = [] } = config; + for (const plugin of plugins) { + logger.debug(`loading plugin ${plugin.name}`); + tokensManager.use(plugin); + } + + try { + const tokensObj = await fetchTokens(repo, tokensPath, auth); + tokensManager.setTokens(tokensObj); + logger.debug('processing tokens'); + await tokensManager.run(); + logger.debug('tokens processed successfully'); + } catch (error) { + // eslint-disable-next-line no-console + logger.error(error); + } + }, +}); diff --git a/apps/cli/src/config.ts b/apps/cli/src/config.ts index d395b2df..978ad61e 100644 --- a/apps/cli/src/config.ts +++ b/apps/cli/src/config.ts @@ -1,47 +1,15 @@ -import _debug from 'debug'; -import deepmerge from 'deepmerge'; -import process from 'node:process'; -import { createConfigLoader } from 'unconfig'; -import type { CommonOptions } from './types'; -import { toArray } from './utils/toArray'; - -const debug = _debug('taze:config'); - -export const LOGLEVELS = ['debug', 'info', 'warn', 'error', 'silent']; - -function normalizeConfig(options: T) { - options.ignorePaths = toArray(options.ignorePaths); - options.exclude = toArray(options.exclude); - options.include = toArray(options.include); - - if (options.silent) options.loglevel = 'silent'; - - return options; -} - -export async function resolveConfig(options: T): Promise { - options = normalizeConfig(options); - - const loader = createConfigLoader({ - sources: [ - { - files: ['design-sync.config'], - }, - { - files: ['.design-sync'], - extensions: ['json', ''], - }, - ], - cwd: options.cwd || process.cwd(), - merge: false, +import { loadConfig } from 'c12'; +import { DesignSyncConfig } from './types'; + +const defaults = { + repo: '', + out: 'dist', + tokensPath: 'tokens.json', +}; +export async function resolveConfig() { + const configResult = await loadConfig({ + name: 'design-sync', + defaults, }); - - const config = await loader.load(); - - if (!config.sources.length) return options; - - debug(`config file found ${config.sources[0]}`); - const configOptions = normalizeConfig(config.config); - - return deepmerge(configOptions, options) as T; + return configResult.config as DesignSyncConfig; } diff --git a/apps/cli/src/configTemplate.ts b/apps/cli/src/configTemplate.ts new file mode 100644 index 00000000..cef89c9d --- /dev/null +++ b/apps/cli/src/configTemplate.ts @@ -0,0 +1,36 @@ +import { camelCase } from '@design-sync/utils'; + +export interface ConfigTemplateOptions { + out: string; + repo: string; + tokensPath: string; + plugin: string; +} + +export function generateCJSConfigTemplate({ out, repo, tokensPath, plugin }: ConfigTemplateOptions) { + return `const { defineConfig, ${camelCase(plugin)} } = require('@design-sync/sync'); + +module.exports = defineConfig({ + repo: "${repo}", + out: "${out}", + tokensPath: "${tokensPath}", + plugins: [${camelCase(plugin)}()], +});`; +} + +export function generateESMConfigTemplate({ out, repo, tokensPath, plugin }: ConfigTemplateOptions) { + return `import { defineConfig, ${camelCase(plugin)} } from '@design-sync/sync'; + +export default defineConfig({ + repo: "${repo}", + out: "${out}", + tokensPath: "${tokensPath}", + plugins: [${camelCase(plugin)}()], +});`; +} + +export function generateConfigTemplate({ out, repo, tokensPath, plugin }: ConfigTemplateOptions, isCJS: boolean) { + return isCJS + ? generateCJSConfigTemplate({ out, repo, tokensPath, plugin }) + : generateESMConfigTemplate({ out, repo, tokensPath, plugin }); +} diff --git a/apps/cli/src/fetch.ts b/apps/cli/src/fetch.ts new file mode 100644 index 00000000..a6cc1433 --- /dev/null +++ b/apps/cli/src/fetch.ts @@ -0,0 +1,19 @@ +import { downloadTemplate } from 'giget'; +import { mkdtemp, readFile } from 'node:fs/promises'; +import { tmpdir } from 'node:os'; +import { join } from 'node:path'; +import { logger } from './logger'; + +export async function fetchTokens(repo: string, filePath: string, auth?: string) { + logger.debug(`fetching tokens from ${repo}`); + const tmpDir = await mkdtemp(join(tmpdir(), 'tokenize-')); + const { dir } = await downloadTemplate(repo, { + cwd: tmpDir, + dir: tmpDir, + auth, + }); + logger.debug(`tokens downloaded to ${dir}`); + const tokens = await readFile(join(dir, filePath), 'utf-8'); + logger.debug(`passing tokens to the manager`); + return JSON.parse(tokens); +} diff --git a/apps/cli/src/index.ts b/apps/cli/src/index.ts new file mode 100644 index 00000000..56461b31 --- /dev/null +++ b/apps/cli/src/index.ts @@ -0,0 +1,12 @@ +import type { DesignSyncConfig } from './types'; + +export * from './fetch'; +export * from './logger'; +export * from './manager'; +export * from './plugins'; +export * from './types'; +export * from './utils'; + +export function defineConfig(config: Partial) { + return config; +} diff --git a/apps/cli/src/logger.ts b/apps/cli/src/logger.ts index 78e6fe58..761fa8b5 100644 --- a/apps/cli/src/logger.ts +++ b/apps/cli/src/logger.ts @@ -1,3 +1,3 @@ import { consola } from 'consola'; -export const logger = consola.withTag('Tokenize'); +export const logger = consola.withTag('DesignSync'); diff --git a/apps/cli/src/main.ts b/apps/cli/src/main.ts deleted file mode 100755 index bf7b58b0..00000000 --- a/apps/cli/src/main.ts +++ /dev/null @@ -1,59 +0,0 @@ -#!/usr/bin/env -S npx tsx - -import { defineCommand, runMain } from 'citty'; -import example from '../example.json'; -import { TokensManager } from './manager/manager'; -import { vanillaExtractPlugin } from './plugins/vanillaExtract'; -import { loadConfig } from './utils'; - -const main = defineCommand({ - meta: { - name: 'tokenize-cli', - version: '1.0.0', - description: 'Download and process design tokens from gitlab repo', - }, - args: { - repo: { - type: 'positional', - description: 'git repo url', - valueHint: 'gh:username/repo#branch', - required: false, - }, - tokensPath: { - type: 'string', - description: 'path to tokens file in repo', - }, - out: { - type: 'string', - description: 'path to output file', - }, - config: { - type: 'string', - description: 'path to config file', - }, - auth: { - type: 'string', - description: 'git provider auth token', - }, - }, - async run({ args }) { - const config = await loadConfig(args, args.config); - const tokensManager = new TokensManager(config); - try { - // const tokensObj = await fetchTokens(repo, tokensPath, auth); - tokensManager.use(vanillaExtractPlugin()); - tokensManager.setTokens(example); - await tokensManager.run(); - // console.log('tokens processed successfully'); - // const outputContent = `// autogenerated from figma and gitlab, please avoid modifying it manually - // export const TOKENS = ${JSON.stringify(finalTokens, null, 2)} as const;`; - // await writeFile(out, await formatTextWithPrettier(outputContent), 'utf-8'); - // console.log('tokens saved successfully'); - } catch (error) { - // eslint-disable-next-line no-console - console.error(error); - } - }, -}); - -runMain(main); diff --git a/apps/cli/src/manager.ts b/apps/cli/src/manager.ts new file mode 100644 index 00000000..3deb7967 --- /dev/null +++ b/apps/cli/src/manager.ts @@ -0,0 +1,66 @@ +import { TokenWalkerFn, TokensWalker } from '@design-sync/w3c-dtfm'; +import { existsSync } from 'node:fs'; +import { mkdir, rm, writeFile } from 'node:fs/promises'; +import { join } from 'node:path'; +import { DesignSyncConfig } from './types'; +import { formatTextWithPrettier } from './utils'; + +export interface TokensManagerPlugin { + name: string; + start?(manager: TokensManager): Promise | void; + walk: TokenWalkerFn; + end?(manager: TokensManager): Promise | void; +} + +export class TokensManager { + private plugins: TokensManagerPlugin[] = []; + private walker = new TokensWalker(); + + constructor(private config: DesignSyncConfig) {} + + setTokens(tokens: Record) { + this.walker.setTokens(tokens); + } + + getTokens() { + return this.walker.getTokens(); + } + + getModes() { + return this.walker.getModes(); + } + + async writeFile(path: string, content: string) { + // check if the folder exists + const folderPath = path.split('/').slice(0, -1).join('/'); + if (!existsSync(folderPath)) { + await mkdir(folderPath, { recursive: true }); + } + const formattedContent = await formatTextWithPrettier(content); + return writeFile(path, formattedContent); + } + + async run() { + // clean the dist folder + const outPath = join(process.cwd(), this.config.out); + if (existsSync(outPath)) { + await rm(outPath, { recursive: true }); + } + // run the plugins + await Promise.all( + this.plugins.map(async (plugin) => { + await plugin.start?.(this); + this.walker.walkTokens(plugin.walk); + return plugin.end?.(this); + }), + ); + } + + use(plugin: TokensManagerPlugin) { + this.plugins.push(plugin); + } + + getConfig() { + return this.config; + } +} diff --git a/apps/cli/src/plugins/index.ts b/apps/cli/src/plugins/index.ts new file mode 100644 index 00000000..1a58304b --- /dev/null +++ b/apps/cli/src/plugins/index.ts @@ -0,0 +1 @@ +export * from './vanillaExtract'; diff --git a/apps/cli/src/plugins/vanillaExtract.ts b/apps/cli/src/plugins/vanillaExtract.ts index 134324a0..04decd92 100644 --- a/apps/cli/src/plugins/vanillaExtract.ts +++ b/apps/cli/src/plugins/vanillaExtract.ts @@ -11,7 +11,7 @@ import { typographyToCssStyle, } from '@design-sync/w3c-dtfm'; import { join } from 'path'; -import { TokensManager, TokensManagerPlugin } from '../manager/manager'; +import { TokensManager, TokensManagerPlugin } from '../manager'; function getStyleName(path: string) { // get the last part of the path and camelCase it @@ -25,6 +25,7 @@ function createTypographyStyle(tokenValue: unknown, path: string, varsName = 'va } const styleName = getStyleName(path); for (const [key, value] of Object.entries(style)) { + // eslint-disable-next-line @typescript-eslint/no-explicit-any (style as any)[key] = processPrimitiveValue(value, varsName); } return `export const ${styleName} = style(${serializeObject(style)})\n`; @@ -37,9 +38,9 @@ interface VanillaExtractPluginConfig { export class VanillaExtractPlugin implements TokensManagerPlugin { public name = 'vanilla-extract'; - private tokens: Record> = {}; + private tokens: Record> = {}; private styles: string[] = []; - private tokensContract: Record = {}; + private tokensContract: Record = {}; private outPath: string = process.cwd(); private manager!: TokensManager; diff --git a/apps/cli/src/types.ts b/apps/cli/src/types.ts new file mode 100644 index 00000000..eb3182ff --- /dev/null +++ b/apps/cli/src/types.ts @@ -0,0 +1,13 @@ +import { TokensWalkerExtension } from '@design-sync/w3c-dtfm'; +import { TokensManagerPlugin } from './manager'; + +export interface DesignSyncConfig { + repo: string; + tokensPath: string; + out: string; + auth?: string; + cwd?: string; + plugins?: TokensManagerPlugin[]; + schemaExtensions?: TokensWalkerExtension[]; + prettify?: boolean; +} diff --git a/apps/cli/src/utils.ts b/apps/cli/src/utils.ts index 7b927ee4..b535a11d 100644 --- a/apps/cli/src/utils.ts +++ b/apps/cli/src/utils.ts @@ -1,41 +1,15 @@ -import { existsSync } from 'node:fs'; -import { readFile } from 'node:fs/promises'; -import { join } from 'node:path'; import prettier from 'prettier'; export async function formatTextWithPrettier(text: string, parser = 'typescript') { - const config = await prettier.resolveConfig(join(__dirname, '../../../.prettierrc.js')); - return prettier.format(text, { ...config, parser }); -} - -export interface CliConfig { - repo: string; - tokensPath: string; - out: string; - auth?: string; -} - -const defaultConfig: CliConfig = { - repo: '', - tokensPath: 'tokens.json', - out: 'dist', - auth: process.env.GIGET_AUTH, -}; - -export async function loadConfig(argv: Partial, configPath = './tokenize.cli.json'): Promise { - configPath = join(process.cwd(), configPath); - const configExists = existsSync(configPath); - let config = defaultConfig; - if (configExists) { - const configFileContent = await readFile(configPath, 'utf-8'); - try { - config = JSON.parse(configFileContent) as CliConfig; - } catch (e) {} + const configFile = await prettier.resolveConfigFile(); + + let config: prettier.Options = {}; + if (configFile) { + const loadedConfig = await prettier.resolveConfig(configFile); + if (loadedConfig) { + config = loadedConfig; + } } - return { - repo: argv.repo || config.repo, - tokensPath: argv.tokensPath || config.tokensPath, - out: argv.out || config.out, - auth: argv.auth || config.auth, - }; + + return prettier.format(text, { ...config, parser }); } diff --git a/apps/cli/src/validator/validate.ts b/apps/cli/src/validator/validate.ts deleted file mode 100644 index d9f61cf5..00000000 --- a/apps/cli/src/validator/validate.ts +++ /dev/null @@ -1,14 +0,0 @@ -import Ajv from 'ajv'; -import schema from '../../../../packages/w3c-dtfm/schema.json'; -import { logger } from '../logger'; - -export function validate(data: unknown) { - const ajv = new Ajv(); - ajv.addKeyword('example'); - const validate = ajv.compile(schema); - const valid = validate(data); - if (!valid) { - logger.error(validate.errors); - } - return valid; -} diff --git a/apps/cli/test/manager.test.ts b/apps/cli/test/manager.test.ts new file mode 100644 index 00000000..3d666b69 --- /dev/null +++ b/apps/cli/test/manager.test.ts @@ -0,0 +1,6 @@ +import { describe, expect, it } from 'vitest'; +describe('manager', () => { + it.todo('pass', () => { + expect(true).toBe(true); + }); +}); From a86c99a0789249655bee11057c31d64b637228bf Mon Sep 17 00:00:00 2001 From: Salama Ashoush Date: Mon, 13 Nov 2023 02:15:06 +0100 Subject: [PATCH 05/16] chore(release): v0.0.1 --- packages/utils/CHANGELOG.md | 5 +++++ packages/utils/package.json | 4 ++-- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/packages/utils/CHANGELOG.md b/packages/utils/CHANGELOG.md index e69de29b..5ec6284b 100644 --- a/packages/utils/CHANGELOG.md +++ b/packages/utils/CHANGELOG.md @@ -0,0 +1,5 @@ + +## v0.0.1 + +[compare changes](https://github.com/salamaashoush/tokenize/compare/v0.0.2...v0.0.1) + diff --git a/packages/utils/package.json b/packages/utils/package.json index 83f63781..c738f056 100644 --- a/packages/utils/package.json +++ b/packages/utils/package.json @@ -1,6 +1,6 @@ { "name": "@design-sync/utils", - "version": "0.0.0", + "version": "0.0.1", "description": "Tokenize utils", "repository": "salamaashoush/tokenize", "license": "MIT", @@ -63,4 +63,4 @@ "module": "./dist/index.mjs", "types": "./dist/index.d.ts" } -} +} \ No newline at end of file From 29eae7dc92d82bd8212d53b7f8f200338f7e8abb Mon Sep 17 00:00:00 2001 From: Salama Ashoush Date: Mon, 13 Nov 2023 02:17:07 +0100 Subject: [PATCH 06/16] chore(release): v0.0.2 --- packages/utils/CHANGELOG.md | 4 ++++ packages/utils/package.json | 2 +- 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/packages/utils/CHANGELOG.md b/packages/utils/CHANGELOG.md index 5ec6284b..5efbe410 100644 --- a/packages/utils/CHANGELOG.md +++ b/packages/utils/CHANGELOG.md @@ -1,4 +1,8 @@ +## v0.0.2 + +[compare changes](https://github.com/salamaashoush/tokenize/compare/v0.0.1...v0.0.2) + ## v0.0.1 [compare changes](https://github.com/salamaashoush/tokenize/compare/v0.0.2...v0.0.1) diff --git a/packages/utils/package.json b/packages/utils/package.json index c738f056..9184ebb4 100644 --- a/packages/utils/package.json +++ b/packages/utils/package.json @@ -1,6 +1,6 @@ { "name": "@design-sync/utils", - "version": "0.0.1", + "version": "0.0.2", "description": "Tokenize utils", "repository": "salamaashoush/tokenize", "license": "MIT", From ad435c5d1f75a4b70a34d17f2315e2b05947c8d2 Mon Sep 17 00:00:00 2001 From: Salama Ashoush Date: Mon, 13 Nov 2023 02:17:38 +0100 Subject: [PATCH 07/16] chore(release): v0.0.3 --- packages/utils/CHANGELOG.md | 12 ++++++++++++ packages/utils/package.json | 2 +- 2 files changed, 13 insertions(+), 1 deletion(-) diff --git a/packages/utils/CHANGELOG.md b/packages/utils/CHANGELOG.md index 5efbe410..1980e763 100644 --- a/packages/utils/CHANGELOG.md +++ b/packages/utils/CHANGELOG.md @@ -1,4 +1,16 @@ +## v0.0.3 + +[compare changes](https://github.com/salamaashoush/tokenize/compare/v0.0.1...v0.0.3) + +### 🏡 Chore + +- **release:** V0.0.2 ([29eae7d](https://github.com/salamaashoush/tokenize/commit/29eae7d)) + +### ❤️ Contributors + +- Salama Ashoush ([@salamaashoush](http://github.com/salamaashoush)) + ## v0.0.2 [compare changes](https://github.com/salamaashoush/tokenize/compare/v0.0.1...v0.0.2) diff --git a/packages/utils/package.json b/packages/utils/package.json index 9184ebb4..4b514ad7 100644 --- a/packages/utils/package.json +++ b/packages/utils/package.json @@ -1,6 +1,6 @@ { "name": "@design-sync/utils", - "version": "0.0.2", + "version": "0.0.3", "description": "Tokenize utils", "repository": "salamaashoush/tokenize", "license": "MIT", From afee3a9aa918947af77dbdc4ab84047bbfe1cf05 Mon Sep 17 00:00:00 2001 From: Salama Ashoush Date: Mon, 13 Nov 2023 02:20:36 +0100 Subject: [PATCH 08/16] Add autofix and release workflows --- .github/workflows/autofix.yml | 26 ++++++++++++++++++++++++++ .github/workflows/release.yml | 29 +++++++++++++++++++++++++++++ 2 files changed, 55 insertions(+) create mode 100644 .github/workflows/autofix.yml create mode 100644 .github/workflows/release.yml diff --git a/.github/workflows/autofix.yml b/.github/workflows/autofix.yml new file mode 100644 index 00000000..423f8d40 --- /dev/null +++ b/.github/workflows/autofix.yml @@ -0,0 +1,26 @@ +name: autofix.ci # needed to securely identify the workflow + +on: + pull_request: + push: + branches: ['main'] + +permissions: + contents: read + +jobs: + autofix: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + - run: corepack enable + - uses: actions/setup-node@v4 + with: + node-version: 21 + cache: 'pnpm' + - run: pnpm install + - name: Fix lint issues + run: pnpm run lint:fix + - uses: autofix-ci/action@8caa572fd27b0019a65e4c695447089c8d3138b9 + with: + commit-message: 'chore: apply automated fixes' diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml new file mode 100644 index 00000000..3383f215 --- /dev/null +++ b/.github/workflows/release.yml @@ -0,0 +1,29 @@ +name: Release + +permissions: + contents: write + +on: + push: + tags: + - 'v*' + +jobs: + release: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v3 + with: + fetch-depth: 0 + + - name: Install pnpm + uses: pnpm/action-setup@v2 + + - name: Set node + uses: actions/setup-node@v3 + with: + node-version: 16.x + + - run: npx changelogithub + env: + GITHUB_TOKEN: ${{secrets.GITHUB_TOKEN}} From 8fb7726cf2f4eeb5c71521f20419e85ab5164a95 Mon Sep 17 00:00:00 2001 From: Salama Ashoush Date: Mon, 13 Nov 2023 02:29:39 +0100 Subject: [PATCH 09/16] :recycle: Refactor release scripts in package.json --- apps/cli/package.json | 2 +- packages/utils/package.json | 4 ++-- packages/w3c-dtfm/package.json | 2 +- packages/w3c-dtfm/src/culori.ts | 2 +- packages/w3c-dtfm/src/normalize/typography.ts | 2 ++ packages/w3c-dtfm/src/walker/walker.ts | 15 +++++++++------ 6 files changed, 16 insertions(+), 11 deletions(-) diff --git a/apps/cli/package.json b/apps/cli/package.json index 60339018..22090e21 100644 --- a/apps/cli/package.json +++ b/apps/cli/package.json @@ -17,7 +17,7 @@ "lint": "eslint --cache --ext .ts,.js,.mjs,.cjs . && prettier -c src test", "lint:fix": "eslint --cache --ext .ts,.js,.mjs,.cjs . --fix && prettier -c src test -w", "prepack": "pnpm run build", - "release": "pnpm test && changelogen --release && pnpm publish && git push --follow-tags", + "release": "pnpm test && pnpm publish", "test": "pnpm lint && pnpm test:types && vitest run --coverage", "test:types": "tsc --noEmit --skipLibCheck", "precommit": "lint-staged" diff --git a/packages/utils/package.json b/packages/utils/package.json index 4b514ad7..8eedd018 100644 --- a/packages/utils/package.json +++ b/packages/utils/package.json @@ -18,7 +18,7 @@ "lint": "eslint --cache --ext .ts,.js,.mjs,.cjs . && prettier -c src test", "lint:fix": "eslint --cache --ext .ts,.js,.mjs,.cjs . --fix && prettier -c src test -w", "prepack": "pnpm run build", - "release": "pnpm test && changelogen --release && pnpm publish && git push --follow-tags", + "release": "pnpm test && pnpm publish", "test": "pnpm lint && pnpm test:types && vitest run --coverage", "test:types": "tsc --noEmit --skipLibCheck", "precommit": "lint-staged" @@ -63,4 +63,4 @@ "module": "./dist/index.mjs", "types": "./dist/index.d.ts" } -} \ No newline at end of file +} diff --git a/packages/w3c-dtfm/package.json b/packages/w3c-dtfm/package.json index 09895ff6..bce1b7b1 100644 --- a/packages/w3c-dtfm/package.json +++ b/packages/w3c-dtfm/package.json @@ -18,7 +18,7 @@ "lint": "eslint --cache --ext .ts,.js,.mjs,.cjs . && prettier -c src test", "lint:fix": "eslint --cache --ext .ts,.js,.mjs,.cjs . --fix && prettier -c src test -w", "prepack": "pnpm run build", - "release": "pnpm test && changelogen --release && pnpm publish && git push --follow-tags", + "release": "pnpm test && pnpm publish", "test": "pnpm lint && pnpm test:types && vitest run --coverage", "test:types": "tsc --noEmit --skipLibCheck", "precommit": "lint-staged" diff --git a/packages/w3c-dtfm/src/culori.ts b/packages/w3c-dtfm/src/culori.ts index 9fdde894..d10a30d7 100644 --- a/packages/w3c-dtfm/src/culori.ts +++ b/packages/w3c-dtfm/src/culori.ts @@ -1,4 +1,3 @@ -/* eslint-disable import/no-unresolved */ import 'culori/css'; import { filterBrightness, @@ -106,6 +105,7 @@ export function parseModifierValue(value: unknown) { return parsed; } if (typeof value === 'object' && value !== null) { + // eslint-disable-next-line @typescript-eslint/no-explicit-any return parseModifierValue((value as any).value); } throw new Error(`invalid number value ${value}`); diff --git a/packages/w3c-dtfm/src/normalize/typography.ts b/packages/w3c-dtfm/src/normalize/typography.ts index 3897ff84..dfd42a28 100644 --- a/packages/w3c-dtfm/src/normalize/typography.ts +++ b/packages/w3c-dtfm/src/normalize/typography.ts @@ -89,6 +89,7 @@ export function normalizeTypographyValue(value: unknown) { const normalized = {} as Typography; for (const [k, v] of Object.entries(value)) { if (isTokenAlias(v)) { + // eslint-disable-next-line @typescript-eslint/no-explicit-any (normalized as any)[k] = v; continue; } @@ -103,6 +104,7 @@ export function normalizeTypographyValue(value: unknown) { break; } default: { + // eslint-disable-next-line @typescript-eslint/no-explicit-any (normalized as any)[k] = typeof v === 'string' && parseFloat(v) >= 0 ? normalizeDimensionValue(v) : v; break; } diff --git a/packages/w3c-dtfm/src/walker/walker.ts b/packages/w3c-dtfm/src/walker/walker.ts index d01ae25e..5dd08c4f 100644 --- a/packages/w3c-dtfm/src/walker/walker.ts +++ b/packages/w3c-dtfm/src/walker/walker.ts @@ -41,7 +41,7 @@ export const DEFAULT_MODE = 'default'; export class TokensWalker { private readonly extensions: TokensWalkerExtension[]; constructor( - private tokens: Record = {}, + private tokens: Record = {}, extensions: TokensWalkerExtension[] = [], ) { this.extensions = [new ColorGeneratorsExtension(this), new ColorModifiersExtension(this), ...extensions]; @@ -51,7 +51,7 @@ export class TokensWalker { return this.tokens; } - setTokens(tokens: Record) { + setTokens(tokens: Record) { this.tokens = tokens; } @@ -86,10 +86,13 @@ export class TokensWalker { // for composite tokens, we need to deref the values of the subtokens if (isObject(tokenValue) && !Array.isArray(tokenValue)) { - return Object.entries(tokenValue).reduce((acc, [key, value]) => { - acc[key] = this.derefTokenValue(value); - return acc; - }, {} as any); + return Object.entries(tokenValue).reduce( + (acc, [key, value]) => { + acc[key] = this.derefTokenValue(value); + return acc; + }, + {} as Record, + ); } return tokenValue; From 112e9185f7bd2ca5bd0b65ad3691cfd3512af65a Mon Sep 17 00:00:00 2001 From: Salama Ashoush Date: Mon, 13 Nov 2023 02:43:42 +0100 Subject: [PATCH 10/16] Add changeset configurations --- .changeset/README.md | 8 + .changeset/config.json | 11 + package.json | 7 +- packages/utils/package.json | 2 +- pnpm-lock.yaml | 987 +++++++++++++++++++++++++++++++++--- 5 files changed, 951 insertions(+), 64 deletions(-) create mode 100644 .changeset/README.md create mode 100644 .changeset/config.json diff --git a/.changeset/README.md b/.changeset/README.md new file mode 100644 index 00000000..e5b6d8d6 --- /dev/null +++ b/.changeset/README.md @@ -0,0 +1,8 @@ +# Changesets + +Hello and welcome! This folder has been automatically generated by `@changesets/cli`, a build tool that works +with multi-package repos, or single-package repos to help you version and publish your code. You can +find the full documentation for it [in our repository](https://github.com/changesets/changesets) + +We have a quick list of common questions to get you started engaging with this project in +[our documentation](https://github.com/changesets/changesets/blob/main/docs/common-questions.md) diff --git a/.changeset/config.json b/.changeset/config.json new file mode 100644 index 00000000..ab848d1a --- /dev/null +++ b/.changeset/config.json @@ -0,0 +1,11 @@ +{ + "$schema": "https://unpkg.com/@changesets/config@2.3.1/schema.json", + "changelog": "@changesets/cli/changelog", + "commit": false, + "fixed": [], + "linked": [], + "access": "restricted", + "baseBranch": "main", + "updateInternalDependencies": "patch", + "ignore": [] +} diff --git a/package.json b/package.json index 8ba0ab4c..beddc756 100644 --- a/package.json +++ b/package.json @@ -14,7 +14,9 @@ "lint:fix": "turbo lint", "test:types": "turbo test:types", "precommit": "turbo precommit", - "postinstall": "husky install" + "postinstall": "husky install", + "changeset": "changeset", + "version": "changeset version" }, "license": "MIT", "dependencies": { @@ -29,5 +31,8 @@ "packageManager": "pnpm@8.10.2", "engines": { "node": ">=21.0.0" + }, + "devDependencies": { + "@changesets/cli": "^2.26.2" } } diff --git a/packages/utils/package.json b/packages/utils/package.json index 8eedd018..e52185b7 100644 --- a/packages/utils/package.json +++ b/packages/utils/package.json @@ -1,6 +1,6 @@ { "name": "@design-sync/utils", - "version": "0.0.3", + "version": "0.0.0", "description": "Tokenize utils", "repository": "salamaashoush/tokenize", "license": "MIT", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index a9bfbebc..7d04c8e5 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -23,6 +23,10 @@ importers: typescript: specifier: ^5.2.2 version: 5.2.2 + devDependencies: + '@changesets/cli': + specifier: ^2.26.2 + version: 2.26.2 apps/cli: dependencies: @@ -1077,7 +1081,6 @@ packages: engines: {node: '>=6.9.0'} dependencies: regenerator-runtime: 0.14.0 - dev: false /@babel/standalone@7.23.3: resolution: {integrity: sha512-ZfB6wyLVqr9ANl1F0l/0aqoNUE1/kcWlQHmk0wF9OTEKDK1whkXYLruRMt53zY556yS2+84EsOpr1hpjZISTRg==} @@ -1157,6 +1160,190 @@ packages: resolution: {integrity: sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==} dev: true + /@changesets/apply-release-plan@6.1.4: + resolution: {integrity: sha512-FMpKF1fRlJyCZVYHr3CbinpZZ+6MwvOtWUuO8uo+svcATEoc1zRDcj23pAurJ2TZ/uVz1wFHH6K3NlACy0PLew==} + dependencies: + '@babel/runtime': 7.23.2 + '@changesets/config': 2.3.1 + '@changesets/get-version-range-type': 0.3.2 + '@changesets/git': 2.0.0 + '@changesets/types': 5.2.1 + '@manypkg/get-packages': 1.1.3 + detect-indent: 6.1.0 + fs-extra: 7.0.1 + lodash.startcase: 4.4.0 + outdent: 0.5.0 + prettier: 2.8.8 + resolve-from: 5.0.0 + semver: 7.5.4 + dev: true + + /@changesets/assemble-release-plan@5.2.4: + resolution: {integrity: sha512-xJkWX+1/CUaOUWTguXEbCDTyWJFECEhmdtbkjhn5GVBGxdP/JwaHBIU9sW3FR6gD07UwZ7ovpiPclQZs+j+mvg==} + dependencies: + '@babel/runtime': 7.23.2 + '@changesets/errors': 0.1.4 + '@changesets/get-dependents-graph': 1.3.6 + '@changesets/types': 5.2.1 + '@manypkg/get-packages': 1.1.3 + semver: 7.5.4 + dev: true + + /@changesets/changelog-git@0.1.14: + resolution: {integrity: sha512-+vRfnKtXVWsDDxGctOfzJsPhaCdXRYoe+KyWYoq5X/GqoISREiat0l3L8B0a453B2B4dfHGcZaGyowHbp9BSaA==} + dependencies: + '@changesets/types': 5.2.1 + dev: true + + /@changesets/cli@2.26.2: + resolution: {integrity: sha512-dnWrJTmRR8bCHikJHl9b9HW3gXACCehz4OasrXpMp7sx97ECuBGGNjJhjPhdZNCvMy9mn4BWdplI323IbqsRig==} + hasBin: true + dependencies: + '@babel/runtime': 7.23.2 + '@changesets/apply-release-plan': 6.1.4 + '@changesets/assemble-release-plan': 5.2.4 + '@changesets/changelog-git': 0.1.14 + '@changesets/config': 2.3.1 + '@changesets/errors': 0.1.4 + '@changesets/get-dependents-graph': 1.3.6 + '@changesets/get-release-plan': 3.0.17 + '@changesets/git': 2.0.0 + '@changesets/logger': 0.0.5 + '@changesets/pre': 1.0.14 + '@changesets/read': 0.5.9 + '@changesets/types': 5.2.1 + '@changesets/write': 0.2.3 + '@manypkg/get-packages': 1.1.3 + '@types/is-ci': 3.0.4 + '@types/semver': 7.5.0 + ansi-colors: 4.1.3 + chalk: 2.4.2 + enquirer: 2.4.1 + external-editor: 3.1.0 + fs-extra: 7.0.1 + human-id: 1.0.2 + is-ci: 3.0.1 + meow: 6.1.1 + outdent: 0.5.0 + p-limit: 2.3.0 + preferred-pm: 3.1.2 + resolve-from: 5.0.0 + semver: 7.5.4 + spawndamnit: 2.0.0 + term-size: 2.2.1 + tty-table: 4.2.3 + dev: true + + /@changesets/config@2.3.1: + resolution: {integrity: sha512-PQXaJl82CfIXddUOppj4zWu+987GCw2M+eQcOepxN5s+kvnsZOwjEJO3DH9eVy+OP6Pg/KFEWdsECFEYTtbg6w==} + dependencies: + '@changesets/errors': 0.1.4 + '@changesets/get-dependents-graph': 1.3.6 + '@changesets/logger': 0.0.5 + '@changesets/types': 5.2.1 + '@manypkg/get-packages': 1.1.3 + fs-extra: 7.0.1 + micromatch: 4.0.5 + dev: true + + /@changesets/errors@0.1.4: + resolution: {integrity: sha512-HAcqPF7snsUJ/QzkWoKfRfXushHTu+K5KZLJWPb34s4eCZShIf8BFO3fwq6KU8+G7L5KdtN2BzQAXOSXEyiY9Q==} + dependencies: + extendable-error: 0.1.7 + dev: true + + /@changesets/get-dependents-graph@1.3.6: + resolution: {integrity: sha512-Q/sLgBANmkvUm09GgRsAvEtY3p1/5OCzgBE5vX3vgb5CvW0j7CEljocx5oPXeQSNph6FXulJlXV3Re/v3K3P3Q==} + dependencies: + '@changesets/types': 5.2.1 + '@manypkg/get-packages': 1.1.3 + chalk: 2.4.2 + fs-extra: 7.0.1 + semver: 7.5.4 + dev: true + + /@changesets/get-release-plan@3.0.17: + resolution: {integrity: sha512-6IwKTubNEgoOZwDontYc2x2cWXfr6IKxP3IhKeK+WjyD6y3M4Gl/jdQvBw+m/5zWILSOCAaGLu2ZF6Q+WiPniw==} + dependencies: + '@babel/runtime': 7.23.2 + '@changesets/assemble-release-plan': 5.2.4 + '@changesets/config': 2.3.1 + '@changesets/pre': 1.0.14 + '@changesets/read': 0.5.9 + '@changesets/types': 5.2.1 + '@manypkg/get-packages': 1.1.3 + dev: true + + /@changesets/get-version-range-type@0.3.2: + resolution: {integrity: sha512-SVqwYs5pULYjYT4op21F2pVbcrca4qA/bAA3FmFXKMN7Y+HcO8sbZUTx3TAy2VXulP2FACd1aC7f2nTuqSPbqg==} + dev: true + + /@changesets/git@2.0.0: + resolution: {integrity: sha512-enUVEWbiqUTxqSnmesyJGWfzd51PY4H7mH9yUw0hPVpZBJ6tQZFMU3F3mT/t9OJ/GjyiM4770i+sehAn6ymx6A==} + dependencies: + '@babel/runtime': 7.23.2 + '@changesets/errors': 0.1.4 + '@changesets/types': 5.2.1 + '@manypkg/get-packages': 1.1.3 + is-subdir: 1.2.0 + micromatch: 4.0.5 + spawndamnit: 2.0.0 + dev: true + + /@changesets/logger@0.0.5: + resolution: {integrity: sha512-gJyZHomu8nASHpaANzc6bkQMO9gU/ib20lqew1rVx753FOxffnCrJlGIeQVxNWCqM+o6OOleCo/ivL8UAO5iFw==} + dependencies: + chalk: 2.4.2 + dev: true + + /@changesets/parse@0.3.16: + resolution: {integrity: sha512-127JKNd167ayAuBjUggZBkmDS5fIKsthnr9jr6bdnuUljroiERW7FBTDNnNVyJ4l69PzR57pk6mXQdtJyBCJKg==} + dependencies: + '@changesets/types': 5.2.1 + js-yaml: 3.14.1 + dev: true + + /@changesets/pre@1.0.14: + resolution: {integrity: sha512-dTsHmxQWEQekHYHbg+M1mDVYFvegDh9j/kySNuDKdylwfMEevTeDouR7IfHNyVodxZXu17sXoJuf2D0vi55FHQ==} + dependencies: + '@babel/runtime': 7.23.2 + '@changesets/errors': 0.1.4 + '@changesets/types': 5.2.1 + '@manypkg/get-packages': 1.1.3 + fs-extra: 7.0.1 + dev: true + + /@changesets/read@0.5.9: + resolution: {integrity: sha512-T8BJ6JS6j1gfO1HFq50kU3qawYxa4NTbI/ASNVVCBTsKquy2HYwM9r7ZnzkiMe8IEObAJtUVGSrePCOxAK2haQ==} + dependencies: + '@babel/runtime': 7.23.2 + '@changesets/git': 2.0.0 + '@changesets/logger': 0.0.5 + '@changesets/parse': 0.3.16 + '@changesets/types': 5.2.1 + chalk: 2.4.2 + fs-extra: 7.0.1 + p-filter: 2.1.0 + dev: true + + /@changesets/types@4.1.0: + resolution: {integrity: sha512-LDQvVDv5Kb50ny2s25Fhm3d9QSZimsoUGBsUioj6MC3qbMUCuC8GPIvk/M6IvXx3lYhAs0lwWUQLb+VIEUCECw==} + dev: true + + /@changesets/types@5.2.1: + resolution: {integrity: sha512-myLfHbVOqaq9UtUKqR/nZA/OY7xFjQMdfgfqeZIBK4d0hA6pgxArvdv8M+6NUzzBsjWLOtvApv8YHr4qM+Kpfg==} + dev: true + + /@changesets/write@0.2.3: + resolution: {integrity: sha512-Dbamr7AIMvslKnNYsLFafaVORx4H0pvCA2MHqgtNCySMe1blImEyAEOzDmcgKAkgz4+uwoLz7demIrX+JBr/Xw==} + dependencies: + '@babel/runtime': 7.23.2 + '@changesets/types': 5.2.1 + fs-extra: 7.0.1 + human-id: 1.0.2 + prettier: 2.8.8 + dev: true + /@create-figma-plugin/build@3.0.2(@figma/plugin-typings@1.79.0)(typescript@5.2.2): resolution: {integrity: sha512-TO8JxjuiG9mrR6fSsycAYDIEQIPk8fv2y6R1C6PmS9EB5/GzwHeS7y+pWkvf9zm7lIn5A+fY6znq2Ty5ANzM8w==} engines: {node: '>=18'} @@ -1679,6 +1866,26 @@ packages: '@vanilla-extract/css': 1.13.0 dev: false + /@manypkg/find-root@1.1.0: + resolution: {integrity: sha512-mki5uBvhHzO8kYYix/WRy2WX8S3B5wdVSc9D6KcU5lQNglP2yt58/VfLuAK49glRXChosY8ap2oJ1qgma3GUVA==} + dependencies: + '@babel/runtime': 7.23.2 + '@types/node': 12.20.55 + find-up: 4.1.0 + fs-extra: 8.1.0 + dev: true + + /@manypkg/get-packages@1.1.3: + resolution: {integrity: sha512-fo+QhuU3qE/2TQMQmbVMqaQ6EWbMhi4ABWP+O4AM1NqPBuy0OrApV5LO6BrrgnhtAHS2NH6RrVk9OL181tTi8A==} + dependencies: + '@babel/runtime': 7.23.2 + '@changesets/types': 4.1.0 + '@manypkg/find-root': 1.1.0 + fs-extra: 8.1.0 + globby: 11.1.0 + read-yaml-file: 1.1.0 + dev: true + /@mdn/browser-compat-data@5.3.30: resolution: {integrity: sha512-rMYcyYjBLBvZhULbaJdWJ63jOqDIbdyTvaOKc0d6O8wo1GSjYlnamsZZI4RhqqdbaiAaOyE1wjk1oRqfKBcK7A==} dev: false @@ -2282,6 +2489,12 @@ packages: resolution: {integrity: sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw==} dev: true + /@types/is-ci@3.0.4: + resolution: {integrity: sha512-AkCYCmwlXeuH89DagDCzvCAyltI2v9lh3U3DqSg/GrBYoReAaWwxfXCqMx9UV5MajLZ4ZFwZzV4cABGIxk2XRw==} + dependencies: + ci-info: 3.9.0 + dev: true + /@types/istanbul-lib-coverage@2.0.6: resolution: {integrity: sha512-2QF/t/auWm0lsy8XtKVPG19v3sSOQlJe/YHZgfjb/KBBHOGSV+J2q/S671rcq9uTBrLAXmZpqJiaQbMT+zNU1w==} dev: true @@ -2290,19 +2503,30 @@ packages: resolution: {integrity: sha512-Hr5Jfhc9eYOQNPYO5WLDq/n4jqijdHNlDXjuAQkkt+mWdQR+XJToOHrsD4cPaMXpn6KO7y2+wM8AZEs8VpBLVA==} dev: false + /@types/minimist@1.2.5: + resolution: {integrity: sha512-hov8bUuiLiyFPGyFPE1lwWhmzYbirOXQNNo40+y3zow8aFVTeyn3VWL0VFFfdNddA8S4Vf0Tc062rzyNr7Paag==} + dev: true + + /@types/node@12.20.55: + resolution: {integrity: sha512-J8xLz7q2OFulZ2cyGTLE1TbbZcjpno7FaN6zdJNrgAdrJ+DZzh/uFR6YrTb4C+nXakvud8Q4+rbhoIWlYQbUFQ==} + dev: true + /@types/node@20.9.0: resolution: {integrity: sha512-nekiGu2NDb1BcVofVcEKMIwzlx4NjHlcjhoxxKBNLtz15Y1z7MYf549DFvkHSId02Ax6kGwWntIBPC3l/JZcmw==} dependencies: undici-types: 5.26.5 dev: true + /@types/normalize-package-data@2.4.4: + resolution: {integrity: sha512-37i+OaWTh9qeK4LSHPsyRC7NahnGotNuZvjLSgcPzblpHB3rrCJxAOgI5gCdKm7coonsaX1Of0ILiTcnZjbfxA==} + dev: true + /@types/resolve@1.20.2: resolution: {integrity: sha512-60BCwRFOZCQhDncwQdxxeOEEkbc5dIMccYLwbxsS4TUNeVECQ/pBJ0j09mrHOl/JJvpRPGwO9SvE4nR2Nb/a4Q==} dev: true /@types/semver@7.5.0: resolution: {integrity: sha512-G8hZ6XJiHnuhQKR7ZmysCeJWE08o8T0AXtk5darsCaTVsYZhhgUrq53jizaR2FvsoeCwJhlmwTjkXBY5Pn/ZHw==} - dev: false /@types/tinycolor2@1.4.6: resolution: {integrity: sha512-iEN8J0BoMnsWBqjVbWH/c0G0Hh7O21lpR2/+PrvAVgWdzL7eexIFm4JN/Wn10PTcmNdtS6U67r499mlWMXOxNw==} @@ -2797,6 +3021,11 @@ packages: json-schema-traverse: 0.4.1 uri-js: 4.4.1 + /ansi-colors@4.1.3: + resolution: {integrity: sha512-/6w/C21Pm1A7aZitlI5Ni/2J6FFQN8i1Cvz3kHABAAbw93v/NlvKdVOqz7CCWz/3iv/JplRSEEZ83XION15ovw==} + engines: {node: '>=6'} + dev: true + /ansi-escapes@5.0.0: resolution: {integrity: sha512-5GFMVX8HqE/TB+FuBJGuO5XG0WrsA6ptUqoODaT/n9mmUaZFkqnBueB4leqGBCmrUHnCnC4PCZTCd0E7QQ83bA==} engines: {node: '>=12'} @@ -2843,6 +3072,12 @@ packages: resolution: {integrity: sha512-58S9QDqG0Xx27YwPSt9fJxivjYl432YCwfDMfZ+71RAqUrZef7LrKQZ3LHLOwCS4FLNBplP533Zx895SeOCHvA==} dev: true + /argparse@1.0.10: + resolution: {integrity: sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==} + dependencies: + sprintf-js: 1.0.3 + dev: true + /argparse@2.0.1: resolution: {integrity: sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==} @@ -2857,7 +3092,6 @@ packages: dependencies: call-bind: 1.0.2 is-array-buffer: 3.0.2 - dev: false /array-includes@3.1.6: resolution: {integrity: sha512-sgTbLvL6cNnw24FnbaDyjmvddQ2ML8arZsgaJhoABMoplz/4QRhtrYS+alr1BUM1Bwp6dhx8vVCBSLG+StwOFw==} @@ -2884,7 +3118,6 @@ packages: /array-union@2.1.0: resolution: {integrity: sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==} engines: {node: '>=8'} - dev: false /array.prototype.flat@1.3.1: resolution: {integrity: sha512-roTU0KWIOmJ4DRLmwKd19Otg0/mT3qPNt0Qb3GWW8iObuZXxrjB/pzn0R3hqpRSWg4HCwqx+0vwOnWnvlOyeIA==} @@ -2904,7 +3137,6 @@ packages: define-properties: 1.2.0 es-abstract: 1.22.1 es-shim-unscopables: 1.0.0 - dev: false /array.prototype.flatmap@1.3.2: resolution: {integrity: sha512-Ewyx0c9PmpcsByhSW4r+9zDU7sGjFc86qf/kKtuSCRdhfbk0SNLLkaT5qvcHnRGgc5NP/ly/y+qkXkqONX54CQ==} @@ -2936,7 +3168,11 @@ packages: get-intrinsic: 1.2.1 is-array-buffer: 3.0.2 is-shared-array-buffer: 1.0.2 - dev: false + + /arrify@1.0.1: + resolution: {integrity: sha512-3CYzex9M9FGQjCGMGyi6/31c8GJbgb0qGyrx5HWxPd0aCwh4cB2YjMb2Xf9UuoogrMrlO9cTqnB5rI5GHZTcUA==} + engines: {node: '>=0.10.0'} + dev: true /assertion-error@1.1.0: resolution: {integrity: sha512-jgsaNduz+ndvGyFt3uSuWqvy4lCnIJiovtouQN5JZHOKCS2QuhEdbcQHFhVksz2N2U9hXJo8odG7ETyWlEeuDw==} @@ -2965,7 +3201,6 @@ packages: /available-typed-arrays@1.0.5: resolution: {integrity: sha512-DMD0KiN46eipeziST1LPP/STfDU0sufISXmjSgvVsoU2tqxctQeASejWcfNtxYKqETM1UxQ8sp2OrSBWpHY6sw==} engines: {node: '>= 0.4'} - dev: false /axe-core@4.7.0: resolution: {integrity: sha512-M0JtH+hlOL5pLQwHOLNYZaXuhqmvS8oExsqB1SBYgA4Dk7u/xx+YdGHXaK5pyUfed5mYXdlYiphWq3G8cRi5JQ==} @@ -3017,6 +3252,13 @@ packages: resolution: {integrity: sha512-NzUnlZexiaH/46WDhANlyR2bXRopNg4F/zuSA3OpZnllCUgRaOF2znDioDWrmbNVsuZk6l9pMquQB38cfBZwkQ==} dev: true + /better-path-resolve@1.0.0: + resolution: {integrity: sha512-pbnl5XzGBdrFU/wT4jqmJVPn2B6UHPBOhzMQkY/SPUPB6QtUXtmBHBIwCbXJol93mOpGMnQyP/+BB19q04xj7g==} + engines: {node: '>=4'} + dependencies: + is-windows: 1.0.2 + dev: true + /big-integer@1.6.51: resolution: {integrity: sha512-GPEid2Y9QU1Exl1rpO9B2IPJGHPSupF5GnVIP0blYvNOMer2bTvSWs1jGOUg04hTmu67nmLsQ9TBo1puaotBHg==} engines: {node: '>=0.6'} @@ -3053,6 +3295,12 @@ packages: dependencies: fill-range: 7.0.1 + /breakword@1.0.6: + resolution: {integrity: sha512-yjxDAYyK/pBvws9H4xKYpLDpYKEH6CzrBPAuXq3x18I+c/2MkVtT3qAr7Oloi6Dss9qNhPVueAAVU1CSeNDIXw==} + dependencies: + wcwidth: 1.0.1 + dev: true + /browserslist@4.21.9: resolution: {integrity: sha512-M0MFoZzbUrRU4KNfCrDLnvyE7gub+peetoTid3TBIqtunaDJyXlwhakT+/VkvSXcfIzFfK/nkCs4nmyTmxdNSg==} engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7} @@ -3116,12 +3364,25 @@ packages: dependencies: function-bind: 1.1.1 get-intrinsic: 1.2.1 - dev: false /callsites@3.1.0: resolution: {integrity: sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==} engines: {node: '>=6'} + /camelcase-keys@6.2.2: + resolution: {integrity: sha512-YrwaA0vEKazPBkn0ipTiMpSajYDSe+KjQfrjhcBMxJt/znbvlHd8Pw/Vamaz5EB4Wfhs3SUR3Z9mwRu/P3s3Yg==} + engines: {node: '>=8'} + dependencies: + camelcase: 5.3.1 + map-obj: 4.3.0 + quick-lru: 4.0.1 + dev: true + + /camelcase@5.3.1: + resolution: {integrity: sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==} + engines: {node: '>=6'} + dev: true + /camelcase@6.3.0: resolution: {integrity: sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==} engines: {node: '>=10'} @@ -3198,6 +3459,10 @@ packages: - supports-color dev: true + /chardet@0.7.0: + resolution: {integrity: sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==} + dev: true + /check-error@1.0.3: resolution: {integrity: sha512-iKEoDYaRmd1mxM90a2OEfWhjsjPpYPuQ+lMYsoxB126+t8fw7ySEO48nmDg5COTjxDI65/Y2OWpeEHk3ZOe8zg==} dependencies: @@ -3246,6 +3511,11 @@ packages: resolution: {integrity: sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==} engines: {node: '>=10'} + /ci-info@3.9.0: + resolution: {integrity: sha512-NIxF55hv4nSqQswkAeiOi1r83xy8JldOFDTWiug55KBu9Jnblncd2U6ViHmYgHf01TPZS77NJBhBMKdWj9HQMQ==} + engines: {node: '>=8'} + dev: true + /citty@0.1.4: resolution: {integrity: sha512-Q3bK1huLxzQrvj7hImJ7Z1vKYJRPQCDnd0EjXfHMidcjecGOMuLrmuQmtWmFkuKLcMThlGh1yCKG8IEc6VeNXQ==} dependencies: @@ -3264,6 +3534,14 @@ packages: slice-ansi: 5.0.0 string-width: 5.1.2 + /cliui@6.0.0: + resolution: {integrity: sha512-t6wbgtoCXvAzst7QgXxJYqPt0usEfbgQdftEPbLL/cvv6HPE5VgvqCuAIDR0NgU52ds6rFwqrgakNLrHEjCbrQ==} + dependencies: + string-width: 4.2.3 + strip-ansi: 6.0.1 + wrap-ansi: 6.2.0 + dev: true + /cliui@8.0.1: resolution: {integrity: sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==} engines: {node: '>=12'} @@ -3273,6 +3551,11 @@ packages: wrap-ansi: 7.0.0 dev: true + /clone@1.0.4: + resolution: {integrity: sha512-JQHZ2QMW6l3aH/j6xCqQThY/9OH4D/9ls34cgkUBiEeocRTU04tHfKPBsUK1PqZCUQM7GiA0IIXJSuXHI64Kbg==} + engines: {node: '>=0.8'} + dev: true + /clsx@2.0.0: resolution: {integrity: sha512-rQ1+kcj+ttHG0MKVGBUXwayCCF1oh39BF5COIpRzuCEv8Mwjv0XucrI2ExNTOn9IlLifGClWQcU9BrZORvtw6Q==} engines: {node: '>=6'} @@ -3360,6 +3643,14 @@ packages: resolution: {integrity: sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ==} dev: true + /cross-spawn@5.1.0: + resolution: {integrity: sha512-pTgQJ5KC0d2hcY8eyL1IzlBPYjTkyH72XRZPnLyKus2mBfNjQs3klqbJU2VILqZryAZUt9JOb3h/mWMy23/f5A==} + dependencies: + lru-cache: 4.1.5 + shebang-command: 1.2.0 + which: 1.3.1 + dev: true + /cross-spawn@7.0.3: resolution: {integrity: sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==} engines: {node: '>= 8'} @@ -3487,6 +3778,28 @@ packages: /csstype@3.1.2: resolution: {integrity: sha512-I7K1Uu0MBPzaFKg4nI5Q7Vs2t+3gWWW648spaF+Rg7pI9ds18Ugn+lvg4SHczUdKlHI5LWBXyqfS8+DufyBsgQ==} + /csv-generate@3.4.3: + resolution: {integrity: sha512-w/T+rqR0vwvHqWs/1ZyMDWtHHSJaN06klRqJXBEpDJaM/+dZkso0OKh1VcuuYvK3XM53KysVNq8Ko/epCK8wOw==} + dev: true + + /csv-parse@4.16.3: + resolution: {integrity: sha512-cO1I/zmz4w2dcKHVvpCr7JVRu8/FymG5OEpmvsZYlccYolPBLoVGKUHgNoc4ZGkFeFlWGEDmMyBM+TTqRdW/wg==} + dev: true + + /csv-stringify@5.6.5: + resolution: {integrity: sha512-PjiQ659aQ+fUTQqSrd1XEDnOr52jh30RBurfzkscaE2tPaFsDH5wOAHJiw8XAHphRknCwMUE9KRayc4K/NbO8A==} + dev: true + + /csv@5.5.3: + resolution: {integrity: sha512-QTaY0XjjhTQOdguARF0lGKm5/mEq9PD9/VhZZegHDIBq2tQwgNpHc3dneD4mGo2iJs+fTKv5Bp0fZ+BRuY3Z0g==} + engines: {node: '>= 0.1.90'} + dependencies: + csv-generate: 3.4.3 + csv-parse: 4.16.3 + csv-stringify: 5.6.5 + stream-transform: 2.1.3 + dev: true + /culori@3.2.0: resolution: {integrity: sha512-HIEbTSP7vs1mPq/2P9In6QyFE0Tkpevh0k9a+FkjhD+cwsYm9WRSbn4uMdW9O0yXlNYC3ppxL3gWWPOcvEl57w==} engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} @@ -3514,6 +3827,19 @@ packages: dependencies: ms: 2.1.2 + /decamelize-keys@1.1.1: + resolution: {integrity: sha512-WiPxgEirIV0/eIOMcnFBA3/IJZAZqKnwAwWyvvdi4lsr1WCN22nhdf/3db3DoZcUjTV2SqfzIwNyp6y2xs3nmg==} + engines: {node: '>=0.10.0'} + dependencies: + decamelize: 1.2.0 + map-obj: 1.0.1 + dev: true + + /decamelize@1.2.0: + resolution: {integrity: sha512-z2S+W9X73hAUUki+N+9Za2lBlun89zigOyGrsax+KUQ6wKW4ZoWpEYBkGhQjwAjjDCkWxhY0VKEhk8wzY7F5cA==} + engines: {node: '>=0.10.0'} + dev: true + /deep-eql@4.1.3: resolution: {integrity: sha512-WaEtAOpRA1MQ0eohqZjpGD8zdI0Ovsm8mmFhaDN8dvDZzyoUMcYDnf5Y6iu7HTXxf8JDS23qWa4a+hKCDyOPzw==} engines: {node: '>=6'} @@ -3547,6 +3873,12 @@ packages: execa: 7.2.0 titleize: 3.0.0 + /defaults@1.0.4: + resolution: {integrity: sha512-eFuaLoy/Rxalv2kr+lqMlUnrDWV+3j4pljOIJgLIhI058IQfWJ7vXhyEIHu+HtC738klGALYxOKDO0bQP3tg8A==} + dependencies: + clone: 1.0.4 + dev: true + /define-data-property@1.1.1: resolution: {integrity: sha512-E7uGkTzkk1d0ByLeSc6ZsFS79Axg+m1P/VsgYsxHgiuc3tFSj+MjMIwe90FC4lOAZzNBdY7kkO2P2wKdsQ1vgQ==} engines: {node: '>= 0.4'} @@ -3566,7 +3898,6 @@ packages: dependencies: has-property-descriptors: 1.0.0 object-keys: 1.1.1 - dev: false /define-properties@1.2.1: resolution: {integrity: sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg==} @@ -3597,6 +3928,11 @@ packages: /destr@2.0.2: resolution: {integrity: sha512-65AlobnZMiCET00KaFFjUefxDX0khFA/E4myqZ7a6Sq1yZtR8+FVIvilVX66vF2uobSumxooYZChiRPCKNqhmg==} + /detect-indent@6.1.0: + resolution: {integrity: sha512-reYkTUJAZb9gUuZ2RvVCNhVHdg62RHnJ7WJl8ftMi4diZ6NWlciOzQN88pUhSELEwflJht4oQDv0F0BMlwaYtA==} + engines: {node: '>=8'} + dev: true + /diff-sequences@29.6.3: resolution: {integrity: sha512-EjePK1srD3P08o2j4f0ExnylqRs5B9tJjcp9t1krH2qRi8CCdsYfwe9JgSLurFBWwq4uOlipzfk5fHNvwFKr8Q==} engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} @@ -3674,11 +4010,25 @@ packages: /emoji-regex@9.2.2: resolution: {integrity: sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==} + /enquirer@2.4.1: + resolution: {integrity: sha512-rRqJg/6gd538VHvR3PSrdRBb/1Vy2YfzHqzvbhGIQpDRKIa4FgV/54b5Q1xYSxOOwKvjXweS26E0Q+nAMwp2pQ==} + engines: {node: '>=8.6'} + dependencies: + ansi-colors: 4.1.3 + strip-ansi: 6.0.1 + dev: true + /entities@4.5.0: resolution: {integrity: sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==} engines: {node: '>=0.12'} dev: true + /error-ex@1.3.2: + resolution: {integrity: sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==} + dependencies: + is-arrayish: 0.2.1 + dev: true + /es-abstract@1.22.1: resolution: {integrity: sha512-ioRRcXMO6OFyRpyzV3kE1IIBd4WG5/kltnzdxSCqoP8CMGs/Li+M1uF5o7lOkZVFjDs+NLesthnF66Pg/0q0Lw==} engines: {node: '>= 0.4'} @@ -3722,7 +4072,6 @@ packages: typed-array-length: 1.0.4 unbox-primitive: 1.0.2 which-typed-array: 1.1.11 - dev: false /es-iterator-helpers@1.0.15: resolution: {integrity: sha512-GhoY8uYqd6iwUl2kgjTm4CZAf6oo5mHK7BPqx3rKgx893YSsy0LGHV6gfqqQvZt/8xM8xeOnfXBCfqclMKkJ5g==} @@ -3750,13 +4099,11 @@ packages: get-intrinsic: 1.2.1 has: 1.0.3 has-tostringtag: 1.0.0 - dev: false /es-shim-unscopables@1.0.0: resolution: {integrity: sha512-Jm6GPcCdC30eMLbZ2x8z2WuRwAws3zTBBKuusffYVUrNj/GVSUAZ+xKMaUpfNDR5IbyNA5LJbaecoUVbmUcB1w==} dependencies: has: 1.0.3 - dev: false /es-to-primitive@1.2.1: resolution: {integrity: sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==} @@ -3765,7 +4112,6 @@ packages: is-callable: 1.2.7 is-date-object: 1.0.5 is-symbol: 1.0.4 - dev: false /esbuild@0.18.17: resolution: {integrity: sha512-1GJtYnUxsJreHYA0Y+iQz2UEykonY66HNWOb0yXYZi9/kNrORUEHVg87eQsCtqh59PEJ5YVZJO98JHznMJSWjg==} @@ -4071,6 +4417,12 @@ packages: acorn-jsx: 5.3.2(acorn@8.10.0) eslint-visitor-keys: 3.4.3 + /esprima@4.0.1: + resolution: {integrity: sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==} + engines: {node: '>=4'} + hasBin: true + dev: true + /esquery@1.5.0: resolution: {integrity: sha512-YQLXUplAwJgCydQ78IMJywZCceoqk1oH01OERdSAJc/7U2AylwjhSCLDEtqwg811idIS/9fIU5GjG73IgjKMVg==} engines: {node: '>=0.10'} @@ -4153,6 +4505,19 @@ packages: signal-exit: 4.1.0 strip-final-newline: 3.0.0 + /extendable-error@0.1.7: + resolution: {integrity: sha512-UOiS2in6/Q0FK0R0q6UY9vYpQ21mr/Qn1KOnte7vsACuNJf514WvCCUHSRCPcgjPT2bAhNIJdlE6bVap1GKmeg==} + dev: true + + /external-editor@3.1.0: + resolution: {integrity: sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew==} + engines: {node: '>=4'} + dependencies: + chardet: 0.7.0 + iconv-lite: 0.4.24 + tmp: 0.0.33 + dev: true + /fast-deep-equal@3.1.3: resolution: {integrity: sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==} @@ -4197,6 +4562,14 @@ packages: dependencies: to-regex-range: 5.0.1 + /find-up@4.1.0: + resolution: {integrity: sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==} + engines: {node: '>=8'} + dependencies: + locate-path: 5.0.0 + path-exists: 4.0.0 + dev: true + /find-up@5.0.0: resolution: {integrity: sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==} engines: {node: '>=10'} @@ -4212,6 +4585,13 @@ packages: path-exists: 5.0.0 dev: true + /find-yarn-workspace-root2@1.2.16: + resolution: {integrity: sha512-hr6hb1w8ePMpPVUK39S4RlwJzi+xPLuVuG8XlwXU3KD5Yn3qgBWVfy3AzNlDhWvE1EORCE65/Qm26rFQt3VLVA==} + dependencies: + micromatch: 4.0.5 + pkg-dir: 4.2.0 + dev: true + /flat-cache@3.0.4: resolution: {integrity: sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg==} engines: {node: ^10.12.0 || >=12.0.0} @@ -4242,7 +4622,6 @@ packages: resolution: {integrity: sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==} dependencies: is-callable: 1.2.7 - dev: false /foreground-child@3.1.1: resolution: {integrity: sha512-TMKDUnIte6bfb5nWv7V/caI169OHgvwjb7V4WkeUvbQQdjr5rWKqHFiKWb/fcOwB+CzBT+qbWjvj+DVwRskpIg==} @@ -4270,6 +4649,24 @@ packages: universalify: 2.0.0 dev: true + /fs-extra@7.0.1: + resolution: {integrity: sha512-YJDaCJZEnBmcbw13fvdAM9AwNOJwOzrE4pqMqBq5nFiEqXUqHwlK4B+3pUw6JNvfSPtX05xFHtYy/1ni01eGCw==} + engines: {node: '>=6 <7 || >=8'} + dependencies: + graceful-fs: 4.2.11 + jsonfile: 4.0.0 + universalify: 0.1.2 + dev: true + + /fs-extra@8.1.0: + resolution: {integrity: sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==} + engines: {node: '>=6 <7 || >=8'} + dependencies: + graceful-fs: 4.2.11 + jsonfile: 4.0.0 + universalify: 0.1.2 + dev: true + /fs-minipass@2.1.0: resolution: {integrity: sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==} engines: {node: '>= 8'} @@ -4288,7 +4685,6 @@ packages: /function-bind@1.1.1: resolution: {integrity: sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==} - dev: false /function-bind@1.1.2: resolution: {integrity: sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==} @@ -4301,11 +4697,9 @@ packages: define-properties: 1.2.0 es-abstract: 1.22.1 functions-have-names: 1.2.3 - dev: false /functions-have-names@1.2.3: resolution: {integrity: sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==} - dev: false /generic-names@4.0.0: resolution: {integrity: sha512-ySFolZQfw9FoDb3ed9d80Cm9f0+r7qj+HJkWjeD9RBfpxEVTlVhol+gvaQB/78WbwYfbnNh8nWHHBSlg072y6A==} @@ -4333,7 +4727,6 @@ packages: has: 1.0.3 has-proto: 1.0.1 has-symbols: 1.0.3 - dev: false /get-stream@6.0.1: resolution: {integrity: sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==} @@ -4349,7 +4742,6 @@ packages: dependencies: call-bind: 1.0.2 get-intrinsic: 1.2.1 - dev: false /get-tsconfig@4.7.2: resolution: {integrity: sha512-wuMsz4leaj5hbGgg4IvDU0bqJagpftG5l5cXIAvo8uZrqn0NJqwtfupTN00VnkQJPcIRrxYrm1Ue24btpCha2A==} @@ -4431,7 +4823,6 @@ packages: engines: {node: '>= 0.4'} dependencies: define-properties: 1.2.0 - dev: false /globby@11.1.0: resolution: {integrity: sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==} @@ -4443,7 +4834,6 @@ packages: ignore: 5.2.4 merge2: 1.4.1 slash: 3.0.0 - dev: false /globby@13.2.2: resolution: {integrity: sha512-Y1zNGV+pzQdh7H39l9zgB4PJqjRNqydvdYCDG4HFXM4XuvSaQQlEc91IU1yALL8gUTDomgBAfz3XJdmUS+oo0w==} @@ -4460,18 +4850,25 @@ packages: resolution: {integrity: sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==} dependencies: get-intrinsic: 1.2.1 - dev: false /graceful-fs@4.2.11: resolution: {integrity: sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==} dev: true + /grapheme-splitter@1.0.4: + resolution: {integrity: sha512-bzh50DW9kTPM00T8y4o8vQg89Di9oLJVLW/KaOGIXJWP/iqCN6WKYkbNOF04vFLJhwcpYUh9ydh/+5vpOqV4YQ==} + dev: true + /graphemer@1.4.0: resolution: {integrity: sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==} + /hard-rejection@2.1.0: + resolution: {integrity: sha512-VIZB+ibDhx7ObhAe7OVtoEbuP4h/MuOTHJ+J8h/eBXotJYl0fBgR72xDFCKgIh22OJZIOVNxBMWuhAr10r8HdA==} + engines: {node: '>=6'} + dev: true + /has-bigints@1.0.2: resolution: {integrity: sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==} - dev: false /has-flag@3.0.0: resolution: {integrity: sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==} @@ -4485,31 +4882,26 @@ packages: resolution: {integrity: sha512-62DVLZGoiEBDHQyqG4w9xCuZ7eJEwNmJRWw2VY84Oedb7WFcA27fiEVe8oUQx9hAUJ4ekurquucTGwsyO1XGdQ==} dependencies: get-intrinsic: 1.2.1 - dev: false /has-proto@1.0.1: resolution: {integrity: sha512-7qE+iP+O+bgF9clE5+UoBFzE65mlBiVj3tKCrlNQ0Ogwm0BjpT/gK4SlLYDMybDh5I3TCTKnPPa0oMG7JDYrhg==} engines: {node: '>= 0.4'} - dev: false /has-symbols@1.0.3: resolution: {integrity: sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==} engines: {node: '>= 0.4'} - dev: false /has-tostringtag@1.0.0: resolution: {integrity: sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ==} engines: {node: '>= 0.4'} dependencies: has-symbols: 1.0.3 - dev: false /has@1.0.3: resolution: {integrity: sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==} engines: {node: '>= 0.4.0'} dependencies: function-bind: 1.1.1 - dev: false /hasown@2.0.0: resolution: {integrity: sha512-vUptKVTpIJhcczKBbgnS+RtcuYMB8+oNzPK2/Hp3hanz8JmpATdmmgLgSaadVREkDm+e2giHwY3ZRkyjSIDDFA==} @@ -4526,6 +4918,10 @@ packages: resolution: {integrity: sha512-Yc+BQe8SvoXH1643Qez1zqLRmbA5rCL+sSmk6TVos0LWVfNIB7PGncdlId77WzLGSIB5KaWgTaNTs2lNVEI6VQ==} dev: true + /hosted-git-info@2.8.9: + resolution: {integrity: sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==} + dev: true + /html-entities@2.3.3: resolution: {integrity: sha512-DV5Ln36z34NNTDgnz0EWGBLZENelNAtkiFA4kyNOG2tDI6Mz1uSWiq1wAKdyjnJwyDiDO7Fa2SO1CTxPXL8VxA==} dev: true @@ -4557,6 +4953,10 @@ packages: transitivePeerDependencies: - supports-color + /human-id@1.0.2: + resolution: {integrity: sha512-UNopramDEhHJD+VR+ehk8rOslwSfByxPIZyJRfV739NDhN5LF1fa1MqnzKm2lGTQRjNrjK19Q5fhkgIfjlVUKw==} + dev: true + /human-signals@2.1.0: resolution: {integrity: sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==} engines: {node: '>=10.17.0'} @@ -4575,6 +4975,13 @@ packages: hasBin: true dev: false + /iconv-lite@0.4.24: + resolution: {integrity: sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==} + engines: {node: '>=0.10.0'} + dependencies: + safer-buffer: 2.1.2 + dev: true + /icss-replace-symbols@1.1.0: resolution: {integrity: sha512-chIaY3Vh2mh2Q3RGXttaDIzeiPvaVXJ+C4DAh/w3c37SKZ/U6PGMmuicR2EQQp9bKG8zLMCl7I+PtIoOOPp8Gg==} dev: true @@ -4603,6 +5010,11 @@ packages: resolution: {integrity: sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==} engines: {node: '>=0.8.19'} + /indent-string@4.0.0: + resolution: {integrity: sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==} + engines: {node: '>=8'} + dev: true + /indent-string@5.0.0: resolution: {integrity: sha512-m6FAo/spmsW2Ab2fU35JTYwtOKa2yAwXSwgjSv1TJzh4Mh7mC3lzAOVLBprb72XsTrgkEIsl7YrFNAiDiRhIGg==} engines: {node: '>=12'} @@ -4628,7 +5040,6 @@ packages: get-intrinsic: 1.2.1 has: 1.0.3 side-channel: 1.0.4 - dev: false /intl-messageformat@10.5.0: resolution: {integrity: sha512-AvojYuOaRb6r2veOKfTVpxH9TrmjSdc5iR9R5RgBwrDZYSmAAFVT+QLbW3C4V7Qsg0OguMp67Q/EoUkxZzXRGw==} @@ -4645,7 +5056,10 @@ packages: call-bind: 1.0.2 get-intrinsic: 1.2.1 is-typed-array: 1.1.12 - dev: false + + /is-arrayish@0.2.1: + resolution: {integrity: sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==} + dev: true /is-async-function@2.0.0: resolution: {integrity: sha512-Y1JXKrfykRJGdlDwdKlLpLyMIiWqWvuSd17TvZk68PLAOGOoF4Xyav1z0Xhoi+gCYjZVeC5SI+hYFOfvXmGRCA==} @@ -4658,7 +5072,6 @@ packages: resolution: {integrity: sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==} dependencies: has-bigints: 1.0.2 - dev: false /is-binary-path@2.1.0: resolution: {integrity: sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==} @@ -4672,7 +5085,6 @@ packages: dependencies: call-bind: 1.0.2 has-tostringtag: 1.0.0 - dev: false /is-builtin-module@3.2.1: resolution: {integrity: sha512-BSLE3HnV2syZ0FK0iMA/yUGplUeMmNz4AW5fnTunbCIqZi4vG3WjJT9FHMy5D69xmAYBHXQhJdALdpwVxV501A==} @@ -4684,7 +5096,13 @@ packages: /is-callable@1.2.7: resolution: {integrity: sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==} engines: {node: '>= 0.4'} - dev: false + + /is-ci@3.0.1: + resolution: {integrity: sha512-ZYvCgrefwqoQ6yTyYUbQu64HsITZ3NfKX1lzaEYdkTDcfKzzCI/wthRRYKkdjHKFVgNiXKAKm65Zo1pk2as/QQ==} + hasBin: true + dependencies: + ci-info: 3.9.0 + dev: true /is-core-module@2.13.1: resolution: {integrity: sha512-hHrIjvZsftOsvKSn2TRYl63zvxsgE0K+0mYMoH6gD4omR5IWB2KynivBQczo3+wF1cCkjzvptnI9Q0sPU66ilw==} @@ -4696,7 +5114,6 @@ packages: engines: {node: '>= 0.4'} dependencies: has-tostringtag: 1.0.0 - dev: false /is-docker@2.2.1: resolution: {integrity: sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==} @@ -4765,14 +5182,12 @@ packages: /is-negative-zero@2.0.2: resolution: {integrity: sha512-dqJvarLawXsFbNDeJW7zAz8ItJ9cd28YufuuFzh0G8pNHjJMnY08Dv7sYX2uF5UpQOwieAeOExEYAWWfu7ZZUA==} engines: {node: '>= 0.4'} - dev: false /is-number-object@1.0.7: resolution: {integrity: sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ==} engines: {node: '>= 0.4'} dependencies: has-tostringtag: 1.0.0 - dev: false /is-number@7.0.0: resolution: {integrity: sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==} @@ -4782,6 +5197,11 @@ packages: resolution: {integrity: sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==} engines: {node: '>=8'} + /is-plain-obj@1.1.0: + resolution: {integrity: sha512-yvkRyxmFKEOQ4pNXCmJG5AEQNlXJS5LaONXo5/cLdTZdWvsZ1ioJEonLGAosKlMWE8lwUy/bJzMjcw8az73+Fg==} + engines: {node: '>=0.10.0'} + dev: true + /is-plain-object@5.0.0: resolution: {integrity: sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q==} engines: {node: '>=0.10.0'} @@ -4799,7 +5219,6 @@ packages: dependencies: call-bind: 1.0.2 has-tostringtag: 1.0.0 - dev: false /is-set@2.0.2: resolution: {integrity: sha512-+2cnTEZeY5z/iXGbLhPrOAaK/Mau5k5eXq9j14CpRTftq0pAJu2MwVRSZhyZWBzx3o6X795Lz6Bpb6R0GKf37g==} @@ -4809,7 +5228,6 @@ packages: resolution: {integrity: sha512-sqN2UDu1/0y6uvXyStCOzyhAjCSlHceFoMKJW8W9EU9cvic/QdsZ0kEU93HEy3IUEFZIiH/3w+AH/UQbPHNdhA==} dependencies: call-bind: 1.0.2 - dev: false /is-stream@2.0.1: resolution: {integrity: sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==} @@ -4824,14 +5242,19 @@ packages: engines: {node: '>= 0.4'} dependencies: has-tostringtag: 1.0.0 - dev: false + + /is-subdir@1.2.0: + resolution: {integrity: sha512-2AT6j+gXe/1ueqbW6fLZJiIw3F8iXGJtt0yDrZaBhAZEG1raiTxKWU+IPqMCzQAXOUCKdA4UDMgacKH25XG2Cw==} + engines: {node: '>=4'} + dependencies: + better-path-resolve: 1.0.0 + dev: true /is-symbol@1.0.4: resolution: {integrity: sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==} engines: {node: '>= 0.4'} dependencies: has-symbols: 1.0.3 - dev: false /is-there@4.5.1: resolution: {integrity: sha512-vIZ7HTXAoRoIwYSsTnxb0sg9L6rth+JOulNcavsbskQkCIWoSM2cjFOWZs4wGziGZER+Xgs/HXiCQZgiL8ppxQ==} @@ -4842,7 +5265,6 @@ packages: engines: {node: '>= 0.4'} dependencies: which-typed-array: 1.1.11 - dev: false /is-weakmap@2.0.1: resolution: {integrity: sha512-NSBR4kH5oVj1Uwvv970ruUkCV7O1mzgVFO4/rev2cLRda9Tm9HrL70ZPut4rOHgY0FNrUu9BCbXA2sdQ+x0chA==} @@ -4852,7 +5274,6 @@ packages: resolution: {integrity: sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==} dependencies: call-bind: 1.0.2 - dev: false /is-weakset@2.0.2: resolution: {integrity: sha512-t2yVvttHkQktwnNNmBQ98AhENLdPUTDTE21uPqAQ0ARwQfGeQKRVS0NNurH7bTf7RrvcVn1OOge45CnBeHCSmg==} @@ -4866,6 +5287,11 @@ packages: engines: {node: '>=12.13'} dev: true + /is-windows@1.0.2: + resolution: {integrity: sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==} + engines: {node: '>=0.10.0'} + dev: true + /is-wsl@2.2.0: resolution: {integrity: sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==} engines: {node: '>=8'} @@ -4874,7 +5300,6 @@ packages: /isarray@2.0.5: resolution: {integrity: sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==} - dev: false /isexe@2.0.0: resolution: {integrity: sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==} @@ -4942,6 +5367,14 @@ packages: /js-tokens@4.0.0: resolution: {integrity: sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==} + /js-yaml@3.14.1: + resolution: {integrity: sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==} + hasBin: true + dependencies: + argparse: 1.0.10 + esprima: 4.0.1 + dev: true + /js-yaml@4.1.0: resolution: {integrity: sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==} hasBin: true @@ -4953,6 +5386,10 @@ packages: engines: {node: '>=4'} hasBin: true + /json-parse-even-better-errors@2.3.1: + resolution: {integrity: sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==} + dev: true + /json-schema-traverse@0.4.1: resolution: {integrity: sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==} @@ -4967,6 +5404,12 @@ packages: /jsonc-parser@3.2.0: resolution: {integrity: sha512-gfFQZrcTc8CnKXp6Y4/CBT3fTc0OVuDofpre4aEeEpSBPV5X5v4+Vmx+8snU7RLPrNHPKSgLxGo9YuQzz20o+w==} + /jsonfile@4.0.0: + resolution: {integrity: sha512-m6F1R3z8jjlf2imQHS2Qez5sjKWQzbuuhuJ/FKYFRZvPE3PuHcSMVZzfsLhGVOkfd20obL5SWEBew5ShlquNxg==} + optionalDependencies: + graceful-fs: 4.2.11 + dev: true + /jsonfile@6.1.0: resolution: {integrity: sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==} dependencies: @@ -5015,6 +5458,11 @@ packages: resolution: {integrity: sha512-7n6wXq4gNgBELfDCpzKc+mRrZFs7D+wgfF5WRFLNAr4DA/qtr9Js8uOAVAfHhuLMfAcQ0pRKqbpjx+TcJVdE1Q==} dev: false + /kind-of@6.0.3: + resolution: {integrity: sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==} + engines: {node: '>=0.10.0'} + dev: true + /kleur@4.1.5: resolution: {integrity: sha512-o+NO+8WrRiQEE4/7nwRJhN1HWpVmJm511pBHUxPLtp0BUISzlBplORYSmTclCnJvQq2tKu/sgl3xVpkc7ZWuQQ==} engines: {node: '>=6'} @@ -5046,6 +5494,10 @@ packages: resolution: {integrity: sha512-utWOt/GHzuUxnLKxB6dk81RoOeoNeHgbrXiuGk4yyF5qlRz+iIVWu56E2fqGHFrXz0QNUhLB/8nKqvRH66JKGQ==} engines: {node: '>=10'} + /lines-and-columns@1.2.4: + resolution: {integrity: sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==} + dev: true + /lint-staged@15.1.0: resolution: {integrity: sha512-ZPKXWHVlL7uwVpy8OZ7YQjYDAuO5X4kMh0XgZvPNxLcCCngd0PO5jKQyy3+s4TL2EnHoIXIzP1422f/l3nZKMw==} engines: {node: '>=18.12.0'} @@ -5075,6 +5527,16 @@ packages: rfdc: 1.3.0 wrap-ansi: 8.1.0 + /load-yaml-file@0.2.0: + resolution: {integrity: sha512-OfCBkGEw4nN6JLtgRidPX6QxjBQGQf72q3si2uvqyFEMbycSFFHwAZeXx6cJgFM9wmLrf9zBwCP3Ivqa+LLZPw==} + engines: {node: '>=6'} + dependencies: + graceful-fs: 4.2.11 + js-yaml: 3.14.1 + pify: 4.0.1 + strip-bom: 3.0.0 + dev: true + /loader-utils@3.2.1: resolution: {integrity: sha512-ZvFw1KWS3GVyYBYb7qkmRM/WwL2TQQBxgCK62rlvm4WpVQ23Nb4tYjApUlfjrEGvOs7KHEsmyUn75OHZrJMWPw==} engines: {node: '>= 12.13.0'} @@ -5085,6 +5547,13 @@ packages: engines: {node: '>=14'} dev: true + /locate-path@5.0.0: + resolution: {integrity: sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==} + engines: {node: '>=8'} + dependencies: + p-locate: 4.1.0 + dev: true + /locate-path@6.0.0: resolution: {integrity: sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==} engines: {node: '>=10'} @@ -5108,6 +5577,10 @@ packages: /lodash.merge@4.6.2: resolution: {integrity: sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==} + /lodash.startcase@4.4.0: + resolution: {integrity: sha512-+WKqsK294HMSc2jEbNgpHpd0JfIBhp7rEV4aqXWqFr6AlXov+SlcgB1Fv01y2kGe3Gc8nMW7VA0SrGuSkRfIEg==} + dev: true + /lodash.uniq@4.5.0: resolution: {integrity: sha512-xfBaXQd9ryd9dlSDvnvI0lvxfLJlYAZzXomUYzLKtUeOQvOP5piqAWuGtrhWeqaXK9hhoM/iyJc5AV+XfsX3HQ==} dev: true @@ -5144,6 +5617,13 @@ packages: engines: {node: 14 || >=16.14} dev: true + /lru-cache@4.1.5: + resolution: {integrity: sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==} + dependencies: + pseudomap: 1.0.2 + yallist: 2.1.2 + dev: true + /lru-cache@5.1.1: resolution: {integrity: sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==} dependencies: @@ -5173,6 +5653,16 @@ packages: resolution: {integrity: sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==} dev: true + /map-obj@1.0.1: + resolution: {integrity: sha512-7N/q3lyZ+LVCp7PzuxrJr4KMbBE2hW7BT7YNia330OFxIf4d3r5zVpicP2650l7CPN6RM9zOJRl3NGpqSiw3Eg==} + engines: {node: '>=0.10.0'} + dev: true + + /map-obj@4.3.0: + resolution: {integrity: sha512-hdN1wVrZbb29eBGiGjJbeP8JbKjq1urkHJ/LIP/NY48MZ1QVXUsQBV1G1zvYFHn1XE06cwjBsOI2K3Ulnj1YXQ==} + engines: {node: '>=8'} + dev: true + /mdn-data@2.0.28: resolution: {integrity: sha512-aylIc7Z9y4yzHYAJNuESG3hfhC+0Ibp/MAMiaOZgNv4pmEdFyfZhhhny4MNiAfWdBQ1RQ2mfDWmM1x8SvGyp8g==} dev: true @@ -5186,6 +5676,23 @@ packages: dependencies: '@babel/runtime': 7.22.6 + /meow@6.1.1: + resolution: {integrity: sha512-3YffViIt2QWgTy6Pale5QpopX/IvU3LPL03jOTqp6pGj3VjesdO/U8CuHMKpnQr4shCNCM5fd5XFFvIIl6JBHg==} + engines: {node: '>=8'} + dependencies: + '@types/minimist': 1.2.5 + camelcase-keys: 6.2.2 + decamelize-keys: 1.1.1 + hard-rejection: 2.1.0 + minimist-options: 4.1.0 + normalize-package-data: 2.5.0 + read-pkg-up: 7.0.1 + redent: 3.0.0 + trim-newlines: 3.0.1 + type-fest: 0.13.1 + yargs-parser: 18.1.3 + dev: true + /merge-anything@5.1.7: resolution: {integrity: sha512-eRtbOb1N5iyH0tkQDAoQ4Ipsp/5qSR79Dzrz8hEPxRX10RWWR/iQXdoKmBSRCThY1Fh5EhISDtpSc93fpxUniQ==} engines: {node: '>=12.13'} @@ -5227,6 +5734,11 @@ packages: resolution: {integrity: sha512-vqiC06CuhBTUdZH+RYl8sFrL096vA45Ok5ISO6sE/Mr1jRbGH4Csnhi8f3wKVl7x8mO4Au7Ir9D3Oyv1VYMFJw==} engines: {node: '>=12'} + /min-indent@1.0.1: + resolution: {integrity: sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg==} + engines: {node: '>=4'} + dev: true + /minimatch@3.1.2: resolution: {integrity: sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==} dependencies: @@ -5246,6 +5758,15 @@ packages: brace-expansion: 2.0.1 dev: true + /minimist-options@4.1.0: + resolution: {integrity: sha512-Q4r8ghd80yhO/0j1O3B2BjweX3fiHg9cdOwjJd2J76Q135c+NDxGCqdYKQ1SKBuFfgWbAUzBfvYjPUEeNgqN1A==} + engines: {node: '>= 6'} + dependencies: + arrify: 1.0.1 + is-plain-obj: 1.1.0 + kind-of: 6.0.3 + dev: true + /minipass@3.3.6: resolution: {integrity: sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==} engines: {node: '>=8'} @@ -5272,6 +5793,11 @@ packages: resolution: {integrity: sha512-vKivATfr97l2/QBCYAkXYDbrIWPM2IIKEl7YPhjCvKlG3kE2gm+uBo6nEXK3M5/Ffh/FLpKExzOQ3JJoJGFKBw==} dev: false + /mixme@0.5.9: + resolution: {integrity: sha512-VC5fg6ySUscaWUpI4gxCBTQMH2RdUpNrk+MsbpCYtIvf9SBJdiUey4qE7BXviJsJR4nDQxCZ+3yaYNW3guz/Pw==} + engines: {node: '>= 8.0.0'} + dev: true + /mkdirp@1.0.4: resolution: {integrity: sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==} engines: {node: '>=10'} @@ -5366,6 +5892,15 @@ packages: /node-releases@2.0.13: resolution: {integrity: sha512-uYr7J37ae/ORWdZeQ1xxMJe3NtdmqMC/JZK+geofDrkLUApKRHPd18/TxtBOJ4A0/+uUIliorNrfYV6s1b02eQ==} + /normalize-package-data@2.5.0: + resolution: {integrity: sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==} + dependencies: + hosted-git-info: 2.8.9 + resolve: 1.22.8 + semver: 5.7.2 + validate-npm-package-license: 3.0.4 + dev: true + /normalize-path@3.0.0: resolution: {integrity: sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==} engines: {node: '>=0.10.0'} @@ -5395,12 +5930,10 @@ packages: /object-inspect@1.12.3: resolution: {integrity: sha512-geUvdk7c+eizMNUDkRpW1wJwgfOiOeHbxBR/hLXK1aT6zmVSO0jsQcs7fj6MGw89jC/cjGfLcNOrtMYtGqm81g==} - dev: false /object-keys@1.1.1: resolution: {integrity: sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==} engines: {node: '>= 0.4'} - dev: false /object.assign@4.1.4: resolution: {integrity: sha512-1mxKf0e58bvyjSCtKYY4sRe9itRk3PJpquJOjeIkz885CczcI4IvJJDLPS72oowuSh+pBxUFROpX+TU++hxhZQ==} @@ -5410,7 +5943,6 @@ packages: define-properties: 1.2.0 has-symbols: 1.0.3 object-keys: 1.1.1 - dev: false /object.entries@1.1.7: resolution: {integrity: sha512-jCBs/0plmPsOnrKAfFQXRG2NFjlhZgjjcBLSmTnEhU8U6vVTsVe8ANeQJCHTl3gSsI4J+0emOoCgoKlmQPMgmA==} @@ -5503,9 +6035,32 @@ packages: prelude-ls: 1.2.1 type-check: 0.4.0 + /os-tmpdir@1.0.2: + resolution: {integrity: sha512-D2FR03Vir7FIu45XBY20mTb+/ZSWB00sjU9jdQXt83gDrI4Ztz5Fs7/yy74g2N5SVQY4xY1qDr4rNddwYRVX0g==} + engines: {node: '>=0.10.0'} + dev: true + + /outdent@0.5.0: + resolution: {integrity: sha512-/jHxFIzoMXdqPzTaCpFzAAWhpkSjZPF4Vsn6jAfNpmbH/ymsmd7Qc6VE9BGn0L6YMj6uwpQLxCECpus4ukKS9Q==} + dev: true + /outdent@0.8.0: resolution: {integrity: sha512-KiOAIsdpUTcAXuykya5fnVVT+/5uS0Q1mrkRHcF89tpieSmY33O/tmc54CqwA+bfhbtEfZUNLHaPUiB9X3jt1A==} + /p-filter@2.1.0: + resolution: {integrity: sha512-ZBxxZ5sL2HghephhpGAQdoskxplTwr7ICaehZwLIlfL6acuVgZPm8yBNuRAFBGEqtD/hmUeq9eqLg2ys9Xr/yw==} + engines: {node: '>=8'} + dependencies: + p-map: 2.1.0 + dev: true + + /p-limit@2.3.0: + resolution: {integrity: sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==} + engines: {node: '>=6'} + dependencies: + p-try: 2.2.0 + dev: true + /p-limit@3.1.0: resolution: {integrity: sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==} engines: {node: '>=10'} @@ -5519,6 +6074,13 @@ packages: yocto-queue: 1.0.0 dev: true + /p-locate@4.1.0: + resolution: {integrity: sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==} + engines: {node: '>=8'} + dependencies: + p-limit: 2.3.0 + dev: true + /p-locate@5.0.0: resolution: {integrity: sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==} engines: {node: '>=10'} @@ -5532,12 +6094,32 @@ packages: p-limit: 4.0.0 dev: true + /p-map@2.1.0: + resolution: {integrity: sha512-y3b8Kpd8OAN444hxfBbFfj1FY/RjtTd8tzYwhUqNYXx0fXx2iX4maP4Qr6qhIKbQXI02wTLAda4fYUbDagTUFw==} + engines: {node: '>=6'} + dev: true + + /p-try@2.2.0: + resolution: {integrity: sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==} + engines: {node: '>=6'} + dev: true + /parent-module@1.0.1: resolution: {integrity: sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==} engines: {node: '>=6'} dependencies: callsites: 3.1.0 + /parse-json@5.2.0: + resolution: {integrity: sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==} + engines: {node: '>=8'} + dependencies: + '@babel/code-frame': 7.22.13 + error-ex: 1.3.2 + json-parse-even-better-errors: 2.3.1 + lines-and-columns: 1.2.4 + dev: true + /parse5-htmlparser2-tree-adapter@7.0.0: resolution: {integrity: sha512-B77tOZrqqfUfnVcOrUvfdLbz4pu4RopLD/4vmu3HUPswwTA8OH0EMW9BlWR2B0RCoiZRAHEUu7IxeP1Pd1UU+g==} dependencies: @@ -5609,6 +6191,18 @@ packages: engines: {node: '>=0.10'} hasBin: true + /pify@4.0.1: + resolution: {integrity: sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==} + engines: {node: '>=6'} + dev: true + + /pkg-dir@4.2.0: + resolution: {integrity: sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==} + engines: {node: '>=8'} + dependencies: + find-up: 4.1.0 + dev: true + /pkg-types@1.0.3: resolution: {integrity: sha512-nN7pYi0AQqJnoLPC9eHFQ8AcyaixBUOwvqc5TDnIKCMEE6I0y8P7OKA7fPexsXGCGxQDl/cmrLAp26LhcwxZ4A==} dependencies: @@ -6006,6 +6600,16 @@ packages: resolution: {integrity: sha512-X/K43vocUHDg0XhWVmTTMbec4LT/iBMh+csCEqJk+pJqegaXsvjdqN80ZZ3L+93azWCnWCZ+WGwYb8SplxeNjA==} dev: false + /preferred-pm@3.1.2: + resolution: {integrity: sha512-nk7dKrcW8hfCZ4H6klWcdRknBOXWzNQByJ0oJyX97BOupsYD+FzLS4hflgEu/uPUEHZCuRfMxzCBsuWd7OzT8Q==} + engines: {node: '>=10'} + dependencies: + find-up: 5.0.0 + find-yarn-workspace-root2: 1.2.16 + path-exists: 4.0.0 + which-pm: 2.0.0 + dev: true + /prelude-ls@1.2.1: resolution: {integrity: sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==} engines: {node: '>= 0.8.0'} @@ -6017,6 +6621,12 @@ packages: fast-diff: 1.3.0 dev: false + /prettier@2.8.8: + resolution: {integrity: sha512-tdN8qQGvNjw4CHbY+XXk0JgCXn9QiF21a55rBe5LJAU+kDyC4WQn4+awm2Xfk2lQMk5fKup9XgzTZtGkjBdP9Q==} + engines: {node: '>=10.13.0'} + hasBin: true + dev: true + /prettier@3.0.3: resolution: {integrity: sha512-L/4pUDMxcNa8R/EthV08Zt42WBO4h1rarVtK0K+QJG0X187OLo7l699jWw0GKuwzkPQ//jMFA/8Xm6Fh3J/DAg==} engines: {node: '>=14'} @@ -6048,6 +6658,10 @@ packages: resolution: {integrity: sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==} dev: true + /pseudomap@1.0.2: + resolution: {integrity: sha512-b/YwNhb8lk1Zz2+bXXpS/LK9OisiZZ1SNsSLxN1x2OXVEhW2Ckr/7mWE5vrC1ZTiJlD9g19jWszTmJsB+oEpFQ==} + dev: true + /punycode@2.3.0: resolution: {integrity: sha512-rRV+zQD8tVFys26lAGR9WUuS4iUAngJScM+ZRSKtvl5tKeZ2t5bvdNFdNHBW9FWR4guGHlgmsZ1G7BSm2wTbuA==} engines: {node: '>=6'} @@ -6055,6 +6669,11 @@ packages: /queue-microtask@1.2.3: resolution: {integrity: sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==} + /quick-lru@4.0.1: + resolution: {integrity: sha512-ARhCpm70fzdcvNQfPoy49IaanKkTlRWF2JMzqhcJbhSFRZv7nPTvZJdcY7301IPmvW+/p0RgIWnQDLJxifsQ7g==} + engines: {node: '>=8'} + dev: true + /rc9@2.1.1: resolution: {integrity: sha512-lNeOl38Ws0eNxpO3+wD1I9rkHGQyj1NU1jlzv4go2CtEnEQEUfqnIvZG7W+bC/aXdJ27n5x/yUjb6RoT9tko+Q==} dependencies: @@ -6077,12 +6696,49 @@ packages: loose-envify: 1.4.0 dev: false + /read-pkg-up@7.0.1: + resolution: {integrity: sha512-zK0TB7Xd6JpCLmlLmufqykGE+/TlOePD6qKClNW7hHDKFh/J7/7gCWGR7joEQEW1bKq3a3yUZSObOoWLFQ4ohg==} + engines: {node: '>=8'} + dependencies: + find-up: 4.1.0 + read-pkg: 5.2.0 + type-fest: 0.8.1 + dev: true + + /read-pkg@5.2.0: + resolution: {integrity: sha512-Ug69mNOpfvKDAc2Q8DRpMjjzdtrnv9HcSMX+4VsZxD1aZ6ZzrIE7rlzXBtWTyhULSMKg076AW6WR5iZpD0JiOg==} + engines: {node: '>=8'} + dependencies: + '@types/normalize-package-data': 2.4.4 + normalize-package-data: 2.5.0 + parse-json: 5.2.0 + type-fest: 0.6.0 + dev: true + + /read-yaml-file@1.1.0: + resolution: {integrity: sha512-VIMnQi/Z4HT2Fxuwg5KrY174U1VdUIASQVWXXyqtNRtxSr9IYkn1rsI6Tb6HsrHCmB7gVpNwX6JxPTHcH6IoTA==} + engines: {node: '>=6'} + dependencies: + graceful-fs: 4.2.11 + js-yaml: 3.14.1 + pify: 4.0.1 + strip-bom: 3.0.0 + dev: true + /readdirp@3.6.0: resolution: {integrity: sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==} engines: {node: '>=8.10.0'} dependencies: picomatch: 2.3.1 + /redent@3.0.0: + resolution: {integrity: sha512-6tDA8g98We0zd0GvVeMT9arEOnTw9qM03L9cJXaCjrip1OO764RDBLBfrB4cwzNGDj5OA5ioymC9GkizgWJDUg==} + engines: {node: '>=8'} + dependencies: + indent-string: 4.0.0 + strip-indent: 3.0.0 + dev: true + /reflect.getprototypeof@1.0.4: resolution: {integrity: sha512-ECkTw8TmJwW60lOTR+ZkODISW6RQ8+2CL3COqtiJKLd6MmB45hN51HprHFziKLGkAuTGQhBb91V8cy+KHlaCjw==} engines: {node: '>= 0.4'} @@ -6100,7 +6756,6 @@ packages: /regenerator-runtime@0.14.0: resolution: {integrity: sha512-srw17NI0TUWHuGa5CFGGmhfNIeja30WMBfbslPNhf6JrqQlLN5gcrvig1oqPxiVaXb0oW0XRKtH6Nngs5lKCIA==} - dev: false /regexp.prototype.flags@1.5.0: resolution: {integrity: sha512-0SutC3pNudRKgquxGoRGIz946MZVHqbNfPjBdxeOhBrdgDKlRoXmYLQN9xRbrR09ZXWeGAdPuif7egofn6v5LA==} @@ -6109,7 +6764,6 @@ packages: call-bind: 1.0.2 define-properties: 1.2.0 functions-have-names: 1.2.3 - dev: false /require-directory@2.1.1: resolution: {integrity: sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==} @@ -6120,10 +6774,19 @@ packages: resolution: {integrity: sha512-oyrU88skkMtDdauHDuKVrgR+zuItqr6/c//FXzvmxRGMexSDc6hNvJInGW3LL46n+8b50RykrvwSUIIQH2LQ5A==} dev: true + /require-main-filename@2.0.0: + resolution: {integrity: sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==} + dev: true + /resolve-from@4.0.0: resolution: {integrity: sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==} engines: {node: '>=4'} + /resolve-from@5.0.0: + resolution: {integrity: sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==} + engines: {node: '>=8'} + dev: true + /resolve-pkg-maps@1.0.0: resolution: {integrity: sha512-seS2Tj26TBVOC2NIc2rOe2y2ZO7efxITtLZcGSOnHHNOQ7CkiUBfw0Iw2ck6xkIhPwLhKNLS8BO+hEpngQlqzw==} dev: true @@ -6230,7 +6893,6 @@ packages: get-intrinsic: 1.2.1 has-symbols: 1.0.3 isarray: 2.0.5 - dev: false /safe-array-concat@1.0.1: resolution: {integrity: sha512-6XbUAseYE2KtOuGueyeobCySj9L4+66Tn6KQMOPQJrAJEowYKW/YR/MGJZl7FdydUdaFu4LYyDZjxf4/Nmo23Q==} @@ -6248,12 +6910,20 @@ packages: call-bind: 1.0.2 get-intrinsic: 1.2.1 is-regex: 1.1.4 - dev: false + + /safer-buffer@2.1.2: + resolution: {integrity: sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==} + dev: true /scule@1.0.0: resolution: {integrity: sha512-4AsO/FrViE/iDNEPaAQlb77tf0csuq27EsVpy6ett584EcRTp6pTDLoGWVxCD77y5iU5FauOvhsI4o1APwPoSQ==} dev: true + /semver@5.7.2: + resolution: {integrity: sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==} + hasBin: true + dev: true + /semver@6.3.1: resolution: {integrity: sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==} hasBin: true @@ -6269,6 +6939,10 @@ packages: resolution: {integrity: sha512-5WDeMpv7rmEylsypRj1iwRVHE/QLsMLiZ+9savlNNQEVdgGia1iRMb7qyaAagY0wu/7+QTe6d2wldk/lgaLb6g==} engines: {node: '>=10'} + /set-blocking@2.0.0: + resolution: {integrity: sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw==} + dev: true + /set-function-name@2.0.1: resolution: {integrity: sha512-tMNCiqYVkXIZgc2Hnoy2IvC/f8ezc5koaRFkCjrpWzGpCd3qbZXPzVy9MAZzK1ch/X0jvSkojys3oqJN0qCmdA==} engines: {node: '>= 0.4'} @@ -6278,12 +6952,24 @@ packages: has-property-descriptors: 1.0.0 dev: false + /shebang-command@1.2.0: + resolution: {integrity: sha512-EV3L1+UQWGor21OmnvojK36mhg+TyIKDh3iFBKBohr5xeXIhNBcx8oWdgkTEEQ+BEFFYdLRuqMfd5L84N1V5Vg==} + engines: {node: '>=0.10.0'} + dependencies: + shebang-regex: 1.0.0 + dev: true + /shebang-command@2.0.0: resolution: {integrity: sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==} engines: {node: '>=8'} dependencies: shebang-regex: 3.0.0 + /shebang-regex@1.0.0: + resolution: {integrity: sha512-wpoSFAxys6b2a2wHZ1XpDSgD7N9iVjg29Ph9uV/uaP9Ex/KXlkTZTeddxDPSYQpgvzKLGJke2UU0AzoGCjNIvQ==} + engines: {node: '>=0.10.0'} + dev: true + /shebang-regex@3.0.0: resolution: {integrity: sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==} engines: {node: '>=8'} @@ -6298,7 +6984,6 @@ packages: call-bind: 1.0.2 get-intrinsic: 1.2.1 object-inspect: 1.12.3 - dev: false /siginfo@2.0.0: resolution: {integrity: sha512-ybx0WO1/8bSBLEWXZvEd7gMW3Sn3JFlW3TvX1nREbDLRNQNaeNN8WK0meBwPdAaOI7TtRRRJn/Es1zhrrCHu7g==} @@ -6314,7 +6999,6 @@ packages: /slash@3.0.0: resolution: {integrity: sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==} engines: {node: '>=8'} - dev: false /slash@4.0.0: resolution: {integrity: sha512-3dOsAHXXUkQTpOYcoAxLIorMTp4gIQr5IW3iVb7A7lFIp0VHhnynm9izx6TssdrIcVIESAlVjtnO2K8bg+Coew==} @@ -6328,6 +7012,19 @@ packages: ansi-styles: 6.2.1 is-fullwidth-code-point: 4.0.0 + /smartwrap@2.0.2: + resolution: {integrity: sha512-vCsKNQxb7PnCNd2wY1WClWifAc2lwqsG8OaswpJkVJsvMGcnEntdTCDajZCkk93Ay1U3t/9puJmb525Rg5MZBA==} + engines: {node: '>=6'} + hasBin: true + dependencies: + array.prototype.flat: 1.3.2 + breakword: 1.0.6 + grapheme-splitter: 1.0.4 + strip-ansi: 6.0.1 + wcwidth: 1.0.1 + yargs: 15.4.1 + dev: true + /solid-devtools@0.28.1(solid-js@1.8.5)(vite@4.5.0): resolution: {integrity: sha512-SPwLgNra9qlemTq/vBz4t5s7C19zsHpXDWjzV5crr9bEVWVnBV6nKYradxQvR+lBZPXV/ImcWKvPhtXT0Hu2cg==} peerDependencies: @@ -6389,6 +7086,39 @@ packages: resolution: {integrity: sha512-zC8zGoGkmc8J9ndvml8Xksr1Amk9qBujgbF0JAIWO7kXr43w0h/0GJNM/Vustixu+YE8N/MTrQ7N31FvHUACxQ==} dev: true + /spawndamnit@2.0.0: + resolution: {integrity: sha512-j4JKEcncSjFlqIwU5L/rp2N5SIPsdxaRsIv678+TZxZ0SRDJTm8JrxJMjE/XuiEZNEir3S8l0Fa3Ke339WI4qA==} + dependencies: + cross-spawn: 5.1.0 + signal-exit: 3.0.7 + dev: true + + /spdx-correct@3.2.0: + resolution: {integrity: sha512-kN9dJbvnySHULIluDHy32WHRUu3Og7B9sbY7tsFLctQkIqnMh3hErYgdMjTYuqmcXX+lK5T1lnUt3G7zNswmZA==} + dependencies: + spdx-expression-parse: 3.0.1 + spdx-license-ids: 3.0.16 + dev: true + + /spdx-exceptions@2.3.0: + resolution: {integrity: sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==} + dev: true + + /spdx-expression-parse@3.0.1: + resolution: {integrity: sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==} + dependencies: + spdx-exceptions: 2.3.0 + spdx-license-ids: 3.0.16 + dev: true + + /spdx-license-ids@3.0.16: + resolution: {integrity: sha512-eWN+LnM3GR6gPu35WxNgbGl8rmY1AEmoMDvL/QD6zYmPWgywxWqJWNdLGT+ke8dKNWrcYgYjPpG5gbTfghP8rw==} + dev: true + + /sprintf-js@1.0.3: + resolution: {integrity: sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==} + dev: true + /stackback@0.0.2: resolution: {integrity: sha512-1XMJE5fQo1jGH6Y/7ebnwPOBEkIEnT4QF32d5R1+VXdXveM0IBMJt8zfaxX1P3QhVwrYe+576+jkANtSS2mBbw==} dev: true @@ -6397,6 +7127,12 @@ packages: resolution: {integrity: sha512-f9aPhy8fYBuMN+sNfakZV18U39PbalgjXG3lLB9WkaYTxijru61wb57V9wxxNthXM5Sd88ETBWi29qLAsHO52Q==} dev: true + /stream-transform@2.1.3: + resolution: {integrity: sha512-9GHUiM5hMiCi6Y03jD2ARC1ettBXkQBoQAe7nJsPknnI0ow10aXjTnew8QtYQmLjzn974BnmWEAJgCY6ZP1DeQ==} + dependencies: + mixme: 0.5.9 + dev: true + /string-argv@0.3.2: resolution: {integrity: sha512-aqD2Q0144Z+/RqG52NeHEkZauTAUWJO8c6yTftGJKO3Tja5tUgIfmIl6kExvhtxSDP7fXB6DvzkfMpCd/F3G+Q==} engines: {node: '>=0.6.19'} @@ -6443,7 +7179,6 @@ packages: call-bind: 1.0.2 define-properties: 1.2.0 es-abstract: 1.22.1 - dev: false /string.prototype.trimend@1.0.6: resolution: {integrity: sha512-JySq+4mrPf9EsDBEDYMOb/lM7XQLulwg5R/m1r0PXEFqrV0qHvl58sdTilSXtKOflCsK2E8jxf+GKC0T07RWwQ==} @@ -6451,7 +7186,6 @@ packages: call-bind: 1.0.2 define-properties: 1.2.0 es-abstract: 1.22.1 - dev: false /string.prototype.trimstart@1.0.6: resolution: {integrity: sha512-omqjMDaY92pbn5HOX7f9IccLA+U1tA9GvtU4JrodiXFfYB7jPzzHpRzpglLAjtUV6bB557zwClJezTqnAiYnQA==} @@ -6459,7 +7193,6 @@ packages: call-bind: 1.0.2 define-properties: 1.2.0 es-abstract: 1.22.1 - dev: false /strip-ansi@6.0.1: resolution: {integrity: sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==} @@ -6473,6 +7206,11 @@ packages: dependencies: ansi-regex: 6.0.1 + /strip-bom@3.0.0: + resolution: {integrity: sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==} + engines: {node: '>=4'} + dev: true + /strip-final-newline@2.0.0: resolution: {integrity: sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==} engines: {node: '>=6'} @@ -6481,6 +7219,13 @@ packages: resolution: {integrity: sha512-dOESqjYr96iWYylGObzd39EuNTa5VJxyvVAEm5Jnh7KGo75V43Hk1odPQkNDyXNmUR6k+gEiDVXnjB8HJ3crXw==} engines: {node: '>=12'} + /strip-indent@3.0.0: + resolution: {integrity: sha512-laJTa3Jb+VQpaC6DseHhF7dXVqHTfJPCRDaEbid/drOhgitgYku/letMUqOXFoWV0zIIUbjpdH2t+tYj4bQMRQ==} + engines: {node: '>=8'} + dependencies: + min-indent: 1.0.1 + dev: true + /strip-json-comments@3.1.1: resolution: {integrity: sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==} engines: {node: '>=8'} @@ -6593,6 +7338,11 @@ packages: unique-string: 3.0.0 dev: true + /term-size@2.2.1: + resolution: {integrity: sha512-wK0Ri4fOGjv/XPy8SBHZChl8CM7uMc5VML7SqiQ0zG7+J5Vr+RMQDoHa2CNT6KHUnTGIXH34UDMkPzAUyapBZg==} + engines: {node: '>=8'} + dev: true + /test-exclude@6.0.0: resolution: {integrity: sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==} engines: {node: '>=8'} @@ -6627,6 +7377,13 @@ packages: resolution: {integrity: sha512-KxVu8EYHDPBdUYdKZdKtU2aj2XfEx9AfjXxE/Aj0vT06w2icA09Vus1rh6eSu1y01akYg6BjIK/hxyLJINoMLQ==} engines: {node: '>=12'} + /tmp@0.0.33: + resolution: {integrity: sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==} + engines: {node: '>=0.6.0'} + dependencies: + os-tmpdir: 1.0.2 + dev: true + /to-fast-properties@2.0.0: resolution: {integrity: sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==} engines: {node: '>=4'} @@ -6646,6 +7403,11 @@ packages: hasBin: true dev: true + /trim-newlines@3.0.1: + resolution: {integrity: sha512-c1PTsA3tYrIsLGkJkzHF+w9F2EyxfXGo4UyJc4pFL++FMjnq0HJS69T3M7d//gKrFKwy429bouPescbjecU+Zw==} + engines: {node: '>=8'} + dev: true + /ts-api-utils@1.0.1(typescript@5.2.2): resolution: {integrity: sha512-lC/RGlPmwdrIBFTX59wwNzqh7aR2otPNPR/5brHZm/XKFYKsfqxihXUe9pU3JI+3vGkl+vyCoNNnPhJn3aLK1A==} engines: {node: '>=16.13.0'} @@ -6715,6 +7477,20 @@ packages: fsevents: 2.3.3 dev: true + /tty-table@4.2.3: + resolution: {integrity: sha512-Fs15mu0vGzCrj8fmJNP7Ynxt5J7praPXqFN0leZeZBXJwkMxv9cb2D454k1ltrtUSJbZ4yH4e0CynsHLxmUfFA==} + engines: {node: '>=8.0.0'} + hasBin: true + dependencies: + chalk: 4.1.2 + csv: 5.5.3 + kleur: 4.1.5 + smartwrap: 2.0.2 + strip-ansi: 6.0.1 + wcwidth: 1.0.1 + yargs: 17.7.2 + dev: true + /turbo-darwin-64@1.10.16: resolution: {integrity: sha512-+Jk91FNcp9e9NCLYlvDDlp2HwEDp14F9N42IoW3dmHI5ZkGSXzalbhVcrx3DOox3QfiNUHxzWg4d7CnVNCuuMg==} cpu: [x64] @@ -6786,10 +7562,25 @@ packages: engines: {node: '>=4'} dev: true + /type-fest@0.13.1: + resolution: {integrity: sha512-34R7HTnG0XIJcBSn5XhDd7nNFPRcXYRZrBB2O2jdKqYODldSzBAqzsWoZYYvduky73toYS/ESqxPvkDf/F0XMg==} + engines: {node: '>=10'} + dev: true + /type-fest@0.20.2: resolution: {integrity: sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==} engines: {node: '>=10'} + /type-fest@0.6.0: + resolution: {integrity: sha512-q+MB8nYR1KDLrgr4G5yemftpMC7/QLqVndBmEEdqzmNj5dcFOO4Oo8qlwZE3ULT3+Zim1F8Kq4cBnikNhlCMlg==} + engines: {node: '>=8'} + dev: true + + /type-fest@0.8.1: + resolution: {integrity: sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==} + engines: {node: '>=8'} + dev: true + /type-fest@1.4.0: resolution: {integrity: sha512-yGSza74xk0UG8k+pLh5oeoYirvIiWo5t0/o3zHHAO2tRDiZcxWP7fywNlXhqb6/r6sWvwi+RsyQMWhVLe4BVuA==} engines: {node: '>=10'} @@ -6806,7 +7597,6 @@ packages: call-bind: 1.0.2 get-intrinsic: 1.2.1 is-typed-array: 1.1.12 - dev: false /typed-array-byte-length@1.0.0: resolution: {integrity: sha512-Or/+kvLxNpeQ9DtSydonMxCx+9ZXOswtwJn17SNLvhptaXYDJvkFFP5zbfU/uLmvnBJlI4yrnXRxpdWH/M5tNA==} @@ -6816,7 +7606,6 @@ packages: for-each: 0.3.3 has-proto: 1.0.1 is-typed-array: 1.1.12 - dev: false /typed-array-byte-offset@1.0.0: resolution: {integrity: sha512-RD97prjEt9EL8YgAgpOkf3O4IF9lhJFr9g0htQkm0rchFp/Vx7LW5Q8fSXXub7BXAODyUQohRMyOc3faCPd0hg==} @@ -6827,7 +7616,6 @@ packages: for-each: 0.3.3 has-proto: 1.0.1 is-typed-array: 1.1.12 - dev: false /typed-array-length@1.0.4: resolution: {integrity: sha512-KjZypGq+I/H7HI5HlOoGHkWUUGq+Q0TPhQurLbyrVrvnKTBgzLhIJ7j6J/XTQOi0d1RjyZ0wdas8bKs2p0x3Ng==} @@ -6835,7 +7623,6 @@ packages: call-bind: 1.0.2 for-each: 0.3.3 is-typed-array: 1.1.12 - dev: false /typed-css-modules@0.8.0: resolution: {integrity: sha512-zX9n45IYv27B/85W/b7o+PLmSiLHKSGI/loE8etbIrkVPqB60S7Le7Bkcxl7KR1/visRJRPC/DDFiwx4370FEg==} @@ -6875,7 +7662,6 @@ packages: has-bigints: 1.0.2 has-symbols: 1.0.3 which-boxed-primitive: 1.0.2 - dev: false /unbuild@2.0.0(typescript@5.2.2): resolution: {integrity: sha512-JWCUYx3Oxdzvw2J9kTAp+DKE8df/BnH/JTSj6JyA4SH40ECdFu7FoJJcrm8G92B7TjofQ6GZGjJs50TRxoH6Wg==} @@ -6931,6 +7717,11 @@ packages: resolution: {integrity: sha512-isyNax3wXoKaulPDZWHQqbmIx1k2tb9fb3GGDBRxCscfYV2Ch7WxPArBsFEG8s/safwXTT7H4QGhaIkTp9447w==} dev: true + /universalify@0.1.2: + resolution: {integrity: sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==} + engines: {node: '>= 4.0.0'} + dev: true + /universalify@2.0.0: resolution: {integrity: sha512-hAZsKq7Yy11Zu1DE0OzWjw7nnLZmJZYTDZZyEFHZdUhV8FkH5MCfoU1XMaxXovpyW5nq5scPqq0ZDP9Zyl04oQ==} engines: {node: '>= 10.0.0'} @@ -7011,6 +7802,13 @@ packages: resolution: {integrity: sha512-hGdgQozCsQJMyfK5urgFcWEqsSSrK63Awe0t/IMR0bZ0QMtnuaiHzThW81guu3qx9abLi99NEuiaN6P9gVYsNg==} dev: true + /validate-npm-package-license@3.0.4: + resolution: {integrity: sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==} + dependencies: + spdx-correct: 3.2.0 + spdx-expression-parse: 3.0.1 + dev: true + /vite-node@0.28.5: resolution: {integrity: sha512-LmXb9saMGlrMZbXTvOveJKwMTBTNUH66c8rJnQ0ZPNX+myPEol64+szRzXtV5ORb0Hb/91yq+/D3oERoyAt6LA==} engines: {node: '>=v14.16.0'} @@ -7217,6 +8015,12 @@ packages: - terser dev: true + /wcwidth@1.0.1: + resolution: {integrity: sha512-XHPEwS0q6TaxcvG85+8EYkbiCux2XtWG2mkc47Ng2A77BQu9+DqIOJldST4HgPkuea7dvKSj5VgX3P1d4rW8Tg==} + dependencies: + defaults: 1.0.4 + dev: true + /webidl-conversions@3.0.1: resolution: {integrity: sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==} dev: true @@ -7236,7 +8040,6 @@ packages: is-number-object: 1.0.7 is-string: 1.0.7 is-symbol: 1.0.4 - dev: false /which-builtin-type@1.1.3: resolution: {integrity: sha512-YmjsSMDBYsM1CaFiayOVT06+KJeXf0o5M/CAd4o1lTadFAtacTUM49zoYxr/oroopFDfhvN6iEcBxUyc3gvKmw==} @@ -7265,6 +8068,18 @@ packages: is-weakset: 2.0.2 dev: false + /which-module@2.0.1: + resolution: {integrity: sha512-iBdZ57RDvnOR9AGBhML2vFZf7h8vmBjhoaZqODJBFWHVtKkDmKuHai3cx5PgVMrX5YDNp27AofYbAwctSS+vhQ==} + dev: true + + /which-pm@2.0.0: + resolution: {integrity: sha512-Lhs9Pmyph0p5n5Z3mVnN0yWcbQYUAD7rbQUiMsQxOJ3T57k7RFe35SUwWMf7dsbDZks1uOmw4AecB/JMDj3v/w==} + engines: {node: '>=8.15'} + dependencies: + load-yaml-file: 0.2.0 + path-exists: 4.0.0 + dev: true + /which-typed-array@1.1.11: resolution: {integrity: sha512-qe9UWWpkeG5yzZ0tNYxDmd7vo58HDBc39mZ0xWWpolAGADdFOzkfamWLDxkOWcvHQKVmdTyQdLD4NOfjLWTKew==} engines: {node: '>= 0.4'} @@ -7274,7 +8089,13 @@ packages: for-each: 0.3.3 gopd: 1.0.1 has-tostringtag: 1.0.0 - dev: false + + /which@1.3.1: + resolution: {integrity: sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==} + hasBin: true + dependencies: + isexe: 2.0.0 + dev: true /which@2.0.2: resolution: {integrity: sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==} @@ -7292,6 +8113,15 @@ packages: stackback: 0.0.2 dev: true + /wrap-ansi@6.2.0: + resolution: {integrity: sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==} + engines: {node: '>=8'} + dependencies: + ansi-styles: 4.3.0 + string-width: 4.2.3 + strip-ansi: 6.0.1 + dev: true + /wrap-ansi@7.0.0: resolution: {integrity: sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==} engines: {node: '>=10'} @@ -7312,11 +8142,19 @@ packages: /wrappy@1.0.2: resolution: {integrity: sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==} + /y18n@4.0.3: + resolution: {integrity: sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ==} + dev: true + /y18n@5.0.8: resolution: {integrity: sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==} engines: {node: '>=10'} dev: true + /yallist@2.1.2: + resolution: {integrity: sha512-ncTzHV7NvsQZkYe1DW7cbDLm0YpzHmZF5r/iyP3ZnQtMiJ+pjzisCiMNI+Sj+xQF5pXhSHxSB3uDbsBTzY/c2A==} + dev: true + /yallist@3.1.1: resolution: {integrity: sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==} @@ -7337,11 +8175,36 @@ packages: resolution: {integrity: sha512-8aAvwVUSHpfEqTQ4w/KMlf3HcRdt50E5ODIQJBw1fQ5RL34xabzxtUlzTXVqc4rkZsPbvrXKWnABCD7kWSmocA==} engines: {node: '>= 14'} + /yargs-parser@18.1.3: + resolution: {integrity: sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==} + engines: {node: '>=6'} + dependencies: + camelcase: 5.3.1 + decamelize: 1.2.0 + dev: true + /yargs-parser@21.1.1: resolution: {integrity: sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==} engines: {node: '>=12'} dev: true + /yargs@15.4.1: + resolution: {integrity: sha512-aePbxDmcYW++PaqBsJ+HYUFwCdv4LVvdnhBy78E57PIor8/OVvhMrADFFEDh8DHDFRv/O9i3lPhsENjO7QX0+A==} + engines: {node: '>=8'} + dependencies: + cliui: 6.0.0 + decamelize: 1.2.0 + find-up: 4.1.0 + 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.3 + which-module: 2.0.1 + y18n: 4.0.3 + yargs-parser: 18.1.3 + dev: true + /yargs@17.7.2: resolution: {integrity: sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==} engines: {node: '>=12'} From b08bd7ed0160189c4dda877db9a07cd55e34c94b Mon Sep 17 00:00:00 2001 From: Salama Ashoush Date: Mon, 13 Nov 2023 02:55:14 +0100 Subject: [PATCH 11/16] Update release workflow to use Changesets --- .github/workflows/release.yml | 47 +++++++++++++++++++++-------------- 1 file changed, 28 insertions(+), 19 deletions(-) diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 3383f215..a0b37627 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -1,29 +1,38 @@ -name: Release - -permissions: - contents: write - +name: Changesets on: push: - tags: - - 'v*' - + branches: + - main +env: + CI: true + PNPM_CACHE_FOLDER: .pnpm-store jobs: - release: + version: + timeout-minutes: 15 runs-on: ubuntu-latest steps: - - uses: actions/checkout@v3 + - name: checkout code repository + uses: actions/checkout@v3 with: fetch-depth: 0 - - - name: Install pnpm - uses: pnpm/action-setup@v2 - - - name: Set node + - name: setup node.js uses: actions/setup-node@v3 with: - node-version: 16.x - - - run: npx changelogithub + node-version: 21.x + - name: install pnpm + run: npm i pnpm@latest -g + - name: Setup npmrc + run: echo "//registry.npmjs.org/:_authToken=${{ secrets.NPM_TOKEN }}" > .npmrc + - name: setup pnpm config + run: pnpm config set store-dir $PNPM_CACHE_FOLDER + - name: install dependencies + run: pnpm install + - name: create and publish versions + uses: changesets/action@v1 + with: + version: pnpm ci:version + commit: 'chore: update versions' + title: 'chore: update versions' + publish: pnpm ci:publish env: - GITHUB_TOKEN: ${{secrets.GITHUB_TOKEN}} + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} From 507811cede6a76b02e908baee7bfc2ae8ef9cd57 Mon Sep 17 00:00:00 2001 From: Salama Ashoush Date: Mon, 13 Nov 2023 02:58:06 +0100 Subject: [PATCH 12/16] Fix export in .eslintrc.cjs file --- apps/cli/.eslintrc.cjs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/cli/.eslintrc.cjs b/apps/cli/.eslintrc.cjs index 944eaef2..ee665c8a 100644 --- a/apps/cli/.eslintrc.cjs +++ b/apps/cli/.eslintrc.cjs @@ -1,4 +1,4 @@ -export default { +module.exports = { root: true, extends: '@design-sync/eslint-config/node', }; From 6e3a081ac0f1924538de9768e7ab355885ced58c Mon Sep 17 00:00:00 2001 From: Salama Ashoush Date: Mon, 13 Nov 2023 03:01:52 +0100 Subject: [PATCH 13/16] Delete unused files and update dependencies --- .github/workflows/ci.yml | 3 +- apps/playground/.eslintignore | 3 - apps/playground/.eslintrc.js | 4 - apps/playground/.lintstagedrc.js | 7 - apps/playground/index.html | 15 -- apps/playground/package.json | 36 ---- apps/playground/src/App.tsx | 81 -------- apps/playground/src/ButtonExample.tsx | 28 --- apps/playground/src/CheckboxExample.tsx | 13 -- apps/playground/src/CollapsibleExample.tsx | 28 --- apps/playground/src/IconsExample.tsx | 32 ---- apps/playground/src/TypographyExample.tsx | 15 -- apps/playground/src/index.tsx | 18 -- apps/playground/tsconfig.json | 7 - apps/playground/vite.config.ts | 18 -- pnpm-lock.yaml | 210 +-------------------- 16 files changed, 7 insertions(+), 511 deletions(-) delete mode 100644 apps/playground/.eslintignore delete mode 100644 apps/playground/.eslintrc.js delete mode 100644 apps/playground/.lintstagedrc.js delete mode 100644 apps/playground/index.html delete mode 100644 apps/playground/package.json delete mode 100644 apps/playground/src/App.tsx delete mode 100644 apps/playground/src/ButtonExample.tsx delete mode 100644 apps/playground/src/CheckboxExample.tsx delete mode 100644 apps/playground/src/CollapsibleExample.tsx delete mode 100644 apps/playground/src/IconsExample.tsx delete mode 100644 apps/playground/src/TypographyExample.tsx delete mode 100644 apps/playground/src/index.tsx delete mode 100644 apps/playground/tsconfig.json delete mode 100644 apps/playground/vite.config.ts diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 43244180..1f0077d8 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -20,7 +20,6 @@ jobs: cache: 'pnpm' - run: pnpm install - run: pnpm lint - - run: pnpm test:types - run: pnpm build - - run: pnpm vitest --coverage + - run: pnpm test - uses: codecov/codecov-action@v3 diff --git a/apps/playground/.eslintignore b/apps/playground/.eslintignore deleted file mode 100644 index 9c628283..00000000 --- a/apps/playground/.eslintignore +++ /dev/null @@ -1,3 +0,0 @@ -node_modules -coverage -dist diff --git a/apps/playground/.eslintrc.js b/apps/playground/.eslintrc.js deleted file mode 100644 index 8c777ac8..00000000 --- a/apps/playground/.eslintrc.js +++ /dev/null @@ -1,4 +0,0 @@ -module.exports = { - root: true, - extends: '@design-sync/eslint-config/solid', -}; diff --git a/apps/playground/.lintstagedrc.js b/apps/playground/.lintstagedrc.js deleted file mode 100644 index 2d5a8766..00000000 --- a/apps/playground/.lintstagedrc.js +++ /dev/null @@ -1,7 +0,0 @@ -module.exports = { - // eslint - 'src/**/*.{js,jsx,ts,tsx}': ' eslint', - - // tsc - 'src/**/*.{ts,tsx}': () => 'tsc', -}; diff --git a/apps/playground/index.html b/apps/playground/index.html deleted file mode 100644 index 38189a12..00000000 --- a/apps/playground/index.html +++ /dev/null @@ -1,15 +0,0 @@ - - - - - - - Solid App - - - -
- - - - diff --git a/apps/playground/package.json b/apps/playground/package.json deleted file mode 100644 index 4a66d271..00000000 --- a/apps/playground/package.json +++ /dev/null @@ -1,36 +0,0 @@ -{ - "name": "@design-sync/playground", - "version": "0.0.0", - "description": "TokenizePlayground", - "scripts": { - "dev": "vite", - "lint": "eslint ./src --ext .ts,.tsx,.js,.jsx", - "lint:fix": "pnpm run lint --fix", - "test:types": "tsc --noEmit --skipLibCheck", - "precommit": "lint-staged" - }, - "license": "MIT", - "devDependencies": { - "@design-sync/eslint-config": "workspace:*", - "@design-sync/tsconfig": "workspace:*", - "@unocss/reset": "0.57.1", - "@vanilla-extract/css": "^1.13.0", - "@vanilla-extract/recipes": "^0.5.0", - "@vanilla-extract/sprinkles": "^1.6.1", - "@vanilla-extract/vite-plugin": "^3.9.0", - "eslint": "8.53.0", - "lint-staged": "^15.1.0", - "solid-devtools": "^0.28.1", - "typescript": "^5.2.2", - "vite": "^4.5.0", - "vite-plugin-mkcert": "1.16.0", - "vite-plugin-solid": "^2.7.2", - "vite-plugin-static-copy": "^0.17.0" - }, - "dependencies": { - "@design-sync/design-tokens": "workspace:*", - "@design-sync/figma-icons": "workspace:*", - "@design-sync/uikit": "workspace:*", - "solid-js": "^1.8.5" - } -} diff --git a/apps/playground/src/App.tsx b/apps/playground/src/App.tsx deleted file mode 100644 index 1afa312c..00000000 --- a/apps/playground/src/App.tsx +++ /dev/null @@ -1,81 +0,0 @@ -import { Component, createEffect, createSignal } from 'solid-js'; -import { ButtonExample } from './ButtonExample'; -import { CheckboxExample } from './CheckboxExample'; -import { CollapsibleExample } from './CollapsibleExample'; -import { IconsExample } from './IconsExample'; -import { TypographyExample } from './TypographyExample'; - -const App: Component = () => { - const [isOpen, setIsOpen] = createSignal(false); - const [theme, setTheme] = createSignal('figma-light'); - - createEffect(() => { - document.body.classList.remove('figma-dark'); - document.body.classList.remove('figma-light'); - document.body.classList.add(theme()); - }); - - return ( -
- -

Playground to try components

- - - - - - {/*

Radio

- - - - */} - - {/*

IconButton

- } /> - } selected /> */} - - {/*

Input

- - - - */} - {/* } placeholder="Placeholder" /> */} - - {/*

Typography

- Section Title - */} - - {/*

OnboardingTip

- }> -

Onboarding tip

-
*/} - - {/*

Select

-