diff --git a/bin/rollup.js b/bin/rollup.js index a75c3036143..e002bd414b4 100644 --- a/bin/rollup.js +++ b/bin/rollup.js @@ -108,6 +108,7 @@ function getRollupConfiguration({ packageRoot, inputFiles }) { typescript({ filterRoot: '.', tsconfig: path.join(__dirname, '..', 'tsconfig.json'), + noEmitOnError: true, include: [ 'src/**/*.ts', // TODO: Remove for the next major release diff --git a/package.json b/package.json index 6f0b53732a6..8c51e7df449 100644 --- a/package.json +++ b/package.json @@ -6,8 +6,8 @@ "src/*/src/Bridge/*/assets" ], "scripts": { - "build": "yarn workspaces foreach -Apt run build", - "test": "yarn workspaces foreach -Apt run test", + "build": "yarn workspaces foreach -Ap --topological-dev run build", + "test": "yarn workspaces foreach -Ap --topological-dev run test", "check": "biome check", "ci": "biome ci" }, diff --git a/src/Map/src/Bridge/Google/assets/dist/map_controller.js b/src/Map/src/Bridge/Google/assets/dist/map_controller.js index 412db2c1210..d9c8f1cc190 100644 --- a/src/Map/src/Bridge/Google/assets/dist/map_controller.js +++ b/src/Map/src/Bridge/Google/assets/dist/map_controller.js @@ -113,6 +113,9 @@ class map_controller extends default_1 { libraries = ['core', ...libraries.filter((library) => library !== 'core')]; const librariesImplementations = await Promise.all(libraries.map((library) => loader.importLibrary(library))); librariesImplementations.map((libraryImplementation, index) => { + if (typeof libraryImplementation !== 'object' || libraryImplementation === null) { + return; + } const library = libraries[index]; if (['marker', 'places', 'geometry', 'journeySharing', 'drawing', 'visualization'].includes(library)) { _google.maps[library] = libraryImplementation; diff --git a/src/Map/src/Bridge/Google/assets/package.json b/src/Map/src/Bridge/Google/assets/package.json index 300a21fd95f..979556d0152 100644 --- a/src/Map/src/Bridge/Google/assets/package.json +++ b/src/Map/src/Bridge/Google/assets/package.json @@ -40,6 +40,7 @@ "devDependencies": { "@googlemaps/js-api-loader": "^1.16.6", "@hotwired/stimulus": "^3.0.0", + "@symfony/ux-map": "workspace:*", "@types/google.maps": "^3.55.9" } } diff --git a/src/Map/src/Bridge/Google/assets/src/map_controller.ts b/src/Map/src/Bridge/Google/assets/src/map_controller.ts index ff2df70a624..bcf5da7e9c6 100644 --- a/src/Map/src/Bridge/Google/assets/src/map_controller.ts +++ b/src/Map/src/Bridge/Google/assets/src/map_controller.ts @@ -71,11 +71,16 @@ export default class extends AbstractMapController< libraries.map((library) => loader.importLibrary(library)) ); librariesImplementations.map((libraryImplementation, index) => { + if (typeof libraryImplementation !== 'object' || libraryImplementation === null) { + return; + } + const library = libraries[index]; // The following libraries are in a sub-namespace if (['marker', 'places', 'geometry', 'journeySharing', 'drawing', 'visualization'].includes(library)) { - _google.maps[library] = libraryImplementation; + // @ts-ignore + _google.maps[library] = libraryImplementation as any; } else { _google.maps = { ..._google.maps, ...libraryImplementation }; } diff --git a/src/Map/src/Bridge/Leaflet/assets/package.json b/src/Map/src/Bridge/Leaflet/assets/package.json index 8145f0fb22d..d811f1c930c 100644 --- a/src/Map/src/Bridge/Leaflet/assets/package.json +++ b/src/Map/src/Bridge/Leaflet/assets/package.json @@ -39,6 +39,7 @@ }, "devDependencies": { "@hotwired/stimulus": "^3.0.0", + "@symfony/ux-map": "workspace:*", "@types/leaflet": "^1.9.12", "leaflet": "^1.9.4" } diff --git a/src/Translator/assets/dist/formatters/formatter.d.ts b/src/Translator/assets/dist/formatters/formatter.d.ts index c3403c041a5..e55715f0960 100644 --- a/src/Translator/assets/dist/formatters/formatter.d.ts +++ b/src/Translator/assets/dist/formatters/formatter.d.ts @@ -1 +1 @@ -export declare function format(id: string, parameters: Record, locale: string): string; +export declare function format(id: string, parameters: Record, locale: string): string; diff --git a/src/Translator/assets/dist/formatters/intl-formatter.d.ts b/src/Translator/assets/dist/formatters/intl-formatter.d.ts index e22d7481ac6..9892f4bd0d4 100644 --- a/src/Translator/assets/dist/formatters/intl-formatter.d.ts +++ b/src/Translator/assets/dist/formatters/intl-formatter.d.ts @@ -1 +1 @@ -export declare function formatIntl(id: string, parameters: Record, locale: string): string; +export declare function formatIntl(id: string, parameters: Record, locale: string): string; diff --git a/src/Translator/assets/dist/utils.d.ts b/src/Translator/assets/dist/utils.d.ts index b6621dfd66c..fd3ca78fbeb 100644 --- a/src/Translator/assets/dist/utils.d.ts +++ b/src/Translator/assets/dist/utils.d.ts @@ -1 +1 @@ -export declare function strtr(string: string, replacePairs: Record): string; +export declare function strtr(string: string, replacePairs: Record): string; diff --git a/src/Translator/assets/src/formatters/formatter.ts b/src/Translator/assets/src/formatters/formatter.ts index 80d99b828a6..58e18ce1111 100644 --- a/src/Translator/assets/src/formatters/formatter.ts +++ b/src/Translator/assets/src/formatters/formatter.ts @@ -47,7 +47,7 @@ import { strtr } from '../utils'; * @param parameters An array of parameters for the message * @param locale The locale */ -export function format(id: string, parameters: Record, locale: string): string { +export function format(id: string, parameters: Record, locale: string): string { if (null === id || '' === id) { return ''; } diff --git a/src/Translator/assets/src/formatters/intl-formatter.ts b/src/Translator/assets/src/formatters/intl-formatter.ts index 07bc5a60795..a092e54f811 100644 --- a/src/Translator/assets/src/formatters/intl-formatter.ts +++ b/src/Translator/assets/src/formatters/intl-formatter.ts @@ -7,7 +7,7 @@ import { IntlMessageFormat } from 'intl-messageformat'; * @param parameters An array of parameters for the message * @param locale The locale */ -export function formatIntl(id: string, parameters: Record, locale: string): string { +export function formatIntl(id: string, parameters: Record, locale: string): string { if (id === '') { return ''; } @@ -23,5 +23,5 @@ export function formatIntl(id: string, parameters: Record): string { +export function strtr(string: string, replacePairs: Record): string { const regex: Array = Object.entries(replacePairs).map(([from]) => { return from.replace(/([-[\]{}()*+?.\\^$|#,])/g, '\\$1'); }); diff --git a/src/Turbo/assets/package.json b/src/Turbo/assets/package.json index 931be09d363..6b80173edb1 100644 --- a/src/Turbo/assets/package.json +++ b/src/Turbo/assets/package.json @@ -38,6 +38,7 @@ }, "devDependencies": { "@hotwired/stimulus": "^3.0.0", - "@hotwired/turbo": "^7.1.0 || ^8.0" + "@hotwired/turbo": "^7.1.0 || ^8.0", + "@types/hotwired__turbo": "^8.0.4" } } diff --git a/yarn.lock b/yarn.lock index 5aeb6d659b4..29118f6c688 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2888,6 +2888,7 @@ __metadata: dependencies: "@googlemaps/js-api-loader": "npm:^1.16.6" "@hotwired/stimulus": "npm:^3.0.0" + "@symfony/ux-map": "workspace:*" "@types/google.maps": "npm:^3.55.9" peerDependencies: "@googlemaps/js-api-loader": ^1.16.6 @@ -2913,6 +2914,7 @@ __metadata: resolution: "@symfony/ux-leaflet-map@workspace:src/Map/src/Bridge/Leaflet/assets" dependencies: "@hotwired/stimulus": "npm:^3.0.0" + "@symfony/ux-map": "workspace:*" "@types/leaflet": "npm:^1.9.12" leaflet: "npm:^1.9.4" peerDependencies: @@ -2939,7 +2941,7 @@ __metadata: languageName: unknown linkType: soft -"@symfony/ux-map@workspace:src/Map/assets": +"@symfony/ux-map@workspace:*, @symfony/ux-map@workspace:src/Map/assets": version: 0.0.0-use.local resolution: "@symfony/ux-map@workspace:src/Map/assets" dependencies: @@ -3040,6 +3042,7 @@ __metadata: dependencies: "@hotwired/stimulus": "npm:^3.0.0" "@hotwired/turbo": "npm:^7.1.0 || ^8.0" + "@types/hotwired__turbo": "npm:^8.0.4" peerDependencies: "@hotwired/stimulus": ^3.0.0 "@hotwired/turbo": ^7.1.1 || ^8.0 @@ -3278,6 +3281,13 @@ __metadata: languageName: node linkType: hard +"@types/hotwired__turbo@npm:^8.0.4": + version: 8.0.4 + resolution: "@types/hotwired__turbo@npm:8.0.4" + checksum: 10c0/87fb69ea0dab21fd2a6e3e6d18cdaf679e3d7c8ea1f6f2b59d05c24a96cf3faf80a4c0ce5f57161afea9b61f2cc542f9e33cbdc6475fc4003d79516a94cedb5c + languageName: node + linkType: hard + "@types/istanbul-lib-coverage@npm:*, @types/istanbul-lib-coverage@npm:^2.0.0, @types/istanbul-lib-coverage@npm:^2.0.1": version: 2.0.4 resolution: "@types/istanbul-lib-coverage@npm:2.0.4"