yc-pro-components 0.0.19 → 0.0.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.
Files changed (151) hide show
  1. package/es/components/check-card/index.d.ts +61 -61
  2. package/es/components/check-card/src/index.vue.d.ts +4 -4
  3. package/es/components/check-card-group/index.d.ts +43 -43
  4. package/es/components/check-card-group/src/index.vue.d.ts +3 -3
  5. package/es/components/date-picker/index.d.ts +10 -10
  6. package/es/components/date-picker/src/index.vue.d.ts +2 -2
  7. package/es/components/dialog/index.d.ts +26 -26
  8. package/es/components/dialog/src/index.vue.d.ts +2 -2
  9. package/es/components/dialog-form/index.d.ts +31 -31
  10. package/es/components/dialog-form/src/index.vue.d.ts +9 -9
  11. package/es/components/display-item/index.d.ts +41 -41
  12. package/es/components/display-item/src/index.vue.d.ts +22 -22
  13. package/es/components/drawer-form/index.d.ts +50 -50
  14. package/es/components/drawer-form/src/index.vue.d.ts +10 -10
  15. package/es/components/form/index.d.ts +45 -45
  16. package/es/components/form/src/form-content.vue.d.ts +20 -20
  17. package/es/components/form/src/index.vue.d.ts +17 -17
  18. package/es/components/form-item/index.d.ts +42 -42
  19. package/es/components/form-item/src/index.vue.d.ts +12 -12
  20. package/es/components/header/index.d.ts +19 -19
  21. package/es/components/header/src/index.vue.d.ts +1 -1
  22. package/es/components/input-tag/index.d.ts +20 -20
  23. package/es/components/input-tag/src/index.vue.d.ts +8 -8
  24. package/es/components/layout/index.d.ts +30 -30
  25. package/es/components/layout/src/index.vue.d.ts +10 -10
  26. package/es/components/page/index.d.ts +452 -452
  27. package/es/components/page/src/index.vue.d.ts +154 -154
  28. package/es/components/pagination/index.d.ts +42 -42
  29. package/es/components/pagination/src/index.vue.d.ts +3 -3
  30. package/es/components/radio/index.d.ts +35 -35
  31. package/es/components/radio/src/index.vue.d.ts +27 -27
  32. package/es/components/render/index.d.ts +3 -3
  33. package/es/components/render/src/index.vue.d.ts +1 -1
  34. package/es/components/search/index.d.ts +154 -154
  35. package/es/components/search/src/index.vue.d.ts +50 -50
  36. package/es/components/sidebar/index.d.ts +15 -15
  37. package/es/components/sidebar/src/index.vue.d.ts +5 -5
  38. package/es/components/steps-form/index.d.ts +23 -23
  39. package/es/components/steps-form/src/index.vue.d.ts +2 -2
  40. package/es/components/table/index.d.ts +54 -54
  41. package/es/components/table/src/index.vue.d.ts +18 -18
  42. package/es/components/table/src/table-column-drag-sort.vue.d.ts +18 -18
  43. package/es/components/table/src/table-column.vue.d.ts +37 -37
  44. package/es/components/utils/index.d.ts +2 -2
  45. package/es/components/yc-dialog/index.d.ts +24 -24
  46. package/es/components/yc-download-dialog/index.d.ts +19 -19
  47. package/es/components/yc-download-dialog/src/index.vue.d.ts +1 -1
  48. package/es/components/yc-form-container-header/index.d.ts +12 -12
  49. package/es/components/yc-more-actions/index.d.ts +46 -46
  50. package/es/components/yc-more-actions/src/index.vue.d.ts +3 -3
  51. package/es/components/yc-plus-page/src/index.vue.d.ts +360 -360
  52. package/es/components/yc-segmented/index.d.ts +2 -2
  53. package/es/components/yc-segmented/src/index.d.ts +2 -2
  54. package/es/components/yc-select-v2/src/directive.d.ts +0 -4
  55. package/es/components/yc-select-v2/src/directive.mjs +70 -17
  56. package/es/components/yc-select-v2/src/index.vue.d.ts +3 -3
  57. package/es/components/yc-select-v2/src/index.vue2.mjs +18 -6
  58. package/es/components/yc-status-dialog/src/index.vue.d.ts +1 -1
  59. package/es/components/yc-tabs-with-filter/index.d.ts +16 -16
  60. package/es/components/yc-text/src/index.vue.d.ts +2 -2
  61. package/es/hooks/usePlusFormReset.d.ts +208 -208
  62. package/es/index.css +1 -0
  63. package/index.css +14 -0
  64. package/index.js +88 -21
  65. package/index.min.css +1 -0
  66. package/index.min.js +4 -4
  67. package/index.min.mjs +5 -5
  68. package/index.mjs +88 -21
  69. package/lib/components/check-card/index.d.ts +61 -61
  70. package/lib/components/check-card/src/index.vue.d.ts +4 -4
  71. package/lib/components/check-card-group/index.d.ts +43 -43
  72. package/lib/components/check-card-group/src/index.vue.d.ts +3 -3
  73. package/lib/components/date-picker/index.d.ts +10 -10
  74. package/lib/components/date-picker/src/index.vue.d.ts +2 -2
  75. package/lib/components/dialog/index.d.ts +26 -26
  76. package/lib/components/dialog/src/index.vue.d.ts +2 -2
  77. package/lib/components/dialog-form/index.d.ts +31 -31
  78. package/lib/components/dialog-form/src/index.vue.d.ts +9 -9
  79. package/lib/components/display-item/index.d.ts +41 -41
  80. package/lib/components/display-item/src/index.vue.d.ts +22 -22
  81. package/lib/components/drawer-form/index.d.ts +50 -50
  82. package/lib/components/drawer-form/src/index.vue.d.ts +10 -10
  83. package/lib/components/form/index.d.ts +45 -45
  84. package/lib/components/form/src/form-content.vue.d.ts +20 -20
  85. package/lib/components/form/src/index.vue.d.ts +17 -17
  86. package/lib/components/form-item/index.d.ts +42 -42
  87. package/lib/components/form-item/src/index.vue.d.ts +12 -12
  88. package/lib/components/header/index.d.ts +19 -19
  89. package/lib/components/header/src/index.vue.d.ts +1 -1
  90. package/lib/components/input-tag/index.d.ts +20 -20
  91. package/lib/components/input-tag/src/index.vue.d.ts +8 -8
  92. package/lib/components/layout/index.d.ts +30 -30
  93. package/lib/components/layout/src/index.vue.d.ts +10 -10
  94. package/lib/components/page/index.d.ts +452 -452
  95. package/lib/components/page/src/index.vue.d.ts +154 -154
  96. package/lib/components/pagination/index.d.ts +42 -42
  97. package/lib/components/pagination/src/index.vue.d.ts +3 -3
  98. package/lib/components/radio/index.d.ts +35 -35
  99. package/lib/components/radio/src/index.vue.d.ts +27 -27
  100. package/lib/components/render/index.d.ts +3 -3
  101. package/lib/components/render/src/index.vue.d.ts +1 -1
  102. package/lib/components/search/index.d.ts +154 -154
  103. package/lib/components/search/src/index.vue.d.ts +50 -50
  104. package/lib/components/sidebar/index.d.ts +15 -15
  105. package/lib/components/sidebar/src/index.vue.d.ts +5 -5
  106. package/lib/components/steps-form/index.d.ts +23 -23
  107. package/lib/components/steps-form/src/index.vue.d.ts +2 -2
  108. package/lib/components/table/index.d.ts +54 -54
  109. package/lib/components/table/src/index.vue.d.ts +18 -18
  110. package/lib/components/table/src/table-column-drag-sort.vue.d.ts +18 -18
  111. package/lib/components/table/src/table-column.vue.d.ts +37 -37
  112. package/lib/components/utils/index.d.ts +2 -2
  113. package/lib/components/yc-dialog/index.d.ts +24 -24
  114. package/lib/components/yc-download-dialog/index.d.ts +19 -19
  115. package/lib/components/yc-download-dialog/src/index.vue.d.ts +1 -1
  116. package/lib/components/yc-form-container-header/index.d.ts +12 -12
  117. package/lib/components/yc-more-actions/index.d.ts +46 -46
  118. package/lib/components/yc-more-actions/src/index.vue.d.ts +3 -3
  119. package/lib/components/yc-plus-page/src/index.vue.d.ts +360 -360
  120. package/lib/components/yc-segmented/index.d.ts +2 -2
  121. package/lib/components/yc-segmented/src/index.d.ts +2 -2
  122. package/lib/components/yc-select-v2/src/directive.d.ts +0 -4
  123. package/lib/components/yc-select-v2/src/directive.js +70 -17
  124. package/lib/components/yc-select-v2/src/index.vue.d.ts +3 -3
  125. package/lib/components/yc-select-v2/src/index.vue2.js +17 -5
  126. package/lib/components/yc-status-dialog/src/index.vue.d.ts +1 -1
  127. package/lib/components/yc-tabs-with-filter/index.d.ts +16 -16
  128. package/lib/components/yc-text/src/index.vue.d.ts +2 -2
  129. package/lib/hooks/usePlusFormReset.d.ts +208 -208
  130. package/lib/index.css +1 -0
  131. package/locale/en.js +1 -1
  132. package/locale/en.min.js +1 -1
  133. package/locale/en.min.mjs +1 -1
  134. package/locale/en.mjs +1 -1
  135. package/locale/ja.js +1 -1
  136. package/locale/ja.min.js +1 -1
  137. package/locale/ja.min.mjs +1 -1
  138. package/locale/ja.mjs +1 -1
  139. package/locale/ko.js +1 -1
  140. package/locale/ko.min.js +1 -1
  141. package/locale/ko.min.mjs +1 -1
  142. package/locale/ko.mjs +1 -1
  143. package/locale/zh-cn.js +1 -1
  144. package/locale/zh-cn.min.js +1 -1
  145. package/locale/zh-cn.min.mjs +1 -1
  146. package/locale/zh-cn.mjs +1 -1
  147. package/locale/zh-tw.js +1 -1
  148. package/locale/zh-tw.min.js +1 -1
  149. package/locale/zh-tw.min.mjs +1 -1
  150. package/locale/zh-tw.mjs +1 -1
  151. package/package.json +1 -1
