domma-js 0.51.8 → 0.51.10

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "domma-js",
3
- "version": "0.51.8",
3
+ "version": "0.51.10",
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",
@@ -1,8 +1,8 @@
1
1
  /*!
2
- * Domma Complete CSS Bundle v0.51.8
2
+ * Domma Complete CSS Bundle v0.51.10
3
3
  * Dynamic Object Manipulation & Modeling API
4
4
  * (c) 2026 Darryl Waterhouse & DCBW-IT
5
- * Built: 2026-10-10T22:52:26.723Z
5
+ * Built: 2026-10-11T12:20:27.430Z
6
6
  */
7
7
 
8
8
  /* ============================================
@@ -11,11 +11,11 @@
11
11
  ============================================ */
12
12
 
13
13
  /*!
14
- * Domma Core CSS v0.51.8
14
+ * Domma Core CSS v0.51.10
15
15
  * Dynamic Object Manipulation & Modeling API
16
16
  * (c) 2026 Darryl Waterhouse & DCBW-IT
17
- * Built: 2026-10-10T22:52:26.555Z
18
- * Commit: 2c578d6
17
+ * Built: 2026-10-11T12:20:27.249Z
18
+ * Commit: b8fe5ce
19
19
  */
20
20
 
21
21
  /**
@@ -3499,126 +3499,96 @@ code, pre {
3499
3499
  /* Scribe Effect Keyframes */
3500
3500
 
3501
3501
  @keyframes dm-scribe-cursor-blink {
3502
- 0%, 100% {
3503
- opacity: 1;
3504
- }
3505
- 50% {
3506
- opacity: 0;
3507
- }
3502
+ 0%, 45%, 100% { opacity: 1; }
3503
+ 55%, 90% { opacity: 0; }
3508
3504
  }
3509
3505
 
3510
3506
  @keyframes dm-scribe-fade {
3511
- from {
3512
- opacity: 0;
3513
- transform: translateZ(0);
3514
- }
3515
- to {
3516
- opacity: 1;
3517
- transform: translateZ(0);
3518
- }
3507
+ from { opacity: 0; }
3508
+ to { opacity: 1; }
3519
3509
  }
3520
3510
 
3521
3511
  @keyframes dm-scribe-bounce {
3522
- 0% {
3523
- opacity: 0;
3524
- transform: translateY(-8px) translateZ(0);
3525
- }
3526
- 60% {
3527
- opacity: 1;
3528
- transform: translateY(2px) translateZ(0);
3529
- }
3530
- 80% {
3531
- transform: translateY(-1px) translateZ(0);
3532
- }
3533
- 100% {
3534
- opacity: 1;
3535
- transform: translateY(0) translateZ(0);
3536
- }
3512
+ 0% { opacity: 0; transform: translateY(-0.3em); }
3513
+ 60% { opacity: 1; transform: translateY(0.06em); }
3514
+ 80% { transform: translateY(-0.025em); }
3515
+ 100% { opacity: 1; transform: translateY(0); }
3537
3516
  }
3538
3517
 
3539
3518
  @keyframes dm-scribe-glow {
3540
- 0% {
3541
- opacity: 0;
3542
- transform: scale(0.8) translateZ(0);
3543
- filter: brightness(1);
3544
- }
3545
- 50% {
3546
- opacity: 1;
3547
- transform: scale(1.1) translateZ(0);
3548
- filter: brightness(1.5);
3549
- }
3550
- 100% {
3551
- opacity: 1;
3552
- transform: scale(1) translateZ(0);
3553
- filter: brightness(1);
3554
- }
3519
+ 0% { opacity: 0; text-shadow: 0 0 0.6em currentColor; }
3520
+ 40% { opacity: 1; text-shadow: 0 0 0.35em currentColor; }
3521
+ 100% { opacity: 1; text-shadow: 0 0 0 transparent; }
3555
3522
  }
3556
3523
 
