@design.estate/dees-catalog 3.96.0 → 3.96.1

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.
@@ -59054,6 +59054,8 @@ var init_theme = __esm({
59054
59054
  // tertiary recess (headers, hovers)
59055
59055
  bgCanvas: "#f2f2f7",
59056
59056
  // recessed shell base (systemGroupedBackground)
59057
+ labelBase: "#3c3c43",
59058
+ // opaque system label base
59057
59059
  textPrimary: "#1d1d1f",
59058
59060
  // near-black label
59059
59061
  textSecondary: "rgba(60, 60, 67, 0.60)",
@@ -59105,6 +59107,8 @@ var init_theme = __esm({
59105
59107
  // tertiarySystemBackground / systemGray5 — headers, hovers
59106
59108
  bgCanvas: "#000000",
59107
59109
  // recessed shell base (true black, matches systemBackground)
59110
+ labelBase: "#ebebf5",
59111
+ // opaque system label base
59108
59112
  textPrimary: "#f5f5f7",
59109
59113
  // near-white label
59110
59114
  textSecondary: "rgba(235, 235, 245, 0.60)",
@@ -59345,6 +59349,10 @@ var init_theme = __esm({
59345
59349
  /* ========================================
59346
59350
  * Colors — Text / Label tiers
59347
59351
  * ======================================== */
59352
+ --dees-color-label-base: ${cssManager.bdTheme(l5.labelBase || "#3c3c43", d4.labelBase || "#ebebf5")};
59353
+ --dees-label-opacity-secondary: 0.6;
59354
+ --dees-label-opacity-muted: 0.3;
59355
+ --dees-label-opacity-quaternary: 0.18;
59348
59356
  --dees-color-text-primary: ${cssManager.bdTheme(l5.textPrimary, d4.textPrimary)};
59349
59357
  --dees-color-text-secondary: ${cssManager.bdTheme(l5.textSecondary, d4.textSecondary)};
59350
59358
  --dees-color-text-muted: ${cssManager.bdTheme(l5.textMuted, d4.textMuted)};
@@ -93117,6 +93125,17 @@ var init_dees_icon = __esm({
93117
93125
  pointer-events: none;
93118
93126
  }
93119
93127
 
93128
+ #iconContainer {
93129
+ /*
93130
+ * Apply semantic emphasis to the complete icon, after its Lucide
93131
+ * strokes have been painted. This avoids darker overlap pixels that
93132
+ * occur when a translucent currentColor is composited path by path.
93133
+ *
93134
+ * Consumers keep the stroke color opaque and set --dees-icon-opacity.
93135
+ */
93136
+ opacity: var(--dees-icon-opacity, 1);
93137
+ }
93138
+
93120
93139
  /* Improve rendering performance */
93121
93140
  #iconContainer svg {
93122
93141
  display: block;
@@ -149850,6 +149869,7 @@ var tableStyles = [
149850
149869
  height: var(--dees-control-height-sm);
149851
149870
  border-radius: var(--dees-radius-sm);
149852
149871
  color: var(--dees-color-text-muted);
149872
+ --dees-icon-opacity: var(--dees-label-opacity-muted);
149853
149873
  cursor: pointer;
149854
149874
  transition: all var(--dees-transition-fast) var(--dees-ease-standard);
149855
149875
  }
@@ -149857,6 +149877,7 @@ var tableStyles = [
149857
149877
  .action:hover {
149858
149878
  background: var(--dees-color-badge-default-bg);
149859
149879
  color: var(--dees-color-text-primary);
149880
+ --dees-icon-opacity: 1;
149860
149881
  }
149861
149882
 
149862
149883
  .action:active {
@@ -149864,10 +149885,15 @@ var tableStyles = [
149864
149885
  }
149865
149886
 
149866
149887
  .action dees-icon {
149888
+ color: var(--dees-color-label-base);
149867
149889
  width: 16px;
149868
149890
  height: 16px;
149869
149891
  }
149870
149892
 
149893
+ .action:hover dees-icon {
149894
+ color: var(--dees-color-text-primary);
149895
+ }
149896
+
149871
149897
  .footer {
149872
149898
  display: flex;
149873
149899
  align-items: center;
@@ -150399,7 +150425,9 @@ var _DeesTable = class _DeesTable extends (_a42 = DeesElement, _heading1_dec = [
150399
150425
  this.startEditing(cell2.item, cell2.col);
150400
150426
  return;
150401
150427
  }
150402
- const dblAction = this.dataActions.find((a4) => a4.type?.includes("doubleClick"));
150428
+ const dblAction = this.dataActions.find(
150429
+ (action) => action.type?.includes("doubleClick") && this.isActionRelevant(action, cell2.item)
150430
+ );
150403
150431
  if (dblAction) dblAction.actionFunc({ item: cell2.item, table: this });
150404
150432
  }, "__onTbodyDblclick"));
150405
150433
  __publicField(this, "__onTbodyMousedown", /* @__PURE__ */ __name((eventArg) => {
@@ -150417,7 +150445,7 @@ var _DeesTable = class _DeesTable extends (_a42 = DeesElement, _heading1_dec = [
150417
150445
  this.emitSelectionChange();
150418
150446
  this.requestUpdate();
150419
150447
  }
150420
- const userItems = this.getActionsForType("contextmenu").map(
150448
+ const userItems = this.getActionsForType("contextmenu").filter((action) => this.isActionRelevant(action, item)).map(
150421
150449
  (action) => ({
150422
150450
  name: action.name,
150423
150451
  iconName: action.iconName,
@@ -150730,18 +150758,18 @@ var _DeesTable = class _DeesTable extends (_a42 = DeesElement, _heading1_dec = [
150730
150758
  return b2`
150731
150759
  <td class="actionsCol">
150732
150760
  <div class="actionsContainer">
150733
- ${inRowActions.map(
150761
+ ${inRowActions.filter((actionArg) => this.isActionRelevant(actionArg, itemArg)).map(
150734
150762
  (actionArg) => b2`
150735
- <div
150736
- class="action"
150737
- @click=${() => actionArg.actionFunc({
150763
+ <div
150764
+ class="action"
150765
+ @click=${() => actionArg.actionFunc({
150738
150766
  item: itemArg,
150739
150767
  table: this
150740
150768
  })}
150741
- >
150742
- ${actionArg.iconName ? b2` <dees-icon .icon=${actionArg.iconName}></dees-icon> ` : actionArg.name}
150743
- </div>
150744
- `
150769
+ >
150770
+ ${actionArg.iconName ? b2` <dees-icon .icon=${actionArg.iconName}></dees-icon> ` : actionArg.name}
150771
+ </div>
150772
+ `
150745
150773
  )}
150746
150774
  </div>
150747
150775
  </td>
@@ -151939,6 +151967,9 @@ var _DeesTable = class _DeesTable extends (_a42 = DeesElement, _heading1_dec = [
151939
151967
  })
151940
151968
  );
151941
151969
  }
151970
+ isActionRelevant(actionArg, itemArg) {
151971
+ return !actionArg.actionRelevancyCheckFunc || actionArg.actionRelevancyCheckFunc(itemArg);
151972
+ }
151942
151973
  getActionsForType(typeArg) {
151943
151974
  const actions = [];
151944
151975
  for (const action of this.dataActions) {
@@ -196764,7 +196795,7 @@ init_group_runtime();
196764
196795
  // ts_web/00_commitinfo_data.ts
196765
196796
  var commitinfo = {
196766
196797
  name: "@design.estate/dees-catalog",
196767
- version: "3.96.0",
196798
+ version: "3.96.1",
196768
196799
  description: "A comprehensive library that provides dynamic web components for building sophisticated and modern web applications using JavaScript and TypeScript."
196769
196800
  };
196770
196801
 
@@ -3,7 +3,7 @@
3
3
  */
4
4
  export const commitinfo = {
5
5
  name: '@design.estate/dees-catalog',
6
- version: '3.96.0',
6
+ version: '3.96.1',
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
@@ -385,6 +385,7 @@ export declare class DeesTable<T> extends DeesElement {
385
385
  private isVisibleSelectionIndeterminate;
386
386
  private setSelectVisible;
387
387
  private emitSelectionChange;
388
+ private isActionRelevant;
388
389
  getActionsForType(typeArg: ITableAction['type'][0]): ITableAction<any>[];
389
390
  /** True if the column has any in-cell editor configured. */
390
391
  private __isColumnEditable;