iobroker.telegram-menu 2.3.0 → 2.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.
Files changed (47) hide show
  1. package/README.md +6 -0
  2. package/build/app/backMenu.js +1 -1
  3. package/build/app/backMenu.js.map +2 -2
  4. package/build/app/dynamicSwitchMenu.js +1 -1
  5. package/build/app/dynamicSwitchMenu.js.map +2 -2
  6. package/build/app/getstate.js +4 -3
  7. package/build/app/getstate.js.map +2 -2
  8. package/build/app/httpRequest.js +2 -2
  9. package/build/app/httpRequest.js.map +2 -2
  10. package/build/app/jsonTable.js +3 -3
  11. package/build/app/jsonTable.js.map +2 -2
  12. package/build/app/messageIds.js +7 -1
  13. package/build/app/messageIds.js.map +2 -2
  14. package/build/app/processData.js +7 -7
  15. package/build/app/processData.js.map +2 -2
  16. package/build/app/sendNav.js +1 -1
  17. package/build/app/sendNav.js.map +2 -2
  18. package/build/app/sendpic.js +4 -5
  19. package/build/app/sendpic.js.map +2 -2
  20. package/build/app/setstate.js +4 -4
  21. package/build/app/setstate.js.map +2 -2
  22. package/build/app/shoppingList.js +3 -3
  23. package/build/app/shoppingList.js.map +2 -2
  24. package/build/app/subMenu.js +15 -13
  25. package/build/app/subMenu.js.map +2 -2
  26. package/build/app/telegram.js +14 -9
  27. package/build/app/telegram.js.map +2 -2
  28. package/build/lib/appUtils.js +4 -5
  29. package/build/lib/appUtils.js.map +2 -2
  30. package/build/lib/utilities.js +9 -9
  31. package/build/lib/utilities.js.map +2 -2
  32. package/build/main.js +1 -3
  33. package/build/main.js.map +2 -2
  34. package/build/src/lib/appUtils.js +3 -3
  35. package/build/src/lib/appUtils.js.map +1 -1
  36. package/build/src/lib/utilities.js +1 -1
  37. package/build/src/lib/utilities.js.map +1 -1
  38. package/build/test/test/appUtils.test.js +12 -0
  39. package/build/test/test/appUtils.test.js.map +1 -1
  40. package/build/test/test/object.test.js +12 -0
  41. package/build/test/test/object.test.js.map +1 -1
  42. package/build/test/test/string.test.js +30 -6
  43. package/build/test/test/string.test.js.map +1 -1
  44. package/build/test/test/time.test.js +183 -198
  45. package/build/test/test/time.test.js.map +1 -1
  46. package/io-package.json +14 -14
  47. package/package.json +1 -1
