@pulsesync/addon-sdk 0.1.4 → 0.3.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/README.md +10 -0
- package/dist/addon/index.d.ts +1 -1
- package/dist/addon/index.d.ts.map +1 -1
- package/dist/addon/types.d.ts +15 -1
- package/dist/addon/types.d.ts.map +1 -1
- package/dist/settings/defineSettings.d.ts +0 -2
- package/dist/settings/defineSettings.d.ts.map +1 -1
- package/dist/settings/defineSettings.js +5 -25
- package/dist/settings/defineSettings.js.map +1 -1
- package/dist/settings/index.d.ts +2 -2
- package/dist/settings/index.d.ts.map +1 -1
- package/dist/settings/index.js +1 -1
- package/dist/settings/index.js.map +1 -1
- package/dist/settings/types.d.ts +0 -4
- package/dist/settings/types.d.ts.map +1 -1
- package/dist/settings/types.js.map +1 -1
- package/dist/vite/types.d.ts +2 -2
- package/dist/vite/types.d.ts.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -82,6 +82,16 @@ export default defineAddon({
|
|
|
82
82
|
|
|
83
83
|
`defineAddon()` привязывает настройки к идентификатору аддона. В React используйте `settings.use()` или `settings.use(['enabled'])`, а в обработчиках и lifecycle-функциях — readonly-снимок `settings.store.enabled`.
|
|
84
84
|
|
|
85
|
+
## WebHost capabilities
|
|
86
|
+
|
|
87
|
+
Изолированный runtime не раскрывает внутренние объекты страницы. Для безопасной миграции аддонов используйте типизированные методы `api.pulsesyncApi`:
|
|
88
|
+
|
|
89
|
+
- `getPageEntity()` возвращает сериализованный снимок текущего альбома, плейлиста или исполнителя;
|
|
90
|
+
- `setTrackReplacement()` и `setTrackReplacements()` регистрируют источники подменённых треков;
|
|
91
|
+
- `removeTrackReplacement()` и `clearTrackReplacements()` удаляют только подмены текущего аддона.
|
|
92
|
+
|
|
93
|
+
Все capability-методы асинхронные, а WebHost автоматически очищает зарегистрированные подмены при остановке аддона.
|
|
94
|
+
|
|
85
95
|
Передайте тот же `settings` сборщику. Схема попадёт в `metadata.json`, а пользовательские значения PulseSync сохранит отдельно. `handleEvents.json` WebHost-аддону не нужен.
|
|
86
96
|
|
|
87
97
|
Поддерживаемые типы: `boolean`, `number`, `select`, `text`, `color`, `file`.
|
package/dist/addon/index.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
export { default, defineAddon } from './defineAddon.js';
|
|
2
2
|
export { PULSESYNC_WEB_HOST_API_VERSION } from './version.js';
|
|
3
|
-
export type { PulseSyncAddonApi, PulseSyncAddonCleanup, PulseSyncAddonComponent, PulseSyncAddonComponentProps, PulseSyncAddonDefinition, PulseSyncAddonFactory, PulseSyncAddonLogger, PulseSyncAddonMount, PulseSyncAddonMountTarget, PulseSyncAddonOptions, PulseSyncWebHostApi, } from './types.js';
|
|
3
|
+
export type { PulseSyncAddonApi, PulseSyncAddonCleanup, PulseSyncAddonComponent, PulseSyncAddonComponentProps, PulseSyncAddonDefinition, PulseSyncAddonFactory, PulseSyncAddonLogger, PulseSyncAddonMount, PulseSyncAddonMountTarget, PulseSyncAddonOptions, PulseSyncPageEntity, PulseSyncWebHostCapabilities, PulseSyncWebHostApi, } from './types.js';
|
|
4
4
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/addon/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAA;AACvD,OAAO,EAAE,8BAA8B,EAAE,MAAM,cAAc,CAAA;AAC7D,YAAY,EACR,iBAAiB,EACjB,qBAAqB,EACrB,uBAAuB,EACvB,4BAA4B,EAC5B,wBAAwB,EACxB,qBAAqB,EACrB,oBAAoB,EACpB,mBAAmB,EACnB,yBAAyB,EACzB,qBAAqB,EACrB,mBAAmB,GACtB,MAAM,YAAY,CAAA"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/addon/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAA;AACvD,OAAO,EAAE,8BAA8B,EAAE,MAAM,cAAc,CAAA;AAC7D,YAAY,EACR,iBAAiB,EACjB,qBAAqB,EACrB,uBAAuB,EACvB,4BAA4B,EAC5B,wBAAwB,EACxB,qBAAqB,EACrB,oBAAoB,EACpB,mBAAmB,EACnB,yBAAyB,EACzB,qBAAqB,EACrB,mBAAmB,EACnB,4BAA4B,EAC5B,mBAAmB,GACtB,MAAM,YAAY,CAAA"}
|
package/dist/addon/types.d.ts
CHANGED
|
@@ -7,9 +7,23 @@ export type PulseSyncAddonLogger = {
|
|
|
7
7
|
warn: (...args: unknown[]) => void;
|
|
8
8
|
error: (...args: unknown[]) => void;
|
|
9
9
|
};
|
|
10
|
+
export type PulseSyncPageEntity = {
|
|
11
|
+
readonly revision: number;
|
|
12
|
+
readonly type: 'album' | 'playlist' | 'artist';
|
|
13
|
+
readonly entity: unknown;
|
|
14
|
+
};
|
|
15
|
+
export type PulseSyncWebHostCapabilities = {
|
|
16
|
+
getPageEntity: (options?: {
|
|
17
|
+
readonly includeArtistBrief?: boolean;
|
|
18
|
+
}) => Promise<PulseSyncPageEntity | null>;
|
|
19
|
+
setTrackReplacement: (trackId: string, url: string) => Promise<boolean>;
|
|
20
|
+
setTrackReplacements: (replacements: Readonly<Record<string, string>>) => Promise<number>;
|
|
21
|
+
removeTrackReplacement: (trackId: string) => Promise<boolean>;
|
|
22
|
+
clearTrackReplacements: () => Promise<boolean>;
|
|
23
|
+
};
|
|
10
24
|
export type PulseSyncAddonApi = {
|
|
11
25
|
readonly addonId: string;
|
|
12
|
-
readonly pulsesyncApi: PulseSyncApi | undefined;
|
|
26
|
+
readonly pulsesyncApi: (PulseSyncApi & PulseSyncWebHostCapabilities) | undefined;
|
|
13
27
|
readonly logger: PulseSyncAddonLogger;
|
|
14
28
|
};
|
|
15
29
|
export type PulseSyncAddonComponentProps = {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/addon/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,OAAO,CAAA;AAC1C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAA;AAC5D,OAAO,KAAK,EAAE,gCAAgC,EAAE,MAAM,sBAAsB,CAAA;AAE5E,MAAM,MAAM,qBAAqB,GAAG,MAAM,IAAI,CAAA;AAE9C,MAAM,MAAM,oBAAoB,GAAG;IAC/B,IAAI,EAAE,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,IAAI,CAAA;IAClC,IAAI,EAAE,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,IAAI,CAAA;IAClC,KAAK,EAAE,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,IAAI,CAAA;CACtC,CAAA;AAED,MAAM,MAAM,iBAAiB,GAAG;IAC5B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;IACxB,QAAQ,CAAC,YAAY,EAAE,YAAY,GAAG,SAAS,CAAA;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/addon/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,OAAO,CAAA;AAC1C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAA;AAC5D,OAAO,KAAK,EAAE,gCAAgC,EAAE,MAAM,sBAAsB,CAAA;AAE5E,MAAM,MAAM,qBAAqB,GAAG,MAAM,IAAI,CAAA;AAE9C,MAAM,MAAM,oBAAoB,GAAG;IAC/B,IAAI,EAAE,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,IAAI,CAAA;IAClC,IAAI,EAAE,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,IAAI,CAAA;IAClC,KAAK,EAAE,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,IAAI,CAAA;CACtC,CAAA;AAED,MAAM,MAAM,mBAAmB,GAAG;IAC9B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;IACzB,QAAQ,CAAC,IAAI,EAAE,OAAO,GAAG,UAAU,GAAG,QAAQ,CAAA;IAC9C,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAA;CAC3B,CAAA;AAED,MAAM,MAAM,4BAA4B,GAAG;IACvC,aAAa,EAAE,CAAC,OAAO,CAAC,EAAE;QAAE,QAAQ,CAAC,kBAAkB,CAAC,EAAE,OAAO,CAAA;KAAE,KAAK,OAAO,CAAC,mBAAmB,GAAG,IAAI,CAAC,CAAA;IAC3G,mBAAmB,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,KAAK,OAAO,CAAC,OAAO,CAAC,CAAA;IACvE,oBAAoB,EAAE,CAAC,YAAY,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,KAAK,OAAO,CAAC,MAAM,CAAC,CAAA;IACzF,sBAAsB,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,OAAO,CAAC,OAAO,CAAC,CAAA;IAC7D,sBAAsB,EAAE,MAAM,OAAO,CAAC,OAAO,CAAC,CAAA;CACjD,CAAA;AAED,MAAM,MAAM,iBAAiB,GAAG;IAC5B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;IACxB,QAAQ,CAAC,YAAY,EAAE,CAAC,YAAY,GAAG,4BAA4B,CAAC,GAAG,SAAS,CAAA;IAChF,QAAQ,CAAC,MAAM,EAAE,oBAAoB,CAAA;CACxC,CAAA;AAED,MAAM,MAAM,4BAA4B,GAAG;IACvC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;IACxB,QAAQ,CAAC,GAAG,EAAE,iBAAiB,CAAA;CAClC,CAAA;AAED,MAAM,MAAM,uBAAuB,GAAG,aAAa,CAAC,4BAA4B,CAAC,CAAA;AAEjF,MAAM,MAAM,yBAAyB,GACjC,OAAO,GAAG,MAAM,GAAG,CAAC,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG;IAAE,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,GAAG;IAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAAA;AAEzG,MAAM,MAAM,mBAAmB,GAAG;IAC9B,QAAQ,CAAC,MAAM,EAAE,yBAAyB,CAAA;IAC1C,QAAQ,CAAC,SAAS,EAAE,uBAAuB,CAAA;CAC9C,CAAA;AAED,MAAM,MAAM,qBAAqB,GAAG;IAChC,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAA;IACnB,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAA;IACtB,QAAQ,CAAC,SAAS,CAAC,EAAE,uBAAuB,CAAA;IAC5C,QAAQ,CAAC,KAAK,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,uBAAuB,CAAC,CAAC,CAAA;IAClE,QAAQ,CAAC,MAAM,CAAC,EAAE,SAAS,mBAAmB,EAAE,CAAA;IAChD,QAAQ,CAAC,QAAQ,CAAC,EAAE,gCAAgC,CAAA;IACpD,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC,GAAG,EAAE,iBAAiB,KAAK,IAAI,GAAG,qBAAqB,CAAA;IACzE,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,GAAG,EAAE,iBAAiB,KAAK,IAAI,CAAA;CACnD,CAAA;AAED,MAAM,MAAM,wBAAwB,GAAG,IAAI,CAAC,qBAAqB,EAAE,UAAU,GAAG,OAAO,GAAG,MAAM,CAAC,GAAG;IAChG,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;IAC3B,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC,GAAG,EAAE,iBAAiB,KAAK,IAAI,GAAG,qBAAqB,CAAA;CAC/E,CAAA;AAED,MAAM,MAAM,qBAAqB,GAAG,CAChC,IAAI,EAAE,mBAAmB,KACxB,IAAI,GAAG,wBAAwB,GAAG,OAAO,CAAC,IAAI,GAAG,wBAAwB,CAAC,CAAA;AAE/E,MAAM,MAAM,mBAAmB,GAAG;IAC9B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;IAC3B,QAAQ,CAAC,KAAK,EAAE,cAAc,OAAO,CAAC,CAAA;IACtC,QAAQ,CAAC,UAAU,EAAE,cAAc,mBAAmB,CAAC,CAAA;IACvD,QAAQ,CAAC,aAAa,CAAC,EAAE,cAAc,uBAAuB,CAAC,CAAA;IAC/D,YAAY,EAAE,CAAC,OAAO,EAAE,qBAAqB,KAAK,OAAO,CAAC,qBAAqB,GAAG,SAAS,CAAC,CAAA;IAC5F,aAAa,EAAE,CAAC,UAAU,EAAE,wBAAwB,KAAK,qBAAqB,CAAA;IAC9E,eAAe,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,OAAO,CAAA;IAC7C,YAAY,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,KAAK,qBAAqB,CAAA;IAC3E,eAAe,EAAE,MAAM,YAAY,GAAG,SAAS,CAAA;CAClD,CAAA"}
|
|
@@ -14,7 +14,5 @@ type ValidateSettingsSchema<TSchema extends PulseSyncSettingsSchema> = {
|
|
|
14
14
|
};
|
|
15
15
|
export declare function bindAddonSettings(settings: PulseSyncAddonSettingsDefinition, api: PulseSyncAddonApi): () => void;
|
|
16
16
|
export declare function defineAddonSettings<const TSchema extends PulseSyncSettingsSchema>(schema: TSchema & ValidateSettingsSchema<TSchema>, options?: DefineAddonSettingsOptions): PulseSyncAddonSettingsDefinition<TSchema>;
|
|
17
|
-
/** @deprecated Use defineAddonSettings instead. */
|
|
18
|
-
export declare const defineSettings: typeof defineAddonSettings;
|
|
19
17
|
export {};
|
|
20
18
|
//# sourceMappingURL=defineSettings.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"defineSettings.d.ts","sourceRoot":"","sources":["../../src/settings/defineSettings.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAA;AAE1D,OAAO,KAAK,EACR,0BAA0B,EAE1B,gCAAgC,EAChC,gBAAgB,EAChB,uBAAuB,EAC1B,MAAM,YAAY,CAAA;AAEnB,KAAK,iBAAiB,CAAC,QAAQ,IAAI,QAAQ,SAAS;IAChD,QAAQ,CAAC,OAAO,EAAE,SAAS;QAAE,QAAQ,CAAC,KAAK,EAAE,MAAM,MAAM,CAAA;KAAE,EAAE,CAAA;CAChE,GACK,MAAM,GACN,KAAK,CAAA;AAEX,KAAK,eAAe,CAAC,QAAQ,SAAS,gBAAgB,IAAI,QAAQ,SAAS;IACvE,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAA;IACvB,QAAQ,CAAC,OAAO,EAAE,MAAM,QAAQ,CAAA;CACnC,GACK,QAAQ,SAAS,iBAAiB,CAAC,QAAQ,CAAC,GACxC,QAAQ,GACR,KAAK,GACT,QAAQ,CAAA;AAEd,KAAK,sBAAsB,CAAC,OAAO,SAAS,uBAAuB,IAAI;IACnE,QAAQ,EAAE,IAAI,IAAI,MAAM,OAAO,GAAG,eAAe,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;CACnE,CAAA;
|
|
1
|
+
{"version":3,"file":"defineSettings.d.ts","sourceRoot":"","sources":["../../src/settings/defineSettings.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAA;AAE1D,OAAO,KAAK,EACR,0BAA0B,EAE1B,gCAAgC,EAChC,gBAAgB,EAChB,uBAAuB,EAC1B,MAAM,YAAY,CAAA;AAEnB,KAAK,iBAAiB,CAAC,QAAQ,IAAI,QAAQ,SAAS;IAChD,QAAQ,CAAC,OAAO,EAAE,SAAS;QAAE,QAAQ,CAAC,KAAK,EAAE,MAAM,MAAM,CAAA;KAAE,EAAE,CAAA;CAChE,GACK,MAAM,GACN,KAAK,CAAA;AAEX,KAAK,eAAe,CAAC,QAAQ,SAAS,gBAAgB,IAAI,QAAQ,SAAS;IACvE,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAA;IACvB,QAAQ,CAAC,OAAO,EAAE,MAAM,QAAQ,CAAA;CACnC,GACK,QAAQ,SAAS,iBAAiB,CAAC,QAAQ,CAAC,GACxC,QAAQ,GACR,KAAK,GACT,QAAQ,CAAA;AAEd,KAAK,sBAAsB,CAAC,OAAO,SAAS,uBAAuB,IAAI;IACnE,QAAQ,EAAE,IAAI,IAAI,MAAM,OAAO,GAAG,eAAe,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;CACnE,CAAA;AAYD,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,gCAAgC,EAAE,GAAG,EAAE,iBAAiB,GAAG,MAAM,IAAI,CAIhH;AAED,wBAAgB,mBAAmB,CAAC,KAAK,CAAC,OAAO,SAAS,uBAAuB,EAC7E,MAAM,EAAE,OAAO,GAAG,sBAAsB,CAAC,OAAO,CAAC,EACjD,OAAO,GAAE,0BAA+B,GACzC,gCAAgC,CAAC,OAAO,CAAC,CAkE3C"}
|
|
@@ -1,12 +1,9 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { useSyncExternalStore } from 'react';
|
|
2
2
|
import { createSettingsConfig, createSettingsDefaults, resolveSettingsValues } from './schema.js';
|
|
3
3
|
const settingsBinders = new WeakMap();
|
|
4
4
|
function freezeValues(values) {
|
|
5
5
|
return Object.freeze(values);
|
|
6
6
|
}
|
|
7
|
-
function isAddonApi(value) {
|
|
8
|
-
return Boolean(value && !Array.isArray(value) && typeof value === 'object' && 'addonId' in value);
|
|
9
|
-
}
|
|
10
7
|
export function bindAddonSettings(settings, api) {
|
|
11
8
|
const bind = settingsBinders.get(settings);
|
|
12
9
|
if (!bind)
|
|
@@ -35,26 +32,11 @@ export function defineAddonSettings(schema, options = {}) {
|
|
|
35
32
|
}
|
|
36
33
|
return currentValues;
|
|
37
34
|
};
|
|
38
|
-
function use(
|
|
39
|
-
const
|
|
40
|
-
|
|
41
|
-
useEffect(() => {
|
|
42
|
-
if (!legacyApi)
|
|
43
|
-
return;
|
|
44
|
-
const store = legacyApi.pulsesyncApi?.getSettings(legacyApi.addonId);
|
|
45
|
-
if (!store) {
|
|
46
|
-
setLegacyValues(defaults);
|
|
47
|
-
return;
|
|
48
|
-
}
|
|
49
|
-
const updateLegacyValues = (current) => setLegacyValues(freezeValues(resolveSettingsValues(frozenSchema, current)));
|
|
50
|
-
updateLegacyValues(store.getCurrent());
|
|
51
|
-
return store.onChange(updateLegacyValues);
|
|
52
|
-
}, [legacyApi]);
|
|
53
|
-
const boundValues = useSyncExternalStore(subscribe, legacyApi ? () => defaults : getSnapshot, () => defaults);
|
|
54
|
-
const values = legacyApi ? legacyValues : boundValues;
|
|
55
|
-
if (!Array.isArray(apiOrKeys))
|
|
35
|
+
function use(keys) {
|
|
36
|
+
const values = useSyncExternalStore(subscribe, getSnapshot, () => defaults);
|
|
37
|
+
if (!keys)
|
|
56
38
|
return values;
|
|
57
|
-
return Object.fromEntries(
|
|
39
|
+
return Object.fromEntries(keys.map((key) => [key, values[key]]));
|
|
58
40
|
}
|
|
59
41
|
const definition = {
|
|
60
42
|
schema: frozenSchema,
|
|
@@ -87,6 +69,4 @@ export function defineAddonSettings(schema, options = {}) {
|
|
|
87
69
|
});
|
|
88
70
|
return Object.freeze(definition);
|
|
89
71
|
}
|
|
90
|
-
/** @deprecated Use defineAddonSettings instead. */
|
|
91
|
-
export const defineSettings = defineAddonSettings;
|
|
92
72
|
//# sourceMappingURL=defineSettings.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"defineSettings.js","sourceRoot":"","sources":["../../src/settings/defineSettings.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"defineSettings.js","sourceRoot":"","sources":["../../src/settings/defineSettings.ts"],"names":[],"mappings":"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"}
|
package/dist/settings/index.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export { defineAddonSettings
|
|
1
|
+
export { defineAddonSettings } from './defineSettings.js';
|
|
2
2
|
export { SettingType } from './types.js';
|
|
3
|
-
export type { DefineAddonSettingsOptions,
|
|
3
|
+
export type { DefineAddonSettingsOptions, InferPulseSyncSettings, PulseSyncAddonSettingsDefinition, PulseSyncSetting, PulseSyncSettingValue, PulseSyncSettingsConfig, PulseSyncSettingsSchema, } from './types.js';
|
|
4
4
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/settings/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/settings/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAA;AACzD,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAA;AACxC,YAAY,EACR,0BAA0B,EAC1B,sBAAsB,EACtB,gCAAgC,EAChC,gBAAgB,EAChB,qBAAqB,EACrB,uBAAuB,EACvB,uBAAuB,GAC1B,MAAM,YAAY,CAAA"}
|
package/dist/settings/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/settings/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/settings/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAA;AACzD,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAA"}
|
package/dist/settings/types.d.ts
CHANGED
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import type { PulseSyncAddonApi } from '../addon/types.js';
|
|
2
1
|
export declare const SettingType: Readonly<{
|
|
3
2
|
readonly BOOLEAN: 'boolean';
|
|
4
3
|
readonly COLOR: 'color';
|
|
@@ -51,15 +50,12 @@ export type PulseSyncAddonSettingsDefinition<TSchema extends PulseSyncSettingsSc
|
|
|
51
50
|
readonly store: InferPulseSyncSettings<TSchema>;
|
|
52
51
|
use: {
|
|
53
52
|
(): InferPulseSyncSettings<TSchema>;
|
|
54
|
-
(api: PulseSyncAddonApi): InferPulseSyncSettings<TSchema>;
|
|
55
53
|
<const TKey extends keyof TSchema>(keys: readonly TKey[]): Pick<InferPulseSyncSettings<TSchema>, TKey>;
|
|
56
54
|
};
|
|
57
55
|
toConfig: () => PulseSyncSettingsConfig;
|
|
58
56
|
};
|
|
59
|
-
export type PulseSyncSettingsDefinition<TSchema extends PulseSyncSettingsSchema = PulseSyncSettingsSchema> = PulseSyncAddonSettingsDefinition<TSchema>;
|
|
60
57
|
export type DefineAddonSettingsOptions = {
|
|
61
58
|
readonly title?: string;
|
|
62
59
|
};
|
|
63
|
-
export type DefineSettingsOptions = DefineAddonSettingsOptions;
|
|
64
60
|
export {};
|
|
65
61
|
//# sourceMappingURL=types.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/settings/types.ts"],"names":[],"mappings":"AAAA,
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/settings/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/settings/types.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/settings/types.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,WAAW,GAAG,MAAM,CAAC,MAAM,CAAC;IACrC,OAAO,EAAE,SAAS;IAClB,KAAK,EAAE,OAAO;IACd,MAAM,EAAE,MAAM;IACd,IAAI,EAAE,MAAM;IACZ,MAAM,EAAE,QAAQ;IAChB,MAAM,EAAE,QAAQ;CACV,CAAC,CAAA"}
|
package/dist/vite/types.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type {
|
|
1
|
+
import type { PulseSyncAddonSettingsDefinition } from '../settings/types.js';
|
|
2
2
|
export type PulseSyncAddonManifest = {
|
|
3
3
|
readonly id: string;
|
|
4
4
|
readonly directoryName: string;
|
|
@@ -16,7 +16,7 @@ export type PulseSyncAddonManifest = {
|
|
|
16
16
|
};
|
|
17
17
|
export type PulseSyncAddonViteOptions = {
|
|
18
18
|
readonly manifest: PulseSyncAddonManifest;
|
|
19
|
-
readonly settings?:
|
|
19
|
+
readonly settings?: PulseSyncAddonSettingsDefinition;
|
|
20
20
|
readonly entry?: string;
|
|
21
21
|
readonly staticDir?: string | false;
|
|
22
22
|
readonly outDir?: string;
|
package/dist/vite/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/vite/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/vite/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gCAAgC,EAAE,MAAM,sBAAsB,CAAA;AAE5E,MAAM,MAAM,sBAAsB,GAAG;IACjC,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAA;IACnB,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAA;IAC9B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAA;IAC7B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;IACxB,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,MAAM,EAAE,CAAA;IAC5C,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAA;IACvB,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAA;IACxB,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAA;IAC7B,QAAQ,CAAC,IAAI,CAAC,EAAE,SAAS,MAAM,EAAE,CAAA;IACjC,QAAQ,CAAC,YAAY,CAAC,EAAE,SAAS,MAAM,EAAE,CAAA;IACzC,QAAQ,CAAC,WAAW,CAAC,EAAE,SAAS,MAAM,EAAE,CAAA;IACxC,QAAQ,CAAC,iBAAiB,CAAC,EAAE,SAAS,MAAM,EAAE,CAAA;CACjD,CAAA;AAED,MAAM,MAAM,yBAAyB,GAAG;IACpC,QAAQ,CAAC,QAAQ,EAAE,sBAAsB,CAAA;IACzC,QAAQ,CAAC,QAAQ,CAAC,EAAE,gCAAgC,CAAA;IACpD,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAA;IACvB,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,KAAK,CAAA;IACnC,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAA;IACxB,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAA;IAC5B,QAAQ,CAAC,MAAM,CAAC,EAAE,OAAO,GAAG,SAAS,GAAG,KAAK,GAAG,QAAQ,CAAA;IACxD,QAAQ,CAAC,SAAS,CAAC,EAAE,OAAO,CAAA;IAC5B,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAA;CAC3B,CAAA"}
|