| 
									
										
										
										
											2025-06-27 21:05:28 +00:00
										 |  |  | import { html, cssManager } from '@design.estate/dees-element'; | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | export const demoFunc = () => html`
 | 
					
						
							|  |  |  |   <style> | 
					
						
							|  |  |  |     .demoWrapper { | 
					
						
							|  |  |  |       box-sizing: border-box; | 
					
						
							|  |  |  |       position: relative; | 
					
						
							|  |  |  |       width: 100%; | 
					
						
							|  |  |  |       min-height: 100vh; | 
					
						
							|  |  |  |       padding: 48px; | 
					
						
							|  |  |  |       background: ${cssManager.bdTheme('#f8f9fa', '#0a0a0a')}; | 
					
						
							|  |  |  |       display: flex; | 
					
						
							|  |  |  |       flex-direction: column; | 
					
						
							|  |  |  |       gap: 32px; | 
					
						
							|  |  |  |     } | 
					
						
							|  |  |  |      | 
					
						
							|  |  |  |     .section { | 
					
						
							|  |  |  |       max-width: 900px; | 
					
						
							|  |  |  |       width: 100%; | 
					
						
							|  |  |  |       margin: 0 auto; | 
					
						
							|  |  |  |     } | 
					
						
							|  |  |  |      | 
					
						
							|  |  |  |     .section-title { | 
					
						
							|  |  |  |       font-size: 18px; | 
					
						
							|  |  |  |       font-weight: 600; | 
					
						
							|  |  |  |       margin-bottom: 16px; | 
					
						
							|  |  |  |       color: ${cssManager.bdTheme('#09090b', '#fafafa')}; | 
					
						
							|  |  |  |     } | 
					
						
							|  |  |  |      | 
					
						
							|  |  |  |     .section-description { | 
					
						
							|  |  |  |       font-size: 14px; | 
					
						
							|  |  |  |       color: ${cssManager.bdTheme('#71717a', '#a1a1aa')}; | 
					
						
							|  |  |  |       margin-bottom: 16px; | 
					
						
							|  |  |  |     } | 
					
						
							|  |  |  |   </style> | 
					
						
							|  |  |  |   <div class="demoWrapper"> | 
					
						
							|  |  |  |     <div class="section"> | 
					
						
							|  |  |  |       <div class="section-title">TypeScript Code Example</div> | 
					
						
							|  |  |  |       <div class="section-description">A comprehensive TypeScript code example with various syntax highlighting.</div> | 
					
						
							|  |  |  |       <dees-dataview-codebox proglang="typescript"> | 
					
						
							|  |  |  | interface User { | 
					
						
							|  |  |  |   id: number; | 
					
						
							|  |  |  |   name: string; | 
					
						
							|  |  |  |   email: string; | 
					
						
							|  |  |  |   isActive: boolean; | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | class UserService { | 
					
						
							|  |  |  |   private users: User[] = []; | 
					
						
							|  |  |  |    | 
					
						
							|  |  |  |   constructor(private apiUrl: string) { | 
					
						
							|  |  |  |     console.log('UserService initialized'); | 
					
						
							|  |  |  |   } | 
					
						
							|  |  |  |    | 
					
						
							|  |  |  |   async getUsers(): Promise<User[]> { | 
					
						
							|  |  |  |     try { | 
					
						
							|  |  |  |       const response = await fetch(this.apiUrl); | 
					
						
							|  |  |  |       const data = await response.json(); | 
					
						
							|  |  |  |       return data.users; | 
					
						
							|  |  |  |     } catch (error) { | 
					
						
							|  |  |  |       console.error('Failed to fetch users:', error); | 
					
						
							|  |  |  |       return []; | 
					
						
							|  |  |  |     } | 
					
						
							|  |  |  |   } | 
					
						
							|  |  |  |    | 
					
						
							|  |  |  |   addUser(user: User): void { | 
					
						
							|  |  |  |     this.users.push(user); | 
					
						
							|  |  |  |   } | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | // Usage example
 | 
					
						
							|  |  |  | const service = new UserService('https://api.example.com/users'); | 
					
						
							|  |  |  | const users = await service.getUsers(); | 
					
						
							|  |  |  | console.log('Found users:', users.length); | 
					
						
							|  |  |  |       </dees-dataview-codebox> | 
					
						
							|  |  |  |     </div> | 
					
						
							|  |  |  |      | 
					
						
							|  |  |  |     <div class="section"> | 
					
						
							|  |  |  |       <div class="section-title">JavaScript Example</div> | 
					
						
							|  |  |  |       <div class="section-description">Modern JavaScript with ES6+ features.</div> | 
					
						
							|  |  |  |       <dees-dataview-codebox proglang="javascript"> | 
					
						
							|  |  |  | // Array manipulation examples
 | 
					
						
							|  |  |  | const numbers = [1, 2, 3, 4, 5]; | 
					
						
							|  |  |  | const doubled = numbers.map(n => n * 2); | 
					
						
							|  |  |  | const filtered = numbers.filter(n => n > 3); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | // Object destructuring
 | 
					
						
							|  |  |  | const user = { name: 'John', age: 30, city: 'New York' }; | 
					
						
							|  |  |  | const { name, age } = user; | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | // Promise handling
 | 
					
						
							|  |  |  | const fetchData = async (url) => { | 
					
						
							|  |  |  |   const response = await fetch(url); | 
					
						
							|  |  |  |   return response.json(); | 
					
						
							|  |  |  | }; | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | // Modern syntax
 | 
					
						
							|  |  |  | const greet = (name = 'World') => \`Hello, \${name}!\`;
 | 
					
						
							|  |  |  | console.log(greet('ShadCN')); | 
					
						
							|  |  |  |       </dees-dataview-codebox> | 
					
						
							|  |  |  |     </div> | 
					
						
							|  |  |  |      | 
					
						
							|  |  |  |     <div class="section"> | 
					
						
							|  |  |  |       <div class="section-title">Python Example</div> | 
					
						
							|  |  |  |       <div class="section-description">Python code with classes and type hints.</div> | 
					
						
							|  |  |  |       <dees-dataview-codebox proglang="python"> | 
					
						
							|  |  |  | from typing import List, Optional | 
					
						
							|  |  |  | import asyncio | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | class DataProcessor: | 
					
						
							|  |  |  |     """A simple data processor class""" | 
					
						
							|  |  |  |      | 
					
						
							|  |  |  |     def __init__(self, name: str): | 
					
						
							|  |  |  |         self.name = name | 
					
						
							|  |  |  |         self.data: List[dict] = [] | 
					
						
							|  |  |  |      | 
					
						
							|  |  |  |     async def process_data(self, items: List[dict]) -> List[dict]: | 
					
						
							|  |  |  |         """Process data items asynchronously""" | 
					
						
							|  |  |  |         results = [] | 
					
						
							|  |  |  |         for item in items: | 
					
						
							|  |  |  |             # Simulate async processing | 
					
						
							|  |  |  |             await asyncio.sleep(0.1) | 
					
						
							|  |  |  |             results.append({ | 
					
						
							|  |  |  |                 'id': item.get('id'), | 
					
						
							|  |  |  |                 'processed': True, | 
					
						
							|  |  |  |                 'processor': self.name | 
					
						
							|  |  |  |             }) | 
					
						
							|  |  |  |         return results | 
					
						
							|  |  |  |      | 
					
						
							|  |  |  |     def get_summary(self) -> dict: | 
					
						
							|  |  |  |         return { | 
					
						
							|  |  |  |             'processor': self.name, | 
					
						
							|  |  |  |             'items_processed': len(self.data) | 
					
						
							|  |  |  |         } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | # Usage | 
					
						
							|  |  |  | processor = DataProcessor("Main") | 
					
						
							|  |  |  | data = await processor.process_data([{'id': 1}, {'id': 2}]) | 
					
						
							|  |  |  |       </dees-dataview-codebox> | 
					
						
							|  |  |  |     </div> | 
					
						
							|  |  |  |      | 
					
						
							|  |  |  |     <div class="section"> | 
					
						
							|  |  |  |       <div class="section-title">CSS Example</div> | 
					
						
							| 
									
										
										
										
											2025-06-27 21:07:47 +00:00
										 |  |  |       <div class="section-description">Modern CSS with custom properties and animations. Note the shorter language label.</div> | 
					
						
							| 
									
										
										
										
											2025-06-27 21:05:28 +00:00
										 |  |  |       <dees-dataview-codebox proglang="css"> | 
					
						
							|  |  |  | /* Modern CSS with custom properties */ | 
					
						
							|  |  |  | :root { | 
					
						
							|  |  |  |   --primary-color: #3b82f6; | 
					
						
							|  |  |  |   --secondary-color: #10b981; | 
					
						
							|  |  |  |   --background: #ffffff; | 
					
						
							|  |  |  |   --text-color: #09090b; | 
					
						
							|  |  |  |   --border-radius: 6px; | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | .card { | 
					
						
							|  |  |  |   background: var(--background); | 
					
						
							|  |  |  |   border: 1px solid #e5e7eb; | 
					
						
							|  |  |  |   border-radius: var(--border-radius); | 
					
						
							|  |  |  |   padding: 24px; | 
					
						
							|  |  |  |   box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1); | 
					
						
							|  |  |  |   transition: all 0.2s ease; | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | .card:hover { | 
					
						
							|  |  |  |   transform: translateY(-2px); | 
					
						
							|  |  |  |   box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1); | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | @keyframes fadeIn { | 
					
						
							|  |  |  |   from { opacity: 0; transform: translateY(10px); } | 
					
						
							|  |  |  |   to { opacity: 1; transform: translateY(0); } | 
					
						
							| 
									
										
										
										
											2025-06-27 21:07:47 +00:00
										 |  |  | } | 
					
						
							|  |  |  |       </dees-dataview-codebox> | 
					
						
							|  |  |  |     </div> | 
					
						
							|  |  |  |      | 
					
						
							|  |  |  |     <div class="section"> | 
					
						
							|  |  |  |       <div class="section-title">JSON Example</div> | 
					
						
							|  |  |  |       <div class="section-description">JSON configuration with proper formatting.</div> | 
					
						
							|  |  |  |       <dees-dataview-codebox proglang="json"> | 
					
						
							|  |  |  | { | 
					
						
							|  |  |  |   "name": "@design.estate/dees-catalog", | 
					
						
							|  |  |  |   "version": "1.10.7", | 
					
						
							|  |  |  |   "description": "A comprehensive catalog of web components", | 
					
						
							|  |  |  |   "main": "dist_ts_web/index.js", | 
					
						
							|  |  |  |   "type": "module", | 
					
						
							|  |  |  |   "scripts": { | 
					
						
							|  |  |  |     "build": "tsbuild tsfolders --allowimplicitany && tsbundle element --production", | 
					
						
							|  |  |  |     "watch": "tswatch element", | 
					
						
							|  |  |  |     "test": "tstest test/ --web --verbose" | 
					
						
							|  |  |  |   }, | 
					
						
							|  |  |  |   "dependencies": { | 
					
						
							|  |  |  |     "@design.estate/dees-element": "^2.0.45", | 
					
						
							|  |  |  |     "highlight.js": "^11.9.0" | 
					
						
							|  |  |  |   } | 
					
						
							| 
									
										
										
										
											2023-09-07 18:34:38 +02:00
										 |  |  | } | 
					
						
							| 
									
										
										
										
											2025-06-27 21:05:28 +00:00
										 |  |  |       </dees-dataview-codebox> | 
					
						
							|  |  |  |     </div> | 
					
						
							|  |  |  |   </div> | 
					
						
							|  |  |  | `
 |