fantasy-ngzorro 2.2.21 → 2.2.22

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.
@@ -116,8 +116,17 @@ export declare class HdTableComponent implements OnInit, OnDestroy {
116
116
  private viewportResizeTimer;
117
117
  private boundOnViewportResize;
118
118
  private hostResizeObserver;
119
+ /** select 展开 / 搜索防抖(对齐 form-lines) */
120
+ private selectOpenChangeSubject;
121
+ private selectOpenChangeSubscription;
122
+ private selectSearchSubject;
123
+ private selectSearchSubscription;
124
+ /** 异步回写 options 的订阅,避免连点搜索泄漏 */
125
+ private selectLoaderSubscription;
119
126
  constructor(hostEl: ElementRef, cdr: ChangeDetectorRef, commonSessionService: CommonSessionService);
120
127
  ngOnDestroy(): void;
128
+ /** 供业务在自行写回 options 后触发 OnPush 刷新(优先 return Observable/Promise 由组件处理) */
129
+ markForCheck(): void;
121
130
  ngOnInit(): void;
122
131
  ngOnChanges(changes: SimpleChange): void;
123
132
  /** 是否走前端分页(对 content 切片,不请求后端) */
@@ -290,6 +299,24 @@ export declare class HdTableComponent implements OnInit, OnDestroy {
290
299
  getInputNumberProp(col: HdTableColumn, key: "min" | "max" | "step" | "precision", fallback: number): number;
291
300
  /** Input / InputNumber 变更:先记旧值再写回并通知父组件 */
292
301
  onCellChange(col: HdTableColumn, data: any, value: any): void;
302
+ /**
303
+ * Select 展开:有 onOpenChangeEvent 时展开先清空选项再回调 (open, line);关闭不回调业务。
304
+ * 回调若 return 数组 / Promise / Observable,由组件写回 options 并 markForCheck。
305
+ */
306
+ onSelectOpenChange(col: HdTableColumn, data: any, open: boolean): void;
307
+ /**
308
+ * Select 搜索:有 onSearchEvent 时回调 (keyword, line),不清空 options。
309
+ * 回调若 return 数组 / Promise / Observable,由组件写回 options 并 markForCheck。
310
+ */
311
+ onSelectSearch(col: HdTableColumn, data: any, keyword: string): void;
312
+ /** 展开时清空列 selectList 或行上 selectListName,由业务回调再写入 */
313
+ private clearSelectOptionsOnOpen;
314
+ /**
315
+ * 处理加载回调返回值:数组直接写回;Promise/Observable 完成后写回;void 仅 markForCheck。
316
+ * 优先写 selectListName,否则写列上 selectList。
317
+ */
318
+ private handleSelectLoaderResult;
319
+ private applySelectOptions;
293
320
  /** Select 变更:双写 value + label,并带 previous* / option */
294
321
  onSelectChange(col: HdTableColumn, data: any, value: any): void;
295
322
  }
@@ -47,6 +47,22 @@ export declare class HdTableColumn {
47
47
  editDisabled?: boolean | ((line: any) => boolean);
48
48
  /** Select 配置(复用 SelectOption 子集) */
49
49
  selectOption?: SelectOption;
50
+ /**
51
+ * select 下拉展开;展开时组件先清空 selectList / 行上 selectListName,再回调 (open, line)。
52
+ * 关闭不回调业务。用于按行按需加载选项。
53
+ * 可 return 选项数组 / Promise / Observable,由 hd-table 写回并刷新(OnPush 下业务不必再改 tableData 引用)。
54
+ */
55
+ onOpenChangeEvent?: (open: boolean, line: any) => any;
56
+ /** 下拉展开防抖(ms);未配或 0 同步触发 */
57
+ onOpenChangeEventDebounceTime?: number;
58
+ /**
59
+ * select 输入搜索;回调 (keyword, line),不清空 options。
60
+ * 远程搜索时建议同时设 selectOption.hdServerSearch = true。
61
+ * 同样可 return 数组 / Promise / Observable,由组件写回并刷新。
62
+ */
63
+ onSearchEvent?: (keyword: string, line: any) => any;
64
+ /** 搜索防抖(ms);命名对齐 form-lines;未配或 0 同步触发 */
65
+ onSearchEventEventDebounceTime?: number;
50
66
  /** InputNumber 配置 */
51
67
  inputNumber?: InputNumber;
52
68
  /** 输入框 / 下拉 placeholder */
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "fantasy-ngzorro",
3
- "version": "2.2.21",
4
- "description": "feat:hd-table showColSettings;hd-filter 少条件加宽;hd-form-lines 搜索与左侧按钮同区布局",
3
+ "version": "2.2.22",
4
+ "description": "feat:hd-table 行内 Select 支持 onOpenChangeEvent/onSearchEvent(可 return Observable 写回)",
5
5
  "peerDependencies": {
6
6
  "moment": "^2.24.0",
7
7
  "ng-zorro-antd": "^8.5.2",