@licklist/design 0.72.72-dev.2 → 0.72.72-dev.4

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 (46) hide show
  1. package/dist/auth/Router.d.ts.map +1 -1
  2. package/dist/auth/Router.js +18 -14
  3. package/dist/index.d.ts +0 -1
  4. package/dist/index.d.ts.map +1 -1
  5. package/dist/index.js +0 -3
  6. package/dist/product-set/form/ProductsControl.d.ts.map +1 -1
  7. package/dist/product-set/form/ProductsControl.js +2 -0
  8. package/dist/product-set/product/ProductControl.d.ts +2 -0
  9. package/dist/product-set/product/ProductControl.d.ts.map +1 -1
  10. package/dist/product-set/product/ProductControl.js +7 -0
  11. package/dist/product-set/product/scanRange/ProductScanRangeControl.d.ts +12 -0
  12. package/dist/product-set/product/scanRange/ProductScanRangeControl.d.ts.map +1 -0
  13. package/dist/product-set/product/scanRange/ProductScanRangeControl.js +153 -0
  14. package/dist/product-set/product/scanRange/index.d.ts +2 -0
  15. package/dist/product-set/product/scanRange/index.d.ts.map +1 -0
  16. package/dist/product-set/utils/index.d.ts +2 -0
  17. package/dist/product-set/utils/index.d.ts.map +1 -1
  18. package/package.json +2 -2
  19. package/src/auth/Router.tsx +19 -19
  20. package/src/index.ts +0 -1
  21. package/src/product-set/form/ProductsControl.tsx +2 -0
  22. package/src/product-set/product/ProductControl.tsx +18 -12
  23. package/src/product-set/product/scanRange/ProductScanRangeControl.stories.ts +45 -0
  24. package/src/product-set/product/scanRange/ProductScanRangeControl.tsx +163 -0
  25. package/src/product-set/product/scanRange/index.ts +1 -0
  26. package/yarn.lock +153 -153
  27. package/dist/header/BookeditHeader.d.ts +0 -12
  28. package/dist/header/BookeditHeader.d.ts.map +0 -1
  29. package/dist/header/BookeditHeader.js +0 -21
  30. package/dist/header/Header.d.ts +0 -24
  31. package/dist/header/Header.d.ts.map +0 -1
  32. package/dist/header/Header.js +0 -81
  33. package/dist/header/elements/CompanySelector.d.ts +0 -11
  34. package/dist/header/elements/CompanySelector.d.ts.map +0 -1
  35. package/dist/header/elements/CompanySelector.js +0 -36
  36. package/dist/header/elements/index.d.ts +0 -3
  37. package/dist/header/elements/index.d.ts.map +0 -1
  38. package/dist/header/index.d.ts +0 -6
  39. package/dist/header/index.d.ts.map +0 -1
  40. package/src/header/BookeditHeader.tsx +0 -34
  41. package/src/header/Header.stories.tsx +0 -72
  42. package/src/header/Header.tsx +0 -107
  43. package/src/header/elements/CompanySelector.tsx +0 -47
  44. package/src/header/elements/Elements.stories.tsx +0 -33
  45. package/src/header/elements/index.ts +0 -3
  46. package/src/header/index.ts +0 -7
