eoss-ui 0.3.97 → 0.4.14

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 (102) hide show
  1. package/lib/button-group.js +98 -15
  2. package/lib/button.js +100 -17
  3. package/lib/ca-login.js +326 -0
  4. package/lib/card.js +2 -2
  5. package/lib/cascader.js +2 -2
  6. package/lib/checkbox-group.js +104 -18
  7. package/lib/clients.js +2 -2
  8. package/lib/data-table-form.js +104 -21
  9. package/lib/data-table.js +228 -35
  10. package/lib/date-picker.js +100 -17
  11. package/lib/dialog.js +101 -17
  12. package/lib/enterprise.js +2 -2
  13. package/lib/eoss-ui.common.js +480 -122
  14. package/lib/error-page.js +2 -2
  15. package/lib/flow-group.js +100 -17
  16. package/lib/flow-list.js +98 -15
  17. package/lib/flow.js +98 -15
  18. package/lib/form.js +112 -26
  19. package/lib/handle-user.js +100 -17
  20. package/lib/handler.js +100 -17
  21. package/lib/index.js +1 -1
  22. package/lib/input-number.js +100 -17
  23. package/lib/input.js +100 -17
  24. package/lib/label.js +2 -2
  25. package/lib/login.js +126 -27
  26. package/lib/main.js +98 -15
  27. package/lib/mainComp.js +98 -15
  28. package/lib/menu.js +2 -2
  29. package/lib/nav.js +100 -17
  30. package/lib/notify.js +2 -2
  31. package/lib/page.js +100 -17
  32. package/lib/pagination.js +2 -2
  33. package/lib/player.js +100 -17
  34. package/lib/qr-code.js +107 -24
  35. package/lib/radio-group.js +106 -20
  36. package/lib/select-ganged.js +104 -18
  37. package/lib/select.js +114 -25
  38. package/lib/selector-panel.js +109 -23
  39. package/lib/selector.js +106 -20
  40. package/lib/sizer.js +100 -17
  41. package/lib/steps.js +100 -17
  42. package/lib/switch.js +100 -17
  43. package/lib/table-form.js +107 -24
  44. package/lib/tabs-panel.js +2 -2
  45. package/lib/tabs.js +100 -17
  46. package/lib/theme-chalk/base.css +1 -1
  47. package/lib/theme-chalk/ca-login.css +1 -0
  48. package/lib/theme-chalk/fonts/iconfont.ttf +0 -0
  49. package/lib/theme-chalk/fonts/iconfont.woff +0 -0
  50. package/lib/theme-chalk/icon.css +1 -1
  51. package/lib/theme-chalk/index.css +1 -1
  52. package/lib/theme-chalk/main.css +1 -1
  53. package/lib/theme-chalk/menu.css +1 -1
  54. package/lib/theme-chalk/sizer.css +1 -1
  55. package/lib/theme-chalk/upload.css +1 -1
  56. package/lib/tips.js +110 -22
  57. package/lib/toolbar.js +2 -2
  58. package/lib/tree-group.js +100 -17
  59. package/lib/tree.js +100 -17
  60. package/lib/upload.js +98 -15
  61. package/lib/utils/util.js +98 -15
  62. package/lib/wujie.js +100 -17
  63. package/lib/wxlogin.js +100 -17
  64. package/package.json +2 -2
  65. package/packages/ca-login/index.js +5 -0
  66. package/packages/ca-login/src/main.vue +62 -0
  67. package/packages/checkbox-group/index.js +3 -3
  68. package/packages/checkbox-group/src/main.vue +4 -1
  69. package/packages/data-table/src/column.vue +110 -28
  70. package/packages/data-table/src/main.vue +2 -1
  71. package/packages/data-table-form/src/table.vue +1 -1
  72. package/packages/form/src/main.vue +17 -7
  73. package/packages/login/src/main.vue +40 -13
  74. package/packages/radio-group/index.js +3 -3
  75. package/packages/radio-group/src/main.vue +4 -1
  76. package/packages/select/src/main.vue +7 -1
  77. package/packages/select-ganged/src/main.vue +4 -1
  78. package/packages/selector/src/main.vue +4 -1
  79. package/packages/selector-panel/src/selection.vue +4 -1
  80. package/packages/theme-chalk/lib/base.css +1 -1
  81. package/packages/theme-chalk/lib/ca-login.css +1 -0
  82. package/packages/theme-chalk/lib/fonts/iconfont.ttf +0 -0
  83. package/packages/theme-chalk/lib/fonts/iconfont.woff +0 -0
  84. package/packages/theme-chalk/lib/icon.css +1 -1
  85. package/packages/theme-chalk/lib/index.css +1 -1
  86. package/packages/theme-chalk/lib/main.css +1 -1
  87. package/packages/theme-chalk/lib/menu.css +1 -1
  88. package/packages/theme-chalk/lib/sizer.css +1 -1
  89. package/packages/theme-chalk/lib/upload.css +1 -1
  90. package/packages/theme-chalk/src/ca-login.scss +4 -0
  91. package/packages/theme-chalk/src/fonts/iconfont.ttf +0 -0
  92. package/packages/theme-chalk/src/fonts/iconfont.woff +0 -0
  93. package/packages/theme-chalk/src/icon.scss +8 -0
  94. package/packages/theme-chalk/src/index.scss +1 -0
  95. package/packages/tips/src/main.vue +5 -2
  96. package/src/index.js +4 -1
  97. package/src/utils/util.js +108 -36
  98. package/lib/theme-chalk/radio.css +0 -1
  99. package/packages/radio/index.js +0 -5
  100. package/packages/radio/src/main.vue +0 -259
  101. package/packages/theme-chalk/lib/radio.css +0 -1
  102. package/packages/theme-chalk/src/radio.scss +0 -3
