Optim Final Fun
This commit is contained in:
parent
f717c55f67
commit
6a567f8e66
|
|
@ -2968,381 +2968,6 @@
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/@rollup/rollup-android-arm-eabi": {
|
|
||||||
"version": "4.58.0",
|
|
||||||
"resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.58.0.tgz",
|
|
||||||
"integrity": "sha512-mr0tmS/4FoVk1cnaeN244A/wjvGDNItZKR8hRhnmCzygyRXYtKF5jVDSIILR1U97CTzAYmbgIj/Dukg62ggG5w==",
|
|
||||||
"cpu": [
|
|
||||||
"arm"
|
|
||||||
],
|
|
||||||
"dev": true,
|
|
||||||
"license": "MIT",
|
|
||||||
"optional": true,
|
|
||||||
"os": [
|
|
||||||
"android"
|
|
||||||
],
|
|
||||||
"peer": true
|
|
||||||
},
|
|
||||||
"node_modules/@rollup/rollup-android-arm64": {
|
|
||||||
"version": "4.58.0",
|
|
||||||
"resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.58.0.tgz",
|
|
||||||
"integrity": "sha512-+s++dbp+/RTte62mQD9wLSbiMTV+xr/PeRJEc/sFZFSBRlHPNPVaf5FXlzAL77Mr8FtSfQqCN+I598M8U41ccQ==",
|
|
||||||
"cpu": [
|
|
||||||
"arm64"
|
|
||||||
],
|
|
||||||
"dev": true,
|
|
||||||
"license": "MIT",
|
|
||||||
"optional": true,
|
|
||||||
"os": [
|
|
||||||
"android"
|
|
||||||
],
|
|
||||||
"peer": true
|
|
||||||
},
|
|
||||||
"node_modules/@rollup/rollup-darwin-arm64": {
|
|
||||||
"version": "4.58.0",
|
|
||||||
"resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.58.0.tgz",
|
|
||||||
"integrity": "sha512-MFWBwTcYs0jZbINQBXHfSrpSQJq3IUOakcKPzfeSznONop14Pxuqa0Kg19GD0rNBMPQI2tFtu3UzapZpH0Uc1Q==",
|
|
||||||
"cpu": [
|
|
||||||
"arm64"
|
|
||||||
],
|
|
||||||
"dev": true,
|
|
||||||
"license": "MIT",
|
|
||||||
"optional": true,
|
|
||||||
"os": [
|
|
||||||
"darwin"
|
|
||||||
],
|
|
||||||
"peer": true
|
|
||||||
},
|
|
||||||
"node_modules/@rollup/rollup-darwin-x64": {
|
|
||||||
"version": "4.58.0",
|
|
||||||
"resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.58.0.tgz",
|
|
||||||
"integrity": "sha512-yiKJY7pj9c9JwzuKYLFaDZw5gma3fI9bkPEIyofvVfsPqjCWPglSHdpdwXpKGvDeYDms3Qal8qGMEHZ1M/4Udg==",
|
|
||||||
"cpu": [
|
|
||||||
"x64"
|
|
||||||
],
|
|
||||||
"dev": true,
|
|
||||||
"license": "MIT",
|
|
||||||
"optional": true,
|
|
||||||
"os": [
|
|
||||||
"darwin"
|
|
||||||
],
|
|
||||||
"peer": true
|
|
||||||
},
|
|
||||||
"node_modules/@rollup/rollup-freebsd-arm64": {
|
|
||||||
"version": "4.58.0",
|
|
||||||
"resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-arm64/-/rollup-freebsd-arm64-4.58.0.tgz",
|
|
||||||
"integrity": "sha512-x97kCoBh5MOevpn/CNK9W1x8BEzO238541BGWBc315uOlN0AD/ifZ1msg+ZQB05Ux+VF6EcYqpiagfLJ8U3LvQ==",
|
|
||||||
"cpu": [
|
|
||||||
"arm64"
|
|
||||||
],
|
|
||||||
"dev": true,
|
|
||||||
"license": "MIT",
|
|
||||||
"optional": true,
|
|
||||||
"os": [
|
|
||||||
"freebsd"
|
|
||||||
],
|
|
||||||
"peer": true
|
|
||||||
},
|
|
||||||
"node_modules/@rollup/rollup-freebsd-x64": {
|
|
||||||
"version": "4.58.0",
|
|
||||||
"resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-x64/-/rollup-freebsd-x64-4.58.0.tgz",
|
|
||||||
"integrity": "sha512-Aa8jPoZ6IQAG2eIrcXPpjRcMjROMFxCt1UYPZZtCxRV68WkuSigYtQ/7Zwrcr2IvtNJo7T2JfDXyMLxq5L4Jlg==",
|
|
||||||
"cpu": [
|
|
||||||
"x64"
|
|
||||||
],
|
|
||||||
"dev": true,
|
|
||||||
"license": "MIT",
|
|
||||||
"optional": true,
|
|
||||||
"os": [
|
|
||||||
"freebsd"
|
|
||||||
],
|
|
||||||
"peer": true
|
|
||||||
},
|
|
||||||
"node_modules/@rollup/rollup-linux-arm-gnueabihf": {
|
|
||||||
"version": "4.58.0",
|
|
||||||
"resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.58.0.tgz",
|
|
||||||
"integrity": "sha512-Ob8YgT5kD/lSIYW2Rcngs5kNB/44Q2RzBSPz9brf2WEtcGR7/f/E9HeHn1wYaAwKBni+bdXEwgHvUd0x12lQSA==",
|
|
||||||
"cpu": [
|
|
||||||
"arm"
|
|
||||||
],
|
|
||||||
"dev": true,
|
|
||||||
"license": "MIT",
|
|
||||||
"optional": true,
|
|
||||||
"os": [
|
|
||||||
"linux"
|
|
||||||
],
|
|
||||||
"peer": true
|
|
||||||
},
|
|
||||||
"node_modules/@rollup/rollup-linux-arm-musleabihf": {
|
|
||||||
"version": "4.58.0",
|
|
||||||
"resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.58.0.tgz",
|
|
||||||
"integrity": "sha512-K+RI5oP1ceqoadvNt1FecL17Qtw/n9BgRSzxif3rTL2QlIu88ccvY+Y9nnHe/cmT5zbH9+bpiJuG1mGHRVwF4Q==",
|
|
||||||
"cpu": [
|
|
||||||
"arm"
|
|
||||||
],
|
|
||||||
"dev": true,
|
|
||||||
"license": "MIT",
|
|
||||||
"optional": true,
|
|
||||||
"os": [
|
|
||||||
"linux"
|
|
||||||
],
|
|
||||||
"peer": true
|
|
||||||
},
|
|
||||||
"node_modules/@rollup/rollup-linux-arm64-gnu": {
|
|
||||||
"version": "4.58.0",
|
|
||||||
"resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.58.0.tgz",
|
|
||||||
"integrity": "sha512-T+17JAsCKUjmbopcKepJjHWHXSjeW7O5PL7lEFaeQmiVyw4kkc5/lyYKzrv6ElWRX/MrEWfPiJWqbTvfIvjM1Q==",
|
|
||||||
"cpu": [
|
|
||||||
"arm64"
|
|
||||||
],
|
|
||||||
"dev": true,
|
|
||||||
"license": "MIT",
|
|
||||||
"optional": true,
|
|
||||||
"os": [
|
|
||||||
"linux"
|
|
||||||
],
|
|
||||||
"peer": true
|
|
||||||
},
|
|
||||||
"node_modules/@rollup/rollup-linux-arm64-musl": {
|
|
||||||
"version": "4.58.0",
|
|
||||||
"resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.58.0.tgz",
|
|
||||||
"integrity": "sha512-cCePktb9+6R9itIJdeCFF9txPU7pQeEHB5AbHu/MKsfH/k70ZtOeq1k4YAtBv9Z7mmKI5/wOLYjQ+B9QdxR6LA==",
|
|
||||||
"cpu": [
|
|
||||||
"arm64"
|
|
||||||
],
|
|
||||||
"dev": true,
|
|
||||||
"license": "MIT",
|
|
||||||
"optional": true,
|
|
||||||
"os": [
|
|
||||||
"linux"
|
|
||||||
],
|
|
||||||
"peer": true
|
|
||||||
},
|
|
||||||
"node_modules/@rollup/rollup-linux-loong64-gnu": {
|
|
||||||
"version": "4.58.0",
|
|
||||||
"resolved": "https://registry.npmjs.org/@rollup/rollup-linux-loong64-gnu/-/rollup-linux-loong64-gnu-4.58.0.tgz",
|
|
||||||
"integrity": "sha512-iekUaLkfliAsDl4/xSdoCJ1gnnIXvoNz85C8U8+ZxknM5pBStfZjeXgB8lXobDQvvPRCN8FPmmuTtH+z95HTmg==",
|
|
||||||
"cpu": [
|
|
||||||
"loong64"
|
|
||||||
],
|
|
||||||
"dev": true,
|
|
||||||
"license": "MIT",
|
|
||||||
"optional": true,
|
|
||||||
"os": [
|
|
||||||
"linux"
|
|
||||||
],
|
|
||||||
"peer": true
|
|
||||||
},
|
|
||||||
"node_modules/@rollup/rollup-linux-loong64-musl": {
|
|
||||||
"version": "4.58.0",
|
|
||||||
"resolved": "https://registry.npmjs.org/@rollup/rollup-linux-loong64-musl/-/rollup-linux-loong64-musl-4.58.0.tgz",
|
|
||||||
"integrity": "sha512-68ofRgJNl/jYJbxFjCKE7IwhbfxOl1muPN4KbIqAIe32lm22KmU7E8OPvyy68HTNkI2iV/c8y2kSPSm2mW/Q9Q==",
|
|
||||||
"cpu": [
|
|
||||||
"loong64"
|
|
||||||
],
|
|
||||||
"dev": true,
|
|
||||||
"license": "MIT",
|
|
||||||
"optional": true,
|
|
||||||
"os": [
|
|
||||||
"linux"
|
|
||||||
],
|
|
||||||
"peer": true
|
|
||||||
},
|
|
||||||
"node_modules/@rollup/rollup-linux-ppc64-gnu": {
|
|
||||||
"version": "4.58.0",
|
|
||||||
"resolved": "https://registry.npmjs.org/@rollup/rollup-linux-ppc64-gnu/-/rollup-linux-ppc64-gnu-4.58.0.tgz",
|
|
||||||
"integrity": "sha512-dpz8vT0i+JqUKuSNPCP5SYyIV2Lh0sNL1+FhM7eLC457d5B9/BC3kDPp5BBftMmTNsBarcPcoz5UGSsnCiw4XQ==",
|
|
||||||
"cpu": [
|
|
||||||
"ppc64"
|
|
||||||
],
|
|
||||||
"dev": true,
|
|
||||||
"license": "MIT",
|
|
||||||
"optional": true,
|
|
||||||
"os": [
|
|
||||||
"linux"
|
|
||||||
],
|
|
||||||
"peer": true
|
|
||||||
},
|
|
||||||
"node_modules/@rollup/rollup-linux-ppc64-musl": {
|
|
||||||
"version": "4.58.0",
|
|
||||||
"resolved": "https://registry.npmjs.org/@rollup/rollup-linux-ppc64-musl/-/rollup-linux-ppc64-musl-4.58.0.tgz",
|
|
||||||
"integrity": "sha512-4gdkkf9UJ7tafnweBCR/mk4jf3Jfl0cKX9Np80t5i78kjIH0ZdezUv/JDI2VtruE5lunfACqftJ8dIMGN4oHew==",
|
|
||||||
"cpu": [
|
|
||||||
"ppc64"
|
|
||||||
],
|
|
||||||
"dev": true,
|
|
||||||
"license": "MIT",
|
|
||||||
"optional": true,
|
|
||||||
"os": [
|
|
||||||
"linux"
|
|
||||||
],
|
|
||||||
"peer": true
|
|
||||||
},
|
|
||||||
"node_modules/@rollup/rollup-linux-riscv64-gnu": {
|
|
||||||
"version": "4.58.0",
|
|
||||||
"resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.58.0.tgz",
|
|
||||||
"integrity": "sha512-YFS4vPnOkDTD/JriUeeZurFYoJhPf9GQQEF/v4lltp3mVcBmnsAdjEWhr2cjUCZzZNzxCG0HZOvJU44UGHSdzw==",
|
|
||||||
"cpu": [
|
|
||||||
"riscv64"
|
|
||||||
],
|
|
||||||
"dev": true,
|
|
||||||
"license": "MIT",
|
|
||||||
"optional": true,
|
|
||||||
"os": [
|
|
||||||
"linux"
|
|
||||||
],
|
|
||||||
"peer": true
|
|
||||||
},
|
|
||||||
"node_modules/@rollup/rollup-linux-riscv64-musl": {
|
|
||||||
"version": "4.58.0",
|
|
||||||
"resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-musl/-/rollup-linux-riscv64-musl-4.58.0.tgz",
|
|
||||||
"integrity": "sha512-x2xgZlFne+QVNKV8b4wwaCS8pwq3y14zedZ5DqLzjdRITvreBk//4Knbcvm7+lWmms9V9qFp60MtUd0/t/PXPw==",
|
|
||||||
"cpu": [
|
|
||||||
"riscv64"
|
|
||||||
],
|
|
||||||
"dev": true,
|
|
||||||
"license": "MIT",
|
|
||||||
"optional": true,
|
|
||||||
"os": [
|
|
||||||
"linux"
|
|
||||||
],
|
|
||||||
"peer": true
|
|
||||||
},
|
|
||||||
"node_modules/@rollup/rollup-linux-s390x-gnu": {
|
|
||||||
"version": "4.58.0",
|
|
||||||
"resolved": "https://registry.npmjs.org/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.58.0.tgz",
|
|
||||||
"integrity": "sha512-jIhrujyn4UnWF8S+DHSkAkDEO3hLX0cjzxJZPLF80xFyzyUIYgSMRcYQ3+uqEoyDD2beGq7Dj7edi8OnJcS/hg==",
|
|
||||||
"cpu": [
|
|
||||||
"s390x"
|
|
||||||
],
|
|
||||||
"dev": true,
|
|
||||||
"license": "MIT",
|
|
||||||
"optional": true,
|
|
||||||
"os": [
|
|
||||||
"linux"
|
|
||||||
],
|
|
||||||
"peer": true
|
|
||||||
},
|
|
||||||
"node_modules/@rollup/rollup-linux-x64-gnu": {
|
|
||||||
"version": "4.58.0",
|
|
||||||
"resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.58.0.tgz",
|
|
||||||
"integrity": "sha512-+410Srdoh78MKSJxTQ+hZ/Mx+ajd6RjjPwBPNd0R3J9FtL6ZA0GqiiyNjCO9In0IzZkCNrpGymSfn+kgyPQocg==",
|
|
||||||
"cpu": [
|
|
||||||
"x64"
|
|
||||||
],
|
|
||||||
"dev": true,
|
|
||||||
"license": "MIT",
|
|
||||||
"optional": true,
|
|
||||||
"os": [
|
|
||||||
"linux"
|
|
||||||
],
|
|
||||||
"peer": true
|
|
||||||
},
|
|
||||||
"node_modules/@rollup/rollup-linux-x64-musl": {
|
|
||||||
"version": "4.58.0",
|
|
||||||
"resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.58.0.tgz",
|
|
||||||
"integrity": "sha512-ZjMyby5SICi227y1MTR3VYBpFTdZs823Rs/hpakufleBoufoOIB6jtm9FEoxn/cgO7l6PM2rCEl5Kre5vX0QrQ==",
|
|
||||||
"cpu": [
|
|
||||||
"x64"
|
|
||||||
],
|
|
||||||
"dev": true,
|
|
||||||
"license": "MIT",
|
|
||||||
"optional": true,
|
|
||||||
"os": [
|
|
||||||
"linux"
|
|
||||||
],
|
|
||||||
"peer": true
|
|
||||||
},
|
|
||||||
"node_modules/@rollup/rollup-openbsd-x64": {
|
|
||||||
"version": "4.58.0",
|
|
||||||
"resolved": "https://registry.npmjs.org/@rollup/rollup-openbsd-x64/-/rollup-openbsd-x64-4.58.0.tgz",
|
|
||||||
"integrity": "sha512-ds4iwfYkSQ0k1nb8LTcyXw//ToHOnNTJtceySpL3fa7tc/AsE+UpUFphW126A6fKBGJD5dhRvg8zw1rvoGFxmw==",
|
|
||||||
"cpu": [
|
|
||||||
"x64"
|
|
||||||
],
|
|
||||||
"dev": true,
|
|
||||||
"license": "MIT",
|
|
||||||
"optional": true,
|
|
||||||
"os": [
|
|
||||||
"openbsd"
|
|
||||||
],
|
|
||||||
"peer": true
|
|
||||||
},
|
|
||||||
"node_modules/@rollup/rollup-openharmony-arm64": {
|
|
||||||
"version": "4.58.0",
|
|
||||||
"resolved": "https://registry.npmjs.org/@rollup/rollup-openharmony-arm64/-/rollup-openharmony-arm64-4.58.0.tgz",
|
|
||||||
"integrity": "sha512-fd/zpJniln4ICdPkjWFhZYeY/bpnaN9pGa6ko+5WD38I0tTqk9lXMgXZg09MNdhpARngmxiCg0B0XUamNw/5BQ==",
|
|
||||||
"cpu": [
|
|
||||||
"arm64"
|
|
||||||
],
|
|
||||||
"dev": true,
|
|
||||||
"license": "MIT",
|
|
||||||
"optional": true,
|
|
||||||
"os": [
|
|
||||||
"openharmony"
|
|
||||||
],
|
|
||||||
"peer": true
|
|
||||||
},
|
|
||||||
"node_modules/@rollup/rollup-win32-arm64-msvc": {
|
|
||||||
"version": "4.58.0",
|
|
||||||
"resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.58.0.tgz",
|
|
||||||
"integrity": "sha512-YpG8dUOip7DCz3nr/JUfPbIUo+2d/dy++5bFzgi4ugOGBIox+qMbbqt/JoORwvI/C9Kn2tz6+Bieoqd5+B1CjA==",
|
|
||||||
"cpu": [
|
|
||||||
"arm64"
|
|
||||||
],
|
|
||||||
"dev": true,
|
|
||||||
"license": "MIT",
|
|
||||||
"optional": true,
|
|
||||||
"os": [
|
|
||||||
"win32"
|
|
||||||
],
|
|
||||||
"peer": true
|
|
||||||
},
|
|
||||||
"node_modules/@rollup/rollup-win32-ia32-msvc": {
|
|
||||||
"version": "4.58.0",
|
|
||||||
"resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.58.0.tgz",
|
|
||||||
"integrity": "sha512-b9DI8jpFQVh4hIXFr0/+N/TzLdpBIoPzjt0Rt4xJbW3mzguV3mduR9cNgiuFcuL/TeORejJhCWiAXe3E/6PxWA==",
|
|
||||||
"cpu": [
|
|
||||||
"ia32"
|
|
||||||
],
|
|
||||||
"dev": true,
|
|
||||||
"license": "MIT",
|
|
||||||
"optional": true,
|
|
||||||
"os": [
|
|
||||||
"win32"
|
|
||||||
],
|
|
||||||
"peer": true
|
|
||||||
},
|
|
||||||
"node_modules/@rollup/rollup-win32-x64-gnu": {
|
|
||||||
"version": "4.58.0",
|
|
||||||
"resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-gnu/-/rollup-win32-x64-gnu-4.58.0.tgz",
|
|
||||||
"integrity": "sha512-CSrVpmoRJFN06LL9xhkitkwUcTZtIotYAF5p6XOR2zW0Zz5mzb3IPpcoPhB02frzMHFNo1reQ9xSF5fFm3hUsQ==",
|
|
||||||
"cpu": [
|
|
||||||
"x64"
|
|
||||||
],
|
|
||||||
"dev": true,
|
|
||||||
"license": "MIT",
|
|
||||||
"optional": true,
|
|
||||||
"os": [
|
|
||||||
"win32"
|
|
||||||
],
|
|
||||||
"peer": true
|
|
||||||
},
|
|
||||||
"node_modules/@rollup/rollup-win32-x64-msvc": {
|
|
||||||
"version": "4.58.0",
|
|
||||||
"resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.58.0.tgz",
|
|
||||||
"integrity": "sha512-QFsBgQNTnh5K0t/sBsjJLq24YVqEIVkGpfN2VHsnN90soZyhaiA9UUHufcctVNL4ypJY0wrwad0wslx2KJQ1/w==",
|
|
||||||
"cpu": [
|
|
||||||
"x64"
|
|
||||||
],
|
|
||||||
"dev": true,
|
|
||||||
"license": "MIT",
|
|
||||||
"optional": true,
|
|
||||||
"os": [
|
|
||||||
"win32"
|
|
||||||
],
|
|
||||||
"peer": true
|
|
||||||
},
|
|
||||||
"node_modules/@sindresorhus/is": {
|
"node_modules/@sindresorhus/is": {
|
||||||
"version": "4.6.0",
|
"version": "4.6.0",
|
||||||
"resolved": "https://registry.npmjs.org/@sindresorhus/is/-/is-4.6.0.tgz",
|
"resolved": "https://registry.npmjs.org/@sindresorhus/is/-/is-4.6.0.tgz",
|
||||||
|
|
@ -11600,48 +11225,19 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/rollup": {
|
"node_modules/rollup": {
|
||||||
"version": "4.58.0",
|
"version": "2.80.0",
|
||||||
"resolved": "https://registry.npmjs.org/rollup/-/rollup-4.58.0.tgz",
|
"resolved": "https://registry.npmjs.org/rollup/-/rollup-2.80.0.tgz",
|
||||||
"integrity": "sha512-wbT0mBmWbIvvq8NeEYWWvevvxnOyhKChir47S66WCxw1SXqhw7ssIYejnQEVt7XYQpsj2y8F9PM+Cr3SNEa0gw==",
|
"integrity": "sha512-cIFJOD1DESzpjOBl763Kp1AH7UE/0fcdHe6rZXUdQ9c50uvgigvW97u3IcSeBwOkgqL/PXPBktBCh0KEu5L8XQ==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
"peer": true,
|
"peer": true,
|
||||||
"dependencies": {
|
|
||||||
"@types/estree": "1.0.8"
|
|
||||||
},
|
|
||||||
"bin": {
|
"bin": {
|
||||||
"rollup": "dist/bin/rollup"
|
"rollup": "dist/bin/rollup"
|
||||||
},
|
},
|
||||||
"engines": {
|
"engines": {
|
||||||
"node": ">=18.0.0",
|
"node": ">=10.0.0"
|
||||||
"npm": ">=8.0.0"
|
|
||||||
},
|
},
|
||||||
"optionalDependencies": {
|
"optionalDependencies": {
|
||||||
"@rollup/rollup-android-arm-eabi": "4.58.0",
|
|
||||||
"@rollup/rollup-android-arm64": "4.58.0",
|
|
||||||
"@rollup/rollup-darwin-arm64": "4.58.0",
|
|
||||||
"@rollup/rollup-darwin-x64": "4.58.0",
|
|
||||||
"@rollup/rollup-freebsd-arm64": "4.58.0",
|
|
||||||
"@rollup/rollup-freebsd-x64": "4.58.0",
|
|
||||||
"@rollup/rollup-linux-arm-gnueabihf": "4.58.0",
|
|
||||||
"@rollup/rollup-linux-arm-musleabihf": "4.58.0",
|
|
||||||
"@rollup/rollup-linux-arm64-gnu": "4.58.0",
|
|
||||||
"@rollup/rollup-linux-arm64-musl": "4.58.0",
|
|
||||||
"@rollup/rollup-linux-loong64-gnu": "4.58.0",
|
|
||||||
"@rollup/rollup-linux-loong64-musl": "4.58.0",
|
|
||||||
"@rollup/rollup-linux-ppc64-gnu": "4.58.0",
|
|
||||||
"@rollup/rollup-linux-ppc64-musl": "4.58.0",
|
|
||||||
"@rollup/rollup-linux-riscv64-gnu": "4.58.0",
|
|
||||||
"@rollup/rollup-linux-riscv64-musl": "4.58.0",
|
|
||||||
"@rollup/rollup-linux-s390x-gnu": "4.58.0",
|
|
||||||
"@rollup/rollup-linux-x64-gnu": "4.58.0",
|
|
||||||
"@rollup/rollup-linux-x64-musl": "4.58.0",
|
|
||||||
"@rollup/rollup-openbsd-x64": "4.58.0",
|
|
||||||
"@rollup/rollup-openharmony-arm64": "4.58.0",
|
|
||||||
"@rollup/rollup-win32-arm64-msvc": "4.58.0",
|
|
||||||
"@rollup/rollup-win32-ia32-msvc": "4.58.0",
|
|
||||||
"@rollup/rollup-win32-x64-gnu": "4.58.0",
|
|
||||||
"@rollup/rollup-win32-x64-msvc": "4.58.0",
|
|
||||||
"fsevents": "~2.3.2"
|
"fsevents": "~2.3.2"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
|
||||||
|
|
@ -196,6 +196,7 @@ export const getTableFonts = createAsyncThunk(
|
||||||
|
|
||||||
export const getTemplate = createAsyncThunk(
|
export const getTemplate = createAsyncThunk(
|
||||||
'theme/getTemplate',
|
'theme/getTemplate',
|
||||||
|
|
||||||
async ({ CompId, BranchId, AppId }) => {
|
async ({ CompId, BranchId, AppId }) => {
|
||||||
if (
|
if (
|
||||||
CompId != null &&
|
CompId != null &&
|
||||||
|
|
|
||||||
|
|
@ -62,6 +62,7 @@ const BookingPage = () => {
|
||||||
const templateLoadedRef = useRef(
|
const templateLoadedRef = useRef(
|
||||||
Object.keys(templateData)?.length > 0 ? true : false
|
Object.keys(templateData)?.length > 0 ? true : false
|
||||||
);
|
);
|
||||||
|
console.log(templateData, 'templateDatatemplateData');
|
||||||
const PricingAppPricingName = useSelector(
|
const PricingAppPricingName = useSelector(
|
||||||
GlobalPricingAppPricingName,
|
GlobalPricingAppPricingName,
|
||||||
shallowEqual
|
shallowEqual
|
||||||
|
|
@ -402,7 +403,7 @@ const BookingPage = () => {
|
||||||
!templateResponse?.data?.data ||
|
!templateResponse?.data?.data ||
|
||||||
templateResponse.data.data.length === 0
|
templateResponse.data.data.length === 0
|
||||||
) {
|
) {
|
||||||
//Professional(Plan);
|
Professional(Plan);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
// Check if template data is empty or not
|
// Check if template data is empty or not
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
import React, { useState, useEffect } from 'react';
|
import React, { useState, useEffect, lazy, Suspense } from 'react';
|
||||||
import { useDispatch, useSelector } from 'react-redux';
|
import { useDispatch, useSelector } from 'react-redux';
|
||||||
import { Popconfirm, Tooltip } from 'antd';
|
import { Popconfirm, Tooltip } from 'antd';
|
||||||
import { AiOutlineClose, AiFillDelete } from 'react-icons/ai';
|
import { AiOutlineClose, AiFillDelete } from 'react-icons/ai';
|
||||||
|
|
@ -281,22 +281,6 @@ const BSBillingTable1 = () => {
|
||||||
handleEditQuantity(item);
|
handleEditQuantity(item);
|
||||||
setshortKeyMethod(method);
|
setshortKeyMethod(method);
|
||||||
};
|
};
|
||||||
|
|
||||||
// const handleKeyDown = (event) => {
|
|
||||||
// if (!event.ctrlKey) return;
|
|
||||||
|
|
||||||
// const key = event.key.toLowerCase();
|
|
||||||
|
|
||||||
// if (key === 'q') {
|
|
||||||
// event.preventDefault();
|
|
||||||
// handleShortcut('qty');
|
|
||||||
// }
|
|
||||||
|
|
||||||
// if (key === 'e') {
|
|
||||||
// event.preventDefault();
|
|
||||||
// handleShortcut('price');
|
|
||||||
// }
|
|
||||||
// };
|
|
||||||
const handleKeyDown = (event) => {
|
const handleKeyDown = (event) => {
|
||||||
const key = event.key.toLowerCase();
|
const key = event.key.toLowerCase();
|
||||||
// 👉 ALT + P → Open Edit Total Amount
|
// 👉 ALT + P → Open Edit Total Amount
|
||||||
|
|
|
||||||
File diff suppressed because it is too large
Load Diff
|
|
@ -1,4 +1,4 @@
|
||||||
import React, { Suspense, useEffect, useState } from 'react';
|
import React, { Suspense, useEffect, useState,lazy } from 'react';
|
||||||
import { useSelector, useDispatch } from 'react-redux';
|
import { useSelector, useDispatch } from 'react-redux';
|
||||||
import { Popconfirm, Tooltip } from 'antd';
|
import { Popconfirm, Tooltip } from 'antd';
|
||||||
import '../../../../../Styles/BookingScreen/Components/BSBillingTables/BSBillingTable6/BSBillingTable6.scss';
|
import '../../../../../Styles/BookingScreen/Components/BSBillingTables/BSBillingTable6/BSBillingTable6.scss';
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
import React, { useEffect, useState, useRef, lazy } from 'react';
|
import React, { useEffect, useState, useRef, lazy ,Suspense } from 'react';
|
||||||
import { shallowEqual, useDispatch, useSelector } from 'react-redux';
|
import { shallowEqual, useDispatch, useSelector } from 'react-redux';
|
||||||
import { useNavigate } from 'react-router-dom';
|
import { useNavigate } from 'react-router-dom';
|
||||||
import moment from 'moment';
|
import moment from 'moment';
|
||||||
|
|
@ -171,7 +171,7 @@ import { getCustomerDisplayWindow } from '../../../../../Features/customerDispla
|
||||||
import { getEmpAccess } from '../../../../../Features/AppPage/CenterPage.js';
|
import { getEmpAccess } from '../../../../../Features/AppPage/CenterPage.js';
|
||||||
import PozoSplitPaymentIcon from '../../UtillComponents/Pozo retail icons/PozoSplitPaymentIcon.jsx';
|
import PozoSplitPaymentIcon from '../../UtillComponents/Pozo retail icons/PozoSplitPaymentIcon.jsx';
|
||||||
import PozoCartIcon from '../../../../../Pages/BookingScreen/Components/UtillComponents/PozoCartIcon.jsx';
|
import PozoCartIcon from '../../../../../Pages/BookingScreen/Components/UtillComponents/PozoCartIcon.jsx';
|
||||||
import { Global_OverallOfferAmount } from '../../../../../Features/Offer/Offer.js';
|
import { Global_OrderOfferDetail, Global_OverallOfferAmount } from '../../../../../Features/Offer/Offer.js';
|
||||||
import { useApplyOfferto_CardDetail } from '../../UtillComponents/BSNavBarOffer/BSNavBarOffer_CustomHooks.jsx';
|
import { useApplyOfferto_CardDetail } from '../../UtillComponents/BSNavBarOffer/BSNavBarOffer_CustomHooks.jsx';
|
||||||
import TooltipWrapper from '../../../../../Components/Tooltip/Tooltip';
|
import TooltipWrapper from '../../../../../Components/Tooltip/Tooltip';
|
||||||
import { useAuth } from '../../../../../AuthContext.jsx';
|
import { useAuth } from '../../../../../AuthContext.jsx';
|
||||||
|
|
@ -301,9 +301,6 @@ const BST6Payment = () => {
|
||||||
const prodCat = useSelector(GlobalProductCategorie);
|
const prodCat = useSelector(GlobalProductCategorie);
|
||||||
const ProdSubCat = useSelector(GlobalProductSubCategorie);
|
const ProdSubCat = useSelector(GlobalProductSubCategorie);
|
||||||
const templateData = useSelector(getTemplateData);
|
const templateData = useSelector(getTemplateData);
|
||||||
const holdCheckedSalesSetup = tableOptions?.some(
|
|
||||||
(item) => item?.OptionName === 'Hold'
|
|
||||||
);
|
|
||||||
const tableOptions = templateData?.BookingBilling?.[1];
|
const tableOptions = templateData?.BookingBilling?.[1];
|
||||||
const OfferCheckedInSetup = templateData?.BookingNavbar?.[1].some(
|
const OfferCheckedInSetup = templateData?.BookingNavbar?.[1].some(
|
||||||
(item) => item?.OptionName == 'Offer'
|
(item) => item?.OptionName == 'Offer'
|
||||||
|
|
@ -471,6 +468,10 @@ const BST6Payment = () => {
|
||||||
// for customised invoice number
|
// for customised invoice number
|
||||||
const { invoiceDate, clearInvoiceDate } = useDateStore();
|
const { invoiceDate, clearInvoiceDate } = useDateStore();
|
||||||
const CurrentOrderId = useSelector(GlobalCurrentOrderId);
|
const CurrentOrderId = useSelector(GlobalCurrentOrderId);
|
||||||
|
const holdCheckedSalesSetup = tableOptions?.some(
|
||||||
|
(item) => item?.OptionName === 'Hold'
|
||||||
|
);
|
||||||
|
|
||||||
useEffect(() => {
|
useEffect(() => {
|
||||||
if (
|
if (
|
||||||
OrderCardDetail?.length === 1 &&
|
OrderCardDetail?.length === 1 &&
|
||||||
|
|
|
||||||
|
|
@ -268,9 +268,6 @@ const BSBilling7Payment = () => {
|
||||||
const templateData = useSelector(getTemplateData);
|
const templateData = useSelector(getTemplateData);
|
||||||
const appPreferences = useSelector(ApplicationPreferences);
|
const appPreferences = useSelector(ApplicationPreferences);
|
||||||
const Combodata = useSelector(GlobalCombocarddata, shallowEqual);
|
const Combodata = useSelector(GlobalCombocarddata, shallowEqual);
|
||||||
const holdCheckedSalesSetup = tableOptions?.some(
|
|
||||||
(item) => item?.OptionName === 'Hold'
|
|
||||||
);
|
|
||||||
const bookingTypePreference = appPreferences?.find(
|
const bookingTypePreference = appPreferences?.find(
|
||||||
(preference) => preference?.PreferredCatName === 'Booking Type'
|
(preference) => preference?.PreferredCatName === 'Booking Type'
|
||||||
)?.PreferenceCatDetails;
|
)?.PreferenceCatDetails;
|
||||||
|
|
@ -474,6 +471,10 @@ const BSBilling7Payment = () => {
|
||||||
// for customised invoice number
|
// for customised invoice number
|
||||||
const { invoiceDate, clearInvoiceDate } = useDateStore();
|
const { invoiceDate, clearInvoiceDate } = useDateStore();
|
||||||
const CurrentOrderId = useSelector(GlobalCurrentOrderId);
|
const CurrentOrderId = useSelector(GlobalCurrentOrderId);
|
||||||
|
const holdCheckedSalesSetup = tableOptions?.some(
|
||||||
|
(item) => item?.OptionName === 'Hold'
|
||||||
|
);
|
||||||
|
|
||||||
const filteredSettingNames = SettingDataSelector?.[0]?.['SettingDtlDetails']
|
const filteredSettingNames = SettingDataSelector?.[0]?.['SettingDtlDetails']
|
||||||
?.filter(
|
?.filter(
|
||||||
(item) =>
|
(item) =>
|
||||||
|
|
|
||||||
|
|
@ -97,7 +97,6 @@ import { useUtilsComponent } from '../../../../../Services/utils.js';
|
||||||
const StandardTable = () => {
|
const StandardTable = () => {
|
||||||
const { removeExtraCharge } = useUtilsComponent();
|
const { removeExtraCharge } = useUtilsComponent();
|
||||||
const dispatch = useDispatch();
|
const dispatch = useDispatch();
|
||||||
const applyOffer = useApplyOfferto_CardDetail();
|
|
||||||
const preferenceDatas = useSelector(PreferenceData);
|
const preferenceDatas = useSelector(PreferenceData);
|
||||||
const preferenceDetails = preferenceDatas?.[0]?.SettingDtlDetails;
|
const preferenceDetails = preferenceDatas?.[0]?.SettingDtlDetails;
|
||||||
const preferenceOffer =
|
const preferenceOffer =
|
||||||
|
|
@ -405,11 +404,9 @@ const StandardTable = () => {
|
||||||
const Clearall = async () => {
|
const Clearall = async () => {
|
||||||
if (OrderType === 'Hold') {
|
if (OrderType === 'Hold') {
|
||||||
AvailableDate && UnblockSlotsAll(OrderCardDetail);
|
AvailableDate && UnblockSlotsAll(OrderCardDetail);
|
||||||
if (OfferCheckedInSetup && preferenceOffer) {
|
|
||||||
await applyOffer([]);
|
dispatch(changeOrderCardDetails([]));
|
||||||
} else {
|
|
||||||
dispatch(changeOrderCardDetails([]));
|
|
||||||
}
|
|
||||||
if (salesBillEdit) {
|
if (salesBillEdit) {
|
||||||
getstockbadge();
|
getstockbadge();
|
||||||
dispatch(changeBillEditingMode(false));
|
dispatch(changeBillEditingMode(false));
|
||||||
|
|
@ -445,19 +442,12 @@ const StandardTable = () => {
|
||||||
);
|
);
|
||||||
AvailableDate && UnblockSlotsAll(UnOrderData);
|
AvailableDate && UnblockSlotsAll(UnOrderData);
|
||||||
|
|
||||||
if (OfferCheckedInSetup && preferenceOffer) {
|
dispatch(changeOrderCardDetails(UpdatedData));
|
||||||
await applyOffer(UpdatedData);
|
|
||||||
} else {
|
|
||||||
dispatch(changeOrderCardDetails(UpdatedData));
|
|
||||||
}
|
|
||||||
await dispatch(changeBookingType('Dine In'));
|
await dispatch(changeBookingType('Dine In'));
|
||||||
} else {
|
} else {
|
||||||
AvailableDate && UnblockSlotsAll(OrderCardDetail);
|
AvailableDate && UnblockSlotsAll(OrderCardDetail);
|
||||||
if (OfferCheckedInSetup && preferenceOffer) {
|
dispatch(changeOrderCardDetails([]));
|
||||||
await applyOffer([]);
|
|
||||||
} else {
|
|
||||||
dispatch(changeOrderCardDetails([]));
|
|
||||||
}
|
|
||||||
await dispatch(ChangeTotalAmount([]));
|
await dispatch(ChangeTotalAmount([]));
|
||||||
await dispatch(changeUnpaidData(false));
|
await dispatch(changeUnpaidData(false));
|
||||||
await dispatch(changeReorderHoldDetails({}));
|
await dispatch(changeReorderHoldDetails({}));
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,12 @@
|
||||||
import React, { lazy, Suspense, useEffect, useRef, useState } from 'react';
|
import React, {
|
||||||
|
lazy,
|
||||||
|
Suspense,
|
||||||
|
useCallback,
|
||||||
|
useEffect,
|
||||||
|
useRef,
|
||||||
|
useState,
|
||||||
|
useMemo,
|
||||||
|
} from 'react';
|
||||||
import { useDispatch, useSelector } from 'react-redux';
|
import { useDispatch, useSelector } from 'react-redux';
|
||||||
import { useNavigate } from 'react-router-dom';
|
import { useNavigate } from 'react-router-dom';
|
||||||
import { TiLocation } from 'react-icons/ti';
|
import { TiLocation } from 'react-icons/ti';
|
||||||
|
|
@ -17,10 +25,13 @@ import {
|
||||||
getBranchDetail,
|
getBranchDetail,
|
||||||
getCompBranchData,
|
getCompBranchData,
|
||||||
} from '../../../../Features/BrachLogin/BranchLogin.js';
|
} from '../../../../Features/BrachLogin/BranchLogin.js';
|
||||||
import { clearSession, sessionStore } from '../../../../Services/Others';
|
import {
|
||||||
|
clearSession,
|
||||||
|
getSession,
|
||||||
|
sessionStore,
|
||||||
|
} from '../../../../Services/Others';
|
||||||
import PozoHomeIcon from '../UtillComponents/Pozo retail icons/PozoHomeIcon.jsx';
|
import PozoHomeIcon from '../UtillComponents/Pozo retail icons/PozoHomeIcon.jsx';
|
||||||
import { GlobalCompBranchData } from '../../../../Features/BrachLogin/BranchLogin.js';
|
import { GlobalCompBranchData } from '../../../../Features/BrachLogin/BranchLogin.js';
|
||||||
import BSPrinterSetting from '../UtillComponents/BSPrinterSetting.jsx';
|
|
||||||
import { isMobile } from 'react-device-detect';
|
import { isMobile } from 'react-device-detect';
|
||||||
import { FaDisplay } from 'react-icons/fa6';
|
import { FaDisplay } from 'react-icons/fa6';
|
||||||
import {
|
import {
|
||||||
|
|
@ -48,94 +59,109 @@ const BSPrinterSetting = lazy(
|
||||||
);
|
);
|
||||||
const subDirectory = import.meta.env.ENV_BASE_URL;
|
const subDirectory = import.meta.env.ENV_BASE_URL;
|
||||||
const commonUrl = import.meta.env.ENV_COMMON_BASE_URL;
|
const commonUrl = import.meta.env.ENV_COMMON_BASE_URL;
|
||||||
const BSC1NavBar = (props) => {
|
const MemoTiLocation = React.memo(() => (
|
||||||
|
<TiLocation className="BSC1NavBar-location-icon" />
|
||||||
|
));
|
||||||
|
const BSC1NavBar = () => {
|
||||||
const divRef = useRef(null);
|
const divRef = useRef(null);
|
||||||
|
|
||||||
const navigate = useNavigate();
|
const navigate = useNavigate();
|
||||||
const dispatch = useDispatch();
|
const dispatch = useDispatch();
|
||||||
const AppId = props?.SessionData?.AppId;
|
const AppId = getSession('AppId');
|
||||||
const CompId = props?.SessionData?.CompId;
|
const CompId = getSession('CompId');
|
||||||
const BranchId = props?.SessionData?.BranchId;
|
const BranchId = getSession('BranchId');
|
||||||
const UserId = props?.SessionData?.UserId;
|
const UserId = getSession('UserId');
|
||||||
const UserType = props?.SessionData?.UserType;
|
const UserType = getSession('UserType');
|
||||||
const [formattedDate, setFormattedDate] = useState('');
|
|
||||||
const [isAccOpen, setAccIsOpen] = useState(false);
|
const [isAccOpen, setAccIsOpen] = useState(false);
|
||||||
const [menu, setMenu] = useState(false);
|
const [menu, setMenu] = useState(false);
|
||||||
const [branchName, setBranchName] = useState('Guest');
|
const [branchData, setBranchData] = useState({
|
||||||
const [BranchCity, setBranchCity] = useState();
|
branchName: 'Guest',
|
||||||
const CompBranchData = useSelector(GlobalCompBranchData);
|
city: '',
|
||||||
|
});
|
||||||
|
|
||||||
const FeatureAddonData = useSelector(GlobalFeatAddOnData);
|
const FeatureAddonData = useSelector(GlobalFeatAddOnData);
|
||||||
const preferenceDatas = useSelector(PreferenceData);
|
const preferenceDatas = useSelector(PreferenceData);
|
||||||
const [isFullscreen, setIsFullscreen] = useState(false);
|
const [isFullscreen, setIsFullscreen] = useState(false);
|
||||||
|
|
||||||
// const [FeatureAddonData, setFeatureAddonData] = useState([]);
|
// const [FeatureAddonData, setFeatureAddonData] = useState([]);
|
||||||
const userProfileData = useSelector(userDataByUserId);
|
const userProfileData = useSelector(userDataByUserId);
|
||||||
console.log('userProfileData', userProfileData);
|
|
||||||
const handleHome = () => {
|
|
||||||
navigate(`${subDirectory}app-page/home`);
|
|
||||||
};
|
|
||||||
|
|
||||||
const ScanLayoutScreen = preferenceDatas?.[0]?.SettingDtlDetails?.find(
|
const handleHome = useCallback(() => {
|
||||||
(item) => item.SettingIdName === 'ScanLayout'
|
navigate(`${subDirectory}app-page/home`);
|
||||||
|
}, []);
|
||||||
|
|
||||||
|
const ScanLayoutScreen = useMemo(
|
||||||
|
() =>
|
||||||
|
preferenceDatas?.[0]?.SettingDtlDetails?.find(
|
||||||
|
(item) => item.SettingIdName === 'ScanLayout'
|
||||||
|
),
|
||||||
|
[preferenceDatas]
|
||||||
);
|
);
|
||||||
|
|
||||||
useEffect(() => {
|
useEffect(() => {
|
||||||
const d = new Date();
|
console.log(
|
||||||
const options = { weekday: 'short', day: '2-digit', month: 'long' };
|
'ScanLayoutScreen?.SettingValue:',
|
||||||
const formatted = d.toLocaleDateString('en-GB', options);
|
ScanLayoutScreen?.SettingValue
|
||||||
setFormattedDate(formatted);
|
);
|
||||||
|
}, [ScanLayoutScreen?.SettingValue]);
|
||||||
|
|
||||||
|
useEffect(() => {
|
||||||
fetchBranchDetailData();
|
fetchBranchDetailData();
|
||||||
fetchBranchData();
|
fetchBranchData();
|
||||||
// if (UserType !== 'Super Admin' && UserType !== 'Super Admin User') {
|
}, [BranchId, UserType]);
|
||||||
// getFeatureAddonData();
|
const fetchBranchDetailData = useCallback(async () => {
|
||||||
// }
|
try {
|
||||||
}, []);
|
const response = await dispatch(
|
||||||
const fetchBranchDetailData = async () => {
|
getBranchDetail({ BrId: BranchId })
|
||||||
const response = await dispatch(
|
|
||||||
getBranchDetail({ BrId: BranchId })
|
|
||||||
).unwrap();
|
|
||||||
if (response?.data?.statusCode === 1) {
|
|
||||||
setBranchName(response?.data?.data?.[0]?.BrName);
|
|
||||||
setBranchCity(response?.data?.data?.[0]?.City);
|
|
||||||
}
|
|
||||||
};
|
|
||||||
const fetchBranchData = async () => {
|
|
||||||
if (UserType === 'Super Admin' || UserType === 'Super Admin User') {
|
|
||||||
await dispatch(
|
|
||||||
getCompBranchData({ CompId: CompId, AppId: AppId })
|
|
||||||
).unwrap();
|
|
||||||
} else if (UserType === 'Admin' || UserType === 'Admin User') {
|
|
||||||
await dispatch(
|
|
||||||
getCompBranchData({ AppId: AppId, UserId: UserId, CompId: CompId })
|
|
||||||
).unwrap();
|
).unwrap();
|
||||||
|
if (response?.data?.statusCode === 1) {
|
||||||
|
setBranchData({
|
||||||
|
branchName: response?.data?.data?.[0]?.BrName,
|
||||||
|
city: response?.data?.data?.[0]?.City,
|
||||||
|
});
|
||||||
|
}
|
||||||
|
} catch (error) {
|
||||||
|
console.error('Failed to fetch branch details:', error);
|
||||||
}
|
}
|
||||||
};
|
}, [BranchId]);
|
||||||
|
|
||||||
const UserAcc = () => {
|
const fetchBranchData = useCallback(async () => {
|
||||||
|
try {
|
||||||
|
if (UserType === 'Super Admin' || UserType === 'Super Admin User') {
|
||||||
|
await dispatch(
|
||||||
|
getCompBranchData({ CompId: CompId, AppId: AppId })
|
||||||
|
).unwrap();
|
||||||
|
} else if (UserType === 'Admin' || UserType === 'Admin User') {
|
||||||
|
await dispatch(
|
||||||
|
getCompBranchData({ AppId: AppId, UserId: UserId, CompId: CompId })
|
||||||
|
).unwrap();
|
||||||
|
}
|
||||||
|
} catch (error) {
|
||||||
|
console.error('Failed to fetch branch data:', error);
|
||||||
|
}
|
||||||
|
}, [UserType, CompId, AppId, UserId]);
|
||||||
|
|
||||||
|
const UserAcc = useCallback(() => {
|
||||||
setAccIsOpen(!isAccOpen);
|
setAccIsOpen(!isAccOpen);
|
||||||
};
|
}, [isAccOpen]);
|
||||||
const BacktoLogin = () => {
|
|
||||||
|
const BacktoLogin = useCallback(() => {
|
||||||
clearSession('BranchId');
|
clearSession('BranchId');
|
||||||
navigate(`${subDirectory}app-page/branch-login`);
|
navigate(`${subDirectory}app-page/branch-login`);
|
||||||
};
|
}, []);
|
||||||
|
|
||||||
// const Logout = () =>{
|
const Logout = useCallback(async () => {
|
||||||
// closeCustomerDisplayWindow()
|
const status = 'N';
|
||||||
// clearSession()
|
|
||||||
// window.location.replace(commonUrl);
|
|
||||||
|
|
||||||
// }
|
|
||||||
//mohan
|
|
||||||
const Logout = async () => {
|
|
||||||
const status = 'N'; // replace with your actual status
|
|
||||||
const res = await dispatch(GenerateLogout({ UserId, status })).unwrap();
|
const res = await dispatch(GenerateLogout({ UserId, status })).unwrap();
|
||||||
if (res?.data?.statusCode === 1) {
|
if (res?.data?.statusCode === 1) {
|
||||||
clearSession();
|
clearSession();
|
||||||
await sessionStore('Mode', 'Logout');
|
await sessionStore('Mode', 'Logout');
|
||||||
window.location.replace(commonUrl);
|
window.location.replace(commonUrl);
|
||||||
}
|
}
|
||||||
};
|
}, [UserId, dispatch]);
|
||||||
const openNewTab = async () => {
|
|
||||||
|
const openNewTab = useCallback(async () => {
|
||||||
const initialData = { Paymentgateway: false };
|
const initialData = { Paymentgateway: false };
|
||||||
let screenDetails;
|
let screenDetails;
|
||||||
|
|
||||||
|
|
@ -147,7 +173,6 @@ const BSC1NavBar = (props) => {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// Select second monitor if available, otherwise use primary screen
|
|
||||||
const secondScreen = screenDetails?.screens.find(
|
const secondScreen = screenDetails?.screens.find(
|
||||||
(screen) => screen !== screenDetails.currentScreen
|
(screen) => screen !== screenDetails.currentScreen
|
||||||
);
|
);
|
||||||
|
|
@ -161,10 +186,8 @@ const BSC1NavBar = (props) => {
|
||||||
|
|
||||||
if (customerDisplayWindow && !customerDisplayWindow.closed) {
|
if (customerDisplayWindow && !customerDisplayWindow.closed) {
|
||||||
setCustomerDisplayWindow(customerDisplayWindow);
|
setCustomerDisplayWindow(customerDisplayWindow);
|
||||||
|
|
||||||
customerDisplayWindow.onload = () => {
|
customerDisplayWindow.onload = () => {
|
||||||
setTimeout(() => {
|
setTimeout(() => {
|
||||||
// Ensure it moves & resizes correctly
|
|
||||||
customerDisplayWindow.moveTo(
|
customerDisplayWindow.moveTo(
|
||||||
targetScreen.left || 0,
|
targetScreen.left || 0,
|
||||||
targetScreen.top || 0
|
targetScreen.top || 0
|
||||||
|
|
@ -173,26 +196,24 @@ const BSC1NavBar = (props) => {
|
||||||
targetScreen.width,
|
targetScreen.width,
|
||||||
targetScreen.height
|
targetScreen.height
|
||||||
);
|
);
|
||||||
|
|
||||||
// Try fullscreen (Needs user interaction)
|
|
||||||
try {
|
try {
|
||||||
customerDisplayWindow.document.documentElement.requestFullscreen();
|
customerDisplayWindow.document.documentElement.requestFullscreen();
|
||||||
} catch (err) {
|
} catch (err) {
|
||||||
console.warn('Fullscreen request failed:', err);
|
console.warn('Fullscreen request failed:', err);
|
||||||
}
|
}
|
||||||
|
|
||||||
// Send initial data
|
|
||||||
customerDisplayWindow.postMessage(initialData, '*');
|
customerDisplayWindow.postMessage(initialData, '*');
|
||||||
}, 500);
|
}, 500);
|
||||||
};
|
};
|
||||||
} else {
|
} else {
|
||||||
console.error('Customer display window failed to open.');
|
console.error('Customer display window failed to open.');
|
||||||
}
|
}
|
||||||
};
|
}, [subDirectory]);
|
||||||
const handleEditProfile = async () => {
|
|
||||||
|
const handleEditProfile = useCallback(async () => {
|
||||||
navigate(`${subDirectory}app-page/redirect-userprofile`);
|
navigate(`${subDirectory}app-page/redirect-userprofile`);
|
||||||
};
|
}, [subDirectory]);
|
||||||
const handleFullscreen = async () => {
|
|
||||||
|
const handleFullscreen = useCallback(async () => {
|
||||||
if (!isFullscreen) {
|
if (!isFullscreen) {
|
||||||
try {
|
try {
|
||||||
await document.documentElement.requestFullscreen();
|
await document.documentElement.requestFullscreen();
|
||||||
|
|
@ -210,8 +231,7 @@ const BSC1NavBar = (props) => {
|
||||||
console.error('Exit fullscreen error:', error);
|
console.error('Exit fullscreen error:', error);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
};
|
}, [isFullscreen]);
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<Suspense fallback={<div>Loading...</div>}>
|
<Suspense fallback={<div>Loading...</div>}>
|
||||||
<>
|
<>
|
||||||
|
|
@ -279,17 +299,17 @@ const BSC1NavBar = (props) => {
|
||||||
|
|
||||||
<div className="BSC1NavBar-name">
|
<div className="BSC1NavBar-name">
|
||||||
{/* <PiStorefrontFill className="BSC1NavBar-name-icon" /> */}
|
{/* <PiStorefrontFill className="BSC1NavBar-name-icon" /> */}
|
||||||
<TooltipWrapper placement="bottom" title={branchName}>
|
<TooltipWrapper placement="bottom" title={branchData.branchName}>
|
||||||
<span className="BSC1NavBar-ellipsisname">
|
<span className="BSC1NavBar-ellipsisname">
|
||||||
{branchName}
|
{branchData.branchName}
|
||||||
</span>{' '}
|
</span>{' '}
|
||||||
</TooltipWrapper>
|
</TooltipWrapper>
|
||||||
{BranchCity && (
|
{branchData.city && (
|
||||||
<span className="BSC1NavBar-location">
|
<span className="BSC1NavBar-location">
|
||||||
{' '}
|
{' '}
|
||||||
<TiLocation className="BSC1NavBar-location-icon" />
|
<MemoTiLocation />
|
||||||
<span className="BSC1NavBar-name-ellipsis">
|
<span className="BSC1NavBar-name-ellipsis">
|
||||||
{BranchCity}
|
{branchData.city}
|
||||||
</span>{' '}
|
</span>{' '}
|
||||||
</span>
|
</span>
|
||||||
)}
|
)}
|
||||||
|
|
@ -362,7 +382,6 @@ const BSC1NavBar = (props) => {
|
||||||
<BSNavBarUserInfo
|
<BSNavBarUserInfo
|
||||||
isOpen={isAccOpen}
|
isOpen={isAccOpen}
|
||||||
divRef={divRef}
|
divRef={divRef}
|
||||||
CompBranchData={CompBranchData}
|
|
||||||
BacktoLogin={BacktoLogin}
|
BacktoLogin={BacktoLogin}
|
||||||
userProfileData={userProfileData}
|
userProfileData={userProfileData}
|
||||||
handleEditProfile={handleEditProfile}
|
handleEditProfile={handleEditProfile}
|
||||||
|
|
|
||||||
|
|
@ -65,13 +65,11 @@ const FeaturesFunctionalities = lazy(
|
||||||
() => import('../BookingFunctionality/FeaturesFunctionalities')
|
() => import('../BookingFunctionality/FeaturesFunctionalities')
|
||||||
);
|
);
|
||||||
import { isMobile } from 'react-device-detect';
|
import { isMobile } from 'react-device-detect';
|
||||||
import BarcodeScanner from '../UtillComponents/BarcodeScanner.jsx';
|
|
||||||
import {
|
import {
|
||||||
getTemplateData,
|
getTemplateData,
|
||||||
StoredSessionData,
|
StoredSessionData,
|
||||||
} from '../../../../Features/ThemeChange/ThemeChange.js';
|
} from '../../../../Features/ThemeChange/ThemeChange.js';
|
||||||
import { v4 as uuidv4 } from 'uuid';
|
import { v4 as uuidv4 } from 'uuid';
|
||||||
import BSNavBarWeightScale from '../UtillComponents/BSNavBarWeightScale.jsx';
|
|
||||||
import {
|
import {
|
||||||
changeFreeProductForLoyalty,
|
changeFreeProductForLoyalty,
|
||||||
ChangeFreeProductList,
|
ChangeFreeProductList,
|
||||||
|
|
@ -4859,25 +4857,6 @@ export default function BSC1Search(props) {
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</DefaultModal>
|
</DefaultModal>
|
||||||
{/* {isMobile && screenWidth <= 768 && (
|
|
||||||
<DefaultModal
|
|
||||||
title="Barcode Reader"
|
|
||||||
width={800}
|
|
||||||
open={openScanner}
|
|
||||||
footer={false}
|
|
||||||
handleCancel={handleQrData} // Close modal on cancel
|
|
||||||
>
|
|
||||||
{openScanner && (
|
|
||||||
<BarcodeScanner
|
|
||||||
ref={scannerRef}
|
|
||||||
openScanner={openScanner}
|
|
||||||
setOpenScanner={setOpenScanner}
|
|
||||||
handleQrData={handleQrData}
|
|
||||||
type="Search"
|
|
||||||
/>
|
|
||||||
)}
|
|
||||||
</DefaultModal>
|
|
||||||
)} */}
|
|
||||||
</>
|
</>
|
||||||
</Suspense>
|
</Suspense>
|
||||||
);
|
);
|
||||||
|
|
|
||||||
|
|
@ -11,7 +11,7 @@ import { useSelector } from 'react-redux';
|
||||||
import { useNavigate } from 'react-router-dom';
|
import { useNavigate } from 'react-router-dom';
|
||||||
const UserRelieveManager = lazy(() => import('../../Template/RealivingUser'));
|
const UserRelieveManager = lazy(() => import('../../Template/RealivingUser'));
|
||||||
// Scss
|
// Scss
|
||||||
import "../../../../Styles/BookingScreen/Components/BSNavbar/BSNavbar1.scss"
|
import '../../../../Styles/BookingScreen/Components/BSNavbar/BSNavbar1.scss';
|
||||||
const subDirectory = import.meta.env.ENV_BASE_URL;
|
const subDirectory = import.meta.env.ENV_BASE_URL;
|
||||||
|
|
||||||
const BSNavBarUserInfo = ({
|
const BSNavBarUserInfo = ({
|
||||||
|
|
|
||||||
|
|
@ -1,92 +1,83 @@
|
||||||
import { BsUpcScan } from "react-icons/bs";
|
import { BsUpcScan } from 'react-icons/bs';
|
||||||
import { FiLayout } from "react-icons/fi";
|
import { FiLayout } from 'react-icons/fi';
|
||||||
import {
|
import {
|
||||||
changeScanTemplate, changetemplateData, getTemplate,
|
changeScanTemplate,
|
||||||
|
changetemplateData,
|
||||||
|
getTemplate,
|
||||||
getTemplateData,
|
getTemplateData,
|
||||||
GlobalCustThemeData,
|
GlobalCustThemeData,
|
||||||
GlobalPricingAppPricingName,
|
GlobalPricingAppPricingName,
|
||||||
GlobalScanTemplate,
|
GlobalScanTemplate,
|
||||||
StoredSessionData
|
StoredSessionData,
|
||||||
} from "../../../../Features/ThemeChange/ThemeChange";
|
} from '../../../../Features/ThemeChange/ThemeChange';
|
||||||
import { useSelector, useDispatch } from "react-redux";
|
import { useSelector, useDispatch } from 'react-redux';
|
||||||
import { GlobalFeatAddOnData } from "../../../../Features/BookingScreen/BookingData/BookingData";
|
import { GlobalFeatAddOnData } from '../../../../Features/BookingScreen/BookingData/BookingData';
|
||||||
import { useEffect, useState } from "react";
|
import { useCallback, useEffect, useMemo, useState } from 'react';
|
||||||
import { Switch } from "antd";
|
import { Switch } from 'antd';
|
||||||
|
|
||||||
const BSScanTemplate = () => {
|
const BSScanTemplate = () => {
|
||||||
|
|
||||||
const dispatch = useDispatch();
|
const dispatch = useDispatch();
|
||||||
const Scantemplatedata = useSelector(GlobalScanTemplate)
|
const Scantemplatedata = useSelector(GlobalScanTemplate);
|
||||||
const PricingAppPricingName = useSelector(GlobalPricingAppPricingName);
|
const PricingAppPricingName = useSelector(GlobalPricingAppPricingName);
|
||||||
const FeatureAddonData = useSelector(GlobalFeatAddOnData);
|
const FeatureAddonData = useSelector(GlobalFeatAddOnData);
|
||||||
const selectedtemplateData = useSelector(getTemplateData);
|
const selectedtemplateData = useSelector(getTemplateData);
|
||||||
console.log(Scantemplatedata, "Scantemplatedata")
|
console.log(Scantemplatedata, 'Scantemplatedata');
|
||||||
const SessionData = useSelector(StoredSessionData);
|
const SessionData = useSelector(StoredSessionData);
|
||||||
const custselectedtemplate = useSelector(GlobalCustThemeData)
|
const custselectedtemplate = useSelector(GlobalCustThemeData);
|
||||||
console.log(custselectedtemplate, "custselectedtemplate")
|
console.log(custselectedtemplate, 'custselectedtemplate');
|
||||||
const AppId = SessionData?.AppId;
|
const AppId = SessionData?.AppId;
|
||||||
const CompId = SessionData?.CompId;
|
const CompId = SessionData?.CompId;
|
||||||
const BranchId = SessionData?.BranchId;
|
const BranchId = SessionData?.BranchId;
|
||||||
const UserId = SessionData?.UserId;
|
const UserId = SessionData?.UserId;
|
||||||
|
|
||||||
|
|
||||||
const initialChecked = (selectedtemplateData?.BookingLayout?.[0] !== 'Combo1' &&
|
|
||||||
selectedtemplateData?.BookingLayout?.[0] !== 'Combo2')
|
|
||||||
? !!Scantemplatedata?.Scantemplate
|
|
||||||
: false;
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
const ChangeScanLayoutfun = async () => {
|
const ChangeScanLayoutfun = async () => {
|
||||||
|
|
||||||
let templatedata = {
|
let templatedata = {
|
||||||
BookingLayout: [
|
BookingLayout: [
|
||||||
'Combo1',
|
'Combo1',
|
||||||
[
|
[
|
||||||
{
|
{
|
||||||
"TemplateOptionsId": 98930,
|
TemplateOptionsId: 98930,
|
||||||
"OptionId": 70,
|
OptionId: 70,
|
||||||
"OptionName": "Navbar"
|
OptionName: 'Navbar',
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"TemplateOptionsId": 98931,
|
TemplateOptionsId: 98931,
|
||||||
"OptionId": 71,
|
OptionId: 71,
|
||||||
"OptionName": "Billing"
|
OptionName: 'Billing',
|
||||||
}
|
},
|
||||||
],
|
],
|
||||||
],
|
],
|
||||||
BookingCombo1: [
|
BookingCombo1: [
|
||||||
'Combo1Navbar1',
|
'Combo1Navbar1',
|
||||||
[
|
[
|
||||||
{
|
{
|
||||||
"TemplateOptionsId": 98932,
|
TemplateOptionsId: 98932,
|
||||||
"OptionId": 145,
|
OptionId: 145,
|
||||||
"OptionName": "RePrint"
|
OptionName: 'RePrint',
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"TemplateOptionsId": 98933,
|
TemplateOptionsId: 98933,
|
||||||
"OptionId": 148,
|
OptionId: 148,
|
||||||
"OptionName": "TakeAway"
|
OptionName: 'TakeAway',
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"TemplateOptionsId": 98934,
|
TemplateOptionsId: 98934,
|
||||||
"OptionId": 150,
|
OptionId: 150,
|
||||||
"OptionName": "ExtraCharge"
|
OptionName: 'ExtraCharge',
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"TemplateOptionsId": 98935,
|
TemplateOptionsId: 98935,
|
||||||
"OptionId": 146,
|
OptionId: 146,
|
||||||
"OptionName": "QuickAdd"
|
OptionName: 'QuickAdd',
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"TemplateOptionsId": 98936,
|
TemplateOptionsId: 98936,
|
||||||
"OptionId": 149,
|
OptionId: 149,
|
||||||
"OptionName": "Offer"
|
OptionName: 'Offer',
|
||||||
}
|
},
|
||||||
],
|
],
|
||||||
],
|
],
|
||||||
|
|
||||||
|
|
||||||
BookingBilling: [
|
BookingBilling: [
|
||||||
'Billing3',
|
'Billing3',
|
||||||
[
|
[
|
||||||
|
|
@ -140,28 +131,38 @@ const BSScanTemplate = () => {
|
||||||
],
|
],
|
||||||
};
|
};
|
||||||
if (Scantemplatedata?.Scantemplate) {
|
if (Scantemplatedata?.Scantemplate) {
|
||||||
await dispatch(changeScanTemplate({ Scantemplate: false, changetemp: 'Layout', Template: {} }))
|
await dispatch(
|
||||||
|
changeScanTemplate({
|
||||||
|
Scantemplate: false,
|
||||||
|
changetemp: 'Layout',
|
||||||
|
Template: {},
|
||||||
|
})
|
||||||
|
);
|
||||||
} else {
|
} else {
|
||||||
await dispatch(changeScanTemplate({ Scantemplate: true, changetemp: 'Combo', Template: templatedata }))
|
await dispatch(
|
||||||
|
changeScanTemplate({
|
||||||
|
Scantemplate: true,
|
||||||
|
changetemp: 'Combo',
|
||||||
|
Template: templatedata,
|
||||||
|
})
|
||||||
|
);
|
||||||
}
|
}
|
||||||
|
};
|
||||||
}
|
|
||||||
|
|
||||||
const fetchData = async (Plan) => {
|
const fetchData = async (Plan) => {
|
||||||
const templateResponse = await dispatch(getTemplate({ CompId, BranchId, AppId })).unwrap();
|
const templateResponse = await dispatch(
|
||||||
|
getTemplate({ CompId, BranchId, AppId })
|
||||||
|
).unwrap();
|
||||||
if (
|
if (
|
||||||
!templateResponse?.data?.data ||
|
!templateResponse?.data?.data ||
|
||||||
templateResponse.data.data.length === 0
|
templateResponse.data.data.length === 0
|
||||||
) {
|
) {
|
||||||
// If no template data, call Professional('Advance')
|
// If no template data, call Professional('Advance')
|
||||||
Professional(Plan);
|
Professional(Plan);
|
||||||
}
|
} else {
|
||||||
else {
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// Check if template data is empty or not
|
// Check if template data is empty or not
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|
||||||
const ChangeCardLayoutfun = async () => {
|
const ChangeCardLayoutfun = async () => {
|
||||||
|
|
@ -339,10 +340,23 @@ const BSScanTemplate = () => {
|
||||||
],
|
],
|
||||||
};
|
};
|
||||||
|
|
||||||
if (custselectedtemplate == "Combo1" || custselectedtemplate == "Combo1") {
|
if (custselectedtemplate == 'Combo1' || custselectedtemplate == 'Combo1') {
|
||||||
await dispatch(changeScanTemplate({ Scantemplate: false, changetemp: 'Layout', Template: tempdata, OldTemp: custselectedtemplate }))
|
await dispatch(
|
||||||
|
changeScanTemplate({
|
||||||
|
Scantemplate: false,
|
||||||
|
changetemp: 'Layout',
|
||||||
|
Template: tempdata,
|
||||||
|
OldTemp: custselectedtemplate,
|
||||||
|
})
|
||||||
|
);
|
||||||
} else {
|
} else {
|
||||||
await dispatch(changeScanTemplate({ Scantemplate: false, changetemp: 'Layout', Template: {} }))
|
await dispatch(
|
||||||
|
changeScanTemplate({
|
||||||
|
Scantemplate: false,
|
||||||
|
changetemp: 'Layout',
|
||||||
|
Template: {},
|
||||||
|
})
|
||||||
|
);
|
||||||
const Advance = PricingAppPricingName?.some(
|
const Advance = PricingAppPricingName?.some(
|
||||||
(item) => item.PricingName === 'Premium'
|
(item) => item.PricingName === 'Premium'
|
||||||
);
|
);
|
||||||
|
|
@ -350,7 +364,8 @@ const BSScanTemplate = () => {
|
||||||
(item) => item.PricingName === 'Pro'
|
(item) => item.PricingName === 'Pro'
|
||||||
);
|
);
|
||||||
const hasCustomizedTemplate = FeatureAddonData?.FeatureDtls?.some(
|
const hasCustomizedTemplate = FeatureAddonData?.FeatureDtls?.some(
|
||||||
(item) => item?.FeatureAddonName?.toLowerCase() === 'customized template'
|
(item) =>
|
||||||
|
item?.FeatureAddonName?.toLowerCase() === 'customized template'
|
||||||
);
|
);
|
||||||
if (PricingAppPricingName?.length > 0) {
|
if (PricingAppPricingName?.length > 0) {
|
||||||
if (Advance) {
|
if (Advance) {
|
||||||
|
|
@ -361,7 +376,7 @@ const BSScanTemplate = () => {
|
||||||
fetchData();
|
fetchData();
|
||||||
} else {
|
} else {
|
||||||
Professional('Pro');
|
Professional('Pro');
|
||||||
setIsmounted(false)
|
setIsmounted(false);
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
if (hasCustomizedTemplate) {
|
if (hasCustomizedTemplate) {
|
||||||
|
|
@ -373,8 +388,7 @@ const BSScanTemplate = () => {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
};
|
||||||
}
|
|
||||||
const Professional = async (data) => {
|
const Professional = async (data) => {
|
||||||
const tempData = {
|
const tempData = {
|
||||||
SelectedApplication: AppId,
|
SelectedApplication: AppId,
|
||||||
|
|
@ -384,57 +398,22 @@ const BSScanTemplate = () => {
|
||||||
dispatch(changetemplateData(tempData));
|
dispatch(changetemplateData(tempData));
|
||||||
};
|
};
|
||||||
|
|
||||||
|
const handleToggle = useCallback(() => {
|
||||||
const handleToggle = (checked) => {
|
|
||||||
// Call the appropriate function
|
// Call the appropriate function
|
||||||
if (selectedtemplateData?.BookingLayout?.[0] === 'Combo1' ||
|
if (
|
||||||
selectedtemplateData?.BookingLayout?.[0] === 'Combo2') {
|
selectedtemplateData?.BookingLayout?.[0] === 'Combo1' ||
|
||||||
|
selectedtemplateData?.BookingLayout?.[0] === 'Combo2'
|
||||||
|
) {
|
||||||
ChangeCardLayoutfun();
|
ChangeCardLayoutfun();
|
||||||
} else {
|
} else {
|
||||||
ChangeScanLayoutfun();
|
ChangeScanLayoutfun();
|
||||||
}
|
}
|
||||||
};
|
}, [selectedtemplateData]);
|
||||||
const toggleLabe = Scantemplatedata?.Scantemplate ? "Scan" : "Card";
|
const toggleLabe = useMemo(() => {
|
||||||
|
return Scantemplatedata?.Scantemplate ? 'Scan' : 'Card';
|
||||||
|
}, [Scantemplatedata]);
|
||||||
console.log(Scantemplatedata?.Scantemplate, 'Scantemplatedata', toggleLabe);
|
|
||||||
|
|
||||||
|
|
||||||
return (
|
return (
|
||||||
// <>
|
|
||||||
// {(selectedtemplateData?.BookingLayout?.[0] == 'Combo1' ||
|
|
||||||
// selectedtemplateData?.BookingLayout?.[0] == 'Combo2') ?
|
|
||||||
// <div className="BSBilling7-icon-flex" onClick={() => ChangeCardLayoutfun()}>
|
|
||||||
// <FiLayout
|
|
||||||
// style={{ height: "25px", width: "25px", color: !Scantemplatedata?.Scantemplate ? "#52c41a" : "#1292ee" }}
|
|
||||||
// // className={
|
|
||||||
// // !Scantemplatedata?.Scantemplate
|
|
||||||
// // ? 'BSBillingNav-icon-table pulse-element'
|
|
||||||
// // : 'BSBillingNav-icon'
|
|
||||||
|
|
||||||
// // }
|
|
||||||
// />
|
|
||||||
// </div>
|
|
||||||
// :
|
|
||||||
// <div className="BSBilling7-icon-flex" onClick={() => ChangeScanLayoutfun()}>
|
|
||||||
|
|
||||||
// <BsUpcScan
|
|
||||||
// style={{ height: "25px", width: "25px", color: Scantemplatedata?.Scantemplate ? "#52c41a" : "#1292ee" }}
|
|
||||||
// // className={
|
|
||||||
// // Scantemplatedata?.Scantemplate
|
|
||||||
// // ? 'BSBillingNav-icon-table pulse-element'
|
|
||||||
// // : 'BSBillingNav-icon'
|
|
||||||
// // }
|
|
||||||
// />
|
|
||||||
// </div>
|
|
||||||
// }
|
|
||||||
|
|
||||||
// {/* <Switch
|
|
||||||
// size="small"
|
|
||||||
// checkedChildren="Scan"
|
|
||||||
// unCheckedChildren="Card"
|
|
||||||
// /> */}
|
|
||||||
// </>
|
|
||||||
<>
|
<>
|
||||||
<div className="BSBilling7-icon-flex swicthCardScanToggle">
|
<div className="BSBilling7-icon-flex swicthCardScanToggle">
|
||||||
<Switch
|
<Switch
|
||||||
|
|
@ -446,7 +425,6 @@ const BSScanTemplate = () => {
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
</>
|
</>
|
||||||
)
|
);
|
||||||
|
};
|
||||||
}
|
export default BSScanTemplate;
|
||||||
export default BSScanTemplate
|
|
||||||
|
|
|
||||||
|
|
@ -160,6 +160,7 @@ const BSLayout3 = () => {
|
||||||
const BookingCard = BSLayout3Data?.BookingCard;
|
const BookingCard = BSLayout3Data?.BookingCard;
|
||||||
const BookingBilling = BSLayout3Data?.BookingBilling?.[0];
|
const BookingBilling = BSLayout3Data?.BookingBilling?.[0];
|
||||||
const animations = ['example1', 'example2', 'example3'];
|
const animations = ['example1', 'example2', 'example3'];
|
||||||
|
const [count, setcount] = useState(0);
|
||||||
let ss = animations[count];
|
let ss = animations[count];
|
||||||
const DineInAccess = useMemo(() => {
|
const DineInAccess = useMemo(() => {
|
||||||
return SettingDataSelector?.[0]?.SettingDtlDetails.filter(
|
return SettingDataSelector?.[0]?.SettingDtlDetails.filter(
|
||||||
|
|
|
||||||
|
|
@ -124,6 +124,7 @@ const BSLayout5 = () => {
|
||||||
const OrderStatus = useSelector(GlobalOrderStatus);
|
const OrderStatus = useSelector(GlobalOrderStatus);
|
||||||
const SessionData = useSelector(StoredSessionData);
|
const SessionData = useSelector(StoredSessionData);
|
||||||
const badgeCount = useSelector(globalKioskSalesCount);
|
const badgeCount = useSelector(globalKioskSalesCount);
|
||||||
|
const [count, setcount] = useState(0);
|
||||||
const BookingStatus = useSelector(GlobalBookingStatus);
|
const BookingStatus = useSelector(GlobalBookingStatus);
|
||||||
const tableData = useSelector(GlobalOrderCardDetails);
|
const tableData = useSelector(GlobalOrderCardDetails);
|
||||||
const CheckBookingStatus =
|
const CheckBookingStatus =
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,11 @@
|
||||||
import React, { useEffect, useState, useCallback, lazy, Suspense } from 'react';
|
import React, {
|
||||||
|
useEffect,
|
||||||
|
useState,
|
||||||
|
useCallback,
|
||||||
|
lazy,
|
||||||
|
Suspense,
|
||||||
|
useMemo,
|
||||||
|
} from 'react';
|
||||||
import { useDispatch, useSelector } from 'react-redux';
|
import { useDispatch, useSelector } from 'react-redux';
|
||||||
import moment from 'moment';
|
import moment from 'moment';
|
||||||
import { Tooltip, Badge, Popconfirm } from 'antd';
|
import { Tooltip, Badge, Popconfirm } from 'antd';
|
||||||
|
|
@ -120,6 +127,7 @@ import PlanExpireNotification from '../PlanExpireNotification.jsx';
|
||||||
|
|
||||||
const subDirectory = import.meta.env.BASE_URL;
|
const subDirectory = import.meta.env.BASE_URL;
|
||||||
const commonDirectory = import.meta.env.COMMON_BASE_URL;
|
const commonDirectory = import.meta.env.COMMON_BASE_URL;
|
||||||
|
const MemoGiBasket = React.memo(GiBasket);
|
||||||
|
|
||||||
export default function BSCombo1() {
|
export default function BSCombo1() {
|
||||||
const dispatch = useDispatch();
|
const dispatch = useDispatch();
|
||||||
|
|
@ -140,6 +148,7 @@ export default function BSCombo1() {
|
||||||
const AppExpDate = useSelector(GlobalAppExpDateData);
|
const AppExpDate = useSelector(GlobalAppExpDateData);
|
||||||
const PricingAppPricingName = useSelector(GlobalPricingAppPricingName);
|
const PricingAppPricingName = useSelector(GlobalPricingAppPricingName);
|
||||||
const appPreferences = useSelector(ApplicationPreferences);
|
const appPreferences = useSelector(ApplicationPreferences);
|
||||||
|
const [isAltPressed, setIsAltPressed] = useState(false);
|
||||||
const commonModulePreference = appPreferences?.find(
|
const commonModulePreference = appPreferences?.find(
|
||||||
(preference) => preference?.PreferredCatName === 'Common Module'
|
(preference) => preference?.PreferredCatName === 'Common Module'
|
||||||
)?.PreferenceCatDetails;
|
)?.PreferenceCatDetails;
|
||||||
|
|
@ -159,6 +168,7 @@ export default function BSCombo1() {
|
||||||
|
|
||||||
// const [AppExpDate, setAppExpDate] = useState(0);
|
// const [AppExpDate, setAppExpDate] = useState(0);
|
||||||
const [Kioskopen, setKioskopen] = useState(false);
|
const [Kioskopen, setKioskopen] = useState(false);
|
||||||
|
const [count, setcount] = useState(0);
|
||||||
const [messageType, setMessageType] = useState(null);
|
const [messageType, setMessageType] = useState(null);
|
||||||
const [messageData, setMessageData] = useState(null);
|
const [messageData, setMessageData] = useState(null);
|
||||||
const [multiple, setMultiple] = useState(false);
|
const [multiple, setMultiple] = useState(false);
|
||||||
|
|
@ -332,6 +342,24 @@ export default function BSCombo1() {
|
||||||
await dispatch(changeCombosearch(false));
|
await dispatch(changeCombosearch(false));
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
const fill = useMemo(
|
||||||
|
() => (Comboglobal ? '#52C41A' : '#1292EE'),
|
||||||
|
[Comboglobal]
|
||||||
|
);
|
||||||
|
const enableBackground = useMemo(
|
||||||
|
() => (Comboglobal ? '#1292EE' : '#52C41A'),
|
||||||
|
[Comboglobal]
|
||||||
|
);
|
||||||
|
const basketStyle = useMemo(
|
||||||
|
() => ({
|
||||||
|
pointerEvents: OrderType === 'Failed' ? 'none' : 'auto',
|
||||||
|
cursor: 'pointer',
|
||||||
|
}),
|
||||||
|
[OrderType]
|
||||||
|
);
|
||||||
|
const handleClickMemo = useCallback(() => {
|
||||||
|
handleClick();
|
||||||
|
}, []);
|
||||||
return (
|
return (
|
||||||
<Suspense fallback={<div>Loading...</div>}>
|
<Suspense fallback={<div>Loading...</div>}>
|
||||||
<>
|
<>
|
||||||
|
|
@ -351,7 +379,7 @@ export default function BSCombo1() {
|
||||||
{/* Combo Container */}
|
{/* Combo Container */}
|
||||||
<div className="overall-bscombo-container">
|
<div className="overall-bscombo-container">
|
||||||
<div className="SearchSubnavbar-combo">
|
<div className="SearchSubnavbar-combo">
|
||||||
<BSC1NavBar data={BSComboData} SessionData={SessionData} />
|
<BSC1NavBar />
|
||||||
<div className="comboNavbarSubMain">
|
<div className="comboNavbarSubMain">
|
||||||
{/* Multiple search */}
|
{/* Multiple search */}
|
||||||
<Tooltip title={'Multiple Search'}>
|
<Tooltip title={'Multiple Search'}>
|
||||||
|
|
@ -538,17 +566,11 @@ export default function BSCombo1() {
|
||||||
title="Combo Product"
|
title="Combo Product"
|
||||||
isMobile={isMobile}
|
isMobile={isMobile}
|
||||||
>
|
>
|
||||||
<GiBasket
|
<MemoGiBasket
|
||||||
fill={Comboglobal === true ? '#52C41A' : '#1292EE'}
|
fill={fill}
|
||||||
enableBackground={
|
enableBackground={enableBackground}
|
||||||
Comboglobal === true ? '#1292EE' : '#52C41A'
|
onClick={handleClickMemo}
|
||||||
}
|
style={basketStyle}
|
||||||
onClick={handleClick}
|
|
||||||
style={{
|
|
||||||
pointerEvents:
|
|
||||||
OrderType === 'Failed' ? 'none' : 'auto',
|
|
||||||
cursor: 'pointer',
|
|
||||||
}}
|
|
||||||
/>
|
/>
|
||||||
</TooltipWrapper>
|
</TooltipWrapper>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
||||||
|
|
@ -105,6 +105,8 @@ const BranchName = ({ IconStatus }) => {
|
||||||
textOverflow: 'ellipsis',
|
textOverflow: 'ellipsis',
|
||||||
whiteSpace: 'nowrap',
|
whiteSpace: 'nowrap',
|
||||||
maxWidth: '100%',
|
maxWidth: '100%',
|
||||||
|
fontFamily: 'Poppins',
|
||||||
|
fontWeight: '500',
|
||||||
}}
|
}}
|
||||||
>
|
>
|
||||||
{branchName}
|
{branchName}
|
||||||
|
|
|
||||||
|
|
@ -24,6 +24,12 @@ const commonUrl = import.meta.env.ENV_COMMON_BASE_URL;
|
||||||
const subDirectory = import.meta.env.BASE_URL;
|
const subDirectory = import.meta.env.BASE_URL;
|
||||||
|
|
||||||
const ProtectedRoutes = ({ routesConfig }) => {
|
const ProtectedRoutes = ({ routesConfig }) => {
|
||||||
|
|
||||||
|
useTemplate(
|
||||||
|
getSession('CompId'),
|
||||||
|
getSession('BranchId'),
|
||||||
|
getSession('AppId')
|
||||||
|
);
|
||||||
const navigate = useNavigate();
|
const navigate = useNavigate();
|
||||||
const dispatch = useDispatch();
|
const dispatch = useDispatch();
|
||||||
const UserType = getSession('UserType');
|
const UserType = getSession('UserType');
|
||||||
|
|
|
||||||
|
|
@ -3,6 +3,7 @@ import { useDispatch } from 'react-redux';
|
||||||
import { getTemplate } from '../Features/ThemeChange/ThemeChange.js';
|
import { getTemplate } from '../Features/ThemeChange/ThemeChange.js';
|
||||||
|
|
||||||
export const useTemplate = (CompId, BranchId, AppId) => {
|
export const useTemplate = (CompId, BranchId, AppId) => {
|
||||||
|
|
||||||
const dispatch = useDispatch();
|
const dispatch = useDispatch();
|
||||||
|
|
||||||
useEffect(() => {
|
useEffect(() => {
|
||||||
|
|
@ -14,5 +15,5 @@ export const useTemplate = (CompId, BranchId, AppId) => {
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
fetchTemplate();
|
fetchTemplate();
|
||||||
}, [dispatch, CompId, BranchId, AppId]);
|
}, [ CompId, BranchId, AppId]);
|
||||||
};
|
};
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue