@galadrim/galadmin 0.1.21 → 0.1.23
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/tsconfig.tsbuildinfo +1 -1
- package/dist/types/config.d.ts +1 -1
- package/package.json +1 -1
- package/src/front/build/asset-manifest.json +3 -3
- package/src/front/build/index.html +1 -1
- package/src/front/build/static/js/main.102c510b.chunk.js +2 -0
- package/src/front/build/static/js/main.102c510b.chunk.js.map +1 -0
- package/src/front/node_modules/.cache/.eslintcache +1 -1
- package/src/front/node_modules/.cache/babel-loader/31d8872e669c99f14609bdcd80b276e9.json +1 -0
- package/src/front/node_modules/.cache/babel-loader/a885793a553c81c7e4350565e9aa0019.json +1 -0
- package/src/front/node_modules/.cache/terser-webpack-plugin/content-v2/sha512/60/39/0660ff3d49723c4034cf2d124fd33cc038f0a9922d8029c0baae21b6141692ffc8416547afb0166a12495d463ab36c98f397287a248e0b9dca638fee0136 +1 -0
- package/src/front/node_modules/.cache/terser-webpack-plugin/index-v5/1a/f6/93794b3e91e2fc8012c6d64abcbec3d311845a4f34191ae898f0b23fb368 +1 -1
- package/src/front/node_modules/.cache/terser-webpack-plugin/index-v5/87/08/421190bfe6e50816e059da6c33526c9943732ef856ebd2752d0cbfb4a852 +1 -1
- package/src/front/node_modules/.cache/terser-webpack-plugin/index-v5/{0d/89/d99652dba5f73c4101373f4b2c9aabadbe9f3857c9421c62e61ff66caad3 → 87/97/fe61a1fec5618f7a0262b069456cc4b30ca64ddddf7d10e057851f8550ed} +1 -1
- package/src/front/src/components/Input.js +3 -3
- package/src/front/src/pages/CreateRecord.js +3 -1
- package/src/types/config.ts +1 -1
- package/src/front/build/static/js/main.470162be.chunk.js +0 -2
- package/src/front/build/static/js/main.470162be.chunk.js.map +0 -1
- package/src/front/node_modules/.cache/babel-loader/1f5300168768a73d65e482ea8a825784.json +0 -1
- package/src/front/node_modules/.cache/babel-loader/97f15c98cea463a696048a36a8de774d.json +0 -1
- package/src/front/node_modules/.cache/babel-loader/a60a212019ec841a23bb8f7ceb59c51a.json +0 -1
- package/src/front/node_modules/.cache/terser-webpack-plugin/content-v2/sha512/18/db/255fe63aa0ec9232a8cfdb3fa679dfdbd0fd64f7b77318a20906043c49f44bfa659200f0268867bee6d3a7b21b7bfd62c3030e62ec095147f98b42eb9afd +0 -1
- package/src/front/node_modules/.cache/terser-webpack-plugin/content-v2/sha512/3f/dc/a043b46a1295bd5c24cf891fa0ce4f8cf088f13391d39fbfa733dfc8590b0009bebe1e8f8b59cec1f7e762dd3d05cb73a520d253e2cf8ee509163e330149 +0 -1
- package/src/front/node_modules/.cache/terser-webpack-plugin/content-v2/sha512/f6/05/bf653eeee15b552c868443834d3c503be9a34e127ec76f805cf60768bf58d94750e1ddcc7f4ce0ed716d625e2040823d09d3473383e8464ba015db0ec1d9 +0 -1
- package/src/front/node_modules/.cache/terser-webpack-plugin/index-v5/1a/b8/bc69b6c33a11502667cb59add9db2987fe400f0ce7def96861b03ef6755c +0 -2
- package/src/front/node_modules/.cache/terser-webpack-plugin/index-v5/a3/5e/78467205e2500d438c54199aa2a6fe60fca9cc113b69090f1705378653dc +0 -2
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"ast":null,"code":"import _defineProperty from\"/home/runner/work/galadmin/galadmin/src/front/node_modules/babel-preset-react-app/node_modules/@babel/runtime/helpers/esm/defineProperty\";import ColorInput from\"./inputs/ColorInput\";import RichTextInput from\"./inputs/RichTextInput\";import DatetimeInput from\"./inputs/DatetimeInput\";import AddressInput from\"./inputs/AddressInput\";import FileInput from\"./inputs/FileInput\";import ForeignSelectInput from\"./inputs/ForeignSelectInput\";import ForeignDatalistInput from\"./inputs/ForeignDatalistInput\";import{jsx as _jsx}from\"react/jsx-runtime\";import{jsxs as _jsxs}from\"react/jsx-runtime\";export default(function(_ref){var column=_ref.column,_onChange2=_ref.onChange,initialData=_ref.initialData;var dataType=column.dataType;if([\"int\",\"double\",\"float\",\"decimal\"].includes(dataType)){return/*#__PURE__*/_jsx(\"input\",{type:\"number\",onChange:function onChange(e){return _onChange2(_defineProperty({},column.name,e.target.value));},defaultValue:initialData===null||initialData===void 0?void 0:initialData[column.name]});}else if(dataType===\"tinyint\"){return/*#__PURE__*/_jsxs(\"select\",{onChange:function onChange(e){return _onChange2(_defineProperty({},column.name,e.target.value));},defaultValue:(initialData===null||initialData===void 0?void 0:initialData[column.name])||column.defaultOption,children:[column.optional?/*#__PURE__*/_jsx(\"option\",{value:\"NULL\",children:\"-\"}):null,/*#__PURE__*/_jsx(\"option\",{value:\"0\",children:\"Non\"}),/*#__PURE__*/_jsx(\"option\",{value:\"1\",children:\"Oui\"})]});}else if(dataType===\"select\"&&Array.isArray(column.options)){return/*#__PURE__*/_jsxs(\"select\",{onChange:function onChange(e){return _onChange2(_defineProperty({},column.name,e.target.value));},defaultValue:(initialData===null||initialData===void 0?void 0:initialData[column.name])||column.defaultOption,children:[column.optional?/*#__PURE__*/_jsx(\"option\",{value:\"NULL\",children:\"-\"}):null,column.options.map(function(option){return/*#__PURE__*/_jsx(\"option\",{value:option,children:option},option);})]});}else if(dataType===\"select\"){return/*#__PURE__*/_jsxs(\"select\",{onChange:function onChange(e){return _onChange2(_defineProperty({},column.name,e.target.value));},defaultValue:(initialData===null||initialData===void 0?void 0:initialData[column.name])||column.defaultOption,children:[column.optional?/*#__PURE__*/_jsx(\"option\",{value:\"NULL\",children:\"-\"}):null,Object.keys(column.options).map(function(key){return/*#__PURE__*/_jsx(\"option\",{value:key,children:column.options[key]},key);})]});}else if(dataType===\"datalist\"){return/*#__PURE__*/_jsx(ForeignDatalistInput,{column:column,onChange:_onChange2,initialData:initialData});}else if(dataType===\"foreign\"){return/*#__PURE__*/_jsx(ForeignSelectInput,{column:column,onChange:_onChange2,initialData:initialData});}else if(dataType===\"address\"){return/*#__PURE__*/_jsx(AddressInput,{column:column,onChange:_onChange2,initialData:initialData});}else if(dataType===\"color\"){return/*#__PURE__*/_jsx(ColorInput,{column:column,onChange:_onChange2,initialData:initialData});}else if(dataType===\"file\"){return/*#__PURE__*/_jsx(FileInput,{column:column,onChange:_onChange2,initialData:initialData});}else if(dataType===\"datetime\"){return/*#__PURE__*/_jsx(DatetimeInput,{column:column,onChange:_onChange2,initialData:initialData,withTime:true});}else if(dataType===\"date\"){return/*#__PURE__*/_jsx(DatetimeInput,{column:column,onChange:_onChange2,initialData:initialData,withTime:false});}else if(dataType===\"textarea\"){return/*#__PURE__*/_jsx(\"textarea\",{onChange:function onChange(e){return _onChange2(_defineProperty({},column.name,e.target.value));},defaultValue:initialData===null||initialData===void 0?void 0:initialData[column.name]});}else if(dataType===\"richText\"){return/*#__PURE__*/_jsx(RichTextInput,{column:column,onChange:_onChange2,initialData:initialData});}else{return/*#__PURE__*/_jsx(\"input\",{type:\"text\",onChange:function onChange(e){return _onChange2(_defineProperty({},column.name,e.target.value));},defaultValue:initialData===null||initialData===void 0?void 0:initialData[column.name]});}});","map":{"version":3,"sources":["/home/runner/work/galadmin/galadmin/src/front/src/components/Input.js"],"names":["ColorInput","RichTextInput","DatetimeInput","AddressInput","FileInput","ForeignSelectInput","ForeignDatalistInput","column","onChange","initialData","dataType","includes","e","name","target","value","defaultOption","optional","Array","isArray","options","map","option","Object","keys","key"],"mappings":"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","sourcesContent":["import ColorInput from \"./inputs/ColorInput\"\nimport RichTextInput from \"./inputs/RichTextInput\";\nimport DatetimeInput from \"./inputs/DatetimeInput\";\nimport AddressInput from \"./inputs/AddressInput\";\nimport FileInput from \"./inputs/FileInput\";\nimport ForeignSelectInput from \"./inputs/ForeignSelectInput\";\nimport ForeignDatalistInput from \"./inputs/ForeignDatalistInput\";\n\nexport default ({ column, onChange, initialData }) => {\n const { dataType } = column;\n\n if ([\"int\", \"double\", \"float\", \"decimal\"].includes(dataType)) {\n return (\n <input\n type='number'\n onChange={(e) => onChange({ [column.name]: e.target.value })}\n defaultValue={initialData?.[column.name]}\n />\n );\n } else if (dataType === \"tinyint\") {\n return (\n <select\n onChange={(e) => onChange({ [column.name]: e.target.value })}\n defaultValue={initialData?.[column.name] || column.defaultOption}\n >\n {column.optional ? <option value='NULL'>-</option> : null}\n <option value='0'>Non</option>\n <option value='1'>Oui</option>\n </select>\n );\n } else if (dataType === \"select\" && Array.isArray(column.options)) {\n return (\n <select\n onChange={(e) => onChange({ [column.name]: e.target.value })}\n defaultValue={initialData?.[column.name] || column.defaultOption}\n >\n {column.optional ? <option value='NULL'>-</option> : null}\n {column.options.map(option => <option value={option} key={option}>{option}</option>)}\n </select>\n );\n } else if (dataType === \"select\") {\n return (\n <select\n onChange={(e) => onChange({ [column.name]: e.target.value })}\n defaultValue={initialData?.[column.name] || column.defaultOption}\n >\n {column.optional ? <option value='NULL'>-</option> : null}\n {Object.keys(column.options).map(key => <option value={key} key={key}>{column.options[key]}</option>)}\n </select>\n );\n } else if (dataType === \"datalist\") {\n return (\n <ForeignDatalistInput\n column={column}\n onChange={onChange}\n initialData={initialData}\n />\n );\n } else if (dataType === \"foreign\") {\n return (\n <ForeignSelectInput\n column={column}\n onChange={onChange}\n initialData={initialData}\n />\n );\n } else if (dataType === \"address\") {\n return (\n <AddressInput\n column={column}\n onChange={onChange}\n initialData={initialData}\n />\n )\n } else if (dataType === \"color\") {\n return (\n <ColorInput\n column={column}\n onChange={onChange}\n initialData={initialData}\n />\n );\n } else if (dataType === \"file\") {\n return (\n <FileInput\n column={column}\n onChange={onChange}\n initialData={initialData}\n />\n );\n } else if (dataType === \"datetime\") {\n return (\n <DatetimeInput\n column={column}\n onChange={onChange}\n initialData={initialData}\n withTime={true}\n />\n );\n } else if (dataType === \"date\") {\n return (\n <DatetimeInput\n column={column}\n onChange={onChange}\n initialData={initialData}\n withTime={false}\n />\n );\n } else if (dataType === \"textarea\") {\n return (\n <textarea\n onChange={(e) => onChange({ [column.name]: e.target.value })}\n defaultValue={initialData?.[column.name]}\n >\n </textarea>\n );\n } else if (dataType === \"richText\") {\n return (\n <RichTextInput\n column={column}\n onChange={onChange}\n initialData={initialData}\n />\n );\n } else {\n return (\n <input\n type='text'\n onChange={(e) => onChange({ [column.name]: e.target.value })}\n defaultValue={initialData?.[column.name]}\n />\n );\n }\n};"]},"metadata":{},"sourceType":"module"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"ast":null,"code":"import evalExpression from\"./evalExpression\";import{Link}from\"react-router-dom\";import{jsx as _jsx}from\"react/jsx-runtime\";export default(function(column,record,config,onTable){var foreignViewIndex=column.dataType==='foreign'?config.views.findIndex(function(x){return x.tableName===column.table;}):-1;if(column.dataType==='foreign'&&column.formatValue&&foreignViewIndex>-1){return/*#__PURE__*/_jsx(Link,{to:\"/record/\".concat(foreignViewIndex,\"/\").concat(record[column.name]),dangerouslySetInnerHTML:{__html:record[\"__formatValue-\".concat(column.__id__,\"__\")]}});}else if(column.dataType==='foreign'&&column.formattedValue&&foreignViewIndex>-1){return/*#__PURE__*/_jsx(Link,{to:\"/record/\".concat(foreignViewIndex,\"/\").concat(record[column.name]),children:evalExpression(column.formattedValue,record)});}else if(column.showAsPicture){var imageUrl=column.baseUrl+record[column.pathField];return record[column.pathField]?/*#__PURE__*/_jsx(\"a\",{href:imageUrl,target:\"_blank\",children:/*#__PURE__*/_jsx(\"img\",{src:imageUrl,style:{width:onTable?60:300,height:onTable?30:150,objectFit:\"contain\"}})}):null;}else if(column.formatValue){return/*#__PURE__*/_jsx(\"div\",{dangerouslySetInnerHTML:{__html:record[\"__formatValue-\".concat(column.__id__,\"__\")]}});}else if(column.formattedValue){return/*#__PURE__*/_jsx(\"div\",{children:evalExpression(column.formattedValue,record)});}else if(column.action){if(column.actionDisplayCondition){var isDisplaying=evalExpression(column.actionDisplayCondition,record);if(!isDisplaying)return\"\";}var data=JSON.parse(JSON.stringify(column.data));for(var key in data){data[key]=evalExpression(data[key],record);}return/*#__PURE__*/_jsx(\"div\",{class:\"actionButton\",\"data-route\":\"\\\" + column.route + \\\"\",\"data-data\":\"\\\" + JSON.stringify(data) + \\\"\",children:column.action});}else if(column.dataType===\"tinyint\"){return/*#__PURE__*/_jsx(\"div\",{children:record[column.name]===1?\"Oui\":\"Non\"});}else if(column.dataType===\"color\"){return/*#__PURE__*/_jsx(\"div\",{class:\"colorPreview\",style:{backgroundColor:record[column.name]}});}else if(column.dataType===\"richText\"){return/*#__PURE__*/_jsx(\"div\",{dangerouslySetInnerHTML:{__html:record[column.htmlField]}});}else if(column.dataType===\"select\"&&column.options&&column.options.constructor==Object){return/*#__PURE__*/_jsx(\"div\",{children:column.options[record[column.name]]});}else{return/*#__PURE__*/_jsx(\"div\",{children:record[column.name]});}});","map":{"version":3,"sources":["/home/runner/work/galadmin/galadmin/src/front/src/utils/getFormattedValue.js"],"names":["evalExpression","Link","column","record","config","onTable","foreignViewIndex","dataType","views","findIndex","x","tableName","table","formatValue","name","__html","__id__","formattedValue","showAsPicture","imageUrl","baseUrl","pathField","width","height","objectFit","action","actionDisplayCondition","isDisplaying","data","JSON","parse","stringify","key","backgroundColor","htmlField","options","constructor","Object"],"mappings":"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","sourcesContent":["import evalExpression from \"./evalExpression\"\nimport {\n Link\n} from \"react-router-dom\";\n\nexport default (column, record, config, onTable) => {\n const foreignViewIndex = column.dataType === 'foreign' ? config.views.findIndex(x => x.tableName === column.table) : -1\n if (column.dataType === 'foreign' && column.formatValue && foreignViewIndex > -1) {\n return <Link to={`/record/${foreignViewIndex}/${record[column.name]}`} dangerouslySetInnerHTML={{ __html: record[`__formatValue-${column.__id__}__`] }} />\n } else if (column.dataType === 'foreign' && column.formattedValue && foreignViewIndex > -1) {\n return <Link to={`/record/${foreignViewIndex}/${record[column.name]}`}>{evalExpression(column.formattedValue, record)}</Link>\n } else if (column.showAsPicture) {\n const imageUrl = column.baseUrl + record[column.pathField];\n return record[column.pathField] ? (\n <a href={imageUrl} target='_blank'>\n <img src={imageUrl} style={{ width: onTable ? 60 : 300, height: onTable ? 30 : 150, objectFit: \"contain\" }} />\n </a>\n ) : null\n } else if (column.formatValue) {\n return <div dangerouslySetInnerHTML={{ __html: record[`__formatValue-${column.__id__}__`] }} />\n } else if (column.formattedValue) {\n return <div>{evalExpression(column.formattedValue, record)}</div>\n } else if (column.action) {\n if (column.actionDisplayCondition) {\n let isDisplaying = evalExpression(column.actionDisplayCondition, record)\n if (!isDisplaying)\n return \"\";\n }\n var data = JSON.parse(JSON.stringify(column.data));\n for (var key in data) {\n data[key] = evalExpression(data[key], record)\n }\n return (\n <div class='actionButton' data-route='\" + column.route + \"' data-data='\" + JSON.stringify(data) + \"'>{column.action}</div>\n )\n } else if (column.dataType === \"tinyint\") {\n return <div>{record[column.name] === 1 ? \"Oui\" : \"Non\"}</div>\n } else if (column.dataType === \"color\") {\n return <div class='colorPreview' style={{ backgroundColor: record[column.name] }}></div>\n } else if (column.dataType === \"richText\") {\n return <div dangerouslySetInnerHTML={{ __html: record[column.htmlField] }} />\n } else if (column.dataType === \"select\" && column.options && column.options.constructor == Object) {\n return <div>{column.options[record[column.name]]}</div>\n } else {\n return <div>{record[column.name]}</div>\n }\n}"]},"metadata":{},"sourceType":"module"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"ast":null,"code":"import _objectSpread from\"/home/runner/work/galadmin/galadmin/src/front/node_modules/babel-preset-react-app/node_modules/@babel/runtime/helpers/esm/objectSpread2\";import _regeneratorRuntime from\"/home/runner/work/galadmin/galadmin/src/front/node_modules/babel-preset-react-app/node_modules/@babel/runtime/regenerator\";import _asyncToGenerator from\"/home/runner/work/galadmin/galadmin/src/front/node_modules/babel-preset-react-app/node_modules/@babel/runtime/helpers/esm/asyncToGenerator\";import _slicedToArray from\"/home/runner/work/galadmin/galadmin/src/front/node_modules/babel-preset-react-app/node_modules/@babel/runtime/helpers/esm/slicedToArray\";import _createForOfIteratorHelper from\"/home/runner/work/galadmin/galadmin/src/front/node_modules/babel-preset-react-app/node_modules/@babel/runtime/helpers/esm/createForOfIteratorHelper\";import{useContext,useRef,useState}from\"react\";import{useParams,useHistory}from\"react-router-dom\";import axios from\"axios\";import Input from\"../components/Input\";import LabelTooltip from\"../components/LabelTooltip\";import{ConfigContext}from'../contexts/ConfigContext';import checkRequiredColumns from\"../utils/checkRequiredColumns\";import{jsx as _jsx}from\"react/jsx-runtime\";import{jsxs as _jsxs}from\"react/jsx-runtime\";export default(function(){var config=useContext(ConfigContext);var _useParams=useParams(),viewIndex=_useParams.viewIndex,panelIndex=_useParams.panelIndex,recordId=_useParams.recordId;var history=useHistory();var view=config.views[viewIndex];var panel=panelIndex?view.recordViewPanels[panelIndex]:null;var filteredColumns=panel?panel.createConfig.columns:view.columns.filter(function(column){return column.dataType&&(column.canEditOnCreation===true||column.canEdit!==false)&&!column.hidden;});var initialData={};var _iterator=_createForOfIteratorHelper(filteredColumns),_step;try{for(_iterator.s();!(_step=_iterator.n()).done;){var column=_step.value;if(column.dataType===\"tinyint\"){initialData[column.name]=column.optional?\"NULL\":\"0\";}else if(column.dataType===\"select\"&&Array.isArray(column.options)){initialData[column.name]=column.options[0];}else if(column.dataType===\"select\"){initialData[column.name]=Object.keys(column.options)[0];}if(column.defaultValue){initialData[column.name]=column.defaultValue;}}}catch(err){_iterator.e(err);}finally{_iterator.f();}var data=useRef(initialData);var _useState=useState(false),_useState2=_slicedToArray(_useState,2),isCreating=_useState2[0],setIsCreating=_useState2[1];var createRecord=/*#__PURE__*/function(){var _ref=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime.mark(function _callee(){var key,_view$createConfig,response;return _regeneratorRuntime.wrap(function _callee$(_context){while(1){switch(_context.prev=_context.next){case 0:if(checkRequiredColumns(filteredColumns,data.current)){_context.next=2;break;}return _context.abrupt(\"return\");case 2:for(key in view.createFilters){data.current[key]=view.createFilters[key];}setIsCreating(true);_context.prev=4;_context.next=7;return axios.post(\"/createRecord\",{viewIndex:viewIndex,panelIndex:panelIndex,recordId:recordId,data:data.current});case 7:response=_context.sent;setIsCreating(false);if(recordId){// Create from panel view\nhistory.push(\"/record/\".concat(viewIndex,\"/\").concat(recordId));}else if(view===null||view===void 0?void 0:(_view$createConfig=view.createConfig)===null||_view$createConfig===void 0?void 0:_view$createConfig.redirectToCreatedItems){history.push(\"/record/\".concat(viewIndex,\"/\").concat(response.data.id));}else{history.push(\"/records/\".concat(viewIndex));}_context.next=16;break;case 12:_context.prev=12;_context.t0=_context[\"catch\"](4);if(_context.t0.response.responseText){window.swal({title:\"Erreur\",text:_context.t0.response.responseText,dangerMode:true});}setIsCreating(false);case 16:case\"end\":return _context.stop();}}},_callee,null,[[4,12]]);}));return function createRecord(){return _ref.apply(this,arguments);};}();return/*#__PURE__*/_jsxs(\"div\",{class:\"view\",children:[/*#__PURE__*/_jsx(\"div\",{class:\"viewHeader\",children:/*#__PURE__*/_jsx(\"div\",{class:\"viewTitle\",children:panel?panel.createConfig.label:\"Cr\\xE9er \".concat(view.aNewSingular)})}),/*#__PURE__*/_jsxs(\"div\",{class:\"paddedView\",children:[/*#__PURE__*/_jsx(\"div\",{class:\"form\",children:filteredColumns.map(function(column,index){return/*#__PURE__*/_jsxs(\"div\",{class:\"formElement\",children:[/*#__PURE__*/_jsxs(\"div\",{class:\"formLabel\",children:[column.label,\" \",column.required?\"*\":\"\",column.labelTooltip?/*#__PURE__*/_jsx(LabelTooltip,{text:column.labelTooltip}):null]}),/*#__PURE__*/_jsx(\"div\",{class:\"formInput\",children:/*#__PURE__*/_jsx(Input,{column:column,onChange:function onChange(newValues){data.current=_objectSpread(_objectSpread({},data.current),newValues);}})})]},index);})}),/*#__PURE__*/_jsx(\"div\",{class:\"button greenButton \".concat(isCreating?\"loading\":\"\"),onClick:createRecord,children:isCreating?\"Sauvegarde en cours...\":\"Créer\"}),/*#__PURE__*/_jsx(\"div\",{class:\"button\",onClick:function onClick(){return history.goBack();},children:\"Annuler\"})]})]});});","map":{"version":3,"sources":["/home/runner/work/galadmin/galadmin/src/front/src/pages/CreateRecord.js"],"names":["useContext","useRef","useState","useParams","useHistory","axios","Input","LabelTooltip","ConfigContext","checkRequiredColumns","config","viewIndex","panelIndex","recordId","history","view","views","panel","recordViewPanels","filteredColumns","createConfig","columns","filter","column","dataType","canEditOnCreation","canEdit","hidden","initialData","name","optional","Array","isArray","options","Object","keys","defaultValue","data","isCreating","setIsCreating","createRecord","current","key","createFilters","post","response","push","redirectToCreatedItems","id","responseText","window","swal","title","text","dangerMode","label","aNewSingular","map","index","required","labelTooltip","newValues","goBack"],"mappings":"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","sourcesContent":["import { useContext, useRef, useState } from \"react\";\nimport {\n useParams,\n useHistory\n} from \"react-router-dom\";\nimport axios from \"axios\";\nimport Input from \"../components/Input\"\nimport LabelTooltip from \"../components/LabelTooltip\"\nimport { ConfigContext } from '../contexts/ConfigContext'\nimport checkRequiredColumns from \"../utils/checkRequiredColumns\";\n\nexport default () => {\n const config = useContext(ConfigContext)\n const { viewIndex, panelIndex, recordId } = useParams();\n const history = useHistory();\n const view = config.views[viewIndex];\n const panel = panelIndex ? view.recordViewPanels[panelIndex] : null;\n const filteredColumns = panel ? panel.createConfig.columns : view.columns.filter(\n column => column.dataType &&\n (column.canEditOnCreation === true || column.canEdit !== false)\n && !column.hidden\n )\n\n const initialData = {}\n for (const column of filteredColumns) {\n if (column.dataType === \"tinyint\") {\n initialData[column.name] = column.optional ? \"NULL\" : \"0\"\n } else if (column.dataType === \"select\" && Array.isArray(column.options)) {\n initialData[column.name] = column.options[0]\n } else if (column.dataType === \"select\") {\n initialData[column.name] = Object.keys(column.options)[0]\n }\n if (column.defaultValue) {\n initialData[column.name] = column.defaultValue\n }\n }\n const data = useRef(initialData)\n const [isCreating, setIsCreating] = useState(false)\n\n const createRecord = async () => {\n if (!checkRequiredColumns(filteredColumns, data.current)) return;\n for (const key in view.createFilters) {\n data.current[key] = view.createFilters[key]\n }\n setIsCreating(true)\n try {\n const response = await axios.post(\"/createRecord\", {\n viewIndex,\n panelIndex,\n recordId,\n data: data.current\n })\n setIsCreating(false)\n if (recordId) { // Create from panel view\n history.push(`/record/${viewIndex}/${recordId}`)\n } else if (view?.createConfig?.redirectToCreatedItems) {\n history.push(`/record/${viewIndex}/${response.data.id}`)\n } else {\n history.push(`/records/${viewIndex}`)\n }\n } catch (error) {\n if (error.response.responseText) {\n window.swal({\n title: \"Erreur\",\n text: error.response.responseText,\n dangerMode: true\n })\n }\n setIsCreating(false)\n }\n }\n\n return (\n <div class=\"view\">\n <div class=\"viewHeader\">\n <div class=\"viewTitle\">{panel ? panel.createConfig.label : `Créer ${view.aNewSingular}`}</div>\n </div>\n <div class=\"paddedView\">\n <div class=\"form\">\n {filteredColumns.map((column, index) => {\n return (\n <div class='formElement' key={index}>\n <div class='formLabel'>\n {column.label} {column.required ? \"*\" : \"\"}\n {column.labelTooltip ? <LabelTooltip text={column.labelTooltip} /> : null}\n </div>\n <div class='formInput'>\n <Input\n column={column}\n onChange={(newValues) => { data.current = { ...data.current, ...newValues } }}\n />\n </div>\n </div>\n )\n })}\n </div>\n <div class={`button greenButton ${isCreating ? \"loading\" : \"\"}`} onClick={createRecord}>{isCreating ? \"Sauvegarde en cours...\" : \"Créer\"}</div>\n <div class=\"button\" onClick={() => history.goBack()}>Annuler</div>\n </div>\n </div>\n )\n}"]},"metadata":{},"sourceType":"module"}
|