dinocollab-core 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (214) hide show
  1. package/README.md +54 -0
  2. package/dist/_virtual/_rollupPluginBabelHelpers.js +431 -0
  3. package/dist/_virtual/_rollupPluginBabelHelpers.js.map +1 -0
  4. package/dist/assets/vector-404265a04f4f9c8be1f.webp +0 -0
  5. package/dist/node_modules/.pnpm/@rollup_plugin-typescript@1_d0d2002d9033600b6738d939bd598bc6/node_modules/tslib/tslib.es6.js +46 -0
  6. package/dist/node_modules/.pnpm/@rollup_plugin-typescript@1_d0d2002d9033600b6738d939bd598bc6/node_modules/tslib/tslib.es6.js.map +1 -0
  7. package/dist/src/api-context/alert-global.js +151 -0
  8. package/dist/src/api-context/alert-global.js.map +1 -0
  9. package/dist/src/api-context/drawer-global.js +105 -0
  10. package/dist/src/api-context/drawer-global.js.map +1 -0
  11. package/dist/src/api-context/global-modal.js +87 -0
  12. package/dist/src/api-context/global-modal.js.map +1 -0
  13. package/dist/src/api-context/popover-global.js +102 -0
  14. package/dist/src/api-context/popover-global.js.map +1 -0
  15. package/dist/src/api-context/popover.js +86 -0
  16. package/dist/src/api-context/popover.js.map +1 -0
  17. package/dist/src/api-context/ui.units.js +21 -0
  18. package/dist/src/api-context/ui.units.js.map +1 -0
  19. package/dist/src/components/copy-to-clipboard.js +105 -0
  20. package/dist/src/components/copy-to-clipboard.js.map +1 -0
  21. package/dist/src/components/custom.breadcrumbs.js +61 -0
  22. package/dist/src/components/custom.breadcrumbs.js.map +1 -0
  23. package/dist/src/components/help-tooltip.js +91 -0
  24. package/dist/src/components/help-tooltip.js.map +1 -0
  25. package/dist/src/components/image-with-fallback.js +48 -0
  26. package/dist/src/components/image-with-fallback.js.map +1 -0
  27. package/dist/src/components/text-editor.js +117 -0
  28. package/dist/src/components/text-editor.js.map +1 -0
  29. package/dist/src/form/create.autocomplete.chips.js +218 -0
  30. package/dist/src/form/create.autocomplete.chips.js.map +1 -0
  31. package/dist/src/form/create.date-expired.js +201 -0
  32. package/dist/src/form/create.date-expired.js.map +1 -0
  33. package/dist/src/form/create.date-picker.js +125 -0
  34. package/dist/src/form/create.date-picker.js.map +1 -0
  35. package/dist/src/form/create.form-base.js +135 -0
  36. package/dist/src/form/create.form-base.js.map +1 -0
  37. package/dist/src/form/create.form-comfirm.js +119 -0
  38. package/dist/src/form/create.form-comfirm.js.map +1 -0
  39. package/dist/src/form/create.form-grid-layout.js +177 -0
  40. package/dist/src/form/create.form-grid-layout.js.map +1 -0
  41. package/dist/src/form/create.form-grid-layout.units.js +39 -0
  42. package/dist/src/form/create.form-grid-layout.units.js.map +1 -0
  43. package/dist/src/form/create.input-base.js +260 -0
  44. package/dist/src/form/create.input-base.js.map +1 -0
  45. package/dist/src/form/create.input.file.js +74 -0
  46. package/dist/src/form/create.input.file.js.map +1 -0
  47. package/dist/src/form/create.select-simple.js +104 -0
  48. package/dist/src/form/create.select-simple.js.map +1 -0
  49. package/dist/src/form/create.select-with-api.js +271 -0
  50. package/dist/src/form/create.select-with-api.js.map +1 -0
  51. package/dist/src/form/create.text-editor.js +156 -0
  52. package/dist/src/form/create.text-editor.js.map +1 -0
  53. package/dist/src/form/dino-form.js +42 -0
  54. package/dist/src/form/dino-form.js.map +1 -0
  55. package/dist/src/form/helper.js +157 -0
  56. package/dist/src/form/helper.js.map +1 -0
  57. package/dist/src/form/modal-wrapper.js +75 -0
  58. package/dist/src/form/modal-wrapper.js.map +1 -0
  59. package/dist/src/form/validator.js +186 -0
  60. package/dist/src/form/validator.js.map +1 -0
  61. package/dist/src/hooks/index.js +48 -0
  62. package/dist/src/hooks/index.js.map +1 -0
  63. package/dist/src/index.js +26 -0
  64. package/dist/src/index.js.map +1 -0
  65. package/dist/src/redux/create.hoc-lazy.js +67 -0
  66. package/dist/src/redux/create.hoc-lazy.js.map +1 -0
  67. package/dist/src/redux/dino.js +11 -0
  68. package/dist/src/redux/dino.js.map +1 -0
  69. package/dist/src/redux/types.js +9 -0
  70. package/dist/src/redux/types.js.map +1 -0
  71. package/dist/src/redux/ui.error-page.js +80 -0
  72. package/dist/src/redux/ui.error-page.js.map +1 -0
  73. package/dist/src/redux/vector-404.webp.js +4 -0
  74. package/dist/src/redux/vector-404.webp.js.map +1 -0
  75. package/dist/src/table/context.js +12 -0
  76. package/dist/src/table/context.js.map +1 -0
  77. package/dist/src/table/create.action-row.js +135 -0
  78. package/dist/src/table/create.action-row.js.map +1 -0
  79. package/dist/src/table/create.status-cell.js +49 -0
  80. package/dist/src/table/create.status-cell.js.map +1 -0
  81. package/dist/src/table/create.table.js +233 -0
  82. package/dist/src/table/create.table.js.map +1 -0
  83. package/dist/src/table/custom.filter-operators.js +89 -0
  84. package/dist/src/table/custom.filter-operators.js.map +1 -0
  85. package/dist/src/table/dino.js +129 -0
  86. package/dist/src/table/dino.js.map +1 -0
  87. package/dist/src/table/helpers.js +116 -0
  88. package/dist/src/table/helpers.js.map +1 -0
  89. package/dist/src/table/model-filter.js +23 -0
  90. package/dist/src/table/model-filter.js.map +1 -0
  91. package/dist/src/table/toolbar-pannel.js +134 -0
  92. package/dist/src/table/toolbar-pannel.js.map +1 -0
  93. package/dist/src/table/ui.buttons.js +60 -0
  94. package/dist/src/table/ui.buttons.js.map +1 -0
  95. package/dist/src/table/ui.units.js +201 -0
  96. package/dist/src/table/ui.units.js.map +1 -0
  97. package/dist/src/utils/dayjs-config.js +12 -0
  98. package/dist/src/utils/dayjs-config.js.map +1 -0
  99. package/dist/src/utils/helpers.js +197 -0
  100. package/dist/src/utils/helpers.js.map +1 -0
  101. package/dist/src/utils/json-object.js +38 -0
  102. package/dist/src/utils/json-object.js.map +1 -0
  103. package/dist/src/utils/query-param.js +172 -0
  104. package/dist/src/utils/query-param.js.map +1 -0
  105. package/package.json +52 -0
  106. package/rollup.config.js +39 -0
  107. package/src/@types/global.d.ts +5 -0
  108. package/src/api-context/alert-global.tsx +174 -0
  109. package/src/api-context/drawer-global.tsx +116 -0
  110. package/src/api-context/global-modal.tsx +109 -0
  111. package/src/api-context/index.ts +13 -0
  112. package/src/api-context/popover-global.tsx +107 -0
  113. package/src/api-context/popover.tsx +89 -0
  114. package/src/api-context/ui.units.tsx +10 -0
  115. package/src/components/copy-to-clipboard.tsx +86 -0
  116. package/src/components/custom.breadcrumbs.tsx +67 -0
  117. package/src/components/help-tooltip.tsx +75 -0
  118. package/src/components/image-with-fallback.tsx +51 -0
  119. package/src/components/index.tsx +1 -0
  120. package/src/components/input-debounce-timer.tsx +138 -0
  121. package/src/components/loading-buttons.tsx +35 -0
  122. package/src/components/text-editor.preview.tsx +30 -0
  123. package/src/components/text-editor.tsx +125 -0
  124. package/src/form/README.md +55 -0
  125. package/src/form/create.autocomplete.chips.tsx +199 -0
  126. package/src/form/create.date-expired.tsx +195 -0
  127. package/src/form/create.date-picker.tsx +122 -0
  128. package/src/form/create.form-base.tsx +102 -0
  129. package/src/form/create.form-comfirm.tsx +83 -0
  130. package/src/form/create.form-grid-layout.tsx +170 -0
  131. package/src/form/create.form-grid-layout.units.tsx +37 -0
  132. package/src/form/create.input-base.tsx +222 -0
  133. package/src/form/create.input.file.tsx +76 -0
  134. package/src/form/create.select-simple.tsx +101 -0
  135. package/src/form/create.select-with-api.tsx +213 -0
  136. package/src/form/create.text-editor.tsx +161 -0
  137. package/src/form/dino-form.tsx +40 -0
  138. package/src/form/helper.ts +132 -0
  139. package/src/form/index.ts +12 -0
  140. package/src/form/modal-wrapper.tsx +75 -0
  141. package/src/form/types.ts +16 -0
  142. package/src/form/validator.ts +202 -0
  143. package/src/hooks/index.ts +44 -0
  144. package/src/index.ts +7 -0
  145. package/src/lab/create.autocomplete.simple.tsx +57 -0
  146. package/src/lab/create.dino-store.ts +59 -0
  147. package/src/lab/create.multi-select-dropdown.tsx +189 -0
  148. package/src/lab/create.select-mul-with-api/index.tsx +271 -0
  149. package/src/lab/create.select-mul-with-api/table-custom.tsx +194 -0
  150. package/src/lab/create.select-mul-with-api/types.ts +26 -0
  151. package/src/lab/create.select-mul-with-api/ui.units.tsx +163 -0
  152. package/src/lab/filter-bar/base.tsx +162 -0
  153. package/src/lab/filter-bar/create.filter-bar.tsx +190 -0
  154. package/src/lab/filter-bar/create.filter-menu.tsx +156 -0
  155. package/src/lab/filter-bar/create.filter-panel.tsx +95 -0
  156. package/src/lab/filter-bar/create.filtered.tsx +41 -0
  157. package/src/lab/filter-bar/create.sort-menu.tsx +43 -0
  158. package/src/lab/filter-bar/demo.tsx +50 -0
  159. package/src/lab/filter-bar/index.ts +6 -0
  160. package/src/lab/filter-bar/types.ts +105 -0
  161. package/src/lab/filter-bar/ui.units.tsx +70 -0
  162. package/src/lab/grafana-dashboard/configs.ts +43 -0
  163. package/src/lab/grafana-dashboard/date-time-range/absolute-time-rage.tsx +137 -0
  164. package/src/lab/grafana-dashboard/date-time-range/helpers.ts +126 -0
  165. package/src/lab/grafana-dashboard/date-time-range/index.tsx +62 -0
  166. package/src/lab/grafana-dashboard/date-time-range/menu-wrap.tsx +101 -0
  167. package/src/lab/grafana-dashboard/date-time-range/quick-ranges.tsx +161 -0
  168. package/src/lab/grafana-dashboard/date-time-range/types.ts +9 -0
  169. package/src/lab/grafana-dashboard/date-time-range/units.tsx +18 -0
  170. package/src/lab/grafana-dashboard/helper.ts +25 -0
  171. package/src/lab/grafana-dashboard/hooks.tsx +79 -0
  172. package/src/lab/grafana-dashboard/icons.tsx +67 -0
  173. package/src/lab/grafana-dashboard/index.tsx +120 -0
  174. package/src/lab/grafana-dashboard/top-bar.tsx +62 -0
  175. package/src/lab/grafana-dashboard/top-bar.types.ts +5 -0
  176. package/src/lab/grafana-dashboard/types.ts +8 -0
  177. package/src/lab/media-player.core1.tsx +273 -0
  178. package/src/lab/media-player.muted.tsx +62 -0
  179. package/src/lab/media-player.units.ts +80 -0
  180. package/src/lab/table-grid/create.table-grid.tsx +183 -0
  181. package/src/lab/table-grid/demo.tsx +53 -0
  182. package/src/lab/table-grid/dino.tsx +8 -0
  183. package/src/lab/table-grid/helpers.tsx +11 -0
  184. package/src/lab/table-grid/index.ts +3 -0
  185. package/src/lab/table-grid/item-actions.tsx +138 -0
  186. package/src/lab/table-grid/toolbar-pannel.tsx +98 -0
  187. package/src/lab/table-grid/types.ts +68 -0
  188. package/src/redux/create.hoc-lazy.tsx +80 -0
  189. package/src/redux/dino.ts +9 -0
  190. package/src/redux/index.ts +6 -0
  191. package/src/redux/types.ts +27 -0
  192. package/src/redux/ui.error-page.tsx +62 -0
  193. package/src/redux/ui.units.tsx +41 -0
  194. package/src/redux/vector-404.webp +0 -0
  195. package/src/table/context.tsx +16 -0
  196. package/src/table/create.action-row.tsx +91 -0
  197. package/src/table/create.status-cell.tsx +51 -0
  198. package/src/table/create.table.tsx +239 -0
  199. package/src/table/custom.filter-operators.ts +94 -0
  200. package/src/table/dino.tsx +120 -0
  201. package/src/table/helpers.ts +94 -0
  202. package/src/table/index.ts +13 -0
  203. package/src/table/model-filter.ts +43 -0
  204. package/src/table/toolbar-pannel.tsx +106 -0
  205. package/src/table/types.ts +50 -0
  206. package/src/table/ui.buttons.tsx +54 -0
  207. package/src/table/ui.units.tsx +189 -0
  208. package/src/utils/dayjs-config.ts +13 -0
  209. package/src/utils/helpers.ts +171 -0
  210. package/src/utils/index.ts +7 -0
  211. package/src/utils/json-object.ts +29 -0
  212. package/src/utils/mfe-events.tsx +34 -0
  213. package/src/utils/query-param.ts +129 -0
  214. package/tsconfig.json +20 -0