@@ -54,12 +54,12 @@ export declare const YcSegmentedWithInstall: SFCWithInstall<DefineComponent<{
54
54
  default: boolean;
55
55
  };
56
56
  }>> & {
57
- "onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
58
57
  onChange?: ((...args: any[]) => any) | undefined;
58
+ "onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
59
59
  }, {
60
- modelValue: string | number;
61
60
  disabled: boolean;
62
61
  options: YcSegmentedOption[];
62
+ modelValue: string | number;
63
63
  resize: boolean;
64
64
  block: boolean;
65
65
  }, {}>>;
@@ -62,12 +62,12 @@ declare const _default: DefineComponent<{
62
62
  default: boolean;
63
63
  };
64
64
  }>> & {
65
- "onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
66
65
  onChange?: ((...args: any[]) => any) | undefined;
66
+ "onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
67
67
  }, {
68
- modelValue: string | number;
69
68
  disabled: boolean;
70
69
  options: YcSegmentedOption[];
70
+ modelValue: string | number;
71
71
  resize: boolean;
72
72
  block: boolean;
73
73
  }, {}>;
@@ -1,8 +1,4 @@
1
1
  import { Directive } from 'vue';
2
2
 
3
- /**
4
- * 滚动加载更多指令
5
- * 用于监听下拉框滚动到底部时触发加载更多
6
- */
7
3
  declare const loadMoreDirective: Directive;
