nurseitaly-components 0.0.1

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 (332) hide show
  1. package/README.md +93 -0
  2. package/dist/basic/Avatar/Avatar.d.ts +12 -0
  3. package/dist/basic/Avatar/Avatar.js +24 -0
  4. package/dist/basic/Avatar/avatar.png +0 -0
  5. package/dist/basic/Avatar/index.d.ts +2 -0
  6. package/dist/basic/Avatar/index.js +2 -0
  7. package/dist/basic/Avatar/styles.scss +80 -0
  8. package/dist/basic/Badge/Badge.d.ts +13 -0
  9. package/dist/basic/Badge/Badge.js +17 -0
  10. package/dist/basic/Badge/index.d.ts +2 -0
  11. package/dist/basic/Badge/index.js +2 -0
  12. package/dist/basic/Badge/styles.scss +68 -0
  13. package/dist/basic/Button/Button.d.ts +25 -0
  14. package/dist/basic/Button/Button.js +42 -0
  15. package/dist/basic/Button/index.d.ts +2 -0
  16. package/dist/basic/Button/index.js +2 -0
  17. package/dist/basic/Button/logo-ud.png +0 -0
  18. package/dist/basic/Button/styles.scss +248 -0
  19. package/dist/basic/CheckboxField/CheckboxField.d.ts +10 -0
  20. package/dist/basic/CheckboxField/CheckboxField.js +9 -0
  21. package/dist/basic/CheckboxField/index.d.ts +2 -0
  22. package/dist/basic/CheckboxField/index.js +2 -0
  23. package/dist/basic/CheckboxField/style.scss +4 -0
  24. package/dist/basic/DatePickerField/DatePickerField.d.ts +26 -0
  25. package/dist/basic/DatePickerField/DatePickerField.js +90 -0
  26. package/dist/basic/DatePickerField/DatePickerTheme.d.ts +2 -0
  27. package/dist/basic/DatePickerField/DatePickerTheme.js +59 -0
  28. package/dist/basic/DatePickerField/index.d.ts +1 -0
  29. package/dist/basic/DatePickerField/index.js +1 -0
  30. package/dist/basic/DatePickerField/styles.scss +26 -0
  31. package/dist/basic/DropdownButton/DropdownButton.d.ts +18 -0
  32. package/dist/basic/DropdownButton/DropdownButton.js +44 -0
  33. package/dist/basic/DropdownButton/index.d.ts +2 -0
  34. package/dist/basic/DropdownButton/index.js +2 -0
  35. package/dist/basic/DropdownButton/styles.scss +172 -0
  36. package/dist/basic/DropdownList/DropdownItemList.d.ts +16 -0
  37. package/dist/basic/DropdownList/DropdownItemList.js +17 -0
  38. package/dist/basic/DropdownList/DropdownList.d.ts +9 -0
  39. package/dist/basic/DropdownList/DropdownList.js +10 -0
  40. package/dist/basic/DropdownList/index.d.ts +2 -0
  41. package/dist/basic/DropdownList/index.js +2 -0
  42. package/dist/basic/DropdownList/styles.scss +56 -0
  43. package/dist/basic/DropdownMenu/DropdownMenu.d.ts +13 -0
  44. package/dist/basic/DropdownMenu/DropdownMenu.js +12 -0
  45. package/dist/basic/DropdownMenu/index.d.ts +2 -0
  46. package/dist/basic/DropdownMenu/index.js +2 -0
  47. package/dist/basic/DropdownMenu/styles.scss +54 -0
  48. package/dist/basic/Dummy/Dummy.d.ts +9 -0
  49. package/dist/basic/Dummy/Dummy.js +8 -0
  50. package/dist/basic/Dummy/index.d.ts +2 -0
  51. package/dist/basic/Dummy/index.js +2 -0
  52. package/dist/basic/Dummy/styles.scss +4 -0
  53. package/dist/basic/FilterDropdown/FilterDropdown.d.ts +16 -0
  54. package/dist/basic/FilterDropdown/FilterDropdown.js +56 -0
  55. package/dist/basic/FilterDropdown/index.d.ts +2 -0
  56. package/dist/basic/FilterDropdown/index.js +2 -0
  57. package/dist/basic/FilterDropdown/styles.scss +97 -0
  58. package/dist/basic/Icon/Icon.d.ts +15 -0
  59. package/dist/basic/Icon/Icon.js +20 -0
  60. package/dist/basic/Icon/IconSizes.d.ts +10 -0
  61. package/dist/basic/Icon/IconSizes.js +11 -0
  62. package/dist/basic/Icon/index.d.ts +2 -0
  63. package/dist/basic/Icon/index.js +2 -0
  64. package/dist/basic/Icon/styles.scss +249 -0
  65. package/dist/basic/IconButton/IconButton.d.ts +24 -0
  66. package/dist/basic/IconButton/IconButton.js +42 -0
  67. package/dist/basic/IconButton/index.d.ts +2 -0
  68. package/dist/basic/IconButton/index.js +2 -0
  69. package/dist/basic/IconButton/styles.scss +192 -0
  70. package/dist/basic/Pill/Pill.d.ts +17 -0
  71. package/dist/basic/Pill/Pill.js +22 -0
  72. package/dist/basic/Pill/index.d.ts +2 -0
  73. package/dist/basic/Pill/index.js +2 -0
  74. package/dist/basic/Pill/styles.scss +70 -0
  75. package/dist/basic/SelectField/AsyncSelectField.d.ts +21 -0
  76. package/dist/basic/SelectField/AsyncSelectField.js +131 -0
  77. package/dist/basic/SelectField/SelectAutocompleteTheme.d.ts +2 -0
  78. package/dist/basic/SelectField/SelectAutocompleteTheme.js +78 -0
  79. package/dist/basic/SelectField/SelectField.d.ts +27 -0
  80. package/dist/basic/SelectField/SelectField.js +81 -0
  81. package/dist/basic/SelectField/SelectFieldTheme.d.ts +7 -0
  82. package/dist/basic/SelectField/SelectFieldTheme.js +57 -0
  83. package/dist/basic/SelectField/SelectMultipleField.d.ts +28 -0
  84. package/dist/basic/SelectField/SelectMultipleField.js +98 -0
  85. package/dist/basic/SelectField/index.d.ts +2 -0
  86. package/dist/basic/SelectField/index.js +2 -0
  87. package/dist/basic/SelectField/styles.scss +38 -0
  88. package/dist/basic/Spinner/Spinner.d.ts +14 -0
  89. package/dist/basic/Spinner/Spinner.js +37 -0
  90. package/dist/basic/Spinner/index.d.ts +2 -0
  91. package/dist/basic/Spinner/index.js +2 -0
  92. package/dist/basic/Spinner/styles.scss +37 -0
  93. package/dist/basic/SwitchField/SwitchField.d.ts +11 -0
  94. package/dist/basic/SwitchField/SwitchField.js +13 -0
  95. package/dist/basic/SwitchField/index.d.ts +2 -0
  96. package/dist/basic/SwitchField/index.js +2 -0
  97. package/dist/basic/SwitchField/style.scss +4 -0
  98. package/dist/basic/Tabs/Tabs.d.ts +17 -0
  99. package/dist/basic/Tabs/Tabs.js +9 -0
  100. package/dist/basic/Tabs/index.d.ts +2 -0
  101. package/dist/basic/Tabs/index.js +2 -0
  102. package/dist/basic/Tabs/styles.scss +51 -0
  103. package/dist/basic/Tag/Tag.d.ts +18 -0
  104. package/dist/basic/Tag/Tag.js +30 -0
  105. package/dist/basic/Tag/index.d.ts +2 -0
  106. package/dist/basic/Tag/index.js +2 -0
  107. package/dist/basic/Tag/styles.scss +101 -0
  108. package/dist/basic/TextField/TextField.d.ts +34 -0
  109. package/dist/basic/TextField/TextField.js +164 -0
  110. package/dist/basic/TextField/TextFieldTheme.d.ts +6 -0
  111. package/dist/basic/TextField/TextFieldTheme.js +70 -0
  112. package/dist/basic/TextField/index.d.ts +2 -0
  113. package/dist/basic/TextField/index.js +2 -0
  114. package/dist/basic/TextField/inputRefManager.d.ts +4 -0
  115. package/dist/basic/TextField/inputRefManager.js +18 -0
  116. package/dist/basic/TextField/styles.scss +44 -0
  117. package/dist/basic/Tooltip/Tooltip.d.ts +26 -0
  118. package/dist/basic/Tooltip/Tooltip.js +37 -0
  119. package/dist/basic/Tooltip/index.d.ts +2 -0
  120. package/dist/basic/Tooltip/index.js +2 -0
  121. package/dist/basic/Tooltip/styles.scss +73 -0
  122. package/dist/basic/VerticalButton/VerticalButton.d.ts +6 -0
  123. package/dist/basic/VerticalButton/VerticalButton.js +8 -0
  124. package/dist/basic/VerticalButton/index.d.ts +2 -0
  125. package/dist/basic/VerticalButton/index.js +2 -0
  126. package/dist/basic/VerticalButton/styles.scss +24 -0
  127. package/dist/basic/fonts/material-symbols-outlined.woff2 +0 -0
  128. package/dist/basic/fonts/work-sans-latin-ext.woff2 +0 -0
  129. package/dist/basic/fonts/work-sans-latin.woff2 +0 -0
  130. package/dist/basic/fonts/work-sans-vietnamese.woff2 +0 -0
  131. package/dist/basic/fonts.d.ts +1 -0
  132. package/dist/basic/fonts.js +111 -0
  133. package/dist/basic/index.d.ts +33 -0
  134. package/dist/basic/index.js +29 -0
  135. package/dist/common/AppAnalytics/AppAnalytics.d.ts +1 -0
  136. package/dist/common/AppAnalytics/AppAnalytics.js +25 -0
  137. package/dist/common/AppAnalytics/index.d.ts +2 -0
  138. package/dist/common/AppAnalytics/index.js +2 -0
  139. package/dist/common/AppCard/AppCard.d.ts +13 -0
  140. package/dist/common/AppCard/AppCard.js +7 -0
  141. package/dist/common/AppCard/index.d.ts +2 -0
  142. package/dist/common/AppCard/index.js +2 -0
  143. package/dist/common/AppCard/style.scss +33 -0
  144. package/dist/common/AppClipboard/AppClipboard.d.ts +7 -0
  145. package/dist/common/AppClipboard/AppClipboard.js +23 -0
  146. package/dist/common/AppClipboard/index.d.ts +2 -0
  147. package/dist/common/AppClipboard/index.js +2 -0
  148. package/dist/common/AppColorpicker/AppColorpicker.d.ts +9 -0
  149. package/dist/common/AppColorpicker/AppColorpicker.js +22 -0
  150. package/dist/common/AppColorpicker/index.d.ts +2 -0
  151. package/dist/common/AppColorpicker/index.js +2 -0
  152. package/dist/common/AppColorpicker/style.scss +26 -0
  153. package/dist/common/AppCopyText/AppCopyText.d.ts +11 -0
  154. package/dist/common/AppCopyText/AppCopyText.js +35 -0
  155. package/dist/common/AppCopyText/index.d.ts +2 -0
  156. package/dist/common/AppCopyText/index.js +2 -0
  157. package/dist/common/AppCopyText/styles.scss +55 -0
  158. package/dist/common/AppDropzone/AppDropzone.d.ts +19 -0
  159. package/dist/common/AppDropzone/AppDropzone.js +13 -0
  160. package/dist/common/AppDropzone/AppDropzoneBody.d.ts +22 -0
  161. package/dist/common/AppDropzone/AppDropzoneBody.js +74 -0
  162. package/dist/common/AppDropzone/UploadService.d.ts +6 -0
  163. package/dist/common/AppDropzone/UploadService.js +18 -0
  164. package/dist/common/AppDropzone/UploadedFile.d.ts +14 -0
  165. package/dist/common/AppDropzone/UploadedFile.js +1 -0
  166. package/dist/common/AppDropzone/index.d.ts +4 -0
  167. package/dist/common/AppDropzone/index.js +4 -0
  168. package/dist/common/AppDropzone/style.scss +42 -0
  169. package/dist/common/AppDropzoneLocal/AppDropzoneBodyLocal.d.ts +15 -0
  170. package/dist/common/AppDropzoneLocal/AppDropzoneBodyLocal.js +55 -0
  171. package/dist/common/AppDropzoneLocal/AppDropzoneLocal.d.ts +15 -0
  172. package/dist/common/AppDropzoneLocal/AppDropzoneLocal.js +13 -0
  173. package/dist/common/AppDropzoneLocal/UploadedFileLocal.d.ts +5 -0
  174. package/dist/common/AppDropzoneLocal/UploadedFileLocal.js +1 -0
  175. package/dist/common/AppDropzoneLocal/index.d.ts +5 -0
  176. package/dist/common/AppDropzoneLocal/index.js +4 -0
  177. package/dist/common/AppDropzoneLocal/style.scss +75 -0
  178. package/dist/common/AppForm/AppForm.d.ts +16 -0
  179. package/dist/common/AppForm/AppForm.js +67 -0
  180. package/dist/common/AppForm/AppFormField.d.ts +37 -0
  181. package/dist/common/AppForm/AppFormField.js +10 -0
  182. package/dist/common/AppForm/AppFormInfo.d.ts +9 -0
  183. package/dist/common/AppForm/AppFormInfo.js +45 -0
  184. package/dist/common/AppForm/FormColorField.d.ts +12 -0
  185. package/dist/common/AppForm/FormColorField.js +23 -0
  186. package/dist/common/AppForm/index.d.ts +2 -0
  187. package/dist/common/AppForm/index.js +2 -0
  188. package/dist/common/AppForm/style.scss +60 -0
  189. package/dist/common/AppLoading/AppLoading.d.ts +7 -0
  190. package/dist/common/AppLoading/AppLoading.js +8 -0
  191. package/dist/common/AppLoading/index.d.ts +2 -0
  192. package/dist/common/AppLoading/index.js +2 -0
  193. package/dist/common/AppLoading/style.scss +5 -0
  194. package/dist/common/AppModal/AppModal.d.ts +27 -0
  195. package/dist/common/AppModal/AppModal.js +42 -0
  196. package/dist/common/AppModal/AppModalConfirm.d.ts +15 -0
  197. package/dist/common/AppModal/AppModalConfirm.js +37 -0
  198. package/dist/common/AppModal/AppModalRemove.d.ts +22 -0
  199. package/dist/common/AppModal/AppModalRemove.js +35 -0
  200. package/dist/common/AppModal/AppModalUtils.d.ts +2 -0
  201. package/dist/common/AppModal/AppModalUtils.js +17 -0
  202. package/dist/common/AppModal/index.d.ts +2 -0
  203. package/dist/common/AppModal/index.js +2 -0
  204. package/dist/common/AppModal/style.scss +100 -0
  205. package/dist/common/AppPagination/AppPagination.d.ts +12 -0
  206. package/dist/common/AppPagination/AppPagination.js +212 -0
  207. package/dist/common/AppPagination/index.d.ts +2 -0
  208. package/dist/common/AppPagination/index.js +2 -0
  209. package/dist/common/AppPagination/styles.scss +230 -0
  210. package/dist/common/AppPicture/AppPicture.d.ts +10 -0
  211. package/dist/common/AppPicture/AppPicture.js +18 -0
  212. package/dist/common/AppPicture/index.d.ts +2 -0
  213. package/dist/common/AppPicture/index.js +2 -0
  214. package/dist/common/AppPicture/style.scss +0 -0
  215. package/dist/common/AppPlaceholder/AppPlaceholder.d.ts +12 -0
  216. package/dist/common/AppPlaceholder/AppPlaceholder.js +7 -0
  217. package/dist/common/AppPlaceholder/index.d.ts +2 -0
  218. package/dist/common/AppPlaceholder/index.js +2 -0
  219. package/dist/common/AppPlaceholder/style.scss +25 -0
  220. package/dist/common/AppSwitchGroup/AppSwitchGroup.d.ts +12 -0
  221. package/dist/common/AppSwitchGroup/AppSwitchGroup.js +8 -0
  222. package/dist/common/AppSwitchGroup/index.d.ts +2 -0
  223. package/dist/common/AppSwitchGroup/index.js +2 -0
  224. package/dist/common/AppSwitchGroup/style.scss +18 -0
  225. package/dist/common/AppTable/AppTable.d.ts +19 -0
  226. package/dist/common/AppTable/AppTable.js +62 -0
  227. package/dist/common/AppTable/AppTableList.d.ts +14 -0
  228. package/dist/common/AppTable/AppTableList.js +48 -0
  229. package/dist/common/AppTable/AppTableTheme.d.ts +1 -0
  230. package/dist/common/AppTable/AppTableTheme.js +45 -0
  231. package/dist/common/AppTable/AppTableUtils.d.ts +8 -0
  232. package/dist/common/AppTable/AppTableUtils.js +24 -0
  233. package/dist/common/AppTable/index.d.ts +2 -0
  234. package/dist/common/AppTable/index.js +2 -0
  235. package/dist/common/AppTable/styles.scss +65 -0
  236. package/dist/common/AppTable/types/AppPage.d.ts +29 -0
  237. package/dist/common/AppTable/types/AppPage.js +18 -0
  238. package/dist/common/AppTable/types/AppPageable.d.ts +15 -0
  239. package/dist/common/AppTable/types/AppPageable.js +19 -0
  240. package/dist/common/AppTextArea/AppTextArea.d.ts +11 -0
  241. package/dist/common/AppTextArea/AppTextArea.js +29 -0
  242. package/dist/common/AppTextArea/index.d.ts +1 -0
  243. package/dist/common/AppTextArea/index.js +1 -0
  244. package/dist/common/AppTextArea/style.scss +47 -0
  245. package/dist/common/AppToast/AppToast.d.ts +2 -0
  246. package/dist/common/AppToast/AppToast.js +81 -0
  247. package/dist/common/AppToast/ToastMessage.d.ts +8 -0
  248. package/dist/common/AppToast/ToastMessage.js +4 -0
  249. package/dist/common/AppToast/index.d.ts +2 -0
  250. package/dist/common/AppToast/index.js +2 -0
  251. package/dist/common/AppToast/style.scss +0 -0
  252. package/dist/common/index.d.ts +27 -0
  253. package/dist/common/index.js +23 -0
  254. package/dist/configs/CommonContext.d.ts +10 -0
  255. package/dist/configs/CommonContext.js +9 -0
  256. package/dist/configs/CookieStorage.d.ts +15 -0
  257. package/dist/configs/CookieStorage.js +45 -0
  258. package/dist/configs/Localization.d.ts +28 -0
  259. package/dist/configs/Localization.js +63 -0
  260. package/dist/configs/Storage.d.ts +9 -0
  261. package/dist/configs/Storage.js +16 -0
  262. package/dist/configs/api.d.ts +10 -0
  263. package/dist/configs/api.js +52 -0
  264. package/dist/configs/index.d.ts +8 -0
  265. package/dist/configs/index.js +7 -0
  266. package/dist/configs/localization/BaseTexts.d.ts +44 -0
  267. package/dist/configs/localization/BaseTexts.js +44 -0
  268. package/dist/configs/localization/CommentsTexts.d.ts +95 -0
  269. package/dist/configs/localization/CommentsTexts.js +95 -0
  270. package/dist/configs/localization/CommonTexts.d.ts +239 -0
  271. package/dist/configs/localization/CommonTexts.js +239 -0
  272. package/dist/configs/localization/ConsentTexts.d.ts +116 -0
  273. package/dist/configs/localization/ConsentTexts.js +203 -0
  274. package/dist/configs/localization/HeaderAppTexts.d.ts +106 -0
  275. package/dist/configs/localization/HeaderAppTexts.js +106 -0
  276. package/dist/configs/localization/HeaderTexts.d.ts +68 -0
  277. package/dist/configs/localization/HeaderTexts.js +68 -0
  278. package/dist/configs/localization/HelpTexts.d.ts +38 -0
  279. package/dist/configs/localization/HelpTexts.js +38 -0
  280. package/dist/configs/localization/HistoryTexts.d.ts +428 -0
  281. package/dist/configs/localization/HistoryTexts.js +428 -0
  282. package/dist/configs/localization/ParametersTexts.d.ts +137 -0
  283. package/dist/configs/localization/ParametersTexts.js +137 -0
  284. package/dist/configs/localization/SentenceTexts.d.ts +56 -0
  285. package/dist/configs/localization/SentenceTexts.js +56 -0
  286. package/dist/configs/localization/TreeTexts.d.ts +46 -0
  287. package/dist/configs/localization/TreeTexts.js +46 -0
  288. package/dist/configs/localization/UploadTexts.d.ts +23 -0
  289. package/dist/configs/localization/UploadTexts.js +23 -0
  290. package/dist/configs/services/ProfileService.d.ts +5 -0
  291. package/dist/configs/services/ProfileService.js +8 -0
  292. package/dist/configs/sessionTypes.d.ts +42 -0
  293. package/dist/configs/sessionTypes.js +63 -0
  294. package/dist/configs/useLoggedUtils.d.ts +7 -0
  295. package/dist/configs/useLoggedUtils.js +24 -0
  296. package/dist/configs/useMessageUtils.d.ts +22 -0
  297. package/dist/configs/useMessageUtils.js +71 -0
  298. package/dist/fonts/material-symbols-outlined.woff2 +0 -0
  299. package/dist/fonts/work-sans-latin-ext.woff2 +0 -0
  300. package/dist/fonts/work-sans-latin.woff2 +0 -0
  301. package/dist/fonts/work-sans-vietnamese.woff2 +0 -0
  302. package/dist/functions/DateUtils.d.ts +15 -0
  303. package/dist/functions/DateUtils.js +52 -0
  304. package/dist/functions/FilterUtils.d.ts +13 -0
  305. package/dist/functions/FilterUtils.js +56 -0
  306. package/dist/functions/FormUtils.d.ts +13 -0
  307. package/dist/functions/FormUtils.js +58 -0
  308. package/dist/functions/ImageUtils.d.ts +5 -0
  309. package/dist/functions/ImageUtils.js +13 -0
  310. package/dist/functions/SecurityUtils.d.ts +6 -0
  311. package/dist/functions/SecurityUtils.js +28 -0
  312. package/dist/functions/UsabilityUtils.d.ts +10 -0
  313. package/dist/functions/UsabilityUtils.js +47 -0
  314. package/dist/functions/index.d.ts +6 -0
  315. package/dist/functions/index.js +6 -0
  316. package/dist/functions/logo-ud.png +0 -0
  317. package/dist/functions/placeholder-image.png +0 -0
  318. package/dist/functions/placeholder-person.png +0 -0
  319. package/dist/index.d.ts +5 -0
  320. package/dist/index.js +5 -0
  321. package/dist/styles/base/_borders.scss +30 -0
  322. package/dist/styles/base/_colors.scss +100 -0
  323. package/dist/styles/base/_displays.scss +207 -0
  324. package/dist/styles/base/_margins.css +174 -0
  325. package/dist/styles/base/_spacing.scss +26 -0
  326. package/dist/styles/base/_tokens.scss +330 -0
  327. package/dist/styles/base/_typographs.scss +376 -0
  328. package/dist/styles/font-googleapis.scss +222 -0
  329. package/dist/styles/main.scss +112 -0
  330. package/dist/vendor/index.d.ts +5 -0
  331. package/dist/vendor/index.js +4 -0
  332. package/package.json +118 -0
