Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
38 commits
Select commit Hold shift + click to select a range
323e254
ci: update actions and use node 24
boeckMt Mar 2, 2026
f7ff8bd
feat(services-map-state): export basic projection helpers and definit…
boeckMt Mar 3, 2026
9f98f3b
refactor: use new definitions and constants from services-map-state f…
boeckMt Mar 3, 2026
9208d12
BREAKING CHANGE(ngx-ukis-ui-clarity): projection-switch and mouse-pos…
boeckMt Mar 3, 2026
7a9daa2
BREAKING CHANGE(map-cesium): not used option geographic removed from …
boeckMt Mar 4, 2026
0403053
feat(services-map-state): add functionality to setProjection and nati…
boeckMt Mar 4, 2026
71fbdcd
BREAKING CHANGE(map-ol): params of service.setProjection changed to r…
boeckMt Mar 4, 2026
f88d6ce
fix: set global of exported ProjDefs
boeckMt Mar 5, 2026
58a3696
feat(services-map-state): export interface for MapStateProjection
boeckMt Mar 5, 2026
c9a8fc3
feat: add registered projections in services-map-state and adjust map…
boeckMt Mar 5, 2026
2a6d521
refactor(ngx-ukis-ui-clarity): MousePosition and ProjectionSwitch to …
boeckMt Mar 5, 2026
b5a0126
refactor(demo-maps): projection example to use MapStateService #204
boeckMt Mar 5, 2026
876e8f1
refactor(demo-maps): examples where map-ol projections were used to M…
boeckMt Mar 5, 2026
6d5fd7d
refactor: MapState projection props #204
boeckMt Mar 5, 2026
070c5c6
docs: fix naming in changelog
boeckMt Mar 5, 2026
74a9bc9
fix: tests for new set projection #204
boeckMt Mar 5, 2026
5909c60
ci: try to fix publish for GitHub Packages
boeckMt Mar 5, 2026
5de1870
build: set ukis version 16.0.0-next.6
boeckMt Mar 5, 2026
2cc9d87
build: update npm look
boeckMt Mar 6, 2026
9a49fd7
ci: try to fix WebGL error in actions test
boeckMt Mar 6, 2026
006e7a3
ci: fix specify a tag when publishing a prerelease version
boeckMt Mar 6, 2026
a619784
fix(map-ol): set init view on map in service for early subscriptions
boeckMt Mar 6, 2026
143faec
fix(services-map-state): duplicated exported type 'TGeoExtent' remove…
boeckMt Mar 6, 2026
bee5ab4
feat(services-layers): Add nativeBbox to Layer and LayerGroup
boeckMt Mar 6, 2026
ebb17d1
fix(services-map-state): emit getProjection only on change #204
boeckMt Mar 10, 2026
5cc1902
fix(map-ol): set bbox and nativeBbox to olLayer for reprojecting
boeckMt Mar 10, 2026
02ebdf0
feat(ngx-ukis-ui-clarity): use bbox and nativeBbox in zoom to layer -…
boeckMt Mar 10, 2026
5629203
feat: update demo-maps projection example for use of layer.nativeBbox…
boeckMt Mar 10, 2026
ddb32dc
build: set ukis version 16.0.0-next.7
boeckMt Mar 10, 2026
50d98fe
fix(services-map-state): the state.proj should always be present, the…
boeckMt Mar 13, 2026
932ef68
fix(services-map-state): sub to project changes only if EPSG is changed.
boeckMt Mar 13, 2026
cf6406b
fix(map-ol): check if cases of setLayerExtentAfterProjection and use …
boeckMt Mar 13, 2026
d21c501
ci: try to fix github packages publish - env on each step
boeckMt Mar 16, 2026
4135591
build: set ukis version v16.0.0-next.8
boeckMt Mar 16, 2026
a34f916
fix(services-map-state): test for proj.epsg and pass fitOptions
boeckMt Mar 16, 2026
7abb7e0
fix: cesium developer error
lucas-angermann Mar 17, 2026
a5d0f30
fix: adjust cesium destroy function
lucas-angermann Mar 17, 2026
a1985cc
fix: layer parameter
lucas-angermann Mar 17, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 3 additions & 3 deletions .github/workflows/gh-pages.yml
Original file line number Diff line number Diff line change
Expand Up @@ -9,12 +9,12 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
uses: actions/checkout@v6
- name: Setup Pages
uses: actions/configure-pages@v5
- uses: actions/setup-node@v4
- uses: actions/setup-node@v6
with:
node-version: 22
node-version: 24

