@design.estate/dees-catalog 3.76.1 → 3.77.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.
Files changed (27) hide show
  1. package/dist_bundle/bundle.js +50 -46
  2. package/dist_ts_web/00_commitinfo_data.js +1 -1
  3. package/dist_ts_web/elements/00group-dataview/dees-table/dees-table.js +28 -3
  4. package/dist_ts_web/elements/00group-dataview/dees-table/styles.js +28 -1
  5. package/dist_ts_web/elements/00group-dataview/dees-table/types.d.ts +15 -0
  6. package/dist_ts_web/elements/00group-input/dees-input-dropdown/dees-input-dropdown.demo.js +1 -7
  7. package/dist_ts_web/elements/00group-input/dees-input-iban/dees-input-iban.demo.js +1 -7
  8. package/dist_ts_web/elements/00group-input/dees-input-phone/dees-input-phone.demo.js +1 -7
  9. package/dist_ts_web/elements/00group-input/dees-input-quantityselector/dees-input-quantityselector.demo.js +1 -7
  10. package/dist_ts_web/elements/00group-input/dees-input-radiogroup/dees-input-radiogroup.demo.js +1 -7
  11. package/dist_ts_web/elements/00group-input/dees-input-text/dees-input-text.demo.js +1 -7
  12. package/dist_ts_web/elements/00group-input/dees-input-typelist/dees-input-typelist.demo.js +1 -7
  13. package/dist_watch/bundle.js +442 -449
  14. package/dist_watch/bundle.js.map +2 -2
  15. package/package.json +1 -1
  16. package/readme.md +19 -12
  17. package/ts_web/00_commitinfo_data.ts +1 -1
  18. package/ts_web/elements/00group-dataview/dees-table/dees-table.ts +28 -2
  19. package/ts_web/elements/00group-dataview/dees-table/styles.ts +33 -0
  20. package/ts_web/elements/00group-dataview/dees-table/types.ts +19 -0
  21. package/ts_web/elements/00group-input/dees-input-dropdown/dees-input-dropdown.demo.ts +0 -6
  22. package/ts_web/elements/00group-input/dees-input-iban/dees-input-iban.demo.ts +0 -6
  23. package/ts_web/elements/00group-input/dees-input-phone/dees-input-phone.demo.ts +0 -6
  24. package/ts_web/elements/00group-input/dees-input-quantityselector/dees-input-quantityselector.demo.ts +0 -6
  25. package/ts_web/elements/00group-input/dees-input-radiogroup/dees-input-radiogroup.demo.ts +0 -6
  26. package/ts_web/elements/00group-input/dees-input-text/dees-input-text.demo.ts +0 -6
  27. package/ts_web/elements/00group-input/dees-input-typelist/dees-input-typelist.demo.ts +0 -6
@@ -143064,12 +143064,6 @@ var demoFunc13 = /* @__PURE__ */ __name(() => b2`
143064
143064
  flex-wrap: wrap;
143065
143065
  }
143066
143066
 
143067
- .input-group {
143068
- display: flex;
143069
- flex-direction: column;
143070
- gap: 16px;
143071
- }
143072
-
143073
143067
  .grid-layout {
143074
143068
  display: grid;
143075
143069
  grid-template-columns: 1fr 1fr;
@@ -144385,12 +144379,6 @@ var demoFunc15 = /* @__PURE__ */ __name(() => b2`
144385
144379
  margin: 0 auto;
144386
144380
  }
144387
144381
 
