Git Product home page Git Product logo

react-dymo's Introduction

react-dymo

Collections of javascript and react utilities to handle the Dymo LabelWriter web service.

NPM JavaScript Style Guide

Install

npm install --save react-dymo-hooks

or

yarn add react-dymo-hooks

API

printLabel()

Print Dymo labels

Arguments

  • {string} printerName - The Dymo Printer to print on
  • {string} labelXml - Label XML parsed to string
  • {string} labelSetXml - LabelSet to print. LabelSet is used to print multiple labels with same layout but different data, e.g. multiple addresses.

useDymoCheckService()

Return the status of DYMO Label Web Service

Arguments

  • port: The port of running DYMO Label Web Service. (For defualt is the 41951)

Returns

  • status: "initial" | "loading" | "success" | "error" Status of DYMO Label Web Service.

useDymoFetchPrinters()

Returns the available DYMO Labelwriter Printer

Arguments

  • statusDymoService: The status of DYMO Label Web Service. (Use the status returned fot the useDymoCheckService() hook)
  • modelPrinter: The model of label writer printer.
  • port: The port of running DYMO Label Web Service. (For defualt is the 41951)

Returns

Object containing:

  • statusFetchPrinters: "initial" | "loading" | "success" | "error" Status of loading printers.
  • printers: The list of available DYMO Printer.
  • error.

useDymoOpenLabel()

Render Label

Arguments

  • statusDymoService: The status of DYMO Label Web Service. (Use the status returned fot the useDymoCheckService() hook)
  • labelXML: XML file.
  • port: The port of running DYMO Label Web Service. (For defualt is the 41951)

Returns

Object containing:

  • statusOpenLabel: "initial" | "loading" | "success" | "error" Status of open label.
  • label.
  • error.

Run examples

Inside the root directory project

  1. Switch to the directory example/
  2. yarn install or npm install
  3. yarn run start or npm run-script start

Examples

Print a Dymo Label

import {printLabel} from "react-dymo-hooks";

async function handlePrintSingleLabel(printerName, labelXml) {
  try {
    const response = await printLabel(printerName, labelXml);
    console.info(response);
  } catch (error) {
    console.error(error);
  }
}

<button onClick={() => handlePrintLabel(printer, xml)} />;
import {useDymoOpenLabel, useDymoCheckService} from "react-dymo-hooks";

const DymoLabelPreview = () => {
  const statusDymoService = useDymoCheckService();
  const {label, statusOpenLabel, errorOpenLabel} = useDymoOpenLabel(statusDymoService, xmlFile);

  if (label) {
    return <img src={"data:image/png;base64," + label} alt="dymo label preview" />;
  } else {
    return null;
  }
};

License

MIT ยฉ apenab

react-dymo's People

Contributors

apenab avatar dependabot[bot] avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

react-dymo's Issues

Connection refused, CORS error

Hello, I came across your solution as I need to print dymo labels from my app.

When I implemented your sample code, I keep getting Connection Refused error from Chrome. It seems like a CORS issue.

Do you know what steps need to be take to resolve this?

Multiple labels in one job

Hi, is there also any possibility to print multiple labels in one job. In the original documentation there is something like dymo.label.framework.LabelSetBuilder. How can I achieve this with the dymo-react-hooks?

Less renders

Is there any way you can get this to render once instead of 4 times?

Remove react-dom from dependencies

It's only used by the example project and it has it's own package.json to it can have installed there and not in the hook.

Also you should think about moving react an axios to peerDependencies

Add function for print label

Hello,

I like your work at react-dymo-hooks! It is very easy to read status and printers.

I do not see how I can print using one of the printers. Could you tell me how to do that?

Thank you!

Printing blanks from Windows computer

I am using this library with great success in Chrome on a Mac but it is priting blanks on windows. I've confirmed that the xml I am creating to send to the print job is correct/the same as it is on mac but unable to successfully print on windows. I am able to print with the dymo software but not from the webpage.

Here is my xml for reference in case that is helpful

<LabelSet><LabelRecord>
        <ObjectData Name="TEXT">
          <StyledText>
            <Element>
              <String>Client: FooBar Client
ID: 123 Drury Lane
Due Date: 09/29/2021
Test: Foo</String>
              <Attributes>
                <Font Family="Helvetica" Size="13" Bold="False" Italic="False" Underline="False" Strikeout="False"/>
                <ForeColor Alpha="255" Red="0" Green="0" Blue="0"/>
              </Attributes>
            </Element>
          </StyledText>
        </ObjectData>
        <ObjectData Name="GRAPHIC">
          <Image>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</Image>
        </ObjectData>
        <ObjectData Name="GRAPHIC_1">
          <Image>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</Image>
        </ObjectData>
    </LabelRecord>
</LabelSet>

Feature Request -- add non hook methods

I am using this plugin in a mixed environment where I have both class components and function components.

Is there a way to import the dymoCheckService and dymoRequestBuilder into class components?

Thanks

When trying to use useDymoCheckService I get "Uncaught Error: Invalid hook call."

Hi, there seems to be an issue with useDymoCheckService()

When trying to use it it throws an error.

`Uncaught Error: Invalid hook call. Hooks can only be called inside of the body of a function component. This could happen for one of the following reasons:

  1. You might have mismatching versions of React and the renderer (such as React DOM)
  2. You might be breaking the Rules of Hooks
  3. You might have more than one copy of React in the same app
    See https://fb.me/react-invalid-hook-call for tips about how to debug and fix this problem.`

This is pretty simple to reproduce.
1.- Start a new react project
npx create-react-app dymo-demo
2.- cd dymo-demo/
3.- npm install react-dymo-hooks
4.- Open the code and in App.js simply call the useDymoCheckService() method like so...

App_js_โ€”_dymo-demo

5.- npm start

Result
Blank screen with the error in the console. Following the debugger is pointing at this part of the code..

React_App

My package.json looks like this...

{
"name": "dymo-demo",
"version": "0.1.0",
"private": true,
"dependencies": {
"@testing-library/jest-dom": "^5.16.5",
"@testing-library/react": "^13.4.0",
"@testing-library/user-event": "^13.5.0",
"react": "^18.2.0",
"react-dom": "^18.2.0",
"react-dymo-hooks": "^2.0.2",
"react-scripts": "5.0.1",
"web-vitals": "^2.1.4"
},
"scripts": {
"start": "react-scripts start",
"build": "react-scripts build",
"test": "react-scripts test",
"eject": "react-scripts eject"
},
"eslintConfig": {
"extends": [
"react-app",
"react-app/jest"
]
},
"browserslist": {
"production": [
">0.2%",
"not dead",
"not op_mini all"
],
"development": [
"last 1 chrome version",
"last 1 firefox version",
"last 1 safari version"
]
}
}

Bug with dymo web service

Hi there, I have installed the last version of the dymo web service on windows later on I have installed this package using the instructions on the Readme.md. I can't perform any operation with this library and I get errors in the requests. I'm using the latest version of the dymo web service and the latest version of this package

Emojis

Ay thoughts on how to print emojis? They print using Dymo connect and with legacy javascript dymo.framework js but I can't seem to get one to print in react using this package.

Just adding ๐Ÿ‘‹ into your label string is how to recreate.

Screenshot 2023-10-18 at 12 45 32

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.