dinocollab-core 1.0.8 → 1.0.10

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.
@@ -1 +1 @@
1
- {"version":3,"file":"buttons.js","sources":["../../src/components/buttons.tsx"],"sourcesContent":["import React, { FC } from 'react'\r\nimport { Button, ButtonProps, CircularProgress, Fade, styled } from '@mui/material'\r\n\r\nexport interface LoadingButtonProps extends ButtonProps {\r\n loading?: boolean\r\n}\r\n\r\nexport const LoadingButton: FC<LoadingButtonProps> = ({ loading, children, ...props }) => (\r\n <ButtonCustom {...props} disabled={props.disabled || loading}>\r\n <Fade in={!loading}>\r\n <span>{children}</span>\r\n </Fade>\r\n <Fade in={loading}>\r\n <div className='LoadingButton-progress'>\r\n <CircularProgress size={24} />\r\n </div>\r\n </Fade>\r\n </ButtonCustom>\r\n)\r\n\r\nconst ButtonCustom = styled(Button)({\r\n position: 'relative',\r\n [`.LoadingButton-progress`]: {\r\n position: 'absolute',\r\n top: 0,\r\n left: 0,\r\n width: '100%',\r\n height: '100%',\r\n display: 'flex',\r\n alignItems: 'center',\r\n justifyContent: 'center'\r\n }\r\n})\r\n"],"names":["LoadingButton","_ref","loading","children","props","_objectWithoutProperties","_excluded","_jsxs","ButtonCustom","_objectSpread","disabled","_jsx","Fade","in","className","CircularProgress","size","styled","Button","_defineProperty","position","top","left","width","height","display","alignItems","justifyContent"],"mappings":"4RAOaA,EAAwC,SAA3BC,GAAA,IAA8BC,EAAOD,EAAPC,QAASC,EAAQF,EAARE,SAAaC,EAAKC,EAAAJ,EAAAK,GAAA,OACjFC,EAACC,EAAYC,EAAAA,KAAKL,GAAK,GAAA,CAAEM,SAAUN,EAAMM,UAAYR,EAAOC,SAAA,CAC1DQ,EAACC,EAAI,CAACC,IAAKX,EACTC,SAAAQ,EAAA,OAAA,CAAAR,SAAOA,MAETQ,EAACC,EAAK,CAAAC,GAAIX,EAAOC,SACfQ,EAAK,MAAA,CAAAG,UAAU,yBACbX,SAAAQ,EAACI,EAAiB,CAAAC,KAAM,YAGf,EAGXR,EAAeS,EAAOC,EAAPD,CAAcE,EAAA,CACjCC,SAAU,YACmB,0BAAA,CAC3BA,SAAU,WACVC,IAAK,EACLC,KAAM,EACNC,MAAO,OACPC,OAAQ,OACRC,QAAS,OACTC,WAAY,SACZC,eAAgB"}
1
+ {"version":3,"file":"buttons.js","sources":["../../src/components/buttons.tsx"],"sourcesContent":["import React, { FC } from 'react'\r\nimport { Button, ButtonProps, CircularProgress, Fade, styled } from '@mui/material'\r\n\r\nexport interface ILoadingButtonProps extends ButtonProps {\r\n loading?: boolean\r\n}\r\n\r\nexport const LoadingButton: FC<ILoadingButtonProps> = ({ loading, children, ...props }) => (\r\n <ButtonCustom {...props} disabled={props.disabled || loading}>\r\n <Fade in={!loading}>\r\n <span>{children}</span>\r\n </Fade>\r\n <Fade in={loading}>\r\n <div className='LoadingButton-progress'>\r\n <CircularProgress size={24} />\r\n </div>\r\n </Fade>\r\n </ButtonCustom>\r\n)\r\n\r\nconst ButtonCustom = styled(Button)({\r\n position: 'relative',\r\n [`.LoadingButton-progress`]: {\r\n position: 'absolute',\r\n top: 0,\r\n left: 0,\r\n width: '100%',\r\n height: '100%',\r\n display: 'flex',\r\n alignItems: 'center',\r\n justifyContent: 'center'\r\n }\r\n})\r\n"],"names":["LoadingButton","_ref","loading","children","props","_objectWithoutProperties","_excluded","_jsxs","ButtonCustom","_objectSpread","disabled","_jsx","Fade","in","className","CircularProgress","size","styled","Button","_defineProperty","position","top","left","width","height","display","alignItems","justifyContent"],"mappings":"4RAOaA,EAAyC,SAA5BC,GAAA,IAA+BC,EAAOD,EAAPC,QAASC,EAAQF,EAARE,SAAaC,EAAKC,EAAAJ,EAAAK,GAAA,OAClFC,EAACC,EAAYC,EAAAA,KAAKL,GAAK,GAAA,CAAEM,SAAUN,EAAMM,UAAYR,EAAOC,SAAA,CAC1DQ,EAACC,EAAI,CAACC,IAAKX,EACTC,SAAAQ,EAAA,OAAA,CAAAR,SAAOA,MAETQ,EAACC,EAAK,CAAAC,GAAIX,EAAOC,SACfQ,EAAK,MAAA,CAAAG,UAAU,yBACbX,SAAAQ,EAACI,EAAiB,CAAAC,KAAM,YAGf,EAGXR,EAAeS,EAAOC,EAAPD,CAAcE,EAAA,CACjCC,SAAU,YACmB,0BAAA,CAC3BA,SAAU,WACVC,IAAK,EACLC,KAAM,EACNC,MAAO,OACPC,OAAQ,OACRC,QAAS,OACTC,WAAY,SACZC,eAAgB"}
@@ -1,2 +1,2 @@
1
- import{inherits as o,createClass as t,classCallCheck as n,callSuper as r,defineProperty as e,objectSpread2 as i,objectWithoutProperties as l,asyncToGenerator as a,regeneratorRuntime as s}from"../_virtual/_rollupPluginBabelHelpers.js";import{jsxs as u,jsx as p}from"react/jsx-runtime";import{Fragment as d,Component as c}from"react";import{Grid as v}from"@mui/material";import"../api-context/alert-global.js";import"../api-context/drawer-global.js";import{mapGlobalModalContext as f}from"../api-context/global-modal.js";import{CreateFormBottomBar as m,ContentWrap as g}from"./create.form-grid-layout.units.js";import b from"./create.input.js";import h from"./create.form-base.js";var y=["slots"],x=function(x){var S=h(),C=m(),j=b({maxLength:250}),k=function(){function m(o){var t;return n(this,m),t=r(this,m,[o]),e(t,"renderContent",(function(){var o,n=t.props.slots;return u(g,i(i({},null===(o=t.props)||void 0===o||null===(o=o.slots)||void 0===o?void 0:o.contentProps),{},{children:[(null==n?void 0:n.contentBefore)&&(null==n?void 0:n.contentBefore),null==x?void 0:x.contentBefore,p(v,{container:!0,spacing:2,children:x.configs.map((function(o,n){var r,e=!(null===(r=t.configMerged.inputVisibility)||void 0===r||!r[o.key])||void 0;return p(d,e?{}:{children:p(v,i(i({item:!0,xs:12},o.reponsives),{},{children:t.renderFormFieldElement(o)}))},o.key.toString()+n)}))}),null==x?void 0:x.contentAfter,(null==n?void 0:n.contentAfter)&&(null==n?void 0:n.contentAfter)]}))})),e(t,"renderFormFieldElement",(function(o){var n,r,e,i,a=t.props;a.slots;var s=l(a,y),u=null!==(n=o.inputElement)&&void 0!==n?n:j,d=null!==(r=null===(e=s.data)||void 0===e?void 0:e[o.key])&&void 0!==r?r:null==o?void 0:o.defaultValue,c=!(null===(i=t.configMerged.inputDisabled)||void 0===i||!i[o.key])||void 0;return S.contextMapping((function(n){return p(u,{data:t.props.data,onBlur:n.onBlur,messageErrors:n.messageErrors,name:o.key,label:o.label,placeholder:o.placeholder,disabled:c,defaultValue:d})}))})),e(t,"loading",(function(){return t.setState({loadding:!0})})),e(t,"unloading",(function(){return t.setState({loadding:!1})})),e(t,"onSubmit",function(){var o=a(s().mark((function o(n,r){var e,i,l,a,u;return s().wrap((function(o){for(;;)switch(o.prev=o.next){case 0:return i=t.props.slots,l=null!==(e=x.submitMapping)&&void 0!==e?e:t.submitMapping,a=l(n,t.props.data),o.prev=3,t.loading(),null===(u=t.abortController)||void 0===u||u.abort(),t.abortController=new AbortController,o.next=9,t.props.onSubmit(a,t.abortController.signal);case 9:null!=i&&i.closeState&&!1===i.closeState.Success||(r&&r(),t.props.onClose&&t.props.onClose()),o.next=16;break;case 12:o.prev=12,o.t0=o.catch(3),null!=i&&i.closeState&&!0===i.closeState.Fail&&(r&&r(),t.props.onClose&&t.props.onClose()),t.props.onError&&t.props.onError(o.t0);case 16:return o.prev=16,t.unloading(),o.finish(16);case 19:case"end":return o.stop()}}),o,null,[[3,12,16,19]])})));return function(t,n){return o.apply(this,arguments)}}()),e(t,"submitMapping",(function(o,t){return Object.assign({},t,o)})),e(t,"getSxProps",(function(){var o=t.state.loadding;return i(i({},t.props.sx),{},{opacity:o?.7:1,pointerEvents:o?"none":"auto"})})),t.state={loadding:!1},t}return o(m,c),t(m,[{key:"configMerged",get:function(){var o,t,n,r;return{inputVisibility:null!==(o=null===(t=this.props.slots)||void 0===t?void 0:t.inputVisibility)&&void 0!==o?o:x.inputVisibility,inputDisabled:null!==(n=null===(r=this.props.slots)||void 0===r?void 0:r.inputDisabled)&&void 0!==n?n:x.inputDisabled}}},{key:"render",value:function(){var o,t,n,r=this,e=null!==(o=null!==(t=null==x?void 0:x.action)&&void 0!==t?t:null===(n=this.props.slots)||void 0===n?void 0:n.action)&&void 0!==o?o:C;return f((function(o){var t=o.close;return u(S.Form,{validate:x.validate,onSubmit:function(o){return r.onSubmit(o,t)},sx:r.getSxProps(),children:[r.renderContent(),S.contextMapping((function(o){var t;return p(e,{data:r.props.data,onBlur:o.onBlur,messageErrors:o.messageErrors,before:null===(t=r.props.slots)||void 0===t?void 0:t.actionBefore})}))]})}))}},{key:"componentWillUnmount",value:function(){var o;null===(o=this.abortController)||void 0===o||o.abort()}}])}();return k};export{x as default};
1
+ import{inherits as o,createClass as t,classCallCheck as n,callSuper as r,defineProperty as e,objectSpread2 as i,objectWithoutProperties as l,asyncToGenerator as a,regeneratorRuntime as s}from"../_virtual/_rollupPluginBabelHelpers.js";import{jsxs as u,jsx as p}from"react/jsx-runtime";import{Fragment as d,Component as c}from"react";import{Grid as v}from"@mui/material";import"../api-context/alert-global.js";import"../api-context/drawer-global.js";import{mapGlobalModalContext as m}from"../api-context/global-modal.js";import{CreateFormBottomBar as f,ContentWrap as g}from"./create.form-grid-layout.units.js";import b from"./create.input.js";import h from"./create.form-base.js";var y=["slots"],x=function(x){var S=h(),C=f(),k=b({maxLength:250}),j=function(){function f(o){var t;return n(this,f),t=r(this,f,[o]),e(t,"renderContent",(function(){var o,n=t.props.slots;return u(g,i(i({},null===(o=t.props)||void 0===o||null===(o=o.slots)||void 0===o?void 0:o.contentProps),{},{children:[(null==n?void 0:n.contentBefore)&&(null==n?void 0:n.contentBefore),null==x?void 0:x.contentBefore,p(v,{container:!0,spacing:2,children:x.configs.map((function(o,n){var r,e=!(null===(r=t.configMerged.inputVisibility)||void 0===r||!r[o.key])||void 0;return p(d,e?{}:{children:p(v,i(i({item:!0,xs:12},o.reponsives),{},{children:t.renderFormFieldElement(o)}))},o.key.toString()+n)}))}),null==x?void 0:x.contentAfter,(null==n?void 0:n.contentAfter)&&(null==n?void 0:n.contentAfter)]}))})),e(t,"renderFormFieldElement",(function(o){var n,r,e,i,a=t.props;a.slots;var s=l(a,y),u=null!==(n=o.inputElement)&&void 0!==n?n:k,d=null!==(r=null===(e=s.data)||void 0===e?void 0:e[o.key])&&void 0!==r?r:null==o?void 0:o.defaultValue,c=!(null===(i=t.configMerged.inputDisabled)||void 0===i||!i[o.key])||void 0;return S.contextMapping((function(n){return p(u,{data:t.props.data,onBlur:n.onBlur,messageErrors:n.messageErrors,name:o.key,label:o.label,placeholder:o.placeholder,disabled:c,defaultValue:d})}))})),e(t,"loading",(function(){return t.setState({loadding:!0})})),e(t,"unloading",(function(){return t.setState({loadding:!1})})),e(t,"onSubmit",function(){var o=a(s().mark((function o(n,r){var e,i,l,a,u,p,d;return s().wrap((function(o){for(;;)switch(o.prev=o.next){case 0:return a=t.props.slots,u=null!==(e=null!==(i=null===(l=t.props.slots)||void 0===l?void 0:l.submitMapping)&&void 0!==i?i:x.submitMapping)&&void 0!==e?e:t.submitMapping,p=u(n,t.props.data),o.prev=3,t.loading(),null===(d=t.abortController)||void 0===d||d.abort(),t.abortController=new AbortController,o.next=9,t.props.onSubmit(p,t.abortController.signal);case 9:null!=a&&a.closeState&&!1===a.closeState.Success||(r&&r(),t.props.onClose&&t.props.onClose()),o.next=16;break;case 12:o.prev=12,o.t0=o.catch(3),null!=a&&a.closeState&&!0===a.closeState.Fail&&(r&&r(),t.props.onClose&&t.props.onClose()),t.props.onError&&t.props.onError(o.t0);case 16:return o.prev=16,t.unloading(),o.finish(16);case 19:case"end":return o.stop()}}),o,null,[[3,12,16,19]])})));return function(t,n){return o.apply(this,arguments)}}()),e(t,"submitMapping",(function(o){return o})),e(t,"getSxProps",(function(){var o=t.state.loadding;return i(i({},t.props.sx),{},{opacity:o?.7:1,pointerEvents:o?"none":"auto"})})),t.state={loadding:!1},t}return o(f,c),t(f,[{key:"configMerged",get:function(){var o,t,n,r;return{inputVisibility:null!==(o=null===(t=this.props.slots)||void 0===t?void 0:t.inputVisibility)&&void 0!==o?o:x.inputVisibility,inputDisabled:null!==(n=null===(r=this.props.slots)||void 0===r?void 0:r.inputDisabled)&&void 0!==n?n:x.inputDisabled}}},{key:"render",value:function(){var o,t,n,r=this,e=null!==(o=null!==(t=null==x?void 0:x.action)&&void 0!==t?t:null===(n=this.props.slots)||void 0===n?void 0:n.action)&&void 0!==o?o:C;return m((function(o){var t=o.close;return u(S.Form,{validate:x.validate,onSubmit:function(o){return r.onSubmit(o,t)},sx:r.getSxProps(),children:[r.renderContent(),S.contextMapping((function(o){var t;return p(e,{data:r.props.data,onBlur:o.onBlur,messageErrors:o.messageErrors,before:null===(t=r.props.slots)||void 0===t?void 0:t.actionBefore})}))]})}))}},{key:"componentWillUnmount",value:function(){var o;null===(o=this.abortController)||void 0===o||o.abort()}}])}();return j};export{x as default};
2
2
  //# sourceMappingURL=create.form-grid-layout.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"create.form-grid-layout.js","sources":["../../src/form/create.form-grid-layout.tsx"],"sourcesContent":["import React, { Component, ComponentType, Fragment } from 'react'\r\nimport { BoxProps, Grid, RegularBreakpoints, SxProps, Theme } from '@mui/material'\r\nimport { IFormBase, IFormInputBase } from './types'\r\nimport { mapGlobalModalContext } from '../api-context'\r\nimport { ContentWrap, CreateFormBottomBar } from './create.form-grid-layout.units'\r\nimport FormValidator from './validator'\r\nimport CreateInput from './create.input'\r\nimport CreateFormBase from './create.form-base'\r\n\r\nexport interface IFormGridLayoutConfig<T> {\r\n key: keyof T\r\n label?: string\r\n placeholder?: string\r\n reponsives?: RegularBreakpoints\r\n defaultValue?: any\r\n inputElement?: React.ComponentType<IFormInputBase<T>>\r\n}\r\n\r\nexport type SubmitMappingEvent<T> = (value: Partial<T>, oldValue?: T) => Partial<T>\r\n\r\nexport interface IFormGridLayoutSlots<T> {\r\n action?: React.ComponentType<IFormBase<T>>\r\n actionBefore?: JSX.Element\r\n contentBefore?: JSX.Element\r\n contentAfter?: JSX.Element\r\n inputVisibility?: Partial<Record<keyof T, boolean>>\r\n inputDisabled?: Partial<Record<keyof T, boolean>>\r\n closeState?: { Success?: boolean; Fail?: boolean }\r\n contentProps?: BoxProps\r\n}\r\n\r\nexport interface IFormGridLayoutParams<T> extends IFormGridLayoutSlots<T> {\r\n configs: IFormGridLayoutConfig<T>[]\r\n validate: FormValidator<Partial<T>>\r\n submitMapping?: SubmitMappingEvent<T>\r\n}\r\n\r\nexport interface IFormGridLayoutProps<T> {\r\n data?: T\r\n onSubmit: (value: Partial<T>, signal?: AbortSignal) => Promise<void>\r\n onError?: (error: any) => void\r\n onClose?: () => void\r\n sx?: SxProps<Theme>\r\n slots?: IFormGridLayoutSlots<T>\r\n}\r\n\r\nexport interface IFormGridLayoutState {\r\n loadding?: boolean\r\n}\r\n\r\nconst CreateFormGridLayout = function <T>(params: IFormGridLayoutParams<T>): ComponentType<IFormGridLayoutProps<T>> {\r\n const FormBaseInstance = CreateFormBase<T>()\r\n const BottomBarInstance = CreateFormBottomBar<T>()\r\n const InputBaseInstance = CreateInput<T>({ maxLength: 250 })\r\n\r\n class FormGridLayout extends Component<IFormGridLayoutProps<T>, IFormGridLayoutState> {\r\n private abortController?: AbortController\r\n constructor(props: IFormGridLayoutProps<T>) {\r\n super(props)\r\n this.state = { loadding: false }\r\n }\r\n\r\n get configMerged() {\r\n return {\r\n inputVisibility: this.props.slots?.inputVisibility ?? params.inputVisibility,\r\n inputDisabled: this.props.slots?.inputDisabled ?? params.inputDisabled\r\n }\r\n }\r\n\r\n render() {\r\n const BottomBar = params?.action ?? this.props.slots?.action ?? BottomBarInstance\r\n return mapGlobalModalContext(({ close }) => (\r\n <FormBaseInstance.Form validate={params.validate} onSubmit={(v) => this.onSubmit(v, close)} sx={this.getSxProps()}>\r\n {this.renderContent()}\r\n {FormBaseInstance.contextMapping((context) => (\r\n <BottomBar data={this.props.data} onBlur={context.onBlur} messageErrors={context.messageErrors} before={this.props.slots?.actionBefore} />\r\n ))}\r\n </FormBaseInstance.Form>\r\n ))\r\n }\r\n\r\n renderContent = () => {\r\n const { slots } = this.props\r\n return (\r\n <ContentWrap {...this.props?.slots?.contentProps}>\r\n {slots?.contentBefore && slots?.contentBefore}\r\n {params?.contentBefore}\r\n <Grid container spacing={2}>\r\n {params.configs.map((config, index) => {\r\n const visibility: boolean | undefined = this.configMerged.inputVisibility?.[config.key] ? true : undefined\r\n if (visibility) return <Fragment key={config.key.toString() + index} />\r\n return (\r\n <Fragment key={config.key.toString() + index}>\r\n <Grid item xs={12} {...config.reponsives}>\r\n {this.renderFormFieldElement(config)}\r\n </Grid>\r\n </Fragment>\r\n )\r\n })}\r\n </Grid>\r\n {params?.contentAfter}\r\n {slots?.contentAfter && slots?.contentAfter}\r\n </ContentWrap>\r\n )\r\n }\r\n\r\n renderFormFieldElement = (config: IFormGridLayoutConfig<T>) => {\r\n const { slots, ...otherProps } = this.props\r\n const ElementComponent = config.inputElement ?? InputBaseInstance\r\n const dValue = otherProps.data?.[config.key] ?? config?.defaultValue\r\n const disabled: boolean | undefined = this.configMerged.inputDisabled?.[config.key] ? true : undefined\r\n return FormBaseInstance.contextMapping((context) => (\r\n <ElementComponent\r\n data={this.props.data}\r\n onBlur={context.onBlur}\r\n messageErrors={context.messageErrors}\r\n name={config.key}\r\n label={config.label}\r\n placeholder={config.placeholder}\r\n disabled={disabled}\r\n defaultValue={dValue}\r\n />\r\n ))\r\n }\r\n\r\n loading = () => this.setState({ loadding: true })\r\n\r\n unloading = () => this.setState({ loadding: false })\r\n\r\n componentWillUnmount(): void {\r\n this.abortController?.abort()\r\n }\r\n\r\n onSubmit = async (value: Partial<T>, close?: () => void) => {\r\n const { slots } = this.props\r\n const mapping = params.submitMapping ?? this.submitMapping\r\n const data = mapping(value, this.props.data)\r\n try {\r\n this.loading()\r\n this.abortController?.abort()\r\n this.abortController = new AbortController()\r\n await this.props.onSubmit(data, this.abortController.signal)\r\n if (!slots?.closeState || slots.closeState.Success !== false) {\r\n close && close()\r\n this.props.onClose && this.props.onClose()\r\n }\r\n } catch (error) {\r\n if (slots?.closeState && slots.closeState.Fail === true) {\r\n close && close()\r\n this.props.onClose && this.props.onClose()\r\n }\r\n if (this.props.onError) this.props.onError(error)\r\n } finally {\r\n this.unloading()\r\n }\r\n }\r\n\r\n submitMapping: SubmitMappingEvent<T> = (value, oldValue) => {\r\n return Object.assign({}, oldValue, value)\r\n }\r\n\r\n getSxProps = (): SxProps<Theme> => {\r\n const isLoading = this.state.loadding\r\n return { ...this.props.sx, opacity: isLoading ? 0.7 : 1, pointerEvents: isLoading ? 'none' : 'auto' }\r\n }\r\n }\r\n return FormGridLayout\r\n}\r\n\r\nexport default CreateFormGridLayout\r\n"],"names":["CreateFormGridLayout","params","FormBaseInstance","CreateFormBase","BottomBarInstance","CreateFormBottomBar","InputBaseInstance","CreateInput","maxLength","FormGridLayout","props","_this","_classCallCheck","_callSuper","_defineProperty","_this$props","slots","_jsxs","ContentWrap","_objectSpread","contentProps","children","contentBefore","_jsx","Grid","container","spacing","configs","map","config","index","_this$configMerged$in","visibility","configMerged","inputVisibility","key","undefined","Fragment","item","xs","reponsives","renderFormFieldElement","toString","contentAfter","_config$inputElement","_otherProps$data$conf","_otherProps$data","_this$configMerged$in2","_this$props2","otherProps","_objectWithoutProperties","_excluded","ElementComponent","inputElement","dValue","data","defaultValue","disabled","inputDisabled","contextMapping","context","onBlur","messageErrors","name","label","placeholder","setState","loadding","_ref","_asyncToGenerator","_regeneratorRuntime","mark","_callee","value","close","_params$submitMapping","mapping","_this$abortController","wrap","_context","prev","next","submitMapping","loading","abortController","abort","AbortController","onSubmit","signal","closeState","Success","onClose","t0","Fail","onError","unloading","finish","stop","_x","_x2","apply","this","arguments","oldValue","Object","assign","isLoading","state","sx","opacity","pointerEvents","_inherits","Component","_createClass","get","_this$props$slots$inp","_this$props$slots","_this$props$slots$inp2","_this$props$slots2","_ref2","_params$action","_this$props$slots3","_this2","BottomBar","action","mapGlobalModalContext","_ref3","Form","validate","v","getSxProps","renderContent","_this2$props$slots","before","actionBefore","_this$abortController2"],"mappings":"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"}
