@sdcorejs/angular 20.0.9 → 20.0.11
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/README.md +270 -140
- package/assets/STYLE-GUIDE.md +2 -2
- package/assets/scss/core/_inline-edit.scss +1 -1
- package/assets/scss/core/form.scss +1 -1
- package/assets/scss/core/utilities/_grid.scss +25 -19
- package/assets/scss/themes/default.scss +2 -2
- package/components/badge/index.d.ts +3 -14
- package/components/button/index.d.ts +6 -4
- package/components/document-builder/index.d.ts +2 -2
- package/components/form-generic/index.d.ts +45 -23
- package/components/import-excel/index.d.ts +2 -2
- package/components/inform/index.d.ts +2 -8
- package/components/mini-editor/index.d.ts +4 -4
- package/components/modal/index.d.ts +1 -1
- package/components/query-builder/index.d.ts +7 -7
- package/components/tab-router/index.d.ts +3 -3
- package/components/table/index.d.ts +12 -10
- package/components/tree/index.d.ts +3 -2
- package/components/view/index.d.ts +1 -1
- package/fesm2022/sdcorejs-angular-components-anchor.mjs +20 -24
- package/fesm2022/sdcorejs-angular-components-anchor.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-components-autoid-inspector.mjs +4 -5
- package/fesm2022/sdcorejs-angular-components-autoid-inspector.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-components-avatar.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-components-badge.mjs +14 -13
- package/fesm2022/sdcorejs-angular-components-badge.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-components-button.mjs +19 -21
- package/fesm2022/sdcorejs-angular-components-button.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-components-chart.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-components-ckeditor-styles.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-components-code-editor.mjs +5 -6
- package/fesm2022/sdcorejs-angular-components-code-editor.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-components-document-builder.mjs +17 -26
- package/fesm2022/sdcorejs-angular-components-document-builder.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-components-editor.mjs +11 -7
- package/fesm2022/sdcorejs-angular-components-editor.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-components-form-generic.mjs +716 -437
- package/fesm2022/sdcorejs-angular-components-form-generic.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-components-history.mjs +2 -2
- package/fesm2022/sdcorejs-angular-components-history.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-components-import-excel.mjs +38 -23
- package/fesm2022/sdcorejs-angular-components-import-excel.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-components-inform.mjs +5 -16
- package/fesm2022/sdcorejs-angular-components-inform.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-components-mini-editor.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-components-modal-resizable.mjs +5 -6
- package/fesm2022/sdcorejs-angular-components-modal-resizable.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-components-modal.mjs +28 -18
- package/fesm2022/sdcorejs-angular-components-modal.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-components-operator.mjs +1 -1
- package/fesm2022/sdcorejs-angular-components-operator.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-components-org-chart.mjs +4 -5
- package/fesm2022/sdcorejs-angular-components-org-chart.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-components-preview.mjs +40 -37
- package/fesm2022/sdcorejs-angular-components-preview.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-components-query-bar.mjs +38 -55
- package/fesm2022/sdcorejs-angular-components-query-bar.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-components-query-builder.mjs +5 -7
- package/fesm2022/sdcorejs-angular-components-query-builder.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-components-quick-action.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-components-section.mjs +3 -5
- package/fesm2022/sdcorejs-angular-components-section.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-components-side-drawer.mjs +6 -7
- package/fesm2022/sdcorejs-angular-components-side-drawer.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-components-splitter.mjs +5 -5
- package/fesm2022/sdcorejs-angular-components-splitter.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-components-stepper.mjs +3 -4
- package/fesm2022/sdcorejs-angular-components-stepper.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-components-tab-router.mjs +36 -37
- package/fesm2022/sdcorejs-angular-components-tab-router.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-components-tab.mjs +3 -4
- package/fesm2022/sdcorejs-angular-components-tab.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-components-table.mjs +80 -102
- package/fesm2022/sdcorejs-angular-components-table.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-components-tree.mjs +6 -8
- package/fesm2022/sdcorejs-angular-components-tree.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-components-upload-file.mjs +14 -15
- package/fesm2022/sdcorejs-angular-components-upload-file.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-components-view.mjs +3 -9
- package/fesm2022/sdcorejs-angular-components-view.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-configurations.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-directives.mjs +2 -7
- package/fesm2022/sdcorejs-angular-directives.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-forms-autocomplete.mjs +5 -10
- package/fesm2022/sdcorejs-angular-forms-autocomplete.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-forms-checkbox.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-forms-chip-calendar.mjs +9 -11
- package/fesm2022/sdcorejs-angular-forms-chip-calendar.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-forms-chip.mjs +7 -9
- package/fesm2022/sdcorejs-angular-forms-chip.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-forms-date-range.mjs +8 -12
- package/fesm2022/sdcorejs-angular-forms-date-range.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-forms-date.mjs +9 -13
- package/fesm2022/sdcorejs-angular-forms-date.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-forms-datetime.mjs +8 -14
- package/fesm2022/sdcorejs-angular-forms-datetime.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-forms-inline-text.mjs +4 -5
- package/fesm2022/sdcorejs-angular-forms-inline-text.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-forms-input-color.mjs +4 -4
- package/fesm2022/sdcorejs-angular-forms-input-color.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-forms-input-number.mjs +6 -8
- package/fesm2022/sdcorejs-angular-forms-input-number.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-forms-input.mjs +5 -7
- package/fesm2022/sdcorejs-angular-forms-input.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-forms-label.mjs +4 -6
- package/fesm2022/sdcorejs-angular-forms-label.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-forms-models.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-forms-radio.mjs +12 -4
- package/fesm2022/sdcorejs-angular-forms-radio.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-forms-select.mjs +51 -22
- package/fesm2022/sdcorejs-angular-forms-select.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-forms-switch.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-forms-textarea.mjs +8 -10
- package/fesm2022/sdcorejs-angular-forms-textarea.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-handlers.mjs +3 -6
- package/fesm2022/sdcorejs-angular-handlers.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-i18n.mjs +11 -7
- package/fesm2022/sdcorejs-angular-i18n.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-interceptors.mjs +0 -2
- package/fesm2022/sdcorejs-angular-interceptors.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-modules-auth.mjs +14 -38
- package/fesm2022/sdcorejs-angular-modules-auth.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-modules-authom.mjs +14 -14
- package/fesm2022/sdcorejs-angular-modules-authom.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-modules-icon.mjs +523 -0
- package/fesm2022/sdcorejs-angular-modules-icon.mjs.map +1 -0
- package/fesm2022/sdcorejs-angular-modules-keycloak.mjs +22 -11
- package/fesm2022/sdcorejs-angular-modules-keycloak.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-modules-layout.mjs +53 -52
- package/fesm2022/sdcorejs-angular-modules-layout.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-modules-permission.mjs +5 -12
- package/fesm2022/sdcorejs-angular-modules-permission.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-modules.mjs +1 -0
- package/fesm2022/sdcorejs-angular-modules.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-pipes.mjs +71 -17
- package/fesm2022/sdcorejs-angular-pipes.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-services-api.mjs +0 -2
- package/fesm2022/sdcorejs-angular-services-api.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-services-cache.mjs +5 -11
- package/fesm2022/sdcorejs-angular-services-cache.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-services-confirm.mjs +19 -25
- package/fesm2022/sdcorejs-angular-services-confirm.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-services-docx.mjs +2 -8
- package/fesm2022/sdcorejs-angular-services-docx.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-services-excel.mjs +24 -16
- package/fesm2022/sdcorejs-angular-services-excel.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-services-license.mjs +5 -12
- package/fesm2022/sdcorejs-angular-services-license.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-services-notify.mjs +70 -87
- package/fesm2022/sdcorejs-angular-services-notify.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-services-storage.mjs +6 -15
- package/fesm2022/sdcorejs-angular-services-storage.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-utilities-data-state.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-utilities-extensions.mjs +47 -5
- package/fesm2022/sdcorejs-angular-utilities-extensions.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-utilities-models.mjs +21 -5
- package/fesm2022/sdcorejs-angular-utilities-models.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular.mjs.map +1 -1
- package/forms/chip/index.d.ts +2 -2
- package/forms/chip-calendar/index.d.ts +2 -2
- package/forms/input-color/index.d.ts +2 -1
- package/forms/select/index.d.ts +10 -2
- package/modules/auth/index.d.ts +7 -9
- package/modules/icon/index.d.ts +191 -0
- package/modules/index.d.ts +1 -0
- package/modules/permission/index.d.ts +5 -6
- package/package.json +7 -2
- package/pipes/index.d.ts +22 -4
- package/services/confirm/index.d.ts +3 -3
- package/services/license/index.d.ts +2 -3
- package/services/notify/index.d.ts +4 -5
- package/services/storage/index.d.ts +2 -3
- package/utilities/extensions/index.d.ts +9 -1
- package/utilities/models/index.d.ts +6 -4
|
@@ -1,11 +1,13 @@
|
|
|
1
|
+
@use "sass:math";
|
|
2
|
+
|
|
1
3
|
// --------------------------------------------------------------------------
|
|
2
|
-
// Grid
|
|
3
|
-
//
|
|
4
|
-
//
|
|
4
|
+
// Grid - row/col 12-column flexbox + native CSS Grid container
|
|
5
|
+
// Pure CSS Flexbox / CSS Grid, with no external framework dependency.
|
|
6
|
+
// Breakpoint convention (sm/md/lg/xl) matches Bootstrap to ease host migration.
|
|
5
7
|
// --------------------------------------------------------------------------
|
|
6
8
|
|
|
7
9
|
// --------------------------------------------------------------------------
|
|
8
|
-
// 1. Flexbox row/col
|
|
10
|
+
// 1. Flexbox row/col (.row, .col-{1-12})
|
|
9
11
|
// --------------------------------------------------------------------------
|
|
10
12
|
$grid-columns: 12;
|
|
11
13
|
$grid-gutter: 16px;
|
|
@@ -45,13 +47,15 @@ $grid-gutter: 16px;
|
|
|
45
47
|
> * { padding-left: 2px; padding-right: 2px; }
|
|
46
48
|
}
|
|
47
49
|
|
|
48
|
-
// .col-1
|
|
50
|
+
// .col-1 ... .col-12
|
|
49
51
|
@for $i from 1 through $grid-columns {
|
|
52
|
+
$col-size: math.percentage(math.div($i, $grid-columns));
|
|
53
|
+
|
|
50
54
|
.col-#{$i} {
|
|
51
55
|
box-sizing: border-box;
|
|
52
|
-
width:
|
|
53
|
-
flex: 0 0
|
|
54
|
-
max-width:
|
|
56
|
+
width: $col-size;
|
|
57
|
+
flex: 0 0 $col-size;
|
|
58
|
+
max-width: $col-size;
|
|
55
59
|
padding-left: calc($grid-gutter / 2);
|
|
56
60
|
padding-right: calc($grid-gutter / 2);
|
|
57
61
|
}
|
|
@@ -65,12 +69,12 @@ $grid-gutter: 16px;
|
|
|
65
69
|
|
|
66
70
|
// --------------------------------------------------------------------------
|
|
67
71
|
// 1b. Responsive columns
|
|
68
|
-
// col-sm-{1-12}
|
|
69
|
-
// col-md-{1-12}
|
|
70
|
-
// col-lg-{1-12}
|
|
71
|
-
// col-xl-{1-12}
|
|
72
|
+
// col-sm-{1-12}: >= 576px
|
|
73
|
+
// col-md-{1-12}: >= 768px
|
|
74
|
+
// col-lg-{1-12}: >= 992px
|
|
75
|
+
// col-xl-{1-12}: >= 1200px
|
|
72
76
|
//
|
|
73
|
-
//
|
|
77
|
+
// Mobile-first: default width is 100%; column size applies from breakpoint up.
|
|
74
78
|
// --------------------------------------------------------------------------
|
|
75
79
|
$grid-breakpoints: (
|
|
76
80
|
'sm': 576px,
|
|
@@ -79,7 +83,7 @@ $grid-breakpoints: (
|
|
|
79
83
|
'xl': 1200px,
|
|
80
84
|
);
|
|
81
85
|
|
|
82
|
-
// col-{bp}
|
|
86
|
+
// col-{bp} - full-width flexible column at the breakpoint
|
|
83
87
|
@each $bp, $min-width in $grid-breakpoints {
|
|
84
88
|
@media (min-width: $min-width) {
|
|
85
89
|
.col-#{$bp} {
|
|
@@ -90,15 +94,17 @@ $grid-breakpoints: (
|
|
|
90
94
|
}
|
|
91
95
|
}
|
|
92
96
|
|
|
93
|
-
// col-{bp}-{1-12}
|
|
97
|
+
// col-{bp}-{1-12} - n/12 column width at the breakpoint
|
|
94
98
|
@each $bp, $min-width in $grid-breakpoints {
|
|
95
99
|
@media (min-width: $min-width) {
|
|
96
100
|
@for $i from 1 through $grid-columns {
|
|
101
|
+
$col-size: math.percentage(math.div($i, $grid-columns));
|
|
102
|
+
|
|
97
103
|
.col-#{$bp}-#{$i} {
|
|
98
104
|
box-sizing: border-box;
|
|
99
|
-
width:
|
|
100
|
-
flex: 0 0
|
|
101
|
-
max-width:
|
|
105
|
+
width: $col-size;
|
|
106
|
+
flex: 0 0 $col-size;
|
|
107
|
+
max-width: $col-size;
|
|
102
108
|
padding-left: calc($grid-gutter / 2);
|
|
103
109
|
padding-right: calc($grid-gutter / 2);
|
|
104
110
|
}
|
|
@@ -107,7 +113,7 @@ $grid-breakpoints: (
|
|
|
107
113
|
}
|
|
108
114
|
|
|
109
115
|
// --------------------------------------------------------------------------
|
|
110
|
-
// 2. CSS Grid container
|
|
116
|
+
// 2. CSS Grid container (.grid-container)
|
|
111
117
|
// grid-container + grid-cols-{1-12} + col-span-{1-12}
|
|
112
118
|
// --------------------------------------------------------------------------
|
|
113
119
|
.grid-container {
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import * as _angular_core from '@angular/core';
|
|
2
2
|
import { EventEmitter } from '@angular/core';
|
|
3
|
+
import { SdIconSet } from '@sdcorejs/angular/modules/icon';
|
|
3
4
|
import { Color, Size } from '@sdcorejs/utils/models';
|
|
4
|
-
import { MaterialIconFontSet } from '@sdcorejs/angular/utilities/models';
|
|
5
5
|
|
|
6
6
|
type SdBadgeType = 'tag' | 'round' | 'icon';
|
|
7
7
|
declare class SdBadge {
|
|
@@ -14,7 +14,7 @@ declare class SdBadge {
|
|
|
14
14
|
info: _angular_core.InputSignalWithTransform<boolean, unknown>;
|
|
15
15
|
warning: _angular_core.InputSignalWithTransform<boolean, unknown>;
|
|
16
16
|
error: _angular_core.InputSignalWithTransform<boolean, unknown>;
|
|
17
|
-
fontSet: _angular_core.InputSignalWithTransform<
|
|
17
|
+
fontSet: _angular_core.InputSignalWithTransform<SdIconSet | undefined, SdIconSet | null | undefined>;
|
|
18
18
|
title: _angular_core.InputSignal<string | number | null | undefined>;
|
|
19
19
|
description: _angular_core.InputSignal<string | null | undefined>;
|
|
20
20
|
tooltip: _angular_core.InputSignal<string | null | undefined>;
|
|
@@ -43,11 +43,8 @@ declare class SdBadge {
|
|
|
43
43
|
'c-sm': boolean;
|
|
44
44
|
'c-md': boolean;
|
|
45
45
|
'c-lg': boolean;
|
|
46
|
-
'material-icons': boolean;
|
|
47
|
-
'material-icons-outlined': boolean;
|
|
48
|
-
'material-icons-round': boolean;
|
|
49
|
-
'material-icons-sharp': boolean;
|
|
50
46
|
}>;
|
|
47
|
+
iconCssSize: _angular_core.Signal<"18px" | "24px" | "16px">;
|
|
51
48
|
containerSizeClasses: _angular_core.Signal<{
|
|
52
49
|
'c-badge--sm': boolean;
|
|
53
50
|
'c-badge--md': boolean;
|
|
@@ -63,10 +60,6 @@ declare class SdBadge {
|
|
|
63
60
|
'c-sm': boolean;
|
|
64
61
|
'c-md': boolean;
|
|
65
62
|
'c-lg': boolean;
|
|
66
|
-
'material-icons': boolean;
|
|
67
|
-
'material-icons-outlined': boolean;
|
|
68
|
-
'material-icons-round': boolean;
|
|
69
|
-
'material-icons-sharp': boolean;
|
|
70
63
|
}>;
|
|
71
64
|
containerCombinedClasses: _angular_core.Signal<{
|
|
72
65
|
'c-badge--sm': boolean;
|
|
@@ -89,10 +82,6 @@ declare class SdBadge {
|
|
|
89
82
|
'c-sm': boolean;
|
|
90
83
|
'c-md': boolean;
|
|
91
84
|
'c-lg': boolean;
|
|
92
|
-
'material-icons': boolean;
|
|
93
|
-
'material-icons-outlined': boolean;
|
|
94
|
-
'material-icons-round': boolean;
|
|
95
|
-
'material-icons-sharp': boolean;
|
|
96
85
|
}>;
|
|
97
86
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<SdBadge, never>;
|
|
98
87
|
static ɵcmp: _angular_core.ɵɵComponentDeclaration<SdBadge, "sd-badge", never, { "type": { "alias": "type"; "required": false; "isSignal": true; }; "color": { "alias": "color"; "required": false; "isSignal": true; }; "primary": { "alias": "primary"; "required": false; "isSignal": true; }; "secondary": { "alias": "secondary"; "required": false; "isSignal": true; }; "success": { "alias": "success"; "required": false; "isSignal": true; }; "info": { "alias": "info"; "required": false; "isSignal": true; }; "warning": { "alias": "warning"; "required": false; "isSignal": true; }; "error": { "alias": "error"; "required": false; "isSignal": true; }; "fontSet": { "alias": "fontSet"; "required": false; "isSignal": true; }; "title": { "alias": "title"; "required": false; "isSignal": true; }; "description": { "alias": "description"; "required": false; "isSignal": true; }; "tooltip": { "alias": "tooltip"; "required": false; "isSignal": true; }; "icon": { "alias": "icon"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; }, { "click": "click"; }, never, never, true, never>;
|
|
@@ -1,19 +1,20 @@
|
|
|
1
1
|
import * as _angular_core from '@angular/core';
|
|
2
2
|
import { OnInit, OnDestroy } from '@angular/core';
|
|
3
3
|
import { Color } from '@sdcorejs/utils/models';
|
|
4
|
-
import {
|
|
4
|
+
import { SdIconSet } from '@sdcorejs/angular/modules/icon';
|
|
5
5
|
|
|
6
6
|
type SdButtonType = 'fill' | 'light' | 'outline' | 'link';
|
|
7
7
|
type SdButtonSize = 'sm' | 'md' | 'lg';
|
|
8
8
|
type SdButtonHtmlType = 'button' | 'submit' | 'reset';
|
|
9
|
+
type SdButtonColor = Color | 'black';
|
|
9
10
|
declare class SdButton implements OnInit, OnDestroy {
|
|
10
11
|
#private;
|
|
11
12
|
private el;
|
|
12
13
|
autoIdInput: _angular_core.InputSignal<string | null | undefined>;
|
|
13
14
|
type: _angular_core.InputSignalWithTransform<SdButtonType, SdButtonType | null | undefined>;
|
|
14
|
-
color: _angular_core.InputSignalWithTransform<
|
|
15
|
+
color: _angular_core.InputSignalWithTransform<SdButtonColor, SdButtonColor | null | undefined>;
|
|
15
16
|
size: _angular_core.InputSignalWithTransform<SdButtonSize, SdButtonSize | null | undefined>;
|
|
16
|
-
fontSet: _angular_core.InputSignalWithTransform<
|
|
17
|
+
fontSet: _angular_core.InputSignalWithTransform<SdIconSet | undefined, SdIconSet | null | undefined>;
|
|
17
18
|
title: _angular_core.InputSignal<string | null | undefined>;
|
|
18
19
|
width: _angular_core.InputSignal<string | null | undefined>;
|
|
19
20
|
tooltip: _angular_core.InputSignal<string | null | undefined>;
|
|
@@ -29,6 +30,7 @@ declare class SdButton implements OnInit, OnDestroy {
|
|
|
29
30
|
'c-sm': boolean;
|
|
30
31
|
'c-md': boolean;
|
|
31
32
|
'c-lg': boolean;
|
|
33
|
+
'c-black': boolean;
|
|
32
34
|
'c-disabled': boolean;
|
|
33
35
|
'c-block': boolean;
|
|
34
36
|
}>;
|
|
@@ -42,4 +44,4 @@ declare class SdButton implements OnInit, OnDestroy {
|
|
|
42
44
|
}
|
|
43
45
|
|
|
44
46
|
export { SdButton };
|
|
45
|
-
export type { SdButtonHtmlType, SdButtonSize, SdButtonType };
|
|
47
|
+
export type { SdButtonColor, SdButtonHtmlType, SdButtonSize, SdButtonType };
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
|
-
import { EventEmitter } from '@angular/core';
|
|
2
|
+
import { EventEmitter, OnInit, OnDestroy } from '@angular/core';
|
|
3
3
|
import { ModelRange, EditorConfig, ModelDocumentSelection, EventInfo, ViewDataTransfer, ClassicEditor, Plugin, Widget, ContextualBalloon } from 'ckeditor5';
|
|
4
4
|
import { I18nParams } from '@sdcorejs/angular/i18n';
|
|
5
5
|
|
|
@@ -199,7 +199,7 @@ declare class CkCommentPlugin extends Plugin {
|
|
|
199
199
|
clearPendingSelection(): void;
|
|
200
200
|
}
|
|
201
201
|
|
|
202
|
-
declare class SdDocumentBuilder {
|
|
202
|
+
declare class SdDocumentBuilder implements OnInit, OnDestroy {
|
|
203
203
|
#private;
|
|
204
204
|
option: SdDocumentBuilderOption;
|
|
205
205
|
disabled: boolean;
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
|
-
import { InjectionToken, PipeTransform, OnDestroy, ChangeDetectorRef, AfterViewInit, QueryList, EventEmitter } from '@angular/core';
|
|
2
|
+
import { InjectionToken, PipeTransform, OnDestroy, OnInit, ChangeDetectorRef, AfterViewInit, QueryList, EventEmitter } from '@angular/core';
|
|
3
3
|
import { SdSearch, SdCustomValidator } from '@sdcorejs/angular/forms/models';
|
|
4
4
|
import { SdTableColumn, SdTableOption, SdTable } from '@sdcorejs/angular/components/table';
|
|
5
5
|
import { SdUploadFile } from '@sdcorejs/angular/components/upload-file';
|
|
6
6
|
import { Operator as Operator$1, ValidationPatternType, Color } from '@sdcorejs/utils/models';
|
|
7
7
|
import { SdUnwrapSignal } from '@sdcorejs/angular/utilities/models';
|
|
8
|
-
import { CdkDragMove, CdkDragDrop } from '@angular/cdk/drag-drop';
|
|
8
|
+
import { CdkDragMove, CdkDragDrop, CdkDrag, CdkDropList } from '@angular/cdk/drag-drop';
|
|
9
9
|
import { FormGroup } from '@angular/forms';
|
|
10
10
|
import { SdModal } from '@sdcorejs/angular/components/modal';
|
|
11
11
|
import { Subject } from 'rxjs';
|
|
@@ -458,14 +458,14 @@ interface SdFormGenericHtml {
|
|
|
458
458
|
type FormBuilderComponentGroup = 'basic' | 'choice' | 'advanced' | 'layout';
|
|
459
459
|
interface FormBuilderComponent {
|
|
460
460
|
type: string;
|
|
461
|
-
/** Material
|
|
461
|
+
/** Material Icons Outlined icon name. Rendered via the builder icon alias. */
|
|
462
462
|
symbol: string;
|
|
463
463
|
/** Category group for the left palette grouping. */
|
|
464
464
|
group: FormBuilderComponentGroup;
|
|
465
465
|
name: string;
|
|
466
466
|
}
|
|
467
467
|
declare const FormBuilderComponents: FormBuilderComponent[];
|
|
468
|
-
/** Lookup: component type → Material
|
|
468
|
+
/** Lookup: component type → Material icon + label, used by attribute panel header. */
|
|
469
469
|
declare const COMPONENT_ICONS: Record<string, {
|
|
470
470
|
symbol: string;
|
|
471
471
|
label: string;
|
|
@@ -530,7 +530,7 @@ interface IWorkflowConfigurationForm<TSelectionArgs = any> {
|
|
|
530
530
|
templates: SdFormGenericTemplate[];
|
|
531
531
|
selections: SdFormGenericDefinitionSelection<any, TSelectionArgs>[] | (() => SdFormGenericDefinitionSelection<any, TSelectionArgs>[]) | (() => Promise<SdFormGenericDefinitionSelection[]>);
|
|
532
532
|
getValues?: (key: string, selectionArgs?: TSelectionArgs) => Promise<SdFormGenericSelectionItem[]>;
|
|
533
|
-
getLazyValues?: (key: string, selectionArgs?: TSelectionArgs) => (
|
|
533
|
+
getLazyValues?: (key: string, selectionArgs?: TSelectionArgs) => (searchArgs: Parameters<SdSearch>[0], args: SdFormGenericArgs) => Promise<SdFormGenericSelectionItem[]>;
|
|
534
534
|
tables: SdFormGenericDefinitionTable[];
|
|
535
535
|
htmls: SdFormGenericDefinitionHtml[] | (() => SdFormGenericDefinitionHtml[]) | (() => Promise<SdFormGenericDefinitionHtml[]>);
|
|
536
536
|
validation?: SdFormGenericValidationConfiguration;
|
|
@@ -544,7 +544,6 @@ declare const SD_FORM_GENERIC_CONFIGURATION: InjectionToken<ISdFormGenericConfig
|
|
|
544
544
|
declare class FormGenericService {
|
|
545
545
|
#private;
|
|
546
546
|
private readonly configuration;
|
|
547
|
-
constructor(configuration: ISdFormGenericConfiguration);
|
|
548
547
|
get selections(): (() => Promise<SdFormGenericDefinitionSelection[]>) | SdFormGenericDefinitionSelection<any, any>[] | (() => SdFormGenericDefinitionSelection<any, any>[]);
|
|
549
548
|
get tables(): _sdcorejs_angular_components_form_generic.SdFormGenericDefinitionTable<any>[];
|
|
550
549
|
getSelection: (valuesKey: string | undefined | null) => Promise<SdFormGenericDefinitionSelection | undefined>;
|
|
@@ -560,7 +559,7 @@ declare class FormGenericService {
|
|
|
560
559
|
definitions: () => Promise<SdFormGenericDefinitionHtml[]>;
|
|
561
560
|
getContent: (template: string, query?: Record<string, any>) => Promise<string>;
|
|
562
561
|
};
|
|
563
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<FormGenericService,
|
|
562
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<FormGenericService, never>;
|
|
564
563
|
static ɵprov: i0.ɵɵInjectableDeclaration<FormGenericService>;
|
|
565
564
|
}
|
|
566
565
|
|
|
@@ -590,7 +589,7 @@ declare class SdFormRenderService {
|
|
|
590
589
|
static ɵprov: i0.ɵɵInjectableDeclaration<SdFormRenderService>;
|
|
591
590
|
}
|
|
592
591
|
|
|
593
|
-
declare class UploadComponent implements OnDestroy {
|
|
592
|
+
declare class UploadComponent implements OnDestroy, OnInit {
|
|
594
593
|
#private;
|
|
595
594
|
private readonly ref;
|
|
596
595
|
setVariables: Subject<{
|
|
@@ -620,7 +619,7 @@ declare class UploadComponent implements OnDestroy {
|
|
|
620
619
|
static ɵcmp: i0.ɵɵComponentDeclaration<UploadComponent, "lib-upload", never, { "setVariables": { "alias": "setVariables"; "required": true; }; "form": { "alias": "form"; "required": false; }; "_entity": { "alias": "entity"; "required": true; }; "_component": { "alias": "component"; "required": true; }; "_disabled": { "alias": "disabled"; "required": false; }; "_required": { "alias": "required"; "required": false; }; "_viewed": { "alias": "viewed"; "required": false; }; "_validator": { "alias": "validator"; "required": false; }; }, {}, never, never, true, never>;
|
|
621
620
|
}
|
|
622
621
|
|
|
623
|
-
declare class TableComponent implements AfterViewInit, OnDestroy {
|
|
622
|
+
declare class TableComponent implements AfterViewInit, OnDestroy, OnInit {
|
|
624
623
|
#private;
|
|
625
624
|
private ref;
|
|
626
625
|
private readonly formGenericService;
|
|
@@ -691,8 +690,6 @@ declare class LibItemComponent {
|
|
|
691
690
|
|
|
692
691
|
declare class SdFormRender implements OnDestroy, AfterViewInit {
|
|
693
692
|
#private;
|
|
694
|
-
private ref;
|
|
695
|
-
private formGenericConfiguration;
|
|
696
693
|
formRenderItems: QueryList<LibItemComponent>;
|
|
697
694
|
form: FormGroup;
|
|
698
695
|
configuration: SdFormRenderConfiguration;
|
|
@@ -711,18 +708,17 @@ declare class SdFormRender implements OnDestroy, AfterViewInit {
|
|
|
711
708
|
key: string;
|
|
712
709
|
value: any;
|
|
713
710
|
}>;
|
|
714
|
-
|
|
711
|
+
private readonly ref;
|
|
712
|
+
private readonly formGenericConfiguration;
|
|
715
713
|
ngAfterViewInit(): void;
|
|
716
714
|
ngOnDestroy(): void;
|
|
717
715
|
upload: () => Promise<void>;
|
|
718
716
|
getValidationMessages: (alert: SdFormGenericValidation["alert"]) => Promise<string[] | undefined>;
|
|
719
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<SdFormRender,
|
|
717
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<SdFormRender, never>;
|
|
720
718
|
static ɵcmp: i0.ɵɵComponentDeclaration<SdFormRender, "sd-form-render", never, { "form": { "alias": "form"; "required": false; }; "_configuration": { "alias": "configuration"; "required": true; }; "_default": { "alias": "defaultEntity"; "required": false; }; "_entity": { "alias": "entity"; "required": false; }; "_properties": { "alias": "properties"; "required": false; }; "_viewed": { "alias": "viewed"; "required": false; }; }, {}, never, never, true, never>;
|
|
721
719
|
}
|
|
722
720
|
|
|
723
|
-
declare class ConfigureValidationComponent {
|
|
724
|
-
private ref;
|
|
725
|
-
private formGenericConfiguration;
|
|
721
|
+
declare class ConfigureValidationComponent implements AfterViewInit, OnDestroy {
|
|
726
722
|
modal?: SdModal;
|
|
727
723
|
form: FormGroup<{}>;
|
|
728
724
|
attributes: Attribute[];
|
|
@@ -733,22 +729,35 @@ declare class ConfigureValidationComponent {
|
|
|
733
729
|
display: string;
|
|
734
730
|
}[];
|
|
735
731
|
accept: EventEmitter<SdFormGenericValidation[]>;
|
|
736
|
-
|
|
732
|
+
private readonly ref;
|
|
733
|
+
private readonly formGenericConfiguration;
|
|
734
|
+
constructor();
|
|
737
735
|
ngAfterViewInit(): void;
|
|
738
736
|
ngOnDestroy(): void;
|
|
739
737
|
open: (formGeneric: SdFormGeneric) => void;
|
|
740
738
|
addValidation: (type: SdFormGenericValidation["type"]) => void;
|
|
741
739
|
removaValidation: (index: number) => void;
|
|
742
740
|
updateValidations: () => void;
|
|
743
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<ConfigureValidationComponent,
|
|
741
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<ConfigureValidationComponent, never>;
|
|
744
742
|
static ɵcmp: i0.ɵɵComponentDeclaration<ConfigureValidationComponent, "configure-validation", never, {}, { "accept": "accept"; }, never, never, true, never>;
|
|
745
743
|
}
|
|
746
744
|
|
|
747
|
-
|
|
748
|
-
|
|
745
|
+
type FormBuilderLayoutItem = SdFormGenericComponent | SdFormGenericGroup;
|
|
746
|
+
interface FormBuilderLayoutRow {
|
|
747
|
+
id: string;
|
|
748
|
+
items: FormBuilderLayoutItem[];
|
|
749
|
+
columns: number;
|
|
750
|
+
}
|
|
751
|
+
|
|
752
|
+
interface DragDropRowItem extends FormBuilderLayoutRow {
|
|
749
753
|
rowIndex?: number;
|
|
750
754
|
}
|
|
751
|
-
|
|
755
|
+
interface ResizeState {
|
|
756
|
+
itemId: string;
|
|
757
|
+
rowId: string;
|
|
758
|
+
columns: string;
|
|
759
|
+
}
|
|
760
|
+
declare class SdFormBuilder implements OnInit, OnDestroy {
|
|
752
761
|
#private;
|
|
753
762
|
readonly popupViewJSON: i0.Signal<SdModal | undefined>;
|
|
754
763
|
readonly popupConfigureVariables: i0.Signal<SdModal | undefined>;
|
|
@@ -781,6 +790,9 @@ declare class SdFormBuilder {
|
|
|
781
790
|
/** Signal toàn cục: TRUE khi BẤT KỲ cdkDrag nào đang active (palette, canvas, group, resize).
|
|
782
791
|
* Trigger class `.fb-shell--dragging` để ẩn hover/actions/resize toàn diện, không phụ thuộc :has(). */
|
|
783
792
|
readonly isAnyDragging: i0.WritableSignal<boolean>;
|
|
793
|
+
readonly dragSource: i0.WritableSignal<"row" | "palette" | "canvas" | "resize" | undefined>;
|
|
794
|
+
readonly resizeState: i0.WritableSignal<ResizeState | undefined>;
|
|
795
|
+
readonly isResizing: i0.Signal<boolean>;
|
|
784
796
|
expand: boolean;
|
|
785
797
|
dragDropRows: DragDropRowItem[];
|
|
786
798
|
isDragging: boolean;
|
|
@@ -788,18 +800,25 @@ declare class SdFormBuilder {
|
|
|
788
800
|
private lastDragPointer?;
|
|
789
801
|
/** Handler chung cho mọi cdkDragStarted — set signal global true. */
|
|
790
802
|
onAnyDragStarted: () => void;
|
|
803
|
+
onPaletteDragStarted: () => void;
|
|
804
|
+
onRowDragStarted: () => void;
|
|
791
805
|
onAnyDragMoved: (event: CdkDragMove<any>) => void;
|
|
792
806
|
/** Handler chung cho mọi cdkDragEnded — set signal global false (dùng setTimeout 0
|
|
793
807
|
* để chờ CDK xử lý xong drop event trước khi UI re-enable). */
|
|
794
808
|
onAnyDragEnded: () => void;
|
|
809
|
+
startResizeControl: (item: SdFormGenericComponent | SdFormGenericGroup, row: DragDropRowItem) => void;
|
|
810
|
+
endResizeControl: (event: any) => void;
|
|
795
811
|
constructor();
|
|
796
812
|
ngOnInit(): void;
|
|
797
813
|
ngOnDestroy(): void;
|
|
798
|
-
addComponent: (item: FormBuilderComponent, index?: number) => void;
|
|
814
|
+
addComponent: (item: FormBuilderComponent, index?: number, layoutColumns?: string) => void;
|
|
799
815
|
/** Symbol Material để render trên canvas item / attribute header. */
|
|
800
816
|
symbolFor: (item: SdFormGenericComponent | SdFormGenericGroup) => string;
|
|
801
817
|
/** Human-readable type label (e.g. "Text field", "Date"). */
|
|
802
818
|
typeLabelFor: (item: SdFormGenericComponent | SdFormGenericGroup) => string;
|
|
819
|
+
placeholderSymbolFor: (item: FormBuilderComponent | SdFormGenericComponent | SdFormGenericGroup | DragDropRowItem | undefined) => string;
|
|
820
|
+
placeholderTitleFor: (item: FormBuilderComponent | SdFormGenericComponent | SdFormGenericGroup | DragDropRowItem | undefined) => string;
|
|
821
|
+
placeholderMetaFor: (item: FormBuilderComponent | SdFormGenericComponent | SdFormGenericGroup | DragDropRowItem | undefined) => string;
|
|
803
822
|
/** True nếu component có expression điều kiện — drives the "conditional" status chip. */
|
|
804
823
|
hasConditional: (item: SdFormGenericComponent | SdFormGenericGroup) => boolean;
|
|
805
824
|
/** Map SdColor preset → 2 CSS var names cho header-bg và header-fg của group card. */
|
|
@@ -828,6 +847,9 @@ declare class SdFormBuilder {
|
|
|
828
847
|
dragStartComponentItem: (event: any) => void;
|
|
829
848
|
dragEndComponentItem: (event: any) => void;
|
|
830
849
|
onMouseover: (event: MouseEvent, rowItem: DragDropRowItem) => void;
|
|
850
|
+
isRowFull: (row: DragDropRowItem) => boolean;
|
|
851
|
+
isRowInlineDropLocked: (row: DragDropRowItem) => boolean;
|
|
852
|
+
canEnterRowDropList: (drag: CdkDrag<FormBuilderComponent | SdFormGenericComponent | SdFormGenericGroup>, drop: CdkDropList<(SdFormGenericComponent | SdFormGenericGroup)[]>) => boolean;
|
|
831
853
|
onFocus: (event: FocusEvent) => void;
|
|
832
854
|
xuLyKeoCheo: (dragItem?: SdFormGenericComponent | SdFormGenericGroup) => void;
|
|
833
855
|
noReturnPredicate: () => boolean;
|
|
@@ -853,7 +875,7 @@ declare class SdFormBuilder {
|
|
|
853
875
|
static ɵcmp: i0.ɵɵComponentDeclaration<SdFormBuilder, "sd-form-builder", never, { "formGeneric": { "alias": "formGeneric"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
854
876
|
}
|
|
855
877
|
|
|
856
|
-
declare class SdFeelExpression {
|
|
878
|
+
declare class SdFeelExpression implements OnInit {
|
|
857
879
|
#private;
|
|
858
880
|
private ref;
|
|
859
881
|
private expressionFeelPipe;
|
|
@@ -97,7 +97,7 @@ interface SdUploadExcelColumnStringArray<T = any> extends SdUploadExcelBaseColum
|
|
|
97
97
|
minlength?: number;
|
|
98
98
|
maxlength?: number;
|
|
99
99
|
}
|
|
100
|
-
|
|
100
|
+
interface SdImportExcelItem<T = any> {
|
|
101
101
|
data: T;
|
|
102
102
|
meta: {
|
|
103
103
|
excelIndex: number;
|
|
@@ -107,7 +107,7 @@ type SdImportExcelItem<T = any> = {
|
|
|
107
107
|
warning: Record<string, string>;
|
|
108
108
|
warningMessages: string[];
|
|
109
109
|
};
|
|
110
|
-
}
|
|
110
|
+
}
|
|
111
111
|
|
|
112
112
|
declare class ColumnHiddenPipe implements PipeTransform {
|
|
113
113
|
constructor();
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import * as _angular_core from '@angular/core';
|
|
2
2
|
import { ElementRef } from '@angular/core';
|
|
3
3
|
import { Color } from '@sdcorejs/utils/models';
|
|
4
|
-
import {
|
|
4
|
+
import { SdIconSet } from '@sdcorejs/angular/modules/icon';
|
|
5
5
|
|
|
6
6
|
/**
|
|
7
7
|
* Marker cho vùng action custom chiếu vào <sd-inform>.
|
|
@@ -25,7 +25,7 @@ declare class SdInform {
|
|
|
25
25
|
description: _angular_core.InputSignal<string | undefined>;
|
|
26
26
|
icon: _angular_core.InputSignal<string | undefined>;
|
|
27
27
|
hideIcon: _angular_core.InputSignalWithTransform<boolean, unknown>;
|
|
28
|
-
fontSet: _angular_core.InputSignalWithTransform<
|
|
28
|
+
fontSet: _angular_core.InputSignalWithTransform<SdIconSet | undefined, SdIconSet | null | undefined>;
|
|
29
29
|
closable: _angular_core.InputSignalWithTransform<boolean, unknown>;
|
|
30
30
|
actionLabel: _angular_core.InputSignal<string | undefined>;
|
|
31
31
|
lineClamp: _angular_core.InputSignal<number | undefined>;
|
|
@@ -47,12 +47,6 @@ declare class SdInform {
|
|
|
47
47
|
'c-error': boolean;
|
|
48
48
|
}>;
|
|
49
49
|
effectiveIcon: _angular_core.Signal<string | null>;
|
|
50
|
-
fontSetClasses: _angular_core.Signal<{
|
|
51
|
-
'material-icons': boolean;
|
|
52
|
-
'material-icons-outlined': boolean;
|
|
53
|
-
'material-icons-round': boolean;
|
|
54
|
-
'material-icons-sharp': boolean;
|
|
55
|
-
}>;
|
|
56
50
|
hasActionSlot: _angular_core.Signal<boolean>;
|
|
57
51
|
clampLines: _angular_core.Signal<number | null>;
|
|
58
52
|
showToggle: _angular_core.Signal<boolean>;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { MentionFeed, MentionFeedObjectItem, EditorConfig, ClassicEditor } from 'ckeditor5';
|
|
2
2
|
export { MentionFeedObjectItem } from 'ckeditor5';
|
|
3
3
|
import * as i0 from '@angular/core';
|
|
4
|
-
import { EventEmitter } from '@angular/core';
|
|
4
|
+
import { OnDestroy, EventEmitter } from '@angular/core';
|
|
5
5
|
import { ControlValueAccessor } from '@angular/forms';
|
|
6
6
|
|
|
7
7
|
type SdMiniEditorOutputFormat = 'html' | 'markdown';
|
|
@@ -62,7 +62,7 @@ type SdMiniEditorConfig = EditorConfig & {
|
|
|
62
62
|
* </sd-mini-editor>
|
|
63
63
|
* ```
|
|
64
64
|
*/
|
|
65
|
-
declare class SdMiniEditor implements ControlValueAccessor {
|
|
65
|
+
declare class SdMiniEditor implements ControlValueAccessor, OnDestroy {
|
|
66
66
|
#private;
|
|
67
67
|
/** Cấu hình option cho editor */
|
|
68
68
|
option: SdMiniEditorOption;
|
|
@@ -113,11 +113,11 @@ declare class SdMiniEditor implements ControlValueAccessor {
|
|
|
113
113
|
/**
|
|
114
114
|
* Get danh sách mentions trong nội dung
|
|
115
115
|
*/
|
|
116
|
-
getMentions():
|
|
116
|
+
getMentions(): {
|
|
117
117
|
id: string;
|
|
118
118
|
name: string;
|
|
119
119
|
marker: string;
|
|
120
|
-
}
|
|
120
|
+
}[];
|
|
121
121
|
/**
|
|
122
122
|
* ControlValueAccessor: Write value
|
|
123
123
|
*/
|
|
@@ -16,7 +16,7 @@ declare class SdModal {
|
|
|
16
16
|
width: _angular_core.InputSignalWithTransform<string, string | null | undefined>;
|
|
17
17
|
height: _angular_core.InputSignalWithTransform<string, string | null | undefined>;
|
|
18
18
|
view: _angular_core.InputSignalWithTransform<"dialog" | "bottom-sheet" | undefined, "dialog" | "bottom-sheet" | null | undefined>;
|
|
19
|
-
modalClass: _angular_core.InputSignalWithTransform<string |
|
|
19
|
+
modalClass: _angular_core.InputSignalWithTransform<string | Record<string, boolean> | string[], string | Record<string, boolean> | string[] | null | undefined>;
|
|
20
20
|
lazyLoadContent: _angular_core.InputSignalWithTransform<boolean, unknown>;
|
|
21
21
|
hideClose: _angular_core.InputSignalWithTransform<boolean, boolean | "">;
|
|
22
22
|
disableBackdropClose: _angular_core.InputSignalWithTransform<boolean, boolean | "">;
|
|
@@ -150,7 +150,7 @@ interface QbDateModeOption {
|
|
|
150
150
|
icon: string;
|
|
151
151
|
}
|
|
152
152
|
/** Stable option list for the date-mode select (module ref — never reallocated). */
|
|
153
|
-
declare const QB_DATE_MODES:
|
|
153
|
+
declare const QB_DATE_MODES: QbDateModeOption[];
|
|
154
154
|
/** One value-source option for field-to-field comparison UI. */
|
|
155
155
|
interface QbValueSourceOption {
|
|
156
156
|
value: QbValueSource;
|
|
@@ -159,12 +159,12 @@ interface QbValueSourceOption {
|
|
|
159
159
|
icon: string;
|
|
160
160
|
}
|
|
161
161
|
/** Stable option list for choosing between a literal value and another field. */
|
|
162
|
-
declare const QB_VALUE_SOURCE_OPTIONS:
|
|
162
|
+
declare const QB_VALUE_SOURCE_OPTIONS: QbValueSourceOption[];
|
|
163
163
|
/** Stable combined direction×unit option list (token `'unit:direction'`). */
|
|
164
|
-
declare const QB_RELATIVE_UNIT_OPTIONS:
|
|
164
|
+
declare const QB_RELATIVE_UNIT_OPTIONS: {
|
|
165
165
|
value: string;
|
|
166
166
|
display: string;
|
|
167
|
-
}
|
|
167
|
+
}[];
|
|
168
168
|
/** Shared empty option array — stable ref for fallbacks (avoids per-call allocation). */
|
|
169
169
|
declare const QB_EMPTY_OPTIONS: SdQueryBuilderFieldOption[];
|
|
170
170
|
|
|
@@ -204,11 +204,11 @@ declare class SdQueryBuilder {
|
|
|
204
204
|
readonly resolvedAutoId: _angular_core.Signal<string | undefined>;
|
|
205
205
|
readonly fieldByKey: _angular_core.Signal<Record<string, SdQueryBuilderField>>;
|
|
206
206
|
/** Stable option list for the date-mode select. */
|
|
207
|
-
readonly dateModes:
|
|
207
|
+
readonly dateModes: _sdcorejs_angular_components_query_builder.QbDateModeOption[];
|
|
208
208
|
/** Stable option list for the literal-vs-field operand select. */
|
|
209
|
-
readonly valueSourceOptions:
|
|
209
|
+
readonly valueSourceOptions: _sdcorejs_angular_components_query_builder.QbValueSourceOption[];
|
|
210
210
|
/** Stable combined unit×direction option list for the relative select. */
|
|
211
|
-
readonly relativeUnitOptions:
|
|
211
|
+
readonly relativeUnitOptions: {
|
|
212
212
|
value: string;
|
|
213
213
|
display: string;
|
|
214
214
|
}[];
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
|
-
import { Type, ElementRef, ChangeDetectorRef, OnDestroy } from '@angular/core';
|
|
2
|
+
import { InjectionToken, Type, ElementRef, ChangeDetectorRef, OnDestroy } from '@angular/core';
|
|
3
3
|
import { Color } from '@sdcorejs/utils/models';
|
|
4
4
|
import { Subject, BehaviorSubject } from 'rxjs';
|
|
5
5
|
import { CdkDragDrop } from '@angular/cdk/drag-drop';
|
|
@@ -22,6 +22,7 @@ interface SdTab {
|
|
|
22
22
|
tabInfoChanges: Subject<SdTabInfo>;
|
|
23
23
|
beforeClose?: () => boolean | Promise<boolean>;
|
|
24
24
|
}
|
|
25
|
+
declare const SD_TAB: InjectionToken<SdTab>;
|
|
25
26
|
|
|
26
27
|
declare class SdTabRouterNavComponent {
|
|
27
28
|
tabRouterNav: i0.Signal<ElementRef<any> | undefined>;
|
|
@@ -87,7 +88,6 @@ declare class SdTabRouterService {
|
|
|
87
88
|
currentTabChanges: BehaviorSubject<SdTab | undefined>;
|
|
88
89
|
newTabs: BehaviorSubject<SdTab | undefined>;
|
|
89
90
|
updateTabs: BehaviorSubject<SdTab | undefined>;
|
|
90
|
-
constructor();
|
|
91
91
|
addBuilder: (builder: SdTabComponentBuilder) => void;
|
|
92
92
|
get currentTab(): SdTab | undefined;
|
|
93
93
|
get currentKey(): string | null;
|
|
@@ -100,5 +100,5 @@ declare class SdTabRouterService {
|
|
|
100
100
|
static ɵprov: i0.ɵɵInjectableDeclaration<SdTabRouterService>;
|
|
101
101
|
}
|
|
102
102
|
|
|
103
|
-
export { SdTabComponent, SdTabRouterOutletComponent, SdTabRouterService };
|
|
103
|
+
export { SD_TAB, SdTabComponent, SdTabRouterOutletComponent, SdTabRouterService };
|
|
104
104
|
export type { SdTab, SdTabComponentArgs, SdTabComponentBuilder, SdTabInfo };
|