domma-js 0.39.2 → 0.41.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.
@@ -1,8 +1,8 @@
1
1
  /*!
2
- * Domma Minimal CSS Bundle v0.39.2
2
+ * Domma Minimal CSS Bundle v0.41.0
3
3
  * Dynamic Object Manipulation & Modeling API
4
4
  * (c) 2026 Darryl Waterhouse & DCBW-IT
5
- * Built: 2026-08-21T12:14:59.764Z
5
+ * Built: 2026-08-22T13:41:49.426Z
6
6
  */
7
7
 
8
8
  /* ============================================
@@ -11,11 +11,11 @@
11
11
  ============================================ */
12
12
 
13
13
  /*!
14
- * Domma Core CSS v0.39.2
14
+ * Domma Core CSS v0.41.0
15
15
  * Dynamic Object Manipulation & Modeling API
16
16
  * (c) 2026 Darryl Waterhouse & DCBW-IT
17
- * Built: 2026-08-21T12:14:59.633Z
18
- * Commit: c7a693e
17
+ * Built: 2026-08-22T13:41:49.294Z
18
+ * Commit: 5d8b7e1
19
19
  */
20
20
 
21
21
  /**
@@ -2197,7 +2197,7 @@ code, pre {
2197
2197
 
2198
2198
  /* ============================================
2199
2199
  OPACITY SCALE
2200
- Full graduated opacity scale (0–100)
2200
+ Full graduated opacity scale (0-100)
2201
2201
  ============================================ */
2202
2202
 
2203
2203
  .opacity-0 { opacity: 0; }
@@ -2234,7 +2234,7 @@ code, pre {
2234
2234
  transition: opacity var(--dm-transition-normal);
2235
2235
  }
2236
2236
 
2237
- /* Frosted glass — semi-transparent background + blur */
2237
+ /* Frosted glass - semi-transparent background + blur */
2238
2238
  .translucent-glass {
2239
2239
  background-color: rgba(255, 255, 255, var(--dm-translucent-glass-opacity));
2240
2240
  backdrop-filter: blur(var(--dm-translucent-glass-blur));
@@ -2242,7 +2242,7 @@ code, pre {
2242
2242
  transition: opacity var(--dm-transition-normal);
2243
2243
  }
2244
2244
 
2245
- /* Hover variants — apply translucency on hover */
2245
+ /* Hover variants - apply translucency on hover */
2246
2246
  .translucent-hover:hover {
2247
2247
  opacity: var(--dm-translucent);
2248
2248
  transition: opacity var(--dm-transition-normal);
@@ -4838,11 +4838,11 @@ body.dm-cloaked.dm-ready {
4838
4838
  ============================================ */
4839
4839
 
4840
4840
  /*!
4841
- * Domma Grid CSS v0.39.2
4841
+ * Domma Grid CSS v0.41.0
4842
4842
  * Dynamic Object Manipulation & Modeling API
4843
4843
  * (c) 2026 Darryl Waterhouse & DCBW-IT
4844
- * Built: 2026-08-21T12:14:59.637Z
4845
- * Commit: c7a693e
4844
+ * Built: 2026-08-22T13:41:49.299Z
4845
+ * Commit: 5d8b7e1
4846
4846
  */
4847
4847
 
4848
4848
  /**
@@ -5176,7 +5176,7 @@ body.dm-cloaked.dm-ready {
5176
5176
  gap: var(--dm-space-6, 2rem);
5177
5177
  }
5178
5178
 
5179
- /* Bootstrap 5-style g-* aliases (row gutters — both axes) */
5179
+ /* Bootstrap 5-style g-* aliases (row gutters - both axes) */
5180
5180
  .row.g-0 { gap: 0; }
5181
5181
  .row.g-1 { gap: var(--dm-space-1, 0.25rem); }
5182
5182
  .row.g-2 { gap: var(--dm-space-2, 0.5rem); }
@@ -1,9 +1,9 @@
1
1
  /*!
2
- * Domma Flags v0.39.2
2
+ * Domma Flags v0.41.0
3
3
  * Nation flags as inline SVG (opt-in module)
4
4
  * (c) 2026 Darryl Waterhouse & DCBW-IT
5
- * Built: 2026-08-21T12:14:50.799Z
6
- * Commit: c7a693e
5
+ * Built: 2026-08-22T13:41:39.994Z
6
+ * Commit: 5d8b7e1
7
7
  *
8
8
  * Requires: domma.min.js
9
9
  */
@@ -1,9 +1,9 @@
1
1
  /*!
2
- * Domma Flags v0.39.2
2
+ * Domma Flags v0.41.0
3
3
  * Nation flags as inline SVG (opt-in module)
4
4
  * (c) 2026 Darryl Waterhouse & DCBW-IT
5
- * Built: 2026-08-21T12:14:50.799Z
6
- * Commit: c7a693e
5
+ * Built: 2026-08-22T13:41:39.994Z
6
+ * Commit: 5d8b7e1
7
7
  *
8
8
  * Requires: domma.min.js
9
9
  */
@@ -1,8 +1,8 @@
1
1
  /*!
2
- * Domma Syntax Highlighter v0.39.2
2
+ * Domma Syntax Highlighter v0.41.0
3
3
  * Lightweight code syntax highlighting for JavaScript, HTML, and CSS
4
4
  * (c) 2026 Darryl Waterhouse & DCBW-IT
5
- * Built: 2026-08-21T12:14:50.795Z
6
- * Commit: c7a693e
5
+ * Built: 2026-08-22T13:41:39.989Z
6
+ * Commit: 5d8b7e1
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.39.2
2
+ * Domma Core CSS v0.41.0
3
3
  * Dynamic Object Manipulation & Modeling API
4
4
  * (c) 2026 Darryl Waterhouse & DCBW-IT
5
- * Built: 2026-08-21T12:14:59.633Z
6
- * Commit: c7a693e
5
+ * Built: 2026-08-22T13:41:49.294Z
6
+ * Commit: 5d8b7e1
7
7
  */
8
8
 
9
9
  /**
@@ -2185,7 +2185,7 @@ code, pre {
2185
2185
 
2186
2186
  /* ============================================
2187
2187
  OPACITY SCALE
2188
- Full graduated opacity scale (0–100)
2188
+ Full graduated opacity scale (0-100)
2189
2189
  ============================================ */
2190
2190
 
2191
2191
  .opacity-0 { opacity: 0; }
@@ -2222,7 +2222,7 @@ code, pre {
2222
2222
  transition: opacity var(--dm-transition-normal);
2223
2223
  }
2224
2224
 
2225
- /* Frosted glass — semi-transparent background + blur */
2225
+ /* Frosted glass - semi-transparent background + blur */
2226
2226
  .translucent-glass {
2227
2227
  background-color: rgba(255, 255, 255, var(--dm-translucent-glass-opacity));
2228
2228
  backdrop-filter: blur(var(--dm-translucent-glass-blur));
@@ -2230,7 +2230,7 @@ code, pre {
2230
2230
  transition: opacity var(--dm-transition-normal);
2231
2231
  }
2232
2232
 
2233
- /* Hover variants — apply translucency on hover */
2233
+ /* Hover variants - apply translucency on hover */
2234
2234
  .translucent-hover:hover {
2235
2235
  opacity: var(--dm-translucent);
2236
2236
  transition: opacity var(--dm-transition-normal);