@x15ventures/x15-ui-library 3.17.0 → 3.18.0

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.
Files changed (217) hide show
  1. package/dist/cjs/autoGenerated/libraryThemes.js +12 -12
  2. package/dist/cjs/autoGenerated/libraryThemes.js.map +1 -1
  3. package/dist/cjs/autoGenerated/libraryThemes.json +12 -12
  4. package/dist/cjs/components/design/accordion/Accordion.js +7 -23
  5. package/dist/cjs/components/design/accordion/Accordion.js.map +1 -1
  6. package/dist/cjs/components/design/banners/pageBanner/PageBanner.js +2 -4
  7. package/dist/cjs/components/design/banners/pageBanner/PageBanner.js.map +1 -1
  8. package/dist/cjs/components/design/card/cardContent/CardContentLine.js +2 -2
  9. package/dist/cjs/components/design/card/cardContent/CardContentLine.js.map +1 -1
  10. package/dist/cjs/components/design/card/cardHeader/CardHeaderItem.js +2 -2
  11. package/dist/cjs/components/design/card/cardHeader/CardHeaderItem.js.map +1 -1
  12. package/dist/cjs/components/design/headerBar/HeaderBar.js +3 -3
  13. package/dist/cjs/components/design/headerBar/HeaderBar.js.map +1 -1
  14. package/dist/cjs/components/design/icons/notificationIcon/NotificationIcon.js +4 -5
  15. package/dist/cjs/components/design/icons/notificationIcon/NotificationIcon.js.map +1 -1
  16. package/dist/cjs/components/design/paginators/Paginator.js +4 -12
  17. package/dist/cjs/components/design/paginators/Paginator.js.map +1 -1
  18. package/dist/cjs/components/design/progressIndicators/circularProgressIndicator/CircularProgressIndicator.js +2 -1
  19. package/dist/cjs/components/design/progressIndicators/circularProgressIndicator/CircularProgressIndicator.js.map +1 -1
  20. package/dist/cjs/components/design/revealMore/RevealMoreBelow.js +1 -3
  21. package/dist/cjs/components/design/revealMore/RevealMoreBelow.js.map +1 -1
  22. package/dist/cjs/components/design/revealMore/RevealMoreInline.js +3 -5
  23. package/dist/cjs/components/design/revealMore/RevealMoreInline.js.map +1 -1
  24. package/dist/cjs/components/design/revealMore/types/revealMoreTypes.js.map +1 -1
  25. package/dist/cjs/components/design/sidePanel/SidePanel.js +3 -5
  26. package/dist/cjs/components/design/sidePanel/SidePanel.js.map +1 -1
  27. package/dist/cjs/components/design/statusIndicators/statusIconLabel/StatusIconLabel.js +6 -11
  28. package/dist/cjs/components/design/statusIndicators/statusIconLabel/StatusIconLabel.js.map +1 -1
  29. package/dist/cjs/components/design/tabs/Tabs.js +2 -2
  30. package/dist/cjs/components/design/tabs/Tabs.js.map +1 -1
  31. package/dist/cjs/components/design/themeLoader/ThemeLoader.js +2 -2
  32. package/dist/cjs/components/design/themeLoader/ThemeLoader.js.map +1 -1
  33. package/dist/cjs/components/design/tooltip/Tooltip.js +4 -11
  34. package/dist/cjs/components/design/tooltip/Tooltip.js.map +1 -1
  35. package/dist/cjs/components/form/buttons/SimpleButton.js +3 -3
  36. package/dist/cjs/components/form/buttons/SimpleButton.js.map +1 -1
  37. package/dist/cjs/components/form/buttons/button.interface.js.map +1 -1
  38. package/dist/cjs/components/form/formFields/formFieldWrapper/formFieldProps.js.map +1 -1
  39. package/dist/cjs/components/form/formFields/subComponents/inputs/checkbox/InputCheckbox.js +5 -5
  40. package/dist/cjs/components/form/formFields/subComponents/inputs/checkbox/InputCheckbox.js.map +1 -1
  41. package/dist/cjs/components/form/formFields/subComponents/inputs/checkbox/checkboxSwitch/CheckboxSwitch.js +176 -0
  42. package/dist/cjs/components/form/formFields/subComponents/inputs/checkbox/checkboxSwitch/CheckboxSwitch.js.map +1 -0
  43. package/dist/cjs/components/form/formFields/subComponents/inputs/checkbox/checkboxSwitch/_checkboxSwitchVariables.css +0 -0
  44. package/dist/cjs/components/form/formFields/subComponents/inputs/checkbox/checkboxSwitch/checkboxSwitch.css +306 -0
  45. package/dist/cjs/components/form/formFields/subComponents/inputs/checkbox/checkboxSwitch/checkboxSwitchProps.js +6 -0
  46. package/dist/cjs/components/form/formFields/subComponents/inputs/checkbox/checkboxSwitch/checkboxSwitchProps.js.map +1 -0
  47. package/dist/cjs/components/form/formFields/subComponents/inputs/checkbox/inputCheckboxProps.js.map +1 -1
  48. package/dist/cjs/components/form/formFields/subComponents/inputs/file/dragAndDrop/DragAndDropFileUpload.js +3 -5
  49. package/dist/cjs/components/form/formFields/subComponents/inputs/file/dragAndDrop/DragAndDropFileUpload.js.map +1 -1
  50. package/dist/cjs/components/form/formFields/subComponents/inputs/file/fileAttachmentList/FileAttachmentsList.js +12 -22
  51. package/dist/cjs/components/form/formFields/subComponents/inputs/file/fileAttachmentList/FileAttachmentsList.js.map +1 -1
  52. package/dist/cjs/components/form/formFields/subComponents/inputs/file/fileInputProps.js.map +1 -1
  53. package/dist/cjs/components/index.js +7 -0
  54. package/dist/cjs/components/index.js.map +1 -1
  55. package/dist/cjs/components/navigation/menu/Menu.interfaces.js.map +1 -1
  56. package/dist/cjs/components/navigation/menu/menuItemContent/MenuItemIcon.js +19 -31
  57. package/dist/cjs/components/navigation/menu/menuItemContent/MenuItemIcon.js.map +1 -1
  58. package/dist/cjs/helpers/iconHelpers.js +83 -0
  59. package/dist/cjs/helpers/iconHelpers.js.map +1 -0
  60. package/dist/cjs/helpers/index.js +43 -0
  61. package/dist/cjs/helpers/index.js.map +1 -1
  62. package/dist/cjs/helpers/objectHelpers.js +9 -2
  63. package/dist/cjs/helpers/objectHelpers.js.map +1 -1
  64. package/dist/cjs/index.js +57 -0
  65. package/dist/cjs/index.js.map +1 -1
  66. package/dist/cjs/interfaces/headerText.interface.js.map +1 -1
  67. package/dist/cjs/package.json +16 -28
  68. package/dist/cjs/styles/index.css +61 -0
  69. package/dist/cjs/styles/storybook/storybook.css +7 -0
  70. package/dist/cjs/styles/variables/cssVars/_darkModeVariables.css +21 -0
  71. package/dist/cjs/styles/variables/cssVars/_formVariables.css +40 -0
  72. package/dist/cjs/widgets/processLauncher/ProcessLauncher.js +3 -9
  73. package/dist/cjs/widgets/processLauncher/ProcessLauncher.js.map +1 -1
  74. package/dist/cjs/widgets/processLauncher/processLauncher.interfaces.js.map +1 -1
  75. package/dist/components/design/accordion/Accordion.d.ts +3 -2
  76. package/dist/components/design/accordion/Accordion.d.ts.map +1 -1
  77. package/dist/components/design/banners/pageBanner/PageBanner.d.ts +2 -1
  78. package/dist/components/design/banners/pageBanner/PageBanner.d.ts.map +1 -1
  79. package/dist/components/design/card/cardContent/CardContentLine.d.ts +2 -2
  80. package/dist/components/design/card/cardContent/CardContentLine.d.ts.map +1 -1
  81. package/dist/components/design/card/cardHeader/CardHeaderItem.d.ts +2 -2
  82. package/dist/components/design/card/cardHeader/CardHeaderItem.d.ts.map +1 -1
  83. package/dist/components/design/headerBar/HeaderBar.d.ts.map +1 -1
  84. package/dist/components/design/icons/notificationIcon/NotificationIcon.d.ts +2 -2
  85. package/dist/components/design/icons/notificationIcon/NotificationIcon.d.ts.map +1 -1
  86. package/dist/components/design/paginators/Paginator.d.ts +3 -2
  87. package/dist/components/design/paginators/Paginator.d.ts.map +1 -1
  88. package/dist/components/design/progressIndicators/circularProgressIndicator/CircularProgressIndicator.d.ts +2 -1
  89. package/dist/components/design/progressIndicators/circularProgressIndicator/CircularProgressIndicator.d.ts.map +1 -1
  90. package/dist/components/design/revealMore/RevealMoreBelow.d.ts.map +1 -1
  91. package/dist/components/design/revealMore/RevealMoreInline.d.ts.map +1 -1
  92. package/dist/components/design/revealMore/types/revealMoreTypes.d.ts +3 -2
  93. package/dist/components/design/revealMore/types/revealMoreTypes.d.ts.map +1 -1
  94. package/dist/components/design/sidePanel/SidePanel.d.ts +3 -2
  95. package/dist/components/design/sidePanel/SidePanel.d.ts.map +1 -1
  96. package/dist/components/design/statusIndicators/statusIconLabel/StatusIconLabel.d.ts +2 -2
  97. package/dist/components/design/statusIndicators/statusIconLabel/StatusIconLabel.d.ts.map +1 -1
  98. package/dist/components/design/tabs/Tabs.d.ts +3 -3
  99. package/dist/components/design/tabs/Tabs.d.ts.map +1 -1
  100. package/dist/components/design/tooltip/Tooltip.d.ts +5 -4
  101. package/dist/components/design/tooltip/Tooltip.d.ts.map +1 -1
  102. package/dist/components/form/buttons/SimpleButton.test.d.ts +5 -0
  103. package/dist/components/form/buttons/SimpleButton.test.d.ts.map +1 -0
  104. package/dist/components/form/buttons/button.interface.d.ts +3 -3
  105. package/dist/components/form/buttons/button.interface.d.ts.map +1 -1
  106. package/dist/components/form/formFields/formFieldWrapper/formFieldProps.d.ts +2 -1
  107. package/dist/components/form/formFields/formFieldWrapper/formFieldProps.d.ts.map +1 -1
  108. package/dist/components/form/formFields/subComponents/inputs/checkbox/checkboxSwitch/CheckboxSwitch.d.ts +29 -0
  109. package/dist/components/form/formFields/subComponents/inputs/checkbox/checkboxSwitch/CheckboxSwitch.d.ts.map +1 -0
  110. package/dist/components/form/formFields/subComponents/inputs/checkbox/checkboxSwitch/CheckboxSwitch.test.d.ts +5 -0
  111. package/dist/components/form/formFields/subComponents/inputs/checkbox/checkboxSwitch/CheckboxSwitch.test.d.ts.map +1 -0
  112. package/dist/components/form/formFields/subComponents/inputs/checkbox/checkboxSwitch/checkboxSwitchProps.d.ts +52 -0
  113. package/dist/components/form/formFields/subComponents/inputs/checkbox/checkboxSwitch/checkboxSwitchProps.d.ts.map +1 -0
  114. package/dist/components/form/formFields/subComponents/inputs/checkbox/inputCheckboxProps.d.ts +3 -3
  115. package/dist/components/form/formFields/subComponents/inputs/checkbox/inputCheckboxProps.d.ts.map +1 -1
  116. package/dist/components/form/formFields/subComponents/inputs/file/fileAttachmentList/FileAttachmentsList.d.ts.map +1 -1
  117. package/dist/components/form/formFields/subComponents/inputs/file/fileInputProps.d.ts +4 -3
  118. package/dist/components/form/formFields/subComponents/inputs/file/fileInputProps.d.ts.map +1 -1
  119. package/dist/components/index.d.ts +2 -0
  120. package/dist/components/index.d.ts.map +1 -1
  121. package/dist/components/navigation/menu/Menu.interfaces.d.ts +4 -3
  122. package/dist/components/navigation/menu/Menu.interfaces.d.ts.map +1 -1
  123. package/dist/components/navigation/menu/menuItemContent/MenuItemIcon.d.ts +2 -1
  124. package/dist/components/navigation/menu/menuItemContent/MenuItemIcon.d.ts.map +1 -1
  125. package/dist/components/navigation/menu/menuItemContent/MenuItemIcon.test.d.ts +5 -0
  126. package/dist/components/navigation/menu/menuItemContent/MenuItemIcon.test.d.ts.map +1 -0
  127. package/dist/esm/autoGenerated/libraryThemes.js +12 -12
  128. package/dist/esm/autoGenerated/libraryThemes.js.map +1 -1
  129. package/dist/esm/autoGenerated/libraryThemes.json +12 -12
  130. package/dist/esm/components/design/accordion/Accordion.js +7 -23
  131. package/dist/esm/components/design/accordion/Accordion.js.map +1 -1
  132. package/dist/esm/components/design/banners/pageBanner/PageBanner.js +2 -4
  133. package/dist/esm/components/design/banners/pageBanner/PageBanner.js.map +1 -1
  134. package/dist/esm/components/design/card/cardContent/CardContentLine.js +2 -2
  135. package/dist/esm/components/design/card/cardContent/CardContentLine.js.map +1 -1
  136. package/dist/esm/components/design/card/cardHeader/CardHeaderItem.js +2 -2
  137. package/dist/esm/components/design/card/cardHeader/CardHeaderItem.js.map +1 -1
  138. package/dist/esm/components/design/headerBar/HeaderBar.js +3 -3
  139. package/dist/esm/components/design/headerBar/HeaderBar.js.map +1 -1
  140. package/dist/esm/components/design/icons/notificationIcon/NotificationIcon.js +4 -5
  141. package/dist/esm/components/design/icons/notificationIcon/NotificationIcon.js.map +1 -1
  142. package/dist/esm/components/design/paginators/Paginator.js +4 -12
  143. package/dist/esm/components/design/paginators/Paginator.js.map +1 -1
  144. package/dist/esm/components/design/progressIndicators/circularProgressIndicator/CircularProgressIndicator.js +2 -1
  145. package/dist/esm/components/design/progressIndicators/circularProgressIndicator/CircularProgressIndicator.js.map +1 -1
  146. package/dist/esm/components/design/revealMore/RevealMoreBelow.js +1 -3
  147. package/dist/esm/components/design/revealMore/RevealMoreBelow.js.map +1 -1
  148. package/dist/esm/components/design/revealMore/RevealMoreInline.js +2 -4
  149. package/dist/esm/components/design/revealMore/RevealMoreInline.js.map +1 -1
  150. package/dist/esm/components/design/revealMore/types/revealMoreTypes.js.map +1 -1
  151. package/dist/esm/components/design/sidePanel/SidePanel.js +3 -5
  152. package/dist/esm/components/design/sidePanel/SidePanel.js.map +1 -1
  153. package/dist/esm/components/design/statusIndicators/statusIconLabel/StatusIconLabel.js +6 -11
  154. package/dist/esm/components/design/statusIndicators/statusIconLabel/StatusIconLabel.js.map +1 -1
  155. package/dist/esm/components/design/tabs/Tabs.js +2 -2
  156. package/dist/esm/components/design/tabs/Tabs.js.map +1 -1
  157. package/dist/esm/components/design/themeLoader/ThemeLoader.js +1 -1
  158. package/dist/esm/components/design/themeLoader/ThemeLoader.js.map +1 -1
  159. package/dist/esm/components/design/tooltip/Tooltip.js +4 -11
  160. package/dist/esm/components/design/tooltip/Tooltip.js.map +1 -1
  161. package/dist/esm/components/form/buttons/SimpleButton.js +3 -3
  162. package/dist/esm/components/form/buttons/SimpleButton.js.map +1 -1
  163. package/dist/esm/components/form/buttons/button.interface.js.map +1 -1
  164. package/dist/esm/components/form/formFields/formFieldWrapper/formFieldProps.js.map +1 -1
  165. package/dist/esm/components/form/formFields/subComponents/inputs/checkbox/InputCheckbox.js +5 -5
  166. package/dist/esm/components/form/formFields/subComponents/inputs/checkbox/InputCheckbox.js.map +1 -1
  167. package/dist/esm/components/form/formFields/subComponents/inputs/checkbox/checkboxSwitch/CheckboxSwitch.js +167 -0
  168. package/dist/esm/components/form/formFields/subComponents/inputs/checkbox/checkboxSwitch/CheckboxSwitch.js.map +1 -0
  169. package/dist/esm/components/form/formFields/subComponents/inputs/checkbox/checkboxSwitch/_checkboxSwitchVariables.css +0 -0
  170. package/dist/esm/components/form/formFields/subComponents/inputs/checkbox/checkboxSwitch/checkboxSwitch.css +306 -0
  171. package/dist/esm/components/form/formFields/subComponents/inputs/checkbox/checkboxSwitch/checkboxSwitchProps.js +2 -0
  172. package/dist/esm/components/form/formFields/subComponents/inputs/checkbox/checkboxSwitch/checkboxSwitchProps.js.map +1 -0
  173. package/dist/esm/components/form/formFields/subComponents/inputs/checkbox/inputCheckboxProps.js.map +1 -1
  174. package/dist/esm/components/form/formFields/subComponents/inputs/file/dragAndDrop/DragAndDropFileUpload.js +3 -5
  175. package/dist/esm/components/form/formFields/subComponents/inputs/file/dragAndDrop/DragAndDropFileUpload.js.map +1 -1
  176. package/dist/esm/components/form/formFields/subComponents/inputs/file/fileAttachmentList/FileAttachmentsList.js +12 -22
  177. package/dist/esm/components/form/formFields/subComponents/inputs/file/fileAttachmentList/FileAttachmentsList.js.map +1 -1
  178. package/dist/esm/components/form/formFields/subComponents/inputs/file/fileInputProps.js.map +1 -1
  179. package/dist/esm/components/index.js +1 -0
  180. package/dist/esm/components/index.js.map +1 -1
  181. package/dist/esm/components/navigation/menu/Menu.interfaces.js.map +1 -1
  182. package/dist/esm/components/navigation/menu/menuItemContent/MenuItemIcon.js +17 -30
  183. package/dist/esm/components/navigation/menu/menuItemContent/MenuItemIcon.js.map +1 -1
  184. package/dist/esm/helpers/iconHelpers.js +73 -0
  185. package/dist/esm/helpers/iconHelpers.js.map +1 -0
  186. package/dist/esm/helpers/index.js +2 -1
  187. package/dist/esm/helpers/index.js.map +1 -1
  188. package/dist/esm/helpers/objectHelpers.js +7 -3
  189. package/dist/esm/helpers/objectHelpers.js.map +1 -1
  190. package/dist/esm/index.js +3 -3
  191. package/dist/esm/index.js.map +1 -1
  192. package/dist/esm/interfaces/headerText.interface.js.map +1 -1
  193. package/dist/esm/package.json +16 -28
  194. package/dist/esm/styles/index.css +61 -0
  195. package/dist/esm/styles/storybook/storybook.css +7 -0
  196. package/dist/esm/styles/variables/cssVars/_darkModeVariables.css +21 -0
  197. package/dist/esm/styles/variables/cssVars/_formVariables.css +40 -0
  198. package/dist/esm/widgets/processLauncher/ProcessLauncher.js +4 -10
  199. package/dist/esm/widgets/processLauncher/ProcessLauncher.js.map +1 -1
  200. package/dist/esm/widgets/processLauncher/processLauncher.interfaces.js.map +1 -1
  201. package/dist/helpers/iconHelpers.d.ts +30 -0
  202. package/dist/helpers/iconHelpers.d.ts.map +1 -0
  203. package/dist/helpers/iconHelpers.test.d.ts +5 -0
  204. package/dist/helpers/iconHelpers.test.d.ts.map +1 -0
  205. package/dist/helpers/index.d.ts +4 -1
  206. package/dist/helpers/index.d.ts.map +1 -1
  207. package/dist/helpers/objectHelpers.d.ts +10 -3
  208. package/dist/helpers/objectHelpers.d.ts.map +1 -1
  209. package/dist/index.d.ts +6 -3
  210. package/dist/index.d.ts.map +1 -1
  211. package/dist/interfaces/headerText.interface.d.ts +3 -3
  212. package/dist/interfaces/headerText.interface.d.ts.map +1 -1
  213. package/dist/package.json +16 -28
  214. package/dist/widgets/processLauncher/processLauncher.interfaces.d.ts +3 -3
  215. package/dist/widgets/processLauncher/processLauncher.interfaces.d.ts.map +1 -1
  216. package/package.json +16 -28
  217. package/readme.md +0 -36
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["Accordion","Chip","Pill","Badge","Dialog","HeaderBar","Icon","NotificationIcon","VentureLogo","CreditSavvyLogo","HomeInLogo","KitLogo","DoshiiLogo","TruyuLogo","SidePanel","Skeleton","Spinner","StatusIconButton","StatusLight","StatusLightsBar","CircularProgressIndicator","Tabs","Tooltip","EllipsisTooltip","RevealMore","CopyText","Paginator","PageBanner","Banner","Alert","SimpleButton","Button","FormField","InputCheckbox","CheckboxInput","StyledRadioGroup","StyledRadioInput","StyledRadioLabel","HookFormWrapper","TextInput","EmailInput","FileInput","SearchInput","NumberInput","PhoneInput","UrlInput","PasswordInput","PasswordInputSignup","SelectDropdown","Combobox","Textarea","InputDate","DateInput","Card","ReportFooter","MainHeader","ThemeLoader","DevToolbar","ThemeSwitch","LoremIpsum","GlobalDashboard","Menu","PopupMenu","SearchPanelMenu","Link","TemplateForm","TemplateLoading","TemplateDashboard","TemplatePage","Select","Checkbox"],"sources":["../../../src/components/index.ts"],"sourcesContent":["'use client';\n\n// UI components\nexport { Accordion } from './design/accordion/Accordion';\nexport { Chip, Pill, Badge } from './design/chip/Chip';\nexport { Dialog } from './design/dialog/Dialog';\nexport { HeaderBar } from './design/headerBar/HeaderBar';\nexport { Icon } from './design/icons/basicIcon/Icon';\nexport { NotificationIcon } from './design/icons/notificationIcon/NotificationIcon';\nexport { VentureLogo } from './design/logos/VentureLogo';\n\nexport { CreditSavvyLogo } from './design/logos/ventures/credit-savvy-logo';\nexport { HomeInLogo } from './design/logos/ventures/home-in-logo';\nexport { KitLogo } from './design/logos/ventures/kit-logo';\nexport { DoshiiLogo } from './design/logos/ventures/doshii-logo';\nexport { TruyuLogo } from './design/logos/ventures/truyu-logo';\n\nexport { SidePanel } from './design/sidePanel/SidePanel';\nexport { Skeleton } from './design/skeleton/Skeleton';\nexport type { SkeletonProps } from './design/skeleton/Skeleton';\nexport { Spinner } from './design/spinner/Spinner';\n\nexport { StatusIconButton } from './design/statusIndicators/statusIconButton/StatusIconButton';\nexport { StatusLight } from './design/statusIndicators/statusLight/StatusLight';\nexport { StatusLightsBar } from './design/statusIndicators/statusLightsBar/StatusLightsBar';\nexport { CircularProgressIndicator } from './design/progressIndicators/circularProgressIndicator/CircularProgressIndicator';\nexport type { CircularProgressIndicatorProps } from './design/progressIndicators/circularProgressIndicator/CircularProgressIndicator';\n\nexport { Tabs } from './design/tabs/Tabs';\nexport { Tooltip } from './design/tooltip/Tooltip';\nexport { EllipsisTooltip } from './design/tooltip/ellipsisTooltip/EllipsisTooltip';\nexport { RevealMore } from './design/revealMore/RevealMore';\nexport { CopyText } from './design/copyText/CopyText';\nexport { Paginator } from './design/paginators/Paginator';\nexport { PageBanner, Banner, Alert } from './design/banners/pageBanner/PageBanner';\nexport type { PageBannerProps } from './design/banners/pageBanner/PageBanner';\n\n// Form components\nexport { SimpleButton, Button } from './form/buttons/SimpleButton';\nexport { FormField } from './form/formFields/formFieldWrapper/FormField';\nexport { InputCheckbox, CheckboxInput } from './form/formFields/subComponents/inputs/checkbox/InputCheckbox';\nexport { StyledRadioGroup } from './form/formFields/subComponents/inputs/radio/styled/StyledRadioGroup';\nexport { StyledRadioInput } from './form/formFields/subComponents/inputs/radio/styled/StyledRadioInput';\nexport { StyledRadioLabel } from './form/formFields/subComponents/inputs/radio/styled/StyledRadioLabel';\nexport { HookFormWrapper } from './form/hookFormWrapper/HookFormWrapper';\n\nexport {\n TextInput,\n EmailInput,\n FileInput,\n SearchInput,\n NumberInput,\n PhoneInput,\n UrlInput,\n PasswordInput,\n PasswordInputSignup,\n SelectDropdown,\n Combobox,\n Textarea\n} from './form/formFields/subComponents/InputVariants';\nexport type {\n FormComponentProps,\n DropdownSelectProps,\n PasswordInputProps\n} from './form/formFields/subComponents/InputVariants';\n\nexport {\n InputDate\n} from './form/formFields/subComponents/inputs/date/InputDate';\nexport { DateInput } from './form/formFields/subComponents/inputs/date/DateInput';\nexport type { StyledRadioGroupProps } from './form/formFields/subComponents/inputs/radio/radioInputsProps';\n\n// Layout\nexport { Card } from './design/card/Card';\nexport { ReportFooter } from './layout/footers/reports/ReportFooter';\nexport { MainHeader } from './layout/mainHeader/MainHeader';\n\nexport { ThemeLoader } from './design/themeLoader/ThemeLoader';\nexport type { ThemeStructure } from './design/themeLoader/ThemeLoader';\n\n// Testing\nexport { DevToolbar } from './testing/devToolbar/DevToolbar';\nexport { ThemeSwitch } from './testing/themeSwitch/ThemeSwitch';\nexport { LoremIpsum } from './testing/loremIpsum/LoremIpsum';\n\nexport { GlobalDashboard } from './layout/dashboard/layouts/globalDashboard/GlobalDashboard';\nexport { Menu } from './navigation/menu/Menu';\nexport { PopupMenu } from './navigation/popupMenu/PopupMenu';\nexport { SearchPanelMenu } from './navigation/searchPanelMenu/SearchPanelMenu';\nexport { Link } from './navigation/link/Link';\n\nexport type { MenuItemPropTypes, MenuButtonPropTypes, MenuItemIconStates } from './navigation/menu/Menu.interfaces';\n\n// Templates\nexport { TemplateForm } from './templates/templateForm/TemplateForm';\nexport type { TemplateFormProps } from './templates/templateForm/TemplateForm';\nexport { TemplateLoading } from './templates/templateLoading/TemplateLoading';\nexport type { TemplateLoadingProps } from './templates/templateLoading/TemplateLoading';\nexport { TemplateDashboard } from './templates/templateDashboard/TemplateDashboard';\nexport type { TemplateDashboardProps } from './templates/templateDashboard/TemplateDashboard';\nexport { TemplatePage } from './templates/templatePage/TemplatePage';\nexport type { TemplatePageProps } from './templates/templatePage/TemplatePage';\n\n// Aliases to match common libraries\nexport { SelectDropdown as Select } from './form/formFields/subComponents/InputVariants';\nexport { InputCheckbox as Checkbox } from './form/formFields/subComponents/inputs/checkbox/InputCheckbox';"],"mappings":"AAAA,YAAY;;AAEZ;AACA,SAASA,SAAS,QAAQ,8BAA8B;AACxD,SAASC,IAAI,EAAEC,IAAI,EAAEC,KAAK,QAAQ,oBAAoB;AACtD,SAASC,MAAM,QAAQ,wBAAwB;AAC/C,SAASC,SAAS,QAAQ,8BAA8B;AACxD,SAASC,IAAI,QAAQ,+BAA+B;AACpD,SAASC,gBAAgB,QAAQ,kDAAkD;AACnF,SAASC,WAAW,QAAQ,4BAA4B;AAExD,SAASC,eAAe,QAAQ,2CAA2C;AAC3E,SAASC,UAAU,QAAQ,sCAAsC;AACjE,SAASC,OAAO,QAAQ,kCAAkC;AAC1D,SAASC,UAAU,QAAQ,qCAAqC;AAChE,SAASC,SAAS,QAAQ,oCAAoC;AAE9D,SAASC,SAAS,QAAQ,8BAA8B;AACxD,SAASC,QAAQ,QAAQ,4BAA4B;AAErD,SAASC,OAAO,QAAQ,0BAA0B;AAElD,SAASC,gBAAgB,QAAQ,6DAA6D;AAC9F,SAASC,WAAW,QAAQ,mDAAmD;AAC/E,SAASC,eAAe,QAAQ,2DAA2D;AAC3F,SAASC,yBAAyB,QAAQ,iFAAiF;AAG3H,SAASC,IAAI,QAAQ,oBAAoB;AACzC,SAASC,OAAO,QAAQ,0BAA0B;AAClD,SAASC,eAAe,QAAQ,kDAAkD;AAClF,SAASC,UAAU,QAAQ,gCAAgC;AAC3D,SAASC,QAAQ,QAAQ,4BAA4B;AACrD,SAASC,SAAS,QAAQ,+BAA+B;AACzD,SAASC,UAAU,EAAEC,MAAM,EAAEC,KAAK,QAAQ,wCAAwC;AAGlF;AACA,SAASC,YAAY,EAAEC,MAAM,QAAQ,6BAA6B;AAClE,SAASC,SAAS,QAAQ,8CAA8C;AACxE,SAASC,aAAa,EAAEC,aAAa,QAAQ,+DAA+D;AAC5G,SAASC,gBAAgB,QAAQ,sEAAsE;AACvG,SAASC,gBAAgB,QAAQ,sEAAsE;AACvG,SAASC,gBAAgB,QAAQ,sEAAsE;AACvG,SAASC,eAAe,QAAQ,wCAAwC;AAExE,SACEC,SAAS,EACTC,UAAU,EACVC,SAAS,EACTC,WAAW,EACXC,WAAW,EACXC,UAAU,EACVC,QAAQ,EACRC,aAAa,EACbC,mBAAmB,EACnBC,cAAc,EACdC,QAAQ,EACRC,QAAQ,QACH,+CAA+C;AAOtD,SACEC,SAAS,QACJ,uDAAuD;AAC9D,SAASC,SAAS,QAAQ,uDAAuD;AAGjF;AACA,SAASC,IAAI,QAAQ,oBAAoB;AACzC,SAASC,YAAY,QAAQ,uCAAuC;AACpE,SAASC,UAAU,QAAQ,gCAAgC;AAE3D,SAASC,WAAW,QAAQ,kCAAkC;AAG9D;AACA,SAASC,UAAU,QAAQ,iCAAiC;AAC5D,SAASC,WAAW,QAAQ,mCAAmC;AAC/D,SAASC,UAAU,QAAQ,iCAAiC;AAE5D,SAASC,eAAe,QAAQ,4DAA4D;AAC5F,SAASC,IAAI,QAAQ,wBAAwB;AAC7C,SAASC,SAAS,QAAQ,kCAAkC;AAC5D,SAASC,eAAe,QAAQ,8CAA8C;AAC9E,SAASC,IAAI,QAAQ,wBAAwB;AAI7C;AACA,SAASC,YAAY,QAAQ,uCAAuC;AAEpE,SAASC,eAAe,QAAQ,6CAA6C;AAE7E,SAASC,iBAAiB,QAAQ,iDAAiD;AAEnF,SAASC,YAAY,QAAQ,uCAAuC;AAGpE;AACA,SAASpB,cAAc,IAAIqB,MAAM,QAAQ,+CAA+C;AACxF,SAASpC,aAAa,IAAIqC,QAAQ,QAAQ,+DAA+D","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["Accordion","Chip","Pill","Badge","Dialog","HeaderBar","Icon","NotificationIcon","VentureLogo","CreditSavvyLogo","HomeInLogo","KitLogo","DoshiiLogo","TruyuLogo","SidePanel","Skeleton","Spinner","StatusIconButton","StatusLight","StatusLightsBar","CircularProgressIndicator","Tabs","Tooltip","EllipsisTooltip","RevealMore","CopyText","Paginator","PageBanner","Banner","Alert","SimpleButton","Button","FormField","InputCheckbox","CheckboxInput","CheckboxSwitch","StyledRadioGroup","StyledRadioInput","StyledRadioLabel","HookFormWrapper","TextInput","EmailInput","FileInput","SearchInput","NumberInput","PhoneInput","UrlInput","PasswordInput","PasswordInputSignup","SelectDropdown","Combobox","Textarea","InputDate","DateInput","Card","ReportFooter","MainHeader","ThemeLoader","DevToolbar","ThemeSwitch","LoremIpsum","GlobalDashboard","Menu","PopupMenu","SearchPanelMenu","Link","TemplateForm","TemplateLoading","TemplateDashboard","TemplatePage","Select","Checkbox"],"sources":["../../../src/components/index.ts"],"sourcesContent":["'use client';\n\n// UI components\nexport { Accordion } from './design/accordion/Accordion';\nexport { Chip, Pill, Badge } from './design/chip/Chip';\nexport { Dialog } from './design/dialog/Dialog';\nexport { HeaderBar } from './design/headerBar/HeaderBar';\nexport { Icon } from './design/icons/basicIcon/Icon';\nexport { NotificationIcon } from './design/icons/notificationIcon/NotificationIcon';\nexport { VentureLogo } from './design/logos/VentureLogo';\n\nexport { CreditSavvyLogo } from './design/logos/ventures/credit-savvy-logo';\nexport { HomeInLogo } from './design/logos/ventures/home-in-logo';\nexport { KitLogo } from './design/logos/ventures/kit-logo';\nexport { DoshiiLogo } from './design/logos/ventures/doshii-logo';\nexport { TruyuLogo } from './design/logos/ventures/truyu-logo';\n\nexport { SidePanel } from './design/sidePanel/SidePanel';\nexport { Skeleton } from './design/skeleton/Skeleton';\nexport type { SkeletonProps } from './design/skeleton/Skeleton';\nexport { Spinner } from './design/spinner/Spinner';\n\nexport { StatusIconButton } from './design/statusIndicators/statusIconButton/StatusIconButton';\nexport { StatusLight } from './design/statusIndicators/statusLight/StatusLight';\nexport { StatusLightsBar } from './design/statusIndicators/statusLightsBar/StatusLightsBar';\nexport { CircularProgressIndicator } from './design/progressIndicators/circularProgressIndicator/CircularProgressIndicator';\nexport type { CircularProgressIndicatorProps } from './design/progressIndicators/circularProgressIndicator/CircularProgressIndicator';\n\nexport { Tabs } from './design/tabs/Tabs';\nexport { Tooltip } from './design/tooltip/Tooltip';\nexport { EllipsisTooltip } from './design/tooltip/ellipsisTooltip/EllipsisTooltip';\nexport { RevealMore } from './design/revealMore/RevealMore';\nexport { CopyText } from './design/copyText/CopyText';\nexport { Paginator } from './design/paginators/Paginator';\nexport { PageBanner, Banner, Alert } from './design/banners/pageBanner/PageBanner';\nexport type { PageBannerProps } from './design/banners/pageBanner/PageBanner';\n\n// Form components\nexport { SimpleButton, Button } from './form/buttons/SimpleButton';\nexport { FormField } from './form/formFields/formFieldWrapper/FormField';\nexport { InputCheckbox, CheckboxInput } from './form/formFields/subComponents/inputs/checkbox/InputCheckbox';\nexport { CheckboxSwitch } from './form/formFields/subComponents/inputs/checkbox/checkboxSwitch/CheckboxSwitch';\nexport { StyledRadioGroup } from './form/formFields/subComponents/inputs/radio/styled/StyledRadioGroup';\nexport { StyledRadioInput } from './form/formFields/subComponents/inputs/radio/styled/StyledRadioInput';\nexport { StyledRadioLabel } from './form/formFields/subComponents/inputs/radio/styled/StyledRadioLabel';\nexport { HookFormWrapper } from './form/hookFormWrapper/HookFormWrapper';\n\nexport {\n TextInput,\n EmailInput,\n FileInput,\n SearchInput,\n NumberInput,\n PhoneInput,\n UrlInput,\n PasswordInput,\n PasswordInputSignup,\n SelectDropdown,\n Combobox,\n Textarea\n} from './form/formFields/subComponents/InputVariants';\nexport type {\n FormComponentProps,\n DropdownSelectProps,\n PasswordInputProps\n} from './form/formFields/subComponents/InputVariants';\n\nexport {\n InputDate\n} from './form/formFields/subComponents/inputs/date/InputDate';\nexport { DateInput } from './form/formFields/subComponents/inputs/date/DateInput';\nexport type { StyledRadioGroupProps } from './form/formFields/subComponents/inputs/radio/radioInputsProps';\nexport type {\n CheckboxSwitchProps,\n CheckboxSwitchSize,\n CheckboxSwitchVariant,\n CheckboxSwitchShape,\n CheckboxSwitchStateDisplay,\n CheckboxSwitchGlowTheme,\n CheckboxSwitchButtonStyle,\n CheckboxSwitchStateProps\n} from './form/formFields/subComponents/inputs/checkbox/checkboxSwitch/checkboxSwitchProps';\n\n// Layout\nexport { Card } from './design/card/Card';\nexport { ReportFooter } from './layout/footers/reports/ReportFooter';\nexport { MainHeader } from './layout/mainHeader/MainHeader';\n\nexport { ThemeLoader } from './design/themeLoader/ThemeLoader';\nexport type { ThemeStructure } from './design/themeLoader/ThemeLoader';\n\n// Testing\nexport { DevToolbar } from './testing/devToolbar/DevToolbar';\nexport { ThemeSwitch } from './testing/themeSwitch/ThemeSwitch';\nexport { LoremIpsum } from './testing/loremIpsum/LoremIpsum';\n\nexport { GlobalDashboard } from './layout/dashboard/layouts/globalDashboard/GlobalDashboard';\nexport { Menu } from './navigation/menu/Menu';\nexport { PopupMenu } from './navigation/popupMenu/PopupMenu';\nexport { SearchPanelMenu } from './navigation/searchPanelMenu/SearchPanelMenu';\nexport { Link } from './navigation/link/Link';\n\nexport type { MenuItemPropTypes, MenuButtonPropTypes, MenuItemIconStates } from './navigation/menu/Menu.interfaces';\n\n// Templates\nexport { TemplateForm } from './templates/templateForm/TemplateForm';\nexport type { TemplateFormProps } from './templates/templateForm/TemplateForm';\nexport { TemplateLoading } from './templates/templateLoading/TemplateLoading';\nexport type { TemplateLoadingProps } from './templates/templateLoading/TemplateLoading';\nexport { TemplateDashboard } from './templates/templateDashboard/TemplateDashboard';\nexport type { TemplateDashboardProps } from './templates/templateDashboard/TemplateDashboard';\nexport { TemplatePage } from './templates/templatePage/TemplatePage';\nexport type { TemplatePageProps } from './templates/templatePage/TemplatePage';\n\n// Aliases to match common libraries\nexport { SelectDropdown as Select } from './form/formFields/subComponents/InputVariants';\nexport { InputCheckbox as Checkbox } from './form/formFields/subComponents/inputs/checkbox/InputCheckbox';"],"mappings":"AAAA,YAAY;;AAEZ;AACA,SAASA,SAAS,QAAQ,8BAA8B;AACxD,SAASC,IAAI,EAAEC,IAAI,EAAEC,KAAK,QAAQ,oBAAoB;AACtD,SAASC,MAAM,QAAQ,wBAAwB;AAC/C,SAASC,SAAS,QAAQ,8BAA8B;AACxD,SAASC,IAAI,QAAQ,+BAA+B;AACpD,SAASC,gBAAgB,QAAQ,kDAAkD;AACnF,SAASC,WAAW,QAAQ,4BAA4B;AAExD,SAASC,eAAe,QAAQ,2CAA2C;AAC3E,SAASC,UAAU,QAAQ,sCAAsC;AACjE,SAASC,OAAO,QAAQ,kCAAkC;AAC1D,SAASC,UAAU,QAAQ,qCAAqC;AAChE,SAASC,SAAS,QAAQ,oCAAoC;AAE9D,SAASC,SAAS,QAAQ,8BAA8B;AACxD,SAASC,QAAQ,QAAQ,4BAA4B;AAErD,SAASC,OAAO,QAAQ,0BAA0B;AAElD,SAASC,gBAAgB,QAAQ,6DAA6D;AAC9F,SAASC,WAAW,QAAQ,mDAAmD;AAC/E,SAASC,eAAe,QAAQ,2DAA2D;AAC3F,SAASC,yBAAyB,QAAQ,iFAAiF;AAG3H,SAASC,IAAI,QAAQ,oBAAoB;AACzC,SAASC,OAAO,QAAQ,0BAA0B;AAClD,SAASC,eAAe,QAAQ,kDAAkD;AAClF,SAASC,UAAU,QAAQ,gCAAgC;AAC3D,SAASC,QAAQ,QAAQ,4BAA4B;AACrD,SAASC,SAAS,QAAQ,+BAA+B;AACzD,SAASC,UAAU,EAAEC,MAAM,EAAEC,KAAK,QAAQ,wCAAwC;AAGlF;AACA,SAASC,YAAY,EAAEC,MAAM,QAAQ,6BAA6B;AAClE,SAASC,SAAS,QAAQ,8CAA8C;AACxE,SAASC,aAAa,EAAEC,aAAa,QAAQ,+DAA+D;AAC5G,SAASC,cAAc,QAAQ,+EAA+E;AAC9G,SAASC,gBAAgB,QAAQ,sEAAsE;AACvG,SAASC,gBAAgB,QAAQ,sEAAsE;AACvG,SAASC,gBAAgB,QAAQ,sEAAsE;AACvG,SAASC,eAAe,QAAQ,wCAAwC;AAExE,SACEC,SAAS,EACTC,UAAU,EACVC,SAAS,EACTC,WAAW,EACXC,WAAW,EACXC,UAAU,EACVC,QAAQ,EACRC,aAAa,EACbC,mBAAmB,EACnBC,cAAc,EACdC,QAAQ,EACRC,QAAQ,QACH,+CAA+C;AAOtD,SACEC,SAAS,QACJ,uDAAuD;AAC9D,SAASC,SAAS,QAAQ,uDAAuD;AAajF;AACA,SAASC,IAAI,QAAQ,oBAAoB;AACzC,SAASC,YAAY,QAAQ,uCAAuC;AACpE,SAASC,UAAU,QAAQ,gCAAgC;AAE3D,SAASC,WAAW,QAAQ,kCAAkC;AAG9D;AACA,SAASC,UAAU,QAAQ,iCAAiC;AAC5D,SAASC,WAAW,QAAQ,mCAAmC;AAC/D,SAASC,UAAU,QAAQ,iCAAiC;AAE5D,SAASC,eAAe,QAAQ,4DAA4D;AAC5F,SAASC,IAAI,QAAQ,wBAAwB;AAC7C,SAASC,SAAS,QAAQ,kCAAkC;AAC5D,SAASC,eAAe,QAAQ,8CAA8C;AAC9E,SAASC,IAAI,QAAQ,wBAAwB;AAI7C;AACA,SAASC,YAAY,QAAQ,uCAAuC;AAEpE,SAASC,eAAe,QAAQ,6CAA6C;AAE7E,SAASC,iBAAiB,QAAQ,iDAAiD;AAEnF,SAASC,YAAY,QAAQ,uCAAuC;AAGpE;AACA,SAASpB,cAAc,IAAIqB,MAAM,QAAQ,+CAA+C;AACxF,SAASrC,aAAa,IAAIsC,QAAQ,QAAQ,+DAA+D","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"Menu.interfaces.js","names":[],"sources":["../../../../../src/components/navigation/menu/Menu.interfaces.ts"],"sourcesContent":["import { ReactElement, ReactNode } from 'react';\nimport { GenericFunction } from '../../../interfaces';\n\nexport type MenuItemIconStates = {\n open: string,\n closed: string\n}\n\nexport type MenuItemIconPropTypes = string | ReactElement | MenuItemIconStates;\n\nexport type MenuItemIconsPropTypes = {\n left?: MenuItemIconPropTypes,\n right?: MenuItemIconPropTypes\n};\n\nexport interface MenuButtonPropTypes {\n url?: string;\n isOpen?: boolean;\n icons?: MenuItemIconsPropTypes;\n label: string | ReactElement | ReactNode;\n hideLabel?: boolean;\n onSelect?: GenericFunction;\n hideItem?: boolean;\n isActive?: boolean;\n customCssClass?: string;\n route?: string;\n path?: number[];\n id: string;\n menuItems?: MenuItemPropTypes[];\n}\n\nexport interface MenuItemPropTypes extends MenuButtonPropTypes {\n menuItems?: MenuItemPropTypes[];\n}\n"],"mappings":"","ignoreList":[]}
1
+ {"version":3,"file":"Menu.interfaces.js","names":[],"sources":["../../../../../src/components/navigation/menu/Menu.interfaces.ts"],"sourcesContent":["import { ReactElement, ReactNode } from 'react';\nimport { GenericFunction } from '../../../interfaces';\nimport { IconSource } from '../../../helpers/iconHelpers';\n\nexport type MenuItemIconStates = {\n open: IconSource,\n closed: IconSource\n}\n\nexport type MenuItemIconPropTypes = IconSource | MenuItemIconStates;\n\nexport type MenuItemIconsPropTypes = {\n left?: MenuItemIconPropTypes,\n right?: MenuItemIconPropTypes\n};\n\nexport interface MenuButtonPropTypes {\n url?: string;\n isOpen?: boolean;\n icons?: MenuItemIconsPropTypes;\n label: string | ReactElement | ReactNode;\n hideLabel?: boolean;\n onSelect?: GenericFunction;\n hideItem?: boolean;\n isActive?: boolean;\n customCssClass?: string;\n route?: string;\n path?: number[];\n id: string;\n menuItems?: MenuItemPropTypes[];\n}\n\nexport interface MenuItemPropTypes extends MenuButtonPropTypes {\n menuItems?: MenuItemPropTypes[];\n}\n"],"mappings":"","ignoreList":[]}
@@ -1,42 +1,29 @@
1
1
  'use client';
