@licklist/design 0.44.485-dev.42 → 0.44.485-dev.44
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.
- package/dist/product-set/product/quantity/ProductQuantityRechargingControl.d.ts.map +1 -1
- package/dist/product-set/product/quantity/ProductQuantityRechargingControl.js +1 -1
- package/dist/styles/iframe-order-process/IframeOrderProcess.scss +5 -2
- package/package.json +1 -1
- package/src/product-set/product/quantity/ProductQuantityRechargingControl.tsx +33 -14
- package/src/styles/iframe-order-process/IframeOrderProcess.scss +5 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ProductQuantityRechargingControl.d.ts","sourceRoot":"","sources":["../../../../src/product-set/product/quantity/ProductQuantityRechargingControl.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAoB,MAAM,OAAO,CAAC;AAEzC,OAAO,EACL,mBAAmB,EACnB,UAAU,EACX,MAAM,8DAA8D,CAAC;AAStE,MAAM,WAAW,sCAAuC,SAAQ,UAAU;IACxE,aAAa,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,qCAAqC,CAAC,CAAC,CACtD,SAAQ,mBAAmB,CAAC,CAAC,CAAC;IAC9B,SAAS,EAAE,OAAO,CAAC;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,OAAO,CAAC,EAAE,CAAC,CAAC,EAAE,KAAK,CAAC,cAAc,KAAK,IAAI,CAAC;CAC7C;AAED,wBAAgB,gCAAgC,CAAC,CAAC,SAAS,UAAU,EACnE,KAAK,EAAE,qCAAqC,CAAC,CAAC,CAAC,
|
|
1
|
+
{"version":3,"file":"ProductQuantityRechargingControl.d.ts","sourceRoot":"","sources":["../../../../src/product-set/product/quantity/ProductQuantityRechargingControl.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAoB,MAAM,OAAO,CAAC;AAEzC,OAAO,EACL,mBAAmB,EACnB,UAAU,EACX,MAAM,8DAA8D,CAAC;AAStE,MAAM,WAAW,sCAAuC,SAAQ,UAAU;IACxE,aAAa,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,qCAAqC,CAAC,CAAC,CACtD,SAAQ,mBAAmB,CAAC,CAAC,CAAC;IAC9B,SAAS,EAAE,OAAO,CAAC;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,OAAO,CAAC,EAAE,CAAC,CAAC,EAAE,KAAK,CAAC,cAAc,KAAK,IAAI,CAAC;CAC7C;AAED,wBAAgB,gCAAgC,CAAC,CAAC,SAAS,UAAU,EACnE,KAAK,EAAE,qCAAqC,CAAC,CAAC,CAAC,eAuGhD"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";function e(e){return e&&"object"==typeof e&&"default"in e?e.default:e}Object.defineProperty(exports,"__esModule",{value:!0});var t=require("react"),r=e(t),a=require("react-i18next"),n=require("react-bootstrap"),o=require("react-hook-form"),i=e(require("@licklist/plugins/dist/services/Form/HookFormService")),l=require("@react-aria/utils"),u=require("../../../assets/dashboard/increment.svg.js"),c=e(require("react-bootstrap/InputGroup"));exports.ProductQuantityRechargingControl=function(e){var s=e.isLoading,
|
|
1
|
+
"use strict";function e(e){return e&&"object"==typeof e&&"default"in e?e.default:e}Object.defineProperty(exports,"__esModule",{value:!0});var t=require("react"),r=e(t),a=require("react-i18next"),n=require("react-bootstrap"),o=require("react-hook-form"),i=e(require("@licklist/plugins/dist/services/Form/HookFormService")),l=require("@react-aria/utils"),u=require("../../../assets/dashboard/increment.svg.js"),c=e(require("react-bootstrap/InputGroup"));exports.ProductQuantityRechargingControl=function(e){var s=e.isLoading,m=void 0!==s&&s,d=e.fieldNamePrefix,y=e.disabled,f=void 0!==y&&y,p=e.onFocus,b=o.useFormContext(),E=b.control,g=b.clearErrors,v=b.setError,Q=b.watch,F=b.trigger,x=b.formState.errors,q=a.useTranslation("Design").t,C=l.useId(),h=Q("".concat(d,".maxQuantity")),N=Q("".concat(d,".totalQuantity"));return t.useEffect((function(){F("".concat(d,".totalQuantity"))}),[f,d,F]),t.useEffect((function(){0===Number(N)?v("".concat(d,".totalQuantity"),{type:i.manualErrorType,message:q("Validation:fieldMinNumber",{attribute:q("totalQuantity"),min:1})}):Number(h)>Number(N)?v("".concat(d,".totalQuantity"),{type:i.manualErrorType,message:q("Validation:fieldTotalNumber",{attribute:q("totalQuantity"),max:q("maxOrderQuantity")})}):g("".concat(d,".totalQuantity"))}),[N,h,v,g]),r.createElement(r.Fragment,null,r.createElement(n.Form.Group,{controlId:C},r.createElement(n.Form.Label,null,q("totalQuantity")),r.createElement(c,{hasValidation:!0},r.createElement(c.Prepend,null,r.createElement(c.Text,{className:"py-0 px-3"},r.createElement(u.ReactComponent,null))),r.createElement(o.Controller,{render:function(e){var t=e.field,a=t.value,o=t.onChange,l=t.ref;return r.createElement(n.Form.Control,{ref:l,type:"number",min:0,step:1,value:a,onFocus:p,onChange:o,isInvalid:i.isInvalid("".concat(d,".totalQuantity"),x),disabled:m||f})},control:E,name:"".concat(d,".totalQuantity"),rules:f?{required:!1,min:0}:{}}),r.createElement(n.Form.Control.Feedback,{type:"invalid"},i.getErrors("".concat(d,".totalQuantity"),x)))))};
|
|
@@ -202,7 +202,7 @@
|
|
|
202
202
|
|
|
203
203
|
.step-numbers {
|
|
204
204
|
font-weight: 500;
|
|
205
|
-
margin
|
|
205
|
+
margin: 0 1rem;
|
|
206
206
|
color: $snippet-page-header-steps-inactive-step-body-color;
|
|
207
207
|
|
|
208
208
|
.active-step {
|
|
@@ -225,6 +225,7 @@
|
|
|
225
225
|
height: 2rem;
|
|
226
226
|
transition: $color-transition;
|
|
227
227
|
max-width: calc(100% - 12rem);
|
|
228
|
+
flex-grow: 1;
|
|
228
229
|
|
|
229
230
|
.step {
|
|
230
231
|
display: flex;
|
|
@@ -233,10 +234,12 @@
|
|
|
233
234
|
margin: 0 0.5rem;
|
|
234
235
|
z-index: 1;
|
|
235
236
|
scroll-margin: 10rem;
|
|
237
|
+
flex-grow: 1;
|
|
236
238
|
|
|
237
239
|
.number {
|
|
238
240
|
text-align: center;
|
|
239
|
-
width: 3rem;
|
|
241
|
+
max-width: 3rem;
|
|
242
|
+
width: 100%;
|
|
240
243
|
height: 0.25rem;
|
|
241
244
|
line-height: 2.5rem;
|
|
242
245
|
background: $snippet-page-header-steps-inactive-step-background-color;
|
package/package.json
CHANGED
|
@@ -33,19 +33,49 @@ export function ProductQuantityRechargingControl<T extends FormValues>(
|
|
|
33
33
|
onFocus,
|
|
34
34
|
} = props;
|
|
35
35
|
const {
|
|
36
|
-
trigger,
|
|
37
36
|
control,
|
|
37
|
+
clearErrors,
|
|
38
|
+
setError,
|
|
39
|
+
watch,
|
|
40
|
+
trigger,
|
|
38
41
|
formState: { errors },
|
|
39
42
|
} = useFormContext<T>();
|
|
40
43
|
const { t } = useTranslation("Design");
|
|
41
|
-
|
|
42
44
|
const totalQuantityId = useId();
|
|
43
45
|
|
|
46
|
+
const maxQuantityValue = watch(`${fieldNamePrefix}.maxQuantity` as Path<T>);
|
|
47
|
+
const totalQuantityValue = watch(
|
|
48
|
+
`${fieldNamePrefix}.totalQuantity` as Path<T>
|
|
49
|
+
);
|
|
50
|
+
|
|
44
51
|
// trigger total quantity field's validation if disabled state was changed
|
|
45
52
|
useEffect(() => {
|
|
46
53
|
trigger(`${fieldNamePrefix}.totalQuantity` as Path<T>);
|
|
47
54
|
}, [disabled, fieldNamePrefix, trigger]);
|
|
48
55
|
|
|
56
|
+
useEffect(() => {
|
|
57
|
+
if (Number(totalQuantityValue) === 0) {
|
|
58
|
+
setError(`${fieldNamePrefix}.totalQuantity` as Path<T>, {
|
|
59
|
+
type: HookFormService.manualErrorType,
|
|
60
|
+
message: t("Validation:fieldMinNumber", {
|
|
61
|
+
attribute: t("totalQuantity"),
|
|
62
|
+
min: 1,
|
|
63
|
+
}),
|
|
64
|
+
});
|
|
65
|
+
} else if (Number(maxQuantityValue) > Number(totalQuantityValue)) {
|
|
66
|
+
setError(`${fieldNamePrefix}.totalQuantity` as Path<T>, {
|
|
67
|
+
type: HookFormService.manualErrorType,
|
|
68
|
+
message: t("Validation:fieldTotalNumber", {
|
|
69
|
+
attribute: t("totalQuantity"),
|
|
70
|
+
max: t("maxOrderQuantity"),
|
|
71
|
+
}),
|
|
72
|
+
});
|
|
73
|
+
} else {
|
|
74
|
+
clearErrors(`${fieldNamePrefix}.totalQuantity` as Path<T>);
|
|
75
|
+
}
|
|
76
|
+
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
77
|
+
}, [totalQuantityValue, maxQuantityValue, setError, clearErrors]);
|
|
78
|
+
|
|
49
79
|
return (
|
|
50
80
|
<>
|
|
51
81
|
<Form.Group controlId={totalQuantityId}>
|
|
@@ -83,18 +113,7 @@ export function ProductQuantityRechargingControl<T extends FormValues>(
|
|
|
83
113
|
required: false,
|
|
84
114
|
min: 0,
|
|
85
115
|
}
|
|
86
|
-
: {
|
|
87
|
-
required: t("Validation:fieldRequired", {
|
|
88
|
-
attribute: t("totalQuantity"),
|
|
89
|
-
}) as string,
|
|
90
|
-
min: {
|
|
91
|
-
value: 1,
|
|
92
|
-
message: t("Validation:fieldMinNumber", {
|
|
93
|
-
attribute: t("totalQuantity"),
|
|
94
|
-
min: 1,
|
|
95
|
-
}) as string,
|
|
96
|
-
},
|
|
97
|
-
}
|
|
116
|
+
: {}
|
|
98
117
|
}
|
|
99
118
|
/>
|
|
100
119
|
|
|
@@ -202,7 +202,7 @@
|
|
|
202
202
|
|
|
203
203
|
.step-numbers {
|
|
204
204
|
font-weight: 500;
|
|
205
|
-
margin
|
|
205
|
+
margin: 0 1rem;
|
|
206
206
|
color: $snippet-page-header-steps-inactive-step-body-color;
|
|
207
207
|
|
|
208
208
|
.active-step {
|
|
@@ -225,6 +225,7 @@
|
|
|
225
225
|
height: 2rem;
|
|
226
226
|
transition: $color-transition;
|
|
227
227
|
max-width: calc(100% - 12rem);
|
|
228
|
+
flex-grow: 1;
|
|
228
229
|
|
|
229
230
|
.step {
|
|
230
231
|
display: flex;
|
|
@@ -233,10 +234,12 @@
|
|
|
233
234
|
margin: 0 0.5rem;
|
|
234
235
|
z-index: 1;
|
|
235
236
|
scroll-margin: 10rem;
|
|
237
|
+
flex-grow: 1;
|
|
236
238
|
|
|
237
239
|
.number {
|
|
238
240
|
text-align: center;
|
|
239
|
-
width: 3rem;
|
|
241
|
+
max-width: 3rem;
|
|
242
|
+
width: 100%;
|
|
240
243
|
height: 0.25rem;
|
|
241
244
|
line-height: 2.5rem;
|
|
242
245
|
background: $snippet-page-header-steps-inactive-step-background-color;
|