ywana-core8 0.0.825 → 0.0.827

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.umd.js CHANGED
@@ -1,14 +1,15 @@
1
1
  (function (global, factory) {
2
- typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('material-design-icons-iconfont/dist/material-design-icons.css'), require('react'), require('react-switch'), require('moment'), require('moment-range'), require('moment/locale/es'), require('resumablejs'), require('react-notifications-component'), require('react-notifications-component/dist/theme.css'), require('deep-equal')) :
3
- typeof define === 'function' && define.amd ? define(['exports', 'material-design-icons-iconfont/dist/material-design-icons.css', 'react', 'react-switch', 'moment', 'moment-range', 'moment/locale/es', 'resumablejs', 'react-notifications-component', 'react-notifications-component/dist/theme.css', 'deep-equal'], factory) :
4
- (global = global || self, factory(global.ywanaCore8 = {}, null, global.react, global.reactSwitch, global.moment, global.momentRange, null, global.resumablejs, global.reactNotificationsComponent, null, global.deepEqual));
5
- })(this, (function (exports, materialDesignIcons_css, React, RSwitch, moment$1, momentRange, es, ResumableJS, reactNotificationsComponent, theme_css, equal) {
2
+ typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('material-design-icons-iconfont/dist/material-design-icons.css'), require('react'), require('react-switch'), require('moment'), require('moment-range'), require('moment/locale/es'), require('resumablejs'), require('react-notifications-component'), require('react-notifications-component/dist/theme.css'), require('axios'), require('deep-equal')) :
3
+ typeof define === 'function' && define.amd ? define(['exports', 'material-design-icons-iconfont/dist/material-design-icons.css', 'react', 'react-switch', 'moment', 'moment-range', 'moment/locale/es', 'resumablejs', 'react-notifications-component', 'react-notifications-component/dist/theme.css', 'axios', 'deep-equal'], factory) :
4
+ (global = global || self, factory(global.ywanaCore8 = {}, null, global.react, global.reactSwitch, global.moment, global.momentRange, null, global.resumablejs, global.reactNotificationsComponent, null, global.axios, global.deepEqual));
5
+ })(this, (function (exports, materialDesignIcons_css, React, RSwitch, moment$1, momentRange, es, ResumableJS, reactNotificationsComponent, theme_css, axios, equal) {
6
6
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
7
7
 
8
8
  var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
9
9
  var RSwitch__default = /*#__PURE__*/_interopDefaultLegacy(RSwitch);
10
10
  var moment__default = /*#__PURE__*/_interopDefaultLegacy(moment$1);
11
11
  var ResumableJS__default = /*#__PURE__*/_interopDefaultLegacy(ResumableJS);
12
+ var axios__default = /*#__PURE__*/_interopDefaultLegacy(axios);
12
13
  var equal__default = /*#__PURE__*/_interopDefaultLegacy(equal);
13
14
 
14
15
  /**
@@ -3148,6 +3149,7 @@
3148
3149
 
3149
3150
  var KanbanColumn = function KanbanColumn(_ref2) {
3150
3151
  var id = _ref2.id,
3152
+ actions = _ref2.actions,
3151
3153
  icon = _ref2.icon,
3152
3154
  title = _ref2.title,
3153
3155
  subtitle = _ref2.subtitle,
@@ -3191,7 +3193,7 @@
3191
3193
  onIcon: "toggle_on",
3192
3194
  clickable: true,
3193
3195
  action: toggle
3194
- })));
3196
+ }), actions));
3195
3197
  };
3196
3198
  /**
3197
3199
  * Kanban Card
@@ -3795,7 +3797,7 @@
3795
3797
  * Upload File
3796
3798
  */
3797
3799
 
3798
- var UploadFile = function UploadFile(_ref) {
3800
+ var UploadFile$1 = function UploadFile(_ref) {
3799
3801
  var file = _ref.file;
3800
3802
  var icon = file.icon,
3801
3803
  name = file.name,
@@ -3831,7 +3833,7 @@
3831
3833
  state: file.uploadState,
3832
3834
  error: file.uploadError
3833
3835
  };
3834
- return /*#__PURE__*/React__default["default"].createElement(UploadFile, {
3836
+ return /*#__PURE__*/React__default["default"].createElement(UploadFile$1, {
3835
3837
  key: f.name,
3836
3838
  file: f
3837
3839
  });
@@ -5303,6 +5305,145 @@
5303
5305
  return editor(task);
5304
5306
  };
5305
5307
 
5308
+ /*
5309
+ * Upload Form
5310
+ */
5311
+
5312
+ var UploadForm = function UploadForm(props) {
5313
+ var _props$label = props.label,
5314
+ label = _props$label === void 0 ? "Browse" : _props$label,
5315
+ _props$text = props.text,
5316
+ text = _props$text === void 0 ? "Drag and drop here" : _props$text,
5317
+ url = props.url,
5318
+ _props$headers = props.headers,
5319
+ headers = _props$headers === void 0 ? {} : _props$headers,
5320
+ onSuccess = props.onSuccess,
5321
+ onError = props.onError;
5322
+
5323
+ var _useState = React.useState(null),
5324
+ file = _useState[0],
5325
+ setFile = _useState[1];
5326
+
5327
+ var _useState2 = React.useState(0),
5328
+ progress = _useState2[0],
5329
+ setProgress = _useState2[1];
5330
+
5331
+ React.useEffect(function () {
5332
+ if (file) {
5333
+ uploadFile(file);
5334
+ }
5335
+ }, [file]);
5336
+
5337
+ function onDragOver(e) {
5338
+ e.stopPropagation();
5339
+ e.preventDefault();
5340
+ }
5341
+
5342
+ function onDragEnter(e) {
5343
+ e.preventDefault();
5344
+ e.stopPropagation();
5345
+
5346
+ if (e.type === "dragenter" || e.type === "dragover") {
5347
+ console.log("dragenter");
5348
+ } else if (e.type === "dragleave") {
5349
+ console.log("dragleave");
5350
+ }
5351
+ }
5352
+
5353
+ function onFileDrop(e) {
5354
+ e.preventDefault();
5355
+ e.stopPropagation();
5356
+
5357
+ if (e.dataTransfer.files && e.dataTransfer.files[0]) {
5358
+ var files = e.dataTransfer.files;
5359
+ handleFiles(files);
5360
+ }
5361
+ }
5362
+
5363
+ function handleFiles(files) {
5364
+ var file = files[0];
5365
+ console.log("handleFiles", files, file);
5366
+ setFile(file);
5367
+ }
5368
+
5369
+ function handleFile(e) {
5370
+ var file = e.target.files[0];
5371
+ setFile(file);
5372
+ }
5373
+
5374
+ function uploadFile(file) {
5375
+ var formData = new FormData();
5376
+ formData.append('file', file);
5377
+ var config = {
5378
+ onUploadProgress: function onUploadProgress(progressEvent) {
5379
+ setProgress(Math.round(progressEvent.loaded / progressEvent.total * 100));
5380
+ },
5381
+ headers: _extends({
5382
+ 'content-type': 'multipart/form-data'
5383
+ }, headers)
5384
+ };
5385
+ axios__default["default"].post(url, formData, config).then(function (response) {
5386
+ if (onSuccess) onSuccess(response);
5387
+ })["catch"](function (error) {
5388
+ if (onError) onError(error);
5389
+ });
5390
+ }
5391
+
5392
+ return /*#__PURE__*/React__default["default"].createElement("div", {
5393
+ className: "upload-form",
5394
+ onDragEnter: onDragEnter,
5395
+ onDragOver: onDragOver,
5396
+ onDrop: onFileDrop
5397
+ }, /*#__PURE__*/React__default["default"].createElement("div", {
5398
+ className: "upload-area"
5399
+ }, /*#__PURE__*/React__default["default"].createElement("div", {
5400
+ className: "upload-area-text"
5401
+ }, text), /*#__PURE__*/React__default["default"].createElement("label", {
5402
+ htmlFor: "upload"
5403
+ }, /*#__PURE__*/React__default["default"].createElement("span", {
5404
+ className: "upload-label"
5405
+ }, label)), /*#__PURE__*/React__default["default"].createElement("input", {
5406
+ id: "upload",
5407
+ type: "file",
5408
+ onChange: handleFile
5409
+ })), file ? /*#__PURE__*/React__default["default"].createElement(UploadFile, {
5410
+ name: file.name,
5411
+ progress: progress
5412
+ }) : null);
5413
+ };
5414
+ /**
5415
+ * Upload File
5416
+ */
5417
+
5418
+ var UploadFile = function UploadFile(props) {
5419
+ var name = props.name,
5420
+ _props$progress = props.progress,
5421
+ progress = _props$progress === void 0 ? 0 : _props$progress;
5422
+ return /*#__PURE__*/React__default["default"].createElement("div", {
5423
+ className: "upload-file"
5424
+ }, /*#__PURE__*/React__default["default"].createElement("div", {
5425
+ className: "upload-file-info"
5426
+ }, /*#__PURE__*/React__default["default"].createElement("label", null, name), /*#__PURE__*/React__default["default"].createElement("span", null, progress, " %")), /*#__PURE__*/React__default["default"].createElement(UploadProgressBar, {
5427
+ progress: progress
5428
+ }));
5429
+ };
5430
+ /**
5431
+ * Upload Progress Bar
5432
+ */
5433
+
5434
+
5435
+ var UploadProgressBar = function UploadProgressBar(props) {
5436
+ var progress = props.progress;
5437
+ return /*#__PURE__*/React__default["default"].createElement("div", {
5438
+ className: "upload-progress-bar"
5439
+ }, /*#__PURE__*/React__default["default"].createElement("div", {
5440
+ className: "upload-progress-bar-inner",
5441
+ style: {
5442
+ width: progress + "%"
5443
+ }
5444
+ }));
5445
+ };
5446
+
5306
5447
  /**
5307
5448
  * Password Editor
5308
5449
  */
@@ -11652,7 +11793,8 @@
11652
11793
  exports.TreededContentEditor = TreededContentEditor;
11653
11794
  exports.UploadArea = UploadArea;
11654
11795
  exports.UploadDialog = UploadDialog;
11655
- exports.UploadFile = UploadFile;
11796
+ exports.UploadFile = UploadFile$1;
11797
+ exports.UploadForm = UploadForm;
11656
11798
  exports.UploadIcon = UploadIcon;
11657
11799
  exports.Uploader = Uploader;
11658
11800
  exports.View = View;