3557
- /* Scribe Classes */
3558
-
3559
3524
  .dm-scribe-cursor {
3560
- display: inline;
3525
+ display: inline-block;
3561
3526
  white-space: pre;
3562
- font-weight: 600;
3563
- margin-left: 2px;
3564
- vertical-align: 0.08em;
3565
- animation: dm-scribe-cursor-blink 1s ease-in-out infinite;
3527
+ margin-left: 0.04em;
3528
+ vertical-align: baseline;
3529
+ animation: dm-scribe-cursor-blink 1.1s ease-in-out infinite;
3566
3530
  }
3567
3531
 
3568
- .dm-scribe-cursor.dm-scribe-cursor-no-blink {
3532
+ .dm-scribe-cursor.dm-scribe-cursor-no-blink,
3533
+ .dm-scribe-cursor.dm-scribe-cursor-active {
3569
3534
  animation: none;
3570
3535
  opacity: 1;
3571
3536
  }
3572
3537
 
3573
- /* Cursor Types */
3574
- .dm-scribe-cursor-caret {
3575
- /* Default - thin vertical line */
3576
- }
3577
-
3578
3538
  .dm-scribe-cursor-block {
3579
- padding: 0;
3580
3539
  background: currentColor;
3581
- color: var(--dm-background, #fff);
3582
- opacity: 0.8;
3583
3540
  font-size: 0.7em;
3584
- line-height: 0.9;
3585
- }
3586
-
3587
- .dm-scribe-cursor-block.dm-scribe-cursor-no-blink {
3588
- opacity: 0.6;
3541
+ line-height: 1;
3589
3542
  }
3590
3543
 
3591
3544
  .dm-scribe-cursor-underline {
3592
- border-bottom: 2px solid currentColor;
3593
- padding: 0;
3545
+ border-bottom: 0.08em solid currentColor;
3594
3546
  min-width: 0.5em;
3547
+ line-height: 1;
3595
3548
  }
3596
3549
 
3597
- /* Unit base styling (shared across modes) */
3550
+ /* Transformable units inherit the surrounding typography. Sentences stay
3551
+ inline so long passages can wrap within narrow containers. */
3598
3552
  .dm-scribe-char,
3599
- .dm-scribe-word,
3553
+ .dm-scribe-word {
3554
+ display: inline-block;
3555
+ white-space: pre-wrap;
3556
+ vertical-align: baseline;
3557
+ }
3558
+
3600
3559
  .dm-scribe-sentence {
3601
3560
  display: inline;
3602
- white-space: pre;
3603
- font-weight: 600;
3604
- will-change: transform, opacity;
3605
- backface-visibility: hidden;
3606
- -webkit-font-smoothing: antialiased;
3607
- -moz-osx-font-smoothing: grayscale;
3608
- transform: translateZ(0);
3561
+ white-space: pre-wrap;
3562
+ }
3563
+
3564
+ .dm-scribe-space {
3565
+ display: inline;
3566
+ }
3567
+
3568
+ .dm-scribe-sentence.dm-scribe-transform-unit {
3569
+ display: inline-block;
3570
+ max-width: 100%;
3609
3571
  }
3610
3572
 
3611
- /* Effect classes (shared across modes) */
3612
3573
  .dm-scribe-fade {
3613
- animation: dm-scribe-fade 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94) forwards;
3574
+ animation: dm-scribe-fade 0.22s ease-out both;
3614
3575
  }
3615
3576
 
3616
3577
  .dm-scribe-bounce {
3617
- animation: dm-scribe-bounce 0.5s cubic-bezier(0.34, 1.56, 0.64, 1) forwards;
3578
+ animation: dm-scribe-bounce 0.38s ease-out both;
3618
3579
  }
3619
3580
 
3620
3581
  .dm-scribe-glow {
3621
- animation: dm-scribe-glow 0.6s cubic-bezier(0.25, 0.46, 0.45, 0.94) forwards;
3582
+ animation: dm-scribe-glow 0.5s ease-out both;
3583
+ }
3584
+
3585
+ @media (prefers-reduced-motion: reduce) {
3586
+ .dm-scribe-cursor,
3587
+ .dm-scribe-fade,
3588
+ .dm-scribe-bounce,
3589
+ .dm-scribe-glow {
3590
+ animation: none;
3591
+ }
3622
3592
  }
3623
3593
 
3624
3594
  /* =================================================================
@@ -4976,11 +4946,11 @@ body.dm-cloaked.dm-ready {
4976
4946
  ============================================ */
4977
4947
 
4978
4948
  /*!
4979
- * Domma Grid CSS v0.51.8
4949
+ * Domma Grid CSS v0.51.10
4980
4950
  * Dynamic Object Manipulation & Modeling API
4981
4951
  * (c) 2026 Darryl Waterhouse & DCBW-IT
4982
- * Built: 2026-10-10T22:52:26.559Z
4983
- * Commit: 2c578d6
4952
+ * Built: 2026-10-11T12:20:27.253Z
4953
+ * Commit: b8fe5ce
4984
4954
  */
4985
4955
 
4986
4956
  /**
@@ -5601,11 +5571,11 @@ body.dm-cloaked.dm-ready {
5601
5571
  ============================================ */
5602
5572
 
5603
5573
  /*!
5604
- * Domma Elements CSS v0.51.8
5574
+ * Domma Elements CSS v0.51.10
5605
5575
  * Dynamic Object Manipulation & Modeling API
5606
5576
  * (c) 2026 Darryl Waterhouse & DCBW-IT
5607
- * Built: 2026-10-10T22:52:26.564Z
5608
- * Commit: 2c578d6
5577
+ * Built: 2026-10-11T12:20:27.258Z
5578
+ * Commit: b8fe5ce
5609
5579
  */
5610
5580
 
5611
5581
  /**
@@ -12437,7 +12407,34 @@ code {
12437
12407
  }
12438
12408
  }
12439
12409
 
12410
+ /* Phones: one column - each item's marker, then its content at full width, beside the
12411
+ line at the left. The five-column grid below is for wider screens only; on a phone it
12412
+ squeezed the content into two narrow side columns and pushed the markers off-screen. */
12413
+ @media (max-width: 768px) {
12414
+ .dm-progression-centered .dm-progression-item {
12415
+ display: grid;
12416
+ grid-template-columns: minmax(0, 1fr);
12417
+ row-gap: var(--dm-space-2, 0.5rem);
12418
+ position: relative;
12419
+ z-index: 1;
12420
+ }
12421
+ .dm-progression-centered .dm-progression-item .dm-progression-marker {
12422
+ grid-column: 1;
12423
+ grid-row: 1;
12424
+ justify-self: start;
12425
+ margin: 0;
12426
+ }
12427
+ .dm-progression-centered .dm-progression-item .dm-progression-content {
12428
+ grid-column: 1;
12429
+ grid-row: 2;
12430
+ justify-self: stretch;
12431
+ margin: 0;
12432
+ max-width: none;
12433
+ }
12434
+ }
12435
+
12440
12436
  /* Centered grid: simple 5-column layout */
12437
+ @media (min-width: 769px) {
12441
12438
  .dm-progression-centered .dm-progression-item {
12442
12439
  display: grid;
12443
12440
  /* [left content] [left marker] [center gap] [right marker] [right content] */
@@ -12482,6 +12479,7 @@ code {
12482
12479
  align-self: start;
12483
12480
  margin-left: 0; /* Gap handled by column-gap */
12484
12481
  }
12482
+ }
12485
12483
 
12486
12484
  /* Horizontal layout */
12487
12485
  .dm-progression-horizontal {
@@ -15121,11 +15119,11 @@ a.avatar-more-person:hover .avatar-more-name {
15121
15119
  ============================================ */
15122
15120
 
15123
15121
  /*!
15124
- * Domma Themes v0.51.8
15122
+ * Domma Themes v0.51.10
15125
15123
  * Dynamic Object Manipulation & Modeling API
15126
15124
  * (c) 2026 Darryl Waterhouse & DCBW-IT
15127
- * Built: 2026-10-10T22:52:26.542Z
15128
- * Commit: 2c578d6
15125
+ * Built: 2026-10-11T12:20:27.235Z
15126
+ * Commit: b8fe5ce
15129
15127
  */
15130
15128
 
15131
15129
  /**
@@ -1,8 +1,8 @@
1
1
  /*!
2
- * Domma Data-Focused CSS Bundle v0.51.8
2
+ * Domma Data-Focused CSS Bundle v0.51.10
3
3
  * Dynamic Object Manipulation & Modeling API
4
4
  * (c) 2026 Darryl Waterhouse & DCBW-IT
5
- * Built: 2026-10-10T22:52:26.719Z
5
+ * Built: 2026-10-11T12:20:27.425Z
6
6
  */
7
7
 
8
8
  /* ============================================
@@ -11,11 +11,11 @@
11
11
  ============================================ */
12
12
 
13
13
  /*!
14
- * Domma Core CSS v0.51.8
14
+ * Domma Core CSS v0.51.10
15
15
  * Dynamic Object Manipulation & Modeling API
16
16
  * (c) 2026 Darryl Waterhouse & DCBW-IT
17
- * Built: 2026-10-10T22:52:26.555Z
18
- * Commit: 2c578d6
17
+ * Built: 2026-10-11T12:20:27.249Z
18
+ * Commit: b8fe5ce
19
19
  */
20
20
 
21
21
  /**
@@ -3499,126 +3499,96 @@ code, pre {
3499
3499
  /* Scribe Effect Keyframes */
3500
3500
 
3501
3501
  @keyframes dm-scribe-cursor-blink {
3502
- 0%, 100% {
3503
- opacity: 1;
3504
- }
3505
- 50% {
3506
- opacity: 0;
3507
- }
3502
+ 0%, 45%, 100% { opacity: 1; }
3503
+ 55%, 90% { opacity: 0; }
3508
3504
  }
3509
3505
 
3510
3506
  @keyframes dm-scribe-fade {
3511
- from {
3512
- opacity: 0;
3513
- transform: translateZ(0);
3514
- }
3515
- to {
3516
- opacity: 1;
3517
- transform: translateZ(0);
3518
- }
3507
+ from { opacity: 0; }
3508
+ to { opacity: 1; }
3519
3509
  }
3520
3510
 
3521
3511
  @keyframes dm-scribe-bounce {
3522
- 0% {
3523
- opacity: 0;
3524
- transform: translateY(-8px) translateZ(0);
3525
- }
3526
- 60% {
3527
- opacity: 1;
3528
- transform: translateY(2px) translateZ(0);
3529
- }
3530
- 80% {
3531
- transform: translateY(-1px) translateZ(0);
3532
- }
3533
- 100% {
3534
- opacity: 1;
3535
- transform: translateY(0) translateZ(0);
3536
- }
3512
+ 0% { opacity: 0; transform: translateY(-0.3em); }
3513
+ 60% { opacity: 1; transform: translateY(0.06em); }
3514
+ 80% { transform: translateY(-0.025em); }
3515
+ 100% { opacity: 1; transform: translateY(0); }
3537
3516
  }
3538
3517
 
3539
3518
  @keyframes dm-scribe-glow {
3540
- 0% {
3541
- opacity: 0;
3542
- transform: scale(0.8) translateZ(0);
3543
- filter: brightness(1);
3544
- }
3545
- 50% {
3546
- opacity: 1;
3547
- transform: scale(1.1) translateZ(0);
3548
- filter: brightness(1.5);
3549
- }
3550
- 100% {
3551
- opacity: 1;
3552
- transform: scale(1) translateZ(0);
3553
- filter: brightness(1);
3554
- }
3519
+ 0% { opacity: 0; text-shadow: 0 0 0.6em currentColor; }
3520
+ 40% { opacity: 1; text-shadow: 0 0 0.35em currentColor; }
3521
+ 100% { opacity: 1; text-shadow: 0 0 0 transparent; }
3555
3522
  }
3556
3523
 
3557
- /* Scribe Classes */
3558
-
3559
3524
  .dm-scribe-cursor {
3560
- display: inline;
3525
+ display: inline-block;
3561
3526
  white-space: pre;
3562
- font-weight: 600;
3563
- margin-left: 2px;
3564
- vertical-align: 0.08em;
3565
- animation: dm-scribe-cursor-blink 1s ease-in-out infinite;
3527
+ margin-left: 0.04em;
3528
+ vertical-align: baseline;
3529
+ animation: dm-scribe-cursor-blink 1.1s ease-in-out infinite;
3566
3530
  }
3567
3531
 
3568
- .dm-scribe-cursor.dm-scribe-cursor-no-blink {
3532
+ .dm-scribe-cursor.dm-scribe-cursor-no-blink,
3533
+ .dm-scribe-cursor.dm-scribe-cursor-active {
3569
3534
  animation: none;
3570
3535
  opacity: 1;
3571
3536
  }
3572
3537
 
3573
- /* Cursor Types */
3574
- .dm-scribe-cursor-caret {
3575
- /* Default - thin vertical line */
3576
- }
3577
-
3578
3538
  .dm-scribe-cursor-block {
3579
- padding: 0;
3580
3539
  background: currentColor;
3581
- color: var(--dm-background, #fff);
3582
- opacity: 0.8;
3583
3540
  font-size: 0.7em;
3584
- line-height: 0.9;
3585
- }
3586
-
3587
- .dm-scribe-cursor-block.dm-scribe-cursor-no-blink {
3588
- opacity: 0.6;
3541
+ line-height: 1;
3589
3542
  }
3590
3543
 
3591
3544
  .dm-scribe-cursor-underline {
3592
- border-bottom: 2px solid currentColor;
3593
- padding: 0;
3545
+ border-bottom: 0.08em solid currentColor;
3594
3546
  min-width: 0.5em;
3547
+ line-height: 1;
3595
3548
  }
3596
3549
 
3597
- /* Unit base styling (shared across modes) */
3550
+ /* Transformable units inherit the surrounding typography. Sentences stay
3551
+ inline so long passages can wrap within narrow containers. */
3598
3552
  .dm-scribe-char,
3599
- .dm-scribe-word,
3553
+ .dm-scribe-word {
3554
+ display: inline-block;
3555
+ white-space: pre-wrap;
3556
+ vertical-align: baseline;
3557
+ }
3558
+
3600
3559
  .dm-scribe-sentence {
3601
3560
  display: inline;
3602
- white-space: pre;
3603
- font-weight: 600;
3604
- will-change: transform, opacity;
3605
- backface-visibility: hidden;
3606
- -webkit-font-smoothing: antialiased;
3607
- -moz-osx-font-smoothing: grayscale;
3608
- transform: translateZ(0);
3561
+ white-space: pre-wrap;
3562
+ }
3563
+
3564
+ .dm-scribe-space {
3565
+ display: inline;
3566
+ }
3567
+
3568
+ .dm-scribe-sentence.dm-scribe-transform-unit {
3569
+ display: inline-block;
3570
+ max-width: 100%;
3609
3571
  }
3610
3572
 
3611
- /* Effect classes (shared across modes) */
3612
3573
  .dm-scribe-fade {
3613
- animation: dm-scribe-fade 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94) forwards;
3574
+ animation: dm-scribe-fade 0.22s ease-out both;
3614
3575
  }
3615
3576
 
3616
3577
  .dm-scribe-bounce {
3617
- animation: dm-scribe-bounce 0.5s cubic-bezier(0.34, 1.56, 0.64, 1) forwards;
3578
+ animation: dm-scribe-bounce 0.38s ease-out both;
3618
3579
  }
3619
3580
 
3620
3581
  .dm-scribe-glow {
3621
- animation: dm-scribe-glow 0.6s cubic-bezier(0.25, 0.46, 0.45, 0.94) forwards;
3582
+ animation: dm-scribe-glow 0.5s ease-out both;
3583
+ }
3584
+
3585
+ @media (prefers-reduced-motion: reduce) {
3586
+ .dm-scribe-cursor,
3587
+ .dm-scribe-fade,
3588
+ .dm-scribe-bounce,
3589
+ .dm-scribe-glow {
3590
+ animation: none;
3591
+ }
3622
3592
  }
3623
3593
 
3624
3594
  /* =================================================================
@@ -4976,11 +4946,11 @@ body.dm-cloaked.dm-ready {
4976
4946
  ============================================ */
4977
4947
 
4978
4948
  /*!
4979
- * Domma Grid CSS v0.51.8
4949
+ * Domma Grid CSS v0.51.10
4980
4950
  * Dynamic Object Manipulation & Modeling API
4981
4951
  * (c) 2026 Darryl Waterhouse & DCBW-IT
4982
- * Built: 2026-10-10T22:52:26.559Z
4983
- * Commit: 2c578d6
4952
+ * Built: 2026-10-11T12:20:27.253Z
4953
+ * Commit: b8fe5ce
4984
4954
  */
4985
4955
 
4986
4956
  /**
@@ -5601,11 +5571,11 @@ body.dm-cloaked.dm-ready {
5601
5571
  ============================================ */
5602
5572
 
5603
5573
  /*!
5604
- * Domma Elements CSS v0.51.8
5574
+ * Domma Elements CSS v0.51.10
5605
5575
  * Dynamic Object Manipulation & Modeling API
5606
5576
  * (c) 2026 Darryl Waterhouse & DCBW-IT
5607
- * Built: 2026-10-10T22:52:26.564Z
5608
- * Commit: 2c578d6
5577
+ * Built: 2026-10-11T12:20:27.258Z
5578
+ * Commit: b8fe5ce
5609
5579
  */
5610
5580
 
5611
5581
  /**
@@ -12437,7 +12407,34 @@ code {
12437
12407
  }
12438
12408
  }
12439
12409
 
12410
+ /* Phones: one column - each item's marker, then its content at full width, beside the
12411
+ line at the left. The five-column grid below is for wider screens only; on a phone it
12412
+ squeezed the content into two narrow side columns and pushed the markers off-screen. */
12413
+ @media (max-width: 768px) {
12414
+ .dm-progression-centered .dm-progression-item {
12415
+ display: grid;
12416
+ grid-template-columns: minmax(0, 1fr);
12417
+ row-gap: var(--dm-space-2, 0.5rem);
12418
+ position: relative;
12419
+ z-index: 1;
12420
+ }
12421
+ .dm-progression-centered .dm-progression-item .dm-progression-marker {
12422
+ grid-column: 1;
12423
+ grid-row: 1;
12424
+ justify-self: start;
12425
+ margin: 0;
12426
+ }
12427
+ .dm-progression-centered .dm-progression-item .dm-progression-content {
12428
+ grid-column: 1;
12429
+ grid-row: 2;
12430
+ justify-self: stretch;
12431
+ margin: 0;
12432
+ max-width: none;
12433
+ }
12434
+ }
12435
+
12440
12436
  /* Centered grid: simple 5-column layout */
12437
+ @media (min-width: 769px) {
12441
12438
  .dm-progression-centered .dm-progression-item {
12442
12439
  display: grid;
12443
12440
  /* [left content] [left marker] [center gap] [right marker] [right content] */
@@ -12482,6 +12479,7 @@ code {
12482
12479
  align-self: start;
12483
12480
  margin-left: 0; /* Gap handled by column-gap */
12484
12481
  }
12482
+ }
12485
12483
 
12486
12484
  /* Horizontal layout */
12487
12485
  .dm-progression-horizontal {
@@ -15121,11 +15119,11 @@ a.avatar-more-person:hover .avatar-more-name {
15121
15119
  ============================================ */
15122
15120
 
15123
15121
  /*!
15124
- * Domma Themes v0.51.8
15122
+ * Domma Themes v0.51.10
15125
15123
  * Dynamic Object Manipulation & Modeling API
15126
15124
  * (c) 2026 Darryl Waterhouse & DCBW-IT
15127
- * Built: 2026-10-10T22:52:26.542Z
15128
- * Commit: 2c578d6
15125
+ * Built: 2026-10-11T12:20:27.235Z
15126
+ * Commit: b8fe5ce
15129
15127
  */
15130
15128
 
15131
15129
  /**