diff --git a/examples/headless-example/.gitignore b/examples/headless-example/.gitignore
index 7ceb59f89a..91c473a3ff 100644
--- a/examples/headless-example/.gitignore
+++ b/examples/headless-example/.gitignore
@@ -23,3 +23,6 @@ dist-ssr
*.sln
*.sw?
.env
+/test-results/
+/playwright-report/
+/playwright/.cache/
diff --git a/examples/headless-example/e2e/smoke.spec.ts b/examples/headless-example/e2e/smoke.spec.ts
new file mode 100644
index 0000000000..47e9f755b9
--- /dev/null
+++ b/examples/headless-example/e2e/smoke.spec.ts
@@ -0,0 +1,29 @@
+import { expect, test } from '@playwright/test';
+
+test.describe('should keep basic functionality #e2e #smoke', async () => {
+ test('when navigating to the root page the sign up form renders', async ({ page }) => {
+ await page.goto('/');
+
+ const welcome = page.getByText(/welcome/i);
+
+ const firstInput = page.getByLabel(/first\sname|business\sname/i);
+ const secondInput = page.getByLabel(/last\sname|registration\snumber/i);
+
+ const signUpBtn = page.getByRole('button', { name: /sign\sup/i });
+
+ await expect(welcome).toBeVisible();
+
+ await expect(firstInput).toBeVisible();
+ await expect(secondInput).toBeVisible();
+
+ await expect(signUpBtn).toBeVisible();
+ });
+
+ test('when navigating to the root page clear user button renders', async ({ page }) => {
+ await page.goto('/');
+
+ const clearUserBtn = page.getByRole('button', { name: /clear\suser/i });
+
+ await expect(clearUserBtn).toBeVisible();
+ });
+});
diff --git a/examples/headless-example/package.json b/examples/headless-example/package.json
index 3db0cbaf99..55253ca78d 100644
--- a/examples/headless-example/package.json
+++ b/examples/headless-example/package.json
@@ -9,12 +9,15 @@
"dev": "vite",
"build": "vite build",
"preview": "vite preview",
- "check": "svelte-check --tsconfig ./tsconfig.json"
+ "check": "svelte-check --tsconfig ./tsconfig.json",
+ "test:e2e": "playwright test"
},
"devDependencies": {
"@felte/core": "^1.3.7",
+ "@playwright/test": "^1.35.1",
"@sveltejs/vite-plugin-svelte": "^2.0.2",
"@tsconfig/svelte": "^3.0.0",
+ "@types/node": "^20.3.2",
"@xstate/inspect": "^0.7.1",
"autoprefixer": "^10.4.7",
"postcss": "^8.4.21",
diff --git a/examples/headless-example/playwright.config.ts b/examples/headless-example/playwright.config.ts
new file mode 100644
index 0000000000..90aff329e4
--- /dev/null
+++ b/examples/headless-example/playwright.config.ts
@@ -0,0 +1,77 @@
+import { defineConfig, devices } from '@playwright/test';
+
+/**
+ * Read environment variables from file.
+ * https://github.com/motdotla/dotenv
+ */
+// require('dotenv').config();
+
+/**
+ * See https://playwright.dev/docs/test-configuration.
+ */
+export default defineConfig({
+ testDir: './e2e',
+ /* Run tests in files in parallel */
+ fullyParallel: true,
+ /* Fail the build on CI if you accidentally left test.only in the source code. */
+ forbidOnly: !!process.env.CI,
+ /* Retry on CI only */
+ retries: process.env.CI ? 2 : 0,
+ /* Opt out of parallel tests on CI. */
+ workers: process.env.CI ? 1 : undefined,
+ /* Reporter to use. See https://playwright.dev/docs/test-reporters */
+ reporter: 'html',
+ /* Shared settings for all the projects below. See https://playwright.dev/docs/api/class-testoptions. */
+ use: {
+ /* Base URL to use in actions like `await page.goto('/')`. */
+ baseURL: 'http://127.0.0.1:5173',
+
+ /* Collect trace when retrying the failed test. See https://playwright.dev/docs/trace-viewer */
+ trace: 'on-first-retry',
+ },
+
+ /* Configure projects for major browsers */
+ projects: [
+ {
+ name: 'chromium',
+ use: { ...devices['Desktop Chrome'] },
+ },
+
+ {
+ name: 'firefox',
+ use: { ...devices['Desktop Firefox'] },
+ },
+
+ {
+ name: 'webkit',
+ use: { ...devices['Desktop Safari'] },
+ },
+
+ /* Test against mobile viewports. */
+ // {
+ // name: 'Mobile Chrome',
+ // use: { ...devices['Pixel 5'] },
+ // },
+ // {
+ // name: 'Mobile Safari',
+ // use: { ...devices['iPhone 12'] },
+ // },
+
+ /* Test against branded browsers. */
+ // {
+ // name: 'Microsoft Edge',
+ // use: { ...devices['Desktop Edge'], channel: 'msedge' },
+ // },
+ // {
+ // name: 'Google Chrome',
+ // use: { ...devices['Desktop Chrome'], channel: 'chrome' },
+ // },
+ ],
+
+ /* Run your local dev server before starting the tests */
+ // webServer: {
+ // command: 'npm run start',
+ // url: 'http://127.0.0.1:3000',
+ // reuseExistingServer: !process.env.CI,
+ // },
+});
diff --git a/examples/headless-example/src/components/SignUp.svelte b/examples/headless-example/src/components/SignUp.svelte
index 89a81d3c5f..ff10003352 100644
--- a/examples/headless-example/src/components/SignUp.svelte
+++ b/examples/headless-example/src/components/SignUp.svelte
@@ -47,7 +47,7 @@
-
+
{/if}
diff --git a/examples/headless-example/tsconfig.json b/examples/headless-example/tsconfig.json
index 33d7df7c2f..dfee8df293 100644
--- a/examples/headless-example/tsconfig.json
+++ b/examples/headless-example/tsconfig.json
@@ -25,6 +25,6 @@
"@/*": ["src/*"]
}
},
- "include": ["src", "public"],
+ "include": ["src", "public", "e2e"],
"references": [{ "path": "./tsconfig.node.json" }]
}
diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml
index 538ade4c18..dafa848d1b 100644
--- a/pnpm-lock.yaml
+++ b/pnpm-lock.yaml
@@ -1,9 +1,5 @@
lockfileVersion: '6.0'
-settings:
- autoInstallPeers: true
- excludeLinksFromLockfile: false
-
importers:
.:
@@ -273,7 +269,7 @@ importers:
version: 8.8.0(eslint@8.22.0)
eslint-plugin-import:
specifier: ^2.26.0
- version: 2.27.5(@typescript-eslint/parser@5.56.0)(eslint@8.22.0)
+ version: 2.27.5(@typescript-eslint/parser@5.56.0)(eslint-import-resolver-typescript@3.5.3)(eslint@8.36.0)
eslint-plugin-react:
specifier: ^7.30.1
version: 7.32.2(eslint@8.22.0)
@@ -501,12 +497,18 @@ importers:
'@felte/core':
specifier: ^1.3.7
version: 1.3.7
+ '@playwright/test':
+ specifier: ^1.35.1
+ version: 1.35.1
'@sveltejs/vite-plugin-svelte':
specifier: ^2.0.2
version: 2.0.3(svelte@3.57.0)(vite@4.2.1)
'@tsconfig/svelte':
specifier: ^3.0.0
version: 3.0.0
+ '@types/node':
+ specifier: ^20.3.2
+ version: 20.3.2
'@xstate/inspect':
specifier: ^0.7.1
version: 0.7.1(ws@8.13.0)(xstate@4.37.1)
@@ -527,10 +529,10 @@ importers:
version: 3.57.0
svelte-check:
specifier: ^2.10.3
- version: 2.10.3(@babel/core@7.21.3)(postcss@8.4.21)(svelte@3.57.0)
+ version: 2.10.3(postcss@8.4.21)(svelte@3.57.0)
tailwindcss:
specifier: ^3.2.4
- version: 3.2.7(postcss@8.4.21)(ts-node@10.9.1)
+ version: 3.2.7(postcss@8.4.21)
tslib:
specifier: ^2.5.0
version: 2.5.0
@@ -539,7 +541,7 @@ importers:
version: 4.9.5
vite:
specifier: ^4.1.0
- version: 4.2.1(@types/node@18.15.10)
+ version: 4.2.1(@types/node@20.3.2)
packages/common:
dependencies:
@@ -4872,13 +4874,13 @@ packages:
dependencies:
'@babel/core': 7.21.3
'@babel/helper-annotate-as-pure': 7.18.6
- '@babel/helper-compilation-targets': 7.22.5(@babel/core@7.21.3)
- '@babel/helper-environment-visitor': 7.22.5
- '@babel/helper-function-name': 7.22.5
+ '@babel/helper-compilation-targets': 7.20.7(@babel/core@7.21.3)
+ '@babel/helper-environment-visitor': 7.18.9
+ '@babel/helper-function-name': 7.21.0
'@babel/helper-optimise-call-expression': 7.18.6
'@babel/helper-plugin-utils': 7.20.2
'@babel/helper-replace-supers': 7.20.7
- '@babel/helper-split-export-declaration': 7.22.5
+ '@babel/helper-split-export-declaration': 7.18.6
globals: 11.12.0
transitivePeerDependencies:
- supports-color
@@ -4892,13 +4894,13 @@ packages:
dependencies:
'@babel/core': 7.22.5
'@babel/helper-annotate-as-pure': 7.18.6
- '@babel/helper-compilation-targets': 7.22.5(@babel/core@7.22.5)
- '@babel/helper-environment-visitor': 7.22.5
- '@babel/helper-function-name': 7.22.5
+ '@babel/helper-compilation-targets': 7.20.7(@babel/core@7.22.5)
+ '@babel/helper-environment-visitor': 7.18.9
+ '@babel/helper-function-name': 7.21.0
'@babel/helper-optimise-call-expression': 7.18.6
'@babel/helper-plugin-utils': 7.20.2
'@babel/helper-replace-supers': 7.20.7
- '@babel/helper-split-export-declaration': 7.22.5
+ '@babel/helper-split-export-declaration': 7.18.6
globals: 11.12.0
transitivePeerDependencies:
- supports-color
@@ -8840,6 +8842,17 @@ packages:
fsevents: 2.3.2
dev: true
+ /@playwright/test@1.35.1:
+ resolution: {integrity: sha512-b5YoFe6J9exsMYg0pQAobNDR85T1nLumUYgUTtKm4d21iX2L7WqKq9dW8NGJ+2vX0etZd+Y7UeuqsxDXm9+5ZA==}
+ engines: {node: '>=16'}
+ hasBin: true
+ dependencies:
+ '@types/node': 18.15.10
+ playwright-core: 1.35.1
+ optionalDependencies:
+ fsevents: 2.3.2
+ dev: true
+
/@polka/url@1.0.0-next.21:
resolution: {integrity: sha512-a5Sab1C4/icpTZVzZc5Ghpz88yQtGOyNqYXcZgOssB2uuAr+wF/MvN6bgtW32q7HHrvBki+BsZ0OuNv6EV3K9g==}
dev: false
@@ -11098,11 +11111,11 @@ packages:
telejson: 7.1.0
dev: true
- /@storybook/channel-postmessage@7.1.0-alpha.39:
- resolution: {integrity: sha512-hio7NEmRJds9AX+4uqt9r/sFDZyCvgCL404coKN6QnkP43JmyreowJG4NzicvB+mvJNLUAviVey6auiPoWlY7A==}
+ /@storybook/channel-postmessage@7.1.0-alpha.40:
+ resolution: {integrity: sha512-BzktCTkfAHjPM3pXF+9gqqV9yd95o0q6Yo502n+tnyvQl+LvsGEzVb1UXyaF2Vve0lfcqXz5Ge3W18zcm7x12g==}
dependencies:
- '@storybook/channels': 7.1.0-alpha.39
- '@storybook/client-logger': 7.1.0-alpha.39
+ '@storybook/channels': 7.1.0-alpha.40
+ '@storybook/client-logger': 7.1.0-alpha.40
dev: true
/@storybook/channel-websocket@7.0.0-rc.10:
@@ -11126,11 +11139,11 @@ packages:
resolution: {integrity: sha512-LNjI2etxaK5hbBHziNbDzK5VajGU0BLcD04CO3LbGRC14hJvDfVnvymJeDbbgT1b7RPUwl/vv/azO1kVHDax/A==}
dev: true
- /@storybook/channels@7.1.0-alpha.39:
- resolution: {integrity: sha512-VHJ+WXd4YAkuNiE5wpQhVDVsnqHKajGB2bAVfjtBwLF/VixDhTK/O/+FWGClJuU7btocnYlgOg7R2d/mRZdbHQ==}
+ /@storybook/channels@7.1.0-alpha.40:
+ resolution: {integrity: sha512-GMbuR8M/idzCjwWVpBu6yCtkolFhfJDX7/61Y/RAfj8yToJ1BvfaO66Ur8pjfm6Y3q1gxJxvRNyFGAixUCqULw==}
dependencies:
- '@storybook/client-logger': 7.1.0-alpha.39
- '@storybook/core-events': 7.1.0-alpha.39
+ '@storybook/client-logger': 7.1.0-alpha.40
+ '@storybook/core-events': 7.1.0-alpha.40
'@storybook/global': 5.0.0
qs: 6.11.2
telejson: 7.1.0
@@ -11199,8 +11212,8 @@ packages:
'@storybook/global': 5.0.0
dev: true
- /@storybook/client-logger@7.1.0-alpha.39:
- resolution: {integrity: sha512-x9QpVsCAlFuvzQzblIWV5E+ThB53cIBcyKFu2A9s9LiEO55hYz9G9FF9yGnwBMjQ0iZeqKuAtPy8TLj2wiugdQ==}
+ /@storybook/client-logger@7.1.0-alpha.40:
+ resolution: {integrity: sha512-j6nPSGAZM88nC5bKMhQfZW3jeK2XoizAZO9zbojb3znDMqbjPeOWqtc1JPOgsTS8bYEMgYfc727k75rqnaywGA==}
dependencies:
'@storybook/global': 5.0.0
dev: true
@@ -11304,8 +11317,8 @@ packages:
resolution: {integrity: sha512-Z4S6H1E5FuG7eiVozqcqNBSADt0kCDZeXlpR/gIOYLmTd/BDIQ2QhLt+G41BbEvck8nRnC7lZ9DXuref8V3pDA==}
dev: true
- /@storybook/core-events@7.1.0-alpha.39:
- resolution: {integrity: sha512-LVYHbCq6tlzYKSb+k9/iI5B6EoZ10W0oGFAo/YCxHVyRQJ3fOQNmgYvLmnVjZ1V87AULCFMDyzDBuMGpqqwd0w==}
+ /@storybook/core-events@7.1.0-alpha.40:
+ resolution: {integrity: sha512-mP8OfPtHILDTrKrDv7u1V0qWjXwwRrh4ZYY5TOzOox5UmOy9/u02Yv7K8iDhmCYjMXmKOyzEKI9Wb/3URzAZBg==}
dev: true
/@storybook/core-server@7.0.0-rc.10:
@@ -11441,14 +11454,14 @@ packages:
'@storybook/preview-api': 7.0.0-rc.10
dev: true
- /@storybook/instrumenter@7.1.0-alpha.39:
- resolution: {integrity: sha512-zLOxqmt+oE4y8/K56zJdaDJmIzblqnylgTZfEVOZss0eW1A6vnTAv7C9mwsN4ZvHA0Q/tevLFcAET66GaoLGiQ==}
+ /@storybook/instrumenter@7.1.0-alpha.40:
+ resolution: {integrity: sha512-Pnl/r1d/Lgmp5nLLhQiYSjJVYJAJO2yuO20z7LpjkekgkdzLN8cMQvQyeHYQpamqpa+rd965kBfZ8mstCwfo2Q==}
dependencies:
- '@storybook/channels': 7.1.0-alpha.39
- '@storybook/client-logger': 7.1.0-alpha.39
- '@storybook/core-events': 7.1.0-alpha.39
+ '@storybook/channels': 7.1.0-alpha.40
+ '@storybook/client-logger': 7.1.0-alpha.40
+ '@storybook/core-events': 7.1.0-alpha.40
'@storybook/global': 5.0.0
- '@storybook/preview-api': 7.1.0-alpha.39
+ '@storybook/preview-api': 7.1.0-alpha.40
dev: true
/@storybook/manager-api@7.0.0-rc.10(react-dom@18.2.0)(react@18.2.0):
@@ -11517,16 +11530,16 @@ packages:
util-deprecate: 1.0.2
dev: true
- /@storybook/preview-api@7.1.0-alpha.39:
- resolution: {integrity: sha512-lhTSV2s2AzqewjqRhcynMlHWf7ua2TgohXPy8eJ+l11HKV6ddISASEAGr0umK10OXpJweHPSR+VtyCMZG8tVpA==}
+ /@storybook/preview-api@7.1.0-alpha.40:
+ resolution: {integrity: sha512-dE+j+2hwg0GO43BctZGvkkJvDjLwUWJd0PSG07l26iAmNvDjMD9Npa3lii2mqDjrtdZWNSGNz7hhqt9WpWAYBQ==}
dependencies:
- '@storybook/channel-postmessage': 7.1.0-alpha.39
- '@storybook/channels': 7.1.0-alpha.39
- '@storybook/client-logger': 7.1.0-alpha.39
- '@storybook/core-events': 7.1.0-alpha.39
+ '@storybook/channel-postmessage': 7.1.0-alpha.40
+ '@storybook/channels': 7.1.0-alpha.40
+ '@storybook/client-logger': 7.1.0-alpha.40
+ '@storybook/core-events': 7.1.0-alpha.40
'@storybook/csf': 0.1.0
'@storybook/global': 5.0.0
- '@storybook/types': 7.1.0-alpha.39
+ '@storybook/types': 7.1.0-alpha.40
'@types/qs': 6.9.7
dequal: 2.0.3
lodash: 4.17.21
@@ -11674,8 +11687,8 @@ packages:
/@storybook/testing-library@0.0.14-next.1:
resolution: {integrity: sha512-1CAl40IKIhcPaCC4pYCG0b9IiYNymktfV/jTrX7ctquRY3akaN7f4A1SippVHosksft0M+rQTFE0ccfWW581fw==}
dependencies:
- '@storybook/client-logger': 7.1.0-alpha.39
- '@storybook/instrumenter': 7.1.0-alpha.39
+ '@storybook/client-logger': 7.1.0-alpha.40
+ '@storybook/instrumenter': 7.1.0-alpha.40
'@testing-library/dom': 8.20.0
'@testing-library/user-event': 13.5.0(@testing-library/dom@8.20.0)
ts-dedent: 2.2.0
@@ -11718,13 +11731,13 @@ packages:
file-system-cache: 2.1.1
dev: true
- /@storybook/types@7.1.0-alpha.39:
- resolution: {integrity: sha512-OgWFn62Affl+tJDCcg5o+DB0PG6EQOwk0NsvwYjbLdw9+PEMRs4HCHRaBuwRbeEx6R6++v8fT4XI9QT5Zo0xzg==}
+ /@storybook/types@7.1.0-alpha.40:
+ resolution: {integrity: sha512-+q0COxGmoLFCYfULp2rTY3W5FVmbHxyxLM62uD2Jpf+PZ+gdNjvxj0KcvimfGLZkbCeqSYidsJl2hmMoQi+5Gg==}
dependencies:
- '@storybook/channels': 7.1.0-alpha.39
+ '@storybook/channels': 7.1.0-alpha.40
'@types/babel__core': 7.20.0
'@types/express': 4.17.9
- file-system-cache: 2.1.1
+ file-system-cache: 2.3.0
dev: true
/@sveltejs/vite-plugin-svelte@1.0.8(svelte@3.57.0)(vite@4.0.3):
@@ -11757,13 +11770,13 @@ packages:
svelte: ^3.54.0
vite: ^4.0.0
dependencies:
- debug: 4.3.4(supports-color@8.1.1)
+ debug: 4.3.4
deepmerge: 4.3.1
kleur: 4.1.5
magic-string: 0.29.0
svelte: 3.57.0
svelte-hmr: 0.15.1(svelte@3.57.0)
- vite: 4.2.1(@types/node@18.15.10)
+ vite: 4.2.1(@types/node@20.3.2)
vitefu: 0.2.4(vite@4.2.1)
transitivePeerDependencies:
- supports-color
@@ -12517,6 +12530,9 @@ packages:
resolution: {integrity: sha512-EhcH/wvidPy1WeML3TtYFGR83UzjxeWRen9V402T8aUGYsCHOmfoisV3ZSg03gAFIbLq8TnWOJ0f4cALtnSEUg==}
dev: true
+ /@types/node@20.3.2:
+ resolution: {integrity: sha512-vOBLVQeCQfIcF/2Y7eKFTqrMnizK5lRNQ7ykML/5RuwVXVWxYkgwS7xbt4B6fKCUPgbSL5FSsjHQpaGQP/dQmw==}
+
/@types/normalize-package-data@2.4.1:
resolution: {integrity: sha512-Gj7cI7z+98M282Tqmp2K5EIsoouUEzbBJhQQzDE3jSIRk6r9gsz0oUokqIUR4u1R3dMHo0pDHM7sNOHyhulypw==}
dev: true
@@ -15978,6 +15994,17 @@ packages:
dependencies:
ms: 2.1.3
+ /debug@4.3.4:
+ resolution: {integrity: sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==}
+ engines: {node: '>=6.0'}
+ peerDependencies:
+ supports-color: '*'
+ peerDependenciesMeta:
+ supports-color:
+ optional: true
+ dependencies:
+ ms: 2.1.2
+
/debug@4.3.4(supports-color@8.1.1):
resolution: {integrity: sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==}
engines: {node: '>=6.0'}
@@ -17002,7 +17029,7 @@ packages:
'@typescript-eslint/parser': 5.59.0(eslint@8.36.0)(typescript@4.9.5)
eslint: 8.36.0
eslint-config-standard: 17.0.0(eslint-plugin-import@2.27.5)(eslint-plugin-n@15.6.1)(eslint-plugin-promise@6.1.1)(eslint@8.36.0)
- eslint-plugin-import: 2.27.5(@typescript-eslint/parser@5.59.0)(eslint@8.36.0)
+ eslint-plugin-import: 2.27.5(@typescript-eslint/parser@5.56.0)(eslint-import-resolver-typescript@3.5.3)(eslint@8.36.0)
eslint-plugin-n: 15.6.1(eslint@8.36.0)
eslint-plugin-promise: 6.1.1(eslint@8.36.0)
typescript: 4.9.5
@@ -17019,7 +17046,7 @@ packages:
eslint-plugin-promise: ^6.0.0
dependencies:
eslint: 8.36.0
- eslint-plugin-import: 2.27.5(@typescript-eslint/parser@5.59.0)(eslint@8.36.0)
+ eslint-plugin-import: 2.27.5(@typescript-eslint/parser@5.56.0)(eslint-import-resolver-typescript@3.5.3)(eslint@8.36.0)
eslint-plugin-n: 15.6.1(eslint@8.36.0)
eslint-plugin-promise: 6.1.1(eslint@8.36.0)
dev: true
@@ -17084,64 +17111,6 @@ packages:
- supports-color
dev: true
- /eslint-module-utils@2.7.4(@typescript-eslint/parser@5.56.0)(eslint-import-resolver-node@0.3.7)(eslint@8.22.0):
- resolution: {integrity: sha512-j4GT+rqzCoRKHwURX7pddtIPGySnX9Si/cgMI5ztrcqOPtk5dDEeZ34CQVPphnqkJytlc97Vuk05Um2mJ3gEQA==}
- engines: {node: '>=4'}
- 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
- dependencies:
- '@typescript-eslint/parser': 5.56.0(eslint@8.22.0)(typescript@4.9.5)
- debug: 3.2.7
- eslint: 8.22.0
- eslint-import-resolver-node: 0.3.7
- transitivePeerDependencies:
- - supports-color
- dev: true
-
- /eslint-module-utils@2.7.4(@typescript-eslint/parser@5.59.0)(eslint-import-resolver-node@0.3.7)(eslint@8.36.0):
- resolution: {integrity: sha512-j4GT+rqzCoRKHwURX7pddtIPGySnX9Si/cgMI5ztrcqOPtk5dDEeZ34CQVPphnqkJytlc97Vuk05Um2mJ3gEQA==}
- engines: {node: '>=4'}
- 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
- dependencies:
- '@typescript-eslint/parser': 5.59.0(eslint@8.36.0)(typescript@4.9.5)
- debug: 3.2.7
- eslint: 8.36.0
- eslint-import-resolver-node: 0.3.7
- transitivePeerDependencies:
- - supports-color
- dev: true
-
/eslint-plugin-astro@0.21.1(eslint@8.36.0):
resolution: {integrity: sha512-gzT9R0b/Hl5sks8/WSMTlzu2VC7vdd99MnBYkq61Mk1zBWQ+C9MAuHeTcU72sFmR5XJX56NNURY6H+cN2StRcA==}
engines: {node: ^14.18.0 || >=16.0.0}
@@ -17238,72 +17207,6 @@ packages:
- supports-color
dev: true
- /eslint-plugin-import@2.27.5(@typescript-eslint/parser@5.56.0)(eslint@8.22.0):
- resolution: {integrity: sha512-LmEt3GVofgiGuiE+ORpnvP+kAm3h6MLZJ4Q5HCyHADofsb4VzXFsRiWj3c0OFiV+3DWFh0qg3v9gcPlfc3zRow==}
- engines: {node: '>=4'}
- peerDependencies:
- '@typescript-eslint/parser': '*'
- eslint: ^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0 || ^8
- peerDependenciesMeta:
- '@typescript-eslint/parser':
- optional: true
- dependencies:
- '@typescript-eslint/parser': 5.56.0(eslint@8.22.0)(typescript@4.9.5)
- array-includes: 3.1.6
- array.prototype.flat: 1.3.1
- array.prototype.flatmap: 1.3.1
- debug: 3.2.7
- doctrine: 2.1.0
- eslint: 8.22.0
- eslint-import-resolver-node: 0.3.7
- eslint-module-utils: 2.7.4(@typescript-eslint/parser@5.56.0)(eslint-import-resolver-node@0.3.7)(eslint@8.22.0)
- has: 1.0.3
- is-core-module: 2.11.0
- is-glob: 4.0.3
- minimatch: 3.1.2
- object.values: 1.1.6
- resolve: 1.22.1
- semver: 6.3.0
- tsconfig-paths: 3.14.2
- transitivePeerDependencies:
- - eslint-import-resolver-typescript
- - eslint-import-resolver-webpack
- - supports-color
- dev: true
-
- /eslint-plugin-import@2.27.5(@typescript-eslint/parser@5.59.0)(eslint@8.36.0):
- resolution: {integrity: sha512-LmEt3GVofgiGuiE+ORpnvP+kAm3h6MLZJ4Q5HCyHADofsb4VzXFsRiWj3c0OFiV+3DWFh0qg3v9gcPlfc3zRow==}
- engines: {node: '>=4'}
- peerDependencies:
- '@typescript-eslint/parser': '*'
- eslint: ^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0 || ^8
- peerDependenciesMeta:
- '@typescript-eslint/parser':
- optional: true
- dependencies:
- '@typescript-eslint/parser': 5.59.0(eslint@8.36.0)(typescript@4.9.5)
- array-includes: 3.1.6
- array.prototype.flat: 1.3.1
- array.prototype.flatmap: 1.3.1
- debug: 3.2.7
- doctrine: 2.1.0
- eslint: 8.36.0
- eslint-import-resolver-node: 0.3.7
- eslint-module-utils: 2.7.4(@typescript-eslint/parser@5.59.0)(eslint-import-resolver-node@0.3.7)(eslint@8.36.0)
- has: 1.0.3
- is-core-module: 2.11.0
- is-glob: 4.0.3
- minimatch: 3.1.2
- object.values: 1.1.6
- resolve: 1.22.1
- semver: 6.3.0
- tsconfig-paths: 3.14.2
- transitivePeerDependencies:
- - eslint-import-resolver-typescript
- - eslint-import-resolver-webpack
- - supports-color
- dev: true
-
/eslint-plugin-n@15.6.1(eslint@8.36.0):
resolution: {integrity: sha512-R9xw9OtCRxxaxaszTQmQAlPgM+RdGjaL1akWuY/Fv9fRAi8Wj4CUKc6iYVG8QNRjRuo8/BqVYIpfqberJUEacA==}
engines: {node: '>=12.22.0'}
@@ -18130,6 +18033,13 @@ packages:
ramda: 0.28.0
dev: true
+ /file-system-cache@2.3.0:
+ resolution: {integrity: sha512-l4DMNdsIPsVnKrgEXbJwDJsA5mB8rGwHYERMgqQx/xAUtChPJMre1bXBzDEqqVbWv9AIbFezXMxeEkZDSrXUOQ==}
+ dependencies:
+ fs-extra: 11.1.1
+ ramda: 0.29.0
+ dev: true
+
/file-type@12.4.2:
resolution: {integrity: sha512-UssQP5ZgIOKelfsaB5CuGAL+Y+q7EmONuiwF3N5HAH0t27rvrttgi6Ra9k/+DVaY9UF6+ybxu5pOXLUdA8N7Vg==}
engines: {node: '>=8'}
@@ -23370,6 +23280,12 @@ packages:
hasBin: true
dev: true
+ /playwright-core@1.35.1:
+ resolution: {integrity: sha512-pNXb6CQ7OqmGDRspEjlxE49w+4YtR6a3X6mT1hZXeJHWmsEz7SunmvZeiG/+y1yyMZdHnnn73WKYdtV1er0Xyg==}
+ engines: {node: '>=16'}
+ hasBin: true
+ dev: true
+
/please-upgrade-node@3.2.0:
resolution: {integrity: sha512-gQR3WpIgNIKwBMVLkpMUeR3e1/E1y42bqDQZfql+kDeXd8COYfM8PQA4X6y7a8u9Ua9FHmsrrmirW2vHs45hWg==}
dependencies:
@@ -23428,6 +23344,23 @@ packages:
camelcase-css: 2.0.1
postcss: 8.4.24
+ /postcss-load-config@3.1.4(postcss@8.4.21):
+ resolution: {integrity: sha512-6DiM4E7v4coTE4uzA8U//WhtPwyhiim3eyjEMFCnUpzbrkK9wJHgKDT2mR+HbtSrd/NubVaYTOpSpjUl8NQeRg==}
+ engines: {node: '>= 10'}
+ peerDependencies:
+ postcss: '>=8.0.9'
+ ts-node: '>=9.0.0'
+ peerDependenciesMeta:
+ postcss:
+ optional: true
+ ts-node:
+ optional: true
+ dependencies:
+ lilconfig: 2.1.0
+ postcss: 8.4.21
+ yaml: 1.10.2
+ dev: true
+
/postcss-load-config@3.1.4(postcss@8.4.21)(ts-node@10.9.1):
resolution: {integrity: sha512-6DiM4E7v4coTE4uzA8U//WhtPwyhiim3eyjEMFCnUpzbrkK9wJHgKDT2mR+HbtSrd/NubVaYTOpSpjUl8NQeRg==}
engines: {node: '>= 10'}
@@ -23859,6 +23792,10 @@ packages:
resolution: {integrity: sha512-9QnLuG/kPVgWvMQ4aODhsBUFKOUmnbUnsSXACv+NCQZcHbeb+v8Lodp8OVxtRULN1/xOyYLLaL6npE6dMq5QTA==}
dev: true
+ /ramda@0.29.0:
+ resolution: {integrity: sha512-BBea6L67bYLtdbOqfp8f58fPMqEwx0doL+pAi8TZyp2YWz8R9G8z9x75CZI8W+ftqhFHCpEX2cRnUUXK130iKA==}
+ dev: true
+
/randombytes@2.1.0:
resolution: {integrity: sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==}
dependencies:
@@ -25863,6 +25800,34 @@ packages:
- sugarss
dev: true
+ /svelte-check@2.10.3(postcss@8.4.21)(svelte@3.57.0):
+ resolution: {integrity: sha512-Nt1aWHTOKFReBpmJ1vPug0aGysqPwJh2seM1OvICfM2oeyaA62mOiy5EvkXhltGfhCcIQcq2LoE0l1CwcWPjlw==}
+ hasBin: true
+ peerDependencies:
+ svelte: ^3.24.0
+ dependencies:
+ '@jridgewell/trace-mapping': 0.3.9
+ chokidar: 3.5.3
+ fast-glob: 3.2.12
+ import-fresh: 3.3.0
+ picocolors: 1.0.0
+ sade: 1.8.1
+ svelte: 3.57.0
+ svelte-preprocess: 4.10.7(postcss@8.4.21)(svelte@3.57.0)(typescript@4.9.5)
+ typescript: 4.9.5
+ transitivePeerDependencies:
+ - '@babel/core'
+ - coffeescript
+ - less
+ - node-sass
+ - postcss
+ - postcss-load-config
+ - pug
+ - sass
+ - stylus
+ - sugarss
+ dev: true
+
/svelte-hmr@0.15.1(svelte@3.57.0):
resolution: {integrity: sha512-BiKB4RZ8YSwRKCNVdNxK/GfY+r4Kjgp9jCLEy0DuqAKfmQtpL38cQK3afdpjw4sqSs4PLi3jIPJIFp259NkZtA==}
engines: {node: ^12.20 || ^14.13.1 || >= 16}
@@ -25925,6 +25890,58 @@ packages:
typescript: 4.9.5
dev: true
+ /svelte-preprocess@4.10.7(postcss@8.4.21)(svelte@3.57.0)(typescript@4.9.5):
+ resolution: {integrity: sha512-sNPBnqYD6FnmdBrUmBCaqS00RyCsCpj2BG58A1JBswNF7b0OKviwxqVrOL/CKyJrLSClrSeqQv5BXNg2RUbPOw==}
+ engines: {node: '>= 9.11.2'}
+ requiresBuild: true
+ peerDependencies:
+ '@babel/core': ^7.10.2
+ coffeescript: ^2.5.1
+ less: ^3.11.3 || ^4.0.0
+ node-sass: '*'
+ postcss: ^7 || ^8
+ postcss-load-config: ^2.1.0 || ^3.0.0 || ^4.0.0
+ pug: ^3.0.0
+ sass: ^1.26.8
+ stylus: ^0.55.0
+ sugarss: ^2.0.0
+ svelte: ^3.23.0
+ typescript: ^3.9.5 || ^4.0.0
+ peerDependenciesMeta:
+ '@babel/core':
+ optional: true
+ coffeescript:
+ optional: true
+ less:
+ optional: true
+ node-sass:
+ optional: true
+ postcss:
+ optional: true
+ postcss-load-config:
+ optional: true
+ pug:
+ optional: true
+ sass:
+ optional: true
+ stylus:
+ optional: true
+ sugarss:
+ optional: true
+ typescript:
+ optional: true
+ dependencies:
+ '@types/pug': 2.0.6
+ '@types/sass': 1.45.0
+ detect-indent: 6.1.0
+ magic-string: 0.25.9
+ postcss: 8.4.21
+ sorcery: 0.10.0
+ strip-indent: 3.0.0
+ svelte: 3.57.0
+ typescript: 4.9.5
+ dev: true
+
/svelte@3.57.0:
resolution: {integrity: sha512-WMXEvF+RtAaclw0t3bPDTUe19pplMlfyKDsixbHQYgCWi9+O9VN0kXU1OppzrB9gPAvz4NALuoca2LfW2bOjTQ==}
engines: {node: '>= 8'}
@@ -25985,9 +26002,43 @@ packages:
peerDependencies:
tailwindcss: '>=3.0.0 || insiders'
dependencies:
- tailwindcss: 3.2.7(postcss@8.4.24)(ts-node@10.9.1)
+ tailwindcss: 3.2.7(postcss@8.4.21)(ts-node@10.9.1)
dev: false
+ /tailwindcss@3.2.7(postcss@8.4.21):
+ resolution: {integrity: sha512-B6DLqJzc21x7wntlH/GsZwEXTBttVSl1FtCzC8WP4oBc/NKef7kaax5jeihkkCEWc831/5NDJ9gRNDK6NEioQQ==}
+ engines: {node: '>=12.13.0'}
+ hasBin: true
+ peerDependencies:
+ postcss: ^8.0.9
+ dependencies:
+ arg: 5.0.2
+ chokidar: 3.5.3
+ color-name: 1.1.4
+ detective: 5.2.1
+ didyoumean: 1.2.2
+ dlv: 1.1.3
+ fast-glob: 3.2.12
+ glob-parent: 6.0.2
+ is-glob: 4.0.3
+ lilconfig: 2.1.0
+ micromatch: 4.0.5
+ normalize-path: 3.0.0
+ object-hash: 3.0.0
+ picocolors: 1.0.0
+ postcss: 8.4.21
+ postcss-import: 14.1.0(postcss@8.4.21)
+ postcss-js: 4.0.1(postcss@8.4.21)
+ postcss-load-config: 3.1.4(postcss@8.4.21)
+ postcss-nested: 6.0.0(postcss@8.4.21)
+ postcss-selector-parser: 6.0.11
+ postcss-value-parser: 4.2.0
+ quick-lru: 5.1.1
+ resolve: 1.22.1
+ transitivePeerDependencies:
+ - ts-node
+ dev: true
+
/tailwindcss@3.2.7(postcss@8.4.21)(ts-node@10.9.1):
resolution: {integrity: sha512-B6DLqJzc21x7wntlH/GsZwEXTBttVSl1FtCzC8WP4oBc/NKef7kaax5jeihkkCEWc831/5NDJ9gRNDK6NEioQQ==}
engines: {node: '>=12.13.0'}
@@ -27479,10 +27530,10 @@ packages:
vite:
optional: true
dependencies:
- debug: 4.3.4(supports-color@8.1.1)
+ debug: 4.3.4
globrex: 0.1.2
tsconfck: 2.1.1(typescript@4.9.5)
- vite: 4.2.1(@types/node@18.15.10)
+ vite: 4.2.1(@types/node@20.3.2)
transitivePeerDependencies:
- supports-color
- typescript
@@ -27588,6 +27639,39 @@ packages:
optionalDependencies:
fsevents: 2.3.2
+ /vite@4.2.1(@types/node@20.3.2):
+ resolution: {integrity: sha512-7MKhqdy0ISo4wnvwtqZkjke6XN4taqQ2TBaTccLIpOKv7Vp2h4Y+NpmWCnGDeSvvn45KxvWgGyb0MkHvY1vgbg==}
+ engines: {node: ^14.18.0 || >=16.0.0}
+ hasBin: true
+ peerDependencies:
+ '@types/node': '>= 14'
+ less: '*'
+ sass: '*'
+ stylus: '*'
+ sugarss: '*'
+ terser: ^5.4.0
+ peerDependenciesMeta:
+ '@types/node':
+ optional: true
+ less:
+ optional: true
+ sass:
+ optional: true
+ stylus:
+ optional: true
+ sugarss:
+ optional: true
+ terser:
+ optional: true
+ dependencies:
+ '@types/node': 20.3.2
+ esbuild: 0.17.14
+ postcss: 8.4.24
+ resolve: 1.22.1
+ rollup: 3.20.2
+ optionalDependencies:
+ fsevents: 2.3.2
+
/vite@4.3.9(@types/node@18.15.10):
resolution: {integrity: sha512-qsTNZjO9NoJNW7KnOrgYwczm0WctJ8m/yqYAMAK9Lxt4SoySUfS5S8ia9K7JHpa3KEeMfyF8LoJ3c5NeBJy6pg==}
engines: {node: ^14.18.0 || >=16.0.0}
@@ -27672,7 +27756,7 @@ packages:
vite:
optional: true
dependencies:
- vite: 4.2.1(@types/node@18.15.10)
+ vite: 4.2.1(@types/node@20.3.2)
dev: true
/vitefu@0.2.4(vite@4.3.9):
@@ -28529,3 +28613,7 @@ packages:
/zwitch@2.0.4:
resolution: {integrity: sha512-bXE4cR/kVZhKZX/RjPEflHaKVhUVl85noU3v6b8apfQEc1x4A+zBxjZ4lN8LqGd6WZ3dl98pY4o717VFmoPp+A==}
dev: false
+
+settings:
+ autoInstallPeers: true
+ excludeLinksFromLockfile: false