forstok-ui-lib 6.18.1 → 6.18.3
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.d.ts +9 -1
- package/dist/index.js +2 -2
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +382 -382
- package/dist/index.mjs.map +1 -1
- package/package.json +1 -1
- package/src/assets/images/navs/left/price-active.svg +5 -0
- package/src/assets/images/navs/left/price.svg +5 -0
- package/src/assets/javascripts/function.ts +131 -0
- package/src/components/icon/styles.ts +16 -0
package/package.json
CHANGED
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
<svg width="100%" height="100%" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
2
|
+
<path d="M3.04591 11.603C1.88716 10.4435 1.3074 9.86449 1.09215 9.11224C0.876149 8.35998 1.06065 7.56123 1.42965 5.96447L1.6419 5.04346C1.95166 3.69945 2.10691 3.02745 2.56666 2.56694C3.02641 2.10644 3.69917 1.95194 5.04318 1.64219L5.96418 1.42919C7.56169 1.06093 8.3597 0.876433 9.11195 1.09168C9.86421 1.30769 10.4432 1.88744 11.602 3.0462L12.9745 4.41871C14.9927 6.43622 16 7.44423 16 8.69674C16 9.94999 14.992 10.958 12.9752 12.9748C10.9577 14.9923 9.94971 16.0003 8.69645 16.0003C7.44394 16.0003 6.43519 14.9923 4.41842 12.9755L3.04591 11.603Z" stroke="#086de0"/>
|
|
3
|
+
<path d="M11.0423 11.0434C11.4811 10.6031 11.5403 9.9506 11.1743 9.58384C10.8083 9.21709 10.1551 9.27709 9.71556 9.7166C9.27681 10.1561 8.62355 10.2153 8.25755 9.84935C7.89155 9.48334 7.9508 8.83009 8.3903 8.39134M8.3903 8.39134L8.1248 8.12583M8.3903 8.39134C8.63855 8.14233 8.95505 8.01633 9.2498 8.01858M11.3071 11.3081L11.0416 11.0426C10.7416 11.3434 10.3403 11.4664 9.99981 11.3959" stroke="#086de0" stroke-linecap="round"/>
|
|
4
|
+
<path d="M7.01599 7.21985C7.60178 6.63406 7.60178 5.6843 7.01599 5.09851C6.4302 4.51272 5.48044 4.51272 4.89465 5.09851C4.30886 5.6843 4.30886 6.63406 4.89465 7.21985C5.48044 7.80564 6.4302 7.80564 7.01599 7.21985Z" stroke="#086de0"/>
|
|
5
|
+
</svg>
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
<svg width="100%" height="100%" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
2
|
+
<path d="M3.04591 11.603C1.88716 10.4435 1.3074 9.86449 1.09215 9.11224C0.876149 8.35998 1.06065 7.56123 1.42965 5.96447L1.6419 5.04346C1.95166 3.69945 2.10691 3.02745 2.56666 2.56694C3.02641 2.10644 3.69917 1.95194 5.04318 1.64219L5.96418 1.42919C7.56169 1.06093 8.3597 0.876433 9.11195 1.09168C9.86421 1.30769 10.4432 1.88744 11.602 3.0462L12.9745 4.41871C14.9927 6.43622 16 7.44423 16 8.69674C16 9.94999 14.992 10.958 12.9752 12.9748C10.9577 14.9923 9.94971 16.0003 8.69645 16.0003C7.44394 16.0003 6.43519 14.9923 4.41842 12.9755L3.04591 11.603Z" stroke="black"/>
|
|
3
|
+
<path d="M11.0423 11.0434C11.4811 10.6031 11.5403 9.9506 11.1743 9.58384C10.8083 9.21709 10.1551 9.27709 9.71556 9.7166C9.27681 10.1561 8.62355 10.2153 8.25755 9.84935C7.89155 9.48334 7.9508 8.83009 8.3903 8.39134M8.3903 8.39134L8.1248 8.12583M8.3903 8.39134C8.63855 8.14233 8.95505 8.01633 9.2498 8.01858M11.3071 11.3081L11.0416 11.0426C10.7416 11.3434 10.3403 11.4664 9.99981 11.3959" stroke="black" stroke-linecap="round"/>
|
|
4
|
+
<path d="M7.01599 7.21985C7.60178 6.63406 7.60178 5.6843 7.01599 5.09851C6.4302 4.51272 5.48044 4.51272 4.89465 5.09851C4.30886 5.6843 4.30886 6.63406 4.89465 7.21985C5.48044 7.80564 6.4302 7.80564 7.01599 7.21985Z" stroke="black"/>
|
|
5
|
+
</svg>
|
|
@@ -3,6 +3,7 @@ import { ReactNode } from 'react';
|
|
|
3
3
|
import { TMessage, TMessageFunction, TMessageQuestion } from '../../components/message/typed';
|
|
4
4
|
import { TObject } from '../../typeds/base.typed';
|
|
5
5
|
import { errorTitle } from './helper';
|
|
6
|
+
import { THeadProps } from '../../typeds';
|
|
6
7
|
|
|
7
8
|
export const getStorage = (name: string, type: string = 'string', defaultVal?: any, loadName: string = 'load') => {
|
|
8
9
|
let result: any
|
|
@@ -695,4 +696,134 @@ export const generateAddress = (address?: TObject | null) => {
|
|
|
695
696
|
export const evRemoveActiveButton = () => {
|
|
696
697
|
const nextButtonEl = document.querySelector('#btn-active-red') as HTMLButtonElement
|
|
697
698
|
nextButtonEl && nextButtonEl.removeAttribute('id')
|
|
699
|
+
}
|
|
700
|
+
|
|
701
|
+
export const evCheckAllValidationByHeader = (data: any[], headerColumns: THeadProps[]) => {
|
|
702
|
+
let isError = false
|
|
703
|
+
const validByHeader = (key: string, valuex: any, idx?: number, title = null) => {
|
|
704
|
+
const __idx = idx || 0
|
|
705
|
+
const validHeaderKeyFilter = headerColumns.filter(header => (header.key === key && header.validations))
|
|
706
|
+
if (validHeaderKeyFilter.length) {
|
|
707
|
+
const head = validHeaderKeyFilter[__idx]
|
|
708
|
+
const type = head.typeData || 'String'
|
|
709
|
+
const _value = generateValue(type, valuex)
|
|
710
|
+
const valid = validateByApproveJs(head, _value, title || '')
|
|
711
|
+
return valid
|
|
712
|
+
}
|
|
713
|
+
return { approved: true }
|
|
714
|
+
}
|
|
715
|
+
|
|
716
|
+
const newData = []
|
|
717
|
+
for (let x=0; x<data.length; x++) {
|
|
718
|
+
const _data = data[x]
|
|
719
|
+
const keys = Object.keys(_data)
|
|
720
|
+
|
|
721
|
+
for (const key of keys) {
|
|
722
|
+
let _valid: TObject = { approved: true }
|
|
723
|
+
if (Array.isArray(_data[key])) {
|
|
724
|
+
for (let i = 0; i < _data[key].length; i++) {
|
|
725
|
+
const _dataArr = _data[key][i]
|
|
726
|
+
const keysArr = Object.keys(_dataArr)
|
|
727
|
+
for (const keyArr of keysArr) {
|
|
728
|
+
if (Array.isArray(_dataArr[keyArr])) {
|
|
729
|
+
for (let z = 0; z < _dataArr[keyArr].length; z++) {
|
|
730
|
+
const _dataArrArr = _dataArr[keyArr][z]
|
|
731
|
+
const keysArrArr = Object.keys(_dataArrArr)
|
|
732
|
+
for (const keyArrArr of keysArrArr) {
|
|
733
|
+
_valid = validByHeader(keyArrArr, _dataArrArr[keyArrArr])
|
|
734
|
+
if (!_valid.approved) {
|
|
735
|
+
_dataArrArr[`${keyArr}_error`] = _valid.errors[0]
|
|
736
|
+
if (!isError) {
|
|
737
|
+
isError = true
|
|
738
|
+
}
|
|
739
|
+
}
|
|
740
|
+
if (keyArrArr.indexOf('_error') !== -1 && !isError) {
|
|
741
|
+
isError = true
|
|
742
|
+
}
|
|
743
|
+
}
|
|
744
|
+
}
|
|
745
|
+
} else {
|
|
746
|
+
_valid = validByHeader(keyArr, _dataArr[keyArr])
|
|
747
|
+
if (!_valid.approved) {
|
|
748
|
+
_dataArr[`${keyArr}_error`] = _valid.errors[0]
|
|
749
|
+
if (!isError) {
|
|
750
|
+
isError = true
|
|
751
|
+
}
|
|
752
|
+
}
|
|
753
|
+
if (keyArr.indexOf('_error') !== -1 && !isError) {
|
|
754
|
+
isError = true
|
|
755
|
+
}
|
|
756
|
+
}
|
|
757
|
+
}
|
|
758
|
+
}
|
|
759
|
+
} else {
|
|
760
|
+
_valid = validByHeader(key, _data[key])
|
|
761
|
+
if (!_valid.approved) {
|
|
762
|
+
_data[`${key}_error`] = _valid.errors[0]
|
|
763
|
+
if (!isError) {
|
|
764
|
+
isError = true
|
|
765
|
+
}
|
|
766
|
+
}
|
|
767
|
+
if (key.indexOf('_error') !== -1 && !isError) {
|
|
768
|
+
isError = true
|
|
769
|
+
}
|
|
770
|
+
}
|
|
771
|
+
}
|
|
772
|
+
newData.push(_data)
|
|
773
|
+
}
|
|
774
|
+
return { error: isError, data: newData }
|
|
775
|
+
}
|
|
776
|
+
|
|
777
|
+
export const evCheckAllValidationByHeaderWithVariant = (newData: any[], headerColumns: THeadProps[]) => {
|
|
778
|
+
let isError = false
|
|
779
|
+
|
|
780
|
+
const validByHeader = (key: string, valuex: any, idx?: number, content?: any) => {
|
|
781
|
+
const __idx = idx || 0
|
|
782
|
+
const validHeaderKeyFilter = headerColumns.filter(header => (header.key === key && header.validations))
|
|
783
|
+
if (validHeaderKeyFilter.length) {
|
|
784
|
+
const head = validHeaderKeyFilter[__idx]
|
|
785
|
+
const type = head.typeData || 'String'
|
|
786
|
+
const _value = generateValue(type, valuex)
|
|
787
|
+
const valid = validateByApproveJs(head, _value, undefined, evGenerateValueMatch(head.validations, content))
|
|
788
|
+
return valid
|
|
789
|
+
}
|
|
790
|
+
return { approved: true }
|
|
791
|
+
}
|
|
792
|
+
|
|
793
|
+
let _newData = [...newData]
|
|
794
|
+
for (let x=0; x<_newData.length; x++) {
|
|
795
|
+
let _data = _newData[x]
|
|
796
|
+
let keys = Object.keys(_data)
|
|
797
|
+
|
|
798
|
+
for (const key of keys) {
|
|
799
|
+
if (Array.isArray(_data[key]) && _data[key].length && typeof _data[key][0] === 'object') {
|
|
800
|
+
for (let i = 0; i < _data[key].length; i++){
|
|
801
|
+
const _dataArr = _data[key][i]
|
|
802
|
+
const keysArr = Object.keys(_dataArr)
|
|
803
|
+
for (const keyArr of keysArr) {
|
|
804
|
+
if (!Array.isArray(_dataArr[keyArr])) {
|
|
805
|
+
const _key = `${key}-${keyArr}`,
|
|
806
|
+
valid = validByHeader(_key, _dataArr[keyArr], undefined, _dataArr)
|
|
807
|
+
if (!valid.approved) {
|
|
808
|
+
_dataArr[`${keyArr}_error`] = valid.errors[0]
|
|
809
|
+
if (!isError) {
|
|
810
|
+
isError = true
|
|
811
|
+
}
|
|
812
|
+
}
|
|
813
|
+
}
|
|
814
|
+
}
|
|
815
|
+
}
|
|
816
|
+
} else {
|
|
817
|
+
const valid = validByHeader(key, _data[key], undefined, _data)
|
|
818
|
+
if (!valid.approved) {
|
|
819
|
+
_data[`${key}_error`] = valid.errors[0]
|
|
820
|
+
if (!isError) {
|
|
821
|
+
isError = true
|
|
822
|
+
}
|
|
823
|
+
}
|
|
824
|
+
}
|
|
825
|
+
}
|
|
826
|
+
_newData.splice(x, 1, _data)
|
|
827
|
+
}
|
|
828
|
+
return { error: isError, data: _newData }
|
|
698
829
|
}
|
|
@@ -60,6 +60,8 @@ import IconOrderLeftNav from '../../assets/images/navs/left/order.svg'
|
|
|
60
60
|
import IconProductActiveLeftNav from '../../assets/images/navs/left/products-active.svg'
|
|
61
61
|
import IconInventoryActiveLeftNav from '../../assets/images/navs/left/inventory-active.svg'
|
|
62
62
|
import IconOrderActiveLeftNav from '../../assets/images/navs/left/order-active.svg'
|
|
63
|
+
import IconPriceLeftNav from '../../assets/images/navs/left/price.svg';
|
|
64
|
+
import IconPriceActiveLeftNav from '../../assets/images/navs/left/price-active.svg';
|
|
63
65
|
import IconWarningChat from '../../assets/images/icons/warning-agent.svg';
|
|
64
66
|
import IconCheckChat from '../../assets/images/icons/check.svg';
|
|
65
67
|
import IconCheckChatBlue from '../../assets/images/icons/check-blue.svg';
|
|
@@ -527,6 +529,20 @@ const getIconContainerStyled = ({ $mode, $name, $width, onClick }:{ $mode?: stri
|
|
|
527
529
|
}
|
|
528
530
|
`
|
|
529
531
|
break;
|
|
532
|
+
case 'price-left-nav':
|
|
533
|
+
style += `
|
|
534
|
+
&:before {
|
|
535
|
+
content: url(${IconPriceLeftNav});
|
|
536
|
+
}
|
|
537
|
+
`
|
|
538
|
+
break;
|
|
539
|
+
case 'price-active-left-nav':
|
|
540
|
+
style += `
|
|
541
|
+
&:before {
|
|
542
|
+
content: url(${IconPriceActiveLeftNav});
|
|
543
|
+
}
|
|
544
|
+
`
|
|
545
|
+
break;
|
|
530
546
|
case 'warning-chat':
|
|
531
547
|
style += `
|
|
532
548
|
&:before {
|