tecnualng 21.0.25 → 21.0.27
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/tecnualng.mjs +337 -32
- package/fesm2022/tecnualng.mjs.map +1 -1
- package/package.json +1 -1
- package/src/lib/styles/_theming.scss +10 -0
- package/src/lib/styles/definitions/_futuristic-light.scss +36 -0
- package/src/lib/styles/definitions/_futuristic.scss +2 -2
- package/types/tecnualng.d.ts +81 -3
package/package.json
CHANGED
|
@@ -9,6 +9,7 @@
|
|
|
9
9
|
@use 'definitions/aurora' as aurora;
|
|
10
10
|
@use 'definitions/aurora-dark' as aurora-dark;
|
|
11
11
|
@use 'definitions/futuristic' as futuristic;
|
|
12
|
+
@use 'definitions/futuristic-light' as futuristic-light;
|
|
12
13
|
|
|
13
14
|
// Forward mixins for external use
|
|
14
15
|
@forward 'definitions/light';
|
|
@@ -21,6 +22,7 @@
|
|
|
21
22
|
@forward 'definitions/aurora';
|
|
22
23
|
@forward 'definitions/aurora-dark';
|
|
23
24
|
@forward 'definitions/futuristic';
|
|
25
|
+
@forward 'definitions/futuristic-light';
|
|
24
26
|
|
|
25
27
|
// Apply to root if desired, or use a class
|
|
26
28
|
:root {
|
|
@@ -95,5 +97,13 @@ body.futuristic-theme,
|
|
|
95
97
|
body[data-theme='futuristic'] {
|
|
96
98
|
@include futuristic.tng-theme-futuristic;
|
|
97
99
|
background-color: var(--tng-background);
|
|
100
|
+
background-color: var(--tng-background);
|
|
101
|
+
color: var(--tng-text);
|
|
102
|
+
}
|
|
103
|
+
|
|
104
|
+
body.futuristic-light-theme,
|
|
105
|
+
body[data-theme='futuristic-light'] {
|
|
106
|
+
@include futuristic-light.tng-theme-futuristic-light;
|
|
107
|
+
background-color: var(--tng-background);
|
|
98
108
|
color: var(--tng-text);
|
|
99
109
|
}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
@mixin tng-theme-futuristic-light {
|
|
2
|
+
// Colors - Neon accents on light background
|
|
3
|
+
--tng-primary: #00c2cc; // Slightly darker cyan for visibility on light
|
|
4
|
+
--tng-primary-contrast: #ffffff;
|
|
5
|
+
--tng-secondary: #9c27b0; // Purple
|
|
6
|
+
--tng-secondary-contrast: #ffffff;
|
|
7
|
+
|
|
8
|
+
// Glassmorphism surface
|
|
9
|
+
--tng-surface: #ffffffcc; // White with transparency
|
|
10
|
+
|
|
11
|
+
// Light background
|
|
12
|
+
--tng-background: #f0f2f5;
|
|
13
|
+
|
|
14
|
+
// Text colors
|
|
15
|
+
--tng-text: #1a1a2e; // Dark blue-gray
|
|
16
|
+
--tng-text-secondary: #606070;
|
|
17
|
+
|
|
18
|
+
// Border with glassmorphism
|
|
19
|
+
--tng-border: rgba(0, 0, 0, 0.1);
|
|
20
|
+
|
|
21
|
+
// Status colors with neon effect
|
|
22
|
+
--tng-error: #ff3366;
|
|
23
|
+
--tng-warning: #ffaa00;
|
|
24
|
+
--tng-success: #00c853; // Darker green for visibility
|
|
25
|
+
|
|
26
|
+
// Shadows with neon glow - muted for light theme
|
|
27
|
+
--tng-shadow-sm: 0 4px 15px rgba(0, 194, 204, 0.15);
|
|
28
|
+
--tng-shadow-md: 0 8px 32px 0 rgba(0, 0, 0, 0.1);
|
|
29
|
+
|
|
30
|
+
// Additional neon colors for variety
|
|
31
|
+
--tng-neon-cyan: #00c2cc;
|
|
32
|
+
--tng-neon-purple: #9c27b0;
|
|
33
|
+
--tng-neon-green: #00c853;
|
|
34
|
+
--tng-neon-pink: #e91e63;
|
|
35
|
+
--tng-neon-orange: #ff9800;
|
|
36
|
+
}
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
--tng-secondary-contrast: #ffffff;
|
|
7
7
|
|
|
8
8
|
// Glassmorphism surface
|
|
9
|
-
--tng-surface:
|
|
9
|
+
--tng-surface: #0a0a12ee;
|
|
10
10
|
|
|
11
11
|
// Dark background
|
|
12
12
|
--tng-background: #0a0a12;
|
|
@@ -16,7 +16,7 @@
|
|
|
16
16
|
--tng-text-secondary: #a0a0b0;
|
|
17
17
|
|
|
18
18
|
// Border with glassmorphism
|
|
19
|
-
--tng-border: rgba(255, 255, 255, 0.
|
|
19
|
+
--tng-border: rgba(255, 255, 255, 0.5);
|
|
20
20
|
|
|
21
21
|
// Status colors with neon effect
|
|
22
22
|
--tng-error: #ff3366;
|
package/types/tecnualng.d.ts
CHANGED
|
@@ -78,14 +78,61 @@ declare class TngInputDirective {
|
|
|
78
78
|
static ɵdir: _angular_core.ɵɵDirectiveDeclaration<TngInputDirective, "input[tngInput], textarea[tngInput]", never, { "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "placeholder": { "alias": "placeholder"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
79
79
|
}
|
|
80
80
|
|
|
81
|
+
declare class TngTextareaComponent implements ControlValueAccessor {
|
|
82
|
+
label: _angular_core.InputSignal<string>;
|
|
83
|
+
placeholder: _angular_core.InputSignal<string>;
|
|
84
|
+
required: _angular_core.InputSignal<boolean>;
|
|
85
|
+
disabled: _angular_core.ModelSignal<boolean>;
|
|
86
|
+
maxLength: _angular_core.InputSignal<number | undefined>;
|
|
87
|
+
id: _angular_core.InputSignal<string>;
|
|
88
|
+
value: _angular_core.WritableSignal<string>;
|
|
89
|
+
onChange: any;
|
|
90
|
+
onTouched: any;
|
|
91
|
+
onInput(event: Event): void;
|
|
92
|
+
onBlur(): void;
|
|
93
|
+
writeValue(value: any): void;
|
|
94
|
+
registerOnChange(fn: any): void;
|
|
95
|
+
registerOnTouched(fn: any): void;
|
|
96
|
+
setDisabledState(isDisabled: boolean): void;
|
|
97
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<TngTextareaComponent, never>;
|
|
98
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<TngTextareaComponent, "tng-textarea", never, { "label": { "alias": "label"; "required": false; "isSignal": true; }; "placeholder": { "alias": "placeholder"; "required": false; "isSignal": true; }; "required": { "alias": "required"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "maxLength": { "alias": "maxLength"; "required": false; "isSignal": true; }; "id": { "alias": "id"; "required": false; "isSignal": true; }; }, { "disabled": "disabledChange"; }, never, never, true, never>;
|
|
99
|
+
}
|
|
100
|
+
|
|
101
|
+
declare class TngTextareaDirective {
|
|
102
|
+
private el;
|
|
103
|
+
ngControl: NgControl | null;
|
|
104
|
+
disabled: _angular_core.InputSignal<boolean>;
|
|
105
|
+
placeholder: _angular_core.InputSignal<string>;
|
|
106
|
+
maxLength: _angular_core.InputSignal<number | undefined>;
|
|
107
|
+
focused: _angular_core.WritableSignal<boolean>;
|
|
108
|
+
private _value;
|
|
109
|
+
hasValue: _angular_core.Signal<boolean>;
|
|
110
|
+
valueLength: _angular_core.Signal<number>;
|
|
111
|
+
computedPlaceholder: _angular_core.Signal<string>;
|
|
112
|
+
constructor();
|
|
113
|
+
onFocus(): void;
|
|
114
|
+
onBlur(): void;
|
|
115
|
+
onInput(): void;
|
|
116
|
+
ngAfterViewInit(): void;
|
|
117
|
+
private updateValue;
|
|
118
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<TngTextareaDirective, never>;
|
|
119
|
+
static ɵdir: _angular_core.ɵɵDirectiveDeclaration<TngTextareaDirective, "textarea[tngTextarea]", ["tngTextarea"], { "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "placeholder": { "alias": "placeholder"; "required": false; "isSignal": true; }; "maxLength": { "alias": "maxLength"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
120
|
+
}
|
|
121
|
+
|
|
81
122
|
declare class TngFormFieldComponent {
|
|
82
123
|
label: _angular_core.InputSignal<string>;
|
|
83
124
|
inputDirective: _angular_core.Signal<TngInputDirective | undefined>;
|
|
125
|
+
textareaDirective: _angular_core.Signal<TngTextareaDirective | undefined>;
|
|
126
|
+
activeDirective: _angular_core.Signal<TngInputDirective | TngTextareaDirective | undefined>;
|
|
84
127
|
isFocused: _angular_core.Signal<boolean>;
|
|
85
128
|
hasValue: _angular_core.Signal<boolean>;
|
|
86
129
|
isDisabled: _angular_core.Signal<boolean>;
|
|
130
|
+
maxLength: _angular_core.Signal<number | undefined>;
|
|
131
|
+
currentLength: _angular_core.Signal<number>;
|
|
132
|
+
showCounter: _angular_core.Signal<boolean>;
|
|
133
|
+
hasTextarea: _angular_core.Signal<boolean>;
|
|
87
134
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<TngFormFieldComponent, never>;
|
|
88
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<TngFormFieldComponent, "tng-form-field", never, { "label": { "alias": "label"; "required": false; "isSignal": true; }; }, {}, ["inputDirective"], ["*"], true, never>;
|
|
135
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<TngFormFieldComponent, "tng-form-field", never, { "label": { "alias": "label"; "required": false; "isSignal": true; }; }, {}, ["inputDirective", "textareaDirective"], ["*"], true, never>;
|
|
89
136
|
}
|
|
90
137
|
|
|
91
138
|
interface DateRange {
|
|
@@ -206,7 +253,7 @@ declare class TngTabsComponent implements AfterViewInit, OnDestroy {
|
|
|
206
253
|
static ɵcmp: _angular_core.ɵɵComponentDeclaration<TngTabsComponent, "tng-tabs", never, {}, {}, ["tabs"], never, true, never>;
|
|
207
254
|
}
|
|
208
255
|
|
|
209
|
-
type ThemeName = 'light' | 'dark' | 'ocean' | 'forest' | 'sunset' | 'royal' | 'monochrome' | 'aurora' | 'aurora-dark' | 'futuristic';
|
|
256
|
+
type ThemeName = 'light' | 'dark' | 'ocean' | 'forest' | 'sunset' | 'royal' | 'monochrome' | 'aurora' | 'aurora-dark' | 'futuristic' | 'futuristic-light';
|
|
210
257
|
interface Theme {
|
|
211
258
|
name: ThemeName;
|
|
212
259
|
displayName: string;
|
|
@@ -377,6 +424,8 @@ declare class TngSelectDirective implements AfterViewInit, OnDestroy {
|
|
|
377
424
|
private _selectedIndices;
|
|
378
425
|
private panelRef;
|
|
379
426
|
private triggerEl;
|
|
427
|
+
private isDisabled;
|
|
428
|
+
private mutationObserver;
|
|
380
429
|
isMulti: _angular_core.Signal<boolean>;
|
|
381
430
|
options: _angular_core.Signal<SelectOption[]>;
|
|
382
431
|
filteredOptions: _angular_core.Signal<SelectOption[]>;
|
|
@@ -444,5 +493,34 @@ declare class TngSelectComponent implements ControlValueAccessor {
|
|
|
444
493
|
static ɵcmp: _angular_core.ɵɵComponentDeclaration<TngSelectComponent, "tng-select", never, { "label": { "alias": "label"; "required": false; "isSignal": true; }; "options": { "alias": "options"; "required": true; "isSignal": true; }; "enableMulti": { "alias": "enableMulti"; "required": false; "isSignal": true; }; "enableSearch": { "alias": "enableSearch"; "required": false; "isSignal": true; }; "placeholder": { "alias": "placeholder"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "hint": { "alias": "hint"; "required": false; "isSignal": true; }; "ariaLabel": { "alias": "ariaLabel"; "required": false; "isSignal": true; }; "value": { "alias": "value"; "required": false; "isSignal": true; }; }, { "value": "valueChange"; }, never, never, true, never>;
|
|
445
494
|
}
|
|
446
495
|
|
|
447
|
-
|
|
496
|
+
declare class TngSliderComponent implements ControlValueAccessor {
|
|
497
|
+
min: _angular_core.InputSignal<number>;
|
|
498
|
+
max: _angular_core.InputSignal<number>;
|
|
499
|
+
step: _angular_core.InputSignal<number>;
|
|
500
|
+
label: _angular_core.InputSignal<string>;
|
|
501
|
+
disabled: _angular_core.InputSignal<boolean>;
|
|
502
|
+
orientation: _angular_core.InputSignal<"vertical" | "horizontal">;
|
|
503
|
+
value: _angular_core.ModelSignal<number>;
|
|
504
|
+
isDragging: _angular_core.WritableSignal<boolean>;
|
|
505
|
+
track: _angular_core.Signal<ElementRef<HTMLElement>>;
|
|
506
|
+
percentage: _angular_core.Signal<number>;
|
|
507
|
+
private onChange;
|
|
508
|
+
private onTouched;
|
|
509
|
+
constructor();
|
|
510
|
+
writeValue(value: number): void;
|
|
511
|
+
registerOnChange(fn: (value: number) => void): void;
|
|
512
|
+
registerOnTouched(fn: () => void): void;
|
|
513
|
+
setDisabledState(isDisabled: boolean): void;
|
|
514
|
+
onStart(event: MouseEvent | TouchEvent): void;
|
|
515
|
+
onMove(event: MouseEvent | TouchEvent): void;
|
|
516
|
+
onEnd(): void;
|
|
517
|
+
private updateValueFromEvent;
|
|
518
|
+
private getClientX;
|
|
519
|
+
private getClientY;
|
|
520
|
+
private clampAndStep;
|
|
521
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<TngSliderComponent, never>;
|
|
522
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<TngSliderComponent, "tng-slider", never, { "min": { "alias": "min"; "required": false; "isSignal": true; }; "max": { "alias": "max"; "required": false; "isSignal": true; }; "step": { "alias": "step"; "required": false; "isSignal": true; }; "label": { "alias": "label"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "orientation": { "alias": "orientation"; "required": false; "isSignal": true; }; "value": { "alias": "value"; "required": false; "isSignal": true; }; }, { "value": "valueChange"; }, never, never, true, never>;
|
|
523
|
+
}
|
|
524
|
+
|
|
525
|
+
export { TecnualDatepickerComponent, TecnualInputComponent, TecnualTableComponent, ThemeService, TngButton, TngCardComponent, TngExpansionPanelComponent, TngFormFieldComponent, TngInputDirective, TngMenuComponent, TngMenuGroupComponent, TngMenuItemComponent, TngSelectComponent, TngSelectDirective, TngSelectPanelComponent, TngSidebarComponent, TngSliderComponent, TngTabComponent, TngTabsComponent, TngTextareaComponent, TngTextareaDirective, TngToolbarComponent, TngTooltipComponent, TngTooltipDirective };
|
|
448
526
|
export type { DateRange, SelectOption, TableColumn, Theme, ThemeName, TngButtonAppearance, TngCardVariant, TngToolbarColor, TngToolbarPosition, TngToolbarPositionType };
|