@smartbit4all/ng-client 7.3.20 → 7.3.21
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/smartbit4all-ng-client.mjs +57 -28
- package/fesm2022/smartbit4all-ng-client.mjs.map +1 -1
- package/package.json +6 -3
- package/smartbit4all-ng-client-7.3.21.tgz +0 -0
- package/src/styles/_ng-client-styles.scss +192 -0
- package/types/smartbit4all-ng-client.d.ts +5 -5
- package/smartbit4all-ng-client-7.3.20.tgz +0 -0
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@smartbit4all/ng-client",
|
|
3
|
-
"version": "7.3.
|
|
3
|
+
"version": "7.3.21",
|
|
4
4
|
"description": "Angular client library for the smartbit4all platform — a server-driven UI framework that renders views, pages, forms, grids, trees and dialogs from backend (ViewApi/PageApi) definitions. Provides reactive view-context state management, dynamic component layouts and OpenAPI-generated BFF clients.",
|
|
5
5
|
"sideEffects": false,
|
|
6
6
|
"peerDependencies": {
|
|
@@ -27,9 +27,10 @@
|
|
|
27
27
|
"dependencies": {
|
|
28
28
|
"tslib": "^2.3.0"
|
|
29
29
|
},
|
|
30
|
-
"module": "fesm2022/smartbit4all-ng-client.mjs",
|
|
31
|
-
"typings": "types/smartbit4all-ng-client.d.ts",
|
|
32
30
|
"exports": {
|
|
31
|
+
"./styles": {
|
|
32
|
+
"sass": "./src/styles/_ng-client-styles.scss"
|
|
33
|
+
},
|
|
33
34
|
"./package.json": {
|
|
34
35
|
"default": "./package.json"
|
|
35
36
|
},
|
|
@@ -38,5 +39,7 @@
|
|
|
38
39
|
"default": "./fesm2022/smartbit4all-ng-client.mjs"
|
|
39
40
|
}
|
|
40
41
|
},
|
|
42
|
+
"module": "fesm2022/smartbit4all-ng-client.mjs",
|
|
43
|
+
"typings": "types/smartbit4all-ng-client.d.ts",
|
|
41
44
|
"type": "module"
|
|
42
45
|
}
|
|
Binary file
|
|
@@ -0,0 +1,192 @@
|
|
|
1
|
+
@use 'sass:map';
|
|
2
|
+
|
|
3
|
+
$default-colors: (
|
|
4
|
+
primary: #4763ff,
|
|
5
|
+
secondary: #a6aabd60,
|
|
6
|
+
accent: #20b6a8,
|
|
7
|
+
warn: #d51d1d,
|
|
8
|
+
success: #16a34a,
|
|
9
|
+
accent-grey: #6b7280,
|
|
10
|
+
text: #132033,
|
|
11
|
+
text-inverted: #ffffff,
|
|
12
|
+
text-muted: #68778e,
|
|
13
|
+
) !default;
|
|
14
|
+
|
|
15
|
+
// Text color on the raised variant. A color missing from this map gets white.
|
|
16
|
+
$default-text-colors: (
|
|
17
|
+
primary: var(--text-inverted-color),
|
|
18
|
+
) !default;
|
|
19
|
+
|
|
20
|
+
$default-tokens: (
|
|
21
|
+
// Backgrounds
|
|
22
|
+
color-bg: #f6f8fb,
|
|
23
|
+
color-surface: #ffffff,
|
|
24
|
+
color-surface-alt: #f9fbff,
|
|
25
|
+
|
|
26
|
+
// Borders
|
|
27
|
+
color-border: #e4eaf2,
|
|
28
|
+
|
|
29
|
+
// Tree
|
|
30
|
+
tree-active-background: var(--accent-color),
|
|
31
|
+
|
|
32
|
+
// Semantic
|
|
33
|
+
color-danger: var(--warn-color),
|
|
34
|
+
color-teal: #20b6a8,
|
|
35
|
+
|
|
36
|
+
// UI chrome
|
|
37
|
+
color-chip: #e8f4fd,
|
|
38
|
+
color-input: #ffffff,
|
|
39
|
+
|
|
40
|
+
// Shadows
|
|
41
|
+
shadow-strong: 0 18px 50px rgba(1, 132, 228, 0.1),
|
|
42
|
+
shadow-soft: 0 8px 22px rgba(1, 132, 228, 0.07),
|
|
43
|
+
|
|
44
|
+
border-radius: 0.5rem,
|
|
45
|
+
default-padding: 0.5rem,
|
|
46
|
+
) !default;
|
|
47
|
+
|
|
48
|
+
@function -text-color($text-colors, $name) {
|
|
49
|
+
$value: map.get($text-colors, $name);
|
|
50
|
+
@if $value {
|
|
51
|
+
@return $value;
|
|
52
|
+
}
|
|
53
|
+
@return var(--text-color);
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
// Emits CSS variables only, so the project chooses the selector.
|
|
57
|
+
// Usage: body { @include sb.tokens($colors, $text-colors, $overrides); }
|
|
58
|
+
@mixin tokens($colors: (), $text-colors: (), $overrides: ()) {
|
|
59
|
+
$all-colors: map.merge($default-colors, $colors);
|
|
60
|
+
$all-text-colors: map.merge($default-text-colors, $text-colors);
|
|
61
|
+
$all-tokens: map.merge($default-tokens, $overrides);
|
|
62
|
+
|
|
63
|
+
// One --<name>-color and one --<name>-text-color for every color
|
|
64
|
+
@each $name, $color in $all-colors {
|
|
65
|
+
--#{$name}-color: #{$color};
|
|
66
|
+
--#{$name}-text-color: #{-text-color($all-text-colors, $name)};
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
@each $name, $value in $all-tokens {
|
|
70
|
+
@if $name == font-family {
|
|
71
|
+
font-family: #{$value} !important;
|
|
72
|
+
} @else {
|
|
73
|
+
--#{$name}: #{$value};
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
|
|
78
|
+
// @use '@smartbit4all/ng-client/styles' as sb;
|
|
79
|
+
// @include sb.buttons;
|
|
80
|
+
// @include sb.buttons((new-color: #ff5500), (new-color: white));
|
|
81
|
+
@mixin buttons($colors: (), $text-colors: ()) {
|
|
82
|
+
$all-colors: map.merge($default-colors, $colors);
|
|
83
|
+
$all-text-colors: map.merge($default-text-colors, $text-colors);
|
|
84
|
+
|
|
85
|
+
@each $name, $color in $all-colors {
|
|
86
|
+
$text: -text-color($all-text-colors, $name);
|
|
87
|
+
$color: var(--#{$name}-color, #{$color});
|
|
88
|
+
|
|
89
|
+
.sb4-raised.sb4-#{$name} {
|
|
90
|
+
background-color: #{$color} !important;
|
|
91
|
+
color: #{$text} !important;
|
|
92
|
+
stroke: #{$text} !important;
|
|
93
|
+
border: none;
|
|
94
|
+
}
|
|
95
|
+
|
|
96
|
+
.sb4-raised.sb4-#{$name}:hover {
|
|
97
|
+
background-color: rgb(from #{$color} r g b / 0.8);
|
|
98
|
+
}
|
|
99
|
+
|
|
100
|
+
.sb4-raised.sb4-#{$name} .mdc-button__label {
|
|
101
|
+
color: #{$text};
|
|
102
|
+
}
|
|
103
|
+
|
|
104
|
+
.sb4-normal.sb4-#{$name} {
|
|
105
|
+
background-color: transparent;
|
|
106
|
+
border: 1px solid #{$color};
|
|
107
|
+
color: #{$color} !important;
|
|
108
|
+
stroke: #{$color};
|
|
109
|
+
box-shadow: none;
|
|
110
|
+
}
|
|
111
|
+
|
|
112
|
+
.sb4-flat.sb4-#{$name} {
|
|
113
|
+
background-color: transparent;
|
|
114
|
+
border: 1px solid transparent;
|
|
115
|
+
color: #{$color} !important;
|
|
116
|
+
stroke: #{$color};
|
|
117
|
+
box-shadow: none;
|
|
118
|
+
}
|
|
119
|
+
|
|
120
|
+
.sb4-flat.sb4-#{$name}.sb4-view-activated {
|
|
121
|
+
--sb4-view-activated-bg: transparent !important;
|
|
122
|
+
--sb4-view-activated-color: #{$color} !important;
|
|
123
|
+
border-bottom: 1px solid #{$color} !important;
|
|
124
|
+
border-bottom-right-radius: unset !important;
|
|
125
|
+
border-bottom-left-radius: unset !important;
|
|
126
|
+
|
|
127
|
+
.mat-icon {
|
|
128
|
+
color: #{$color} !important;
|
|
129
|
+
fill: #{$color} !important;
|
|
130
|
+
stroke: #{$color} !important;
|
|
131
|
+
}
|
|
132
|
+
}
|
|
133
|
+
|
|
134
|
+
.sb4-minifab.sb4-#{$name} {
|
|
135
|
+
background-color: transparent;
|
|
136
|
+
border: 1px solid #{$color};
|
|
137
|
+
color: #{$color};
|
|
138
|
+
box-shadow: none;
|
|
139
|
+
}
|
|
140
|
+
|
|
141
|
+
.sb4-icon.sb4-#{$name} {
|
|
142
|
+
background-color: transparent;
|
|
143
|
+
border: 1px solid transparent;
|
|
144
|
+
color: #{$color};
|
|
145
|
+
box-shadow: none;
|
|
146
|
+
}
|
|
147
|
+
|
|
148
|
+
.sb4-minifab.sb4-#{$name}:hover,
|
|
149
|
+
.sb4-normal.sb4-#{$name}:hover {
|
|
150
|
+
background-color: rgb(from #{$color} r g b / 0.1);
|
|
151
|
+
border-color: #{$color};
|
|
152
|
+
}
|
|
153
|
+
|
|
154
|
+
.sb4-flat.sb4-#{$name}:hover {
|
|
155
|
+
background-color: rgb(from #{$color} r g b / 0.1);
|
|
156
|
+
}
|
|
157
|
+
|
|
158
|
+
.sb4-minifab.sb4-#{$name}:focus,
|
|
159
|
+
.sb4-minifab.sb4-#{$name}:hover {
|
|
160
|
+
box-shadow: none;
|
|
161
|
+
}
|
|
162
|
+
|
|
163
|
+
.sb4-minifab.sb4-#{$name},
|
|
164
|
+
.sb4-normal.sb4-#{$name},
|
|
165
|
+
.sb4-flat.sb4-#{$name} {
|
|
166
|
+
.mdc-button__label {
|
|
167
|
+
color: #{$color};
|
|
168
|
+
}
|
|
169
|
+
}
|
|
170
|
+
|
|
171
|
+
.sb4-raised.sb4-#{$name} mat-icon,
|
|
172
|
+
.sb4-raised.sb4-#{$name} .mat-icon,
|
|
173
|
+
.sb4-raised.sb4-#{$name} .pi {
|
|
174
|
+
color: #{$text} !important;
|
|
175
|
+
fill: #{$text} !important;
|
|
176
|
+
stroke: #{$text} !important;
|
|
177
|
+
}
|
|
178
|
+
|
|
179
|
+
.sb4-icon.sb4-#{$name},
|
|
180
|
+
.sb4-minifab.sb4-#{$name},
|
|
181
|
+
.sb4-normal.sb4-#{$name},
|
|
182
|
+
.sb4-flat.sb4-#{$name} {
|
|
183
|
+
mat-icon,
|
|
184
|
+
.mat-icon,
|
|
185
|
+
.pi {
|
|
186
|
+
color: #{$color} !important;
|
|
187
|
+
fill: #{$color} !important;
|
|
188
|
+
stroke: #{$color} !important;
|
|
189
|
+
}
|
|
190
|
+
}
|
|
191
|
+
}
|
|
192
|
+
}
|
|
@@ -5,7 +5,7 @@ import { ComponentType as ComponentType$1 } from '@angular/cdk/portal';
|
|
|
5
5
|
import { ValidatorFn, UntypedFormGroup, ControlValueAccessor } from '@angular/forms';
|
|
6
6
|
import { Observable, Subject as Subject$1, Subscription } from 'rxjs';
|
|
7
7
|
import { QuillModules } from 'ngx-quill';
|
|
8
|
-
import { MatDialogRef, MatDialog } from '@angular/material/dialog';
|
|
8
|
+
import { MatDialogRef, MatDialog, MatDialogConfig } from '@angular/material/dialog';
|
|
9
9
|
import { DateFnsAdapter } from '@angular/material-date-fns-adapter';
|
|
10
10
|
import { MatDateFormats, ThemePalette } from '@angular/material/core';
|
|
11
11
|
import { Locale } from 'date-fns';
|
|
@@ -9154,7 +9154,7 @@ declare abstract class SmartdialogService {
|
|
|
9154
9154
|
maxWidth: number;
|
|
9155
9155
|
minWidth: number;
|
|
9156
9156
|
};
|
|
9157
|
-
createDialog(smartDialog: SmartDialogData, component: ComponentType$1<any
|
|
9157
|
+
createDialog(smartDialog: SmartDialogData, component: ComponentType$1<any>, config?: MatDialogConfig): MatDialogRef<any, any>;
|
|
9158
9158
|
createDialogRef(smartDialog: SmartDialogData, component: ComponentType$1<any>): MatDialogRef<any, any>;
|
|
9159
9159
|
openComponentAsDialog(component: ComponentType$1<any>, viewName: string): MatDialogRef<any, any>;
|
|
9160
9160
|
handleAfterClosed(result: any): void;
|
|
@@ -9885,7 +9885,7 @@ declare class SmartKeybindingService {
|
|
|
9885
9885
|
private readonly injector;
|
|
9886
9886
|
private readonly isMac;
|
|
9887
9887
|
private readonly hosts;
|
|
9888
|
-
/** The elements of no view whose keys go to a view: a dialog's
|
|
9888
|
+
/** The elements of no view whose keys go to a view: a dialog's container to the page it shows. */
|
|
9889
9889
|
private readonly forwards;
|
|
9890
9890
|
/** The view that held the focus last; it keeps the keys after the focus fell to the body. */
|
|
9891
9891
|
private lastActive?;
|
|
@@ -9893,8 +9893,8 @@ declare class SmartKeybindingService {
|
|
|
9893
9893
|
/** Lets the view take keys; returns the function that stops it. */
|
|
9894
9894
|
register(entry: KeybindingHost): () => void;
|
|
9895
9895
|
/**
|
|
9896
|
-
* Sends the keys pressed with the focus in `from`, an element
|
|
9897
|
-
* of a dialog), to the view whose host is `to`; returns the function that stops it.
|
|
9896
|
+
* Sends the keys pressed with the focus in `from`, an element enclosing no view of its own (the
|
|
9897
|
+
* container of a dialog), to the view whose host is `to`; returns the function that stops it.
|
|
9898
9898
|
*/
|
|
9899
9899
|
forwardKeys(from: HTMLElement, to: HTMLElement): () => void;
|
|
9900
9900
|
private onFocusin;
|
|
Binary file
|