@operato/scene-label 1.0.0-alpha.21 → 1.0.0-alpha.24

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (33) hide show
  1. package/CHANGELOG.md +33 -0
  2. package/dist/barcode-scanner.js +6 -12
  3. package/dist/barcode-scanner.js.map +1 -1
  4. package/dist/index.d.ts +1 -1
  5. package/dist/label-printer.js +1 -2
  6. package/dist/label-printer.js.map +1 -1
  7. package/helps/scene/component/barcode-scanner.ko.md +1 -1
  8. package/helps/scene/component/barcode-scanner.md +1 -1
  9. package/helps/scene/component/barcode-scanner.zh.md +1 -1
  10. package/logs/.08636eb59927f12972f6774f5947c8507b3564c2-audit.json +14 -4
  11. package/logs/.5e5d741d8b7784a2fbad65eedc0fd46946aaf6f2-audit.json +13 -13
  12. package/logs/application-2022-06-13-11.log +19 -0
  13. package/logs/application-2022-06-20-09.log +4 -0
  14. package/logs/application-2022-06-20-11.log +4 -0
  15. package/logs/application-2022-06-20-12.log +4 -0
  16. package/logs/connections-2022-06-13-11.log +70 -35
  17. package/logs/connections-2022-06-20-09.log +35 -0
  18. package/logs/connections-2022-06-20-11.log +35 -0
  19. package/logs/connections-2022-06-20-12.log +35 -0
  20. package/package.json +8 -7
  21. package/src/barcode-scanner.ts +7 -12
  22. package/src/label-printer.ts +1 -3
  23. package/translations/en.json +1 -1
  24. package/translations/ko.json +1 -1
  25. package/translations/ms.json +3 -3
  26. package/translations/zh.json +3 -3
  27. package/tsconfig.tsbuildinfo +1 -1
  28. package/logs/application-2022-06-15-23.log +0 -4
  29. package/logs/connections-2022-06-09-23.log +0 -70
  30. package/logs/connections-2022-06-13-12.log +0 -35
  31. package/logs/connections-2022-06-15-23.log +0 -35
  32. package/src/direct-print/browser-printer.ts +0 -21
  33. package/src/direct-print/usb-printer.ts +0 -84