2
2
 
3
3
  import React from 'react';
4
- import { Icon } from '../../../design/icons/basicIcon/Icon';
4
+ import { renderIcon } from '../../../../helpers/iconHelpers';
5
+ export const isMenuItemIconStates = icon => icon !== null && typeof icon === 'object' && ! /*#__PURE__*/React.isValidElement(icon) && 'open' in icon && 'closed' in icon;
5
6
  export const MenuItemIcon = ({
6
7
  icon,
7
8
  isOpen = false,
8
9
  isHoverTrigger
9
10
  }) => {
10
- const RenderIcon = (icon, hoverState) => /*#__PURE__*/React.createElement(Icon, {
11
- customCssClass: hoverState ? 'hover' : '',
12
- icon: icon
13
- });
14
- if (typeof icon === 'string') {
15
- return /*#__PURE__*/React.createElement(Icon, {
16
- icon: icon
17
- });
11
+ if (!isMenuItemIconStates(icon)) {
12
+ return renderIcon(icon);
18
13
  }
19
- if (/*#__PURE__*/React.isValidElement(icon)) {
20
- return icon;
14
+ const {
15
+ open,
16
+ closed
17
+ } = icon;
18
+ if (isHoverTrigger) {
19
+ return /*#__PURE__*/React.createElement("span", {
20
+ className: "menuIconsHoverWrapper"
21
+ }, renderIcon(open, {
22
+ customCssClass: 'hover'
23
+ }), renderIcon(closed));
21
24
  }
22
- const stateBasedIcons = typeof icon !== 'string';
23
- if (stateBasedIcons) {
24
- const {
25
- open,
26
- closed
27
- } = icon;
28
- if (isHoverTrigger) {
29
- return /*#__PURE__*/React.createElement("span", {
30
- className: "menuIconsHoverWrapper"
31
- }, RenderIcon(open, true), RenderIcon(closed));
32
- }
33
- if (open && closed) {
34
- if (isOpen) {
35
- return RenderIcon(open, true);
36
- }
37
- return RenderIcon(closed);
38
- }
39
- }
40
- return icon;
25
+ return isOpen ? renderIcon(open, {
26
+ customCssClass: 'hover'
27
+ }) : renderIcon(closed);
41
28
  };
42
29
  //# sourceMappingURL=MenuItemIcon.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"MenuItemIcon.js","names":["React","Icon","MenuItemIcon","icon","isOpen","isHoverTrigger","RenderIcon","hoverState","createElement","customCssClass","isValidElement","stateBasedIcons","open","closed","className"],"sources":["../../../../../../src/components/navigation/menu/menuItemContent/MenuItemIcon.tsx"],"sourcesContent":["'use client';\n\nimport React, { ReactNode } from 'react';\nimport { MenuItemIconPropTypes, MenuItemIconStates } from '../Menu.interfaces';\nimport { Icon } from '../../../design/icons/basicIcon/Icon';\n\ninterface MenuItemIconProps {\n icon: MenuItemIconPropTypes;\n isOpen?: boolean;\n isHoverTrigger?: boolean;\n}\n\nexport const MenuItemIcon: React.FC<MenuItemIconProps> = (\n {\n icon,\n isOpen = false,\n isHoverTrigger\n }\n) => {\n const RenderIcon = (icon: string, hoverState?: boolean) => (\n <Icon customCssClass={ hoverState ? 'hover' : '' } icon={ icon } />\n );\n\n if (typeof icon === 'string') {\n return <Icon icon={ icon } />;\n }\n\n if (React.isValidElement(icon)) {\n return icon as ReactNode;\n }\n\n const stateBasedIcons = typeof icon !== 'string';\n if (stateBasedIcons) {\n const { open, closed } = icon as MenuItemIconStates;\n\n if (isHoverTrigger) {\n return (\n <span className=\"menuIconsHoverWrapper\">\n { RenderIcon(open, true) }\n { RenderIcon(closed) }\n </span>\n );\n }\n\n if (open && closed) {\n if (isOpen) {\n return RenderIcon(open, true);\n }\n return RenderIcon(closed);\n }\n }\n\n return icon as ReactNode;\n};\n"],"mappings":"AAAA,YAAY;;AAEZ,OAAOA,KAAK,MAAqB,OAAO;AAExC,SAASC,IAAI,QAAQ,sCAAsC;AAQ3D,OAAO,MAAMC,YAAyC,GAAGA,CACvD;EACEC,IAAI;EACJC,MAAM,GAAG,KAAK;EACdC;AACF,CAAC,KACE;EACH,MAAMC,UAAU,GAAGA,CAACH,IAAY,EAAEI,UAAoB,kBACpDP,KAAA,CAAAQ,aAAA,CAACP,IAAI;IAACQ,cAAc,EAAGF,UAAU,GAAG,OAAO,GAAG,EAAI;IAACJ,IAAI,EAAGA;EAAM,CAAE,CACnE;EAED,IAAI,OAAOA,IAAI,KAAK,QAAQ,EAAE;IAC5B,oBAAOH,KAAA,CAAAQ,aAAA,CAACP,IAAI;MAACE,IAAI,EAAGA;IAAM,CAAE,CAAC;EAC/B;EAEA,iBAAIH,KAAK,CAACU,cAAc,CAACP,IAAI,CAAC,EAAE;IAC9B,OAAOA,IAAI;EACb;EAEA,MAAMQ,eAAe,GAAG,OAAOR,IAAI,KAAK,QAAQ;EAChD,IAAIQ,eAAe,EAAE;IACnB,MAAM;MAAEC,IAAI;MAAEC;IAAO,CAAC,GAAGV,IAA0B;IAEnD,IAAIE,cAAc,EAAE;MAClB,oBACEL,KAAA,CAAAQ,aAAA;QAAMM,SAAS,EAAC;MAAuB,GACnCR,UAAU,CAACM,IAAI,EAAE,IAAI,CAAC,EACtBN,UAAU,CAACO,MAAM,CACf,CAAC;IAEX;IAEA,IAAID,IAAI,IAAIC,MAAM,EAAE;MAClB,IAAIT,MAAM,EAAE;QACV,OAAOE,UAAU,CAACM,IAAI,EAAE,IAAI,CAAC;MAC/B;MACA,OAAON,UAAU,CAACO,MAAM,CAAC;IAC3B;EACF;EAEA,OAAOV,IAAI;AACb,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"MenuItemIcon.js","names":["React","renderIcon","isMenuItemIconStates","icon","isValidElement","MenuItemIcon","isOpen","isHoverTrigger","open","closed","createElement","className","customCssClass"],"sources":["../../../../../../src/components/navigation/menu/menuItemContent/MenuItemIcon.tsx"],"sourcesContent":["'use client';\n\nimport React from 'react';\nimport { MenuItemIconPropTypes, MenuItemIconStates } from '../Menu.interfaces';\nimport { renderIcon } from '../../../../helpers/iconHelpers';\n\ninterface MenuItemIconProps {\n icon: MenuItemIconPropTypes;\n isOpen?: boolean;\n isHoverTrigger?: boolean;\n}\n\nexport const isMenuItemIconStates = (icon: unknown): icon is MenuItemIconStates => (\n icon !== null\n && typeof icon === 'object'\n && !React.isValidElement(icon)\n && 'open' in icon\n && 'closed' in icon\n);\n\nexport const MenuItemIcon: React.FC<MenuItemIconProps> = (\n {\n icon,\n isOpen = false,\n isHoverTrigger\n }\n) => {\n if (!isMenuItemIconStates(icon)) {\n return renderIcon(icon);\n }\n\n const { open, closed } = icon;\n\n if (isHoverTrigger) {\n return (\n <span className=\"menuIconsHoverWrapper\">\n { renderIcon(open, { customCssClass: 'hover' }) }\n { renderIcon(closed) }\n </span>\n );\n }\n\n return isOpen ? renderIcon(open, { customCssClass: 'hover' }) : renderIcon(closed);\n};\n"],"mappings":"AAAA,YAAY;;AAEZ,OAAOA,KAAK,MAAM,OAAO;AAEzB,SAASC,UAAU,QAAQ,iCAAiC;AAQ5D,OAAO,MAAMC,oBAAoB,GAAIC,IAAa,IAChDA,IAAI,KAAK,IAAI,IACV,OAAOA,IAAI,KAAK,QAAQ,IACxB,eAACH,KAAK,CAACI,cAAc,CAACD,IAAI,CAAC,IAC3B,MAAM,IAAIA,IAAI,IACd,QAAQ,IAAIA,IAChB;AAED,OAAO,MAAME,YAAyC,GAAGA,CACvD;EACEF,IAAI;EACJG,MAAM,GAAG,KAAK;EACdC;AACF,CAAC,KACE;EACH,IAAI,CAACL,oBAAoB,CAACC,IAAI,CAAC,EAAE;IAC/B,OAAOF,UAAU,CAACE,IAAI,CAAC;EACzB;EAEA,MAAM;IAAEK,IAAI;IAAEC;EAAO,CAAC,GAAGN,IAAI;EAE7B,IAAII,cAAc,EAAE;IAClB,oBACEP,KAAA,CAAAU,aAAA;MAAMC,SAAS,EAAC;IAAuB,GACnCV,UAAU,CAACO,IAAI,EAAE;MAAEI,cAAc,EAAE;IAAQ,CAAC,CAAC,EAC7CX,UAAU,CAACQ,MAAM,CACf,CAAC;EAEX;EAEA,OAAOH,MAAM,GAAGL,UAAU,CAACO,IAAI,EAAE;IAAEI,cAAc,EAAE;EAAQ,CAAC,CAAC,GAAGX,UAAU,CAACQ,MAAM,CAAC;AACpF,CAAC","ignoreList":[]}
@@ -0,0 +1,73 @@
1
+ import _extends from "@babel/runtime/helpers/extends";
2
+ import React from 'react';
3
+ import { SvgIcon } from '@x15ventures/x15-ui-library-icons/svgIcon/SvgIcon';
4
+ import { Icon } from '../components/design/icons/basicIcon/Icon';
5
+ import { isNonElementObject } from './objectHelpers';
6
+ import { cssClassesArrayToString } from './arrayHelpers';
7
+
8
+ /**
9
+ * Every supported way of specifying an icon:
10
+ * - `string`: an icon font name, rendered via `<Icon icon="name" />`
11
+ * - `SvgIconDefinition`: an icon definition from `@x15ventures/x15-ui-library-icons/iconDefinitions`, rendered via `<SvgIcon />`
12
+ * - `IconProps`: props for `<Icon />`, e.g. `{ icon: 'bell', customCssClass: 'large' }`
13
+ * - `ReactElement` / `ReactNode`: rendered as provided, e.g. `<SvgIcon svgDefinition={ car } />` or `<img />`
14
+ */
15
+
16
+ export const isSvgIconDefinition = value => isNonElementObject(value) && Array.isArray(value.paths);
17
+ export const isIconProps = value => isNonElementObject(value) && 'icon' in value;
18
+ export const isEmptyIconSource = value => value === undefined || value === null || value === false || value === true || value === '';
19
+ const isReactPortal = value => value !== null && typeof value === 'object' && '$$typeof' in value && value.$$typeof === Symbol.for('react.portal');
20
+ const isIterableReactNode = value => value !== null && typeof value === 'object' && Symbol.iterator in value && typeof value[Symbol.iterator] === 'function';
21
+
22
+ /**
23
+ * Normalises any supported `IconSource` into a renderable node.
24
+ * Returns `null` when there is nothing to render.
25
+ */
26
+ export const renderIcon = (icon, options = {}) => {
27
+ const {
28
+ customCssClass,
29
+ svgSize,
30
+ fallback
31
+ } = options;
32
+ const isEmpty = isEmptyIconSource(icon) || isIconProps(icon) && isEmptyIconSource(icon.icon);
33
+ if (isEmpty) {
34
+ return isEmptyIconSource(fallback) ? null : renderIcon(fallback, {
35
+ customCssClass,
36
+ svgSize
37
+ });
38
+ }
39
+ if (typeof icon === 'string') {
40
+ return /*#__PURE__*/React.createElement(Icon, {
41
+ icon: icon,
42
+ customCssClass: customCssClass
43
+ });
44
+ }
45
+ if (/*#__PURE__*/React.isValidElement(icon)) {
46
+ return icon;
47
+ }
48
+ if (isReactPortal(icon) || isIterableReactNode(icon)) {
49
+ return icon;
50
+ }
51
+ if (isSvgIconDefinition(icon)) {
52
+ return /*#__PURE__*/React.createElement(SvgIcon, _extends({
53
+ svgDefinition: icon,
54
+ customCssClass: customCssClass
55
+ }, svgSize ? {
56
+ size: svgSize
57
+ } : {}));
58
+ }
59
+ if (isIconProps(icon)) {
60
+ return /*#__PURE__*/React.createElement(Icon, _extends({}, icon, {
61
+ customCssClass: cssClassesArrayToString(icon.customCssClass, customCssClass)
62
+ }));
63
+ }
64
+
65
+ // Unrecognised plain objects are not renderable and would crash React.
66
+ if (isNonElementObject(icon)) {
67
+ return null;
68
+ }
69
+
70
+ // Remaining ReactNode values (numbers, arrays, portals) render as provided.
71
+ return icon;
72
+ };
73
+ //# sourceMappingURL=iconHelpers.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"iconHelpers.js","names":["React","SvgIcon","Icon","isNonElementObject","cssClassesArrayToString","isSvgIconDefinition","value","Array","isArray","paths","isIconProps","isEmptyIconSource","undefined","isReactPortal","$$typeof","Symbol","for","isIterableReactNode","iterator","renderIcon","icon","options","customCssClass","svgSize","fallback","isEmpty","createElement","isValidElement","_extends","svgDefinition","size"],"sources":["../../../src/helpers/iconHelpers.tsx"],"sourcesContent":["import React, { ReactElement, ReactNode } from 'react';\nimport { SvgIcon } from '@x15ventures/x15-ui-library-icons/svgIcon/SvgIcon';\nimport type { SvgIconDefinition } from '@x15ventures/x15-ui-library-icons/svgIcon/svgIconDefinition.interface';\nimport { Icon, IconProps } from '../components/design/icons/basicIcon/Icon';\nimport { isNonElementObject } from './objectHelpers';\nimport { cssClassesArrayToString } from './arrayHelpers';\n\nexport type { SvgIconDefinition };\n\nexport type SvgIconSize = 'xs' | 's' | 'm' | 'l' | 'xl';\n\n/**\n * Every supported way of specifying an icon:\n * - `string`: an icon font name, rendered via `<Icon icon=\"name\" />`\n * - `SvgIconDefinition`: an icon definition from `@x15ventures/x15-ui-library-icons/iconDefinitions`, rendered via `<SvgIcon />`\n * - `IconProps`: props for `<Icon />`, e.g. `{ icon: 'bell', customCssClass: 'large' }`\n * - `ReactElement` / `ReactNode`: rendered as provided, e.g. `<SvgIcon svgDefinition={ car } />` or `<img />`\n */\nexport type IconSource = string | SvgIconDefinition | IconProps | ReactElement | ReactNode;\n\nexport interface RenderIconOptions {\n /** Added to icons rendered via `<Icon />` or `<SvgIcon />`. Not applied to React elements. */\n customCssClass?: string;\n /** Only applied to `SvgIconDefinition` sources. */\n svgSize?: SvgIconSize | string;\n /** Used when the icon source is empty (`undefined`, `null`, `false` or `''`). */\n fallback?: IconSource;\n}\n\nexport const isSvgIconDefinition = (value: unknown): value is SvgIconDefinition => (\n isNonElementObject(value) && Array.isArray(value.paths)\n);\n\nexport const isIconProps = (value: unknown): value is IconProps => (\n isNonElementObject(value) && 'icon' in value\n);\n\nexport const isEmptyIconSource = (value: unknown): boolean => (\n value === undefined || value === null || value === false || value === true || value === ''\n);\n\nconst isReactPortal = (value: unknown): value is React.ReactPortal => (\n value !== null\n && typeof value === 'object'\n && '$$typeof' in value\n && value.$$typeof === Symbol.for('react.portal')\n);\n\nconst isIterableReactNode = (value: unknown): value is Iterable<ReactNode> => (\n value !== null\n && typeof value === 'object'\n && Symbol.iterator in value\n && typeof value[Symbol.iterator] === 'function'\n);\n\n/**\n * Normalises any supported `IconSource` into a renderable node.\n * Returns `null` when there is nothing to render.\n */\nexport const renderIcon = (icon: IconSource, options: RenderIconOptions = {}): ReactNode => {\n const { customCssClass, svgSize, fallback } = options;\n const isEmpty = isEmptyIconSource(icon) || (isIconProps(icon) && isEmptyIconSource(icon.icon));\n\n if (isEmpty) {\n return isEmptyIconSource(fallback) ? null : renderIcon(fallback, { customCssClass, svgSize });\n }\n\n if (typeof icon === 'string') {\n return <Icon icon={ icon } customCssClass={ customCssClass } />;\n }\n\n if (React.isValidElement(icon)) {\n return icon;\n }\n\n if (isReactPortal(icon) || isIterableReactNode(icon)) {\n return icon;\n }\n\n if (isSvgIconDefinition(icon)) {\n return <SvgIcon svgDefinition={ icon } customCssClass={ customCssClass } { ...(svgSize ? { size: svgSize } : {}) } />;\n }\n\n if (isIconProps(icon)) {\n return <Icon { ...icon } customCssClass={ cssClassesArrayToString(icon.customCssClass, customCssClass) } />;\n }\n\n // Unrecognised plain objects are not renderable and would crash React.\n if (isNonElementObject(icon)) {\n return null;\n }\n\n // Remaining ReactNode values (numbers, arrays, portals) render as provided.\n return icon as ReactNode;\n};\n"],"mappings":"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","ignoreList":[]}
@@ -5,5 +5,6 @@ export { dateToShortIsoString, isValidDate, dateToShortReadableDate, dateToShort
5
5
  export { USER_CURRENCY, intlCurrencyFormatter, intlNumberFormatter, formatNumberForLocale, formatAsCurrencyForLocale, getNumberAbbreviation, formatRoundedNumberWithAbbreviation, formatNumberWithAbbreviation, formatNumberForChartAxis, formatAsSimpleCurrencyForChartAxis, formatAsInternationalCurrencyForChartAxis, formatAsCurrencyWithAbbreviation, formatFileSize } from './formatters';
6
6
  export { getRandomNumberBelow, getRandomBetweenInclusive, getRandomBetweenExclusive, hashCode, roundToDecimal, formatNumberToMinDigits, formatDigitalTime } from './numberHelpers';
7
7
  export { richTextParser, capitalize, capitalizeFirstLetter, lowerCaseFirstLetter, getCharacterCount, clampToGraphemeMax, useAnInsteadOfA, splitCamelCase, pluralize, pluralizeIfNeeded, getInitialsOrAcronym } from './stringHelpers';
8
- export { objectsAreTheSame, isAnObject, createCompareValueOverride, deepMergeObjects, overrideMergeObjects, makeInheritanceObject, updateNestedProperty, filterObject, getArrayOfObjectKeys, getArrayOfReadableObjectKeys, getBranchFromPath, deepRemoveProps } from './objectHelpers';
8
+ export { objectsAreTheSame, isAnObject, createCompareValueOverride, isReactElement, isNonElementObject, isPlainObject, deepMergeObjects, overrideMergeObjects, makeInheritanceObject, updateNestedProperty, filterObject, getArrayOfObjectKeys, getArrayOfReadableObjectKeys, getBranchFromPath, deepRemoveProps } from './objectHelpers';
9
+ export { renderIcon, isSvgIconDefinition, isIconProps, isEmptyIconSource } from './iconHelpers';
9
10
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["getMinAge","getMaxAge","getMinAndMaxAges","validateBirthdate","isDateEntryComplete","getAgeInWeeks","getAgeInYears","binaryFindInArray","addAndSortArray","moveItemInArrayMutate","moveItemInArrayCopy","getRandomItemFromArray","getItemIndexWithinArray","getRoundedMedian","getMostOccurringBoolean","cssClassesArrayToString","transformPlacesData","extractNamePieces","dateToShortIsoString","isValidDate","dateToShortReadableDate","dateToShortReadableMonth","timeStampToShortReadableDate","dateToReadableTime","dateToShortReadableDateTime","getLastDateOfMonth","daysSince","USER_CURRENCY","intlCurrencyFormatter","intlNumberFormatter","formatNumberForLocale","formatAsCurrencyForLocale","getNumberAbbreviation","formatRoundedNumberWithAbbreviation","formatNumberWithAbbreviation","formatNumberForChartAxis","formatAsSimpleCurrencyForChartAxis","formatAsInternationalCurrencyForChartAxis","formatAsCurrencyWithAbbreviation","formatFileSize","getRandomNumberBelow","getRandomBetweenInclusive","getRandomBetweenExclusive","hashCode","roundToDecimal","formatNumberToMinDigits","formatDigitalTime","richTextParser","capitalize","capitalizeFirstLetter","lowerCaseFirstLetter","getCharacterCount","clampToGraphemeMax","useAnInsteadOfA","splitCamelCase","pluralize","pluralizeIfNeeded","getInitialsOrAcronym","objectsAreTheSame","isAnObject","createCompareValueOverride","deepMergeObjects","overrideMergeObjects","makeInheritanceObject","updateNestedProperty","filterObject","getArrayOfObjectKeys","getArrayOfReadableObjectKeys","getBranchFromPath","deepRemoveProps"],"sources":["../../../src/helpers/index.ts"],"sourcesContent":["export {\n getMinAge,\n getMaxAge,\n getMinAndMaxAges,\n validateBirthdate,\n isDateEntryComplete,\n getAgeInWeeks,\n getAgeInYears\n} from './ageHelpers';\n\nexport {\n binaryFindInArray,\n addAndSortArray,\n moveItemInArrayMutate,\n moveItemInArrayCopy,\n getRandomItemFromArray,\n getItemIndexWithinArray,\n getRoundedMedian,\n getMostOccurringBoolean,\n cssClassesArrayToString\n} from './arrayHelpers';\n\nexport {\n transformPlacesData,\n extractNamePieces\n} from './dataHelpers';\nexport type { NamePieces } from './dataHelpers';\n\nexport {\n dateToShortIsoString,\n isValidDate,\n dateToShortReadableDate,\n dateToShortReadableMonth,\n timeStampToShortReadableDate,\n dateToReadableTime,\n dateToShortReadableDateTime,\n getLastDateOfMonth,\n daysSince\n} from './dateHelpers';\n\nexport {\n USER_CURRENCY,\n intlCurrencyFormatter,\n intlNumberFormatter,\n formatNumberForLocale,\n formatAsCurrencyForLocale,\n getNumberAbbreviation,\n formatRoundedNumberWithAbbreviation,\n formatNumberWithAbbreviation,\n formatNumberForChartAxis,\n formatAsSimpleCurrencyForChartAxis,\n formatAsInternationalCurrencyForChartAxis,\n formatAsCurrencyWithAbbreviation,\n formatFileSize\n} from './formatters';\n\nexport {\n getRandomNumberBelow,\n getRandomBetweenInclusive,\n getRandomBetweenExclusive,\n hashCode,\n roundToDecimal,\n formatNumberToMinDigits,\n formatDigitalTime\n} from './numberHelpers';\n\nexport {\n richTextParser,\n capitalize,\n capitalizeFirstLetter,\n lowerCaseFirstLetter,\n getCharacterCount,\n clampToGraphemeMax,\n useAnInsteadOfA,\n splitCamelCase,\n pluralize,\n pluralizeIfNeeded,\n getInitialsOrAcronym\n} from './stringHelpers';\n\nexport {\n objectsAreTheSame,\n isAnObject,\n createCompareValueOverride,\n deepMergeObjects,\n overrideMergeObjects,\n makeInheritanceObject,\n updateNestedProperty,\n filterObject,\n getArrayOfObjectKeys,\n getArrayOfReadableObjectKeys,\n getBranchFromPath,\n deepRemoveProps\n} from './objectHelpers';\n"],"mappings":"AAAA,SACEA,SAAS,EACTC,SAAS,EACTC,gBAAgB,EAChBC,iBAAiB,EACjBC,mBAAmB,EACnBC,aAAa,EACbC,aAAa,QACR,cAAc;AAErB,SACEC,iBAAiB,EACjBC,eAAe,EACfC,qBAAqB,EACrBC,mBAAmB,EACnBC,sBAAsB,EACtBC,uBAAuB,EACvBC,gBAAgB,EAChBC,uBAAuB,EACvBC,uBAAuB,QAClB,gBAAgB;AAEvB,SACEC,mBAAmB,EACnBC,iBAAiB,QACZ,eAAe;AAGtB,SACEC,oBAAoB,EACpBC,WAAW,EACXC,uBAAuB,EACvBC,wBAAwB,EACxBC,4BAA4B,EAC5BC,kBAAkB,EAClBC,2BAA2B,EAC3BC,kBAAkB,EAClBC,SAAS,QACJ,eAAe;AAEtB,SACEC,aAAa,EACbC,qBAAqB,EACrBC,mBAAmB,EACnBC,qBAAqB,EACrBC,yBAAyB,EACzBC,qBAAqB,EACrBC,mCAAmC,EACnCC,4BAA4B,EAC5BC,wBAAwB,EACxBC,kCAAkC,EAClCC,yCAAyC,EACzCC,gCAAgC,EAChCC,cAAc,QACT,cAAc;AAErB,SACEC,oBAAoB,EACpBC,yBAAyB,EACzBC,yBAAyB,EACzBC,QAAQ,EACRC,cAAc,EACdC,uBAAuB,EACvBC,iBAAiB,QACZ,iBAAiB;AAExB,SACEC,cAAc,EACdC,UAAU,EACVC,qBAAqB,EACrBC,oBAAoB,EACpBC,iBAAiB,EACjBC,kBAAkB,EAClBC,eAAe,EACfC,cAAc,EACdC,SAAS,EACTC,iBAAiB,EACjBC,oBAAoB,QACf,iBAAiB;AAExB,SACEC,iBAAiB,EACjBC,UAAU,EACVC,0BAA0B,EAC1BC,gBAAgB,EAChBC,oBAAoB,EACpBC,qBAAqB,EACrBC,oBAAoB,EACpBC,YAAY,EACZC,oBAAoB,EACpBC,4BAA4B,EAC5BC,iBAAiB,EACjBC,eAAe,QACV,iBAAiB","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["getMinAge","getMaxAge","getMinAndMaxAges","validateBirthdate","isDateEntryComplete","getAgeInWeeks","getAgeInYears","binaryFindInArray","addAndSortArray","moveItemInArrayMutate","moveItemInArrayCopy","getRandomItemFromArray","getItemIndexWithinArray","getRoundedMedian","getMostOccurringBoolean","cssClassesArrayToString","transformPlacesData","extractNamePieces","dateToShortIsoString","isValidDate","dateToShortReadableDate","dateToShortReadableMonth","timeStampToShortReadableDate","dateToReadableTime","dateToShortReadableDateTime","getLastDateOfMonth","daysSince","USER_CURRENCY","intlCurrencyFormatter","intlNumberFormatter","formatNumberForLocale","formatAsCurrencyForLocale","getNumberAbbreviation","formatRoundedNumberWithAbbreviation","formatNumberWithAbbreviation","formatNumberForChartAxis","formatAsSimpleCurrencyForChartAxis","formatAsInternationalCurrencyForChartAxis","formatAsCurrencyWithAbbreviation","formatFileSize","getRandomNumberBelow","getRandomBetweenInclusive","getRandomBetweenExclusive","hashCode","roundToDecimal","formatNumberToMinDigits","formatDigitalTime","richTextParser","capitalize","capitalizeFirstLetter","lowerCaseFirstLetter","getCharacterCount","clampToGraphemeMax","useAnInsteadOfA","splitCamelCase","pluralize","pluralizeIfNeeded","getInitialsOrAcronym","objectsAreTheSame","isAnObject","createCompareValueOverride","isReactElement","isNonElementObject","isPlainObject","deepMergeObjects","overrideMergeObjects","makeInheritanceObject","updateNestedProperty","filterObject","getArrayOfObjectKeys","getArrayOfReadableObjectKeys","getBranchFromPath","deepRemoveProps","renderIcon","isSvgIconDefinition","isIconProps","isEmptyIconSource"],"sources":["../../../src/helpers/index.ts"],"sourcesContent":["export {\n getMinAge,\n getMaxAge,\n getMinAndMaxAges,\n validateBirthdate,\n isDateEntryComplete,\n getAgeInWeeks,\n getAgeInYears\n} from './ageHelpers';\n\nexport {\n binaryFindInArray,\n addAndSortArray,\n moveItemInArrayMutate,\n moveItemInArrayCopy,\n getRandomItemFromArray,\n getItemIndexWithinArray,\n getRoundedMedian,\n getMostOccurringBoolean,\n cssClassesArrayToString\n} from './arrayHelpers';\n\nexport {\n transformPlacesData,\n extractNamePieces\n} from './dataHelpers';\nexport type { NamePieces } from './dataHelpers';\n\nexport {\n dateToShortIsoString,\n isValidDate,\n dateToShortReadableDate,\n dateToShortReadableMonth,\n timeStampToShortReadableDate,\n dateToReadableTime,\n dateToShortReadableDateTime,\n getLastDateOfMonth,\n daysSince\n} from './dateHelpers';\n\nexport {\n USER_CURRENCY,\n intlCurrencyFormatter,\n intlNumberFormatter,\n formatNumberForLocale,\n formatAsCurrencyForLocale,\n getNumberAbbreviation,\n formatRoundedNumberWithAbbreviation,\n formatNumberWithAbbreviation,\n formatNumberForChartAxis,\n formatAsSimpleCurrencyForChartAxis,\n formatAsInternationalCurrencyForChartAxis,\n formatAsCurrencyWithAbbreviation,\n formatFileSize\n} from './formatters';\n\nexport {\n getRandomNumberBelow,\n getRandomBetweenInclusive,\n getRandomBetweenExclusive,\n hashCode,\n roundToDecimal,\n formatNumberToMinDigits,\n formatDigitalTime\n} from './numberHelpers';\n\nexport {\n richTextParser,\n capitalize,\n capitalizeFirstLetter,\n lowerCaseFirstLetter,\n getCharacterCount,\n clampToGraphemeMax,\n useAnInsteadOfA,\n splitCamelCase,\n pluralize,\n pluralizeIfNeeded,\n getInitialsOrAcronym\n} from './stringHelpers';\n\nexport {\n objectsAreTheSame,\n isAnObject,\n createCompareValueOverride,\n isReactElement,\n isNonElementObject,\n isPlainObject,\n deepMergeObjects,\n overrideMergeObjects,\n makeInheritanceObject,\n updateNestedProperty,\n filterObject,\n getArrayOfObjectKeys,\n getArrayOfReadableObjectKeys,\n getBranchFromPath,\n deepRemoveProps\n} from './objectHelpers';\nexport type {\n DeepMergeObjectsArgs,\n MakeInheritanceObjectArgs,\n UpdateNestedPropertyArgs\n} from './objectHelpers';\n\nexport {\n renderIcon,\n isSvgIconDefinition,\n isIconProps,\n isEmptyIconSource\n} from './iconHelpers';\nexport type {\n IconSource,\n RenderIconOptions,\n SvgIconDefinition,\n SvgIconSize\n} from './iconHelpers';\n"],"mappings":"AAAA,SACEA,SAAS,EACTC,SAAS,EACTC,gBAAgB,EAChBC,iBAAiB,EACjBC,mBAAmB,EACnBC,aAAa,EACbC,aAAa,QACR,cAAc;AAErB,SACEC,iBAAiB,EACjBC,eAAe,EACfC,qBAAqB,EACrBC,mBAAmB,EACnBC,sBAAsB,EACtBC,uBAAuB,EACvBC,gBAAgB,EAChBC,uBAAuB,EACvBC,uBAAuB,QAClB,gBAAgB;AAEvB,SACEC,mBAAmB,EACnBC,iBAAiB,QACZ,eAAe;AAGtB,SACEC,oBAAoB,EACpBC,WAAW,EACXC,uBAAuB,EACvBC,wBAAwB,EACxBC,4BAA4B,EAC5BC,kBAAkB,EAClBC,2BAA2B,EAC3BC,kBAAkB,EAClBC,SAAS,QACJ,eAAe;AAEtB,SACEC,aAAa,EACbC,qBAAqB,EACrBC,mBAAmB,EACnBC,qBAAqB,EACrBC,yBAAyB,EACzBC,qBAAqB,EACrBC,mCAAmC,EACnCC,4BAA4B,EAC5BC,wBAAwB,EACxBC,kCAAkC,EAClCC,yCAAyC,EACzCC,gCAAgC,EAChCC,cAAc,QACT,cAAc;AAErB,SACEC,oBAAoB,EACpBC,yBAAyB,EACzBC,yBAAyB,EACzBC,QAAQ,EACRC,cAAc,EACdC,uBAAuB,EACvBC,iBAAiB,QACZ,iBAAiB;AAExB,SACEC,cAAc,EACdC,UAAU,EACVC,qBAAqB,EACrBC,oBAAoB,EACpBC,iBAAiB,EACjBC,kBAAkB,EAClBC,eAAe,EACfC,cAAc,EACdC,SAAS,EACTC,iBAAiB,EACjBC,oBAAoB,QACf,iBAAiB;AAExB,SACEC,iBAAiB,EACjBC,UAAU,EACVC,0BAA0B,EAC1BC,cAAc,EACdC,kBAAkB,EAClBC,aAAa,EACbC,gBAAgB,EAChBC,oBAAoB,EACpBC,qBAAqB,EACrBC,oBAAoB,EACpBC,YAAY,EACZC,oBAAoB,EACpBC,4BAA4B,EAC5BC,iBAAiB,EACjBC,eAAe,QACV,iBAAiB;AAOxB,SACEC,UAAU,EACVC,mBAAmB,EACnBC,WAAW,EACXC,iBAAiB,QACZ,eAAe","ignoreList":[]}
@@ -11,10 +11,11 @@ export const objectsAreTheSame = (obj1, obj2) => {
11
11
  };
12
12
  return JsonStringifySorted(obj1) === JsonStringifySorted(obj2);
13
13
  };
14
- export const isAnObject = value => typeof value !== 'undefined' && !Array.isArray(value) && typeof value === 'object';
14
+ export const isAnObject = value => value !== null && typeof value !== 'undefined' && !Array.isArray(value) && typeof value === 'object';
15
15
  export const createCompareValueOverride = (key, compareValue) => `${key}:${JSON.stringify(compareValue)}`;
16
- const isReactElement = val => !!val && /*#__PURE__*/React.isValidElement(val);
17
- const isPlainObject = val => {
16
+ export const isReactElement = val => !!val && /*#__PURE__*/React.isValidElement(val);
17
+ export const isNonElementObject = value => value !== null && typeof value === 'object' && !Array.isArray(value) && ! /*#__PURE__*/React.isValidElement(value);
18
+ export const isPlainObject = val => {
18
19
  if (val === null || typeof val !== 'object') return false;
19
20
  if (isReactElement(val)) return false;
20
21
  if (Array.isArray(val)) return false;
@@ -234,6 +235,9 @@ export default {
234
235
  objectsAreTheSame,
235
236
  isAnObject,
236
237
  createCompareValueOverride,
238
+ isReactElement,
239
+ isNonElementObject,
240
+ isPlainObject,
237
241
  deepMergeObjects,
238
242
  overrideMergeObjects,
239
243
  makeInheritanceObject,
@@ -1 +1 @@
1
- {"version":3,"file":"objectHelpers.js","names":["React","splitCamelCase","objectsAreTheSame","obj1","obj2","JsonStringifySorted","obj","keys","JSON","stringify","key","value","Object","sort","isAnObject","Array","isArray","createCompareValueOverride","compareValue","isReactElement","val","isValidElement","isPlainObject","Date","RegExp","proto","getPrototypeOf","prototype","deepMergeObjects","baseObject","overrideObject","mergeDeep","objects","reduce","acc","forEach","prev","next","overrideMergeObjects","mergeOverride","pVal","oVal","makeInheritanceObject","base","valueOnly","baseObjectName","compare","propPath","excludePropSpread","createSpreader","length","join","requiresSpreader","indexOf","inheritanceObjectPieces","push","entries","updateNestedProperty","jsonObject","propertyPath","newValue","pathPieces","split","numPieces","currentBranch","piece","index","filterObject","filter","result","branchAsString","search","caseSensitive","branchTestString","toLowerCase","searchTerm","isKeyAndValueMatch","test","values","keyCheck","toString","valueCheck","testAsString","includes","subResult","getArrayOfObjectKeys","objectKeys","Set","getArrayOfReadableObjectKeys","objectKeysArray","map","objectKey","getBranchFromPath","path","deepRemoveProps","propsToRemove","item","newObj"],"sources":["../../../src/helpers/objectHelpers.ts"],"sourcesContent":["import React from 'react';\nimport { JSONObject, JSONValue } from '../interfaces/generic.interface';\nimport { splitCamelCase } from './stringHelpers';\n\nexport const objectsAreTheSame = (obj1: object, obj2: object): boolean => {\n const JsonStringifySorted = (obj: object): string => {\n const keys: { [key: string]: null } = {};\n JSON.stringify(obj, (key, value) => {\n keys[key] = null;\n return value;\n });\n return JSON.stringify(obj, Object.keys(keys).sort());\n };\n return JsonStringifySorted(obj1) === JsonStringifySorted(obj2);\n};\n\nexport const isAnObject = (value: unknown): boolean => typeof value !== 'undefined' && !Array.isArray(value) && typeof value === 'object';\n\nexport const createCompareValueOverride = (key: string, compareValue: any): string => `${ key }:${ JSON.stringify(compareValue) }`;\n\ninterface DeepMergeObjectsArgs {\n baseObject: Record<string, any>;\n overrideObject: Record<string, any>;\n}\n\nconst isReactElement = (val: unknown): val is React.ReactElement =>\n !!val && React.isValidElement(val);\n\nconst isPlainObject = (val: unknown): val is Record<string, unknown> => {\n if (val === null || typeof val !== 'object') return false;\n if (isReactElement(val)) return false;\n if (Array.isArray(val)) return false;\n if (val instanceof Date || val instanceof RegExp) return false;\n const proto = Object.getPrototypeOf(val);\n return proto === Object.prototype || proto === null;\n};\n\nexport function deepMergeObjects<T extends object, U extends object>(\n { baseObject, overrideObject }: DeepMergeObjectsArgs\n): T & U {\n const mergeDeep = (...objects: object[]): any =>\n objects.reduce<Record<string, any>>((acc, obj) => {\n Object.keys(obj).forEach((key) => {\n const prev = acc[key];\n const next = (obj as any)[key];\n\n // If either side is a React element, treat as opaque: override wins.\n if (isReactElement(prev) || isReactElement(next)) {\n acc[key] = next;\n return;\n }\n\n // Arrays: concat\n if (Array.isArray(prev) && Array.isArray(next)) {\n acc[key] = [...prev, ...next];\n return;\n }\n\n // Plain objects: recurse\n if (isPlainObject(prev) && isPlainObject(next)) {\n acc[key] = mergeDeep(prev, next);\n return;\n }\n\n // Everything else (including ReactNode primitives, functions, Dates, etc.): override\n acc[key] = next;\n });\n return acc;\n }, {});\n\n return mergeDeep(baseObject ?? {}, overrideObject ?? {}) as T & U;\n}\n\nexport const overrideMergeObjects = ({ baseObject, overrideObject }: DeepMergeObjectsArgs): object => {\n const mergeOverride = (...objects: object[]): object => objects.reduce((prev: any, obj: any) => {\n Object.keys(obj).forEach((key) => {\n const pVal = prev[key];\n const oVal = obj[key];\n\n if (Array.isArray(pVal) && Array.isArray(oVal)) {\n prev[key] = oVal;\n } else if (isAnObject(pVal) && isAnObject(oVal)) {\n prev[key] = mergeOverride(pVal, oVal);\n } else if (pVal && !oVal) {\n prev[key] = pVal;\n } else {\n prev[key] = oVal;\n }\n });\n return prev;\n }, {});\n\n return mergeOverride(baseObject, overrideObject);\n};\n\ninterface MakeInheritanceObjectArgs {\n base: { [key: string] : any };\n valueOnly?: boolean;\n baseObjectName: string;\n compare: object;\n propPath?: string[];\n excludePropSpread?: string[];\n}\n\nexport const makeInheritanceObject = (\n {\n base,\n valueOnly = false,\n baseObjectName,\n compare,\n propPath = [],\n excludePropSpread = []\n }: MakeInheritanceObjectArgs\n): string => {\n const createSpreader = (): string => {\n if (propPath.length > 0) {\n return `...${ baseObjectName }.${ propPath.join('.') }`;\n }\n return `...${ baseObjectName }`;\n };\n\n const requiresSpreader = (): boolean => {\n if (valueOnly) return false;\n if (propPath.length > 0 && excludePropSpread.length > 0) {\n return excludePropSpread.indexOf(propPath[propPath.length - 1]) === -1;\n }\n return true;\n };\n\n const inheritanceObjectPieces: string[] = [];\n if (requiresSpreader()) {\n inheritanceObjectPieces.push(createSpreader());\n }\n\n Object.entries(compare).forEach(([key, compareValue]) => {\n if (!(key in base)) {\n inheritanceObjectPieces.push(createCompareValueOverride(key, compareValue));\n } else if (typeof base[key] !== 'undefined' && !objectsAreTheSame(base[key], compareValue)) {\n if (isAnObject(compareValue)) {\n inheritanceObjectPieces.push(\n `${ key }:${\n makeInheritanceObject({\n base: base[key],\n baseObjectName,\n compare: compareValue,\n propPath: [...propPath, key],\n excludePropSpread\n })\n }`\n );\n } else {\n inheritanceObjectPieces.push(createCompareValueOverride(key, compareValue));\n }\n }\n });\n\n return `{${ inheritanceObjectPieces.join(', ') }}`;\n};\n\ninterface UpdateNestedPropertyArgs {\n jsonObject: Record<string, any>;\n propertyPath: string;\n newValue: any;\n}\n\nexport const updateNestedProperty = ({ jsonObject, propertyPath, newValue }: UpdateNestedPropertyArgs): object => {\n const pathPieces = propertyPath.split('.');\n const numPieces = pathPieces.length;\n\n if (numPieces === 1) {\n jsonObject[propertyPath] = newValue;\n return jsonObject;\n }\n\n let currentBranch = jsonObject;\n\n pathPieces.forEach((piece, index) => {\n if (index === numPieces - 1) {\n currentBranch[piece] = newValue;\n } else if (currentBranch[piece]) {\n currentBranch = currentBranch[piece];\n }\n });\n\n return jsonObject;\n};\n\nexport const filterObject = (jsonObject: JSONObject, filter: {\n search: string | number | { [key: string]: string | number | boolean };\n caseSensitive?: boolean;\n}): JSONObject | false => {\n const result: JSONObject = {};\n\n // TODO: Handle key/value filter\n const branchAsString = JSON.stringify(jsonObject);\n const {\n search,\n caseSensitive\n } = filter;\n\n const branchTestString = caseSensitive ? branchAsString : branchAsString.toLowerCase();\n const searchTerm = caseSensitive || typeof search !== 'string' ? search : search.toLowerCase();\n\n const isKeyAndValueMatch = (test: JSONValue | string) => {\n const key = Object.keys(search)[0];\n const value = Object.values(search)[0];\n\n const keyCheck = caseSensitive ? key : key.toString().toLowerCase();\n\n const valueCheck = caseSensitive ? value : value.toString().toLowerCase();\n\n const testAsString = typeof test === 'string' ? test : JSON.stringify(test);\n\n return testAsString.includes(keyCheck) && testAsString.includes(valueCheck);\n };\n\n // Do some fast checks and fail immediately if no match\n if (typeof search === 'object') { // Key value search\n if (!isKeyAndValueMatch(branchTestString)) {\n return false;\n }\n } else if (!branchTestString.includes(searchTerm.toString())) {\n return false;\n }\n\n // Loop over the branch recursively finding the matches and forming up the object.\n Object.entries(jsonObject).forEach(([key, value]) => {\n // Check if the key or value contains the search term\n\n const keyCheck = caseSensitive ? key : key.toLowerCase();\n const valueCheck = caseSensitive ? value : value?.toString().toLowerCase();\n\n if (typeof value === 'object' && value !== null) {\n // Recursively search if the value is an object or array\n const subResult = filterObject(value as JSONObject, filter);\n if (subResult && Object.keys(subResult).length > 0) {\n result[key] = subResult;\n }\n } else if (typeof search === 'object') {\n if (isKeyAndValueMatch({ key, value })) {\n result[key] = value;\n }\n } else if (keyCheck.includes(searchTerm.toString()) || valueCheck?.toString().includes(searchTerm.toString())) {\n result[key] = value;\n }\n });\n\n return Object.keys(result).length > 0 ? result : false;\n};\n\nexport const getArrayOfObjectKeys = (jsonObject: JSONObject) => {\n let objectKeys: string[] = [];\n\n // Loop over the branch recursively finding the matches and forming up the object.\n Object.entries(jsonObject).forEach(([key, value]) => {\n objectKeys.push(key);\n if (typeof value === 'object' && value !== null) {\n const subResult = getArrayOfObjectKeys(value as JSONObject);\n objectKeys = [...objectKeys, ...subResult];\n }\n });\n\n return [...new Set(objectKeys)];\n};\n\nexport const getArrayOfReadableObjectKeys = (jsonObject: JSONObject) => {\n const objectKeysArray = getArrayOfObjectKeys(jsonObject);\n return objectKeysArray.map((objectKey) => splitCamelCase(objectKey));\n};\n\nexport const getBranchFromPath = (obj: any, path: string[]): any => path.reduce((currentBranch, key) => currentBranch?.[key], obj);\n\nexport const deepRemoveProps = (obj: any, propsToRemove: string[]): any => {\n if (Array.isArray(obj)) {\n return obj.map((item) => deepRemoveProps(item, propsToRemove));\n } else if (isAnObject(obj) && obj !== null) {\n const newObj: any = {};\n Object.entries(obj).forEach(([key, value]) => {\n if (!propsToRemove.includes(key)) {\n newObj[key] = deepRemoveProps(value, propsToRemove);\n }\n });\n return newObj;\n }\n return obj;\n};\n\nexport default {\n objectsAreTheSame,\n isAnObject,\n createCompareValueOverride,\n deepMergeObjects,\n overrideMergeObjects,\n makeInheritanceObject,\n updateNestedProperty,\n filterObject,\n getArrayOfObjectKeys,\n getArrayOfReadableObjectKeys,\n getBranchFromPath,\n deepRemoveProps\n};\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"objectHelpers.js","names":["React","splitCamelCase","objectsAreTheSame","obj1","obj2","JsonStringifySorted","obj","keys","JSON","stringify","key","value","Object","sort","isAnObject","Array","isArray","createCompareValueOverride","compareValue","isReactElement","val","isValidElement","isNonElementObject","isPlainObject","Date","RegExp","proto","getPrototypeOf","prototype","deepMergeObjects","baseObject","overrideObject","mergeDeep","objects","reduce","acc","forEach","prev","next","overrideMergeObjects","mergeOverride","pVal","oVal","makeInheritanceObject","base","valueOnly","baseObjectName","compare","propPath","excludePropSpread","createSpreader","length","join","requiresSpreader","indexOf","inheritanceObjectPieces","push","entries","updateNestedProperty","jsonObject","propertyPath","newValue","pathPieces","split","numPieces","currentBranch","piece","index","filterObject","filter","result","branchAsString","search","caseSensitive","branchTestString","toLowerCase","searchTerm","isKeyAndValueMatch","test","values","keyCheck","toString","valueCheck","testAsString","includes","subResult","getArrayOfObjectKeys","objectKeys","Set","getArrayOfReadableObjectKeys","objectKeysArray","map","objectKey","getBranchFromPath","path","deepRemoveProps","propsToRemove","item","newObj"],"sources":["../../../src/helpers/objectHelpers.ts"],"sourcesContent":["import React from 'react';\nimport { JSONObject, JSONValue } from '../interfaces/generic.interface';\nimport { splitCamelCase } from './stringHelpers';\n\nexport const objectsAreTheSame = (obj1: object, obj2: object): boolean => {\n const JsonStringifySorted = (obj: object): string => {\n const keys: { [key: string]: null } = {};\n JSON.stringify(obj, (key, value) => {\n keys[key] = null;\n return value;\n });\n return JSON.stringify(obj, Object.keys(keys).sort());\n };\n return JsonStringifySorted(obj1) === JsonStringifySorted(obj2);\n};\n\nexport const isAnObject = (value: unknown): boolean => value !== null && typeof value !== 'undefined' && !Array.isArray(value) && typeof value === 'object';\n\nexport const createCompareValueOverride = (key: string, compareValue: any): string => `${ key }:${ JSON.stringify(compareValue) }`;\n\nexport interface DeepMergeObjectsArgs {\n baseObject: Record<string, any>;\n overrideObject: Record<string, any>;\n}\n\nexport const isReactElement = (val: unknown): val is React.ReactElement =>\n !!val && React.isValidElement(val);\n\n\nexport const isNonElementObject = (value: unknown): value is Record<string, unknown> => (\n value !== null\n && typeof value === 'object'\n && !Array.isArray(value)\n && !React.isValidElement(value)\n);\n\nexport const isPlainObject = (val: unknown): val is Record<string, unknown> => {\n if (val === null || typeof val !== 'object') return false;\n if (isReactElement(val)) return false;\n if (Array.isArray(val)) return false;\n if (val instanceof Date || val instanceof RegExp) return false;\n const proto = Object.getPrototypeOf(val);\n return proto === Object.prototype || proto === null;\n};\n\nexport function deepMergeObjects<T extends object, U extends object>(\n { baseObject, overrideObject }: DeepMergeObjectsArgs\n): T & U {\n const mergeDeep = (...objects: object[]): any =>\n objects.reduce<Record<string, any>>((acc, obj) => {\n Object.keys(obj).forEach((key) => {\n const prev = acc[key];\n const next = (obj as any)[key];\n\n // If either side is a React element, treat as opaque: override wins.\n if (isReactElement(prev) || isReactElement(next)) {\n acc[key] = next;\n return;\n }\n\n // Arrays: concat\n if (Array.isArray(prev) && Array.isArray(next)) {\n acc[key] = [...prev, ...next];\n return;\n }\n\n // Plain objects: recurse\n if (isPlainObject(prev) && isPlainObject(next)) {\n acc[key] = mergeDeep(prev, next);\n return;\n }\n\n // Everything else (including ReactNode primitives, functions, Dates, etc.): override\n acc[key] = next;\n });\n return acc;\n }, {});\n\n return mergeDeep(baseObject ?? {}, overrideObject ?? {}) as T & U;\n}\n\nexport const overrideMergeObjects = ({ baseObject, overrideObject }: DeepMergeObjectsArgs): object => {\n const mergeOverride = (...objects: object[]): object => objects.reduce((prev: any, obj: any) => {\n Object.keys(obj).forEach((key) => {\n const pVal = prev[key];\n const oVal = obj[key];\n\n if (Array.isArray(pVal) && Array.isArray(oVal)) {\n prev[key] = oVal;\n } else if (isAnObject(pVal) && isAnObject(oVal)) {\n prev[key] = mergeOverride(pVal, oVal);\n } else if (pVal && !oVal) {\n prev[key] = pVal;\n } else {\n prev[key] = oVal;\n }\n });\n return prev;\n }, {});\n\n return mergeOverride(baseObject, overrideObject);\n};\n\nexport interface MakeInheritanceObjectArgs {\n base: { [key: string] : any };\n valueOnly?: boolean;\n baseObjectName: string;\n compare: object;\n propPath?: string[];\n excludePropSpread?: string[];\n}\n\nexport const makeInheritanceObject = (\n {\n base,\n valueOnly = false,\n baseObjectName,\n compare,\n propPath = [],\n excludePropSpread = []\n }: MakeInheritanceObjectArgs\n): string => {\n const createSpreader = (): string => {\n if (propPath.length > 0) {\n return `...${ baseObjectName }.${ propPath.join('.') }`;\n }\n return `...${ baseObjectName }`;\n };\n\n const requiresSpreader = (): boolean => {\n if (valueOnly) return false;\n if (propPath.length > 0 && excludePropSpread.length > 0) {\n return excludePropSpread.indexOf(propPath[propPath.length - 1]) === -1;\n }\n return true;\n };\n\n const inheritanceObjectPieces: string[] = [];\n if (requiresSpreader()) {\n inheritanceObjectPieces.push(createSpreader());\n }\n\n Object.entries(compare).forEach(([key, compareValue]) => {\n if (!(key in base)) {\n inheritanceObjectPieces.push(createCompareValueOverride(key, compareValue));\n } else if (typeof base[key] !== 'undefined' && !objectsAreTheSame(base[key], compareValue)) {\n if (isAnObject(compareValue)) {\n inheritanceObjectPieces.push(\n `${ key }:${\n makeInheritanceObject({\n base: base[key],\n baseObjectName,\n compare: compareValue,\n propPath: [...propPath, key],\n excludePropSpread\n })\n }`\n );\n } else {\n inheritanceObjectPieces.push(createCompareValueOverride(key, compareValue));\n }\n }\n });\n\n return `{${ inheritanceObjectPieces.join(', ') }}`;\n};\n\nexport interface UpdateNestedPropertyArgs {\n jsonObject: Record<string, any>;\n propertyPath: string;\n newValue: any;\n}\n\nexport const updateNestedProperty = ({ jsonObject, propertyPath, newValue }: UpdateNestedPropertyArgs): object => {\n const pathPieces = propertyPath.split('.');\n const numPieces = pathPieces.length;\n\n if (numPieces === 1) {\n jsonObject[propertyPath] = newValue;\n return jsonObject;\n }\n\n let currentBranch = jsonObject;\n\n pathPieces.forEach((piece, index) => {\n if (index === numPieces - 1) {\n currentBranch[piece] = newValue;\n } else if (currentBranch[piece]) {\n currentBranch = currentBranch[piece];\n }\n });\n\n return jsonObject;\n};\n\nexport const filterObject = (jsonObject: JSONObject, filter: {\n search: string | number | { [key: string]: string | number | boolean };\n caseSensitive?: boolean;\n}): JSONObject | false => {\n const result: JSONObject = {};\n\n // TODO: Handle key/value filter\n const branchAsString = JSON.stringify(jsonObject);\n const {\n search,\n caseSensitive\n } = filter;\n\n const branchTestString = caseSensitive ? branchAsString : branchAsString.toLowerCase();\n const searchTerm = caseSensitive || typeof search !== 'string' ? search : search.toLowerCase();\n\n const isKeyAndValueMatch = (test: JSONValue | string) => {\n const key = Object.keys(search)[0];\n const value = Object.values(search)[0];\n\n const keyCheck = caseSensitive ? key : key.toString().toLowerCase();\n\n const valueCheck = caseSensitive ? value : value.toString().toLowerCase();\n\n const testAsString = typeof test === 'string' ? test : JSON.stringify(test);\n\n return testAsString.includes(keyCheck) && testAsString.includes(valueCheck);\n };\n\n // Do some fast checks and fail immediately if no match\n if (typeof search === 'object') { // Key value search\n if (!isKeyAndValueMatch(branchTestString)) {\n return false;\n }\n } else if (!branchTestString.includes(searchTerm.toString())) {\n return false;\n }\n\n // Loop over the branch recursively finding the matches and forming up the object.\n Object.entries(jsonObject).forEach(([key, value]) => {\n // Check if the key or value contains the search term\n\n const keyCheck = caseSensitive ? key : key.toLowerCase();\n const valueCheck = caseSensitive ? value : value?.toString().toLowerCase();\n\n if (typeof value === 'object' && value !== null) {\n // Recursively search if the value is an object or array\n const subResult = filterObject(value as JSONObject, filter);\n if (subResult && Object.keys(subResult).length > 0) {\n result[key] = subResult;\n }\n } else if (typeof search === 'object') {\n if (isKeyAndValueMatch({ key, value })) {\n result[key] = value;\n }\n } else if (keyCheck.includes(searchTerm.toString()) || valueCheck?.toString().includes(searchTerm.toString())) {\n result[key] = value;\n }\n });\n\n return Object.keys(result).length > 0 ? result : false;\n};\n\nexport const getArrayOfObjectKeys = (jsonObject: JSONObject) => {\n let objectKeys: string[] = [];\n\n // Loop over the branch recursively finding the matches and forming up the object.\n Object.entries(jsonObject).forEach(([key, value]) => {\n objectKeys.push(key);\n if (typeof value === 'object' && value !== null) {\n const subResult = getArrayOfObjectKeys(value as JSONObject);\n objectKeys = [...objectKeys, ...subResult];\n }\n });\n\n return [...new Set(objectKeys)];\n};\n\nexport const getArrayOfReadableObjectKeys = (jsonObject: JSONObject) => {\n const objectKeysArray = getArrayOfObjectKeys(jsonObject);\n return objectKeysArray.map((objectKey) => splitCamelCase(objectKey));\n};\n\nexport const getBranchFromPath = (obj: any, path: string[]): any => path.reduce((currentBranch, key) => currentBranch?.[key], obj);\n\nexport const deepRemoveProps = (obj: any, propsToRemove: string[]): any => {\n if (Array.isArray(obj)) {\n return obj.map((item) => deepRemoveProps(item, propsToRemove));\n } else if (isAnObject(obj) && obj !== null) {\n const newObj: any = {};\n Object.entries(obj).forEach(([key, value]) => {\n if (!propsToRemove.includes(key)) {\n newObj[key] = deepRemoveProps(value, propsToRemove);\n }\n });\n return newObj;\n }\n return obj;\n};\n\nexport default {\n objectsAreTheSame,\n isAnObject,\n createCompareValueOverride,\n isReactElement,\n isNonElementObject,\n isPlainObject,\n deepMergeObjects,\n overrideMergeObjects,\n makeInheritanceObject,\n updateNestedProperty,\n filterObject,\n getArrayOfObjectKeys,\n getArrayOfReadableObjectKeys,\n getBranchFromPath,\n deepRemoveProps\n};\n"],"mappings":"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","ignoreList":[]}
package/dist/esm/index.js CHANGED
@@ -2,7 +2,7 @@ import './styles/index.css';
2
2
  import './icons/style.css';
3
3
 
4
4
  // Components
5
- export { Accordion, Chip, Pill, Badge, Dialog, HeaderBar, Icon, NotificationIcon, VentureLogo, CreditSavvyLogo, HomeInLogo, KitLogo, DoshiiLogo, TruyuLogo, SidePanel, Skeleton, Spinner, StatusIconButton, StatusLight, StatusLightsBar, CircularProgressIndicator, Tabs, Tooltip, EllipsisTooltip, RevealMore, CopyText, Paginator, PageBanner, Banner, Alert, SimpleButton, Button, FormField, InputCheckbox, CheckboxInput, StyledRadioGroup, StyledRadioInput, StyledRadioLabel, HookFormWrapper, TextInput, EmailInput, FileInput, SearchInput, NumberInput, PhoneInput, UrlInput, PasswordInput, PasswordInputSignup, SelectDropdown, Select, Combobox, Textarea, InputDate, DateInput, Card, ReportFooter, MainHeader, ThemeLoader, DevToolbar, ThemeSwitch, LoremIpsum, GlobalDashboard, Menu, PopupMenu, SearchPanelMenu, Link, TemplateForm, TemplateLoading, TemplateDashboard, TemplatePage } from './components';
5
+ export { Accordion, Chip, Pill, Badge, Dialog, HeaderBar, Icon, NotificationIcon, VentureLogo, CreditSavvyLogo, HomeInLogo, KitLogo, DoshiiLogo, TruyuLogo, SidePanel, Skeleton, Spinner, StatusIconButton, StatusLight, StatusLightsBar, CircularProgressIndicator, Tabs, Tooltip, EllipsisTooltip, RevealMore, CopyText, Paginator, PageBanner, Banner, Alert, SimpleButton, Button, FormField, InputCheckbox, CheckboxInput, CheckboxSwitch, StyledRadioGroup, StyledRadioInput, StyledRadioLabel, HookFormWrapper, TextInput, EmailInput, FileInput, SearchInput, NumberInput, PhoneInput, UrlInput, PasswordInput, PasswordInputSignup, SelectDropdown, Select, Combobox, Textarea, InputDate, DateInput, Card, ReportFooter, MainHeader, ThemeLoader, DevToolbar, ThemeSwitch, LoremIpsum, GlobalDashboard, Menu, PopupMenu, SearchPanelMenu, Link, TemplateForm, TemplateLoading, TemplateDashboard, TemplatePage } from './components';
6
6
  export { ProcessLauncher } from './widgets';
7
7
  // Hooks
8
8
  export { useOnClickOutside, usePopupKeys, useOnEdgeProximityDetect, useFirstCapital, useTabbableInputGroup, useDialogOverlay, useEllipsisBookends, useFocusTrap, useInertAttribute, useOnInteractiveHostFocus } from './hooks';
@@ -18,8 +18,8 @@ export { dateToShortIsoString, isValidDate, dateToShortReadableDate, dateToShort
18
18
  export { USER_CURRENCY, intlCurrencyFormatter, intlNumberFormatter, formatNumberForLocale, formatAsCurrencyForLocale, getNumberAbbreviation, formatRoundedNumberWithAbbreviation, formatNumberWithAbbreviation, formatNumberForChartAxis, formatAsSimpleCurrencyForChartAxis, formatAsInternationalCurrencyForChartAxis, formatAsCurrencyWithAbbreviation, formatFileSize } from './helpers/formatters';
19
19
  export { getRandomNumberBelow, getRandomBetweenInclusive, getRandomBetweenExclusive, hashCode, roundToDecimal, formatNumberToMinDigits, formatDigitalTime } from './helpers/numberHelpers';
20
20
  export { richTextParser, capitalize, capitalizeFirstLetter, lowerCaseFirstLetter, useAnInsteadOfA, splitCamelCase, pluralize, pluralizeIfNeeded, getInitialsOrAcronym } from './helpers/stringHelpers';
21
- export { objectsAreTheSame, isAnObject, createCompareValueOverride, deepMergeObjects, overrideMergeObjects, makeInheritanceObject, updateNestedProperty, filterObject, getArrayOfObjectKeys, getArrayOfReadableObjectKeys, getBranchFromPath, deepRemoveProps } from './helpers/objectHelpers';
22
-
21
+ export { objectsAreTheSame, isAnObject, createCompareValueOverride, isReactElement, isNonElementObject, isPlainObject, deepMergeObjects, overrideMergeObjects, makeInheritanceObject, updateNestedProperty, filterObject, getArrayOfObjectKeys, getArrayOfReadableObjectKeys, getBranchFromPath, deepRemoveProps } from './helpers/objectHelpers';
22
+ export { renderIcon, isSvgIconDefinition, isIconProps, isEmptyIconSource } from './helpers/iconHelpers';
23
23
  // Mocks
24
24
  export { UserMock, MenuMock, xGraphTopMenuMock, xGraphMainMenuMock, DashboardMenuMock, UserMenuMock } from './mocks';
25
25
 
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["Accordion","Chip","Pill","Badge","Dialog","HeaderBar","Icon","NotificationIcon","VentureLogo","CreditSavvyLogo","HomeInLogo","KitLogo","DoshiiLogo","TruyuLogo","SidePanel","Skeleton","Spinner","StatusIconButton","StatusLight","StatusLightsBar","CircularProgressIndicator","Tabs","Tooltip","EllipsisTooltip","RevealMore","CopyText","Paginator","PageBanner","Banner","Alert","SimpleButton","Button","FormField","InputCheckbox","CheckboxInput","StyledRadioGroup","StyledRadioInput","StyledRadioLabel","HookFormWrapper","TextInput","EmailInput","FileInput","SearchInput","NumberInput","PhoneInput","UrlInput","PasswordInput","PasswordInputSignup","SelectDropdown","Select","Combobox","Textarea","InputDate","DateInput","Card","ReportFooter","MainHeader","ThemeLoader","DevToolbar","ThemeSwitch","LoremIpsum","GlobalDashboard","Menu","PopupMenu","SearchPanelMenu","Link","TemplateForm","TemplateLoading","TemplateDashboard","TemplatePage","ProcessLauncher","useOnClickOutside","usePopupKeys","useOnEdgeProximityDetect","useFirstCapital","useTabbableInputGroup","useDialogOverlay","useEllipsisBookends","useFocusTrap","useInertAttribute","useOnInteractiveHostFocus","getMinAge","getMaxAge","getMinAndMaxAges","validateBirthdate","isDateEntryComplete","getAgeInWeeks","getAgeInYears","binaryFindInArray","addAndSortArray","moveItemInArrayMutate","moveItemInArrayCopy","getRandomItemFromArray","getItemIndexWithinArray","getRoundedMedian","getMostOccurringBoolean","cssClassesArrayToString","transformPlacesData","extractNamePieces","dateToShortIsoString","isValidDate","dateToShortReadableDate","dateToShortReadableMonth","timeStampToShortReadableDate","dateToReadableTime","dateToShortReadableDateTime","getLastDateOfMonth","daysSince","USER_CURRENCY","intlCurrencyFormatter","intlNumberFormatter","formatNumberForLocale","formatAsCurrencyForLocale","getNumberAbbreviation","formatRoundedNumberWithAbbreviation","formatNumberWithAbbreviation","formatNumberForChartAxis","formatAsSimpleCurrencyForChartAxis","formatAsInternationalCurrencyForChartAxis","formatAsCurrencyWithAbbreviation","formatFileSize","getRandomNumberBelow","getRandomBetweenInclusive","getRandomBetweenExclusive","hashCode","roundToDecimal","formatNumberToMinDigits","formatDigitalTime","richTextParser","capitalize","capitalizeFirstLetter","lowerCaseFirstLetter","useAnInsteadOfA","splitCamelCase","pluralize","pluralizeIfNeeded","getInitialsOrAcronym","objectsAreTheSame","isAnObject","createCompareValueOverride","deepMergeObjects","overrideMergeObjects","makeInheritanceObject","updateNestedProperty","filterObject","getArrayOfObjectKeys","getArrayOfReadableObjectKeys","getBranchFromPath","deepRemoveProps","UserMock","MenuMock","xGraphTopMenuMock","xGraphMainMenuMock","DashboardMenuMock","UserMenuMock","CBA_ORG_STRUCTURE","CBA_LOGO","VENTURES","DEFAULT_PASSWORD_REGEX","DEFAULT_EMAIL_REGEX","DEFAULT_PHONE_REGEX","DEFAULT_NUMBER_REGEX","DEFAULT_URL_REGEX","DATA_CLASSIFICATIONS","BLACKLISTED_FILE_TYPES","DEFAULT_UPLOAD_FILE_TYPES","DEFAULT_UPLOAD_FILE_EXTENSIONS","LIBRARY_CDN_BASE_URL","LIBRARY_CDN_BASE_URL_PROD","LIBRARY_CDN_BUCKET_NAME","LIBRARY_CDN_BUCKET_FOLDER","LIBRARY_CDN_DEV_BASE_URL","LIBRARY_CDN_PROD_BASE_URL","LIBRARY_VERSION","UserContextProvider","AppContextProvider"],"sources":["../../src/index.ts"],"sourcesContent":["import './styles/index.scss';\nimport './icons/style.scss';\n\n// Components\nexport {\n Accordion,\n Chip,\n Pill,\n Badge,\n Dialog,\n HeaderBar,\n Icon,\n NotificationIcon,\n VentureLogo,\n CreditSavvyLogo,\n HomeInLogo,\n KitLogo,\n DoshiiLogo,\n TruyuLogo,\n SidePanel,\n Skeleton,\n Spinner,\n StatusIconButton,\n StatusLight,\n StatusLightsBar,\n CircularProgressIndicator,\n Tabs,\n Tooltip,\n EllipsisTooltip,\n RevealMore,\n CopyText,\n Paginator,\n PageBanner,\n Banner,\n Alert,\n SimpleButton,\n Button,\n FormField,\n InputCheckbox,\n CheckboxInput,\n StyledRadioGroup,\n StyledRadioInput,\n StyledRadioLabel,\n HookFormWrapper,\n TextInput,\n EmailInput,\n FileInput,\n SearchInput,\n NumberInput,\n PhoneInput,\n UrlInput,\n PasswordInput,\n PasswordInputSignup,\n SelectDropdown,\n Select,\n Combobox,\n Textarea,\n InputDate,\n DateInput,\n Card,\n ReportFooter,\n MainHeader,\n ThemeLoader,\n DevToolbar,\n ThemeSwitch,\n LoremIpsum,\n GlobalDashboard,\n Menu,\n PopupMenu,\n SearchPanelMenu,\n Link,\n TemplateForm,\n TemplateLoading,\n TemplateDashboard,\n TemplatePage\n} from './components';\n\nexport { ProcessLauncher } from './widgets';\n\nexport type {\n ProcessLauncherProps,\n ProcessDefinition,\n ProcessLaunchButtonProps,\n ProcessProgressIndicatorProps,\n ProcessStatus,\n ProcessProgressUpdateMode,\n ProcessPushableStatus,\n ProcessProgressUpdate,\n ProcessProgressSubscriptionHandlers,\n ProcessProgressUnsubscribe,\n ProcessProgressSubscription,\n ProcessLauncherFetchProgressProps,\n ProcessLauncherSubscribeProgressProps,\n ProcessLauncherProgressProps\n} from './widgets';\n\nexport type {\n PageBannerProps,\n FormComponentProps,\n DropdownSelectProps,\n PasswordInputProps,\n StyledRadioGroupProps,\n SkeletonProps,\n ThemeStructure,\n MenuItemPropTypes,\n MenuButtonPropTypes,\n MenuItemIconStates,\n TemplateFormProps,\n TemplateLoadingProps,\n TemplateDashboardProps,\n TemplatePageProps,\n CircularProgressIndicatorProps\n} from './components';\n\n// Hooks\nexport {\n useOnClickOutside,\n usePopupKeys,\n useOnEdgeProximityDetect,\n useFirstCapital,\n useTabbableInputGroup,\n useDialogOverlay,\n useEllipsisBookends,\n useFocusTrap,\n useInertAttribute,\n useOnInteractiveHostFocus\n} from './hooks';\n\n// Interfaces (types only - safe to keep export *)\nexport * from './interfaces';\n\n// Helpers\nexport {\n getMinAge,\n getMaxAge,\n getMinAndMaxAges,\n validateBirthdate,\n isDateEntryComplete,\n getAgeInWeeks,\n getAgeInYears\n} from './helpers/ageHelpers';\n\nexport {\n binaryFindInArray,\n addAndSortArray,\n moveItemInArrayMutate,\n moveItemInArrayCopy,\n getRandomItemFromArray,\n getItemIndexWithinArray,\n getRoundedMedian,\n getMostOccurringBoolean,\n cssClassesArrayToString\n} from './helpers/arrayHelpers';\n\nexport {\n transformPlacesData,\n extractNamePieces\n} from './helpers/dataHelpers';\nexport type { NamePieces } from './helpers/dataHelpers';\n\nexport {\n dateToShortIsoString,\n isValidDate,\n dateToShortReadableDate,\n dateToShortReadableMonth,\n timeStampToShortReadableDate,\n dateToReadableTime,\n dateToShortReadableDateTime,\n getLastDateOfMonth,\n daysSince\n} from './helpers/dateHelpers';\n\nexport {\n USER_CURRENCY,\n intlCurrencyFormatter,\n intlNumberFormatter,\n formatNumberForLocale,\n formatAsCurrencyForLocale,\n getNumberAbbreviation,\n formatRoundedNumberWithAbbreviation,\n formatNumberWithAbbreviation,\n formatNumberForChartAxis,\n formatAsSimpleCurrencyForChartAxis,\n formatAsInternationalCurrencyForChartAxis,\n formatAsCurrencyWithAbbreviation,\n formatFileSize\n} from './helpers/formatters';\n\nexport {\n getRandomNumberBelow,\n getRandomBetweenInclusive,\n getRandomBetweenExclusive,\n hashCode,\n roundToDecimal,\n formatNumberToMinDigits,\n formatDigitalTime\n} from './helpers/numberHelpers';\n\nexport {\n richTextParser,\n capitalize,\n capitalizeFirstLetter,\n lowerCaseFirstLetter,\n useAnInsteadOfA,\n splitCamelCase,\n pluralize,\n pluralizeIfNeeded,\n getInitialsOrAcronym\n} from './helpers/stringHelpers';\n\nexport {\n objectsAreTheSame,\n isAnObject,\n createCompareValueOverride,\n deepMergeObjects,\n overrideMergeObjects,\n makeInheritanceObject,\n updateNestedProperty,\n filterObject,\n getArrayOfObjectKeys,\n getArrayOfReadableObjectKeys,\n getBranchFromPath,\n deepRemoveProps\n} from './helpers/objectHelpers';\n\n// Mocks\nexport {\n UserMock,\n MenuMock,\n xGraphTopMenuMock,\n xGraphMainMenuMock,\n DashboardMenuMock,\n UserMenuMock\n} from './mocks';\n\n// Constants\nexport {\n CBA_ORG_STRUCTURE,\n CBA_LOGO,\n VENTURES,\n DEFAULT_PASSWORD_REGEX,\n DEFAULT_EMAIL_REGEX,\n DEFAULT_PHONE_REGEX,\n DEFAULT_NUMBER_REGEX,\n DEFAULT_URL_REGEX,\n DATA_CLASSIFICATIONS,\n BLACKLISTED_FILE_TYPES,\n DEFAULT_UPLOAD_FILE_TYPES,\n DEFAULT_UPLOAD_FILE_EXTENSIONS,\n LIBRARY_CDN_BASE_URL,\n LIBRARY_CDN_BASE_URL_PROD,\n LIBRARY_CDN_BUCKET_NAME,\n LIBRARY_CDN_BUCKET_FOLDER,\n LIBRARY_CDN_DEV_BASE_URL,\n LIBRARY_CDN_PROD_BASE_URL,\n LIBRARY_VERSION\n} from './constants';\n\nexport type {\n USER,\n GlobalUserRole,\n ScopedUserRole,\n UserAuthType,\n VentureSite,\n VentureSites,\n VentureDefinition,\n VentureDefinitions\n} from './constants';\n\n// Context Providers\nexport { UserContextProvider, AppContextProvider } from './contextProviders';\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["Accordion","Chip","Pill","Badge","Dialog","HeaderBar","Icon","NotificationIcon","VentureLogo","CreditSavvyLogo","HomeInLogo","KitLogo","DoshiiLogo","TruyuLogo","SidePanel","Skeleton","Spinner","StatusIconButton","StatusLight","StatusLightsBar","CircularProgressIndicator","Tabs","Tooltip","EllipsisTooltip","RevealMore","CopyText","Paginator","PageBanner","Banner","Alert","SimpleButton","Button","FormField","InputCheckbox","CheckboxInput","CheckboxSwitch","StyledRadioGroup","StyledRadioInput","StyledRadioLabel","HookFormWrapper","TextInput","EmailInput","FileInput","SearchInput","NumberInput","PhoneInput","UrlInput","PasswordInput","PasswordInputSignup","SelectDropdown","Select","Combobox","Textarea","InputDate","DateInput","Card","ReportFooter","MainHeader","ThemeLoader","DevToolbar","ThemeSwitch","LoremIpsum","GlobalDashboard","Menu","PopupMenu","SearchPanelMenu","Link","TemplateForm","TemplateLoading","TemplateDashboard","TemplatePage","ProcessLauncher","useOnClickOutside","usePopupKeys","useOnEdgeProximityDetect","useFirstCapital","useTabbableInputGroup","useDialogOverlay","useEllipsisBookends","useFocusTrap","useInertAttribute","useOnInteractiveHostFocus","getMinAge","getMaxAge","getMinAndMaxAges","validateBirthdate","isDateEntryComplete","getAgeInWeeks","getAgeInYears","binaryFindInArray","addAndSortArray","moveItemInArrayMutate","moveItemInArrayCopy","getRandomItemFromArray","getItemIndexWithinArray","getRoundedMedian","getMostOccurringBoolean","cssClassesArrayToString","transformPlacesData","extractNamePieces","dateToShortIsoString","isValidDate","dateToShortReadableDate","dateToShortReadableMonth","timeStampToShortReadableDate","dateToReadableTime","dateToShortReadableDateTime","getLastDateOfMonth","daysSince","USER_CURRENCY","intlCurrencyFormatter","intlNumberFormatter","formatNumberForLocale","formatAsCurrencyForLocale","getNumberAbbreviation","formatRoundedNumberWithAbbreviation","formatNumberWithAbbreviation","formatNumberForChartAxis","formatAsSimpleCurrencyForChartAxis","formatAsInternationalCurrencyForChartAxis","formatAsCurrencyWithAbbreviation","formatFileSize","getRandomNumberBelow","getRandomBetweenInclusive","getRandomBetweenExclusive","hashCode","roundToDecimal","formatNumberToMinDigits","formatDigitalTime","richTextParser","capitalize","capitalizeFirstLetter","lowerCaseFirstLetter","useAnInsteadOfA","splitCamelCase","pluralize","pluralizeIfNeeded","getInitialsOrAcronym","objectsAreTheSame","isAnObject","createCompareValueOverride","isReactElement","isNonElementObject","isPlainObject","deepMergeObjects","overrideMergeObjects","makeInheritanceObject","updateNestedProperty","filterObject","getArrayOfObjectKeys","getArrayOfReadableObjectKeys","getBranchFromPath","deepRemoveProps","renderIcon","isSvgIconDefinition","isIconProps","isEmptyIconSource","UserMock","MenuMock","xGraphTopMenuMock","xGraphMainMenuMock","DashboardMenuMock","UserMenuMock","CBA_ORG_STRUCTURE","CBA_LOGO","VENTURES","DEFAULT_PASSWORD_REGEX","DEFAULT_EMAIL_REGEX","DEFAULT_PHONE_REGEX","DEFAULT_NUMBER_REGEX","DEFAULT_URL_REGEX","DATA_CLASSIFICATIONS","BLACKLISTED_FILE_TYPES","DEFAULT_UPLOAD_FILE_TYPES","DEFAULT_UPLOAD_FILE_EXTENSIONS","LIBRARY_CDN_BASE_URL","LIBRARY_CDN_BASE_URL_PROD","LIBRARY_CDN_BUCKET_NAME","LIBRARY_CDN_BUCKET_FOLDER","LIBRARY_CDN_DEV_BASE_URL","LIBRARY_CDN_PROD_BASE_URL","LIBRARY_VERSION","UserContextProvider","AppContextProvider"],"sources":["../../src/index.ts"],"sourcesContent":["import './styles/index.scss';\nimport './icons/style.scss';\n\n// Components\nexport {\n Accordion,\n Chip,\n Pill,\n Badge,\n Dialog,\n HeaderBar,\n Icon,\n NotificationIcon,\n VentureLogo,\n CreditSavvyLogo,\n HomeInLogo,\n KitLogo,\n DoshiiLogo,\n TruyuLogo,\n SidePanel,\n Skeleton,\n Spinner,\n StatusIconButton,\n StatusLight,\n StatusLightsBar,\n CircularProgressIndicator,\n Tabs,\n Tooltip,\n EllipsisTooltip,\n RevealMore,\n CopyText,\n Paginator,\n PageBanner,\n Banner,\n Alert,\n SimpleButton,\n Button,\n FormField,\n InputCheckbox,\n CheckboxInput,\n CheckboxSwitch,\n StyledRadioGroup,\n StyledRadioInput,\n StyledRadioLabel,\n HookFormWrapper,\n TextInput,\n EmailInput,\n FileInput,\n SearchInput,\n NumberInput,\n PhoneInput,\n UrlInput,\n PasswordInput,\n PasswordInputSignup,\n SelectDropdown,\n Select,\n Combobox,\n Textarea,\n InputDate,\n DateInput,\n Card,\n ReportFooter,\n MainHeader,\n ThemeLoader,\n DevToolbar,\n ThemeSwitch,\n LoremIpsum,\n GlobalDashboard,\n Menu,\n PopupMenu,\n SearchPanelMenu,\n Link,\n TemplateForm,\n TemplateLoading,\n TemplateDashboard,\n TemplatePage\n} from './components';\n\nexport { ProcessLauncher } from './widgets';\n\nexport type {\n ProcessLauncherProps,\n ProcessDefinition,\n ProcessLaunchButtonProps,\n ProcessProgressIndicatorProps,\n ProcessStatus,\n ProcessProgressUpdateMode,\n ProcessPushableStatus,\n ProcessProgressUpdate,\n ProcessProgressSubscriptionHandlers,\n ProcessProgressUnsubscribe,\n ProcessProgressSubscription,\n ProcessLauncherFetchProgressProps,\n ProcessLauncherSubscribeProgressProps,\n ProcessLauncherProgressProps\n} from './widgets';\n\nexport type {\n PageBannerProps,\n FormComponentProps,\n DropdownSelectProps,\n PasswordInputProps,\n StyledRadioGroupProps,\n CheckboxSwitchProps,\n CheckboxSwitchSize,\n CheckboxSwitchVariant,\n CheckboxSwitchShape,\n CheckboxSwitchStateDisplay,\n CheckboxSwitchGlowTheme,\n CheckboxSwitchButtonStyle,\n CheckboxSwitchStateProps,\n SkeletonProps,\n ThemeStructure,\n MenuItemPropTypes,\n MenuButtonPropTypes,\n MenuItemIconStates,\n TemplateFormProps,\n TemplateLoadingProps,\n TemplateDashboardProps,\n TemplatePageProps,\n CircularProgressIndicatorProps\n} from './components';\n\n// Hooks\nexport {\n useOnClickOutside,\n usePopupKeys,\n useOnEdgeProximityDetect,\n useFirstCapital,\n useTabbableInputGroup,\n useDialogOverlay,\n useEllipsisBookends,\n useFocusTrap,\n useInertAttribute,\n useOnInteractiveHostFocus\n} from './hooks';\n\n// Interfaces (types only - safe to keep export *)\nexport * from './interfaces';\n\n// Helpers\nexport {\n getMinAge,\n getMaxAge,\n getMinAndMaxAges,\n validateBirthdate,\n isDateEntryComplete,\n getAgeInWeeks,\n getAgeInYears\n} from './helpers/ageHelpers';\n\nexport {\n binaryFindInArray,\n addAndSortArray,\n moveItemInArrayMutate,\n moveItemInArrayCopy,\n getRandomItemFromArray,\n getItemIndexWithinArray,\n getRoundedMedian,\n getMostOccurringBoolean,\n cssClassesArrayToString\n} from './helpers/arrayHelpers';\n\nexport {\n transformPlacesData,\n extractNamePieces\n} from './helpers/dataHelpers';\nexport type { NamePieces } from './helpers/dataHelpers';\n\nexport {\n dateToShortIsoString,\n isValidDate,\n dateToShortReadableDate,\n dateToShortReadableMonth,\n timeStampToShortReadableDate,\n dateToReadableTime,\n dateToShortReadableDateTime,\n getLastDateOfMonth,\n daysSince\n} from './helpers/dateHelpers';\n\nexport {\n USER_CURRENCY,\n intlCurrencyFormatter,\n intlNumberFormatter,\n formatNumberForLocale,\n formatAsCurrencyForLocale,\n getNumberAbbreviation,\n formatRoundedNumberWithAbbreviation,\n formatNumberWithAbbreviation,\n formatNumberForChartAxis,\n formatAsSimpleCurrencyForChartAxis,\n formatAsInternationalCurrencyForChartAxis,\n formatAsCurrencyWithAbbreviation,\n formatFileSize\n} from './helpers/formatters';\n\nexport {\n getRandomNumberBelow,\n getRandomBetweenInclusive,\n getRandomBetweenExclusive,\n hashCode,\n roundToDecimal,\n formatNumberToMinDigits,\n formatDigitalTime\n} from './helpers/numberHelpers';\n\nexport {\n richTextParser,\n capitalize,\n capitalizeFirstLetter,\n lowerCaseFirstLetter,\n useAnInsteadOfA,\n splitCamelCase,\n pluralize,\n pluralizeIfNeeded,\n getInitialsOrAcronym\n} from './helpers/stringHelpers';\n\nexport {\n objectsAreTheSame,\n isAnObject,\n createCompareValueOverride,\n isReactElement,\n isNonElementObject,\n isPlainObject,\n deepMergeObjects,\n overrideMergeObjects,\n makeInheritanceObject,\n updateNestedProperty,\n filterObject,\n getArrayOfObjectKeys,\n getArrayOfReadableObjectKeys,\n getBranchFromPath,\n deepRemoveProps\n} from './helpers/objectHelpers';\nexport type {\n DeepMergeObjectsArgs,\n MakeInheritanceObjectArgs,\n UpdateNestedPropertyArgs\n} from './helpers/objectHelpers';\n\nexport {\n renderIcon,\n isSvgIconDefinition,\n isIconProps,\n isEmptyIconSource\n} from './helpers/iconHelpers';\nexport type {\n IconSource,\n RenderIconOptions,\n SvgIconDefinition,\n SvgIconSize\n} from './helpers/iconHelpers';\n\n// Mocks\nexport {\n UserMock,\n MenuMock,\n xGraphTopMenuMock,\n xGraphMainMenuMock,\n DashboardMenuMock,\n UserMenuMock\n} from './mocks';\n\n// Constants\nexport {\n CBA_ORG_STRUCTURE,\n CBA_LOGO,\n VENTURES,\n DEFAULT_PASSWORD_REGEX,\n DEFAULT_EMAIL_REGEX,\n DEFAULT_PHONE_REGEX,\n DEFAULT_NUMBER_REGEX,\n DEFAULT_URL_REGEX,\n DATA_CLASSIFICATIONS,\n BLACKLISTED_FILE_TYPES,\n DEFAULT_UPLOAD_FILE_TYPES,\n DEFAULT_UPLOAD_FILE_EXTENSIONS,\n LIBRARY_CDN_BASE_URL,\n LIBRARY_CDN_BASE_URL_PROD,\n LIBRARY_CDN_BUCKET_NAME,\n LIBRARY_CDN_BUCKET_FOLDER,\n LIBRARY_CDN_DEV_BASE_URL,\n LIBRARY_CDN_PROD_BASE_URL,\n LIBRARY_VERSION\n} from './constants';\n\nexport type {\n USER,\n GlobalUserRole,\n ScopedUserRole,\n UserAuthType,\n VentureSite,\n VentureSites,\n VentureDefinition,\n VentureDefinitions\n} from './constants';\n\n// Context Providers\nexport { UserContextProvider, AppContextProvider } from './contextProviders';\n"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"headerText.interface.js","names":[],"sources":["../../../src/interfaces/headerText.interface.ts"],"sourcesContent":["import React from 'react';\nimport { NotificationIconProps } from '../components/design/icons/notificationIcon/NotificationIcon';\nimport { ButtonProps } from '../components/form/buttons/button.interface';\nimport { IconProps } from '../components/design/icons/basicIcon/Icon';\nimport { NotificationsButtonProps } from '../components/form/buttons/notificationsButton/NotificationsButton';\n\nexport type SimpleHeaderButton = ButtonProps & {\n kind?: 'simple'\n};\n\nexport type NotificationsHeaderButton = Omit<NotificationsButtonProps, 'label'> & {\n kind?: 'notifications'\n};\n\nexport type HeaderButtonTypes = SimpleHeaderButton | NotificationsHeaderButton;\n\nexport interface HeaderTextInterface {\n leftIcon?: IconProps;\n rightIcon?: IconProps;\n text?: string;\n headingLevel?: 1 | 2 | 3 | 4 | 5 | 6;\n notificationIcon?: NotificationIconProps;\n buttons?: HeaderButtonTypes[];\n children?: React.ReactNode;\n}\n"],"mappings":"","ignoreList":[]}
1
+ {"version":3,"file":"headerText.interface.js","names":[],"sources":["../../../src/interfaces/headerText.interface.ts"],"sourcesContent":["import React from 'react';\nimport { NotificationIconProps } from '../components/design/icons/notificationIcon/NotificationIcon';\nimport { ButtonProps } from '../components/form/buttons/button.interface';\nimport { IconSource } from '../helpers/iconHelpers';\nimport { NotificationsButtonProps } from '../components/form/buttons/notificationsButton/NotificationsButton';\n\nexport type SimpleHeaderButton = ButtonProps & {\n kind?: 'simple'\n};\n\nexport type NotificationsHeaderButton = Omit<NotificationsButtonProps, 'label'> & {\n kind?: 'notifications'\n};\n\nexport type HeaderButtonTypes = SimpleHeaderButton | NotificationsHeaderButton;\n\nexport interface HeaderTextInterface {\n leftIcon?: IconSource;\n rightIcon?: IconSource;\n text?: string;\n headingLevel?: 1 | 2 | 3 | 4 | 5 | 6;\n notificationIcon?: NotificationIconProps;\n buttons?: HeaderButtonTypes[];\n children?: React.ReactNode;\n}\n"],"mappings":"","ignoreList":[]}