# This builds the project for projects/demo-maps and outputs the result to the 'dist' folder.
# https://github.com/angular/angular-cli/issues/9016#issuecomment-526825531
Expand Down
96 changes: 63 additions & 33 deletions .github/workflows/package-release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -36,10 +36,10 @@ jobs:
needs: checkHeadBranch_pr
if: github.event_name == 'pull_request' # Only for PRs
steps:
# - uses: actions/checkout@v4
# - uses: actions/checkout@v6
# needs uses: actions/checkout@ if script/module is required
- name: checkTitelTag
uses: actions/github-script@v7
uses: actions/github-script@v8
id: get-tag
with:
result-encoding: string
Expand Down Expand Up @@ -74,14 +74,14 @@ jobs:
needs: [checkHeadBranch_pr, checkTitelTag_pr]
if: github.event_name == 'pull_request' && needs.checkTitelTag_pr.outputs.VERSION_TAG != ''
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v6
- name: checkout tag
run: |
git fetch --all --tags
git checkout ${{ needs.checkTitelTag_pr.outputs.VERSION_TAG }}
- uses: actions/setup-node@v4
- uses: actions/setup-node@v6
with:
node-version: 22
node-version: 24
- run: rm -f .npmrc
- uses: ./.github/actions/check-tag-on-npm
with:
Expand All @@ -93,14 +93,14 @@ jobs:
runs-on: ubuntu-latest
if: needs.checkTitelTag_pr.outputs.VERSION_TAG != ''
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v6
- name: checkout tag
run: |
git fetch --all --tags
git checkout ${{ needs.checkTitelTag_pr.outputs.VERSION_TAG }}
- uses: actions/setup-node@v4
- uses: actions/setup-node@v6
with:
node-version: 22
node-version: 24
- name: build
run: |
npm ci
Expand All @@ -117,7 +117,7 @@ jobs:
needs: [build_pr]
steps:
- name: checkLabel
uses: actions/github-script@v7
uses: actions/github-script@v8
with:
script: |
if(context.payload.pull_request.labels){
Expand Down Expand Up @@ -146,47 +146,62 @@ jobs:
publish-gpr_pr:
needs: [checkHeadBranch_pr, checkTitelTag_pr, checkTagOnNpm_pr, build_pr, checkLabel_pr, gh-release_pr]
runs-on: ubuntu-latest
permissions:
packages: write
contents: read
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v6
- name: Download dist result from job build
uses: actions/download-artifact@v4
with:
name: "dist"
path: dist
- uses: actions/setup-node@v4
- uses: actions/setup-node@v6
with:
node-version: 22
node-version: 24
registry-url: https://npm.pkg.github.com/
scope: "@dlr-eoc"
- run: npm ci
### update npm to >8.19 for publish https://github.com/npm/cli/issues/2453 https://github.com/npm/cli/issues/3573
- run: npm i -g npm@latest # Latest npm for trusted publishing
- run: rm -f .npmrc
- name: Check if .npmrc is there and delete file if it exists
id: check_and_delete_npmrc
run: |
FILE_PATH=".npmrc"
if [ -f "$FILE_PATH" ]; then
echo "File exists: $FILE_PATH"
rm -f "$FILE_PATH"
echo "File deleted."
else
echo "File does not exist: $FILE_PATH"
fi
### for each module in dist update package.json and create .npmrc
- run: node scripts/library/index.js --update-package=https://npm.pkg.github.com/
env:
NODE_AUTH_TOKEN: ${{secrets.GITHUB_TOKEN}}
### for each module in dist publish frontend-libraries to registry
- run: |
for dir in ./dist/*/;
do
dir=${dir%*/}
npm publish "$dir" --access public --tag "latest" --provenance
npm publish "$dir" --access public --tag "latest"
done
env:
AUTH_TOKEN: ${{secrets.GITHUB_TOKEN}}
NODE_AUTH_TOKEN: ${{secrets.GITHUB_TOKEN}}

