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

Returns ​

boolean


canUndo ​

Get Signature ​

get canUndo(): boolean

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

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

Parameters ​

variables ​

Record<string, string>

Returns ​

LabelDocument


clearHistory() ​

clearHistory(): void

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

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

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

Parameters ​

event ​

DesignerEvent

handler ​

EventHandler

Returns ​

void


on() ​

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

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

Parameters ​

event ​

DesignerEvent

handler ​

EventHandler

Returns ​

() => void


redo() ​

redo(): void

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

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

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

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

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


setOrientation() ​

setOrientation(orientation): void

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

Convenience wrapper around setCanvas({ orientation }). Display orientation only — render always produces a canonical widthDots × heightDots bitmap; downstream exporters and display helpers may swap axes when set to 'horizontal'.

Parameters ​

orientation ​

"vertical" | "horizontal"

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

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

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.