react-luminus-components 1.3.32 → 1.3.34

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 (197) hide show
  1. package/README.md +0 -6
  2. package/dist/.vite/manifest.json +60 -60
  3. package/dist/FromToDatePickerDropdownToggle-DhzBIJXw.cjs +253 -0
  4. package/dist/{FromToDatePickerDropdownToggle-DDOxJCc2.js → FromToDatePickerDropdownToggle-Dk7MFcJp.js} +2761 -2615
  5. package/dist/{PrimaryButton-B64e5vBv.js → PrimaryButton-Bbl06m-g.js} +135 -145
  6. package/dist/PrimaryButton-D33g-RWP.cjs +1 -0
  7. package/dist/{SimpleTooltip-DIqIPx0H.cjs → SimpleTooltip-Bz22xxXa.cjs} +1 -1
  8. package/dist/{SimpleTooltip-BgRjtr0d.js → SimpleTooltip-C32Faxrc.js} +1 -1
  9. package/dist/components/BnfTableValueFormats/UserAvatarValueFormat/UserAvatarValueFormat.d.ts +2 -1
  10. package/dist/components/Buttons/ContextButton/ContextButton.d.ts +0 -1
  11. package/dist/components/Buttons/ContextButton/FileUploadContextButton.d.ts +0 -1
  12. package/dist/components/Buttons/FloatingSubmit/FloatingFormSubmit.d.ts +1 -0
  13. package/dist/components/Buttons/IconButton/IconButton.d.ts +0 -1
  14. package/dist/components/Buttons/PrimaryButton/PrimaryButton.d.ts +0 -1
  15. package/dist/components/Dropdown/Dropdown.d.ts +1 -1
  16. package/dist/components/Dropdown/comps/DropdownDivider/DropdownDivider.d.ts +2 -1
  17. package/dist/components/Dropdown/comps/DropdownItem/DropdownItem.d.ts +0 -1
  18. package/dist/components/Dropdown/comps/DropdownItem/FileUploadDropdownItem.d.ts +0 -1
  19. package/dist/components/Dropdown/comps/DropdownToggle/DropdownToggle.d.ts +1 -1
  20. package/dist/components/Dropdown/comps/SimpleToggle/SimpleToggle.d.ts +5 -4
  21. package/dist/components/Dropdown/comps/UserAvatarToggle/UserAvatarToggle.d.ts +2 -1
  22. package/dist/components/Form/CheckInput/CheckInput.d.ts +2 -2
  23. package/dist/components/Form/DropdownPicker/DropdownPicker.d.ts +2 -2
  24. package/dist/components/Form/NumericStepperInput/NumericStepperInput.d.ts +2 -2
  25. package/dist/components/Form/SelectInput/SelectInput.d.ts +2 -2
  26. package/dist/components/Form/TextAreaInput/TextAreaInput.d.ts +2 -2
  27. package/dist/components/Form/TextInput/TextInput.d.ts +2 -2
  28. package/dist/components/HookForm/CheckInput/HookFormCheckInput.d.ts +2 -2
  29. package/dist/components/HookForm/CustomSelectInput/CustomSelectInput.d.ts +2 -2
  30. package/dist/components/HookForm/DropdownPicker/HookFormDropdownPicker.d.ts +3 -2
  31. package/dist/components/HookForm/FileInput/HookFormFileInput.d.ts +2 -2
  32. package/dist/components/HookForm/FloatingSubmit/HookFormFloatingSubmit.d.ts +1 -0
  33. package/dist/components/HookForm/NumericStepperInput/HookFormNumericStepperInput.d.ts +2 -2
  34. package/dist/components/HookForm/RadioInput/HookFormRadioInput.d.ts +2 -2
  35. package/dist/components/HookForm/SelectInput/HookFormSelectInput.d.ts +2 -2
  36. package/dist/components/HookForm/TextAreaInput/HookFormTextAreaInput.d.ts +2 -2
  37. package/dist/components/HookForm/TextInput/HookFormTextInput.d.ts +2 -2
  38. package/dist/components/InputContainers/FloatingLabelInput/FloatingLabelInput.d.ts +22 -23
  39. package/dist/components/InputContainers/InputAnchorContainer/InputAnchorContainer.d.ts +2 -2
  40. package/dist/components/InputContainers/NoInputContainer/NoInputContainer.d.ts +22 -23
  41. package/dist/components/InputContainers/RowLabelInput/RowLabelInput.d.ts +22 -23
  42. package/dist/components/Layout/MessageBoard/MessageBoard.d.ts +2 -1
  43. package/dist/components/Layout/MessageBoard/components/MessageList/MessageList.d.ts +2 -2
  44. package/dist/components/Layout/MessageBoard/components/MessageList/comps/MessageFilters/MessageFilters.d.ts +0 -1
  45. package/dist/components/Layout/MessageBoard/components/MessageList/comps/MessageItem/MessageItem.d.ts +2 -2
  46. package/dist/components/NewTabs/Tab/Tab.d.ts +1 -0
  47. package/dist/components/NewTabs/TabPanel/TabPanel.d.ts +0 -1
  48. package/dist/components/NewTabs/Tabs/Tabs.d.ts +2 -2
  49. package/dist/components/Tabs/Tabs.d.ts +1 -1
  50. package/dist/components/Tabs/comps/Tab/Tab.d.ts +1 -1
  51. package/dist/components/Tooltip/HtmlTooltip/HtmlTooltip.d.ts +1 -0
  52. package/dist/components/Tooltip/SimpleTooltip/SimpleTooltip.d.ts +1 -0
  53. package/dist/components/UserAvatar/AvatarIcon/AvatarIcon.d.ts +0 -1
  54. package/dist/components/common/Alert/Alert.d.ts +1 -1
  55. package/dist/components/common/AlertItem/AlertItem.d.ts +0 -1
  56. package/dist/components/common/ApiFileDownloadButton/ApiFileDownloadButton.d.ts +2 -1
  57. package/dist/components/common/AppSearch/AppSearch.d.ts +2 -2
  58. package/dist/components/common/AppSearch/comps/AutocompleteWindow/AutocompleteWindow.d.ts +2 -2
  59. package/dist/components/common/AppSearch/comps/TypeSelector/TypeSelector.d.ts +3 -2
  60. package/dist/components/common/AppSearch/hooks/useSearchItems.d.ts +2 -1
  61. package/dist/components/common/AuthTemplate/AuthTemplate.d.ts +2 -1
  62. package/dist/components/common/Backdrop/Backdrop.d.ts +0 -1
  63. package/dist/components/common/Badge/Badge.d.ts +0 -1
  64. package/dist/components/common/Card/Card.d.ts +0 -1
  65. package/dist/components/common/Collapse/Collapse.d.ts +0 -1
  66. package/dist/components/common/ConfirmDialog/ConfirmDialog.d.ts +0 -1
  67. package/dist/components/common/ErrorBoundary/ErrorBoundary.d.ts +2 -1
  68. package/dist/components/common/FloatingActionContainer/FloatingActionContainer.d.ts +0 -1
  69. package/dist/components/common/FromToDatePicker/FromToDatePicker.d.ts +3 -2
  70. package/dist/components/common/FromToDatePicker/components/FromToDatePickerDropdownToggle/FromToDatePickerDropdownToggle.d.ts +2 -1
  71. package/dist/components/common/FromToDatePicker/hooks/useFromToDatePicker.d.ts +2 -1
  72. package/dist/components/common/FromToDatePicker/utils/utilsFromToDatePicker.d.ts +1 -0
  73. package/dist/components/common/HomeDashboard/HomeDashboard.d.ts +3 -3
  74. package/dist/components/common/HomeDashboard/comps/FreeSpaceWidget/FreeSpaceWidget.d.ts +2 -2
  75. package/dist/components/common/HomeDashboard/comps/WidgetPicker/WidgetPicker.d.ts +2 -2
  76. package/dist/components/common/HomeDashboard/hooks/useUserDashboard.d.ts +2 -1
  77. package/dist/components/common/ImgApi/ImgApi.d.ts +2 -2
  78. package/dist/components/common/ImgApi/hooks/useGetImgData.d.ts +2 -2
  79. package/dist/components/common/ImgDirect/ImgDirect.d.ts +2 -2
  80. package/dist/components/common/InvalidFeedback/InvalidFeedback.d.ts +0 -1
  81. package/dist/components/common/Loading/Loading.d.ts +0 -1
  82. package/dist/components/common/Loading/LoadingBlock.d.ts +1 -0
  83. package/dist/components/common/MonthPicker/MonthPicker.d.ts +1 -1
  84. package/dist/components/common/PhotoLibrary/PhotoLibrary.d.ts +2 -2
  85. package/dist/components/common/PhotoLightbox/PhotoLightbox.d.ts +2 -2
  86. package/dist/components/common/PromptDialog/PromptDialog.d.ts +0 -1
  87. package/dist/components/common/SimplePicker/SimplePicker.d.ts +2 -1
  88. package/dist/components/common/Timeline/Timeline.d.ts +2 -2
  89. package/dist/components/common/Typography/Typography.d.ts +0 -1
  90. package/dist/components/common/VersionInfo/VersionInfo.d.ts +0 -1
  91. package/dist/components/common/Widget/WidgetCard.d.ts +1 -0
  92. package/dist/components/common/Widget/WidgetWrapper.d.ts +1 -0
  93. package/dist/components/common/YearPicker/YearPicker.d.ts +0 -1
  94. package/dist/contexts/auth/AuthContext.d.ts +3 -3
  95. package/dist/contexts/auth/AuthProvider.d.ts +2 -2
  96. package/dist/contexts/confirm/ConfirmContext.d.ts +1 -2
  97. package/dist/contexts/confirm/ConfirmProvider.d.ts +0 -1
  98. package/dist/contexts/delegation/DelegationContext.d.ts +3 -2
  99. package/dist/contexts/delegation/DelegationProvider.d.ts +0 -1
  100. package/dist/contexts/loading/LoadingContext.d.ts +1 -2
  101. package/dist/contexts/loading/LoadingProvider.d.ts +0 -1
  102. package/dist/contexts/luminus-components/LuminusComponentsContext.d.ts +3 -16
  103. package/dist/contexts/luminus-components/LuminusComponentsProvider.d.ts +4 -17
  104. package/dist/contexts/prompt/PromptContext.d.ts +3 -3
  105. package/dist/contexts/prompt/PromptProvider.d.ts +1 -0
  106. package/dist/contexts/user/UserContext.d.ts +4 -4
  107. package/dist/contexts/user/UserProvider.d.ts +0 -1
  108. package/dist/contexts.cjs.js +1 -1
  109. package/dist/contexts.d.ts +1 -257
  110. package/dist/contexts.es.js +129 -158
  111. package/dist/{dateUtils-C8trxO28.js → dateUtils-B9-rf1Eh.js} +11 -21
  112. package/dist/{dateUtils-ChS-y8JY.cjs → dateUtils-Bs39Qj7k.cjs} +1 -1
  113. package/dist/hooks/useAxios/useAxios.d.ts +2 -1
  114. package/dist/hooks/useClickOutside/useClickOutside.d.ts +1 -0
  115. package/dist/hooks/useFormControlType/useFormControlType.d.ts +1 -1
  116. package/dist/hooks/useGetApiData/useGetApiData.d.ts +3 -3
  117. package/dist/hooks/useLocalStorageState/useLocalStorageState.d.ts +1 -2
  118. package/dist/hooks/useNotifications/useNotifications.d.ts +1 -1
  119. package/dist/hooks/usePrompt/usePrompt.d.ts +2 -1
  120. package/dist/hooks/useZodSchemaTypes/useZodSchemaTypes.d.ts +2 -1
  121. package/dist/hooks.cjs.js +1 -1
  122. package/dist/hooks.d.ts +1 -162
  123. package/dist/hooks.es.js +22 -22
  124. package/dist/layout/FullScreenContainer/FullScreenContainer.d.ts +2 -2
  125. package/dist/layout/MainContainer/MainContainer.d.ts +2 -2
  126. package/dist/layout/PageTitle/PageTitle.d.ts +1 -0
  127. package/dist/layout/SideContentBar/SideContentBar.d.ts +1 -0
  128. package/dist/layout/SideMenu/MenuItem/MenuItem.d.ts +2 -2
  129. package/dist/layout/SideMenu/SideMenu.d.ts +2 -2
  130. package/dist/layout/TopBar/TopBar.d.ts +0 -1
  131. package/dist/layout.cjs.js +1 -1
  132. package/dist/layout.d.ts +1 -56
  133. package/dist/layout.es.js +92 -95
  134. package/dist/main.cjs.js +1 -1
  135. package/dist/main.d.ts +1 -1
  136. package/dist/main.es.js +1149 -1171
  137. package/dist/models/luminus-context-types/ILocalizationContext.d.ts +1 -0
  138. package/dist/models/prop-types/ContainerProps.d.ts +1 -0
  139. package/dist/models/prop-types/DashboardWidgetCommonProps.d.ts +1 -0
  140. package/dist/models/prop-types/FormInputProps/FormCheckInputProps.d.ts +2 -1
  141. package/dist/models/prop-types/FormInputProps/FormFileInputProps.d.ts +2 -1
  142. package/dist/models/prop-types/FormInputProps/FormNumericStepperInputProps.d.ts +2 -1
  143. package/dist/models/prop-types/FormInputProps/FormRadioInputProps.d.ts +2 -1
  144. package/dist/models/prop-types/FormInputProps/FormSelectInputProps.d.ts +2 -1
  145. package/dist/models/prop-types/FormInputProps/FormTextAreaInputProps.d.ts +2 -1
  146. package/dist/models/prop-types/FormInputProps/FormTextInputProps.d.ts +2 -1
  147. package/dist/models/prop-types/HookFormInputProps/HookFormCheckInputProps.d.ts +3 -2
  148. package/dist/models/prop-types/HookFormInputProps/HookFormDropdownPickerProps.d.ts +3 -2
  149. package/dist/models/prop-types/HookFormInputProps/HookFormFileInputProps.d.ts +3 -2
  150. package/dist/models/prop-types/HookFormInputProps/HookFormInputBaseProps.d.ts +2 -1
  151. package/dist/models/prop-types/HookFormInputProps/HookFormInputProps.d.ts +2 -1
  152. package/dist/models/prop-types/HookFormInputProps/HookFormNumericStepperInputProps.d.ts +3 -2
  153. package/dist/models/prop-types/HookFormInputProps/HookFormRadioInputProps.d.ts +3 -2
  154. package/dist/models/prop-types/HookFormInputProps/HookFormSelectInputProps.d.ts +3 -2
  155. package/dist/models/prop-types/HookFormInputProps/HookFormTextAreaInputProps.d.ts +3 -2
  156. package/dist/models/prop-types/HookFormInputProps/HookFormTextInputProps.d.ts +3 -2
  157. package/dist/models/prop-types/ImgProps.d.ts +1 -0
  158. package/dist/models/prop-types/InputContainerProps.d.ts +0 -1
  159. package/dist/models/prop-types/InputProps/CheckInputProps.d.ts +2 -1
  160. package/dist/models/prop-types/InputProps/DropdownPickerProps.d.ts +5 -5
  161. package/dist/models/prop-types/InputProps/FileInputProps.d.ts +2 -1
  162. package/dist/models/prop-types/InputProps/InputBaseProps.d.ts +2 -1
  163. package/dist/models/prop-types/InputProps/NumericInputProps.d.ts +2 -1
  164. package/dist/models/prop-types/InputProps/RadioInputProps.d.ts +3 -2
  165. package/dist/models/prop-types/InputProps/SelectInputProps.d.ts +3 -2
  166. package/dist/models/prop-types/InputProps/TextAreaInputProps.d.ts +2 -1
  167. package/dist/models/prop-types/InputProps/TextInputProps.d.ts +2 -2
  168. package/dist/models/texts/ComponentsContextTexts.d.ts +21 -2
  169. package/dist/models/texts/ErrorBoundaryTexts.d.ts +1 -0
  170. package/dist/models/types/ApiErrorResult.d.ts +2 -1
  171. package/dist/models/types/DashboardConfig.d.ts +2 -1
  172. package/dist/models/types/DashboardWidget.d.ts +2 -1
  173. package/dist/models/types/DropdownPickerOption.d.ts +2 -1
  174. package/dist/models/types/HookFormInputProps.d.ts +2 -1
  175. package/dist/models/types/MenuItemType.d.ts +0 -1
  176. package/dist/models/types/MenuItemTypeExtended.d.ts +2 -1
  177. package/dist/models/types/PhotoAction.d.ts +0 -1
  178. package/dist/models/types/SearchResultGroupModel.d.ts +3 -2
  179. package/dist/models/types/SearchResultModel.d.ts +2 -1
  180. package/dist/models/types/TimelineStep.d.ts +2 -2
  181. package/dist/models/types/UserLoginState.d.ts +3 -2
  182. package/dist/models/types/UserModel.d.ts +2 -1
  183. package/dist/{searchUtils-C38WM_G8.js → searchUtils-BCxOKHVq.js} +1 -1
  184. package/dist/{searchUtils-BdYnxcy0.cjs → searchUtils-CxNriHg_.cjs} +1 -1
  185. package/dist/{useLocalStorageState-asgEpnUg.cjs → useLocalStorageState-3ebV2Hf5.cjs} +1 -1
  186. package/dist/{useLocalStorageState-CFe9QRz0.js → useLocalStorageState-Cs1tOpr1.js} +3 -3
  187. package/dist/{usePermissions-Ce0AAKj1.cjs → usePermissions-BZPN1OT2.cjs} +1 -1
  188. package/dist/{usePermissions-55of2QBH.js → usePermissions-CfJgVLTi.js} +3 -3
  189. package/dist/utils/apiErrorFields/apiErrorFieldsUtils.d.ts +2 -1
  190. package/dist/utils/bnfValueFormat/bnfValueFormat.d.ts +0 -1
  191. package/dist/utils/hookForm/hookFormUtils.d.ts +2 -1
  192. package/dist/utils.cjs.js +1 -1
  193. package/dist/utils.d.ts +1 -153
  194. package/dist/utils.es.js +7 -7
  195. package/package.json +2 -2
  196. package/dist/FromToDatePickerDropdownToggle-BPfviPUU.cjs +0 -253
  197. package/dist/PrimaryButton-BnrFH2PB.cjs +0 -1
