@luscii-healthtech/web-ui 2.9.0 → 2.10.2

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 (287) hide show
  1. package/dist/components/Avatar/Avatar.d.ts +11 -11
  2. package/dist/components/CenteredHero/CenteredHero.d.ts +1 -1
  3. package/dist/components/Container/types/FlexContainerProps.type.d.ts +3 -2
  4. package/dist/components/Datepicker/Datepicker.d.ts +12 -11
  5. package/dist/components/Dropdown/Dropdown.d.ts +17 -7
  6. package/dist/components/ErrorBlock/ErrorBlock.d.ts +3 -3
  7. package/dist/components/Form/form.transformer.d.ts +3 -20
  8. package/dist/components/Form/form.types.d.ts +5 -5
  9. package/dist/components/InfoBlock/InfoBlock.d.ts +4 -4
  10. package/dist/components/Input/SearchInput.d.ts +1 -1
  11. package/dist/components/Line/Line.d.ts +4 -4
  12. package/dist/components/Menu/Menu.d.ts +6 -0
  13. package/dist/components/MultiSelect/MultiSelect.d.ts +7 -7
  14. package/dist/components/Page/CRUDPage.d.ts +13 -13
  15. package/dist/components/Page/Page.d.ts +13 -13
  16. package/dist/components/PaginationMenu/PaginationMenu.utils.d.ts +1 -1
  17. package/dist/components/Radio/Radio.d.ts +5 -1
  18. package/dist/components/RadioGroup/RadioGroup.d.ts +9 -10
  19. package/dist/components/Select/LegacySelect.d.ts +8 -9
  20. package/dist/components/Select/SelectV2.d.ts +1 -1
  21. package/dist/components/Switcher/Switcher.d.ts +6 -6
  22. package/dist/components/Switcher/SwitcherItem.d.ts +7 -7
  23. package/dist/components/Text/LegacyText.d.ts +18 -18
  24. package/dist/components/TextEditor/TextEditor.d.ts +4 -4
  25. package/dist/components/Textarea/Textarea.d.ts +16 -16
  26. package/dist/components/Title/LegacyTitle.d.ts +10 -10
  27. package/dist/web-ui-tailwind.css +8 -0
  28. package/dist/web-ui.cjs.development.js +81 -74
  29. package/dist/web-ui.cjs.development.js.map +1 -1
  30. package/dist/web-ui.cjs.production.min.js +1 -1
  31. package/dist/web-ui.cjs.production.min.js.map +1 -1
  32. package/dist/web-ui.esm.js +81 -74
  33. package/dist/web-ui.esm.js.map +1 -1
  34. package/package.json +7 -3
  35. package/src/assets/add.svg +0 -5
  36. package/src/assets/add_hover.svg +0 -4
  37. package/src/assets/arrow-down-icon.svg +0 -3
  38. package/src/assets/big-menu-icon-hover.svg +0 -6
  39. package/src/assets/big-menu-icon.svg +0 -6
  40. package/src/assets/check-cross-icon.svg +0 -7
  41. package/src/assets/check-icon-primary.svg +0 -5
  42. package/src/assets/check-icon.svg +0 -3
  43. package/src/assets/chevron-double.svg +0 -3
  44. package/src/assets/close.svg +0 -3
  45. package/src/assets/color-variant-cross.svg +0 -3
  46. package/src/assets/cross-dark.svg +0 -3
  47. package/src/assets/delete.svg +0 -4
  48. package/src/assets/delete_hover.svg +0 -4
  49. package/src/assets/edit.svg +0 -6
  50. package/src/assets/edit_hover.svg +0 -6
  51. package/src/assets/error-icon.svg +0 -7
  52. package/src/assets/grid-view-icon-active.svg +0 -6
  53. package/src/assets/grid-view-icon.svg +0 -6
  54. package/src/assets/groups.svg +0 -3
  55. package/src/assets/hamburger.svg +0 -5
  56. package/src/assets/happy-star.svg +0 -9
  57. package/src/assets/hcps.svg +0 -3
  58. package/src/assets/indeterminate-icon.svg +0 -3
  59. package/src/assets/info-icon.svg +0 -6
  60. package/src/assets/left-arrow-blue.svg +0 -3
  61. package/src/assets/left-arrow-grey.svg +0 -3
  62. package/src/assets/list-view-icon-active.svg +0 -3
  63. package/src/assets/list-view-icon.svg +0 -3
  64. package/src/assets/loading.svg +0 -16
  65. package/src/assets/modal-close-icon-active.svg +0 -9
  66. package/src/assets/modal-close-icon.svg +0 -9
  67. package/src/assets/no-open-alerts.svg +0 -19
  68. package/src/assets/patients.svg +0 -3
  69. package/src/assets/phone-mockup.svg +0 -9
  70. package/src/assets/programs.svg +0 -3
  71. package/src/assets/right-arrow-blue.svg +0 -3
  72. package/src/assets/right-arrow-grey.svg +0 -3
  73. package/src/assets/search-cancel.svg +0 -3
  74. package/src/assets/search-not-found.svg +0 -70
  75. package/src/assets/search.svg +0 -3
  76. package/src/assets/spinner-gray.svg +0 -6
  77. package/src/assets/spinner.svg +0 -5
  78. package/src/assets/starIcon.svg +0 -3
  79. package/src/assets/success-icon.svg +0 -6
  80. package/src/components/Accordion/Accordion.tsx +0 -33
  81. package/src/components/Accordion/AccordionItem.tsx +0 -50
  82. package/src/components/Avatar/Avatar.js +0 -81
  83. package/src/components/Avatar/Avatar.scss +0 -153
  84. package/src/components/Badge/Badge.tsx +0 -23
  85. package/src/components/Breadcrumbs/Breadcrumbs.tsx +0 -46
  86. package/src/components/Button/Button.examples.md +0 -46
  87. package/src/components/Button/Button.tsx +0 -200
  88. package/src/components/Button/Button.types.ts +0 -41
  89. package/src/components/Button/ButtonIcon.tsx +0 -42
  90. package/src/components/ButtonV2/ButtonProps.type.ts +0 -44
  91. package/src/components/ButtonV2/ButtonV2.tsx +0 -97
  92. package/src/components/ButtonV2/PrimaryButton.tsx +0 -25
  93. package/src/components/ButtonV2/SecondaryButton.tsx +0 -26
  94. package/src/components/ButtonV2/TertiaryButton.tsx +0 -26
  95. package/src/components/Carousel/Carousel.tsx +0 -52
  96. package/src/components/Carousel/GliderContainer.scss +0 -13
  97. package/src/components/Carousel/GliderContainer.tsx +0 -22
  98. package/src/components/CenteredHero/CenteredHero.tsx +0 -63
  99. package/src/components/CheckBoxListModal/CheckboxListModal.tsx +0 -180
  100. package/src/components/Checkbox/Checkbox.scss +0 -125
  101. package/src/components/Checkbox/Checkbox.tsx +0 -147
  102. package/src/components/CheckboxList/CheckboxGroup.tsx +0 -120
  103. package/src/components/CheckboxList/CheckboxList.tsx +0 -46
  104. package/src/components/CheckboxList/CheckboxList.types.ts +0 -47
  105. package/src/components/CheckboxList/CheckboxListItem.tsx +0 -54
  106. package/src/components/ConfirmationDialog/ConfirmationDialog.scss +0 -15
  107. package/src/components/ConfirmationDialog/ConfirmationDialog.tsx +0 -84
  108. package/src/components/Container/FlexColumn.tsx +0 -18
  109. package/src/components/Container/FlexContainer.tsx +0 -46
  110. package/src/components/Container/FlexRow.tsx +0 -18
  111. package/src/components/Container/types/FlexContainerProps.type.ts +0 -18
  112. package/src/components/Datepicker/Datepicker.js +0 -96
  113. package/src/components/Datepicker/Datepicker.scss +0 -332
  114. package/src/components/Dropdown/Dropdown.js +0 -416
  115. package/src/components/Dropdown/Dropdown.scss +0 -83
  116. package/src/components/EmptyListMessage/EmptyListMessage.tsx +0 -34
  117. package/src/components/ErrorBlock/ErrorBlock.js +0 -24
  118. package/src/components/ErrorBlock/ErrorBlock.scss +0 -20
  119. package/src/components/Form/Form.tsx +0 -138
  120. package/src/components/Form/FormFieldDecorator.tsx +0 -66
  121. package/src/components/Form/FormInput.tsx +0 -47
  122. package/src/components/Form/FormRadioGroup.tsx +0 -23
  123. package/src/components/Form/FormSelect.tsx +0 -32
  124. package/src/components/Form/form.transformer.ts +0 -9
  125. package/src/components/Form/form.types.ts +0 -139
  126. package/src/components/Icons/AddIcon.tsx +0 -29
  127. package/src/components/Icons/AlertsIcon.tsx +0 -39
  128. package/src/components/Icons/BellIcon.tsx +0 -39
  129. package/src/components/Icons/ChartIcon.tsx +0 -22
  130. package/src/components/Icons/ChatBoxIcon.tsx +0 -23
  131. package/src/components/Icons/CheckIcon.tsx +0 -26
  132. package/src/components/Icons/ChevronDoubleIcon.tsx +0 -25
  133. package/src/components/Icons/ChevronDownIcon.tsx +0 -20
  134. package/src/components/Icons/ChevronRightIcon.tsx +0 -20
  135. package/src/components/Icons/CrossIcon.tsx +0 -24
  136. package/src/components/Icons/DeleteIcon.tsx +0 -23
  137. package/src/components/Icons/DownArrowIcon.tsx +0 -23
  138. package/src/components/Icons/DragIcon.tsx +0 -25
  139. package/src/components/Icons/DynamicIcon.tsx +0 -25
  140. package/src/components/Icons/EditIcon.tsx +0 -23
  141. package/src/components/Icons/EmptyIcon.tsx +0 -29
  142. package/src/components/Icons/EmptyStateDashboardIcon.tsx +0 -130
  143. package/src/components/Icons/ExclamationMarkIcon.tsx +0 -23
  144. package/src/components/Icons/EyeIcon.tsx +0 -23
  145. package/src/components/Icons/GearIcon.tsx +0 -23
  146. package/src/components/Icons/GroupIcon.tsx +0 -23
  147. package/src/components/Icons/HamburgerIcon.tsx +0 -31
  148. package/src/components/Icons/HeartIcon.tsx +0 -23
  149. package/src/components/Icons/ImageIcon.tsx +0 -23
  150. package/src/components/Icons/LeftArrowIcon.tsx +0 -23
  151. package/src/components/Icons/LightBulbIcon.tsx +0 -31
  152. package/src/components/Icons/LockIcon.tsx +0 -23
  153. package/src/components/Icons/MessagesIcon.tsx +0 -23
  154. package/src/components/Icons/NotesIcon.tsx +0 -23
  155. package/src/components/Icons/PinIcon.tsx +0 -23
  156. package/src/components/Icons/PrintIcon.tsx +0 -22
  157. package/src/components/Icons/RightArrowIcon.tsx +0 -23
  158. package/src/components/Icons/SearchCancelIcon.tsx +0 -23
  159. package/src/components/Icons/SearchIcon.tsx +0 -23
  160. package/src/components/Icons/SmallCircleIcon.tsx +0 -21
  161. package/src/components/Icons/SmallDiamondIcon.tsx +0 -31
  162. package/src/components/Icons/SmallSquareIcon.tsx +0 -21
  163. package/src/components/Icons/SpaceRocketIcon.tsx +0 -23
  164. package/src/components/Icons/StarIcon.tsx +0 -23
  165. package/src/components/Icons/WarningIcon.tsx +0 -24
  166. package/src/components/Icons/types/IconProps.type.ts +0 -5
  167. package/src/components/InfoBlock/InfoBlock.js +0 -24
  168. package/src/components/InfoBlock/InfoBlock.scss +0 -20
  169. package/src/components/InfoField/InfoField.tsx +0 -94
  170. package/src/components/Input/Input.css +0 -3
  171. package/src/components/Input/Input.tsx +0 -211
  172. package/src/components/Input/SearchInput.tsx +0 -24
  173. package/src/components/Line/Line.js +0 -38
  174. package/src/components/List/List.scss +0 -23
  175. package/src/components/List/List.tsx +0 -138
  176. package/src/components/List/List.types.ts +0 -41
  177. package/src/components/List/ListItem.tsx +0 -89
  178. package/src/components/List/ListItemSkeleton.tsx +0 -26
  179. package/src/components/List/ListSkeleton.scss +0 -5
  180. package/src/components/List/ListSkeleton.tsx +0 -30
  181. package/src/components/LoadingIndicator/LoadingIndicator.scss +0 -50
  182. package/src/components/LoadingIndicator/LoadingIndicator.tsx +0 -46
  183. package/src/components/Menu/Menu.js +0 -74
  184. package/src/components/Menu/Menu.scss +0 -27
  185. package/src/components/Modal/Modal.scss +0 -117
  186. package/src/components/Modal/Modal.tsx +0 -104
  187. package/src/components/Modal/ModalWithButtons.tsx +0 -34
  188. package/src/components/MultiSelect/MultiSelect.js +0 -117
  189. package/src/components/MultiSelect/MultiSelect.scss +0 -29
  190. package/src/components/MultiSelect/MultiSelectUtils.js +0 -23
  191. package/src/components/NavMenu/NavLayout.tsx +0 -40
  192. package/src/components/NavMenu/NavMenu.tsx +0 -39
  193. package/src/components/NavMenu/NavMenu.utils.ts +0 -6
  194. package/src/components/NavMenu/NavMenuContent.tsx +0 -23
  195. package/src/components/NavMenu/NavMenuItem.tsx +0 -102
  196. package/src/components/NotificationBanner/NotificationBanner.tsx +0 -104
  197. package/src/components/Page/CRUDPage.js +0 -123
  198. package/src/components/Page/CRUDPage.scss +0 -32
  199. package/src/components/Page/Page.js +0 -102
  200. package/src/components/Page/Page.scss +0 -59
  201. package/src/components/PageHeader/PageHeader.tsx +0 -51
  202. package/src/components/PaginationMenu/PaginationMenu.tsx +0 -47
  203. package/src/components/PaginationMenu/PaginationMenu.types.ts +0 -46
  204. package/src/components/PaginationMenu/PaginationMenu.utils.ts +0 -49
  205. package/src/components/PaginationMenu/PaginationMenuLarge.tsx +0 -96
  206. package/src/components/PaginationMenu/PaginationMenuSmall.tsx +0 -43
  207. package/src/components/PreviewPhone/PreviewPhone.tsx +0 -52
  208. package/src/components/PreviewPhone/useWindowDimensions.js +0 -26
  209. package/src/components/Radio/Radio.js +0 -102
  210. package/src/components/Radio/Radio.scss +0 -58
  211. package/src/components/Radio/RadioV2.css +0 -15
  212. package/src/components/Radio/RadioV2.tsx +0 -87
  213. package/src/components/RadioGroup/RadioGroup.js +0 -66
  214. package/src/components/RadioGroup/RadioGroup.scss +0 -37
  215. package/src/components/RadioGroup/RadioGroupV2.tsx +0 -35
  216. package/src/components/Section/Section.scss +0 -74
  217. package/src/components/Section/Section.tsx +0 -68
  218. package/src/components/Section/SectionItem.scss +0 -20
  219. package/src/components/Section/SectionItem.tsx +0 -26
  220. package/src/components/Section/SectionItemWithContent.tsx +0 -30
  221. package/src/components/Select/LegacySelect.js +0 -114
  222. package/src/components/Select/Select.scss +0 -29
  223. package/src/components/Select/Select.tsx +0 -151
  224. package/src/components/Select/SelectV2.tsx +0 -171
  225. package/src/components/Select/options.transformer.ts +0 -36
  226. package/src/components/Select/select.utils.spec.ts +0 -63
  227. package/src/components/Select/select.utils.ts +0 -45
  228. package/src/components/SettingsMenuButton/SettingsMenuButton.tsx +0 -111
  229. package/src/components/Spinner/Spinner.tsx +0 -23
  230. package/src/components/Steps/Step.tsx +0 -31
  231. package/src/components/Steps/Steps.tsx +0 -24
  232. package/src/components/Switcher/Switcher.js +0 -58
  233. package/src/components/Switcher/SwitcherItem.js +0 -61
  234. package/src/components/Switcher/SwitcherItem.scss +0 -67
  235. package/src/components/TabLinks/TabLinks.tsx +0 -63
  236. package/src/components/Tabbar/Tabbar.tsx +0 -60
  237. package/src/components/Tabbar/TabbarItem.tsx +0 -66
  238. package/src/components/Table/Table.tsx +0 -91
  239. package/src/components/Table/Table.types.ts +0 -28
  240. package/src/components/Table/Table.utils.ts +0 -23
  241. package/src/components/Table/TableBody.tsx +0 -57
  242. package/src/components/Table/TableBodyRow.tsx +0 -47
  243. package/src/components/Table/TableBodyRowDataCell.tsx +0 -76
  244. package/src/components/Table/TableFooter.tsx +0 -21
  245. package/src/components/Table/TableHeader.tsx +0 -28
  246. package/src/components/Tag/Tag.tsx +0 -58
  247. package/src/components/Tag/Tag.utils.ts +0 -4
  248. package/src/components/Tag/TagGroup.tsx +0 -29
  249. package/src/components/Text/LegacyText.js +0 -78
  250. package/src/components/Text/Text.scss +0 -67
  251. package/src/components/Text/Text.tsx +0 -131
  252. package/src/components/TextEditor/TextEditor.js +0 -61
  253. package/src/components/TextEditor/TextEditor.scss +0 -14
  254. package/src/components/TextEditorV2/TextEditorV2.js +0 -52
  255. package/src/components/TextEditorV2/TextEditorV2.scss +0 -110
  256. package/src/components/TextLink/TextLink.tsx +0 -42
  257. package/src/components/Textarea/Textarea.js +0 -108
  258. package/src/components/Textarea/Textarea.scss +0 -56
  259. package/src/components/Timeline/Timeline.tsx +0 -28
  260. package/src/components/Timeline/TimelineStep.tsx +0 -36
  261. package/src/components/Title/LegacyTitle.js +0 -64
  262. package/src/components/Title/Title.scss +0 -6
  263. package/src/components/Title/Title.tsx +0 -62
  264. package/src/components/Toaster/Toaster.scss +0 -57
  265. package/src/components/Toaster/Toaster.tsx +0 -100
  266. package/src/components/Toaster/toast-elements-getter.ts +0 -72
  267. package/src/components/Toaster/toast-progress-animator.ts +0 -53
  268. package/src/components/Toaster/toast.ts +0 -112
  269. package/src/components/ViewItem/ViewItem.tsx +0 -85
  270. package/src/custom.d.ts +0 -4
  271. package/src/index.tsx +0 -170
  272. package/src/styles/_colors.scss +0 -59
  273. package/src/styles/_layout.scss +0 -64
  274. package/src/styles/_shadows.scss +0 -19
  275. package/src/styles/_skeleton.scss +0 -63
  276. package/src/styles/_typography.scss +0 -8
  277. package/src/styles/_utils.scss +0 -45
  278. package/src/styles/fonts/avenir/3A0AF8_0_0.eot +0 -0
  279. package/src/styles/fonts/avenir/3A0AF8_0_0.ttf +0 -0
  280. package/src/styles/fonts/avenir/3A0AF8_0_0.woff +0 -0
  281. package/src/styles/fonts/avenir/3A0AF8_0_0.woff2 +0 -0
  282. package/src/styles/fonts/avenir/3A0AF8_1_0.eot +0 -0
  283. package/src/styles/fonts/avenir/3A0AF8_1_0.ttf +0 -0
  284. package/src/styles/fonts/avenir/3A0AF8_1_0.woff +0 -0
  285. package/src/styles/fonts/avenir/3A0AF8_1_0.woff2 +0 -0
  286. package/src/types/general.types.ts +0 -11
  287. package/src/utils/useOutsideClick.js +0 -19
