iv-npm 1.2.17 → 1.2.20

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "iv-npm",
3
- "version": "1.2.17",
3
+ "version": "1.2.20",
4
4
  "description": "公共通用包",
5
5
  "author": "Mr.Cong",
6
6
  "license": "ISC",
@@ -71,6 +71,11 @@ declare const _default: import("vue").DefineComponent<{
71
71
  required: false;
72
72
  default: string;
73
73
  };
74
+ name: {
75
+ type: StringConstructor;
76
+ required: false;
77
+ default: string;
78
+ };
74
79
  }, (_ctx: any, _cache: any) => import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
75
80
  [key: string]: any;
76
81
  }>, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("update:value" | "change")[], "update:value" | "change", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
@@ -143,6 +148,11 @@ declare const _default: import("vue").DefineComponent<{
143
148
  required: false;
144
149
  default: string;
145
150
  };
151
+ name: {
152
+ type: StringConstructor;
153
+ required: false;
154
+ default: string;
155
+ };
146
156
  }>> & {
147
157
  "onUpdate:value"?: ((...args: any[]) => any) | undefined;
148
158
  onChange?: ((...args: any[]) => any) | undefined;
@@ -154,5 +164,6 @@ declare const _default: import("vue").DefineComponent<{
154
164
  isTitle: boolean;
155
165
  placeholder: string;
156
166
  title: string;
167
+ name: string;
157
168
  }>;
158
169
  export default _default;
@@ -552,7 +552,7 @@ var _hoisted_1$l = {
552
552
  key: 0,
553
553
  id: "top"
554
554
  };
555
- var _hoisted_2$9 = {
555
+ var _hoisted_2$a = {
556
556
  "class": "flex items-center justify-center"
557
557
  };
558
558
  var _hoisted_3$8 = {
@@ -771,7 +771,7 @@ var script$n = /*#__PURE__*/vue.defineComponent({
771
771
  height: __props.setHeight && !clickDensity.value ? __props.setHeight + 'px' : tableH.value ? tableH.value + 'px' : '',
772
772
  width: item.w ? item.w : ''
773
773
  })
774
- }, [vue.createElementVNode("div", _hoisted_2$9, [vue.createTextVNode(vue.toDisplayString(item.title == "操作" ? "" : item.title) + " ", 1
774
+ }, [vue.createElementVNode("div", _hoisted_2$a, [vue.createTextVNode(vue.toDisplayString(item.title == "操作" ? "" : item.title) + " ", 1
775
775
  /* TEXT */
776
776
  ), item.unit ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_3$8, vue.toDisplayString(item.unit), 1
777
777
  /* TEXT */
@@ -951,7 +951,7 @@ var _hoisted_1$k = {
951
951
  "class": "tableControl"
952
952
  };
953
953
 
954
- var _hoisted_2$8 = /*#__PURE__*/_withScopeId$2(function () {
954
+ var _hoisted_2$9 = /*#__PURE__*/_withScopeId$2(function () {
955
955
  return /*#__PURE__*/vue.createElementVNode("div", null, "密度", -1
956
956
  /* HOISTED */
957
957
  );
@@ -1072,7 +1072,7 @@ var script$m = /*#__PURE__*/vue.defineComponent({
1072
1072
  onVisibleChange: handleHoverChange
1073
1073
  }, {
1074
1074
  content: vue.withCtx(function () {
1075
- return [_hoisted_2$8];
1075
+ return [_hoisted_2$9];
1076
1076
  }),
1077
1077
  "default": vue.withCtx(function () {
1078
1078
  return [vue.createVNode(_component_a_popover, {
@@ -2139,6 +2139,9 @@ var _hoisted_1$g = {
2139
2139
  key: 0,
2140
2140
  "class": "text-[#0000006D] text-[14px]"
2141
2141
  };
2142
+ var _hoisted_2$8 = {
2143
+ "class": "absolute right-rull top-1/2 -translate-y-1/2 w-[410px] px-2 text-[#0000006D] text-[12px]"
2144
+ };
2142
2145
  /**
2143
2146
  * 组件定义-------------------------------------
2144
2147
  * */
@@ -2321,7 +2324,8 @@ var script$i = /*#__PURE__*/vue.defineComponent({
2321
2324
  message: '请选择' + __props.title
2322
2325
  }],
2323
2326
  style: vue.normalizeStyle(__props.formItemStyle),
2324
- colon: __props.isTitle
2327
+ colon: __props.isTitle,
2328
+ "class": "relative"
2325
2329
  }, {
2326
2330
  label: vue.withCtx(function () {
2327
2331
  return [__props.isTitle ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_1$g, vue.toDisplayString(__props.title), 1
@@ -2352,10 +2356,10 @@ var script$i = /*#__PURE__*/vue.defineComponent({
2352
2356
  replaceFields: __props.replaceFields
2353
2357
  }), null, 16
2354
2358
  /* FULL_PROPS */
2355
- , ["value", "tree-data", "getPopupContainer", "placeholder", "allowClear", "filter-option", "multiple", "style", "replaceFields"])];
2359
+ , ["value", "tree-data", "getPopupContainer", "placeholder", "allowClear", "filter-option", "multiple", "style", "replaceFields"]), vue.createElementVNode("span", _hoisted_2$8, [vue.renderSlot(_ctx.$slots, "notes")])];
2356
2360
  }),
2357
- _: 1
2358
- /* STABLE */
2361
+ _: 3
2362
+ /* FORWARDED */
2359
2363
 
2360
2364
  }, 8
2361
2365
  /* PROPS */
@@ -3100,6 +3104,11 @@ var script$d = /*#__PURE__*/vue.defineComponent({
3100
3104
  type: String,
3101
3105
  required: false,
3102
3106
  "default": "材料类型"
3107
+ },
3108
+ name: {
3109
+ type: String,
3110
+ required: false,
3111
+ "default": "materialCategoryId"
3103
3112
  }
3104
3113
  },
3105
3114
  emits: ["update:value", "change"],
@@ -3182,7 +3191,7 @@ var script$d = /*#__PURE__*/vue.defineComponent({
3182
3191
  var _component_a_form_item = vue.resolveComponent("a-form-item");
3183
3192
 
3184
3193
  return vue.openBlock(), vue.createBlock(_component_a_form_item, {
3185
- name: "materialCategoryId",
3194
+ name: __props.name,
3186
3195
  "label-col": __props.labelCol,
3187
3196
  "wrapper-col": __props.wrapperCol,
3188
3197
  rules: [{
@@ -3232,7 +3241,7 @@ var script$d = /*#__PURE__*/vue.defineComponent({
3232
3241
 
3233
3242
  }, 8
3234
3243
  /* PROPS */
3235
- , ["label-col", "wrapper-col", "rules", "style", "colon"]);
3244
+ , ["name", "label-col", "wrapper-col", "rules", "style", "colon"]);
3236
3245
  };
3237
3246
  }
3238
3247
  });
@@ -4938,7 +4947,7 @@ function render$1(_ctx, _cache, $props, $setup, $data, $options) {
4938
4947
  "class": "picker",
4939
4948
  style: {
4940
4949
  "height": "35px",
4941
- "width": "200px",
4950
+ "width": "210px",
4942
4951
  "border-radius": "5px"
4943
4952
  },
4944
4953
  value: _ctx.time,
@@ -5033,7 +5042,8 @@ var _hoisted_2$3 = /*#__PURE__*/vue.createElementVNode("span", {
5033
5042
 
5034
5043
  var _hoisted_3$3 = {
5035
5044
  style: {
5036
- "padding": "0 150px"
5045
+ "padding-left": "150px",
5046
+ "padding-right": "150px"
5037
5047
  },
5038
5048
  id: "IVUserSelector"
5039
5049
  };
@@ -5687,7 +5697,10 @@ var _hoisted_2$2 = /*#__PURE__*/vue.createElementVNode("span", {
5687
5697
  );
5688
5698
 
5689
5699
  var _hoisted_3$2 = {
5690
- "class": "px-[150px]",
5700
+ style: {
5701
+ "padding-left": "150px",
5702
+ "padding-right": "150px"
5703
+ },
5691
5704
  id: "IVUserSelector"
5692
5705
  };
5693
5706
  var _hoisted_4$2 = {
@@ -6201,7 +6214,10 @@ var _hoisted_2$1 = /*#__PURE__*/vue.createElementVNode("span", {
6201
6214
  );
6202
6215
 
6203
6216
  var _hoisted_3$1 = {
6204
- "class": "px-[150px]",
6217
+ style: {
6218
+ "padding-left": "150px",
6219
+ "padding-right": "150px"
6220
+ },
6205
6221
  id: "IVUserSelector"
6206
6222
  };
6207
6223
  var _hoisted_4$1 = {
@@ -6807,7 +6823,10 @@ var _hoisted_2 = /*#__PURE__*/vue.createElementVNode("span", {
6807
6823
  );
6808
6824
 
6809
6825
  var _hoisted_3 = {
6810
- "class": "px-[150px]",
6826
+ style: {
6827
+ "padding-left": "150px",
6828
+ "padding-right": "150px"
6829
+ },
6811
6830
  id: "IVUserSelector"
6812
6831
  };
6813
6832
  var _hoisted_4 = {
@@ -548,7 +548,7 @@ var _hoisted_1$l = {
548
548
  key: 0,
549
549
  id: "top"
550
550
  };
551
- var _hoisted_2$9 = {
551
+ var _hoisted_2$a = {
552
552
  "class": "flex items-center justify-center"
553
553
  };
554
554
  var _hoisted_3$8 = {
@@ -767,7 +767,7 @@ var script$n = /*#__PURE__*/defineComponent({
767
767
  height: __props.setHeight && !clickDensity.value ? __props.setHeight + 'px' : tableH.value ? tableH.value + 'px' : '',
768
768
  width: item.w ? item.w : ''
769
769
  })
770
- }, [createElementVNode("div", _hoisted_2$9, [createTextVNode(toDisplayString(item.title == "操作" ? "" : item.title) + " ", 1
770
+ }, [createElementVNode("div", _hoisted_2$a, [createTextVNode(toDisplayString(item.title == "操作" ? "" : item.title) + " ", 1
771
771
  /* TEXT */
772
772
  ), item.unit ? (openBlock(), createElementBlock("span", _hoisted_3$8, toDisplayString(item.unit), 1
773
773
  /* TEXT */
@@ -947,7 +947,7 @@ var _hoisted_1$k = {
947
947
  "class": "tableControl"
948
948
  };
949
949
 
950
- var _hoisted_2$8 = /*#__PURE__*/_withScopeId$2(function () {
950
+ var _hoisted_2$9 = /*#__PURE__*/_withScopeId$2(function () {
951
951
  return /*#__PURE__*/createElementVNode("div", null, "密度", -1
952
952
  /* HOISTED */
953
953
  );
@@ -1068,7 +1068,7 @@ var script$m = /*#__PURE__*/defineComponent({
1068
1068
  onVisibleChange: handleHoverChange
1069
1069
  }, {
1070
1070
  content: withCtx(function () {
1071
- return [_hoisted_2$8];
1071
+ return [_hoisted_2$9];
1072
1072
  }),
1073
1073
  "default": withCtx(function () {
1074
1074
  return [createVNode(_component_a_popover, {
@@ -2135,6 +2135,9 @@ var _hoisted_1$g = {
2135
2135
  key: 0,
2136
2136
  "class": "text-[#0000006D] text-[14px]"
2137
2137
  };
2138
+ var _hoisted_2$8 = {
2139
+ "class": "absolute right-rull top-1/2 -translate-y-1/2 w-[410px] px-2 text-[#0000006D] text-[12px]"
2140
+ };
2138
2141
  /**
2139
2142
  * 组件定义-------------------------------------
2140
2143
  * */
@@ -2317,7 +2320,8 @@ var script$i = /*#__PURE__*/defineComponent({
2317
2320
  message: '请选择' + __props.title
2318
2321
  }],
2319
2322
  style: normalizeStyle(__props.formItemStyle),
2320
- colon: __props.isTitle
2323
+ colon: __props.isTitle,
2324
+ "class": "relative"
2321
2325
  }, {
2322
2326
  label: withCtx(function () {
2323
2327
  return [__props.isTitle ? (openBlock(), createElementBlock("div", _hoisted_1$g, toDisplayString(__props.title), 1
@@ -2348,10 +2352,10 @@ var script$i = /*#__PURE__*/defineComponent({
2348
2352
  replaceFields: __props.replaceFields
2349
2353
  }), null, 16
2350
2354
  /* FULL_PROPS */
2351
- , ["value", "tree-data", "getPopupContainer", "placeholder", "allowClear", "filter-option", "multiple", "style", "replaceFields"])];
2355
+ , ["value", "tree-data", "getPopupContainer", "placeholder", "allowClear", "filter-option", "multiple", "style", "replaceFields"]), createElementVNode("span", _hoisted_2$8, [renderSlot(_ctx.$slots, "notes")])];
2352
2356
  }),
2353
- _: 1
2354
- /* STABLE */
2357
+ _: 3
2358
+ /* FORWARDED */
2355
2359
 
2356
2360
  }, 8
2357
2361
  /* PROPS */
@@ -3096,6 +3100,11 @@ var script$d = /*#__PURE__*/defineComponent({
3096
3100
  type: String,
3097
3101
  required: false,
3098
3102
  "default": "材料类型"
3103
+ },
3104
+ name: {
3105
+ type: String,
3106
+ required: false,
3107
+ "default": "materialCategoryId"
3099
3108
  }
3100
3109
  },
3101
3110
  emits: ["update:value", "change"],
@@ -3178,7 +3187,7 @@ var script$d = /*#__PURE__*/defineComponent({
3178
3187
  var _component_a_form_item = resolveComponent("a-form-item");
3179
3188
 
3180
3189
  return openBlock(), createBlock(_component_a_form_item, {
3181
- name: "materialCategoryId",
3190
+ name: __props.name,
3182
3191
  "label-col": __props.labelCol,
3183
3192
  "wrapper-col": __props.wrapperCol,
3184
3193
  rules: [{
@@ -3228,7 +3237,7 @@ var script$d = /*#__PURE__*/defineComponent({
3228
3237
 
3229
3238
  }, 8
3230
3239
  /* PROPS */
3231
- , ["label-col", "wrapper-col", "rules", "style", "colon"]);
3240
+ , ["name", "label-col", "wrapper-col", "rules", "style", "colon"]);
3232
3241
  };
3233
3242
  }
3234
3243
  });
@@ -4934,7 +4943,7 @@ function render$1(_ctx, _cache, $props, $setup, $data, $options) {
4934
4943
  "class": "picker",
4935
4944
  style: {
4936
4945
  "height": "35px",
4937
- "width": "200px",
4946
+ "width": "210px",
4938
4947
  "border-radius": "5px"
4939
4948
  },
4940
4949
  value: _ctx.time,
@@ -5029,7 +5038,8 @@ var _hoisted_2$3 = /*#__PURE__*/createElementVNode("span", {
5029
5038
 
5030
5039
  var _hoisted_3$3 = {
5031
5040
  style: {
5032
- "padding": "0 150px"
5041
+ "padding-left": "150px",
5042
+ "padding-right": "150px"
5033
5043
  },
5034
5044
  id: "IVUserSelector"
5035
5045
  };
@@ -5683,7 +5693,10 @@ var _hoisted_2$2 = /*#__PURE__*/createElementVNode("span", {
5683
5693
  );
5684
5694
 
5685
5695
  var _hoisted_3$2 = {
5686
- "class": "px-[150px]",
5696
+ style: {
5697
+ "padding-left": "150px",
5698
+ "padding-right": "150px"
5699
+ },
5687
5700
  id: "IVUserSelector"
5688
5701
  };
5689
5702
  var _hoisted_4$2 = {
@@ -6197,7 +6210,10 @@ var _hoisted_2$1 = /*#__PURE__*/createElementVNode("span", {
6197
6210
  );
6198
6211
 
6199
6212
  var _hoisted_3$1 = {
6200
- "class": "px-[150px]",
6213
+ style: {
6214
+ "padding-left": "150px",
6215
+ "padding-right": "150px"
6216
+ },
6201
6217
  id: "IVUserSelector"
6202
6218
  };
6203
6219
  var _hoisted_4$1 = {
@@ -6803,7 +6819,10 @@ var _hoisted_2 = /*#__PURE__*/createElementVNode("span", {
6803
6819
  );
6804
6820
 
6805
6821
  var _hoisted_3 = {
6806
- "class": "px-[150px]",
6822
+ style: {
6823
+ "padding-left": "150px",
6824
+ "padding-right": "150px"
6825
+ },
6807
6826
  id: "IVUserSelector"
6808
6827
  };
6809
6828
  var _hoisted_4 = {
@@ -552,7 +552,7 @@
552
552
  key: 0,
553
553
  id: "top"
554
554
  };
555
- var _hoisted_2$9 = {
555
+ var _hoisted_2$a = {
556
556
  "class": "flex items-center justify-center"
557
557
  };
558
558
  var _hoisted_3$8 = {
@@ -771,7 +771,7 @@
771
771
  height: __props.setHeight && !clickDensity.value ? __props.setHeight + 'px' : tableH.value ? tableH.value + 'px' : '',
772
772
  width: item.w ? item.w : ''
773
773
  })
774
- }, [vue.createElementVNode("div", _hoisted_2$9, [vue.createTextVNode(vue.toDisplayString(item.title == "操作" ? "" : item.title) + " ", 1
774
+ }, [vue.createElementVNode("div", _hoisted_2$a, [vue.createTextVNode(vue.toDisplayString(item.title == "操作" ? "" : item.title) + " ", 1
775
775
  /* TEXT */
776
776
  ), item.unit ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_3$8, vue.toDisplayString(item.unit), 1
777
777
  /* TEXT */
@@ -951,7 +951,7 @@
951
951
  "class": "tableControl"
952
952
  };
953
953
 
954
- var _hoisted_2$8 = /*#__PURE__*/_withScopeId$2(function () {
954
+ var _hoisted_2$9 = /*#__PURE__*/_withScopeId$2(function () {
955
955
  return /*#__PURE__*/vue.createElementVNode("div", null, "密度", -1
956
956
  /* HOISTED */
957
957
  );
@@ -1072,7 +1072,7 @@
1072
1072
  onVisibleChange: handleHoverChange
1073
1073
  }, {
1074
1074
  content: vue.withCtx(function () {
1075
- return [_hoisted_2$8];
1075
+ return [_hoisted_2$9];
1076
1076
  }),
1077
1077
  "default": vue.withCtx(function () {
1078
1078
  return [vue.createVNode(_component_a_popover, {
@@ -2139,6 +2139,9 @@
2139
2139
  key: 0,
2140
2140
  "class": "text-[#0000006D] text-[14px]"
2141
2141
  };
2142
+ var _hoisted_2$8 = {
2143
+ "class": "absolute right-rull top-1/2 -translate-y-1/2 w-[410px] px-2 text-[#0000006D] text-[12px]"
2144
+ };
2142
2145
  /**
2143
2146
  * 组件定义-------------------------------------
2144
2147
  * */
@@ -2321,7 +2324,8 @@
2321
2324
  message: '请选择' + __props.title
2322
2325
  }],
2323
2326
  style: vue.normalizeStyle(__props.formItemStyle),
2324
- colon: __props.isTitle
2327
+ colon: __props.isTitle,
2328
+ "class": "relative"
2325
2329
  }, {
2326
2330
  label: vue.withCtx(function () {
2327
2331
  return [__props.isTitle ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_1$g, vue.toDisplayString(__props.title), 1
@@ -2352,10 +2356,10 @@
2352
2356
  replaceFields: __props.replaceFields
2353
2357
  }), null, 16
2354
2358
  /* FULL_PROPS */
2355
- , ["value", "tree-data", "getPopupContainer", "placeholder", "allowClear", "filter-option", "multiple", "style", "replaceFields"])];
2359
+ , ["value", "tree-data", "getPopupContainer", "placeholder", "allowClear", "filter-option", "multiple", "style", "replaceFields"]), vue.createElementVNode("span", _hoisted_2$8, [vue.renderSlot(_ctx.$slots, "notes")])];
2356
2360
  }),
2357
- _: 1
2358
- /* STABLE */
2361
+ _: 3
2362
+ /* FORWARDED */
2359
2363
 
2360
2364
  }, 8
2361
2365
  /* PROPS */
@@ -3100,6 +3104,11 @@
3100
3104
  type: String,
3101
3105
  required: false,
3102
3106
  "default": "材料类型"
3107
+ },
3108
+ name: {
3109
+ type: String,
3110
+ required: false,
3111
+ "default": "materialCategoryId"
3103
3112
  }
3104
3113
  },
3105
3114
  emits: ["update:value", "change"],
@@ -3182,7 +3191,7 @@
3182
3191
  var _component_a_form_item = vue.resolveComponent("a-form-item");
3183
3192
 
3184
3193
  return vue.openBlock(), vue.createBlock(_component_a_form_item, {
3185
- name: "materialCategoryId",
3194
+ name: __props.name,
3186
3195
  "label-col": __props.labelCol,
3187
3196
  "wrapper-col": __props.wrapperCol,
3188
3197
  rules: [{
@@ -3232,7 +3241,7 @@
3232
3241
 
3233
3242
  }, 8
3234
3243
  /* PROPS */
3235
- , ["label-col", "wrapper-col", "rules", "style", "colon"]);
3244
+ , ["name", "label-col", "wrapper-col", "rules", "style", "colon"]);
3236
3245
  };
3237
3246
  }
3238
3247
  });
@@ -4938,7 +4947,7 @@
4938
4947
  "class": "picker",
4939
4948
  style: {
4940
4949
  "height": "35px",
4941
- "width": "200px",
4950
+ "width": "210px",
4942
4951
  "border-radius": "5px"
4943
4952
  },
4944
4953
  value: _ctx.time,
@@ -5033,7 +5042,8 @@
5033
5042
 
5034
5043
  var _hoisted_3$3 = {
5035
5044
  style: {
5036
- "padding": "0 150px"
5045
+ "padding-left": "150px",
5046
+ "padding-right": "150px"
5037
5047
  },
5038
5048
  id: "IVUserSelector"
5039
5049
  };
@@ -5687,7 +5697,10 @@
5687
5697
  );
5688
5698
 
5689
5699
  var _hoisted_3$2 = {
5690
- "class": "px-[150px]",
5700
+ style: {
5701
+ "padding-left": "150px",
5702
+ "padding-right": "150px"
5703
+ },
5691
5704
  id: "IVUserSelector"
5692
5705
  };
5693
5706
  var _hoisted_4$2 = {
@@ -6201,7 +6214,10 @@
6201
6214
  );
6202
6215
 
6203
6216
  var _hoisted_3$1 = {
6204
- "class": "px-[150px]",
6217
+ style: {
6218
+ "padding-left": "150px",
6219
+ "padding-right": "150px"
6220
+ },
6205
6221
  id: "IVUserSelector"
6206
6222
  };
6207
6223
  var _hoisted_4$1 = {
@@ -6807,7 +6823,10 @@
6807
6823
  );
6808
6824
 
6809
6825
  var _hoisted_3 = {
6810
- "class": "px-[150px]",
6826
+ style: {
6827
+ "padding-left": "150px",
6828
+ "padding-right": "150px"
6829
+ },
6811
6830
  id: "IVUserSelector"
6812
6831
  };
6813
6832
  var _hoisted_4 = {
@@ -1 +1 @@
1
- {"version":3,"file":"index.umd.js","sources":["../../shared/dist/utils/index.mjs","../src/business-ui/component/IVTimeSelector.vue?vue&type=template&id=5f0fe252&lang.js","../src/business-ui/component/icon/SelectorIcon.vue?vue&type=template&id=0b124b76&lang.js"],"sourcesContent":["// utils/arr/tree.ts\nfunction arrToTree(list, parentMark, childrenMark) {\n let result = [], temp;\n for (let i = 0; i < list.length; i++) {\n if (!list[i][parentMark]) {\n temp = list.filter(\n (item) => item[parentMark] === list[i][childrenMark]\n );\n if (temp.length > 0) {\n list[i].children = temp;\n }\n result.push(list[i]);\n }\n }\n return result;\n}\nfunction _loadChildren(obj, list) {\n const arr = list.filter((x) => x.parentId == obj.id);\n if (!arr.length)\n return;\n obj.children = arr;\n obj.children.forEach((x) => {\n _loadChildren(x, list);\n });\n return obj;\n}\nfunction tranListToTreeData(list) {\n const results = list.filter((x) => x.parentId == null);\n results.forEach((x) => _loadChildren(x, list));\n return results;\n}\nfunction findTree(id, list, idName) {\n let result;\n if (!list.length)\n return;\n const fn = (id2, list2, idName2) => {\n list2.find((_e) => {\n if (_e[idName2] === id2) {\n result = _e;\n } else if (_e.children && _e.children.length !== 0)\n return fn(id2, _e.children, idName2);\n });\n };\n fn(id, list, idName);\n return result;\n}\n\n// utils/obj/judge.ts\nfunction isPlainObject(obj) {\n let proto, Ctor;\n if (!obj || toString.call(obj) !== \"[object Object]\") {\n return false;\n }\n proto = Object.getPrototypeOf(obj);\n if (!proto) {\n return true;\n }\n Ctor = {}.hasOwnProperty.call(proto, \"constructor\") && proto.constructor;\n return typeof Ctor === \"function\" && {}.hasOwnProperty.toString.call(Ctor) === {}.hasOwnProperty.toString.call(Object);\n}\nvar isObject = (val) => val !== null && typeof val === \"object\";\nfunction isDate(val) {\n return toString.call(val) === \"[object Date]\";\n}\nfunction isURLSearchParams(val) {\n return typeof URLSearchParams !== \"undefined\" && val instanceof URLSearchParams;\n}\n\n// utils/obj/cache.ts\nvar assign = Object.assign;\n\n// utils/input/index.ts\nfunction filterOptionHeadle(input, option) {\n return option.label && option.label.toLowerCase().indexOf(input.toLowerCase()) >= 0;\n}\n\n// utils/format/buildUrl.ts\nfunction encode(val) {\n return encodeURIComponent(val).replace(/%40/g, \"@\").replace(/%3A/gi, \":\").replace(/%24/g, \"$\").replace(/%2C/gi, \",\").replace(/%20/g, \"+\").replace(/%5B/gi, \"[\").replace(/%5D/gi, \"]\");\n}\nfunction buildURL(url, params) {\n if (!params) {\n return url;\n }\n if (isURLSearchParams(params)) {\n return url += (url.includes(\"?\") ? \"&\" : \"?\") + params.toString();\n }\n const parts = [];\n Object.keys(params).forEach((key) => {\n const val = params[key];\n if (val === null || typeof val === \"undefined\") {\n return;\n }\n let tempVal = [];\n if (Array.isArray(val)) {\n tempVal = val;\n key = key + \"[]\";\n } else {\n tempVal = [val];\n }\n tempVal.forEach((temp) => {\n if (isDate(temp)) {\n temp = val.toString();\n } else if (isObject(temp)) {\n temp = JSON.stringify(temp);\n }\n parts.push(`${encode(key)}=${encode(temp)}`);\n });\n });\n const hashmarkIndex = url.indexOf(\"#\");\n if (hashmarkIndex !== -1) {\n url = url.slice(0, hashmarkIndex);\n }\n url += (url.includes(\"?\") ? \"&\" : \"?\") + parts.join(\"&\");\n return url;\n}\n\n// utils/format/dateFormat.ts\nfunction dateFormat(data, format) {\n const weekList = [\n \"\\u661F\\u671F\\u65E5\",\n \"\\u661F\\u671F\\u4E00\",\n \"\\u661F\\u671F\\u4E8C\",\n \"\\u661F\\u671F\\u4E09\",\n \"\\u661F\\u671F\\u56DB\",\n \"\\u661F\\u671F\\u4E94\",\n \"\\u661F\\u671F\\u516D\"\n ];\n const now = data ? new Date(data) : new Date();\n let year = now.getFullYear();\n let month = now.getMonth() + 1;\n month = month < 10 ? \"0\" + month : month;\n let day = now.getDate();\n day = day < 10 ? \"0\" + day : day;\n let hours = now.getHours();\n hours = hours < 10 ? \"0\" + hours : hours;\n let minutes = now.getMinutes();\n minutes = minutes < 10 ? \"0\" + minutes : minutes;\n let seconds = now.getSeconds();\n seconds = seconds < 10 ? \"0\" + seconds : seconds;\n let week = weekList[now.getDay()];\n if (format) {\n format = format.replace(/YYYY/, String(year)).replace(/MM/, String(month)).replace(/DD/, String(day)).replace(/hh/, String(hours)).replace(/mm/, String(minutes)).replace(/ss/, String(seconds));\n return format;\n } else {\n return {\n date: `${year}\\u5E74${month}\\u6708${day}`,\n time: `${hours}:${minutes}:${seconds}`,\n week\n };\n }\n}\nfunction yearMonthFormat(data) {\n if (data) {\n const now = data ? new Date(data) : new Date();\n let year = now.getFullYear();\n let month = now.getMonth() + 1;\n month = month;\n return `${year}\\u5E74${month}\\u6708`;\n } else {\n return \"\";\n }\n}\nfunction yearMonthDayFormat(data) {\n if (data) {\n const now = data ? new Date(data) : new Date();\n let year = now.getFullYear();\n let month = now.getMonth() + 1;\n let day = now.getDate();\n month = month;\n return `${year}\\u5E74${month}\\u6708${day}\\u65E5`;\n } else {\n return \"\";\n }\n}\nexport {\n arrToTree,\n assign,\n buildURL as buildUrl,\n dateFormat,\n filterOptionHeadle,\n findTree,\n isDate,\n isObject,\n isPlainObject,\n isURLSearchParams,\n tranListToTreeData,\n yearMonthDayFormat,\n yearMonthFormat\n};\n","<template>\r\n <div class=\"Mrp-time text-[18px] flex items-center\">\r\n <a-radio-group v-model:value=\"activeBtn\" size=\"large\" @change=\"selectTime\">\r\n <a-radio-button\r\n v-for=\"item in btnList\"\r\n :key=\"item.id\"\r\n :value=\"item.id\"\r\n class=\"cursor-pointer\"\r\n >{{ item.name }}</a-radio-button\r\n >\r\n </a-radio-group>\r\n <a-range-picker\r\n class=\"picker\"\r\n style=\"height: 35px; width: 200px;border-radius: 5px;\"\r\n v-model:value=\"time\"\r\n format=\"YYYY/MM/DD\"\r\n valueFormat=\"YYYY-MM-DD\"\r\n @change=\"timeChange\"\r\n >\r\n <template #suffixIcon>\r\n <FieldTimeOutlined />\r\n </template>\r\n </a-range-picker>\r\n </div>\r\n</template>\r\n\r\n<script lang=\"ts\">\r\nimport { reactive, toRefs, onBeforeMount, onMounted, ref } from \"vue\";\r\n\r\nexport default {\r\n name: \"time\",\r\n props: {\r\n timeType: Number,\r\n },\r\n emits: [\"selectedTime\"],\r\n setup(props: any, context: any) {\r\n const data: any = reactive({\r\n time: \"\",\r\n year: \"\",\r\n beginTime: \"\",\r\n endTime: \"\",\r\n });\r\n const today = ref(\"\");\r\n const activeBtn = ref(0);\r\n const btnList = ref([\r\n {\r\n id: 0,\r\n name: \"开累\",\r\n },\r\n {\r\n id: 1,\r\n name: \"上月\",\r\n },\r\n {\r\n id: 2,\r\n name: \"本月\",\r\n },\r\n {\r\n id: 3,\r\n name: \"去年\",\r\n },\r\n {\r\n id: 4,\r\n name: \"今年\",\r\n },\r\n ]);\r\n const refData: any = toRefs(data);\r\n onBeforeMount(() => {\r\n const date = new Date();\r\n refData.year.value = date.getFullYear();\r\n const y = date.getFullYear().toString();\r\n const m = (date.getMonth() + 1).toString().padStart(2, \"0\");\r\n const d = date.getDate().toString().padStart(2, \"0\");\r\n today.value = y + \"/\" + m + \"/\" + d;\r\n data.time = [\"1990-01-01\", y + \"-\" + m + \"-\" + d];\r\n });\r\n onMounted(() => {});\r\n\r\n const formatFun = (date,format)=>{\r\n var o: any = {\r\n \"M+\": date.getMonth() + 1, //month\r\n \"d+\": date.getDate(), //day\r\n \"h+\": date.getHours(), //hour\r\n \"m+\": date.getMinutes(), //minute\r\n \"s+\": date.getSeconds(), //second\r\n \"q+\": Math.floor((date.getMonth() + 3) / 3), //quarter\r\n S: date.getMilliseconds(), //millisecond\r\n };\r\n if (/(y+)/.test(format))\r\n format = format.replace(\r\n RegExp.$1,\r\n (date.getFullYear() + \"\").substr(4 - RegExp.$1.length)\r\n );\r\n for (var k in o)\r\n if (new RegExp(\"(\" + k + \")\").test(format))\r\n format = format.replace(\r\n RegExp.$1,\r\n RegExp.$1.length == 1 ? o[k] : (\"00\" + o[k]).substr((\"\" + o[k]).length)\r\n );\r\n return format;\r\n }\r\n\r\n const timeChange = (dates: any | String) => {\r\n activeBtn.value = -1;\r\n context.emit(\"selectedTime\", dates[0], dates[1], props.timeType);\r\n console.log(\r\n dates[0],\r\n dates[1],\r\n props.timeType,\r\n \"-----------------------selectedTime\"\r\n );\r\n };\r\n const selectTime = (e: any) => {\r\n console.log(props.timeType);\r\n\r\n let type = e.target.value;\r\n if (type === 0) {\r\n //开累\r\n refData.beginTime.value = \"1990/01/01\";\r\n refData.endTime.value = today.value;\r\n } else if (type === 1) {\r\n //上月\r\n refData.beginTime.value = formatFun(new Date(\r\n new Date(new Date().setMonth(new Date().getMonth() - 1)).setDate(1)\r\n ),\"yyyy/MM/dd\");\r\n refData.endTime.value = formatFun(new Date(new Date().setDate(0)),\"yyyy/MM/dd\");\r\n } else if (type === 2) {\r\n //本月\r\n refData.beginTime.value = formatFun(new Date(new Date().setDate(1)),\"yyyy/MM/dd\");\r\n refData.endTime.value = formatFun(new Date(\r\n new Date(new Date().setMonth(new Date().getMonth() + 1)).setDate(0)\r\n ),\"yyyy/MM/dd\");\r\n } else if (type === 3) {\r\n //去年\r\n refData.beginTime.value = \"2021/01/01\";\r\n refData.endTime.value = \"2021/12/31\";\r\n } else if (type === 4) {\r\n //今年\r\n refData.beginTime.value = formatFun(new Date(\r\n new Date(new Date().setMonth(0)).setDate(1)\r\n ),\"yyyy/MM/dd\");\r\n refData.endTime.value = formatFun(new Date(\r\n new Date(new Date().setMonth(12)).setDate(0)\r\n ),\"yyyy/MM/dd\");\r\n }\r\n refData.time.value = [refData.beginTime.value, refData.endTime.value];\r\n console.log(\r\n refData.beginTime.value,\r\n refData.endTime.value,\r\n props.timeType,\r\n \"-----------------------selectedTime\"\r\n );\r\n context.emit(\r\n \"selectedTime\",\r\n refData.beginTime.value,\r\n refData.endTime.value,\r\n props.timeType\r\n );\r\n };\r\n return {\r\n ...refData,\r\n activeBtn,\r\n btnList,\r\n timeChange,\r\n selectTime,\r\n };\r\n },\r\n};\r\n</script>\r\n<style lang=\"scss\" scoped>\r\n.Mrp-time {\r\n .button {\r\n width: 48px;\r\n height: 30px;\r\n }\r\n .active {\r\n background: rgba(189, 158, 85, 1);\r\n }\r\n\r\n :deep(.ant-radio-button-wrapper:first-child) {\r\n border-radius: 4px 0 0 4px;\r\n }\r\n\r\n :deep(.ant-radio-button-wrapper:last-child) {\r\n border-radius: 0 4px 4px 0;\r\n }\r\n\r\n :deep(.el-range-editor.el-input__inner) {\r\n width: 200px;\r\n height: 35px;\r\n }\r\n :deep(.el-date-editor .el-range-input) {\r\n font-size: 12px;\r\n color: #333333;\r\n }\r\n :deep(.ant-radio-button-wrapper) {\r\n width: 52px;\r\n height: 35px;\r\n font-size: 12px;\r\n color: #006ab2;\r\n padding: 0;\r\n text-align: center;\r\n line-height: 35px;\r\n border: 1px solid rgba(0, 106, 178, 1);\r\n }\r\n :deep(.ant-radio-button-wrapper-checked) {\r\n background: rgba(189, 158, 85, 1);\r\n color: #fff;\r\n border: 1px solid rgba(189, 158, 85, 1);\r\n }\r\n :deep(.ant-radio-button-wrapper-checked:not(.ant-radio-button-wrapper-disabled):first-child) {\r\n border-color: rgba(189, 158, 85, 1);\r\n }\r\n .picker {\r\n margin-left: 10px;\r\n }\r\n :deep(.ant-picker-input > input){\r\n font-size: 12px;\r\n }\r\n :deep(.ant-picker-range-separator){\r\n margin-bottom: 5px;\r\n }\r\n}\r\n</style>\r\n","<!--\r\n * @Author: Mr.Cong Wei\r\n * @Date: 2022-08-11 09:51:33\r\n * @LastEditTime: 2022-08-16 13:24:36\r\n-->\r\n<template>\r\n <div style=\"position: relative; margin-top: 8px; width: 30px; height: 23px;\">\r\n <svg\r\n xmlns:xlink=\"http://www.w3.org/1999/xlink\"\r\n xmlns=\"http://www.w3.org/2000/svg\"\r\n version=\"1.1\"\r\n width=\"23px\"\r\n height=\"23px\"\r\n style=\"position: absolute;\"\r\n >\r\n <g transform=\"matrix(1 0 0 1 -256 -275 )\">\r\n <path\r\n d=\"M 2.8482972136223452 0 C 1.2746130030959648 0.028482972136316675 0 1.3030959752322815 0 2.8767801857584345 L 0 20.151702786377655 C 0 21.725386996904035 1.2746130030959648 23 2.8482972136223452 23 L 20.123219814241565 23 C 21.69690402476772 23 22.971517027863683 21.725386996904035 23 20.151702786377655 L 23 2.8767801857584345 C 22.971517027863683 1.3030959752322815 21.69690402476772 0.028482972136316675 20.123219814241565 0 L 2.8482972136223452 0 Z \"\r\n fill-rule=\"nonzero\"\r\n fill=\"#bd9e55\"\r\n stroke=\"none\"\r\n transform=\"matrix(1 0 0 1 256 275 )\"\r\n />\r\n </g>\r\n </svg>\r\n <svg\r\n xmlns:xlink=\"http://www.w3.org/1999/xlink\"\r\n xmlns=\"http://www.w3.org/2000/svg\"\r\n version=\"1.1\"\r\n width=\"23px\"\r\n height=\"23px\"\r\n style=\"position: absolute;left: 7px;bottom: 7px;\"\r\n >\r\n <g transform=\"matrix(1 0 0 1 -263 -268 )\">\r\n <path\r\n d=\"M 2.8767801857584345 0 C 1.3030959752322815 0 0.028482972136316675 1.2746130030959648 0.028482972136316675 2.8482972136223452 L 0.028482972136316675 4.870588235294008 C 0.028482972136316675 5.027244582043295 0.15665634674928697 5.155417956656265 0.31331269349834656 5.155417956656265 L 14.426625386996877 5.155417956656265 C 16.306501547987637 5.155417956656265 17.844582043343735 6.693498452012363 17.844582043343735 8.573374613003125 L 17.844582043343735 22.686687306501653 C 17.844582043343735 22.843343653250713 17.972755417956705 22.971517027863683 18.129411764705992 22.971517027863683 L 20.151702786377655 22.971517027863683 C 21.725386996904035 22.971517027863683 23 21.69690402476772 23 20.123219814241565 L 23 2.8482972136223452 C 23 1.2746130030959648 21.725386996904035 0 20.151702786377655 0 L 2.8767801857584345 0 Z \"\r\n fill-rule=\"nonzero\"\r\n fill=\"#bd9e55\"\r\n stroke=\"none\"\r\n transform=\"matrix(1 0 0 1 263 268 )\"\r\n />\r\n </g>\r\n </svg>\r\n </div>\r\n</template>\r\n\r\n<script setup lang=\"ts\"></script>\r\n\r\n<style scoped></style>\r\n"],"names":["_loadChildren","obj","list","arr","filter","x","parentId","id","length","children","forEach","tranListToTreeData","results","isObject","val","isDate","toString","call","isURLSearchParams","URLSearchParams","assign","Object","filterOptionHeadle","input","option","label","toLowerCase","indexOf","encode","encodeURIComponent","replace","buildURL","url","params","includes","parts","keys","key","tempVal","Array","isArray","temp","JSON","stringify","push","hashmarkIndex","slice","join","dateFormat","data","format","weekList","now","Date","year","getFullYear","month","getMonth","day","getDate","hours","getHours","minutes","getMinutes","seconds","getSeconds","week","getDay","String","date","time","_hoisted_1","_openBlock","_createElementBlock","_createVNode","_component_a_radio_group","value","$setup","activeBtn","$event","size","onChange","selectTime","_Fragment","_renderList","btnList","item","_createBlock","_component_a_radio_button","_createTextVNode","_toDisplayString","name","_component_a_range_picker","style","_ctx","valueFormat","timeChange","suffixIcon","_component_FieldTimeOutlined","xmlns","version","d","fill","stroke","transform","_hoisted_4"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;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;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;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;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"index.umd.js","sources":["../../shared/dist/utils/index.mjs","../src/business-ui/component/IVTimeSelector.vue?vue&type=template&id=5f0fe252&lang.js","../src/business-ui/component/icon/SelectorIcon.vue?vue&type=template&id=0b124b76&lang.js"],"sourcesContent":["// utils/arr/tree.ts\nfunction arrToTree(list, parentMark, childrenMark) {\n let result = [], temp;\n for (let i = 0; i < list.length; i++) {\n if (!list[i][parentMark]) {\n temp = list.filter(\n (item) => item[parentMark] === list[i][childrenMark]\n );\n if (temp.length > 0) {\n list[i].children = temp;\n }\n result.push(list[i]);\n }\n }\n return result;\n}\nfunction _loadChildren(obj, list) {\n const arr = list.filter((x) => x.parentId == obj.id);\n if (!arr.length)\n return;\n obj.children = arr;\n obj.children.forEach((x) => {\n _loadChildren(x, list);\n });\n return obj;\n}\nfunction tranListToTreeData(list) {\n const results = list.filter((x) => x.parentId == null);\n results.forEach((x) => _loadChildren(x, list));\n return results;\n}\nfunction findTree(id, list, idName) {\n let result;\n if (!list.length)\n return;\n const fn = (id2, list2, idName2) => {\n list2.find((_e) => {\n if (_e[idName2] === id2) {\n result = _e;\n } else if (_e.children && _e.children.length !== 0)\n return fn(id2, _e.children, idName2);\n });\n };\n fn(id, list, idName);\n return result;\n}\n\n// utils/obj/judge.ts\nfunction isPlainObject(obj) {\n let proto, Ctor;\n if (!obj || toString.call(obj) !== \"[object Object]\") {\n return false;\n }\n proto = Object.getPrototypeOf(obj);\n if (!proto) {\n return true;\n }\n Ctor = {}.hasOwnProperty.call(proto, \"constructor\") && proto.constructor;\n return typeof Ctor === \"function\" && {}.hasOwnProperty.toString.call(Ctor) === {}.hasOwnProperty.toString.call(Object);\n}\nvar isObject = (val) => val !== null && typeof val === \"object\";\nfunction isDate(val) {\n return toString.call(val) === \"[object Date]\";\n}\nfunction isURLSearchParams(val) {\n return typeof URLSearchParams !== \"undefined\" && val instanceof URLSearchParams;\n}\n\n// utils/obj/cache.ts\nvar assign = Object.assign;\n\n// utils/input/index.ts\nfunction filterOptionHeadle(input, option) {\n return option.label && option.label.toLowerCase().indexOf(input.toLowerCase()) >= 0;\n}\n\n// utils/format/buildUrl.ts\nfunction encode(val) {\n return encodeURIComponent(val).replace(/%40/g, \"@\").replace(/%3A/gi, \":\").replace(/%24/g, \"$\").replace(/%2C/gi, \",\").replace(/%20/g, \"+\").replace(/%5B/gi, \"[\").replace(/%5D/gi, \"]\");\n}\nfunction buildURL(url, params) {\n if (!params) {\n return url;\n }\n if (isURLSearchParams(params)) {\n return url += (url.includes(\"?\") ? \"&\" : \"?\") + params.toString();\n }\n const parts = [];\n Object.keys(params).forEach((key) => {\n const val = params[key];\n if (val === null || typeof val === \"undefined\") {\n return;\n }\n let tempVal = [];\n if (Array.isArray(val)) {\n tempVal = val;\n key = key + \"[]\";\n } else {\n tempVal = [val];\n }\n tempVal.forEach((temp) => {\n if (isDate(temp)) {\n temp = val.toString();\n } else if (isObject(temp)) {\n temp = JSON.stringify(temp);\n }\n parts.push(`${encode(key)}=${encode(temp)}`);\n });\n });\n const hashmarkIndex = url.indexOf(\"#\");\n if (hashmarkIndex !== -1) {\n url = url.slice(0, hashmarkIndex);\n }\n url += (url.includes(\"?\") ? \"&\" : \"?\") + parts.join(\"&\");\n return url;\n}\n\n// utils/format/dateFormat.ts\nfunction dateFormat(data, format) {\n const weekList = [\n \"\\u661F\\u671F\\u65E5\",\n \"\\u661F\\u671F\\u4E00\",\n \"\\u661F\\u671F\\u4E8C\",\n \"\\u661F\\u671F\\u4E09\",\n \"\\u661F\\u671F\\u56DB\",\n \"\\u661F\\u671F\\u4E94\",\n \"\\u661F\\u671F\\u516D\"\n ];\n const now = data ? new Date(data) : new Date();\n let year = now.getFullYear();\n let month = now.getMonth() + 1;\n month = month < 10 ? \"0\" + month : month;\n let day = now.getDate();\n day = day < 10 ? \"0\" + day : day;\n let hours = now.getHours();\n hours = hours < 10 ? \"0\" + hours : hours;\n let minutes = now.getMinutes();\n minutes = minutes < 10 ? \"0\" + minutes : minutes;\n let seconds = now.getSeconds();\n seconds = seconds < 10 ? \"0\" + seconds : seconds;\n let week = weekList[now.getDay()];\n if (format) {\n format = format.replace(/YYYY/, String(year)).replace(/MM/, String(month)).replace(/DD/, String(day)).replace(/hh/, String(hours)).replace(/mm/, String(minutes)).replace(/ss/, String(seconds));\n return format;\n } else {\n return {\n date: `${year}\\u5E74${month}\\u6708${day}`,\n time: `${hours}:${minutes}:${seconds}`,\n week\n };\n }\n}\nfunction yearMonthFormat(data) {\n if (data) {\n const now = data ? new Date(data) : new Date();\n let year = now.getFullYear();\n let month = now.getMonth() + 1;\n month = month;\n return `${year}\\u5E74${month}\\u6708`;\n } else {\n return \"\";\n }\n}\nfunction yearMonthDayFormat(data) {\n if (data) {\n const now = data ? new Date(data) : new Date();\n let year = now.getFullYear();\n let month = now.getMonth() + 1;\n let day = now.getDate();\n month = month;\n return `${year}\\u5E74${month}\\u6708${day}\\u65E5`;\n } else {\n return \"\";\n }\n}\nexport {\n arrToTree,\n assign,\n buildURL as buildUrl,\n dateFormat,\n filterOptionHeadle,\n findTree,\n isDate,\n isObject,\n isPlainObject,\n isURLSearchParams,\n tranListToTreeData,\n yearMonthDayFormat,\n yearMonthFormat\n};\n","<template>\r\n <div class=\"Mrp-time text-[18px] flex items-center\">\r\n <a-radio-group v-model:value=\"activeBtn\" size=\"large\" @change=\"selectTime\">\r\n <a-radio-button\r\n v-for=\"item in btnList\"\r\n :key=\"item.id\"\r\n :value=\"item.id\"\r\n class=\"cursor-pointer\"\r\n >{{ item.name }}</a-radio-button\r\n >\r\n </a-radio-group>\r\n <a-range-picker\r\n class=\"picker\"\r\n style=\"height: 35px; width: 210px;border-radius: 5px;\"\r\n v-model:value=\"time\"\r\n format=\"YYYY/MM/DD\"\r\n valueFormat=\"YYYY-MM-DD\"\r\n @change=\"timeChange\"\r\n >\r\n <template #suffixIcon>\r\n <FieldTimeOutlined />\r\n </template>\r\n </a-range-picker>\r\n </div>\r\n</template>\r\n\r\n<script lang=\"ts\">\r\nimport { reactive, toRefs, onBeforeMount, onMounted, ref } from \"vue\";\r\n\r\nexport default {\r\n name: \"time\",\r\n props: {\r\n timeType: Number,\r\n },\r\n emits: [\"selectedTime\"],\r\n setup(props: any, context: any) {\r\n const data: any = reactive({\r\n time: \"\",\r\n year: \"\",\r\n beginTime: \"\",\r\n endTime: \"\",\r\n });\r\n const today = ref(\"\");\r\n const activeBtn = ref(0);\r\n const btnList = ref([\r\n {\r\n id: 0,\r\n name: \"开累\",\r\n },\r\n {\r\n id: 1,\r\n name: \"上月\",\r\n },\r\n {\r\n id: 2,\r\n name: \"本月\",\r\n },\r\n {\r\n id: 3,\r\n name: \"去年\",\r\n },\r\n {\r\n id: 4,\r\n name: \"今年\",\r\n },\r\n ]);\r\n const refData: any = toRefs(data);\r\n onBeforeMount(() => {\r\n const date = new Date();\r\n refData.year.value = date.getFullYear();\r\n const y = date.getFullYear().toString();\r\n const m = (date.getMonth() + 1).toString().padStart(2, \"0\");\r\n const d = date.getDate().toString().padStart(2, \"0\");\r\n today.value = y + \"/\" + m + \"/\" + d;\r\n data.time = [\"1990-01-01\", y + \"-\" + m + \"-\" + d];\r\n });\r\n onMounted(() => {});\r\n\r\n const formatFun = (date,format)=>{\r\n var o: any = {\r\n \"M+\": date.getMonth() + 1, //month\r\n \"d+\": date.getDate(), //day\r\n \"h+\": date.getHours(), //hour\r\n \"m+\": date.getMinutes(), //minute\r\n \"s+\": date.getSeconds(), //second\r\n \"q+\": Math.floor((date.getMonth() + 3) / 3), //quarter\r\n S: date.getMilliseconds(), //millisecond\r\n };\r\n if (/(y+)/.test(format))\r\n format = format.replace(\r\n RegExp.$1,\r\n (date.getFullYear() + \"\").substr(4 - RegExp.$1.length)\r\n );\r\n for (var k in o)\r\n if (new RegExp(\"(\" + k + \")\").test(format))\r\n format = format.replace(\r\n RegExp.$1,\r\n RegExp.$1.length == 1 ? o[k] : (\"00\" + o[k]).substr((\"\" + o[k]).length)\r\n );\r\n return format;\r\n }\r\n\r\n const timeChange = (dates: any | String) => {\r\n activeBtn.value = -1;\r\n context.emit(\"selectedTime\", dates[0], dates[1], props.timeType);\r\n console.log(\r\n dates[0],\r\n dates[1],\r\n props.timeType,\r\n \"-----------------------selectedTime\"\r\n );\r\n };\r\n const selectTime = (e: any) => {\r\n console.log(props.timeType);\r\n\r\n let type = e.target.value;\r\n if (type === 0) {\r\n //开累\r\n refData.beginTime.value = \"1990/01/01\";\r\n refData.endTime.value = today.value;\r\n } else if (type === 1) {\r\n //上月\r\n refData.beginTime.value = formatFun(new Date(\r\n new Date(new Date().setMonth(new Date().getMonth() - 1)).setDate(1)\r\n ),\"yyyy/MM/dd\");\r\n refData.endTime.value = formatFun(new Date(new Date().setDate(0)),\"yyyy/MM/dd\");\r\n } else if (type === 2) {\r\n //本月\r\n refData.beginTime.value = formatFun(new Date(new Date().setDate(1)),\"yyyy/MM/dd\");\r\n refData.endTime.value = formatFun(new Date(\r\n new Date(new Date().setMonth(new Date().getMonth() + 1)).setDate(0)\r\n ),\"yyyy/MM/dd\");\r\n } else if (type === 3) {\r\n //去年\r\n refData.beginTime.value = \"2021/01/01\";\r\n refData.endTime.value = \"2021/12/31\";\r\n } else if (type === 4) {\r\n //今年\r\n refData.beginTime.value = formatFun(new Date(\r\n new Date(new Date().setMonth(0)).setDate(1)\r\n ),\"yyyy/MM/dd\");\r\n refData.endTime.value = formatFun(new Date(\r\n new Date(new Date().setMonth(12)).setDate(0)\r\n ),\"yyyy/MM/dd\");\r\n }\r\n refData.time.value = [refData.beginTime.value, refData.endTime.value];\r\n console.log(\r\n refData.beginTime.value,\r\n refData.endTime.value,\r\n props.timeType,\r\n \"-----------------------selectedTime\"\r\n );\r\n context.emit(\r\n \"selectedTime\",\r\n refData.beginTime.value,\r\n refData.endTime.value,\r\n props.timeType\r\n );\r\n };\r\n return {\r\n ...refData,\r\n activeBtn,\r\n btnList,\r\n timeChange,\r\n selectTime,\r\n };\r\n },\r\n};\r\n</script>\r\n<style lang=\"scss\" scoped>\r\n.Mrp-time {\r\n .button {\r\n width: 48px;\r\n height: 30px;\r\n }\r\n .active {\r\n background: rgba(189, 158, 85, 1);\r\n }\r\n\r\n :deep(.ant-radio-button-wrapper:first-child) {\r\n border-radius: 4px 0 0 4px;\r\n }\r\n\r\n :deep(.ant-radio-button-wrapper:last-child) {\r\n border-radius: 0 4px 4px 0;\r\n }\r\n\r\n :deep(.el-range-editor.el-input__inner) {\r\n width: 200px;\r\n height: 35px;\r\n }\r\n :deep(.el-date-editor .el-range-input) {\r\n font-size: 12px;\r\n color: #333333;\r\n }\r\n :deep(.ant-radio-button-wrapper) {\r\n width: 52px;\r\n height: 35px;\r\n font-size: 12px;\r\n color: #006ab2;\r\n padding: 0;\r\n text-align: center;\r\n line-height: 35px;\r\n border: 1px solid rgba(0, 106, 178, 1);\r\n }\r\n :deep(.ant-radio-button-wrapper-checked) {\r\n background: rgba(189, 158, 85, 1);\r\n color: #fff;\r\n border: 1px solid rgba(189, 158, 85, 1);\r\n }\r\n :deep(.ant-radio-button-wrapper-checked:not(.ant-radio-button-wrapper-disabled):first-child) {\r\n border-color: rgba(189, 158, 85, 1);\r\n }\r\n .picker {\r\n margin-left: 10px;\r\n }\r\n :deep(.ant-picker-input > input){\r\n font-size: 12px;\r\n }\r\n :deep(.ant-picker-range-separator){\r\n margin-bottom: 5px;\r\n }\r\n}\r\n</style>\r\n","<!--\r\n * @Author: Mr.Cong Wei\r\n * @Date: 2022-08-11 09:51:33\r\n * @LastEditTime: 2022-08-16 13:24:36\r\n-->\r\n<template>\r\n <div style=\"position: relative; margin-top: 8px; width: 30px; height: 23px;\">\r\n <svg\r\n xmlns:xlink=\"http://www.w3.org/1999/xlink\"\r\n xmlns=\"http://www.w3.org/2000/svg\"\r\n version=\"1.1\"\r\n width=\"23px\"\r\n height=\"23px\"\r\n style=\"position: absolute;\"\r\n >\r\n <g transform=\"matrix(1 0 0 1 -256 -275 )\">\r\n <path\r\n d=\"M 2.8482972136223452 0 C 1.2746130030959648 0.028482972136316675 0 1.3030959752322815 0 2.8767801857584345 L 0 20.151702786377655 C 0 21.725386996904035 1.2746130030959648 23 2.8482972136223452 23 L 20.123219814241565 23 C 21.69690402476772 23 22.971517027863683 21.725386996904035 23 20.151702786377655 L 23 2.8767801857584345 C 22.971517027863683 1.3030959752322815 21.69690402476772 0.028482972136316675 20.123219814241565 0 L 2.8482972136223452 0 Z \"\r\n fill-rule=\"nonzero\"\r\n fill=\"#bd9e55\"\r\n stroke=\"none\"\r\n transform=\"matrix(1 0 0 1 256 275 )\"\r\n />\r\n </g>\r\n </svg>\r\n <svg\r\n xmlns:xlink=\"http://www.w3.org/1999/xlink\"\r\n xmlns=\"http://www.w3.org/2000/svg\"\r\n version=\"1.1\"\r\n width=\"23px\"\r\n height=\"23px\"\r\n style=\"position: absolute;left: 7px;bottom: 7px;\"\r\n >\r\n <g transform=\"matrix(1 0 0 1 -263 -268 )\">\r\n <path\r\n d=\"M 2.8767801857584345 0 C 1.3030959752322815 0 0.028482972136316675 1.2746130030959648 0.028482972136316675 2.8482972136223452 L 0.028482972136316675 4.870588235294008 C 0.028482972136316675 5.027244582043295 0.15665634674928697 5.155417956656265 0.31331269349834656 5.155417956656265 L 14.426625386996877 5.155417956656265 C 16.306501547987637 5.155417956656265 17.844582043343735 6.693498452012363 17.844582043343735 8.573374613003125 L 17.844582043343735 22.686687306501653 C 17.844582043343735 22.843343653250713 17.972755417956705 22.971517027863683 18.129411764705992 22.971517027863683 L 20.151702786377655 22.971517027863683 C 21.725386996904035 22.971517027863683 23 21.69690402476772 23 20.123219814241565 L 23 2.8482972136223452 C 23 1.2746130030959648 21.725386996904035 0 20.151702786377655 0 L 2.8767801857584345 0 Z \"\r\n fill-rule=\"nonzero\"\r\n fill=\"#bd9e55\"\r\n stroke=\"none\"\r\n transform=\"matrix(1 0 0 1 263 268 )\"\r\n />\r\n </g>\r\n </svg>\r\n </div>\r\n</template>\r\n\r\n<script setup lang=\"ts\"></script>\r\n\r\n<style scoped></style>\r\n"],"names":["_loadChildren","obj","list","arr","filter","x","parentId","id","length","children","forEach","tranListToTreeData","results","isObject","val","isDate","toString","call","isURLSearchParams","URLSearchParams","assign","Object","filterOptionHeadle","input","option","label","toLowerCase","indexOf","encode","encodeURIComponent","replace","buildURL","url","params","includes","parts","keys","key","tempVal","Array","isArray","temp","JSON","stringify","push","hashmarkIndex","slice","join","dateFormat","data","format","weekList","now","Date","year","getFullYear","month","getMonth","day","getDate","hours","getHours","minutes","getMinutes","seconds","getSeconds","week","getDay","String","date","time","_hoisted_1","_openBlock","_createElementBlock","_createVNode","_component_a_radio_group","value","$setup","activeBtn","$event","size","onChange","selectTime","_Fragment","_renderList","btnList","item","_createBlock","_component_a_radio_button","_createTextVNode","_toDisplayString","name","_component_a_range_picker","style","_ctx","valueFormat","timeChange","suffixIcon","_component_FieldTimeOutlined","xmlns","version","d","fill","stroke","transform","_hoisted_4"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;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;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;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;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}