ywana-core8 0.0.569 → 0.0.572
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.cjs +1226 -106
- package/dist/index.cjs.map +1 -1
- package/dist/index.css +50 -1
- package/dist/index.css.map +1 -1
- package/dist/index.modern.js +1225 -107
- package/dist/index.modern.js.map +1 -1
- package/dist/index.umd.js +1226 -106
- package/dist/index.umd.js.map +1 -1
- package/package.json +1 -1
- package/src/domain/ContentEditor.js +12 -1
- package/src/domain/TablePage.js +2 -1
- package/src/domain/TablePage2.js +680 -0
- package/src/domain/index.js +1 -0
- package/src/html/accordion.css +36 -0
- package/src/html/accordion.js +58 -0
- package/src/html/accordion.test.js +37 -0
- package/src/html/index.js +1 -0
- package/src/html/section.css +1 -1
- package/src/html/section.js +1 -1
- package/src/html/table.test.js +2 -2
- package/src/html/textfield.js +4 -4
- package/src/html/textfield.test.js +1 -0
- package/src/html/tokenfield.js +1 -2
- package/src/site/site.css +13 -0
- package/src/site/site.js +1 -1
- package/src/site/site.test.js +7 -6
package/dist/index.umd.js
CHANGED
@@ -11,7 +11,7 @@
|
|
11
11
|
var ResumableJS__default = /*#__PURE__*/_interopDefaultLegacy(ResumableJS);
|
12
12
|
var equal__default = /*#__PURE__*/_interopDefaultLegacy(equal);
|
13
13
|
|
14
|
-
function _catch$
|
14
|
+
function _catch$4(body, recover) {
|
15
15
|
try {
|
16
16
|
var result = body();
|
17
17
|
} catch (e) {
|
@@ -43,7 +43,7 @@
|
|
43
43
|
body: body
|
44
44
|
};
|
45
45
|
if (headers) request.headers = request.headers;
|
46
|
-
return Promise.resolve(_catch$
|
46
|
+
return Promise.resolve(_catch$4(function () {
|
47
47
|
return Promise.resolve(fetch(URL, request)).then(function (response) {
|
48
48
|
var _exit;
|
49
49
|
|
@@ -144,6 +144,24 @@
|
|
144
144
|
}
|
145
145
|
};
|
146
146
|
|
147
|
+
function _extends() {
|
148
|
+
_extends = Object.assign || function (target) {
|
149
|
+
for (var i = 1; i < arguments.length; i++) {
|
150
|
+
var source = arguments[i];
|
151
|
+
|
152
|
+
for (var key in source) {
|
153
|
+
if (Object.prototype.hasOwnProperty.call(source, key)) {
|
154
|
+
target[key] = source[key];
|
155
|
+
}
|
156
|
+
}
|
157
|
+
}
|
158
|
+
|
159
|
+
return target;
|
160
|
+
};
|
161
|
+
|
162
|
+
return _extends.apply(this, arguments);
|
163
|
+
}
|
164
|
+
|
147
165
|
/**
|
148
166
|
* Icon
|
149
167
|
*/
|
@@ -176,6 +194,99 @@
|
|
176
194
|
}, icon);
|
177
195
|
};
|
178
196
|
|
197
|
+
var Accordion = function Accordion(props) {
|
198
|
+
var className = props.className,
|
199
|
+
_props$sections = props.sections,
|
200
|
+
sections = _props$sections === void 0 ? [] : _props$sections,
|
201
|
+
onCheck = props.onCheck;
|
202
|
+
|
203
|
+
var _useState = React.useState(sections.map(function (section) {
|
204
|
+
return section.open;
|
205
|
+
})),
|
206
|
+
openSections = _useState[0],
|
207
|
+
setOpenSections = _useState[1];
|
208
|
+
|
209
|
+
var _useState2 = React.useState(sections.map(function (section) {
|
210
|
+
return section.checked;
|
211
|
+
})),
|
212
|
+
checkedSections = _useState2[0],
|
213
|
+
setCheckedSections = _useState2[1];
|
214
|
+
|
215
|
+
function toggle(index) {
|
216
|
+
var next = openSections.map(function (open, i) {
|
217
|
+
return i === index ? !open : open;
|
218
|
+
});
|
219
|
+
setOpenSections(next);
|
220
|
+
}
|
221
|
+
|
222
|
+
function check(index) {
|
223
|
+
var next = checkedSections.map(function (checked, i) {
|
224
|
+
return i === index ? !checked : checked;
|
225
|
+
});
|
226
|
+
setCheckedSections(next);
|
227
|
+
if (onCheck) onCheck(index, next[index], sections[index].id);
|
228
|
+
}
|
229
|
+
|
230
|
+
return /*#__PURE__*/React__default["default"].createElement("div", {
|
231
|
+
className: "accordion " + className
|
232
|
+
}, sections.map(function (section, index) {
|
233
|
+
var isOpen = openSections[index];
|
234
|
+
var isChecked = checkedSections[index];
|
235
|
+
return /*#__PURE__*/React__default["default"].createElement(AccordionSection, _extends({
|
236
|
+
key: index
|
237
|
+
}, section, {
|
238
|
+
open: isOpen,
|
239
|
+
checked: isChecked,
|
240
|
+
onToggle: function onToggle() {
|
241
|
+
return toggle(index);
|
242
|
+
},
|
243
|
+
onCheck: function onCheck() {
|
244
|
+
return check(index);
|
245
|
+
}
|
246
|
+
}), section.children);
|
247
|
+
}));
|
248
|
+
};
|
249
|
+
|
250
|
+
var AccordionSection = function AccordionSection(props) {
|
251
|
+
var checked = props.checked,
|
252
|
+
icon = props.icon,
|
253
|
+
title = props.title,
|
254
|
+
subtitle = props.subtitle,
|
255
|
+
_props$open = props.open,
|
256
|
+
open = _props$open === void 0 ? false : _props$open,
|
257
|
+
onToggle = props.onToggle,
|
258
|
+
onCheck = props.onCheck,
|
259
|
+
toolbar = props.toolbar,
|
260
|
+
info = props.info,
|
261
|
+
children = props.children;
|
262
|
+
var togglerIcon = open ? "expand_less" : "expand_more";
|
263
|
+
var checkedIcon = checked === undefined || checked === null ? null : checked === false ? "check_box_outline_blank" : "check_box";
|
264
|
+
return /*#__PURE__*/React__default["default"].createElement("section", {
|
265
|
+
className: "accordion-section"
|
266
|
+
}, /*#__PURE__*/React__default["default"].createElement("header", null, checkedIcon ? /*#__PURE__*/React__default["default"].createElement(Icon, {
|
267
|
+
className: "accordion-section-checker",
|
268
|
+
icon: checkedIcon,
|
269
|
+
clickable: true,
|
270
|
+
action: onCheck
|
271
|
+
}) : '', icon ? /*#__PURE__*/React__default["default"].createElement(Icon, {
|
272
|
+
className: "accordion-section-icon",
|
273
|
+
icon: icon
|
274
|
+
}) : '', title ? /*#__PURE__*/React__default["default"].createElement("div", {
|
275
|
+
className: "accordion-section--title"
|
276
|
+
}, title) : '', subtitle ? /*#__PURE__*/React__default["default"].createElement("div", {
|
277
|
+
className: "accordion-section--subtitle"
|
278
|
+
}, subtitle) : '', info ? /*#__PURE__*/React__default["default"].createElement("div", {
|
279
|
+
className: "accordion-section--info"
|
280
|
+
}, info) : '', toolbar ? /*#__PURE__*/React__default["default"].createElement("div", {
|
281
|
+
className: "accordion-section--toolbar"
|
282
|
+
}, toolbar) : '', /*#__PURE__*/React__default["default"].createElement(Icon, {
|
283
|
+
className: "accordion-section-toggler",
|
284
|
+
icon: togglerIcon,
|
285
|
+
clickable: true,
|
286
|
+
action: onToggle
|
287
|
+
})), open ? /*#__PURE__*/React__default["default"].createElement("main", null, children) : '');
|
288
|
+
};
|
289
|
+
|
179
290
|
/**
|
180
291
|
* HTML Button
|
181
292
|
*/
|
@@ -495,24 +606,6 @@
|
|
495
606
|
}, props.children));
|
496
607
|
};
|
497
608
|
|
498
|
-
function _extends() {
|
499
|
-
_extends = Object.assign || function (target) {
|
500
|
-
for (var i = 1; i < arguments.length; i++) {
|
501
|
-
var source = arguments[i];
|
502
|
-
|
503
|
-
for (var key in source) {
|
504
|
-
if (Object.prototype.hasOwnProperty.call(source, key)) {
|
505
|
-
target[key] = source[key];
|
506
|
-
}
|
507
|
-
}
|
508
|
-
}
|
509
|
-
|
510
|
-
return target;
|
511
|
-
};
|
512
|
-
|
513
|
-
return _extends.apply(this, arguments);
|
514
|
-
}
|
515
|
-
|
516
609
|
/**
|
517
610
|
* List
|
518
611
|
*/
|
@@ -853,7 +946,7 @@
|
|
853
946
|
};
|
854
947
|
|
855
948
|
return /*#__PURE__*/React__default["default"].createElement("section", {
|
856
|
-
className: "
|
949
|
+
className: "section " + className
|
857
950
|
}, /*#__PURE__*/React__default["default"].createElement(Header, {
|
858
951
|
icon: icon,
|
859
952
|
title: title
|
@@ -1376,8 +1469,8 @@
|
|
1376
1469
|
if (!readOnly) setOpen(!open);
|
1377
1470
|
}
|
1378
1471
|
|
1379
|
-
function select(
|
1380
|
-
var next =
|
1472
|
+
function select(value) {
|
1473
|
+
var next = value;
|
1381
1474
|
var option = options.find(function (option) {
|
1382
1475
|
return option.value === next;
|
1383
1476
|
});
|
@@ -1402,12 +1495,13 @@
|
|
1402
1495
|
var lis = items.map(function (option) {
|
1403
1496
|
return /*#__PURE__*/React__default["default"].createElement("li", {
|
1404
1497
|
key: option.value,
|
1405
|
-
value: option.value
|
1498
|
+
value: option.value,
|
1499
|
+
onClick: function onClick() {
|
1500
|
+
return select(option.value);
|
1501
|
+
}
|
1406
1502
|
}, /*#__PURE__*/React__default["default"].createElement(Text, null, option.label));
|
1407
1503
|
});
|
1408
|
-
return /*#__PURE__*/React__default["default"].createElement("menu", null, /*#__PURE__*/React__default["default"].createElement("ul",
|
1409
|
-
onMouseDown: select
|
1410
|
-
}, lis));
|
1504
|
+
return /*#__PURE__*/React__default["default"].createElement("menu", null, /*#__PURE__*/React__default["default"].createElement("ul", null, lis));
|
1411
1505
|
} else {
|
1412
1506
|
return null;
|
1413
1507
|
}
|
@@ -3620,7 +3714,9 @@
|
|
3620
3714
|
return _goto(id);
|
3621
3715
|
}
|
3622
3716
|
}, /*#__PURE__*/React__default["default"].createElement(Tooltip, {
|
3623
|
-
text: title
|
3717
|
+
text: title,
|
3718
|
+
top: ".5rem",
|
3719
|
+
left: "2rem"
|
3624
3720
|
}, /*#__PURE__*/React__default["default"].createElement(Icon, {
|
3625
3721
|
key: id,
|
3626
3722
|
icon: icon,
|
@@ -4191,13 +4287,13 @@
|
|
4191
4287
|
* Tabbed Content Editor
|
4192
4288
|
*/
|
4193
4289
|
|
4194
|
-
var TabbedContentEditor = function TabbedContentEditor(
|
4195
|
-
var content =
|
4196
|
-
filter =
|
4197
|
-
|
4198
|
-
grouped =
|
4199
|
-
onChange =
|
4200
|
-
onReload =
|
4290
|
+
var TabbedContentEditor = function TabbedContentEditor(_ref3) {
|
4291
|
+
var content = _ref3.content,
|
4292
|
+
filter = _ref3.filter,
|
4293
|
+
_ref3$grouped = _ref3.grouped,
|
4294
|
+
grouped = _ref3$grouped === void 0 ? false : _ref3$grouped,
|
4295
|
+
onChange = _ref3.onChange,
|
4296
|
+
onReload = _ref3.onReload;
|
4201
4297
|
|
4202
4298
|
var _useState = React.useState(0),
|
4203
4299
|
tab = _useState[0],
|
@@ -4282,9 +4378,9 @@
|
|
4282
4378
|
* TreededContentEditor
|
4283
4379
|
*/
|
4284
4380
|
|
4285
|
-
var TreededContentEditor = function TreededContentEditor(
|
4286
|
-
var content =
|
4287
|
-
onChange =
|
4381
|
+
var TreededContentEditor = function TreededContentEditor(_ref4) {
|
4382
|
+
var content = _ref4.content,
|
4383
|
+
onChange = _ref4.onChange;
|
4288
4384
|
var value = content.value();
|
4289
4385
|
var nodes = Object.values(content.type).filter(function (field) {
|
4290
4386
|
return field.type === TYPES.ARRAY;
|
@@ -4349,13 +4445,13 @@
|
|
4349
4445
|
* FieldEditor
|
4350
4446
|
*/
|
4351
4447
|
|
4352
|
-
var FieldEditor = function FieldEditor(
|
4353
|
-
var field =
|
4354
|
-
onChange =
|
4355
|
-
content =
|
4356
|
-
|
4357
|
-
outlined =
|
4358
|
-
onReload =
|
4448
|
+
var FieldEditor = function FieldEditor(_ref5) {
|
4449
|
+
var field = _ref5.field,
|
4450
|
+
onChange = _ref5.onChange,
|
4451
|
+
content = _ref5.content,
|
4452
|
+
_ref5$outlined = _ref5.outlined,
|
4453
|
+
outlined = _ref5$outlined === void 0 ? false : _ref5$outlined,
|
4454
|
+
onReload = _ref5.onReload;
|
4359
4455
|
var id = field.id,
|
4360
4456
|
type = field.type,
|
4361
4457
|
item = field.item,
|
@@ -4442,11 +4538,11 @@
|
|
4442
4538
|
* Entity Editor
|
4443
4539
|
*/
|
4444
4540
|
|
4445
|
-
var EntityEditor = function EntityEditor(
|
4446
|
-
var field =
|
4447
|
-
|
4448
|
-
value =
|
4449
|
-
onChange =
|
4541
|
+
var EntityEditor = function EntityEditor(_ref6) {
|
4542
|
+
var field = _ref6.field,
|
4543
|
+
_ref6$value = _ref6.value,
|
4544
|
+
value = _ref6$value === void 0 ? {} : _ref6$value,
|
4545
|
+
onChange = _ref6.onChange;
|
4450
4546
|
var id = field.id,
|
4451
4547
|
item = field.item,
|
4452
4548
|
label = field.label;
|
@@ -4506,13 +4602,13 @@
|
|
4506
4602
|
*/
|
4507
4603
|
|
4508
4604
|
|
4509
|
-
var StringEditor = function StringEditor(
|
4510
|
-
var field =
|
4511
|
-
|
4512
|
-
value =
|
4513
|
-
onChange =
|
4514
|
-
content =
|
4515
|
-
outlined =
|
4605
|
+
var StringEditor = function StringEditor(_ref7) {
|
4606
|
+
var field = _ref7.field,
|
4607
|
+
_ref7$value = _ref7.value,
|
4608
|
+
value = _ref7$value === void 0 ? '' : _ref7$value,
|
4609
|
+
onChange = _ref7.onChange,
|
4610
|
+
content = _ref7.content,
|
4611
|
+
outlined = _ref7.outlined;
|
4516
4612
|
var id = field.id,
|
4517
4613
|
format = field.format,
|
4518
4614
|
label = field.label,
|
@@ -4628,12 +4724,12 @@
|
|
4628
4724
|
* Number Editor
|
4629
4725
|
*/
|
4630
4726
|
|
4631
|
-
var NumberEditor = function NumberEditor(
|
4632
|
-
var field =
|
4633
|
-
value =
|
4634
|
-
onChange =
|
4635
|
-
|
4636
|
-
outlined =
|
4727
|
+
var NumberEditor = function NumberEditor(_ref8) {
|
4728
|
+
var field = _ref8.field,
|
4729
|
+
value = _ref8.value,
|
4730
|
+
onChange = _ref8.onChange,
|
4731
|
+
_ref8$outlined = _ref8.outlined,
|
4732
|
+
outlined = _ref8$outlined === void 0 ? false : _ref8$outlined;
|
4637
4733
|
var id = field.id,
|
4638
4734
|
label = field.label,
|
4639
4735
|
_field$editable2 = field.editable,
|
@@ -4666,11 +4762,11 @@
|
|
4666
4762
|
*/
|
4667
4763
|
|
4668
4764
|
|
4669
|
-
var ListEditor = function ListEditor(
|
4670
|
-
var field =
|
4671
|
-
|
4672
|
-
value =
|
4673
|
-
onChange =
|
4765
|
+
var ListEditor = function ListEditor(_ref9) {
|
4766
|
+
var field = _ref9.field,
|
4767
|
+
_ref9$value = _ref9.value,
|
4768
|
+
value = _ref9$value === void 0 ? [] : _ref9$value,
|
4769
|
+
onChange = _ref9.onChange;
|
4674
4770
|
var label = field.label;
|
4675
4771
|
|
4676
4772
|
function change(id, value) {
|
@@ -4690,12 +4786,12 @@
|
|
4690
4786
|
* Multi Selection Editor
|
4691
4787
|
*/
|
4692
4788
|
|
4693
|
-
var MultiSelectionEditor = function MultiSelectionEditor(
|
4694
|
-
var field =
|
4695
|
-
|
4696
|
-
value =
|
4697
|
-
content =
|
4698
|
-
onChange =
|
4789
|
+
var MultiSelectionEditor = function MultiSelectionEditor(_ref10) {
|
4790
|
+
var field = _ref10.field,
|
4791
|
+
_ref10$value = _ref10.value,
|
4792
|
+
value = _ref10$value === void 0 ? [] : _ref10$value,
|
4793
|
+
content = _ref10.content,
|
4794
|
+
onChange = _ref10.onChange;
|
4699
4795
|
var id = field.id,
|
4700
4796
|
label = field.label,
|
4701
4797
|
options = field.options;
|
@@ -4734,12 +4830,12 @@
|
|
4734
4830
|
* Collection Editor
|
4735
4831
|
*/
|
4736
4832
|
|
4737
|
-
var CollectionEditor$1 = function CollectionEditor(
|
4738
|
-
var field =
|
4739
|
-
|
4740
|
-
value =
|
4741
|
-
onChange =
|
4742
|
-
onReload =
|
4833
|
+
var CollectionEditor$1 = function CollectionEditor(_ref11) {
|
4834
|
+
var field = _ref11.field,
|
4835
|
+
_ref11$value = _ref11.value,
|
4836
|
+
value = _ref11$value === void 0 ? [] : _ref11$value,
|
4837
|
+
onChange = _ref11.onChange,
|
4838
|
+
onReload = _ref11.onReload;
|
4743
4839
|
var id = field.id,
|
4744
4840
|
item = field.item,
|
4745
4841
|
label = field.label,
|
@@ -4809,7 +4905,7 @@
|
|
4809
4905
|
onChange: onChange,
|
4810
4906
|
onReload: reload
|
4811
4907
|
}) // : <DataTable {...table} editable={editable} />
|
4812
|
-
: /*#__PURE__*/React__default["default"].createElement(TableEditor$
|
4908
|
+
: /*#__PURE__*/React__default["default"].createElement(TableEditor$3, {
|
4813
4909
|
icon: "info",
|
4814
4910
|
title: label,
|
4815
4911
|
data: value,
|
@@ -4829,9 +4925,9 @@
|
|
4829
4925
|
* Collection Adder
|
4830
4926
|
*/
|
4831
4927
|
|
4832
|
-
var CollectionAdder = function CollectionAdder(
|
4833
|
-
var item =
|
4834
|
-
onAdd =
|
4928
|
+
var CollectionAdder = function CollectionAdder(_ref12) {
|
4929
|
+
var item = _ref12.item,
|
4930
|
+
onAdd = _ref12.onAdd;
|
4835
4931
|
|
4836
4932
|
var _useState3 = React.useState(false),
|
4837
4933
|
edit = _useState3[0],
|
@@ -4900,7 +4996,7 @@
|
|
4900
4996
|
*/
|
4901
4997
|
|
4902
4998
|
|
4903
|
-
var TableEditor$
|
4999
|
+
var TableEditor$3 = function TableEditor(props) {
|
4904
5000
|
var select = function select(row) {
|
4905
5001
|
try {
|
4906
5002
|
if (onSelect) onSelect(row.id);
|
@@ -5244,7 +5340,7 @@
|
|
5244
5340
|
* Collection Page
|
5245
5341
|
*/
|
5246
5342
|
|
5247
|
-
function _catch$
|
5343
|
+
function _catch$3(body, recover) {
|
5248
5344
|
try {
|
5249
5345
|
var result = body();
|
5250
5346
|
} catch (e) {
|
@@ -5821,7 +5917,7 @@
|
|
5821
5917
|
try {
|
5822
5918
|
var _this2 = this;
|
5823
5919
|
|
5824
|
-
var _temp2 = _catch$
|
5920
|
+
var _temp2 = _catch$3(function () {
|
5825
5921
|
return Promise.resolve(API.all(null, page)).then(function (data) {
|
5826
5922
|
_this2.all = field ? data[field] : data;
|
5827
5923
|
});
|
@@ -5870,7 +5966,7 @@
|
|
5870
5966
|
},
|
5871
5967
|
fetch: function fetch(id) {
|
5872
5968
|
try {
|
5873
|
-
return Promise.resolve(_catch$
|
5969
|
+
return Promise.resolve(_catch$3(function () {
|
5874
5970
|
return Promise.resolve(API.find(id));
|
5875
5971
|
}, function (error) {
|
5876
5972
|
console.log(error);
|
@@ -5886,7 +5982,7 @@
|
|
5886
5982
|
try {
|
5887
5983
|
var _this8 = this;
|
5888
5984
|
|
5889
|
-
var _temp6 = _catch$
|
5985
|
+
var _temp6 = _catch$3(function () {
|
5890
5986
|
return Promise.resolve(API.create(form)).then(function () {
|
5891
5987
|
return Promise.resolve(_this8.load()).then(function () {});
|
5892
5988
|
});
|
@@ -5903,7 +5999,7 @@
|
|
5903
5999
|
try {
|
5904
6000
|
var _this10 = this;
|
5905
6001
|
|
5906
|
-
var _temp8 = _catch$
|
6002
|
+
var _temp8 = _catch$3(function () {
|
5907
6003
|
return Promise.resolve(API.update(form)).then(function () {
|
5908
6004
|
return Promise.resolve(_this10.load()).then(function () {});
|
5909
6005
|
});
|
@@ -5920,7 +6016,7 @@
|
|
5920
6016
|
try {
|
5921
6017
|
var _this12 = this;
|
5922
6018
|
|
5923
|
-
var _temp10 = _catch$
|
6019
|
+
var _temp10 = _catch$3(function () {
|
5924
6020
|
return Promise.resolve(API.patch(id, form)).then(function () {
|
5925
6021
|
return Promise.resolve(_this12.load()).then(function () {});
|
5926
6022
|
});
|
@@ -5937,7 +6033,7 @@
|
|
5937
6033
|
try {
|
5938
6034
|
var _this14 = this;
|
5939
6035
|
|
5940
|
-
var _temp12 = _catch$
|
6036
|
+
var _temp12 = _catch$3(function () {
|
5941
6037
|
return Promise.resolve(API.updateProperty(id, propertyName, form)).then(function () {
|
5942
6038
|
return Promise.resolve(_this14.load()).then(function () {});
|
5943
6039
|
});
|
@@ -5954,7 +6050,7 @@
|
|
5954
6050
|
try {
|
5955
6051
|
var _this16 = this;
|
5956
6052
|
|
5957
|
-
var _temp14 = _catch$
|
6053
|
+
var _temp14 = _catch$3(function () {
|
5958
6054
|
return Promise.resolve(API.remove(id)).then(function () {
|
5959
6055
|
return Promise.resolve(_this16.load()).then(function () {});
|
5960
6056
|
});
|
@@ -6167,7 +6263,7 @@
|
|
6167
6263
|
* Table Page
|
6168
6264
|
*/
|
6169
6265
|
|
6170
|
-
function _catch$
|
6266
|
+
function _catch$2(body, recover) {
|
6171
6267
|
try {
|
6172
6268
|
var result = body();
|
6173
6269
|
} catch (e) {
|
@@ -6294,7 +6390,7 @@
|
|
6294
6390
|
pageContext = _useContext[0],
|
6295
6391
|
setPageContext = _useContext[1];
|
6296
6392
|
|
6297
|
-
var context = TableContext$
|
6393
|
+
var context = TableContext$2(url, field, host, urlQuery, params);
|
6298
6394
|
var selected = pageContext.selected;
|
6299
6395
|
var timer = React.useRef(null);
|
6300
6396
|
|
@@ -6394,13 +6490,13 @@
|
|
6394
6490
|
if (rowSelected || rowChecked) {
|
6395
6491
|
return /*#__PURE__*/React__default["default"].createElement("aside", {
|
6396
6492
|
className: "table-page"
|
6397
|
-
}, rowSelected ? /*#__PURE__*/React__default["default"].createElement(TableRowEditor$
|
6493
|
+
}, rowSelected ? /*#__PURE__*/React__default["default"].createElement(TableRowEditor$2, {
|
6398
6494
|
content: new Content(schema, form),
|
6399
6495
|
filter: editorFilter,
|
6400
6496
|
onChange: change,
|
6401
6497
|
onClose: closeAside,
|
6402
6498
|
editable: canEdit
|
6403
|
-
}) : null, rowChecked ? /*#__PURE__*/React__default["default"].createElement(TableSelector$
|
6499
|
+
}) : null, rowChecked ? /*#__PURE__*/React__default["default"].createElement(TableSelector$2, {
|
6404
6500
|
schema: schema,
|
6405
6501
|
actions: selectionActions
|
6406
6502
|
}) : null);
|
@@ -6441,17 +6537,17 @@
|
|
6441
6537
|
onSelect: playScenario
|
6442
6538
|
})) : null, renderActions()), canQuery || canFilter ? /*#__PURE__*/React__default["default"].createElement("menu", {
|
6443
6539
|
className: "table-page"
|
6444
|
-
}, canQuery ? /*#__PURE__*/React__default["default"].createElement(TableQueries$
|
6540
|
+
}, canQuery ? /*#__PURE__*/React__default["default"].createElement(TableQueries$2, {
|
6445
6541
|
schema: schema,
|
6446
6542
|
url: url,
|
6447
6543
|
user: user
|
6448
|
-
}) : null, canFilter ? /*#__PURE__*/React__default["default"].createElement(TableFilters$
|
6544
|
+
}) : null, canFilter ? /*#__PURE__*/React__default["default"].createElement(TableFilters$2, {
|
6449
6545
|
schema: schema,
|
6450
6546
|
onSave: canQuery ? saveQuery : null
|
6451
6547
|
}) : null) : null, /*#__PURE__*/React__default["default"].createElement("main", {
|
6452
6548
|
key: id,
|
6453
6549
|
className: "table-page"
|
6454
|
-
}, /*#__PURE__*/React__default["default"].createElement(TableEditor$
|
6550
|
+
}, /*#__PURE__*/React__default["default"].createElement(TableEditor$2, {
|
6455
6551
|
icon: icon,
|
6456
6552
|
title: name,
|
6457
6553
|
schema: schema,
|
@@ -6465,7 +6561,7 @@
|
|
6465
6561
|
}), children ? /*#__PURE__*/React__default["default"].createElement("article", null, children) : null), renderAside());
|
6466
6562
|
};
|
6467
6563
|
|
6468
|
-
var TableRowEditor$
|
6564
|
+
var TableRowEditor$2 = function TableRowEditor(props) {
|
6469
6565
|
var name = props.name,
|
6470
6566
|
content = props.content,
|
6471
6567
|
filter = props.filter,
|
@@ -6494,7 +6590,7 @@
|
|
6494
6590
|
*/
|
6495
6591
|
|
6496
6592
|
|
6497
|
-
var TableSelector$
|
6593
|
+
var TableSelector$2 = function TableSelector(props) {
|
6498
6594
|
var schema = props.schema,
|
6499
6595
|
_props$actions2 = props.actions,
|
6500
6596
|
actions = _props$actions2 === void 0 ? [] : _props$actions2;
|
@@ -6557,7 +6653,7 @@
|
|
6557
6653
|
*/
|
6558
6654
|
|
6559
6655
|
|
6560
|
-
var TableQueries$
|
6656
|
+
var TableQueries$2 = function TableQueries(props) {
|
6561
6657
|
var remove = function remove(id) {
|
6562
6658
|
try {
|
6563
6659
|
return Promise.resolve(pageContext.removeQuery(id, user)).then(function () {
|
@@ -6619,7 +6715,7 @@
|
|
6619
6715
|
*/
|
6620
6716
|
|
6621
6717
|
|
6622
|
-
var TableFilters$
|
6718
|
+
var TableFilters$2 = function TableFilters(props) {
|
6623
6719
|
var reload = function reload() {
|
6624
6720
|
try {
|
6625
6721
|
return Promise.resolve(pageContext.load(form)).then(function () {
|
@@ -6715,7 +6811,7 @@
|
|
6715
6811
|
*/
|
6716
6812
|
|
6717
6813
|
|
6718
|
-
var TableEditor$
|
6814
|
+
var TableEditor$2 = function TableEditor(props) {
|
6719
6815
|
var checkOne = function checkOne(id, field, value) {
|
6720
6816
|
check([id], value);
|
6721
6817
|
return Promise.resolve();
|
@@ -6947,6 +7043,1028 @@
|
|
6947
7043
|
* Table Context
|
6948
7044
|
*/
|
6949
7045
|
|
7046
|
+
var TableContext$2 = function TableContext(url, field, host, urlQuery, params) {
|
7047
|
+
var API = TableAPI$2(url, host, params);
|
7048
|
+
return {
|
7049
|
+
all: [],
|
7050
|
+
checked: new Set([]),
|
7051
|
+
selected: null,
|
7052
|
+
filters: {},
|
7053
|
+
queries: [],
|
7054
|
+
load: function load(filter) {
|
7055
|
+
try {
|
7056
|
+
var _this2 = this;
|
7057
|
+
|
7058
|
+
var _temp5 = _catch$2(function () {
|
7059
|
+
var filters = filter ? Object.keys(filter).reduce(function (filters, key) {
|
7060
|
+
var field = filter[key];
|
7061
|
+
|
7062
|
+
if (field) {
|
7063
|
+
if (CHECK['isObject'](field)) {
|
7064
|
+
Object.keys(field).forEach(function (key2) {
|
7065
|
+
var subfield = field[key2];
|
7066
|
+
if (subfield) filters[key + "." + key2] = subfield;
|
7067
|
+
});
|
7068
|
+
} else {
|
7069
|
+
filters[key] = field;
|
7070
|
+
}
|
7071
|
+
}
|
7072
|
+
|
7073
|
+
return filters;
|
7074
|
+
}, {}) : [];
|
7075
|
+
return Promise.resolve(API.all(filters)).then(function (data) {
|
7076
|
+
_this2.all = field ? data[field] : data;
|
7077
|
+
});
|
7078
|
+
}, function (error) {
|
7079
|
+
console.log(error);
|
7080
|
+
});
|
7081
|
+
|
7082
|
+
return Promise.resolve(_temp5 && _temp5.then ? _temp5.then(function () {}) : void 0);
|
7083
|
+
} catch (e) {
|
7084
|
+
return Promise.reject(e);
|
7085
|
+
}
|
7086
|
+
},
|
7087
|
+
check: function check(ids, isChecked) {
|
7088
|
+
var _this3 = this;
|
7089
|
+
|
7090
|
+
if (isChecked === void 0) {
|
7091
|
+
isChecked = true;
|
7092
|
+
}
|
7093
|
+
|
7094
|
+
if (isChecked) {
|
7095
|
+
ids.forEach(function (id) {
|
7096
|
+
return _this3.checked.add(id);
|
7097
|
+
});
|
7098
|
+
} else {
|
7099
|
+
ids.forEach(function (id) {
|
7100
|
+
return _this3.checked["delete"](id);
|
7101
|
+
});
|
7102
|
+
}
|
7103
|
+
},
|
7104
|
+
select: function select(id) {
|
7105
|
+
var result = this.all.find(function (item) {
|
7106
|
+
return item.id === id;
|
7107
|
+
});
|
7108
|
+
this.selected = result;
|
7109
|
+
},
|
7110
|
+
clear: function clear() {
|
7111
|
+
this.selected = null;
|
7112
|
+
},
|
7113
|
+
create: function create(form) {
|
7114
|
+
try {
|
7115
|
+
var _this5 = this;
|
7116
|
+
|
7117
|
+
var _temp7 = _catch$2(function () {
|
7118
|
+
return Promise.resolve(API.create(form)).then(function () {
|
7119
|
+
return Promise.resolve(_this5.load()).then(function () {});
|
7120
|
+
});
|
7121
|
+
}, function (error) {
|
7122
|
+
console.log(error);
|
7123
|
+
});
|
7124
|
+
|
7125
|
+
return Promise.resolve(_temp7 && _temp7.then ? _temp7.then(function () {}) : void 0);
|
7126
|
+
} catch (e) {
|
7127
|
+
return Promise.reject(e);
|
7128
|
+
}
|
7129
|
+
},
|
7130
|
+
update: function update(form) {
|
7131
|
+
try {
|
7132
|
+
var _this7 = this;
|
7133
|
+
|
7134
|
+
var _temp9 = _catch$2(function () {
|
7135
|
+
return Promise.resolve(API.update(form)).then(function () {
|
7136
|
+
return Promise.resolve(_this7.load()).then(function () {});
|
7137
|
+
});
|
7138
|
+
}, function (error) {
|
7139
|
+
console.log(error);
|
7140
|
+
});
|
7141
|
+
|
7142
|
+
return Promise.resolve(_temp9 && _temp9.then ? _temp9.then(function () {}) : void 0);
|
7143
|
+
} catch (e) {
|
7144
|
+
return Promise.reject(e);
|
7145
|
+
}
|
7146
|
+
},
|
7147
|
+
remove: function remove(id) {
|
7148
|
+
try {
|
7149
|
+
var _this9 = this;
|
7150
|
+
|
7151
|
+
var _temp11 = _catch$2(function () {
|
7152
|
+
return Promise.resolve(API.remove(id)).then(function () {
|
7153
|
+
return Promise.resolve(_this9.load()).then(function () {});
|
7154
|
+
});
|
7155
|
+
}, function (error) {
|
7156
|
+
console.log(error);
|
7157
|
+
});
|
7158
|
+
|
7159
|
+
return Promise.resolve(_temp11 && _temp11.then ? _temp11.then(function () {}) : void 0);
|
7160
|
+
} catch (e) {
|
7161
|
+
return Promise.reject(e);
|
7162
|
+
}
|
7163
|
+
},
|
7164
|
+
changeFilters: function changeFilters(filters) {
|
7165
|
+
this.filters = filters;
|
7166
|
+
},
|
7167
|
+
loadQueries: function loadQueries(user) {
|
7168
|
+
try {
|
7169
|
+
var _this11 = this;
|
7170
|
+
|
7171
|
+
var _temp13 = _catch$2(function () {
|
7172
|
+
return Promise.resolve(API.queries(user, urlQuery)).then(function (_API$queries) {
|
7173
|
+
_this11.queries = _API$queries;
|
7174
|
+
});
|
7175
|
+
}, function (error) {
|
7176
|
+
console.log(error);
|
7177
|
+
});
|
7178
|
+
|
7179
|
+
return Promise.resolve(_temp13 && _temp13.then ? _temp13.then(function () {}) : void 0);
|
7180
|
+
} catch (e) {
|
7181
|
+
return Promise.reject(e);
|
7182
|
+
}
|
7183
|
+
},
|
7184
|
+
createQuery: function createQuery(query, user) {
|
7185
|
+
try {
|
7186
|
+
var _this13 = this;
|
7187
|
+
|
7188
|
+
var _temp15 = _catch$2(function () {
|
7189
|
+
return Promise.resolve(API.createQuery(query, urlQuery)).then(function () {
|
7190
|
+
return Promise.resolve(_this13.loadQueries(user)).then(function () {});
|
7191
|
+
});
|
7192
|
+
}, function (error) {
|
7193
|
+
console.log(error);
|
7194
|
+
});
|
7195
|
+
|
7196
|
+
return Promise.resolve(_temp15 && _temp15.then ? _temp15.then(function () {}) : void 0);
|
7197
|
+
} catch (e) {
|
7198
|
+
return Promise.reject(e);
|
7199
|
+
}
|
7200
|
+
},
|
7201
|
+
removeQuery: function removeQuery(id, user) {
|
7202
|
+
try {
|
7203
|
+
var _this15 = this;
|
7204
|
+
|
7205
|
+
var _temp17 = _catch$2(function () {
|
7206
|
+
return Promise.resolve(API.removeQuery(id, urlQuery)).then(function () {
|
7207
|
+
return Promise.resolve(_this15.loadQueries(user)).then(function () {});
|
7208
|
+
});
|
7209
|
+
}, function (error) {
|
7210
|
+
console.log(error);
|
7211
|
+
});
|
7212
|
+
|
7213
|
+
return Promise.resolve(_temp17 && _temp17.then ? _temp17.then(function () {}) : void 0);
|
7214
|
+
} catch (e) {
|
7215
|
+
return Promise.reject(e);
|
7216
|
+
}
|
7217
|
+
}
|
7218
|
+
};
|
7219
|
+
};
|
7220
|
+
/**
|
7221
|
+
* table API
|
7222
|
+
*/
|
7223
|
+
|
7224
|
+
|
7225
|
+
var TableAPI$2 = function TableAPI(url, host, params) {
|
7226
|
+
if (params === void 0) {
|
7227
|
+
params = "";
|
7228
|
+
}
|
7229
|
+
|
7230
|
+
var http = HTTPClient(host || window.API || process.env.REACT_APP_API, Session);
|
7231
|
+
return {
|
7232
|
+
all: function all(filters) {
|
7233
|
+
var queryParams = "?" + params;
|
7234
|
+
|
7235
|
+
if (filters) {
|
7236
|
+
var filterQuery = Object.keys(filters).reduce(function (query, key) {
|
7237
|
+
var value = filters[key];
|
7238
|
+
|
7239
|
+
if (typeof value === 'boolean') {
|
7240
|
+
return query.concat(key + "=" + value + "&");
|
7241
|
+
} else if (Array.isArray(value)) {
|
7242
|
+
var param = value.length === 0 ? '' : value.reduce(function (param, item) {
|
7243
|
+
param = param.concat(key + "=" + item + "&");
|
7244
|
+
return param;
|
7245
|
+
}, "");
|
7246
|
+
return query.concat(param);
|
7247
|
+
} else {
|
7248
|
+
return query.concat(key + "=%" + filters[key] + "%&");
|
7249
|
+
}
|
7250
|
+
}, "");
|
7251
|
+
queryParams = queryParams.concat(filterQuery);
|
7252
|
+
}
|
7253
|
+
|
7254
|
+
return http.GET(url + queryParams);
|
7255
|
+
},
|
7256
|
+
find: function find(id) {
|
7257
|
+
return http.GET(url + "/" + id);
|
7258
|
+
},
|
7259
|
+
create: function create(form) {
|
7260
|
+
var body = JSON.stringify(form);
|
7261
|
+
return http.POST(url, body);
|
7262
|
+
},
|
7263
|
+
update: function update(form) {
|
7264
|
+
var body = JSON.stringify(form);
|
7265
|
+
return http.PUT(url + "/" + form.id, body);
|
7266
|
+
},
|
7267
|
+
remove: function remove(id) {
|
7268
|
+
return http.DELETE(url + "/" + id);
|
7269
|
+
},
|
7270
|
+
queries: function queries(user, url2) {
|
7271
|
+
var url3 = url2 ? url2 : url;
|
7272
|
+
url3 = url3 + "queries";
|
7273
|
+
if (user) url3 = url3 + ("?user=" + user);
|
7274
|
+
return http.GET(url3);
|
7275
|
+
},
|
7276
|
+
createQuery: function createQuery(form, url2) {
|
7277
|
+
var url3 = url2 ? url2 : url;
|
7278
|
+
var body = JSON.stringify(form);
|
7279
|
+
return http.POST(url3 + "queries", body);
|
7280
|
+
},
|
7281
|
+
removeQuery: function removeQuery(id, url2) {
|
7282
|
+
var url3 = url2 ? url2 : url;
|
7283
|
+
return http.DELETE(url3 + "queries/" + id);
|
7284
|
+
}
|
7285
|
+
};
|
7286
|
+
};
|
7287
|
+
|
7288
|
+
/**
|
7289
|
+
* Table Page
|
7290
|
+
*/
|
7291
|
+
|
7292
|
+
function _catch$1(body, recover) {
|
7293
|
+
try {
|
7294
|
+
var result = body();
|
7295
|
+
} catch (e) {
|
7296
|
+
return recover(e);
|
7297
|
+
}
|
7298
|
+
|
7299
|
+
if (result && result.then) {
|
7300
|
+
return result.then(void 0, recover);
|
7301
|
+
}
|
7302
|
+
|
7303
|
+
return result;
|
7304
|
+
}
|
7305
|
+
/**
|
7306
|
+
* TableRowEditor
|
7307
|
+
*/
|
7308
|
+
|
7309
|
+
|
7310
|
+
var TablePage2 = function TablePage2(props) {
|
7311
|
+
var playScenario = function playScenario() {
|
7312
|
+
try {
|
7313
|
+
var promises1 = pageContext.all.map(function (item) {
|
7314
|
+
try {
|
7315
|
+
return Promise.resolve(pageContext.remove(item.id));
|
7316
|
+
} catch (e) {
|
7317
|
+
return Promise.reject(e);
|
7318
|
+
}
|
7319
|
+
});
|
7320
|
+
Promise.all(promises1).then(function () {
|
7321
|
+
try {
|
7322
|
+
var promises2 = scenario.map(function (item) {
|
7323
|
+
try {
|
7324
|
+
return Promise.resolve(pageContext.create(item));
|
7325
|
+
} catch (e) {
|
7326
|
+
return Promise.reject(e);
|
7327
|
+
}
|
7328
|
+
});
|
7329
|
+
Promise.all(promises2).then(function () {
|
7330
|
+
try {
|
7331
|
+
return Promise.resolve(pageContext.load()).then(function () {
|
7332
|
+
setPageContext(Object.assign({}, pageContext));
|
7333
|
+
});
|
7334
|
+
} catch (e) {
|
7335
|
+
return Promise.reject(e);
|
7336
|
+
}
|
7337
|
+
});
|
7338
|
+
return Promise.resolve();
|
7339
|
+
} catch (e) {
|
7340
|
+
return Promise.reject(e);
|
7341
|
+
}
|
7342
|
+
});
|
7343
|
+
return Promise.resolve();
|
7344
|
+
} catch (e) {
|
7345
|
+
return Promise.reject(e);
|
7346
|
+
}
|
7347
|
+
};
|
7348
|
+
|
7349
|
+
var save = function save() {
|
7350
|
+
try {
|
7351
|
+
return Promise.resolve(pageContext.update(form)).then(function () {
|
7352
|
+
setPageContext(Object.assign({}, pageContext));
|
7353
|
+
});
|
7354
|
+
} catch (e) {
|
7355
|
+
return Promise.reject(e);
|
7356
|
+
}
|
7357
|
+
};
|
7358
|
+
|
7359
|
+
var reload = function reload() {
|
7360
|
+
try {
|
7361
|
+
return Promise.resolve(pageContext.load()).then(function () {
|
7362
|
+
setPageContext(Object.assign({}, pageContext));
|
7363
|
+
});
|
7364
|
+
} catch (e) {
|
7365
|
+
return Promise.reject(e);
|
7366
|
+
}
|
7367
|
+
};
|
7368
|
+
|
7369
|
+
var site = React.useContext(SiteContext);
|
7370
|
+
var _props$id = props.id,
|
7371
|
+
id = _props$id === void 0 ? "table" : _props$id,
|
7372
|
+
icon = props.icon,
|
7373
|
+
title = props.title,
|
7374
|
+
name = props.name,
|
7375
|
+
schema = props.schema,
|
7376
|
+
url = props.url,
|
7377
|
+
field = props.field,
|
7378
|
+
host = props.host,
|
7379
|
+
_props$params = props.params,
|
7380
|
+
params = _props$params === void 0 ? "" : _props$params,
|
7381
|
+
_props$autosave = props.autosave,
|
7382
|
+
autosave = _props$autosave === void 0 ? true : _props$autosave,
|
7383
|
+
_props$delay = props.delay,
|
7384
|
+
delay = _props$delay === void 0 ? 1000 : _props$delay,
|
7385
|
+
editable = props.editable,
|
7386
|
+
_props$actions = props.actions,
|
7387
|
+
actions = _props$actions === void 0 ? [] : _props$actions,
|
7388
|
+
_props$dev = props.dev,
|
7389
|
+
dev = _props$dev === void 0 ? false : _props$dev,
|
7390
|
+
tableActions = props.tableActions,
|
7391
|
+
_props$selectionActio = props.selectionActions,
|
7392
|
+
selectionActions = _props$selectionActio === void 0 ? [] : _props$selectionActio,
|
7393
|
+
_props$canFilter = props.canFilter,
|
7394
|
+
canFilter = _props$canFilter === void 0 ? false : _props$canFilter,
|
7395
|
+
_props$canAdd = props.canAdd,
|
7396
|
+
canAdd = _props$canAdd === void 0 ? true : _props$canAdd,
|
7397
|
+
_props$canDelete = props.canDelete,
|
7398
|
+
canDelete = _props$canDelete === void 0 ? true : _props$canDelete,
|
7399
|
+
_props$canEdit = props.canEdit,
|
7400
|
+
canEdit = _props$canEdit === void 0 ? true : _props$canEdit,
|
7401
|
+
_props$canQuery = props.canQuery,
|
7402
|
+
canQuery = _props$canQuery === void 0 ? false : _props$canQuery,
|
7403
|
+
urlQuery = props.urlQuery,
|
7404
|
+
user = props.user,
|
7405
|
+
groupBy = props.groupBy,
|
7406
|
+
validator = props.validator,
|
7407
|
+
scenario = props.scenario,
|
7408
|
+
formFilter = props.formFilter,
|
7409
|
+
tableFilter = props.tableFilter,
|
7410
|
+
_props$editorFilter = props.editorFilter,
|
7411
|
+
editorFilter = _props$editorFilter === void 0 ? false : _props$editorFilter,
|
7412
|
+
tableClassName = props.tableClassName,
|
7413
|
+
children = props.children;
|
7414
|
+
|
7415
|
+
var _useContext = React.useContext(PageContext),
|
7416
|
+
pageContext = _useContext[0],
|
7417
|
+
setPageContext = _useContext[1];
|
7418
|
+
|
7419
|
+
var context = TableContext$1(url, field, host, urlQuery, params);
|
7420
|
+
var selected = pageContext.selected;
|
7421
|
+
var timer = React.useRef(null);
|
7422
|
+
|
7423
|
+
var _useState = React.useState(selected),
|
7424
|
+
form = _useState[0],
|
7425
|
+
setForm = _useState[1];
|
7426
|
+
|
7427
|
+
React.useEffect(function () {
|
7428
|
+
try {
|
7429
|
+
return Promise.resolve(context.load()).then(function () {
|
7430
|
+
function _temp2() {
|
7431
|
+
setPageContext(context);
|
7432
|
+
}
|
7433
|
+
|
7434
|
+
var _temp = function () {
|
7435
|
+
if (canQuery) return Promise.resolve(context.loadQueries(user)).then(function () {});
|
7436
|
+
}();
|
7437
|
+
|
7438
|
+
return _temp && _temp.then ? _temp.then(_temp2) : _temp2(_temp);
|
7439
|
+
});
|
7440
|
+
} catch (e) {
|
7441
|
+
return Promise.reject(e);
|
7442
|
+
}
|
7443
|
+
}, []);
|
7444
|
+
React.useEffect(function () {
|
7445
|
+
setForm(selected);
|
7446
|
+
}, [selected]);
|
7447
|
+
React.useEffect(function () {
|
7448
|
+
if (autosave) {
|
7449
|
+
clearTimeout(timer.current);
|
7450
|
+
timer.current = setTimeout(function () {
|
7451
|
+
if (canSave()) save();
|
7452
|
+
}, delay);
|
7453
|
+
}
|
7454
|
+
}, [form]);
|
7455
|
+
|
7456
|
+
function add() {
|
7457
|
+
var onOK = function onOK(form) {
|
7458
|
+
try {
|
7459
|
+
return Promise.resolve(pageContext.create(form)).then(function () {
|
7460
|
+
setPageContext(Object.assign({}, pageContext));
|
7461
|
+
});
|
7462
|
+
} catch (e) {
|
7463
|
+
return Promise.reject(e);
|
7464
|
+
}
|
7465
|
+
};
|
7466
|
+
|
7467
|
+
site.openDialog( /*#__PURE__*/React__default["default"].createElement(CreateContentDialog, {
|
7468
|
+
label: "Crear " + name,
|
7469
|
+
type: schema,
|
7470
|
+
onOK: onOK,
|
7471
|
+
validator: validator,
|
7472
|
+
filter: formFilter
|
7473
|
+
}));
|
7474
|
+
}
|
7475
|
+
|
7476
|
+
function saveQuery(filters) {
|
7477
|
+
var onOK = function onOK(form) {
|
7478
|
+
try {
|
7479
|
+
form.filters = filters;
|
7480
|
+
form.layout = {};
|
7481
|
+
form.user = user;
|
7482
|
+
form.url = url;
|
7483
|
+
return Promise.resolve(pageContext.createQuery(form, user)).then(function () {
|
7484
|
+
setPageContext(Object.assign({}, pageContext));
|
7485
|
+
});
|
7486
|
+
} catch (e) {
|
7487
|
+
return Promise.reject(e);
|
7488
|
+
}
|
7489
|
+
};
|
7490
|
+
|
7491
|
+
site.openDialog( /*#__PURE__*/React__default["default"].createElement(CreateContentDialog, {
|
7492
|
+
label: "Nueva query",
|
7493
|
+
type: QUERY,
|
7494
|
+
onOK: onOK
|
7495
|
+
}));
|
7496
|
+
}
|
7497
|
+
|
7498
|
+
function change(next) {
|
7499
|
+
setForm(next);
|
7500
|
+
}
|
7501
|
+
|
7502
|
+
function canSave() {
|
7503
|
+
var can = !equal__default["default"](form, selected);
|
7504
|
+
return can;
|
7505
|
+
}
|
7506
|
+
|
7507
|
+
function closeAside() {
|
7508
|
+
pageContext.select(null);
|
7509
|
+
setPageContext(Object.assign({}, pageContext));
|
7510
|
+
}
|
7511
|
+
|
7512
|
+
function renderAside() {
|
7513
|
+
var rowSelected = selected && form;
|
7514
|
+
var rowChecked = pageContext.checked && pageContext.checked.size > 0;
|
7515
|
+
|
7516
|
+
if (rowSelected || rowChecked) {
|
7517
|
+
return /*#__PURE__*/React__default["default"].createElement("aside", {
|
7518
|
+
className: "table-page"
|
7519
|
+
}, rowSelected ? /*#__PURE__*/React__default["default"].createElement(TableRowEditor$1, {
|
7520
|
+
content: new Content(schema, form),
|
7521
|
+
filter: editorFilter,
|
7522
|
+
onChange: change,
|
7523
|
+
onClose: closeAside,
|
7524
|
+
editable: canEdit
|
7525
|
+
}) : null, rowChecked ? /*#__PURE__*/React__default["default"].createElement(TableSelector$1, {
|
7526
|
+
schema: schema,
|
7527
|
+
actions: selectionActions
|
7528
|
+
}) : null);
|
7529
|
+
}
|
7530
|
+
|
7531
|
+
return null;
|
7532
|
+
}
|
7533
|
+
|
7534
|
+
function renderActions() {
|
7535
|
+
return actions.map(function (element) {
|
7536
|
+
var action = function action() {
|
7537
|
+
return element.props.action(pageContext);
|
7538
|
+
};
|
7539
|
+
|
7540
|
+
var clone = React__default["default"].cloneElement(element, {
|
7541
|
+
action: action
|
7542
|
+
});
|
7543
|
+
return clone;
|
7544
|
+
});
|
7545
|
+
}
|
7546
|
+
|
7547
|
+
return /*#__PURE__*/React__default["default"].createElement(React.Fragment, null, /*#__PURE__*/React__default["default"].createElement(Header, {
|
7548
|
+
className: "table-page",
|
7549
|
+
title: /*#__PURE__*/React__default["default"].createElement(Text, null, title)
|
7550
|
+
}, canAdd ? /*#__PURE__*/React__default["default"].createElement(Button, {
|
7551
|
+
icon: "add",
|
7552
|
+
label: "A\xF1adir",
|
7553
|
+
action: add,
|
7554
|
+
raised: true
|
7555
|
+
}) : null, "\xA0", /*#__PURE__*/React__default["default"].createElement(Button, {
|
7556
|
+
icon: "refresh",
|
7557
|
+
label: "Reload",
|
7558
|
+
action: reload
|
7559
|
+
}), dev ? /*#__PURE__*/React__default["default"].createElement(MenuIcon, {
|
7560
|
+
align: "alignRight"
|
7561
|
+
}, /*#__PURE__*/React__default["default"].createElement(MenuItem, {
|
7562
|
+
label: "Cargar Escenario 1",
|
7563
|
+
onSelect: playScenario
|
7564
|
+
})) : null, renderActions()), canQuery || canFilter ? /*#__PURE__*/React__default["default"].createElement("menu", {
|
7565
|
+
className: "table-page"
|
7566
|
+
}, canQuery ? /*#__PURE__*/React__default["default"].createElement(TableQueries$1, {
|
7567
|
+
schema: schema,
|
7568
|
+
url: url,
|
7569
|
+
user: user
|
7570
|
+
}) : null, canFilter ? /*#__PURE__*/React__default["default"].createElement(TableFilters$1, {
|
7571
|
+
schema: schema,
|
7572
|
+
onSave: canQuery ? saveQuery : null
|
7573
|
+
}) : null) : null, /*#__PURE__*/React__default["default"].createElement("main", {
|
7574
|
+
key: id,
|
7575
|
+
className: "table-page"
|
7576
|
+
}, /*#__PURE__*/React__default["default"].createElement(TableEditor$1, {
|
7577
|
+
icon: icon,
|
7578
|
+
title: name,
|
7579
|
+
schema: schema,
|
7580
|
+
delay: delay,
|
7581
|
+
editable: editable,
|
7582
|
+
groupBy: groupBy,
|
7583
|
+
filter: tableFilter,
|
7584
|
+
actions: tableActions,
|
7585
|
+
canDelete: canDelete,
|
7586
|
+
className: tableClassName
|
7587
|
+
}), children ? /*#__PURE__*/React__default["default"].createElement("article", null, children) : null), renderAside());
|
7588
|
+
};
|
7589
|
+
|
7590
|
+
var TableRowEditor$1 = function TableRowEditor(props) {
|
7591
|
+
var name = props.name,
|
7592
|
+
content = props.content,
|
7593
|
+
filter = props.filter,
|
7594
|
+
editable = props.editable,
|
7595
|
+
onChange = props.onChange,
|
7596
|
+
onClose = props.onClose;
|
7597
|
+
return /*#__PURE__*/React__default["default"].createElement("div", {
|
7598
|
+
className: "table-row-editor"
|
7599
|
+
}, /*#__PURE__*/React__default["default"].createElement(Header, {
|
7600
|
+
icon: "local_offer",
|
7601
|
+
title: name || "Propiedades"
|
7602
|
+
}, /*#__PURE__*/React__default["default"].createElement(Icon, {
|
7603
|
+
icon: "close",
|
7604
|
+
clickable: true,
|
7605
|
+
action: onClose
|
7606
|
+
})), /*#__PURE__*/React__default["default"].createElement("main", null, editable ? /*#__PURE__*/React__default["default"].createElement(ContentEditor, {
|
7607
|
+
content: content,
|
7608
|
+
onChange: onChange,
|
7609
|
+
filter: filter
|
7610
|
+
}) : /*#__PURE__*/React__default["default"].createElement(ContentViewer, {
|
7611
|
+
content: content
|
7612
|
+
})));
|
7613
|
+
};
|
7614
|
+
/**
|
7615
|
+
* Table Selector
|
7616
|
+
*/
|
7617
|
+
|
7618
|
+
|
7619
|
+
var TableSelector$1 = function TableSelector(props) {
|
7620
|
+
var schema = props.schema,
|
7621
|
+
_props$actions2 = props.actions,
|
7622
|
+
actions = _props$actions2 === void 0 ? [] : _props$actions2;
|
7623
|
+
|
7624
|
+
var _useContext2 = React.useContext(PageContext),
|
7625
|
+
pageContext = _useContext2[0],
|
7626
|
+
setPageContext = _useContext2[1];
|
7627
|
+
|
7628
|
+
var all = pageContext.all,
|
7629
|
+
checked = pageContext.checked;
|
7630
|
+
var count = checked.size + "/" + all.length;
|
7631
|
+
var columns = Object.keys(schema).filter(function (key) {
|
7632
|
+
return schema[key].selectorColumn === true;
|
7633
|
+
}).map(function (key) {
|
7634
|
+
var field = schema[key];
|
7635
|
+
return {
|
7636
|
+
id: field.id,
|
7637
|
+
label: field.label
|
7638
|
+
};
|
7639
|
+
});
|
7640
|
+
var rows = all.filter(function (item) {
|
7641
|
+
return checked.has(item.id);
|
7642
|
+
});
|
7643
|
+
var table = {
|
7644
|
+
columns: columns,
|
7645
|
+
rows: rows || []
|
7646
|
+
};
|
7647
|
+
var buttons = actions.map(function (_ref) {
|
7648
|
+
var label = _ref.label,
|
7649
|
+
_action = _ref.action,
|
7650
|
+
validate = _ref.validate;
|
7651
|
+
return /*#__PURE__*/React__default["default"].createElement(Button, {
|
7652
|
+
label: label,
|
7653
|
+
raised: true,
|
7654
|
+
action: function action() {
|
7655
|
+
return _action(checked, pageContext, function () {
|
7656
|
+
try {
|
7657
|
+
return Promise.resolve(pageContext.load()).then(function () {
|
7658
|
+
setPageContext(Object.assign({}, pageContext));
|
7659
|
+
});
|
7660
|
+
} catch (e) {
|
7661
|
+
return Promise.reject(e);
|
7662
|
+
}
|
7663
|
+
}, rows);
|
7664
|
+
},
|
7665
|
+
disabled: !validate(checked, rows)
|
7666
|
+
});
|
7667
|
+
});
|
7668
|
+
return /*#__PURE__*/React__default["default"].createElement("div", {
|
7669
|
+
className: "table-selector"
|
7670
|
+
}, /*#__PURE__*/React__default["default"].createElement(Header, {
|
7671
|
+
icon: "checklist_rtl",
|
7672
|
+
title: "Selecci\xF3n"
|
7673
|
+
}, /*#__PURE__*/React__default["default"].createElement("span", {
|
7674
|
+
className: "size"
|
7675
|
+
}, count)), /*#__PURE__*/React__default["default"].createElement("main", null, /*#__PURE__*/React__default["default"].createElement(DataTable, table)), /*#__PURE__*/React__default["default"].createElement("footer", null, buttons));
|
7676
|
+
};
|
7677
|
+
/**
|
7678
|
+
* Table Queries
|
7679
|
+
*/
|
7680
|
+
|
7681
|
+
|
7682
|
+
var TableQueries$1 = function TableQueries(props) {
|
7683
|
+
var remove = function remove(id) {
|
7684
|
+
try {
|
7685
|
+
return Promise.resolve(pageContext.removeQuery(id, user)).then(function () {
|
7686
|
+
setPageContext(Object.assign({}, pageContext));
|
7687
|
+
});
|
7688
|
+
} catch (e) {
|
7689
|
+
return Promise.reject(e);
|
7690
|
+
}
|
7691
|
+
};
|
7692
|
+
|
7693
|
+
var _useContext3 = React.useContext(PageContext),
|
7694
|
+
pageContext = _useContext3[0],
|
7695
|
+
setPageContext = _useContext3[1];
|
7696
|
+
|
7697
|
+
var url = props.url,
|
7698
|
+
user = props.user;
|
7699
|
+
var _pageContext$queries = pageContext.queries,
|
7700
|
+
queries = _pageContext$queries === void 0 ? [] : _pageContext$queries;
|
7701
|
+
|
7702
|
+
var _useState2 = React.useState(),
|
7703
|
+
selected = _useState2[0],
|
7704
|
+
setSelected = _useState2[1];
|
7705
|
+
|
7706
|
+
function select(query) {
|
7707
|
+
setSelected(query.id);
|
7708
|
+
pageContext.changeFilters(query.filters);
|
7709
|
+
setPageContext(Object.assign({}, pageContext));
|
7710
|
+
}
|
7711
|
+
|
7712
|
+
return /*#__PURE__*/React__default["default"].createElement(React.Fragment, null, /*#__PURE__*/React__default["default"].createElement(Header, {
|
7713
|
+
className: "table-queries",
|
7714
|
+
title: /*#__PURE__*/React__default["default"].createElement(Text, null, "Queries")
|
7715
|
+
}), /*#__PURE__*/React__default["default"].createElement("main", {
|
7716
|
+
className: "table-queries"
|
7717
|
+
}, queries ? queries.filter(function (query) {
|
7718
|
+
return query.url === url;
|
7719
|
+
}).map(function (query) {
|
7720
|
+
var style = selected === query.id ? "selected" : "";
|
7721
|
+
return /*#__PURE__*/React__default["default"].createElement("div", {
|
7722
|
+
className: "table-queries-item " + style,
|
7723
|
+
onClick: function onClick() {
|
7724
|
+
return select(query);
|
7725
|
+
}
|
7726
|
+
}, /*#__PURE__*/React__default["default"].createElement(Icon, {
|
7727
|
+
icon: "star",
|
7728
|
+
size: "small"
|
7729
|
+
}), /*#__PURE__*/React__default["default"].createElement("label", null, query.name), /*#__PURE__*/React__default["default"].createElement(Icon, {
|
7730
|
+
icon: "close",
|
7731
|
+
clickable: true,
|
7732
|
+
size: "small",
|
7733
|
+
action: function action() {
|
7734
|
+
return remove(query.id);
|
7735
|
+
}
|
7736
|
+
}));
|
7737
|
+
}) : /*#__PURE__*/React__default["default"].createElement("div", null, "...empty...")));
|
7738
|
+
};
|
7739
|
+
/**
|
7740
|
+
* Table Filters
|
7741
|
+
*/
|
7742
|
+
|
7743
|
+
|
7744
|
+
var TableFilters$1 = function TableFilters(props) {
|
7745
|
+
var reload = function reload() {
|
7746
|
+
try {
|
7747
|
+
return Promise.resolve(pageContext.load(form)).then(function () {
|
7748
|
+
setPageContext(Object.assign({}, pageContext));
|
7749
|
+
});
|
7750
|
+
} catch (e) {
|
7751
|
+
return Promise.reject(e);
|
7752
|
+
}
|
7753
|
+
};
|
7754
|
+
|
7755
|
+
var change = function change(next) {
|
7756
|
+
try {
|
7757
|
+
setForm(next);
|
7758
|
+
return Promise.resolve();
|
7759
|
+
} catch (e) {
|
7760
|
+
return Promise.reject(e);
|
7761
|
+
}
|
7762
|
+
};
|
7763
|
+
|
7764
|
+
var _useContext4 = React.useContext(PageContext),
|
7765
|
+
pageContext = _useContext4[0],
|
7766
|
+
setPageContext = _useContext4[1];
|
7767
|
+
|
7768
|
+
var filters = pageContext.filters;
|
7769
|
+
var schema = props.schema,
|
7770
|
+
onSave = props.onSave;
|
7771
|
+
|
7772
|
+
var _useState3 = React.useState({}),
|
7773
|
+
form = _useState3[0],
|
7774
|
+
setForm = _useState3[1];
|
7775
|
+
|
7776
|
+
var filterSchema = React.useMemo(function () {
|
7777
|
+
var filterSchema = Object.assign({}, schema);
|
7778
|
+
|
7779
|
+
for (var key in filterSchema) {
|
7780
|
+
if (filterSchema[key].filter === false) {
|
7781
|
+
delete filterSchema[key];
|
7782
|
+
} else {
|
7783
|
+
if (filterSchema[key].type === TYPES.ENTITY) {
|
7784
|
+
var fs = filterSchema[key].item;
|
7785
|
+
|
7786
|
+
for (var key in fs) {
|
7787
|
+
if (fs[key].filter === false) delete fs[key];
|
7788
|
+
}
|
7789
|
+
}
|
7790
|
+
}
|
7791
|
+
} //Object.values(filterSchema).forEach(field => field.section = null)
|
7792
|
+
|
7793
|
+
|
7794
|
+
delete filterSchema.flows;
|
7795
|
+
return filterSchema;
|
7796
|
+
}, [schema]);
|
7797
|
+
React.useEffect(function () {
|
7798
|
+
if (filters) setForm(filters);
|
7799
|
+
}, [filters]);
|
7800
|
+
React.useEffect(function () {
|
7801
|
+
reload();
|
7802
|
+
}, [form]);
|
7803
|
+
|
7804
|
+
function clear() {
|
7805
|
+
change({});
|
7806
|
+
}
|
7807
|
+
|
7808
|
+
function save() {
|
7809
|
+
if (onSave) {
|
7810
|
+
onSave(form);
|
7811
|
+
}
|
7812
|
+
}
|
7813
|
+
|
7814
|
+
var content = new Content(filterSchema, form);
|
7815
|
+
return /*#__PURE__*/React__default["default"].createElement(React.Fragment, null, /*#__PURE__*/React__default["default"].createElement(Header, {
|
7816
|
+
className: "table-filters",
|
7817
|
+
title: /*#__PURE__*/React__default["default"].createElement(Text, null, "Filters")
|
7818
|
+
}, /*#__PURE__*/React__default["default"].createElement(Icon, {
|
7819
|
+
icon: "filter_list_off",
|
7820
|
+
size: "small",
|
7821
|
+
clickable: true,
|
7822
|
+
action: clear
|
7823
|
+
}), onSave ? /*#__PURE__*/React__default["default"].createElement(Icon, {
|
7824
|
+
icon: "save",
|
7825
|
+
size: "small",
|
7826
|
+
clickable: true,
|
7827
|
+
action: save
|
7828
|
+
}) : null), /*#__PURE__*/React__default["default"].createElement("main", {
|
7829
|
+
className: "table-filters"
|
7830
|
+
}, /*#__PURE__*/React__default["default"].createElement(ContentEditor, {
|
7831
|
+
content: content,
|
7832
|
+
onChange: change
|
7833
|
+
})));
|
7834
|
+
};
|
7835
|
+
/**
|
7836
|
+
* Table Editor
|
7837
|
+
*/
|
7838
|
+
|
7839
|
+
|
7840
|
+
var TableEditor$1 = function TableEditor(props) {
|
7841
|
+
var checkOne = function checkOne(id, field, value) {
|
7842
|
+
check([id], value);
|
7843
|
+
return Promise.resolve();
|
7844
|
+
};
|
7845
|
+
|
7846
|
+
var check = function check(ids, value) {
|
7847
|
+
try {
|
7848
|
+
pageContext.check(ids, value);
|
7849
|
+
setPageContext(Object.assign({}, pageContext));
|
7850
|
+
return Promise.resolve();
|
7851
|
+
} catch (e) {
|
7852
|
+
return Promise.reject(e);
|
7853
|
+
}
|
7854
|
+
};
|
7855
|
+
|
7856
|
+
var select = function select(row, event) {
|
7857
|
+
try {
|
7858
|
+
clear();
|
7859
|
+
return Promise.resolve(pageContext.select(row.id)).then(function () {
|
7860
|
+
setPageContext(Object.assign({}, pageContext));
|
7861
|
+
});
|
7862
|
+
} catch (e) {
|
7863
|
+
return Promise.reject(e);
|
7864
|
+
}
|
7865
|
+
};
|
7866
|
+
|
7867
|
+
var remove = function remove(id) {
|
7868
|
+
try {
|
7869
|
+
return Promise.resolve(site.confirm("Are you sure ?")).then(function (confirm) {
|
7870
|
+
var _temp3 = function () {
|
7871
|
+
if (confirm) {
|
7872
|
+
return Promise.resolve(pageContext.remove(id)).then(function () {
|
7873
|
+
pageContext.clear();
|
7874
|
+
setPageContext(Object.assign({}, pageContext));
|
7875
|
+
});
|
7876
|
+
}
|
7877
|
+
}();
|
7878
|
+
|
7879
|
+
if (_temp3 && _temp3.then) return _temp3.then(function () {});
|
7880
|
+
});
|
7881
|
+
} catch (e) {
|
7882
|
+
return Promise.reject(e);
|
7883
|
+
}
|
7884
|
+
};
|
7885
|
+
|
7886
|
+
var site = React.useContext(SiteContext);
|
7887
|
+
|
7888
|
+
var _useContext5 = React.useContext(PageContext),
|
7889
|
+
pageContext = _useContext5[0],
|
7890
|
+
setPageContext = _useContext5[1];
|
7891
|
+
|
7892
|
+
var _pageContext$all = pageContext.all,
|
7893
|
+
all = _pageContext$all === void 0 ? [] : _pageContext$all;
|
7894
|
+
var icon = props.icon,
|
7895
|
+
title = props.title,
|
7896
|
+
schema = props.schema,
|
7897
|
+
editable = props.editable,
|
7898
|
+
canDelete = props.canDelete,
|
7899
|
+
filter = props.filter,
|
7900
|
+
actions = props.actions,
|
7901
|
+
className = props.className;
|
7902
|
+
|
7903
|
+
var _useState4 = React.useState(props.groupBy),
|
7904
|
+
groupBy = _useState4[0],
|
7905
|
+
setGroupBy = _useState4[1];
|
7906
|
+
|
7907
|
+
function changeGroup(id, value) {
|
7908
|
+
setGroupBy(value);
|
7909
|
+
}
|
7910
|
+
|
7911
|
+
function change(rowID, cellID, value) {
|
7912
|
+
var _Object$assign;
|
7913
|
+
|
7914
|
+
var row = all.find(function (r) {
|
7915
|
+
return r.id === rowID;
|
7916
|
+
});
|
7917
|
+
var next = Object.assign({}, row, (_Object$assign = {}, _Object$assign[cellID] = value, _Object$assign));
|
7918
|
+
delete next.actions;
|
7919
|
+
pageContext.update(next);
|
7920
|
+
setPageContext(Object.assign({}, pageContext));
|
7921
|
+
}
|
7922
|
+
|
7923
|
+
function clear() {
|
7924
|
+
pageContext.clear();
|
7925
|
+
setPageContext(Object.assign({}, pageContext));
|
7926
|
+
}
|
7927
|
+
|
7928
|
+
function run(action, item) {
|
7929
|
+
action.action(item.id, pageContext, function () {
|
7930
|
+
try {
|
7931
|
+
return Promise.resolve(pageContext.load()).then(function () {
|
7932
|
+
setPageContext(Object.assign({}, pageContext));
|
7933
|
+
});
|
7934
|
+
} catch (e) {
|
7935
|
+
return Promise.reject(e);
|
7936
|
+
}
|
7937
|
+
});
|
7938
|
+
}
|
7939
|
+
|
7940
|
+
function buildGroupOptions(schema) {
|
7941
|
+
return Object.values(schema).filter(function (field) {
|
7942
|
+
return field.grouper === true;
|
7943
|
+
}).map(function (field) {
|
7944
|
+
return {
|
7945
|
+
label: field.label,
|
7946
|
+
value: field.id
|
7947
|
+
};
|
7948
|
+
});
|
7949
|
+
}
|
7950
|
+
|
7951
|
+
function renderGroupLabel(groupName) {
|
7952
|
+
var grouper = schema[groupBy];
|
7953
|
+
if (!groupName || !grouper) return "";
|
7954
|
+
|
7955
|
+
if (grouper.options) {
|
7956
|
+
var options = CHECK['isFunction'](grouper.options) ? grouper.options() : grouper.options;
|
7957
|
+
var option = options.find(function (option) {
|
7958
|
+
return option.value === groupName;
|
7959
|
+
});
|
7960
|
+
return option ? option.label : groupName;
|
7961
|
+
} else {
|
7962
|
+
return groupName;
|
7963
|
+
}
|
7964
|
+
}
|
7965
|
+
|
7966
|
+
var table = React.useMemo(function () {
|
7967
|
+
return {
|
7968
|
+
columns: Object.values(schema).filter(function (field) {
|
7969
|
+
return field.column === true;
|
7970
|
+
}).map(function (field) {
|
7971
|
+
var options = field.options;
|
7972
|
+
|
7973
|
+
if (options && typeof options == 'function') {
|
7974
|
+
options = options();
|
7975
|
+
}
|
7976
|
+
|
7977
|
+
return {
|
7978
|
+
id: field.id,
|
7979
|
+
label: field.label,
|
7980
|
+
type: field.type,
|
7981
|
+
format: field.format,
|
7982
|
+
item: field.item ? field.item : [],
|
7983
|
+
onChange: field.id === "checked" ? checkOne : field.editable ? change : null,
|
7984
|
+
|
7985
|
+
/* checked has it´s own handler */
|
7986
|
+
options: options
|
7987
|
+
};
|
7988
|
+
}),
|
7989
|
+
rows: []
|
7990
|
+
};
|
7991
|
+
}, [schema]);
|
7992
|
+
var items = filter ? filter(all) : all;
|
7993
|
+
if (items.length === 0) return /*#__PURE__*/React__default["default"].createElement("div", {
|
7994
|
+
className: "empty-message"
|
7995
|
+
}, /*#__PURE__*/React__default["default"].createElement(Icon, {
|
7996
|
+
icon: "search_off"
|
7997
|
+
}), /*#__PURE__*/React__default["default"].createElement(Text, null, "No Result Found"));
|
7998
|
+
var groups = items.reduce(function (groups, item) {
|
7999
|
+
var groupName = item[groupBy];
|
8000
|
+
if (!groups[groupName]) groups[groupName] = [];
|
8001
|
+
groups[groupName].push(item);
|
8002
|
+
return groups;
|
8003
|
+
}, {});
|
8004
|
+
var sections = Object.keys(groups).map(function (groupName) {
|
8005
|
+
var rows = groups[groupName].map(function (item) {
|
8006
|
+
item.checked = pageContext.checked ? pageContext.checked.has(item.id) : false;
|
8007
|
+
item.actions = actions ? actions.map(function (_action2) {
|
8008
|
+
return _action2.filter ? _action2.filter(item) ? /*#__PURE__*/React__default["default"].createElement(Icon, {
|
8009
|
+
icon: _action2.icon,
|
8010
|
+
clickable: true,
|
8011
|
+
size: "small",
|
8012
|
+
action: function action() {
|
8013
|
+
return run(_action2, item);
|
8014
|
+
}
|
8015
|
+
}) : null : /*#__PURE__*/React__default["default"].createElement(Icon, {
|
8016
|
+
icon: _action2.icon,
|
8017
|
+
clickable: true,
|
8018
|
+
size: "small",
|
8019
|
+
action: function action() {
|
8020
|
+
return run(_action2, item);
|
8021
|
+
}
|
8022
|
+
});
|
8023
|
+
}) : [];
|
8024
|
+
if (canDelete) item.actions.push( /*#__PURE__*/React__default["default"].createElement(Icon, {
|
8025
|
+
icon: "delete",
|
8026
|
+
size: "small",
|
8027
|
+
clickable: true,
|
8028
|
+
action: function action() {
|
8029
|
+
return remove(item.id);
|
8030
|
+
}
|
8031
|
+
}));
|
8032
|
+
return item;
|
8033
|
+
});
|
8034
|
+
table.rows = rows;
|
8035
|
+
return {
|
8036
|
+
id: groupName,
|
8037
|
+
checked: false,
|
8038
|
+
title: renderGroupLabel(groupName),
|
8039
|
+
info: groups[groupName].length,
|
8040
|
+
open: true,
|
8041
|
+
children: /*#__PURE__*/React__default["default"].createElement(DataTable, _extends({}, table, {
|
8042
|
+
onRowSelection: select,
|
8043
|
+
editable: editable,
|
8044
|
+
onCheckAll: check,
|
8045
|
+
className: className
|
8046
|
+
}))
|
8047
|
+
};
|
8048
|
+
});
|
8049
|
+
return /*#__PURE__*/React__default["default"].createElement(React.Fragment, null, /*#__PURE__*/React__default["default"].createElement(Header, {
|
8050
|
+
icon: icon,
|
8051
|
+
title: /*#__PURE__*/React__default["default"].createElement(Text, null, title)
|
8052
|
+
}, groupBy ? /*#__PURE__*/React__default["default"].createElement(DropDown, {
|
8053
|
+
id: "groupBy",
|
8054
|
+
label: "Agrupar Por",
|
8055
|
+
value: groupBy,
|
8056
|
+
options: buildGroupOptions(schema),
|
8057
|
+
onChange: changeGroup
|
8058
|
+
}) : null), /*#__PURE__*/React__default["default"].createElement("main", {
|
8059
|
+
className: "table-editor"
|
8060
|
+
}, /*#__PURE__*/React__default["default"].createElement(Accordion, {
|
8061
|
+
sections: sections
|
8062
|
+
})));
|
8063
|
+
};
|
8064
|
+
/**
|
8065
|
+
* Table Context
|
8066
|
+
*/
|
8067
|
+
|
6950
8068
|
var TableContext$1 = function TableContext(url, field, host, urlQuery, params) {
|
6951
8069
|
var API = TableAPI$1(url, host, params);
|
6952
8070
|
return {
|
@@ -8291,6 +9409,7 @@
|
|
8291
9409
|
return value && (Object.prototype.toString.call(value) === "[object Function]" || "function" === typeof value || value instanceof Function);
|
8292
9410
|
};
|
8293
9411
|
|
9412
|
+
exports.Accordion = Accordion;
|
8294
9413
|
exports.Avatar = Avatar;
|
8295
9414
|
exports.Button = Button;
|
8296
9415
|
exports.Calendar = Calendar;
|
@@ -8350,8 +9469,9 @@
|
|
8350
9469
|
exports.TabbedContentEditor = TabbedContentEditor;
|
8351
9470
|
exports.TabbedTablePage = TabbedTablePage;
|
8352
9471
|
exports.TabbedView = TabbedView;
|
8353
|
-
exports.TableEditor = TableEditor$
|
9472
|
+
exports.TableEditor = TableEditor$2;
|
8354
9473
|
exports.TablePage = TablePage;
|
9474
|
+
exports.TablePage2 = TablePage2;
|
8355
9475
|
exports.Tabs = Tabs;
|
8356
9476
|
exports.Text = Text;
|
8357
9477
|
exports.TextArea = TextArea;
|