@3dsource/source-ui-native 1.0.17 → 1.0.18

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.
Files changed (56) hide show
  1. package/README.md +69 -16
  2. package/fesm2022/3dsource-source-ui-native.mjs +39 -39
  3. package/fesm2022/3dsource-source-ui-native.mjs.map +1 -1
  4. package/index.d.ts +294 -5
  5. package/package.json +1 -1
  6. package/styles/elements/_src-button.scss +2 -0
  7. package/styles/elements/_src-form.scss +2 -0
  8. package/styles/elements/_src-modal.scss +0 -20
  9. package/styles/elements/_src-popover.scss +60 -0
  10. package/styles/elements/elements.scss +1 -0
  11. package/lib/components/source-badge/components/source-badge.component.d.ts +0 -16
  12. package/lib/components/source-badge/constants/index.d.ts +0 -2
  13. package/lib/components/source-badge/constants/sourceBadgeSize.d.ts +0 -6
  14. package/lib/components/source-badge/constants/sourceBadgeType.d.ts +0 -9
  15. package/lib/components/source-badge/index.d.ts +0 -2
  16. package/lib/components/source-banner/components/source-banner.component.d.ts +0 -9
  17. package/lib/components/source-banner/constants/sourceBannerType.d.ts +0 -8
  18. package/lib/components/source-banner/index.d.ts +0 -2
  19. package/lib/components/source-button/components/source-button.component.d.ts +0 -27
  20. package/lib/components/source-button/constants/index.d.ts +0 -5
  21. package/lib/components/source-button/constants/sourceButtonAppearance.d.ts +0 -5
  22. package/lib/components/source-button/constants/sourceButtonColorScheme.d.ts +0 -6
  23. package/lib/components/source-button/constants/sourceButtonDefaultConfig.d.ts +0 -2
  24. package/lib/components/source-button/constants/sourceButtonSize.d.ts +0 -7
  25. package/lib/components/source-button/constants/sourceButtonType.d.ts +0 -6
  26. package/lib/components/source-button/index.d.ts +0 -3
  27. package/lib/components/source-button/interfaces/index.d.ts +0 -1
  28. package/lib/components/source-button/interfaces/sourceButton.interface.d.ts +0 -16
  29. package/lib/components/source-copyright/components/source-copyright.component.d.ts +0 -7
  30. package/lib/components/source-copyright/index.d.ts +0 -1
  31. package/lib/components/source-divider/components/source-divider.component.d.ts +0 -7
  32. package/lib/components/source-divider/index.d.ts +0 -1
  33. package/lib/components/source-hint/components/source-hint.component.d.ts +0 -7
  34. package/lib/components/source-hint/index.d.ts +0 -1
  35. package/lib/components/source-icon-button/components/source-icon-button.component.d.ts +0 -17
  36. package/lib/components/source-icon-button/constants/index.d.ts +0 -3
  37. package/lib/components/source-icon-button/constants/sourceIconButtonShape.d.ts +0 -5
  38. package/lib/components/source-icon-button/constants/sourceIconButtonSize.d.ts +0 -8
  39. package/lib/components/source-icon-button/constants/sourceIconButtonType.d.ts +0 -6
  40. package/lib/components/source-icon-button/index.d.ts +0 -2
  41. package/lib/components/source-loading/components/source-loading.component.d.ts +0 -18
  42. package/lib/components/source-loading/constants/sourceLoadingLineCap.d.ts +0 -6
  43. package/lib/components/source-loading/index.d.ts +0 -1
  44. package/lib/components/source-logo-loading/components/source-logo-loading.component.d.ts +0 -8
  45. package/lib/components/source-logo-loading/index.d.ts +0 -1
  46. package/lib/components/source-modal-element/components/source-modal-element.component.d.ts +0 -13
  47. package/lib/components/source-modal-element/components/source-overlay-container.component.d.ts +0 -9
  48. package/lib/components/source-modal-element/constants/modalData.token.d.ts +0 -3
  49. package/lib/components/source-modal-element/constants/sourceModalSize.const.d.ts +0 -5
  50. package/lib/components/source-modal-element/index.d.ts +0 -5
  51. package/lib/components/source-modal-element/interfaces/index.d.ts +0 -1
  52. package/lib/components/source-modal-element/interfaces/sourceModalElementData.interface.d.ts +0 -18
  53. package/lib/components/source-modal-element/services/sourceModalElement.service.d.ts +0 -11
  54. package/lib/components/source-slider/components/source-slider.component.d.ts +0 -25
  55. package/lib/components/source-slider/index.d.ts +0 -1
  56. package/public-api.d.ts +0 -11
