@omerdlw/base-framework 1.0.4 → 1.0.6

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 +1 @@
1
- {"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../../../src/modules/dock/surface/context.tsx"],"names":[],"mappings":"AAUA,OAAO,EACL,KAAK,0BAA0B,EAC/B,KAAK,eAAe,EACpB,KAAK,SAAS,EACf,MAAM,UAAU,CAAC;AAGlB,MAAM,MAAM,UAAU,GAAG,SAAS,GAAG,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;AAE/D,eAAO,MAAM,wBAAwB;gBACvB,sBAAsB;mBACnB,wBAAwB;SAC1B,CAAC;AAEhB,eAAO,MAAM,kBAAkB;QACzB,UAAU;WACP,MAAM,GAAG,MAAM,GAAG,IAAI;EAI7B,CAAC;AAEH,wBAAgB,oBAAoB;;EAGnC;AAED,wBAAgB,YAAY,eAE3B;AAED,wBAAgB,gBAAgB,YAMtB;IAAE,YAAY,CAAC,EAAE,eAAe,CAAA;CAAE,GAClC,CAAC,CAAC,OAAO,EAAE,MAAM,KAAK;IAAE,YAAY,CAAC,EAAE,eAAe,CAAA;CAAE,CAAC,UASlE;AAED,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,eAAe,GAAG,SAAS,QAQnE;AAED,qBAAa,wBAAwB;IACnC,OAAO,CAAC,KAAK,CAMV;IAEH,IAAI,OAAO,WAEV;IAED,SAAS,GAAI,UAAU,MAAM,IAAI,gBAAoC;IAErE,SAAS,GAAI,WAAW,UAAU,weAIhC;IAEF,SAAS,GAAI,WAAW,UAAU,EAAE,QAAQ,eAAe,UAWzD;IAEF,YAAY,GAAI,WAAW,UAAU,UASnC;IAEF,YAAY,GAAI,WAAW,UAAU,UAAkC;CACxE;AAED,qBAAa,sBAAsB;IACjC,OAAO,CAAC,mBAAmB,CAGvB;IACJ,OAAO,CAAC,mBAAmB,CAAmD;IAC9E,OAAO,CAAC,KAAK,CAAoD;IAEjE,IAAI,OAAO,WAEV;IAED,SAAS,GAAI,UAAU,MAAM,IAAI,gBAAoC;IAErE,OAAO,CAAC,MAAM,CAGZ;IAEF,uBAAuB,GACrB,WAAW,UAAU,KACpB,0BAA0B,EAAE,CAoB7B;IAEF,YAAY,GAAI,WAAW,UAAU,EAAE,WAAW,OAAO,UA2BvD;IAEF,eAAe,GAAI,WAAW,UAAU,EAAE,aAAa,MAAM,UAS3D;IAEF,YAAY,GAAI,WAAW,UAAU,UAKnC;CACH"}
1
+ {"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../../../src/modules/dock/surface/context.tsx"],"names":[],"mappings":"AAWA,OAAO,EACL,KAAK,0BAA0B,EAC/B,KAAK,eAAe,EACpB,KAAK,SAAS,EACf,MAAM,UAAU,CAAC;AAGlB,MAAM,MAAM,UAAU,GAAG,SAAS,GAAG,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;AAE/D,eAAO,MAAM,wBAAwB;gBACvB,sBAAsB;mBACnB,wBAAwB;SACE,CAAC;AAE5C,eAAO,MAAM,kBAAkB;QACzB,UAAU;WACP,MAAM,GAAG,MAAM,GAAG,IAAI;EAI7B,CAAC;AAEH,wBAAgB,oBAAoB;;EAGnC;AAED,wBAAgB,YAAY,eAE3B;AAED,wBAAgB,gBAAgB,YAMtB;IAAE,YAAY,CAAC,EAAE,eAAe,CAAA;CAAE,GAClC,CAAC,CAAC,OAAO,EAAE,MAAM,KAAK;IAAE,YAAY,CAAC,EAAE,eAAe,CAAA;CAAE,CAAC,UASlE;AAED,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,eAAe,GAAG,SAAS,QAQnE;AAED,qBAAa,wBAAwB;IACnC,OAAO,CAAC,KAAK,CAMV;IAEH,IAAI,OAAO,WAEV;IAED,SAAS,GAAI,UAAU,MAAM,IAAI,gBAAoC;IAErE,SAAS,GAAI,WAAW,UAAU,weAIhC;IAEF,SAAS,GAAI,WAAW,UAAU,EAAE,QAAQ,eAAe,UAWzD;IAEF,YAAY,GAAI,WAAW,UAAU,UASnC;IAEF,YAAY,GAAI,WAAW,UAAU,UAAkC;CACxE;AAED,qBAAa,sBAAsB;IACjC,OAAO,CAAC,mBAAmB,CAGvB;IACJ,OAAO,CAAC,mBAAmB,CAAmD;IAC9E,OAAO,CAAC,KAAK,CAAoD;IAEjE,IAAI,OAAO,WAEV;IAED,SAAS,GAAI,UAAU,MAAM,IAAI,gBAAoC;IAErE,OAAO,CAAC,MAAM,CAGZ;IAEF,uBAAuB,GACrB,WAAW,UAAU,KACpB,0BAA0B,EAAE,CA4C7B;IAEF,YAAY,GAAI,WAAW,UAAU,EAAE,WAAW,OAAO,UA2BvD;IAEF,eAAe,GAAI,WAAW,UAAU,EAAE,aAAa,MAAM,UAc3D;IAEF,YAAY,GAAI,WAAW,UAAU,UAKnC;CACH"}
@@ -1,6 +1,6 @@
1
- import { type RefObject, type ReactNode } from "react";
1
+ import { type ComponentType, type RefObject, type ReactNode } from "react";
2
2
  import { type PanInfo } from "motion/react";
