domma-js 0.9.17-alpha → 0.10.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +72 -28
- package/package.json +6 -2
- package/public/dist/bundles/domma-complete.css +80 -56
- package/public/dist/bundles/domma-data-focused.css +80 -56
- package/public/dist/bundles/domma-essentials.css +80 -56
- package/public/dist/bundles/domma-full.css +80 -56
- package/public/dist/bundles/domma-grayve.css +80 -56
- package/public/dist/bundles/domma-minimal.css +8 -8
- package/public/dist/domma-syntax.min.js +3 -3
- package/public/dist/domma.css +3 -3
- package/public/dist/domma.esm.js +4 -4
- package/public/dist/domma.min.js +4 -4
- package/public/dist/elements.css +69 -45
- package/public/dist/grid.css +3 -3
- package/public/dist/syntax.css +3 -3
- package/public/dist/themes/domma-themes.css +3 -3
- package/templates/kickstart/.claude/settings.json +68 -0
- package/templates/kickstart/.claude/snippets.md +683 -0
- package/templates/kickstart/CLAUDE.md +788 -0
- package/templates/kickstart/blueprints/README.md +361 -0
- package/templates/kickstart/blueprints/common/contact.js +135 -0
- package/templates/kickstart/blueprints/common/settings.js +194 -0
- package/templates/kickstart/blueprints/common/user.js +123 -0
- package/templates/kickstart/blueprints/crud/product.js +346 -0
- package/templates/kickstart/blueprints/crud/task.js +419 -0
- package/templates/kickstart/blueprints/forms/login.js +292 -0
- package/templates/kickstart/blueprints/forms/registration.js +254 -0
- package/templates/kickstart/frontend/types/domma.d.ts +620 -0
package/README.md
CHANGED
|
@@ -15,7 +15,7 @@ modern UI components in one cohesive package.
|
|
|
15
15
|
- **Models** (`M`) - Reactive data models with pub/sub events and two-way DOM binding
|
|
16
16
|
- **Elements** (`E`) - 28 UI components (modals, tabs, carousels, navbars, slideovers, and more)
|
|
17
17
|
- **Tables** (`T`) - DataTable-like functionality (sort, filter, paginate, export to CSV/JSON)
|
|
18
|
-
- **Forms** (`F`) -
|
|
18
|
+
- **Forms** (`F`) - Blueprint-driven form generation with validation, wizards, and CRUD helpers
|
|
19
19
|
- **Icons** (`I`) - 200+ SVG icons in 15 categories with auto-scan
|
|
20
20
|
- **HTTP Client** (`H`) - Simple async HTTP requests with JSON handling
|
|
21
21
|
- **Storage** (`S`) - localStorage wrapper with auto JSON serialization
|
|
@@ -69,17 +69,47 @@ const { $, _, M, D } = Domma;
|
|
|
69
69
|
|
|
70
70
|
For quick prototyping without npm:
|
|
71
71
|
|
|
72
|
+
**Option 1: Official CDN (Recommended)**
|
|
73
|
+
|
|
74
|
+
```html
|
|
75
|
+
<!-- CSS (Load in this order) -->
|
|
76
|
+
<link rel="stylesheet" href="https://dommajs.org/dist/domma.css">
|
|
77
|
+
<link rel="stylesheet" href="https://dommajs.org/dist/grid.css">
|
|
78
|
+
<link rel="stylesheet" href="https://dommajs.org/dist/elements.css">
|
|
79
|
+
<link rel="stylesheet" href="https://dommajs.org/dist/themes/domma-themes.css">
|
|
80
|
+
|
|
81
|
+
<!-- JavaScript -->
|
|
82
|
+
<script src="https://dommajs.org/dist/domma.min.js"></script>
|
|
83
|
+
```
|
|
84
|
+
|
|
85
|
+
**Option 2: unpkg CDN**
|
|
86
|
+
|
|
72
87
|
```html
|
|
73
88
|
<!-- CSS -->
|
|
74
|
-
<link rel="stylesheet" href="https://unpkg.com/domma-js/public/dist/domma.css">
|
|
75
|
-
<link rel="stylesheet" href="https://unpkg.com/domma-js/public/dist/grid.css">
|
|
76
|
-
<link rel="stylesheet" href="https://unpkg.com/domma-js/public/dist/elements.css">
|
|
77
|
-
<link rel="stylesheet" href="https://unpkg.com/domma-js/public/dist/themes/domma-themes.css">
|
|
89
|
+
<link rel="stylesheet" href="https://unpkg.com/domma-js@latest/public/dist/domma.css">
|
|
90
|
+
<link rel="stylesheet" href="https://unpkg.com/domma-js@latest/public/dist/grid.css">
|
|
91
|
+
<link rel="stylesheet" href="https://unpkg.com/domma-js@latest/public/dist/elements.css">
|
|
92
|
+
<link rel="stylesheet" href="https://unpkg.com/domma-js@latest/public/dist/themes/domma-themes.css">
|
|
78
93
|
|
|
79
94
|
<!-- JavaScript -->
|
|
80
|
-
<script src="https://unpkg.com/domma-js/public/dist/domma.min.js"></script>
|
|
95
|
+
<script src="https://unpkg.com/domma-js@latest/public/dist/domma.min.js"></script>
|
|
81
96
|
```
|
|
82
97
|
|
|
98
|
+
**Option 3: jsDelivr CDN**
|
|
99
|
+
|
|
100
|
+
```html
|
|
101
|
+
<!-- CSS -->
|
|
102
|
+
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/domma-js@latest/public/dist/domma.css">
|
|
103
|
+
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/domma-js@latest/public/dist/grid.css">
|
|
104
|
+
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/domma-js@latest/public/dist/elements.css">
|
|
105
|
+
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/domma-js@latest/public/dist/themes/domma-themes.css">
|
|
106
|
+
|
|
107
|
+
<!-- JavaScript -->
|
|
108
|
+
<script src="https://cdn.jsdelivr.net/npm/domma-js@latest/public/dist/domma.min.js"></script>
|
|
109
|
+
```
|
|
110
|
+
|
|
111
|
+
> **Tip:** Replace `@latest` with a specific version (e.g., `@0.9.18`) for production to ensure stability.
|
|
112
|
+
|
|
83
113
|
## Live Demo
|
|
84
114
|
|
|
85
115
|
🚀 **[Try Domma Online](https://dommajs.org/)** - Interactive showcase with 40+ examples
|
|
@@ -91,19 +121,20 @@ Explore all features:
|
|
|
91
121
|
|
|
92
122
|
## Short Aliases
|
|
93
123
|
|
|
94
|
-
| Namespace
|
|
95
|
-
|
|
96
|
-
| DOM
|
|
97
|
-
| Utils
|
|
98
|
-
| Models
|
|
99
|
-
|
|
|
100
|
-
|
|
|
101
|
-
|
|
|
102
|
-
|
|
|
103
|
-
|
|
|
104
|
-
|
|
|
105
|
-
|
|
|
106
|
-
|
|
|
124
|
+
| Namespace | Full Path | Alias | Description |
|
|
125
|
+
|------------|-------------------|-------|------------------------------------------|
|
|
126
|
+
| DOM | `Domma()` | `$` | jQuery-style DOM manipulation |
|
|
127
|
+
| Utils | `Domma.utils` | `_` | Lodash-style utilities |
|
|
128
|
+
| Models | `Domma.models` | `M` | Reactive models & pub/sub |
|
|
129
|
+
| Blueprints | Blueprint Methods | `B` | Blueprint composition (extend, pick, omit) |
|
|
130
|
+
| Dates | `Domma.dates` | `D` | Date manipulation |
|
|
131
|
+
| Storage | `Domma.storage` | `S` | localStorage wrapper |
|
|
132
|
+
| Auth | `Domma.auth` | `A` | Authentication module |
|
|
133
|
+
| Forms | `Domma.forms` | `F` | Form builder |
|
|
134
|
+
| HTTP | `Domma.http` | `H` | HTTP client |
|
|
135
|
+
| Elements | `Domma.elements` | `E` | UI components |
|
|
136
|
+
| Icons | `Domma.icons` | `I` | SVG icon system |
|
|
137
|
+
| Tables | `Domma.tables` | `T` | DataTable functionality |
|
|
107
138
|
|
|
108
139
|
## Bundle Options
|
|
109
140
|
|
|
@@ -117,10 +148,20 @@ Choose the right bundle for your needs:
|
|
|
117
148
|
| **data-focused** | 190KB | Core + models, tables, http, storage |
|
|
118
149
|
| **no-ui** | 41KB | Core utilities only (DOM + utils) |
|
|
119
150
|
|
|
120
|
-
```
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
<script src="https://
|
|
151
|
+
```html
|
|
152
|
+
<!-- Use specific bundles via CDN -->
|
|
153
|
+
<!-- Minimal bundle (163KB) -->
|
|
154
|
+
<script src="https://dommajs.org/dist/domma-minimal.min.js"></script>
|
|
155
|
+
|
|
156
|
+
<!-- Essentials bundle (328KB) -->
|
|
157
|
+
<script src="https://dommajs.org/dist/domma-essentials.min.js"></script>
|
|
158
|
+
|
|
159
|
+
<!-- Data-focused bundle (190KB) -->
|
|
160
|
+
<script src="https://dommajs.org/dist/domma-data-focused.min.js"></script>
|
|
161
|
+
|
|
162
|
+
<!-- Via unpkg -->
|
|
163
|
+
<script src="https://unpkg.com/domma-js@latest/public/dist/domma-minimal.min.js"></script>
|
|
164
|
+
<script src="https://unpkg.com/domma-js@latest/public/dist/domma-essentials.min.js"></script>
|
|
124
165
|
```
|
|
125
166
|
|
|
126
167
|
## Quick Start
|
|
@@ -239,8 +280,11 @@ Domma.theme.init({ autoDetect: true });
|
|
|
239
280
|
Domma includes powerful developer tools in a separate bundle.
|
|
240
281
|
|
|
241
282
|
```html
|
|
242
|
-
<!-- Load tools bundle -->
|
|
243
|
-
<script src="dist/domma-tools.min.js"></script>
|
|
283
|
+
<!-- Load tools bundle via CDN -->
|
|
284
|
+
<script src="https://dommajs.org/dist/domma-tools.min.js"></script>
|
|
285
|
+
|
|
286
|
+
<!-- Or via unpkg -->
|
|
287
|
+
<script src="https://unpkg.com/domma-js@latest/public/dist/domma-tools.min.js"></script>
|
|
244
288
|
```
|
|
245
289
|
|
|
246
290
|
**Theme Roller** - Visual theme customization tool:
|
|
@@ -530,10 +574,10 @@ table.toJSON();
|
|
|
530
574
|
|
|
531
575
|
### Forms (`F` or `Domma.forms`)
|
|
532
576
|
|
|
533
|
-
|
|
577
|
+
Blueprint-driven form generation with validation, wizards, and CRUD helpers.
|
|
534
578
|
|
|
535
579
|
```javascript
|
|
536
|
-
//
|
|
580
|
+
// Blueprint-driven form
|
|
537
581
|
const form = F.create('#user-form', {
|
|
538
582
|
fields: [
|
|
539
583
|
{ name: 'name', type: 'string', label: 'Full Name', required: true },
|
|
@@ -558,7 +602,7 @@ const wizard = F.wizard('#registration', {
|
|
|
558
602
|
// CRUD helper
|
|
559
603
|
const crud = F.crud({
|
|
560
604
|
apiUrl: '/api/users',
|
|
561
|
-
fields:
|
|
605
|
+
fields: blueprint,
|
|
562
606
|
table: '#users-table'
|
|
563
607
|
});
|
|
564
608
|
```
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "domma-js",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.10.0",
|
|
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",
|
|
@@ -26,7 +26,7 @@
|
|
|
26
26
|
],
|
|
27
27
|
"repository": {
|
|
28
28
|
"type": "git",
|
|
29
|
-
"url": "git+https://github.com/
|
|
29
|
+
"url": "git+https://github.com/pinpointzero73/domma.git"
|
|
30
30
|
},
|
|
31
31
|
"type": "module",
|
|
32
32
|
"scripts": {
|
|
@@ -43,6 +43,10 @@
|
|
|
43
43
|
"build:miniapps": "node scripts/build-miniapp.js && node scripts/copy-miniapps.js",
|
|
44
44
|
"build:miniapp:garage": "node scripts/build-miniapp.js garage",
|
|
45
45
|
"generate:bundles": "node scripts/generate-bundles.js",
|
|
46
|
+
"release": "bash scripts/release.sh",
|
|
47
|
+
"release:patch": "npm version patch && npm run release",
|
|
48
|
+
"release:minor": "npm version minor && npm run release",
|
|
49
|
+
"release:major": "npm version major && npm run release",
|
|
46
50
|
"test:vitest": "vitest",
|
|
47
51
|
"test": "vitest",
|
|
48
52
|
"cypress:run": "cypress run"
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* Domma Complete CSS Bundle v0.
|
|
2
|
+
* Domma Complete CSS Bundle v0.10.0
|
|
3
3
|
* Dynamic Object Manipulation & Modeling API
|
|
4
4
|
* (c) 2026 Darryl Waterhouse & DCBW-IT
|
|
5
|
-
* Built: 2026-01-
|
|
5
|
+
* Built: 2026-01-23T16:46:59.810Z
|
|
6
6
|
*/
|
|
7
7
|
|
|
8
8
|
/* ============================================
|
|
@@ -11,11 +11,11 @@
|
|
|
11
11
|
============================================ */
|
|
12
12
|
|
|
13
13
|
/*!
|
|
14
|
-
* Domma Core CSS v0.
|
|
14
|
+
* Domma Core CSS v0.10.0
|
|
15
15
|
* Dynamic Object Manipulation & Modeling API
|
|
16
16
|
* (c) 2026 Darryl Waterhouse & DCBW-IT
|
|
17
|
-
* Built: 2026-01-
|
|
18
|
-
* Commit:
|
|
17
|
+
* Built: 2026-01-23T16:46:59.402Z
|
|
18
|
+
* Commit: e2a2ded
|
|
19
19
|
*/
|
|
20
20
|
|
|
21
21
|
/**
|
|
@@ -4016,11 +4016,11 @@ body.dm-cloaked.dm-ready {
|
|
|
4016
4016
|
============================================ */
|
|
4017
4017
|
|
|
4018
4018
|
/*!
|
|
4019
|
-
* Domma Grid CSS v0.
|
|
4019
|
+
* Domma Grid CSS v0.10.0
|
|
4020
4020
|
* Dynamic Object Manipulation & Modeling API
|
|
4021
4021
|
* (c) 2026 Darryl Waterhouse & DCBW-IT
|
|
4022
|
-
* Built: 2026-01-
|
|
4023
|
-
* Commit:
|
|
4022
|
+
* Built: 2026-01-23T16:46:59.410Z
|
|
4023
|
+
* Commit: e2a2ded
|
|
4024
4024
|
*/
|
|
4025
4025
|
|
|
4026
4026
|
/**
|
|
@@ -4617,11 +4617,11 @@ body.dm-cloaked.dm-ready {
|
|
|
4617
4617
|
============================================ */
|
|
4618
4618
|
|
|
4619
4619
|
/*!
|
|
4620
|
-
* Domma Elements CSS v0.
|
|
4620
|
+
* Domma Elements CSS v0.10.0
|
|
4621
4621
|
* Dynamic Object Manipulation & Modeling API
|
|
4622
4622
|
* (c) 2026 Darryl Waterhouse & DCBW-IT
|
|
4623
|
-
* Built: 2026-01-
|
|
4624
|
-
* Commit:
|
|
4623
|
+
* Built: 2026-01-23T16:46:59.420Z
|
|
4624
|
+
* Commit: e2a2ded
|
|
4625
4625
|
*/
|
|
4626
4626
|
|
|
4627
4627
|
/**
|
|
@@ -5573,38 +5573,66 @@ textarea:not([class])::placeholder {
|
|
|
5573
5573
|
|
|
5574
5574
|
.input-group-icon > .input-group-addon {
|
|
5575
5575
|
position: absolute;
|
|
5576
|
-
top:
|
|
5577
|
-
|
|
5578
|
-
pointer-events: none;
|
|
5579
|
-
z-index: 1;
|
|
5576
|
+
top: 0;
|
|
5577
|
+
bottom: 0;
|
|
5580
5578
|
display: flex;
|
|
5581
5579
|
align-items: center;
|
|
5582
|
-
|
|
5580
|
+
justify-content: center;
|
|
5581
|
+
pointer-events: none;
|
|
5582
|
+
z-index: 1;
|
|
5583
|
+
color: var(--dm-gray-600);
|
|
5584
|
+
background-color: var(--dm-gray-100);
|
|
5585
|
+
padding: 0 var(--dm-space-3);
|
|
5583
5586
|
}
|
|
5584
5587
|
|
|
5585
5588
|
.input-group-icon > .input-group-addon-left {
|
|
5586
|
-
left:
|
|
5589
|
+
left: 0;
|
|
5590
|
+
border-right: 1px solid var(--dm-border, var(--dm-gray-300));
|
|
5591
|
+
border-top-left-radius: var(--dm-radius-md);
|
|
5592
|
+
border-bottom-left-radius: var(--dm-radius-md);
|
|
5587
5593
|
}
|
|
5588
5594
|
|
|
5589
5595
|
.input-group-icon > .input-group-addon-right {
|
|
5590
|
-
right:
|
|
5596
|
+
right: 0;
|
|
5597
|
+
border-left: 1px solid var(--dm-border, var(--dm-gray-300));
|
|
5598
|
+
border-top-right-radius: var(--dm-radius-md);
|
|
5599
|
+
border-bottom-right-radius: var(--dm-radius-md);
|
|
5600
|
+
}
|
|
5601
|
+
|
|
5602
|
+
/* Dark theme variants */
|
|
5603
|
+
[class*="-dark"] .input-group-icon > .input-group-addon {
|
|
5604
|
+
color: var(--dm-gray-400);
|
|
5605
|
+
background-color: var(--dm-gray-800);
|
|
5606
|
+
border-color: var(--dm-gray-600);
|
|
5591
5607
|
}
|
|
5592
5608
|
|
|
5593
5609
|
/* Adjust input padding when icon is present */
|
|
5594
5610
|
.input-group-icon.has-addon-left > .form-input,
|
|
5595
|
-
.input-group-icon.has-addon-left >
|
|
5596
|
-
|
|
5611
|
+
.input-group-icon.has-addon-left > .form-select,
|
|
5612
|
+
.input-group-icon.has-addon-left > .form-textarea,
|
|
5613
|
+
.input-group-icon.has-addon-left > input,
|
|
5614
|
+
.input-group-icon.has-addon-left > select,
|
|
5615
|
+
.input-group-icon.has-addon-left > textarea {
|
|
5616
|
+
padding-left: 3.5rem;
|
|
5597
5617
|
}
|
|
5598
5618
|
|
|
5599
5619
|
.input-group-icon.has-addon-right > .form-input,
|
|
5600
|
-
.input-group-icon.has-addon-right >
|
|
5601
|
-
|
|
5620
|
+
.input-group-icon.has-addon-right > .form-select,
|
|
5621
|
+
.input-group-icon.has-addon-right > .form-textarea,
|
|
5622
|
+
.input-group-icon.has-addon-right > input,
|
|
5623
|
+
.input-group-icon.has-addon-right > select,
|
|
5624
|
+
.input-group-icon.has-addon-right > textarea {
|
|
5625
|
+
padding-right: 3.5rem;
|
|
5602
5626
|
}
|
|
5603
5627
|
|
|
5604
5628
|
.input-group-icon.has-addon-left.has-addon-right > .form-input,
|
|
5605
|
-
.input-group-icon.has-addon-left.has-addon-right >
|
|
5606
|
-
|
|
5607
|
-
|
|
5629
|
+
.input-group-icon.has-addon-left.has-addon-right > .form-select,
|
|
5630
|
+
.input-group-icon.has-addon-left.has-addon-right > .form-textarea,
|
|
5631
|
+
.input-group-icon.has-addon-left.has-addon-right > input,
|
|
5632
|
+
.input-group-icon.has-addon-left.has-addon-right > select,
|
|
5633
|
+
.input-group-icon.has-addon-left.has-addon-right > textarea {
|
|
5634
|
+
padding-left: 3.5rem;
|
|
5635
|
+
padding-right: 3.5rem;
|
|
5608
5636
|
}
|
|
5609
5637
|
|
|
5610
5638
|
/* Prepend/Append style (addon outside input) */
|
|
@@ -5683,21 +5711,21 @@ textarea:not([class])::placeholder {
|
|
|
5683
5711
|
}
|
|
5684
5712
|
|
|
5685
5713
|
.input-group-sm.input-group-icon.has-addon-left > .form-input,
|
|
5686
|
-
.input-group-sm.input-group-icon.has-addon-left >
|
|
5687
|
-
|
|
5714
|
+
.input-group-sm.input-group-icon.has-addon-left > .form-select,
|
|
5715
|
+
.input-group-sm.input-group-icon.has-addon-left > .form-textarea,
|
|
5716
|
+
.input-group-sm.input-group-icon.has-addon-left > input,
|
|
5717
|
+
.input-group-sm.input-group-icon.has-addon-left > select,
|
|
5718
|
+
.input-group-sm.input-group-icon.has-addon-left > textarea {
|
|
5719
|
+
padding-left: 2.75rem;
|
|
5688
5720
|
}
|
|
5689
5721
|
|
|
5690
5722
|
.input-group-sm.input-group-icon.has-addon-right > .form-input,
|
|
5691
|
-
.input-group-sm.input-group-icon.has-addon-right >
|
|
5692
|
-
|
|
5693
|
-
|
|
5694
|
-
|
|
5695
|
-
.input-group-sm
|
|
5696
|
-
|
|
5697
|
-
}
|
|
5698
|
-
|
|
5699
|
-
.input-group-sm .input-group-addon-right {
|
|
5700
|
-
right: var(--dm-space-2);
|
|
5723
|
+
.input-group-sm.input-group-icon.has-addon-right > .form-select,
|
|
5724
|
+
.input-group-sm.input-group-icon.has-addon-right > .form-textarea,
|
|
5725
|
+
.input-group-sm.input-group-icon.has-addon-right > input,
|
|
5726
|
+
.input-group-sm.input-group-icon.has-addon-right > select,
|
|
5727
|
+
.input-group-sm.input-group-icon.has-addon-right > textarea {
|
|
5728
|
+
padding-right: 2.75rem;
|
|
5701
5729
|
}
|
|
5702
5730
|
|
|
5703
5731
|
.input-group-lg .input-group-text {
|
|
@@ -5712,21 +5740,21 @@ textarea:not([class])::placeholder {
|
|
|
5712
5740
|
}
|
|
5713
5741
|
|
|
5714
5742
|
.input-group-lg.input-group-icon.has-addon-left > .form-input,
|
|
5715
|
-
.input-group-lg.input-group-icon.has-addon-left >
|
|
5716
|
-
|
|
5743
|
+
.input-group-lg.input-group-icon.has-addon-left > .form-select,
|
|
5744
|
+
.input-group-lg.input-group-icon.has-addon-left > .form-textarea,
|
|
5745
|
+
.input-group-lg.input-group-icon.has-addon-left > input,
|
|
5746
|
+
.input-group-lg.input-group-icon.has-addon-left > select,
|
|
5747
|
+
.input-group-lg.input-group-icon.has-addon-left > textarea {
|
|
5748
|
+
padding-left: 4rem;
|
|
5717
5749
|
}
|
|
5718
5750
|
|
|
5719
5751
|
.input-group-lg.input-group-icon.has-addon-right > .form-input,
|
|
5720
|
-
.input-group-lg.input-group-icon.has-addon-right >
|
|
5721
|
-
|
|
5722
|
-
|
|
5723
|
-
|
|
5724
|
-
.input-group-lg
|
|
5725
|
-
|
|
5726
|
-
}
|
|
5727
|
-
|
|
5728
|
-
.input-group-lg .input-group-addon-right {
|
|
5729
|
-
right: var(--dm-space-4);
|
|
5752
|
+
.input-group-lg.input-group-icon.has-addon-right > .form-select,
|
|
5753
|
+
.input-group-lg.input-group-icon.has-addon-right > .form-textarea,
|
|
5754
|
+
.input-group-lg.input-group-icon.has-addon-right > input,
|
|
5755
|
+
.input-group-lg.input-group-icon.has-addon-right > select,
|
|
5756
|
+
.input-group-lg.input-group-icon.has-addon-right > textarea {
|
|
5757
|
+
padding-right: 4rem;
|
|
5730
5758
|
}
|
|
5731
5759
|
|
|
5732
5760
|
/* Dark theme support */
|
|
@@ -5736,10 +5764,6 @@ textarea:not([class])::placeholder {
|
|
|
5736
5764
|
border-color: var(--dm-gray-600);
|
|
5737
5765
|
}
|
|
5738
5766
|
|
|
5739
|
-
[class*="-dark"].input-group-icon > .input-group-addon {
|
|
5740
|
-
color: var(--dm-gray-400);
|
|
5741
|
-
}
|
|
5742
|
-
|
|
5743
5767
|
/* Focus state - highlight addon when input is focused */
|
|
5744
5768
|
.input-group-icon:focus-within > .input-group-addon {
|
|
5745
5769
|
color: var(--dm-primary);
|
|
@@ -11163,11 +11187,11 @@ code {
|
|
|
11163
11187
|
============================================ */
|
|
11164
11188
|
|
|
11165
11189
|
/*!
|
|
11166
|
-
* Domma Themes v0.
|
|
11190
|
+
* Domma Themes v0.10.0
|
|
11167
11191
|
* Dynamic Object Manipulation & Modeling API
|
|
11168
11192
|
* (c) 2026 Darryl Waterhouse & DCBW-IT
|
|
11169
|
-
* Built: 2026-01-
|
|
11170
|
-
* Commit:
|
|
11193
|
+
* Built: 2026-01-23T16:46:59.375Z
|
|
11194
|
+
* Commit: e2a2ded
|
|
11171
11195
|
*/
|
|
11172
11196
|
|
|
11173
11197
|
/**
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* Domma Data-Focused CSS Bundle v0.
|
|
2
|
+
* Domma Data-Focused CSS Bundle v0.10.0
|
|
3
3
|
* Dynamic Object Manipulation & Modeling API
|
|
4
4
|
* (c) 2026 Darryl Waterhouse & DCBW-IT
|
|
5
|
-
* Built: 2026-01-
|
|
5
|
+
* Built: 2026-01-23T16:46:59.796Z
|
|
6
6
|
*/
|
|
7
7
|
|
|
8
8
|
/* ============================================
|
|
@@ -230,11 +230,11 @@
|
|
|
230
230
|
============================================ */
|
|
231
231
|
|
|
232
232
|
/*!
|
|
233
|
-
* Domma Core CSS v0.
|
|
233
|
+
* Domma Core CSS v0.10.0
|
|
234
234
|
* Dynamic Object Manipulation & Modeling API
|
|
235
235
|
* (c) 2026 Darryl Waterhouse & DCBW-IT
|
|
236
|
-
* Built: 2026-01-
|
|
237
|
-
* Commit:
|
|
236
|
+
* Built: 2026-01-23T16:46:59.402Z
|
|
237
|
+
* Commit: e2a2ded
|
|
238
238
|
*/
|
|
239
239
|
|
|
240
240
|
/**
|
|
@@ -4235,11 +4235,11 @@ body.dm-cloaked.dm-ready {
|
|
|
4235
4235
|
============================================ */
|
|
4236
4236
|
|
|
4237
4237
|
/*!
|
|
4238
|
-
* Domma Grid CSS v0.
|
|
4238
|
+
* Domma Grid CSS v0.10.0
|
|
4239
4239
|
* Dynamic Object Manipulation & Modeling API
|
|
4240
4240
|
* (c) 2026 Darryl Waterhouse & DCBW-IT
|
|
4241
|
-
* Built: 2026-01-
|
|
4242
|
-
* Commit:
|
|
4241
|
+
* Built: 2026-01-23T16:46:59.410Z
|
|
4242
|
+
* Commit: e2a2ded
|
|
4243
4243
|
*/
|
|
4244
4244
|
|
|
4245
4245
|
/**
|
|
@@ -4836,11 +4836,11 @@ body.dm-cloaked.dm-ready {
|
|
|
4836
4836
|
============================================ */
|
|
4837
4837
|
|
|
4838
4838
|
/*!
|
|
4839
|
-
* Domma Elements CSS v0.
|
|
4839
|
+
* Domma Elements CSS v0.10.0
|
|
4840
4840
|
* Dynamic Object Manipulation & Modeling API
|
|
4841
4841
|
* (c) 2026 Darryl Waterhouse & DCBW-IT
|
|
4842
|
-
* Built: 2026-01-
|
|
4843
|
-
* Commit:
|
|
4842
|
+
* Built: 2026-01-23T16:46:59.420Z
|
|
4843
|
+
* Commit: e2a2ded
|
|
4844
4844
|
*/
|
|
4845
4845
|
|
|
4846
4846
|
/**
|
|
@@ -5792,38 +5792,66 @@ textarea:not([class])::placeholder {
|
|
|
5792
5792
|
|
|
5793
5793
|
.input-group-icon > .input-group-addon {
|
|
5794
5794
|
position: absolute;
|
|
5795
|
-
top:
|
|
5796
|
-
|
|
5797
|
-
pointer-events: none;
|
|
5798
|
-
z-index: 1;
|
|
5795
|
+
top: 0;
|
|
5796
|
+
bottom: 0;
|
|
5799
5797
|
display: flex;
|
|
5800
5798
|
align-items: center;
|
|
5801
|
-
|
|
5799
|
+
justify-content: center;
|
|
5800
|
+
pointer-events: none;
|
|
5801
|
+
z-index: 1;
|
|
5802
|
+
color: var(--dm-gray-600);
|
|
5803
|
+
background-color: var(--dm-gray-100);
|
|
5804
|
+
padding: 0 var(--dm-space-3);
|
|
5802
5805
|
}
|
|
5803
5806
|
|
|
5804
5807
|
.input-group-icon > .input-group-addon-left {
|
|
5805
|
-
left:
|
|
5808
|
+
left: 0;
|
|
5809
|
+
border-right: 1px solid var(--dm-border, var(--dm-gray-300));
|
|
5810
|
+
border-top-left-radius: var(--dm-radius-md);
|
|
5811
|
+
border-bottom-left-radius: var(--dm-radius-md);
|
|
5806
5812
|
}
|
|
5807
5813
|
|
|
5808
5814
|
.input-group-icon > .input-group-addon-right {
|
|
5809
|
-
right:
|
|
5815
|
+
right: 0;
|
|
5816
|
+
border-left: 1px solid var(--dm-border, var(--dm-gray-300));
|
|
5817
|
+
border-top-right-radius: var(--dm-radius-md);
|
|
5818
|
+
border-bottom-right-radius: var(--dm-radius-md);
|
|
5819
|
+
}
|
|
5820
|
+
|
|
5821
|
+
/* Dark theme variants */
|
|
5822
|
+
[class*="-dark"] .input-group-icon > .input-group-addon {
|
|
5823
|
+
color: var(--dm-gray-400);
|
|
5824
|
+
background-color: var(--dm-gray-800);
|
|
5825
|
+
border-color: var(--dm-gray-600);
|
|
5810
5826
|
}
|
|
5811
5827
|
|
|
5812
5828
|
/* Adjust input padding when icon is present */
|
|
5813
5829
|
.input-group-icon.has-addon-left > .form-input,
|
|
5814
|
-
.input-group-icon.has-addon-left >
|
|
5815
|
-
|
|
5830
|
+
.input-group-icon.has-addon-left > .form-select,
|
|
5831
|
+
.input-group-icon.has-addon-left > .form-textarea,
|
|
5832
|
+
.input-group-icon.has-addon-left > input,
|
|
5833
|
+
.input-group-icon.has-addon-left > select,
|
|
5834
|
+
.input-group-icon.has-addon-left > textarea {
|
|
5835
|
+
padding-left: 3.5rem;
|
|
5816
5836
|
}
|
|
5817
5837
|
|
|
5818
5838
|
.input-group-icon.has-addon-right > .form-input,
|
|
5819
|
-
.input-group-icon.has-addon-right >
|
|
5820
|
-
|
|
5839
|
+
.input-group-icon.has-addon-right > .form-select,
|
|
5840
|
+
.input-group-icon.has-addon-right > .form-textarea,
|
|
5841
|
+
.input-group-icon.has-addon-right > input,
|
|
5842
|
+
.input-group-icon.has-addon-right > select,
|
|
5843
|
+
.input-group-icon.has-addon-right > textarea {
|
|
5844
|
+
padding-right: 3.5rem;
|
|
5821
5845
|
}
|
|
5822
5846
|
|
|
5823
5847
|
.input-group-icon.has-addon-left.has-addon-right > .form-input,
|
|
5824
|
-
.input-group-icon.has-addon-left.has-addon-right >
|
|
5825
|
-
|
|
5826
|
-
|
|
5848
|
+
.input-group-icon.has-addon-left.has-addon-right > .form-select,
|
|
5849
|
+
.input-group-icon.has-addon-left.has-addon-right > .form-textarea,
|
|
5850
|
+
.input-group-icon.has-addon-left.has-addon-right > input,
|
|
5851
|
+
.input-group-icon.has-addon-left.has-addon-right > select,
|
|
5852
|
+
.input-group-icon.has-addon-left.has-addon-right > textarea {
|
|
5853
|
+
padding-left: 3.5rem;
|
|
5854
|
+
padding-right: 3.5rem;
|
|
5827
5855
|
}
|
|
5828
5856
|
|
|
5829
5857
|
/* Prepend/Append style (addon outside input) */
|
|
@@ -5902,21 +5930,21 @@ textarea:not([class])::placeholder {
|
|
|
5902
5930
|
}
|
|
5903
5931
|
|
|
5904
5932
|
.input-group-sm.input-group-icon.has-addon-left > .form-input,
|
|
5905
|
-
.input-group-sm.input-group-icon.has-addon-left >
|
|
5906
|
-
|
|
5933
|
+
.input-group-sm.input-group-icon.has-addon-left > .form-select,
|
|
5934
|
+
.input-group-sm.input-group-icon.has-addon-left > .form-textarea,
|
|
5935
|
+
.input-group-sm.input-group-icon.has-addon-left > input,
|
|
5936
|
+
.input-group-sm.input-group-icon.has-addon-left > select,
|
|
5937
|
+
.input-group-sm.input-group-icon.has-addon-left > textarea {
|
|
5938
|
+
padding-left: 2.75rem;
|
|
5907
5939
|
}
|
|
5908
5940
|
|
|
5909
5941
|
.input-group-sm.input-group-icon.has-addon-right > .form-input,
|
|
5910
|
-
.input-group-sm.input-group-icon.has-addon-right >
|
|
5911
|
-
|
|
5912
|
-
|
|
5913
|
-
|
|
5914
|
-
.input-group-sm
|
|
5915
|
-
|
|
5916
|
-
}
|
|
5917
|
-
|
|
5918
|
-
.input-group-sm .input-group-addon-right {
|
|
5919
|
-
right: var(--dm-space-2);
|
|
5942
|
+
.input-group-sm.input-group-icon.has-addon-right > .form-select,
|
|
5943
|
+
.input-group-sm.input-group-icon.has-addon-right > .form-textarea,
|
|
5944
|
+
.input-group-sm.input-group-icon.has-addon-right > input,
|
|
5945
|
+
.input-group-sm.input-group-icon.has-addon-right > select,
|
|
5946
|
+
.input-group-sm.input-group-icon.has-addon-right > textarea {
|
|
5947
|
+
padding-right: 2.75rem;
|
|
5920
5948
|
}
|
|
5921
5949
|
|
|
5922
5950
|
.input-group-lg .input-group-text {
|
|
@@ -5931,21 +5959,21 @@ textarea:not([class])::placeholder {
|
|
|
5931
5959
|
}
|
|
5932
5960
|
|
|
5933
5961
|
.input-group-lg.input-group-icon.has-addon-left > .form-input,
|
|
5934
|
-
.input-group-lg.input-group-icon.has-addon-left >
|
|
5935
|
-
|
|
5962
|
+
.input-group-lg.input-group-icon.has-addon-left > .form-select,
|
|
5963
|
+
.input-group-lg.input-group-icon.has-addon-left > .form-textarea,
|
|
5964
|
+
.input-group-lg.input-group-icon.has-addon-left > input,
|
|
5965
|
+
.input-group-lg.input-group-icon.has-addon-left > select,
|
|
5966
|
+
.input-group-lg.input-group-icon.has-addon-left > textarea {
|
|
5967
|
+
padding-left: 4rem;
|
|
5936
5968
|
}
|
|
5937
5969
|
|
|
5938
5970
|
.input-group-lg.input-group-icon.has-addon-right > .form-input,
|
|
5939
|
-
.input-group-lg.input-group-icon.has-addon-right >
|
|
5940
|
-
|
|
5941
|
-
|
|
5942
|
-
|
|
5943
|
-
.input-group-lg
|
|
5944
|
-
|
|
5945
|
-
}
|
|
5946
|
-
|
|
5947
|
-
.input-group-lg .input-group-addon-right {
|
|
5948
|
-
right: var(--dm-space-4);
|
|
5971
|
+
.input-group-lg.input-group-icon.has-addon-right > .form-select,
|
|
5972
|
+
.input-group-lg.input-group-icon.has-addon-right > .form-textarea,
|
|
5973
|
+
.input-group-lg.input-group-icon.has-addon-right > input,
|
|
5974
|
+
.input-group-lg.input-group-icon.has-addon-right > select,
|
|
5975
|
+
.input-group-lg.input-group-icon.has-addon-right > textarea {
|
|
5976
|
+
padding-right: 4rem;
|
|
5949
5977
|
}
|
|
5950
5978
|
|
|
5951
5979
|
/* Dark theme support */
|
|
@@ -5955,10 +5983,6 @@ textarea:not([class])::placeholder {
|
|
|
5955
5983
|
border-color: var(--dm-gray-600);
|
|
5956
5984
|
}
|
|
5957
5985
|
|
|
5958
|
-
[class*="-dark"].input-group-icon > .input-group-addon {
|
|
5959
|
-
color: var(--dm-gray-400);
|
|
5960
|
-
}
|
|
5961
|
-
|
|
5962
5986
|
/* Focus state - highlight addon when input is focused */
|
|
5963
5987
|
.input-group-icon:focus-within > .input-group-addon {
|
|
5964
5988
|
color: var(--dm-primary);
|
|
@@ -11382,11 +11406,11 @@ code {
|
|
|
11382
11406
|
============================================ */
|
|
11383
11407
|
|
|
11384
11408
|
/*!
|
|
11385
|
-
* Domma Themes v0.
|
|
11409
|
+
* Domma Themes v0.10.0
|
|
11386
11410
|
* Dynamic Object Manipulation & Modeling API
|
|
11387
11411
|
* (c) 2026 Darryl Waterhouse & DCBW-IT
|
|
11388
|
-
* Built: 2026-01-
|
|
11389
|
-
* Commit:
|
|
11412
|
+
* Built: 2026-01-23T16:46:59.375Z
|
|
11413
|
+
* Commit: e2a2ded
|
|
11390
11414
|
*/
|
|
11391
11415
|
|
|
11392
11416
|
/**
|