@@ -1,100 +0,0 @@
1
- import React from "react";
2
- import classNames from "classnames";
3
-
4
- import { Text } from "../Text/Text";
5
- import { CheckIcon } from "../Icons/CheckIcon";
6
- import { CrossIcon } from "../Icons/CrossIcon";
7
- import { WarningIcon } from "../Icons/WarningIcon";
8
-
9
- import "./Toaster.scss";
10
-
11
- export interface ToasterProps {
12
- type: "success" | "failure";
13
- message: string;
14
- title: string;
15
- isVisible?: boolean;
16
- /** if you need to reposition the toaster for whatever reason you can use these props */
17
- styleOverwrite?: Pick<
18
- React.CSSProperties,
19
- "top" | "bottom" | "left" | "right"
20
- >;
21
- }
22
-
23
- export const TOASTER_TYPE_OPTIONS = {
24
- SUCCESS: "success",
25
- FAILURE: "failure",
26
- } as const;
27
- export type ToasterType =
28
- typeof TOASTER_TYPE_OPTIONS[keyof typeof TOASTER_TYPE_OPTIONS];
29
-
30
- const Toaster: React.VoidFunctionComponent<ToasterProps> = ({
31
- message = "",
32
- title = "",
33
- type = TOASTER_TYPE_OPTIONS.SUCCESS,
34
- isVisible,
35
- styleOverwrite,
36
- }) => {
37
- const isSuccess = type === TOASTER_TYPE_OPTIONS.SUCCESS;
38
- const isFailure = type === TOASTER_TYPE_OPTIONS.FAILURE;
39
-
40
- return (
41
- <div
42
- style={styleOverwrite}
43
- id="application-toaster"
44
- data-test-id={`toaster-panel-${type}`}
45
- className={classNames(
46
- "bg-white cursor-pointer",
47
- "rounded-md shadow-lg",
48
- "min-h-13 max-h-19 w-104 transition-transform",
49
-
50
- {
51
- shelved: !isVisible,
52
- expanded: isVisible,
53
- "type-success": isSuccess,
54
- "type-failure": isFailure,
55
- }
56
- )}
57
- >
58
- <div className="relative p-4">
59
- <div className="flex flex-row">
60
- <div
61
- data-test-id="success-toaster-icon"
62
- className={classNames("success-icon text-green-700", {
63
- hidden: isFailure,
64
- })}
65
- >
66
- <CheckIcon />
67
- </div>
68
- <div
69
- data-test-id="failure-toaster-icon"
70
- className={classNames("failure-icon text-red-700", {
71
- hidden: isSuccess,
72
- })}
73
- >
74
- <WarningIcon />
75
- </div>
76
- <div className="ml-3">
77
- <Text type="strong" data-test-id="toaster-title" text={title} />
78
- <Text data-test-id="toaster-message" text={message} />
79
- </div>
80
- <CrossIcon
81
- data-test-id="toaster-close-button"
82
- className="ml-auto cursor-pointer text-slate-500"
83
- />
84
- </div>
85
- </div>
86
-
87
- <div
88
- data-test-id="toaster-progress-bar-container"
89
- className={classNames("h-1 absolute bottom-0 w-full rounded-b-md")}
90
- >
91
- <div
92
- data-test-id="toaster-progress-bar"
93
- className={classNames("h-full")}
94
- />
95
- </div>
96
- </div>
97
- );
98
- };
99
-
100
- export default Toaster;
@@ -1,72 +0,0 @@
1
- interface GetToasterElementsParams {
2
- timeoutId: NodeJS.Timeout;
3
- progressBarAnimationFrameHandler: number;
4
- }
5
-
6
- interface GetToasterElementsReturn {
7
- toasterElementMessage: HTMLElement;
8
- toasterProgressBar: HTMLElement;
9
- toasterElementTitle: HTMLElement;
10
- toasterElementSuccessIcon: HTMLElement;
11
- toasterElementFailureIcon: HTMLElement;
12
- toasterElementContainer: HTMLElement;
13
- toasterCloseButton: HTMLElement;
14
- }
15
-
16
- /**
17
- *
18
- * @param params.timeoutId - the timeoutId (that makes the toaster vanish), in case of a shortcut
19
- * @param params.progressBarAnimationFrameHandler - animation frame id to be canceled in case of a shortcut
20
- * @returns a collection of html elements to be manipulated by the animation
21
- */
22
- export const getToasterElements = (
23
- params: GetToasterElementsParams
24
- ): GetToasterElementsReturn => {
25
- const { timeoutId, progressBarAnimationFrameHandler } = params;
26
- const toasterElementContainer = document.querySelector<HTMLElement>(
27
- "#application-toaster"
28
- );
29
-
30
- if (!toasterElementContainer) {
31
- clearTimeout(timeoutId);
32
- clearTimeout(progressBarAnimationFrameHandler);
33
-
34
- throw new Error(
35
- "Make sure that the Toaster component element is rendered with an id [application-toaster]"
36
- );
37
- }
38
-
39
- const toasterElementMessage = toasterElementContainer?.querySelector(
40
- '[data-test-id="toaster-message"]'
41
- ) as HTMLElement;
42
-
43
- const toasterElementTitle = toasterElementContainer?.querySelector(
44
- '[data-test-id="toaster-title"]'
45
- ) as HTMLElement;
46
-
47
- const toasterElementSuccessIcon = toasterElementContainer?.querySelector(
48
- '[data-test-id="success-toaster-icon"]'
49
- ) as HTMLElement;
50
-
51
- const toasterElementFailureIcon = toasterElementContainer?.querySelector(
52
- '[data-test-id="failure-toaster-icon"]'
53
- ) as HTMLElement;
54
-
55
- const toasterCloseButton = toasterElementContainer?.querySelector(
56
- '[data-test-id="toaster-close-button"]'
57
- ) as HTMLElement;
58
-
59
- const toasterProgressBar = toasterElementContainer?.querySelector(
60
- '[data-test-id="toaster-progress-bar"]'
61
- ) as HTMLElement;
62
-
63
- return {
64
- toasterElementContainer,
65
- toasterElementMessage,
66
- toasterElementTitle,
67
- toasterProgressBar,
68
- toasterElementSuccessIcon,
69
- toasterElementFailureIcon,
70
- toasterCloseButton,
71
- };
72
- };
@@ -1,53 +0,0 @@
1
- interface AnimateProgressParams {
2
- animationDuration: number;
3
- progressBarElement: HTMLElement;
4
- }
5
-
6
- /**
7
- * Reference: https://developer.mozilla.org/en-US/docs/Web/API/window/requestAnimationFrame
8
- * @param params.animationDuration - the amount of seconds the duration will take
9
- * @param params.progressBarElement - the html element for the progress bar
10
- * @returns the animation frame id
11
- */
12
- export const animateProgress = (params: AnimateProgressParams): number => {
13
- const { animationDuration, progressBarElement } = params;
14
-
15
- let progressBarAnimationFrameHandler: number;
16
-
17
- let startingTimestamp = 0;
18
- let previousTimestamp = 0;
19
- let done = false;
20
- const animationTick = 100 / animationDuration;
21
-
22
- const animate = (animationTimestamp: number) => {
23
- if (!startingTimestamp) {
24
- startingTimestamp = animationTimestamp;
25
- }
26
-
27
- const elapsed = animationTimestamp - startingTimestamp;
28
-
29
- if (previousTimestamp !== animationTimestamp) {
30
- const count = 100 - animationTick * elapsed;
31
- progressBarElement.style.width = `${count}%`;
32
- if (count === 0) {
33
- done = true;
34
- }
35
- }
36
-
37
- if (elapsed < animationDuration) {
38
- // Stop the animation after duration is finished
39
- previousTimestamp = animationTimestamp;
40
-
41
- if (!done) {
42
- progressBarAnimationFrameHandler =
43
- window.requestAnimationFrame(animate);
44
- }
45
- }
46
- };
47
-
48
- progressBarElement.style.width = "100%";
49
-
50
- progressBarAnimationFrameHandler = requestAnimationFrame(animate);
51
-
52
- return progressBarAnimationFrameHandler;
53
- };
@@ -1,112 +0,0 @@
1
- import { getToasterElements } from "./toast-elements-getter";
2
- import { animateProgress } from "./toast-progress-animator";
3
-
4
- let timeoutId: NodeJS.Timeout;
5
- let progressBarAnimationFrameHandler: number;
6
-
7
- const defaultDurationInSeconds = 5;
8
-
9
- type ToastParams =
10
- | {
11
- message: string;
12
- title?: string;
13
- showIcon?: boolean;
14
- type: "success" | "failure";
15
- }
16
- | string;
17
-
18
- const showToaster = (params: ToastParams) => {
19
- clearTimeout(timeoutId);
20
- clearTimeout(progressBarAnimationFrameHandler);
21
-
22
- const {
23
- toasterElementContainer,
24
- toasterElementMessage,
25
- toasterElementTitle,
26
- toasterProgressBar,
27
- toasterElementSuccessIcon,
28
- toasterElementFailureIcon,
29
- toasterCloseButton,
30
- } = getToasterElements({
31
- timeoutId,
32
- progressBarAnimationFrameHandler,
33
- });
34
-
35
- const animationDuration = defaultDurationInSeconds * 1000;
36
-
37
- progressBarAnimationFrameHandler = animateProgress({
38
- animationDuration,
39
- progressBarElement: toasterProgressBar,
40
- });
41
-
42
- timeoutId = setTimeout(() => {
43
- toasterElementContainer.classList.remove("expanded");
44
- clearTimeout(timeoutId);
45
- cancelAnimationFrame(progressBarAnimationFrameHandler);
46
- }, animationDuration);
47
-
48
- function shortcutAndClose() {
49
- toasterElementContainer.classList.remove("expanded");
50
- toasterElementContainer.classList.add("shelved");
51
-
52
- clearTimeout(timeoutId);
53
- cancelAnimationFrame(progressBarAnimationFrameHandler);
54
- }
55
-
56
- toasterCloseButton.removeEventListener("click", shortcutAndClose, true);
57
- toasterCloseButton.addEventListener("click", shortcutAndClose);
58
-
59
- toasterElementContainer.removeEventListener("click", shortcutAndClose, true);
60
- toasterElementContainer.addEventListener("click", shortcutAndClose);
61
-
62
- // Basic usage, no need to manipulate any other element;
63
- if (typeof params === "string") {
64
- toasterElementMessage.textContent = params;
65
- toasterElementTitle.classList.add("hidden");
66
-
67
- toasterElementSuccessIcon.classList.remove("hidden");
68
- toasterElementFailureIcon.classList.add("hidden");
69
-
70
- toasterElementContainer.classList.remove("type-failure");
71
- toasterElementContainer.classList.add("type-success");
72
- toasterElementContainer.classList.add("expanded");
73
-
74
- return;
75
- }
76
-
77
- const { title = "", showIcon = true, message, type } = params;
78
-
79
- toasterElementTitle.classList.toggle("hidden", !title);
80
- toasterElementTitle.textContent = title;
81
-
82
- toasterElementSuccessIcon.classList.toggle("hidden", !showIcon);
83
- toasterElementFailureIcon.classList.toggle("hidden", !showIcon);
84
-
85
- toasterElementMessage.textContent = message;
86
- toasterElementContainer.classList.remove("type-success");
87
- toasterElementContainer.classList.remove("type-failure");
88
- toasterElementContainer.classList.add("expanded");
89
- toasterElementContainer.classList.add(`type-${type}`);
90
- };
91
-
92
- export const toast = (params: ToastParams): void => {
93
- showToaster(params);
94
- };
95
-
96
- toast.error = (message: string): void => {
97
- showToaster({
98
- message: message,
99
- type: "failure",
100
- showIcon: true,
101
- title: "",
102
- });
103
- };
104
-
105
- toast.info = (message: string): void => {
106
- showToaster({
107
- message: message,
108
- type: "success",
109
- showIcon: true,
110
- title: "",
111
- });
112
- };
@@ -1,85 +0,0 @@
1
- import React from "react";
2
- import classNames from "classnames";
3
-
4
- import Text, { TextProps } from "../Text/Text";
5
- import Button from "../Button/Button";
6
- import { RestPropped } from "../../types/general.types";
7
- import { ButtonProps } from "../Button/Button.types";
8
-
9
- export interface ViewItemProps<AccessoryType extends JSX.Element>
10
- extends RestPropped {
11
- titleProps?: TextProps;
12
- // deprecated: use titleProps instead
13
- title?: string;
14
- titleAccessory?: AccessoryType;
15
- // these props are injected in a Text component, allowing for customisation
16
- contentProps?: TextProps[];
17
- // these strings are injected in a default Text component
18
- // deprecated: use contentProps instead
19
- content?: string[];
20
- // if contentProps and content are both empty or null, this value will be presented instead
21
- defaultContent?: string;
22
- className?: string;
23
- buttons?: ButtonProps[];
24
- }
25
-
26
- export function ViewItem<AccessoryType extends JSX.Element>({
27
- titleProps,
28
- title,
29
- titleAccessory,
30
- contentProps,
31
- content,
32
- defaultContent = "-",
33
- className,
34
- buttons,
35
- ...restProps
36
- }: ViewItemProps<AccessoryType>): JSX.Element {
37
- const titlePropsMerged = titleProps ?? { text: title ?? defaultContent };
38
- const contentPropsMerged =
39
- contentProps ??
40
- content?.map(line => {
41
- return { text: line, className: "cweb-view-content-text" } as TextProps;
42
- });
43
-
44
- return (
45
- <div className={classNames("vitals-view-item", className)} {...restProps}>
46
- <div
47
- className={
48
- "vitals-view-item-title-line flex justify-start flex-row items-start"
49
- }
50
- >
51
- {titlePropsMerged && (
52
- <Text
53
- className={classNames(
54
- titlePropsMerged.className,
55
- "vitals-view-item-title mb-1 mr-2"
56
- )}
57
- color="slate-500"
58
- {...titlePropsMerged}
59
- />
60
- )}
61
- {titleAccessory}
62
- </div>
63
- {contentPropsMerged &&
64
- contentPropsMerged?.map(textProps => (
65
- <Text {...textProps} key={textProps.key || textProps.text} />
66
- ))}
67
- {(!contentPropsMerged || contentPropsMerged?.length === 0) && (
68
- <Text text={defaultContent} key="empty-text" />
69
- )}
70
-
71
- <div className="flex flex-row cweb-view-buttons" key="cweb-view-buttons">
72
- {buttons &&
73
- buttons.map(button => (
74
- <Button
75
- {...button}
76
- className={classNames("cweb-view-button ml-3", button.className)}
77
- key={button.key || button.text}
78
- />
79
- ))}
80
- </div>
81
- </div>
82
- );
83
- }
84
-
85
- export default ViewItem;
package/src/custom.d.ts DELETED
@@ -1,4 +0,0 @@
1
- declare module "*.svg" {
2
- const content: any;
3
- export default content;
4
- }
package/src/index.tsx DELETED
@@ -1,170 +0,0 @@
1
- export { FlexColumn } from "./components/Container/FlexColumn";
2
- export { FlexRow } from "./components/Container/FlexRow";
3
- export type { FlexContainerProps } from "./components/Container/types/FlexContainerProps.type";
4
-
5
- export {
6
- default as Toaster,
7
- TOASTER_TYPE_OPTIONS,
8
- } from "./components/Toaster/Toaster";
9
- export { toast } from "./components/Toaster/toast";
10
-
11
- export { default as Avatar } from "./components/Avatar/Avatar";
12
- export { default as Badge } from "./components/Badge/Badge";
13
- export {
14
- BaseButtonProps as NonPrimaryButtonProps,
15
- ButtonWithPendingStateProps as PrimaryButtonProps,
16
- ButtonDefinition,
17
- } from "./components/ButtonV2/ButtonProps.type";
18
- export { PrimaryButton } from "./components/ButtonV2/PrimaryButton";
19
- export { SecondaryButton } from "./components/ButtonV2/SecondaryButton";
20
- export { TertiaryButton } from "./components/ButtonV2/TertiaryButton";
21
- export { default as Carousel } from "./components/Carousel/Carousel";
22
- export { default as CenteredHero } from "./components/CenteredHero/CenteredHero";
23
- export { default as Checkbox } from "./components/Checkbox/Checkbox";
24
- export { ConfirmationDialog } from "./components/ConfirmationDialog/ConfirmationDialog";
25
- export { default as DatePicker } from "./components/Datepicker/Datepicker";
26
- export { default as Dropdown } from "./components/Dropdown/Dropdown";
27
- export { EmptyListMessage } from "./components/EmptyListMessage/EmptyListMessage";
28
- export { default as ErrorBlock } from "./components/ErrorBlock/ErrorBlock";
29
- export { default as InfoBlock } from "./components/InfoBlock/InfoBlock";
30
- export { InfoField } from "./components/InfoField/InfoField";
31
- export { INPUT_TYPES, default as Input } from "./components/Input/Input";
32
- export { default as Line } from "./components/Line/Line";
33
- export { Table, TableProps } from "./components/Table/Table";
34
- export {
35
- TableFieldConfig,
36
- TableFieldContent,
37
- TableFieldText,
38
- TableFieldAction,
39
- } from "./components/Table/Table.types";
40
- export {
41
- LoadingIndicator,
42
- LoadingIndicatorProps,
43
- } from "./components/LoadingIndicator/LoadingIndicator";
44
- export { default as Menu } from "./components/Menu/Menu";
45
- export {
46
- List,
47
- ListProps,
48
- ListItemProps,
49
- OnAssetLoadErrorPayload,
50
- } from "./components/List/List";
51
- export {
52
- CheckboxList,
53
- CheckboxListProps,
54
- } from "./components/CheckboxList/CheckboxList";
55
-
56
- export {
57
- CheckboxListModal,
58
- CheckboxListModalProps,
59
- } from "./components/CheckBoxListModal/CheckboxListModal";
60
-
61
- export { MultiSelect } from "./components/MultiSelect/MultiSelect";
62
- export { NavLayout, NavMenuLayoutProps } from "./components/NavMenu/NavLayout";
63
- export { NavMenu, NavMenuElement } from "./components/NavMenu/NavMenu";
64
- export {
65
- NotificationBanner,
66
- NotificationBannerColor,
67
- NotificationBannerLinkProps,
68
- } from "./components/NotificationBanner/NotificationBanner";
69
- export { default as Page } from "./components/Page/Page";
70
- export { default as CRUDPage } from "./components/Page/CRUDPage";
71
- export { PaginationMenu } from "./components/PaginationMenu/PaginationMenu";
72
- export {
73
- PageSize as PaginationMenuPageSize,
74
- OnPaginationChange as OnPaginationMenuChange,
75
- Localization as PaginationMenuLocalization,
76
- PaginationMenuProps,
77
- } from "./components/PaginationMenu/PaginationMenu.types";
78
- export { default as PreviewPhone } from "./components/PreviewPhone/PreviewPhone";
79
- export { default as Radio } from "./components/Radio/Radio";
80
- export { default as RadioGroup } from "./components/RadioGroup/RadioGroup";
81
- export { RadioProps, RadioV2 } from "./components/Radio/RadioV2";
82
- export {
83
- RadioGroupProps,
84
- RadioGroupV2,
85
- } from "./components/RadioGroup/RadioGroupV2";
86
- export { default as Section } from "./components/Section/Section";
87
- export { default as SectionItemWithContent } from "./components/Section/SectionItemWithContent";
88
- export {
89
- default as SectionItem,
90
- SectionItemProps,
91
- } from "./components/Section/SectionItem";
92
- //export { default as Select } from "./components/Select/Select";
93
- export { SelectProps, Select } from "./components/Select/SelectV2";
94
- export {
95
- SettingsMenuButton,
96
- SettingsMenuButtonProps,
97
- } from "./components/SettingsMenuButton/SettingsMenuButton";
98
- export { Spinner } from "./components/Spinner/Spinner";
99
- export { Steps } from "./components/Steps/Steps";
100
- export { default as Switcher } from "./components/Switcher/Switcher";
101
-
102
- export {
103
- default as Tabbar,
104
- TabbarProps,
105
- TabItemDetails,
106
- } from "./components/Tabbar/Tabbar";
107
-
108
- export {
109
- Breadcrumbs,
110
- BreadcrumbProps,
111
- } from "./components/Breadcrumbs/Breadcrumbs";
112
-
113
- export {
114
- PageHeader,
115
- PageHeaderProps,
116
- } from "./components/PageHeader/PageHeader";
117
-
118
- export { default as TabLinks } from "./components/TabLinks/TabLinks";
119
- export { default as Tag } from "./components/Tag/Tag";
120
- export { default as TagGroup } from "./components/Tag/TagGroup";
121
- export { default as TextArea } from "./components/Textarea/Textarea";
122
- export { default as TextEditor } from "./components/TextEditor/TextEditor";
123
- export { default as TextEditorV2 } from "./components/TextEditorV2/TextEditorV2";
124
- export { TextLink, TextLinkProps } from "./components/TextLink/TextLink";
125
- export { Title, TitleStyle } from "./components/Title/Title";
126
- export { Timeline } from "./components/Timeline/Timeline";
127
- export { ViewItem, ViewItemProps } from "./components/ViewItem/ViewItem";
128
-
129
- export { default as Text } from "./components/Text/Text";
130
-
131
- export { SearchInput, SearchInputProps } from "./components/Input/SearchInput";
132
-
133
- export { GenericForm, Form } from "./components/Form/Form";
134
- export { GenericFormProps, FormProps } from "./components/Form/form.types";
135
-
136
- export { IconProps } from "./components/Icons/types/IconProps.type";
137
- export { AddIcon } from "./components/Icons/AddIcon";
138
- export { AlertsIcon } from "./components/Icons/AlertsIcon";
139
- export { BellIcon } from "./components/Icons/BellIcon";
140
- export { ChartIcon } from "./components/Icons/ChartIcon";
141
- export { ChatBoxIcon } from "./components/Icons/ChatBoxIcon";
142
- export { CheckIcon } from "./components/Icons/CheckIcon";
143
- export { ChevronDoubleIcon } from "./components/Icons/ChevronDoubleIcon";
144
- export { CrossIcon } from "./components/Icons/CrossIcon";
145
- export { DeleteIcon } from "./components/Icons/DeleteIcon";
146
- export { DownArrowIcon } from "./components/Icons/DownArrowIcon";
147
- export { DragIcon } from "./components/Icons/DragIcon";
148
- export { EditIcon } from "./components/Icons/EditIcon";
149
- export { EmptyStateDashboardIcon } from "./components/Icons/EmptyStateDashboardIcon";
150
- export { ExclamationMarkIcon } from "./components/Icons/ExclamationMarkIcon";
151
- export { EyeIcon } from "./components/Icons/EyeIcon";
152
- export { GearIcon } from "./components/Icons/GearIcon";
153
- export { GroupIcon } from "./components/Icons/GroupIcon";
154
- export { HeartIcon } from "./components/Icons/HeartIcon";
155
- export { LeftArrowIcon } from "./components/Icons/LeftArrowIcon";
156
- export { LightBulbIcon } from "./components/Icons/LightBulbIcon";
157
- export { LockIcon } from "./components/Icons/LockIcon";
158
- export { MessagesIcon } from "./components/Icons/MessagesIcon";
159
- export { NotesIcon } from "./components/Icons/NotesIcon";
160
- export { PinIcon } from "./components/Icons/PinIcon";
161
- export { PrintIcon } from "./components/Icons/PrintIcon";
162
- export { RightArrowIcon } from "./components/Icons/RightArrowIcon";
163
- export { SmallCircleIcon } from "./components/Icons/SmallCircleIcon";
164
- export { SmallDiamondIcon } from "./components/Icons/SmallDiamondIcon";
165
- export { SmallSquareIcon } from "./components/Icons/SmallSquareIcon";
166
- export { SpaceRocketIcon } from "./components/Icons/SpaceRocketIcon";
167
- export { StarIcon } from "./components/Icons/StarIcon";
168
- export { HamburgerIcon } from "./components/Icons/HamburgerIcon";
169
- export { SearchIcon } from "./components/Icons/SearchIcon";
170
- export { SearchCancelIcon } from "./components/Icons/SearchCancelIcon";
@@ -1,59 +0,0 @@
1
- //colors
2
-
3
- $input-border: #d1d5db;
4
- $input-background: #d1d5db;
5
- $input-border-dark: #9ca3af;
6
-
7
- $color-background-secondary: #f3f4f6;
8
-
9
- $color-toggle-switch-background: #6abfa6;
10
-
11
- $color-primary: #0074dd;
12
- $color-secondary: #374151;
13
- $color-white: #ffffff;
14
- $color-body: #2d2d2d;
15
-
16
- $color-emphasis-background: #e8f5fc;
17
- $color-primary-emphasis: #045baa;
18
- $color-primary-light: #2da8e5;
19
- $color-luscii-pink: #ff0099;
20
- $color-luscii-green: #6abfa5;
21
-
22
- $color-positive: #4ad461;
23
- $color-positive-support: #e7f5ec;
24
- $color-negative: #ff6266;
25
- $color-negative-support: #fff1f1;
26
- $color-warning: #ffad62;
27
- $color-warning-support: #ffedd5;
28
-
29
- $color-chrome: #f3f3f3;
30
- $color-divider: #eeeeee;
31
- $color-border: #cccccc;
32
- $color-accent: #b9b9b9;
33
- //$color-text-lighter: #9F9F9F; This is an experiment from Dennis to see if it becomes better for our users. Leaving this here if we want to switch back.
34
- $color-text-lighter: #737373;
35
- $color-pale-grey: #f2fafd;
36
- $color-pale-green: #e7f5ec;
37
- $color-pale-grey-2: #f1f1f1;
38
- $color-placeholder: #64748b; // slate-500
39
- $color-slate-50: #f8fafc; // slate-50
40
- $color-slate-100: #f1f5f9; // slate-100
41
- $color-slate-700: #334155; // slate-700
42
- $color-text-secondary: #737373;
43
- $color-text-emphasis: #0f3554;
44
-
45
- $color-comp-dark: #32918f;
46
- $color-comp-light: #57bbb9;
47
- $color-comp-alt: #43bbe7;
48
- $color-comp-active: #516ed0;
49
- $color-comp-darker: #46375f;
50
- $color-comp-darkest: #1f1e1e;
51
-
52
- $color-negative-alt: #ff6660;
53
- $color-negative-alt-emphasis: #e55b56;
54
- $color-branding-support-1: #6abfa5;
55
- $color-branding-support-2: #6670a5;
56
- $color-branding-support-4: #0f3554;
57
-
58
- $color-helper-1: #c5d0de;
59
- $color-emphasis-2: #f0f8f6;