Описание
 Используйте API chrome.devtools.panels для интеграции вашего расширения в пользовательский интерфейс окна «Инструменты разработчика»: создавайте собственные панели, получайте доступ к существующим панелям и добавляйте боковые панели.
 Каждая панель расширения и боковая панель отображаются как отдельная HTML-страница. Все страницы расширений, отображаемые в окне «Инструменты разработчика», имеют доступ ко всем частям API chrome.devtools , а также ко всем другим API расширений.
 Метод devtools.panels.setOpenResourceHandler позволяет установить функцию обратного вызова, обрабатывающую запросы пользователя на открытие ресурса (обычно это щелчок по ссылке ресурса в окне «Инструменты разработчика»). Вызывается максимум один из установленных обработчиков; пользователи могут указать (в диалоговом окне «Параметры инструментов разработчика») либо поведение по умолчанию, либо расширение для обработки запросов на открытие ресурсов. Если расширение вызывает setOpenResourceHandler() несколько раз, сохраняется только последний обработчик.
Общие сведения об использовании API инструментов разработчика см. в разделе Обзор API инструментов разработчика.
Манифест
Пример
 Следующий код добавляет панель, содержащуюся в Panel.html , представленную FontPicker.png на панели инструментов разработчика и помеченную как Font Picker :
chrome.devtools.panels.create("Font Picker",
                              "FontPicker.png",
                              "Panel.html",
                              function(panel) { ... });
 Следующий код добавляет боковую панель, содержащуюся в Sidebar.html и озаглавленную «Свойства шрифта», на панель «Элементы», а затем задает ее высоту равной 8ex :
chrome.devtools.panels.elements.createSidebarPane("Font Properties",
  function(sidebar) {
    sidebar.setPage("Sidebar.html");
    sidebar.setHeight("8ex");
  }
);
На снимке экрана показано, как этот пример повлияет на окно «Инструменты разработчика»:

Чтобы опробовать этот API, установите пример API панелей devtools из репозитория chrome-extension-samples .
Типы
Button
Кнопка, созданная расширением.
Характеристики
- onClickedСобытие<functionvoidvoid> Срабатывает при нажатии кнопки. Функция onClicked.addListenerвыглядит так:(callback: function) => {...} - перезвонитьфункция Параметр callbackвыглядит так:() => void 
 
- обновлятьпустота Обновляет атрибуты кнопки. Если некоторые аргументы пропущены или null, соответствующие атрибуты не обновляются.Функция updateвыглядит так:(iconPath?: string, tooltipText?: string, disabled?: boolean) => {...} - iconPathстрока необязательная Путь к новому значку кнопки. 
- подсказкаТекстстрока необязательная Текст, отображаемый как подсказка при наведении указателя мыши на кнопку. 
- неполноценныйлогическое необязательное Отключена ли кнопка. 
 
ElementsPanel
Представляет панель «Элементы».
Характеристики
- onSelectionChangedСобытие<functionvoidvoid> Срабатывает при выборе объекта на панели. Функция onSelectionChanged.addListenerвыглядит так:(callback: function) => {...} - перезвонитьфункция Параметр callbackвыглядит так:() => void 
 
- createSidebarPaneпустота Создает панель в боковой панели. Функция createSidebarPaneвыглядит так:(title: string, callback?: function) => {...} - заголовокнить Текст, отображаемый в заголовке боковой панели. 
- перезвонитьфункция необязательна Параметр callbackвыглядит так:(result: ExtensionSidebarPane) => void - результатОбъект ExtensionSidebarPane для созданной боковой панели. 
 
 
ExtensionPanel
Представляет собой панель, созданную расширением.
Характеристики
- onHiddenСобытие<functionvoidvoid> Срабатывает, когда пользователь отходит от панели. Функция onHidden.addListenerвыглядит так:(callback: function) => {...} - перезвонитьфункция Параметр callbackвыглядит так:() => void 
 
- onSearchСобытие<functionvoidvoid> Срабатывает при выполнении поиска (начало нового поиска, навигация по результатам поиска или отмена поиска). Функция onSearch.addListenerвыглядит так:(callback: function) => {...} - перезвонитьфункция Параметр callbackвыглядит так:(action: string, queryString?: string) => void - действиенить 
- queryStringстрока необязательная 
 
 
- onShownСобытие<functionvoidvoid> Срабатывает, когда пользователь переключается на панель. Функция onShown.addListenerвыглядит так:(callback: function) => {...} - перезвонитьфункция Параметр callbackвыглядит так:(window: Window) => void - окноОкно 
 
 
- createStatusBarButtonпустота Добавляет кнопку в строку состояния панели. Функция createStatusBarButtonвыглядит так:(iconPath: string, tooltipText: string, disabled: boolean) => {...} - iconPathнить Путь к значку кнопки. Файл должен содержать изображение размером 64x24 пикселя, состоящее из двух значков размером 32x24 пикселя. Левый значок используется, когда кнопка неактивна, правый отображается при нажатии кнопки. 
- подсказкаТекстнить Текст, отображаемый как подсказка при наведении указателя мыши на кнопку. 
- неполноценныйбулев Отключена ли кнопка. 
 - возвращается
 
