react-luminus-components 1.1.7 → 1.1.9
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/.vite/manifest.json +44 -44
- package/dist/DataKey-Bo883ncO.js +1 -0
- package/dist/{DataKey-C-RyQIZQ.mjs → DataKey-CXMJ5YCH.mjs} +1 -1
- package/dist/{EmployeesDropdown.module-AbK-MkT0.mjs → SimplePicker.module-BL8k4kWN.mjs} +358 -356
- package/dist/{EmployeesDropdown.module-4iGuBkjc.js → SimplePicker.module-DnODgYFl.js} +22 -22
- package/dist/SimpleTooltip-BmkUawod.js +1 -0
- package/dist/{SimpleTooltip-eeSv-6cG.mjs → SimpleTooltip-DgJ8gBIF.mjs} +2 -2
- package/dist/components/Buttons/FloatingSubmit/FloatingFormSubmit.d.ts +3 -2
- package/dist/components/Buttons/PrimaryButton/PrimaryButton.d.ts +1 -1
- package/dist/components/Form/DropdownPicker/DropdownPicker.d.ts +19 -0
- package/dist/components/Form/index.d.ts +1 -1
- package/dist/components/HookForm/DropdownPicker/HookFormDropdownPicker.d.ts +15 -0
- package/dist/components/HookForm/index.d.ts +1 -1
- package/dist/components/common/SimplePicker/SimplePicker.d.ts +15 -0
- package/dist/components/common/index.d.ts +1 -1
- package/dist/contexts/luminus-components/LuminusComponentsContext.d.ts +2 -2
- package/dist/contexts/luminus-components/LuminusComponentsProvider.d.ts +3 -3
- package/dist/contexts.cjs.js +1 -1
- package/dist/contexts.es.js +41 -41
- package/dist/{hasClass-6QP28uKO.mjs → hasClass-BHK2NooK.mjs} +1 -1
- package/dist/{hasClass-Do_vMvLD.js → hasClass-C-64QyIl.js} +5 -5
- package/dist/hooks.cjs.js +1 -1
- package/dist/hooks.es.js +3 -3
- package/dist/layout.cjs.js +1 -1
- package/dist/layout.es.js +2 -2
- package/dist/main.cjs.js +1 -1
- package/dist/main.d.ts +3 -3
- package/dist/main.es.js +1518 -1514
- package/dist/models/index.d.ts +3 -2
- package/dist/models/prop-types/{HookFormEmployeePickerProps.d.ts → HookFormDropdownPickerProps.d.ts} +3 -2
- package/dist/models/texts/DropdownPickerTexts.d.ts +5 -0
- package/dist/models/texts/FormSubmitTexts.d.ts +4 -0
- package/dist/style.css +1 -1
- package/dist/useConfirm-5bscOMVZ.js +1 -0
- package/dist/{useConfirm-CsFA8Y7z.mjs → useConfirm-Rw0k8LNX.mjs} +1 -1
- package/package.json +1 -1
- package/dist/DataKey-CBpWR2M6.js +0 -1
- package/dist/SimpleTooltip-BwmrrMt1.js +0 -1
- package/dist/components/Form/EmployeePicker/EmployeePicker.d.ts +0 -14
- package/dist/components/HookForm/EmployeePicker/HookFormEmployeePicker.d.ts +0 -10
- package/dist/components/common/EmployeesDropdown/EmployeesDropdown.d.ts +0 -11
- package/dist/models/texts/EmployeesDropdownTexts.d.ts +0 -4
- package/dist/useConfirm-DGeJryJS.js +0 -1
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
/// <reference types="react" />
|
|
2
|
+
import { DropdownPickerTexts, FormSelectOption } from '@models/index';
|
|
3
|
+
type Props = {
|
|
4
|
+
items: FormSelectOption[];
|
|
5
|
+
defaultSelection: FormSelectOption | null;
|
|
6
|
+
onClickSelectedItem: (item: FormSelectOption) => void;
|
|
7
|
+
onSearchQueryChange: (query: string) => void;
|
|
8
|
+
texts: DropdownPickerTexts;
|
|
9
|
+
isLoading?: boolean;
|
|
10
|
+
isNumber?: boolean;
|
|
11
|
+
onSelect?: (item: FormSelectOption | null) => void;
|
|
12
|
+
label?: string;
|
|
13
|
+
withoutLabel?: boolean;
|
|
14
|
+
size?: 'sm' | 'lg';
|
|
15
|
+
hidden?: boolean;
|
|
16
|
+
disabled?: boolean;
|
|
17
|
+
};
|
|
18
|
+
declare const DropdownPicker: ({ items, defaultSelection, onClickSelectedItem, onSearchQueryChange, texts, isLoading, isNumber, onSelect, label, withoutLabel, size, hidden, disabled, }: Props) => import("react").JSX.Element;
|
|
19
|
+
export default DropdownPicker;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
export { default as CheckInput } from './CheckInput/CheckInput';
|
|
2
2
|
export { default as TextInput } from './TextInput/TextInput';
|
|
3
3
|
export { default as SelectInput } from './SelectInput/SelectInput';
|
|
4
|
-
export { default as
|
|
4
|
+
export { default as DropdownPicker } from './DropdownPicker/DropdownPicker';
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
/// <reference types="react" />
|
|
2
|
+
import HookFormInputProps from '@models/types/HookFormInputProps';
|
|
3
|
+
import HookFormDropdownPickerProps from '@models/prop-types/HookFormDropdownPickerProps';
|
|
4
|
+
import { DropdownPickerTexts, FormSelectOption } from '@models/index';
|
|
5
|
+
type Props = {
|
|
6
|
+
hookFormProps: HookFormInputProps;
|
|
7
|
+
inputProps: HookFormDropdownPickerProps;
|
|
8
|
+
items: FormSelectOption[];
|
|
9
|
+
onSearchQueryChange: (query: string) => void;
|
|
10
|
+
onClickSelectedItem: (item: FormSelectOption) => void;
|
|
11
|
+
texts: DropdownPickerTexts;
|
|
12
|
+
isLoading?: boolean;
|
|
13
|
+
};
|
|
14
|
+
declare const HookFormDropdownPicker: ({ hookFormProps, inputProps, items, onSearchQueryChange, onClickSelectedItem, texts, isLoading, }: Props) => import("react").JSX.Element;
|
|
15
|
+
export default HookFormDropdownPicker;
|
|
@@ -3,4 +3,4 @@ export { default as HookFormRadioInput } from './RadioInput/HookFormRadioInput';
|
|
|
3
3
|
export { default as HookFormSelectInput } from './SelectInput/HookFormSelectInput';
|
|
4
4
|
export { default as HookFormTextAreaInput } from './TextAreaInput/HookFormTextAreaInput';
|
|
5
5
|
export { default as HookFormTextInput } from './TextInput/HookFormTextInput';
|
|
6
|
-
export { default as
|
|
6
|
+
export { default as HookFormDropdownPicker } from './DropdownPicker/HookFormDropdownPicker';
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
/// <reference types="react" />
|
|
2
|
+
import { DropdownPickerTexts, FormSelectOption } from '@models/index';
|
|
3
|
+
type Props = {
|
|
4
|
+
show: boolean;
|
|
5
|
+
onCancel: () => void;
|
|
6
|
+
items: FormSelectOption[];
|
|
7
|
+
currentSelection: FormSelectOption | null;
|
|
8
|
+
onSelectionChange: (item: FormSelectOption | null) => void;
|
|
9
|
+
onClickSelectedItem: (item: FormSelectOption) => void;
|
|
10
|
+
onSearchQueryChange: (query: string) => void;
|
|
11
|
+
texts: DropdownPickerTexts;
|
|
12
|
+
isLoading?: boolean;
|
|
13
|
+
};
|
|
14
|
+
declare const SimplePicker: ({ show, onCancel, items, currentSelection, onSelectionChange, onClickSelectedItem, onSearchQueryChange, texts, isLoading, }: Props) => import("react").JSX.Element;
|
|
15
|
+
export default SimplePicker;
|
|
@@ -8,4 +8,4 @@ export { default as Badge } from './Badge/Badge';
|
|
|
8
8
|
export { default as Collapse } from './Collapse/Collapse';
|
|
9
9
|
export { default as InputContainer } from './InputContainer/InputContainer';
|
|
10
10
|
export { default as InvalidFeedback } from './InvalidFeedback/InvalidFeedback';
|
|
11
|
-
export { default as
|
|
11
|
+
export { default as SimplePicker } from './SimplePicker/SimplePicker';
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/// <reference types="react" />
|
|
2
2
|
import { AxiosInstance } from 'axios';
|
|
3
3
|
import { LinkProps } from 'react-router-dom';
|
|
4
|
-
import { AxiosTexts, ConfirmTexts,
|
|
4
|
+
import { AxiosTexts, ConfirmTexts, FormSubmitTexts, FormValidationTexts, HomeDashboardTexts } from '@models/index';
|
|
5
5
|
interface ILuminusComponentsContext {
|
|
6
6
|
axiosInstance: AxiosInstance;
|
|
7
7
|
LinkComponent: React.ForwardRefExoticComponent<LinkProps & React.RefAttributes<HTMLAnchorElement>>;
|
|
@@ -9,8 +9,8 @@ interface ILuminusComponentsContext {
|
|
|
9
9
|
axiosTexts: AxiosTexts;
|
|
10
10
|
confirmTexts: ConfirmTexts;
|
|
11
11
|
formValidationTexts: FormValidationTexts;
|
|
12
|
-
employeesDropdownTexts: EmployeesDropdownTexts;
|
|
13
12
|
homeDashboardTexts: HomeDashboardTexts;
|
|
13
|
+
formSubmitTexts: FormSubmitTexts;
|
|
14
14
|
}
|
|
15
15
|
declare const LuminusComponentsContext: import("react").Context<ILuminusComponentsContext>;
|
|
16
16
|
export default LuminusComponentsContext;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/// <reference types="react" />
|
|
2
2
|
import { LinkProps } from 'react-router-dom';
|
|
3
3
|
import { AxiosInstance } from 'axios';
|
|
4
|
-
import { AxiosTexts, ConfirmTexts,
|
|
4
|
+
import { AxiosTexts, ConfirmTexts, FormSubmitTexts, FormValidationTexts, HomeDashboardTexts } from '@models/index';
|
|
5
5
|
type Props = {
|
|
6
6
|
axiosInstance: AxiosInstance;
|
|
7
7
|
LinkComponent: React.ForwardRefExoticComponent<LinkProps & React.RefAttributes<HTMLAnchorElement>>;
|
|
@@ -9,9 +9,9 @@ type Props = {
|
|
|
9
9
|
axiosTexts: AxiosTexts;
|
|
10
10
|
confirmTexts: ConfirmTexts;
|
|
11
11
|
formValidationTexts: FormValidationTexts;
|
|
12
|
-
employeesDropdownTexts: EmployeesDropdownTexts;
|
|
13
12
|
homeDashboardTexts: HomeDashboardTexts;
|
|
13
|
+
formSubmitTexts: FormSubmitTexts;
|
|
14
14
|
children: React.ReactNode;
|
|
15
15
|
};
|
|
16
|
-
declare const LuminusComponentsProvider: ({ axiosInstance, LinkComponent, language, axiosTexts, confirmTexts, formValidationTexts,
|
|
16
|
+
declare const LuminusComponentsProvider: ({ axiosInstance, LinkComponent, language, axiosTexts, confirmTexts, formValidationTexts, homeDashboardTexts, formSubmitTexts, children, }: Props) => import("react").JSX.Element;
|
|
17
17
|
export default LuminusComponentsProvider;
|
package/dist/contexts.cjs.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const o=require("./EmployeesDropdown.module-4iGuBkjc.js"),l=require("react"),v=require("./DataKey-CBpWR2M6.js"),Fe=require("./useConfirm-DGeJryJS.js"),a=require("./hasClass-Do_vMvLD.js"),Ie=require("react-dom");function We(t){const e=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(t){for(const s in t)if(s!=="default"){const n=Object.getOwnPropertyDescriptor(t,s);Object.defineProperty(e,s,n.get?n:{enumerable:!0,get:()=>t[s]})}}return e.default=t,Object.freeze(e)}const h=We(l),$e=({children:t})=>{const[e,s]=l.useState(!1),[n,r]=l.useState(""),i=l.useCallback(g=>{s(!0),r(g)},[]),f=l.useCallback(()=>{s(!1)},[]),u=l.useMemo(()=>({show:e,text:n,showConfirm:i,hideConfirm:f}),[e,n,i,f]);return o.jsxRuntimeExports.jsxs(o.ConfirmContext.Provider,{value:u,children:[o.jsxRuntimeExports.jsx(ft,{}),t]})},Ue=({axiosInstance:t,LinkComponent:e,language:s,axiosTexts:n,confirmTexts:r,formValidationTexts:i,employeesDropdownTexts:f,homeDashboardTexts:u,children:g})=>{const x=l.useMemo(()=>({axiosInstance:t,LinkComponent:e,language:s,axiosTexts:n,confirmTexts:r,formValidationTexts:i,employeesDropdownTexts:f,homeDashboardTexts:u}),[t,e,s,n,r,i,f,u]);return o.jsxRuntimeExports.jsx(o.LuminusComponentsContext.Provider,{value:x,children:o.jsxRuntimeExports.jsxs($e,{children:[o.jsxRuntimeExports.jsx(o.Ie,{}),g]})})},Pe=({children:t})=>{const[e,s]=l.useState(!1),[n]=l.useState(new Set),r=l.useCallback(u=>{n.add(u),s(!0)},[n]),i=l.useCallback(u=>{n.delete(u),n.size===0&&s(!1)},[n]),f=l.useMemo(()=>({isLoading:e,startLoading:r,stopLoading:i}),[e,r,i]);return o.jsxRuntimeExports.jsxs(o.LoadingContext.Provider,{value:f,children:[e&&o.jsxRuntimeExports.jsx(v.Loading,{}),t]})},_e=({children:t})=>{const e=o.useAxios(),s=l.useCallback(()=>{const m=localStorage.getItem("user")??null;return m?JSON.parse(m):null},[]),[n,r]=l.useState(s()),i=l.useCallback(async()=>{let m=null;return await e.get("/user/detail").then(R=>{m=R.data}).catch(()=>{m=null}),localStorage.setItem("user",JSON.stringify(m)),m},[e]),f=l.useCallback(()=>{localStorage.removeItem("user")},[]),u=l.useCallback(async()=>{const m=await i();return m?(r(m),!0):!1},[i]),g=l.useCallback(()=>{f(),r(null)},[f]),x=l.useMemo(()=>({user:n,loginUser:u,logoutUser:g}),[n,u,g]);return l.useEffect(()=>{r(s())},[s]),o.jsxRuntimeExports.jsx(o.UserContext.Provider,{value:x,children:t})},He=t=>h.forwardRef((e,s)=>o.jsxRuntimeExports.jsx("div",{...e,ref:s,className:o.classNames(e.className,t)})),qe={"aria-label":a.PropTypes.string,onClick:a.PropTypes.func,variant:a.PropTypes.oneOf(["white"])},me=h.forwardRef(({className:t,variant:e,"aria-label":s="Close",...n},r)=>o.jsxRuntimeExports.jsx("button",{ref:r,type:"button",className:o.classNames("btn-close",e&&`btn-close-${e}`,t),"aria-label":s,...n}));me.displayName="CloseButton";me.propTypes=qe;const Ke=me;var J;function he(t){if((!J&&J!==0||t)&&a.canUseDOM){var e=document.createElement("div");e.style.position="absolute",e.style.top="-9999px",e.style.width="50px",e.style.height="50px",e.style.overflow="scroll",document.body.appendChild(e),J=e.offsetWidth-e.clientWidth,document.body.removeChild(e)}return J}function ce(t){t===void 0&&(t=a.ownerDocument());try{var e=t.activeElement;return!e||!e.nodeName?null:e}catch{return t.body}}function ze(t=document){const e=t.defaultView;return Math.abs(e.innerWidth-t.documentElement.clientWidth)}const xe=v.dataAttr("modal-open");class Ge{constructor({ownerDocument:e,handleContainerOverflow:s=!0,isRTL:n=!1}={}){this.handleContainerOverflow=s,this.isRTL=n,this.modals=[],this.ownerDocument=e}getScrollbarWidth(){return ze(this.ownerDocument)}getElement(){return(this.ownerDocument||document).body}setModalAttributes(e){}removeModalAttributes(e){}setContainerStyle(e){const s={overflow:"hidden"},n=this.isRTL?"paddingLeft":"paddingRight",r=this.getElement();e.style={overflow:r.style.overflow,[n]:r.style[n]},e.scrollBarWidth&&(s[n]=`${parseInt(a.style(r,n)||"0",10)+e.scrollBarWidth}px`),r.setAttribute(xe,""),a.style(r,s)}reset(){[...this.modals].forEach(e=>this.remove(e))}removeContainerStyle(e){const s=this.getElement();s.removeAttribute(xe),Object.assign(s.style,e.style)}add(e){let s=this.modals.indexOf(e);return s!==-1||(s=this.modals.length,this.modals.push(e),this.setModalAttributes(e),s!==0)||(this.state={scrollBarWidth:this.getScrollbarWidth(),style:{}},this.handleContainerOverflow&&this.setContainerStyle(this.state)),s}remove(e){const s=this.modals.indexOf(e);s!==-1&&(this.modals.splice(s,1),!this.modals.length&&this.handleContainerOverflow&&this.removeContainerStyle(this.state),this.removeModalAttributes(e))}isTopModal(e){return!!this.modals.length&&this.modals[this.modals.length-1]===e}}const fe=Ge,Ve=["show","role","className","style","children","backdrop","keyboard","onBackdropClick","onEscapeKeyDown","transition","runTransition","backdropTransition","runBackdropTransition","autoFocus","enforceFocus","restoreFocus","restoreFocusOptions","renderDialog","renderBackdrop","manager","container","onShow","onHide","onExit","onExited","onExiting","onEnter","onEntering","onEntered"];function Xe(t,e){if(t==null)return{};var s={},n=Object.keys(t),r,i;for(i=0;i<n.length;i++)r=n[i],!(e.indexOf(r)>=0)&&(s[r]=t[r]);return s}let de;function Ye(t){return de||(de=new fe({ownerDocument:t==null?void 0:t.document})),de}function Je(t){const e=a.useWindow(),s=t||Ye(e),n=l.useRef({dialog:null,backdrop:null});return Object.assign(n.current,{add:()=>s.add(n.current),remove:()=>s.remove(n.current),isTopModal:()=>s.isTopModal(n.current),setDialogRef:l.useCallback(r=>{n.current.dialog=r},[]),setBackdropRef:l.useCallback(r=>{n.current.backdrop=r},[])})}const Ce=l.forwardRef((t,e)=>{let{show:s=!1,role:n="dialog",className:r,style:i,children:f,backdrop:u=!0,keyboard:g=!0,onBackdropClick:x,onEscapeKeyDown:m,transition:R,runTransition:j,backdropTransition:M,runBackdropTransition:Q,autoFocus:U=!0,enforceFocus:Z=!0,restoreFocus:w=!0,restoreFocusOptions:ee,renderDialog:P,renderBackdrop:te=d=>o.jsxRuntimeExports.jsx("div",Object.assign({},d)),manager:se,container:ne,onShow:_,onHide:A=()=>{},onExit:oe,onExited:D,onExiting:H,onEnter:q,onEntering:K,onEntered:z}=t,re=Xe(t,Ve);const C=a.useWindow(),N=a.useWaitForDOMRef(ne),p=Je(se),ae=a.useMounted(),G=v.usePrevious(s),[b,T]=l.useState(!s),E=l.useRef(null);l.useImperativeHandle(e,()=>p,[p]),a.canUseDOM&&!G&&s&&(E.current=ce(C==null?void 0:C.document)),s&&b&&T(!1);const y=a.useEventCallback(()=>{if(p.add(),k.current=a.listen(document,"keydown",le),I.current=a.listen(document,"focus",()=>setTimeout(ie),!0),_&&_(),U){var d,Y;const $=ce((d=(Y=p.dialog)==null?void 0:Y.ownerDocument)!=null?d:C==null?void 0:C.document);p.dialog&&$&&!a.contains(p.dialog,$)&&(E.current=$,p.dialog.focus())}}),F=a.useEventCallback(()=>{if(p.remove(),k.current==null||k.current(),I.current==null||I.current(),w){var d;(d=E.current)==null||d.focus==null||d.focus(ee),E.current=null}});l.useEffect(()=>{!s||!N||y()},[s,N,y]),l.useEffect(()=>{b&&F()},[b,F]),a.useWillUnmount(()=>{F()});const ie=a.useEventCallback(()=>{if(!Z||!ae()||!p.isTopModal())return;const d=ce(C==null?void 0:C.document);p.dialog&&d&&!a.contains(p.dialog,d)&&p.dialog.focus()}),V=a.useEventCallback(d=>{d.target===d.currentTarget&&(x==null||x(d),u===!0&&A())}),le=a.useEventCallback(d=>{g&&a.isEscKey(d)&&p.isTopModal()&&(m==null||m(d),d.defaultPrevented||A())}),I=l.useRef(),k=l.useRef(),X=(...d)=>{T(!0),D==null||D(...d)};if(!N)return null;const S=Object.assign({role:n,ref:p.setDialogRef,"aria-modal":n==="dialog"?!0:void 0},re,{style:i,className:r,tabIndex:-1});let W=P?P(S):o.jsxRuntimeExports.jsx("div",Object.assign({},S,{children:h.cloneElement(f,{role:"document"})}));W=a.renderTransition(R,j,{unmountOnExit:!0,mountOnEnter:!0,appear:!0,in:!!s,onExit:oe,onExiting:H,onExited:X,onEnter:q,onEntering:K,onEntered:z,children:W});let O=null;return u&&(O=te({ref:p.setBackdropRef,onClick:V}),O=a.renderTransition(M,Q,{in:!!s,appear:!0,mountOnEnter:!0,unmountOnExit:!0,children:O})),o.jsxRuntimeExports.jsx(o.jsxRuntimeExports.Fragment,{children:Ie.createPortal(o.jsxRuntimeExports.jsxs(o.jsxRuntimeExports.Fragment,{children:[O,W]}),N)})});Ce.displayName="Modal";const Qe=Object.assign(Ce,{Manager:fe});function Ze(t,e){t.classList?t.classList.add(e):a.hasClass(t,e)||(typeof t.className=="string"?t.className=t.className+" "+e:t.setAttribute("class",(t.className&&t.className.baseVal||"")+" "+e))}function Ee(t,e){return t.replace(new RegExp("(^|\\s)"+e+"(?:\\s|$)","g"),"$1").replace(/\s+/g," ").replace(/^\s*|\s*$/g,"")}function et(t,e){t.classList?t.classList.remove(e):typeof t.className=="string"?t.className=Ee(t.className,e):t.setAttribute("class",Ee(t.className&&t.className.baseVal||"",e))}const L={FIXED_CONTENT:".fixed-top, .fixed-bottom, .is-fixed, .sticky-top",STICKY_CONTENT:".sticky-top",NAVBAR_TOGGLER:".navbar-toggler"};class tt extends fe{adjustAndStore(e,s,n){const r=s.style[e];s.dataset[e]=r,a.style(s,{[e]:`${parseFloat(a.style(s,e))+n}px`})}restore(e,s){const n=s.dataset[e];n!==void 0&&(delete s.dataset[e],a.style(s,{[e]:n}))}setContainerStyle(e){super.setContainerStyle(e);const s=this.getElement();if(Ze(s,"modal-open"),!e.scrollBarWidth)return;const n=this.isRTL?"paddingLeft":"paddingRight",r=this.isRTL?"marginLeft":"marginRight";v.qsa(s,L.FIXED_CONTENT).forEach(i=>this.adjustAndStore(n,i,e.scrollBarWidth)),v.qsa(s,L.STICKY_CONTENT).forEach(i=>this.adjustAndStore(r,i,-e.scrollBarWidth)),v.qsa(s,L.NAVBAR_TOGGLER).forEach(i=>this.adjustAndStore(r,i,e.scrollBarWidth))}removeContainerStyle(e){super.removeContainerStyle(e);const s=this.getElement();et(s,"modal-open");const n=this.isRTL?"paddingLeft":"paddingRight",r=this.isRTL?"marginLeft":"marginRight";v.qsa(s,L.FIXED_CONTENT).forEach(i=>this.restore(n,i)),v.qsa(s,L.STICKY_CONTENT).forEach(i=>this.restore(r,i)),v.qsa(s,L.NAVBAR_TOGGLER).forEach(i=>this.restore(r,i))}}let ue;function st(t){return ue||(ue=new tt(t)),ue}const ye=h.forwardRef(({className:t,bsPrefix:e,as:s="div",...n},r)=>(e=a.useBootstrapPrefix(e,"modal-body"),o.jsxRuntimeExports.jsx(s,{ref:r,className:o.classNames(t,e),...n})));ye.displayName="ModalBody";const nt=ye,ot=h.createContext({onHide(){}}),Re=ot,je=h.forwardRef(({bsPrefix:t,className:e,contentClassName:s,centered:n,size:r,fullscreen:i,children:f,scrollable:u,...g},x)=>{t=a.useBootstrapPrefix(t,"modal");const m=`${t}-dialog`,R=typeof i=="string"?`${t}-fullscreen-${i}`:`${t}-fullscreen`;return o.jsxRuntimeExports.jsx("div",{...g,ref:x,className:o.classNames(m,e,r&&`${t}-${r}`,n&&`${m}-centered`,u&&`${m}-scrollable`,i&&R),children:o.jsxRuntimeExports.jsx("div",{className:o.classNames(`${t}-content`,s),children:f})})});je.displayName="ModalDialog";const be=je,Me=h.forwardRef(({className:t,bsPrefix:e,as:s="div",...n},r)=>(e=a.useBootstrapPrefix(e,"modal-footer"),o.jsxRuntimeExports.jsx(s,{ref:r,className:o.classNames(t,e),...n})));Me.displayName="ModalFooter";const rt=Me,at=h.forwardRef(({closeLabel:t="Close",closeVariant:e,closeButton:s=!1,onHide:n,children:r,...i},f)=>{const u=l.useContext(Re),g=a.useEventCallback(()=>{u==null||u.onHide(),n==null||n()});return o.jsxRuntimeExports.jsxs("div",{ref:f,...i,children:[r,s&&o.jsxRuntimeExports.jsx(Ke,{"aria-label":t,variant:e,onClick:g})]})}),it=at,we=h.forwardRef(({bsPrefix:t,className:e,closeLabel:s="Close",closeButton:n=!1,...r},i)=>(t=a.useBootstrapPrefix(t,"modal-header"),o.jsxRuntimeExports.jsx(it,{ref:i,...r,className:o.classNames(e,t),closeLabel:s,closeButton:n})));we.displayName="ModalHeader";const lt=we,ct=He("h4"),Ne=h.forwardRef(({className:t,bsPrefix:e,as:s=ct,...n},r)=>(e=a.useBootstrapPrefix(e,"modal-title"),o.jsxRuntimeExports.jsx(s,{ref:r,className:o.classNames(t,e),...n})));Ne.displayName="ModalTitle";const dt=Ne;function ut(t){return o.jsxRuntimeExports.jsx(a.Fade,{...t,timeout:null})}function mt(t){return o.jsxRuntimeExports.jsx(a.Fade,{...t,timeout:null})}const Te=h.forwardRef(({bsPrefix:t,className:e,style:s,dialogClassName:n,contentClassName:r,children:i,dialogAs:f=be,"data-bs-theme":u,"aria-labelledby":g,"aria-describedby":x,"aria-label":m,show:R=!1,animation:j=!0,backdrop:M=!0,keyboard:Q=!0,onEscapeKeyDown:U,onShow:Z,onHide:w,container:ee,autoFocus:P=!0,enforceFocus:te=!0,restoreFocus:se=!0,restoreFocusOptions:ne,onEntered:_,onExit:A,onExiting:oe,onEnter:D,onEntering:H,onExited:q,backdropClassName:K,manager:z,...re},C)=>{const[N,p]=l.useState({}),[ae,G]=l.useState(!1),b=l.useRef(!1),T=l.useRef(!1),E=l.useRef(null),[y,F]=a.useCallbackRef(),ie=a.useMergedRefs(C,F),V=a.useEventCallback(w),le=a.useIsRTL();t=a.useBootstrapPrefix(t,"modal");const I=l.useMemo(()=>({onHide:V}),[V]);function k(){return z||st({isRTL:le})}function X(c){if(!a.canUseDOM)return;const B=k().getScrollbarWidth()>0,ge=c.scrollHeight>a.ownerDocument(c).documentElement.clientHeight;p({paddingRight:B&&!ge?he():void 0,paddingLeft:!B&&ge?he():void 0})}const S=a.useEventCallback(()=>{y&&X(y.dialog)});a.useWillUnmount(()=>{a.removeEventListener(window,"resize",S),E.current==null||E.current()});const W=()=>{b.current=!0},O=c=>{b.current&&y&&c.target===y.dialog&&(T.current=!0),b.current=!1},d=()=>{G(!0),E.current=a.transitionEnd(y.dialog,()=>{G(!1)})},Y=c=>{c.target===c.currentTarget&&d()},$=c=>{if(M==="static"){Y(c);return}if(T.current||c.target!==c.currentTarget){T.current=!1;return}w==null||w()},ke=c=>{Q?U==null||U(c):(c.preventDefault(),M==="static"&&d())},Se=(c,B)=>{c&&X(c),D==null||D(c,B)},Oe=c=>{E.current==null||E.current(),A==null||A(c)},Be=(c,B)=>{H==null||H(c,B),a.addEventListener(window,"resize",S)},Le=c=>{c&&(c.style.display=""),q==null||q(c),a.removeEventListener(window,"resize",S)},Ae=l.useCallback(c=>o.jsxRuntimeExports.jsx("div",{...c,className:o.classNames(`${t}-backdrop`,K,!j&&"show")}),[j,K,t]),pe={...s,...N};pe.display="block";const De=c=>o.jsxRuntimeExports.jsx("div",{role:"dialog",...c,style:pe,className:o.classNames(e,t,ae&&`${t}-static`,!j&&"show"),onClick:M?$:void 0,onMouseUp:O,"data-bs-theme":u,"aria-label":m,"aria-labelledby":g,"aria-describedby":x,children:o.jsxRuntimeExports.jsx(f,{...re,onMouseDown:W,className:n,contentClassName:r,children:i})});return o.jsxRuntimeExports.jsx(Re.Provider,{value:I,children:o.jsxRuntimeExports.jsx(Qe,{show:R,ref:ie,backdrop:M,container:ee,keyboard:!0,autoFocus:P,enforceFocus:te,restoreFocus:se,restoreFocusOptions:ne,onEscapeKeyDown:ke,onShow:Z,onHide:w,onEnter:Se,onEntering:Be,onEntered:_,onExit:Oe,onExiting:oe,onExited:Le,manager:k(),transition:j?ut:void 0,backdropTransition:j?mt:void 0,renderBackdrop:Ae,renderDialog:De})})});Te.displayName="Modal";const ve=Object.assign(Te,{Body:nt,Header:lt,Title:dt,Footer:rt,Dialog:be,TRANSITION_DURATION:300,BACKDROP_TRANSITION_DURATION:150}),ft=()=>{const{confirmTexts:t}=l.useContext(o.LuminusComponentsContext),{onConfirm:e,onCancel:s,text:n,show:r}=Fe.useConfirm();return o.jsxRuntimeExports.jsx(ve,{show:r,size:"sm",centered:!0,onHide:s,children:o.jsxRuntimeExports.jsxs(ve.Body,{children:[o.jsxRuntimeExports.jsx("div",{className:"mb-5 text-center",children:o.jsxRuntimeExports.jsx(v.Typography,{variant:"h6",children:n})}),o.jsxRuntimeExports.jsxs("div",{className:"w-100 d-flex gap-5",children:[o.jsxRuntimeExports.jsx("button",{type:"button",className:"btn btn-secondary w-100",onClick:s,children:t.no}),o.jsxRuntimeExports.jsx("button",{type:"button",className:"btn btn-primary w-100 ml",onClick:e,children:t.yes})]})]})})};exports.LoadingContext=o.LoadingContext;exports.LuminusComponentsContext=o.LuminusComponentsContext;exports.UserContext=o.UserContext;exports.LoadingProvider=Pe;exports.LuminusComponentsProvider=Ue;exports.UserProvider=_e;
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const o=require("./SimplePicker.module-DnODgYFl.js"),l=require("react"),v=require("./DataKey-Bo883ncO.js"),Fe=require("./useConfirm-5bscOMVZ.js"),a=require("./hasClass-C-64QyIl.js"),Ie=require("react-dom");function We(t){const e=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(t){for(const s in t)if(s!=="default"){const n=Object.getOwnPropertyDescriptor(t,s);Object.defineProperty(e,s,n.get?n:{enumerable:!0,get:()=>t[s]})}}return e.default=t,Object.freeze(e)}const h=We(l),$e=({children:t})=>{const[e,s]=l.useState(!1),[n,r]=l.useState(""),i=l.useCallback(g=>{s(!0),r(g)},[]),f=l.useCallback(()=>{s(!1)},[]),u=l.useMemo(()=>({show:e,text:n,showConfirm:i,hideConfirm:f}),[e,n,i,f]);return o.jsxRuntimeExports.jsxs(o.ConfirmContext.Provider,{value:u,children:[o.jsxRuntimeExports.jsx(ft,{}),t]})},Ue=({axiosInstance:t,LinkComponent:e,language:s,axiosTexts:n,confirmTexts:r,formValidationTexts:i,homeDashboardTexts:f,formSubmitTexts:u,children:g})=>{const x=l.useMemo(()=>({axiosInstance:t,LinkComponent:e,language:s,axiosTexts:n,confirmTexts:r,formValidationTexts:i,homeDashboardTexts:f,formSubmitTexts:u}),[t,e,s,n,r,i,f,u]);return o.jsxRuntimeExports.jsx(o.LuminusComponentsContext.Provider,{value:x,children:o.jsxRuntimeExports.jsxs($e,{children:[o.jsxRuntimeExports.jsx(o.Ie,{}),g]})})},Pe=({children:t})=>{const[e,s]=l.useState(!1),[n]=l.useState(new Set),r=l.useCallback(u=>{n.add(u),s(!0)},[n]),i=l.useCallback(u=>{n.delete(u),n.size===0&&s(!1)},[n]),f=l.useMemo(()=>({isLoading:e,startLoading:r,stopLoading:i}),[e,r,i]);return o.jsxRuntimeExports.jsxs(o.LoadingContext.Provider,{value:f,children:[e&&o.jsxRuntimeExports.jsx(v.Loading,{}),t]})},_e=({children:t})=>{const e=o.useAxios(),s=l.useCallback(()=>{const m=localStorage.getItem("user")??null;return m?JSON.parse(m):null},[]),[n,r]=l.useState(s()),i=l.useCallback(async()=>{let m=null;return await e.get("/user/detail").then(R=>{m=R.data}).catch(()=>{m=null}),localStorage.setItem("user",JSON.stringify(m)),m},[e]),f=l.useCallback(()=>{localStorage.removeItem("user")},[]),u=l.useCallback(async()=>{const m=await i();return m?(r(m),!0):!1},[i]),g=l.useCallback(()=>{f(),r(null)},[f]),x=l.useMemo(()=>({user:n,loginUser:u,logoutUser:g}),[n,u,g]);return l.useEffect(()=>{r(s())},[s]),o.jsxRuntimeExports.jsx(o.UserContext.Provider,{value:x,children:t})},He=t=>h.forwardRef((e,s)=>o.jsxRuntimeExports.jsx("div",{...e,ref:s,className:o.classNames(e.className,t)})),qe={"aria-label":a.PropTypes.string,onClick:a.PropTypes.func,variant:a.PropTypes.oneOf(["white"])},me=h.forwardRef(({className:t,variant:e,"aria-label":s="Close",...n},r)=>o.jsxRuntimeExports.jsx("button",{ref:r,type:"button",className:o.classNames("btn-close",e&&`btn-close-${e}`,t),"aria-label":s,...n}));me.displayName="CloseButton";me.propTypes=qe;const Ke=me;var J;function he(t){if((!J&&J!==0||t)&&a.canUseDOM){var e=document.createElement("div");e.style.position="absolute",e.style.top="-9999px",e.style.width="50px",e.style.height="50px",e.style.overflow="scroll",document.body.appendChild(e),J=e.offsetWidth-e.clientWidth,document.body.removeChild(e)}return J}function ce(t){t===void 0&&(t=a.ownerDocument());try{var e=t.activeElement;return!e||!e.nodeName?null:e}catch{return t.body}}function ze(t=document){const e=t.defaultView;return Math.abs(e.innerWidth-t.documentElement.clientWidth)}const xe=v.dataAttr("modal-open");class Ge{constructor({ownerDocument:e,handleContainerOverflow:s=!0,isRTL:n=!1}={}){this.handleContainerOverflow=s,this.isRTL=n,this.modals=[],this.ownerDocument=e}getScrollbarWidth(){return ze(this.ownerDocument)}getElement(){return(this.ownerDocument||document).body}setModalAttributes(e){}removeModalAttributes(e){}setContainerStyle(e){const s={overflow:"hidden"},n=this.isRTL?"paddingLeft":"paddingRight",r=this.getElement();e.style={overflow:r.style.overflow,[n]:r.style[n]},e.scrollBarWidth&&(s[n]=`${parseInt(a.style(r,n)||"0",10)+e.scrollBarWidth}px`),r.setAttribute(xe,""),a.style(r,s)}reset(){[...this.modals].forEach(e=>this.remove(e))}removeContainerStyle(e){const s=this.getElement();s.removeAttribute(xe),Object.assign(s.style,e.style)}add(e){let s=this.modals.indexOf(e);return s!==-1||(s=this.modals.length,this.modals.push(e),this.setModalAttributes(e),s!==0)||(this.state={scrollBarWidth:this.getScrollbarWidth(),style:{}},this.handleContainerOverflow&&this.setContainerStyle(this.state)),s}remove(e){const s=this.modals.indexOf(e);s!==-1&&(this.modals.splice(s,1),!this.modals.length&&this.handleContainerOverflow&&this.removeContainerStyle(this.state),this.removeModalAttributes(e))}isTopModal(e){return!!this.modals.length&&this.modals[this.modals.length-1]===e}}const fe=Ge,Ve=["show","role","className","style","children","backdrop","keyboard","onBackdropClick","onEscapeKeyDown","transition","runTransition","backdropTransition","runBackdropTransition","autoFocus","enforceFocus","restoreFocus","restoreFocusOptions","renderDialog","renderBackdrop","manager","container","onShow","onHide","onExit","onExited","onExiting","onEnter","onEntering","onEntered"];function Xe(t,e){if(t==null)return{};var s={},n=Object.keys(t),r,i;for(i=0;i<n.length;i++)r=n[i],!(e.indexOf(r)>=0)&&(s[r]=t[r]);return s}let de;function Ye(t){return de||(de=new fe({ownerDocument:t==null?void 0:t.document})),de}function Je(t){const e=a.useWindow(),s=t||Ye(e),n=l.useRef({dialog:null,backdrop:null});return Object.assign(n.current,{add:()=>s.add(n.current),remove:()=>s.remove(n.current),isTopModal:()=>s.isTopModal(n.current),setDialogRef:l.useCallback(r=>{n.current.dialog=r},[]),setBackdropRef:l.useCallback(r=>{n.current.backdrop=r},[])})}const Ce=l.forwardRef((t,e)=>{let{show:s=!1,role:n="dialog",className:r,style:i,children:f,backdrop:u=!0,keyboard:g=!0,onBackdropClick:x,onEscapeKeyDown:m,transition:R,runTransition:j,backdropTransition:M,runBackdropTransition:Q,autoFocus:U=!0,enforceFocus:Z=!0,restoreFocus:w=!0,restoreFocusOptions:ee,renderDialog:P,renderBackdrop:te=d=>o.jsxRuntimeExports.jsx("div",Object.assign({},d)),manager:se,container:ne,onShow:_,onHide:A=()=>{},onExit:oe,onExited:D,onExiting:H,onEnter:q,onEntering:K,onEntered:z}=t,re=Xe(t,Ve);const C=a.useWindow(),N=a.useWaitForDOMRef(ne),p=Je(se),ae=a.useMounted(),G=v.usePrevious(s),[b,T]=l.useState(!s),E=l.useRef(null);l.useImperativeHandle(e,()=>p,[p]),a.canUseDOM&&!G&&s&&(E.current=ce(C==null?void 0:C.document)),s&&b&&T(!1);const y=a.useEventCallback(()=>{if(p.add(),k.current=a.listen(document,"keydown",le),I.current=a.listen(document,"focus",()=>setTimeout(ie),!0),_&&_(),U){var d,Y;const $=ce((d=(Y=p.dialog)==null?void 0:Y.ownerDocument)!=null?d:C==null?void 0:C.document);p.dialog&&$&&!a.contains(p.dialog,$)&&(E.current=$,p.dialog.focus())}}),F=a.useEventCallback(()=>{if(p.remove(),k.current==null||k.current(),I.current==null||I.current(),w){var d;(d=E.current)==null||d.focus==null||d.focus(ee),E.current=null}});l.useEffect(()=>{!s||!N||y()},[s,N,y]),l.useEffect(()=>{b&&F()},[b,F]),a.useWillUnmount(()=>{F()});const ie=a.useEventCallback(()=>{if(!Z||!ae()||!p.isTopModal())return;const d=ce(C==null?void 0:C.document);p.dialog&&d&&!a.contains(p.dialog,d)&&p.dialog.focus()}),V=a.useEventCallback(d=>{d.target===d.currentTarget&&(x==null||x(d),u===!0&&A())}),le=a.useEventCallback(d=>{g&&a.isEscKey(d)&&p.isTopModal()&&(m==null||m(d),d.defaultPrevented||A())}),I=l.useRef(),k=l.useRef(),X=(...d)=>{T(!0),D==null||D(...d)};if(!N)return null;const S=Object.assign({role:n,ref:p.setDialogRef,"aria-modal":n==="dialog"?!0:void 0},re,{style:i,className:r,tabIndex:-1});let W=P?P(S):o.jsxRuntimeExports.jsx("div",Object.assign({},S,{children:h.cloneElement(f,{role:"document"})}));W=a.renderTransition(R,j,{unmountOnExit:!0,mountOnEnter:!0,appear:!0,in:!!s,onExit:oe,onExiting:H,onExited:X,onEnter:q,onEntering:K,onEntered:z,children:W});let O=null;return u&&(O=te({ref:p.setBackdropRef,onClick:V}),O=a.renderTransition(M,Q,{in:!!s,appear:!0,mountOnEnter:!0,unmountOnExit:!0,children:O})),o.jsxRuntimeExports.jsx(o.jsxRuntimeExports.Fragment,{children:Ie.createPortal(o.jsxRuntimeExports.jsxs(o.jsxRuntimeExports.Fragment,{children:[O,W]}),N)})});Ce.displayName="Modal";const Qe=Object.assign(Ce,{Manager:fe});function Ze(t,e){t.classList?t.classList.add(e):a.hasClass(t,e)||(typeof t.className=="string"?t.className=t.className+" "+e:t.setAttribute("class",(t.className&&t.className.baseVal||"")+" "+e))}function Ee(t,e){return t.replace(new RegExp("(^|\\s)"+e+"(?:\\s|$)","g"),"$1").replace(/\s+/g," ").replace(/^\s*|\s*$/g,"")}function et(t,e){t.classList?t.classList.remove(e):typeof t.className=="string"?t.className=Ee(t.className,e):t.setAttribute("class",Ee(t.className&&t.className.baseVal||"",e))}const L={FIXED_CONTENT:".fixed-top, .fixed-bottom, .is-fixed, .sticky-top",STICKY_CONTENT:".sticky-top",NAVBAR_TOGGLER:".navbar-toggler"};class tt extends fe{adjustAndStore(e,s,n){const r=s.style[e];s.dataset[e]=r,a.style(s,{[e]:`${parseFloat(a.style(s,e))+n}px`})}restore(e,s){const n=s.dataset[e];n!==void 0&&(delete s.dataset[e],a.style(s,{[e]:n}))}setContainerStyle(e){super.setContainerStyle(e);const s=this.getElement();if(Ze(s,"modal-open"),!e.scrollBarWidth)return;const n=this.isRTL?"paddingLeft":"paddingRight",r=this.isRTL?"marginLeft":"marginRight";v.qsa(s,L.FIXED_CONTENT).forEach(i=>this.adjustAndStore(n,i,e.scrollBarWidth)),v.qsa(s,L.STICKY_CONTENT).forEach(i=>this.adjustAndStore(r,i,-e.scrollBarWidth)),v.qsa(s,L.NAVBAR_TOGGLER).forEach(i=>this.adjustAndStore(r,i,e.scrollBarWidth))}removeContainerStyle(e){super.removeContainerStyle(e);const s=this.getElement();et(s,"modal-open");const n=this.isRTL?"paddingLeft":"paddingRight",r=this.isRTL?"marginLeft":"marginRight";v.qsa(s,L.FIXED_CONTENT).forEach(i=>this.restore(n,i)),v.qsa(s,L.STICKY_CONTENT).forEach(i=>this.restore(r,i)),v.qsa(s,L.NAVBAR_TOGGLER).forEach(i=>this.restore(r,i))}}let ue;function st(t){return ue||(ue=new tt(t)),ue}const ye=h.forwardRef(({className:t,bsPrefix:e,as:s="div",...n},r)=>(e=a.useBootstrapPrefix(e,"modal-body"),o.jsxRuntimeExports.jsx(s,{ref:r,className:o.classNames(t,e),...n})));ye.displayName="ModalBody";const nt=ye,ot=h.createContext({onHide(){}}),Re=ot,je=h.forwardRef(({bsPrefix:t,className:e,contentClassName:s,centered:n,size:r,fullscreen:i,children:f,scrollable:u,...g},x)=>{t=a.useBootstrapPrefix(t,"modal");const m=`${t}-dialog`,R=typeof i=="string"?`${t}-fullscreen-${i}`:`${t}-fullscreen`;return o.jsxRuntimeExports.jsx("div",{...g,ref:x,className:o.classNames(m,e,r&&`${t}-${r}`,n&&`${m}-centered`,u&&`${m}-scrollable`,i&&R),children:o.jsxRuntimeExports.jsx("div",{className:o.classNames(`${t}-content`,s),children:f})})});je.displayName="ModalDialog";const be=je,Me=h.forwardRef(({className:t,bsPrefix:e,as:s="div",...n},r)=>(e=a.useBootstrapPrefix(e,"modal-footer"),o.jsxRuntimeExports.jsx(s,{ref:r,className:o.classNames(t,e),...n})));Me.displayName="ModalFooter";const rt=Me,at=h.forwardRef(({closeLabel:t="Close",closeVariant:e,closeButton:s=!1,onHide:n,children:r,...i},f)=>{const u=l.useContext(Re),g=a.useEventCallback(()=>{u==null||u.onHide(),n==null||n()});return o.jsxRuntimeExports.jsxs("div",{ref:f,...i,children:[r,s&&o.jsxRuntimeExports.jsx(Ke,{"aria-label":t,variant:e,onClick:g})]})}),it=at,we=h.forwardRef(({bsPrefix:t,className:e,closeLabel:s="Close",closeButton:n=!1,...r},i)=>(t=a.useBootstrapPrefix(t,"modal-header"),o.jsxRuntimeExports.jsx(it,{ref:i,...r,className:o.classNames(e,t),closeLabel:s,closeButton:n})));we.displayName="ModalHeader";const lt=we,ct=He("h4"),Ne=h.forwardRef(({className:t,bsPrefix:e,as:s=ct,...n},r)=>(e=a.useBootstrapPrefix(e,"modal-title"),o.jsxRuntimeExports.jsx(s,{ref:r,className:o.classNames(t,e),...n})));Ne.displayName="ModalTitle";const dt=Ne;function ut(t){return o.jsxRuntimeExports.jsx(a.Fade,{...t,timeout:null})}function mt(t){return o.jsxRuntimeExports.jsx(a.Fade,{...t,timeout:null})}const Te=h.forwardRef(({bsPrefix:t,className:e,style:s,dialogClassName:n,contentClassName:r,children:i,dialogAs:f=be,"data-bs-theme":u,"aria-labelledby":g,"aria-describedby":x,"aria-label":m,show:R=!1,animation:j=!0,backdrop:M=!0,keyboard:Q=!0,onEscapeKeyDown:U,onShow:Z,onHide:w,container:ee,autoFocus:P=!0,enforceFocus:te=!0,restoreFocus:se=!0,restoreFocusOptions:ne,onEntered:_,onExit:A,onExiting:oe,onEnter:D,onEntering:H,onExited:q,backdropClassName:K,manager:z,...re},C)=>{const[N,p]=l.useState({}),[ae,G]=l.useState(!1),b=l.useRef(!1),T=l.useRef(!1),E=l.useRef(null),[y,F]=a.useCallbackRef(),ie=a.useMergedRefs(C,F),V=a.useEventCallback(w),le=a.useIsRTL();t=a.useBootstrapPrefix(t,"modal");const I=l.useMemo(()=>({onHide:V}),[V]);function k(){return z||st({isRTL:le})}function X(c){if(!a.canUseDOM)return;const B=k().getScrollbarWidth()>0,ge=c.scrollHeight>a.ownerDocument(c).documentElement.clientHeight;p({paddingRight:B&&!ge?he():void 0,paddingLeft:!B&&ge?he():void 0})}const S=a.useEventCallback(()=>{y&&X(y.dialog)});a.useWillUnmount(()=>{a.removeEventListener(window,"resize",S),E.current==null||E.current()});const W=()=>{b.current=!0},O=c=>{b.current&&y&&c.target===y.dialog&&(T.current=!0),b.current=!1},d=()=>{G(!0),E.current=a.transitionEnd(y.dialog,()=>{G(!1)})},Y=c=>{c.target===c.currentTarget&&d()},$=c=>{if(M==="static"){Y(c);return}if(T.current||c.target!==c.currentTarget){T.current=!1;return}w==null||w()},ke=c=>{Q?U==null||U(c):(c.preventDefault(),M==="static"&&d())},Se=(c,B)=>{c&&X(c),D==null||D(c,B)},Oe=c=>{E.current==null||E.current(),A==null||A(c)},Be=(c,B)=>{H==null||H(c,B),a.addEventListener(window,"resize",S)},Le=c=>{c&&(c.style.display=""),q==null||q(c),a.removeEventListener(window,"resize",S)},Ae=l.useCallback(c=>o.jsxRuntimeExports.jsx("div",{...c,className:o.classNames(`${t}-backdrop`,K,!j&&"show")}),[j,K,t]),pe={...s,...N};pe.display="block";const De=c=>o.jsxRuntimeExports.jsx("div",{role:"dialog",...c,style:pe,className:o.classNames(e,t,ae&&`${t}-static`,!j&&"show"),onClick:M?$:void 0,onMouseUp:O,"data-bs-theme":u,"aria-label":m,"aria-labelledby":g,"aria-describedby":x,children:o.jsxRuntimeExports.jsx(f,{...re,onMouseDown:W,className:n,contentClassName:r,children:i})});return o.jsxRuntimeExports.jsx(Re.Provider,{value:I,children:o.jsxRuntimeExports.jsx(Qe,{show:R,ref:ie,backdrop:M,container:ee,keyboard:!0,autoFocus:P,enforceFocus:te,restoreFocus:se,restoreFocusOptions:ne,onEscapeKeyDown:ke,onShow:Z,onHide:w,onEnter:Se,onEntering:Be,onEntered:_,onExit:Oe,onExiting:oe,onExited:Le,manager:k(),transition:j?ut:void 0,backdropTransition:j?mt:void 0,renderBackdrop:Ae,renderDialog:De})})});Te.displayName="Modal";const ve=Object.assign(Te,{Body:nt,Header:lt,Title:dt,Footer:rt,Dialog:be,TRANSITION_DURATION:300,BACKDROP_TRANSITION_DURATION:150}),ft=()=>{const{confirmTexts:t}=l.useContext(o.LuminusComponentsContext),{onConfirm:e,onCancel:s,text:n,show:r}=Fe.useConfirm();return o.jsxRuntimeExports.jsx(ve,{show:r,size:"sm",centered:!0,onHide:s,children:o.jsxRuntimeExports.jsxs(ve.Body,{children:[o.jsxRuntimeExports.jsx("div",{className:"mb-5 text-center",children:o.jsxRuntimeExports.jsx(v.Typography,{variant:"h6",children:n})}),o.jsxRuntimeExports.jsxs("div",{className:"w-100 d-flex gap-5",children:[o.jsxRuntimeExports.jsx("button",{type:"button",className:"btn btn-secondary w-100",onClick:s,children:t.no}),o.jsxRuntimeExports.jsx("button",{type:"button",className:"btn btn-primary w-100 ml",onClick:e,children:t.yes})]})]})})};exports.LoadingContext=o.LoadingContext;exports.LuminusComponentsContext=o.LuminusComponentsContext;exports.UserContext=o.UserContext;exports.LoadingProvider=Pe;exports.LuminusComponentsProvider=Ue;exports.UserProvider=_e;
|
package/dist/contexts.es.js
CHANGED
|
@@ -1,21 +1,21 @@
|
|
|
1
|
-
import { j as a, C as tt, L as Ae, I as ot, g as nt, b as st, U as rt, d as y } from "./
|
|
2
|
-
import * as
|
|
3
|
-
import { useState as M, useCallback as
|
|
4
|
-
import { L as lt, d as dt, u as ct, q as D, T as ut } from "./DataKey-
|
|
5
|
-
import { u as ft } from "./useConfirm-
|
|
6
|
-
import { P as
|
|
1
|
+
import { j as a, C as tt, L as Ae, I as ot, g as nt, b as st, U as rt, d as y } from "./SimplePicker.module-BL8k4kWN.mjs";
|
|
2
|
+
import * as m from "react";
|
|
3
|
+
import { useState as M, useCallback as g, useMemo as G, useEffect as Ce, forwardRef as at, useRef as N, useImperativeHandle as it, useContext as Le } from "react";
|
|
4
|
+
import { L as lt, d as dt, u as ct, q as D, T as ut } from "./DataKey-CXMJ5YCH.mjs";
|
|
5
|
+
import { u as ft } from "./useConfirm-Rw0k8LNX.mjs";
|
|
6
|
+
import { P as me, c as Ee, o as De, s as z, u as Fe, a as ht, b as gt, d as w, l as Te, e as Ne, f as Ie, i as mt, r as Re, h as pt, g as I, j as vt, k as yt, m as Ct, n as je, F as $e, p as Et, t as wt } from "./hasClass-BHK2NooK.mjs";
|
|
7
7
|
import Mt from "react-dom";
|
|
8
8
|
const xt = ({ children: t }) => {
|
|
9
|
-
const [e, o] = M(!1), [n, s] = M(""), r =
|
|
9
|
+
const [e, o] = M(!1), [n, s] = M(""), r = g((h) => {
|
|
10
10
|
o(!0), s(h);
|
|
11
|
-
}, []), u =
|
|
11
|
+
}, []), u = g(() => {
|
|
12
12
|
o(!1);
|
|
13
13
|
}, []), d = G(() => ({ show: e, text: n, showConfirm: r, hideConfirm: u }), [e, n, r, u]);
|
|
14
14
|
return /* @__PURE__ */ a.jsxs(tt.Provider, { value: d, children: [
|
|
15
15
|
/* @__PURE__ */ a.jsx(Xt, {}),
|
|
16
16
|
t
|
|
17
17
|
] });
|
|
18
|
-
}, to = ({ axiosInstance: t, LinkComponent: e, language: o, axiosTexts: n, confirmTexts: s, formValidationTexts: r,
|
|
18
|
+
}, to = ({ axiosInstance: t, LinkComponent: e, language: o, axiosTexts: n, confirmTexts: s, formValidationTexts: r, homeDashboardTexts: u, formSubmitTexts: d, children: h }) => {
|
|
19
19
|
const p = G(() => ({
|
|
20
20
|
axiosInstance: t,
|
|
21
21
|
LinkComponent: e,
|
|
@@ -23,8 +23,8 @@ const xt = ({ children: t }) => {
|
|
|
23
23
|
axiosTexts: n,
|
|
24
24
|
confirmTexts: s,
|
|
25
25
|
formValidationTexts: r,
|
|
26
|
-
|
|
27
|
-
|
|
26
|
+
homeDashboardTexts: u,
|
|
27
|
+
formSubmitTexts: d
|
|
28
28
|
}), [
|
|
29
29
|
t,
|
|
30
30
|
e,
|
|
@@ -40,9 +40,9 @@ const xt = ({ children: t }) => {
|
|
|
40
40
|
h
|
|
41
41
|
] }) });
|
|
42
42
|
}, oo = ({ children: t }) => {
|
|
43
|
-
const [e, o] = M(!1), [n] = M(/* @__PURE__ */ new Set()), s =
|
|
43
|
+
const [e, o] = M(!1), [n] = M(/* @__PURE__ */ new Set()), s = g((d) => {
|
|
44
44
|
n.add(d), o(!0);
|
|
45
|
-
}, [n]), r =
|
|
45
|
+
}, [n]), r = g((d) => {
|
|
46
46
|
n.delete(d), n.size === 0 && o(!1);
|
|
47
47
|
}, [n]), u = G(() => ({ isLoading: e, startLoading: s, stopLoading: r }), [e, s, r]);
|
|
48
48
|
return /* @__PURE__ */ a.jsxs(nt.Provider, { value: u, children: [
|
|
@@ -50,43 +50,43 @@ const xt = ({ children: t }) => {
|
|
|
50
50
|
t
|
|
51
51
|
] });
|
|
52
52
|
}, no = ({ children: t }) => {
|
|
53
|
-
const e = st(), o =
|
|
53
|
+
const e = st(), o = g(() => {
|
|
54
54
|
const c = localStorage.getItem("user") ?? null;
|
|
55
55
|
return c ? JSON.parse(c) : null;
|
|
56
|
-
}, []), [n, s] = M(o()), r =
|
|
56
|
+
}, []), [n, s] = M(o()), r = g(async () => {
|
|
57
57
|
let c = null;
|
|
58
58
|
return await e.get("/user/detail").then((x) => {
|
|
59
59
|
c = x.data;
|
|
60
60
|
}).catch(() => {
|
|
61
61
|
c = null;
|
|
62
62
|
}), localStorage.setItem("user", JSON.stringify(c)), c;
|
|
63
|
-
}, [e]), u =
|
|
63
|
+
}, [e]), u = g(() => {
|
|
64
64
|
localStorage.removeItem("user");
|
|
65
|
-
}, []), d =
|
|
65
|
+
}, []), d = g(async () => {
|
|
66
66
|
const c = await r();
|
|
67
67
|
return c ? (s(c), !0) : !1;
|
|
68
|
-
}, [r]), h =
|
|
68
|
+
}, [r]), h = g(() => {
|
|
69
69
|
u(), s(null);
|
|
70
70
|
}, [u]), p = G(() => ({ user: n, loginUser: d, logoutUser: h }), [n, d, h]);
|
|
71
71
|
return Ce(() => {
|
|
72
72
|
s(o());
|
|
73
73
|
}, [o]), /* @__PURE__ */ a.jsx(rt.Provider, { value: p, children: t });
|
|
74
|
-
}, bt = (t) => /* @__PURE__ */
|
|
74
|
+
}, bt = (t) => /* @__PURE__ */ m.forwardRef((e, o) => /* @__PURE__ */ a.jsx("div", {
|
|
75
75
|
...e,
|
|
76
76
|
ref: o,
|
|
77
77
|
className: y(e.className, t)
|
|
78
78
|
})), Tt = {
|
|
79
79
|
/** An accessible label indicating the relevant information about the Close Button. */
|
|
80
|
-
"aria-label":
|
|
80
|
+
"aria-label": me.string,
|
|
81
81
|
/** A callback fired after the Close Button is clicked. */
|
|
82
|
-
onClick:
|
|
82
|
+
onClick: me.func,
|
|
83
83
|
/**
|
|
84
84
|
* Render different color variant for the button.
|
|
85
85
|
*
|
|
86
86
|
* Omitting this will render the default dark color.
|
|
87
87
|
*/
|
|
88
|
-
variant:
|
|
89
|
-
}, we = /* @__PURE__ */
|
|
88
|
+
variant: me.oneOf(["white"])
|
|
89
|
+
}, we = /* @__PURE__ */ m.forwardRef(({
|
|
90
90
|
className: t,
|
|
91
91
|
variant: e,
|
|
92
92
|
"aria-label": o = "Close",
|
|
@@ -196,10 +196,10 @@ function Bt(t) {
|
|
|
196
196
|
add: () => o.add(n.current),
|
|
197
197
|
remove: () => o.remove(n.current),
|
|
198
198
|
isTopModal: () => o.isTopModal(n.current),
|
|
199
|
-
setDialogRef:
|
|
199
|
+
setDialogRef: g((s) => {
|
|
200
200
|
n.current.dialog = s;
|
|
201
201
|
}, []),
|
|
202
|
-
setBackdropRef:
|
|
202
|
+
setBackdropRef: g((s) => {
|
|
203
203
|
n.current.backdrop = s;
|
|
204
204
|
}, [])
|
|
205
205
|
});
|
|
@@ -237,10 +237,10 @@ const We = /* @__PURE__ */ at((t, e) => {
|
|
|
237
237
|
onEntering: J,
|
|
238
238
|
onEntered: Q
|
|
239
239
|
} = t, ue = Ot(t, kt);
|
|
240
|
-
const C = Fe(), k = ht(de), f = Bt(le), fe =
|
|
240
|
+
const C = Fe(), k = ht(de), f = Bt(le), fe = gt(), Z = ct(o), [T, O] = M(!o), v = N(null);
|
|
241
241
|
it(e, () => f, [f]), Ee && !Z && o && (v.current = pe(C == null ? void 0 : C.document)), o && T && O(!1);
|
|
242
242
|
const E = w(() => {
|
|
243
|
-
if (f.add(), S.current = Te(document, "keydown",
|
|
243
|
+
if (f.add(), S.current = Te(document, "keydown", ge), H.current = Te(
|
|
244
244
|
document,
|
|
245
245
|
"focus",
|
|
246
246
|
// the timeout is necessary b/c this will run before the new modal is mounted
|
|
@@ -277,8 +277,8 @@ const We = /* @__PURE__ */ at((t, e) => {
|
|
|
277
277
|
f.dialog && l && !Ne(f.dialog, l) && f.dialog.focus();
|
|
278
278
|
}), ee = w((l) => {
|
|
279
279
|
l.target === l.currentTarget && (p == null || p(l), d === !0 && $());
|
|
280
|
-
}),
|
|
281
|
-
h &&
|
|
280
|
+
}), ge = w((l) => {
|
|
281
|
+
h && mt(l) && f.isTopModal() && (c == null || c(l), l.defaultPrevented || $());
|
|
282
282
|
}), H = N(), S = N(), te = (...l) => {
|
|
283
283
|
O(!0), W == null || W(...l);
|
|
284
284
|
};
|
|
@@ -295,7 +295,7 @@ const We = /* @__PURE__ */ at((t, e) => {
|
|
|
295
295
|
tabIndex: -1
|
|
296
296
|
});
|
|
297
297
|
let _ = V ? V(B) : /* @__PURE__ */ a.jsx("div", Object.assign({}, B, {
|
|
298
|
-
children: /* @__PURE__ */
|
|
298
|
+
children: /* @__PURE__ */ m.cloneElement(u, {
|
|
299
299
|
role: "document"
|
|
300
300
|
})
|
|
301
301
|
}));
|
|
@@ -379,7 +379,7 @@ let ye;
|
|
|
379
379
|
function It(t) {
|
|
380
380
|
return ye || (ye = new Ft(t)), ye;
|
|
381
381
|
}
|
|
382
|
-
const Ue = /* @__PURE__ */
|
|
382
|
+
const Ue = /* @__PURE__ */ m.forwardRef(({
|
|
383
383
|
className: t,
|
|
384
384
|
bsPrefix: e,
|
|
385
385
|
as: o = "div",
|
|
@@ -390,11 +390,11 @@ const Ue = /* @__PURE__ */ g.forwardRef(({
|
|
|
390
390
|
...n
|
|
391
391
|
})));
|
|
392
392
|
Ue.displayName = "ModalBody";
|
|
393
|
-
const $t = Ue, Wt = /* @__PURE__ */
|
|
393
|
+
const $t = Ue, Wt = /* @__PURE__ */ m.createContext({
|
|
394
394
|
// eslint-disable-next-line @typescript-eslint/no-empty-function
|
|
395
395
|
onHide() {
|
|
396
396
|
}
|
|
397
|
-
}), He = Wt, _e = /* @__PURE__ */
|
|
397
|
+
}), He = Wt, _e = /* @__PURE__ */ m.forwardRef(({
|
|
398
398
|
bsPrefix: t,
|
|
399
399
|
className: e,
|
|
400
400
|
contentClassName: o,
|
|
@@ -418,7 +418,7 @@ const $t = Ue, Wt = /* @__PURE__ */ g.createContext({
|
|
|
418
418
|
});
|
|
419
419
|
});
|
|
420
420
|
_e.displayName = "ModalDialog";
|
|
421
|
-
const Ke = _e, ze = /* @__PURE__ */
|
|
421
|
+
const Ke = _e, ze = /* @__PURE__ */ m.forwardRef(({
|
|
422
422
|
className: t,
|
|
423
423
|
bsPrefix: e,
|
|
424
424
|
as: o = "div",
|
|
@@ -429,7 +429,7 @@ const Ke = _e, ze = /* @__PURE__ */ g.forwardRef(({
|
|
|
429
429
|
...n
|
|
430
430
|
})));
|
|
431
431
|
ze.displayName = "ModalFooter";
|
|
432
|
-
const Ut = ze, Ht = /* @__PURE__ */
|
|
432
|
+
const Ut = ze, Ht = /* @__PURE__ */ m.forwardRef(({
|
|
433
433
|
closeLabel: t = "Close",
|
|
434
434
|
closeVariant: e,
|
|
435
435
|
closeButton: o = !1,
|
|
@@ -449,7 +449,7 @@ const Ut = ze, Ht = /* @__PURE__ */ g.forwardRef(({
|
|
|
449
449
|
onClick: h
|
|
450
450
|
})]
|
|
451
451
|
});
|
|
452
|
-
}), _t = Ht, Ge = /* @__PURE__ */
|
|
452
|
+
}), _t = Ht, Ge = /* @__PURE__ */ m.forwardRef(({
|
|
453
453
|
bsPrefix: t,
|
|
454
454
|
className: e,
|
|
455
455
|
closeLabel: o = "Close",
|
|
@@ -463,7 +463,7 @@ const Ut = ze, Ht = /* @__PURE__ */ g.forwardRef(({
|
|
|
463
463
|
closeButton: n
|
|
464
464
|
})));
|
|
465
465
|
Ge.displayName = "ModalHeader";
|
|
466
|
-
const Kt = Ge, zt = bt("h4"), Pe = /* @__PURE__ */
|
|
466
|
+
const Kt = Ge, zt = bt("h4"), Pe = /* @__PURE__ */ m.forwardRef(({
|
|
467
467
|
className: t,
|
|
468
468
|
bsPrefix: e,
|
|
469
469
|
as: o = zt,
|
|
@@ -487,7 +487,7 @@ function Vt(t) {
|
|
|
487
487
|
timeout: null
|
|
488
488
|
});
|
|
489
489
|
}
|
|
490
|
-
const Ve = /* @__PURE__ */
|
|
490
|
+
const Ve = /* @__PURE__ */ m.forwardRef(({
|
|
491
491
|
bsPrefix: t,
|
|
492
492
|
className: e,
|
|
493
493
|
style: o,
|
|
@@ -522,14 +522,14 @@ const Ve = /* @__PURE__ */ g.forwardRef(({
|
|
|
522
522
|
manager: Q,
|
|
523
523
|
...ue
|
|
524
524
|
}, C) => {
|
|
525
|
-
const [k, f] = M({}), [fe, Z] = M(!1), T = N(!1), O = N(!1), v = N(null), [E, U] = vt(), he = yt(C, U), ee = w(j),
|
|
525
|
+
const [k, f] = M({}), [fe, Z] = M(!1), T = N(!1), O = N(!1), v = N(null), [E, U] = vt(), he = yt(C, U), ee = w(j), ge = Ct();
|
|
526
526
|
t = I(t, "modal");
|
|
527
527
|
const H = G(() => ({
|
|
528
528
|
onHide: ee
|
|
529
529
|
}), [ee]);
|
|
530
530
|
function S() {
|
|
531
531
|
return Q || It({
|
|
532
|
-
isRTL:
|
|
532
|
+
isRTL: ge
|
|
533
533
|
});
|
|
534
534
|
}
|
|
535
535
|
function te(i) {
|
|
@@ -577,7 +577,7 @@ const Ve = /* @__PURE__ */ g.forwardRef(({
|
|
|
577
577
|
Y == null || Y(i, L), Et(window, "resize", B);
|
|
578
578
|
}, Qe = (i) => {
|
|
579
579
|
i && (i.style.display = ""), q == null || q(i), je(window, "resize", B);
|
|
580
|
-
}, Ze =
|
|
580
|
+
}, Ze = g((i) => /* @__PURE__ */ a.jsx("div", {
|
|
581
581
|
...i,
|
|
582
582
|
className: y(`${t}-backdrop`, J, !b && "show")
|
|
583
583
|
}), [b, J, t]), xe = {
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import * as ue from "react";
|
|
2
2
|
import K, { useContext as ne, useMemo as ot, useRef as Y, useCallback as $, useEffect as H, useState as Ae, useLayoutEffect as it, createContext as at, cloneElement as De } from "react";
|
|
3
|
-
import { h as st, j as Q, d as ut } from "./
|
|
3
|
+
import { h as st, j as Q, d as ut } from "./SimplePicker.module-BL8k4kWN.mjs";
|
|
4
4
|
import ee from "react-dom";
|
|
5
5
|
function ct(e, n) {
|
|
6
6
|
if (e == null)
|