sbx-crm-menu-ui 2.1.4 → 2.1.5

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.css CHANGED
@@ -1,3 +1,4 @@
1
+ @charset "UTF-8";
1
2
  *,
2
3
  ::after,
3
4
  ::before {
@@ -513,4 +514,86 @@
513
514
 
514
515
  .crm-pointer {
515
516
  cursor: pointer;
517
+ }
518
+
519
+ .name-A {
520
+ background: #9b6443 !important;
521
+ }
522
+ .name-B {
523
+ background: #985631 !important;
524
+ }
525
+ .name-C {
526
+ background: #159413 !important;
527
+ }
528
+ .name-D {
529
+ background: #811E08 !important;
530
+ }
531
+ .name-E {
532
+ background: #4c7e3e !important;
533
+ }
534
+ .name-F {
535
+ background: #3EB07E !important;
536
+ }
537
+ .name-G {
538
+ background: #3f8583 !important;
539
+ }
540
+ .name-H {
541
+ background: #9944CA !important;
542
+ }
543
+ .name-I {
544
+ background: #1B2AC9 !important;
545
+ }
546
+ .name-J {
547
+ background: #a48649 !important;
548
+ }
549
+ .name-K {
550
+ background: #9734AF !important;
551
+ }
552
+ .name-L {
553
+ background: #4f3eb0 !important;
554
+ }
555
+ .name-M {
556
+ background: #3c9280 !important;
557
+ }
558
+ .name-N {
559
+ background: #E70B7F !important;
560
+ }
561
+ .name-Ñ {
562
+ background: #0E18F6 !important;
563
+ }
564
+ .name-O {
565
+ background: #417b92 !important;
566
+ }
567
+ .name-P {
568
+ background: #a03963 !important;
569
+ }
570
+ .name-Q {
571
+ background: #1D49EB !important;
572
+ }
573
+ .name-R {
574
+ background: #8a3e62 !important;
575
+ }
576
+ .name-S {
577
+ background: #861e37 !important;
578
+ }
579
+ .name-T {
580
+ background: #5E054F !important;
581
+ }
582
+ .name-U {
583
+ background: #CC3E07 !important;
584
+ }
585
+ .name-V {
586
+ background: #4eb2b8 !important;
587
+ }
588
+ .name-W {
589
+ background: #51b75b !important;
590
+ }
591
+ .name-X {
592
+ background: #8c2b1f !important;
593
+ }
594
+ .name-Y {
595
+ background: #732860 !important;
596
+ }
597
+ .name-Z {
598
+ background: #a22f48 !important;
516
599
  }
package/dist/index.js CHANGED
@@ -6,53 +6,6 @@ var React = require('react');
6
6
  var React__default = _interopDefault(React);
7
7
  var regularIcons = require('@fortawesome/free-regular-svg-icons');
8
8
 
9
- function uuidV4() {
10
- return ('' + 1e7 + -1e3 + -4e3 + -8e3 + -1e11).replace(/[018]/g, function (c) {
11
- return (((c ^ crypto.getRandomValues(new Uint8Array(1))[0]) & 15) >> c / 4).toString(16);
12
- });
13
- }
14
- var colors = {
15
- A: '#FF5733',
16
- B: '#33FF57',
17
- C: '#5733FF',
18
- D: '#FF33B8',
19
- E: '#33B8FF',
20
- F: '#FFFF33',
21
- G: '#33FFFF',
22
- H: '#FF33A6',
23
- I: '#33A6FF',
24
- J: '#FF9033',
25
- K: '#3390FF',
26
- L: '#FF33F6',
27
- M: '#33F6FF',
28
- N: '#C833FF',
29
- O: '#33FFC8',
30
- P: '#FFC833',
31
- Q: '#33FF58',
32
- R: '#FF5833',
33
- S: '#58FF33',
34
- T: '#FF3358',
35
- U: '#3358FF',
36
- V: '#FF33D6',
37
- W: '#33D6FF',
38
- X: '#FF336A',
39
- Y: '#336AFF',
40
- Z: '#FFD633'
41
- };
42
- function getDataFromKey(data, key) {
43
- try {
44
- var val = data;
45
- if (val[key]) return val[key];
46
- key.split('.').forEach(function (key) {
47
- val = val[key];
48
- });
49
- return val;
50
- } catch (e) {
51
- var _key$split$pop;
52
- return (_key$split$pop = key.split('.').pop()) != null ? _key$split$pop : '';
53
- }
54
- }
55
-
56
9
  function Dropdown(props) {
57
10
  var _props$options;
58
11
  var _useState = React.useState(false),
@@ -65,10 +18,7 @@ function Dropdown(props) {
65
18
  className: 'crm-class-dropdown crm-class-mr-20',
66
19
  onClick: toggleDropdown
67
20
  }, React__default.createElement("span", {
68
- style: {
69
- background: colors[props.startNameWord.toUpperCase()]
70
- },
71
- className: 'crm-class-top-nav-bar-avatar'
21
+ className: "crm-class-top-nav-bar-avatar name-" + props.startNameWord.toUpperCase()
72
22
  }, props.startNameWord.toUpperCase()), React__default.createElement("span", {
73
23
  className: 'crm-class-ml-15'
74
24
  }, React__default.createElement(reactFontawesome.FontAwesomeIcon, {
@@ -229,6 +179,25 @@ function TopNavBarComponent(props) {
229
179
  })));
230
180
  }
231
181
 
182
+ function uuidV4() {
183
+ return ('' + 1e7 + -1e3 + -4e3 + -8e3 + -1e11).replace(/[018]/g, function (c) {
184
+ return (((c ^ crypto.getRandomValues(new Uint8Array(1))[0]) & 15) >> c / 4).toString(16);
185
+ });
186
+ }
187
+ function getDataFromKey(data, key) {
188
+ try {
189
+ var val = data;
190
+ if (val[key]) return val[key];
191
+ key.split('.').forEach(function (key) {
192
+ val = val[key];
193
+ });
194
+ return val;
195
+ } catch (e) {
196
+ var _key$split$pop;
197
+ return (_key$split$pop = key.split('.').pop()) != null ? _key$split$pop : '';
198
+ }
199
+ }
200
+
232
201
  var iconsPath = {
233
202
  'pe-7s-diamond': 'faGem',
234
203
  'pe-7s-piggy': 'faPiggyBank',
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../src/utils/utils.ts","../src/components/dropdown/Dropdown.tsx","../src/components/contentMenuComponent/UserInfo.tsx","../src/components/contentMenuComponent/LanguageDropdown.tsx","../src/components/menu/TopNavBarComponent/TopNavBarComponent.tsx","../src/components/menu/sidebar/SidebarItem.tsx","../src/components/menu/sidebar/Sidebar.tsx","../src/components/menu/sidebar/subMenuComponent/SubMenuComponent.tsx","../src/provider/TranslateProvider.tsx","../src/hooks/useTranslate.ts"],"sourcesContent":["export function uuidV4() {\n return ('' + 1e7 + -1e3 + -4e3 + -8e3 + -1e11).replace(/[018]/g, (c: any) =>\n (\n ((c ^ crypto.getRandomValues(new Uint8Array(1))[0]) & 15) >>\n (c / 4)\n ).toString(16)\n )\n}\n\nexport const colors = {\n A: '#FF5733',\n B: '#33FF57',\n C: '#5733FF',\n D: '#FF33B8',\n E: '#33B8FF',\n F: '#FFFF33',\n G: '#33FFFF',\n H: '#FF33A6',\n I: '#33A6FF',\n J: '#FF9033',\n K: '#3390FF',\n L: '#FF33F6',\n M: '#33F6FF',\n N: '#C833FF',\n O: '#33FFC8',\n P: '#FFC833',\n Q: '#33FF58',\n R: '#FF5833',\n S: '#58FF33',\n T: '#FF3358',\n U: '#3358FF',\n V: '#FF33D6',\n W: '#33D6FF',\n X: '#FF336A',\n Y: '#336AFF',\n Z: '#FFD633'\n}\n\nexport function getDataFromKey<T>(data: T, key: string): string {\n try {\n let val: any = data\n if (val[key]) return val[key]\n key.split('.').forEach((key) => {\n val = val[key]\n })\n return val as string\n } catch (e) {\n return (key.split('.').pop() ?? '') as string\n }\n}\n","import React, { useState } from 'react'\nimport { FontAwesomeIcon } from '@fortawesome/react-fontawesome'\nimport {\n faChevronDown,\n faChevronUp,\n IconDefinition\n} from '@fortawesome/free-solid-svg-icons'\nimport { colors } from '../../utils/utils'\n\nexport interface DropdownOption {\n label: string,\n icon: IconDefinition\n}\n\nexport interface DropdownOptionPath extends DropdownOption {\n type: 'path'\n path: string\n}\n\nexport interface DropdownOptionClick extends DropdownOption {\n type: 'click'\n onClick: () => void\n}\n\nexport default function Dropdown(props: {\n startNameWord: string\n name: string\n email: string\n options?: (DropdownOptionClick | DropdownOptionPath)[]\n}) {\n const [isDropdownOpen, setIsDropdownOpen] = useState(false)\n\n const toggleDropdown = () => {\n setIsDropdownOpen(!isDropdownOpen)\n }\n\n return (\n <div\n className='crm-class-dropdown crm-class-mr-20'\n onClick={toggleDropdown}\n >\n <span\n style={{ background: (colors as any)[props.startNameWord.toUpperCase()] }}\n className='crm-class-top-nav-bar-avatar'\n >\n {props.startNameWord.toUpperCase()}\n </span>\n <span className='crm-class-ml-15'>\n <FontAwesomeIcon\n icon={isDropdownOpen ? faChevronUp : faChevronDown}\n className='crm-class-color-icon crm-class-slate-gray'\n />\n </span>\n {isDropdownOpen && (\n <div className='crm-class-dropdown-content'>\n <div className='crm-class-dropdown-header'>\n <div className='crm-class-dropdown-user-bg'></div>\n <div className='crm-class-dropdown-user-content'>\n <p className='crm-class-dropdown-user-name'>{props.name}</p>\n <p className='crm-class-dropdown-user-email'>{props.email}</p>\n </div>\n </div>\n <div className='crm-class-dropdown-options'>\n <ul>\n <li className='crm-class-dropdown-first-option'>Options</li>\n {props.options?.map((option, index) => (\n <li style={{ marginTop: '10px' }}>\n {option.type === 'click' ? (\n <a\n key={index}\n href={'none'}\n className='crm-class-dropdown-option'\n onClick={(event) => {\n event.preventDefault()\n option.onClick()\n }}\n >\n <FontAwesomeIcon\n icon={option.icon}\n className='crm-class-color-icon crm-class-slate-gray'\n />\n <small>{option.label}</small>\n </a>\n ) : (\n <a\n key={index}\n className='crm-class-dropdown-option'\n href={option.path}\n >\n <FontAwesomeIcon\n icon={option.icon}\n className='crm-class-color-icon crm-class-slate-gray'\n />\n <small>{option.label}</small>\n </a>\n )}\n </li>\n ))}\n </ul>\n </div>\n </div>\n )}\n </div>\n )\n}\n","import React from 'react'\n\n\ninterface Props {\n email: string;\n name: string;\n}\n\nexport default function UserInfo({ name, email }: Props) {\n return (\n <div className=\"crm-class-top-nav-bar-info-user\">\n <span className=\"crm-class-font-bold\" style={{fontSize: 13}}>{name} </span>\n <span style={{fontSize: 10}}>{email}</span>\n </div>\n )\n}\n","import React, { useState } from 'react'\n\nexport default function LanguageDropdown(props: { languages: string[], onChooseLanguage?: (language: string) => void, defaultValue: string }) {\n const valueLang = props.languages.includes(props.defaultValue) ? props.defaultValue : 'en';\n const [selectedLanguage, setSelectedLanguage] = useState<string>(\n valueLang\n );\n const [openLanguageDropdown, setOpenLanguageDropdown] = useState(false);\n\n const handleLanguageChange = (language: string) => {\n setSelectedLanguage(language);\n props.onChooseLanguage?.(language);\n setOpenLanguageDropdown(false);\n }\n\n return (\n <div className=\"crm-class-dropdown-flag crm-class-mr-20\">\n <span className=\"crm-class-content-flag\" onClick={() => setOpenLanguageDropdown(!openLanguageDropdown)} >\n <span \n style={{borderRadius: 30}} \n className={`crm-class-flag large ${selectedLanguage.toUpperCase()}`}></span>\n </span>\n\n {\n openLanguageDropdown && (\n <div className=\"crm-class-dropdown-menu\">\n <div className=\"crm-class-dropdown-title\">\n Choose Language\n </div>\n <h6 className=\"crm-class-dropdown-header\">Popular Languages</h6>\n {props.languages.map((language) => (\n <button\n key={language}\n type=\"button\"\n className={`crm-class-dropdown-item ${language === selectedLanguage ? 'selected' : ''}`}\n onClick={() => handleLanguageChange(language)}\n >\n <span\n className={` opacity-8 crm-class-flag large crm-class-mr-20 ${language.toUpperCase()}`}\n ></span>\n {language.toUpperCase()}\n </button>\n ))}\n </div>\n )\n }\n </div>\n )\n}\n","import { faIndent, faOutdent } from '@fortawesome/free-solid-svg-icons'\nimport { FontAwesomeIcon } from '@fortawesome/react-fontawesome'\nimport React from 'react'\nimport Dropdown, {\n DropdownOptionClick,\n DropdownOptionPath\n} from '../../dropdown/Dropdown'\nimport UserInfo from '../../contentMenuComponent/UserInfo'\nimport LanguageDropdown from '../../contentMenuComponent/LanguageDropdown'\n\ninterface Props {\n languages: string[],\n onChooseLanguage?: (language: string) => void,\n user: {\n name: string\n email: string\n },\n defaultValueLanguage: string,\n openSideBar: boolean,\n setOpenSideBar: React.Dispatch<React.SetStateAction<boolean>>,\n logoSrc?: string,\n onClickLogo?: () => void,\n dropdownOptions?: (DropdownOptionClick | DropdownOptionPath)[]\n}\n\nexport default function TopNavBarComponent(props: Props) {\n return (\n <div className='crm-class-top-nav-bar'>\n <div className='crm-class-flex-container'>\n {props.openSideBar ? (\n <FontAwesomeIcon\n icon={faOutdent}\n color='#3f6ad8'\n size='1x'\n className='crm-class-mr-20 crm-class-cursor-pointer'\n onClick={() => props.setOpenSideBar(false)}\n />\n ) : (\n <FontAwesomeIcon\n icon={faIndent}\n color='#3f6ad8'\n size='1x'\n className='crm-class-mr-20 crm-class-cursor-pointer'\n onClick={() => props.setOpenSideBar(true)}\n />\n )}\n <div className='crm-class-flex-container'>\n {/* <div className=\"crm-class-icon-container crm-class-mr-20\">\n <FontAwesomeIcon\n icon={faSearch}\n color=\"#3f6ad8\"\n className=\"\"\n size=\"1x\"\n />\n </div> */}\n\n <img\n src={props.logoSrc ?? 'https://via.placeholder.com/150'}\n style={{ height: '40px' }}\n className={props.onClickLogo ? 'crm-pointer' : ''}\n alt=''\n onClick={props.onClickLogo ?? undefined}\n />\n </div>\n </div>\n <div className='crm-class-top-nav-bar-options'>\n {/* */}\n\n <LanguageDropdown languages={props.languages} onChooseLanguage={props.onChooseLanguage} defaultValue={props.defaultValueLanguage} />\n\n <Dropdown\n options={props.dropdownOptions}\n startNameWord={props.user.name?.[0]}\n name={props.user.name}\n email={props.user.email}\n />\n <UserInfo name={props.user.name} email={props.user.email} />\n </div>\n </div>\n )\n}\n","import React, { useEffect, useMemo } from 'react'\nimport {\n faChevronDown,\n faChevronUp,\n IconDefinition\n} from '@fortawesome/free-solid-svg-icons'\nimport { FontAwesomeIcon } from '@fortawesome/react-fontawesome'\nimport { SidebarItemProps } from '../../../types/Common'\nimport { uuidV4 } from '../../../utils/utils'\nimport * as regularIcons from '@fortawesome/free-regular-svg-icons'\nimport * as solidIcons from '@fortawesome/free-solid-svg-icons'\n\nexport const iconsPath: Record<string, string> = {\n 'pe-7s-diamond': 'faGem',\n 'pe-7s-piggy': 'faPiggyBank',\n 'pe-7s-helm': 'faShip',\n 'pe-7s-hourglass': 'faHourglass',\n 'pe-7s-safe': 'faWallet',\n 'pe-7s-headphones': 'faHeadphones',\n 'pe-7s-next-2': 'faRectangleList',\n 'pe-7s-cloud-download': 'faCloudDownloadAlt',\n 'pe-7s-news-paper': 'faNewspaper',\n 'pe-7s-upload': 'faUpload',\n 'pe-7s-display1': 'faChartBar',\n 'pe-7s-settings': 'faCog'\n}\n\nconst SidebarItem = ({ \n route, \n isActive, \n idName,\n onClick,\n firstToggle,\n firstExpanded,\n setFirstExpanded\n}: \n SidebarItemProps\n) => {\n const {\n iconName = '',\n label,\n subRoutes = [],\n className,\n visible = true\n } = route\n\n const [activeIndex, setActiveIndex] = React.useState<string | null>(null);\n\n const toggleMenu2 = (index: string) => {\n setActiveIndex(index === activeIndex ? null : index);\n };\n\n const icon: IconDefinition = useMemo(() => {\n const name = iconsPath[iconName] || iconName\n return (\n (regularIcons as any)[name] ||\n (solidIcons as any)[name]\n )\n }, [])\n\n const firstToggle2 = (callback: (set: (value: React.SetStateAction<string | null>) => void) => void) => {\n callback(setActiveIndex);\n }\n\n useEffect(() => {\n firstToggle((set) => {\n if(route.expanded && firstExpanded) {\n set(idName);\n setFirstExpanded(false);\n }\n });\n\n }, []);\n \n\n if (!visible) {\n return null\n }\n\n return (\n <React.Fragment>\n <li\n className={`crm-class-sidebar-li ${className ?? ''}`}\n onClick={() => {\n onClick(idName);\n if (!route.subRoutes?.length) {\n route.action?.()\n }\n }}\n >\n {icon && (\n <span className='crm-class-mr-10'>\n <FontAwesomeIcon icon={icon} />\n </span>\n )}\n <span\n // onClick={route.subRoutes?.length ? undefined : route.action}\n style={isActive ? {fontWeight: '700'} : {}}\n className={`${route.selected ? 'crm-class-font-bold' : ''} `}\n >\n {label}\n </span>\n\n {!!subRoutes.length && (\n <span className='crm-class-ml-auto'>\n <FontAwesomeIcon\n icon={isActive ? faChevronUp : faChevronDown}\n className='crm-class-color-icon crm-class-font-10 crm-class-slate-gray'\n />\n </span>\n )}\n </li>\n \n <ul style={{display: !!subRoutes.length && isActive ? 'block' : 'none'}} className='crm-class-sidebar-sub-menu-list'>\n {subRoutes?.map((item) => (\n <SidebarItem \n key={uuidV4()} \n route={item} \n idName={item.label} \n isActive={activeIndex === item.label}\n onClick={toggleMenu2} \n firstToggle={firstToggle2}\n firstExpanded={firstExpanded}\n setFirstExpanded={setFirstExpanded}\n />\n ))}\n </ul>\n \n </React.Fragment>\n )\n}\n\nexport default SidebarItem\n","// import { IconDefinition } from '@fortawesome/free-solid-svg-icons'\n// import { FontAwesomeIcon } from '@fortawesome/react-fontawesome'\n\nimport { FontAwesomeIcon } from '@fortawesome/react-fontawesome'\nimport { Route } from '../../../types/Common'\nimport SidebarItem, { iconsPath } from './SidebarItem'\nimport React from 'react'\nimport * as regularIcons from '@fortawesome/free-regular-svg-icons'\nimport * as solidIcons from '@fortawesome/free-solid-svg-icons'\n\nconst SidebarComponent = (props: {\n routes: Route[]\n openSideBar: boolean\n setOpenSideBar: React.Dispatch<React.SetStateAction<boolean>>\n children: React.ReactNode\n path?: string\n}) => {\n const { routes, openSideBar, setOpenSideBar } = props\n const [activeIndex, setActiveIndex] = React.useState<string | null>(null)\n const [firstExpanded, setFirstExpanded] = React.useState<boolean>(true)\n const [isMobile, setIsMobile] = React.useState(false)\n\n React.useEffect(() => {\n const mediaQuery = window.matchMedia('(max-width: 500px)')\n\n const handleResize = () => {\n setIsMobile(mediaQuery.matches)\n }\n\n handleResize() //first execute\n mediaQuery.addEventListener('change', handleResize)\n\n return () => mediaQuery.removeEventListener('change', handleResize)\n }, [])\n\n React.useEffect(() => {\n setOpenSideBar(false)\n }, [props.path])\n\n const toggleMenu = (index: string) => {\n setActiveIndex(index === activeIndex ? null : index)\n }\n\n const firstToggle = (\n callback: (\n set: (value: React.SetStateAction<string | null>) => void\n ) => void\n ) => {\n callback(setActiveIndex)\n }\n\n function iconFa(iconName = '') {\n const name = iconsPath[iconName] || iconName\n return (regularIcons as any)[name] || (solidIcons as any)[name]\n }\n\n return (\n <div style={{ display: 'flex' }}>\n <div\n style={!isMobile ? (!openSideBar ? { width: '80px' } : {}) : {}}\n className={`crm-class-sidebar${openSideBar ? ' active' : ''}`}\n onMouseOver={() => setOpenSideBar(true)}\n onMouseOut={() => setOpenSideBar(false)}\n >\n {isMobile && (\n <button\n style={{\n position: 'absolute',\n top: 5,\n right: 15,\n background: 'transparent',\n border: 0,\n zIndex: 50\n }}\n onClick={() => setOpenSideBar(false)}\n type='button'\n >\n <FontAwesomeIcon\n style={{ fontSize: 25, color: '#3f6ad8' }}\n icon={regularIcons.faXmarkCircle}\n />\n </button>\n )}\n <ul\n className={\n !isMobile\n ? openSideBar\n ? `crm-class-sidebar-list`\n : `crm-class-sidebar-icons-content`\n : `crm-class-sidebar-list${openSideBar ? ' active' : ''}`\n }\n >\n {!isMobile ? (\n openSideBar ? (\n <span className='crm-class-title'>MENU</span>\n ) : (\n <div\n style={{\n backgroundColor: '#e0f3ff',\n height: '2px',\n borderRadius: '15px'\n }}\n ></div>\n )\n ) : (\n <span className='crm-class-title'>MENU</span>\n )}\n\n <div\n style={{\n display: !isMobile ? (openSideBar ? 'block' : 'none') : 'block'\n }}\n >\n {routes.map((route, index) => (\n <SidebarItem\n key={`route_${index}`}\n route={route}\n idName={route.label}\n isActive={activeIndex === route.label}\n onClick={toggleMenu}\n firstToggle={firstToggle}\n firstExpanded={firstExpanded}\n setFirstExpanded={setFirstExpanded}\n />\n ))}\n </div>\n\n <div\n style={{\n display: !isMobile ? (!openSideBar ? 'block' : 'none') : 'none'\n }}\n >\n {/* <ul className='crm-class-sidebar-icons-content'> */}\n {routes.map((route, index) => {\n const icon = iconFa(route.iconName)\n\n if (icon) {\n return (\n <li\n key={`route_${index}`}\n style={index === 0 ? { marginTop: 10 } : {}}\n >\n <span>\n <FontAwesomeIcon\n style={{ fontSize: 13, color: '#cacaca' }}\n icon={icon}\n />\n </span>\n </li>\n )\n }\n\n return <React.Fragment></React.Fragment>\n })}\n {/* </ul> */}\n </div>\n </ul>\n </div>\n <div className='crm-class-sidebar-content'>{props.children}</div>\n </div>\n )\n}\nexport default SidebarComponent\n","import { faGem } from '@fortawesome/free-regular-svg-icons'\nimport { Route } from '../../../../types/Common'\nimport { IconDefinition } from '@fortawesome/free-solid-svg-icons'\n\nexport interface View {\n path: string\n name: string\n root: string\n permission: string | string[]\n views?: View[]\n}\n\nexport const generateSubMenuData = (\n labels: View[],\n callBackPath: (v: View) => void,\n ruleSelection?: (v: View) => boolean\n): Route[] => {\n return labels.map((label) => ({\n label: label.name,\n className: 'crm-class-ml-20',\n action: () => callBackPath(label),\n path: label.path,\n selected: ruleSelection?.(label) || false,\n subRoutes: generateSubMenuData(\n label.views || [],\n callBackPath,\n ruleSelection\n )\n }))\n}\n\nexport const icons: Record<string, IconDefinition> = {\n diamond: faGem,\n default: faGem\n}\n","import React from 'react'\n\ninterface TranslateProviderProps<Config> {\n children: React.ReactNode\n locale: string\n translations: Config\n}\n\nexport const TranslateContext = React.createContext<{\n locale: string\n translations: Record<string, Record<string, string>>\n}>({\n locale: '',\n translations: {}\n})\n\nexport default function TranslateProvider<Config>(\n props: TranslateProviderProps<Config>\n) {\n const { children, ...value } = props\n\n return (\n <TranslateContext.Provider value={value as any}>\n {children}\n </TranslateContext.Provider>\n )\n}\n","import { useCallback, useContext } from 'react'\nimport { TranslateContext } from '../provider/TranslateProvider'\nimport { getDataFromKey } from '../utils/utils'\n\nconst useTranslate = (module?: string) => {\n const { translations: language, locale } = useContext(TranslateContext)\n\n const t = useCallback(\n (field = ''): string => {\n return getDataFromKey(\n module ? language[locale][module] : language[locale],\n field\n )\n },\n [language, locale]\n )\n return { t }\n}\n\nexport default useTranslate\n"],"names":["uuidV4","replace","c","crypto","getRandomValues","Uint8Array","toString","colors","A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z","getDataFromKey","data","key","val","split","forEach","e","_key$split$pop","pop","Dropdown","props","_useState","useState","isDropdownOpen","setIsDropdownOpen","toggleDropdown","React","className","onClick","style","background","startNameWord","toUpperCase","FontAwesomeIcon","icon","faChevronUp","faChevronDown","name","email","_props$options","options","map","option","index","marginTop","type","href","event","preventDefault","label","path","UserInfo","_ref","fontSize","LanguageDropdown","valueLang","languages","includes","defaultValue","selectedLanguage","setSelectedLanguage","_useState2","openLanguageDropdown","setOpenLanguageDropdown","handleLanguageChange","language","_props$onChooseLangua","onChooseLanguage","call","borderRadius","TopNavBarComponent","openSideBar","faOutdent","color","size","setOpenSideBar","faIndent","src","_props$logoSrc","logoSrc","height","onClickLogo","alt","_props$onClickLogo","undefined","defaultValueLanguage","dropdownOptions","_props$user$name","user","iconsPath","SidebarItem","route","isActive","idName","firstToggle","firstExpanded","setFirstExpanded","_route$iconName","iconName","_route$subRoutes","subRoutes","_route$visible","visible","_React$useState","activeIndex","setActiveIndex","toggleMenu2","useMemo","regularIcons","solidIcons","firstToggle2","callback","useEffect","set","expanded","Fragment","_route$subRoutes2","length","_route$action","action","fontWeight","selected","display","item","SidebarComponent","routes","_React$useState2","_React$useState3","isMobile","setIsMobile","mediaQuery","window","matchMedia","handleResize","matches","addEventListener","removeEventListener","toggleMenu","iconFa","width","onMouseOver","onMouseOut","position","top","right","border","zIndex","backgroundColor","children","generateSubMenuData","labels","callBackPath","ruleSelection","views","icons","diamond","faGem","TranslateContext","createContext","locale","translations","TranslateProvider","value","_objectWithoutPropertiesLoose","_excluded","Provider","useTranslate","module","_useContext","useContext","t","useCallback","field"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sources":["../src/components/dropdown/Dropdown.tsx","../src/components/contentMenuComponent/UserInfo.tsx","../src/components/contentMenuComponent/LanguageDropdown.tsx","../src/components/menu/TopNavBarComponent/TopNavBarComponent.tsx","../src/utils/utils.ts","../src/components/menu/sidebar/SidebarItem.tsx","../src/components/menu/sidebar/Sidebar.tsx","../src/components/menu/sidebar/subMenuComponent/SubMenuComponent.tsx","../src/provider/TranslateProvider.tsx","../src/hooks/useTranslate.ts"],"sourcesContent":["import React, { useState } from 'react'\nimport { FontAwesomeIcon } from '@fortawesome/react-fontawesome'\nimport {\n faChevronDown,\n faChevronUp,\n IconDefinition\n} from '@fortawesome/free-solid-svg-icons'\n\nexport interface DropdownOption {\n label: string\n icon: IconDefinition\n}\n\nexport interface DropdownOptionPath extends DropdownOption {\n type: 'path'\n path: string\n}\n\nexport interface DropdownOptionClick extends DropdownOption {\n type: 'click'\n onClick: () => void\n}\n\nexport default function Dropdown(props: {\n startNameWord: string\n name: string\n email: string\n options?: (DropdownOptionClick | DropdownOptionPath)[]\n}) {\n const [isDropdownOpen, setIsDropdownOpen] = useState(false)\n\n const toggleDropdown = () => {\n setIsDropdownOpen(!isDropdownOpen)\n }\n\n return (\n <div\n className='crm-class-dropdown crm-class-mr-20'\n onClick={toggleDropdown}\n >\n <span\n className={`crm-class-top-nav-bar-avatar name-${props.startNameWord.toUpperCase()}`}\n >\n {props.startNameWord.toUpperCase()}\n </span>\n <span className='crm-class-ml-15'>\n <FontAwesomeIcon\n icon={isDropdownOpen ? faChevronUp : faChevronDown}\n className='crm-class-color-icon crm-class-slate-gray'\n />\n </span>\n {isDropdownOpen && (\n <div className='crm-class-dropdown-content'>\n <div className='crm-class-dropdown-header'>\n <div className='crm-class-dropdown-user-bg'></div>\n <div className='crm-class-dropdown-user-content'>\n <p className='crm-class-dropdown-user-name'>{props.name}</p>\n <p className='crm-class-dropdown-user-email'>{props.email}</p>\n </div>\n </div>\n <div className='crm-class-dropdown-options'>\n <ul>\n <li className='crm-class-dropdown-first-option'>Options</li>\n {props.options?.map((option, index) => (\n <li style={{ marginTop: '10px' }}>\n {option.type === 'click' ? (\n <a\n key={index}\n href={'none'}\n className='crm-class-dropdown-option'\n onClick={(event) => {\n event.preventDefault()\n option.onClick()\n }}\n >\n <FontAwesomeIcon\n icon={option.icon}\n className='crm-class-color-icon crm-class-slate-gray'\n />\n <small>{option.label}</small>\n </a>\n ) : (\n <a\n key={index}\n className='crm-class-dropdown-option'\n href={option.path}\n >\n <FontAwesomeIcon\n icon={option.icon}\n className='crm-class-color-icon crm-class-slate-gray'\n />\n <small>{option.label}</small>\n </a>\n )}\n </li>\n ))}\n </ul>\n </div>\n </div>\n )}\n </div>\n )\n}\n","import React from 'react'\n\n\ninterface Props {\n email: string;\n name: string;\n}\n\nexport default function UserInfo({ name, email }: Props) {\n return (\n <div className=\"crm-class-top-nav-bar-info-user\">\n <span className=\"crm-class-font-bold\" style={{fontSize: 13}}>{name} </span>\n <span style={{fontSize: 10}}>{email}</span>\n </div>\n )\n}\n","import React, { useState } from 'react'\n\nexport default function LanguageDropdown(props: { languages: string[], onChooseLanguage?: (language: string) => void, defaultValue: string }) {\n const valueLang = props.languages.includes(props.defaultValue) ? props.defaultValue : 'en';\n const [selectedLanguage, setSelectedLanguage] = useState<string>(\n valueLang\n );\n const [openLanguageDropdown, setOpenLanguageDropdown] = useState(false);\n\n const handleLanguageChange = (language: string) => {\n setSelectedLanguage(language);\n props.onChooseLanguage?.(language);\n setOpenLanguageDropdown(false);\n }\n\n return (\n <div className=\"crm-class-dropdown-flag crm-class-mr-20\">\n <span className=\"crm-class-content-flag\" onClick={() => setOpenLanguageDropdown(!openLanguageDropdown)} >\n <span \n style={{borderRadius: 30}} \n className={`crm-class-flag large ${selectedLanguage.toUpperCase()}`}></span>\n </span>\n\n {\n openLanguageDropdown && (\n <div className=\"crm-class-dropdown-menu\">\n <div className=\"crm-class-dropdown-title\">\n Choose Language\n </div>\n <h6 className=\"crm-class-dropdown-header\">Popular Languages</h6>\n {props.languages.map((language) => (\n <button\n key={language}\n type=\"button\"\n className={`crm-class-dropdown-item ${language === selectedLanguage ? 'selected' : ''}`}\n onClick={() => handleLanguageChange(language)}\n >\n <span\n className={` opacity-8 crm-class-flag large crm-class-mr-20 ${language.toUpperCase()}`}\n ></span>\n {language.toUpperCase()}\n </button>\n ))}\n </div>\n )\n }\n </div>\n )\n}\n","import { faIndent, faOutdent } from '@fortawesome/free-solid-svg-icons'\nimport { FontAwesomeIcon } from '@fortawesome/react-fontawesome'\nimport React from 'react'\nimport Dropdown, {\n DropdownOptionClick,\n DropdownOptionPath\n} from '../../dropdown/Dropdown'\nimport UserInfo from '../../contentMenuComponent/UserInfo'\nimport LanguageDropdown from '../../contentMenuComponent/LanguageDropdown'\n\ninterface Props {\n languages: string[],\n onChooseLanguage?: (language: string) => void,\n user: {\n name: string\n email: string\n },\n defaultValueLanguage: string,\n openSideBar: boolean,\n setOpenSideBar: React.Dispatch<React.SetStateAction<boolean>>,\n logoSrc?: string,\n onClickLogo?: () => void,\n dropdownOptions?: (DropdownOptionClick | DropdownOptionPath)[]\n}\n\nexport default function TopNavBarComponent(props: Props) {\n return (\n <div className='crm-class-top-nav-bar'>\n <div className='crm-class-flex-container'>\n {props.openSideBar ? (\n <FontAwesomeIcon\n icon={faOutdent}\n color='#3f6ad8'\n size='1x'\n className='crm-class-mr-20 crm-class-cursor-pointer'\n onClick={() => props.setOpenSideBar(false)}\n />\n ) : (\n <FontAwesomeIcon\n icon={faIndent}\n color='#3f6ad8'\n size='1x'\n className='crm-class-mr-20 crm-class-cursor-pointer'\n onClick={() => props.setOpenSideBar(true)}\n />\n )}\n <div className='crm-class-flex-container'>\n {/* <div className=\"crm-class-icon-container crm-class-mr-20\">\n <FontAwesomeIcon\n icon={faSearch}\n color=\"#3f6ad8\"\n className=\"\"\n size=\"1x\"\n />\n </div> */}\n\n <img\n src={props.logoSrc ?? 'https://via.placeholder.com/150'}\n style={{ height: '40px' }}\n className={props.onClickLogo ? 'crm-pointer' : ''}\n alt=''\n onClick={props.onClickLogo ?? undefined}\n />\n </div>\n </div>\n <div className='crm-class-top-nav-bar-options'>\n {/* */}\n\n <LanguageDropdown languages={props.languages} onChooseLanguage={props.onChooseLanguage} defaultValue={props.defaultValueLanguage} />\n\n <Dropdown\n options={props.dropdownOptions}\n startNameWord={props.user.name?.[0]}\n name={props.user.name}\n email={props.user.email}\n />\n <UserInfo name={props.user.name} email={props.user.email} />\n </div>\n </div>\n )\n}\n","export function uuidV4() {\n return ('' + 1e7 + -1e3 + -4e3 + -8e3 + -1e11).replace(/[018]/g, (c: any) =>\n (\n ((c ^ crypto.getRandomValues(new Uint8Array(1))[0]) & 15) >>\n (c / 4)\n ).toString(16)\n )\n}\n\nexport function getDataFromKey<T>(data: T, key: string): string {\n try {\n let val: any = data\n if (val[key]) return val[key]\n key.split('.').forEach((key) => {\n val = val[key]\n })\n return val as string\n } catch (e) {\n return (key.split('.').pop() ?? '') as string\n }\n}\n","import React, { useEffect, useMemo } from 'react'\nimport {\n faChevronDown,\n faChevronUp,\n IconDefinition\n} from '@fortawesome/free-solid-svg-icons'\nimport { FontAwesomeIcon } from '@fortawesome/react-fontawesome'\nimport { SidebarItemProps } from '../../../types/Common'\nimport { uuidV4 } from '../../../utils/utils'\nimport * as regularIcons from '@fortawesome/free-regular-svg-icons'\nimport * as solidIcons from '@fortawesome/free-solid-svg-icons'\n\nexport const iconsPath: Record<string, string> = {\n 'pe-7s-diamond': 'faGem',\n 'pe-7s-piggy': 'faPiggyBank',\n 'pe-7s-helm': 'faShip',\n 'pe-7s-hourglass': 'faHourglass',\n 'pe-7s-safe': 'faWallet',\n 'pe-7s-headphones': 'faHeadphones',\n 'pe-7s-next-2': 'faRectangleList',\n 'pe-7s-cloud-download': 'faCloudDownloadAlt',\n 'pe-7s-news-paper': 'faNewspaper',\n 'pe-7s-upload': 'faUpload',\n 'pe-7s-display1': 'faChartBar',\n 'pe-7s-settings': 'faCog'\n}\n\nconst SidebarItem = ({ \n route, \n isActive, \n idName,\n onClick,\n firstToggle,\n firstExpanded,\n setFirstExpanded\n}: \n SidebarItemProps\n) => {\n const {\n iconName = '',\n label,\n subRoutes = [],\n className,\n visible = true\n } = route\n\n const [activeIndex, setActiveIndex] = React.useState<string | null>(null);\n\n const toggleMenu2 = (index: string) => {\n setActiveIndex(index === activeIndex ? null : index);\n };\n\n const icon: IconDefinition = useMemo(() => {\n const name = iconsPath[iconName] || iconName\n return (\n (regularIcons as any)[name] ||\n (solidIcons as any)[name]\n )\n }, [])\n\n const firstToggle2 = (callback: (set: (value: React.SetStateAction<string | null>) => void) => void) => {\n callback(setActiveIndex);\n }\n\n useEffect(() => {\n firstToggle((set) => {\n if(route.expanded && firstExpanded) {\n set(idName);\n setFirstExpanded(false);\n }\n });\n\n }, []);\n \n\n if (!visible) {\n return null\n }\n\n return (\n <React.Fragment>\n <li\n className={`crm-class-sidebar-li ${className ?? ''}`}\n onClick={() => {\n onClick(idName);\n if (!route.subRoutes?.length) {\n route.action?.()\n }\n }}\n >\n {icon && (\n <span className='crm-class-mr-10'>\n <FontAwesomeIcon icon={icon} />\n </span>\n )}\n <span\n // onClick={route.subRoutes?.length ? undefined : route.action}\n style={isActive ? {fontWeight: '700'} : {}}\n className={`${route.selected ? 'crm-class-font-bold' : ''} `}\n >\n {label}\n </span>\n\n {!!subRoutes.length && (\n <span className='crm-class-ml-auto'>\n <FontAwesomeIcon\n icon={isActive ? faChevronUp : faChevronDown}\n className='crm-class-color-icon crm-class-font-10 crm-class-slate-gray'\n />\n </span>\n )}\n </li>\n \n <ul style={{display: !!subRoutes.length && isActive ? 'block' : 'none'}} className='crm-class-sidebar-sub-menu-list'>\n {subRoutes?.map((item) => (\n <SidebarItem \n key={uuidV4()} \n route={item} \n idName={item.label} \n isActive={activeIndex === item.label}\n onClick={toggleMenu2} \n firstToggle={firstToggle2}\n firstExpanded={firstExpanded}\n setFirstExpanded={setFirstExpanded}\n />\n ))}\n </ul>\n \n </React.Fragment>\n )\n}\n\nexport default SidebarItem\n","// import { IconDefinition } from '@fortawesome/free-solid-svg-icons'\n// import { FontAwesomeIcon } from '@fortawesome/react-fontawesome'\n\nimport { FontAwesomeIcon } from '@fortawesome/react-fontawesome'\nimport { Route } from '../../../types/Common'\nimport SidebarItem, { iconsPath } from './SidebarItem'\nimport React from 'react'\nimport * as regularIcons from '@fortawesome/free-regular-svg-icons'\nimport * as solidIcons from '@fortawesome/free-solid-svg-icons'\n\nconst SidebarComponent = (props: {\n routes: Route[]\n openSideBar: boolean\n setOpenSideBar: React.Dispatch<React.SetStateAction<boolean>>\n children: React.ReactNode\n path?: string\n}) => {\n const { routes, openSideBar, setOpenSideBar } = props\n const [activeIndex, setActiveIndex] = React.useState<string | null>(null)\n const [firstExpanded, setFirstExpanded] = React.useState<boolean>(true)\n const [isMobile, setIsMobile] = React.useState(false)\n\n React.useEffect(() => {\n const mediaQuery = window.matchMedia('(max-width: 500px)')\n\n const handleResize = () => {\n setIsMobile(mediaQuery.matches)\n }\n\n handleResize() //first execute\n mediaQuery.addEventListener('change', handleResize)\n\n return () => mediaQuery.removeEventListener('change', handleResize)\n }, [])\n\n React.useEffect(() => {\n setOpenSideBar(false)\n }, [props.path])\n\n const toggleMenu = (index: string) => {\n setActiveIndex(index === activeIndex ? null : index)\n }\n\n const firstToggle = (\n callback: (\n set: (value: React.SetStateAction<string | null>) => void\n ) => void\n ) => {\n callback(setActiveIndex)\n }\n\n function iconFa(iconName = '') {\n const name = iconsPath[iconName] || iconName\n return (regularIcons as any)[name] || (solidIcons as any)[name]\n }\n\n return (\n <div style={{ display: 'flex' }}>\n <div\n style={!isMobile ? (!openSideBar ? { width: '80px' } : {}) : {}}\n className={`crm-class-sidebar${openSideBar ? ' active' : ''}`}\n onMouseOver={() => setOpenSideBar(true)}\n onMouseOut={() => setOpenSideBar(false)}\n >\n {isMobile && (\n <button\n style={{\n position: 'absolute',\n top: 5,\n right: 15,\n background: 'transparent',\n border: 0,\n zIndex: 50\n }}\n onClick={() => setOpenSideBar(false)}\n type='button'\n >\n <FontAwesomeIcon\n style={{ fontSize: 25, color: '#3f6ad8' }}\n icon={regularIcons.faXmarkCircle}\n />\n </button>\n )}\n <ul\n className={\n !isMobile\n ? openSideBar\n ? `crm-class-sidebar-list`\n : `crm-class-sidebar-icons-content`\n : `crm-class-sidebar-list${openSideBar ? ' active' : ''}`\n }\n >\n {!isMobile ? (\n openSideBar ? (\n <span className='crm-class-title'>MENU</span>\n ) : (\n <div\n style={{\n backgroundColor: '#e0f3ff',\n height: '2px',\n borderRadius: '15px'\n }}\n ></div>\n )\n ) : (\n <span className='crm-class-title'>MENU</span>\n )}\n\n <div\n style={{\n display: !isMobile ? (openSideBar ? 'block' : 'none') : 'block'\n }}\n >\n {routes.map((route, index) => (\n <SidebarItem\n key={`route_${index}`}\n route={route}\n idName={route.label}\n isActive={activeIndex === route.label}\n onClick={toggleMenu}\n firstToggle={firstToggle}\n firstExpanded={firstExpanded}\n setFirstExpanded={setFirstExpanded}\n />\n ))}\n </div>\n\n <div\n style={{\n display: !isMobile ? (!openSideBar ? 'block' : 'none') : 'none'\n }}\n >\n {/* <ul className='crm-class-sidebar-icons-content'> */}\n {routes.map((route, index) => {\n const icon = iconFa(route.iconName)\n\n if (icon) {\n return (\n <li\n key={`route_${index}`}\n style={index === 0 ? { marginTop: 10 } : {}}\n >\n <span>\n <FontAwesomeIcon\n style={{ fontSize: 13, color: '#cacaca' }}\n icon={icon}\n />\n </span>\n </li>\n )\n }\n\n return <React.Fragment></React.Fragment>\n })}\n {/* </ul> */}\n </div>\n </ul>\n </div>\n <div className='crm-class-sidebar-content'>{props.children}</div>\n </div>\n )\n}\nexport default SidebarComponent\n","import { faGem } from '@fortawesome/free-regular-svg-icons'\nimport { Route } from '../../../../types/Common'\nimport { IconDefinition } from '@fortawesome/free-solid-svg-icons'\n\nexport interface View {\n path: string\n name: string\n root: string\n permission: string | string[]\n views?: View[]\n}\n\nexport const generateSubMenuData = (\n labels: View[],\n callBackPath: (v: View) => void,\n ruleSelection?: (v: View) => boolean\n): Route[] => {\n return labels.map((label) => ({\n label: label.name,\n className: 'crm-class-ml-20',\n action: () => callBackPath(label),\n path: label.path,\n selected: ruleSelection?.(label) || false,\n subRoutes: generateSubMenuData(\n label.views || [],\n callBackPath,\n ruleSelection\n )\n }))\n}\n\nexport const icons: Record<string, IconDefinition> = {\n diamond: faGem,\n default: faGem\n}\n","import React from 'react'\n\ninterface TranslateProviderProps<Config> {\n children: React.ReactNode\n locale: string\n translations: Config\n}\n\nexport const TranslateContext = React.createContext<{\n locale: string\n translations: Record<string, Record<string, string>>\n}>({\n locale: '',\n translations: {}\n})\n\nexport default function TranslateProvider<Config>(\n props: TranslateProviderProps<Config>\n) {\n const { children, ...value } = props\n\n return (\n <TranslateContext.Provider value={value as any}>\n {children}\n </TranslateContext.Provider>\n )\n}\n","import { useCallback, useContext } from 'react'\nimport { TranslateContext } from '../provider/TranslateProvider'\nimport { getDataFromKey } from '../utils/utils'\n\nconst useTranslate = (module?: string) => {\n const { translations: language, locale } = useContext(TranslateContext)\n\n const t = useCallback(\n (field = ''): string => {\n return getDataFromKey(\n module ? language[locale][module] : language[locale],\n field\n )\n },\n [language, locale]\n )\n return { t }\n}\n\nexport default useTranslate\n"],"names":["Dropdown","props","_useState","useState","isDropdownOpen","setIsDropdownOpen","toggleDropdown","React","className","onClick","startNameWord","toUpperCase","FontAwesomeIcon","icon","faChevronUp","faChevronDown","name","email","_props$options","options","map","option","index","style","marginTop","type","key","href","event","preventDefault","label","path","UserInfo","_ref","fontSize","LanguageDropdown","valueLang","languages","includes","defaultValue","selectedLanguage","setSelectedLanguage","_useState2","openLanguageDropdown","setOpenLanguageDropdown","handleLanguageChange","language","_props$onChooseLangua","onChooseLanguage","call","borderRadius","TopNavBarComponent","openSideBar","faOutdent","color","size","setOpenSideBar","faIndent","src","_props$logoSrc","logoSrc","height","onClickLogo","alt","_props$onClickLogo","undefined","defaultValueLanguage","dropdownOptions","_props$user$name","user","uuidV4","replace","c","crypto","getRandomValues","Uint8Array","toString","getDataFromKey","data","val","split","forEach","e","_key$split$pop","pop","iconsPath","SidebarItem","route","isActive","idName","firstToggle","firstExpanded","setFirstExpanded","_route$iconName","iconName","_route$subRoutes","subRoutes","_route$visible","visible","_React$useState","activeIndex","setActiveIndex","toggleMenu2","useMemo","regularIcons","solidIcons","firstToggle2","callback","useEffect","set","expanded","Fragment","_route$subRoutes2","length","_route$action","action","fontWeight","selected","display","item","SidebarComponent","routes","_React$useState2","_React$useState3","isMobile","setIsMobile","mediaQuery","window","matchMedia","handleResize","matches","addEventListener","removeEventListener","toggleMenu","iconFa","width","onMouseOver","onMouseOut","position","top","right","background","border","zIndex","backgroundColor","children","generateSubMenuData","labels","callBackPath","ruleSelection","views","icons","diamond","faGem","TranslateContext","createContext","locale","translations","TranslateProvider","value","_objectWithoutPropertiesLoose","_excluded","Provider","useTranslate","module","_useContext","useContext","t","useCallback","field"],"mappings":"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"}
@@ -5,53 +5,6 @@ import React, { useState, useMemo, useEffect, useContext, useCallback } from 're
5
5
  import * as regularIcons from '@fortawesome/free-regular-svg-icons';
6
6
  import { faXmarkCircle, faGem } from '@fortawesome/free-regular-svg-icons';
7
7
 
8
- function uuidV4() {
9
- return ('' + 1e7 + -1e3 + -4e3 + -8e3 + -1e11).replace(/[018]/g, function (c) {
10
- return (((c ^ crypto.getRandomValues(new Uint8Array(1))[0]) & 15) >> c / 4).toString(16);
11
- });
12
- }
13
- var colors = {
14
- A: '#FF5733',
15
- B: '#33FF57',
16
- C: '#5733FF',
17
- D: '#FF33B8',
18
- E: '#33B8FF',
19
- F: '#FFFF33',
20
- G: '#33FFFF',
21
- H: '#FF33A6',
22
- I: '#33A6FF',
23
- J: '#FF9033',
24
- K: '#3390FF',
25
- L: '#FF33F6',
26
- M: '#33F6FF',
27
- N: '#C833FF',
28
- O: '#33FFC8',
29
- P: '#FFC833',
30
- Q: '#33FF58',
31
- R: '#FF5833',
32
- S: '#58FF33',
33
- T: '#FF3358',
34
- U: '#3358FF',
35
- V: '#FF33D6',
36
- W: '#33D6FF',
37
- X: '#FF336A',
38
- Y: '#336AFF',
39
- Z: '#FFD633'
40
- };
41
- function getDataFromKey(data, key) {
42
- try {
43
- var val = data;
44
- if (val[key]) return val[key];
45
- key.split('.').forEach(function (key) {
46
- val = val[key];
47
- });
48
- return val;
49
- } catch (e) {
50
- var _key$split$pop;
51
- return (_key$split$pop = key.split('.').pop()) != null ? _key$split$pop : '';
52
- }
53
- }
54
-
55
8
  function Dropdown(props) {
56
9
  var _props$options;
57
10
  var _useState = useState(false),
@@ -64,10 +17,7 @@ function Dropdown(props) {
64
17
  className: 'crm-class-dropdown crm-class-mr-20',
65
18
  onClick: toggleDropdown
66
19
  }, React.createElement("span", {
67
- style: {
68
- background: colors[props.startNameWord.toUpperCase()]
69
- },
70
- className: 'crm-class-top-nav-bar-avatar'
20
+ className: "crm-class-top-nav-bar-avatar name-" + props.startNameWord.toUpperCase()
71
21
  }, props.startNameWord.toUpperCase()), React.createElement("span", {
72
22
  className: 'crm-class-ml-15'
73
23
  }, React.createElement(FontAwesomeIcon, {
@@ -228,6 +178,25 @@ function TopNavBarComponent(props) {
228
178
  })));
229
179
  }
230
180
 
181
+ function uuidV4() {
182
+ return ('' + 1e7 + -1e3 + -4e3 + -8e3 + -1e11).replace(/[018]/g, function (c) {
183
+ return (((c ^ crypto.getRandomValues(new Uint8Array(1))[0]) & 15) >> c / 4).toString(16);
184
+ });
185
+ }
186
+ function getDataFromKey(data, key) {
187
+ try {
188
+ var val = data;
189
+ if (val[key]) return val[key];
190
+ key.split('.').forEach(function (key) {
191
+ val = val[key];
192
+ });
193
+ return val;
194
+ } catch (e) {
195
+ var _key$split$pop;
196
+ return (_key$split$pop = key.split('.').pop()) != null ? _key$split$pop : '';
197
+ }
198
+ }
199
+
231
200
  var iconsPath = {
232
201
  'pe-7s-diamond': 'faGem',
233
202
  'pe-7s-piggy': 'faPiggyBank',
@@ -1 +1 @@
1
- {"version":3,"file":"index.modern.js","sources":["../src/utils/utils.ts","../src/components/dropdown/Dropdown.tsx","../src/components/contentMenuComponent/UserInfo.tsx","../src/components/contentMenuComponent/LanguageDropdown.tsx","../src/components/menu/TopNavBarComponent/TopNavBarComponent.tsx","../src/components/menu/sidebar/SidebarItem.tsx","../src/components/menu/sidebar/Sidebar.tsx","../src/components/menu/sidebar/subMenuComponent/SubMenuComponent.tsx","../src/provider/TranslateProvider.tsx","../src/hooks/useTranslate.ts"],"sourcesContent":["export function uuidV4() {\n return ('' + 1e7 + -1e3 + -4e3 + -8e3 + -1e11).replace(/[018]/g, (c: any) =>\n (\n ((c ^ crypto.getRandomValues(new Uint8Array(1))[0]) & 15) >>\n (c / 4)\n ).toString(16)\n )\n}\n\nexport const colors = {\n A: '#FF5733',\n B: '#33FF57',\n C: '#5733FF',\n D: '#FF33B8',\n E: '#33B8FF',\n F: '#FFFF33',\n G: '#33FFFF',\n H: '#FF33A6',\n I: '#33A6FF',\n J: '#FF9033',\n K: '#3390FF',\n L: '#FF33F6',\n M: '#33F6FF',\n N: '#C833FF',\n O: '#33FFC8',\n P: '#FFC833',\n Q: '#33FF58',\n R: '#FF5833',\n S: '#58FF33',\n T: '#FF3358',\n U: '#3358FF',\n V: '#FF33D6',\n W: '#33D6FF',\n X: '#FF336A',\n Y: '#336AFF',\n Z: '#FFD633'\n}\n\nexport function getDataFromKey<T>(data: T, key: string): string {\n try {\n let val: any = data\n if (val[key]) return val[key]\n key.split('.').forEach((key) => {\n val = val[key]\n })\n return val as string\n } catch (e) {\n return (key.split('.').pop() ?? '') as string\n }\n}\n","import React, { useState } from 'react'\nimport { FontAwesomeIcon } from '@fortawesome/react-fontawesome'\nimport {\n faChevronDown,\n faChevronUp,\n IconDefinition\n} from '@fortawesome/free-solid-svg-icons'\nimport { colors } from '../../utils/utils'\n\nexport interface DropdownOption {\n label: string,\n icon: IconDefinition\n}\n\nexport interface DropdownOptionPath extends DropdownOption {\n type: 'path'\n path: string\n}\n\nexport interface DropdownOptionClick extends DropdownOption {\n type: 'click'\n onClick: () => void\n}\n\nexport default function Dropdown(props: {\n startNameWord: string\n name: string\n email: string\n options?: (DropdownOptionClick | DropdownOptionPath)[]\n}) {\n const [isDropdownOpen, setIsDropdownOpen] = useState(false)\n\n const toggleDropdown = () => {\n setIsDropdownOpen(!isDropdownOpen)\n }\n\n return (\n <div\n className='crm-class-dropdown crm-class-mr-20'\n onClick={toggleDropdown}\n >\n <span\n style={{ background: (colors as any)[props.startNameWord.toUpperCase()] }}\n className='crm-class-top-nav-bar-avatar'\n >\n {props.startNameWord.toUpperCase()}\n </span>\n <span className='crm-class-ml-15'>\n <FontAwesomeIcon\n icon={isDropdownOpen ? faChevronUp : faChevronDown}\n className='crm-class-color-icon crm-class-slate-gray'\n />\n </span>\n {isDropdownOpen && (\n <div className='crm-class-dropdown-content'>\n <div className='crm-class-dropdown-header'>\n <div className='crm-class-dropdown-user-bg'></div>\n <div className='crm-class-dropdown-user-content'>\n <p className='crm-class-dropdown-user-name'>{props.name}</p>\n <p className='crm-class-dropdown-user-email'>{props.email}</p>\n </div>\n </div>\n <div className='crm-class-dropdown-options'>\n <ul>\n <li className='crm-class-dropdown-first-option'>Options</li>\n {props.options?.map((option, index) => (\n <li style={{ marginTop: '10px' }}>\n {option.type === 'click' ? (\n <a\n key={index}\n href={'none'}\n className='crm-class-dropdown-option'\n onClick={(event) => {\n event.preventDefault()\n option.onClick()\n }}\n >\n <FontAwesomeIcon\n icon={option.icon}\n className='crm-class-color-icon crm-class-slate-gray'\n />\n <small>{option.label}</small>\n </a>\n ) : (\n <a\n key={index}\n className='crm-class-dropdown-option'\n href={option.path}\n >\n <FontAwesomeIcon\n icon={option.icon}\n className='crm-class-color-icon crm-class-slate-gray'\n />\n <small>{option.label}</small>\n </a>\n )}\n </li>\n ))}\n </ul>\n </div>\n </div>\n )}\n </div>\n )\n}\n","import React from 'react'\n\n\ninterface Props {\n email: string;\n name: string;\n}\n\nexport default function UserInfo({ name, email }: Props) {\n return (\n <div className=\"crm-class-top-nav-bar-info-user\">\n <span className=\"crm-class-font-bold\" style={{fontSize: 13}}>{name} </span>\n <span style={{fontSize: 10}}>{email}</span>\n </div>\n )\n}\n","import React, { useState } from 'react'\n\nexport default function LanguageDropdown(props: { languages: string[], onChooseLanguage?: (language: string) => void, defaultValue: string }) {\n const valueLang = props.languages.includes(props.defaultValue) ? props.defaultValue : 'en';\n const [selectedLanguage, setSelectedLanguage] = useState<string>(\n valueLang\n );\n const [openLanguageDropdown, setOpenLanguageDropdown] = useState(false);\n\n const handleLanguageChange = (language: string) => {\n setSelectedLanguage(language);\n props.onChooseLanguage?.(language);\n setOpenLanguageDropdown(false);\n }\n\n return (\n <div className=\"crm-class-dropdown-flag crm-class-mr-20\">\n <span className=\"crm-class-content-flag\" onClick={() => setOpenLanguageDropdown(!openLanguageDropdown)} >\n <span \n style={{borderRadius: 30}} \n className={`crm-class-flag large ${selectedLanguage.toUpperCase()}`}></span>\n </span>\n\n {\n openLanguageDropdown && (\n <div className=\"crm-class-dropdown-menu\">\n <div className=\"crm-class-dropdown-title\">\n Choose Language\n </div>\n <h6 className=\"crm-class-dropdown-header\">Popular Languages</h6>\n {props.languages.map((language) => (\n <button\n key={language}\n type=\"button\"\n className={`crm-class-dropdown-item ${language === selectedLanguage ? 'selected' : ''}`}\n onClick={() => handleLanguageChange(language)}\n >\n <span\n className={` opacity-8 crm-class-flag large crm-class-mr-20 ${language.toUpperCase()}`}\n ></span>\n {language.toUpperCase()}\n </button>\n ))}\n </div>\n )\n }\n </div>\n )\n}\n","import { faIndent, faOutdent } from '@fortawesome/free-solid-svg-icons'\nimport { FontAwesomeIcon } from '@fortawesome/react-fontawesome'\nimport React from 'react'\nimport Dropdown, {\n DropdownOptionClick,\n DropdownOptionPath\n} from '../../dropdown/Dropdown'\nimport UserInfo from '../../contentMenuComponent/UserInfo'\nimport LanguageDropdown from '../../contentMenuComponent/LanguageDropdown'\n\ninterface Props {\n languages: string[],\n onChooseLanguage?: (language: string) => void,\n user: {\n name: string\n email: string\n },\n defaultValueLanguage: string,\n openSideBar: boolean,\n setOpenSideBar: React.Dispatch<React.SetStateAction<boolean>>,\n logoSrc?: string,\n onClickLogo?: () => void,\n dropdownOptions?: (DropdownOptionClick | DropdownOptionPath)[]\n}\n\nexport default function TopNavBarComponent(props: Props) {\n return (\n <div className='crm-class-top-nav-bar'>\n <div className='crm-class-flex-container'>\n {props.openSideBar ? (\n <FontAwesomeIcon\n icon={faOutdent}\n color='#3f6ad8'\n size='1x'\n className='crm-class-mr-20 crm-class-cursor-pointer'\n onClick={() => props.setOpenSideBar(false)}\n />\n ) : (\n <FontAwesomeIcon\n icon={faIndent}\n color='#3f6ad8'\n size='1x'\n className='crm-class-mr-20 crm-class-cursor-pointer'\n onClick={() => props.setOpenSideBar(true)}\n />\n )}\n <div className='crm-class-flex-container'>\n {/* <div className=\"crm-class-icon-container crm-class-mr-20\">\n <FontAwesomeIcon\n icon={faSearch}\n color=\"#3f6ad8\"\n className=\"\"\n size=\"1x\"\n />\n </div> */}\n\n <img\n src={props.logoSrc ?? 'https://via.placeholder.com/150'}\n style={{ height: '40px' }}\n className={props.onClickLogo ? 'crm-pointer' : ''}\n alt=''\n onClick={props.onClickLogo ?? undefined}\n />\n </div>\n </div>\n <div className='crm-class-top-nav-bar-options'>\n {/* */}\n\n <LanguageDropdown languages={props.languages} onChooseLanguage={props.onChooseLanguage} defaultValue={props.defaultValueLanguage} />\n\n <Dropdown\n options={props.dropdownOptions}\n startNameWord={props.user.name?.[0]}\n name={props.user.name}\n email={props.user.email}\n />\n <UserInfo name={props.user.name} email={props.user.email} />\n </div>\n </div>\n )\n}\n","import React, { useEffect, useMemo } from 'react'\nimport {\n faChevronDown,\n faChevronUp,\n IconDefinition\n} from '@fortawesome/free-solid-svg-icons'\nimport { FontAwesomeIcon } from '@fortawesome/react-fontawesome'\nimport { SidebarItemProps } from '../../../types/Common'\nimport { uuidV4 } from '../../../utils/utils'\nimport * as regularIcons from '@fortawesome/free-regular-svg-icons'\nimport * as solidIcons from '@fortawesome/free-solid-svg-icons'\n\nexport const iconsPath: Record<string, string> = {\n 'pe-7s-diamond': 'faGem',\n 'pe-7s-piggy': 'faPiggyBank',\n 'pe-7s-helm': 'faShip',\n 'pe-7s-hourglass': 'faHourglass',\n 'pe-7s-safe': 'faWallet',\n 'pe-7s-headphones': 'faHeadphones',\n 'pe-7s-next-2': 'faRectangleList',\n 'pe-7s-cloud-download': 'faCloudDownloadAlt',\n 'pe-7s-news-paper': 'faNewspaper',\n 'pe-7s-upload': 'faUpload',\n 'pe-7s-display1': 'faChartBar',\n 'pe-7s-settings': 'faCog'\n}\n\nconst SidebarItem = ({ \n route, \n isActive, \n idName,\n onClick,\n firstToggle,\n firstExpanded,\n setFirstExpanded\n}: \n SidebarItemProps\n) => {\n const {\n iconName = '',\n label,\n subRoutes = [],\n className,\n visible = true\n } = route\n\n const [activeIndex, setActiveIndex] = React.useState<string | null>(null);\n\n const toggleMenu2 = (index: string) => {\n setActiveIndex(index === activeIndex ? null : index);\n };\n\n const icon: IconDefinition = useMemo(() => {\n const name = iconsPath[iconName] || iconName\n return (\n (regularIcons as any)[name] ||\n (solidIcons as any)[name]\n )\n }, [])\n\n const firstToggle2 = (callback: (set: (value: React.SetStateAction<string | null>) => void) => void) => {\n callback(setActiveIndex);\n }\n\n useEffect(() => {\n firstToggle((set) => {\n if(route.expanded && firstExpanded) {\n set(idName);\n setFirstExpanded(false);\n }\n });\n\n }, []);\n \n\n if (!visible) {\n return null\n }\n\n return (\n <React.Fragment>\n <li\n className={`crm-class-sidebar-li ${className ?? ''}`}\n onClick={() => {\n onClick(idName);\n if (!route.subRoutes?.length) {\n route.action?.()\n }\n }}\n >\n {icon && (\n <span className='crm-class-mr-10'>\n <FontAwesomeIcon icon={icon} />\n </span>\n )}\n <span\n // onClick={route.subRoutes?.length ? undefined : route.action}\n style={isActive ? {fontWeight: '700'} : {}}\n className={`${route.selected ? 'crm-class-font-bold' : ''} `}\n >\n {label}\n </span>\n\n {!!subRoutes.length && (\n <span className='crm-class-ml-auto'>\n <FontAwesomeIcon\n icon={isActive ? faChevronUp : faChevronDown}\n className='crm-class-color-icon crm-class-font-10 crm-class-slate-gray'\n />\n </span>\n )}\n </li>\n \n <ul style={{display: !!subRoutes.length && isActive ? 'block' : 'none'}} className='crm-class-sidebar-sub-menu-list'>\n {subRoutes?.map((item) => (\n <SidebarItem \n key={uuidV4()} \n route={item} \n idName={item.label} \n isActive={activeIndex === item.label}\n onClick={toggleMenu2} \n firstToggle={firstToggle2}\n firstExpanded={firstExpanded}\n setFirstExpanded={setFirstExpanded}\n />\n ))}\n </ul>\n \n </React.Fragment>\n )\n}\n\nexport default SidebarItem\n","// import { IconDefinition } from '@fortawesome/free-solid-svg-icons'\n// import { FontAwesomeIcon } from '@fortawesome/react-fontawesome'\n\nimport { FontAwesomeIcon } from '@fortawesome/react-fontawesome'\nimport { Route } from '../../../types/Common'\nimport SidebarItem, { iconsPath } from './SidebarItem'\nimport React from 'react'\nimport * as regularIcons from '@fortawesome/free-regular-svg-icons'\nimport * as solidIcons from '@fortawesome/free-solid-svg-icons'\n\nconst SidebarComponent = (props: {\n routes: Route[]\n openSideBar: boolean\n setOpenSideBar: React.Dispatch<React.SetStateAction<boolean>>\n children: React.ReactNode\n path?: string\n}) => {\n const { routes, openSideBar, setOpenSideBar } = props\n const [activeIndex, setActiveIndex] = React.useState<string | null>(null)\n const [firstExpanded, setFirstExpanded] = React.useState<boolean>(true)\n const [isMobile, setIsMobile] = React.useState(false)\n\n React.useEffect(() => {\n const mediaQuery = window.matchMedia('(max-width: 500px)')\n\n const handleResize = () => {\n setIsMobile(mediaQuery.matches)\n }\n\n handleResize() //first execute\n mediaQuery.addEventListener('change', handleResize)\n\n return () => mediaQuery.removeEventListener('change', handleResize)\n }, [])\n\n React.useEffect(() => {\n setOpenSideBar(false)\n }, [props.path])\n\n const toggleMenu = (index: string) => {\n setActiveIndex(index === activeIndex ? null : index)\n }\n\n const firstToggle = (\n callback: (\n set: (value: React.SetStateAction<string | null>) => void\n ) => void\n ) => {\n callback(setActiveIndex)\n }\n\n function iconFa(iconName = '') {\n const name = iconsPath[iconName] || iconName\n return (regularIcons as any)[name] || (solidIcons as any)[name]\n }\n\n return (\n <div style={{ display: 'flex' }}>\n <div\n style={!isMobile ? (!openSideBar ? { width: '80px' } : {}) : {}}\n className={`crm-class-sidebar${openSideBar ? ' active' : ''}`}\n onMouseOver={() => setOpenSideBar(true)}\n onMouseOut={() => setOpenSideBar(false)}\n >\n {isMobile && (\n <button\n style={{\n position: 'absolute',\n top: 5,\n right: 15,\n background: 'transparent',\n border: 0,\n zIndex: 50\n }}\n onClick={() => setOpenSideBar(false)}\n type='button'\n >\n <FontAwesomeIcon\n style={{ fontSize: 25, color: '#3f6ad8' }}\n icon={regularIcons.faXmarkCircle}\n />\n </button>\n )}\n <ul\n className={\n !isMobile\n ? openSideBar\n ? `crm-class-sidebar-list`\n : `crm-class-sidebar-icons-content`\n : `crm-class-sidebar-list${openSideBar ? ' active' : ''}`\n }\n >\n {!isMobile ? (\n openSideBar ? (\n <span className='crm-class-title'>MENU</span>\n ) : (\n <div\n style={{\n backgroundColor: '#e0f3ff',\n height: '2px',\n borderRadius: '15px'\n }}\n ></div>\n )\n ) : (\n <span className='crm-class-title'>MENU</span>\n )}\n\n <div\n style={{\n display: !isMobile ? (openSideBar ? 'block' : 'none') : 'block'\n }}\n >\n {routes.map((route, index) => (\n <SidebarItem\n key={`route_${index}`}\n route={route}\n idName={route.label}\n isActive={activeIndex === route.label}\n onClick={toggleMenu}\n firstToggle={firstToggle}\n firstExpanded={firstExpanded}\n setFirstExpanded={setFirstExpanded}\n />\n ))}\n </div>\n\n <div\n style={{\n display: !isMobile ? (!openSideBar ? 'block' : 'none') : 'none'\n }}\n >\n {/* <ul className='crm-class-sidebar-icons-content'> */}\n {routes.map((route, index) => {\n const icon = iconFa(route.iconName)\n\n if (icon) {\n return (\n <li\n key={`route_${index}`}\n style={index === 0 ? { marginTop: 10 } : {}}\n >\n <span>\n <FontAwesomeIcon\n style={{ fontSize: 13, color: '#cacaca' }}\n icon={icon}\n />\n </span>\n </li>\n )\n }\n\n return <React.Fragment></React.Fragment>\n })}\n {/* </ul> */}\n </div>\n </ul>\n </div>\n <div className='crm-class-sidebar-content'>{props.children}</div>\n </div>\n )\n}\nexport default SidebarComponent\n","import { faGem } from '@fortawesome/free-regular-svg-icons'\nimport { Route } from '../../../../types/Common'\nimport { IconDefinition } from '@fortawesome/free-solid-svg-icons'\n\nexport interface View {\n path: string\n name: string\n root: string\n permission: string | string[]\n views?: View[]\n}\n\nexport const generateSubMenuData = (\n labels: View[],\n callBackPath: (v: View) => void,\n ruleSelection?: (v: View) => boolean\n): Route[] => {\n return labels.map((label) => ({\n label: label.name,\n className: 'crm-class-ml-20',\n action: () => callBackPath(label),\n path: label.path,\n selected: ruleSelection?.(label) || false,\n subRoutes: generateSubMenuData(\n label.views || [],\n callBackPath,\n ruleSelection\n )\n }))\n}\n\nexport const icons: Record<string, IconDefinition> = {\n diamond: faGem,\n default: faGem\n}\n","import React from 'react'\n\ninterface TranslateProviderProps<Config> {\n children: React.ReactNode\n locale: string\n translations: Config\n}\n\nexport const TranslateContext = React.createContext<{\n locale: string\n translations: Record<string, Record<string, string>>\n}>({\n locale: '',\n translations: {}\n})\n\nexport default function TranslateProvider<Config>(\n props: TranslateProviderProps<Config>\n) {\n const { children, ...value } = props\n\n return (\n <TranslateContext.Provider value={value as any}>\n {children}\n </TranslateContext.Provider>\n )\n}\n","import { useCallback, useContext } from 'react'\nimport { TranslateContext } from '../provider/TranslateProvider'\nimport { getDataFromKey } from '../utils/utils'\n\nconst useTranslate = (module?: string) => {\n const { translations: language, locale } = useContext(TranslateContext)\n\n const t = useCallback(\n (field = ''): string => {\n return getDataFromKey(\n module ? language[locale][module] : language[locale],\n field\n )\n },\n [language, locale]\n )\n return { t }\n}\n\nexport default useTranslate\n"],"names":["uuidV4","replace","c","crypto","getRandomValues","Uint8Array","toString","colors","A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z","getDataFromKey","data","key","val","split","forEach","e","_key$split$pop","pop","Dropdown","props","_useState","useState","isDropdownOpen","setIsDropdownOpen","toggleDropdown","React","className","onClick","style","background","startNameWord","toUpperCase","FontAwesomeIcon","icon","faChevronUp","faChevronDown","name","email","_props$options","options","map","option","index","marginTop","type","href","event","preventDefault","label","path","UserInfo","_ref","fontSize","LanguageDropdown","valueLang","languages","includes","defaultValue","selectedLanguage","setSelectedLanguage","_useState2","openLanguageDropdown","setOpenLanguageDropdown","handleLanguageChange","language","_props$onChooseLangua","onChooseLanguage","call","borderRadius","TopNavBarComponent","openSideBar","faOutdent","color","size","setOpenSideBar","faIndent","src","_props$logoSrc","logoSrc","height","onClickLogo","alt","_props$onClickLogo","undefined","defaultValueLanguage","dropdownOptions","_props$user$name","user","iconsPath","SidebarItem","route","isActive","idName","firstToggle","firstExpanded","setFirstExpanded","_route$iconName","iconName","_route$subRoutes","subRoutes","_route$visible","visible","_React$useState","activeIndex","setActiveIndex","toggleMenu2","useMemo","regularIcons","solidIcons","firstToggle2","callback","useEffect","set","expanded","Fragment","_route$subRoutes2","length","_route$action","action","fontWeight","selected","display","item","SidebarComponent","routes","_React$useState2","_React$useState3","isMobile","setIsMobile","mediaQuery","window","matchMedia","handleResize","matches","addEventListener","removeEventListener","toggleMenu","iconFa","width","onMouseOver","onMouseOut","position","top","right","border","zIndex","backgroundColor","children","generateSubMenuData","labels","callBackPath","ruleSelection","views","icons","diamond","faGem","TranslateContext","createContext","locale","translations","TranslateProvider","value","_objectWithoutPropertiesLoose","_excluded","Provider","useTranslate","module","_useContext","useContext","t","useCallback","field"],"mappings":"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"}
1
+ {"version":3,"file":"index.modern.js","sources":["../src/components/dropdown/Dropdown.tsx","../src/components/contentMenuComponent/UserInfo.tsx","../src/components/contentMenuComponent/LanguageDropdown.tsx","../src/components/menu/TopNavBarComponent/TopNavBarComponent.tsx","../src/utils/utils.ts","../src/components/menu/sidebar/SidebarItem.tsx","../src/components/menu/sidebar/Sidebar.tsx","../src/components/menu/sidebar/subMenuComponent/SubMenuComponent.tsx","../src/provider/TranslateProvider.tsx","../src/hooks/useTranslate.ts"],"sourcesContent":["import React, { useState } from 'react'\nimport { FontAwesomeIcon } from '@fortawesome/react-fontawesome'\nimport {\n faChevronDown,\n faChevronUp,\n IconDefinition\n} from '@fortawesome/free-solid-svg-icons'\n\nexport interface DropdownOption {\n label: string\n icon: IconDefinition\n}\n\nexport interface DropdownOptionPath extends DropdownOption {\n type: 'path'\n path: string\n}\n\nexport interface DropdownOptionClick extends DropdownOption {\n type: 'click'\n onClick: () => void\n}\n\nexport default function Dropdown(props: {\n startNameWord: string\n name: string\n email: string\n options?: (DropdownOptionClick | DropdownOptionPath)[]\n}) {\n const [isDropdownOpen, setIsDropdownOpen] = useState(false)\n\n const toggleDropdown = () => {\n setIsDropdownOpen(!isDropdownOpen)\n }\n\n return (\n <div\n className='crm-class-dropdown crm-class-mr-20'\n onClick={toggleDropdown}\n >\n <span\n className={`crm-class-top-nav-bar-avatar name-${props.startNameWord.toUpperCase()}`}\n >\n {props.startNameWord.toUpperCase()}\n </span>\n <span className='crm-class-ml-15'>\n <FontAwesomeIcon\n icon={isDropdownOpen ? faChevronUp : faChevronDown}\n className='crm-class-color-icon crm-class-slate-gray'\n />\n </span>\n {isDropdownOpen && (\n <div className='crm-class-dropdown-content'>\n <div className='crm-class-dropdown-header'>\n <div className='crm-class-dropdown-user-bg'></div>\n <div className='crm-class-dropdown-user-content'>\n <p className='crm-class-dropdown-user-name'>{props.name}</p>\n <p className='crm-class-dropdown-user-email'>{props.email}</p>\n </div>\n </div>\n <div className='crm-class-dropdown-options'>\n <ul>\n <li className='crm-class-dropdown-first-option'>Options</li>\n {props.options?.map((option, index) => (\n <li style={{ marginTop: '10px' }}>\n {option.type === 'click' ? (\n <a\n key={index}\n href={'none'}\n className='crm-class-dropdown-option'\n onClick={(event) => {\n event.preventDefault()\n option.onClick()\n }}\n >\n <FontAwesomeIcon\n icon={option.icon}\n className='crm-class-color-icon crm-class-slate-gray'\n />\n <small>{option.label}</small>\n </a>\n ) : (\n <a\n key={index}\n className='crm-class-dropdown-option'\n href={option.path}\n >\n <FontAwesomeIcon\n icon={option.icon}\n className='crm-class-color-icon crm-class-slate-gray'\n />\n <small>{option.label}</small>\n </a>\n )}\n </li>\n ))}\n </ul>\n </div>\n </div>\n )}\n </div>\n )\n}\n","import React from 'react'\n\n\ninterface Props {\n email: string;\n name: string;\n}\n\nexport default function UserInfo({ name, email }: Props) {\n return (\n <div className=\"crm-class-top-nav-bar-info-user\">\n <span className=\"crm-class-font-bold\" style={{fontSize: 13}}>{name} </span>\n <span style={{fontSize: 10}}>{email}</span>\n </div>\n )\n}\n","import React, { useState } from 'react'\n\nexport default function LanguageDropdown(props: { languages: string[], onChooseLanguage?: (language: string) => void, defaultValue: string }) {\n const valueLang = props.languages.includes(props.defaultValue) ? props.defaultValue : 'en';\n const [selectedLanguage, setSelectedLanguage] = useState<string>(\n valueLang\n );\n const [openLanguageDropdown, setOpenLanguageDropdown] = useState(false);\n\n const handleLanguageChange = (language: string) => {\n setSelectedLanguage(language);\n props.onChooseLanguage?.(language);\n setOpenLanguageDropdown(false);\n }\n\n return (\n <div className=\"crm-class-dropdown-flag crm-class-mr-20\">\n <span className=\"crm-class-content-flag\" onClick={() => setOpenLanguageDropdown(!openLanguageDropdown)} >\n <span \n style={{borderRadius: 30}} \n className={`crm-class-flag large ${selectedLanguage.toUpperCase()}`}></span>\n </span>\n\n {\n openLanguageDropdown && (\n <div className=\"crm-class-dropdown-menu\">\n <div className=\"crm-class-dropdown-title\">\n Choose Language\n </div>\n <h6 className=\"crm-class-dropdown-header\">Popular Languages</h6>\n {props.languages.map((language) => (\n <button\n key={language}\n type=\"button\"\n className={`crm-class-dropdown-item ${language === selectedLanguage ? 'selected' : ''}`}\n onClick={() => handleLanguageChange(language)}\n >\n <span\n className={` opacity-8 crm-class-flag large crm-class-mr-20 ${language.toUpperCase()}`}\n ></span>\n {language.toUpperCase()}\n </button>\n ))}\n </div>\n )\n }\n </div>\n )\n}\n","import { faIndent, faOutdent } from '@fortawesome/free-solid-svg-icons'\nimport { FontAwesomeIcon } from '@fortawesome/react-fontawesome'\nimport React from 'react'\nimport Dropdown, {\n DropdownOptionClick,\n DropdownOptionPath\n} from '../../dropdown/Dropdown'\nimport UserInfo from '../../contentMenuComponent/UserInfo'\nimport LanguageDropdown from '../../contentMenuComponent/LanguageDropdown'\n\ninterface Props {\n languages: string[],\n onChooseLanguage?: (language: string) => void,\n user: {\n name: string\n email: string\n },\n defaultValueLanguage: string,\n openSideBar: boolean,\n setOpenSideBar: React.Dispatch<React.SetStateAction<boolean>>,\n logoSrc?: string,\n onClickLogo?: () => void,\n dropdownOptions?: (DropdownOptionClick | DropdownOptionPath)[]\n}\n\nexport default function TopNavBarComponent(props: Props) {\n return (\n <div className='crm-class-top-nav-bar'>\n <div className='crm-class-flex-container'>\n {props.openSideBar ? (\n <FontAwesomeIcon\n icon={faOutdent}\n color='#3f6ad8'\n size='1x'\n className='crm-class-mr-20 crm-class-cursor-pointer'\n onClick={() => props.setOpenSideBar(false)}\n />\n ) : (\n <FontAwesomeIcon\n icon={faIndent}\n color='#3f6ad8'\n size='1x'\n className='crm-class-mr-20 crm-class-cursor-pointer'\n onClick={() => props.setOpenSideBar(true)}\n />\n )}\n <div className='crm-class-flex-container'>\n {/* <div className=\"crm-class-icon-container crm-class-mr-20\">\n <FontAwesomeIcon\n icon={faSearch}\n color=\"#3f6ad8\"\n className=\"\"\n size=\"1x\"\n />\n </div> */}\n\n <img\n src={props.logoSrc ?? 'https://via.placeholder.com/150'}\n style={{ height: '40px' }}\n className={props.onClickLogo ? 'crm-pointer' : ''}\n alt=''\n onClick={props.onClickLogo ?? undefined}\n />\n </div>\n </div>\n <div className='crm-class-top-nav-bar-options'>\n {/* */}\n\n <LanguageDropdown languages={props.languages} onChooseLanguage={props.onChooseLanguage} defaultValue={props.defaultValueLanguage} />\n\n <Dropdown\n options={props.dropdownOptions}\n startNameWord={props.user.name?.[0]}\n name={props.user.name}\n email={props.user.email}\n />\n <UserInfo name={props.user.name} email={props.user.email} />\n </div>\n </div>\n )\n}\n","export function uuidV4() {\n return ('' + 1e7 + -1e3 + -4e3 + -8e3 + -1e11).replace(/[018]/g, (c: any) =>\n (\n ((c ^ crypto.getRandomValues(new Uint8Array(1))[0]) & 15) >>\n (c / 4)\n ).toString(16)\n )\n}\n\nexport function getDataFromKey<T>(data: T, key: string): string {\n try {\n let val: any = data\n if (val[key]) return val[key]\n key.split('.').forEach((key) => {\n val = val[key]\n })\n return val as string\n } catch (e) {\n return (key.split('.').pop() ?? '') as string\n }\n}\n","import React, { useEffect, useMemo } from 'react'\nimport {\n faChevronDown,\n faChevronUp,\n IconDefinition\n} from '@fortawesome/free-solid-svg-icons'\nimport { FontAwesomeIcon } from '@fortawesome/react-fontawesome'\nimport { SidebarItemProps } from '../../../types/Common'\nimport { uuidV4 } from '../../../utils/utils'\nimport * as regularIcons from '@fortawesome/free-regular-svg-icons'\nimport * as solidIcons from '@fortawesome/free-solid-svg-icons'\n\nexport const iconsPath: Record<string, string> = {\n 'pe-7s-diamond': 'faGem',\n 'pe-7s-piggy': 'faPiggyBank',\n 'pe-7s-helm': 'faShip',\n 'pe-7s-hourglass': 'faHourglass',\n 'pe-7s-safe': 'faWallet',\n 'pe-7s-headphones': 'faHeadphones',\n 'pe-7s-next-2': 'faRectangleList',\n 'pe-7s-cloud-download': 'faCloudDownloadAlt',\n 'pe-7s-news-paper': 'faNewspaper',\n 'pe-7s-upload': 'faUpload',\n 'pe-7s-display1': 'faChartBar',\n 'pe-7s-settings': 'faCog'\n}\n\nconst SidebarItem = ({ \n route, \n isActive, \n idName,\n onClick,\n firstToggle,\n firstExpanded,\n setFirstExpanded\n}: \n SidebarItemProps\n) => {\n const {\n iconName = '',\n label,\n subRoutes = [],\n className,\n visible = true\n } = route\n\n const [activeIndex, setActiveIndex] = React.useState<string | null>(null);\n\n const toggleMenu2 = (index: string) => {\n setActiveIndex(index === activeIndex ? null : index);\n };\n\n const icon: IconDefinition = useMemo(() => {\n const name = iconsPath[iconName] || iconName\n return (\n (regularIcons as any)[name] ||\n (solidIcons as any)[name]\n )\n }, [])\n\n const firstToggle2 = (callback: (set: (value: React.SetStateAction<string | null>) => void) => void) => {\n callback(setActiveIndex);\n }\n\n useEffect(() => {\n firstToggle((set) => {\n if(route.expanded && firstExpanded) {\n set(idName);\n setFirstExpanded(false);\n }\n });\n\n }, []);\n \n\n if (!visible) {\n return null\n }\n\n return (\n <React.Fragment>\n <li\n className={`crm-class-sidebar-li ${className ?? ''}`}\n onClick={() => {\n onClick(idName);\n if (!route.subRoutes?.length) {\n route.action?.()\n }\n }}\n >\n {icon && (\n <span className='crm-class-mr-10'>\n <FontAwesomeIcon icon={icon} />\n </span>\n )}\n <span\n // onClick={route.subRoutes?.length ? undefined : route.action}\n style={isActive ? {fontWeight: '700'} : {}}\n className={`${route.selected ? 'crm-class-font-bold' : ''} `}\n >\n {label}\n </span>\n\n {!!subRoutes.length && (\n <span className='crm-class-ml-auto'>\n <FontAwesomeIcon\n icon={isActive ? faChevronUp : faChevronDown}\n className='crm-class-color-icon crm-class-font-10 crm-class-slate-gray'\n />\n </span>\n )}\n </li>\n \n <ul style={{display: !!subRoutes.length && isActive ? 'block' : 'none'}} className='crm-class-sidebar-sub-menu-list'>\n {subRoutes?.map((item) => (\n <SidebarItem \n key={uuidV4()} \n route={item} \n idName={item.label} \n isActive={activeIndex === item.label}\n onClick={toggleMenu2} \n firstToggle={firstToggle2}\n firstExpanded={firstExpanded}\n setFirstExpanded={setFirstExpanded}\n />\n ))}\n </ul>\n \n </React.Fragment>\n )\n}\n\nexport default SidebarItem\n","// import { IconDefinition } from '@fortawesome/free-solid-svg-icons'\n// import { FontAwesomeIcon } from '@fortawesome/react-fontawesome'\n\nimport { FontAwesomeIcon } from '@fortawesome/react-fontawesome'\nimport { Route } from '../../../types/Common'\nimport SidebarItem, { iconsPath } from './SidebarItem'\nimport React from 'react'\nimport * as regularIcons from '@fortawesome/free-regular-svg-icons'\nimport * as solidIcons from '@fortawesome/free-solid-svg-icons'\n\nconst SidebarComponent = (props: {\n routes: Route[]\n openSideBar: boolean\n setOpenSideBar: React.Dispatch<React.SetStateAction<boolean>>\n children: React.ReactNode\n path?: string\n}) => {\n const { routes, openSideBar, setOpenSideBar } = props\n const [activeIndex, setActiveIndex] = React.useState<string | null>(null)\n const [firstExpanded, setFirstExpanded] = React.useState<boolean>(true)\n const [isMobile, setIsMobile] = React.useState(false)\n\n React.useEffect(() => {\n const mediaQuery = window.matchMedia('(max-width: 500px)')\n\n const handleResize = () => {\n setIsMobile(mediaQuery.matches)\n }\n\n handleResize() //first execute\n mediaQuery.addEventListener('change', handleResize)\n\n return () => mediaQuery.removeEventListener('change', handleResize)\n }, [])\n\n React.useEffect(() => {\n setOpenSideBar(false)\n }, [props.path])\n\n const toggleMenu = (index: string) => {\n setActiveIndex(index === activeIndex ? null : index)\n }\n\n const firstToggle = (\n callback: (\n set: (value: React.SetStateAction<string | null>) => void\n ) => void\n ) => {\n callback(setActiveIndex)\n }\n\n function iconFa(iconName = '') {\n const name = iconsPath[iconName] || iconName\n return (regularIcons as any)[name] || (solidIcons as any)[name]\n }\n\n return (\n <div style={{ display: 'flex' }}>\n <div\n style={!isMobile ? (!openSideBar ? { width: '80px' } : {}) : {}}\n className={`crm-class-sidebar${openSideBar ? ' active' : ''}`}\n onMouseOver={() => setOpenSideBar(true)}\n onMouseOut={() => setOpenSideBar(false)}\n >\n {isMobile && (\n <button\n style={{\n position: 'absolute',\n top: 5,\n right: 15,\n background: 'transparent',\n border: 0,\n zIndex: 50\n }}\n onClick={() => setOpenSideBar(false)}\n type='button'\n >\n <FontAwesomeIcon\n style={{ fontSize: 25, color: '#3f6ad8' }}\n icon={regularIcons.faXmarkCircle}\n />\n </button>\n )}\n <ul\n className={\n !isMobile\n ? openSideBar\n ? `crm-class-sidebar-list`\n : `crm-class-sidebar-icons-content`\n : `crm-class-sidebar-list${openSideBar ? ' active' : ''}`\n }\n >\n {!isMobile ? (\n openSideBar ? (\n <span className='crm-class-title'>MENU</span>\n ) : (\n <div\n style={{\n backgroundColor: '#e0f3ff',\n height: '2px',\n borderRadius: '15px'\n }}\n ></div>\n )\n ) : (\n <span className='crm-class-title'>MENU</span>\n )}\n\n <div\n style={{\n display: !isMobile ? (openSideBar ? 'block' : 'none') : 'block'\n }}\n >\n {routes.map((route, index) => (\n <SidebarItem\n key={`route_${index}`}\n route={route}\n idName={route.label}\n isActive={activeIndex === route.label}\n onClick={toggleMenu}\n firstToggle={firstToggle}\n firstExpanded={firstExpanded}\n setFirstExpanded={setFirstExpanded}\n />\n ))}\n </div>\n\n <div\n style={{\n display: !isMobile ? (!openSideBar ? 'block' : 'none') : 'none'\n }}\n >\n {/* <ul className='crm-class-sidebar-icons-content'> */}\n {routes.map((route, index) => {\n const icon = iconFa(route.iconName)\n\n if (icon) {\n return (\n <li\n key={`route_${index}`}\n style={index === 0 ? { marginTop: 10 } : {}}\n >\n <span>\n <FontAwesomeIcon\n style={{ fontSize: 13, color: '#cacaca' }}\n icon={icon}\n />\n </span>\n </li>\n )\n }\n\n return <React.Fragment></React.Fragment>\n })}\n {/* </ul> */}\n </div>\n </ul>\n </div>\n <div className='crm-class-sidebar-content'>{props.children}</div>\n </div>\n )\n}\nexport default SidebarComponent\n","import { faGem } from '@fortawesome/free-regular-svg-icons'\nimport { Route } from '../../../../types/Common'\nimport { IconDefinition } from '@fortawesome/free-solid-svg-icons'\n\nexport interface View {\n path: string\n name: string\n root: string\n permission: string | string[]\n views?: View[]\n}\n\nexport const generateSubMenuData = (\n labels: View[],\n callBackPath: (v: View) => void,\n ruleSelection?: (v: View) => boolean\n): Route[] => {\n return labels.map((label) => ({\n label: label.name,\n className: 'crm-class-ml-20',\n action: () => callBackPath(label),\n path: label.path,\n selected: ruleSelection?.(label) || false,\n subRoutes: generateSubMenuData(\n label.views || [],\n callBackPath,\n ruleSelection\n )\n }))\n}\n\nexport const icons: Record<string, IconDefinition> = {\n diamond: faGem,\n default: faGem\n}\n","import React from 'react'\n\ninterface TranslateProviderProps<Config> {\n children: React.ReactNode\n locale: string\n translations: Config\n}\n\nexport const TranslateContext = React.createContext<{\n locale: string\n translations: Record<string, Record<string, string>>\n}>({\n locale: '',\n translations: {}\n})\n\nexport default function TranslateProvider<Config>(\n props: TranslateProviderProps<Config>\n) {\n const { children, ...value } = props\n\n return (\n <TranslateContext.Provider value={value as any}>\n {children}\n </TranslateContext.Provider>\n )\n}\n","import { useCallback, useContext } from 'react'\nimport { TranslateContext } from '../provider/TranslateProvider'\nimport { getDataFromKey } from '../utils/utils'\n\nconst useTranslate = (module?: string) => {\n const { translations: language, locale } = useContext(TranslateContext)\n\n const t = useCallback(\n (field = ''): string => {\n return getDataFromKey(\n module ? language[locale][module] : language[locale],\n field\n )\n },\n [language, locale]\n )\n return { t }\n}\n\nexport default useTranslate\n"],"names":["Dropdown","props","_useState","useState","isDropdownOpen","setIsDropdownOpen","toggleDropdown","React","className","onClick","startNameWord","toUpperCase","FontAwesomeIcon","icon","faChevronUp","faChevronDown","name","email","_props$options","options","map","option","index","style","marginTop","type","key","href","event","preventDefault","label","path","UserInfo","_ref","fontSize","LanguageDropdown","valueLang","languages","includes","defaultValue","selectedLanguage","setSelectedLanguage","_useState2","openLanguageDropdown","setOpenLanguageDropdown","handleLanguageChange","language","_props$onChooseLangua","onChooseLanguage","call","borderRadius","TopNavBarComponent","openSideBar","faOutdent","color","size","setOpenSideBar","faIndent","src","_props$logoSrc","logoSrc","height","onClickLogo","alt","_props$onClickLogo","undefined","defaultValueLanguage","dropdownOptions","_props$user$name","user","uuidV4","replace","c","crypto","getRandomValues","Uint8Array","toString","getDataFromKey","data","val","split","forEach","e","_key$split$pop","pop","iconsPath","SidebarItem","route","isActive","idName","firstToggle","firstExpanded","setFirstExpanded","_route$iconName","iconName","_route$subRoutes","subRoutes","_route$visible","visible","_React$useState","activeIndex","setActiveIndex","toggleMenu2","useMemo","regularIcons","solidIcons","firstToggle2","callback","useEffect","set","expanded","Fragment","_route$subRoutes2","length","_route$action","action","fontWeight","selected","display","item","SidebarComponent","routes","_React$useState2","_React$useState3","isMobile","setIsMobile","mediaQuery","window","matchMedia","handleResize","matches","addEventListener","removeEventListener","toggleMenu","iconFa","width","onMouseOver","onMouseOut","position","top","right","background","border","zIndex","backgroundColor","children","generateSubMenuData","labels","callBackPath","ruleSelection","views","icons","diamond","faGem","TranslateContext","createContext","locale","translations","TranslateProvider","value","_objectWithoutPropertiesLoose","_excluded","Provider","useTranslate","module","_useContext","useContext","t","useCallback","field"],"mappings":"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"}
@@ -1,30 +1,2 @@
1
1
  export declare function uuidV4(): string;
2
- export declare const colors: {
3
- A: string;
4
- B: string;
5
- C: string;
6
- D: string;
7
- E: string;
8
- F: string;
9
- G: string;
10
- H: string;
11
- I: string;
12
- J: string;
13
- K: string;
14
- L: string;
15
- M: string;
16
- N: string;
17
- O: string;
18
- P: string;
19
- Q: string;
20
- R: string;
21
- S: string;
22
- T: string;
23
- U: string;
24
- V: string;
25
- W: string;
26
- X: string;
27
- Y: string;
28
- Z: string;
29
- };
30
2
  export declare function getDataFromKey<T>(data: T, key: string): string;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "sbx-crm-menu-ui",
3
- "version": "2.1.4",
3
+ "version": "2.1.5",
4
4
  "description": "Menu Created by SBX Company for CRM.",
5
5
  "author": "Frank Carpio",
6
6
  "license": "ISC",