Binary file
@@ -0,0 +1,15 @@
1
+ import { format } from 'date-fns';
2
+ declare function extractDateFromMongoId(id: string, time?: boolean): string;
3
+ declare const DateUtils: {
4
+ millis: () => number;
5
+ formatDate: (date: Date | null, fmt: string) => string;
6
+ format: typeof format;
7
+ parseISOString: (s: string) => Date;
8
+ isValidDate: (date: Date) => boolean;
9
+ parseDate: (dateStr: string, formatStr: string, referenceDate?: Date) => Date;
10
+ addSecondsToDate: (date: Date, seconds: number) => Date;
11
+ parseTime: (time: number) => string;
12
+ extractDateFromMongoId: typeof extractDateFromMongoId;
13
+ formatDateTime: (isoDateStr: string, outputFormat: string) => string;
14
+ };
15
+ export default DateUtils;
@@ -0,0 +1,52 @@
1
+ import { addSeconds, format, isValid, parse, parseISO, } from 'date-fns';
2
+ import { format as formatTz } from 'date-fns-tz';
3
+ const millis = () => new Date().getTime();
4
+ const formatDateTime = (isoDateStr, outputFormat) => {
5
+ if (!isoDateStr)
6
+ return '';
7
+ try {
8
+ const parsedDate = parseISO(isoDateStr);
9
+ return formatTz(parsedDate, outputFormat);
10
+ }
11
+ catch (error) {
12
+ console.error('Invalid date or format:', error);
13
+ return '';
14
+ }
15
+ };
16
+ const formatDate = (date, fmt) => {
17
+ if (!date)
18
+ return '';
19
+ return formatTz(date, fmt);
20
+ };
21
+ const parseISOString = (s) => parseISO(s);
22
+ const isValidDate = (date) => isValid(date);
23
+ const parseDate = (dateStr, formatStr, referenceDate) => parse(dateStr, formatStr, referenceDate ?? new Date());
24
+ const addSecondsToDate = (date, seconds) => addSeconds(date, seconds);
25
+ const parseTime = (time) => {
26
+ if (time == null || time <= 0)
27
+ return '00:00:00.000';
28
+ return new Date(time * 1000).toISOString().slice(11, 23);
29
+ };
30
+ function extractDateFromMongoId(id, time) {
31
+ const DATE_PATTERN = 'yyyy-MM-dd';
32
+ const TIME_PATTERN = 'HH:mm:ss';
33
+ const hexTimestamp = id.substring(0, 8);
34
+ const timestampInMilliseconds = parseInt(hexTimestamp, 16) * 1000;
35
+ const dtf = time ? `${DATE_PATTERN} ${TIME_PATTERN}` : DATE_PATTERN;
36
+ const date = addSeconds(new Date(0), timestampInMilliseconds / 1000);
37
+ const formattedDate = formatTz(date, dtf);
38
+ return formattedDate;
39
+ }
40
+ const DateUtils = {
41
+ millis,
42
+ formatDate,
43
+ format,
44
+ parseISOString,
45
+ isValidDate,
46
+ parseDate,
47
+ addSecondsToDate,
48
+ parseTime,
49
+ extractDateFromMongoId,
50
+ formatDateTime,
51
+ };
52
+ export default DateUtils;
@@ -0,0 +1,13 @@
1
+ import { FieldValues, UseFormReturn } from 'react-hook-form';
2
+ export type DefaultOption = {
3
+ label: string;
4
+ value: any;
5
+ };
6
+ declare const FilterUtils: {
7
+ apply: <T extends FieldValues, TContext = any, TTransformedValues = T>(form: UseFormReturn<T, TContext, TTransformedValues>, setFilter: (f: any) => void, onClose: () => void, emptyPageable: any) => void;
8
+ clear: <T extends FieldValues, TContext = any, TTransformedValues = T>(form: UseFormReturn<T, TContext, TTransformedValues>, setFilter: (f: any) => void, onClose: () => void, clearValues: any) => void;
9
+ isSelected: (filter: any) => boolean;
10
+ reset: <T extends FieldValues, TContext = any, TTransformedValues = T>(form: UseFormReturn<T, TContext, TTransformedValues>, setFilter: (p: any) => void, clearValues: any) => void;
11
+ enter: <T extends FieldValues, TContext = any, TTransformedValues = T>(form: UseFormReturn<T, TContext, TTransformedValues>, setFilter: (f: any) => void, event: React.KeyboardEvent<HTMLDivElement>, onClose: () => void, emptyPageable: any) => void;
12
+ };
13
+ export default FilterUtils;
@@ -0,0 +1,56 @@
1
+ import DateUtils from './DateUtils';
2
+ const enter = (form, setFilter, event, onClose, emptyPageable) => {
3
+ // 'keypress' event misbehaves on mobile so we track 'Enter' key via 'keydown' event
4
+ if (event.key === 'Enter') {
5
+ event.preventDefault();
6
+ event.stopPropagation();
7
+ apply(form, setFilter, onClose, emptyPageable);
8
+ }
9
+ };
10
+ const apply = (form, setFilter, onClose, emptyPageable) => {
11
+ setFilter({ ...form.getValues(), ...emptyPageable });
12
+ onClose();
13
+ };
14
+ const clear = (form, setFilter, onClose, clearValues) => {
15
+ reset(form, setFilter, clearValues);
16
+ onClose();
17
+ };
18
+ const reset = (form, setFilter, clearValues) => {
19
+ form.reset(clearValues);
20
+ setFilter({
21
+ ...clearValues,
22
+ seed: DateUtils.millis(),
23
+ });
24
+ };
25
+ const isSelected = (filter) => {
26
+ const clone = JSON.parse(JSON.stringify(filter));
27
+ delete clone.page;
28
+ delete clone.size;
29
+ delete clone.sort;
30
+ delete clone.seed;
31
+ return !isObjectEmpty(clone);
32
+ };
33
+ const isObjectEmpty = (filter) => {
34
+ if (!filter || Object.keys(filter).length === 0)
35
+ return true;
36
+ let empty = false;
37
+ Object.keys(filter).forEach((key) => {
38
+ if (Array.isArray(filter[key])) {
39
+ if (filter[key].length === 0)
40
+ empty = true;
41
+ }
42
+ else {
43
+ if (!filter[key])
44
+ empty = true;
45
+ }
46
+ });
47
+ return empty;
48
+ };
49
+ const FilterUtils = {
50
+ apply,
51
+ clear,
52
+ isSelected,
53
+ reset,
54
+ enter,
55
+ };
56
+ export default FilterUtils;
@@ -0,0 +1,13 @@
1
+ import { TFunction } from 'i18next';
2
+ import { SelectItem } from '../basic/SelectField/SelectField';
3
+ import { AppFormField } from '../common/AppForm/AppFormField';
4
+ declare const FormUtils: {
5
+ convertEnum: (values: Record<string, string>, t?: TFunction, prefix?: string) => SelectItem[];
6
+ convertList: (values: any, labelAttr: string, valueAttr: string) => SelectItem[];
7
+ convertStringArray: (values: string[]) => SelectItem[];
8
+ booleanOptions: (t: TFunction) => SelectItem[];
9
+ convertMap: (values: Record<string, any> | undefined) => SelectItem[];
10
+ sortByLabel: (items: SelectItem[]) => SelectItem[];
11
+ filterFieldsByUserRole: (fields: AppFormField[], hasRole: (role: string) => boolean) => AppFormField[];
12
+ };
13
+ export default FormUtils;
@@ -0,0 +1,58 @@
1
+ const filterFieldsByUserRole = (fields, hasRole) => fields.filter((field) => !field.role || hasRole(field.role));
2
+ const convertEnum = (values, t, prefix) => {
3
+ if (!t)
4
+ return Object.entries(values).map(([key, label]) => ({
5
+ value: key,
6
+ label,
7
+ }));
8
+ return Object.entries(values).map(([key, label]) => ({
9
+ value: key,
10
+ label: t(`${prefix ? `${prefix}:` : ''}${label}`),
11
+ }));
12
+ };
13
+ const sortByLabel = (items) => {
14
+ return [...items].sort((a, b) => a.label.localeCompare(b.label));
15
+ };
16
+ const convertList = (values, labelAttr, valueAttr) => {
17
+ if (!values)
18
+ return [];
19
+ let fields = [];
20
+ values.map((value) => {
21
+ fields = [...fields, { label: value[labelAttr], value: value[valueAttr] }];
22
+ });
23
+ return fields;
24
+ };
25
+ const convertMap = (values) => {
26
+ if (!values)
27
+ return [];
28
+ let fields = [];
29
+ Object.keys(values).map((key) => {
30
+ fields = [...fields, { label: values[key], value: key }];
31
+ });
32
+ return fields;
33
+ };
34
+ const convertStringArray = (values) => {
35
+ if (!values)
36
+ return [];
37
+ let fields = [];
38
+ values.map((value) => {
39
+ fields = [...fields, { label: value, value }];
40
+ });
41
+ return fields;
42
+ };
43
+ const booleanOptions = (t) => {
44
+ return [
45
+ { label: t('message:generic.option.true'), value: 'true' },
46
+ { label: t('message:generic.option.false'), value: 'false' },
47
+ ];
48
+ };
49
+ const FormUtils = {
50
+ convertEnum,
51
+ convertList,
52
+ convertStringArray,
53
+ booleanOptions,
54
+ convertMap,
55
+ sortByLabel,
56
+ filterFieldsByUserRole,
57
+ };
58
+ export default FormUtils;
@@ -0,0 +1,5 @@
1
+ declare const ImageUtils: {
2
+ display: (url: string, person?: boolean) => string;
3
+ getPlaceHolder: (person?: boolean) => string;
4
+ };
5
+ export default ImageUtils;
@@ -0,0 +1,13 @@
1
+ import placeholder from './placeholder-image.png';
2
+ import placeholderPerson from './placeholder-person.png';
3
+ const display = (url, person) => {
4
+ if (url && url !== '')
5
+ return url;
6
+ return person ? placeholderPerson : placeholder;
7
+ };
8
+ const getPlaceHolder = (person) => person ? placeholderPerson : placeholder;
9
+ const ImageUtils = {
10
+ display,
11
+ getPlaceHolder,
12
+ };
13
+ export default ImageUtils;
@@ -0,0 +1,6 @@
1
+ import { User } from '../configs/sessionTypes';
2
+ declare const SecurityUtils: {
3
+ hasAccess: (uid: string, roles: string[], mode: "lexicon" | "corpus" | "parser") => boolean;
4
+ parseJwt: (token: string) => User;
5
+ };
6
+ export default SecurityUtils;
@@ -0,0 +1,28 @@
1
+ import CookieStorage from '../configs/CookieStorage';
2
+ import { UserStatus } from '../configs/sessionTypes';
3
+ const hasAccess = (uid, roles, mode) => {
4
+ const token = CookieStorage.getJwtToken();
5
+ if (!token)
6
+ return false;
7
+ const logged = parseJwt(token);
8
+ if (logged.status && logged.status === UserStatus.SUPER)
9
+ return true;
10
+ return roles.some((role) => logged.permissions.includes(`ROLE_${role}_${mode.toUpperCase()}_${uid}`));
11
+ };
12
+ const parseJwt = (token) => {
13
+ const base64Url = token.split('.')[1];
14
+ const base64 = base64Url.replace(/-/g, '+').replace(/_/g, '/');
15
+ const payload = decodeURIComponent(window
16
+ .atob(base64)
17
+ .split('')
18
+ .map(function (c) {
19
+ return '%' + ('00' + c.charCodeAt(0).toString(16)).slice(-2);
20
+ })
21
+ .join(''));
22
+ return JSON.parse(payload);
23
+ };
24
+ const SecurityUtils = {
25
+ hasAccess,
26
+ parseJwt,
27
+ };
28
+ export default SecurityUtils;
@@ -0,0 +1,10 @@
1
+ declare const UsabilityUtils: {
2
+ attachCloseToEscape: (handleClose: () => void) => () => void;
3
+ executeOnEnter: (event: React.KeyboardEvent<HTMLDivElement>, fn: () => void) => void;
4
+ isMobile: () => boolean;
5
+ goToAnchor: (anchorId: string, e?: any) => void;
6
+ attachEnter: (event: React.KeyboardEvent<HTMLInputElement>, handleEnter: () => void) => void;
7
+ copy: (text: string, callback?: () => void) => void;
8
+ limitText: (text: string, limit: number) => string;
9
+ };
10
+ export default UsabilityUtils;
@@ -0,0 +1,47 @@
1
+ const copy = (text, callback) => {
2
+ navigator.clipboard.writeText(text).then(() => {
3
+ callback && callback();
4
+ });
5
+ };
6
+ const attachEnter = (event, handleEnter) => {
7
+ // 'keypress' event misbehaves on mobile so we track 'Enter' key via 'keydown' event
8
+ if (event.key === 'Enter') {
9
+ event.preventDefault();
10
+ event.stopPropagation();
11
+ handleEnter();
12
+ }
13
+ };
14
+ const goToAnchor = (anchorId, e) => {
15
+ e && e.preventDefault();
16
+ const anchorElement = document.getElementById(anchorId);
17
+ if (anchorElement) {
18
+ anchorElement.scrollIntoView({ behavior: 'smooth' });
19
+ }
20
+ };
21
+ const attachCloseToEscape = (handleClose) => {
22
+ const closeOnEscape = (e) => {
23
+ if (e.keyCode === 27)
24
+ handleClose();
25
+ };
26
+ window.addEventListener('keydown', closeOnEscape);
27
+ return () => window.removeEventListener('keydown', closeOnEscape);
28
+ };
29
+ const executeOnEnter = (event, fn) => {
30
+ if (event.key === 'Enter') {
31
+ event.preventDefault();
32
+ event.stopPropagation();
33
+ fn();
34
+ }
35
+ };
36
+ const isMobile = () => window.innerWidth < 768;
37
+ const limitText = (text, limit) => text && text.length > limit ? text.slice(0, limit) + '...' : text;
38
+ const UsabilityUtils = {
39
+ attachCloseToEscape,
40
+ executeOnEnter,
41
+ isMobile,
42
+ goToAnchor,
43
+ attachEnter,
44
+ copy,
45
+ limitText,
46
+ };
47
+ export default UsabilityUtils;
@@ -0,0 +1,6 @@
1
+ export { default as DateUtils } from './DateUtils';
2
+ export { default as FilterUtils } from './FilterUtils';
3
+ export { default as FormUtils } from './FormUtils';
4
+ export { default as ImageUtils } from './ImageUtils';
5
+ export { default as SecurityUtils } from './SecurityUtils';
6
+ export { default as UsabilityUtils } from './UsabilityUtils';
@@ -0,0 +1,6 @@
1
+ export { default as DateUtils } from './DateUtils';
2
+ export { default as FilterUtils } from './FilterUtils';
3
+ export { default as FormUtils } from './FormUtils';
4
+ export { default as ImageUtils } from './ImageUtils';
5
+ export { default as SecurityUtils } from './SecurityUtils';
6
+ export { default as UsabilityUtils } from './UsabilityUtils';
Binary file
@@ -0,0 +1,5 @@
1
+ export * from './basic';
2
+ export * from './common';
3
+ export * from './configs';
4
+ export * from './functions';
5
+ export * from './vendor';
package/dist/index.js ADDED
@@ -0,0 +1,5 @@
1
+ export * from './basic';
2
+ export * from './common';
3
+ export * from './configs';
4
+ export * from './functions';
5
+ export * from './vendor';
@@ -0,0 +1,30 @@
1
+ // borders, dividers and border radius
2
+
3
+ :root {
4
+ --border-0: 0px;
5
+ --border-050: 0.5px;
6
+ --border-100: 1px;
7
+ --border-150: 1.5px;
8
+ --border-200: 2px;
9
+ --border-250: 2.5px;
10
+ --border-300: 3px;
11
+ --border-400: 4px;
12
+ --border-500: 5px;
13
+ --border-600: 6px;
14
+ --border-700: 7px;
15
+ --border-800: 8px;
16
+
17
+ --radius-0: 0px;
18
+ --radius-050: 2px;
19
+ --radius-100: 4px;
20
+ --radius-200: 8px;
21
+ --radius-300: 12px;
22
+ --radius-400: 16px;
23
+ --radius-500: 20px;
24
+ --radius-600: 24px;
25
+ --radius-700: 28px;
26
+ --radius-800: 32px;
27
+ --radius-900: 36px;
28
+ --radius-1000: 40px;
29
+ --radius-full: 999px;
30
+ }
@@ -0,0 +1,100 @@
1
+ // colors, tonal scales for accent, neutral and semantic
2
+
3
+ :root {
4
+ --accent-0: #000000;
5
+ --accent-10: #142e57;
6
+ --accent-100: #ffffff;
7
+ --accent-20: #194c8f;
8
+ --accent-30: #185abd;
9
+ --accent-40: #146ce1;
10
+ --accent-50: #1c83f4;
11
+ --accent-60: #32a2ff;
12
+ --accent-70: #59bfff;
13
+ --accent-80: #8ed8ff;
14
+ --accent-90: #bce6ff;
15
+ --accent-95: #d9f0ff;
16
+ --accent-99: #eef9ff;
17
+ --high-contrast-blue: #6bfdff;
18
+ --high-contrast-dark: #000000;
19
+ --high-contrast-green: #7bff57;
20
+ --high-contrast-light: #ffffff;
21
+ --high-contrast-yellow: #fff81f;
22
+ --neutral-dark-0: #ffffff;
23
+ --neutral-dark-10: #f6f7f9;
24
+ --neutral-dark-100: #000000;
25
+ --neutral-dark-20: #ebeef3;
26
+ --neutral-dark-30: #d3d9e4;
27
+ --neutral-dark-40: #acb9cd;
28
+ --neutral-dark-50: #7f94b1;
29
+ --neutral-dark-60: #5f7698;
30
+ --neutral-dark-70: #4b5f7e;
31
+ --neutral-dark-80: #42526e;
32
+ --neutral-dark-90: #364256;
33
+ --neutral-dark-95: #30394a;
34
+ --neutral-dark-99: #202531;
35
+ --neutral-light-0: #000000;
36
+ --neutral-light-10: #141415;
37
+ --neutral-light-100: #ffffff;
38
+ --neutral-light-20: #252627;
39
+ --neutral-light-30: #434447;
40
+ --neutral-light-40: #5c5e61;
41
+ --neutral-light-50: #707276;
42
+ --neutral-light-60: #9d9fa2;
43
+ --neutral-light-70: #bebfc1;
44
+ --neutral-light-80: #cbcccd;
45
+ --neutral-light-90: #eaeaeb;
46
+ --neutral-light-95: #f7f7f8;
47
+ --neutral-light-99: #f9fafb;
48
+ --semantic-danger-0: #000000;
49
+ --semantic-danger-10: #44060c;
50
+ --semantic-danger-100: #ffffff;
51
+ --semantic-danger-20: #7e1015;
52
+ --semantic-danger-30: #9d0f16;
53
+ --semantic-danger-40: #c6080a;
54
+ --semantic-danger-50: #ef1207;
55
+ --semantic-danger-60: #fe3820;
56
+ --semantic-danger-70: #ff5638;
57
+ --semantic-danger-80: #ff8f71;
58
+ --semantic-danger-90: #ffbda8;
59
+ --semantic-danger-95: #ffe0d4;
60
+ --semantic-danger-99: #fff2ed;
61
+ --semantic-info-0: #000000;
62
+ --semantic-info-10: #440055;
63
+ --semantic-info-100: #ffffff;
64
+ --semantic-info-20: #68127d;
65
+ --semantic-info-30: #7c0e9a;
66
+ --semantic-info-40: #950fbc;
67
+ --semantic-info-50: #b720e9;
68
+ --semantic-info-60: #c837fe;
69
+ --semantic-info-70: #dc6dff;
70
+ --semantic-info-80: #e8a4ff;
71
+ --semantic-info-90: #f1ccff;
72
+ --semantic-info-95: #f8e6ff;
73
+ --semantic-info-99: #f8e6ff;
74
+ --semantic-success-0: #000000;
75
+ --semantic-success-10: #182c07;
76
+ --semantic-success-100: #ffffff;
77
+ --semantic-success-20: #335017;
78
+ --semantic-success-30: #3b5e16;
79
+ --semantic-success-40: #477714;
80
+ --semantic-success-50: #5c9c14;
81
+ --semantic-success-60: #70b51c;
82
+ --semantic-success-70: #98de3d;
83
+ --semantic-success-80: #b5ec6a;
84
+ --semantic-success-90: #d3f5a1;
85
+ --semantic-success-95: #e9facd;
86
+ --semantic-success-99: #f6fde8;
87
+ --semantic-warning-0: #000000;
88
+ --semantic-warning-10: #461702;
89
+ --semantic-warning-100: #ffffff;
90
+ --semantic-warning-20: #7a310d;
91
+ --semantic-warning-30: #943a0c;
92
+ --semantic-warning-40: #b74c06;
93
+ --semantic-warning-50: #dd6f02;
94
+ --semantic-warning-60: #f99607;
95
+ --semantic-warning-70: #ffb920;
96
+ --semantic-warning-80: #ffc938;
97
+ --semantic-warning-90: #ffe388;
98
+ --semantic-warning-95: #fff2c6;
99
+ --semantic-warning-99: #fffaeb;
100
+ }