Files
editor/package.json
T
dependabot[bot] f0ed53c4e5 chore(deps-dev): Bump i18next-cli from 1.74.7 to 1.75.2 (#2234)
Bumps [i18next-cli](https://github.com/i18next/i18next-cli) from 1.74.7
to 1.75.2.
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/i18next/i18next-cli/blob/main/CHANGELOG.md">i18next-cli's
changelog</a>.</em></p>
<blockquote>
<h2>1.75.2</h2>
<ul>
<li>fix(extract): declarations with the same name in different files no
longer overwrite each other.
Two generated OpenAPI clients that both export <code>components</code>
resolved to whichever file was read first,
so <code>import { components as githubComponents } from
'./github-api'</code> and
<code>import { components as digitalOceanComponents } from
'./digital-ocean-api'</code> extracted the keys of only one
of them, and moving files around changed which. A name now resolves to
the module the file imports it
from, for renamed and plain imports, namespace imports
(<code>GH.components</code>), <code>.js</code> import specifiers and
tsconfig <code>paths</code> aliases. Imports that cannot be traced to a
scanned file (packages, re-exporting barrels)
still resolve by name as before. Fixes <a
href="https://redirect.github.com/i18next/i18next-cli/issues/306">#306</a>.</li>
</ul>
<h2>1.75.1</h2>
<ul>
<li>fix(extract): types and values read through a namespace import
resolve like named imports. With
<code>import * as Types from './types'</code>, a qualified type
(<code>(color: Types.Color) =&gt; …</code>, <code>x as
Types.Color</code>,
<code>FC&lt;Types.Props&gt;</code>, <code>declare const s:
Types.Status</code>) and a namespace member
(<code>Types.SIZES.map(…)</code>,
<code>Types.Status.Done</code>, <code>t(Types.LABELS.save)</code>,
<code>Object.keys(Types.LABELS)</code>) now extract their keys, also
for a namespace re-exported from a barrel (<code>export * as Shared from
'./types'</code>). Fixes
<a
href="https://redirect.github.com/i18next/i18next-cli/issues/305">#305</a>.</li>
<li>fix(extract): an exported <code>as const</code> object resolves in
the files that import it: <code>t(LABELS.save)</code> and
<code>Object.keys(LABELS)</code> only worked in the declaring file
before.</li>
<li>fix(extract): a value typed <code>keyof typeof MAP</code> resolves
to the map's keys, so
<code>t(`label.${key}`)</code> with <code>declare const key: keyof
typeof LABELS</code> extracts <code>label.save</code> and
<code>label.cancel</code>. This branch never matched before.</li>
</ul>
<h2>1.75.0</h2>
<ul>
<li>feat(extract): new <code>extract.maxTypeDepth</code> option sets how
many levels of nested object members are
followed when a dynamic key reads a typed value (default: 5). Higher
values cost time and memory on
large recursive types such as OpenAPI schemas. Requested in
<a
href="https://redirect.github.com/i18next/i18next-cli/issues/302#issuecomment-6039348480">#302</a>.</li>
<li>fix(extract): the depth now counts from the type an indexed access
picks instead of from the declared
wrapper type. <code>type Pet = components['schemas']['Pet']</code> gets
the full depth below <code>Pet</code>, where the
<code>components</code>/<code>schemas</code> wrapper used to take two of
the five levels.</li>
<li>fix(extract): numeric keys resolve in object types and indexed
access types, so openapi-typescript
response types work:

<code>operations['getPet']['responses'][200]['content']['application/json']</code>
and
<code>op.responses[200].content['application/json'].status</code>
resolved nothing before.</li>
</ul>
<h2>1.74.8</h2>
<ul>
<li>fix(extract): a commented template literal no longer extracts its
placeholder as a key.
<code>// t(`QUARTER.${q}`)</code> extracted <code>QUARTER.${q}</code>
and <code>// t(`status.${deepObject.status}`)</code> extracted
<code>status.${deepObject.status}</code>. Such a comment now keeps the
existing keys it matches (<code>QUARTER.1</code>,
<code>QUARTER.2</code>, …) even with <code>removeUnusedKeys</code>, the
way a commented static key keeps its key, while code can
still add new matching keys. A pattern without any static part
(<code>`${a}.${b}`</code>) is ignored. Fixes
<a
href="https://redirect.github.com/i18next/i18next-cli/issues/304">#304</a>.</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/i18next/i18next-cli/commit/540b3beac7737ce066af47875be7f1dd360bd12c"><code>540b3be</code></a>
1.75.2</li>
<li><a
href="https://github.com/i18next/i18next-cli/commit/9cc03de706dc8990dc0c801240e1cfea33f7cf37"><code>9cc03de</code></a>
fix(extract): resolve same-named declarations by the module they are
imported...</li>
<li><a
href="https://github.com/i18next/i18next-cli/commit/dd21f26554aec73b9e2d5d2670ea9ecdc0ad1562"><code>dd21f26</code></a>
1.75.1</li>
<li><a
href="https://github.com/i18next/i18next-cli/commit/7c637a89b5e76a29e6e8f063e9901068d10449fa"><code>7c637a8</code></a>
fix(extract): resolve types and values read through a namespace import
<a
href="https://redirect.github.com/i18next/i18next-cli/issues/305">#305</a></li>
<li><a
href="https://github.com/i18next/i18next-cli/commit/ef3ebc58cb1e55d2fbe2d1d418518c8f8b539dd9"><code>ef3ebc5</code></a>
1.75.0</li>
<li><a
href="https://github.com/i18next/i18next-cli/commit/33d47ac8d6b8fc2429745a9f43036fea83f4b7ac"><code>33d47ac</code></a>
feat(extract): add maxTypeDepth, count it from the indexed type, resolve
nume...</li>
<li><a
href="https://github.com/i18next/i18next-cli/commit/747d5e91bc31f866f6bd2048b8efecd4ac8389b4"><code>747d5e9</code></a>
1.74.8</li>
<li><a
href="https://github.com/i18next/i18next-cli/commit/a8246695cf1306ff1e7cbf69f62b4941c053bd44"><code>a824669</code></a>
fix(extract): keep the keys a commented template literal matches instead
of e...</li>
<li>See full diff in <a
href="https://github.com/i18next/i18next-cli/compare/v1.74.7...v1.75.2">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=i18next-cli&package-manager=npm_and_yarn&previous-version=1.74.7&new-version=1.75.2)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)


