dinocollab-core 1.0.3 → 1.0.4

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 (101) hide show
  1. package/dist/_virtual/_rollupPluginBabelHelpers.js +1 -487
  2. package/dist/_virtual/_rollupPluginBabelHelpers.js.map +1 -1
  3. package/dist/api-context/alert-global.js +1 -165
  4. package/dist/api-context/alert-global.js.map +1 -1
  5. package/dist/api-context/drawer-global.js +1 -111
  6. package/dist/api-context/drawer-global.js.map +1 -1
  7. package/dist/api-context/global-modal.js +1 -94
  8. package/dist/api-context/global-modal.js.map +1 -1
  9. package/dist/api-context/popover-global.js +1 -109
  10. package/dist/api-context/popover-global.js.map +1 -1
  11. package/dist/api-context/popover.js +1 -93
  12. package/dist/api-context/popover.js.map +1 -1
  13. package/dist/api-context/ui.units.js +1 -22
  14. package/dist/api-context/ui.units.js.map +1 -1
  15. package/dist/components/breadcrumbs.js +1 -64
  16. package/dist/components/breadcrumbs.js.map +1 -1
  17. package/dist/components/copy-to-clipboard.js +1 -111
  18. package/dist/components/copy-to-clipboard.js.map +1 -1
  19. package/dist/components/help-tooltip.js +1 -103
  20. package/dist/components/help-tooltip.js.map +1 -1
  21. package/dist/components/image-with-fallback.js +1 -50
  22. package/dist/components/image-with-fallback.js.map +1 -1
  23. package/dist/components/text-editor.js +1 -117
  24. package/dist/components/text-editor.js.map +1 -1
  25. package/dist/components/text-editor.preview.js +1 -26
  26. package/dist/components/text-editor.preview.js.map +1 -1
  27. package/dist/form/create.autocomplete.chips.js +1 -227
  28. package/dist/form/create.autocomplete.chips.js.map +1 -1
  29. package/dist/form/create.date-expired.js +1 -210
  30. package/dist/form/create.date-expired.js.map +1 -1
  31. package/dist/form/create.date-picker.js +1 -127
  32. package/dist/form/create.date-picker.js.map +1 -1
  33. package/dist/form/create.form-base.js +1 -140
  34. package/dist/form/create.form-base.js.map +1 -1
  35. package/dist/form/create.form-comfirm.js +1 -130
  36. package/dist/form/create.form-comfirm.js.map +1 -1
  37. package/dist/form/create.form-grid-layout.js +1 -187
  38. package/dist/form/create.form-grid-layout.js.map +1 -1
  39. package/dist/form/create.form-grid-layout.units.js +1 -41
  40. package/dist/form/create.form-grid-layout.units.js.map +1 -1
  41. package/dist/form/create.input.file.js +1 -78
  42. package/dist/form/create.input.file.js.map +1 -1
  43. package/dist/form/create.input.js +1 -275
  44. package/dist/form/create.input.js.map +1 -1
  45. package/dist/form/create.select-simple.js +1 -113
  46. package/dist/form/create.select-simple.js.map +1 -1
  47. package/dist/form/create.select-with-api.js +1 -276
  48. package/dist/form/create.select-with-api.js.map +1 -1
  49. package/dist/form/create.text-editor.js +1 -180
  50. package/dist/form/create.text-editor.js.map +1 -1
  51. package/dist/form/dino-form.js +1 -40
  52. package/dist/form/dino-form.js.map +1 -1
  53. package/dist/form/helper.js +1 -156
  54. package/dist/form/helper.js.map +1 -1
  55. package/dist/form/modal-wrapper.js +1 -81
  56. package/dist/form/modal-wrapper.js.map +1 -1
  57. package/dist/form/validator.js +1 -189
  58. package/dist/form/validator.js.map +1 -1
  59. package/dist/hooks/index.js +1 -47
  60. package/dist/hooks/index.js.map +1 -1
  61. package/dist/index.js +1 -32
  62. package/dist/index.js.map +1 -1
  63. package/dist/redux/create.hoc-lazy.js +1 -70
  64. package/dist/redux/create.hoc-lazy.js.map +1 -1
  65. package/dist/redux/dino.js +1 -10
  66. package/dist/redux/dino.js.map +1 -1
  67. package/dist/redux/types.js +1 -8
  68. package/dist/redux/types.js.map +1 -1
  69. package/dist/redux/ui.error-page.js +1 -88
  70. package/dist/redux/ui.error-page.js.map +1 -1
  71. package/dist/redux/vector-404.webp.js +1 -3
  72. package/dist/redux/vector-404.webp.js.map +1 -1
  73. package/dist/table/context.js +1 -14
  74. package/dist/table/context.js.map +1 -1
  75. package/dist/table/create.action-row.js +1 -143
  76. package/dist/table/create.action-row.js.map +1 -1
  77. package/dist/table/create.table.js +1 -245
  78. package/dist/table/create.table.js.map +1 -1
  79. package/dist/table/custom.filter-operators.js +1 -88
  80. package/dist/table/custom.filter-operators.js.map +1 -1
  81. package/dist/table/dino.js +1 -135
  82. package/dist/table/dino.js.map +1 -1
  83. package/dist/table/helpers.js +1 -114
  84. package/dist/table/helpers.js.map +1 -1
  85. package/dist/table/model-filter.js +1 -22
  86. package/dist/table/model-filter.js.map +1 -1
  87. package/dist/table/toolbar-pannel.js +1 -142
  88. package/dist/table/toolbar-pannel.js.map +1 -1
  89. package/dist/table/ui.buttons.js +1 -66
  90. package/dist/table/ui.buttons.js.map +1 -1
  91. package/dist/table/ui.units.js +1 -247
  92. package/dist/table/ui.units.js.map +1 -1
  93. package/dist/utils/dayjs-config.js +1 -11
  94. package/dist/utils/dayjs-config.js.map +1 -1
  95. package/dist/utils/helpers.js +1 -198
  96. package/dist/utils/helpers.js.map +1 -1
  97. package/dist/utils/json-object.js +1 -37
  98. package/dist/utils/json-object.js.map +1 -1
  99. package/dist/utils/query-param.js +1 -171
  100. package/dist/utils/query-param.js.map +1 -1
  101. package/package.json +2 -1
