@ng-nest/ui 21.0.12 → 22.0.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.
- package/fesm2022/ng-nest-ui-affix.mjs +12 -12
- package/fesm2022/ng-nest-ui-affix.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-alert.mjs +46 -34
- package/fesm2022/ng-nest-ui-alert.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-anchor.mjs +43 -31
- package/fesm2022/ng-nest-ui-anchor.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-api.mjs +7 -7
- package/fesm2022/ng-nest-ui-attachments.mjs +74 -48
- package/fesm2022/ng-nest-ui-attachments.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-auto-complete.mjs +114 -70
- package/fesm2022/ng-nest-ui-auto-complete.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-avatar.mjs +47 -32
- package/fesm2022/ng-nest-ui-avatar.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-back-top.mjs +23 -18
- package/fesm2022/ng-nest-ui-back-top.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-badge.mjs +30 -23
- package/fesm2022/ng-nest-ui-badge.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-base-form.mjs +75 -44
- package/fesm2022/ng-nest-ui-base-form.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-bubble.mjs +76 -48
- package/fesm2022/ng-nest-ui-bubble.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-button.mjs +53 -42
- package/fesm2022/ng-nest-ui-button.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-calendar.mjs +30 -20
- package/fesm2022/ng-nest-ui-calendar.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-card.mjs +21 -16
- package/fesm2022/ng-nest-ui-card.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-carousel.mjs +68 -46
- package/fesm2022/ng-nest-ui-carousel.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-cascade.mjs +121 -73
- package/fesm2022/ng-nest-ui-cascade.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-checkbox.mjs +54 -38
- package/fesm2022/ng-nest-ui-checkbox.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-collapse.mjs +38 -30
- package/fesm2022/ng-nest-ui-collapse.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-color-picker.mjs +119 -72
- package/fesm2022/ng-nest-ui-color-picker.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-color.mjs +22 -16
- package/fesm2022/ng-nest-ui-color.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-comment.mjs +23 -21
- package/fesm2022/ng-nest-ui-comment.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-container.mjs +40 -37
- package/fesm2022/ng-nest-ui-container.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-contextmenu.mjs +71 -45
- package/fesm2022/ng-nest-ui-contextmenu.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-core.mjs +24 -21
- package/fesm2022/ng-nest-ui-core.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-coversations.mjs +25 -18
- package/fesm2022/ng-nest-ui-coversations.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-crumb.mjs +15 -13
- package/fesm2022/ng-nest-ui-crumb.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-date-picker.mjs +425 -256
- package/fesm2022/ng-nest-ui-date-picker.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-description.mjs +42 -31
- package/fesm2022/ng-nest-ui-description.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-dialog.mjs +106 -82
- package/fesm2022/ng-nest-ui-dialog.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-divider.mjs +24 -17
- package/fesm2022/ng-nest-ui-divider.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-doc.mjs +7 -7
- package/fesm2022/ng-nest-ui-drag.mjs +10 -10
- package/fesm2022/ng-nest-ui-drawer.mjs +52 -43
- package/fesm2022/ng-nest-ui-drawer.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-dropdown.mjs +94 -58
- package/fesm2022/ng-nest-ui-dropdown.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-empty.mjs +14 -12
- package/fesm2022/ng-nest-ui-empty.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-examples.mjs +7 -7
- package/fesm2022/ng-nest-ui-find.mjs +111 -71
- package/fesm2022/ng-nest-ui-find.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-form.mjs +45 -33
- package/fesm2022/ng-nest-ui-form.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-highlight.mjs +26 -20
- package/fesm2022/ng-nest-ui-highlight.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-i18n.mjs +16 -15
- package/fesm2022/ng-nest-ui-i18n.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-icon.mjs +28 -21
- package/fesm2022/ng-nest-ui-icon.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-image.mjs +57 -51
- package/fesm2022/ng-nest-ui-image.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-inner.mjs +11 -11
- package/fesm2022/ng-nest-ui-inner.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-input-number.mjs +63 -42
- package/fesm2022/ng-nest-ui-input-number.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-input.mjs +130 -85
- package/fesm2022/ng-nest-ui-input.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-keyword.mjs +19 -15
- package/fesm2022/ng-nest-ui-keyword.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-layout.mjs +37 -31
- package/fesm2022/ng-nest-ui-layout.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-link.mjs +23 -18
- package/fesm2022/ng-nest-ui-link.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-list.mjs +137 -89
- package/fesm2022/ng-nest-ui-list.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-loading.mjs +36 -25
- package/fesm2022/ng-nest-ui-loading.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-menu.mjs +68 -45
- package/fesm2022/ng-nest-ui-menu.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-message-box.mjs +10 -10
- package/fesm2022/ng-nest-ui-message.mjs +10 -10
- package/fesm2022/ng-nest-ui-notification.mjs +10 -10
- package/fesm2022/ng-nest-ui-outlet.mjs +11 -9
- package/fesm2022/ng-nest-ui-outlet.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-page-header.mjs +20 -15
- package/fesm2022/ng-nest-ui-page-header.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-pagination.mjs +69 -48
- package/fesm2022/ng-nest-ui-pagination.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-pattern.mjs +7 -7
- package/fesm2022/ng-nest-ui-popconfirm.mjs +40 -27
- package/fesm2022/ng-nest-ui-popconfirm.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-popover.mjs +57 -38
- package/fesm2022/ng-nest-ui-popover.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-portal.mjs +7 -7
- package/fesm2022/ng-nest-ui-progress.mjs +60 -41
- package/fesm2022/ng-nest-ui-progress.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-prompts.mjs +18 -15
- package/fesm2022/ng-nest-ui-prompts.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-radio.mjs +50 -35
- package/fesm2022/ng-nest-ui-radio.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-rate.mjs +43 -29
- package/fesm2022/ng-nest-ui-rate.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-resizable.mjs +18 -16
- package/fesm2022/ng-nest-ui-resizable.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-result.mjs +22 -16
- package/fesm2022/ng-nest-ui-result.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-ripple.mjs +14 -13
- package/fesm2022/ng-nest-ui-ripple.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-scrollable.mjs +41 -24
- package/fesm2022/ng-nest-ui-scrollable.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-select.mjs +196 -117
- package/fesm2022/ng-nest-ui-select.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-sender.mjs +43 -31
- package/fesm2022/ng-nest-ui-sender.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-skeleton.mjs +17 -15
- package/fesm2022/ng-nest-ui-skeleton.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-slider-select.mjs +85 -53
- package/fesm2022/ng-nest-ui-slider-select.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-slider.mjs +58 -37
- package/fesm2022/ng-nest-ui-slider.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-splitter.mjs +32 -24
- package/fesm2022/ng-nest-ui-splitter.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-statistic.mjs +44 -30
- package/fesm2022/ng-nest-ui-statistic.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-steps.mjs +30 -22
- package/fesm2022/ng-nest-ui-steps.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-suggestion.mjs +23 -20
- package/fesm2022/ng-nest-ui-suggestion.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-switch.mjs +35 -25
- package/fesm2022/ng-nest-ui-switch.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-table-view.mjs +78 -69
- package/fesm2022/ng-nest-ui-table-view.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-table.mjs +320 -205
- package/fesm2022/ng-nest-ui-table.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-tabs.mjs +74 -56
- package/fesm2022/ng-nest-ui-tabs.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-tag.mjs +30 -23
- package/fesm2022/ng-nest-ui-tag.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-text-retract.mjs +19 -15
- package/fesm2022/ng-nest-ui-text-retract.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-textarea.mjs +69 -44
- package/fesm2022/ng-nest-ui-textarea.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-theme.mjs +34 -23
- package/fesm2022/ng-nest-ui-theme.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-thought-chain.mjs +26 -19
- package/fesm2022/ng-nest-ui-thought-chain.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-time-ago.mjs +7 -7
- package/fesm2022/ng-nest-ui-time-picker.mjs +164 -96
- package/fesm2022/ng-nest-ui-time-picker.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-time-range.mjs +7 -7
- package/fesm2022/ng-nest-ui-timeline.mjs +26 -19
- package/fesm2022/ng-nest-ui-timeline.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-tooltip.mjs +53 -35
- package/fesm2022/ng-nest-ui-tooltip.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-transfer.mjs +66 -40
- package/fesm2022/ng-nest-ui-transfer.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-tree-file.mjs +39 -28
- package/fesm2022/ng-nest-ui-tree-file.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-tree-select.mjs +186 -111
- package/fesm2022/ng-nest-ui-tree-select.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-tree.mjs +166 -105
- package/fesm2022/ng-nest-ui-tree.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-typography.mjs +16 -13
- package/fesm2022/ng-nest-ui-typography.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-upload.mjs +81 -53
- package/fesm2022/ng-nest-ui-upload.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-watermark.mjs +44 -34
- package/fesm2022/ng-nest-ui-watermark.mjs.map +1 -1
- package/fesm2022/ng-nest-ui-welcome.mjs +22 -16
- package/fesm2022/ng-nest-ui-welcome.mjs.map +1 -1
- package/package.json +3 -2
- package/types/ng-nest-ui-base-form.d.ts +3 -3
- package/types/ng-nest-ui-carousel.d.ts +1 -1
- package/types/ng-nest-ui-container.d.ts +1 -1
- package/types/ng-nest-ui-core.d.ts +1 -1
- package/types/ng-nest-ui-dialog.d.ts +1 -1
- package/types/ng-nest-ui-drawer.d.ts +1 -1
- package/types/ng-nest-ui-form.d.ts +12 -12
- package/types/ng-nest-ui-layout.d.ts +1 -1
- package/types/ng-nest-ui-list.d.ts +1 -1
- package/types/ng-nest-ui-portal.d.ts +3 -3
- package/types/ng-nest-ui-table-view.d.ts +1 -1
- package/types/ng-nest-ui-table.d.ts +1 -1
- package/types/ng-nest-ui-tabs.d.ts +1 -1
- package/types/ng-nest-ui-tree.d.ts +1 -1
|
@@ -37,93 +37,106 @@ class XTransferProperty extends XFormControlFunction(X_TRANSFER_CONFIG_NAME) {
|
|
|
37
37
|
* @zh_CN 数据对象
|
|
38
38
|
* @en_US Data object
|
|
39
39
|
*/
|
|
40
|
-
this.data = input([], { ...(ngDevMode ? { debugName: "data" } : {}), transform: XToDataConvert });
|
|
40
|
+
this.data = input([], { ...(ngDevMode ? { debugName: "data" } : /* istanbul ignore next */ {}), transform: XToDataConvert });
|
|
41
41
|
/**
|
|
42
42
|
* @zh_CN 选择的类型
|
|
43
43
|
* @en_US Type
|
|
44
44
|
*/
|
|
45
|
-
this.type = input(this.config?.type ?? 'list',
|
|
45
|
+
this.type = input(this.config?.type ?? 'list', /* @ts-ignore */
|
|
46
|
+
...(ngDevMode ? [{ debugName: "type" }] : /* istanbul ignore next */ []));
|
|
46
47
|
/**
|
|
47
48
|
* @zh_CN 标题
|
|
48
49
|
* @en_US Title
|
|
49
50
|
* @default ['List', 'Selected']
|
|
50
51
|
*/
|
|
51
|
-
this.titles = input(this.config?.titles ?? null,
|
|
52
|
+
this.titles = input(this.config?.titles ?? null, /* @ts-ignore */
|
|
53
|
+
...(ngDevMode ? [{ debugName: "titles" }] : /* istanbul ignore next */ []));
|
|
52
54
|
/**
|
|
53
55
|
* @zh_CN 穿梭框样式,使用方式与 ngStyle 相同
|
|
54
56
|
* @en_US shuttle box style, same as ngStyle
|
|
55
57
|
*/
|
|
56
|
-
this.listStyle = input(this.config?.listStyle ?? null,
|
|
58
|
+
this.listStyle = input(this.config?.listStyle ?? null, /* @ts-ignore */
|
|
59
|
+
...(ngDevMode ? [{ debugName: "listStyle" }] : /* istanbul ignore next */ []));
|
|
57
60
|
/**
|
|
58
61
|
* @zh_CN 隐藏全选复选框
|
|
59
62
|
* @en_US Hidden check all
|
|
60
63
|
*/
|
|
61
|
-
this.hiddenCheckAll = input(
|
|
64
|
+
this.hiddenCheckAll = input(/* @ts-ignore */
|
|
65
|
+
...(ngDevMode ? [undefined, { debugName: "hiddenCheckAll" }] : /* istanbul ignore next */ []));
|
|
62
66
|
/**
|
|
63
67
|
* @zh_CN 是否能拖动, type
|
|
64
68
|
* @en_US Can drag
|
|
65
69
|
*/
|
|
66
|
-
this.drag = input(this.config?.drag ?? false, { ...(ngDevMode ? { debugName: "drag" } : {}), transform: XToBoolean });
|
|
70
|
+
this.drag = input(this.config?.drag ?? false, { ...(ngDevMode ? { debugName: "drag" } : /* istanbul ignore next */ {}), transform: XToBoolean });
|
|
67
71
|
/**
|
|
68
72
|
* @zh_CN 是否显示搜索。type 为 'table',需要设置 tableHeadSearchTpl 和 tableQuery 来配合使用
|
|
69
73
|
* @en_US Whether to display search
|
|
70
74
|
*/
|
|
71
|
-
this.search = input(false, { ...(ngDevMode ? { debugName: "search" } : {}), transform: XToBoolean });
|
|
75
|
+
this.search = input(false, { ...(ngDevMode ? { debugName: "search" } : /* istanbul ignore next */ {}), transform: XToBoolean });
|
|
72
76
|
/**
|
|
73
77
|
* @zh_CN 表格列头搜索自定义模板
|
|
74
78
|
* @en_US table head search custom template
|
|
75
79
|
*/
|
|
76
|
-
this.tableHeadSearchTpl = input(
|
|
80
|
+
this.tableHeadSearchTpl = input(/* @ts-ignore */
|
|
81
|
+
...(ngDevMode ? [undefined, { debugName: "tableHeadSearchTpl" }] : /* istanbul ignore next */ []));
|
|
77
82
|
/**
|
|
78
83
|
* @zh_CN 行数据自定义模板
|
|
79
84
|
* @en_US Data customization template
|
|
80
85
|
*/
|
|
81
|
-
this.nodeTpl = input(
|
|
86
|
+
this.nodeTpl = input(/* @ts-ignore */
|
|
87
|
+
...(ngDevMode ? [undefined, { debugName: "nodeTpl" }] : /* istanbul ignore next */ []));
|
|
82
88
|
/**
|
|
83
89
|
* @zh_CN 标题自定义模板
|
|
84
90
|
* @en_US Title custom template
|
|
85
91
|
*/
|
|
86
|
-
this.titleTpl = input(
|
|
92
|
+
this.titleTpl = input(/* @ts-ignore */
|
|
93
|
+
...(ngDevMode ? [undefined, { debugName: "titleTpl" }] : /* istanbul ignore next */ []));
|
|
87
94
|
/**
|
|
88
95
|
* @zh_CN 底部自定义模版
|
|
89
96
|
* @en_US Bottom Custom Template
|
|
90
97
|
*/
|
|
91
|
-
this.footerTpl = input(
|
|
98
|
+
this.footerTpl = input(/* @ts-ignore */
|
|
99
|
+
...(ngDevMode ? [undefined, { debugName: "footerTpl" }] : /* istanbul ignore next */ []));
|
|
92
100
|
/**
|
|
93
101
|
* @zh_CN 表格列集合
|
|
94
102
|
* @en_US Table column set
|
|
95
103
|
*/
|
|
96
|
-
this.tableColumns = input(
|
|
104
|
+
this.tableColumns = input(/* @ts-ignore */
|
|
105
|
+
...(ngDevMode ? [undefined, { debugName: "tableColumns" }] : /* istanbul ignore next */ []));
|
|
97
106
|
/**
|
|
98
107
|
* @zh_CN 表格页码
|
|
99
108
|
* @en_US Table page number
|
|
100
109
|
*/
|
|
101
|
-
this.tableIndex = model(1,
|
|
110
|
+
this.tableIndex = model(1, /* @ts-ignore */
|
|
111
|
+
...(ngDevMode ? [{ debugName: "tableIndex" }] : /* istanbul ignore next */ []));
|
|
102
112
|
/**
|
|
103
113
|
* @zh_CN 表每页数据条数
|
|
104
114
|
* @en_US Number of data items per page
|
|
105
115
|
*/
|
|
106
|
-
this.tableSize = model(10,
|
|
116
|
+
this.tableSize = model(10, /* @ts-ignore */
|
|
117
|
+
...(ngDevMode ? [{ debugName: "tableSize" }] : /* istanbul ignore next */ []));
|
|
107
118
|
/**
|
|
108
119
|
* @zh_CN 表格查询条件
|
|
109
120
|
* @en_US Number of data items per page
|
|
110
121
|
*/
|
|
111
|
-
this.tableQuery = input({},
|
|
122
|
+
this.tableQuery = input({}, /* @ts-ignore */
|
|
123
|
+
...(ngDevMode ? [{ debugName: "tableQuery" }] : /* istanbul ignore next */ []));
|
|
112
124
|
/**
|
|
113
125
|
* @zh_CN 表格数据总条数
|
|
114
126
|
* @en_US Total number of table data
|
|
115
127
|
*/
|
|
116
|
-
this.tableTotal = model(0,
|
|
128
|
+
this.tableTotal = model(0, /* @ts-ignore */
|
|
129
|
+
...(ngDevMode ? [{ debugName: "tableTotal" }] : /* istanbul ignore next */ []));
|
|
117
130
|
/**
|
|
118
131
|
* @zh_CN 反选操作
|
|
119
132
|
* @en_US Inverse select
|
|
120
133
|
*/
|
|
121
|
-
this.inverse = input(false, { ...(ngDevMode ? { debugName: "inverse" } : {}), transform: XToBoolean });
|
|
134
|
+
this.inverse = input(false, { ...(ngDevMode ? { debugName: "inverse" } : /* istanbul ignore next */ {}), transform: XToBoolean });
|
|
122
135
|
}
|
|
123
|
-
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
124
|
-
/** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "
|
|
136
|
+
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.1", ngImport: i0, type: XTransferProperty, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
137
|
+
/** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "22.0.1", type: XTransferProperty, isStandalone: true, selector: "x-transfer-property", inputs: { data: { classPropertyName: "data", publicName: "data", isSignal: true, isRequired: false, transformFunction: null }, type: { classPropertyName: "type", publicName: "type", isSignal: true, isRequired: false, transformFunction: null }, titles: { classPropertyName: "titles", publicName: "titles", isSignal: true, isRequired: false, transformFunction: null }, listStyle: { classPropertyName: "listStyle", publicName: "listStyle", isSignal: true, isRequired: false, transformFunction: null }, hiddenCheckAll: { classPropertyName: "hiddenCheckAll", publicName: "hiddenCheckAll", isSignal: true, isRequired: false, transformFunction: null }, drag: { classPropertyName: "drag", publicName: "drag", isSignal: true, isRequired: false, transformFunction: null }, search: { classPropertyName: "search", publicName: "search", isSignal: true, isRequired: false, transformFunction: null }, tableHeadSearchTpl: { classPropertyName: "tableHeadSearchTpl", publicName: "tableHeadSearchTpl", isSignal: true, isRequired: false, transformFunction: null }, nodeTpl: { classPropertyName: "nodeTpl", publicName: "nodeTpl", isSignal: true, isRequired: false, transformFunction: null }, titleTpl: { classPropertyName: "titleTpl", publicName: "titleTpl", isSignal: true, isRequired: false, transformFunction: null }, footerTpl: { classPropertyName: "footerTpl", publicName: "footerTpl", isSignal: true, isRequired: false, transformFunction: null }, tableColumns: { classPropertyName: "tableColumns", publicName: "tableColumns", isSignal: true, isRequired: false, transformFunction: null }, tableIndex: { classPropertyName: "tableIndex", publicName: "tableIndex", isSignal: true, isRequired: false, transformFunction: null }, tableSize: { classPropertyName: "tableSize", publicName: "tableSize", isSignal: true, isRequired: false, transformFunction: null }, tableQuery: { classPropertyName: "tableQuery", publicName: "tableQuery", isSignal: true, isRequired: false, transformFunction: null }, tableTotal: { classPropertyName: "tableTotal", publicName: "tableTotal", isSignal: true, isRequired: false, transformFunction: null }, inverse: { classPropertyName: "inverse", publicName: "inverse", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { tableIndex: "tableIndexChange", tableSize: "tableSizeChange", tableTotal: "tableTotalChange" }, usesInheritance: true, ngImport: i0, template: '', isInline: true }); }
|
|
125
138
|
}
|
|
126
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
139
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.1", ngImport: i0, type: XTransferProperty, decorators: [{
|
|
127
140
|
type: Component,
|
|
128
141
|
args: [{ selector: `${XTransferPrefix}-property`, template: '' }]
|
|
129
142
|
}], propDecorators: { data: [{ type: i0.Input, args: [{ isSignal: true, alias: "data", required: false }] }], type: [{ type: i0.Input, args: [{ isSignal: true, alias: "type", required: false }] }], titles: [{ type: i0.Input, args: [{ isSignal: true, alias: "titles", required: false }] }], listStyle: [{ type: i0.Input, args: [{ isSignal: true, alias: "listStyle", required: false }] }], hiddenCheckAll: [{ type: i0.Input, args: [{ isSignal: true, alias: "hiddenCheckAll", required: false }] }], drag: [{ type: i0.Input, args: [{ isSignal: true, alias: "drag", required: false }] }], search: [{ type: i0.Input, args: [{ isSignal: true, alias: "search", required: false }] }], tableHeadSearchTpl: [{ type: i0.Input, args: [{ isSignal: true, alias: "tableHeadSearchTpl", required: false }] }], nodeTpl: [{ type: i0.Input, args: [{ isSignal: true, alias: "nodeTpl", required: false }] }], titleTpl: [{ type: i0.Input, args: [{ isSignal: true, alias: "titleTpl", required: false }] }], footerTpl: [{ type: i0.Input, args: [{ isSignal: true, alias: "footerTpl", required: false }] }], tableColumns: [{ type: i0.Input, args: [{ isSignal: true, alias: "tableColumns", required: false }] }], tableIndex: [{ type: i0.Input, args: [{ isSignal: true, alias: "tableIndex", required: false }] }, { type: i0.Output, args: ["tableIndexChange"] }], tableSize: [{ type: i0.Input, args: [{ isSignal: true, alias: "tableSize", required: false }] }, { type: i0.Output, args: ["tableSizeChange"] }], tableQuery: [{ type: i0.Input, args: [{ isSignal: true, alias: "tableQuery", required: false }] }], tableTotal: [{ type: i0.Input, args: [{ isSignal: true, alias: "tableTotal", required: false }] }, { type: i0.Output, args: ["tableTotalChange"] }], inverse: [{ type: i0.Input, args: [{ isSignal: true, alias: "inverse", required: false }] }] } });
|
|
@@ -132,27 +145,34 @@ class XTransferComponent extends XTransferProperty {
|
|
|
132
145
|
constructor() {
|
|
133
146
|
super(...arguments);
|
|
134
147
|
this.i18n = inject(XI18nService);
|
|
135
|
-
this.leftTableCom = viewChild(XTableComponent,
|
|
136
|
-
|
|
137
|
-
this.
|
|
148
|
+
this.leftTableCom = viewChild(XTableComponent, /* @ts-ignore */
|
|
149
|
+
...(ngDevMode ? [{ debugName: "leftTableCom" }] : /* istanbul ignore next */ []));
|
|
150
|
+
this.rightTableCom = viewChild(XTableComponent, /* @ts-ignore */
|
|
151
|
+
...(ngDevMode ? [{ debugName: "rightTableCom" }] : /* istanbul ignore next */ []));
|
|
152
|
+
this.nodes = signal([], /* @ts-ignore */
|
|
153
|
+
...(ngDevMode ? [{ debugName: "nodes" }] : /* istanbul ignore next */ []));
|
|
138
154
|
this.left = signal({
|
|
139
155
|
list: [],
|
|
140
156
|
searchList: [],
|
|
141
157
|
checkedCount: 0,
|
|
142
158
|
direction: 'left',
|
|
143
159
|
disabledButton: true
|
|
144
|
-
},
|
|
160
|
+
}, /* @ts-ignore */
|
|
161
|
+
...(ngDevMode ? [{ debugName: "left" }] : /* istanbul ignore next */ []));
|
|
145
162
|
this.right = signal({
|
|
146
163
|
list: [],
|
|
147
164
|
searchList: [],
|
|
148
165
|
checkedCount: 0,
|
|
149
166
|
direction: 'right',
|
|
150
167
|
disabledButton: true
|
|
151
|
-
},
|
|
152
|
-
|
|
168
|
+
}, /* @ts-ignore */
|
|
169
|
+
...(ngDevMode ? [{ debugName: "right" }] : /* istanbul ignore next */ []));
|
|
170
|
+
this.searchInput = signal('', /* @ts-ignore */
|
|
171
|
+
...(ngDevMode ? [{ debugName: "searchInput" }] : /* istanbul ignore next */ []));
|
|
153
172
|
this.searchInputLeftChange = new Subject();
|
|
154
173
|
this.searchInputRightChange = new Subject();
|
|
155
|
-
this.searchDebounceTime = signal(200,
|
|
174
|
+
this.searchDebounceTime = signal(200, /* @ts-ignore */
|
|
175
|
+
...(ngDevMode ? [{ debugName: "searchDebounceTime" }] : /* istanbul ignore next */ []));
|
|
156
176
|
this.locale = toSignal(this.i18n.localeChange.pipe(map((x) => x.transfer)), {
|
|
157
177
|
initialValue: zh_CN.transfer
|
|
158
178
|
});
|
|
@@ -163,12 +183,17 @@ class XTransferComponent extends XTransferProperty {
|
|
|
163
183
|
else {
|
|
164
184
|
return this.locale().listTitle;
|
|
165
185
|
}
|
|
166
|
-
},
|
|
186
|
+
}, /* @ts-ignore */
|
|
187
|
+
...(ngDevMode ? [{ debugName: "localTitle" }] : /* istanbul ignore next */ []));
|
|
167
188
|
this.unSubject = new Subject();
|
|
168
|
-
this.treeActivatedId = signal([],
|
|
169
|
-
|
|
170
|
-
this.
|
|
171
|
-
|
|
189
|
+
this.treeActivatedId = signal([], /* @ts-ignore */
|
|
190
|
+
...(ngDevMode ? [{ debugName: "treeActivatedId" }] : /* istanbul ignore next */ []));
|
|
191
|
+
this.tableData = signal([], /* @ts-ignore */
|
|
192
|
+
...(ngDevMode ? [{ debugName: "tableData" }] : /* istanbul ignore next */ []));
|
|
193
|
+
this.tableCheckboxColumn = signal(null, /* @ts-ignore */
|
|
194
|
+
...(ngDevMode ? [{ debugName: "tableCheckboxColumn" }] : /* istanbul ignore next */ []));
|
|
195
|
+
this.isObjectArray = signal(false, /* @ts-ignore */
|
|
196
|
+
...(ngDevMode ? [{ debugName: "isObjectArray" }] : /* istanbul ignore next */ []));
|
|
172
197
|
this.values = computed(() => {
|
|
173
198
|
if (this.isObjectArray()) {
|
|
174
199
|
return this.value().map((x) => x.id);
|
|
@@ -176,7 +201,8 @@ class XTransferComponent extends XTransferProperty {
|
|
|
176
201
|
else {
|
|
177
202
|
return this.value();
|
|
178
203
|
}
|
|
179
|
-
},
|
|
204
|
+
}, /* @ts-ignore */
|
|
205
|
+
...(ngDevMode ? [{ debugName: "values" }] : /* istanbul ignore next */ []));
|
|
180
206
|
}
|
|
181
207
|
writeValue(value) {
|
|
182
208
|
this.value.set(value);
|
|
@@ -747,10 +773,10 @@ class XTransferComponent extends XTransferProperty {
|
|
|
747
773
|
});
|
|
748
774
|
}
|
|
749
775
|
}
|
|
750
|
-
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
751
|
-
/** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.1.1", type: XTransferComponent, isStandalone: true, selector: "x-transfer", providers: [XValueAccessor(XTransferComponent)], viewQueries: [{ propertyName: "leftTableCom", first: true, predicate: XTableComponent, descendants: true, isSignal: true }, { propertyName: "rightTableCom", first: true, predicate: XTableComponent, descendants: true, isSignal: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<div #transfer class=\"x-transfer\" cdkDropListGroup>\r\n <div class=\"x-transfer-box\" [class.x-transfer-has-footer]=\"left().footerTpl\">\r\n <ng-container *ngTemplateOutlet=\"sourceTitleTpl; context: { source: left() }\"></ng-container>\r\n <div [ngStyle]=\"left().listStyle!\" class=\"x-transfer-list x-transfer-{{ type() }}\">\r\n @switch (type()) {\r\n @case ('list') {\r\n <ul\r\n cdkDropList\r\n (cdkDropListDropped)=\"dropCdk($event)\"\r\n [cdkDropListData]=\"left().list\"\r\n [cdkDropListDisabled]=\"!drag() && type() === 'list'\"\r\n [cdkDropListEnterPredicate]=\"predicate\"\r\n class=\"x-transfer-droplist\"\r\n >\r\n @for (node of left().list; track node.id) {\r\n <li class=\"x-transfer-item\" cdkDrag [cdkDragData]=\"node\">\r\n <ng-container *ngTemplateOutlet=\"sourceNodeTpl; context: { node: node, source: left() }\"></ng-container>\r\n </li>\r\n }\r\n </ul>\r\n }\r\n @case ('tree') {\r\n <x-tree\r\n [data]=\"left().list!\"\r\n multiple\r\n allowManyActivated\r\n [(activatedId)]=\"treeActivatedId\"\r\n (nodeClick)=\"onTreeNodeClick($event)\"\r\n [labelTpl]=\"treeLabelTpl\"\r\n ></x-tree>\r\n <ng-template #treeLabelTpl let-node=\"$node\">\r\n <span class=\"x-transfer-tree-label\" x-keyword [text]=\"left().searchInput!\">{{ node.label }}</span>\r\n </ng-template>\r\n }\r\n @case ('table') {\r\n <x-table\r\n #leftTableCom\r\n [data]=\"tableData()\"\r\n [columns]=\"tableColumns()!\"\r\n [(size)]=\"tableSize\"\r\n [(index)]=\"tableIndex\"\r\n (indexChange)=\"getTableData()\"\r\n [query]=\"tableQuery()\"\r\n [total]=\"tableTotal()\"\r\n (activatedRowChange)=\"onTableCheckedRow($event!, left())\"\r\n (headCheckboxChange)=\"onTableCheckedAll($event, left())\"\r\n hiddenWrapBorder\r\n hiddenPaginationBorder\r\n showEllipsis=\"false\"\r\n showTotal=\"false\"\r\n paginationPosition=\"bottom-center\"\r\n allowSelectRow=\"false\"\r\n [headSearchTpl]=\"left().tableHeadSearchTpl\"\r\n ></x-table>\r\n }\r\n }\r\n </div>\r\n @if (left().footerTpl) {\r\n <div class=\"x-transfer-footer\">\r\n <ng-container *ngTemplateOutlet=\"left().footerTpl!; context: { $source: left() }\"></ng-container>\r\n </div>\r\n }\r\n </div>\r\n <div class=\"x-transfer-buttons\">\r\n <x-button\r\n type=\"primary\"\r\n icon=\"fto-chevron-right\"\r\n [disabled]=\"left().disabledButton!\"\r\n (click)=\"move(left(), right())\"\r\n flat\r\n ></x-button>\r\n <x-button\r\n type=\"primary\"\r\n icon=\"fto-chevron-left\"\r\n [disabled]=\"right().disabledButton!\"\r\n (click)=\"move(right(), left())\"\r\n flat\r\n ></x-button>\r\n </div>\r\n <div class=\"x-transfer-box\" [class.x-transfer-has-footer]=\"right().footerTpl\">\r\n <ng-container *ngTemplateOutlet=\"sourceTitleTpl; context: { source: right() }\"></ng-container>\r\n\r\n <div [ngStyle]=\"right().listStyle!\" class=\"x-transfer-list\">\r\n @switch (type()) {\r\n @case ('table') {\r\n <x-table\r\n #rightTableCom\r\n [data]=\"right().list!\"\r\n [columns]=\"tableColumns()!\"\r\n (activatedRowChange)=\"onTableCheckedRow($event!, right())\"\r\n (headCheckboxChange)=\"onTableCheckedAll($event, right())\"\r\n hiddenWrapBorder\r\n hiddenPaginationBorder\r\n showPagination=\"false\"\r\n showEllipsis=\"false\"\r\n showTotal=\"false\"\r\n paginationPosition=\"bottom-center\"\r\n allowSelectRow=\"false\"\r\n [headSearchTpl]=\"right().tableHeadSearchTpl\"\r\n ></x-table>\r\n }\r\n @default {\r\n <ul\r\n cdkDropList\r\n (cdkDropListDropped)=\"dropCdk($event)\"\r\n [cdkDropListData]=\"right().list\"\r\n [cdkDropListDisabled]=\"!drag() || (drag() && type() !== 'list')\"\r\n [cdkDropListEnterPredicate]=\"predicate\"\r\n class=\"x-transfer-droplist\"\r\n >\r\n @for (node of right().list; track node.id) {\r\n <li class=\"x-transfer-item\" cdkDrag [cdkDragData]=\"node\">\r\n <ng-container\r\n *ngTemplateOutlet=\"sourceNodeTpl; context: { node: node, source: right() }\"\r\n ></ng-container>\r\n </li>\r\n }\r\n </ul>\r\n }\r\n }\r\n </div>\r\n @if (right().footerTpl) {\r\n <div class=\"x-transfer-footer\">\r\n <ng-container *ngTemplateOutlet=\"right().footerTpl!; context: { $source: right() }\"></ng-container>\r\n </div>\r\n }\r\n </div>\r\n</div>\r\n\r\n<ng-template #sourceTitleTpl let-source=\"source\">\r\n <div class=\"x-transfer-title\">\r\n <div class=\"x-transfer-title-left\">\r\n @if (source.title && !source.hiddenCheckAll) {\r\n <x-checkbox\r\n class=\"x-transfer-check-all\"\r\n [data]=\"[titleTpl() ? '' : source.title]\"\r\n [(ngModel)]=\"source.checkedAll\"\r\n (ngModelChange)=\"checkedAllChange($event, source)\"\r\n [indeterminate]=\"source.indeterminate\"\r\n single\r\n ></x-checkbox>\r\n }\r\n @if (source.title && source.hiddenCheckAll) {\r\n <span>{{ source.title }}</span>\r\n }\r\n @if (inverse() && type() === 'list') {\r\n <x-link class=\"x-transfer-inverse\" type=\"primary\" (click)=\"onInverse(source)\">{{\r\n 'transfer.inverse' | xI18n\r\n }}</x-link>\r\n }\r\n </div>\r\n <ng-container\r\n *xOutlet=\"titleTpl(); context: { $title: source.title, $checkedCount: source.checkedCount, $count: source.count }\"\r\n ><span class=\"x-transfer-total\">{{ source.checkedCount }} / {{ source.count }}</span></ng-container\r\n >\r\n </div>\r\n @if (search() && type() !== 'table') {\r\n <div class=\"x-transfer-search\">\r\n <x-input\r\n icon=\"fto-search\"\r\n [(ngModel)]=\"source.searchInput\"\r\n (ngModelChange)=\"onSearchInputChange(source)\"\r\n clearable\r\n ></x-input>\r\n </div>\r\n }\r\n</ng-template>\r\n\r\n<ng-template #sourceNodeTpl let-node=\"node\" let-source=\"source\">\r\n <x-checkbox\r\n [data]=\"[{ id: node.id, label: nodeTpl() ? nodeTpl() : labelTpl, node: node }]\"\r\n [disabled]=\"node.disabled\"\r\n [(ngModel)]=\"node.checked\"\r\n (ngModelChange)=\"checkedChange($event, source)\"\r\n single\r\n ></x-checkbox>\r\n <ng-template #labelTpl>\r\n <span x-keyword [text]=\"source.searchInput!\">{{ node.label }}</span>\r\n </ng-template>\r\n</ng-template>\r\n", styles: [".x-transfer{margin:0;padding:0}.x-transfer{display:inline-flex;align-items:center}.x-transfer-title{padding:.25rem .5625rem;display:flex;align-items:center;justify-content:space-between;border:var(--x-border-width) var(--x-border-style) var(--x-border);border-top-left-radius:var(--x-border-radius);border-top-right-radius:var(--x-border-radius);background-color:var(--x-background);color:var(--x-text-300)}.x-transfer-title-left{display:inline-flex;align-items:center}.x-transfer-inverse{margin:0 .5rem}.x-transfer-total{margin-left:.325rem}.x-transfer-box{min-width:12rem}.x-transfer-list{display:flex;flex-direction:column;height:18rem;width:100%;border:var(--x-border-width) var(--x-border-style) var(--x-border);border-top:none;border-bottom-left-radius:var(--x-border-radius);border-bottom-right-radius:var(--x-border-radius);overflow:auto}.x-transfer-tree{padding:0 .125rem}.x-transfer-item{margin:0;padding:.125rem .25rem;border-radius:var(--x-border-radius);display:flex;align-items:center;border:.0625rem dashed transparent;transition:border-color var(--x-animation-duration-base),background-color var(--x-animation-duration-base),color var(--x-animation-duration-base)}.x-transfer-droplist{margin:0;height:100%;padding:.25rem;list-style:none}.x-transfer-droplist.cdk-drop-list-dragging .x-transfer-item:hover{background-color:transparent}.x-transfer-droplist.cdk-drop-list-dragging .x-transfer-item.cdk-drag-placeholder{border-color:var(--x-primary);color:var(--x-primary);background-color:var(--x-background);opacity:.8}.x-transfer-droplist.cdk-drop-list-dragging .x-transfer-item:not(.cdk-drag-placeholder){transition:transform var(--x-animation-duration-base) cubic-bezier(0,0,.2,1)}.x-transfer-buttons{margin:0 1rem;display:flex;flex-direction:column}.x-transfer-buttons>x-button:not(:first-child){margin-top:.5rem}.x-transfer-search{padding:.5rem;border-left:var(--x-border-width) var(--x-border-style) var(--x-border);border-right:var(--x-border-width) var(--x-border-style) var(--x-border)}.x-transfer-search x-input{width:100%}.x-transfer-tree-label{flex:1}.x-transfer-footer{padding:.25rem .5625rem;border:var(--x-border-width) var(--x-border-style) var(--x-border);border-bottom-left-radius:var(--x-border-radius);border-bottom-right-radius:var(--x-border-radius)}.x-transfer-has-footer .x-transfer-list{border-bottom-left-radius:0;border-bottom-right-radius:0;border-bottom:none}body>li.x-transfer-item.cdk-drag-preview{margin:0;padding:.125rem .25rem;border-radius:var(--x-border-radius);display:flex;align-items:center;border:.0625rem dashed transparent;border-color:var(--x-border);color:var(--x-text-400);background-color:var(--x-background-a100);opacity:.9}body>li.x-transfer-item.cdk-drag-animating{transition:transform var(--x-animation-duration-base) cubic-bezier(0,0,.2,1)}\n"], dependencies: [{ kind: "directive", type: NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: DragDropModule }, { kind: "directive", type: i2.CdkDropList, selector: "[cdkDropList], cdk-drop-list", inputs: ["cdkDropListConnectedTo", "cdkDropListData", "cdkDropListOrientation", "id", "cdkDropListLockAxis", "cdkDropListDisabled", "cdkDropListSortingDisabled", "cdkDropListEnterPredicate", "cdkDropListSortPredicate", "cdkDropListAutoScrollDisabled", "cdkDropListAutoScrollStep", "cdkDropListElementContainer", "cdkDropListHasAnchor"], outputs: ["cdkDropListDropped", "cdkDropListEntered", "cdkDropListExited", "cdkDropListSorted"], exportAs: ["cdkDropList"] }, { kind: "directive", type: i2.CdkDropListGroup, selector: "[cdkDropListGroup]", inputs: ["cdkDropListGroupDisabled"], exportAs: ["cdkDropListGroup"] }, { kind: "directive", type: i2.CdkDrag, selector: "[cdkDrag]", inputs: ["cdkDragData", "cdkDragLockAxis", "cdkDragRootElement", "cdkDragBoundary", "cdkDragStartDelay", "cdkDragFreeDragPosition", "cdkDragDisabled", "cdkDragConstrainPosition", "cdkDragPreviewClass", "cdkDragPreviewContainer", "cdkDragScale"], outputs: ["cdkDragStarted", "cdkDragReleased", "cdkDragEnded", "cdkDragEntered", "cdkDragExited", "cdkDragDropped", "cdkDragMoved"], exportAs: ["cdkDrag"] }, { kind: "directive", type: XOutletDirective, selector: "[xOutlet]", inputs: ["xOutletContext", "xOutlet"] }, { kind: "component", type: XCheckboxComponent, selector: "x-checkbox" }, { kind: "component", type: XButtonComponent, selector: "x-button" }, { kind: "component", type: XInputComponent, selector: "x-input" }, { kind: "component", type: XTreeComponent, selector: "x-tree" }, { kind: "component", type: XTableComponent, selector: "x-table" }, { kind: "directive", type: XKeywordDirective, selector: "[x-keyword]" }, { kind: "component", type: XLinkComponent, selector: "x-link" }, { kind: "pipe", type: XI18nPipe, name: "xI18n" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
776
|
+
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.1", ngImport: i0, type: XTransferComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
777
|
+
/** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.0.1", type: XTransferComponent, isStandalone: true, selector: "x-transfer", providers: [XValueAccessor(XTransferComponent)], viewQueries: [{ propertyName: "leftTableCom", first: true, predicate: XTableComponent, descendants: true, isSignal: true }, { propertyName: "rightTableCom", first: true, predicate: XTableComponent, descendants: true, isSignal: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<div #transfer class=\"x-transfer\" cdkDropListGroup>\r\n <div class=\"x-transfer-box\" [class.x-transfer-has-footer]=\"left().footerTpl\">\r\n <ng-container *ngTemplateOutlet=\"sourceTitleTpl; context: { source: left() }\"></ng-container>\r\n <div [ngStyle]=\"left().listStyle!\" class=\"x-transfer-list x-transfer-{{ type() }}\">\r\n @switch (type()) {\r\n @case ('list') {\r\n <ul\r\n cdkDropList\r\n (cdkDropListDropped)=\"dropCdk($event)\"\r\n [cdkDropListData]=\"left().list\"\r\n [cdkDropListDisabled]=\"!drag() && type() === 'list'\"\r\n [cdkDropListEnterPredicate]=\"predicate\"\r\n class=\"x-transfer-droplist\"\r\n >\r\n @for (node of left().list; track node.id) {\r\n <li class=\"x-transfer-item\" cdkDrag [cdkDragData]=\"node\">\r\n <ng-container *ngTemplateOutlet=\"sourceNodeTpl; context: { node: node, source: left() }\"></ng-container>\r\n </li>\r\n }\r\n </ul>\r\n }\r\n @case ('tree') {\r\n <x-tree\r\n [data]=\"left().list!\"\r\n multiple\r\n allowManyActivated\r\n [(activatedId)]=\"treeActivatedId\"\r\n (nodeClick)=\"onTreeNodeClick($event)\"\r\n [labelTpl]=\"treeLabelTpl\"\r\n ></x-tree>\r\n <ng-template #treeLabelTpl let-node=\"$node\">\r\n <span class=\"x-transfer-tree-label\" x-keyword [text]=\"left().searchInput!\">{{ node.label }}</span>\r\n </ng-template>\r\n }\r\n @case ('table') {\r\n <x-table\r\n #leftTableCom\r\n [data]=\"tableData()\"\r\n [columns]=\"tableColumns()!\"\r\n [(size)]=\"tableSize\"\r\n [(index)]=\"tableIndex\"\r\n (indexChange)=\"getTableData()\"\r\n [query]=\"tableQuery()\"\r\n [total]=\"tableTotal()\"\r\n (activatedRowChange)=\"onTableCheckedRow($event!, left())\"\r\n (headCheckboxChange)=\"onTableCheckedAll($event, left())\"\r\n hiddenWrapBorder\r\n hiddenPaginationBorder\r\n showEllipsis=\"false\"\r\n showTotal=\"false\"\r\n paginationPosition=\"bottom-center\"\r\n allowSelectRow=\"false\"\r\n [headSearchTpl]=\"left().tableHeadSearchTpl\"\r\n ></x-table>\r\n }\r\n }\r\n </div>\r\n @if (left().footerTpl) {\r\n <div class=\"x-transfer-footer\">\r\n <ng-container *ngTemplateOutlet=\"left().footerTpl!; context: { $source: left() }\"></ng-container>\r\n </div>\r\n }\r\n </div>\r\n <div class=\"x-transfer-buttons\">\r\n <x-button\r\n type=\"primary\"\r\n icon=\"fto-chevron-right\"\r\n [disabled]=\"left().disabledButton!\"\r\n (click)=\"move(left(), right())\"\r\n flat\r\n ></x-button>\r\n <x-button\r\n type=\"primary\"\r\n icon=\"fto-chevron-left\"\r\n [disabled]=\"right().disabledButton!\"\r\n (click)=\"move(right(), left())\"\r\n flat\r\n ></x-button>\r\n </div>\r\n <div class=\"x-transfer-box\" [class.x-transfer-has-footer]=\"right().footerTpl\">\r\n <ng-container *ngTemplateOutlet=\"sourceTitleTpl; context: { source: right() }\"></ng-container>\r\n\r\n <div [ngStyle]=\"right().listStyle!\" class=\"x-transfer-list\">\r\n @switch (type()) {\r\n @case ('table') {\r\n <x-table\r\n #rightTableCom\r\n [data]=\"right().list!\"\r\n [columns]=\"tableColumns()!\"\r\n (activatedRowChange)=\"onTableCheckedRow($event!, right())\"\r\n (headCheckboxChange)=\"onTableCheckedAll($event, right())\"\r\n hiddenWrapBorder\r\n hiddenPaginationBorder\r\n showPagination=\"false\"\r\n showEllipsis=\"false\"\r\n showTotal=\"false\"\r\n paginationPosition=\"bottom-center\"\r\n allowSelectRow=\"false\"\r\n [headSearchTpl]=\"right().tableHeadSearchTpl\"\r\n ></x-table>\r\n }\r\n @default {\r\n <ul\r\n cdkDropList\r\n (cdkDropListDropped)=\"dropCdk($event)\"\r\n [cdkDropListData]=\"right().list\"\r\n [cdkDropListDisabled]=\"!drag() || (drag() && type() !== 'list')\"\r\n [cdkDropListEnterPredicate]=\"predicate\"\r\n class=\"x-transfer-droplist\"\r\n >\r\n @for (node of right().list; track node.id) {\r\n <li class=\"x-transfer-item\" cdkDrag [cdkDragData]=\"node\">\r\n <ng-container\r\n *ngTemplateOutlet=\"sourceNodeTpl; context: { node: node, source: right() }\"\r\n ></ng-container>\r\n </li>\r\n }\r\n </ul>\r\n }\r\n }\r\n </div>\r\n @if (right().footerTpl) {\r\n <div class=\"x-transfer-footer\">\r\n <ng-container *ngTemplateOutlet=\"right().footerTpl!; context: { $source: right() }\"></ng-container>\r\n </div>\r\n }\r\n </div>\r\n</div>\r\n\r\n<ng-template #sourceTitleTpl let-source=\"source\">\r\n <div class=\"x-transfer-title\">\r\n <div class=\"x-transfer-title-left\">\r\n @if (source.title && !source.hiddenCheckAll) {\r\n <x-checkbox\r\n class=\"x-transfer-check-all\"\r\n [data]=\"[titleTpl() ? '' : source.title]\"\r\n [(ngModel)]=\"source.checkedAll\"\r\n (ngModelChange)=\"checkedAllChange($event, source)\"\r\n [indeterminate]=\"source.indeterminate\"\r\n single\r\n ></x-checkbox>\r\n }\r\n @if (source.title && source.hiddenCheckAll) {\r\n <span>{{ source.title }}</span>\r\n }\r\n @if (inverse() && type() === 'list') {\r\n <x-link class=\"x-transfer-inverse\" type=\"primary\" (click)=\"onInverse(source)\">{{\r\n 'transfer.inverse' | xI18n\r\n }}</x-link>\r\n }\r\n </div>\r\n <ng-container\r\n *xOutlet=\"titleTpl(); context: { $title: source.title, $checkedCount: source.checkedCount, $count: source.count }\"\r\n ><span class=\"x-transfer-total\">{{ source.checkedCount }} / {{ source.count }}</span></ng-container\r\n >\r\n </div>\r\n @if (search() && type() !== 'table') {\r\n <div class=\"x-transfer-search\">\r\n <x-input\r\n icon=\"fto-search\"\r\n [(ngModel)]=\"source.searchInput\"\r\n (ngModelChange)=\"onSearchInputChange(source)\"\r\n clearable\r\n ></x-input>\r\n </div>\r\n }\r\n</ng-template>\r\n\r\n<ng-template #sourceNodeTpl let-node=\"node\" let-source=\"source\">\r\n <x-checkbox\r\n [data]=\"[{ id: node.id, label: nodeTpl() ? nodeTpl() : labelTpl, node: node }]\"\r\n [disabled]=\"node.disabled\"\r\n [(ngModel)]=\"node.checked\"\r\n (ngModelChange)=\"checkedChange($event, source)\"\r\n single\r\n ></x-checkbox>\r\n <ng-template #labelTpl>\r\n <span x-keyword [text]=\"source.searchInput!\">{{ node.label }}</span>\r\n </ng-template>\r\n</ng-template>\r\n", styles: [".x-transfer{margin:0;padding:0}.x-transfer{display:inline-flex;align-items:center}.x-transfer-title{padding:.25rem .5625rem;display:flex;align-items:center;justify-content:space-between;border:var(--x-border-width) var(--x-border-style) var(--x-border);border-top-left-radius:var(--x-border-radius);border-top-right-radius:var(--x-border-radius);background-color:var(--x-background);color:var(--x-text-300)}.x-transfer-title-left{display:inline-flex;align-items:center}.x-transfer-inverse{margin:0 .5rem}.x-transfer-total{margin-left:.325rem}.x-transfer-box{min-width:12rem}.x-transfer-list{display:flex;flex-direction:column;height:18rem;width:100%;border:var(--x-border-width) var(--x-border-style) var(--x-border);border-top:none;border-bottom-left-radius:var(--x-border-radius);border-bottom-right-radius:var(--x-border-radius);overflow:auto}.x-transfer-tree{padding:0 .125rem}.x-transfer-item{margin:0;padding:.125rem .25rem;border-radius:var(--x-border-radius);display:flex;align-items:center;border:.0625rem dashed transparent;transition:border-color var(--x-animation-duration-base),background-color var(--x-animation-duration-base),color var(--x-animation-duration-base)}.x-transfer-droplist{margin:0;height:100%;padding:.25rem;list-style:none}.x-transfer-droplist.cdk-drop-list-dragging .x-transfer-item:hover{background-color:transparent}.x-transfer-droplist.cdk-drop-list-dragging .x-transfer-item.cdk-drag-placeholder{border-color:var(--x-primary);color:var(--x-primary);background-color:var(--x-background);opacity:.8}.x-transfer-droplist.cdk-drop-list-dragging .x-transfer-item:not(.cdk-drag-placeholder){transition:transform var(--x-animation-duration-base) cubic-bezier(0,0,.2,1)}.x-transfer-buttons{margin:0 1rem;display:flex;flex-direction:column}.x-transfer-buttons>x-button:not(:first-child){margin-top:.5rem}.x-transfer-search{padding:.5rem;border-left:var(--x-border-width) var(--x-border-style) var(--x-border);border-right:var(--x-border-width) var(--x-border-style) var(--x-border)}.x-transfer-search x-input{width:100%}.x-transfer-tree-label{flex:1}.x-transfer-footer{padding:.25rem .5625rem;border:var(--x-border-width) var(--x-border-style) var(--x-border);border-bottom-left-radius:var(--x-border-radius);border-bottom-right-radius:var(--x-border-radius)}.x-transfer-has-footer .x-transfer-list{border-bottom-left-radius:0;border-bottom-right-radius:0;border-bottom:none}body>li.x-transfer-item.cdk-drag-preview{margin:0;padding:.125rem .25rem;border-radius:var(--x-border-radius);display:flex;align-items:center;border:.0625rem dashed transparent;border-color:var(--x-border);color:var(--x-text-400);background-color:var(--x-background-a100);opacity:.9}body>li.x-transfer-item.cdk-drag-animating{transition:transform var(--x-animation-duration-base) cubic-bezier(0,0,.2,1)}\n"], dependencies: [{ kind: "directive", type: NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: DragDropModule }, { kind: "directive", type: i2.CdkDropList, selector: "[cdkDropList], cdk-drop-list", inputs: ["cdkDropListConnectedTo", "cdkDropListData", "cdkDropListOrientation", "id", "cdkDropListLockAxis", "cdkDropListDisabled", "cdkDropListSortingDisabled", "cdkDropListEnterPredicate", "cdkDropListSortPredicate", "cdkDropListAutoScrollDisabled", "cdkDropListAutoScrollStep", "cdkDropListElementContainer", "cdkDropListHasAnchor"], outputs: ["cdkDropListDropped", "cdkDropListEntered", "cdkDropListExited", "cdkDropListSorted"], exportAs: ["cdkDropList"] }, { kind: "directive", type: i2.CdkDropListGroup, selector: "[cdkDropListGroup]", inputs: ["cdkDropListGroupDisabled"], exportAs: ["cdkDropListGroup"] }, { kind: "directive", type: i2.CdkDrag, selector: "[cdkDrag]", inputs: ["cdkDragData", "cdkDragLockAxis", "cdkDragRootElement", "cdkDragBoundary", "cdkDragStartDelay", "cdkDragFreeDragPosition", "cdkDragDisabled", "cdkDragConstrainPosition", "cdkDragPreviewClass", "cdkDragPreviewContainer", "cdkDragScale"], outputs: ["cdkDragStarted", "cdkDragReleased", "cdkDragEnded", "cdkDragEntered", "cdkDragExited", "cdkDragDropped", "cdkDragMoved"], exportAs: ["cdkDrag"] }, { kind: "directive", type: XOutletDirective, selector: "[xOutlet]", inputs: ["xOutletContext", "xOutlet"] }, { kind: "component", type: XCheckboxComponent, selector: "x-checkbox" }, { kind: "component", type: XButtonComponent, selector: "x-button" }, { kind: "component", type: XInputComponent, selector: "x-input" }, { kind: "component", type: XTreeComponent, selector: "x-tree" }, { kind: "component", type: XTableComponent, selector: "x-table" }, { kind: "directive", type: XKeywordDirective, selector: "[x-keyword]" }, { kind: "component", type: XLinkComponent, selector: "x-link" }, { kind: "pipe", type: XI18nPipe, name: "xI18n" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
752
778
|
}
|
|
753
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
779
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.1", ngImport: i0, type: XTransferComponent, decorators: [{
|
|
754
780
|
type: Component,
|
|
755
781
|
args: [{ selector: `${XTransferPrefix}`, imports: [
|
|
756
782
|
NgStyle,
|
|
@@ -770,11 +796,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.1", ngImpor
|
|
|
770
796
|
}], propDecorators: { leftTableCom: [{ type: i0.ViewChild, args: [i0.forwardRef(() => XTableComponent), { isSignal: true }] }], rightTableCom: [{ type: i0.ViewChild, args: [i0.forwardRef(() => XTableComponent), { isSignal: true }] }] } });
|
|
771
797
|
|
|
772
798
|
class XTransferModule {
|
|
773
|
-
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
774
|
-
/** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "
|
|
775
|
-
/** @nocollapse */ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "
|
|
799
|
+
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.1", ngImport: i0, type: XTransferModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
800
|
+
/** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "22.0.1", ngImport: i0, type: XTransferModule, imports: [XTransferComponent], exports: [XTransferComponent] }); }
|
|
801
|
+
/** @nocollapse */ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "22.0.1", ngImport: i0, type: XTransferModule, imports: [XTransferComponent] }); }
|
|
776
802
|
}
|
|
777
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
803
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.1", ngImport: i0, type: XTransferModule, decorators: [{
|
|
778
804
|
type: NgModule,
|
|
779
805
|
args: [{
|
|
780
806
|
exports: [XTransferComponent],
|