@@ -1,5 +1,5 @@
1
- /// <reference types="react" />
2
- import { SearchResultGroupModel, SearchType } from '@models/index';
1
+ import { SearchResultGroupModel, SearchType } from '../../../../../models/index';
2
+
3
3
  type Props = {
4
4
  query: string;
5
5
  show: boolean;
@@ -1,5 +1,6 @@
1
- import React, { Dispatch, SetStateAction } from 'react';
2
- import SearchType from '@models/types/SearchType';
1
+ import { default as React, Dispatch, SetStateAction } from 'react';
2
+ import { default as SearchType } from '../../../../../models/types/SearchType';
3
+
3
4
  type Props = {
4
5
  searchTypes: SearchType[];
5
6
  selectedType: SearchType | null;
@@ -1,4 +1,5 @@
1
- import { SearchResultGroupModel, SearchType } from '@models/index';
1
+ import { SearchResultGroupModel, SearchType } from '../../../../models/index';
2
+
2
3
  declare const useSearchItems: (type: SearchType | null, query: string) => {
3
4
  isLoading: boolean;
4
5
  searchItems: SearchResultGroupModel[];
@@ -1,4 +1,5 @@
1
- import React from 'react';
1
+ import { default as React } from 'react';
2
+
2
3
  type Props = {
3
4
  appAccessPermissions?: string[];
4
5
  children: React.ReactNode;
@@ -1,4 +1,3 @@
1
- /// <reference types="react" />
2
1
  type Props = {
3
2
  show: boolean;
4
3
  onClick?: () => void;
@@ -1,4 +1,3 @@
1
- /// <reference types="react" />
2
1
  type Props = {
3
2
  children: React.ReactNode;
4
3
  color?: 'primary' | 'danger' | 'success' | 'warning' | 'dark';
@@ -1,4 +1,3 @@
1
- /// <reference types="react" />
2
1
  type BaseProps = {
3
2
  title: React.ReactNode;
4
3
  headerContent?: React.ReactNode;
@@ -1,4 +1,3 @@
1
- /// <reference types="react" />
2
1
  type BaseProps = {
3
2
  title: string;
4
3
  children: React.ReactNode;
@@ -1,3 +1,2 @@
1
- /// <reference types="react" />
2
1
  declare const ConfirmDialog: () => import("react").JSX.Element;
3
2
  export default ConfirmDialog;
@@ -1,4 +1,5 @@
1
- import React, { ReactNode } from 'react';
1
+ import { default as React, ReactNode } from 'react';
2
+
2
3
  type ErrorBoundaryProps = {
3
4
  children: ReactNode;
4
5
  fallback: ReactNode;
@@ -1,4 +1,3 @@
1
- /// <reference types="react" />
2
1
  type Props = {
3
2
  children: React.ReactNode;
4
3
  noSpacer?: boolean;
@@ -1,6 +1,7 @@
1
- import { InputBaseProps } from '@models/index';
2
- import FromTo from '@models/types/FromTo';
1
+ import { InputBaseProps } from '../../../models/index';
2
+ import { default as FromTo } from '../../../models/types/FromTo';
3
3
  import { Dispatch, SetStateAction } from 'react';
4
+
4
5
  type FromToDatePickerProps = {
5
6
  fromtoState: [FromTo, Dispatch<SetStateAction<FromTo>>];
6
7
  className?: string;
@@ -1,4 +1,5 @@
1
- import React from 'react';
1
+ import { default as React } from 'react';
2
+
2
3
  type FromToDatePickerDropdownToggleProps = {
3
4
  onClick: (e: React.MouseEvent<HTMLElement, MouseEvent>) => void;
4
5
  text?: string;
@@ -1,6 +1,7 @@
1
- import FromTo from '@models/types/FromTo';
1
+ import { default as FromTo } from '../../../../models/types/FromTo';
2
2
  import { Dispatch, SetStateAction } from 'react';
3
3
  import { TimeRangeSymbol } from '../constants/TimeRanges';
4
+
4
5
  declare const useFromToDatePicker: (selectedRange: TimeRangeSymbol, setSelectedRange: Dispatch<SetStateAction<TimeRangeSymbol>>, setFromTo: Dispatch<SetStateAction<FromTo>>) => {
5
6
  setFromToProp: <T extends keyof FromTo>(propertyName: T, value: FromTo[T]) => void;
6
7
  handleArrowClick: (offset: -1 | 1) => void;
@@ -1,4 +1,5 @@
1
1
  import { TimeRangeSymbol } from '../constants/TimeRanges';
2
+
2
3
  export declare const getMonthFromTo: (fromDate: Date) => {
3
4
  from: string;
4
5
  to: string;
@@ -1,6 +1,6 @@
1
- /// <reference types="react" />
2
- import DashboardWidget from '@models/types/DashboardWidget';
3
- import { DashboardConfig } from '@models/index';
1
+ import { default as DashboardWidget } from '../../../models/types/DashboardWidget';
2
+ import { DashboardConfig } from '../../../models/index';
3
+
4
4
  type Props = {
5
5
  availableWidgets: DashboardWidget[];
6
6
  editMode?: boolean;
@@ -1,5 +1,5 @@
1
- /// <reference types="react" />
2
- import { DashboardWidget, HomeDashboardTexts } from '@models/index';
1
+ import { DashboardWidget, HomeDashboardTexts } from '../../../../../models/index';
2
+
3
3
  type Props = {
4
4
  availableWidgets: DashboardWidget[];
5
5
  onAdd: (widgetId: number) => void;
@@ -1,5 +1,5 @@
1
- /// <reference types="react" />
2
- import { DashboardWidget, HomeDashboardTexts } from '@models/index';
1
+ import { DashboardWidget, HomeDashboardTexts } from '../../../../../models/index';
2
+
3
3
  type Props = {
4
4
  show: boolean;
5
5
  widgets: DashboardWidget[];
@@ -1,4 +1,5 @@
1
- import DashboardConfig from '@models/types/DashboardConfig';
1
+ import { default as DashboardConfig } from '../../../../models/types/DashboardConfig';
2
+
2
3
  declare const useUserDashboard: (defaultDashboardConfig?: DashboardConfig) => {
3
4
  dashboardConfig: DashboardConfig;
4
5
  onChangeDashboardConfig: (config: DashboardConfig) => void;
@@ -1,4 +1,4 @@
1
- /// <reference types="react" />
2
- import { ImgProps } from '@models/index';
1
+ import { ImgProps } from '../../../models/index';
2
+
3
3
  declare const ImgApi: ({ src, alt, baseUrl, customToken, placeholder, ...otherProps }: ImgProps) => import("react").JSX.Element | null;
4
4
  export default ImgApi;
@@ -1,8 +1,8 @@
1
- /// <reference types="react" />
2
1
  import { GenericAbortSignal } from 'axios';
2
+
3
3
  declare const useGetImgData: (uri: string, baseUrl?: string, customToken?: string, silent?: boolean) => {
4
4
  data: Blob | null;
5
- setData: import("react").Dispatch<import("react").SetStateAction<Blob | null>>;
5
+ setData: import('react').Dispatch<import('react').SetStateAction<Blob | null>>;
6
6
  reloadData: (signal?: GenericAbortSignal) => Promise<void>;
7
7
  isLoading: boolean;
8
8
  };
@@ -1,4 +1,4 @@
1
- /// <reference types="react" />
2
- import { ImgProps } from '@models/index';
1
+ import { ImgProps } from '../../../models/index';
2
+
3
3
  declare const ImgDirect: ({ src, alt, baseUrl, customToken, placeholder, ...otherProps }: ImgProps) => import("react").JSX.Element;
4
4
  export default ImgDirect;
@@ -1,4 +1,3 @@
1
- /// <reference types="react" />
2
1
  type Props = {
3
2
  message: string;
4
3
  };
@@ -1,3 +1,2 @@
1
- /// <reference types="react" />
2
1
  declare const Loading: () => import("react").JSX.Element;
3
2
  export default Loading;
@@ -1,4 +1,5 @@
1
1
  import { HTMLProps } from 'react';
2
+
2
3
  type LoadingBlockProps = HTMLProps<HTMLDivElement>;
3
4
  declare const LoadingBlock: ({ className, ...props }: LoadingBlockProps) => import("react").JSX.Element;
4
5
  export default LoadingBlock;
@@ -1,5 +1,5 @@
1
- /// <reference types="react" />
2
1
  import { Locale } from 'date-fns';
2
+
3
3
  type Props = {
4
4
  month: Date;
5
5
  onChangeMonth: (month: Date) => void;
@@ -1,5 +1,5 @@
1
- /// <reference types="react" />
2
- import { ImgProps, PhotoAction, PhotoLibraryItemModel } from '@models/index';
1
+ import { ImgProps, PhotoAction, PhotoLibraryItemModel } from '../../../models/index';
2
+
3
3
  type Props = {
4
4
  photos: PhotoLibraryItemModel[];
5
5
  uploadPhotosText?: string;
@@ -1,5 +1,5 @@
1
- /// <reference types="react" />
2
- import { ImgProps, PhotoAction, PhotoLibraryItemModel } from '@models/index';
1
+ import { ImgProps, PhotoAction, PhotoLibraryItemModel } from '../../../models/index';
2
+
3
3
  type Props = {
4
4
  show: boolean;
5
5
  onClose: () => void;
@@ -1,3 +1,2 @@
1
- /// <reference types="react" />
2
1
  declare const PromptDialog: () => import("react").JSX.Element;
3
2
  export default PromptDialog;
@@ -1,5 +1,6 @@
1
1
  import { RefObject } from 'react';
2
- import { DropdownPickerOption, DropdownPickerTexts, FormSelectOption } from '@models/index';
2
+ import { DropdownPickerOption, DropdownPickerTexts, FormSelectOption } from '../../../models/index';
3
+
3
4
  type Props = {
4
5
  show: boolean;
5
6
  onCancel: () => void;
@@ -1,5 +1,5 @@
1
- /// <reference types="react" />
2
- import TimelineStep from '@models/types/TimelineStep';
1
+ import { default as TimelineStep } from '../../../models/types/TimelineStep';
2
+
3
3
  type Props = {
4
4
  steps: TimelineStep[];
5
5
  };
@@ -1,4 +1,3 @@
1
- /// <reference types="react" />
2
1
  type TypographyVariant = 'h1' | 'h3' | 'h6' | 'subtitle' | 'body' | 'body2' | 'caption' | 'form-label';
3
2
  type Props = {
4
3
  variant: TypographyVariant;
@@ -1,4 +1,3 @@
1
- /// <reference types="react" />
2
1
  type Props = {
3
2
  version: string;
4
3
  };
@@ -1,4 +1,5 @@
1
1
  import { ReactNode } from 'react';
2
+
2
3
  type WidgetCardProps = {
3
4
  children: ReactNode;
4
5
  title: ReactNode;
@@ -1,4 +1,5 @@
1
1
  import { ReactNode } from 'react';
2
+
2
3
  type WidgetWrapperProps = {
3
4
  title: ReactNode;
4
5
  children: ReactNode;
@@ -1,4 +1,3 @@
1
- /// <reference types="react" />
2
1
  type Props = {
3
2
  year: Date;
4
3
  onChangeYear: (year: Date) => void;
@@ -1,9 +1,9 @@
1
- /// <reference types="react" />
2
- import { PublicClientApplication } from '@azure/msal-browser';
1
+ import { PublicClientApplication } from '../../../node_modules/@azure/msal-browser';
2
+
3
3
  interface IAuthContext {
4
4
  useMsal: boolean;
5
5
  msalInstance: PublicClientApplication | null;
6
6
  msalScopes: string[];
7
7
  }
8
- declare const AuthContext: import("react").Context<IAuthContext>;
8
+ declare const AuthContext: import('react').Context<IAuthContext>;
9
9
  export default AuthContext;
@@ -1,5 +1,5 @@
1
- /// <reference types="react" />
2
- import { PublicClientApplication } from '@azure/msal-browser';
1
+ import { PublicClientApplication } from '../../../node_modules/@azure/msal-browser';
2
+
3
3
  type BaseProps = {
4
4
  children: React.ReactNode;
5
5
  };
@@ -1,9 +1,8 @@
1
- /// <reference types="react" />
2
1
  interface IConfirmContext {
3
2
  show: boolean;
4
3
  text: string;
5
4
  showConfirm: (text: string) => void;
6
5
  hideConfirm: () => void;
7
6
  }
8
- declare const ConfirmContext: import("react").Context<IConfirmContext>;
7
+ declare const ConfirmContext: import('react').Context<IConfirmContext>;
9
8
  export default ConfirmContext;
@@ -1,4 +1,3 @@
1
- /// <reference types="react" />
2
1
  type Props = {
3
2
  children: React.ReactNode;
4
3
  };
@@ -1,6 +1,7 @@
1
- import { NameIdIntModel } from '@models/index';
1
+ import { NameIdIntModel } from '../../models/index';
2
2
  import { GenericAbortSignal } from 'axios';
3
3
  import { Dispatch, SetStateAction } from 'react';
4
+
4
5
  interface EmployeeSmallModel {
5
6
  id: number;
6
7
  name: string | null;
@@ -20,5 +21,5 @@ export interface IDelegationContext {
20
21
  setAvailableDelegations: React.Dispatch<React.SetStateAction<UserDelegationModel[] | null>>;
21
22
  refreshAvailableDelegations: (signal?: GenericAbortSignal, loadCallCount?: number) => Promise<void>;
22
23
  }
23
- declare const DelegationContext: import("react").Context<IDelegationContext>;
24
+ declare const DelegationContext: import('react').Context<IDelegationContext>;
24
25
  export default DelegationContext;
@@ -1,4 +1,3 @@
1
- /// <reference types="react" />
2
1
  type Props = {
3
2
  children: React.ReactNode;
4
3
  relativeEndpoint: string;
@@ -1,8 +1,7 @@
1
- /// <reference types="react" />
2
1
  interface ILoadingContext {
3
2
  isLoading: boolean;
4
3
  startLoading: (key: string) => void;
5
4
  stopLoading: (key: string) => void;
6
5
  }
7
- declare const LoadingContext: import("react").Context<ILoadingContext>;
6
+ declare const LoadingContext: import('react').Context<ILoadingContext>;
8
7
  export default LoadingContext;
@@ -1,4 +1,3 @@
1
- /// <reference types="react" />
2
1
  type Props = {
3
2
  children: React.ReactNode;
4
3
  };
@@ -1,11 +1,9 @@
1
- import { AppSearchTexts, AxiosTexts, CommonLuminusIcons, ConfirmTexts, CustomSelectTexts, FormSubmitTexts, FormValidationTexts, HomeDashboardTexts, ILocalizationContext } from '@models/index';
2
- import ComponentsContextTexts from '@models/texts/ComponentsContextTexts';
3
- import ErrorBoundaryTexts from '@models/texts/ErrorBoundaryTexts';
4
- import WidgetTexts from '@models/texts/WidgetTexts';
1
+ import { CommonLuminusIcons, ILocalizationContext } from '../../models/index';
2
+ import { default as ComponentsContextTexts } from '../../models/texts/ComponentsContextTexts';
5
3
  import { CreateAxiosDefaults } from 'axios';
6
4
  import { Context, ReactNode } from 'react';
7
5
  import { IconBaseProps } from 'react-icons';
8
- import { LinkProps, NavigateProps } from 'react-router-dom';
6
+
9
7
  export type IconComponentType = (props: {
10
8
  icon: CommonLuminusIcons;
11
9
  className?: string;
@@ -14,19 +12,8 @@ export type IconComponentType = (props: {
14
12
  export interface ILuminusComponentsContext {
15
13
  cookieDomain: string;
16
14
  axiosOptions: CreateAxiosDefaults;
17
- LinkComponent: React.ForwardRefExoticComponent<LinkProps & React.RefAttributes<HTMLAnchorElement>>;
18
- NavigateComponent: (props: NavigateProps) => null;
19
15
  localizationContext: Context<ILocalizationContext>;
20
16
  language: string;
21
- axiosTexts: AxiosTexts;
22
- confirmTexts: ConfirmTexts;
23
- formValidationTexts: FormValidationTexts;
24
- homeDashboardTexts: HomeDashboardTexts;
25
- formSubmitTexts: FormSubmitTexts;
26
- appSearchTexts: AppSearchTexts;
27
- customSelectTexts: CustomSelectTexts;
28
- errorBoundaryTexts: ErrorBoundaryTexts;
29
- widgetTexts: WidgetTexts;
30
17
  texts: ComponentsContextTexts;
31
18
  ProjectIconComponent: IconComponentType;
32
19
  }
@@ -1,30 +1,17 @@
1
- import { AppSearchTexts, AxiosTexts, ConfirmTexts, CustomSelectTexts, FormSubmitTexts, FormValidationTexts, HomeDashboardTexts, ILocalizationContext } from '@models/index';
2
- import ComponentsContextTexts from '@models/texts/ComponentsContextTexts';
3
- import ErrorBoundaryTexts from '@models/texts/ErrorBoundaryTexts';
4
- import WidgetTexts from '@models/texts/WidgetTexts';
1
+ import { ILocalizationContext } from '../../models/index';
2
+ import { default as ComponentsContextTexts } from '../../models/texts/ComponentsContextTexts';
5
3
  import { CreateAxiosDefaults } from 'axios';
6
4
  import { Context } from 'react';
7
- import { LinkProps, NavigateProps } from 'react-router-dom';
8
5
  import { IconComponentType } from './LuminusComponentsContext';
6
+
9
7
  type Props = {
10
8
  cookieDomain: string;
11
9
  axiosOptions: CreateAxiosDefaults;
12
- LinkComponent: React.ForwardRefExoticComponent<LinkProps & React.RefAttributes<HTMLAnchorElement>>;
13
- NavigateComponent: (props: NavigateProps) => null;
14
10
  language: string;
15
- axiosTexts: AxiosTexts;
16
- confirmTexts: ConfirmTexts;
17
- formValidationTexts: FormValidationTexts;
18
- homeDashboardTexts: HomeDashboardTexts;
19
- formSubmitTexts: FormSubmitTexts;
20
- appSearchTexts: AppSearchTexts;
21
- customSelectTexts: CustomSelectTexts;
22
11
  children: React.ReactNode;
23
- errorBoundaryTexts: ErrorBoundaryTexts;
24
- widgetTexts: WidgetTexts;
25
12
  texts: ComponentsContextTexts;
26
13
  ProjectIconComponent: IconComponentType;
27
14
  localizationContext: Context<ILocalizationContext>;
28
15
  };
29
- declare const LuminusComponentsProvider: ({ cookieDomain, axiosOptions, LinkComponent, NavigateComponent, language, axiosTexts, confirmTexts, formValidationTexts, homeDashboardTexts, formSubmitTexts, appSearchTexts, customSelectTexts, errorBoundaryTexts, widgetTexts, texts, ProjectIconComponent, localizationContext, children, }: Props) => import("react").JSX.Element;
16
+ declare const LuminusComponentsProvider: ({ cookieDomain, axiosOptions, language, texts, ProjectIconComponent, localizationContext, children, }: Props) => import("react").JSX.Element;
30
17
  export default LuminusComponentsProvider;
@@ -1,5 +1,5 @@
1
- /// <reference types="react" />
2
- import PromptOptions from '@models/types/PromptOptions';
1
+ import { default as PromptOptions } from '../../models/types/PromptOptions';
2
+
3
3
  interface IPromptContext {
4
4
  isShown: boolean;
5
5
  text: string;
@@ -9,5 +9,5 @@ interface IPromptContext {
9
9
  options: PromptOptions;
10
10
  setOptions: React.Dispatch<React.SetStateAction<PromptOptions>>;
11
11
  }
12
- declare const PromptContext: import("react").Context<IPromptContext>;
12
+ declare const PromptContext: import('react').Context<IPromptContext>;
13
13
  export default PromptContext;
@@ -1,4 +1,5 @@
1
1
  import { ReactNode } from 'react';
2
+
2
3
  type Props = {
3
4
  children: ReactNode;
4
5
  };
@@ -1,11 +1,11 @@
1
- /// <reference types="react" />
2
- import UserModel from '@models/types/UserModel';
3
- import { UserLoginState } from '@models/index';
1
+ import { default as UserModel } from '../../models/types/UserModel';
2
+ import { UserLoginState } from '../../models/index';
3
+
4
4
  interface IUserContext {
5
5
  user: UserModel | null;
6
6
  userLoginState: UserLoginState;
7
7
  loginUser: (token?: string) => Promise<boolean>;
8
8
  logoutUser: () => void;
9
9
  }
10
- declare const UserContext: import("react").Context<IUserContext>;
10
+ declare const UserContext: import('react').Context<IUserContext>;
11
11
  export default UserContext;
@@ -1,4 +1,3 @@
1
- /// <reference types="react" />
2
1
  type Props = {
3
2
  children: React.ReactNode;
4
3
  };
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./FromToDatePickerDropdownToggle-BPfviPUU.cjs"),t=require("react"),P=require("@azure/msal-browser"),w=require("@azure/msal-react");require("zod");require("react-hook-form");require("react-router-dom");const L=require("./useLocalStorageState-asgEpnUg.cjs"),C=require("./PrimaryButton-BnrFH2PB.cjs"),I=require("./dateUtils-ChS-y8JY.cjs"),D=({children:s})=>{const[u,a]=t.useState(!1),[r,n]=t.useState(""),o=t.useCallback(c=>{a(!0),n(c)},[]),l=t.useCallback(()=>{a(!1)},[]),i=t.useMemo(()=>({show:u,text:r,showConfirm:o,hideConfirm:l}),[u,r,o,l]);return e.jsxRuntimeExports.jsxs(e.ConfirmContext.Provider,{value:i,children:[e.jsxRuntimeExports.jsx(q,{}),s]})},M=()=>{const{confirmTexts:s}=t.useContext(e.LuminusComponentsContext),{isShown:u,text:a,onFinish:r}=L.usePrompt(),{options:n}=t.useContext(e.PromptContext),[o,l]=t.useState(n.defaultValue??""),i=t.useCallback(()=>{r(null)},[r]),c=t.useCallback(x=>{x.preventDefault(),!(n.required&&!o)&&r(o)},[r,n.required,o]);t.useEffect(()=>{u===!0&&l(n.defaultValue??"")},[u,n.defaultValue]);const m=t.useMemo(()=>({value:o,onChange:x=>l(x.currentTarget.value),className:"w-100",autoFocus:!0,tabIndex:0}),[o]);return e.jsxRuntimeExports.jsxs(C.Modal,{show:u,size:"sm",centered:!0,onHide:i,children:[e.jsxRuntimeExports.jsx(C.Modal.Header,{className:"justify-content-center",children:e.jsxRuntimeExports.jsx(C.Modal.Title,{children:a})}),e.jsxRuntimeExports.jsxs("form",{onSubmit:c,children:[e.jsxRuntimeExports.jsxs(C.Modal.Body,{children:[n.input==="textarea"?e.jsxRuntimeExports.jsx("textarea",{...m,rows:5}):void 0,n.input==="input"?e.jsxRuntimeExports.jsx(C.FormControl,{...m,type:n.type}):void 0]}),e.jsxRuntimeExports.jsxs(C.Modal.Footer,{className:"w-100 d-flex gap-5",children:[e.jsxRuntimeExports.jsx(C.PrimaryButton,{variant:"outlined",color:"secondary",onClick:i,className:"flex-grow-1",children:s.cancel}),e.jsxRuntimeExports.jsx(C.PrimaryButton,{color:"primary",disabled:n.required&&!o,type:"submit",className:"flex-grow-1",children:s.confirm})]})]})]})},A=({children:s})=>{const[u,a]=t.useState(!1),[r,n]=t.useState(""),[o,l]=t.useState({input:"textarea",type:"text"}),i=t.useRef(()=>{}),c=t.useCallback(p=>{n(p),a(!0)},[]),m=t.useCallback(()=>{a(!1)},[]),x=t.useMemo(()=>({isShown:u,text:r,showPrompt:c,hidePrompt:m,resolveRef:i,options:o,setOptions:l}),[u,r,c,m,o]);return e.jsxRuntimeExports.jsxs(e.PromptContext.Provider,{value:x,children:[s,e.jsxRuntimeExports.jsx(M,{})]})},N=({cookieDomain:s,axiosOptions:u,LinkComponent:a,NavigateComponent:r,language:n,axiosTexts:o,confirmTexts:l,formValidationTexts:i,homeDashboardTexts:c,formSubmitTexts:m,appSearchTexts:x,customSelectTexts:p,errorBoundaryTexts:v,widgetTexts:h,texts:j,ProjectIconComponent:S,localizationContext:R,children:g})=>{const E=t.useMemo(()=>({axiosOptions:u,cookieDomain:s,LinkComponent:a,NavigateComponent:r,language:n,axiosTexts:o,confirmTexts:l,formValidationTexts:i,homeDashboardTexts:c,formSubmitTexts:m,appSearchTexts:x,customSelectTexts:p,errorBoundaryTexts:v,widgetTexts:h,texts:j,ProjectIconComponent:S,localizationContext:R}),[u,s,a,r,n,o,l,i,c,m,x,p,v,h,S,R,j]);return e.jsxRuntimeExports.jsx(e.LuminusComponentsContext.Provider,{value:E,children:e.jsxRuntimeExports.jsx(D,{children:e.jsxRuntimeExports.jsxs(A,{children:[e.jsxRuntimeExports.jsx(e.Ie,{}),g]})})})},U=({children:s})=>{const[u,a]=t.useState(!1),[r]=t.useState(new Set),n=t.useCallback(i=>{r.add(i),a(!0)},[r]),o=t.useCallback(i=>{r.delete(i),r.size===0&&a(!1)},[r]),l=t.useMemo(()=>({isLoading:u,startLoading:n,stopLoading:o}),[u,n,o]);return e.jsxRuntimeExports.jsxs(e.LoadingContext.Provider,{value:l,children:[u&&e.jsxRuntimeExports.jsx(C.Loading,{}),s]})},T=({children:s})=>{const u=e.useAxios(),{msalInstance:a}=t.useContext(e.AuthContext),{delegation:r,setDelegation:n,setAvailableDelegations:o,refreshAvailableDelegations:l}=t.useContext(e.DelegationContext),{getToken:i}=e.useAuth(),[c,m]=t.useState(null),x=t.useCallback(async()=>{const d=await i();d&&m(d)},[i]);t.useEffect(()=>{x()},[x]);const v=t.useCallback(()=>{const d=localStorage.getItem("user")??null;return d?JSON.parse(d??""):null},[])(),[h,j]=t.useState({state:v?e.LoginState.LOGGED_IN:e.LoginState.LOGGING_IN,user:v}),S=t.useCallback(async d=>{let f=null;return await u.get("/user/detail",d?{headers:{Authorization:`Bearer ${d}`}}:void 0).then(y=>{f=y.data}).catch(()=>{f=null}),f},[u]),R=t.useCallback(()=>{localStorage.removeItem("user"),j({state:e.LoginState.LOGGED_OUT,user:null}),n(null),o(null)},[o,n]),g=t.useCallback(async d=>{j({state:e.LoginState.LOGGING_IN,user:null});const f=await S(d);return f?(j({state:e.LoginState.LOGGED_IN,user:f}),localStorage.setItem("user",JSON.stringify(f)),await l(),!0):(j({state:e.LoginState.LOGIN_FAILED,user:null}),!1)},[S,l]),E=t.useCallback(()=>{R()},[R]);t.useEffect(()=>{if(a){const d=a.addEventCallback(f=>{if(f.eventType===P.EventType.LOGIN_SUCCESS&&f.payload){const y=f.payload;m(y.accessToken)}});return()=>{d&&a.removeEventCallback(d)}}return()=>{}},[a,g,E]);const b=t.useCallback(async d=>{d&&await g(d).catch(()=>{E(),n(null)})},[g,E,n]);t.useEffect(()=>{b(c)},[c,r==null?void 0:r.id,b]);const k=t.useMemo(()=>({user:h.user,userLoginState:h,loginUser:g,logoutUser:E}),[h,g,E]);return e.jsxRuntimeExports.jsx(e.UserContext.Provider,{value:k,children:s})},O=({...s})=>{const{cookieDomain:u}=t.useContext(e.LuminusComponentsContext),[,a]=e.useCookies(["Authorization"]),r=t.useMemo(()=>({useMsal:s.useMsal??!1,msalInstance:s.useMsal?s.msalInstance??null:null,msalScopes:s.useMsal?s.msalScopes??[]:[]}),[s]);return t.useEffect(()=>{if(s.useMsal){const n=s.msalInstance.addEventCallback(o=>{if(o.eventType===P.EventType.LOGIN_SUCCESS||o.eventType===P.EventType.ACQUIRE_TOKEN_SUCCESS&&o.payload){const l=o.payload,i=l.account;s.msalInstance.setActiveAccount(i);const c=l.accessToken,m=l.expiresOn;a("Authorization",c,{path:"/",secure:!0,sameSite:"none",domain:u,expires:m??void 0})}o.error&&console.error("AuthProvider MSAL Error",o)});return()=>{n&&s.msalInstance.removeEventCallback(n)}}return()=>{}},[s,a,u]),e.jsxRuntimeExports.jsx(e.AuthContext.Provider,{value:r,children:s.useMsal?e.jsxRuntimeExports.jsx(w.MsalProvider,{instance:s.msalInstance,children:s.children}):s.children})},G=({children:s,relativeEndpoint:u})=>{const[a,r,n]=L.useLocalStorageState("user-delegation",null),{data:o,setData:l,reloadData:i}=L.useGetApiData(u,{nullStateBeforeLoad:!1,nullStateOnFail:!0}),c=t.useRef(null);t.useEffect(()=>{const x=()=>{i(),c.current=window.setTimeout(x,I.msToStartOfNextDay()+5e3)};return x(),()=>{c.current!==null&&window.clearTimeout(c.current)}},[i]),t.useEffect(()=>{const x=()=>{n()};return window.addEventListener("focus",x),()=>{window.removeEventListener("focus",x)}},[n,i]);const m=t.useMemo(()=>({delegation:a,setDelegation:r,availableDelegations:o,setAvailableDelegations:l,refreshAvailableDelegations:i}),[a,r,o,l,i]);return e.jsxRuntimeExports.jsx(e.DelegationContext.Provider,{value:m,children:s})},q=()=>{const{confirmTexts:s}=t.useContext(e.LuminusComponentsContext),{onConfirm:u,onCancel:a,text:r,show:n}=L.useConfirm();return e.jsxRuntimeExports.jsxs(C.Modal,{show:n,size:"sm",centered:!0,onHide:a,children:[e.jsxRuntimeExports.jsx(C.Modal.Header,{className:"justify-content-center",children:e.jsxRuntimeExports.jsx(C.Modal.Title,{children:r})}),e.jsxRuntimeExports.jsx(C.Modal.Body,{children:e.jsxRuntimeExports.jsxs("div",{className:"w-100 d-flex gap-5",children:[e.jsxRuntimeExports.jsx(C.PrimaryButton,{type:"button",variant:"outlined",color:"secondary",className:"w-100",onClick:a,children:s.no}),e.jsxRuntimeExports.jsx(C.PrimaryButton,{type:"button",color:"primary",onClick:u,className:"w-100 ml",children:s.yes})]})})]})};exports.AuthContext=e.AuthContext;exports.DelegationContext=e.DelegationContext;exports.LoadingContext=e.LoadingContext;exports.LuminusComponentsContext=e.LuminusComponentsContext;exports.UserContext=e.UserContext;exports.AuthProvider=O;exports.DelegationProvider=G;exports.LoadingProvider=U;exports.LuminusComponentsProvider=N;exports.UserProvider=T;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./FromToDatePickerDropdownToggle-DhzBIJXw.cjs"),t=require("react"),S=require("@azure/msal-browser"),w=require("@azure/msal-react");require("zod");require("react-router-dom");require("react-hook-form");const p=require("./useLocalStorageState-3ebV2Hf5.cjs"),d=require("./PrimaryButton-D33g-RWP.cjs"),I=require("./dateUtils-Bs39Qj7k.cjs"),T=({children:s})=>{const[u,a]=t.useState(!1),[r,n]=t.useState(""),o=t.useCallback(x=>{a(!0),n(x)},[]),l=t.useCallback(()=>{a(!1)},[]),i=t.useMemo(()=>({show:u,text:r,showConfirm:o,hideConfirm:l}),[u,r,o,l]);return e.jsxRuntimeExports.jsxs(e.ConfirmContext.Provider,{value:i,children:[e.jsxRuntimeExports.jsx(q,{}),s]})},D=()=>{const{texts:{confirm:s}}=t.useContext(e.LuminusComponentsContext),{isShown:u,text:a,onFinish:r}=p.usePrompt(),{options:n}=t.useContext(e.PromptContext),[o,l]=t.useState(n.defaultValue??""),i=t.useCallback(()=>{r(null)},[r]),x=t.useCallback(m=>{m.preventDefault(),!(n.required&&!o)&&r(o)},[r,n.required,o]);t.useEffect(()=>{u===!0&&l(n.defaultValue??"")},[u,n.defaultValue]);const C=t.useMemo(()=>({value:o,onChange:m=>l(m.currentTarget.value),className:"w-100",autoFocus:!0,tabIndex:0}),[o]);return e.jsxRuntimeExports.jsxs(d.Modal,{show:u,size:"sm",centered:!0,onHide:i,children:[e.jsxRuntimeExports.jsx(d.Modal.Header,{className:"justify-content-center",children:e.jsxRuntimeExports.jsx(d.Modal.Title,{children:a})}),e.jsxRuntimeExports.jsxs("form",{onSubmit:x,children:[e.jsxRuntimeExports.jsxs(d.Modal.Body,{children:[n.input==="textarea"?e.jsxRuntimeExports.jsx("textarea",{...C,rows:5}):void 0,n.input==="input"?e.jsxRuntimeExports.jsx(d.FormControl,{...C,type:n.type}):void 0]}),e.jsxRuntimeExports.jsxs(d.Modal.Footer,{className:"w-100 d-flex gap-5",children:[e.jsxRuntimeExports.jsx(d.PrimaryButton,{variant:"outlined",color:"secondary",onClick:i,className:"flex-grow-1",children:s.cancel}),e.jsxRuntimeExports.jsx(d.PrimaryButton,{color:"primary",disabled:n.required&&!o,type:"submit",className:"flex-grow-1",children:s.confirm})]})]})]})},M=({children:s})=>{const[u,a]=t.useState(!1),[r,n]=t.useState(""),[o,l]=t.useState({input:"textarea",type:"text"}),i=t.useRef(()=>{}),x=t.useCallback(L=>{n(L),a(!0)},[]),C=t.useCallback(()=>{a(!1)},[]),m=t.useMemo(()=>({isShown:u,text:r,showPrompt:x,hidePrompt:C,resolveRef:i,options:o,setOptions:l}),[u,r,x,C,o]);return e.jsxRuntimeExports.jsxs(e.PromptContext.Provider,{value:m,children:[s,e.jsxRuntimeExports.jsx(D,{})]})},A=({cookieDomain:s,axiosOptions:u,language:a,texts:r,ProjectIconComponent:n,localizationContext:o,children:l})=>{const i=t.useMemo(()=>({axiosOptions:u,cookieDomain:s,language:a,texts:r,ProjectIconComponent:n,localizationContext:o}),[u,s,a,n,o,r]);return e.jsxRuntimeExports.jsx(e.LuminusComponentsContext.Provider,{value:i,children:e.jsxRuntimeExports.jsx(T,{children:e.jsxRuntimeExports.jsxs(M,{children:[e.jsxRuntimeExports.jsx(e.Ie,{}),l]})})})},N=({children:s})=>{const[u,a]=t.useState(!1),[r]=t.useState(new Set),n=t.useCallback(i=>{r.add(i),a(!0)},[r]),o=t.useCallback(i=>{r.delete(i),r.size===0&&a(!1)},[r]),l=t.useMemo(()=>({isLoading:u,startLoading:n,stopLoading:o}),[u,n,o]);return e.jsxRuntimeExports.jsxs(e.LoadingContext.Provider,{value:l,children:[u&&e.jsxRuntimeExports.jsx(d.Loading,{}),s]})},U=({children:s})=>{const u=e.useAxios(),{msalInstance:a}=t.useContext(e.AuthContext),{delegation:r,setDelegation:n,setAvailableDelegations:o,refreshAvailableDelegations:l}=t.useContext(e.DelegationContext),{getToken:i}=e.useAuth(),[x,C]=t.useState(null),m=t.useCallback(async()=>{const c=await i();c&&C(c)},[i]);t.useEffect(()=>{m()},[m]);const R=t.useCallback(()=>{const c=localStorage.getItem("user")??null;return c?JSON.parse(c??""):null},[])(),[E,h]=t.useState({state:R?e.LoginState.LOGGED_IN:e.LoginState.LOGGING_IN,user:R}),y=t.useCallback(async c=>{let f=null;return await u.get("/user/detail",c?{headers:{Authorization:`Bearer ${c}`}}:void 0).then(v=>{f=v.data}).catch(()=>{f=null}),f},[u]),b=t.useCallback(()=>{localStorage.removeItem("user"),h({state:e.LoginState.LOGGED_OUT,user:null}),n(null),o(null)},[o,n]),j=t.useCallback(async c=>{h({state:e.LoginState.LOGGING_IN,user:null});const f=await y(c);return f?(h({state:e.LoginState.LOGGED_IN,user:f}),localStorage.setItem("user",JSON.stringify(f)),await l(),!0):(h({state:e.LoginState.LOGIN_FAILED,user:null}),!1)},[y,l]),g=t.useCallback(()=>{b()},[b]);t.useEffect(()=>{if(a){const c=a.addEventCallback(f=>{if(f.eventType===S.EventType.LOGIN_SUCCESS&&f.payload){const v=f.payload;C(v.accessToken)}});return()=>{c&&a.removeEventCallback(c)}}return()=>{}},[a,j,g]);const P=t.useCallback(async c=>{c&&await j(c).catch(()=>{g(),n(null)})},[j,g,n]);t.useEffect(()=>{P(x)},[x,r==null?void 0:r.id,P]);const k=t.useMemo(()=>({user:E.user,userLoginState:E,loginUser:j,logoutUser:g}),[E,j,g]);return e.jsxRuntimeExports.jsx(e.UserContext.Provider,{value:k,children:s})},O=({...s})=>{const{cookieDomain:u}=t.useContext(e.LuminusComponentsContext),[,a]=e.useCookies(["Authorization"]),r=t.useMemo(()=>({useMsal:s.useMsal??!1,msalInstance:s.useMsal?s.msalInstance??null:null,msalScopes:s.useMsal?s.msalScopes??[]:[]}),[s]);return t.useEffect(()=>{if(s.useMsal){const n=s.msalInstance.addEventCallback(o=>{if(o.eventType===S.EventType.LOGIN_SUCCESS||o.eventType===S.EventType.ACQUIRE_TOKEN_SUCCESS&&o.payload){const l=o.payload,i=l.account;s.msalInstance.setActiveAccount(i);const x=l.accessToken,C=l.expiresOn;a("Authorization",x,{path:"/",secure:!0,sameSite:"none",domain:u,expires:C??void 0})}o.error&&console.error("AuthProvider MSAL Error",o)});return()=>{n&&s.msalInstance.removeEventCallback(n)}}return()=>{}},[s,a,u]),e.jsxRuntimeExports.jsx(e.AuthContext.Provider,{value:r,children:s.useMsal?e.jsxRuntimeExports.jsx(w.MsalProvider,{instance:s.msalInstance,children:s.children}):s.children})},G=({children:s,relativeEndpoint:u})=>{const[a,r,n]=p.useLocalStorageState("user-delegation",null),{data:o,setData:l,reloadData:i}=p.useGetApiData(u,{nullStateBeforeLoad:!1,nullStateOnFail:!0}),x=t.useRef(null);t.useEffect(()=>{const m=()=>{i(),x.current=window.setTimeout(m,I.msToStartOfNextDay()+5e3)};return m(),()=>{x.current!==null&&window.clearTimeout(x.current)}},[i]),t.useEffect(()=>{const m=()=>{n()};return window.addEventListener("focus",m),()=>{window.removeEventListener("focus",m)}},[n,i]);const C=t.useMemo(()=>({delegation:a,setDelegation:r,availableDelegations:o,setAvailableDelegations:l,refreshAvailableDelegations:i}),[a,r,o,l,i]);return e.jsxRuntimeExports.jsx(e.DelegationContext.Provider,{value:C,children:s})},q=()=>{const{texts:{confirm:s}}=t.useContext(e.LuminusComponentsContext),{onConfirm:u,onCancel:a,text:r,show:n}=p.useConfirm();return e.jsxRuntimeExports.jsxs(d.Modal,{show:n,size:"sm",centered:!0,onHide:a,children:[e.jsxRuntimeExports.jsx(d.Modal.Header,{className:"justify-content-center",children:e.jsxRuntimeExports.jsx(d.Modal.Title,{children:r})}),e.jsxRuntimeExports.jsx(d.Modal.Body,{children:e.jsxRuntimeExports.jsxs("div",{className:"w-100 d-flex gap-5",children:[e.jsxRuntimeExports.jsx(d.PrimaryButton,{type:"button",variant:"outlined",color:"secondary",className:"w-100",onClick:a,children:s.no}),e.jsxRuntimeExports.jsx(d.PrimaryButton,{type:"button",color:"primary",onClick:u,className:"w-100 ml",children:s.yes})]})})]})};exports.AuthContext=e.AuthContext;exports.DelegationContext=e.DelegationContext;exports.LoadingContext=e.LoadingContext;exports.LuminusComponentsContext=e.LuminusComponentsContext;exports.UserContext=e.UserContext;exports.AuthProvider=O;exports.DelegationProvider=G;exports.LoadingProvider=N;exports.LuminusComponentsProvider=A;exports.UserProvider=U;