@@ -0,0 +1,135 @@
1
+ import { inherits as _inherits, createClass as _createClass, classCallCheck as _classCallCheck, callSuper as _callSuper, defineProperty as _defineProperty, regeneratorRuntime as _regeneratorRuntime } from '../../_virtual/_rollupPluginBabelHelpers.js';
2
+ import { __awaiter } from '../../node_modules/.pnpm/@rollup_plugin-typescript@1_d0d2002d9033600b6738d939bd598bc6/node_modules/tslib/tslib.es6.js';
3
+ import React, { Component } from 'react';
4
+ import { Box } from '@mui/material';
5
+ import { convertFormDataToJson, SingleValidate, ValidateMerge, GetErrorFromResponse } from './helper.js';
6
+ import FormValidator, { SingleRuleValidate } from './validator.js';
7
+
8
+ var CreateFormBase = function CreateFormBase(param) {
9
+ var FormBaseContext = /*#__PURE__*/React.createContext({});
10
+ var FormBase = /*#__PURE__*/function (_Component) {
11
+ function FormBase(props) {
12
+ var _this;
13
+ _classCallCheck(this, FormBase);
14
+ _this = _callSuper(this, FormBase, [props]);
15
+ _this.refForm = null;
16
+ _this.setError = function (keyName, message) {
17
+ var error = _defineProperty({}, keyName, [{
18
+ rule: SingleRuleValidate.Custom,
19
+ message: message
20
+ }]);
21
+ _this.setState({
22
+ messageErrors: Object.assign({}, _this.state.messageErrors, error)
23
+ });
24
+ };
25
+ _this.clearErrorAll = function () {
26
+ _this.setState({
27
+ messageErrors: {}
28
+ });
29
+ };
30
+ _this.onSubmit = function (e) {
31
+ return __awaiter(_this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee() {
32
+ var _this2 = this;
33
+ var formData, model, messageErrors;
34
+ return _regeneratorRuntime().wrap(function _callee$(_context) {
35
+ while (1) switch (_context.prev = _context.next) {
36
+ case 0:
37
+ e.preventDefault();
38
+ formData = new FormData(e.currentTarget);
39
+ model = convertFormDataToJson(formData);
40
+ this.setState({
41
+ modelState: model
42
+ });
43
+ messageErrors = this.validate.run(model);
44
+ if (!messageErrors) {
45
+ _context.next = 9;
46
+ break;
47
+ }
48
+ this.setState({
49
+ messageErrors: messageErrors
50
+ });
51
+ if (!(Object.keys(messageErrors).length > 0)) {
52
+ _context.next = 9;
53
+ break;
54
+ }
55
+ return _context.abrupt("return");
56
+ case 9:
57
+ _context.next = 11;
58
+ return this.props.onSubmit(model, e)["catch"](function (error) {
59
+ var messageError = GetErrorFromResponse(error, model);
60
+ _this2.setState({
61
+ messageErrors: Object.assign(Object.assign({}, _this2.state.messageErrors), messageError || {})
62
+ });
63
+ });
64
+ case 11:
65
+ case "end":
66
+ return _context.stop();
67
+ }
68
+ }, _callee, this);
69
+ }));
70
+ };
71
+ _this.onBlur = function (keyName) {
72
+ if (!_this.refForm) return;
73
+ var messageErrors = _this.state.messageErrors;
74
+ var formData = new FormData(_this.refForm);
75
+ var model = convertFormDataToJson(formData);
76
+ _this.setState({
77
+ modelState: model
78
+ });
79
+ var error = SingleValidate(keyName, model, messageErrors, _this.validate) || {};
80
+ _this.setState({
81
+ messageErrors: error
82
+ });
83
+ };
84
+ _this.getValidate = function () {
85
+ var defaultValidate = new FormValidator({});
86
+ return ValidateMerge(defaultValidate, param === null || param === void 0 ? void 0 : param.validate, _this.props.validate);
87
+ };
88
+ _this.validate = _this.getValidate();
89
+ _this.state = {
90
+ messageErrors: {}
91
+ };
92
+ return _this;
93
+ }
94
+ _inherits(FormBase, _Component);
95
+ return _createClass(FormBase, [{
96
+ key: "render",
97
+ value: function render() {
98
+ var _this3 = this;
99
+ var onBlur = this.onBlur,
100
+ setError = this.setError,
101
+ clearErrorAll = this.clearErrorAll;
102
+ var _this$state = this.state,
103
+ modelState = _this$state.modelState,
104
+ messageErrors = _this$state.messageErrors;
105
+ return /*#__PURE__*/React.createElement(Box, {
106
+ component: "form",
107
+ sx: this.props.sx,
108
+ ref: function ref(_ref) {
109
+ return _this3.refForm = _ref;
110
+ },
111
+ onSubmit: this.onSubmit
112
+ }, /*#__PURE__*/React.createElement(FormBaseContext.Provider, {
113
+ value: {
114
+ setError: setError,
115
+ onBlur: onBlur,
116
+ clearErrorAll: clearErrorAll,
117
+ modelState: modelState,
118
+ messageErrors: messageErrors
119
+ }
120
+ }, this.props.children));
121
+ }
122
+ }]);
123
+ }(Component);
124
+ return {
125
+ Form: FormBase,
126
+ Validator: param === null || param === void 0 ? void 0 : param.validate,
127
+ Context: FormBaseContext,
128
+ contextMapping: function contextMapping(params) {
129
+ return /*#__PURE__*/React.createElement(FormBaseContext.Consumer, null, params);
130
+ }
131
+ };
132
+ };
133
+
134
+ export { CreateFormBase as default };
135
+ //# sourceMappingURL=create.form-base.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"create.form-base.js","sources":["../../../src/form/create.form-base.tsx"],"sourcesContent":["import React, { Component } from 'react'\r\nimport { Box, SxProps, Theme } from '@mui/material'\r\nimport { IFormBase } from './types'\r\nimport { convertFormDataToJson, GetErrorFromResponse, SingleValidate, ValidateMerge } from './helper'\r\nimport FormValidator, { PartialError, SingleRuleValidate } from './validator'\r\n\r\ninterface IParam<TModel> {\r\n validate?: FormValidator<Partial<TModel>>\r\n}\r\n\r\ninterface IProps<TModel> {\r\n sx?: SxProps<Theme>\r\n validate?: FormValidator<Partial<TModel>>\r\n onSubmit: (data: Partial<TModel>, e: React.FormEvent<HTMLFormElement>) => Promise<void>\r\n}\r\n\r\ninterface IState<TModel> extends Pick<IFormBase<TModel>, 'messageErrors'> {\r\n modelState?: Partial<TModel>\r\n}\r\n\r\nexport interface IFormContextBase<TModel> {\r\n modelState?: Partial<TModel>\r\n messageErrors: PartialError<TModel>\r\n onBlur: (keyName: keyof TModel) => void\r\n setError: (keyName: keyof TModel, message: string) => void\r\n clearErrorAll: (keyName: keyof TModel) => void\r\n}\r\n\r\nconst CreateFormBase = function <TModel>(param?: IParam<TModel>) {\r\n const FormBaseContext = React.createContext<IFormContextBase<TModel>>({} as any)\r\n class FormBase extends Component<React.PropsWithChildren<IProps<TModel>>, IState<TModel>> {\r\n refForm: HTMLFormElement | null = null\r\n constructor(props: IProps<TModel>) {\r\n super(props)\r\n this.validate = this.getValidate()\r\n this.state = { messageErrors: {} }\r\n }\r\n\r\n setError = (keyName: keyof TModel, message: string) => {\r\n const error = { [keyName]: [{ rule: SingleRuleValidate.Custom, message }] }\r\n this.setState({\r\n messageErrors: Object.assign({}, this.state.messageErrors, error)\r\n })\r\n }\r\n\r\n clearErrorAll = () => {\r\n this.setState({ messageErrors: {} })\r\n }\r\n\r\n render() {\r\n const { onBlur, setError, clearErrorAll } = this\r\n const { modelState, messageErrors } = this.state\r\n return (\r\n <Box component='form' sx={this.props.sx} ref={(ref: HTMLFormElement) => (this.refForm = ref)} onSubmit={this.onSubmit}>\r\n <FormBaseContext.Provider value={{ setError, onBlur, clearErrorAll, modelState, messageErrors }}>\r\n {this.props.children}\r\n </FormBaseContext.Provider>\r\n </Box>\r\n )\r\n }\r\n\r\n private validate: FormValidator<Partial<TModel>>\r\n onSubmit: React.FormEventHandler<HTMLFormElement> = async (e) => {\r\n e.preventDefault()\r\n const formData = new FormData(e.currentTarget as HTMLFormElement)\r\n const model = convertFormDataToJson<TModel>(formData)\r\n this.setState({ modelState: model })\r\n const messageErrors = this.validate.run(model) as PartialError<TModel>\r\n if (messageErrors) {\r\n this.setState({ messageErrors: messageErrors })\r\n if (Object.keys(messageErrors).length > 0) return\r\n }\r\n await this.props.onSubmit(model, e).catch((error) => {\r\n const messageError = GetErrorFromResponse(error, model)\r\n this.setState({ messageErrors: { ...this.state.messageErrors, ...(messageError || {}) } })\r\n })\r\n }\r\n\r\n onBlur = (keyName: keyof TModel) => {\r\n if (!this.refForm) return\r\n const { messageErrors } = this.state\r\n const formData = new FormData(this.refForm)\r\n const model = convertFormDataToJson(formData)\r\n this.setState({ modelState: model })\r\n const error = SingleValidate<TModel, Partial<TModel>>(keyName, model, messageErrors, this.validate) || {}\r\n this.setState({ messageErrors: error as PartialError<TModel> })\r\n }\r\n\r\n getValidate = (): FormValidator<Partial<TModel>> => {\r\n const defaultValidate = new FormValidator<Partial<TModel>>({})\r\n return ValidateMerge(defaultValidate, param?.validate, this.props.validate)\r\n }\r\n }\r\n\r\n return {\r\n Form: FormBase,\r\n Validator: param?.validate,\r\n Context: FormBaseContext,\r\n contextMapping: (params: (context: IFormContextBase<TModel>) => JSX.Element) => <FormBaseContext.Consumer>{params}</FormBaseContext.Consumer>\r\n }\r\n}\r\nexport default CreateFormBase\r\n"],"names":["CreateFormBase","param","FormBaseContext","React","createContext","FormBase","_Component","props","_this","_classCallCheck","_callSuper","refForm","setError","keyName","message","error","_defineProperty","rule","SingleRuleValidate","Custom","setState","messageErrors","Object","assign","state","clearErrorAll","onSubmit","e","__awaiter","_regeneratorRuntime","mark","_callee","_this2","formData","model","wrap","_callee$","_context","prev","next","preventDefault","FormData","currentTarget","convertFormDataToJson","modelState","validate","run","keys","length","abrupt","messageError","GetErrorFromResponse","stop","onBlur","SingleValidate","getValidate","defaultValidate","FormValidator","ValidateMerge","_inherits","_createClass","key","value","render","_this3","_this$state","createElement","Box","component","sx","ref","Provider","children","Component","Form","Validator","Context","contextMapping","params","Consumer"],"mappings":"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"}
@@ -0,0 +1,119 @@
1
+ import { inherits as _inherits, createClass as _createClass, classCallCheck as _classCallCheck, callSuper as _callSuper, regeneratorRuntime as _regeneratorRuntime } from '../../_virtual/_rollupPluginBabelHelpers.js';
2
+ import { __awaiter } from '../../node_modules/.pnpm/@rollup_plugin-typescript@1_d0d2002d9033600b6738d939bd598bc6/node_modules/tslib/tslib.es6.js';
3
+ import React, { Component } from 'react';
4
+ import { styled, Button, Box, Card, DialogTitle, DialogContent, DialogActions } from '@mui/material';
5
+ import { fetchDelay } from '../utils/helpers.js';
6
+ import '../utils/query-param.js';
7
+ import '../utils/dayjs-config.js';
8
+ import '../api-context/alert-global.js';
9
+ import '../api-context/drawer-global.js';
10
+ import { MapGlobalModalContext } from '../api-context/global-modal.js';
11
+
12
+ var CreateFormComfirm = function CreateFormComfirm(param) {
13
+ var FormConfirm = /*#__PURE__*/function (_Component) {
14
+ function FormConfirm(props) {
15
+ var _this;
16
+ _classCallCheck(this, FormConfirm);
17
+ _this = _callSuper(this, FormConfirm, [props]);
18
+ _this.handleClickNo = function (context) {
19
+ context.close();
20
+ _this.props.onCancel && _this.props.onCancel();
21
+ };
22
+ _this.handleClickYes = function (context) {
23
+ return __awaiter(_this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee() {
24
+ var _this2 = this;
25
+ return _regeneratorRuntime().wrap(function _callee$(_context) {
26
+ while (1) switch (_context.prev = _context.next) {
27
+ case 0:
28
+ if (this.props.onSubmit) {
29
+ _context.next = 2;
30
+ break;
31
+ }
32
+ return _context.abrupt("return");
33
+ case 2:
34
+ _context.prev = 2;
35
+ this.setState({
36
+ loading: true
37
+ });
38
+ _context.next = 6;
39
+ return fetchDelay(function () {
40
+ return _this2.props.onSubmit(_this2.props.data);
41
+ }, 700);
42
+ case 6:
43
+ context.close();
44
+ _context.next = 12;
45
+ break;
46
+ case 9:
47
+ _context.prev = 9;
48
+ _context.t0 = _context["catch"](2);
49
+ console.log(_context.t0);
50
+ case 12:
51
+ _context.prev = 12;
52
+ this.setState({
53
+ loading: false
54
+ });
55
+ return _context.finish(12);
56
+ case 15:
57
+ case "end":
58
+ return _context.stop();
59
+ }
60
+ }, _callee, this, [[2, 9, 12, 15]]);
61
+ }));
62
+ };
63
+ _this.state = {
64
+ loading: false
65
+ };
66
+ return _this;
67
+ }
68
+ _inherits(FormConfirm, _Component);
69
+ return _createClass(FormConfirm, [{
70
+ key: "render",
71
+ value: function render() {
72
+ var _this3 = this;
73
+ var _a, _b;
74
+ var content = this.props.children || ((param === null || param === void 0 ? void 0 : param.content) ? param === null || param === void 0 ? void 0 : param.content(this.props.data) : undefined);
75
+ var title = (_b = (_a = this.props.title) !== null && _a !== void 0 ? _a : param === null || param === void 0 ? void 0 : param.title) !== null && _b !== void 0 ? _b : 'Are you sure?';
76
+ return /*#__PURE__*/React.createElement(Box, {
77
+ sx: {
78
+ flex: 1,
79
+ display: 'flex',
80
+ alignItems: 'center',
81
+ justifyContent: 'center'
82
+ }
83
+ }, MapGlobalModalContext(function (context) {
84
+ var _a, _b;
85
+ return /*#__PURE__*/React.createElement(Card, null, /*#__PURE__*/React.createElement(DialogTitle, {
86
+ id: "alert-dialog-title"
87
+ }, title), /*#__PURE__*/React.createElement(DialogContent, {
88
+ sx: {
89
+ minWidth: '300px'
90
+ }
91
+ }, content), /*#__PURE__*/React.createElement(DialogActions, null, /*#__PURE__*/React.createElement(CustomButton, {
92
+ disabled: _this3.state.loading,
93
+ color: ((_a = param === null || param === void 0 ? void 0 : param.colors) === null || _a === void 0 ? void 0 : _a.no) || 'inherit',
94
+ onClick: function onClick() {
95
+ return _this3.handleClickNo(context);
96
+ }
97
+ }, "No"), /*#__PURE__*/React.createElement(CustomButton, {
98
+ color: ((_b = param === null || param === void 0 ? void 0 : param.colors) === null || _b === void 0 ? void 0 : _b.yes) || 'error',
99
+ disabled: _this3.state.loading,
100
+ onClick: function onClick() {
101
+ return _this3.handleClickYes(context);
102
+ }
103
+ }, "Yes")));
104
+ }));
105
+ }
106
+ }]);
107
+ }(Component);
108
+ return FormConfirm;
109
+ };
110
+ var CustomButton = styled(Button)({
111
+ textTransform: 'capitalize',
112
+ fontWeight: 600,
113
+ '&.MuiButton-colorInherit': {
114
+ color: '#606060!important'
115
+ }
116
+ });
117
+
118
+ export { CreateFormComfirm as default };
119
+ //# sourceMappingURL=create.form-comfirm.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"create.form-comfirm.js","sources":["../../../src/form/create.form-comfirm.tsx"],"sourcesContent":["import React, { Component } from 'react'\r\nimport { Box, Button, Card, DialogActions, DialogContent, DialogTitle, styled } from '@mui/material'\r\nimport { fetchDelay } from '../utils'\r\nimport { IGlobalModalContext, MapGlobalModalContext } from '../api-context'\r\n\r\ninterface IParam<TModel> {\r\n title?: string\r\n content: (value?: TModel) => JSX.Element\r\n colors?: {\r\n yes?: 'inherit' | 'error' | 'primary' | 'secondary' | 'success' | 'info' | 'warning'\r\n no?: 'inherit' | 'error' | 'primary' | 'secondary' | 'success' | 'info' | 'warning'\r\n }\r\n}\r\nconst CreateFormComfirm = function <TModel = any>(param?: IParam<TModel>) {\r\n interface IProps {\r\n data?: TModel\r\n title?: string\r\n onSubmit: (value?: TModel) => Promise<void>\r\n onCancel?: () => void\r\n }\r\n\r\n interface IState {\r\n loading?: boolean\r\n }\r\n\r\n class FormConfirm extends Component<React.PropsWithChildren<IProps>, IState> {\r\n constructor(props: IProps) {\r\n super(props)\r\n this.state = { loading: false }\r\n }\r\n\r\n render() {\r\n const content = this.props.children || (param?.content ? param?.content(this.props.data) : undefined)\r\n const title = this.props.title ?? param?.title ?? 'Are you sure?'\r\n return (\r\n <Box sx={{ flex: 1, display: 'flex', alignItems: 'center', justifyContent: 'center' }}>\r\n {MapGlobalModalContext((context) => (\r\n <Card>\r\n <DialogTitle id='alert-dialog-title'>{title}</DialogTitle>\r\n <DialogContent sx={{ minWidth: '300px' }}>{content}</DialogContent>\r\n <DialogActions>\r\n <CustomButton disabled={this.state.loading} color={param?.colors?.no || 'inherit'} onClick={() => this.handleClickNo(context)}>\r\n No\r\n </CustomButton>\r\n <CustomButton color={param?.colors?.yes || 'error'} disabled={this.state.loading} onClick={() => this.handleClickYes(context)}>\r\n Yes\r\n </CustomButton>\r\n </DialogActions>\r\n </Card>\r\n ))}\r\n </Box>\r\n )\r\n }\r\n\r\n handleClickNo = (context: IGlobalModalContext) => {\r\n context.close()\r\n this.props.onCancel && this.props.onCancel()\r\n }\r\n\r\n handleClickYes = async (context: IGlobalModalContext) => {\r\n if (!this.props.onSubmit) return\r\n try {\r\n this.setState({ loading: true })\r\n await fetchDelay(() => this.props.onSubmit(this.props.data), 700)\r\n context.close()\r\n } catch (error) {\r\n console.log(error)\r\n } finally {\r\n this.setState({ loading: false })\r\n }\r\n }\r\n }\r\n return FormConfirm\r\n}\r\nexport default CreateFormComfirm\r\n\r\nconst CustomButton = styled(Button)({\r\n textTransform: 'capitalize',\r\n fontWeight: 600,\r\n '&.MuiButton-colorInherit': {\r\n color: '#606060!important'\r\n }\r\n})\r\n"],"names":["CreateFormComfirm","param","FormConfirm","_Component","props","_this","_classCallCheck","_callSuper","handleClickNo","context","close","onCancel","handleClickYes","__awaiter","_regeneratorRuntime","mark","_callee","_this2","wrap","_callee$","_context","prev","next","onSubmit","abrupt","setState","loading","fetchDelay","data","t0","console","log","finish","stop","state","_inherits","_createClass","key","value","render","_this3","content","children","undefined","title","_b","React","createElement","Box","sx","flex","display","alignItems","justifyContent","MapGlobalModalContext","Card","DialogTitle","id","DialogContent","minWidth","DialogActions","CustomButton","disabled","color","_a","colors","no","onClick","yes","Component","styled","Button","textTransform","fontWeight"],"mappings":"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"}
@@ -0,0 +1,177 @@
1
+ import { inherits as _inherits, createClass as _createClass, classCallCheck as _classCallCheck, callSuper as _callSuper, extends as _extends, regeneratorRuntime as _regeneratorRuntime } from '../../_virtual/_rollupPluginBabelHelpers.js';
2
+ import { __rest, __awaiter } from '../../node_modules/.pnpm/@rollup_plugin-typescript@1_d0d2002d9033600b6738d939bd598bc6/node_modules/tslib/tslib.es6.js';
3
+ import React, { Component, Fragment } from 'react';
4
+ import { Grid } from '@mui/material';
5
+ import '../api-context/alert-global.js';
6
+ import '../api-context/drawer-global.js';
7
+ import { MapGlobalModalContext } from '../api-context/global-modal.js';
8
+ import { CreateFormBottomBar, ContentWrap } from './create.form-grid-layout.units.js';
9
+ import CreateFormBase from './create.form-base.js';
10
+ import CreateInputBase from './create.input-base.js';
11
+
12
+ var CreateFormGridLayout = function CreateFormGridLayout(params) {
13
+ var FormBaseInstance = CreateFormBase();
14
+ var BottomBarInstance = CreateFormBottomBar();
15
+ var InputBaseInstance = CreateInputBase({
16
+ maxLength: 250
17
+ });
18
+ var FormGridLayout = /*#__PURE__*/function (_Component) {
19
+ function FormGridLayout(props) {
20
+ var _this;
21
+ _classCallCheck(this, FormGridLayout);
22
+ _this = _callSuper(this, FormGridLayout, [props]);
23
+ _this.renderContent = function () {
24
+ var _a, _b;
25
+ var slots = _this.props.slots;
26
+ return /*#__PURE__*/React.createElement(ContentWrap, (_b = (_a = _this.props) === null || _a === void 0 ? void 0 : _a.slots) === null || _b === void 0 ? void 0 : _b.contentProps, (slots === null || slots === void 0 ? void 0 : slots.contentBefore) && (slots === null || slots === void 0 ? void 0 : slots.contentBefore), params === null || params === void 0 ? void 0 : params.contentBefore, /*#__PURE__*/React.createElement(Grid, {
27
+ container: true,
28
+ spacing: 2
29
+ }, params.configs.map(function (config, index) {
30
+ var _a;
31
+ var visibility = ((_a = _this.configMerged.inputVisibility) === null || _a === void 0 ? void 0 : _a[config.key]) ? true : undefined;
32
+ if (visibility) return /*#__PURE__*/React.createElement(Fragment, {
33
+ key: config.key.toString() + index
34
+ });
35
+ return /*#__PURE__*/React.createElement(Fragment, {
36
+ key: config.key.toString() + index
37
+ }, /*#__PURE__*/React.createElement(Grid, _extends({
38
+ item: true,
39
+ xs: 12
40
+ }, config.reponsives), _this.renderFormFieldElement(config)));
41
+ })), params === null || params === void 0 ? void 0 : params.contentAfter, (slots === null || slots === void 0 ? void 0 : slots.contentAfter) && (slots === null || slots === void 0 ? void 0 : slots.contentAfter));
42
+ };
43
+ _this.renderFormFieldElement = function (config) {
44
+ var _a, _b, _c, _d;
45
+ var _e = _this.props;
46
+ _e.slots;
47
+ var otherProps = __rest(_e, ["slots"]);
48
+ var ElementComponent = (_a = config.inputElement) !== null && _a !== void 0 ? _a : InputBaseInstance;
49
+ var dValue = (_c = (_b = otherProps.data) === null || _b === void 0 ? void 0 : _b[config.key]) !== null && _c !== void 0 ? _c : config === null || config === void 0 ? void 0 : config.defaultValue;
50
+ var disabled = ((_d = _this.configMerged.inputDisabled) === null || _d === void 0 ? void 0 : _d[config.key]) ? true : undefined;
51
+ return FormBaseInstance.contextMapping(function (context) {
52
+ return /*#__PURE__*/React.createElement(ElementComponent, {
53
+ data: _this.props.data,
54
+ onBlur: context.onBlur,
55
+ messageErrors: context.messageErrors,
56
+ name: config.key,
57
+ label: config.label,
58
+ placeholder: config.placeholder,
59
+ disabled: disabled,
60
+ defaultValue: dValue
61
+ });
62
+ });
63
+ };
64
+ _this.loading = function () {
65
+ return _this.setState({
66
+ loadding: true
67
+ });
68
+ };
69
+ _this.unloading = function () {
70
+ return _this.setState({
71
+ loadding: false
72
+ });
73
+ };
74
+ _this.onSubmit = function (value, close) {
75
+ return __awaiter(_this, void 0, void 0, /*#__PURE__*/_regeneratorRuntime().mark(function _callee() {
76
+ var _a, _b, slots, mapping, data;
77
+ return _regeneratorRuntime().wrap(function _callee$(_context) {
78
+ while (1) switch (_context.prev = _context.next) {
79
+ case 0:
80
+ slots = this.props.slots;
81
+ mapping = (_a = params.submitMapping) !== null && _a !== void 0 ? _a : this.submitMapping;
82
+ data = mapping(value, this.props.data);
83
+ _context.prev = 3;
84
+ this.loading();
85
+ (_b = this.abortController) === null || _b === void 0 ? void 0 : _b.abort();
86
+ this.abortController = new AbortController();
87
+ _context.next = 9;
88
+ return this.props.onSubmit(data, this.abortController.signal);
89
+ case 9:
90
+ if (!(slots === null || slots === void 0 ? void 0 : slots.closeState) || slots.closeState.Success !== false) {
91
+ close && close();
92
+ this.props.onClose && this.props.onClose();
93
+ }
94
+ _context.next = 16;
95
+ break;
96
+ case 12:
97
+ _context.prev = 12;
98
+ _context.t0 = _context["catch"](3);
99
+ if ((slots === null || slots === void 0 ? void 0 : slots.closeState) && slots.closeState.Fail === true) {
100
+ close && close();
101
+ this.props.onClose && this.props.onClose();
102
+ }
103
+ if (this.props.onError) this.props.onError(_context.t0);
104
+ case 16:
105
+ _context.prev = 16;
106
+ this.unloading();
107
+ return _context.finish(16);
108
+ case 19:
109
+ case "end":
110
+ return _context.stop();
111
+ }
112
+ }, _callee, this, [[3, 12, 16, 19]]);
113
+ }));
114
+ };
115
+ _this.submitMapping = function (value, oldValue) {
116
+ return Object.assign({}, oldValue, value);
117
+ };
118
+ _this.getSxProps = function () {
119
+ var isLoading = _this.state.loadding;
120
+ return Object.assign(Object.assign({}, _this.props.sx), {
121
+ opacity: isLoading ? 0.7 : 1,
122
+ pointerEvents: isLoading ? 'none' : 'auto'
123
+ });
124
+ };
125
+ _this.state = {
126
+ loadding: false
127
+ };
128
+ return _this;
129
+ }
130
+ _inherits(FormGridLayout, _Component);
131
+ return _createClass(FormGridLayout, [{
132
+ key: "configMerged",
133
+ get: function get() {
134
+ var _a, _b, _c, _d;
135
+ return {
136
+ inputVisibility: (_b = (_a = this.props.slots) === null || _a === void 0 ? void 0 : _a.inputVisibility) !== null && _b !== void 0 ? _b : params.inputVisibility,
137
+ inputDisabled: (_d = (_c = this.props.slots) === null || _c === void 0 ? void 0 : _c.inputDisabled) !== null && _d !== void 0 ? _d : params.inputDisabled
138
+ };
139
+ }
140
+ }, {
141
+ key: "render",
142
+ value: function render() {
143
+ var _this2 = this;
144
+ var _a, _b, _c;
145
+ var BottomBar = (_c = (_a = params === null || params === void 0 ? void 0 : params.action) !== null && _a !== void 0 ? _a : (_b = this.props.slots) === null || _b === void 0 ? void 0 : _b.action) !== null && _c !== void 0 ? _c : BottomBarInstance;
146
+ return MapGlobalModalContext(function (_ref) {
147
+ var close = _ref.close;
148
+ return /*#__PURE__*/React.createElement(FormBaseInstance.Form, {
149
+ validate: params.validate,
150
+ onSubmit: function onSubmit(v) {
151
+ return _this2.onSubmit(v, close);
152
+ },
153
+ sx: _this2.getSxProps()
154
+ }, _this2.renderContent(), FormBaseInstance.contextMapping(function (context) {
155
+ var _a;
156
+ return /*#__PURE__*/React.createElement(BottomBar, {
157
+ data: _this2.props.data,
158
+ onBlur: context.onBlur,
159
+ messageErrors: context.messageErrors,
160
+ before: (_a = _this2.props.slots) === null || _a === void 0 ? void 0 : _a.actionBefore
161
+ });
162
+ }));
163
+ });
164
+ }
165
+ }, {
166
+ key: "componentWillUnmount",
167
+ value: function componentWillUnmount() {
168
+ var _a;
169
+ (_a = this.abortController) === null || _a === void 0 ? void 0 : _a.abort();
170
+ }
171
+ }]);
172
+ }(Component);
173
+ return FormGridLayout;
174
+ };
175
+
176
+ export { CreateFormGridLayout as default };
177
+ //# sourceMappingURL=create.form-grid-layout.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"create.form-grid-layout.js","sources":["../../../src/form/create.form-grid-layout.tsx"],"sourcesContent":["import React, { Component, 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 CreateFormBase from './create.form-base'\r\nimport CreateInputBase from './create.input-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\ntype TSubmitMapping<T> = (value: Partial<T>, oldValue?: T) => Partial<T>\r\n\r\ninterface ISlots<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\ninterface IParams<T> extends ISlots<T> {\r\n configs: IFormGridLayoutConfig<T>[]\r\n validate: FormValidator<Partial<T>>\r\n submitMapping?: TSubmitMapping<T>\r\n}\r\n\r\nconst CreateFormGridLayout = function <T>(params: IParams<T>) {\r\n const FormBaseInstance = CreateFormBase<T>()\r\n const BottomBarInstance = CreateFormBottomBar<T>()\r\n const InputBaseInstance = CreateInputBase<T>({ maxLength: 250 })\r\n\r\n interface IFormGridLayoutProps {\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?: ISlots<T>\r\n }\r\n\r\n interface IState {\r\n loadding?: boolean\r\n }\r\n\r\n class FormGridLayout extends Component<IFormGridLayoutProps, IState> {\r\n private abortController?: AbortController\r\n constructor(props: IFormGridLayoutProps) {\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: TSubmitMapping<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","CreateInputBase","maxLength","FormGridLayout","_Component","props","_this","_classCallCheck","_callSuper","renderContent","slots","React","createElement","ContentWrap","_b","_a","contentProps","contentBefore","Grid","container","spacing","configs","map","config","index","visibility","configMerged","inputVisibility","key","undefined","Fragment","toString","_extends","item","xs","reponsives","renderFormFieldElement","contentAfter","_e","otherProps","__rest","ElementComponent","inputElement","dValue","_c","data","defaultValue","disabled","_d","inputDisabled","contextMapping","context","onBlur","messageErrors","name","label","placeholder","loading","setState","loadding","unloading","onSubmit","value","close","__awaiter","_regeneratorRuntime","mark","_callee","mapping","wrap","_callee$","_context","prev","next","submitMapping","abortController","abort","AbortController","signal","closeState","Success","onClose","t0","Fail","onError","finish","stop","oldValue","Object","assign","getSxProps","isLoading","state","sx","opacity","pointerEvents","_inherits","_createClass","get","render","_this2","BottomBar","action","MapGlobalModalContext","_ref","Form","validate","v","before","actionBefore","componentWillUnmount","Component"],"mappings":"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"}
@@ -0,0 +1,39 @@
1
+ import React from 'react';
2
+ import { styled, Box, Button } from '@mui/material';
3
+
4
+ var ContentWrap = styled(Box)({
5
+ padding: '16px 12px 3px',
6
+ maxHeight: "calc(100vh - ".concat(48 * 2 + 12 * 2, "px)"),
7
+ overflowY: 'auto',
8
+ overflowX: 'hidden'
9
+ });
10
+ function CreateFormBottomBar() {
11
+ var FormBottomBar = function FormBottomBar(props) {
12
+ return /*#__PURE__*/React.createElement(FormBottomBarWrap, {
13
+ className: "bottom-bar"
14
+ }, /*#__PURE__*/React.createElement(Box, {
15
+ sx: {
16
+ flex: 1
17
+ }
18
+ }, props.before), /*#__PURE__*/React.createElement(Button, {
19
+ variant: "contained",
20
+ type: "submit",
21
+ size: "small"
22
+ }, "Submit"));
23
+ };
24
+ return FormBottomBar;
25
+ }
26
+ var FormBottomBarWrap = styled(Box)({
27
+ display: 'flex',
28
+ alignItems: 'center',
29
+ padding: '0 12px',
30
+ boxShadow: 'rgba(145, 158, 171, 0.2) 0px 0px 2px 0px,rgba(145, 158, 171, 0.12) 0px 12px 24px -4px',
31
+ position: 'sticky',
32
+ bottom: 0,
33
+ backgroundColor: '#fff',
34
+ zIndex: 1,
35
+ height: '48px'
36
+ });
37
+
38
+ export { ContentWrap, CreateFormBottomBar, FormBottomBarWrap };
39
+ //# sourceMappingURL=create.form-grid-layout.units.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"create.form-grid-layout.units.js","sources":["../../../src/form/create.form-grid-layout.units.tsx"],"sourcesContent":["import React, { FC, ReactNode } from 'react'\r\nimport { Box, Button, styled } from '@mui/material'\r\nimport { IFormBase } from './types'\r\n\r\nexport const ContentWrap = styled(Box)({\r\n padding: '16px 12px 3px',\r\n maxHeight: `calc(100vh - ${48 * 2 + 12 * 2}px)`,\r\n overflowY: 'auto',\r\n overflowX: 'hidden'\r\n})\r\n\r\nexport function CreateFormBottomBar<T>() {\r\n interface Props extends IFormBase<T> {\r\n before?: ReactNode\r\n }\r\n const FormBottomBar: FC<Props> = (props) => (\r\n <FormBottomBarWrap className='bottom-bar'>\r\n <Box sx={{ flex: 1 }}>{props.before}</Box>\r\n <Button variant='contained' type='submit' size='small'>\r\n Submit\r\n </Button>\r\n </FormBottomBarWrap>\r\n )\r\n return FormBottomBar\r\n}\r\n\r\nexport const FormBottomBarWrap = styled(Box)({\r\n display: 'flex',\r\n alignItems: 'center',\r\n padding: '0 12px',\r\n boxShadow: 'rgba(145, 158, 171, 0.2) 0px 0px 2px 0px,rgba(145, 158, 171, 0.12) 0px 12px 24px -4px',\r\n position: 'sticky',\r\n bottom: 0,\r\n backgroundColor: '#fff',\r\n zIndex: 1,\r\n height: '48px'\r\n})\r\n"],"names":["ContentWrap","styled","Box","padding","maxHeight","concat","overflowY","overflowX","CreateFormBottomBar","FormBottomBar","props","React","createElement","FormBottomBarWrap","className","sx","flex","before","Button","variant","type","size","display","alignItems","boxShadow","position","bottom","backgroundColor","zIndex","height"],"mappings":";;;IAIaA,WAAW,GAAGC,MAAM,CAACC,GAAG,CAAC,CAAC;AACrCC,EAAAA,OAAO,EAAE,eAAe;EACxBC,SAAS,EAAA,eAAA,CAAAC,MAAA,CAAkB,EAAE,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,EAAK,KAAA,CAAA;AAC/CC,EAAAA,SAAS,EAAE,MAAM;AACjBC,EAAAA,SAAS,EAAE;AACZ,CAAA;SAEeC,mBAAmBA,GAAA;AAIjC,EAAA,IAAMC,aAAa,GAAc,SAA3BA,aAAaA,CAAeC,KAAK,EAAA;AAAA,IAAA,oBACrCC,KAAA,CAAAC,aAAA,CAACC,iBAAiB,EAAA;AAACC,MAAAA,SAAS,EAAC;AAAY,KAAA,eACvCH,KAAA,CAAAC,aAAA,CAACV,GAAG,EAAA;AAACa,MAAAA,EAAE,EAAE;AAAEC,QAAAA,IAAI,EAAE;;KAAMN,EAAAA,KAAK,CAACO,MAAY,CACzC,eAAAN,KAAA,CAAAC,aAAA,CAACM,MAAM,EAAA;AAACC,MAAAA,OAAO,EAAC,WAAW;AAACC,MAAAA,IAAI,EAAC,QAAQ;AAACC,MAAAA,IAAI,EAAC;KAC7C,EAAA,QACM,CACS,CAAC;GACrB;AACD,EAAA,OAAOZ,aAAa;AACtB;IAEaI,iBAAiB,GAAGZ,MAAM,CAACC,GAAG,CAAC,CAAC;AAC3CoB,EAAAA,OAAO,EAAE,MAAM;AACfC,EAAAA,UAAU,EAAE,QAAQ;AACpBpB,EAAAA,OAAO,EAAE,QAAQ;AACjBqB,EAAAA,SAAS,EAAE,uFAAuF;AAClGC,EAAAA,QAAQ,EAAE,QAAQ;AAClBC,EAAAA,MAAM,EAAE,CAAC;AACTC,EAAAA,eAAe,EAAE,MAAM;AACvBC,EAAAA,MAAM,EAAE,CAAC;AACTC,EAAAA,MAAM,EAAE;AACT,CAAA;;;;"}