@@ -1,201 +1,186 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- // import {expect} from 'chai';
4
- // import {extractTimeValues, getTimeWithPad, integrateTimeIntoText, toLocaleDate} from '../../src/lib/time';
5
- // import {config} from '../../src/config/config';
6
- //
7
- // describe('Time', () => {
8
- // const testDate = new Date(1744388803096);
9
- // const expectedDate = '11.4.2025, 18:26:43';
10
- //
11
- // // FIXME : Test gets error Timeout of 2000ms exceeded. For async tests and hooks, ensure "done()" is called; if returning a Promise, ensure it resolves.
12
- // // it('Should return a correct formatted date', function () {
13
- // // this.timeout(5000); // Timeout auf 5000ms erhöhen
14
- // // const result = toLocaleDate(testDate, {locale:'de-DE', tz:'Europe/Berlin'});
15
- // // expect(result).to.equal(expectedDate);
16
- // // });
17
- //
18
- // // it('Should not throw an exception, if no valid date', () => {
19
- // // const invalidDate = new Date('invalid-date');
20
- // // expect(() => toLocaleDate(invalidDate)).to.not.throw();
21
- // // });
22
- // //
23
- // // it('Integrate a valid time into text', () => {
24
- // // const result = integrateTimeIntoText(`Test at ${config.time} created`, 1744388803096);
25
- // // expect(result).to.equal(`Test at ${expectedDate} created`);
26
- // // });
27
- // //
28
- // // it('Handle a non valid time', () => {
29
- // // const result = integrateTimeIntoText(`Test at ${config.time} created`, 'abc');
30
- // // expect(result).to.equal(`Test at "Invalid Date" created`);
31
- // // });
32
- // //
33
- // // it('Handle a null value for time', () => {
34
- // // [null, undefined].forEach(value => {
35
- // // const result = integrateTimeIntoText(`Test at ${config.time} created`, value);
36
- // // expect(result).to.equal(`Test at "Invalid Date" created`);
37
- // // });
38
- // // });
39
- // });
40
- //
41
- // describe('extractTimeValues', () => {
42
- // it('should correctly extract time values from a valid timestamp', () => {
43
- // const timestamp = 1744388803096; // Corresponds to 11.4.2025, 18:26:43.096
44
- // const result = extractTimeValues(timestamp);
45
- // expect(result).to.deep.equal({
46
- // milliseconds: 96,
47
- // seconds: 43,
48
- // minutes: 26,
49
- // hours: 18,
50
- // day: 11,
51
- // month: 4,
52
- // year: 2025,
53
- // });
54
- // });
55
- //
56
- // it('should handle a timestamp of 0 (Unix epoch)', () => {
57
- // const timestamp = 0; // 1.1.1970, 00:00:00.000
58
- // const result = extractTimeValues(timestamp);
59
- // expect(result).to.deep.equal({
60
- // milliseconds: 0,
61
- // seconds: 0,
62
- // minutes: 0,
63
- // hours: 1,
64
- // day: 1,
65
- // month: 1,
66
- // year: 1970,
67
- // });
68
- // });
69
- //
70
- // it('should handle a negative timestamp (before Unix epoch)', () => {
71
- // const timestamp = -3600000;
72
- // const result = extractTimeValues(timestamp);
73
- // expect(result).to.deep.equal({
74
- // milliseconds: NaN,
75
- // seconds: NaN,
76
- // minutes: NaN,
77
- // hours: NaN,
78
- // day: NaN,
79
- // month: NaN,
80
- // year: NaN,
81
- // });
82
- // });
83
- //
84
- // it('should return NaN for all values if the timestamp is invalid', () => {
85
- // const result = extractTimeValues(NaN);
86
- // expect(result).to.deep.equal({
87
- // milliseconds: NaN,
88
- // seconds: NaN,
89
- // minutes: NaN,
90
- // hours: NaN,
91
- // day: NaN,
92
- // month: NaN,
93
- // year: NaN,
94
- // });
95
- // });
96
- //
97
- // it('should handle a very large timestamp', () => {
98
- // const timestamp = 8640000000000;
99
- // const result = extractTimeValues(timestamp);
100
- // expect(result).to.deep.equal({
101
- // milliseconds: 0,
102
- // seconds: 0,
103
- // minutes: 0,
104
- // hours: 2,
105
- // day: 17,
106
- // month: 10,
107
- // year: 2243,
108
- // });
109
- // });
110
- // });
111
- //
112
- // describe('getTimeWithPad', () => {
113
- // it('should correctly pad all time values', () => {
114
- // const input = {
115
- // milliseconds: 5,
116
- // seconds: 9,
117
- // minutes: 3,
118
- // hours: 7,
119
- // day: 1,
120
- // month: 2,
121
- // year: 2023,
122
- // };
123
- // const result = getTimeWithPad(input);
124
- // expect(result).to.deep.equal({
125
- // ms: '005',
126
- // s: '09',
127
- // m: '03',
128
- // h: '07',
129
- // d: '01',
130
- // mo: '02',
131
- // y: '2023',
132
- // });
133
- // });
134
- //
135
- // it('should handle already padded values', () => {
136
- // const input = {
137
- // milliseconds: 123,
138
- // seconds: 45,
139
- // minutes: 30,
140
- // hours: 12,
141
- // day: 15,
142
- // month: 10,
143
- // year: 2025,
144
- // };
145
- // const result = getTimeWithPad(input);
146
- // expect(result).to.deep.equal({
147
- // ms: '123',
148
- // s: '45',
149
- // m: '30',
150
- // h: '12',
151
- // d: '15',
152
- // mo: '10',
153
- // y: '2025',
154
- // });
155
- // });
156
- //
157
- // it('should handle edge cases with zero values', () => {
158
- // const input = {
159
- // milliseconds: 0,
160
- // seconds: 0,
161
- // minutes: 0,
162
- // hours: 0,
163
- // day: 0,
164
- // month: 0,
165
- // year: 0,
166
- // };
167
- // const result = getTimeWithPad(input);
168
- // expect(result).to.deep.equal({
169
- // ms: '000',
170
- // s: '00',
171
- // m: '00',
172
- // h: '00',
173
- // d: '00',
174
- // mo: '00',
175
- // y: '0',
176
- // });
177
- // });
178
- //
179
- // it('should handle large year values', () => {
180
- // const input = {
181
- // milliseconds: 1,
182
- // seconds: 1,
183
- // minutes: 1,
184
- // hours: 1,
185
- // day: 1,
186
- // month: 1,
187
- // year: 9999,
188
- // };
189
- // const result = getTimeWithPad(input);
190
- // expect(result).to.deep.equal({
191
- // ms: '001',
192
- // s: '01',
193
- // m: '01',
194
- // h: '01',
195
- // d: '01',
196
- // mo: '01',
197
- // y: '9999',
198
- // });
199
- // });
200
- // });
3
+ const chai_1 = require("chai");
4
+ const time_1 = require("../../src/lib/time");
5
+ const config_1 = require("../../src/config/config");
6
+ describe('Time', () => {
7
+ const testDate = new Date(1744388803096);
8
+ const expectedDate = '11.4.2025, 18:26:43';
9
+ // FIXME : Test gets error Timeout of 2000ms exceeded. For async tests and hooks, ensure "done()" is called; if returning a Promise, ensure it resolves.
10
+ it('Should return a correct formatted date', function () {
11
+ this.timeout(10000);
12
+ const result = (0, time_1.toLocaleDate)(testDate, { locale: 'de-DE', tz: 'Europe/Berlin' });
13
+ (0, chai_1.expect)(result).to.equal(expectedDate);
14
+ });
15
+ it('Should not throw an exception, if no valid date', () => {
16
+ const invalidDate = new Date('invalid-date');
17
+ (0, chai_1.expect)(() => (0, time_1.toLocaleDate)(invalidDate)).to.not.throw();
18
+ });
19
+ it('Integrate a valid time into text', () => {
20
+ const result = (0, time_1.integrateTimeIntoText)(`Test at ${config_1.config.time} created`, 1744388803096);
21
+ (0, chai_1.expect)(result).to.equal(`Test at ${expectedDate} created`);
22
+ });
23
+ it('Handle a non valid time', () => {
24
+ const result = (0, time_1.integrateTimeIntoText)(`Test at ${config_1.config.time} created`, 'abc');
25
+ (0, chai_1.expect)(result).to.equal(`Test at "Invalid Date" created`);
26
+ });
27
+ it('Handle a null value for time', () => {
28
+ [null, undefined].forEach(value => {
29
+ const result = (0, time_1.integrateTimeIntoText)(`Test at ${config_1.config.time} created`, value);
30
+ (0, chai_1.expect)(result).to.equal(`Test at "Invalid Date" created`);
31
+ });
32
+ });
33
+ });
34
+ describe('extractTimeValues', () => {
35
+ it('should correctly extract time values from a valid timestamp', () => {
36
+ const timestamp = 1744388803096; // Corresponds to 11.4.2025, 18:26:43.096
37
+ const result = (0, time_1.extractTimeValues)(timestamp);
38
+ (0, chai_1.expect)(result).to.deep.equal({
39
+ milliseconds: 96,
40
+ seconds: 43,
41
+ minutes: 26,
42
+ hours: 18,
43
+ day: 11,
44
+ month: 4,
45
+ year: 2025,
46
+ });
47
+ });
48
+ it('should handle a timestamp of 0 (Unix epoch)', () => {
49
+ const timestamp = 0; // 1.1.1970, 00:00:00.000
50
+ const result = (0, time_1.extractTimeValues)(timestamp);
51
+ (0, chai_1.expect)(result).to.deep.equal({
52
+ milliseconds: 0,
53
+ seconds: 0,
54
+ minutes: 0,
55
+ hours: 1,
56
+ day: 1,
57
+ month: 1,
58
+ year: 1970,
59
+ });
60
+ });
61
+ it('should handle a negative timestamp (before Unix epoch)', () => {
62
+ const timestamp = -3600000;
63
+ const result = (0, time_1.extractTimeValues)(timestamp);
64
+ (0, chai_1.expect)(result).to.deep.equal({
65
+ milliseconds: NaN,
66
+ seconds: NaN,
67
+ minutes: NaN,
68
+ hours: NaN,
69
+ day: NaN,
70
+ month: NaN,
71
+ year: NaN,
72
+ });
73
+ });
74
+ it('should return NaN for all values if the timestamp is invalid', () => {
75
+ const result = (0, time_1.extractTimeValues)(NaN);
76
+ (0, chai_1.expect)(result).to.deep.equal({
77
+ milliseconds: NaN,
78
+ seconds: NaN,
79
+ minutes: NaN,
80
+ hours: NaN,
81
+ day: NaN,
82
+ month: NaN,
83
+ year: NaN,
84
+ });
85
+ });
86
+ it('should handle a very large timestamp', () => {
87
+ const timestamp = 8640000000000;
88
+ const result = (0, time_1.extractTimeValues)(timestamp);
89
+ (0, chai_1.expect)(result).to.deep.equal({
90
+ milliseconds: 0,
91
+ seconds: 0,
92
+ minutes: 0,
93
+ hours: 2,
94
+ day: 17,
95
+ month: 10,
96
+ year: 2243,
97
+ });
98
+ });
99
+ });
100
+ describe('getTimeWithPad', () => {
101
+ it('should correctly pad all time values', () => {
102
+ const input = {
103
+ milliseconds: 5,
104
+ seconds: 9,
105
+ minutes: 3,
106
+ hours: 7,
107
+ day: 1,
108
+ month: 2,
109
+ year: 2023,
110
+ };
111
+ const result = (0, time_1.getTimeWithPad)(input);
112
+ (0, chai_1.expect)(result).to.deep.equal({
113
+ ms: '005',
114
+ s: '09',
115
+ m: '03',
116
+ h: '07',
117
+ d: '01',
118
+ mo: '02',
119
+ y: '2023',
120
+ });
121
+ });
122
+ it('should handle already padded values', () => {
123
+ const input = {
124
+ milliseconds: 123,
125
+ seconds: 45,
126
+ minutes: 30,
127
+ hours: 12,
128
+ day: 15,
129
+ month: 10,
130
+ year: 2025,
131
+ };
132
+ const result = (0, time_1.getTimeWithPad)(input);
133
+ (0, chai_1.expect)(result).to.deep.equal({
134
+ ms: '123',
135
+ s: '45',
136
+ m: '30',
137
+ h: '12',
138
+ d: '15',
139
+ mo: '10',
140
+ y: '2025',
141
+ });
142
+ });
143
+ it('should handle edge cases with zero values', () => {
144
+ const input = {
145
+ milliseconds: 0,
146
+ seconds: 0,
147
+ minutes: 0,
148
+ hours: 0,
149
+ day: 0,
150
+ month: 0,
151
+ year: 0,
152
+ };
153
+ const result = (0, time_1.getTimeWithPad)(input);
154
+ (0, chai_1.expect)(result).to.deep.equal({
155
+ ms: '000',
156
+ s: '00',
157
+ m: '00',
158
+ h: '00',
159
+ d: '00',
160
+ mo: '00',
161
+ y: '0',
162
+ });
163
+ });
164
+ it('should handle large year values', () => {
165
+ const input = {
166
+ milliseconds: 1,
167
+ seconds: 1,
168
+ minutes: 1,
169
+ hours: 1,
170
+ day: 1,
171
+ month: 1,
172
+ year: 9999,
173
+ };
174
+ const result = (0, time_1.getTimeWithPad)(input);
175
+ (0, chai_1.expect)(result).to.deep.equal({
176
+ ms: '001',
177
+ s: '01',
178
+ m: '01',
179
+ h: '01',
180
+ d: '01',
181
+ mo: '01',
182
+ y: '9999',
183
+ });
184
+ });
185
+ });
201
186
  //# sourceMappingURL=time.test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"time.test.js","sourceRoot":"","sources":["../../../test/test/time.test.ts"],"names":[],"mappings":";;AAAA,+BAA+B;AAC/B,6GAA6G;AAC7G,kDAAkD;AAClD,EAAE;AACF,2BAA2B;AAC3B,gDAAgD;AAChD,kDAAkD;AAClD,EAAE;AACF,+JAA+J;AAC/J,oEAAoE;AACpE,+DAA+D;AAC/D,0FAA0F;AAC1F,oDAAoD;AACpD,aAAa;AACb,EAAE;AACF,uEAAuE;AACvE,2DAA2D;AAC3D,qEAAqE;AACrE,aAAa;AACb,SAAS;AACT,wDAAwD;AACxD,oGAAoG;AACpG,yEAAyE;AACzE,aAAa;AACb,SAAS;AACT,+CAA+C;AAC/C,4FAA4F;AAC5F,wEAAwE;AACxE,aAAa;AACb,SAAS;AACT,oDAAoD;AACpD,kDAAkD;AAClD,gGAAgG;AAChG,4EAA4E;AAC5E,iBAAiB;AACjB,aAAa;AACb,MAAM;AACN,EAAE;AACF,wCAAwC;AACxC,gFAAgF;AAChF,qFAAqF;AACrF,uDAAuD;AACvD,yCAAyC;AACzC,gCAAgC;AAChC,2BAA2B;AAC3B,2BAA2B;AAC3B,yBAAyB;AACzB,uBAAuB;AACvB,wBAAwB;AACxB,0BAA0B;AAC1B,cAAc;AACd,UAAU;AACV,EAAE;AACF,gEAAgE;AAChE,yDAAyD;AACzD,uDAAuD;AACvD,yCAAyC;AACzC,+BAA+B;AAC/B,0BAA0B;AAC1B,0BAA0B;AAC1B,wBAAwB;AACxB,sBAAsB;AACtB,wBAAwB;AACxB,0BAA0B;AAC1B,cAAc;AACd,UAAU;AACV,EAAE;AACF,2EAA2E;AAC3E,sCAAsC;AACtC,uDAAuD;AACvD,yCAAyC;AACzC,iCAAiC;AACjC,4BAA4B;AAC5B,4BAA4B;AAC5B,0BAA0B;AAC1B,wBAAwB;AACxB,0BAA0B;AAC1B,yBAAyB;AACzB,cAAc;AACd,UAAU;AACV,EAAE;AACF,iFAAiF;AACjF,kDAAkD;AAClD,yCAAyC;AACzC,iCAAiC;AACjC,4BAA4B;AAC5B,4BAA4B;AAC5B,0BAA0B;AAC1B,wBAAwB;AACxB,0BAA0B;AAC1B,yBAAyB;AACzB,cAAc;AACd,UAAU;AACV,EAAE;AACF,yDAAyD;AACzD,2CAA2C;AAC3C,uDAAuD;AACvD,yCAAyC;AACzC,+BAA+B;AAC/B,0BAA0B;AAC1B,0BAA0B;AAC1B,wBAAwB;AACxB,uBAAuB;AACvB,yBAAyB;AACzB,0BAA0B;AAC1B,cAAc;AACd,UAAU;AACV,MAAM;AACN,EAAE;AACF,qCAAqC;AACrC,yDAAyD;AACzD,0BAA0B;AAC1B,+BAA+B;AAC/B,0BAA0B;AAC1B,0BAA0B;AAC1B,wBAAwB;AACxB,sBAAsB;AACtB,wBAAwB;AACxB,0BAA0B;AAC1B,aAAa;AACb,gDAAgD;AAChD,yCAAyC;AACzC,yBAAyB;AACzB,uBAAuB;AACvB,uBAAuB;AACvB,uBAAuB;AACvB,uBAAuB;AACvB,wBAAwB;AACxB,yBAAyB;AACzB,cAAc;AACd,UAAU;AACV,EAAE;AACF,wDAAwD;AACxD,0BAA0B;AAC1B,iCAAiC;AACjC,2BAA2B;AAC3B,2BAA2B;AAC3B,yBAAyB;AACzB,uBAAuB;AACvB,yBAAyB;AACzB,0BAA0B;AAC1B,aAAa;AACb,gDAAgD;AAChD,yCAAyC;AACzC,yBAAyB;AACzB,uBAAuB;AACvB,uBAAuB;AACvB,uBAAuB;AACvB,uBAAuB;AACvB,wBAAwB;AACxB,yBAAyB;AACzB,cAAc;AACd,UAAU;AACV,EAAE;AACF,8DAA8D;AAC9D,0BAA0B;AAC1B,+BAA+B;AAC/B,0BAA0B;AAC1B,0BAA0B;AAC1B,wBAAwB;AACxB,sBAAsB;AACtB,wBAAwB;AACxB,uBAAuB;AACvB,aAAa;AACb,gDAAgD;AAChD,yCAAyC;AACzC,yBAAyB;AACzB,uBAAuB;AACvB,uBAAuB;AACvB,uBAAuB;AACvB,uBAAuB;AACvB,wBAAwB;AACxB,sBAAsB;AACtB,cAAc;AACd,UAAU;AACV,EAAE;AACF,oDAAoD;AACpD,0BAA0B;AAC1B,+BAA+B;AAC/B,0BAA0B;AAC1B,0BAA0B;AAC1B,wBAAwB;AACxB,sBAAsB;AACtB,wBAAwB;AACxB,0BAA0B;AAC1B,aAAa;AACb,gDAAgD;AAChD,yCAAyC;AACzC,yBAAyB;AACzB,uBAAuB;AACvB,uBAAuB;AACvB,uBAAuB;AACvB,uBAAuB;AACvB,wBAAwB;AACxB,yBAAyB;AACzB,cAAc;AACd,UAAU;AACV,MAAM"}
