@sdcorejs/angular 21.1.3 → 21.1.4
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 +17 -14
- package/fesm2022/sdcorejs-angular-components-anchor.mjs +14 -14
- package/fesm2022/sdcorejs-angular-components-anchor.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-components-audit-diff.mjs +332 -0
- package/fesm2022/sdcorejs-angular-components-audit-diff.mjs.map +1 -0
- package/fesm2022/sdcorejs-angular-components-badge.mjs +1 -0
- package/fesm2022/sdcorejs-angular-components-badge.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-components-breadcrumb.mjs +121 -0
- package/fesm2022/sdcorejs-angular-components-breadcrumb.mjs.map +1 -0
- package/fesm2022/sdcorejs-angular-components-data-state.mjs +68 -0
- package/fesm2022/sdcorejs-angular-components-data-state.mjs.map +1 -0
- package/fesm2022/sdcorejs-angular-components-document-builder.mjs +18 -23
- package/fesm2022/sdcorejs-angular-components-document-builder.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-components-editor.mjs +6 -4
- package/fesm2022/sdcorejs-angular-components-editor.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-components-form-generic.mjs +495 -838
- package/fesm2022/sdcorejs-angular-components-form-generic.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-components-import-excel.mjs +24 -34
- package/fesm2022/sdcorejs-angular-components-import-excel.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-components-job-progress.mjs +97 -0
- package/fesm2022/sdcorejs-angular-components-job-progress.mjs.map +1 -0
- package/fesm2022/sdcorejs-angular-components-mini-editor.mjs +10 -20
- package/fesm2022/sdcorejs-angular-components-mini-editor.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-components-modal.mjs +61 -4
- package/fesm2022/sdcorejs-angular-components-modal.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-components-preview.mjs +1438 -218
- package/fesm2022/sdcorejs-angular-components-preview.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-components-query-bar.mjs +4 -4
- package/fesm2022/sdcorejs-angular-components-query-bar.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-components-query-builder.mjs +1 -1
- package/fesm2022/sdcorejs-angular-components-query-builder.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-components-side-drawer.mjs +39 -2
- package/fesm2022/sdcorejs-angular-components-side-drawer.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-components-tab-router.mjs +16 -22
- package/fesm2022/sdcorejs-angular-components-tab-router.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-components-tab.mjs +48 -4
- package/fesm2022/sdcorejs-angular-components-tab.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-components-table.mjs +96 -63
- package/fesm2022/sdcorejs-angular-components-table.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-components-tree.mjs +186 -17
- package/fesm2022/sdcorejs-angular-components-tree.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-components-upload-file.mjs +15 -22
- package/fesm2022/sdcorejs-angular-components-upload-file.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-components.mjs +4 -0
- package/fesm2022/sdcorejs-angular-components.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-directives.mjs +29 -41
- package/fesm2022/sdcorejs-angular-directives.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-forms-autocomplete.mjs +7 -7
- package/fesm2022/sdcorejs-angular-forms-autocomplete.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-forms-checkbox.mjs +20 -71
- package/fesm2022/sdcorejs-angular-forms-checkbox.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-forms-chip-calendar.mjs +6 -3
- package/fesm2022/sdcorejs-angular-forms-chip-calendar.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-forms-chip.mjs +6 -3
- package/fesm2022/sdcorejs-angular-forms-chip.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-forms-date-range.mjs +16 -13
- package/fesm2022/sdcorejs-angular-forms-date-range.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-forms-date.mjs +42 -65
- package/fesm2022/sdcorejs-angular-forms-date.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-forms-datetime.mjs +51 -66
- package/fesm2022/sdcorejs-angular-forms-datetime.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-forms-entity-picker.mjs +384 -0
- package/fesm2022/sdcorejs-angular-forms-entity-picker.mjs.map +1 -0
- package/fesm2022/sdcorejs-angular-forms-input-color.mjs +1 -1
- package/fesm2022/sdcorejs-angular-forms-input-color.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-forms-input-number.mjs +7 -5
- package/fesm2022/sdcorejs-angular-forms-input-number.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-forms-input.mjs +290 -56
- package/fesm2022/sdcorejs-angular-forms-input.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-forms-models.mjs +155 -2
- package/fesm2022/sdcorejs-angular-forms-models.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-forms-radio.mjs +44 -66
- package/fesm2022/sdcorejs-angular-forms-radio.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-forms-select.mjs +6 -20
- package/fesm2022/sdcorejs-angular-forms-select.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-forms-switch.mjs +19 -64
- package/fesm2022/sdcorejs-angular-forms-switch.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-forms-textarea.mjs +6 -5
- package/fesm2022/sdcorejs-angular-forms-textarea.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-forms-time-range.mjs +277 -0
- package/fesm2022/sdcorejs-angular-forms-time-range.mjs.map +1 -0
- package/fesm2022/sdcorejs-angular-forms-time.mjs +307 -0
- package/fesm2022/sdcorejs-angular-forms-time.mjs.map +1 -0
- package/fesm2022/sdcorejs-angular-forms-tree-select.mjs +210 -0
- package/fesm2022/sdcorejs-angular-forms-tree-select.mjs.map +1 -0
- package/fesm2022/sdcorejs-angular-forms.mjs +73 -4
- package/fesm2022/sdcorejs-angular-forms.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-i18n.mjs +355 -10
- package/fesm2022/sdcorejs-angular-i18n.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-interceptors.mjs +12 -17
- package/fesm2022/sdcorejs-angular-interceptors.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-modules-layout.mjs +861 -80
- package/fesm2022/sdcorejs-angular-modules-layout.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-pipes.mjs +5 -7
- package/fesm2022/sdcorejs-angular-pipes.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-services-api.mjs +407 -137
- package/fesm2022/sdcorejs-angular-services-api.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-services-cache.mjs +515 -105
- package/fesm2022/sdcorejs-angular-services-cache.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-services-confirm.mjs +5 -7
- package/fesm2022/sdcorejs-angular-services-confirm.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-services-docx.mjs +7 -10
- package/fesm2022/sdcorejs-angular-services-docx.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-services-loading.mjs +339 -74
- package/fesm2022/sdcorejs-angular-services-loading.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-services-notify.mjs +7 -10
- package/fesm2022/sdcorejs-angular-services-notify.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-services-persistence.mjs +899 -0
- package/fesm2022/sdcorejs-angular-services-persistence.mjs.map +1 -0
- package/fesm2022/sdcorejs-angular-services-storage.mjs +324 -122
- package/fesm2022/sdcorejs-angular-services-storage.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-services-task.mjs +389 -0
- package/fesm2022/sdcorejs-angular-services-task.mjs.map +1 -0
- package/fesm2022/sdcorejs-angular-services-unsaved-changes.mjs +255 -0
- package/fesm2022/sdcorejs-angular-services-unsaved-changes.mjs.map +1 -0
- package/fesm2022/sdcorejs-angular-services-viewport.mjs +76 -0
- package/fesm2022/sdcorejs-angular-services-viewport.mjs.map +1 -0
- package/fesm2022/sdcorejs-angular-services.mjs +4 -0
- package/fesm2022/sdcorejs-angular-services.mjs.map +1 -1
- package/package.json +49 -1
- package/types/sdcorejs-angular-components-audit-diff.d.ts +74 -0
- package/types/sdcorejs-angular-components-badge.d.ts +1 -1
- package/types/sdcorejs-angular-components-breadcrumb.d.ts +53 -0
- package/types/sdcorejs-angular-components-data-state.d.ts +44 -0
- package/types/sdcorejs-angular-components-document-builder.d.ts +5 -5
- package/types/sdcorejs-angular-components-form-generic.d.ts +67 -104
- package/types/sdcorejs-angular-components-import-excel.d.ts +4 -14
- package/types/sdcorejs-angular-components-job-progress.d.ts +38 -0
- package/types/sdcorejs-angular-components-mini-editor.d.ts +9 -9
- package/types/sdcorejs-angular-components-modal.d.ts +7 -1
- package/types/sdcorejs-angular-components-preview.d.ts +181 -28
- package/types/sdcorejs-angular-components-side-drawer.d.ts +7 -1
- package/types/sdcorejs-angular-components-tab.d.ts +9 -2
- package/types/sdcorejs-angular-components-table.d.ts +8 -7
- package/types/sdcorejs-angular-components-tree.d.ts +24 -2
- package/types/sdcorejs-angular-components-upload-file.d.ts +5 -4
- package/types/sdcorejs-angular-components.d.ts +4 -0
- package/types/sdcorejs-angular-directives.d.ts +10 -8
- package/types/sdcorejs-angular-forms-autocomplete.d.ts +3 -4
- package/types/sdcorejs-angular-forms-checkbox.d.ts +4 -8
- package/types/sdcorejs-angular-forms-date-range.d.ts +6 -7
- package/types/sdcorejs-angular-forms-date.d.ts +2 -2
- package/types/sdcorejs-angular-forms-datetime.d.ts +2 -2
- package/types/sdcorejs-angular-forms-entity-picker.d.ts +128 -0
- package/types/sdcorejs-angular-forms-input-number.d.ts +1 -1
- package/types/sdcorejs-angular-forms-input.d.ts +74 -11
- package/types/sdcorejs-angular-forms-models.d.ts +86 -3
- package/types/sdcorejs-angular-forms-radio.d.ts +12 -8
- package/types/sdcorejs-angular-forms-switch.d.ts +4 -7
- package/types/sdcorejs-angular-forms-time-range.d.ts +98 -0
- package/types/sdcorejs-angular-forms-time.d.ts +117 -0
- package/types/sdcorejs-angular-forms-tree-select.d.ts +76 -0
- package/types/sdcorejs-angular-forms.d.ts +15 -5
- package/types/sdcorejs-angular-i18n.d.ts +68 -2
- package/types/sdcorejs-angular-interceptors.d.ts +5 -6
- package/types/sdcorejs-angular-modules-layout.d.ts +288 -15
- package/types/sdcorejs-angular-pipes.d.ts +2 -2
- package/types/sdcorejs-angular-services-api.d.ts +68 -24
- package/types/sdcorejs-angular-services-cache.d.ts +52 -16
- package/types/sdcorejs-angular-services-confirm.d.ts +3 -2
- package/types/sdcorejs-angular-services-docx.d.ts +2 -3
- package/types/sdcorejs-angular-services-loading.d.ts +16 -8
- package/types/sdcorejs-angular-services-persistence.d.ts +159 -0
- package/types/sdcorejs-angular-services-storage.d.ts +26 -8
- package/types/sdcorejs-angular-services-task.d.ts +104 -0
- package/types/sdcorejs-angular-services-unsaved-changes.d.ts +83 -0
- package/types/sdcorejs-angular-services-viewport.d.ts +42 -0
- package/types/sdcorejs-angular-services.d.ts +4 -0
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
import * as _angular_core from '@angular/core';
|
|
2
|
+
import { TemplateRef } from '@angular/core';
|
|
3
|
+
import { ActivatedRouteSnapshot } from '@angular/router';
|
|
4
|
+
import { MaybeAsync } from '@sdcorejs/utils/models';
|
|
5
|
+
import { SdIconSet } from '@sdcorejs/angular/modules/icon';
|
|
6
|
+
|
|
7
|
+
type SdBreadcrumbLabel = MaybeAsync<string | null | undefined> | ((route?: ActivatedRouteSnapshot) => MaybeAsync<string | null | undefined>);
|
|
8
|
+
interface SdBreadcrumbItem {
|
|
9
|
+
readonly label: SdBreadcrumbLabel;
|
|
10
|
+
readonly url?: string | unknown[];
|
|
11
|
+
readonly icon?: string;
|
|
12
|
+
readonly fontSet?: SdIconSet;
|
|
13
|
+
readonly disabled?: boolean;
|
|
14
|
+
readonly clickable?: boolean;
|
|
15
|
+
}
|
|
16
|
+
interface SdBreadcrumbRouteConfig extends Omit<SdBreadcrumbItem, 'url'> {
|
|
17
|
+
readonly url?: string | unknown[];
|
|
18
|
+
}
|
|
19
|
+
interface SdBreadcrumbResolvedItem extends Omit<SdBreadcrumbItem, 'label'> {
|
|
20
|
+
readonly label: string;
|
|
21
|
+
readonly source: SdBreadcrumbItem;
|
|
22
|
+
}
|
|
23
|
+
interface SdBreadcrumbItemTemplateContext {
|
|
24
|
+
readonly $implicit: SdBreadcrumbResolvedItem;
|
|
25
|
+
readonly item: SdBreadcrumbResolvedItem;
|
|
26
|
+
}
|
|
27
|
+
interface SdBreadcrumbItemEntry {
|
|
28
|
+
readonly kind: 'item';
|
|
29
|
+
readonly item: SdBreadcrumbResolvedItem;
|
|
30
|
+
}
|
|
31
|
+
interface SdBreadcrumbEllipsisEntry {
|
|
32
|
+
readonly kind: 'ellipsis';
|
|
33
|
+
}
|
|
34
|
+
type SdBreadcrumbEntry = SdBreadcrumbItemEntry | SdBreadcrumbEllipsisEntry;
|
|
35
|
+
declare class SdBreadcrumb {
|
|
36
|
+
#private;
|
|
37
|
+
readonly items: _angular_core.InputSignal<readonly SdBreadcrumbItem[] | null | undefined>;
|
|
38
|
+
readonly maxItems: _angular_core.InputSignalWithTransform<number, string | number | null | undefined>;
|
|
39
|
+
readonly ariaLabel: _angular_core.InputSignal<string>;
|
|
40
|
+
readonly separator: _angular_core.InputSignal<string>;
|
|
41
|
+
readonly sdItemActivate: _angular_core.OutputEmitterRef<SdBreadcrumbItem>;
|
|
42
|
+
protected readonly itemTemplate: _angular_core.Signal<TemplateRef<SdBreadcrumbItemTemplateContext> | undefined>;
|
|
43
|
+
protected readonly visibleEntries: _angular_core.Signal<readonly SdBreadcrumbEntry[]>;
|
|
44
|
+
constructor();
|
|
45
|
+
protected activate(item: SdBreadcrumbResolvedItem, event: Event): void;
|
|
46
|
+
protected href(item: SdBreadcrumbResolvedItem): string | null;
|
|
47
|
+
protected templateContext(item: SdBreadcrumbResolvedItem): SdBreadcrumbItemTemplateContext;
|
|
48
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<SdBreadcrumb, never>;
|
|
49
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<SdBreadcrumb, "sd-breadcrumb", never, { "items": { "alias": "items"; "required": false; "isSignal": true; }; "maxItems": { "alias": "maxItems"; "required": false; "isSignal": true; }; "ariaLabel": { "alias": "ariaLabel"; "required": false; "isSignal": true; }; "separator": { "alias": "separator"; "required": false; "isSignal": true; }; }, { "sdItemActivate": "sdItemActivate"; }, ["itemTemplate"], never, true, never>;
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
export { SdBreadcrumb };
|
|
53
|
+
export type { SdBreadcrumbItem, SdBreadcrumbItemTemplateContext, SdBreadcrumbLabel, SdBreadcrumbResolvedItem, SdBreadcrumbRouteConfig };
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
import * as _angular_core from '@angular/core';
|
|
2
|
+
import { TemplateRef } from '@angular/core';
|
|
3
|
+
import { SdIconSet } from '@sdcorejs/angular/modules/icon';
|
|
4
|
+
|
|
5
|
+
type SdDataStateKind = 'loading' | 'empty' | 'error' | 'forbidden' | 'success';
|
|
6
|
+
interface SdDataStateTemplateContext {
|
|
7
|
+
readonly $implicit: SdDataStateKind;
|
|
8
|
+
readonly state: SdDataStateKind;
|
|
9
|
+
readonly retry: () => void;
|
|
10
|
+
readonly action: () => void;
|
|
11
|
+
}
|
|
12
|
+
declare class SdDataStateTemplateDirective {
|
|
13
|
+
readonly template: TemplateRef<SdDataStateTemplateContext>;
|
|
14
|
+
static ngTemplateContextGuard(_directive: SdDataStateTemplateDirective, _context: unknown): _context is SdDataStateTemplateContext;
|
|
15
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<SdDataStateTemplateDirective, never>;
|
|
16
|
+
static ɵdir: _angular_core.ɵɵDirectiveDeclaration<SdDataStateTemplateDirective, "ng-template[sdDataStateTemplate]", never, {}, {}, never, never, true, never>;
|
|
17
|
+
}
|
|
18
|
+
declare class SdDataState {
|
|
19
|
+
readonly state: _angular_core.InputSignal<SdDataStateKind>;
|
|
20
|
+
readonly title: _angular_core.InputSignal<string | null | undefined>;
|
|
21
|
+
readonly message: _angular_core.InputSignal<string | null | undefined>;
|
|
22
|
+
readonly icon: _angular_core.InputSignal<string | null | undefined>;
|
|
23
|
+
readonly fontSet: _angular_core.InputSignal<SdIconSet | undefined>;
|
|
24
|
+
readonly retryable: _angular_core.InputSignalWithTransform<boolean, unknown>;
|
|
25
|
+
readonly retryLabel: _angular_core.InputSignal<string | null | undefined>;
|
|
26
|
+
readonly actionLabel: _angular_core.InputSignal<string | null | undefined>;
|
|
27
|
+
readonly compact: _angular_core.InputSignalWithTransform<boolean, unknown>;
|
|
28
|
+
readonly fullPage: _angular_core.InputSignalWithTransform<boolean, unknown>;
|
|
29
|
+
readonly sdRetry: _angular_core.OutputEmitterRef<void>;
|
|
30
|
+
readonly sdAction: _angular_core.OutputEmitterRef<void>;
|
|
31
|
+
protected readonly customTemplate: _angular_core.Signal<SdDataStateTemplateDirective | undefined>;
|
|
32
|
+
protected readonly effectiveIcon: _angular_core.Signal<string | null>;
|
|
33
|
+
protected readonly titleKey: _angular_core.Signal<string>;
|
|
34
|
+
protected readonly messageKey: _angular_core.Signal<string>;
|
|
35
|
+
protected readonly role: _angular_core.Signal<"alert" | "status">;
|
|
36
|
+
protected readonly retry: () => void;
|
|
37
|
+
protected readonly action: () => void;
|
|
38
|
+
protected readonly templateContext: _angular_core.Signal<SdDataStateTemplateContext>;
|
|
39
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<SdDataState, never>;
|
|
40
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<SdDataState, "sd-data-state", never, { "state": { "alias": "state"; "required": false; "isSignal": true; }; "title": { "alias": "title"; "required": false; "isSignal": true; }; "message": { "alias": "message"; "required": false; "isSignal": true; }; "icon": { "alias": "icon"; "required": false; "isSignal": true; }; "fontSet": { "alias": "fontSet"; "required": false; "isSignal": true; }; "retryable": { "alias": "retryable"; "required": false; "isSignal": true; }; "retryLabel": { "alias": "retryLabel"; "required": false; "isSignal": true; }; "actionLabel": { "alias": "actionLabel"; "required": false; "isSignal": true; }; "compact": { "alias": "compact"; "required": false; "isSignal": true; }; "fullPage": { "alias": "fullPage"; "required": false; "isSignal": true; }; }, { "sdRetry": "sdRetry"; "sdAction": "sdAction"; }, ["customTemplate"], ["*"], true, never>;
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
export { SdDataState, SdDataStateTemplateDirective };
|
|
44
|
+
export type { SdDataStateKind, SdDataStateTemplateContext };
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
|
-
import {
|
|
2
|
+
import { 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
|
|
|
@@ -103,7 +103,7 @@ declare class SdHeaderFooterBuilder {
|
|
|
103
103
|
#private;
|
|
104
104
|
Editor: typeof ClassicEditor;
|
|
105
105
|
set model(value: string | undefined | null);
|
|
106
|
-
modelChange:
|
|
106
|
+
readonly modelChange: i0.OutputEmitterRef<string>;
|
|
107
107
|
config: EditorConfig & {
|
|
108
108
|
_i18n?: DocumentBuilderI18n;
|
|
109
109
|
};
|
|
@@ -201,10 +201,10 @@ declare class CkCommentPlugin extends Plugin {
|
|
|
201
201
|
|
|
202
202
|
declare class SdDocumentBuilder implements OnInit, OnDestroy {
|
|
203
203
|
#private;
|
|
204
|
-
option: SdDocumentBuilderOption
|
|
204
|
+
readonly option: i0.InputSignal<SdDocumentBuilderOption>;
|
|
205
205
|
disabled: boolean;
|
|
206
206
|
set _disabled(val: boolean | '' | undefined | null);
|
|
207
|
-
contentChange:
|
|
207
|
+
readonly contentChange: i0.OutputEmitterRef<string>;
|
|
208
208
|
Editor: typeof ClassicEditor;
|
|
209
209
|
config: DocumentBuilderOption;
|
|
210
210
|
ngOnInit(): void;
|
|
@@ -245,7 +245,7 @@ declare class SdDocumentBuilder implements OnInit, OnDestroy {
|
|
|
245
245
|
hightSelectRange: (range: ModelRange) => void;
|
|
246
246
|
removeHighlightSeclectRange: () => void;
|
|
247
247
|
static ɵfac: i0.ɵɵFactoryDeclaration<SdDocumentBuilder, never>;
|
|
248
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<SdDocumentBuilder, "sd-document-builder", never, { "option": { "alias": "option"; "required": true; }; "_disabled": { "alias": "disabled"; "required": false; }; }, { "contentChange": "contentChange"; }, never, never, true, never>;
|
|
248
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<SdDocumentBuilder, "sd-document-builder", never, { "option": { "alias": "option"; "required": true; "isSignal": true; }; "_disabled": { "alias": "disabled"; "required": false; }; }, { "contentChange": "contentChange"; }, never, never, true, never>;
|
|
249
249
|
}
|
|
250
250
|
|
|
251
251
|
export { SdDocumentBuilder, SdHeaderFooterBuilder };
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import * as
|
|
2
|
-
import { InjectionToken,
|
|
1
|
+
import * as _angular_core from '@angular/core';
|
|
2
|
+
import { InjectionToken, OnDestroy, OnInit, AfterViewInit, QueryList } 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';
|
|
@@ -12,7 +12,6 @@ import { Subject } from 'rxjs';
|
|
|
12
12
|
import { SdSideDrawer } from '@sdcorejs/angular/components/side-drawer';
|
|
13
13
|
import { SdSearch as SdSearch$1 } from '@sdcorejs/angular/forms';
|
|
14
14
|
import * as _sdcorejs_angular_components_form_generic from '@sdcorejs/angular/components/form-generic';
|
|
15
|
-
import { SdFormatNumberPipe } from '@sdcorejs/angular/pipes';
|
|
16
15
|
|
|
17
16
|
type SdFormRenderEntity = Record<string, any> & {
|
|
18
17
|
sdRaw?: Record<string, any>;
|
|
@@ -541,63 +540,15 @@ interface ISdFormGenericConfiguration {
|
|
|
541
540
|
}
|
|
542
541
|
declare const SD_FORM_GENERIC_CONFIGURATION: InjectionToken<ISdFormGenericConfiguration>;
|
|
543
542
|
|
|
544
|
-
declare class FormGenericService {
|
|
545
|
-
#private;
|
|
546
|
-
private readonly configuration;
|
|
547
|
-
get selections(): (() => Promise<SdFormGenericDefinitionSelection[]>) | SdFormGenericDefinitionSelection<any, any>[] | (() => SdFormGenericDefinitionSelection<any, any>[]);
|
|
548
|
-
get tables(): _sdcorejs_angular_components_form_generic.SdFormGenericDefinitionTable<any>[];
|
|
549
|
-
getSelection: (valuesKey: string | undefined | null) => Promise<SdFormGenericDefinitionSelection | undefined>;
|
|
550
|
-
selection: {
|
|
551
|
-
definitions: () => Promise<SdFormGenericDefinitionSelection[]>;
|
|
552
|
-
getDefinition: (valuesKey: string | undefined | null) => Promise<SdFormGenericDefinitionSelection | undefined>;
|
|
553
|
-
items: (valuesKey: string | undefined | null, args: SdFormGenericArgs) => Promise<SdFormGenericSelectionItem[] | SdSearch$1<SdFormGenericSelectionItem>>;
|
|
554
|
-
variables: {
|
|
555
|
-
detail: (valuesKey: string, values: string | number | string[] | number[], args: SdFormGenericArgs) => Promise<any>;
|
|
556
|
-
};
|
|
557
|
-
};
|
|
558
|
-
html: {
|
|
559
|
-
definitions: () => Promise<SdFormGenericDefinitionHtml[]>;
|
|
560
|
-
getContent: (template: string, query?: Record<string, any>) => Promise<string>;
|
|
561
|
-
};
|
|
562
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<FormGenericService, never>;
|
|
563
|
-
static ɵprov: i0.ɵɵInjectableDeclaration<FormGenericService>;
|
|
564
|
-
}
|
|
565
|
-
|
|
566
|
-
declare class ComponentViewedPipe implements PipeTransform {
|
|
567
|
-
private readonly formatNumberPipe;
|
|
568
|
-
private readonly formGenericService;
|
|
569
|
-
constructor(formatNumberPipe: SdFormatNumberPipe, formGenericService: FormGenericService);
|
|
570
|
-
transform: (value: any, entity: Record<string, any>, component: Exclude<SdFormGenericComponent, SdFormGenericHtml>) => Promise<string>;
|
|
571
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<ComponentViewedPipe, never>;
|
|
572
|
-
static ɵpipe: i0.ɵɵPipeDeclaration<ComponentViewedPipe, "componentViewed", true>;
|
|
573
|
-
static ɵprov: i0.ɵɵInjectableDeclaration<ComponentViewedPipe>;
|
|
574
|
-
}
|
|
575
|
-
|
|
576
|
-
declare class ExpressionFeelPipe implements PipeTransform {
|
|
577
|
-
#private;
|
|
578
|
-
transform(condition: SdFormGenericExpression | SdFormGenericExpressionCondition): string | undefined;
|
|
579
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<ExpressionFeelPipe, never>;
|
|
580
|
-
static ɵpipe: i0.ɵɵPipeDeclaration<ExpressionFeelPipe, "expressionFeel", true>;
|
|
581
|
-
static ɵprov: i0.ɵɵInjectableDeclaration<ExpressionFeelPipe>;
|
|
582
|
-
}
|
|
583
|
-
|
|
584
|
-
declare class SdFormRenderService {
|
|
585
|
-
private readonly componentViewedPipe;
|
|
586
|
-
constructor(componentViewedPipe: ComponentViewedPipe);
|
|
587
|
-
viewEntities: (form: SdFormGeneric, entities: Record<string, any>[]) => Promise<Record<string, any>[]>;
|
|
588
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<SdFormRenderService, never>;
|
|
589
|
-
static ɵprov: i0.ɵɵInjectableDeclaration<SdFormRenderService>;
|
|
590
|
-
}
|
|
591
|
-
|
|
592
543
|
declare class UploadComponent implements OnDestroy, OnInit {
|
|
593
544
|
#private;
|
|
594
545
|
private readonly ref;
|
|
595
|
-
setVariables: Subject<{
|
|
546
|
+
readonly setVariables: _angular_core.InputSignal<Subject<{
|
|
596
547
|
key: string;
|
|
597
548
|
value: any;
|
|
598
|
-
}
|
|
549
|
+
}>>;
|
|
599
550
|
sdUploadFile?: SdUploadFile;
|
|
600
|
-
form: FormGroup<{}
|
|
551
|
+
readonly form: _angular_core.InputSignal<FormGroup<{}>>;
|
|
601
552
|
value: any;
|
|
602
553
|
entity: Record<string, any>;
|
|
603
554
|
set _entity(val: Record<string, any>);
|
|
@@ -611,12 +562,13 @@ declare class UploadComponent implements OnDestroy, OnInit {
|
|
|
611
562
|
set _viewed(val: boolean | '' | undefined | null);
|
|
612
563
|
validator?: SdCustomValidator;
|
|
613
564
|
set _validator(validator: SdCustomValidator | undefined | null);
|
|
614
|
-
|
|
565
|
+
/** Inserted by Angular inject() migration for backwards compatibility */
|
|
566
|
+
constructor(...args: unknown[]);
|
|
615
567
|
ngOnDestroy(): void;
|
|
616
568
|
ngOnInit(): void;
|
|
617
569
|
upload: () => Promise<void | undefined>;
|
|
618
|
-
static ɵfac:
|
|
619
|
-
static ɵcmp:
|
|
570
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<UploadComponent, never>;
|
|
571
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<UploadComponent, "lib-upload", never, { "setVariables": { "alias": "setVariables"; "required": true; "isSignal": true; }; "form": { "alias": "form"; "required": false; "isSignal": true; }; "_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>;
|
|
620
572
|
}
|
|
621
573
|
|
|
622
574
|
declare class TableComponent implements AfterViewInit, OnDestroy, OnInit {
|
|
@@ -626,11 +578,11 @@ declare class TableComponent implements AfterViewInit, OnDestroy, OnInit {
|
|
|
626
578
|
uploadFiles?: QueryList<SdUploadFile>;
|
|
627
579
|
table?: SdTable;
|
|
628
580
|
sideDrawer?: SdSideDrawer;
|
|
629
|
-
setVariables: Subject<{
|
|
581
|
+
readonly setVariables: _angular_core.InputSignal<Subject<{
|
|
630
582
|
key: string;
|
|
631
583
|
value: any;
|
|
632
|
-
}
|
|
633
|
-
form: FormGroup<{}
|
|
584
|
+
}>>;
|
|
585
|
+
readonly form: _angular_core.InputSignal<FormGroup<{}>>;
|
|
634
586
|
component?: SdFormGenericTable;
|
|
635
587
|
col: string;
|
|
636
588
|
set _component(val: SdFormGenericTable);
|
|
@@ -640,14 +592,15 @@ declare class TableComponent implements AfterViewInit, OnDestroy, OnInit {
|
|
|
640
592
|
set _viewed(val: boolean | '' | undefined | null);
|
|
641
593
|
model: any[];
|
|
642
594
|
set _model(val: any[] | undefined | null);
|
|
643
|
-
modelChange:
|
|
595
|
+
readonly modelChange: _angular_core.OutputEmitterRef<any[]>;
|
|
644
596
|
tableOption?: SdTableOption;
|
|
645
597
|
row: any;
|
|
646
598
|
columnValues: Record<string, SdFormGenericSelectionItem[] | SdSearch$1>;
|
|
647
599
|
formRenderColumn: Record<string, SdFormGenericTableColumn>;
|
|
648
600
|
fileKeys: string[];
|
|
649
601
|
imageKeys: string[];
|
|
650
|
-
|
|
602
|
+
/** Inserted by Angular inject() migration for backwards compatibility */
|
|
603
|
+
constructor(...args: unknown[]);
|
|
651
604
|
ngOnInit(): void;
|
|
652
605
|
ngAfterViewInit(): void;
|
|
653
606
|
ngOnDestroy(): void;
|
|
@@ -657,18 +610,18 @@ declare class TableComponent implements AfterViewInit, OnDestroy, OnInit {
|
|
|
657
610
|
onFileUploadChange(item: any, key: string, newValue: any): void;
|
|
658
611
|
getArgs(key: string): Record<string, any> | undefined;
|
|
659
612
|
upload: () => Promise<void>;
|
|
660
|
-
static ɵfac:
|
|
661
|
-
static ɵcmp:
|
|
613
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<TableComponent, never>;
|
|
614
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<TableComponent, "lib-table", never, { "setVariables": { "alias": "setVariables"; "required": true; "isSignal": true; }; "form": { "alias": "form"; "required": false; "isSignal": true; }; "_component": { "alias": "component"; "required": true; }; "_required": { "alias": "required"; "required": false; }; "_viewed": { "alias": "viewed"; "required": false; }; "_model": { "alias": "model"; "required": false; }; }, { "modelChange": "modelChange"; }, never, never, true, never>;
|
|
662
615
|
}
|
|
663
616
|
|
|
664
617
|
declare class LibItemComponent {
|
|
665
618
|
itemUpload?: UploadComponent;
|
|
666
619
|
itemTable?: TableComponent;
|
|
667
|
-
setVariables: Subject<{
|
|
620
|
+
readonly setVariables: _angular_core.InputSignal<Subject<{
|
|
668
621
|
key: string;
|
|
669
622
|
value: any;
|
|
670
|
-
}
|
|
671
|
-
form: FormGroup<{}
|
|
623
|
+
}>>;
|
|
624
|
+
readonly form: _angular_core.InputSignal<FormGroup<{}>>;
|
|
672
625
|
value: any;
|
|
673
626
|
entity: Record<string, any>;
|
|
674
627
|
set _entity(val: Record<string, any>);
|
|
@@ -684,8 +637,8 @@ declare class LibItemComponent {
|
|
|
684
637
|
validator?: SdCustomValidator;
|
|
685
638
|
set _validator(validator: SdCustomValidator);
|
|
686
639
|
upload: () => Promise<void>;
|
|
687
|
-
static ɵfac:
|
|
688
|
-
static ɵcmp:
|
|
640
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<LibItemComponent, never>;
|
|
641
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<LibItemComponent, "lib-item", never, { "setVariables": { "alias": "setVariables"; "required": true; "isSignal": true; }; "form": { "alias": "form"; "required": false; "isSignal": true; }; "_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>;
|
|
689
642
|
}
|
|
690
643
|
|
|
691
644
|
declare class SdFormRender implements OnDestroy, AfterViewInit {
|
|
@@ -714,8 +667,8 @@ declare class SdFormRender implements OnDestroy, AfterViewInit {
|
|
|
714
667
|
ngOnDestroy(): void;
|
|
715
668
|
upload: () => Promise<void>;
|
|
716
669
|
getValidationMessages: (alert: SdFormGenericValidation["alert"]) => Promise<string[] | undefined>;
|
|
717
|
-
static ɵfac:
|
|
718
|
-
static ɵcmp:
|
|
670
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<SdFormRender, never>;
|
|
671
|
+
static ɵcmp: _angular_core.ɵɵ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>;
|
|
719
672
|
}
|
|
720
673
|
|
|
721
674
|
declare class ConfigureValidationComponent implements AfterViewInit, OnDestroy {
|
|
@@ -728,7 +681,7 @@ declare class ConfigureValidationComponent implements AfterViewInit, OnDestroy {
|
|
|
728
681
|
value: string;
|
|
729
682
|
display: string;
|
|
730
683
|
}[];
|
|
731
|
-
accept:
|
|
684
|
+
readonly accept: _angular_core.OutputEmitterRef<SdFormGenericValidation[]>;
|
|
732
685
|
private readonly ref;
|
|
733
686
|
private readonly formGenericConfiguration;
|
|
734
687
|
constructor();
|
|
@@ -738,8 +691,8 @@ declare class ConfigureValidationComponent implements AfterViewInit, OnDestroy {
|
|
|
738
691
|
addValidation: (type: SdFormGenericValidation["type"]) => void;
|
|
739
692
|
removaValidation: (index: number) => void;
|
|
740
693
|
updateValidations: () => void;
|
|
741
|
-
static ɵfac:
|
|
742
|
-
static ɵcmp:
|
|
694
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<ConfigureValidationComponent, never>;
|
|
695
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<ConfigureValidationComponent, "configure-validation", never, {}, { "accept": "accept"; }, never, never, true, never>;
|
|
743
696
|
}
|
|
744
697
|
|
|
745
698
|
type FormBuilderLayoutItem = SdFormGenericComponent | SdFormGenericGroup;
|
|
@@ -772,23 +725,23 @@ type PaletteDropTarget = {
|
|
|
772
725
|
};
|
|
773
726
|
declare class SdFormBuilder implements OnInit, OnDestroy {
|
|
774
727
|
#private;
|
|
775
|
-
readonly popupViewJSON:
|
|
776
|
-
readonly popupConfigureVariables:
|
|
777
|
-
readonly configureValidation:
|
|
778
|
-
readonly formRender:
|
|
728
|
+
readonly popupViewJSON: _angular_core.Signal<SdModal | undefined>;
|
|
729
|
+
readonly popupConfigureVariables: _angular_core.Signal<SdModal | undefined>;
|
|
730
|
+
readonly configureValidation: _angular_core.Signal<ConfigureValidationComponent | undefined>;
|
|
731
|
+
readonly formRender: _angular_core.Signal<SdFormRender | undefined>;
|
|
779
732
|
private readonly canvasDropZone;
|
|
780
|
-
readonly rowDropLists:
|
|
781
|
-
readonly connectedRowDropLists:
|
|
733
|
+
readonly rowDropLists: _angular_core.Signal<readonly CdkDropList<any>[]>;
|
|
734
|
+
readonly connectedRowDropLists: _angular_core.Signal<CdkDropList<any>[]>;
|
|
782
735
|
form: FormGroup<{}>;
|
|
783
736
|
/** Input chính: schema form. Mỗi lần ref thay đổi → effect sẽ clone về local arrays. */
|
|
784
|
-
readonly formGeneric:
|
|
737
|
+
readonly formGeneric: _angular_core.InputSignal<SdFormGeneric | undefined>;
|
|
785
738
|
readonly formBuilderComponents: FormBuilderComponent[];
|
|
786
739
|
readonly componentIcons: Record<string, {
|
|
787
740
|
symbol: string;
|
|
788
741
|
label: string;
|
|
789
742
|
}>;
|
|
790
|
-
readonly paletteSearch:
|
|
791
|
-
readonly paletteGroups:
|
|
743
|
+
readonly paletteSearch: _angular_core.WritableSignal<string>;
|
|
744
|
+
readonly paletteGroups: _angular_core.Signal<{
|
|
792
745
|
key: FormBuilderComponentGroup;
|
|
793
746
|
label: string;
|
|
794
747
|
items: FormBuilderComponent[];
|
|
@@ -798,23 +751,23 @@ declare class SdFormBuilder implements OnInit, OnDestroy {
|
|
|
798
751
|
validations: Required<SdFormGeneric>['validations'];
|
|
799
752
|
/** Cloned variables — dùng cho modal "Configure variables" (huỷ thì discard, ok thì gán ngược). */
|
|
800
753
|
clonedVariables: SdFormGenericVariable[];
|
|
801
|
-
readonly selectedComponent:
|
|
802
|
-
readonly isPreview:
|
|
803
|
-
readonly editingGroupId:
|
|
754
|
+
readonly selectedComponent: _angular_core.WritableSignal<SdFormGenericComponent | SdFormGenericGroup | undefined>;
|
|
755
|
+
readonly isPreview: _angular_core.WritableSignal<boolean>;
|
|
756
|
+
readonly editingGroupId: _angular_core.WritableSignal<string | undefined>;
|
|
804
757
|
/** Group đang được Detail (tìm ở TOP-LEVEL theo id), undefined = đang ở canvas chính. */
|
|
805
|
-
readonly editingGroup:
|
|
758
|
+
readonly editingGroup: _angular_core.Signal<SdFormGenericGroup | undefined>;
|
|
806
759
|
/** Signal toàn cục: TRUE khi BẤT KỲ cdkDrag nào đang active (palette, canvas, group, resize).
|
|
807
760
|
* Trigger class `.fb-shell--dragging` để ẩn hover/actions/resize toàn diện, không phụ thuộc :has(). */
|
|
808
|
-
readonly isAnyDragging:
|
|
809
|
-
readonly dragSource:
|
|
810
|
-
readonly draggedPaletteItem:
|
|
811
|
-
readonly paletteDropTarget:
|
|
761
|
+
readonly isAnyDragging: _angular_core.WritableSignal<boolean>;
|
|
762
|
+
readonly dragSource: _angular_core.WritableSignal<"row" | "palette" | "canvas" | "resize" | undefined>;
|
|
763
|
+
readonly draggedPaletteItem: _angular_core.WritableSignal<FormBuilderComponent | undefined>;
|
|
764
|
+
readonly paletteDropTarget: _angular_core.WritableSignal<PaletteDropTarget | undefined>;
|
|
812
765
|
/** @deprecated Internal drag-preview compatibility mirror; use no application code. */
|
|
813
|
-
readonly rowInsertionEdge:
|
|
766
|
+
readonly rowInsertionEdge: _angular_core.WritableSignal<RowInsertionEdge>;
|
|
814
767
|
/** @deprecated Internal drag-preview compatibility mirror; use no application code. */
|
|
815
|
-
readonly inlineDropTargetRow:
|
|
816
|
-
readonly resizeState:
|
|
817
|
-
readonly isResizing:
|
|
768
|
+
readonly inlineDropTargetRow: _angular_core.WritableSignal<DragDropRowItem | undefined>;
|
|
769
|
+
readonly resizeState: _angular_core.WritableSignal<ResizeState | undefined>;
|
|
770
|
+
readonly isResizing: _angular_core.Signal<boolean>;
|
|
818
771
|
expand: boolean;
|
|
819
772
|
dragDropRows: DragDropRowItem[];
|
|
820
773
|
isDragging: boolean;
|
|
@@ -902,8 +855,8 @@ declare class SdFormBuilder implements OnInit, OnDestroy {
|
|
|
902
855
|
openConfigureValidation: () => void;
|
|
903
856
|
onUpdateValidations: (validations: SdFormGenericValidation[]) => void;
|
|
904
857
|
onValidate: () => Promise<void>;
|
|
905
|
-
static ɵfac:
|
|
906
|
-
static ɵcmp:
|
|
858
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<SdFormBuilder, never>;
|
|
859
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<SdFormBuilder, "sd-form-builder", never, { "formGeneric": { "alias": "formGeneric"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
907
860
|
}
|
|
908
861
|
|
|
909
862
|
declare class SdFeelExpression implements OnInit {
|
|
@@ -920,26 +873,36 @@ declare class SdFeelExpression implements OnInit {
|
|
|
920
873
|
}[]>;
|
|
921
874
|
attributes: Attribute[];
|
|
922
875
|
attribute: Record<string, Attribute>;
|
|
923
|
-
components: (SdFormGenericComponent | SdFormGenericGroup)[]
|
|
876
|
+
readonly components: _angular_core.InputSignal<(SdFormGenericComponent | SdFormGenericGroup)[]>;
|
|
924
877
|
expression?: SdFormGenericExpression;
|
|
925
878
|
set _expression(expression: SdFormGenericExpression | undefined);
|
|
926
|
-
expressionChange:
|
|
879
|
+
readonly expressionChange: _angular_core.OutputEmitterRef<SdFormGenericExpression>;
|
|
927
880
|
model?: string;
|
|
928
881
|
set _model(model: string | undefined);
|
|
929
|
-
modelChange:
|
|
930
|
-
sdChange:
|
|
882
|
+
readonly modelChange: _angular_core.OutputEmitterRef<string | undefined>;
|
|
883
|
+
readonly sdChange: _angular_core.OutputEmitterRef<{
|
|
931
884
|
model?: string;
|
|
932
885
|
expression?: SdFormGenericExpression;
|
|
933
886
|
}>;
|
|
934
|
-
|
|
887
|
+
/** Inserted by Angular inject() migration for backwards compatibility */
|
|
888
|
+
constructor(...args: unknown[]);
|
|
935
889
|
ngOnInit(): void;
|
|
936
890
|
edit: () => Promise<void>;
|
|
937
891
|
addCondition: (conditions: SdFormGenericExpression["conditions"]) => void;
|
|
938
892
|
addCombinator: (conditions: SdFormGenericExpression["conditions"]) => void;
|
|
939
893
|
remove: (conditions: SdFormGenericExpression["conditions"], idx: number) => void;
|
|
940
894
|
onAccept: () => void;
|
|
941
|
-
static ɵfac:
|
|
942
|
-
static ɵcmp:
|
|
895
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<SdFeelExpression, never>;
|
|
896
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<SdFeelExpression, "sd-feel-expression", never, { "components": { "alias": "components"; "required": true; "isSignal": true; }; "_expression": { "alias": "expression"; "required": true; }; "_model": { "alias": "model"; "required": true; }; }, { "expressionChange": "expressionChange"; "modelChange": "modelChange"; "sdChange": "sdChange"; }, never, never, true, never>;
|
|
897
|
+
}
|
|
898
|
+
|
|
899
|
+
declare class SdFormRenderService {
|
|
900
|
+
private readonly componentViewedPipe;
|
|
901
|
+
/** Inserted by Angular inject() migration for backwards compatibility */
|
|
902
|
+
constructor(...args: unknown[]);
|
|
903
|
+
viewEntities: (form: SdFormGeneric, entities: Record<string, any>[]) => Promise<Record<string, any>[]>;
|
|
904
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<SdFormRenderService, never>;
|
|
905
|
+
static ɵprov: _angular_core.ɵɵInjectableDeclaration<SdFormRenderService>;
|
|
943
906
|
}
|
|
944
907
|
|
|
945
908
|
export { AttributeOperators, COMPONENT_ICONS, DayInfoPreviouses, DayInfoTypes, EvaluateExpression, ExpressionToJavascriptExpression, FormBuilderComponents, GenerateId, GenerateKey, GetAttributes, GetComponentAttributes, GetDatetimeValue, GetVariableAttributes, Operators, SD_FORM_GENERIC_CONFIGURATION, SdFeelExpression, SdFormBuilder, SdFormRender, SdFormRenderService, SdFormatComponent, TableColumnTypes, TemplateToCondition };
|
|
@@ -1,10 +1,7 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
|
-
import {
|
|
2
|
+
import { OnInit, OnDestroy } from '@angular/core';
|
|
3
3
|
import { MatPaginator } from '@angular/material/paginator';
|
|
4
4
|
import { SdModal } from '@sdcorejs/angular/components/modal';
|
|
5
|
-
import { SdExcelService } from '@sdcorejs/angular/services/excel';
|
|
6
|
-
import { SdNotifyService } from '@sdcorejs/angular/services/notify';
|
|
7
|
-
import { SdLoadingService } from '@sdcorejs/angular/services/loading';
|
|
8
5
|
|
|
9
6
|
interface SdImportExcelValidation {
|
|
10
7
|
idx: number;
|
|
@@ -109,14 +106,6 @@ interface SdImportExcelItem<T = any> {
|
|
|
109
106
|
};
|
|
110
107
|
}
|
|
111
108
|
|
|
112
|
-
declare class ColumnHiddenPipe implements PipeTransform {
|
|
113
|
-
constructor();
|
|
114
|
-
transform(column: SdUploadExcelColumn): boolean;
|
|
115
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<ColumnHiddenPipe, never>;
|
|
116
|
-
static ɵpipe: i0.ɵɵPipeDeclaration<ColumnHiddenPipe, "columnHidden", true>;
|
|
117
|
-
static ɵprov: i0.ɵɵInjectableDeclaration<ColumnHiddenPipe>;
|
|
118
|
-
}
|
|
119
|
-
|
|
120
109
|
declare class SdImportExcel implements OnInit, OnDestroy {
|
|
121
110
|
#private;
|
|
122
111
|
private ref;
|
|
@@ -139,8 +128,9 @@ declare class SdImportExcel implements OnInit, OnDestroy {
|
|
|
139
128
|
uploading: boolean;
|
|
140
129
|
isUploaded: boolean;
|
|
141
130
|
isDownloadTemplate: boolean;
|
|
142
|
-
sdClosed:
|
|
143
|
-
|
|
131
|
+
readonly sdClosed: i0.OutputEmitterRef<void>;
|
|
132
|
+
/** Inserted by Angular inject() migration for backwards compatibility */
|
|
133
|
+
constructor(...args: unknown[]);
|
|
144
134
|
ngOnInit(): void;
|
|
145
135
|
ngOnDestroy(): void;
|
|
146
136
|
open: () => void;
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import * as _angular_core from '@angular/core';
|
|
2
|
+
import { SdTaskState, SdTaskView, SdTaskStatus } from '@sdcorejs/angular/services/task';
|
|
3
|
+
|
|
4
|
+
type SdJobProgressMode = 'bar' | 'compact' | 'details';
|
|
5
|
+
declare class SdJobProgress {
|
|
6
|
+
#private;
|
|
7
|
+
readonly taskId: _angular_core.InputSignal<string | undefined>;
|
|
8
|
+
readonly state: _angular_core.InputSignal<SdTaskState<unknown> | undefined>;
|
|
9
|
+
readonly mode: _angular_core.InputSignal<SdJobProgressMode>;
|
|
10
|
+
readonly title: _angular_core.InputSignal<string | undefined>;
|
|
11
|
+
readonly message: _angular_core.InputSignal<string | undefined>;
|
|
12
|
+
readonly showActions: _angular_core.InputSignalWithTransform<boolean, unknown>;
|
|
13
|
+
readonly sdCancel: _angular_core.OutputEmitterRef<void>;
|
|
14
|
+
readonly sdRetry: _angular_core.OutputEmitterRef<void>;
|
|
15
|
+
readonly task: _angular_core.Signal<SdTaskView<unknown> | undefined>;
|
|
16
|
+
readonly resolvedState: _angular_core.Signal<SdTaskState<unknown> | undefined>;
|
|
17
|
+
readonly progress: _angular_core.Signal<number | undefined>;
|
|
18
|
+
readonly effectiveTitle: _angular_core.Signal<string | undefined>;
|
|
19
|
+
readonly effectiveMessage: _angular_core.Signal<string | undefined>;
|
|
20
|
+
readonly statusLabel: _angular_core.Signal<string>;
|
|
21
|
+
readonly progressLabel: _angular_core.Signal<string>;
|
|
22
|
+
readonly cancelLabel: _angular_core.Signal<string>;
|
|
23
|
+
readonly retryLabel: _angular_core.Signal<string>;
|
|
24
|
+
readonly displayedError: _angular_core.Signal<string | undefined>;
|
|
25
|
+
readonly active: _angular_core.Signal<boolean>;
|
|
26
|
+
readonly canCancel: _angular_core.Signal<boolean>;
|
|
27
|
+
readonly canRetry: _angular_core.Signal<boolean>;
|
|
28
|
+
get modeAttr(): SdJobProgressMode;
|
|
29
|
+
get statusAttr(): SdTaskStatus;
|
|
30
|
+
readonly ariaLive = "polite";
|
|
31
|
+
onCancel(): void;
|
|
32
|
+
onRetry(): void;
|
|
33
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<SdJobProgress, never>;
|
|
34
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<SdJobProgress, "sd-job-progress", never, { "taskId": { "alias": "taskId"; "required": false; "isSignal": true; }; "state": { "alias": "state"; "required": false; "isSignal": true; }; "mode": { "alias": "mode"; "required": false; "isSignal": true; }; "title": { "alias": "title"; "required": false; "isSignal": true; }; "message": { "alias": "message"; "required": false; "isSignal": true; }; "showActions": { "alias": "showActions"; "required": false; "isSignal": true; }; }, { "sdCancel": "sdCancel"; "sdRetry": "sdRetry"; }, never, never, true, never>;
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
export { SdJobProgress };
|
|
38
|
+
export type { SdJobProgressMode };
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { MentionFeed, MentionFeedObjectItem, EditorConfig, ClassicEditor } from 'ckeditor5';
|
|
2
2
|
export { MentionFeedObjectItem } from 'ckeditor5';
|
|
3
|
-
import * as
|
|
4
|
-
import { OnDestroy
|
|
3
|
+
import * as _angular_core from '@angular/core';
|
|
4
|
+
import { OnDestroy } from '@angular/core';
|
|
5
5
|
import { ControlValueAccessor } from '@angular/forms';
|
|
6
6
|
|
|
7
7
|
type SdMiniEditorOutputFormat = 'html' | 'markdown';
|
|
@@ -69,15 +69,15 @@ declare class SdMiniEditor implements ControlValueAccessor, OnDestroy {
|
|
|
69
69
|
get maxEditorHeight(): string | undefined;
|
|
70
70
|
/** NgModel binding - nội dung HTML/Markdown */
|
|
71
71
|
value: string;
|
|
72
|
-
valueChange:
|
|
72
|
+
readonly valueChange: _angular_core.OutputEmitterRef<string>;
|
|
73
73
|
/** Event emitter khi content thay đổi */
|
|
74
|
-
contentChange:
|
|
74
|
+
readonly contentChange: _angular_core.OutputEmitterRef<string>;
|
|
75
75
|
/** Event emitter khi blur */
|
|
76
|
-
blur:
|
|
76
|
+
readonly blur: _angular_core.OutputEmitterRef<FocusEvent>;
|
|
77
77
|
/** Event emitter khi focus */
|
|
78
|
-
focus:
|
|
78
|
+
readonly focus: _angular_core.OutputEmitterRef<FocusEvent>;
|
|
79
79
|
/** Disabled state */
|
|
80
|
-
disabled: boolean
|
|
80
|
+
readonly disabled: _angular_core.InputSignal<boolean>;
|
|
81
81
|
Editor: typeof ClassicEditor;
|
|
82
82
|
get editorConfig(): SdMiniEditorConfig;
|
|
83
83
|
constructor();
|
|
@@ -130,8 +130,8 @@ declare class SdMiniEditor implements ControlValueAccessor, OnDestroy {
|
|
|
130
130
|
* ControlValueAccessor: Register touched callback
|
|
131
131
|
*/
|
|
132
132
|
registerOnTouched(fn: () => void): void;
|
|
133
|
-
static ɵfac:
|
|
134
|
-
static ɵcmp:
|
|
133
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<SdMiniEditor, never>;
|
|
134
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<SdMiniEditor, "sd-mini-editor", never, { "option": { "alias": "option"; "required": true; }; "value": { "alias": "value"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; }, { "valueChange": "valueChange"; "contentChange": "contentChange"; "blur": "blur"; "focus": "focus"; }, never, never, true, never>;
|
|
135
135
|
}
|
|
136
136
|
|
|
137
137
|
export { SdMiniEditor };
|
|
@@ -2,6 +2,7 @@ import * as _angular_core from '@angular/core';
|
|
|
2
2
|
import { TemplateRef, ElementRef } from '@angular/core';
|
|
3
3
|
import { Color } from '@sdcorejs/utils/models';
|
|
4
4
|
|
|
5
|
+
type SdModalBeforeClose = () => boolean | Promise<boolean>;
|
|
5
6
|
declare class SdModal {
|
|
6
7
|
#private;
|
|
7
8
|
static index: _angular_core.WritableSignal<number>;
|
|
@@ -20,14 +21,19 @@ declare class SdModal {
|
|
|
20
21
|
lazyLoadContent: _angular_core.InputSignalWithTransform<boolean, unknown>;
|
|
21
22
|
hideClose: _angular_core.InputSignalWithTransform<boolean, boolean | "">;
|
|
22
23
|
disableBackdropClose: _angular_core.InputSignalWithTransform<boolean, boolean | "">;
|
|
24
|
+
beforeClose: _angular_core.InputSignal<SdModalBeforeClose | undefined>;
|
|
23
25
|
sdClosed: _angular_core.OutputEmitterRef<void>;
|
|
26
|
+
sdCloseError: _angular_core.OutputEmitterRef<unknown>;
|
|
24
27
|
isOpened: _angular_core.WritableSignal<boolean>;
|
|
25
28
|
alreadyOpened: _angular_core.WritableSignal<boolean>;
|
|
26
29
|
constructor();
|
|
27
30
|
open: () => void;
|
|
28
31
|
close: () => void;
|
|
32
|
+
requestClose: () => Promise<boolean>;
|
|
33
|
+
forceClose: () => void;
|
|
29
34
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<SdModal, never>;
|
|
30
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<SdModal, "sd-modal", never, { "autoIdInput": { "alias": "autoId"; "required": false; "isSignal": true; }; "title": { "alias": "title"; "required": false; "isSignal": true; }; "color": { "alias": "color"; "required": false; "isSignal": true; }; "width": { "alias": "width"; "required": false; "isSignal": true; }; "height": { "alias": "height"; "required": false; "isSignal": true; }; "view": { "alias": "view"; "required": false; "isSignal": true; }; "modalClass": { "alias": "modalClass"; "required": false; "isSignal": true; }; "lazyLoadContent": { "alias": "lazyLoadContent"; "required": false; "isSignal": true; }; "hideClose": { "alias": "hideClose"; "required": false; "isSignal": true; }; "disableBackdropClose": { "alias": "disableBackdropClose"; "required": false; "isSignal": true; }; }, { "sdClosed": "sdClosed"; }, never, ["[sdHeaderLeft]", "[sdHeaderRight]", "*", "[sdFooterLeft]", "[sdFooterRight]"], true, never>;
|
|
35
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<SdModal, "sd-modal", never, { "autoIdInput": { "alias": "autoId"; "required": false; "isSignal": true; }; "title": { "alias": "title"; "required": false; "isSignal": true; }; "color": { "alias": "color"; "required": false; "isSignal": true; }; "width": { "alias": "width"; "required": false; "isSignal": true; }; "height": { "alias": "height"; "required": false; "isSignal": true; }; "view": { "alias": "view"; "required": false; "isSignal": true; }; "modalClass": { "alias": "modalClass"; "required": false; "isSignal": true; }; "lazyLoadContent": { "alias": "lazyLoadContent"; "required": false; "isSignal": true; }; "hideClose": { "alias": "hideClose"; "required": false; "isSignal": true; }; "disableBackdropClose": { "alias": "disableBackdropClose"; "required": false; "isSignal": true; }; "beforeClose": { "alias": "beforeClose"; "required": false; "isSignal": true; }; }, { "sdClosed": "sdClosed"; "sdCloseError": "sdCloseError"; }, never, ["[sdHeaderLeft]", "[sdHeaderRight]", "*", "[sdFooterLeft]", "[sdFooterRight]"], true, never>;
|
|
31
36
|
}
|
|
32
37
|
|
|
33
38
|
export { SdModal };
|
|
39
|
+
export type { SdModalBeforeClose };
|