sdga-ui 1.0.7 → 1.0.9
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/css/dga-ui.css +24882 -27623
- package/css/dga-ui.css.map +1 -1
- package/package.json +20 -4
- package/theme/_variables.scss +0 -1
- package/theme/components/_buttons.scss +1 -302
- package/theme/config/_base.scss +1 -1
- package/theme/customizations/_alerts.scss +15 -14
- package/theme/customizations/_buttons.scss +305 -244
- package/theme/customizations/_footer.scss +122 -45
- package/theme/customizations/_global.scss +20 -2
- package/theme/customizations/_links.scss +55 -53
- package/theme/customizations/_toasts.scss +13 -14
- package/theme/dga-ui.scss +1 -2
- package/.editorconfig +0 -23
- package/.github/workflows/deploy.yml +0 -71
- package/.github/workflows/publish.yml +0 -36
- package/.prettierignore +0 -73
- package/.prettierrc +0 -17
- package/demo-angular/.editorconfig +0 -17
- package/demo-angular/.vscode/extensions.json +0 -4
- package/demo-angular/.vscode/launch.json +0 -20
- package/demo-angular/.vscode/tasks.json +0 -42
- package/demo-angular/README.md +0 -91
- package/demo-angular/angular.json +0 -93
- package/demo-angular/package-lock.json +0 -10600
- package/demo-angular/package.json +0 -53
- package/demo-angular/public/404.html +0 -35
- package/demo-angular/public/favicon.ico +0 -0
- package/demo-angular/public/i18n/ar.json +0 -289
- package/demo-angular/public/i18n/en.json +0 -289
- package/demo-angular/src/app/app.config.ts +0 -20
- package/demo-angular/src/app/app.html +0 -52
- package/demo-angular/src/app/app.routes.ts +0 -53
- package/demo-angular/src/app/app.scss +0 -430
- package/demo-angular/src/app/app.spec.ts +0 -23
- package/demo-angular/src/app/app.ts +0 -94
- package/demo-angular/src/app/shared/code-example/code-example.component.html +0 -30
- package/demo-angular/src/app/shared/code-example/code-example.component.scss +0 -183
- package/demo-angular/src/app/shared/code-example/code-example.component.ts +0 -78
- package/demo-angular/src/app/views/alerts/alerts.component.html +0 -155
- package/demo-angular/src/app/views/alerts/alerts.component.scss +0 -3
- package/demo-angular/src/app/views/alerts/alerts.component.ts +0 -134
- package/demo-angular/src/app/views/buttons/buttons.component.html +0 -289
- package/demo-angular/src/app/views/buttons/buttons.component.scss +0 -14
- package/demo-angular/src/app/views/buttons/buttons.component.ts +0 -155
- package/demo-angular/src/app/views/cards/cards.component.html +0 -156
- package/demo-angular/src/app/views/cards/cards.component.html.backup +0 -156
- package/demo-angular/src/app/views/cards/cards.component.scss +0 -11
- package/demo-angular/src/app/views/cards/cards.component.ts +0 -194
- package/demo-angular/src/app/views/contexts/contexts.component.html +0 -204
- package/demo-angular/src/app/views/contexts/contexts.component.ts +0 -10
- package/demo-angular/src/app/views/footer/footer.html +0 -282
- package/demo-angular/src/app/views/footer/footer.scss +0 -0
- package/demo-angular/src/app/views/footer/footer.spec.ts +0 -23
- package/demo-angular/src/app/views/footer/footer.ts +0 -142
- package/demo-angular/src/app/views/forms/forms.component.html +0 -347
- package/demo-angular/src/app/views/forms/forms.component.scss +0 -3
- package/demo-angular/src/app/views/forms/forms.component.ts +0 -222
- package/demo-angular/src/app/views/header/header.html +0 -1
- package/demo-angular/src/app/views/header/header.scss +0 -0
- package/demo-angular/src/app/views/header/header.spec.ts +0 -23
- package/demo-angular/src/app/views/header/header.ts +0 -11
- package/demo-angular/src/app/views/home/home.component.html +0 -33
- package/demo-angular/src/app/views/home/home.component.scss +0 -35
- package/demo-angular/src/app/views/home/home.component.ts +0 -12
- package/demo-angular/src/app/views/links/links.component.html +0 -21
- package/demo-angular/src/app/views/links/links.component.scss +0 -11
- package/demo-angular/src/app/views/links/links.component.ts +0 -19
- package/demo-angular/src/app/views/tables/tables.component.html +0 -289
- package/demo-angular/src/app/views/tables/tables.component.scss +0 -3
- package/demo-angular/src/app/views/tables/tables.component.ts +0 -278
- package/demo-angular/src/app/views/toasts/toasts.component.html +0 -201
- package/demo-angular/src/app/views/toasts/toasts.component.scss +0 -0
- package/demo-angular/src/app/views/toasts/toasts.component.ts +0 -182
- package/demo-angular/src/index.html +0 -28
- package/demo-angular/src/main.ts +0 -6
- package/demo-angular/src/styles.scss +0 -4
- package/demo-angular/tsconfig.app.json +0 -15
- package/demo-angular/tsconfig.json +0 -33
- package/demo-angular/tsconfig.spec.json +0 -15
- package/sdga-ui/README.md +0 -45
- package/sdga-ui/content/docs/components/alerts.mdx +0 -475
- package/sdga-ui/content/docs/index.mdx +0 -239
- package/sdga-ui/next.config.mjs +0 -10
- package/sdga-ui/package-lock.json +0 -5851
- package/sdga-ui/package.json +0 -32
- package/sdga-ui/postcss.config.mjs +0 -5
- package/sdga-ui/source.config.ts +0 -27
- package/sdga-ui/src/app/(home)/layout.tsx +0 -6
- package/sdga-ui/src/app/(home)/page.tsx +0 -202
- package/sdga-ui/src/app/api/search/route.ts +0 -7
- package/sdga-ui/src/app/docs/[[...slug]]/page.tsx +0 -54
- package/sdga-ui/src/app/docs/layout.tsx +0 -11
- package/sdga-ui/src/app/global.css +0 -3
- package/sdga-ui/src/app/layout.tsx +0 -25
- package/sdga-ui/src/app/llms-full.txt/route.ts +0 -10
- package/sdga-ui/src/app/og/docs/[...slug]/route.tsx +0 -34
- package/sdga-ui/src/app/sdga-scoped.css +0 -7
- package/sdga-ui/src/components/sdga-preview.tsx +0 -105
- package/sdga-ui/src/lib/layout.shared.tsx +0 -9
- package/sdga-ui/src/lib/source.ts +0 -27
- package/sdga-ui/src/mdx-components.tsx +0 -9
- package/sdga-ui/tsconfig.json +0 -46
- package/theme/config/_contexts.scss +0 -471
- package/theme/customizations/_contexts.scss +0 -432
|
@@ -1,201 +0,0 @@
|
|
|
1
|
-
<div class="container py-5">
|
|
2
|
-
<h1 class="display-4 mb-4">{{ 'toasts.title' | translate }}</h1>
|
|
3
|
-
<p class="lead mb-5">{{ 'toasts.subtitle' | translate }}</p>
|
|
4
|
-
|
|
5
|
-
<section class="demo-section mb-5">
|
|
6
|
-
<h2 class="mt-5">{{ 'toasts.section_variants' | translate }}</h2>
|
|
7
|
-
|
|
8
|
-
<!-- Success Toast with Icon -->
|
|
9
|
-
<h3 class="h5 mt-4 mb-3">Success Toast with Icon</h3>
|
|
10
|
-
<div class="d-flex flex-wrap gap-3 mb-3">
|
|
11
|
-
<div class="toast-container">
|
|
12
|
-
<div class="toast show fade toast-success" role="alert" aria-live="polite" aria-atomic="true">
|
|
13
|
-
<div class="toast-icon">
|
|
14
|
-
<i class="bi bi-check-circle toast-icon"></i>
|
|
15
|
-
</div>
|
|
16
|
-
<div class="toast-content">
|
|
17
|
-
<div class="toast-header">
|
|
18
|
-
<strong>{{ 'toasts.success' | translate }}</strong>
|
|
19
|
-
</div>
|
|
20
|
-
<div class="toast-body">
|
|
21
|
-
{{ 'toasts.success_text' | translate }}
|
|
22
|
-
</div>
|
|
23
|
-
<div class="toast-footer">
|
|
24
|
-
<button type="button" class="btn btn-subtle btn-sm">{{ 'toasts.action' | translate }}</button>
|
|
25
|
-
<button type="button" class="btn btn-subtle btn-sm" data-bs-dismiss="toast" aria-label="Close">{{ 'toasts.dismiss' | translate }}</button>
|
|
26
|
-
</div>
|
|
27
|
-
</div>
|
|
28
|
-
<button type="button" class="btn-close" data-bs-dismiss="toast" aria-label="Close"></button>
|
|
29
|
-
</div>
|
|
30
|
-
</div>
|
|
31
|
-
</div>
|
|
32
|
-
<app-code-example
|
|
33
|
-
[htmlCode]="successToastCode"
|
|
34
|
-
title="Success Toast with Icon">
|
|
35
|
-
</app-code-example>
|
|
36
|
-
|
|
37
|
-
<!-- Danger Toast with Icon -->
|
|
38
|
-
<h3 class="h5 mt-4 mb-3">Danger Toast with Icon</h3>
|
|
39
|
-
<div class="d-flex flex-wrap gap-3 mb-3">
|
|
40
|
-
<div class="toast show fade toast-danger" role="alert" aria-live="polite" aria-atomic="true">
|
|
41
|
-
<div class="toast-icon">
|
|
42
|
-
<i class="bi bi-exclamation-circle toast-icon"></i>
|
|
43
|
-
</div>
|
|
44
|
-
<div class="toast-content">
|
|
45
|
-
<div class="toast-header">
|
|
46
|
-
<strong>{{ 'toasts.danger' | translate }}</strong>
|
|
47
|
-
</div>
|
|
48
|
-
<div class="toast-body">
|
|
49
|
-
{{ 'toasts.danger_text' | translate }}
|
|
50
|
-
</div>
|
|
51
|
-
<div class="toast-footer">
|
|
52
|
-
<button type="button" class="btn btn-subtle btn-sm">{{ 'toasts.action' | translate }}</button>
|
|
53
|
-
<button type="button" class="btn btn-subtle btn-sm" data-bs-dismiss="toast" aria-label="Close">{{ 'toasts.dismiss' | translate }}</button>
|
|
54
|
-
</div>
|
|
55
|
-
</div>
|
|
56
|
-
<button type="button" class="btn-close" data-bs-dismiss="toast" aria-label="Close"></button>
|
|
57
|
-
</div>
|
|
58
|
-
</div>
|
|
59
|
-
<app-code-example
|
|
60
|
-
[htmlCode]="dangerToastCode"
|
|
61
|
-
title="Danger Toast with Icon">
|
|
62
|
-
</app-code-example>
|
|
63
|
-
|
|
64
|
-
<!-- Warning Toast with Icon -->
|
|
65
|
-
<h3 class="h5 mt-4 mb-3">Warning Toast with Icon</h3>
|
|
66
|
-
<div class="d-flex flex-wrap gap-3 mb-3">
|
|
67
|
-
<div class="toast show fade toast-warning" role="alert" aria-live="polite" aria-atomic="true">
|
|
68
|
-
<div class="toast-icon">
|
|
69
|
-
<i class="bi bi-exclamation-triangle toast-icon"></i>
|
|
70
|
-
</div>
|
|
71
|
-
<div class="toast-content">
|
|
72
|
-
<div class="toast-header">
|
|
73
|
-
<strong>{{ 'toasts.warning' | translate }}</strong>
|
|
74
|
-
</div>
|
|
75
|
-
<div class="toast-body">
|
|
76
|
-
{{ 'toasts.warning_text' | translate }}
|
|
77
|
-
</div>
|
|
78
|
-
<div class="toast-footer">
|
|
79
|
-
<button type="button" class="btn btn-subtle btn-sm">{{ 'toasts.action' | translate }}</button>
|
|
80
|
-
<button type="button" class="btn btn-subtle btn-sm" data-bs-dismiss="toast" aria-label="Close">{{ 'toasts.dismiss' | translate }}</button>
|
|
81
|
-
</div>
|
|
82
|
-
</div>
|
|
83
|
-
<button type="button" class="btn-close" data-bs-dismiss="toast" aria-label="Close"></button>
|
|
84
|
-
</div>
|
|
85
|
-
</div>
|
|
86
|
-
<app-code-example
|
|
87
|
-
[htmlCode]="warningToastCode"
|
|
88
|
-
title="Warning Toast with Icon">
|
|
89
|
-
</app-code-example>
|
|
90
|
-
|
|
91
|
-
<!-- Info Toast with Icon -->
|
|
92
|
-
<h3 class="h5 mt-4 mb-3">Info Toast with Icon</h3>
|
|
93
|
-
<div class="d-flex flex-wrap gap-3 mb-3">
|
|
94
|
-
<div class="toast show fade toast-info" role="alert" aria-live="polite" aria-atomic="true">
|
|
95
|
-
<div class="toast-icon">
|
|
96
|
-
<i class="bi bi-info-circle toast-icon"></i>
|
|
97
|
-
</div>
|
|
98
|
-
<div class="toast-content">
|
|
99
|
-
<div class="toast-header">
|
|
100
|
-
<strong>{{ 'toasts.info' | translate }}</strong>
|
|
101
|
-
</div>
|
|
102
|
-
<div class="toast-body">
|
|
103
|
-
{{ 'toasts.info_text' | translate }}
|
|
104
|
-
</div>
|
|
105
|
-
<div class="toast-footer">
|
|
106
|
-
<button type="button" class="btn btn-subtle btn-sm">{{ 'toasts.action' | translate }}</button>
|
|
107
|
-
<button type="button" class="btn btn-subtle btn-sm" data-bs-dismiss="toast" aria-label="Close">{{ 'toasts.dismiss' | translate }}</button>
|
|
108
|
-
</div>
|
|
109
|
-
</div>
|
|
110
|
-
<button type="button" class="btn-close" data-bs-dismiss="toast" aria-label="Close"></button>
|
|
111
|
-
</div>
|
|
112
|
-
</div>
|
|
113
|
-
<app-code-example
|
|
114
|
-
[htmlCode]="infoToastCode"
|
|
115
|
-
title="Info Toast with Icon">
|
|
116
|
-
</app-code-example>
|
|
117
|
-
|
|
118
|
-
<!-- Neutral Toast with Icon -->
|
|
119
|
-
<h3 class="h5 mt-4 mb-3">Neutral Toast with Icon</h3>
|
|
120
|
-
<div class="d-flex flex-wrap gap-3 mb-3">
|
|
121
|
-
<div class="toast show fade toast-neutral" role="alert" aria-live="polite" aria-atomic="true">
|
|
122
|
-
<div class="toast-icon">
|
|
123
|
-
<i class="bi bi-info-circle toast-icon"></i>
|
|
124
|
-
</div>
|
|
125
|
-
<div class="toast-content">
|
|
126
|
-
<div class="toast-header">
|
|
127
|
-
<strong>{{ 'toasts.neutral' | translate }}</strong>
|
|
128
|
-
</div>
|
|
129
|
-
<div class="toast-body">
|
|
130
|
-
{{ 'toasts.neutral_text' | translate }}
|
|
131
|
-
</div>
|
|
132
|
-
<div class="toast-footer">
|
|
133
|
-
<button type="button" class="btn btn-subtle btn-sm">{{ 'toasts.action' | translate }}</button>
|
|
134
|
-
<button type="button" class="btn btn-subtle btn-sm" data-bs-dismiss="toast" aria-label="Close">{{ 'toasts.dismiss' | translate }}</button>
|
|
135
|
-
</div>
|
|
136
|
-
</div>
|
|
137
|
-
<button type="button" class="btn-close" data-bs-dismiss="toast" aria-label="Close"></button>
|
|
138
|
-
</div>
|
|
139
|
-
</div>
|
|
140
|
-
<app-code-example
|
|
141
|
-
[htmlCode]="neutralToastCode"
|
|
142
|
-
title="Neutral Toast with Icon">
|
|
143
|
-
</app-code-example>
|
|
144
|
-
|
|
145
|
-
<!-- Toast with Header, Body, and Footer Actions -->
|
|
146
|
-
<h3 class="h5 mt-4 mb-3">Toast with Header, Body, and Footer Actions</h3>
|
|
147
|
-
<div class="d-flex flex-wrap gap-3 mb-3">
|
|
148
|
-
<div class="toast-container">
|
|
149
|
-
<div class="toast show fade toast-success" role="alert" aria-live="polite" aria-atomic="true">
|
|
150
|
-
<div class="toast-icon">
|
|
151
|
-
<i class="bi bi-check-circle toast-icon"></i>
|
|
152
|
-
</div>
|
|
153
|
-
<div class="toast-content">
|
|
154
|
-
<div class="toast-header">
|
|
155
|
-
<strong>{{ 'toasts.success' | translate }}</strong>
|
|
156
|
-
</div>
|
|
157
|
-
<div class="toast-body">
|
|
158
|
-
{{ 'toasts.success_text' | translate }}
|
|
159
|
-
</div>
|
|
160
|
-
<div class="toast-footer">
|
|
161
|
-
<button type="button" class="btn btn-subtle btn-sm">{{ 'toasts.action' | translate }}</button>
|
|
162
|
-
<button type="button" class="btn btn-subtle btn-sm" data-bs-dismiss="toast" aria-label="Close">{{ 'toasts.dismiss' | translate }}</button>
|
|
163
|
-
</div>
|
|
164
|
-
</div>
|
|
165
|
-
<button type="button" class="btn-close" data-bs-dismiss="toast" aria-label="Close"></button>
|
|
166
|
-
</div>
|
|
167
|
-
</div>
|
|
168
|
-
</div>
|
|
169
|
-
<app-code-example
|
|
170
|
-
[htmlCode]="fullToastCode"
|
|
171
|
-
title="Toast with Header, Body, and Footer Actions">
|
|
172
|
-
</app-code-example>
|
|
173
|
-
|
|
174
|
-
<!-- Dismissible Toast -->
|
|
175
|
-
<h3 class="h5 mt-4 mb-3">Dismissible Toast</h3>
|
|
176
|
-
<div class="d-flex flex-wrap gap-3 mb-3">
|
|
177
|
-
<div class="toast show fade toast-success" role="alert" aria-live="polite" aria-atomic="true">
|
|
178
|
-
<div class="toast-icon">
|
|
179
|
-
<i class="bi bi-check-circle toast-icon"></i>
|
|
180
|
-
</div>
|
|
181
|
-
<div class="toast-content">
|
|
182
|
-
<div class="toast-header">
|
|
183
|
-
<strong>{{ 'toasts.success' | translate }}</strong>
|
|
184
|
-
</div>
|
|
185
|
-
<div class="toast-body">
|
|
186
|
-
{{ 'toasts.success_text' | translate }}
|
|
187
|
-
</div>
|
|
188
|
-
<div class="toast-footer">
|
|
189
|
-
<button type="button" class="btn btn-subtle btn-sm">{{ 'toasts.action' | translate }}</button>
|
|
190
|
-
<button type="button" class="btn btn-subtle btn-sm" data-bs-dismiss="toast" aria-label="Close">{{ 'toasts.dismiss' | translate }}</button>
|
|
191
|
-
</div>
|
|
192
|
-
</div>
|
|
193
|
-
<button type="button" class="btn-close" data-bs-dismiss="toast" aria-label="Close"></button>
|
|
194
|
-
</div>
|
|
195
|
-
</div>
|
|
196
|
-
<app-code-example
|
|
197
|
-
[htmlCode]="dismissibleToastCode"
|
|
198
|
-
title="Dismissible Toast">
|
|
199
|
-
</app-code-example>
|
|
200
|
-
</section>
|
|
201
|
-
</div>
|
|
File without changes
|
|
@@ -1,182 +0,0 @@
|
|
|
1
|
-
import { Component, ChangeDetectionStrategy, signal } from '@angular/core';
|
|
2
|
-
import { TranslateModule } from '@ngx-translate/core';
|
|
3
|
-
import { CommonModule } from '@angular/common';
|
|
4
|
-
import { CodeExampleComponent } from '../../shared/code-example/code-example.component';
|
|
5
|
-
|
|
6
|
-
@Component({
|
|
7
|
-
selector: 'app-toasts',
|
|
8
|
-
imports: [CommonModule, TranslateModule, CodeExampleComponent],
|
|
9
|
-
templateUrl: './toasts.component.html',
|
|
10
|
-
styleUrl: './toasts.component.scss',
|
|
11
|
-
changeDetection: ChangeDetectionStrategy.OnPush
|
|
12
|
-
})
|
|
13
|
-
export class ToastsComponent {
|
|
14
|
-
protected readonly showToast1 = signal(false);
|
|
15
|
-
protected readonly showToast2 = signal(false);
|
|
16
|
-
protected readonly showToast3 = signal(false);
|
|
17
|
-
protected readonly showToast4 = signal(false);
|
|
18
|
-
protected readonly showToast5 = signal(false);
|
|
19
|
-
protected readonly showToast6 = signal(false);
|
|
20
|
-
|
|
21
|
-
// Success Toast with Icon
|
|
22
|
-
successToastCode = `<div class="toast show fade toast-success" role="alert" aria-live="polite" aria-atomic="true">
|
|
23
|
-
<div class="toast-icon">
|
|
24
|
-
<i class="bi bi-check-circle toast-icon"></i>
|
|
25
|
-
</div>
|
|
26
|
-
<div class="toast-content">
|
|
27
|
-
<div class="toast-header">
|
|
28
|
-
<strong>Success</strong>
|
|
29
|
-
</div>
|
|
30
|
-
<div class="toast-body">
|
|
31
|
-
Your action was completed successfully!
|
|
32
|
-
</div>
|
|
33
|
-
<div class="toast-footer">
|
|
34
|
-
<button type="button" class="btn btn-subtle btn-sm">Action</button>
|
|
35
|
-
<button type="button" class="btn btn-subtle btn-sm" data-bs-dismiss="toast" aria-label="Close">Dismiss</button>
|
|
36
|
-
</div>
|
|
37
|
-
</div>
|
|
38
|
-
<button type="button" class="btn-close" data-bs-dismiss="toast" aria-label="Close"></button>
|
|
39
|
-
</div>`;
|
|
40
|
-
|
|
41
|
-
// Danger Toast with Icon
|
|
42
|
-
dangerToastCode = `<div class="toast show fade toast-danger" role="alert" aria-live="polite" aria-atomic="true">
|
|
43
|
-
<div class="toast-icon">
|
|
44
|
-
<i class="bi bi-exclamation-circle toast-icon"></i>
|
|
45
|
-
</div>
|
|
46
|
-
<div class="toast-content">
|
|
47
|
-
<div class="toast-header">
|
|
48
|
-
<strong>Error</strong>
|
|
49
|
-
</div>
|
|
50
|
-
<div class="toast-body">
|
|
51
|
-
There was an error processing your request.
|
|
52
|
-
</div>
|
|
53
|
-
<div class="toast-footer">
|
|
54
|
-
<button type="button" class="btn btn-subtle btn-sm">Action</button>
|
|
55
|
-
<button type="button" class="btn btn-subtle btn-sm" data-bs-dismiss="toast" aria-label="Close">Dismiss</button>
|
|
56
|
-
</div>
|
|
57
|
-
</div>
|
|
58
|
-
<button type="button" class="btn-close" data-bs-dismiss="toast" aria-label="Close"></button>
|
|
59
|
-
</div>`;
|
|
60
|
-
|
|
61
|
-
// Warning Toast with Icon
|
|
62
|
-
warningToastCode = `<div class="toast show fade toast-warning" role="alert" aria-live="polite" aria-atomic="true">
|
|
63
|
-
<div class="toast-icon">
|
|
64
|
-
<i class="bi bi-exclamation-triangle toast-icon"></i>
|
|
65
|
-
</div>
|
|
66
|
-
<div class="toast-content">
|
|
67
|
-
<div class="toast-header">
|
|
68
|
-
<strong>Warning</strong>
|
|
69
|
-
</div>
|
|
70
|
-
<div class="toast-body">
|
|
71
|
-
Please review your changes before proceeding.
|
|
72
|
-
</div>
|
|
73
|
-
<div class="toast-footer">
|
|
74
|
-
<button type="button" class="btn btn-subtle btn-sm">Action</button>
|
|
75
|
-
<button type="button" class="btn btn-subtle btn-sm" data-bs-dismiss="toast" aria-label="Close">Dismiss</button>
|
|
76
|
-
</div>
|
|
77
|
-
</div>
|
|
78
|
-
<button type="button" class="btn-close" data-bs-dismiss="toast" aria-label="Close"></button>
|
|
79
|
-
</div>`;
|
|
80
|
-
|
|
81
|
-
// Info Toast with Icon
|
|
82
|
-
infoToastCode = `<div class="toast show fade toast-info" role="alert" aria-live="polite" aria-atomic="true">
|
|
83
|
-
<div class="toast-icon">
|
|
84
|
-
<i class="bi bi-info-circle toast-icon"></i>
|
|
85
|
-
</div>
|
|
86
|
-
<div class="toast-content">
|
|
87
|
-
<div class="toast-header">
|
|
88
|
-
<strong>Information</strong>
|
|
89
|
-
</div>
|
|
90
|
-
<div class="toast-body">
|
|
91
|
-
Here's some helpful information for you.
|
|
92
|
-
</div>
|
|
93
|
-
<div class="toast-footer">
|
|
94
|
-
<button type="button" class="btn btn-subtle btn-sm">Action</button>
|
|
95
|
-
<button type="button" class="btn btn-subtle btn-sm" data-bs-dismiss="toast" aria-label="Close">Dismiss</button>
|
|
96
|
-
</div>
|
|
97
|
-
</div>
|
|
98
|
-
<button type="button" class="btn-close" data-bs-dismiss="toast" aria-label="Close"></button>
|
|
99
|
-
</div>`;
|
|
100
|
-
|
|
101
|
-
// Neutral Toast with Icon
|
|
102
|
-
neutralToastCode = `<div class="toast show fade toast-neutral" role="alert" aria-live="polite" aria-atomic="true">
|
|
103
|
-
<div class="toast-icon">
|
|
104
|
-
<i class="bi bi-info-circle toast-icon"></i>
|
|
105
|
-
</div>
|
|
106
|
-
<div class="toast-content">
|
|
107
|
-
<div class="toast-header">
|
|
108
|
-
<strong>Neutral</strong>
|
|
109
|
-
</div>
|
|
110
|
-
<div class="toast-body">
|
|
111
|
-
This is a neutral notification message.
|
|
112
|
-
</div>
|
|
113
|
-
<div class="toast-footer">
|
|
114
|
-
<button type="button" class="btn btn-subtle btn-sm">Action</button>
|
|
115
|
-
<button type="button" class="btn btn-subtle btn-sm" data-bs-dismiss="toast" aria-label="Close">Dismiss</button>
|
|
116
|
-
</div>
|
|
117
|
-
</div>
|
|
118
|
-
<button type="button" class="btn-close" data-bs-dismiss="toast" aria-label="Close"></button>
|
|
119
|
-
</div>`;
|
|
120
|
-
|
|
121
|
-
// Toast with Header, Body, and Footer
|
|
122
|
-
fullToastCode = `<div class="toast-container">
|
|
123
|
-
<div class="toast show fade toast-success" role="alert" aria-live="polite" aria-atomic="true">
|
|
124
|
-
<div class="toast-icon">
|
|
125
|
-
<i class="bi bi-check-circle toast-icon"></i>
|
|
126
|
-
</div>
|
|
127
|
-
<div class="toast-content">
|
|
128
|
-
<div class="toast-header">
|
|
129
|
-
<strong>Success</strong>
|
|
130
|
-
</div>
|
|
131
|
-
<div class="toast-body">
|
|
132
|
-
Your action was completed successfully!
|
|
133
|
-
</div>
|
|
134
|
-
<div class="toast-footer">
|
|
135
|
-
<button type="button" class="btn btn-subtle btn-sm">Action</button>
|
|
136
|
-
<button type="button" class="btn btn-subtle btn-sm" data-bs-dismiss="toast" aria-label="Close">Dismiss</button>
|
|
137
|
-
</div>
|
|
138
|
-
</div>
|
|
139
|
-
<button type="button" class="btn-close" data-bs-dismiss="toast" aria-label="Close"></button>
|
|
140
|
-
</div>
|
|
141
|
-
</div>`;
|
|
142
|
-
|
|
143
|
-
// Dismissible Toast
|
|
144
|
-
dismissibleToastCode = `<div class="toast show fade toast-success" role="alert" aria-live="polite" aria-atomic="true">
|
|
145
|
-
<div class="toast-icon">
|
|
146
|
-
<i class="bi bi-check-circle toast-icon"></i>
|
|
147
|
-
</div>
|
|
148
|
-
<div class="toast-content">
|
|
149
|
-
<div class="toast-header">
|
|
150
|
-
<strong>Success</strong>
|
|
151
|
-
</div>
|
|
152
|
-
<div class="toast-body">
|
|
153
|
-
Your action was completed successfully!
|
|
154
|
-
</div>
|
|
155
|
-
<div class="toast-footer">
|
|
156
|
-
<button type="button" class="btn btn-subtle btn-sm">Action</button>
|
|
157
|
-
<button type="button" class="btn btn-subtle btn-sm" data-bs-dismiss="toast" aria-label="Close">Dismiss</button>
|
|
158
|
-
</div>
|
|
159
|
-
</div>
|
|
160
|
-
<button type="button" class="btn-close" data-bs-dismiss="toast" aria-label="Close"></button>
|
|
161
|
-
</div>`;
|
|
162
|
-
|
|
163
|
-
hideToast(number: number): void {
|
|
164
|
-
switch(number) {
|
|
165
|
-
case 1: this.showToast1.set(false); break;
|
|
166
|
-
case 2: this.showToast2.set(false); break;
|
|
167
|
-
case 3: this.showToast3.set(false); break;
|
|
168
|
-
case 4: this.showToast4.set(false); break;
|
|
169
|
-
case 5: this.showToast5.set(false); break;
|
|
170
|
-
case 6: this.showToast6.set(false); break;
|
|
171
|
-
}
|
|
172
|
-
}
|
|
173
|
-
|
|
174
|
-
showAllToasts(): void {
|
|
175
|
-
this.showToast1.set(true);
|
|
176
|
-
this.showToast2.set(true);
|
|
177
|
-
this.showToast3.set(true);
|
|
178
|
-
this.showToast4.set(true);
|
|
179
|
-
this.showToast5.set(true);
|
|
180
|
-
this.showToast6.set(true);
|
|
181
|
-
}
|
|
182
|
-
}
|
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
<!doctype html>
|
|
2
|
-
<html lang="en">
|
|
3
|
-
<head>
|
|
4
|
-
<meta charset="utf-8">
|
|
5
|
-
<title>DemoAngular</title>
|
|
6
|
-
<base href="/">
|
|
7
|
-
<meta name="viewport" content="width=device-width, initial-scale=1">
|
|
8
|
-
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bootstrap-icons@1.11.3/font/bootstrap-icons.min.css">
|
|
9
|
-
<link rel="icon" type="image/x-icon" href="favicon.ico">
|
|
10
|
-
<script>
|
|
11
|
-
// Handle redirect from 404.html on GitHub Pages for SPA routes
|
|
12
|
-
(function() {
|
|
13
|
-
var redirect = sessionStorage.getItem('ghspa-redirect');
|
|
14
|
-
if (redirect) {
|
|
15
|
-
sessionStorage.removeItem('ghspa-redirect');
|
|
16
|
-
var data = JSON.parse(redirect);
|
|
17
|
-
if (data.path) {
|
|
18
|
-
var newUrl = data.path + (data.query || '') + (data.hash || '');
|
|
19
|
-
history.replaceState(null, '', newUrl);
|
|
20
|
-
}
|
|
21
|
-
}
|
|
22
|
-
})();
|
|
23
|
-
</script>
|
|
24
|
-
</head>
|
|
25
|
-
<body>
|
|
26
|
-
<app-root></app-root>
|
|
27
|
-
</body>
|
|
28
|
-
</html>
|
package/demo-angular/src/main.ts
DELETED
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
/* To learn more about Typescript configuration file: https://www.typescriptlang.org/docs/handbook/tsconfig-json.html. */
|
|
2
|
-
/* To learn more about Angular compiler options: https://angular.dev/reference/configs/angular-compiler-options. */
|
|
3
|
-
{
|
|
4
|
-
"extends": "./tsconfig.json",
|
|
5
|
-
"compilerOptions": {
|
|
6
|
-
"outDir": "./out-tsc/app",
|
|
7
|
-
"types": []
|
|
8
|
-
},
|
|
9
|
-
"include": [
|
|
10
|
-
"src/**/*.ts"
|
|
11
|
-
],
|
|
12
|
-
"exclude": [
|
|
13
|
-
"src/**/*.spec.ts"
|
|
14
|
-
]
|
|
15
|
-
}
|
|
@@ -1,33 +0,0 @@
|
|
|
1
|
-
/* To learn more about Typescript configuration file: https://www.typescriptlang.org/docs/handbook/tsconfig-json.html. */
|
|
2
|
-
/* To learn more about Angular compiler options: https://angular.dev/reference/configs/angular-compiler-options. */
|
|
3
|
-
{
|
|
4
|
-
"compileOnSave": false,
|
|
5
|
-
"compilerOptions": {
|
|
6
|
-
"strict": true,
|
|
7
|
-
"noImplicitOverride": true,
|
|
8
|
-
"noPropertyAccessFromIndexSignature": true,
|
|
9
|
-
"noImplicitReturns": true,
|
|
10
|
-
"noFallthroughCasesInSwitch": true,
|
|
11
|
-
"skipLibCheck": true,
|
|
12
|
-
"isolatedModules": true,
|
|
13
|
-
"experimentalDecorators": true,
|
|
14
|
-
"importHelpers": true,
|
|
15
|
-
"target": "ES2022",
|
|
16
|
-
"module": "preserve"
|
|
17
|
-
},
|
|
18
|
-
"angularCompilerOptions": {
|
|
19
|
-
"enableI18nLegacyMessageIdFormat": false,
|
|
20
|
-
"strictInjectionParameters": true,
|
|
21
|
-
"strictInputAccessModifiers": true,
|
|
22
|
-
"strictTemplates": true
|
|
23
|
-
},
|
|
24
|
-
"files": [],
|
|
25
|
-
"references": [
|
|
26
|
-
{
|
|
27
|
-
"path": "./tsconfig.app.json"
|
|
28
|
-
},
|
|
29
|
-
{
|
|
30
|
-
"path": "./tsconfig.spec.json"
|
|
31
|
-
}
|
|
32
|
-
]
|
|
33
|
-
}
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
/* To learn more about Typescript configuration file: https://www.typescriptlang.org/docs/handbook/tsconfig-json.html. */
|
|
2
|
-
/* To learn more about Angular compiler options: https://angular.dev/reference/configs/angular-compiler-options. */
|
|
3
|
-
{
|
|
4
|
-
"extends": "./tsconfig.json",
|
|
5
|
-
"compilerOptions": {
|
|
6
|
-
"outDir": "./out-tsc/spec",
|
|
7
|
-
"types": [
|
|
8
|
-
"vitest/globals"
|
|
9
|
-
]
|
|
10
|
-
},
|
|
11
|
-
"include": [
|
|
12
|
-
"src/**/*.d.ts",
|
|
13
|
-
"src/**/*.spec.ts"
|
|
14
|
-
]
|
|
15
|
-
}
|
package/sdga-ui/README.md
DELETED
|
@@ -1,45 +0,0 @@
|
|
|
1
|
-
# sdga-ui
|
|
2
|
-
|
|
3
|
-
This is a Next.js application generated with
|
|
4
|
-
[Create Fumadocs](https://github.com/fuma-nama/fumadocs).
|
|
5
|
-
|
|
6
|
-
Run development server:
|
|
7
|
-
|
|
8
|
-
```bash
|
|
9
|
-
npm run dev
|
|
10
|
-
# or
|
|
11
|
-
pnpm dev
|
|
12
|
-
# or
|
|
13
|
-
yarn dev
|
|
14
|
-
```
|
|
15
|
-
|
|
16
|
-
Open http://localhost:3000 with your browser to see the result.
|
|
17
|
-
|
|
18
|
-
## Explore
|
|
19
|
-
|
|
20
|
-
In the project, you can see:
|
|
21
|
-
|
|
22
|
-
- `lib/source.ts`: Code for content source adapter, [`loader()`](https://fumadocs.dev/docs/headless/source-api) provides the interface to access your content.
|
|
23
|
-
- `lib/layout.shared.tsx`: Shared options for layouts, optional but preferred to keep.
|
|
24
|
-
|
|
25
|
-
| Route | Description |
|
|
26
|
-
| ------------------------- | ------------------------------------------------------ |
|
|
27
|
-
| `app/(home)` | The route group for your landing page and other pages. |
|
|
28
|
-
| `app/docs` | The documentation layout and pages. |
|
|
29
|
-
| `app/api/search/route.ts` | The Route Handler for search. |
|
|
30
|
-
|
|
31
|
-
### Fumadocs MDX
|
|
32
|
-
|
|
33
|
-
A `source.config.ts` config file has been included, you can customise different options like frontmatter schema.
|
|
34
|
-
|
|
35
|
-
Read the [Introduction](https://fumadocs.dev/docs/mdx) for further details.
|
|
36
|
-
|
|
37
|
-
## Learn More
|
|
38
|
-
|
|
39
|
-
To learn more about Next.js and Fumadocs, take a look at the following
|
|
40
|
-
resources:
|
|
41
|
-
|
|
42
|
-
- [Next.js Documentation](https://nextjs.org/docs) - learn about Next.js
|
|
43
|
-
features and API.
|
|
44
|
-
- [Learn Next.js](https://nextjs.org/learn) - an interactive Next.js tutorial.
|
|
45
|
-
- [Fumadocs](https://fumadocs.dev) - learn about Fumadocs
|