azure-devops-extension-sdk package
介面
| ContextIdentifier | |
| GlobalizationContext | |
| IExtensionContext |
當前擴展的標識碼 |
| IExtensionInitOptions |
延伸初始化選項 -- 傳遞給 DevOps.init() |
| IHostContext |
有關當前 DevOps 主機(組織)的資訊 |
| IPageContext |
放置在每個網頁上的全域上下文 |
| ITeamContext |
有關當前 DevOps 團隊的資訊 |
| IUserContext |
有關當前用戶的資訊 |
列舉
| HostType |
DevOps 主機級別 |
函式
| apply |
將主題變數應用於當前文件 |
| disable |
停用巢狀應用程式認證橋接器。 此呼叫後,任何 MSAL 令牌請求都會收到 |
| enable |
啟用此擴充功能的巢狀應用程式認證(NAA)。 設定 在建立 MSAL 實例前後 範例
|
| get |
獲取訪問令牌,該令牌將允許對其他 DevOps 服務進行調用 |
| get |
獲取可用於識別當前使用者的 Token |
| get |
從父幀獲取初始握手中傳遞的配置數據 |
| get |
獲取有關首次導致此擴展載入的貢獻的資訊。 |
| get |
獲取有關擁有所託管內容的擴展的上下文 |
| get |
取得有關主機 (的資訊,即頁面所針對的 Azure DevOps 組織) |
| get |
獲取有關主機頁面的上下文 |
| get |
獲取具有給定貢獻ID的貢獻。返回的貢獻具有獲取該貢獻中已註冊物件的方法。 |
| get |
獲取有關頁面所針對的團隊的資訊 |
| get |
獲取有關當前用戶的資訊 |
| get |
獲取有關 Web 的上下文 |
| init(IExtension |
啟動與主機視窗的握手。 |
| notify |
通知主機擴展載入失敗 |
| notify |
通知主機擴展已成功載入(停止顯示載入指示器) |
| ready() | 註冊一個回調,該回調在初始設置/握手完成後被調用。 如果初始設置已完成,則會在當前調用堆疊結束時調用回調。 |
| register<T>(string, T) | 註冊此擴展向主機框架公開的物件 (實例或工廠方法) 。 |
| resize(number, number) | 請求父視窗根據當前擴展大小調整此擴展的容器大小。 |
| unregister(string) | 刪除此擴展向主機框架公開的物件。 |
變數
| sdk |
網頁 SDK 版本號。 可以在擴充套件的需求集合中指定,例如:vss-sdk-version/4.2 |
函式詳細資料
applyTheme({[varName: string]: string})
將主題變數應用於當前文件
function applyTheme(themeData: {[varName: string]: string})
參數
- themeData
-
{[varName: string]: string}
disableNestedAppAuth()
停用巢狀應用程式認證橋接器。 此呼叫後,任何 MSAL 令牌請求都會收到 BridgeDisabled 錯誤。 橋接物件仍保持連線, window.nestedAppAuthBridge 避免現有 MSAL 監聽者被孤立。 呼叫 enableNestedAppAuth() 重新啟用。
function disableNestedAppAuth()
enableNestedAppAuth()
啟用此擴充功能的巢狀應用程式認證(NAA)。
設定window.nestedAppAuthBridge讓 MSAL createNestablePublicClientApplication 可以將代幣取得委派給 Azure DevOps 主機框架。 這避免了跨來源 BroadcastChannel 問題,阻止 iframes 中彈出式認證。
在建立 MSAL 實例前後 init() ,請稱之為此。
需要主機啟用 NAA 支援。
範例
await SDK.init();
await SDK.enableNestedAppAuth();
const pca = await createNestablePublicClientApplication({
auth: { clientId: "your-entra-client-id" }
});
function enableNestedAppAuth(): Promise<void>
傳回
Promise<void>
當橋接器準備好時,承諾會解決;若主機不支援 NAA,則拒絕。
getAccessToken()
獲取訪問令牌,該令牌將允許對其他 DevOps 服務進行調用
function getAccessToken(): Promise<string>
傳回
Promise<string>
getAppToken()
獲取可用於識別當前使用者的 Token
function getAppToken(): Promise<string>
傳回
Promise<string>
getConfiguration()
從父幀獲取初始握手中傳遞的配置數據
function getConfiguration(): {[key: string]: any}
傳回
{[key: string]: any}
getContributionId()
獲取有關首次導致此擴展載入的貢獻的資訊。
function getContributionId(): string
傳回
string
getExtensionContext()
getHost()
getPageContext()
getService<T>(string)
獲取具有給定貢獻ID的貢獻。返回的貢獻具有獲取該貢獻中已註冊物件的方法。
function getService<T>(contributionId: string): Promise<T>
參數
- contributionId
-
string
要獲取的貢獻的ID
傳回
Promise<T>
getTeamContext()
getUser()
getWebContext()
獲取有關 Web 的上下文
function getWebContext(): IWebContext
傳回
IWebContext
init(IExtensionInitOptions)
啟動與主機視窗的握手。
function init(options?: IExtensionInitOptions): Promise<void>
參數
- options
- IExtensionInitOptions
擴展的初始化選項。
傳回
Promise<void>
notifyLoadFailed(string | Error)
通知主機擴展載入失敗
function notifyLoadFailed(e: string | Error): Promise<void>
參數
- e
-
string | Error
傳回
Promise<void>
notifyLoadSucceeded()
通知主機擴展已成功載入(停止顯示載入指示器)
function notifyLoadSucceeded(): Promise<void>
傳回
Promise<void>
ready()
註冊一個回調,該回調在初始設置/握手完成後被調用。 如果初始設置已完成,則會在當前調用堆疊結束時調用回調。
function ready(): Promise<void>
傳回
Promise<void>
register<T>(string, T)
註冊此擴展向主機框架公開的物件 (實例或工廠方法) 。
function register<T>(instanceId: string, instance: T)
參數
- instanceId
-
string
已註冊物件的唯一 ID
- instance
-
T
要麼:(1) 對象實例,要麼 (2) 獲取可選上下文數據並返回物件實例的函數。
resize(number, number)
請求父視窗根據當前擴展大小調整此擴展的容器大小。
function resize(width?: number, height?: number)
參數
- width
-
number
可選 width,預設為 scrollWidth
- height
-
number
可選 height,預設為 scrollHeight
unregister(string)
刪除此擴展向主機框架公開的物件。
function unregister(instanceId: string)
參數
- instanceId
-
string
已註冊物件的唯一 ID
變數詳細資料
sdkVersion
網頁 SDK 版本號。 可以在擴充套件的需求集合中指定,例如:vss-sdk-version/4.2
sdkVersion: 5
類型
5