</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-10-13 14:53:14 +00:00

153 lines
5.0 KiB
JSON

{
"name": "maputnik",
"version": "3.1.0",
"description": "A MapLibre GL visual style editor",
"type": "module",
"main": "''",
"scripts": {
"copy-rtl-text-plugin": "mkdir -p public && cp -p node_modules/@mapbox/mapbox-gl-rtl-text/dist/mapbox-gl-rtl-text.js public/",
"start": "npm run copy-rtl-text-plugin && vite",
"build": "npm run copy-rtl-text-plugin && tsc && vite build --mode=production",
"build-desktop": "npm run copy-rtl-text-plugin && tsc && vite build --mode=desktop && cd desktop && make",
"build-linux": "npm run copy-rtl-text-plugin && tsc && vite build --mode=desktop && cd desktop && make bin/linux/maputnik",
"i18n:extract": "npx i18next-cli extract",
"lint": "eslint",
"test": "playwright test",
"test-e2e": "playwright test",
"test-unit": "vitest",
"test-unit-ci": "vitest run --coverage --reporter=json",
"lint-css": "stylelint \"src/styles/*.scss\"",
"sort-styles": "jq 'sort_by(.id)' src/config/styles.json > tmp.json && mv tmp.json src/config/styles.json"
},
"repository": {
"type": "git",
"url": "https://github.com/maplibre/maputnik"
},
"author": "Lukas Martinelli",
"license": "MIT",
"homepage": "https://github.com/maplibre/maputnik#readme",
"dependencies": {
"@codemirror/lang-json": "^6.0.2",
"@codemirror/lint": "^6.9.7",
"@codemirror/state": "^6.7.6",
"@codemirror/theme-one-dark": "^6.1.3",
"@codemirror/view": "^6.43.14",
"@dnd-kit/core": "^6.3.1",
"@dnd-kit/sortable": "^10.0.0",
"@dnd-kit/utilities": "^3.2.2",
"@mapbox/mapbox-gl-rtl-text": "^0.4.0",
"@maplibre/maplibre-gl-geocoder": "^1.9.4",
"@maplibre/maplibre-gl-inspect": "^1.9.0",
"@maplibre/maplibre-gl-style-spec": "^26.4.4",
"array-move": "^4.0.0",
"buffer": "^6.0.3",
"classnames": "^2.5.1",
"codemirror": "^6.0.2",
"color": "^5.0.3",
"detect-browser": "^5.3.0",
"downshift": "^9.4.0",
"events": "^3.3.0",
"file-saver": "^2.0.5",
"i18next": "^26.4.2",
"i18next-browser-languagedetector": "^8.2.1",
"i18next-resources-to-backend": "^1.2.3",
"json-stringify-pretty-compact": "^4.0.0",
"json-to-ast": "^2.1.0",
"lodash": "^4.18.1",
"lodash.capitalize": "^4.2.1",
"lodash.clamp": "^4.0.3",
"lodash.clonedeep": "^4.5.0",
"lodash.get": "^4.4.2",
"lodash.isequal": "^4.5.0",
"lodash.throttle": "^4.1.1",
"maplibre-gl": "^6.13.0",
"maputnik-design": "github:maputnik/design#172b06c",
"ol": "^10.11.0",
"ol-mapbox-style": "^13.5.1",
"pmtiles": "^4.5.0",
"prop-types": "^15.8.1",
"react": "^19.3.0",
"react-accessible-accordion": "^5.0.1",
"react-aria-menubutton": "^8.0.0",
"react-aria-modal": "^5.0.2",
"react-collapse": "^5.1.1",
"react-color": "^2.19.3",
"react-dom": "^19.3.0",
"react-i18next": "^17.0.16",
"react-icons": "^5.7.0",
"react-markdown": "^10.1.0",
"react-resizable-panels": "^4.14.2",
"reconnecting-websocket": "^4.4.0",
"slugify": "^1.6.9",
"string-hash": "^1.1.3",
"url": "^0.11.4"
},
"jshintConfig": {
"esversion": 6
},
"stylelint": {
"extends": "stylelint-config-recommended-scss",
"rules": {
"no-descending-specificity": null,
"media-feature-name-no-unknown": [
true,
{
"ignoreMediaFeatureNames": [
"prefers-reduced-motion"
]
}
]
}
},
"devDependencies": {
"@eslint/js": "^10.0.1",
"@istanbuljs/nyc-config-typescript": "^1.0.2",
"@playwright/test": "^1.64.0",
"@stylistic/eslint-plugin": "^5.10.0",
"@types/codemirror": "^5.60.18",
"@types/color": "^4.2.1",
"@types/cors": "^2.8.19",
"@types/file-saver": "^2.0.7",
"@types/geojson": "^7946.0.16",
"@types/json-to-ast": "^2.1.4",
"@types/lodash.capitalize": "^4.2.9",
"@types/lodash.clamp": "^4.0.9",
"@types/lodash.clonedeep": "^4.5.9",
"@types/lodash.get": "^4.4.9",
"@types/lodash.isequal": "^4.5.8",
"@types/lodash.throttle": "^4.1.9",
"@types/randomcolor": "^0.5.9",
"@types/react": "^19.3.0",
"@types/react-aria-menubutton": "^6.2.14",
"@types/react-aria-modal": "^5.0.0",
"@types/react-collapse": "^5.0.4",
"@types/react-color": "^3.0.13",
"@types/react-dom": "^19.3.0",
"@types/string-hash": "^1.1.3",
"@types/wicg-file-system-access": "^2023.10.7",
"@vitejs/plugin-react": "^6.1.2",
"@vitest/coverage-v8": "^5.0.3",
"cors": "^2.8.6",
"eslint": "^10.12.0",
"eslint-plugin-react": "^7.37.5",
"eslint-plugin-react-hooks": "^7.1.1",
"eslint-plugin-react-refresh": "^0.5.7",
"i18next-cli": "^1.75.2",
"istanbul": "^0.4.5",
"istanbul-lib-coverage": "^3.2.2",
"nyc": "^18.0.0",
"postcss": "^8.5.29",
"react-hot-loader": "^4.13.1",
"sass": "^1.105.1",
"stylelint": "^17.16.0",
"stylelint-config-recommended-scss": "^17.0.1",
"stylelint-scss": "^7.3.0",
"typescript": "^6.0.3",
"typescript-eslint": "^8.71.1",
"uuid": "^14.0.2",
"vite": "^8.3.3",
"vite-plugin-istanbul": "^9.0.1",
"vitest": "^5.0.3"
}
}