package/index.d.ts CHANGED
@@ -1,5 +1,294 @@
1
- /**
2
- * Generated bundle index. Do not edit.
3
- */
4
- /// <amd-module name="@3dsource/source-ui-native" />
5
- export * from './public-api';
1
+ import * as _angular_core from '@angular/core';
2
+ import { ElementRef, ViewContainerRef } from '@angular/core';
3
+ import * as _3dsource_source_ui_native from '@3dsource/source-ui-native';
4
+
5
+ declare const SourceBadgeType: {
6
+ readonly NEUTRAL: "neutral";
7
+ readonly INFORMATIONAL: "informational";
8
+ readonly SUCCESS: "success";
9
+ readonly WARNING: "warning";
10
+ readonly ATTENTION: "attention";
11
+ readonly CRITICAL: "critical";
12
+ };
13
+ type SourceBadgeTypeKeys = (typeof SourceBadgeType)[keyof typeof SourceBadgeType];
14
+
15
+ declare const SourceBadgeSize: {
16
+ readonly SMALL: "small";
17
+ readonly DEFAULT: "default";
18
+ readonly LARGE: "large";
19
+ };
20
+ type SourceBadgeSizeKeys = (typeof SourceBadgeSize)[keyof typeof SourceBadgeSize];
21
+
22
+ declare class SourceBadgeComponent {
23
+ number: _angular_core.InputSignal<number>;
24
+ backgroundColor: _angular_core.InputSignal<string>;
25
+ type: _angular_core.InputSignal<SourceBadgeTypeKeys | undefined>;
26
+ size: _angular_core.InputSignal<SourceBadgeSizeKeys>;
27
+ borderColor: _angular_core.InputSignal<string>;
28
+ borderWidth: _angular_core.InputSignal<string>;
29
+ textColor: _angular_core.InputSignal<string>;
30
+ customClass: _angular_core.InputSignal<string | string[] | undefined>;
31
+ testID: _angular_core.InputSignal<string>;
32
+ classes: _angular_core.Signal<(string | string[])[]>;
33
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<SourceBadgeComponent, never>;
34
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<SourceBadgeComponent, "src-badge", never, { "number": { "alias": "number"; "required": false; "isSignal": true; }; "backgroundColor": { "alias": "backgroundColor"; "required": false; "isSignal": true; }; "type": { "alias": "type"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "borderColor": { "alias": "borderColor"; "required": false; "isSignal": true; }; "borderWidth": { "alias": "borderWidth"; "required": false; "isSignal": true; }; "textColor": { "alias": "textColor"; "required": false; "isSignal": true; }; "customClass": { "alias": "customClass"; "required": false; "isSignal": true; }; "testID": { "alias": "data-testid"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, never>;
35
+ }
36
+
37
+ declare const SourceBannerType: {
38
+ readonly DEFAULT: "default";
39
+ readonly INFO: "info";
40
+ readonly SUCCESS: "success";
41
+ readonly WARNING: "warning";
42
+ readonly CRITICAL: "critical";
43
+ };
44
+ type SourceBannerTypeKeys = (typeof SourceBannerType)[keyof typeof SourceBannerType];
45
+
46
+ declare class SourceBannerComponent {
47
+ type: _angular_core.InputSignal<SourceBannerTypeKeys>;
48
+ isCompact: _angular_core.InputSignal<boolean>;
49
+ testID: _angular_core.InputSignal<string>;
50
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<SourceBannerComponent, never>;
51
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<SourceBannerComponent, "src-banner", never, { "type": { "alias": "type"; "required": false; "isSignal": true; }; "isCompact": { "alias": "isCompact"; "required": false; "isSignal": true; }; "testID": { "alias": "data-testid"; "required": false; "isSignal": true; }; }, {}, never, ["[srcIconPrefix]", "*", "[srcIconPostfix]"], true, never>;
52
+ }
53
+
54
+ declare const SourceButtonColorScheme: {
55
+ readonly PRIMARY: "primary";
56
+ readonly SECONDARY: "secondary";
57
+ readonly DESTRUCTIVE: "destructive";
58
+ };
59
+ type SourceButtonColorSchemeKeys = (typeof SourceButtonColorScheme)[keyof typeof SourceButtonColorScheme];
60
+
61
+ declare const SourceButtonSize: {
62
+ readonly SLIM: "slim";
63
+ readonly SMALL: "slim";
64
+ readonly MEDIUM: "medium";
65
+ readonly LARGE: "large";
66
+ };
67
+ type SourceButtonSizeKeys = (typeof SourceButtonSize)[keyof typeof SourceButtonSize];
68
+
69
+ declare const SourceButtonType: {
70
+ readonly BUTTON: "button";
71
+ readonly SUBMIT: "submit";
72
+ readonly RESET: "reset";
73
+ };
74
+ type SourceButtonTypeKeys = (typeof SourceButtonType)[keyof typeof SourceButtonType];
75
+
76
+ declare const SourceButtonAppearance: {
77
+ readonly PLAIN: "plain";
78
+ readonly DEFAULT: "default";
79
+ };
80
+ type SourceButtonAppearanceKeys = (typeof SourceButtonAppearance)[keyof typeof SourceButtonAppearance];
81
+
82
+ declare const sourceButtonDefaultConfig: SourceButton;
83
+
84
+ interface SourceButton {
85
+ type: SourceButtonTypeKeys;
86
+ appearance: SourceButtonAppearanceKeys;
87
+ colorScheme: SourceButtonColorSchemeKeys;
88
+ size: SourceButtonSizeKeys;
89
+ customClass: string | string[];
90
+ hasDisclosure: boolean;
91
+ isFullWidth: boolean;
92
+ iconButton: boolean;
93
+ isPressed: boolean;
94
+ isDisabled: boolean;
95
+ isLoading: boolean;
96
+ formID?: string;
97
+ testID?: string;
98
+ }
99
+
100
+ declare class SourceButtonComponent {
101
+ type: _angular_core.InputSignal<SourceButtonTypeKeys>;
102
+ appearance: _angular_core.InputSignal<SourceButtonAppearanceKeys>;
103
+ colorScheme: _angular_core.InputSignal<SourceButtonColorSchemeKeys>;
104
+ size: _angular_core.InputSignal<SourceButtonSizeKeys>;
105
+ customClass: _angular_core.InputSignal<string | string[]>;
106
+ hasDisclosure: _angular_core.InputSignal<boolean>;
107
+ isFullWidth: _angular_core.InputSignal<boolean>;
108
+ isPressed: _angular_core.InputSignal<boolean>;
109
+ isDisabled: _angular_core.InputSignal<boolean>;
110
+ isLoading: _angular_core.InputSignal<boolean>;
111
+ iconButton: _angular_core.InputSignal<boolean>;
112
+ srcButtonConfig: _angular_core.InputSignal<SourceButton | undefined>;
113
+ formID: _angular_core.InputSignal<string | undefined>;
114
+ testID: _angular_core.InputSignal<string>;
115
+ onClick: _angular_core.OutputEmitterRef<Event>;
116
+ onSubmit: _angular_core.OutputEmitterRef<Event>;
117
+ classes: _angular_core.Signal<(string | string[])[]>;
118
+ handleClick(event: Event): void;
119
+ handleSubmit(event: Event): void;
120
+ getConfig(config: Partial<SourceButton>): SourceButton;
121
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<SourceButtonComponent, never>;
122
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<SourceButtonComponent, "src-button", never, { "type": { "alias": "type"; "required": false; "isSignal": true; }; "appearance": { "alias": "appearance"; "required": false; "isSignal": true; }; "colorScheme": { "alias": "colorScheme"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "customClass": { "alias": "customClass"; "required": false; "isSignal": true; }; "hasDisclosure": { "alias": "hasDisclosure"; "required": false; "isSignal": true; }; "isFullWidth": { "alias": "isFullWidth"; "required": false; "isSignal": true; }; "isPressed": { "alias": "isPressed"; "required": false; "isSignal": true; }; "isDisabled": { "alias": "isDisabled"; "required": false; "isSignal": true; }; "isLoading": { "alias": "isLoading"; "required": false; "isSignal": true; }; "iconButton": { "alias": "iconButton"; "required": false; "isSignal": true; }; "srcButtonConfig": { "alias": "srcButtonConfig"; "required": false; "isSignal": true; }; "formID": { "alias": "formID"; "required": false; "isSignal": true; }; "testID": { "alias": "data-testid"; "required": false; "isSignal": true; }; }, { "onClick": "onClick"; "onSubmit": "onSubmit"; }, never, ["[srcIconPrefix]", "*"], true, never>;
123
+ }
124
+
125
+ declare class SourceCopyrightComponent {
126
+ linkText: _angular_core.InputSignal<string>;
127
+ isCollapsible: _angular_core.InputSignal<boolean>;
128
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<SourceCopyrightComponent, never>;
129
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<SourceCopyrightComponent, "src-copyright", never, { "linkText": { "alias": "linkText"; "required": false; "isSignal": true; }; "isCollapsible": { "alias": "isCollapsible"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
130
+ }
131
+
132
+ declare class SourceDividerComponent {
133
+ color: _angular_core.InputSignal<string>;
134
+ thickness: _angular_core.InputSignal<string>;
135
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<SourceDividerComponent, never>;
136
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<SourceDividerComponent, "src-divider", never, { "color": { "alias": "color"; "required": false; "isSignal": true; }; "thickness": { "alias": "thickness"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
137
+ }
138
+
139
+ declare class SourceHintComponent {
140
+ isError: _angular_core.InputSignal<boolean>;
141
+ isCompact: _angular_core.InputSignal<boolean>;
142
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<SourceHintComponent, never>;
143
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<SourceHintComponent, "src-hint", never, { "isError": { "alias": "isError"; "required": false; "isSignal": true; }; "isCompact": { "alias": "isCompact"; "required": false; "isSignal": true; }; }, {}, never, ["[srcIconPrefix]", "*"], true, never>;
144
+ }
145
+
146
+ declare const SourceIconButtonSize: {
147
+ readonly XSMALL: "xs";
148
+ readonly SMALL: "sm";
149
+ readonly MEDIUM: "md";
150
+ readonly LARGE: "lg";
151
+ readonly DEFAULT: "default";
152
+ };
153
+ type SourceIconButtonSizeKeys = (typeof SourceIconButtonSize)[keyof typeof SourceIconButtonSize];
154
+
155
+ declare const SourceIconButtonType: {
156
+ readonly BUTTON: "button";
157
+ readonly SUBMIT: "submit";
158
+ readonly RESET: "reset";
159
+ };
160
+ type SourceIconButtonTypeKeys = (typeof SourceIconButtonType)[keyof typeof SourceIconButtonType];
161
+
162
+ declare const SourceIconButtonShape: {
163
+ readonly SQUARE: "square";
164
+ readonly ROUND: "round";
165
+ };
166
+ type SourceIconButtonShapeKeys = (typeof SourceIconButtonShape)[keyof typeof SourceIconButtonShape];
167
+
168
+ declare class SourceIconButtonComponent {
169
+ name: _angular_core.InputSignal<unknown>;
170
+ type: _angular_core.InputSignal<SourceIconButtonTypeKeys>;
171
+ size: _angular_core.InputSignal<SourceIconButtonSizeKeys>;
172
+ shape: _angular_core.InputSignal<SourceIconButtonShapeKeys>;
173
+ counter: _angular_core.InputSignal<number | undefined>;
174
+ isActive: _angular_core.InputSignal<boolean>;
175
+ isDisabled: _angular_core.InputSignal<boolean>;
176
+ testID: _angular_core.InputSignal<string>;
177
+ onClick: _angular_core.OutputEmitterRef<Event>;
178
+ classes: _angular_core.Signal<string[]>;
179
+ handleClick(event: Event): void;
180
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<SourceIconButtonComponent, never>;
181
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<SourceIconButtonComponent, "src-icon-button", never, { "name": { "alias": "name"; "required": false; "isSignal": true; }; "type": { "alias": "type"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "shape": { "alias": "shape"; "required": false; "isSignal": true; }; "counter": { "alias": "counter"; "required": false; "isSignal": true; }; "isActive": { "alias": "isActive"; "required": false; "isSignal": true; }; "isDisabled": { "alias": "isDisabled"; "required": false; "isSignal": true; }; "testID": { "alias": "data-testid"; "required": false; "isSignal": true; }; }, { "onClick": "onClick"; }, never, ["*"], true, never>;
182
+ }
183
+
184
+ declare const SourceLoadingLineCap: {
185
+ readonly ROUND: "round";
186
+ readonly SQUARE: "square";
187
+ readonly BUTT: "butt";
188
+ };
189
+ type SourceLoadingLineCapKeys = (typeof SourceLoadingLineCap)[keyof typeof SourceLoadingLineCap];
190
+
191
+ declare class SourceLoadingComponent {
192
+ size: _angular_core.InputSignal<number>;
193
+ progress: _angular_core.InputSignal<number | null>;
194
+ lineCap: _angular_core.InputSignal<SourceLoadingLineCapKeys>;
195
+ backgroundStrokeColor: _angular_core.InputSignal<string>;
196
+ progressStrokeColor: _angular_core.InputSignal<string>;
197
+ strokeWidth: _angular_core.InputSignal<number>;
198
+ testID: _angular_core.InputSignal<string>;
199
+ classes: _angular_core.Signal<string[]>;
200
+ calculateRadius: _angular_core.Signal<number>;
201
+ circumference: _angular_core.Signal<number>;
202
+ viewBox: _angular_core.Signal<string>;
203
+ percentage: _angular_core.Signal<number>;
204
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<SourceLoadingComponent, never>;
205
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<SourceLoadingComponent, "src-loading", never, { "size": { "alias": "size"; "required": false; "isSignal": true; }; "progress": { "alias": "progress"; "required": false; "isSignal": true; }; "lineCap": { "alias": "lineCap"; "required": false; "isSignal": true; }; "backgroundStrokeColor": { "alias": "backgroundStrokeColor"; "required": false; "isSignal": true; }; "progressStrokeColor": { "alias": "progressStrokeColor"; "required": false; "isSignal": true; }; "strokeWidth": { "alias": "strokeWidth"; "required": false; "isSignal": true; }; "testID": { "alias": "data-testid"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
206
+ }
207
+
208
+ declare class SourceLogoLoadingComponent {
209
+ size: _angular_core.InputSignal<number>;
210
+ strokeColor: _angular_core.InputSignal<string>;
211
+ testID: _angular_core.InputSignal<string>;
212
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<SourceLogoLoadingComponent, never>;
213
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<SourceLogoLoadingComponent, "src-logo-loading", never, { "size": { "alias": "size"; "required": false; "isSignal": true; }; "strokeColor": { "alias": "strokeColor"; "required": false; "isSignal": true; }; "testID": { "alias": "data-testid"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
214
+ }
215
+
216
+ declare class SourceSliderComponent {
217
+ id: _angular_core.InputSignal<string | undefined>;
218
+ value: _angular_core.InputSignal<number>;
219
+ sliderValue: _angular_core.WritableSignal<number>;
220
+ min: _angular_core.InputSignal<number>;
221
+ max: _angular_core.InputSignal<number>;
222
+ thumbSize: _angular_core.InputSignal<number>;
223
+ trackHeight: _angular_core.InputSignal<number>;
224
+ step: _angular_core.InputSignal<number>;
225
+ showTicks: _angular_core.InputSignal<boolean>;
226
+ isDisabled: _angular_core.InputSignal<boolean>;
227
+ orientation: _angular_core.InputSignal<"horizontal" | "vertical">;
228
+ testID: _angular_core.InputSignal<string>;
229
+ onChange: _angular_core.OutputEmitterRef<number>;
230
+ onInput: _angular_core.OutputEmitterRef<number>;
231
+ tickPositions: _angular_core.Signal<string[]>;
232
+ thumbPosition: _angular_core.Signal<string>;
233
+ filledWidth: _angular_core.Signal<string>;
234
+ input(valueEvent: Event): void;
235
+ change(valueEvent: Event): void;
236
+ private getValue;
237
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<SourceSliderComponent, never>;
238
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<SourceSliderComponent, "src-slider", never, { "id": { "alias": "id"; "required": false; "isSignal": true; }; "value": { "alias": "value"; "required": true; "isSignal": true; }; "min": { "alias": "min"; "required": true; "isSignal": true; }; "max": { "alias": "max"; "required": true; "isSignal": true; }; "thumbSize": { "alias": "thumbSize"; "required": false; "isSignal": true; }; "trackHeight": { "alias": "trackHeight"; "required": false; "isSignal": true; }; "step": { "alias": "step"; "required": false; "isSignal": true; }; "showTicks": { "alias": "showTicks"; "required": false; "isSignal": true; }; "isDisabled": { "alias": "isDisabled"; "required": false; "isSignal": true; }; "orientation": { "alias": "orientation"; "required": false; "isSignal": true; }; "testID": { "alias": "data-testid"; "required": false; "isSignal": true; }; }, { "onChange": "onChange"; "onInput": "onInput"; }, never, ["[srcIconThumb]"], true, never>;
239
+ }
240
+
241
+ declare class SourceModalElementComponent {
242
+ data: _angular_core.WritableSignal<_3dsource_source_ui_native.SourceModalElementData>;
243
+ testID: _angular_core.WritableSignal<string>;
244
+ dialogEl: _angular_core.Signal<ElementRef<HTMLDialogElement> | undefined>;
245
+ closeEvent: _angular_core.OutputEmitterRef<any>;
246
+ closed: _angular_core.OutputEmitterRef<void>;
247
+ open(): void;
248
+ close(result?: any): void;
249
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<SourceModalElementComponent, never>;
250
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<SourceModalElementComponent, "src-modal-element", never, {}, { "closeEvent": "closeEvent"; "closed": "closed"; }, never, never, true, never>;
251
+ }
252
+
253
+ declare class SourceOverlayContainerComponent {
254
+ srcModalContainerRef: _angular_core.Signal<ViewContainerRef | undefined>;
255
+ private srcModalElementService;
256
+ _: _angular_core.EffectRef;
257
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<SourceOverlayContainerComponent, never>;
258
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<SourceOverlayContainerComponent, "src-overlay-container", never, {}, {}, never, never, true, never>;
259
+ }
260
+
261
+ declare const SourceModalSize: {
262
+ SMALL: string;
263
+ DEFAULT: string;
264
+ };
265
+ type SourceModalSizeKeys = (typeof SourceModalSize)[keyof typeof SourceModalSize];
266
+
267
+ interface SourceModalElementData {
268
+ headerTitle?: string;
269
+ size?: SourceModalSizeKeys;
270
+ backButton?: boolean;
271
+ closeButton?: boolean;
272
+ content?: string;
273
+ componentData?: unknown;
274
+ footerButtons?: DialogButtonsData;
275
+ testID?: string;
276
+ [key: string]: unknown;
277
+ }
278
+ interface DialogButtonData {
279
+ srcButtonClasses?: string;
280
+ label: string;
281
+ action: (...data: any) => any;
282
+ }
283
+ type DialogButtonsData = DialogButtonData[];
284
+
285
+ declare class SourceModalElementService {
286
+ private viewRef?;
287
+ register(viewRef: ViewContainerRef): void;
288
+ open(data: SourceModalElementData): _angular_core.ComponentRef<SourceModalElementComponent>;
289
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<SourceModalElementService, never>;
290
+ static ɵprov: _angular_core.ɵɵInjectableDeclaration<SourceModalElementService>;
291
+ }
292
+
293
+ export { SourceBadgeComponent, SourceBadgeSize, SourceBadgeType, SourceBannerComponent, SourceBannerType, SourceButtonAppearance, SourceButtonColorScheme, SourceButtonComponent, SourceButtonSize, SourceButtonType, SourceCopyrightComponent, SourceDividerComponent, SourceHintComponent, SourceIconButtonComponent, SourceIconButtonShape, SourceIconButtonSize, SourceIconButtonType, SourceLoadingComponent, SourceLogoLoadingComponent, SourceModalElementComponent, SourceModalElementService, SourceModalSize, SourceOverlayContainerComponent, SourceSliderComponent, sourceButtonDefaultConfig };
294
+ export type { DialogButtonData, DialogButtonsData, SourceBadgeSizeKeys, SourceBadgeTypeKeys, SourceBannerTypeKeys, SourceButton, SourceButtonAppearanceKeys, SourceButtonColorSchemeKeys, SourceButtonSizeKeys, SourceButtonTypeKeys, SourceIconButtonShapeKeys, SourceIconButtonSizeKeys, SourceIconButtonTypeKeys, SourceModalElementData, SourceModalSizeKeys };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@3dsource/source-ui-native",
3
- "version": "1.0.17",
3
+ "version": "1.0.18",
4
4
  "description": "A bunch of native ui elements",
5
5
  "keywords": [
6
6
  "3dsource",
@@ -30,6 +30,7 @@
30
30
  border: none;
31
31
  border-radius: var(--srcButtonBorderRadius);
32
32
  box-shadow: var(--srcButtonBoxShadow);
33
+ text-decoration: none;
33
34
  cursor: pointer;
34
35
 
35
36
  & > div,
@@ -49,6 +50,7 @@
49
50
  @media (pointer: fine) {
50
51
  &:hover,
51
52
  &:focus-visible {
53
+ text-decoration: none;
52
54
  background-color: var(--srcButtonBgHoverColor);
53
55
  }
54
56
  }
@@ -1,10 +1,12 @@
1
1
  .src-form {
2
2
  --srcFormRowGap: 16px;
3
3
  --srcFormItemsGap: 12px;
4
+ --srcFormOffset: 0;
4
5
  width: 100%;
5
6
  display: flex;
6
7
  flex-direction: column;
7
8
  gap: var(--srcFormRowGap);
9
+ padding: var(--srcFormOffset);
8
10
  }
9
11
 
10
12
  .src-form__row-group {
@@ -79,26 +79,6 @@
79
79
  .src-modal__close {
80
80
  margin-left: auto;
81
81
  }
82
-
83
- .src-modal__close,
84
- .src-modal__back {
85
- width: 24px;
86
- height: 24px;
87
- padding: 2px;
88
- background-color: var(--src-color-bg-strong-subdued);
89
- border-radius: 50%;
90
- border: none;
91
-
92
- &:hover,
93
- &:active {
94
- background-color: var(--src-color-bg-strong-subdued-hover);
95
- }
96
- svg {
97
- width: 20px;
98
- height: 20px;
99
- color: var(--src-color-icon-default);
100
- }
101
- }
102
82
  }
103
83
 
104
84
  // Dialog native tag
@@ -0,0 +1,60 @@
1
+ // Basic styles for typical popover component
2
+ .src-popover {
3
+ --srcPopoverWidth: 320px;
4
+ --srcPopoverMaxHeight: 80vh;
5
+ --srcPopoverBg: var(--src-color-bg-default);
6
+ --srcPopoverBoxShadow: var(--src-shadow-large);
7
+ --srcPopoverBorderRadius: var(--src-br-medium);
8
+ --srcPopoverTitleSize: var(--src-fs-medium);
9
+ --srcPopoverTitleLineHeight: var(--src-lh-medium);
10
+ --srcPopoverTitleColor: var(--src-color-text-default);
11
+ --srcPopoverBodyPadding: 20px;
12
+ --srcPopoverTitleBorder: 1px solid var(--src-color-border-default, #e5e7eb);
13
+ display: grid;
14
+ grid-template-columns: minmax(0, 1fr);
15
+ grid-template-rows: auto minmax(0, 1fr) auto;
16
+ width: var(--srcPopoverWidth);
17
+ max-height: var(--srcPopoverMaxHeight);
18
+ margin: auto;
19
+
20
+ background-color: var(--srcPopoverBg);
21
+ border-radius: var(--srcPopoverBorderRadius);
22
+ box-shadow: var(--srcPopoverBoxShadow);
23
+
24
+ .src-popover__body {
25
+ padding: var(--srcPopoverBodyPadding);
26
+ width: var(--srcPopoverWidth);
27
+ overflow: auto;
28
+ scrollbar-width: thin;
29
+ scrollbar-color: var(--src-color-border-default) transparent;
30
+
31
+ &::-webkit-scrollbar {
32
+ width: 4px;
33
+ }
34
+
35
+ &::-webkit-scrollbar-track {
36
+ background: transparent;
37
+ }
38
+
39
+ &::-webkit-scrollbar-thumb {
40
+ background-color: var(--src-color-border-default);
41
+ border-radius: 10px;
42
+ }
43
+ .src-list {
44
+ src-list-item:last-child {
45
+ margin-bottom: 0;
46
+ }
47
+ }
48
+ }
49
+ }
50
+
51
+ .src-popover-panel--mobile {
52
+ src-popover {
53
+ width: 100%;
54
+ }
55
+ .src-popover {
56
+ --srcPopoverWidth: 100%;
57
+ --srcPopoverBorderRadius: var(--src-br-medium) var(--src-br-medium) 0 0;
58
+ --srcPopoverBoxShadow: var(--src-shadow-large-top);
59
+ }
60
+ }
@@ -9,3 +9,4 @@
9
9
  @use './src-radio';
10
10
  @use './src-toggle';
11
11
  @use './src-modal';
12
+ @use './src-popover';
@@ -1,16 +0,0 @@
1
- import { SourceBadgeSizeKeys, SourceBadgeTypeKeys } from '../constants';
2
- import * as i0 from "@angular/core";
3
- export declare class SourceBadgeComponent {
4
- number: import("@angular/core").InputSignal<number>;
5
- backgroundColor: import("@angular/core").InputSignal<string>;
6
- type: import("@angular/core").InputSignal<SourceBadgeTypeKeys | undefined>;
7
- size: import("@angular/core").InputSignal<SourceBadgeSizeKeys>;
8
- borderColor: import("@angular/core").InputSignal<string>;
9
- borderWidth: import("@angular/core").InputSignal<string>;
10
- textColor: import("@angular/core").InputSignal<string>;
11
- customClass: import("@angular/core").InputSignal<string | string[] | undefined>;
12
- testID: import("@angular/core").InputSignal<string>;
13
- classes: import("@angular/core").Signal<(string | string[])[]>;
14
- static ɵfac: i0.ɵɵFactoryDeclaration<SourceBadgeComponent, never>;
15
- static ɵcmp: i0.ɵɵComponentDeclaration<SourceBadgeComponent, "src-badge", never, { "number": { "alias": "number"; "required": false; "isSignal": true; }; "backgroundColor": { "alias": "backgroundColor"; "required": false; "isSignal": true; }; "type": { "alias": "type"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "borderColor": { "alias": "borderColor"; "required": false; "isSignal": true; }; "borderWidth": { "alias": "borderWidth"; "required": false; "isSignal": true; }; "textColor": { "alias": "textColor"; "required": false; "isSignal": true; }; "customClass": { "alias": "customClass"; "required": false; "isSignal": true; }; "testID": { "alias": "data-testid"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, never>;
16
- }
@@ -1,2 +0,0 @@
1
- export * from './sourceBadgeType';
2
- export * from './sourceBadgeSize';
@@ -1,6 +0,0 @@
1
- export declare const SourceBadgeSize: {
2
- readonly SMALL: "small";
3
- readonly DEFAULT: "default";
4
- readonly LARGE: "large";
5
- };
6
- export type SourceBadgeSizeKeys = (typeof SourceBadgeSize)[keyof typeof SourceBadgeSize];
@@ -1,9 +0,0 @@
1
- export declare const SourceBadgeType: {
2
- readonly NEUTRAL: "neutral";
3
- readonly INFORMATIONAL: "informational";
4
- readonly SUCCESS: "success";
5
- readonly WARNING: "warning";
6
- readonly ATTENTION: "attention";
7
- readonly CRITICAL: "critical";
8
- };
9
- export type SourceBadgeTypeKeys = (typeof SourceBadgeType)[keyof typeof SourceBadgeType];
@@ -1,2 +0,0 @@
1
- export * from './components/source-badge.component';
2
- export * from './constants';
@@ -1,9 +0,0 @@
1
- import type { SourceBannerTypeKeys } from '../constants/sourceBannerType';
2
- import * as i0 from "@angular/core";
3
- export declare class SourceBannerComponent {
4
- type: import("@angular/core").InputSignal<SourceBannerTypeKeys>;
5
- isCompact: import("@angular/core").InputSignal<boolean>;
6
- testID: import("@angular/core").InputSignal<string>;
7
- static ɵfac: i0.ɵɵFactoryDeclaration<SourceBannerComponent, never>;
8
- static ɵcmp: i0.ɵɵComponentDeclaration<SourceBannerComponent, "src-banner", never, { "type": { "alias": "type"; "required": false; "isSignal": true; }; "isCompact": { "alias": "isCompact"; "required": false; "isSignal": true; }; "testID": { "alias": "data-testid"; "required": false; "isSignal": true; }; }, {}, never, ["[srcIconPrefix]", "*", "[srcIconPostfix]"], true, never>;
9
- }
@@ -1,8 +0,0 @@
1
- export declare const SourceBannerType: {
2
- readonly DEFAULT: "default";
3
- readonly INFO: "info";
4
- readonly SUCCESS: "success";
5
- readonly WARNING: "warning";
6
- readonly CRITICAL: "critical";
7
- };
8
- export type SourceBannerTypeKeys = (typeof SourceBannerType)[keyof typeof SourceBannerType];
@@ -1,2 +0,0 @@
1
- export * from './components/source-banner.component';
2
- export * from './constants/sourceBannerType';
@@ -1,27 +0,0 @@
1
- import type { SourceButton } from '../interfaces';
2
- import { SourceButtonAppearanceKeys, SourceButtonColorSchemeKeys, SourceButtonSizeKeys, SourceButtonTypeKeys } from '../constants';
3
- import * as i0 from "@angular/core";
4
- export declare class SourceButtonComponent {
5
- type: import("@angular/core").InputSignal<SourceButtonTypeKeys>;
6
- appearance: import("@angular/core").InputSignal<SourceButtonAppearanceKeys>;
7
- colorScheme: import("@angular/core").InputSignal<SourceButtonColorSchemeKeys>;
8
- size: import("@angular/core").InputSignal<SourceButtonSizeKeys>;
9
- customClass: import("@angular/core").InputSignal<string | string[]>;
10
- hasDisclosure: import("@angular/core").InputSignal<boolean>;
11
- isFullWidth: import("@angular/core").InputSignal<boolean>;
12
- isPressed: import("@angular/core").InputSignal<boolean>;
13
- isDisabled: import("@angular/core").InputSignal<boolean>;
14
- isLoading: import("@angular/core").InputSignal<boolean>;
15
- iconButton: import("@angular/core").InputSignal<boolean>;
16
- srcButtonConfig: import("@angular/core").InputSignal<SourceButton | undefined>;
17
- formID: import("@angular/core").InputSignal<string | undefined>;
18
- testID: import("@angular/core").InputSignal<string>;
19
- onClick: import("@angular/core").OutputEmitterRef<Event>;
20
- onSubmit: import("@angular/core").OutputEmitterRef<Event>;
21
- classes: import("@angular/core").Signal<(string | string[])[]>;
22
- handleClick(event: Event): void;
23
- handleSubmit(event: Event): void;
24
- getConfig(config: Partial<SourceButton>): SourceButton;
25
- static ɵfac: i0.ɵɵFactoryDeclaration<SourceButtonComponent, never>;
26
- static ɵcmp: i0.ɵɵComponentDeclaration<SourceButtonComponent, "src-button", never, { "type": { "alias": "type"; "required": false; "isSignal": true; }; "appearance": { "alias": "appearance"; "required": false; "isSignal": true; }; "colorScheme": { "alias": "colorScheme"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "customClass": { "alias": "customClass"; "required": false; "isSignal": true; }; "hasDisclosure": { "alias": "hasDisclosure"; "required": false; "isSignal": true; }; "isFullWidth": { "alias": "isFullWidth"; "required": false; "isSignal": true; }; "isPressed": { "alias": "isPressed"; "required": false; "isSignal": true; }; "isDisabled": { "alias": "isDisabled"; "required": false; "isSignal": true; }; "isLoading": { "alias": "isLoading"; "required": false; "isSignal": true; }; "iconButton": { "alias": "iconButton"; "required": false; "isSignal": true; }; "srcButtonConfig": { "alias": "srcButtonConfig"; "required": false; "isSignal": true; }; "formID": { "alias": "formID"; "required": false; "isSignal": true; }; "testID": { "alias": "data-testid"; "required": false; "isSignal": true; }; }, { "onClick": "onClick"; "onSubmit": "onSubmit"; }, never, ["[srcIconPrefix]", "*"], true, never>;
27
- }
@@ -1,5 +0,0 @@
1
- export * from './sourceButtonColorScheme';
2
- export * from './sourceButtonSize';
3
- export * from './sourceButtonType';
4
- export * from './sourceButtonAppearance';
5
- export * from './sourceButtonDefaultConfig';
@@ -1,5 +0,0 @@
1
- export declare const SourceButtonAppearance: {
2
- readonly PLAIN: "plain";
3
- readonly DEFAULT: "default";
4
- };
5
- export type SourceButtonAppearanceKeys = (typeof SourceButtonAppearance)[keyof typeof SourceButtonAppearance];
@@ -1,6 +0,0 @@
1
- export declare const SourceButtonColorScheme: {
2
- readonly PRIMARY: "primary";
3
- readonly SECONDARY: "secondary";
4
- readonly DESTRUCTIVE: "destructive";
5
- };
6
- export type SourceButtonColorSchemeKeys = (typeof SourceButtonColorScheme)[keyof typeof SourceButtonColorScheme];
@@ -1,2 +0,0 @@
1
- import type { SourceButton } from '../interfaces';
2
- export declare const sourceButtonDefaultConfig: SourceButton;
@@ -1,7 +0,0 @@
1
- export declare const SourceButtonSize: {
2
- readonly SLIM: "slim";
3
- readonly SMALL: "slim";
4
- readonly MEDIUM: "medium";
5
- readonly LARGE: "large";
6
- };
7
- export type SourceButtonSizeKeys = (typeof SourceButtonSize)[keyof typeof SourceButtonSize];
@@ -1,6 +0,0 @@
1
- export declare const SourceButtonType: {
2
- readonly BUTTON: "button";
3
- readonly SUBMIT: "submit";
4
- readonly RESET: "reset";
5
- };
6
- export type SourceButtonTypeKeys = (typeof SourceButtonType)[keyof typeof SourceButtonType];
@@ -1,3 +0,0 @@
1
- export * from './components/source-button.component';
2
- export * from './constants';
3
- export * from './interfaces';
@@ -1 +0,0 @@
1
- export * from './sourceButton.interface';
@@ -1,16 +0,0 @@
1
- import { SourceButtonAppearanceKeys, SourceButtonColorSchemeKeys, SourceButtonSizeKeys, SourceButtonTypeKeys } from '../constants';
2
- export interface SourceButton {
3
- type: SourceButtonTypeKeys;
4
- appearance: SourceButtonAppearanceKeys;
5
- colorScheme: SourceButtonColorSchemeKeys;
6
- size: SourceButtonSizeKeys;
7
- customClass: string | string[];
8
- hasDisclosure: boolean;
9
- isFullWidth: boolean;
10
- iconButton: boolean;
11
- isPressed: boolean;
12
- isDisabled: boolean;
13
- isLoading: boolean;
14
- formID?: string;
15
- testID?: string;
16
- }
@@ -1,7 +0,0 @@
1
- import * as i0 from "@angular/core";
2
- export declare class SourceCopyrightComponent {
3
- linkText: import("@angular/core").InputSignal<string>;
4
- isCollapsible: import("@angular/core").InputSignal<boolean>;
5
- static ɵfac: i0.ɵɵFactoryDeclaration<SourceCopyrightComponent, never>;
6
- static ɵcmp: i0.ɵɵComponentDeclaration<SourceCopyrightComponent, "src-copyright", never, { "linkText": { "alias": "linkText"; "required": false; "isSignal": true; }; "isCollapsible": { "alias": "isCollapsible"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
7
- }
@@ -1 +0,0 @@
1
- export * from './components/source-copyright.component';
@@ -1,7 +0,0 @@
1
- import * as i0 from "@angular/core";
2
- export declare class SourceDividerComponent {
3
- color: import("@angular/core").InputSignal<string>;
4
- thickness: import("@angular/core").InputSignal<string>;
5
- static ɵfac: i0.ɵɵFactoryDeclaration<SourceDividerComponent, never>;
6
- static ɵcmp: i0.ɵɵComponentDeclaration<SourceDividerComponent, "src-divider", never, { "color": { "alias": "color"; "required": false; "isSignal": true; }; "thickness": { "alias": "thickness"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
7
- }
@@ -1 +0,0 @@
1
- export * from './components/source-divider.component';