xt-element-ui 2.1.72 → 2.2.0

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 (194) hide show
  1. package/lib/index.common.js +267 -61
  2. package/lib/index.css +1 -1
  3. package/lib/index.umd.js +267 -61
  4. package/lib/index.umd.min.js +1 -1
  5. package/lib/xt-badge/demo.html +10 -0
  6. package/lib/xt-badge/index.js +1 -0
  7. package/lib/xt-badge/xt-badge.common.js +335 -0
  8. package/lib/xt-badge/xt-badge.css +1 -0
  9. package/lib/xt-badge/xt-badge.umd.js +345 -0
  10. package/lib/xt-badge/xt-badge.umd.min.js +1 -0
  11. package/lib/xt-button/demo.html +10 -0
  12. package/lib/xt-button/index.js +1 -0
  13. package/lib/xt-button/xt-button.common.js +331 -0
  14. package/lib/xt-button/xt-button.css +1 -0
  15. package/lib/xt-button/xt-button.umd.js +341 -0
  16. package/lib/xt-button/xt-button.umd.min.js +1 -0
  17. package/lib/xt-card/demo.html +10 -0
  18. package/lib/xt-card/index.js +1 -0
  19. package/lib/xt-card/xt-card.common.js +325 -0
  20. package/lib/xt-card/xt-card.css +1 -0
  21. package/lib/xt-card/xt-card.umd.js +335 -0
  22. package/lib/xt-card/xt-card.umd.min.js +1 -0
  23. package/lib/xt-card-item/demo.html +10 -0
  24. package/lib/xt-card-item/index.js +1 -0
  25. package/lib/xt-card-item/xt-card-item.common.js +291 -0
  26. package/lib/xt-card-item/xt-card-item.css +1 -0
  27. package/lib/xt-card-item/xt-card-item.umd.js +301 -0
  28. package/lib/xt-card-item/xt-card-item.umd.min.js +1 -0
  29. package/lib/xt-chart/demo.html +10 -0
  30. package/lib/xt-chart/index.js +1 -0
  31. package/lib/xt-chart/xt-chart.common.js +109203 -0
  32. package/lib/xt-chart/xt-chart.css +1 -0
  33. package/lib/xt-chart/xt-chart.umd.js +109213 -0
  34. package/lib/xt-chart/xt-chart.umd.min.js +1 -0
  35. package/lib/xt-config-provider/demo.html +10 -0
  36. package/lib/xt-config-provider/index.js +1 -0
  37. package/lib/xt-config-provider/xt-config-provider.common.js +108388 -0
  38. package/lib/xt-config-provider/xt-config-provider.css +1 -0
  39. package/lib/xt-config-provider/xt-config-provider.umd.js +108398 -0
  40. package/lib/xt-config-provider/xt-config-provider.umd.min.js +1 -0
  41. package/lib/xt-date-picker/demo.html +10 -0
  42. package/lib/xt-date-picker/index.js +1 -0
  43. package/lib/xt-date-picker/xt-date-picker.common.js +768 -0
  44. package/lib/xt-date-picker/xt-date-picker.css +1 -0
  45. package/lib/xt-date-picker/xt-date-picker.umd.js +778 -0
  46. package/lib/xt-date-picker/xt-date-picker.umd.min.js +1 -0
  47. package/lib/xt-flex-box/demo.html +10 -0
  48. package/lib/xt-flex-box/index.js +1 -0
  49. package/lib/xt-flex-box/xt-flex-box.common.js +303 -0
  50. package/lib/xt-flex-box/xt-flex-box.css +1 -0
  51. package/lib/xt-flex-box/xt-flex-box.umd.js +313 -0
  52. package/lib/xt-flex-box/xt-flex-box.umd.min.js +1 -0
  53. package/lib/xt-form-schema/demo.html +10 -0
  54. package/lib/xt-form-schema/index.js +1 -0
  55. package/lib/xt-form-schema/xt-form-schema.common.js +510 -0
  56. package/lib/xt-form-schema/xt-form-schema.css +1 -0
  57. package/lib/xt-form-schema/xt-form-schema.umd.js +520 -0
  58. package/lib/xt-form-schema/xt-form-schema.umd.min.js +1 -0
  59. package/lib/xt-grid-box/demo.html +10 -0
  60. package/lib/xt-grid-box/index.js +1 -0
  61. package/lib/xt-grid-box/xt-grid-box.common.js +404 -0
  62. package/lib/xt-grid-box/xt-grid-box.css +1 -0
  63. package/lib/xt-grid-box/xt-grid-box.umd.js +414 -0
  64. package/lib/xt-grid-box/xt-grid-box.umd.min.js +1 -0
  65. package/lib/xt-grid-item/demo.html +10 -0
  66. package/lib/xt-grid-item/index.js +1 -0
  67. package/lib/xt-grid-item/xt-grid-item.common.js +381 -0
  68. package/lib/xt-grid-item/xt-grid-item.css +1 -0
  69. package/lib/xt-grid-item/xt-grid-item.umd.js +391 -0
  70. package/lib/xt-grid-item/xt-grid-item.umd.min.js +1 -0
  71. package/lib/xt-icon/demo.html +10 -0
  72. package/lib/xt-icon/index.js +1 -0
  73. package/lib/xt-icon/xt-icon.common.js +430 -0
  74. package/lib/xt-icon/xt-icon.css +1 -0
  75. package/lib/xt-icon/xt-icon.umd.js +440 -0
  76. package/lib/xt-icon/xt-icon.umd.min.js +1 -0
  77. package/lib/xt-input/demo.html +10 -0
  78. package/lib/xt-input/index.js +1 -0
  79. package/lib/xt-input/xt-input.common.js +584 -0
  80. package/lib/xt-input/xt-input.css +1 -0
  81. package/lib/xt-input/xt-input.umd.js +594 -0
  82. package/lib/xt-input/xt-input.umd.min.js +1 -0
  83. package/lib/xt-list/demo.html +10 -0
  84. package/lib/xt-list/index.js +1 -0
  85. package/lib/xt-list/xt-list.common.js +714 -0
  86. package/lib/xt-list/xt-list.css +1 -0
  87. package/lib/xt-list/xt-list.umd.js +724 -0
  88. package/lib/xt-list/xt-list.umd.min.js +1 -0
  89. package/lib/xt-map/demo.html +10 -0
  90. package/lib/xt-map/index.js +1 -0
  91. package/lib/xt-map/xt-map.common.js +1951 -0
  92. package/lib/xt-map/xt-map.css +1 -0
  93. package/lib/xt-map/xt-map.umd.js +1961 -0
  94. package/lib/xt-map/xt-map.umd.min.js +1 -0
  95. package/lib/xt-map-provider/demo.html +10 -0
  96. package/lib/xt-map-provider/index.js +1 -0
  97. package/lib/xt-map-provider/xt-map-provider.common.js +644 -0
  98. package/lib/xt-map-provider/xt-map-provider.css +1 -0
  99. package/lib/xt-map-provider/xt-map-provider.umd.js +654 -0
  100. package/lib/xt-map-provider/xt-map-provider.umd.min.js +1 -0
  101. package/lib/xt-page/demo.html +10 -0
  102. package/lib/xt-page/index.js +1 -0
  103. package/lib/xt-page/xt-page.common.js +353 -0
  104. package/lib/xt-page/xt-page.css +1 -0
  105. package/lib/xt-page/xt-page.umd.js +363 -0
  106. package/lib/xt-page/xt-page.umd.min.js +1 -0
  107. package/lib/xt-progress/demo.html +10 -0
  108. package/lib/xt-progress/index.js +1 -0
  109. package/lib/xt-progress/xt-progress.common.js +327 -0
  110. package/lib/xt-progress/xt-progress.css +1 -0
  111. package/lib/xt-progress/xt-progress.umd.js +337 -0
  112. package/lib/xt-progress/xt-progress.umd.min.js +1 -0
  113. package/lib/xt-scroll-arrow/demo.html +10 -0
  114. package/lib/xt-scroll-arrow/index.js +1 -0
  115. package/lib/xt-scroll-arrow/xt-scroll-arrow.common.js +495 -0
  116. package/lib/xt-scroll-arrow/xt-scroll-arrow.css +1 -0
  117. package/lib/xt-scroll-arrow/xt-scroll-arrow.umd.js +505 -0
  118. package/lib/xt-scroll-arrow/xt-scroll-arrow.umd.min.js +1 -0
  119. package/lib/xt-select-tree/demo.html +10 -0
  120. package/lib/xt-select-tree/index.js +1 -0
  121. package/lib/xt-select-tree/xt-select-tree.common.js +1791 -0
  122. package/lib/xt-select-tree/xt-select-tree.css +1 -0
  123. package/lib/xt-select-tree/xt-select-tree.umd.js +1801 -0
  124. package/lib/xt-select-tree/xt-select-tree.umd.min.js +1 -0
  125. package/lib/xt-step-price/demo.html +10 -0
  126. package/lib/xt-step-price/index.js +1 -0
  127. package/lib/xt-step-price/xt-step-price.common.js +800 -0
  128. package/lib/xt-step-price/xt-step-price.css +1 -0
  129. package/lib/xt-step-price/xt-step-price.umd.js +810 -0
  130. package/lib/xt-step-price/xt-step-price.umd.min.js +1 -0
  131. package/lib/xt-step-price-item/demo.html +10 -0
  132. package/lib/xt-step-price-item/index.js +1 -0
  133. package/lib/xt-step-price-item/xt-step-price-item.common.js +417 -0
  134. package/lib/xt-step-price-item/xt-step-price-item.umd.js +427 -0
  135. package/lib/xt-step-price-item/xt-step-price-item.umd.min.js +1 -0
  136. package/lib/xt-tab-pane/demo.html +10 -0
  137. package/lib/xt-tab-pane/index.js +1 -0
  138. package/lib/xt-tab-pane/xt-tab-pane.common.js +309 -0
  139. package/lib/xt-tab-pane/xt-tab-pane.umd.js +319 -0
  140. package/lib/xt-tab-pane/xt-tab-pane.umd.min.js +1 -0
  141. package/lib/xt-table/demo.html +10 -0
  142. package/lib/xt-table/index.js +1 -0
  143. package/lib/xt-table/xt-table.common.js +1027 -0
  144. package/lib/xt-table/xt-table.css +1 -0
  145. package/lib/xt-table/xt-table.umd.js +1037 -0
  146. package/lib/xt-table/xt-table.umd.min.js +1 -0
  147. package/lib/xt-tabs/demo.html +10 -0
  148. package/lib/xt-tabs/index.js +1 -0
  149. package/lib/xt-tabs/xt-tabs.common.js +463 -0
  150. package/lib/xt-tabs/xt-tabs.css +1 -0
  151. package/lib/xt-tabs/xt-tabs.umd.js +473 -0
  152. package/lib/xt-tabs/xt-tabs.umd.min.js +1 -0
  153. package/lib/xt-text/demo.html +10 -0
  154. package/lib/xt-text/index.js +1 -0
  155. package/lib/xt-text/xt-text.common.js +536 -0
  156. package/lib/xt-text/xt-text.css +1 -0
  157. package/lib/xt-text/xt-text.umd.js +546 -0
  158. package/lib/xt-text/xt-text.umd.min.js +1 -0
  159. package/lib/xt-time/demo.html +10 -0
  160. package/lib/xt-time/index.js +1 -0
  161. package/lib/xt-time/xt-time.common.js +555 -0
  162. package/lib/xt-time/xt-time.css +1 -0
  163. package/lib/xt-time/xt-time.umd.js +565 -0
  164. package/lib/xt-time/xt-time.umd.min.js +1 -0
  165. package/lib/xt-transfer-tree/demo.html +10 -0
  166. package/lib/xt-transfer-tree/index.js +1 -0
  167. package/lib/xt-transfer-tree/xt-transfer-tree.common.js +594 -0
  168. package/lib/xt-transfer-tree/xt-transfer-tree.css +1 -0
  169. package/lib/xt-transfer-tree/xt-transfer-tree.umd.js +604 -0
  170. package/lib/xt-transfer-tree/xt-transfer-tree.umd.min.js +1 -0
  171. package/lib/xt-upload/demo.html +10 -0
  172. package/lib/xt-upload/index.js +1 -0
  173. package/lib/xt-upload/xt-upload.common.js +1292 -0
  174. package/lib/xt-upload/xt-upload.css +1 -0
  175. package/lib/xt-upload/xt-upload.umd.js +1302 -0
  176. package/lib/xt-upload/xt-upload.umd.min.js +1 -0
  177. package/package.json +4 -2
  178. package/src/components/xt-badge/index.js +8 -7
  179. package/src/components/xt-button/index.js +1 -0
  180. package/src/components/xt-card/index.js +1 -0
  181. package/src/components/xt-card-item/index.js +1 -0
  182. package/src/components/xt-config-provider/index.js +1 -0
  183. package/src/components/xt-flex-box/index.js +1 -0
  184. package/src/components/xt-grid-box/index.js +1 -0
  185. package/src/components/xt-icon/index.js +1 -0
  186. package/src/components/xt-input/index.js +1 -0
  187. package/src/components/xt-map/index.js +1 -0
  188. package/src/components/xt-progress/index.js +8 -7
  189. package/src/components/xt-scroll-arrow/index.js +8 -7
  190. package/src/components/xt-step-price/index.js +1 -0
  191. package/src/components/xt-tabs/index.js +9 -8
  192. package/src/components/xt-text/index.js +1 -0
  193. package/src/components/xt-time/index.js +1 -0
  194. package/src/index.js +32 -2