publish-npm_pr:
needs: [checkHeadBranch_pr, checkTitelTag_pr, checkTagOnNpm_pr, build_pr, checkLabel_pr, gh-release_pr]
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v6
- name: Download dist result from job build
uses: actions/download-artifact@v4
with:
name: "dist"
path: dist
- uses: actions/setup-node@v4
- uses: actions/setup-node@v6
with:
node-version: 22
node-version: 24
registry-url: https://registry.npmjs.org/
scope: "@dlr-eoc"
- run: npm ci
Expand All @@ -212,10 +227,10 @@ jobs:
if: github.event_name == 'push'
steps:
# check out before using actions reference from the same repository!
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
- uses: actions/checkout@v6
- uses: actions/setup-node@v6
with:
node-version: 22
node-version: 24
- run: rm -f .npmrc
- uses: ./.github/actions/check-tag-on-npm
with:
Expand All @@ -226,10 +241,10 @@ jobs:
needs: [checkTagOnNpm_push]
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
- uses: actions/checkout@v6
- uses: actions/setup-node@v6
with:
node-version: 22
node-version: 24
- uses: ./.github/actions/test
- name: build
run: |
Expand Down Expand Up @@ -258,48 +273,63 @@ jobs:
publish-gpr_push:
needs: [gh-release_push, build_push]
runs-on: ubuntu-latest
permissions:
packages: write
contents: read
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v6
- name: Download dist result from job build
uses: actions/download-artifact@v4
with:
name: "dist"
path: dist
- uses: actions/setup-node@v4
- uses: actions/setup-node@v6
with:
node-version: 22
node-version: 24
registry-url: https://npm.pkg.github.com/
scope: "@dlr-eoc"
- run: npm ci
### update npm to >8.19 for publish https://github.com/npm/cli/issues/2453 https://github.com/npm/cli/issues/3573
- run: npm i -g npm@latest # Latest npm for trusted publishing
- run: rm -f .npmrc
- name: Check if .npmrc is there and delete file if it exists
id: check_and_delete_npmrc
run: |
FILE_PATH=".npmrc"
if [ -f "$FILE_PATH" ]; then
echo "File exists: $FILE_PATH"
rm -f "$FILE_PATH"
echo "File deleted."
else
echo "File does not exist: $FILE_PATH"
fi
### for each module in dist update package.json and create .npmrc
- run: node scripts/library/index.js --update-package=https://npm.pkg.github.com/
env:
NODE_AUTH_TOKEN: ${{secrets.GITHUB_TOKEN}}
### for each module in dist publish frontend-libraries to registry
- run: |
# Pre-release: use tag next
for dir in ./dist/*/
do
dir=${dir%*/}
npm publish "$dir" --access public --tag "next" --provenance
npm publish "$dir" --access public --tag "next"
done
env:
AUTH_TOKEN: ${{secrets.GITHUB_TOKEN}}
NODE_AUTH_TOKEN: ${{secrets.GITHUB_TOKEN}}

