sdga-ui 1.0.8 → 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.
Files changed (90) hide show
  1. package/css/dga-ui.css +16 -2
  2. package/css/dga-ui.css.map +1 -1
  3. package/package.json +20 -4
  4. package/theme/customizations/_links.scss +22 -21
  5. package/.editorconfig +0 -23
  6. package/.github/workflows/deploy.yml +0 -71
  7. package/.github/workflows/publish.yml +0 -36
  8. package/.prettierignore +0 -73
  9. package/.prettierrc +0 -17
  10. package/demo-angular/.editorconfig +0 -17
  11. package/demo-angular/.vscode/extensions.json +0 -4
  12. package/demo-angular/.vscode/launch.json +0 -20
  13. package/demo-angular/.vscode/tasks.json +0 -42
  14. package/demo-angular/README.md +0 -91
  15. package/demo-angular/angular.json +0 -96
  16. package/demo-angular/package-lock.json +0 -10600
  17. package/demo-angular/package.json +0 -53
  18. package/demo-angular/public/404.html +0 -35
  19. package/demo-angular/public/favicon.ico +0 -0
  20. package/demo-angular/public/i18n/ar.json +0 -289
  21. package/demo-angular/public/i18n/en.json +0 -289
  22. package/demo-angular/src/app/app.config.ts +0 -20
  23. package/demo-angular/src/app/app.html +0 -52
  24. package/demo-angular/src/app/app.routes.ts +0 -49
  25. package/demo-angular/src/app/app.scss +0 -430
  26. package/demo-angular/src/app/app.spec.ts +0 -23
  27. package/demo-angular/src/app/app.ts +0 -97
  28. package/demo-angular/src/app/shared/code-example/code-example.component.html +0 -30
  29. package/demo-angular/src/app/shared/code-example/code-example.component.scss +0 -183
  30. package/demo-angular/src/app/shared/code-example/code-example.component.ts +0 -89
  31. package/demo-angular/src/app/views/alerts/alerts.component.html +0 -155
  32. package/demo-angular/src/app/views/alerts/alerts.component.scss +0 -3
  33. package/demo-angular/src/app/views/alerts/alerts.component.ts +0 -134
  34. package/demo-angular/src/app/views/buttons/buttons.component.html +0 -360
  35. package/demo-angular/src/app/views/buttons/buttons.component.scss +0 -11
  36. package/demo-angular/src/app/views/buttons/buttons.component.ts +0 -225
  37. package/demo-angular/src/app/views/cards/cards.component.html +0 -156
  38. package/demo-angular/src/app/views/cards/cards.component.html.backup +0 -156
  39. package/demo-angular/src/app/views/cards/cards.component.scss +0 -11
  40. package/demo-angular/src/app/views/cards/cards.component.ts +0 -194
  41. package/demo-angular/src/app/views/footer/footer.html +0 -270
  42. package/demo-angular/src/app/views/footer/footer.ts +0 -276
  43. package/demo-angular/src/app/views/forms/forms.component.html +0 -347
  44. package/demo-angular/src/app/views/forms/forms.component.scss +0 -3
  45. package/demo-angular/src/app/views/forms/forms.component.ts +0 -222
  46. package/demo-angular/src/app/views/header/header.html +0 -1
  47. package/demo-angular/src/app/views/header/header.scss +0 -0
  48. package/demo-angular/src/app/views/header/header.spec.ts +0 -23
  49. package/demo-angular/src/app/views/header/header.ts +0 -11
  50. package/demo-angular/src/app/views/home/home.component.html +0 -33
  51. package/demo-angular/src/app/views/home/home.component.scss +0 -35
  52. package/demo-angular/src/app/views/home/home.component.ts +0 -12
  53. package/demo-angular/src/app/views/links/links.component.html +0 -21
  54. package/demo-angular/src/app/views/links/links.component.scss +0 -11
  55. package/demo-angular/src/app/views/links/links.component.ts +0 -19
  56. package/demo-angular/src/app/views/tables/tables.component.html +0 -289
  57. package/demo-angular/src/app/views/tables/tables.component.scss +0 -3
  58. package/demo-angular/src/app/views/tables/tables.component.ts +0 -278
  59. package/demo-angular/src/app/views/toasts/toasts.component.html +0 -201
  60. package/demo-angular/src/app/views/toasts/toasts.component.scss +0 -0
  61. package/demo-angular/src/app/views/toasts/toasts.component.ts +0 -182
  62. package/demo-angular/src/index.html +0 -28
  63. package/demo-angular/src/main.ts +0 -6
  64. package/demo-angular/src/styles.scss +0 -4
  65. package/demo-angular/tsconfig.app.json +0 -16
  66. package/demo-angular/tsconfig.json +0 -33
  67. package/demo-angular/tsconfig.spec.json +0 -15
  68. package/sdga-ui/README.md +0 -45
  69. package/sdga-ui/content/docs/components/alerts.mdx +0 -475
  70. package/sdga-ui/content/docs/index.mdx +0 -239
  71. package/sdga-ui/next.config.mjs +0 -10
  72. package/sdga-ui/package-lock.json +0 -5851
  73. package/sdga-ui/package.json +0 -32
  74. package/sdga-ui/postcss.config.mjs +0 -5
  75. package/sdga-ui/source.config.ts +0 -27
  76. package/sdga-ui/src/app/(home)/layout.tsx +0 -6
  77. package/sdga-ui/src/app/(home)/page.tsx +0 -202
  78. package/sdga-ui/src/app/api/search/route.ts +0 -7
  79. package/sdga-ui/src/app/docs/[[...slug]]/page.tsx +0 -54
  80. package/sdga-ui/src/app/docs/layout.tsx +0 -11
  81. package/sdga-ui/src/app/global.css +0 -3
  82. package/sdga-ui/src/app/layout.tsx +0 -25
  83. package/sdga-ui/src/app/llms-full.txt/route.ts +0 -10
  84. package/sdga-ui/src/app/og/docs/[...slug]/route.tsx +0 -34
  85. package/sdga-ui/src/app/sdga-scoped.css +0 -7
  86. package/sdga-ui/src/components/sdga-preview.tsx +0 -105
  87. package/sdga-ui/src/lib/layout.shared.tsx +0 -9
  88. package/sdga-ui/src/lib/source.ts +0 -27
  89. package/sdga-ui/src/mdx-components.tsx +0 -9
  90. package/sdga-ui/tsconfig.json +0 -46
