@metropolle/design-system 1.0.0-beta.2 → 1.0.0-beta.2025.10.2.18.1677567

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 (52) hide show
  1. package/README.md +1 -0
  2. package/dist/css/compat/back.css +466 -0
  3. package/dist/css/components.css +1182 -2
  4. package/dist/css/mermaid.css +163 -0
  5. package/dist/css/tokens.css +53 -0
  6. package/dist/react/components/react/DataTable/DataTable.d.ts +4 -0
  7. package/dist/react/components/react/DataTable/DataTable.d.ts.map +1 -0
  8. package/dist/react/components/react/DataTable/TableHeader.d.ts +4 -0
  9. package/dist/react/components/react/DataTable/TableHeader.d.ts.map +1 -0
  10. package/dist/react/components/react/DataTable/TableRow.d.ts +4 -0
  11. package/dist/react/components/react/DataTable/TableRow.d.ts.map +1 -0
  12. package/dist/react/components/react/DataTable/examples.d.ts +28 -0
  13. package/dist/react/components/react/DataTable/examples.d.ts.map +1 -0
  14. package/dist/react/components/react/DataTable/index.d.ts +7 -0
  15. package/dist/react/components/react/DataTable/index.d.ts.map +1 -0
  16. package/dist/react/components/react/DataTable/migration-example.d.ts +46 -0
  17. package/dist/react/components/react/DataTable/migration-example.d.ts.map +1 -0
  18. package/dist/react/components/react/DataTable/renderers.d.ts +24 -0
  19. package/dist/react/components/react/DataTable/renderers.d.ts.map +1 -0
  20. package/dist/react/components/react/DataTable/types.d.ts +57 -0
  21. package/dist/react/components/react/DataTable/types.d.ts.map +1 -0
  22. package/dist/react/components/react/Modal/ConfirmDialog.d.ts +17 -0
  23. package/dist/react/components/react/Modal/ConfirmDialog.d.ts.map +1 -0
  24. package/dist/react/components/react/Modal/Modal.d.ts +12 -0
  25. package/dist/react/components/react/Modal/Modal.d.ts.map +1 -0
  26. package/dist/react/components/react/Modal/ModalBody.d.ts +9 -0
  27. package/dist/react/components/react/Modal/ModalBody.d.ts.map +1 -0
  28. package/dist/react/components/react/Modal/ModalFooter.d.ts +8 -0
  29. package/dist/react/components/react/Modal/ModalFooter.d.ts.map +1 -0
  30. package/dist/react/components/react/Modal/ModalHeader.d.ts +11 -0
  31. package/dist/react/components/react/Modal/ModalHeader.d.ts.map +1 -0
  32. package/dist/react/components/react/Modal/index.d.ts +6 -0
  33. package/dist/react/components/react/Modal/index.d.ts.map +1 -0
  34. package/dist/react/components/react/Select/Select.d.ts +20 -0
  35. package/dist/react/components/react/Select/Select.d.ts.map +1 -0
  36. package/dist/react/components/react/Select/index.d.ts +2 -0
  37. package/dist/react/components/react/Select/index.d.ts.map +1 -0
  38. package/dist/react/components/react/ThemeToggle/ThemeToggle.d.ts +28 -0
  39. package/dist/react/components/react/ThemeToggle/ThemeToggle.d.ts.map +1 -0
  40. package/dist/react/components/react/ThemeToggle/index.d.ts +3 -0
  41. package/dist/react/components/react/ThemeToggle/index.d.ts.map +1 -0
  42. package/dist/react/components/react/Typography/Typography.d.ts.map +1 -1
  43. package/dist/react/components/react/index.d.ts +11 -0
  44. package/dist/react/components/react/index.d.ts.map +1 -1
  45. package/dist/react/index.d.ts +11 -0
  46. package/dist/react/index.esm.js +827 -4
  47. package/dist/react/index.esm.js.map +1 -1
  48. package/dist/react/index.js +844 -2
  49. package/dist/react/index.js.map +1 -1
  50. package/dist/tokens/index.d.ts +19 -24
  51. package/dist/tokens/index.js +55 -2
  52. package/package.json +21 -13
