blixify-ui-web 1.2.149 → 1.2.151

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 (50) hide show
  1. package/lib/components/chart/ganttChart/index.d.ts +3 -0
  2. package/lib/components/chart/ganttChart/index.d.ts.map +1 -1
  3. package/lib/components/chart/ganttChart/index.js +33 -20
  4. package/lib/components/chart/ganttChart/index.js.map +1 -1
  5. package/lib/components/chat/chatBase/index.d.ts +1 -0
  6. package/lib/components/chat/chatBase/index.d.ts.map +1 -1
  7. package/lib/components/chat/chatBase/index.js +52 -11
  8. package/lib/components/chat/chatBase/index.js.map +1 -1
  9. package/lib/components/data/dataTemplate/activityComposer.d.ts.map +1 -1
  10. package/lib/components/data/dataTemplate/activityComposer.js +91 -4
  11. package/lib/components/data/dataTemplate/activityComposer.js.map +1 -1
  12. package/lib/components/data/dataTemplate/dataStateModel.d.ts +1 -0
  13. package/lib/components/data/dataTemplate/dataStateModel.d.ts.map +1 -1
  14. package/lib/components/data/dataTemplate/dataStateModel.js.map +1 -1
  15. package/lib/components/data/dataTemplate/index.d.ts.map +1 -1
  16. package/lib/components/data/dataTemplate/index.js +42 -16
  17. package/lib/components/data/dataTemplate/index.js.map +1 -1
  18. package/lib/components/data/dataTemplate/model.d.ts +2 -0
  19. package/lib/components/data/dataTemplate/model.d.ts.map +1 -1
  20. package/lib/components/data/dataTemplate/unionPagination.d.ts +20 -0
  21. package/lib/components/data/dataTemplate/unionPagination.d.ts.map +1 -0
  22. package/lib/components/data/dataTemplate/unionPagination.js +37 -0
  23. package/lib/components/data/dataTemplate/unionPagination.js.map +1 -0
  24. package/lib/components/data/readQueryHoc/index.d.ts.map +1 -1
  25. package/lib/components/data/readQueryHoc/index.js +7 -0
  26. package/lib/components/data/readQueryHoc/index.js.map +1 -1
  27. package/lib/components/data/updateModule.d.ts +1 -1
  28. package/lib/components/data/updateModule.d.ts.map +1 -1
  29. package/lib/components/data/updateModule.js +15 -1
  30. package/lib/components/data/updateModule.js.map +1 -1
  31. package/lib/components/data/utils.d.ts.map +1 -1
  32. package/lib/components/data/utils.js +1 -0
  33. package/lib/components/data/utils.js.map +1 -1
  34. package/lib/components/display/newPagination/index.d.ts +3 -1
  35. package/lib/components/display/newPagination/index.d.ts.map +1 -1
  36. package/lib/components/display/newPagination/index.js +134 -13
  37. package/lib/components/display/newPagination/index.js.map +1 -1
  38. package/lib/components/display/newTable/index.d.ts.map +1 -1
  39. package/lib/components/display/newTable/index.js +22 -7
  40. package/lib/components/display/newTable/index.js.map +1 -1
  41. package/lib/components/input/signature/index.d.ts +3 -0
  42. package/lib/components/input/signature/index.d.ts.map +1 -1
  43. package/lib/components/input/signature/index.js +105 -12
  44. package/lib/components/input/signature/index.js.map +1 -1
  45. package/lib/components/input/textInput/index.d.ts +26 -0
  46. package/lib/components/input/textInput/index.d.ts.map +1 -1
  47. package/lib/components/input/textInput/index.js +222 -0
  48. package/lib/components/input/textInput/index.js.map +1 -1
  49. package/lib/tail.css +2 -2
  50. package/package.json +2 -1
@@ -109,6 +109,38 @@ var renderFormattedDescription = function (text) {
109
109
  return part.startsWith("*") && part.endsWith("*") ? (react_1.default.createElement("strong", { key: j }, part.slice(1, -1))) : (part);
110
110
  }))); }))); });
111
111
  };
