Skip to content

craft-hub / CraftHubSettingsService

Class: CraftHubSettingsService

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

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:235

Parameters

dataDir

string

applicationVersion?

string = craftHubVersion

Returns

CraftHubSettingsService

Properties

applicationVersion

readonly applicationVersion: string = craftHubVersion

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


dataDir

readonly dataDir: string

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


path

readonly path: string

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


schemaPath

readonly schemaPath: string

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

Methods

close()

close(): Promise<void>

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

Stop watching the settings file.

Returns

Promise<void>


ensureFile()

ensureFile(): Promise<string>

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

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:285

Create a portable, versioned settings export.

Parameters

mode

SettingsExportMode

Returns

Promise<SettingsExportEnvelope>


get()

get(): Promise<SettingsSnapshot>

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

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:329

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:346

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:301

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:248

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:352

Watch the public settings file for external edits.

Returns

Promise<void>


update()

update(patch, expectedRevision): Promise<SettingsSnapshot>

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

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.