aboutsummaryrefslogtreecommitdiff
path: root/files/uk/mozilla/add-ons/webextensions
diff options
context:
space:
mode:
authorRyan Johnson <rjohnson@mozilla.com>2021-04-29 16:16:42 -0700
committerGitHub <noreply@github.com>2021-04-29 16:16:42 -0700
commit95aca4b4d8fa62815d4bd412fff1a364f842814a (patch)
tree5e57661720fe9058d5c7db637e764800b50f9060 /files/uk/mozilla/add-ons/webextensions
parentee3b1c87e3c8e72ca130943eed260ad642246581 (diff)
downloadtranslated-content-95aca4b4d8fa62815d4bd412fff1a364f842814a.tar.gz
translated-content-95aca4b4d8fa62815d4bd412fff1a364f842814a.tar.bz2
translated-content-95aca4b4d8fa62815d4bd412fff1a364f842814a.zip
remove retired locales (#699)
Diffstat (limited to 'files/uk/mozilla/add-ons/webextensions')
-rw-r--r--files/uk/mozilla/add-ons/webextensions/api/index.html57
-rw-r--r--files/uk/mozilla/add-ons/webextensions/api/sessions/index.html136
-rw-r--r--files/uk/mozilla/add-ons/webextensions/api/sessions/restore/index.html108
-rw-r--r--files/uk/mozilla/add-ons/webextensions/index.html120
-rw-r--r--files/uk/mozilla/add-ons/webextensions/interact_with_the_clipboard/index.html171
-rw-r--r--files/uk/mozilla/add-ons/webextensions/what_are_webextensions/index.html26
6 files changed, 0 insertions, 618 deletions
diff --git a/files/uk/mozilla/add-ons/webextensions/api/index.html b/files/uk/mozilla/add-ons/webextensions/api/index.html
deleted file mode 100644
index 0bbd6f9878..0000000000
--- a/files/uk/mozilla/add-ons/webextensions/api/index.html
+++ /dev/null
@@ -1,57 +0,0 @@
----
-title: JavaScript APIs
-slug: Mozilla/Add-ons/WebExtensions/API
-tags:
- - NeedsTranslation
- - TopicStub
- - WebExtensions
-translation_of: Mozilla/Add-ons/WebExtensions/API
----
-<div>{{AddonSidebar}}</div>
-
-<div>
-<p>JavaScript APIs for WebExtensions can be used inside the extension's <a href="https://developer.mozilla.org/en-US/Add-ons/WebExtensions/Anatomy_of_a_WebExtension#Background_scripts">background scripts</a> and in any other documents bundled with the extension, including <a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/Browser_action">browser action</a> or <a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/Page_actions">page action</a> popups, <a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/Sidebars">sidebars</a>, <a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/Options_pages">options pages</a>, or <a href="/en-US/Add-ons/WebExtensions/manifest.json/chrome_url_overrides">new tab pages</a>. A few of these APIs can also be accessed by an extension's <a href="https://developer.mozilla.org/en-US/Add-ons/WebExtensions/Anatomy_of_a_WebExtension#Content_scripts">content scripts</a> (see the <a href="https://developer.mozilla.org/en-US/Add-ons/WebExtensions/Content_scripts#WebExtension_APIs">list in the content script guide</a>).</p>
-
-<p>To use the more powerful APIs you need to <a href="https://developer.mozilla.org/en-US/Add-ons/WebExtensions/manifest.json/permissions">request permission</a> in your extension's manifest.json.</p>
-
-<p>You can access the APIs using the <code>browser</code> namespace:</p>
-
-<pre class="brush: js line-numbers language-js"><code class="language-js"><span class="keyword token">function</span> <span class="function token">logTabs</span><span class="punctuation token">(</span>tabs<span class="punctuation token">)</span> <span class="punctuation token">{</span>
- console<span class="punctuation token">.</span><span class="function token">log</span><span class="punctuation token">(</span>tabs<span class="punctuation token">)</span><span class="punctuation token">;</span>
-<span class="punctuation token">}</span>
-
-browser<span class="punctuation token">.</span>tabs<span class="punctuation token">.</span><span class="function token">query</span><span class="punctuation token">(</span><span class="punctuation token">{</span>currentWindow<span class="punctuation token">:</span> <span class="keyword token">true</span><span class="punctuation token">}</span><span class="punctuation token">,</span> logTabs<span class="punctuation token">)</span><span class="punctuation token">;</span></code></pre>
-</div>
-
-<div>
-<p>Many of the APIs are asynchronous, returning a <code><a href="/en-US/docs/Web/JavaScript/Reference/Global_Objects/Promise">Promise</a></code>:</p>
-
-<pre class="brush: js line-numbers language-js"><code class="language-js"><span class="keyword token">function</span> <span class="function token">logCookie</span><span class="punctuation token">(</span>c<span class="punctuation token">)</span> <span class="punctuation token">{</span>
- console<span class="punctuation token">.</span><span class="function token">log</span><span class="punctuation token">(</span>c<span class="punctuation token">)</span><span class="punctuation token">;</span>
-<span class="punctuation token">}</span>
-
-<span class="keyword token">function</span> <span class="function token">logError</span><span class="punctuation token">(</span>e<span class="punctuation token">)</span> <span class="punctuation token">{</span>
- console<span class="punctuation token">.</span><span class="function token">error</span><span class="punctuation token">(</span>e<span class="punctuation token">)</span><span class="punctuation token">;</span>
-<span class="punctuation token">}</span>
-
-<span class="keyword token">var</span> setCookie <span class="operator token">=</span> browser<span class="punctuation token">.</span>cookies<span class="punctuation token">.</span><span class="keyword token">set</span><span class="punctuation token">(</span>
- <span class="punctuation token">{</span>url<span class="punctuation token">:</span> <span class="string token">"https://developer.mozilla.org/"</span><span class="punctuation token">}</span>
-<span class="punctuation token">)</span><span class="punctuation token">;</span>
-setCookie<span class="punctuation token">.</span><span class="function token">then</span><span class="punctuation token">(</span>logCookie<span class="punctuation token">,</span> logError<span class="punctuation token">)</span><span class="punctuation token">;</span></code></pre>
-</div>
-
-<div>
-<p>Note that this is different from Google Chrome's extension system, which uses the <code>chrome</code> namespace instead of <code>browser</code>, and which uses callbacks instead of promises for asynchronous functions. As a porting aid, the Firefox implementation of WebExtensions APIs supports <code>chrome</code> and callbacks as well as <code>browser</code> and promises. Mozilla has also written a polyfill which enables code that uses <code>browser</code> and promises to work unchanged in Chrome: <a class="external external-icon" href="https://github.com/mozilla/webextension-polyfill">https://github.com/mozilla/webextension-polyfill</a>.</p>
-
-<p>Firefox also implements these APIs under the <code>chrome</code> namespace using callbacks. This allows code written for Chrome to run largely unchanged in Firefox for the APIs documented here.</p>
-
-<p>Microsoft Edge uses the <code>browser</code> namespace, but doesn't yet support promise-based asynchronous APIs. In Edge, for the time being, asynchronous APIs must use callbacks.</p>
-
-<p>Not all browsers support all the APIs: for the details, see <a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/Browser_support_for_JavaScript_APIs">Browser support for JavaScript APIs</a>.</p>
-
-<h2 id="JavaScript_API_listing">JavaScript API listing</h2>
-
-<p>See below for a complete list of JavaScript APIs:</p>
-</div>
-
-<div>{{SubpagesWithSummaries}}</div>
diff --git a/files/uk/mozilla/add-ons/webextensions/api/sessions/index.html b/files/uk/mozilla/add-ons/webextensions/api/sessions/index.html
deleted file mode 100644
index 1a1c8fcf2c..0000000000
--- a/files/uk/mozilla/add-ons/webextensions/api/sessions/index.html
+++ /dev/null
@@ -1,136 +0,0 @@
----
-title: sessions
-slug: Mozilla/Add-ons/WebExtensions/API/sessions
-tags:
- - API
- - Add-ons
- - Extensions
- - NeedsTranslation
- - Non-standard
- - Reference
- - TopicStub
- - WebExtensions
- - sessions
-translation_of: Mozilla/Add-ons/WebExtensions/API/sessions
----
-<div>{{AddonSidebar}}</div>
-
-<p>Use the sessions API to list, and restore, tabs and windows that have been closed while the browser has been running.</p>
-
-<p>The {{WebExtAPIRef("sessions.getRecentlyClosed()")}} function returns an array of {{WebExtAPIRef("tabs.Tab")}} and {{WebExtAPIRef("windows.Window")}} objects, representing tabs and windows that have been closed since the browser was running, up to the maximum defined in {{WebExtAPIRef("sessions.MAX_SESSION_RESULTS")}}.</p>
-
-<p>You can then restore a window or tab using the {{WebExtAPIRef("sessions.restore()")}} function. Restoring doesn't just reopen the tab: it also restores the tab's navigation history so the back/forward buttons will work.</p>
-
-<p>This API also provides a group of functions that enable an extension to store additional state associated with a tab or a window. Then, if the tab or window is closed and subsequently restored, the extension can retrieve the state. For example, a tab grouping extension might use this to remember which group a tab is in, so as to restore it into the right group if the user restores the tab.</p>
-
-<p>To use the sessions API you must have the "sessions" <a href="https://developer.mozilla.org/en-US/Add-ons/WebExtensions/manifest.json/permissions#API_permissions">API permission</a>.</p>
-
-<h2 id="Types">Types</h2>
-
-<dl>
- <dt>{{WebExtAPIRef("sessions.Filter")}}</dt>
- <dd>Enables you to restrict the number of {{WebExtAPIRef("sessions.Session", "Session")}} objects returned by a call to {{WebExtAPIRef("sessions.getRecentlyClosed()")}}.</dd>
- <dt>{{WebExtAPIRef("sessions.Session")}}</dt>
- <dd>
- <p>Represents a tab or window that the user has closed in the current browsing session.</p>
- </dd>
-</dl>
-
-<h2 id="Properties">Properties</h2>
-
-<dl>
- <dt>{{WebExtAPIRef("sessions.MAX_SESSION_RESULTS")}}</dt>
- <dd>The maximum number of sessions that will be returned by a call to <a href="https://developer.mozilla.org/en-US/docs/Mozilla/Add-ons/WebExtensions/API/sessions/getRecentlyClosed" title="Returns an array Session objects, representing windows and tabs that were closed in the current browsing session (that is: the time since the browser was started)."><code>sessions.getRecentlyClosed()</code></a>.</dd>
-</dl>
-
-<h2 id="Functions">Functions</h2>
-
-<dl>
- <dt>{{WebExtAPIRef("sessions.forgetClosedTab()")}}</dt>
- <dd>Removes a closed tab from the browser's list of recently closed tabs.</dd>
- <dt>{{WebExtAPIRef("sessions.forgetClosedWindow()")}}</dt>
- <dd>Removes a closed window from the browser's list of recently closed windows.</dd>
- <dt>{{WebExtAPIRef("sessions.getRecentlyClosed()")}}</dt>
- <dd>Returns an array of {{WebExtAPIRef("sessions.Session", "Session")}} objects, representing windows and tabs that were closed in the current browsing session (that is: the time since the browser was started).</dd>
- <dt>{{WebExtAPIRef("sessions.restore()")}}</dt>
- <dd>
- <p>Restores a closed tab or window.</p>
- </dd>
- <dt>{{WebExtAPIRef("sessions.setTabValue()")}}</dt>
- <dd>
- <p>Store a key/value pair associated with a given tab.</p>
- </dd>
- <dt>{{WebExtAPIRef("sessions.getTabValue()")}}</dt>
- <dd>
- <p>Retrieve a previously stored value for a given tab, given its key.</p>
- </dd>
- <dt>{{WebExtAPIRef("sessions.removeTabValue()")}}</dt>
- <dd>
- <p>Remove a key/value pair from a given tab.</p>
- </dd>
- <dt>{{WebExtAPIRef("sessions.setWindowValue()")}}</dt>
- <dd>
- <p>Store a key/value pair associated with a given window.</p>
- </dd>
- <dt>{{WebExtAPIRef("sessions.getWindowValue()")}}</dt>
- <dd>
- <p>Retrieve a previously stored value for a given window, given its key.</p>
- </dd>
- <dt>{{WebExtAPIRef("sessions.removeWindowValue()")}}</dt>
- <dd>
- <p>Remove a key/value pair from a given window.</p>
- </dd>
-</dl>
-
-<h2 id="Events">Events</h2>
-
-<dl>
- <dt>{{WebExtAPIRef("sessions.onChanged")}}</dt>
- <dd>
- <p>Fired when a tab or window is closed.</p>
- </dd>
-</dl>
-
-<h2 id="Browser_compatibility">Browser compatibility</h2>
-
-<p>{{Compat("webextensions.api.sessions")}}</p>
-
-<p>{{WebExtExamples("h2")}}</p>
-
-<div class="note"><strong>Acknowledgements</strong>
-
-<p>This API is based on Chromium's <a href="https://developer.chrome.com/extensions/sessions"><code>chrome.sessions</code></a> API.</p>
-
-<p>Microsoft Edge compatibility data is supplied by Microsoft Corporation and is included here under the Creative Commons Attribution 3.0 United States License.</p>
-</div>
-
-<div class="hidden">
-<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
-//
-// Redistribution and use in source and binary forms, with or without
-// modification, are permitted provided that the following conditions are
-// met:
-//
-// * Redistributions of source code must retain the above copyright
-// notice, this list of conditions and the following disclaimer.
-// * Redistributions in binary form must reproduce the above
-// copyright notice, this list of conditions and the following disclaimer
-// in the documentation and/or other materials provided with the
-// distribution.
-// * Neither the name of Google Inc. nor the names of its
-// contributors may be used to endorse or promote products derived from
-// this software without specific prior written permission.
-//
-// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-</pre>
-</div>
diff --git a/files/uk/mozilla/add-ons/webextensions/api/sessions/restore/index.html b/files/uk/mozilla/add-ons/webextensions/api/sessions/restore/index.html
deleted file mode 100644
index f557ad46f1..0000000000
--- a/files/uk/mozilla/add-ons/webextensions/api/sessions/restore/index.html
+++ /dev/null
@@ -1,108 +0,0 @@
----
-title: sessions.restore()
-slug: Mozilla/Add-ons/WebExtensions/API/sessions/restore
-tags:
- - API
- - WebExtensions
- - Додатки
- - Розширення
-translation_of: Mozilla/Add-ons/WebExtensions/API/sessions/restore
----
-<div>{{AddonSidebar()}}</div>
-
-<p>Відновлює закрите вікно або вкладку. Відновлення є не просто перевідкриттям: воно також повертає історію переходів, тож кнопки вперед/назад також працюватимуть. Відновлення вікна відновить всі вкладки, які вікно мало перед закриттям.</p>
-
-<p>Це асинхронна функція, що повертає <code><a href="https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Promise">Promise</a></code>.</p>
-
-<h2 id="Синтаксис">Синтаксис</h2>
-
-<pre class="syntaxbox brush:js">var restoringSession = browser.sessions.restore(
- sessionId // рядок
-)
-</pre>
-
-<h3 id="Параметри">Параметри</h3>
-
-<dl>
- <dt><code>sessionId</code></dt>
- <dd>Рядок, що містить ідентифікатор сесії для відновлення вікна чи вкладки. Його можна дістати із властивості <code>sessionId</code> об'єкта {{WebExtAPIRef("tabs.Tab", "Tab")}} чи {{WebExtAPIRef("windows.Window", "Window")}}, взятого з котрогось із об'єктів {{WebExtAPIRef("sessions.Session", "Session")}}, що їх масив вертає {{WebExtAPIRef("sessions.getRecentlyClosed()")}}.</dd>
-</dl>
-
-<h3 id="Вертає">Вертає</h3>
-
-<p>Об'єкт <code><a href="https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Promise">Promise</a></code>. Через нього буде передано об'єкт {{WebExtAPIRef("sessions.Session", "Session")}}, що відповідатиме відновленій сесії.</p>
-
-<h2 id="Підтримка_веб-переглядачами">Підтримка веб-переглядачами</h2>
-
-<div class="hidden">Таблиця сумісності на цій сторінці створена зі структурованих даних. Якщо ви хочете долучитися до розробки цих даних, пропонуйте нам свої pull request до репозиторію <a href="https://github.com/mdn/browser-compat-data">https://github.com/mdn/browser-compat-data</a>.</div>
-
-<p>{{Compat("webextensions.api.sessions.restore")}}</p>
-
-<h2 id="Приклади">Приклади</h2>
-
-<p>Цей код відновлює останню завершену сессію (вікно або вкладку):</p>
-
-<pre class="brush: js">function restoreMostRecent(sessionInfos) {
- if (!sessionInfos.length) {
- console.log("No sessions found")
- return;
- }
- let sessionInfo = sessionInfos[0];
- if (sessionInfo.tab) {
- browser.sessions.restore(sessionInfo.tab.sessionId);
- } else {
- browser.sessions.restore(sessionInfo.window.sessionId);
- }
-}
-
-function onError(error) {
- console.log(error);
-}
-
-browser.browserAction.onClicked.addListener(function() {
- var gettingSessions = browser.sessions.getRecentlyClosed({
- maxResults: 1
- });
- gettingSessions.then(restoreMostRecent, onError);
-});
-</pre>
-
-<p>{{WebExtExamples}}</p>
-
-<div class="note"><strong>Подяки</strong>
-
-<p>Цей API ґрунтується на <a href="https://developer.chrome.com/extensions/sessions"><code>chrome.sessions</code></a> API з Chromium.</p>
-
-<p>Дані про сумісність з Microsoft Edge надано корпорацією Microsoft і подано тут під ліцензією Creative Commons Attribution 3.0 United States License.</p>
-</div>
-
-<div class="hidden">
-<pre>// Copyright 2015 The Chromium Authors. All rights reserved.
-//
-// Redistribution and use in source and binary forms, with or without
-// modification, are permitted provided that the following conditions are
-// met:
-//
-// * Redistributions of source code must retain the above copyright
-// notice, this list of conditions and the following disclaimer.
-// * Redistributions in binary form must reproduce the above
-// copyright notice, this list of conditions and the following disclaimer
-// in the documentation and/or other materials provided with the
-// distribution.
-// * Neither the name of Google Inc. nor the names of its
-// contributors may be used to endorse or promote products derived from
-// this software without specific prior written permission.
-//
-// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-</pre>
-</div>
diff --git a/files/uk/mozilla/add-ons/webextensions/index.html b/files/uk/mozilla/add-ons/webextensions/index.html
deleted file mode 100644
index 3d759fc48c..0000000000
--- a/files/uk/mozilla/add-ons/webextensions/index.html
+++ /dev/null
@@ -1,120 +0,0 @@
----
-title: Browser extensions
-slug: Mozilla/Add-ons/WebExtensions
-tags:
- - Extensions
- - Landing
- - NeedsTranslation
- - TopicStub
- - WebExtensions
- - Додатки
-translation_of: Mozilla/Add-ons/WebExtensions
----
-<div>{{AddonSidebar}}</div>
-
-<p>Розширення можуть розширювати і змінювати можливості веб-переглядача. Розширення для Firefox побудовані за допомогою WebExtension APIs, крос-браузерної системи для розробників розширень. To a large extent the system is compatible with the <a class="external-icon external" href="https://developer.chrome.com/extensions">extension API</a> supported by Google Chrome and Opera and the <a href="https://browserext.github.io/browserext/">W3C Draft Community Group</a>. Extensions written for these browsers will in most cases run in Firefox or <a href="https://developer.microsoft.com/en-us/microsoft-edge/platform/documentation/extensions/">Microsoft Edge</a> with <a href="https://developer.mozilla.org/en-US/Add-ons/WebExtensions/Porting_from_Google_Chrome">just a few changes</a>. The API is also fully compatible with <a href="https://developer.mozilla.org/en-US/Firefox/Multiprocess_Firefox">multiprocess Firefox</a>.</p>
-
-<p>If you have ideas or questions, or need help migrating a legacy add-on to use WebExtension APIs, you can reach us on the <a href="https://mail.mozilla.org/listinfo/dev-addons">dev-addons mailing list</a> or <a href="irc://irc.mozilla.org/extdev">#extdev</a> on <a href="https://wiki.mozilla.org/IRC">IRC</a>.</p>
-
-<div class="row topicpage-table">
-<div class="section">
-<h2 id="Починаємо">Починаємо</h2>
-
-<ul>
- <li><a href="/en-US/Add-ons/WebExtensions/What_are_WebExtensions">What are extensions?</a></li>
- <li><a href="/en-US/Add-ons/WebExtensions/Your_first_WebExtension">Your first extension</a></li>
- <li><a href="/en-US/Add-ons/WebExtensions/Your_second_WebExtension">Your second extension</a></li>
- <li><a href="/en-US/Add-ons/WebExtensions/Anatomy_of_a_WebExtension">Anatomy of an extension</a></li>
- <li><a href="/en-US/Add-ons/WebExtensions/Examples">Example extensions</a></li>
-</ul>
-
-<h2 id="How_to">How to</h2>
-
-<ul>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/Intercept_HTTP_requests">Intercept HTTP requests</a></li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/Modify_a_web_page">Modify a web page</a></li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/Add_a_button_to_the_toolbar">Add a button to the toolbar</a></li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/Implement_a_settings_page">Implement a settings page</a></li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/Interact_with_the_clipboard">Interact with the clipboard</a></li>
-</ul>
-
-<h2 id="Користувацький_інтерфейс">Користувацький інтерфейс</h2>
-
-<ul>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/user_interface">Introduction</a></li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/user_interface/Browser_action">Browser toolbar button</a></li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/user_interface/Popups">Browser toolbar button with a popup</a></li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/user_interface/Page_actions">Address bar button</a></li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/user_interface/Popups">Address bar button with a popup</a></li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/user_interface/Context_menu_items">Context menu items</a></li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/user_interface/Sidebars">Sidebars</a></li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/user_interface/Options_pages">Options page</a></li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/user_interface/Bundled_web_pages">Bundled web pages</a></li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/user_interface/Notifications">Notifications</a></li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/user_interface/Omnibox">Address bar suggestions</a></li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/user_interface/devtools_panels">Developer tools panels</a></li>
-</ul>
-
-<h2 id="Концепції">Концепції</h2>
-
-<ul>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/API">JavaScript API overview</a></li>
- <li><a href="/en-US/Add-ons/WebExtensions/Content_scripts">Content scripts</a></li>
- <li><a href="/en-US/Add-ons/WebExtensions/Match_patterns">Match patterns</a></li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/Working_with_files">Working with files</a></li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/Internationalization">Internationalization</a></li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/Content_Security_Policy">Content Security Policy</a></li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/Native_messaging">Native messaging</a></li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/Using_the_devtools_APIs">Using the devtools APIs</a></li>
- <li><a href="/en-US/Add-ons/WebExtensions/User_experience_best_practices">User experience best practices</a></li>
-</ul>
-
-<h2 id="Перенесення">Перенесення</h2>
-
-<ul>
- <li><a href="/en-US/Add-ons/WebExtensions/Porting_from_Google_Chrome">Porting a Google Chrome extension</a></li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/Porting_a_legacy_Firefox_add-on">Porting a legacy Firefox extension</a></li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/Developing_WebExtensions_for_Firefox_for_Android">Developing for Firefox for Android</a></li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/Embedded_WebExtensions">Embedded WebExtensions</a></li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/Comparison_with_the_Add-on_SDK">Comparison with the Add-on SDK</a></li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/Comparison_with_XUL_XPCOM_extensions">Comparison with XUL/XPCOM extensions</a></li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/Chrome_incompatibilities">Chrome incompatibilities</a></li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/Differences_between_desktop_and_Android">Differences between desktop and Android</a></li>
-</ul>
-
-<h2 id="Firefox_workflow">Firefox workflow</h2>
-
-<ul>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/User_experience_best_practices">User experience</a></li>
- <li><a href="/en-US/Add-ons/WebExtensions/Temporary_Installation_in_Firefox">Installation</a></li>
- <li><a href="/en-US/Add-ons/WebExtensions/Debugging">Debugging</a></li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/Getting_started_with_web-ext">Getting started with web-ext</a></li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/web-ext_command_reference">web-ext command reference</a></li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/WebExtensions_and_the_Add-on_ID">Extensions and the Add-on ID</a></li>
- <li><a href="/en-US/Add-ons/WebExtensions/Alternative_distribution_options">Alternative distribution options</a></li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/Publishing_your_WebExtension">Publishing your extension</a></li>
-</ul>
-</div>
-
-<div class="section">
-<h2 id="Довідка">Довідка</h2>
-
-<h3 id="JavaScript_APIs">JavaScript APIs</h3>
-
-<ul>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/API">JavaScript API overview</a></li>
- <li><a href="/en-US/Add-ons/WebExtensions/Browser_support_for_JavaScript_APIs">Browser compatibility tables for JavaScript APIs</a></li>
-</ul>
-
-<div class="twocolumns">{{ ListSubpages ("/en-US/Add-ons/WebExtensions/API") }}</div>
-
-<h3 id="Manifest_keys">Manifest keys</h3>
-
-<ul>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/manifest.json">manifest.json overview</a></li>
- <li><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/Browser_compatibility_for_manifest.json">Browser compatibility for manifest.json</a></li>
-</ul>
-
-<div class="twocolumns">{{ ListSubpages ("/en-US/Add-ons/WebExtensions/manifest.json") }}</div>
-</div>
-</div>
diff --git a/files/uk/mozilla/add-ons/webextensions/interact_with_the_clipboard/index.html b/files/uk/mozilla/add-ons/webextensions/interact_with_the_clipboard/index.html
deleted file mode 100644
index b415ba0b0b..0000000000
--- a/files/uk/mozilla/add-ons/webextensions/interact_with_the_clipboard/index.html
+++ /dev/null
@@ -1,171 +0,0 @@
----
-title: Interact with the clipboard
-slug: Mozilla/Add-ons/WebExtensions/Interact_with_the_clipboard
-translation_of: Mozilla/Add-ons/WebExtensions/Interact_with_the_clipboard
----
-<div>{{AddonSidebar}}</div>
-
-<p>Існує два шляхи взаємодії веб-додатків з буфером обміну:  {{domxref("Document.execCommand()")}} метод і новітній асинхронний <a href="/en-US/docs/Web/API/Clipboard_API">Clipboard API</a>.</p>
-
-<p>{{domxref("Document.execCommand()")}} може використовуватись, бажано з наступними командами:</p>
-
-<ul>
- <li><code>document.execCommand("copy")</code></li>
- <li><code>document.execCommand("cut")</code></li>
- <li><code>document.execCommand("paste")</code></li>
-</ul>
-
-<p>Clipboard API надає асинхронний доступ считування та запису прямо в буфер обміну. Наприклад, щоб зчитати текст з буферу обміну виконайте:</p>
-
-<pre class="brush: js">navigator.clipboard.readText().then(text =&gt; outputElem.innerText = text);</pre>
-
-<p>Ця команда запитує текст в буфері та, та коли відповідь надійде з буферу, вона буде записана прямісенько в елемент {{domxref("Node.innerText", "innerText")}}.</p>
-
-<div class="note">
-<p><strong>Примітка:</strong> Асинхронний Clipboard API метод нещодавно доданий в специфікацію, і може ще працювати не в усіх веб-оглядачах. Запевнетесь щодо кожного методу в таблиці сумісності перед тим як використовувати його.</p>
-</div>
-
-<h2 id="Запис_в_буфер_обміну">Запис в буфер обміну</h2>
-
-<p>Існує два шляхи запису в буфер обміну. Ви можете використати {{domxref("Document.execCommand", "document.execCommand()")}} для запиту  "cut" та "copy" дій, які замінюють контент в буфері із виділенним даними. Інша опція це Clipboard API's {{domxref("Clipboard.writeText()")}} чи {{domxref("Clipboard.write()")}}.</p>
-
-<h3 id="Використання_execCommand()">Використання execCommand()</h3>
-
-<p>{{domxref("Document.execCommand", "document.execCommand()")}} метод <code>"cut"</code> та <code>"copy"</code> команди можуть бути використані для заміни буферу із виділенними даними. Ці команди можуть бути виконані без будь яких дозволів, якщо ви використовуєте їх короткочасних обробниках дій користувача(наприклад, обробник кліку).</p>
-
-<p>Наприклад HTML:</p>
-
-<pre class="brush: html">&lt;input id="input" type="text"/&gt;
-&lt;button id="copy"&gt;Copy&lt;/button&gt;
-</pre>
-
-<p>Із кнопкою <code>"copy"</code> яка копіює контент {{HTMLElement("input")}} елементу, ви можете використати код такий як:</p>
-
-<pre class="brush: js">function copy() {
- var copyText = document.querySelector("#input");
- copyText.select();
- document.execCommand("copy");
-}
-
-document.querySelector("#copy").addEventListener("click", copy);</pre>
-
-<p>Тому що <code>execCommand()</code> виклик знаходится всередені обробника кліку, вам не потрібні ніякі спеціальні дозволи.</p>
-
-<p>Однак, якщо наприклад замість того ви копіюєте з alarm:</p>
-
-<pre class="brush: js">function copy() {
- var copyText = document.querySelector("#input");
- copyText.select();
- document.execCommand("copy");
-}
-
-browser.alarms.create({
- delayInMinutes: 0.1
-});
-
-browser.alarms.onAlarm.addListener(copy);</pre>
-
-<p>Залежно від веб-оглядача, це може не спрацювати. У Firefox, це не спрацює, і ви побачете повідомлення помилки як:</p>
-
-<pre>document.execCommand(‘cut’/‘copy’) was denied because it was not called from inside a short running user-generated event handler.</pre>
-
-<p>Щоб надати можливість виконати це, вам потрібно запитати дозвол <code>"clipboardWrite"</code> <a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/manifest.json/permissions">permission</a>. Тож: <code>"clipboardWrite"</code> дозволяє копіювати поза простих обробників дій користувача.</p>
-
-<h3 id="Використання_Clipboard_API">Використання Clipboard API</h3>
-
-<p>Clipboard API додає більшу гнучкість, в такому разі ви не обмежені лише в копіюванні поточного виділення в буфер обміну, ви маєте також можливість вказати будь яку інформацію внести в буфер.</p>
-
-<p>Використання API потребує дозволу "clipboardRead" чи "clipboardWrite" в вашому manifest.json файлі.</p>
-
-<p>Для страничних скриптів, Permissions API's потребує дозвіл <code>"clipboard-write"</code>.  Ви можете запросити дозвіл з {{domxref("Permissions.query", "navigator.permissions.query()")}}:</p>
-
-<pre class="brush: js">navigator.permissions.query({name: "clipboard-write"}).then(result =&gt; {
- if (result.state == "granted" || result.state == "prompt") {
- /* write to the clipboard now */
- }
-});
-</pre>
-
-<p>Ця функція приймає строку вводу та вносить ії в буфер обміну:</p>
-
-<pre class="brush: js">function updateClipboard(newClip) {
- navigator.clipboard.writeText(newClip).then(function() {
- /* clipboard successfully set */
- }, function() {
- /* clipboard write failed */
- });
-}
-</pre>
-
-<h3 id="Browser-specific_considerations">Browser-specific considerations</h3>
-
-<p>Буфер обміну та інші APIs активно розвиваются, тож існують варіанти серед веб-оглядачів як вони працюють.</p>
-
-<p>В Chrome:</p>
-
-<ul>
- <li>Ви можете записувати в буфер обміну як інші операції з контекстом сторінки.</li>
- <li>Вам не потрібні <code>"clipboardWrite"</code>, навіть поза функцією оброки дій користувача(event handler).</li>
-</ul>
-
-<p>В Firefox:</p>
-
-<ul>
- <li>Ви можете записувата в буфер з execCommand в усіх обробках контенту, <em>виключно в фонових сторінках</em>. В Firefox ви не можете виділяти текст чи ставити фокус на input в фонових сторінках, тож ви не можете записувати в буфер з execCommand у фонових сторінках. Clipboard Web API не має таких обмежень.</li>
- <li>З версії 57 і вищче, ви можете копіювати зображення в буфер використовуючи <code><a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/API/clipboard/setImageData">clipboard.setImageData()</a></code> API.</li>
- <li>Підтримка Clipboard API's {{domxref("Clipboard.writeText", "navigator.clipboard.writeText()")}} було додано Firefox 63.</li>
- <li>Із використанням скриптів сторінок, Clipboard API доступна лише з HTTPS сторінками. В іншому випадку, використовуйте messaging між вашим контент скриптом та фоновим скриптом.</li>
-</ul>
-
-<div class="blockIndicator note">
-<p><code>execCommand('copy')</code> API не підтримує <strong>Safari</strong></p>
-</div>
-
-<h2 id="Зчитування_буферу_обміну">Зчитування буферу обміну</h2>
-
-<p><code>execCommand()</code> дозволяє виконати <code>"paste"</code> команду, яка дозволяє вставити поточний контент в буфері обміну в область редагування. Ви можете отримати більшу гнучкість із  Clipboard API's {{domxref("Clipboard.read()")}} та {{domxref("Clipboard.readText()")}} методами.</p>
-
-<h3 id="Використання_execCommand()_2">Використання execCommand()</h3>
-
-<p>По-перше, вам потрібен дозвіл <code>"clipboardRead"</code> <a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/manifest.json/permissions">permission</a> визначно до вашого додатку. Це обов'язвокі умови навіть якщо <code>"paste"</code> команда виконується в обробнику дій користувача такі як {{event("click")}} чи {{event("keypress")}}.</p>
-
-<p>Наприклад HTML такий як:</p>
-
-<pre class="brush: html">&lt;textarea id="output"&gt;&lt;/textarea&gt;
-&lt;button id="paste"&gt;Paste&lt;/button&gt;
-</pre>
-
-<p>Щоб вставити контент в {{HTMLElement("textarea")}} з ID <code>"output"</code> з буферу обміну коли користувач нажме на кнопку <code>"paste"</code> {{HTMLElement("button")}}, використовуйте код:</p>
-
-<pre class="brush: js">function paste() {
- var pasteText = document.querySelector("#output");
- pasteText.focus();
- document.execCommand("paste");
- console.log(pasteText.textContent);
-}
-
-document.querySelector("#paste").addEventListener("click", paste);</pre>
-
-<h3 id="Використання_Clipboard_API_2">Використання Clipboard API</h3>
-
-<p>Clipboard API's {{domxref("Clipboard.readText", "navigator.clipboard.readText()")}} та {{domxref("Clipboard.read", "navigator.clipboard.read()")}} методи дозволяють вам зчитувати  текст чи бінарні данні з буферу обміну. Вона надає можливість зчитувати данні в буфері без вставки його в елемент редагування.</p>
-
-<p>Щойно ви отримали <code>"clipboard-read"</code> дозвіл з <a href="/en-US/docs/Web/API/Permissions_API">Permissions API</a>, ви можете зчитати данні дуже легко:</p>
-
-<pre class="brush: js">navigator.clipboard.readText().then(clipText =&gt;
- document.getElementById("outbox").innerText = clipText);</pre>
-
-<p>Цей код витягує текст з буферу та замінює контент елементу з ID <code>"outbox"</code>.</p>
-
-<h3 id="Browser-specific_considerations_2">Browser-specific considerations</h3>
-
-<p>Firefox підтримує <code>"clipboardRead"</code> <a href="/en-US/docs/Mozilla/Add-ons/WebExtensions/manifest.json/permissions">permission</a> з версії 54, але личше підтримує вставку в елементи в <a href="/en-US/docs/Web/Guide/HTML/Editable_content">content editable mode</a>, які в контент скриптах лише працюють з  {{HTMLElement("textarea")}}. Для фонових скриптів, будь який елемент може бути змінений в режим редагування контенту.</p>
-
-<h2 id="Дивись_також">Дивись також</h2>
-
-<ul>
- <li><a href="/en-US/docs/Web/API/Clipboard_API">Clipboard API</a></li>
- <li><a href="/en-US/docs/Web/API/Permissions_API">Permissions API</a></li>
- <li><a href="/en-US/docs/Web/Guide/HTML/Editable_content">Making content editable</a></li>
- <li>{{htmlattrxref("contenteditable")}}</li>
-</ul>
diff --git a/files/uk/mozilla/add-ons/webextensions/what_are_webextensions/index.html b/files/uk/mozilla/add-ons/webextensions/what_are_webextensions/index.html
deleted file mode 100644
index eccf78994d..0000000000
--- a/files/uk/mozilla/add-ons/webextensions/what_are_webextensions/index.html
+++ /dev/null
@@ -1,26 +0,0 @@
----
-title: Що таке розширення?
-slug: Mozilla/Add-ons/WebExtensions/What_are_WebExtensions
-tags:
- - Web-Розширення
- - Розширення
-translation_of: Mozilla/Add-ons/WebExtensions/What_are_WebExtensions
-original_slug: Mozilla/Add-ons/WebExtensions/Що_таке_Web_Розширення
----
-<div>{{AddonSidebar}}</div>
-
-<p>Розширення є частинками коду, які змінюють функціонування web-браузера. Вони написані з використанням стандартних web-технологій - JavaScript, HTML і CSS - плюс деяких спеціальних JavaScript API. Крім того, розширення можуть додавати нові функції до браузера або змінювати зовнішній вигляд або вміст конкретних web-сайтів.</p>
-
-<p>Розширення для Firefox створені з використанням API Web-розширень, крос-браузерної системи для розробки розширень. Значною мірою API сумісний з <a class="external external-icon" href="https://developer.chrome.com/extensions">API розширенням</a>, яке підтримується Google Chrome і Opera. Розширення написані для цих браузерів в більшості випадків запускатимуться у Firefox або Microsoft Edge з <a href="/uk/docs/Mozilla/Add-ons/WebExtensions/Porting_a_Google_Chrome_extension">лише кількома змінами</a>. API також повністю сумісний з <a href="/uk/Firefox/Multiprocess_Firefox">багатопроцесовим Firefox</a>.</p>
-
-<p>В минулому, ви могли розробляти розширення Firefox використовуючи одне з трьох різних систем: <a href="/uk/Add-ons/Overlay_Extensions">XUL/XPCOM overlays</a>, <a href="/uk/docs/Mozilla/Add-ons/Bootstrapped_extensions">bootstrapped extensions</a>, або <a href="/uk/docs/Mozilla/Add-ons/SDK">Add-on SDK</a>. По закінченню Листопада 2017-го, API Web-розширення будуть єдиним способом розробки розширень Firefox, і інші системи не будуть підтримуватися.</p>
-
-<p>Якщо ви маєте ідеї або питання, чи вам потрібна допомога міграції успадкованого додатку на API Web-розширень, то ви можете зв'язатися з нами на <a class="external external-icon" href="https://mail.mozilla.org/listinfo/dev-addons">dev-addons списку листування</a> або в <a href="irc://irc.mozilla.org/extdev">#extdev</a> на <a class="external external-icon" href="https://wiki.mozilla.org/IRC">IRC</a>.</p>
-
-<h2 id="Що_далі">Що далі?</h2>
-
-<ul>
- <li>Спробувати деякі приклади розширень, див. <a href="/uk/Add-ons/WebExtensions/Examples">Приклад розширень</a>.</li>
- <li>Дізнатися про структуру розширення, див. <a href="/uk/docs/Mozilla/Add-ons/WebExtensions/Anatomy_of_a_WebExtension">Анатомія розширення</a>.</li>
- <li>Перейти до розробки простого розширення, див. <a href="/uk/docs/Mozilla/Add-ons/WebExtensions/Your_first_WebExtension">Ваше перше розширення</a>.</li>
-</ul>