nest-scramble 1.4.1 โ†’ 1.4.5

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/README.md CHANGED
@@ -344,28 +344,63 @@ jobs:
344
344
  path: openapi.json
345
345
  ```
346
346
 
347
- ## ๐ŸŽจ Documentation UI - World-Class Design
347
+ ## ๐ŸŽจ Documentation UI - Professional API Dashboard
348
348
 
349
- ### โœจ Futuristic Theme (NEW!)
349
+ ### โœจ Elite Dashboard Design (NEW!)
350
350
 
351
- Nest-Scramble now features a **bespoke, futuristic dashboard** that rivals high-end SaaS products like Stripe, Vercel, and Linear!
351
+ Nest-Scramble features a **professional, high-end API dashboard** inspired by Stripe and Postman, where each request is displayed on a separate page for focused documentation!
352
352
 
353
353
  **๐Ÿš€ Key Features:**
354
- - **Deep Space Dark Mode** - Ultra-premium `#050505` background
355
- - **Glassmorphism Design** - Backdrop blur effects on all cards
356
- - **Cyber Gradients** - Cyan-to-purple button animations
357
- - **Animated Grid Background** - Subtle pulsing effect
358
- - **Night Owl Code Theme** - Beautiful syntax highlighting
359
- - **Custom Scrollbar** - Gradient styling throughout
360
- - **Spotlight Search** - Cmd+K style search experience
361
- - **Easter Egg Console** - Hidden developer messages โœจ
354
+ - **Sidebar-Only Navigation** - Fixed 320px sidebar with controller grouping
355
+ - **Single-Request Per Page** - Each endpoint gets its own dedicated view
356
+ - **Three-Column Elite Layout** - Information | Request Editor | Test Panel
357
+ - **Deep Black Background** - Professional `#000000` and `#0B0E14` theme
358
+ - **Cyber-Cyan Accents** - `#00f2ff` for active states and primary actions
359
+ - **Vibrant HTTP Method Badges** - Color-coded with glow effects:
360
+ - GET = Royal Blue (`#3B82F6`)
361
+ - POST = Emerald Green (`#10B981`)
362
+ - PUT = Amber Orange (`#F59E0B`)
363
+ - PATCH = Violet Purple (`#8B5CF6`)
364
+ - DELETE = Vibrant Red (`#EF4444`)
365
+ - **Glassmorphism Effects** - Backdrop blur on request/response panels
366
+ - **40px Spacious Padding** - Premium whitespace throughout
367
+ - **Terminal-Style Response** - Black box with green text for API responses
368
+ - **High-Contrast Labels** - Required, Type, and Default badges
369
+ - **Custom Scrollbars** - Gradient cyan-to-purple styling
370
+ - **Plus Jakarta Sans Typography** - Modern, professional font family
371
+ - **Powered by Badge** - Animated branding with pulse effect
372
+
373
+ ### ๐Ÿ“ Three-Column Elite Interface
374
+
375
+ The dashboard uses a professional three-column layout for each endpoint:
376
+
377
+ **Column 1 (Left) - Information Panel:**
378
+ - Endpoint title with large, bold typography
379
+ - HTTP method badge with vibrant colors and glow
380
+ - Endpoint description and documentation
381
+ - Clean parameters table with high-contrast labels
382
+ - Type information and required field indicators
383
+
384
+ **Column 2 (Middle) - Request Body Editor:**
385
+ - Glassmorphism design with backdrop blur
386
+ - Auto-filled mock data examples
387
+ - JSON editor with syntax highlighting
388
+ - Copy-to-clipboard functionality
389
+ - Real-time validation
390
+
391
+ **Column 3 (Right) - Test Request Panel:**
392
+ - Enhanced glassmorphism with cyan border glow
393
+ - Large "Send Request" button with gradient animation
394
+ - Terminal-style response viewer (black background, green text)
395
+ - Status code indicators
396
+ - Response headers display
362
397
 
363
398
  ### ๐ŸŽจ Theme Customization
364
399
 
365
400
  **Futuristic Theme (Default):**
366
401
  ```typescript
367
402
  NestScrambleModule.forRoot({
368
- theme: 'futuristic', // Modern, dark, glassmorphic
403
+ theme: 'futuristic', // Professional dark dashboard
369
404
  primaryColor: '#00f2ff', // Cyber-Cyan (default)
370
405
  customDomainIcon: '/logo.png', // Your brand favicon
371
406
  apiTitle: 'My Awesome API',
@@ -406,14 +441,16 @@ NestScrambleModule.forRoot({
406
441
 
407
442
  When you visit `http://localhost:3000/docs`, you'll experience:
408
443
 
409
- - ๐ŸŽฏ **Interactive API Explorer** - Test endpoints directly from the browser
410
- - ๐Ÿ“ **Auto-generated Examples** - Request/response samples for all endpoints
411
- - ๐Ÿ” **Spotlight Search** - Quickly find endpoints with glowing focus states
412
- - ๐ŸŒ™ **Futuristic Dark Mode** - Deep space theme with glassmorphism
413
- - ๐Ÿ“ฑ **Mobile Responsive** - Works beautifully on all devices
414
- - ๐ŸŽจ **Theme Toggle** - Switch between Futuristic and Classic (top-right button)
415
- - โœจ **Powered by Badge** - Glowing brand badge with pulse animation
416
- - ๐ŸŽญ **Easter Eggs** - Check your browser console for surprises!
444
+ - ๐ŸŽฏ **Single-Request Navigation** - Each endpoint on its own dedicated page
445
+ - ๐Ÿ“‚ **Controller Grouping** - Organized sidebar with uppercase section headers
446
+ - ๐ŸŽจ **Active State Glow** - Cyber-cyan highlight for selected endpoints
447
+ - ๐Ÿ“ **Auto-generated Examples** - Pre-filled mock data in request editor
448
+ - ๐Ÿงช **Live Testing** - Send requests directly from the three-column interface
449
+ - ๐Ÿ’ป **Terminal Response** - Black box with green text for authentic feel
450
+ - ๐Ÿ” **Quick Search** - Press 'K' to search endpoints instantly
451
+ - ๐Ÿ“ฑ **Responsive Design** - Adapts to mobile, tablet, and desktop
452
+ - โœจ **Animated Branding** - Pulsing "Powered by Nest-Scramble" badge
453
+ - ๐ŸŽญ **Developer Easter Eggs** - Check your browser console for surprises!
417
454
 
