commons-shared-web-ui 0.0.23 → 0.0.25
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/fesm2022/commons-shared-web-ui.mjs +276 -39
- package/fesm2022/commons-shared-web-ui.mjs.map +1 -1
- package/index.d.ts +85 -13
- package/package.json +1 -1
- package/src/lib/modules/confirmation-modal/confirmation-modal.theme.scss +1 -1
- package/src/lib/modules/smart-table/smart-table.theme.scss +4 -0
- package/src/lib/styles/utilities.scss +250 -0
package/index.d.ts
CHANGED
|
@@ -6,7 +6,7 @@ import { FormGroup, FormBuilder, FormArray, FormControl, ValidatorFn, ControlVal
|
|
|
6
6
|
import { HttpClient, HttpHeaders } from '@angular/common/http';
|
|
7
7
|
import * as i3$2 from '@angular/router';
|
|
8
8
|
import { Router, ActivatedRoute } from '@angular/router';
|
|
9
|
-
import {
|
|
9
|
+
import { BehaviorSubject, Subject, Observable } from 'rxjs';
|
|
10
10
|
import * as i2 from '@angular/material/snack-bar';
|
|
11
11
|
import { MatSnackBar, MatSnackBarRef } from '@angular/material/snack-bar';
|
|
12
12
|
import { DomSanitizer, SafeResourceUrl } from '@angular/platform-browser';
|
|
@@ -921,7 +921,10 @@ declare class SmartFormController {
|
|
|
921
921
|
labels: any;
|
|
922
922
|
/** Custom label keys for form actions (Next, Submit, Add, etc.) */
|
|
923
923
|
actionLabels?: FormLabels;
|
|
924
|
-
|
|
924
|
+
fieldSubjects: Map<string, BehaviorSubject<any>>;
|
|
925
|
+
fileAdded$: Subject<any>;
|
|
926
|
+
fileUploadFinished$: Subject<any>;
|
|
927
|
+
fileRemoved$: Subject<any>;
|
|
925
928
|
initialize(initialData: {
|
|
926
929
|
[key: string]: any;
|
|
927
930
|
}): void;
|
|
@@ -1013,6 +1016,9 @@ declare class SmartFormComponent implements OnInit, OnChanges, OnDestroy {
|
|
|
1013
1016
|
valueChange: EventEmitter<{
|
|
1014
1017
|
[key: string]: any;
|
|
1015
1018
|
}>;
|
|
1019
|
+
fileAdded: EventEmitter<any>;
|
|
1020
|
+
fileUploadFinished: EventEmitter<any>;
|
|
1021
|
+
fileRemoved: EventEmitter<any>;
|
|
1016
1022
|
formSchema: FormSchema;
|
|
1017
1023
|
formGroup: FormGroup;
|
|
1018
1024
|
fieldList: FieldConfig[];
|
|
@@ -1072,7 +1078,7 @@ declare class SmartFormComponent implements OnInit, OnChanges, OnDestroy {
|
|
|
1072
1078
|
private getButtonByActionKind;
|
|
1073
1079
|
private navigateTo;
|
|
1074
1080
|
static ɵfac: i0.ɵɵFactoryDeclaration<SmartFormComponent, never>;
|
|
1075
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<SmartFormComponent, "lib-smart-form", never, { "formJson": { "alias": "formJson"; "required": false; }; "initialValues": { "alias": "initialValues"; "required": false; }; "enableDraftAutoSave": { "alias": "enableDraftAutoSave"; "required": false; }; "labels": { "alias": "labels"; "required": false; }; "mode": { "alias": "mode"; "required": false; }; }, { "submit": "submit"; "draftSave": "draftSave"; "actionClick": "actionClick"; "valueChange": "valueChange"; }, never, never, false, never>;
|
|
1081
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<SmartFormComponent, "lib-smart-form", never, { "formJson": { "alias": "formJson"; "required": false; }; "initialValues": { "alias": "initialValues"; "required": false; }; "enableDraftAutoSave": { "alias": "enableDraftAutoSave"; "required": false; }; "labels": { "alias": "labels"; "required": false; }; "mode": { "alias": "mode"; "required": false; }; }, { "submit": "submit"; "draftSave": "draftSave"; "actionClick": "actionClick"; "valueChange": "valueChange"; "fileAdded": "fileAdded"; "fileUploadFinished": "fileUploadFinished"; "fileRemoved": "fileRemoved"; }, never, never, false, never>;
|
|
1076
1082
|
}
|
|
1077
1083
|
|
|
1078
1084
|
declare class FormSectionComponent implements OnInit, OnDestroy {
|
|
@@ -1845,7 +1851,7 @@ interface RadioConfig {
|
|
|
1845
1851
|
disabled?: boolean;
|
|
1846
1852
|
required?: boolean;
|
|
1847
1853
|
labelPosition?: 'before' | 'after';
|
|
1848
|
-
color?: 'primary' | 'accent' | 'warn';
|
|
1854
|
+
color?: 'primary' | 'warning' | 'danger' | 'success' | 'accent' | 'warn' | string;
|
|
1849
1855
|
layout?: 'vertical' | 'horizontal';
|
|
1850
1856
|
gap?: string;
|
|
1851
1857
|
labelColor?: string;
|
|
@@ -1872,7 +1878,7 @@ declare class RadioComponent implements ControlValueAccessor, OnInit {
|
|
|
1872
1878
|
disabled: boolean;
|
|
1873
1879
|
required: boolean;
|
|
1874
1880
|
labelPosition: 'before' | 'after';
|
|
1875
|
-
color: 'primary' | 'accent' | 'warn';
|
|
1881
|
+
color: 'primary' | 'warning' | 'danger' | 'success' | 'accent' | 'warn' | string;
|
|
1876
1882
|
layout: 'vertical' | 'horizontal';
|
|
1877
1883
|
labels: RadioLabels;
|
|
1878
1884
|
gap?: string;
|
|
@@ -1904,8 +1910,9 @@ declare class RadioComponent implements ControlValueAccessor, OnInit {
|
|
|
1904
1910
|
registerOnChange(fn: any): void;
|
|
1905
1911
|
registerOnTouched(fn: any): void;
|
|
1906
1912
|
setDisabledState(isDisabled: boolean): void;
|
|
1907
|
-
onRadioChange(
|
|
1913
|
+
onRadioChange(option: RadioOption): void;
|
|
1908
1914
|
private getStyleValue;
|
|
1915
|
+
private getThemeColor;
|
|
1909
1916
|
get wrapperStyles(): {
|
|
1910
1917
|
[key: string]: string | undefined;
|
|
1911
1918
|
};
|
|
@@ -1922,7 +1929,7 @@ interface ToggleConfig {
|
|
|
1922
1929
|
disabled?: boolean;
|
|
1923
1930
|
required?: boolean;
|
|
1924
1931
|
labelPosition?: 'before' | 'after';
|
|
1925
|
-
color?: string;
|
|
1932
|
+
color?: 'primary' | 'warning' | 'danger' | 'success' | string;
|
|
1926
1933
|
uncheckedColor?: string;
|
|
1927
1934
|
checkedColor?: string;
|
|
1928
1935
|
thumbColor?: string;
|
|
@@ -1976,6 +1983,7 @@ declare class ToggleComponent implements ControlValueAccessor, OnInit, OnChanges
|
|
|
1976
1983
|
setDisabledState(isDisabled: boolean): void;
|
|
1977
1984
|
onToggleChange(event: any): void;
|
|
1978
1985
|
private getStyleValue;
|
|
1986
|
+
private getThemeColor;
|
|
1979
1987
|
get wrapperStyles(): {
|
|
1980
1988
|
[key: string]: string | undefined;
|
|
1981
1989
|
};
|
|
@@ -2339,6 +2347,8 @@ declare class ButtonDropdownComponent {
|
|
|
2339
2347
|
declare class ConfirmationModalComponent implements OnInit, OnDestroy {
|
|
2340
2348
|
config: ConfirmationModalConfig;
|
|
2341
2349
|
isOpen: boolean;
|
|
2350
|
+
confirmDisabled: boolean;
|
|
2351
|
+
confirmLoading: boolean;
|
|
2342
2352
|
confirm: EventEmitter<void>;
|
|
2343
2353
|
cancel: EventEmitter<void>;
|
|
2344
2354
|
close: EventEmitter<void>;
|
|
@@ -2346,6 +2356,7 @@ declare class ConfirmationModalComponent implements OnInit, OnDestroy {
|
|
|
2346
2356
|
private defaultConfig;
|
|
2347
2357
|
mergedConfig: ConfirmationModalConfig;
|
|
2348
2358
|
private previousActiveElement;
|
|
2359
|
+
private isSubmitting;
|
|
2349
2360
|
ngOnInit(): void;
|
|
2350
2361
|
ngOnChanges(): void;
|
|
2351
2362
|
private updateConfig;
|
|
@@ -2364,7 +2375,7 @@ declare class ConfirmationModalComponent implements OnInit, OnDestroy {
|
|
|
2364
2375
|
getIconValue(icon: any): string;
|
|
2365
2376
|
getIconColor(icon: any): string | undefined;
|
|
2366
2377
|
static ɵfac: i0.ɵɵFactoryDeclaration<ConfirmationModalComponent, never>;
|
|
2367
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<ConfirmationModalComponent, "cc-confirmation-modal", never, { "config": { "alias": "config"; "required": false; }; "isOpen": { "alias": "isOpen"; "required": false; }; }, { "confirm": "confirm"; "cancel": "cancel"; "close": "close"; "showCodeSnippet": "showCodeSnippet"; }, never, ["*", "[cc-modal-footer]"], false, never>;
|
|
2378
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<ConfirmationModalComponent, "cc-confirmation-modal", never, { "config": { "alias": "config"; "required": false; }; "isOpen": { "alias": "isOpen"; "required": false; }; "confirmDisabled": { "alias": "confirmDisabled"; "required": false; }; "confirmLoading": { "alias": "confirmLoading"; "required": false; }; }, { "confirm": "confirm"; "cancel": "cancel"; "close": "close"; "showCodeSnippet": "showCodeSnippet"; }, never, ["*", "[cc-modal-footer]"], false, never>;
|
|
2368
2379
|
}
|
|
2369
2380
|
|
|
2370
2381
|
declare class ConfirmationModalModule {
|
|
@@ -3128,7 +3139,7 @@ interface TableFilter {
|
|
|
3128
3139
|
}
|
|
3129
3140
|
interface TableActionItem {
|
|
3130
3141
|
label: string;
|
|
3131
|
-
type: 'api' | 'callback' | 'route';
|
|
3142
|
+
type: 'api' | 'callback' | 'route' | 'delete';
|
|
3132
3143
|
icon?: string;
|
|
3133
3144
|
apiUrl?: string;
|
|
3134
3145
|
apiMethod?: 'GET' | 'POST' | 'PUT' | 'DELETE' | 'PATCH';
|
|
@@ -3136,6 +3147,15 @@ interface TableActionItem {
|
|
|
3136
3147
|
confirmationNeeded?: boolean;
|
|
3137
3148
|
confirmationMessage?: string;
|
|
3138
3149
|
callback?: (row: any) => void;
|
|
3150
|
+
/** Config for native 'delete' action type — drives the built-in confirmation modal */
|
|
3151
|
+
deleteConfig?: {
|
|
3152
|
+
apiUrl: string;
|
|
3153
|
+
idField?: string;
|
|
3154
|
+
modalTitle?: string;
|
|
3155
|
+
modalMessage?: string;
|
|
3156
|
+
confirmLabel?: string;
|
|
3157
|
+
cancelLabel?: string;
|
|
3158
|
+
};
|
|
3139
3159
|
}
|
|
3140
3160
|
interface TableAction {
|
|
3141
3161
|
label: string;
|
|
@@ -3182,7 +3202,7 @@ interface QueryParamsConfig {
|
|
|
3182
3202
|
}
|
|
3183
3203
|
interface TableConfig {
|
|
3184
3204
|
columns: TableColumn[];
|
|
3185
|
-
apiUrl
|
|
3205
|
+
apiUrl?: string;
|
|
3186
3206
|
apiMethod?: 'GET' | 'POST';
|
|
3187
3207
|
apiPayload?: any;
|
|
3188
3208
|
dataResponsePath?: string;
|
|
@@ -3220,6 +3240,22 @@ interface TableLabels {
|
|
|
3220
3240
|
itemsPerPageLabel?: string;
|
|
3221
3241
|
defaultConfirmationMessage?: string;
|
|
3222
3242
|
}
|
|
3243
|
+
/**
|
|
3244
|
+
* Emitted by the SmartTableComponent when operating in external-data mode
|
|
3245
|
+
* (i.e. when [tableData] input is provided by the parent).
|
|
3246
|
+
* The parent is responsible for fetching updated data based on this event
|
|
3247
|
+
* and providing it back via [tableData] and [totalItemsCount].
|
|
3248
|
+
*/
|
|
3249
|
+
interface TableDataChangeEvent {
|
|
3250
|
+
page: number;
|
|
3251
|
+
pageSize: number;
|
|
3252
|
+
sortBy?: string;
|
|
3253
|
+
orderBy?: 'ASC' | 'DESC';
|
|
3254
|
+
searchTerm?: string;
|
|
3255
|
+
filters?: {
|
|
3256
|
+
[key: string]: any;
|
|
3257
|
+
};
|
|
3258
|
+
}
|
|
3223
3259
|
|
|
3224
3260
|
declare class SmartTableComponent implements OnInit, OnChanges, AfterViewInit, OnDestroy {
|
|
3225
3261
|
private http;
|
|
@@ -3227,6 +3263,18 @@ declare class SmartTableComponent implements OnInit, OnChanges, AfterViewInit, O
|
|
|
3227
3263
|
private cdr;
|
|
3228
3264
|
private ngZone;
|
|
3229
3265
|
config: TableConfig;
|
|
3266
|
+
/**
|
|
3267
|
+
* External data mode: pass table rows directly from the parent.
|
|
3268
|
+
* When this input is provided, the component will NOT make any internal API calls.
|
|
3269
|
+
* Instead, it emits sortChange / pageChange / searchChange / filterChange events
|
|
3270
|
+
* so the parent can fetch and supply updated data.
|
|
3271
|
+
*/
|
|
3272
|
+
tableData?: any[];
|
|
3273
|
+
/**
|
|
3274
|
+
* Total number of items — used by the pagination component when operating in
|
|
3275
|
+
* external-data mode. Must be kept in sync by the parent.
|
|
3276
|
+
*/
|
|
3277
|
+
totalItemsCount?: number;
|
|
3230
3278
|
action: EventEmitter<{
|
|
3231
3279
|
action: TableAction;
|
|
3232
3280
|
row: any;
|
|
@@ -3241,6 +3289,12 @@ declare class SmartTableComponent implements OnInit, OnChanges, AfterViewInit, O
|
|
|
3241
3289
|
row: any;
|
|
3242
3290
|
column: string;
|
|
3243
3291
|
}>;
|
|
3292
|
+
/** Emitted in external-data mode when the user changes the sort column/direction. */
|
|
3293
|
+
sortChange: EventEmitter<TableDataChangeEvent>;
|
|
3294
|
+
/** Emitted in external-data mode when the user changes the page or page size. */
|
|
3295
|
+
pageChange: EventEmitter<TableDataChangeEvent>;
|
|
3296
|
+
/** Emitted in external-data mode when the user types in the search box. */
|
|
3297
|
+
searchChange: EventEmitter<TableDataChangeEvent>;
|
|
3244
3298
|
data: any[];
|
|
3245
3299
|
totalItems: number;
|
|
3246
3300
|
currentPage: number;
|
|
@@ -3249,6 +3303,7 @@ declare class SmartTableComponent implements OnInit, OnChanges, AfterViewInit, O
|
|
|
3249
3303
|
key: string;
|
|
3250
3304
|
direction: 'ASC' | 'DESC';
|
|
3251
3305
|
};
|
|
3306
|
+
private isSortActive;
|
|
3252
3307
|
activeFilters: {
|
|
3253
3308
|
[key: string]: any;
|
|
3254
3309
|
};
|
|
@@ -3259,6 +3314,14 @@ declare class SmartTableComponent implements OnInit, OnChanges, AfterViewInit, O
|
|
|
3259
3314
|
};
|
|
3260
3315
|
hasStickyColumns: boolean;
|
|
3261
3316
|
openDropdownId: string | null;
|
|
3317
|
+
/** Viewport-relative position used to render the dropdown as position:fixed. */
|
|
3318
|
+
dropdownPosition: {
|
|
3319
|
+
top: number;
|
|
3320
|
+
right: number;
|
|
3321
|
+
};
|
|
3322
|
+
deleteModalOpen: boolean;
|
|
3323
|
+
deleteModalConfig: any;
|
|
3324
|
+
private pendingDeleteAction;
|
|
3262
3325
|
searchSubject: Subject<string>;
|
|
3263
3326
|
stickyHeaders: QueryList<ElementRef>;
|
|
3264
3327
|
private resizeObserver;
|
|
@@ -3276,8 +3339,17 @@ declare class SmartTableComponent implements OnInit, OnChanges, AfterViewInit, O
|
|
|
3276
3339
|
onSort(col: TableColumn): void;
|
|
3277
3340
|
onSearch(event: Event): void;
|
|
3278
3341
|
onFilterChange(key: string, event: Event): void;
|
|
3342
|
+
/**
|
|
3343
|
+
* Assembles the current table state into a `TableDataChangeEvent` object.
|
|
3344
|
+
* Emitted to the parent in external-data mode so it can fetch and supply new data.
|
|
3345
|
+
*/
|
|
3346
|
+
private buildChangeEvent;
|
|
3279
3347
|
onAction(action: TableAction, row: any): void;
|
|
3280
3348
|
onActionItemClick(item: any, row: any, event: Event): void;
|
|
3349
|
+
private openDeleteConfirmModal;
|
|
3350
|
+
deleteModalMessage: string;
|
|
3351
|
+
onDeleteConfirm(): void;
|
|
3352
|
+
onDeleteCancel(): void;
|
|
3281
3353
|
onTopAction(action: TableAction): void;
|
|
3282
3354
|
private executeApiAction;
|
|
3283
3355
|
onSelectAll(event: Event): void;
|
|
@@ -3297,12 +3369,12 @@ declare class SmartTableComponent implements OnInit, OnChanges, AfterViewInit, O
|
|
|
3297
3369
|
toggleDropdown(id: string, event: Event): void;
|
|
3298
3370
|
closeDropdown(): void;
|
|
3299
3371
|
static ɵfac: i0.ɵɵFactoryDeclaration<SmartTableComponent, never>;
|
|
3300
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<SmartTableComponent, "lib-smart-table", never, { "config": { "alias": "config"; "required": false; }; }, { "action": "action"; "topAction": "topAction"; "filterChange": "filterChange"; "rowSelect": "rowSelect"; "columnClick": "columnClick"; }, never, never, false, never>;
|
|
3372
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<SmartTableComponent, "lib-smart-table", never, { "config": { "alias": "config"; "required": false; }; "tableData": { "alias": "tableData"; "required": false; }; "totalItemsCount": { "alias": "totalItemsCount"; "required": false; }; }, { "action": "action"; "topAction": "topAction"; "filterChange": "filterChange"; "rowSelect": "rowSelect"; "columnClick": "columnClick"; "sortChange": "sortChange"; "pageChange": "pageChange"; "searchChange": "searchChange"; }, never, never, false, never>;
|
|
3301
3373
|
}
|
|
3302
3374
|
|
|
3303
3375
|
declare class SmartTableModule {
|
|
3304
3376
|
static ɵfac: i0.ɵɵFactoryDeclaration<SmartTableModule, never>;
|
|
3305
|
-
static ɵmod: i0.ɵɵNgModuleDeclaration<SmartTableModule, [typeof SmartTableComponent], [typeof i2$1.CommonModule, typeof i3$1.FormsModule, typeof PaginationModule, typeof ButtonModule, typeof MaterialModule], [typeof SmartTableComponent]>;
|
|
3377
|
+
static ɵmod: i0.ɵɵNgModuleDeclaration<SmartTableModule, [typeof SmartTableComponent], [typeof i2$1.CommonModule, typeof i3$1.FormsModule, typeof PaginationModule, typeof ButtonModule, typeof MaterialModule, typeof ConfirmationModalModule], [typeof SmartTableComponent]>;
|
|
3306
3378
|
static ɵinj: i0.ɵɵInjectorDeclaration<SmartTableModule>;
|
|
3307
3379
|
}
|
|
3308
3380
|
|
|
@@ -3356,4 +3428,4 @@ declare class SnackbarModule {
|
|
|
3356
3428
|
}
|
|
3357
3429
|
|
|
3358
3430
|
export { AlertComponent, AlertModule, ButtonComponent, ButtonDropdownComponent, ButtonDropdownModule, ButtonModule, CheckboxComponent, ConfigurableFormComponent, configurableForm_examples_d as ConfigurableFormExamples, ConfigurableFormModule, ConfirmationModalComponent, ConfirmationModalModule, DEFAULT_ITEMS_PER_PAGE, DEFAULT_PAGE_SIZE_OPTIONS, DEFAULT_SIDE_NAV_TOOLTIP_POSITION, DatepickerComponent, DropdownComponent, ExpressionService, FieldConfiguratorComponent, FieldSelectionComponent, FilterComponent, FilterModule, FilterSidebarComponent, FilterSidebarModule, FormBuilderModule, FormComponentsModule, InputComponent, MaterialModule, NAV_ORIENTATION_DEFAULT, NAV_VARIANT_DEFAULT, NavComponent, NavModule, PAGINATION_THEME_DARK, PAGINATION_THEME_DEFAULT, PaginationComponent, PaginationModule, RadioComponent, SearchComponent, SharedUiModule, SideNavComponent, SideNavModule, SmartFormComponent, SmartFormController, smartForm_examples_d as SmartFormExamples, SmartFormModule, SmartTableComponent, SmartTableModule, SnackbarComponent, SnackbarModule, SnackbarService, StringUtils, SummaryCardComponent, SummaryCardModule, ToggleComponent, ValidationUtils, appendBaseUrlRecursively, clearLocalStorage, clearSessionStorage, getLocalStorageItem, getSessionStorageItem, removeLocalStorageItem, removeSessionStorageItem, setLocalStorageItem, setSessionStorageItem, translateConfig };
|
|
3359
|
-
export type { AlertLabels, AlertVariant, AttachmentConfig, ButtonLabels, ButtonVariant, CheckboxConfig, CheckboxLabels, CheckboxOption, ConfirmationModalConfig, DateConfig, DatePickerConfig, DatepickerLabels, DropdownAction, DropdownConfig, DropdownLabels, DropdownOption, EmailConfig, FieldConfig, FieldType, FilterChangeEvent, FilterConfig, FilterItem, FilterItemType, FilterOutput, FilterSearchConfig, FilterSidebarChangeEvent, FilterSidebarConfig, FilterSidebarOutput, FormConfig, FormField, FormOption, FormSchema, FormSection, GeneratedConfig, IconInput, InputConfig, InputLabels, InputType, JsonFieldConfig, JsonFormConfig, KeyType, LengthConstraint, LocationConfig, NavItem, NavStyleConfig, NestedStringConfig, NumberConfig, OptionConfig, OptionDTO, OptionItem, PaginationConfig, PaginationLabels, PhoneConfig, QueryParamsConfig, RadioConfig, RadioLabels, RadioOption, RangeConfig, RatingConfig, SearchConfig, SearchLabels, SectionConfig, SideNavItem, SideNavSection, SideNavStyleConfig, SnackbarConfig, SnackbarVariant, StepperConfig, SubmitConfig, SummaryCardConfig, SummaryCardLabels, SummaryCardMeta, TableAction, TableActionItem, TableColumn, TableConfig, TableFilter, TableFilterChangeEvent, TableFilterColumn, TableFilterConfig, TableFilterItem, TableFilterLabels, TableFilterOutput, TableLabels, TableOption, TableTheme, TextConfig, ToggleConfig, ToggleLabels, UIConfig, UISubType, UIType, UploadedFile, ValidationResult, ValidationRules };
|
|
3431
|
+
export type { AlertLabels, AlertVariant, AttachmentConfig, ButtonLabels, ButtonVariant, CheckboxConfig, CheckboxLabels, CheckboxOption, ConfirmationModalConfig, DateConfig, DatePickerConfig, DatepickerLabels, DropdownAction, DropdownConfig, DropdownLabels, DropdownOption, EmailConfig, FieldConfig, FieldType, FilterChangeEvent, FilterConfig, FilterItem, FilterItemType, FilterOutput, FilterSearchConfig, FilterSidebarChangeEvent, FilterSidebarConfig, FilterSidebarOutput, FormConfig, FormField, FormOption, FormSchema, FormSection, GeneratedConfig, IconInput, InputConfig, InputLabels, InputType, JsonFieldConfig, JsonFormConfig, KeyType, LengthConstraint, LocationConfig, NavItem, NavStyleConfig, NestedStringConfig, NumberConfig, OptionConfig, OptionDTO, OptionItem, PaginationConfig, PaginationLabels, PhoneConfig, QueryParamsConfig, RadioConfig, RadioLabels, RadioOption, RangeConfig, RatingConfig, SearchConfig, SearchLabels, SectionConfig, SideNavItem, SideNavSection, SideNavStyleConfig, SnackbarConfig, SnackbarVariant, StepperConfig, SubmitConfig, SummaryCardConfig, SummaryCardLabels, SummaryCardMeta, TableAction, TableActionItem, TableColumn, TableConfig, TableDataChangeEvent, TableFilter, TableFilterChangeEvent, TableFilterColumn, TableFilterConfig, TableFilterItem, TableFilterLabels, TableFilterOutput, TableLabels, TableOption, TableTheme, TextConfig, ToggleConfig, ToggleLabels, UIConfig, UISubType, UIType, UploadedFile, ValidationResult, ValidationRules };
|
package/package.json
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
@use 'sass:map';
|
|
2
|
+
@use '../confirmation-modal/confirmation-modal.theme' as confirmation-modal;
|
|
2
3
|
|
|
3
4
|
// Default Smart Table Theme
|
|
4
5
|
$smart-table-theme-defaults: (
|
|
@@ -215,4 +216,7 @@ $smart-table-theme-defaults: (
|
|
|
215
216
|
|
|
216
217
|
// --- Misc ---
|
|
217
218
|
--st-sort-icon-size: #{map.get($theme, sort-icon-size)};
|
|
219
|
+
|
|
220
|
+
// --- Confirmation Modal (bundled so delete modal renders correctly) ---
|
|
221
|
+
@include confirmation-modal.confirmation-modal-theme();
|
|
218
222
|
}
|
|
@@ -0,0 +1,250 @@
|
|
|
1
|
+
/* utilities.scss */
|
|
2
|
+
|
|
3
|
+
/* Display Classes */
|
|
4
|
+
.d-flex { display: flex; }
|
|
5
|
+
.d-inline-flex { display: inline-flex; }
|
|
6
|
+
.d-grid { display: grid; }
|
|
7
|
+
.d-block { display: block; }
|
|
8
|
+
.d-none { display: none; }
|
|
9
|
+
|
|
10
|
+
/* Flexbox Directions & Wraps */
|
|
11
|
+
.flex-column { flex-direction: column; }
|
|
12
|
+
.flex-row { flex-direction: row; }
|
|
13
|
+
.flex-row-reverse { flex-direction: row-reverse; }
|
|
14
|
+
.flex-wrap { flex-wrap: wrap; }
|
|
15
|
+
.flex-1 { flex: 1; }
|
|
16
|
+
|
|
17
|
+
/* Alignments */
|
|
18
|
+
.align-items-center { align-items: center; }
|
|
19
|
+
.align-items-start { align-items: flex-start; }
|
|
20
|
+
.align-items-end { align-items: flex-end; }
|
|
21
|
+
.justify-content-center { justify-content: center; }
|
|
22
|
+
.justify-content-between { justify-content: space-between; }
|
|
23
|
+
.justify-content-start { justify-content: flex-start; }
|
|
24
|
+
.justify-content-end { justify-content: flex-end; }
|
|
25
|
+
|
|
26
|
+
/* Grid */
|
|
27
|
+
.grid-cols-12 { grid-template-columns: repeat(12, 1fr); }
|
|
28
|
+
|
|
29
|
+
/* Width & Height (Percentages) */
|
|
30
|
+
.w-100 { width: 100%; }
|
|
31
|
+
.h-100 { height: 100%; }
|
|
32
|
+
|
|
33
|
+
/* Positioning */
|
|
34
|
+
.position-relative { position: relative; }
|
|
35
|
+
.position-absolute { position: absolute; }
|
|
36
|
+
|
|
37
|
+
/* Text Alignment */
|
|
38
|
+
.text-center { text-align: center; }
|
|
39
|
+
.text-left { text-align: left; }
|
|
40
|
+
.text-right { text-align: right; }
|
|
41
|
+
|
|
42
|
+
/* Fonts */
|
|
43
|
+
.font-poppins { font-family: var(--cc-sf-font-family, 'Poppins', sans-serif); }
|
|
44
|
+
.font-weight-400 { font-weight: 400; }
|
|
45
|
+
.font-weight-500 { font-weight: 500; }
|
|
46
|
+
.font-weight-600 { font-weight: 600; }
|
|
47
|
+
|
|
48
|
+
.text-13 { font-size: 13px; }
|
|
49
|
+
.text-14 { font-size: 14px; }
|
|
50
|
+
.text-16 { font-size: 16px; }
|
|
51
|
+
|
|
52
|
+
/* Colors (from variables) */
|
|
53
|
+
.color-white { color: #ffffff; }
|
|
54
|
+
.color-dark { color: #111827; }
|
|
55
|
+
.color-gray { color: #6B7280; }
|
|
56
|
+
.color-error { color: var(--cc-sf-error-text-color, #DC2626); }
|
|
57
|
+
.bg-white { background-color: #ffffff; }
|
|
58
|
+
.bg-transparent { background-color: transparent; }
|
|
59
|
+
|
|
60
|
+
/* Margins */
|
|
61
|
+
.m-0 { margin: 0; }
|
|
62
|
+
.mt-4 { margin-top: 4px; }
|
|
63
|
+
.mt-8 { margin-top: 8px; }
|
|
64
|
+
.mt-10 { margin-top: 10px; }
|
|
65
|
+
.mt-12 { margin-top: 12px; }
|
|
66
|
+
.mt-16 { margin-top: 16px; }
|
|
67
|
+
.mt-20 { margin-top: 20px; }
|
|
68
|
+
.mt-24 { margin-top: 24px; }
|
|
69
|
+
|
|
70
|
+
.mb-0 { margin-bottom: 0px; }
|
|
71
|
+
.mb-4 { margin-bottom: 4px; }
|
|
72
|
+
.mb-8 { margin-bottom: 8px; }
|
|
73
|
+
.mb-10 { margin-bottom: 10px; }
|
|
74
|
+
.mb-12 { margin-bottom: 12px; }
|
|
75
|
+
.mb-16 { margin-bottom: 16px; }
|
|
76
|
+
.mb-20 { margin-bottom: 20px; }
|
|
77
|
+
.mb-24 { margin-bottom: 24px; }
|
|
78
|
+
|
|
79
|
+
.ml-16 { margin-left: 16px; }
|
|
80
|
+
.ml-20 { margin-left: 20px; }
|
|
81
|
+
|
|
82
|
+
/* Paddings */
|
|
83
|
+
.p-0 { padding: 0; }
|
|
84
|
+
.p-16 { padding: 16px; }
|
|
85
|
+
.p-20 { padding: 20px; }
|
|
86
|
+
.p-24 { padding: 24px; }
|
|
87
|
+
.pt-20 { padding-top: 20px; }
|
|
88
|
+
.pb-10 { padding-bottom: 10px; }
|
|
89
|
+
|
|
90
|
+
/* Gaps */
|
|
91
|
+
.gap-4 { gap: 4px; }
|
|
92
|
+
.gap-6 { gap: 6px; }
|
|
93
|
+
.gap-8 { gap: 8px; }
|
|
94
|
+
.gap-10 { gap: 10px; }
|
|
95
|
+
.gap-12 { gap: 12px; }
|
|
96
|
+
.gap-16 { gap: 16px; }
|
|
97
|
+
.gap-20 { gap: 20px; }
|
|
98
|
+
|
|
99
|
+
/* Border Radius */
|
|
100
|
+
.rounded-4 { border-radius: 4px; }
|
|
101
|
+
.rounded-6 { border-radius: 6px; }
|
|
102
|
+
.rounded-8 { border-radius: 8px; }
|
|
103
|
+
.rounded-10 { border-radius: 10px; }
|
|
104
|
+
.rounded-12 { border-radius: 12px; }
|
|
105
|
+
.rounded-20 { border-radius: 20px; }
|
|
106
|
+
.rounded-24 { border-radius: 24px; }
|
|
107
|
+
.rounded-50 { border-radius: 50%; }
|
|
108
|
+
|
|
109
|
+
/* Utilities */
|
|
110
|
+
.cursor-pointer { cursor: pointer; }
|
|
111
|
+
.overflow-hidden { overflow: hidden; }
|
|
112
|
+
.resize-vertical { resize: vertical; }
|
|
113
|
+
.box-sizing-border { box-sizing: border-box; }
|
|
114
|
+
|
|
115
|
+
/* Form Auto Extracted Utilities 2 */
|
|
116
|
+
.border-none { border: none !important; }
|
|
117
|
+
.mb-16px { margin-bottom: var(--cc-sf-grid-gap, 16px) !important; }
|
|
118
|
+
.c-DC2626 { color: var(--cc-sf-label-required-color, #DC2626) !important; }
|
|
119
|
+
.ml-0-125rem { margin-left: 0.125rem !important; }
|
|
120
|
+
.fs-0-875rem { font-size: 0.875rem !important; }
|
|
121
|
+
.c-111827 { color: var(--cc-sf-label-color, #111827) !important; }
|
|
122
|
+
.br-7px { border-radius: var(--cc-sf-input-radius, 7px) !important; }
|
|
123
|
+
.c-6B7280 { color: var(--cc-sf-hint-color, #6B7280) !important; }
|
|
124
|
+
.fs-0-75rem { font-size: var(--cc-sf-error-text-size, 0.75rem) !important; }
|
|
125
|
+
.b-none { background: none !important; }
|
|
126
|
+
.p-32px-24px { padding: 32px 24px !important; }
|
|
127
|
+
.us-none { user-select: none !important; }
|
|
128
|
+
.c-1E293B { color: var(--cc-sf-label-color, #1E293B) !important; }
|
|
129
|
+
.c-3B82F6 { color: var(--cc-sf-chip-selected-bg, #3B82F6) !important; }
|
|
130
|
+
.fs-0-78rem { font-size: 0.78rem !important; }
|
|
131
|
+
.p-10px-14px { padding: 10px 14px !important; }
|
|
132
|
+
.fs-0-85rem { font-size: 0.85rem !important; }
|
|
133
|
+
.fs-0-72rem { font-size: 0.72rem !important; }
|
|
134
|
+
.c-94A3B8 { color: #94A3B8 !important; }
|
|
135
|
+
.p-4px { padding: 4px !important; }
|
|
136
|
+
.br-8px { border-radius: var(--cc-sf-input-radius, 8px) !important; }
|
|
137
|
+
.bc-F3F4F6 { background-color: var(--cc-sf-input-disabled-bg, #F3F4F6) !important; }
|
|
138
|
+
.br-none { border-right: none !important; }
|
|
139
|
+
.bl-none { border-left: none !important; }
|
|
140
|
+
.pe-none { pointer-events: none !important; }
|
|
141
|
+
.fs-1-1rem { font-size: 1.1rem !important; }
|
|
142
|
+
.c-9CA3AF { color: var(--cc-sf-hint-color, #9CA3AF) !important; }
|
|
143
|
+
.pl-2-4rem { padding-left: 2.4rem !important; }
|
|
144
|
+
.fs-0-8125rem { font-size: 0.8125rem !important; }
|
|
145
|
+
.ls-none { list-style: none !important; }
|
|
146
|
+
.br-12px { border-radius: var(--mu-carousel-radius, 12px) !important; }
|
|
147
|
+
.b-FFFAF1 { background: var(--cc-sf-dropzone-bg, #FFFAF1) !important; }
|
|
148
|
+
.fs-18px { font-size: 18px !important; }
|
|
149
|
+
.b-FEF2F2 { background: var(--cc-sf-error-bg, #FEF2F2) !important; }
|
|
150
|
+
|
|
151
|
+
/* Form Auto Extracted Utilities 3 */
|
|
152
|
+
.bc-DC2626 { border-color: var(--cc-sf-error-border, #DC2626) !important; }
|
|
153
|
+
.c-202124 { color: var(--cc-sf-label-color, #202124) !important; }
|
|
154
|
+
.fs-18px { font-size: var(--cc-sf-label-size, 18px) !important; }
|
|
155
|
+
.mb-0-5rem { margin-bottom: 0.5rem !important; }
|
|
156
|
+
.pt-0-625rem { padding-top: var(--cc-sf-input-padding-y, 0.625rem) !important; }
|
|
157
|
+
.pb-0-625rem { padding-bottom: var(--cc-sf-input-padding-y, 0.625rem) !important; }
|
|
158
|
+
.pl-16px { padding-left: var(--cc-sf-input-padding-x, 16px) !important; }
|
|
159
|
+
.pr-16px { padding-right: var(--cc-sf-input-padding-x, 16px) !important; }
|
|
160
|
+
.bc-ffffff { background-color: var(--cc-sf-section-bg, #ffffff) !important; }
|
|
161
|
+
.b-1px-solid-D1D5DB { border: 1px solid var(--cc-sf-input-border, #D1D5DB) !important; }
|
|
162
|
+
.fs-0-75rem { font-size: 0.75rem !important; }
|
|
163
|
+
.c-1F2937 { color: var(--cc-sf-section-label-color, #1F2937) !important; }
|
|
164
|
+
.p-6px-14px { padding: var(--cc-sf-chip-padding, 6px 14px) !important; }
|
|
165
|
+
.b-ffffff { background: var(--loc-suggestion-bg, #ffffff) !important; }
|
|
166
|
+
.c-374151 { color: var(--cc-sf-label-color, #374151) !important; }
|
|
167
|
+
.br-20px { border-radius: var(--cc-sf-chip-radius, 20px) !important; }
|
|
168
|
+
.fs-0-875rem { font-size: var(--cc-sf-btn-font-size, 0.875rem) !important; }
|
|
169
|
+
.bc-D1D5DB { background-color: var(--cc-sf-switch-track-off, #D1D5DB) !important; }
|
|
170
|
+
.pr-2-75rem { padding-right: 2.75rem !important; }
|
|
171
|
+
.p-0-25rem { padding: 0.25rem !important; }
|
|
172
|
+
.p-0-625rem-0-875rem { padding: var(--cc-sf-generated-padding, 0.625rem 0.875rem) !important; }
|
|
173
|
+
.b-F3F4F6 { background: var(--cc-sf-generated-bg, #F3F4F6) !important; }
|
|
174
|
+
.b-1px-solid-E5E7EB { border: 1px solid var(--cc-sf-input-disabled-border, #E5E7EB) !important; }
|
|
175
|
+
.br-8px { border-radius: var(--cc-sf-uploaded-item-radius, 8px) !important; }
|
|
176
|
+
.c-6B7280 { color: var(--ms-desc-color, #6B7280) !important; }
|
|
177
|
+
.mb-20px { margin-bottom: var(--cc-sf-section-gap, 20px) !important; }
|
|
178
|
+
.br-10px { border-radius: var(--cc-sf-input-radius, 10px) !important; }
|
|
179
|
+
.p-20px { padding: var(--cc-sf-section-padding, 20px) !important; }
|
|
180
|
+
.fs-1rem { font-size: 1rem !important; }
|
|
181
|
+
.m-0-0-16px-0 { margin: 0 0 16px 0 !important; }
|
|
182
|
+
.bb-2px-solid-E5E7EB { border-bottom: var(--cc-sf-section-label-border, 2px solid #E5E7EB) !important; }
|
|
183
|
+
.p-16px { padding: var(--cc-sf-instance-padding, 16px) !important; }
|
|
184
|
+
.b-F9FAFB { background: var(--loc-tba-bg, #F9FAFB) !important; }
|
|
185
|
+
.bb-1px-dashed-D1D5DB { border-bottom: var(--cc-sf-instance-divider, 1px dashed #D1D5DB) !important; }
|
|
186
|
+
.c-4B5563 { color: var(--cc-sf-instance-num-color, #4B5563) !important; }
|
|
187
|
+
.fs-0-8125rem { font-size: var(--cc-sf-hint-size, 0.8125rem) !important; }
|
|
188
|
+
.pb-0 { padding-bottom: 0 !important; }
|
|
189
|
+
.p-18px-24px { padding: 18px 24px !important; }
|
|
190
|
+
.c-111827 { color: var(--ms-title-color, #111827) !important; }
|
|
191
|
+
.bt-1px-solid-E5E7EB { border-top: 1px solid #E5E7EB !important; }
|
|
192
|
+
.p-4px-10px { padding: 4px 10px !important; }
|
|
193
|
+
.b-FFF5F5 { background: var(--cc-sf-btn-remove-bg, #FFF5F5) !important; }
|
|
194
|
+
.c-E53E3E { color: var(--loc-delete-color, #E53E3E) !important; }
|
|
195
|
+
.b-1px-solid-FED7D7 { border: var(--cc-sf-btn-remove-border, 1px solid #FED7D7) !important; }
|
|
196
|
+
.br-4px { border-radius: var(--cc-sf-btn-remove-radius, 4px) !important; }
|
|
197
|
+
.p-8px-16px { padding: 8px 16px !important; }
|
|
198
|
+
.b-transparent { background: var(--cc-sf-btn-add-bg, transparent) !important; }
|
|
199
|
+
.c-3B82F6 { color: var(--cc-sf-input-focus-border, #3B82F6) !important; }
|
|
200
|
+
.b-1px-dashed-CBD5E1 { border: var(--cc-sf-btn-add-border, 1px dashed #CBD5E1) !important; }
|
|
201
|
+
.br-6px { border-radius: var(--cc-sf-btn-add-radius, 6px) !important; }
|
|
202
|
+
.b-1-5px-dashed-CBD5E1 { border: var(--cc-sf-dropzone-border, 1.5px dashed #CBD5E1) !important; }
|
|
203
|
+
.br-12px { border-radius: var(--cc-sf-dropzone-radius, 12px) !important; }
|
|
204
|
+
.bc-FFFAF1 { background-color: var(--cc-sf-dropzone-bg, #FFFAF1) !important; }
|
|
205
|
+
.c-94A3B8 { color: var(--cc-sf-uploaded-remove-color, #94A3B8) !important; }
|
|
206
|
+
.fs-0-9rem { font-size: var(--cc-sf-input-font-size, 0.9rem) !important; }
|
|
207
|
+
.c-64748B { color: var(--cc-sf-dropzone-hint-color, #64748B) !important; }
|
|
208
|
+
.b-1px-solid-E2E8F0 { border: var(--cc-sf-uploaded-item-border, 1px solid #E2E8F0) !important; }
|
|
209
|
+
.b-2px-solid-E2E8F0 { border: 2px solid #E2E8F0 !important; }
|
|
210
|
+
.pr-3-5rem { padding-right: 3.5rem !important; }
|
|
211
|
+
.p-0-0-875rem { padding: 0 0.875rem !important; }
|
|
212
|
+
.bc-FFFFFF { background-color: var(--cc-sf-input-bg, #FFFFFF) !important; }
|
|
213
|
+
.b-1-5px-solid-D1D5DB { border: var(--cc-sf-input-border, 1.5px solid #D1D5DB) !important; }
|
|
214
|
+
.mb-0-75rem { margin-bottom: 0.75rem !important; }
|
|
215
|
+
.mt-6px { margin-top: 6px !important; }
|
|
216
|
+
.pr-2-4rem { padding-right: 2.4rem !important; }
|
|
217
|
+
.p-0-2rem { padding: 0.2rem !important; }
|
|
218
|
+
.fs-1-35rem { font-size: 1.35rem !important; }
|
|
219
|
+
.p-4px-12px { padding: 4px 12px !important; }
|
|
220
|
+
.b-111827 { background: var(--cc-sf-label-color, #111827) !important; }
|
|
221
|
+
.b-2px-dashed-CBD5E1 { border: 2px dashed var(--cc-sf-dropzone-border, #CBD5E1) !important; }
|
|
222
|
+
.fs-52px { font-size: 52px !important; }
|
|
223
|
+
.p-12px-16px { padding: 12px 16px !important; }
|
|
224
|
+
.bb-1px-solid-F3F4F6 { border-bottom: 1px solid var(--cc-sf-input-disabled-border, #F3F4F6) !important; }
|
|
225
|
+
.b-0F172A { background: var(--mu-carousel-bg, #0F172A) !important; }
|
|
226
|
+
.b-3px-solid-rgba-255-255-255-0-15 { border: 3px solid rgba(255, 255, 255, 0.15) !important; }
|
|
227
|
+
.b-rgba-255-255-255-0-85 { background: rgba(255, 255, 255, 0.85) !important; }
|
|
228
|
+
.b-rgba-0-0-0-0-55 { background: rgba(0, 0, 0, 0.55) !important; }
|
|
229
|
+
.b-rgba-255-255-255-0-45 { background: rgba(255, 255, 255, 0.45) !important; }
|
|
230
|
+
.pb-4px { padding-bottom: 4px !important; }
|
|
231
|
+
.b-2px-solid-transparent { border: 2px solid transparent !important; }
|
|
232
|
+
.b-E2E8F0 { background: var(--mu-thumb-bg, #E2E8F0) !important; }
|
|
233
|
+
.b-1E293B { background: #1E293B !important; }
|
|
234
|
+
.c-EF4444 { color: #EF4444 !important; }
|
|
235
|
+
.b-rgba-0-0-0-0-5 { background: rgba(0, 0, 0, 0.5) !important; }
|
|
236
|
+
.br-16px { border-radius: var(--mu-modal-radius, 16px) !important; }
|
|
237
|
+
.p-24px-28px { padding: 24px 28px !important; }
|
|
238
|
+
.bb-1px-solid-E5E7EB { border-bottom: 1px solid var(--cc-sf-input-disabled-border, #E5E7EB) !important; }
|
|
239
|
+
.fs-1-25rem { font-size: 1.25rem !important; }
|
|
240
|
+
.p-48px-24px { padding: 48px 24px !important; }
|
|
241
|
+
.b-3px-solid-E2E8F0 { border: 3px solid #E2E8F0 !important; }
|
|
242
|
+
.p-16px-24px { padding: 16px 24px !important; }
|
|
243
|
+
.p-28px { padding: 28px !important; }
|
|
244
|
+
.b-3px-solid-transparent { border: 3px solid transparent !important; }
|
|
245
|
+
.b-rgba-59-130-246-0-12 { background: rgba(59, 130, 246, 0.12) !important; }
|
|
246
|
+
.p-20px-28px { padding: 20px 28px !important; }
|
|
247
|
+
.c-1A56DB { color: var(--loc-add-color, #1A56DB) !important; }
|
|
248
|
+
.b-1px-dashed-D1D5DB { border: 1px dashed var(--cc-sf-input-disabled-border, #D1D5DB) !important; }
|
|
249
|
+
.fs-40px { font-size: 40px !important; }
|
|
250
|
+
.c-9CA3AF { color: var(--loc-tba-icon-color, #9CA3AF) !important; }
|