package/lib/form.js CHANGED
@@ -82,7 +82,7 @@ module.exports =
82
82
  /******/
83
83
  /******/
84
84
  /******/ // Load entry module and return exports
85
- /******/ return __webpack_require__(__webpack_require__.s = 40);
85
+ /******/ return __webpack_require__(__webpack_require__.s = 41);
86
86
  /******/ })
87
87
  /************************************************************************/
88
88
  /******/ ({
@@ -534,7 +534,7 @@ var esEncode = function esEncode(value) {
534
534
  **/
535
535
  var esDecode = function esDecode(value) {
536
536
  var kleng = publicKey.length;
537
- var result;
537
+ var result = void 0;
538
538
  var cat1 = void 0;
539
539
  var cat2 = void 0;
540
540
  var cat3 = void 0;
@@ -639,11 +639,13 @@ var exportXls = function exportXls(_ref6) {
639
639
  _ref6$data = _ref6.data,
640
640
  data = _ref6$data === undefined ? [] : _ref6$data,
641
641
  name = _ref6.name,
642
- numbers = _ref6.numbers;
642
+ numbers = _ref6.numbers,
643
+ option = _ref6.option;
643
644
 
644
645
  var tbody = '';
645
646
  var aligns = [];
646
647
  var fields = [];
648
+ var keys = {};
647
649
  var others = {};
648
650
  var alink = document.createElement('a');
649
651
  for (var i = 0; i < thead.length; i++) {
@@ -653,12 +655,15 @@ var exportXls = function exportXls(_ref6) {
653
655
  }
654
656
  var tr = thead[i];
655
657
  var col = 0;
656
- for (var _x = 0; _x < tr.length; _x++) {
657
- var td = tr[_x];
658
+ for (var x = 0; x < tr.length; x++) {
659
+ var td = tr[x];
658
660
  if (td.property) {
659
- if (col === _x) {
661
+ if (col === x) {
660
662
  fields.push(td.property);
661
663
  aligns.push(td.align);
664
+ if (td.labelKey && td.valueKey) {
665
+ keys[td.property] = { labelKey: td.labelKey, valueKey: td.valueKey, multiple: !!(td.valueToString || td['value-to-string']) };
666
+ }
662
667
  } else {
663
668
  others[String(col)] = [td.property, td.align];
664
669
  }
@@ -676,12 +681,72 @@ var exportXls = function exportXls(_ref6) {
676
681
  fields.splice(_i2, 0, others[_i2][0]);
677
682
  aligns.splice(_i2, 0, others[_i2][1]);
678
683
  }
679
- for (var _i3 = 0; _i3 < data.length; _i3++) {
684
+
685
+ var _loop = function _loop(_i3) {
680
686
  tbody += '<tr>';
681
- for (var x in fields) {
682
- tbody += '<td align="' + aligns[x] + '">' + data[_i3][fields[x]] + '</td>';
687
+
688
+ var _loop2 = function _loop2(_x) {
689
+ var field = '';
690
+ var valueKey = keys[fields[_x]] && keys[fields[_x]].valueKey ? keys[fields[_x]].valueKey : 'value';
691
+ var labelKey = keys[fields[_x]] && keys[fields[_x]].labelKey ? keys[fields[_x]].labelKey : 'name';
692
+ if (option[fields[_x]]) {
693
+ if (Array.isArray(data[_i3][fields[_x]])) {
694
+ field = [];
695
+ data[_i3][fields[_x]].forEach(function (ele) {
696
+ option[fields[_x]].forEach(function (item) {
697
+ // eslint-disable-next-line eqeqeq
698
+ if (item[valueKey] == ele) {
699
+ field.push(item[labelKey]);
700
+ return;
701
+ }
702
+ });
703
+ });
704
+ field = field.join(' ');
705
+ } else if (typeof data[_i3][fields[_x]] === 'string' && keys[fields[_x]] && keys[fields[_x]].multiple) {
706
+ field = [];
707
+ data[_i3][fields[_x]].split(',').forEach(function (ele) {
708
+ option[fields[_x]].forEach(function (item) {
709
+ // eslint-disable-next-line eqeqeq
710
+ if (item[valueKey] == ele) {
711
+ field.push(item[labelKey]);
712
+ return;
713
+ }
714
+ });
715
+ });
716
+ field = field.join(' ');
717
+ } else {
718
+ option[fields[_x]].forEach(function (item) {
719
+ // eslint-disable-next-line eqeqeq
720
+ if (item[valueKey] == data[_i3][fields[_x]]) {
721
+ field = item[labelKey];
722
+ return;
723
+ }
724
+ });
725
+ }
726
+ } else if (_typeof(data[_i3][fields[_x]]) === 'object' && keys[fields[_x]]) {
727
+ if (Array.isArray(data[_i3][fields[_x]])) {
728
+ data[_i3][fields[_x]].forEach(function (item) {
729
+ field = [];
730
+ field.push({}.toString.call(item) === '[object Object]' ? item[labelKey] : item);
731
+ });
732
+ field = field.join(' ');
733
+ } else {
734
+ field = data[_i3][fields[_x]][labelKey];
735
+ }
736
+ } else {
737
+ field = data[_i3][fields[_x]];
738
+ }
739
+ tbody += '<td align="' + aligns[_x] + '">' + field + '</td>';
740
+ };
741
+
742
+ for (var _x in fields) {
743
+ _loop2(_x);
683
744
  }
684
745
  tbody += '</tr>';
746
+ };
747
+
748
+ for (var _i3 = 0; _i3 < data.length; _i3++) {
749
+ _loop(_i3);
685
750
  }
686
751
  if (!name) {
687
752
  name = 'table_' + new Date().getTime();
@@ -1383,7 +1448,8 @@ var isLogged = function isLogged(_ref8) {
1383
1448
  var to = _ref8.to,
1384
1449
  from = _ref8.from,
1385
1450
  next = _ref8.next,
1386
- exclude = _ref8.exclude,
1451
+ _ref8$exclude = _ref8.exclude,
1452
+ exclude = _ref8$exclude === undefined ? [] : _ref8$exclude,
1387
1453
  open = _ref8.open,
1388
1454
  cookie = _ref8.cookie,
1389
1455
  loginPage = _ref8.loginPage,
@@ -1429,10 +1495,27 @@ var isLogged = function isLogged(_ref8) {
1429
1495
  break;
1430
1496
  case 3:
1431
1497
  var href = res.results.authorizeUrl.replace('{redirectUri}', encodeURIComponent(url));
1432
- if (open) {
1433
- win.open(href);
1498
+ if (to.query.openType) {
1499
+ switch (to.query.openType) {
1500
+ case 'self':
1501
+ win.location.href = href;
1502
+ break;
1503
+ case 'blank':
1504
+ win.open(href);
1505
+ break;
1506
+ case 'top':
1507
+ win.top.location.href = href;
1508
+ break;
1509
+ case 'parent':
1510
+ win.parent.location.href = href;
1511
+ break;
1512
+ }
1434
1513
  } else {
1435
- win.top.location.href = href;
1514
+ if (open) {
1515
+ win.open(href);
1516
+ } else {
1517
+ win.top.location.href = href;
1518
+ }
1436
1519
  }
1437
1520
  break;
1438
1521
  }
@@ -1444,9 +1527,9 @@ var isLogged = function isLogged(_ref8) {
1444
1527
  }
1445
1528
  }
1446
1529
  }).catch(function (e) {});
1447
- } else if (token || to.path === '/' || to.path === '/login' || to.path === '/404' || exclude.indexOf(to.path) > -1 || exclude.indexOf(to.name) > -1) {
1448
- if (redirect && to.name && (to.name === 'login' || to.name === 'main')) {
1449
- window.location.replace(urlJoinParams({ url: './' + to.name + '.html', param: to.query }));
1530
+ } else if (token || to.path === '/' || to.path === '/404' || exclude.indexOf(to.path) > -1 || exclude.indexOf(to.name) > -1 || to.path === '/login' || token && to.path === '/main') {
1531
+ if (redirect && (to.path === '/main' || to.path === '/login')) {
1532
+ window.location.replace(urlJoinParams({ url: '.' + to.path + '.html', param: to.query }));
1450
1533
  } else {
1451
1534
  next();
1452
1535
  }
@@ -2611,14 +2694,14 @@ module.exports = require("axios");
2611
2694
 
2612
2695
  /***/ }),
2613
2696
 
2614
- /***/ 40:
2697
+ /***/ 41:
2615
2698
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
2616
2699
 
2617
2700
  "use strict";
2618
2701
  // ESM COMPAT FLAG
2619
2702
  __webpack_require__.r(__webpack_exports__);
2620
2703
 
2621
- // CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./packages/form/src/main.vue?vue&type=template&id=7542ec09&
2704
+ // CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./packages/form/src/main.vue?vue&type=template&id=79406044&
2622
2705
  var render = function () {
2623
2706
  var _vm = this
2624
2707
  var _h = _vm.$createElement
@@ -11167,7 +11250,7 @@ var staticRenderFns = []
11167
11250
  render._withStripped = true
11168
11251
 
11169
11252
 
11170
- // CONCATENATED MODULE: ./packages/form/src/main.vue?vue&type=template&id=7542ec09&
11253
+ // CONCATENATED MODULE: ./packages/form/src/main.vue?vue&type=template&id=79406044&
11171
11254
 
11172
11255
  // EXTERNAL MODULE: external "babel-runtime/regenerator"
11173
11256
  var regenerator_ = __webpack_require__(9);
@@ -14516,10 +14599,7 @@ function _asyncToGenerator(fn) { return function () { var gen = fn.apply(this, a
14516
14599
  },
14517
14600
  props: {
14518
14601
  model: {
14519
- type: [Object, String],
14520
- default: function _default() {
14521
- return {};
14522
- }
14602
+ type: [Object, String]
14523
14603
  },
14524
14604
  steps: Object,
14525
14605
  param: {
@@ -14671,6 +14751,14 @@ function _asyncToGenerator(fn) { return function () { var gen = fn.apply(this, a
14671
14751
  models: {
14672
14752
  get: function get() {
14673
14753
  if (this.model && typeof this.model !== 'string') {
14754
+ if (this.autoId && !this.businessId) {
14755
+ if (this.model[typeof this.autoId === 'string' ? this.autoId : 'id']) {
14756
+ this.$emit('update:businessId', this.model[typeof this.autoId === 'string' ? this.autoId : 'id']);
14757
+ } else {
14758
+ this.$emit('update:businessId', this.uuid);
14759
+ this.$emit('getId', this.uuid);
14760
+ }
14761
+ }
14674
14762
  return this.model;
14675
14763
  }
14676
14764
  return this.values;
@@ -14682,14 +14770,12 @@ function _asyncToGenerator(fn) { return function () { var gen = fn.apply(this, a
14682
14770
  _value: function _value() {
14683
14771
  var data = {};
14684
14772
  if (this.businessId !== undefined) {
14685
- data = { id: this.businessId };
14773
+ data[typeof this.autoId === 'string' ? this.autoId : 'id'] = this.businessId;
14686
14774
  } else if (typeof this.model !== 'string' && this.autoId) {
14687
14775
  if (typeof this.autoId === 'boolean' && !this.model.id) {
14688
14776
  data = { id: this.uuid };
14689
- this.$emit('update:businessId', this.uuid);
14690
14777
  } else if (!this.model[this.autoId]) {
14691
14778
  data[this.autoId] = this.uuid;
14692
- this.$emit('update:businessId', this.uuid);
14693
14779
  }
14694
14780
  }
14695
14781
  return util["a" /* default */].extend({}, data, this.value);
@@ -82,7 +82,7 @@ module.exports =
82
82
  /******/
83
83
  /******/
84
84
  /******/ // Load entry module and return exports
85
- /******/ return __webpack_require__(__webpack_require__.s = 42);
85
+ /******/ return __webpack_require__(__webpack_require__.s = 43);
86
86
  /******/ })
87
87
  /************************************************************************/
88
88
  /******/ ({
@@ -534,7 +534,7 @@ var esEncode = function esEncode(value) {
534
534
  **/
535
535
  var esDecode = function esDecode(value) {
536
536
  var kleng = publicKey.length;
537
- var result;
537
+ var result = void 0;
538
538
  var cat1 = void 0;
539
539
  var cat2 = void 0;
540
540
  var cat3 = void 0;
@@ -639,11 +639,13 @@ var exportXls = function exportXls(_ref6) {
639
639
  _ref6$data = _ref6.data,
640
640
  data = _ref6$data === undefined ? [] : _ref6$data,
641
641
  name = _ref6.name,
642
- numbers = _ref6.numbers;
642
+ numbers = _ref6.numbers,
643
+ option = _ref6.option;
643
644
 
644
645
  var tbody = '';
645
646
  var aligns = [];
646
647
  var fields = [];
648
+ var keys = {};
647
649
  var others = {};
648
650
  var alink = document.createElement('a');
649
651
  for (var i = 0; i < thead.length; i++) {
@@ -653,12 +655,15 @@ var exportXls = function exportXls(_ref6) {
653
655
  }
654
656
  var tr = thead[i];
655
657
  var col = 0;
656
- for (var _x = 0; _x < tr.length; _x++) {
657
- var td = tr[_x];
658
+ for (var x = 0; x < tr.length; x++) {
659
+ var td = tr[x];
658
660
  if (td.property) {
659
- if (col === _x) {
661
+ if (col === x) {
660
662
  fields.push(td.property);
661
663
  aligns.push(td.align);
664
+ if (td.labelKey && td.valueKey) {
665
+ keys[td.property] = { labelKey: td.labelKey, valueKey: td.valueKey, multiple: !!(td.valueToString || td['value-to-string']) };
666
+ }
662
667
  } else {
663
668
  others[String(col)] = [td.property, td.align];
664
669
  }
@@ -676,12 +681,72 @@ var exportXls = function exportXls(_ref6) {
676
681
  fields.splice(_i2, 0, others[_i2][0]);
677
682
  aligns.splice(_i2, 0, others[_i2][1]);
678
683
  }
679
- for (var _i3 = 0; _i3 < data.length; _i3++) {
684
+
685
+ var _loop = function _loop(_i3) {
680
686
  tbody += '<tr>';
681
- for (var x in fields) {
682
- tbody += '<td align="' + aligns[x] + '">' + data[_i3][fields[x]] + '</td>';
687
+
688
+ var _loop2 = function _loop2(_x) {
689
+ var field = '';
690
+ var valueKey = keys[fields[_x]] && keys[fields[_x]].valueKey ? keys[fields[_x]].valueKey : 'value';
691
+ var labelKey = keys[fields[_x]] && keys[fields[_x]].labelKey ? keys[fields[_x]].labelKey : 'name';
692
+ if (option[fields[_x]]) {
693
+ if (Array.isArray(data[_i3][fields[_x]])) {
694
+ field = [];
695
+ data[_i3][fields[_x]].forEach(function (ele) {
696
+ option[fields[_x]].forEach(function (item) {
697
+ // eslint-disable-next-line eqeqeq
698
+ if (item[valueKey] == ele) {
699
+ field.push(item[labelKey]);
700
+ return;
701
+ }
702
+ });
703
+ });
704
+ field = field.join(' ');
705
+ } else if (typeof data[_i3][fields[_x]] === 'string' && keys[fields[_x]] && keys[fields[_x]].multiple) {
706
+ field = [];
707
+ data[_i3][fields[_x]].split(',').forEach(function (ele) {
708
+ option[fields[_x]].forEach(function (item) {
709
+ // eslint-disable-next-line eqeqeq
710
+ if (item[valueKey] == ele) {
711
+ field.push(item[labelKey]);
712
+ return;
713
+ }
714
+ });
715
+ });
716
+ field = field.join(' ');
717
+ } else {
718
+ option[fields[_x]].forEach(function (item) {
719
+ // eslint-disable-next-line eqeqeq
720
+ if (item[valueKey] == data[_i3][fields[_x]]) {
721
+ field = item[labelKey];
722
+ return;
723
+ }
724
+ });
725
+ }
726
+ } else if (_typeof(data[_i3][fields[_x]]) === 'object' && keys[fields[_x]]) {
727
+ if (Array.isArray(data[_i3][fields[_x]])) {
728
+ data[_i3][fields[_x]].forEach(function (item) {
729
+ field = [];
730
+ field.push({}.toString.call(item) === '[object Object]' ? item[labelKey] : item);
731
+ });
732
+ field = field.join(' ');
733
+ } else {
734
+ field = data[_i3][fields[_x]][labelKey];
735
+ }
736
+ } else {
737
+ field = data[_i3][fields[_x]];
738
+ }
739
+ tbody += '<td align="' + aligns[_x] + '">' + field + '</td>';
740
+ };
741
+
742
+ for (var _x in fields) {
743
+ _loop2(_x);
683
744
  }
684
745
  tbody += '</tr>';
746
+ };
747
+
748
+ for (var _i3 = 0; _i3 < data.length; _i3++) {
749
+ _loop(_i3);
685
750
  }
686
751
  if (!name) {
687
752
  name = 'table_' + new Date().getTime();
@@ -1383,7 +1448,8 @@ var isLogged = function isLogged(_ref8) {
1383
1448
  var to = _ref8.to,
1384
1449
  from = _ref8.from,
1385
1450
  next = _ref8.next,
1386
- exclude = _ref8.exclude,
1451
+ _ref8$exclude = _ref8.exclude,
1452
+ exclude = _ref8$exclude === undefined ? [] : _ref8$exclude,
1387
1453
  open = _ref8.open,
1388
1454
  cookie = _ref8.cookie,
1389
1455
  loginPage = _ref8.loginPage,
@@ -1429,10 +1495,27 @@ var isLogged = function isLogged(_ref8) {
1429
1495
  break;
1430
1496
  case 3:
1431
1497
  var href = res.results.authorizeUrl.replace('{redirectUri}', encodeURIComponent(url));
1432
- if (open) {
1433
- win.open(href);
1498
+ if (to.query.openType) {
1499
+ switch (to.query.openType) {
1500
+ case 'self':
1501
+ win.location.href = href;
1502
+ break;
1503
+ case 'blank':
1504
+ win.open(href);
1505
+ break;
1506
+ case 'top':
1507
+ win.top.location.href = href;
1508
+ break;
1509
+ case 'parent':
1510
+ win.parent.location.href = href;
1511
+ break;
1512
+ }
1434
1513
  } else {
1435
- win.top.location.href = href;
1514
+ if (open) {
1515
+ win.open(href);
1516
+ } else {
1517
+ win.top.location.href = href;
1518
+ }
1436
1519
  }
1437
1520
  break;
1438
1521
  }
@@ -1444,9 +1527,9 @@ var isLogged = function isLogged(_ref8) {
1444
1527
  }
1445
1528
  }
1446
1529
  }).catch(function (e) {});
1447
- } else if (token || to.path === '/' || to.path === '/login' || to.path === '/404' || exclude.indexOf(to.path) > -1 || exclude.indexOf(to.name) > -1) {
1448
- if (redirect && to.name && (to.name === 'login' || to.name === 'main')) {
1449
- window.location.replace(urlJoinParams({ url: './' + to.name + '.html', param: to.query }));
1530
+ } else if (token || to.path === '/' || to.path === '/404' || exclude.indexOf(to.path) > -1 || exclude.indexOf(to.name) > -1 || to.path === '/login' || token && to.path === '/main') {
1531
+ if (redirect && (to.path === '/main' || to.path === '/login')) {
1532
+ window.location.replace(urlJoinParams({ url: '.' + to.path + '.html', param: to.query }));
1450
1533
  } else {
1451
1534
  next();
1452
1535
  }
@@ -2586,7 +2669,7 @@ module.exports = require("axios");
2586
2669
 
2587
2670
  /***/ }),
2588
2671
 
2589
- /***/ 42:
2672
+ /***/ 43:
2590
2673
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
2591
2674
 
2592
2675
  "use strict";
package/lib/handler.js CHANGED
@@ -82,7 +82,7 @@ module.exports =
82
82
  /******/
83
83
  /******/
84
84
  /******/ // Load entry module and return exports
85
- /******/ return __webpack_require__(__webpack_require__.s = 43);
85
+ /******/ return __webpack_require__(__webpack_require__.s = 44);
86
86
  /******/ })
87
87
  /************************************************************************/
88
88
  /******/ ({
@@ -534,7 +534,7 @@ var esEncode = function esEncode(value) {
534
534
  **/
535
535
  var esDecode = function esDecode(value) {
536
536
  var kleng = publicKey.length;
537
- var result;
537
+ var result = void 0;
538
538
  var cat1 = void 0;
539
539
  var cat2 = void 0;
540
540
  var cat3 = void 0;
@@ -639,11 +639,13 @@ var exportXls = function exportXls(_ref6) {
639
639
  _ref6$data = _ref6.data,
640
640
  data = _ref6$data === undefined ? [] : _ref6$data,
641
641
  name = _ref6.name,
642
- numbers = _ref6.numbers;
642
+ numbers = _ref6.numbers,
643
+ option = _ref6.option;
643
644
 
644
645
  var tbody = '';
645
646
  var aligns = [];
646
647
  var fields = [];
648
+ var keys = {};
647
649
  var others = {};
648
650
  var alink = document.createElement('a');
649
651
  for (var i = 0; i < thead.length; i++) {
@@ -653,12 +655,15 @@ var exportXls = function exportXls(_ref6) {
653
655
  }
654
656
  var tr = thead[i];
655
657
  var col = 0;
656
- for (var _x = 0; _x < tr.length; _x++) {
657
- var td = tr[_x];
658
+ for (var x = 0; x < tr.length; x++) {
659
+ var td = tr[x];
658
660
  if (td.property) {
659
- if (col === _x) {
661
+ if (col === x) {
660
662
  fields.push(td.property);
661
663
  aligns.push(td.align);
664
+ if (td.labelKey && td.valueKey) {
665
+ keys[td.property] = { labelKey: td.labelKey, valueKey: td.valueKey, multiple: !!(td.valueToString || td['value-to-string']) };
666
+ }
662
667
  } else {
663
668
  others[String(col)] = [td.property, td.align];
664
669
  }
@@ -676,12 +681,72 @@ var exportXls = function exportXls(_ref6) {
676
681
  fields.splice(_i2, 0, others[_i2][0]);
677
682
  aligns.splice(_i2, 0, others[_i2][1]);
678
683
  }
679
- for (var _i3 = 0; _i3 < data.length; _i3++) {
684
+
685
+ var _loop = function _loop(_i3) {
680
686
  tbody += '<tr>';
681
- for (var x in fields) {
682
- tbody += '<td align="' + aligns[x] + '">' + data[_i3][fields[x]] + '</td>';
687
+
688
+ var _loop2 = function _loop2(_x) {
689
+ var field = '';
690
+ var valueKey = keys[fields[_x]] && keys[fields[_x]].valueKey ? keys[fields[_x]].valueKey : 'value';
691
+ var labelKey = keys[fields[_x]] && keys[fields[_x]].labelKey ? keys[fields[_x]].labelKey : 'name';
692
+ if (option[fields[_x]]) {
693
+ if (Array.isArray(data[_i3][fields[_x]])) {
694
+ field = [];
695
+ data[_i3][fields[_x]].forEach(function (ele) {
696
+ option[fields[_x]].forEach(function (item) {
697
+ // eslint-disable-next-line eqeqeq
698
+ if (item[valueKey] == ele) {
699
+ field.push(item[labelKey]);
700
+ return;
701
+ }
702
+ });
703
+ });
704
+ field = field.join(' ');
705
+ } else if (typeof data[_i3][fields[_x]] === 'string' && keys[fields[_x]] && keys[fields[_x]].multiple) {
706
+ field = [];
707
+ data[_i3][fields[_x]].split(',').forEach(function (ele) {
708
+ option[fields[_x]].forEach(function (item) {
709
+ // eslint-disable-next-line eqeqeq
710
+ if (item[valueKey] == ele) {
711
+ field.push(item[labelKey]);
712
+ return;
713
+ }
714
+ });
715
+ });
716
+ field = field.join(' ');
717
+ } else {
718
+ option[fields[_x]].forEach(function (item) {
719
+ // eslint-disable-next-line eqeqeq
720
+ if (item[valueKey] == data[_i3][fields[_x]]) {
721
+ field = item[labelKey];
722
+ return;
723
+ }
724
+ });
725
+ }
726
+ } else if (_typeof(data[_i3][fields[_x]]) === 'object' && keys[fields[_x]]) {
727
+ if (Array.isArray(data[_i3][fields[_x]])) {
728
+ data[_i3][fields[_x]].forEach(function (item) {
729
+ field = [];
730
+ field.push({}.toString.call(item) === '[object Object]' ? item[labelKey] : item);
731
+ });
732
+ field = field.join(' ');
733
+ } else {
734
+ field = data[_i3][fields[_x]][labelKey];
735
+ }
736
+ } else {
737
+ field = data[_i3][fields[_x]];
738
+ }
739
+ tbody += '<td align="' + aligns[_x] + '">' + field + '</td>';
740
+ };
741
+
742
+ for (var _x in fields) {
743
+ _loop2(_x);
683
744
  }
684
745
  tbody += '</tr>';
746
+ };
747
+
748
+ for (var _i3 = 0; _i3 < data.length; _i3++) {
749
+ _loop(_i3);
685
750
  }
686
751
  if (!name) {
687
752
  name = 'table_' + new Date().getTime();
@@ -1383,7 +1448,8 @@ var isLogged = function isLogged(_ref8) {
1383
1448
  var to = _ref8.to,
1384
1449
  from = _ref8.from,
1385
1450
  next = _ref8.next,
1386
- exclude = _ref8.exclude,
1451
+ _ref8$exclude = _ref8.exclude,
1452
+ exclude = _ref8$exclude === undefined ? [] : _ref8$exclude,
1387
1453
  open = _ref8.open,
1388
1454
  cookie = _ref8.cookie,
1389
1455
  loginPage = _ref8.loginPage,
@@ -1429,10 +1495,27 @@ var isLogged = function isLogged(_ref8) {
1429
1495
  break;
1430
1496
  case 3:
1431
1497
  var href = res.results.authorizeUrl.replace('{redirectUri}', encodeURIComponent(url));
1432
- if (open) {
1433
- win.open(href);
1498
+ if (to.query.openType) {
1499
+ switch (to.query.openType) {
1500
+ case 'self':
1501
+ win.location.href = href;
1502
+ break;
1503
+ case 'blank':
1504
+ win.open(href);
1505
+ break;
1506
+ case 'top':
1507
+ win.top.location.href = href;
1508
+ break;
1509
+ case 'parent':
1510
+ win.parent.location.href = href;
1511
+ break;
1512
+ }
1434
1513
  } else {
1435
- win.top.location.href = href;
1514
+ if (open) {
1515
+ win.open(href);
1516
+ } else {
1517
+ win.top.location.href = href;
1518
+ }
1436
1519
  }
1437
1520
  break;
1438
1521
  }
@@ -1444,9 +1527,9 @@ var isLogged = function isLogged(_ref8) {
1444
1527
  }
1445
1528
  }
1446
1529
  }).catch(function (e) {});
1447
- } else if (token || to.path === '/' || to.path === '/login' || to.path === '/404' || exclude.indexOf(to.path) > -1 || exclude.indexOf(to.name) > -1) {
1448
- if (redirect && to.name && (to.name === 'login' || to.name === 'main')) {
1449
- window.location.replace(urlJoinParams({ url: './' + to.name + '.html', param: to.query }));
1530
+ } else if (token || to.path === '/' || to.path === '/404' || exclude.indexOf(to.path) > -1 || exclude.indexOf(to.name) > -1 || to.path === '/login' || token && to.path === '/main') {
1531
+ if (redirect && (to.path === '/main' || to.path === '/login')) {
1532
+ window.location.replace(urlJoinParams({ url: '.' + to.path + '.html', param: to.query }));
1450
1533
  } else {
1451
1534
  next();
1452
1535
  }
@@ -2586,7 +2669,7 @@ module.exports = require("axios");
2586
2669
 
2587
2670
  /***/ }),
2588
2671
 
2589
- /***/ 43:
2672
+ /***/ 44:
2590
2673
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
2591
2674
 
2592
2675
  "use strict";