0.0.3 • Published 7 months ago

directus-extension-niimbot-operation v0.0.3

Weekly downloads
-
License
MIT
Repository
github
Last release
7 months ago

Directus Label Printer Extension

⚠️ Note: This extension is currently under development and not ready for production use. Features and APIs may change without notice.

A Directus extension that allows you to print HTML content to B32 printers.

Features

  • HTML to print data conversion
  • Print preview support
  • Multiple label templates
  • USB and WIFI printer connection support
  • B32 printer support

Installation

  1. Install dependencies and build the extension:
# Install dependencies
npm install

# Build the extension
npm run build
  1. Copy the built files to your Directus extensions directory:

Windows:

xcopy /E /I dist "C:\path\to\directus\extensions\directus-extension-label-printer"

Linux/Mac:

cp -r dist/* /path/to/directus/extensions/directus-extension-label-printer/
  1. Restart your Directus server

Usage

Basic Usage

  1. Add "Label Printer" operation in Flow
  2. Input HTML content
  3. Select printer model
  4. Execute printing

HTML Template Examples

  1. Basic Text:
<p>Plain text content</p>
  1. Barcode:
<div data-type="barcode" data-value="12345678">Barcode content</div>
  1. QR Code:
<div data-type="qrcode" data-value="https://example.com">QR code content</div>

Predefined Templates

  1. Asset Label:
<div data-template="asset">
  <div data-field="name">Asset Name</div>
  <div data-field="department">Department</div>
  <div data-field="date">Date</div>
  <div data-field="assetId">Asset ID</div>
</div>
  1. Warehouse Label:
<div data-template="warehouse">
  <div data-field="name">Product Name</div>
  <div data-field="quantity">Quantity</div>
  <div data-field="location">Location</div>
  <div data-field="productId">Product ID</div>
</div>
  1. Inspection Label:
<div data-template="inspection">
  <div data-field="batchId">Batch ID</div>
  <div data-field="result">Inspection Result</div>
  <div data-field="inspector">Inspector</div>
  <div data-field="date">Date</div>
</div>

Troubleshooting

  1. Printer Connection Issues

    • Ensure printer is properly connected to the computer
    • Check if printer drivers are correctly installed
    • Try reconnecting the printer
  2. Print Content Issues

    • Verify HTML content format is correct
    • Ensure all required fields are filled
    • Check if preview looks as expected
  3. Other Issues

    • Check browser console for error messages
    • Review Directus log files
    • Try restarting Directus server

Development

# Install dependencies
npm install

# Development mode (live build)
npm run dev

# Build
npm run build

# Link to Directus (requires path modification in package.json)
npm run link

License

MIT