@joster-dev/chaos-control 0.1.2 → 0.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +86 -86
- package/fesm2022/joster-dev-chaos-control.mjs +512 -580
- package/fesm2022/joster-dev-chaos-control.mjs.map +1 -1
- package/{lib/LICENSE → lib} +9 -9
- package/package.json +6 -8
- package/src/lib/scss/all.scss +7 -0
- package/src/lib/scss/card.scss +78 -0
- package/src/lib/scss/control.scss +49 -0
- package/src/lib/scss/reboot.scss +13 -0
- package/src/lib/scss/utility.scss +179 -0
- package/src/lib/scss/variables.scss +7 -0
- package/src/lib/styles.scss +28 -28
- package/types/joster-dev-chaos-control.d.ts +243 -0
- package/esm2022/joster-dev-chaos-control.mjs +0 -5
- package/esm2022/lib/chaos-control.module.mjs +0 -67
- package/esm2022/lib/chaos-control.service.mjs +0 -14
- package/esm2022/lib/components/choice/choice.component.mjs +0 -52
- package/esm2022/lib/components/color/color.component.mjs +0 -77
- package/esm2022/lib/components/file/file.component.mjs +0 -131
- package/esm2022/lib/components/index.mjs +0 -8
- package/esm2022/lib/components/number/number.component.mjs +0 -134
- package/esm2022/lib/components/readonly/readonly.component.mjs +0 -14
- package/esm2022/lib/components/select/select.component.mjs +0 -98
- package/esm2022/lib/components/text/text.component.mjs +0 -162
- package/esm2022/lib/directives/border-radius.directive.mjs +0 -41
- package/esm2022/lib/directives/control.directive.mjs +0 -46
- package/esm2022/lib/directives/index.mjs +0 -4
- package/esm2022/lib/directives/item.directive.mjs +0 -117
- package/esm2022/lib/models/index.mjs +0 -7
- package/esm2022/lib/models/is-item.function.mjs +0 -8
- package/esm2022/lib/models/is-items.function.mjs +0 -5
- package/esm2022/lib/models/is-number.function.mjs +0 -5
- package/esm2022/lib/models/is-primitive.function.mjs +0 -7
- package/esm2022/lib/models/item.interface.mjs +0 -2
- package/esm2022/lib/models/primitive.type.mjs +0 -2
- package/esm2022/public-api.mjs +0 -6
- package/index.d.ts +0 -5
- package/lib/chaos-control.module.d.ts +0 -20
- package/lib/chaos-control.service.d.ts +0 -6
- package/lib/components/choice/choice.component.d.ts +0 -15
- package/lib/components/color/color.component.d.ts +0 -22
- package/lib/components/file/file.component.d.ts +0 -31
- package/lib/components/index.d.ts +0 -7
- package/lib/components/number/number.component.d.ts +0 -33
- package/lib/components/readonly/readonly.component.d.ts +0 -8
- package/lib/components/select/select.component.d.ts +0 -28
- package/lib/components/text/text.component.d.ts +0 -41
- package/lib/directives/border-radius.directive.d.ts +0 -12
- package/lib/directives/control.directive.d.ts +0 -18
- package/lib/directives/index.d.ts +0 -3
- package/lib/directives/item.directive.d.ts +0 -36
- package/lib/models/index.d.ts +0 -6
- package/lib/models/is-item.function.d.ts +0 -2
- package/lib/models/is-items.function.d.ts +0 -2
- package/lib/models/is-number.function.d.ts +0 -1
- package/lib/models/is-primitive.function.d.ts +0 -2
- package/lib/models/item.interface.d.ts +0 -6
- package/lib/models/primitive.type.d.ts +0 -1
- package/public-api.d.ts +0 -4
|
@@ -0,0 +1,179 @@
|
|
|
1
|
+
@use "sass:map";
|
|
2
|
+
@use "sass:list";
|
|
3
|
+
@use "variables.scss";
|
|
4
|
+
|
|
5
|
+
.position-relative {
|
|
6
|
+
position: relative;
|
|
7
|
+
}
|
|
8
|
+
|
|
9
|
+
.d-flex {
|
|
10
|
+
display: flex;
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
.flex-row {
|
|
14
|
+
flex-direction: row;
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
.flex-column {
|
|
18
|
+
flex-direction: column;
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
.align-items-start {
|
|
22
|
+
align-items: flex-start;
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
.align-items-end {
|
|
26
|
+
align-items: flex-end;
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
.align-items-center {
|
|
30
|
+
align-items: center;
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
.align-items-baseline {
|
|
34
|
+
align-items: baseline;
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
.align-items-stretch {
|
|
38
|
+
align-items: stretch;
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
.justify-content-start {
|
|
42
|
+
justify-content: flex-start;
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
.justify-content-end {
|
|
46
|
+
justify-content: flex-end;
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
.justify-content-center {
|
|
50
|
+
justify-content: center;
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
.justify-content-between {
|
|
54
|
+
justify-content: space-between;
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
.justify-content-around {
|
|
58
|
+
justify-content: space-around;
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
.justify-content-evenly {
|
|
62
|
+
justify-content: space-evenly;
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
.flex-wrap {
|
|
66
|
+
flex-wrap: wrap;
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
@for $i from 1 through 4 {
|
|
70
|
+
.flex-#{$i} {
|
|
71
|
+
flex: $i;
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
|
|
75
|
+
@each $key, $value in variables.$sizes {
|
|
76
|
+
$i: list.index(variables.$sizes, $key $value);
|
|
77
|
+
|
|
78
|
+
.gap-#{$i} {
|
|
79
|
+
gap: $value;
|
|
80
|
+
}
|
|
81
|
+
|
|
82
|
+
.m-#{$i} {
|
|
83
|
+
margin: $value;
|
|
84
|
+
}
|
|
85
|
+
|
|
86
|
+
.p-#{$i} {
|
|
87
|
+
padding: $value;
|
|
88
|
+
}
|
|
89
|
+
|
|
90
|
+
.mx-#{$i} {
|
|
91
|
+
margin-right: $value;
|
|
92
|
+
margin-left: $value;
|
|
93
|
+
}
|
|
94
|
+
|
|
95
|
+
.my-#{$i} {
|
|
96
|
+
margin-top: $value;
|
|
97
|
+
margin-bottom: $value;
|
|
98
|
+
}
|
|
99
|
+
|
|
100
|
+
.px-#{$i} {
|
|
101
|
+
padding-right: $value;
|
|
102
|
+
padding-left: $value;
|
|
103
|
+
}
|
|
104
|
+
|
|
105
|
+
.py-#{$i} {
|
|
106
|
+
padding-top: $value;
|
|
107
|
+
padding-bottom: $value;
|
|
108
|
+
}
|
|
109
|
+
|
|
110
|
+
.ms-#{$i} {
|
|
111
|
+
margin-right: $value;
|
|
112
|
+
}
|
|
113
|
+
|
|
114
|
+
.me-#{$i} {
|
|
115
|
+
margin-left: $value;
|
|
116
|
+
}
|
|
117
|
+
|
|
118
|
+
.mt-#{$i} {
|
|
119
|
+
margin-top: $value;
|
|
120
|
+
}
|
|
121
|
+
|
|
122
|
+
.mb-#{$i} {
|
|
123
|
+
margin-bottom: $value;
|
|
124
|
+
}
|
|
125
|
+
|
|
126
|
+
.ps-#{$i} {
|
|
127
|
+
padding-right: $value;
|
|
128
|
+
}
|
|
129
|
+
|
|
130
|
+
.pe-#{$i} {
|
|
131
|
+
padding-left: $value;
|
|
132
|
+
}
|
|
133
|
+
|
|
134
|
+
.pt-#{$i} {
|
|
135
|
+
padding-top: $value;
|
|
136
|
+
}
|
|
137
|
+
|
|
138
|
+
.pb-#{$i} {
|
|
139
|
+
padding-bottom: $value;
|
|
140
|
+
}
|
|
141
|
+
}
|
|
142
|
+
|
|
143
|
+
.border {
|
|
144
|
+
border: 1px solid currentColor;
|
|
145
|
+
}
|
|
146
|
+
|
|
147
|
+
.br-start {
|
|
148
|
+
border-top-left-radius: map.get(variables.$sizes, "md");
|
|
149
|
+
border-bottom-left-radius: map.get(variables.$sizes, "md");
|
|
150
|
+
}
|
|
151
|
+
|
|
152
|
+
.br-end {
|
|
153
|
+
border-top-right-radius: map.get(variables.$sizes, "md");
|
|
154
|
+
border-bottom-right-radius: map.get(variables.$sizes, "md");
|
|
155
|
+
}
|
|
156
|
+
|
|
157
|
+
.white-space-nowrap {
|
|
158
|
+
white-space: nowrap;
|
|
159
|
+
}
|
|
160
|
+
|
|
161
|
+
.text-end {
|
|
162
|
+
text-align: right;
|
|
163
|
+
}
|
|
164
|
+
|
|
165
|
+
.text-start {
|
|
166
|
+
text-align: left;
|
|
167
|
+
}
|
|
168
|
+
|
|
169
|
+
.text-center {
|
|
170
|
+
text-align: center;
|
|
171
|
+
}
|
|
172
|
+
|
|
173
|
+
.overflow-auto {
|
|
174
|
+
overflow: auto;
|
|
175
|
+
}
|
|
176
|
+
|
|
177
|
+
.overflow-hidden {
|
|
178
|
+
overflow: hidden;
|
|
179
|
+
}
|
package/src/lib/styles.scss
CHANGED
|
@@ -1,28 +1,28 @@
|
|
|
1
|
-
@use "sass:map";
|
|
2
|
-
@use "
|
|
3
|
-
@use "
|
|
4
|
-
|
|
5
|
-
label {
|
|
6
|
-
display: block;
|
|
7
|
-
padding-bottom: map.get(variables.$sizes, "md");
|
|
8
|
-
font-weight: bold;
|
|
9
|
-
|
|
10
|
-
&:empty {
|
|
11
|
-
display: none;
|
|
12
|
-
}
|
|
13
|
-
|
|
14
|
-
&.required:after {
|
|
15
|
-
content: "*";
|
|
16
|
-
}
|
|
17
|
-
}
|
|
18
|
-
|
|
19
|
-
ul {
|
|
20
|
-
list-style: none;
|
|
21
|
-
// color: red;
|
|
22
|
-
margin: 0;
|
|
23
|
-
padding: 0;
|
|
24
|
-
|
|
25
|
-
// >li {
|
|
26
|
-
// padding-top: map.get($sizes, "sm");
|
|
27
|
-
// }
|
|
28
|
-
}
|
|
1
|
+
@use "sass:map";
|
|
2
|
+
@use "./scss/all.scss";
|
|
3
|
+
@use "./scss/variables.scss" as variables;
|
|
4
|
+
|
|
5
|
+
label {
|
|
6
|
+
display: block;
|
|
7
|
+
padding-bottom: map.get(variables.$sizes, "md");
|
|
8
|
+
font-weight: bold;
|
|
9
|
+
|
|
10
|
+
&:empty {
|
|
11
|
+
display: none;
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
&.required:after {
|
|
15
|
+
content: "*";
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
ul {
|
|
20
|
+
list-style: none;
|
|
21
|
+
// color: red;
|
|
22
|
+
margin: 0;
|
|
23
|
+
padding: 0;
|
|
24
|
+
|
|
25
|
+
// >li {
|
|
26
|
+
// padding-top: map.get($sizes, "sm");
|
|
27
|
+
// }
|
|
28
|
+
}
|
|
@@ -0,0 +1,243 @@
|
|
|
1
|
+
import * as i9 from '@joster-dev/icon';
|
|
2
|
+
export { IconComponent, IconStackComponent, icon, iconTypes } from '@joster-dev/icon';
|
|
3
|
+
import * as _angular_core from '@angular/core';
|
|
4
|
+
import { SimpleChanges, OnDestroy, ElementRef } from '@angular/core';
|
|
5
|
+
import { ControlValueAccessor, NgControl } from '@angular/forms';
|
|
6
|
+
import { Subscription, Subject } from 'rxjs';
|
|
7
|
+
|
|
8
|
+
type primitive = boolean | number | string;
|
|
9
|
+
|
|
10
|
+
interface Item {
|
|
11
|
+
key: primitive;
|
|
12
|
+
value: string;
|
|
13
|
+
[x: string]: unknown;
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
declare function isItem(item: Item): item is Item;
|
|
17
|
+
|
|
18
|
+
declare function isItems(value: Item[]): value is Item[];
|
|
19
|
+
|
|
20
|
+
declare function isNumber(value: unknown): value is number;
|
|
21
|
+
|
|
22
|
+
declare function isPrimitive(value: unknown): value is primitive;
|
|
23
|
+
|
|
24
|
+
declare class ReadonlyComponent {
|
|
25
|
+
model: _angular_core.InputSignal<primitive | undefined>;
|
|
26
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<ReadonlyComponent, never>;
|
|
27
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<ReadonlyComponent, "jo-readonly", never, { "model": { "alias": "model"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, never>;
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
declare class BorderRadiusDirective {
|
|
31
|
+
borderRadiusRight: _angular_core.InputSignalWithTransform<boolean, unknown>;
|
|
32
|
+
borderRadiusLeft: _angular_core.InputSignalWithTransform<boolean, unknown>;
|
|
33
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<BorderRadiusDirective, never>;
|
|
34
|
+
static ɵdir: _angular_core.ɵɵDirectiveDeclaration<BorderRadiusDirective, "[joBorderRadius]", never, { "borderRadiusRight": { "alias": "borderRadiusRight"; "required": false; "isSignal": true; }; "borderRadiusLeft": { "alias": "borderRadiusLeft"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
declare class BusyDirective {
|
|
38
|
+
private element;
|
|
39
|
+
private viewContainerRef;
|
|
40
|
+
private renderer;
|
|
41
|
+
asyncEvents?: Subscription | Subscription[] | Promise<any> | Promise<any>[];
|
|
42
|
+
host: HTMLElement;
|
|
43
|
+
insertedNode?: Node;
|
|
44
|
+
endSubscription$: Subject<void>;
|
|
45
|
+
busySubscription?: Subscription;
|
|
46
|
+
ngOnChanges(changes: SimpleChanges): void;
|
|
47
|
+
ngOnDestroy(): void;
|
|
48
|
+
private addSpinner;
|
|
49
|
+
private removeSpinner;
|
|
50
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<BusyDirective, never>;
|
|
51
|
+
static ɵdir: _angular_core.ɵɵDirectiveDeclaration<BusyDirective, "[joBusy]", never, { "asyncEvents": { "alias": "joBusy"; "required": false; }; }, {}, never, never, true, never>;
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
declare class ControlDirective extends BorderRadiusDirective {
|
|
55
|
+
required: _angular_core.InputSignalWithTransform<boolean, unknown>;
|
|
56
|
+
isDisabled: _angular_core.WritableSignal<boolean>;
|
|
57
|
+
onTouched(): void;
|
|
58
|
+
registerOnTouched(fn: () => void): void;
|
|
59
|
+
setDisabledState(isDisabled: boolean): void;
|
|
60
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<ControlDirective, never>;
|
|
61
|
+
static ɵdir: _angular_core.ɵɵDirectiveDeclaration<ControlDirective, "[joControl]", never, { "required": { "alias": "required"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
declare class ItemDirective extends ControlDirective implements ControlValueAccessor {
|
|
65
|
+
ngControl: NgControl;
|
|
66
|
+
items: _angular_core.InputSignalWithTransform<Item[], {
|
|
67
|
+
[key: string]: unknown;
|
|
68
|
+
key: boolean | number | string;
|
|
69
|
+
value: string;
|
|
70
|
+
}[]>;
|
|
71
|
+
limit: _angular_core.InputSignalWithTransform<number, number>;
|
|
72
|
+
isMultiple: _angular_core.InputSignalWithTransform<boolean, unknown>;
|
|
73
|
+
model: _angular_core.WritableSignal<primitive[]>;
|
|
74
|
+
constructor();
|
|
75
|
+
protected setModel(value: primitive[]): void;
|
|
76
|
+
onChange(_value: primitive[] | primitive | null): void;
|
|
77
|
+
registerOnChange(fn: () => void): void;
|
|
78
|
+
writeValue(value: primitive[] | primitive | null): void;
|
|
79
|
+
private invalidValidator;
|
|
80
|
+
private limitValidator;
|
|
81
|
+
private validate;
|
|
82
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<ItemDirective, never>;
|
|
83
|
+
static ɵdir: _angular_core.ɵɵDirectiveDeclaration<ItemDirective, "[joItem]", never, { "items": { "alias": "items"; "required": false; "isSignal": true; }; "limit": { "alias": "limit"; "required": false; "isSignal": true; }; "isMultiple": { "alias": "isMultiple"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
84
|
+
}
|
|
85
|
+
|
|
86
|
+
declare class SizeDirective implements OnDestroy {
|
|
87
|
+
get size(): any;
|
|
88
|
+
set size(value: any);
|
|
89
|
+
_size: string;
|
|
90
|
+
sizeChangesSubject: Subject<void>;
|
|
91
|
+
ngOnDestroy(): void;
|
|
92
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<SizeDirective, never>;
|
|
93
|
+
static ɵdir: _angular_core.ɵɵDirectiveDeclaration<SizeDirective, "[size]", never, { "size": { "alias": "size"; "required": false; }; }, {}, never, never, true, never>;
|
|
94
|
+
}
|
|
95
|
+
|
|
96
|
+
declare class ChoiceComponent extends ItemDirective implements ControlValueAccessor {
|
|
97
|
+
isColumn: _angular_core.InputSignalWithTransform<boolean, unknown>;
|
|
98
|
+
id: string;
|
|
99
|
+
onClick(item: Item): void;
|
|
100
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<ChoiceComponent, never>;
|
|
101
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<ChoiceComponent, "jo-choice", never, { "isColumn": { "alias": "isColumn"; "required": false; "isSignal": true; }; }, {}, never, ["*", "[rightAligned]"], true, never>;
|
|
102
|
+
}
|
|
103
|
+
|
|
104
|
+
declare class ColorComponent extends ControlDirective implements ControlValueAccessor {
|
|
105
|
+
ngControl: NgControl;
|
|
106
|
+
private partialHex;
|
|
107
|
+
fullHex: RegExp;
|
|
108
|
+
model: _angular_core.WritableSignal<string | null>;
|
|
109
|
+
id: string;
|
|
110
|
+
constructor();
|
|
111
|
+
onModelChange(value: string | null): void;
|
|
112
|
+
onChangeColor(event: Event): void;
|
|
113
|
+
private setModel;
|
|
114
|
+
onChange(_model: string | null): void;
|
|
115
|
+
registerOnChange(fn: () => void): void;
|
|
116
|
+
onBeforeinput(e: Event): void;
|
|
117
|
+
writeValue(value: string | null): void;
|
|
118
|
+
private invalidValidator;
|
|
119
|
+
private validate;
|
|
120
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<ColorComponent, never>;
|
|
121
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<ColorComponent, "jo-color", never, {}, {}, never, ["*"], true, never>;
|
|
122
|
+
}
|
|
123
|
+
|
|
124
|
+
declare class FileComponent extends ControlDirective implements ControlValueAccessor {
|
|
125
|
+
ngControl: NgControl;
|
|
126
|
+
acceptedTypes: _angular_core.InputSignalWithTransform<string[], string[]>;
|
|
127
|
+
sizeLimitMb: _angular_core.InputSignalWithTransform<number, number>;
|
|
128
|
+
multiple: _angular_core.InputSignalWithTransform<boolean, unknown>;
|
|
129
|
+
showSize: _angular_core.InputSignalWithTransform<boolean, unknown>;
|
|
130
|
+
model: _angular_core.WritableSignal<"" | null>;
|
|
131
|
+
id: string;
|
|
132
|
+
constructor();
|
|
133
|
+
get fileNames(): string;
|
|
134
|
+
get sizeLimit(): string;
|
|
135
|
+
onFileChange(event: Event): void;
|
|
136
|
+
onFileCancel(): void;
|
|
137
|
+
onChange(_model: FileList | null): void;
|
|
138
|
+
registerOnChange(fn: () => void): void;
|
|
139
|
+
writeValue(value: unknown): void;
|
|
140
|
+
private acceptedTypesValidator;
|
|
141
|
+
private invalidValidator;
|
|
142
|
+
private sizeLimitMbValidator;
|
|
143
|
+
private validate;
|
|
144
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<FileComponent, never>;
|
|
145
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<FileComponent, "jo-file", never, { "acceptedTypes": { "alias": "acceptedTypes"; "required": false; "isSignal": true; }; "sizeLimitMb": { "alias": "sizeLimitMb"; "required": false; "isSignal": true; }; "multiple": { "alias": "multiple"; "required": false; "isSignal": true; }; "showSize": { "alias": "showSize"; "required": false; "isSignal": true; }; }, {}, never, ["*", "[rightAligned]"], true, never>;
|
|
146
|
+
}
|
|
147
|
+
|
|
148
|
+
declare class NumberComponent extends ControlDirective implements ControlValueAccessor {
|
|
149
|
+
ngControl: NgControl;
|
|
150
|
+
min: _angular_core.InputSignalWithTransform<number, string | number>;
|
|
151
|
+
max: _angular_core.InputSignalWithTransform<number, string | number>;
|
|
152
|
+
step: _angular_core.InputSignalWithTransform<number, string | number>;
|
|
153
|
+
readonly sizePadding = 5;
|
|
154
|
+
model: _angular_core.WritableSignal<number | null>;
|
|
155
|
+
mustBeInteger: _angular_core.Signal<boolean>;
|
|
156
|
+
maxDigitSize: _angular_core.Signal<number>;
|
|
157
|
+
isDisabledAdd: _angular_core.Signal<boolean>;
|
|
158
|
+
isDisabledSubtract: _angular_core.Signal<boolean>;
|
|
159
|
+
constructor();
|
|
160
|
+
onBeforeinput(e: Event): void;
|
|
161
|
+
add(e: HTMLInputElement): void;
|
|
162
|
+
subtract(e: HTMLInputElement): void;
|
|
163
|
+
onModelChange(value: number | null): void;
|
|
164
|
+
private setModel;
|
|
165
|
+
onChange(_model: number | null): void;
|
|
166
|
+
registerOnChange(fn: () => void): void;
|
|
167
|
+
writeValue(value: number | null): void;
|
|
168
|
+
private validate;
|
|
169
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<NumberComponent, never>;
|
|
170
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<NumberComponent, "jo-number", never, { "min": { "alias": "min"; "required": false; "isSignal": true; }; "max": { "alias": "max"; "required": false; "isSignal": true; }; "step": { "alias": "step"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, never>;
|
|
171
|
+
}
|
|
172
|
+
|
|
173
|
+
declare class TextComponent extends ControlDirective implements OnDestroy, ControlValueAccessor {
|
|
174
|
+
ngControl: NgControl;
|
|
175
|
+
private renderer;
|
|
176
|
+
placeholder: _angular_core.InputSignalWithTransform<string, string>;
|
|
177
|
+
minLength: _angular_core.InputSignalWithTransform<number | null, string | number | null | undefined>;
|
|
178
|
+
maxLength: _angular_core.InputSignalWithTransform<number | null, string | number | null | undefined>;
|
|
179
|
+
isSpellCheck: _angular_core.InputSignalWithTransform<boolean, unknown>;
|
|
180
|
+
isGrow: _angular_core.InputSignalWithTransform<boolean, unknown>;
|
|
181
|
+
rows: _angular_core.InputSignal<number>;
|
|
182
|
+
onBlur: _angular_core.OutputEmitterRef<FocusEvent>;
|
|
183
|
+
onFocus: _angular_core.OutputEmitterRef<FocusEvent>;
|
|
184
|
+
textareaElement: _angular_core.Signal<ElementRef<any> | undefined>;
|
|
185
|
+
textareaHiddenElement: _angular_core.Signal<ElementRef<any> | undefined>;
|
|
186
|
+
model: _angular_core.WritableSignal<string | null>;
|
|
187
|
+
id: string;
|
|
188
|
+
resizeSubject: Subject<void>;
|
|
189
|
+
constructor();
|
|
190
|
+
ngOnDestroy(): void;
|
|
191
|
+
onWindowResize(): void;
|
|
192
|
+
setTextareaHeight(): void;
|
|
193
|
+
onModelChange(value: string | null): void;
|
|
194
|
+
private setModel;
|
|
195
|
+
onChange(_model: string | null): void;
|
|
196
|
+
registerOnChange(fn: () => void): void;
|
|
197
|
+
writeValue(v: string | null): void;
|
|
198
|
+
private validate;
|
|
199
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<TextComponent, never>;
|
|
200
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<TextComponent, "jo-text", never, { "placeholder": { "alias": "placeholder"; "required": false; "isSignal": true; }; "minLength": { "alias": "minLength"; "required": false; "isSignal": true; }; "maxLength": { "alias": "maxLength"; "required": false; "isSignal": true; }; "isSpellCheck": { "alias": "isSpellCheck"; "required": false; "isSignal": true; }; "isGrow": { "alias": "isGrow"; "required": false; "isSignal": true; }; "rows": { "alias": "rows"; "required": false; "isSignal": true; }; }, { "onBlur": "onBlur"; "onFocus": "onFocus"; }, never, ["*"], true, never>;
|
|
201
|
+
}
|
|
202
|
+
|
|
203
|
+
declare class SelectComponent extends ItemDirective implements ControlValueAccessor {
|
|
204
|
+
private hostElement;
|
|
205
|
+
dropGroup: _angular_core.Signal<ElementRef<HTMLDivElement>>;
|
|
206
|
+
dropup: _angular_core.Signal<ElementRef<HTMLDialogElement>>;
|
|
207
|
+
dropdown: _angular_core.Signal<ElementRef<HTMLDialogElement>>;
|
|
208
|
+
dropHeightPx: _angular_core.InputSignalWithTransform<number, unknown>;
|
|
209
|
+
searchTerm: _angular_core.WritableSignal<string>;
|
|
210
|
+
filteredItems: _angular_core.Signal<Item[]>;
|
|
211
|
+
isDropdownCloseToBottom: boolean;
|
|
212
|
+
id: string;
|
|
213
|
+
activeItemValues: _angular_core.Signal<string>;
|
|
214
|
+
isSelectedAll: _angular_core.Signal<boolean>;
|
|
215
|
+
onGlobalClick(event: MouseEvent): void;
|
|
216
|
+
onSearchChange(value: string): void;
|
|
217
|
+
onClickGroup(): void;
|
|
218
|
+
onClick(item: Item): void;
|
|
219
|
+
onClickSelectAll(): void;
|
|
220
|
+
closeDropdown(): void;
|
|
221
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<SelectComponent, never>;
|
|
222
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<SelectComponent, "jo-select", never, { "dropHeightPx": { "alias": "dropHeightPx"; "required": false; "isSignal": true; }; }, {}, never, ["*", "[rightAligned]"], true, never>;
|
|
223
|
+
}
|
|
224
|
+
|
|
225
|
+
declare class ChaosControlModule {
|
|
226
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<ChaosControlModule, never>;
|
|
227
|
+
static ɵmod: _angular_core.ɵɵNgModuleDeclaration<ChaosControlModule, never, [typeof ReadonlyComponent, typeof ChoiceComponent, typeof ColorComponent, typeof FileComponent, typeof NumberComponent, typeof TextComponent, typeof SelectComponent, typeof BusyDirective, typeof i9.IconComponent, typeof i9.IconStackComponent], [typeof ReadonlyComponent, typeof ChoiceComponent, typeof ColorComponent, typeof FileComponent, typeof NumberComponent, typeof TextComponent, typeof SelectComponent, typeof BusyDirective, typeof i9.IconComponent, typeof i9.IconStackComponent]>;
|
|
228
|
+
static ɵinj: _angular_core.ɵɵInjectorDeclaration<ChaosControlModule>;
|
|
229
|
+
}
|
|
230
|
+
|
|
231
|
+
declare class BusyComponent {
|
|
232
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<BusyComponent, never>;
|
|
233
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<BusyComponent, "jo-busy", never, {}, {}, never, never, true, never>;
|
|
234
|
+
}
|
|
235
|
+
|
|
236
|
+
declare class ChaosControlService {
|
|
237
|
+
constructor();
|
|
238
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<ChaosControlService, never>;
|
|
239
|
+
static ɵprov: _angular_core.ɵɵInjectableDeclaration<ChaosControlService>;
|
|
240
|
+
}
|
|
241
|
+
|
|
242
|
+
export { BorderRadiusDirective, BusyComponent, BusyDirective, ChaosControlModule, ChaosControlService, ChoiceComponent, ColorComponent, ControlDirective, FileComponent, ItemDirective, NumberComponent, ReadonlyComponent, SelectComponent, SizeDirective, TextComponent, isItem, isItems, isNumber, isPrimitive };
|
|
243
|
+
export type { Item, primitive };
|
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Generated bundle index. Do not edit.
|
|
3
|
-
*/
|
|
4
|
-
export * from './public-api';
|
|
5
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiam9zdGVyLWRldi1jaGFvcy1jb250cm9sLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vcHJvamVjdHMvY2hhb3MtY29udHJvbC9zcmMvam9zdGVyLWRldi1jaGFvcy1jb250cm9sLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsY0FBYyxjQUFjLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEdlbmVyYXRlZCBidW5kbGUgaW5kZXguIERvIG5vdCBlZGl0LlxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vcHVibGljLWFwaSc7XG4iXX0=
|
|
@@ -1,67 +0,0 @@
|
|
|
1
|
-
import { CommonModule } from '@angular/common';
|
|
2
|
-
import { NgModule } from '@angular/core';
|
|
3
|
-
import { FormsModule } from '@angular/forms';
|
|
4
|
-
import { RouterModule } from '@angular/router';
|
|
5
|
-
import { IconModule } from '@joster-dev/icon';
|
|
6
|
-
import { ReadonlyComponent, ChoiceComponent, ColorComponent, FileComponent, NumberComponent, TextComponent, SelectComponent, } from './components';
|
|
7
|
-
import { BorderRadiusDirective, ControlDirective, ItemDirective, } from './directives';
|
|
8
|
-
import * as i0 from "@angular/core";
|
|
9
|
-
export class ChaosControlModule {
|
|
10
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.5", ngImport: i0, type: ChaosControlModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
11
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.0.5", ngImport: i0, type: ChaosControlModule, declarations: [ReadonlyComponent,
|
|
12
|
-
ChoiceComponent,
|
|
13
|
-
ColorComponent,
|
|
14
|
-
FileComponent,
|
|
15
|
-
NumberComponent,
|
|
16
|
-
TextComponent,
|
|
17
|
-
ControlDirective,
|
|
18
|
-
ItemDirective,
|
|
19
|
-
SelectComponent,
|
|
20
|
-
BorderRadiusDirective], imports: [CommonModule,
|
|
21
|
-
FormsModule,
|
|
22
|
-
IconModule,
|
|
23
|
-
RouterModule], exports: [ReadonlyComponent,
|
|
24
|
-
ChoiceComponent,
|
|
25
|
-
ColorComponent,
|
|
26
|
-
FileComponent,
|
|
27
|
-
NumberComponent,
|
|
28
|
-
TextComponent,
|
|
29
|
-
SelectComponent] }); }
|
|
30
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.0.5", ngImport: i0, type: ChaosControlModule, imports: [CommonModule,
|
|
31
|
-
FormsModule,
|
|
32
|
-
IconModule,
|
|
33
|
-
RouterModule] }); }
|
|
34
|
-
}
|
|
35
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.5", ngImport: i0, type: ChaosControlModule, decorators: [{
|
|
36
|
-
type: NgModule,
|
|
37
|
-
args: [{
|
|
38
|
-
declarations: [
|
|
39
|
-
ReadonlyComponent,
|
|
40
|
-
ChoiceComponent,
|
|
41
|
-
ColorComponent,
|
|
42
|
-
FileComponent,
|
|
43
|
-
NumberComponent,
|
|
44
|
-
TextComponent,
|
|
45
|
-
ControlDirective,
|
|
46
|
-
ItemDirective,
|
|
47
|
-
SelectComponent,
|
|
48
|
-
BorderRadiusDirective,
|
|
49
|
-
],
|
|
50
|
-
imports: [
|
|
51
|
-
CommonModule,
|
|
52
|
-
FormsModule,
|
|
53
|
-
IconModule,
|
|
54
|
-
RouterModule,
|
|
55
|
-
],
|
|
56
|
-
exports: [
|
|
57
|
-
ReadonlyComponent,
|
|
58
|
-
ChoiceComponent,
|
|
59
|
-
ColorComponent,
|
|
60
|
-
FileComponent,
|
|
61
|
-
NumberComponent,
|
|
62
|
-
TextComponent,
|
|
63
|
-
SelectComponent,
|
|
64
|
-
]
|
|
65
|
-
}]
|
|
66
|
-
}] });
|
|
67
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hhb3MtY29udHJvbC5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9jaGFvcy1jb250cm9sL3NyYy9saWIvY2hhb3MtY29udHJvbC5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzdDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFFOUMsT0FBTyxFQUNMLGlCQUFpQixFQUNqQixlQUFlLEVBQ2YsY0FBYyxFQUNkLGFBQWEsRUFDYixlQUFlLEVBQ2YsYUFBYSxFQUNiLGVBQWUsR0FDaEIsTUFBTSxjQUFjLENBQUM7QUFDdEIsT0FBTyxFQUNMLHFCQUFxQixFQUNyQixnQkFBZ0IsRUFDaEIsYUFBYSxHQUNkLE1BQU0sY0FBYyxDQUFDOztBQStCdEIsTUFBTSxPQUFPLGtCQUFrQjs4R0FBbEIsa0JBQWtCOytHQUFsQixrQkFBa0IsaUJBM0IzQixpQkFBaUI7WUFDakIsZUFBZTtZQUNmLGNBQWM7WUFDZCxhQUFhO1lBQ2IsZUFBZTtZQUNmLGFBQWE7WUFDYixnQkFBZ0I7WUFDaEIsYUFBYTtZQUNiLGVBQWU7WUFDZixxQkFBcUIsYUFHckIsWUFBWTtZQUNaLFdBQVc7WUFDWCxVQUFVO1lBQ1YsWUFBWSxhQUdaLGlCQUFpQjtZQUNqQixlQUFlO1lBQ2YsY0FBYztZQUNkLGFBQWE7WUFDYixlQUFlO1lBQ2YsYUFBYTtZQUNiLGVBQWU7K0dBR04sa0JBQWtCLFlBZjNCLFlBQVk7WUFDWixXQUFXO1lBQ1gsVUFBVTtZQUNWLFlBQVk7OzJGQVlILGtCQUFrQjtrQkE3QjlCLFFBQVE7bUJBQUM7b0JBQ1IsWUFBWSxFQUFFO3dCQUNaLGlCQUFpQjt3QkFDakIsZUFBZTt3QkFDZixjQUFjO3dCQUNkLGFBQWE7d0JBQ2IsZUFBZTt3QkFDZixhQUFhO3dCQUNiLGdCQUFnQjt3QkFDaEIsYUFBYTt3QkFDYixlQUFlO3dCQUNmLHFCQUFxQjtxQkFDdEI7b0JBQ0QsT0FBTyxFQUFFO3dCQUNQLFlBQVk7d0JBQ1osV0FBVzt3QkFDWCxVQUFVO3dCQUNWLFlBQVk7cUJBQ2I7b0JBQ0QsT0FBTyxFQUFFO3dCQUNQLGlCQUFpQjt3QkFDakIsZUFBZTt3QkFDZixjQUFjO3dCQUNkLGFBQWE7d0JBQ2IsZUFBZTt3QkFDZixhQUFhO3dCQUNiLGVBQWU7cUJBQ2hCO2lCQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7IFJvdXRlck1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XHJcbmltcG9ydCB7IEljb25Nb2R1bGUgfSBmcm9tICdAam9zdGVyLWRldi9pY29uJztcclxuXHJcbmltcG9ydCB7XHJcbiAgUmVhZG9ubHlDb21wb25lbnQsXHJcbiAgQ2hvaWNlQ29tcG9uZW50LFxyXG4gIENvbG9yQ29tcG9uZW50LFxyXG4gIEZpbGVDb21wb25lbnQsXHJcbiAgTnVtYmVyQ29tcG9uZW50LFxyXG4gIFRleHRDb21wb25lbnQsXHJcbiAgU2VsZWN0Q29tcG9uZW50LFxyXG59IGZyb20gJy4vY29tcG9uZW50cyc7XHJcbmltcG9ydCB7XHJcbiAgQm9yZGVyUmFkaXVzRGlyZWN0aXZlLFxyXG4gIENvbnRyb2xEaXJlY3RpdmUsXHJcbiAgSXRlbURpcmVjdGl2ZSxcclxufSBmcm9tICcuL2RpcmVjdGl2ZXMnO1xyXG5cclxuQE5nTW9kdWxlKHtcclxuICBkZWNsYXJhdGlvbnM6IFtcclxuICAgIFJlYWRvbmx5Q29tcG9uZW50LFxyXG4gICAgQ2hvaWNlQ29tcG9uZW50LFxyXG4gICAgQ29sb3JDb21wb25lbnQsXHJcbiAgICBGaWxlQ29tcG9uZW50LFxyXG4gICAgTnVtYmVyQ29tcG9uZW50LFxyXG4gICAgVGV4dENvbXBvbmVudCxcclxuICAgIENvbnRyb2xEaXJlY3RpdmUsXHJcbiAgICBJdGVtRGlyZWN0aXZlLFxyXG4gICAgU2VsZWN0Q29tcG9uZW50LFxyXG4gICAgQm9yZGVyUmFkaXVzRGlyZWN0aXZlLFxyXG4gIF0sXHJcbiAgaW1wb3J0czogW1xyXG4gICAgQ29tbW9uTW9kdWxlLFxyXG4gICAgRm9ybXNNb2R1bGUsXHJcbiAgICBJY29uTW9kdWxlLFxyXG4gICAgUm91dGVyTW9kdWxlLFxyXG4gIF0sXHJcbiAgZXhwb3J0czogW1xyXG4gICAgUmVhZG9ubHlDb21wb25lbnQsXHJcbiAgICBDaG9pY2VDb21wb25lbnQsXHJcbiAgICBDb2xvckNvbXBvbmVudCxcclxuICAgIEZpbGVDb21wb25lbnQsXHJcbiAgICBOdW1iZXJDb21wb25lbnQsXHJcbiAgICBUZXh0Q29tcG9uZW50LFxyXG4gICAgU2VsZWN0Q29tcG9uZW50LFxyXG4gIF1cclxufSlcclxuZXhwb3J0IGNsYXNzIENoYW9zQ29udHJvbE1vZHVsZSB7IH1cclxuIl19
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
import { Injectable } from '@angular/core';
|
|
2
|
-
import * as i0 from "@angular/core";
|
|
3
|
-
export class ChaosControlService {
|
|
4
|
-
constructor() { }
|
|
5
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.5", ngImport: i0, type: ChaosControlService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
6
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.0.5", ngImport: i0, type: ChaosControlService, providedIn: 'root' }); }
|
|
7
|
-
}
|
|
8
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.5", ngImport: i0, type: ChaosControlService, decorators: [{
|
|
9
|
-
type: Injectable,
|
|
10
|
-
args: [{
|
|
11
|
-
providedIn: 'root'
|
|
12
|
-
}]
|
|
13
|
-
}], ctorParameters: () => [] });
|
|
14
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hhb3MtY29udHJvbC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvY2hhb3MtY29udHJvbC9zcmMvbGliL2NoYW9zLWNvbnRyb2wuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQUszQyxNQUFNLE9BQU8sbUJBQW1CO0lBRTlCLGdCQUFnQixDQUFDOzhHQUZOLG1CQUFtQjtrSEFBbkIsbUJBQW1CLGNBRmxCLE1BQU07OzJGQUVQLG1CQUFtQjtrQkFIL0IsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcblxyXG5ASW5qZWN0YWJsZSh7XHJcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBDaGFvc0NvbnRyb2xTZXJ2aWNlIHtcclxuXHJcbiAgY29uc3RydWN0b3IoKSB7IH1cclxufVxyXG4iXX0=
|