418
455
  ### ๐Ÿ–ฅ๏ธ Terminal Dashboard
419
456
 
@@ -1 +1 @@
1
- {"version":3,"file":"DocsController.d.ts","sourceRoot":"","sources":["../../src/controllers/DocsController.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAE5D,eAAO,MAAM,aAAa,aAAa,CAAC;AACxC,eAAO,MAAM,MAAM,wDAAyC,CAAC;AAE7D,qBAEa,cAAc;IAEU,OAAO,CAAC,WAAW;IACnB,OAAO,CAAC,OAAO;gBADP,WAAW,EAAE,GAAG,EAChB,OAAO,EAAE,mBAAmB;IAIvE,OAAO,CAAQ,GAAG,EAAE,GAAG;IAgCvB,OAAO,CAAC,gBAAgB;IAkRxB,OAAO,CAAC,aAAa;IA8CrB,OAAO,CAAC,kBAAkB;IAsB1B,cAAc,CAAQ,GAAG,EAAE,GAAG;IAa9B,oBAAoB,CAAQ,GAAG,EAAE,GAAG;IAKpC,cAAc;CAGf"}
1
+ {"version":3,"file":"DocsController.d.ts","sourceRoot":"","sources":["../../src/controllers/DocsController.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAE5D,eAAO,MAAM,aAAa,aAAa,CAAC;AACxC,eAAO,MAAM,MAAM,wDAAyC,CAAC;AAE7D,qBAEa,cAAc;IAEU,OAAO,CAAC,WAAW;IACnB,OAAO,CAAC,OAAO;gBADP,WAAW,EAAE,GAAG,EAChB,OAAO,EAAE,mBAAmB;IAIvE,OAAO,CAAQ,GAAG,EAAE,GAAG;IAwEvB,OAAO,CAAC,gBAAgB;IAs3BxB,OAAO,CAAC,aAAa;IA8CrB,OAAO,CAAC,kBAAkB;IAsB1B,cAAc,CAAQ,GAAG,EAAE,GAAG;IAa9B,oBAAoB,CAAQ,GAAG,EAAE,GAAG;IAKpC,cAAc;CAGf"}
@@ -42,9 +42,49 @@ let DocsController = class DocsController {
42
42
  </style>
43
43
  </head>
44
44
  <body>
45
- <script id="api-reference" data-url="/docs-json"></script>
45
+ <div id="api-reference"></div>
46
46
  <script src="https://cdn.jsdelivr.net/npm/@scalar/api-reference"></script>
47
47
  <script>
48
+ // Professional Dashboard Configuration - Single Request Per Page
49
+ const configuration = {
50
+ spec: {
51
+ url: '/docs-json'
52
+ },
53
+ layout: 'modern',
54
+ theme: 'none',
55
+ darkMode: true,
56
+ showSidebar: true,
57
+ hideModels: false,
58
+ hideDownloadButton: false,
59
+ defaultOpenAllTags: true,
60
+ searchHotKey: 'k',
61
+ servers: [
62
+ {
63
+ url: '${this.options.baseUrl || 'http://localhost:3000'}',
64
+ description: 'Development Server'
65
+ }
66
+ ]
67
+ };
68
+
69
+ // Initialize Scalar with error handling
70
+ const apiReference = document.getElementById('api-reference');
71
+ if (apiReference) {
72
+ // Wait for Scalar to load
73
+ const initScalar = () => {
74
+ if (window.ScalarApiReference) {
75
+ try {
76
+ window.ScalarApiReference.mount(apiReference, configuration);
77
+ console.log('%cโœ… Nest-Scramble Dashboard Loaded', 'color: #00f2ff; font-weight: bold;');
78
+ } catch (error) {
79
+ console.error('Scalar initialization error:', error);
80
+ }
81
+ } else {
82
+ setTimeout(initScalar, 100);
83
+ }
84
+ };
85
+ initScalar();
86
+ }
87
+
48
88
  ${this.getEasterEggScript()}
49
89
  </script>
50
90
  </body>
@@ -54,246 +94,858 @@ let DocsController = class DocsController {
54
94
  }
55
95
  getFuturisticCSS(primaryColor) {
56
96
  return `
57
- /* ๐Ÿš€ Futuristic Theme by Mohamed Mustafa - Deep Space Edition */
97
+ /* ๐Ÿš€ Professional API Dashboard by Mohamed Mustafa - Stripe/Postman Inspired */
58
98
  :root {
59
99
  --primary-cyber: ${primaryColor};
60
- --primary-glow: ${primaryColor}80;
61
- --purple-electric: #a855f7;
62
- --deep-space: #050505;
63
- --space-dark: #0a0a0a;
64
- --space-card: #111111;
65
- --space-border: #1a1a1a;
66
- --text-primary: #ffffff;
67
- --text-secondary: #a0a0a0;
68
- --glow-shadow: 0 0 20px ${primaryColor}40, 0 0 40px ${primaryColor}20;
100
+ --primary-glow: ${primaryColor}60;
101
+ --primary-soft: ${primaryColor}15;
102
+ --purple-electric: #8B5CF6;
103
+
104
+ /* Deep Black Background */
105
+ --deep-black: #000000;
106
+ --deep-charcoal: #0B0E14;
107
+ --sidebar-dark: #13161C;
108
+ --content-dark: #0B0E14;
109
+ --card-bg: #1A1D24;
110
+ --border-subtle: #2A2D35;
111
+
112
+ /* Text Colors - High Contrast */
113
+ --text-primary: #FFFFFF;
114
+ --text-secondary: #D1D5DB;
115
+ --text-muted: #9CA3AF;
116
+
117
+ /* HTTP Method Colors */
118
+ --get-blue: #3B82F6;
119
+ --post-green: #10B981;
120
+ --put-orange: #F59E0B;
121
+ --patch-purple: #8B5CF6;
122
+ --delete-red: #EF4444;
123
+
124
+ /* Danger & Info */
125
+ --danger-red: #F85149;
126
+ --info-blue: #58A6FF;
127
+
128
+ /* Glow Effects */
129
+ --glow-shadow: 0 0 30px var(--primary-glow), 0 8px 24px rgba(0, 242, 255, 0.3);
69
130
  }
70
131
 
132
+ /* ============================================
133
+ GLOBAL RESET & TYPOGRAPHY
134
+ ============================================ */
71
135
  * {
72
- font-family: 'Inter', 'Plus Jakarta Sans', -apple-system, BlinkMacSystemFont, sans-serif !important;
136
+ margin: 0;
137
+ padding: 0;
138
+ box-sizing: border-box;
139
+ font-family: 'Plus Jakarta Sans', 'Inter', -apple-system, BlinkMacSystemFont, sans-serif !important;
73
140
  }
74
141
 
142
+ html,
75
143
  body {
76
- margin: 0;
77
- padding: 0;
78
- background: var(--deep-space) !important;
144
+ background: var(--deep-charcoal) !important;
79
145
  color: var(--text-primary) !important;
80
146
  overflow-x: hidden;
147
+ line-height: 1.6;
148
+ height: 100%;
81
149
  }
82
150
 
83
- /* Animated Background Grid */
84
- body::before {
85
- content: '';
86
- position: fixed;
87
- top: 0;
88
- left: 0;
89
- width: 100%;
90
- height: 100%;
91
- background-image:
92
- linear-gradient(var(--space-border) 1px, transparent 1px),
93
- linear-gradient(90deg, var(--space-border) 1px, transparent 1px);
94
- background-size: 50px 50px;
95
- opacity: 0.3;
96
- z-index: 0;
97
- pointer-events: none;
98
- animation: gridPulse 10s ease-in-out infinite;
151
+ /* Force single-request per page layout */
152
+ .scalar-api-reference,
153
+ [class*="api-reference"] {
154
+ display: flex !important;
155
+ flex-direction: row !important;
156
+ height: 100vh !important;
157
+ overflow: hidden !important;
99
158
  }
100
159
 
101
- @keyframes gridPulse {
102
- 0%, 100% { opacity: 0.2; }
103
- 50% { opacity: 0.4; }
160
+ /* Hide all-in-one scroll view */
161
+ [class*="scroll-view"],
162
+ [class*="all-endpoints-view"],
163
+ [class*="endpoint-list-container"] {
164
+ display: none !important;
104
165
  }
105
166
 
106
- /* Glassmorphism Cards */
107
- .scalar-card,
108
- [class*="card"],
109
- [class*="panel"],
110
- [class*="sidebar"] {
111
- background: rgba(17, 17, 17, 0.6) !important;
112
- backdrop-filter: blur(20px) !important;
113
- -webkit-backdrop-filter: blur(20px) !important;
167
+ /* ============================================
168
+ SIDEBAR ARCHITECTURE (Single-Request Navigation)
169
+ ============================================ */
170
+
171
+ /* Sidebar Container */
172
+ .sidebar,
173
+ [class*="sidebar"],
174
+ nav[class*="navigation"],
175
+ nav[class*="nav"],
176
+ aside {
177
+ position: fixed !important;
178
+ left: 0 !important;
179
+ top: 0 !important;
180
+ width: 320px !important;
181
+ height: 100vh !important;
182
+ background: var(--sidebar-dark) !important;
183
+ border-right: 1px solid var(--border-subtle) !important;
184
+ overflow-y: auto !important;
185
+ z-index: 1000 !important;
186
+ padding: 0 !important;
187
+ backdrop-filter: none !important;
188
+ box-shadow: 4px 0 24px rgba(0, 0, 0, 0.3) !important;
189
+ }
190
+
191
+ /* Mohamed Mustafa Dashboard Logo */
192
+ .sidebar::before,
193
+ [class*="sidebar"]::before {
194
+ content: '๐Ÿ‘จโ€๐Ÿ’ป Mohamed Mustafa Dashboard';
195
+ display: block;
196
+ padding: 32px 24px;
197
+ font-size: 18px;
198
+ font-weight: 800;
199
+ color: var(--text-primary);
200
+ background: linear-gradient(135deg, var(--primary-cyber), var(--purple-electric));
201
+ -webkit-background-clip: text;
202
+ -webkit-text-fill-color: transparent;
203
+ background-clip: text;
204
+ border-bottom: 1px solid var(--border-subtle);
205
+ letter-spacing: -0.5px;
206
+ }
207
+
208
+ /* Sidebar Scrollbar */
209
+ .sidebar::-webkit-scrollbar,
210
+ [class*="sidebar"]::-webkit-scrollbar {
211
+ width: 6px;
212
+ }
213
+
214
+ .sidebar::-webkit-scrollbar-track,
215
+ [class*="sidebar"]::-webkit-scrollbar-track {
216
+ background: transparent;
217
+ }
218
+
219
+ .sidebar::-webkit-scrollbar-thumb,
220
+ [class*="sidebar"]::-webkit-scrollbar-thumb {
221
+ background: var(--border-subtle);
222
+ border-radius: 3px;
223
+ }
224
+
225
+ .sidebar::-webkit-scrollbar-thumb:hover,
226
+ [class*="sidebar"]::-webkit-scrollbar-thumb:hover {
227
+ background: var(--text-muted);
228
+ }
229
+
230
+ /* Controller Group Headers (with elegant dividers) */
231
+ .sidebar h2,
232
+ .sidebar h3,
233
+ [class*="sidebar"] h2,
234
+ [class*="sidebar"] h3,
235
+ [class*="group-title"],
236
+ [class*="section-title"],
237
+ [class*="tag-title"] {
238
+ font-size: 11px !important;
239
+ font-weight: 700 !important;
240
+ text-transform: uppercase !important;
241
+ letter-spacing: 1.5px !important;
242
+ color: var(--text-muted) !important;
243
+ padding: 24px 24px 12px 24px !important;
244
+ margin: 0 !important;
245
+ background: transparent !important;
246
+ border-top: 1px solid var(--border-subtle) !important;
247
+ margin-top: 16px !important;
248
+ }
249
+
250
+ .sidebar h2:first-of-type,
251
+ [class*="sidebar"] h2:first-of-type {
252
+ border-top: none !important;
253
+ margin-top: 0 !important;
254
+ }
255
+
256
+ /* Sidebar Navigation Items (Standalone Routes) */
257
+ .sidebar a,
258
+ .sidebar button,
259
+ [class*="sidebar"] a,
260
+ [class*="sidebar"] button,
261
+ [class*="nav-item"],
262
+ [class*="endpoint-item"],
263
+ [class*="operation-item"] {
264
+ display: flex !important;
265
+ align-items: center !important;
266
+ gap: 12px !important;
267
+ padding: 14px 24px !important;
268
+ margin: 4px 16px !important;
269
+ border-radius: 10px !important;
270
+ color: var(--text-secondary) !important;
271
+ text-decoration: none !important;
272
+ font-size: 14px !important;
273
+ font-weight: 500 !important;
274
+ transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1) !important;
275
+ border: none !important;
276
+ background: transparent !important;
277
+ position: relative !important;
278
+ border-left: 3px solid transparent !important;
279
+ cursor: pointer !important;
280
+ }
281
+
282
+ /* Sidebar Item Hover */
283
+ .sidebar a:hover,
284
+ .sidebar button:hover,
285
+ [class*="sidebar"] a:hover,
286
+ [class*="sidebar"] button:hover,
287
+ [class*="nav-item"]:hover,
288
+ [class*="endpoint-item"]:hover {
289
+ background: rgba(255, 255, 255, 0.05) !important;
290
+ color: var(--text-primary) !important;
291
+ transform: translateX(2px) !important;
292
+ }
293
+
294
+ /* Active/Selected Sidebar Item (Current Route) */
295
+ .sidebar a.active,
296
+ .sidebar button.active,
297
+ [class*="sidebar"] a.active,
298
+ [class*="sidebar"] button.active,
299
+ [class*="nav-item"].active,
300
+ [class*="endpoint-item"].active,
301
+ [class*="operation-item"].active,
302
+ [class*="selected"],
303
+ [aria-selected="true"],
304
+ [aria-current="page"] {
305
+ background: var(--primary-soft) !important;
306
+ color: var(--primary-cyber) !important;
307
+ border-left-color: var(--primary-cyber) !important;
308
+ font-weight: 700 !important;
309
+ box-shadow:
310
+ 0 0 20px var(--primary-glow),
311
+ inset 0 0 0 1px rgba(0, 242, 255, 0.2) !important;
312
+ }
313
+
314
+ /* ============================================
315
+ SINGLE-FOCUS PAGE LAYOUT
316
+ ============================================ */
317
+
318
+ /* Main Content Area (Single Endpoint View) */
319
+ main,
320
+ [class*="content"],
321
+ [class*="main"],
322
+ [class*="endpoint-view"] {
323
+ margin-left: 320px !important;
324
+ min-height: 100vh !important;
325
+ background: var(--content-dark) !important;
326
+ padding: 48px 64px !important;
327
+ overflow-y: auto !important;
328
+ }
329
+
330
+ /* Endpoint Container */
331
+ [class*="endpoint"],
332
+ [class*="operation"],
333
+ article {
334
+ max-width: 1400px !important;
335
+ margin: 0 auto !important;
336
+ background: transparent !important;
337
+ }
338
+
339
+ /* ============================================
340
+ METHOD BADGES (Large & Vibrant)
341
+ ============================================ /* GLOW BADGES (HTTP Methods) */
342
+
343
+ [class*="method"],
344
+ [class*="badge"],
345
+ [class*="http-method"],
346
+ [data-method] {
347
+ display: inline-flex !important;
348
+ align-items: center !important;
349
+ justify-content: center !important;
350
+ padding: 10px 24px !important;
351
+ border-radius: 12px !important;
352
+ font-size: 13px !important;
353
+ font-weight: 800 !important;
354
+ letter-spacing: 1px !important;
355
+ text-transform: uppercase !important;
356
+ border: none !important;
357
+ min-width: 90px !important;
358
+ position: relative !important;
359
+ overflow: hidden !important;
360
+ transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;
361
+ }
362
+
363
+ /* GET - Royal Blue */
364
+ [class*="method-get"],
365
+ [class*="badge-get"],
366
+ [data-method="get"],
367
+ [data-method="GET"],
368
+ .http-method-get {
369
+ background: var(--get-blue) !important;
370
+ color: #ffffff !important;
371
+ box-shadow:
372
+ 0 0 20px rgba(59, 130, 246, 0.5),
373
+ 0 4px 16px rgba(59, 130, 246, 0.4) !important;
374
+ }
375
+
376
+ [class*="method-get"]:hover,
377
+ [data-method="get"]:hover {
378
+ box-shadow:
379
+ 0 0 30px rgba(59, 130, 246, 0.6),
380
+ 0 6px 20px rgba(59, 130, 246, 0.5) !important;
381
+ transform: translateY(-2px) !important;
382
+ }
383
+
384
+ /* POST - Emerald Green */
385
+ [class*="method-post"],
386
+ [class*="badge-post"],
387
+ [data-method="post"],
388
+ [data-method="POST"],
389
+ .http-method-post {
390
+ background: var(--post-green) !important;
391
+ color: #ffffff !important;
392
+ box-shadow:
393
+ 0 0 20px rgba(16, 185, 129, 0.5),
394
+ 0 4px 16px rgba(16, 185, 129, 0.4) !important;
395
+ }
396
+
397
+ [class*="method-post"]:hover,
398
+ [data-method="post"]:hover {
399
+ box-shadow:
400
+ 0 0 30px rgba(16, 185, 129, 0.6),
401
+ 0 6px 20px rgba(16, 185, 129, 0.5) !important;
402
+ transform: translateY(-2px) !important;
403
+ }
404
+
405
+ /* PUT - Amber Orange */
406
+ [class*="method-put"],
407
+ [class*="badge-put"],
408
+ [data-method="put"],
409
+ [data-method="PUT"],
410
+ .http-method-put {
411
+ background: var(--put-orange) !important;
412
+ color: #ffffff !important;
413
+ box-shadow:
414
+ 0 0 20px rgba(245, 158, 11, 0.5),
415
+ 0 4px 16px rgba(245, 158, 11, 0.4) !important;
416
+ }
417
+
418
+ [class*="method-put"]:hover,
419
+ [data-method="put"]:hover {
420
+ box-shadow:
421
+ 0 0 30px rgba(245, 158, 11, 0.6),
422
+ 0 6px 20px rgba(245, 158, 11, 0.5) !important;
423
+ transform: translateY(-2px) !important;
424
+ }
425
+
426
+ /* PATCH - Violet Purple */
427
+ [class*="method-patch"],
428
+ [class*="badge-patch"],
429
+ [data-method="patch"],
430
+ [data-method="PATCH"],
431
+ .http-method-patch {
432
+ background: var(--patch-purple) !important;
433
+ color: #ffffff !important;
434
+ box-shadow:
435
+ 0 0 20px rgba(139, 92, 246, 0.5),
436
+ 0 4px 16px rgba(139, 92, 246, 0.4) !important;
437
+ }
438
+
439
+ [class*="method-patch"]:hover,
440
+ [data-method="patch"]:hover {
441
+ box-shadow:
442
+ 0 0 30px rgba(139, 92, 246, 0.6),
443
+ 0 6px 20px rgba(139, 92, 246, 0.5) !important;
444
+ transform: translateY(-2px) !important;
445
+ }
446
+
447
+ /* DELETE - Vibrant Red */
448
+ [class*="method-delete"],
449
+ [class*="badge-delete"],
450
+ [data-method="delete"],
451
+ [data-method="DELETE"],
452
+ .http-method-delete {
453
+ background: var(--delete-red) !important;
454
+ color: #ffffff !important;
455
+ box-shadow:
456
+ 0 0 20px rgba(239, 68, 68, 0.5),
457
+ 0 4px 16px rgba(239, 68, 68, 0.4) !important;
458
+ }
459
+
460
+ [class*="method-delete"]:hover,
461
+ [data-method="delete"]:hover {
462
+ box-shadow:
463
+ 0 0 30px rgba(239, 68, 68, 0.6),
464
+ 0 6px 20px rgba(239, 68, 68, 0.5) !important;
465
+ transform: translateY(-2px) !important;
466
+ }
467
+
468
+ /* ============================================
469
+ INFORMATION HIERARCHY
470
+ ============================================ */
471
+
472
+ /* Endpoint Title (Big & Bold) */
473
+ h1,
474
+ [class*="title"],
475
+ [class*="heading"],
476
+ [class*="operation-title"] {
477
+ font-size: 32px !important;
478
+ font-weight: 800 !important;
479
+ color: var(--text-primary) !important;
480
+ margin: 24px 0 16px 0 !important;
481
+ line-height: 1.2 !important;
482
+ letter-spacing: -0.5px !important;
483
+ font-family: 'Plus Jakarta Sans', sans-serif !important;
484
+ }
485
+
486
+ /* Description */
487
+ p,
488
+ [class*="description"] {
489
+ font-size: 16px !important;
490
+ color: var(--text-secondary) !important;
491
+ margin: 16px 0 !important;
492
+ line-height: 1.7 !important;
493
+ }
494
+
495
+ /* Path Display */
496
+ [class*="path"],
497
+ [class*="url"],
498
+ code {
499
+ background: var(--card-bg) !important;
500
+ border: 1px solid var(--border-subtle) !important;
501
+ border-radius: 8px !important;
502
+ padding: 12px 16px !important;
503
+ font-family: 'JetBrains Mono', 'Fira Code', 'Consolas', monospace !important;
504
+ font-size: 14px !important;
505
+ color: var(--primary-cyber) !important;
506
+ display: inline-block !important;
507
+ margin: 8px 0 !important;
508
+ }
509
+
510
+ /* ============================================
511
+ THREE-COLUMN POWER-USER PANELS
512
+ ============================================ */
513
+
514
+ /* THREE-COLUMN MASTERPIECE LAYOUT */
515
+ [class*="panels"],
516
+ [class*="columns"],
517
+ [class*="grid"],
518
+ [class*="endpoint-body"] {
519
+ display: grid !important;
520
+ grid-template-columns: 1fr 1fr 1fr !important;
521
+ gap: 32px !important;
522
+ margin: 48px 0 !important;
523
+ align-items: start !important;
524
+ }
525
+
526
+ /* Panel A (Left) - Documentation */
527
+ [class*="panel-docs"],
528
+ [class*="documentation"],
529
+ [class*="parameters"] {
530
+ background: var(--card-bg) !important;
531
+ border: 1px solid var(--border-subtle) !important;
532
+ border-radius: 12px !important;
533
+ padding: 32px !important;
534
+ }
535
+
536
+ /* Panel B (Middle) - Request Body Editor with Glassmorphism */
537
+ [class*="panel-request"],
538
+ [class*="request-body"],
539
+ [class*="request-editor"],
540
+ [class*="editor"] {
541
+ background: rgba(26, 29, 36, 0.7) !important;
542
+ backdrop-filter: blur(16px) !important;
543
+ -webkit-backdrop-filter: blur(16px) !important;
114
544
  border: 1px solid rgba(255, 255, 255, 0.1) !important;
115
545
  border-radius: 16px !important;
546
+ padding: 32px !important;
116
547
  box-shadow:
117
548
  0 8px 32px rgba(0, 0, 0, 0.4),
118
- inset 0 1px 0 rgba(255, 255, 255, 0.1) !important;
549
+ inset 0 1px 0 rgba(255, 255, 255, 0.05) !important;
119
550
  }
120
551
 
121
- /* Cyber Buttons & Active States */
122
- button,
123
- [role="button"],
124
- .button,
125
- a[class*="button"] {
552
+ /* Panel C (Right) - Test Request with Enhanced Glassmorphism */
553
+ [class*="panel-test"],
554
+ [class*="test-request"],
555
+ [class*="try-it"],
556
+ [class*="playground"] {
557
+ background: rgba(26, 29, 36, 0.6) !important;
558
+ backdrop-filter: blur(24px) !important;
559
+ -webkit-backdrop-filter: blur(24px) !important;
560
+ border: 1px solid rgba(0, 242, 255, 0.3) !important;
561
+ border-radius: 16px !important;
562
+ padding: 32px !important;
563
+ box-shadow:
564
+ 0 8px 32px rgba(0, 0, 0, 0.5),
565
+ 0 0 40px rgba(0, 242, 255, 0.1),
566
+ inset 0 1px 0 rgba(255, 255, 255, 0.08) !important;
567
+ position: relative !important;
568
+ }
569
+
570
+ /* Copy Code Button */
571
+ [class*="copy-button"],
572
+ button[class*="copy"] {
573
+ position: absolute !important;
574
+ top: 16px !important;
575
+ right: 16px !important;
576
+ padding: 8px 16px !important;
577
+ background: rgba(255, 255, 255, 0.1) !important;
578
+ border: 1px solid rgba(255, 255, 255, 0.2) !important;
579
+ border-radius: 8px !important;
580
+ color: var(--text-primary) !important;
581
+ font-size: 12px !important;
582
+ font-weight: 600 !important;
583
+ cursor: pointer !important;
584
+ transition: all 0.2s ease !important;
585
+ }
586
+
587
+ [class*="copy-button"]:hover,
588
+ button[class*="copy"]:hover {
589
+ background: rgba(255, 255, 255, 0.15) !important;
590
+ border-color: var(--primary-cyber) !important;
591
+ box-shadow: 0 0 12px var(--primary-glow) !important;
592
+ }
593
+
594
+ /* ============================================
595
+ GENEROUS SPACING & WHITE SPACE
596
+ ============================================ */
597
+
598
+ section,
599
+ [class*="section"] {
600
+ margin: 48px 0 !important;
601
+ }
602
+
603
+ h2 {
604
+ font-size: 24px !important;
605
+ font-weight: 700 !important;
606
+ color: var(--text-primary) !important;
607
+ margin: 32px 0 16px 0 !important;
608
+ }
609
+
610
+ h3 {
611
+ font-size: 18px !important;
612
+ font-weight: 600 !important;
613
+ color: var(--text-primary) !important;
614
+ margin: 24px 0 12px 0 !important;
615
+ }
616
+
617
+ /* Tables with Generous Padding */
618
+ table {
619
+ width: 100% !important;
620
+ border-collapse: separate !important;
621
+ border-spacing: 0 8px !important;
622
+ margin: 24px 0 !important;
623
+ }
624
+
625
+ th {
626
+ background: var(--card-bg) !important;
627
+ color: var(--text-muted) !important;
628
+ font-size: 12px !important;
629
+ font-weight: 700 !important;
630
+ text-transform: uppercase !important;
631
+ letter-spacing: 1px !important;
632
+ padding: 16px 20px !important;
633
+ text-align: left !important;
634
+ border: none !important;
635
+ }
636
+
637
+ td {
638
+ background: var(--card-bg) !important;
639
+ color: var(--text-secondary) !important;
640
+ padding: 20px !important;
641
+ border: 1px solid var(--border-subtle) !important;
642
+ font-size: 14px !important;
643
+ }
644
+
645
+ tr {
646
+ transition: all 0.2s ease !important;
647
+ }
648
+
649
+ tr:hover td {
650
+ background: rgba(255, 255, 255, 0.03) !important;
651
+ border-color: var(--primary-cyber) !important;
652
+ }
653
+
654
+ /* ============================================
655
+ TEST REQUEST BUTTON (Large & Glowing)
656
+ ============================================ */
657
+
658
+ button[class*="send"],
659
+ button[class*="test"],
660
+ button[class*="execute"],
661
+ [class*="test-button"] {
662
+ width: 100% !important;
663
+ padding: 18px 32px !important;
126
664
  background: linear-gradient(135deg, var(--primary-cyber), var(--purple-electric)) !important;
127
665
  border: none !important;
128
666
  border-radius: 12px !important;
129
- padding: 10px 20px !important;
130
- color: white !important;
131
- font-weight: 600 !important;
667
+ color: #ffffff !important;
668
+ font-size: 16px !important;
669
+ font-weight: 700 !important;
132
670
  letter-spacing: 0.5px !important;
671
+ text-transform: uppercase !important;
672
+ cursor: pointer !important;
133
673
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;
674
+ box-shadow: 0 4px 16px var(--primary-glow) !important;
134
675
  position: relative !important;
135
676
  overflow: hidden !important;
136
677
  }
137
678
 
138
- button:hover,
139
- [role="button"]:hover,
140
- .button:hover {
141
- transform: translateY(-2px) !important;
679
+ button[class*="send"]:hover,
680
+ button[class*="test"]:hover,
681
+ button[class*="execute"]:hover {
682
+ transform: translateY(-3px) !important;
142
683
  box-shadow: var(--glow-shadow) !important;
143
684
  }
144
685
 
145
- button::before {
686
+ button[class*="send"]::before,
687
+ button[class*="test"]::before,
688
+ button[class*="execute"]::before {
146
689
  content: '';
147
690
  position: absolute;
148
691
  top: 0;
149
692
  left: -100%;
150
693
  width: 100%;
151
694
  height: 100%;
152
- background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.2), transparent);
695
+ background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.3), transparent);
153
696
  transition: left 0.5s;
154
697
  }
155
698
 
156
- button:hover::before {
699
+ button[class*="send"]:hover::before,
700
+ button[class*="test"]:hover::before,
701
+ button[class*="execute"]:hover::before {
157
702
  left: 100%;
158
703
  }
159
704
 
160
- /* Search Bar - Spotlight Style */
161
- input[type="search"],
162
- input[type="text"],
163
- [class*="search"] input {
164
- background: rgba(17, 17, 17, 0.8) !important;
165
- border: 2px solid rgba(255, 255, 255, 0.1) !important;
705
+ /* ============================================
706
+ RESPONSE PANEL (Terminal-Style Black Box)
707
+ ============================================ */
708
+
709
+ [class*="response"],
710
+ [class*="result"],
711
+ [class*="output"] {
712
+ background: #000000 !important;
713
+ border: 1px solid var(--primary-cyber) !important;
166
714
  border-radius: 12px !important;
167
- padding: 12px 20px !important;
168
- color: var(--text-primary) !important;
169
- font-size: 14px !important;
170
- transition: all 0.3s ease !important;
715
+ padding: 24px !important;
716
+ margin-top: 24px !important;
717
+ font-family: 'JetBrains Mono', 'Fira Code', 'Consolas', monospace !important;
718
+ font-size: 13px !important;
719
+ color: #00ff00 !important;
720
+ box-shadow:
721
+ 0 8px 32px rgba(0, 0, 0, 0.6),
722
+ inset 0 0 20px rgba(0, 242, 255, 0.1) !important;
723
+ backdrop-filter: blur(10px) !important;
724
+ -webkit-backdrop-filter: blur(10px) !important;
725
+ max-height: 500px !important;
726
+ overflow-y: auto !important;
171
727
  }
172
728
 
173
- input[type="search"]:focus,
174
- input[type="text"]:focus,
175
- [class*="search"] input:focus {
176
- border-color: var(--primary-cyber) !important;
177
- box-shadow: 0 0 0 3px var(--primary-glow) !important;
178
- outline: none !important;
729
+ [class*="response"]::-webkit-scrollbar,
730
+ [class*="result"]::-webkit-scrollbar {
731
+ width: 8px;
179
732
  }
180
733
 
181
- /* Code Blocks - Night Owl Theme */
182
- pre,
183
- code,
184
- [class*="code"],
185
- .hljs {
186
- background: #011627 !important;
187
- border: 1px solid rgba(0, 242, 255, 0.2) !important;
188
- border-radius: 12px !important;
189
- padding: 16px !important;
190
- font-family: 'JetBrains Mono', 'Fira Code', 'Consolas', monospace !important;
734
+ [class*="response"]::-webkit-scrollbar-track,
735
+ [class*="result"]::-webkit-scrollbar-track {
736
+ background: rgba(0, 0, 0, 0.3);
737
+ }
738
+
739
+ [class*="response"]::-webkit-scrollbar-thumb,
740
+ [class*="result"]::-webkit-scrollbar-thumb {
741
+ background: var(--primary-cyber);
742
+ border-radius: 4px;
743
+ }
744
+
745
+ /* ============================================
746
+ HIGH-CONTRAST LABELS & VISIBILITY
747
+ ============================================ */
748
+
749
+ label,
750
+ [class*="label"] {
191
751
  font-size: 13px !important;
192
- line-height: 1.6 !important;
193
- box-shadow: 0 4px 16px rgba(0, 0, 0, 0.3) !important;
752
+ font-weight: 600 !important;
753
+ color: var(--text-primary) !important;
754
+ margin-bottom: 8px !important;
755
+ display: block !important;
194
756
  }
195
757
 
196
- code {
197
- color: #82AAFF !important;
758
+ /* Required Badge */
759
+ [class*="required"],
760
+ .required {
761
+ color: var(--danger-red) !important;
762
+ font-weight: 700 !important;
763
+ font-size: 11px !important;
764
+ text-transform: uppercase !important;
765
+ letter-spacing: 0.5px !important;
766
+ background: rgba(248, 81, 73, 0.1) !important;
767
+ padding: 2px 8px !important;
768
+ border-radius: 4px !important;
769
+ margin-left: 8px !important;
198
770
  }
199
771
 
200
- /* Sidebar Glassmorphism */
201
- [class*="sidebar"],
202
- nav,
203
- aside {
204
- background: rgba(10, 10, 10, 0.7) !important;
205
- backdrop-filter: blur(30px) !important;
206
- border-right: 1px solid rgba(255, 255, 255, 0.08) !important;
772
+ /* Type Badge */
773
+ [class*="type"],
774
+ .type {
775
+ color: var(--info-blue) !important;
776
+ font-weight: 600 !important;
777
+ font-size: 12px !important;
778
+ font-family: 'JetBrains Mono', monospace !important;
779
+ background: rgba(88, 166, 255, 0.1) !important;
780
+ padding: 2px 8px !important;
781
+ border-radius: 4px !important;
207
782
  }
208
783
 
209
- /* Custom Branding Badge */
210
- body::after {
211
- content: 'โœจ Powered by Nest-Scramble';
212
- position: fixed;
213
- bottom: 20px;
214
- right: 20px;
215
- background: linear-gradient(135deg, var(--primary-cyber), var(--purple-electric));
216
- padding: 8px 16px;
217
- border-radius: 20px;
218
- font-size: 11px;
219
- font-weight: 600;
220
- letter-spacing: 0.5px;
221
- box-shadow: var(--glow-shadow);
222
- z-index: 9999;
223
- animation: badgePulse 3s ease-in-out infinite;
224
- cursor: pointer;
784
+ /* Default Value */
785
+ [class*="default"],
786
+ .default {
787
+ color: var(--text-muted) !important;
788
+ font-size: 12px !important;
789
+ font-style: italic !important;
225
790
  }
226
791
 
227
- @keyframes badgePulse {
228
- 0%, 100% {
229
- box-shadow: 0 0 20px ${primaryColor}40, 0 0 40px ${primaryColor}20;
230
- }
231
- 50% {
232
- box-shadow: 0 0 30px ${primaryColor}60, 0 0 60px ${primaryColor}30;
233
- }
792
+ /* ============================================
793
+ INPUT FIELDS & FORMS
794
+ ============================================ */
795
+
796
+ input,
797
+ textarea,
798
+ select {
799
+ width: 100% !important;
800
+ background: var(--deep-black) !important;
801
+ border: 1px solid var(--border-subtle) !important;
802
+ border-radius: 8px !important;
803
+ padding: 12px 16px !important;
804
+ color: var(--text-primary) !important;
805
+ font-size: 14px !important;
806
+ transition: all 0.2s ease !important;
234
807
  }
235
808
 
236
- /* Scrollbar Styling */
809
+ input:focus,
810
+ textarea:focus,
811
+ select:focus {
812
+ outline: none !important;
813
+ border-color: var(--primary-cyber) !important;
814
+ box-shadow: 0 0 0 3px var(--primary-glow) !important;
815
+ }
816
+
817
+ /* ============================================
818
+ CODE BLOCKS & SYNTAX HIGHLIGHTING
819
+ ============================================ */
820
+
821
+ pre {
822
+ background: #011627 !important;
823
+ border: 1px solid rgba(0, 242, 255, 0.2) !important;
824
+ border-radius: 12px !important;
825
+ padding: 24px !important;
826
+ overflow-x: auto !important;
827
+ margin: 16px 0 !important;
828
+ }
829
+
830
+ pre code {
831
+ background: transparent !important;
832
+ border: none !important;
833
+ padding: 0 !important;
834
+ color: #d6deeb !important;
835
+ font-size: 13px !important;
836
+ line-height: 1.7 !important;
837
+ }
838
+
839
+ /* ============================================
840
+ SCROLLBAR STYLING
841
+ ============================================ */
842
+
237
843
  ::-webkit-scrollbar {
238
844
  width: 10px;
239
845
  height: 10px;
240
846
  }
241
847
 
242
848
  ::-webkit-scrollbar-track {
243
- background: var(--space-dark);
849
+ background: var(--deep-black);
244
850
  }
245
851
 
246
852
  ::-webkit-scrollbar-thumb {
247
853
  background: linear-gradient(180deg, var(--primary-cyber), var(--purple-electric));
248
- border-radius: 10px;
854
+ border-radius: 5px;
249
855
  }
250
856
 
251
857
  ::-webkit-scrollbar-thumb:hover {
252
858
  background: var(--primary-cyber);
253
859
  }
254
860
 
255
- /* Headers with Gradient */
256
- h1, h2, h3, h4, h5, h6 {
257
- background: linear-gradient(135deg, var(--primary-cyber), var(--purple-electric));
258
- -webkit-background-clip: text;
259
- -webkit-text-fill-color: transparent;
260
- background-clip: text;
261
- font-weight: 700 !important;
861
+ /* ============================================
862
+ Z-INDEX MANAGEMENT
863
+ ============================================ */
864
+
865
+ .sidebar,
866
+ [class*="sidebar"] {
867
+ z-index: 1000 !important;
262
868
  }
263
869
 
264
- /* Links */
265
- a {
266
- color: var(--primary-cyber) !important;
267
- text-decoration: none !important;
268
- transition: all 0.3s ease !important;
870
+ [class*="modal"],
871
+ [class*="overlay"] {
872
+ z-index: 2000 !important;
269
873
  }
270
874
 
271
- a:hover {
272
- color: var(--purple-electric) !important;
273
- text-shadow: 0 0 10px var(--primary-glow) !important;
875
+ [class*="tooltip"],
876
+ [class*="popover"] {
877
+ z-index: 3000 !important;
274
878
  }
275
879
 
276
- /* Method Badges */
277
- [class*="method"],
278
- [class*="badge"] {
279
- border-radius: 8px !important;
280
- padding: 4px 12px !important;
281
- font-weight: 600 !important;
282
- font-size: 11px !important;
283
- letter-spacing: 0.5px !important;
880
+ /* ============================================
881
+ RESPONSIVE ADJUSTMENTS
882
+ ============================================ */
883
+
884
+ @media (max-width: 1200px) {
885
+ [class*="panels"],
886
+ [class*="columns"],
887
+ [class*="grid"] {
888
+ grid-template-columns: 1fr !important;
889
+ }
890
+
891
+ main,
892
+ [class*="content"] {
893
+ padding: 32px 24px !important;
894
+ }
284
895
  }
285
896
 
286
- /* Response Status Colors */
287
- [class*="status-200"],
288
- [class*="success"] {
289
- background: linear-gradient(135deg, #10b981, #059669) !important;
290
- color: white !important;
897
+ @media (max-width: 768px) {
898
+ .sidebar,
899
+ [class*="sidebar"] {
900
+ width: 100% !important;
901
+ position: relative !important;
902
+ height: auto !important;
903
+ }
904
+
905
+ main,
906
+ [class*="content"] {
907
+ margin-left: 0 !important;
908
+ }
291
909
  }
292
910
 
293
- [class*="status-400"],
294
- [class*="error"] {
295
- background: linear-gradient(135deg, #ef4444, #dc2626) !important;
296
- color: white !important;
911
+ /* ============================================
912
+ BRANDING BADGES
913
+ ============================================ */
914
+
915
+ /* Powered by Nest-Scramble Badge (Bottom of Sidebar) */
916
+ .sidebar::after,
917
+ [class*="sidebar"]::after {
918
+ content: 'โœจ Powered by Nest-Scramble';
919
+ display: block;
920
+ position: absolute;
921
+ bottom: 0;
922
+ left: 0;
923
+ right: 0;
924
+ padding: 20px 24px;
925
+ background: linear-gradient(135deg, var(--primary-cyber), var(--purple-electric));
926
+ border-top: 1px solid var(--border-subtle);
927
+ font-size: 12px;
928
+ font-weight: 700;
929
+ text-align: center;
930
+ letter-spacing: 0.5px;
931
+ color: #ffffff;
932
+ animation: badgePulse 3s ease-in-out infinite;
933
+ cursor: pointer;
934
+ }
935
+
936
+ @keyframes badgePulse {
937
+ 0%, 100% {
938
+ box-shadow: 0 -4px 20px ${primaryColor}20;
939
+ }
940
+ 50% {
941
+ box-shadow: 0 -4px 30px ${primaryColor}40;
942
+ }
943
+ }
944
+
945
+ /* Ensure sidebar has padding for the badge */
946
+ .sidebar,
947
+ [class*="sidebar"] {
948
+ padding-bottom: 80px !important;
297
949
  }
298
950
 
299
951
  /* Smooth Transitions */
@@ -1 +1 @@
1
- {"version":3,"file":"DocsController.js","sourceRoot":"","sources":["../../src/controllers/DocsController.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"DocsController.js","sourceRoot":"","sources":["../../src/controllers/DocsController.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "nest-scramble",
3
- "version": "1.4.1",
3
+ "version": "1.4.5",
4
4
  "description": "A next-generation, decorator-free API documentation engine and intelligent mock server for NestJS, engineered by Mohamed Mustafa",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",