@@ -1,289 +0,0 @@
1
- {
2
- "app": {
3
- "title": "SDGA Component UI",
4
- "tagline": "Component Library",
5
- "version": "v0.0.1"
6
- },
7
- "nav": {
8
- "getting_started": "Getting Started",
9
- "components": "Components",
10
- "layout": "Layout",
11
- "home": "Home",
12
- "alerts": "Alerts",
13
- "buttons": "Buttons",
14
- "cards": "Cards",
15
- "forms": "Forms",
16
- "tables": "Tables",
17
- "toasts": "Toasts",
18
- "links": "Links",
19
- "header": "Header",
20
- "footer": "Footer",
21
- "contexts": "Contexts",
22
- "utilities": "Utilities",
23
- "all_components": "All Components"
24
- },
25
- "common": {
26
- "toggle_menu": "Toggle Menu",
27
- "toggle_language": "العربية",
28
- "close": "Close"
29
- },
30
- "home": {
31
- "title": "SDGA Design System",
32
- "subtitle": "Complete Bootstrap 5.3 components styled with SDGA theme",
33
- "alerts_desc": "Alert messages with various states",
34
- "buttons_desc": "Interactive button components",
35
- "cards_desc": "Content cards with icons and actions",
36
- "forms_desc": "Input fields and form controls",
37
- "tables_desc": "Data tables with sorting",
38
- "toasts_desc": "Toast notifications with actions",
39
- "utilities_desc": "Colors, shadows, and spacing"
40
- },
41
- "alerts": {
42
- "title": "Alerts",
43
- "subtitle": "Bootstrap alert components styled with SDGA theme",
44
- "section_variants": "Alert Variants",
45
- "section_dismissible": "Dismissible Alert",
46
- "primary": "Primary!",
47
- "primary_text": "This is a primary alert with SDGA green color.",
48
- "secondary": "Secondary!",
49
- "secondary_text": "This is a secondary alert with SDGA gold color.",
50
- "success": "Success!",
51
- "success_text": "Your action was completed successfully.",
52
- "danger": "Danger!",
53
- "danger_text": "There was an error processing your request.",
54
- "warning": "Warning!",
55
- "warning_text": "Please review your input before proceeding.",
56
- "info": "Info!",
57
- "info_text": "Here's some helpful information for you.",
58
- "lavender": "Lavender!",
59
- "lavender_text": "This is a custom lavender alert variant.",
60
- "neutral": "Neutral!",
61
- "neutral_text": "This is a neutral informational message.",
62
- "dismissible_title": "Holy guacamole!",
63
- "dismissible_text": "You should check in on some of those fields below."
64
- },
65
- "buttons": {
66
- "title": "Buttons",
67
- "subtitle": "Bootstrap button components styled with SDGA theme",
68
- "section_solid": "Solid Buttons",
69
- "section_outline": "Outline Buttons",
70
- "section_sizes": "Button Sizes",
71
- "section_states": "Button States",
72
- "section_icons": "Buttons with Icons",
73
- "section_icon_only": "Icon-Only Buttons",
74
- "section_dropdown": "Dropdown Buttons",
75
- "primary": "Primary",
76
- "neutral": "Neutral",
77
- "secondary": "Secondary",
78
- "danger": "Danger",
79
- "large": "Large button",
80
- "default": "Default button",
81
- "small": "Small button",
82
- "extra_small": "Extra small",
83
- "normal": "Normal",
84
- "active": "Active",
85
- "disabled": "Disabled",
86
- "download": "Download",
87
- "upload": "Upload",
88
- "edit": "Edit",
89
- "delete": "Delete",
90
- "save": "Save",
91
- "search": "Search",
92
- "settings": "Settings",
93
- "add": "Add",
94
- "next": "Next",
95
- "previous": "Previous",
96
- "dropdown_primary": "Primary Dropdown",
97
- "dropdown_neutral": "Neutral Dropdown",
98
- "dropdown_secondary": "Secondary Dropdown",
99
- "dropdown_danger": "Danger Dropdown",
100
- "dropdown_outline": "Outline Dropdown",
101
- "dropdown_action": "Action",
102
- "dropdown_another": "Another action",
103
- "dropdown_something": "Something else here"
104
- },
105
- "cards": {
106
- "title": "Cards",
107
- "subtitle": "Bootstrap card components styled with SDGA theme",
108
- "section_examples": "Card Examples",
109
- "card_title": "Card Title",
110
- "card_text": "Adjust your preferences and settings here.",
111
- "action": "Action",
112
- "action_secondary": "Action",
113
- "select_card": "Select card",
114
- "expandable_title": "Expandable Card",
115
- "expandable_text": "Click the arrow to expand this card and see more content.",
116
- "expanded_content": "This is additional content that appears when the card is expanded. You can add any content here.",
117
- "detail_1": "Detail item 1",
118
- "detail_2": "Detail item 2",
119
- "detail_3": "Detail item 3",
120
- "cancel": "Cancel",
121
- "go_somewhere": "Go somewhere",
122
- "view_details": "View Details"
123
- },
124
- "forms": {
125
- "title": "Forms",
126
- "subtitle": "Bootstrap form components styled with SDGA theme",
127
- "checkboxes": "Checkboxes",
128
- "checkbox_default": "Default checkbox",
129
- "checkbox_checked": "Checked checkbox",
130
- "checkbox_disabled": "Disabled checkbox",
131
- "checkbox_disabled_checked": "Disabled checked checkbox",
132
- "radios": "Radios",
133
- "radio_default": "Default radio",
134
- "radio_second": "Second default radio",
135
- "radio_disabled": "Disabled radio",
136
- "radio_disabled_checked": "Disabled checked radio",
137
- "switches": "Switches",
138
- "switch_default": "Default switch",
139
- "switch_disabled": "Disabled switch",
140
- "switch_checked": "Checked switch",
141
- "text_inputs": "Text Inputs",
142
- "select": "Select",
143
- "select_default": "Open this select menu",
144
- "select_option_1": "One",
145
- "select_option_2": "Two",
146
- "select_option_3": "Three",
147
- "range": "Range",
148
- "input_sizes": "Input Sizes",
149
- "large_input": "Large input",
150
- "default_input": "Default input",
151
- "small_input": "Small input",
152
- "actions": "Actions",
153
- "submit": "Submit",
154
- "reset": "Reset"
155
- },
156
- "tables": {
157
- "title": "Tables",
158
- "subtitle": "Bootstrap table components styled with SDGA theme",
159
- "section_default": "Default Table",
160
- "section_striped": "Striped & Hoverable Table",
161
- "header_name": "Name",
162
- "header_email": "Email",
163
- "header_role": "Role",
164
- "header_status": "Status"
165
- },
166
- "toasts": {
167
- "title": "Toasts",
168
- "subtitle": "Bootstrap toast notifications styled with SDGA theme",
169
- "section_basic": "Basic Toasts",
170
- "section_with_footer": "Toasts with Footer",
171
- "section_variants": "All Toast Variants",
172
- "show_all": "Show All Toasts",
173
- "primary": "Primary Toast",
174
- "primary_text": "This is a primary toast message with additional information.",
175
- "secondary": "Secondary Toast",
176
- "secondary_text": "This is a secondary toast message with additional information.",
177
- "success": "Success Toast",
178
- "success_text": "Your action has been completed successfully!",
179
- "danger": "Danger Toast",
180
- "danger_text": "An error occurred. Please try again.",
181
- "warning": "Warning Toast",
182
- "warning_text": "Please review this information carefully.",
183
- "info": "Information Toast",
184
- "info_text": "Here's some helpful information for you.",
185
- "lavender": "Lavender Toast",
186
- "lavender_text": "This is a special lavender notification.",
187
- "neutral": "Neutral Toast",
188
- "neutral_text": "This is a neutral notification message.",
189
- "action": "Action",
190
- "dismiss": "Dismiss"
191
- },
192
- "utilities": {
193
- "title": "Utilities",
194
- "subtitle": "Bootstrap utility classes styled with SDGA theme",
195
- "section_colors": "Color Utilities"
196
- },
197
- "bootstrap": {
198
- "title": "Bootstrap 5.3 Components Showcase",
199
- "subtitle": "Complete demonstration of all Bootstrap components styled with SDGA theme"
200
- },
201
- "links": {
202
- "title": "Links",
203
- "subtitle": "Bootstrap link utilities and custom link styles",
204
- "section_basic": "Basic Link Colors",
205
- "section_underline": "Underline Utilities",
206
- "section_hover": "Hover States",
207
- "section_offset": "Underline Offset",
208
- "section_icons": "Links with Icons",
209
- "section_custom": "Custom Link Styles",
210
- "primary_link": "Primary link",
211
- "secondary_link": "Secondary link",
212
- "success_link": "Success link",
213
- "danger_link": "Danger link",
214
- "warning_link": "Warning link",
215
- "info_link": "Info link",
216
- "neutral_link": "Neutral link",
217
- "oncolor_link": "Link on colored background",
218
- "disabled_link": "Disabled link",
219
- "underline_link": "Link with underline",
220
- "no_underline": "Link without underline",
221
- "underline_25": "Link with 25% underline opacity",
222
- "underline_50": "Link with 50% underline opacity",
223
- "underline_75": "Link with 75% underline opacity",
224
- "underline_100": "Link with 100% underline opacity",
225
- "hover_underline": "Underline on hover",
226
- "hover_remove": "Remove underline on hover",
227
- "offset_1": "Link with 1px offset",
228
- "offset_2": "Link with 2px offset",
229
- "offset_3": "Link with 3px offset",
230
- "link_with_icon": "Link with icon",
231
- "external_link": "External link",
232
- "arrow_link": "Link with arrow",
233
- "subtle_link": "Subtle link style",
234
- "bold_link": "Bold link style",
235
- "decorated_link": "Animated underline link"
236
- },
237
- "header": {
238
- "title": "Header",
239
- "subtitle": "Responsive header component with navigation and branding",
240
- "section_default": "Default Header",
241
- "section_variants": "Header Variants"
242
- },
243
- "footer": {
244
- "title": "Footer",
245
- "subtitle": "Responsive footer component with links and social media",
246
- "section_primary": "Primary Footer (on-primary background)",
247
- "section_secondary": "Secondary Footer (on-secondary background)",
248
- "group_label": "Group Label",
249
- "footer_link": "Footer Link",
250
- "social_media": "Social Media",
251
- "accessibility_tools": "Accessibility Tools",
252
- "all_rights_reserved": "All Rights Reserved For Digital Government Authority © 2024",
253
- "terms_conditions": "Terms and Conditions",
254
- "privacy_policy": "Privacy Policy"
255
- },
256
- "contexts": {
257
- "title": "Contexts",
258
- "subtitle": "Context-aware theming system for adaptive component colors",
259
- "section_intro": "Introduction",
260
- "intro_text": "The context system automatically adapts component colors based on their parent background. Wrap components in context classes to ensure proper contrast and accessibility.",
261
- "section_primary": "Primary Context (on-primary)",
262
- "section_dark": "Dark Context (on-dark)",
263
- "section_danger": "Danger Context (on-danger)",
264
- "section_success": "Success Context (on-success)",
265
- "section_warning": "Warning Context (on-warning)",
266
- "section_light": "Light Context (on-light)",
267
- "section_neutral": "Neutral Context (on-neutral)",
268
- "section_info": "Info Context (on-info)",
269
- "section_lavender": "Lavender Context (on-lavender)",
270
- "section_secondary": "Secondary Context (on-secondary)",
271
- "demo_heading": "Context Demo",
272
- "demo_text": "This content automatically adapts its colors based on the context wrapper.",
273
- "button_primary": "Primary Button",
274
- "button_secondary": "Secondary Button",
275
- "button_outline": "Outline Button",
276
- "link_text": "This is a link",
277
- "link_primary": "Primary Link",
278
- "link_neutral": "Neutral Link"
279
- },
280
- "code": {
281
- "show": "Show Code",
282
- "hide": "Hide Code",
283
- "copy": "Copy Code",
284
- "copied": "Copied!",
285
- "html": "HTML",
286
- "ts": "TypeScript",
287
- "scss": "SCSS"
288
- }
289
- }
@@ -1,20 +0,0 @@
1
- import { ApplicationConfig, provideBrowserGlobalErrorListeners, provideZonelessChangeDetection, importProvidersFrom } from '@angular/core';
2
- import { provideRouter } from '@angular/router';
3
- import { provideHttpClient, withFetch } from '@angular/common/http';
4
- import { provideTranslateHttpLoader } from '@ngx-translate/http-loader';
5
-
6
- import { routes } from './app.routes';
7
- import { provideTranslateService } from '@ngx-translate/core';
8
-
9
- export const appConfig: ApplicationConfig = {
10
- providers: [
11
- provideBrowserGlobalErrorListeners(),
12
- provideZonelessChangeDetection(),
13
- provideRouter(routes),
14
- provideHttpClient(withFetch()),
15
- provideTranslateService({
16
- loader: provideTranslateHttpLoader({prefix:'./i18n/', suffix:'.json'}),
17
- fallbackLang: 'en'
18
- })
19
- ]
20
- };
@@ -1,52 +0,0 @@
1
- <div class="app-layout" [class.sidebar-collapsed]="!sidebarOpen()">
2
- <!-- Sidebar -->
3
- <aside class="sidebar">
4
- <div class="sidebar-header">
5
- <h1 class="logo">SDGA</h1>
6
- <p class="tagline">{{ 'app.tagline' | translate }}</p>
7
- </div>
8
-
9
- <nav class="sidebar-nav">
10
- @for (group of menuItems; track group.groupKey) {
11
- <div class="nav-group">
12
- <h3 class="nav-group-title">{{ group.groupKey | translate }}</h3>
13
- <ul class="nav-list">
14
- @for (item of group.items; track item.id) {
15
- <li
16
- class="nav-item"
17
- [class.active]="router.url === item.route"
18
- (click)="navigateTo(item.route)"
19
- >
20
- <span class="nav-icon">{{ item.icon }}</span>
21
- <span class="nav-label">{{ item.labelKey | translate }}</span>
22
- </li>
23
- }
24
- </ul>
25
- </div>
26
- }
27
- </nav>
28
-
29
- <div class="sidebar-footer">
30
- <p class="version">v{{ version }}</p>
31
- </div>
32
- </aside>
33
-
34
- <!-- Main Content -->
35
- <main class="main-content">
36
- <header class="top-bar">
37
- <button class="menu-toggle" (click)="toggleSidebar()" [attr.aria-label]="'common.toggle_menu' | translate">
38
- <span class="hamburger">☰</span>
39
- </button>
40
- <h2 class="page-title">{{ 'app.title' | translate }}</h2>
41
- <div class="top-bar-actions">
42
- <button class="btn btn-sm btn-outline-primary" (click)="toggleLanguage()" [attr.aria-label]="'common.toggle_language' | translate">
43
- {{ 'common.toggle_language' | translate }}
44
- </button>
45
- </div>
46
- </header>
47
-
48
- <div class="content-area">
49
- <router-outlet />
50
- </div>
51
- </main>
52
- </div>
@@ -1,49 +0,0 @@
1
- import { Routes } from '@angular/router';
2
-
3
- export const routes: Routes = [
4
- {
5
- path: '',
6
- redirectTo: 'home',
7
- pathMatch: 'full'
8
- },
9
- {
10
- path: 'home',
11
- loadComponent: () => import('./views/home/home.component').then(m => m.HomeComponent)
12
- },
13
- {
14
- path: 'alerts',
15
- loadComponent: () => import('./views/alerts/alerts.component').then(m => m.AlertsComponent)
16
- },
17
- {
18
- path: 'buttons',
19
- loadComponent: () => import('./views/buttons/buttons.component').then(m => m.ButtonsComponent)
20
- },
21
- {
22
- path: 'cards',
23
- loadComponent: () => import('./views/cards/cards.component').then(m => m.CardsComponent)
24
- },
25
- {
26
- path: 'forms',
27
- loadComponent: () => import('./views/forms/forms.component').then(m => m.FormsComponent)
28
- },
29
- {
30
- path: 'tables',
31
- loadComponent: () => import('./views/tables/tables.component').then(m => m.TablesComponent)
32
- },
33
- {
34
- path: 'toasts',
35
- loadComponent: () => import('./views/toasts/toasts.component').then(m => m.ToastsComponent)
36
- },
37
- {
38
- path: 'links',
39
- loadComponent: () => import('./views/links/links.component').then(m => m.LinksComponent)
40
- },
41
- {
42
- path: 'header',
43
- loadComponent: () => import('./views/header/header').then(m => m.Header)
44
- },
45
- {
46
- path: 'footer',
47
- loadComponent: () => import('./views/footer/footer').then(m => m.Footer)
48
- }
49
- ];