8
4
  export default loadMoreDirective;
@@ -2,32 +2,85 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var vue = require('vue');
6
-
7
5
  const loadMoreDirective = {
8
6
  mounted(el, binding) {
9
- vue.nextTick(() => {
10
- const domClass = ".el-select-dropdown__wrap";
11
- const element = el.querySelector(domClass);
12
- if (element) {
7
+ const bindScrollListener = (poperId) => {
8
+ const poper = document.getElementById(poperId);
9
+ if (!poper) return;
10
+ let scrollContainer = null;
11
+ scrollContainer = poper.querySelector(".el-scrollbar .el-select-dropdown__wrap");
12
+ if (!scrollContainer) {
13
+ scrollContainer = poper.querySelector(".el-select-dropdown__wrap");
14
+ }
15
+ if (!scrollContainer) {
16
+ scrollContainer = poper.querySelector('[class*="scrollbar__wrap"]');
17
+ }
18
+ if (scrollContainer && !scrollContainer.__vueLoadMoreBound__) {
19
+ scrollContainer.__vueLoadMoreBound__ = true;
20
+ let lastTriggerTime = 0;
13
21
  const handleScroll = () => {
14
- const { scrollTop, scrollHeight, clientHeight } = element;
15
- const scrollDistance = scrollHeight - scrollTop <= clientHeight + 10;
16
- if (scrollDistance) {
22
+ if (!scrollContainer) return;
23
+ const { scrollTop, scrollHeight, clientHeight } = scrollContainer;
24
+ const THRESHOLD = 100;
25
+ const scrollDistance = scrollHeight - scrollTop <= clientHeight + THRESHOLD;
26
+ const now = Date.now();
27
+ if (scrollDistance && binding.value && now - lastTriggerTime > 1e3) {
28
+ lastTriggerTime = now;
17
29
  binding.value();
18
30
  }
19
31
  };
20
- element.__vueLoadMoreHandler__ = handleScroll;
21
- element.addEventListener("scroll", handleScroll);
32
+ scrollContainer.__vueLoadMoreHandler__ = handleScroll;
33
+ scrollContainer.addEventListener("scroll", handleScroll);
22
34
  }
23
- });
35
+ };
36
+ const callback = (records) => {
37
+ records.forEach((record) => {
38
+ if (record.attributeName === "aria-describedby") {
39
+ const target = record.target;
40
+ const newValue = target.getAttribute("aria-describedby");
41
+ if (newValue) {
42
+ bindScrollListener(newValue);
43
+ }
44
+ }
45
+ });
46
+ };
47
+ const selectTrigger = el.querySelector(".select-trigger") || el.querySelector(".el-select__wrapper") || el.querySelector("input");
48
+ if (selectTrigger) {
49
+ const observer = new MutationObserver(callback);
50
+ observer.observe(selectTrigger, {
51
+ attributes: true,
52
+ attributeOldValue: true,
53
+ attributeFilter: ["aria-describedby"]
54
+ });
55
+ el.__vueLoadMoreObserver__ = observer;
56
+ }
24
57
  },
25
58
  beforeUnmount(el) {
26
- const domClass = ".el-select-dropdown__wrap";
27
- const element = el.querySelector(domClass);
28
- if (element && element.__vueLoadMoreHandler__) {
29
- element.removeEventListener("scroll", element.__vueLoadMoreHandler__);
30
- delete element.__vueLoadMoreHandler__;
59
+ if (el.__vueLoadMoreObserver__) {
60
+ el.__vueLoadMoreObserver__.disconnect();
61
+ delete el.__vueLoadMoreObserver__;
62
+ }
63
+ const selectTrigger = el.querySelector(".select-trigger") || el.querySelector(".el-select__wrapper") || el.querySelector("input");
64
+ if (selectTrigger) {
65
+ const ariaId = selectTrigger.getAttribute("aria-describedby");
66
+ if (ariaId) {
67
+ const poper = document.getElementById(ariaId);
68
+ if (poper) {
69
+ const scrollContainer = poper.querySelector(
70
+ ".el-scrollbar .el-select-dropdown__wrap"
71
+ ) || poper.querySelector(
72
+ ".el-select-dropdown__wrap"
73
+ );
74
+ if (scrollContainer && scrollContainer.__vueLoadMoreHandler__) {
75
+ scrollContainer.removeEventListener(
76
+ "scroll",
77
+ scrollContainer.__vueLoadMoreHandler__
78
+ );
79
+ delete scrollContainer.__vueLoadMoreHandler__;
80
+ delete scrollContainer.__vueLoadMoreBound__;
81
+ }
82
+ }
83
+ }
31
84
  }
32
85
  }
33
86
  };
@@ -44,14 +44,14 @@ declare const _default: DefineComponent<__VLS_WithDefaults<__VLS_TypePropsToRunt
44
44
  initialOptions: () => never[];
45
45
  allSelect: boolean;
46
46
  }>>> & {
47
- "onUpdate:modelValue"?: ((value: FieldValueType) => any) | undefined;
48
47
  onChange?: ((value: SelectValueType) => any) | undefined;
48
+ "onUpdate:modelValue"?: ((value: FieldValueType) => any) | undefined;
49
49
  }, {
50
- modelValue: string | number | boolean | string[] | [string, string] | boolean[] | RecordType | Date | number[] | Date[] | [Date, Date] | [number, number] | string[][] | number[][] | null;
51
- filterable: boolean;
52
50
  disabled: boolean;
51
+ filterable: boolean;
53
52
  options: SelectOption[];
54
53
  pageSize: number;
54
+ modelValue: string | number | boolean | string[] | [string, string] | number[] | Date | RecordType | boolean[] | Date[] | [Date, Date] | [number, number] | string[][] | number[][] | null;
55
55
  multiple: boolean;
56
56
  clearable: boolean;
57
57
  placeholder: string;
@@ -9,6 +9,8 @@ var directive = require('./directive.js');
9
9
  const ALL_SELECT_VALUE = "__ALL_SELECT__";
10
10
  const ALL_SELECT_LABEL = "\u5168\u9009";
11
11
  const ALL_UNSELECT_LABEL = "\u5168\u4E0D\u9009";
12
+ const LOADING_VALUE = "__LOADING__";
13
+ const LOADING_LABEL = "\u52A0\u8F7D\u4E2D...";
12
14
  var _sfc_main = /* @__PURE__ */ vue.defineComponent({
13
15
  ...{
14
16
  name: "YcSelectV2",
@@ -66,14 +68,23 @@ var _sfc_main = /* @__PURE__ */ vue.defineComponent({
66
68
  return innerOptions.value.every((opt) => currentValue.includes(opt.value));
67
69
  });
68
70
  const displayOptions = vue.computed(() => {
69
- if (props.allSelect && props.multiple && innerOptions.value.length > 0) {
71
+ let options = [...innerOptions.value];
72
+ if (props.allSelect && props.multiple && options.length > 0) {
70
73
  const allSelectOption = {
71
74
  label: isAllSelected.value ? ALL_UNSELECT_LABEL : ALL_SELECT_LABEL,
72
75
  value: ALL_SELECT_VALUE
73
76
  };
74
- return [allSelectOption, ...innerOptions.value];
77
+ options = [allSelectOption, ...options];
75
78
  }
76
- return innerOptions.value;
79
+ if (loading.value && hasMore.value) {
80
+ const loadingOption = {
81
+ label: LOADING_LABEL,
82
+ value: LOADING_VALUE,
83
+ disabled: true
84
+ };
85
+ options = [...options, loadingOption];
86
+ }
87
+ return options;
77
88
  });
78
89
  const initData = async () => {
79
90
  if (props.searchMode === "local" && props.options.length > 0) {
@@ -371,8 +382,9 @@ var _sfc_main = /* @__PURE__ */ vue.defineComponent({
371
382
  key: item.value,
372
383
  label: item.label,
373
384
  value: item.value,
374
- disabled: item.disabled
375
- }, null, 8, ["label", "value", "disabled"]);
385
+ disabled: item.disabled,
386
+ class: vue.normalizeClass({ "yc-select-v2-loading": item.value === "__LOADING__" })
387
+ }, null, 8, ["label", "value", "disabled", "class"]);
376
388
  }),
377
389
  128
378
390
  /* KEYED_FRAGMENT */
@@ -28,9 +28,9 @@ declare const _default: __VLS_WithTemplateSlots< DefineComponent<__VLS_WithDefau
28
28
  onCancel?: (() => any) | undefined;
29
29
  onConfirm?: (() => any) | undefined;
30
30
  }, {
31
+ content: string;
31
32
  title: string;
32
33
  width: string | number;
33
- content: string;
34
34
  visible: boolean;
35
35
  status: StatusType;
36
36
  cancelText: string;
@@ -5,14 +5,14 @@ import { default as YcTabsWithFilter } from './src/index.vue';
5
5
  /** 带筛选按钮的 Tabs 组件 */
6
6
  export declare const YcTabsWithFilterWithInstall: SFCWithInstall<{
7
7
  new (...args: any[]): CreateComponentPublicInstance<Readonly< ExtractPropTypes<{
8
- filterText: {
9
- type: PropType<string>;
10
- default: undefined;
11
- };
12
8
  modelValue: {
13
9
  type: PropType<string>;
14
10
  required: true;
15
11
  };
12
+ filterText: {
13
+ type: PropType<string>;
14
+ default: undefined;
15
+ };
16
16
  showFilter: {
17
17
  type: PropType<boolean>;
18
18
  default: boolean;
@@ -38,14 +38,14 @@ export declare const YcTabsWithFilterWithInstall: SFCWithInstall<{
38
38
  "update:modelValue": (value: string) => void;
39
39
  "filter-toggle": (visible: boolean) => void;
40
40
  }, VNodeProps & AllowedComponentProps & ComponentCustomProps & Readonly< ExtractPropTypes<{
41
- filterText: {
42
- type: PropType<string>;
43
- default: undefined;
44
- };
45
41
  modelValue: {
46
42
  type: PropType<string>;
47
43
  required: true;
48
44
  };
45
+ filterText: {
46
+ type: PropType<string>;
47
+ default: undefined;
48
+ };
49
49
  showFilter: {
50
50
  type: PropType<boolean>;
51
51
  default: boolean;
@@ -79,14 +79,14 @@ export declare const YcTabsWithFilterWithInstall: SFCWithInstall<{
79
79
  M: {};
80
80
  Defaults: {};
81
81
  }, Readonly< ExtractPropTypes<{
82
- filterText: {
83
- type: PropType<string>;
84
- default: undefined;
85
- };
86
82
  modelValue: {
87
83
  type: PropType<string>;
88
84
  required: true;
89
85
  };
86
+ filterText: {
87
+ type: PropType<string>;
88
+ default: undefined;
89
+ };
90
90
  showFilter: {
91
91
  type: PropType<boolean>;
92
92
  default: boolean;
@@ -119,14 +119,14 @@ export declare const YcTabsWithFilterWithInstall: SFCWithInstall<{
119
119
  __isTeleport?: undefined;
120
120
  __isSuspense?: undefined;
121
121
  } & ComponentOptionsBase<Readonly< ExtractPropTypes<{
122
- filterText: {
123
- type: PropType<string>;
124
- default: undefined;
125
- };
126
122
  modelValue: {
127
123
  type: PropType<string>;
128
124
  required: true;
129
125
  };
126
+ filterText: {
127
+ type: PropType<string>;
128
+ default: undefined;
129
+ };
130
130
  showFilter: {
131
131
  type: PropType<boolean>;
132
132
  default: boolean;
@@ -9,7 +9,7 @@ interface TippyOptions {
9
9
  declare const _default: __VLS_WithTemplateSlots< DefineComponent<{
10
10
  /** 行数限制 */
11
11
  lineClamp: {
12
- type: (NumberConstructor | StringConstructor)[];
12
+ type: (StringConstructor | NumberConstructor)[];
13
13
  };
14
14
  /** Tippy 配置 */
15
15
  tippyProps: {
@@ -19,7 +19,7 @@ declare const _default: __VLS_WithTemplateSlots< DefineComponent<{
19
19
  }, {}, unknown, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, PublicProps, Readonly< ExtractPropTypes<{
20
20
  /** 行数限制 */
21
21
  lineClamp: {
22
- type: (NumberConstructor | StringConstructor)[];
22
+ type: (StringConstructor | NumberConstructor)[];
23
23
  };
24
24
  /** Tippy 配置 */
25
25
  tippyProps: {