publish-npm_push:
needs: [gh-release_push, build_push]
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v6
- name: Download dist result from job build
uses: actions/download-artifact@v4
with:
name: "dist"
path: dist
- uses: actions/setup-node@v4
- uses: actions/setup-node@v6
with:
node-version: 22
node-version: 24
registry-url: https://registry.npmjs.org/
scope: "@dlr-eoc"
- run: npm ci
Expand Down
6 changes: 3 additions & 3 deletions .github/workflows/test-build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -16,9 +16,9 @@ jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
- uses: actions/checkout@v6
- uses: actions/setup-node@v6
with:
node-version: 22
node-version: 24
- uses: ./.github/actions/test
- uses: ./.github/actions/build
20 changes: 18 additions & 2 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,15 @@
- Removed `pipes` and moved it to new library `@dlr-eoc/ngx-ukis-utilities` [Issue #267](https://github.com/dlr-eoc/ukis-frontend-libraries/issues/267).

* **@dlr-eoc/ngx-ukis-ui-clarity:**
- Input `mapStateSvc` was removed from `<ukis-projection-switch>`! Input `fitViewToNewExtent` is now triggered by `mapSvc.setProjection`.
- Input `mapStateSvc` on `<ukis-projection-switch>` was renamed to `mapState`! Input `fitViewToNewExtent` is now triggered by `mapSvc.setProjection`.

- MousePositionComponent need now Inputs `<ukis-mouse-position [mapSvc]="mapSvc" [mapState]="mapStateSvc">`

* **@dlr-eoc/map-ol:**
- Params of `setProjection(projection: olProjection | string)` changed to `setProjection(projection: IProjDef | string, options?: IProjFitOptions)` in `MapOlService`. This allows the registration of proj4 definitions for projections from `IProjDef`. The options `IProjFitOptions` allow to zomm to a bbox on setProjection or zomm to the ProjectionExtent.

* **@dlr-eoc/map-cesium:**
- `MapCesiumService.getCurrentExtent()` param `geographic?: boolean` is removed because it was not used.

### Bug Fixes
* **@dlr-eoc/map-maplibre:**
Expand All @@ -43,7 +51,7 @@
- use `clr-number-input-container` instead of `clr-input-container` for input of `type="number"`.

* **@dlr-eoc/map-ol:**
- Fix `setProjection` zoom to old bbox. Add new param `fitToProjectionExtent` on `setProjection` to zoom to new projection extent.
- Use 8 stops for all OpenLayers `transformExtent()` functions to sample more points along the edges for better results. Should have only minimal perf hit. This corrects some calculations of extents from WGS84 to other projections. For example, in `setProjection`, new extents for layers are more precise and layers are no longer clipped.

### Features
- Remove `standalone: true` Angular directives, components and pipes are now standalone by default since version 19.
Expand All @@ -52,6 +60,7 @@
* **@dlr-eoc/ngx-ukis-ui-clarity:**
- New UKIS library for ui-clarity related things was added.
- It includes all components of `@dlr-eoc/layer-control`, `@dlr-eoc/map-tools`, `@dlr-eoc/user-info` [Issue #267](https://github.com/dlr-eoc/ukis-frontend-libraries/issues/267).
- Adjust `LayerentryComponent` and `LayerentryGroupComponent` to use `nativeBbox` of types `services-layers`.

* **@dlr-eoc/ngx-ukis-utilities:**
- New UKIS library for angular utilities was added.
Expand All @@ -60,9 +69,16 @@

* **@dlr-eoc/map-ol:**
- Remove dependency on @cds/core [Issue #267](https://github.com/dlr-eoc/ukis-frontend-libraries/issues/267).
- Use `nativeBbox` of types `services-layers` to create `olLayerOptions.extent` for layers. Use it also in `CustomLayer` to create `olLayerOptions.extent` and for olLayerGroups.

* **@dlr-eoc/services-layers:**
- Add `properties` attribute to Layer type
- Add `nativeBbox?: {epsg: string, bbox: TGeoExtent}` to `Layer` and `LayerGroup`. This can be helpful when zooming to the extent of a projected layer.

* **@dlr-eoc/services-map-state:**
- Export constants for `WebMercator`, `WGS84` and interface `IProjDef` and some projections `EPSG_3031_Def`, `EPSG_3995_Def`, `EPSG_3857_Def` and `EPSG_4326_Def`.
- Add projection object to `MapState` [Issue #204](https://github.com/dlr-eoc/ukis-frontend-libraries/issues/204)
- Add functionality to `setProjection`, `registerProjection` and set `nativeExtent` (not WGS84) in `MapStateService`. Now this can be used instead of the functions in `MapOlService` [Issue #204](https://github.com/dlr-eoc/ukis-frontend-libraries/issues/204).

# [15.0.0](https://github.com/dlr-eoc/ukis-frontend-libraries/tree/v15.0.0) (2024-12-31) (angular update, @clr and @cds update, layer-control, map-ol)

Expand Down
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
<img src="projects/ngx-ukis-ui-clarity/schematics/ng-add/files/src/assets/icons/icon-72x72.png" alt="UKIS Logo"> Frontend Libraries for DLR UKIS (Map) Applications
========================

![CI](https://github.com/dlr-eoc/ukis-frontend-libraries/workflows/Test%20and%20Build%20CI/badge.svg)
![CI](https://github.com/dlr-eoc/ukis-frontend-libraries/actions/workflows/package-release.yml/badge.svg)
![Npm Package](https://github.com/dlr-eoc/ukis-frontend-libraries/workflows/Package%20Main%20Release/badge.svg) ![Package Version](https://img.shields.io/github/v/tag/dlr-eoc/ukis-frontend-libraries?sort=semver)
[![DOI](https://zenodo.org/badge/246639318.svg)](https://zenodo.org/badge/latestdoi/246639318)

Expand Down
Loading