1
+ {"version":3,"file":"create.form-grid-layout.js","sources":["../../src/form/create.form-grid-layout.tsx"],"sourcesContent":["import React, { Component, ComponentType, Fragment } from 'react'\r\nimport { BoxProps, Grid, RegularBreakpoints, SxProps, Theme } from '@mui/material'\r\nimport { IFormBase, IFormInputBase } from './types'\r\nimport { mapGlobalModalContext } from '../api-context'\r\nimport { ContentWrap, CreateFormBottomBar } from './create.form-grid-layout.units'\r\nimport FormValidator from './validator'\r\nimport CreateInput from './create.input'\r\nimport CreateFormBase from './create.form-base'\r\n\r\nexport interface IFormGridLayoutConfig<T> {\r\n key: keyof T\r\n label?: string\r\n placeholder?: string\r\n reponsives?: RegularBreakpoints\r\n defaultValue?: any\r\n inputElement?: React.ComponentType<IFormInputBase<T>>\r\n}\r\n\r\nexport type SubmitMappingEvent<T> = (value: Partial<T>, oldValue?: T) => Partial<T>\r\n\r\nexport interface IFormGridLayoutSlots<T> {\r\n action?: React.ComponentType<IFormBase<T>>\r\n actionBefore?: JSX.Element\r\n contentBefore?: JSX.Element\r\n contentAfter?: JSX.Element\r\n inputVisibility?: Partial<Record<keyof T, boolean>>\r\n inputDisabled?: Partial<Record<keyof T, boolean>>\r\n closeState?: { Success?: boolean; Fail?: boolean }\r\n contentProps?: BoxProps\r\n submitMapping?: SubmitMappingEvent<T>\r\n}\r\n\r\nexport interface IFormGridLayoutParams<T> extends IFormGridLayoutSlots<T> {\r\n configs: IFormGridLayoutConfig<T>[]\r\n validate: FormValidator<Partial<T>>\r\n}\r\n\r\nexport interface IFormGridLayoutProps<T> {\r\n data?: T\r\n onSubmit: (value: Partial<T>, signal?: AbortSignal) => Promise<void>\r\n onError?: (error: any) => void\r\n onClose?: () => void\r\n sx?: SxProps<Theme>\r\n slots?: IFormGridLayoutSlots<T>\r\n}\r\n\r\nexport interface IFormGridLayoutState {\r\n loadding?: boolean\r\n}\r\n\r\nconst CreateFormGridLayout = function <T>(params: IFormGridLayoutParams<T>): ComponentType<IFormGridLayoutProps<T>> {\r\n const FormBaseInstance = CreateFormBase<T>()\r\n const BottomBarInstance = CreateFormBottomBar<T>()\r\n const InputBaseInstance = CreateInput<T>({ maxLength: 250 })\r\n\r\n class FormGridLayout extends Component<IFormGridLayoutProps<T>, IFormGridLayoutState> {\r\n private abortController?: AbortController\r\n constructor(props: IFormGridLayoutProps<T>) {\r\n super(props)\r\n this.state = { loadding: false }\r\n }\r\n\r\n get configMerged() {\r\n return {\r\n inputVisibility: this.props.slots?.inputVisibility ?? params.inputVisibility,\r\n inputDisabled: this.props.slots?.inputDisabled ?? params.inputDisabled\r\n }\r\n }\r\n\r\n render() {\r\n const BottomBar = params?.action ?? this.props.slots?.action ?? BottomBarInstance\r\n return mapGlobalModalContext(({ close }) => (\r\n <FormBaseInstance.Form validate={params.validate} onSubmit={(v) => this.onSubmit(v, close)} sx={this.getSxProps()}>\r\n {this.renderContent()}\r\n {FormBaseInstance.contextMapping((context) => (\r\n <BottomBar data={this.props.data} onBlur={context.onBlur} messageErrors={context.messageErrors} before={this.props.slots?.actionBefore} />\r\n ))}\r\n </FormBaseInstance.Form>\r\n ))\r\n }\r\n\r\n renderContent = () => {\r\n const { slots } = this.props\r\n return (\r\n <ContentWrap {...this.props?.slots?.contentProps}>\r\n {slots?.contentBefore && slots?.contentBefore}\r\n {params?.contentBefore}\r\n <Grid container spacing={2}>\r\n {params.configs.map((config, index) => {\r\n const visibility: boolean | undefined = this.configMerged.inputVisibility?.[config.key] ? true : undefined\r\n if (visibility) return <Fragment key={config.key.toString() + index} />\r\n return (\r\n <Fragment key={config.key.toString() + index}>\r\n <Grid item xs={12} {...config.reponsives}>\r\n {this.renderFormFieldElement(config)}\r\n </Grid>\r\n </Fragment>\r\n )\r\n })}\r\n </Grid>\r\n {params?.contentAfter}\r\n {slots?.contentAfter && slots?.contentAfter}\r\n </ContentWrap>\r\n )\r\n }\r\n\r\n renderFormFieldElement = (config: IFormGridLayoutConfig<T>) => {\r\n const { slots, ...otherProps } = this.props\r\n const ElementComponent = config.inputElement ?? InputBaseInstance\r\n const dValue = otherProps.data?.[config.key] ?? config?.defaultValue\r\n const disabled: boolean | undefined = this.configMerged.inputDisabled?.[config.key] ? true : undefined\r\n return FormBaseInstance.contextMapping((context) => (\r\n <ElementComponent\r\n data={this.props.data}\r\n onBlur={context.onBlur}\r\n messageErrors={context.messageErrors}\r\n name={config.key}\r\n label={config.label}\r\n placeholder={config.placeholder}\r\n disabled={disabled}\r\n defaultValue={dValue}\r\n />\r\n ))\r\n }\r\n\r\n loading = () => this.setState({ loadding: true })\r\n\r\n unloading = () => this.setState({ loadding: false })\r\n\r\n componentWillUnmount(): void {\r\n this.abortController?.abort()\r\n }\r\n\r\n onSubmit = async (value: Partial<T>, close?: () => void) => {\r\n const { slots } = this.props\r\n const mapping = this.props.slots?.submitMapping ?? params.submitMapping ?? this.submitMapping\r\n const data = mapping(value, this.props.data)\r\n try {\r\n this.loading()\r\n this.abortController?.abort()\r\n this.abortController = new AbortController()\r\n await this.props.onSubmit(data, this.abortController.signal)\r\n if (!slots?.closeState || slots.closeState.Success !== false) {\r\n close && close()\r\n this.props.onClose && this.props.onClose()\r\n }\r\n } catch (error) {\r\n if (slots?.closeState && slots.closeState.Fail === true) {\r\n close && close()\r\n this.props.onClose && this.props.onClose()\r\n }\r\n if (this.props.onError) this.props.onError(error)\r\n } finally {\r\n this.unloading()\r\n }\r\n }\r\n\r\n submitMapping: SubmitMappingEvent<T> = (value) => value\r\n\r\n getSxProps = (): SxProps<Theme> => {\r\n const isLoading = this.state.loadding\r\n return { ...this.props.sx, opacity: isLoading ? 0.7 : 1, pointerEvents: isLoading ? 'none' : 'auto' }\r\n }\r\n }\r\n return FormGridLayout\r\n}\r\n\r\nexport default CreateFormGridLayout\r\n"],"names":["CreateFormGridLayout","params","FormBaseInstance","CreateFormBase","BottomBarInstance","CreateFormBottomBar","InputBaseInstance","CreateInput","maxLength","FormGridLayout","props","_this","_classCallCheck","_callSuper","_defineProperty","_this$props","slots","_jsxs","ContentWrap","_objectSpread","contentProps","children","contentBefore","_jsx","Grid","container","spacing","configs","map","config","index","_this$configMerged$in","visibility","configMerged","inputVisibility","key","undefined","Fragment","item","xs","reponsives","renderFormFieldElement","toString","contentAfter","_config$inputElement","_otherProps$data$conf","_otherProps$data","_this$configMerged$in2","_this$props2","otherProps","_objectWithoutProperties","_excluded","ElementComponent","inputElement","dValue","data","defaultValue","disabled","inputDisabled","contextMapping","context","onBlur","messageErrors","name","label","placeholder","setState","loadding","_ref","_asyncToGenerator","_regeneratorRuntime","mark","_callee","value","close","_ref2","_this$props$slots$sub","_this$props$slots","mapping","_this$abortController","wrap","_context","prev","next","submitMapping","loading","abortController","abort","AbortController","onSubmit","signal","closeState","Success","onClose","t0","Fail","onError","unloading","finish","stop","_x","_x2","apply","this","arguments","isLoading","state","sx","opacity","pointerEvents","_inherits","Component","_createClass","get","_this$props$slots$inp","_this$props$slots2","_this$props$slots$inp2","_this$props$slots3","_ref3","_params$action","_this$props$slots4","_this2","BottomBar","action","mapGlobalModalContext","_ref4","Form","validate","v","getSxProps","renderContent","_this2$props$slots","before","actionBefore","_this$abortController2"],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import { FC } from 'react';
2
2
  import { ButtonProps } from '@mui/material';
3
- export interface LoadingButtonProps extends ButtonProps {
3
+ export interface ILoadingButtonProps extends ButtonProps {
4
4
  loading?: boolean;
5
5
  }
6
- export declare const LoadingButton: FC<LoadingButtonProps>;
6
+ export declare const LoadingButton: FC<ILoadingButtonProps>;
@@ -23,11 +23,11 @@ export interface IFormGridLayoutSlots<T> {
23
23
  Fail?: boolean;
24
24
  };
25
25
  contentProps?: BoxProps;
26
+ submitMapping?: SubmitMappingEvent<T>;
26
27
  }
27
28
  export interface IFormGridLayoutParams<T> extends IFormGridLayoutSlots<T> {
28
29
  configs: IFormGridLayoutConfig<T>[];
29
30
  validate: FormValidator<Partial<T>>;
30
- submitMapping?: SubmitMappingEvent<T>;
31
31
  }
32
32
  export interface IFormGridLayoutProps<T> {
33
33
  data?: T;
@@ -2,14 +2,14 @@ import React, { FC } from 'react';
2
2
  import { InputBaseProps } from '@mui/material';
3
3
  import { ButtonProps, SwitchProps } from '@mui/material';
4
4
  import { ISelectModel } from './types';
5
- import { LoadingButtonProps } from '../../components/buttons';
5
+ import { ILoadingButtonProps } from '../../components/buttons';
6
6
  export declare const ButtonAddToRight: FC<ButtonProps>;
7
7
  export declare const ButtonRemoveSelected: FC<ButtonProps>;
8
8
  export declare const ButtonAdd: FC<Omit<ButtonProps, 'value'> & {
9
9
  value: ISelectModel;
10
10
  }>;
11
11
  export declare const ButtonRemove: FC<ButtonProps>;
12
- export declare const ButtonSubmit: FC<LoadingButtonProps>;
12
+ export declare const ButtonSubmit: FC<ILoadingButtonProps>;
13
13
  export declare const Buttons: {
14
14
  AddToRight: React.FC<ButtonProps<"button", {}>>;
15
15
  RemoveSelected: React.FC<ButtonProps<"button", {}>>;
@@ -17,7 +17,7 @@ export declare const Buttons: {
17
17
  value: ISelectModel;
18
18
  }>;
19
19
  Remove: React.FC<ButtonProps<"button", {}>>;
20
- Submit: React.FC<LoadingButtonProps>;
20
+ Submit: React.FC<ILoadingButtonProps>;
21
21
  };
22
22
  export declare const SwitchUnselected: FC<SwitchProps & {
23
23
  totalHidden?: number;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "dinocollab-core",
3
- "version": "1.0.8",
3
+ "version": "1.0.10",
4
4
  "description": "",
5
5
  "main": "dist/index.js",
6
6
  "module": "dist/index.js",