domma-js 0.9.4-alpha → 0.9.6-alpha

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
@@ -2,19 +2,27 @@
2
2
 
3
3
  **D**ynamic **O**bject **M**anipulation & **M**odeling **A**PI
4
4
 
5
+ 🌐 **[Live Demo & Showcase](https://dommajs.org/)** | 📦 [npm](https://www.npmjs.com/package/domma-js) | 📚 [Documentation](https://dommajs.org/showcase/)
6
+
5
7
  A lightweight, zero-dependency JavaScript framework combining jQuery-style DOM manipulation, Lodash utilities, and
6
8
  modern UI components in one cohesive package.
7
9
 
8
10
  ## Features
9
11
 
10
- - **DOM Manipulation** - jQuery-compatible API with 90+ methods
11
- - **Utilities** - 120+ Lodash-compatible utility functions
12
- - **Dates** - Moment.js-style chainable date manipulation
13
- - **Models** - Reactive data models with pub/sub events
14
- - **Elements** - UI components (modals, tabs, accordions, tooltips)
15
- - **Tables** - DataTable-like functionality (sort, filter, paginate, export)
16
- - **HTTP Client** - Simple async HTTP requests
17
- - **Config Engine** - Declarative JSON-based behavior configuration
12
+ - **DOM Manipulation** (`$`) - jQuery-compatible API with 90+ methods
13
+ - **Utilities** (`_`) - 120+ Lodash-compatible utility functions with function composition
14
+ - **Dates** (`D`) - Moment.js-style chainable date manipulation
15
+ - **Models** (`M`) - Reactive data models with pub/sub events and two-way DOM binding
16
+ - **Elements** (`E`) - 28 UI components (modals, tabs, carousels, navbars, slideovers, and more)
17
+ - **Tables** (`T`) - DataTable-like functionality (sort, filter, paginate, export to CSV/JSON)
18
+ - **Forms** (`F`) - Schema-driven form generation with validation, wizards, and CRUD helpers
19
+ - **Icons** (`I`) - 200+ SVG icons in 15 categories with auto-scan
20
+ - **HTTP Client** (`H`) - Simple async HTTP requests with JSON handling
21
+ - **Storage** (`S`) - localStorage wrapper with auto JSON serialization
22
+ - **Themes** - 10+ built-in themes with light/dark variants and system detection
23
+ - **Config Engine** - Declarative JSON-based behavior configuration with mutable API
24
+ - **CSS Features** - Utility classes (glow, shadows, elevation, fireworks, grid)
25
+ - **Developer Tools** - Theme Roller, Page Roller, Editor, Print-to-PDF
18
26
 
19
27
  ## Installation
20
28
 
@@ -72,16 +80,48 @@ For quick prototyping without npm:
72
80
  <script src="https://unpkg.com/domma-js/public/dist/domma.min.js"></script>
73
81
  ```
74
82
 
75
- **[Try the CDN Quickstart](./public/quickstart/index.html)** - Single-file example ready to download
83
+ ## Live Demo
84
+
85
+ 🚀 **[Try Domma Online](https://dommajs.org/)** - Interactive showcase with 40+ examples
86
+
87
+ Explore all features:
88
+ - **[Showcase](https://dommajs.org/showcase/)** - Component examples and tutorials
89
+ - **[MiniApps](https://dommajs.org/miniapps/)** - Real-world applications
90
+ - **[Download](https://dommajs.org/showcase/download/)** - Preset bundles and archives
76
91
 
77
92
  ## Short Aliases
78
93
 
79
- | Namespace | Full Path | Alias | Description |
80
- |-----------|----------------|-------|-------------------------------|
81
- | DOM | `Domma()` | `$` | jQuery-style DOM manipulation |
82
- | Utils | `Domma.utils` | `_` | Lodash-style utilities |
83
- | Models | `Domma.models` | `M` | Reactive models & pub/sub |
84
- | Dates | `Domma.dates` | `D` | Date manipulation |
94
+ | Namespace | Full Path | Alias | Description |
95
+ |-----------|-------------------|-------|-------------------------------|
96
+ | DOM | `Domma()` | `$` | jQuery-style DOM manipulation |
97
+ | Utils | `Domma.utils` | `_` | Lodash-style utilities |
98
+ | Models | `Domma.models` | `M` | Reactive models & pub/sub |
99
+ | Dates | `Domma.dates` | `D` | Date manipulation |
100
+ | Storage | `Domma.storage` | `S` | localStorage wrapper |
101
+ | Auth | `Domma.auth` | `A` | Authentication module |
102
+ | Forms | `Domma.forms` | `F` | Form builder |
103
+ | HTTP | `Domma.http` | `H` | HTTP client |
104
+ | Elements | `Domma.elements` | `E` | UI components |
105
+ | Icons | `Domma.icons` | `I` | SVG icon system |
106
+ | Tables | `Domma.tables` | `T` | DataTable functionality |
107
+
108
+ ## Bundle Options
109
+
110
+ Choose the right bundle for your needs:
111
+
112
+ | Bundle | Size | Includes |
113
+ |--------|------|----------|
114
+ | **full** | 390KB | All modules and components |
115
+ | **minimal** | 163KB | DOM, utils, dates - zero UI |
116
+ | **essentials** | 328KB | Core + models, elements, config |
117
+ | **data-focused** | 190KB | Core + models, tables, http, storage |
118
+ | **no-ui** | 41KB | Core utilities only (DOM + utils) |
119
+
120
+ ```javascript
121
+ // Use specific bundles via CDN
122
+ <script src="https://unpkg.com/domma-js/public/dist/domma-minimal.min.js"></script>
123
+ <script src="https://unpkg.com/domma-js/public/dist/domma-essentials.min.js"></script>
124
+ ```
85
125
 
86
126
  ## Quick Start
87
127
 
@@ -125,10 +165,112 @@ const table = Domma.tables.create('#users', {
125
165
  });
126
166
  ```
127
167
 
168
+ ## CSS Features
169
+
170
+ Domma includes comprehensive utility classes for rapid UI development.
171
+
172
+ **Glow Effects:**
173
+ ```html
174
+ <button class="btn glow-primary">Primary Glow</button>
175
+ <div class="card glow-success">Success Glow</div>
176
+ ```
177
+
178
+ **Shadows & Elevation:**
179
+ ```html
180
+ <div class="shadow-sm">Small shadow</div>
181
+ <div class="shadow-md">Medium shadow</div>
182
+ <div class="elevation-3">Elevated card</div>
183
+ ```
184
+
185
+ **Firework Animations:**
186
+ ```html
187
+ <button class="firework-on-click">Click Me!</button>
188
+ <div class="firework-sparkle">Sparkle Effect</div>
189
+ ```
190
+
191
+ **Grid System:**
192
+ ```html
193
+ <!-- Bootstrap-style 12-column grid -->
194
+ <div class="row">
195
+ <div class="col-md-6">Half width</div>
196
+ <div class="col-md-6">Half width</div>
197
+ </div>
198
+
199
+ <!-- CSS Grid utilities -->
200
+ <div class="grid grid-cols-3 gap-4">
201
+ <div>Item 1</div>
202
+ <div>Item 2</div>
203
+ <div>Item 3</div>
204
+ </div>
205
+ ```
206
+
207
+ ## Themes
208
+
209
+ 10+ built-in themes with light/dark variants and automatic system detection.
210
+
211
+ ```javascript
212
+ // Initialize with theme
213
+ Domma.theme.init({ theme: 'ocean-dark' });
214
+
215
+ // Change theme dynamically
216
+ Domma.theme.set('forest-light');
217
+
218
+ // Toggle between light/dark
219
+ Domma.theme.toggle();
220
+
221
+ // Auto-detect system preference
222
+ Domma.theme.init({ autoDetect: true });
223
+ ```
224
+
225
+ **Available Themes:**
226
+ - charcoal (light/dark)
227
+ - ocean (light/dark)
228
+ - forest (light/dark)
229
+ - sunset (light/dark)
230
+ - lavender (light/dark)
231
+ - crimson (light/dark)
232
+ - slate (light/dark)
233
+ - amber (light/dark)
234
+ - teal (light/dark)
235
+ - rose (light/dark)
236
+
237
+ ## Developer Tools
238
+
239
+ Domma includes powerful developer tools in a separate bundle.
240
+
241
+ ```html
242
+ <!-- Load tools bundle -->
243
+ <script src="dist/domma-tools.min.js"></script>
244
+ ```
245
+
246
+ **Theme Roller** - Visual theme customization tool:
247
+ ```javascript
248
+ Domma.themeRoller.open();
249
+ ```
250
+
251
+ **Page Roller** - Drag-and-drop page builder:
252
+ ```javascript
253
+ Domma.pageRoller.init();
254
+ ```
255
+
256
+ **Editor** - Rich content editor with export:
257
+ ```javascript
258
+ Domma.editor.create('#editor', {
259
+ toolbar: ['bold', 'italic', 'heading', 'list'],
260
+ onSave: (content) => console.log(content)
261
+ });
262
+ ```
263
+
264
+ **Print-to-PDF** - Export any element to PDF:
265
+ ```javascript
266
+ Domma.printToPDF('#content', { filename: 'export.pdf' });
267
+ ```
268
+
128
269
  ## Config Engine
129
270
 
130
- Define behavior declaratively with JSON:
271
+ Define behavior declaratively with JSON configuration.
131
272
 
273
+ **Basic Setup:**
132
274
  ```javascript
133
275
  $.setup({
134
276
  '#header': {
@@ -151,6 +293,26 @@ $.setup({
151
293
  });
152
294
  ```
153
295
 
296
+ **Mutable Configuration API:**
297
+ ```javascript
298
+ // Update existing configuration
299
+ $.update('#my-modal', {
300
+ options: { backdrop: false } // Deep merges with existing config
301
+ });
302
+
303
+ // Retrieve configuration
304
+ const config = $.config('#my-modal');
305
+ console.log(config);
306
+
307
+ // Reset/destroy configuration
308
+ $.reset('#my-modal'); // Removes component and unbinds events
309
+ ```
310
+
311
+ **Supported Components (16 total):**
312
+ - card, modal, tabs, accordion, tooltip, carousel, dropdown
313
+ - badge, backToTop, buttonGroup, loader, breadcrumbs, navbar
314
+ - notification, timer, alarm
315
+
154
316
  ## Namespaces
155
317
 
156
318
  ### DOM (`$` or `Domma`)
@@ -258,36 +420,77 @@ M.bind(user, 'name', '#name-input', { twoWay: true });
258
420
  M.bind(user, 'name', '#display', { format: v => `Hello, ${v}!` });
259
421
  ```
260
422
 
261
- ### Elements (`Domma.elements`)
262
-
263
- UI components with JavaScript interactivity.
423
+ ### Elements (`E` or `Domma.elements`)
424
+
425
+ 28 production-ready UI components with JavaScript interactivity.
426
+
427
+ **Dialogs & Overlays:**
428
+ - `modal()` - Modal dialogs with backdrop
429
+ - `dialog` - Promise-based alert/confirm/prompt
430
+ - `toast()` - Toast notifications (static method)
431
+ - `slideover()` - Panel overlays from screen edges
432
+ - `dropdown()` - Dropdown menus
433
+
434
+ **Navigation:**
435
+ - `tabs()` - Tabbed navigation
436
+ - `navbar()` - Responsive navigation bar
437
+ - `sidebar()` - Sidebar with unlimited nesting
438
+ - `breadcrumbs()` - Navigation breadcrumbs
439
+ - `backToTop()` - Scroll-to-top button
440
+
441
+ **Content Display:**
442
+ - `card()` - Cards with hover and collapsible support
443
+ - `accordion()` - Expandable/collapsible sections
444
+ - `carousel()` - Image/content carousels
445
+ - `hero` - Hero sections (CSS-only)
446
+ - `footer()` - Footer with 3 layout modes
447
+
448
+ **Form Inputs:**
449
+ - `autocomplete()` - Input with suggestions
450
+ - `pillbox()` - Multi-select tag input
451
+ - `buttonGroup()` - Radio/checkbox button groups
452
+
453
+ **Feedback & Indicators:**
454
+ - `loader()` - Loading indicators (spinner, dots, pulse, bars)
455
+ - `badge()` - Badge/notification indicators
456
+ - `tooltip()` - Hover tooltips
457
+ - `notification()` - Desktop notifications
458
+ - `cookieConsent()` - Cookie consent banner
459
+
460
+ **Data & Visualization:**
461
+ - `treeView()` - Hierarchical tree display
462
+ - `progression()` - Timeline/roadmap component
463
+ - `timer()` - Countdown timer
464
+ - `alarm()` - Scheduled alerts
264
465
 
265
466
  ```javascript
266
467
  // Modal
267
- const modal = Domma.elements.modal('#dialog', {
268
- backdrop: true,
269
- keyboard: true,
270
- onOpen: () => console.log('Opened')
271
- });
468
+ const modal = E.modal('#dialog', { backdrop: true });
272
469
  modal.open();
273
- modal.close();
274
470
 
275
471
  // Tabs
276
- const tabs = Domma.elements.tabs('#product-tabs', {
277
- activeIndex: 0,
472
+ const tabs = E.tabs('#product-tabs', {
278
473
  onChange: (index) => loadContent(index)
279
474
  });
280
475
 
281
- // Accordion
282
- const accordion = Domma.elements.accordion('#faq', {
283
- multiExpand: false
476
+ // Autocomplete with async data
477
+ E.autocomplete('#search', {
478
+ dataSource: async (query) => {
479
+ const res = await fetch(`/api/search?q=${query}`);
480
+ return res.json();
481
+ },
482
+ onSelect: (item) => console.log(item)
284
483
  });
285
484
 
286
- // Tooltip
287
- Domma.elements.tooltip('.help-icon', {
288
- content: 'Click for help',
289
- position: 'top'
485
+ // Sidebar with nesting
486
+ E.sidebar('#main-nav', {
487
+ mobileBreakpoint: 768,
488
+ persist: true // Remember state
290
489
  });
490
+
491
+ // Promise-based dialog
492
+ const confirmed = await E.confirm('Delete this item?');
493
+ if (confirmed) deleteItem();
291
494
  ```
292
495
 
293
496
  ### Tables (`Domma.tables`)
@@ -325,6 +528,102 @@ table.download('csv', 'users.csv');
325
528
  table.toJSON();
326
529
  ```
327
530
 
531
+ ### Forms (`F` or `Domma.forms`)
532
+
533
+ Schema-driven form generation with validation, wizards, and CRUD helpers.
534
+
535
+ ```javascript
536
+ // Schema-driven form
537
+ const form = F.create('#user-form', {
538
+ fields: [
539
+ { name: 'name', type: 'string', label: 'Full Name', required: true },
540
+ { name: 'email', type: 'email', label: 'Email', required: true },
541
+ { name: 'age', type: 'number', label: 'Age', min: 18, max: 120 },
542
+ { name: 'role', type: 'select', label: 'Role', options: ['Admin', 'User'] }
543
+ ],
544
+ layout: 'grid', // 'stacked', 'inline', or 'grid'
545
+ onSubmit: (data) => console.log(data)
546
+ });
547
+
548
+ // Multi-step wizard
549
+ const wizard = F.wizard('#registration', {
550
+ steps: [
551
+ { title: 'Account', fields: [/*...*/] },
552
+ { title: 'Profile', fields: [/*...*/] },
553
+ { title: 'Confirm', fields: [/*...*/] }
554
+ ],
555
+ onComplete: (data) => saveUser(data)
556
+ });
557
+
558
+ // CRUD helper
559
+ const crud = F.crud({
560
+ apiUrl: '/api/users',
561
+ fields: schema,
562
+ table: '#users-table'
563
+ });
564
+ ```
565
+
566
+ ### Icons (`I` or `Domma.icons`)
567
+
568
+ 200+ SVG icons in 15 categories with declarative and imperative APIs.
569
+
570
+ ```javascript
571
+ // Declarative (auto-scan on load)
572
+ <button data-icon="check">Save</button>
573
+ <span data-icon="user" data-icon-size="24"></span>
574
+
575
+ // Manual scan after DOM updates
576
+ I.scan();
577
+
578
+ // Programmatic rendering
579
+ const html = I.render('settings', { size: 32, color: '#007bff' });
580
+ $('#icon-container').html(html);
581
+
582
+ // Inject into existing element
583
+ I.inject('#my-icon', 'star');
584
+ ```
585
+
586
+ **Categories:** actions, arrows, communication, devices, editor, files, hardware, media, navigation, notifications, social, status, toggle, ui, weather
587
+
588
+ ### HTTP (`H` or `Domma.http`)
589
+
590
+ Simple async HTTP client with automatic JSON handling.
591
+
592
+ ```javascript
593
+ // GET request
594
+ const users = await H.get('/api/users');
595
+
596
+ // POST with data
597
+ const response = await H.post('/api/users', {
598
+ name: 'Alice',
599
+ email: 'alice@example.com'
600
+ });
601
+
602
+ // PUT and DELETE
603
+ await H.put('/api/users/1', updates);
604
+ await H.delete('/api/users/1');
605
+ ```
606
+
607
+ ### Storage (`S` or `Domma.storage`)
608
+
609
+ localStorage wrapper with automatic JSON serialization.
610
+
611
+ ```javascript
612
+ // Store data (auto-serializes)
613
+ S.set('user', { name: 'Alice', role: 'admin' });
614
+ S.set('preferences', { theme: 'dark', lang: 'en' });
615
+
616
+ // Retrieve (auto-parses)
617
+ const user = S.get('user'); // Returns object
618
+ const theme = S.get('theme', 'light'); // With default
619
+
620
+ // Other methods
621
+ S.has('user'); // Check existence
622
+ S.remove('user'); // Delete key
623
+ S.keys(); // List all Domma keys
624
+ S.clear(); // Clear all Domma data
625
+ ```
626
+
328
627
  ## Demo & Showcase
329
628
 
330
629
  ```bash
@@ -337,7 +636,9 @@ npm run showcase
337
636
 
338
637
  ## MiniApps
339
638
 
340
- Real-world, production-ready applications built with Domma:
639
+ Real-world, production-ready applications built with Domma.
640
+
641
+ 🚀 **[Explore All MiniApps](https://dommajs.org/miniapps/)** - Try them live!
341
642
 
342
643
  ### My Garage
343
644
 
@@ -346,8 +647,7 @@ Vehicle management system with DVLA integration for UK registration lookups.
346
647
  - Look up any UK vehicle by registration number
347
648
  - Display MOT and tax status
348
649
  - Save vehicle history with Domma.storage
349
- - **Status:** Coming Soon
350
- - **Repository:** [domma-garage](https://github.com/yourusername/domma-garage)
650
+ - **Try it:** [My Garage Live](https://dommajs.org/miniapps/garage/)
351
651
 
352
652
  ### Domma Docs
353
653
 
@@ -357,22 +657,16 @@ Powerful document editor with rich text formatting and export capabilities.
357
657
  - Document management (save, open, delete)
358
658
  - Export to PDF, HTML, and Markdown
359
659
  - Auto-save with Domma.storage
360
- - **Status:** Coming Soon
361
- - **Repository:** [domma-docs](https://github.com/yourusername/domma-docs)
660
+ - **Try it:** [Domma Docs Live](https://dommajs.org/miniapps/docs/)
362
661
 
363
- ### Invoicing System
662
+ ### Nexus
364
663
 
365
- Complete invoicing solution for freelancers and small businesses.
664
+ Project management and collaboration platform.
366
665
 
367
- - Create and manage invoices with line items
368
- - Client database with full CRUD operations
369
- - Invoice tracking and status management
370
- - Professional PDF export
371
- - Dashboard and reporting
372
- - **Status:** Coming Soon
373
- - **Repository:** [domma-invoicing](https://github.com/yourusername/domma-invoicing)
374
-
375
- **Learn More:** Visit the [MiniApps Hub](./public/miniapps/index.html) to explore all available applications.
666
+ - Task tracking and assignment
667
+ - Team collaboration tools
668
+ - Real-time updates
669
+ - **Try it:** [Nexus Live](https://dommajs.org/miniapps/nexus/)
376
670
 
377
671
  ## Documentation
378
672
 
@@ -425,7 +719,15 @@ NODE_ENV=production npm run build # Production build
425
719
 
426
720
  ## Bundle Size
427
721
 
428
- ~125KB minified (includes all namespaces)
722
+ | Bundle | Size | Description |
723
+ |--------|------|-------------|
724
+ | **full** | 390KB | Complete framework with all modules |
725
+ | **minimal** | 163KB | DOM + Utils + Dates only |
726
+ | **essentials** | 328KB | Core + Models + Elements + Config |
727
+ | **data-focused** | 190KB | Core + Models + Tables + HTTP + Storage |
728
+ | **no-ui** | 41KB | Core utilities without UI components |
729
+
730
+ All sizes are minified. Choose the bundle that fits your needs!
429
731
 
430
732
  ## Browser Support
431
733
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "domma-js",
3
- "version": "0.9.4-alpha",
3
+ "version": "0.9.6-alpha",
4
4
  "description": "Dynamic Object Manipulation & Modeling API - A complete front-end toolkit.",
5
5
  "main": "public/dist/domma.min.js",
6
6
  "module": "public/dist/domma.esm.js",
@@ -2,7 +2,7 @@
2
2
  * Domma Complete CSS Bundle v0.9.4-alpha
3
3
  * Dynamic Object Manipulation & Modeling API
4
4
  * (c) 2026 Darryl Waterhouse & DCBW-IT
5
- * Built: 2026-01-12T15:32:19.159Z
5
+ * Built: 2026-01-13T22:46:23.455Z
6
6
  */
7
7
 
8
8
  /* ============================================
@@ -14,8 +14,8 @@
14
14
  * Domma Core CSS v0.9.4-alpha
15
15
  * Dynamic Object Manipulation & Modeling API
16
16
  * (c) 2026 Darryl Waterhouse & DCBW-IT
17
- * Built: 2026-01-12T15:32:18.858Z
18
- * Commit: ac05440
17
+ * Built: 2026-01-13T22:46:23.157Z
18
+ * Commit: 656a69e
19
19
  */
20
20
 
21
21
  /**
@@ -4019,8 +4019,8 @@ body.dm-cloaked.dm-ready {
4019
4019
  * Domma Grid CSS v0.9.4-alpha
4020
4020
  * Dynamic Object Manipulation & Modeling API
4021
4021
  * (c) 2026 Darryl Waterhouse & DCBW-IT
4022
- * Built: 2026-01-12T15:32:18.864Z
4023
- * Commit: ac05440
4022
+ * Built: 2026-01-13T22:46:23.164Z
4023
+ * Commit: 656a69e
4024
4024
  */
4025
4025
 
4026
4026
  /**
@@ -4620,8 +4620,8 @@ body.dm-cloaked.dm-ready {
4620
4620
  * Domma Elements CSS v0.9.4-alpha
4621
4621
  * Dynamic Object Manipulation & Modeling API
4622
4622
  * (c) 2026 Darryl Waterhouse & DCBW-IT
4623
- * Built: 2026-01-12T15:32:18.873Z
4624
- * Commit: ac05440
4623
+ * Built: 2026-01-13T22:46:23.171Z
4624
+ * Commit: 656a69e
4625
4625
  */
4626
4626
 
4627
4627
  /**
@@ -11166,8 +11166,8 @@ code {
11166
11166
  * Domma Themes v0.9.4-alpha
11167
11167
  * Dynamic Object Manipulation & Modeling API
11168
11168
  * (c) 2026 Darryl Waterhouse & DCBW-IT
11169
- * Built: 2026-01-12T15:32:18.835Z
11170
- * Commit: ac05440
11169
+ * Built: 2026-01-13T22:46:23.136Z
11170
+ * Commit: 656a69e
11171
11171
  */
11172
11172
 
11173
11173
  /**
@@ -2,7 +2,7 @@
2
2
  * Domma Data-Focused CSS Bundle v0.9.4-alpha
3
3
  * Dynamic Object Manipulation & Modeling API
4
4
  * (c) 2026 Darryl Waterhouse & DCBW-IT
5
- * Built: 2026-01-12T15:32:19.152Z
5
+ * Built: 2026-01-13T22:46:23.446Z
6
6
  */
7
7
 
8
8
  /* ============================================
@@ -233,8 +233,8 @@
233
233
  * Domma Core CSS v0.9.4-alpha
234
234
  * Dynamic Object Manipulation & Modeling API
235
235
  * (c) 2026 Darryl Waterhouse & DCBW-IT
236
- * Built: 2026-01-12T15:32:18.858Z
237
- * Commit: ac05440
236
+ * Built: 2026-01-13T22:46:23.157Z
237
+ * Commit: 656a69e
238
238
  */
239
239
 
240
240
  /**
@@ -4238,8 +4238,8 @@ body.dm-cloaked.dm-ready {
4238
4238
  * Domma Grid CSS v0.9.4-alpha
4239
4239
  * Dynamic Object Manipulation & Modeling API
4240
4240
  * (c) 2026 Darryl Waterhouse & DCBW-IT
4241
- * Built: 2026-01-12T15:32:18.864Z
4242
- * Commit: ac05440
4241
+ * Built: 2026-01-13T22:46:23.164Z
4242
+ * Commit: 656a69e
4243
4243
  */
4244
4244
 
4245
4245
  /**
@@ -4839,8 +4839,8 @@ body.dm-cloaked.dm-ready {
4839
4839
  * Domma Elements CSS v0.9.4-alpha
4840
4840
  * Dynamic Object Manipulation & Modeling API
4841
4841
  * (c) 2026 Darryl Waterhouse & DCBW-IT
4842
- * Built: 2026-01-12T15:32:18.873Z
4843
- * Commit: ac05440
4842
+ * Built: 2026-01-13T22:46:23.171Z
4843
+ * Commit: 656a69e
4844
4844
  */
4845
4845
 
4846
4846
  /**
@@ -11385,8 +11385,8 @@ code {
11385
11385
  * Domma Themes v0.9.4-alpha
11386
11386
  * Dynamic Object Manipulation & Modeling API
11387
11387
  * (c) 2026 Darryl Waterhouse & DCBW-IT
11388
- * Built: 2026-01-12T15:32:18.835Z
11389
- * Commit: ac05440
11388
+ * Built: 2026-01-13T22:46:23.136Z
11389
+ * Commit: 656a69e
11390
11390
  */
11391
11391
 
11392
11392
  /**
@@ -2,7 +2,7 @@
2
2
  * Domma Essentials CSS Bundle v0.9.4-alpha
3
3
  * Dynamic Object Manipulation & Modeling API
4
4
  * (c) 2026 Darryl Waterhouse & DCBW-IT
5
- * Built: 2026-01-12T15:32:19.139Z
5
+ * Built: 2026-01-13T22:46:23.435Z
6
6
  */
7
7
 
8
8
  /* ============================================
@@ -233,8 +233,8 @@
233
233
  * Domma Core CSS v0.9.4-alpha
234
234
  * Dynamic Object Manipulation & Modeling API
235
235
  * (c) 2026 Darryl Waterhouse & DCBW-IT
236
- * Built: 2026-01-12T15:32:18.858Z
237
- * Commit: ac05440
236
+ * Built: 2026-01-13T22:46:23.157Z
237
+ * Commit: 656a69e
238
238
  */
239
239
 
240
240
  /**
@@ -4238,8 +4238,8 @@ body.dm-cloaked.dm-ready {
4238
4238
  * Domma Grid CSS v0.9.4-alpha
4239
4239
  * Dynamic Object Manipulation & Modeling API
4240
4240
  * (c) 2026 Darryl Waterhouse & DCBW-IT
4241
- * Built: 2026-01-12T15:32:18.864Z
4242
- * Commit: ac05440
4241
+ * Built: 2026-01-13T22:46:23.164Z
4242
+ * Commit: 656a69e
4243
4243
  */
4244
4244
 
4245
4245
  /**
@@ -4839,8 +4839,8 @@ body.dm-cloaked.dm-ready {
4839
4839
  * Domma Elements CSS v0.9.4-alpha
4840
4840
  * Dynamic Object Manipulation & Modeling API
4841
4841
  * (c) 2026 Darryl Waterhouse & DCBW-IT
4842
- * Built: 2026-01-12T15:32:18.873Z
4843
- * Commit: ac05440
4842
+ * Built: 2026-01-13T22:46:23.171Z
4843
+ * Commit: 656a69e
4844
4844
  */
4845
4845
 
4846
4846
  /**
@@ -11385,8 +11385,8 @@ code {
11385
11385
  * Domma Themes v0.9.4-alpha
11386
11386
  * Dynamic Object Manipulation & Modeling API
11387
11387
  * (c) 2026 Darryl Waterhouse & DCBW-IT
11388
- * Built: 2026-01-12T15:32:18.835Z
11389
- * Commit: ac05440
11388
+ * Built: 2026-01-13T22:46:23.136Z
11389
+ * Commit: 656a69e
11390
11390
  */
11391
11391
 
11392
11392
  /**