mirror of
https://gitlab.com/openstapps/openstapps.git
synced 2026-01-11 20:22:51 +00:00
Compare commits
19 Commits
@openstapp
...
main
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
86004881b0 | ||
|
|
3d19fc87e3 | ||
|
|
80bcdad851 | ||
|
|
afd1c8d87e | ||
|
|
6941f83b8f | ||
|
|
3a274a3a7f | ||
|
|
5a48342a8d | ||
|
|
6b06de4019 | ||
|
|
c5c9bcf433 | ||
|
|
b40ba7ad63 | ||
|
|
362f6adf07 | ||
|
|
bbd6b0f874 | ||
|
|
b1a9ba44d0 | ||
|
|
bee38d4a59 | ||
|
|
a5c5c31d09 | ||
|
|
c8e290200f | ||
|
|
ef4e1f8ded | ||
|
|
5759a1cbb1 | ||
| b8ac30b9d0 |
8
.changeset/green-hotels-itch.md
Normal file
8
.changeset/green-hotels-itch.md
Normal file
@@ -0,0 +1,8 @@
|
|||||||
|
---
|
||||||
|
"@openstapps/projectmanagement": patch
|
||||||
|
"@openstapps/core-tools": patch
|
||||||
|
"@openstapps/easy-ast": patch
|
||||||
|
"@openstapps/app": patch
|
||||||
|
---
|
||||||
|
|
||||||
|
Updated node-glob dependency
|
||||||
3
.gitignore
vendored
3
.gitignore
vendored
@@ -98,7 +98,8 @@ typings/
|
|||||||
|
|
||||||
# ignore ide files
|
# ignore ide files
|
||||||
.idea
|
.idea
|
||||||
.vscode
|
.vscode?*
|
||||||
|
!.vscode/launch.json
|
||||||
|
|
||||||
# ignore lib
|
# ignore lib
|
||||||
lib
|
lib
|
||||||
|
|||||||
@@ -21,13 +21,7 @@ include:
|
|||||||
- local: /.gitlab/publishing.gitlab-ci.yml
|
- local: /.gitlab/publishing.gitlab-ci.yml
|
||||||
|
|
||||||
variables:
|
variables:
|
||||||
TURBO_CACHE_BYPASS:
|
TURBO_CACHE_BYPASS: "--force --no-cache"
|
||||||
value: ''
|
|
||||||
options:
|
|
||||||
- '--force'
|
|
||||||
- '--no-cache'
|
|
||||||
- ''
|
|
||||||
description: Bypass turbo cache
|
|
||||||
|
|
||||||
default:
|
default:
|
||||||
image: registry.gitlab.com/openstapps/openstapps/node-builder
|
image: registry.gitlab.com/openstapps/openstapps/node-builder
|
||||||
@@ -36,10 +30,7 @@ default:
|
|||||||
interruptible: true
|
interruptible: true
|
||||||
before_script:
|
before_script:
|
||||||
- corepack enable
|
- corepack enable
|
||||||
- corepack prepare pnpm@latest-8 --activate
|
- corepack prepare pnpm@latest-10 --activate
|
||||||
- echo TURBO_API=$TURBO_API >> .env.local
|
|
||||||
- echo TURBO_TOKEN=$TURBO_TOKEN >> .env.local
|
|
||||||
- echo TURBO_TEAM=$TURBO_TEAM >> .env.local
|
|
||||||
- pnpm config set store-dir .pnpm-store
|
- pnpm config set store-dir .pnpm-store
|
||||||
cache: &pnpm_cache
|
cache: &pnpm_cache
|
||||||
key:
|
key:
|
||||||
@@ -63,13 +54,13 @@ build:
|
|||||||
# - pnpm i --prefer-offline
|
# - pnpm i --prefer-offline
|
||||||
# - pnpm build:full:skip || pnpm i -r --prefer-offline
|
# - pnpm build:full:skip || pnpm i -r --prefer-offline
|
||||||
- pnpm install
|
- pnpm install
|
||||||
# TODO: whats the benifit for CI? something doesn't work with git here...
|
# TODO: whats the benefit for CI? something doesn't work with git here...
|
||||||
# "🦋 error Error: Failed to find where HEAD diverged from master. Does master exist?"
|
# "🦋 error Error: Failed to find where HEAD diverged from master. Does master exist?"
|
||||||
# - pnpm changeset:status
|
# - pnpm changeset:status
|
||||||
- pnpm build:full $TURBO_CACHE_BYPASS
|
- pnpm build:full $TURBO_CACHE_BYPASS
|
||||||
- .gitlab/ci/enableGitlabReviewToolbar.sh frontend/app/www/index.html "$CI_PROJECT_ID" "$CI_OPEN_MERGE_REQUESTS"
|
- .gitlab/ci/enableGitlabReviewToolbar.sh frontend/app/www/browser/index.html "$CI_PROJECT_ID" "$CI_OPEN_MERGE_REQUESTS"
|
||||||
- cp frontend/app/www/index.html frontend/app/www/200.html
|
- cp frontend/app/www/browser/index.html frontend/app/www/browser/200.html
|
||||||
- pnpm dlx surge -p frontend/app/www -d https://$CI_PROJECT_NAME-$DEPLOY_ID.surge.sh/
|
- pnpm dlx surge -p frontend/app/www/browser -d https://$CI_PROJECT_NAME-$DEPLOY_ID.surge.sh/
|
||||||
cache:
|
cache:
|
||||||
<<: *pnpm_cache
|
<<: *pnpm_cache
|
||||||
policy: pull-push
|
policy: pull-push
|
||||||
@@ -105,13 +96,7 @@ unit:
|
|||||||
stage: test
|
stage: test
|
||||||
needs: ['build']
|
needs: ['build']
|
||||||
script:
|
script:
|
||||||
# - pnpm config set recursive-install false
|
|
||||||
# - pnpm i --prefer-offline
|
|
||||||
# - pnpm test:skip || pnpm i -r --prefer-offline
|
|
||||||
- pnpm install
|
- pnpm install
|
||||||
- cd node_modules/.pnpm/re2*/node_modules/re2
|
|
||||||
- npm run install
|
|
||||||
- cd $CI_PROJECT_DIR
|
|
||||||
- pnpm test $TURBO_CACHE_BYPASS
|
- pnpm test $TURBO_CACHE_BYPASS
|
||||||
coverage: '/Statements[^:]*\:[^:]*\s+([\d\.]+)%/'
|
coverage: '/Statements[^:]*\:[^:]*\s+([\d\.]+)%/'
|
||||||
artifacts:
|
artifacts:
|
||||||
|
|||||||
@@ -27,7 +27,7 @@ publish image:
|
|||||||
- tags
|
- tags
|
||||||
needs: ['deploy']
|
needs: ['deploy']
|
||||||
image:
|
image:
|
||||||
name: gcr.io/kaniko-project/executor:v1.12.1-debug
|
name: gcr.io/kaniko-project/executor:v1.24.0-debug
|
||||||
entrypoint: [""]
|
entrypoint: [""]
|
||||||
script:
|
script:
|
||||||
- >
|
- >
|
||||||
|
|||||||
@@ -27,6 +27,7 @@ const config = {
|
|||||||
'bin',
|
'bin',
|
||||||
'files',
|
'files',
|
||||||
'engines',
|
'engines',
|
||||||
|
'packageManager',
|
||||||
'scripts',
|
'scripts',
|
||||||
'dependencies',
|
'dependencies',
|
||||||
'devDependencies',
|
'devDependencies',
|
||||||
|
|||||||
@@ -1,3 +1,3 @@
|
|||||||
nodejs 18.19.1
|
nodejs 22.16.0
|
||||||
pnpm 8.15.4
|
pnpm 10.12.3
|
||||||
python 3.11.5
|
python 3.11.5
|
||||||
|
|||||||
23
.vscode/launch.json
vendored
Normal file
23
.vscode/launch.json
vendored
Normal file
@@ -0,0 +1,23 @@
|
|||||||
|
{
|
||||||
|
// Use IntelliSense to learn about possible attributes.
|
||||||
|
// Hover to view descriptions of existing attributes.
|
||||||
|
// For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
|
||||||
|
"version": "0.2.0",
|
||||||
|
"configurations": [
|
||||||
|
{
|
||||||
|
"name": "Launch Chrome",
|
||||||
|
"request": "launch",
|
||||||
|
"type": "chrome",
|
||||||
|
"url": "http://localhost:8100",
|
||||||
|
"webRoot": "${workspaceFolder}/frontend/app/www"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type":"node",
|
||||||
|
"request": "launch",
|
||||||
|
"name": "Run mocha for nodejs workspace",
|
||||||
|
"runtimeExecutable": "${fileDirname}/../node_modules/.bin/c8",
|
||||||
|
"cwd": "${fileDirname}/../",
|
||||||
|
"runtimeArgs": ["--config", "${workspaceFolder}/.c8rc.json", "${fileDirname}/../node_modules/.bin/mocha", "--exit", "--reporter", "spec"]
|
||||||
|
},
|
||||||
|
]
|
||||||
|
}
|
||||||
@@ -9,8 +9,8 @@ integration:
|
|||||||
- name: registry.gitlab.com/openstapps/openstapps/database:latest
|
- name: registry.gitlab.com/openstapps/openstapps/database:latest
|
||||||
alias: elasticsearch
|
alias: elasticsearch
|
||||||
script:
|
script:
|
||||||
- pnpm --filter=@openstapps/backend install
|
- pnpm install
|
||||||
- pnpm test:integration:backend
|
- pnpm test:integration:backend --force --no-cache
|
||||||
artifacts:
|
artifacts:
|
||||||
when: on_failure
|
when: on_failure
|
||||||
paths:
|
paths:
|
||||||
|
|||||||
@@ -1,5 +1,44 @@
|
|||||||
# @openstapps/backend
|
# @openstapps/backend
|
||||||
|
|
||||||
|
## 4.0.3
|
||||||
|
|
||||||
|
### Patch Changes
|
||||||
|
|
||||||
|
- 3a274a3a: Upgrade to Capacitor 7 and Anuglar 18
|
||||||
|
- @openstapps/core@4.0.2
|
||||||
|
- @openstapps/core-tools@4.0.2
|
||||||
|
- @openstapps/logger@4.0.2
|
||||||
|
|
||||||
|
## 4.0.2
|
||||||
|
|
||||||
|
### Patch Changes
|
||||||
|
|
||||||
|
- 6b06de40: Updated nodemailer dependency
|
||||||
|
- Updated dependencies [6b06de40]
|
||||||
|
- @openstapps/logger@4.0.2
|
||||||
|
- @openstapps/core@4.0.2
|
||||||
|
- @openstapps/core-tools@4.0.2
|
||||||
|
|
||||||
|
## 4.0.1
|
||||||
|
|
||||||
|
### Patch Changes
|
||||||
|
|
||||||
|
- b40ba7ad: Updated Elasticsearch dependency
|
||||||
|
- @openstapps/core@4.0.0
|
||||||
|
|
||||||
|
## 4.0.0
|
||||||
|
|
||||||
|
### Major Changes
|
||||||
|
|
||||||
|
- c8e29020: Update to Node 22
|
||||||
|
|
||||||
|
### Patch Changes
|
||||||
|
|
||||||
|
- Updated dependencies [c8e29020]
|
||||||
|
- @openstapps/core@4.0.0
|
||||||
|
- @openstapps/core-tools@4.0.0
|
||||||
|
- @openstapps/logger@4.0.0
|
||||||
|
|
||||||
## 3.3.2
|
## 3.3.2
|
||||||
|
|
||||||
### Patch Changes
|
### Patch Changes
|
||||||
|
|||||||
@@ -112,7 +112,7 @@ const menus = [
|
|||||||
icon: 'school',
|
icon: 'school',
|
||||||
items: [
|
items: [
|
||||||
{
|
{
|
||||||
icon: 'grade',
|
icon: 'star',
|
||||||
route: '/favorites',
|
route: '/favorites',
|
||||||
title: 'favorites',
|
title: 'favorites',
|
||||||
translations: {
|
translations: {
|
||||||
|
|||||||
@@ -5,8 +5,8 @@ const userGroupSetting = {
|
|||||||
categories: ['profile'],
|
categories: ['profile'],
|
||||||
defaultValue: 'students',
|
defaultValue: 'students',
|
||||||
description:
|
description:
|
||||||
'The user group the app is going to be used.' +
|
'The user group the app is going to use primarily.' +
|
||||||
'This settings for example is getting used for the predefined price category of mensa meals.',
|
' This settings for example is getting used for the predefined price category of mensa meals.',
|
||||||
inputType: SCSettingInputType.SingleChoice,
|
inputType: SCSettingInputType.SingleChoice,
|
||||||
name: 'group',
|
name: 'group',
|
||||||
order: 1,
|
order: 1,
|
||||||
@@ -25,7 +25,7 @@ const userGroupSetting = {
|
|||||||
},
|
},
|
||||||
en: {
|
en: {
|
||||||
description:
|
description:
|
||||||
'The user group the app is going to be used.' +
|
'The user group the app is going to use primarily.' +
|
||||||
' This settings for example is getting used for the predefined price category of mensa meals.',
|
' This settings for example is getting used for the predefined price category of mensa meals.',
|
||||||
name: 'Group',
|
name: 'Group',
|
||||||
values: ['students', 'employees', 'guests'],
|
values: ['students', 'employees', 'guests'],
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
{
|
{
|
||||||
"name": "@openstapps/backend",
|
"name": "@openstapps/backend",
|
||||||
"description": "A reference implementation for a StApps backend",
|
"description": "A reference implementation for a StApps backend",
|
||||||
"version": "3.3.2",
|
"version": "4.0.3",
|
||||||
"private": true,
|
"private": true,
|
||||||
"type": "module",
|
"type": "module",
|
||||||
"license": "AGPL-3.0-only",
|
"license": "AGPL-3.0-only",
|
||||||
@@ -43,33 +43,33 @@
|
|||||||
"test:unit": "cross-env NODE_CONFIG_ENV=elasticsearch ALLOW_NO_TRANSPORT=true STAPPS_LOG_LEVEL=0 mocha --exit"
|
"test:unit": "cross-env NODE_CONFIG_ENV=elasticsearch ALLOW_NO_TRANSPORT=true STAPPS_LOG_LEVEL=0 mocha --exit"
|
||||||
},
|
},
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@elastic/elasticsearch": "8.4.0",
|
"@elastic/elasticsearch": "8.14.1",
|
||||||
"@openstapps/core": "workspace:*",
|
"@openstapps/core": "workspace:*",
|
||||||
"@openstapps/core-tools": "workspace:*",
|
"@openstapps/core-tools": "workspace:*",
|
||||||
"@openstapps/logger": "workspace:*",
|
"@openstapps/logger": "workspace:*",
|
||||||
"@types/body-parser": "1.19.2",
|
"@types/body-parser": "1.19.6",
|
||||||
"@types/cors": "2.8.13",
|
"@types/cors": "2.8.13",
|
||||||
"@types/express": "4.17.17",
|
"@types/express": "4.17.17",
|
||||||
"@types/geojson": "1.0.6",
|
"@types/geojson": "1.0.6",
|
||||||
"@types/node": "18.15.3",
|
"@types/node": "22.15.31",
|
||||||
"@types/node-cron": "3.0.7",
|
"@types/node-cron": "3.0.7",
|
||||||
"@types/nodemailer": "6.4.7",
|
"@types/nodemailer": "6.4.7",
|
||||||
"@types/promise-queue": "2.2.0",
|
"@types/promise-queue": "2.2.0",
|
||||||
"@types/uuid": "8.3.4",
|
"@types/uuid": "8.3.4",
|
||||||
"body-parser": "1.20.2",
|
"body-parser": "1.20.3",
|
||||||
"cors": "2.8.5",
|
"cors": "2.8.5",
|
||||||
"cosmiconfig": "8.1.3",
|
"cosmiconfig": "8.1.3",
|
||||||
"deepmerge": "4.3.1",
|
"deepmerge": "4.3.1",
|
||||||
"express": "4.18.2",
|
"express": "4.21.2",
|
||||||
"express-prom-bundle": "6.6.0",
|
"express-prom-bundle": "6.6.0",
|
||||||
"express-promise-router": "4.1.1",
|
"express-promise-router": "4.1.1",
|
||||||
"got": "12.6.0",
|
"got": "12.6.0",
|
||||||
"moment": "2.30.1",
|
"moment": "2.30.1",
|
||||||
"morgan": "1.10.0",
|
"morgan": "1.10.1",
|
||||||
"nock": "13.3.1",
|
"nock": "13.3.1",
|
||||||
"node-cache": "5.1.2",
|
"node-cache": "5.1.2",
|
||||||
"node-cron": "3.0.2",
|
"node-cron": "3.0.2",
|
||||||
"nodemailer": "6.9.1",
|
"nodemailer": "6.9.9",
|
||||||
"prom-client": "14.1.1",
|
"prom-client": "14.1.1",
|
||||||
"promise-queue": "2.2.5",
|
"promise-queue": "2.2.5",
|
||||||
"uuid": "8.3.2"
|
"uuid": "8.3.2"
|
||||||
@@ -80,26 +80,26 @@
|
|||||||
"@openstapps/prettier-config": "workspace:*",
|
"@openstapps/prettier-config": "workspace:*",
|
||||||
"@openstapps/tsconfig": "workspace:*",
|
"@openstapps/tsconfig": "workspace:*",
|
||||||
"@testdeck/mocha": "0.3.3",
|
"@testdeck/mocha": "0.3.3",
|
||||||
"@types/chai": "4.3.5",
|
"@types/chai": "4.3.20",
|
||||||
"@types/chai-as-promised": "7.1.5",
|
"@types/chai-as-promised": "7.1.8",
|
||||||
"@types/mocha": "10.0.1",
|
"@types/mocha": "10.0.10",
|
||||||
"@types/morgan": "1.9.4",
|
"@types/morgan": "1.9.10",
|
||||||
"@types/sinon": "10.0.14",
|
"@types/sinon": "10.0.14",
|
||||||
"@types/sinon-express-mock": "1.3.9",
|
"@types/sinon-express-mock": "1.3.9",
|
||||||
"@types/supertest": "2.0.12",
|
"@types/supertest": "2.0.12",
|
||||||
"c8": "7.14.0",
|
"c8": "10.1.3",
|
||||||
"chai": "4.3.7",
|
"chai": "4.5.0",
|
||||||
"chai-as-promised": "7.1.1",
|
"chai-as-promised": "7.1.2",
|
||||||
"cross-env": "7.0.3",
|
"cross-env": "7.0.3",
|
||||||
"get-port": "5.1.1",
|
"get-port": "5.1.1",
|
||||||
"mocha": "10.2.0",
|
"mocha": "10.8.2",
|
||||||
"mocha-junit-reporter": "2.2.0",
|
"mocha-junit-reporter": "2.2.0",
|
||||||
"mocked-env": "1.3.5",
|
"mocked-env": "1.3.5",
|
||||||
"sinon": "15.0.4",
|
"sinon": "15.0.4",
|
||||||
"sinon-express-mock": "2.2.1",
|
"sinon-express-mock": "2.2.1",
|
||||||
"supertest": "6.3.3",
|
"supertest": "6.3.3",
|
||||||
"ts-node": "10.9.2",
|
"ts-node": "10.9.2",
|
||||||
"tsup": "6.7.0",
|
"tsup": "8.5.0",
|
||||||
"typescript": "5.4.2"
|
"typescript": "5.4.2"
|
||||||
},
|
},
|
||||||
"tsup": {
|
"tsup": {
|
||||||
|
|||||||
@@ -25,7 +25,7 @@ import {expect} from 'chai';
|
|||||||
import {bulk, DEFAULT_TEST_TIMEOUT} from '../common.js';
|
import {bulk, DEFAULT_TEST_TIMEOUT} from '../common.js';
|
||||||
import {testApp} from '../tests-setup.js';
|
import {testApp} from '../tests-setup.js';
|
||||||
import {v4} from 'uuid';
|
import {v4} from 'uuid';
|
||||||
import bookFile from '@openstapps/core/test/resources/indexable/Book.2.json' assert {type: 'json'};
|
import bookFile from '@openstapps/core/test/resources/indexable/Book.2.json' with {type: 'json'};
|
||||||
|
|
||||||
const book = bookFile.instance as SCBook;
|
const book = bookFile.instance as SCBook;
|
||||||
|
|
||||||
|
|||||||
@@ -30,7 +30,7 @@ import chaiAsPromised from 'chai-as-promised';
|
|||||||
import {DEFAULT_TEST_TIMEOUT} from '../common.js';
|
import {DEFAULT_TEST_TIMEOUT} from '../common.js';
|
||||||
import {testApp} from '../tests-setup.js';
|
import {testApp} from '../tests-setup.js';
|
||||||
import {backendConfig} from '../../src/config.js';
|
import {backendConfig} from '../../src/config.js';
|
||||||
import registerRequest from '@openstapps/core/test/resources/PluginRegisterRequest.1.json' assert {type: 'json'};
|
import registerRequest from '@openstapps/core/test/resources/PluginRegisterRequest.1.json' with {type: 'json'};
|
||||||
|
|
||||||
// for using promises in expectations (to.eventually.be...)
|
// for using promises in expectations (to.eventually.be...)
|
||||||
use(chaiAsPromised);
|
use(chaiAsPromised);
|
||||||
|
|||||||
@@ -18,7 +18,7 @@ import chaiAsPromised from 'chai-as-promised';
|
|||||||
import {bulkStorageMock, DEFAULT_TEST_TIMEOUT} from '../common.js';
|
import {bulkStorageMock, DEFAULT_TEST_TIMEOUT} from '../common.js';
|
||||||
import {expect, use} from 'chai';
|
import {expect, use} from 'chai';
|
||||||
import {testApp} from '../tests-setup.js';
|
import {testApp} from '../tests-setup.js';
|
||||||
import bookFile from '@openstapps/core/test/resources/indexable/Book.1.json' assert {type: 'json'};
|
import bookFile from '@openstapps/core/test/resources/indexable/Book.1.json' with {type: 'json'};
|
||||||
|
|
||||||
use(chaiAsPromised);
|
use(chaiAsPromised);
|
||||||
|
|
||||||
|
|||||||
@@ -49,8 +49,8 @@ import {
|
|||||||
} from '../../../src/storage/elasticsearch/util/index.js';
|
} from '../../../src/storage/elasticsearch/util/index.js';
|
||||||
import cron from 'node-cron';
|
import cron from 'node-cron';
|
||||||
import {query} from './query.js';
|
import {query} from './query.js';
|
||||||
import messageFile from '@openstapps/core/test/resources/indexable/Message.1.json' assert {type: 'json'};
|
import messageFile from '@openstapps/core/test/resources/indexable/Message.1.json' with {type: 'json'};
|
||||||
import bookFile from '@openstapps/core/test/resources/indexable/Book.1.json' assert {type: 'json'};
|
import bookFile from '@openstapps/core/test/resources/indexable/Book.1.json' with {type: 'json'};
|
||||||
|
|
||||||
const message = messageFile.instance as SCMessage;
|
const message = messageFile.instance as SCMessage;
|
||||||
const book = bookFile.instance as SCBook;
|
const book = bookFile.instance as SCBook;
|
||||||
|
|||||||
@@ -1,5 +1,17 @@
|
|||||||
# @openstapps/database
|
# @openstapps/database
|
||||||
|
|
||||||
|
## 4.0.1
|
||||||
|
|
||||||
|
### Patch Changes
|
||||||
|
|
||||||
|
- b40ba7ad: Updated Elasticsearch dependency
|
||||||
|
|
||||||
|
## 4.0.0
|
||||||
|
|
||||||
|
### Major Changes
|
||||||
|
|
||||||
|
- c8e29020: Update to Node 22
|
||||||
|
|
||||||
## 3.2.0
|
## 3.2.0
|
||||||
|
|
||||||
### Patch Changes
|
### Patch Changes
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
FROM elasticsearch:8.4.2
|
FROM elasticsearch:8.14.3
|
||||||
|
|
||||||
EXPOSE 9200
|
EXPOSE 9200
|
||||||
EXPOSE 9300
|
EXPOSE 9300
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "@openstapps/database",
|
"name": "@openstapps/database",
|
||||||
"version": "3.2.0",
|
"version": "4.0.1",
|
||||||
"private": true,
|
"private": true,
|
||||||
"files": [
|
"files": [
|
||||||
"config",
|
"config",
|
||||||
|
|||||||
@@ -1,5 +1,23 @@
|
|||||||
# @openstapps/proxy
|
# @openstapps/proxy
|
||||||
|
|
||||||
|
## 4.0.2
|
||||||
|
|
||||||
|
### Patch Changes
|
||||||
|
|
||||||
|
- Updated dependencies [6b06de40]
|
||||||
|
- @openstapps/logger@4.0.2
|
||||||
|
|
||||||
|
## 4.0.0
|
||||||
|
|
||||||
|
### Major Changes
|
||||||
|
|
||||||
|
- c8e29020: Update to Node 22
|
||||||
|
|
||||||
|
### Patch Changes
|
||||||
|
|
||||||
|
- Updated dependencies [c8e29020]
|
||||||
|
- @openstapps/logger@4.0.0
|
||||||
|
|
||||||
## 3.0.0
|
## 3.0.0
|
||||||
|
|
||||||
### Major Changes
|
### Major Changes
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
{
|
{
|
||||||
"name": "@openstapps/proxy",
|
"name": "@openstapps/proxy",
|
||||||
"description": "NGINX proxy that is dynamically configured by a Node.js script",
|
"description": "NGINX proxy that is dynamically configured by a Node.js script",
|
||||||
"version": "3.0.0",
|
"version": "4.0.2",
|
||||||
"private": true,
|
"private": true,
|
||||||
"type": "module",
|
"type": "module",
|
||||||
"license": "AGPL-3.0-only",
|
"license": "AGPL-3.0-only",
|
||||||
@@ -44,7 +44,7 @@
|
|||||||
"@openstapps/logger": "workspace:*",
|
"@openstapps/logger": "workspace:*",
|
||||||
"@types/config": "3.3.0",
|
"@types/config": "3.3.0",
|
||||||
"@types/dockerode": "3.3.17",
|
"@types/dockerode": "3.3.17",
|
||||||
"@types/node": "18.15.3",
|
"@types/node": "22.15.31",
|
||||||
"@types/sha1": "1.1.3",
|
"@types/sha1": "1.1.3",
|
||||||
"config": "3.3.9",
|
"config": "3.3.9",
|
||||||
"dockerode": "3.3.5",
|
"dockerode": "3.3.5",
|
||||||
@@ -58,25 +58,25 @@
|
|||||||
"@openstapps/eslint-config": "workspace:*",
|
"@openstapps/eslint-config": "workspace:*",
|
||||||
"@openstapps/prettier-config": "workspace:*",
|
"@openstapps/prettier-config": "workspace:*",
|
||||||
"@openstapps/tsconfig": "workspace:*",
|
"@openstapps/tsconfig": "workspace:*",
|
||||||
"@types/chai": "4.3.5",
|
"@types/chai": "4.3.20",
|
||||||
"@types/config": "3.3.0",
|
"@types/config": "3.3.0",
|
||||||
"@types/dockerode": "3.3.17",
|
"@types/dockerode": "3.3.17",
|
||||||
"@types/mocha": "10.0.1",
|
"@types/mocha": "10.0.10",
|
||||||
"@types/mustache": "4.2.2",
|
"@types/mustache": "4.2.2",
|
||||||
"@types/node": "18.15.3",
|
"@types/node": "22.15.31",
|
||||||
"@types/proxyquire": "1.3.28",
|
"@types/proxyquire": "1.3.28",
|
||||||
"@types/semver": "7.5.8",
|
"@types/semver": "7.5.8",
|
||||||
"@types/sha1": "1.1.3",
|
"@types/sha1": "1.1.3",
|
||||||
"@types/sinon": "10.0.14",
|
"@types/sinon": "10.0.14",
|
||||||
"@types/sinon-chai": "3.2.9",
|
"@types/sinon-chai": "3.2.9",
|
||||||
"c8": "7.14.0",
|
"c8": "10.1.3",
|
||||||
"chai": "4.3.7",
|
"chai": "4.5.0",
|
||||||
"mocha": "10.2.0",
|
"mocha": "10.8.2",
|
||||||
"mocha-junit-reporter": "2.2.0",
|
"mocha-junit-reporter": "2.2.0",
|
||||||
"sinon": "15.0.4",
|
"sinon": "15.0.4",
|
||||||
"sinon-chai": "3.7.0",
|
"sinon-chai": "3.7.0",
|
||||||
"ts-node": "10.9.2",
|
"ts-node": "10.9.2",
|
||||||
"tsup": "6.7.0"
|
"tsup": "8.5.0"
|
||||||
},
|
},
|
||||||
"tsup": {
|
"tsup": {
|
||||||
"entry": [
|
"entry": [
|
||||||
|
|||||||
@@ -1,5 +1,17 @@
|
|||||||
# @openstapps/backend-config
|
# @openstapps/backend-config
|
||||||
|
|
||||||
|
## 4.0.3
|
||||||
|
|
||||||
|
### Patch Changes
|
||||||
|
|
||||||
|
- 3a274a3a: Upgrade to Capacitor 7 and Anuglar 18
|
||||||
|
|
||||||
|
## 4.0.0
|
||||||
|
|
||||||
|
### Major Changes
|
||||||
|
|
||||||
|
- c8e29020: Update to Node 22
|
||||||
|
|
||||||
## 3.0.0
|
## 3.0.0
|
||||||
|
|
||||||
### Major Changes
|
### Major Changes
|
||||||
@@ -30,7 +42,7 @@
|
|||||||
|
|
||||||
```js
|
```js
|
||||||
#!/usr/bin/env node
|
#!/usr/bin/env node
|
||||||
import './lib/app.js';
|
import "./lib/app.js";
|
||||||
```
|
```
|
||||||
|
|
||||||
- 64caebaf: Migrate to ESM
|
- 64caebaf: Migrate to ESM
|
||||||
@@ -105,7 +117,7 @@
|
|||||||
|
|
||||||
```js
|
```js
|
||||||
#!/usr/bin/env node
|
#!/usr/bin/env node
|
||||||
import './lib/app.js';
|
import "./lib/app.js";
|
||||||
```
|
```
|
||||||
|
|
||||||
- 64caebaf: Migrate to ESM
|
- 64caebaf: Migrate to ESM
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
{
|
{
|
||||||
"name": "@openstapps/backend-config",
|
"name": "@openstapps/backend-config",
|
||||||
"description": "Backend Configuration for OpenStApps",
|
"description": "Backend Configuration for OpenStApps",
|
||||||
"version": "3.0.0",
|
"version": "4.0.3",
|
||||||
"private": true,
|
"private": true,
|
||||||
"type": "module",
|
"type": "module",
|
||||||
"license": "GPL-3.0-only",
|
"license": "GPL-3.0-only",
|
||||||
|
|||||||
@@ -10,7 +10,7 @@
|
|||||||
<group title="canteen" title.de="Mensa" icon="local_cafe" route="/canteen"/>
|
<group title="canteen" title.de="Mensa" icon="local_cafe" route="/canteen"/>
|
||||||
<group title="campus map" title.de="Campus Karte" icon="map" route="/map"/>
|
<group title="campus map" title.de="Campus Karte" icon="map" route="/map"/>
|
||||||
<group title="my app" title.de="Meine App" icon="school" route="/profile">
|
<group title="my app" title.de="Meine App" icon="school" route="/profile">
|
||||||
<item title="favorites" title.de="Favoriten" icon="grade" route="/favorites"/>
|
<item title="favorites" title.de="Favoriten" icon="star" route="/favorites"/>
|
||||||
<item title="schedule" title.de="Stundenplan" icon="calendar_today" route="/schedule"/>
|
<item title="schedule" title.de="Stundenplan" icon="calendar_today" route="/schedule"/>
|
||||||
<item title="library account" title.de="Bibliothekskonto" icon="badge" route="/library-account" authProvider="paia"/>
|
<item title="library account" title.de="Bibliothekskonto" icon="badge" route="/library-account" authProvider="paia"/>
|
||||||
<item title="settings" title.de="Einstellungen" icon="settings" route="/settings"/>
|
<item title="settings" title.de="Einstellungen" icon="settings" route="/settings"/>
|
||||||
|
|||||||
@@ -10,7 +10,7 @@
|
|||||||
<group title="canteen" title.de="Mensa" icon="local_cafe" route="/canteen"/>
|
<group title="canteen" title.de="Mensa" icon="local_cafe" route="/canteen"/>
|
||||||
<group title="campus map" title.de="Campus Karte" icon="map" route="/map"/>
|
<group title="campus map" title.de="Campus Karte" icon="map" route="/map"/>
|
||||||
<group title="my app" title.de="Meine App" icon="school" route="/profile">
|
<group title="my app" title.de="Meine App" icon="school" route="/profile">
|
||||||
<item title="favorites" title.de="Favoriten" icon="grade" route="/favorites"/>
|
<item title="favorites" title.de="Favoriten" icon="star" route="/favorites"/>
|
||||||
<item title="schedule" title.de="Stundenplan" icon="calendar_today" route="/schedule"/>
|
<item title="schedule" title.de="Stundenplan" icon="calendar_today" route="/schedule"/>
|
||||||
<item title="library account" title.de="Bibliothekskonto" icon="badge" route="/library-account" authProvider="paia"/>
|
<item title="library account" title.de="Bibliothekskonto" icon="badge" route="/library-account" authProvider="paia"/>
|
||||||
<item title="settings" title.de="Einstellungen" icon="settings" route="/settings"/>
|
<item title="settings" title.de="Einstellungen" icon="settings" route="/settings"/>
|
||||||
|
|||||||
@@ -1,5 +1,17 @@
|
|||||||
# @openstapps/eslint-config
|
# @openstapps/eslint-config
|
||||||
|
|
||||||
|
## 4.0.3
|
||||||
|
|
||||||
|
### Patch Changes
|
||||||
|
|
||||||
|
- 3a274a3a: Upgrade to Capacitor 7 and Anuglar 18
|
||||||
|
|
||||||
|
## 4.0.0
|
||||||
|
|
||||||
|
### Major Changes
|
||||||
|
|
||||||
|
- c8e29020: Update to Node 22
|
||||||
|
|
||||||
## 3.0.0
|
## 3.0.0
|
||||||
|
|
||||||
### Major Changes
|
### Major Changes
|
||||||
@@ -30,7 +42,7 @@
|
|||||||
|
|
||||||
```js
|
```js
|
||||||
#!/usr/bin/env node
|
#!/usr/bin/env node
|
||||||
import './lib/app.js';
|
import "./lib/app.js";
|
||||||
```
|
```
|
||||||
|
|
||||||
- 64caebaf: Migrate to ESM
|
- 64caebaf: Migrate to ESM
|
||||||
@@ -75,11 +87,14 @@
|
|||||||
- 64caebaf: Migrated changelogs to changeset format
|
- 64caebaf: Migrated changelogs to changeset format
|
||||||
|
|
||||||
```js
|
```js
|
||||||
import fs from 'fs';
|
import fs from "fs";
|
||||||
|
|
||||||
const path = 'packages/logger/CHANGELOG.md';
|
const path = "packages/logger/CHANGELOG.md";
|
||||||
|
|
||||||
fs.writeFileSync(path, fs.readFileSync(path, 'utf8').replace(/^#+\s+\[/gm, '## ['));
|
fs.writeFileSync(
|
||||||
|
path,
|
||||||
|
fs.readFileSync(path, "utf8").replace(/^#+\s+\[/gm, "## ["),
|
||||||
|
);
|
||||||
```
|
```
|
||||||
|
|
||||||
- 98546a97: Migrate away from @openstapps/configuration
|
- 98546a97: Migrate away from @openstapps/configuration
|
||||||
@@ -122,7 +137,7 @@
|
|||||||
|
|
||||||
```js
|
```js
|
||||||
#!/usr/bin/env node
|
#!/usr/bin/env node
|
||||||
import './lib/app.js';
|
import "./lib/app.js";
|
||||||
```
|
```
|
||||||
|
|
||||||
- 64caebaf: Migrate to ESM
|
- 64caebaf: Migrate to ESM
|
||||||
@@ -167,11 +182,14 @@
|
|||||||
- 64caebaf: Migrated changelogs to changeset format
|
- 64caebaf: Migrated changelogs to changeset format
|
||||||
|
|
||||||
```js
|
```js
|
||||||
import fs from 'fs';
|
import fs from "fs";
|
||||||
|
|
||||||
const path = 'packages/logger/CHANGELOG.md';
|
const path = "packages/logger/CHANGELOG.md";
|
||||||
|
|
||||||
fs.writeFileSync(path, fs.readFileSync(path, 'utf8').replace(/^#+\s+\[/gm, '## ['));
|
fs.writeFileSync(
|
||||||
|
path,
|
||||||
|
fs.readFileSync(path, "utf8").replace(/^#+\s+\[/gm, "## ["),
|
||||||
|
);
|
||||||
```
|
```
|
||||||
|
|
||||||
- 98546a97: Migrate away from @openstapps/configuration
|
- 98546a97: Migrate away from @openstapps/configuration
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
{
|
{
|
||||||
"name": "@openstapps/eslint-config",
|
"name": "@openstapps/eslint-config",
|
||||||
"description": "A collection of configuration base files for StApps projects. Just an (unused) experiment for now.",
|
"description": "A collection of configuration base files for StApps projects. Just an (unused) experiment for now.",
|
||||||
"version": "3.0.0",
|
"version": "4.0.3",
|
||||||
"type": "commonjs",
|
"type": "commonjs",
|
||||||
"license": "GPL-3.0-only",
|
"license": "GPL-3.0-only",
|
||||||
"repository": "git@gitlab.com:openstapps/eslint-config.git",
|
"repository": "git@gitlab.com:openstapps/eslint-config.git",
|
||||||
@@ -17,13 +17,13 @@
|
|||||||
],
|
],
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"@openstapps/tsconfig": "workspace:*",
|
"@openstapps/tsconfig": "workspace:*",
|
||||||
"@types/node": "18.15.3",
|
"@types/node": "22.15.31",
|
||||||
"eslint": "8.57.0",
|
"eslint": "8.57.0",
|
||||||
"typescript": "5.4.2"
|
"typescript": "5.4.2"
|
||||||
},
|
},
|
||||||
"peerDependencies": {
|
"peerDependencies": {
|
||||||
"@typescript-eslint/eslint-plugin": "7.2.0",
|
"@typescript-eslint/eslint-plugin": "7.11.0",
|
||||||
"@typescript-eslint/parser": "7.2.0",
|
"@typescript-eslint/parser": "7.11.0",
|
||||||
"eslint": "8.57.0",
|
"eslint": "8.57.0",
|
||||||
"eslint-config-prettier": "9.1.0",
|
"eslint-config-prettier": "9.1.0",
|
||||||
"eslint-plugin-jsdoc": "48.2.1",
|
"eslint-plugin-jsdoc": "48.2.1",
|
||||||
|
|||||||
@@ -1,5 +1,11 @@
|
|||||||
# @openstapps/prettier-config
|
# @openstapps/prettier-config
|
||||||
|
|
||||||
|
## 4.0.0
|
||||||
|
|
||||||
|
### Major Changes
|
||||||
|
|
||||||
|
- c8e29020: Update to Node 22
|
||||||
|
|
||||||
## 3.2.0
|
## 3.2.0
|
||||||
|
|
||||||
### Patch Changes
|
### Patch Changes
|
||||||
|
|||||||
@@ -12,4 +12,4 @@ const config = {
|
|||||||
endOfLine: 'lf'
|
endOfLine: 'lf'
|
||||||
}
|
}
|
||||||
|
|
||||||
export default config;
|
module.exports = config;
|
||||||
|
|||||||
@@ -1,8 +1,8 @@
|
|||||||
{
|
{
|
||||||
"name": "@openstapps/prettier-config",
|
"name": "@openstapps/prettier-config",
|
||||||
"description": "StApps Prettier Config",
|
"description": "StApps Prettier Config",
|
||||||
"version": "3.2.0",
|
"version": "4.0.0",
|
||||||
"type": "module",
|
"type": "commonjs",
|
||||||
"license": "GPL-3.0-only",
|
"license": "GPL-3.0-only",
|
||||||
"repository": "git@gitlab.com:openstapps/prettier-config.git",
|
"repository": "git@gitlab.com:openstapps/prettier-config.git",
|
||||||
"author": "Thea Schöbl <dev@theaninova.de>",
|
"author": "Thea Schöbl <dev@theaninova.de>",
|
||||||
|
|||||||
@@ -1,5 +1,32 @@
|
|||||||
# @openstapps/projectmanagement
|
# @openstapps/projectmanagement
|
||||||
|
|
||||||
|
## 4.0.2
|
||||||
|
|
||||||
|
### Patch Changes
|
||||||
|
|
||||||
|
- Updated dependencies [6b06de40]
|
||||||
|
- @openstapps/logger@4.0.2
|
||||||
|
- @openstapps/gitlab-api@4.0.2
|
||||||
|
|
||||||
|
## 4.0.1
|
||||||
|
|
||||||
|
### Patch Changes
|
||||||
|
|
||||||
|
- b40ba7ad: Updated Elasticsearch dependency
|
||||||
|
|
||||||
|
## 4.0.0
|
||||||
|
|
||||||
|
### Major Changes
|
||||||
|
|
||||||
|
- c8e29020: Update to Node 22
|
||||||
|
|
||||||
|
### Patch Changes
|
||||||
|
|
||||||
|
- Updated dependencies [c8e29020]
|
||||||
|
- @openstapps/collection-utils@4.0.0
|
||||||
|
- @openstapps/gitlab-api@4.0.0
|
||||||
|
- @openstapps/logger@4.0.0
|
||||||
|
|
||||||
## 3.0.0
|
## 3.0.0
|
||||||
|
|
||||||
### Major Changes
|
### Major Changes
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
{
|
{
|
||||||
"name": "@openstapps/projectmanagement",
|
"name": "@openstapps/projectmanagement",
|
||||||
"description": "Main documentation and scripts for maintenance.",
|
"description": "Main documentation and scripts for maintenance.",
|
||||||
"version": "3.0.0",
|
"version": "4.0.2",
|
||||||
"private": true,
|
"private": true,
|
||||||
"type": "module",
|
"type": "module",
|
||||||
"license": "GPL-3.0-only",
|
"license": "GPL-3.0-only",
|
||||||
@@ -41,30 +41,29 @@
|
|||||||
"@openstapps/collection-utils": "workspace:*",
|
"@openstapps/collection-utils": "workspace:*",
|
||||||
"@openstapps/gitlab-api": "workspace:*",
|
"@openstapps/gitlab-api": "workspace:*",
|
||||||
"@openstapps/logger": "workspace:*",
|
"@openstapps/logger": "workspace:*",
|
||||||
"@slack/web-api": "6.8.1",
|
|
||||||
"commander": "10.0.0",
|
"commander": "10.0.0",
|
||||||
"date-fns": "3.6.0",
|
"date-fns": "3.6.0",
|
||||||
"glob": "10.3.10",
|
"glob": "10.5.0",
|
||||||
"mustache": "4.2.0"
|
"mustache": "4.2.0"
|
||||||
},
|
},
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"@openstapps/eslint-config": "workspace:*",
|
"@openstapps/eslint-config": "workspace:*",
|
||||||
"@openstapps/prettier-config": "workspace:*",
|
"@openstapps/prettier-config": "workspace:*",
|
||||||
"@openstapps/tsconfig": "workspace:*",
|
"@openstapps/tsconfig": "workspace:*",
|
||||||
"@types/chai": "4.3.5",
|
"@types/chai": "4.3.20",
|
||||||
"@types/chai-as-promised": "7.1.5",
|
"@types/chai-as-promised": "7.1.8",
|
||||||
"@types/glob": "8.1.0",
|
"@types/glob": "8.1.0",
|
||||||
"@types/mocha": "10.0.1",
|
"@types/mocha": "10.0.10",
|
||||||
"@types/mustache": "4.2.2",
|
"@types/mustache": "4.2.2",
|
||||||
"@types/node": "18.15.3",
|
"@types/node": "22.15.31",
|
||||||
"@types/tmp": "0.2.3",
|
"@types/tmp": "0.2.3",
|
||||||
"c8": "7.14.0",
|
"c8": "10.1.3",
|
||||||
"chai": "4.3.7",
|
"chai": "4.5.0",
|
||||||
"chai-as-promised": "7.1.1",
|
"chai-as-promised": "7.1.2",
|
||||||
"mocha": "10.2.0",
|
"mocha": "10.8.2",
|
||||||
"mocha-junit-reporter": "2.2.0",
|
"mocha-junit-reporter": "2.2.0",
|
||||||
"ts-node": "10.9.2",
|
"ts-node": "10.9.2",
|
||||||
"tsup": "6.7.0",
|
"tsup": "8.5.0",
|
||||||
"typescript": "5.4.2"
|
"typescript": "5.4.2"
|
||||||
},
|
},
|
||||||
"tsup": {
|
"tsup": {
|
||||||
|
|||||||
@@ -22,7 +22,6 @@ import {
|
|||||||
User,
|
User,
|
||||||
} from '@openstapps/gitlab-api';
|
} from '@openstapps/gitlab-api';
|
||||||
import {Logger} from '@openstapps/logger';
|
import {Logger} from '@openstapps/logger';
|
||||||
import {WebClient} from '@slack/web-api';
|
|
||||||
import {CONCURRENCY, GROUPS, MAX_DEPTH_FOR_REMINDER, NOTE_PREFIX, SLACK_CHANNEL} from '../configuration.js';
|
import {CONCURRENCY, GROUPS, MAX_DEPTH_FOR_REMINDER, NOTE_PREFIX, SLACK_CHANNEL} from '../configuration.js';
|
||||||
import {mapAsyncLimit} from '@openstapps/collection-utils';
|
import {mapAsyncLimit} from '@openstapps/collection-utils';
|
||||||
|
|
||||||
@@ -53,8 +52,7 @@ export async function remind(api: Api): Promise<void> {
|
|||||||
Logger.info(`Found ${mergeRequests.length} open merge requests.`);
|
Logger.info(`Found ${mergeRequests.length} open merge requests.`);
|
||||||
|
|
||||||
// instantiate slack client
|
// instantiate slack client
|
||||||
const client =
|
const client = undefined;
|
||||||
process.env.SLACK_API_TOKEN === undefined ? undefined : new WebClient(process.env.SLACK_API_TOKEN);
|
|
||||||
|
|
||||||
// get members of the main group
|
// get members of the main group
|
||||||
const members = await api.getMembers(MembershipScope.GROUPS, GROUPS[0]);
|
const members = await api.getMembers(MembershipScope.GROUPS, GROUPS[0]);
|
||||||
|
|||||||
@@ -1,5 +1,11 @@
|
|||||||
# @openstapps/tsconfig
|
# @openstapps/tsconfig
|
||||||
|
|
||||||
|
## 4.0.0
|
||||||
|
|
||||||
|
### Major Changes
|
||||||
|
|
||||||
|
- c8e29020: Update to Node 22
|
||||||
|
|
||||||
## 3.3.0
|
## 3.3.0
|
||||||
|
|
||||||
### Minor Changes
|
### Minor Changes
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
{
|
{
|
||||||
"name": "@openstapps/tsconfig",
|
"name": "@openstapps/tsconfig",
|
||||||
"description": "The tsconfig for the openstapps project",
|
"description": "The tsconfig for the openstapps project",
|
||||||
"version": "3.3.0",
|
"version": "4.0.0",
|
||||||
"type": "commonjs",
|
"type": "commonjs",
|
||||||
"license": "GPL-3.0-only",
|
"license": "GPL-3.0-only",
|
||||||
"repository": "git@gitlab.com:openstapps/eslint-config.git",
|
"repository": "git@gitlab.com:openstapps/eslint-config.git",
|
||||||
|
|||||||
@@ -9,7 +9,7 @@ const args = files.map(it => `${it.split('/', 2)[1]}='${it}'`);
|
|||||||
|
|
||||||
console.log(
|
console.log(
|
||||||
'Collecting coverage...',
|
'Collecting coverage...',
|
||||||
await promisify(exec)(`cobertura-merge -o ./coverage.xml ${args.join(' ')}`),
|
await promisify(exec)(`merge-cobertura -o ./coverage.xml ${args.join(' ')}`),
|
||||||
);
|
);
|
||||||
|
|
||||||
const reportFiles = await glob('./*/*/coverage/report-junit.xml');
|
const reportFiles = await glob('./*/*/coverage/report-junit.xml');
|
||||||
|
|||||||
@@ -1,5 +1,35 @@
|
|||||||
# @openstapps/minimal-connector
|
# @openstapps/minimal-connector
|
||||||
|
|
||||||
|
## 4.0.2
|
||||||
|
|
||||||
|
### Patch Changes
|
||||||
|
|
||||||
|
- Updated dependencies [6b06de40]
|
||||||
|
- @openstapps/logger@4.0.2
|
||||||
|
- @openstapps/core@4.0.2
|
||||||
|
- @openstapps/api@4.0.2
|
||||||
|
|
||||||
|
## 4.0.1
|
||||||
|
|
||||||
|
### Patch Changes
|
||||||
|
|
||||||
|
- Updated dependencies [b40ba7ad]
|
||||||
|
- @openstapps/api@4.0.1
|
||||||
|
- @openstapps/core@4.0.0
|
||||||
|
|
||||||
|
## 4.0.0
|
||||||
|
|
||||||
|
### Major Changes
|
||||||
|
|
||||||
|
- c8e29020: Update to Node 22
|
||||||
|
|
||||||
|
### Patch Changes
|
||||||
|
|
||||||
|
- Updated dependencies [c8e29020]
|
||||||
|
- @openstapps/api@4.0.0
|
||||||
|
- @openstapps/core@4.0.0
|
||||||
|
- @openstapps/logger@4.0.0
|
||||||
|
|
||||||
## 3.3.2
|
## 3.3.2
|
||||||
|
|
||||||
### Patch Changes
|
### Patch Changes
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
{
|
{
|
||||||
"name": "@openstapps/minimal-connector",
|
"name": "@openstapps/minimal-connector",
|
||||||
"description": "This is a minimal connector which serves as an example",
|
"description": "This is a minimal connector which serves as an example",
|
||||||
"version": "3.3.2",
|
"version": "4.0.2",
|
||||||
"private": true,
|
"private": true,
|
||||||
"type": "module",
|
"type": "module",
|
||||||
"license": "GPL-3.0-only",
|
"license": "GPL-3.0-only",
|
||||||
@@ -42,19 +42,19 @@
|
|||||||
"@openstapps/eslint-config": "workspace:*",
|
"@openstapps/eslint-config": "workspace:*",
|
||||||
"@openstapps/prettier-config": "workspace:*",
|
"@openstapps/prettier-config": "workspace:*",
|
||||||
"@openstapps/tsconfig": "workspace:*",
|
"@openstapps/tsconfig": "workspace:*",
|
||||||
"@types/chai": "4.3.5",
|
"@types/chai": "4.3.20",
|
||||||
"@types/chai-as-promised": "7.1.5",
|
"@types/chai-as-promised": "7.1.8",
|
||||||
"@types/mocha": "10.0.1",
|
"@types/mocha": "10.0.10",
|
||||||
"@types/node": "18.15.3",
|
"@types/node": "22.15.31",
|
||||||
"c8": "7.14.0",
|
"c8": "10.1.3",
|
||||||
"chai": "4.3.7",
|
"chai": "4.5.0",
|
||||||
"chai-as-promised": "7.1.1",
|
"chai-as-promised": "7.1.2",
|
||||||
"conventional-changelog-cli": "2.2.2",
|
"conventional-changelog-cli": "2.2.2",
|
||||||
"mocha": "10.2.0",
|
"mocha": "10.8.2",
|
||||||
"mocha-junit-reporter": "2.2.0",
|
"mocha-junit-reporter": "2.2.0",
|
||||||
"nock": "13.3.1",
|
"nock": "13.3.1",
|
||||||
"ts-node": "10.9.2",
|
"ts-node": "10.9.2",
|
||||||
"tsup": "6.7.0",
|
"tsup": "8.5.0",
|
||||||
"typescript": "5.4.2"
|
"typescript": "5.4.2"
|
||||||
},
|
},
|
||||||
"tsup": {
|
"tsup": {
|
||||||
|
|||||||
@@ -1,5 +1,17 @@
|
|||||||
# @openstapps/minimal-deployment
|
# @openstapps/minimal-deployment
|
||||||
|
|
||||||
|
## 4.0.1
|
||||||
|
|
||||||
|
### Patch Changes
|
||||||
|
|
||||||
|
- b40ba7ad: Updated Elasticsearch dependency
|
||||||
|
|
||||||
|
## 4.0.0
|
||||||
|
|
||||||
|
### Major Changes
|
||||||
|
|
||||||
|
- c8e29020: Update to Node 22
|
||||||
|
|
||||||
## 3.0.0
|
## 3.0.0
|
||||||
|
|
||||||
### Patch Changes
|
### Patch Changes
|
||||||
|
|||||||
@@ -1,23 +1,21 @@
|
|||||||
version: '3.7'
|
|
||||||
|
|
||||||
x-development-variables: &development-variables
|
x-development-variables: &development-variables
|
||||||
NODE_ENV: "development"
|
NODE_ENV: "development"
|
||||||
ALLOW_NO_TRANSPORT: "true"
|
ALLOW_NO_TRANSPORT: "true"
|
||||||
|
|
||||||
services:
|
services:
|
||||||
database:
|
database:
|
||||||
image: registry.gitlab.com/openstapps/openstapps/database:3.0.0
|
image: registry.gitlab.com/openstapps/openstapps/database:4.0.1
|
||||||
# If you need persistence for debugging purposes uncomment the following lines
|
# If you need persistence for debugging purposes uncomment the following lines
|
||||||
#volumes:
|
# volumes:
|
||||||
# - ./database:/usr/share/elasticsearch/data
|
# - ./database:/usr/share/elasticsearch/data
|
||||||
expose:
|
expose:
|
||||||
- 9200
|
- 9200
|
||||||
ports:
|
ports:
|
||||||
- 127.0.0.1:9200:9200
|
- 127.0.0.1:9200:9200
|
||||||
environment:
|
environment:
|
||||||
- bootstrap.memory_lock=true
|
# - bootstrap.memory_lock=true
|
||||||
- "ES_JAVA_OPTS=-Xms2g -Xmx2g"
|
# - discovery.type=single-node
|
||||||
- discovery.type=single-node
|
- "ES_JAVA_OPTS=-Xms4g -Xmx4g"
|
||||||
ulimits:
|
ulimits:
|
||||||
memlock:
|
memlock:
|
||||||
soft: -1
|
soft: -1
|
||||||
@@ -25,7 +23,7 @@ services:
|
|||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
|
|
||||||
backend:
|
backend:
|
||||||
image: registry.gitlab.com/openstapps/openstapps/backend:3.1.0
|
image: registry.gitlab.com/openstapps/openstapps/backend:4.0.1
|
||||||
environment:
|
environment:
|
||||||
<<: *development-variables
|
<<: *development-variables
|
||||||
ES_ADDR: "http://database:9200"
|
ES_ADDR: "http://database:9200"
|
||||||
@@ -37,10 +35,11 @@ services:
|
|||||||
ports:
|
ports:
|
||||||
- 127.0.0.1:3000:3000
|
- 127.0.0.1:3000:3000
|
||||||
labels:
|
labels:
|
||||||
- stapps.version=4.1.0
|
- stapps.version=4.0.0
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
depends_on:
|
depends_on:
|
||||||
- database
|
database:
|
||||||
|
condition: service_healthy
|
||||||
links:
|
links:
|
||||||
- database
|
- database
|
||||||
|
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "@openstapps/minimal-deployment",
|
"name": "@openstapps/minimal-deployment",
|
||||||
"version": "3.0.0",
|
"version": "4.0.1",
|
||||||
"private": true,
|
"private": true,
|
||||||
"files": [
|
"files": [
|
||||||
"database",
|
"database",
|
||||||
|
|||||||
@@ -1,5 +1,41 @@
|
|||||||
# @openstapps/minimal-plugin
|
# @openstapps/minimal-plugin
|
||||||
|
|
||||||
|
## 4.0.2
|
||||||
|
|
||||||
|
### Patch Changes
|
||||||
|
|
||||||
|
- Updated dependencies [6b06de40]
|
||||||
|
- @openstapps/logger@4.0.2
|
||||||
|
- @openstapps/api-plugin@4.0.2
|
||||||
|
- @openstapps/core@4.0.2
|
||||||
|
- @openstapps/core-tools@4.0.2
|
||||||
|
- @openstapps/api@4.0.2
|
||||||
|
|
||||||
|
## 4.0.1
|
||||||
|
|
||||||
|
### Patch Changes
|
||||||
|
|
||||||
|
- b40ba7ad: Updated Elasticsearch dependency
|
||||||
|
- Updated dependencies [b40ba7ad]
|
||||||
|
- @openstapps/api-plugin@4.0.1
|
||||||
|
- @openstapps/api@4.0.1
|
||||||
|
- @openstapps/core@4.0.0
|
||||||
|
|
||||||
|
## 4.0.0
|
||||||
|
|
||||||
|
### Major Changes
|
||||||
|
|
||||||
|
- c8e29020: Update to Node 22
|
||||||
|
|
||||||
|
### Patch Changes
|
||||||
|
|
||||||
|
- Updated dependencies [c8e29020]
|
||||||
|
- @openstapps/api@4.0.0
|
||||||
|
- @openstapps/api-plugin@4.0.0
|
||||||
|
- @openstapps/core@4.0.0
|
||||||
|
- @openstapps/core-tools@4.0.0
|
||||||
|
- @openstapps/logger@4.0.0
|
||||||
|
|
||||||
## 3.3.2
|
## 3.3.2
|
||||||
|
|
||||||
### Patch Changes
|
### Patch Changes
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
{
|
{
|
||||||
"name": "@openstapps/minimal-plugin",
|
"name": "@openstapps/minimal-plugin",
|
||||||
"description": "Minimal Plugin",
|
"description": "Minimal Plugin",
|
||||||
"version": "3.3.2",
|
"version": "4.0.2",
|
||||||
"private": true,
|
"private": true,
|
||||||
"type": "module",
|
"type": "module",
|
||||||
"license": "GPL-3.0-only",
|
"license": "GPL-3.0-only",
|
||||||
@@ -34,7 +34,7 @@
|
|||||||
"@openstapps/core-tools": "workspace:*",
|
"@openstapps/core-tools": "workspace:*",
|
||||||
"@openstapps/logger": "workspace:*",
|
"@openstapps/logger": "workspace:*",
|
||||||
"commander": "10.0.0",
|
"commander": "10.0.0",
|
||||||
"express": "4.18.2",
|
"express": "4.21.2",
|
||||||
"ts-node": "10.9.2"
|
"ts-node": "10.9.2"
|
||||||
},
|
},
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
@@ -42,8 +42,8 @@
|
|||||||
"@openstapps/prettier-config": "workspace:*",
|
"@openstapps/prettier-config": "workspace:*",
|
||||||
"@openstapps/tsconfig": "workspace:*",
|
"@openstapps/tsconfig": "workspace:*",
|
||||||
"@types/express": "4.17.17",
|
"@types/express": "4.17.17",
|
||||||
"@types/node": "18.15.3",
|
"@types/node": "22.15.31",
|
||||||
"tsup": "6.7.0",
|
"tsup": "8.5.0",
|
||||||
"typescript": "5.4.2"
|
"typescript": "5.4.2"
|
||||||
},
|
},
|
||||||
"tsup": {
|
"tsup": {
|
||||||
|
|||||||
12
flake.lock
generated
12
flake.lock
generated
@@ -5,11 +5,11 @@
|
|||||||
"systems": "systems"
|
"systems": "systems"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1709126324,
|
"lastModified": 1710146030,
|
||||||
"narHash": "sha256-q6EQdSeUZOG26WelxqkmR7kArjgWCdw5sfJVHPH/7j8=",
|
"narHash": "sha256-SZ5L6eA7HJ/nmkzGG7/ISclqe6oZdOZTNoesiInkXPQ=",
|
||||||
"owner": "numtide",
|
"owner": "numtide",
|
||||||
"repo": "flake-utils",
|
"repo": "flake-utils",
|
||||||
"rev": "d465f4819400de7c8d874d50b982301f28a84605",
|
"rev": "b1d9ab70662946ef0850d488da1c9019f3a9752a",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -20,11 +20,11 @@
|
|||||||
},
|
},
|
||||||
"nixpkgs": {
|
"nixpkgs": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1709747860,
|
"lastModified": 1717112898,
|
||||||
"narHash": "sha256-RT4zuBy579m+l8VyIQFOR66WXfcs4g1jntZUHjh6eoI=",
|
"narHash": "sha256-7R2ZvOnvd9h8fDd65p0JnB7wXfUvreox3xFdYWd1BnY=",
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "58ae79ea707579c40102ddf62d84b902a987c58b",
|
"rev": "6132b0f6e344ce2fe34fc051b72fb46e34f668e0",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|||||||
18
flake.nix
18
flake.nix
@@ -11,7 +11,7 @@
|
|||||||
flake-utils,
|
flake-utils,
|
||||||
}:
|
}:
|
||||||
let
|
let
|
||||||
aapt2buildToolsVersion = "33.0.2";
|
aapt2buildToolsVersion = "34.0.0";
|
||||||
in
|
in
|
||||||
flake-utils.lib.eachDefaultSystem (
|
flake-utils.lib.eachDefaultSystem (
|
||||||
system:
|
system:
|
||||||
@@ -19,7 +19,7 @@
|
|||||||
pkgs = import nixpkgs {
|
pkgs = import nixpkgs {
|
||||||
inherit system;
|
inherit system;
|
||||||
overlays = [
|
overlays = [
|
||||||
(final: prev: rec {
|
(final: prev: {
|
||||||
fontMin = prev.python311.withPackages (
|
fontMin = prev.python311.withPackages (
|
||||||
ps:
|
ps:
|
||||||
with ps;
|
with ps;
|
||||||
@@ -30,21 +30,20 @@
|
|||||||
++ (with fonttools.optional-dependencies; [ woff ])
|
++ (with fonttools.optional-dependencies; [ woff ])
|
||||||
);
|
);
|
||||||
android = prev.androidenv.composeAndroidPackages {
|
android = prev.androidenv.composeAndroidPackages {
|
||||||
buildToolsVersions = [
|
buildToolsVersions = prev.lib.lists.unique [
|
||||||
"34.0.0"
|
"34.0.0"
|
||||||
aapt2buildToolsVersion
|
aapt2buildToolsVersion
|
||||||
];
|
];
|
||||||
platformVersions = [ "34" ];
|
platformVersions = [ "34" ];
|
||||||
};
|
};
|
||||||
cypress = prev.cypress.overrideAttrs (cyPrev: rec {
|
cypress = prev.cypress.overrideAttrs (cyPrev: rec {
|
||||||
version = "13.2.0";
|
version = "13.10.0";
|
||||||
src = prev.fetchzip {
|
src = prev.fetchzip {
|
||||||
url = "https://cdn.cypress.io/desktop/${version}/linux-x64/cypress.zip";
|
url = "https://cdn.cypress.io/desktop/${version}/linux-x64/cypress.zip";
|
||||||
hash = "sha256-9o0nprGcJhudS1LNm+T7Vf0Dwd1RBauYKI+w1FBQ3ZM=";
|
hash = "sha256-wKNXo2lWndsQaouOiul0rsOWah+RRQ6fljzdeC8/KW4=";
|
||||||
};
|
};
|
||||||
});
|
});
|
||||||
nodejs = prev.nodejs_18;
|
nodejs = prev.nodejs_22;
|
||||||
corepack = prev.corepack_18;
|
|
||||||
})
|
})
|
||||||
];
|
];
|
||||||
config = {
|
config = {
|
||||||
@@ -54,7 +53,6 @@
|
|||||||
};
|
};
|
||||||
androidFhs = pkgs.buildFHSUserEnv {
|
androidFhs = pkgs.buildFHSUserEnv {
|
||||||
name = "android-env";
|
name = "android-env";
|
||||||
targetPkgs = pkgs: with pkgs; [ ];
|
|
||||||
runScript = "bash";
|
runScript = "bash";
|
||||||
profile = ''
|
profile = ''
|
||||||
export ALLOW_NINJA_ENV=true
|
export ALLOW_NINJA_ENV=true
|
||||||
@@ -68,7 +66,7 @@
|
|||||||
nativeBuildInputs = [ androidFhs ];
|
nativeBuildInputs = [ androidFhs ];
|
||||||
buildInputs = with pkgs; [
|
buildInputs = with pkgs; [
|
||||||
nodejs
|
nodejs
|
||||||
corepack
|
nodePackages.pnpm
|
||||||
# tools
|
# tools
|
||||||
curl
|
curl
|
||||||
jq
|
jq
|
||||||
@@ -83,6 +81,8 @@
|
|||||||
GRADLE_OPTS = "-Dorg.gradle.project.android.aapt2FromMavenOverride=${ANDROID_SDK_ROOT}/build-tools/${aapt2buildToolsVersion}/aapt2";
|
GRADLE_OPTS = "-Dorg.gradle.project.android.aapt2FromMavenOverride=${ANDROID_SDK_ROOT}/build-tools/${aapt2buildToolsVersion}/aapt2";
|
||||||
CYPRESS_INSTALL_BINARY = "0";
|
CYPRESS_INSTALL_BINARY = "0";
|
||||||
CYPRESS_RUN_BINARY = "${pkgs.cypress}/bin/Cypress";
|
CYPRESS_RUN_BINARY = "${pkgs.cypress}/bin/Cypress";
|
||||||
|
# https://github.com/nodejs/node/issues/48444#issuecomment-1591882694
|
||||||
|
UV_USE_IO_URING = "0";
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
);
|
);
|
||||||
|
|||||||
@@ -1,13 +1,10 @@
|
|||||||
e2e:
|
e2e:
|
||||||
image: registry.gitlab.com/openstapps/openstapps/app-cypress:node-18
|
image: registry.gitlab.com/openstapps/openstapps/app-cypress
|
||||||
stage: test
|
stage: test
|
||||||
script:
|
script:
|
||||||
- pnpm --filter=@openstapps/app install
|
- pnpm install
|
||||||
- pnpm --filter=@openstapps/app exec cypress install
|
- pnpm --filter=@openstapps/app exec cypress install
|
||||||
- cd node_modules/.pnpm/re2*/node_modules/re2
|
- pnpm test:integration:app --force --no-cache
|
||||||
- npm run install
|
|
||||||
- cd $CI_PROJECT_DIR
|
|
||||||
- pnpm test:integration:app
|
|
||||||
artifacts:
|
artifacts:
|
||||||
when: on_failure
|
when: on_failure
|
||||||
paths:
|
paths:
|
||||||
|
|||||||
@@ -1,5 +1,49 @@
|
|||||||
# @openstapps/app
|
# @openstapps/app
|
||||||
|
|
||||||
|
## 4.0.3
|
||||||
|
|
||||||
|
### Patch Changes
|
||||||
|
|
||||||
|
- 3a274a3a: Upgrade to Capacitor 7 and Anuglar 18
|
||||||
|
- @openstapps/api@4.0.2
|
||||||
|
- @openstapps/collection-utils@4.0.0
|
||||||
|
- @openstapps/core@4.0.2
|
||||||
|
|
||||||
|
## 4.0.2
|
||||||
|
|
||||||
|
### Patch Changes
|
||||||
|
|
||||||
|
- @openstapps/core@4.0.2
|
||||||
|
- @openstapps/api@4.0.2
|
||||||
|
|
||||||
|
## 4.0.1
|
||||||
|
|
||||||
|
### Patch Changes
|
||||||
|
|
||||||
|
- b40ba7ad: Updated Elasticsearch dependency
|
||||||
|
- Updated dependencies [b40ba7ad]
|
||||||
|
- @openstapps/api@4.0.1
|
||||||
|
- @openstapps/core@4.0.0
|
||||||
|
|
||||||
|
## 4.0.0
|
||||||
|
|
||||||
|
### Major Changes
|
||||||
|
|
||||||
|
- c8e29020: Update to Node 22
|
||||||
|
|
||||||
|
### Patch Changes
|
||||||
|
|
||||||
|
- b8ac30b9: Migrated IonIcons replacer to a custom component
|
||||||
|
- b8ac30b9: Migrated to Ionic standalone components
|
||||||
|
|
||||||
|
Angular ESBuild will not work with `IonicModule` apps
|
||||||
|
|
||||||
|
- b8ac30b9: Migrated to Angular ESBuild
|
||||||
|
- Updated dependencies [c8e29020]
|
||||||
|
- @openstapps/api@4.0.0
|
||||||
|
- @openstapps/collection-utils@4.0.0
|
||||||
|
- @openstapps/core@4.0.0
|
||||||
|
|
||||||
## 3.3.5
|
## 3.3.5
|
||||||
|
|
||||||
### Patch Changes
|
### Patch Changes
|
||||||
|
|||||||
@@ -4,10 +4,10 @@
|
|||||||
FROM node:18-alpine3.18
|
FROM node:18-alpine3.18
|
||||||
|
|
||||||
WORKDIR /app
|
WORKDIR /app
|
||||||
COPY www/ /app/www
|
COPY www/browser /app/www/browser
|
||||||
COPY package.json /app
|
COPY package.json /app
|
||||||
|
|
||||||
EXPOSE 8100
|
EXPOSE 8100
|
||||||
|
|
||||||
RUN npm install -g http-server
|
RUN npm install -g http-server
|
||||||
CMD http-server www --p 8100
|
CMD http-server www/browser --p 8100
|
||||||
|
|||||||
@@ -2,13 +2,14 @@
|
|||||||
|
|
||||||
android {
|
android {
|
||||||
compileOptions {
|
compileOptions {
|
||||||
sourceCompatibility JavaVersion.VERSION_17
|
sourceCompatibility JavaVersion.VERSION_21
|
||||||
targetCompatibility JavaVersion.VERSION_17
|
targetCompatibility JavaVersion.VERSION_21
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
apply from: "../capacitor-cordova-android-plugins/cordova.variables.gradle"
|
apply from: "../capacitor-cordova-android-plugins/cordova.variables.gradle"
|
||||||
dependencies {
|
dependencies {
|
||||||
|
implementation project(':capacitor-community-in-app-review')
|
||||||
implementation project(':capacitor-community-screen-brightness')
|
implementation project(':capacitor-community-screen-brightness')
|
||||||
implementation project(':capacitor-app')
|
implementation project(':capacitor-app')
|
||||||
implementation project(':capacitor-browser')
|
implementation project(':capacitor-browser')
|
||||||
|
|||||||
@@ -1,4 +1,8 @@
|
|||||||
[
|
[
|
||||||
|
{
|
||||||
|
"pkg": "@capacitor-community/in-app-review",
|
||||||
|
"classpath": "com.getcapacitor.community.inappreview.InAppReviewPlugin"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"pkg": "@capacitor-community/screen-brightness",
|
"pkg": "@capacitor-community/screen-brightness",
|
||||||
"classpath": "com.elylucas.capscreenbrightness.ScreenBrightnessPlugin"
|
"classpath": "com.elylucas.capscreenbrightness.ScreenBrightnessPlugin"
|
||||||
|
|||||||
@@ -7,5 +7,6 @@
|
|||||||
<item name="android:statusBarColor">@color/colorPrimary</item>
|
<item name="android:statusBarColor">@color/colorPrimary</item>
|
||||||
<item name="android:windowBackground">@color/colorPrimary</item>
|
<item name="android:windowBackground">@color/colorPrimary</item>
|
||||||
<item name="android:navigationBarColor">@color/colorBackground</item>
|
<item name="android:navigationBarColor">@color/colorBackground</item>
|
||||||
|
<item name="android:windowOptOutEdgeToEdgeEnforcement" tools:targetApi="35">true</item>
|
||||||
</style>
|
</style>
|
||||||
</resources>
|
</resources>
|
||||||
|
|||||||
@@ -7,6 +7,7 @@
|
|||||||
<item name="colorPrimary">@color/colorPrimary</item>
|
<item name="colorPrimary">@color/colorPrimary</item>
|
||||||
<item name="colorPrimaryDark">@color/colorPrimaryDark</item>
|
<item name="colorPrimaryDark">@color/colorPrimaryDark</item>
|
||||||
<item name="colorAccent">@color/colorAccent</item>
|
<item name="colorAccent">@color/colorAccent</item>
|
||||||
|
<item name="android:windowOptOutEdgeToEdgeEnforcement" tools:targetApi="35">true</item>
|
||||||
</style>
|
</style>
|
||||||
|
|
||||||
<style name="AppTheme.NoActionBar" parent="Theme.AppCompat.DayNight.NoActionBar">
|
<style name="AppTheme.NoActionBar" parent="Theme.AppCompat.DayNight.NoActionBar">
|
||||||
@@ -17,6 +18,7 @@
|
|||||||
<item name="android:windowBackground">@color/colorPrimary</item>
|
<item name="android:windowBackground">@color/colorPrimary</item>
|
||||||
<item name="android:navigationBarColor">@color/colorBackground</item>
|
<item name="android:navigationBarColor">@color/colorBackground</item>
|
||||||
<item name="android:windowLightNavigationBar" tools:targetApi="27">true</item>
|
<item name="android:windowLightNavigationBar" tools:targetApi="27">true</item>
|
||||||
|
<item name="android:windowOptOutEdgeToEdgeEnforcement" tools:targetApi="35">true</item>
|
||||||
</style>
|
</style>
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -7,8 +7,8 @@ buildscript {
|
|||||||
mavenCentral()
|
mavenCentral()
|
||||||
}
|
}
|
||||||
dependencies {
|
dependencies {
|
||||||
classpath 'com.android.tools.build:gradle:8.2.1'
|
classpath 'com.android.tools.build:gradle:8.7.2'
|
||||||
classpath 'com.google.gms:google-services:4.4.0'
|
classpath 'com.google.gms:google-services:4.4.2'
|
||||||
|
|
||||||
// NOTE: Do not place your application dependencies here; they belong
|
// NOTE: Do not place your application dependencies here; they belong
|
||||||
// in the individual module build.gradle files
|
// in the individual module build.gradle files
|
||||||
|
|||||||
@@ -1,57 +1,60 @@
|
|||||||
// DO NOT EDIT THIS FILE! IT IS GENERATED EACH TIME "capacitor update" IS RUN
|
// DO NOT EDIT THIS FILE! IT IS GENERATED EACH TIME "capacitor update" IS RUN
|
||||||
include ':capacitor-android'
|
include ':capacitor-android'
|
||||||
project(':capacitor-android').projectDir = new File('../../../node_modules/.pnpm/@capacitor+android@6.1.1_@capacitor+core@6.1.1/node_modules/@capacitor/android/capacitor')
|
project(':capacitor-android').projectDir = new File('../../../node_modules/.pnpm/@capacitor+android@7.4.2_@capacitor+core@7.4.2/node_modules/@capacitor/android/capacitor')
|
||||||
|
|
||||||
|
include ':capacitor-community-in-app-review'
|
||||||
|
project(':capacitor-community-in-app-review').projectDir = new File('../../../node_modules/.pnpm/@capacitor-community+in-app-review@7.0.1_@capacitor+core@7.4.2/node_modules/@capacitor-community/in-app-review/android')
|
||||||
|
|
||||||
include ':capacitor-community-screen-brightness'
|
include ':capacitor-community-screen-brightness'
|
||||||
project(':capacitor-community-screen-brightness').projectDir = new File('../../../node_modules/.pnpm/@capacitor-community+screen-brightness@6.0.0_@capacitor+core@6.1.1/node_modules/@capacitor-community/screen-brightness/android')
|
project(':capacitor-community-screen-brightness').projectDir = new File('../../../node_modules/.pnpm/@capacitor-community+screen-brightness@7.0.0_@capacitor+core@7.4.2/node_modules/@capacitor-community/screen-brightness/android')
|
||||||
|
|
||||||
include ':capacitor-app'
|
include ':capacitor-app'
|
||||||
project(':capacitor-app').projectDir = new File('../../../node_modules/.pnpm/@capacitor+app@6.0.0_@capacitor+core@6.1.1/node_modules/@capacitor/app/android')
|
project(':capacitor-app').projectDir = new File('../../../node_modules/.pnpm/@capacitor+app@7.0.2_@capacitor+core@7.4.2/node_modules/@capacitor/app/android')
|
||||||
|
|
||||||
include ':capacitor-browser'
|
include ':capacitor-browser'
|
||||||
project(':capacitor-browser').projectDir = new File('../../../node_modules/.pnpm/@capacitor+browser@6.0.1_@capacitor+core@6.1.1/node_modules/@capacitor/browser/android')
|
project(':capacitor-browser').projectDir = new File('../../../node_modules/.pnpm/@capacitor+browser@7.0.2_@capacitor+core@7.4.2/node_modules/@capacitor/browser/android')
|
||||||
|
|
||||||
include ':capacitor-clipboard'
|
include ':capacitor-clipboard'
|
||||||
project(':capacitor-clipboard').projectDir = new File('../../../node_modules/.pnpm/@capacitor+clipboard@6.0.0_@capacitor+core@6.1.1/node_modules/@capacitor/clipboard/android')
|
project(':capacitor-clipboard').projectDir = new File('../../../node_modules/.pnpm/@capacitor+clipboard@7.0.2_@capacitor+core@7.4.2/node_modules/@capacitor/clipboard/android')
|
||||||
|
|
||||||
include ':capacitor-device'
|
include ':capacitor-device'
|
||||||
project(':capacitor-device').projectDir = new File('../../../node_modules/.pnpm/@capacitor+device@6.0.0_@capacitor+core@6.1.1/node_modules/@capacitor/device/android')
|
project(':capacitor-device').projectDir = new File('../../../node_modules/.pnpm/@capacitor+device@7.0.2_@capacitor+core@7.4.2/node_modules/@capacitor/device/android')
|
||||||
|
|
||||||
include ':capacitor-dialog'
|
include ':capacitor-dialog'
|
||||||
project(':capacitor-dialog').projectDir = new File('../../../node_modules/.pnpm/@capacitor+dialog@6.0.0_@capacitor+core@6.1.1/node_modules/@capacitor/dialog/android')
|
project(':capacitor-dialog').projectDir = new File('../../../node_modules/.pnpm/@capacitor+dialog@7.0.2_@capacitor+core@7.4.2/node_modules/@capacitor/dialog/android')
|
||||||
|
|
||||||
include ':capacitor-filesystem'
|
include ':capacitor-filesystem'
|
||||||
project(':capacitor-filesystem').projectDir = new File('../../../node_modules/.pnpm/@capacitor+filesystem@6.0.0_@capacitor+core@6.1.1/node_modules/@capacitor/filesystem/android')
|
project(':capacitor-filesystem').projectDir = new File('../../../node_modules/.pnpm/@capacitor+filesystem@7.1.4_@capacitor+core@7.4.2/node_modules/@capacitor/filesystem/android')
|
||||||
|
|
||||||
include ':capacitor-geolocation'
|
include ':capacitor-geolocation'
|
||||||
project(':capacitor-geolocation').projectDir = new File('../../../node_modules/.pnpm/@capacitor+geolocation@6.0.0_@capacitor+core@6.1.1/node_modules/@capacitor/geolocation/android')
|
project(':capacitor-geolocation').projectDir = new File('../../../node_modules/.pnpm/@capacitor+geolocation@7.1.5_@capacitor+core@7.4.2/node_modules/@capacitor/geolocation/android')
|
||||||
|
|
||||||
include ':capacitor-haptics'
|
include ':capacitor-haptics'
|
||||||
project(':capacitor-haptics').projectDir = new File('../../../node_modules/.pnpm/@capacitor+haptics@6.0.0_@capacitor+core@6.1.1/node_modules/@capacitor/haptics/android')
|
project(':capacitor-haptics').projectDir = new File('../../../node_modules/.pnpm/@capacitor+haptics@7.0.2_@capacitor+core@7.4.2/node_modules/@capacitor/haptics/android')
|
||||||
|
|
||||||
include ':capacitor-keyboard'
|
include ':capacitor-keyboard'
|
||||||
project(':capacitor-keyboard').projectDir = new File('../../../node_modules/.pnpm/@capacitor+keyboard@6.0.1_@capacitor+core@6.1.1/node_modules/@capacitor/keyboard/android')
|
project(':capacitor-keyboard').projectDir = new File('../../../node_modules/.pnpm/@capacitor+keyboard@7.0.2_@capacitor+core@7.4.2/node_modules/@capacitor/keyboard/android')
|
||||||
|
|
||||||
include ':capacitor-local-notifications'
|
include ':capacitor-local-notifications'
|
||||||
project(':capacitor-local-notifications').projectDir = new File('../../../node_modules/.pnpm/@capacitor+local-notifications@6.0.0_@capacitor+core@6.1.1/node_modules/@capacitor/local-notifications/android')
|
project(':capacitor-local-notifications').projectDir = new File('../../../node_modules/.pnpm/@capacitor+local-notifications@7.0.2_@capacitor+core@7.4.2/node_modules/@capacitor/local-notifications/android')
|
||||||
|
|
||||||
include ':capacitor-network'
|
include ':capacitor-network'
|
||||||
project(':capacitor-network').projectDir = new File('../../../node_modules/.pnpm/@capacitor+network@6.0.1_@capacitor+core@6.1.1/node_modules/@capacitor/network/android')
|
project(':capacitor-network').projectDir = new File('../../../node_modules/.pnpm/@capacitor+network@7.0.2_@capacitor+core@7.4.2/node_modules/@capacitor/network/android')
|
||||||
|
|
||||||
include ':capacitor-preferences'
|
include ':capacitor-preferences'
|
||||||
project(':capacitor-preferences').projectDir = new File('../../../node_modules/.pnpm/@capacitor+preferences@6.0.1_@capacitor+core@6.1.1/node_modules/@capacitor/preferences/android')
|
project(':capacitor-preferences').projectDir = new File('../../../node_modules/.pnpm/@capacitor+preferences@7.0.2_@capacitor+core@7.4.2/node_modules/@capacitor/preferences/android')
|
||||||
|
|
||||||
include ':capacitor-screen-orientation'
|
include ':capacitor-screen-orientation'
|
||||||
project(':capacitor-screen-orientation').projectDir = new File('../../../node_modules/.pnpm/@capacitor+screen-orientation@6.0.1_@capacitor+core@6.1.1/node_modules/@capacitor/screen-orientation/android')
|
project(':capacitor-screen-orientation').projectDir = new File('../../../node_modules/.pnpm/@capacitor+screen-orientation@7.0.2_@capacitor+core@7.4.2/node_modules/@capacitor/screen-orientation/android')
|
||||||
|
|
||||||
include ':capacitor-share'
|
include ':capacitor-share'
|
||||||
project(':capacitor-share').projectDir = new File('../../../node_modules/.pnpm/@capacitor+share@6.0.1_@capacitor+core@6.1.1/node_modules/@capacitor/share/android')
|
project(':capacitor-share').projectDir = new File('../../../node_modules/.pnpm/@capacitor+share@7.0.2_@capacitor+core@7.4.2/node_modules/@capacitor/share/android')
|
||||||
|
|
||||||
include ':capacitor-splash-screen'
|
include ':capacitor-splash-screen'
|
||||||
project(':capacitor-splash-screen').projectDir = new File('../../../node_modules/.pnpm/@capacitor+splash-screen@6.0.1_@capacitor+core@6.1.1/node_modules/@capacitor/splash-screen/android')
|
project(':capacitor-splash-screen').projectDir = new File('../../../node_modules/.pnpm/@capacitor+splash-screen@7.0.2_@capacitor+core@7.4.2/node_modules/@capacitor/splash-screen/android')
|
||||||
|
|
||||||
include ':transistorsoft-capacitor-background-fetch'
|
include ':transistorsoft-capacitor-background-fetch'
|
||||||
project(':transistorsoft-capacitor-background-fetch').projectDir = new File('../../../node_modules/.pnpm/@transistorsoft+capacitor-background-fetch@5.2.0_@capacitor+core@6.1.1/node_modules/@transistorsoft/capacitor-background-fetch/android')
|
project(':transistorsoft-capacitor-background-fetch').projectDir = new File('../../../node_modules/.pnpm/@transistorsoft+capacitor-background-fetch@7.1.0_@capacitor+core@7.4.2/node_modules/@transistorsoft/capacitor-background-fetch/android')
|
||||||
|
|
||||||
include ':capacitor-secure-storage-plugin'
|
include ':capacitor-secure-storage-plugin'
|
||||||
project(':capacitor-secure-storage-plugin').projectDir = new File('../../../node_modules/.pnpm/capacitor-secure-storage-plugin@0.9.0_@capacitor+core@6.1.1/node_modules/capacitor-secure-storage-plugin/android')
|
project(':capacitor-secure-storage-plugin').projectDir = new File('../../../node_modules/.pnpm/capacitor-secure-storage-plugin@0.11.0_@capacitor+core@7.4.2/node_modules/capacitor-secure-storage-plugin/android')
|
||||||
|
|||||||
Binary file not shown.
@@ -1,6 +1,7 @@
|
|||||||
distributionBase=GRADLE_USER_HOME
|
distributionBase=GRADLE_USER_HOME
|
||||||
distributionPath=wrapper/dists
|
distributionPath=wrapper/dists
|
||||||
distributionUrl=https\://services.gradle.org/distributions/gradle-8.2.1-all.zip
|
distributionUrl=https\://services.gradle.org/distributions/gradle-8.11.1-all.zip
|
||||||
networkTimeout=10000
|
networkTimeout=10000
|
||||||
|
validateDistributionUrl=true
|
||||||
zipStoreBase=GRADLE_USER_HOME
|
zipStoreBase=GRADLE_USER_HOME
|
||||||
zipStorePath=wrapper/dists
|
zipStorePath=wrapper/dists
|
||||||
|
|||||||
34
frontend/app/android/gradlew
vendored
34
frontend/app/android/gradlew
vendored
@@ -15,6 +15,8 @@
|
|||||||
# See the License for the specific language governing permissions and
|
# See the License for the specific language governing permissions and
|
||||||
# limitations under the License.
|
# limitations under the License.
|
||||||
#
|
#
|
||||||
|
# SPDX-License-Identifier: Apache-2.0
|
||||||
|
#
|
||||||
|
|
||||||
##############################################################################
|
##############################################################################
|
||||||
#
|
#
|
||||||
@@ -55,7 +57,7 @@
|
|||||||
# Darwin, MinGW, and NonStop.
|
# Darwin, MinGW, and NonStop.
|
||||||
#
|
#
|
||||||
# (3) This script is generated from the Groovy template
|
# (3) This script is generated from the Groovy template
|
||||||
# https://github.com/gradle/gradle/blob/HEAD/subprojects/plugins/src/main/resources/org/gradle/api/internal/plugins/unixStartScript.txt
|
# https://github.com/gradle/gradle/blob/HEAD/platforms/jvm/plugins-application/src/main/resources/org/gradle/api/internal/plugins/unixStartScript.txt
|
||||||
# within the Gradle project.
|
# within the Gradle project.
|
||||||
#
|
#
|
||||||
# You can find Gradle at https://github.com/gradle/gradle/.
|
# You can find Gradle at https://github.com/gradle/gradle/.
|
||||||
@@ -83,10 +85,9 @@ done
|
|||||||
# This is normally unused
|
# This is normally unused
|
||||||
# shellcheck disable=SC2034
|
# shellcheck disable=SC2034
|
||||||
APP_BASE_NAME=${0##*/}
|
APP_BASE_NAME=${0##*/}
|
||||||
APP_HOME=$( cd "${APP_HOME:-./}" && pwd -P ) || exit
|
# Discard cd standard output in case $CDPATH is set (https://github.com/gradle/gradle/issues/25036)
|
||||||
|
APP_HOME=$( cd -P "${APP_HOME:-./}" > /dev/null && printf '%s
|
||||||
# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
|
' "$PWD" ) || exit
|
||||||
DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"'
|
|
||||||
|
|
||||||
# Use the maximum available, or set MAX_FD != -1 to use that value.
|
# Use the maximum available, or set MAX_FD != -1 to use that value.
|
||||||
MAX_FD=maximum
|
MAX_FD=maximum
|
||||||
@@ -133,10 +134,13 @@ location of your Java installation."
|
|||||||
fi
|
fi
|
||||||
else
|
else
|
||||||
JAVACMD=java
|
JAVACMD=java
|
||||||
which java >/dev/null 2>&1 || die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
|
if ! command -v java >/dev/null 2>&1
|
||||||
|
then
|
||||||
|
die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
|
||||||
|
|
||||||
Please set the JAVA_HOME variable in your environment to match the
|
Please set the JAVA_HOME variable in your environment to match the
|
||||||
location of your Java installation."
|
location of your Java installation."
|
||||||
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# Increase the maximum file descriptors if we can.
|
# Increase the maximum file descriptors if we can.
|
||||||
@@ -144,7 +148,7 @@ if ! "$cygwin" && ! "$darwin" && ! "$nonstop" ; then
|
|||||||
case $MAX_FD in #(
|
case $MAX_FD in #(
|
||||||
max*)
|
max*)
|
||||||
# In POSIX sh, ulimit -H is undefined. That's why the result is checked to see if it worked.
|
# In POSIX sh, ulimit -H is undefined. That's why the result is checked to see if it worked.
|
||||||
# shellcheck disable=SC3045
|
# shellcheck disable=SC2039,SC3045
|
||||||
MAX_FD=$( ulimit -H -n ) ||
|
MAX_FD=$( ulimit -H -n ) ||
|
||||||
warn "Could not query maximum file descriptor limit"
|
warn "Could not query maximum file descriptor limit"
|
||||||
esac
|
esac
|
||||||
@@ -152,7 +156,7 @@ if ! "$cygwin" && ! "$darwin" && ! "$nonstop" ; then
|
|||||||
'' | soft) :;; #(
|
'' | soft) :;; #(
|
||||||
*)
|
*)
|
||||||
# In POSIX sh, ulimit -n is undefined. That's why the result is checked to see if it worked.
|
# In POSIX sh, ulimit -n is undefined. That's why the result is checked to see if it worked.
|
||||||
# shellcheck disable=SC3045
|
# shellcheck disable=SC2039,SC3045
|
||||||
ulimit -n "$MAX_FD" ||
|
ulimit -n "$MAX_FD" ||
|
||||||
warn "Could not set maximum file descriptor limit to $MAX_FD"
|
warn "Could not set maximum file descriptor limit to $MAX_FD"
|
||||||
esac
|
esac
|
||||||
@@ -197,11 +201,15 @@ if "$cygwin" || "$msys" ; then
|
|||||||
done
|
done
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# Collect all arguments for the java command;
|
|
||||||
# * $DEFAULT_JVM_OPTS, $JAVA_OPTS, and $GRADLE_OPTS can contain fragments of
|
# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
|
||||||
# shell script including quotes and variable substitutions, so put them in
|
DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"'
|
||||||
# double quotes to make sure that they get re-expanded; and
|
|
||||||
# * put everything else in single quotes, so that it's not re-expanded.
|
# Collect all arguments for the java command:
|
||||||
|
# * DEFAULT_JVM_OPTS, JAVA_OPTS, JAVA_OPTS, and optsEnvironmentVar are not allowed to contain shell fragments,
|
||||||
|
# and any embedded shellness will be escaped.
|
||||||
|
# * For example: A user cannot expect ${Hostname} to be expanded, as it is an environment variable and will be
|
||||||
|
# treated as '${Hostname}' itself on the command line.
|
||||||
|
|
||||||
set -- \
|
set -- \
|
||||||
"-Dorg.gradle.appname=$APP_BASE_NAME" \
|
"-Dorg.gradle.appname=$APP_BASE_NAME" \
|
||||||
|
|||||||
22
frontend/app/android/gradlew.bat
vendored
22
frontend/app/android/gradlew.bat
vendored
@@ -13,6 +13,8 @@
|
|||||||
@rem See the License for the specific language governing permissions and
|
@rem See the License for the specific language governing permissions and
|
||||||
@rem limitations under the License.
|
@rem limitations under the License.
|
||||||
@rem
|
@rem
|
||||||
|
@rem SPDX-License-Identifier: Apache-2.0
|
||||||
|
@rem
|
||||||
|
|
||||||
@if "%DEBUG%"=="" @echo off
|
@if "%DEBUG%"=="" @echo off
|
||||||
@rem ##########################################################################
|
@rem ##########################################################################
|
||||||
@@ -43,11 +45,11 @@ set JAVA_EXE=java.exe
|
|||||||
%JAVA_EXE% -version >NUL 2>&1
|
%JAVA_EXE% -version >NUL 2>&1
|
||||||
if %ERRORLEVEL% equ 0 goto execute
|
if %ERRORLEVEL% equ 0 goto execute
|
||||||
|
|
||||||
echo.
|
echo. 1>&2
|
||||||
echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
|
echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. 1>&2
|
||||||
echo.
|
echo. 1>&2
|
||||||
echo Please set the JAVA_HOME variable in your environment to match the
|
echo Please set the JAVA_HOME variable in your environment to match the 1>&2
|
||||||
echo location of your Java installation.
|
echo location of your Java installation. 1>&2
|
||||||
|
|
||||||
goto fail
|
goto fail
|
||||||
|
|
||||||
@@ -57,11 +59,11 @@ set JAVA_EXE=%JAVA_HOME%/bin/java.exe
|
|||||||
|
|
||||||
if exist "%JAVA_EXE%" goto execute
|
if exist "%JAVA_EXE%" goto execute
|
||||||
|
|
||||||
echo.
|
echo. 1>&2
|
||||||
echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME%
|
echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME% 1>&2
|
||||||
echo.
|
echo. 1>&2
|
||||||
echo Please set the JAVA_HOME variable in your environment to match the
|
echo Please set the JAVA_HOME variable in your environment to match the 1>&2
|
||||||
echo location of your Java installation.
|
echo location of your Java installation. 1>&2
|
||||||
|
|
||||||
goto fail
|
goto fail
|
||||||
|
|
||||||
|
|||||||
@@ -1,16 +1,16 @@
|
|||||||
ext {
|
ext {
|
||||||
minSdkVersion = 22
|
minSdkVersion = 23
|
||||||
compileSdkVersion = 34
|
compileSdkVersion = 35
|
||||||
targetSdkVersion = 34
|
targetSdkVersion = 35
|
||||||
androidxActivityVersion = '1.8.0'
|
androidxActivityVersion = '1.9.2'
|
||||||
androidxAppCompatVersion = '1.6.1'
|
androidxAppCompatVersion = '1.7.0'
|
||||||
androidxCoordinatorLayoutVersion = '1.2.0'
|
androidxCoordinatorLayoutVersion = '1.2.0'
|
||||||
androidxCoreVersion = '1.12.0'
|
androidxCoreVersion = '1.15.0'
|
||||||
androidxFragmentVersion = '1.6.2'
|
androidxFragmentVersion = '1.8.4'
|
||||||
coreSplashScreenVersion = '1.0.1'
|
coreSplashScreenVersion = '1.0.1'
|
||||||
androidxWebkitVersion = '1.9.0'
|
androidxWebkitVersion = '1.12.1'
|
||||||
junitVersion = '4.13.2'
|
junitVersion = '4.13.2'
|
||||||
androidxJunitVersion = '1.1.5'
|
androidxJunitVersion = '1.2.1'
|
||||||
androidxEspressoCoreVersion = '3.5.1'
|
androidxEspressoCoreVersion = '3.6.1'
|
||||||
cordovaAndroidVersion = '10.1.1'
|
cordovaAndroidVersion = '10.1.1'
|
||||||
}
|
}
|
||||||
@@ -11,12 +11,12 @@
|
|||||||
"schematics": {},
|
"schematics": {},
|
||||||
"architect": {
|
"architect": {
|
||||||
"build": {
|
"build": {
|
||||||
"builder": "@angular-devkit/build-angular:browser",
|
"builder": "@angular-devkit/build-angular:application",
|
||||||
"options": {
|
"options": {
|
||||||
"outputPath": "www",
|
"outputPath": "www",
|
||||||
"index": "src/index.html",
|
"index": "src/index.html",
|
||||||
"main": "src/main.ts",
|
"browser": "src/main.ts",
|
||||||
"polyfills": "zone.js",
|
"polyfills": ["zone.js", "src/ion-icons.js"],
|
||||||
"tsConfig": "tsconfig.app.json",
|
"tsConfig": "tsconfig.app.json",
|
||||||
"allowedCommonJsDependencies": [
|
"allowedCommonJsDependencies": [
|
||||||
"moment",
|
"moment",
|
||||||
@@ -72,9 +72,7 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"development": {
|
"development": {
|
||||||
"buildOptimizer": false,
|
|
||||||
"optimization": false,
|
"optimization": false,
|
||||||
"vendorChunk": true,
|
|
||||||
"extractLicenses": false,
|
"extractLicenses": false,
|
||||||
"sourceMap": true,
|
"sourceMap": true,
|
||||||
"namedChunks": true
|
"namedChunks": true
|
||||||
|
|||||||
@@ -3,7 +3,7 @@ import {CapacitorConfig} from '@capacitor/cli';
|
|||||||
const config: CapacitorConfig = {
|
const config: CapacitorConfig = {
|
||||||
appId: 'de.anyschool.app',
|
appId: 'de.anyschool.app',
|
||||||
appName: 'StApps',
|
appName: 'StApps',
|
||||||
webDir: 'www',
|
webDir: 'www/browser',
|
||||||
cordova: {
|
cordova: {
|
||||||
preferences: {
|
preferences: {
|
||||||
'AndroidXEnabled': 'true',
|
'AndroidXEnabled': 'true',
|
||||||
|
|||||||
@@ -22,6 +22,7 @@ export default defineConfig({
|
|||||||
mochaFile: 'coverage/integration-report-junit-[hash].xml',
|
mochaFile: 'coverage/integration-report-junit-[hash].xml',
|
||||||
},
|
},
|
||||||
baseUrl: 'http://localhost:4200',
|
baseUrl: 'http://localhost:4200',
|
||||||
|
injectDocumentDomain: true,
|
||||||
supportFile: 'cypress/support/index.ts',
|
supportFile: 'cypress/support/index.ts',
|
||||||
videosFolder: 'cypress/videos',
|
videosFolder: 'cypress/videos',
|
||||||
screenshotsFolder: 'cypress/screenshots',
|
screenshotsFolder: 'cypress/screenshots',
|
||||||
|
|||||||
@@ -299,7 +299,7 @@
|
|||||||
"icon": "school",
|
"icon": "school",
|
||||||
"items": [
|
"items": [
|
||||||
{
|
{
|
||||||
"icon": "grade",
|
"icon": "star",
|
||||||
"route": "/favorites",
|
"route": "/favorites",
|
||||||
"title": "favorites",
|
"title": "favorites",
|
||||||
"translations": {
|
"translations": {
|
||||||
|
|||||||
@@ -14,6 +14,8 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
describe('context menu', function () {
|
describe('context menu', function () {
|
||||||
|
const contextMenuSelector = 'stapps-context-menu-modal';
|
||||||
|
|
||||||
beforeEach(function () {
|
beforeEach(function () {
|
||||||
cy.interceptSearch({
|
cy.interceptSearch({
|
||||||
extends: {query: 'a'},
|
extends: {query: 'a'},
|
||||||
@@ -29,25 +31,25 @@ describe('context menu', function () {
|
|||||||
cy.patchSearchPage();
|
cy.patchSearchPage();
|
||||||
cy.get('ion-searchbar').type('a');
|
cy.get('ion-searchbar').type('a');
|
||||||
cy.wait('@search');
|
cy.wait('@search');
|
||||||
cy.get('ion-searchbar > ion-menu-button').click();
|
cy.get('ion-toolbar > ion-menu-button').click();
|
||||||
});
|
});
|
||||||
|
|
||||||
it('should sort', function () {
|
it('should sort', function () {
|
||||||
cy.get('stapps-context').within(() => {
|
cy.get(contextMenuSelector).within(() => {
|
||||||
cy.contains('ion-item', 'Name').click();
|
cy.contains('ion-item', 'Name').click();
|
||||||
cy.wait('@search');
|
cy.wait('@search');
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
it('should filter', function () {
|
it('should filter', function () {
|
||||||
cy.get('stapps-context').within(() => {
|
cy.get(contextMenuSelector).within(() => {
|
||||||
cy.contains('ion-item', '(17) Akademische Veranstaltung').click();
|
cy.contains('ion-item', '(17) Akademische Veranstaltung').click();
|
||||||
cy.wait('@search');
|
cy.wait('@search');
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
it('should have a working delete button', function () {
|
it('should have a working delete button', function () {
|
||||||
cy.get('stapps-context').within(() => {
|
cy.get(contextMenuSelector).within(() => {
|
||||||
cy.contains('ion-item', '(17) Akademische Veranstaltung').click();
|
cy.contains('ion-item', '(17) Akademische Veranstaltung').click();
|
||||||
|
|
||||||
cy.get('.checkbox-checked').should('have.length', 1);
|
cy.get('.checkbox-checked').should('have.length', 1);
|
||||||
@@ -60,7 +62,7 @@ describe('context menu', function () {
|
|||||||
it('should truncate long category items', function () {
|
it('should truncate long category items', function () {
|
||||||
cy.contains('ion-list', 'Akademische Veranstaltung / Kategorien').within(() => {
|
cy.contains('ion-list', 'Akademische Veranstaltung / Kategorien').within(() => {
|
||||||
cy.contains('ion-item', '(1) Tutorium').should('not.exist');
|
cy.contains('ion-item', '(1) Tutorium').should('not.exist');
|
||||||
cy.get('div > ion-button').click();
|
cy.get('ion-button').click();
|
||||||
cy.contains('ion-item', '(1) Tutorium').should('exist');
|
cy.contains('ion-item', '(1) Tutorium').should('exist');
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|||||||
@@ -33,9 +33,9 @@ describe('dashboard', async function () {
|
|||||||
describe('schedule section', function () {
|
describe('schedule section', function () {
|
||||||
it('should lead to the week overview', function () {
|
it('should lead to the week overview', function () {
|
||||||
cy.get('.schedule')
|
cy.get('.schedule')
|
||||||
.contains('a', /Wochen.*übersicht/)
|
.contains('a', /Wochen.*ansicht/)
|
||||||
.click();
|
.click();
|
||||||
cy.url().should('include', '/schedule/week-overview');
|
cy.url().should('include', '/schedule/weekly-view');
|
||||||
});
|
});
|
||||||
|
|
||||||
it('should lead to the calendar', function () {
|
it('should lead to the calendar', function () {
|
||||||
|
|||||||
@@ -100,7 +100,7 @@ describe('schedule', function () {
|
|||||||
cy.get('ion-searchbar').click().type('a');
|
cy.get('ion-searchbar').click().type('a');
|
||||||
cy.wait('@search');
|
cy.wait('@search');
|
||||||
cy.wait('@chips');
|
cy.wait('@chips');
|
||||||
cy.wait(200);
|
cy.wait(1000);
|
||||||
cy.contains('ion-item', 'UNIcert (Test)')
|
cy.contains('ion-item', 'UNIcert (Test)')
|
||||||
.contains('stapps-add-event-action-chip', 'Termine Auswählen')
|
.contains('stapps-add-event-action-chip', 'Termine Auswählen')
|
||||||
.click();
|
.click();
|
||||||
|
|||||||
@@ -16,7 +16,8 @@
|
|||||||
/* eslint-disable @typescript-eslint/no-explicit-any */
|
/* eslint-disable @typescript-eslint/no-explicit-any */
|
||||||
import equal from 'fast-deep-equal';
|
import equal from 'fast-deep-equal';
|
||||||
import {extendsDeepEqual} from '@openstapps/collection-utils';
|
import {extendsDeepEqual} from '@openstapps/collection-utils';
|
||||||
import {SCSearchRequest, SCSearchResponse} from '@openstapps/core';
|
import {CORE_VERSION, SCIndexResponse, SCSearchRequest, SCSearchResponse} from '@openstapps/core';
|
||||||
|
import * as defaultConfig from '../../fixtures/config/default-config.json';
|
||||||
|
|
||||||
type InterceptArguments = {
|
type InterceptArguments = {
|
||||||
fixture?: string | SCSearchResponse | ((request: SCSearchRequest) => SCSearchResponse);
|
fixture?: string | SCSearchResponse | ((request: SCSearchRequest) => SCSearchResponse);
|
||||||
@@ -34,7 +35,12 @@ type InterceptArguments = {
|
|||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
export function interceptConfig(config?: string) {
|
export function interceptConfig(config?: string) {
|
||||||
cy.intercept({url: '/', method: 'POST'}, {fixture: config || 'config/default-config.json'}).as('config');
|
let localConfig: SCIndexResponse = defaultConfig as unknown as SCIndexResponse;
|
||||||
|
localConfig.backend.SCVersion = CORE_VERSION;
|
||||||
|
cy.intercept(
|
||||||
|
{url: '/', method: 'POST'},
|
||||||
|
config ? {fixture: config} : {body: JSON.stringify(localConfig)},
|
||||||
|
).as('config');
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|||||||
@@ -20,7 +20,7 @@ const config = {
|
|||||||
htmlGlob: 'src/**/*.html',
|
htmlGlob: 'src/**/*.html',
|
||||||
scriptGlob: 'src/**/*.ts',
|
scriptGlob: 'src/**/*.ts',
|
||||||
additionalIcons: {
|
additionalIcons: {
|
||||||
about: ['copyright', 'campaign', 'policy', 'description', 'text_snippet'],
|
about: ['copyright', 'campaign', 'policy', 'description', 'text_snippet', 'expand_more', 'expand_all'],
|
||||||
navigation: [
|
navigation: [
|
||||||
'home',
|
'home',
|
||||||
'newspaper',
|
'newspaper',
|
||||||
@@ -30,7 +30,7 @@ const config = {
|
|||||||
'local_library',
|
'local_library',
|
||||||
'inventory_2',
|
'inventory_2',
|
||||||
'map',
|
'map',
|
||||||
'grade',
|
'star',
|
||||||
'account_circle',
|
'account_circle',
|
||||||
'settings',
|
'settings',
|
||||||
'info',
|
'info',
|
||||||
|
|||||||
@@ -1,11 +1,11 @@
|
|||||||
#!/usr/bin/env bash
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
rm coverage/integration-report-junit-*.xml
|
rm coverage/integration-report-junit-*.xml || true
|
||||||
|
|
||||||
ng e2e --watch=false --headless=true --browser="$BROWSER"
|
ng e2e --watch=false --headless=true --browser="$BROWSER"
|
||||||
exit_code=$?
|
exit_code=$?
|
||||||
|
|
||||||
jrm coverage/integration-report-junit.xml coverage/integration-report-junit-*.xml
|
jrm coverage/integration-report-junit.xml coverage/integration-report-junit-*.xml || true
|
||||||
rm coverage/integration-report-junit-*.xml
|
rm coverage/integration-report-junit-*.xml || true
|
||||||
|
|
||||||
exit $exit_code
|
exit $exit_code
|
||||||
|
|||||||
@@ -109,6 +109,7 @@
|
|||||||
504EC3011FED79650016851F /* Frameworks */,
|
504EC3011FED79650016851F /* Frameworks */,
|
||||||
504EC3021FED79650016851F /* Resources */,
|
504EC3021FED79650016851F /* Resources */,
|
||||||
F40DBF7576173B02228B7A71 /* [CP] Embed Pods Frameworks */,
|
F40DBF7576173B02228B7A71 /* [CP] Embed Pods Frameworks */,
|
||||||
|
2D217985258DD775FC9B6A72 /* [CP] Copy Pods Resources */,
|
||||||
);
|
);
|
||||||
buildRules = (
|
buildRules = (
|
||||||
);
|
);
|
||||||
@@ -170,6 +171,21 @@
|
|||||||
/* End PBXResourcesBuildPhase section */
|
/* End PBXResourcesBuildPhase section */
|
||||||
|
|
||||||
/* Begin PBXShellScriptBuildPhase section */
|
/* Begin PBXShellScriptBuildPhase section */
|
||||||
|
2D217985258DD775FC9B6A72 /* [CP] Copy Pods Resources */ = {
|
||||||
|
isa = PBXShellScriptBuildPhase;
|
||||||
|
buildActionMask = 2147483647;
|
||||||
|
files = (
|
||||||
|
);
|
||||||
|
inputPaths = (
|
||||||
|
);
|
||||||
|
name = "[CP] Copy Pods Resources";
|
||||||
|
outputPaths = (
|
||||||
|
);
|
||||||
|
runOnlyForDeploymentPostprocessing = 0;
|
||||||
|
shellPath = /bin/sh;
|
||||||
|
shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-App/Pods-App-resources.sh\"\n";
|
||||||
|
showEnvVarsInLog = 0;
|
||||||
|
};
|
||||||
947055B15D65E7FC3ADB1FEB /* [CP] Check Pods Manifest.lock */ = {
|
947055B15D65E7FC3ADB1FEB /* [CP] Check Pods Manifest.lock */ = {
|
||||||
isa = PBXShellScriptBuildPhase;
|
isa = PBXShellScriptBuildPhase;
|
||||||
buildActionMask = 2147483647;
|
buildActionMask = 2147483647;
|
||||||
@@ -288,7 +304,7 @@
|
|||||||
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
|
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
|
||||||
GCC_WARN_UNUSED_FUNCTION = YES;
|
GCC_WARN_UNUSED_FUNCTION = YES;
|
||||||
GCC_WARN_UNUSED_VARIABLE = YES;
|
GCC_WARN_UNUSED_VARIABLE = YES;
|
||||||
IPHONEOS_DEPLOYMENT_TARGET = 13.0;
|
IPHONEOS_DEPLOYMENT_TARGET = 14.0;
|
||||||
MTL_ENABLE_DEBUG_INFO = YES;
|
MTL_ENABLE_DEBUG_INFO = YES;
|
||||||
ONLY_ACTIVE_ARCH = YES;
|
ONLY_ACTIVE_ARCH = YES;
|
||||||
SDKROOT = iphoneos;
|
SDKROOT = iphoneos;
|
||||||
@@ -339,7 +355,7 @@
|
|||||||
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
|
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
|
||||||
GCC_WARN_UNUSED_FUNCTION = YES;
|
GCC_WARN_UNUSED_FUNCTION = YES;
|
||||||
GCC_WARN_UNUSED_VARIABLE = YES;
|
GCC_WARN_UNUSED_VARIABLE = YES;
|
||||||
IPHONEOS_DEPLOYMENT_TARGET = 13.0;
|
IPHONEOS_DEPLOYMENT_TARGET = 14.0;
|
||||||
MTL_ENABLE_DEBUG_INFO = NO;
|
MTL_ENABLE_DEBUG_INFO = NO;
|
||||||
SDKROOT = iphoneos;
|
SDKROOT = iphoneos;
|
||||||
SWIFT_OPTIMIZATION_LEVEL = "-Owholemodule";
|
SWIFT_OPTIMIZATION_LEVEL = "-Owholemodule";
|
||||||
@@ -357,7 +373,7 @@
|
|||||||
CODE_SIGN_STYLE = Automatic;
|
CODE_SIGN_STYLE = Automatic;
|
||||||
DEVELOPMENT_TEAM = YSGS9WV338;
|
DEVELOPMENT_TEAM = YSGS9WV338;
|
||||||
INFOPLIST_FILE = App/Info.plist;
|
INFOPLIST_FILE = App/Info.plist;
|
||||||
IPHONEOS_DEPLOYMENT_TARGET = 13.0;
|
IPHONEOS_DEPLOYMENT_TARGET = 14.0;
|
||||||
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks";
|
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks";
|
||||||
OTHER_SWIFT_FLAGS = "$(inherited) \"-D\" \"COCOAPODS\" \"-DDEBUG\"";
|
OTHER_SWIFT_FLAGS = "$(inherited) \"-D\" \"COCOAPODS\" \"-DDEBUG\"";
|
||||||
PRODUCT_BUNDLE_IDENTIFIER = de.openstapps.app;
|
PRODUCT_BUNDLE_IDENTIFIER = de.openstapps.app;
|
||||||
@@ -379,7 +395,7 @@
|
|||||||
CODE_SIGN_STYLE = Automatic;
|
CODE_SIGN_STYLE = Automatic;
|
||||||
DEVELOPMENT_TEAM = YSGS9WV338;
|
DEVELOPMENT_TEAM = YSGS9WV338;
|
||||||
INFOPLIST_FILE = App/Info.plist;
|
INFOPLIST_FILE = App/Info.plist;
|
||||||
IPHONEOS_DEPLOYMENT_TARGET = 13.0;
|
IPHONEOS_DEPLOYMENT_TARGET = 14.0;
|
||||||
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks";
|
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks";
|
||||||
PRODUCT_BUNDLE_IDENTIFIER = de.openstapps.app;
|
PRODUCT_BUNDLE_IDENTIFIER = de.openstapps.app;
|
||||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
require_relative '../../../../node_modules/.pnpm/@capacitor+ios@6.1.1_@capacitor+core@6.1.1/node_modules/@capacitor/ios/scripts/pods_helpers'
|
require_relative '../../../../node_modules/.pnpm/@capacitor+ios@7.4.2_@capacitor+core@7.4.2/node_modules/@capacitor/ios/scripts/pods_helpers'
|
||||||
|
|
||||||
platform :ios, '13.0'
|
platform :ios, '14.0'
|
||||||
use_frameworks!
|
use_frameworks!
|
||||||
|
|
||||||
# workaround to avoid Xcode caching of Pods that requires
|
# workaround to avoid Xcode caching of Pods that requires
|
||||||
@@ -9,26 +9,27 @@ use_frameworks!
|
|||||||
install! 'cocoapods', :disable_input_output_paths => true
|
install! 'cocoapods', :disable_input_output_paths => true
|
||||||
|
|
||||||
def capacitor_pods
|
def capacitor_pods
|
||||||
pod 'Capacitor', :path => '../../../../node_modules/.pnpm/@capacitor+ios@6.1.1_@capacitor+core@6.1.1/node_modules/@capacitor/ios'
|
pod 'Capacitor', :path => '../../../../node_modules/.pnpm/@capacitor+ios@7.4.2_@capacitor+core@7.4.2/node_modules/@capacitor/ios'
|
||||||
pod 'CapacitorCordova', :path => '../../../../node_modules/.pnpm/@capacitor+ios@6.1.1_@capacitor+core@6.1.1/node_modules/@capacitor/ios'
|
pod 'CapacitorCordova', :path => '../../../../node_modules/.pnpm/@capacitor+ios@7.4.2_@capacitor+core@7.4.2/node_modules/@capacitor/ios'
|
||||||
pod 'CapacitorCommunityScreenBrightness', :path => '../../../../node_modules/.pnpm/@capacitor-community+screen-brightness@6.0.0_@capacitor+core@6.1.1/node_modules/@capacitor-community/screen-brightness'
|
pod 'CapacitorCommunityInAppReview', :path => '../../../../node_modules/.pnpm/@capacitor-community+in-app-review@7.0.1_@capacitor+core@7.4.2/node_modules/@capacitor-community/in-app-review'
|
||||||
pod 'CapacitorApp', :path => '../../../../node_modules/.pnpm/@capacitor+app@6.0.0_@capacitor+core@6.1.1/node_modules/@capacitor/app'
|
pod 'CapacitorCommunityScreenBrightness', :path => '../../../../node_modules/.pnpm/@capacitor-community+screen-brightness@7.0.0_@capacitor+core@7.4.2/node_modules/@capacitor-community/screen-brightness'
|
||||||
pod 'CapacitorBrowser', :path => '../../../../node_modules/.pnpm/@capacitor+browser@6.0.1_@capacitor+core@6.1.1/node_modules/@capacitor/browser'
|
pod 'CapacitorApp', :path => '../../../../node_modules/.pnpm/@capacitor+app@7.0.2_@capacitor+core@7.4.2/node_modules/@capacitor/app'
|
||||||
pod 'CapacitorClipboard', :path => '../../../../node_modules/.pnpm/@capacitor+clipboard@6.0.0_@capacitor+core@6.1.1/node_modules/@capacitor/clipboard'
|
pod 'CapacitorBrowser', :path => '../../../../node_modules/.pnpm/@capacitor+browser@7.0.2_@capacitor+core@7.4.2/node_modules/@capacitor/browser'
|
||||||
pod 'CapacitorDevice', :path => '../../../../node_modules/.pnpm/@capacitor+device@6.0.0_@capacitor+core@6.1.1/node_modules/@capacitor/device'
|
pod 'CapacitorClipboard', :path => '../../../../node_modules/.pnpm/@capacitor+clipboard@7.0.2_@capacitor+core@7.4.2/node_modules/@capacitor/clipboard'
|
||||||
pod 'CapacitorDialog', :path => '../../../../node_modules/.pnpm/@capacitor+dialog@6.0.0_@capacitor+core@6.1.1/node_modules/@capacitor/dialog'
|
pod 'CapacitorDevice', :path => '../../../../node_modules/.pnpm/@capacitor+device@7.0.2_@capacitor+core@7.4.2/node_modules/@capacitor/device'
|
||||||
pod 'CapacitorFilesystem', :path => '../../../../node_modules/.pnpm/@capacitor+filesystem@6.0.0_@capacitor+core@6.1.1/node_modules/@capacitor/filesystem'
|
pod 'CapacitorDialog', :path => '../../../../node_modules/.pnpm/@capacitor+dialog@7.0.2_@capacitor+core@7.4.2/node_modules/@capacitor/dialog'
|
||||||
pod 'CapacitorGeolocation', :path => '../../../../node_modules/.pnpm/@capacitor+geolocation@6.0.0_@capacitor+core@6.1.1/node_modules/@capacitor/geolocation'
|
pod 'CapacitorFilesystem', :path => '../../../../node_modules/.pnpm/@capacitor+filesystem@7.1.4_@capacitor+core@7.4.2/node_modules/@capacitor/filesystem'
|
||||||
pod 'CapacitorHaptics', :path => '../../../../node_modules/.pnpm/@capacitor+haptics@6.0.0_@capacitor+core@6.1.1/node_modules/@capacitor/haptics'
|
pod 'CapacitorGeolocation', :path => '../../../../node_modules/.pnpm/@capacitor+geolocation@7.1.5_@capacitor+core@7.4.2/node_modules/@capacitor/geolocation'
|
||||||
pod 'CapacitorKeyboard', :path => '../../../../node_modules/.pnpm/@capacitor+keyboard@6.0.1_@capacitor+core@6.1.1/node_modules/@capacitor/keyboard'
|
pod 'CapacitorHaptics', :path => '../../../../node_modules/.pnpm/@capacitor+haptics@7.0.2_@capacitor+core@7.4.2/node_modules/@capacitor/haptics'
|
||||||
pod 'CapacitorLocalNotifications', :path => '../../../../node_modules/.pnpm/@capacitor+local-notifications@6.0.0_@capacitor+core@6.1.1/node_modules/@capacitor/local-notifications'
|
pod 'CapacitorKeyboard', :path => '../../../../node_modules/.pnpm/@capacitor+keyboard@7.0.2_@capacitor+core@7.4.2/node_modules/@capacitor/keyboard'
|
||||||
pod 'CapacitorNetwork', :path => '../../../../node_modules/.pnpm/@capacitor+network@6.0.1_@capacitor+core@6.1.1/node_modules/@capacitor/network'
|
pod 'CapacitorLocalNotifications', :path => '../../../../node_modules/.pnpm/@capacitor+local-notifications@7.0.2_@capacitor+core@7.4.2/node_modules/@capacitor/local-notifications'
|
||||||
pod 'CapacitorPreferences', :path => '../../../../node_modules/.pnpm/@capacitor+preferences@6.0.1_@capacitor+core@6.1.1/node_modules/@capacitor/preferences'
|
pod 'CapacitorNetwork', :path => '../../../../node_modules/.pnpm/@capacitor+network@7.0.2_@capacitor+core@7.4.2/node_modules/@capacitor/network'
|
||||||
pod 'CapacitorScreenOrientation', :path => '../../../../node_modules/.pnpm/@capacitor+screen-orientation@6.0.1_@capacitor+core@6.1.1/node_modules/@capacitor/screen-orientation'
|
pod 'CapacitorPreferences', :path => '../../../../node_modules/.pnpm/@capacitor+preferences@7.0.2_@capacitor+core@7.4.2/node_modules/@capacitor/preferences'
|
||||||
pod 'CapacitorShare', :path => '../../../../node_modules/.pnpm/@capacitor+share@6.0.1_@capacitor+core@6.1.1/node_modules/@capacitor/share'
|
pod 'CapacitorScreenOrientation', :path => '../../../../node_modules/.pnpm/@capacitor+screen-orientation@7.0.2_@capacitor+core@7.4.2/node_modules/@capacitor/screen-orientation'
|
||||||
pod 'CapacitorSplashScreen', :path => '../../../../node_modules/.pnpm/@capacitor+splash-screen@6.0.1_@capacitor+core@6.1.1/node_modules/@capacitor/splash-screen'
|
pod 'CapacitorShare', :path => '../../../../node_modules/.pnpm/@capacitor+share@7.0.2_@capacitor+core@7.4.2/node_modules/@capacitor/share'
|
||||||
pod 'TransistorsoftCapacitorBackgroundFetch', :path => '../../../../node_modules/.pnpm/@transistorsoft+capacitor-background-fetch@5.2.0_@capacitor+core@6.1.1/node_modules/@transistorsoft/capacitor-background-fetch'
|
pod 'CapacitorSplashScreen', :path => '../../../../node_modules/.pnpm/@capacitor+splash-screen@7.0.2_@capacitor+core@7.4.2/node_modules/@capacitor/splash-screen'
|
||||||
pod 'CapacitorSecureStoragePlugin', :path => '../../../../node_modules/.pnpm/capacitor-secure-storage-plugin@0.9.0_@capacitor+core@6.1.1/node_modules/capacitor-secure-storage-plugin'
|
pod 'TransistorsoftCapacitorBackgroundFetch', :path => '../../../../node_modules/.pnpm/@transistorsoft+capacitor-background-fetch@7.1.0_@capacitor+core@7.4.2/node_modules/@transistorsoft/capacitor-background-fetch'
|
||||||
|
pod 'CapacitorSecureStoragePlugin', :path => '../../../../node_modules/.pnpm/capacitor-secure-storage-plugin@0.11.0_@capacitor+core@7.4.2/node_modules/capacitor-secure-storage-plugin'
|
||||||
pod 'CordovaPlugins', :path => '../capacitor-cordova-ios-plugins'
|
pod 'CordovaPlugins', :path => '../capacitor-cordova-ios-plugins'
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|||||||
@@ -1,143 +1,157 @@
|
|||||||
PODS:
|
PODS:
|
||||||
- Capacitor (6.1.1):
|
- Capacitor (7.4.2):
|
||||||
- CapacitorCordova
|
- CapacitorCordova
|
||||||
- CapacitorApp (6.0.0):
|
- CapacitorApp (7.0.2):
|
||||||
- Capacitor
|
- Capacitor
|
||||||
- CapacitorBrowser (6.0.1):
|
- CapacitorBrowser (7.0.2):
|
||||||
- Capacitor
|
- Capacitor
|
||||||
- CapacitorClipboard (6.0.0):
|
- CapacitorClipboard (7.0.2):
|
||||||
- Capacitor
|
- Capacitor
|
||||||
- CapacitorCommunityScreenBrightness (6.0.0):
|
- CapacitorCommunityInAppReview (7.0.1):
|
||||||
- Capacitor
|
- Capacitor
|
||||||
- CapacitorCordova (6.1.1)
|
- CapacitorCommunityScreenBrightness (7.0.0):
|
||||||
- CapacitorDevice (6.0.0):
|
|
||||||
- Capacitor
|
- Capacitor
|
||||||
- CapacitorDialog (6.0.0):
|
- CapacitorCordova (7.4.2)
|
||||||
|
- CapacitorDevice (7.0.2):
|
||||||
- Capacitor
|
- Capacitor
|
||||||
- CapacitorFilesystem (6.0.0):
|
- CapacitorDialog (7.0.2):
|
||||||
- Capacitor
|
- Capacitor
|
||||||
- CapacitorGeolocation (6.0.0):
|
- CapacitorFilesystem (7.1.4):
|
||||||
- Capacitor
|
- Capacitor
|
||||||
- CapacitorHaptics (6.0.0):
|
- IONFilesystemLib (~> 1.0.1)
|
||||||
|
- CapacitorGeolocation (7.1.5):
|
||||||
- Capacitor
|
- Capacitor
|
||||||
- CapacitorKeyboard (6.0.1):
|
- IONGeolocationLib (= 1.0.1)
|
||||||
|
- CapacitorHaptics (7.0.2):
|
||||||
- Capacitor
|
- Capacitor
|
||||||
- CapacitorLocalNotifications (6.0.0):
|
- CapacitorKeyboard (7.0.2):
|
||||||
- Capacitor
|
- Capacitor
|
||||||
- CapacitorNetwork (6.0.1):
|
- CapacitorLocalNotifications (7.0.2):
|
||||||
- Capacitor
|
- Capacitor
|
||||||
- CapacitorPreferences (6.0.1):
|
- CapacitorNetwork (7.0.2):
|
||||||
- Capacitor
|
- Capacitor
|
||||||
- CapacitorScreenOrientation (6.0.1):
|
- CapacitorPreferences (7.0.2):
|
||||||
- Capacitor
|
- Capacitor
|
||||||
- CapacitorSecureStoragePlugin (0.9.0):
|
- CapacitorScreenOrientation (7.0.2):
|
||||||
|
- Capacitor
|
||||||
|
- CapacitorSecureStoragePlugin (0.11.0):
|
||||||
- Capacitor
|
- Capacitor
|
||||||
- SwiftKeychainWrapper
|
- SwiftKeychainWrapper
|
||||||
- CapacitorShare (6.0.1):
|
- CapacitorShare (7.0.2):
|
||||||
- Capacitor
|
- Capacitor
|
||||||
- CapacitorSplashScreen (6.0.1):
|
- CapacitorSplashScreen (7.0.2):
|
||||||
- Capacitor
|
- Capacitor
|
||||||
- CordovaPlugins (6.1.1):
|
- CordovaPlugins (7.4.2):
|
||||||
- CapacitorCordova
|
- CapacitorCordova
|
||||||
|
- IONFilesystemLib (1.0.1)
|
||||||
|
- IONGeolocationLib (1.0.1)
|
||||||
- SwiftKeychainWrapper (4.0.1)
|
- SwiftKeychainWrapper (4.0.1)
|
||||||
- TransistorsoftCapacitorBackgroundFetch (5.2.0):
|
- TransistorsoftCapacitorBackgroundFetch (7.1.0):
|
||||||
- Capacitor
|
- Capacitor
|
||||||
|
|
||||||
DEPENDENCIES:
|
DEPENDENCIES:
|
||||||
- "Capacitor (from `../../../../node_modules/.pnpm/@capacitor+ios@6.1.1_@capacitor+core@6.1.1/node_modules/@capacitor/ios`)"
|
- "Capacitor (from `../../../../node_modules/.pnpm/@capacitor+ios@7.4.2_@capacitor+core@7.4.2/node_modules/@capacitor/ios`)"
|
||||||
- "CapacitorApp (from `../../../../node_modules/.pnpm/@capacitor+app@6.0.0_@capacitor+core@6.1.1/node_modules/@capacitor/app`)"
|
- "CapacitorApp (from `../../../../node_modules/.pnpm/@capacitor+app@7.0.2_@capacitor+core@7.4.2/node_modules/@capacitor/app`)"
|
||||||
- "CapacitorBrowser (from `../../../../node_modules/.pnpm/@capacitor+browser@6.0.1_@capacitor+core@6.1.1/node_modules/@capacitor/browser`)"
|
- "CapacitorBrowser (from `../../../../node_modules/.pnpm/@capacitor+browser@7.0.2_@capacitor+core@7.4.2/node_modules/@capacitor/browser`)"
|
||||||
- "CapacitorClipboard (from `../../../../node_modules/.pnpm/@capacitor+clipboard@6.0.0_@capacitor+core@6.1.1/node_modules/@capacitor/clipboard`)"
|
- "CapacitorClipboard (from `../../../../node_modules/.pnpm/@capacitor+clipboard@7.0.2_@capacitor+core@7.4.2/node_modules/@capacitor/clipboard`)"
|
||||||
- "CapacitorCommunityScreenBrightness (from `../../../../node_modules/.pnpm/@capacitor-community+screen-brightness@6.0.0_@capacitor+core@6.1.1/node_modules/@capacitor-community/screen-brightness`)"
|
- "CapacitorCommunityInAppReview (from `../../../../node_modules/.pnpm/@capacitor-community+in-app-review@7.0.1_@capacitor+core@7.4.2/node_modules/@capacitor-community/in-app-review`)"
|
||||||
- "CapacitorCordova (from `../../../../node_modules/.pnpm/@capacitor+ios@6.1.1_@capacitor+core@6.1.1/node_modules/@capacitor/ios`)"
|
- "CapacitorCommunityScreenBrightness (from `../../../../node_modules/.pnpm/@capacitor-community+screen-brightness@7.0.0_@capacitor+core@7.4.2/node_modules/@capacitor-community/screen-brightness`)"
|
||||||
- "CapacitorDevice (from `../../../../node_modules/.pnpm/@capacitor+device@6.0.0_@capacitor+core@6.1.1/node_modules/@capacitor/device`)"
|
- "CapacitorCordova (from `../../../../node_modules/.pnpm/@capacitor+ios@7.4.2_@capacitor+core@7.4.2/node_modules/@capacitor/ios`)"
|
||||||
- "CapacitorDialog (from `../../../../node_modules/.pnpm/@capacitor+dialog@6.0.0_@capacitor+core@6.1.1/node_modules/@capacitor/dialog`)"
|
- "CapacitorDevice (from `../../../../node_modules/.pnpm/@capacitor+device@7.0.2_@capacitor+core@7.4.2/node_modules/@capacitor/device`)"
|
||||||
- "CapacitorFilesystem (from `../../../../node_modules/.pnpm/@capacitor+filesystem@6.0.0_@capacitor+core@6.1.1/node_modules/@capacitor/filesystem`)"
|
- "CapacitorDialog (from `../../../../node_modules/.pnpm/@capacitor+dialog@7.0.2_@capacitor+core@7.4.2/node_modules/@capacitor/dialog`)"
|
||||||
- "CapacitorGeolocation (from `../../../../node_modules/.pnpm/@capacitor+geolocation@6.0.0_@capacitor+core@6.1.1/node_modules/@capacitor/geolocation`)"
|
- "CapacitorFilesystem (from `../../../../node_modules/.pnpm/@capacitor+filesystem@7.1.4_@capacitor+core@7.4.2/node_modules/@capacitor/filesystem`)"
|
||||||
- "CapacitorHaptics (from `../../../../node_modules/.pnpm/@capacitor+haptics@6.0.0_@capacitor+core@6.1.1/node_modules/@capacitor/haptics`)"
|
- "CapacitorGeolocation (from `../../../../node_modules/.pnpm/@capacitor+geolocation@7.1.5_@capacitor+core@7.4.2/node_modules/@capacitor/geolocation`)"
|
||||||
- "CapacitorKeyboard (from `../../../../node_modules/.pnpm/@capacitor+keyboard@6.0.1_@capacitor+core@6.1.1/node_modules/@capacitor/keyboard`)"
|
- "CapacitorHaptics (from `../../../../node_modules/.pnpm/@capacitor+haptics@7.0.2_@capacitor+core@7.4.2/node_modules/@capacitor/haptics`)"
|
||||||
- "CapacitorLocalNotifications (from `../../../../node_modules/.pnpm/@capacitor+local-notifications@6.0.0_@capacitor+core@6.1.1/node_modules/@capacitor/local-notifications`)"
|
- "CapacitorKeyboard (from `../../../../node_modules/.pnpm/@capacitor+keyboard@7.0.2_@capacitor+core@7.4.2/node_modules/@capacitor/keyboard`)"
|
||||||
- "CapacitorNetwork (from `../../../../node_modules/.pnpm/@capacitor+network@6.0.1_@capacitor+core@6.1.1/node_modules/@capacitor/network`)"
|
- "CapacitorLocalNotifications (from `../../../../node_modules/.pnpm/@capacitor+local-notifications@7.0.2_@capacitor+core@7.4.2/node_modules/@capacitor/local-notifications`)"
|
||||||
- "CapacitorPreferences (from `../../../../node_modules/.pnpm/@capacitor+preferences@6.0.1_@capacitor+core@6.1.1/node_modules/@capacitor/preferences`)"
|
- "CapacitorNetwork (from `../../../../node_modules/.pnpm/@capacitor+network@7.0.2_@capacitor+core@7.4.2/node_modules/@capacitor/network`)"
|
||||||
- "CapacitorScreenOrientation (from `../../../../node_modules/.pnpm/@capacitor+screen-orientation@6.0.1_@capacitor+core@6.1.1/node_modules/@capacitor/screen-orientation`)"
|
- "CapacitorPreferences (from `../../../../node_modules/.pnpm/@capacitor+preferences@7.0.2_@capacitor+core@7.4.2/node_modules/@capacitor/preferences`)"
|
||||||
- "CapacitorSecureStoragePlugin (from `../../../../node_modules/.pnpm/capacitor-secure-storage-plugin@0.9.0_@capacitor+core@6.1.1/node_modules/capacitor-secure-storage-plugin`)"
|
- "CapacitorScreenOrientation (from `../../../../node_modules/.pnpm/@capacitor+screen-orientation@7.0.2_@capacitor+core@7.4.2/node_modules/@capacitor/screen-orientation`)"
|
||||||
- "CapacitorShare (from `../../../../node_modules/.pnpm/@capacitor+share@6.0.1_@capacitor+core@6.1.1/node_modules/@capacitor/share`)"
|
- "CapacitorSecureStoragePlugin (from `../../../../node_modules/.pnpm/capacitor-secure-storage-plugin@0.11.0_@capacitor+core@7.4.2/node_modules/capacitor-secure-storage-plugin`)"
|
||||||
- "CapacitorSplashScreen (from `../../../../node_modules/.pnpm/@capacitor+splash-screen@6.0.1_@capacitor+core@6.1.1/node_modules/@capacitor/splash-screen`)"
|
- "CapacitorShare (from `../../../../node_modules/.pnpm/@capacitor+share@7.0.2_@capacitor+core@7.4.2/node_modules/@capacitor/share`)"
|
||||||
|
- "CapacitorSplashScreen (from `../../../../node_modules/.pnpm/@capacitor+splash-screen@7.0.2_@capacitor+core@7.4.2/node_modules/@capacitor/splash-screen`)"
|
||||||
- CordovaPlugins (from `../capacitor-cordova-ios-plugins`)
|
- CordovaPlugins (from `../capacitor-cordova-ios-plugins`)
|
||||||
- "TransistorsoftCapacitorBackgroundFetch (from `../../../../node_modules/.pnpm/@transistorsoft+capacitor-background-fetch@5.2.0_@capacitor+core@6.1.1/node_modules/@transistorsoft/capacitor-background-fetch`)"
|
- "TransistorsoftCapacitorBackgroundFetch (from `../../../../node_modules/.pnpm/@transistorsoft+capacitor-background-fetch@7.1.0_@capacitor+core@7.4.2/node_modules/@transistorsoft/capacitor-background-fetch`)"
|
||||||
|
|
||||||
SPEC REPOS:
|
SPEC REPOS:
|
||||||
trunk:
|
trunk:
|
||||||
|
- IONFilesystemLib
|
||||||
|
- IONGeolocationLib
|
||||||
- SwiftKeychainWrapper
|
- SwiftKeychainWrapper
|
||||||
|
|
||||||
EXTERNAL SOURCES:
|
EXTERNAL SOURCES:
|
||||||
Capacitor:
|
Capacitor:
|
||||||
:path: "../../../../node_modules/.pnpm/@capacitor+ios@6.1.1_@capacitor+core@6.1.1/node_modules/@capacitor/ios"
|
:path: "../../../../node_modules/.pnpm/@capacitor+ios@7.4.2_@capacitor+core@7.4.2/node_modules/@capacitor/ios"
|
||||||
CapacitorApp:
|
CapacitorApp:
|
||||||
:path: "../../../../node_modules/.pnpm/@capacitor+app@6.0.0_@capacitor+core@6.1.1/node_modules/@capacitor/app"
|
:path: "../../../../node_modules/.pnpm/@capacitor+app@7.0.2_@capacitor+core@7.4.2/node_modules/@capacitor/app"
|
||||||
CapacitorBrowser:
|
CapacitorBrowser:
|
||||||
:path: "../../../../node_modules/.pnpm/@capacitor+browser@6.0.1_@capacitor+core@6.1.1/node_modules/@capacitor/browser"
|
:path: "../../../../node_modules/.pnpm/@capacitor+browser@7.0.2_@capacitor+core@7.4.2/node_modules/@capacitor/browser"
|
||||||
CapacitorClipboard:
|
CapacitorClipboard:
|
||||||
:path: "../../../../node_modules/.pnpm/@capacitor+clipboard@6.0.0_@capacitor+core@6.1.1/node_modules/@capacitor/clipboard"
|
:path: "../../../../node_modules/.pnpm/@capacitor+clipboard@7.0.2_@capacitor+core@7.4.2/node_modules/@capacitor/clipboard"
|
||||||
|
CapacitorCommunityInAppReview:
|
||||||
|
:path: "../../../../node_modules/.pnpm/@capacitor-community+in-app-review@7.0.1_@capacitor+core@7.4.2/node_modules/@capacitor-community/in-app-review"
|
||||||
CapacitorCommunityScreenBrightness:
|
CapacitorCommunityScreenBrightness:
|
||||||
:path: "../../../../node_modules/.pnpm/@capacitor-community+screen-brightness@6.0.0_@capacitor+core@6.1.1/node_modules/@capacitor-community/screen-brightness"
|
:path: "../../../../node_modules/.pnpm/@capacitor-community+screen-brightness@7.0.0_@capacitor+core@7.4.2/node_modules/@capacitor-community/screen-brightness"
|
||||||
CapacitorCordova:
|
CapacitorCordova:
|
||||||
:path: "../../../../node_modules/.pnpm/@capacitor+ios@6.1.1_@capacitor+core@6.1.1/node_modules/@capacitor/ios"
|
:path: "../../../../node_modules/.pnpm/@capacitor+ios@7.4.2_@capacitor+core@7.4.2/node_modules/@capacitor/ios"
|
||||||
CapacitorDevice:
|
CapacitorDevice:
|
||||||
:path: "../../../../node_modules/.pnpm/@capacitor+device@6.0.0_@capacitor+core@6.1.1/node_modules/@capacitor/device"
|
:path: "../../../../node_modules/.pnpm/@capacitor+device@7.0.2_@capacitor+core@7.4.2/node_modules/@capacitor/device"
|
||||||
CapacitorDialog:
|
CapacitorDialog:
|
||||||
:path: "../../../../node_modules/.pnpm/@capacitor+dialog@6.0.0_@capacitor+core@6.1.1/node_modules/@capacitor/dialog"
|
:path: "../../../../node_modules/.pnpm/@capacitor+dialog@7.0.2_@capacitor+core@7.4.2/node_modules/@capacitor/dialog"
|
||||||
CapacitorFilesystem:
|
CapacitorFilesystem:
|
||||||
:path: "../../../../node_modules/.pnpm/@capacitor+filesystem@6.0.0_@capacitor+core@6.1.1/node_modules/@capacitor/filesystem"
|
:path: "../../../../node_modules/.pnpm/@capacitor+filesystem@7.1.4_@capacitor+core@7.4.2/node_modules/@capacitor/filesystem"
|
||||||
CapacitorGeolocation:
|
CapacitorGeolocation:
|
||||||
:path: "../../../../node_modules/.pnpm/@capacitor+geolocation@6.0.0_@capacitor+core@6.1.1/node_modules/@capacitor/geolocation"
|
:path: "../../../../node_modules/.pnpm/@capacitor+geolocation@7.1.5_@capacitor+core@7.4.2/node_modules/@capacitor/geolocation"
|
||||||
CapacitorHaptics:
|
CapacitorHaptics:
|
||||||
:path: "../../../../node_modules/.pnpm/@capacitor+haptics@6.0.0_@capacitor+core@6.1.1/node_modules/@capacitor/haptics"
|
:path: "../../../../node_modules/.pnpm/@capacitor+haptics@7.0.2_@capacitor+core@7.4.2/node_modules/@capacitor/haptics"
|
||||||
CapacitorKeyboard:
|
CapacitorKeyboard:
|
||||||
:path: "../../../../node_modules/.pnpm/@capacitor+keyboard@6.0.1_@capacitor+core@6.1.1/node_modules/@capacitor/keyboard"
|
:path: "../../../../node_modules/.pnpm/@capacitor+keyboard@7.0.2_@capacitor+core@7.4.2/node_modules/@capacitor/keyboard"
|
||||||
CapacitorLocalNotifications:
|
CapacitorLocalNotifications:
|
||||||
:path: "../../../../node_modules/.pnpm/@capacitor+local-notifications@6.0.0_@capacitor+core@6.1.1/node_modules/@capacitor/local-notifications"
|
:path: "../../../../node_modules/.pnpm/@capacitor+local-notifications@7.0.2_@capacitor+core@7.4.2/node_modules/@capacitor/local-notifications"
|
||||||
CapacitorNetwork:
|
CapacitorNetwork:
|
||||||
:path: "../../../../node_modules/.pnpm/@capacitor+network@6.0.1_@capacitor+core@6.1.1/node_modules/@capacitor/network"
|
:path: "../../../../node_modules/.pnpm/@capacitor+network@7.0.2_@capacitor+core@7.4.2/node_modules/@capacitor/network"
|
||||||
CapacitorPreferences:
|
CapacitorPreferences:
|
||||||
:path: "../../../../node_modules/.pnpm/@capacitor+preferences@6.0.1_@capacitor+core@6.1.1/node_modules/@capacitor/preferences"
|
:path: "../../../../node_modules/.pnpm/@capacitor+preferences@7.0.2_@capacitor+core@7.4.2/node_modules/@capacitor/preferences"
|
||||||
CapacitorScreenOrientation:
|
CapacitorScreenOrientation:
|
||||||
:path: "../../../../node_modules/.pnpm/@capacitor+screen-orientation@6.0.1_@capacitor+core@6.1.1/node_modules/@capacitor/screen-orientation"
|
:path: "../../../../node_modules/.pnpm/@capacitor+screen-orientation@7.0.2_@capacitor+core@7.4.2/node_modules/@capacitor/screen-orientation"
|
||||||
CapacitorSecureStoragePlugin:
|
CapacitorSecureStoragePlugin:
|
||||||
:path: "../../../../node_modules/.pnpm/capacitor-secure-storage-plugin@0.9.0_@capacitor+core@6.1.1/node_modules/capacitor-secure-storage-plugin"
|
:path: "../../../../node_modules/.pnpm/capacitor-secure-storage-plugin@0.11.0_@capacitor+core@7.4.2/node_modules/capacitor-secure-storage-plugin"
|
||||||
CapacitorShare:
|
CapacitorShare:
|
||||||
:path: "../../../../node_modules/.pnpm/@capacitor+share@6.0.1_@capacitor+core@6.1.1/node_modules/@capacitor/share"
|
:path: "../../../../node_modules/.pnpm/@capacitor+share@7.0.2_@capacitor+core@7.4.2/node_modules/@capacitor/share"
|
||||||
CapacitorSplashScreen:
|
CapacitorSplashScreen:
|
||||||
:path: "../../../../node_modules/.pnpm/@capacitor+splash-screen@6.0.1_@capacitor+core@6.1.1/node_modules/@capacitor/splash-screen"
|
:path: "../../../../node_modules/.pnpm/@capacitor+splash-screen@7.0.2_@capacitor+core@7.4.2/node_modules/@capacitor/splash-screen"
|
||||||
CordovaPlugins:
|
CordovaPlugins:
|
||||||
:path: "../capacitor-cordova-ios-plugins"
|
:path: "../capacitor-cordova-ios-plugins"
|
||||||
TransistorsoftCapacitorBackgroundFetch:
|
TransistorsoftCapacitorBackgroundFetch:
|
||||||
:path: "../../../../node_modules/.pnpm/@transistorsoft+capacitor-background-fetch@5.2.0_@capacitor+core@6.1.1/node_modules/@transistorsoft/capacitor-background-fetch"
|
:path: "../../../../node_modules/.pnpm/@transistorsoft+capacitor-background-fetch@7.1.0_@capacitor+core@7.4.2/node_modules/@transistorsoft/capacitor-background-fetch"
|
||||||
|
|
||||||
SPEC CHECKSUMS:
|
SPEC CHECKSUMS:
|
||||||
Capacitor: 8941aba4364ba9d1b22188569001f2ce45cc2b00
|
Capacitor: 9d9e481b79ffaeacaf7a85d6a11adec32bd33b59
|
||||||
CapacitorApp: 9d53aec7101f7b030a950c5bdc4df8612576b279
|
CapacitorApp: 1f6922c9c5c8b1c538d7fbe92ebe44a81b34bed3
|
||||||
CapacitorBrowser: 473c7fd70ddbe541608ff09ec1be14da0078279e
|
CapacitorBrowser: 22541e48442de44dc629c214388290d6eecc6ae9
|
||||||
CapacitorClipboard: 80282f684154124b9019ebf401235b70b0cf4994
|
CapacitorClipboard: 7e227702976d4435a5a40df54f65e154d0dfc1f3
|
||||||
CapacitorCommunityScreenBrightness: 250184917bd0738a681c026a9513e18ddb0cb49b
|
CapacitorCommunityInAppReview: a8f26c4e48a8ccc9df0acf1c7bca39844c325572
|
||||||
CapacitorCordova: 8f2cc8d8d3619c566e9418fe8772064a94266106
|
CapacitorCommunityScreenBrightness: 508f3d0f79024cd8da7d063f456870a4a1932723
|
||||||
CapacitorDevice: f8fd88f9edd1261c55a109f32015b09bbbfdc4a0
|
CapacitorCordova: 5e58d04631bc5094894ac106e2bf1da18a9e6151
|
||||||
CapacitorDialog: 64aa82840ee5e9c066f9e1a49c1e186afd3f24d2
|
CapacitorDevice: 81ae78d5d1942707caad79276badd458bf6ec603
|
||||||
CapacitorFilesystem: 60e59ba274c234a979e7a3be2552feaadcee4263
|
CapacitorDialog: 5bf72a94b747fb339df6f64ef60812e5e4630ad2
|
||||||
CapacitorGeolocation: 1f12bbe372b65116e851bd8e3a94cf0ef9bacebb
|
CapacitorFilesystem: f9bd850c41e048180e5dc0cbb90f2033ede9d2cc
|
||||||
CapacitorHaptics: 9ebc9363f0e9b8eb4295088a0b474530acf1859b
|
CapacitorGeolocation: 84f868bea4c2499aebc3bb3a88fd0a508f87ab87
|
||||||
CapacitorKeyboard: 5f32a712adf41e07a61caafb82cf29fb6d8ba123
|
CapacitorHaptics: b3fb2869e72c4466e18ce9ccbeb60a3d8723b3d4
|
||||||
CapacitorLocalNotifications: 4ab68f0be5f697a579558fadd307d823a9ec1c26
|
CapacitorKeyboard: a86aa9e4741b6444a802df26440a92ae041b34a6
|
||||||
CapacitorNetwork: 5c94acfdddc22043f2ffaff224ce9b4aa5a179f0
|
CapacitorLocalNotifications: 665188ae8accd40806129073896fb2b39322d858
|
||||||
CapacitorPreferences: 72909b165bc7807103778ddbb86d5d8ce06abf71
|
CapacitorNetwork: 695069886b3c5ed514db69aa3d026b8dc3c03a6b
|
||||||
CapacitorScreenOrientation: 3d4965dcbda5d901b6a48350a5d270ad7d404e05
|
CapacitorPreferences: 65107ed7437d96ee72583df5763985e3c0ff2bc2
|
||||||
CapacitorSecureStoragePlugin: e91d7df060f2495a1acff9583641a6953e3aacba
|
CapacitorScreenOrientation: e0d5b9ef293b269b8f93373355d5b276f50fabea
|
||||||
CapacitorShare: 02222f2457ff003e642370a9c1ecd101baaa27c8
|
CapacitorSecureStoragePlugin: 450d402026ee3bcc018fa206504d9c0572fee78d
|
||||||
CapacitorSplashScreen: 61645214e8f955ff2b80f16a6a3648960fe4c89f
|
CapacitorShare: be166411fa995ead2d39b104aa0aae56d8615c66
|
||||||
CordovaPlugins: 1078156cfc354dd440b38ce4062e69fd9b07033c
|
CapacitorSplashScreen: 157947576b59d913792063a8d442a79e6d283ee5
|
||||||
|
CordovaPlugins: 7b9a4f380c92ca7f28630723befaca556461f4c3
|
||||||
|
IONFilesystemLib: 89258b8e3e85465da93127d25d7ce37f977e8a6f
|
||||||
|
IONGeolocationLib: 20f9d0248a0b5264511fb57a37e25dd2badf797a
|
||||||
SwiftKeychainWrapper: 807ba1d63c33a7d0613288512399cd1eda1e470c
|
SwiftKeychainWrapper: 807ba1d63c33a7d0613288512399cd1eda1e470c
|
||||||
TransistorsoftCapacitorBackgroundFetch: f130c5dcb6048401e74cc531e691e1d513045366
|
TransistorsoftCapacitorBackgroundFetch: 28e561636145a899f05025d31f627019c16791f5
|
||||||
|
|
||||||
PODFILE CHECKSUM: d0561b89b66368df409c77587e3e02b48e737203
|
PODFILE CHECKSUM: 90bc09990a659848ea76c94331d39bad0b28024d
|
||||||
|
|
||||||
COCOAPODS: 1.15.2
|
COCOAPODS: 1.16.2
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
{
|
{
|
||||||
"name": "@openstapps/app",
|
"name": "@openstapps/app",
|
||||||
"description": "The generic app tailored to fulfill needs of German universities, written using Ionic Framework.",
|
"description": "The generic app tailored to fulfill needs of German universities, written using Ionic Framework.",
|
||||||
"version": "3.3.5",
|
"version": "4.0.3",
|
||||||
"private": true,
|
"private": true,
|
||||||
"license": "GPL-3.0-only",
|
"license": "GPL-3.0-only",
|
||||||
"author": "Karl-Philipp Wulfert <krlwlfrt@gmail.com>",
|
"author": "Karl-Philipp Wulfert <krlwlfrt@gmail.com>",
|
||||||
@@ -14,12 +14,9 @@
|
|||||||
"Thea Schöbl <dev@theaninova.de>"
|
"Thea Schöbl <dev@theaninova.de>"
|
||||||
],
|
],
|
||||||
"scripts": {
|
"scripts": {
|
||||||
"analyze": "webpack-bundle-analyzer www/stats.json",
|
"build": "pnpm check-icons && ng build --configuration=production --stats-json",
|
||||||
"build": "pnpm check-icons && ng build --configuration=production --stats-json && webpack-bundle-analyzer www/stats.json --mode static --report www/bundle-info.html --no-open",
|
|
||||||
"build:analyze": "npm run build:stats && npm run analyze",
|
|
||||||
"build:android": "ionic capacitor build android --no-open && cd android && ./gradlew clean assemble && cd ..",
|
"build:android": "ionic capacitor build android --no-open && cd android && ./gradlew clean assemble && cd ..",
|
||||||
"build:prod": "ng build --configuration=production",
|
"build:prod": "ng build --configuration=production",
|
||||||
"build:stats": "ng build --configuration=production --stats-json",
|
|
||||||
"changelog": "conventional-changelog -p angular -i src/assets/about/CHANGELOG.md -s -r 0",
|
"changelog": "conventional-changelog -p angular -i src/assets/about/CHANGELOG.md -s -r 0",
|
||||||
"check-icons": "node scripts/check-icon-correctness.mjs",
|
"check-icons": "node scripts/check-icon-correctness.mjs",
|
||||||
"chromium:no-cors": "chromium --disable-web-security --user-data-dir=\".browser-data/chromium\"",
|
"chromium:no-cors": "chromium --disable-web-security --user-data-dir=\".browser-data/chromium\"",
|
||||||
@@ -39,8 +36,7 @@
|
|||||||
"lint": "ng lint && stylelint \"**/*.scss\"",
|
"lint": "ng lint && stylelint \"**/*.scss\"",
|
||||||
"lint:fix": "eslint --fix -c .eslintrc.json --ignore-path .eslintignore --ext .ts,.html src/ && stylelint --fix \"**/*.scss\"",
|
"lint:fix": "eslint --fix -c .eslintrc.json --ignore-path .eslintignore --ext .ts,.html src/ && stylelint --fix \"**/*.scss\"",
|
||||||
"minify-icons": "node scripts/minify-icon-font.mjs",
|
"minify-icons": "node scripts/minify-icon-font.mjs",
|
||||||
"postinstall": "jetify && echo \"skipping jetify in production mode\"",
|
"preview": "http-server www/browser --p 8101 -o",
|
||||||
"preview": "http-server www --p 8101 -o",
|
|
||||||
"push": "git push && git push origin \"v$npm_package_version\"",
|
"push": "git push && git push origin \"v$npm_package_version\"",
|
||||||
"resources:ios": "capacitor-assets generate --ios --iconBackgroundColor $(grep -oE \"^@include ion-color\\(primary, #[a-fA-F0-9]{3,6}\" src/theme/colors.scss | grep -oE \"#[a-fA-F0-9]{3,6}\") --splashBackgroundColor $(grep -oE \"^@include ion-color\\(primary, #[a-fA-F0-9]{3,6}\" src/theme/colors.scss | grep -oE \"#[a-fA-F0-9]{3,6}\")",
|
"resources:ios": "capacitor-assets generate --ios --iconBackgroundColor $(grep -oE \"^@include ion-color\\(primary, #[a-fA-F0-9]{3,6}\" src/theme/colors.scss | grep -oE \"#[a-fA-F0-9]{3,6}\") --splashBackgroundColor $(grep -oE \"^@include ion-color\\(primary, #[a-fA-F0-9]{3,6}\" src/theme/colors.scss | grep -oE \"#[a-fA-F0-9]{3,6}\")",
|
||||||
"run:android": "ionic capacitor run android --livereload --external",
|
"run:android": "ionic capacitor run android --livereload --external",
|
||||||
@@ -52,90 +48,93 @@
|
|||||||
"test:integration": "sh integration-test.sh"
|
"test:integration": "sh integration-test.sh"
|
||||||
},
|
},
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@angular/animations": "17.3.0",
|
"@angular/animations": "18.2.13",
|
||||||
"@angular/cdk": "17.3.0",
|
"@angular/cdk": "18.2.13",
|
||||||
"@angular/common": "17.3.0",
|
"@angular/common": "18.2.13",
|
||||||
"@angular/core": "17.3.0",
|
"@angular/core": "18.2.13",
|
||||||
"@angular/forms": "17.3.0",
|
"@angular/forms": "18.2.13",
|
||||||
"@angular/platform-browser": "17.3.0",
|
"@angular/platform-browser": "18.2.13",
|
||||||
"@angular/router": "17.3.0",
|
"@angular/router": "18.2.13",
|
||||||
"@awesome-cordova-plugins/calendar": "6.6.0",
|
"@awesome-cordova-plugins/calendar": "6.6.0",
|
||||||
"@awesome-cordova-plugins/core": "6.6.0",
|
"@awesome-cordova-plugins/core": "6.6.0",
|
||||||
"@capacitor-community/screen-brightness": "6.0.0",
|
"@capacitor-community/in-app-review": "7.0.1",
|
||||||
"@capacitor/app": "6.0.0",
|
"@capacitor-community/screen-brightness": "7.0.0",
|
||||||
"@capacitor/browser": "6.0.1",
|
"@capacitor/app": "7.0.2",
|
||||||
"@capacitor/clipboard": "6.0.0",
|
"@capacitor/browser": "7.0.2",
|
||||||
"@capacitor/core": "6.1.1",
|
"@capacitor/clipboard": "7.0.2",
|
||||||
"@capacitor/device": "6.0.0",
|
"@capacitor/core": "7.4.2",
|
||||||
"@capacitor/dialog": "6.0.0",
|
"@capacitor/device": "7.0.2",
|
||||||
"@capacitor/filesystem": "6.0.0",
|
"@capacitor/dialog": "7.0.2",
|
||||||
"@capacitor/geolocation": "6.0.0",
|
"@capacitor/filesystem": "7.1.4",
|
||||||
"@capacitor/haptics": "6.0.0",
|
"@capacitor/geolocation": "7.1.5",
|
||||||
"@capacitor/keyboard": "6.0.1",
|
"@capacitor/haptics": "7.0.2",
|
||||||
"@capacitor/local-notifications": "6.0.0",
|
"@capacitor/keyboard": "7.0.2",
|
||||||
"@capacitor/network": "6.0.1",
|
"@capacitor/local-notifications": "7.0.2",
|
||||||
"@capacitor/preferences": "6.0.1",
|
"@capacitor/network": "7.0.2",
|
||||||
"@capacitor/screen-orientation": "6.0.1",
|
"@capacitor/preferences": "7.0.2",
|
||||||
"@capacitor/share": "6.0.1",
|
"@capacitor/screen-orientation": "7.0.2",
|
||||||
"@capacitor/splash-screen": "6.0.1",
|
"@capacitor/share": "7.0.2",
|
||||||
"@ionic-native/core": "5.36.0",
|
"@capacitor/splash-screen": "7.0.2",
|
||||||
"@ionic/angular": "7.8.0",
|
"@ionic/angular": "8.7.3",
|
||||||
|
"@ionic/angular-server": "8.7.3",
|
||||||
"@ionic/storage-angular": "4.0.0",
|
"@ionic/storage-angular": "4.0.0",
|
||||||
"@maplibre/ngx-maplibre-gl": "17.4.1",
|
"@maplibre/ngx-maplibre-gl": "17.4.1",
|
||||||
"@ngx-translate/core": "15.0.0",
|
"@ngx-translate/core": "15.0.0",
|
||||||
"@ngx-translate/http-loader": "8.0.0",
|
"@ngx-translate/http-loader": "8.0.0",
|
||||||
"@openid/appauth": "1.3.1",
|
"@openid/appauth": "1.3.2",
|
||||||
"@openstapps/api": "workspace:*",
|
"@openstapps/api": "workspace:*",
|
||||||
"@openstapps/collection-utils": "workspace:*",
|
"@openstapps/collection-utils": "workspace:*",
|
||||||
"@openstapps/core": "workspace:*",
|
"@openstapps/core": "workspace:*",
|
||||||
"@transistorsoft/capacitor-background-fetch": "5.2.0",
|
"@transistorsoft/capacitor-background-fetch": "7.1.0",
|
||||||
"@types/dom-view-transitions": "1.0.4",
|
"@types/dom-view-transitions": "1.0.4",
|
||||||
"capacitor-secure-storage-plugin": "0.9.0",
|
"capacitor-secure-storage-plugin": "0.11.0",
|
||||||
"cordova-plugin-calendar": "5.1.6",
|
"cordova-plugin-calendar": "5.1.6",
|
||||||
"date-fns": "3.6.0",
|
"date-fns": "3.6.0",
|
||||||
"deepmerge": "4.3.1",
|
"deepmerge": "4.3.1",
|
||||||
"form-data": "4.0.0",
|
"form-data": "4.0.4",
|
||||||
"geojson": "0.5.0",
|
"geojson": "0.5.0",
|
||||||
"ionic-appauth": "0.9.0",
|
"ionic-appauth": "2.1.0",
|
||||||
"jsonpath-plus": "10.0.7",
|
"ionicons": "8.0.13",
|
||||||
|
"jsonpath-plus": "10.3.0",
|
||||||
"maplibre-gl": "4.0.2",
|
"maplibre-gl": "4.0.2",
|
||||||
"material-symbols": "0.17.1",
|
"material-symbols": "0.17.1",
|
||||||
"moment": "2.30.1",
|
"moment": "2.30.1",
|
||||||
"ngx-date-fns": "11.0.0",
|
"ngx-date-fns": "11.0.0",
|
||||||
"ngx-logger": "5.0.12",
|
"ngx-logger": "5.0.12",
|
||||||
"ngx-markdown": "17.1.1",
|
"ngx-markdown": "17.2.1",
|
||||||
"ngx-moment": "6.0.2",
|
"ngx-moment": "6.0.2",
|
||||||
"opening_hours": "3.8.0",
|
"opening_hours": "3.8.0",
|
||||||
"pmtiles": "3.0.3",
|
"pmtiles": "3.0.3",
|
||||||
|
"prettier": "3.1.1",
|
||||||
"rxjs": "7.8.1",
|
"rxjs": "7.8.1",
|
||||||
"semver": "7.6.0",
|
"semver": "7.6.0",
|
||||||
"swiper": "8.4.5",
|
"swiper": "8.4.5",
|
||||||
"tslib": "2.6.2",
|
"tslib": "2.6.2",
|
||||||
"zone.js": "0.14.4"
|
"zone.js": "0.14.10"
|
||||||
},
|
},
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"@angular-devkit/architect": "0.1703.0",
|
"@angular-devkit/architect": "0.1802.20",
|
||||||
"@angular-devkit/build-angular": "17.3.0",
|
"@angular-devkit/build-angular": "18.2.20",
|
||||||
"@angular-devkit/core": "17.3.0",
|
"@angular-devkit/core": "18.2.20",
|
||||||
"@angular-devkit/schematics": "17.3.0",
|
"@angular-devkit/schematics": "18.2.20",
|
||||||
"@angular-eslint/builder": "17.3.0",
|
"@angular-eslint/builder": "18.4.3",
|
||||||
"@angular-eslint/eslint-plugin": "17.3.0",
|
"@angular-eslint/eslint-plugin": "18.4.3",
|
||||||
"@angular-eslint/eslint-plugin-template": "17.3.0",
|
"@angular-eslint/eslint-plugin-template": "18.4.3",
|
||||||
"@angular-eslint/schematics": "17.3.0",
|
"@angular-eslint/schematics": "18.4.1",
|
||||||
"@angular-eslint/template-parser": "17.3.0",
|
"@angular-eslint/template-parser": "18.4.3",
|
||||||
"@angular/cli": "17.3.0",
|
"@angular/cli": "18.2.20",
|
||||||
"@angular/compiler": "17.3.0",
|
"@angular/compiler": "18.2.13",
|
||||||
"@angular/compiler-cli": "17.3.0",
|
"@angular/compiler-cli": "18.2.13",
|
||||||
"@angular/language-server": "17.3.0",
|
"@angular/language-server": "18.2.0",
|
||||||
"@angular/language-service": "17.3.0",
|
"@angular/language-service": "18.2.13",
|
||||||
"@angular/platform-browser-dynamic": "17.3.0",
|
"@angular/platform-browser-dynamic": "18.2.13",
|
||||||
"@capacitor/android": "6.1.1",
|
"@capacitor/android": "7.4.2",
|
||||||
"@capacitor/assets": "3.0.4",
|
"@capacitor/assets": "3.0.5",
|
||||||
"@capacitor/cli": "6.1.1",
|
"@capacitor/cli": "7.4.2",
|
||||||
"@capacitor/ios": "6.1.1",
|
"@capacitor/ios": "7.4.2",
|
||||||
"@compodoc/compodoc": "1.1.23",
|
"@compodoc/compodoc": "1.1.23",
|
||||||
"@cypress/schematic": "2.5.1",
|
"@cypress/schematic": "4.1.1",
|
||||||
"@ionic/angular-toolkit": "11.0.1",
|
"@ionic/angular-toolkit": "12.3.0",
|
||||||
"@ionic/cli": "7.2.0",
|
"@ionic/cli": "7.2.0",
|
||||||
"@openstapps/prettier-config": "workspace:*",
|
"@openstapps/prettier-config": "workspace:*",
|
||||||
"@openstapps/tsconfig": "workspace:*",
|
"@openstapps/tsconfig": "workspace:*",
|
||||||
@@ -148,24 +147,23 @@
|
|||||||
"@types/karma": "6.3.8",
|
"@types/karma": "6.3.8",
|
||||||
"@types/karma-coverage": "2.0.3",
|
"@types/karma-coverage": "2.0.3",
|
||||||
"@types/karma-jasmine": "4.0.5",
|
"@types/karma-jasmine": "4.0.5",
|
||||||
"@types/node": "18.15.3",
|
"@types/node": "22.15.31",
|
||||||
"@types/semver": "7.5.8",
|
"@types/semver": "7.5.8",
|
||||||
"@typescript-eslint/eslint-plugin": "7.2.0",
|
"@typescript-eslint/eslint-plugin": "7.11.0",
|
||||||
"@typescript-eslint/parser": "7.2.0",
|
"@typescript-eslint/parser": "7.11.0",
|
||||||
"cordova-res": "0.15.4",
|
"cordova-res": "0.15.4",
|
||||||
"cypress": "13.7.0",
|
"cypress": "15.0.0",
|
||||||
"eslint": "8.57.0",
|
"eslint": "8.57.0",
|
||||||
"eslint-plugin-jsdoc": "48.2.1",
|
"eslint-plugin-jsdoc": "48.2.1",
|
||||||
"eslint-plugin-prettier": "5.1.3",
|
"eslint-plugin-prettier": "5.1.3",
|
||||||
"eslint-plugin-unicorn": "51.0.1",
|
"eslint-plugin-unicorn": "51.0.1",
|
||||||
"fast-deep-equal": "3.1.3",
|
"fast-deep-equal": "3.1.3",
|
||||||
"fontkit": "2.0.2",
|
"fontkit": "2.0.2",
|
||||||
"glob": "10.3.10",
|
"glob": "10.5.0",
|
||||||
"http-server": "14.1.1",
|
"http-server": "14.1.1",
|
||||||
"is-docker": "2.2.1",
|
"is-docker": "2.2.1",
|
||||||
"jasmine-core": "5.1.2",
|
"jasmine-core": "5.1.2",
|
||||||
"jasmine-spec-reporter": "7.0.0",
|
"jasmine-spec-reporter": "7.0.0",
|
||||||
"jetifier": "2.0.0",
|
|
||||||
"junit-report-merger": "6.0.3",
|
"junit-report-merger": "6.0.3",
|
||||||
"karma": "6.4.3",
|
"karma": "6.4.3",
|
||||||
"karma-chrome-launcher": "3.2.0",
|
"karma-chrome-launcher": "3.2.0",
|
||||||
@@ -181,8 +179,7 @@
|
|||||||
"stylelint-config-standard-scss": "13.0.0",
|
"stylelint-config-standard-scss": "13.0.0",
|
||||||
"surge": "0.23.1",
|
"surge": "0.23.1",
|
||||||
"ts-node": "10.9.2",
|
"ts-node": "10.9.2",
|
||||||
"typescript": "5.4.2",
|
"typescript": "5.4.2"
|
||||||
"webpack-bundle-analyzer": "4.10.1"
|
|
||||||
},
|
},
|
||||||
"cordova": {
|
"cordova": {
|
||||||
"plugins": {},
|
"plugins": {},
|
||||||
|
|||||||
@@ -13,7 +13,7 @@
|
|||||||
* this program. If not, see <https://www.gnu.org/licenses/>.
|
* this program. If not, see <https://www.gnu.org/licenses/>.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
import {AnimationBuilder, AnimationController} from '@ionic/angular';
|
import {AnimationBuilder, AnimationController} from '@ionic/angular/standalone';
|
||||||
import {AnimationOptions} from '@ionic/angular/common/providers/nav-controller';
|
import {AnimationOptions} from '@ionic/angular/common/providers/nav-controller';
|
||||||
import {iosDuration, iosEasing, mdDuration, mdEasing} from './easings';
|
import {iosDuration, iosEasing, mdDuration, mdEasing} from './easings';
|
||||||
|
|
||||||
|
|||||||
@@ -17,11 +17,11 @@
|
|||||||
import {CUSTOM_ELEMENTS_SCHEMA} from '@angular/core';
|
import {CUSTOM_ELEMENTS_SCHEMA} from '@angular/core';
|
||||||
import {TestBed} from '@angular/core/testing';
|
import {TestBed} from '@angular/core/testing';
|
||||||
|
|
||||||
import {ModalController, Platform} from '@ionic/angular';
|
import {ModalController, Platform} from '@ionic/angular/standalone';
|
||||||
|
|
||||||
import {TranslateService} from '@ngx-translate/core';
|
import {TranslateService} from '@ngx-translate/core';
|
||||||
import {ThingTranslateService} from './translation/thing-translate.service';
|
import {ThingTranslateService} from './translation/thing-translate.service';
|
||||||
import {HttpClientTestingModule} from '@angular/common/http/testing';
|
import {provideHttpClientTesting} from '@angular/common/http/testing';
|
||||||
import {AppComponent} from './app.component';
|
import {AppComponent} from './app.component';
|
||||||
import {AuthModule} from './modules/auth/auth.module';
|
import {AuthModule} from './modules/auth/auth.module';
|
||||||
import {ConfigProvider} from './modules/config/config.provider';
|
import {ConfigProvider} from './modules/config/config.provider';
|
||||||
@@ -32,6 +32,8 @@ import {ScheduleSyncService} from './modules/background/schedule/schedule-sync.s
|
|||||||
import {sampleAuthConfiguration} from './_helpers/data/sample-configuration';
|
import {sampleAuthConfiguration} from './_helpers/data/sample-configuration';
|
||||||
import {StorageProvider} from './modules/storage/storage.provider';
|
import {StorageProvider} from './modules/storage/storage.provider';
|
||||||
import {SimpleBrowser} from './util/browser.factory';
|
import {SimpleBrowser} from './util/browser.factory';
|
||||||
|
import {provideHttpClient, withInterceptorsFromDi} from '@angular/common/http';
|
||||||
|
import {InAppReviewProvider} from './modules/settings/in-app-review/in-app-review.provider';
|
||||||
|
|
||||||
describe('AppComponent', () => {
|
describe('AppComponent', () => {
|
||||||
let platformReadySpy: any;
|
let platformReadySpy: any;
|
||||||
@@ -39,6 +41,7 @@ describe('AppComponent', () => {
|
|||||||
let translateServiceSpy: jasmine.SpyObj<TranslateService>;
|
let translateServiceSpy: jasmine.SpyObj<TranslateService>;
|
||||||
let thingTranslateServiceSpy: jasmine.SpyObj<ThingTranslateService>;
|
let thingTranslateServiceSpy: jasmine.SpyObj<ThingTranslateService>;
|
||||||
let settingsProvider: jasmine.SpyObj<SettingsProvider>;
|
let settingsProvider: jasmine.SpyObj<SettingsProvider>;
|
||||||
|
let inAppReviewProvider: jasmine.SpyObj<InAppReviewProvider>;
|
||||||
let configProvider: jasmine.SpyObj<ConfigProvider>;
|
let configProvider: jasmine.SpyObj<ConfigProvider>;
|
||||||
let ngxLogger: jasmine.SpyObj<NGXLogger>;
|
let ngxLogger: jasmine.SpyObj<NGXLogger>;
|
||||||
let scheduleSyncServiceSpy: jasmine.SpyObj<ScheduleSyncService>;
|
let scheduleSyncServiceSpy: jasmine.SpyObj<ScheduleSyncService>;
|
||||||
@@ -75,21 +78,24 @@ describe('AppComponent', () => {
|
|||||||
modalController = jasmine.createSpyObj('ModalController', ['create', 'dismiss', 'getTop']);
|
modalController = jasmine.createSpyObj('ModalController', ['create', 'dismiss', 'getTop']);
|
||||||
|
|
||||||
TestBed.configureTestingModule({
|
TestBed.configureTestingModule({
|
||||||
imports: [RouterTestingModule.withRoutes([]), HttpClientTestingModule, AuthModule],
|
|
||||||
declarations: [AppComponent],
|
declarations: [AppComponent],
|
||||||
|
schemas: [CUSTOM_ELEMENTS_SCHEMA],
|
||||||
|
imports: [RouterTestingModule.withRoutes([]), AuthModule],
|
||||||
providers: [
|
providers: [
|
||||||
{provide: Platform, useValue: platformSpy},
|
{provide: Platform, useValue: platformSpy},
|
||||||
{provide: TranslateService, useValue: translateServiceSpy},
|
{provide: TranslateService, useValue: translateServiceSpy},
|
||||||
{provide: ThingTranslateService, useValue: thingTranslateServiceSpy},
|
{provide: ThingTranslateService, useValue: thingTranslateServiceSpy},
|
||||||
{provide: ScheduleSyncService, useValue: scheduleSyncServiceSpy},
|
{provide: ScheduleSyncService, useValue: scheduleSyncServiceSpy},
|
||||||
{provide: SettingsProvider, useValue: settingsProvider},
|
{provide: SettingsProvider, useValue: settingsProvider},
|
||||||
|
{provide: InAppReviewProvider, useValue: inAppReviewProvider},
|
||||||
{provide: ConfigProvider, useValue: configProvider},
|
{provide: ConfigProvider, useValue: configProvider},
|
||||||
{provide: NGXLogger, useValue: ngxLogger},
|
{provide: NGXLogger, useValue: ngxLogger},
|
||||||
{provide: StorageProvider, useValue: storageProvider},
|
{provide: StorageProvider, useValue: storageProvider},
|
||||||
{provide: SimpleBrowser, useValue: simpleBrowser},
|
{provide: SimpleBrowser, useValue: simpleBrowser},
|
||||||
{provide: ModalController, useValue: modalController},
|
{provide: ModalController, useValue: modalController},
|
||||||
|
provideHttpClient(withInterceptorsFromDi()),
|
||||||
|
provideHttpClientTesting(),
|
||||||
],
|
],
|
||||||
schemas: [CUSTOM_ELEMENTS_SCHEMA],
|
|
||||||
}).compileComponents();
|
}).compileComponents();
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|||||||
@@ -15,8 +15,9 @@
|
|||||||
import {AfterContentInit, Component, NgZone} from '@angular/core';
|
import {AfterContentInit, Component, NgZone} from '@angular/core';
|
||||||
import {Router} from '@angular/router';
|
import {Router} from '@angular/router';
|
||||||
import {App, URLOpenListenerEvent} from '@capacitor/app';
|
import {App, URLOpenListenerEvent} from '@capacitor/app';
|
||||||
import {Platform, ToastController} from '@ionic/angular';
|
import {Platform, ToastController} from '@ionic/angular/standalone';
|
||||||
import {SettingsProvider} from './modules/settings/settings.provider';
|
import {SettingsProvider} from './modules/settings/settings.provider';
|
||||||
|
import {InAppReviewProvider} from './modules/settings/in-app-review/in-app-review.provider';
|
||||||
import {AuthHelperService} from './modules/auth/auth-helper.service';
|
import {AuthHelperService} from './modules/auth/auth-helper.service';
|
||||||
import {environment} from '../environments/environment';
|
import {environment} from '../environments/environment';
|
||||||
import {Capacitor} from '@capacitor/core';
|
import {Capacitor} from '@capacitor/core';
|
||||||
@@ -55,6 +56,7 @@ export class AppComponent implements AfterContentInit {
|
|||||||
constructor(
|
constructor(
|
||||||
private readonly platform: Platform,
|
private readonly platform: Platform,
|
||||||
private readonly settingsProvider: SettingsProvider,
|
private readonly settingsProvider: SettingsProvider,
|
||||||
|
private readonly inAppReviewProvider: InAppReviewProvider,
|
||||||
private readonly router: Router,
|
private readonly router: Router,
|
||||||
private readonly zone: NgZone,
|
private readonly zone: NgZone,
|
||||||
private readonly authHelper: AuthHelperService,
|
private readonly authHelper: AuthHelperService,
|
||||||
@@ -86,6 +88,8 @@ export class AppComponent implements AfterContentInit {
|
|||||||
async hideSplash() {
|
async hideSplash() {
|
||||||
if (Capacitor.isNativePlatform()) {
|
if (Capacitor.isNativePlatform()) {
|
||||||
void SplashScreen.hide();
|
void SplashScreen.hide();
|
||||||
|
await this.inAppReviewProvider.increaseSessionCount();
|
||||||
|
void this.inAppReviewProvider.startInAppReviewIfFeasible();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -13,12 +13,12 @@
|
|||||||
* this program. If not, see <https://www.gnu.org/licenses/>.
|
* this program. If not, see <https://www.gnu.org/licenses/>.
|
||||||
*/
|
*/
|
||||||
import {CommonModule, LocationStrategy, PathLocationStrategy, registerLocaleData} from '@angular/common';
|
import {CommonModule, LocationStrategy, PathLocationStrategy, registerLocaleData} from '@angular/common';
|
||||||
import {HTTP_INTERCEPTORS, HttpClient, HttpClientModule} from '@angular/common/http';
|
import {HTTP_INTERCEPTORS, HttpClient, provideHttpClient, withInterceptorsFromDi} from '@angular/common/http';
|
||||||
import localeDe from '@angular/common/locales/de';
|
import localeDe from '@angular/common/locales/de';
|
||||||
import {APP_INITIALIZER, NgModule} from '@angular/core';
|
import {APP_INITIALIZER, NgModule} from '@angular/core';
|
||||||
import {BrowserModule} from '@angular/platform-browser';
|
import {BrowserModule} from '@angular/platform-browser';
|
||||||
import {RouteReuseStrategy} from '@angular/router';
|
import {RouteReuseStrategy} from '@angular/router';
|
||||||
import {IonicModule, IonicRouteStrategy, Platform} from '@ionic/angular';
|
import {IonicRouteStrategy, Platform, provideIonicAngular, IonApp} from '@ionic/angular/standalone';
|
||||||
import {TranslateLoader, TranslateModule, TranslateService} from '@ngx-translate/core';
|
import {TranslateLoader, TranslateModule, TranslateService} from '@ngx-translate/core';
|
||||||
import {TranslateHttpLoader} from '@ngx-translate/http-loader';
|
import {TranslateHttpLoader} from '@ngx-translate/http-loader';
|
||||||
import moment from 'moment';
|
import moment from 'moment';
|
||||||
@@ -61,7 +61,6 @@ import {RoutingStackService} from './util/routing-stack.service';
|
|||||||
import {SCLanguageCode, SCSettingValue} from '@openstapps/core';
|
import {SCLanguageCode, SCSettingValue} from '@openstapps/core';
|
||||||
import {DefaultAuthService} from './modules/auth/default-auth.service';
|
import {DefaultAuthService} from './modules/auth/default-auth.service';
|
||||||
import {PAIAAuthService} from './modules/auth/paia/paia-auth.service';
|
import {PAIAAuthService} from './modules/auth/paia/paia-auth.service';
|
||||||
import {IonIconModule} from './util/ion-icon/ion-icon.module';
|
|
||||||
import {NavigationModule} from './modules/menu/navigation/navigation.module';
|
import {NavigationModule} from './modules/menu/navigation/navigation.module';
|
||||||
import {browserFactory, SimpleBrowser} from './util/browser.factory';
|
import {browserFactory, SimpleBrowser} from './util/browser.factory';
|
||||||
import {getDateFnsLocale} from './translation/dfns-locale';
|
import {getDateFnsLocale} from './translation/dfns-locale';
|
||||||
@@ -156,12 +155,9 @@ export function createTranslateLoader(http: HttpClient) {
|
|||||||
DashboardModule,
|
DashboardModule,
|
||||||
DataModule,
|
DataModule,
|
||||||
HebisModule,
|
HebisModule,
|
||||||
IonicModule.forRoot(),
|
|
||||||
IonIconModule,
|
|
||||||
JobModule,
|
JobModule,
|
||||||
FavoritesModule,
|
FavoritesModule,
|
||||||
LibraryModule,
|
LibraryModule,
|
||||||
HttpClientModule,
|
|
||||||
ProfilePageModule,
|
ProfilePageModule,
|
||||||
FeedbackModule,
|
FeedbackModule,
|
||||||
MapModule,
|
MapModule,
|
||||||
@@ -185,6 +181,7 @@ export function createTranslateLoader(http: HttpClient) {
|
|||||||
LoggerModule.forRoot({
|
LoggerModule.forRoot({
|
||||||
level: environment.production ? NgxLoggerLevel.FATAL : NgxLoggerLevel.TRACE,
|
level: environment.production ? NgxLoggerLevel.FATAL : NgxLoggerLevel.TRACE,
|
||||||
}),
|
}),
|
||||||
|
IonApp,
|
||||||
],
|
],
|
||||||
providers: [
|
providers: [
|
||||||
{
|
{
|
||||||
@@ -221,6 +218,8 @@ export function createTranslateLoader(http: HttpClient) {
|
|||||||
useClass: ServiceHandlerInterceptor,
|
useClass: ServiceHandlerInterceptor,
|
||||||
multi: true,
|
multi: true,
|
||||||
},
|
},
|
||||||
|
provideIonicAngular(),
|
||||||
|
provideHttpClient(withInterceptorsFromDi()),
|
||||||
],
|
],
|
||||||
})
|
})
|
||||||
export class AppModule {
|
export class AppModule {
|
||||||
|
|||||||
@@ -13,7 +13,7 @@
|
|||||||
* this program. If not, see <https://www.gnu.org/licenses/>.
|
* this program. If not, see <https://www.gnu.org/licenses/>.
|
||||||
*/
|
*/
|
||||||
import {Component, OnInit} from '@angular/core';
|
import {Component, OnInit} from '@angular/core';
|
||||||
import {ModalController} from '@ionic/angular';
|
import {ModalController} from '@ionic/angular/standalone';
|
||||||
import {AboutLicenseModalComponent} from './about-license-modal.component';
|
import {AboutLicenseModalComponent} from './about-license-modal.component';
|
||||||
import licensesFile from 'src/assets/about/licenses.json';
|
import licensesFile from 'src/assets/about/licenses.json';
|
||||||
|
|
||||||
|
|||||||
@@ -16,7 +16,6 @@ import {RouterModule, Routes} from '@angular/router';
|
|||||||
import {NgModule} from '@angular/core';
|
import {NgModule} from '@angular/core';
|
||||||
import {CommonModule} from '@angular/common';
|
import {CommonModule} from '@angular/common';
|
||||||
import {FormsModule} from '@angular/forms';
|
import {FormsModule} from '@angular/forms';
|
||||||
import {IonicModule} from '@ionic/angular';
|
|
||||||
import {TranslateModule} from '@ngx-translate/core';
|
import {TranslateModule} from '@ngx-translate/core';
|
||||||
import {ThingTranslateModule} from '../../translation/thing-translate.module';
|
import {ThingTranslateModule} from '../../translation/thing-translate.module';
|
||||||
import {AboutPageComponent} from './about-page/about-page.component';
|
import {AboutPageComponent} from './about-page/about-page.component';
|
||||||
@@ -28,8 +27,31 @@ import {ScrollingModule} from '@angular/cdk/scrolling';
|
|||||||
import {AboutLicenseModalComponent} from './about-license-modal.component';
|
import {AboutLicenseModalComponent} from './about-license-modal.component';
|
||||||
import {AboutChangelogComponent} from './about-changelog.component';
|
import {AboutChangelogComponent} from './about-changelog.component';
|
||||||
import {UtilModule} from '../../util/util.module';
|
import {UtilModule} from '../../util/util.module';
|
||||||
import {IonIconModule} from '../../util/ion-icon/ion-icon.module';
|
|
||||||
import {AboutReleaseNotesComponent} from './about-release-notes.component';
|
import {AboutReleaseNotesComponent} from './about-release-notes.component';
|
||||||
|
import {
|
||||||
|
IonBackButton,
|
||||||
|
IonButton,
|
||||||
|
IonButtons,
|
||||||
|
IonCard,
|
||||||
|
IonCardContent,
|
||||||
|
IonCardHeader,
|
||||||
|
IonCardSubtitle,
|
||||||
|
IonCardTitle,
|
||||||
|
IonChip,
|
||||||
|
IonCol,
|
||||||
|
IonContent,
|
||||||
|
IonGrid,
|
||||||
|
IonHeader,
|
||||||
|
IonLabel,
|
||||||
|
IonList,
|
||||||
|
IonRouterLink,
|
||||||
|
IonRow,
|
||||||
|
IonSkeletonText,
|
||||||
|
IonText,
|
||||||
|
IonTitle,
|
||||||
|
IonToolbar,
|
||||||
|
} from '@ionic/angular/standalone';
|
||||||
|
import {IonIconDirective} from 'src/app/util/ion-icon/ion-icon.directive';
|
||||||
|
|
||||||
const settingsRoutes: Routes = [
|
const settingsRoutes: Routes = [
|
||||||
{path: 'about', component: AboutPageComponent},
|
{path: 'about', component: AboutPageComponent},
|
||||||
@@ -55,9 +77,8 @@ const settingsRoutes: Routes = [
|
|||||||
],
|
],
|
||||||
imports: [
|
imports: [
|
||||||
CommonModule,
|
CommonModule,
|
||||||
IonIconModule,
|
IonIconDirective,
|
||||||
FormsModule,
|
FormsModule,
|
||||||
IonicModule.forRoot(),
|
|
||||||
TranslateModule.forChild(),
|
TranslateModule.forChild(),
|
||||||
ThingTranslateModule.forChild(),
|
ThingTranslateModule.forChild(),
|
||||||
RouterModule.forChild(settingsRoutes),
|
RouterModule.forChild(settingsRoutes),
|
||||||
@@ -65,6 +86,27 @@ const settingsRoutes: Routes = [
|
|||||||
DataModule,
|
DataModule,
|
||||||
ScrollingModule,
|
ScrollingModule,
|
||||||
UtilModule,
|
UtilModule,
|
||||||
|
IonRouterLink,
|
||||||
|
IonBackButton,
|
||||||
|
IonButton,
|
||||||
|
IonButtons,
|
||||||
|
IonText,
|
||||||
|
IonSkeletonText,
|
||||||
|
IonTitle,
|
||||||
|
IonToolbar,
|
||||||
|
IonHeader,
|
||||||
|
IonLabel,
|
||||||
|
IonGrid,
|
||||||
|
IonRow,
|
||||||
|
IonCol,
|
||||||
|
IonCard,
|
||||||
|
IonCardHeader,
|
||||||
|
IonCardTitle,
|
||||||
|
IonCardContent,
|
||||||
|
IonCardSubtitle,
|
||||||
|
IonChip,
|
||||||
|
IonList,
|
||||||
|
IonContent,
|
||||||
],
|
],
|
||||||
})
|
})
|
||||||
export class AboutModule {}
|
export class AboutModule {}
|
||||||
|
|||||||
@@ -1,12 +1,12 @@
|
|||||||
import {Injectable} from '@angular/core';
|
import {Injectable} from '@angular/core';
|
||||||
import {StorageProvider} from '../storage/storage.provider';
|
import {StorageProvider} from '../storage/storage.provider';
|
||||||
import {ConfigProvider} from '../config/config.provider';
|
import {ConfigProvider} from '../config/config.provider';
|
||||||
import {ModalController} from '@ionic/angular';
|
import {ModalController} from '@ionic/angular/standalone';
|
||||||
|
import {Capacitor} from '@capacitor/core';
|
||||||
import {ReleaseNotesComponent} from './release-notes.component';
|
import {ReleaseNotesComponent} from './release-notes.component';
|
||||||
import {SCAppVersionInfo} from '@openstapps/core';
|
import {SCAppVersionInfo} from '@openstapps/core';
|
||||||
import {App} from '@capacitor/app';
|
import {App} from '@capacitor/app';
|
||||||
import {coerce} from 'semver';
|
import {coerce} from 'semver';
|
||||||
import {Capacitor} from '@capacitor/core';
|
|
||||||
|
|
||||||
export const RELEASE_NOTES_SHOWN_KEY = 'release_notes_shown';
|
export const RELEASE_NOTES_SHOWN_KEY = 'release_notes_shown';
|
||||||
|
|
||||||
|
|||||||
@@ -2,7 +2,14 @@ import {ChangeDetectionStrategy, Component, Input} from '@angular/core';
|
|||||||
import {SCAppVersionInfo} from '@openstapps/core';
|
import {SCAppVersionInfo} from '@openstapps/core';
|
||||||
import {MarkdownModule} from 'ngx-markdown';
|
import {MarkdownModule} from 'ngx-markdown';
|
||||||
import {ThingTranslateModule} from '../../translation/thing-translate.module';
|
import {ThingTranslateModule} from '../../translation/thing-translate.module';
|
||||||
import {IonicModule, ModalController} from '@ionic/angular';
|
import {
|
||||||
|
IonButton,
|
||||||
|
IonButtons,
|
||||||
|
IonHeader,
|
||||||
|
IonTitle,
|
||||||
|
IonToolbar,
|
||||||
|
ModalController,
|
||||||
|
} from '@ionic/angular/standalone';
|
||||||
import {TranslateModule} from '@ngx-translate/core';
|
import {TranslateModule} from '@ngx-translate/core';
|
||||||
import {UtilModule} from '../../util/util.module';
|
import {UtilModule} from '../../util/util.module';
|
||||||
|
|
||||||
@@ -12,7 +19,17 @@ import {UtilModule} from '../../util/util.module';
|
|||||||
styleUrls: ['release-notes.scss', 'release-notes-markdown.scss'],
|
styleUrls: ['release-notes.scss', 'release-notes-markdown.scss'],
|
||||||
standalone: true,
|
standalone: true,
|
||||||
changeDetection: ChangeDetectionStrategy.OnPush,
|
changeDetection: ChangeDetectionStrategy.OnPush,
|
||||||
imports: [UtilModule, MarkdownModule, ThingTranslateModule, IonicModule, TranslateModule],
|
imports: [
|
||||||
|
UtilModule,
|
||||||
|
MarkdownModule,
|
||||||
|
ThingTranslateModule,
|
||||||
|
TranslateModule,
|
||||||
|
IonButton,
|
||||||
|
IonButtons,
|
||||||
|
IonToolbar,
|
||||||
|
IonHeader,
|
||||||
|
IonTitle,
|
||||||
|
],
|
||||||
})
|
})
|
||||||
export class ReleaseNotesComponent {
|
export class ReleaseNotesComponent {
|
||||||
@Input() versionInfos: SCAppVersionInfo[];
|
@Input() versionInfos: SCAppVersionInfo[];
|
||||||
|
|||||||
@@ -19,7 +19,6 @@ import {AssessmentBaseInfoComponent} from './types/assessment/assessment-base-in
|
|||||||
import {AssessmentDetailComponent} from './types/assessment/assessment-detail.component';
|
import {AssessmentDetailComponent} from './types/assessment/assessment-detail.component';
|
||||||
import {CommonModule} from '@angular/common';
|
import {CommonModule} from '@angular/common';
|
||||||
import {FormsModule} from '@angular/forms';
|
import {FormsModule} from '@angular/forms';
|
||||||
import {IonicModule} from '@ionic/angular';
|
|
||||||
import {TranslateModule} from '@ngx-translate/core';
|
import {TranslateModule} from '@ngx-translate/core';
|
||||||
import {DataModule} from '../data/data.module';
|
import {DataModule} from '../data/data.module';
|
||||||
import {ThingTranslateModule} from '../../translation/thing-translate.module';
|
import {ThingTranslateModule} from '../../translation/thing-translate.module';
|
||||||
@@ -35,8 +34,25 @@ import {AssessmentsProvider} from './assessments.provider';
|
|||||||
import {AssessmentsSimpleDataListComponent} from './list/assessments-simple-data-list.component';
|
import {AssessmentsSimpleDataListComponent} from './list/assessments-simple-data-list.component';
|
||||||
import {ProtectedRoutes} from '../auth/protected.routes';
|
import {ProtectedRoutes} from '../auth/protected.routes';
|
||||||
import {AssessmentsTreeListComponent} from './list/assessments-tree-list.component';
|
import {AssessmentsTreeListComponent} from './list/assessments-tree-list.component';
|
||||||
import {IonIconModule} from '../../util/ion-icon/ion-icon.module';
|
|
||||||
import {UtilModule} from '../../util/util.module';
|
import {UtilModule} from '../../util/util.module';
|
||||||
|
import {
|
||||||
|
IonBackButton,
|
||||||
|
IonButton,
|
||||||
|
IonButtons,
|
||||||
|
IonCard,
|
||||||
|
IonCardContent,
|
||||||
|
IonContent,
|
||||||
|
IonHeader,
|
||||||
|
IonItem,
|
||||||
|
IonLabel,
|
||||||
|
IonList,
|
||||||
|
IonNote,
|
||||||
|
IonSegment,
|
||||||
|
IonSegmentButton,
|
||||||
|
IonTitle,
|
||||||
|
IonToolbar,
|
||||||
|
} from '@ionic/angular/standalone';
|
||||||
|
import {IonIconDirective} from 'src/app/util/ion-icon/ion-icon.directive';
|
||||||
|
|
||||||
const routes: ProtectedRoutes = [
|
const routes: ProtectedRoutes = [
|
||||||
{
|
{
|
||||||
@@ -69,14 +85,28 @@ const routes: ProtectedRoutes = [
|
|||||||
imports: [
|
imports: [
|
||||||
CommonModule,
|
CommonModule,
|
||||||
FormsModule,
|
FormsModule,
|
||||||
IonIconModule,
|
IonIconDirective,
|
||||||
IonicModule,
|
|
||||||
RouterModule.forChild(routes),
|
RouterModule.forChild(routes),
|
||||||
TranslateModule,
|
TranslateModule,
|
||||||
DataModule,
|
DataModule,
|
||||||
ThingTranslateModule,
|
ThingTranslateModule,
|
||||||
MomentModule,
|
MomentModule,
|
||||||
UtilModule,
|
UtilModule,
|
||||||
|
IonBackButton,
|
||||||
|
IonList,
|
||||||
|
IonItem,
|
||||||
|
IonNote,
|
||||||
|
IonCardContent,
|
||||||
|
IonCard,
|
||||||
|
IonLabel,
|
||||||
|
IonSegment,
|
||||||
|
IonSegmentButton,
|
||||||
|
IonButtons,
|
||||||
|
IonTitle,
|
||||||
|
IonContent,
|
||||||
|
IonHeader,
|
||||||
|
IonToolbar,
|
||||||
|
IonButton,
|
||||||
],
|
],
|
||||||
providers: [AssessmentsProvider],
|
providers: [AssessmentsProvider],
|
||||||
exports: [],
|
exports: [],
|
||||||
|
|||||||
@@ -17,7 +17,7 @@ import {Component, DestroyRef, inject, Input, OnInit, ViewChild} from '@angular/
|
|||||||
import {ActivatedRoute} from '@angular/router';
|
import {ActivatedRoute} from '@angular/router';
|
||||||
import {AssessmentsProvider} from '../assessments.provider';
|
import {AssessmentsProvider} from '../assessments.provider';
|
||||||
import {DataDetailComponent, ExternalDataLoadEvent} from '../../data/detail/data-detail.component';
|
import {DataDetailComponent, ExternalDataLoadEvent} from '../../data/detail/data-detail.component';
|
||||||
import {NavController} from '@ionic/angular';
|
import {NavController} from '@ionic/angular/standalone';
|
||||||
import {DataRoutingService} from '../../data/data-routing.service';
|
import {DataRoutingService} from '../../data/data-routing.service';
|
||||||
import {SCAssessment} from '@openstapps/core';
|
import {SCAssessment} from '@openstapps/core';
|
||||||
import {takeUntilDestroyed} from '@angular/core/rxjs-interop';
|
import {takeUntilDestroyed} from '@angular/core/rxjs-interop';
|
||||||
|
|||||||
@@ -13,7 +13,7 @@
|
|||||||
* this program. If not, see <https://www.gnu.org/licenses/>.
|
* this program. If not, see <https://www.gnu.org/licenses/>.
|
||||||
*/
|
*/
|
||||||
import {Component} from '@angular/core';
|
import {Component} from '@angular/core';
|
||||||
import {NavController} from '@ionic/angular';
|
import {NavController} from '@ionic/angular/standalone';
|
||||||
import {Router} from '@angular/router';
|
import {Router} from '@angular/router';
|
||||||
import {AuthActions, IAuthAction} from 'ionic-appauth';
|
import {AuthActions, IAuthAction} from 'ionic-appauth';
|
||||||
import {AuthHelperService} from '../../auth-helper.service';
|
import {AuthHelperService} from '../../auth-helper.service';
|
||||||
|
|||||||
@@ -22,7 +22,7 @@ import {Requestor, StorageBackend} from '@openid/appauth';
|
|||||||
import {TranslateService} from '@ngx-translate/core';
|
import {TranslateService} from '@ngx-translate/core';
|
||||||
import {PAIAAuthService} from './paia/paia-auth.service';
|
import {PAIAAuthService} from './paia/paia-auth.service';
|
||||||
import {StAppsWebHttpClient} from '../data/stapps-web-http-client.provider';
|
import {StAppsWebHttpClient} from '../data/stapps-web-http-client.provider';
|
||||||
import {HttpClientModule} from '@angular/common/http';
|
import {provideHttpClient, withInterceptorsFromDi} from '@angular/common/http';
|
||||||
import {SimpleBrowser} from '../../util/browser.factory';
|
import {SimpleBrowser} from '../../util/browser.factory';
|
||||||
import {LoggerTestingModule} from 'ngx-logger/testing';
|
import {LoggerTestingModule} from 'ngx-logger/testing';
|
||||||
|
|
||||||
@@ -54,7 +54,7 @@ describe('AuthHelperService', () => {
|
|||||||
|
|
||||||
beforeEach(() => {
|
beforeEach(() => {
|
||||||
TestBed.configureTestingModule({
|
TestBed.configureTestingModule({
|
||||||
imports: [HttpClientModule, LoggerTestingModule],
|
imports: [LoggerTestingModule],
|
||||||
providers: [
|
providers: [
|
||||||
StAppsWebHttpClient,
|
StAppsWebHttpClient,
|
||||||
{
|
{
|
||||||
@@ -88,6 +88,7 @@ describe('AuthHelperService', () => {
|
|||||||
provide: SimpleBrowser,
|
provide: SimpleBrowser,
|
||||||
useValue: simpleBrowserMock,
|
useValue: simpleBrowserMock,
|
||||||
},
|
},
|
||||||
|
provideHttpClient(withInterceptorsFromDi()),
|
||||||
],
|
],
|
||||||
});
|
});
|
||||||
authHelperService = TestBed.inject(AuthHelperService);
|
authHelperService = TestBed.inject(AuthHelperService);
|
||||||
|
|||||||
@@ -29,7 +29,7 @@ import {StorageProvider} from '../storage/storage.provider';
|
|||||||
import {DefaultAuthService} from './default-auth.service';
|
import {DefaultAuthService} from './default-auth.service';
|
||||||
import {PAIAAuthService} from './paia/paia-auth.service';
|
import {PAIAAuthService} from './paia/paia-auth.service';
|
||||||
import {SimpleBrowser} from '../../util/browser.factory';
|
import {SimpleBrowser} from '../../util/browser.factory';
|
||||||
import {AlertController} from '@ionic/angular';
|
import {AlertController} from '@ionic/angular/standalone';
|
||||||
|
|
||||||
const AUTH_ORIGIN_PATH = 'stapps.auth.origin_path';
|
const AUTH_ORIGIN_PATH = 'stapps.auth.origin_path';
|
||||||
|
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
import {NgModule} from '@angular/core';
|
import {NgModule} from '@angular/core';
|
||||||
import {CommonModule} from '@angular/common';
|
import {CommonModule} from '@angular/common';
|
||||||
import {Platform} from '@ionic/angular';
|
import {Platform} from '@ionic/angular/standalone';
|
||||||
import {Requestor, StorageBackend} from '@openid/appauth';
|
import {Requestor, StorageBackend} from '@openid/appauth';
|
||||||
import {storageFactory} from './factories';
|
import {storageFactory} from './factories';
|
||||||
import {Browser} from 'ionic-appauth';
|
import {Browser} from 'ionic-appauth';
|
||||||
|
|||||||
@@ -20,7 +20,7 @@ import {Browser} from 'ionic-appauth';
|
|||||||
import {nowInSeconds, Requestor, StorageBackend} from '@openid/appauth';
|
import {nowInSeconds, Requestor, StorageBackend} from '@openid/appauth';
|
||||||
import {TranslateService} from '@ngx-translate/core';
|
import {TranslateService} from '@ngx-translate/core';
|
||||||
import {StAppsWebHttpClient} from '../data/stapps-web-http-client.provider';
|
import {StAppsWebHttpClient} from '../data/stapps-web-http-client.provider';
|
||||||
import {HttpClientModule} from '@angular/common/http';
|
import {provideHttpClient, withInterceptorsFromDi} from '@angular/common/http';
|
||||||
import {IonicStorage} from 'ionic-appauth/lib';
|
import {IonicStorage} from 'ionic-appauth/lib';
|
||||||
import {RouterModule} from '@angular/router';
|
import {RouterModule} from '@angular/router';
|
||||||
import {LoggerTestingModule} from 'ngx-logger/testing';
|
import {LoggerTestingModule} from 'ngx-logger/testing';
|
||||||
@@ -35,7 +35,7 @@ describe('AuthService', () => {
|
|||||||
storageBackendSpy = jasmine.createSpyObj('StorageBackend', ['getItem']);
|
storageBackendSpy = jasmine.createSpyObj('StorageBackend', ['getItem']);
|
||||||
|
|
||||||
TestBed.configureTestingModule({
|
TestBed.configureTestingModule({
|
||||||
imports: [HttpClientModule, LoggerTestingModule, RouterModule.forRoot([])],
|
imports: [LoggerTestingModule, RouterModule.forRoot([])],
|
||||||
providers: [
|
providers: [
|
||||||
StAppsWebHttpClient,
|
StAppsWebHttpClient,
|
||||||
{
|
{
|
||||||
@@ -54,6 +54,7 @@ describe('AuthService', () => {
|
|||||||
useValue: storageBackendSpy,
|
useValue: storageBackendSpy,
|
||||||
},
|
},
|
||||||
Requestor,
|
Requestor,
|
||||||
|
provideHttpClient(withInterceptorsFromDi()),
|
||||||
],
|
],
|
||||||
});
|
});
|
||||||
defaultAuthService = TestBed.inject(DefaultAuthService);
|
defaultAuthService = TestBed.inject(DefaultAuthService);
|
||||||
|
|||||||
@@ -14,7 +14,7 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
import {HttpClient} from '@angular/common/http';
|
import {HttpClient} from '@angular/common/http';
|
||||||
import {Platform} from '@ionic/angular';
|
import {Platform} from '@ionic/angular/standalone';
|
||||||
import {CapacitorRequestor} from '../capacitor-requestor';
|
import {CapacitorRequestor} from '../capacitor-requestor';
|
||||||
import {NgHttpService} from '../ng-http.service';
|
import {NgHttpService} from '../ng-http.service';
|
||||||
|
|
||||||
|
|||||||
@@ -13,7 +13,7 @@
|
|||||||
* this program. If not, see <https://www.gnu.org/licenses/>.
|
* this program. If not, see <https://www.gnu.org/licenses/>.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
import {Platform} from '@ionic/angular';
|
import {Platform} from '@ionic/angular/standalone';
|
||||||
import {IonicStorage} from 'ionic-appauth/lib';
|
import {IonicStorage} from 'ionic-appauth/lib';
|
||||||
import {SafeCapacitorSecureStorage} from '../../storage/capacitor-secure-storage';
|
import {SafeCapacitorSecureStorage} from '../../storage/capacitor-secure-storage';
|
||||||
|
|
||||||
|
|||||||
@@ -67,7 +67,7 @@
|
|||||||
<div class="horizontal-flex">
|
<div class="horizontal-flex">
|
||||||
<ion-button fill="clear" (click)="export()">
|
<ion-button fill="clear" (click)="export()">
|
||||||
{{ 'share' | translate }}
|
{{ 'share' | translate }}
|
||||||
<ion-icon slot="end" md="share" ios="ios_share"></ion-icon>
|
<ion-icon slot="end" name="share"></ion-icon>
|
||||||
</ion-button>
|
</ion-button>
|
||||||
@if (isWeb) {
|
@if (isWeb) {
|
||||||
<ion-button fill="outline" (click)="download()">
|
<ion-button fill="outline" (click)="download()">
|
||||||
|
|||||||
@@ -18,26 +18,46 @@ import {AddEventReviewModalComponent} from './add-event-review-modal.component';
|
|||||||
import {Calendar} from '@awesome-cordova-plugins/calendar/ngx';
|
import {Calendar} from '@awesome-cordova-plugins/calendar/ngx';
|
||||||
import {CalendarService} from './calendar.service';
|
import {CalendarService} from './calendar.service';
|
||||||
import {ScheduleProvider} from './schedule.provider';
|
import {ScheduleProvider} from './schedule.provider';
|
||||||
import {IonicModule} from '@ionic/angular';
|
|
||||||
import {TranslateModule} from '@ngx-translate/core';
|
import {TranslateModule} from '@ngx-translate/core';
|
||||||
import {ThingTranslateModule} from '../../translation/thing-translate.module';
|
import {ThingTranslateModule} from '../../translation/thing-translate.module';
|
||||||
import {FormsModule} from '@angular/forms';
|
import {FormsModule} from '@angular/forms';
|
||||||
import {CommonModule} from '@angular/common';
|
import {CommonModule} from '@angular/common';
|
||||||
import {MomentModule} from 'ngx-moment';
|
import {MomentModule} from 'ngx-moment';
|
||||||
import {UtilModule} from '../../util/util.module';
|
import {UtilModule} from '../../util/util.module';
|
||||||
import {IonIconModule} from '../../util/ion-icon/ion-icon.module';
|
import {
|
||||||
|
IonButton,
|
||||||
|
IonCardContent,
|
||||||
|
IonCardHeader,
|
||||||
|
IonCardTitle,
|
||||||
|
IonItem,
|
||||||
|
IonItemDivider,
|
||||||
|
IonItemGroup,
|
||||||
|
IonLabel,
|
||||||
|
IonList,
|
||||||
|
IonNote,
|
||||||
|
} from '@ionic/angular/standalone';
|
||||||
|
import {IonIconDirective} from 'src/app/util/ion-icon/ion-icon.directive';
|
||||||
|
|
||||||
@NgModule({
|
@NgModule({
|
||||||
declarations: [AddEventReviewModalComponent],
|
declarations: [AddEventReviewModalComponent],
|
||||||
imports: [
|
imports: [
|
||||||
IonicModule.forRoot(),
|
|
||||||
TranslateModule.forChild(),
|
TranslateModule.forChild(),
|
||||||
ThingTranslateModule.forChild(),
|
ThingTranslateModule.forChild(),
|
||||||
IonIconModule,
|
IonIconDirective,
|
||||||
FormsModule,
|
FormsModule,
|
||||||
CommonModule,
|
CommonModule,
|
||||||
MomentModule,
|
MomentModule,
|
||||||
UtilModule,
|
UtilModule,
|
||||||
|
IonButton,
|
||||||
|
IonItem,
|
||||||
|
IonNote,
|
||||||
|
IonLabel,
|
||||||
|
IonList,
|
||||||
|
IonItemGroup,
|
||||||
|
IonItemDivider,
|
||||||
|
IonCardContent,
|
||||||
|
IonCardTitle,
|
||||||
|
IonCardHeader,
|
||||||
],
|
],
|
||||||
exports: [],
|
exports: [],
|
||||||
providers: [Calendar, CalendarService, ScheduleProvider],
|
providers: [Calendar, CalendarService, ScheduleProvider],
|
||||||
|
|||||||
@@ -16,14 +16,29 @@ import {CommonModule} from '@angular/common';
|
|||||||
import {NgModule} from '@angular/core';
|
import {NgModule} from '@angular/core';
|
||||||
import {FormsModule} from '@angular/forms';
|
import {FormsModule} from '@angular/forms';
|
||||||
import {RouterModule, Routes} from '@angular/router';
|
import {RouterModule, Routes} from '@angular/router';
|
||||||
import {IonicModule} from '@ionic/angular';
|
|
||||||
import {TranslateModule} from '@ngx-translate/core';
|
import {TranslateModule} from '@ngx-translate/core';
|
||||||
import {MomentModule} from 'ngx-moment';
|
import {MomentModule} from 'ngx-moment';
|
||||||
import {DataModule} from '../data/data.module';
|
import {DataModule} from '../data/data.module';
|
||||||
import {SettingsProvider} from '../settings/settings.provider';
|
import {SettingsProvider} from '../settings/settings.provider';
|
||||||
import {CatalogComponent} from './catalog.component';
|
import {CatalogComponent} from './catalog.component';
|
||||||
import {UtilModule} from '../../util/util.module';
|
import {UtilModule} from '../../util/util.module';
|
||||||
import {IonIconModule} from '../../util/ion-icon/ion-icon.module';
|
import {
|
||||||
|
IonHeader,
|
||||||
|
IonToolbar,
|
||||||
|
IonButtons,
|
||||||
|
IonBackButton,
|
||||||
|
IonTitle,
|
||||||
|
IonSegment,
|
||||||
|
IonSegmentButton,
|
||||||
|
IonLabel,
|
||||||
|
IonContent,
|
||||||
|
IonList,
|
||||||
|
IonItem,
|
||||||
|
IonGrid,
|
||||||
|
IonRow,
|
||||||
|
IonCol,
|
||||||
|
} from '@ionic/angular/standalone';
|
||||||
|
import {IonIconDirective} from 'src/app/util/ion-icon/ion-icon.directive';
|
||||||
|
|
||||||
const catalogRoutes: Routes = [
|
const catalogRoutes: Routes = [
|
||||||
{path: 'catalog', component: CatalogComponent},
|
{path: 'catalog', component: CatalogComponent},
|
||||||
@@ -36,15 +51,28 @@ const catalogRoutes: Routes = [
|
|||||||
@NgModule({
|
@NgModule({
|
||||||
declarations: [CatalogComponent],
|
declarations: [CatalogComponent],
|
||||||
imports: [
|
imports: [
|
||||||
IonicModule.forRoot(),
|
|
||||||
FormsModule,
|
FormsModule,
|
||||||
TranslateModule.forChild(),
|
TranslateModule.forChild(),
|
||||||
RouterModule.forChild(catalogRoutes),
|
RouterModule.forChild(catalogRoutes),
|
||||||
IonIconModule,
|
IonIconDirective,
|
||||||
CommonModule,
|
CommonModule,
|
||||||
MomentModule,
|
MomentModule,
|
||||||
DataModule,
|
DataModule,
|
||||||
UtilModule,
|
UtilModule,
|
||||||
|
IonHeader,
|
||||||
|
IonToolbar,
|
||||||
|
IonButtons,
|
||||||
|
IonBackButton,
|
||||||
|
IonTitle,
|
||||||
|
IonSegment,
|
||||||
|
IonSegmentButton,
|
||||||
|
IonLabel,
|
||||||
|
IonContent,
|
||||||
|
IonList,
|
||||||
|
IonItem,
|
||||||
|
IonGrid,
|
||||||
|
IonRow,
|
||||||
|
IonCol,
|
||||||
],
|
],
|
||||||
providers: [SettingsProvider],
|
providers: [SettingsProvider],
|
||||||
})
|
})
|
||||||
|
|||||||
@@ -13,7 +13,7 @@
|
|||||||
* this program. If not, see <https://www.gnu.org/licenses/>.
|
* this program. If not, see <https://www.gnu.org/licenses/>.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
import {Animation, AnimationController} from '@ionic/angular';
|
import {Animation, AnimationController} from '@ionic/angular/standalone';
|
||||||
import {NgZone} from '@angular/core';
|
import {NgZone} from '@angular/core';
|
||||||
|
|
||||||
export class DashboardCollapse {
|
export class DashboardCollapse {
|
||||||
|
|||||||
@@ -19,7 +19,7 @@
|
|||||||
</ion-toolbar>
|
</ion-toolbar>
|
||||||
</ion-header>
|
</ion-header>
|
||||||
<div #schedule class="schedule">
|
<div #schedule class="schedule">
|
||||||
<a [routerLink]="['/schedule/week-overview']">
|
<a [routerLink]="['/schedule/weekly-view']">
|
||||||
<ion-icon [size]="36" [weight]="300" name="calendar_month"></ion-icon>
|
<ion-icon [size]="36" [weight]="300" name="calendar_month"></ion-icon>
|
||||||
<ion-label [innerHTML]="'schedule.recurring' | translate"></ion-label>
|
<ion-label [innerHTML]="'schedule.recurring' | translate"></ion-label>
|
||||||
</a>
|
</a>
|
||||||
|
|||||||
@@ -118,10 +118,6 @@ ion-content {
|
|||||||
font-weight: var(--font-weight-semi-bold);
|
font-weight: var(--font-weight-semi-bold);
|
||||||
word-break: break-word;
|
word-break: break-word;
|
||||||
}
|
}
|
||||||
|
|
||||||
&:hover ::ng-deep stapps-icon {
|
|
||||||
--fill: 1;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
a:last-child {
|
a:last-child {
|
||||||
@@ -159,4 +155,8 @@ ion-content {
|
|||||||
line-height: 1.2;
|
line-height: 1.2;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
a:first-child:hover {
|
||||||
|
--fill: 1;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -29,7 +29,7 @@ import moment from 'moment';
|
|||||||
import {SCDateSeries, SCUuid} from '@openstapps/core';
|
import {SCDateSeries, SCUuid} from '@openstapps/core';
|
||||||
import {DataRoutingService} from '../data/data-routing.service';
|
import {DataRoutingService} from '../data/data-routing.service';
|
||||||
import {ScheduleProvider} from '../calendar/schedule.provider';
|
import {ScheduleProvider} from '../calendar/schedule.provider';
|
||||||
import {AnimationController, IonContent} from '@ionic/angular';
|
import {AnimationController, IonContent} from '@ionic/angular/standalone';
|
||||||
import {DashboardCollapse} from './dashboard-collapse';
|
import {DashboardCollapse} from './dashboard-collapse';
|
||||||
import {BreakpointObserver} from '@angular/cdk/layout';
|
import {BreakpointObserver} from '@angular/cdk/layout';
|
||||||
import {takeUntilDestroyed} from '@angular/core/rxjs-interop';
|
import {takeUntilDestroyed} from '@angular/core/rxjs-interop';
|
||||||
@@ -37,7 +37,7 @@ import {takeUntilDestroyed} from '@angular/core/rxjs-interop';
|
|||||||
@Component({
|
@Component({
|
||||||
selector: 'app-dashboard',
|
selector: 'app-dashboard',
|
||||||
templateUrl: './dashboard.component.html',
|
templateUrl: './dashboard.component.html',
|
||||||
styleUrls: ['./dashboard.component.scss', '/dashboard.collapse.component.scss'],
|
styleUrls: ['./dashboard.component.scss', './dashboard.collapse.component.scss'],
|
||||||
})
|
})
|
||||||
export class DashboardComponent implements OnInit, OnDestroy, AfterViewInit {
|
export class DashboardComponent implements OnInit, OnDestroy, AfterViewInit {
|
||||||
@ViewChild('toolbar', {read: ElementRef}) toolbarRef: ElementRef;
|
@ViewChild('toolbar', {read: ElementRef}) toolbarRef: ElementRef;
|
||||||
|
|||||||
@@ -16,7 +16,6 @@ import {CommonModule} from '@angular/common';
|
|||||||
import {NgModule} from '@angular/core';
|
import {NgModule} from '@angular/core';
|
||||||
import {FormsModule} from '@angular/forms';
|
import {FormsModule} from '@angular/forms';
|
||||||
import {RouterModule, Routes} from '@angular/router';
|
import {RouterModule, Routes} from '@angular/router';
|
||||||
import {IonicModule} from '@ionic/angular';
|
|
||||||
import {SwiperModule} from 'swiper/angular';
|
import {SwiperModule} from 'swiper/angular';
|
||||||
import {TranslateModule, TranslatePipe} from '@ngx-translate/core';
|
import {TranslateModule, TranslatePipe} from '@ngx-translate/core';
|
||||||
import {MomentModule} from 'ngx-moment';
|
import {MomentModule} from 'ngx-moment';
|
||||||
@@ -30,10 +29,23 @@ import {MensaSectionContentComponent} from './sections/mensa-section/mensa-secti
|
|||||||
import {FavoritesSectionComponent} from './sections/favorites-section/favorites-section.component';
|
import {FavoritesSectionComponent} from './sections/favorites-section/favorites-section.component';
|
||||||
import {ThingTranslateModule} from '../../translation/thing-translate.module';
|
import {ThingTranslateModule} from '../../translation/thing-translate.module';
|
||||||
import {UtilModule} from '../../util/util.module';
|
import {UtilModule} from '../../util/util.module';
|
||||||
import {IonIconModule} from '../../util/ion-icon/ion-icon.module';
|
|
||||||
import {NewsModule} from '../news/news.module';
|
import {NewsModule} from '../news/news.module';
|
||||||
import {JobSectionComponent} from './sections/jobs-section/job-section.component';
|
import {JobSectionComponent} from './sections/jobs-section/job-section.component';
|
||||||
import {JobModule} from '../jobs/jobs.module';
|
import {JobModule} from '../jobs/jobs.module';
|
||||||
|
import {
|
||||||
|
IonHeader,
|
||||||
|
IonToolbar,
|
||||||
|
IonLabel,
|
||||||
|
IonImg,
|
||||||
|
IonContent,
|
||||||
|
IonButton,
|
||||||
|
IonItem,
|
||||||
|
IonThumbnail,
|
||||||
|
IonSearchbar,
|
||||||
|
IonRippleEffect,
|
||||||
|
IonRouterLink,
|
||||||
|
} from '@ionic/angular/standalone';
|
||||||
|
import {IonIconDirective} from 'src/app/util/ion-icon/ion-icon.directive';
|
||||||
|
|
||||||
const catalogRoutes: Routes = [
|
const catalogRoutes: Routes = [
|
||||||
{
|
{
|
||||||
@@ -56,8 +68,7 @@ const catalogRoutes: Routes = [
|
|||||||
JobSectionComponent,
|
JobSectionComponent,
|
||||||
],
|
],
|
||||||
imports: [
|
imports: [
|
||||||
IonicModule.forRoot(),
|
IonIconDirective,
|
||||||
IonIconModule,
|
|
||||||
FormsModule,
|
FormsModule,
|
||||||
TranslateModule.forChild(),
|
TranslateModule.forChild(),
|
||||||
RouterModule.forChild(catalogRoutes),
|
RouterModule.forChild(catalogRoutes),
|
||||||
@@ -69,6 +80,17 @@ const catalogRoutes: Routes = [
|
|||||||
UtilModule,
|
UtilModule,
|
||||||
NewsModule,
|
NewsModule,
|
||||||
JobModule,
|
JobModule,
|
||||||
|
IonHeader,
|
||||||
|
IonToolbar,
|
||||||
|
IonImg,
|
||||||
|
IonContent,
|
||||||
|
IonButton,
|
||||||
|
IonItem,
|
||||||
|
IonLabel,
|
||||||
|
IonThumbnail,
|
||||||
|
IonSearchbar,
|
||||||
|
IonRippleEffect,
|
||||||
|
IonRouterLink,
|
||||||
],
|
],
|
||||||
providers: [SettingsProvider, TranslatePipe],
|
providers: [SettingsProvider, TranslatePipe],
|
||||||
})
|
})
|
||||||
|
|||||||
@@ -37,8 +37,5 @@
|
|||||||
{{ 'dashboard.jobs.noJobs' | translate }}
|
{{ 'dashboard.jobs.noJobs' | translate }}
|
||||||
</ion-label>
|
</ion-label>
|
||||||
</ion-item>
|
</ion-item>
|
||||||
<ion-button slot="button-end" fill="clear" color="medium" [routerLink]="['/jobs']">
|
|
||||||
<ion-icon slot="icon-only" name="search" [size]="24"></ion-icon>
|
|
||||||
</ion-button>
|
|
||||||
}
|
}
|
||||||
</stapps-section>
|
</stapps-section>
|
||||||
|
|||||||
@@ -35,4 +35,6 @@ export class JobSectionComponent {
|
|||||||
from: 0,
|
from: 0,
|
||||||
})
|
})
|
||||||
.then((result: SCSearchResult) => result.data);
|
.then((result: SCSearchResult) => result.data);
|
||||||
|
|
||||||
|
constructor() {}
|
||||||
}
|
}
|
||||||
|
|||||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user