From adc36327df080d134ac00b409414ee006e9c5f08 Mon Sep 17 00:00:00 2001 From: Florent Gravin Date: Mon, 18 Sep 2023 10:01:17 +0200 Subject: [PATCH 1/6] geocat: customize runs proxy, nx, docker, github actions --- .github/workflows/artifacts.yml | 20 ++++++++++++-------- .github/workflows/checks.yml | 19 +++++++++++-------- .github/workflows/deploy.yml | 4 ++-- .github/workflows/snyk-security.yml | 2 +- .github/workflows/webcomponents.yml | 8 +++----- nx.json | 2 +- proxy-config.js | 2 +- tools/print-docker-tag.sh | 4 ++-- 8 files changed, 33 insertions(+), 28 deletions(-) diff --git a/.github/workflows/artifacts.yml b/.github/workflows/artifacts.yml index 2e6c8f2c1..347cee686 100644 --- a/.github/workflows/artifacts.yml +++ b/.github/workflows/artifacts.yml @@ -6,7 +6,7 @@ run-name: 📦 Generate artifacts for ${{ github.event_name == 'issue_comment' & on: push: branches: - - main + - geocat release: types: [published] issue_comment: @@ -59,7 +59,7 @@ jobs: - name: Derive appropriate SHAs for base and head for `nx affected` commands uses: nrwl/nx-set-shas@v2 with: - main-branch-name: 'main' + main-branch-name: 'geocat' - name: Install dependencies run: npm ci @@ -95,22 +95,26 @@ jobs: - name: Tag all docker images on main also as latest if: github.event_name == 'push' # only happens when pushing on the main branch - run: docker image ls --format 'docker tag {{.Repository}}:{{.Tag}} {{.Repository}}:latest' --filter=reference='geonetwork/*' | bash - + run: docker image ls --format 'docker tag {{.Repository}}:{{.Tag}} {{.Repository}}:latest' --filter=reference='camptocamp/*' | bash - - - name: Login to DockerHub + - name: Login to Github Packages uses: docker/login-action@v2 with: - username: ${{ secrets.DOCKER_HUB_USERNAME }} - password: ${{ secrets.DOCKER_HUB_PASSWORD }} + registry: ghcr.io + username: ${{ github.actor }} + password: ${{ secrets.GITHUB_TOKEN }} - name: Push all docker images # list all docker images, keep only the ones in the geonetwork org, and call docker push for each of them run: | - docker image ls --format '{{.Repository}}:{{.Tag}}' --filter=reference='geonetwork/*' | \ + docker image ls --format '{{.Repository}}:{{.Tag}}' --filter=reference='camptocamp/*' | \ + xargs -I '{}' docker tag '{}' ghcr.io/'{}' + docker image ls --format '{{.Repository}}:{{.Tag}}' |grep ghcr.io | \ xargs -r -L1 docker push $1 build-npm-package: - if: github.event_name != 'issue_comment' + # if: github.event_name != 'issue_comment' + if: false # disabled for geocat name: Build and publish NPM package runs-on: ubuntu-latest diff --git a/.github/workflows/checks.yml b/.github/workflows/checks.yml index 96aeaa13e..0d5fc4986 100644 --- a/.github/workflows/checks.yml +++ b/.github/workflows/checks.yml @@ -10,7 +10,7 @@ env: on: push: branches: - - main + - geocat pull_request: types: [opened, synchronize, ready_for_review] @@ -18,7 +18,7 @@ on: # on QA checks concurrency: group: checks-${{ github.ref }} - cancel-in-progress: ${{ github.ref_name != 'main' }} + cancel-in-progress: ${{ github.ref_name != 'geocat' }} jobs: format-lint-test: @@ -40,16 +40,16 @@ jobs: - name: Derive appropriate SHAs for base and head for `nx affected` commands uses: nrwl/nx-set-shas@v2 with: - main-branch-name: 'main' + main-branch-name: 'geocat' - run: npm ci - run: npx nx format:check - run: npx nx affected -t lint --parallel=3 - run: npx nx affected -t test --parallel=3 --configuration=ci --ci --codeCoverage --coverageReporters=lcov - - name: Coveralls - uses: coverallsapp/github-action@v2 - with: - allow-empty: true + # - name: Coveralls + # uses: coverallsapp/github-action@v2 + # with: + # allow-empty: true # - name: Archive Code Coverage Results (on main) # if: github.event_name != 'pull_request' @@ -91,7 +91,7 @@ jobs: - name: Derive appropriate SHAs for base and head for `nx affected` commands uses: nrwl/nx-set-shas@v2 with: - main-branch-name: 'main' + main-branch-name: 'geocat' - run: npm ci - run: npx nx affected -t build --parallel=3 @@ -115,6 +115,8 @@ jobs: - name: Derive appropriate SHAs for base and head for `nx affected` commands uses: nrwl/nx-set-shas@v3 + with: + main-branch-name: 'geocat' - name: Install dependencies run: npm ci @@ -145,6 +147,7 @@ jobs: cypress-run: name: End-to-end tests runs-on: ubuntu-latest + if: false # skip for geocat outputs: screenshotsUrl: ${{ steps.upload-screenshots.outputs.artifact-url }} steps: diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml index 7320553d0..a0d90ee01 100644 --- a/.github/workflows/deploy.yml +++ b/.github/workflows/deploy.yml @@ -9,7 +9,7 @@ env: on: push: branches: - - main + - geocat issue_comment: types: - edited @@ -38,7 +38,7 @@ jobs: name: Deploy Storybook to GitHub Pages runs-on: ubuntu-latest env: - BRANCH_NAME: ${{needs.checks.outputs.ref || 'main'}} + BRANCH_NAME: ${{needs.checks.outputs.ref || 'geocat'}} steps: - name: Dump GitHub event diff --git a/.github/workflows/snyk-security.yml b/.github/workflows/snyk-security.yml index e114be3fe..9948981c1 100644 --- a/.github/workflows/snyk-security.yml +++ b/.github/workflows/snyk-security.yml @@ -21,7 +21,7 @@ run-name: 🐺 Run Snyk on ${{ github.event_name == 'pull_request' && 'PR' || ' on: push: - branches: ['main'] + branches: ['geocat'] pull_request: types: [opened, synchronize, ready_for_review] diff --git a/.github/workflows/webcomponents.yml b/.github/workflows/webcomponents.yml index e090eb78b..87050b2da 100644 --- a/.github/workflows/webcomponents.yml +++ b/.github/workflows/webcomponents.yml @@ -5,9 +5,7 @@ run-name: 🧩 Build Web Components for ${{ github.event_name == 'issue_comment' on: push: branches: - - main - tags: - - 'v*.*.*' + - geocat release: types: [published] @@ -56,10 +54,10 @@ jobs: tag: ${{ github.ref }} overwrite: true - - name: Publish web component to ${{ env.PUBLISH_BRANCH }}-${{ github.ref_name }} branch + - name: Publish web component to ${{ env.PUBLISH_BRANCH }} branch uses: peaceiris/actions-gh-pages@v3 with: github_token: ${{ secrets.GITHUB_TOKEN }} force_orphan: true publish_dir: ./wc-dist - publish_branch: ${{ env.PUBLISH_BRANCH }}-${{ github.ref_name }} + publish_branch: ${{ env.PUBLISH_BRANCH }} diff --git a/nx.json b/nx.json index 561c05319..e8e66f2e9 100644 --- a/nx.json +++ b/nx.json @@ -1,6 +1,6 @@ { "affected": { - "defaultBase": "remotes/origin/main" + "defaultBase": "remotes/geocat/geocat" }, "npmScope": "geonetwork-ui", "tasksRunnerOptions": { diff --git a/proxy-config.js b/proxy-config.js index e492ffdbc..54bae27fa 100644 --- a/proxy-config.js +++ b/proxy-config.js @@ -1,6 +1,6 @@ module.exports = { '/geonetwork': { - target: 'http://localhost:8080', + target: 'https://www.geocat.ch', secure: true, logLevel: 'debug', changeOrigin: true, diff --git a/tools/print-docker-tag.sh b/tools/print-docker-tag.sh index d86b7bb3c..b40c693a3 100755 --- a/tools/print-docker-tag.sh +++ b/tools/print-docker-tag.sh @@ -9,8 +9,8 @@ gitTag=$(git describe --exact-match --tags 2>/dev/null | sed "s/^v//") # remove gitBranch=$(git symbolic-ref --short HEAD) gitRef=$(git rev-parse --short HEAD) dockerTag=${gitTag:-${gitBranch}} -if [ ${dockerTag} == "main" ]; then +if [ ${dockerTag} == "geocat" ]; then dockerTag=${dockerTag}-${gitRef} fi -echo "geonetwork/geonetwork-ui-${appName}:${dockerTag}" +echo "camptocamp/geocat-geonetwork-ui-${appName}:${dockerTag}" From 10d22216daadc3723d271d5ab91e2c17148fd2b9 Mon Sep 17 00:00:00 2001 From: Olivia Guyot Date: Mon, 18 Sep 2023 13:24:34 +0200 Subject: [PATCH 2/6] geocat: add location filter in search & location input in home page --- apps/datahub/src/app/app.module.ts | 5 + .../home-header/home-header.component.html | 17 ++- .../home/home-header/home-header.component.ts | 22 ++- .../elasticsearch.service.spec.ts | 27 ++-- .../elasticsearch/elasticsearch.service.ts | 33 ++--- .../router/src/lib/default/constants.ts | 2 + .../services/router-search.service.spec.ts | 57 +++++++- .../default/services/router-search.service.ts | 21 ++- .../lib/default/state/router.effects.spec.ts | 51 ++++--- .../src/lib/default/state/router.effects.ts | 37 ++++- libs/feature/search/src/index.ts | 4 + .../search/src/lib/feature-search.module.ts | 3 + .../fuzzy-search.component.spec.ts | 3 +- .../fuzzy-search/fuzzy-search.component.ts | 20 ++- .../location-search-result.model.ts | 27 ++++ .../location-search.component.css | 0 .../location-search.component.html | 10 ++ .../location-search.component.spec.ts | 128 ++++++++++++++++++ .../location-search.component.ts | 89 ++++++++++++ .../location-search.service.spec.ts | 118 ++++++++++++++++ .../location-search.service.ts | 44 ++++++ libs/feature/search/src/lib/state/actions.ts | 23 ++++ .../search/src/lib/state/effects.spec.ts | 61 ++++++++- libs/feature/search/src/lib/state/effects.ts | 34 ++++- .../search/src/lib/state/reducer.spec.ts | 27 ++++ libs/feature/search/src/lib/state/reducer.ts | 25 ++++ .../search/src/lib/state/search.facade.ts | 26 ++++ .../feature/search/src/lib/state/selectors.ts | 9 ++ .../lib/utils/service/search.service.spec.ts | 32 +++++ .../src/lib/utils/service/search.service.ts | 11 ++ .../autocomplete/autocomplete.component.html | 2 +- .../autocomplete.component.stories.ts | 19 ++- .../autocomplete/autocomplete.component.ts | 4 +- 33 files changed, 921 insertions(+), 70 deletions(-) create mode 100644 libs/feature/search/src/lib/location-search/location-search-result.model.ts create mode 100644 libs/feature/search/src/lib/location-search/location-search.component.css create mode 100644 libs/feature/search/src/lib/location-search/location-search.component.html create mode 100644 libs/feature/search/src/lib/location-search/location-search.component.spec.ts create mode 100644 libs/feature/search/src/lib/location-search/location-search.component.ts create mode 100644 libs/feature/search/src/lib/location-search/location-search.service.spec.ts create mode 100644 libs/feature/search/src/lib/location-search/location-search.service.ts diff --git a/apps/datahub/src/app/app.module.ts b/apps/datahub/src/app/app.module.ts index 9c4b45833..d8b1524f6 100644 --- a/apps/datahub/src/app/app.module.ts +++ b/apps/datahub/src/app/app.module.ts @@ -80,6 +80,7 @@ import { RecordOtherlinksComponent } from './record/record-otherlinks/record-oth import { RecordDownloadsComponent } from './record/record-downloads/record-downloads.component' import { RecordApisComponent } from './record/record-apis/record-apis.component' import { MatTabsModule } from '@angular/material/tabs' +import { ORGANIZATIONS_STRATEGY } from '@geonetwork-ui/api/repository/gn4' export const metaReducers: MetaReducer[] = !environment.production ? [] : [] // https://github.com/nrwl/nx/issues/191 @@ -201,6 +202,10 @@ export const metaReducers: MetaReducer[] = !environment.production ? [] : [] provide: ORGANIZATION_URL_TOKEN, useValue: `${ROUTER_ROUTE_SEARCH}?${ROUTE_PARAMS.PUBLISHER}=\${name}`, }, + { + provide: ORGANIZATIONS_STRATEGY, + useValue: 'groups', + }, ], bootstrap: [AppComponent], }) diff --git a/apps/datahub/src/app/home/home-header/home-header.component.html b/apps/datahub/src/app/home/home-header/home-header.component.html index f54e1905b..ba867ebcf 100644 --- a/apps/datahub/src/app/home/home-header/home-header.component.html +++ b/apps/datahub/src/app/home/home-header/home-header.component.html @@ -14,11 +14,18 @@ [style.opacity]="expandRatio" [innerHTML]="'datahub.header.title.html' | translate" > - +
+ + +
diff --git a/apps/datahub/src/app/app.module.ts b/apps/datahub/src/app/app.module.ts index d8b1524f6..331d93669 100644 --- a/apps/datahub/src/app/app.module.ts +++ b/apps/datahub/src/app/app.module.ts @@ -81,6 +81,7 @@ import { RecordDownloadsComponent } from './record/record-downloads/record-downl import { RecordApisComponent } from './record/record-apis/record-apis.component' import { MatTabsModule } from '@angular/material/tabs' import { ORGANIZATIONS_STRATEGY } from '@geonetwork-ui/api/repository/gn4' +import { GeocatHeaderComponent } from './home/geocat-header/geocat-header.component' export const metaReducers: MetaReducer[] = !environment.production ? [] : [] // https://github.com/nrwl/nx/issues/191 @@ -105,6 +106,7 @@ export const metaReducers: MetaReducer[] = !environment.production ? [] : [] RecordOtherlinksComponent, RecordDownloadsComponent, RecordApisComponent, + GeocatHeaderComponent, ], imports: [ BrowserModule, diff --git a/apps/datahub/src/app/home/geocat-header/geocat-header.component.html b/apps/datahub/src/app/home/geocat-header/geocat-header.component.html new file mode 100644 index 000000000..7fd1bb832 --- /dev/null +++ b/apps/datahub/src/app/home/geocat-header/geocat-header.component.html @@ -0,0 +1,16 @@ + diff --git a/apps/datahub/src/app/home/geocat-header/geocat-header.component.spec.ts b/apps/datahub/src/app/home/geocat-header/geocat-header.component.spec.ts new file mode 100644 index 000000000..aa591d933 --- /dev/null +++ b/apps/datahub/src/app/home/geocat-header/geocat-header.component.spec.ts @@ -0,0 +1,28 @@ +import { ComponentFixture, TestBed } from '@angular/core/testing' +import { GeocatHeaderComponent } from './geocat-header.component' +import { TranslateModule } from '@ngx-translate/core' + +jest.mock('@geonetwork-ui/util/app-config', () => ({ + getGlobalConfig: jest.fn(() => ({ + LANGUAGES: ['de', 'fr'], + })), +})) + +describe('GeocatHeaderComponent', () => { + let component: GeocatHeaderComponent + let fixture: ComponentFixture + + beforeEach(() => { + TestBed.configureTestingModule({ + declarations: [GeocatHeaderComponent], + imports: [TranslateModule.forRoot()], + }) + fixture = TestBed.createComponent(GeocatHeaderComponent) + component = fixture.componentInstance + fixture.detectChanges() + }) + + it('should create', () => { + expect(component).toBeTruthy() + }) +}) diff --git a/apps/datahub/src/app/home/geocat-header/geocat-header.component.ts b/apps/datahub/src/app/home/geocat-header/geocat-header.component.ts new file mode 100644 index 000000000..f12bb19f6 --- /dev/null +++ b/apps/datahub/src/app/home/geocat-header/geocat-header.component.ts @@ -0,0 +1,26 @@ +import { Component } from '@angular/core' +import { TranslateService } from '@ngx-translate/core' +import { LANG_2_TO_3_MAPPER } from '@geonetwork-ui/util/i18n' +import { getGlobalConfig } from '@geonetwork-ui/util/app-config' + +@Component({ + selector: 'datahub-geocat-header', + templateUrl: './geocat-header.component.html', +}) +export class GeocatHeaderComponent { + showLanguageSwitcher = getGlobalConfig().LANGUAGES?.length > 0 + + constructor(private translate: TranslateService) {} + + get docLink() { + return `https://www.geocat.admin.ch/${ + this.translate.currentLang || 'en' + }/home.html` + } + + get gnLink() { + return `/geonetwork/srv/${ + LANG_2_TO_3_MAPPER[this.translate.currentLang] || 'eng' + }/catalog.edit#/board` + } +} diff --git a/apps/datahub/src/app/home/home-header/home-header.component.html b/apps/datahub/src/app/home/home-header/home-header.component.html index ba867ebcf..0897e811d 100644 --- a/apps/datahub/src/app/home/home-header/home-header.component.html +++ b/apps/datahub/src/app/home/home-header/home-header.component.html @@ -84,8 +84,4 @@ > - diff --git a/apps/datahub/src/app/home/home-header/home-header.component.spec.ts b/apps/datahub/src/app/home/home-header/home-header.component.spec.ts index 1d764bdd7..7c92669ae 100644 --- a/apps/datahub/src/app/home/home-header/home-header.component.spec.ts +++ b/apps/datahub/src/app/home/home-header/home-header.component.spec.ts @@ -260,7 +260,8 @@ describe('HeaderComponent', () => { }) }) - describe('language switcher', () => { + // skipped for geocat + describe.skip('language switcher', () => { describe('given predefined languages', () => { it('should display language switcher', () => { const languageSwitcher = fixture.debugElement.queryAll( diff --git a/libs/ui/catalog/src/lib/language-switcher/language-switcher.component.html b/libs/ui/catalog/src/lib/language-switcher/language-switcher.component.html index ea68c4e4d..7cfe1ea08 100644 --- a/libs/ui/catalog/src/lib/language-switcher/language-switcher.component.html +++ b/libs/ui/catalog/src/lib/language-switcher/language-switcher.component.html @@ -6,5 +6,6 @@ ariaName="languages" [showTitle]="false" extraBtnClass="bg-transparent flex justify-items-center !pl-2 !py-1" + class="text-sm" > From 2072ba1343a2847d4e86ebfef2d019b740d17cc1 Mon Sep 17 00:00:00 2001 From: tkohr Date: Fri, 22 Mar 2024 11:50:06 +0100 Subject: [PATCH 5/6] geocat: adapt UI to latest geocat mockups (#12) --- .../home/navigation-menu/navigation-menu.component.html | 2 +- .../home/navigation-menu/navigation-menu.component.ts | 4 ++-- .../record/header-record/header-record.component.html | 9 +++++---- .../navigation-button/navigation-button.component.html | 9 +++++---- tailwind.base.config.js | 4 ++++ 5 files changed, 17 insertions(+), 11 deletions(-) diff --git a/apps/datahub/src/app/home/navigation-menu/navigation-menu.component.html b/apps/datahub/src/app/home/navigation-menu/navigation-menu.component.html index 2e795396d..3b9587fac 100644 --- a/apps/datahub/src/app/home/navigation-menu/navigation-menu.component.html +++ b/apps/datahub/src/app/home/navigation-menu/navigation-menu.component.html @@ -6,7 +6,7 @@ ? 'decoration-primary' : 'decoration-transparent hover:decoration-primary transition-colors' " - class="hidden sm:block sm:py-4 uppercase truncate underline decoration-4 underline-offset-[19px]" + class="hidden sm:block sm:py-4 uppercase truncate font-title text-sm underline decoration-4 underline-offset-[19px]" [style.color]="foregroundColor" translate > diff --git a/apps/datahub/src/app/home/navigation-menu/navigation-menu.component.ts b/apps/datahub/src/app/home/navigation-menu/navigation-menu.component.ts index 5523592a0..c62f391f6 100644 --- a/apps/datahub/src/app/home/navigation-menu/navigation-menu.component.ts +++ b/apps/datahub/src/app/home/navigation-menu/navigation-menu.component.ts @@ -9,7 +9,7 @@ import { ROUTER_ROUTE_NEWS, ROUTER_ROUTE_ORGANISATIONS, } from '../../router/constants' -import { getThemeConfig } from '@geonetwork-ui/util/app-config' +// import { getThemeConfig } from '@geonetwork-ui/util/app-config' marker('datahub.header.news') marker('datahub.header.datasets') @@ -21,7 +21,7 @@ marker('datahub.header.organisations') changeDetection: ChangeDetectionStrategy.OnPush, }) export class NavigationMenuComponent { - foregroundColor = getThemeConfig().HEADER_FOREGROUND_COLOR || '#ffffff' + foregroundColor = /*getThemeConfig().HEADER_FOREGROUND_COLOR ||*/ '#ffffff' displayMobileMenu = false tabLinks = [ { diff --git a/apps/datahub/src/app/record/header-record/header-record.component.html b/apps/datahub/src/app/record/header-record/header-record.component.html index 57c5637e7..732c0240f 100644 --- a/apps/datahub/src/app/record/header-record/header-record.component.html +++ b/apps/datahub/src/app/record/header-record/header-record.component.html @@ -9,6 +9,7 @@ [label]="'datahub.search.back' | translate" [icon]="'arrow_back'" [style.--navigation-button-color]="foregroundColor" + [style.--color-background]="'#ffffff'" > @@ -17,17 +18,17 @@ *ngIf="metadata?.uniqueIdentifier" [record]="metadata" [displayCount]="false" - class="flex text-background content-center" + class="flex text-background content-center bg-white rounded px-2 items-center justify-center font-semibold text-sm leading-5" [style.color]="foregroundColor" [style.--star-toggle-enabled-color]="foregroundColor" [style.--star-toggle-disabled-color]="foregroundColor" > - + > -->
- {{ - icon - }} + {{ icon }} {{ label.toUpperCase() }} Date: Wed, 17 Apr 2024 09:00:36 +0000 Subject: [PATCH 6/6] fix: upgrade typeorm from 0.3.17 to 0.3.20 Snyk has created this PR to upgrade typeorm from 0.3.17 to 0.3.20. See this package in npm: https://www.npmjs.com/package/typeorm See this project in Snyk: https://app.snyk.io/org/renatamuellerc2c/project/df4c0227-c219-4694-97e9-b28292290375?utm_source=github&utm_medium=referral&page=upgrade-pr --- package-lock.json | 107 +++++++++++++++++++++++----------------------- package.json | 2 +- 2 files changed, 55 insertions(+), 54 deletions(-) diff --git a/package-lock.json b/package-lock.json index 00a790d57..5723649e0 100644 --- a/package-lock.json +++ b/package-lock.json @@ -65,7 +65,7 @@ "semver": "^7.5.4", "tippy.js": "^6.3.7", "tslib": "^2.3.0", - "typeorm": "^0.3.14", + "typeorm": "^0.3.20", "whatwg-fetch": "^3.6.2", "xlsx": "^0.17.3", "zone.js": "0.13.0" @@ -4337,7 +4337,6 @@ "version": "8.0.2", "resolved": "https://registry.npmjs.org/@isaacs/cliui/-/cliui-8.0.2.tgz", "integrity": "sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==", - "devOptional": true, "dependencies": { "string-width": "^5.1.2", "string-width-cjs": "npm:string-width@^4.2.0", @@ -4354,7 +4353,6 @@ "version": "6.0.1", "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.0.1.tgz", "integrity": "sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==", - "devOptional": true, "engines": { "node": ">=12" }, @@ -4366,7 +4364,6 @@ "version": "7.1.0", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.1.0.tgz", "integrity": "sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==", - "devOptional": true, "dependencies": { "ansi-regex": "^6.0.1" }, @@ -8440,7 +8437,6 @@ "version": "0.11.0", "resolved": "https://registry.npmjs.org/@pkgjs/parseargs/-/parseargs-0.11.0.tgz", "integrity": "sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==", - "dev": true, "optional": true, "engines": { "node": ">=14" @@ -17054,8 +17050,7 @@ "node_modules/dayjs": { "version": "1.11.9", "resolved": "https://registry.npmjs.org/dayjs/-/dayjs-1.11.9.tgz", - "integrity": "sha512-QvzAURSbQ0pKdIye2txOzNaHmxtUBXerpY0FJsFXUMKbIZeFm5ht1LS/jFsrncjnmtv8HsG0W2g6c0zUjZWmpA==", - "devOptional": true + "integrity": "sha512-QvzAURSbQ0pKdIye2txOzNaHmxtUBXerpY0FJsFXUMKbIZeFm5ht1LS/jFsrncjnmtv8HsG0W2g6c0zUjZWmpA==" }, "node_modules/debug": { "version": "4.3.4", @@ -19018,7 +19013,6 @@ "version": "3.1.1", "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.1.1.tgz", "integrity": "sha512-TMKDUnIte6bfb5nWv7V/caI169OHgvwjb7V4WkeUvbQQdjr5rWKqHFiKWb/fcOwB+CzBT+qbWjvj+DVwRskpIg==", - "devOptional": true, "dependencies": { "cross-spawn": "^7.0.0", "signal-exit": "^4.0.1" @@ -19034,7 +19028,6 @@ "version": "4.1.0", "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz", "integrity": "sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==", - "devOptional": true, "engines": { "node": ">=14" }, @@ -21395,7 +21388,6 @@ "version": "2.3.6", "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-2.3.6.tgz", "integrity": "sha512-N3yCS/NegsOBokc8GAdM8UcmfsKiSS8cipheD/nivzr700H+nsMOxJjQnvwOcRYVuFkdH0wGUvW2WbXGmrZGbQ==", - "devOptional": true, "dependencies": { "@isaacs/cliui": "^8.0.2" }, @@ -24161,7 +24153,6 @@ "version": "5.0.0", "resolved": "https://registry.npmjs.org/minipass/-/minipass-5.0.0.tgz", "integrity": "sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ==", - "devOptional": true, "engines": { "node": ">=8" } @@ -26457,12 +26448,11 @@ "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==" }, "node_modules/path-scurry": { - "version": "1.10.1", - "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-1.10.1.tgz", - "integrity": "sha512-MkhCqzzBEpPvxxQ71Md0b1Kk51W01lrYvlMzSUaIzNsODdd7mqhiimSZlr+VegAz5Z6Vzt9Xg2ttE//XBhH3EQ==", - "devOptional": true, + "version": "1.10.2", + "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-1.10.2.tgz", + "integrity": "sha512-7xTavNy5RQXnsjANvVvMkEjvloOinkAjv/Z6Ildz9v2RinZ4SBKTWFOVRbaF8p0vpHnyjV/UwNDdKuUv6M5qcA==", "dependencies": { - "lru-cache": "^9.1.1 || ^10.0.0", + "lru-cache": "^10.2.0", "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0" }, "engines": { @@ -26473,10 +26463,9 @@ } }, "node_modules/path-scurry/node_modules/lru-cache": { - "version": "10.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.0.0.tgz", - "integrity": "sha512-svTf/fzsKHffP42sujkO/Rjs37BCIsQVRCeNYIm9WN8rgT7ffoUnRtZCqU+6BqcSBdv8gwJeTz8knJpgACeQMw==", - "devOptional": true, + "version": "10.2.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.2.0.tgz", + "integrity": "sha512-2bIM8x+VAf6JT4bKAljS1qUWgMsqZRPGJS6FSahIMPVvctcNhyVp7AJu7quxOW9jwkryBReKZY5tY5JYv2n/7Q==", "engines": { "node": "14 || >=16.14" } @@ -29697,7 +29686,6 @@ "version": "4.2.3", "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "devOptional": true, "dependencies": { "emoji-regex": "^8.0.0", "is-fullwidth-code-point": "^3.0.0", @@ -29710,8 +29698,7 @@ "node_modules/string-width-cjs/node_modules/emoji-regex": { "version": "8.0.0", "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", - "devOptional": true + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" }, "node_modules/string-width/node_modules/ansi-regex": { "version": "6.0.1", @@ -29754,7 +29741,6 @@ "version": "6.0.1", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "devOptional": true, "dependencies": { "ansi-regex": "^5.0.1" }, @@ -31053,21 +31039,21 @@ "integrity": "sha512-/aCDEGatGvZ2BIk+HmLf4ifCJFwvKFNb9/JeZPMulfgFracn9QFcAf5GO8B/mweUjSoblS5In0cWhqpfs/5PQA==" }, "node_modules/typeorm": { - "version": "0.3.17", - "resolved": "https://registry.npmjs.org/typeorm/-/typeorm-0.3.17.tgz", - "integrity": "sha512-UDjUEwIQalO9tWw9O2A4GU+sT3oyoUXheHJy4ft+RFdnRdQctdQ34L9SqE2p7LdwzafHx1maxT+bqXON+Qnmig==", + "version": "0.3.20", + "resolved": "https://registry.npmjs.org/typeorm/-/typeorm-0.3.20.tgz", + "integrity": "sha512-sJ0T08dV5eoZroaq9uPKBoNcGslHBR4E4y+EBHs//SiGbblGe7IeduP/IH4ddCcj0qp3PHwDwGnuvqEAnKlq/Q==", "dependencies": { "@sqltools/formatter": "^1.2.5", "app-root-path": "^3.1.0", "buffer": "^6.0.3", "chalk": "^4.1.2", "cli-highlight": "^2.1.11", - "date-fns": "^2.29.3", + "dayjs": "^1.11.9", "debug": "^4.3.4", "dotenv": "^16.0.3", - "glob": "^8.1.0", + "glob": "^10.3.10", "mkdirp": "^2.1.3", - "reflect-metadata": "^0.1.13", + "reflect-metadata": "^0.2.1", "sha.js": "^2.4.11", "tslib": "^2.5.0", "uuid": "^9.0.0", @@ -31079,7 +31065,7 @@ "typeorm-ts-node-esm": "cli-ts-node-esm.js" }, "engines": { - "node": ">= 12.9.0" + "node": ">=16.13.0" }, "funding": { "url": "https://opencollective.com/typeorm" @@ -31087,13 +31073,13 @@ "peerDependencies": { "@google-cloud/spanner": "^5.18.0", "@sap/hana-client": "^2.12.25", - "better-sqlite3": "^7.1.2 || ^8.0.0", + "better-sqlite3": "^7.1.2 || ^8.0.0 || ^9.0.0", "hdb-pool": "^0.1.6", "ioredis": "^5.0.4", - "mongodb": "^5.2.0", - "mssql": "^9.1.1", + "mongodb": "^5.8.0", + "mssql": "^9.1.1 || ^10.0.1", "mysql2": "^2.2.5 || ^3.0.1", - "oracledb": "^5.1.0", + "oracledb": "^6.3.0", "pg": "^8.5.1", "pg-native": "^3.0.0", "pg-query-stream": "^4.0.0", @@ -31229,18 +31215,21 @@ } }, "node_modules/typeorm/node_modules/glob": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/glob/-/glob-8.1.0.tgz", - "integrity": "sha512-r8hpEjiQEYlF2QU0df3dS+nxxSIreXQS1qRhMJM0Q5NDdR386C7jb7Hwwod8Fgiuex+k0GFjgft18yvxm5XoCQ==", + "version": "10.3.12", + "resolved": "https://registry.npmjs.org/glob/-/glob-10.3.12.tgz", + "integrity": "sha512-TCNv8vJ+xz4QiqTpfOJA7HvYv+tNIRHKfUWw/q+v2jdgN4ebz+KY9tGx5J4rHP0o84mNP+ApH66HRX8us3Khqg==", "dependencies": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^5.0.1", - "once": "^1.3.0" + "foreground-child": "^3.1.0", + "jackspeak": "^2.3.6", + "minimatch": "^9.0.1", + "minipass": "^7.0.4", + "path-scurry": "^1.10.2" + }, + "bin": { + "glob": "dist/esm/bin.mjs" }, "engines": { - "node": ">=12" + "node": ">=16 || 14 >=14.17" }, "funding": { "url": "https://github.com/sponsors/isaacs" @@ -31255,14 +31244,25 @@ } }, "node_modules/typeorm/node_modules/minimatch": { - "version": "5.1.6", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.6.tgz", - "integrity": "sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==", + "version": "9.0.4", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.4.tgz", + "integrity": "sha512-KqWh+VchfxcMNRAJjj2tnsSJdNbHsVgnkBhTNrW7AjVo6OvLtxw8zfT9oLw1JSohlFzJ8jCoTgaoXvJ+kHt6fw==", "dependencies": { "brace-expansion": "^2.0.1" }, "engines": { - "node": ">=10" + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/typeorm/node_modules/minipass": { + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.0.4.tgz", + "integrity": "sha512-jYofLM5Dam9279rdkWzqHozUo4ybjdZmCsDHePy5V/PbBcVMiSZR97gmAy45aqi8CK1lG2ECd356FU86avfwUQ==", + "engines": { + "node": ">=16 || 14 >=14.17" } }, "node_modules/typeorm/node_modules/mkdirp": { @@ -31279,6 +31279,11 @@ "url": "https://github.com/sponsors/isaacs" } }, + "node_modules/typeorm/node_modules/reflect-metadata": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/reflect-metadata/-/reflect-metadata-0.2.2.tgz", + "integrity": "sha512-urBwgfrvVP/eAyXx4hluJivBKzuEbSQs9rKWCrCkbSxNv8mxPcUZKeuoF3Uy4mJl3Lwprp6yy5/39VWigZ4K6Q==" + }, "node_modules/typeorm/node_modules/supports-color": { "version": "7.2.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", @@ -32793,7 +32798,6 @@ "version": "7.0.0", "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", - "devOptional": true, "dependencies": { "ansi-styles": "^4.0.0", "string-width": "^4.1.0", @@ -32810,7 +32814,6 @@ "version": "4.3.0", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "devOptional": true, "dependencies": { "color-convert": "^2.0.1" }, @@ -32824,14 +32827,12 @@ "node_modules/wrap-ansi-cjs/node_modules/emoji-regex": { "version": "8.0.0", "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", - "devOptional": true + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" }, "node_modules/wrap-ansi-cjs/node_modules/string-width": { "version": "4.2.3", "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "devOptional": true, "dependencies": { "emoji-regex": "^8.0.0", "is-fullwidth-code-point": "^3.0.0", diff --git a/package.json b/package.json index d03f6bdbe..dbae9f5e9 100644 --- a/package.json +++ b/package.json @@ -100,7 +100,7 @@ "semver": "^7.5.4", "tippy.js": "^6.3.7", "tslib": "^2.3.0", - "typeorm": "^0.3.14", + "typeorm": "^0.3.20", "whatwg-fetch": "^3.6.2", "xlsx": "^0.17.3", "zone.js": "0.13.0"