@open-tender/store 1.1.116 → 1.1.118

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.
@@ -1,12 +1,13 @@
1
1
  import { SignInQrProps } from '@open-tender/ui';
2
2
  import React, { ReactNode } from 'react';
3
3
  import { ScanListener } from '../hooks/types';
4
- declare const SignInQr: ({ close, callback, children, listener, cameraScanner, type }: {
4
+ declare const SignInQr: ({ close, callback, children, listener, cameraScanner, type, imageUrl }: {
5
5
  close: () => void;
6
6
  callback?: () => void;
7
7
  children: (props: SignInQrProps) => ReactNode;
8
8
  listener: ScanListener;
9
9
  cameraScanner: ScanListener;
10
10
  type?: string;
11
+ imageUrl?: string;
11
12
  }) => React.JSX.Element;
12
13
  export default SignInQr;
@@ -1,63 +1,21 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  var tslib_1 = require("tslib");
4
- var utils_1 = require("@open-tender/utils");
5
4
  var react_1 = tslib_1.__importStar(require("react"));
6
5
  var hooks_1 = require("../app/hooks");
7
6
  var hooks_2 = require("../hooks");
8
7
  var slices_1 = require("../slices");
9
8
  var SignInQr = function (_a) {
10
- var close = _a.close, callback = _a.callback, children = _a.children, listener = _a.listener, cameraScanner = _a.cameraScanner, type = _a.type;
11
- var dispatch = (0, hooks_1.useAppDispatch)();
12
- var _b = (0, react_1.useState)(false), submitted = _b[0], setSubmitted = _b[1];
13
- var _c = (0, react_1.useState)(false), hasRead = _c[0], setHasRead = _c[1];
14
- var _d = (0, react_1.useState)(null), errMsg = _d[0], setErrMsg = _d[1];
15
- var _e = (0, hooks_1.useAppSelector)(slices_1.selectKioskConfig), config = _e.signInQr, errorMessageConfig = _e.errorMessage, modalContentConfig = _e.modalContent;
16
- var api = (0, hooks_1.useAppSelector)(slices_1.selectApi);
17
- var scan = (0, hooks_2.useBarcodeScanner)(listener, cameraScanner, type, api);
18
- var _f = (0, hooks_1.useAppSelector)(slices_1.selectCustomerIdentify), customer = _f.data, loading = _f.loading, error = _f.error;
19
- var isLoading = loading === 'pending';
20
- var cancel = function () {
21
- if (!(scan === null || scan === void 0 ? void 0 : scan.code))
22
- scan === null || scan === void 0 ? void 0 : scan.cancel();
23
- close();
24
- };
25
- var retry = function () {
26
- (scan === null || scan === void 0 ? void 0 : scan.reset) && scan.reset();
27
- setHasRead(false);
28
- setErrMsg(null);
29
- };
30
- (0, react_1.useEffect)(function () {
31
- if (scan === null || scan === void 0 ? void 0 : scan.error) {
32
- setErrMsg(scan.error);
33
- }
34
- else if ((scan === null || scan === void 0 ? void 0 : scan.code) && !customer) {
35
- dispatch((0, slices_1.fetchCustomerIdentify)({ qr_code: scan.code }));
36
- setSubmitted(true);
37
- }
38
- else if (!hasRead) {
39
- setHasRead(true);
40
- scan === null || scan === void 0 ? void 0 : scan.read();
41
- }
42
- }, [dispatch, scan, close, customer, hasRead]);
43
- var handlers = { close: cancel, retry: retry };
44
- (0, react_1.useEffect)(function () {
45
- if (submitted && !isLoading) {
46
- if (error) {
47
- var detail = (0, utils_1.handleRespError)(error).detail;
48
- setErrMsg(detail || 'Something went wrong');
49
- }
50
- else {
51
- callback ? callback() : close();
52
- }
53
- }
54
- }, [submitted, isLoading, error, close, callback]);
9
+ var close = _a.close, callback = _a.callback, children = _a.children, listener = _a.listener, cameraScanner = _a.cameraScanner, type = _a.type, imageUrl = _a.imageUrl;
10
+ var _b = (0, hooks_1.useAppSelector)(slices_1.selectKioskConfig), config = _b.signInQr, errorMessageConfig = _b.errorMessage, modalContentConfig = _b.modalContent;
11
+ var _c = (0, hooks_2.useSignInQr)(listener, cameraScanner, type, close, callback), handlers = _c.handlers, errMsg = _c.errMsg, scan = _c.scan;
55
12
  var CameraComponent = (0, react_1.useMemo)(function () { return scan === null || scan === void 0 ? void 0 : scan.camera; }, [scan]);
56
13
  return (react_1.default.createElement(react_1.default.Fragment, null,
57
14
  children({
58
15
  config: config,
59
16
  handlers: handlers,
60
17
  errMsg: errMsg,
18
+ imageUrl: imageUrl,
61
19
  errorMessageConfig: errorMessageConfig,
62
20
  modalContentConfig: modalContentConfig
63
21
  }),
@@ -14,4 +14,5 @@ import useOrderValidate from './useOrderValidate';
14
14
  import usePrevious from './usePrevious';
15
15
  import usePunch from './usePunch';
16
16
  import useRefund from './useRefund';
17
- export { useBarcode, useCardSwipe, useChipDNATender, useCustomerRewards, useEmployee, useGiftCardBalance, useKioskImageUrl, useOrder, useOrderValidate, usePrevious, usePunch, useRefund, useBarcodeCameraScanner, useBarcodeUSB, useBarcodeScanner, BarcodeScannerType, BarcodeScannerMethod, ScanListener };
17
+ import useSignInQr from './useSignInQr';
18
+ export { useBarcode, useBarcodeCameraScanner, useBarcodeScanner, useBarcodeUSB, useCardSwipe, useChipDNATender, useCustomerRewards, useEmployee, useGiftCardBalance, useKioskImageUrl, useOrder, useOrderValidate, usePrevious, usePunch, useRefund, useSignInQr, BarcodeScannerType, BarcodeScannerMethod, ScanListener };
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.ScanListener = exports.BarcodeScannerType = exports.useBarcodeScanner = exports.useBarcodeUSB = exports.useBarcodeCameraScanner = exports.useRefund = exports.usePunch = exports.usePrevious = exports.useOrderValidate = exports.useOrder = exports.useKioskImageUrl = exports.useGiftCardBalance = exports.useEmployee = exports.useCustomerRewards = exports.useChipDNATender = exports.useCardSwipe = exports.useBarcode = void 0;
3
+ exports.ScanListener = exports.BarcodeScannerType = exports.useSignInQr = exports.useRefund = exports.usePunch = exports.usePrevious = exports.useOrderValidate = exports.useOrder = exports.useKioskImageUrl = exports.useGiftCardBalance = exports.useEmployee = exports.useCustomerRewards = exports.useChipDNATender = exports.useCardSwipe = exports.useBarcodeUSB = exports.useBarcodeScanner = exports.useBarcodeCameraScanner = exports.useBarcode = void 0;
4
4
  var tslib_1 = require("tslib");
5
5
  var types_1 = require("./types");
6
6
  Object.defineProperty(exports, "BarcodeScannerType", { enumerable: true, get: function () { return types_1.BarcodeScannerType; } });
@@ -35,3 +35,5 @@ var usePunch_1 = tslib_1.__importDefault(require("./usePunch"));
35
35
  exports.usePunch = usePunch_1.default;
36
36
  var useRefund_1 = tslib_1.__importDefault(require("./useRefund"));
37
37
  exports.useRefund = useRefund_1.default;
38
+ var useSignInQr_1 = tslib_1.__importDefault(require("./useSignInQr"));
39
+ exports.useSignInQr = useSignInQr_1.default;
@@ -0,0 +1,10 @@
1
+ import { ScanListener } from './types';
2
+ declare const useSignInQr: (listener: ScanListener, cameraScanner: ScanListener, type?: string, close?: () => void, callback?: () => void) => {
3
+ handlers: {
4
+ close: () => void;
5
+ retry: () => void;
6
+ };
7
+ errMsg: string | null;
8
+ scan: import("./types").BarcodeScannerMethod | undefined;
9
+ };
10
+ export default useSignInQr;
@@ -0,0 +1,55 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ var utils_1 = require("@open-tender/utils");
4
+ var react_1 = require("react");
5
+ var hooks_1 = require("../app/hooks");
6
+ var slices_1 = require("../slices");
7
+ var useBarcodeScanner_1 = require("./useBarcodeScanner");
8
+ var useSignInQr = function (listener, cameraScanner, type, close, callback) {
9
+ var dispatch = (0, hooks_1.useAppDispatch)();
10
+ var _a = (0, react_1.useState)(false), submitted = _a[0], setSubmitted = _a[1];
11
+ var _b = (0, react_1.useState)(false), hasRead = _b[0], setHasRead = _b[1];
12
+ var _c = (0, react_1.useState)(null), errMsg = _c[0], setErrMsg = _c[1];
13
+ var api = (0, hooks_1.useAppSelector)(slices_1.selectApi);
14
+ var scan = (0, useBarcodeScanner_1.useBarcodeScanner)(listener, cameraScanner, type, api);
15
+ var _d = (0, hooks_1.useAppSelector)(slices_1.selectCustomerIdentify), customer = _d.data, loading = _d.loading, error = _d.error;
16
+ var isLoading = loading === 'pending';
17
+ var cancel = function () {
18
+ if (!(scan === null || scan === void 0 ? void 0 : scan.code))
19
+ scan === null || scan === void 0 ? void 0 : scan.cancel();
20
+ if (close)
21
+ close();
22
+ };
23
+ var retry = function () {
24
+ (scan === null || scan === void 0 ? void 0 : scan.reset) && scan.reset();
25
+ setHasRead(false);
26
+ setErrMsg(null);
27
+ };
28
+ (0, react_1.useEffect)(function () {
29
+ if (scan === null || scan === void 0 ? void 0 : scan.error) {
30
+ setErrMsg(scan.error);
31
+ }
32
+ else if ((scan === null || scan === void 0 ? void 0 : scan.code) && !customer) {
33
+ dispatch((0, slices_1.fetchCustomerIdentify)({ qr_code: scan.code }));
34
+ setSubmitted(true);
35
+ }
36
+ else if (!hasRead) {
37
+ setHasRead(true);
38
+ scan === null || scan === void 0 ? void 0 : scan.read();
39
+ }
40
+ }, [dispatch, scan, close, customer, hasRead]);
41
+ var handlers = { close: cancel, retry: retry };
42
+ (0, react_1.useEffect)(function () {
43
+ if (submitted && !isLoading) {
44
+ if (error) {
45
+ var detail = (0, utils_1.handleRespError)(error).detail;
46
+ setErrMsg(detail || 'Something went wrong');
47
+ }
48
+ else {
49
+ callback ? callback() : close ? close() : null;
50
+ }
51
+ }
52
+ }, [submitted, isLoading, error, close, callback]);
53
+ return { handlers: handlers, errMsg: errMsg, scan: scan };
54
+ };
55
+ exports.default = useSignInQr;
@@ -1,12 +1,13 @@
1
1
  import { SignInQrProps } from '@open-tender/ui';
2
2
  import React, { ReactNode } from 'react';
3
3
  import { ScanListener } from '../hooks/types';
4
- declare const SignInQr: ({ close, callback, children, listener, cameraScanner, type }: {
4
+ declare const SignInQr: ({ close, callback, children, listener, cameraScanner, type, imageUrl }: {
5
5
  close: () => void;
6
6
  callback?: () => void;
7
7
  children: (props: SignInQrProps) => ReactNode;
8
8
  listener: ScanListener;
9
9
  cameraScanner: ScanListener;
10
10
  type?: string;
11
+ imageUrl?: string;
11
12
  }) => React.JSX.Element;
12
13
  export default SignInQr;
@@ -1,60 +1,18 @@
1
- import { handleRespError } from '@open-tender/utils';
2
- import React, { useEffect, useMemo, useState } from 'react';
3
- import { useAppDispatch, useAppSelector } from '../app/hooks';
4
- import { useBarcodeScanner } from '../hooks';
5
- import { fetchCustomerIdentify, selectApi, selectCustomerIdentify, selectKioskConfig } from '../slices';
1
+ import React, { useMemo } from 'react';
2
+ import { useAppSelector } from '../app/hooks';
3
+ import { useSignInQr } from '../hooks';
4
+ import { selectKioskConfig } from '../slices';
6
5
  var SignInQr = function (_a) {
7
- var close = _a.close, callback = _a.callback, children = _a.children, listener = _a.listener, cameraScanner = _a.cameraScanner, type = _a.type;
8
- var dispatch = useAppDispatch();
9
- var _b = useState(false), submitted = _b[0], setSubmitted = _b[1];
10
- var _c = useState(false), hasRead = _c[0], setHasRead = _c[1];
11
- var _d = useState(null), errMsg = _d[0], setErrMsg = _d[1];
12
- var _e = useAppSelector(selectKioskConfig), config = _e.signInQr, errorMessageConfig = _e.errorMessage, modalContentConfig = _e.modalContent;
13
- var api = useAppSelector(selectApi);
14
- var scan = useBarcodeScanner(listener, cameraScanner, type, api);
15
- var _f = useAppSelector(selectCustomerIdentify), customer = _f.data, loading = _f.loading, error = _f.error;
16
- var isLoading = loading === 'pending';
17
- var cancel = function () {
18
- if (!(scan === null || scan === void 0 ? void 0 : scan.code))
19
- scan === null || scan === void 0 ? void 0 : scan.cancel();
20
- close();
21
- };
22
- var retry = function () {
23
- (scan === null || scan === void 0 ? void 0 : scan.reset) && scan.reset();
24
- setHasRead(false);
25
- setErrMsg(null);
26
- };
27
- useEffect(function () {
28
- if (scan === null || scan === void 0 ? void 0 : scan.error) {
29
- setErrMsg(scan.error);
30
- }
31
- else if ((scan === null || scan === void 0 ? void 0 : scan.code) && !customer) {
32
- dispatch(fetchCustomerIdentify({ qr_code: scan.code }));
33
- setSubmitted(true);
34
- }
35
- else if (!hasRead) {
36
- setHasRead(true);
37
- scan === null || scan === void 0 ? void 0 : scan.read();
38
- }
39
- }, [dispatch, scan, close, customer, hasRead]);
40
- var handlers = { close: cancel, retry: retry };
41
- useEffect(function () {
42
- if (submitted && !isLoading) {
43
- if (error) {
44
- var detail = handleRespError(error).detail;
45
- setErrMsg(detail || 'Something went wrong');
46
- }
47
- else {
48
- callback ? callback() : close();
49
- }
50
- }
51
- }, [submitted, isLoading, error, close, callback]);
6
+ var close = _a.close, callback = _a.callback, children = _a.children, listener = _a.listener, cameraScanner = _a.cameraScanner, type = _a.type, imageUrl = _a.imageUrl;
7
+ var _b = useAppSelector(selectKioskConfig), config = _b.signInQr, errorMessageConfig = _b.errorMessage, modalContentConfig = _b.modalContent;
8
+ var _c = useSignInQr(listener, cameraScanner, type, close, callback), handlers = _c.handlers, errMsg = _c.errMsg, scan = _c.scan;
52
9
  var CameraComponent = useMemo(function () { return scan === null || scan === void 0 ? void 0 : scan.camera; }, [scan]);
53
10
  return (React.createElement(React.Fragment, null,
54
11
  children({
55
12
  config: config,
56
13
  handlers: handlers,
57
14
  errMsg: errMsg,
15
+ imageUrl: imageUrl,
58
16
  errorMessageConfig: errorMessageConfig,
59
17
  modalContentConfig: modalContentConfig
60
18
  }),
@@ -14,4 +14,5 @@ import useOrderValidate from './useOrderValidate';
14
14
  import usePrevious from './usePrevious';
15
15
  import usePunch from './usePunch';
16
16
  import useRefund from './useRefund';
17
- export { useBarcode, useCardSwipe, useChipDNATender, useCustomerRewards, useEmployee, useGiftCardBalance, useKioskImageUrl, useOrder, useOrderValidate, usePrevious, usePunch, useRefund, useBarcodeCameraScanner, useBarcodeUSB, useBarcodeScanner, BarcodeScannerType, BarcodeScannerMethod, ScanListener };
17
+ import useSignInQr from './useSignInQr';
18
+ export { useBarcode, useBarcodeCameraScanner, useBarcodeScanner, useBarcodeUSB, useCardSwipe, useChipDNATender, useCustomerRewards, useEmployee, useGiftCardBalance, useKioskImageUrl, useOrder, useOrderValidate, usePrevious, usePunch, useRefund, useSignInQr, BarcodeScannerType, BarcodeScannerMethod, ScanListener };
@@ -14,4 +14,5 @@ import useOrderValidate from './useOrderValidate';
14
14
  import usePrevious from './usePrevious';
15
15
  import usePunch from './usePunch';
16
16
  import useRefund from './useRefund';
17
- export { useBarcode, useCardSwipe, useChipDNATender, useCustomerRewards, useEmployee, useGiftCardBalance, useKioskImageUrl, useOrder, useOrderValidate, usePrevious, usePunch, useRefund, useBarcodeCameraScanner, useBarcodeUSB, useBarcodeScanner, BarcodeScannerType, ScanListener };
17
+ import useSignInQr from './useSignInQr';
18
+ export { useBarcode, useBarcodeCameraScanner, useBarcodeScanner, useBarcodeUSB, useCardSwipe, useChipDNATender, useCustomerRewards, useEmployee, useGiftCardBalance, useKioskImageUrl, useOrder, useOrderValidate, usePrevious, usePunch, useRefund, useSignInQr, BarcodeScannerType, ScanListener };
@@ -0,0 +1,10 @@
1
+ import { ScanListener } from './types';
2
+ declare const useSignInQr: (listener: ScanListener, cameraScanner: ScanListener, type?: string, close?: () => void, callback?: () => void) => {
3
+ handlers: {
4
+ close: () => void;
5
+ retry: () => void;
6
+ };
7
+ errMsg: string | null;
8
+ scan: import("./types").BarcodeScannerMethod | undefined;
9
+ };
10
+ export default useSignInQr;
@@ -0,0 +1,53 @@
1
+ import { handleRespError } from '@open-tender/utils';
2
+ import { useEffect, useState } from 'react';
3
+ import { useAppDispatch, useAppSelector } from '../app/hooks';
4
+ import { fetchCustomerIdentify, selectApi, selectCustomerIdentify } from '../slices';
5
+ import { useBarcodeScanner } from './useBarcodeScanner';
6
+ var useSignInQr = function (listener, cameraScanner, type, close, callback) {
7
+ var dispatch = useAppDispatch();
8
+ var _a = useState(false), submitted = _a[0], setSubmitted = _a[1];
9
+ var _b = useState(false), hasRead = _b[0], setHasRead = _b[1];
10
+ var _c = useState(null), errMsg = _c[0], setErrMsg = _c[1];
11
+ var api = useAppSelector(selectApi);
12
+ var scan = useBarcodeScanner(listener, cameraScanner, type, api);
13
+ var _d = useAppSelector(selectCustomerIdentify), customer = _d.data, loading = _d.loading, error = _d.error;
14
+ var isLoading = loading === 'pending';
15
+ var cancel = function () {
16
+ if (!(scan === null || scan === void 0 ? void 0 : scan.code))
17
+ scan === null || scan === void 0 ? void 0 : scan.cancel();
18
+ if (close)
19
+ close();
20
+ };
21
+ var retry = function () {
22
+ (scan === null || scan === void 0 ? void 0 : scan.reset) && scan.reset();
23
+ setHasRead(false);
24
+ setErrMsg(null);
25
+ };
26
+ useEffect(function () {
27
+ if (scan === null || scan === void 0 ? void 0 : scan.error) {
28
+ setErrMsg(scan.error);
29
+ }
30
+ else if ((scan === null || scan === void 0 ? void 0 : scan.code) && !customer) {
31
+ dispatch(fetchCustomerIdentify({ qr_code: scan.code }));
32
+ setSubmitted(true);
33
+ }
34
+ else if (!hasRead) {
35
+ setHasRead(true);
36
+ scan === null || scan === void 0 ? void 0 : scan.read();
37
+ }
38
+ }, [dispatch, scan, close, customer, hasRead]);
39
+ var handlers = { close: cancel, retry: retry };
40
+ useEffect(function () {
41
+ if (submitted && !isLoading) {
42
+ if (error) {
43
+ var detail = handleRespError(error).detail;
44
+ setErrMsg(detail || 'Something went wrong');
45
+ }
46
+ else {
47
+ callback ? callback() : close ? close() : null;
48
+ }
49
+ }
50
+ }, [submitted, isLoading, error, close, callback]);
51
+ return { handlers: handlers, errMsg: errMsg, scan: scan };
52
+ };
53
+ export default useSignInQr;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@open-tender/store",
3
- "version": "1.1.116",
3
+ "version": "1.1.118",
4
4
  "description": "A library of hooks, reducers, utility functions, and types for use with Open Tender applications that utilize our in-store POS API",
5
5
  "main": "./dist/cjs/index.js",
6
6
  "module": "./dist/esm/index.js",
@@ -62,7 +62,7 @@
62
62
  "peerDependencies": {
63
63
  "@emotion/react": "^11.11.1",
64
64
  "@open-tender/types": "^0.4.62",
65
- "@open-tender/ui": "^0.3.85",
65
+ "@open-tender/ui": "^0.3.86",
66
66
  "@open-tender/utils": "^0.4.39",
67
67
  "@reduxjs/toolkit": "^2.0.1",
68
68
  "date-fns": "2.30.0",