Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
22 commits
Select commit Hold shift + click to select a range
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
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
/.idea
/.vs
/.env
**/nbactions.xml
**/*.iml
**/*.lnk
Expand Down
37 changes: 37 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,43 @@

All notable changes to this project will be documented in this file.

## [4.20.0] - TBD

- Migrate to the package manager [PNPM](https://pnpm.io/) (previously: NPM).
PNPM supports additional settings like `onlyBuiltDependencies` that reduce attack vectors from the supply chain.
It also offers improved performance.
- PNPM's lockfile `pnpm-lock.yaml` is now part of the repository and no longer ignored by `.gitignore`.
- We recommend the use of `pnpm-lock.yaml` to ensure your build environment is using stable dependencies.
- Add dotenv to support local `.env` files for property replacement.
- The `gulpfile.js` was updated to load environment variables from a `.env` file if present.

### Changes in pom.xml
- Update `mapapps.version` property to `4.20.0`
- Update `ct.jsregistry.version` property to `2.1.9`
- Update `frontend-maven-plugin` plugin version to `1.15.4`

### Changes in package.json
- In the dependencies section, change `"arcgis-js-api": "4.31.6"` to `"@arcgis/core": "4.33.14"`
- In the devDependencies section, change `@conterra/ct-mapapps-typings` to `4.20.0`
- In the devDependencies section, change `ct-mapapps-gulp-js` to `0.10.15`
- In the devDependencies section, change `ct-mapapps-browser-sync` to `0.0.47`
- In the devDependencies section, change `@conterra/reactivity-core` to `0.8.0`
- In the devDependencies section, change `@types/node` to `^22.18.1`
- In the devDependencies section, change `mocha` to `11.7.4`
- In the devDependencies section, change `puppeteer` to `24.25.0`
- In the devDependencies section, change `tsx` to `^4.20.5`
- In the devDependencies section, change `typescript` to `5.9.2`
- In the devDependencies section add `dojo-typings` to `1.11.11`
- In the devDependencies section add `eslint` to `8.57.1`
- In the devDependencies section add `dotenv` to `17.2.3`

### Changes in check-licenses.ts
- Change `arcgis-js-api@4.31.6` to `@arcgis/core@4.33.14`

### Changes in the src/ Folder
- See [Migration Guide](./MIGRATION.md#4200---TBD)


## [4.19.3] - 11.07.2025

### Changes in pom.xml
Expand Down
35 changes: 35 additions & 0 deletions MIGRATION.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,41 @@
This file contains notes for the migration of bundles to new minor versions of map.apps 4.
The changes described here were not made to map.apps interfaces but concern changes in the ArcGIS API for JavaScript.

## 4.20

### Bundle renaming

The bundle `esri` has been renamed to `@arcgis/core`. Therefore, some changes have to be made to the imports from `esri` and dependency declarations of the old bundle

This effects the files:
- src/main/js/bundles/sample_camera/CameraControlFactory.ts
- src/main/js/bundles/sample_camera/manifest.json
- src/main/js/bundles/sample_camera_js/manifest.json

### Changes in themeSettings.less due to Omnisearch removal

The bundle `omnisearch` has been removed from map.apps , including some changes in the theming. Therefore, change the following properties in src/main/js/bundles/theme-custom/styles/themeSettings.less

Add the following variable definitions:

* `@ct-inverted-background-color: #ffffff;`
* `@ct-inverted-text-color: #000000;`

Use `@ct-inverted-background-color` as value for `@ct-drawer-button-background-color`

* `@ct-drawer-button-background-color: @ct-inverted-background-color;`

Delete the following variable definitions:

* `@ct-omnisearch-input-background-color`
* `@ct-omnisearch-input-text-color`

Rename the following variable definitions:

* `@ct-omnisearch-result-list-hover-color` → `@ct-search-ui-result-list-hover-color`
* `@ct-omnisearch-drawer-button-background-color` → `@ct-drawer-button-background-color`
* `@ct-omnisearch-drawer-button-icon-color` → `@ct-drawer-button-icon-color`

## 4.19

Follow the steps in [CHANGELOG.md](https://github.com/conterra/mapapps-4-developers/blob/master/CHANGELOG.md).
Expand Down
11 changes: 8 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,7 @@ For detailed documentation on how to use map.apps for Developers to extend map.a

- Java >= 17
- Maven >= 3.9.0
- pnpm >= 10.20

## Quick start

Expand Down Expand Up @@ -43,7 +44,7 @@ If you like to run the tests, you need to install Playwright and its dependencie

```bash
# Install playwright
npx playwright install --with-deps
pnpx playwright install --with-deps
```

After that, start the development server and run the tests:
Expand All @@ -52,15 +53,15 @@ After that, start the development server and run the tests:
# start dev server
mvn compile -Denv=dev -Pinclude-mapapps-deps
# run end-to-end tests
npm run e2e-test
pnpm run e2e-test
```

In headed mode test browser are shown during the test execution.
To run the tests in headed mode, execute:

```bash
# run end-to-end tests headed
npm run e2e-test:headed
pnpm run e2e-test:headed
```

We also recommend installing the VS Code Extension for Playwright, which allows you to run and debug tests directly in the IDE.
Expand All @@ -69,6 +70,10 @@ For details about end-to-end testing refer to the [Developer's Guide](https://do

## Updating from older versions

### from 4.19.3 to 4.20.0

See [Changelog](./CHANGELOG.md#4200---TBD)

### from 4.19.2 to 4.19.3

See [Changelog](./CHANGELOG.md#4193---TBD)
Expand Down
4 changes: 4 additions & 0 deletions gulpfile.js
Original file line number Diff line number Diff line change
@@ -1,6 +1,10 @@
const gulp = require("gulp");
const mapapps = require('ct-mapapps-gulp-js');
const mapappsBrowserSync = require("ct-mapapps-browser-sync");
const dotEnv = require("dotenv");
// load .env file if it exits
// the local dev jsregistry will lookup any @@key.property@@ expression, also as environment variable with name "KEY_PROPERTY" for replacement.
dotEnv.config();

const isProduction = process.env.NODE_ENV === "production";
console.info(`Configuring gulp build for ${isProduction ? "production" : "development"}`);
Expand Down
Loading