@decido/ui 0.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (95) hide show
  1. package/.eslintrc.cjs +10 -0
  2. package/.turbo/turbo-build.log +13 -0
  3. package/.turbo/turbo-lint.log +54 -0
  4. package/dist/components/DebugPanel.d.ts +3 -0
  5. package/dist/components/DebugPanel.js +195 -0
  6. package/dist/components/DebugPanelManager.d.ts +3 -0
  7. package/dist/components/DebugPanelManager.js +20 -0
  8. package/dist/components/DecidoButton.d.ts +11 -0
  9. package/dist/components/DecidoButton.js +15 -0
  10. package/dist/components/LoginView.d.ts +6 -0
  11. package/dist/components/LoginView.js +36 -0
  12. package/dist/components/WelcomeView.d.ts +6 -0
  13. package/dist/components/WelcomeView.js +16 -0
  14. package/dist/components/base/BaseComponent.d.ts +12 -0
  15. package/dist/components/base/BaseComponent.js +43 -0
  16. package/dist/components/base/BaseComponentBacjup.d.ts +12 -0
  17. package/dist/components/base/BaseComponentBacjup.js +43 -0
  18. package/dist/components/base/BaseComponentLit.d.ts +9 -0
  19. package/dist/components/base/BaseComponentLit.js +30 -0
  20. package/dist/components/base/shared-styles.d.ts +4 -0
  21. package/dist/components/base/shared-styles.js +18 -0
  22. package/dist/components/index.d.ts +6 -0
  23. package/dist/components/index.js +7 -0
  24. package/dist/components/landing/index.d.ts +11 -0
  25. package/dist/components/landing/index.js +11 -0
  26. package/dist/components/landing/landing-button.d.ts +9 -0
  27. package/dist/components/landing/landing-button.js +5 -0
  28. package/dist/components/landing/landing-card.d.ts +6 -0
  29. package/dist/components/landing/landing-card.js +5 -0
  30. package/dist/components/landing/landing-cta.d.ts +10 -0
  31. package/dist/components/landing/landing-cta.js +5 -0
  32. package/dist/components/landing/landing-feature-card.d.ts +35 -0
  33. package/dist/components/landing/landing-feature-card.js +35 -0
  34. package/dist/components/landing/landing-footer.d.ts +18 -0
  35. package/dist/components/landing/landing-footer.js +7 -0
  36. package/dist/components/landing/landing-header.d.ts +21 -0
  37. package/dist/components/landing/landing-header.js +7 -0
  38. package/dist/components/landing/landing-hero.d.ts +22 -0
  39. package/dist/components/landing/landing-hero.js +10 -0
  40. package/dist/components/landing/landing-page.d.ts +3 -0
  41. package/dist/components/landing/landing-page.js +34 -0
  42. package/dist/components/landing/landing-section.d.ts +14 -0
  43. package/dist/components/landing/landing-section.js +8 -0
  44. package/dist/components/landing/landing-testimonial-card.d.ts +11 -0
  45. package/dist/components/landing/landing-testimonial-card.js +9 -0
  46. package/dist/components/landing/landing-waitlist.d.ts +27 -0
  47. package/dist/components/landing/landing-waitlist.js +18 -0
  48. package/dist/components/theming/ColorPicker.d.ts +8 -0
  49. package/dist/components/theming/ColorPicker.js +19 -0
  50. package/dist/components/theming/ThemePanel.d.ts +5 -0
  51. package/dist/components/theming/ThemePanel.js +12 -0
  52. package/dist/index.d.ts +13 -0
  53. package/dist/index.js +19 -0
  54. package/dist/utils/counter.d.ts +1 -0
  55. package/dist/utils/counter.js +9 -0
  56. package/eslint.config.js +11 -0
  57. package/package.json +47 -0
  58. package/src/components/DebugPanel.tsx +347 -0
  59. package/src/components/DebugPanelManager.tsx +40 -0
  60. package/src/components/DecidoButton.tsx +43 -0
  61. package/src/components/LoginView.tsx +85 -0
  62. package/src/components/WelcomeView.tsx +47 -0
  63. package/src/components/base/landing.css +477 -0
  64. package/src/components/base/shared-styles.ts +21 -0
  65. package/src/components/index.ts +7 -0
  66. package/src/components/landing/index.tsx +11 -0
  67. package/src/components/landing/landing-button.tsx +26 -0
  68. package/src/components/landing/landing-card.tsx +15 -0
  69. package/src/components/landing/landing-cta.tsx +42 -0
  70. package/src/components/landing/landing-feature-card.tsx +149 -0
  71. package/src/components/landing/landing-footer.tsx +66 -0
  72. package/src/components/landing/landing-header.tsx +55 -0
  73. package/src/components/landing/landing-hero.tsx +94 -0
  74. package/src/components/landing/landing-page.tsx +143 -0
  75. package/src/components/landing/landing-section.tsx +42 -0
  76. package/src/components/landing/landing-testimonial-card.tsx +50 -0
  77. package/src/components/landing/landing-waitlist.tsx +115 -0
  78. package/src/components/theming/ColorPicker.tsx +40 -0
  79. package/src/components/theming/ThemePanel.tsx +43 -0
  80. package/src/css/base.css +483 -0
  81. package/src/css/components.css +309 -0
  82. package/src/css/debug-panel.css +1368 -0
  83. package/src/css/layout.css +289 -0
  84. package/src/css/login-view.css +45 -0
  85. package/src/css/style.css +20 -0
  86. package/src/css/welcome-view.css +56 -0
  87. package/src/css/workbench.css +383 -0
  88. package/src/globals.d.ts +8 -0
  89. package/src/index.ts +24 -0
  90. package/src/utils/counter.d.ts.map +1 -0
  91. package/src/utils/counter.js +9 -0
  92. package/src/utils/counter.ts +9 -0
  93. package/src/vite-env.d.ts +1 -0
  94. package/tailwind.config.js +7 -0
  95. package/tsconfig.json +35 -0
