iobroker.parcelapp 0.2.18 → 0.3.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +26 -32
- package/admin/jsonConfig.json +40 -8
- package/build/lib/types.js +0 -6
- package/build/lib/types.js.map +2 -2
- package/io-package.json +84 -84
- package/package.json +3 -1
package/README.md
CHANGED
|
@@ -32,19 +32,19 @@ ioBroker adapter that connects to the [parcel.app](https://parcelapp.net) API an
|
|
|
32
32
|
## Requirements
|
|
33
33
|
|
|
34
34
|
- **Node.js >= 20**
|
|
35
|
-
- **ioBroker js-controller >=
|
|
36
|
-
- **ioBroker Admin >= 7.
|
|
35
|
+
- **ioBroker js-controller >= 7.0.7**
|
|
36
|
+
- **ioBroker Admin >= 7.7.22**
|
|
37
37
|
- **parcel.app Premium subscription** — required for API access
|
|
38
38
|
|
|
39
39
|
---
|
|
40
40
|
|
|
41
41
|
## Configuration
|
|
42
42
|
|
|
43
|
-
| Option
|
|
44
|
-
|
|
45
|
-
| **API Key**
|
|
46
|
-
| **Poll Interval**
|
|
47
|
-
| **Auto-remove delivered** | Remove delivered packages from states automatically. When disabled, they stay until deleted in parcel.app. | Yes
|
|
43
|
+
| Option | Description | Default |
|
|
44
|
+
| ------------------------- | ---------------------------------------------------------------------------------------------------------- | ------- |
|
|
45
|
+
| **API Key** | Your parcel.app API key (get it at [web.parcelapp.net](https://web.parcelapp.net)) | — |
|
|
46
|
+
| **Poll Interval** | How often to fetch updates (minutes) | 10 |
|
|
47
|
+
| **Auto-remove delivered** | Remove delivered packages from states automatically. When disabled, they stay until deleted in parcel.app. | Yes |
|
|
48
48
|
|
|
49
49
|
Status labels (`Delivered`, `In Transit`, …) and delivery estimates (`today`, `tomorrow`, `in X days`) are rendered in the ioBroker system language.
|
|
50
50
|
|
|
@@ -81,16 +81,17 @@ parcelapp.0.
|
|
|
81
81
|
You can add new deliveries from JavaScript/Blockly scripts:
|
|
82
82
|
|
|
83
83
|
```javascript
|
|
84
|
-
sendTo(
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
84
|
+
sendTo("parcelapp.0", "addDelivery", {
|
|
85
|
+
tracking_number: "1234567890",
|
|
86
|
+
carrier_code: "dhl",
|
|
87
|
+
description: "My package",
|
|
88
88
|
});
|
|
89
89
|
```
|
|
90
90
|
|
|
91
91
|
The delivery is added to your parcel.app account and immediately appears in ioBroker after an automatic poll.
|
|
92
92
|
|
|
93
93
|
**Notes:**
|
|
94
|
+
|
|
94
95
|
- **POST rate limit: 20 deliveries per day** — failed attempts (e.g. wrong `carrier_code`) also count against this limit.
|
|
95
96
|
- Fresh deliveries usually have no tracking events for **45–90 minutes** after they are added. That's a parcel.app-side delay, not an adapter issue.
|
|
96
97
|
- **Deleting packages is only possible in the parcel.app app/web UI** — the API has no delete endpoint. With `autoRemoveDelivered` enabled, the adapter still drops delivered packages from ioBroker states automatically.
|
|
@@ -100,47 +101,40 @@ The delivery is added to your parcel.app account and immediately appears in ioBr
|
|
|
100
101
|
## Troubleshooting
|
|
101
102
|
|
|
102
103
|
### Connection test fails
|
|
104
|
+
|
|
103
105
|
- Verify your API key at [web.parcelapp.net](https://web.parcelapp.net)
|
|
104
106
|
- Ensure you have an active Premium subscription
|
|
105
107
|
- Check if your ioBroker instance has internet access
|
|
106
108
|
|
|
107
109
|
### No deliveries shown
|
|
110
|
+
|
|
108
111
|
- The API returns cached data — new deliveries may take a few minutes to appear
|
|
109
112
|
- Check if you have active deliveries in the parcel.app
|
|
110
113
|
|
|
111
114
|
### Rate limit
|
|
115
|
+
|
|
112
116
|
- GET (polling): **20 requests per hour** — the minimum poll interval is 5 minutes to stay within this limit
|
|
113
117
|
- POST (adding deliveries): **20 requests per day**, failed attempts count too
|
|
114
118
|
|
|
115
119
|
---
|
|
116
120
|
|
|
117
121
|
## Changelog
|
|
122
|
+
### 0.3.1 (2026-05-01)
|
|
123
|
+
- Documentation cleanup: shortened older changelog entries.
|
|
124
|
+
|
|
125
|
+
### 0.3.0 (2026-04-30)
|
|
126
|
+
- Internal cleanup: removed dead `STATUS_LABELS_*` aliases, added `format`/`format:check` scripts, master-sync.
|
|
127
|
+
|
|
118
128
|
### 0.2.18 (2026-04-28)
|
|
119
|
-
-
|
|
120
|
-
- `@types/node` rolled back from `^25.6.0` to `^20.19.24` so type defs match `engines.node: ">=20"` (otherwise Node 21+-only APIs would type-check on Node 20 and crash at runtime)
|
|
121
|
-
- Dependabot now ignores major bumps for `@types/node`, `typescript`, `eslint` so the runtime/toolchain pinning cannot drift via auto-merge
|
|
122
|
-
- `nyc` config + `coverage` script added (matches upstream template)
|
|
123
|
-
- `prettier.config.mjs` made explicit with project-style overrides (Spaces 2-wide, double quotes) instead of relying on missing config
|
|
124
|
-
- Orphan `.github/auto-merge.yml` removed (the active workflow is `automerge-dependabot.yml` using `gh pr merge`, the old yml was never read)
|
|
129
|
+
- Internal cleanup against ioBroker.example/TypeScript standard.
|
|
125
130
|
|
|
126
131
|
### 0.2.17 (2026-04-28)
|
|
127
|
-
-
|
|
132
|
+
- Internal: test setup migrated to `src/**/*.test.ts` standard.
|
|
128
133
|
|
|
129
134
|
### 0.2.16 (2026-04-26)
|
|
130
|
-
- Min js-controller
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
- Process-level `unhandledRejection` / `uncaughtException` handlers added as last-line-of-defence against fire-and-forget rejections.
|
|
134
|
-
- Stop shipping the `manual-review` release-script plugin — adapter-only consequence.
|
|
135
|
-
- Bump min js-controller to `>=7.0.23` (matches latest-repo recommendation).
|
|
136
|
-
- Audit-driven boilerplate sync with the other krobi adapters (`.vscode` json5 schemas, `tsconfig.test` looser test rules).
|
|
137
|
-
- README footer-link to `CHANGELOG_OLD.md` restored, `CHANGELOG_OLD.md` cleaned up to consistent compact style.
|
|
138
|
-
|
|
139
|
-
### 0.2.14 (2026-04-23)
|
|
140
|
-
- Separate test-build output (`build-test/`) from production `build/`, no more duplicated `build/src` + `build/test` tree in published packages.
|
|
141
|
-
- Declare `deliveries` folder and `summary` channel as instance objects so their parent exists before per-package states appear.
|
|
142
|
-
- Localize status labels and delivery estimates to all 11 ioBroker languages via `system.config.language`; the per-instance `Status Language` option is removed.
|
|
143
|
-
- Fix `summary.todayCount` for non-DE/EN languages (filter compared estimate strings against `heute`/`today`, so it always returned zero elsewhere).
|
|
135
|
+
- Min js-controller corrected back to `>=6.0.11` (was incorrectly bumped to `>=7.0.23` in 0.2.15).
|
|
136
|
+
|
|
137
|
+
Older entries are in [CHANGELOG_OLD.md](CHANGELOG_OLD.md).
|
|
144
138
|
|
|
145
139
|
## Support
|
|
146
140
|
|
package/admin/jsonConfig.json
CHANGED
|
@@ -10,7 +10,11 @@
|
|
|
10
10
|
"apiKeyInfo": {
|
|
11
11
|
"type": "staticText",
|
|
12
12
|
"text": "apiKeyInfo",
|
|
13
|
-
"xs": 12,
|
|
13
|
+
"xs": 12,
|
|
14
|
+
"sm": 12,
|
|
15
|
+
"md": 12,
|
|
16
|
+
"lg": 12,
|
|
17
|
+
"xl": 12,
|
|
14
18
|
"style": {
|
|
15
19
|
"fontSize": 14,
|
|
16
20
|
"color": "#666",
|
|
@@ -20,7 +24,11 @@
|
|
|
20
24
|
"apiKey": {
|
|
21
25
|
"type": "password",
|
|
22
26
|
"label": "label_apiKey",
|
|
23
|
-
"xs": 12,
|
|
27
|
+
"xs": 12,
|
|
28
|
+
"sm": 12,
|
|
29
|
+
"md": 8,
|
|
30
|
+
"lg": 8,
|
|
31
|
+
"xl": 8
|
|
24
32
|
},
|
|
25
33
|
"checkConnection": {
|
|
26
34
|
"newLine": true,
|
|
@@ -32,7 +40,11 @@
|
|
|
32
40
|
"okText": "msg_connectionOk",
|
|
33
41
|
"errorText": "msg_connectionFailed"
|
|
34
42
|
},
|
|
35
|
-
"xs": 12,
|
|
43
|
+
"xs": 12,
|
|
44
|
+
"sm": 12,
|
|
45
|
+
"md": 4,
|
|
46
|
+
"lg": 4,
|
|
47
|
+
"xl": 4
|
|
36
48
|
},
|
|
37
49
|
"pollingHeader": {
|
|
38
50
|
"newLine": true,
|
|
@@ -47,7 +59,11 @@
|
|
|
47
59
|
"min": 5,
|
|
48
60
|
"max": 60,
|
|
49
61
|
"default": 10,
|
|
50
|
-
"xs": 12,
|
|
62
|
+
"xs": 12,
|
|
63
|
+
"sm": 12,
|
|
64
|
+
"md": 6,
|
|
65
|
+
"lg": 6,
|
|
66
|
+
"xl": 6
|
|
51
67
|
},
|
|
52
68
|
"deliveryHeader": {
|
|
53
69
|
"newLine": true,
|
|
@@ -60,7 +76,11 @@
|
|
|
60
76
|
"label": "label_autoRemoveDelivered",
|
|
61
77
|
"tooltip": "tooltip_autoRemoveDelivered",
|
|
62
78
|
"default": true,
|
|
63
|
-
"xs": 12,
|
|
79
|
+
"xs": 12,
|
|
80
|
+
"sm": 12,
|
|
81
|
+
"md": 12,
|
|
82
|
+
"lg": 12,
|
|
83
|
+
"xl": 12
|
|
64
84
|
},
|
|
65
85
|
"_supportHeader": {
|
|
66
86
|
"newLine": true,
|
|
@@ -71,7 +91,11 @@
|
|
|
71
91
|
"_aboutInfo": {
|
|
72
92
|
"type": "staticText",
|
|
73
93
|
"text": "aboutInfo",
|
|
74
|
-
"xs": 12,
|
|
94
|
+
"xs": 12,
|
|
95
|
+
"sm": 12,
|
|
96
|
+
"md": 12,
|
|
97
|
+
"lg": 12,
|
|
98
|
+
"xl": 12,
|
|
75
99
|
"style": {
|
|
76
100
|
"fontSize": 14,
|
|
77
101
|
"marginBottom": 16
|
|
@@ -84,7 +108,11 @@
|
|
|
84
108
|
"button": true,
|
|
85
109
|
"variant": "outlined",
|
|
86
110
|
"color": "primary",
|
|
87
|
-
"xs": 12,
|
|
111
|
+
"xs": 12,
|
|
112
|
+
"sm": 6,
|
|
113
|
+
"md": 4,
|
|
114
|
+
"lg": 4,
|
|
115
|
+
"xl": 4
|
|
88
116
|
},
|
|
89
117
|
"_paypalLink": {
|
|
90
118
|
"type": "staticLink",
|
|
@@ -93,7 +121,11 @@
|
|
|
93
121
|
"button": true,
|
|
94
122
|
"variant": "outlined",
|
|
95
123
|
"color": "primary",
|
|
96
|
-
"xs": 12,
|
|
124
|
+
"xs": 12,
|
|
125
|
+
"sm": 6,
|
|
126
|
+
"md": 4,
|
|
127
|
+
"lg": 4,
|
|
128
|
+
"xl": 4
|
|
97
129
|
}
|
|
98
130
|
}
|
|
99
131
|
}
|
package/build/lib/types.js
CHANGED
|
@@ -20,8 +20,6 @@ var types_exports = {};
|
|
|
20
20
|
__export(types_exports, {
|
|
21
21
|
FALLBACK_LANGUAGE: () => FALLBACK_LANGUAGE,
|
|
22
22
|
STATUS_LABELS: () => STATUS_LABELS,
|
|
23
|
-
STATUS_LABELS_DE: () => STATUS_LABELS_DE,
|
|
24
|
-
STATUS_LABELS_EN: () => STATUS_LABELS_EN,
|
|
25
23
|
SUPPORTED_LANGUAGES: () => SUPPORTED_LANGUAGES
|
|
26
24
|
});
|
|
27
25
|
module.exports = __toCommonJS(types_exports);
|
|
@@ -148,16 +146,12 @@ const STATUS_LABELS = {
|
|
|
148
146
|
8: "\u5DF2\u767B\u8BB0"
|
|
149
147
|
}
|
|
150
148
|
};
|
|
151
|
-
const STATUS_LABELS_DE = STATUS_LABELS.de;
|
|
152
|
-
const STATUS_LABELS_EN = STATUS_LABELS.en;
|
|
153
149
|
const SUPPORTED_LANGUAGES = Object.keys(STATUS_LABELS);
|
|
154
150
|
const FALLBACK_LANGUAGE = "en";
|
|
155
151
|
// Annotate the CommonJS export names for ESM import in node:
|
|
156
152
|
0 && (module.exports = {
|
|
157
153
|
FALLBACK_LANGUAGE,
|
|
158
154
|
STATUS_LABELS,
|
|
159
|
-
STATUS_LABELS_DE,
|
|
160
|
-
STATUS_LABELS_EN,
|
|
161
155
|
SUPPORTED_LANGUAGES
|
|
162
156
|
});
|
|
163
157
|
//# sourceMappingURL=types.js.map
|
package/build/lib/types.js.map
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../src/lib/types.ts"],
|
|
4
|
-
"sourcesContent": ["/** API response from parcel.app deliveries endpoint */\nexport interface ParcelApiResponse {\n /** Whether the request was successful */\n success: boolean;\n /** Error message if request failed */\n error_message?: string;\n /** Error code if request failed */\n error_code?: string;\n /** List of deliveries */\n deliveries?: ParcelDelivery[];\n}\n\n/** Single delivery from the parcel.app API */\nexport interface ParcelDelivery {\n /** Carrier identifier */\n carrier_code: string;\n /** User-defined description */\n description: string;\n /** Status code (0-8 as string) */\n status_code: string;\n /** Tracking number */\n tracking_number: string;\n /** Extra info (postal code, email) */\n extra_information?: string;\n /** Expected delivery date */\n date_expected?: string;\n /** Expected delivery date end */\n date_expected_end?: string;\n /** Expected delivery Unix timestamp */\n timestamp_expected?: number;\n /** Expected delivery end Unix timestamp */\n timestamp_expected_end?: number;\n /** Tracking events (newest first) */\n events?: ParcelEvent[];\n}\n\n/** Single tracking event */\nexport interface ParcelEvent {\n /** Event description */\n event: string;\n /** Event date string */\n date: string;\n /** Event location */\n location?: string;\n /** Additional details */\n additional?: string;\n}\n\n/** Request body for adding a delivery */\nexport interface AddDeliveryRequest {\n /** Tracking number to add */\n tracking_number: string;\n /** Carrier code */\n carrier_code: string;\n /** User description */\n description: string;\n /** Tracking language */\n language?: string;\n /** Send push confirmation */\n send_push_confirmation?: boolean;\n}\n\n/** Add delivery API response */\nexport interface AddDeliveryResponse {\n /** Whether the delivery was added */\n success: boolean;\n /** Error message if failed */\n error_message?: string;\n}\n\n/** Carrier names mapping (carrier_code \u2192 display name) */\nexport type CarrierMap = Record<string, string>;\n\n/** Delivery status labels for status codes 0-8, keyed by ioBroker language code */\nexport const STATUS_LABELS: Record<string, Record<number, string>> = {\n de: {\n 0: \"Zugestellt\",\n 1: \"Eingefroren\",\n 2: \"Unterwegs\",\n 3: \"Abholung erwartet\",\n 4: \"In Zustellung\",\n 5: \"Nicht gefunden\",\n 6: \"Zustellversuch gescheitert\",\n 7: \"Ausnahme\",\n 8: \"Registriert\",\n },\n en: {\n 0: \"Delivered\",\n 1: \"Frozen\",\n 2: \"In Transit\",\n 3: \"Awaiting Pickup\",\n 4: \"Out for Delivery\",\n 5: \"Not Found\",\n 6: \"Delivery Attempt Failed\",\n 7: \"Exception\",\n 8: \"Info Received\",\n },\n ru: {\n 0: \"\u0414\u043E\u0441\u0442\u0430\u0432\u043B\u0435\u043D\u043E\",\n 1: \"\u0417\u0430\u043C\u043E\u0440\u043E\u0436\u0435\u043D\u043E\",\n 2: \"\u0412 \u043F\u0443\u0442\u0438\",\n 3: \"\u041E\u0436\u0438\u0434\u0430\u0435\u0442 \u043F\u043E\u043B\u0443\u0447\u0435\u043D\u0438\u044F\",\n 4: \"\u0414\u043E\u0441\u0442\u0430\u0432\u043B\u044F\u0435\u0442\u0441\u044F\",\n 5: \"\u041D\u0435 \u043D\u0430\u0439\u0434\u0435\u043D\u043E\",\n 6: \"\u041D\u0435\u0443\u0434\u0430\u0447\u043D\u0430\u044F \u0434\u043E\u0441\u0442\u0430\u0432\u043A\u0430\",\n 7: \"\u0418\u0441\u043A\u043B\u044E\u0447\u0435\u043D\u0438\u0435\",\n 8: \"\u0417\u0430\u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0438\u0440\u043E\u0432\u0430\u043D\u043E\",\n },\n pt: {\n 0: \"Entregue\",\n 1: \"Congelado\",\n 2: \"Em tr\u00E2nsito\",\n 3: \"Aguardando recolha\",\n 4: \"Em entrega\",\n 5: \"N\u00E3o encontrado\",\n 6: \"Tentativa de entrega falhou\",\n 7: \"Exce\u00E7\u00E3o\",\n 8: \"Registado\",\n },\n nl: {\n 0: \"Bezorgd\",\n 1: \"Bevroren\",\n 2: \"Onderweg\",\n 3: \"Wacht op ophaling\",\n 4: \"Wordt bezorgd\",\n 5: \"Niet gevonden\",\n 6: \"Bezorgpoging mislukt\",\n 7: \"Uitzondering\",\n 8: \"Geregistreerd\",\n },\n fr: {\n 0: \"Livr\u00E9\",\n 1: \"Gel\u00E9\",\n 2: \"En transit\",\n 3: \"En attente de retrait\",\n 4: \"En cours de livraison\",\n 5: \"Introuvable\",\n 6: \"\u00C9chec de la livraison\",\n 7: \"Exception\",\n 8: \"Enregistr\u00E9\",\n },\n it: {\n 0: \"Consegnato\",\n 1: \"Congelato\",\n 2: \"In transito\",\n 3: \"In attesa di ritiro\",\n 4: \"In consegna\",\n 5: \"Non trovato\",\n 6: \"Consegna fallita\",\n 7: \"Eccezione\",\n 8: \"Registrato\",\n },\n es: {\n 0: \"Entregado\",\n 1: \"Congelado\",\n 2: \"En tr\u00E1nsito\",\n 3: \"Esperando recogida\",\n 4: \"En reparto\",\n 5: \"No encontrado\",\n 6: \"Intento de entrega fallido\",\n 7: \"Excepci\u00F3n\",\n 8: \"Registrado\",\n },\n pl: {\n 0: \"Dostarczone\",\n 1: \"Zamro\u017Cone\",\n 2: \"W drodze\",\n 3: \"Oczekuje na odbi\u00F3r\",\n 4: \"W dor\u0119czeniu\",\n 5: \"Nie znaleziono\",\n 6: \"Nieudana pr\u00F3ba dor\u0119czenia\",\n 7: \"Wyj\u0105tek\",\n 8: \"Zarejestrowane\",\n },\n uk: {\n 0: \"\u0414\u043E\u0441\u0442\u0430\u0432\u043B\u0435\u043D\u043E\",\n 1: \"\u0417\u0430\u043C\u043E\u0440\u043E\u0436\u0435\u043D\u043E\",\n 2: \"\u0412 \u0434\u043E\u0440\u043E\u0437\u0456\",\n 3: \"\u041E\u0447\u0456\u043A\u0443\u0454 \u043E\u0442\u0440\u0438\u043C\u0430\u043D\u043D\u044F\",\n 4: \"\u0414\u043E\u0441\u0442\u0430\u0432\u043B\u044F\u0454\u0442\u044C\u0441\u044F\",\n 5: \"\u041D\u0435 \u0437\u043D\u0430\u0439\u0434\u0435\u043D\u043E\",\n 6: \"\u041D\u0435\u0432\u0434\u0430\u043B\u0430 \u0441\u043F\u0440\u043E\u0431\u0430 \u0434\u043E\u0441\u0442\u0430\u0432\u043A\u0438\",\n 7: \"\u0412\u0438\u043D\u044F\u0442\u043E\u043A\",\n 8: \"\u0417\u0430\u0440\u0435\u0454\u0441\u0442\u0440\u043E\u0432\u0430\u043D\u043E\",\n },\n \"zh-cn\": {\n 0: \"\u5DF2\u9001\u8FBE\",\n 1: \"\u5DF2\u51BB\u7ED3\",\n 2: \"\u8FD0\u8F93\u4E2D\",\n 3: \"\u7B49\u5F85\u53D6\u4EF6\",\n 4: \"\u6D3E\u9001\u4E2D\",\n 5: \"\u672A\u627E\u5230\",\n 6: \"\u6D3E\u9001\u5931\u8D25\",\n 7: \"\u5F02\u5E38\",\n 8: \"\u5DF2\u767B\u8BB0\",\n },\n};\n\n/**
|
|
5
|
-
"mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;
|
|
4
|
+
"sourcesContent": ["/** API response from parcel.app deliveries endpoint */\nexport interface ParcelApiResponse {\n /** Whether the request was successful */\n success: boolean;\n /** Error message if request failed */\n error_message?: string;\n /** Error code if request failed */\n error_code?: string;\n /** List of deliveries */\n deliveries?: ParcelDelivery[];\n}\n\n/** Single delivery from the parcel.app API */\nexport interface ParcelDelivery {\n /** Carrier identifier */\n carrier_code: string;\n /** User-defined description */\n description: string;\n /** Status code (0-8 as string) */\n status_code: string;\n /** Tracking number */\n tracking_number: string;\n /** Extra info (postal code, email) */\n extra_information?: string;\n /** Expected delivery date */\n date_expected?: string;\n /** Expected delivery date end */\n date_expected_end?: string;\n /** Expected delivery Unix timestamp */\n timestamp_expected?: number;\n /** Expected delivery end Unix timestamp */\n timestamp_expected_end?: number;\n /** Tracking events (newest first) */\n events?: ParcelEvent[];\n}\n\n/** Single tracking event */\nexport interface ParcelEvent {\n /** Event description */\n event: string;\n /** Event date string */\n date: string;\n /** Event location */\n location?: string;\n /** Additional details */\n additional?: string;\n}\n\n/** Request body for adding a delivery */\nexport interface AddDeliveryRequest {\n /** Tracking number to add */\n tracking_number: string;\n /** Carrier code */\n carrier_code: string;\n /** User description */\n description: string;\n /** Tracking language */\n language?: string;\n /** Send push confirmation */\n send_push_confirmation?: boolean;\n}\n\n/** Add delivery API response */\nexport interface AddDeliveryResponse {\n /** Whether the delivery was added */\n success: boolean;\n /** Error message if failed */\n error_message?: string;\n}\n\n/** Carrier names mapping (carrier_code \u2192 display name) */\nexport type CarrierMap = Record<string, string>;\n\n/** Delivery status labels for status codes 0-8, keyed by ioBroker language code */\nexport const STATUS_LABELS: Record<string, Record<number, string>> = {\n de: {\n 0: \"Zugestellt\",\n 1: \"Eingefroren\",\n 2: \"Unterwegs\",\n 3: \"Abholung erwartet\",\n 4: \"In Zustellung\",\n 5: \"Nicht gefunden\",\n 6: \"Zustellversuch gescheitert\",\n 7: \"Ausnahme\",\n 8: \"Registriert\",\n },\n en: {\n 0: \"Delivered\",\n 1: \"Frozen\",\n 2: \"In Transit\",\n 3: \"Awaiting Pickup\",\n 4: \"Out for Delivery\",\n 5: \"Not Found\",\n 6: \"Delivery Attempt Failed\",\n 7: \"Exception\",\n 8: \"Info Received\",\n },\n ru: {\n 0: \"\u0414\u043E\u0441\u0442\u0430\u0432\u043B\u0435\u043D\u043E\",\n 1: \"\u0417\u0430\u043C\u043E\u0440\u043E\u0436\u0435\u043D\u043E\",\n 2: \"\u0412 \u043F\u0443\u0442\u0438\",\n 3: \"\u041E\u0436\u0438\u0434\u0430\u0435\u0442 \u043F\u043E\u043B\u0443\u0447\u0435\u043D\u0438\u044F\",\n 4: \"\u0414\u043E\u0441\u0442\u0430\u0432\u043B\u044F\u0435\u0442\u0441\u044F\",\n 5: \"\u041D\u0435 \u043D\u0430\u0439\u0434\u0435\u043D\u043E\",\n 6: \"\u041D\u0435\u0443\u0434\u0430\u0447\u043D\u0430\u044F \u0434\u043E\u0441\u0442\u0430\u0432\u043A\u0430\",\n 7: \"\u0418\u0441\u043A\u043B\u044E\u0447\u0435\u043D\u0438\u0435\",\n 8: \"\u0417\u0430\u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0438\u0440\u043E\u0432\u0430\u043D\u043E\",\n },\n pt: {\n 0: \"Entregue\",\n 1: \"Congelado\",\n 2: \"Em tr\u00E2nsito\",\n 3: \"Aguardando recolha\",\n 4: \"Em entrega\",\n 5: \"N\u00E3o encontrado\",\n 6: \"Tentativa de entrega falhou\",\n 7: \"Exce\u00E7\u00E3o\",\n 8: \"Registado\",\n },\n nl: {\n 0: \"Bezorgd\",\n 1: \"Bevroren\",\n 2: \"Onderweg\",\n 3: \"Wacht op ophaling\",\n 4: \"Wordt bezorgd\",\n 5: \"Niet gevonden\",\n 6: \"Bezorgpoging mislukt\",\n 7: \"Uitzondering\",\n 8: \"Geregistreerd\",\n },\n fr: {\n 0: \"Livr\u00E9\",\n 1: \"Gel\u00E9\",\n 2: \"En transit\",\n 3: \"En attente de retrait\",\n 4: \"En cours de livraison\",\n 5: \"Introuvable\",\n 6: \"\u00C9chec de la livraison\",\n 7: \"Exception\",\n 8: \"Enregistr\u00E9\",\n },\n it: {\n 0: \"Consegnato\",\n 1: \"Congelato\",\n 2: \"In transito\",\n 3: \"In attesa di ritiro\",\n 4: \"In consegna\",\n 5: \"Non trovato\",\n 6: \"Consegna fallita\",\n 7: \"Eccezione\",\n 8: \"Registrato\",\n },\n es: {\n 0: \"Entregado\",\n 1: \"Congelado\",\n 2: \"En tr\u00E1nsito\",\n 3: \"Esperando recogida\",\n 4: \"En reparto\",\n 5: \"No encontrado\",\n 6: \"Intento de entrega fallido\",\n 7: \"Excepci\u00F3n\",\n 8: \"Registrado\",\n },\n pl: {\n 0: \"Dostarczone\",\n 1: \"Zamro\u017Cone\",\n 2: \"W drodze\",\n 3: \"Oczekuje na odbi\u00F3r\",\n 4: \"W dor\u0119czeniu\",\n 5: \"Nie znaleziono\",\n 6: \"Nieudana pr\u00F3ba dor\u0119czenia\",\n 7: \"Wyj\u0105tek\",\n 8: \"Zarejestrowane\",\n },\n uk: {\n 0: \"\u0414\u043E\u0441\u0442\u0430\u0432\u043B\u0435\u043D\u043E\",\n 1: \"\u0417\u0430\u043C\u043E\u0440\u043E\u0436\u0435\u043D\u043E\",\n 2: \"\u0412 \u0434\u043E\u0440\u043E\u0437\u0456\",\n 3: \"\u041E\u0447\u0456\u043A\u0443\u0454 \u043E\u0442\u0440\u0438\u043C\u0430\u043D\u043D\u044F\",\n 4: \"\u0414\u043E\u0441\u0442\u0430\u0432\u043B\u044F\u0454\u0442\u044C\u0441\u044F\",\n 5: \"\u041D\u0435 \u0437\u043D\u0430\u0439\u0434\u0435\u043D\u043E\",\n 6: \"\u041D\u0435\u0432\u0434\u0430\u043B\u0430 \u0441\u043F\u0440\u043E\u0431\u0430 \u0434\u043E\u0441\u0442\u0430\u0432\u043A\u0438\",\n 7: \"\u0412\u0438\u043D\u044F\u0442\u043E\u043A\",\n 8: \"\u0417\u0430\u0440\u0435\u0454\u0441\u0442\u0440\u043E\u0432\u0430\u043D\u043E\",\n },\n \"zh-cn\": {\n 0: \"\u5DF2\u9001\u8FBE\",\n 1: \"\u5DF2\u51BB\u7ED3\",\n 2: \"\u8FD0\u8F93\u4E2D\",\n 3: \"\u7B49\u5F85\u53D6\u4EF6\",\n 4: \"\u6D3E\u9001\u4E2D\",\n 5: \"\u672A\u627E\u5230\",\n 6: \"\u6D3E\u9001\u5931\u8D25\",\n 7: \"\u5F02\u5E38\",\n 8: \"\u5DF2\u767B\u8BB0\",\n },\n};\n\n/** Language codes the adapter generates state labels for */\nexport const SUPPORTED_LANGUAGES = Object.keys(STATUS_LABELS);\n\n/** Fallback language used when system.config.language is outside SUPPORTED_LANGUAGES */\nexport const FALLBACK_LANGUAGE = \"en\";\n\n// Augment the ioBroker global namespace\ndeclare global {\n // eslint-disable-next-line @typescript-eslint/no-namespace\n namespace ioBroker {\n interface AdapterConfig {\n /** parcel.app API key */\n apiKey: string;\n /** Polling interval in minutes */\n pollInterval: number;\n /** Automatically remove delivered packages from states */\n autoRemoveDelivered: boolean;\n }\n }\n}\n"],
|
|
5
|
+
"mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AA0EO,MAAM,gBAAwD;AAAA,EACnE,IAAI;AAAA,IACF,GAAG;AAAA,IACH,GAAG;AAAA,IACH,GAAG;AAAA,IACH,GAAG;AAAA,IACH,GAAG;AAAA,IACH,GAAG;AAAA,IACH,GAAG;AAAA,IACH,GAAG;AAAA,IACH,GAAG;AAAA,EACL;AAAA,EACA,IAAI;AAAA,IACF,GAAG;AAAA,IACH,GAAG;AAAA,IACH,GAAG;AAAA,IACH,GAAG;AAAA,IACH,GAAG;AAAA,IACH,GAAG;AAAA,IACH,GAAG;AAAA,IACH,GAAG;AAAA,IACH,GAAG;AAAA,EACL;AAAA,EACA,IAAI;AAAA,IACF,GAAG;AAAA,IACH,GAAG;AAAA,IACH,GAAG;AAAA,IACH,GAAG;AAAA,IACH,GAAG;AAAA,IACH,GAAG;AAAA,IACH,GAAG;AAAA,IACH,GAAG;AAAA,IACH,GAAG;AAAA,EACL;AAAA,EACA,IAAI;AAAA,IACF,GAAG;AAAA,IACH,GAAG;AAAA,IACH,GAAG;AAAA,IACH,GAAG;AAAA,IACH,GAAG;AAAA,IACH,GAAG;AAAA,IACH,GAAG;AAAA,IACH,GAAG;AAAA,IACH,GAAG;AAAA,EACL;AAAA,EACA,IAAI;AAAA,IACF,GAAG;AAAA,IACH,GAAG;AAAA,IACH,GAAG;AAAA,IACH,GAAG;AAAA,IACH,GAAG;AAAA,IACH,GAAG;AAAA,IACH,GAAG;AAAA,IACH,GAAG;AAAA,IACH,GAAG;AAAA,EACL;AAAA,EACA,IAAI;AAAA,IACF,GAAG;AAAA,IACH,GAAG;AAAA,IACH,GAAG;AAAA,IACH,GAAG;AAAA,IACH,GAAG;AAAA,IACH,GAAG;AAAA,IACH,GAAG;AAAA,IACH,GAAG;AAAA,IACH,GAAG;AAAA,EACL;AAAA,EACA,IAAI;AAAA,IACF,GAAG;AAAA,IACH,GAAG;AAAA,IACH,GAAG;AAAA,IACH,GAAG;AAAA,IACH,GAAG;AAAA,IACH,GAAG;AAAA,IACH,GAAG;AAAA,IACH,GAAG;AAAA,IACH,GAAG;AAAA,EACL;AAAA,EACA,IAAI;AAAA,IACF,GAAG;AAAA,IACH,GAAG;AAAA,IACH,GAAG;AAAA,IACH,GAAG;AAAA,IACH,GAAG;AAAA,IACH,GAAG;AAAA,IACH,GAAG;AAAA,IACH,GAAG;AAAA,IACH,GAAG;AAAA,EACL;AAAA,EACA,IAAI;AAAA,IACF,GAAG;AAAA,IACH,GAAG;AAAA,IACH,GAAG;AAAA,IACH,GAAG;AAAA,IACH,GAAG;AAAA,IACH,GAAG;AAAA,IACH,GAAG;AAAA,IACH,GAAG;AAAA,IACH,GAAG;AAAA,EACL;AAAA,EACA,IAAI;AAAA,IACF,GAAG;AAAA,IACH,GAAG;AAAA,IACH,GAAG;AAAA,IACH,GAAG;AAAA,IACH,GAAG;AAAA,IACH,GAAG;AAAA,IACH,GAAG;AAAA,IACH,GAAG;AAAA,IACH,GAAG;AAAA,EACL;AAAA,EACA,SAAS;AAAA,IACP,GAAG;AAAA,IACH,GAAG;AAAA,IACH,GAAG;AAAA,IACH,GAAG;AAAA,IACH,GAAG;AAAA,IACH,GAAG;AAAA,IACH,GAAG;AAAA,IACH,GAAG;AAAA,IACH,GAAG;AAAA,EACL;AACF;AAGO,MAAM,sBAAsB,OAAO,KAAK,aAAa;AAGrD,MAAM,oBAAoB;",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|
package/io-package.json
CHANGED
|
@@ -1,98 +1,98 @@
|
|
|
1
1
|
{
|
|
2
2
|
"common": {
|
|
3
3
|
"name": "parcelapp",
|
|
4
|
-
"version": "0.
|
|
4
|
+
"version": "0.3.1",
|
|
5
5
|
"news": {
|
|
6
|
+
"0.3.1": {
|
|
7
|
+
"en": "Documentation cleanup: shortened older changelog entries.",
|
|
8
|
+
"de": "Dokumentation: ältere Changelog-Einträge gekürzt.",
|
|
9
|
+
"ru": "Документация: сокращены старые записи changelog.",
|
|
10
|
+
"pt": "Documentação: entradas antigas do changelog encurtadas.",
|
|
11
|
+
"nl": "Documentatie: oudere changelog-vermeldingen ingekort.",
|
|
12
|
+
"fr": "Documentation : entrées anciennes du changelog raccourcies.",
|
|
13
|
+
"it": "Documentazione: voci di changelog precedenti accorciate.",
|
|
14
|
+
"es": "Documentación: entradas antiguas del changelog acortadas.",
|
|
15
|
+
"pl": "Dokumentacja: skrócone starsze wpisy changelog.",
|
|
16
|
+
"uk": "Документація: скорочено старі записи changelog.",
|
|
17
|
+
"zh-cn": "文档:缩短旧的 changelog 条目。"
|
|
18
|
+
},
|
|
19
|
+
"0.3.0": {
|
|
20
|
+
"en": "Internal cleanup: dead `STATUS_LABELS_*` aliases removed, format/format:check scripts, master-sync.",
|
|
21
|
+
"de": "Interne Bereinigung: tote `STATUS_LABELS_*`-Aliases raus, format/format:check-Scripts, Master-Sync.",
|
|
22
|
+
"ru": "Внутренняя очистка: удалены мёртвые `STATUS_LABELS_*`-алиасы, скрипты format/format:check, master-sync.",
|
|
23
|
+
"pt": "Limpeza interna: aliases `STATUS_LABELS_*` mortos removidos, scripts format/format:check, master-sync.",
|
|
24
|
+
"nl": "Interne opschoning: dode `STATUS_LABELS_*`-aliases verwijderd, format/format:check-scripts, master-sync.",
|
|
25
|
+
"fr": "Nettoyage interne : alias `STATUS_LABELS_*` morts supprimés, scripts format/format:check, master-sync.",
|
|
26
|
+
"it": "Pulizia interna: alias `STATUS_LABELS_*` morti rimossi, script format/format:check, master-sync.",
|
|
27
|
+
"es": "Limpieza interna: aliases `STATUS_LABELS_*` muertos eliminados, scripts format/format:check, master-sync.",
|
|
28
|
+
"pl": "Wewnętrzne porządki: martwe aliasy `STATUS_LABELS_*` usunięte, skrypty format/format:check, master-sync.",
|
|
29
|
+
"uk": "Внутрішнє прибирання: мертві `STATUS_LABELS_*`-аліаси видалено, скрипти format/format:check, master-sync.",
|
|
30
|
+
"zh-cn": "内部清理:移除已废弃的 `STATUS_LABELS_*` 别名,新增 format/format:check 脚本,master-sync。"
|
|
31
|
+
},
|
|
6
32
|
"0.2.18": {
|
|
7
|
-
"en": "
|
|
8
|
-
"de": "
|
|
9
|
-
"ru": "
|
|
10
|
-
"pt": "Limpeza
|
|
11
|
-
"nl": "
|
|
12
|
-
"fr": "Nettoyage
|
|
13
|
-
"it": "
|
|
14
|
-
"es": "Limpieza
|
|
15
|
-
"pl": "
|
|
16
|
-
"uk": "
|
|
17
|
-
"zh-cn": "
|
|
33
|
+
"en": "Internal cleanup against ioBroker.example/TypeScript standard.",
|
|
34
|
+
"de": "Interne Bereinigung gegen ioBroker.example/TypeScript-Standard.",
|
|
35
|
+
"ru": "Внутренняя очистка по стандарту ioBroker.example/TypeScript.",
|
|
36
|
+
"pt": "Limpeza interna conforme padrão ioBroker.example/TypeScript.",
|
|
37
|
+
"nl": "Interne opschoning volgens ioBroker.example/TypeScript-standaard.",
|
|
38
|
+
"fr": "Nettoyage interne selon le standard ioBroker.example/TypeScript.",
|
|
39
|
+
"it": "Pulizia interna secondo lo standard ioBroker.example/TypeScript.",
|
|
40
|
+
"es": "Limpieza interna según el estándar ioBroker.example/TypeScript.",
|
|
41
|
+
"pl": "Wewnętrzne porządki zgodnie ze standardem ioBroker.example/TypeScript.",
|
|
42
|
+
"uk": "Внутрішнє прибирання за стандартом ioBroker.example/TypeScript.",
|
|
43
|
+
"zh-cn": "依据 ioBroker.example/TypeScript 标准的内部清理。"
|
|
18
44
|
},
|
|
19
45
|
"0.2.17": {
|
|
20
|
-
"en": "
|
|
21
|
-
"de": "Test-Setup
|
|
22
|
-
"ru": "
|
|
23
|
-
"pt": "
|
|
24
|
-
"nl": "
|
|
25
|
-
"fr": "
|
|
26
|
-
"it": "
|
|
27
|
-
"es": "
|
|
28
|
-
"pl": "
|
|
29
|
-
"uk": "
|
|
30
|
-
"zh-cn": "
|
|
46
|
+
"en": "Internal: test setup migrated to `src/**/*.test.ts` standard.",
|
|
47
|
+
"de": "Intern: Test-Setup auf `src/**/*.test.ts`-Standard migriert.",
|
|
48
|
+
"ru": "Внутреннее: тестовая инфраструктура переведена на стандарт `src/**/*.test.ts`.",
|
|
49
|
+
"pt": "Interno: configuração de testes migrada para o padrão `src/**/*.test.ts`.",
|
|
50
|
+
"nl": "Intern: testsetup gemigreerd naar `src/**/*.test.ts`-standaard.",
|
|
51
|
+
"fr": "Interne : configuration de tests migrée au standard `src/**/*.test.ts`.",
|
|
52
|
+
"it": "Interno: setup test migrato allo standard `src/**/*.test.ts`.",
|
|
53
|
+
"es": "Interno: configuración de tests migrada al estándar `src/**/*.test.ts`.",
|
|
54
|
+
"pl": "Wewnętrzne: konfiguracja testów zmigrowana do standardu `src/**/*.test.ts`.",
|
|
55
|
+
"uk": "Внутрішнє: тестова інфраструктура переведена на стандарт `src/**/*.test.ts`.",
|
|
56
|
+
"zh-cn": "内部:测试配置迁移至 `src/**/*.test.ts` 标准。"
|
|
31
57
|
},
|
|
32
58
|
"0.2.16": {
|
|
33
|
-
"en": "Min js-controller
|
|
34
|
-
"de": "Min js-
|
|
35
|
-
"ru": "
|
|
36
|
-
"pt": "
|
|
37
|
-
"nl": "Min js-controller
|
|
38
|
-
"fr": "
|
|
39
|
-
"it": "Min js-controller
|
|
40
|
-
"es": "
|
|
41
|
-
"pl": "Min js-
|
|
42
|
-
"uk": "
|
|
43
|
-
"zh-cn": "
|
|
59
|
+
"en": "Min js-controller corrected back to `>=6.0.11` (was incorrectly bumped to `>=7.0.23` in 0.2.15).",
|
|
60
|
+
"de": "Min js-controller zurück auf `>=6.0.11` (war in 0.2.15 fälschlich auf `>=7.0.23` gesetzt).",
|
|
61
|
+
"ru": "Мин. js-controller восстановлен на `>=6.0.11` (в 0.2.15 ошибочно был `>=7.0.23`).",
|
|
62
|
+
"pt": "Mín. js-controller restaurado para `>=6.0.11` (em 0.2.15 estava erroneamente em `>=7.0.23`).",
|
|
63
|
+
"nl": "Min. js-controller hersteld op `>=6.0.11` (was in 0.2.15 ten onrechte `>=7.0.23`).",
|
|
64
|
+
"fr": "Min js-controller rétabli à `>=6.0.11` (était par erreur à `>=7.0.23` en 0.2.15).",
|
|
65
|
+
"it": "Min js-controller ripristinato a `>=6.0.11` (in 0.2.15 era erroneamente `>=7.0.23`).",
|
|
66
|
+
"es": "Mín. js-controller restaurado a `>=6.0.11` (en 0.2.15 estaba incorrectamente en `>=7.0.23`).",
|
|
67
|
+
"pl": "Min. js-controller przywrócony do `>=6.0.11` (w 0.2.15 błędnie ustawiony na `>=7.0.23`).",
|
|
68
|
+
"uk": "Мін. js-controller повернено на `>=6.0.11` (у 0.2.15 помилково було `>=7.0.23`).",
|
|
69
|
+
"zh-cn": "最低 js-controller 恢复为 `>=6.0.11`(0.2.15 中错误地设置为 `>=7.0.23`)。"
|
|
44
70
|
},
|
|
45
71
|
"0.2.15": {
|
|
46
|
-
"en": "
|
|
47
|
-
"de": "
|
|
48
|
-
"ru": "
|
|
49
|
-
"pt": "
|
|
50
|
-
"nl": "
|
|
51
|
-
"fr": "
|
|
52
|
-
"it": "
|
|
53
|
-
"es": "
|
|
54
|
-
"pl": "
|
|
55
|
-
"uk": "
|
|
56
|
-
"zh-cn": "
|
|
72
|
+
"en": "Crash defense: process-level `unhandledRejection`/`uncaughtException` handlers.",
|
|
73
|
+
"de": "Crash-Schutz: process-level `unhandledRejection`/`uncaughtException`-Handler.",
|
|
74
|
+
"ru": "Защита от сбоев: process-level обработчики `unhandledRejection`/`uncaughtException`.",
|
|
75
|
+
"pt": "Proteção contra falhas: handlers process-level `unhandledRejection`/`uncaughtException`.",
|
|
76
|
+
"nl": "Crashbescherming: process-level `unhandledRejection`/`uncaughtException`-handlers.",
|
|
77
|
+
"fr": "Défense contre les crashs : handlers process-level `unhandledRejection`/`uncaughtException`.",
|
|
78
|
+
"it": "Difesa anti-crash: handler process-level `unhandledRejection`/`uncaughtException`.",
|
|
79
|
+
"es": "Defensa contra fallos: handlers process-level `unhandledRejection`/`uncaughtException`.",
|
|
80
|
+
"pl": "Ochrona przed crashem: handlery process-level `unhandledRejection`/`uncaughtException`.",
|
|
81
|
+
"uk": "Захист від збоїв: process-level обробники `unhandledRejection`/`uncaughtException`.",
|
|
82
|
+
"zh-cn": "崩溃防护:process-level `unhandledRejection`/`uncaughtException` 处理器。"
|
|
57
83
|
},
|
|
58
84
|
"0.2.14": {
|
|
59
|
-
"en": "
|
|
60
|
-
"de": "
|
|
61
|
-
"ru": "
|
|
62
|
-
"pt": "
|
|
63
|
-
"nl": "
|
|
64
|
-
"fr": "
|
|
65
|
-
"it": "
|
|
66
|
-
"es": "
|
|
67
|
-
"pl": "
|
|
68
|
-
"uk": "
|
|
69
|
-
"zh-cn": "
|
|
70
|
-
},
|
|
71
|
-
"0.2.13": {
|
|
72
|
-
"en": "Latest-repo review round 1 compliance: common.messagebox=true added because the admin-UI Check Connection and Add Delivery buttons route through onMessage. Runtime behaviour unchanged.",
|
|
73
|
-
"de": "Latest-Repo Review Round 1 Compliance: common.messagebox=true gesetzt, weil die Admin-UI-Buttons Check Connection und Add Delivery über onMessage laufen. Runtime-Verhalten unverändert.",
|
|
74
|
-
"ru": "Latest-repo review round 1 compliance: common.messagebox=true додано, оскільки кнопки Check Connection та Add Delivery в admin-UI проходять через onMessage. Runtime-поведінка незмінна.",
|
|
75
|
-
"pt": "Compliance do latest-repo review round 1: common.messagebox=true adicionado porque os botões Check Connection e Add Delivery do admin-UI passam pelo onMessage. Comportamento em runtime inalterado.",
|
|
76
|
-
"nl": "Latest-repo review round 1 compliance: common.messagebox=true toegevoegd omdat de admin-UI Check Connection en Add Delivery knoppen via onMessage lopen. Runtime-gedrag ongewijzigd.",
|
|
77
|
-
"fr": "Latest-repo review round 1 compliance: common.messagebox=true ajouté car les boutons Check Connection et Add Delivery de l'admin-UI passent par onMessage. Comportement runtime inchangé.",
|
|
78
|
-
"it": "Latest-repo review round 1 compliance: common.messagebox=true aggiunto perché i pulsanti Check Connection e Add Delivery dell'admin-UI passano da onMessage. Comportamento runtime invariato.",
|
|
79
|
-
"es": "Latest-repo review round 1 compliance: common.messagebox=true añadido porque los botones Check Connection y Add Delivery de admin-UI pasan por onMessage. Comportamiento en runtime sin cambios.",
|
|
80
|
-
"pl": "Latest-repo review round 1 compliance: common.messagebox=true dodane, ponieważ przyciski Check Connection i Add Delivery admin-UI przechodzą przez onMessage. Zachowanie runtime bez zmian.",
|
|
81
|
-
"uk": "Latest-repo review round 1 compliance: common.messagebox=true додано, оскільки кнопки Check Connection та Add Delivery в admin-UI проходять через onMessage. Runtime поведінка незмінна.",
|
|
82
|
-
"zh-cn": "Latest-repo review round 1 compliance:因 admin-UI 的 Check Connection 与 Add Delivery 按钮经由 onMessage 路由,故添加 common.messagebox=true。运行时行为不变。"
|
|
83
|
-
},
|
|
84
|
-
"0.2.12": {
|
|
85
|
-
"en": "Harden API-drift guards in ParcelClient and StateManager (non-boolean success, non-array deliveries, non-string error_code/error_message, non-object carrier map, non-string delivery fields). 38 new regression tests (128 total).",
|
|
86
|
-
"de": "API-Drift-Guards in ParcelClient und StateManager gehärtet (non-boolean success, non-array deliveries, non-string error_code/error_message, non-object carrier map, non-string delivery fields). 38 neue Regression-Tests (128 total).",
|
|
87
|
-
"ru": "API-drift guards в ParcelClient та StateManager посилено (non-boolean success, non-array deliveries, non-string error_code/error_message, non-object carrier map, non-string delivery fields). 38 нових regression-тестів (128 всього).",
|
|
88
|
-
"pt": "API-drift guards reforçados em ParcelClient e StateManager (success non-boolean, deliveries non-array, error_code/error_message non-string, carrier map non-object, campos non-string). 38 novos regression-tests (128 no total).",
|
|
89
|
-
"nl": "API-drift guards in ParcelClient en StateManager versterkt (non-boolean success, non-array deliveries, non-string error_code/error_message, non-object carrier map, non-string delivery fields). 38 nieuwe regressietests (128 totaal).",
|
|
90
|
-
"fr": "API-drift guards renforcés dans ParcelClient et StateManager (success non-boolean, deliveries non-array, error_code/error_message non-string, carrier map non-object, champs non-string). 38 nouveaux regression-tests (128 au total).",
|
|
91
|
-
"it": "API-drift guards rafforzati in ParcelClient e StateManager (success non-boolean, deliveries non-array, error_code/error_message non-string, carrier map non-object, campi non-string). 38 nuovi regression-test (128 totali).",
|
|
92
|
-
"es": "API-drift guards reforzados en ParcelClient y StateManager (success non-boolean, deliveries non-array, error_code/error_message non-string, carrier map non-object, campos non-string). 38 nuevos tests de regresión (128 en total).",
|
|
93
|
-
"pl": "API-drift guards wzmocnione w ParcelClient i StateManager (success non-boolean, deliveries non-array, error_code/error_message non-string, carrier map non-object, pola non-string). 38 nowych testów regresji (128 łącznie).",
|
|
94
|
-
"uk": "API-drift guards посилено в ParcelClient і StateManager (non-boolean success, non-array deliveries, non-string error_code/error_message, non-object carrier map, non-string delivery fields). 38 нових regression-тестів (128 загалом).",
|
|
95
|
-
"zh-cn": "强化 ParcelClient 和 StateManager 的 API-drift guards(非布尔 success、非数组 deliveries、非字符串 error_code/error_message、非对象 carrier map、非字符串 delivery 字段)。新增 38 个 regression 测试(共 128 个)。"
|
|
85
|
+
"en": "Status labels localized via `system.config.language` (11 languages). Fix: `summary.todayCount` for non-DE/EN.",
|
|
86
|
+
"de": "Status-Labels über `system.config.language` lokalisiert (11 Sprachen). Fix: `summary.todayCount` für nicht-DE/EN.",
|
|
87
|
+
"ru": "Метки статуса локализованы через `system.config.language` (11 языков). Fix: `summary.todayCount` для не-DE/EN.",
|
|
88
|
+
"pt": "Rótulos de status localizados via `system.config.language` (11 idiomas). Fix: `summary.todayCount` para não-DE/EN.",
|
|
89
|
+
"nl": "Statuslabels gelokaliseerd via `system.config.language` (11 talen). Fix: `summary.todayCount` voor niet-DE/EN.",
|
|
90
|
+
"fr": "Libellés de statut localisés via `system.config.language` (11 langues). Fix : `summary.todayCount` pour non-DE/EN.",
|
|
91
|
+
"it": "Etichette di stato localizzate via `system.config.language` (11 lingue). Fix: `summary.todayCount` per non-DE/EN.",
|
|
92
|
+
"es": "Etiquetas de estado localizadas vía `system.config.language` (11 idiomas). Fix: `summary.todayCount` para no-DE/EN.",
|
|
93
|
+
"pl": "Etykiety statusu zlokalizowane przez `system.config.language` (11 języków). Fix: `summary.todayCount` dla nie-DE/EN.",
|
|
94
|
+
"uk": "Мітки статусу локалізовано через `system.config.language` (11 мов). Fix: `summary.todayCount` для не-DE/EN.",
|
|
95
|
+
"zh-cn": "状态标签通过 `system.config.language` 本地化(11 种语言)。修复:非 DE/EN 的 `summary.todayCount`。"
|
|
96
96
|
}
|
|
97
97
|
},
|
|
98
98
|
"titleLang": {
|
|
@@ -157,12 +157,12 @@
|
|
|
157
157
|
},
|
|
158
158
|
"dependencies": [
|
|
159
159
|
{
|
|
160
|
-
"js-controller": ">=
|
|
160
|
+
"js-controller": ">=7.0.7"
|
|
161
161
|
}
|
|
162
162
|
],
|
|
163
163
|
"globalDependencies": [
|
|
164
164
|
{
|
|
165
|
-
"admin": ">=7.
|
|
165
|
+
"admin": ">=7.7.22"
|
|
166
166
|
}
|
|
167
167
|
]
|
|
168
168
|
},
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "iobroker.parcelapp",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.3.1",
|
|
4
4
|
"description": "ioBroker adapter for parcel.app — track packages as ioBroker states",
|
|
5
5
|
"author": {
|
|
6
6
|
"name": "krobi",
|
|
@@ -69,6 +69,8 @@
|
|
|
69
69
|
"translate": "translate-adapter",
|
|
70
70
|
"lint": "eslint",
|
|
71
71
|
"lint:fix": "eslint --fix",
|
|
72
|
+
"format": "prettier --write .",
|
|
73
|
+
"format:check": "prettier --check .",
|
|
72
74
|
"release": "release-script"
|
|
73
75
|
},
|
|
74
76
|
"nyc": {
|