import dialogHelper from"./../modules/dialoghelper/dialoghelper.js";import layoutManager from"./../modules/layoutmanager.js";import globalize from"./../modules/common/globalize.js";import loading from"./../modules/loading/loading.js";import genericedit from"./../modules/genericedit/genericedit.js";import formHelper from"./../modules/common/responsehelper.js";import connectionManager from"./../modules/emby-apiclient/connectionmanager.js";import"./../modules/emby-elements/emby-input/emby-input.js";import"./../modules/emby-elements/emby-button/emby-button.js";import"./../modules/emby-elements/emby-checkbox/emby-checkbox.js";import"./../modules/emby-elements/emby-select/emby-select.js";import"./../modules/emby-elements/emby-scroller/emby-scroller.js";import"./../modules/emby-elements/emby-dialogclosebutton/emby-dialogclosebutton.js";let hasChanges;function getValue(sourceObject,propertyPath){let subObject=sourceObject;var pathElements=propertyPath.split(".");for(let i=0;i'+rows.join("\n")+""}function wrapInfoSection(info){return info&&0'+info+"":""}function createProfilesTable(codec){if(!codec.ProfileAndLevelInformation||0===codec.ProfileAndLevelInformation.length)return"";var items=codec.ProfileAndLevelInformation,rows=[],codec=createHeaderRow(["Profile","Max Level","Max Bitrate","Bit Depths","Resolutions"]);rows.push(codec);for(let i=0;i'+rows.join("\n")+""}function createRowV(cellData){return cellData[0]=''+cellData[0]+"",createRow(cellData)}function createRow(cellData){return""+(''+cellData.join('')+"")+""}function createHeaderRow(cellData){return""+(''+cellData.join('')+"")+""}function showEditor(codec,editParams){return loading.show(),new Promise(function(resolve,reject){require(["text!transcoding/codeceditor.html"],function(template){template=globalize.translateHtml(template);let apiClient=connectionManager.currentApiClient();var url;codec.SupportsParameters&&editParams?(url=apiClient.getUrl("Encoding/CodecParameters",{CodecId:codec.Id,ParameterContext:"Playback"}),apiClient.getJSON(url).then(function(editObjectContainer){showEditorInternal(apiClient,codec,editObjectContainer,template).then(resolve,reject)})):showEditorInternal(apiClient,codec,null,template).then(resolve,reject)})})}export default{show:showEditor};