@@ -1 +1 @@
1
- {"version":3,"file":"Router.d.ts","sourceRoot":"","sources":["../../src/auth/Router.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAa,MAAM,OAAO,CAAA;AAK5C,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,EAAE,SAAS,GAAG,SAAS,EAAE,CAAA;CACnC;AAED,iBAAS,MAAM,CAAC,KAAK,EAAE,WAAW,2CAyBjC;AAED,OAAO,EAAE,MAAM,EAAE,CAAA"}
1
+ {"version":3,"file":"Router.d.ts","sourceRoot":"","sources":["../../src/auth/Router.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AAIjC,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,EAAE,SAAS,GAAG,SAAS,EAAE,CAAA;CACnC;AAED,iBAAS,MAAM,CAAC,KAAK,EAAE,WAAW,2CA0BjC;AAED,OAAO,EAAE,MAAM,EAAE,CAAA"}
@@ -1,23 +1,27 @@
1
1
  import { jsx } from 'react/jsx-runtime';
2
- import { useEffect } from 'react';
3
2
  import { Router as Router$1 } from 'react-router-dom';
4
- import App from '@licklist/plugins/dist/services/App/App';
5
3
  import history from '@licklist/plugins/dist/services/History/History';
6
4
 
7
5
  function Router(props) {
8
6
  var children = props.children;
9
- useEffect(function() {
10
- if (App.isDevelopment()) {
11
- console.info('initial history is: ', JSON.stringify(history, null, 2));
12
- history.listen(function(location, action) {
13
- if (!location) {
14
- return;
15
- }
16
- console.info("The current URL is ".concat(location.pathname).concat(location.search).concat(location.hash));
17
- console.info("The last navigation action was ".concat(action), JSON.stringify(history, null, 2));
18
- });
19
- }
20
- }, []);
7
+ // uncomment if necessary to debug history
8
+ // useEffect(() => {
9
+ // if (App.isDevelopment()) {
10
+ // console.info('initial history is: ', JSON.stringify(history, null, 2))
11
+ // history.listen((location, action) => {
12
+ // if (!location) {
13
+ // return
14
+ // }
15
+ // console.info(
16
+ // `The current URL is ${location.pathname}${location.search}${location.hash}`,
17
+ // )
18
+ // console.info(
19
+ // `The last navigation action was ${action}`,
20
+ // JSON.stringify(history, null, 2),
21
+ // )
22
+ // })
23
+ // }
24
+ // }, [])
21
25
  // TODO fix issue react router types
22
26
  // @ts-expect-error
23
27
  return /*#__PURE__*/ jsx(Router$1, {
package/dist/index.d.ts CHANGED
@@ -4,7 +4,6 @@ export * from './custom-fields';
4
4
  export * from './error';
5
5
  export * from './events';
6
6
  export * from './file-upload';
7
- export * from './header';
8
7
  export * from './help';
9
8
  export * from './iframe';
10
9
  export * from './layout';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,QAAQ,CAAA;AACtB,cAAc,2BAA2B,CAAA;AACzC,cAAc,iBAAiB,CAAA;AAC/B,cAAc,SAAS,CAAA;AACvB,cAAc,UAAU,CAAA;AACxB,cAAc,eAAe,CAAA;AAC7B,cAAc,UAAU,CAAA;AACxB,cAAc,QAAQ,CAAA;AACtB,cAAc,UAAU,CAAA;AACxB,cAAc,UAAU,CAAA;AACxB,cAAc,QAAQ,CAAA;AACtB,cAAc,UAAU,CAAA;AACxB,cAAc,eAAe,CAAA;AAC7B,cAAc,YAAY,CAAA;AAC1B,cAAc,oBAAoB,CAAA;AAClC,cAAc,+BAA+B,CAAA;AAC7C,cAAc,SAAS,CAAA;AACvB,cAAc,WAAW,CAAA;AACzB,cAAc,WAAW,CAAA;AACzB,cAAc,WAAW,CAAA;AACzB,cAAc,mBAAmB,CAAA;AACjC,cAAc,iBAAiB,CAAA;AAC/B,cAAc,iBAAiB,CAAA;AAC/B,cAAc,UAAU,CAAA;AACxB,cAAc,SAAS,CAAA;AACvB,cAAc,aAAa,CAAA;AAC3B,cAAc,iBAAiB,CAAA;AAC/B,cAAc,gBAAgB,CAAA;AAC9B,cAAc,UAAU,CAAA;AACxB,cAAc,kBAAkB,CAAA;AAChC,cAAc,aAAa,CAAA;AAC3B,cAAc,oBAAoB,CAAA;AAClC,cAAc,QAAQ,CAAA;AACtB,cAAc,YAAY,CAAA;AAC1B,cAAc,eAAe,CAAA;AAC7B,cAAc,aAAa,CAAA;AAC3B,cAAc,wBAAwB,CAAA;AACtC,cAAc,cAAc,CAAA;AAC5B,cAAc,qBAAqB,CAAA;AACnC,cAAc,kBAAkB,CAAA;AAChC,cAAc,oBAAoB,CAAA;AAClC,cAAc,YAAY,CAAA;AAC1B,cAAc,0BAA0B,CAAA;AACxC,cAAc,0BAA0B,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,QAAQ,CAAA;AACtB,cAAc,2BAA2B,CAAA;AACzC,cAAc,iBAAiB,CAAA;AAC/B,cAAc,SAAS,CAAA;AACvB,cAAc,UAAU,CAAA;AACxB,cAAc,eAAe,CAAA;AAC7B,cAAc,QAAQ,CAAA;AACtB,cAAc,UAAU,CAAA;AACxB,cAAc,UAAU,CAAA;AACxB,cAAc,QAAQ,CAAA;AACtB,cAAc,UAAU,CAAA;AACxB,cAAc,eAAe,CAAA;AAC7B,cAAc,YAAY,CAAA;AAC1B,cAAc,oBAAoB,CAAA;AAClC,cAAc,+BAA+B,CAAA;AAC7C,cAAc,SAAS,CAAA;AACvB,cAAc,WAAW,CAAA;AACzB,cAAc,WAAW,CAAA;AACzB,cAAc,WAAW,CAAA;AACzB,cAAc,mBAAmB,CAAA;AACjC,cAAc,iBAAiB,CAAA;AAC/B,cAAc,iBAAiB,CAAA;AAC/B,cAAc,UAAU,CAAA;AACxB,cAAc,SAAS,CAAA;AACvB,cAAc,aAAa,CAAA;AAC3B,cAAc,iBAAiB,CAAA;AAC/B,cAAc,gBAAgB,CAAA;AAC9B,cAAc,UAAU,CAAA;AACxB,cAAc,kBAAkB,CAAA;AAChC,cAAc,aAAa,CAAA;AAC3B,cAAc,oBAAoB,CAAA;AAClC,cAAc,QAAQ,CAAA;AACtB,cAAc,YAAY,CAAA;AAC1B,cAAc,eAAe,CAAA;AAC7B,cAAc,aAAa,CAAA;AAC3B,cAAc,wBAAwB,CAAA;AACtC,cAAc,cAAc,CAAA;AAC5B,cAAc,qBAAqB,CAAA;AACnC,cAAc,kBAAkB,CAAA;AAChC,cAAc,oBAAoB,CAAA;AAClC,cAAc,YAAY,CAAA;AAC1B,cAAc,0BAA0B,CAAA;AACxC,cAAc,0BAA0B,CAAA"}
package/dist/index.js CHANGED
@@ -29,9 +29,6 @@ export { EventCardSkeleton } from './events/event-card/EventCardSkeleton.js';
29
29
  export { EventStatisticModal } from './events/event-statistic-modal/EventStatisticModal.js';
30
30
  export { EventVenueMap } from './events/event-venue-map/EventVenueMap.js';
31
31
  export { FileUpload } from './file-upload/FileUpload.js';
32
- export { default as BookeditHeader } from './header/BookeditHeader.js';
33
- export { default as Header } from './header/Header.js';
34
- export { default as CompanySelector } from './header/elements/CompanySelector.js';
35
32
  export { Example, ExampleContent, ExampleToggle } from './help/example/Example.js';
36
33
  export { HelpPopover } from './help/popover/HelpPopover.js';
37
34
  export { EventBookingForm } from './iframe/event/event-booking-form/EventBookingForm.js';
@@ -1 +1 @@
1
- {"version":3,"file":"ProductsControl.d.ts","sourceRoot":"","sources":["../../../src/product-set/form/ProductsControl.tsx"],"names":[],"mappings":"AAeA,OAAO,EAAE,YAAY,EAAE,MAAM,kEAAkE,CAAA;AAC/F,OAAO,EAAkB,mBAAmB,EAAE,oBAAoB,EAAE,MAAM,IAAI,CAAA;AAI9E,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAA;AAQhD,UAAU,oBAAqB,SAAQ,aAAa;IAClD,YAAY,EAAE,mBAAmB,CAAC,oBAAoB,CAAC,CAAC,cAAc,CAAC,CAAA;IACvE,SAAS,EAAE,MAAM,CAAA;IACjB,oBAAoB,EAAE,MAAM,CAAA;IAC5B,SAAS,CAAC,EAAE,OAAO,CAAA;IACnB,YAAY,EAAE,YAAY,CAAA;IAC1B,WAAW,CAAC,EAAE,OAAO,CAAA;IACrB,qBAAqB,CAAC,EAAE,OAAO,CAAA;IAC/B,oBAAoB,CAAC,EAAE,OAAO,CAAA;CAC/B;AA+BD,wBAAgB,eAAe,CAAC,EAC9B,SAAS,EACT,YAAY,EACZ,SAAS,EACT,oBAAoB,EACpB,SAAS,EACT,YAAY,EACZ,WAAW,EACX,qBAAqB,EACrB,oBAAoB,GACrB,EAAE,oBAAoB,2CAkPtB"}
1
+ {"version":3,"file":"ProductsControl.d.ts","sourceRoot":"","sources":["../../../src/product-set/form/ProductsControl.tsx"],"names":[],"mappings":"AAeA,OAAO,EAAE,YAAY,EAAE,MAAM,kEAAkE,CAAA;AAC/F,OAAO,EAAkB,mBAAmB,EAAE,oBAAoB,EAAE,MAAM,IAAI,CAAA;AAI9E,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAA;AAQhD,UAAU,oBAAqB,SAAQ,aAAa;IAClD,YAAY,EAAE,mBAAmB,CAAC,oBAAoB,CAAC,CAAC,cAAc,CAAC,CAAA;IACvE,SAAS,EAAE,MAAM,CAAA;IACjB,oBAAoB,EAAE,MAAM,CAAA;IAC5B,SAAS,CAAC,EAAE,OAAO,CAAA;IACnB,YAAY,EAAE,YAAY,CAAA;IAC1B,WAAW,CAAC,EAAE,OAAO,CAAA;IACrB,qBAAqB,CAAC,EAAE,OAAO,CAAA;IAC/B,oBAAoB,CAAC,EAAE,OAAO,CAAA;CAC/B;AAiCD,wBAAgB,eAAe,CAAC,EAC9B,SAAS,EACT,YAAY,EACZ,SAAS,EACT,oBAAoB,EACpB,SAAS,EACT,YAAY,EACZ,WAAW,EACX,qBAAqB,EACrB,oBAAoB,GACrB,EAAE,oBAAoB,2CAkPtB"}
@@ -110,6 +110,8 @@ var getDefaultProductValue = function(sort) {
110
110
  deposit: 0,
111
111
  minQuantity: null,
112
112
  maxQuantity: null,
113
+ scanRangeStart: null,
114
+ scanRangeEnd: null,
113
115
  totalQuantity: 0,
114
116
  isAvailable: true,
115
117
  modifiersSet: [],
@@ -22,6 +22,8 @@ export interface ProductControlValues extends FormValues, ProductDepositControlV
22
22
  deposit: number;
23
23
  minQuantity: number;
24
24
  maxQuantity: number;
25
+ scanRangeStart?: number;
26
+ scanRangeEnd?: number;
25
27
  totalQuantity: number;
26
28
  isAvailable: boolean;
27
29
  isSoldOut: boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"ProductControl.d.ts","sourceRoot":"","sources":["../../../src/product-set/product/ProductControl.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ProductControl.d.ts","sourceRoot":"","sources":["../../../src/product-set/product/ProductControl.tsx"],"names":[],"mappings":"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"}
@@ -28,6 +28,7 @@ import { ProductPriceControl } from './price/ProductPriceControl.js';
28
28
  import { MAX_PRODUCT_DESCRIPTION_CHARACTERS_LENGTH } from './constants.js';
29
29
  import { AdvancedOptions } from './advanced-options/AdvancedOptions.js';
30
30
  import { ProductZonesControl } from '../form/ProductZonesControl.js';
31
+ import { ProductScanRangeControl } from './scanRange/ProductScanRangeControl.js';
31
32
  import { BooleanSwitch } from '../../static/switch/BooleanSwitch.js';
32
33
 
33
34
  function _array_like_to_array(arr, len) {
@@ -282,6 +283,12 @@ function ProductControl(param) {
282
283
  onFocus: onFocus,
283
284
  disabled: isUnlimited
284
285
  }),
286
+ /*#__PURE__*/ jsx(ProductScanRangeControl, {
287
+ isLoading: isLoading,
288
+ fieldNamePrefix: fieldNamePrefix,
289
+ isOverrides: isOverrides,
290
+ onFocus: onFocus
291
+ }),
285
292
  /*#__PURE__*/ jsxs(Form.Group, {
286
293
  controlId: unlimitedQuantityId,
287
294
  className: "custom-checkbox",
@@ -0,0 +1,12 @@
1
+ import { FieldNamePrefixPath, FormValues } from '@licklist/plugins/dist/types/services/Form/hook-form-service';
2
+ export interface ProductScanRangeControlValues extends FormValues {
3
+ scanRangeStart: number;
4
+ scanRangeEnd: number;
5
+ }
6
+ export interface ProductScanRangeControlProps<T> extends FieldNamePrefixPath<T> {
7
+ isLoading: boolean;
8
+ onFocus?: (e: React.SyntheticEvent) => void;
9
+ isOverrides?: boolean;
10
+ }
11
+ export declare function ProductScanRangeControl<T extends FormValues>(props: ProductScanRangeControlProps<T>): import("react/jsx-runtime").JSX.Element;
12
+ //# sourceMappingURL=ProductScanRangeControl.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ProductScanRangeControl.d.ts","sourceRoot":"","sources":["../../../../src/product-set/product/scanRange/ProductScanRangeControl.tsx"],"names":[],"mappings":"AACA,OAAO,EACL,mBAAmB,EACnB,UAAU,EACX,MAAM,8DAA8D,CAAA;AAWrE,MAAM,WAAW,6BAA8B,SAAQ,UAAU;IAC/D,cAAc,EAAE,MAAM,CAAA;IACtB,YAAY,EAAE,MAAM,CAAA;CACrB;AAED,MAAM,WAAW,4BAA4B,CAAC,CAAC,CAAE,SAAQ,mBAAmB,CAAC,CAAC,CAAC;IAC7E,SAAS,EAAE,OAAO,CAAA;IAClB,OAAO,CAAC,EAAE,CAAC,CAAC,EAAE,KAAK,CAAC,cAAc,KAAK,IAAI,CAAA;IAC3C,WAAW,CAAC,EAAE,OAAO,CAAA;CACtB;AAED,wBAAgB,uBAAuB,CAAC,CAAC,SAAS,UAAU,EAC1D,KAAK,EAAE,4BAA4B,CAAC,CAAC,CAAC,2CAuIvC"}
@@ -0,0 +1,153 @@
1
+ import { jsxs, Fragment, jsx } from 'react/jsx-runtime';
2
+ import HookFormService from '@licklist/plugins/dist/services/Form/HookFormService';
3
+ import { useId } from '@react-aria/utils';
4
+ import { Form } from 'react-bootstrap';
5
+ import Col from 'react-bootstrap/Col';
6
+ import InputGroup from 'react-bootstrap/InputGroup';
7
+ import Row from 'react-bootstrap/Row';
8
+ import { useFormContext, Controller } from 'react-hook-form';
9
+ import { useTranslation } from 'react-i18next';
10
+ import { ReactComponent as SvgIncrement } from '../../../assets/dashboard/increment.svg.js';
11
+
12
+ function ProductScanRangeControl(props) {
13
+ var _props_isLoading = props.isLoading, isLoading = _props_isLoading === void 0 ? false : _props_isLoading, fieldNamePrefix = props.fieldNamePrefix, onFocus = props.onFocus, isOverrides = props.isOverrides;
14
+ var _useFormContext = useFormContext(), control = _useFormContext.control, errors = _useFormContext.formState.errors, setValue = _useFormContext.setValue, watch = _useFormContext.watch;
15
+ var t = useTranslation('Design').t;
16
+ var scanRangeStartId = useId();
17
+ var scanRangeEndId = useId();
18
+ var scanRangeStartValue = watch("".concat(fieldNamePrefix, ".scanRangeStart"));
19
+ var scanRangeEndValue = watch("".concat(fieldNamePrefix, ".scanRangeEnd"));
20
+ return /*#__PURE__*/ jsxs(Fragment, {
21
+ children: [
22
+ /*#__PURE__*/ jsx(Form.Label, {
23
+ children: t('scanningRange')
24
+ }),
25
+ /*#__PURE__*/ jsxs(Row, {
26
+ children: [
27
+ /*#__PURE__*/ jsx(Col, {
28
+ xs: 12,
29
+ sm: 6,
30
+ children: /*#__PURE__*/ jsxs(Form.Group, {
31
+ controlId: scanRangeStartId,
32
+ children: [
33
+ /*#__PURE__*/ jsx(Form.Label, {
34
+ children: t('beforeEventStart')
35
+ }),
36
+ /*#__PURE__*/ jsxs(InputGroup, {
37
+ hasValidation: true,
38
+ children: [
39
+ /*#__PURE__*/ jsx(InputGroup.Prepend, {
40
+ className: "arrow-up-btn",
41
+ onClick: function() {
42
+ setValue("".concat(fieldNamePrefix, ".scanRangeStart"), Number(scanRangeStartValue) + 1);
43
+ },
44
+ children: /*#__PURE__*/ jsx(InputGroup.Text, {
45
+ className: "py-0 px-3",
46
+ children: /*#__PURE__*/ jsx(SvgIncrement, {})
47
+ })
48
+ }),
49
+ /*#__PURE__*/ jsx(Controller, {
50
+ render: function(param) {
51
+ var _param_field = param.field, value = _param_field.value, onChange = _param_field.onChange, ref = _param_field.ref;
52
+ return /*#__PURE__*/ jsx(Form.Control, {
53
+ ref: ref,
54
+ type: "number",
55
+ min: 0,
56
+ step: 1,
57
+ onWheel: function(event) {
58
+ return event.currentTarget.blur();
59
+ },
60
+ value: value,
61
+ onChange: onChange,
62
+ onFocus: onFocus,
63
+ disabled: isLoading || isOverrides
64
+ });
65
+ },
66
+ control: control,
67
+ name: "".concat(fieldNamePrefix, ".scanRangeStart"),
68
+ rules: {
69
+ min: {
70
+ value: 0,
71
+ message: t('Validation:fieldMinNumber', {
72
+ attribute: t('scanRangeStart'),
73
+ min: 0
74
+ })
75
+ }
76
+ }
77
+ }),
78
+ /*#__PURE__*/ jsx(Form.Control.Feedback, {
79
+ type: "invalid",
80
+ children: HookFormService.getErrors("".concat(fieldNamePrefix, ".scanRangeStart"), errors)
81
+ })
82
+ ]
83
+ })
84
+ ]
85
+ })
86
+ }),
87
+ /*#__PURE__*/ jsx(Col, {
88
+ xs: 12,
89
+ sm: 6,
90
+ children: /*#__PURE__*/ jsxs(Form.Group, {
91
+ controlId: scanRangeEndId,
92
+ children: [
93
+ /*#__PURE__*/ jsx(Form.Label, {
94
+ children: t('AfterEventStart')
95
+ }),
96
+ /*#__PURE__*/ jsxs(InputGroup, {
97
+ hasValidation: true,
98
+ children: [
99
+ /*#__PURE__*/ jsx(InputGroup.Prepend, {
100
+ className: "arrow-up-btn",
101
+ onClick: function() {
102
+ setValue("".concat(fieldNamePrefix, ".scanRangeEnd"), Number(scanRangeEndValue) + 1);
103
+ },
104
+ children: /*#__PURE__*/ jsx(InputGroup.Text, {
105
+ className: "py-0 px-3",
106
+ children: /*#__PURE__*/ jsx(SvgIncrement, {})
107
+ })
108
+ }),
109
+ /*#__PURE__*/ jsx(Controller, {
110
+ render: function(param) {
111
+ var _param_field = param.field, value = _param_field.value, onChange = _param_field.onChange, ref = _param_field.ref;
112
+ return /*#__PURE__*/ jsx(Form.Control, {
113
+ ref: ref,
114
+ type: "number",
115
+ min: 0,
116
+ step: 1,
117
+ onWheel: function(event) {
118
+ return event.currentTarget.blur();
119
+ },
120
+ value: value && value,
121
+ onFocus: onFocus,
122
+ onChange: onChange,
123
+ disabled: isLoading || isOverrides
124
+ });
125
+ },
126
+ control: control,
127
+ name: "".concat(fieldNamePrefix, ".scanRangeEnd"),
128
+ rules: {
129
+ min: {
130
+ value: 0,
131
+ message: t('Validation:fieldMinNumber', {
132
+ attribute: t('scanRangeEnd'),
133
+ min: 0
134
+ })
135
+ }
136
+ }
137
+ }),
138
+ /*#__PURE__*/ jsx(Form.Control.Feedback, {
139
+ type: "invalid",
140
+ children: HookFormService.getErrors("".concat(fieldNamePrefix, ".scanRangeEnd"), errors)
141
+ })
142
+ ]
143
+ })
144
+ ]
145
+ })
146
+ })
147
+ ]
148
+ })
149
+ ]
150
+ });
151
+ }
152
+
153
+ export { ProductScanRangeControl };
@@ -0,0 +1,2 @@
1
+ export * from './ProductScanRangeControl';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/product-set/product/scanRange/index.ts"],"names":[],"mappings":"AAAA,cAAc,2BAA2B,CAAA"}
@@ -38,6 +38,8 @@ export declare const updateModifiersSetAtProductSetForm: (data: ProductSetFormVa
38
38
  deposit: number;
39
39
  minQuantity: number;
40
40
  maxQuantity: number;
41
+ scanRangeStart?: number;
42
+ scanRangeEnd?: number;
41
43
  totalQuantity: number;
42
44
  isAvailable: boolean;
43
45
  isSoldOut: boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/product-set/utils/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,qEAAqE,CAAA;AACnG,OAAO,EAAE,WAAW,EAAE,MAAM,mEAAmE,CAAA;AAG/F,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAA;AACzC,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAA;AAEjD,OAAO,EAAE,UAAU,EAAE,MAAM,6DAA6D,CAAA;AACxF,OAAO,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAA;AAC3D,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAA;AAG7D,UAAU,yBAAyB;IACjC,MAAM,EAAE,oBAAoB,CAAA;IAC5B,QAAQ,EAAE,eAAe,CAAC,oBAAoB,CAAC,CAAA;IAC/C,CAAC,EAAE,SAAS,CAAA;CACb;AAED,MAAM,WAAW,gBAAgB;IAC/B,EAAE,EAAE,MAAM,CAAA;IACV,KAAK,EAAE,MAAM,CAAA;IACb,KAAK,EAAE,MAAM,CAAA;CACd;AACD,eAAO,MAAM,iBAAiB,GAAI,CAAC,SAC1B,CAAC,EAAE,aACC,MAAM,aACN,MAAM,QAQlB,CAAA;AAED,eAAO,MAAM,gBAAgB,GAAI,CAAC,SAAS,CAAC,EAAE;;IACmB,CAAA;AAEjE,eAAO,MAAM,oBAAoB,eACnB,aAAa,EAAE,GAAG,WAAW,EAAE,kBAC3B,YAAY,EAAE,KAC7B,YAAY,EAAE,GAAG,SAmBnB,CAAA;AAED,eAAQ,MAAM,kCAAkC,SAAU,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAc5E,CAAC;AAEH,eAAO,MAAM,yBAAyB,6BAInC,yBAAyB,YA0B3B,CAAA;AAED,eAAO,MAAM,yBAAyB,WAC5B,CAAC,UAAU,GAAG,oBAAoB,CAAC,EAAE,KAC5C,gBAAgB,EACwD,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/product-set/utils/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,qEAAqE,CAAA;AACnG,OAAO,EAAE,WAAW,EAAE,MAAM,mEAAmE,CAAA;AAG/F,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAA;AACzC,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAA;AAEjD,OAAO,EAAE,UAAU,EAAE,MAAM,6DAA6D,CAAA;AACxF,OAAO,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAA;AAC3D,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAA;AAG7D,UAAU,yBAAyB;IACjC,MAAM,EAAE,oBAAoB,CAAA;IAC5B,QAAQ,EAAE,eAAe,CAAC,oBAAoB,CAAC,CAAA;IAC/C,CAAC,EAAE,SAAS,CAAA;CACb;AAED,MAAM,WAAW,gBAAgB;IAC/B,EAAE,EAAE,MAAM,CAAA;IACV,KAAK,EAAE,MAAM,CAAA;IACb,KAAK,EAAE,MAAM,CAAA;CACd;AACD,eAAO,MAAM,iBAAiB,GAAI,CAAC,SAC1B,CAAC,EAAE,aACC,MAAM,aACN,MAAM,QAQlB,CAAA;AAED,eAAO,MAAM,gBAAgB,GAAI,CAAC,SAAS,CAAC,EAAE;;IACmB,CAAA;AAEjE,eAAO,MAAM,oBAAoB,eACnB,aAAa,EAAE,GAAG,WAAW,EAAE,kBAC3B,YAAY,EAAE,KAC7B,YAAY,EAAE,GAAG,SAmBnB,CAAA;AAED,eAAQ,MAAM,kCAAkC,SAAU,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAc5E,CAAC;AAEH,eAAO,MAAM,yBAAyB,6BAInC,yBAAyB,YA0B3B,CAAA;AAED,eAAO,MAAM,yBAAyB,WAC5B,CAAC,UAAU,GAAG,oBAAoB,CAAC,EAAE,KAC5C,gBAAgB,EACwD,CAAA"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@licklist/design",
3
- "version": "0.72.72-dev.2",
3
+ "version": "0.72.72-dev.4",
4
4
  "repository": {
5
5
  "type": "git",
6
6
  "url": "git+ssh://git@bitbucket.org/artelogicsoft/licklist_design.git"
@@ -42,7 +42,7 @@
42
42
  ]
43
43
  },
44
44
  "peerDependencies": {
45
- "@licklist/core": "0.31.2-dev.18",
45
+ "@licklist/core": "0.32.15-dev.2",
46
46
  "@licklist/eslint-config": "0.5.6",
47
47
  "@licklist/plugins": "0.35.1-dev.9",
48
48
  "lodash": "4.17.21",
@@ -1,6 +1,5 @@
1
- import { ReactNode, useEffect } from 'react'
1
+ import { ReactNode } from 'react'
2
2
  import { Router as BrowserRouter } from 'react-router-dom'
3
- import App from '@licklist/plugins/dist/services/App/App'
4
3
  import history from '@licklist/plugins/dist/services/History/History'
5
4
 
6
5
  export interface RouterProps {
@@ -10,24 +9,25 @@ export interface RouterProps {
10
9
  function Router(props: RouterProps) {
11
10
  const { children } = props
12
11
 
13
- useEffect(() => {
14
- if (App.isDevelopment()) {
15
- console.info('initial history is: ', JSON.stringify(history, null, 2))
16
- history.listen((location, action) => {
17
- if (!location) {
18
- return
19
- }
12
+ // uncomment if necessary to debug history
13
+ // useEffect(() => {
14
+ // if (App.isDevelopment()) {
15
+ // console.info('initial history is: ', JSON.stringify(history, null, 2))
16
+ // history.listen((location, action) => {
17
+ // if (!location) {
18
+ // return
19
+ // }
20
20
 
21
- console.info(
22
- `The current URL is ${location.pathname}${location.search}${location.hash}`,
23
- )
24
- console.info(
25
- `The last navigation action was ${action}`,
26
- JSON.stringify(history, null, 2),
27
- )
28
- })
29
- }
30
- }, [])
21
+ // console.info(
22
+ // `The current URL is ${location.pathname}${location.search}${location.hash}`,
23
+ // )
24
+ // console.info(
25
+ // `The last navigation action was ${action}`,
26
+ // JSON.stringify(history, null, 2),
27
+ // )
28
+ // })
29
+ // }
30
+ // }, [])
31
31
 
32
32
  // TODO fix issue react router types
33
33
  // @ts-expect-error
package/src/index.ts CHANGED
@@ -4,7 +4,6 @@ export * from './custom-fields'
4
4
  export * from './error'
5
5
  export * from './events'
6
6
  export * from './file-upload'
7
- export * from './header'
8
7
  export * from './help'
9
8
  export * from './iframe'
10
9
  export * from './layout'
@@ -47,6 +47,8 @@ const getDefaultProductValue = (sort: number): Product => ({
47
47
  deposit: 0,
48
48
  minQuantity: null,
49
49
  maxQuantity: null,
50
+ scanRangeStart: null,
51
+ scanRangeEnd: null,
50
52
  totalQuantity: 0,
51
53
  isAvailable: true,
52
54
  modifiersSet: [],
@@ -64,7 +64,7 @@ import { MAX_PRODUCT_DESCRIPTION_CHARACTERS_LENGTH } from './constants'
64
64
  import { ProductZoneControlValues } from '../product-zone'
65
65
  import { AdvancedOptions } from './advanced-options'
66
66
  import { ProductZonesControl } from '../form/ProductZonesControl'
67
-
67
+ import { ProductScanRangeControl } from './scanRange'
68
68
 
69
69
  export interface ModifiersSet {
70
70
  id: number
@@ -86,6 +86,8 @@ export interface ProductControlValues
86
86
  deposit: number
87
87
  minQuantity: number
88
88
  maxQuantity: number
89
+ scanRangeStart?: number
90
+ scanRangeEnd?: number
89
91
  totalQuantity: number
90
92
  isAvailable: boolean
91
93
  isSoldOut: boolean
@@ -121,7 +123,6 @@ export interface ProductControlProps<T>
121
123
  hasTicket?: boolean
122
124
  categoryType?: CategoryType
123
125
  isOverrides?: boolean
124
-
125
126
  }
126
127
 
127
128
  export function ProductControl<T extends FormValues>({
@@ -136,7 +137,6 @@ export function ProductControl<T extends FormValues>({
136
137
  categoryType,
137
138
  isOverrides = false,
138
139
  }: ProductControlProps<T>) {
139
-
140
140
  const {
141
141
  register,
142
142
  control,
@@ -202,7 +202,6 @@ export function ProductControl<T extends FormValues>({
202
202
  setInitialImages(formImages as Image[])
203
203
  }, [getValues, setInitialImages, fieldNamePrefix])
204
204
 
205
-
206
205
  useEffect(() => {
207
206
  if (Array.isArray(images)) {
208
207
  setValue(
@@ -298,14 +297,21 @@ export function ProductControl<T extends FormValues>({
298
297
  isOverrides={isOverrides}
299
298
  onFocus={onFocus}
300
299
  />
301
-
302
- <ProductQuantityRechargingControl<T>
303
- isLoading={isLoading}
304
- fieldNamePrefix={fieldNamePrefix}
305
- onFocus={onFocus}
306
- disabled={isUnlimited}
307
- />
308
-
300
+
301
+ <ProductQuantityRechargingControl<T>
302
+ isLoading={isLoading}
303
+ fieldNamePrefix={fieldNamePrefix}
304
+ onFocus={onFocus}
305
+ disabled={isUnlimited}
306
+ />
307
+
308
+ <ProductScanRangeControl<T>
309
+ isLoading={isLoading}
310
+ fieldNamePrefix={fieldNamePrefix}
311
+ isOverrides={isOverrides}
312
+ onFocus={onFocus}
313
+ />
314
+
309
315
  <Form.Group
310
316
  controlId={unlimitedQuantityId}
311
317
  className='custom-checkbox'
@@ -0,0 +1,45 @@
1
+ // ProductScanRangeControl.stories.tsx
2
+ import type { Meta, StoryObj } from '@storybook/react';
3
+ import { FormProvider, useForm } from 'react-hook-form';
4
+ import Form from 'react-bootstrap/Form';
5
+
6
+ import {
7
+ ProductScanRangeControl,
8
+ ProductScanRangeControlProps,
9
+ ProductScanRangeControlValues,
10
+ } from './ProductScanRangeControl';
11
+
12
+
13
+ const meta: Meta<typeof ProductScanRangeControl> = {
14
+ title: 'Product Set/Product/Scan Range',
15
+ component: ProductScanRangeControl,
16
+ };
17
+ export default meta;
18
+
19
+
20
+ type Story = StoryObj<typeof ProductScanRangeControl>;
21
+
22
+ export const Default: Story = {
23
+ args: {
24
+ isLoading: false,
25
+ },
26
+
27
+ render: (args: ProductScanRangeControlProps<{}>) => {
28
+ const methods = useForm<ProductScanRangeControlValues>({ mode: 'onChange' });
29
+ const onSubmit = (data: ProductScanRangeControlValues) =>
30
+ console.log('onSubmit', data);
31
+
32
+ return (
33
+ <FormProvider {...methods}>
34
+ <Form
35
+ className="d-flex flex-column"
36
+ noValidate
37
+ onSubmit={methods.handleSubmit(onSubmit)}
38
+ >
39
+ <ProductScanRangeControl {...args} />
40
+ </Form>
41
+ </FormProvider>
42
+ );
43
+ },
44
+ };
45
+