Merge pull request #81 from appwrite/chore-upgrade-svelte

a11y: trigger click when pressing enter on non-interactive elements
This commit is contained in:
Torsten Dittmann
2022-10-17 10:49:44 +02:00
committed by GitHub
12 changed files with 231 additions and 168 deletions
+153 -151
View File
@@ -17,34 +17,34 @@
"web-vitals": "^3.0.3"
},
"devDependencies": {
"@playwright/test": "^1.26.1",
"@playwright/test": "^1.27.1",
"@sveltejs/adapter-static": "1.0.0-next.44",
"@sveltejs/kit": "1.0.0-next.512",
"@sveltejs/vite-plugin-svelte": "^1.0.8",
"@testing-library/dom": "^8.18.1",
"@sveltejs/kit": "1.0.0-next.516",
"@sveltejs/vite-plugin-svelte": "^1.0.9",
"@testing-library/dom": "^8.19.0",
"@testing-library/jest-dom": "^5.16.5",
"@testing-library/svelte": "3.1.3",
"@testing-library/user-event": "^14.4.3",
"@types/gtag.js": "^0.0.12",
"@types/prismjs": "^1.26.0",
"@typescript-eslint/eslint-plugin": "^5.39.0",
"@typescript-eslint/parser": "^5.39.0",
"@vitest/ui": "^0.23.4",
"eslint": "^8.24.0",
"@typescript-eslint/eslint-plugin": "^5.40.0",
"@typescript-eslint/parser": "^5.40.0",
"@vitest/ui": "^0.24.3",
"eslint": "^8.25.0",
"eslint-config-prettier": "^8.5.0",
"eslint-plugin-svelte3": "^4.0.0",
"pre-commit": "^1.2.2",
"prettier": "^2.7.1",
"prettier-plugin-svelte": "^2.7.1",
"prettier-plugin-svelte": "^2.8.0",
"sass": "^1.55.0",
"svelte": "^3.50.1",
"svelte-check": "^2.9.1",
"svelte": "^3.51.0",
"svelte-check": "^2.9.2",
"svelte-jester": "^2.3.2",
"svelte-preprocess": "^4.10.7",
"tslib": "^2.4.0",
"typescript": "^4.8.4",
"vite": "^3.1.4",
"vitest": "^0.23.4"
"vite": "^3.1.8",
"vitest": "^0.24.3"
},
"engines": {
"node": ">=16"
@@ -1268,13 +1268,13 @@
}
},
"node_modules/@playwright/test": {
"version": "1.26.1",
"resolved": "https://registry.npmjs.org/@playwright/test/-/test-1.26.1.tgz",
"integrity": "sha512-bNxyZASVt2adSZ9gbD7NCydzcb5JaI0OR9hc7s+nmPeH604gwp0zp17NNpwXY4c8nvuBGQQ9oGDx72LE+cUWvw==",
"version": "1.27.1",
"resolved": "https://registry.npmjs.org/@playwright/test/-/test-1.27.1.tgz",
"integrity": "sha512-mrL2q0an/7tVqniQQF6RBL2saskjljXzqNcCOVMUjRIgE6Y38nCNaP+Dc2FBW06bcpD3tqIws/HT9qiMHbNU0A==",
"dev": true,
"dependencies": {
"@types/node": "*",
"playwright-core": "1.26.1"
"playwright-core": "1.27.1"
},
"bin": {
"playwright": "cli.js"
@@ -1344,9 +1344,9 @@
"dev": true
},
"node_modules/@sveltejs/kit": {
"version": "1.0.0-next.512",
"resolved": "https://registry.npmjs.org/@sveltejs/kit/-/kit-1.0.0-next.512.tgz",
"integrity": "sha512-/KywzSMXdNxYGujJfdlAbLgV9m0TSSKqC8XluZ46M6oPAM1fUsjfBBtukU/Vx3hP7ldR8d/vpKX3amENAMw50g==",
"version": "1.0.0-next.516",
"resolved": "https://registry.npmjs.org/@sveltejs/kit/-/kit-1.0.0-next.516.tgz",
"integrity": "sha512-n0oGcv7xpgJ81ld1oER5HVREP4TdeDUJ8S64XNDcl3Y2xfQLKk8C4SLYQw2D6V+DxUm8V3aRrj7N7/tm4CQm6A==",
"dev": true,
"hasInstallScript": true,
"dependencies": {
@@ -1426,9 +1426,9 @@
}
},
"node_modules/@testing-library/dom": {
"version": "8.18.1",
"resolved": "https://registry.npmjs.org/@testing-library/dom/-/dom-8.18.1.tgz",
"integrity": "sha512-oEvsm2B/WtcHKE+IcEeeCqNU/ltFGaVyGbpcm4g/2ytuT49jrlH9x5qRKL/H3A6yfM4YAbSbC0ceT5+9CEXnLg==",
"version": "8.19.0",
"resolved": "https://registry.npmjs.org/@testing-library/dom/-/dom-8.19.0.tgz",
"integrity": "sha512-6YWYPPpxG3e/xOo6HIWwB/58HukkwIVTOaZ0VwdMVjhRUX/01E4FtQbck9GazOOj7MXHc5RBzMrU86iBJHbI+A==",
"dev": true,
"dependencies": {
"@babel/code-frame": "^7.10.4",
@@ -1750,14 +1750,14 @@
"peer": true
},
"node_modules/@typescript-eslint/eslint-plugin": {
"version": "5.39.0",
"resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.39.0.tgz",
"integrity": "sha512-xVfKOkBm5iWMNGKQ2fwX5GVgBuHmZBO1tCRwXmY5oAIsPscfwm2UADDuNB8ZVYCtpQvJK4xpjrK7jEhcJ0zY9A==",
"version": "5.40.0",
"resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.40.0.tgz",
"integrity": "sha512-FIBZgS3DVJgqPwJzvZTuH4HNsZhHMa9SjxTKAZTlMsPw/UzpEjcf9f4dfgDJEHjK+HboUJo123Eshl6niwEm/Q==",
"dev": true,
"dependencies": {
"@typescript-eslint/scope-manager": "5.39.0",
"@typescript-eslint/type-utils": "5.39.0",
"@typescript-eslint/utils": "5.39.0",
"@typescript-eslint/scope-manager": "5.40.0",
"@typescript-eslint/type-utils": "5.40.0",
"@typescript-eslint/utils": "5.40.0",
"debug": "^4.3.4",
"ignore": "^5.2.0",
"regexpp": "^3.2.0",
@@ -1782,14 +1782,14 @@
}
},
"node_modules/@typescript-eslint/parser": {
"version": "5.39.0",
"resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-5.39.0.tgz",
"integrity": "sha512-PhxLjrZnHShe431sBAGHaNe6BDdxAASDySgsBCGxcBecVCi8NQWxQZMcizNA4g0pN51bBAn/FUfkWG3SDVcGlA==",
"version": "5.40.0",
"resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-5.40.0.tgz",
"integrity": "sha512-Ah5gqyX2ySkiuYeOIDg7ap51/b63QgWZA7w6AHtFrag7aH0lRQPbLzUjk0c9o5/KZ6JRkTTDKShL4AUrQa6/hw==",
"dev": true,
"dependencies": {
"@typescript-eslint/scope-manager": "5.39.0",
"@typescript-eslint/types": "5.39.0",
"@typescript-eslint/typescript-estree": "5.39.0",
"@typescript-eslint/scope-manager": "5.40.0",
"@typescript-eslint/types": "5.40.0",
"@typescript-eslint/typescript-estree": "5.40.0",
"debug": "^4.3.4"
},
"engines": {
@@ -1809,13 +1809,13 @@
}
},
"node_modules/@typescript-eslint/scope-manager": {
"version": "5.39.0",
"resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.39.0.tgz",
"integrity": "sha512-/I13vAqmG3dyqMVSZPjsbuNQlYS082Y7OMkwhCfLXYsmlI0ca4nkL7wJ/4gjX70LD4P8Hnw1JywUVVAwepURBw==",
"version": "5.40.0",
"resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.40.0.tgz",
"integrity": "sha512-d3nPmjUeZtEWRvyReMI4I1MwPGC63E8pDoHy0BnrYjnJgilBD3hv7XOiETKLY/zTwI7kCnBDf2vWTRUVpYw0Uw==",
"dev": true,
"dependencies": {
"@typescript-eslint/types": "5.39.0",
"@typescript-eslint/visitor-keys": "5.39.0"
"@typescript-eslint/types": "5.40.0",
"@typescript-eslint/visitor-keys": "5.40.0"
},
"engines": {
"node": "^12.22.0 || ^14.17.0 || >=16.0.0"
@@ -1826,13 +1826,13 @@
}
},
"node_modules/@typescript-eslint/type-utils": {
"version": "5.39.0",
"resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-5.39.0.tgz",
"integrity": "sha512-KJHJkOothljQWzR3t/GunL0TPKY+fGJtnpl+pX+sJ0YiKTz3q2Zr87SGTmFqsCMFrLt5E0+o+S6eQY0FAXj9uA==",
"version": "5.40.0",
"resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-5.40.0.tgz",
"integrity": "sha512-nfuSdKEZY2TpnPz5covjJqav+g5qeBqwSHKBvz7Vm1SAfy93SwKk/JeSTymruDGItTwNijSsno5LhOHRS1pcfw==",
"dev": true,
"dependencies": {
"@typescript-eslint/typescript-estree": "5.39.0",
"@typescript-eslint/utils": "5.39.0",
"@typescript-eslint/typescript-estree": "5.40.0",
"@typescript-eslint/utils": "5.40.0",
"debug": "^4.3.4",
"tsutils": "^3.21.0"
},
@@ -1853,9 +1853,9 @@
}
},
"node_modules/@typescript-eslint/types": {
"version": "5.39.0",
"resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.39.0.tgz",
"integrity": "sha512-gQMZrnfEBFXK38hYqt8Lkwt8f4U6yq+2H5VDSgP/qiTzC8Nw8JO3OuSUOQ2qW37S/dlwdkHDntkZM6SQhKyPhw==",
"version": "5.40.0",
"resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.40.0.tgz",
"integrity": "sha512-V1KdQRTXsYpf1Y1fXCeZ+uhjW48Niiw0VGt4V8yzuaDTU8Z1Xl7yQDyQNqyAFcVhpYXIVCEuxSIWTsLDpHgTbw==",
"dev": true,
"engines": {
"node": "^12.22.0 || ^14.17.0 || >=16.0.0"
@@ -1866,13 +1866,13 @@
}
},
"node_modules/@typescript-eslint/typescript-estree": {
"version": "5.39.0",
"resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.39.0.tgz",
"integrity": "sha512-qLFQP0f398sdnogJoLtd43pUgB18Q50QSA+BTE5h3sUxySzbWDpTSdgt4UyxNSozY/oDK2ta6HVAzvGgq8JYnA==",
"version": "5.40.0",
"resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.40.0.tgz",
"integrity": "sha512-b0GYlDj8TLTOqwX7EGbw2gL5EXS2CPEWhF9nGJiGmEcmlpNBjyHsTwbqpyIEPVpl6br4UcBOYlcI2FJVtJkYhg==",
"dev": true,
"dependencies": {
"@typescript-eslint/types": "5.39.0",
"@typescript-eslint/visitor-keys": "5.39.0",
"@typescript-eslint/types": "5.40.0",
"@typescript-eslint/visitor-keys": "5.40.0",
"debug": "^4.3.4",
"globby": "^11.1.0",
"is-glob": "^4.0.3",
@@ -1893,17 +1893,18 @@
}
},
"node_modules/@typescript-eslint/utils": {
"version": "5.39.0",
"resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-5.39.0.tgz",
"integrity": "sha512-+DnY5jkpOpgj+EBtYPyHRjXampJfC0yUZZzfzLuUWVZvCuKqSdJVC8UhdWipIw7VKNTfwfAPiOWzYkAwuIhiAg==",
"version": "5.40.0",
"resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-5.40.0.tgz",
"integrity": "sha512-MO0y3T5BQ5+tkkuYZJBjePewsY+cQnfkYeRqS6tPh28niiIwPnQ1t59CSRcs1ZwJJNOdWw7rv9pF8aP58IMihA==",
"dev": true,
"dependencies": {
"@types/json-schema": "^7.0.9",
"@typescript-eslint/scope-manager": "5.39.0",
"@typescript-eslint/types": "5.39.0",
"@typescript-eslint/typescript-estree": "5.39.0",
"@typescript-eslint/scope-manager": "5.40.0",
"@typescript-eslint/types": "5.40.0",
"@typescript-eslint/typescript-estree": "5.40.0",
"eslint-scope": "^5.1.1",
"eslint-utils": "^3.0.0"
"eslint-utils": "^3.0.0",
"semver": "^7.3.7"
},
"engines": {
"node": "^12.22.0 || ^14.17.0 || >=16.0.0"
@@ -1917,12 +1918,12 @@
}
},
"node_modules/@typescript-eslint/visitor-keys": {
"version": "5.39.0",
"resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.39.0.tgz",
"integrity": "sha512-yyE3RPwOG+XJBLrhvsxAidUgybJVQ/hG8BhiJo0k8JSAYfk/CshVcxf0HwP4Jt7WZZ6vLmxdo1p6EyN3tzFTkg==",
"version": "5.40.0",
"resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.40.0.tgz",
"integrity": "sha512-ijJ+6yig+x9XplEpG2K6FUdJeQGGj/15U3S56W9IqXKJqleuD7zJ2AX/miLezwxpd7ZxDAqO87zWufKg+RPZyQ==",
"dev": true,
"dependencies": {
"@typescript-eslint/types": "5.39.0",
"@typescript-eslint/types": "5.40.0",
"eslint-visitor-keys": "^3.3.0"
},
"engines": {
@@ -1934,9 +1935,9 @@
}
},
"node_modules/@vitest/ui": {
"version": "0.23.4",
"resolved": "https://registry.npmjs.org/@vitest/ui/-/ui-0.23.4.tgz",
"integrity": "sha512-lNZVTTrkHThGAwNQ1ah1qCNnm70r7OLB5LCUdSqboStve/1eKTrtt27QfDSSUTG8AVJQzU0eaN/j8UocH+CqfA==",
"version": "0.24.3",
"resolved": "https://registry.npmjs.org/@vitest/ui/-/ui-0.24.3.tgz",
"integrity": "sha512-f5agYA/sdkiipq42TZayJoeUGjWx+opDjIVeNnb1SG2BNxqObFqh6GuJlzpGHerg4a2+ZSoVo4f4p2+dEyXPmg==",
"dev": true,
"dependencies": {
"sirv": "^2.0.2"
@@ -6138,9 +6139,9 @@
}
},
"node_modules/playwright-core": {
"version": "1.26.1",
"resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.26.1.tgz",
"integrity": "sha512-hzFchhhxnEiPc4qVPs9q2ZR+5eKNifY2hQDHtg1HnTTUuphYCBP8ZRb2si+B1TR7BHirgXaPi48LIye5SgrLAA==",
"version": "1.27.1",
"resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.27.1.tgz",
"integrity": "sha512-9EmeXDncC2Pmp/z+teoVYlvmPWUC6ejSSYZUln7YaP89Z6lpAaiaAnqroUt/BoLo8tn7WYShcfaCh+xofZa44Q==",
"dev": true,
"bin": {
"playwright": "cli.js"
@@ -6988,9 +6989,9 @@
}
},
"node_modules/svelte": {
"version": "3.50.1",
"resolved": "https://registry.npmjs.org/svelte/-/svelte-3.50.1.tgz",
"integrity": "sha512-bS4odcsdj5D5jEg6riZuMg5NKelzPtmsCbD9RG+8umU03TeNkdWnP6pqbCm0s8UQNBkqk29w/Bdubn3C+HWSwA==",
"version": "3.51.0",
"resolved": "https://registry.npmjs.org/svelte/-/svelte-3.51.0.tgz",
"integrity": "sha512-PBITYIrsNOuW+Dtds00gSY68raNZQn7i59Dg/fjgf6WwyawPKeBwle692coO7ILZqSO+UJe9899aDn9sMdeOHA==",
"dev": true,
"engines": {
"node": ">= 8"
@@ -7403,9 +7404,9 @@
}
},
"node_modules/vite": {
"version": "3.1.7",
"resolved": "https://registry.npmjs.org/vite/-/vite-3.1.7.tgz",
"integrity": "sha512-5vCAmU4S8lyVdFCInu9M54f/g8qbOMakVw5xJ4pjoaDy5wgy9sLLZkGdSLN52dlsBqh0tBqxjaqqa8LgPqwRAA==",
"version": "3.1.8",
"resolved": "https://registry.npmjs.org/vite/-/vite-3.1.8.tgz",
"integrity": "sha512-m7jJe3nufUbuOfotkntGFupinL/fmuTNuQmiVE7cH2IZMuf4UbfbGYMUT3jVWgGYuRVLY9j8NnrRqgw5rr5QTg==",
"dev": true,
"dependencies": {
"esbuild": "^0.15.9",
@@ -7444,9 +7445,9 @@
}
},
"node_modules/vitest": {
"version": "0.23.4",
"resolved": "https://registry.npmjs.org/vitest/-/vitest-0.23.4.tgz",
"integrity": "sha512-iukBNWqQAv8EKDBUNntspLp9SfpaVFbmzmM0sNcnTxASQZMzRw3PsM6DMlsHiI+I6GeO5/sYDg3ecpC+SNFLrQ==",
"version": "0.24.3",
"resolved": "https://registry.npmjs.org/vitest/-/vitest-0.24.3.tgz",
"integrity": "sha512-aM0auuPPgMSstWvr851hB74g/LKaKBzSxcG3da7ejfZbx08Y21JpZmbmDYrMTCGhVZKqTGwzcnLMwyfz2WzkhQ==",
"dev": true,
"dependencies": {
"@types/chai": "^4.3.3",
@@ -7455,11 +7456,11 @@
"chai": "^4.3.6",
"debug": "^4.3.4",
"local-pkg": "^0.4.2",
"strip-literal": "^0.4.1",
"tinybench": "^2.1.5",
"strip-literal": "^0.4.2",
"tinybench": "^2.3.0",
"tinypool": "^0.3.0",
"tinyspy": "^1.0.2",
"vite": "^2.9.12 || ^3.0.0-0"
"vite": "^3.0.0"
},
"bin": {
"vitest": "vitest.mjs"
@@ -8714,13 +8715,13 @@
}
},
"@playwright/test": {
"version": "1.26.1",
"resolved": "https://registry.npmjs.org/@playwright/test/-/test-1.26.1.tgz",
"integrity": "sha512-bNxyZASVt2adSZ9gbD7NCydzcb5JaI0OR9hc7s+nmPeH604gwp0zp17NNpwXY4c8nvuBGQQ9oGDx72LE+cUWvw==",
"version": "1.27.1",
"resolved": "https://registry.npmjs.org/@playwright/test/-/test-1.27.1.tgz",
"integrity": "sha512-mrL2q0an/7tVqniQQF6RBL2saskjljXzqNcCOVMUjRIgE6Y38nCNaP+Dc2FBW06bcpD3tqIws/HT9qiMHbNU0A==",
"dev": true,
"requires": {
"@types/node": "*",
"playwright-core": "1.26.1"
"playwright-core": "1.27.1"
}
},
"@polka/url": {
@@ -8777,9 +8778,9 @@
"dev": true
},
"@sveltejs/kit": {
"version": "1.0.0-next.512",
"resolved": "https://registry.npmjs.org/@sveltejs/kit/-/kit-1.0.0-next.512.tgz",
"integrity": "sha512-/KywzSMXdNxYGujJfdlAbLgV9m0TSSKqC8XluZ46M6oPAM1fUsjfBBtukU/Vx3hP7ldR8d/vpKX3amENAMw50g==",
"version": "1.0.0-next.516",
"resolved": "https://registry.npmjs.org/@sveltejs/kit/-/kit-1.0.0-next.516.tgz",
"integrity": "sha512-n0oGcv7xpgJ81ld1oER5HVREP4TdeDUJ8S64XNDcl3Y2xfQLKk8C4SLYQw2D6V+DxUm8V3aRrj7N7/tm4CQm6A==",
"dev": true,
"requires": {
"@sveltejs/vite-plugin-svelte": "^1.0.5",
@@ -8833,9 +8834,9 @@
}
},
"@testing-library/dom": {
"version": "8.18.1",
"resolved": "https://registry.npmjs.org/@testing-library/dom/-/dom-8.18.1.tgz",
"integrity": "sha512-oEvsm2B/WtcHKE+IcEeeCqNU/ltFGaVyGbpcm4g/2ytuT49jrlH9x5qRKL/H3A6yfM4YAbSbC0ceT5+9CEXnLg==",
"version": "8.19.0",
"resolved": "https://registry.npmjs.org/@testing-library/dom/-/dom-8.19.0.tgz",
"integrity": "sha512-6YWYPPpxG3e/xOo6HIWwB/58HukkwIVTOaZ0VwdMVjhRUX/01E4FtQbck9GazOOj7MXHc5RBzMrU86iBJHbI+A==",
"dev": true,
"requires": {
"@babel/code-frame": "^7.10.4",
@@ -9126,14 +9127,14 @@
"peer": true
},
"@typescript-eslint/eslint-plugin": {
"version": "5.39.0",
"resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.39.0.tgz",
"integrity": "sha512-xVfKOkBm5iWMNGKQ2fwX5GVgBuHmZBO1tCRwXmY5oAIsPscfwm2UADDuNB8ZVYCtpQvJK4xpjrK7jEhcJ0zY9A==",
"version": "5.40.0",
"resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.40.0.tgz",
"integrity": "sha512-FIBZgS3DVJgqPwJzvZTuH4HNsZhHMa9SjxTKAZTlMsPw/UzpEjcf9f4dfgDJEHjK+HboUJo123Eshl6niwEm/Q==",
"dev": true,
"requires": {
"@typescript-eslint/scope-manager": "5.39.0",
"@typescript-eslint/type-utils": "5.39.0",
"@typescript-eslint/utils": "5.39.0",
"@typescript-eslint/scope-manager": "5.40.0",
"@typescript-eslint/type-utils": "5.40.0",
"@typescript-eslint/utils": "5.40.0",
"debug": "^4.3.4",
"ignore": "^5.2.0",
"regexpp": "^3.2.0",
@@ -9142,53 +9143,53 @@
}
},
"@typescript-eslint/parser": {
"version": "5.39.0",
"resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-5.39.0.tgz",
"integrity": "sha512-PhxLjrZnHShe431sBAGHaNe6BDdxAASDySgsBCGxcBecVCi8NQWxQZMcizNA4g0pN51bBAn/FUfkWG3SDVcGlA==",
"version": "5.40.0",
"resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-5.40.0.tgz",
"integrity": "sha512-Ah5gqyX2ySkiuYeOIDg7ap51/b63QgWZA7w6AHtFrag7aH0lRQPbLzUjk0c9o5/KZ6JRkTTDKShL4AUrQa6/hw==",
"dev": true,
"requires": {
"@typescript-eslint/scope-manager": "5.39.0",
"@typescript-eslint/types": "5.39.0",
"@typescript-eslint/typescript-estree": "5.39.0",
"@typescript-eslint/scope-manager": "5.40.0",
"@typescript-eslint/types": "5.40.0",
"@typescript-eslint/typescript-estree": "5.40.0",
"debug": "^4.3.4"
}
},
"@typescript-eslint/scope-manager": {
"version": "5.39.0",
"resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.39.0.tgz",
"integrity": "sha512-/I13vAqmG3dyqMVSZPjsbuNQlYS082Y7OMkwhCfLXYsmlI0ca4nkL7wJ/4gjX70LD4P8Hnw1JywUVVAwepURBw==",
"version": "5.40.0",
"resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.40.0.tgz",
"integrity": "sha512-d3nPmjUeZtEWRvyReMI4I1MwPGC63E8pDoHy0BnrYjnJgilBD3hv7XOiETKLY/zTwI7kCnBDf2vWTRUVpYw0Uw==",
"dev": true,
"requires": {
"@typescript-eslint/types": "5.39.0",
"@typescript-eslint/visitor-keys": "5.39.0"
"@typescript-eslint/types": "5.40.0",
"@typescript-eslint/visitor-keys": "5.40.0"
}
},
"@typescript-eslint/type-utils": {
"version": "5.39.0",
"resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-5.39.0.tgz",
"integrity": "sha512-KJHJkOothljQWzR3t/GunL0TPKY+fGJtnpl+pX+sJ0YiKTz3q2Zr87SGTmFqsCMFrLt5E0+o+S6eQY0FAXj9uA==",
"version": "5.40.0",
"resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-5.40.0.tgz",
"integrity": "sha512-nfuSdKEZY2TpnPz5covjJqav+g5qeBqwSHKBvz7Vm1SAfy93SwKk/JeSTymruDGItTwNijSsno5LhOHRS1pcfw==",
"dev": true,
"requires": {
"@typescript-eslint/typescript-estree": "5.39.0",
"@typescript-eslint/utils": "5.39.0",
"@typescript-eslint/typescript-estree": "5.40.0",
"@typescript-eslint/utils": "5.40.0",
"debug": "^4.3.4",
"tsutils": "^3.21.0"
}
},
"@typescript-eslint/types": {
"version": "5.39.0",
"resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.39.0.tgz",
"integrity": "sha512-gQMZrnfEBFXK38hYqt8Lkwt8f4U6yq+2H5VDSgP/qiTzC8Nw8JO3OuSUOQ2qW37S/dlwdkHDntkZM6SQhKyPhw==",
"version": "5.40.0",
"resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.40.0.tgz",
"integrity": "sha512-V1KdQRTXsYpf1Y1fXCeZ+uhjW48Niiw0VGt4V8yzuaDTU8Z1Xl7yQDyQNqyAFcVhpYXIVCEuxSIWTsLDpHgTbw==",
"dev": true
},
"@typescript-eslint/typescript-estree": {
"version": "5.39.0",
"resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.39.0.tgz",
"integrity": "sha512-qLFQP0f398sdnogJoLtd43pUgB18Q50QSA+BTE5h3sUxySzbWDpTSdgt4UyxNSozY/oDK2ta6HVAzvGgq8JYnA==",
"version": "5.40.0",
"resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.40.0.tgz",
"integrity": "sha512-b0GYlDj8TLTOqwX7EGbw2gL5EXS2CPEWhF9nGJiGmEcmlpNBjyHsTwbqpyIEPVpl6br4UcBOYlcI2FJVtJkYhg==",
"dev": true,
"requires": {
"@typescript-eslint/types": "5.39.0",
"@typescript-eslint/visitor-keys": "5.39.0",
"@typescript-eslint/types": "5.40.0",
"@typescript-eslint/visitor-keys": "5.40.0",
"debug": "^4.3.4",
"globby": "^11.1.0",
"is-glob": "^4.0.3",
@@ -9197,33 +9198,34 @@
}
},
"@typescript-eslint/utils": {
"version": "5.39.0",
"resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-5.39.0.tgz",
"integrity": "sha512-+DnY5jkpOpgj+EBtYPyHRjXampJfC0yUZZzfzLuUWVZvCuKqSdJVC8UhdWipIw7VKNTfwfAPiOWzYkAwuIhiAg==",
"version": "5.40.0",
"resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-5.40.0.tgz",
"integrity": "sha512-MO0y3T5BQ5+tkkuYZJBjePewsY+cQnfkYeRqS6tPh28niiIwPnQ1t59CSRcs1ZwJJNOdWw7rv9pF8aP58IMihA==",
"dev": true,
"requires": {
"@types/json-schema": "^7.0.9",
"@typescript-eslint/scope-manager": "5.39.0",
"@typescript-eslint/types": "5.39.0",
"@typescript-eslint/typescript-estree": "5.39.0",
"@typescript-eslint/scope-manager": "5.40.0",
"@typescript-eslint/types": "5.40.0",
"@typescript-eslint/typescript-estree": "5.40.0",
"eslint-scope": "^5.1.1",
"eslint-utils": "^3.0.0"
"eslint-utils": "^3.0.0",
"semver": "^7.3.7"
}
},
"@typescript-eslint/visitor-keys": {
"version": "5.39.0",
"resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.39.0.tgz",
"integrity": "sha512-yyE3RPwOG+XJBLrhvsxAidUgybJVQ/hG8BhiJo0k8JSAYfk/CshVcxf0HwP4Jt7WZZ6vLmxdo1p6EyN3tzFTkg==",
"version": "5.40.0",
"resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.40.0.tgz",
"integrity": "sha512-ijJ+6yig+x9XplEpG2K6FUdJeQGGj/15U3S56W9IqXKJqleuD7zJ2AX/miLezwxpd7ZxDAqO87zWufKg+RPZyQ==",
"dev": true,
"requires": {
"@typescript-eslint/types": "5.39.0",
"@typescript-eslint/types": "5.40.0",
"eslint-visitor-keys": "^3.3.0"
}
},
"@vitest/ui": {
"version": "0.23.4",
"resolved": "https://registry.npmjs.org/@vitest/ui/-/ui-0.23.4.tgz",
"integrity": "sha512-lNZVTTrkHThGAwNQ1ah1qCNnm70r7OLB5LCUdSqboStve/1eKTrtt27QfDSSUTG8AVJQzU0eaN/j8UocH+CqfA==",
"version": "0.24.3",
"resolved": "https://registry.npmjs.org/@vitest/ui/-/ui-0.24.3.tgz",
"integrity": "sha512-f5agYA/sdkiipq42TZayJoeUGjWx+opDjIVeNnb1SG2BNxqObFqh6GuJlzpGHerg4a2+ZSoVo4f4p2+dEyXPmg==",
"dev": true,
"requires": {
"sirv": "^2.0.2"
@@ -12360,9 +12362,9 @@
}
},
"playwright-core": {
"version": "1.26.1",
"resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.26.1.tgz",
"integrity": "sha512-hzFchhhxnEiPc4qVPs9q2ZR+5eKNifY2hQDHtg1HnTTUuphYCBP8ZRb2si+B1TR7BHirgXaPi48LIye5SgrLAA==",
"version": "1.27.1",
"resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.27.1.tgz",
"integrity": "sha512-9EmeXDncC2Pmp/z+teoVYlvmPWUC6ejSSYZUln7YaP89Z6lpAaiaAnqroUt/BoLo8tn7WYShcfaCh+xofZa44Q==",
"dev": true
},
"postcss": {
@@ -12989,9 +12991,9 @@
"dev": true
},
"svelte": {
"version": "3.50.1",
"resolved": "https://registry.npmjs.org/svelte/-/svelte-3.50.1.tgz",
"integrity": "sha512-bS4odcsdj5D5jEg6riZuMg5NKelzPtmsCbD9RG+8umU03TeNkdWnP6pqbCm0s8UQNBkqk29w/Bdubn3C+HWSwA==",
"version": "3.51.0",
"resolved": "https://registry.npmjs.org/svelte/-/svelte-3.51.0.tgz",
"integrity": "sha512-PBITYIrsNOuW+Dtds00gSY68raNZQn7i59Dg/fjgf6WwyawPKeBwle692coO7ILZqSO+UJe9899aDn9sMdeOHA==",
"dev": true
},
"svelte-check": {
@@ -13270,9 +13272,9 @@
}
},
"vite": {
"version": "3.1.7",
"resolved": "https://registry.npmjs.org/vite/-/vite-3.1.7.tgz",
"integrity": "sha512-5vCAmU4S8lyVdFCInu9M54f/g8qbOMakVw5xJ4pjoaDy5wgy9sLLZkGdSLN52dlsBqh0tBqxjaqqa8LgPqwRAA==",
"version": "3.1.8",
"resolved": "https://registry.npmjs.org/vite/-/vite-3.1.8.tgz",
"integrity": "sha512-m7jJe3nufUbuOfotkntGFupinL/fmuTNuQmiVE7cH2IZMuf4UbfbGYMUT3jVWgGYuRVLY9j8NnrRqgw5rr5QTg==",
"dev": true,
"requires": {
"esbuild": "^0.15.9",
@@ -13283,9 +13285,9 @@
}
},
"vitest": {
"version": "0.23.4",
"resolved": "https://registry.npmjs.org/vitest/-/vitest-0.23.4.tgz",
"integrity": "sha512-iukBNWqQAv8EKDBUNntspLp9SfpaVFbmzmM0sNcnTxASQZMzRw3PsM6DMlsHiI+I6GeO5/sYDg3ecpC+SNFLrQ==",
"version": "0.24.3",
"resolved": "https://registry.npmjs.org/vitest/-/vitest-0.24.3.tgz",
"integrity": "sha512-aM0auuPPgMSstWvr851hB74g/LKaKBzSxcG3da7ejfZbx08Y21JpZmbmDYrMTCGhVZKqTGwzcnLMwyfz2WzkhQ==",
"dev": true,
"requires": {
"@types/chai": "^4.3.3",
@@ -13294,11 +13296,11 @@
"chai": "^4.3.6",
"debug": "^4.3.4",
"local-pkg": "^0.4.2",
"strip-literal": "^0.4.1",
"tinybench": "^2.1.5",
"strip-literal": "^0.4.2",
"tinybench": "^2.3.0",
"tinypool": "^0.3.0",
"tinyspy": "^1.0.2",
"vite": "^2.9.12 || ^3.0.0-0"
"vite": "^3.0.0"
}
},
"w3c-hr-time": {
+13 -13
View File
@@ -27,34 +27,34 @@
"web-vitals": "^3.0.3"
},
"devDependencies": {
"@playwright/test": "^1.26.1",
"@playwright/test": "^1.27.1",
"@sveltejs/adapter-static": "1.0.0-next.44",
"@sveltejs/kit": "1.0.0-next.512",
"@sveltejs/vite-plugin-svelte": "^1.0.8",
"@testing-library/dom": "^8.18.1",
"@sveltejs/kit": "1.0.0-next.516",
"@sveltejs/vite-plugin-svelte": "^1.0.9",
"@testing-library/dom": "^8.19.0",
"@testing-library/jest-dom": "^5.16.5",
"@testing-library/svelte": "3.1.3",
"@testing-library/user-event": "^14.4.3",
"@types/prismjs": "^1.26.0",
"@types/gtag.js": "^0.0.12",
"@typescript-eslint/eslint-plugin": "^5.39.0",
"@typescript-eslint/parser": "^5.39.0",
"@vitest/ui": "^0.23.4",
"eslint": "^8.24.0",
"@typescript-eslint/eslint-plugin": "^5.40.0",
"@typescript-eslint/parser": "^5.40.0",
"@vitest/ui": "^0.24.3",
"eslint": "^8.25.0",
"eslint-config-prettier": "^8.5.0",
"eslint-plugin-svelte3": "^4.0.0",
"pre-commit": "^1.2.2",
"prettier": "^2.7.1",
"prettier-plugin-svelte": "^2.7.1",
"prettier-plugin-svelte": "^2.8.0",
"sass": "^1.55.0",
"svelte": "^3.50.1",
"svelte-check": "^2.9.1",
"svelte": "^3.51.0",
"svelte-check": "^2.9.2",
"svelte-jester": "^2.3.2",
"svelte-preprocess": "^4.10.7",
"tslib": "^2.4.0",
"typescript": "^4.8.4",
"vite": "^3.1.4",
"vitest": "^0.23.4"
"vite": "^3.1.8",
"vitest": "^0.24.3"
},
"type": "module",
"pre-commit": [
+2
View File
@@ -1,5 +1,6 @@
<script lang="ts">
import { tooltip } from '$lib/actions/tooltip';
import { clickOnEnter } from '$lib/helpers/a11y';
import { addNotification } from '$lib/stores/notifications';
export let value: string;
@@ -21,6 +22,7 @@
<span
on:click|preventDefault={copy}
on:keyup={clickOnEnter}
on:mouseenter={() => setTimeout(() => (content = 'Click to copy'))}
use:tooltip={{
content,
+3 -1
View File
@@ -1,9 +1,11 @@
<script lang="ts">
import { clickOnEnter } from '$lib/helpers/a11y';
export let href: string;
export let icon: string = null;
</script>
<li class="drop-list-item" on:click>
<li class="drop-list-item" on:click on:keyup={clickOnEnter}>
<a {href} class="drop-button">
<span class="text"><slot /></span>
{#if icon}
+7 -1
View File
@@ -3,6 +3,7 @@
import { createEventDispatcher } from 'svelte';
import { fade, fly, type FadeParams, type FlyParams } from 'svelte/transition';
import { Alert } from '$lib/components';
import { clickOnEnter } from '$lib/helpers/a11y';
export let show = false;
export let size: 'small' | 'big' = null;
@@ -58,7 +59,12 @@
<svelte:window on:keydown={handleKeydown} />
{#if show}
<div class="modal-curtain" data-curtain on:click={handleBLur} transition:fade={transitionFade}>
<div
class="modal-curtain"
data-curtain
on:click={handleBLur}
on:keyup|self={clickOnEnter}
transition:fade={transitionFade}>
<section
class:is-small={size === 'small'}
class:is-big={size === 'big'}
@@ -15,6 +15,10 @@
export let groups: Writable<Map<string, Permission>>;
const dispatch = createEventDispatcher();
$: if (showUser || showTeam || showCustom) {
showDropdown = false;
}
</script>
<DropList
+3
View File
@@ -1,4 +1,6 @@
<script lang="ts">
import { clickOnEnter } from '$lib/helpers/a11y';
export let completed = false;
export let current = false;
export let currentSub = 0;
@@ -10,6 +12,7 @@
<li
on:click|preventDefault
on:keyup|self={clickOnEnter}
class:steps-item={!isSub}
class:steps-sub-item={isSub}
style={`cursor: ${completed ? 'pointer' : 'default'};`}
+10
View File
@@ -0,0 +1,10 @@
export function clickOnEnter(
event: KeyboardEvent & {
currentTarget: EventTarget & HTMLElement;
}
) {
if (event.key === 'Enter' && event.currentTarget.contains(event.target as Node)) {
event.preventDefault();
event.currentTarget.click();
}
}
@@ -6,6 +6,7 @@
import { project } from '../../store';
import { addNotification } from '$lib/stores/notifications';
import { sdkForConsole } from '$lib/stores/sdk';
import { clickOnEnter } from '$lib/helpers/a11y';
const projectId = $project.$id;
let isLimited = $project.authLimit === 0 ? 'unlimited' : 'limited';
@@ -113,7 +114,8 @@
</div>
<div
class="input-text-wrapper u-stretch"
on:click={() => (isLimited = 'limited')}>
on:click={() => (isLimited = 'limited')}
on:keyup|self={clickOnEnter}>
<input
type="number"
name="limit"
@@ -5,6 +5,7 @@
import { createEventDispatcher } from 'svelte';
import { addNotification } from '$lib/stores/notifications';
import { page } from '$app/stores';
import { clickOnEnter } from '$lib/helpers/a11y';
export let showCreate = false;
@@ -39,6 +40,7 @@
<span
class="tabs-button"
on:click={() => (showCli = true)}
on:keyup={clickOnEnter}
class:is-selected={showCli}>
<span class="text">Files</span>
</span>
@@ -47,6 +49,7 @@
<span
class="tabs-button"
on:click={() => (showCli = false)}
on:keyup={clickOnEnter}
class:is-selected={!showCli}>
<span class="text">Usage</span>
</span>
+17
View File
@@ -19,3 +19,20 @@ test('copy to clipboard function called on click', async () => {
expect(window.navigator.clipboard.writeText).toHaveBeenCalledWith('This is a test');
});
test('copy to clipboard function called on enter', async () => {
const { getByTestId } = render(Copy, { value });
Object.assign(window.navigator, {
clipboard: {
writeText: vi.fn().mockImplementation(() => Promise.resolve())
}
});
const button = getByTestId('copy-content');
await fireEvent.keyUp(button, {
key: 'Enter'
});
expect(window.navigator.clipboard.writeText).toHaveBeenCalledWith('This is a test');
});
+13 -1
View File
@@ -29,7 +29,7 @@ test('close modal by click', async () => {
expect(component.show).toStrictEqual(false);
});
test('close modal by key', async () => {
test('close modal by escape', async () => {
const { queryByText, component } = render(Modal, {
show: true
});
@@ -38,3 +38,15 @@ test('close modal by key', async () => {
await userEvent.keyboard('[Escape]');
expect(component.show).toStrictEqual(false);
});
test('close modal by enter key on focus', async () => {
const { container, queryByText, component } = render(Modal, {
show: true
});
expect(queryByText('Content')).toBeInTheDocument();
await fireEvent.keyUp(container.querySelector('[data-curtain]'), {
key: 'Enter'
});
expect(component.show).toStrictEqual(false);
});