domma-js 0.52.3 → 0.53.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.
@@ -19,6 +19,7 @@ export * from './http';
19
19
  export * from './theme';
20
20
  export * from './icons';
21
21
  export * from './flags';
22
+ export * from './smooth-caret';
22
23
 
23
24
  // Import types for the main Domma object
24
25
  import {dom, DommaCollection} from './dom';
@@ -33,6 +34,7 @@ import {Http, http} from './http';
33
34
  import {Theme, theme} from './theme';
34
35
  import {Icons, icons} from './icons';
35
36
  import {Flags} from './flags';
37
+ import {SmoothCaret} from './smooth-caret';
36
38
 
37
39
  // ============================================
38
40
  // Main Domma Interface
@@ -68,6 +70,9 @@ export interface DommaStatic {
68
70
  /** UI components */
69
71
  elements: Elements;
70
72
 
73
+ /** Smooth caret enhancement for editable text controls. */
74
+ smoothCaret: SmoothCaret;
75
+
71
76
  /** DataTable functionality */
72
77
  tables: Tables;
73
78
 
@@ -0,0 +1,12 @@
1
+ export type CaretPreference = 'auto' | 'smooth' | 'native';
2
+ export interface SmoothCaretHandle {
3
+ refresh(): void;
4
+ destroy(): void;
5
+ }
6
+ export interface SmoothCaret {
7
+ attach(element: HTMLInputElement | HTMLTextAreaElement | HTMLElement): SmoothCaretHandle;
8
+ install(root?: Document | HTMLElement | ShadowRoot): {destroy(): void};
9
+ getPreference(): CaretPreference;
10
+ setPreference(value: CaretPreference): void;
11
+ }
12
+ export declare const smoothCaret: SmoothCaret;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "domma-js",
3
- "version": "0.52.3",
3
+ "version": "0.53.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",
@@ -87,7 +87,7 @@
87
87
  "@rollup/plugin-terser": "^0.4.4",
88
88
  "@vitest/coverage-v8": "^4.0.16",
89
89
  "cypress": "^15.8.1",
90
- "domma-celebrate": "^1.3.0",
90
+ "domma-celebrate": "1.4.0",
91
91
  "domma-reactive": "1.3.1",
92
92
  "dompurify": "^3.4.13",
93
93
  "dotenv": "^17.2.3",
@@ -1,8 +1,8 @@
1
1
  /*!
2
- * Domma Complete CSS Bundle v0.52.3
2
+ * Domma Complete CSS Bundle v0.53.0
3
3
  * Dynamic Object Manipulation & Modeling API
4
4
  * (c) 2026 Darryl Waterhouse & DCBW-IT
5
- * Built: 2026-10-15T16:37:01.362Z
5
+ * Built: 2026-10-15T22:11:03.083Z
6
6
  */
7
7
 
8
8
  /* ============================================
@@ -11,11 +11,11 @@
11
11
  ============================================ */
12
12
 
13
13
  /*!
14
- * Domma Core CSS v0.52.3
14
+ * Domma Core CSS v0.53.0
15
15
  * Dynamic Object Manipulation & Modeling API
16
16
  * (c) 2026 Darryl Waterhouse & DCBW-IT
17
- * Built: 2026-10-15T16:37:01.194Z
18
- * Commit: e7ca3a1
17
+ * Built: 2026-10-15T22:11:02.913Z
18
+ * Commit: e15cc27
19
19
  */
20
20
 
21
21
  /**
@@ -4960,11 +4960,11 @@ body.dm-cloaked.dm-ready {
4960
4960
  ============================================ */
4961
4961
 
4962
4962
  /*!
4963
- * Domma Grid CSS v0.52.3
4963
+ * Domma Grid CSS v0.53.0
4964
4964
  * Dynamic Object Manipulation & Modeling API
4965
4965
  * (c) 2026 Darryl Waterhouse & DCBW-IT
4966
- * Built: 2026-10-15T16:37:01.198Z
4967
- * Commit: e7ca3a1
4966
+ * Built: 2026-10-15T22:11:02.916Z
4967
+ * Commit: e15cc27
4968
4968
  */
4969
4969
 
4970
4970
  /**
@@ -5585,11 +5585,11 @@ body.dm-cloaked.dm-ready {
5585
5585
  ============================================ */
5586
5586
 
5587
5587
  /*!
5588
- * Domma Elements CSS v0.52.3
5588
+ * Domma Elements CSS v0.53.0
5589
5589
  * Dynamic Object Manipulation & Modeling API
5590
5590
  * (c) 2026 Darryl Waterhouse & DCBW-IT
5591
- * Built: 2026-10-15T16:37:01.202Z
5592
- * Commit: e7ca3a1
5591
+ * Built: 2026-10-15T22:11:02.921Z
5592
+ * Commit: e15cc27
5593
5593
  */
5594
5594
 
5595
5595
  /**
@@ -15150,11 +15150,11 @@ a.avatar-more-person:hover .avatar-more-name {
15150
15150
  ============================================ */
15151
15151
 
15152
15152
  /*!
15153
- * Domma Themes v0.52.3
15153
+ * Domma Themes v0.53.0
15154
15154
  * Dynamic Object Manipulation & Modeling API
15155
15155
  * (c) 2026 Darryl Waterhouse & DCBW-IT
15156
- * Built: 2026-10-15T16:37:01.181Z
15157
- * Commit: e7ca3a1
15156
+ * Built: 2026-10-15T22:11:02.897Z
15157
+ * Commit: e15cc27
15158
15158
  */
15159
15159
 
15160
15160
  /**
@@ -1,8 +1,8 @@
1
1
  /*!
2
- * Domma Data-Focused CSS Bundle v0.52.3
2
+ * Domma Data-Focused CSS Bundle v0.53.0
3
3
  * Dynamic Object Manipulation & Modeling API
4
4
  * (c) 2026 Darryl Waterhouse & DCBW-IT
5
- * Built: 2026-10-15T16:37:01.358Z
5
+ * Built: 2026-10-15T22:11:03.079Z
6
6
  */
7
7
 
8
8
  /* ============================================
@@ -11,11 +11,11 @@
11
11
  ============================================ */
12
12
 
13
13
  /*!
14
- * Domma Core CSS v0.52.3
14
+ * Domma Core CSS v0.53.0
15
15
  * Dynamic Object Manipulation & Modeling API
16
16
  * (c) 2026 Darryl Waterhouse & DCBW-IT
17
- * Built: 2026-10-15T16:37:01.194Z
18
- * Commit: e7ca3a1
17
+ * Built: 2026-10-15T22:11:02.913Z
18
+ * Commit: e15cc27
19
19
  */
20
20
 
21
21
  /**
@@ -4960,11 +4960,11 @@ body.dm-cloaked.dm-ready {
4960
4960
  ============================================ */
4961
4961
 
4962
4962
  /*!
4963
- * Domma Grid CSS v0.52.3
4963
+ * Domma Grid CSS v0.53.0
4964
4964
  * Dynamic Object Manipulation & Modeling API
4965
4965
  * (c) 2026 Darryl Waterhouse & DCBW-IT
4966
- * Built: 2026-10-15T16:37:01.198Z
4967
- * Commit: e7ca3a1
4966
+ * Built: 2026-10-15T22:11:02.916Z
4967
+ * Commit: e15cc27
4968
4968
  */
4969
4969
 
4970
4970
  /**
@@ -5585,11 +5585,11 @@ body.dm-cloaked.dm-ready {
5585
5585
  ============================================ */
5586
5586
 
5587
5587
  /*!
5588
- * Domma Elements CSS v0.52.3
5588
+ * Domma Elements CSS v0.53.0
5589
5589
  * Dynamic Object Manipulation & Modeling API
5590
5590
  * (c) 2026 Darryl Waterhouse & DCBW-IT
5591
- * Built: 2026-10-15T16:37:01.202Z
5592
- * Commit: e7ca3a1
5591
+ * Built: 2026-10-15T22:11:02.921Z
5592
+ * Commit: e15cc27
5593
5593
  */
5594
5594
 
5595
5595
  /**
@@ -15150,11 +15150,11 @@ a.avatar-more-person:hover .avatar-more-name {
15150
15150
  ============================================ */
15151
15151
 
15152
15152
  /*!
15153
- * Domma Themes v0.52.3
15153
+ * Domma Themes v0.53.0
15154
15154
  * Dynamic Object Manipulation & Modeling API
15155
15155
  * (c) 2026 Darryl Waterhouse & DCBW-IT
15156
- * Built: 2026-10-15T16:37:01.181Z
15157
- * Commit: e7ca3a1
15156
+ * Built: 2026-10-15T22:11:02.897Z
15157
+ * Commit: e15cc27
15158
15158
  */
15159
15159
 
15160
15160
  /**
@@ -1,8 +1,8 @@
1
1
  /*!
2
- * Domma Essentials CSS Bundle v0.52.3
2
+ * Domma Essentials CSS Bundle v0.53.0
3
3
  * Dynamic Object Manipulation & Modeling API
4
4
  * (c) 2026 Darryl Waterhouse & DCBW-IT
5
- * Built: 2026-10-15T16:37:01.349Z
5
+ * Built: 2026-10-15T22:11:03.070Z
6
6
  */
7
7
 
8
8
  /* ============================================
@@ -11,11 +11,11 @@
11
11
  ============================================ */
12
12
 
13
13
  /*!
14
- * Domma Core CSS v0.52.3
14
+ * Domma Core CSS v0.53.0
15
15
  * Dynamic Object Manipulation & Modeling API
16
16
  * (c) 2026 Darryl Waterhouse & DCBW-IT
17
- * Built: 2026-10-15T16:37:01.194Z
18
- * Commit: e7ca3a1
17
+ * Built: 2026-10-15T22:11:02.913Z
18
+ * Commit: e15cc27
19
19
  */
20
20
 
21
21
  /**
@@ -4960,11 +4960,11 @@ body.dm-cloaked.dm-ready {
4960
4960
  ============================================ */
4961
4961
 
4962
4962
  /*!
4963
- * Domma Grid CSS v0.52.3
4963
+ * Domma Grid CSS v0.53.0
4964
4964
  * Dynamic Object Manipulation & Modeling API
4965
4965
  * (c) 2026 Darryl Waterhouse & DCBW-IT
4966
- * Built: 2026-10-15T16:37:01.198Z
4967
- * Commit: e7ca3a1
4966
+ * Built: 2026-10-15T22:11:02.916Z
4967
+ * Commit: e15cc27
4968
4968
  */
4969
4969
 
4970
4970
  /**
@@ -5585,11 +5585,11 @@ body.dm-cloaked.dm-ready {
5585
5585
  ============================================ */
5586
5586
 
5587
5587
  /*!
5588
- * Domma Elements CSS v0.52.3
5588
+ * Domma Elements CSS v0.53.0
5589
5589
  * Dynamic Object Manipulation & Modeling API
5590
5590
  * (c) 2026 Darryl Waterhouse & DCBW-IT
5591
- * Built: 2026-10-15T16:37:01.202Z
5592
- * Commit: e7ca3a1
5591
+ * Built: 2026-10-15T22:11:02.921Z
5592
+ * Commit: e15cc27
5593
5593
  */
5594
5594
 
5595
5595
  /**
@@ -15150,11 +15150,11 @@ a.avatar-more-person:hover .avatar-more-name {
15150
15150
  ============================================ */
15151
15151
 
15152
15152
  /*!
15153
- * Domma Themes v0.52.3
15153
+ * Domma Themes v0.53.0
15154
15154
  * Dynamic Object Manipulation & Modeling API
15155
15155
  * (c) 2026 Darryl Waterhouse & DCBW-IT
15156
- * Built: 2026-10-15T16:37:01.181Z
15157
- * Commit: e7ca3a1
15156
+ * Built: 2026-10-15T22:11:02.897Z
15157
+ * Commit: e15cc27
15158
15158
  */
15159
15159
 
15160
15160
  /**
@@ -1,8 +1,8 @@
1
1
  /*!
2
- * Domma Full CSS Bundle v0.52.3
2
+ * Domma Full CSS Bundle v0.53.0
3
3
  * Dynamic Object Manipulation & Modeling API
4
4
  * (c) 2026 Darryl Waterhouse & DCBW-IT
5
- * Built: 2026-10-15T16:37:01.354Z
5
+ * Built: 2026-10-15T22:11:03.075Z
6
6
  */
7
7
 
8
8
  /* ============================================
@@ -11,11 +11,11 @@
11
11
  ============================================ */
12
12
 
13
13
  /*!
14
- * Domma Core CSS v0.52.3
14
+ * Domma Core CSS v0.53.0
15
15
  * Dynamic Object Manipulation & Modeling API
16
16
  * (c) 2026 Darryl Waterhouse & DCBW-IT
17
- * Built: 2026-10-15T16:37:01.194Z
18
- * Commit: e7ca3a1
17
+ * Built: 2026-10-15T22:11:02.913Z
18
+ * Commit: e15cc27
19
19
  */
20
20
 
21
21
  /**
@@ -4960,11 +4960,11 @@ body.dm-cloaked.dm-ready {
4960
4960
  ============================================ */
4961
4961
 
4962
4962
  /*!
4963
- * Domma Grid CSS v0.52.3
4963
+ * Domma Grid CSS v0.53.0
4964
4964
  * Dynamic Object Manipulation & Modeling API
4965
4965
  * (c) 2026 Darryl Waterhouse & DCBW-IT
4966
- * Built: 2026-10-15T16:37:01.198Z
4967
- * Commit: e7ca3a1
4966
+ * Built: 2026-10-15T22:11:02.916Z
4967
+ * Commit: e15cc27
4968
4968
  */
4969
4969
 
4970
4970
  /**
@@ -5585,11 +5585,11 @@ body.dm-cloaked.dm-ready {
5585
5585
  ============================================ */
5586
5586
 
5587
5587
  /*!
5588
- * Domma Elements CSS v0.52.3
5588
+ * Domma Elements CSS v0.53.0
5589
5589
  * Dynamic Object Manipulation & Modeling API
5590
5590
  * (c) 2026 Darryl Waterhouse & DCBW-IT
5591
- * Built: 2026-10-15T16:37:01.202Z
5592
- * Commit: e7ca3a1
5591
+ * Built: 2026-10-15T22:11:02.921Z
5592
+ * Commit: e15cc27
5593
5593
  */
5594
5594
 
5595
5595
  /**
@@ -15150,11 +15150,11 @@ a.avatar-more-person:hover .avatar-more-name {
15150
15150
  ============================================ */
15151
15151
 
15152
15152
  /*!
15153
- * Domma Themes v0.52.3
15153
+ * Domma Themes v0.53.0
15154
15154
  * Dynamic Object Manipulation & Modeling API
15155
15155
  * (c) 2026 Darryl Waterhouse & DCBW-IT
15156
- * Built: 2026-10-15T16:37:01.181Z
15157
- * Commit: e7ca3a1
15156
+ * Built: 2026-10-15T22:11:02.897Z
15157
+ * Commit: e15cc27
15158
15158
  */
15159
15159
 
15160
15160
  /**
@@ -1,8 +1,8 @@
1
1
  /*!
2
- * Domma Minimal CSS Bundle v0.52.3
2
+ * Domma Minimal CSS Bundle v0.53.0
3
3
  * Dynamic Object Manipulation & Modeling API
4
4
  * (c) 2026 Darryl Waterhouse & DCBW-IT
5
- * Built: 2026-10-15T16:37:01.348Z
5
+ * Built: 2026-10-15T22:11:03.069Z
6
6
  */
7
7
 
8
8
  /* ============================================
@@ -11,11 +11,11 @@
11
11
  ============================================ */
12
12
 
13
13
  /*!
14
- * Domma Core CSS v0.52.3
14
+ * Domma Core CSS v0.53.0
15
15
  * Dynamic Object Manipulation & Modeling API
16
16
  * (c) 2026 Darryl Waterhouse & DCBW-IT
17
- * Built: 2026-10-15T16:37:01.194Z
18
- * Commit: e7ca3a1
17
+ * Built: 2026-10-15T22:11:02.913Z
18
+ * Commit: e15cc27
19
19
  */
20
20
 
21
21
  /**
@@ -4960,11 +4960,11 @@ body.dm-cloaked.dm-ready {
4960
4960
  ============================================ */
4961
4961
 
4962
4962
  /*!
4963
- * Domma Grid CSS v0.52.3
4963
+ * Domma Grid CSS v0.53.0
4964
4964
  * Dynamic Object Manipulation & Modeling API
4965
4965
  * (c) 2026 Darryl Waterhouse & DCBW-IT
4966
- * Built: 2026-10-15T16:37:01.198Z
4967
- * Commit: e7ca3a1
4966
+ * Built: 2026-10-15T22:11:02.916Z
4967
+ * Commit: e15cc27
4968
4968
  */
4969
4969
 
4970
4970
  /**
@@ -1,9 +1,9 @@
1
1
  /*!
2
- * Domma Flags v0.52.3
2
+ * Domma Flags v0.53.0
3
3
  * Nation flags as inline SVG (opt-in module)
4
4
  * (c) 2026 Darryl Waterhouse & DCBW-IT
5
- * Built: 2026-10-15T16:36:44.783Z
6
- * Commit: e7ca3a1
5
+ * Built: 2026-10-15T22:10:46.267Z
6
+ * Commit: e15cc27
7
7
  *
8
8
  * Requires: domma.min.js
9
9
  */
@@ -1,9 +1,9 @@
1
1
  /*!
2
- * Domma Flags v0.52.3
2
+ * Domma Flags v0.53.0
3
3
  * Nation flags as inline SVG (opt-in module)
4
4
  * (c) 2026 Darryl Waterhouse & DCBW-IT
5
- * Built: 2026-10-15T16:36:44.783Z
6
- * Commit: e7ca3a1
5
+ * Built: 2026-10-15T22:10:46.267Z
6
+ * Commit: e15cc27
7
7
  *
8
8
  * Requires: domma.min.js
9
9
  */
@@ -1,8 +1,8 @@
1
1
  /*!
2
- * Domma Syntax Highlighter v0.52.3
2
+ * Domma Syntax Highlighter v0.53.0
3
3
  * Lightweight code syntax highlighting for JavaScript, HTML, and CSS
4
4
  * (c) 2026 Darryl Waterhouse & DCBW-IT
5
- * Built: 2026-10-15T16:36:44.780Z
6
- * Commit: e7ca3a1
5
+ * Built: 2026-10-15T22:10:46.264Z
6
+ * Commit: e15cc27
7
7
  */
8
8
  !function(t,e){"object"==typeof exports&&"undefined"!=typeof module?e(exports):"function"==typeof define&&define.amd?define(["exports"],e):e((t="undefined"!=typeof globalThis?globalThis:t||self).DommaSyntax={})}(this,function(t){"use strict";const e={javascript:[{type:"comment",pattern:/\/\*[\s\S]*?\*\//g},{type:"comment",pattern:/\/\/.*/g},{type:"template-string",pattern:/`(?:\\.|[^`\\])*`/g},{type:"string",pattern:/"(?:\\.|[^"\\])*"|'(?:\\.|[^'\\])*'/g},{type:"keyword",pattern:/\b(const|let|var|function|return|if|else|for|while|do|break|continue|switch|case|default|try|catch|finally|throw|async|await|class|extends|static|new|this|super|import|export|from|as|default|yield|typeof|instanceof|in|of|delete|void)\b/g},{type:"boolean",pattern:/\b(true|false|null|undefined|NaN|Infinity)\b/g},{type:"number",pattern:/\b\d+\.?\d*([eE][+-]?\d+)?\b/g},{type:"function",pattern:/\b([a-zA-Z_$][\w$]*)\s*(?=\()/g},{type:"class-name",pattern:/\b[A-Z][\w$]*\b/g},{type:"operator",pattern:/[+\-*/%=<>!&|^~?:]+|===|!==|==|!=|<=|>=|&&|\|\||<<|>>|>>>/g},{type:"punctuation",pattern:/[{}[\]();,.]/g}],html:[{type:"comment",pattern:/<!--[\s\S]*?-->/g},{type:"doctype",pattern:/<!DOCTYPE[^>]*>/gi},{type:"tag-open",pattern:/<\/?[a-zA-Z][\w-]*/g},{type:"tag-close",pattern:/\/?>/g},{type:"attr-name",pattern:/\s+[a-zA-Z:@][\w:.-]*(?=\s*=)/g},{type:"attr-value",pattern:/=\s*"[^"]*"|=\s*'[^']*'/g},{type:"entity",pattern:/&[#\w]+;/g}],css:[{type:"comment",pattern:/\/\*[\s\S]*?\*\//g},{type:"at-rule",pattern:/@[\w-]+/g},{type:"selector",pattern:/[.#]?[a-zA-Z][\w-]*(?=\s*[{,])/g},{type:"property",pattern:/\b[\w-]+(?=\s*:)/g},{type:"string",pattern:/"(?:\\.|[^"\\])*"|'(?:\\.|[^'\\])*'/g},{type:"function",pattern:/\b[\w-]+(?=\()/g},{type:"important",pattern:/!important\b/g},{type:"number",pattern:/\b\d+\.?\d*(px|em|rem|%|vh|vw|pt|cm|mm|in|pc|ex|ch|vmin|vmax|fr)?\b/g},{type:"color",pattern:/#[\da-fA-F]{3,8}\b/g},{type:"punctuation",pattern:/[{}:;,()]/g}]};function n(t){const e={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#39;"};return t.replace(/[&<>"']/g,t=>e[t])}class a{constructor(){this.config={autoDetect:!0,preserveOriginal:!0,selector:".code-block",showLanguageBadge:!1,languagePrefix:"language-"}}highlight(t,a=null){const r="string"==typeof t?document.querySelector(t):t;if(!r||r.hasAttribute("data-syntax-highlighted"))return!1;if(!a&&this.config.autoDetect){const t=Array.from(r.classList).find(t=>t.startsWith(this.config.languagePrefix));t&&(a=t.substring(this.config.languagePrefix.length))}if(!a||!e[a])return!1;const o=r.textContent||"";this.config.preserveOriginal&&r.setAttribute("data-original-code",o);const i=function(t,a){const r=e[a];if(!r)return n(t);const o=[];for(const{type:e,pattern:n}of r){if("html"===a&&"entity"===e)continue;let r;for(n.lastIndex=0;null!==(r=n.exec(t));)o.push({start:r.index,end:r.index+r[0].length,text:r[0],type:e})}o.sort((t,e)=>t.start-e.start);const i=[];let s=0;for(const t of o)t.start>=s&&(i.push(t),s=t.end);let c="",p=0;for(const e of i)e.start>p&&(c+=n(t.substring(p,e.start))),c+=`<span class="syntax-${e.type}">${n(e.text)}</span>`,p=e.end;return p<t.length&&(c+=n(t.substring(p))),c}(o,a);return r.innerHTML=i,r.setAttribute("data-syntax-highlighted","true"),r.setAttribute("data-language",a),this.config.showLanguageBadge&&this.addLanguageBadge(r,a),!0}scan(t={}){const e=t.selector||this.config.selector,n=document.querySelectorAll(e);let a=0;return n.forEach(e=>{this.highlight(e,t.language||null)&&(this.addCopyButton(e),a++)}),a}register(t,n){t&&Array.isArray(n)?e[t]=n:console.error("SyntaxHighlighter: Invalid language registration")}configure(t){return t?(Object.assign(this.config,t),this.config):{...this.config}}addLanguageBadge(t,e){if(t.querySelector(".syntax-language-badge"))return;const n=document.createElement("div");n.className="syntax-language-badge",n.textContent=e.toUpperCase(),t.style.position="relative",t.insertBefore(n,t.firstChild)}getLanguages(){return Object.keys(e)}isLanguageSupported(t){return t in e}addCopyButton(t){if(t.parentElement&&t.parentElement.classList.contains("code-block-wrapper"))return;const e=document.createElement("div");e.className="code-block-wrapper";const n=document.createElement("button");n.className="code-block-copy",n.setAttribute("aria-label","Copy code to clipboard"),n.innerHTML='<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><rect x="9" y="9" width="13" height="13" rx="2" ry="2"></rect><path d="M5 15H4a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h9a2 2 0 0 1 2 2v1"></path></svg>',n.addEventListener("click",async()=>{const e=t.getAttribute("data-original-code")||t.textContent;try{if(navigator.clipboard&&navigator.clipboard.writeText)await navigator.clipboard.writeText(e);else{const t=document.createElement("textarea");t.value=e,t.style.position="fixed",t.style.opacity="0",document.body.appendChild(t),t.select(),document.execCommand("copy"),document.body.removeChild(t)}n.classList.add("copied"),n.innerHTML='<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><polyline points="20 6 9 17 4 12"></polyline></svg>',setTimeout(()=>{n.classList.remove("copied"),n.innerHTML='<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><rect x="9" y="9" width="13" height="13" rx="2" ry="2"></rect><path d="M5 15H4a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h9a2 2 0 0 1 2 2v1"></path></svg>'},2e3)}catch(t){console.error("Failed to copy code:",t)}}),t.parentNode.insertBefore(e,t),e.appendChild(t),e.appendChild(n)}}const r=new a;"undefined"!=typeof document&&("loading"===document.readyState?document.addEventListener("DOMContentLoaded",()=>{r.scan()}):setTimeout(()=>r.scan(),0)),"undefined"!=typeof window&&(window.Domma&&(window.Domma.syntax=r),window.DommaSyntax=r),t.LANGUAGES=e,t.SyntaxHighlighter=a,t.default=r,t.syntax=r,Object.defineProperty(t,"__esModule",{value:!0})});
@@ -1,9 +1,9 @@
1
1
  /*!
2
- * Domma Core CSS v0.52.3
2
+ * Domma Core CSS v0.53.0
3
3
  * Dynamic Object Manipulation & Modeling API
4
4
  * (c) 2026 Darryl Waterhouse & DCBW-IT
5
- * Built: 2026-10-15T16:37:01.194Z
6
- * Commit: e7ca3a1
5
+ * Built: 2026-10-15T22:11:02.913Z
6
+ * Commit: e15cc27
7
7
  */
8
8
 
9
9
  /**