1
+ {"version":3,"file":"time.test.js","sourceRoot":"","sources":["../../../test/test/time.test.ts"],"names":[],"mappings":"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"}
package/io-package.json CHANGED
@@ -1,8 +1,21 @@
1
1
  {
2
2
  "common": {
3
3
  "name": "telegram-menu",
4
- "version": "2.3.0",
4
+ "version": "2.3.1",
5
5
  "news": {
6
+ "2.3.1": {
7
+ "en": "FIX: #309 SetState only sets false\nFIX: #311 Delete does not navigate",
8
+ "de": "FIX: #309 SetState setzt nur falsch\nFIX: #311 Löschen navigiert nicht",
9
+ "ru": "#309 SetState устанавливает только ложные\nFIX: #311 Удаление не перемещается",
10
+ "pt": "FIX: #309 SetState apenas define falso\nFIX: #311 Excluir não navega",
11
+ "nl": "FIX: #309 SetState stelt alleen valse\nFIX: #311 Verwijderen niet navigeren",
12
+ "fr": "FIX: #309 SetState ne définit que false\nFIXE: #311 Supprimer ne navigue pas",
13
+ "it": "FIX: #309 SetState imposta solo falsi\nFIX: #311 Elimina non naviga",
14
+ "es": "FIX: #309 SetState sólo establece falsos\nFIX: #311 Eliminar no navega",
15
+ "pl": "FIX: # 309 SetState ustawia tylko false\nFIX: # 311 Usuń nie nawiguje",
16
+ "uk": "FIX: #309 SetState тільки встановлює помилкові\nFIX: #311 Видалити не навігувати",
17
+ "zh-cn": "FIX: #309 SetState 只设置虚假\nFIX: # 311 删除不导航"
18
+ },
6
19
  "2.3.0": {
7
20
  "en": "FIX: #303 GetState output in incorrect order\nFIX: #296 Frontend fixes\nFIX: #295 Delete button not working\nFIX: #291 Menu button not working\nFEAT: Nodejs >= 20.0.0\nFEAT: Add sentry\nFEAT: Add mocha tests",
8
21
  "de": "FIX: #303 GetState Ausgabe in falscher Reihenfolge\nFIX: #296 Frontend Fixes\nFIX: #295 Löschen Taste nicht funktioniert\nFIX: #291 Menü-Taste nicht funktionieren\nFEAT: Nodejs >= 20.0.0\nFEAT: Verschicken hinzufügen\nFEAT: Mocha-Tests hinzufügen",
@@ -80,19 +93,6 @@
80
93
  "pl": "FEAT: # 237\nFIX: Nie można uzyskać wartości false w zwrotnym tekście\nFIX: Usuń wiersz w działaniach\nFIX: HttpRequest\nFEAT: Stylizacja nawigacyjna i menu do wyboru",
81
94
  "uk": "FEAT: #237 Нейгат від nav-button-click до дії\nFIX: Неможливо отримати значення помилково в поверненні тексту\nFIX: Видалити ряд в дії\nFIX: HttpRequest\nFEAT: Налаштування навігації та вибіркові меню",
82
95
  "zh-cn": "FEAT: # 237 导航通过导航按钮点击动作\nFIX: 无法在返回文本中获取错误值\nFIX: 删除动作中的行\nFIX: Http 请求\nFEAT:导航样式和可选菜单"
83
- },
84
- "2.1.10": {
85
- "en": "FIX: Return text for menus was not send",
86
- "de": "FIX: Rückgabetext für Menüs wurde nicht gesendet",
87
- "ru": "FIX: Возвращаемый текст для меню не был отправлен",
88
- "pt": "FIX: O texto de retorno para menus não foi enviado",
89
- "nl": "FIX: Retourtekst voor menu's is niet verstuurd",
90
- "fr": "FIX: Retour de texte pour les menus n'a pas été envoyé",
91
- "it": "FIX: Il testo di ritorno per i menu non è stato inviato",
92
- "es": "FIX: El texto devuelto para los menús no fue enviado",
93
- "pl": "FIX: Tekst zwrotny dla menu nie został wysłany",
94
- "uk": "FIX: Повернути текст для меню не відправлено",
95
- "zh-cn": "FIX: 菜单的返回文本没有发送"
96
96
  }
97
97
  },
98
98
  "titleLang": {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "iobroker.telegram-menu",
3
- "version": "2.3.0",
3
+ "version": "2.3.1",
4
4
  "description": "Easily create Telegram Menus",
5
5
  "author": {
6
6
  "name": "MiRo1310",