@fxlt/common-ui 0.0.4-rc2 → 0.0.5-rc1
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/animations.css +15 -0
- package/components.css +42 -22
- package/dm-sans/DMSans-Bold.ttf +0 -0
- package/dm-sans/DMSans-Light.ttf +0 -0
- package/dm-sans/DMSans-Medium.ttf +0 -0
- package/dm-sans/DMSans-Regular.ttf +0 -0
- package/dm-sans/DMSans-SemiBold.ttf +0 -0
- package/dm-sans/DMSans-Thin.ttf +0 -0
- package/fesm2022/fxlt-common-ui.mjs +200 -83
- package/fesm2022/fxlt-common-ui.mjs.map +1 -1
- package/fonts.css +70 -0
- package/index.d.ts +47 -29
- package/orbitron/Orbitron-Bold.ttf +0 -0
- package/orbitron/Orbitron-Medium.ttf +0 -0
- package/orbitron/Orbitron-Regular.ttf +0 -0
- package/orbitron/Orbitron-SemiBold.ttf +0 -0
- package/package.json +1 -3
- package/src/lib/styles/animations.css +15 -0
- package/src/lib/styles/components.css +42 -22
- package/src/lib/styles/fonts.css +70 -0
- package/src/lib/styles/theme.css +5 -1
- package/src/lib/ui/components/chart/chart.component.html +10 -8
- package/src/lib/ui/components/table-cell/table-cell.component.html +7 -0
- package/src/lib/ui/components/tag/tag.component.html +7 -35
- package/tailwind.config.js +9 -0
- package/theme.css +5 -1
package/fonts.css
CHANGED
|
@@ -47,6 +47,76 @@
|
|
|
47
47
|
font-style: normal;
|
|
48
48
|
}
|
|
49
49
|
|
|
50
|
+
@font-face {
|
|
51
|
+
font-family: 'DMSans';
|
|
52
|
+
src: url('./dm-sans/DMSans-Thin.ttf') format('truetype');
|
|
53
|
+
font-weight: 200;
|
|
54
|
+
font-style: normal;
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
@font-face {
|
|
58
|
+
font-family: 'DMSans';
|
|
59
|
+
src: url('./dm-sans/DMSans-Light.ttf') format('truetype');
|
|
60
|
+
font-weight: 300;
|
|
61
|
+
font-style: normal;
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
@font-face {
|
|
65
|
+
font-family: 'DMSans';
|
|
66
|
+
src: url('./dm-sans/DMSans-Regular.ttf') format('truetype');
|
|
67
|
+
font-weight: 400;
|
|
68
|
+
font-style: normal;
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
@font-face {
|
|
72
|
+
font-family: 'DMSans';
|
|
73
|
+
src: url('./dm-sans/DMSans-Medium.ttf') format('truetype');
|
|
74
|
+
font-weight: 500;
|
|
75
|
+
font-style: normal;
|
|
76
|
+
}
|
|
77
|
+
|
|
78
|
+
@font-face {
|
|
79
|
+
font-family: 'DMSans';
|
|
80
|
+
src: url('./dm-sans/DMSans-SemiBold.ttf') format('truetype');
|
|
81
|
+
font-weight: 600;
|
|
82
|
+
font-style: normal;
|
|
83
|
+
}
|
|
84
|
+
|
|
85
|
+
@font-face {
|
|
86
|
+
font-family: 'DMSans';
|
|
87
|
+
src: url('./dm-sans/DMSans-Bold.ttf') format('truetype');
|
|
88
|
+
font-weight: 700;
|
|
89
|
+
font-style: normal;
|
|
90
|
+
}
|
|
91
|
+
|
|
92
|
+
@font-face {
|
|
93
|
+
font-family: 'Orbitron';
|
|
94
|
+
src: url('./orbitron/Orbitron-Regular.ttf') format('truetype');
|
|
95
|
+
font-weight: 400;
|
|
96
|
+
font-style: normal;
|
|
97
|
+
}
|
|
98
|
+
|
|
99
|
+
@font-face {
|
|
100
|
+
font-family: 'Orbitron';
|
|
101
|
+
src: url('./orbitron/Orbitron-Medium.ttf') format('truetype');
|
|
102
|
+
font-weight: 500;
|
|
103
|
+
font-style: normal;
|
|
104
|
+
}
|
|
105
|
+
|
|
106
|
+
@font-face {
|
|
107
|
+
font-family: 'Orbitron';
|
|
108
|
+
src: url('./orbitron/Orbitron-SemiBold.ttf') format('truetype');
|
|
109
|
+
font-weight: 600;
|
|
110
|
+
font-style: normal;
|
|
111
|
+
}
|
|
112
|
+
|
|
113
|
+
@font-face {
|
|
114
|
+
font-family: 'Orbitron';
|
|
115
|
+
src: url('./orbitron/Orbitron-Bold.ttf') format('truetype');
|
|
116
|
+
font-weight: 700;
|
|
117
|
+
font-style: normal;
|
|
118
|
+
}
|
|
119
|
+
|
|
50
120
|
@font-face {
|
|
51
121
|
font-family: 'SpaceMonoRegular';
|
|
52
122
|
src: url('./SpaceMono-Regular.ttf') format('truetype');
|
package/index.d.ts
CHANGED
|
@@ -1,41 +1,42 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
2
|
import { OnDestroy, Injector, ApplicationRef, OnInit, AfterViewInit, ChangeDetectorRef, Type, EventEmitter, ModuleWithProviders, TemplateRef, ViewContainerRef, ElementRef, RendererFactory2, AfterContentInit, QueryList, Renderer2, OnChanges, NgZone } from '@angular/core';
|
|
3
|
-
import * as
|
|
3
|
+
import * as _fxlt_common_ui from '@fxlt/common-ui';
|
|
4
|
+
import * as i40 from '@angular/material/paginator';
|
|
4
5
|
import { MatPaginator } from '@angular/material/paginator';
|
|
5
|
-
import * as
|
|
6
|
+
import * as i41 from '@angular/material/table';
|
|
6
7
|
import { MatTableDataSource, MatTable } from '@angular/material/table';
|
|
7
8
|
import { HttpClient, HttpEvent, HttpErrorResponse, HttpInterceptor, HttpRequest, HttpHandler } from '@angular/common/http';
|
|
8
9
|
import * as rxjs from 'rxjs';
|
|
9
10
|
import { Observable, Subject } from 'rxjs';
|
|
10
|
-
import * as
|
|
11
|
+
import * as i28 from '@angular/forms';
|
|
11
12
|
import { NgForm, NgControl, ControlValueAccessor, ValidationErrors } from '@angular/forms';
|
|
12
|
-
import * as
|
|
13
|
+
import * as i43 from '@angular/material/dialog';
|
|
13
14
|
import { MatDialogRef, MatDialog } from '@angular/material/dialog';
|
|
14
15
|
import { TranslateHttpLoader } from '@ngx-translate/http-loader';
|
|
15
16
|
import * as i1 from '@ngx-translate/core';
|
|
16
17
|
import { TranslateService } from '@ngx-translate/core';
|
|
17
18
|
import { CanActivate, Router } from '@angular/router';
|
|
18
19
|
import { EChartsOption } from 'echarts';
|
|
19
|
-
import * as
|
|
20
|
+
import * as i34 from 'ngx-vflow';
|
|
20
21
|
import { Node, Edge, Connection } from 'ngx-vflow';
|
|
21
|
-
import * as
|
|
22
|
-
import * as
|
|
23
|
-
import * as
|
|
24
|
-
import * as
|
|
25
|
-
import * as
|
|
26
|
-
import * as
|
|
27
|
-
import * as
|
|
28
|
-
import * as
|
|
29
|
-
import * as
|
|
30
|
-
import * as
|
|
31
|
-
import * as
|
|
32
|
-
import * as
|
|
33
|
-
import * as
|
|
34
|
-
import * as
|
|
35
|
-
import * as
|
|
36
|
-
import * as
|
|
37
|
-
import * as
|
|
38
|
-
import * as
|
|
22
|
+
import * as i27 from '@angular/common';
|
|
23
|
+
import * as i29 from '@danielmoncada/angular-datetime-picker';
|
|
24
|
+
import * as i30 from '@danielmoncada/angular-datetime-picker-moment-adapter';
|
|
25
|
+
import * as i33 from '@dimaslz/ng-heroicons';
|
|
26
|
+
import * as i35 from 'ngx-echarts';
|
|
27
|
+
import * as i36 from '@angular/material/select';
|
|
28
|
+
import * as i37 from '@angular/material/radio';
|
|
29
|
+
import * as i38 from '@angular/material/button';
|
|
30
|
+
import * as i39 from '@angular/material/icon';
|
|
31
|
+
import * as i42 from '@angular/material/snack-bar';
|
|
32
|
+
import * as i44 from '@angular/material/checkbox';
|
|
33
|
+
import * as i45 from '@angular/material/card';
|
|
34
|
+
import * as i46 from '@angular/material/datepicker';
|
|
35
|
+
import * as i47 from '@angular/material/timepicker';
|
|
36
|
+
import * as i48 from '@angular/material/badge';
|
|
37
|
+
import * as i49 from '@angular/material/expansion';
|
|
38
|
+
import * as i50 from '@angular/material/form-field';
|
|
39
|
+
import * as i51 from '@angular/material/menu';
|
|
39
40
|
|
|
40
41
|
declare abstract class BaseComponent implements OnDestroy {
|
|
41
42
|
protected injector: Injector;
|
|
@@ -111,6 +112,7 @@ declare class BaseTableComponent<T = any> extends BaseComponent implements OnIni
|
|
|
111
112
|
toastr: FxToastrService;
|
|
112
113
|
_lock: boolean;
|
|
113
114
|
keywordChange$: Subject<string>;
|
|
115
|
+
dataSourcePlaceholder: any[];
|
|
114
116
|
config: {
|
|
115
117
|
create?: {
|
|
116
118
|
dialog?: Type<{}>;
|
|
@@ -162,7 +164,9 @@ declare class BaseTableComponent<T = any> extends BaseComponent implements OnIni
|
|
|
162
164
|
view(model: any): Promise<void>;
|
|
163
165
|
delete(model: any): Promise<void>;
|
|
164
166
|
remove(model: any): Promise<any>;
|
|
165
|
-
|
|
167
|
+
tagClass(tag: string): _fxlt_common_ui.TagType;
|
|
168
|
+
capitalize(label: string): string;
|
|
169
|
+
value(model: any, key: string, defaultValue?: any): any;
|
|
166
170
|
toggleExpand(element: any): void;
|
|
167
171
|
updateStatus(params: any): Promise<void>;
|
|
168
172
|
static ɵfac: i0.ɵɵFactoryDeclaration<BaseTableComponent<any>, never>;
|
|
@@ -237,6 +241,7 @@ declare class FxUtils {
|
|
|
237
241
|
static getTagClass(key: string, isCriticalExist?: boolean): TagType;
|
|
238
242
|
static validateEmail(value: string): boolean;
|
|
239
243
|
static isStrongPassword(password: string): boolean;
|
|
244
|
+
static formatSizeUnits(bytes: number): string;
|
|
240
245
|
}
|
|
241
246
|
|
|
242
247
|
declare function HttpLoaderFactory(http: HttpClient): TranslateHttpLoader;
|
|
@@ -686,8 +691,9 @@ declare class TagComponent {
|
|
|
686
691
|
type: TagType;
|
|
687
692
|
rounded: boolean;
|
|
688
693
|
icon?: any;
|
|
694
|
+
solid: boolean;
|
|
689
695
|
static ɵfac: i0.ɵɵFactoryDeclaration<TagComponent, never>;
|
|
690
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<TagComponent, "fx-ui-tag", never, { "label": { "alias": "label"; "required": false; }; "type": { "alias": "type"; "required": false; }; "rounded": { "alias": "rounded"; "required": false; }; "icon": { "alias": "icon"; "required": false; }; }, {}, never, never, false, never>;
|
|
696
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<TagComponent, "fx-ui-tag", never, { "label": { "alias": "label"; "required": false; }; "type": { "alias": "type"; "required": false; }; "rounded": { "alias": "rounded"; "required": false; }; "icon": { "alias": "icon"; "required": false; }; "solid": { "alias": "solid"; "required": false; }; }, {}, never, never, false, never>;
|
|
691
697
|
}
|
|
692
698
|
|
|
693
699
|
type IChartType = 'bar' | 'pie' | 'line' | 'sunburst' | 'radar' | 'auto';
|
|
@@ -700,13 +706,18 @@ declare class ChartComponent implements OnChanges, AfterViewInit, OnDestroy {
|
|
|
700
706
|
palette?: string[];
|
|
701
707
|
height: string;
|
|
702
708
|
loading: boolean;
|
|
709
|
+
pieLegendAlign: any;
|
|
710
|
+
pieLegendPosition: any;
|
|
711
|
+
showPieLabel: boolean;
|
|
712
|
+
labelFontFamily: string;
|
|
703
713
|
chartClick: EventEmitter<any>;
|
|
704
714
|
chartInit: EventEmitter<any>;
|
|
705
715
|
labelFontSize: number;
|
|
706
|
-
|
|
716
|
+
canInit: boolean;
|
|
707
717
|
chartOptions: EChartsOption;
|
|
708
718
|
private chartInstance?;
|
|
709
719
|
private resizeObserver?;
|
|
720
|
+
private intersectionObserver?;
|
|
710
721
|
constructor(ref: ElementRef, cdr: ChangeDetectorRef);
|
|
711
722
|
ngAfterViewInit(): void;
|
|
712
723
|
ngOnDestroy(): void;
|
|
@@ -720,7 +731,7 @@ declare class ChartComponent implements OnChanges, AfterViewInit, OnDestroy {
|
|
|
720
731
|
private buildOptions;
|
|
721
732
|
private resolvePalette;
|
|
722
733
|
static ɵfac: i0.ɵɵFactoryDeclaration<ChartComponent, never>;
|
|
723
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<ChartComponent, "fx-ui-chart", never, { "type": { "alias": "type"; "required": false; }; "data": { "alias": "data"; "required": false; }; "options": { "alias": "options"; "required": false; }; "palette": { "alias": "palette"; "required": false; }; "height": { "alias": "height"; "required": false; }; "loading": { "alias": "loading"; "required": false; }; }, { "chartClick": "chartClick"; "chartInit": "chartInit"; }, never, never, false, never>;
|
|
734
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<ChartComponent, "fx-ui-chart", never, { "type": { "alias": "type"; "required": false; }; "data": { "alias": "data"; "required": false; }; "options": { "alias": "options"; "required": false; }; "palette": { "alias": "palette"; "required": false; }; "height": { "alias": "height"; "required": false; }; "loading": { "alias": "loading"; "required": false; }; "pieLegendAlign": { "alias": "pieLegendAlign"; "required": false; }; "pieLegendPosition": { "alias": "pieLegendPosition"; "required": false; }; "showPieLabel": { "alias": "showPieLabel"; "required": false; }; "labelFontFamily": { "alias": "labelFontFamily"; "required": false; }; }, { "chartClick": "chartClick"; "chartInit": "chartInit"; }, never, never, false, never>;
|
|
724
735
|
}
|
|
725
736
|
|
|
726
737
|
declare class SliderComponent extends FxComponent<any> implements AfterViewInit {
|
|
@@ -849,6 +860,13 @@ declare class TreeDiagram implements AfterViewInit, OnDestroy {
|
|
|
849
860
|
static ɵcmp: i0.ɵɵComponentDeclaration<TreeDiagram, "fx-ui-tree-diagram", never, { "data": { "alias": "data"; "required": false; }; }, {}, never, never, false, never>;
|
|
850
861
|
}
|
|
851
862
|
|
|
863
|
+
declare class TableCell {
|
|
864
|
+
loading: boolean;
|
|
865
|
+
skeletonClass: string;
|
|
866
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<TableCell, never>;
|
|
867
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<TableCell, "fx-ui-table-cell", never, { "loading": { "alias": "loading"; "required": true; }; "skeletonClass": { "alias": "skeletonClass"; "required": false; }; }, {}, never, ["*"], false, never>;
|
|
868
|
+
}
|
|
869
|
+
|
|
852
870
|
declare class ConfirmationDialogComponent {
|
|
853
871
|
private ref;
|
|
854
872
|
bindings: any;
|
|
@@ -875,9 +893,9 @@ declare const MY_MOMENT_FORMATS: {
|
|
|
875
893
|
};
|
|
876
894
|
declare class UiModule {
|
|
877
895
|
static ɵfac: i0.ɵɵFactoryDeclaration<UiModule, never>;
|
|
878
|
-
static ɵmod: i0.ɵɵNgModuleDeclaration<UiModule, [typeof InputComponent, typeof SelectComponent, typeof RadioButtonComponent, typeof CheckboxComponent, typeof DndUploadComponent, typeof ButtonComponent, typeof RadioButtonToggleComponent, typeof DatetimePicker, typeof LoadingPanel, typeof SearchBarComponent, typeof TabGroupComponent, typeof TabComponent, typeof HeroIconComponent, typeof ToastComponent, typeof ToastContainerComponent, typeof TagComponent, typeof ChartComponent, typeof SliderComponent, typeof SwitchComponent, typeof RichTextAreaComponent, typeof SkeletonTableLoadingComponent, typeof FlowConnection, typeof CircleProgressBar, typeof TreeDiagram, typeof ConfirmationDialogComponent], [typeof
|
|
896
|
+
static ɵmod: i0.ɵɵNgModuleDeclaration<UiModule, [typeof InputComponent, typeof SelectComponent, typeof RadioButtonComponent, typeof CheckboxComponent, typeof DndUploadComponent, typeof ButtonComponent, typeof RadioButtonToggleComponent, typeof DatetimePicker, typeof LoadingPanel, typeof SearchBarComponent, typeof TabGroupComponent, typeof TabComponent, typeof HeroIconComponent, typeof ToastComponent, typeof ToastContainerComponent, typeof TagComponent, typeof ChartComponent, typeof SliderComponent, typeof SwitchComponent, typeof RichTextAreaComponent, typeof SkeletonTableLoadingComponent, typeof FlowConnection, typeof CircleProgressBar, typeof TreeDiagram, typeof TableCell, typeof ConfirmationDialogComponent], [typeof i27.CommonModule, typeof i28.FormsModule, typeof i28.ReactiveFormsModule, typeof i29.OwlDateTimeModule, typeof i29.OwlNativeDateTimeModule, typeof i30.OwlMomentDateTimeModule, typeof HasPermissionDirective, typeof TrimOnBlurDirective, typeof i33.NgHeroiconsModule, typeof i34.VflowComponent, typeof i34.HandleComponent, typeof i34.ResizableComponent, typeof i34.SelectableDirective, typeof i34.MiniMapComponent, typeof i34.NodeToolbarComponent, typeof i34.CustomTemplateEdgeComponent, typeof i34.DragHandleDirective, typeof i34.ConnectionControllerDirective, typeof i34.NodeHtmlTemplateDirective, typeof i34.NodeSvgTemplateDirective, typeof i34.GroupNodeTemplateDirective, typeof i34.EdgeLabelHtmlTemplateDirective, typeof i34.EdgeTemplateDirective, typeof i34.ConnectionTemplateDirective, typeof i34.HandleTemplateDirective, typeof i35.NgxEchartsModule, typeof i36.MatSelectModule, typeof i37.MatRadioModule, typeof i38.MatButtonModule, typeof i39.MatIconModule, typeof i40.MatPaginatorModule, typeof i41.MatTableModule, typeof i42.MatSnackBarModule, typeof i43.MatDialogModule, typeof i44.MatCheckboxModule, typeof i45.MatCardModule, typeof i46.MatDatepickerModule, typeof i47.MatTimepickerModule, typeof i48.MatBadgeModule, typeof i49.MatExpansionModule, typeof i50.MatFormFieldModule, typeof i51.MatMenuModule], [typeof InputComponent, typeof SelectComponent, typeof RadioButtonComponent, typeof CheckboxComponent, typeof DndUploadComponent, typeof ButtonComponent, typeof RadioButtonToggleComponent, typeof DatetimePicker, typeof LoadingPanel, typeof SearchBarComponent, typeof TabGroupComponent, typeof TabComponent, typeof HeroIconComponent, typeof ToastComponent, typeof ToastContainerComponent, typeof TagComponent, typeof ChartComponent, typeof SliderComponent, typeof SwitchComponent, typeof RichTextAreaComponent, typeof SkeletonTableLoadingComponent, typeof FlowConnection, typeof CircleProgressBar, typeof TreeDiagram, typeof TableCell, typeof ConfirmationDialogComponent, typeof i28.FormsModule, typeof i28.ReactiveFormsModule, typeof i29.OwlDateTimeModule, typeof i29.OwlNativeDateTimeModule, typeof HasPermissionDirective, typeof i33.NgHeroiconsModule, typeof i36.MatSelectModule, typeof i37.MatRadioModule, typeof i38.MatButtonModule, typeof i39.MatIconModule, typeof i40.MatPaginatorModule, typeof i41.MatTableModule, typeof i42.MatSnackBarModule, typeof i43.MatDialogModule, typeof i44.MatCheckboxModule, typeof i45.MatCardModule, typeof i46.MatDatepickerModule, typeof i47.MatTimepickerModule, typeof i48.MatBadgeModule, typeof i49.MatExpansionModule, typeof i50.MatFormFieldModule, typeof i51.MatMenuModule]>;
|
|
879
897
|
static ɵinj: i0.ɵɵInjectorDeclaration<UiModule>;
|
|
880
898
|
}
|
|
881
899
|
|
|
882
|
-
export { AuthInterceptor, AuthStateService, BaseComponent, BaseDialogComponent, BaseResolver, BaseTableComponent, BreadcrumbService, ButtonComponent, ChartComponent, CheckboxComponent, CircleProgressBar, ConfirmationDialogComponent, DatetimePicker, DndUploadComponent, FlowConnection, FxLoadingService, FxStorageService, FxToastrService, FxUtils, HasPermissionDirective, HeroIconComponent, HttpLoaderFactory, HttpWrapper, InputComponent, LoadingPanel, MY_MOMENT_FORMATS, PermissionGuard, PermissionService, QuillStyleLoaderService, RadioButtonComponent, RadioButtonToggleComponent, RichTextAreaComponent, SearchBarComponent, SelectComponent, SkeletonTableLoadingComponent, SliderComponent, SwitchComponent, TabComponent, TabGroupComponent, TagComponent, ThemeService, ToastComponent, ToastContainerComponent, TranslationModule, TranslationService, TreeDiagram, TrimOnBlurDirective, UiModule };
|
|
900
|
+
export { AuthInterceptor, AuthStateService, BaseComponent, BaseDialogComponent, BaseResolver, BaseTableComponent, BreadcrumbService, ButtonComponent, ChartComponent, CheckboxComponent, CircleProgressBar, ConfirmationDialogComponent, DatetimePicker, DndUploadComponent, FlowConnection, FxLoadingService, FxStorageService, FxToastrService, FxUtils, HasPermissionDirective, HeroIconComponent, HttpLoaderFactory, HttpWrapper, InputComponent, LoadingPanel, MY_MOMENT_FORMATS, PermissionGuard, PermissionService, QuillStyleLoaderService, RadioButtonComponent, RadioButtonToggleComponent, RichTextAreaComponent, SearchBarComponent, SelectComponent, SkeletonTableLoadingComponent, SliderComponent, SwitchComponent, TabComponent, TabGroupComponent, TableCell, TagComponent, ThemeService, ToastComponent, ToastContainerComponent, TranslationModule, TranslationService, TreeDiagram, TrimOnBlurDirective, UiModule };
|
|
883
901
|
export type { Breadcrumb, IChartType, IRadioButton, TableResult, TagType, ToastData, TreeNode, UploadResult };
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@fxlt/common-ui",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.5-rc1",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"main": "bundles/ui.umd.js",
|
|
6
6
|
"module": "fesm2022/fxlt-common-ui.mjs",
|
|
@@ -36,8 +36,6 @@
|
|
|
36
36
|
"ngx-vflow": "^1.16.2"
|
|
37
37
|
},
|
|
38
38
|
"exports": {
|
|
39
|
-
"./SpaceMono-Regular.ttf": "./SpaceMono-Regular.ttf",
|
|
40
|
-
"./BeVietnamPro-Regular.ttf": "./BeVietnamPro-Regular.ttf",
|
|
41
39
|
"./tailwind-config": "./tailwind.config.js",
|
|
42
40
|
"./tailwind.css": "./tailwind.css",
|
|
43
41
|
"./theme.css": "./theme.css",
|
|
@@ -113,3 +113,18 @@
|
|
|
113
113
|
.fade-out-animation {
|
|
114
114
|
animation: fade-out 0.4s ease-out forwards;
|
|
115
115
|
}
|
|
116
|
+
|
|
117
|
+
@keyframes pulse-glow {
|
|
118
|
+
0%,
|
|
119
|
+
100% {
|
|
120
|
+
opacity: 1;
|
|
121
|
+
filter: brightness(1);
|
|
122
|
+
}
|
|
123
|
+
50% {
|
|
124
|
+
opacity: 0.7;
|
|
125
|
+
filter: brightness(1.4);
|
|
126
|
+
}
|
|
127
|
+
}
|
|
128
|
+
.animate-pulse-glow {
|
|
129
|
+
animation: pulse-glow 3s ease-in-out infinite;
|
|
130
|
+
}
|
|
@@ -93,7 +93,7 @@
|
|
|
93
93
|
padding-top: 4px !important;
|
|
94
94
|
padding-bottom: 4px !important;
|
|
95
95
|
line-height: 24px !important;
|
|
96
|
-
font-family: '
|
|
96
|
+
font-family: 'BeVietnamPro';
|
|
97
97
|
}
|
|
98
98
|
|
|
99
99
|
.mdc-data-table__row {
|
|
@@ -104,11 +104,7 @@
|
|
|
104
104
|
.mdc-data-table__cell {
|
|
105
105
|
border-left: 1px solid rgb(var(--border-default)) !important;
|
|
106
106
|
background-color: rgb(var(--bg-primary)) !important;
|
|
107
|
-
|
|
108
|
-
padding-bottom: 8px !important;
|
|
109
|
-
padding-left: 16px !important;
|
|
110
|
-
padding-right: 16px !important; */
|
|
111
|
-
font-family: 'BeVietnamProRegular';
|
|
107
|
+
font-family: 'BeVietnamPro';
|
|
112
108
|
}
|
|
113
109
|
|
|
114
110
|
.mat-mdc-cell {
|
|
@@ -181,6 +177,9 @@ input[type='password'] {
|
|
|
181
177
|
.txt-heading-07 {
|
|
182
178
|
@apply font-semibold text-sm tracking-normal leading-5 text-text-primary;
|
|
183
179
|
}
|
|
180
|
+
.txt-heading-table {
|
|
181
|
+
@apply text-base font-dmsans font-semibold text-text-primary tracking-tight;
|
|
182
|
+
}
|
|
184
183
|
.txt-heading-compact-02 {
|
|
185
184
|
@apply font-semibold text-sm tracking-normal leading-5 text-text-primary;
|
|
186
185
|
}
|
|
@@ -381,6 +380,27 @@ input[type='password'] {
|
|
|
381
380
|
.tag-information {
|
|
382
381
|
@apply tag-common bg-information/10;
|
|
383
382
|
}
|
|
383
|
+
.tag-default-solid {
|
|
384
|
+
@apply tag-common bg-bg-hover;
|
|
385
|
+
}
|
|
386
|
+
.tag-success-solid {
|
|
387
|
+
@apply tag-common bg-success;
|
|
388
|
+
}
|
|
389
|
+
.tag-warning-solid {
|
|
390
|
+
@apply tag-common bg-warning;
|
|
391
|
+
}
|
|
392
|
+
.tag-danger-solid {
|
|
393
|
+
@apply tag-common bg-danger;
|
|
394
|
+
}
|
|
395
|
+
.tag-critical-solid {
|
|
396
|
+
@apply tag-common bg-critical;
|
|
397
|
+
}
|
|
398
|
+
.tag-discovery-solid {
|
|
399
|
+
@apply tag-common bg-discovery;
|
|
400
|
+
}
|
|
401
|
+
.tag-information-solid {
|
|
402
|
+
@apply tag-common bg-information;
|
|
403
|
+
}
|
|
384
404
|
.tag-square {
|
|
385
405
|
@apply rounded px-semi py-small;
|
|
386
406
|
}
|
|
@@ -389,25 +409,12 @@ input[type='password'] {
|
|
|
389
409
|
}
|
|
390
410
|
/* progress bar */
|
|
391
411
|
.progress-bar-container {
|
|
392
|
-
@apply bg-bg-hover mt-semi rounded-
|
|
412
|
+
@apply bg-bg-hover mt-semi rounded-md h-1.5 overflow-hidden shadow-inner;
|
|
393
413
|
}
|
|
394
414
|
.progress-bar-buffer {
|
|
395
|
-
@apply h-1.5 bg-primary rounded-
|
|
396
|
-
}
|
|
397
|
-
@keyframes pulse-glow {
|
|
398
|
-
0%,
|
|
399
|
-
100% {
|
|
400
|
-
opacity: 1;
|
|
401
|
-
filter: brightness(1);
|
|
402
|
-
}
|
|
403
|
-
50% {
|
|
404
|
-
opacity: 0.7;
|
|
405
|
-
filter: brightness(1.4);
|
|
406
|
-
}
|
|
407
|
-
}
|
|
408
|
-
.animate-pulse-glow {
|
|
409
|
-
animation: pulse-glow 3s ease-in-out infinite;
|
|
415
|
+
@apply h-1.5 bg-primary rounded-md transition-all duration-700 ease-in-out;
|
|
410
416
|
}
|
|
417
|
+
|
|
411
418
|
/* radio button */
|
|
412
419
|
.radio-container {
|
|
413
420
|
@apply w-large h-large flex items-center justify-center rounded-full border;
|
|
@@ -451,3 +458,16 @@ input[type='password'] {
|
|
|
451
458
|
.dialog-header {
|
|
452
459
|
@apply px-xl py-semi;
|
|
453
460
|
}
|
|
461
|
+
.border-gradient-primary {
|
|
462
|
+
border: 1px solid transparent;
|
|
463
|
+
background:
|
|
464
|
+
linear-gradient(var(--surface, #fff), var(--surface, #fff)) padding-box,
|
|
465
|
+
linear-gradient(
|
|
466
|
+
135deg,
|
|
467
|
+
rgb(var(--gradient-primary-start)),
|
|
468
|
+
rgb(var(--gradient-primary-end))
|
|
469
|
+
) border-box;
|
|
470
|
+
}
|
|
471
|
+
.skeleton-load {
|
|
472
|
+
@apply rounded bg-gray-200 animate-pulse motion-reduce:animate-none;
|
|
473
|
+
}
|
package/src/lib/styles/fonts.css
CHANGED
|
@@ -47,6 +47,76 @@
|
|
|
47
47
|
font-style: normal;
|
|
48
48
|
}
|
|
49
49
|
|
|
50
|
+
@font-face {
|
|
51
|
+
font-family: 'DMSans';
|
|
52
|
+
src: url('./dm-sans/DMSans-Thin.ttf') format('truetype');
|
|
53
|
+
font-weight: 200;
|
|
54
|
+
font-style: normal;
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
@font-face {
|
|
58
|
+
font-family: 'DMSans';
|
|
59
|
+
src: url('./dm-sans/DMSans-Light.ttf') format('truetype');
|
|
60
|
+
font-weight: 300;
|
|
61
|
+
font-style: normal;
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
@font-face {
|
|
65
|
+
font-family: 'DMSans';
|
|
66
|
+
src: url('./dm-sans/DMSans-Regular.ttf') format('truetype');
|
|
67
|
+
font-weight: 400;
|
|
68
|
+
font-style: normal;
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
@font-face {
|
|
72
|
+
font-family: 'DMSans';
|
|
73
|
+
src: url('./dm-sans/DMSans-Medium.ttf') format('truetype');
|
|
74
|
+
font-weight: 500;
|
|
75
|
+
font-style: normal;
|
|
76
|
+
}
|
|
77
|
+
|
|
78
|
+
@font-face {
|
|
79
|
+
font-family: 'DMSans';
|
|
80
|
+
src: url('./dm-sans/DMSans-SemiBold.ttf') format('truetype');
|
|
81
|
+
font-weight: 600;
|
|
82
|
+
font-style: normal;
|
|
83
|
+
}
|
|
84
|
+
|
|
85
|
+
@font-face {
|
|
86
|
+
font-family: 'DMSans';
|
|
87
|
+
src: url('./dm-sans/DMSans-Bold.ttf') format('truetype');
|
|
88
|
+
font-weight: 700;
|
|
89
|
+
font-style: normal;
|
|
90
|
+
}
|
|
91
|
+
|
|
92
|
+
@font-face {
|
|
93
|
+
font-family: 'Orbitron';
|
|
94
|
+
src: url('./orbitron/Orbitron-Regular.ttf') format('truetype');
|
|
95
|
+
font-weight: 400;
|
|
96
|
+
font-style: normal;
|
|
97
|
+
}
|
|
98
|
+
|
|
99
|
+
@font-face {
|
|
100
|
+
font-family: 'Orbitron';
|
|
101
|
+
src: url('./orbitron/Orbitron-Medium.ttf') format('truetype');
|
|
102
|
+
font-weight: 500;
|
|
103
|
+
font-style: normal;
|
|
104
|
+
}
|
|
105
|
+
|
|
106
|
+
@font-face {
|
|
107
|
+
font-family: 'Orbitron';
|
|
108
|
+
src: url('./orbitron/Orbitron-SemiBold.ttf') format('truetype');
|
|
109
|
+
font-weight: 600;
|
|
110
|
+
font-style: normal;
|
|
111
|
+
}
|
|
112
|
+
|
|
113
|
+
@font-face {
|
|
114
|
+
font-family: 'Orbitron';
|
|
115
|
+
src: url('./orbitron/Orbitron-Bold.ttf') format('truetype');
|
|
116
|
+
font-weight: 700;
|
|
117
|
+
font-style: normal;
|
|
118
|
+
}
|
|
119
|
+
|
|
50
120
|
@font-face {
|
|
51
121
|
font-family: 'SpaceMonoRegular';
|
|
52
122
|
src: url('./SpaceMono-Regular.ttf') format('truetype');
|
package/src/lib/styles/theme.css
CHANGED
|
@@ -1,4 +1,6 @@
|
|
|
1
1
|
.light_theme {
|
|
2
|
+
--gradient-primary-start: 156 129 255;
|
|
3
|
+
--gradient-primary-end: 4 255 135;
|
|
2
4
|
--bg-primary: 255 255 255;
|
|
3
5
|
--primary: 236 25 56;
|
|
4
6
|
--success: 15 140 96;
|
|
@@ -31,6 +33,8 @@
|
|
|
31
33
|
}
|
|
32
34
|
|
|
33
35
|
:root {
|
|
36
|
+
--gradient-primary-start: 156 129 255;
|
|
37
|
+
--gradient-primary-end: 4 255 135;
|
|
34
38
|
--bg-primary: 12 14 18;
|
|
35
39
|
--primary: 236 25 56;
|
|
36
40
|
--success: 76 175 80;
|
|
@@ -40,7 +44,7 @@
|
|
|
40
44
|
--discovery: 119 113 227;
|
|
41
45
|
--information: 62 175 240;
|
|
42
46
|
--text-primary: 247 247 247;
|
|
43
|
-
--text-secondary:
|
|
47
|
+
--text-secondary: 97 101 108;
|
|
44
48
|
--border-default: 55 58 65;
|
|
45
49
|
--text-placeholder: 133 136 142;
|
|
46
50
|
--step-bg: 255 255 255;
|
|
@@ -1,13 +1,15 @@
|
|
|
1
1
|
<div class="chart-wrapper" [style.height]="height" [class.loading]="loading">
|
|
2
|
-
<
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
2
|
+
<ng-container *ngIf="canInit">
|
|
3
|
+
<div
|
|
4
|
+
echarts
|
|
5
|
+
[options]="chartOptions"
|
|
6
|
+
(chartInit)="onChartInit($event)"
|
|
7
|
+
(chartClick)="onChartClick($event)"
|
|
8
|
+
class="w-full h-full">
|
|
9
|
+
</div>
|
|
10
|
+
</ng-container>
|
|
9
11
|
|
|
10
12
|
<div class="chart-loader" *ngIf="loading">
|
|
11
13
|
<span class="txt-default">Loading...</span>
|
|
12
14
|
</div>
|
|
13
|
-
</div>
|
|
15
|
+
</div>
|
|
@@ -1,43 +1,15 @@
|
|
|
1
1
|
<div
|
|
2
|
-
class="flex flex-row gap-
|
|
3
|
-
[class]="rounded ? 'tag-round' : 'tag-square'"
|
|
4
|
-
[ngClass]="{
|
|
5
|
-
'tag-critical': type === 'critical',
|
|
6
|
-
'tag-success': type === 'success',
|
|
7
|
-
'tag-warning': type === 'warning',
|
|
8
|
-
'tag-information': type === 'information',
|
|
9
|
-
'tag-discovery': type === 'discovery',
|
|
10
|
-
'tag-danger': type === 'danger',
|
|
11
|
-
'tag-default': type === 'default'
|
|
12
|
-
}"
|
|
2
|
+
[class]="`flex flex-row gap-small ${rounded ? 'tag-round' : 'tag-square'} tag-${type}${solid ? '-solid' : ''}`"
|
|
13
3
|
>
|
|
14
|
-
@if(icon){
|
|
15
|
-
|
|
4
|
+
@if(icon){
|
|
5
|
+
<fx-ui-hero-icon
|
|
6
|
+
[class]="`flex txt-tag-${type} ${solid ? 'text-white': ''}`"
|
|
16
7
|
[icon]="icon"
|
|
17
8
|
[size]="18"
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
'text-success': type === 'success',
|
|
21
|
-
'text-warning': type === 'warning',
|
|
22
|
-
'text-information': type === 'information',
|
|
23
|
-
'text-discovery': type === 'discovery',
|
|
24
|
-
'text-danger': type === 'danger',
|
|
25
|
-
'text-text-primary': type === 'default',
|
|
26
|
-
}"
|
|
27
|
-
></fx-ui-hero-icon
|
|
28
|
-
>}
|
|
9
|
+
></fx-ui-hero-icon>
|
|
10
|
+
}
|
|
29
11
|
|
|
30
|
-
<div
|
|
31
|
-
[ngClass]="{
|
|
32
|
-
'txt-tag-critical': type === 'critical',
|
|
33
|
-
'txt-tag-success': type === 'success',
|
|
34
|
-
'txt-tag-warning': type === 'warning',
|
|
35
|
-
'txt-tag-information': type === 'information',
|
|
36
|
-
'txt-tag-discovery': type === 'discovery',
|
|
37
|
-
'txt-tag-danger': type === 'danger',
|
|
38
|
-
'txt-tag-default': type === 'default',
|
|
39
|
-
}"
|
|
40
|
-
>
|
|
12
|
+
<div [class]="`txt-tag-${type} ${solid ? 'text-white': ''}`">
|
|
41
13
|
{{ label }}
|
|
42
14
|
</div>
|
|
43
15
|
</div>
|
package/tailwind.config.js
CHANGED
|
@@ -2,6 +2,8 @@ module.exports = {
|
|
|
2
2
|
theme: {
|
|
3
3
|
extend: {
|
|
4
4
|
colors: {
|
|
5
|
+
'gradient-primary-start': 'rgb(var(--gradient-primary-start) / <alpha-value>)',
|
|
6
|
+
'gradient-primary-end': 'rgb(var(--gradient-primary-end) / <alpha-value>)',
|
|
5
7
|
primary: 'rgb(var(--primary) / <alpha-value>)',
|
|
6
8
|
success: 'rgb(var(--success) / <alpha-value>)',
|
|
7
9
|
danger: 'rgb(var(--danger) / <alpha-value>)',
|
|
@@ -37,6 +39,10 @@ module.exports = {
|
|
|
37
39
|
primary: 'rgb(var(--button-primary) / <alpha-value>)',
|
|
38
40
|
},
|
|
39
41
|
},
|
|
42
|
+
backgroundImage: {
|
|
43
|
+
'gradient-primary':
|
|
44
|
+
'linear-gradient(135deg, rgb(var(--gradient-primary-start)) 0%, rgb(var(--gradient-primary-end)) 100%)',
|
|
45
|
+
},
|
|
40
46
|
screens: {
|
|
41
47
|
sm: '640px',
|
|
42
48
|
md: '960px',
|
|
@@ -62,6 +68,9 @@ module.exports = {
|
|
|
62
68
|
},
|
|
63
69
|
fontFamily:{
|
|
64
70
|
spmono: ['SpaceMonoRegular', 'monospace'],
|
|
71
|
+
dmsans: ['DMSans', 'sans-serif'],
|
|
72
|
+
orbitron: ['Orbitron', 'sans-serif'],
|
|
73
|
+
bevn: ['BeVietnamPro', 'sans-serif'],
|
|
65
74
|
},
|
|
66
75
|
fontSize: {
|
|
67
76
|
xs: '0.75rem',
|
package/theme.css
CHANGED
|
@@ -1,4 +1,6 @@
|
|
|
1
1
|
.light_theme {
|
|
2
|
+
--gradient-primary-start: 156 129 255;
|
|
3
|
+
--gradient-primary-end: 4 255 135;
|
|
2
4
|
--bg-primary: 255 255 255;
|
|
3
5
|
--primary: 236 25 56;
|
|
4
6
|
--success: 15 140 96;
|
|
@@ -31,6 +33,8 @@
|
|
|
31
33
|
}
|
|
32
34
|
|
|
33
35
|
:root {
|
|
36
|
+
--gradient-primary-start: 156 129 255;
|
|
37
|
+
--gradient-primary-end: 4 255 135;
|
|
34
38
|
--bg-primary: 12 14 18;
|
|
35
39
|
--primary: 236 25 56;
|
|
36
40
|
--success: 76 175 80;
|
|
@@ -40,7 +44,7 @@
|
|
|
40
44
|
--discovery: 119 113 227;
|
|
41
45
|
--information: 62 175 240;
|
|
42
46
|
--text-primary: 247 247 247;
|
|
43
|
-
--text-secondary:
|
|
47
|
+
--text-secondary: 97 101 108;
|
|
44
48
|
--border-default: 55 58 65;
|
|
45
49
|
--text-placeholder: 133 136 142;
|
|
46
50
|
--step-bg: 255 255 255;
|