mirror of
https://github.com/teamhanko/hanko.git
synced 2025-10-29 15:49:41 +08:00
feat: dockerize examples. react and nextjs working
This commit is contained in:
69
deploy/docker-compose/base.yml
Normal file
69
deploy/docker-compose/base.yml
Normal file
@ -0,0 +1,69 @@
|
||||
services:
|
||||
hanko-migrate:
|
||||
build: ../../backend
|
||||
volumes:
|
||||
- type: bind
|
||||
source: ./config.yaml
|
||||
target: /etc/config/config.yaml
|
||||
command: --config /etc/config/config.yaml migrate up
|
||||
restart: on-failure
|
||||
depends_on:
|
||||
postgresd:
|
||||
condition: service_healthy
|
||||
networks:
|
||||
- intranet
|
||||
hanko:
|
||||
depends_on:
|
||||
hanko-migrate:
|
||||
condition: service_completed_successfully
|
||||
build: ../../backend
|
||||
ports:
|
||||
- '8000:8000' # public
|
||||
- '8001:8001' # admin
|
||||
restart: unless-stopped
|
||||
command: serve --config /etc/config/config.yaml all
|
||||
volumes:
|
||||
- type: bind
|
||||
source: ./config.yaml
|
||||
target: /etc/config/config.yaml
|
||||
networks:
|
||||
- intranet
|
||||
environment:
|
||||
- PASSWORD_ENABLED
|
||||
postgresd:
|
||||
image: postgres:12-alpine
|
||||
ports:
|
||||
- "5432:5432"
|
||||
environment:
|
||||
- POSTGRES_USER=hanko
|
||||
- POSTGRES_PASSWORD=hanko
|
||||
- POSTGRES_DB=hanko
|
||||
healthcheck:
|
||||
test: pg_isready -U hanko -d hanko
|
||||
interval: 10s
|
||||
timeout: 10s
|
||||
retries: 3
|
||||
start_period: 30s
|
||||
networks:
|
||||
- intranet
|
||||
elements:
|
||||
build: ../../elements
|
||||
ports:
|
||||
- "9500:80"
|
||||
networks:
|
||||
- intranet
|
||||
fontendsdk:
|
||||
build: ../../frontend-sdk
|
||||
ports:
|
||||
- "9501:80"
|
||||
networks:
|
||||
- intranet
|
||||
mailslurper:
|
||||
image: marcopas/docker-mailslurper:latest
|
||||
ports:
|
||||
- '8080:8080' # web UI
|
||||
- '8085:8085'
|
||||
networks:
|
||||
- intranet
|
||||
networks:
|
||||
intranet:
|
||||
15
deploy/docker-compose/todo-angular.yaml
Normal file
15
deploy/docker-compose/todo-angular.yaml
Normal file
@ -0,0 +1,15 @@
|
||||
services:
|
||||
todo-backend:
|
||||
build: ../../examples/express
|
||||
ports:
|
||||
- "8002:8002"
|
||||
environment:
|
||||
- HANKO_API_URL=http://hanko:8000
|
||||
networks:
|
||||
- intranet
|
||||
todo-frontend:
|
||||
build: ../../examples/angular
|
||||
ports:
|
||||
- "8888:8888"
|
||||
networks:
|
||||
- intranet
|
||||
15
deploy/docker-compose/todo-nextjs.yaml
Normal file
15
deploy/docker-compose/todo-nextjs.yaml
Normal file
@ -0,0 +1,15 @@
|
||||
services:
|
||||
todo-backend:
|
||||
build: ../../examples/express
|
||||
ports:
|
||||
- "8002:8002"
|
||||
environment:
|
||||
- HANKO_API_URL=http://hanko:8000
|
||||
networks:
|
||||
- intranet
|
||||
todo-frontend:
|
||||
build: ../../examples/nextjs
|
||||
ports:
|
||||
- "8888:8888"
|
||||
networks:
|
||||
- intranet
|
||||
15
deploy/docker-compose/todo-react.yaml
Normal file
15
deploy/docker-compose/todo-react.yaml
Normal file
@ -0,0 +1,15 @@
|
||||
services:
|
||||
todo-backend:
|
||||
build: ../../examples/express
|
||||
ports:
|
||||
- "8002:8002"
|
||||
environment:
|
||||
- HANKO_API_URL=http://hanko:8000
|
||||
networks:
|
||||
- intranet
|
||||
todo-frontend:
|
||||
build: ../../examples/react
|
||||
ports:
|
||||
- "8888:8888"
|
||||
networks:
|
||||
- intranet
|
||||
15
deploy/docker-compose/todo-vue.yaml
Normal file
15
deploy/docker-compose/todo-vue.yaml
Normal file
@ -0,0 +1,15 @@
|
||||
services:
|
||||
todo-backend:
|
||||
build: ../../examples/express
|
||||
ports:
|
||||
- "8002:8002"
|
||||
environment:
|
||||
- HANKO_API_URL=http://hanko:8000
|
||||
networks:
|
||||
- intranet
|
||||
todo-frontend:
|
||||
build: ../../examples/vue
|
||||
ports:
|
||||
- "8888:8888"
|
||||
networks:
|
||||
- intranet
|
||||
@ -15,7 +15,26 @@ It contains:
|
||||
- [Vue](vue)
|
||||
|
||||
## How to run
|
||||
|
||||
### Manual
|
||||
1. Start the Hanko API (see the instructions on how to run the API [in Docker](../backend/README.md#Docker) or [from Source](../backend/README.md#from-source))
|
||||
2. Start the express backend (see the [README](express) for the express backend)
|
||||
3. Start one of the frontend applications (see the README for the app of your choice)
|
||||
|
||||
### Docker Compose
|
||||
|
||||
#### React
|
||||
```
|
||||
docker-compose -f deploy/docker-compose/base.yml -f deploy/docker-compose/todo-react.yaml -p "hanko-todo-react" up --build
|
||||
```
|
||||
#### Angular
|
||||
```
|
||||
docker-compose -f deploy/docker-compose/base.yml -f deploy/docker-compose/todo-angular.yaml -p "hanko-todo-angular" up --build
|
||||
```
|
||||
#### Next.js
|
||||
```
|
||||
docker-compose -f deploy/docker-compose/base.yml -f deploy/docker-compose/todo-nextjs.yaml -p "hanko-todo-nextjs" up --build
|
||||
```
|
||||
#### Vue
|
||||
```
|
||||
docker-compose -f deploy/docker-compose/base.yml -f deploy/docker-compose/todo-vue.yaml -p "hanko-todo-vue" up --build
|
||||
```
|
||||
|
||||
19
examples/angular/Dockerfile
Normal file
19
examples/angular/Dockerfile
Normal file
@ -0,0 +1,19 @@
|
||||
# pull official base image
|
||||
FROM node:16-alpine
|
||||
|
||||
# set working directory
|
||||
WORKDIR /app
|
||||
|
||||
# add `/app/node_modules/.bin` to $PATH
|
||||
ENV PATH /app/node_modules/.bin:$PATH
|
||||
|
||||
# install app dependencies
|
||||
COPY package.json ./
|
||||
COPY package-lock.json ./
|
||||
RUN npm install
|
||||
|
||||
# add app
|
||||
COPY . ./
|
||||
|
||||
# start app
|
||||
CMD ["npm", "start"]
|
||||
@ -3,7 +3,6 @@
|
||||
This project was generated with [Angular CLI](https://github.com/angular/angular-cli) version 14.2.3.
|
||||
|
||||
## Starting the app
|
||||
|
||||
### Prerequisites
|
||||
|
||||
- a running Hanko API (see the instructions on how to run the API [in Docker](../backend/README.md#Docker) or [from Source](../backend/README.md#from-source))
|
||||
@ -18,4 +17,4 @@ In the `src/environments/environment.ts` file set up the correct environment var
|
||||
|
||||
### Run development server
|
||||
|
||||
Run `npm install` to install dependencies, then run `npm run start` for a development server. Navigate to `http://localhost:3000/`. The application will automatically reload if you change any of the source files.
|
||||
Run `npm install` to install dependencies, then run `npm run start` for a development server. Navigate to `http://localhost:8888/`. The application will automatically reload if you change any of the source files.
|
||||
|
||||
261
examples/angular/package-lock.json
generated
261
examples/angular/package-lock.json
generated
@ -1,6 +1,5 @@
|
||||
{
|
||||
"name": "example-angular",
|
||||
"version": "0.0.0",
|
||||
"lockfileVersion": 2,
|
||||
"requires": true,
|
||||
"packages": {
|
||||
@ -330,9 +329,9 @@
|
||||
"dev": true
|
||||
},
|
||||
"node_modules/@angular/animations": {
|
||||
"version": "14.2.2",
|
||||
"resolved": "https://registry.npmjs.org/@angular/animations/-/animations-14.2.2.tgz",
|
||||
"integrity": "sha512-YPtwjfjGCtRlGIYyFK8JPq6kfR8Gz93kmkIF+fnUes42M5DAQvCccVRxi1OXU6dDLsFY9w7DvTl+HR/VocaFsg==",
|
||||
"version": "14.2.3",
|
||||
"resolved": "https://registry.npmjs.org/@angular/animations/-/animations-14.2.3.tgz",
|
||||
"integrity": "sha512-5psQgSia7pUUKYpFuwA+c+yWyM8afl9ZlOW2pxBU/2mTMLpxJEnVrUnKRsx3WSrOc9YqoLn6DOtDLXq2dbTxFQ==",
|
||||
"dependencies": {
|
||||
"tslib": "^2.3.0"
|
||||
},
|
||||
@ -340,7 +339,7 @@
|
||||
"node": "^14.15.0 || >=16.10.0"
|
||||
},
|
||||
"peerDependencies": {
|
||||
"@angular/core": "14.2.2"
|
||||
"@angular/core": "14.2.3"
|
||||
}
|
||||
},
|
||||
"node_modules/@angular/cli": {
|
||||
@ -380,9 +379,9 @@
|
||||
}
|
||||
},
|
||||
"node_modules/@angular/common": {
|
||||
"version": "14.2.2",
|
||||
"resolved": "https://registry.npmjs.org/@angular/common/-/common-14.2.2.tgz",
|
||||
"integrity": "sha512-9h8MwFLvIJ5kB5L03cd3Cyl4ySKVzL/E/YYugfLvcAzYZ8Rief63gJnkcKNjoS1A5DTxHhOBQL7pLZpj+YxDOw==",
|
||||
"version": "14.2.3",
|
||||
"resolved": "https://registry.npmjs.org/@angular/common/-/common-14.2.3.tgz",
|
||||
"integrity": "sha512-DoBQk9uBWfGc+mZ9+lwpmZQy05zKgOeIfDM+2f7Wjrv1/X/V+YUJhjS66GIEBGOe23DoSeivLLCpVj8QqR058A==",
|
||||
"dependencies": {
|
||||
"tslib": "^2.3.0"
|
||||
},
|
||||
@ -390,14 +389,14 @@
|
||||
"node": "^14.15.0 || >=16.10.0"
|
||||
},
|
||||
"peerDependencies": {
|
||||
"@angular/core": "14.2.2",
|
||||
"@angular/core": "14.2.3",
|
||||
"rxjs": "^6.5.3 || ^7.4.0"
|
||||
}
|
||||
},
|
||||
"node_modules/@angular/compiler": {
|
||||
"version": "14.2.2",
|
||||
"resolved": "https://registry.npmjs.org/@angular/compiler/-/compiler-14.2.2.tgz",
|
||||
"integrity": "sha512-r6673fINahrESOk1lJgXFDO3cH3gTDJJrj1++yYfrgRSqGMzASECy3XTevCjIvw9SycIkU/P+NiE/W/WAlP5vg==",
|
||||
"version": "14.2.3",
|
||||
"resolved": "https://registry.npmjs.org/@angular/compiler/-/compiler-14.2.3.tgz",
|
||||
"integrity": "sha512-DG2lqSqD5hx6Qk362jhjU9O+I2gOlsV8oUSTOkH4eFQ54PUad1D3hjqfcs3/lsvWggALCSjv9X8BOG8jb7n8vw==",
|
||||
"dependencies": {
|
||||
"tslib": "^2.3.0"
|
||||
},
|
||||
@ -405,7 +404,7 @@
|
||||
"node": "^14.15.0 || >=16.10.0"
|
||||
},
|
||||
"peerDependencies": {
|
||||
"@angular/core": "14.2.2"
|
||||
"@angular/core": "14.2.3"
|
||||
},
|
||||
"peerDependenciesMeta": {
|
||||
"@angular/core": {
|
||||
@ -414,9 +413,9 @@
|
||||
}
|
||||
},
|
||||
"node_modules/@angular/compiler-cli": {
|
||||
"version": "14.2.2",
|
||||
"resolved": "https://registry.npmjs.org/@angular/compiler-cli/-/compiler-cli-14.2.2.tgz",
|
||||
"integrity": "sha512-r3vOBUqInHwahloz4mmSrXk22q/4WGNoRR0hxR71tUhLiowYkAaWe72TdPYrDt0SYgZcffAomK7iQHrpJiwLuQ==",
|
||||
"version": "14.2.3",
|
||||
"resolved": "https://registry.npmjs.org/@angular/compiler-cli/-/compiler-cli-14.2.3.tgz",
|
||||
"integrity": "sha512-MPKZTD4j5EnvpHXLOj6VnXBv/LXfVLoLNc4nNShfuJFJjK9vOqXelb2GJt+2iL+9xKevGxDk7NIcl++fhV2lkQ==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"@babel/core": "^7.17.2",
|
||||
@ -439,14 +438,14 @@
|
||||
"node": "^14.15.0 || >=16.10.0"
|
||||
},
|
||||
"peerDependencies": {
|
||||
"@angular/compiler": "14.2.2",
|
||||
"@angular/compiler": "14.2.3",
|
||||
"typescript": ">=4.6.2 <4.9"
|
||||
}
|
||||
},
|
||||
"node_modules/@angular/core": {
|
||||
"version": "14.2.2",
|
||||
"resolved": "https://registry.npmjs.org/@angular/core/-/core-14.2.2.tgz",
|
||||
"integrity": "sha512-kG30b4RqjgWvaH9y4g95JRCzoROV+9/xgFH4hSRejFa/IcapMfvCmONJtJzwTjdsEUQAbiFohF/z9bx3QA/Yvw==",
|
||||
"version": "14.2.3",
|
||||
"resolved": "https://registry.npmjs.org/@angular/core/-/core-14.2.3.tgz",
|
||||
"integrity": "sha512-neW2n5Ts2purYEVh0Lf207otZbhYH4C4lwwu8ffxdRiXahQiTCbmyM3IQFrQZbLDb/ZeD2KhoCl6p0hlyg14cA==",
|
||||
"dependencies": {
|
||||
"tslib": "^2.3.0"
|
||||
},
|
||||
@ -459,9 +458,9 @@
|
||||
}
|
||||
},
|
||||
"node_modules/@angular/forms": {
|
||||
"version": "14.2.2",
|
||||
"resolved": "https://registry.npmjs.org/@angular/forms/-/forms-14.2.2.tgz",
|
||||
"integrity": "sha512-lq6PpLMNfs0KcIhkQrUVfKuP4hZSeUQyKOErvoLrPhDiakvOWYoQZKh6XHsbQRcuhWKHy6IITldz6sg8pWVrTw==",
|
||||
"version": "14.2.3",
|
||||
"resolved": "https://registry.npmjs.org/@angular/forms/-/forms-14.2.3.tgz",
|
||||
"integrity": "sha512-rL6adBHp51i3eDBecexrlrS+t+hlK6EnrEot/+Ec+DzVjJgw5VNJ4p2Ig72HPe0m+H0dcPkbQhlpb6cs677ISA==",
|
||||
"dependencies": {
|
||||
"tslib": "^2.3.0"
|
||||
},
|
||||
@ -469,16 +468,16 @@
|
||||
"node": "^14.15.0 || >=16.10.0"
|
||||
},
|
||||
"peerDependencies": {
|
||||
"@angular/common": "14.2.2",
|
||||
"@angular/core": "14.2.2",
|
||||
"@angular/platform-browser": "14.2.2",
|
||||
"@angular/common": "14.2.3",
|
||||
"@angular/core": "14.2.3",
|
||||
"@angular/platform-browser": "14.2.3",
|
||||
"rxjs": "^6.5.3 || ^7.4.0"
|
||||
}
|
||||
},
|
||||
"node_modules/@angular/platform-browser": {
|
||||
"version": "14.2.2",
|
||||
"resolved": "https://registry.npmjs.org/@angular/platform-browser/-/platform-browser-14.2.2.tgz",
|
||||
"integrity": "sha512-1NrtOIvevoDDT6DU+Fsm5TsNN/XJhIV/UhfInmU/rz97RERl8etcOQRsxWnjGwZjk9rjt+0lBbW5oVDFKOJa+w==",
|
||||
"version": "14.2.3",
|
||||
"resolved": "https://registry.npmjs.org/@angular/platform-browser/-/platform-browser-14.2.3.tgz",
|
||||
"integrity": "sha512-Ky5ITBVmr+T5zHRowLRTJx1exXo99bUA6vosxG4B/YlXkjNfqVz4BETgPwnoIdN00Y9lxGQrMbjqSuzOjGQ7IQ==",
|
||||
"dependencies": {
|
||||
"tslib": "^2.3.0"
|
||||
},
|
||||
@ -486,9 +485,9 @@
|
||||
"node": "^14.15.0 || >=16.10.0"
|
||||
},
|
||||
"peerDependencies": {
|
||||
"@angular/animations": "14.2.2",
|
||||
"@angular/common": "14.2.2",
|
||||
"@angular/core": "14.2.2"
|
||||
"@angular/animations": "14.2.3",
|
||||
"@angular/common": "14.2.3",
|
||||
"@angular/core": "14.2.3"
|
||||
},
|
||||
"peerDependenciesMeta": {
|
||||
"@angular/animations": {
|
||||
@ -497,9 +496,9 @@
|
||||
}
|
||||
},
|
||||
"node_modules/@angular/platform-browser-dynamic": {
|
||||
"version": "14.2.2",
|
||||
"resolved": "https://registry.npmjs.org/@angular/platform-browser-dynamic/-/platform-browser-dynamic-14.2.2.tgz",
|
||||
"integrity": "sha512-fehhiOwC4mn4sprjSiuGc0uITToiiKJJdtUNDsJyOJinKuy3GBwHpGckiEx4E85Z/PkPCMb8lYRJb/IciUV9+A==",
|
||||
"version": "14.2.3",
|
||||
"resolved": "https://registry.npmjs.org/@angular/platform-browser-dynamic/-/platform-browser-dynamic-14.2.3.tgz",
|
||||
"integrity": "sha512-yqSH9NrgkXN3aslbD9IHWnFClwwVlLTypaMfSGmhPL1LvgL/HL/A9rDYI2ZrybVoVmAZLsJ4uF2/GvK/pzUcNQ==",
|
||||
"dependencies": {
|
||||
"tslib": "^2.3.0"
|
||||
},
|
||||
@ -507,16 +506,16 @@
|
||||
"node": "^14.15.0 || >=16.10.0"
|
||||
},
|
||||
"peerDependencies": {
|
||||
"@angular/common": "14.2.2",
|
||||
"@angular/compiler": "14.2.2",
|
||||
"@angular/core": "14.2.2",
|
||||
"@angular/platform-browser": "14.2.2"
|
||||
"@angular/common": "14.2.3",
|
||||
"@angular/compiler": "14.2.3",
|
||||
"@angular/core": "14.2.3",
|
||||
"@angular/platform-browser": "14.2.3"
|
||||
}
|
||||
},
|
||||
"node_modules/@angular/router": {
|
||||
"version": "14.2.2",
|
||||
"resolved": "https://registry.npmjs.org/@angular/router/-/router-14.2.2.tgz",
|
||||
"integrity": "sha512-BRkXdAVK0rE/x6im91a/fdIcWhPILO6ZmwCVTEdvsRyI9arQSlXAnupPUeumdbSc6mG/FCXPcyJq/dU0Jl70Og==",
|
||||
"version": "14.2.3",
|
||||
"resolved": "https://registry.npmjs.org/@angular/router/-/router-14.2.3.tgz",
|
||||
"integrity": "sha512-ACSBYZCMWBaVHmclaFS5C+zSTTcMbY6iJFjI0tiTqicqdpzAOIt6s5Ius1wzN9L6ANijn1ZdGAzH6j45GV/XtQ==",
|
||||
"dependencies": {
|
||||
"tslib": "^2.3.0"
|
||||
},
|
||||
@ -524,9 +523,9 @@
|
||||
"node": "^14.15.0 || >=16.10.0"
|
||||
},
|
||||
"peerDependencies": {
|
||||
"@angular/common": "14.2.2",
|
||||
"@angular/core": "14.2.2",
|
||||
"@angular/platform-browser": "14.2.2",
|
||||
"@angular/common": "14.2.3",
|
||||
"@angular/core": "14.2.3",
|
||||
"@angular/platform-browser": "14.2.3",
|
||||
"rxjs": "^6.5.3 || ^7.4.0"
|
||||
}
|
||||
},
|
||||
@ -2225,9 +2224,9 @@
|
||||
}
|
||||
},
|
||||
"node_modules/@csstools/postcss-cascade-layers": {
|
||||
"version": "1.1.0",
|
||||
"resolved": "https://registry.npmjs.org/@csstools/postcss-cascade-layers/-/postcss-cascade-layers-1.1.0.tgz",
|
||||
"integrity": "sha512-XpA7g2KViA2ia23A5kZ/EQw+Sy308kLbvMlDPjFZmojwaJ9DYdJuwujFcDGK9v1QhHRmMEHbV2brVSQSLkN/7A==",
|
||||
"version": "1.1.1",
|
||||
"resolved": "https://registry.npmjs.org/@csstools/postcss-cascade-layers/-/postcss-cascade-layers-1.1.1.tgz",
|
||||
"integrity": "sha512-+KdYrpKC5TgomQr2DlZF4lDEpHcoxnj5IGddYYfBWJAKfj1JtuHUIqMa+E1pJJ+z3kvDViWMqyqPlG4Ja7amQA==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"@csstools/selector-specificity": "^2.0.2",
|
||||
@ -2507,9 +2506,8 @@
|
||||
},
|
||||
"node_modules/@denysvuika/preact-translate": {
|
||||
"version": "0.3.0",
|
||||
"resolved": "http://0.0.0.0:4873/@denysvuika%2fpreact-translate/-/preact-translate-0.3.0.tgz",
|
||||
"resolved": "https://registry.npmjs.org/@denysvuika/preact-translate/-/preact-translate-0.3.0.tgz",
|
||||
"integrity": "sha512-0ijz/4WiOxUYjD17wVM0VLQwtNn8hdpUedhYtc4JcudM/CxEjdARaNc9u/ALBlM7OqNPP/4OBe3TFYvP2O92qA==",
|
||||
"license": "MIT",
|
||||
"peerDependencies": {
|
||||
"preact": ">=10.0.0"
|
||||
}
|
||||
@ -2863,9 +2861,8 @@
|
||||
},
|
||||
"node_modules/@teamhanko/hanko-frontend-sdk": {
|
||||
"version": "0.0.1-alpha",
|
||||
"resolved": "http://0.0.0.0:4873/@teamhanko%2fhanko-frontend-sdk/-/hanko-frontend-sdk-0.0.1-alpha.tgz",
|
||||
"resolved": "https://registry.npmjs.org/@teamhanko/hanko-frontend-sdk/-/hanko-frontend-sdk-0.0.1-alpha.tgz",
|
||||
"integrity": "sha512-JmI8E0Rh63SJE4nQxeSsmPRhpQsm1BOdT6aqwPBqKAuVGf0AWVa0RSoQZ15VWuZnnueMokEVxuiQNenzRyUtLA==",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"@types/js-cookie": "^3.0.2"
|
||||
}
|
||||
@ -2995,9 +2992,8 @@
|
||||
},
|
||||
"node_modules/@types/js-cookie": {
|
||||
"version": "3.0.2",
|
||||
"resolved": "http://0.0.0.0:4873/@types%2fjs-cookie/-/js-cookie-3.0.2.tgz",
|
||||
"integrity": "sha512-6+0ekgfusHftJNYpihfkMu8BWdeHs9EOJuGcSofErjstGPfPGEu9yTu4t460lTzzAMl2cM5zngQJqPMHbbnvYA==",
|
||||
"license": "MIT"
|
||||
"resolved": "https://registry.npmjs.org/@types/js-cookie/-/js-cookie-3.0.2.tgz",
|
||||
"integrity": "sha512-6+0ekgfusHftJNYpihfkMu8BWdeHs9EOJuGcSofErjstGPfPGEu9yTu4t460lTzzAMl2cM5zngQJqPMHbbnvYA=="
|
||||
},
|
||||
"node_modules/@types/json-schema": {
|
||||
"version": "7.0.11",
|
||||
@ -3513,9 +3509,9 @@
|
||||
"dev": true
|
||||
},
|
||||
"node_modules/autoprefixer": {
|
||||
"version": "10.4.11",
|
||||
"resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.11.tgz",
|
||||
"integrity": "sha512-5lHp6DgRodxlBLSkzHOTcufWFflH1ewfy2hvFQyjrblBFlP/0Yh4O/Wrg4ow8WRlN3AAUFFLAQwX8hTptzqVHg==",
|
||||
"version": "10.4.12",
|
||||
"resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.12.tgz",
|
||||
"integrity": "sha512-WrCGV9/b97Pa+jtwf5UGaRjgQIg7OK3D06GnoYoZNcG1Xb8Gt3EfuKjlhh9i/VtT16g6PYjZ69jdJ2g8FxSC4Q==",
|
||||
"dev": true,
|
||||
"funding": [
|
||||
{
|
||||
@ -3528,8 +3524,8 @@
|
||||
}
|
||||
],
|
||||
"dependencies": {
|
||||
"browserslist": "^4.21.3",
|
||||
"caniuse-lite": "^1.0.30001399",
|
||||
"browserslist": "^4.21.4",
|
||||
"caniuse-lite": "^1.0.30001407",
|
||||
"fraction.js": "^4.2.0",
|
||||
"normalize-range": "^0.1.2",
|
||||
"picocolors": "^1.0.0",
|
||||
@ -3936,9 +3932,9 @@
|
||||
}
|
||||
},
|
||||
"node_modules/caniuse-lite": {
|
||||
"version": "1.0.30001402",
|
||||
"resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001402.tgz",
|
||||
"integrity": "sha512-Mx4MlhXO5NwuvXGgVb+hg65HZ+bhUYsz8QtDGDo2QmaJS2GBX47Xfi2koL86lc8K+l+htXeTEB/Aeqvezoo6Ew==",
|
||||
"version": "1.0.30001409",
|
||||
"resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001409.tgz",
|
||||
"integrity": "sha512-V0mnJ5dwarmhYv8/MzhJ//aW68UpvnQBXv8lJ2QUsvn2pHcmAuNtu8hQEDz37XnA1iE+lRR9CIfGWWpgJ5QedQ==",
|
||||
"dev": true,
|
||||
"funding": [
|
||||
{
|
||||
@ -4018,9 +4014,8 @@
|
||||
},
|
||||
"node_modules/classnames": {
|
||||
"version": "2.3.2",
|
||||
"resolved": "http://0.0.0.0:4873/classnames/-/classnames-2.3.2.tgz",
|
||||
"integrity": "sha512-CSbhY4cFEJRe6/GQzIk5qXZ4Jeg5pcsP7b5peFSDpffpe1cqjASH/n9UTjBwOp6XpMSTwQ8Za2K5V02ueA7Tmw==",
|
||||
"license": "MIT"
|
||||
"resolved": "https://registry.npmjs.org/classnames/-/classnames-2.3.2.tgz",
|
||||
"integrity": "sha512-CSbhY4cFEJRe6/GQzIk5qXZ4Jeg5pcsP7b5peFSDpffpe1cqjASH/n9UTjBwOp6XpMSTwQ8Za2K5V02ueA7Tmw=="
|
||||
},
|
||||
"node_modules/clean-stack": {
|
||||
"version": "2.2.0",
|
||||
@ -4378,12 +4373,12 @@
|
||||
}
|
||||
},
|
||||
"node_modules/core-js-compat": {
|
||||
"version": "3.25.1",
|
||||
"resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.25.1.tgz",
|
||||
"integrity": "sha512-pOHS7O0i8Qt4zlPW/eIFjwp+NrTPx+wTL0ctgI2fHn31sZOq89rDsmtc/A2vAX7r6shl+bmVI+678He46jgBlw==",
|
||||
"version": "3.25.2",
|
||||
"resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.25.2.tgz",
|
||||
"integrity": "sha512-TxfyECD4smdn3/CjWxczVtJqVLEEC2up7/82t7vC0AzNogr+4nQ8vyF7abxAuTXWvjTClSbvGhU0RgqA4ToQaQ==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"browserslist": "^4.21.3"
|
||||
"browserslist": "^4.21.4"
|
||||
},
|
||||
"funding": {
|
||||
"type": "opencollective",
|
||||
@ -4893,9 +4888,9 @@
|
||||
"dev": true
|
||||
},
|
||||
"node_modules/electron-to-chromium": {
|
||||
"version": "1.4.253",
|
||||
"resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.253.tgz",
|
||||
"integrity": "sha512-1pezJ2E1UyBTGbA7fUlHdPSXQw1k+82VhTFLG5G0AUqLGvsZqFzleOblceqegZzxYX4kC7hGEEdzIQI9RZ1Cuw==",
|
||||
"version": "1.4.257",
|
||||
"resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.257.tgz",
|
||||
"integrity": "sha512-C65sIwHqNnPC2ADMfse/jWTtmhZMII+x6ADI9gENzrOiI7BpxmfKFE84WkIEl5wEg+7+SfIkwChDlsd1Erju2A==",
|
||||
"dev": true
|
||||
},
|
||||
"node_modules/emoji-regex": {
|
||||
@ -7061,9 +7056,9 @@
|
||||
]
|
||||
},
|
||||
"node_modules/karma": {
|
||||
"version": "6.4.0",
|
||||
"resolved": "https://registry.npmjs.org/karma/-/karma-6.4.0.tgz",
|
||||
"integrity": "sha512-s8m7z0IF5g/bS5ONT7wsOavhW4i4aFkzD4u4wgzAQWT4HGUeWI3i21cK2Yz6jndMAeHETp5XuNsRoyGJZXVd4w==",
|
||||
"version": "6.4.1",
|
||||
"resolved": "https://registry.npmjs.org/karma/-/karma-6.4.1.tgz",
|
||||
"integrity": "sha512-Cj57NKOskK7wtFWSlMvZf459iX+kpYIPXmkNUzP2WAFcA7nhr/ALn5R7sw3w+1udFDcpMx/tuB8d5amgm3ijaA==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"@colors/colors": "1.5.0",
|
||||
@ -9531,9 +9526,8 @@
|
||||
},
|
||||
"node_modules/preact": {
|
||||
"version": "10.11.0",
|
||||
"resolved": "http://0.0.0.0:4873/preact/-/preact-10.11.0.tgz",
|
||||
"resolved": "https://registry.npmjs.org/preact/-/preact-10.11.0.tgz",
|
||||
"integrity": "sha512-Fk6+vB2kb6mSJfDgODq0YDhMfl0HNtK5+Uc9QqECO4nlyPAQwCI+BKyWO//idA7ikV7o+0Fm6LQmNuQi1wXI1w==",
|
||||
"license": "MIT",
|
||||
"funding": {
|
||||
"type": "opencollective",
|
||||
"url": "https://opencollective.com/preact"
|
||||
@ -9541,9 +9535,8 @@
|
||||
},
|
||||
"node_modules/preact-custom-element": {
|
||||
"version": "4.2.1",
|
||||
"resolved": "http://0.0.0.0:4873/preact-custom-element/-/preact-custom-element-4.2.1.tgz",
|
||||
"resolved": "https://registry.npmjs.org/preact-custom-element/-/preact-custom-element-4.2.1.tgz",
|
||||
"integrity": "sha512-/fiEEAyC+MXRlCBRmv/owoN5BLpO2nF/MF3YBHLtp4C2lNqlhV+a4he74A5DhfDoRmxDHm0sYVgQzWFEyzTDsw==",
|
||||
"license": "MIT",
|
||||
"peerDependencies": {
|
||||
"preact": "10.x"
|
||||
}
|
||||
@ -12155,9 +12148,9 @@
|
||||
}
|
||||
},
|
||||
"@angular/animations": {
|
||||
"version": "14.2.2",
|
||||
"resolved": "https://registry.npmjs.org/@angular/animations/-/animations-14.2.2.tgz",
|
||||
"integrity": "sha512-YPtwjfjGCtRlGIYyFK8JPq6kfR8Gz93kmkIF+fnUes42M5DAQvCccVRxi1OXU6dDLsFY9w7DvTl+HR/VocaFsg==",
|
||||
"version": "14.2.3",
|
||||
"resolved": "https://registry.npmjs.org/@angular/animations/-/animations-14.2.3.tgz",
|
||||
"integrity": "sha512-5psQgSia7pUUKYpFuwA+c+yWyM8afl9ZlOW2pxBU/2mTMLpxJEnVrUnKRsx3WSrOc9YqoLn6DOtDLXq2dbTxFQ==",
|
||||
"requires": {
|
||||
"tslib": "^2.3.0"
|
||||
}
|
||||
@ -12191,25 +12184,25 @@
|
||||
}
|
||||
},
|
||||
"@angular/common": {
|
||||
"version": "14.2.2",
|
||||
"resolved": "https://registry.npmjs.org/@angular/common/-/common-14.2.2.tgz",
|
||||
"integrity": "sha512-9h8MwFLvIJ5kB5L03cd3Cyl4ySKVzL/E/YYugfLvcAzYZ8Rief63gJnkcKNjoS1A5DTxHhOBQL7pLZpj+YxDOw==",
|
||||
"version": "14.2.3",
|
||||
"resolved": "https://registry.npmjs.org/@angular/common/-/common-14.2.3.tgz",
|
||||
"integrity": "sha512-DoBQk9uBWfGc+mZ9+lwpmZQy05zKgOeIfDM+2f7Wjrv1/X/V+YUJhjS66GIEBGOe23DoSeivLLCpVj8QqR058A==",
|
||||
"requires": {
|
||||
"tslib": "^2.3.0"
|
||||
}
|
||||
},
|
||||
"@angular/compiler": {
|
||||
"version": "14.2.2",
|
||||
"resolved": "https://registry.npmjs.org/@angular/compiler/-/compiler-14.2.2.tgz",
|
||||
"integrity": "sha512-r6673fINahrESOk1lJgXFDO3cH3gTDJJrj1++yYfrgRSqGMzASECy3XTevCjIvw9SycIkU/P+NiE/W/WAlP5vg==",
|
||||
"version": "14.2.3",
|
||||
"resolved": "https://registry.npmjs.org/@angular/compiler/-/compiler-14.2.3.tgz",
|
||||
"integrity": "sha512-DG2lqSqD5hx6Qk362jhjU9O+I2gOlsV8oUSTOkH4eFQ54PUad1D3hjqfcs3/lsvWggALCSjv9X8BOG8jb7n8vw==",
|
||||
"requires": {
|
||||
"tslib": "^2.3.0"
|
||||
}
|
||||
},
|
||||
"@angular/compiler-cli": {
|
||||
"version": "14.2.2",
|
||||
"resolved": "https://registry.npmjs.org/@angular/compiler-cli/-/compiler-cli-14.2.2.tgz",
|
||||
"integrity": "sha512-r3vOBUqInHwahloz4mmSrXk22q/4WGNoRR0hxR71tUhLiowYkAaWe72TdPYrDt0SYgZcffAomK7iQHrpJiwLuQ==",
|
||||
"version": "14.2.3",
|
||||
"resolved": "https://registry.npmjs.org/@angular/compiler-cli/-/compiler-cli-14.2.3.tgz",
|
||||
"integrity": "sha512-MPKZTD4j5EnvpHXLOj6VnXBv/LXfVLoLNc4nNShfuJFJjK9vOqXelb2GJt+2iL+9xKevGxDk7NIcl++fhV2lkQ==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"@babel/core": "^7.17.2",
|
||||
@ -12225,41 +12218,41 @@
|
||||
}
|
||||
},
|
||||
"@angular/core": {
|
||||
"version": "14.2.2",
|
||||
"resolved": "https://registry.npmjs.org/@angular/core/-/core-14.2.2.tgz",
|
||||
"integrity": "sha512-kG30b4RqjgWvaH9y4g95JRCzoROV+9/xgFH4hSRejFa/IcapMfvCmONJtJzwTjdsEUQAbiFohF/z9bx3QA/Yvw==",
|
||||
"version": "14.2.3",
|
||||
"resolved": "https://registry.npmjs.org/@angular/core/-/core-14.2.3.tgz",
|
||||
"integrity": "sha512-neW2n5Ts2purYEVh0Lf207otZbhYH4C4lwwu8ffxdRiXahQiTCbmyM3IQFrQZbLDb/ZeD2KhoCl6p0hlyg14cA==",
|
||||
"requires": {
|
||||
"tslib": "^2.3.0"
|
||||
}
|
||||
},
|
||||
"@angular/forms": {
|
||||
"version": "14.2.2",
|
||||
"resolved": "https://registry.npmjs.org/@angular/forms/-/forms-14.2.2.tgz",
|
||||
"integrity": "sha512-lq6PpLMNfs0KcIhkQrUVfKuP4hZSeUQyKOErvoLrPhDiakvOWYoQZKh6XHsbQRcuhWKHy6IITldz6sg8pWVrTw==",
|
||||
"version": "14.2.3",
|
||||
"resolved": "https://registry.npmjs.org/@angular/forms/-/forms-14.2.3.tgz",
|
||||
"integrity": "sha512-rL6adBHp51i3eDBecexrlrS+t+hlK6EnrEot/+Ec+DzVjJgw5VNJ4p2Ig72HPe0m+H0dcPkbQhlpb6cs677ISA==",
|
||||
"requires": {
|
||||
"tslib": "^2.3.0"
|
||||
}
|
||||
},
|
||||
"@angular/platform-browser": {
|
||||
"version": "14.2.2",
|
||||
"resolved": "https://registry.npmjs.org/@angular/platform-browser/-/platform-browser-14.2.2.tgz",
|
||||
"integrity": "sha512-1NrtOIvevoDDT6DU+Fsm5TsNN/XJhIV/UhfInmU/rz97RERl8etcOQRsxWnjGwZjk9rjt+0lBbW5oVDFKOJa+w==",
|
||||
"version": "14.2.3",
|
||||
"resolved": "https://registry.npmjs.org/@angular/platform-browser/-/platform-browser-14.2.3.tgz",
|
||||
"integrity": "sha512-Ky5ITBVmr+T5zHRowLRTJx1exXo99bUA6vosxG4B/YlXkjNfqVz4BETgPwnoIdN00Y9lxGQrMbjqSuzOjGQ7IQ==",
|
||||
"requires": {
|
||||
"tslib": "^2.3.0"
|
||||
}
|
||||
},
|
||||
"@angular/platform-browser-dynamic": {
|
||||
"version": "14.2.2",
|
||||
"resolved": "https://registry.npmjs.org/@angular/platform-browser-dynamic/-/platform-browser-dynamic-14.2.2.tgz",
|
||||
"integrity": "sha512-fehhiOwC4mn4sprjSiuGc0uITToiiKJJdtUNDsJyOJinKuy3GBwHpGckiEx4E85Z/PkPCMb8lYRJb/IciUV9+A==",
|
||||
"version": "14.2.3",
|
||||
"resolved": "https://registry.npmjs.org/@angular/platform-browser-dynamic/-/platform-browser-dynamic-14.2.3.tgz",
|
||||
"integrity": "sha512-yqSH9NrgkXN3aslbD9IHWnFClwwVlLTypaMfSGmhPL1LvgL/HL/A9rDYI2ZrybVoVmAZLsJ4uF2/GvK/pzUcNQ==",
|
||||
"requires": {
|
||||
"tslib": "^2.3.0"
|
||||
}
|
||||
},
|
||||
"@angular/router": {
|
||||
"version": "14.2.2",
|
||||
"resolved": "https://registry.npmjs.org/@angular/router/-/router-14.2.2.tgz",
|
||||
"integrity": "sha512-BRkXdAVK0rE/x6im91a/fdIcWhPILO6ZmwCVTEdvsRyI9arQSlXAnupPUeumdbSc6mG/FCXPcyJq/dU0Jl70Og==",
|
||||
"version": "14.2.3",
|
||||
"resolved": "https://registry.npmjs.org/@angular/router/-/router-14.2.3.tgz",
|
||||
"integrity": "sha512-ACSBYZCMWBaVHmclaFS5C+zSTTcMbY6iJFjI0tiTqicqdpzAOIt6s5Ius1wzN9L6ANijn1ZdGAzH6j45GV/XtQ==",
|
||||
"requires": {
|
||||
"tslib": "^2.3.0"
|
||||
}
|
||||
@ -13456,9 +13449,9 @@
|
||||
"dev": true
|
||||
},
|
||||
"@csstools/postcss-cascade-layers": {
|
||||
"version": "1.1.0",
|
||||
"resolved": "https://registry.npmjs.org/@csstools/postcss-cascade-layers/-/postcss-cascade-layers-1.1.0.tgz",
|
||||
"integrity": "sha512-XpA7g2KViA2ia23A5kZ/EQw+Sy308kLbvMlDPjFZmojwaJ9DYdJuwujFcDGK9v1QhHRmMEHbV2brVSQSLkN/7A==",
|
||||
"version": "1.1.1",
|
||||
"resolved": "https://registry.npmjs.org/@csstools/postcss-cascade-layers/-/postcss-cascade-layers-1.1.1.tgz",
|
||||
"integrity": "sha512-+KdYrpKC5TgomQr2DlZF4lDEpHcoxnj5IGddYYfBWJAKfj1JtuHUIqMa+E1pJJ+z3kvDViWMqyqPlG4Ja7amQA==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"@csstools/selector-specificity": "^2.0.2",
|
||||
@ -13593,7 +13586,7 @@
|
||||
},
|
||||
"@denysvuika/preact-translate": {
|
||||
"version": "0.3.0",
|
||||
"resolved": "http://0.0.0.0:4873/@denysvuika%2fpreact-translate/-/preact-translate-0.3.0.tgz",
|
||||
"resolved": "https://registry.npmjs.org/@denysvuika/preact-translate/-/preact-translate-0.3.0.tgz",
|
||||
"integrity": "sha512-0ijz/4WiOxUYjD17wVM0VLQwtNn8hdpUedhYtc4JcudM/CxEjdARaNc9u/ALBlM7OqNPP/4OBe3TFYvP2O92qA==",
|
||||
"requires": {}
|
||||
},
|
||||
@ -13863,7 +13856,7 @@
|
||||
},
|
||||
"@teamhanko/hanko-frontend-sdk": {
|
||||
"version": "0.0.1-alpha",
|
||||
"resolved": "http://0.0.0.0:4873/@teamhanko%2fhanko-frontend-sdk/-/hanko-frontend-sdk-0.0.1-alpha.tgz",
|
||||
"resolved": "https://registry.npmjs.org/@teamhanko/hanko-frontend-sdk/-/hanko-frontend-sdk-0.0.1-alpha.tgz",
|
||||
"integrity": "sha512-JmI8E0Rh63SJE4nQxeSsmPRhpQsm1BOdT6aqwPBqKAuVGf0AWVa0RSoQZ15VWuZnnueMokEVxuiQNenzRyUtLA==",
|
||||
"requires": {
|
||||
"@types/js-cookie": "^3.0.2"
|
||||
@ -13991,7 +13984,7 @@
|
||||
},
|
||||
"@types/js-cookie": {
|
||||
"version": "3.0.2",
|
||||
"resolved": "http://0.0.0.0:4873/@types%2fjs-cookie/-/js-cookie-3.0.2.tgz",
|
||||
"resolved": "https://registry.npmjs.org/@types/js-cookie/-/js-cookie-3.0.2.tgz",
|
||||
"integrity": "sha512-6+0ekgfusHftJNYpihfkMu8BWdeHs9EOJuGcSofErjstGPfPGEu9yTu4t460lTzzAMl2cM5zngQJqPMHbbnvYA=="
|
||||
},
|
||||
"@types/json-schema": {
|
||||
@ -14441,13 +14434,13 @@
|
||||
"dev": true
|
||||
},
|
||||
"autoprefixer": {
|
||||
"version": "10.4.11",
|
||||
"resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.11.tgz",
|
||||
"integrity": "sha512-5lHp6DgRodxlBLSkzHOTcufWFflH1ewfy2hvFQyjrblBFlP/0Yh4O/Wrg4ow8WRlN3AAUFFLAQwX8hTptzqVHg==",
|
||||
"version": "10.4.12",
|
||||
"resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.12.tgz",
|
||||
"integrity": "sha512-WrCGV9/b97Pa+jtwf5UGaRjgQIg7OK3D06GnoYoZNcG1Xb8Gt3EfuKjlhh9i/VtT16g6PYjZ69jdJ2g8FxSC4Q==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"browserslist": "^4.21.3",
|
||||
"caniuse-lite": "^1.0.30001399",
|
||||
"browserslist": "^4.21.4",
|
||||
"caniuse-lite": "^1.0.30001407",
|
||||
"fraction.js": "^4.2.0",
|
||||
"normalize-range": "^0.1.2",
|
||||
"picocolors": "^1.0.0",
|
||||
@ -14751,9 +14744,9 @@
|
||||
"dev": true
|
||||
},
|
||||
"caniuse-lite": {
|
||||
"version": "1.0.30001402",
|
||||
"resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001402.tgz",
|
||||
"integrity": "sha512-Mx4MlhXO5NwuvXGgVb+hg65HZ+bhUYsz8QtDGDo2QmaJS2GBX47Xfi2koL86lc8K+l+htXeTEB/Aeqvezoo6Ew==",
|
||||
"version": "1.0.30001409",
|
||||
"resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001409.tgz",
|
||||
"integrity": "sha512-V0mnJ5dwarmhYv8/MzhJ//aW68UpvnQBXv8lJ2QUsvn2pHcmAuNtu8hQEDz37XnA1iE+lRR9CIfGWWpgJ5QedQ==",
|
||||
"dev": true
|
||||
},
|
||||
"chalk": {
|
||||
@ -14803,7 +14796,7 @@
|
||||
},
|
||||
"classnames": {
|
||||
"version": "2.3.2",
|
||||
"resolved": "http://0.0.0.0:4873/classnames/-/classnames-2.3.2.tgz",
|
||||
"resolved": "https://registry.npmjs.org/classnames/-/classnames-2.3.2.tgz",
|
||||
"integrity": "sha512-CSbhY4cFEJRe6/GQzIk5qXZ4Jeg5pcsP7b5peFSDpffpe1cqjASH/n9UTjBwOp6XpMSTwQ8Za2K5V02ueA7Tmw=="
|
||||
},
|
||||
"clean-stack": {
|
||||
@ -15085,12 +15078,12 @@
|
||||
}
|
||||
},
|
||||
"core-js-compat": {
|
||||
"version": "3.25.1",
|
||||
"resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.25.1.tgz",
|
||||
"integrity": "sha512-pOHS7O0i8Qt4zlPW/eIFjwp+NrTPx+wTL0ctgI2fHn31sZOq89rDsmtc/A2vAX7r6shl+bmVI+678He46jgBlw==",
|
||||
"version": "3.25.2",
|
||||
"resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.25.2.tgz",
|
||||
"integrity": "sha512-TxfyECD4smdn3/CjWxczVtJqVLEEC2up7/82t7vC0AzNogr+4nQ8vyF7abxAuTXWvjTClSbvGhU0RgqA4ToQaQ==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"browserslist": "^4.21.3"
|
||||
"browserslist": "^4.21.4"
|
||||
}
|
||||
},
|
||||
"core-util-is": {
|
||||
@ -15452,9 +15445,9 @@
|
||||
"dev": true
|
||||
},
|
||||
"electron-to-chromium": {
|
||||
"version": "1.4.253",
|
||||
"resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.253.tgz",
|
||||
"integrity": "sha512-1pezJ2E1UyBTGbA7fUlHdPSXQw1k+82VhTFLG5G0AUqLGvsZqFzleOblceqegZzxYX4kC7hGEEdzIQI9RZ1Cuw==",
|
||||
"version": "1.4.257",
|
||||
"resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.257.tgz",
|
||||
"integrity": "sha512-C65sIwHqNnPC2ADMfse/jWTtmhZMII+x6ADI9gENzrOiI7BpxmfKFE84WkIEl5wEg+7+SfIkwChDlsd1Erju2A==",
|
||||
"dev": true
|
||||
},
|
||||
"emoji-regex": {
|
||||
@ -17000,9 +16993,9 @@
|
||||
"dev": true
|
||||
},
|
||||
"karma": {
|
||||
"version": "6.4.0",
|
||||
"resolved": "https://registry.npmjs.org/karma/-/karma-6.4.0.tgz",
|
||||
"integrity": "sha512-s8m7z0IF5g/bS5ONT7wsOavhW4i4aFkzD4u4wgzAQWT4HGUeWI3i21cK2Yz6jndMAeHETp5XuNsRoyGJZXVd4w==",
|
||||
"version": "6.4.1",
|
||||
"resolved": "https://registry.npmjs.org/karma/-/karma-6.4.1.tgz",
|
||||
"integrity": "sha512-Cj57NKOskK7wtFWSlMvZf459iX+kpYIPXmkNUzP2WAFcA7nhr/ALn5R7sw3w+1udFDcpMx/tuB8d5amgm3ijaA==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"@colors/colors": "1.5.0",
|
||||
@ -18733,12 +18726,12 @@
|
||||
},
|
||||
"preact": {
|
||||
"version": "10.11.0",
|
||||
"resolved": "http://0.0.0.0:4873/preact/-/preact-10.11.0.tgz",
|
||||
"resolved": "https://registry.npmjs.org/preact/-/preact-10.11.0.tgz",
|
||||
"integrity": "sha512-Fk6+vB2kb6mSJfDgODq0YDhMfl0HNtK5+Uc9QqECO4nlyPAQwCI+BKyWO//idA7ikV7o+0Fm6LQmNuQi1wXI1w=="
|
||||
},
|
||||
"preact-custom-element": {
|
||||
"version": "4.2.1",
|
||||
"resolved": "http://0.0.0.0:4873/preact-custom-element/-/preact-custom-element-4.2.1.tgz",
|
||||
"resolved": "https://registry.npmjs.org/preact-custom-element/-/preact-custom-element-4.2.1.tgz",
|
||||
"integrity": "sha512-/fiEEAyC+MXRlCBRmv/owoN5BLpO2nF/MF3YBHLtp4C2lNqlhV+a4he74A5DhfDoRmxDHm0sYVgQzWFEyzTDsw==",
|
||||
"requires": {}
|
||||
},
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
"name": "example-angular",
|
||||
"private": true,
|
||||
"scripts": {
|
||||
"start": "ng serve --port 3000"
|
||||
"start": "ng serve --port 8888"
|
||||
},
|
||||
"dependencies": {
|
||||
"@angular/animations": "^14.2.0",
|
||||
|
||||
20
examples/express/Dockerfile
Normal file
20
examples/express/Dockerfile
Normal file
@ -0,0 +1,20 @@
|
||||
# pull official base image
|
||||
FROM node:16-alpine
|
||||
|
||||
# set working directory
|
||||
WORKDIR /app
|
||||
|
||||
# add `/app/node_modules/.bin` to $PATH
|
||||
ENV PATH /app/node_modules/.bin:$PATH
|
||||
|
||||
# install app dependencies
|
||||
COPY package.json ./
|
||||
COPY package-lock.json ./
|
||||
RUN npm install --silent
|
||||
RUN npm install react-scripts@3.4.1 -g --silent
|
||||
|
||||
# add app
|
||||
COPY . ./
|
||||
|
||||
# start app
|
||||
CMD ["npm", "start"]
|
||||
@ -15,4 +15,4 @@ In the `.env` file set up the correct environment variables:
|
||||
### Run the server
|
||||
|
||||
Run `npm install` to install dependencies, then run `npm run start` for a development server.
|
||||
Navigate to `http://localhost:3000/`. The application will automatically reload if you change any of the source files.
|
||||
Navigate to `http://localhost:8888/`. The application will automatically reload if you change any of the source files.
|
||||
|
||||
@ -11,7 +11,7 @@ const app = express();
|
||||
const jwksHost = process.env.HANKO_API_URL;
|
||||
|
||||
const corsOptions = {
|
||||
origin: "http://localhost:3000",
|
||||
origin: "http://localhost:8888",
|
||||
credentials: true,
|
||||
methods: ["GET", "POST", "PATCH", "DELETE", "OPTIONS"],
|
||||
};
|
||||
@ -26,7 +26,7 @@ app.use(
|
||||
secret: jwksRsa.expressJwtSecret({
|
||||
cache: true,
|
||||
rateLimit: true,
|
||||
jwksRequestsPerMinute: 2,
|
||||
jwksRequestsPerMinute: 100,
|
||||
jwksUri: `${jwksHost}/.well-known/jwks.json`,
|
||||
}),
|
||||
algorithms: ["RS256"],
|
||||
|
||||
20
examples/nextjs/Dockerfile
Normal file
20
examples/nextjs/Dockerfile
Normal file
@ -0,0 +1,20 @@
|
||||
# pull official base image
|
||||
FROM node:16-alpine
|
||||
|
||||
# set working directory
|
||||
WORKDIR /app
|
||||
|
||||
# add `/app/node_modules/.bin` to $PATH
|
||||
ENV PATH /app/node_modules/.bin:$PATH
|
||||
|
||||
# install app dependencies
|
||||
COPY package.json ./
|
||||
COPY package-lock.json ./
|
||||
RUN npm install
|
||||
RUN npm install react-scripts@3.4.1 -g --silent
|
||||
|
||||
# add app
|
||||
COPY . ./
|
||||
|
||||
# start app
|
||||
CMD ["npm", "start"]
|
||||
@ -18,4 +18,4 @@ In the `.env` file set up the correct environment variables:
|
||||
|
||||
### Run development server
|
||||
|
||||
Run `npm install` to install dependencies, then run `npm run start` for a development server. Navigate to `http://localhost:3000/`. The application will automatically reload if you change any of the source files.
|
||||
Run `npm install` to install dependencies, then run `npm run start` for a development server. Navigate to `http://localhost:8888/`. The application will automatically reload if you change any of the source files.
|
||||
|
||||
767
examples/nextjs/package-lock.json
generated
767
examples/nextjs/package-lock.json
generated
File diff suppressed because it is too large
Load Diff
@ -2,7 +2,7 @@
|
||||
"name": "example-nextjs",
|
||||
"private": true,
|
||||
"scripts": {
|
||||
"start": "next dev"
|
||||
"start": "next dev -p 8888"
|
||||
},
|
||||
"dependencies": {
|
||||
"@teamhanko/hanko-elements": "^0.0.7-alpha",
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
20
examples/react/Dockerfile
Normal file
20
examples/react/Dockerfile
Normal file
@ -0,0 +1,20 @@
|
||||
# pull official base image
|
||||
FROM node:16-alpine
|
||||
|
||||
# set working directory
|
||||
WORKDIR /app
|
||||
|
||||
# add `/app/node_modules/.bin` to $PATH
|
||||
ENV PATH /app/node_modules/.bin:$PATH
|
||||
|
||||
# install app dependencies
|
||||
COPY package.json ./
|
||||
COPY package-lock.json ./
|
||||
RUN npm install
|
||||
RUN npm install react-scripts@3.4.1 -g --silent
|
||||
|
||||
# add app
|
||||
COPY . ./
|
||||
|
||||
# start app
|
||||
CMD ["npm", "start"]
|
||||
1091
examples/react/package-lock.json
generated
1091
examples/react/package-lock.json
generated
File diff suppressed because it is too large
Load Diff
@ -12,7 +12,7 @@
|
||||
"typescript": "^4.8.3"
|
||||
},
|
||||
"scripts": {
|
||||
"start": "react-scripts start"
|
||||
"start": "PORT=8888 react-scripts start"
|
||||
},
|
||||
"eslintConfig": {
|
||||
"extends": [
|
||||
|
||||
20
examples/vue/Dockerfile
Normal file
20
examples/vue/Dockerfile
Normal file
@ -0,0 +1,20 @@
|
||||
# pull official base image
|
||||
FROM node:16-alpine
|
||||
|
||||
# set working directory
|
||||
WORKDIR /app
|
||||
|
||||
# add `/app/node_modules/.bin` to $PATH
|
||||
ENV PATH /app/node_modules/.bin:$PATH
|
||||
|
||||
# install app dependencies
|
||||
COPY package.json ./
|
||||
COPY package-lock.json ./
|
||||
RUN npm install
|
||||
RUN npm install react-scripts@3.4.1 -g --silent
|
||||
|
||||
# add app
|
||||
COPY . ./
|
||||
|
||||
# start app
|
||||
CMD ["npm", "start"]
|
||||
@ -18,4 +18,4 @@ In the `.env` file set up the correct environment variables:
|
||||
|
||||
### Run development server
|
||||
|
||||
Run `npm install` to install dependencies, then run `npm run start` for a development server. Navigate to `http://localhost:3000/`. The application will automatically reload if you change any of the source files.
|
||||
Run `npm install` to install dependencies, then run `npm run start` for a development server. Navigate to `http://localhost:8888/`. The application will automatically reload if you change any of the source files.
|
||||
|
||||
664
examples/vue/package-lock.json
generated
664
examples/vue/package-lock.json
generated
File diff suppressed because it is too large
Load Diff
@ -1,7 +1,7 @@
|
||||
{
|
||||
"name": "vue",
|
||||
"scripts": {
|
||||
"start": "vite --port 3000"
|
||||
"start": "vite --port 8888"
|
||||
},
|
||||
"dependencies": {
|
||||
"@teamhanko/hanko-elements": "^0.0.7-alpha",
|
||||
|
||||
Reference in New Issue
Block a user