@@ -0,0 +1,800 @@
1
+ module.exports =
2
+ /******/ (function(modules) { // webpackBootstrap
3
+ /******/ // The module cache
4
+ /******/ var installedModules = {};
5
+ /******/
6
+ /******/ // The require function
7
+ /******/ function __webpack_require__(moduleId) {
8
+ /******/
9
+ /******/ // Check if module is in cache
10
+ /******/ if(installedModules[moduleId]) {
11
+ /******/ return installedModules[moduleId].exports;
12
+ /******/ }
13
+ /******/ // Create a new module (and put it into the cache)
14
+ /******/ var module = installedModules[moduleId] = {
15
+ /******/ i: moduleId,
16
+ /******/ l: false,
17
+ /******/ exports: {}
18
+ /******/ };
19
+ /******/
20
+ /******/ // Execute the module function
21
+ /******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);
22
+ /******/
23
+ /******/ // Flag the module as loaded
24
+ /******/ module.l = true;
25
+ /******/
26
+ /******/ // Return the exports of the module
27
+ /******/ return module.exports;
28
+ /******/ }
29
+ /******/
30
+ /******/
31
+ /******/ // expose the modules object (__webpack_modules__)
32
+ /******/ __webpack_require__.m = modules;
33
+ /******/
34
+ /******/ // expose the module cache
35
+ /******/ __webpack_require__.c = installedModules;
36
+ /******/
37
+ /******/ // define getter function for harmony exports
38
+ /******/ __webpack_require__.d = function(exports, name, getter) {
39
+ /******/ if(!__webpack_require__.o(exports, name)) {
40
+ /******/ Object.defineProperty(exports, name, { enumerable: true, get: getter });
41
+ /******/ }
42
+ /******/ };
43
+ /******/
44
+ /******/ // define __esModule on exports
45
+ /******/ __webpack_require__.r = function(exports) {
46
+ /******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) {
47
+ /******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
48
+ /******/ }
49
+ /******/ Object.defineProperty(exports, '__esModule', { value: true });
50
+ /******/ };
51
+ /******/
52
+ /******/ // create a fake namespace object
53
+ /******/ // mode & 1: value is a module id, require it
54
+ /******/ // mode & 2: merge all properties of value into the ns
55
+ /******/ // mode & 4: return value when already ns object
56
+ /******/ // mode & 8|1: behave like require
57
+ /******/ __webpack_require__.t = function(value, mode) {
58
+ /******/ if(mode & 1) value = __webpack_require__(value);
59
+ /******/ if(mode & 8) return value;
60
+ /******/ if((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;
61
+ /******/ var ns = Object.create(null);
62
+ /******/ __webpack_require__.r(ns);
63
+ /******/ Object.defineProperty(ns, 'default', { enumerable: true, value: value });
64
+ /******/ if(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));
65
+ /******/ return ns;
66
+ /******/ };
67
+ /******/
68
+ /******/ // getDefaultExport function for compatibility with non-harmony modules
69
+ /******/ __webpack_require__.n = function(module) {
70
+ /******/ var getter = module && module.__esModule ?
71
+ /******/ function getDefault() { return module['default']; } :
72
+ /******/ function getModuleExports() { return module; };
73
+ /******/ __webpack_require__.d(getter, 'a', getter);
74
+ /******/ return getter;
75
+ /******/ };
76
+ /******/
77
+ /******/ // Object.prototype.hasOwnProperty.call
78
+ /******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };
79
+ /******/
80
+ /******/ // __webpack_public_path__
81
+ /******/ __webpack_require__.p = "";
82
+ /******/
83
+ /******/
84
+ /******/ // Load entry module and return exports
85
+ /******/ return __webpack_require__(__webpack_require__.s = "fb15");
86
+ /******/ })
87
+ /************************************************************************/
88
+ /******/ ({
89
+
90
+ /***/ "fb15":
91
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
92
+
93
+ "use strict";
94
+ // ESM COMPAT FLAG
95
+ __webpack_require__.r(__webpack_exports__);
96
+
97
+ // EXPORTS
98
+ __webpack_require__.d(__webpack_exports__, "XtStepPrice", function() { return /* reexport */ xt_step_price; });
99
+ __webpack_require__.d(__webpack_exports__, "XtStepPriceItem", function() { return /* reexport */ xt_step_price_item; });
100
+
101
+ // CONCATENATED MODULE: ./node_modules/@vue/cli-service/lib/commands/build/setPublicPath.js
102
+ // This file is imported into lib/wc client bundles.
103
+
104
+ if (typeof window !== 'undefined') {
105
+ var currentScript = window.document.currentScript
106
+ if (false) { var getCurrentScript; }
107
+
108
+ var src = currentScript && currentScript.src.match(/(.+\/)[^/]+\.js(\?.*)?$/)
109
+ if (src) {
110
+ __webpack_require__.p = src[1] // eslint-disable-line
111
+ }
112
+ }
113
+
114
+ // Indicate to webpack that this file can be concatenated
115
+ /* harmony default export */ var setPublicPath = (null);
116
+
117
+ // EXTERNAL MODULE: ./src/components/xt-step-price/style/index.scss
118
+ var style = __webpack_require__("fd93");
119
+
120
+ // CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"b8cd9b04-vue-loader-template"}!./node_modules/vue-loader/lib/loaders/templateLoader.js??ref--5!./node_modules/cache-loader/dist/cjs.js??ref--1-0!./node_modules/vue-loader/lib??vue-loader-options!./src/components/xt-step-price/index.vue?vue&type=template&id=0cb332f3
121
+ var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{staticClass:"xt-step-price",class:{ 'is-disabled': _vm.disabled }},[(_vm.title || _vm.$slots.header)?_c('div',{staticClass:"xt-step-price__header"},[(_vm.title)?_c('xt-text',{attrs:{"bold":"","size":"medium"}},[_vm._v(_vm._s(_vm.title))]):_vm._e(),_vm._t("header"),(!_vm.disabled && !_vm.isLimitReached)?_c('xt-button',{attrs:{"type":"primary","size":"small","icon":"el-icon-plus","plain":""},on:{"click":_vm.onAdd}},[_vm._v("新增"+_vm._s(_vm.stepName))]):_vm._e(),(_vm.isLimitReached)?_c('xt-text',{attrs:{"size":"small","type-color":"info"}},[_vm._v("已达上限("+_vm._s(_vm.localItems.length)+"/"+_vm._s(_vm.limit)+")")]):_vm._e()],2):_vm._e(),_c('div',{staticClass:"xt-step-price__list"},_vm._l((_vm.localItems),function(item,idx){return _c('XtStepPriceItem',{key:idx,attrs:{"value":item,"index":idx,"is-first":idx === 0,"is-last":idx === _vm.localItems.length - 1,"items-length":_vm.localItems.length,"removable":idx !== 0,"min-locked":idx !== 0 ? true : false,"unit":_vm.unit,"precision":_vm.precision,"step-name":_vm.stepName,"step":_vm.step,"left-bracket":_vm.leftBracket,"right-bracket":_vm.rightBracket,"field-keys":_vm.fieldKeys,"disabled":_vm.disabled,"allow-negative":_vm.allowNegative},on:{"input":(val) => _vm.onItemInput(val, idx),"max-change":_vm.onMaxChange,"min-change":_vm.onMinChange,"delete":_vm.onDelete,"blur":_vm.onFieldBlur}})}),1),(_vm.localItems.length === 0)?_c('div',{staticClass:"xt-step-price__empty"},[_c('span',[_vm._v("暂无数据,点击右上角「新增"+_vm._s(_vm.stepName)+"」开始配置")])]):_vm._e(),(_vm.tip || _vm.$slots.tip)?_c('div',{staticClass:"xt-step-price__tip"},[_vm._t("tip",function(){return [_c('xt-text',{attrs:{"size":"small","type-color":"warning"}},[_vm._v(_vm._s(_vm.tip))])]})],2):_vm._e()])
122
+ }
123
+ var staticRenderFns = []
124
+
125
+
126
+ // CONCATENATED MODULE: ./src/components/xt-step-price/index.vue?vue&type=template&id=0cb332f3
127
+
128
+ // CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"b8cd9b04-vue-loader-template"}!./node_modules/vue-loader/lib/loaders/templateLoader.js??ref--5!./node_modules/cache-loader/dist/cjs.js??ref--1-0!./node_modules/vue-loader/lib??vue-loader-options!./src/components/xt-step-price-item/index.vue?vue&type=template&id=4d5bb3b1
129
+ var xt_step_price_itemvue_type_template_id_4d5bb3b1_render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{staticClass:"xt-step-price-item"},[_c('div',{staticClass:"xt-step-price-item__range"},[_c('span',{staticClass:"xt-step-price-item__bracket"},[_vm._v(_vm._s(_vm.finalLeftBracket))]),(_vm.itemsLength > 1)?_c('span',{staticClass:"xt-step-price-item__name"},[_vm._v("第"+_vm._s(_vm.index + 1)+_vm._s(_vm.stepName))]):_vm._e(),_c('span',{staticClass:"xt-step-price-item__bracket"},[_vm._v(_vm._s(_vm.finalRightBracket))]),_c('xt-input',{staticClass:"xt-step-price-item__input",attrs:{"disabled":_vm.disabled || _vm.minLocked,"size":"small","placeholder":"下限"},on:{"blur":(e) => { _vm.onMinBlur(); _vm.onBlur(e) }},model:{value:(_vm.minInput),callback:function ($$v) {_vm.minInput=_vm._n($$v)},expression:"minInput"}}),_c('span',{staticClass:"xt-step-price-item__comma"},[_vm._v("-")]),(!_vm.isLast)?_c('xt-input',{staticClass:"xt-step-price-item__input",attrs:{"type":"number","disabled":_vm.disabled,"size":"small","placeholder":"上限"},on:{"blur":(e) => { _vm.onMaxBlur(); _vm.onBlur(e) }},model:{value:(_vm.maxInput),callback:function ($$v) {_vm.maxInput=_vm._n($$v)},expression:"maxInput"}}):_c('span',{staticClass:"xt-step-price-item__infinity"},[_vm._v("+∞")])],1),_c('div',{staticClass:"xt-step-price-item__price"},[_c('xt-input',{staticClass:"xt-step-price-item__input xt-step-price-item__input--price",attrs:{"type":"number","disabled":_vm.disabled,"size":"small","placeholder":"价格"},on:{"blur":(e) => { _vm.onPriceBlur(); _vm.onBlur(e) }},model:{value:(_vm.priceInput),callback:function ($$v) {_vm.priceInput=_vm._n($$v)},expression:"priceInput"}}),_c('span',{staticClass:"xt-step-price-item__unit"},[_vm._v(_vm._s(_vm.unit))])],1),(!_vm.disabled && _vm.removable && _vm.itemsLength > 1)?_c('xt-button',{staticClass:"xt-step-price-item__delete",attrs:{"type":"text","icon":"el-icon-delete"},on:{"click":_vm.onDelete}}):_vm._e()],1)
130
+ }
131
+ var xt_step_price_itemvue_type_template_id_4d5bb3b1_staticRenderFns = []
132
+
133
+
134
+ // CONCATENATED MODULE: ./src/components/xt-step-price-item/index.vue?vue&type=template&id=4d5bb3b1
135
+
136
+ // CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js??ref--1-0!./node_modules/vue-loader/lib??vue-loader-options!./src/components/xt-step-price-item/index.vue?vue&type=script&lang=js
137
+
138
+ /* harmony default export */ var xt_step_price_itemvue_type_script_lang_js = ({
139
+ name: 'XtStepPriceItem',
140
+
141
+ props: {
142
+ value: {
143
+ type: Object,
144
+ required: true,
145
+ default: () => ({ min: 0, max: null, price: 0 })
146
+ },
147
+ stepName: { type: String, default: '阶梯' },
148
+ index: { type: Number, default: 0 },
149
+ isFirst: { type: Boolean, default: false },
150
+ isLast: { type: Boolean, default: false },
151
+ itemsLength: { type: Number, default: 1 },
152
+ removable: { type: Boolean, default: true },
153
+ disabled: { type: Boolean, default: false },
154
+ allowNegative: { type: Boolean, default: false },
155
+ minLocked: { type: Boolean, default: false },
156
+ unit: { type: String, default: '元' },
157
+ precision: { type: Number, default: 2 },
158
+ // 阶梯增量:控制新增/校正时的区间跨度,默认 1
159
+ step: { type: Number, default: 1 },
160
+ // 左括号:默认 '[',传空则不显示
161
+ leftBracket: { type: String, default: '[' },
162
+ // 右括号:默认 null,走内置规则(只有1条为 ']',多条为 ')');传值则强制使用
163
+ rightBracket: { type: String, default: null },
164
+ // 字段名映射:{ min, max, price },允许传入的 value 使用自定义字段名
165
+ fieldKeys: {
166
+ type: Object,
167
+ default: () => ({ min: 'min', max: 'max', price: 'price' })
168
+ }
169
+ },
170
+
171
+ computed: {
172
+ keyMin() { return (this.fieldKeys && this.fieldKeys.min) || 'min' },
173
+ keyMax() { return (this.fieldKeys && this.fieldKeys.max) || 'max' },
174
+ keyPrice() { return (this.fieldKeys && this.fieldKeys.price) || 'price' },
175
+ finalRightBracket() {
176
+ if (this.rightBracket !== null && this.rightBracket !== undefined && this.rightBracket !== '') return this.rightBracket
177
+ return this.isLast ? ']' : ')'
178
+ },
179
+ finalLeftBracket() {
180
+ return (this.leftBracket === null || this.leftBracket === undefined) ? '[' : this.leftBracket
181
+ }
182
+ },
183
+
184
+ data() {
185
+ const { minVal, maxVal, priceVal } = this.getPriceItem(this.value)
186
+ return {
187
+ minInput: minVal,
188
+ maxInput: maxVal,
189
+ priceInput: priceVal
190
+ }
191
+ },
192
+
193
+ watch: {
194
+ value: {
195
+ deep: true,
196
+ immediate: true,
197
+ handler(val) {
198
+ const { minVal, maxVal, priceVal } = this.getPriceItem(val)
199
+ this.minInput = minVal
200
+ this.maxInput = maxVal
201
+ this.priceInput = priceVal
202
+ }
203
+ },
204
+ isLast(val) {
205
+ if (val) {
206
+ this.maxInput = null
207
+ } else {
208
+ const minVal = this.safeNumber(this.minInput, 0)
209
+ const v = this.value
210
+ this.maxInput = this.safeNumber(v && v[this.keyMax], minVal + 1)
211
+ }
212
+ }
213
+ },
214
+
215
+ methods: {
216
+ getPriceItem(value) {
217
+ const v = value
218
+ const minVal = this.safeNumber(v && v[this.keyMin], 0)
219
+ const maxVal = this.isLast ? null : this.safeNumber(v && v[this.keyMax], minVal + 1)
220
+ const priceVal = this.safeNumber(v && v[this.keyPrice], 0)
221
+ return {
222
+ minVal,
223
+ maxVal,
224
+ priceVal
225
+ }
226
+ },
227
+ // 统一兜底:非数字输入一律转为 fallback(默认 0)
228
+ safeNumber(v, fallback = 0) {
229
+ if (v === null || v === undefined || v === '' || v === Infinity || v === -Infinity) return fallback
230
+ const n = Number(v)
231
+ return isNaN(n) ? fallback : n
232
+ },
233
+
234
+ emitChange(partial) {
235
+ const next = {
236
+ [this.keyMin]: this.minInput,
237
+ [this.keyMax]: this.isLast ? null : this.maxInput,
238
+ [this.keyPrice]: this.priceInput,
239
+ ...partial
240
+ }
241
+ this.$emit('input', next)
242
+ this.$emit('change', next, this.index)
243
+ },
244
+
245
+ onMinBlur() {
246
+ let v = this.safeNumber(this.minInput, 0)
247
+ if (v !== 0) {
248
+ v = Number(v.toFixed(this.precision))
249
+ }
250
+ this.minInput = v
251
+ this.$emit('min-change', v, this.index)
252
+ this.emitChange({ [this.keyMin]: v })
253
+ },
254
+
255
+ onMaxBlur() {
256
+ if (this.isLast) return
257
+ const minVal = this.safeNumber(this.minInput, 0)
258
+ const stepVal = this.safeNumber(this.step, 1)
259
+ let v = this.safeNumber(this.maxInput, minVal + stepVal)
260
+ if (v <= minVal) v = minVal + stepVal
261
+ v = Number(v.toFixed(this.precision))
262
+ this.maxInput = v
263
+ this.$emit('max-change', v, this.index)
264
+ this.emitChange({ [this.keyMax]: v })
265
+ },
266
+
267
+ onPriceBlur() {
268
+ const rawVal = this.priceInput
269
+ if (rawVal === null || rawVal === undefined || rawVal === '' || isNaN(rawVal)) {
270
+ this.priceInput = ''
271
+ this.emitChange({ [this.keyPrice]: '' })
272
+ return
273
+ }
274
+ let v = this.safeNumber(rawVal, 0)
275
+ if (v < 0 && !this.allowNegative) v = 0
276
+ v = Number(v.toFixed(this.precision))
277
+ this.priceInput = v
278
+ this.emitChange({ [this.keyPrice]: v })
279
+ },
280
+
281
+ onBlur(e) {
282
+ this.$emit('blur', e)
283
+ },
284
+
285
+ onDelete() {
286
+ this.$emit('delete', this.index)
287
+ }
288
+ }
289
+ });
290
+
291
+ // CONCATENATED MODULE: ./src/components/xt-step-price-item/index.vue?vue&type=script&lang=js
292
+ /* harmony default export */ var components_xt_step_price_itemvue_type_script_lang_js = (xt_step_price_itemvue_type_script_lang_js);
293
+ // CONCATENATED MODULE: ./node_modules/vue-loader/lib/runtime/componentNormalizer.js
294
+ /* globals __VUE_SSR_CONTEXT__ */
295
+
296
+ // IMPORTANT: Do NOT use ES2015 features in this file (except for modules).
297
+ // This module is a runtime utility for cleaner component module output and will
298
+ // be included in the final webpack user bundle.
299
+
300
+ function normalizeComponent(
301
+ scriptExports,
302
+ render,
303
+ staticRenderFns,
304
+ functionalTemplate,
305
+ injectStyles,
306
+ scopeId,
307
+ moduleIdentifier /* server only */,
308
+ shadowMode /* vue-cli only */
309
+ ) {
310
+ // Vue.extend constructor export interop
311
+ var options =
312
+ typeof scriptExports === 'function' ? scriptExports.options : scriptExports
313
+
314
+ // render functions
315
+ if (render) {
316
+ options.render = render
317
+ options.staticRenderFns = staticRenderFns
318
+ options._compiled = true
319
+ }
320
+
321
+ // functional template
322
+ if (functionalTemplate) {
323
+ options.functional = true
324
+ }
325
+
326
+ // scopedId
327
+ if (scopeId) {
328
+ options._scopeId = 'data-v-' + scopeId
329
+ }
330
+
331
+ var hook
332
+ if (moduleIdentifier) {
333
+ // server build
334
+ hook = function (context) {
335
+ // 2.3 injection
336
+ context =
337
+ context || // cached call
338
+ (this.$vnode && this.$vnode.ssrContext) || // stateful
339
+ (this.parent && this.parent.$vnode && this.parent.$vnode.ssrContext) // functional
340
+ // 2.2 with runInNewContext: true
341
+ if (!context && typeof __VUE_SSR_CONTEXT__ !== 'undefined') {
342
+ context = __VUE_SSR_CONTEXT__
343
+ }
344
+ // inject component styles
345
+ if (injectStyles) {
346
+ injectStyles.call(this, context)
347
+ }
348
+ // register component module identifier for async chunk inferrence
349
+ if (context && context._registeredComponents) {
350
+ context._registeredComponents.add(moduleIdentifier)
351
+ }
352
+ }
353
+ // used by ssr in case component is cached and beforeCreate
354
+ // never gets called
355
+ options._ssrRegister = hook
356
+ } else if (injectStyles) {
357
+ hook = shadowMode
358
+ ? function () {
359
+ injectStyles.call(
360
+ this,
361
+ (options.functional ? this.parent : this).$root.$options.shadowRoot
362
+ )
363
+ }
364
+ : injectStyles
365
+ }
366
+
367
+ if (hook) {
368
+ if (options.functional) {
369
+ // for template-only hot-reload because in that case the render fn doesn't
370
+ // go through the normalizer
371
+ options._injectStyles = hook
372
+ // register for functional component in vue file
373
+ var originalRender = options.render
374
+ options.render = function renderWithStyleInjection(h, context) {
375
+ hook.call(context)
376
+ return originalRender(h, context)
377
+ }
378
+ } else {
379
+ // inject component registration as beforeCreate hook
380
+ var existing = options.beforeCreate
381
+ options.beforeCreate = existing ? [].concat(existing, hook) : [hook]
382
+ }
383
+ }
384
+
385
+ return {
386
+ exports: scriptExports,
387
+ options: options
388
+ }
389
+ }
390
+
391
+ // CONCATENATED MODULE: ./src/components/xt-step-price-item/index.vue
392
+
393
+
394
+
395
+
396
+
397
+ /* normalize component */
398
+
399
+ var component = normalizeComponent(
400
+ components_xt_step_price_itemvue_type_script_lang_js,
401
+ xt_step_price_itemvue_type_template_id_4d5bb3b1_render,
402
+ xt_step_price_itemvue_type_template_id_4d5bb3b1_staticRenderFns,
403
+ false,
404
+ null,
405
+ null,
406
+ null
407
+
408
+ )
409
+
410
+ /* harmony default export */ var xt_step_price_item = (component.exports);
411
+ // CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js??ref--1-0!./node_modules/vue-loader/lib??vue-loader-options!./src/components/xt-step-price/index.vue?vue&type=script&lang=js
412
+
413
+
414
+
415
+ /* harmony default export */ var xt_step_pricevue_type_script_lang_js = ({
416
+ name: 'XtStepPrice',
417
+
418
+ components: { XtStepPriceItem: xt_step_price_item },
419
+
420
+ inject: {
421
+ elFormItem: {
422
+ default: ''
423
+ }
424
+ },
425
+
426
+ computed: {
427
+ keyMin() { return (this.fieldKeys && this.fieldKeys.min) || 'min' },
428
+ keyMax() { return (this.fieldKeys && this.fieldKeys.max) || 'max' },
429
+ keyPrice() { return (this.fieldKeys && this.fieldKeys.price) || 'price' },
430
+ isLimitReached() {
431
+ const lim = Number(this.limit)
432
+ return lim > 0 && this.localItems.length >= lim
433
+ }
434
+ },
435
+
436
+ props: {
437
+ value: {
438
+ type: Array,
439
+ default: () => []
440
+ },
441
+ title: { type: String, default: '' },
442
+ unit: { type: String, default: '元' },
443
+ stepName: { type: String, default: '阶梯' },
444
+ precision: { type: Number, default: 2 },
445
+ // 左括号:默认 '[',传空字符串则不显示
446
+ leftBracket: { type: String, default: '[' },
447
+ // 右括号:默认 null,走内置逻辑(只有1条为 ']',多条为 ')');传具体值则强制使用
448
+ rightBracket: { type: String, default: null },
449
+ // 字段名映射:{ min, max, price },允许传入的 value 使用自定义字段名
450
+ fieldKeys: {
451
+ type: Object,
452
+ default: () => ({ min: 'min', max: 'max', price: 'price' })
453
+ },
454
+ // 阶梯数量上限;<= 0 表示不限制
455
+ limit: { type: Number, default: 0 },
456
+ // 阶梯增量:新增/校正时,下一条阶梯的 min = 当前 max = 当前 min + step(默认 1)
457
+ step: { type: Number, default: 10 },
458
+ disabled: { type: Boolean, default: false },
459
+ allowNegative: { type: Boolean, default: false },
460
+ tip: {
461
+ type: String,
462
+ default: '区间左闭右闭 [min, max],最后一级为 [min, +∞),保证连续且不重叠。'
463
+ },
464
+ // 默认初始值:当传入空数组时,是否自动生成首条默认阶梯 [0, +∞)
465
+ defaultFirst: { type: Boolean, default: true }
466
+ },
467
+
468
+ data() {
469
+ return {
470
+ localItems: this.normalize(this.value)
471
+ }
472
+ },
473
+
474
+ watch: {
475
+ value: {
476
+ deep: true,
477
+ immediate: true,
478
+ handler(val) {
479
+ this.localItems = this.normalize(val)
480
+ }
481
+ }
482
+ },
483
+
484
+ methods: {
485
+ // 统一数字转换:空值/非法值一律转为 fallback(默认 0)
486
+ safeNumber(v, fallback = 0) {
487
+ if (v === null || v === undefined || v === '' || v === Infinity || v === -Infinity) return fallback
488
+ const n = Number(v)
489
+ return isNaN(n) ? fallback : n
490
+ },
491
+
492
+ cloneItems(items) {
493
+ if (!Array.isArray(items)) return []
494
+ return items.map((it) => {
495
+ const price = (it && it[this.keyPrice])
496
+ return {
497
+ [this.keyMin]: this.safeNumber(it && it[this.keyMin], 0),
498
+ [this.keyMax]: (it && it[this.keyMax] == null) || (it && it[this.keyMax] === '') ? null : this.safeNumber(it[this.keyMax], null),
499
+ [this.keyPrice]: (price === null || price === undefined || price === '') ? '' : this.safeNumber(price, 0)
500
+ }
501
+ })
502
+ },
503
+
504
+ normalize(items) {
505
+ const list = this.cloneItems(items)
506
+ if (list.length === 0 && this.defaultFirst) {
507
+ list.push({ [this.keyMin]: 0, [this.keyMax]: null, [this.keyPrice]: 0 })
508
+ }
509
+ this.ensureContinuity(list)
510
+ return list
511
+ },
512
+
513
+ // 保证 items 连续且不重叠:items[i].max === items[i+1].min,首条 min === 0,末条 max === null
514
+ ensureContinuity(list) {
515
+ if (!Array.isArray(list) || list.length === 0) return
516
+ list[0][this.keyMin] = 0
517
+ const stepVal = this.safeNumber(this.step, 1)
518
+
519
+ for (let i = 0; i < list.length; i++) {
520
+ const cur = list[i]
521
+ const next = list[i + 1]
522
+ const curMin = this.safeNumber(cur[this.keyMin], 0)
523
+ if (next) {
524
+ let curMax = this.safeNumber(cur[this.keyMax], curMin + stepVal)
525
+ if (curMax <= curMin) curMax = curMin + stepVal
526
+ curMax = Number(curMax.toFixed(this.precision))
527
+ cur[this.keyMax] = curMax
528
+ next[this.keyMin] = curMax
529
+ } else {
530
+ cur[this.keyMax] = null
531
+ }
532
+ const price = cur[this.keyPrice]
533
+ cur[this.keyPrice] = (price === null || price === undefined || price === '') ? '' : this.safeNumber(price, 0)
534
+ }
535
+ },
536
+
537
+ emit() {
538
+ this.ensureContinuity(this.localItems)
539
+ const cloned = this.cloneItems(this.localItems)
540
+ this.$emit('input', cloned)
541
+ this.$emit('change', cloned)
542
+ this.dispatchFormEvent('el.form.change', cloned)
543
+ },
544
+
545
+ dispatchFormEvent(eventName, value) {
546
+ if (this.elFormItem) {
547
+ this.elFormItem.$emit(eventName, value)
548
+ }
549
+ },
550
+
551
+ onFieldBlur() {
552
+ this.dispatchFormEvent('el.form.blur', this.localItems)
553
+ },
554
+
555
+ validate(callback) {
556
+ const list = this.localItems
557
+ if (!Array.isArray(list) || list.length === 0) {
558
+ callback && callback(false, [{ field: 'stepPrice', message: `请配置${this.stepName}`, type: 'error' }])
559
+ return false
560
+ }
561
+
562
+ const errors = []
563
+ for (let i = 0; i < list.length; i++) {
564
+ const item = list[i]
565
+ const rawPrice = item[this.keyPrice]
566
+ const rawMin = item[this.keyMin]
567
+ const rawMax = item[this.keyMax]
568
+ const price = this.safeNumber(rawPrice, 0)
569
+ const min = this.safeNumber(rawMin, 0)
570
+
571
+ if (rawPrice === null || rawPrice === undefined || rawPrice === '') {
572
+ errors.push({
573
+ field: `stepPrice[${i}].price`,
574
+ message: `第${i + 1}${this.stepName}价格不能为空`,
575
+ type: 'error'
576
+ })
577
+ } else if (price < 0 && !this.allowNegative) {
578
+ errors.push({
579
+ field: `stepPrice[${i}].price`,
580
+ message: `第${i + 1}${this.stepName}价格不能为负数`,
581
+ type: 'error'
582
+ })
583
+ }
584
+
585
+ if (rawMin === null || rawMin === undefined || rawMin === '') {
586
+ errors.push({
587
+ field: `stepPrice[${i}].min`,
588
+ message: `第${i + 1}${this.stepName}下限不能为空`,
589
+ type: 'error'
590
+ })
591
+ } else if (min < 0 && !this.allowNegative) {
592
+ errors.push({
593
+ field: `stepPrice[${i}].min`,
594
+ message: `第${i + 1}${this.stepName}下限不能为负数`,
595
+ type: 'error'
596
+ })
597
+ }
598
+
599
+ if (!this.isLast(i)) {
600
+ if (rawMax === null || rawMax === undefined || rawMax === '') {
601
+ errors.push({
602
+ field: `stepPrice[${i}].max`,
603
+ message: `第${i + 1}${this.stepName}上限不能为空`,
604
+ type: 'error'
605
+ })
606
+ } else if (this.safeNumber(rawMax, 0) <= min) {
607
+ errors.push({
608
+ field: `stepPrice[${i}].max`,
609
+ message: `第${i + 1}${this.stepName}上限必须大于下限`,
610
+ type: 'error'
611
+ })
612
+ }
613
+ }
614
+
615
+ if (i > 0) {
616
+ const prev = list[i - 1]
617
+ const prevMax = prev[this.keyMax]
618
+ if (prevMax !== null && this.safeNumber(prevMax, 0) !== min) {
619
+ errors.push({
620
+ field: `stepPrice[${i}].min`,
621
+ message: `第${i + 1}${this.stepName}下限必须等于上一${this.stepName}上限`,
622
+ type: 'error'
623
+ })
624
+ }
625
+ }
626
+ }
627
+
628
+ if (errors.length > 0) {
629
+ callback && callback(false, errors)
630
+ return false
631
+ }
632
+
633
+ callback && callback(true)
634
+ return true
635
+ },
636
+
637
+ isLast(idx) {
638
+ return idx === this.localItems.length - 1
639
+ },
640
+
641
+ onItemInput(val, idx) {
642
+ const cur = this.localItems[idx]
643
+ if (!cur) return
644
+ if (val && val[this.keyPrice] !== undefined) {
645
+ const p = val[this.keyPrice]
646
+ if (p === null || p === undefined || p === '') {
647
+ cur[this.keyPrice] = ''
648
+ } else {
649
+ let num = this.safeNumber(p, 0)
650
+ num = Number(num.toFixed(this.precision))
651
+ cur[this.keyPrice] = num
652
+ }
653
+ this.emit()
654
+ }
655
+ },
656
+
657
+ onMaxChange(val, idx) {
658
+ const cur = this.localItems[idx]
659
+ if (!cur) return
660
+ const stepVal = this.safeNumber(this.step, 1)
661
+ let n = this.safeNumber(val, this.safeNumber(cur[this.keyMin], 0) + stepVal)
662
+ n = Number(n.toFixed(this.precision))
663
+ cur[this.keyMax] = n
664
+ const next = this.localItems[idx + 1]
665
+ if (next) next[this.keyMin] = n
666
+ this.emit()
667
+ },
668
+
669
+ onMinChange(val, idx) {
670
+ const cur = this.localItems[idx]
671
+ if (!cur) return
672
+ if (idx === 0) {
673
+ cur[this.keyMin] = 0
674
+ } else {
675
+ let n = this.safeNumber(val, this.safeNumber(cur[this.keyMin], 0))
676
+ if (n !== 0) {
677
+ n = Number(n.toFixed(this.precision))
678
+ }
679
+ cur[this.keyMin] = n
680
+ const prev = this.localItems[idx - 1]
681
+ if (prev) prev[this.keyMax] = n
682
+ }
683
+ this.emit()
684
+ },
685
+
686
+ onAdd() {
687
+ const list = this.localItems
688
+ const lim = Number(this.limit)
689
+ if (lim > 0 && list.length >= lim) return
690
+ const stepVal = this.safeNumber(this.step, 1)
691
+
692
+ // 场景 1:空数组 —— 直接 push 一条 [0, +∞)
693
+ if (list.length === 0) {
694
+ list.push({
695
+ [this.keyMin]: 0,
696
+ [this.keyMax]: null,
697
+ [this.keyPrice]: 10
698
+ })
699
+ this.emit()
700
+ return
701
+ }
702
+
703
+ // 场景 2:已有数据 —— 在末条前插入新条,新条的 max = 末条 min + step
704
+ const last = list[list.length - 1]
705
+ const newMin = this.safeNumber(last[this.keyMin], 0)
706
+ const newMax = newMin + stepVal
707
+
708
+ // 新条 price:使用默认值,由用户自行填写
709
+ let newPrice = 0
710
+
711
+ const newArr = [
712
+ ...list.slice(0, -1),
713
+ {
714
+ [this.keyMin]: newMin,
715
+ [this.keyMax]: newMax,
716
+ [this.keyPrice]: newPrice
717
+ },
718
+ {
719
+ [this.keyMin]: newMax,
720
+ [this.keyMax]: null,
721
+ [this.keyPrice]: newPrice
722
+ }
723
+ ]
724
+
725
+ this.localItems = newArr
726
+ this.emit()
727
+ },
728
+
729
+ onDelete(idx) {
730
+ const list = this.localItems
731
+ if (list.length <= 1) return // 至少保留一条
732
+ if (idx === 0) return // 首条不允许删除,保证区间起点始终为 0
733
+ const cur = list[idx]
734
+ const prev = list[idx - 1]
735
+ const next = list[idx + 1]
736
+ if (prev && next) {
737
+ prev[this.keyMax] = cur[this.keyMax] == null ? null : Number(cur[this.keyMax])
738
+ } else if (prev && !next) {
739
+ prev[this.keyMax] = null
740
+ } else if (!prev && next) {
741
+ next[this.keyMin] = 0
742
+ }
743
+ list.splice(idx, 1)
744
+ this.emit()
745
+ }
746
+ }
747
+ });
748
+
749
+ // CONCATENATED MODULE: ./src/components/xt-step-price/index.vue?vue&type=script&lang=js
750
+ /* harmony default export */ var components_xt_step_pricevue_type_script_lang_js = (xt_step_pricevue_type_script_lang_js);
751
+ // CONCATENATED MODULE: ./src/components/xt-step-price/index.vue
752
+
753
+
754
+
755
+
756
+
757
+ /* normalize component */
758
+
759
+ var xt_step_price_component = normalizeComponent(
760
+ components_xt_step_pricevue_type_script_lang_js,
761
+ render,
762
+ staticRenderFns,
763
+ false,
764
+ null,
765
+ null,
766
+ null
767
+
768
+ )
769
+
770
+ /* harmony default export */ var xt_step_price = (xt_step_price_component.exports);
771
+ // CONCATENATED MODULE: ./src/components/xt-step-price/index.js
772
+
773
+
774
+
775
+
776
+ xt_step_price.install = function (Vue) {
777
+ Vue.component(xt_step_price.name, xt_step_price)
778
+ Vue.component(xt_step_price_item.name, xt_step_price_item)
779
+ }
780
+
781
+ // 同时导出组件和 install 方法,支持多种引入方式
782
+ /* harmony default export */ var components_xt_step_price = (xt_step_price);
783
+
784
+ // CONCATENATED MODULE: ./node_modules/@vue/cli-service/lib/commands/build/entry-lib.js
785
+
786
+
787
+ /* harmony default export */ var entry_lib = __webpack_exports__["default"] = (components_xt_step_price);
788
+
789
+
790
+
791
+ /***/ }),
792
+
793
+ /***/ "fd93":
794
+ /***/ (function(module, exports, __webpack_require__) {
795
+
796
+ // extracted by mini-css-extract-plugin
797
+
798
+ /***/ })
799
+
800
+ /******/ });