- показыватьпустота Хром 140+Показывает панель, активируя соответствующую вкладку. Функция showвыглядит так:() => {...}
ExtensionSidebarPane
Боковая панель, созданная расширением.
Характеристики
- onHiddenСобытие<functionvoidvoid> Срабатывает, когда боковая панель становится скрытой в результате переключения пользователя с панели, на которой она размещена. Функция onHidden.addListenerвыглядит так:(callback: function) => {...} - перезвонитьфункция Параметр callbackвыглядит так:() => void 
 
- onShownСобытие<functionvoidvoid> Срабатывает, когда боковая панель становится видимой в результате переключения пользователя на панель, на которой она размещена. Функция onShown.addListenerвыглядит так:(callback: function) => {...} - перезвонитьфункция Параметр callbackвыглядит так:(window: Window) => void - окноОкно 
 
 
- setExpressionпустота Задаёт выражение, которое вычисляется на проверяемой странице. Результат отображается на боковой панели. Функция setExpressionвыглядит так:(expression: string, rootTitle?: string, callback?: function) => {...} - выражениенить Выражение, которое будет оцениваться в контексте проверяемой страницы. Объекты JavaScript и узлы DOM отображаются в разворачиваемом дереве, аналогичном console/watch. 
- rootTitleстрока необязательная Необязательное название корня дерева выражений. 
- перезвонитьфункция необязательна Параметр callbackвыглядит так:() => void 
 
- setHeightпустота Устанавливает высоту боковой панели. Функция setHeightвыглядит так:(height: string) => {...} - высотанить Спецификация размера в стиле CSS, например '100px'или'12ex'.
 
- setObjectпустота Устанавливает JSON-совместимый объект для отображения на боковой панели. Функция setObjectвыглядит так:(jsonObject: string, rootTitle?: string, callback?: function) => {...} - jsonObjectнить Объект, отображаемый в контексте проверяемой страницы. Оценивается в контексте вызывающего объекта (клиента API). 
- rootTitleстрока необязательная Необязательное название корня дерева выражений. 
- перезвонитьфункция необязательна Параметр callbackвыглядит так:() => void 
 
- setPageпустота Устанавливает HTML-страницу для отображения на боковой панели. Функция setPageвыглядит так:(path: string) => {...} - путьнить Относительный путь к странице расширения для отображения на боковой панели. 
 
SourcesPanel
Представляет панель «Источники».
Характеристики
- onSelectionChangedСобытие<functionvoidvoid> Срабатывает при выборе объекта на панели. Функция onSelectionChanged.addListenerвыглядит так:(callback: function) => {...} - перезвонитьфункция Параметр callbackвыглядит так:() => void 
 
- createSidebarPaneпустота Создает панель в боковой панели. Функция createSidebarPaneвыглядит так:(title: string, callback?: function) => {...} - заголовокнить Текст, отображаемый в заголовке боковой панели. 
- перезвонитьфункция необязательна Параметр callbackвыглядит так:(result: ExtensionSidebarPane) => void - результатОбъект ExtensionSidebarPane для созданной боковой панели. 
 
 
Характеристики
elements
Панель элементов.
Тип
sources
Панель источников.
Тип
themeName
 Название цветовой темы, заданной в настройках DevTools пользователя. Возможные значения: default (по умолчанию) и dark . 
Тип
нить
Методы
create()
chrome.devtools.panels.create(
title: string,
iconPath: string,
pagePath: string,
callback?: function,
): void
Создает панель расширений.
Параметры
- заголовокнить Заголовок, отображаемый рядом со значком расширения на панели инструментов разработчика. 
- iconPathнить Путь к значку панели относительно каталога расширения. 
- pagePathнить Путь к HTML-странице панели относительно каталога расширения. 
- перезвонитьфункция необязательна Параметр callbackвыглядит так:(panel: ExtensionPanel) => void - панельОбъект ExtensionPanel, представляющий созданную панель. 
 
openResource()
chrome.devtools.panels.openResource(
url: string,
lineNumber: number,
columnNumber?: number,
callback?: function,
): void
Запрашивает у DevTools открытие URL-адреса на панели инструментов разработчика.
Параметры
- URL-адреснить URL ресурса, который нужно открыть. 
- lineNumberчисло Указывает номер строки, к которой следует прокрутить страницу после загрузки ресурса. 
- Номер столбцаномер необязательно Хром 114+Указывает номер столбца, к которому следует прокручивать страницу после загрузки ресурса. 
- перезвонитьфункция необязательна Параметр callbackвыглядит так:() => void 
setOpenResourceHandler()
chrome.devtools.panels.setOpenResourceHandler(
callback?: function,
): void
Задаёт функцию, которая будет вызвана при щелчке пользователем по ссылке на ресурс в окне «Инструменты разработчика». Чтобы отключить обработчик, вызовите метод без параметров или передайте в качестве параметра значение null.
Параметры
- перезвонитьфункция необязательна Параметр callbackвыглядит так:(resource: Resource, lineNumber: number) => void - ресурсОбъект devtools.inspectedWindow.Resourceдля ресурса, по которому был выполнен щелчок.
- lineNumberчисло Указывает номер строки в ресурсе, по которому был сделан щелчок.