Skip to content

craft-hub / CraftHubSettingsService

Class: CraftHubSettingsService ​

Defined in: packages/craft-hub/src/settings.ts:286

Owns validated global settings, import/export, and external file change observation.

Constructors ​

Constructor ​

new CraftHubSettingsService(dataDir, applicationVersion?): CraftHubSettingsService

Defined in: packages/craft-hub/src/settings.ts:300

Parameters ​

dataDir ​

string

applicationVersion? ​

string = craftHubVersion

Returns ​

CraftHubSettingsService

Properties ​

applicationVersion ​

readonly applicationVersion: string = craftHubVersion

Defined in: packages/craft-hub/src/settings.ts:300


dataDir ​

readonly dataDir: string

Defined in: packages/craft-hub/src/settings.ts:300


path ​

readonly path: string

Defined in: packages/craft-hub/src/settings.ts:287


schemaPath ​

readonly schemaPath: string

Defined in: packages/craft-hub/src/settings.ts:288

Methods ​

close() ​

close(): Promise<void>

Defined in: packages/craft-hub/src/settings.ts:436

Stop watching the settings file.

Returns ​

Promise<void>


ensureFile() ​

ensureFile(): Promise<string>

Defined in: packages/craft-hub/src/settings.ts:324

Ensure the editable settings file exists and return its absolute path.

Returns ​

Promise<string>


export() ​

export(mode): Promise<SettingsExportEnvelope>

Defined in: packages/craft-hub/src/settings.ts:356

Create a portable, versioned settings export.

Parameters ​

mode ​

SettingsExportMode

Returns ​

Promise<SettingsExportEnvelope>


extensionValues() ​

extensionValues(): Promise<Record<string, unknown>>

Defined in: packages/craft-hub/src/settings.ts:313

Return opaque extension settings for permission-checked declarative plugin resolution.

Returns ​

Promise<Record<string, unknown>>


get() ​

get(): Promise<SettingsSnapshot>

Defined in: packages/craft-hub/src/settings.ts:307

Read the current effective settings and optimistic-concurrency revision.

Returns ​

Promise<SettingsSnapshot>


import() ​

import(document, strategy, expectedRevision): Promise<SettingsSnapshot>

Defined in: packages/craft-hub/src/settings.ts:402

Apply a previously previewable import atomically, backing up replace operations.

Parameters ​

document ​

unknown

strategy ​

SettingsImportStrategy

expectedRevision ​

string

Returns ​

Promise<SettingsSnapshot>


onChanged() ​

onChanged(listener): () => void

Defined in: packages/craft-hub/src/settings.ts:419

Subscribe to valid settings changes, including external file edits.

Parameters ​

listener ​

(snapshot) => void

Returns ​

() => void


previewImport() ​

previewImport(document, strategy): Promise<SettingsImportPreview>

Defined in: packages/craft-hub/src/settings.ts:373

Validate an import and describe its effect without changing settings.

Parameters ​

document ​

unknown

strategy ​

SettingsImportStrategy

Returns ​

Promise<SettingsImportPreview>


schema() ​

schema(): Record<string, unknown>

Defined in: packages/craft-hub/src/settings.ts:319

Return the editor schema written next to settings.json.

Returns ​

Record<string, unknown>


startWatching() ​

startWatching(): Promise<void>

Defined in: packages/craft-hub/src/settings.ts:425

Watch the public settings file, returning once external edits can be observed.

Returns ​

Promise<void>


update() ​

update(patch, expectedRevision): Promise<SettingsSnapshot>

Defined in: packages/craft-hub/src/settings.ts:338

Update explicit settings after checking the caller's revision. Null resets a key to its default.

Parameters ​

patch ​

Record<string, unknown>

expectedRevision ​

string

Returns ​

Promise<SettingsSnapshot>

Released under the MIT License.