dinocollab-core 1.0.3 → 1.0.5
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/_virtual/_rollupPluginBabelHelpers.js +1 -487
- package/dist/_virtual/_rollupPluginBabelHelpers.js.map +1 -1
- package/dist/api-context/alert-global.js +1 -165
- package/dist/api-context/alert-global.js.map +1 -1
- package/dist/api-context/drawer-global.js +1 -111
- package/dist/api-context/drawer-global.js.map +1 -1
- package/dist/api-context/global-modal.js +1 -94
- package/dist/api-context/global-modal.js.map +1 -1
- package/dist/api-context/popover-global.js +1 -109
- package/dist/api-context/popover-global.js.map +1 -1
- package/dist/api-context/popover.js +1 -93
- package/dist/api-context/popover.js.map +1 -1
- package/dist/api-context/ui.units.js +1 -22
- package/dist/api-context/ui.units.js.map +1 -1
- package/dist/components/breadcrumbs.js +1 -64
- package/dist/components/breadcrumbs.js.map +1 -1
- package/dist/components/copy-to-clipboard.js +1 -111
- package/dist/components/copy-to-clipboard.js.map +1 -1
- package/dist/components/create.multi-select-dropdown.js +2 -0
- package/dist/components/create.multi-select-dropdown.js.map +1 -0
- package/dist/components/help-tooltip.js +1 -103
- package/dist/components/help-tooltip.js.map +1 -1
- package/dist/components/image-with-fallback.js +1 -50
- package/dist/components/image-with-fallback.js.map +1 -1
- package/dist/components/text-editor.js +1 -117
- package/dist/components/text-editor.js.map +1 -1
- package/dist/components/text-editor.preview.js +1 -26
- package/dist/components/text-editor.preview.js.map +1 -1
- package/dist/filter-bar/base.js +2 -0
- package/dist/filter-bar/base.js.map +1 -0
- package/dist/filter-bar/create.filter-bar.js +2 -0
- package/dist/filter-bar/create.filter-bar.js.map +1 -0
- package/dist/filter-bar/create.filter-menu.js +2 -0
- package/dist/filter-bar/create.filter-menu.js.map +1 -0
- package/dist/filter-bar/create.filter-panel.js +2 -0
- package/dist/filter-bar/create.filter-panel.js.map +1 -0
- package/dist/filter-bar/create.filtered.js +2 -0
- package/dist/filter-bar/create.filtered.js.map +1 -0
- package/dist/filter-bar/create.sort-menu.js +2 -0
- package/dist/filter-bar/create.sort-menu.js.map +1 -0
- package/dist/filter-bar/demo.js +2 -0
- package/dist/filter-bar/demo.js.map +1 -0
- package/dist/filter-bar/types.js +2 -0
- package/dist/filter-bar/types.js.map +1 -0
- package/dist/filter-bar/ui.units.js +2 -0
- package/dist/filter-bar/ui.units.js.map +1 -0
- package/dist/form/create.autocomplete.chips.js +1 -227
- package/dist/form/create.autocomplete.chips.js.map +1 -1
- package/dist/form/create.date-expired.js +1 -210
- package/dist/form/create.date-expired.js.map +1 -1
- package/dist/form/create.date-picker.js +1 -127
- package/dist/form/create.date-picker.js.map +1 -1
- package/dist/form/create.form-base.js +1 -140
- package/dist/form/create.form-base.js.map +1 -1
- package/dist/form/create.form-comfirm.js +1 -130
- package/dist/form/create.form-comfirm.js.map +1 -1
- package/dist/form/create.form-grid-layout.js +1 -187
- package/dist/form/create.form-grid-layout.js.map +1 -1
- package/dist/form/create.form-grid-layout.units.js +1 -41
- package/dist/form/create.form-grid-layout.units.js.map +1 -1
- package/dist/form/create.input.file.js +1 -78
- package/dist/form/create.input.file.js.map +1 -1
- package/dist/form/create.input.js +1 -275
- package/dist/form/create.input.js.map +1 -1
- package/dist/form/create.select-simple.js +1 -113
- package/dist/form/create.select-simple.js.map +1 -1
- package/dist/form/create.select-with-api.js +1 -276
- package/dist/form/create.select-with-api.js.map +1 -1
- package/dist/form/create.text-editor.js +1 -180
- package/dist/form/create.text-editor.js.map +1 -1
- package/dist/form/dino-form.js +1 -40
- package/dist/form/dino-form.js.map +1 -1
- package/dist/form/helper.js +1 -156
- package/dist/form/helper.js.map +1 -1
- package/dist/form/modal-wrapper.js +1 -81
- package/dist/form/modal-wrapper.js.map +1 -1
- package/dist/form/validator.js +1 -189
- package/dist/form/validator.js.map +1 -1
- package/dist/hooks/index.js +1 -47
- package/dist/hooks/index.js.map +1 -1
- package/dist/index.js +1 -32
- package/dist/index.js.map +1 -1
- package/dist/redux/create.hoc-lazy.js +1 -70
- package/dist/redux/create.hoc-lazy.js.map +1 -1
- package/dist/redux/dino.js +1 -10
- package/dist/redux/dino.js.map +1 -1
- package/dist/redux/types.js +1 -8
- package/dist/redux/types.js.map +1 -1
- package/dist/redux/ui.error-page.js +1 -88
- package/dist/redux/ui.error-page.js.map +1 -1
- package/dist/redux/vector-404.webp.js +1 -3
- package/dist/redux/vector-404.webp.js.map +1 -1
- package/dist/table/context.js +1 -14
- package/dist/table/context.js.map +1 -1
- package/dist/table/create.action-row.js +1 -143
- package/dist/table/create.action-row.js.map +1 -1
- package/dist/table/create.table.js +1 -245
- package/dist/table/create.table.js.map +1 -1
- package/dist/table/custom.filter-operators.js +1 -88
- package/dist/table/custom.filter-operators.js.map +1 -1
- package/dist/table/dino.js +1 -135
- package/dist/table/dino.js.map +1 -1
- package/dist/table/helpers.js +1 -114
- package/dist/table/helpers.js.map +1 -1
- package/dist/table/model-filter.js +1 -22
- package/dist/table/model-filter.js.map +1 -1
- package/dist/table/toolbar-pannel.js +1 -142
- package/dist/table/toolbar-pannel.js.map +1 -1
- package/dist/table/ui.buttons.js +1 -66
- package/dist/table/ui.buttons.js.map +1 -1
- package/dist/table/ui.units.js +1 -247
- package/dist/table/ui.units.js.map +1 -1
- package/dist/table-grid/create.table-grid.js +2 -0
- package/dist/table-grid/create.table-grid.js.map +1 -0
- package/dist/table-grid/dino.js +2 -0
- package/dist/table-grid/dino.js.map +1 -0
- package/dist/table-grid/helpers.js +2 -0
- package/dist/table-grid/helpers.js.map +1 -0
- package/dist/table-grid/item-actions.js +2 -0
- package/dist/table-grid/item-actions.js.map +1 -0
- package/dist/table-grid/toolbar-pannel.js +2 -0
- package/dist/table-grid/toolbar-pannel.js.map +1 -0
- package/dist/types/{lab → components}/create.multi-select-dropdown.d.ts +5 -5
- package/dist/types/components/index.d.ts +2 -0
- package/dist/types/index.d.ts +1 -0
- package/dist/types/lab/{create.select-mul-with-api/index.d.ts → select-mul-with-api/create.select-mul-with-api.d.ts} +1 -1
- package/dist/types/lab/select-mul-with-api/index.d.ts +2 -0
- package/dist/types/lab/{create.select-mul-with-api → select-mul-with-api}/types.d.ts +1 -1
- package/dist/types/{lab/table-grid → table-grid}/item-actions.d.ts +1 -1
- package/dist/types/{lab/table-grid → table-grid}/toolbar-pannel.d.ts +1 -1
- package/dist/types/{lab/table-grid → table-grid}/types.d.ts +1 -1
- package/dist/utils/dayjs-config.js +1 -11
- package/dist/utils/dayjs-config.js.map +1 -1
- package/dist/utils/helpers.js +1 -198
- package/dist/utils/helpers.js.map +1 -1
- package/dist/utils/json-object.js +1 -37
- package/dist/utils/json-object.js.map +1 -1
- package/dist/utils/query-param.js +1 -171
- package/dist/utils/query-param.js.map +1 -1
- package/package.json +3 -8
- package/dist/index.d.ts +0 -928
- /package/dist/types/{lab/filter-bar → filter-bar}/base.d.ts +0 -0
- /package/dist/types/{lab/filter-bar → filter-bar}/create.filter-bar.d.ts +0 -0
- /package/dist/types/{lab/filter-bar → filter-bar}/create.filter-menu.d.ts +0 -0
- /package/dist/types/{lab/filter-bar → filter-bar}/create.filter-panel.d.ts +0 -0
- /package/dist/types/{lab/filter-bar → filter-bar}/create.filtered.d.ts +0 -0
- /package/dist/types/{lab/filter-bar → filter-bar}/create.sort-menu.d.ts +0 -0
- /package/dist/types/{lab/filter-bar → filter-bar}/demo.d.ts +0 -0
- /package/dist/types/{lab/filter-bar → filter-bar}/index.d.ts +0 -0
- /package/dist/types/{lab/filter-bar → filter-bar}/types.d.ts +0 -0
- /package/dist/types/{lab/filter-bar → filter-bar}/ui.units.d.ts +0 -0
- /package/dist/types/lab/{create.select-mul-with-api → select-mul-with-api}/table-custom.d.ts +0 -0
- /package/dist/types/lab/{create.select-mul-with-api → select-mul-with-api}/ui.units.d.ts +0 -0
- /package/dist/types/{lab/table-grid → table-grid}/create.table-grid.d.ts +0 -0
- /package/dist/types/{lab/table-grid → table-grid}/demo.d.ts +0 -0
- /package/dist/types/{lab/table-grid → table-grid}/dino.d.ts +0 -0
- /package/dist/types/{lab/table-grid → table-grid}/helpers.d.ts +0 -0
- /package/dist/types/{lab/table-grid → table-grid}/index.d.ts +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"alert-global.js","sources":["../../src/api-context/alert-global.tsx"],"sourcesContent":["import React, { FC, useCallback, useEffect, useState } from 'react'\r\nimport { Box, Stack, styled, Button, Dialog, DialogActions, DialogContent, DialogContentText, DialogTitle } from '@mui/material'\r\nimport MuiAlert, { AlertProps, AlertColor } from '@mui/material/Alert'\r\n\r\nconst Alert = React.forwardRef<HTMLDivElement, AlertProps>(function Alert(props, ref) {\r\n return <MuiAlert elevation={6} ref={ref} variant='standard' {...props} style={{ minWidth: '300px' }} />\r\n})\r\n\r\ninterface MessageData {\r\n id: string\r\n text: string\r\n type: AlertColor\r\n duration?: number\r\n}\r\n\r\ninterface IOptions {\r\n duration?: number\r\n}\r\n\r\ninterface IApiAlert {\r\n PushMessage: (data: MessageData) => void\r\n PushInfo: (data: string) => void\r\n PushError: (data: string) => void\r\n PushWarning: (data: string) => void\r\n PushSuccess: (data: string) => void\r\n}\r\n\r\nexport interface IApiContext {\r\n ApiAlert?: IApiAlert\r\n}\r\n\r\nexport const ApiAlertContext: IApiContext = {}\r\n\r\nconst RenderArea = (messages: MessageData[], onClose: (data: MessageData) => void) => {\r\n return messages.map((x, i) => {\r\n return <Message key={x.id + i} data={x} IsOpen={true} handleClose={onClose} autoDurationHide={x.duration} />\r\n })\r\n}\r\n\r\nfunction AlertGlobal() {\r\n const [Messages, setMessages] = useState<MessageData[]>([])\r\n const _PushMessage = useCallback((data: MessageData) => {\r\n setMessages((st) => [...st, data])\r\n }, [])\r\n const _HandleClose = useCallback(\r\n (data: MessageData) => {\r\n const index = Messages.findIndex((x) => x.id === data.id)\r\n Messages.splice(index, 1)\r\n setMessages([...Messages])\r\n },\r\n [Messages]\r\n )\r\n\r\n useEffect(() => {\r\n ApiAlertContext.ApiAlert = {\r\n ...(ApiAlertContext.ApiAlert ? ApiAlertContext.ApiAlert : {}),\r\n PushMessage: _PushMessage,\r\n PushError: function (data: string, options?: IOptions) {\r\n this.PushMessage({\r\n id: new Date().getTime().toString(),\r\n text: data,\r\n type: 'error',\r\n duration: options?.duration || 15000\r\n })\r\n },\r\n PushInfo: function (data: string, options?: IOptions) {\r\n this.PushMessage({\r\n id: new Date().getTime().toString(),\r\n text: data,\r\n type: 'info',\r\n duration: options?.duration || 6000\r\n })\r\n },\r\n PushWarning: function (data: string, options?: IOptions) {\r\n this.PushMessage({\r\n id: new Date().getTime().toString(),\r\n text: data,\r\n type: 'warning',\r\n duration: options?.duration || 6000\r\n })\r\n },\r\n PushSuccess: function (data: string, options?: IOptions) {\r\n this.PushMessage({\r\n id: new Date().getTime().toString(),\r\n text: data,\r\n type: 'success',\r\n duration: options?.duration || 3000\r\n })\r\n }\r\n }\r\n }, [_PushMessage])\r\n\r\n return (\r\n <Wrap>\r\n <Stack spacing={2} sx={{ maxWidth: '300px' }}>\r\n {RenderArea(Messages, _HandleClose)}\r\n </Stack>\r\n </Wrap>\r\n )\r\n}\r\nexport default AlertGlobal\r\n\r\ninterface MessageProps {\r\n IsOpen: boolean\r\n handleClose: (data: MessageData) => void\r\n data: MessageData\r\n autoDurationHide?: number\r\n}\r\nconst Message: FC<MessageProps> = (props) => {\r\n const _handleClose = useCallback(() => props.handleClose(props.data), [props])\r\n\r\n useEffect(() => {\r\n let Timer: any = null\r\n if (props.autoDurationHide) {\r\n Timer = setTimeout(() => {\r\n props.handleClose(props.data)\r\n }, props.autoDurationHide)\r\n }\r\n return () => {\r\n clearTimeout(Timer as any)\r\n }\r\n }, [props])\r\n return (\r\n <Alert onClose={_handleClose} severity={props.data.type}>\r\n {props.data.text}\r\n </Alert>\r\n )\r\n}\r\n\r\nconst Wrap = styled(Box)({\r\n position: 'fixed',\r\n top: 'calc(var(--height-header) + 20px)',\r\n right: '50px',\r\n zIndex: 2000,\r\n display: 'flex',\r\n justifyContent: 'flex-start',\r\n alignItems: 'center'\r\n})\r\n\r\ninterface AlertDialogProps {\r\n IsOpen: boolean\r\n onClose?: () => void\r\n onAccept?: () => void\r\n Title: string\r\n Message: string\r\n}\r\nexport const AlertDialog: React.FC<AlertDialogProps> = (props) => {\r\n const [Open, setOpen] = React.useState(props.IsOpen)\r\n React.useEffect(() => {\r\n setOpen(props.IsOpen)\r\n }, [props.IsOpen])\r\n const _handleClose = React.useCallback(() => {\r\n setOpen(false)\r\n props.onClose && props.onClose()\r\n }, [props])\r\n return (\r\n <div>\r\n <Dialog open={Open} onClose={_handleClose} aria-labelledby='alert-dialog-title' aria-describedby='alert-dialog-description'>\r\n <DialogTitle id='alert-dialog-title'>{props.Title}</DialogTitle>\r\n <DialogContent>\r\n <DialogContentText id='alert-dialog-description'>{props.Message}</DialogContentText>\r\n </DialogContent>\r\n <DialogActions>\r\n <Button onClick={props.onAccept} autoFocus color='info'>\r\n Ok\r\n </Button>\r\n <Button onClick={_handleClose} color='error'>\r\n Cancel\r\n </Button>\r\n </DialogActions>\r\n </Dialog>\r\n </div>\r\n )\r\n}\r\n"],"names":["Alert","React","forwardRef","props","ref","_jsx","MuiAlert","_objectSpread","elevation","variant","style","minWidth","ApiAlertContext","RenderArea","messages","onClose","map","x","i","Message","data","IsOpen","handleClose","autoDurationHide","duration","id","AlertGlobal","_useState","useState","_useState2","_slicedToArray","Messages","setMessages","_PushMessage","useCallback","st","concat","_toConsumableArray","_HandleClose","index","findIndex","splice","useEffect","ApiAlert","PushMessage","PushError","options","Date","getTime","toString","text","type","PushInfo","PushWarning","PushSuccess","Wrap","children","Stack","spacing","sx","maxWidth","_handleClose","Timer","setTimeout","clearTimeout","severity","styled","Box","position","top","right","zIndex","display","justifyContent","alignItems","AlertDialog","_React$useState","_React$useState2","Open","setOpen","_jsxs","Dialog","open","DialogTitle","Title","DialogContent","DialogContentText","DialogActions","Button","onClick","onAccept","autoFocus","color"],"mappings":";;;;;;AAIA,IAAMA,KAAK,gBAAGC,KAAK,CAACC,UAAU,CAA6B,SAASF,KAAKA,CAACG,KAAK,EAAEC,GAAG,EAAA;AAClF,EAAA,OAAOC,GAAA,CAACC,QAAQ,EAAAC,cAAA,CAAAA,cAAA,CAAA;AAACC,IAAAA,SAAS,EAAE,CAAC;AAAEJ,IAAAA,GAAG,EAAEA,GAAG;AAAEK,IAAAA,OAAO,EAAC;AAAU,GAAA,EAAKN,KAAK,CAAA,EAAA,EAAA,EAAA;AAAEO,IAAAA,KAAK,EAAE;AAAEC,MAAAA,QAAQ,EAAE;AAAS;AAAA,GAAA,CAAA,CAAI;AACzG,CAAC,CAAC;AAyBWC,IAAAA,eAAe,GAAgB;AAE5C,IAAMC,UAAU,GAAG,SAAbA,UAAUA,CAAIC,QAAuB,EAAEC,OAAoC,EAAI;EACnF,OAAOD,QAAQ,CAACE,GAAG,CAAC,UAACC,CAAC,EAAEC,CAAC,EAAI;IAC3B,OAAOb,GAAA,CAACc,OAAO,EAAA;AAAgBC,MAAAA,IAAI,EAAEH,CAAC;AAAEI,MAAAA,MAAM,EAAE,IAAI;AAAEC,MAAAA,WAAW,EAAEP,OAAO;MAAEQ,gBAAgB,EAAEN,CAAC,CAACO;AAAQ,KAAA,EAAnFP,CAAC,CAACQ,EAAE,GAAGP,CAAC,CAA+E;AAC9G,GAAC,CAAC;AACJ,CAAC;AAED,SAASQ,WAAWA,GAAA;AAClB,EAAA,IAAAC,SAAA,GAAgCC,QAAQ,CAAgB,EAAE,CAAC;IAAAC,UAAA,GAAAC,cAAA,CAAAH,SAAA,EAAA,CAAA,CAAA;AAApDI,IAAAA,QAAQ,GAAAF,UAAA,CAAA,CAAA,CAAA;AAAEG,IAAAA,WAAW,GAAAH,UAAA,CAAA,CAAA,CAAA;AAC5B,EAAA,IAAMI,YAAY,GAAGC,WAAW,CAAC,UAACd,IAAiB,EAAI;IACrDY,WAAW,CAAC,UAACG,EAAE,EAAA;AAAA,MAAA,OAAA,EAAA,CAAAC,MAAA,CAAAC,kBAAA,CAASF,EAAE,IAAEf,IAAI,CAAA,CAAA;AAAA,KAAC,CAAC;GACnC,EAAE,EAAE,CAAC;AACN,EAAA,IAAMkB,YAAY,GAAGJ,WAAW,CAC9B,UAACd,IAAiB,EAAI;AACpB,IAAA,IAAMmB,KAAK,GAAGR,QAAQ,CAACS,SAAS,CAAC,UAACvB,CAAC,EAAA;AAAA,MAAA,OAAKA,CAAC,CAACQ,EAAE,KAAKL,IAAI,CAACK,EAAE;KAAC,CAAA;AACzDM,IAAAA,QAAQ,CAACU,MAAM,CAACF,KAAK,EAAE,CAAC,CAAC;AACzBP,IAAAA,WAAW,CAAAK,kBAAA,CAAKN,QAAQ,CAAC,CAAC;AAC5B,GAAC,EACD,CAACA,QAAQ,CAAC,CACX;AAEDW,EAAAA,SAAS,CAAC,YAAK;AACb9B,IAAAA,eAAe,CAAC+B,QAAQ,GAAApC,cAAA,CAAAA,cAAA,CAClBK,EAAAA,EAAAA,eAAe,CAAC+B,QAAQ,GAAG/B,eAAe,CAAC+B,QAAQ,GAAG,EAAE,CAAA,EAAA,EAAA,EAAA;AAC5DC,MAAAA,WAAW,EAAEX,YAAY;AACzBY,MAAAA,SAAS,EAAE,SAAXA,SAASA,CAAYzB,IAAY,EAAE0B,OAAkB,EAAA;QACnD,IAAI,CAACF,WAAW,CAAC;AACfnB,UAAAA,EAAE,EAAE,IAAIsB,IAAI,EAAE,CAACC,OAAO,EAAE,CAACC,QAAQ,EAAE;AACnCC,UAAAA,IAAI,EAAE9B,IAAI;AACV+B,UAAAA,IAAI,EAAE,OAAO;UACb3B,QAAQ,EAAE,CAAAsB,OAAO,KAAA,IAAA,IAAPA,OAAO,KAAPA,MAAAA,GAAAA,MAAAA,GAAAA,OAAO,CAAEtB,QAAQ,KAAI;AAChC,SAAA,CAAC;OACH;AACD4B,MAAAA,QAAQ,EAAE,SAAVA,QAAQA,CAAYhC,IAAY,EAAE0B,OAAkB,EAAA;QAClD,IAAI,CAACF,WAAW,CAAC;AACfnB,UAAAA,EAAE,EAAE,IAAIsB,IAAI,EAAE,CAACC,OAAO,EAAE,CAACC,QAAQ,EAAE;AACnCC,UAAAA,IAAI,EAAE9B,IAAI;AACV+B,UAAAA,IAAI,EAAE,MAAM;UACZ3B,QAAQ,EAAE,CAAAsB,OAAO,KAAA,IAAA,IAAPA,OAAO,KAAPA,MAAAA,GAAAA,MAAAA,GAAAA,OAAO,CAAEtB,QAAQ,KAAI;AAChC,SAAA,CAAC;OACH;AACD6B,MAAAA,WAAW,EAAE,SAAbA,WAAWA,CAAYjC,IAAY,EAAE0B,OAAkB,EAAA;QACrD,IAAI,CAACF,WAAW,CAAC;AACfnB,UAAAA,EAAE,EAAE,IAAIsB,IAAI,EAAE,CAACC,OAAO,EAAE,CAACC,QAAQ,EAAE;AACnCC,UAAAA,IAAI,EAAE9B,IAAI;AACV+B,UAAAA,IAAI,EAAE,SAAS;UACf3B,QAAQ,EAAE,CAAAsB,OAAO,KAAA,IAAA,IAAPA,OAAO,KAAPA,MAAAA,GAAAA,MAAAA,GAAAA,OAAO,CAAEtB,QAAQ,KAAI;AAChC,SAAA,CAAC;OACH;AACD8B,MAAAA,WAAW,EAAE,SAAbA,WAAWA,CAAYlC,IAAY,EAAE0B,OAAkB,EAAA;QACrD,IAAI,CAACF,WAAW,CAAC;AACfnB,UAAAA,EAAE,EAAE,IAAIsB,IAAI,EAAE,CAACC,OAAO,EAAE,CAACC,QAAQ,EAAE;AACnCC,UAAAA,IAAI,EAAE9B,IAAI;AACV+B,UAAAA,IAAI,EAAE,SAAS;UACf3B,QAAQ,EAAE,CAAAsB,OAAO,KAAA,IAAA,IAAPA,OAAO,KAAPA,MAAAA,GAAAA,MAAAA,GAAAA,OAAO,CAAEtB,QAAQ,KAAI;AAChC,SAAA,CAAC;AACJ;KACD,CAAA;AACH,GAAC,EAAE,CAACS,YAAY,CAAC,CAAC;EAElB,OACE5B,GAAA,CAACkD,IAAI,EAAA;AAAAC,IAAAA,QAAA,EACHnD,GAAC,CAAAoD,KAAK,EAAC;AAAAC,MAAAA,OAAO,EAAE,CAAC;AAAEC,MAAAA,EAAE,EAAE;AAAEC,QAAAA,QAAQ,EAAE;OAAS;AACzCJ,MAAAA,QAAA,EAAA3C,UAAU,CAACkB,QAAQ,EAAEO,YAAY;KAAC;AAEhC,GAAA,CAAA;AAEX;AASA,IAAMnB,OAAO,GAAqB,SAA5BA,OAAOA,CAAsBhB,KAAK,EAAI;EAC1C,IAAM0D,YAAY,GAAG3B,WAAW,CAAC,YAAA;AAAA,IAAA,OAAM/B,KAAK,CAACmB,WAAW,CAACnB,KAAK,CAACiB,IAAI,CAAC;GAAE,EAAA,CAACjB,KAAK,CAAC,CAAC;AAE9EuC,EAAAA,SAAS,CAAC,YAAK;IACb,IAAIoB,KAAK,GAAQ,IAAI;IACrB,IAAI3D,KAAK,CAACoB,gBAAgB,EAAE;MAC1BuC,KAAK,GAAGC,UAAU,CAAC,YAAK;AACtB5D,QAAAA,KAAK,CAACmB,WAAW,CAACnB,KAAK,CAACiB,IAAI,CAAC;AAC/B,OAAC,EAAEjB,KAAK,CAACoB,gBAAgB,CAAC;AAC3B;AACD,IAAA,OAAO,YAAK;MACVyC,YAAY,CAACF,KAAY,CAAC;KAC3B;AACH,GAAC,EAAE,CAAC3D,KAAK,CAAC,CAAC;EACX,OACEE,IAACL,KAAK,EAAA;AAACe,IAAAA,OAAO,EAAE8C,YAAY;AAAEI,IAAAA,QAAQ,EAAE9D,KAAK,CAACiB,IAAI,CAAC+B,IAAI;AAAAK,IAAAA,QAAA,EACpDrD,KAAK,CAACiB,IAAI,CAAC8B;AACN,GAAA,CAAA;AAEZ,CAAC;AAED,IAAMK,IAAI,GAAGW,MAAM,CAACC,GAAG,CAAC,CAAC;AACvBC,EAAAA,QAAQ,EAAE,OAAO;AACjBC,EAAAA,GAAG,EAAE,mCAAmC;AACxCC,EAAAA,KAAK,EAAE,MAAM;AACbC,EAAAA,MAAM,EAAE,IAAI;AACZC,EAAAA,OAAO,EAAE,MAAM;AACfC,EAAAA,cAAc,EAAE,YAAY;AAC5BC,EAAAA,UAAU,EAAE;AACb,CAAA,CAAC;IASWC,WAAW,GAA+B,SAA1CA,WAAWA,CAAgCxE,KAAK,EAAI;EAC/D,IAAAyE,eAAA,GAAwB3E,KAAK,CAAC2B,QAAQ,CAACzB,KAAK,CAACkB,MAAM,CAAC;IAAAwD,gBAAA,GAAA/C,cAAA,CAAA8C,eAAA,EAAA,CAAA,CAAA;AAA7CE,IAAAA,IAAI,GAAAD,gBAAA,CAAA,CAAA,CAAA;AAAEE,IAAAA,OAAO,GAAAF,gBAAA,CAAA,CAAA,CAAA;EACpB5E,KAAK,CAACyC,SAAS,CAAC,YAAK;AACnBqC,IAAAA,OAAO,CAAC5E,KAAK,CAACkB,MAAM,CAAC;AACvB,GAAC,EAAE,CAAClB,KAAK,CAACkB,MAAM,CAAC,CAAC;AAClB,EAAA,IAAMwC,YAAY,GAAG5D,KAAK,CAACiC,WAAW,CAAC,YAAK;IAC1C6C,OAAO,CAAC,KAAK,CAAC;AACd5E,IAAAA,KAAK,CAACY,OAAO,IAAIZ,KAAK,CAACY,OAAO,EAAE;AAClC,GAAC,EAAE,CAACZ,KAAK,CAAC,CAAC;EACX,OACEE,GACE,CAAA,KAAA,EAAA;AAAAmD,IAAAA,QAAA,EAAAwB,IAAA,CAACC,MAAM,EAAA;AAACC,MAAAA,IAAI,EAAEJ,IAAI;AAAE/D,MAAAA,OAAO,EAAE8C,YAAY;AAAA,MAAA,iBAAA,EAAkB,oBAAoB;AAAA,MAAA,kBAAA,EAAkB,0BAA0B;AACzHL,MAAAA,QAAA,EAAA,CAAAnD,GAAA,CAAC8E,WAAW,EAAA;AAAC1D,QAAAA,EAAE,EAAC,oBAAoB;QAAE+B,QAAA,EAAArD,KAAK,CAACiF;AAAK,OAAA,CAAe,EAChE/E,GAAA,CAACgF,aAAa,EACZ;AAAA7B,QAAAA,QAAA,EAAAnD,GAAA,CAACiF,iBAAiB,EAAC;AAAA7D,UAAAA,EAAE,EAAC,0BAA0B;UAAA+B,QAAA,EAAErD,KAAK,CAACgB;SAA4B;AAAA,OAAA,CACtE,EAChB6D,IAAA,CAACO,aAAa,EACZ;AAAA/B,QAAAA,QAAA,EAAA,CAAAnD,GAAA,CAACmF,MAAM,EAAA;UAACC,OAAO,EAAEtF,KAAK,CAACuF,QAAQ;AAAEC,UAAAA,SAAS,EAAC,IAAA;AAAAC,UAAAA,KAAK,EAAC,MAAM;;UAE9C,EACTvF,GAAA,CAACmF,MAAM,EAAA;AAACC,UAAAA,OAAO,EAAE5B,YAAY;AAAE+B,UAAAA,KAAK,EAAC,OAAO;AAAApC,UAAAA,QAAA,EAAA;AAAA,SAAA,CAEnC;QACK;KACT;AAAA,GAAA,CACL;AAEV;;;;"}
|
|
1
|
+
{"version":3,"file":"alert-global.js","sources":["../../src/api-context/alert-global.tsx"],"sourcesContent":["import React, { FC, useCallback, useEffect, useState } from 'react'\r\nimport { Box, Stack, styled, Button, Dialog, DialogActions, DialogContent, DialogContentText, DialogTitle } from '@mui/material'\r\nimport MuiAlert, { AlertProps, AlertColor } from '@mui/material/Alert'\r\n\r\nconst Alert = React.forwardRef<HTMLDivElement, AlertProps>(function Alert(props, ref) {\r\n return <MuiAlert elevation={6} ref={ref} variant='standard' {...props} style={{ minWidth: '300px' }} />\r\n})\r\n\r\ninterface MessageData {\r\n id: string\r\n text: string\r\n type: AlertColor\r\n duration?: number\r\n}\r\n\r\ninterface IOptions {\r\n duration?: number\r\n}\r\n\r\ninterface IApiAlert {\r\n PushMessage: (data: MessageData) => void\r\n PushInfo: (data: string) => void\r\n PushError: (data: string) => void\r\n PushWarning: (data: string) => void\r\n PushSuccess: (data: string) => void\r\n}\r\n\r\nexport interface IApiContext {\r\n ApiAlert?: IApiAlert\r\n}\r\n\r\nexport const ApiAlertContext: IApiContext = {}\r\n\r\nconst RenderArea = (messages: MessageData[], onClose: (data: MessageData) => void) => {\r\n return messages.map((x, i) => {\r\n return <Message key={x.id + i} data={x} IsOpen={true} handleClose={onClose} autoDurationHide={x.duration} />\r\n })\r\n}\r\n\r\nfunction AlertGlobal() {\r\n const [Messages, setMessages] = useState<MessageData[]>([])\r\n const _PushMessage = useCallback((data: MessageData) => {\r\n setMessages((st) => [...st, data])\r\n }, [])\r\n const _HandleClose = useCallback(\r\n (data: MessageData) => {\r\n const index = Messages.findIndex((x) => x.id === data.id)\r\n Messages.splice(index, 1)\r\n setMessages([...Messages])\r\n },\r\n [Messages]\r\n )\r\n\r\n useEffect(() => {\r\n ApiAlertContext.ApiAlert = {\r\n ...(ApiAlertContext.ApiAlert ? ApiAlertContext.ApiAlert : {}),\r\n PushMessage: _PushMessage,\r\n PushError: function (data: string, options?: IOptions) {\r\n this.PushMessage({\r\n id: new Date().getTime().toString(),\r\n text: data,\r\n type: 'error',\r\n duration: options?.duration || 15000\r\n })\r\n },\r\n PushInfo: function (data: string, options?: IOptions) {\r\n this.PushMessage({\r\n id: new Date().getTime().toString(),\r\n text: data,\r\n type: 'info',\r\n duration: options?.duration || 6000\r\n })\r\n },\r\n PushWarning: function (data: string, options?: IOptions) {\r\n this.PushMessage({\r\n id: new Date().getTime().toString(),\r\n text: data,\r\n type: 'warning',\r\n duration: options?.duration || 6000\r\n })\r\n },\r\n PushSuccess: function (data: string, options?: IOptions) {\r\n this.PushMessage({\r\n id: new Date().getTime().toString(),\r\n text: data,\r\n type: 'success',\r\n duration: options?.duration || 3000\r\n })\r\n }\r\n }\r\n }, [_PushMessage])\r\n\r\n return (\r\n <Wrap>\r\n <Stack spacing={2} sx={{ maxWidth: '300px' }}>\r\n {RenderArea(Messages, _HandleClose)}\r\n </Stack>\r\n </Wrap>\r\n )\r\n}\r\nexport default AlertGlobal\r\n\r\ninterface MessageProps {\r\n IsOpen: boolean\r\n handleClose: (data: MessageData) => void\r\n data: MessageData\r\n autoDurationHide?: number\r\n}\r\nconst Message: FC<MessageProps> = (props) => {\r\n const _handleClose = useCallback(() => props.handleClose(props.data), [props])\r\n\r\n useEffect(() => {\r\n let Timer: any = null\r\n if (props.autoDurationHide) {\r\n Timer = setTimeout(() => {\r\n props.handleClose(props.data)\r\n }, props.autoDurationHide)\r\n }\r\n return () => {\r\n clearTimeout(Timer as any)\r\n }\r\n }, [props])\r\n return (\r\n <Alert onClose={_handleClose} severity={props.data.type}>\r\n {props.data.text}\r\n </Alert>\r\n )\r\n}\r\n\r\nconst Wrap = styled(Box)({\r\n position: 'fixed',\r\n top: 'calc(var(--height-header) + 20px)',\r\n right: '50px',\r\n zIndex: 2000,\r\n display: 'flex',\r\n justifyContent: 'flex-start',\r\n alignItems: 'center'\r\n})\r\n\r\ninterface AlertDialogProps {\r\n IsOpen: boolean\r\n onClose?: () => void\r\n onAccept?: () => void\r\n Title: string\r\n Message: string\r\n}\r\nexport const AlertDialog: React.FC<AlertDialogProps> = (props) => {\r\n const [Open, setOpen] = React.useState(props.IsOpen)\r\n React.useEffect(() => {\r\n setOpen(props.IsOpen)\r\n }, [props.IsOpen])\r\n const _handleClose = React.useCallback(() => {\r\n setOpen(false)\r\n props.onClose && props.onClose()\r\n }, [props])\r\n return (\r\n <div>\r\n <Dialog open={Open} onClose={_handleClose} aria-labelledby='alert-dialog-title' aria-describedby='alert-dialog-description'>\r\n <DialogTitle id='alert-dialog-title'>{props.Title}</DialogTitle>\r\n <DialogContent>\r\n <DialogContentText id='alert-dialog-description'>{props.Message}</DialogContentText>\r\n </DialogContent>\r\n <DialogActions>\r\n <Button onClick={props.onAccept} autoFocus color='info'>\r\n Ok\r\n </Button>\r\n <Button onClick={_handleClose} color='error'>\r\n Cancel\r\n </Button>\r\n </DialogActions>\r\n </Dialog>\r\n </div>\r\n )\r\n}\r\n"],"names":["Alert","React","forwardRef","props","ref","_jsx","MuiAlert","_objectSpread","elevation","variant","style","minWidth","ApiAlertContext","AlertGlobal","messages","onClose","_useState","useState","_useState2","_slicedToArray","Messages","setMessages","_PushMessage","useCallback","data","st","concat","_toConsumableArray","_HandleClose","index","findIndex","x","id","splice","useEffect","ApiAlert","PushMessage","PushError","options","this","Date","getTime","toString","text","type","duration","PushInfo","PushWarning","PushSuccess","Wrap","children","Stack","spacing","sx","maxWidth","map","i","Message","IsOpen","handleClose","autoDurationHide","_handleClose","Timer","setTimeout","clearTimeout","severity","styled","Box","position","top","right","zIndex","display","justifyContent","alignItems","AlertDialog","_React$useState","_React$useState2","Open","setOpen","_jsxs","Dialog","open","DialogTitle","Title","DialogContent","DialogContentText","DialogActions","Button","onClick","onAccept","autoFocus","color"],"mappings":"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"}
|
|
@@ -1,112 +1,2 @@
|
|
|
1
|
-
import
|
|
2
|
-
import { jsx, jsxs } from 'react/jsx-runtime';
|
|
3
|
-
import { Component } from 'react';
|
|
4
|
-
import { styled, Box, Drawer, IconButton, Divider, Typography } from '@mui/material';
|
|
5
|
-
import CloseIcon from '@mui/icons-material/Close';
|
|
6
|
-
|
|
7
|
-
var drawerGlobalClasses = {
|
|
8
|
-
root: 'DrawerGlobal-root',
|
|
9
|
-
title: 'DrawerGlobal-title',
|
|
10
|
-
content: 'DrawerGlobal-content',
|
|
11
|
-
fullHeight: 'DrawerGlobal-fullHeight'
|
|
12
|
-
};
|
|
13
|
-
var DrawerGlobalApi = {
|
|
14
|
-
close: function close() {
|
|
15
|
-
console.warn('DrawerGlobal provider not found!');
|
|
16
|
-
},
|
|
17
|
-
open: function open() {
|
|
18
|
-
console.warn('DrawerGlobal provider not found!');
|
|
19
|
-
}
|
|
20
|
-
};
|
|
21
|
-
var DrawerGlobalProvider = /*#__PURE__*/function (_Component) {
|
|
22
|
-
function DrawerGlobalProvider(props) {
|
|
23
|
-
var _this;
|
|
24
|
-
_classCallCheck(this, DrawerGlobalProvider);
|
|
25
|
-
_this = _callSuper(this, DrawerGlobalProvider, [props]);
|
|
26
|
-
_defineProperty(_this, "close", function (reason) {
|
|
27
|
-
if (_this.state.backdropClickeable === false && reason === 'backdropClick') return;
|
|
28
|
-
_this.setState({
|
|
29
|
-
renderContent: undefined
|
|
30
|
-
});
|
|
31
|
-
});
|
|
32
|
-
_defineProperty(_this, "open", function (state) {
|
|
33
|
-
return _this.setState(state);
|
|
34
|
-
});
|
|
35
|
-
_defineProperty(_this, "renderTitle", function () {
|
|
36
|
-
if (typeof _this.state.title === 'string') {
|
|
37
|
-
return jsx(Typography, {
|
|
38
|
-
variant: 'h6',
|
|
39
|
-
noWrap: true,
|
|
40
|
-
children: _this.state.title
|
|
41
|
-
});
|
|
42
|
-
}
|
|
43
|
-
return _this.state.title;
|
|
44
|
-
});
|
|
45
|
-
_defineProperty(_this, "getClasses", function () {
|
|
46
|
-
var classes = [drawerGlobalClasses.root];
|
|
47
|
-
if (_this.state.fullHeight) classes.push(drawerGlobalClasses.fullHeight);
|
|
48
|
-
return classes.join(' ');
|
|
49
|
-
});
|
|
50
|
-
_this.state = {};
|
|
51
|
-
return _this;
|
|
52
|
-
}
|
|
53
|
-
_inherits(DrawerGlobalProvider, _Component);
|
|
54
|
-
return _createClass(DrawerGlobalProvider, [{
|
|
55
|
-
key: "componentDidMount",
|
|
56
|
-
value: function componentDidMount() {
|
|
57
|
-
DrawerGlobalApi.open = this.open;
|
|
58
|
-
DrawerGlobalApi.close = this.close;
|
|
59
|
-
}
|
|
60
|
-
}, {
|
|
61
|
-
key: "render",
|
|
62
|
-
value: function render() {
|
|
63
|
-
var _this2 = this;
|
|
64
|
-
return jsx(Drawer, {
|
|
65
|
-
anchor: this.state.anchor,
|
|
66
|
-
open: Boolean(this.state.renderContent),
|
|
67
|
-
onClose: function onClose(_, reason) {
|
|
68
|
-
return _this2.close(reason);
|
|
69
|
-
},
|
|
70
|
-
children: jsxs(Wrap, {
|
|
71
|
-
className: this.getClasses(),
|
|
72
|
-
children: [jsxs("div", {
|
|
73
|
-
className: drawerGlobalClasses.title,
|
|
74
|
-
children: [this.state.icon, this.renderTitle(), jsx(Box, {
|
|
75
|
-
sx: {
|
|
76
|
-
flex: 1
|
|
77
|
-
}
|
|
78
|
-
}), jsx(IconButton, {
|
|
79
|
-
onClick: function onClick() {
|
|
80
|
-
return _this2.close();
|
|
81
|
-
},
|
|
82
|
-
children: jsx(CloseIcon, {})
|
|
83
|
-
})]
|
|
84
|
-
}), jsx(Divider, {
|
|
85
|
-
variant: 'middle'
|
|
86
|
-
}), jsx("div", {
|
|
87
|
-
className: drawerGlobalClasses.content,
|
|
88
|
-
children: this.state.renderContent && this.state.renderContent()
|
|
89
|
-
})]
|
|
90
|
-
})
|
|
91
|
-
});
|
|
92
|
-
}
|
|
93
|
-
}]);
|
|
94
|
-
}(Component);
|
|
95
|
-
var DrawerGlobal = {
|
|
96
|
-
Provider: DrawerGlobalProvider,
|
|
97
|
-
Api: DrawerGlobalApi
|
|
98
|
-
};
|
|
99
|
-
var Wrap = styled(Box)(_defineProperty(_defineProperty({
|
|
100
|
-
'--height-title': '56px'
|
|
101
|
-
}, ".".concat(drawerGlobalClasses.title), {
|
|
102
|
-
display: 'flex',
|
|
103
|
-
alignItems: 'center',
|
|
104
|
-
height: 'var(--height-title)',
|
|
105
|
-
padding: '0 12px',
|
|
106
|
-
gap: '6px'
|
|
107
|
-
}), "&.".concat(drawerGlobalClasses.fullHeight), _defineProperty({}, ".".concat(drawerGlobalClasses.content), {
|
|
108
|
-
height: 'calc(100vh - var(--height-title) - 60px)'
|
|
109
|
-
})));
|
|
110
|
-
|
|
111
|
-
export { DrawerGlobal as default };
|
|
1
|
+
import{defineProperty as e,inherits as t,createClass as r,classCallCheck as n,callSuper as a}from"../_virtual/_rollupPluginBabelHelpers.js";import{jsx as i,jsxs as o}from"react/jsx-runtime";import{Component as l}from"react";import{styled as s,Box as c,Drawer as h,IconButton as u,Divider as d,Typography as p}from"@mui/material";import f from"@mui/icons-material/Close";var m="DrawerGlobal-root",v="DrawerGlobal-title",g="DrawerGlobal-content",C="DrawerGlobal-fullHeight",b={close:function(){console.warn("DrawerGlobal provider not found!")},open:function(){console.warn("DrawerGlobal provider not found!")}},x={Provider:function(){function s(t){var r;return n(this,s),r=a(this,s,[t]),e(r,"close",(function(e){!1===r.state.backdropClickeable&&"backdropClick"===e||r.setState({renderContent:void 0})})),e(r,"open",(function(e){return r.setState(e)})),e(r,"renderTitle",(function(){return"string"==typeof r.state.title?i(p,{variant:"h6",noWrap:!0,children:r.state.title}):r.state.title})),e(r,"getClasses",(function(){var e=[m];return r.state.fullHeight&&e.push(C),e.join(" ")})),r.state={},r}return t(s,l),r(s,[{key:"componentDidMount",value:function(){b.open=this.open,b.close=this.close}},{key:"render",value:function(){var e=this;return i(h,{anchor:this.state.anchor,open:Boolean(this.state.renderContent),onClose:function(t,r){return e.close(r)},children:o(k,{className:this.getClasses(),children:[o("div",{className:v,children:[this.state.icon,this.renderTitle(),i(c,{sx:{flex:1}}),i(u,{onClick:function(){return e.close()},children:i(f,{})})]}),i(d,{variant:"middle"}),i("div",{className:g,children:this.state.renderContent&&this.state.renderContent()})]})})}}])}(),Api:b},k=s(c)(e(e({"--height-title":"56px"},".".concat(v),{display:"flex",alignItems:"center",height:"var(--height-title)",padding:"0 12px",gap:"6px"}),"&.".concat(C),e({},".".concat(g),{height:"calc(100vh - var(--height-title) - 60px)"})));export{x as default};
|
|
112
2
|
//# sourceMappingURL=drawer-global.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"drawer-global.js","sources":["../../src/api-context/drawer-global.tsx"],"sourcesContent":["import React, { Component, ReactNode } from 'react'\r\nimport { Box, Divider, Drawer, DrawerProps, IconButton, styled, Typography } from '@mui/material'\r\nimport CloseIcon from '@mui/icons-material/Close'\r\n\r\nconst drawerGlobalClasses = {\r\n root: 'DrawerGlobal-root',\r\n title: 'DrawerGlobal-title',\r\n content: 'DrawerGlobal-content',\r\n fullHeight: 'DrawerGlobal-fullHeight'\r\n}\r\n\r\ninterface IProps {}\r\n\r\ninterface IState {\r\n title?: ReactNode\r\n icon?: ReactNode\r\n fullHeight?: boolean\r\n anchor?: DrawerProps['anchor']\r\n /** @default true */\r\n backdropClickeable?: boolean\r\n renderContent?: () => ReactNode\r\n}\r\n\r\ntype TReason = 'backdropClick' | 'escapeKeyDown'\r\n\r\ninterface DrawerGlobalApiType {\r\n open: (state: IState) => void\r\n close: (reason?: TReason) => void\r\n}\r\n\r\nconst DrawerGlobalApi: DrawerGlobalApiType = {\r\n close: () => {\r\n console.warn('DrawerGlobal provider not found!')\r\n },\r\n open: () => {\r\n console.warn('DrawerGlobal provider not found!')\r\n }\r\n}\r\n\r\nclass DrawerGlobalProvider extends Component<IProps, IState> {\r\n constructor(props: IProps) {\r\n super(props)\r\n this.state = {}\r\n }\r\n\r\n close = (reason?: TReason) => {\r\n if (this.state.backdropClickeable === false && reason === 'backdropClick') return\r\n this.setState({ renderContent: undefined })\r\n }\r\n\r\n open = (state: IState) => this.setState(state)\r\n\r\n componentDidMount() {\r\n DrawerGlobalApi.open = this.open\r\n DrawerGlobalApi.close = this.close\r\n }\r\n\r\n render() {\r\n return (\r\n <Drawer anchor={this.state.anchor} open={Boolean(this.state.renderContent)} onClose={(_, reason) => this.close(reason)}>\r\n <Wrap className={this.getClasses()}>\r\n <div className={drawerGlobalClasses.title}>\r\n {this.state.icon}\r\n {this.renderTitle()}\r\n <Box sx={{ flex: 1 }} />\r\n <IconButton onClick={() => this.close()}>\r\n <CloseIcon />\r\n </IconButton>\r\n </div>\r\n <Divider variant='middle' />\r\n <div className={drawerGlobalClasses.content}>{this.state.renderContent && this.state.renderContent()}</div>\r\n </Wrap>\r\n </Drawer>\r\n )\r\n }\r\n\r\n renderTitle = () => {\r\n if (typeof this.state.title === 'string') {\r\n return (\r\n <Typography variant='h6' noWrap>\r\n {this.state.title}\r\n </Typography>\r\n )\r\n }\r\n return this.state.title\r\n }\r\n\r\n getClasses = () => {\r\n const classes = [drawerGlobalClasses.root]\r\n if (this.state.fullHeight) classes.push(drawerGlobalClasses.fullHeight)\r\n return classes.join(' ')\r\n }\r\n}\r\n\r\nconst DrawerGlobal = {\r\n Provider: DrawerGlobalProvider,\r\n Api: DrawerGlobalApi\r\n}\r\n\r\nexport default DrawerGlobal\r\n\r\nconst Wrap = styled(Box)({\r\n '--height-title': '56px',\r\n [`.${drawerGlobalClasses.title}`]: {\r\n display: 'flex',\r\n alignItems: 'center',\r\n height: 'var(--height-title)',\r\n padding: '0 12px',\r\n gap: '6px'\r\n },\r\n [`&.${drawerGlobalClasses.fullHeight}`]: {\r\n [`.${drawerGlobalClasses.content}`]: {\r\n height: 'calc(100vh - var(--height-title) - 60px)'\r\n }\r\n }\r\n})\r\n"],"names":["drawerGlobalClasses","
|
|
1
|
+
{"version":3,"file":"drawer-global.js","sources":["../../src/api-context/drawer-global.tsx"],"sourcesContent":["import React, { Component, ReactNode } from 'react'\r\nimport { Box, Divider, Drawer, DrawerProps, IconButton, styled, Typography } from '@mui/material'\r\nimport CloseIcon from '@mui/icons-material/Close'\r\n\r\nconst drawerGlobalClasses = {\r\n root: 'DrawerGlobal-root',\r\n title: 'DrawerGlobal-title',\r\n content: 'DrawerGlobal-content',\r\n fullHeight: 'DrawerGlobal-fullHeight'\r\n}\r\n\r\ninterface IProps {}\r\n\r\ninterface IState {\r\n title?: ReactNode\r\n icon?: ReactNode\r\n fullHeight?: boolean\r\n anchor?: DrawerProps['anchor']\r\n /** @default true */\r\n backdropClickeable?: boolean\r\n renderContent?: () => ReactNode\r\n}\r\n\r\ntype TReason = 'backdropClick' | 'escapeKeyDown'\r\n\r\ninterface DrawerGlobalApiType {\r\n open: (state: IState) => void\r\n close: (reason?: TReason) => void\r\n}\r\n\r\nconst DrawerGlobalApi: DrawerGlobalApiType = {\r\n close: () => {\r\n console.warn('DrawerGlobal provider not found!')\r\n },\r\n open: () => {\r\n console.warn('DrawerGlobal provider not found!')\r\n }\r\n}\r\n\r\nclass DrawerGlobalProvider extends Component<IProps, IState> {\r\n constructor(props: IProps) {\r\n super(props)\r\n this.state = {}\r\n }\r\n\r\n close = (reason?: TReason) => {\r\n if (this.state.backdropClickeable === false && reason === 'backdropClick') return\r\n this.setState({ renderContent: undefined })\r\n }\r\n\r\n open = (state: IState) => this.setState(state)\r\n\r\n componentDidMount() {\r\n DrawerGlobalApi.open = this.open\r\n DrawerGlobalApi.close = this.close\r\n }\r\n\r\n render() {\r\n return (\r\n <Drawer anchor={this.state.anchor} open={Boolean(this.state.renderContent)} onClose={(_, reason) => this.close(reason)}>\r\n <Wrap className={this.getClasses()}>\r\n <div className={drawerGlobalClasses.title}>\r\n {this.state.icon}\r\n {this.renderTitle()}\r\n <Box sx={{ flex: 1 }} />\r\n <IconButton onClick={() => this.close()}>\r\n <CloseIcon />\r\n </IconButton>\r\n </div>\r\n <Divider variant='middle' />\r\n <div className={drawerGlobalClasses.content}>{this.state.renderContent && this.state.renderContent()}</div>\r\n </Wrap>\r\n </Drawer>\r\n )\r\n }\r\n\r\n renderTitle = () => {\r\n if (typeof this.state.title === 'string') {\r\n return (\r\n <Typography variant='h6' noWrap>\r\n {this.state.title}\r\n </Typography>\r\n )\r\n }\r\n return this.state.title\r\n }\r\n\r\n getClasses = () => {\r\n const classes = [drawerGlobalClasses.root]\r\n if (this.state.fullHeight) classes.push(drawerGlobalClasses.fullHeight)\r\n return classes.join(' ')\r\n }\r\n}\r\n\r\nconst DrawerGlobal = {\r\n Provider: DrawerGlobalProvider,\r\n Api: DrawerGlobalApi\r\n}\r\n\r\nexport default DrawerGlobal\r\n\r\nconst Wrap = styled(Box)({\r\n '--height-title': '56px',\r\n [`.${drawerGlobalClasses.title}`]: {\r\n display: 'flex',\r\n alignItems: 'center',\r\n height: 'var(--height-title)',\r\n padding: '0 12px',\r\n gap: '6px'\r\n },\r\n [`&.${drawerGlobalClasses.fullHeight}`]: {\r\n [`.${drawerGlobalClasses.content}`]: {\r\n height: 'calc(100vh - var(--height-title) - 60px)'\r\n }\r\n }\r\n})\r\n"],"names":["drawerGlobalClasses","DrawerGlobalApi","close","console","warn","open","DrawerGlobal","Provider","DrawerGlobalProvider","props","_this","_classCallCheck","_callSuper","_defineProperty","reason","state","backdropClickeable","setState","renderContent","undefined","title","_jsx","Typography","variant","noWrap","children","classes","fullHeight","push","join","_inherits","Component","_createClass","key","value","this","_this2","Drawer","anchor","Boolean","onClose","_","_jsxs","Wrap","className","getClasses","icon","renderTitle","Box","sx","flex","IconButton","onClick","CloseIcon","Divider","Api","styled","concat","display","alignItems","height","padding","gap"],"mappings":"kXAIA,IAAMA,EACE,oBADFA,EAEG,qBAFHA,EAGK,uBAHLA,EAIQ,0BAsBRC,EAAuC,CAC3CC,MAAO,WACLC,QAAQC,KAAK,mCACd,EACDC,KAAM,WACJF,QAAQC,KAAK,mCACf,GA0DIE,EAAe,CACnBC,oBAvDA,SAAAC,EAAYC,GAAa,IAAAC,EAER,OAFQC,OAAAH,GACvBE,EAAAE,EAAAJ,KAAAA,GAAMC,IAAMI,EAAAH,EAIN,SAAA,SAACI,IAC+B,IAAlCJ,EAAKK,MAAMC,oBAA2C,kBAAXF,GAC/CJ,EAAKO,SAAS,CAAEC,mBAAeC,OAChCN,EAAAH,EAEM,QAAA,SAACK,GAAa,OAAKL,EAAKO,SAASF,EAAM,IAAAF,EAAAH,EAAA,eA0BhC,WACZ,MAAgC,iBAArBA,EAAKK,MAAMK,MAElBC,EAACC,EAAW,CAAAC,QAAQ,KAAKC,QAAM,EAAAC,SAC5Bf,EAAKK,MAAMK,QAIXV,EAAKK,MAAMK,SACnBP,EAAAH,EAAA,cAEY,WACX,IAAMgB,EAAU,CAAC1B,GAEjB,OADIU,EAAKK,MAAMY,YAAYD,EAAQE,KAAK5B,GACjC0B,EAAQG,KAAK,QAhDpBnB,EAAKK,MAAQ,CAAE,EAAAL,CACjB,CAAC,OAAAoB,EAAAtB,EAJgCuB,GAIhCC,EAAAxB,EAAA,CAAA,CAAAyB,IAAA,oBAAAC,MASD,WACEjC,EAAgBI,KAAO8B,KAAK9B,KAC5BJ,EAAgBC,MAAQiC,KAAKjC,KAC/B,GAAC,CAAA+B,IAAA,SAAAC,MAED,WAAM,IAAAE,EAAAD,KACJ,OACEd,EAACgB,EAAM,CAACC,OAAQH,KAAKpB,MAAMuB,OAAQjC,KAAMkC,QAAQJ,KAAKpB,MAAMG,eAAgBsB,QAAS,SAACC,EAAG3B,GAAM,OAAKsB,EAAKlC,MAAMY,EAAO,EAAAW,SACpHiB,EAACC,EAAK,CAAAC,UAAWT,KAAKU,aAAYpB,SAAA,CAChCiB,EAAK,MAAA,CAAAE,UAAW5C,EACbyB,SAAA,CAAAU,KAAKpB,MAAM+B,KACXX,KAAKY,cACN1B,EAAC2B,EAAG,CAACC,GAAI,CAAEC,KAAM,KACjB7B,EAAC8B,EAAU,CAACC,QAAS,WAAF,OAAQhB,EAAKlC,OAAO,EAAAuB,SACrCJ,EAACgC,WAGLhC,EAACiC,EAAO,CAAC/B,QAAQ,WACjBF,EAAA,MAAA,CAAKuB,UAAW5C,EAA8ByB,SAAAU,KAAKpB,MAAMG,eAAiBiB,KAAKpB,MAAMG,sBAI7F,IAAC,IAsBDqC,IAAKtD,GAKD0C,EAAOa,EAAOR,EAAPQ,CAAW3C,EAAAA,EAAA,CACtB,iBAAkB,QAAM,IAAA4C,OACnBzD,GAA8B,CACjC0D,QAAS,OACTC,WAAY,SACZC,OAAQ,sBACRC,QAAS,SACTC,IAAK,QACNL,KAAAA,OACKzD,GAA8Ba,EAAA,CAAA,EAAA,IAAA4C,OAC7BzD,GAAgC,CACnC4D,OAAQ"}
|
|
@@ -1,95 +1,2 @@
|
|
|
1
|
-
import
|
|
2
|
-
import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
|
|
3
|
-
import React, { Component } from 'react';
|
|
4
|
-
import { styled, Box, Modal, Backdrop } from '@mui/material';
|
|
5
|
-
|
|
6
|
-
var GlobalModalContext = /*#__PURE__*/React.createContext({
|
|
7
|
-
close: function close() {
|
|
8
|
-
console.warn('GlobalModal provider not found!');
|
|
9
|
-
},
|
|
10
|
-
show: function show() {
|
|
11
|
-
console.warn('GlobalModal provider not found!');
|
|
12
|
-
}
|
|
13
|
-
});
|
|
14
|
-
var MapGlobalModalContext = function MapGlobalModalContext(context) {
|
|
15
|
-
return jsx(GlobalModalContext.Consumer, {
|
|
16
|
-
children: context
|
|
17
|
-
});
|
|
18
|
-
};
|
|
19
|
-
var GlobalModal = /*#__PURE__*/function (_Component) {
|
|
20
|
-
function GlobalModal(props) {
|
|
21
|
-
var _this;
|
|
22
|
-
_classCallCheck(this, GlobalModal);
|
|
23
|
-
_this = _callSuper(this, GlobalModal, [props]);
|
|
24
|
-
_defineProperty(_this, "show", function (value) {
|
|
25
|
-
_this.setState(value);
|
|
26
|
-
});
|
|
27
|
-
_defineProperty(_this, "close", function (_, reason) {
|
|
28
|
-
if (reason === 'backdropClick' && _this.state.backdropActivated === false) return;
|
|
29
|
-
_this.setState({
|
|
30
|
-
renderContent: undefined
|
|
31
|
-
});
|
|
32
|
-
});
|
|
33
|
-
_defineProperty(_this, "renderContent", function () {
|
|
34
|
-
return _this.state.renderContent ? _this.state.renderContent() : jsx(Fragment, {});
|
|
35
|
-
});
|
|
36
|
-
_this.state = {};
|
|
37
|
-
return _this;
|
|
38
|
-
}
|
|
39
|
-
_inherits(GlobalModal, _Component);
|
|
40
|
-
return _createClass(GlobalModal, [{
|
|
41
|
-
key: "render",
|
|
42
|
-
value: function render() {
|
|
43
|
-
return jsxs(GlobalModalContext.Provider, {
|
|
44
|
-
value: this,
|
|
45
|
-
children: [this.props.children, jsx(Modal, {
|
|
46
|
-
open: !!this.state.renderContent,
|
|
47
|
-
onClose: this.close,
|
|
48
|
-
slots: {
|
|
49
|
-
backdrop: Backdrop
|
|
50
|
-
},
|
|
51
|
-
slotProps: {
|
|
52
|
-
backdrop: {
|
|
53
|
-
timeout: 300
|
|
54
|
-
}
|
|
55
|
-
},
|
|
56
|
-
sx: this.state.sx,
|
|
57
|
-
children: jsx(Wrapper, {
|
|
58
|
-
sx: this.state.sxWrap,
|
|
59
|
-
children: this.renderContent()
|
|
60
|
-
})
|
|
61
|
-
})]
|
|
62
|
-
});
|
|
63
|
-
}
|
|
64
|
-
}]);
|
|
65
|
-
}(Component);
|
|
66
|
-
var Wrapper = styled(Box)({
|
|
67
|
-
position: 'absolute',
|
|
68
|
-
top: '50%',
|
|
69
|
-
left: '50%',
|
|
70
|
-
transform: 'translate(-50%, -50%)',
|
|
71
|
-
outline: 'none'
|
|
72
|
-
});
|
|
73
|
-
var withApiGlobalModalContext = function withApiGlobalModalContext(Component) {
|
|
74
|
-
return function (props) {
|
|
75
|
-
return jsx(GlobalModal, {
|
|
76
|
-
children: MapGlobalModalContext(function (context) {
|
|
77
|
-
return jsx(Component, _objectSpread2(_objectSpread2({}, props), {}, {
|
|
78
|
-
contextGlobalModal: context
|
|
79
|
-
}));
|
|
80
|
-
})
|
|
81
|
-
});
|
|
82
|
-
};
|
|
83
|
-
};
|
|
84
|
-
var withApiGlobalModalConsumerContext = function withApiGlobalModalConsumerContext(Component) {
|
|
85
|
-
return function (props) {
|
|
86
|
-
return MapGlobalModalContext(function (context) {
|
|
87
|
-
return jsx(Component, _objectSpread2(_objectSpread2({}, props), {}, {
|
|
88
|
-
contextGlobalModal: context
|
|
89
|
-
}));
|
|
90
|
-
});
|
|
91
|
-
};
|
|
92
|
-
};
|
|
93
|
-
|
|
94
|
-
export { GlobalModalContext, MapGlobalModalContext, GlobalModal as default, withApiGlobalModalConsumerContext, withApiGlobalModalContext };
|
|
1
|
+
import{inherits as t,createClass as e,classCallCheck as n,callSuper as r,defineProperty as o,objectSpread2 as s}from"../_virtual/_rollupPluginBabelHelpers.js";import{jsx as a,jsxs as i,Fragment as l}from"react/jsx-runtime";import c,{Component as u}from"react";import{styled as d,Box as f,Modal as p,Backdrop as h}from"@mui/material";var m=c.createContext({close:function(){console.warn("GlobalModal provider not found!")},show:function(){console.warn("GlobalModal provider not found!")}}),C=function(t){return a(m.Consumer,{children:t})},b=function(){function s(t){var e;return n(this,s),e=r(this,s,[t]),o(e,"show",(function(t){e.setState(t)})),o(e,"close",(function(t,n){"backdropClick"===n&&!1===e.state.backdropActivated||e.setState({renderContent:void 0})})),o(e,"renderContent",(function(){return e.state.renderContent?e.state.renderContent():a(l,{})})),e.state={},e}return t(s,u),e(s,[{key:"render",value:function(){return i(m.Provider,{value:this,children:[this.props.children,a(p,{open:!!this.state.renderContent,onClose:this.close,slots:{backdrop:h},slotProps:{backdrop:{timeout:300}},sx:this.state.sx,children:a(v,{sx:this.state.sxWrap,children:this.renderContent()})})]})}}])}(),v=d(f)({position:"absolute",top:"50%",left:"50%",transform:"translate(-50%, -50%)",outline:"none"}),x=function(t){return function(e){return a(b,{children:C((function(n){return a(t,s(s({},e),{},{contextGlobalModal:n}))}))})}},k=function(t){return function(e){return C((function(n){return a(t,s(s({},e),{},{contextGlobalModal:n}))}))}};export{m as GlobalModalContext,C as MapGlobalModalContext,b as default,k as withApiGlobalModalConsumerContext,x as withApiGlobalModalContext};
|
|
95
2
|
//# sourceMappingURL=global-modal.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"global-modal.js","sources":["../../src/api-context/global-modal.tsx"],"sourcesContent":["import React, { Component } from 'react'\r\nimport { Backdrop, Box, Modal, SxProps, styled } from '@mui/material'\r\n\r\nexport interface GlobalModalState {\r\n sx?: SxProps\r\n sxWrap?: SxProps\r\n /** @default true */\r\n backdropActivated?: boolean\r\n onClose?: (reason?: TModalReason) => void\r\n renderContent?: () => React.ReactNode\r\n}\r\n\r\nexport type TModalReason = 'backdropClick' | 'escapeKeyDown'\r\n\r\ninterface GlobalModalProps {}\r\n\r\nexport type TShowModal = (value: GlobalModalState) => void\r\n\r\nexport type TCloseModal = (event?: {}, reason?: TModalReason) => void\r\n\r\nexport interface IGlobalModalContext {\r\n show: TShowModal\r\n close: TCloseModal\r\n}\r\n\r\nexport const GlobalModalContext = React.createContext<IGlobalModalContext>({\r\n close: () => {\r\n console.warn('GlobalModal provider not found!')\r\n },\r\n show: () => {\r\n console.warn('GlobalModal provider not found!')\r\n }\r\n})\r\n\r\nexport interface IMapGlobalModal {\r\n context: IGlobalModalContext\r\n}\r\n\r\nexport const MapGlobalModalContext = (context: (state: IGlobalModalContext) => React.ReactNode) => (\r\n <GlobalModalContext.Consumer>{context}</GlobalModalContext.Consumer>\r\n)\r\n\r\nclass GlobalModal extends Component<React.PropsWithChildren<GlobalModalProps>, GlobalModalState> implements IGlobalModalContext {\r\n constructor(props: any) {\r\n super(props)\r\n this.state = {}\r\n }\r\n\r\n show: TShowModal = (value) => {\r\n this.setState(value)\r\n }\r\n\r\n close: TCloseModal = (_, reason) => {\r\n if (reason === 'backdropClick' && this.state.backdropActivated === false) return\r\n this.setState({ renderContent: undefined })\r\n }\r\n\r\n render() {\r\n return (\r\n <GlobalModalContext.Provider value={this}>\r\n {this.props.children}\r\n <Modal\r\n open={!!this.state.renderContent}\r\n onClose={this.close}\r\n slots={{ backdrop: Backdrop }}\r\n slotProps={{ backdrop: { timeout: 300 } }}\r\n sx={this.state.sx}\r\n >\r\n <Wrapper sx={this.state.sxWrap}>{this.renderContent()}</Wrapper>\r\n </Modal>\r\n </GlobalModalContext.Provider>\r\n )\r\n }\r\n\r\n renderContent = (): React.ReactNode => {\r\n return this.state.renderContent ? this.state.renderContent() : <></>\r\n }\r\n}\r\nexport default GlobalModal\r\n\r\nconst Wrapper = styled(Box)({\r\n position: 'absolute',\r\n top: '50%',\r\n left: '50%',\r\n transform: 'translate(-50%, -50%)',\r\n outline: 'none'\r\n})\r\n\r\nexport interface IApiGlobalModalContextProps {\r\n contextGlobalModal: IGlobalModalContext\r\n}\r\n\r\nexport const withApiGlobalModalContext = <P extends IApiGlobalModalContextProps>(Component: React.ComponentType<P>) => {\r\n return (props: Omit<P, keyof IApiGlobalModalContextProps>) => {\r\n return (\r\n <GlobalModal>\r\n {MapGlobalModalContext((context) => (\r\n <Component {...(props as P)} contextGlobalModal={context} />\r\n ))}\r\n </GlobalModal>\r\n )\r\n }\r\n}\r\n\r\nexport const withApiGlobalModalConsumerContext = <P extends IApiGlobalModalContextProps>(Component: React.ComponentType<P>) => {\r\n return (props: Omit<P, keyof IApiGlobalModalContextProps>) => {\r\n return MapGlobalModalContext((context) => <Component {...(props as P)} contextGlobalModal={context} />)\r\n }\r\n}\r\n"],"names":["GlobalModalContext","React","createContext","close","console","warn","show","MapGlobalModalContext","context","_jsx","Consumer","GlobalModal","
|
|
1
|
+
{"version":3,"file":"global-modal.js","sources":["../../src/api-context/global-modal.tsx"],"sourcesContent":["import React, { Component } from 'react'\r\nimport { Backdrop, Box, Modal, SxProps, styled } from '@mui/material'\r\n\r\nexport interface GlobalModalState {\r\n sx?: SxProps\r\n sxWrap?: SxProps\r\n /** @default true */\r\n backdropActivated?: boolean\r\n onClose?: (reason?: TModalReason) => void\r\n renderContent?: () => React.ReactNode\r\n}\r\n\r\nexport type TModalReason = 'backdropClick' | 'escapeKeyDown'\r\n\r\ninterface GlobalModalProps {}\r\n\r\nexport type TShowModal = (value: GlobalModalState) => void\r\n\r\nexport type TCloseModal = (event?: {}, reason?: TModalReason) => void\r\n\r\nexport interface IGlobalModalContext {\r\n show: TShowModal\r\n close: TCloseModal\r\n}\r\n\r\nexport const GlobalModalContext = React.createContext<IGlobalModalContext>({\r\n close: () => {\r\n console.warn('GlobalModal provider not found!')\r\n },\r\n show: () => {\r\n console.warn('GlobalModal provider not found!')\r\n }\r\n})\r\n\r\nexport interface IMapGlobalModal {\r\n context: IGlobalModalContext\r\n}\r\n\r\nexport const MapGlobalModalContext = (context: (state: IGlobalModalContext) => React.ReactNode) => (\r\n <GlobalModalContext.Consumer>{context}</GlobalModalContext.Consumer>\r\n)\r\n\r\nclass GlobalModal extends Component<React.PropsWithChildren<GlobalModalProps>, GlobalModalState> implements IGlobalModalContext {\r\n constructor(props: any) {\r\n super(props)\r\n this.state = {}\r\n }\r\n\r\n show: TShowModal = (value) => {\r\n this.setState(value)\r\n }\r\n\r\n close: TCloseModal = (_, reason) => {\r\n if (reason === 'backdropClick' && this.state.backdropActivated === false) return\r\n this.setState({ renderContent: undefined })\r\n }\r\n\r\n render() {\r\n return (\r\n <GlobalModalContext.Provider value={this}>\r\n {this.props.children}\r\n <Modal\r\n open={!!this.state.renderContent}\r\n onClose={this.close}\r\n slots={{ backdrop: Backdrop }}\r\n slotProps={{ backdrop: { timeout: 300 } }}\r\n sx={this.state.sx}\r\n >\r\n <Wrapper sx={this.state.sxWrap}>{this.renderContent()}</Wrapper>\r\n </Modal>\r\n </GlobalModalContext.Provider>\r\n )\r\n }\r\n\r\n renderContent = (): React.ReactNode => {\r\n return this.state.renderContent ? this.state.renderContent() : <></>\r\n }\r\n}\r\nexport default GlobalModal\r\n\r\nconst Wrapper = styled(Box)({\r\n position: 'absolute',\r\n top: '50%',\r\n left: '50%',\r\n transform: 'translate(-50%, -50%)',\r\n outline: 'none'\r\n})\r\n\r\nexport interface IApiGlobalModalContextProps {\r\n contextGlobalModal: IGlobalModalContext\r\n}\r\n\r\nexport const withApiGlobalModalContext = <P extends IApiGlobalModalContextProps>(Component: React.ComponentType<P>) => {\r\n return (props: Omit<P, keyof IApiGlobalModalContextProps>) => {\r\n return (\r\n <GlobalModal>\r\n {MapGlobalModalContext((context) => (\r\n <Component {...(props as P)} contextGlobalModal={context} />\r\n ))}\r\n </GlobalModal>\r\n )\r\n }\r\n}\r\n\r\nexport const withApiGlobalModalConsumerContext = <P extends IApiGlobalModalContextProps>(Component: React.ComponentType<P>) => {\r\n return (props: Omit<P, keyof IApiGlobalModalContextProps>) => {\r\n return MapGlobalModalContext((context) => <Component {...(props as P)} contextGlobalModal={context} />)\r\n }\r\n}\r\n"],"names":["GlobalModalContext","React","createContext","close","console","warn","show","MapGlobalModalContext","context","_jsx","Consumer","GlobalModal","props","_this","_classCallCheck","_callSuper","_defineProperty","value","setState","_","reason","state","backdropActivated","renderContent","undefined","_inherits","Component","_createClass","key","_jsxs","Provider","this","children","Modal","open","onClose","slots","backdrop","Backdrop","slotProps","timeout","sx","Wrapper","sxWrap","styled","Box","position","top","left","transform","outline","withApiGlobalModalContext","_objectSpread","contextGlobalModal","withApiGlobalModalConsumerContext"],"mappings":"iVAyBaA,EAAqBC,EAAMC,cAAmC,CACzEC,MAAO,WACLC,QAAQC,KAAK,kCACd,EACDC,KAAM,WACJF,QAAQC,KAAK,kCACf,IAOWE,EAAwB,SAACC,GAAwD,OAC5FC,EAACT,EAAmBU,mBAAUF,GAAsC,EAGhEG,aACJ,SAAAA,EAAYC,GAAU,IAAAC,EAEL,OAFKC,OAAAH,GACpBE,EAAAE,EAAAJ,KAAAA,GAAMC,IAAMI,EAAAH,EAIK,QAAA,SAACI,GAClBJ,EAAKK,SAASD,MACfD,EAAAH,EAAA,SAEoB,SAACM,EAAGC,GACR,kBAAXA,IAA+D,IAAjCP,EAAKQ,MAAMC,mBAC7CT,EAAKK,SAAS,CAAEK,mBAAeC,OAChCR,EAAAH,EAAA,iBAmBe,WACd,OAAOA,EAAKQ,MAAME,cAAgBV,EAAKQ,MAAME,gBAAkBd,WA9B/DI,EAAKQ,MAAQ,CAAE,EAAAR,CACjB,CAAC,OAAAY,EAAAd,EAJuBe,GAIvBC,EAAAhB,EAAA,CAAA,CAAAiB,IAAA,SAAAX,MAWD,WACE,OACEY,EAAC7B,EAAmB8B,UAASb,MAAOc,KAAIC,SAAA,CACrCD,KAAKnB,MAAMoB,SACZvB,EAACwB,EAAK,CACJC,OAAQH,KAAKV,MAAME,cACnBY,QAASJ,KAAK5B,MACdiC,MAAO,CAAEC,SAAUC,GACnBC,UAAW,CAAEF,SAAU,CAAEG,QAAS,MAClCC,GAAIV,KAAKV,MAAMoB,GAEfT,SAAAvB,EAACiC,EAAQ,CAAAD,GAAIV,KAAKV,MAAMsB,OAASX,SAAAD,KAAKR,sBAI9C,IAAC,IAQGmB,EAAUE,EAAOC,EAAPD,CAAY,CAC1BE,SAAU,WACVC,IAAK,MACLC,KAAM,MACNC,UAAW,wBACXC,QAAS,SAOEC,EAA4B,SAAwCzB,GAC/E,OAAO,SAACd,GACN,OACEH,EAACE,EACE,CAAAqB,SAAAzB,GAAsB,SAACC,GAAO,OAC7BC,EAACiB,EAAS0B,EAAAA,KAAMxC,GAAW,GAAA,CAAEyC,mBAAoB7C,IAClD,KAGN,CACH,EAEa8C,EAAoC,SAAwC5B,GACvF,OAAO,SAACd,GACN,OAAOL,GAAsB,SAACC,GAAO,OAAKC,EAACiB,EAAS0B,EAAAA,KAAMxC,GAAW,GAAA,CAAEyC,mBAAoB7C,OAC5F,CACH"}
|
|
@@ -1,110 +1,2 @@
|
|
|
1
|
-
import
|
|
2
|
-
import { jsx, jsxs } from 'react/jsx-runtime';
|
|
3
|
-
import React, { Component } from 'react';
|
|
4
|
-
import { Popover } from '@mui/material';
|
|
5
|
-
import { ContentDefault } from './ui.units.js';
|
|
6
|
-
|
|
7
|
-
var PopoverGlobalApi = {
|
|
8
|
-
open: function open() {
|
|
9
|
-
console.warn('PopoverGlobal provider not found!');
|
|
10
|
-
},
|
|
11
|
-
close: function close() {
|
|
12
|
-
console.warn('PopoverGlobal provider not found!');
|
|
13
|
-
}
|
|
14
|
-
};
|
|
15
|
-
var PopoverGlobalContext = /*#__PURE__*/React.createContext(PopoverGlobalApi);
|
|
16
|
-
var MapPopoverGlobalContext = function MapPopoverGlobalContext(context) {
|
|
17
|
-
return jsx(PopoverGlobalContext.Consumer, {
|
|
18
|
-
children: context
|
|
19
|
-
});
|
|
20
|
-
};
|
|
21
|
-
var PopoverGlobalProvider = /*#__PURE__*/function (_Component) {
|
|
22
|
-
function PopoverGlobalProvider(props) {
|
|
23
|
-
var _this;
|
|
24
|
-
_classCallCheck(this, PopoverGlobalProvider);
|
|
25
|
-
_this = _callSuper(this, PopoverGlobalProvider, [props]);
|
|
26
|
-
_defineProperty(_this, "openPopover", function (option) {
|
|
27
|
-
clearTimeout(_this.timer);
|
|
28
|
-
_this.setState(_objectSpread2({}, option));
|
|
29
|
-
});
|
|
30
|
-
_defineProperty(_this, "closePopover", function () {
|
|
31
|
-
clearTimeout(_this.timer);
|
|
32
|
-
_this.setState({
|
|
33
|
-
anchorEl: null
|
|
34
|
-
}, function () {
|
|
35
|
-
_this.timer = setTimeout(function () {
|
|
36
|
-
_this.setState({
|
|
37
|
-
content: jsx(ContentDefault, {})
|
|
38
|
-
});
|
|
39
|
-
}, 500);
|
|
40
|
-
});
|
|
41
|
-
});
|
|
42
|
-
_this.state = {
|
|
43
|
-
anchorEl: null,
|
|
44
|
-
content: jsx(ContentDefault, {})
|
|
45
|
-
};
|
|
46
|
-
return _this;
|
|
47
|
-
}
|
|
48
|
-
_inherits(PopoverGlobalProvider, _Component);
|
|
49
|
-
return _createClass(PopoverGlobalProvider, [{
|
|
50
|
-
key: "componentDidMount",
|
|
51
|
-
value: function componentDidMount() {
|
|
52
|
-
PopoverGlobalApi.open = this.openPopover;
|
|
53
|
-
PopoverGlobalApi.close = this.closePopover;
|
|
54
|
-
}
|
|
55
|
-
}, {
|
|
56
|
-
key: "render",
|
|
57
|
-
value: function render() {
|
|
58
|
-
var _this2 = this;
|
|
59
|
-
return jsxs(PopoverGlobalContext.Provider, {
|
|
60
|
-
value: {
|
|
61
|
-
open: this.openPopover,
|
|
62
|
-
close: this.closePopover
|
|
63
|
-
},
|
|
64
|
-
children: [this.props.children, jsx(Popover, _objectSpread2(_objectSpread2({
|
|
65
|
-
sx: {
|
|
66
|
-
'& .MuiPaper-root.MuiPaper-elevation': {
|
|
67
|
-
overflow: 'hidden'
|
|
68
|
-
}
|
|
69
|
-
},
|
|
70
|
-
anchorEl: this.state.anchorEl,
|
|
71
|
-
open: Boolean(this.state.anchorEl),
|
|
72
|
-
onClose: function onClose(_, reason) {
|
|
73
|
-
return _this2.closePopover(reason);
|
|
74
|
-
},
|
|
75
|
-
anchorOrigin: {
|
|
76
|
-
vertical: 'bottom',
|
|
77
|
-
horizontal: 'right'
|
|
78
|
-
},
|
|
79
|
-
transformOrigin: {
|
|
80
|
-
vertical: 'top',
|
|
81
|
-
horizontal: 'right'
|
|
82
|
-
},
|
|
83
|
-
disableScrollLock: true
|
|
84
|
-
}, this.state.popoverProps), {}, {
|
|
85
|
-
children: this.state.content
|
|
86
|
-
}))]
|
|
87
|
-
});
|
|
88
|
-
}
|
|
89
|
-
}]);
|
|
90
|
-
}(Component);
|
|
91
|
-
var withPopoverGlobalContext = function withPopoverGlobalContext(Component) {
|
|
92
|
-
return function (props) {
|
|
93
|
-
return jsx(PopoverGlobalProvider, {
|
|
94
|
-
children: MapPopoverGlobalContext(function (context) {
|
|
95
|
-
return jsx(Component, _objectSpread2(_objectSpread2({}, props), {}, {
|
|
96
|
-
contextPopover: context
|
|
97
|
-
}));
|
|
98
|
-
})
|
|
99
|
-
});
|
|
100
|
-
};
|
|
101
|
-
};
|
|
102
|
-
var PopoverGlobal = {
|
|
103
|
-
Provider: PopoverGlobalProvider,
|
|
104
|
-
Api: PopoverGlobalApi,
|
|
105
|
-
Context: PopoverGlobalContext,
|
|
106
|
-
mapContext: MapPopoverGlobalContext
|
|
107
|
-
};
|
|
108
|
-
|
|
109
|
-
export { MapPopoverGlobalContext, PopoverGlobalApi, PopoverGlobalContext, PopoverGlobalProvider, PopoverGlobal as default, withPopoverGlobalContext };
|
|
1
|
+
import{inherits as o,createClass as e,objectSpread2 as t,classCallCheck as r,callSuper as n,defineProperty as i}from"../_virtual/_rollupPluginBabelHelpers.js";import{jsxs as a,jsx as l}from"react/jsx-runtime";import c,{Component as s}from"react";import{Popover as u}from"@mui/material";import{ContentDefault as p}from"./ui.units.js";var h={open:function(){console.warn("PopoverGlobal provider not found!")},close:function(){console.warn("PopoverGlobal provider not found!")}},f=c.createContext(h),v=function(o){return l(f.Consumer,{children:o})},m=function(){function c(o){var e;return r(this,c),e=n(this,c,[o]),i(e,"openPopover",(function(o){clearTimeout(e.timer),e.setState(t({},o))})),i(e,"closePopover",(function(){clearTimeout(e.timer),e.setState({anchorEl:null},(function(){e.timer=setTimeout((function(){e.setState({content:l(p,{})})}),500)}))})),e.state={anchorEl:null,content:l(p,{})},e}return o(c,s),e(c,[{key:"componentDidMount",value:function(){h.open=this.openPopover,h.close=this.closePopover}},{key:"render",value:function(){var o=this;return a(f.Provider,{value:{open:this.openPopover,close:this.closePopover},children:[this.props.children,l(u,t(t({sx:{"& .MuiPaper-root.MuiPaper-elevation":{overflow:"hidden"}},anchorEl:this.state.anchorEl,open:Boolean(this.state.anchorEl),onClose:function(e,t){return o.closePopover(t)},anchorOrigin:{vertical:"bottom",horizontal:"right"},transformOrigin:{vertical:"top",horizontal:"right"},disableScrollLock:!0},this.state.popoverProps),{},{children:this.state.content}))]})}}])}(),d=function(o){return function(e){return l(m,{children:v((function(r){return l(o,t(t({},e),{},{contextPopover:r}))}))})}},P={Provider:m,Api:h,Context:f,mapContext:v};export{v as MapPopoverGlobalContext,h as PopoverGlobalApi,f as PopoverGlobalContext,m as PopoverGlobalProvider,P as default,d as withPopoverGlobalContext};
|
|
110
2
|
//# sourceMappingURL=popover-global.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"popover-global.js","sources":["../../src/api-context/popover-global.tsx"],"sourcesContent":["import React, { Component, PropsWithChildren } from 'react'\r\nimport { Popover, PopoverProps, PopoverVirtualElement } from '@mui/material'\r\nimport { ContentDefault } from './ui.units'\r\n\r\nexport interface PopoverGlobalState {\r\n anchorEl?: Element | (() => Element) | PopoverVirtualElement | (() => PopoverVirtualElement) | null\r\n popoverProps?: Omit<PopoverProps, 'open'>\r\n content: React.ReactNode\r\n}\r\n\r\nexport type OpenPopover = (value: PopoverGlobalState) => void\r\n\r\nexport type ClosePopover = (reason?: 'backdropClick' | 'escapeKeyDown') => void\r\n\r\nexport interface PopoverGlobalContext {\r\n open: OpenPopover\r\n close: ClosePopover\r\n}\r\n\r\nexport const PopoverGlobalApi: PopoverGlobalContext = {\r\n open: () => {\r\n console.warn('PopoverGlobal provider not found!')\r\n },\r\n close: () => {\r\n console.warn('PopoverGlobal provider not found!')\r\n }\r\n}\r\n\r\nexport const PopoverGlobalContext = React.createContext<PopoverGlobalContext>(PopoverGlobalApi)\r\n\r\nexport const MapPopoverGlobalContext = (context: (state: PopoverGlobalContext) => React.ReactNode) => (\r\n <PopoverGlobalContext.Consumer>{context}</PopoverGlobalContext.Consumer>\r\n)\r\n\r\ninterface IProps extends PropsWithChildren {}\r\n\r\nexport class PopoverGlobalProvider extends Component<IProps, PopoverGlobalState> {\r\n constructor(props: any) {\r\n super(props)\r\n this.state = { anchorEl: null, content: <ContentDefault /> }\r\n }\r\n\r\n componentDidMount() {\r\n PopoverGlobalApi.open = this.openPopover\r\n PopoverGlobalApi.close = this.closePopover\r\n }\r\n\r\n render() {\r\n return (\r\n <PopoverGlobalContext.Provider value={{ open: this.openPopover, close: this.closePopover }}>\r\n {this.props.children}\r\n <Popover\r\n sx={{ '& .MuiPaper-root.MuiPaper-elevation': { overflow: 'hidden' } }}\r\n anchorEl={this.state.anchorEl}\r\n open={Boolean(this.state.anchorEl)}\r\n onClose={(_, reason) => this.closePopover(reason)}\r\n anchorOrigin={{ vertical: 'bottom', horizontal: 'right' }}\r\n transformOrigin={{ vertical: 'top', horizontal: 'right' }}\r\n disableScrollLock\r\n {...this.state.popoverProps}\r\n >\r\n {this.state.content}\r\n </Popover>\r\n </PopoverGlobalContext.Provider>\r\n )\r\n }\r\n\r\n openPopover: OpenPopover = (option) => {\r\n clearTimeout(this.timer)\r\n this.setState({ ...option })\r\n }\r\n\r\n timer: any\r\n closePopover: ClosePopover = () => {\r\n clearTimeout(this.timer)\r\n this.setState({ anchorEl: null }, () => {\r\n this.timer = setTimeout(() => {\r\n this.setState({ content: <ContentDefault /> })\r\n }, 500)\r\n })\r\n }\r\n}\r\n\r\nexport interface IPopoverGlobalContextProps {\r\n contextPopover: PopoverGlobalContext\r\n}\r\n\r\nexport const withPopoverGlobalContext = <P extends IPopoverGlobalContextProps>(Component: React.ComponentType<P>) => {\r\n return (props: Omit<P, keyof IPopoverGlobalContextProps>) => {\r\n return (\r\n <PopoverGlobalProvider>\r\n {MapPopoverGlobalContext((context) => (\r\n <Component {...(props as P)} contextPopover={context} />\r\n ))}\r\n </PopoverGlobalProvider>\r\n )\r\n }\r\n}\r\n\r\nconst PopoverGlobal = {\r\n Provider: PopoverGlobalProvider,\r\n Api: PopoverGlobalApi,\r\n Context: PopoverGlobalContext,\r\n mapContext: MapPopoverGlobalContext\r\n}\r\n\r\nexport default PopoverGlobal\r\n"],"names":["PopoverGlobalApi","open","console","warn","close","PopoverGlobalContext","React","createContext","MapPopoverGlobalContext","context","_jsx","Consumer","PopoverGlobalProvider","
|
|
1
|
+
{"version":3,"file":"popover-global.js","sources":["../../src/api-context/popover-global.tsx"],"sourcesContent":["import React, { Component, PropsWithChildren } from 'react'\r\nimport { Popover, PopoverProps, PopoverVirtualElement } from '@mui/material'\r\nimport { ContentDefault } from './ui.units'\r\n\r\nexport interface PopoverGlobalState {\r\n anchorEl?: Element | (() => Element) | PopoverVirtualElement | (() => PopoverVirtualElement) | null\r\n popoverProps?: Omit<PopoverProps, 'open'>\r\n content: React.ReactNode\r\n}\r\n\r\nexport type OpenPopover = (value: PopoverGlobalState) => void\r\n\r\nexport type ClosePopover = (reason?: 'backdropClick' | 'escapeKeyDown') => void\r\n\r\nexport interface PopoverGlobalContext {\r\n open: OpenPopover\r\n close: ClosePopover\r\n}\r\n\r\nexport const PopoverGlobalApi: PopoverGlobalContext = {\r\n open: () => {\r\n console.warn('PopoverGlobal provider not found!')\r\n },\r\n close: () => {\r\n console.warn('PopoverGlobal provider not found!')\r\n }\r\n}\r\n\r\nexport const PopoverGlobalContext = React.createContext<PopoverGlobalContext>(PopoverGlobalApi)\r\n\r\nexport const MapPopoverGlobalContext = (context: (state: PopoverGlobalContext) => React.ReactNode) => (\r\n <PopoverGlobalContext.Consumer>{context}</PopoverGlobalContext.Consumer>\r\n)\r\n\r\ninterface IProps extends PropsWithChildren {}\r\n\r\nexport class PopoverGlobalProvider extends Component<IProps, PopoverGlobalState> {\r\n constructor(props: any) {\r\n super(props)\r\n this.state = { anchorEl: null, content: <ContentDefault /> }\r\n }\r\n\r\n componentDidMount() {\r\n PopoverGlobalApi.open = this.openPopover\r\n PopoverGlobalApi.close = this.closePopover\r\n }\r\n\r\n render() {\r\n return (\r\n <PopoverGlobalContext.Provider value={{ open: this.openPopover, close: this.closePopover }}>\r\n {this.props.children}\r\n <Popover\r\n sx={{ '& .MuiPaper-root.MuiPaper-elevation': { overflow: 'hidden' } }}\r\n anchorEl={this.state.anchorEl}\r\n open={Boolean(this.state.anchorEl)}\r\n onClose={(_, reason) => this.closePopover(reason)}\r\n anchorOrigin={{ vertical: 'bottom', horizontal: 'right' }}\r\n transformOrigin={{ vertical: 'top', horizontal: 'right' }}\r\n disableScrollLock\r\n {...this.state.popoverProps}\r\n >\r\n {this.state.content}\r\n </Popover>\r\n </PopoverGlobalContext.Provider>\r\n )\r\n }\r\n\r\n openPopover: OpenPopover = (option) => {\r\n clearTimeout(this.timer)\r\n this.setState({ ...option })\r\n }\r\n\r\n timer: any\r\n closePopover: ClosePopover = () => {\r\n clearTimeout(this.timer)\r\n this.setState({ anchorEl: null }, () => {\r\n this.timer = setTimeout(() => {\r\n this.setState({ content: <ContentDefault /> })\r\n }, 500)\r\n })\r\n }\r\n}\r\n\r\nexport interface IPopoverGlobalContextProps {\r\n contextPopover: PopoverGlobalContext\r\n}\r\n\r\nexport const withPopoverGlobalContext = <P extends IPopoverGlobalContextProps>(Component: React.ComponentType<P>) => {\r\n return (props: Omit<P, keyof IPopoverGlobalContextProps>) => {\r\n return (\r\n <PopoverGlobalProvider>\r\n {MapPopoverGlobalContext((context) => (\r\n <Component {...(props as P)} contextPopover={context} />\r\n ))}\r\n </PopoverGlobalProvider>\r\n )\r\n }\r\n}\r\n\r\nconst PopoverGlobal = {\r\n Provider: PopoverGlobalProvider,\r\n Api: PopoverGlobalApi,\r\n Context: PopoverGlobalContext,\r\n mapContext: MapPopoverGlobalContext\r\n}\r\n\r\nexport default PopoverGlobal\r\n"],"names":["PopoverGlobalApi","open","console","warn","close","PopoverGlobalContext","React","createContext","MapPopoverGlobalContext","context","_jsx","Consumer","PopoverGlobalProvider","props","_this","_classCallCheck","_callSuper","_defineProperty","option","clearTimeout","timer","setState","_objectSpread","anchorEl","setTimeout","content","ContentDefault","state","_inherits","Component","_createClass","key","value","this","openPopover","closePopover","_this2","_jsxs","Provider","children","Popover","sx","overflow","Boolean","onClose","_","reason","anchorOrigin","vertical","horizontal","transformOrigin","disableScrollLock","popoverProps","withPopoverGlobalContext","contextPopover","PopoverGlobal","Api","Context","mapContext"],"mappings":"6UAmBO,IAAMA,EAAyC,CACpDC,KAAM,WACJC,QAAQC,KAAK,oCACd,EACDC,MAAO,WACLF,QAAQC,KAAK,oCACf,GAGWE,EAAuBC,EAAMC,cAAoCP,GAEjEQ,EAA0B,SAACC,GAAyD,OAC/FC,EAACL,EAAqBM,mBAAUF,GAAwC,EAK7DG,aACX,SAAAA,EAAYC,GAAU,IAAAC,EAEwC,OAFxCC,OAAAH,GACpBE,EAAAE,EAAAJ,KAAAA,GAAMC,IAAMI,EAAAH,EA6Ba,eAAA,SAACI,GAC1BC,aAAaL,EAAKM,OAClBN,EAAKO,SAAQC,EAAMJ,CAAAA,EAAAA,OACpBD,EAAAH,EAAA,gBAG4B,WAC3BK,aAAaL,EAAKM,OAClBN,EAAKO,SAAS,CAAEE,SAAU,OAAQ,WAChCT,EAAKM,MAAQI,YAAW,WACtBV,EAAKO,SAAS,CAAEI,QAASf,EAACgB,EAAc,CAAA,IACzC,GAAE,IACL,OAxCAZ,EAAKa,MAAQ,CAAEJ,SAAU,KAAME,QAASf,EAACgB,EAAc,CAAA,IAAKZ,CAC9D,CAAC,OAAAc,EAAAhB,EAJwCiB,GAIxCC,EAAAlB,EAAA,CAAA,CAAAmB,IAAA,oBAAAC,MAED,WACEhC,EAAiBC,KAAOgC,KAAKC,YAC7BlC,EAAiBI,MAAQ6B,KAAKE,YAChC,GAAC,CAAAJ,IAAA,SAAAC,MAED,WAAM,IAAAI,EAAAH,KACJ,OACEI,EAAChC,EAAqBiC,SAAS,CAAAN,MAAO,CAAE/B,KAAMgC,KAAKC,YAAa9B,MAAO6B,KAAKE,cAAcI,SAAA,CACvFN,KAAKpB,MAAM0B,SACZ7B,EAAC8B,EAAOlB,EAAAA,EAAA,CACNmB,GAAI,CAAE,sCAAuC,CAAEC,SAAU,WACzDnB,SAAUU,KAAKN,MAAMJ,SACrBtB,KAAM0C,QAAQV,KAAKN,MAAMJ,UACzBqB,QAAS,SAACC,EAAGC,GAAM,OAAKV,EAAKD,aAAaW,EAAO,EACjDC,aAAc,CAAEC,SAAU,SAAUC,WAAY,SAChDC,gBAAiB,CAAEF,SAAU,MAAOC,WAAY,SAChDE,mBAAiB,GACblB,KAAKN,MAAMyB,cAAY,CAAA,EAAA,CAAAb,SAE1BN,KAAKN,MAAMF,aAIpB,IAAC,IAsBU4B,EAA2B,SAAuCxB,GAC7E,OAAO,SAAChB,GACN,OACEH,EAACE,EACE,CAAA2B,SAAA/B,GAAwB,SAACC,GAAO,OAC/BC,EAACmB,EAASP,EAAAA,KAAMT,GAAW,GAAA,CAAEyC,eAAgB7C,IAC9C,KAGN,CACH,EAEM8C,EAAgB,CACpBjB,SAAU1B,EACV4C,IAAKxD,EACLyD,QAASpD,EACTqD,WAAYlD"}
|
|
@@ -1,94 +1,2 @@
|
|
|
1
|
-
import
|
|
2
|
-
import { jsxs, jsx } from 'react/jsx-runtime';
|
|
3
|
-
import React, { Component } from 'react';
|
|
4
|
-
import { Popover } from '@mui/material';
|
|
5
|
-
import { ContentDefault } from './ui.units.js';
|
|
6
|
-
|
|
7
|
-
var ApiPopoverContext = /*#__PURE__*/React.createContext({
|
|
8
|
-
showPopover: function showPopover() {
|
|
9
|
-
console.warn('ApiPopover provider not found!');
|
|
10
|
-
},
|
|
11
|
-
closePopover: function closePopover() {
|
|
12
|
-
console.warn('ApiPopover provider not found!');
|
|
13
|
-
}
|
|
14
|
-
});
|
|
15
|
-
var MapApiPopoverContext = function MapApiPopoverContext(context) {
|
|
16
|
-
return jsx(ApiPopoverContext.Consumer, {
|
|
17
|
-
children: context
|
|
18
|
-
});
|
|
19
|
-
};
|
|
20
|
-
var ApiPopover = /*#__PURE__*/function (_Component) {
|
|
21
|
-
function ApiPopover(props) {
|
|
22
|
-
var _this;
|
|
23
|
-
_classCallCheck(this, ApiPopover);
|
|
24
|
-
_this = _callSuper(this, ApiPopover, [props]);
|
|
25
|
-
_defineProperty(_this, "showPopover", function (option) {
|
|
26
|
-
clearTimeout(_this.timer);
|
|
27
|
-
_this.setState(_objectSpread2({}, option));
|
|
28
|
-
});
|
|
29
|
-
_defineProperty(_this, "closePopover", function () {
|
|
30
|
-
clearTimeout(_this.timer);
|
|
31
|
-
_this.setState({
|
|
32
|
-
anchorEl: null
|
|
33
|
-
}, function () {
|
|
34
|
-
_this.timer = setTimeout(function () {
|
|
35
|
-
_this.setState({
|
|
36
|
-
content: jsx(ContentDefault, {})
|
|
37
|
-
});
|
|
38
|
-
}, 500);
|
|
39
|
-
});
|
|
40
|
-
});
|
|
41
|
-
_this.state = {
|
|
42
|
-
anchorEl: null,
|
|
43
|
-
content: jsx(ContentDefault, {})
|
|
44
|
-
};
|
|
45
|
-
return _this;
|
|
46
|
-
}
|
|
47
|
-
_inherits(ApiPopover, _Component);
|
|
48
|
-
return _createClass(ApiPopover, [{
|
|
49
|
-
key: "render",
|
|
50
|
-
value: function render() {
|
|
51
|
-
var _this2 = this;
|
|
52
|
-
return jsxs(ApiPopoverContext.Provider, {
|
|
53
|
-
value: this,
|
|
54
|
-
children: [this.props.children, jsx(Popover, _objectSpread2(_objectSpread2({
|
|
55
|
-
sx: {
|
|
56
|
-
'& .MuiPaper-root.MuiPaper-elevation': {
|
|
57
|
-
overflow: 'hidden'
|
|
58
|
-
}
|
|
59
|
-
},
|
|
60
|
-
anchorEl: this.state.anchorEl,
|
|
61
|
-
open: Boolean(this.state.anchorEl),
|
|
62
|
-
onClose: function onClose(_, reason) {
|
|
63
|
-
return _this2.closePopover(reason);
|
|
64
|
-
},
|
|
65
|
-
anchorOrigin: {
|
|
66
|
-
vertical: 'bottom',
|
|
67
|
-
horizontal: 'right'
|
|
68
|
-
},
|
|
69
|
-
transformOrigin: {
|
|
70
|
-
vertical: 'top',
|
|
71
|
-
horizontal: 'right'
|
|
72
|
-
},
|
|
73
|
-
disableScrollLock: true
|
|
74
|
-
}, this.state.popoverProps), {}, {
|
|
75
|
-
children: this.state.content
|
|
76
|
-
}))]
|
|
77
|
-
});
|
|
78
|
-
}
|
|
79
|
-
}]);
|
|
80
|
-
}(Component);
|
|
81
|
-
var withApiPopoverContext = function withApiPopoverContext(Component) {
|
|
82
|
-
return function (props) {
|
|
83
|
-
return jsx(ApiPopover, {
|
|
84
|
-
children: MapApiPopoverContext(function (context) {
|
|
85
|
-
return jsx(Component, _objectSpread2(_objectSpread2({}, props), {}, {
|
|
86
|
-
contextPopover: context
|
|
87
|
-
}));
|
|
88
|
-
})
|
|
89
|
-
});
|
|
90
|
-
};
|
|
91
|
-
};
|
|
92
|
-
|
|
93
|
-
export { ApiPopoverContext, MapApiPopoverContext, ApiPopover as default, withApiPopoverContext };
|
|
1
|
+
import{inherits as o,createClass as t,objectSpread2 as r,classCallCheck as e,callSuper as n,defineProperty as i}from"../_virtual/_rollupPluginBabelHelpers.js";import{jsxs as a,jsx as s}from"react/jsx-runtime";import c,{Component as l}from"react";import{Popover as u}from"@mui/material";import{ContentDefault as p}from"./ui.units.js";var h=c.createContext({showPopover:function(){console.warn("ApiPopover provider not found!")},closePopover:function(){console.warn("ApiPopover provider not found!")}}),f=function(o){return s(h.Consumer,{children:o})},m=function(){function c(o){var t;return e(this,c),t=n(this,c,[o]),i(t,"showPopover",(function(o){clearTimeout(t.timer),t.setState(r({},o))})),i(t,"closePopover",(function(){clearTimeout(t.timer),t.setState({anchorEl:null},(function(){t.timer=setTimeout((function(){t.setState({content:s(p,{})})}),500)}))})),t.state={anchorEl:null,content:s(p,{})},t}return o(c,l),t(c,[{key:"render",value:function(){var o=this;return a(h.Provider,{value:this,children:[this.props.children,s(u,r(r({sx:{"& .MuiPaper-root.MuiPaper-elevation":{overflow:"hidden"}},anchorEl:this.state.anchorEl,open:Boolean(this.state.anchorEl),onClose:function(t,r){return o.closePopover(r)},anchorOrigin:{vertical:"bottom",horizontal:"right"},transformOrigin:{vertical:"top",horizontal:"right"},disableScrollLock:!0},this.state.popoverProps),{},{children:this.state.content}))]})}}])}(),v=function(o){return function(t){return s(m,{children:f((function(e){return s(o,r(r({},t),{},{contextPopover:e}))}))})}};export{h as ApiPopoverContext,f as MapApiPopoverContext,m as default,v as withApiPopoverContext};
|
|
94
2
|
//# sourceMappingURL=popover.js.map
|