import*as Common from"../common/common.js";import*as i18n from"../i18n/i18n.js";import*as Root from"../root/root.js";import*as UI from"../ui/ui.js";import*as WorkspaceDiff from"../workspace_diff/workspace_diff.js";let loadedChangesModule;const UIStrings={changes:"Changes",showChanges:"Show Changes"},str_=i18n.i18n.registerUIStrings("changes/changes-meta.ts",UIStrings),i18nLazyString=i18n.i18n.getLazilyComputedLocalizedString.bind(void 0,str_);async function loadChangesModule(){return loadedChangesModule||(await Root.Runtime.Runtime.instance().loadModulePromise("changes"),loadedChangesModule=await import("./changes.js")),loadedChangesModule}UI.ViewManager.registerViewExtension({location:"drawer-view",id:"changes.changes",title:i18nLazyString(UIStrings.changes),commandPrompt:i18nLazyString(UIStrings.showChanges),persistence:"closeable",loadView:async()=>(await loadChangesModule()).ChangesView.ChangesView.instance()}),Common.Revealer.registerRevealer({contextTypes:()=>[WorkspaceDiff.WorkspaceDiff.DiffUILocation],destination:Common.Revealer.RevealerDestination.CHANGES_DRAWER,loadRevealer:async()=>(await loadChangesModule()).ChangesView.DiffUILocationRevealer.instance()});