@nuclearplayer/plugin-sdk 0.0.11 → 0.0.14
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/dist/index.d.ts +409 -8
- package/package.json +5 -3
- package/dist/api/index.d.ts +0 -15
- package/dist/api/index.d.ts.map +0 -1
- package/dist/api/providers.d.ts +0 -11
- package/dist/api/providers.d.ts.map +0 -1
- package/dist/api/settings.d.ts +0 -10
- package/dist/api/settings.d.ts.map +0 -1
- package/dist/index.d.ts.map +0 -1
- package/dist/react/useSetting.d.ts +0 -3
- package/dist/react/useSetting.d.ts.map +0 -1
- package/dist/test/setup.d.ts +0 -1
- package/dist/test/setup.d.ts.map +0 -1
- package/dist/test/utils/inMemorySettingsHost.d.ts +0 -16
- package/dist/test/utils/inMemorySettingsHost.d.ts.map +0 -1
- package/dist/types/providers.d.ts +0 -9
- package/dist/types/providers.d.ts.map +0 -1
- package/dist/types/search.d.ts +0 -40
- package/dist/types/search.d.ts.map +0 -1
- package/dist/types/settings.d.ts +0 -113
- package/dist/types/settings.d.ts.map +0 -1
- package/dist/types.d.ts +0 -41
- package/dist/types.d.ts.map +0 -1
package/dist/index.d.ts
CHANGED
|
@@ -1,8 +1,409 @@
|
|
|
1
|
-
export
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
1
|
+
export declare type Album = {
|
|
2
|
+
title: string;
|
|
3
|
+
artists: ArtistCredit[];
|
|
4
|
+
tracks?: TrackRef[];
|
|
5
|
+
releaseDate?: {
|
|
6
|
+
precision: 'year' | 'month' | 'day';
|
|
7
|
+
dateIso: string;
|
|
8
|
+
};
|
|
9
|
+
genres?: string[];
|
|
10
|
+
artwork?: ArtworkSet;
|
|
11
|
+
source: ProviderRef;
|
|
12
|
+
};
|
|
13
|
+
|
|
14
|
+
export declare type AlbumRef = {
|
|
15
|
+
title: string;
|
|
16
|
+
artists?: ArtistRef[];
|
|
17
|
+
artwork?: ArtworkSet;
|
|
18
|
+
source: ProviderRef;
|
|
19
|
+
};
|
|
20
|
+
|
|
21
|
+
export declare type Artist = {
|
|
22
|
+
name: string;
|
|
23
|
+
disambiguation?: string;
|
|
24
|
+
bio?: string;
|
|
25
|
+
onTour?: boolean;
|
|
26
|
+
artwork?: ArtworkSet;
|
|
27
|
+
tags?: string[];
|
|
28
|
+
source: ProviderRef;
|
|
29
|
+
};
|
|
30
|
+
|
|
31
|
+
export declare type ArtistCredit = {
|
|
32
|
+
name: string;
|
|
33
|
+
roles: string[];
|
|
34
|
+
source?: ProviderRef;
|
|
35
|
+
};
|
|
36
|
+
|
|
37
|
+
export declare type ArtistMetadataCapability = 'artistDetails' | 'artistAlbums' | 'artistTopTracks' | 'artistRelatedArtists';
|
|
38
|
+
|
|
39
|
+
export declare type ArtistRef = {
|
|
40
|
+
name: string;
|
|
41
|
+
disambiguation?: string;
|
|
42
|
+
artwork?: ArtworkSet;
|
|
43
|
+
source: ProviderRef;
|
|
44
|
+
};
|
|
45
|
+
|
|
46
|
+
export declare type Artwork = {
|
|
47
|
+
url: string;
|
|
48
|
+
width?: number;
|
|
49
|
+
height?: number;
|
|
50
|
+
purpose?: ArtworkPurpose;
|
|
51
|
+
source?: ProviderRef;
|
|
52
|
+
};
|
|
53
|
+
|
|
54
|
+
export declare type ArtworkPurpose = 'avatar' | 'cover' | 'background' | 'thumbnail';
|
|
55
|
+
|
|
56
|
+
export declare type ArtworkSet = {
|
|
57
|
+
items: Artwork[];
|
|
58
|
+
};
|
|
59
|
+
|
|
60
|
+
export declare type BooleanSettingDefinition = {
|
|
61
|
+
id: string;
|
|
62
|
+
title: string;
|
|
63
|
+
description?: string;
|
|
64
|
+
category: SettingCategory;
|
|
65
|
+
kind: 'boolean';
|
|
66
|
+
default?: boolean;
|
|
67
|
+
hidden?: boolean;
|
|
68
|
+
source?: SettingSource;
|
|
69
|
+
widget?: BooleanWidget;
|
|
70
|
+
};
|
|
71
|
+
|
|
72
|
+
export declare type BooleanWidget = {
|
|
73
|
+
type: 'toggle';
|
|
74
|
+
};
|
|
75
|
+
|
|
76
|
+
export declare type EnumOption = {
|
|
77
|
+
value: string;
|
|
78
|
+
label: string;
|
|
79
|
+
};
|
|
80
|
+
|
|
81
|
+
export declare type EnumSettingDefinition = {
|
|
82
|
+
id: string;
|
|
83
|
+
title: string;
|
|
84
|
+
description?: string;
|
|
85
|
+
category: SettingCategory;
|
|
86
|
+
kind: 'enum';
|
|
87
|
+
options: EnumOption[];
|
|
88
|
+
default?: string;
|
|
89
|
+
hidden?: boolean;
|
|
90
|
+
source?: SettingSource;
|
|
91
|
+
widget?: EnumWidget;
|
|
92
|
+
};
|
|
93
|
+
|
|
94
|
+
export declare type EnumWidget = {
|
|
95
|
+
type: 'select';
|
|
96
|
+
} | {
|
|
97
|
+
type: 'radio';
|
|
98
|
+
};
|
|
99
|
+
|
|
100
|
+
export declare type LoadedPlugin = {
|
|
101
|
+
metadata: PluginMetadata;
|
|
102
|
+
instance: NuclearPlugin;
|
|
103
|
+
path: string;
|
|
104
|
+
};
|
|
105
|
+
|
|
106
|
+
export declare type LocalFileInfo = {
|
|
107
|
+
fileUri: string;
|
|
108
|
+
fileSize?: number;
|
|
109
|
+
format?: string;
|
|
110
|
+
bitrateKbps?: number;
|
|
111
|
+
sampleRateHz?: number;
|
|
112
|
+
channels?: number;
|
|
113
|
+
fingerprint?: string;
|
|
114
|
+
scannedAtIso?: string;
|
|
115
|
+
};
|
|
116
|
+
|
|
117
|
+
export declare type MetadataProvider = ProviderDescriptor<'metadata'> & {
|
|
118
|
+
searchCapabilities?: SearchCapability[];
|
|
119
|
+
artistMetadataCapabilities?: ArtistMetadataCapability[];
|
|
120
|
+
search?: (params: SearchParams) => Promise<SearchResults>;
|
|
121
|
+
searchArtists?: (params: Omit<SearchParams, 'types'>) => Promise<ArtistRef[]>;
|
|
122
|
+
searchAlbums?: (params: Omit<SearchParams, 'types'>) => Promise<AlbumRef[]>;
|
|
123
|
+
searchTracks?: (params: Omit<SearchParams, 'types'>) => Promise<Track[]>;
|
|
124
|
+
searchPlaylists?: (params: Omit<SearchParams, 'types'>) => Promise<PlaylistRef[]>;
|
|
125
|
+
fetchArtistDetails?: (query: string) => Promise<Artist>;
|
|
126
|
+
fetchAlbumDetails?: (query: string) => Promise<Album>;
|
|
127
|
+
fetchArtistAlbums?: (artistId: string) => Promise<AlbumRef[]>;
|
|
128
|
+
fetchArtistTopTracks?: (artistId: string) => Promise<TrackRef[]>;
|
|
129
|
+
fetchArtistRelatedArtists?: (artistId: string) => Promise<ArtistRef[]>;
|
|
130
|
+
};
|
|
131
|
+
|
|
132
|
+
export declare class MissingCapabilityError extends Error {
|
|
133
|
+
constructor(capability: string);
|
|
134
|
+
}
|
|
135
|
+
|
|
136
|
+
export declare class NuclearAPI {
|
|
137
|
+
readonly Settings: Settings;
|
|
138
|
+
readonly Providers: Providers;
|
|
139
|
+
constructor(opts?: {
|
|
140
|
+
settingsHost?: SettingsHost;
|
|
141
|
+
providersHost?: ProvidersHost;
|
|
142
|
+
});
|
|
143
|
+
}
|
|
144
|
+
|
|
145
|
+
export declare type NuclearPlugin = {
|
|
146
|
+
onLoad?(api: NuclearPluginAPI): void | Promise<void>;
|
|
147
|
+
onUnload?(): void | Promise<void>;
|
|
148
|
+
onEnable?(api: NuclearPluginAPI): void | Promise<void>;
|
|
149
|
+
onDisable?(): void | Promise<void>;
|
|
150
|
+
};
|
|
151
|
+
|
|
152
|
+
export declare class NuclearPluginAPI extends NuclearAPI {
|
|
153
|
+
}
|
|
154
|
+
|
|
155
|
+
export declare type NumberSettingDefinition = {
|
|
156
|
+
id: string;
|
|
157
|
+
title: string;
|
|
158
|
+
description?: string;
|
|
159
|
+
category: SettingCategory;
|
|
160
|
+
kind: 'number';
|
|
161
|
+
default?: number;
|
|
162
|
+
hidden?: boolean;
|
|
163
|
+
source?: SettingSource;
|
|
164
|
+
widget?: NumberWidget;
|
|
165
|
+
min?: number;
|
|
166
|
+
max?: number;
|
|
167
|
+
step?: number;
|
|
168
|
+
unit?: string;
|
|
169
|
+
};
|
|
170
|
+
|
|
171
|
+
export declare type NumberWidget = {
|
|
172
|
+
type: 'slider';
|
|
173
|
+
min?: number;
|
|
174
|
+
max?: number;
|
|
175
|
+
step?: number;
|
|
176
|
+
unit?: string;
|
|
177
|
+
} | {
|
|
178
|
+
type: 'number-input';
|
|
179
|
+
min?: number;
|
|
180
|
+
max?: number;
|
|
181
|
+
step?: number;
|
|
182
|
+
unit?: string;
|
|
183
|
+
};
|
|
184
|
+
|
|
185
|
+
export declare function pickArtwork(set: ArtworkSet | undefined, purpose: ArtworkPurpose, targetPx: number): Artwork | undefined;
|
|
186
|
+
|
|
187
|
+
export declare type Playlist = {
|
|
188
|
+
id: string;
|
|
189
|
+
name: string;
|
|
190
|
+
lastModifiedIso?: string;
|
|
191
|
+
items: PlaylistItem[];
|
|
192
|
+
};
|
|
193
|
+
|
|
194
|
+
export declare type PlaylistItem = {
|
|
195
|
+
id: string;
|
|
196
|
+
title: string;
|
|
197
|
+
artists: ArtistCredit[];
|
|
198
|
+
album?: string;
|
|
199
|
+
durationMs?: number;
|
|
200
|
+
artwork?: ArtworkSet;
|
|
201
|
+
note?: string;
|
|
202
|
+
addedAtIso?: string;
|
|
203
|
+
source: ProviderRef;
|
|
204
|
+
};
|
|
205
|
+
|
|
206
|
+
export declare type PlaylistRef = {
|
|
207
|
+
id: string;
|
|
208
|
+
name: string;
|
|
209
|
+
artwork?: ArtworkSet;
|
|
210
|
+
source: ProviderRef;
|
|
211
|
+
};
|
|
212
|
+
|
|
213
|
+
export declare type PluginIcon = {
|
|
214
|
+
type: 'link';
|
|
215
|
+
link: string;
|
|
216
|
+
};
|
|
217
|
+
|
|
218
|
+
export declare type PluginManifest = {
|
|
219
|
+
name: string;
|
|
220
|
+
version: string;
|
|
221
|
+
description: string;
|
|
222
|
+
author: string;
|
|
223
|
+
main?: string;
|
|
224
|
+
nuclear?: {
|
|
225
|
+
displayName?: string;
|
|
226
|
+
category?: string;
|
|
227
|
+
icon?: PluginIcon;
|
|
228
|
+
permissions?: string[];
|
|
229
|
+
};
|
|
230
|
+
};
|
|
231
|
+
|
|
232
|
+
export declare type PluginMetadata = {
|
|
233
|
+
id: string;
|
|
234
|
+
name: string;
|
|
235
|
+
displayName: string;
|
|
236
|
+
version: string;
|
|
237
|
+
description: string;
|
|
238
|
+
author: string;
|
|
239
|
+
category?: string;
|
|
240
|
+
icon?: PluginIcon;
|
|
241
|
+
permissions: string[];
|
|
242
|
+
};
|
|
243
|
+
|
|
244
|
+
export declare type ProviderDescriptor<K extends ProviderKind = ProviderKind> = {
|
|
245
|
+
id: string;
|
|
246
|
+
kind: K;
|
|
247
|
+
name: string;
|
|
248
|
+
pluginId?: string;
|
|
249
|
+
};
|
|
250
|
+
|
|
251
|
+
export declare type ProviderKind = 'metadata' | 'streaming' | 'lyrics' | (string & {});
|
|
252
|
+
|
|
253
|
+
export declare type ProviderRef = {
|
|
254
|
+
provider: string;
|
|
255
|
+
id: string;
|
|
256
|
+
url?: string;
|
|
257
|
+
};
|
|
258
|
+
|
|
259
|
+
declare class Providers {
|
|
260
|
+
#private;
|
|
261
|
+
constructor(host?: ProvidersHost);
|
|
262
|
+
register<T extends ProviderDescriptor>(p: T): string;
|
|
263
|
+
unregister(id: string): boolean;
|
|
264
|
+
list<K extends ProviderKind = ProviderKind>(kind?: K): ProviderDescriptor<K>[];
|
|
265
|
+
get<T extends ProviderDescriptor>(id: string): T | undefined;
|
|
266
|
+
}
|
|
267
|
+
|
|
268
|
+
export declare type ProvidersHost = {
|
|
269
|
+
register<T extends ProviderDescriptor>(provider: T): string;
|
|
270
|
+
unregister(providerId: string): boolean;
|
|
271
|
+
list<K extends ProviderKind = ProviderKind>(kind?: K): ProviderDescriptor<K>[];
|
|
272
|
+
get<T extends ProviderDescriptor>(providerId: string): T | undefined;
|
|
273
|
+
clear(): void;
|
|
274
|
+
};
|
|
275
|
+
|
|
276
|
+
export declare type QueueItem = {
|
|
277
|
+
id: string;
|
|
278
|
+
title: string;
|
|
279
|
+
artists: ArtistCredit[];
|
|
280
|
+
album?: string;
|
|
281
|
+
durationMs?: number;
|
|
282
|
+
artwork?: ArtworkSet;
|
|
283
|
+
note?: string;
|
|
284
|
+
addedAtIso?: string;
|
|
285
|
+
source: ProviderRef;
|
|
286
|
+
};
|
|
287
|
+
|
|
288
|
+
export declare type SearchCapability = SearchCategory | 'unified';
|
|
289
|
+
|
|
290
|
+
export declare type SearchCategory = 'artists' | 'albums' | 'tracks' | 'playlists';
|
|
291
|
+
|
|
292
|
+
export declare type SearchParams = {
|
|
293
|
+
query: string;
|
|
294
|
+
types?: SearchCategory[];
|
|
295
|
+
limit?: number;
|
|
296
|
+
};
|
|
297
|
+
|
|
298
|
+
export declare type SearchResults = {
|
|
299
|
+
artists?: ArtistRef[];
|
|
300
|
+
albums?: AlbumRef[];
|
|
301
|
+
tracks?: Track[];
|
|
302
|
+
playlists?: PlaylistRef[];
|
|
303
|
+
};
|
|
304
|
+
|
|
305
|
+
export declare type SettingCategory = string;
|
|
306
|
+
|
|
307
|
+
export declare type SettingDefinition = BooleanSettingDefinition | NumberSettingDefinition | StringSettingDefinition | EnumSettingDefinition;
|
|
308
|
+
|
|
309
|
+
declare class Settings {
|
|
310
|
+
#private;
|
|
311
|
+
constructor(host?: SettingsHost);
|
|
312
|
+
register(defs: SettingDefinition[], source: SettingSource): Promise<SettingsRegistrationResult>;
|
|
313
|
+
get<T extends SettingValue = SettingValue>(id: string): Promise<T | undefined>;
|
|
314
|
+
set<T extends SettingValue = SettingValue>(id: string, value: T): Promise<void>;
|
|
315
|
+
subscribe<T extends SettingValue = SettingValue>(id: string, listener: (value: T | undefined) => void): () => void;
|
|
316
|
+
}
|
|
317
|
+
|
|
318
|
+
export declare type SettingsHost = {
|
|
319
|
+
register(defs: SettingDefinition[], source: SettingSource): Promise<SettingsRegistrationResult>;
|
|
320
|
+
get<T extends SettingValue = SettingValue>(id: string): Promise<T | undefined>;
|
|
321
|
+
set<T extends SettingValue = SettingValue>(id: string, value: T): Promise<void>;
|
|
322
|
+
subscribe<T extends SettingValue = SettingValue>(id: string, listener: (value: T | undefined) => void): () => void;
|
|
323
|
+
};
|
|
324
|
+
|
|
325
|
+
export declare type SettingSource = {
|
|
326
|
+
type: 'core';
|
|
327
|
+
} | {
|
|
328
|
+
type: 'plugin';
|
|
329
|
+
pluginId: string;
|
|
330
|
+
pluginName?: string;
|
|
331
|
+
};
|
|
332
|
+
|
|
333
|
+
export declare type SettingsRegistration = {
|
|
334
|
+
settings: SettingDefinition[];
|
|
335
|
+
};
|
|
336
|
+
|
|
337
|
+
export declare type SettingsRegistrationResult = {
|
|
338
|
+
registered: string[];
|
|
339
|
+
};
|
|
340
|
+
|
|
341
|
+
export declare type SettingValue = boolean | number | string | undefined;
|
|
342
|
+
|
|
343
|
+
export declare type Stream = {
|
|
344
|
+
url: string;
|
|
345
|
+
protocol: 'file' | 'http' | 'https' | 'hls';
|
|
346
|
+
mimeType?: string;
|
|
347
|
+
bitrateKbps?: number;
|
|
348
|
+
codec?: string;
|
|
349
|
+
container?: string;
|
|
350
|
+
qualityLabel?: string;
|
|
351
|
+
durationMs?: number;
|
|
352
|
+
contentLengthBytes?: number;
|
|
353
|
+
source: ProviderRef;
|
|
354
|
+
};
|
|
355
|
+
|
|
356
|
+
export declare type StringFormat = 'text' | 'url' | 'path' | 'token' | 'language';
|
|
357
|
+
|
|
358
|
+
export declare type StringSettingDefinition = {
|
|
359
|
+
id: string;
|
|
360
|
+
title: string;
|
|
361
|
+
description?: string;
|
|
362
|
+
category: SettingCategory;
|
|
363
|
+
kind: 'string';
|
|
364
|
+
default?: string;
|
|
365
|
+
hidden?: boolean;
|
|
366
|
+
source?: SettingSource;
|
|
367
|
+
widget?: StringWidget;
|
|
368
|
+
format?: StringFormat;
|
|
369
|
+
pattern?: string;
|
|
370
|
+
minLength?: number;
|
|
371
|
+
maxLength?: number;
|
|
372
|
+
};
|
|
373
|
+
|
|
374
|
+
export declare type StringWidget = {
|
|
375
|
+
type: 'text';
|
|
376
|
+
placeholder?: string;
|
|
377
|
+
} | {
|
|
378
|
+
type: 'password';
|
|
379
|
+
placeholder?: string;
|
|
380
|
+
} | {
|
|
381
|
+
type: 'textarea';
|
|
382
|
+
placeholder?: string;
|
|
383
|
+
rows?: number;
|
|
384
|
+
};
|
|
385
|
+
|
|
386
|
+
export declare type Track = {
|
|
387
|
+
title: string;
|
|
388
|
+
artists: ArtistCredit[];
|
|
389
|
+
album?: AlbumRef;
|
|
390
|
+
durationMs?: number;
|
|
391
|
+
trackNumber?: number;
|
|
392
|
+
disc?: string;
|
|
393
|
+
artwork?: ArtworkSet;
|
|
394
|
+
tags?: string[];
|
|
395
|
+
source: ProviderRef;
|
|
396
|
+
localFile?: LocalFileInfo;
|
|
397
|
+
streams?: Stream[];
|
|
398
|
+
};
|
|
399
|
+
|
|
400
|
+
export declare type TrackRef = {
|
|
401
|
+
title: string;
|
|
402
|
+
artists: ArtistRef[];
|
|
403
|
+
artwork?: ArtworkSet;
|
|
404
|
+
source: ProviderRef;
|
|
405
|
+
};
|
|
406
|
+
|
|
407
|
+
export declare const useSetting: <T extends SettingValue = SettingValue>(host: SettingsHost | undefined, id: string) => readonly [T | undefined, (nextValue: T) => void];
|
|
408
|
+
|
|
409
|
+
export { }
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@nuclearplayer/plugin-sdk",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.14",
|
|
4
4
|
"description": "Plugin SDK for Nuclear music player",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./dist/index.js",
|
|
@@ -24,6 +24,7 @@
|
|
|
24
24
|
"tailwind-merge": "^3.3.1"
|
|
25
25
|
},
|
|
26
26
|
"devDependencies": {
|
|
27
|
+
"@microsoft/api-extractor": "^7.51.1",
|
|
27
28
|
"@tailwindcss/vite": "^4.1.11",
|
|
28
29
|
"@testing-library/jest-dom": "^6.6.4",
|
|
29
30
|
"@testing-library/react": "^16.3.0",
|
|
@@ -67,8 +68,9 @@
|
|
|
67
68
|
},
|
|
68
69
|
"scripts": {
|
|
69
70
|
"dev": "vite",
|
|
70
|
-
"build": "tsc && vite build",
|
|
71
|
-
"build:npm": "vite build --mode npm",
|
|
71
|
+
"build": "tsc && vite build && api-extractor run --local && pnpm clean:dts",
|
|
72
|
+
"build:npm": "tsc && vite build --mode npm && api-extractor run --local && pnpm clean:dts",
|
|
73
|
+
"clean:dts": "rm -rf dist/api dist/react dist/test dist/types dist/types.d.ts dist/*.d.ts.map dist/tsdoc-metadata.json",
|
|
72
74
|
"test": "vitest --run",
|
|
73
75
|
"test:watch": "vitest",
|
|
74
76
|
"test:coverage": "vitest --run --coverage",
|
package/dist/api/index.d.ts
DELETED
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
import { ProvidersHost } from '../types/providers';
|
|
2
|
-
import { SettingsHost } from '../types/settings';
|
|
3
|
-
import { Providers } from './providers';
|
|
4
|
-
import { Settings } from './settings';
|
|
5
|
-
export declare class NuclearAPI {
|
|
6
|
-
readonly Settings: Settings;
|
|
7
|
-
readonly Providers: Providers;
|
|
8
|
-
constructor(opts?: {
|
|
9
|
-
settingsHost?: SettingsHost;
|
|
10
|
-
providersHost?: ProvidersHost;
|
|
11
|
-
});
|
|
12
|
-
}
|
|
13
|
-
export declare class NuclearPluginAPI extends NuclearAPI {
|
|
14
|
-
}
|
|
15
|
-
//# sourceMappingURL=index.d.ts.map
|
package/dist/api/index.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/api/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACtD,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAEtC,qBAAa,UAAU;IACrB,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC;IAC5B,QAAQ,CAAC,SAAS,EAAE,SAAS,CAAC;gBAElB,IAAI,CAAC,EAAE;QACjB,YAAY,CAAC,EAAE,YAAY,CAAC;QAC5B,aAAa,CAAC,EAAE,aAAa,CAAC;KAC/B;CAIF;AAED,qBAAa,gBAAiB,SAAQ,UAAU;CAAG"}
|
package/dist/api/providers.d.ts
DELETED
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
import { ProvidersHost } from '../types/providers';
|
|
2
|
-
import { ProviderDescriptor, ProviderKind } from '../types/search';
|
|
3
|
-
export declare class Providers {
|
|
4
|
-
#private;
|
|
5
|
-
constructor(host?: ProvidersHost);
|
|
6
|
-
register<T extends ProviderDescriptor>(p: T): string;
|
|
7
|
-
unregister(id: string): boolean;
|
|
8
|
-
list<K extends ProviderKind = ProviderKind>(kind?: K): ProviderDescriptor<K>[];
|
|
9
|
-
get<T extends ProviderDescriptor>(id: string): T | undefined;
|
|
10
|
-
}
|
|
11
|
-
//# sourceMappingURL=providers.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"providers.d.ts","sourceRoot":"","sources":["../../src/api/providers.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACxD,OAAO,KAAK,EAAE,kBAAkB,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAExE,qBAAa,SAAS;;gBAGR,IAAI,CAAC,EAAE,aAAa;IAYhC,QAAQ,CAAC,CAAC,SAAS,kBAAkB,EAAE,CAAC,EAAE,CAAC;IAI3C,UAAU,CAAC,EAAE,EAAE,MAAM;IAIrB,IAAI,CAAC,CAAC,SAAS,YAAY,GAAG,YAAY,EAAE,IAAI,CAAC,EAAE,CAAC;IAIpD,GAAG,CAAC,CAAC,SAAS,kBAAkB,EAAE,EAAE,EAAE,MAAM;CAG7C"}
|
package/dist/api/settings.d.ts
DELETED
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
import { SettingDefinition, SettingsHost, SettingSource, SettingValue } from '../types/settings';
|
|
2
|
-
export declare class Settings {
|
|
3
|
-
#private;
|
|
4
|
-
constructor(host?: SettingsHost);
|
|
5
|
-
register(defs: SettingDefinition[], source: SettingSource): Promise<import('..').SettingsRegistrationResult>;
|
|
6
|
-
get<T extends SettingValue = SettingValue>(id: string): Promise<T | undefined>;
|
|
7
|
-
set<T extends SettingValue = SettingValue>(id: string, value: T): Promise<void>;
|
|
8
|
-
subscribe<T extends SettingValue = SettingValue>(id: string, listener: (value: T | undefined) => void): () => void;
|
|
9
|
-
}
|
|
10
|
-
//# sourceMappingURL=settings.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"settings.d.ts","sourceRoot":"","sources":["../../src/api/settings.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,iBAAiB,EACjB,YAAY,EACZ,aAAa,EACb,YAAY,EACb,MAAM,mBAAmB,CAAC;AAE3B,qBAAa,QAAQ;;gBAGP,IAAI,CAAC,EAAE,YAAY;IAY/B,QAAQ,CAAC,IAAI,EAAE,iBAAiB,EAAE,EAAE,MAAM,EAAE,aAAa;IAIzD,GAAG,CAAC,CAAC,SAAS,YAAY,GAAG,YAAY,EAAE,EAAE,EAAE,MAAM;IAIrD,GAAG,CAAC,CAAC,SAAS,YAAY,GAAG,YAAY,EAAE,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC;IAI/D,SAAS,CAAC,CAAC,SAAS,YAAY,GAAG,YAAY,EAC7C,EAAE,EAAE,MAAM,EACV,QAAQ,EAAE,CAAC,KAAK,EAAE,CAAC,GAAG,SAAS,KAAK,IAAI;CAI3C"}
|
package/dist/index.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,UAAU,EAAE,MAAM,OAAO,CAAC;AACrD,cAAc,SAAS,CAAC;AACxB,cAAc,kBAAkB,CAAC;AACjC,cAAc,gBAAgB,CAAC;AAC/B,YAAY,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AACvD,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAChD,cAAc,sBAAsB,CAAC"}
|
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
import { SettingsHost, SettingValue } from '../types/settings';
|
|
2
|
-
export declare const useSetting: <T extends SettingValue = SettingValue>(host: SettingsHost | undefined, id: string) => readonly [T | undefined, (nextValue: T) => void];
|
|
3
|
-
//# sourceMappingURL=useSetting.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"useSetting.d.ts","sourceRoot":"","sources":["../../src/react/useSetting.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAEpE,eAAO,MAAM,UAAU,GAAI,CAAC,SAAS,YAAY,GAAG,YAAY,EAC9D,MAAM,YAAY,GAAG,SAAS,EAC9B,IAAI,MAAM,0CAkCU,CAAC,UAUtB,CAAC"}
|
package/dist/test/setup.d.ts
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
//# sourceMappingURL=setup.d.ts.map
|
package/dist/test/setup.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"setup.d.ts","sourceRoot":"","sources":["../../src/test/setup.ts"],"names":[],"mappings":"AAAA,OAAO,2BAA2B,CAAC"}
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
import { SettingDefinition, SettingsHost, SettingSource, SettingValue } from '../../types/settings';
|
|
2
|
-
export declare class InMemorySettingsHost implements SettingsHost {
|
|
3
|
-
private definitions;
|
|
4
|
-
private values;
|
|
5
|
-
private listeners;
|
|
6
|
-
private readonly source;
|
|
7
|
-
constructor(source: SettingSource);
|
|
8
|
-
private fullyQualified;
|
|
9
|
-
register(definitions: SettingDefinition[], _source: SettingSource): Promise<{
|
|
10
|
-
registered: string[];
|
|
11
|
-
}>;
|
|
12
|
-
get<T extends SettingValue = SettingValue>(id: string): Promise<T | undefined>;
|
|
13
|
-
set<T extends SettingValue = SettingValue>(id: string, value: T): Promise<void>;
|
|
14
|
-
subscribe<T extends SettingValue = SettingValue>(id: string, listener: (value: T | undefined) => void): () => void;
|
|
15
|
-
}
|
|
16
|
-
//# sourceMappingURL=inMemorySettingsHost.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"inMemorySettingsHost.d.ts","sourceRoot":"","sources":["../../../src/test/utils/inMemorySettingsHost.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,iBAAiB,EACjB,YAAY,EACZ,aAAa,EACb,YAAY,EACb,MAAM,sBAAsB,CAAC;AAE9B,qBAAa,oBAAqB,YAAW,YAAY;IACvD,OAAO,CAAC,WAAW,CAAwC;IAC3D,OAAO,CAAC,MAAM,CAAmC;IACjD,OAAO,CAAC,SAAS,CAGb;IACJ,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAgB;gBAE3B,MAAM,EAAE,aAAa;IAIjC,OAAO,CAAC,cAAc;IAOhB,QAAQ,CAAC,WAAW,EAAE,iBAAiB,EAAE,EAAE,OAAO,EAAE,aAAa;;;IAsBjE,GAAG,CAAC,CAAC,SAAS,YAAY,GAAG,YAAY,EAAE,EAAE,EAAE,MAAM;IAKrD,GAAG,CAAC,CAAC,SAAS,YAAY,GAAG,YAAY,EAAE,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC;IAWrE,SAAS,CAAC,CAAC,SAAS,YAAY,GAAG,YAAY,EAC7C,EAAE,EAAE,MAAM,EACV,QAAQ,EAAE,CAAC,KAAK,EAAE,CAAC,GAAG,SAAS,KAAK,IAAI;CAmB3C"}
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
import { ProviderDescriptor, ProviderKind } from './search';
|
|
2
|
-
export type ProvidersHost = {
|
|
3
|
-
register<T extends ProviderDescriptor>(provider: T): string;
|
|
4
|
-
unregister(providerId: string): boolean;
|
|
5
|
-
list<K extends ProviderKind = ProviderKind>(kind?: K): ProviderDescriptor<K>[];
|
|
6
|
-
get<T extends ProviderDescriptor>(providerId: string): T | undefined;
|
|
7
|
-
clear(): void;
|
|
8
|
-
};
|
|
9
|
-
//# sourceMappingURL=providers.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"providers.d.ts","sourceRoot":"","sources":["../../src/types/providers.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAEjE,MAAM,MAAM,aAAa,GAAG;IAC1B,QAAQ,CAAC,CAAC,SAAS,kBAAkB,EAAE,QAAQ,EAAE,CAAC,GAAG,MAAM,CAAC;IAC5D,UAAU,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC;IACxC,IAAI,CAAC,CAAC,SAAS,YAAY,GAAG,YAAY,EACxC,IAAI,CAAC,EAAE,CAAC,GACP,kBAAkB,CAAC,CAAC,CAAC,EAAE,CAAC;IAC3B,GAAG,CAAC,CAAC,SAAS,kBAAkB,EAAE,UAAU,EAAE,MAAM,GAAG,CAAC,GAAG,SAAS,CAAC;IACrE,KAAK,IAAI,IAAI,CAAC;CACf,CAAC"}
|
package/dist/types/search.d.ts
DELETED
|
@@ -1,40 +0,0 @@
|
|
|
1
|
-
import { Album, AlbumRef, Artist, ArtistRef, PlaylistRef, Track, TrackRef } from '@nuclearplayer/model';
|
|
2
|
-
export type SearchCategory = 'artists' | 'albums' | 'tracks' | 'playlists';
|
|
3
|
-
export type SearchCapability = SearchCategory | 'unified';
|
|
4
|
-
export type ArtistMetadataCapability = 'artistDetails' | 'artistAlbums' | 'artistTopTracks' | 'artistRelatedArtists';
|
|
5
|
-
export type SearchParams = {
|
|
6
|
-
query: string;
|
|
7
|
-
types?: SearchCategory[];
|
|
8
|
-
limit?: number;
|
|
9
|
-
};
|
|
10
|
-
export type SearchResults = {
|
|
11
|
-
artists?: ArtistRef[];
|
|
12
|
-
albums?: AlbumRef[];
|
|
13
|
-
tracks?: Track[];
|
|
14
|
-
playlists?: PlaylistRef[];
|
|
15
|
-
};
|
|
16
|
-
export type ProviderKind = 'metadata' | 'streaming' | 'lyrics' | (string & {});
|
|
17
|
-
export type ProviderDescriptor<K extends ProviderKind = ProviderKind> = {
|
|
18
|
-
id: string;
|
|
19
|
-
kind: K;
|
|
20
|
-
name: string;
|
|
21
|
-
pluginId?: string;
|
|
22
|
-
};
|
|
23
|
-
export type MetadataProvider = ProviderDescriptor<'metadata'> & {
|
|
24
|
-
searchCapabilities?: SearchCapability[];
|
|
25
|
-
artistMetadataCapabilities?: ArtistMetadataCapability[];
|
|
26
|
-
search?: (params: SearchParams) => Promise<SearchResults>;
|
|
27
|
-
searchArtists?: (params: Omit<SearchParams, 'types'>) => Promise<ArtistRef[]>;
|
|
28
|
-
searchAlbums?: (params: Omit<SearchParams, 'types'>) => Promise<AlbumRef[]>;
|
|
29
|
-
searchTracks?: (params: Omit<SearchParams, 'types'>) => Promise<Track[]>;
|
|
30
|
-
searchPlaylists?: (params: Omit<SearchParams, 'types'>) => Promise<PlaylistRef[]>;
|
|
31
|
-
fetchArtistDetails?: (query: string) => Promise<Artist>;
|
|
32
|
-
fetchAlbumDetails?: (query: string) => Promise<Album>;
|
|
33
|
-
fetchArtistAlbums?: (artistId: string) => Promise<AlbumRef[]>;
|
|
34
|
-
fetchArtistTopTracks?: (artistId: string) => Promise<TrackRef[]>;
|
|
35
|
-
fetchArtistRelatedArtists?: (artistId: string) => Promise<ArtistRef[]>;
|
|
36
|
-
};
|
|
37
|
-
export declare class MissingCapabilityError extends Error {
|
|
38
|
-
constructor(capability: string);
|
|
39
|
-
}
|
|
40
|
-
//# sourceMappingURL=search.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"search.d.ts","sourceRoot":"","sources":["../../src/types/search.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,KAAK,EACL,QAAQ,EACR,MAAM,EACN,SAAS,EACT,WAAW,EACX,KAAK,EACL,QAAQ,EACT,MAAM,sBAAsB,CAAC;AAE9B,MAAM,MAAM,cAAc,GAAG,SAAS,GAAG,QAAQ,GAAG,QAAQ,GAAG,WAAW,CAAC;AAC3E,MAAM,MAAM,gBAAgB,GAAG,cAAc,GAAG,SAAS,CAAC;AAE1D,MAAM,MAAM,wBAAwB,GAChC,eAAe,GACf,cAAc,GACd,iBAAiB,GACjB,sBAAsB,CAAC;AAE3B,MAAM,MAAM,YAAY,GAAG;IACzB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,cAAc,EAAE,CAAC;IACzB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF,MAAM,MAAM,aAAa,GAAG;IAC1B,OAAO,CAAC,EAAE,SAAS,EAAE,CAAC;IACtB,MAAM,CAAC,EAAE,QAAQ,EAAE,CAAC;IACpB,MAAM,CAAC,EAAE,KAAK,EAAE,CAAC;IACjB,SAAS,CAAC,EAAE,WAAW,EAAE,CAAC;CAC3B,CAAC;AAEF,MAAM,MAAM,YAAY,GAAG,UAAU,GAAG,WAAW,GAAG,QAAQ,GAAG,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC;AAE/E,MAAM,MAAM,kBAAkB,CAAC,CAAC,SAAS,YAAY,GAAG,YAAY,IAAI;IACtE,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,CAAC,CAAC;IACR,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAAG,kBAAkB,CAAC,UAAU,CAAC,GAAG;IAC9D,kBAAkB,CAAC,EAAE,gBAAgB,EAAE,CAAC;IACxC,0BAA0B,CAAC,EAAE,wBAAwB,EAAE,CAAC;IACxD,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,YAAY,KAAK,OAAO,CAAC,aAAa,CAAC,CAAC;IAC1D,aAAa,CAAC,EAAE,CAAC,MAAM,EAAE,IAAI,CAAC,YAAY,EAAE,OAAO,CAAC,KAAK,OAAO,CAAC,SAAS,EAAE,CAAC,CAAC;IAC9E,YAAY,CAAC,EAAE,CAAC,MAAM,EAAE,IAAI,CAAC,YAAY,EAAE,OAAO,CAAC,KAAK,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC;IAC5E,YAAY,CAAC,EAAE,CAAC,MAAM,EAAE,IAAI,CAAC,YAAY,EAAE,OAAO,CAAC,KAAK,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC;IACzE,eAAe,CAAC,EAAE,CAChB,MAAM,EAAE,IAAI,CAAC,YAAY,EAAE,OAAO,CAAC,KAChC,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC;IAE5B,kBAAkB,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;IACxD,iBAAiB,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,OAAO,CAAC,KAAK,CAAC,CAAC;IACtD,iBAAiB,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC;IAC9D,oBAAoB,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC;IACjE,yBAAyB,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,OAAO,CAAC,SAAS,EAAE,CAAC,CAAC;CACxE,CAAC;AAEF,qBAAa,sBAAuB,SAAQ,KAAK;gBACnC,UAAU,EAAE,MAAM;CAI/B"}
|
package/dist/types/settings.d.ts
DELETED
|
@@ -1,113 +0,0 @@
|
|
|
1
|
-
export type SettingSource = {
|
|
2
|
-
type: 'core';
|
|
3
|
-
} | {
|
|
4
|
-
type: 'plugin';
|
|
5
|
-
pluginId: string;
|
|
6
|
-
pluginName?: string;
|
|
7
|
-
};
|
|
8
|
-
export type SettingCategory = string;
|
|
9
|
-
export type BooleanWidget = {
|
|
10
|
-
type: 'toggle';
|
|
11
|
-
};
|
|
12
|
-
export type NumberWidget = {
|
|
13
|
-
type: 'slider';
|
|
14
|
-
min?: number;
|
|
15
|
-
max?: number;
|
|
16
|
-
step?: number;
|
|
17
|
-
unit?: string;
|
|
18
|
-
} | {
|
|
19
|
-
type: 'number-input';
|
|
20
|
-
min?: number;
|
|
21
|
-
max?: number;
|
|
22
|
-
step?: number;
|
|
23
|
-
unit?: string;
|
|
24
|
-
};
|
|
25
|
-
export type StringWidget = {
|
|
26
|
-
type: 'text';
|
|
27
|
-
placeholder?: string;
|
|
28
|
-
} | {
|
|
29
|
-
type: 'password';
|
|
30
|
-
placeholder?: string;
|
|
31
|
-
} | {
|
|
32
|
-
type: 'textarea';
|
|
33
|
-
placeholder?: string;
|
|
34
|
-
rows?: number;
|
|
35
|
-
};
|
|
36
|
-
export type EnumWidget = {
|
|
37
|
-
type: 'select';
|
|
38
|
-
} | {
|
|
39
|
-
type: 'radio';
|
|
40
|
-
};
|
|
41
|
-
export type BooleanSettingDefinition = {
|
|
42
|
-
id: string;
|
|
43
|
-
title: string;
|
|
44
|
-
description?: string;
|
|
45
|
-
category: SettingCategory;
|
|
46
|
-
kind: 'boolean';
|
|
47
|
-
default?: boolean;
|
|
48
|
-
hidden?: boolean;
|
|
49
|
-
source?: SettingSource;
|
|
50
|
-
widget?: BooleanWidget;
|
|
51
|
-
};
|
|
52
|
-
export type NumberSettingDefinition = {
|
|
53
|
-
id: string;
|
|
54
|
-
title: string;
|
|
55
|
-
description?: string;
|
|
56
|
-
category: SettingCategory;
|
|
57
|
-
kind: 'number';
|
|
58
|
-
default?: number;
|
|
59
|
-
hidden?: boolean;
|
|
60
|
-
source?: SettingSource;
|
|
61
|
-
widget?: NumberWidget;
|
|
62
|
-
min?: number;
|
|
63
|
-
max?: number;
|
|
64
|
-
step?: number;
|
|
65
|
-
unit?: string;
|
|
66
|
-
};
|
|
67
|
-
export type StringFormat = 'text' | 'url' | 'path' | 'token' | 'language';
|
|
68
|
-
export type StringSettingDefinition = {
|
|
69
|
-
id: string;
|
|
70
|
-
title: string;
|
|
71
|
-
description?: string;
|
|
72
|
-
category: SettingCategory;
|
|
73
|
-
kind: 'string';
|
|
74
|
-
default?: string;
|
|
75
|
-
hidden?: boolean;
|
|
76
|
-
source?: SettingSource;
|
|
77
|
-
widget?: StringWidget;
|
|
78
|
-
format?: StringFormat;
|
|
79
|
-
pattern?: string;
|
|
80
|
-
minLength?: number;
|
|
81
|
-
maxLength?: number;
|
|
82
|
-
};
|
|
83
|
-
export type EnumOption = {
|
|
84
|
-
value: string;
|
|
85
|
-
label: string;
|
|
86
|
-
};
|
|
87
|
-
export type EnumSettingDefinition = {
|
|
88
|
-
id: string;
|
|
89
|
-
title: string;
|
|
90
|
-
description?: string;
|
|
91
|
-
category: SettingCategory;
|
|
92
|
-
kind: 'enum';
|
|
93
|
-
options: EnumOption[];
|
|
94
|
-
default?: string;
|
|
95
|
-
hidden?: boolean;
|
|
96
|
-
source?: SettingSource;
|
|
97
|
-
widget?: EnumWidget;
|
|
98
|
-
};
|
|
99
|
-
export type SettingDefinition = BooleanSettingDefinition | NumberSettingDefinition | StringSettingDefinition | EnumSettingDefinition;
|
|
100
|
-
export type SettingValue = boolean | number | string | undefined;
|
|
101
|
-
export type SettingsRegistration = {
|
|
102
|
-
settings: SettingDefinition[];
|
|
103
|
-
};
|
|
104
|
-
export type SettingsRegistrationResult = {
|
|
105
|
-
registered: string[];
|
|
106
|
-
};
|
|
107
|
-
export type SettingsHost = {
|
|
108
|
-
register(defs: SettingDefinition[], source: SettingSource): Promise<SettingsRegistrationResult>;
|
|
109
|
-
get<T extends SettingValue = SettingValue>(id: string): Promise<T | undefined>;
|
|
110
|
-
set<T extends SettingValue = SettingValue>(id: string, value: T): Promise<void>;
|
|
111
|
-
subscribe<T extends SettingValue = SettingValue>(id: string, listener: (value: T | undefined) => void): () => void;
|
|
112
|
-
};
|
|
113
|
-
//# sourceMappingURL=settings.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"settings.d.ts","sourceRoot":"","sources":["../../src/types/settings.ts"],"names":[],"mappings":"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"}
|
package/dist/types.d.ts
DELETED
|
@@ -1,41 +0,0 @@
|
|
|
1
|
-
import { NuclearPluginAPI } from './api';
|
|
2
|
-
export type PluginIcon = {
|
|
3
|
-
type: 'link';
|
|
4
|
-
link: string;
|
|
5
|
-
};
|
|
6
|
-
export type PluginManifest = {
|
|
7
|
-
name: string;
|
|
8
|
-
version: string;
|
|
9
|
-
description: string;
|
|
10
|
-
author: string;
|
|
11
|
-
main?: string;
|
|
12
|
-
nuclear?: {
|
|
13
|
-
displayName?: string;
|
|
14
|
-
category?: string;
|
|
15
|
-
icon?: PluginIcon;
|
|
16
|
-
permissions?: string[];
|
|
17
|
-
};
|
|
18
|
-
};
|
|
19
|
-
export type NuclearPlugin = {
|
|
20
|
-
onLoad?(api: NuclearPluginAPI): void | Promise<void>;
|
|
21
|
-
onUnload?(): void | Promise<void>;
|
|
22
|
-
onEnable?(api: NuclearPluginAPI): void | Promise<void>;
|
|
23
|
-
onDisable?(): void | Promise<void>;
|
|
24
|
-
};
|
|
25
|
-
export type PluginMetadata = {
|
|
26
|
-
id: string;
|
|
27
|
-
name: string;
|
|
28
|
-
displayName: string;
|
|
29
|
-
version: string;
|
|
30
|
-
description: string;
|
|
31
|
-
author: string;
|
|
32
|
-
category?: string;
|
|
33
|
-
icon?: PluginIcon;
|
|
34
|
-
permissions: string[];
|
|
35
|
-
};
|
|
36
|
-
export type LoadedPlugin = {
|
|
37
|
-
metadata: PluginMetadata;
|
|
38
|
-
instance: NuclearPlugin;
|
|
39
|
-
path: string;
|
|
40
|
-
};
|
|
41
|
-
//# sourceMappingURL=types.d.ts.map
|
package/dist/types.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,OAAO,CAAC;AAE9C,MAAM,MAAM,UAAU,GAAG;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC;AAExD,MAAM,MAAM,cAAc,GAAG;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE;QACR,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,IAAI,CAAC,EAAE,UAAU,CAAC;QAClB,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;KACxB,CAAC;CACH,CAAC;AAEF,MAAM,MAAM,aAAa,GAAG;IAC1B,MAAM,CAAC,CAAC,GAAG,EAAE,gBAAgB,GAAG,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACrD,QAAQ,CAAC,IAAI,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAClC,QAAQ,CAAC,CAAC,GAAG,EAAE,gBAAgB,GAAG,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACvD,SAAS,CAAC,IAAI,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CACpC,CAAC;AAEF,MAAM,MAAM,cAAc,GAAG;IAC3B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,IAAI,CAAC,EAAE,UAAU,CAAC;IAClB,WAAW,EAAE,MAAM,EAAE,CAAC;CACvB,CAAC;AAEF,MAAM,MAAM,YAAY,GAAG;IACzB,QAAQ,EAAE,cAAc,CAAC;IACzB,QAAQ,EAAE,aAAa,CAAC;IACxB,IAAI,EAAE,MAAM,CAAC;CACd,CAAC"}
|