@@ -0,0 +1,309 @@
1
+ /* /css/components.css */
2
+ @tailwind components;
3
+ @tailwind utilities;
4
+
5
+ @layer components {
6
+
7
+ /* COMPONENTES VISUALES CLAVE (Efectos) */
8
+ .glass-premium {
9
+ background: linear-gradient(135deg,
10
+ rgba(255, 255, 255, 0.1) 0%,
11
+ rgba(255, 255, 255, 0.05) 100%);
12
+ backdrop-filter: blur(30px);
13
+ @apply border border-white/20 shadow-2xl shadow-black/50;
14
+ }
15
+
16
+ .glass-card {
17
+ background: rgba(255, 255, 255, 0.03);
18
+ backdrop-filter: blur(20px);
19
+ @apply border border-white/5 transition-all duration-300;
20
+ }
21
+
22
+ .glass-card:hover {
23
+ background: rgba(255, 255, 255, 0.05);
24
+ @apply border-white/10;
25
+ }
26
+
27
+ .gradient-text {
28
+ background: linear-gradient(135deg,
29
+ var(--primary) 0%,
30
+ var(--secondary) 50%,
31
+ var(--accent) 100%);
32
+ background-size: 200% 200%;
33
+ -webkit-background-clip: text;
34
+ -webkit-text-fill-color: transparent;
35
+ background-clip: text;
36
+ animation: gradient 8s ease infinite;
37
+ }
38
+
39
+ /* #region Botones y formularios */
40
+ .btn-premium {
41
+ /* @apply relative bg-gradient-to-r from-primary to-secondary text-white font-semibold py-3 px-6 rounded-xl overflow-hidden transition-all duration-300 hover:transform hover:-translate-y-1 hover:shadow-2xl hover:shadow-primary/30; */
42
+ /* @apply relative bg-gradient-to-r from-primary to-secondary text-white font-semibold py-3 px-6 rounded-xl overflow-hidden transition-all duration-300; */
43
+ }
44
+
45
+ .btn-premium:hover {
46
+ /* @apply transform -translate-y-1 shadow-2xl shadow-primary/30; */
47
+ }
48
+
49
+ .btn-secondary {
50
+ /* @apply bg-white/10 hover:bg-white/20 text-white font-semibold py-2 px-5 rounded-xl transition-all duration-300; */
51
+ }
52
+
53
+ .form-input-premium {
54
+ /* @apply w-full bg-dark/50 border-2 border-white/10 rounded-lg p-3 text-white placeholder-gray-500 transition-all duration-300 focus:outline-none focus:border-primary focus:ring-2 focus:ring-primary/30; */
55
+ }
56
+
57
+ /* #endregion */
58
+
59
+ /* #region Paneles y pestañas del editor */
60
+ #pane-container {
61
+ display: flex;
62
+ width: 100%;
63
+ height: 100%;
64
+ }
65
+
66
+ .editor-pane {
67
+ flex: 1 1 0;
68
+ display: flex;
69
+ flex-direction: column;
70
+ min-width: 250px;
71
+ background-color: var(--bg-content);
72
+ }
73
+
74
+ .editor-pane.active {
75
+ outline: 1px solid var(--primary);
76
+ }
77
+
78
+ .tab-bar {
79
+ display: flex;
80
+ flex-shrink: 0;
81
+ background-color: var(--bg-surface);
82
+ min-height: 35px;
83
+ }
84
+
85
+ .tab-item {
86
+ display: flex;
87
+ align-items: center;
88
+ padding: 0 12px;
89
+ height: 35px;
90
+ border-right: 1px solid var(--bg-dark);
91
+ cursor: pointer;
92
+ user-select: none;
93
+ color: var(--text-secondary);
94
+ background: transparent;
95
+ gap: 8px;
96
+ border-bottom: 2px solid transparent;
97
+ }
98
+
99
+ .tab-item:hover {
100
+ background-color: var(--bg-content);
101
+ }
102
+
103
+ .tab-item.active {
104
+ background-color: var(--bg-content);
105
+ color: var(--text-primary);
106
+ border-bottom: 2px solid var(--primary);
107
+ }
108
+
109
+ .tab-item .close-tab-btn {
110
+ font-size: 12px;
111
+ padding: 4px;
112
+ border-radius: 50%;
113
+ }
114
+
115
+ .tab-item .close-tab-btn:hover {
116
+ background-color: rgba(255, 255, 255, 0.1);
117
+ }
118
+
119
+ .tab-content {
120
+ flex-grow: 1;
121
+ overflow: auto;
122
+ padding: 1rem;
123
+ }
124
+
125
+ .tab-content-area {
126
+ height: calc(100% - 42px);
127
+ /* Ajustar altura según tu barra de tabs */
128
+ overflow-y: auto;
129
+ padding: var(--spacing-md);
130
+ }
131
+
132
+ /* #endregion */
133
+
134
+ /* #region Notificaciones */
135
+ .notification-item {
136
+ @apply flex items-start p-4 rounded-lg text-white shadow-2xl shadow-black/50 border border-white/10;
137
+ /* @apply flex items-start p-4 rounded-lg shadow-2xl shadow-black/50; */
138
+ }
139
+
140
+ .notification-icon {
141
+ @apply text-xl mr-4 mt-1;
142
+ /* @apply text-xl mr-4 mt-1 text-inherit; Hereda el color del borde */
143
+ }
144
+
145
+ .notification-title {
146
+ @apply font-bold;
147
+ /* @apply font-bold text-white; */
148
+ }
149
+
150
+ .notification-message {
151
+ @apply text-sm text-white/80;
152
+ }
153
+
154
+ .notification-close-btn {
155
+ @apply ml-4 text-xl opacity-70 hover:opacity-100;
156
+ }
157
+
158
+ .animate-slide-in-right {
159
+ animation: slide-in-right 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94) both;
160
+ }
161
+
162
+ .notification-item.border-secondary {
163
+ --notification-color: var(--secondary);
164
+ }
165
+
166
+ .notification-item.border-success {
167
+ --notification-color: var(--success);
168
+ }
169
+
170
+ .notification-item.border-accent {
171
+ --notification-color: var(--accent);
172
+ }
173
+
174
+ .notification-item.border-danger {
175
+ --notification-color: var(--danger);
176
+ }
177
+
178
+ .notification-item .notification-icon {
179
+ color: var(--notification-color);
180
+ }
181
+
182
+ /* #endregion */
183
+
184
+ /* #region Paleta de comandos */
185
+ .command-palette-item {
186
+ @apply p-3 rounded-lg cursor-pointer flex justify-between items-center;
187
+ }
188
+
189
+ .command-palette-item:hover {
190
+ @apply bg-white/5;
191
+ }
192
+
193
+ .command-palette-item.selected {
194
+ @apply bg-primary text-white;
195
+ }
196
+
197
+ .command-palette-item .category {
198
+ @apply text-xs bg-white/10 px-2 py-1 rounded-md;
199
+ }
200
+
201
+ /* #endregion */
202
+
203
+ /* #region Animaciones globales */
204
+ @keyframes gradient {
205
+
206
+ 0%,
207
+ 100% {
208
+ background-position: 0% 50%;
209
+ }
210
+
211
+ 50% {
212
+ background-position: 100% 50%;
213
+ }
214
+ }
215
+
216
+ @keyframes slide-in-right {
217
+ 0% {
218
+ transform: translateX(100px);
219
+ opacity: 0;
220
+ }
221
+
222
+ 100% {
223
+ transform: translateX(0);
224
+ opacity: 1;
225
+ }
226
+ }
227
+
228
+ @keyframes bounce {
229
+
230
+ 0%,
231
+ 100% {
232
+ transform: translateY(0) scale(1);
233
+ }
234
+
235
+ 50% {
236
+ transform: translateY(-10px) scale(1.1);
237
+ }
238
+ }
239
+
240
+ @keyframes breathe {
241
+ from {
242
+ transform: scale(1);
243
+ }
244
+
245
+ to {
246
+ transform: scale(1.5);
247
+ }
248
+ }
249
+
250
+ /* #endregion */
251
+
252
+ /* #region nav-tab */
253
+ .nav-tab {
254
+ @apply flex items-center gap-4 w-full text-left py-3 px-4 rounded-xl text-gray-400 font-medium transition-all duration-300;
255
+ }
256
+
257
+ .nav-tab:hover {
258
+ @apply bg-white/5 text-white;
259
+ }
260
+
261
+ .nav-tab.active {
262
+ background: linear-gradient(90deg,
263
+ theme("colors.primary / 20%") 0%,
264
+ theme("colors.secondary / 20%") 100%);
265
+ /* @apply text-white shadow-lg shadow-primary/10 border border-primary; */
266
+ }
267
+
268
+ .nav-tab .nav-icon {
269
+ @apply w-6 h-6 flex items-center justify-center text-lg;
270
+ }
271
+
272
+ /* #endregion */
273
+
274
+ /* #region Usuario*/
275
+ .user-menu-button {
276
+ @apply flex items-center gap-2 px-3 py-1.5 rounded-lg hover:bg-white/10 transition-colors;
277
+ }
278
+
279
+ .user-avatar {
280
+ @apply w-7 h-7 rounded-full object-cover bg-darker;
281
+ }
282
+
283
+ .user-name {
284
+ @apply text-sm font-semibold text-gray-300;
285
+ }
286
+
287
+ .top-bar-dropdown {
288
+ @apply absolute top-full right-0 mt-2 w-56 bg-dark rounded-xl shadow-2xl border border-white/10 p-2 z-50;
289
+ /* Animación para aparecer */
290
+ transform-origin: top right;
291
+ animation: scale-in 0.1s ease-out;
292
+ }
293
+
294
+ .dropdown-item {
295
+ @apply flex items-center gap-3 w-full text-left px-3 py-2 rounded-md text-sm text-gray-300 hover:bg-primary hover:text-white;
296
+ }
297
+
298
+ .dropdown-separator {
299
+ @apply h-px bg-white/10 my-2;
300
+ }
301
+
302
+ .is-readonly {
303
+ pointer-events: none !important;
304
+ opacity: 0.7;
305
+ filter: grayscale(50%);
306
+ }
307
+
308
+ /* #endregion */
309
+ }