tering-serieuze-types 3.9.0 → 4.0.0
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/.oxfmtrc.json +12 -0
- package/.oxlintrc.json +189 -126
- package/dist/index.js +5 -3
- package/index.d.ts +5 -5
- package/interfaces/index.ts +4 -4
- package/interfaces/mopidy.ts +35 -15
- package/interfaces/token.ts +2 -2
- package/package.json +4 -4
- package/src/application.ts +1 -1
- package/src/button.ts +1 -0
- package/src/emulator.ts +1 -1
- package/src/index.ts +0 -2
- package/src/jingle.ts +1 -1
- package/src/session.ts +3 -3
- package/src/user.ts +3 -2
package/.oxfmtrc.json
CHANGED
|
@@ -2,5 +2,17 @@
|
|
|
2
2
|
"trailingComma": "all",
|
|
3
3
|
"tabWidth": 4,
|
|
4
4
|
"printWidth": 120,
|
|
5
|
+
"sortImports": {
|
|
6
|
+
"groups": [
|
|
7
|
+
"type-import",
|
|
8
|
+
["value-builtin", "value-external"],
|
|
9
|
+
"type-internal",
|
|
10
|
+
"value-internal",
|
|
11
|
+
["type-parent", "type-sibling", "type-index"],
|
|
12
|
+
["value-parent", "value-sibling", "value-index"],
|
|
13
|
+
"unknown"
|
|
14
|
+
],
|
|
15
|
+
"newlinesBetween": false
|
|
16
|
+
},
|
|
5
17
|
"ignorePatterns": ["dist/", "*.yaml", "*.yml", "package-lock.json", "*.css"]
|
|
6
18
|
}
|
package/.oxlintrc.json
CHANGED
|
@@ -1,147 +1,210 @@
|
|
|
1
1
|
{
|
|
2
2
|
"$schema": "./node_modules/oxlint/configuration_schema.json",
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
3
|
+
"plugins": [
|
|
4
|
+
"typescript",
|
|
5
|
+
"unicorn",
|
|
6
|
+
"oxc",
|
|
7
|
+
"import",
|
|
8
|
+
"vitest",
|
|
9
|
+
"node",
|
|
10
|
+
"promise",
|
|
11
|
+
"jest"
|
|
12
|
+
],
|
|
6
13
|
"categories": {
|
|
7
14
|
"correctness": "error",
|
|
8
|
-
"suspicious": "
|
|
9
|
-
"perf": "
|
|
15
|
+
"suspicious": "error",
|
|
16
|
+
"perf": "error",
|
|
17
|
+
"restriction": "error",
|
|
18
|
+
"style": "error",
|
|
19
|
+
"pedantic": "error",
|
|
20
|
+
"nursery": "error"
|
|
10
21
|
},
|
|
11
|
-
|
|
12
22
|
"options": {
|
|
13
23
|
"typeAware": true
|
|
14
24
|
},
|
|
15
|
-
|
|
16
25
|
"env": {
|
|
17
26
|
"node": true,
|
|
18
27
|
"es2024": true
|
|
19
28
|
},
|
|
20
|
-
|
|
21
29
|
"rules": {
|
|
22
|
-
"oxc/
|
|
23
|
-
"oxc/bad-array-method-on-arguments": "error",
|
|
24
|
-
"oxc/bad-bitwise-operator": "error",
|
|
25
|
-
"oxc/bad-char-at-comparison": "error",
|
|
26
|
-
"oxc/bad-comparison-sequence": "error",
|
|
27
|
-
"oxc/bad-min-max-func": "error",
|
|
28
|
-
"oxc/bad-object-literal-comparison": "error",
|
|
29
|
-
"oxc/bad-replace-all-arg": "error",
|
|
30
|
-
"oxc/branches-sharing-code": "warn",
|
|
31
|
-
"oxc/const-comparisons": "error",
|
|
32
|
-
"oxc/double-comparisons": "error",
|
|
33
|
-
"oxc/erasing-op": "error",
|
|
34
|
-
"oxc/misrefactored-assign-op": "error",
|
|
35
|
-
"oxc/missing-throw": "error",
|
|
36
|
-
"oxc/no-accumulating-spread": "error",
|
|
30
|
+
"oxc/no-async-await": "off",
|
|
37
31
|
"oxc/no-barrel-file": "off",
|
|
38
|
-
"oxc/no-
|
|
39
|
-
"
|
|
40
|
-
"
|
|
41
|
-
"oxc/only-used-in-recursion": "warn",
|
|
42
|
-
"oxc/uninvoked-array-callback": "error",
|
|
43
|
-
|
|
32
|
+
"oxc/no-optional-chaining": "off",
|
|
33
|
+
"import/no-cycle": "off",
|
|
34
|
+
"typescript/await-thenable": "off",
|
|
44
35
|
"typescript/consistent-type-imports": "off",
|
|
36
|
+
"typescript/explicit-member-accessibility": "off",
|
|
45
37
|
"typescript/no-extraneous-class": "off",
|
|
46
|
-
"typescript/no-
|
|
47
|
-
"typescript/no-
|
|
48
|
-
"typescript/no-
|
|
49
|
-
"typescript/
|
|
50
|
-
"typescript/
|
|
51
|
-
"typescript/
|
|
52
|
-
"typescript/
|
|
53
|
-
"typescript/no-unsafe-enum-comparison": "error",
|
|
54
|
-
"typescript/prefer-includes": "error",
|
|
55
|
-
"typescript/prefer-string-starts-ends-with": "error",
|
|
56
|
-
"typescript/prefer-find": "error",
|
|
57
|
-
"typescript/no-base-to-string": "warn",
|
|
58
|
-
"typescript/return-await": "error",
|
|
59
|
-
"typescript/no-confusing-void-expression": "warn",
|
|
60
|
-
"typescript/no-misused-spread": "error",
|
|
61
|
-
"typescript/restrict-plus-operands": "warn",
|
|
62
|
-
"typescript/restrict-template-expressions": "warn",
|
|
63
|
-
"typescript/no-unnecessary-type-assertion": "error",
|
|
64
|
-
"typescript/no-unnecessary-type-arguments": "off",
|
|
65
|
-
"typescript/no-unnecessary-template-expression": "error",
|
|
66
|
-
"typescript/no-non-null-assertion": "error",
|
|
67
|
-
"typescript/no-inferrable-types": "error",
|
|
68
|
-
"typescript/no-namespace": "error",
|
|
69
|
-
"typescript/no-dynamic-delete": "error",
|
|
70
|
-
"typescript/array-type": ["error", { "default": "array" }],
|
|
71
|
-
"typescript/prefer-for-of": "error",
|
|
38
|
+
"typescript/no-unsafe-argument": "off",
|
|
39
|
+
"typescript/no-unsafe-assignment": "off",
|
|
40
|
+
"typescript/no-unsafe-call": "off",
|
|
41
|
+
"typescript/no-unsafe-member-access": "off",
|
|
42
|
+
"typescript/no-unsafe-return": "off",
|
|
43
|
+
"typescript/no-unsafe-type-assertion": "off",
|
|
44
|
+
"typescript/parameter-properties": "off",
|
|
72
45
|
"typescript/prefer-literal-enum-member": "off",
|
|
73
|
-
"typescript/prefer-readonly": "
|
|
74
|
-
"typescript/prefer-function-type": "error",
|
|
75
|
-
"typescript/prefer-promise-reject-errors": "warn",
|
|
76
|
-
"typescript/only-throw-error": "error",
|
|
77
|
-
"typescript/require-await": "error",
|
|
46
|
+
"typescript/prefer-readonly-parameter-types": "off",
|
|
78
47
|
"typescript/strict-boolean-expressions": "off",
|
|
79
|
-
"typescript/
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
"
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
"eslint/
|
|
92
|
-
"eslint/
|
|
93
|
-
"eslint/
|
|
94
|
-
"eslint/
|
|
95
|
-
"eslint/
|
|
96
|
-
"eslint/
|
|
97
|
-
"eslint/
|
|
48
|
+
"typescript/array-type": [
|
|
49
|
+
"error",
|
|
50
|
+
{
|
|
51
|
+
"default": "array"
|
|
52
|
+
}
|
|
53
|
+
],
|
|
54
|
+
"typescript/no-floating-promises": [
|
|
55
|
+
"error",
|
|
56
|
+
{
|
|
57
|
+
"ignoreVoid": true
|
|
58
|
+
}
|
|
59
|
+
],
|
|
60
|
+
"eslint/arrow-body-style": "off",
|
|
61
|
+
"eslint/capitalized-comments": "off",
|
|
62
|
+
"eslint/class-methods-use-this": "off",
|
|
63
|
+
"eslint/func-style": "off",
|
|
64
|
+
"eslint/id-length": "off",
|
|
65
|
+
"eslint/max-classes-per-file": "off",
|
|
66
|
+
"eslint/max-lines-per-function": "off",
|
|
67
|
+
"eslint/max-params": "off",
|
|
68
|
+
"eslint/max-statements": "off",
|
|
69
|
+
"eslint/new-cap": "off",
|
|
70
|
+
"eslint/no-console": "off",
|
|
71
|
+
"eslint/no-magic-numbers": "off",
|
|
72
|
+
"eslint/no-ternary": "off",
|
|
73
|
+
"eslint/no-undefined": "off",
|
|
74
|
+
"eslint/no-void": "off",
|
|
75
|
+
"eslint/require-await": "off",
|
|
76
|
+
"eslint/sort-imports": "off",
|
|
77
|
+
"eslint/sort-keys": "off",
|
|
98
78
|
"eslint/no-warning-comments": "warn",
|
|
99
|
-
"eslint/
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
"import/
|
|
107
|
-
"import/
|
|
108
|
-
"import/no-
|
|
109
|
-
"import/
|
|
110
|
-
"import/no-
|
|
111
|
-
"import/
|
|
112
|
-
"
|
|
113
|
-
|
|
114
|
-
"unicorn/prefer-
|
|
115
|
-
"
|
|
116
|
-
"
|
|
117
|
-
"
|
|
118
|
-
"
|
|
119
|
-
"
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
"
|
|
126
|
-
"
|
|
127
|
-
"
|
|
128
|
-
"
|
|
129
|
-
"
|
|
130
|
-
"
|
|
131
|
-
"
|
|
132
|
-
"
|
|
133
|
-
"
|
|
134
|
-
|
|
135
|
-
"
|
|
136
|
-
"
|
|
137
|
-
"
|
|
138
|
-
"
|
|
139
|
-
"
|
|
140
|
-
"
|
|
141
|
-
|
|
142
|
-
"
|
|
143
|
-
"
|
|
79
|
+
"eslint/complexity": [
|
|
80
|
+
"error",
|
|
81
|
+
{
|
|
82
|
+
"max": 15
|
|
83
|
+
}
|
|
84
|
+
],
|
|
85
|
+
"import/consistent-type-specifier-style": "off",
|
|
86
|
+
"import/group-exports": "off",
|
|
87
|
+
"import/max-dependencies": "off",
|
|
88
|
+
"import/no-named-export": "off",
|
|
89
|
+
"import/no-nodejs-modules": "off",
|
|
90
|
+
"import/no-relative-parent-imports": "off",
|
|
91
|
+
"import/prefer-default-export": "off",
|
|
92
|
+
"node/no-process-env": "off",
|
|
93
|
+
"unicorn/no-null": "off",
|
|
94
|
+
"unicorn/prefer-top-level-await": "off",
|
|
95
|
+
"promise/avoid-new": "off",
|
|
96
|
+
"promise/prefer-await-to-then": "off",
|
|
97
|
+
"jest/consistent-test-it": "off",
|
|
98
|
+
"jest/max-expects": "off",
|
|
99
|
+
"jest/max-nested-describe": [
|
|
100
|
+
"error",
|
|
101
|
+
{
|
|
102
|
+
"max": 5
|
|
103
|
+
}
|
|
104
|
+
],
|
|
105
|
+
"jest/no-alias-methods": "off",
|
|
106
|
+
"jest/no-conditional-in-test": "off",
|
|
107
|
+
"jest/no-confusing-set-timeout": "off",
|
|
108
|
+
"jest/no-deprecated-functions": "off",
|
|
109
|
+
"jest/no-done-callback": "off",
|
|
110
|
+
"jest/no-duplicate-hooks": "off",
|
|
111
|
+
"jest/no-hooks": "off",
|
|
112
|
+
"jest/no-identical-title": "off",
|
|
113
|
+
"jest/no-interpolation-in-snapshots": "off",
|
|
114
|
+
"jest/no-jasmine-globals": "off",
|
|
115
|
+
"jest/no-large-snapshots": "off",
|
|
116
|
+
"jest/no-mocks-import": "off",
|
|
117
|
+
"jest/no-restricted-jest-methods": "off",
|
|
118
|
+
"jest/no-restricted-matchers": "off",
|
|
119
|
+
"jest/no-test-prefixes": "off",
|
|
120
|
+
"jest/no-test-return-statement": "off",
|
|
121
|
+
"jest/no-unneeded-async-expect-function": "off",
|
|
122
|
+
"jest/no-untyped-mock-factory": "off",
|
|
123
|
+
"jest/padding-around-after-all-blocks": "off",
|
|
124
|
+
"jest/padding-around-test-blocks": "off",
|
|
125
|
+
"jest/prefer-called-with": "off",
|
|
126
|
+
"jest/prefer-comparison-matcher": "off",
|
|
127
|
+
"jest/prefer-each": "off",
|
|
128
|
+
"jest/prefer-ending-with-an-expect": "off",
|
|
129
|
+
"jest/prefer-equality-matcher": "off",
|
|
130
|
+
"jest/prefer-expect-resolves": "off",
|
|
131
|
+
"jest/prefer-hooks-in-order": "off",
|
|
132
|
+
"jest/prefer-hooks-on-top": "off",
|
|
133
|
+
"jest/prefer-importing-jest-globals": "off",
|
|
134
|
+
"jest/prefer-jest-mocked": "off",
|
|
135
|
+
"jest/prefer-lowercase-title": "off",
|
|
136
|
+
"jest/prefer-mock-promise-shorthand": "off",
|
|
137
|
+
"jest/prefer-mock-return-shorthand": "off",
|
|
138
|
+
"jest/prefer-spy-on": "off",
|
|
139
|
+
"jest/prefer-strict-equal": "off",
|
|
140
|
+
"jest/prefer-to-be": "off",
|
|
141
|
+
"jest/prefer-to-contain": "off",
|
|
142
|
+
"jest/prefer-to-have-been-called": "off",
|
|
143
|
+
"jest/prefer-to-have-been-called-times": "off",
|
|
144
|
+
"jest/prefer-to-have-length": "off",
|
|
145
|
+
"jest/prefer-todo": "off",
|
|
146
|
+
"jest/require-hook": "off",
|
|
147
|
+
"jest/require-top-level-describe": "off",
|
|
148
|
+
"jest/prefer-expect-assertions": "off",
|
|
149
|
+
"vitest/consistent-test-filename": "off",
|
|
150
|
+
"vitest/consistent-vitest-vi": "off",
|
|
151
|
+
"vitest/no-conditional-in-test": "off",
|
|
152
|
+
"vitest/no-import-node-test": "off",
|
|
153
|
+
"vitest/no-importing-vitest-globals": "off",
|
|
154
|
+
"vitest/prefer-called-exactly-once-with": "off",
|
|
155
|
+
"vitest/prefer-called-once": "off",
|
|
156
|
+
"vitest/prefer-called-times": "off",
|
|
157
|
+
"vitest/prefer-describe-function-title": "off",
|
|
158
|
+
"vitest/prefer-import-in-mock": "off",
|
|
159
|
+
"vitest/prefer-importing-vitest-globals": "off",
|
|
160
|
+
"vitest/prefer-strict-boolean-matchers": "off",
|
|
161
|
+
"vitest/prefer-to-be-falsy": "off",
|
|
162
|
+
"vitest/prefer-to-be-truthy": "off",
|
|
163
|
+
"vitest/require-test-timeout": "off",
|
|
164
|
+
"vitest/valid-title": "off",
|
|
165
|
+
"vitest/no-hooks": "off",
|
|
166
|
+
"vitest/prefer-expect-assertions": "off",
|
|
167
|
+
"vitest/max-expects": "off",
|
|
168
|
+
"jest/expect-expect": [
|
|
169
|
+
"error",
|
|
170
|
+
{
|
|
171
|
+
"assertFunctionNames": [
|
|
172
|
+
"expect",
|
|
173
|
+
"vitest.waitUntil",
|
|
174
|
+
"vi.waitUntil"
|
|
175
|
+
]
|
|
176
|
+
}
|
|
177
|
+
],
|
|
178
|
+
"jest/valid-title": [
|
|
179
|
+
"error",
|
|
180
|
+
{
|
|
181
|
+
"ignoreTypeOfDescribeName": true
|
|
182
|
+
}
|
|
183
|
+
],
|
|
184
|
+
"eslint/no-undef": "off"
|
|
144
185
|
},
|
|
145
|
-
|
|
146
|
-
|
|
186
|
+
"overrides": [
|
|
187
|
+
{
|
|
188
|
+
"files": [
|
|
189
|
+
"**/*.spec.ts",
|
|
190
|
+
"test/**/*.ts"
|
|
191
|
+
],
|
|
192
|
+
"rules": {
|
|
193
|
+
"typescript/no-non-null-assertion": "off",
|
|
194
|
+
"eslint/no-empty-function": "off",
|
|
195
|
+
"typescript/no-floating-promises": "off",
|
|
196
|
+
"vitest/require-mock-type-parameters": "off",
|
|
197
|
+
"eslint/no-loop-func": "off",
|
|
198
|
+
"eslint/init-declarations": "off",
|
|
199
|
+
"oxc/no-rest-spread-properties": "off",
|
|
200
|
+
"eslint/max-lines": "off"
|
|
201
|
+
}
|
|
202
|
+
}
|
|
203
|
+
],
|
|
204
|
+
"ignorePatterns": [
|
|
205
|
+
"dist",
|
|
206
|
+
"node_modules",
|
|
207
|
+
"coverage",
|
|
208
|
+
"output"
|
|
209
|
+
]
|
|
147
210
|
}
|
package/dist/index.js
CHANGED
|
@@ -67,8 +67,8 @@ module.exports = __toCommonJS(src_exports);
|
|
|
67
67
|
|
|
68
68
|
// src/application.ts
|
|
69
69
|
var import_swagger = require("@nestjs/swagger");
|
|
70
|
-
var import_class_validator = require("class-validator");
|
|
71
70
|
var import_class_transformer = require("class-transformer");
|
|
71
|
+
var import_class_validator = require("class-validator");
|
|
72
72
|
var CustomApplicationProperties = class {
|
|
73
73
|
};
|
|
74
74
|
var Application = class {
|
|
@@ -389,6 +389,7 @@ __decorateClass([
|
|
|
389
389
|
], ToggleBoolDto.prototype, "field", 2);
|
|
390
390
|
var WsUpdateStoreDto = class {
|
|
391
391
|
mutation;
|
|
392
|
+
// oxlint-disable-next-line typescript/no-explicit-any -- base class; subclasses narrow via override
|
|
392
393
|
payload;
|
|
393
394
|
};
|
|
394
395
|
var WsUpdateStoreSetAccount = class extends WsUpdateStoreDto {
|
|
@@ -399,6 +400,7 @@ var WsUpdateStoreSetAccount = class extends WsUpdateStoreDto {
|
|
|
399
400
|
var WebsocketAction = class {
|
|
400
401
|
serviceName;
|
|
401
402
|
methodName;
|
|
403
|
+
// oxlint-disable-next-line typescript/no-explicit-any -- intentionally polymorphic; per-action shape
|
|
402
404
|
data;
|
|
403
405
|
};
|
|
404
406
|
__decorateClass([
|
|
@@ -442,8 +444,8 @@ __decorateClass([
|
|
|
442
444
|
], Button.prototype, "ButtonHold", 2);
|
|
443
445
|
|
|
444
446
|
// src/emulator.ts
|
|
445
|
-
var import_class_validator5 = require("class-validator");
|
|
446
447
|
var import_swagger7 = require("@nestjs/swagger");
|
|
448
|
+
var import_class_validator5 = require("class-validator");
|
|
447
449
|
var City = /* @__PURE__ */ ((City2) => {
|
|
448
450
|
City2["Waalwijk"] = "Waalwijk";
|
|
449
451
|
City2["Sprang"] = "Sprang-Capelle";
|
|
@@ -459,8 +461,8 @@ __decorateClass([
|
|
|
459
461
|
|
|
460
462
|
// src/jingle.ts
|
|
461
463
|
var import_swagger8 = require("@nestjs/swagger");
|
|
462
|
-
var import_class_validator6 = require("class-validator");
|
|
463
464
|
var import_class_transformer4 = require("class-transformer");
|
|
465
|
+
var import_class_validator6 = require("class-validator");
|
|
464
466
|
var Jingle = class {
|
|
465
467
|
folder;
|
|
466
468
|
file;
|
package/index.d.ts
CHANGED
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
import { City } from './src';
|
|
2
2
|
|
|
3
|
-
export * from './interfaces';
|
|
3
|
+
export type * from './interfaces';
|
|
4
4
|
export * from './src';
|
|
5
5
|
|
|
6
6
|
export type ClickType = 'ButtonSingleClick' | 'ButtonDoubleClick' | 'ButtonHold';
|
|
7
7
|
|
|
8
|
-
export
|
|
8
|
+
export interface FlicButtonPayload {
|
|
9
9
|
bdAddr: string;
|
|
10
|
-
}
|
|
10
|
+
}
|
|
11
11
|
|
|
12
12
|
export type FlicButtonClickPayload = FlicButtonPayload & {
|
|
13
13
|
clickType: ClickType;
|
|
@@ -17,9 +17,9 @@ export type FlicButtonBatteryPayload = FlicButtonPayload & {
|
|
|
17
17
|
batteryStatus: number;
|
|
18
18
|
};
|
|
19
19
|
|
|
20
|
-
export
|
|
20
|
+
export interface BrandweerPayload {
|
|
21
21
|
city: City;
|
|
22
22
|
title: string;
|
|
23
23
|
description: string;
|
|
24
24
|
pubDate: Date;
|
|
25
|
-
}
|
|
25
|
+
}
|
package/interfaces/index.ts
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import type { ClickType } from "../index";
|
|
2
2
|
|
|
3
|
-
export * from "./mopidy";
|
|
4
|
-
export * from "./token";
|
|
5
|
-
export * from "./webamp";
|
|
3
|
+
export type * from "./mopidy";
|
|
4
|
+
export type * from "./token";
|
|
5
|
+
export type * from "./webamp";
|
|
6
6
|
|
|
7
7
|
export interface RemoveButtonDto {
|
|
8
8
|
bdAddr: string;
|
package/interfaces/mopidy.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type Mopidy
|
|
1
|
+
import type Mopidy from "mopidy";
|
|
2
2
|
|
|
3
3
|
type Artist = Omit<Mopidy.models.Artist, "musicbrainz_id">;
|
|
4
4
|
type Album = Omit<Mopidy.models.Album, "artists" | "num_discs" | "musicbrainz_id"> & {
|
|
@@ -23,12 +23,14 @@ type TlTrack = Omit<Mopidy.models.TlTrack, "track"> & { track: Track };
|
|
|
23
23
|
type Image = Mopidy.models.Image;
|
|
24
24
|
type Playlist = Omit<Mopidy.models.Playlist, "tracks" | "last_modified" | "length">;
|
|
25
25
|
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
26
|
+
interface HasImage {
|
|
27
|
+
image: Image | undefined;
|
|
28
|
+
}
|
|
29
|
+
type TlTrackWithImage = TlTrack & HasImage;
|
|
30
|
+
type AlbumWithImage = Album & HasImage;
|
|
31
|
+
type ArtistWithImage = Artist & HasImage;
|
|
32
|
+
type TrackWithImage = Track & HasImage;
|
|
33
|
+
type PlaylistWithImage = Playlist & HasImage;
|
|
32
34
|
|
|
33
35
|
type SearchResult = Omit<Mopidy.models.SearchResult, "uri" | "tracks" | "albums" | "artists"> & {
|
|
34
36
|
tracks: TrackWithImage[];
|
|
@@ -37,12 +39,10 @@ type SearchResult = Omit<Mopidy.models.SearchResult, "uri" | "tracks" | "albums"
|
|
|
37
39
|
playlists: PlaylistWithImage[];
|
|
38
40
|
};
|
|
39
41
|
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
export type PlaybackState = "playing" | "paused" | "stopped";
|
|
43
|
-
export type MopidyConnectionState = "connected" | "reconnecting" | "offline";
|
|
42
|
+
type PlaybackState = "playing" | "paused" | "stopped";
|
|
43
|
+
type MopidyConnectionState = "connected" | "reconnecting" | "offline";
|
|
44
44
|
|
|
45
|
-
|
|
45
|
+
interface MopidyData {
|
|
46
46
|
tracklist: TlTrack[];
|
|
47
47
|
volume: number;
|
|
48
48
|
playRandom: boolean;
|
|
@@ -55,12 +55,32 @@ export interface MopidyData {
|
|
|
55
55
|
connectionState: MopidyConnectionState;
|
|
56
56
|
}
|
|
57
57
|
|
|
58
|
-
|
|
58
|
+
interface AlarmschijfResult {
|
|
59
59
|
playlist: Track[];
|
|
60
60
|
alarmschijf?: TrackWithImage;
|
|
61
|
-
}
|
|
61
|
+
}
|
|
62
62
|
|
|
63
|
-
|
|
63
|
+
interface ReleaseRadarData {
|
|
64
64
|
tracks: TrackWithImage[];
|
|
65
65
|
albums: AlbumWithImage[];
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
export type {
|
|
69
|
+
Album,
|
|
70
|
+
AlarmschijfResult,
|
|
71
|
+
AlbumWithImage,
|
|
72
|
+
Artist,
|
|
73
|
+
ArtistWithImage,
|
|
74
|
+
HasImage,
|
|
75
|
+
Image,
|
|
76
|
+
MopidyConnectionState,
|
|
77
|
+
MopidyData,
|
|
78
|
+
PlaybackState,
|
|
79
|
+
PlaylistWithImage,
|
|
80
|
+
ReleaseRadarData,
|
|
81
|
+
SearchResult,
|
|
82
|
+
TlTrack,
|
|
83
|
+
TlTrackWithImage,
|
|
84
|
+
Track,
|
|
85
|
+
TrackWithImage,
|
|
66
86
|
};
|
package/interfaces/token.ts
CHANGED
|
@@ -17,6 +17,6 @@ export interface ApiTokenContent extends TokenContent {
|
|
|
17
17
|
id: string;
|
|
18
18
|
}
|
|
19
19
|
|
|
20
|
-
export
|
|
20
|
+
export type NewFrontendTokenContent = Omit<FrontendTokenContent, "iat" | "exp">;
|
|
21
21
|
|
|
22
|
-
export
|
|
22
|
+
export type NewApiTokenContent = Omit<ApiTokenContent, "iat" | "exp">;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "tering-serieuze-types",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "4.0.0",
|
|
4
4
|
"description": "Tering serieuze types",
|
|
5
5
|
"author": "Frank",
|
|
6
6
|
"repository": {
|
|
@@ -21,9 +21,9 @@
|
|
|
21
21
|
"types": "index.d.ts",
|
|
22
22
|
"devDependencies": {
|
|
23
23
|
"esbuild": "^0.23.1",
|
|
24
|
-
"oxfmt": "^0.
|
|
25
|
-
"oxlint": "^1.
|
|
26
|
-
"oxlint-tsgolint": "^0.
|
|
24
|
+
"oxfmt": "^0.47.0",
|
|
25
|
+
"oxlint": "^1.62.0",
|
|
26
|
+
"oxlint-tsgolint": "^0.22.1"
|
|
27
27
|
},
|
|
28
28
|
"dependencies": {
|
|
29
29
|
"@nestjs/swagger": "^11.0.2",
|
package/src/application.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { ApiProperty, OmitType } from "@nestjs/swagger";
|
|
2
|
-
import { IsBoolean, IsNotEmpty, IsNumber, IsOptional, IsString, ValidateNested } from "class-validator";
|
|
3
2
|
import { Type } from "class-transformer";
|
|
3
|
+
import { IsBoolean, IsNotEmpty, IsNumber, IsOptional, IsString, ValidateNested } from "class-validator";
|
|
4
4
|
|
|
5
5
|
export class CustomApplicationProperties {
|
|
6
6
|
[key: string]: string | number | boolean | string[] | number[] | boolean[] | (number | string)[];
|
package/src/button.ts
CHANGED
package/src/emulator.ts
CHANGED
package/src/index.ts
CHANGED
package/src/jingle.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { ApiProperty, PickType } from "@nestjs/swagger";
|
|
2
|
-
import { IsNotEmpty, IsString, ValidateNested } from "class-validator";
|
|
3
2
|
import { Type } from "class-transformer";
|
|
3
|
+
import { IsNotEmpty, IsString, ValidateNested } from "class-validator";
|
|
4
4
|
|
|
5
5
|
export class Jingle {
|
|
6
6
|
@ApiProperty({ type: String, example: "internet-gekkies" })
|
package/src/session.ts
CHANGED
package/src/user.ts
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { ApiProperty, PickType } from "@nestjs/swagger";
|
|
2
2
|
import { Type } from "class-transformer";
|
|
3
3
|
import { IsEmail, IsNumberString, ValidateNested } from "class-validator";
|
|
4
|
-
import {
|
|
4
|
+
import type { DbAuthenticator } from "./authenticator";
|
|
5
5
|
import { WindowState } from "./application";
|
|
6
|
-
import {
|
|
6
|
+
import { Button } from "./button";
|
|
7
7
|
import { ApiToken, Session } from "./session";
|
|
8
8
|
|
|
9
9
|
export class User {
|
|
@@ -96,6 +96,7 @@ export class ToggleBoolDto {
|
|
|
96
96
|
export class WsUpdateStoreDto {
|
|
97
97
|
mutation: string;
|
|
98
98
|
|
|
99
|
+
// oxlint-disable-next-line typescript/no-explicit-any -- base class; subclasses narrow via override
|
|
99
100
|
payload: any;
|
|
100
101
|
}
|
|
101
102
|
|