112
+ // INFO: the canvas is read back through fillStyle so named, hex and rgb colours all
113
+ // resolve; returns null for anything that does not come back as a plain hex colour
114
+ var handleParseColor = function (color) {
115
+ var _a;
116
+ var ctx = document.createElement("canvas").getContext("2d");
117
+ var resolved = color;
118
+ if (ctx) {
119
+ ctx.fillStyle = "#000000";
120
+ ctx.fillStyle = color;
121
+ resolved = String(ctx.fillStyle);
122
+ }
123
+ var hex = (_a = /^#([0-9a-f]{6})$/i.exec(resolved)) === null || _a === void 0 ? void 0 : _a[1];
124
+ if (hex) {
125
+ return {
126
+ red: parseInt(hex.slice(0, 2), 16),
127
+ green: parseInt(hex.slice(2, 4), 16),
128
+ blue: parseInt(hex.slice(4, 6), 16),
129
+ };
130
+ }
131
+ if (/^(white|#fff)$/i.test(resolved.trim())) {
132
+ return { red: 255, green: 255, blue: 255 };
133
+ }
134
+ return null;
135
+ };
136
+ // INFO: the pad exports ink on a transparent background, so light ink (the white
137
+ // pen used on the dark pad) would be invisible on a white PDF or print
138
+ var handleIsLightColor = function (color) {
139
+ var rgb = handleParseColor(color);
140
+ if (!rgb)
141
+ return false;
142
+ return (0.299 * rgb.red + 0.587 * rgb.green + 0.114 * rgb.blue) / 255 > 0.75;
143
+ };
112
144
  var Signature = /** @class */ (function (_super) {
113
145
  __extends(Signature, _super);
114
146
  function Signature() {
@@ -307,6 +339,8 @@ var Signature = /** @class */ (function (_super) {
307
339
  }
308
340
  ctx_1 === null || ctx_1 === void 0 ? void 0 : ctx_1.clearRect(0, 0, canvasWidth, canvasHeight);
309
341
  ctx_1 === null || ctx_1 === void 0 ? void 0 : ctx_1.drawImage(img_1, offsetX, offsetY, drawWidth, drawHeight);
342
+ if (ctx_1)
343
+ _this.handleTintLoadedInk(ctx_1, canvasWidth, canvasHeight);
310
344
  };
311
345
  img_1.src = reader_1.result;
312
346
  }
@@ -340,9 +374,9 @@ var Signature = /** @class */ (function (_super) {
340
374
  };
341
375
  _this.handleSubmit = function () { return __awaiter(_this, void 0, void 0, function () {
342
376
  var testCond, error, canvasImgDataURL, dataURLToSubmit;
343
- var _a, _b;
344
- return __generator(this, function (_c) {
345
- switch (_c.label) {
377
+ var _a;
378
+ return __generator(this, function (_b) {
379
+ switch (_b.label) {
346
380
  case 0:
347
381
  testCond = false;
348
382
  error = "Signature is required to proceed";
@@ -364,15 +398,15 @@ var Signature = /** @class */ (function (_super) {
364
398
  if (!!testCond) return [3 /*break*/, 2];
365
399
  return [4 /*yield*/, this.setAsyncState({ error: error })];
366
400
  case 1:
367
- _c.sent();
401
+ _b.sent();
368
402
  return [3 /*break*/, 4];
369
403
  case 2: return [4 /*yield*/, this.setAsyncState({ error: "" })];
370
404
  case 3:
371
- _c.sent();
405
+ _b.sent();
372
406
  if (this.signatureRef) {
373
407
  canvasImgDataURL = this.signatureRef.isEmpty()
374
408
  ? ""
375
- : (_b = this.signatureRef.getCanvas()) === null || _b === void 0 ? void 0 : _b.toDataURL();
409
+ : this.handleExportDataURL();
376
410
  dataURLToSubmit = undefined;
377
411
  if (canvasImgDataURL) {
378
412
  // User has drawn something (new signature or after clearing)
@@ -400,7 +434,7 @@ var Signature = /** @class */ (function (_super) {
400
434
  this.isCleared = false;
401
435
  this.hasDrawnAfterClear = false;
402
436
  }
403
- _c.label = 4;
437
+ _b.label = 4;
404
438
  case 4: return [2 /*return*/, testCond];
405
439
  }
406
440
  });
@@ -424,7 +458,7 @@ var Signature = /** @class */ (function (_super) {
424
458
  }
425
459
  };
426
460
  _this.renderSignatureCanvas = function () {
427
- var _a, _b, _c, _d, _e, _f, _g, _h;
461
+ var _a, _b, _c, _d, _e, _f, _g;
428
462
  var canvasWidth = _this.state.canvasWidth;
429
463
  var canvasHeight = _this.state.canvasHeight;
430
464
  var containerRect = (_a = _this.containerRef.current) === null || _a === void 0 ? void 0 : _a.getBoundingClientRect();
@@ -492,9 +526,11 @@ var Signature = /** @class */ (function (_super) {
492
526
  }, 200);
493
527
  }
494
528
  }
495
- }, penColor: (_h = _this.props.penColor) !== null && _h !== void 0 ? _h : "black",
496
- // INFO: the exported image's background, so a dark-mode signature is not saved on white
497
- backgroundColor: _this.handleResolvePadSurface(), canvasProps: {
529
+ }, penColor: _this.handleResolvePenColor(),
530
+ // INFO: transparent so the export is ink-on-transparent, not the dark pad
531
+ // surface. The dark pad look comes from the wrapper's backgroundColor, which
532
+ // is cosmetic only; light ink is recoloured on export (handleExportDataURL).
533
+ backgroundColor: "rgba(0,0,0,0)", canvasProps: {
498
534
  width: constrainedWidth,
499
535
  height: constrainedHeight,
500
536
  style: {
@@ -514,8 +550,65 @@ var Signature = /** @class */ (function (_super) {
514
550
  }, clearOnResize: false })));
515
551
  };
516
552
  // INFO: hex, not a class, because the canvas needs a colour value — gray-800 / white,
517
- // the same surface as the other inputs' dark mode
553
+ // the same surface as the other inputs' dark mode. This colours the visible wrapper
554
+ // ONLY — it is never exported into the signature image (see backgroundColor above).
518
555
  _this.handleResolvePadSurface = function () { return (_this.props.darkMode ? "#1f2937" : "#ffffff"); };
556
+ // INFO: an explicit penColor always wins; otherwise default to white in dark mode so
557
+ // the stroke is visible on the dark pad — a black default would be near-invisible.
558
+ _this.handleResolvePenColor = function () { var _a; return (_a = _this.props.penColor) !== null && _a !== void 0 ? _a : (_this.props.darkMode ? "#ffffff" : "black"); };
559
+ // INFO: a saved signature is black ink on transparent, which would vanish on the
560
+ // dark pad. Draw it in the pen colour instead; an opaque image (an older dark-pad
561
+ // export) carries its own background and is left as it is.
562
+ _this.handleTintLoadedInk = function (ctx, width, height) {
563
+ if (!_this.props.darkMode)
564
+ return;
565
+ var rgb = handleParseColor(_this.handleResolvePenColor());
566
+ if (!rgb || !handleIsLightColor(_this.handleResolvePenColor()))
567
+ return;
568
+ var image = ctx.getImageData(0, 0, width, height);
569
+ var pixels = image.data;
570
+ var hasTransparency = false;
571
+ for (var i = 3; i < pixels.length; i += 4) {
572
+ if (pixels[i] < 255) {
573
+ hasTransparency = true;
574
+ break;
575
+ }
576
+ }
577
+ if (!hasTransparency)
578
+ return;
579
+ for (var i = 0; i < pixels.length; i += 4) {
580
+ pixels[i] = rgb.red;
581
+ pixels[i + 1] = rgb.green;
582
+ pixels[i + 2] = rgb.blue;
583
+ }
584
+ ctx.putImageData(image, 0, 0);
585
+ };
586
+ // INFO: what gets saved. Dark ink exports as drawn; light ink (white on the dark
587
+ // pad) is recoloured black, keeping its alpha, so the saved PNG reads on white.
588
+ _this.handleExportDataURL = function () {
589
+ var _a, _b;
590
+ var canvas = (_b = (_a = _this.signatureRef) === null || _a === void 0 ? void 0 : _a.getCanvas) === null || _b === void 0 ? void 0 : _b.call(_a);
591
+ if (!canvas)
592
+ return "";
593
+ if (!handleIsLightColor(_this.handleResolvePenColor())) {
594
+ return canvas.toDataURL();
595
+ }
596
+ var exportCanvas = document.createElement("canvas");
597
+ exportCanvas.width = canvas.width;
598
+ exportCanvas.height = canvas.height;
599
+ var ctx = exportCanvas.getContext("2d");
600
+ if (!ctx)
601
+ return canvas.toDataURL();
602
+ ctx.drawImage(canvas, 0, 0);
603
+ var image = ctx.getImageData(0, 0, exportCanvas.width, exportCanvas.height);
604
+ for (var i = 0; i < image.data.length; i += 4) {
605
+ image.data[i] = 0;
606
+ image.data[i + 1] = 0;
607
+ image.data[i + 2] = 0;
608
+ }
609
+ ctx.putImageData(image, 0, 0);
610
+ return exportCanvas.toDataURL();
611
+ };
519
612
  return _this;
520
613
  }
521
614
  Signature.prototype.componentDidMount = function () {
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/components/input/signature/index.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/components/input/signature/index.tsx"],"names":[],"mappings":"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"}
@@ -1,5 +1,10 @@
1
1
  import React, { Component, ReactElement } from "react";
2
2
  import { CellInput } from "../utils";
3
+ declare global {
4
+ interface Window {
5
+ BarcodeDetector?: any;
6
+ }
7
+ }
3
8
  interface Props extends CellInput {
4
9
  value: any;
5
10
  label: string;
@@ -33,6 +38,8 @@ interface Props extends CellInput {
33
38
  customErrMsg?: string;
34
39
  mobileView?: boolean;
35
40
  customElement?: ReactElement;
41
+ barcodeEnabled?: boolean;
42
+ onRequestScan?: () => Promise<string>;
36
43
  }
37
44
  interface State {
38
45
  countryLetter: any;
@@ -41,10 +48,19 @@ interface State {
41
48
  strSuggestionDropdown: boolean;
42
49
  error: string;
43
50
  showPassword: boolean;
51
+ scannerOpen: boolean;
52
+ scannerError: string;
44
53
  }
45
54
  export declare class TextInput extends Component<Props> {
46
55
  mobilePickerTimeout: any;
47
56
  dropdownRef: any;
57
+ videoRef: any;
58
+ scannerStream: MediaStream | null;
59
+ barcodeDetector: any;
60
+ scanRafId: number | null;
61
+ scannerSession: number;
62
+ scanFailures: number;
63
+ lastScanAt: number;
48
64
  state: State;
49
65
  componentDidMount: () => void;
50
66
  componentWillUnmount: () => void;
@@ -53,6 +69,14 @@ export declare class TextInput extends Component<Props> {
53
69
  handleClickOutside: (event: MouseEvent) => void;
54
70
  handleCountryLetterFromTZ: () => string;
55
71
  handleOnChange: (e: any) => void;
72
+ handleBarcodeSupported: () => boolean;
73
+ handleCreateDetector: () => Promise<any>;
74
+ handleEmitScannedValue: (scannedValue: string) => void;
75
+ handleOpenScanner: () => Promise<void>;
76
+ handleStartScanner: (session: number) => Promise<void>;
77
+ handleScanResult: () => Promise<void>;
78
+ handleReleaseCamera: () => void;
79
+ handleStopScanner: () => void;
56
80
  handleStrSuggestions: (value: string) => void;
57
81
  handleCellOnBlur: () => void;
58
82
  handleMountPhoneNumber: () => void;
@@ -65,6 +89,8 @@ export declare class TextInput extends Component<Props> {
65
89
  handleSubmit: () => Promise<boolean>;
66
90
  renderMobilePickerInput: (defaultClassName: string) => React.JSX.Element;
67
91
  renderStrSuggestions: () => React.JSX.Element;
92
+ renderScanButton: (isMobileLayout: boolean) => React.JSX.Element | null;
93
+ renderScannerModal: () => React.JSX.Element;
68
94
  render(): React.JSX.Element;
69
95
  }
70
96
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/input/textInput/index.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/input/textInput/index.tsx"],"names":[],"mappings":"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"}
@@ -82,13 +82,24 @@ var outline_1 = require("@heroicons/react/24/outline");
82
82
  var solid_2 = require("@heroicons/react/24/solid");
83
83
  var react_2 = __importStar(require("react"));
84
84
  var react_phone_number_input_1 = __importStar(require("react-phone-number-input"));
85
+ var iconButton_1 = require("../../action/iconButton");
85
86
  var infoWindow_1 = require("../../advanced/infoWindow");
87
+ var modal_1 = require("../../display/modal");
88
+ var SCAN_INTERVAL_MS = 200;
89
+ var MAX_SCAN_FAILURES = 15;
86
90
  var TextInput = /** @class */ (function (_super) {
87
91
  __extends(TextInput, _super);
88
92
  function TextInput() {
89
93
  var _this = _super !== null && _super.apply(this, arguments) || this;
90
94
  _this.mobilePickerTimeout = null;
91
95
  _this.dropdownRef = (0, react_2.createRef)();
96
+ _this.videoRef = (0, react_2.createRef)();
97
+ _this.scannerStream = null;
98
+ _this.barcodeDetector = null;
99
+ _this.scanRafId = null;
100
+ _this.scannerSession = 0;
101
+ _this.scanFailures = 0;
102
+ _this.lastScanAt = 0;
92
103
  _this.state = {
93
104
  countryLetter: "MY",
94
105
  countryCode: "",
@@ -96,6 +107,8 @@ var TextInput = /** @class */ (function (_super) {
96
107
  strSuggestionDropdown: false,
97
108
  error: "",
98
109
  showPassword: false,
110
+ scannerOpen: false,
111
+ scannerError: "",
99
112
  };
100
113
  _this.componentDidMount = function () {
101
114
  _this.handleMountPhoneNumber();
@@ -103,6 +116,9 @@ var TextInput = /** @class */ (function (_super) {
103
116
  };
104
117
  _this.componentWillUnmount = function () {
105
118
  document.removeEventListener("mousedown", _this.handleClickOutside);
119
+ // INFO: releasing the camera on unmount is mandatory — a component torn
120
+ // down while the scanner is open would otherwise leave the camera light on
121
+ _this.handleStopScanner();
106
122
  };
107
123
  _this.setAsyncState = function (newState) {
108
124
  return new Promise(function (resolve) { return _this.setState(newState, resolve); });
@@ -152,6 +168,194 @@ var TextInput = /** @class */ (function (_super) {
152
168
  _this.props.onChange(e);
153
169
  }
154
170
  };
171
+ // INFO: every runtime can scan — an app-injected scanner (onRequestScan) wins,
172
+ // then the browser BarcodeDetector, then the lazy-loaded ZXing polyfill. The
173
+ // answer never depends on window, so server and client render the same button.
174
+ _this.handleBarcodeSupported = function () { return !!_this.props.barcodeEnabled; };
175
+ _this.handleCreateDetector = function () { return __awaiter(_this, void 0, void 0, function () {
176
+ var BarcodeDetector;
177
+ return __generator(this, function (_a) {
178
+ switch (_a.label) {
179
+ case 0:
180
+ if (typeof window !== "undefined" && window.BarcodeDetector) {
181
+ return [2 /*return*/, new window.BarcodeDetector()];
182
+ }
183
+ return [4 /*yield*/, Promise.resolve().then(function () { return __importStar(require("barcode-detector")); })];
184
+ case 1:
185
+ BarcodeDetector = (_a.sent()).BarcodeDetector;
186
+ return [2 /*return*/, new BarcodeDetector()];
187
+ }
188
+ });
189
+ }); };
190
+ // INFO: single place both scan paths emit through, so the injected and the
191
+ // web path prefill identically — same event shape as handleOnChange, and
192
+ // honouring capitalize the same way.
193
+ _this.handleEmitScannedValue = function (scannedValue) {
194
+ var _a, _b;
195
+ if (typeof scannedValue !== "string" || !scannedValue)
196
+ return;
197
+ var customEvent = {
198
+ target: {
199
+ id: _this.props.id,
200
+ value: _this.props.capitalize
201
+ ? scannedValue.toUpperCase()
202
+ : scannedValue,
203
+ },
204
+ };
205
+ (_b = (_a = _this.props).onChange) === null || _b === void 0 ? void 0 : _b.call(_a, customEvent);
206
+ };
207
+ _this.handleOpenScanner = function () { return __awaiter(_this, void 0, void 0, function () {
208
+ var _a, err_1, session;
209
+ return __generator(this, function (_b) {
210
+ switch (_b.label) {
211
+ case 0:
212
+ if (this.props.disabled || !this.handleBarcodeSupported())
213
+ return [2 /*return*/];
214
+ if (!this.props.onRequestScan) return [3 /*break*/, 5];
215
+ _b.label = 1;
216
+ case 1:
217
+ _b.trys.push([1, 3, , 4]);
218
+ _a = this.handleEmitScannedValue;
219
+ return [4 /*yield*/, this.props.onRequestScan()];
220
+ case 2:
221
+ _a.apply(this, [_b.sent()]);
222
+ return [3 /*break*/, 4];
223
+ case 3:
224
+ err_1 = _b.sent();
225
+ return [3 /*break*/, 4];
226
+ case 4: return [2 /*return*/];
227
+ case 5:
228
+ session = ++this.scannerSession;
229
+ this.scanFailures = 0;
230
+ return [4 /*yield*/, this.setAsyncState({ scannerOpen: true, scannerError: "" })];
231
+ case 6:
232
+ _b.sent();
233
+ this.handleStartScanner(session);
234
+ return [2 /*return*/];
235
+ }
236
+ });
237
+ }); };
238
+ _this.handleStartScanner = function (session) { return __awaiter(_this, void 0, void 0, function () {
239
+ var _a, stream, video, err_2;
240
+ var _b;
241
+ return __generator(this, function (_c) {
242
+ switch (_c.label) {
243
+ case 0:
244
+ _c.trys.push([0, 6, , 7]);
245
+ if (!((_b = navigator.mediaDevices) === null || _b === void 0 ? void 0 : _b.getUserMedia)) {
246
+ this.setState({
247
+ scannerError: "The camera needs a secure (https) connection. Please open this page over https.",
248
+ });
249
+ return [2 /*return*/];
250
+ }
251
+ if (!!this.barcodeDetector) return [3 /*break*/, 2];
252
+ _a = this;
253
+ return [4 /*yield*/, this.handleCreateDetector()];
254
+ case 1:
255
+ _a.barcodeDetector = _c.sent();
256
+ _c.label = 2;
257
+ case 2: return [4 /*yield*/, navigator.mediaDevices.getUserMedia({
258
+ video: { facingMode: "environment" },
259
+ })];
260
+ case 3:
261
+ stream = _c.sent();
262
+ // INFO: the scanner may have been closed or unmounted while the
263
+ // permission prompt was open — release the camera instead of adopting it
264
+ if (session !== this.scannerSession) {
265
+ stream.getTracks().forEach(function (track) { return track.stop(); });
266
+ return [2 /*return*/];
267
+ }
268
+ this.scannerStream = stream;
269
+ video = this.videoRef.current;
270
+ if (!video) return [3 /*break*/, 5];
271
+ video.srcObject = stream;
272
+ return [4 /*yield*/, video.play()];
273
+ case 4:
274
+ _c.sent();
275
+ _c.label = 5;
276
+ case 5:
277
+ if (session !== this.scannerSession)
278
+ return [2 /*return*/];
279
+ this.handleScanResult();
280
+ return [3 /*break*/, 7];
281
+ case 6:
282
+ err_2 = _c.sent();
283
+ if (session !== this.scannerSession)
284
+ return [2 /*return*/];
285
+ this.setState({
286
+ scannerError: "Unable to access the camera. Please grant camera permission and try again.",
287
+ });
288
+ return [3 /*break*/, 7];
289
+ case 7: return [2 /*return*/];
290
+ }
291
+ });
292
+ }); };
293
+ _this.handleScanResult = function () { return __awaiter(_this, void 0, void 0, function () {
294
+ var video, session, barcodes, err_3;
295
+ return __generator(this, function (_a) {
296
+ switch (_a.label) {
297
+ case 0:
298
+ video = this.videoRef.current;
299
+ if (!video || !this.barcodeDetector || !this.state.scannerOpen)
300
+ return [2 /*return*/];
301
+ session = this.scannerSession;
302
+ if (!(Date.now() - this.lastScanAt >= SCAN_INTERVAL_MS)) return [3 /*break*/, 4];
303
+ this.lastScanAt = Date.now();
304
+ _a.label = 1;
305
+ case 1:
306
+ _a.trys.push([1, 3, , 4]);
307
+ return [4 /*yield*/, this.barcodeDetector.detect(video)];
308
+ case 2:
309
+ barcodes = _a.sent();
310
+ if (session !== this.scannerSession)
311
+ return [2 /*return*/];
312
+ this.scanFailures = 0;
313
+ if (barcodes && barcodes.length > 0 && barcodes[0].rawValue) {
314
+ this.handleEmitScannedValue(barcodes[0].rawValue);
315
+ this.handleStopScanner();
316
+ return [2 /*return*/];
317
+ }
318
+ return [3 /*break*/, 4];
319
+ case 3:
320
+ err_3 = _a.sent();
321
+ if (session !== this.scannerSession)
322
+ return [2 /*return*/];
323
+ // INFO: one failed frame is not fatal, but a decoder that never works
324
+ // (e.g. the wasm could not be fetched offline) must surface an error
325
+ // instead of leaving the camera running on a dead viewfinder
326
+ if (++this.scanFailures >= MAX_SCAN_FAILURES) {
327
+ this.handleReleaseCamera();
328
+ this.setState({
329
+ scannerError: "Unable to start the barcode scanner. Check your connection and try again.",
330
+ });
331
+ return [2 /*return*/];
332
+ }
333
+ return [3 /*break*/, 4];
334
+ case 4:
335
+ this.scanRafId = requestAnimationFrame(this.handleScanResult);
336
+ return [2 /*return*/];
337
+ }
338
+ });
339
+ }); };
340
+ _this.handleReleaseCamera = function () {
341
+ if (_this.scanRafId !== null) {
342
+ cancelAnimationFrame(_this.scanRafId);
343
+ _this.scanRafId = null;
344
+ }
345
+ if (_this.scannerStream) {
346
+ _this.scannerStream.getTracks().forEach(function (track) { return track.stop(); });
347
+ _this.scannerStream = null;
348
+ }
349
+ };
350
+ _this.handleStopScanner = function () {
351
+ _this.scannerSession++;
352
+ _this.handleReleaseCamera();
353
+ var video = _this.videoRef.current;
354
+ if (video)
355
+ video.srcObject = null;
356
+ if (_this.state.scannerOpen)
357
+ _this.setState({ scannerOpen: false });
358
+ };
155
359
  _this.handleStrSuggestions = function (value) {
156
360
  var _a;
157
361
  if (_this.props.type === "text" &&
@@ -463,6 +667,19 @@ var TextInput = /** @class */ (function (_super) {
463
667
  else
464
668
  return react_2.default.createElement(react_2.default.Fragment, null);
465
669
  };
670
+ _this.renderScanButton = function (isMobileLayout) {
671
+ if (!_this.handleBarcodeSupported())
672
+ return null;
673
+ return (react_2.default.createElement(iconButton_1.IconButton, { size: isMobileLayout ? "small" : undefined, darkMode: _this.props.darkMode, disabled: _this.props.disabled, testId: "".concat(_this.props.id, "-scan-btn"), icon: react_2.default.createElement(outline_1.ViewfinderCircleIcon, { className: isMobileLayout ? "w-4 h-4" : "w-5 h-5" }), onClick: _this.handleOpenScanner }));
674
+ };
675
+ _this.renderScannerModal = function () {
676
+ return (react_2.default.createElement(modal_1.Modal, { open: _this.state.scannerOpen, title: "Scan Barcode", maxWidth: "lg", darkMode: _this.props.darkMode, onClose: _this.handleStopScanner, renderContent: function () { return (react_2.default.createElement("div", { className: "flex flex-col items-center py-2" }, _this.state.scannerError ? (react_2.default.createElement("span", { className: "text-red-500 text-sm py-8 text-center" }, _this.state.scannerError)) : (react_2.default.createElement(react_2.default.Fragment, null,
677
+ react_2.default.createElement("div", { className: "relative w-full overflow-hidden rounded-md bg-black" },
678
+ react_2.default.createElement("video", { ref: _this.videoRef, "data-testid": "".concat(_this.props.id, "-scanner-video"), className: "w-full h-64 object-cover", muted: true, playsInline: true }),
679
+ react_2.default.createElement("div", { className: "pointer-events-none absolute inset-0 flex items-center justify-center" },
680
+ react_2.default.createElement("div", { className: "w-3/4 h-24 border-2 border-white/80 rounded-md" }))),
681
+ react_2.default.createElement("span", { className: "mt-3 text-sm text-gray-500 text-center" }, "Point the camera at a barcode or QR code to scan."))))); } }));
682
+ };
466
683
  return _this;
467
684
  }
468
685
  TextInput.prototype.render = function () {
@@ -510,6 +727,8 @@ var TextInput = /** @class */ (function (_super) {
510
727
  defaultBorder = "border border-transparent hover:border-gray-300";
511
728
  }
512
729
  var useMobileView = (_c = this.props.mobileView) !== null && _c !== void 0 ? _c : false;
730
+ var scanButtonMobile = this.renderScanButton(true);
731
+ var scanButtonDesktop = this.renderScanButton(false);
513
732
  var inputClassName = "block w-full rounded-md ".concat(defaultFontSize, " focus:outline-none focus:ring-0");
514
733
  inputClassName += " ".concat(defaultBorder, " ").concat(defaultPadding, " ").concat(darkField, " focus:border-primary-500");
515
734
  if (this.state.error) {
@@ -555,6 +774,7 @@ var TextInput = /** @class */ (function (_super) {
555
774
  // resolves to auto and the column stacks exactly like the old block did,
556
775
  // so standalone usage is unchanged.
557
776
  react_2.default.createElement("div", { className: "flex flex-col h-full ".concat((_d = this.props.containerClassName) !== null && _d !== void 0 ? _d : "") },
777
+ this.state.scannerOpen && this.renderScannerModal(),
558
778
  useMobileView && (react_2.default.createElement("div", { className: "flex items-center justify-between md:hidden" },
559
779
  react_2.default.createElement("div", { className: "flex flex-col flex-1 min-w-0" },
560
780
  (this.props.label || this.props.labelExtra) && (react_2.default.createElement("label", { className: "text-sm font-medium ".concat(labelColor) },
@@ -564,6 +784,7 @@ var TextInput = /** @class */ (function (_super) {
564
784
  this.props.subLabel && (react_2.default.createElement("label", { className: "text-xs font-medium ".concat(subColor, " mt-0.5") }, this.props.subLabel))),
565
785
  react_2.default.createElement("div", { className: "flex items-center justify-end ml-3 flex-1 min-w-0" },
566
786
  this.props.customElement && (react_2.default.createElement("div", { className: "mr-2" }, this.props.customElement)),
787
+ scanButtonMobile && react_2.default.createElement("div", { className: "mr-2" }, scanButtonMobile),
567
788
  this.props.infoElement &&
568
789
  react_2.default.isValidElement(this.props.infoElement) && (react_2.default.createElement("div", { className: "mr-2" },
569
790
  react_2.default.createElement(infoWindow_1.InfoWindow, { type: "bottom end", icon: react_2.default.createElement(solid_2.QuestionMarkCircleIcon, { className: "w-4 h-4 text-gray-400" }), content: this.props.infoElement }))),
@@ -580,6 +801,7 @@ var TextInput = /** @class */ (function (_super) {
580
801
  this.props.subLabel && (react_2.default.createElement("label", { className: "block text-xs font-medium ".concat(subColor, " mb-2") }, this.props.subLabel))),
581
802
  react_2.default.createElement("div", { className: "flex-grow" }),
582
803
  this.props.customElement && (react_2.default.createElement("div", { className: "self-center" }, this.props.customElement)),
804
+ scanButtonDesktop && (react_2.default.createElement("div", { className: "self-center" }, scanButtonDesktop)),
583
805
  this.props.infoElement &&
584
806
  react_2.default.isValidElement(this.props.infoElement) && (react_2.default.createElement("div", { className: "self-center" },
585
807
  react_2.default.createElement(infoWindow_1.InfoWindow, { type: "bottom end", icon: react_2.default.createElement(solid_2.QuestionMarkCircleIcon, { className: "w-5 h-5 text-gray-400" }), content: this.props.infoElement })))),