ywana-core8 0.0.38 → 0.0.42

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 CHANGED
@@ -170,7 +170,7 @@ var Icon = function Icon(_ref) {
170
170
  * HTML Button
171
171
  */
172
172
 
173
- var Button = function Button(_ref) {
173
+ var Button$1 = function Button(_ref) {
174
174
  var label = _ref.label,
175
175
  icon = _ref.icon,
176
176
  action = _ref.action,
@@ -1547,7 +1547,7 @@ var LoginBox = function LoginBox(_ref) {
1547
1547
  onEnter: ok,
1548
1548
  type: "password",
1549
1549
  outlined: true
1550
- })), /*#__PURE__*/React__default["default"].createElement("footer", null, onForgot ? /*#__PURE__*/React__default["default"].createElement(Button, {
1550
+ })), /*#__PURE__*/React__default["default"].createElement("footer", null, onForgot ? /*#__PURE__*/React__default["default"].createElement(Button$1, {
1551
1551
  label: tx(forgotLabel),
1552
1552
  action: forgot,
1553
1553
  disabled: !canForgot()
@@ -1555,7 +1555,7 @@ var LoginBox = function LoginBox(_ref) {
1555
1555
  className: "load-box"
1556
1556
  }, /*#__PURE__*/React__default["default"].createElement(Icon, {
1557
1557
  icon: "refresh"
1558
- })) : /*#__PURE__*/React__default["default"].createElement(Button, {
1558
+ })) : /*#__PURE__*/React__default["default"].createElement(Button$1, {
1559
1559
  label: tx(loginLabel),
1560
1560
  action: ok,
1561
1561
  disabled: !canOK(),
@@ -1638,10 +1638,10 @@ var ResetPasswordBox = function ResetPasswordBox(_ref) {
1638
1638
  onEnter: ok
1639
1639
  }), error ? /*#__PURE__*/React__default["default"].createElement("div", {
1640
1640
  className: "error"
1641
- }, error) : null), /*#__PURE__*/React__default["default"].createElement("footer", null, /*#__PURE__*/React__default["default"].createElement(Button, {
1641
+ }, error) : null), /*#__PURE__*/React__default["default"].createElement("footer", null, /*#__PURE__*/React__default["default"].createElement(Button$1, {
1642
1642
  label: "Close",
1643
1643
  action: close
1644
- }), /*#__PURE__*/React__default["default"].createElement(Button, {
1644
+ }), /*#__PURE__*/React__default["default"].createElement(Button$1, {
1645
1645
  label: "OK",
1646
1646
  raised: true,
1647
1647
  disabled: !canOK(),
@@ -3123,7 +3123,7 @@ var CollectionAdder = function CollectionAdder(_ref11) {
3123
3123
  className: "collection-adder"
3124
3124
  }, edit ? /*#__PURE__*/React__default["default"].createElement(DataTable, _extends({}, table, {
3125
3125
  editable: true
3126
- })) : /*#__PURE__*/React__default["default"].createElement(Button, {
3126
+ })) : /*#__PURE__*/React__default["default"].createElement(Button$1, {
3127
3127
  icon: "add",
3128
3128
  label: "Add",
3129
3129
  action: toggle
@@ -3139,6 +3139,7 @@ var CreateContentDialog$1 = function CreateContentDialog(_ref) {
3139
3139
  type = _ref.type,
3140
3140
  _ref$value = _ref.value,
3141
3141
  value = _ref$value === void 0 ? {} : _ref$value,
3142
+ filter = _ref.filter,
3142
3143
  validator = _ref.validator,
3143
3144
  onOK = _ref.onOK;
3144
3145
  var site = React.useContext(SiteContext);
@@ -3176,18 +3177,19 @@ var CreateContentDialog$1 = function CreateContentDialog(_ref) {
3176
3177
  site.closeDialog();
3177
3178
  }
3178
3179
 
3179
- function createFilter(field, content) {
3180
- return field.required === true || field.optional === true; // TODO: execute props.filter
3180
+ function filterForm(field, content) {
3181
+ var visible = field.required === true || field.optional === true;
3182
+ return filter ? visible && filter(field, content) : visible;
3181
3183
  }
3182
3184
 
3183
- var actions = /*#__PURE__*/React__default["default"].createElement(React.Fragment, null, /*#__PURE__*/React__default["default"].createElement(Button, {
3185
+ var actions = /*#__PURE__*/React__default["default"].createElement(React.Fragment, null, /*#__PURE__*/React__default["default"].createElement(Button$1, {
3184
3186
  label: "CLOSE",
3185
3187
  action: function action() {
3186
3188
  return onAction("CLOSE");
3187
3189
  }
3188
3190
  }), /*#__PURE__*/React__default["default"].createElement("div", {
3189
3191
  className: "expand"
3190
- }), /*#__PURE__*/React__default["default"].createElement(Button, {
3192
+ }), /*#__PURE__*/React__default["default"].createElement(Button$1, {
3191
3193
  label: "OK",
3192
3194
  action: function action() {
3193
3195
  return onAction("OK");
@@ -3207,7 +3209,7 @@ var CreateContentDialog$1 = function CreateContentDialog(_ref) {
3207
3209
  }, /*#__PURE__*/React__default["default"].createElement(ContentEditor, {
3208
3210
  content: content,
3209
3211
  onChange: change,
3210
- filter: createFilter
3212
+ filter: filterForm
3211
3213
  }), errors.map(function (error) {
3212
3214
  return /*#__PURE__*/React__default["default"].createElement(Text, {
3213
3215
  use: "overline",
@@ -3264,14 +3266,19 @@ var EditContentDialog = function EditContentDialog(_ref) {
3264
3266
  site.closeDialog();
3265
3267
  }
3266
3268
 
3267
- var actions = /*#__PURE__*/React__default["default"].createElement(React.Fragment, null, /*#__PURE__*/React__default["default"].createElement(Button, {
3269
+ function filterForm(field, content) {
3270
+ var visible = field.required === true || field.optional === true;
3271
+ return filter ? visible && filter(field, content) : visible;
3272
+ }
3273
+
3274
+ var actions = /*#__PURE__*/React__default["default"].createElement(React.Fragment, null, /*#__PURE__*/React__default["default"].createElement(Button$1, {
3268
3275
  label: "CLOSE",
3269
3276
  action: function action() {
3270
3277
  return onAction("CLOSE");
3271
3278
  }
3272
3279
  }), /*#__PURE__*/React__default["default"].createElement("div", {
3273
3280
  className: "expand"
3274
- }), /*#__PURE__*/React__default["default"].createElement(Button, {
3281
+ }), /*#__PURE__*/React__default["default"].createElement(Button$1, {
3275
3282
  label: "OK",
3276
3283
  action: function action() {
3277
3284
  return onAction("OK");
@@ -3291,7 +3298,7 @@ var EditContentDialog = function EditContentDialog(_ref) {
3291
3298
  }, /*#__PURE__*/React__default["default"].createElement(ContentEditor, {
3292
3299
  content: content,
3293
3300
  onChange: change,
3294
- filter: filter
3301
+ filter: filterForm
3295
3302
  }), errors.map(function (error) {
3296
3303
  return /*#__PURE__*/React__default["default"].createElement(Text, {
3297
3304
  use: "overline",
@@ -3359,12 +3366,12 @@ var CreateContentDialog = function CreateContentDialog(_ref) {
3359
3366
  return creation;
3360
3367
  }
3361
3368
 
3362
- var actions = /*#__PURE__*/React__default["default"].createElement(React.Fragment, null, /*#__PURE__*/React__default["default"].createElement(Button, {
3369
+ var actions = /*#__PURE__*/React__default["default"].createElement(React.Fragment, null, /*#__PURE__*/React__default["default"].createElement(Button$1, {
3363
3370
  label: "CLOSE",
3364
3371
  action: function action() {
3365
3372
  return onAction("CLOSE");
3366
3373
  }
3367
- }), /*#__PURE__*/React__default["default"].createElement(Button, {
3374
+ }), /*#__PURE__*/React__default["default"].createElement(Button$1, {
3368
3375
  label: "OK",
3369
3376
  action: function action() {
3370
3377
  return onAction("OK");
@@ -3481,11 +3488,11 @@ var CollectionPage = function CollectionPage(props) {
3481
3488
  return /*#__PURE__*/React__default["default"].createElement(React.Fragment, null, /*#__PURE__*/React__default["default"].createElement(Header, {
3482
3489
  className: "collection-page",
3483
3490
  title: /*#__PURE__*/React__default["default"].createElement(Text, null, title)
3484
- }, /*#__PURE__*/React__default["default"].createElement(Button, {
3491
+ }, /*#__PURE__*/React__default["default"].createElement(Button$1, {
3485
3492
  icon: "add",
3486
3493
  label: "Add",
3487
3494
  action: add
3488
- }), /*#__PURE__*/React__default["default"].createElement(Button, {
3495
+ }), /*#__PURE__*/React__default["default"].createElement(Button$1, {
3489
3496
  icon: "refresh",
3490
3497
  label: "Reload",
3491
3498
  action: reload
@@ -3743,7 +3750,7 @@ var CollectionEditor = function CollectionEditor(props) {
3743
3750
  }, /*#__PURE__*/React__default["default"].createElement(Menu, null, /*#__PURE__*/React__default["default"].createElement(MenuItem, {
3744
3751
  label: "Eliminar",
3745
3752
  onSelect: remove
3746
- }))), autosave === true ? null : /*#__PURE__*/React__default["default"].createElement(Button, {
3753
+ }))), autosave === true ? null : /*#__PURE__*/React__default["default"].createElement(Button$1, {
3747
3754
  icon: "save",
3748
3755
  label: "Guardar Cambios",
3749
3756
  raised: true,
@@ -3999,7 +4006,8 @@ var TablePage = function TablePage(props) {
3999
4006
  autosave = _props$autosave === void 0 ? true : _props$autosave,
4000
4007
  groupBy = props.groupBy,
4001
4008
  validator = props.validator,
4002
- scenario = props.scenario;
4009
+ scenario = props.scenario,
4010
+ formFilter = props.formFilter;
4003
4011
 
4004
4012
  var _useContext = React.useContext(PageContext),
4005
4013
  pageContext = _useContext[0],
@@ -4043,13 +4051,15 @@ var TablePage = function TablePage(props) {
4043
4051
  } catch (e) {
4044
4052
  return Promise.reject(e);
4045
4053
  }
4046
- };
4054
+ }; //site.openDialog(<EditContentDialog label={`Crear ${name}`} type={schema} onOK={onOK} validator={validator} />);
4055
+
4047
4056
 
4048
- site.openDialog( /*#__PURE__*/React__default["default"].createElement(EditContentDialog, {
4057
+ site.openDialog( /*#__PURE__*/React__default["default"].createElement(CreateContentDialog$1, {
4049
4058
  label: "Crear " + name,
4050
4059
  type: schema,
4051
4060
  onOK: onOK,
4052
- validator: validator
4061
+ validator: validator,
4062
+ filter: formFilter
4053
4063
  }));
4054
4064
  }
4055
4065
 
@@ -4091,7 +4101,7 @@ var TablePage = function TablePage(props) {
4091
4101
  return /*#__PURE__*/React__default["default"].createElement(React.Fragment, null, /*#__PURE__*/React__default["default"].createElement(Header, {
4092
4102
  className: "table-page",
4093
4103
  title: /*#__PURE__*/React__default["default"].createElement(Text, null, title)
4094
- }, canAdd ? /*#__PURE__*/React__default["default"].createElement(Button, {
4104
+ }, canAdd ? /*#__PURE__*/React__default["default"].createElement(Button$1, {
4095
4105
  icon: "add",
4096
4106
  label: "A\xF1adir",
4097
4107
  action: add,
@@ -4145,7 +4155,9 @@ var TableFilters = function TableFilters(props) {
4145
4155
 
4146
4156
  var filterSchema = React.useMemo(function () {
4147
4157
  var filterSchema = Object.assign({}, schema);
4148
- Object.values(filterSchema).forEach(function (field) {
4158
+ Object.values(filterSchema).filter(function (field) {
4159
+ return field.filter === true;
4160
+ }).forEach(function (field) {
4149
4161
  return field.section = null;
4150
4162
  });
4151
4163
  delete filterSchema.flows;
@@ -4159,7 +4171,7 @@ var TableFilters = function TableFilters(props) {
4159
4171
  var content = new Content(filterSchema, form);
4160
4172
  return /*#__PURE__*/React__default["default"].createElement(React.Fragment, null, /*#__PURE__*/React__default["default"].createElement(Header, {
4161
4173
  title: /*#__PURE__*/React__default["default"].createElement(Text, null, "Filtros")
4162
- }, /*#__PURE__*/React__default["default"].createElement(Button, {
4174
+ }, /*#__PURE__*/React__default["default"].createElement(Button$1, {
4163
4175
  icon: "filter_list_off",
4164
4176
  label: "Limpiar",
4165
4177
  action: clear
@@ -4559,7 +4571,80 @@ var UploadIcon = function UploadIcon(_ref) {
4559
4571
  clickable: true
4560
4572
  }));
4561
4573
  };
4574
+ /**
4575
+ * Upload Button
4576
+ */
4577
+
4578
+
4579
+ function UploadButton(_ref2) {
4580
+ var resumable = _ref2.resumable,
4581
+ _ref2$icon = _ref2.icon,
4582
+ icon = _ref2$icon === void 0 ? "file_upload" : _ref2$icon,
4583
+ _ref2$label = _ref2.label,
4584
+ label = _ref2$label === void 0 ? "Upload" : _ref2$label;
4585
+ var buttonElement = React.useRef();
4586
+ React.useEffect(function () {
4587
+ if (resumable && buttonElement) resumable.assignBrowse(buttonElement.current);
4588
+ }, []);
4589
+ return /*#__PURE__*/React__default["default"].createElement("div", {
4590
+ className: "upload-button",
4591
+ ref: buttonElement
4592
+ }, /*#__PURE__*/React__default["default"].createElement(Button, {
4593
+ icon: icon,
4594
+ label: label,
4595
+ outlined: true
4596
+ }));
4597
+ }
4598
+
4599
+ /**
4600
+ * Upload File
4601
+ */
4602
+
4603
+ var UploadFile = function UploadFile(_ref) {
4604
+ var file = _ref.file,
4605
+ state = _ref.state,
4606
+ progress = _ref.progress,
4607
+ error = _ref.error;
4608
+ var STATES = {
4609
+ 'IDLE': 0,
4610
+ 'RUNNING': 1,
4611
+ 'SUCCESS': 2,
4612
+ 'ERROR': 3
4613
+ };
4614
+ var icon = error ? /*#__PURE__*/React__default["default"].createElement(Icon, {
4615
+ icon: "image",
4616
+ className: "error"
4617
+ }) : /*#__PURE__*/React__default["default"].createElement(Icon, {
4618
+ icon: "image"
4619
+ });
4620
+ return state !== STATES.IDLE ? /*#__PURE__*/React__default["default"].createElement(React.Fragment, null, /*#__PURE__*/React__default["default"].createElement("div", {
4621
+ className: "upload-file"
4622
+ }, icon, /*#__PURE__*/React__default["default"].createElement(Text, {
4623
+ use: "body1",
4624
+ tag: "label"
4625
+ }, file.fileName), state === STATES.RUNNING ? /*#__PURE__*/React__default["default"].createElement(LinearProgress, {
4626
+ progress: progress
4627
+ }) : '', state === STATES.RUNNING ? /*#__PURE__*/React__default["default"].createElement(Icon, {
4628
+ icon: "close",
4629
+ clickable: true
4630
+ }) : '', state === STATES.SUCCESS ? /*#__PURE__*/React__default["default"].createElement(Icon, {
4631
+ icon: "done"
4632
+ }) : '', state === STATES.ERROR ? /*#__PURE__*/React__default["default"].createElement(Icon, {
4633
+ icon: "error"
4634
+ }) : ''), error ? /*#__PURE__*/React__default["default"].createElement("div", {
4635
+ className: "error"
4636
+ }, /*#__PURE__*/React__default["default"].createElement(Text, {
4637
+ use: "overline"
4638
+ }, error)) : '') : '';
4639
+ };
4562
4640
 
4641
+ var STATES = {
4642
+ IDLE: 0,
4643
+ RUNNING: 1,
4644
+ SUCCESS: 2,
4645
+ ERROR: 3,
4646
+ COMPLETED: 4
4647
+ };
4563
4648
  /**
4564
4649
  * Uploader
4565
4650
  */
@@ -4568,22 +4653,19 @@ var Uploader = function Uploader(_ref) {
4568
4653
  var label = _ref.label,
4569
4654
  target = _ref.target,
4570
4655
  accept = _ref.accept,
4656
+ _ref$simultaneousUplo = _ref.simultaneousUploads,
4657
+ simultaneousUploads = _ref$simultaneousUplo === void 0 ? 1 : _ref$simultaneousUplo,
4571
4658
  className = _ref.className,
4572
4659
  onSuccess = _ref.onSuccess,
4573
4660
  onError = _ref.onError,
4574
- onComplete = _ref.onComplete;
4575
- var STATES = {
4576
- 'IDLE': 0,
4577
- 'RUNNING': 1,
4578
- 'SUCCESS': 2,
4579
- 'ERROR': 3,
4580
- 'COMPLETED': 4
4581
- };
4661
+ onComplete = _ref.onComplete,
4662
+ _ref$errors = _ref.errors,
4663
+ errors = _ref$errors === void 0 ? [] : _ref$errors;
4582
4664
  var resumable = React.useMemo(function () {
4583
4665
  var config = {
4584
4666
  target: target,
4585
4667
  chunkSize: 1 * 1024 * 1024,
4586
- simultaneousUploads: 1,
4668
+ simultaneousUploads: simultaneousUploads,
4587
4669
  testChunks: false,
4588
4670
  throttleProgressCallbacks: 1,
4589
4671
  fileType: accept
@@ -4598,6 +4680,7 @@ var Uploader = function Uploader(_ref) {
4598
4680
  }, []);
4599
4681
 
4600
4682
  var _useState = React.useState(0),
4683
+ progress = _useState[0],
4601
4684
  setProgress = _useState[1];
4602
4685
 
4603
4686
  var _useState2 = React.useState(STATES.IDLE),
@@ -4615,12 +4698,14 @@ var Uploader = function Uploader(_ref) {
4615
4698
  function onFileAdded(file) {
4616
4699
  files.push(file);
4617
4700
  setFiles(files);
4701
+ setState(STATES.RUNNING);
4618
4702
  resumable.upload();
4619
4703
  }
4620
4704
 
4621
4705
  function onFileProgress(file) {
4622
4706
  var progress = file.progress();
4623
4707
  setProgress(progress);
4708
+ if (onProgress) onProgress(files);
4624
4709
  }
4625
4710
 
4626
4711
  function onFileSuccess(file, message) {
@@ -4641,54 +4726,32 @@ var Uploader = function Uploader(_ref) {
4641
4726
 
4642
4727
  return /*#__PURE__*/React__default["default"].createElement("div", {
4643
4728
  className: "uploader " + className
4644
- }, /*#__PURE__*/React__default["default"].createElement(UploadArea, {
4729
+ }, state === STATES.IDLE ? /*#__PURE__*/React__default["default"].createElement(UploadArea, {
4645
4730
  resumable: resumable,
4646
4731
  state: state,
4647
4732
  label: label,
4648
- error: error
4649
- }));
4733
+ error: error,
4734
+ progress: progress
4735
+ }) : null, state === STATES.RUNNING || STATES.SUCCESS || STATES.ERROR ? /*#__PURE__*/React__default["default"].createElement(UploadProgress, {
4736
+ files: files,
4737
+ errors: errors
4738
+ }) : null);
4650
4739
  };
4651
4740
 
4652
- /**
4653
- * Upload File
4654
- */
4655
-
4656
- var UploadFile = function UploadFile(_ref) {
4657
- var file = _ref.file,
4658
- state = _ref.state,
4659
- progress = _ref.progress,
4660
- error = _ref.error;
4661
- var STATES = {
4662
- 'IDLE': 0,
4663
- 'RUNNING': 1,
4664
- 'SUCCESS': 2,
4665
- 'ERROR': 3
4666
- };
4667
- var icon = error ? /*#__PURE__*/React__default["default"].createElement(Icon, {
4668
- icon: "image",
4669
- className: "error"
4670
- }) : /*#__PURE__*/React__default["default"].createElement(Icon, {
4671
- icon: "image"
4672
- });
4673
- return state !== STATES.IDLE ? /*#__PURE__*/React__default["default"].createElement(React.Fragment, null, /*#__PURE__*/React__default["default"].createElement("div", {
4674
- className: "upload-file"
4675
- }, icon, /*#__PURE__*/React__default["default"].createElement(Text, {
4676
- use: "body1",
4677
- tag: "label"
4678
- }, file.fileName), state === STATES.RUNNING ? /*#__PURE__*/React__default["default"].createElement(LinearProgress, {
4679
- progress: progress
4680
- }) : '', state === STATES.RUNNING ? /*#__PURE__*/React__default["default"].createElement(Icon, {
4681
- icon: "close",
4682
- clickable: true
4683
- }) : '', state === STATES.SUCCESS ? /*#__PURE__*/React__default["default"].createElement(Icon, {
4684
- icon: "done"
4685
- }) : '', state === STATES.ERROR ? /*#__PURE__*/React__default["default"].createElement(Icon, {
4686
- icon: "error"
4687
- }) : ''), error ? /*#__PURE__*/React__default["default"].createElement("div", {
4688
- className: "error"
4689
- }, /*#__PURE__*/React__default["default"].createElement(Text, {
4690
- use: "overline"
4691
- }, error)) : '') : '';
4741
+ var UploadProgress = function UploadProgress(_ref2) {
4742
+ var _ref2$files = _ref2.files,
4743
+ files = _ref2$files === void 0 ? [] : _ref2$files,
4744
+ errors = _ref2.errors;
4745
+ return /*#__PURE__*/React__default["default"].createElement("div", null, files.map(function (file) {
4746
+ errors.some(function (e) {
4747
+ return e === file.fileName;
4748
+ }) ? "Fichero Mal Nombrado" : "";
4749
+ return /*#__PURE__*/React__default["default"].createElement(UploadFile, {
4750
+ file: file,
4751
+ state: STATES.RUNNING,
4752
+ progress: file.progress()
4753
+ });
4754
+ }));
4692
4755
  };
4693
4756
 
4694
4757
  /**
@@ -4724,7 +4787,7 @@ var UploadDialog = function UploadDialog(_ref) {
4724
4787
  }
4725
4788
  }
4726
4789
 
4727
- var actions = /*#__PURE__*/React__default["default"].createElement(React.Fragment, null, /*#__PURE__*/React__default["default"].createElement(Button, {
4790
+ var actions = /*#__PURE__*/React__default["default"].createElement(React.Fragment, null, /*#__PURE__*/React__default["default"].createElement(Button$1, {
4728
4791
  label: "CLOSE",
4729
4792
  action: function action() {
4730
4793
  return onAction("CLOSE");
@@ -4758,7 +4821,7 @@ var isFunction = function isFunction(value) {
4758
4821
  return value && (Object.prototype.toString.call(value) === "[object Function]" || "function" === typeof value || value instanceof Function);
4759
4822
  };
4760
4823
 
4761
- exports.Button = Button;
4824
+ exports.Button = Button$1;
4762
4825
  exports.CheckBox = CheckBox;
4763
4826
  exports.Chip = Chip;
4764
4827
  exports.Chips = Chips;
@@ -4815,6 +4878,7 @@ exports.TreeItem = TreeItem;
4815
4878
  exports.TreeNode = TreeNode;
4816
4879
  exports.TreededContentEditor = TreededContentEditor;
4817
4880
  exports.UploadArea = UploadArea;
4881
+ exports.UploadButton = UploadButton;
4818
4882
  exports.UploadDialog = UploadDialog;
4819
4883
  exports.UploadFile = UploadFile;
4820
4884
  exports.Uploader = Uploader;