144388
- .input-group {
144389
- display: flex;
144390
- flex-direction: column;
144391
- gap: 16px;
144392
- }
144393
-
144394
144382
  .shopping-grid {
144395
144383
  display: grid;
144396
144384
  grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
@@ -144792,12 +144780,6 @@ var demoFunc16 = /* @__PURE__ */ __name(() => b2`
144792
144780
  margin-bottom: 0;
144793
144781
  }
144794
144782
 
144795
- .input-group {
144796
- display: flex;
144797
- flex-direction: column;
144798
- gap: 16px;
144799
- }
144800
-
144801
144783
  .demo-grid {
144802
144784
  display: grid;
144803
144785
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
@@ -145508,12 +145490,6 @@ var demoFunc18 = /* @__PURE__ */ __name(() => b2`
145508
145490
  flex-wrap: wrap;
145509
145491
  }
145510
145492
 
145511
- .input-group {
145512
- display: flex;
145513
- flex-direction: column;
145514
- gap: 16px;
145515
- }
145516
-
145517
145493
  .spacer {
145518
145494
  height: 200px;
145519
145495
  display: flex;
@@ -148770,12 +148746,6 @@ var demoFunc20 = /* @__PURE__ */ __name(() => b2`
148770
148746
  margin: 0 auto;
148771
148747
  }
148772
148748
 
148773
- .input-group {
148774
- display: flex;
148775
- flex-direction: column;
148776
- gap: 16px;
148777
- }
148778
-
148779
148749
  .payment-group {
148780
148750
  display: flex;
148781
148751
  align-items: center;
@@ -149353,12 +149323,6 @@ var demoFunc22 = /* @__PURE__ */ __name(() => b2`
149353
149323
  margin: 0 auto;
149354
149324
  }
149355
149325
 
149356
- .input-group {
149357
- display: flex;
149358
- flex-direction: column;
149359
- gap: 16px;
149360
- }
149361
-
149362
149326
  .horizontal-group {
149363
149327
  display: flex;
149364
149328
  align-items: center;
@@ -150181,12 +150145,6 @@ var demoFunc24 = /* @__PURE__ */ __name(() => b2`
150181
150145
  margin: 0 auto;
150182
150146
  }
150183
150147
 
150184
- .input-group {
150185
- display: flex;
150186
- flex-direction: column;
150187
- gap: 16px;
150188
- }
150189
-
150190
150148
  .horizontal-group {
150191
150149
  display: flex;
150192
150150
  gap: 24px;
@@ -164614,11 +164572,44 @@ var tableStyles = [
164614
164572
  100% { color: var(--dees-color-text-primary); }
164615
164573
  }
164616
164574
 
164575
+ /* Border/background flash variant for cells with styled content
164576
+ (badges, icons, custom components) where a text-color animation
164577
+ would be invisible. Activated via flashBorder on Column. */
164578
+ .innerCellContainer.flashing-border {
164579
+ animation: dees-table-cell-flash-border
164580
+ var(--dees-table-flash-duration, 900ms)
164581
+ var(--dees-table-flash-easing);
164582
+ border-radius: 3px;
164583
+ }
164584
+
164585
+ @keyframes dees-table-cell-flash-border {
164586
+ 0%,
164587
+ 35% {
164588
+ box-shadow: inset 0 0 0 1.5px var(--dees-table-flash-color);
164589
+ background: ${cssManager.bdTheme(
164590
+ "hsl(45 93% 62% / 0.10)",
164591
+ "hsl(45 93% 62% / 0.08)"
164592
+ )};
164593
+ }
164594
+ 100% {
164595
+ box-shadow: inset 0 0 0 1.5px transparent;
164596
+ background: transparent;
164597
+ }
164598
+ }
164599
+
164617
164600
  @media (prefers-reduced-motion: reduce) {
164618
164601
  .innerCellContainer.flashing {
164619
164602
  animation: none;
164620
164603
  color: var(--dees-table-flash-color);
164621
164604
  }
164605
+ .innerCellContainer.flashing-border {
164606
+ animation: none;
164607
+ box-shadow: inset 0 0 0 1.5px var(--dees-table-flash-color);
164608
+ background: ${cssManager.bdTheme(
164609
+ "hsl(45 93% 62% / 0.10)",
164610
+ "hsl(45 93% 62% / 0.08)"
164611
+ )};
164612
+ }
164622
164613
  }
164623
164614
 
164624
164615
  /* Dev-time warning banner shown when highlight-updates="flash" but
@@ -165559,13 +165550,15 @@ var _DeesTable = class _DeesTable extends (_a42 = DeesElement, _heading1_dec = [
165559
165550
  const isFocused = this.__focusedCell?.rowId === rowId && this.__focusedCell?.colKey === editKey;
165560
165551
  const isEditing = this.__editingCell?.rowId === rowId && this.__editingCell?.colKey === editKey;
165561
165552
  const isFlashing = !!flashSet?.has(editKey);
165553
+ const useFlashBorder = isFlashing && !!col.flashBorder;
165562
165554
  const cellClasses = [
165563
165555
  isEditable ? "editable" : "",
165564
165556
  isFocused && !isEditing ? "focused" : "",
165565
165557
  isEditing ? "editingCell" : ""
165566
165558
  ].filter(Boolean).join(" ");
165559
+ const flashClass = isFlashing ? useFlashBorder ? "innerCellContainer flashing-border" : "innerCellContainer flashing" : "innerCellContainer";
165567
165560
  const innerHtml = b2`<div
165568
- class=${isFlashing ? "innerCellContainer flashing" : "innerCellContainer"}
165561
+ class=${flashClass}
165569
165562
  >
165570
165563
  ${isEditing ? this.renderCellEditor(itemArg, col) : content3}
165571
165564
  </div>`;
@@ -166097,6 +166090,7 @@ var _DeesTable = class _DeesTable extends (_a42 = DeesElement, _heading1_dec = [
166097
166090
  if (!changedProperties.has("data")) return;
166098
166091
  const effectiveColumns = this.__getEffectiveColumns();
166099
166092
  const visibleCols = effectiveColumns.filter((c11) => !c11.hidden);
166093
+ const colByKey = new Map(visibleCols.map((c11) => [String(c11.key), c11]));
166100
166094
  const nextSnapshot = /* @__PURE__ */ new Map();
166101
166095
  const newlyFlashing = /* @__PURE__ */ new Map();
166102
166096
  for (const row of this.data) {
@@ -166109,7 +166103,17 @@ var _DeesTable = class _DeesTable extends (_a42 = DeesElement, _heading1_dec = [
166109
166103
  const prevCells = this.__prevSnapshot?.get(rowId);
166110
166104
  if (!prevCells) continue;
166111
166105
  for (const [colKey, nextVal] of cellMap) {
166112
- if (prevCells.get(colKey) !== nextVal) {
166106
+ const prevVal = prevCells.get(colKey);
166107
+ const colDef = colByKey.get(colKey);
166108
+ let changed;
166109
+ if (colDef?.flashCompare) {
166110
+ changed = colDef.flashCompare(prevVal, nextVal);
166111
+ } else if (nextVal !== null && nextVal !== void 0 && typeof nextVal === "object") {
166112
+ changed = false;
166113
+ } else {
166114
+ changed = prevVal !== nextVal;
166115
+ }
166116
+ if (changed) {
166113
166117
  if (this.__editingCell && this.__editingCell.rowId === rowId && this.__editingCell.colKey === colKey) continue;
166114
166118
  let set3 = newlyFlashing.get(rowId);
166115
166119
  if (!set3) {
@@ -201448,7 +201452,7 @@ init_group_runtime();
201448
201452
  // ts_web/00_commitinfo_data.ts
201449
201453
  var commitinfo = {
201450
201454
  name: "@design.estate/dees-catalog",
201451
- version: "3.76.1",
201455
+ version: "3.77.0",
201452
201456
  description: "A comprehensive library that provides dynamic web components for building sophisticated and modern web applications using JavaScript and TypeScript."
201453
201457
  };
201454
201458
  export {
@@ -203413,4 +203417,4 @@ ibantools/jsnext/ibantools.js:
203413
203417
  * @preferred
203414
203418
  *)
203415
203419
  */
203416
- //# sourceMappingURL=bundle-1776020698391.js.map
203420
+ //# sourceMappingURL=bundle-1776025100805.js.map
@@ -3,7 +3,7 @@
3
3
  */
4
4
  export const commitinfo = {
5
5
  name: '@design.estate/dees-catalog',
6
- version: '3.76.1',
6
+ version: '3.77.0',
7
7
  description: 'A comprehensive library that provides dynamic web components for building sophisticated and modern web applications using JavaScript and TypeScript.'
8
8
  };
9
9
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiMDBfY29tbWl0aW5mb19kYXRhLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vdHNfd2ViLzAwX2NvbW1pdGluZm9fZGF0YS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUNILE1BQU0sQ0FBQyxNQUFNLFVBQVUsR0FBRztJQUN4QixJQUFJLEVBQUUsNkJBQTZCO0lBQ25DLE9BQU8sRUFBRSxRQUFRO0lBQ2pCLFdBQVcsRUFBRSxzSkFBc0o7Q0FDcEssQ0FBQSJ9