Skip to content

@burnmark-io/designer-core


@burnmark-io/designer-core / LabelDesigner

Class: LabelDesigner

Defined in: packages/core/src/designer.ts:35

Main entry point for the label designer. Manages document state, history, and (in later steps) rendering.

Selection is NOT managed here — it's UI state and belongs in the framework binding layer (Vue composable, React hook, application code).

Constructors

Constructor

new LabelDesigner(options?): LabelDesigner

Defined in: packages/core/src/designer.ts:41

Parameters

options?

DesignerOptions = {}

Returns

LabelDesigner

Properties

assetLoader

readonly assetLoader: AssetLoader

Defined in: packages/core/src/designer.ts:39

Accessors

canRedo

Get Signature

get canRedo(): boolean

Defined in: packages/core/src/designer.ts:192

Returns

boolean


canUndo

Get Signature

get canUndo(): boolean

Defined in: packages/core/src/designer.ts:188

Returns

boolean


document

Get Signature

get document(): LabelDocument

Defined in: packages/core/src/designer.ts:56

The current document state. Do NOT mutate directly — use add/update/remove/setCanvas which track history. Returned object is the live snapshot; mutations are not enforced against.

Returns

LabelDocument

Methods

add()

add(object): string

Defined in: packages/core/src/designer.ts:87

Parameters

object

LabelObjectInput

Returns

string


applyVariables()

applyVariables(variables): LabelDocument

Defined in: packages/core/src/designer.ts:234

Parameters

variables

Record<string, string>

Returns

LabelDocument


clearHistory()

clearHistory(): void

Defined in: packages/core/src/designer.ts:196

Returns

void


fromJSON()

fromJSON(json): void

Defined in: packages/core/src/designer.ts:81

Parameters

json

string

Returns

void


get()

get(id): LabelObject | undefined

Defined in: packages/core/src/designer.ts:151

Parameters

id

string

Returns

LabelObject | undefined


getAll()

getAll(): LabelObject[]

Defined in: packages/core/src/designer.ts:158

Returns

LabelObject[]


getPlaceholders()

getPlaceholders(): string[]

Defined in: packages/core/src/designer.ts:230

Returns

string[]


loadDocument()

loadDocument(doc): void

Defined in: packages/core/src/designer.ts:60

Parameters

doc

LabelDocument

Returns

void


newDocument()

newDocument(canvas?, name?): void

Defined in: packages/core/src/designer.ts:69

Parameters

canvas?

Partial<CanvasConfig> = {}

name?

string

Returns

void


off()

off(event, handler): void

Defined in: packages/core/src/designer.ts:208

Parameters

event

DesignerEvent

handler

EventHandler

Returns

void


on()

on(event, handler): () => void

Defined in: packages/core/src/designer.ts:204

Parameters

event

DesignerEvent

handler

EventHandler

Returns

() => void


redo()

redo(): void

Defined in: packages/core/src/designer.ts:180

Returns

void


remove()

remove(id): void

Defined in: packages/core/src/designer.ts:108

Parameters

id

string

Returns

void


render()

render(variables?): Promise<RawImageData>

Defined in: packages/core/src/designer.ts:215

Full-colour RGBA render of the document. No 1bpp conversion.

Parameters

variables?

Record<string, string>

Returns

Promise<RawImageData>


renderBatch()

renderBatch(rows): AsyncGenerator<BatchResult>

Defined in: packages/core/src/designer.ts:262

Render a batch of labels from CSV rows, one per row. Yields each BatchResult so the consumer can print it and let it be garbage collected before the next is produced.

Parameters

rows

Record<string, string>[]

Returns

AsyncGenerator<BatchResult>


renderToBitmap()

renderToBitmap(variables?): Promise<LabelBitmap>

Defined in: packages/core/src/designer.ts:223

Single-plane 1bpp render. All objects → black, Floyd–Steinberg dithered.

Parameters

variables?

Record<string, string>

Returns

Promise<LabelBitmap>


reorder()

reorder(id, direction): void

Defined in: packages/core/src/designer.ts:115

Parameters

id

string

direction

ReorderDirection

Returns

void


setCanvas()

setCanvas(patch): void

Defined in: packages/core/src/designer.ts:164

Parameters

patch

Partial<CanvasConfig>

Returns

void


toJSON()

toJSON(): string

Defined in: packages/core/src/designer.ts:77

Returns

string


undo()

undo(): void

Defined in: packages/core/src/designer.ts:172

Returns

void


update()

update(id, patch): void

Defined in: packages/core/src/designer.ts:96

Parameters

id

string

patch

Partial<LabelObject>

Returns

void


toBitmap()

static toBitmap(rgba, options?): LabelBitmap

Defined in: packages/core/src/designer.ts:250

Expose toBitmap for callers who already have RGBA pixels.

Parameters

rgba

RawImageData

options?
dither?

boolean

invert?

boolean

threshold?

number

Returns

LabelBitmap

Not affiliated with Dymo, Brother, Avery, or any hardware vendor.