3
- import { DockSurfaceShellProps, type DockScheduledTaskId, type DockScheduler, type DockSurfaceActions, type SurfaceFlowDefinition, type SurfaceFlowDefinitionInput, type SurfaceFlowHandle, type SurfaceResult, type SurfaceStackEntry, type DockItem, type NormalizedSurfaceExtension, type SurfaceFlowContextValue, type SurfaceFlowState, type DockIconSource } from "../types";
3
+ import { DockSurfaceShellProps, type DockComponentProps, type DockScheduledTaskId, type DockScheduler, type DockSurfaceActions, type SurfaceFlowDefinition, type SurfaceFlowDefinitionInput, type SurfaceFlowHandle, type SurfaceResult, type SurfaceStackEntry, type DockItem, type NormalizedSurfaceExtension, type SurfaceFlowContextValue, type SurfaceFlowState, type DockIconSource } from "../types";
4
4
  import { type SurfaceRuntimeRefs } from "./machine";
5
5
  export declare function useSurfaceFlows({ closeSurface, openSurface, refs, syncSurfaceStack, }: {
6
6
  closeSurface: DockSurfaceActions["closeSurface"];
@@ -66,12 +66,14 @@ export declare function useDockSurfaceControlsModel({ activeItem, hasExtensions,
66
66
  export declare function SurfaceExtensionsProvider({ children, }: {
67
67
  children: ReactNode;
68
68
  }): import("react").JSX.Element;
69
- export declare function useDockSurfaceExtension({ align, children, className, id, order, unstyled, }: {
69
+ export declare function useDockSurfaceExtension({ align, children, className, component, id, order, props: extensionProps, unstyled, }: {
70
70
  align?: string;
71
71
  children?: ReactNode;
72
72
  className?: string;
73
+ component?: ComponentType<DockComponentProps> | null;
73
74
  id?: string;
74
75
  order?: number;
76
+ props?: DockComponentProps;
75
77
  unstyled?: boolean;
76
78
  }): void;
77
79
  export declare function useIsSurfaceExtensionsVisible(activeItem: DockItem | null | undefined): boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"hooks.d.ts","sourceRoot":"","sources":["../../../../src/modules/dock/surface/hooks.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"hooks.d.ts","sourceRoot":"","sources":["../../../../src/modules/dock/surface/hooks.tsx"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"stack.d.ts","sourceRoot":"","sources":["../../../../src/modules/dock/surface/stack.ts"],"names":[],"mappings":"AASA,OAAO,EAEL,KAAK,aAAa,EAElB,KAAK,kBAAkB,EAEvB,KAAK,kBAAkB,EACvB,KAAK,SAAS,EACd,KAAK,YAAY,EACjB,KAAK,aAAa,EAElB,KAAK,WAAW,EAGjB,MAAM,UAAU,CAAC;AA6BlB,wBAAgB,eAAe,CAAC,EAC9B,oBAA2B,EAC3B,SAAgB,EAChB,WAAW,EACX,cAAc,GACf,EAAE;IACD,oBAAoB,CAAC,EACjB,CAAC,CAAC,OAAO,EAAE;QACT,IAAI,EAAE,kBAAkB,CAAC;QACzB,MAAM,EAAE,aAAa,CAAC;KACvB,KAAK,OAAO,CAAC,GACd,IAAI,CAAC;IACT,SAAS,CAAC,EAAE,aAAa,GAAG,IAAI,CAAC;IACjC,WAAW,EAAE,CAAC,QAAQ,EAAE,OAAO,KAAK,IAAI,CAAC;IACzC,cAAc,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;CACzC;;;oCAuRY,aAAa;gCA1BZ,aAAa,oBACJ,SAAS,GAAG,IAAI;;;;0BAhC3B,MAAM,oBAAmB,SAAS,GAAG,IAAI;6BAwExC,YAAY,WACX,kBAAkB,KACzB,OAAO,CAAC,aAAa,CAAC;;uBAtMP,CAAC;oBAAmB,CAAC;;oCAiGrB,SAAS,GAAG,IAAI;8BAzCtB,WAAW,oBAAmB,SAAS,GAAG,IAAI;;;;;;;;;;;;EAsS7D"}
1
+ {"version":3,"file":"stack.d.ts","sourceRoot":"","sources":["../../../../src/modules/dock/surface/stack.ts"],"names":[],"mappings":"AASA,OAAO,EAEL,KAAK,aAAa,EAElB,KAAK,kBAAkB,EAEvB,KAAK,kBAAkB,EACvB,KAAK,SAAS,EACd,KAAK,YAAY,EACjB,KAAK,aAAa,EAElB,KAAK,WAAW,EAGjB,MAAM,UAAU,CAAC;AA6BlB,wBAAgB,eAAe,CAAC,EAC9B,oBAA2B,EAC3B,SAAgB,EAChB,WAAW,EACX,cAAc,GACf,EAAE;IACD,oBAAoB,CAAC,EACjB,CAAC,CAAC,OAAO,EAAE;QACT,IAAI,EAAE,kBAAkB,CAAC;QACzB,MAAM,EAAE,aAAa,CAAC;KACvB,KAAK,OAAO,CAAC,GACd,IAAI,CAAC;IACT,SAAS,CAAC,EAAE,aAAa,GAAG,IAAI,CAAC;IACjC,WAAW,EAAE,CAAC,QAAQ,EAAE,OAAO,KAAK,IAAI,CAAC;IACzC,cAAc,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;CACzC;;;oCAuRY,aAAa;gCA1BZ,aAAa,oBACJ,SAAS,GAAG,IAAI;;;;0BAhC3B,MAAM,oBAAmB,SAAS,GAAG,IAAI;6BAwExC,YAAY,WACX,kBAAkB,KACzB,OAAO,CAAC,aAAa,CAAC;;uBAjMZ,CAAC;oBAAmB,CAAC;;oCA4FhB,SAAS,GAAG,IAAI;8BAzCtB,WAAW,oBAAmB,SAAS,GAAG,IAAI;;;;;;;;;;;;EAsS7D"}
@@ -5580,13 +5580,18 @@ init_theme();
5580
5580
  // src/modules/ambient/color.ts
5581
5581
  var COLOR_EXTRACT_CONFIG = Object.freeze({
5582
5582
  blackChromaFactor: 0.35,
5583
- primaryLightness: 0.74,
5584
- maxBlackChroma: 0.055,
5585
5583
  blackLightness: 0.15,
5586
5584
  cacheLimit: 100,
5585
+ chromaGain: 9.4,
5586
+ hueBins: 36,
5587
+ maxBlackChroma: 0.055,
5587
5588
  maxChroma: 0.28,
5588
- minChroma: 0.03,
5589
- sampleSize: 32
5589
+ maxPrimaryChroma: 0.24,
5590
+ minPixelChroma: 0.03,
5591
+ minPresence: 0.04,
5592
+ neutralChroma: 0.012,
5593
+ primaryLightness: 0.74,
5594
+ sampleSize: 64
5590
5595
  });
5591
5596
  function srgbToLinear(c) {
5592
5597
  const v = c / 255;
@@ -5623,100 +5628,104 @@ function oklchToString(l, c, h, alpha = 1) {
5623
5628
  }
5624
5629
  return `oklch(${safeL} ${safeC} ${safeH})`;
5625
5630
  }
5631
+ function clamp2(value, min, max) {
5632
+ return Math.max(min, Math.min(max, value));
5633
+ }
5626
5634
  function derivePalette(sampled) {
5627
5635
  const {
5628
5636
  blackChromaFactor,
5629
5637
  blackLightness,
5638
+ chromaGain,
5630
5639
  maxBlackChroma,
5631
5640
  maxChroma,
5632
- minChroma,
5641
+ maxPrimaryChroma,
5642
+ neutralChroma,
5633
5643
  primaryLightness
5634
5644
  } = COLOR_EXTRACT_CONFIG;
5635
- const chroma = Math.max(minChroma, Math.min(maxChroma, sampled.c));
5636
- const blackChroma = Math.min(
5637
- maxBlackChroma,
5638
- Math.max(0.025, chroma * blackChromaFactor)
5639
- );
5640
- const primaryChroma = Math.max(
5641
- 0.15,
5642
- Math.min(0.24, Math.max(chroma * 1.15, 0.18))
5643
- );
5645
+ const chroma = sampled.c < neutralChroma ? 0 : clamp2(sampled.c, 0, maxChroma);
5646
+ const hue = chroma === 0 ? 0 : sampled.h;
5647
+ const primaryChroma = maxPrimaryChroma * (1 - Math.exp(-chroma * chromaGain));
5648
+ const primaryL = clamp2(
5649
+ primaryLightness + (sampled.l - 0.6) * 0.5,
5650
+ 0.6,
5651
+ 0.86
5652
+ );
5653
+ const blackChroma = Math.min(maxBlackChroma, chroma * blackChromaFactor);
5654
+ const blackL = clamp2(blackLightness + (sampled.l - 0.6) * 0.06, 0.12, 0.18);
5644
5655
  return {
5645
- black: oklchToString(blackLightness, blackChroma, sampled.h),
5646
- primary: oklchToString(primaryLightness, primaryChroma, sampled.h)
5656
+ black: oklchToString(blackL, blackChroma, hue),
5657
+ primary: oklchToString(primaryL, primaryChroma, hue)
5647
5658
  };
5648
5659
  }
5649
5660
 
5650
5661
  // src/modules/ambient/extractor.ts
5651
5662
  function sampleImageData(imageData) {
5663
+ const { hueBins, minPixelChroma, minPresence } = COLOR_EXTRACT_CONFIG;
5652
5664
  const data = imageData.data;
5653
- const len = data.length;
5654
- const numBins = 24;
5655
- const binAngle = 360 / numBins;
5656
- const bins = Array.from({ length: numBins }, () => ({
5657
- count: 0,
5665
+ const binAngle = 360 / hueBins;
5666
+ const bins = Array.from({ length: hueBins }, () => ({
5667
+ cos: 0,
5668
+ sin: 0,
5658
5669
  sumC: 0,
5659
- sumCos: 0,
5660
5670
  sumL: 0,
5661
- sumSin: 0
5671
+ weight: 0
5662
5672
  }));
5663
- let neutralCount = 0;
5664
- let neutralSumL = 0;
5673
+ let opaqueCount = 0;
5674
+ let opaqueSumL = 0;
5665
5675
  let chromaticCount = 0;
5666
- for (let i = 0; i < len; i += 4) {
5667
- const alpha = data[i + 3];
5668
- if (alpha < 128) continue;
5669
- const r = data[i];
5670
- const g = data[i + 1];
5671
- const b = data[i + 2];
5672
- const oklch = rgbToOklch(r, g, b);
5673
- if (oklch.l < 0.04 || oklch.l > 0.96 || oklch.c < 0.02) {
5674
- neutralCount++;
5675
- neutralSumL += oklch.l;
5676
+ let midNeutralCount = 0;
5677
+ for (let i = 0; i < data.length; i += 4) {
5678
+ if (data[i + 3] < 128) continue;
5679
+ const { c, h, l } = rgbToOklch(data[i], data[i + 1], data[i + 2]);
5680
+ opaqueCount++;
5681
+ opaqueSumL += l;
5682
+ if (l < 0.06 || l > 0.96) continue;
5683
+ if (c < minPixelChroma) {
5684
+ midNeutralCount++;
5676
5685
  continue;
5677
5686
  }
5678
- const binIndex = Math.floor(oklch.h / binAngle) % numBins;
5679
- const rad = oklch.h * (Math.PI / 180);
5680
- const bin = bins[binIndex];
5681
- bin.count++;
5682
- bin.sumL += oklch.l;
5683
- bin.sumC += oklch.c;
5684
- bin.sumCos += Math.cos(rad);
5685
- bin.sumSin += Math.sin(rad);
5687
+ const usable = 1 - 0.7 * Math.min(1, Math.abs(l - 0.62) / 0.62);
5688
+ const weight2 = c * c * usable;
5689
+ const rad = h * (Math.PI / 180);
5690
+ const bin = bins[Math.floor(h / binAngle) % hueBins];
5691
+ bin.weight += weight2;
5692
+ bin.sumC += c * weight2;
5693
+ bin.sumL += l * weight2;
5694
+ bin.cos += Math.cos(rad) * weight2;
5695
+ bin.sin += Math.sin(rad) * weight2;
5686
5696
  chromaticCount++;
5687
5697
  }
5688
- if (chromaticCount === 0) {
5689
- const avgL2 = neutralCount > 0 ? neutralSumL / neutralCount : 0.55;
5690
- return { c: 0.03, h: 252, l: avgL2 };
5691
- }
5698
+ const averageL = opaqueCount > 0 ? opaqueSumL / opaqueCount : 0.5;
5699
+ const neutral = { c: 0, h: 0, l: Number(averageL.toFixed(3)) };
5700
+ const presence = chromaticCount / Math.max(1, chromaticCount + midNeutralCount);
5701
+ if (chromaticCount === 0 || presence < minPresence) return neutral;
5692
5702
  let bestIndex = 0;
5693
- let maxWindowCount = -1;
5694
- for (let i = 0; i < numBins; i++) {
5695
- const prev2 = bins[(i - 1 + numBins) % numBins];
5696
- const curr2 = bins[i];
5697
- const next2 = bins[(i + 1) % numBins];
5698
- const windowCount = prev2.count * 0.5 + curr2.count + next2.count * 0.5;
5699
- if (windowCount > maxWindowCount) {
5700
- maxWindowCount = windowCount;
5703
+ let bestScore = -1;
5704
+ for (let i = 0; i < hueBins; i++) {
5705
+ const prev = bins[(i - 1 + hueBins) % hueBins];
5706
+ const next = bins[(i + 1) % hueBins];
5707
+ const score = prev.weight * 0.5 + bins[i].weight + next.weight * 0.5;
5708
+ if (score > bestScore) {
5709
+ bestScore = score;
5701
5710
  bestIndex = i;
5702
5711
  }
5703
5712
  }
5704
- const prev = bins[(bestIndex - 1 + numBins) % numBins];
5705
- const curr = bins[bestIndex];
5706
- const next = bins[(bestIndex + 1) % numBins];
5707
- const totalCount = prev.count + curr.count + next.count;
5708
- if (totalCount === 0) {
5709
- return { c: 0.19, h: 252, l: 0.55 };
5710
- }
5711
- const avgL = (prev.sumL + curr.sumL + next.sumL) / totalCount;
5712
- const avgC = (prev.sumC + curr.sumC + next.sumC) / totalCount;
5713
- const avgSin = prev.sumSin + curr.sumSin + next.sumSin;
5714
- const avgCos = prev.sumCos + curr.sumCos + next.sumCos;
5715
- const avgH = (Math.atan2(avgSin, avgCos) * (180 / Math.PI) + 360) % 360;
5713
+ const window2 = [
5714
+ bins[(bestIndex - 1 + hueBins) % hueBins],
5715
+ bins[bestIndex],
5716
+ bins[(bestIndex + 1) % hueBins]
5717
+ ];
5718
+ const weight = window2.reduce((sum, bin) => sum + bin.weight, 0);
5719
+ if (weight === 0) return neutral;
5720
+ const sumC = window2.reduce((sum, bin) => sum + bin.sumC, 0);
5721
+ const sumL = window2.reduce((sum, bin) => sum + bin.sumL, 0);
5722
+ const sin = window2.reduce((sum, bin) => sum + bin.sin, 0);
5723
+ const cos = window2.reduce((sum, bin) => sum + bin.cos, 0);
5724
+ const dilution = 0.45 + 0.55 * Math.min(1, presence / 0.3);
5716
5725
  return {
5717
- c: Number(avgC.toFixed(3)),
5718
- h: Number(avgH.toFixed(1)),
5719
- l: Number(avgL.toFixed(3))
5726
+ c: Number((sumC / weight * dilution).toFixed(3)),
5727
+ h: Number(((Math.atan2(sin, cos) * (180 / Math.PI) + 360) % 360).toFixed(1)),
5728
+ l: Number((sumL / weight).toFixed(3))
5720
5729
  };
5721
5730
  }
5722
5731
  function createDefaultPalette(fallback) {
@@ -6465,6 +6474,7 @@ init_utils();
6465
6474
  init_atoms();
6466
6475
 
6467
6476
  // src/modules/dock/surface/context.tsx
6477
+ init_kernel();
6468
6478
  init_utils();
6469
6479
 
6470
6480
  // src/modules/dock/surface/helpers.ts
@@ -6596,7 +6606,7 @@ function normalizeSurfaceExtension(input) {
6596
6606
  if (typeof input !== "object") return null;
6597
6607
  const extension = input;
6598
6608
  const component = isValidComponentType(extension.component) ? extension.component : null;
6599
- const content = isValidElement(extension.content) || typeof extension.content === "string" || typeof extension.content === "number" ? extension.content : null;
6609
+ const content = isValidElement(extension.content) || typeof extension.content === "string" && extension.content !== "" || typeof extension.content === "number" ? extension.content : null;
6600
6610
  if (!component && content == null) return null;
6601
6611
  const align = extension.align === "right" || extension.align === "end" ? "right" : extension.align === "center" ? "center" : "left";
6602
6612
  return {
@@ -6641,8 +6651,8 @@ function resolveSurfaceFlowReturnHandshake(definition, input) {
6641
6651
  }
6642
6652
 
6643
6653
  // src/modules/dock/surface/context.tsx
6644
- var SurfaceExtensionsContext = createContext(null);
6645
- var SurfaceItemContext = createContext({
6654
+ var SurfaceExtensionsContext = getOrCreateGlobalContext("SurfaceExtensionsContext", null);
6655
+ var SurfaceItemContext = getOrCreateGlobalContext("SurfaceItemContext", {
6646
6656
  id: null,
6647
6657
  width: null
6648
6658
  });
@@ -6656,12 +6666,12 @@ var SurfaceHeaderActionStore = class {
6656
6666
  }
6657
6667
  subscribe = (listener) => this.store.subscribe(listener);
6658
6668
  getAction = (surfaceId) => {
6659
- const sId = surfaceId != null ? String(surfaceId) : "global";
6669
+ const sId = surfaceId != null ? String(surfaceId) : "active";
6660
6670
  const { actionsBySurface } = this.store.getSnapshot();
6661
- return actionsBySurface[sId] ?? actionsBySurface.global ?? null;
6671
+ return actionsBySurface[sId] ?? actionsBySurface.active ?? actionsBySurface.global ?? null;
6662
6672
  };
6663
6673
  setAction = (surfaceId, action) => {
6664
- const sId = surfaceId != null ? String(surfaceId) : "global";
6674
+ const sId = surfaceId != null ? String(surfaceId) : "active";
6665
6675
  const current = this.store.getSnapshot();
6666
6676
  if (current.actionsBySurface[sId] === action) return;
6667
6677
  this.store.setState({
@@ -6673,7 +6683,7 @@ var SurfaceHeaderActionStore = class {
6673
6683
  });
6674
6684
  };
6675
6685
  removeAction = (surfaceId) => {
6676
- const sId = surfaceId != null ? String(surfaceId) : "global";
6686
+ const sId = surfaceId != null ? String(surfaceId) : "active";
6677
6687
  const current = this.store.getSnapshot();
6678
6688
  if (!(sId in current.actionsBySurface)) return;
6679
6689
  const { [sId]: _, ...nextActions } = current.actionsBySurface;
@@ -6697,17 +6707,32 @@ var SurfaceExtensionsStore = class {
6697
6707
  this.store.setState((prev) => ({ version: prev.version + 1 }));
6698
6708
  };
6699
6709
  getExtensionsForSurface = (surfaceId) => {
6700
- const sId = surfaceId != null ? String(surfaceId) : "global";
6710
+ const sId = surfaceId != null ? String(surfaceId) : "active";
6701
6711
  if (this.cachedListBySurface.has(sId))
6702
6712
  return this.cachedListBySurface.get(sId);
6703
6713
  const globalExts = this.extensionsBySurface.get("global");
6704
- const surfaceExts = this.extensionsBySurface.get(sId);
6705
- if (!globalExts && !surfaceExts) {
6714
+ const activeExts = this.extensionsBySurface.get("active");
6715
+ const surfaceExts = sId !== "global" && sId !== "active" ? this.extensionsBySurface.get(sId) : void 0;
6716
+ let fallbackExts;
6717
+ if (!globalExts && !activeExts && !surfaceExts && this.extensionsBySurface.size > 0) {
6718
+ for (const map of this.extensionsBySurface.values()) {
6719
+ if (map.size > 0) {
6720
+ fallbackExts = map;
6721
+ break;
6722
+ }
6723
+ }
6724
+ }
6725
+ if (!globalExts && !activeExts && !surfaceExts && !fallbackExts) {
6706
6726
  const empty = [];
6707
6727
  this.cachedListBySurface.set(sId, empty);
6708
6728
  return empty;
6709
6729
  }
6710
- const merged = new Map([...globalExts || [], ...surfaceExts || []]);
6730
+ const merged = new Map([
6731
+ ...globalExts || [],
6732
+ ...activeExts || [],
6733
+ ...surfaceExts || [],
6734
+ ...fallbackExts || []
6735
+ ]);
6711
6736
  const result = Array.from(merged.values()).sort(
6712
6737
  (a, b) => a.order - b.order
6713
6738
  );
@@ -6718,7 +6743,7 @@ var SurfaceExtensionsStore = class {
6718
6743
  if (!extension) return;
6719
6744
  const normalized = normalizeSurfaceExtension(extension);
6720
6745
  if (!normalized) return;
6721
- const sId = surfaceId != null ? String(surfaceId) : "global";
6746
+ const sId = surfaceId != null ? String(surfaceId) : "active";
6722
6747
  let surfaceMap = this.extensionsBySurface.get(sId);
6723
6748
  if (!surfaceMap) {
6724
6749
  surfaceMap = /* @__PURE__ */ new Map();
@@ -6732,17 +6757,23 @@ var SurfaceExtensionsStore = class {
6732
6757
  };
6733
6758
  removeExtension = (surfaceId, extensionId) => {
6734
6759
  if (!extensionId) return;
6735
- const sId = surfaceId != null ? String(surfaceId) : "global";
6736
- const surfaceMap = this.extensionsBySurface.get(sId);
6737
- if (!surfaceMap || !surfaceMap.has(extensionId)) return;
6738
- surfaceMap.delete(extensionId);
6739
- if (surfaceMap.size === 0) this.extensionsBySurface.delete(sId);
6740
- this.notify();
6760
+ const sId = surfaceId != null ? String(surfaceId) : "active";
6761
+ let removed = false;
6762
+ for (const [key, map] of this.extensionsBySurface.entries()) {
6763
+ if (key === sId || key === "active" || key === "global") {
6764
+ if (map.has(extensionId)) {
6765
+ map.delete(extensionId);
6766
+ if (map.size === 0) this.extensionsBySurface.delete(key);
6767
+ removed = true;
6768
+ }
6769
+ }
6770
+ }
6771
+ if (removed) this.notify();
6741
6772
  };
6742
6773
  clearSurface = (surfaceId) => {
6743
- const sId = surfaceId != null ? String(surfaceId) : "global";
6744
- if (!this.extensionsBySurface.has(sId)) return;
6774
+ const sId = surfaceId != null ? String(surfaceId) : "active";
6745
6775
  this.extensionsBySurface.delete(sId);
6776
+ this.extensionsBySurface.delete("active");
6746
6777
  this.notify();
6747
6778
  };
6748
6779
  };
@@ -9480,7 +9511,7 @@ function useDockSurfaceControlsModel({
9480
9511
  const phase = propSurfacePhase ?? activeItem?.surfacePhase;
9481
9512
  const isBodyVisible = phase ? phase === DOCK_SURFACE_PHASE.EXPANDING_BODY || phase === DOCK_SURFACE_PHASE.OPEN : true;
9482
9513
  const actionStore = use(SurfaceExtensionsContext)?.headerActions ?? null;
9483
- const surfaceId = activeItem?.surfaceId || "global";
9514
+ const surfaceId = activeItem?.surfaceId || "active";
9484
9515
  const subscribeAction = useCallback(
9485
9516
  (onStoreChange) => actionStore ? actionStore.subscribe(onStoreChange) : () => {
9486
9517
  },
@@ -9508,7 +9539,7 @@ function SurfaceExtensionsProvider({
9508
9539
  }
9509
9540
  function useIsSurfaceExtensionsVisible(activeItem) {
9510
9541
  const store = use(SurfaceExtensionsContext)?.extensions ?? null;
9511
- const surfaceId = activeItem?.surfaceId || "global";
9542
+ const surfaceId = activeItem?.surfaceId || "active";
9512
9543
  const isSurface = Boolean(activeItem?.isSurface);
9513
9544
  const phase = activeItem?.surfacePhase;
9514
9545
  const isBodyVisible = phase === DOCK_SURFACE_PHASE.EXPANDING_BODY || phase === DOCK_SURFACE_PHASE.OPEN;
@@ -9527,14 +9558,14 @@ function useIsSurfaceExtensionsVisible(activeItem) {
9527
9558
  return Array.isArray(raw) ? raw.length : 0;
9528
9559
  }, [activeItem?.surfaceExtensions, activeItem?.extensions]);
9529
9560
  return Boolean(
9530
- isSurface && isBodyVisible && (dynamicCount > 0 || descriptorCount > 0)
9561
+ isSurface && (isBodyVisible && dynamicCount > 0 || descriptorCount > 0)
9531
9562
  );
9532
9563
  }
9533
9564
  function useDockSurfaceExtensionsBarModel({
9534
9565
  activeItem
9535
9566
  }) {
9536
9567
  const store = use(SurfaceExtensionsContext)?.extensions ?? null;
9537
- const surfaceId = activeItem?.surfaceId || "global";
9568
+ const surfaceId = activeItem?.surfaceId || "active";
9538
9569
  const subscribe2 = useCallback(
9539
9570
  (onStoreChange) => store ? store.subscribe(onStoreChange) : () => {
9540
9571
  },