@lesliechan721/aw 0.1.0-beta.51 → 0.1.0-beta.53

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,3 +1,4 @@
1
+ import type { ConfigReferenceContext, ConfigReferenceDraft } from './config-references.js';
1
2
  import type { CatalogActivationMode, CatalogSource, CatalogGenerationActiveV1, CatalogGenerationCandidateEvidence, CatalogGenerationSyncResult, CatalogSourceImpact, DependencyScopeOverride, PlatformName, Scope } from '../types.js';
2
3
  import type { PortableReview, PortableInstallReceipt, PortableRetryReview } from '../portable/commands.js';
3
4
  import type { CatalogSourceUpdate } from '../utils/catalog-sources.js';
@@ -724,6 +725,7 @@ export interface TuiControllerDependencies {
724
725
  getConfigPage?: (pluginId: string, layer: {
725
726
  scope: Scope | 'effective';
726
727
  }, signal: AbortSignal) => Promise<ConfigPageViewModel>;
728
+ getConfigReferenceContext?: (pluginId: string, scope: Scope, draft: ConfigReferenceDraft, signal: AbortSignal) => Promise<ConfigReferenceContext>;
727
729
  getConfigResetAvailability?: (pluginId: string, layer: {
728
730
  scope: Scope;
729
731
  }, signal: AbortSignal) => Promise<ConfigResetAvailability>;
@@ -954,6 +956,7 @@ export declare class TuiController {
954
956
  getConfigPage(pluginId: string, layer: {
955
957
  scope: Scope | 'effective';
956
958
  }, signal?: AbortSignal): Promise<ConfigPageViewModel>;
959
+ getConfigReferenceContext(pluginId: string, scope: Scope, draft: ConfigReferenceDraft, signal?: AbortSignal): Promise<ConfigReferenceContext>;
957
960
  previewConfigSaveImpact(intent: Extract<OperationIntent, {
958
961
  kind: 'configSave';
959
962
  }>, signal?: AbortSignal): Promise<NonNullable<OperationEvidence['config']>>;
@@ -3050,6 +3050,13 @@ export class TuiController {
3050
3050
  : this.#abort.signal;
3051
3051
  return cloneFrozen(await this.#trackRead(this.dependencies.getConfigPage(pluginId, structuredClone(layer), combined)));
3052
3052
  }
3053
+ async getConfigReferenceContext(pluginId, scope, draft, signal) {
3054
+ this.#assertAcceptingActions();
3055
+ if (!this.dependencies.getConfigReferenceContext)
3056
+ return { selections: {} };
3057
+ const combined = signal ? AbortSignal.any([this.#abort.signal, signal]) : this.#abort.signal;
3058
+ return cloneFrozen(await this.#trackRead(this.dependencies.getConfigReferenceContext(pluginId, scope, structuredClone(draft), combined)));
3059
+ }
3053
3060
  async previewConfigSaveImpact(intent, signal) {
3054
3061
  this.#assertAcceptingActions();
3055
3062
  const normalized = normalizeOperationIntent(intent);