s-platform-landing-section 0.1.10-alpha.11 → 0.1.10-alpha.14
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/index.js +68 -39
- package/dist/index.js.map +1 -1
- package/dist/index.modern.js +70 -41
- package/dist/index.modern.js.map +1 -1
- package/package.json +1 -1
package/dist/index.modern.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import React__default, { useState, useRef, useEffect, createElement, forwardRef, useImperativeHandle, memo
|
|
1
|
+
import React__default, { useState, useRef, useEffect, createElement, forwardRef, useImperativeHandle, memo } from 'react';
|
|
2
2
|
import { IoCartOutline, IoChevronDownOutline, IoInformationCircleOutline, IoLogOutOutline, IoLocationOutline, IoChevronBackOutline, IoChevronForwardOutline, IoCallOutline } from 'react-icons/io5';
|
|
3
3
|
import { FaUserCircle, FaPhone, FaChevronLeft, FaChevronRight, FaAngleUp, FaAngleDown, FaCheckCircle, FaArrowLeft, FaArrowRight as FaArrowRight$1, FaFacebookSquare, FaFacebookMessenger, FaFacebookF } from 'react-icons/fa';
|
|
4
4
|
import { FiMenu } from 'react-icons/fi';
|
|
@@ -6,7 +6,7 @@ import { RxCross2 } from 'react-icons/rx';
|
|
|
6
6
|
import { PiHandbagSimpleLight } from 'react-icons/pi';
|
|
7
7
|
import { CiSearch } from 'react-icons/ci';
|
|
8
8
|
import { BsFilterLeft, BsCurrencyDollar } from 'react-icons/bs';
|
|
9
|
-
import { FaMinus, FaPlus, FaArrowsRotate, FaStar, FaRegStarHalfStroke, FaRegStar } from 'react-icons/fa6';
|
|
9
|
+
import { FaMinus, FaRegEyeSlash, FaPlus, FaArrowsRotate, FaStar, FaRegStarHalfStroke, FaRegStar } from 'react-icons/fa6';
|
|
10
10
|
import { LuSearch } from 'react-icons/lu';
|
|
11
11
|
import { IoMdCheckmark, IoIosHeartEmpty } from 'react-icons/io';
|
|
12
12
|
import DatePicker from 'react-datepicker';
|
|
@@ -7347,13 +7347,21 @@ var Input = forwardRef(function (props, ref) {
|
|
|
7347
7347
|
_props$min = props.min,
|
|
7348
7348
|
min = _props$min === void 0 ? 0 : _props$min,
|
|
7349
7349
|
_props$max = props.max,
|
|
7350
|
-
max = _props$max === void 0 ? null : _props$max
|
|
7350
|
+
max = _props$max === void 0 ? null : _props$max,
|
|
7351
|
+
_props$isHidden = props.isHidden,
|
|
7352
|
+
isHidden = _props$isHidden === void 0 ? false : _props$isHidden,
|
|
7353
|
+
icons = props.icons,
|
|
7354
|
+
_props$iconsClassName = props.iconsClassName,
|
|
7355
|
+
iconsClassName = _props$iconsClassName === void 0 ? "" : _props$iconsClassName;
|
|
7351
7356
|
var _useState = useState(defaultValue),
|
|
7352
7357
|
value = _useState[0],
|
|
7353
7358
|
_setValue = _useState[1];
|
|
7354
7359
|
var _useState2 = useState(""),
|
|
7355
7360
|
error = _useState2[0],
|
|
7356
7361
|
_setError = _useState2[1];
|
|
7362
|
+
var _useState3 = useState(type),
|
|
7363
|
+
typeInput = _useState3[0],
|
|
7364
|
+
setTypeInput = _useState3[1];
|
|
7357
7365
|
var refInput = useRef();
|
|
7358
7366
|
useImperativeHandle(ref, function () {
|
|
7359
7367
|
return {
|
|
@@ -7374,7 +7382,7 @@ var Input = forwardRef(function (props, ref) {
|
|
|
7374
7382
|
var _validateData = function _validateData() {
|
|
7375
7383
|
var count = 0;
|
|
7376
7384
|
for (var _iterator = _createForOfIteratorHelperLoose(rules), _step; !(_step = _iterator()).done;) {
|
|
7377
|
-
var _e$pattern;
|
|
7385
|
+
var _e$pattern, _e$validate;
|
|
7378
7386
|
var e = _step.value;
|
|
7379
7387
|
if ((e === null || e === void 0 ? void 0 : e.type) === 'required' && value === '') {
|
|
7380
7388
|
_setError(e === null || e === void 0 ? void 0 : e.message);
|
|
@@ -7384,6 +7392,10 @@ var Input = forwardRef(function (props, ref) {
|
|
|
7384
7392
|
_setError(e === null || e === void 0 ? void 0 : e.message);
|
|
7385
7393
|
count++;
|
|
7386
7394
|
break;
|
|
7395
|
+
} else if ((e === null || e === void 0 ? void 0 : e.type) === "validate" && e !== null && e !== void 0 && e.validate && !(e !== null && e !== void 0 && (_e$validate = e.validate) !== null && _e$validate !== void 0 && _e$validate.call(e))) {
|
|
7396
|
+
_setError(e === null || e === void 0 ? void 0 : e.message);
|
|
7397
|
+
count++;
|
|
7398
|
+
break;
|
|
7387
7399
|
}
|
|
7388
7400
|
}
|
|
7389
7401
|
if (count) {
|
|
@@ -7408,6 +7420,11 @@ var Input = forwardRef(function (props, ref) {
|
|
|
7408
7420
|
onChange === null || onChange === void 0 ? void 0 : onChange(newValue);
|
|
7409
7421
|
}
|
|
7410
7422
|
};
|
|
7423
|
+
var changeHidden = function changeHidden() {
|
|
7424
|
+
if (typeInput === "text") setTypeInput("password");else {
|
|
7425
|
+
setTypeInput("text");
|
|
7426
|
+
}
|
|
7427
|
+
};
|
|
7411
7428
|
var _className = "h-10 py-1 px-2 border border-stroke rounded " + className;
|
|
7412
7429
|
var _inputClassName = (isQuantity ? "text-center w-12" : "") + " focus:outline-none focus:ring-0 " + inputClassName;
|
|
7413
7430
|
var required = !!(rules !== null && rules !== void 0 && rules.find(function (e) {
|
|
@@ -7426,8 +7443,13 @@ var Input = forwardRef(function (props, ref) {
|
|
|
7426
7443
|
onClick: function onClick() {
|
|
7427
7444
|
return changeQuantity(-1);
|
|
7428
7445
|
}
|
|
7429
|
-
}, /*#__PURE__*/React__default.createElement(FaMinus, null)) : null, /*#__PURE__*/React__default.createElement("
|
|
7430
|
-
|
|
7446
|
+
}, /*#__PURE__*/React__default.createElement(FaMinus, null)) : null, icons ? /*#__PURE__*/React__default.createElement("div", {
|
|
7447
|
+
className: "object-cover\t " + iconsClassName,
|
|
7448
|
+
dangerouslySetInnerHTML: {
|
|
7449
|
+
__html: icons
|
|
7450
|
+
}
|
|
7451
|
+
}) : null, /*#__PURE__*/React__default.createElement("input", {
|
|
7452
|
+
type: typeInput,
|
|
7431
7453
|
name: name,
|
|
7432
7454
|
value: value,
|
|
7433
7455
|
placeholder: placeholder,
|
|
@@ -7435,7 +7457,13 @@ var Input = forwardRef(function (props, ref) {
|
|
|
7435
7457
|
required: required,
|
|
7436
7458
|
className: _inputClassName,
|
|
7437
7459
|
ref: refInput
|
|
7438
|
-
}),
|
|
7460
|
+
}), isHidden ? /*#__PURE__*/React__default.createElement("button", {
|
|
7461
|
+
onClick: function onClick() {
|
|
7462
|
+
changeHidden();
|
|
7463
|
+
}
|
|
7464
|
+
}, /*#__PURE__*/React__default.createElement(FaRegEyeSlash, {
|
|
7465
|
+
className: "font-semibold"
|
|
7466
|
+
})) : null, isQuantity ? /*#__PURE__*/React__default.createElement("button", {
|
|
7439
7467
|
onClick: function onClick() {
|
|
7440
7468
|
return changeQuantity(1);
|
|
7441
7469
|
}
|
|
@@ -7445,7 +7473,6 @@ var Input = forwardRef(function (props, ref) {
|
|
|
7445
7473
|
});
|
|
7446
7474
|
|
|
7447
7475
|
var Select = forwardRef(function (props, ref) {
|
|
7448
|
-
var _Object$values;
|
|
7449
7476
|
var _props$label = props.label,
|
|
7450
7477
|
label = _props$label === void 0 ? "" : _props$label,
|
|
7451
7478
|
_props$labelClassName = props.labelClassName,
|
|
@@ -7498,13 +7525,6 @@ var Select = forwardRef(function (props, ref) {
|
|
|
7498
7525
|
dropdownPosition = _useState6[0],
|
|
7499
7526
|
setDropdownPosition = _useState6[1];
|
|
7500
7527
|
var inputRef = useRef(null);
|
|
7501
|
-
useEffect(function () {
|
|
7502
|
-
if (isMulti) return;else {
|
|
7503
|
-
setIsOpen(false);
|
|
7504
|
-
setInputSearch("");
|
|
7505
|
-
setListOptions(options);
|
|
7506
|
-
}
|
|
7507
|
-
}, [value]);
|
|
7508
7528
|
useEffect(function () {
|
|
7509
7529
|
if (isMulti) setValue(defaultValue);
|
|
7510
7530
|
}, [defaultValue]);
|
|
@@ -7616,7 +7636,10 @@ var Select = forwardRef(function (props, ref) {
|
|
|
7616
7636
|
return (value === null || value === void 0 ? void 0 : value.value) == valueId;
|
|
7617
7637
|
};
|
|
7618
7638
|
var handleSelection = function handleSelection(item) {
|
|
7619
|
-
if (!isMulti)
|
|
7639
|
+
if (!isMulti) {
|
|
7640
|
+
setValue(item);
|
|
7641
|
+
setIsOpen(false);
|
|
7642
|
+
}
|
|
7620
7643
|
onClick === null || onClick === void 0 ? void 0 : onClick(item);
|
|
7621
7644
|
};
|
|
7622
7645
|
var handleDeleteSelection = function handleDeleteSelection(e, item) {
|
|
@@ -7644,14 +7667,12 @@ var Select = forwardRef(function (props, ref) {
|
|
|
7644
7667
|
className: "flex justify-between items-center w-full"
|
|
7645
7668
|
}, isEmpty(value) || isMulti ? /*#__PURE__*/React__default.createElement("div", {
|
|
7646
7669
|
className: "text-gray3 line-clamp-1"
|
|
7647
|
-
}, placeholder) :
|
|
7648
|
-
className: "w-full",
|
|
7670
|
+
}, placeholder) : /*#__PURE__*/React__default.createElement("div", {
|
|
7671
|
+
className: "w-full text-start pointer-events-none",
|
|
7649
7672
|
dangerouslySetInnerHTML: {
|
|
7650
|
-
__html:
|
|
7673
|
+
__html: value === null || value === void 0 ? void 0 : value.label
|
|
7651
7674
|
}
|
|
7652
|
-
})
|
|
7653
|
-
className: "line-clamp-1"
|
|
7654
|
-
}, value === null || value === void 0 ? void 0 : value.label), isButtonDelete && !isEmpty(value) ? /*#__PURE__*/React__default.createElement("div", {
|
|
7675
|
+
}), isButtonDelete && !isEmpty(value) ? /*#__PURE__*/React__default.createElement("div", {
|
|
7655
7676
|
onClick: function onClick(e) {
|
|
7656
7677
|
handleDeleteSelection(e, value);
|
|
7657
7678
|
}
|
|
@@ -7810,13 +7831,18 @@ var InputPhoneNumber = forwardRef(function (props, ref) {
|
|
|
7810
7831
|
inputClassName = _props$inputClassName === void 0 ? "" : _props$inputClassName,
|
|
7811
7832
|
_props$labelClassName = props.labelClassName,
|
|
7812
7833
|
labelClassName = _props$labelClassName === void 0 ? "" : _props$labelClassName,
|
|
7813
|
-
|
|
7814
|
-
|
|
7834
|
+
_props$options = props.options,
|
|
7835
|
+
options = _props$options === void 0 ? [{
|
|
7836
|
+
label: "<svg width=\"20\" height=\"20\" viewBox=\"0 0 36 36\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" aria-hidden=\"true\" role=\"img\" class=\"iconify iconify--twemoji\" preserveAspectRatio=\"xMidYMid meet\"><path fill=\"#DA251D\" d=\"M32 5H4a4 4 0 0 0-4 4v18a4 4 0 0 0 4 4h28a4 4 0 0 0 4-4V9a4 4 0 0 0-4-4z\"></path><path fill=\"#FF0\" d=\"M19.753 16.037L18 10.642l-1.753 5.395h-5.672l4.589 3.333l-1.753 5.395L18 21.431l4.589 3.334l-1.753-5.395l4.589-3.333z\"></path></svg>",
|
|
7837
|
+
country: "Việt Nam",
|
|
7838
|
+
value: "+84"
|
|
7839
|
+
}] : _props$options;
|
|
7840
|
+
var _useState = useState(""),
|
|
7815
7841
|
value = _useState[0],
|
|
7816
7842
|
_setValue = _useState[1];
|
|
7817
7843
|
var _useState2 = useState({
|
|
7818
|
-
|
|
7819
|
-
|
|
7844
|
+
label: "<svg width=\"20\" height=\"20\" viewBox=\"0 0 36 36\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" aria-hidden=\"true\" role=\"img\" class=\"iconify iconify--twemoji\" preserveAspectRatio=\"xMidYMid meet\"><path fill=\"#DA251D\" d=\"M32 5H4a4 4 0 0 0-4 4v18a4 4 0 0 0 4 4h28a4 4 0 0 0 4-4V9a4 4 0 0 0-4-4z\"></path><path fill=\"#FF0\" d=\"M19.753 16.037L18 10.642l-1.753 5.395h-5.672l4.589 3.333l-1.753 5.395L18 21.431l4.589 3.334l-1.753-5.395l4.589-3.333z\"></path></svg>",
|
|
7845
|
+
country: "Việt Nam",
|
|
7820
7846
|
value: "+84"
|
|
7821
7847
|
}),
|
|
7822
7848
|
countryCode = _useState2[0],
|
|
@@ -7824,6 +7850,11 @@ var InputPhoneNumber = forwardRef(function (props, ref) {
|
|
|
7824
7850
|
var _useState3 = useState(""),
|
|
7825
7851
|
error = _useState3[0],
|
|
7826
7852
|
_setError = _useState3[1];
|
|
7853
|
+
useEffect(function () {
|
|
7854
|
+
if (defaultValue) {
|
|
7855
|
+
_setValue("+" + defaultValue);
|
|
7856
|
+
}
|
|
7857
|
+
}, []);
|
|
7827
7858
|
var handleOnChange = function handleOnChange(event) {
|
|
7828
7859
|
var value = event.target.value;
|
|
7829
7860
|
_setValue(value);
|
|
@@ -7838,8 +7869,10 @@ var InputPhoneNumber = forwardRef(function (props, ref) {
|
|
|
7838
7869
|
return _setValue(text);
|
|
7839
7870
|
},
|
|
7840
7871
|
getValue: function getValue() {
|
|
7841
|
-
|
|
7842
|
-
|
|
7872
|
+
if (!(value !== null && value !== void 0 && value.startsWith(countryCode === null || countryCode === void 0 ? void 0 : countryCode.value))) {
|
|
7873
|
+
return (countryCode === null || countryCode === void 0 ? void 0 : countryCode.value) + (value === null || value === void 0 ? void 0 : value.replace(/^0/, ''));
|
|
7874
|
+
}
|
|
7875
|
+
return value;
|
|
7843
7876
|
},
|
|
7844
7877
|
setError: function setError(err) {
|
|
7845
7878
|
return _setError(err);
|
|
@@ -7875,40 +7908,36 @@ var InputPhoneNumber = forwardRef(function (props, ref) {
|
|
|
7875
7908
|
className: "text-danger"
|
|
7876
7909
|
}, " *") : null;
|
|
7877
7910
|
var _inputClassName = "h-full w-full px-2 focus:outline-none focus:ring-0 " + inputClassName;
|
|
7878
|
-
var data = useCallback([{
|
|
7879
|
-
icons: "<?xml version=\"1.0\" encoding=\"utf-8\"?><!-- Uploaded to: SVG Repo, www.svgrepo.com, Generator: SVG Repo Mixer Tools -->\n<svg width=\"20\" height=\"20\" viewBox=\"0 0 36 36\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" aria-hidden=\"true\" role=\"img\" class=\"iconify iconify--twemoji\" preserveAspectRatio=\"xMidYMid meet\"><path fill=\"#DA251D\" d=\"M32 5H4a4 4 0 0 0-4 4v18a4 4 0 0 0 4 4h28a4 4 0 0 0 4-4V9a4 4 0 0 0-4-4z\"></path><path fill=\"#FF0\" d=\"M19.753 16.037L18 10.642l-1.753 5.395h-5.672l4.589 3.333l-1.753 5.395L18 21.431l4.589 3.334l-1.753-5.395l4.589-3.333z\"></path></svg>",
|
|
7880
|
-
label: "Việt Nam",
|
|
7881
|
-
value: "+84"
|
|
7882
|
-
}], []);
|
|
7883
7911
|
return /*#__PURE__*/React__default.createElement("div", {
|
|
7884
7912
|
className: "flex flex-col " + wrapClassName
|
|
7885
7913
|
}, label ? /*#__PURE__*/React__default.createElement("label", {
|
|
7886
7914
|
className: "mb-1 " + labelClassName
|
|
7887
7915
|
}, label, labelRequired) : null, /*#__PURE__*/React__default.createElement("div", {
|
|
7888
|
-
className: "flex items-center h-10 rounded-lg border
|
|
7916
|
+
className: "flex items-center h-10 rounded-lg border pr-2 py-1 " + className
|
|
7889
7917
|
}, /*#__PURE__*/React__default.createElement("button", {
|
|
7890
|
-
className: "
|
|
7918
|
+
className: "border-r-2"
|
|
7891
7919
|
}, /*#__PURE__*/React__default.createElement(Select$1, {
|
|
7892
7920
|
className: 'w-max border-0',
|
|
7893
7921
|
defaultValue: countryCode,
|
|
7894
|
-
options:
|
|
7922
|
+
options: options,
|
|
7895
7923
|
optionClassName: "w-max",
|
|
7896
7924
|
placeholder: "+84",
|
|
7897
7925
|
onClick: setCountryCode,
|
|
7898
|
-
selectClassName: "ps-
|
|
7926
|
+
selectClassName: "ps-2 pr-1",
|
|
7899
7927
|
renderItem: function renderItem(item) {
|
|
7900
7928
|
return /*#__PURE__*/React__default.createElement("div", {
|
|
7901
7929
|
className: "flex gap-3 items-center w-full"
|
|
7902
7930
|
}, /*#__PURE__*/React__default.createElement("div", {
|
|
7903
7931
|
dangerouslySetInnerHTML: {
|
|
7904
|
-
__html: item === null || item === void 0 ? void 0 : item.
|
|
7932
|
+
__html: item === null || item === void 0 ? void 0 : item.label
|
|
7905
7933
|
}
|
|
7906
7934
|
}), /*#__PURE__*/React__default.createElement("div", {
|
|
7907
7935
|
className: "text-start flex-1 text-sm"
|
|
7908
|
-
}, item === null || item === void 0 ? void 0 : item.
|
|
7936
|
+
}, item === null || item === void 0 ? void 0 : item.country), /*#__PURE__*/React__default.createElement("div", {
|
|
7909
7937
|
className: "text-gray3"
|
|
7910
7938
|
}, item === null || item === void 0 ? void 0 : item.value));
|
|
7911
|
-
}
|
|
7939
|
+
},
|
|
7940
|
+
wrapClassName: "w-full"
|
|
7912
7941
|
})), /*#__PURE__*/React__default.createElement("input", {
|
|
7913
7942
|
type: type,
|
|
7914
7943
|
name: name,
|
|
@@ -7931,7 +7960,7 @@ var formatCurrency = function formatCurrency(amount) {
|
|
|
7931
7960
|
return formattedAmount + " \u20AB";
|
|
7932
7961
|
};
|
|
7933
7962
|
var pattern = {
|
|
7934
|
-
phoneNumberPattern: /^0
|
|
7963
|
+
phoneNumberPattern: /^(?:\+84|0)\d{9}$/
|
|
7935
7964
|
};
|
|
7936
7965
|
var numberPattern = /^\d+$/;
|
|
7937
7966
|
|