@@ -1,190 +1,2 @@
1
- import { defineProperty as _defineProperty, createClass as _createClass, classCallCheck as _classCallCheck } from '../_virtual/_rollupPluginBabelHelpers.js';
2
- import { formatFileSize } from '../utils/helpers.js';
3
- import '../utils/query-param.js';
4
- import '../utils/dayjs-config.js';
5
-
6
- var _FormValidator;
7
- var SingleRuleValidate;
8
- (function (SingleRuleValidate) {
9
- SingleRuleValidate["Required"] = "Required";
10
- SingleRuleValidate["Regex"] = "Regex";
11
- SingleRuleValidate["RequiredValue"] = "RequiredValue";
12
- SingleRuleValidate["Array"] = "Array";
13
- SingleRuleValidate["Number"] = "Number";
14
- SingleRuleValidate["Email"] = "Email";
15
- SingleRuleValidate["PhoneNumber"] = "PhoneNumber";
16
- SingleRuleValidate["Url"] = "Url";
17
- SingleRuleValidate["File"] = "File";
18
- SingleRuleValidate["FileRequired"] = "FileRequired";
19
- SingleRuleValidate["Custom"] = "Custom";
20
- })(SingleRuleValidate || (SingleRuleValidate = {}));
21
- var MessageDefault = {
22
- Required: 'The {0} is required',
23
- Regex: 'The {0} is not match {1}',
24
- RequiredValue: 'the {0} is not equal {1}',
25
- Array: 'The {0} is not valid',
26
- Number: '{0} must be a number',
27
- Email: 'The {0} is not valid',
28
- PhoneNumber: 'The {0} is not valid',
29
- Url: 'The {0} is not valid',
30
- File: 'File size must be less than {1}',
31
- FileRequired: 'The {0} is required',
32
- Custom: 'Error Custom'
33
- };
34
- var mapRuleOptions = function mapRuleOptions(key, options) {
35
- return options;
36
- };
37
- var FormValidator = /*#__PURE__*/_createClass(function FormValidator(configs) {
38
- var _this = this;
39
- _classCallCheck(this, FormValidator);
40
- _defineProperty(this, "AddRules", function (key) {
41
- var _fieldConfig$Rules;
42
- var fieldConfig = _this.configs[key];
43
- if (!fieldConfig) {
44
- fieldConfig = {
45
- Rules: []
46
- };
47
- _this.configs[key] = fieldConfig;
48
- }
49
- for (var _len = arguments.length, rule = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {
50
- rule[_key - 1] = arguments[_key];
51
- }
52
- (_fieldConfig$Rules = fieldConfig.Rules).push.apply(_fieldConfig$Rules, rule);
53
- return _this;
54
- });
55
- _defineProperty(this, "Required", function (RuleOption, value) {
56
- return value === null || value === undefined || value === '';
57
- });
58
- _defineProperty(this, "Regex", function (RuleOption, value, Regex) {
59
- if (!value) return false;
60
- return !RuleOption.Value.test(value);
61
- });
62
- _defineProperty(this, "RequiredValue", function (RuleOption, value) {
63
- if (!value) return false;
64
- return value !== RuleOption.Value;
65
- });
66
- _defineProperty(this, "Custom", function (RuleOption, value, model) {
67
- if (typeof RuleOption.Value === 'function') {
68
- return RuleOption.Value(value, model);
69
- }
70
- return true;
71
- });
72
- _defineProperty(this, "Array", function (RuleOption, value) {
73
- if (!value) return false;
74
- if (typeof RuleOption.Value === 'number') {
75
- return Array.isArray(value) ? value.length <= RuleOption.Value : true;
76
- }
77
- return true;
78
- });
79
- _defineProperty(this, "Number", function (RuleOption, value) {
80
- if (!value) return false;
81
- return isNaN(Number(value));
82
- });
83
- _defineProperty(this, "Email", function (RuleOption, value) {
84
- if (!value) return false;
85
- var regex = /^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$/;
86
- return !regex.test(value);
87
- });
88
- _defineProperty(this, "PhoneNumber", function (RuleOption, value) {
89
- if (!value) return false;
90
- var phoneRegex = /^(\+?\d{1,4}[\s-]?)?((\(\d{1,4}\))|\d{1,4})[\s-]?\d{1,4}[\s-]?\d{1,9}$/;
91
- return !phoneRegex.test((value !== null && value !== void 0 ? value : '').trim());
92
- });
93
- _defineProperty(this, "Url", function (RuleOption, value) {
94
- if (!value) return false;
95
- try {
96
- new URL(value);
97
- return false;
98
- } catch (err) {
99
- return true;
100
- }
101
- });
102
- _defineProperty(this, "File", function (RuleOption, value) {
103
- if (!value) return false;
104
- var options = mapRuleOptions('File', RuleOption.options);
105
- var files = Array.isArray(value) ? value : [value];
106
- if (!options) return false;
107
- if (options.all === true) {
108
- var size = files.reduce(function (a, b) {
109
- a += b.size;
110
- return a;
111
- }, 0);
112
- return size > options.maxSize;
113
- } else {
114
- return files.some(function (x) {
115
- return x.size > options.maxSize;
116
- });
117
- }
118
- });
119
- _defineProperty(this, "FileRequired", function (RuleOption, value) {
120
- var files = Array.isArray(value) ? value : [value];
121
- return !!files.filter(function (x) {
122
- return !!x;
123
- }).some(function (x) {
124
- return x.size <= 0;
125
- });
126
- });
127
- _defineProperty(this, "RenderMessage", function (RuleOption, key, label) {
128
- if (!RuleOption.message) {
129
- RuleOption.message = MessageDefault[RuleOption.rule].replace('{0}', label !== null && label !== void 0 ? label : key);
130
- switch (RuleOption.rule) {
131
- case SingleRuleValidate.Regex:
132
- {
133
- RuleOption.message = RuleOption.message.replace('{1}', RuleOption.Value.source);
134
- break;
135
- }
136
- case SingleRuleValidate.RequiredValue:
137
- {
138
- var _RuleOption$Value$toS, _RuleOption$Value;
139
- RuleOption.message = RuleOption.message.replace('{1}', (_RuleOption$Value$toS = (_RuleOption$Value = RuleOption.Value) === null || _RuleOption$Value === void 0 ? void 0 : _RuleOption$Value.toString()) !== null && _RuleOption$Value$toS !== void 0 ? _RuleOption$Value$toS : '');
140
- break;
141
- }
142
- case SingleRuleValidate.File:
143
- {
144
- var options = mapRuleOptions('File', RuleOption.options);
145
- if ((options === null || options === void 0 ? void 0 : options.all) === true) {
146
- var _options$maxSize;
147
- RuleOption.message = "Total file size must be less than ".concat(formatFileSize(((_options$maxSize = options === null || options === void 0 ? void 0 : options.maxSize) !== null && _options$maxSize !== void 0 ? _options$maxSize : 0) / 1024));
148
- } else {
149
- var _options$maxSize2;
150
- RuleOption.message = RuleOption.message.replace('{1}', formatFileSize(((_options$maxSize2 = options === null || options === void 0 ? void 0 : options.maxSize) !== null && _options$maxSize2 !== void 0 ? _options$maxSize2 : 0) / 1024));
151
- }
152
- break;
153
- }
154
- }
155
- }
156
- RuleOption.message = RuleOption.message.replace('{0}', key);
157
- return RuleOption;
158
- });
159
- _defineProperty(this, "run", function (model) {
160
- var keys = Object.keys(_this.configs);
161
- var data = {};
162
- keys.forEach(function (key) {
163
- var config = _this.configs[key];
164
- if (!config) return;
165
- var tmp = _this.Executed(config, model[key], model);
166
- if (tmp.length < 1) return;
167
- data[key] = tmp.map(function (x) {
168
- return _this.RenderMessage(x, key, config.label);
169
- });
170
- });
171
- return data;
172
- });
173
- _defineProperty(this, "Executed", function (Config, valueField, model) {
174
- return Config.Rules.filter(function (Value) {
175
- var action = _this[Value.rule.toString()];
176
- return action && action(Value, valueField, model);
177
- });
178
- });
179
- this.configs = configs;
180
- });
181
- _FormValidator = FormValidator;
182
- _defineProperty(FormValidator, "initial", function (configs) {
183
- return new _FormValidator(configs);
184
- });
185
- var createFormValidator = function createFormValidator() {
186
- return new FormValidator({});
187
- };
188
-
189
- export { SingleRuleValidate, createFormValidator, FormValidator as default, mapRuleOptions };
1
+ import{defineProperty as e,createClass as r,classCallCheck as i}from"../_virtual/_rollupPluginBabelHelpers.js";import{formatFileSize as u}from"../utils/helpers.js";import"../utils/query-param.js";import"../utils/dayjs-config.js";var t,n;!function(e){e.Required="Required",e.Regex="Regex",e.RequiredValue="RequiredValue",e.Array="Array",e.Number="Number",e.Email="Email",e.PhoneNumber="PhoneNumber",e.Url="Url",e.File="File",e.FileRequired="FileRequired",e.Custom="Custom"}(n||(n={}));var s={Required:"The {0} is required",Regex:"The {0} is not match {1}",RequiredValue:"the {0} is not equal {1}",Array:"The {0} is not valid",Number:"{0} must be a number",Email:"The {0} is not valid",PhoneNumber:"The {0} is not valid",Url:"The {0} is not valid",File:"File size must be less than {1}",FileRequired:"The {0} is required",Custom:"Error Custom"},a=function(e,r){return r},l=r((function r(t){var l=this;i(this,r),e(this,"AddRules",(function(e){var r,i=l.configs[e];i||(i={Rules:[]},l.configs[e]=i);for(var u=arguments.length,t=new Array(u>1?u-1:0),n=1;n<u;n++)t[n-1]=arguments[n];return(r=i.Rules).push.apply(r,t),l})),e(this,"Required",(function(e,r){return null==r||""===r})),e(this,"Regex",(function(e,r,i){return!!r&&!e.Value.test(r)})),e(this,"RequiredValue",(function(e,r){return!!r&&r!==e.Value})),e(this,"Custom",(function(e,r,i){return"function"!=typeof e.Value||e.Value(r,i)})),e(this,"Array",(function(e,r){return!!r&&("number"!=typeof e.Value||(!Array.isArray(r)||r.length<=e.Value))})),e(this,"Number",(function(e,r){return!!r&&isNaN(Number(r))})),e(this,"Email",(function(e,r){if(!r)return!1;return!/^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$/.test(r)})),e(this,"PhoneNumber",(function(e,r){if(!r)return!1;return!/^(\+?\d{1,4}[\s-]?)?((\(\d{1,4}\))|\d{1,4})[\s-]?\d{1,4}[\s-]?\d{1,9}$/.test((null!=r?r:"").trim())})),e(this,"Url",(function(e,r){if(!r)return!1;try{return new URL(r),!1}catch(e){return!0}})),e(this,"File",(function(e,r){if(!r)return!1;var i=a(0,e.options),u=Array.isArray(r)?r:[r];return!!i&&(!0===i.all?u.reduce((function(e,r){return e+=r.size}),0)>i.maxSize:u.some((function(e){return e.size>i.maxSize})))})),e(this,"FileRequired",(function(e,r){return!!(Array.isArray(r)?r:[r]).filter((function(e){return!!e})).some((function(e){return e.size<=0}))})),e(this,"RenderMessage",(function(e,r,i){if(!e.message)switch(e.message=s[e.rule].replace("{0}",null!=i?i:r),e.rule){case n.Regex:e.message=e.message.replace("{1}",e.Value.source);break;case n.RequiredValue:var t,l;e.message=e.message.replace("{1}",null!==(t=null===(l=e.Value)||void 0===l?void 0:l.toString())&&void 0!==t?t:"");break;case n.File:var o,c,f=a(0,e.options);if(!0===(null==f?void 0:f.all))e.message="Total file size must be less than ".concat(u((null!==(o=null==f?void 0:f.maxSize)&&void 0!==o?o:0)/1024));else e.message=e.message.replace("{1}",u((null!==(c=null==f?void 0:f.maxSize)&&void 0!==c?c:0)/1024))}return e.message=e.message.replace("{0}",r),e})),e(this,"run",(function(e){var r=Object.keys(l.configs),i={};return r.forEach((function(r){var u=l.configs[r];if(u){var t=l.Executed(u,e[r],e);t.length<1||(i[r]=t.map((function(e){return l.RenderMessage(e,r,u.label)})))}})),i})),e(this,"Executed",(function(e,r,i){return e.Rules.filter((function(e){var u=l[e.rule.toString()];return u&&u(e,r,i)}))})),this.configs=t}));t=l,e(l,"initial",(function(e){return new t(e)}));var o=function(){return new l({})};export{n as SingleRuleValidate,o as createFormValidator,l as default,a as mapRuleOptions};
190
2
  //# sourceMappingURL=validator.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"validator.js","sources":["../../src/form/validator.ts"],"sourcesContent":["import { formatFileSize } from '../utils'\r\n\r\nexport type IModelBase = { [key: string]: any }\r\n\r\nexport enum SingleRuleValidate {\r\n Required = 'Required',\r\n Regex = 'Regex',\r\n RequiredValue = 'RequiredValue',\r\n Array = 'Array',\r\n Number = 'Number',\r\n Email = 'Email',\r\n PhoneNumber = 'PhoneNumber',\r\n Url = 'Url',\r\n File = 'File',\r\n FileRequired = 'FileRequired',\r\n Custom = 'Custom'\r\n}\r\n\r\nconst MessageDefault = {\r\n Required: 'The {0} is required',\r\n Regex: 'The {0} is not match {1}',\r\n RequiredValue: 'the {0} is not equal {1}',\r\n Array: 'The {0} is not valid',\r\n Number: '{0} must be a number',\r\n Email: 'The {0} is not valid',\r\n PhoneNumber: 'The {0} is not valid',\r\n Url: 'The {0} is not valid',\r\n File: 'File size must be less than {1}',\r\n FileRequired: 'The {0} is required',\r\n Custom: 'Error Custom'\r\n}\r\n\r\nexport interface IRuleOptions {\r\n File: {\r\n maxSize: number\r\n // toal size of files\r\n all?: boolean\r\n }\r\n}\r\n\r\nexport const mapRuleOptions = <TK extends keyof IRuleOptions>(key: TK, options?: IRuleOptions[TK]) => options\r\n\r\nexport interface IRuleOption<TModel = any> {\r\n rule: SingleRuleValidate\r\n message?: string\r\n Value?: RegExp | ((value: any, model: TModel) => boolean) | number | Array<any> | boolean\r\n options?: any\r\n}\r\n\r\nexport interface IConfigValue<TModel = any> {\r\n Rules: IRuleOption<TModel>[]\r\n label?: string\r\n}\r\n\r\nexport interface IModelError {\r\n message: string\r\n error: boolean\r\n}\r\n\r\nexport type IFormValidatorConfig<TModel> = {\r\n [key in keyof Extract<TModel, IModelBase>]?: IConfigValue<TModel>\r\n}\r\n\r\nexport type IPartialError<TModel> = {\r\n [key in keyof TModel]?: IRuleOption<TModel>[]\r\n}\r\n\r\nexport default class FormValidator<TModel> {\r\n configs: IFormValidatorConfig<TModel>\r\n constructor(configs: IFormValidatorConfig<TModel>) {\r\n this.configs = configs\r\n }\r\n\r\n static initial = <T>(configs: IFormValidatorConfig<T>) => new FormValidator(configs)\r\n\r\n AddRules = (key: keyof TModel, ...rule: IRuleOption<TModel>[]) => {\r\n let fieldConfig = this.configs[key]\r\n if (!fieldConfig) {\r\n fieldConfig = { Rules: [] }\r\n this.configs[key] = fieldConfig\r\n }\r\n fieldConfig.Rules.push(...rule)\r\n return this\r\n }\r\n\r\n Required = (RuleOption: IRuleOption, value: any) => {\r\n return value === null || value === undefined || value === ''\r\n }\r\n Regex = (RuleOption: IRuleOption, value: string, Regex: RegExp) => {\r\n if (!value) return false\r\n return !(RuleOption.Value as RegExp).test(value)\r\n }\r\n RequiredValue = (RuleOption: IRuleOption, value: any) => {\r\n if (!value) return false\r\n return value !== RuleOption.Value\r\n }\r\n Custom = (RuleOption: IRuleOption, value: any, model: any) => {\r\n if (typeof RuleOption.Value === 'function') {\r\n return RuleOption.Value(value, model)\r\n }\r\n return true\r\n }\r\n Array = (RuleOption: IRuleOption, value: any) => {\r\n if (!value) return false\r\n if (typeof RuleOption.Value === 'number') {\r\n return Array.isArray(value) ? value.length <= RuleOption.Value : true\r\n }\r\n return true\r\n }\r\n Number = (RuleOption: IRuleOption, value: any) => {\r\n if (!value) return false\r\n return isNaN(Number(value))\r\n }\r\n Email = (RuleOption: IRuleOption, value: any) => {\r\n if (!value) return false\r\n const regex = /^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\\.[a-zA-Z]{2,}$/\r\n return !regex.test(value)\r\n }\r\n PhoneNumber = (RuleOption: IRuleOption, value: any) => {\r\n if (!value) return false\r\n const phoneRegex = /^(\\+?\\d{1,4}[\\s-]?)?((\\(\\d{1,4}\\))|\\d{1,4})[\\s-]?\\d{1,4}[\\s-]?\\d{1,9}$/\r\n return !phoneRegex.test((value ?? '').trim())\r\n }\r\n Url = (RuleOption: IRuleOption, value: any) => {\r\n if (!value) return false\r\n try {\r\n new URL(value)\r\n return false\r\n } catch (err) {\r\n return true\r\n }\r\n }\r\n File = (RuleOption: IRuleOption, value: any) => {\r\n if (!value) return false\r\n const options = mapRuleOptions('File', RuleOption.options)\r\n const files: File[] = Array.isArray(value) ? value : [value]\r\n if (!options) return false\r\n if (options.all === true) {\r\n const size = files.reduce((a, b) => {\r\n a += b.size\r\n return a\r\n }, 0)\r\n return size > options.maxSize\r\n } else {\r\n return files.some((x) => x.size > options.maxSize)\r\n }\r\n }\r\n FileRequired = (RuleOption: IRuleOption, value: any) => {\r\n const files: File[] = Array.isArray(value) ? value : [value]\r\n return !!files.filter((x) => !!x).some((x) => x.size <= 0)\r\n }\r\n RenderMessage = (RuleOption: IRuleOption, key: string, label?: string) => {\r\n if (!RuleOption.message) {\r\n RuleOption.message = MessageDefault[RuleOption.rule].replace('{0}', label ?? key)\r\n switch (RuleOption.rule) {\r\n case SingleRuleValidate.Regex: {\r\n RuleOption.message = RuleOption.message.replace('{1}', (RuleOption.Value as RegExp).source)\r\n break\r\n }\r\n case SingleRuleValidate.RequiredValue: {\r\n RuleOption.message = RuleOption.message.replace('{1}', RuleOption.Value?.toString() ?? '')\r\n break\r\n }\r\n case SingleRuleValidate.File: {\r\n const options = mapRuleOptions('File', RuleOption.options)\r\n if (options?.all === true) {\r\n RuleOption.message = `Total file size must be less than ${formatFileSize((options?.maxSize ?? 0) / 1024)}`\r\n } else {\r\n RuleOption.message = RuleOption.message.replace('{1}', formatFileSize((options?.maxSize ?? 0) / 1024))\r\n }\r\n break\r\n }\r\n default:\r\n break\r\n }\r\n }\r\n RuleOption.message = RuleOption.message.replace('{0}', key)\r\n return RuleOption\r\n }\r\n run = (model: TModel) => {\r\n const keys = Object.keys(this.configs)\r\n const data: IPartialError<TModel> = {}\r\n keys.forEach((key) => {\r\n const config = this.configs[key]\r\n if (!config) return\r\n const tmp = this.Executed(config, (model as any)[key], model)\r\n if (tmp.length < 1) return\r\n ;(data as any)[key] = tmp.map((x) => this.RenderMessage(x, key, config.label))\r\n })\r\n return data\r\n }\r\n Executed = (Config: IConfigValue, valueField: any, model: any) => {\r\n return Config.Rules.filter((Value) => {\r\n const action = (this as any)[Value.rule.toString()]\r\n return action && action(Value, valueField, model)\r\n })\r\n }\r\n}\r\n\r\nexport const createFormValidator = <TModel>() => {\r\n return new FormValidator<Partial<TModel>>({})\r\n}\r\n"],"names":["SingleRuleValidate","MessageDefault","Required","Regex","RequiredValue","Array","Number","Email","PhoneNumber","Url","File","FileRequired","Custom","mapRuleOptions","key","options","FormValidator","_createClass","configs","_this","_classCallCheck","_defineProperty","_fieldConfig$Rules","fieldConfig","Rules","_len","arguments","length","rule","_key","push","apply","RuleOption","value","undefined","Value","test","model","isArray","isNaN","regex","phoneRegex","trim","URL","err","files","all","size","reduce","a","b","maxSize","some","x","filter","label","message","replace","source","_RuleOption$Value$toS","_RuleOption$Value","toString","_options$maxSize","concat","formatFileSize","_options$maxSize2","keys","Object","data","forEach","config","tmp","Executed","map","RenderMessage","Config","valueField","action","_FormValidator","createFormValidator"],"mappings":"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"}
1
+ {"version":3,"file":"validator.js","sources":["../../src/form/validator.ts"],"sourcesContent":["import { formatFileSize } from '../utils'\r\n\r\nexport type IModelBase = { [key: string]: any }\r\n\r\nexport enum SingleRuleValidate {\r\n Required = 'Required',\r\n Regex = 'Regex',\r\n RequiredValue = 'RequiredValue',\r\n Array = 'Array',\r\n Number = 'Number',\r\n Email = 'Email',\r\n PhoneNumber = 'PhoneNumber',\r\n Url = 'Url',\r\n File = 'File',\r\n FileRequired = 'FileRequired',\r\n Custom = 'Custom'\r\n}\r\n\r\nconst MessageDefault = {\r\n Required: 'The {0} is required',\r\n Regex: 'The {0} is not match {1}',\r\n RequiredValue: 'the {0} is not equal {1}',\r\n Array: 'The {0} is not valid',\r\n Number: '{0} must be a number',\r\n Email: 'The {0} is not valid',\r\n PhoneNumber: 'The {0} is not valid',\r\n Url: 'The {0} is not valid',\r\n File: 'File size must be less than {1}',\r\n FileRequired: 'The {0} is required',\r\n Custom: 'Error Custom'\r\n}\r\n\r\nexport interface IRuleOptions {\r\n File: {\r\n maxSize: number\r\n // toal size of files\r\n all?: boolean\r\n }\r\n}\r\n\r\nexport const mapRuleOptions = <TK extends keyof IRuleOptions>(key: TK, options?: IRuleOptions[TK]) => options\r\n\r\nexport interface IRuleOption<TModel = any> {\r\n rule: SingleRuleValidate\r\n message?: string\r\n Value?: RegExp | ((value: any, model: TModel) => boolean) | number | Array<any> | boolean\r\n options?: any\r\n}\r\n\r\nexport interface IConfigValue<TModel = any> {\r\n Rules: IRuleOption<TModel>[]\r\n label?: string\r\n}\r\n\r\nexport interface IModelError {\r\n message: string\r\n error: boolean\r\n}\r\n\r\nexport type IFormValidatorConfig<TModel> = {\r\n [key in keyof Extract<TModel, IModelBase>]?: IConfigValue<TModel>\r\n}\r\n\r\nexport type IPartialError<TModel> = {\r\n [key in keyof TModel]?: IRuleOption<TModel>[]\r\n}\r\n\r\nexport default class FormValidator<TModel> {\r\n configs: IFormValidatorConfig<TModel>\r\n constructor(configs: IFormValidatorConfig<TModel>) {\r\n this.configs = configs\r\n }\r\n\r\n static initial = <T>(configs: IFormValidatorConfig<T>) => new FormValidator(configs)\r\n\r\n AddRules = (key: keyof TModel, ...rule: IRuleOption<TModel>[]) => {\r\n let fieldConfig = this.configs[key]\r\n if (!fieldConfig) {\r\n fieldConfig = { Rules: [] }\r\n this.configs[key] = fieldConfig\r\n }\r\n fieldConfig.Rules.push(...rule)\r\n return this\r\n }\r\n\r\n Required = (RuleOption: IRuleOption, value: any) => {\r\n return value === null || value === undefined || value === ''\r\n }\r\n Regex = (RuleOption: IRuleOption, value: string, Regex: RegExp) => {\r\n if (!value) return false\r\n return !(RuleOption.Value as RegExp).test(value)\r\n }\r\n RequiredValue = (RuleOption: IRuleOption, value: any) => {\r\n if (!value) return false\r\n return value !== RuleOption.Value\r\n }\r\n Custom = (RuleOption: IRuleOption, value: any, model: any) => {\r\n if (typeof RuleOption.Value === 'function') {\r\n return RuleOption.Value(value, model)\r\n }\r\n return true\r\n }\r\n Array = (RuleOption: IRuleOption, value: any) => {\r\n if (!value) return false\r\n if (typeof RuleOption.Value === 'number') {\r\n return Array.isArray(value) ? value.length <= RuleOption.Value : true\r\n }\r\n return true\r\n }\r\n Number = (RuleOption: IRuleOption, value: any) => {\r\n if (!value) return false\r\n return isNaN(Number(value))\r\n }\r\n Email = (RuleOption: IRuleOption, value: any) => {\r\n if (!value) return false\r\n const regex = /^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\\.[a-zA-Z]{2,}$/\r\n return !regex.test(value)\r\n }\r\n PhoneNumber = (RuleOption: IRuleOption, value: any) => {\r\n if (!value) return false\r\n const phoneRegex = /^(\\+?\\d{1,4}[\\s-]?)?((\\(\\d{1,4}\\))|\\d{1,4})[\\s-]?\\d{1,4}[\\s-]?\\d{1,9}$/\r\n return !phoneRegex.test((value ?? '').trim())\r\n }\r\n Url = (RuleOption: IRuleOption, value: any) => {\r\n if (!value) return false\r\n try {\r\n new URL(value)\r\n return false\r\n } catch (err) {\r\n return true\r\n }\r\n }\r\n File = (RuleOption: IRuleOption, value: any) => {\r\n if (!value) return false\r\n const options = mapRuleOptions('File', RuleOption.options)\r\n const files: File[] = Array.isArray(value) ? value : [value]\r\n if (!options) return false\r\n if (options.all === true) {\r\n const size = files.reduce((a, b) => {\r\n a += b.size\r\n return a\r\n }, 0)\r\n return size > options.maxSize\r\n } else {\r\n return files.some((x) => x.size > options.maxSize)\r\n }\r\n }\r\n FileRequired = (RuleOption: IRuleOption, value: any) => {\r\n const files: File[] = Array.isArray(value) ? value : [value]\r\n return !!files.filter((x) => !!x).some((x) => x.size <= 0)\r\n }\r\n RenderMessage = (RuleOption: IRuleOption, key: string, label?: string) => {\r\n if (!RuleOption.message) {\r\n RuleOption.message = MessageDefault[RuleOption.rule].replace('{0}', label ?? key)\r\n switch (RuleOption.rule) {\r\n case SingleRuleValidate.Regex: {\r\n RuleOption.message = RuleOption.message.replace('{1}', (RuleOption.Value as RegExp).source)\r\n break\r\n }\r\n case SingleRuleValidate.RequiredValue: {\r\n RuleOption.message = RuleOption.message.replace('{1}', RuleOption.Value?.toString() ?? '')\r\n break\r\n }\r\n case SingleRuleValidate.File: {\r\n const options = mapRuleOptions('File', RuleOption.options)\r\n if (options?.all === true) {\r\n RuleOption.message = `Total file size must be less than ${formatFileSize((options?.maxSize ?? 0) / 1024)}`\r\n } else {\r\n RuleOption.message = RuleOption.message.replace('{1}', formatFileSize((options?.maxSize ?? 0) / 1024))\r\n }\r\n break\r\n }\r\n default:\r\n break\r\n }\r\n }\r\n RuleOption.message = RuleOption.message.replace('{0}', key)\r\n return RuleOption\r\n }\r\n run = (model: TModel) => {\r\n const keys = Object.keys(this.configs)\r\n const data: IPartialError<TModel> = {}\r\n keys.forEach((key) => {\r\n const config = this.configs[key]\r\n if (!config) return\r\n const tmp = this.Executed(config, (model as any)[key], model)\r\n if (tmp.length < 1) return\r\n ;(data as any)[key] = tmp.map((x) => this.RenderMessage(x, key, config.label))\r\n })\r\n return data\r\n }\r\n Executed = (Config: IConfigValue, valueField: any, model: any) => {\r\n return Config.Rules.filter((Value) => {\r\n const action = (this as any)[Value.rule.toString()]\r\n return action && action(Value, valueField, model)\r\n })\r\n }\r\n}\r\n\r\nexport const createFormValidator = <TModel>() => {\r\n return new FormValidator<Partial<TModel>>({})\r\n}\r\n"],"names":["SingleRuleValidate","MessageDefault","Required","Regex","RequiredValue","Array","Number","Email","PhoneNumber","Url","File","FileRequired","Custom","mapRuleOptions","key","options","FormValidator","_createClass","configs","_this","this","_classCallCheck","_defineProperty","_fieldConfig$Rules","fieldConfig","Rules","_len","arguments","length","rule","_key","push","apply","RuleOption","value","Value","test","model","isArray","isNaN","trim","URL","err","files","all","reduce","a","b","size","maxSize","some","x","filter","label","message","replace","source","_RuleOption$Value$toS","_RuleOption$Value","toString","_options$maxSize","_options$maxSize2","concat","formatFileSize","keys","Object","data","forEach","config","tmp","Executed","map","RenderMessage","Config","valueField","action","_FormValidator","createFormValidator"],"mappings":"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"}
@@ -1,48 +1,2 @@
1
- import { slicedToArray as _slicedToArray } from '../_virtual/_rollupPluginBabelHelpers.js';
2
- import { useState, useEffect } from 'react';
3
-
4
- var useCheckScrolled = function useCheckScrolled() {
5
- var _useState = useState(false),
6
- _useState2 = _slicedToArray(_useState, 2),
7
- isScrolled = _useState2[0],
8
- setIsScrolled = _useState2[1];
9
- useEffect(function () {
10
- var handleScroll = function handleScroll() {
11
- var scrolled = window.scrollY > 0;
12
- if (scrolled !== isScrolled) setIsScrolled(scrolled);
13
- };
14
- window.addEventListener('scroll', handleScroll);
15
- return function () {
16
- return window.removeEventListener('scroll', handleScroll);
17
- };
18
- }, [isScrolled]);
19
- useEffect(function () {
20
- var scrolled = window.scrollY > 0;
21
- if (scrolled !== isScrolled) setIsScrolled(scrolled);
22
- }, []);
23
- return {
24
- isScrolled: isScrolled
25
- };
26
- };
27
- var useDebounce = function useDebounce(value, delay) {
28
- var _useState3 = useState(value),
29
- _useState4 = _slicedToArray(_useState3, 2),
30
- debouncedValue = _useState4[0],
31
- setDebouncedValue = _useState4[1];
32
- useEffect(function () {
33
- if (delay <= 0) {
34
- setDebouncedValue(value);
35
- return;
36
- }
37
- var handler = setTimeout(function () {
38
- setDebouncedValue(value);
39
- }, delay);
40
- return function () {
41
- clearTimeout(handler);
42
- };
43
- }, [value, delay]);
44
- return debouncedValue;
45
- };
46
-
47
- export { useCheckScrolled, useDebounce };
1
+ import{slicedToArray as r}from"../_virtual/_rollupPluginBabelHelpers.js";import{useState as n,useEffect as o}from"react";var t=function(){var t=n(!1),e=r(t,2),i=e[0],u=e[1];return o((function(){var r=function(){var r=window.scrollY>0;r!==i&&u(r)};return window.addEventListener("scroll",r),function(){return window.removeEventListener("scroll",r)}}),[i]),o((function(){var r=window.scrollY>0;r!==i&&u(r)}),[]),{isScrolled:i}},e=function(t,e){var i=n(t),u=r(i,2),l=u[0],c=u[1];return o((function(){if(!(e<=0)){var r=setTimeout((function(){c(t)}),e);return function(){clearTimeout(r)}}c(t)}),[t,e]),l};export{t as useCheckScrolled,e as useDebounce};
48
2
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../src/hooks/index.ts"],"sourcesContent":["/* eslint-disable react-hooks/exhaustive-deps*/\r\nimport { useEffect, useState } from 'react'\r\n\r\nexport const useCheckScrolled = () => {\r\n const [isScrolled, setIsScrolled] = useState(false)\r\n\r\n useEffect(() => {\r\n const handleScroll = () => {\r\n const scrolled = window.scrollY > 0\r\n if (scrolled !== isScrolled) setIsScrolled(scrolled)\r\n }\r\n\r\n window.addEventListener('scroll', handleScroll)\r\n return () => window.removeEventListener('scroll', handleScroll)\r\n }, [isScrolled])\r\n\r\n useEffect(() => {\r\n const scrolled = window.scrollY > 0\r\n if (scrolled !== isScrolled) setIsScrolled(scrolled)\r\n }, [])\r\n\r\n return { isScrolled }\r\n}\r\n\r\nexport const useDebounce = <T>(value: T, delay: number): T => {\r\n const [debouncedValue, setDebouncedValue] = useState<T>(value)\r\n\r\n useEffect(() => {\r\n if (delay <= 0) {\r\n setDebouncedValue(value)\r\n return\r\n }\r\n\r\n const handler = setTimeout(() => {\r\n setDebouncedValue(value)\r\n }, delay)\r\n\r\n return () => {\r\n clearTimeout(handler)\r\n }\r\n }, [value, delay])\r\n\r\n return debouncedValue\r\n}\r\n"],"names":["useCheckScrolled","_useState","useState","_useState2","_slicedToArray","isScrolled","setIsScrolled","useEffect","handleScroll","scrolled","window","scrollY","addEventListener","removeEventListener","useDebounce","value","delay","_useState3","_useState4","debouncedValue","setDebouncedValue","handler","setTimeout","clearTimeout"],"mappings":";;;IAGaA,gBAAgB,GAAG,SAAnBA,gBAAgBA,GAAQ;AACnC,EAAA,IAAAC,SAAA,GAAoCC,QAAQ,CAAC,KAAK,CAAC;IAAAC,UAAA,GAAAC,cAAA,CAAAH,SAAA,EAAA,CAAA,CAAA;AAA5CI,IAAAA,UAAU,GAAAF,UAAA,CAAA,CAAA,CAAA;AAAEG,IAAAA,aAAa,GAAAH,UAAA,CAAA,CAAA,CAAA;AAEhCI,EAAAA,SAAS,CAAC,YAAK;AACb,IAAA,IAAMC,YAAY,GAAG,SAAfA,YAAYA,GAAQ;AACxB,MAAA,IAAMC,QAAQ,GAAGC,MAAM,CAACC,OAAO,GAAG,CAAC;AACnC,MAAA,IAAIF,QAAQ,KAAKJ,UAAU,EAAEC,aAAa,CAACG,QAAQ,CAAC;KACrD;AAEDC,IAAAA,MAAM,CAACE,gBAAgB,CAAC,QAAQ,EAAEJ,YAAY,CAAC;IAC/C,OAAO,YAAA;AAAA,MAAA,OAAME,MAAM,CAACG,mBAAmB,CAAC,QAAQ,EAAEL,YAAY,CAAC;AAAA,KAAA;AACjE,GAAC,EAAE,CAACH,UAAU,CAAC,CAAC;AAEhBE,EAAAA,SAAS,CAAC,YAAK;AACb,IAAA,IAAME,QAAQ,GAAGC,MAAM,CAACC,OAAO,GAAG,CAAC;AACnC,IAAA,IAAIF,QAAQ,KAAKJ,UAAU,EAAEC,aAAa,CAACG,QAAQ,CAAC;GACrD,EAAE,EAAE,CAAC;EAEN,OAAO;AAAEJ,IAAAA,UAAU,EAAVA;GAAY;AACvB;AAEO,IAAMS,WAAW,GAAG,SAAdA,WAAWA,CAAOC,KAAQ,EAAEC,KAAa,EAAO;AAC3D,EAAA,IAAAC,UAAA,GAA4Cf,QAAQ,CAAIa,KAAK,CAAC;IAAAG,UAAA,GAAAd,cAAA,CAAAa,UAAA,EAAA,CAAA,CAAA;AAAvDE,IAAAA,cAAc,GAAAD,UAAA,CAAA,CAAA,CAAA;AAAEE,IAAAA,iBAAiB,GAAAF,UAAA,CAAA,CAAA,CAAA;AAExCX,EAAAA,SAAS,CAAC,YAAK;IACb,IAAIS,KAAK,IAAI,CAAC,EAAE;MACdI,iBAAiB,CAACL,KAAK,CAAC;AACxB,MAAA;AACD;AAED,IAAA,IAAMM,OAAO,GAAGC,UAAU,CAAC,YAAK;MAC9BF,iBAAiB,CAACL,KAAK,CAAC;KACzB,EAAEC,KAAK,CAAC;AAET,IAAA,OAAO,YAAK;MACVO,YAAY,CAACF,OAAO,CAAC;KACtB;AACH,GAAC,EAAE,CAACN,KAAK,EAAEC,KAAK,CAAC,CAAC;AAElB,EAAA,OAAOG,cAAc;AACvB;;;;"}
1
+ {"version":3,"file":"index.js","sources":["../../src/hooks/index.ts"],"sourcesContent":["/* eslint-disable react-hooks/exhaustive-deps*/\r\nimport { useEffect, useState } from 'react'\r\n\r\nexport const useCheckScrolled = () => {\r\n const [isScrolled, setIsScrolled] = useState(false)\r\n\r\n useEffect(() => {\r\n const handleScroll = () => {\r\n const scrolled = window.scrollY > 0\r\n if (scrolled !== isScrolled) setIsScrolled(scrolled)\r\n }\r\n\r\n window.addEventListener('scroll', handleScroll)\r\n return () => window.removeEventListener('scroll', handleScroll)\r\n }, [isScrolled])\r\n\r\n useEffect(() => {\r\n const scrolled = window.scrollY > 0\r\n if (scrolled !== isScrolled) setIsScrolled(scrolled)\r\n }, [])\r\n\r\n return { isScrolled }\r\n}\r\n\r\nexport const useDebounce = <T>(value: T, delay: number): T => {\r\n const [debouncedValue, setDebouncedValue] = useState<T>(value)\r\n\r\n useEffect(() => {\r\n if (delay <= 0) {\r\n setDebouncedValue(value)\r\n return\r\n }\r\n\r\n const handler = setTimeout(() => {\r\n setDebouncedValue(value)\r\n }, delay)\r\n\r\n return () => {\r\n clearTimeout(handler)\r\n }\r\n }, [value, delay])\r\n\r\n return debouncedValue\r\n}\r\n"],"names":["useCheckScrolled","_useState","useState","_useState2","_slicedToArray","isScrolled","setIsScrolled","useEffect","handleScroll","scrolled","window","scrollY","addEventListener","removeEventListener","useDebounce","value","delay","_useState3","_useState4","debouncedValue","setDebouncedValue","handler","setTimeout","clearTimeout"],"mappings":"6HAGaA,EAAmB,WAC9B,IAAAC,EAAoCC,GAAS,GAAMC,EAAAC,EAAAH,EAAA,GAA5CI,EAAUF,EAAA,GAAEG,EAAaH,EAAA,GAiBhC,OAfAI,GAAU,WACR,IAAMC,EAAe,WACnB,IAAMC,EAAWC,OAAOC,QAAU,EAC9BF,IAAaJ,GAAYC,EAAcG,EAC5C,EAGD,OADAC,OAAOE,iBAAiB,SAAUJ,GAC3B,WAAA,OAAME,OAAOG,oBAAoB,SAAUL,EAAa,CACjE,GAAG,CAACH,IAEJE,GAAU,WACR,IAAME,EAAWC,OAAOC,QAAU,EAC9BF,IAAaJ,GAAYC,EAAcG,EAC5C,GAAE,IAEI,CAAEJ,WAAAA,EACX,EAEaS,EAAc,SAAIC,EAAUC,GACvC,IAAAC,EAA4Cf,EAAYa,GAAMG,EAAAd,EAAAa,EAAA,GAAvDE,EAAcD,EAAA,GAAEE,EAAiBF,EAAA,GAiBxC,OAfAX,GAAU,WACR,KAAIS,GAAS,GAAb,CAKA,IAAMK,EAAUC,YAAW,WACzBF,EAAkBL,EACnB,GAAEC,GAEH,OAAO,WACLO,aAAaF,EACd,CARA,CAFCD,EAAkBL,EAWtB,GAAG,CAACA,EAAOC,IAEJG,CACT"}
package/dist/index.js CHANGED
@@ -1,33 +1,2 @@
1
- export { default as ApiPopover, ApiPopoverContext, MapApiPopoverContext, withApiPopoverContext } from './api-context/popover.js';
2
- export { AlertDialog, default as AlertGlobal, ApiAlertContext } from './api-context/alert-global.js';
3
- export { default as DrawerGlobal } from './api-context/drawer-global.js';
4
- export { default as GlobalModal, GlobalModalContext, MapGlobalModalContext, withApiGlobalModalConsumerContext, withApiGlobalModalContext } from './api-context/global-modal.js';
5
- export { MapPopoverGlobalContext, default as PopoverGlobal, PopoverGlobalApi, PopoverGlobalContext, PopoverGlobalProvider, withPopoverGlobalContext } from './api-context/popover-global.js';
6
- export { default as Breadcrumbs } from './components/breadcrumbs.js';
7
- export { default as CopyToClipboard } from './components/copy-to-clipboard.js';
8
- export { default as ImageWithFallback } from './components/image-with-fallback.js';
9
- export { default as HelpTooltip, HelpTooltipWrap } from './components/help-tooltip.js';
10
- export { default as TextEditorPreview } from './components/text-editor.preview.js';
11
- export { default as TextEditor, textEditorClasses } from './components/text-editor.js';
12
- export { default as FormValidator, SingleRuleValidate, createFormValidator, mapRuleOptions } from './form/validator.js';
13
- export { default as DinoForm } from './form/dino-form.js';
14
- export { convertFormDataToJson, getErrorMessage } from './form/helper.js';
15
- export { useCheckScrolled, useDebounce } from './hooks/index.js';
16
- export { ELazyStatus } from './redux/types.js';
17
- export { default as DinoRedux } from './redux/dino.js';
18
- export { default as CreateHocLazy, EmptyComponent, defaultOptionHocLazy } from './redux/create.hoc-lazy.js';
19
- export { ELogic, EOperator, EOrder } from './table/model-filter.js';
20
- import 'react/jsx-runtime';
21
- import 'react';
22
- import '@mui/material';
23
- import '@mui/icons-material/Edit';
24
- import '@mui/icons-material/Delete';
25
- export { decodeBase64, encodeBase64, fetchDelay, formatCapitalizeFirstText, formatCurrency, formatDatetime, formatFileSize, formatNumberWithCommas, mergeClasses, mergeObjects, sleep, tryParseArray, tryParseIntRequired, tryParseObject, windowScrollToTop } from './utils/helpers.js';
26
- export { default as JObject } from './utils/json-object.js';
27
- export { QueryParam } from './utils/query-param.js';
28
- import './utils/dayjs-config.js';
29
- export { default as CreateTable } from './table/create.table.js';
30
- export { default as DinoTable } from './table/dino.js';
31
- export { dinoTableClasses } from './table/helpers.js';
32
- export { default as dayjsCustom } from 'dayjs';
1
+ export{default as ApiPopover,ApiPopoverContext,MapApiPopoverContext,withApiPopoverContext}from"./api-context/popover.js";export{AlertDialog,default as AlertGlobal,ApiAlertContext}from"./api-context/alert-global.js";export{default as DrawerGlobal}from"./api-context/drawer-global.js";export{default as GlobalModal,GlobalModalContext,MapGlobalModalContext,withApiGlobalModalConsumerContext,withApiGlobalModalContext}from"./api-context/global-modal.js";export{MapPopoverGlobalContext,default as PopoverGlobal,PopoverGlobalApi,PopoverGlobalContext,PopoverGlobalProvider,withPopoverGlobalContext}from"./api-context/popover-global.js";export{default as Breadcrumbs}from"./components/breadcrumbs.js";export{default as CopyToClipboard}from"./components/copy-to-clipboard.js";export{default as ImageWithFallback}from"./components/image-with-fallback.js";export{default as HelpTooltip,HelpTooltipWrap}from"./components/help-tooltip.js";export{default as TextEditorPreview}from"./components/text-editor.preview.js";export{default as TextEditor,textEditorClasses}from"./components/text-editor.js";export{default as FormValidator,SingleRuleValidate,createFormValidator,mapRuleOptions}from"./form/validator.js";export{default as DinoForm}from"./form/dino-form.js";export{convertFormDataToJson,getErrorMessage}from"./form/helper.js";export{useCheckScrolled,useDebounce}from"./hooks/index.js";export{ELazyStatus}from"./redux/types.js";export{default as DinoRedux}from"./redux/dino.js";export{default as CreateHocLazy,EmptyComponent,defaultOptionHocLazy}from"./redux/create.hoc-lazy.js";export{ELogic,EOperator,EOrder}from"./table/model-filter.js";import"react/jsx-runtime";import"react";import"@mui/material";import"@mui/icons-material/Edit";import"@mui/icons-material/Delete";export{decodeBase64,encodeBase64,fetchDelay,formatCapitalizeFirstText,formatCurrency,formatDatetime,formatFileSize,formatNumberWithCommas,mergeClasses,mergeObjects,sleep,tryParseArray,tryParseIntRequired,tryParseObject,windowScrollToTop}from"./utils/helpers.js";export{default as JObject}from"./utils/json-object.js";export{QueryParam}from"./utils/query-param.js";import"./utils/dayjs-config.js";export{default as CreateTable}from"./table/create.table.js";export{default as DinoTable}from"./table/dino.js";export{dinoTableClasses}from"./table/helpers.js";export{default as dayjsCustom}from"dayjs";
33
2
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":""}
@@ -1,71 +1,2 @@
1
- import { inherits as _inherits, createClass as _createClass, objectSpread2 as _objectSpread2, classCallCheck as _classCallCheck, callSuper as _callSuper, defineProperty as _defineProperty } from '../_virtual/_rollupPluginBabelHelpers.js';
2
- import { jsx, Fragment } from 'react/jsx-runtime';
3
- import { Component } from 'react';
4
- import { ELazyStatus } from './types.js';
5
- import UIErrorPage from './ui.error-page.js';
6
-
7
- var EmptyComponent = function EmptyComponent(_ref) {
8
- var children = _ref.children;
9
- return jsx(Fragment, {
10
- children: children
11
- });
12
- };
13
- var defaultOptionHocLazy = {
14
- LazySpinner: EmptyComponent
15
- };
16
- var CreateHocLazy = function CreateHocLazy(ChildComponent, options) {
17
- var HocComponent = /*#__PURE__*/function (_Component) {
18
- function HocComponent(props) {
19
- var _this;
20
- _classCallCheck(this, HocComponent);
21
- _this = _callSuper(this, HocComponent, [props]);
22
- _defineProperty(_this, "initialParam", function () {
23
- var _options$param, _this$props$param, _this$props;
24
- var oData = (_options$param = options === null || options === void 0 ? void 0 : options.param) !== null && _options$param !== void 0 ? _options$param : {};
25
- var pData = (_this$props$param = (_this$props = _this.props) === null || _this$props === void 0 ? void 0 : _this$props.param) !== null && _this$props$param !== void 0 ? _this$props$param : {};
26
- return Object.assign({}, oData, pData);
27
- });
28
- _defineProperty(_this, "componentDidMount", function () {
29
- if (_this.props.fetchData) {
30
- var _this$tokenSources;
31
- var param = _this.initialParam();
32
- (_this$tokenSources = _this.tokenSources) === null || _this$tokenSources === void 0 || _this$tokenSources.abort();
33
- _this.tokenSources = new AbortController();
34
- _this.fetchSource = _this.props.fetchData(param, _this.tokenSources.signal);
35
- }
36
- });
37
- _this.optionsMerge = Object.assign({}, defaultOptionHocLazy, options);
38
- return _this;
39
- }
40
- _inherits(HocComponent, _Component);
41
- return _createClass(HocComponent, [{
42
- key: "render",
43
- value: function render() {
44
- var OptionsMerge = this.optionsMerge;
45
- switch (this.props.status) {
46
- case ELazyStatus.Loading:
47
- case ELazyStatus.Loaded:
48
- return jsx(OptionsMerge.LazySpinner, {
49
- loading: this.props.status === ELazyStatus.Loading,
50
- children: jsx(ChildComponent, _objectSpread2({}, this.props))
51
- });
52
- case ELazyStatus.Error:
53
- return jsx(UIErrorPage, {});
54
- default:
55
- return jsx("div", {});
56
- }
57
- }
58
- }, {
59
- key: "componentWillUnmount",
60
- value: function componentWillUnmount() {
61
- var _this$tokenSources2, _this$fetchSource;
62
- (_this$tokenSources2 = this.tokenSources) === null || _this$tokenSources2 === void 0 || _this$tokenSources2.abort();
63
- ((_this$fetchSource = this.fetchSource) === null || _this$fetchSource === void 0 ? void 0 : _this$fetchSource.abort) && this.fetchSource.abort();
64
- }
65
- }]);
66
- }(Component);
67
- return HocComponent;
68
- };
69
-
70
- export { EmptyComponent, CreateHocLazy as default, defaultOptionHocLazy };
1
+ import{inherits as r,createClass as t,objectSpread2 as e,classCallCheck as o,callSuper as n,defineProperty as i}from"../_virtual/_rollupPluginBabelHelpers.js";import{jsx as a,Fragment as s}from"react/jsx-runtime";import{Component as u}from"react";import{ELazyStatus as l}from"./types.js";import c from"./ui.error-page.js";var p=function(r){var t=r.children;return a(s,{children:t})},d={LazySpinner:p},f=function(s,p){return function(){function f(r){var t;return o(this,f),t=n(this,f,[r]),i(t,"initialParam",(function(){var r,e,o,n=null!==(r=null==p?void 0:p.param)&&void 0!==r?r:{},i=null!==(e=null===(o=t.props)||void 0===o?void 0:o.param)&&void 0!==e?e:{};return Object.assign({},n,i)})),i(t,"componentDidMount",(function(){if(t.props.fetchData){var r,e=t.initialParam();null===(r=t.tokenSources)||void 0===r||r.abort(),t.tokenSources=new AbortController,t.fetchSource=t.props.fetchData(e,t.tokenSources.signal)}})),t.optionsMerge=Object.assign({},d,p),t}return r(f,u),t(f,[{key:"render",value:function(){var r=this.optionsMerge;switch(this.props.status){case l.Loading:case l.Loaded:return a(r.LazySpinner,{loading:this.props.status===l.Loading,children:a(s,e({},this.props))});case l.Error:return a(c,{});default:return a("div",{})}}},{key:"componentWillUnmount",value:function(){var r,t;null===(r=this.tokenSources)||void 0===r||r.abort(),(null===(t=this.fetchSource)||void 0===t?void 0:t.abort)&&this.fetchSource.abort()}}])}()};export{p as EmptyComponent,f as default,d as defaultOptionHocLazy};
71
2
  //# sourceMappingURL=create.hoc-lazy.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"create.hoc-lazy.js","sources":["../../src/redux/create.hoc-lazy.tsx"],"sourcesContent":["import React, { Component, ComponentType, PropsWithChildren } from 'react'\r\nimport { IErrorViewDefaultProps, IHocLazyWrapperProps } from './ui.units'\r\nimport { ELazyStatus, IDinoReduxDispatch, IDinoReduxState, IReturnDispatch } from './types'\r\nimport UIErrorPage from './ui.error-page'\r\n\r\nexport interface IHocLazyBase<T> extends IDinoReduxState, IDinoReduxDispatch<T> {}\r\n\r\nexport interface IHocLazyBaseOptions {\r\n ErrorScreen?: React.ComponentType<IErrorViewDefaultProps>\r\n LazySpinner: React.ComponentType<PropsWithChildren<IHocLazyWrapperProps>>\r\n}\r\n\r\nexport interface IHocLazyOtherProps<T> {\r\n param?: T\r\n}\r\n\r\nexport interface IHocLazyOptions<T> extends IHocLazyOtherProps<T>, Omit<IHocLazyBaseOptions, 'LazySpinner'> {\r\n LazySpinner?: React.ComponentType<PropsWithChildren<IHocLazyWrapperProps>>\r\n}\r\n\r\nexport const EmptyComponent: React.FC<React.PropsWithChildren<any>> = ({ children }) => <>{children}</>\r\n\r\nexport const defaultOptionHocLazy: IHocLazyBaseOptions = {\r\n LazySpinner: EmptyComponent\r\n}\r\n\r\nconst CreateHocLazy = function <P extends IHocLazyBase<T>, T = any>(\r\n ChildComponent: React.ComponentType<P>,\r\n options?: IHocLazyOptions<T>\r\n): ComponentType<P> {\r\n type TProps = P & IHocLazyOtherProps<T>\r\n class HocComponent extends Component<TProps> {\r\n optionsMerge: IHocLazyBaseOptions\r\n tokenSources?: AbortController\r\n fetchSource?: IReturnDispatch\r\n constructor(props: TProps) {\r\n super(props)\r\n this.optionsMerge = Object.assign({}, defaultOptionHocLazy, options) as IHocLazyBaseOptions\r\n }\r\n\r\n render() {\r\n const { optionsMerge: OptionsMerge } = this\r\n switch (this.props.status) {\r\n case ELazyStatus.Loading:\r\n case ELazyStatus.Loaded:\r\n return (\r\n <OptionsMerge.LazySpinner loading={this.props.status === ELazyStatus.Loading}>\r\n <ChildComponent {...this.props} />\r\n </OptionsMerge.LazySpinner>\r\n )\r\n case ELazyStatus.Error:\r\n return <UIErrorPage />\r\n default:\r\n return <div></div>\r\n }\r\n }\r\n\r\n initialParam = (): T => {\r\n const oData = options?.param ?? {}\r\n const pData = this.props?.param ?? {}\r\n return Object.assign({}, oData, pData) as T\r\n }\r\n\r\n componentDidMount = () => {\r\n if (this.props.fetchData) {\r\n const param = this.initialParam()\r\n this.tokenSources?.abort()\r\n this.tokenSources = new AbortController()\r\n this.fetchSource = this.props.fetchData(param, this.tokenSources.signal)\r\n }\r\n }\r\n\r\n componentWillUnmount() {\r\n this.tokenSources?.abort()\r\n this.fetchSource?.abort && this.fetchSource.abort()\r\n }\r\n }\r\n return HocComponent\r\n}\r\nexport default CreateHocLazy\r\n"],"names":["EmptyComponent","_ref","children","_jsx","_Fragment","defaultOptionHocLazy","LazySpinner","CreateHocLazy","ChildComponent","options","HocComponent","_Component","props","_this","_classCallCheck","_callSuper","_defineProperty","_options$param","_this$props$param","_this$props","oData","param","pData","Object","assign","fetchData","_this$tokenSources","initialParam","tokenSources","abort","AbortController","fetchSource","signal","optionsMerge","_inherits","_createClass","key","value","render","OptionsMerge","status","ELazyStatus","Loading","Loaded","loading","_objectSpread","Error","UIErrorPage","componentWillUnmount","_this$tokenSources2","_this$fetchSource","Component"],"mappings":"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"}
1
+ {"version":3,"file":"create.hoc-lazy.js","sources":["../../src/redux/create.hoc-lazy.tsx"],"sourcesContent":["import React, { Component, ComponentType, PropsWithChildren } from 'react'\r\nimport { IErrorViewDefaultProps, IHocLazyWrapperProps } from './ui.units'\r\nimport { ELazyStatus, IDinoReduxDispatch, IDinoReduxState, IReturnDispatch } from './types'\r\nimport UIErrorPage from './ui.error-page'\r\n\r\nexport interface IHocLazyBase<T> extends IDinoReduxState, IDinoReduxDispatch<T> {}\r\n\r\nexport interface IHocLazyBaseOptions {\r\n ErrorScreen?: React.ComponentType<IErrorViewDefaultProps>\r\n LazySpinner: React.ComponentType<PropsWithChildren<IHocLazyWrapperProps>>\r\n}\r\n\r\nexport interface IHocLazyOtherProps<T> {\r\n param?: T\r\n}\r\n\r\nexport interface IHocLazyOptions<T> extends IHocLazyOtherProps<T>, Omit<IHocLazyBaseOptions, 'LazySpinner'> {\r\n LazySpinner?: React.ComponentType<PropsWithChildren<IHocLazyWrapperProps>>\r\n}\r\n\r\nexport const EmptyComponent: React.FC<React.PropsWithChildren<any>> = ({ children }) => <>{children}</>\r\n\r\nexport const defaultOptionHocLazy: IHocLazyBaseOptions = {\r\n LazySpinner: EmptyComponent\r\n}\r\n\r\nconst CreateHocLazy = function <P extends IHocLazyBase<T>, T = any>(\r\n ChildComponent: React.ComponentType<P>,\r\n options?: IHocLazyOptions<T>\r\n): ComponentType<P> {\r\n type TProps = P & IHocLazyOtherProps<T>\r\n class HocComponent extends Component<TProps> {\r\n optionsMerge: IHocLazyBaseOptions\r\n tokenSources?: AbortController\r\n fetchSource?: IReturnDispatch\r\n constructor(props: TProps) {\r\n super(props)\r\n this.optionsMerge = Object.assign({}, defaultOptionHocLazy, options) as IHocLazyBaseOptions\r\n }\r\n\r\n render() {\r\n const { optionsMerge: OptionsMerge } = this\r\n switch (this.props.status) {\r\n case ELazyStatus.Loading:\r\n case ELazyStatus.Loaded:\r\n return (\r\n <OptionsMerge.LazySpinner loading={this.props.status === ELazyStatus.Loading}>\r\n <ChildComponent {...this.props} />\r\n </OptionsMerge.LazySpinner>\r\n )\r\n case ELazyStatus.Error:\r\n return <UIErrorPage />\r\n default:\r\n return <div></div>\r\n }\r\n }\r\n\r\n initialParam = (): T => {\r\n const oData = options?.param ?? {}\r\n const pData = this.props?.param ?? {}\r\n return Object.assign({}, oData, pData) as T\r\n }\r\n\r\n componentDidMount = () => {\r\n if (this.props.fetchData) {\r\n const param = this.initialParam()\r\n this.tokenSources?.abort()\r\n this.tokenSources = new AbortController()\r\n this.fetchSource = this.props.fetchData(param, this.tokenSources.signal)\r\n }\r\n }\r\n\r\n componentWillUnmount() {\r\n this.tokenSources?.abort()\r\n this.fetchSource?.abort && this.fetchSource.abort()\r\n }\r\n }\r\n return HocComponent\r\n}\r\nexport default CreateHocLazy\r\n"],"names":["EmptyComponent","_ref","children","_jsx","_Fragment","defaultOptionHocLazy","LazySpinner","CreateHocLazy","ChildComponent","options","HocComponent","props","_this","_classCallCheck","_callSuper","_defineProperty","_options$param","_this$props$param","_this$props","oData","param","pData","Object","assign","fetchData","_this$tokenSources","initialParam","tokenSources","abort","AbortController","fetchSource","signal","optionsMerge","_inherits","Component","_createClass","key","value","OptionsMerge","this","status","ELazyStatus","Loading","Loaded","loading","_objectSpread","Error","UIErrorPage","_this$tokenSources2","_this$fetchSource"],"mappings":"sUAoBaA,EAAyD,SAA3CC,GAAA,IAA8CC,EAAQD,EAARC,SAAQ,OAAOC,EAAGC,EAAA,CAAAF,SAAAA,GAAY,EAE1FG,EAA4C,CACvDC,YAAaN,GAGTO,EAAgB,SACpBC,EACAC,GAiDA,kBA1CE,SAAAC,EAAYC,GAAa,IAAAC,EAEoE,OAFpEC,OAAAH,GACvBE,EAAAE,EAAAJ,KAAAA,GAAMC,IAAMI,EAAAH,EAAA,gBAqBC,WAAQ,IAAAI,EAAAC,EAAAC,EACfC,EAAsBH,QAAjBA,EAAGP,aAAO,EAAPA,EAASW,iBAAKJ,EAAAA,EAAI,CAAE,EAC5BK,EAAyB,QAApBJ,EAAa,QAAbC,EAAGN,EAAKD,aAALO,IAAUA,OAAVA,EAAAA,EAAYE,aAAKH,IAAAA,EAAAA,EAAI,CAAE,EACrC,OAAOK,OAAOC,OAAO,GAAIJ,EAAOE,MACjCN,EAAAH,EAAA,qBAEmB,WAClB,GAAIA,EAAKD,MAAMa,UAAW,CAAA,IAAAC,EAClBL,EAAQR,EAAKc,eACF,QAAjBD,EAAAb,EAAKe,oBAAY,IAAAF,GAAjBA,EAAmBG,QACnBhB,EAAKe,aAAe,IAAIE,gBACxBjB,EAAKkB,YAAclB,EAAKD,MAAMa,UAAUJ,EAAOR,EAAKe,aAAaI,OAClE,KAhCDnB,EAAKoB,aAAeV,OAAOC,OAAO,CAAE,EAAElB,EAAsBI,GAA+BG,CAC7F,CAAC,OAAAqB,EAAAvB,EAPwBwB,GAOxBC,EAAAzB,EAAA,CAAA,CAAA0B,IAAA,SAAAC,MAED,WACE,IAAsBC,EAAiBC,KAA/BP,aACR,OAAQO,KAAK5B,MAAM6B,QACjB,KAAKC,EAAYC,QACjB,KAAKD,EAAYE,OACf,OACExC,EAACmC,EAAahC,YAAY,CAAAsC,QAASL,KAAK5B,MAAM6B,SAAWC,EAAYC,QACnExC,SAAAC,EAACK,EAAcqC,EAAK,CAAA,EAAAN,KAAK5B,UAG/B,KAAK8B,EAAYK,MACf,OAAO3C,EAAC4C,EAAW,IACrB,QACE,OAAO5C,YAEb,GAAC,CAAAiC,IAAA,uBAAAC,MAiBD,WAAoB,IAAAW,EAAAC,EACD,QAAjBD,EAAIT,KAACZ,oBAAY,IAAAqB,GAAjBA,EAAmBpB,SACH,QAAhBqB,EAAIV,KAACT,mBAALmB,IAAgBA,OAAhBA,EAAAA,EAAkBrB,QAASW,KAAKT,YAAYF,OAC9C,IAAC,GAGL"}
@@ -1,11 +1,2 @@
1
- import { createClass as _createClass, classCallCheck as _classCallCheck, defineProperty as _defineProperty } from '../_virtual/_rollupPluginBabelHelpers.js';
2
- import CreateHocLazy from './create.hoc-lazy.js';
3
-
4
- var DinoReduxBase = /*#__PURE__*/_createClass(function DinoReduxBase() {
5
- _classCallCheck(this, DinoReduxBase);
6
- _defineProperty(this, "createHocLazy", CreateHocLazy);
7
- });
8
- var DinoRedux = new DinoReduxBase();
9
-
10
- export { DinoRedux as default };
1
+ import{createClass as a,classCallCheck as e,defineProperty as r}from"../_virtual/_rollupPluginBabelHelpers.js";import s from"./create.hoc-lazy.js";var l=new(a((function a(){e(this,a),r(this,"createHocLazy",s)})));export{l as default};
11
2
  //# sourceMappingURL=dino.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"dino.js","sources":["../../src/redux/dino.ts"],"sourcesContent":["import CreateHocLazy from './create.hoc-lazy'\r\n\r\nclass DinoReduxBase {\r\n createHocLazy = CreateHocLazy\r\n}\r\n\r\nconst DinoRedux = new DinoReduxBase()\r\n\r\nexport default DinoRedux\r\n"],"names":["DinoReduxBase","_createClass","_classCallCheck","_defineProperty","CreateHocLazy","DinoRedux"],"mappings":";;;AAA6C,IAEvCA,aAAa,gBAAAC,YAAA,CAAA,SAAAD,aAAA,GAAA;AAAAE,EAAAA,eAAA,OAAAF,aAAA,CAAA;AAAAG,EAAAA,eAAA,wBACDC,aAAa,CAAA;AAAA,CAAA,CAAA;AAG/B,IAAMC,SAAS,GAAG,IAAIL,aAAa;;;;"}
1
+ {"version":3,"file":"dino.js","sources":["../../src/redux/dino.ts"],"sourcesContent":["import CreateHocLazy from './create.hoc-lazy'\r\n\r\nclass DinoReduxBase {\r\n createHocLazy = CreateHocLazy\r\n}\r\n\r\nconst DinoRedux = new DinoReduxBase()\r\n\r\nexport default DinoRedux\r\n"],"names":["DinoRedux","_createClass","DinoReduxBase","_classCallCheck","_defineProperty","CreateHocLazy"],"mappings":"mJAA6C,IAMvCA,EAAY,IAJCC,GAAA,SAAAC,IAAAC,OAAAD,GAAAE,uBACDC,EAAa"}
@@ -1,9 +1,2 @@
1
- var ELazyStatus;
2
- (function (ELazyStatus) {
3
- ELazyStatus["Loading"] = "Loading";
4
- ELazyStatus["Loaded"] = "Loaded";
5
- ELazyStatus["Error"] = "Error";
6
- })(ELazyStatus || (ELazyStatus = {}));
7
-
8
- export { ELazyStatus };
1
+ var o;!function(o){o.Loading="Loading",o.Loaded="Loaded",o.Error="Error"}(o||(o={}));export{o as ELazyStatus};
9
2
  //# sourceMappingURL=types.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sources":["../../src/redux/types.ts"],"sourcesContent":["export enum ELazyStatus {\r\n Loading = 'Loading',\r\n Loaded = 'Loaded',\r\n Error = 'Error'\r\n}\r\n\r\nexport interface IDinoReduxState {\r\n status: ELazyStatus\r\n requestedId?: string\r\n}\r\n\r\nexport interface IReturnDispatch {\r\n abort?: () => void\r\n}\r\n\r\nexport interface IDinoReduxDispatch<P = any> {\r\n fetchData?: (params?: P, signal?: AbortSignal) => IReturnDispatch\r\n setStatus: (status: ELazyStatus) => void\r\n}\r\n\r\nexport interface IBaseActions<T, Id extends keyof T> {\r\n create: (value: Partial<T>, signal?: AbortSignal) => Promise<void>\r\n update: (id: T[Id], value: Partial<T>, signal?: AbortSignal) => Promise<void>\r\n delete: (id: T[Id], value?: Partial<T>, signal?: AbortSignal) => Promise<void>\r\n}\r\n\r\nexport type IDinoReduxActions<T, Id extends keyof T, K extends keyof IBaseActions<T, Id> = keyof IBaseActions<T, Id>> = Pick<IBaseActions<T, Id>, K>\r\n"],"names":["ELazyStatus"],"mappings":"IAAYA;AAAZ,CAAA,UAAYA,WAAW,EAAA;AACrBA,EAAAA,WAAA,CAAA,SAAA,CAAA,GAAA,SAAmB;AACnBA,EAAAA,WAAA,CAAA,QAAA,CAAA,GAAA,QAAiB;AACjBA,EAAAA,WAAA,CAAA,OAAA,CAAA,GAAA,OAAe;AACjB,CAAC,EAJWA,WAAW,KAAXA,WAAW,GAItB,EAAA,CAAA,CAAA;;;;"}
1
+ {"version":3,"file":"types.js","sources":["../../src/redux/types.ts"],"sourcesContent":["export enum ELazyStatus {\r\n Loading = 'Loading',\r\n Loaded = 'Loaded',\r\n Error = 'Error'\r\n}\r\n\r\nexport interface IDinoReduxState {\r\n status: ELazyStatus\r\n requestedId?: string\r\n}\r\n\r\nexport interface IReturnDispatch {\r\n abort?: () => void\r\n}\r\n\r\nexport interface IDinoReduxDispatch<P = any> {\r\n fetchData?: (params?: P, signal?: AbortSignal) => IReturnDispatch\r\n setStatus: (status: ELazyStatus) => void\r\n}\r\n\r\nexport interface IBaseActions<T, Id extends keyof T> {\r\n create: (value: Partial<T>, signal?: AbortSignal) => Promise<void>\r\n update: (id: T[Id], value: Partial<T>, signal?: AbortSignal) => Promise<void>\r\n delete: (id: T[Id], value?: Partial<T>, signal?: AbortSignal) => Promise<void>\r\n}\r\n\r\nexport type IDinoReduxActions<T, Id extends keyof T, K extends keyof IBaseActions<T, Id> = keyof IBaseActions<T, Id>> = Pick<IBaseActions<T, Id>, K>\r\n"],"names":["ELazyStatus"],"mappings":"IAAYA,GAAZ,SAAYA,GACVA,EAAA,QAAA,UACAA,EAAA,OAAA,SACAA,EAAA,MAAA,OACD,CAJD,CAAYA,IAAAA,EAIX,CAAA"}