package/CHANGELOG.md CHANGED
@@ -3,6 +3,39 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
+ ## [1.0.0-alpha.24](https://github.com/things-scene/operato-scene/compare/v1.0.0-alpha.23...v1.0.0-alpha.24) (2022-06-20)
7
+
8
+
9
+ ### :bug: Bug Fix
10
+
11
+ * browser-printer use getAvailablePrinters ([c60b7c4](https://github.com/things-scene/operato-scene/commit/c60b7c426cadab4baf6583a929b6ca7057d592e8))
12
+ * latest [@operato](https://github.com/operato) ([1a59e6f](https://github.com/things-scene/operato-scene/commit/1a59e6f0ced18902fee98b88933650e23f9ad420))
13
+ * latest dependencies ([9ee4519](https://github.com/things-scene/operato-scene/commit/9ee4519adfe49e2eac8433f31ad5dea9257a1fca))
14
+ * use @operato/barcode for label component ([989e254](https://github.com/things-scene/operato-scene/commit/989e25498b8b993a0c74d4e18db8cdcb492c2d19))
15
+
16
+
17
+
18
+ ## [1.0.0-alpha.23](https://github.com/things-scene/operato-scene/compare/v1.0.0-alpha.22...v1.0.0-alpha.23) (2022-06-16)
19
+
20
+
21
+ ### :bug: Bug Fix
22
+
23
+ * barcode-scanner problem ([920d744](https://github.com/things-scene/operato-scene/commit/920d744c977116c85121deb2b48de841d99f3d33))
24
+ * latest [@operato](https://github.com/operato) ([45a542f](https://github.com/things-scene/operato-scene/commit/45a542f484a4fe552533a35eb90f2b100e01249f))
25
+ * latest [@operato](https://github.com/operato) ([d4020ee](https://github.com/things-scene/operato-scene/commit/d4020eefc797da03d43b73708dcfd8541f5b30af))
26
+
27
+
28
+
29
+ ## [1.0.0-alpha.22](https://github.com/things-scene/operato-scene/compare/v1.0.0-alpha.21...v1.0.0-alpha.22) (2022-06-16)
30
+
31
+
32
+ ### :bug: Bug Fix
33
+
34
+ * latest @hatiolab/things-scene ([0928090](https://github.com/things-scene/operato-scene/commit/09280903b4b0280ee8a76a4d1c2a0bf8d0997563))
35
+ * select-over-change => select-after-change ([ce4c0e7](https://github.com/things-scene/operato-scene/commit/ce4c0e7e0438c4e1a6126d8eb1053b90bd3dd3be))
36
+
37
+
38
+
6
39
  ## [1.0.0-alpha.21](https://github.com/things-scene/operato-scene/compare/v1.0.0-alpha.20...v1.0.0-alpha.21) (2022-06-16)
7
40
 
8
41
 
@@ -19,8 +19,8 @@ const NATURE = {
19
19
  },
20
20
  {
21
21
  type: 'checkbox',
22
- label: 'select-over-change',
23
- name: 'selectOverChange'
22
+ label: 'select-after-change',
23
+ name: 'selectAfterChange'
24
24
  }
25
25
  ],
26
26
  help: 'scene/component/barcode-scanner'
@@ -42,14 +42,8 @@ export default class BarcodeScanner extends HTMLOverlayElement {
42
42
  ready() {
43
43
  super.ready();
44
44
  var scanInput = this.element;
45
- // 엔터 입력 시 컴포넌트 데이터 세팅
46
- scanInput.addEventListener('keyup', (e) => {
47
- if (e.key === 'Enter') {
48
- e.preventDefault();
49
- if (scanInput.input) {
50
- this.data = scanInput.input.value;
51
- }
52
- }
45
+ scanInput.addEventListener('change', (e) => {
46
+ this.data = scanInput.value;
53
47
  });
54
48
  // 스캔 시 컴포넌트 데이터 세팅
55
49
  var scan = scanInput.scan;
@@ -59,10 +53,10 @@ export default class BarcodeScanner extends HTMLOverlayElement {
59
53
  });
60
54
  }
61
55
  setElementProperties(input) {
62
- const { withoutEnter = false, englishOnly = false, selectOverChange = false } = this.state;
56
+ const { withoutEnter = false, englishOnly = false, selectAfterChange = false } = this.state;
63
57
  input.withoutEnter = withoutEnter;
64
58
  input.englishOnly = englishOnly;
65
- input.selectOverChange = selectOverChange;
59
+ input.selectAfterChange = selectAfterChange;
66
60
  input.value = this._data = this.text;
67
61
  }
68
62
  get tagName() {
@@ -1 +1 @@
1
- {"version":3,"file":"barcode-scanner.js","sourceRoot":"","sources":["../src/barcode-scanner.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,SAAS,EAAmB,kBAAkB,EAAE,MAAM,wBAAwB,CAAA;AAGvF,MAAM,MAAM,GAAoB;IAC9B,OAAO,EAAE,KAAK;IACd,SAAS,EAAE,IAAI;IACf,SAAS,EAAE,IAAI;IACf,UAAU,EAAE;QACV;YACE,IAAI,EAAE,UAAU;YAChB,KAAK,EAAE,eAAe;YACtB,IAAI,EAAE,cAAc;SACrB;QACD;YACE,IAAI,EAAE,UAAU;YAChB,KAAK,EAAE,cAAc;YACrB,IAAI,EAAE,aAAa;SACpB;QACD;YACE,IAAI,EAAE,UAAU;YAChB,KAAK,EAAE,oBAAoB;YAC3B,IAAI,EAAE,kBAAkB;SACzB;KACF;IACD,IAAI,EAAE,iCAAiC;CACxC,CAAA;AAED,MAAM,CAAC,OAAO,OAAO,cAAe,SAAQ,kBAAkB;IAG5D,IAAI,MAAM;QACR,OAAO,MAAM,CAAA;IACf,CAAC;IAED,IAAI,IAAI;QACN,OAAO,IAAI,CAAC,KAAK,CAAA;IACnB,CAAC;IAED,IAAI,IAAI,CAAC,IAAI;QACX,IAAI,CAAC,KAAK,GAAG,IAAI,CAAA;QACjB,IAAI,CAAC,eAAe,EAAE,CAAA,CAAC,8BAA8B;IACvD,CAAC;IAED,OAAO;QACL,KAAK,CAAC,OAAO,EAAE,CAAA;IACjB,CAAC;IAED,KAAK;QACH,KAAK,CAAC,KAAK,EAAE,CAAA;QACb,IAAI,SAAS,GAAG,IAAI,CAAC,OAAyB,CAAA;QAC9C,wBAAwB;QACxB,SAAS,CAAC,gBAAgB,CAAC,OAAO,EAAE,CAAC,CAAQ,EAAE,EAAE;YAC/C,IAAK,CAAmB,CAAC,GAAG,KAAK,OAAO,EAAE;gBACxC,CAAC,CAAC,cAAc,EAAE,CAAA;gBAClB,IAAI,SAAS,CAAC,KAAK,EAAE;oBACnB,IAAI,CAAC,IAAI,GAAG,SAAS,CAAC,KAAK,CAAC,KAAK,CAAA;iBAClC;aACF;QACH,CAAC,CAAC,CAAA;QAEF,mBAAmB;QACnB,IAAI,IAAI,GAAG,SAAS,CAAC,IAAI,CAAA;QACzB,SAAS,CAAC,IAAI,GAAG,CAAC,CAAa,EAAE,EAAE,CACjC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE;YAChC,IAAI,SAAS,CAAC,KAAK;gBAAE,IAAI,CAAC,IAAI,GAAG,SAAS,CAAC,KAAK,CAAC,KAAK,CAAA;QACxD,CAAC,CAAC,CAAA;IACN,CAAC;IAED,oBAAoB,CAAC,KAAqB;QACxC,MAAM,EAAE,YAAY,GAAG,KAAK,EAAE,WAAW,GAAG,KAAK,EAAE,gBAAgB,GAAG,KAAK,EAAE,GAAG,IAAI,CAAC,KAAK,CAAA;QAE1F,KAAK,CAAC,YAAY,GAAG,YAAY,CAAA;QACjC,KAAK,CAAC,WAAW,GAAG,WAAW,CAAA;QAC/B,KAAK,CAAC,gBAAgB,GAAG,gBAAgB,CAAA;QAEzC,KAAK,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,IAAI,CAAA;IACtC,CAAC;IAED,IAAI,OAAO;QACT,OAAO,kBAAkB,CAAA;IAC3B,CAAC;CACF;AAED,SAAS,CAAC,QAAQ,CAAC,iBAAiB,EAAE,cAAc,CAAC,CAAA","sourcesContent":["/*\n * Copyright © HatioLab Inc. All rights reserved.\n */\n\nimport { Component, ComponentNature, HTMLOverlayElement } from '@hatiolab/things-scene'\nimport { OxInputBarcode } from '@operato/input' // TODO make '@operato/input/ox-input-barcode.js' work.\n\nconst NATURE: ComponentNature = {\n mutable: false,\n resizable: true,\n rotatable: true,\n properties: [\n {\n type: 'checkbox',\n label: 'without-enter',\n name: 'withoutEnter'\n },\n {\n type: 'checkbox',\n label: 'english-only',\n name: 'englishOnly'\n },\n {\n type: 'checkbox',\n label: 'select-over-change',\n name: 'selectOverChange'\n }\n ],\n help: 'scene/component/barcode-scanner'\n}\n\nexport default class BarcodeScanner extends HTMLOverlayElement {\n private _data: any\n\n get nature() {\n return NATURE\n }\n\n get data() {\n return this._data\n }\n\n set data(data) {\n this._data = data\n this.executeMappings() // 이전 데이터와 비교하지 않고 매핑을 실행하기 위함\n }\n\n dispose() {\n super.dispose()\n }\n\n ready() {\n super.ready()\n var scanInput = this.element as OxInputBarcode\n // 엔터 키 입력 시 컴포넌트 데이터 세팅\n scanInput.addEventListener('keyup', (e: Event) => {\n if ((e as KeyboardEvent).key === 'Enter') {\n e.preventDefault()\n if (scanInput.input) {\n this.data = scanInput.input.value\n }\n }\n })\n\n // 스캔 시 컴포넌트 데이터 세팅\n var scan = scanInput.scan\n scanInput.scan = (e: MouseEvent) =>\n scan.call(scanInput, e).then(() => {\n if (scanInput.input) this.data = scanInput.input.value\n })\n }\n\n setElementProperties(input: OxInputBarcode) {\n const { withoutEnter = false, englishOnly = false, selectOverChange = false } = this.state\n\n input.withoutEnter = withoutEnter\n input.englishOnly = englishOnly\n input.selectOverChange = selectOverChange\n\n input.value = this._data = this.text\n }\n\n get tagName() {\n return 'ox-input-barcode'\n }\n}\n\nComponent.register('barcode-scanner', BarcodeScanner)\n"]}
1
+ {"version":3,"file":"barcode-scanner.js","sourceRoot":"","sources":["../src/barcode-scanner.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,SAAS,EAAmB,kBAAkB,EAAE,MAAM,wBAAwB,CAAA;AAGvF,MAAM,MAAM,GAAoB;IAC9B,OAAO,EAAE,KAAK;IACd,SAAS,EAAE,IAAI;IACf,SAAS,EAAE,IAAI;IACf,UAAU,EAAE;QACV;YACE,IAAI,EAAE,UAAU;YAChB,KAAK,EAAE,eAAe;YACtB,IAAI,EAAE,cAAc;SACrB;QACD;YACE,IAAI,EAAE,UAAU;YAChB,KAAK,EAAE,cAAc;YACrB,IAAI,EAAE,aAAa;SACpB;QACD;YACE,IAAI,EAAE,UAAU;YAChB,KAAK,EAAE,qBAAqB;YAC5B,IAAI,EAAE,mBAAmB;SAC1B;KACF;IACD,IAAI,EAAE,iCAAiC;CACxC,CAAA;AAED,MAAM,CAAC,OAAO,OAAO,cAAe,SAAQ,kBAAkB;IAG5D,IAAI,MAAM;QACR,OAAO,MAAM,CAAA;IACf,CAAC;IAED,IAAI,IAAI;QACN,OAAO,IAAI,CAAC,KAAK,CAAA;IACnB,CAAC;IAED,IAAI,IAAI,CAAC,IAAI;QACX,IAAI,CAAC,KAAK,GAAG,IAAI,CAAA;QACjB,IAAI,CAAC,eAAe,EAAE,CAAA,CAAC,8BAA8B;IACvD,CAAC;IAED,OAAO;QACL,KAAK,CAAC,OAAO,EAAE,CAAA;IACjB,CAAC;IAED,KAAK;QACH,KAAK,CAAC,KAAK,EAAE,CAAA;QACb,IAAI,SAAS,GAAG,IAAI,CAAC,OAAyB,CAAA;QAE9C,SAAS,CAAC,gBAAgB,CAAC,QAAQ,EAAE,CAAC,CAAQ,EAAE,EAAE;YAChD,IAAI,CAAC,IAAI,GAAG,SAAS,CAAC,KAAK,CAAA;QAC7B,CAAC,CAAC,CAAA;QAEF,mBAAmB;QACnB,IAAI,IAAI,GAAG,SAAS,CAAC,IAAI,CAAA;QACzB,SAAS,CAAC,IAAI,GAAG,CAAC,CAAa,EAAE,EAAE,CACjC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE;YAChC,IAAI,SAAS,CAAC,KAAK;gBAAE,IAAI,CAAC,IAAI,GAAG,SAAS,CAAC,KAAK,CAAC,KAAK,CAAA;QACxD,CAAC,CAAC,CAAA;IACN,CAAC;IAED,oBAAoB,CAAC,KAAqB;QACxC,MAAM,EAAE,YAAY,GAAG,KAAK,EAAE,WAAW,GAAG,KAAK,EAAE,iBAAiB,GAAG,KAAK,EAAE,GAAG,IAAI,CAAC,KAAK,CAAA;QAE3F,KAAK,CAAC,YAAY,GAAG,YAAY,CAAA;QACjC,KAAK,CAAC,WAAW,GAAG,WAAW,CAAA;QAC/B,KAAK,CAAC,iBAAiB,GAAG,iBAAiB,CAAA;QAE3C,KAAK,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,IAAI,CAAA;IACtC,CAAC;IAED,IAAI,OAAO;QACT,OAAO,kBAAkB,CAAA;IAC3B,CAAC;CACF;AAED,SAAS,CAAC,QAAQ,CAAC,iBAAiB,EAAE,cAAc,CAAC,CAAA","sourcesContent":["/*\n * Copyright © HatioLab Inc. All rights reserved.\n */\n\nimport { Component, ComponentNature, HTMLOverlayElement } from '@hatiolab/things-scene'\nimport { OxInputBarcode } from '@operato/input' // TODO make '@operato/input/ox-input-barcode.js' work.\n\nconst NATURE: ComponentNature = {\n mutable: false,\n resizable: true,\n rotatable: true,\n properties: [\n {\n type: 'checkbox',\n label: 'without-enter',\n name: 'withoutEnter'\n },\n {\n type: 'checkbox',\n label: 'english-only',\n name: 'englishOnly'\n },\n {\n type: 'checkbox',\n label: 'select-after-change',\n name: 'selectAfterChange'\n }\n ],\n help: 'scene/component/barcode-scanner'\n}\n\nexport default class BarcodeScanner extends HTMLOverlayElement {\n private _data: any\n\n get nature() {\n return NATURE\n }\n\n get data() {\n return this._data\n }\n\n set data(data) {\n this._data = data\n this.executeMappings() // 이전 데이터와 비교하지 않고 매핑을 실행하기 위함\n }\n\n dispose() {\n super.dispose()\n }\n\n ready() {\n super.ready()\n var scanInput = this.element as OxInputBarcode\n\n scanInput.addEventListener('change', (e: Event) => {\n this.data = scanInput.value\n })\n\n // 스캔 시 컴포넌트 데이터 세팅\n var scan = scanInput.scan\n scanInput.scan = (e: MouseEvent) =>\n scan.call(scanInput, e).then(() => {\n if (scanInput.input) this.data = scanInput.input.value\n })\n }\n\n setElementProperties(input: OxInputBarcode) {\n const { withoutEnter = false, englishOnly = false, selectAfterChange = false } = this.state\n\n input.withoutEnter = withoutEnter\n input.englishOnly = englishOnly\n input.selectAfterChange = selectAfterChange\n\n input.value = this._data = this.text\n }\n\n get tagName() {\n return 'ox-input-barcode'\n }\n}\n\nComponent.register('barcode-scanner', BarcodeScanner)\n"]}
package/dist/index.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  import Barcode from "./barcode";
2
2
  import BarcodeScanner from "./barcode-scanner";
3
3
  import LabelPrinter from "./label-printer";
4
- declare const _default: (typeof BarcodeScanner | typeof Barcode | typeof LabelPrinter)[];
4
+ declare const _default: (typeof LabelPrinter | typeof Barcode | typeof BarcodeScanner)[];
5
5
  export default _default;
@@ -2,8 +2,7 @@
2
2
  * Copyright © HatioLab Inc. All rights reserved.
3
3
  */
4
4
  import { Component, RectPath, Shape } from '@hatiolab/things-scene';
5
- import { BrowserPrinter } from './direct-print/browser-printer';
6
- import { USBPrinter } from './direct-print/usb-printer';
5
+ import { BrowserPrinter, USBPrinter } from '@operato/barcode';
7
6
  const NATURE = {
8
7
  mutable: false,
9
8
  resizable: true,
@@ -1 +1 @@
1
- {"version":3,"file":"label-printer.js","sourceRoot":"","sources":["../src/label-printer.ts"],"names":[],"mappings":"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","sourcesContent":["/*\n * Copyright © HatioLab Inc. All rights reserved.\n */\n\nimport { Component, ComponentNature, Properties, RectPath, Shape } from '@hatiolab/things-scene'\n\nimport { BrowserPrinter } from './direct-print/browser-printer'\nimport { USBPrinter } from './direct-print/usb-printer'\n\nconst NATURE: ComponentNature = {\n mutable: false,\n resizable: true,\n rotatable: true,\n properties: [\n {\n type: 'select',\n label: 'direct-printer',\n name: 'directPrinter',\n property: {\n options: [\n {\n display: 'USB Connected Printer',\n value: 'direct-usb'\n },\n {\n display: 'Zebra Browser Print',\n value: 'zebra-browser-print'\n }\n ]\n }\n },\n {\n type: 'string',\n label: 'vendor id',\n name: 'vendorId',\n placeholder: '0x0A5F'\n },\n {\n type: 'board-selector',\n label: 'board id',\n name: 'boardId'\n },\n {\n type: 'number',\n label: 'copies',\n name: 'copies'\n }\n ],\n 'value-property': 'data',\n help: 'scene/component/label-printer'\n}\n\nexport default class LabelPrinter extends RectPath(Shape) {\n private static _image: HTMLImageElement\n private printer?: USBPrinter | BrowserPrinter\n\n static get image() {\n if (!LabelPrinter._image) {\n LabelPrinter._image = new Image()\n LabelPrinter._image.src = new URL('../icons/label-printer.png', import.meta.url).href\n }\n\n return LabelPrinter._image\n }\n\n get nature() {\n return NATURE\n }\n\n dispose() {\n super.dispose()\n }\n\n render(context: CanvasRenderingContext2D) {\n /*\n * TODO printable 상태를 구분할 수 있는 표시를 추가할 것.\n */\n\n var { left, top, width, height } = this.bounds\n\n context.beginPath()\n this.drawImage(context, LabelPrinter.image, left, top, width, height)\n }\n\n onchange(after: Properties, before: Properties) {\n if ('data' in after) {\n this.print(after.data)\n }\n\n if ('directPrinter' in after) {\n delete this.printer\n }\n }\n\n async print(data: any) {\n if (!this.app.isViewMode || data.constructor !== Object || Object.keys(data).length === 0) {\n /* in cases of\n * - edit mode\n * - data is not a object\n * - data object is empty\n * we doesn't print\n */\n return\n }\n\n var { directPrinter, boardId, vendorId, copies = 1 } = this.state\n\n var searchParams = new URLSearchParams()\n for (var key in data) {\n searchParams.append(key, data[key])\n }\n const response = await fetch(`label-command/${boardId}?${searchParams.toString()}`, {\n method: 'GET'\n })\n\n var command = await response.text()\n\n try {\n if (!this.printer) {\n this.printer =\n directPrinter == 'direct-usb'\n ? new USBPrinter(\n vendorId\n ? [\n {\n vendorId: Number(vendorId)\n }\n ]\n : undefined\n )\n : new BrowserPrinter()\n }\n\n for (var i = 0; i < copies; i++) {\n await this.printer.print(command)\n }\n } catch (err) {\n throw new Error(err as string)\n }\n }\n}\n\nComponent.register('label-printer', LabelPrinter)\n"]}
1
+ {"version":3,"file":"label-printer.js","sourceRoot":"","sources":["../src/label-printer.ts"],"names":[],"mappings":"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","sourcesContent":["/*\n * Copyright © HatioLab Inc. All rights reserved.\n */\n\nimport { Component, ComponentNature, Properties, RectPath, Shape } from '@hatiolab/things-scene'\nimport { BrowserPrinter, USBPrinter } from '@operato/barcode'\n\nconst NATURE: ComponentNature = {\n mutable: false,\n resizable: true,\n rotatable: true,\n properties: [\n {\n type: 'select',\n label: 'direct-printer',\n name: 'directPrinter',\n property: {\n options: [\n {\n display: 'USB Connected Printer',\n value: 'direct-usb'\n },\n {\n display: 'Zebra Browser Print',\n value: 'zebra-browser-print'\n }\n ]\n }\n },\n {\n type: 'string',\n label: 'vendor id',\n name: 'vendorId',\n placeholder: '0x0A5F'\n },\n {\n type: 'board-selector',\n label: 'board id',\n name: 'boardId'\n },\n {\n type: 'number',\n label: 'copies',\n name: 'copies'\n }\n ],\n 'value-property': 'data',\n help: 'scene/component/label-printer'\n}\n\nexport default class LabelPrinter extends RectPath(Shape) {\n private static _image: HTMLImageElement\n private printer?: USBPrinter | BrowserPrinter\n\n static get image() {\n if (!LabelPrinter._image) {\n LabelPrinter._image = new Image()\n LabelPrinter._image.src = new URL('../icons/label-printer.png', import.meta.url).href\n }\n\n return LabelPrinter._image\n }\n\n get nature() {\n return NATURE\n }\n\n dispose() {\n super.dispose()\n }\n\n render(context: CanvasRenderingContext2D) {\n /*\n * TODO printable 상태를 구분할 수 있는 표시를 추가할 것.\n */\n\n var { left, top, width, height } = this.bounds\n\n context.beginPath()\n this.drawImage(context, LabelPrinter.image, left, top, width, height)\n }\n\n onchange(after: Properties, before: Properties) {\n if ('data' in after) {\n this.print(after.data)\n }\n\n if ('directPrinter' in after) {\n delete this.printer\n }\n }\n\n async print(data: any) {\n if (!this.app.isViewMode || data.constructor !== Object || Object.keys(data).length === 0) {\n /* in cases of\n * - edit mode\n * - data is not a object\n * - data object is empty\n * we doesn't print\n */\n return\n }\n\n var { directPrinter, boardId, vendorId, copies = 1 } = this.state\n\n var searchParams = new URLSearchParams()\n for (var key in data) {\n searchParams.append(key, data[key])\n }\n const response = await fetch(`label-command/${boardId}?${searchParams.toString()}`, {\n method: 'GET'\n })\n\n var command = await response.text()\n\n try {\n if (!this.printer) {\n this.printer =\n directPrinter == 'direct-usb'\n ? new USBPrinter(\n vendorId\n ? [\n {\n vendorId: Number(vendorId)\n }\n ]\n : undefined\n )\n : new BrowserPrinter()\n }\n\n for (var i = 0; i < copies; i++) {\n await this.printer.print(command)\n }\n } catch (err) {\n throw new Error(err as string)\n }\n }\n}\n\nComponent.register('label-printer', LabelPrinter)\n"]}
@@ -44,6 +44,6 @@
44
44
  IME모드가 멀티바이트 상태이더라도, 각 키에 해당하는 영문으로 변경된다.
45
45
  멀티바이트 입력은 할 수 있지만, 엔터키가 발생할 때 또는 blur이벤트가 발생할 때 멀티바이트 문자들은 제거된 후에 change이벤트가 발생한다.
46
46
 
47
- - 스캔후 전체 선택 (selectOverChange)
47
+ - 변경후 전체 선택 (selectAfterChange)
48
48
 
49
49
  엔터키나 blur 등에 의해서 change 이벤트가 발생하면, 전체 문자열이 선택된 상태가 된다. 이 경우에는 다음 값이 입력될 때 기존 값이 삭제되고 공백에서 새로운 값을 입력할 수 있으므로 이런 동작이 편리한 경우가 있다.
@@ -44,6 +44,6 @@ The following barcode formats can be scanned.
44
44
  Even if the IME mode is in multi-byte state, it is changed to English corresponding to each key.
45
45
  Multi-byte input is possible, but the change event occurs after the multi-byte characters are removed when the enter key occurs or when the blur event occurs.
46
46
 
47
- - select over change (selectOverChange)
47
+ - select over change (selectAfterChange)
48
48
 
49
49
  When a change event occurs by the enter key or blur, the entire string is selected. In this case, when the next value is input, the existing value is deleted and a new value can be entered in the blank, so this operation is convenient in some cases.
@@ -44,6 +44,6 @@
44
44
  即使 IME 模式是多字节状态,也会变成对应每个键的英文。
45
45
  多字节输入是可能的,但是当发生回车键或发生模糊事件时,更改事件发生在多字节字符被删除之后。
46
46
 
47
- - 选择过度变化(selectOverChange
47
+ - 选择过度变化(selectAfterChange
48
48
 
49
49
  当 enter 键或 blur 发生更改事件时,将选择整个字符串。在这种情况下,当输入下一个值时,现有的值会被删除,在空白处可以输入一个新的值,所以这种操作在某些情况下是很方便的。
@@ -6,10 +6,20 @@
6
6
  "auditLog": "logs/.08636eb59927f12972f6774f5947c8507b3564c2-audit.json",
7
7
  "files": [
8
8
  {
9
- "date": 1655303853336,
10
- "name": "logs/application-2022-06-15-23.log",
11
- "hash": "5fbcab87863293d296cea03660b6f8e0"
9
+ "date": 1655686299247,
10
+ "name": "logs/application-2022-06-20-09.log",
11
+ "hash": "57ccc59a87ecc6cb5c862275e7ce9c420a0f4b7617e00823ec55274870562b5c"
12
+ },
13
+ {
14
+ "date": 1655692152438,
15
+ "name": "logs/application-2022-06-20-11.log",
16
+ "hash": "ec3287ddb8eeccee61e741796ca0f5a3f9b8dd43d9c480c8e72fa6fcb3db357c"
17
+ },
18
+ {
19
+ "date": 1655694101389,
20
+ "name": "logs/application-2022-06-20-12.log",
21
+ "hash": "015ee8741c63a8a017d5f369178b1e3d261d1ce01c5d0ec8acaf2b73de936555"
12
22
  }
13
23
  ],
14
- "hashType": "md5"
24
+ "hashType": "sha256"
15
25
  }
@@ -6,25 +6,25 @@
6
6
  "auditLog": "logs/.5e5d741d8b7784a2fbad65eedc0fd46946aaf6f2-audit.json",
7
7
  "files": [
8
8
  {
9
- "date": 1654786072046,
10
- "name": "logs/connections-2022-06-09-23.log",
11
- "hash": "dc982bdad58359c9b1c76447610d9ceb"
9
+ "date": 1655087553494,
10
+ "name": "logs/connections-2022-06-13-11.log",
11
+ "hash": "3d447469bdca64691dd276336c630cd6"
12
12
  },
13
13
  {
14
- "date": 1655088636982,
15
- "name": "logs/connections-2022-06-13-11.log",
16
- "hash": "3733cb7ff75e5d8102fbacbc79f01624"
14
+ "date": 1655686300446,
15
+ "name": "logs/connections-2022-06-20-09.log",
16
+ "hash": "b958fa86f5c119ef5c59d3d94d847c9f60fd52305e810f76cd9f2a8535b35b6c"
17
17
  },
18
18
  {
19
- "date": 1655089310214,
20
- "name": "logs/connections-2022-06-13-12.log",
21
- "hash": "e83be132f52656658db84ec623d9d32a"
19
+ "date": 1655692153732,
20
+ "name": "logs/connections-2022-06-20-11.log",
21
+ "hash": "96ef5596a7b9cca6d641c5325e80285be2b291458c42dbf05dfd771f39466b23"
22
22
  },
23
23
  {
24
- "date": 1655303856041,
25
- "name": "logs/connections-2022-06-15-23.log",
26
- "hash": "5af0f50b481ddb11b0b0ff4cc83003aa"
24
+ "date": 1655694102728,
25
+ "name": "logs/connections-2022-06-20-12.log",
26
+ "hash": "302ecc2bc4b5adcd3133623249ac198911336ef7caa9f35a129614ae85e0214a"
27
27
  }
28
28
  ],
29
- "hashType": "md5"
29
+ "hashType": "sha256"
30
30
  }
@@ -0,0 +1,19 @@
1
+ 2022-06-13T11:32:32+09:00 info: File Storage is Ready.
2
+ 2022-06-13T11:32:53+09:00 info: File Storage is Ready.
3
+ 2022-06-13T11:32:55+09:00 info: Database connection established
4
+ 2022-06-13T11:32:56+09:00 info: 🚀 Server ready at http://0.0.0.0:3000/graphql
5
+ 2022-06-13T11:32:56+09:00 info: 🚀 Subscriptions ready at ws://0.0.0.0:3000/subscriptions
6
+ 2022-06-13T11:33:27+09:00 error: Timed out after 30000 ms while trying to connect to the browser! Only Chrome at revision r991974 is guaranteed to work.
7
+ 2022-06-13T11:33:27+09:00 error: Timed out after 30000 ms while trying to connect to the browser! Only Chrome at revision r991974 is guaranteed to work.
8
+ 2022-06-13T11:33:27+09:00 error: Timed out after 30000 ms while trying to connect to the browser! Only Chrome at revision r991974 is guaranteed to work.
9
+ 2022-06-13T11:33:27+09:00 error: Timed out after 30000 ms while trying to connect to the browser! Only Chrome at revision r991974 is guaranteed to work.
10
+ 2022-06-13T11:37:12+09:00 error: Cannot read properties of undefined (reading 'version')
11
+ 2022-06-13T11:43:06+09:00 error: write EIO
12
+ 2022-06-13T11:46:27+09:00 info: File Storage is Ready.
13
+ 2022-06-13T11:46:31+09:00 info: Database connection established
14
+ 2022-06-13T11:46:31+09:00 info: 🚀 Server ready at http://0.0.0.0:3000/graphql
15
+ 2022-06-13T11:46:31+09:00 info: 🚀 Subscriptions ready at ws://0.0.0.0:3000/subscriptions
16
+ 2022-06-13T11:47:02+09:00 error: Timed out after 30000 ms while trying to connect to the browser! Only Chrome at revision r1002410 is guaranteed to work.
17
+ 2022-06-13T11:47:02+09:00 error: Timed out after 30000 ms while trying to connect to the browser! Only Chrome at revision r1002410 is guaranteed to work.
18
+ 2022-06-13T11:47:02+09:00 error: Timed out after 30000 ms while trying to connect to the browser! Only Chrome at revision r1002410 is guaranteed to work.
19
+ 2022-06-13T11:47:02+09:00 error: Timed out after 30000 ms while trying to connect to the browser! Only Chrome at revision r1002410 is guaranteed to work.
@@ -0,0 +1,4 @@
1
+ 2022-06-20T09:51:39+09:00 info: File Storage is Ready.
2
+ 2022-06-20T09:51:42+09:00 info: Database connection established
3
+ 2022-06-20T09:51:43+09:00 info: 🚀 Server ready at http://0.0.0.0:3000/graphql
4
+ 2022-06-20T09:51:43+09:00 info: 🚀 Subscriptions ready at ws://0.0.0.0:3000/subscriptions
@@ -0,0 +1,4 @@
1
+ 2022-06-20T11:29:13+09:00 info: File Storage is Ready.
2
+ 2022-06-20T11:29:15+09:00 info: Database connection established
3
+ 2022-06-20T11:29:16+09:00 info: 🚀 Server ready at http://0.0.0.0:3000/graphql
4
+ 2022-06-20T11:29:16+09:00 info: 🚀 Subscriptions ready at ws://0.0.0.0:3000/subscriptions
@@ -0,0 +1,4 @@
1
+ 2022-06-20T12:01:42+09:00 info: File Storage is Ready.
2
+ 2022-06-20T12:01:44+09:00 info: Database connection established
3
+ 2022-06-20T12:01:46+09:00 info: 🚀 Server ready at http://0.0.0.0:3000/graphql
4
+ 2022-06-20T12:01:46+09:00 info: 🚀 Subscriptions ready at ws://0.0.0.0:3000/subscriptions
@@ -1,35 +1,70 @@
1
- 2022-06-13T11:50:42+09:00 info: Initializing ConnectionManager...
2
- 2022-06-13T11:50:42+09:00 info: Connector 'echo-back-server' started to ready
3
- 2022-06-13T11:50:42+09:00 info: Connector 'echo-back' started to ready
4
- 2022-06-13T11:50:42+09:00 info: Connector 'http-connector' started to ready
5
- 2022-06-13T11:50:42+09:00 info: Connector 'graphql-connector' started to ready
6
- 2022-06-13T11:50:42+09:00 info: Connector 'sqlite-connector' started to ready
7
- 2022-06-13T11:50:42+09:00 info: Connector 'postgresql-connector' started to ready
8
- 2022-06-13T11:50:42+09:00 info: Connector 'mqtt-connector' started to ready
9
- 2022-06-13T11:50:42+09:00 info: Connector 'mssql-connector' started to ready
10
- 2022-06-13T11:50:42+09:00 info: Connector 'oracle-connector' started to ready
11
- 2022-06-13T11:50:42+09:00 info: Connector 'mysql-connector' started to ready
12
- 2022-06-13T11:50:42+09:00 info: Connector 'socket-server' started to ready
13
- 2022-06-13T11:50:42+09:00 info: echo-back-servers are ready
14
- 2022-06-13T11:50:42+09:00 info: echo-back connections are ready
15
- 2022-06-13T11:50:42+09:00 info: http-connector connections are ready
16
- 2022-06-13T11:50:42+09:00 info: graphql-connector connections are ready
17
- 2022-06-13T11:50:42+09:00 info: sqlite-connector connections are ready
18
- 2022-06-13T11:50:42+09:00 info: postgresql-connector connections are ready
19
- 2022-06-13T11:50:42+09:00 info: mqtt-connector connections are ready
20
- 2022-06-13T11:50:42+09:00 info: mssql-connector connections are ready
21
- 2022-06-13T11:50:42+09:00 info: oracle-connector connections are ready
22
- 2022-06-13T11:50:42+09:00 info: mysql-connector connections are ready
23
- 2022-06-13T11:50:42+09:00 info: socket servers are ready
24
- 2022-06-13T11:50:42+09:00 info: All connector for 'echo-back-server' ready
25
- 2022-06-13T11:50:42+09:00 info: All connector for 'echo-back' ready
26
- 2022-06-13T11:50:42+09:00 info: All connector for 'http-connector' ready
27
- 2022-06-13T11:50:42+09:00 info: All connector for 'graphql-connector' ready
28
- 2022-06-13T11:50:42+09:00 info: All connector for 'sqlite-connector' ready
29
- 2022-06-13T11:50:42+09:00 info: All connector for 'postgresql-connector' ready
30
- 2022-06-13T11:50:42+09:00 info: All connector for 'mqtt-connector' ready
31
- 2022-06-13T11:50:42+09:00 info: All connector for 'mssql-connector' ready
32
- 2022-06-13T11:50:42+09:00 info: All connector for 'oracle-connector' ready
33
- 2022-06-13T11:50:42+09:00 info: All connector for 'mysql-connector' ready
34
- 2022-06-13T11:50:42+09:00 info: All connector for 'socket-server' ready
35
- 2022-06-13T11:50:42+09:00 info: ConnectionManager initialization done:
1
+ 2022-06-13T11:32:56+09:00 info: Initializing ConnectionManager...
2
+ 2022-06-13T11:32:56+09:00 info: Connector 'echo-back-server' started to ready
3
+ 2022-06-13T11:32:56+09:00 info: Connector 'echo-back' started to ready
4
+ 2022-06-13T11:32:56+09:00 info: Connector 'http-connector' started to ready
5
+ 2022-06-13T11:32:56+09:00 info: Connector 'graphql-connector' started to ready
6
+ 2022-06-13T11:32:56+09:00 info: Connector 'sqlite-connector' started to ready
7
+ 2022-06-13T11:32:56+09:00 info: Connector 'postgresql-connector' started to ready
8
+ 2022-06-13T11:32:56+09:00 info: Connector 'mqtt-connector' started to ready
9
+ 2022-06-13T11:32:56+09:00 info: Connector 'mssql-connector' started to ready
10
+ 2022-06-13T11:32:56+09:00 info: Connector 'oracle-connector' started to ready
11
+ 2022-06-13T11:32:56+09:00 info: Connector 'mysql-connector' started to ready
12
+ 2022-06-13T11:32:56+09:00 info: Connector 'socket-server' started to ready
13
+ 2022-06-13T11:32:56+09:00 info: echo-back-servers are ready
14
+ 2022-06-13T11:32:56+09:00 info: echo-back connections are ready
15
+ 2022-06-13T11:32:56+09:00 info: http-connector connections are ready
16
+ 2022-06-13T11:32:56+09:00 info: graphql-connector connections are ready
17
+ 2022-06-13T11:32:56+09:00 info: sqlite-connector connections are ready
18
+ 2022-06-13T11:32:56+09:00 info: postgresql-connector connections are ready
19
+ 2022-06-13T11:32:56+09:00 info: mqtt-connector connections are ready
20
+ 2022-06-13T11:32:56+09:00 info: mssql-connector connections are ready
21
+ 2022-06-13T11:32:56+09:00 info: oracle-connector connections are ready
22
+ 2022-06-13T11:32:56+09:00 info: mysql-connector connections are ready
23
+ 2022-06-13T11:32:56+09:00 info: socket servers are ready
24
+ 2022-06-13T11:32:56+09:00 info: All connector for 'echo-back-server' ready
25
+ 2022-06-13T11:32:56+09:00 info: All connector for 'echo-back' ready
26
+ 2022-06-13T11:32:56+09:00 info: All connector for 'http-connector' ready
27
+ 2022-06-13T11:32:56+09:00 info: All connector for 'graphql-connector' ready
28
+ 2022-06-13T11:32:56+09:00 info: All connector for 'sqlite-connector' ready
29
+ 2022-06-13T11:32:56+09:00 info: All connector for 'postgresql-connector' ready
30
+ 2022-06-13T11:32:56+09:00 info: All connector for 'mqtt-connector' ready
31
+ 2022-06-13T11:32:56+09:00 info: All connector for 'mssql-connector' ready
32
+ 2022-06-13T11:32:56+09:00 info: All connector for 'oracle-connector' ready
33
+ 2022-06-13T11:32:56+09:00 info: All connector for 'mysql-connector' ready
34
+ 2022-06-13T11:32:56+09:00 info: All connector for 'socket-server' ready
35
+ 2022-06-13T11:32:56+09:00 info: ConnectionManager initialization done:
36
+ 2022-06-13T11:46:32+09:00 info: Initializing ConnectionManager...
37
+ 2022-06-13T11:46:32+09:00 info: Connector 'echo-back-server' started to ready
38
+ 2022-06-13T11:46:32+09:00 info: Connector 'echo-back' started to ready
39
+ 2022-06-13T11:46:32+09:00 info: Connector 'http-connector' started to ready
40
+ 2022-06-13T11:46:32+09:00 info: Connector 'graphql-connector' started to ready
41
+ 2022-06-13T11:46:32+09:00 info: Connector 'sqlite-connector' started to ready
42
+ 2022-06-13T11:46:32+09:00 info: Connector 'postgresql-connector' started to ready
43
+ 2022-06-13T11:46:32+09:00 info: Connector 'mqtt-connector' started to ready
44
+ 2022-06-13T11:46:32+09:00 info: Connector 'mssql-connector' started to ready
45
+ 2022-06-13T11:46:32+09:00 info: Connector 'oracle-connector' started to ready
46
+ 2022-06-13T11:46:32+09:00 info: Connector 'mysql-connector' started to ready
47
+ 2022-06-13T11:46:32+09:00 info: Connector 'socket-server' started to ready
48
+ 2022-06-13T11:46:32+09:00 info: echo-back-servers are ready
49
+ 2022-06-13T11:46:32+09:00 info: echo-back connections are ready
50
+ 2022-06-13T11:46:32+09:00 info: http-connector connections are ready
51
+ 2022-06-13T11:46:32+09:00 info: graphql-connector connections are ready
52
+ 2022-06-13T11:46:32+09:00 info: sqlite-connector connections are ready
53
+ 2022-06-13T11:46:32+09:00 info: postgresql-connector connections are ready
54
+ 2022-06-13T11:46:32+09:00 info: mqtt-connector connections are ready
55
+ 2022-06-13T11:46:32+09:00 info: mssql-connector connections are ready
56
+ 2022-06-13T11:46:32+09:00 info: oracle-connector connections are ready
57
+ 2022-06-13T11:46:32+09:00 info: mysql-connector connections are ready
58
+ 2022-06-13T11:46:32+09:00 info: socket servers are ready
59
+ 2022-06-13T11:46:32+09:00 info: All connector for 'echo-back-server' ready
60
+ 2022-06-13T11:46:32+09:00 info: All connector for 'echo-back' ready
61
+ 2022-06-13T11:46:32+09:00 info: All connector for 'http-connector' ready
62
+ 2022-06-13T11:46:32+09:00 info: All connector for 'graphql-connector' ready
63
+ 2022-06-13T11:46:32+09:00 info: All connector for 'sqlite-connector' ready
64
+ 2022-06-13T11:46:32+09:00 info: All connector for 'postgresql-connector' ready
65
+ 2022-06-13T11:46:32+09:00 info: All connector for 'mqtt-connector' ready
66
+ 2022-06-13T11:46:32+09:00 info: All connector for 'mssql-connector' ready
67
+ 2022-06-13T11:46:32+09:00 info: All connector for 'oracle-connector' ready
68
+ 2022-06-13T11:46:32+09:00 info: All connector for 'mysql-connector' ready
69
+ 2022-06-13T11:46:32+09:00 info: All connector for 'socket-server' ready
70
+ 2022-06-13T11:46:32+09:00 info: ConnectionManager initialization done:
@@ -0,0 +1,35 @@
1
+ 2022-06-20T09:51:43+09:00 info: Initializing ConnectionManager...
2
+ 2022-06-20T09:51:43+09:00 info: Connector 'echo-back-server' started to ready
3
+ 2022-06-20T09:51:43+09:00 info: Connector 'echo-back' started to ready
4
+ 2022-06-20T09:51:43+09:00 info: Connector 'http-connector' started to ready
5
+ 2022-06-20T09:51:43+09:00 info: Connector 'graphql-connector' started to ready
6
+ 2022-06-20T09:51:43+09:00 info: Connector 'sqlite-connector' started to ready
7
+ 2022-06-20T09:51:43+09:00 info: Connector 'postgresql-connector' started to ready
8
+ 2022-06-20T09:51:43+09:00 info: Connector 'mqtt-connector' started to ready
9
+ 2022-06-20T09:51:43+09:00 info: Connector 'mssql-connector' started to ready
10
+ 2022-06-20T09:51:43+09:00 info: Connector 'oracle-connector' started to ready
11
+ 2022-06-20T09:51:43+09:00 info: Connector 'mysql-connector' started to ready
12
+ 2022-06-20T09:51:43+09:00 info: Connector 'socket-server' started to ready
13
+ 2022-06-20T09:51:43+09:00 info: echo-back-servers are ready
14
+ 2022-06-20T09:51:43+09:00 info: echo-back connections are ready
15
+ 2022-06-20T09:51:43+09:00 info: http-connector connections are ready
16
+ 2022-06-20T09:51:43+09:00 info: graphql-connector connections are ready
17
+ 2022-06-20T09:51:43+09:00 info: sqlite-connector connections are ready
18
+ 2022-06-20T09:51:43+09:00 info: postgresql-connector connections are ready
19
+ 2022-06-20T09:51:43+09:00 info: mqtt-connector connections are ready
20
+ 2022-06-20T09:51:43+09:00 info: mssql-connector connections are ready
21
+ 2022-06-20T09:51:43+09:00 info: oracle-connector connections are ready
22
+ 2022-06-20T09:51:43+09:00 info: mysql-connector connections are ready
23
+ 2022-06-20T09:51:43+09:00 info: socket servers are ready
24
+ 2022-06-20T09:51:43+09:00 info: All connector for 'echo-back-server' ready
25
+ 2022-06-20T09:51:43+09:00 info: All connector for 'echo-back' ready
26
+ 2022-06-20T09:51:43+09:00 info: All connector for 'http-connector' ready
27
+ 2022-06-20T09:51:43+09:00 info: All connector for 'graphql-connector' ready
28
+ 2022-06-20T09:51:43+09:00 info: All connector for 'sqlite-connector' ready
29
+ 2022-06-20T09:51:43+09:00 info: All connector for 'postgresql-connector' ready
30
+ 2022-06-20T09:51:43+09:00 info: All connector for 'mqtt-connector' ready
31
+ 2022-06-20T09:51:43+09:00 info: All connector for 'mssql-connector' ready
32
+ 2022-06-20T09:51:43+09:00 info: All connector for 'oracle-connector' ready
33
+ 2022-06-20T09:51:43+09:00 info: All connector for 'mysql-connector' ready
34
+ 2022-06-20T09:51:43+09:00 info: All connector for 'socket-server' ready
35
+ 2022-06-20T09:51:43+09:00 info: ConnectionManager initialization done:
@@ -0,0 +1,35 @@
1
+ 2022-06-20T11:29:17+09:00 info: Initializing ConnectionManager...
2
+ 2022-06-20T11:29:17+09:00 info: Connector 'echo-back-server' started to ready
3
+ 2022-06-20T11:29:17+09:00 info: Connector 'echo-back' started to ready
4
+ 2022-06-20T11:29:17+09:00 info: Connector 'http-connector' started to ready
5
+ 2022-06-20T11:29:17+09:00 info: Connector 'graphql-connector' started to ready
6
+ 2022-06-20T11:29:17+09:00 info: Connector 'sqlite-connector' started to ready
7
+ 2022-06-20T11:29:17+09:00 info: Connector 'postgresql-connector' started to ready
8
+ 2022-06-20T11:29:17+09:00 info: Connector 'mqtt-connector' started to ready
9
+ 2022-06-20T11:29:17+09:00 info: Connector 'mssql-connector' started to ready
10
+ 2022-06-20T11:29:17+09:00 info: Connector 'oracle-connector' started to ready
11
+ 2022-06-20T11:29:17+09:00 info: Connector 'mysql-connector' started to ready
12
+ 2022-06-20T11:29:17+09:00 info: Connector 'socket-server' started to ready
13
+ 2022-06-20T11:29:17+09:00 info: echo-back-servers are ready
14
+ 2022-06-20T11:29:17+09:00 info: echo-back connections are ready
15
+ 2022-06-20T11:29:17+09:00 info: http-connector connections are ready
16
+ 2022-06-20T11:29:17+09:00 info: graphql-connector connections are ready
17
+ 2022-06-20T11:29:17+09:00 info: sqlite-connector connections are ready
18
+ 2022-06-20T11:29:17+09:00 info: postgresql-connector connections are ready
19
+ 2022-06-20T11:29:17+09:00 info: mqtt-connector connections are ready
20
+ 2022-06-20T11:29:17+09:00 info: mssql-connector connections are ready
21
+ 2022-06-20T11:29:17+09:00 info: oracle-connector connections are ready
22
+ 2022-06-20T11:29:17+09:00 info: mysql-connector connections are ready
23
+ 2022-06-20T11:29:17+09:00 info: socket servers are ready
24
+ 2022-06-20T11:29:17+09:00 info: All connector for 'echo-back-server' ready
25
+ 2022-06-20T11:29:17+09:00 info: All connector for 'echo-back' ready
26
+ 2022-06-20T11:29:17+09:00 info: All connector for 'http-connector' ready
27
+ 2022-06-20T11:29:17+09:00 info: All connector for 'graphql-connector' ready
28
+ 2022-06-20T11:29:17+09:00 info: All connector for 'sqlite-connector' ready
29
+ 2022-06-20T11:29:17+09:00 info: All connector for 'postgresql-connector' ready
30
+ 2022-06-20T11:29:17+09:00 info: All connector for 'mqtt-connector' ready
31
+ 2022-06-20T11:29:17+09:00 info: All connector for 'mssql-connector' ready
32
+ 2022-06-20T11:29:17+09:00 info: All connector for 'oracle-connector' ready
33
+ 2022-06-20T11:29:17+09:00 info: All connector for 'mysql-connector' ready
34
+ 2022-06-20T11:29:17+09:00 info: All connector for 'socket-server' ready
35
+ 2022-06-20T11:29:17+09:00 info: ConnectionManager initialization done:
@@ -0,0 +1,35 @@
1
+ 2022-06-20T12:01:46+09:00 info: Initializing ConnectionManager...
2
+ 2022-06-20T12:01:46+09:00 info: Connector 'echo-back-server' started to ready
3
+ 2022-06-20T12:01:46+09:00 info: Connector 'echo-back' started to ready
4
+ 2022-06-20T12:01:46+09:00 info: Connector 'http-connector' started to ready
5
+ 2022-06-20T12:01:46+09:00 info: Connector 'graphql-connector' started to ready
6
+ 2022-06-20T12:01:46+09:00 info: Connector 'sqlite-connector' started to ready
7
+ 2022-06-20T12:01:46+09:00 info: Connector 'postgresql-connector' started to ready
8
+ 2022-06-20T12:01:46+09:00 info: Connector 'mqtt-connector' started to ready
9
+ 2022-06-20T12:01:46+09:00 info: Connector 'mssql-connector' started to ready
10
+ 2022-06-20T12:01:46+09:00 info: Connector 'oracle-connector' started to ready
11
+ 2022-06-20T12:01:46+09:00 info: Connector 'mysql-connector' started to ready
12
+ 2022-06-20T12:01:46+09:00 info: Connector 'socket-server' started to ready
13
+ 2022-06-20T12:01:46+09:00 info: echo-back-servers are ready
14
+ 2022-06-20T12:01:46+09:00 info: echo-back connections are ready
15
+ 2022-06-20T12:01:46+09:00 info: http-connector connections are ready
16
+ 2022-06-20T12:01:46+09:00 info: graphql-connector connections are ready
17
+ 2022-06-20T12:01:46+09:00 info: sqlite-connector connections are ready
18
+ 2022-06-20T12:01:46+09:00 info: postgresql-connector connections are ready
19
+ 2022-06-20T12:01:46+09:00 info: mqtt-connector connections are ready
20
+ 2022-06-20T12:01:46+09:00 info: mssql-connector connections are ready
21
+ 2022-06-20T12:01:46+09:00 info: oracle-connector connections are ready
22
+ 2022-06-20T12:01:46+09:00 info: mysql-connector connections are ready
23
+ 2022-06-20T12:01:46+09:00 info: socket servers are ready
24
+ 2022-06-20T12:01:46+09:00 info: All connector for 'echo-back-server' ready
25
+ 2022-06-20T12:01:46+09:00 info: All connector for 'echo-back' ready
26
+ 2022-06-20T12:01:46+09:00 info: All connector for 'http-connector' ready
27
+ 2022-06-20T12:01:46+09:00 info: All connector for 'graphql-connector' ready
28
+ 2022-06-20T12:01:46+09:00 info: All connector for 'sqlite-connector' ready
29
+ 2022-06-20T12:01:46+09:00 info: All connector for 'postgresql-connector' ready
30
+ 2022-06-20T12:01:46+09:00 info: All connector for 'mqtt-connector' ready
31
+ 2022-06-20T12:01:46+09:00 info: All connector for 'mssql-connector' ready
32
+ 2022-06-20T12:01:46+09:00 info: All connector for 'oracle-connector' ready
33
+ 2022-06-20T12:01:46+09:00 info: All connector for 'mysql-connector' ready
34
+ 2022-06-20T12:01:46+09:00 info: All connector for 'socket-server' ready
35
+ 2022-06-20T12:01:46+09:00 info: ConnectionManager initialization done:
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@operato/scene-label",
3
3
  "description": "Barcode Label component for things-scene",
4
- "version": "1.0.0-alpha.21",
4
+ "version": "1.0.0-alpha.24",
5
5
  "things-scene": true,
6
6
  "main": "dist/index.js",
7
7
  "module": "dist/index.js",
@@ -26,15 +26,16 @@
26
26
  "migration": "things-factory-migration"
27
27
  },
28
28
  "dependencies": {
29
- "@hatiolab/things-scene": "^3.0.12",
30
- "@operato/input": "^1.0.0-beta.32",
29
+ "@hatiolab/things-scene": "^3.0.13",
30
+ "@operato/input": "^1.0.0-beta.38",
31
31
  "bwip-js": "^3.0.4"
32
32
  },
33
33
  "devDependencies": {
34
34
  "@hatiolab/prettier-config": "^1.0.0",
35
- "@operato/board": "^1.0.0-beta.32",
36
- "@things-factory/builder": "^5.0.0-zeta.1",
37
- "@things-factory/operato-board": "^5.0.0-zeta.1",
35
+ "@operato/barcode": "^1.0.0-beta.38",
36
+ "@operato/board": "^1.0.0-beta.38",
37
+ "@things-factory/builder": "^5.0.0-zeta.5",
38
+ "@things-factory/operato-board": "^5.0.0-zeta.5",
38
39
  "@types/codemirror": "^5.60.5",
39
40
  "@types/w3c-web-usb": "^1.0.5",
40
41
  "@typescript-eslint/eslint-plugin": "^4.33.0",
@@ -61,5 +62,5 @@
61
62
  "prettier --write"
62
63
  ]
63
64
  },
64
- "gitHead": "eb6fab63e55c177e1e741757a5de4d242bf84039"
65
+ "gitHead": "7562bd8a81815fe82aa33550d052904704df6c4d"
65
66
  }
@@ -22,8 +22,8 @@ const NATURE: ComponentNature = {
22
22
  },
23
23
  {
24
24
  type: 'checkbox',
25
- label: 'select-over-change',
26
- name: 'selectOverChange'
25
+ label: 'select-after-change',
26
+ name: 'selectAfterChange'
27
27
  }
28
28
  ],
29
29
  help: 'scene/component/barcode-scanner'
@@ -52,14 +52,9 @@ export default class BarcodeScanner extends HTMLOverlayElement {
52
52
  ready() {
53
53
  super.ready()
54
54
  var scanInput = this.element as OxInputBarcode
55
- // 엔터 키 입력 시 컴포넌트 데이터 세팅
56
- scanInput.addEventListener('keyup', (e: Event) => {
57
- if ((e as KeyboardEvent).key === 'Enter') {
58
- e.preventDefault()
59
- if (scanInput.input) {
60
- this.data = scanInput.input.value
61
- }
62
- }
55
+
56
+ scanInput.addEventListener('change', (e: Event) => {
57
+ this.data = scanInput.value
63
58
  })
64
59
 
65
60
  // 스캔 시 컴포넌트 데이터 세팅
@@ -71,11 +66,11 @@ export default class BarcodeScanner extends HTMLOverlayElement {
71
66
  }
72
67
 
73
68
  setElementProperties(input: OxInputBarcode) {
74
- const { withoutEnter = false, englishOnly = false, selectOverChange = false } = this.state
69
+ const { withoutEnter = false, englishOnly = false, selectAfterChange = false } = this.state
75
70
 
76
71
  input.withoutEnter = withoutEnter
77
72
  input.englishOnly = englishOnly
78
- input.selectOverChange = selectOverChange
73
+ input.selectAfterChange = selectAfterChange
79
74
 
80
75
  input.value = this._data = this.text
81
76
  }
@@ -3,9 +3,7 @@
3
3
  */
4
4
 
5
5
  import { Component, ComponentNature, Properties, RectPath, Shape } from '@hatiolab/things-scene'
6
-
7
- import { BrowserPrinter } from './direct-print/browser-printer'
8
- import { USBPrinter } from './direct-print/usb-printer'
6
+ import { BrowserPrinter, USBPrinter } from '@operato/barcode'
9
7
 
10
8
  const NATURE: ComponentNature = {
11
9
  mutable: false,
@@ -9,5 +9,5 @@
9
9
  "label.copies": "copies",
10
10
  "label.without-enter": "without enter key",
11
11
  "label.english-only": "english input only",
12
- "label.select-over-change": "select over change"
12
+ "label.select-after-change": "select over change"
13
13
  }