domma-js 0.18.0 → 0.18.2

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.
@@ -1,223 +0,0 @@
1
- <!DOCTYPE html>
2
- <html lang="en">
3
- <head>
4
- <meta charset="UTF-8">
5
- <meta name="viewport" content="width=device-width, initial-scale=1.0">
6
- <title>Contact - {{projectName}}</title>
7
-
8
- <!-- Domma CSS -->
9
- <link rel="stylesheet" href="../node_modules/domma-js/public/dist/domma.css">
10
- <link rel="stylesheet" href="../node_modules/domma-js/public/dist/grid.css">
11
- <link rel="stylesheet" href="../node_modules/domma-js/public/dist/elements.css">
12
- <link rel="stylesheet" href="../node_modules/domma-js/public/dist/themes/domma-themes.css">
13
-
14
- <!-- Custom CSS -->
15
- <link rel="stylesheet" href="../css/custom.css">
16
- </head>
17
- <body class="dm-theme-{{theme}}">
18
- <!-- Navigation -->
19
- <nav id="main-navbar"></nav>
20
-
21
- <!-- Page Header -->
22
- <section class="container py-6">
23
- <h1 class="display-2 mb-3">Get in Touch</h1>
24
- <p class="lead text-secondary">
25
- Have a question? We'd love to hear from you. Send us a message and we'll respond as soon as possible.
26
- </p>
27
- </section>
28
-
29
- <!-- Contact Content -->
30
- <section class="container py-4">
31
- <div class="grid grid-cols-1 lg:grid-cols-3 gap-6">
32
- <!-- Contact Form -->
33
- <div class="lg:col-span-2">
34
- <div class="card shadow-md">
35
- <div class="card-body">
36
- <h2 class="h4 mb-4">Send us a Message</h2>
37
-
38
- <form id="contact-form">
39
- <div class="grid grid-cols-1 md:grid-cols-2 gap-4">
40
- <div>
41
- <label for="name" class="form-label">Name *</label>
42
- <input type="text" id="name" class="form-control" required>
43
- </div>
44
-
45
- <div>
46
- <label for="email" class="form-label">Email *</label>
47
- <input type="email" id="email" class="form-control" required>
48
- </div>
49
-
50
- <div class="md:col-span-2">
51
- <label for="subject" class="form-label">Subject *</label>
52
- <input type="text" id="subject" class="form-control" required>
53
- </div>
54
-
55
- <div class="md:col-span-2">
56
- <label for="message" class="form-label">Message *</label>
57
- <textarea id="message" class="form-control" rows="6" required></textarea>
58
- </div>
59
-
60
- <div class="md:col-span-2">
61
- <button type="submit" class="btn btn-primary btn-lg">
62
- <span data-icon="send"></span> Send Message
63
- </button>
64
- </div>
65
- </div>
66
- </form>
67
- </div>
68
- </div>
69
- </div>
70
-
71
- <!-- Contact Information -->
72
- <div class="col-12 col-lg-4">
73
- <!-- Address Card -->
74
- <div class="card mb-4">
75
- <div class="card-body">
76
- <h3 class="h5 mb-4">
77
- <span data-icon="map-pin" class="me-2"></span> Location
78
- </h3>
79
- <p class="mb-2">123 Example Street</p>
80
- <p class="mb-2">Suite 100</p>
81
- <p class="mb-0">City, State 12345</p>
82
- </div>
83
- </div>
84
-
85
- <!-- Contact Details -->
86
- <div class="card mb-4">
87
- <div class="card-body">
88
- <h3 class="h5 mb-4">
89
- <span data-icon="mail" class="me-2"></span> Contact Details
90
- </h3>
91
- <p class="mb-2">
92
- <strong>Email:</strong><br>
93
- <a href="mailto:hello@example.com">hello@example.com</a>
94
- </p>
95
- <p class="mb-0">
96
- <strong>Phone:</strong><br>
97
- <a href="tel:+1234567890">+1 (234) 567-890</a>
98
- </p>
99
- </div>
100
- </div>
101
-
102
- <!-- Social Links -->
103
- <div class="card">
104
- <div class="card-body">
105
- <h3 class="h5 mb-4">
106
- <span data-icon="share-2" class="me-2"></span> Follow Us
107
- </h3>
108
- <div class="d-flex flex-wrap gap-2">
109
- <a href="#" class="btn btn-outline-primary">
110
- <span data-icon="github"></span> GitHub
111
- </a>
112
- <a href="#" class="btn btn-outline-primary">
113
- <span data-icon="twitter"></span> Twitter
114
- </a>
115
- <a href="#" class="btn btn-outline-primary">
116
- <span data-icon="linkedin"></span> LinkedIn
117
- </a>
118
- <a href="#" class="btn btn-outline-primary">
119
- <span data-icon="youtube"></span> YouTube
120
- </a>
121
- </div>
122
- </div>
123
- </div>
124
- </div>
125
- </div>
126
- </section>
127
-
128
- <!-- FAQ Section -->
129
- <section class="bg-surface py-6">
130
- <div class="container">
131
- <h2 class="text-center mb-6">Frequently Asked Questions</h2>
132
-
133
- <div class="d-flex justify-content-center">
134
- <div style="max-width: 800px; width: 100%;">
135
- <div class="accordion" id="faq-accordion">
136
- <!-- FAQ 1 -->
137
- <div class="accordion-item">
138
- <h3 class="accordion-header">
139
- <button class="accordion-button" type="button" data-bs-toggle="collapse" data-bs-target="#faq1">
140
- What is the response time?
141
- </button>
142
- </h3>
143
- <div id="faq1" class="accordion-collapse collapse show">
144
- <div class="accordion-body">
145
- We typically respond to all enquiries within 24-48 hours during business days.
146
- </div>
147
- </div>
148
- </div>
149
-
150
- <!-- FAQ 2 -->
151
- <div class="accordion-item">
152
- <h3 class="accordion-header">
153
- <button class="accordion-button collapsed" type="button" data-bs-toggle="collapse" data-bs-target="#faq2">
154
- Do you offer support?
155
- </button>
156
- </h3>
157
- <div id="faq2" class="accordion-collapse collapse">
158
- <div class="accordion-body">
159
- Yes! We offer community support through GitHub Issues and email support for enterprise clients.
160
- </div>
161
- </div>
162
- </div>
163
-
164
- <!-- FAQ 3 -->
165
- <div class="accordion-item">
166
- <h3 class="accordion-header">
167
- <button class="accordion-button collapsed" type="button" data-bs-toggle="collapse" data-bs-target="#faq3">
168
- Can I contribute to the project?
169
- </button>
170
- </h3>
171
- <div id="faq3" class="accordion-collapse collapse">
172
- <div class="accordion-body">
173
- Absolutely! We welcome contributions. Check out our GitHub repository for contribution guidelines.
174
- </div>
175
- </div>
176
- </div>
177
- </div>
178
- </div>
179
- </div>
180
- </div>
181
- </section>
182
-
183
- <!-- Footer -->
184
- <footer class="page-footer"></footer>
185
-
186
- <!-- Domma JavaScript -->
187
- <script src="../node_modules/domma-js/public/dist/domma.min.js"></script>
188
-
189
- <!-- App Initialization -->
190
- <script src="../js/app.js"></script>
191
-
192
- <!-- Form Handling -->
193
- <script>
194
- $(() => {
195
- // Handle contact form submission
196
- $('#contact-form').on('submit', function (e) {
197
- e.preventDefault();
198
-
199
- // Get form values using Domma
200
- const formData = {
201
- name: $('#name').val(),
202
- email: $('#email').val(),
203
- subject: $('#subject').val(),
204
- message: $('#message').val()
205
- };
206
-
207
- // Show success message (in a real app, send to backend)
208
- Domma.elements.toast({
209
- message: 'Thank you! Your message has been sent successfully.',
210
- type: 'success',
211
- duration: 5000
212
- });
213
-
214
- // Reset form
215
- $(this)[0].reset();
216
- });
217
-
218
- // Initialize accordion
219
- Domma.elements.accordion('#faq-accordion');
220
- });
221
- </script>
222
- </body>
223
- </html>
@@ -1,121 +0,0 @@
1
- /**
2
- * Custom Styles for {{projectName}}
3
- * ════════════════════════════════════════════════════════════════
4
- *
5
- * This file is loaded after all Domma CSS, allowing you to override
6
- * theme variables and component styles.
7
- */
8
-
9
- /* ────────────────────────────────────────────────────────────────
10
- * Theme Overrides
11
- * ────────────────────────────────────────────────────────────────
12
- * Override any theme variable to customize your brand colors.
13
- * Full list of variables: https://github.com/dcbw-it/domma
14
- *
15
- * Example: Customize primary color
16
- */
17
- :root {
18
- /* Uncomment to override:
19
- --dm-primary: #3b82f6;
20
- --dm-primary-hover: #2563eb;
21
- --dm-primary-text: #ffffff;
22
- */
23
- }
24
-
25
- /* ────────────────────────────────────────────────────────────────
26
- * Component Overrides
27
- * ────────────────────────────────────────────────────────────────
28
- * Override component styles after Domma loads.
29
- */
30
-
31
- /* Example: Custom button styles */
32
- /*
33
- .btn-custom {
34
- background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
35
- border: none;
36
- color: white;
37
- }
38
-
39
- .btn-custom:hover {
40
- transform: translateY(-2px);
41
- box-shadow: 0 10px 20px rgba(0, 0, 0, 0.2);
42
- }
43
- */
44
-
45
- /* ────────────────────────────────────────────────────────────────
46
- * Layout Customizations
47
- * ────────────────────────────────────────────────────────────────
48
- */
49
-
50
- /* Footer styling */
51
- .page-footer {
52
- background-color: var(--dm-surface);
53
- border-top: 1px solid var(--dm-border);
54
- padding: var(--dm-space-6) 0;
55
- margin-top: var(--dm-space-8);
56
- }
57
-
58
- .footer-content {
59
- max-width: 1200px;
60
- margin: 0 auto;
61
- padding: 0 var(--dm-space-4);
62
- display: flex;
63
- justify-content: space-between;
64
- align-items: center;
65
- flex-wrap: wrap;
66
- gap: var(--dm-space-4);
67
- }
68
-
69
- .footer-content p {
70
- margin: 0;
71
- color: var(--dm-text-secondary);
72
- }
73
-
74
- .footer-nav {
75
- display: flex;
76
- gap: var(--dm-space-6);
77
- }
78
-
79
- .footer-nav a {
80
- color: var(--dm-text-secondary);
81
- text-decoration: none;
82
- transition: color 0.2s ease;
83
- }
84
-
85
- .footer-nav a:hover {
86
- color: var(--dm-primary);
87
- }
88
-
89
- /* Code copy button styling */
90
- .code-copy-btn {
91
- position: absolute;
92
- top: var(--dm-space-2);
93
- right: var(--dm-space-2);
94
- opacity: 0.7;
95
- }
96
-
97
- .code-copy-btn:hover {
98
- opacity: 1;
99
- }
100
-
101
- /* ────────────────────────────────────────────────────────────────
102
- * Responsive Adjustments
103
- * ────────────────────────────────────────────────────────────────
104
- */
105
- @media (max-width: 768px) {
106
- .footer-content {
107
- flex-direction: column;
108
- text-align: center;
109
- }
110
-
111
- .footer-nav {
112
- flex-direction: column;
113
- gap: var(--dm-space-2);
114
- }
115
- }
116
-
117
- /* ────────────────────────────────────────────────────────────────
118
- * Your Custom Styles
119
- * ────────────────────────────────────────────────────────────────
120
- * Add your project-specific styles below this line.
121
- */
@@ -1,308 +0,0 @@
1
- <!DOCTYPE html>
2
- <html lang="en">
3
- <head>
4
- <meta charset="UTF-8">
5
- <meta name="viewport" content="width=device-width, initial-scale=1.0">
6
- <title>Documentation - {{projectName}}</title>
7
-
8
- <!-- Domma CSS -->
9
- <link rel="stylesheet" href="../node_modules/domma-js/public/dist/domma.css">
10
- <link rel="stylesheet" href="../node_modules/domma-js/public/dist/grid.css">
11
- <link rel="stylesheet" href="../node_modules/domma-js/public/dist/elements.css">
12
- <link rel="stylesheet" href="../node_modules/domma-js/public/dist/themes/domma-themes.css">
13
- <link rel="stylesheet" href="../node_modules/domma-js/public/dist/syntax.css">
14
-
15
- <!-- Custom CSS -->
16
- <link rel="stylesheet" href="../css/custom.css">
17
-
18
- <style>
19
- .docs-sidebar {
20
- position: sticky;
21
- top: 80px;
22
- max-height: calc(100vh - 100px);
23
- overflow-y: auto;
24
- }
25
-
26
- .docs-sidebar .nav-link {
27
- padding: var(--dm-space-2) var(--dm-space-3);
28
- color: var(--dm-text-secondary);
29
- border-left: 2px solid transparent;
30
- transition: all 0.2s;
31
- }
32
-
33
- .docs-sidebar .nav-link:hover {
34
- color: var(--dm-primary);
35
- background: var(--dm-surface-raised);
36
- }
37
-
38
- .docs-sidebar .nav-link.active {
39
- color: var(--dm-primary);
40
- border-left-color: var(--dm-primary);
41
- background: var(--dm-surface-raised);
42
- }
43
- </style>
44
- </head>
45
- <body class="dm-theme-{{theme}}">
46
- <!-- Navigation -->
47
- <nav id="main-navbar"></nav>
48
-
49
- <!-- Documentation Layout -->
50
- <div class="container-fluid py-6">
51
- <div class="grid grid-cols-1 lg:grid-cols-4 gap-4">
52
- <!-- Sidebar Navigation -->
53
- <aside>
54
- <div class="docs-sidebar">
55
- <h2 class="h5 mb-3">Documentation</h2>
56
- <nav class="nav flex-column">
57
- <a href="#getting-started" class="nav-link active">Getting Started</a>
58
- <a href="#installation" class="nav-link">Installation</a>
59
- <a href="#configuration" class="nav-link">Configuration</a>
60
- <a href="#components" class="nav-link">Components</a>
61
- <a href="#theming" class="nav-link">Theming</a>
62
- <a href="#api" class="nav-link">API Reference</a>
63
- <a href="#faq" class="nav-link">FAQ</a>
64
- </nav>
65
- </div>
66
- </aside>
67
-
68
- <!-- Main Content -->
69
- <main class="lg:col-span-3">
70
- <!-- Getting Started -->
71
- <section id="getting-started" class="mb-8">
72
- <h1 class="display-4 mb-4">Getting Started</h1>
73
- <p class="lead">
74
- Welcome to {{projectName}}! This guide will help you get up and running quickly.
75
- </p>
76
- </section>
77
-
78
- <!-- Installation -->
79
- <section id="installation" class="mb-8">
80
- <h2 class="h3 mb-4">Installation</h2>
81
-
82
- <div id="install-tabs" class="tabs mb-4">
83
- <ul class="tabs-nav">
84
- <li><a href="#npm-tab" class="active">npm</a></li>
85
- <li><a href="#yarn-tab">Yarn</a></li>
86
- <li><a href="#cdn-tab">CDN</a></li>
87
- </ul>
88
-
89
- <div class="tabs-content">
90
- <!-- npm Tab -->
91
- <div id="npm-tab" class="tabs-pane active">
92
- <p>Install via npm:</p>
93
- <pre><code class="language-bash">npm install domma-js</code></pre>
94
- </div>
95
-
96
- <!-- Yarn Tab -->
97
- <div id="yarn-tab" class="tabs-pane">
98
- <p>Install via Yarn:</p>
99
- <pre><code class="language-bash">yarn add domma-js</code></pre>
100
- </div>
101
-
102
- <!-- CDN Tab -->
103
- <div id="cdn-tab" class="tabs-pane">
104
- <p>Include from CDN:</p>
105
- <pre><code class="language-html">&lt;link rel="stylesheet" href="https://unpkg.com/domma-js/dist/domma.css"&gt;
106
- &lt;script src="https://unpkg.com/domma-js/dist/domma.min.js"&gt;&lt;/script&gt;</code></pre>
107
- </div>
108
- </div>
109
- </div>
110
- </section>
111
-
112
- <!-- Configuration -->
113
- <section id="configuration" class="mb-8">
114
- <h2 class="h3 mb-4">Configuration</h2>
115
- <p>
116
- Configure your project using the <code>domma.config.json</code> file:
117
- </p>
118
-
119
- <pre><code class="language-json">{
120
- "theme": {
121
- "default": "charcoal-dark",
122
- "persist": true
123
- },
124
- "navbar": {
125
- "brand": { "text": "My App" },
126
- "items": [
127
- { "text": "Home", "url": "/" }
128
- ]
129
- }
130
- }</code></pre>
131
-
132
- <div class="alert alert-info mt-4">
133
- <span data-icon="info" class="me-2"></span>
134
- <strong>Tip:</strong> You can override any configuration value programmatically using JavaScript.
135
- </div>
136
- </section>
137
-
138
- <!-- Components -->
139
- <section id="components" class="mb-8">
140
- <h2 class="h3 mb-4">Components</h2>
141
- <p>
142
- Domma includes 19+ UI components out of the box. Here are some examples:
143
- </p>
144
-
145
- <div class="grid grid-cols-1 md:grid-cols-2 gap-4 mt-3">
146
- <div class="card shadow-md">
147
- <div class="card-body">
148
- <h3 class="h5 mb-2">Buttons</h3>
149
- <div class="d-flex flex-wrap gap-2">
150
- <button class="btn btn-primary">Primary</button>
151
- <button class="btn btn-secondary">Secondary</button>
152
- <button class="btn btn-success">Success</button>
153
- <button class="btn btn-danger">Danger</button>
154
- </div>
155
- </div>
156
- </div>
157
-
158
- <div class="card shadow-md">
159
- <div class="card-body">
160
- <h3 class="h5 mb-2">Badges</h3>
161
- <div class="d-flex flex-wrap gap-2">
162
- <span class="badge badge-primary">Primary</span>
163
- <span class="badge badge-success">Success</span>
164
- <span class="badge badge-warning">Warning</span>
165
- <span class="badge badge-danger">Danger</span>
166
- </div>
167
- </div>
168
- </div>
169
- </div>
170
- </section>
171
-
172
- <!-- Theming -->
173
- <section id="theming" class="mb-8">
174
- <h2 class="h3 mb-4">Theming</h2>
175
- <p>
176
- Customize your theme by overriding CSS variables:
177
- </p>
178
-
179
- <pre><code class="language-css">:root {
180
- --dm-primary: #3b82f6;
181
- --dm-primary-hover: #2563eb;
182
- }</code></pre>
183
-
184
- <p class="mt-3">
185
- Or use one of the 16+ built-in themes:
186
- </p>
187
-
188
- <pre><code class="language-javascript">Domma.theme.set('ocean-dark');</code></pre>
189
- </section>
190
-
191
- <!-- API Reference -->
192
- <section id="api" class="mb-8">
193
- <h2 class="h3 mb-4">API Reference</h2>
194
-
195
- <div class="card mb-4">
196
- <div class="card-body">
197
- <h3 class="h5 mb-3">Domma ($ alias)</h3>
198
- <p class="text-secondary mb-3">jQuery-compatible DOM manipulation</p>
199
- <pre><code class="language-javascript">$('#element').addClass('active');
200
- $('.items').each((el) => console.log(el));</code></pre>
201
- </div>
202
- </div>
203
-
204
- <div class="card mb-4">
205
- <div class="card-body">
206
- <h3 class="h5 mb-3">Domma.utils (_ alias)</h3>
207
- <p class="text-secondary mb-3">Lodash-compatible utilities</p>
208
- <pre><code class="language-javascript">_.chunk([1, 2, 3, 4], 2); // [[1, 2], [3, 4]]
209
- _.debounce(fn, 300);</code></pre>
210
- </div>
211
- </div>
212
-
213
- <div class="card">
214
- <div class="card-body">
215
- <h3 class="h5 mb-3">Domma.theme</h3>
216
- <p class="text-secondary mb-3">Theme management</p>
217
- <pre><code class="language-javascript">Domma.theme.init({ theme: 'ocean-dark' });
218
- Domma.theme.get(); // 'ocean-dark'</code></pre>
219
- </div>
220
- </div>
221
- </section>
222
-
223
- <!-- FAQ -->
224
- <section id="faq" class="mb-8">
225
- <h2 class="h3 mb-4">Frequently Asked Questions</h2>
226
-
227
- <div class="accordion" id="docs-faq">
228
- <div class="accordion-item">
229
- <h3 class="accordion-header">
230
- <button class="accordion-button" type="button" data-bs-toggle="collapse" data-bs-target="#faq1">
231
- Is Domma production-ready?
232
- </button>
233
- </h3>
234
- <div id="faq1" class="accordion-collapse collapse show">
235
- <div class="accordion-body">
236
- Yes! Domma is actively maintained and used in production applications.
237
- </div>
238
- </div>
239
- </div>
240
-
241
- <div class="accordion-item">
242
- <h3 class="accordion-header">
243
- <button class="accordion-button collapsed" type="button" data-bs-toggle="collapse" data-bs-target="#faq2">
244
- What browsers are supported?
245
- </button>
246
- </h3>
247
- <div id="faq2" class="accordion-collapse collapse">
248
- <div class="accordion-body">
249
- Domma supports all modern browsers (Chrome, Firefox, Safari, Edge). IE11 is not supported.
250
- </div>
251
- </div>
252
- </div>
253
-
254
- <div class="accordion-item">
255
- <h3 class="accordion-header">
256
- <button class="accordion-button collapsed" type="button" data-bs-toggle="collapse" data-bs-target="#faq3">
257
- Can I use Domma with React/Vue/Angular?
258
- </button>
259
- </h3>
260
- <div id="faq3" class="accordion-collapse collapse">
261
- <div class="accordion-body">
262
- Yes! While Domma works standalone, you can integrate it with any framework for utilities and theming.
263
- </div>
264
- </div>
265
- </div>
266
- </div>
267
- </section>
268
- </main>
269
- </div>
270
- </div>
271
-
272
- <!-- Footer -->
273
- <footer class="page-footer"></footer>
274
-
275
- <!-- Domma JavaScript -->
276
- <script src="../node_modules/domma-js/public/dist/domma.min.js"></script>
277
- <script src="../node_modules/domma-js/public/dist/domma-syntax.min.js"></script>
278
-
279
- <!-- App Initialization -->
280
- <script src="../js/app.js"></script>
281
-
282
- <!-- Page-specific scripts -->
283
- <script>
284
- $(() => {
285
- // Initialize tabs
286
- Domma.elements.tabs('#install-tabs');
287
-
288
- // Initialize accordion
289
- Domma.elements.accordion('#docs-faq');
290
-
291
- // Smooth scroll for sidebar links
292
- $('.docs-sidebar a').on('click', function (e) {
293
- e.preventDefault();
294
- const targetId = $(this).attr('href');
295
- const $target = $(targetId);
296
-
297
- if ($target.length) {
298
- $target[0].scrollIntoView({behavior: 'smooth'});
299
-
300
- // Update active state
301
- $('.docs-sidebar .nav-link').removeClass('active');
302
- $(this).addClass('active');
303
- }
304
- });
305
- });
306
- </script>
307
- </body>
308
- </html>