@@ -0,0 +1,163 @@
1
+ /* Metropolle Design System – Mermaid Diagram Styling */
2
+
3
+ /*
4
+ Provides palette-aware theming for Mermaid diagrams that matches the
5
+ architecture documentation reference. Consumers should pair these styles
6
+ with the class definitions exported in documentation snippets (ex: pastelBlue,
7
+ accentOrange) to ensure consistent fill and typography across projects.
8
+ */
9
+
10
+ :root {
11
+ --mds-mermaid-label-dark: var(--mds-color-neutral-900, #0f172a);
12
+ --mds-mermaid-label-light: var(--mds-color-neutral-50, #f8fafc);
13
+ --mds-mermaid-node-font-weight: 600;
14
+ --mds-mermaid-edge-font-weight: 500;
15
+ }
16
+
17
+ /* Base container styling – glass morphism aligned with platform visuals */
18
+ html[data-theme='dark'] .mermaid {
19
+ background: rgba(255, 255, 255, 0.05) !important;
20
+ border-radius: var(--mds-border-radius-lg, 12px);
21
+ padding: var(--mds-space-4, 1rem);
22
+ backdrop-filter: blur(10px);
23
+ border: 1px solid rgba(255, 255, 255, 0.1);
24
+ margin: var(--mds-space-4, 1rem) 0;
25
+ }
26
+
27
+ html[data-theme='light'] .mermaid {
28
+ background: rgba(255, 255, 255, 0.7) !important;
29
+ border-radius: var(--mds-border-radius-lg, 12px);
30
+ padding: var(--mds-space-4, 1rem);
31
+ backdrop-filter: blur(10px);
32
+ border: 1px solid rgba(0, 0, 0, 0.1);
33
+ margin: var(--mds-space-4, 1rem) 0;
34
+ box-shadow: var(--mds-shadow-md, 0 4px 6px -1px rgba(0, 0, 0, 0.1));
35
+ }
36
+
37
+ /* Default typography settings for nodes and clusters */
38
+ html[data-theme='dark'] .mermaid :is(g.node, g.cluster) {
39
+ --mds-mermaid-node-color: var(--mds-mermaid-label-dark);
40
+ --mds-mermaid-node-weight-current: var(--mds-mermaid-node-font-weight);
41
+ }
42
+
43
+ /* Switch to light foreground when nodes use strong accent fills */
44
+ html[data-theme='dark'] .mermaid :is(g.node, g.cluster):has(> :is(rect, polygon, ellipse, circle, path)[fill="#00bcd4" i]),
45
+ html[data-theme='dark'] .mermaid :is(g.node, g.cluster):has(> :is(rect, polygon, ellipse, circle, path)[fill="#1565c0" i]),
46
+ html[data-theme='dark'] .mermaid :is(g.node, g.cluster):has(> :is(rect, polygon, ellipse, circle, path)[fill="#1976d2" i]),
47
+ html[data-theme='dark'] .mermaid :is(g.node, g.cluster):has(> :is(rect, polygon, ellipse, circle, path)[fill="#2196f3" i]),
48
+ html[data-theme='dark'] .mermaid :is(g.node, g.cluster):has(> :is(rect, polygon, ellipse, circle, path)[fill="#34a853" i]),
49
+ html[data-theme='dark'] .mermaid :is(g.node, g.cluster):has(> :is(rect, polygon, ellipse, circle, path)[fill="#388e3c" i]),
50
+ html[data-theme='dark'] .mermaid :is(g.node, g.cluster):has(> :is(rect, polygon, ellipse, circle, path)[fill="#3b82f6" i]),
51
+ html[data-theme='dark'] .mermaid :is(g.node, g.cluster):has(> :is(rect, polygon, ellipse, circle, path)[fill="#3f48cc" i]),
52
+ html[data-theme='dark'] .mermaid :is(g.node, g.cluster):has(> :is(rect, polygon, ellipse, circle, path)[fill="#4285f4" i]),
53
+ html[data-theme='dark'] .mermaid :is(g.node, g.cluster):has(> :is(rect, polygon, ellipse, circle, path)[fill="#45b7d1" i]),
54
+ html[data-theme='dark'] .mermaid :is(g.node, g.cluster):has(> :is(rect, polygon, ellipse, circle, path)[fill="#4b612c" i]),
55
+ html[data-theme='dark'] .mermaid :is(g.node, g.cluster):has(> :is(rect, polygon, ellipse, circle, path)[fill="#4caf50" i]),
56
+ html[data-theme='dark'] .mermaid :is(g.node, g.cluster):has(> :is(rect, polygon, ellipse, circle, path)[fill="#4ecdc4" i]),
57
+ html[data-theme='dark'] .mermaid :is(g.node, g.cluster):has(> :is(rect, polygon, ellipse, circle, path)[fill="#607d8b" i]),
58
+ html[data-theme='dark'] .mermaid :is(g.node, g.cluster):has(> :is(rect, polygon, ellipse, circle, path)[fill="#627eea" i]),
59
+ html[data-theme='dark'] .mermaid :is(g.node, g.cluster):has(> :is(rect, polygon, ellipse, circle, path)[fill="#673ab7" i]),
60
+ html[data-theme='dark'] .mermaid :is(g.node, g.cluster):has(> :is(rect, polygon, ellipse, circle, path)[fill="#689f38" i]),
61
+ html[data-theme='dark'] .mermaid :is(g.node, g.cluster):has(> :is(rect, polygon, ellipse, circle, path)[fill="#759c3e" i]),
62
+ html[data-theme='dark'] .mermaid :is(g.node, g.cluster):has(> :is(rect, polygon, ellipse, circle, path)[fill="#795548" i]),
63
+ html[data-theme='dark'] .mermaid :is(g.node, g.cluster):has(> :is(rect, polygon, ellipse, circle, path)[fill="#7b1fa2" i]),
64
+ html[data-theme='dark'] .mermaid :is(g.node, g.cluster):has(> :is(rect, polygon, ellipse, circle, path)[fill="#96ceb4" i]),
65
+ html[data-theme='dark'] .mermaid :is(g.node, g.cluster):has(> :is(rect, polygon, ellipse, circle, path)[fill="#9c27b0" i]),
66
+ html[data-theme='dark'] .mermaid :is(g.node, g.cluster):has(> :is(rect, polygon, ellipse, circle, path)[fill="#c2185b" i]),
67
+ html[data-theme='dark'] .mermaid :is(g.node, g.cluster):has(> :is(rect, polygon, ellipse, circle, path)[fill="#dd344c" i]),
68
+ html[data-theme='dark'] .mermaid :is(g.node, g.cluster):has(> :is(rect, polygon, ellipse, circle, path)[fill="#e91e63" i]),
69
+ html[data-theme='dark'] .mermaid :is(g.node, g.cluster):has(> :is(rect, polygon, ellipse, circle, path)[fill="#f44336" i]),
70
+ html[data-theme='dark'] .mermaid :is(g.node, g.cluster):has(> :is(rect, polygon, ellipse, circle, path)[fill="#f57c00" i]),
71
+ html[data-theme='dark'] .mermaid :is(g.node, g.cluster):has(> :is(rect, polygon, ellipse, circle, path)[fill="#f7931a" i]),
72
+ html[data-theme='dark'] .mermaid :is(g.node, g.cluster):has(> :is(rect, polygon, ellipse, circle, path)[fill="#ff5722" i]),
73
+ html[data-theme='dark'] .mermaid :is(g.node, g.cluster):has(> :is(rect, polygon, ellipse, circle, path)[fill="#ff6b6b" i]),
74
+ html[data-theme='dark'] .mermaid :is(g.node, g.cluster):has(> :is(rect, polygon, ellipse, circle, path)[fill="#ff9800" i]) {
75
+ --mds-mermaid-node-color: var(--mds-mermaid-label-light);
76
+ }
77
+
78
+ /* Apply the computed foreground colour to all supported Mermaid label types */
79
+ html[data-theme='dark'] .mermaid :is(g.node, g.cluster) g.label text,
80
+ html[data-theme='dark'] .mermaid :is(g.node, g.cluster) g.label tspan {
81
+ fill: var(--mds-mermaid-node-color) !important;
82
+ font-weight: var(--mds-mermaid-node-weight-current);
83
+ }
84
+
85
+ html[data-theme='dark'] .mermaid :is(g.node, g.cluster) g.label foreignObject * {
86
+ color: var(--mds-mermaid-node-color) !important;
87
+ font-weight: var(--mds-mermaid-node-weight-current);
88
+ }
89
+
90
+ /* Preserve lighter typography for edge labels so they remain legible */
91
+ html[data-theme='dark'] .mermaid .edgeLabel text,
92
+ html[data-theme='dark'] .mermaid .edgeLabel tspan {
93
+ fill: var(--ifm-font-color-base, #e5e7eb) !important;
94
+ font-weight: var(--mds-mermaid-edge-font-weight);
95
+ }
96
+
97
+ /* Light theme keeps default dark text but enforces consistent weight */
98
+ html[data-theme='light'] .mermaid :is(g.node, g.cluster) g.label text,
99
+ html[data-theme='light'] .mermaid :is(g.node, g.cluster) g.label tspan,
100
+ html[data-theme='light'] .mermaid :is(g.node, g.cluster) g.label foreignObject * {
101
+ font-weight: var(--mds-mermaid-node-font-weight, 600);
102
+ }
103
+
104
+ /*
105
+ * Metropolle Official Mermaid Diagram Classes
106
+ * Based on Arquitetura.md color standards - compatible with light/dark themes
107
+ */
108
+
109
+ /* Frontend/UI Components */
110
+ .mds-frontend {
111
+ fill: #e3f2fd;
112
+ stroke: #1976d2;
113
+ stroke-width: 2px;
114
+ color: #000;
115
+ }
116
+
117
+ /* AWS/Infrastructure Components */
118
+ .mds-aws {
119
+ fill: #fff3e0;
120
+ stroke: #f57c00;
121
+ stroke-width: 2px;
122
+ color: #000;
123
+ }
124
+
125
+ /* Runtime/Process Components */
126
+ .mds-runtime {
127
+ fill: #f3e5f5;
128
+ stroke: #8e24aa;
129
+ stroke-width: 2px;
130
+ color: #000;
131
+ }
132
+
133
+ /* Storage/Data Components */
134
+ .mds-storage {
135
+ fill: #e8f5e8;
136
+ stroke: #388e3c;
137
+ stroke-width: 2px;
138
+ color: #000;
139
+ }
140
+
141
+ /* Security/Authentication Components */
142
+ .mds-security {
143
+ fill: #ffebee;
144
+ stroke: #d32f2f;
145
+ stroke-width: 2px;
146
+ color: #000;
147
+ }
148
+
149
+ /* Results/Output Components */
150
+ .mds-result {
151
+ fill: #fce4ec;
152
+ stroke: #c2185b;
153
+ stroke-width: 2px;
154
+ color: #000;
155
+ }
156
+
157
+ /* Legacy compatibility aliases */
158
+ .pastelBlue { fill: #e3f2fd; stroke: #1976d2; stroke-width: 2px; color: #000; }
159
+ .accentOrange { fill: #fff3e0; stroke: #f57c00; stroke-width: 2px; color: #000; }
160
+ .pastelPurple { fill: #f3e5f5; stroke: #8e24aa; stroke-width: 2px; color: #000; }
161
+ .pastelGreen { fill: #e8f5e8; stroke: #388e3c; stroke-width: 2px; color: #000; }
162
+ .accentRed { fill: #ffebee; stroke: #d32f2f; stroke-width: 2px; color: #000; }
163
+ .pastelPink { fill: #fce4ec; stroke: #c2185b; stroke-width: 2px; color: #000; }
@@ -1,6 +1,25 @@
1
1
  :root {
2
2
  /* Metropolle Design System Tokens */
3
3
 
4
+ /* COLORS */
5
+ --mds-colors-color-brand-primary: #0055FF;
6
+ --mds-colors-color-brand-secondary: #FF9900;
7
+ --mds-colors-color-brand-neutral: #333333;
8
+ --mds-colors-color-semantic-success: #10B981;
9
+ --mds-colors-color-semantic-warning: #F59E0B;
10
+ --mds-colors-color-semantic-error: #EF4444;
11
+ --mds-colors-color-semantic-info: #3B82F6;
12
+ --mds-colors-color-background-primary: linear-gradient(135deg, #0a0a0a 0%, #1a1a1a 50%, #2a2a2a 100%);
13
+ --mds-colors-color-background-secondary: rgba(255, 255, 255, 0.05);
14
+ --mds-colors-color-background-glass-light: rgba(255, 255, 255, 0.15);
15
+ --mds-colors-color-background-glass-dark: rgba(60, 60, 60, 0.8);
16
+ --mds-colors-color-text-primary: #ffffff;
17
+ --mds-colors-color-text-secondary: rgba(255, 255, 255, 0.7);
18
+ --mds-colors-color-text-muted: rgba(255, 255, 255, 0.5);
19
+ --mds-colors-color-border-light: rgba(255, 255, 255, 0.1);
20
+ --mds-colors-color-border-medium: rgba(255, 255, 255, 0.2);
21
+ --mds-colors-color-border-strong: rgba(255, 255, 255, 0.3);
22
+
4
23
  /* TYPOGRAPHY */
5
24
  --mds-typography-fontFamily-brand: Helvetica, Inter Tight, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol';
6
25
  --mds-typography-fontFamily-mono: 'SF Mono', Monaco, 'Inconsolata', 'Roboto Mono', 'Source Code Pro', monospace;
@@ -33,6 +52,40 @@
33
52
  --mds-spacing-xl: 2rem;
34
53
  --mds-spacing-2xl: 3rem;
35
54
  --mds-spacing-3xl: 4rem;
55
+ --mds-spacing-borderRadius-sm: 0.25rem;
56
+ --mds-spacing-borderRadius-md: 0.5rem;
57
+ --mds-spacing-borderRadius-lg: 1rem;
58
+ --mds-spacing-borderRadius-xl: 1.25rem;
59
+ --mds-spacing-borderRadius-full: 50%;
60
+ --mds-spacing-shadow-glass-light: 0 8px 32px rgba(0, 0, 0, 0.1);
61
+ --mds-spacing-shadow-glass-lightHover: 0 12px 40px rgba(0, 0, 0, 0.15);
62
+ --mds-spacing-shadow-glass-dark: 0 8px 32px rgba(0, 0, 0, 0.3);
63
+ --mds-spacing-shadow-glass-darkHover: 0 12px 40px rgba(0, 0, 0, 0.4);
64
+ --mds-spacing-shadow-sm: 0 1px 2px rgba(0, 0, 0, 0.05);
65
+ --mds-spacing-shadow-md: 0 4px 6px rgba(0, 0, 0, 0.07);
66
+ --mds-spacing-shadow-lg: 0 10px 15px rgba(0, 0, 0, 0.1);
67
+ --mds-spacing-blur-glass-default: 20px;
68
+ --mds-spacing-blur-glass-light: 15px;
69
+ --mds-spacing-blur-glass-heavy: 30px;
70
+
71
+ /* EFFECTS */
72
+ --mds-effects-transition-fast: 0.15s ease;
73
+ --mds-effects-transition-normal: 0.3s ease;
74
+ --mds-effects-transition-slow: 0.5s ease;
75
+ --mds-effects-animation-fadeIn: fadeIn 0.3s ease-in-out;
76
+ --mds-effects-animation-slideUp: slideUp 0.3s ease-out;
77
+ --mds-effects-animation-bounce: bounce 0.6s ease-in-out;
78
+ --mds-effects-backdrop-glass-filter: blur(var(--blur, 20px));
79
+ --mds-effects-backdrop-glass-webkitFilter: blur(var(--blur, 20px));
80
+ --mds-effects-transform-hoverUp: translateY(-2px);
81
+ --mds-effects-transform-scale-hover: scale(1.02);
82
+ --mds-effects-transform-scale-active: scale(0.98);
83
+ --mds-effects-opacity-glass-light-default: 0.15;
84
+ --mds-effects-opacity-glass-light-hover: 0.2;
85
+ --mds-effects-opacity-glass-dark-default: 0.8;
86
+ --mds-effects-opacity-glass-dark-hover: 0.85;
87
+ --mds-effects-opacity-disabled: 0.5;
88
+ --mds-effects-opacity-muted: 0.7;
36
89
 
37
90
  }
38
91
 
@@ -0,0 +1,4 @@
1
+ import React from 'react';
2
+ import { DataTableProps } from './types';
3
+ export declare const DataTable: React.FC<DataTableProps>;
4
+ //# sourceMappingURL=DataTable.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DataTable.d.ts","sourceRoot":"","sources":["../../../../../src/components/react/DataTable/DataTable.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA4B,MAAM,OAAO,CAAC;AACjD,OAAO,EAAE,cAAc,EAAe,MAAM,SAAS,CAAC;AAItD,eAAO,MAAM,SAAS,EAAE,KAAK,CAAC,EAAE,CAAC,cAAc,CAqM9C,CAAC"}
@@ -0,0 +1,4 @@
1
+ import React from 'react';
2
+ import { TableHeaderProps } from './types';
3
+ export declare const TableHeader: React.FC<TableHeaderProps>;
4
+ //# sourceMappingURL=TableHeader.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TableHeader.d.ts","sourceRoot":"","sources":["../../../../../src/components/react/DataTable/TableHeader.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAC;AAE3C,eAAO,MAAM,WAAW,EAAE,KAAK,CAAC,EAAE,CAAC,gBAAgB,CA4DlD,CAAC"}
@@ -0,0 +1,4 @@
1
+ import React from 'react';
2
+ import { TableRowProps } from './types';
3
+ export declare const TableRow: React.FC<TableRowProps>;
4
+ //# sourceMappingURL=TableRow.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TableRow.d.ts","sourceRoot":"","sources":["../../../../../src/components/react/DataTable/TableRow.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,aAAa,EAAe,MAAM,SAAS,CAAC;AAErD,eAAO,MAAM,QAAQ,EAAE,KAAK,CAAC,EAAE,CAAC,aAAa,CAqH5C,CAAC"}
@@ -0,0 +1,28 @@
1
+ import { TableColumn, TableAction } from './types';
2
+ export declare const parametersTableConfig: {
3
+ columns: TableColumn[];
4
+ actions: TableAction[];
5
+ };
6
+ export declare const regionsTableConfig: {
7
+ columns: TableColumn[];
8
+ actions: TableAction[];
9
+ };
10
+ export declare const countriesTableConfig: {
11
+ columns: TableColumn[];
12
+ actions: TableAction[];
13
+ };
14
+ export declare const auditLogTableConfig: {
15
+ columns: TableColumn[];
16
+ };
17
+ export declare const statesTableConfig: {
18
+ columns: TableColumn[];
19
+ actions: TableAction[];
20
+ };
21
+ export declare const citiesTableConfig: {
22
+ columns: TableColumn[];
23
+ actions: TableAction[];
24
+ };
25
+ export declare const getTableConfig: (type: string) => {
26
+ columns: TableColumn[];
27
+ };
28
+ //# sourceMappingURL=examples.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"examples.d.ts","sourceRoot":"","sources":["../../../../../src/components/react/DataTable/examples.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAInD,eAAO,MAAM,qBAAqB;aAyB3B,WAAW,EAAE;aAkBb,WAAW,EAAE;CACnB,CAAC;AAGF,eAAO,MAAM,kBAAkB;aAgCxB,WAAW,EAAE;aAgBb,WAAW,EAAE;CACnB,CAAC;AAGF,eAAO,MAAM,oBAAoB;aAmC1B,WAAW,EAAE;aAeb,WAAW,EAAE;CACnB,CAAC;AAGF,eAAO,MAAM,mBAAmB;aA8DzB,WAAW,EAAE;CACnB,CAAC;AAGF,eAAO,MAAM,iBAAiB;aA0BvB,WAAW,EAAE;aAeb,WAAW,EAAE;CACnB,CAAC;AAGF,eAAO,MAAM,iBAAiB;aAoCvB,WAAW,EAAE;aAeb,WAAW,EAAE;CACnB,CAAC;AAGF,eAAO,MAAM,cAAc,GAAI,MAAM,MAAM;aAxGpC,WAAW,EAAE;CAyHnB,CAAC"}
@@ -0,0 +1,7 @@
1
+ export { DataTable } from './DataTable';
2
+ export { TableHeader } from './TableHeader';
3
+ export { TableRow } from './TableRow';
4
+ export { CellRenderers, ActionIcons } from './renderers';
5
+ export { parametersTableConfig, regionsTableConfig, countriesTableConfig, statesTableConfig, citiesTableConfig, auditLogTableConfig, getTableConfig } from './examples';
6
+ export type { DataTableProps, TableColumn, TableAction, TableRowProps, TableHeaderProps } from './types';
7
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/components/react/DataTable/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AACzD,OAAO,EACL,qBAAqB,EACrB,kBAAkB,EAClB,oBAAoB,EACpB,iBAAiB,EACjB,iBAAiB,EACjB,mBAAmB,EACnB,cAAc,EACf,MAAM,YAAY,CAAC;AACpB,YAAY,EACV,cAAc,EACd,WAAW,EACX,WAAW,EACX,aAAa,EACb,gBAAgB,EACjB,MAAM,SAAS,CAAC"}
@@ -0,0 +1,46 @@
1
+ /**
2
+ * Exemplo de Migração: ParametersTable → DataTable
3
+ *
4
+ * Este arquivo mostra como migrar a tabela de parâmetros existente
5
+ * para usar o novo componente DataTable padronizado.
6
+ */
7
+ import React from 'react';
8
+ interface Parameter {
9
+ name: string;
10
+ value: string;
11
+ type: 'String' | 'SecureString' | 'StringList';
12
+ description: string;
13
+ }
14
+ interface ParametersDataTableProps {
15
+ parameters: Parameter[];
16
+ loading: boolean;
17
+ onEdit: (parameter: Parameter) => void;
18
+ onDelete: (parameter: Parameter) => void;
19
+ deletingParameterName?: string;
20
+ searchTerm?: string;
21
+ }
22
+ export declare const ParametersTableOld: ({ parameters, loading, onEdit, onDelete }: any) => import("react/jsx-runtime").JSX.Element;
23
+ export declare const ParametersDataTable: React.FC<ParametersDataTableProps>;
24
+ export declare const ExampleUsage: () => import("react/jsx-runtime").JSX.Element;
25
+ export {};
26
+ /**
27
+ * VANTAGENS DA MIGRAÇÃO:
28
+ *
29
+ * 1. ✅ Código reduzido: De ~280 linhas para ~50 linhas
30
+ * 2. ✅ Responsividade automática: Mobile/tablet otimizados
31
+ * 3. ✅ Estilos consistentes: Mesmo visual em toda plataforma
32
+ * 4. ✅ Manutenção centralizada: Updates no design system
33
+ * 5. ✅ Acessibilidade: ARIA roles automáticos
34
+ * 6. ✅ Performance: Renderização otimizada
35
+ * 7. ✅ TypeScript: Tipagem completa e IntelliSense
36
+ *
37
+ * PASSOS DA MIGRAÇÃO:
38
+ *
39
+ * 1. Substituir import: ParametersTable → DataTable
40
+ * 2. Configurar columns array com render functions
41
+ * 3. Configurar actions array com handlers
42
+ * 4. Remover código inline de estilo/layout
43
+ * 5. Testar responsividade mobile
44
+ * 6. Remover componente antigo após validação
45
+ */
46
+ //# sourceMappingURL=migration-example.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"migration-example.d.ts","sourceRoot":"","sources":["../../../../../src/components/react/DataTable/migration-example.tsx"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,MAAM,OAAO,CAAC;AAG1B,UAAU,SAAS;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,QAAQ,GAAG,cAAc,GAAG,YAAY,CAAC;IAC/C,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,UAAU,wBAAwB;IAChC,UAAU,EAAE,SAAS,EAAE,CAAC;IACxB,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,EAAE,CAAC,SAAS,EAAE,SAAS,KAAK,IAAI,CAAC;IACvC,QAAQ,EAAE,CAAC,SAAS,EAAE,SAAS,KAAK,IAAI,CAAC;IACzC,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAGD,eAAO,MAAM,kBAAkB,GAAI,2CAA2C,GAAG,4CAehF,CAAC;AAGF,eAAO,MAAM,mBAAmB,EAAE,KAAK,CAAC,EAAE,CAAC,wBAAwB,CAwElE,CAAC;AAGF,eAAO,MAAM,YAAY,+CAqCxB,CAAC;;AAEF;;;;;;;;;;;;;;;;;;;GAmBG"}
@@ -0,0 +1,24 @@
1
+ export declare const CellRenderers: {
2
+ id: (value: any) => import("react/jsx-runtime").JSX.Element;
3
+ name: (value: any) => import("react/jsx-runtime").JSX.Element;
4
+ parameterValue: (value: any, item: any) => import("react/jsx-runtime").JSX.Element;
5
+ badge: (value: any, variant?: "primary" | "success" | "warning" | "danger" | "info") => import("react/jsx-runtime").JSX.Element;
6
+ parameterType: (value: any) => import("react/jsx-runtime").JSX.Element;
7
+ environment: (value: any, item: any) => import("react/jsx-runtime").JSX.Element;
8
+ actionType: (value: any) => import("react/jsx-runtime").JSX.Element;
9
+ date: (value: any) => import("react/jsx-runtime").JSX.Element;
10
+ description: (value: any) => import("react/jsx-runtime").JSX.Element;
11
+ jsonPreview: (value: any) => import("react/jsx-runtime").JSX.Element;
12
+ combined: (mainValue: any, description: any) => import("react/jsx-runtime").JSX.Element;
13
+ combinedWithBadges: (mainValue: any, badges: Array<{
14
+ value: any;
15
+ variant?: string;
16
+ }>) => import("react/jsx-runtime").JSX.Element;
17
+ };
18
+ export declare const ActionIcons: {
19
+ edit: import("react/jsx-runtime").JSX.Element;
20
+ delete: import("react/jsx-runtime").JSX.Element;
21
+ view: import("react/jsx-runtime").JSX.Element;
22
+ loading: import("react/jsx-runtime").JSX.Element;
23
+ };
24
+ //# sourceMappingURL=renderers.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"renderers.d.ts","sourceRoot":"","sources":["../../../../../src/components/react/DataTable/renderers.tsx"],"names":[],"mappings":"AAEA,eAAO,MAAM,aAAa;gBAEZ,GAAG;kBAeD,GAAG;4BAcO,GAAG,QAAQ,GAAG;mBAqBvB,GAAG,YAAW,SAAS,GAAG,SAAS,GAAG,SAAS,GAAG,QAAQ,GAAG,MAAM;2BAO3D,GAAG;yBAOL,GAAG,QAAQ,GAAG;wBAOf,GAAG;kBAOT,GAAG;yBAUI,GAAG;yBAcH,GAAG;0BAoBF,GAAG,eAAe,GAAG;oCAQX,GAAG,UAAU,KAAK,CAAC;QAAC,KAAK,EAAE,GAAG,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAA;KAAC,CAAC;CAYnF,CAAC;AAGF,eAAO,MAAM,WAAW;;;;;CAqBvB,CAAC"}
@@ -0,0 +1,57 @@
1
+ export interface TableColumn {
2
+ key: string;
3
+ label: string;
4
+ width?: string;
5
+ align?: 'left' | 'center' | 'right';
6
+ sortable?: boolean;
7
+ render?: (value: any, item: any, index: number) => React.ReactNode;
8
+ responsive?: {
9
+ mobile?: 'hide' | 'stack' | 'show';
10
+ tablet?: 'hide' | 'stack' | 'show';
11
+ };
12
+ }
13
+ export interface TableAction {
14
+ key: string;
15
+ label: string;
16
+ icon?: React.ReactNode;
17
+ variant?: 'primary' | 'secondary' | 'danger';
18
+ disabled?: (item: any) => boolean;
19
+ loading?: (item: any) => boolean;
20
+ onClick: (item: any) => void;
21
+ }
22
+ export interface DataTableProps {
23
+ data: any[];
24
+ columns: TableColumn[];
25
+ loading?: boolean;
26
+ searchTerm?: string;
27
+ actions?: TableAction[];
28
+ variant?: 'default' | 'compact' | 'audit';
29
+ responsive?: 'stack' | 'scroll' | 'hide-columns';
30
+ onSort?: (column: string, direction: 'asc' | 'desc') => void;
31
+ emptyMessage?: string;
32
+ loadingMessage?: string;
33
+ className?: string;
34
+ style?: React.CSSProperties;
35
+ maxHeight?: string;
36
+ showSearchCount?: boolean;
37
+ rowHover?: boolean;
38
+ striped?: boolean;
39
+ }
40
+ export interface TableRowProps {
41
+ item: any;
42
+ index: number;
43
+ columns: TableColumn[];
44
+ actions?: TableAction[];
45
+ gridTemplate: string;
46
+ isLast: boolean;
47
+ variant: 'default' | 'compact' | 'audit';
48
+ onActionClick: (action: TableAction, item: any) => void;
49
+ }
50
+ export interface TableHeaderProps {
51
+ columns: TableColumn[];
52
+ gridTemplate: string;
53
+ onSort?: (column: string) => void;
54
+ sortColumn?: string;
55
+ sortDirection?: 'asc' | 'desc';
56
+ }
57
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../../src/components/react/DataTable/types.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,WAAW;IAC1B,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,GAAG,QAAQ,GAAG,OAAO,CAAC;IACpC,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,MAAM,CAAC,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,MAAM,KAAK,KAAK,CAAC,SAAS,CAAC;IACnE,UAAU,CAAC,EAAE;QACX,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,GAAG,MAAM,CAAC;QACnC,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,GAAG,MAAM,CAAC;KACpC,CAAC;CACH;AAED,MAAM,WAAW,WAAW;IAC1B,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACvB,OAAO,CAAC,EAAE,SAAS,GAAG,WAAW,GAAG,QAAQ,CAAC;IAC7C,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,GAAG,KAAK,OAAO,CAAC;IAClC,OAAO,CAAC,EAAE,CAAC,IAAI,EAAE,GAAG,KAAK,OAAO,CAAC;IACjC,OAAO,EAAE,CAAC,IAAI,EAAE,GAAG,KAAK,IAAI,CAAC;CAC9B;AAED,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,GAAG,EAAE,CAAC;IACZ,OAAO,EAAE,WAAW,EAAE,CAAC;IACvB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,EAAE,WAAW,EAAE,CAAC;IACxB,OAAO,CAAC,EAAE,SAAS,GAAG,SAAS,GAAG,OAAO,CAAC;IAC1C,UAAU,CAAC,EAAE,OAAO,GAAG,QAAQ,GAAG,cAAc,CAAC;IACjD,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,KAAK,GAAG,MAAM,KAAK,IAAI,CAAC;IAC7D,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;IAC5B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,GAAG,CAAC;IACV,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,WAAW,EAAE,CAAC;IACvB,OAAO,CAAC,EAAE,WAAW,EAAE,CAAC;IACxB,YAAY,EAAE,MAAM,CAAC;IACrB,MAAM,EAAE,OAAO,CAAC;IAChB,OAAO,EAAE,SAAS,GAAG,SAAS,GAAG,OAAO,CAAC;IACzC,aAAa,EAAE,CAAC,MAAM,EAAE,WAAW,EAAE,IAAI,EAAE,GAAG,KAAK,IAAI,CAAC;CACzD;AAED,MAAM,WAAW,gBAAgB;IAC/B,OAAO,EAAE,WAAW,EAAE,CAAC;IACvB,YAAY,EAAE,MAAM,CAAC;IACrB,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;IAClC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,aAAa,CAAC,EAAE,KAAK,GAAG,MAAM,CAAC;CAChC"}
@@ -0,0 +1,17 @@
1
+ import React from 'react';
2
+ export interface ConfirmDialogProps {
3
+ open: boolean;
4
+ onClose: () => void;
5
+ title: string;
6
+ description?: React.ReactNode;
7
+ confirmText?: string;
8
+ cancelText?: string;
9
+ onConfirm: () => void | Promise<void>;
10
+ loading?: boolean;
11
+ tone?: 'warning' | 'danger' | 'info' | 'success';
12
+ icon?: React.ReactNode;
13
+ disableOverlayClose?: boolean;
14
+ }
15
+ export declare function ConfirmDialog({ open, onClose, title, description, confirmText, cancelText, onConfirm, loading, tone, icon, disableOverlayClose }: ConfirmDialogProps): import("react/jsx-runtime").JSX.Element;
16
+ export default ConfirmDialog;
17
+ //# sourceMappingURL=ConfirmDialog.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ConfirmDialog.d.ts","sourceRoot":"","sources":["../../../../../src/components/react/Modal/ConfirmDialog.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,MAAM,OAAO,CAAC;AAI1B,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,OAAO,CAAC;IACd,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC9B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACtC,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,IAAI,CAAC,EAAE,SAAS,GAAG,QAAQ,GAAG,MAAM,GAAG,SAAS,CAAC;IACjD,IAAI,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACvB,mBAAmB,CAAC,EAAE,OAAO,CAAC;CAC/B;AA8BD,wBAAgB,aAAa,CAAC,EAC5B,IAAI,EACJ,OAAO,EACP,KAAK,EACL,WAAW,EACX,WAAyB,EACzB,UAAuB,EACvB,SAAS,EACT,OAAe,EACf,IAAgB,EAChB,IAAI,EACJ,mBAAmB,EACpB,EAAE,kBAAkB,2CA0BpB;AAED,eAAe,aAAa,CAAC"}
@@ -0,0 +1,12 @@
1
+ import React from 'react';
2
+ export interface ModalProps {
3
+ open: boolean;
4
+ onClose: () => void;
5
+ closeOnOverlay?: boolean;
6
+ children: React.ReactNode;
7
+ className?: string;
8
+ style?: React.CSSProperties;
9
+ }
10
+ export declare function Modal({ open, onClose, closeOnOverlay, children, className, style }: ModalProps): React.ReactPortal | null;
11
+ export default Modal;
12
+ //# sourceMappingURL=Modal.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Modal.d.ts","sourceRoot":"","sources":["../../../../../src/components/react/Modal/Modal.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAsC,MAAM,OAAO,CAAC;AAG3D,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,OAAO,CAAC;IACd,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;CAC7B;AAED,wBAAgB,KAAK,CAAC,EACpB,IAAI,EACJ,OAAO,EACP,cAAqB,EACrB,QAAQ,EACR,SAAS,EACT,KAAK,EACN,EAAE,UAAU,4BAyEZ;AAED,eAAe,KAAK,CAAC"}
@@ -0,0 +1,9 @@
1
+ import React from 'react';
2
+ export interface ModalBodyProps {
3
+ children: React.ReactNode;
4
+ style?: React.CSSProperties;
5
+ className?: string;
6
+ }
7
+ export declare function ModalBody({ children, style, className }: ModalBodyProps): import("react/jsx-runtime").JSX.Element;
8
+ export default ModalBody;
9
+ //# sourceMappingURL=ModalBody.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ModalBody.d.ts","sourceRoot":"","sources":["../../../../../src/components/react/Modal/ModalBody.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,MAAM,WAAW,cAAc;IAC7B,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,KAAK,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;IAC5B,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,wBAAgB,SAAS,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,SAAS,EAAE,EAAE,cAAc,2CAMvE;AAED,eAAe,SAAS,CAAC"}
@@ -0,0 +1,8 @@
1
+ import React from 'react';
2
+ export interface ModalFooterProps {
3
+ children: React.ReactNode;
4
+ align?: 'start' | 'center' | 'end';
5
+ }
6
+ export declare function ModalFooter({ children, align }: ModalFooterProps): import("react/jsx-runtime").JSX.Element;
7
+ export default ModalFooter;
8
+ //# sourceMappingURL=ModalFooter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ModalFooter.d.ts","sourceRoot":"","sources":["../../../../../src/components/react/Modal/ModalFooter.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,KAAK,CAAC,EAAE,OAAO,GAAG,QAAQ,GAAG,KAAK,CAAC;CACpC;AAED,wBAAgB,WAAW,CAAC,EAAE,QAAQ,EAAE,KAAa,EAAE,EAAE,gBAAgB,2CAOxE;AAED,eAAe,WAAW,CAAC"}
@@ -0,0 +1,11 @@
1
+ import React from 'react';
2
+ export interface ModalHeaderProps {
3
+ title: React.ReactNode;
4
+ icon?: React.ReactNode;
5
+ onClose?: () => void;
6
+ closeAriaLabel?: string;
7
+ align?: 'center' | 'start';
8
+ }
9
+ export declare function ModalHeader({ title, icon, onClose, closeAriaLabel, align }: ModalHeaderProps): import("react/jsx-runtime").JSX.Element;
10
+ export default ModalHeader;
11
+ //# sourceMappingURL=ModalHeader.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ModalHeader.d.ts","sourceRoot":"","sources":["../../../../../src/components/react/Modal/ModalHeader.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,KAAK,CAAC,SAAS,CAAC;IACvB,IAAI,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACvB,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,KAAK,CAAC,EAAE,QAAQ,GAAG,OAAO,CAAC;CAC5B;AAED,wBAAgB,WAAW,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,cAAyB,EAAE,KAAgB,EAAE,EAAE,gBAAgB,2CA0GlH;AAED,eAAe,WAAW,CAAC"}
@@ -0,0 +1,6 @@
1
+ export * from './Modal';
2
+ export * from './ModalHeader';
3
+ export * from './ModalBody';
4
+ export * from './ModalFooter';
5
+ export * from './ConfirmDialog';
6
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/components/react/Modal/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAC;AACxB,cAAc,eAAe,CAAC;AAC9B,cAAc,aAAa,CAAC;AAC5B,cAAc,eAAe,CAAC;AAC9B,cAAc,iBAAiB,CAAC"}
@@ -0,0 +1,20 @@
1
+ import React, { SelectHTMLAttributes } from 'react';
2
+ export interface SelectOption {
3
+ label: React.ReactNode;
4
+ value: string;
5
+ }
6
+ export interface SelectProps extends SelectHTMLAttributes<HTMLSelectElement> {
7
+ options?: SelectOption[];
8
+ variant?: 'base' | 'themed' | 'dashboard';
9
+ containerClassName?: string;
10
+ }
11
+ /**
12
+ * Select Component (Design System)
13
+ *
14
+ * Provides a themed select element with multiple variants:
15
+ * - `base`: Standard form select with mds-input styling
16
+ * - `themed`: Generic themed select with dashboard control styling (recommended)
17
+ * - `dashboard`: Legacy alias for themed variant (backward compatibility)
18
+ */
19
+ export declare const Select: React.ForwardRefExoticComponent<SelectProps & React.RefAttributes<HTMLSelectElement>>;
20
+ //# sourceMappingURL=Select.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Select.d.ts","sourceRoot":"","sources":["../../../../../src/components/react/Select/Select.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAc,oBAAoB,EAAE,MAAM,OAAO,CAAC;AAGhE,MAAM,WAAW,YAAY;IAC3B,KAAK,EAAE,KAAK,CAAC,SAAS,CAAC;IACvB,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,WAAY,SAAQ,oBAAoB,CAAC,iBAAiB,CAAC;IAE1E,OAAO,CAAC,EAAE,YAAY,EAAE,CAAC;IAEzB,OAAO,CAAC,EAAE,MAAM,GAAG,QAAQ,GAAG,WAAW,CAAC;IAE1C,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC7B;AAED;;;;;;;GAOG;AACH,eAAO,MAAM,MAAM,uFAwCjB,CAAC"}
@@ -0,0 +1,2 @@
1
+ export { Select, type SelectProps, type SelectOption } from './Select';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/components/react/Select/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,KAAK,WAAW,EAAE,KAAK,YAAY,EAAE,MAAM,UAAU,CAAC"}
@@ -0,0 +1,28 @@
1
+ import React from 'react';
2
+ export interface ThemeToggleProps {
3
+ /**
4
+ * Size variant of the toggle button
5
+ * @default 'md'
6
+ */
7
+ size?: 'sm' | 'md' | 'lg';
8
+ /**
9
+ * CSS class name to apply
10
+ */
11
+ className?: string;
12
+ /**
13
+ * Whether the toggle is disabled
14
+ * @default false
15
+ */
16
+ disabled?: boolean;
17
+ /**
18
+ * Callback when theme changes
19
+ */
20
+ onChange?: (theme: 'light' | 'dark') => void;
21
+ /**
22
+ * Storage key for persisting theme preference
23
+ * @default 'theme'
24
+ */
25
+ storageKey?: string;
26
+ }
27
+ export default function ThemeToggle({ size, className, disabled, onChange, storageKey }: ThemeToggleProps): React.JSX.Element;
28
+ //# sourceMappingURL=ThemeToggle.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ThemeToggle.d.ts","sourceRoot":"","sources":["../../../../../src/components/react/ThemeToggle/ThemeToggle.tsx"],"names":[],"mappings":"AAEA,OAAO,KAA8B,MAAM,OAAO,CAAC;AAEnD,MAAM,WAAW,gBAAgB;IAC/B;;;OAGG;IACH,IAAI,CAAC,EAAE,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;IAE1B;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB;;;OAGG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IAEnB;;OAEG;IACH,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,KAAK,IAAI,CAAC;IAE7C;;;OAGG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,CAAC,OAAO,UAAU,WAAW,CAAC,EAClC,IAAW,EACX,SAAc,EACd,QAAgB,EAChB,QAAQ,EACR,UAAoB,EACrB,EAAE,gBAAgB,GAAG,KAAK,CAAC,GAAG,CAAC,OAAO,CAgGtC"}
@@ -0,0 +1,3 @@
1
+ export { default as ThemeToggle } from './ThemeToggle';
2
+ export type { ThemeToggleProps } from './ThemeToggle';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/components/react/ThemeToggle/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,eAAe,CAAC;AACvD,YAAY,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"Typography.d.ts","sourceRoot":"","sources":["../../../../../src/components/react/Typography/Typography.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAc,cAAc,EAAE,MAAM,OAAO,CAAC;AAG1D,KAAK,iBAAiB,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,MAAM,GAAG,SAAS,GAAG,OAAO,CAAC;AAClF,KAAK,eAAe,GAAG,IAAI,GAAG,IAAI,GAAG,MAAM,GAAG,IAAI,GAAG,IAAI,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,CAAC;AAElF,MAAM,WAAW,eAAgB,SAAQ,cAAc,CAAC,WAAW,CAAC;IAClE,kCAAkC;IAClC,OAAO,CAAC,EAAE,iBAAiB,CAAC;IAC5B,+CAA+C;IAC/C,IAAI,CAAC,EAAE,eAAe,CAAC;IACvB,sCAAsC;IACtC,EAAE,CAAC,EAAE,MAAM,GAAG,CAAC,iBAAiB,CAAC;IACjC,wBAAwB;IACxB,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,6BAA6B;IAC7B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,mBAAmB;IACnB,KAAK,CAAC,EAAE,SAAS,GAAG,WAAW,GAAG,OAAO,CAAC;IAC1C,oBAAoB;IACpB,MAAM,CAAC,EAAE,OAAO,GAAG,QAAQ,GAAG,QAAQ,GAAG,UAAU,GAAG,MAAM,CAAC;CAC9D;AAsBD;;;;;GAKG;AACH,eAAO,MAAM,UAAU,qFA6BrB,CAAC;AAIH;;;;;GAKG;AACH,MAAM,WAAW,cAAe,SAAQ,IAAI,CAAC,eAAe,EAAE,SAAS,GAAG,IAAI,GAAG,MAAM,CAAC;IACtF,sBAAsB;IACtB,IAAI,CAAC,EAAE,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;CAC3B;AAED,eAAO,MAAM,SAAS,2FA2BpB,CAAC"}
1
+ {"version":3,"file":"Typography.d.ts","sourceRoot":"","sources":["../../../../../src/components/react/Typography/Typography.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAc,cAAc,EAAE,MAAM,OAAO,CAAC;AAG1D,KAAK,iBAAiB,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,MAAM,GAAG,SAAS,GAAG,OAAO,CAAC;AAClF,KAAK,eAAe,GAAG,IAAI,GAAG,IAAI,GAAG,MAAM,GAAG,IAAI,GAAG,IAAI,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,CAAC;AAElF,MAAM,WAAW,eAAgB,SAAQ,cAAc,CAAC,WAAW,CAAC;IAClE,kCAAkC;IAClC,OAAO,CAAC,EAAE,iBAAiB,CAAC;IAC5B,+CAA+C;IAC/C,IAAI,CAAC,EAAE,eAAe,CAAC;IACvB,sCAAsC;IACtC,EAAE,CAAC,EAAE,MAAM,GAAG,CAAC,iBAAiB,CAAC;IACjC,wBAAwB;IACxB,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,6BAA6B;IAC7B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,mBAAmB;IACnB,KAAK,CAAC,EAAE,SAAS,GAAG,WAAW,GAAG,OAAO,CAAC;IAC1C,oBAAoB;IACpB,MAAM,CAAC,EAAE,OAAO,GAAG,QAAQ,GAAG,QAAQ,GAAG,UAAU,GAAG,MAAM,CAAC;CAC9D;AAsBD;;;;;GAKG;AACH,eAAO,MAAM,UAAU,qFA6BrB,CAAC;AAIH;;;;;GAKG;AACH,MAAM,WAAW,cAAe,SAAQ,IAAI,CAAC,eAAe,EAAE,SAAS,GAAG,IAAI,GAAG,MAAM,CAAC;IACtF,sBAAsB;IACtB,IAAI,CAAC,EAAE,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;CAC3B;AAED,eAAO,MAAM,SAAS,2FA6BpB,CAAC"}