@ng-nest/ui 21.0.13 → 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 +197 -118
- 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 +45 -35
- 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
|
@@ -14,112 +14,127 @@ class XFormControlProp extends XProperty {
|
|
|
14
14
|
* @zh_CN 初始启用验证,在输入值都自动开启
|
|
15
15
|
* @en_US Initial enable validation, which is automatically enabled when the input value is
|
|
16
16
|
*/
|
|
17
|
-
this.validator = input(false, { ...(ngDevMode ? { debugName: "validator" } : {}), transform: XToBoolean });
|
|
17
|
+
this.validator = input(false, { ...(ngDevMode ? { debugName: "validator" } : /* istanbul ignore next */ {}), transform: XToBoolean });
|
|
18
18
|
/**
|
|
19
19
|
* @zh_CN 标签
|
|
20
20
|
* @en_US Label
|
|
21
21
|
*/
|
|
22
|
-
this.label = input('',
|
|
22
|
+
this.label = input('', /* @ts-ignore */
|
|
23
|
+
...(ngDevMode ? [{ debugName: "label" }] : /* istanbul ignore next */ []));
|
|
23
24
|
/**
|
|
24
25
|
* @zh_CN 标签宽度
|
|
25
26
|
* @en_US Label width
|
|
26
27
|
*/
|
|
27
|
-
this.labelWidth = input('', { ...(ngDevMode ? { debugName: "labelWidth" } : {}), transform: XToCssPixelValue });
|
|
28
|
+
this.labelWidth = input('', { ...(ngDevMode ? { debugName: "labelWidth" } : /* istanbul ignore next */ {}), transform: XToCssPixelValue });
|
|
28
29
|
/**
|
|
29
30
|
* @zh_CN 标签文字对齐方式
|
|
30
31
|
* @en_US Label text alignment method
|
|
31
32
|
*/
|
|
32
|
-
this.labelAlign = input('start',
|
|
33
|
+
this.labelAlign = input('start', /* @ts-ignore */
|
|
34
|
+
...(ngDevMode ? [{ debugName: "labelAlign" }] : /* istanbul ignore next */ []));
|
|
33
35
|
/**
|
|
34
36
|
* @zh_CN flex 布局下的子元素水平排列方式
|
|
35
37
|
* @en_US The level of sub-element level arrangement under flex layout
|
|
36
38
|
*/
|
|
37
|
-
this.justify = input('start',
|
|
39
|
+
this.justify = input('start', /* @ts-ignore */
|
|
40
|
+
...(ngDevMode ? [{ debugName: "justify" }] : /* istanbul ignore next */ []));
|
|
38
41
|
/**
|
|
39
42
|
* @zh_CN flex 布局下的子元素垂直排列方式
|
|
40
43
|
* @en_US sub-element vertical arrangement method under flex layout
|
|
41
44
|
*/
|
|
42
|
-
this.align = input('start',
|
|
45
|
+
this.align = input('start', /* @ts-ignore */
|
|
46
|
+
...(ngDevMode ? [{ debugName: "align" }] : /* istanbul ignore next */ []));
|
|
43
47
|
/**
|
|
44
48
|
* @zh_CN flex 布局下的子元素排列方向
|
|
45
49
|
* @en_US The direction of the sub-element arrangement under flex layout
|
|
46
50
|
*/
|
|
47
|
-
this.direction = input('column',
|
|
51
|
+
this.direction = input('column', /* @ts-ignore */
|
|
52
|
+
...(ngDevMode ? [{ debugName: "direction" }] : /* istanbul ignore next */ []));
|
|
48
53
|
/**
|
|
49
54
|
* @zh_CN 尺寸
|
|
50
55
|
* @en_US Size
|
|
51
56
|
*/
|
|
52
|
-
this.size = input('medium',
|
|
57
|
+
this.size = input('medium', /* @ts-ignore */
|
|
58
|
+
...(ngDevMode ? [{ debugName: "size" }] : /* istanbul ignore next */ []));
|
|
53
59
|
/**
|
|
54
60
|
* @zh_CN 输入提示信息
|
|
55
61
|
* @en_US Enter prompt information
|
|
56
62
|
*/
|
|
57
|
-
this.placeholder = input('',
|
|
63
|
+
this.placeholder = input('', /* @ts-ignore */
|
|
64
|
+
...(ngDevMode ? [{ debugName: "placeholder" }] : /* istanbul ignore next */ []));
|
|
58
65
|
/**
|
|
59
66
|
* @zh_CN 禁用
|
|
60
67
|
* @en_US Disabled
|
|
61
68
|
*/
|
|
62
|
-
this.disabled = input(false, { ...(ngDevMode ? { debugName: "disabled" } : {}), transform: XToBoolean });
|
|
69
|
+
this.disabled = input(false, { ...(ngDevMode ? { debugName: "disabled" } : /* istanbul ignore next */ {}), transform: XToBoolean });
|
|
63
70
|
/**
|
|
64
71
|
* @zh_CN 必填
|
|
65
72
|
* @en_US Required
|
|
66
73
|
*/
|
|
67
|
-
this.required = input(false, { ...(ngDevMode ? { debugName: "required" } : {}), transform: XToBoolean });
|
|
74
|
+
this.required = input(false, { ...(ngDevMode ? { debugName: "required" } : /* istanbul ignore next */ {}), transform: XToBoolean });
|
|
68
75
|
/**
|
|
69
76
|
* @zh_CN 只读
|
|
70
77
|
* @en_US Readonly
|
|
71
78
|
*/
|
|
72
|
-
this.readonly = input(false, { ...(ngDevMode ? { debugName: "readonly" } : {}), transform: XToBoolean });
|
|
79
|
+
this.readonly = input(false, { ...(ngDevMode ? { debugName: "readonly" } : /* istanbul ignore next */ {}), transform: XToBoolean });
|
|
73
80
|
/**
|
|
74
81
|
* @zh_CN 值模板
|
|
75
82
|
* @en_US Node template
|
|
76
83
|
*/
|
|
77
|
-
this.valueTpl = input(
|
|
84
|
+
this.valueTpl = input(/* @ts-ignore */
|
|
85
|
+
...(ngDevMode ? [undefined, { debugName: "valueTpl" }] : /* istanbul ignore next */ []));
|
|
78
86
|
/**
|
|
79
87
|
* @zh_CN 值模板参数
|
|
80
88
|
* @en_US Node template
|
|
81
89
|
*/
|
|
82
|
-
this.valueTplContext = input(
|
|
90
|
+
this.valueTplContext = input(/* @ts-ignore */
|
|
91
|
+
...(ngDevMode ? [undefined, { debugName: "valueTplContext" }] : /* istanbul ignore next */ []));
|
|
83
92
|
/**
|
|
84
93
|
* @zh_CN 前置标签
|
|
85
94
|
* @en_US Before label
|
|
86
95
|
*/
|
|
87
|
-
this.before = input(
|
|
96
|
+
this.before = input(/* @ts-ignore */
|
|
97
|
+
...(ngDevMode ? [undefined, { debugName: "before" }] : /* istanbul ignore next */ []));
|
|
88
98
|
/**
|
|
89
99
|
* @zh_CN 后置标签
|
|
90
100
|
* @en_US After label
|
|
91
101
|
*/
|
|
92
|
-
this.after = input(
|
|
102
|
+
this.after = input(/* @ts-ignore */
|
|
103
|
+
...(ngDevMode ? [undefined, { debugName: "after" }] : /* istanbul ignore next */ []));
|
|
93
104
|
/**
|
|
94
105
|
* @zh_CN 正则验证规则
|
|
95
106
|
* @en_US Regular verification rules
|
|
96
107
|
*/
|
|
97
|
-
this.pattern = input(null,
|
|
108
|
+
this.pattern = input(null, /* @ts-ignore */
|
|
109
|
+
...(ngDevMode ? [{ debugName: "pattern" }] : /* istanbul ignore next */ []));
|
|
98
110
|
/**
|
|
99
111
|
* @zh_CN 验证不通过提示文字
|
|
100
112
|
* @en_US Verify not pass the prompt text
|
|
101
113
|
*/
|
|
102
|
-
this.message = input('',
|
|
114
|
+
this.message = input('', /* @ts-ignore */
|
|
115
|
+
...(ngDevMode ? [{ debugName: "message" }] : /* istanbul ignore next */ []));
|
|
103
116
|
/**
|
|
104
117
|
* @zh_CN 激活状态
|
|
105
118
|
* @en_US Activation state
|
|
106
119
|
*/
|
|
107
|
-
this.active = model(false,
|
|
120
|
+
this.active = model(false, /* @ts-ignore */
|
|
121
|
+
...(ngDevMode ? [{ debugName: "active" }] : /* istanbul ignore next */ []));
|
|
108
122
|
/**
|
|
109
123
|
* @zh_CN 输入框点击样式
|
|
110
124
|
* @en_US Enter box click style
|
|
111
125
|
*/
|
|
112
|
-
this.pointer = input(false, { ...(ngDevMode ? { debugName: "pointer" } : {}), transform: XToBoolean });
|
|
126
|
+
this.pointer = input(false, { ...(ngDevMode ? { debugName: "pointer" } : /* istanbul ignore next */ {}), transform: XToBoolean });
|
|
113
127
|
/**
|
|
114
128
|
* @zh_CN 输入验证函数
|
|
115
129
|
* @en_US Enter the verification function
|
|
116
130
|
*/
|
|
117
|
-
this.inputValidator = input(
|
|
131
|
+
this.inputValidator = input(/* @ts-ignore */
|
|
132
|
+
...(ngDevMode ? [undefined, { debugName: "inputValidator" }] : /* istanbul ignore next */ []));
|
|
118
133
|
}
|
|
119
|
-
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
120
|
-
/** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "
|
|
134
|
+
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.1", ngImport: i0, type: XFormControlProp, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
135
|
+
/** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "22.0.1", type: XFormControlProp, isStandalone: true, selector: "x-formcontrol-prop", inputs: { validator: { classPropertyName: "validator", publicName: "validator", isSignal: true, isRequired: false, transformFunction: null }, label: { classPropertyName: "label", publicName: "label", isSignal: true, isRequired: false, transformFunction: null }, labelWidth: { classPropertyName: "labelWidth", publicName: "labelWidth", isSignal: true, isRequired: false, transformFunction: null }, labelAlign: { classPropertyName: "labelAlign", publicName: "labelAlign", isSignal: true, isRequired: false, transformFunction: null }, justify: { classPropertyName: "justify", publicName: "justify", isSignal: true, isRequired: false, transformFunction: null }, align: { classPropertyName: "align", publicName: "align", isSignal: true, isRequired: false, transformFunction: null }, direction: { classPropertyName: "direction", publicName: "direction", isSignal: true, isRequired: false, transformFunction: null }, size: { classPropertyName: "size", publicName: "size", isSignal: true, isRequired: false, transformFunction: null }, placeholder: { classPropertyName: "placeholder", publicName: "placeholder", isSignal: true, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null }, required: { classPropertyName: "required", publicName: "required", isSignal: true, isRequired: false, transformFunction: null }, readonly: { classPropertyName: "readonly", publicName: "readonly", isSignal: true, isRequired: false, transformFunction: null }, valueTpl: { classPropertyName: "valueTpl", publicName: "valueTpl", isSignal: true, isRequired: false, transformFunction: null }, valueTplContext: { classPropertyName: "valueTplContext", publicName: "valueTplContext", isSignal: true, isRequired: false, transformFunction: null }, before: { classPropertyName: "before", publicName: "before", isSignal: true, isRequired: false, transformFunction: null }, after: { classPropertyName: "after", publicName: "after", isSignal: true, isRequired: false, transformFunction: null }, pattern: { classPropertyName: "pattern", publicName: "pattern", isSignal: true, isRequired: false, transformFunction: null }, message: { classPropertyName: "message", publicName: "message", isSignal: true, isRequired: false, transformFunction: null }, active: { classPropertyName: "active", publicName: "active", isSignal: true, isRequired: false, transformFunction: null }, pointer: { classPropertyName: "pointer", publicName: "pointer", isSignal: true, isRequired: false, transformFunction: null }, inputValidator: { classPropertyName: "inputValidator", publicName: "inputValidator", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { active: "activeChange" }, usesInheritance: true, ngImport: i0, template: '', isInline: true }); }
|
|
121
136
|
}
|
|
122
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
137
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.1", ngImport: i0, type: XFormControlProp, decorators: [{
|
|
123
138
|
type: Component,
|
|
124
139
|
args: [{ selector: 'x-formcontrol-prop', template: '' }]
|
|
125
140
|
}], propDecorators: { validator: [{ type: i0.Input, args: [{ isSignal: true, alias: "validator", required: false }] }], label: [{ type: i0.Input, args: [{ isSignal: true, alias: "label", required: false }] }], labelWidth: [{ type: i0.Input, args: [{ isSignal: true, alias: "labelWidth", required: false }] }], labelAlign: [{ type: i0.Input, args: [{ isSignal: true, alias: "labelAlign", required: false }] }], justify: [{ type: i0.Input, args: [{ isSignal: true, alias: "justify", required: false }] }], align: [{ type: i0.Input, args: [{ isSignal: true, alias: "align", required: false }] }], direction: [{ type: i0.Input, args: [{ isSignal: true, alias: "direction", required: false }] }], size: [{ type: i0.Input, args: [{ isSignal: true, alias: "size", required: false }] }], placeholder: [{ type: i0.Input, args: [{ isSignal: true, alias: "placeholder", required: false }] }], disabled: [{ type: i0.Input, args: [{ isSignal: true, alias: "disabled", required: false }] }], required: [{ type: i0.Input, args: [{ isSignal: true, alias: "required", required: false }] }], readonly: [{ type: i0.Input, args: [{ isSignal: true, alias: "readonly", required: false }] }], valueTpl: [{ type: i0.Input, args: [{ isSignal: true, alias: "valueTpl", required: false }] }], valueTplContext: [{ type: i0.Input, args: [{ isSignal: true, alias: "valueTplContext", required: false }] }], before: [{ type: i0.Input, args: [{ isSignal: true, alias: "before", required: false }] }], after: [{ type: i0.Input, args: [{ isSignal: true, alias: "after", required: false }] }], pattern: [{ type: i0.Input, args: [{ isSignal: true, alias: "pattern", required: false }] }], message: [{ type: i0.Input, args: [{ isSignal: true, alias: "message", required: false }] }], active: [{ type: i0.Input, args: [{ isSignal: true, alias: "active", required: false }] }, { type: i0.Output, args: ["activeChange"] }], pointer: [{ type: i0.Input, args: [{ isSignal: true, alias: "pointer", required: false }] }], inputValidator: [{ type: i0.Input, args: [{ isSignal: true, alias: "inputValidator", required: false }] }] } });
|
|
@@ -142,7 +157,8 @@ function XFormControlFunction(configName) {
|
|
|
142
157
|
this.invalid = computed(() => {
|
|
143
158
|
return (this.validatorComputed() &&
|
|
144
159
|
((!XIsEmpty(this.value()) && this.invalidPattern()) || this.requiredIsEmpty() || this.invalidInputValidator()));
|
|
145
|
-
},
|
|
160
|
+
}, /* @ts-ignore */
|
|
161
|
+
...(ngDevMode ? [{ debugName: "invalid" }] : /* istanbul ignore next */ []));
|
|
146
162
|
this.invalidPattern = computed(() => {
|
|
147
163
|
const pattern = this.patternComputed();
|
|
148
164
|
if (!this.validatorComputed() || XIsUndefined(pattern) || XIsNull(pattern))
|
|
@@ -152,26 +168,38 @@ function XFormControlFunction(configName) {
|
|
|
152
168
|
result = !new RegExp(pattern).test(this.value());
|
|
153
169
|
}
|
|
154
170
|
return result;
|
|
155
|
-
},
|
|
171
|
+
}, /* @ts-ignore */
|
|
172
|
+
...(ngDevMode ? [{ debugName: "invalidPattern" }] : /* istanbul ignore next */ []));
|
|
156
173
|
this.requiredIsEmpty = computed(() => {
|
|
157
174
|
return this.validatorComputed() && this.requiredComputed() && XIsEmpty(this.value());
|
|
158
|
-
},
|
|
175
|
+
}, /* @ts-ignore */
|
|
176
|
+
...(ngDevMode ? [{ debugName: "requiredIsEmpty" }] : /* istanbul ignore next */ []));
|
|
159
177
|
this.invalidMessage = computed(() => {
|
|
160
178
|
if (!this.validatorComputed())
|
|
161
179
|
return '';
|
|
162
180
|
const message = this.messageComputed();
|
|
163
181
|
return message;
|
|
164
|
-
},
|
|
165
|
-
|
|
182
|
+
}, /* @ts-ignore */
|
|
183
|
+
...(ngDevMode ? [{ debugName: "invalidMessage" }] : /* istanbul ignore next */ []));
|
|
184
|
+
this.value = signal(undefined, /* @ts-ignore */
|
|
185
|
+
...(ngDevMode ? [{ debugName: "value" }] : /* istanbul ignore next */ []));
|
|
166
186
|
this.valueObservable = toObservable(this.value);
|
|
167
|
-
this.validatorSignal = signal(false,
|
|
168
|
-
|
|
169
|
-
this.
|
|
170
|
-
|
|
171
|
-
this.
|
|
172
|
-
|
|
173
|
-
this.
|
|
174
|
-
|
|
187
|
+
this.validatorSignal = signal(false, /* @ts-ignore */
|
|
188
|
+
...(ngDevMode ? [{ debugName: "validatorSignal" }] : /* istanbul ignore next */ []));
|
|
189
|
+
this.disabledSignal = signal(false, /* @ts-ignore */
|
|
190
|
+
...(ngDevMode ? [{ debugName: "disabledSignal" }] : /* istanbul ignore next */ []));
|
|
191
|
+
this.requiredSignal = signal(false, /* @ts-ignore */
|
|
192
|
+
...(ngDevMode ? [{ debugName: "requiredSignal" }] : /* istanbul ignore next */ []));
|
|
193
|
+
this.patternSignal = signal(null, /* @ts-ignore */
|
|
194
|
+
...(ngDevMode ? [{ debugName: "patternSignal" }] : /* istanbul ignore next */ []));
|
|
195
|
+
this.messageSignal = signal('', /* @ts-ignore */
|
|
196
|
+
...(ngDevMode ? [{ debugName: "messageSignal" }] : /* istanbul ignore next */ []));
|
|
197
|
+
this.requiredComputed = computed(() => this.requiredSignal() || this.required(), /* @ts-ignore */
|
|
198
|
+
...(ngDevMode ? [{ debugName: "requiredComputed" }] : /* istanbul ignore next */ []));
|
|
199
|
+
this.disabledComputed = computed(() => this.disabledSignal() || this.disabled(), /* @ts-ignore */
|
|
200
|
+
...(ngDevMode ? [{ debugName: "disabledComputed" }] : /* istanbul ignore next */ []));
|
|
201
|
+
this.validatorComputed = computed(() => this.validatorSignal() || this.validator(), /* @ts-ignore */
|
|
202
|
+
...(ngDevMode ? [{ debugName: "validatorComputed" }] : /* istanbul ignore next */ []));
|
|
175
203
|
this.patternComputed = computed(() => {
|
|
176
204
|
const pattern = this.pattern();
|
|
177
205
|
if (Array.isArray(pattern) && pattern.length === 0) {
|
|
@@ -193,14 +221,17 @@ function XFormControlFunction(configName) {
|
|
|
193
221
|
else {
|
|
194
222
|
return this.patternSignal();
|
|
195
223
|
}
|
|
196
|
-
},
|
|
224
|
+
}, /* @ts-ignore */
|
|
225
|
+
...(ngDevMode ? [{ debugName: "patternComputed" }] : /* istanbul ignore next */ []));
|
|
197
226
|
this.messageComputed = computed(() => {
|
|
198
227
|
if (XIsEmpty(this.messageSignal()))
|
|
199
228
|
return this.message();
|
|
200
229
|
else
|
|
201
230
|
return this.messageSignal();
|
|
202
|
-
},
|
|
203
|
-
|
|
231
|
+
}, /* @ts-ignore */
|
|
232
|
+
...(ngDevMode ? [{ debugName: "messageComputed" }] : /* istanbul ignore next */ []));
|
|
233
|
+
this.invalidInputValidator = signal(false, /* @ts-ignore */
|
|
234
|
+
...(ngDevMode ? [{ debugName: "invalidInputValidator" }] : /* istanbul ignore next */ []));
|
|
204
235
|
}
|
|
205
236
|
writeValue(value) {
|
|
206
237
|
this.value.set(value);
|
|
@@ -221,11 +252,11 @@ function XFormControlFunction(configName) {
|
|
|
221
252
|
}
|
|
222
253
|
|
|
223
254
|
class XBaseFormModule {
|
|
224
|
-
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
225
|
-
/** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "
|
|
226
|
-
/** @nocollapse */ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "
|
|
255
|
+
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.1", ngImport: i0, type: XBaseFormModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
256
|
+
/** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "22.0.1", ngImport: i0, type: XBaseFormModule }); }
|
|
257
|
+
/** @nocollapse */ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "22.0.1", ngImport: i0, type: XBaseFormModule }); }
|
|
227
258
|
}
|
|
228
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
259
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.1", ngImport: i0, type: XBaseFormModule, decorators: [{
|
|
229
260
|
type: NgModule,
|
|
230
261
|
args: [{
|
|
231
262
|
imports: [],
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ng-nest-ui-base-form.mjs","sources":["../../../../lib/ng-nest/ui/base-form/base-form.property.ts","../../../../lib/ng-nest/ui/base-form/base-form.component.ts","../../../../lib/ng-nest/ui/base-form/base-form.module.ts","../../../../lib/ng-nest/ui/base-form/ng-nest-ui-base-form.ts"],"sourcesContent":["import { Component, TemplateRef, input, model } from '@angular/core';\r\nimport {\r\n XAlign,\r\n XBoolean,\r\n XDirection,\r\n XJustify,\r\n XNumber,\r\n XProperty,\r\n XSize,\r\n XTemplate,\r\n XToBoolean,\r\n XToCssPixelValue\r\n} from '@ng-nest/ui/core';\r\n\r\n/**\r\n * 表单对象共有的参数\r\n */\r\nexport interface XFormOption {\r\n /**\r\n * 标签\r\n */\r\n label?: any;\r\n /**\r\n * 标签宽度\r\n */\r\n labelWidth?: string;\r\n /**\r\n * 标签文字对齐方式\r\n */\r\n labelAlign?: XAlign;\r\n /**\r\n * flex 布局下的子元素水平排列方式\r\n */\r\n justify?: XJustify;\r\n /**\r\n * flex 布局下的子元素垂直排列方式\r\n */\r\n align?: XAlign;\r\n /**\r\n * flex 布局下的子元素排列方向\r\n */\r\n direction?: XDirection;\r\n /**\r\n * 尺寸\r\n */\r\n size?: XSize;\r\n /**\r\n * 输入提示信息\r\n */\r\n placeholder?: string | string[];\r\n /**\r\n * 禁用\r\n */\r\n disabled?: boolean;\r\n /**\r\n * 必填\r\n */\r\n required?: boolean;\r\n /**\r\n * 正则验证规则\r\n */\r\n pattern?: RegExp;\r\n /**\r\n * 验证不通过提示文字\r\n */\r\n message?: string;\r\n /**\r\n * 激活状态\r\n */\r\n active?: boolean;\r\n /**\r\n * 输入框点击样式\r\n */\r\n pointer?: boolean;\r\n /**\r\n * 输入验证函数\r\n */\r\n inputValidator?: (value: any) => boolean;\r\n}\r\n\r\n/**\r\n * 表单对象共有的参数\r\n */\r\n@Component({ selector: 'x-formcontrol-prop', template: '' })\r\nexport class XFormControlProp extends XProperty {\r\n /**\r\n * @zh_CN 初始启用验证,在输入值都自动开启\r\n * @en_US Initial enable validation, which is automatically enabled when the input value is\r\n */\r\n readonly validator = input<boolean, XBoolean>(false, { transform: XToBoolean });\r\n /**\r\n * @zh_CN 标签\r\n * @en_US Label\r\n */\r\n readonly label = input<XTemplate>('');\r\n /**\r\n * @zh_CN 标签宽度\r\n * @en_US Label width\r\n */\r\n readonly labelWidth = input<string, XNumber>('', { transform: XToCssPixelValue });\r\n /**\r\n * @zh_CN 标签文字对齐方式\r\n * @en_US Label text alignment method\r\n */\r\n readonly labelAlign = input<XAlign>('start');\r\n /**\r\n * @zh_CN flex 布局下的子元素水平排列方式\r\n * @en_US The level of sub-element level arrangement under flex layout\r\n */\r\n readonly justify = input<XJustify>('start');\r\n /**\r\n * @zh_CN flex 布局下的子元素垂直排列方式\r\n * @en_US sub-element vertical arrangement method under flex layout\r\n */\r\n readonly align = input<XAlign>('start');\r\n /**\r\n * @zh_CN flex 布局下的子元素排列方向\r\n * @en_US The direction of the sub-element arrangement under flex layout\r\n */\r\n readonly direction = input<XDirection>('column');\r\n /**\r\n * @zh_CN 尺寸\r\n * @en_US Size\r\n */\r\n readonly size = input<XSize>('medium');\r\n /**\r\n * @zh_CN 输入提示信息\r\n * @en_US Enter prompt information\r\n */\r\n readonly placeholder = input<string | string[]>('');\r\n /**\r\n * @zh_CN 禁用\r\n * @en_US Disabled\r\n */\r\n readonly disabled = input<boolean, XBoolean>(false, { transform: XToBoolean });\r\n /**\r\n * @zh_CN 必填\r\n * @en_US Required\r\n */\r\n readonly required = input<boolean, XBoolean>(false, { transform: XToBoolean });\r\n /**\r\n * @zh_CN 只读\r\n * @en_US Readonly\r\n */\r\n readonly readonly = input<boolean, XBoolean>(false, { transform: XToBoolean });\r\n /**\r\n * @zh_CN 值模板\r\n * @en_US Node template\r\n */\r\n readonly valueTpl = input<TemplateRef<any>>();\r\n /**\r\n * @zh_CN 值模板参数\r\n * @en_US Node template\r\n */\r\n readonly valueTplContext = input();\r\n /**\r\n * @zh_CN 前置标签\r\n * @en_US Before label\r\n */\r\n readonly before = input<XTemplate>();\r\n /**\r\n * @zh_CN 后置标签\r\n * @en_US After label\r\n */\r\n readonly after = input<XTemplate>();\r\n /**\r\n * @zh_CN 正则验证规则\r\n * @en_US Regular verification rules\r\n */\r\n readonly pattern = input<RegExp | null>(null);\r\n /**\r\n * @zh_CN 验证不通过提示文字\r\n * @en_US Verify not pass the prompt text\r\n */\r\n readonly message = input<string>('');\r\n /**\r\n * @zh_CN 激活状态\r\n * @en_US Activation state\r\n */\r\n readonly active = model<boolean>(false);\r\n /**\r\n * @zh_CN 输入框点击样式\r\n * @en_US Enter box click style\r\n */\r\n readonly pointer = input<boolean, XBoolean>(false, { transform: XToBoolean });\r\n /**\r\n * @zh_CN 输入验证函数\r\n * @en_US Enter the verification function\r\n */\r\n readonly inputValidator = input<(value: any) => boolean>();\r\n}\r\n","import {\r\n AbstractControl,\r\n ControlValueAccessor,\r\n NG_VALUE_ACCESSOR,\r\n ValidationErrors,\r\n ValidatorFn\r\n} from '@angular/forms';\r\nimport { ChangeDetectorRef, computed, forwardRef, inject, signal, Type } from '@angular/core';\r\nimport { XIsEmpty, XIsUndefined, XComponentConfigKey, XConfigService, XIsNull } from '@ng-nest/ui/core';\r\nimport { XFormControlProp } from './base-form.property';\r\nimport { toObservable } from '@angular/core/rxjs-interop';\r\n\r\nexport function XValueAccessor<T>(component: Type<T>) {\r\n return { provide: NG_VALUE_ACCESSOR, useExisting: forwardRef(() => component), multi: true };\r\n}\r\n\r\nexport function XFormInputValidator(func: (value: any) => boolean): ValidatorFn {\r\n return (control: AbstractControl): ValidationErrors | null => {\r\n const invalid = func ? !func(control.value) : null;\r\n return invalid ? { inputValidator: true } : null;\r\n };\r\n}\r\n\r\nexport function XFormControlFunction<C extends XComponentConfigKey>(configName: C) {\r\n return class XFormControlFun extends XFormControlProp implements ControlValueAccessor {\r\n config = inject(XConfigService).getConfigForComponent(configName);\r\n cdr = inject(ChangeDetectorRef);\r\n invalid = computed(() => {\r\n return (\r\n this.validatorComputed() &&\r\n ((!XIsEmpty(this.value()) && this.invalidPattern()) || this.requiredIsEmpty() || this.invalidInputValidator())\r\n );\r\n });\r\n invalidPattern = computed(() => {\r\n const pattern = this.patternComputed();\r\n if (!this.validatorComputed() || XIsUndefined(pattern) || XIsNull(pattern)) return false;\r\n let result = false;\r\n\r\n if (pattern && pattern !== null) {\r\n result = !new RegExp(pattern as RegExp).test(this.value() as any);\r\n }\r\n\r\n return result;\r\n });\r\n requiredIsEmpty = computed(() => {\r\n return this.validatorComputed() && this.requiredComputed() && XIsEmpty(this.value());\r\n });\r\n invalidMessage = computed(() => {\r\n if (!this.validatorComputed()) return '';\r\n const message = this.messageComputed();\r\n return message as string;\r\n });\r\n value = signal<any | undefined>(undefined);\r\n valueObservable = toObservable(this.value);\r\n validatorSignal = signal(false);\r\n disabledSignal = signal(false);\r\n requiredSignal = signal(false);\r\n patternSignal = signal<any>(null);\r\n messageSignal = signal<string>('');\r\n\r\n requiredComputed = computed(() => this.requiredSignal() || this.required());\r\n disabledComputed = computed(() => this.disabledSignal() || this.disabled());\r\n validatorComputed = computed(() => this.validatorSignal() || this.validator());\r\n patternComputed = computed(() => {\r\n const pattern = this.pattern();\r\n\r\n if (Array.isArray(pattern) && pattern.length === 0) {\r\n return null;\r\n }\r\n\r\n if (XIsEmpty(this.patternSignal())) {\r\n if (Array.isArray(pattern)) {\r\n if (pattern.length === 1) {\r\n return pattern[0];\r\n } else if (pattern.length > 1) {\r\n const sources = pattern.map((regex) => `(${regex.source})`);\r\n const combinedPattern = sources.join('|');\r\n return new RegExp(combinedPattern);\r\n }\r\n }\r\n return pattern;\r\n } else {\r\n return this.patternSignal();\r\n }\r\n });\r\n messageComputed = computed(() => {\r\n if (XIsEmpty(this.messageSignal())) return this.message();\r\n else return this.messageSignal();\r\n });\r\n\r\n invalidInputValidator = signal(false);\r\n onChange!: (value: any) => void;\r\n onTouched!: () => void;\r\n writeValue(value: any): void {\r\n this.value.set(value);\r\n }\r\n registerOnChange(fn: (value: any) => void): void {\r\n this.onChange = fn;\r\n }\r\n registerOnTouched(fn: () => void): void {\r\n this.onTouched = fn;\r\n }\r\n setDisabledState(disabled: boolean) {\r\n this.disabledSignal.set(disabled);\r\n }\r\n formControlValidator() {\r\n this.validatorSignal.set(true);\r\n }\r\n };\r\n}\r\n","import { NgModule } from '@angular/core';\r\n\r\n@NgModule({\r\n imports: [],\r\n exports: []\r\n})\r\nexport class XBaseFormModule {}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ng-nest-ui-base-form.mjs","sources":["../../../../lib/ng-nest/ui/base-form/base-form.property.ts","../../../../lib/ng-nest/ui/base-form/base-form.component.ts","../../../../lib/ng-nest/ui/base-form/base-form.module.ts","../../../../lib/ng-nest/ui/base-form/ng-nest-ui-base-form.ts"],"sourcesContent":["import { Component, TemplateRef, input, model } from '@angular/core';\r\nimport {\r\n XAlign,\r\n XBoolean,\r\n XDirection,\r\n XJustify,\r\n XNumber,\r\n XProperty,\r\n XSize,\r\n XTemplate,\r\n XToBoolean,\r\n XToCssPixelValue\r\n} from '@ng-nest/ui/core';\r\n\r\n/**\r\n * 表单对象共有的参数\r\n */\r\nexport interface XFormOption {\r\n /**\r\n * 标签\r\n */\r\n label?: any;\r\n /**\r\n * 标签宽度\r\n */\r\n labelWidth?: string;\r\n /**\r\n * 标签文字对齐方式\r\n */\r\n labelAlign?: XAlign;\r\n /**\r\n * flex 布局下的子元素水平排列方式\r\n */\r\n justify?: XJustify;\r\n /**\r\n * flex 布局下的子元素垂直排列方式\r\n */\r\n align?: XAlign;\r\n /**\r\n * flex 布局下的子元素排列方向\r\n */\r\n direction?: XDirection;\r\n /**\r\n * 尺寸\r\n */\r\n size?: XSize;\r\n /**\r\n * 输入提示信息\r\n */\r\n placeholder?: string | string[];\r\n /**\r\n * 禁用\r\n */\r\n disabled?: boolean;\r\n /**\r\n * 必填\r\n */\r\n required?: boolean;\r\n /**\r\n * 正则验证规则\r\n */\r\n pattern?: RegExp;\r\n /**\r\n * 验证不通过提示文字\r\n */\r\n message?: string;\r\n /**\r\n * 激活状态\r\n */\r\n active?: boolean;\r\n /**\r\n * 输入框点击样式\r\n */\r\n pointer?: boolean;\r\n /**\r\n * 输入验证函数\r\n */\r\n inputValidator?: (value: any) => boolean;\r\n}\r\n\r\n/**\r\n * 表单对象共有的参数\r\n */\r\n@Component({ selector: 'x-formcontrol-prop', template: '' })\r\nexport class XFormControlProp extends XProperty {\r\n /**\r\n * @zh_CN 初始启用验证,在输入值都自动开启\r\n * @en_US Initial enable validation, which is automatically enabled when the input value is\r\n */\r\n readonly validator = input<boolean, XBoolean>(false, { transform: XToBoolean });\r\n /**\r\n * @zh_CN 标签\r\n * @en_US Label\r\n */\r\n readonly label = input<XTemplate>('');\r\n /**\r\n * @zh_CN 标签宽度\r\n * @en_US Label width\r\n */\r\n readonly labelWidth = input<string, XNumber>('', { transform: XToCssPixelValue });\r\n /**\r\n * @zh_CN 标签文字对齐方式\r\n * @en_US Label text alignment method\r\n */\r\n readonly labelAlign = input<XAlign>('start');\r\n /**\r\n * @zh_CN flex 布局下的子元素水平排列方式\r\n * @en_US The level of sub-element level arrangement under flex layout\r\n */\r\n readonly justify = input<XJustify>('start');\r\n /**\r\n * @zh_CN flex 布局下的子元素垂直排列方式\r\n * @en_US sub-element vertical arrangement method under flex layout\r\n */\r\n readonly align = input<XAlign>('start');\r\n /**\r\n * @zh_CN flex 布局下的子元素排列方向\r\n * @en_US The direction of the sub-element arrangement under flex layout\r\n */\r\n readonly direction = input<XDirection>('column');\r\n /**\r\n * @zh_CN 尺寸\r\n * @en_US Size\r\n */\r\n readonly size = input<XSize>('medium');\r\n /**\r\n * @zh_CN 输入提示信息\r\n * @en_US Enter prompt information\r\n */\r\n readonly placeholder = input<string | string[]>('');\r\n /**\r\n * @zh_CN 禁用\r\n * @en_US Disabled\r\n */\r\n readonly disabled = input<boolean, XBoolean>(false, { transform: XToBoolean });\r\n /**\r\n * @zh_CN 必填\r\n * @en_US Required\r\n */\r\n readonly required = input<boolean, XBoolean>(false, { transform: XToBoolean });\r\n /**\r\n * @zh_CN 只读\r\n * @en_US Readonly\r\n */\r\n readonly readonly = input<boolean, XBoolean>(false, { transform: XToBoolean });\r\n /**\r\n * @zh_CN 值模板\r\n * @en_US Node template\r\n */\r\n readonly valueTpl = input<TemplateRef<any>>();\r\n /**\r\n * @zh_CN 值模板参数\r\n * @en_US Node template\r\n */\r\n readonly valueTplContext = input();\r\n /**\r\n * @zh_CN 前置标签\r\n * @en_US Before label\r\n */\r\n readonly before = input<XTemplate>();\r\n /**\r\n * @zh_CN 后置标签\r\n * @en_US After label\r\n */\r\n readonly after = input<XTemplate>();\r\n /**\r\n * @zh_CN 正则验证规则\r\n * @en_US Regular verification rules\r\n */\r\n readonly pattern = input<RegExp | null>(null);\r\n /**\r\n * @zh_CN 验证不通过提示文字\r\n * @en_US Verify not pass the prompt text\r\n */\r\n readonly message = input<string>('');\r\n /**\r\n * @zh_CN 激活状态\r\n * @en_US Activation state\r\n */\r\n readonly active = model<boolean>(false);\r\n /**\r\n * @zh_CN 输入框点击样式\r\n * @en_US Enter box click style\r\n */\r\n readonly pointer = input<boolean, XBoolean>(false, { transform: XToBoolean });\r\n /**\r\n * @zh_CN 输入验证函数\r\n * @en_US Enter the verification function\r\n */\r\n readonly inputValidator = input<(value: any) => boolean>();\r\n}\r\n","import {\r\n AbstractControl,\r\n ControlValueAccessor,\r\n NG_VALUE_ACCESSOR,\r\n ValidationErrors,\r\n ValidatorFn\r\n} from '@angular/forms';\r\nimport { ChangeDetectorRef, computed, forwardRef, inject, signal, Type } from '@angular/core';\r\nimport { XIsEmpty, XIsUndefined, XComponentConfigKey, XConfigService, XIsNull } from '@ng-nest/ui/core';\r\nimport { XFormControlProp } from './base-form.property';\r\nimport { toObservable } from '@angular/core/rxjs-interop';\r\n\r\nexport function XValueAccessor<T>(component: Type<T>) {\r\n return { provide: NG_VALUE_ACCESSOR, useExisting: forwardRef(() => component), multi: true };\r\n}\r\n\r\nexport function XFormInputValidator(func: (value: any) => boolean): ValidatorFn {\r\n return (control: AbstractControl): ValidationErrors | null => {\r\n const invalid = func ? !func(control.value) : null;\r\n return invalid ? { inputValidator: true } : null;\r\n };\r\n}\r\n\r\nexport function XFormControlFunction<C extends XComponentConfigKey>(configName: C) {\r\n return class XFormControlFun extends XFormControlProp implements ControlValueAccessor {\r\n config = inject(XConfigService).getConfigForComponent(configName);\r\n cdr = inject(ChangeDetectorRef);\r\n invalid = computed(() => {\r\n return (\r\n this.validatorComputed() &&\r\n ((!XIsEmpty(this.value()) && this.invalidPattern()) || this.requiredIsEmpty() || this.invalidInputValidator())\r\n );\r\n });\r\n invalidPattern = computed(() => {\r\n const pattern = this.patternComputed();\r\n if (!this.validatorComputed() || XIsUndefined(pattern) || XIsNull(pattern)) return false;\r\n let result = false;\r\n\r\n if (pattern && pattern !== null) {\r\n result = !new RegExp(pattern as RegExp).test(this.value() as any);\r\n }\r\n\r\n return result;\r\n });\r\n requiredIsEmpty = computed(() => {\r\n return this.validatorComputed() && this.requiredComputed() && XIsEmpty(this.value());\r\n });\r\n invalidMessage = computed(() => {\r\n if (!this.validatorComputed()) return '';\r\n const message = this.messageComputed();\r\n return message as string;\r\n });\r\n value = signal<any | undefined>(undefined);\r\n valueObservable = toObservable(this.value);\r\n validatorSignal = signal(false);\r\n disabledSignal = signal(false);\r\n requiredSignal = signal(false);\r\n patternSignal = signal<any>(null);\r\n messageSignal = signal<string>('');\r\n\r\n requiredComputed = computed(() => this.requiredSignal() || this.required());\r\n disabledComputed = computed(() => this.disabledSignal() || this.disabled());\r\n validatorComputed = computed(() => this.validatorSignal() || this.validator());\r\n patternComputed = computed(() => {\r\n const pattern = this.pattern();\r\n\r\n if (Array.isArray(pattern) && pattern.length === 0) {\r\n return null;\r\n }\r\n\r\n if (XIsEmpty(this.patternSignal())) {\r\n if (Array.isArray(pattern)) {\r\n if (pattern.length === 1) {\r\n return pattern[0];\r\n } else if (pattern.length > 1) {\r\n const sources = pattern.map((regex) => `(${regex.source})`);\r\n const combinedPattern = sources.join('|');\r\n return new RegExp(combinedPattern);\r\n }\r\n }\r\n return pattern;\r\n } else {\r\n return this.patternSignal();\r\n }\r\n });\r\n messageComputed = computed(() => {\r\n if (XIsEmpty(this.messageSignal())) return this.message();\r\n else return this.messageSignal();\r\n });\r\n\r\n invalidInputValidator = signal(false);\r\n onChange!: (value: any) => void;\r\n onTouched!: () => void;\r\n writeValue(value: any): void {\r\n this.value.set(value);\r\n }\r\n registerOnChange(fn: (value: any) => void): void {\r\n this.onChange = fn;\r\n }\r\n registerOnTouched(fn: () => void): void {\r\n this.onTouched = fn;\r\n }\r\n setDisabledState(disabled: boolean) {\r\n this.disabledSignal.set(disabled);\r\n }\r\n formControlValidator() {\r\n this.validatorSignal.set(true);\r\n }\r\n };\r\n}\r\n","import { NgModule } from '@angular/core';\r\n\r\n@NgModule({\r\n imports: [],\r\n exports: []\r\n})\r\nexport class XBaseFormModule {}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
|