aboutsummaryrefslogtreecommitdiff
path: root/files/fr/web/api/client
diff options
context:
space:
mode:
authorPeter Bengtsson <mail@peterbe.com>2020-12-08 14:40:17 -0500
committerPeter Bengtsson <mail@peterbe.com>2020-12-08 14:40:17 -0500
commit33058f2b292b3a581333bdfb21b8f671898c5060 (patch)
tree51c3e392513ec574331b2d3f85c394445ea803c6 /files/fr/web/api/client
parent8b66d724f7caf0157093fb09cfec8fbd0c6ad50a (diff)
downloadtranslated-content-33058f2b292b3a581333bdfb21b8f671898c5060.tar.gz
translated-content-33058f2b292b3a581333bdfb21b8f671898c5060.tar.bz2
translated-content-33058f2b292b3a581333bdfb21b8f671898c5060.zip
initial commit
Diffstat (limited to 'files/fr/web/api/client')
-rw-r--r--files/fr/web/api/client/frametype/index.html96
-rw-r--r--files/fr/web/api/client/id/index.html103
-rw-r--r--files/fr/web/api/client/index.html92
-rw-r--r--files/fr/web/api/client/postmessage/index.html132
-rw-r--r--files/fr/web/api/client/url/index.html118
5 files changed, 541 insertions, 0 deletions
diff --git a/files/fr/web/api/client/frametype/index.html b/files/fr/web/api/client/frametype/index.html
new file mode 100644
index 0000000000..42fdca1bde
--- /dev/null
+++ b/files/fr/web/api/client/frametype/index.html
@@ -0,0 +1,96 @@
+---
+title: Client.frameType
+slug: Web/API/Client/frameType
+tags:
+ - API
+ - Client
+ - Experimental
+ - Property
+ - Reference
+ - ServiceWorker
+ - frameType
+translation_of: Web/API/Client/frameType
+---
+<p>{{SeeCompatTable}}{{APIRef("Service Workers API")}}</p>
+
+<p>La propriété <code><strong>frameType</strong></code> (accessible en lecture seule) de l'interface {{domxref("Client")}} indique le type de contexte de navigation du {{domxref("Client")}} courant. Cette valeur peut être <code>auxiliary</code>, <code>top-level</code>, <code>nested</code>, ou <code>none</code>.</p>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="brush: js">var myFrameType = Client.frameType;</pre>
+
+<h2 id="Exemple">Exemple</h2>
+
+<pre class="brush: js">TBD
+</pre>
+
+<h2 id="Spécifications">Spécifications</h2>
+
+<table class="standard-table">
+ <tbody>
+ <tr>
+ <th scope="col">Spécification</th>
+ <th scope="col">Statut</th>
+ <th scope="col">Commentaire</th>
+ </tr>
+ <tr>
+ <td>{{SpecName('Service Workers', '#client-frametype', 'frameType')}}</td>
+ <td>{{Spec2('Service Workers')}}</td>
+ <td>Définition initiale.</td>
+ </tr>
+ </tbody>
+</table>
+
+<h2 id="Compatibilité_des_navigateurs">Compatibilité des navigateurs</h2>
+
+<div>{{CompatibilityTable}}</div>
+
+<div id="compat-desktop">
+<table class="compat-table">
+ <tbody>
+ <tr>
+ <th>Fonctionnalité</th>
+ <th>Chrome</th>
+ <th>Firefox (Gecko)</th>
+ <th>Internet Explorer</th>
+ <th>Opera</th>
+ <th>Safari (WebKit)</th>
+ </tr>
+ <tr>
+ <td>Support de base</td>
+ <td>{{CompatChrome(43.0)}}</td>
+ <td>{{ CompatGeckoDesktop("44.0") }}</td>
+ <td>{{CompatNo}}</td>
+ <td>{{CompatUnknown}}</td>
+ <td>{{CompatNo}}</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+
+<div id="compat-mobile">
+<table class="compat-table">
+ <tbody>
+ <tr>
+ <th>Fonctionnalité</th>
+ <th>Android</th>
+ <th>Firefox Mobile (Gecko)</th>
+ <th>Firefox OS</th>
+ <th>IE Mobile</th>
+ <th>Opera Mobile</th>
+ <th>Safari Mobile</th>
+ <th>Chrome for Android</th>
+ </tr>
+ <tr>
+ <td>Support de base</td>
+ <td>{{CompatNo}}</td>
+ <td>{{ CompatGeckoMobile("44.0") }}</td>
+ <td>{{CompatUnknown}}</td>
+ <td>{{CompatNo}}</td>
+ <td>{{CompatUnknown}}</td>
+ <td>{{CompatNo}}</td>
+ <td>{{CompatChrome(43.0)}}</td>
+ </tr>
+ </tbody>
+</table>
+</div>
diff --git a/files/fr/web/api/client/id/index.html b/files/fr/web/api/client/id/index.html
new file mode 100644
index 0000000000..8e7cf2701c
--- /dev/null
+++ b/files/fr/web/api/client/id/index.html
@@ -0,0 +1,103 @@
+---
+title: Client.id
+slug: Web/API/Client/id
+tags:
+ - API
+ - Client
+ - Experimental
+ - Propriété
+ - Reference
+ - Service Workers
+ - ServiceWorkers
+ - id
+translation_of: Web/API/Client/id
+---
+<p>{{SeeCompatTable}}{{APIRef("Service Workers API")}}</p>
+
+<p>La propriété <code><strong>id</strong></code> (lecture seule) de l'interface {{domxref("Client")}} retourne l'identifiant universellement unique de l'objet {{domxref("Client")}}.</p>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="brush: js">var clientId = Client.id;</pre>
+
+<h2 id="Exemple">Exemple</h2>
+
+<pre class="brush: js">TBD
+</pre>
+
+<h2 id="Spécifications">Spécifications</h2>
+
+<table class="standard-table">
+ <tbody>
+ <tr>
+ <th scope="col">Spécification</th>
+ <th scope="col">Statut</th>
+ <th scope="col">Commentaire</th>
+ </tr>
+ <tr>
+ <td>{{SpecName('Service Workers', '#client-id', 'id')}}</td>
+ <td>{{Spec2('Service Workers')}}</td>
+ <td>Initial definition.</td>
+ </tr>
+ </tbody>
+</table>
+
+<h2 id="Compatibilité_des_navigateurs">Compatibilité des navigateurs</h2>
+
+<div>{{CompatibilityTable}}</div>
+
+<div id="compat-desktop">
+<table class="compat-table">
+ <tbody>
+ <tr>
+ <th>Fonctionnalité</th>
+ <th>Chrome</th>
+ <th>Firefox (Gecko)</th>
+ <th>Internet Explorer</th>
+ <th>Opera</th>
+ <th>Safari (WebKit)</th>
+ </tr>
+ <tr>
+ <td>Support de base</td>
+ <td>{{CompatChrome(45.0)}} [1]</td>
+ <td>{{ CompatGeckoDesktop("44.0") }}</td>
+ <td>{{CompatNo}}</td>
+ <td>{{CompatUnknown}}</td>
+ <td>{{CompatNo}}</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+
+<div id="compat-mobile">
+<table class="compat-table">
+ <tbody>
+ <tr>
+ <th>Fonctionnalité</th>
+ <th>Android</th>
+ <th>Android Webview</th>
+ <th>Firefox Mobile (Gecko)</th>
+ <th>Firefox OS</th>
+ <th>IE Mobile</th>
+ <th>Opera Mobile</th>
+ <th>Safari Mobile</th>
+ <th>Chrome for Android</th>
+ </tr>
+ <tr>
+ <td>Support de base</td>
+ <td>{{CompatNo}}</td>
+ <td>{{CompatNo}}</td>
+ <td>{{ CompatGeckoMobile("44.0") }}</td>
+ <td>{{CompatUnknown}}</td>
+ <td>{{CompatNo}}</td>
+ <td>{{CompatUnknown}}</td>
+ <td>{{CompatNo}}</td>
+ <td>{{CompatChrome(45.0)}} [1]</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+
+<ul>
+ <li><strong>[1]:</strong> Avec un flag de Chrome 40 à 44.</li>
+</ul>
diff --git a/files/fr/web/api/client/index.html b/files/fr/web/api/client/index.html
new file mode 100644
index 0000000000..ceb18926b1
--- /dev/null
+++ b/files/fr/web/api/client/index.html
@@ -0,0 +1,92 @@
+---
+title: Client
+slug: Web/API/Client
+tags:
+ - API
+ - Client
+ - Experimental
+ - Interface
+ - Reference
+ - Service Workers
+ - Service worker API
+ - ServiceWorkerClient
+ - ServiceWorkers
+translation_of: Web/API/Client
+---
+<p>{{APIRef("Service Workers API")}}</p>
+
+<p>L'interface <code>Client</code> de l'<a href="/en-US/docs/Web/API/ServiceWorker_API">API ServiceWorker</a> représente la portée d'exécution d'un {{domxref("Worker")}} ou {{domxref("SharedWorker")}}. Les clients {{domxref("Window")}} sont représentés par le plus spécifique {{domxref("WindowClient")}}. Vous pouvez obtenir les objets <code>Client</code>/<code>WindowClient</code> via les méthodes {{domxref("Clients.matchAll","Clients.matchAll()")}} et {{domxref("Clients.get","Clients.get()")}}.</p>
+
+<h2 id="Méthodes">Méthodes</h2>
+
+<dl>
+ <dt>{{domxref("Client.postMessage()")}}</dt>
+ <dd>Permet à un service worker d'envoyer un message au <code><a href="https://developer.mozilla.org/en-US/docs/Web/API/ServiceWorkerClient" title="The ServiceWorker interface of the ServiceWorker API provides a reference to a service worker. Multiple browsing contexts (e.g. pages, workers, etc.) can be associated with the same service worker, each through a unique ServiceWorker object.">ServiceWorkerClient</a></code>.</dd>
+</dl>
+
+<h2 id="Propriétés">Propriétés</h2>
+
+<dl>
+ <dt>{{domxref("Client.id")}} {{readonlyInline}}</dt>
+ <dd>Retourne l'identifiant universellement unique de l'objet <code>Client</code>.</dd>
+ <dt>{{domxref("Client.type")}} {{readonlyInline}}</dt>
+ <dd>Indique le type de contexte de navigation du client courant. Cette valeur peut être <code>auxiliary</code>, <code>top-level</code>, <code>nested</code>, or <code>none</code>.</dd>
+ <dt>{{domxref("Client.url")}} {{readonlyInline}}</dt>
+ <dd>Retourne l'URL du client service worker courant.</dd>
+</dl>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Ce code est basé sur un fragment pris d'un <a href="https://github.com/GoogleChrome/samples/blob/gh-pages/service-worker/post-message/index.html">exemple d'envoi de message</a> (voir <a href="https://googlechrome.github.io/samples/service-worker/post-message/">l'exemple en ligne</a>.) Ce code envoie une référence de message à laquelle le service worker peut répondre via {{domxref("Client.postMessage()")}}.</p>
+
+<p>Ce message est contenu dans une promesse qui est résolue si la réponse ne contient pas d'erreur et est rejetée avec une erreur.</p>
+
+<pre class="brush: js notranslate">// client service worker (par exemple un document)
+function sendMessage(message) {
+ return new Promise(function(resolve, reject) {
+ // Notez que c'est la version du ServiceWorker.postMessage
+ navigator.serviceWorker.controller.postMessage(message);
+ window.serviceWorker.onMessage = function(e) {
+ resolve(e.data);
+ };
+ });
+}
+
+// Contrôle du service worker
+self.addEventListener("message", function(e) {
+ // e.source est un object client
+ e.source.postMessage("Hello! Your message was: " + e.data);
+});
+</pre>
+
+<h2 id="Spécifications">Spécifications</h2>
+
+<table class="standard-table">
+ <tbody>
+ <tr>
+ <th scope="col">Spécification</th>
+ <th scope="col">État</th>
+ <th scope="col">Commentaire</th>
+ </tr>
+ <tr>
+ <td>{{SpecName('Service Workers', '#client', 'Client')}}</td>
+ <td>{{Spec2('Service Workers')}}</td>
+ <td>Définition initiale</td>
+ </tr>
+ </tbody>
+</table>
+
+<h2 id="Compatibilité_des_navigateurs">Compatibilité des navigateurs</h2>
+
+<div>{{Compat("api.Client")}}</div>
+
+<h2 id="Voir_également">Voir également</h2>
+
+<ul>
+ <li><a href="/en-US/docs/Web/API/ServiceWorker_API/Using_Service_Workers">Utiliser les Service Workers</a></li>
+ <li><a href="https://github.com/mdn/sw-test">Exemple simple de service workers</a></li>
+ <li><a href="https://jakearchibald.github.io/isserviceworkerready/">Est ce que le ServiceWorker est prêt ?</a></li>
+ <li><a href="https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Promise">Promesses</a></li>
+ <li><a href="/en-US/docs/Web/Guide/Performance/Using_web_workers">Utilisation performante des web workers</a></li>
+ <li><a href="/en-US/docs/Web/API/Channel_Messaging_API">Channel Messaging API</a></li>
+</ul>
diff --git a/files/fr/web/api/client/postmessage/index.html b/files/fr/web/api/client/postmessage/index.html
new file mode 100644
index 0000000000..1217139212
--- /dev/null
+++ b/files/fr/web/api/client/postmessage/index.html
@@ -0,0 +1,132 @@
+---
+title: Client.postMessage()
+slug: Web/API/Client/postMessage
+tags:
+ - API
+ - Client
+ - Méthode
+ - Reference
+ - Service Worker
+ - ServiceWorker
+ - postMessage
+translation_of: Web/API/Client/postMessage
+---
+<p>{{SeeCompatTable}}{{APIRef("Client")}}</p>
+
+<p>La méthode <code><strong>postMessage() </strong></code>de l'interface {{domxref("Client")}} permet à un service worker client d'envoyer un message à un {{domxref("ServiceWorker")}}.</p>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="brush: js">Client.postMessage(message[, transfer]);</pre>
+
+<h3 id="Valeur_de_retour">Valeur de retour</h3>
+
+<p>Void.</p>
+
+<h3 id="Paramètres">Paramètres</h3>
+
+<dl>
+ <dt><code>message</code></dt>
+ <dd>Le message à envoyer au service worker.</dd>
+ <dt><code>transfer {{optional_inline}}</code></dt>
+ <dd>Un objet transferable, comme par exemple une référence à un port.</dd>
+</dl>
+
+<h2 id="Exemples">Exemples</h2>
+
+<p>Ce fragment de code est tiré de l'<a href="https://github.com/GoogleChrome/samples/blob/gh-pages/service-worker/post-message/index.html">exemple d'envoi de message du service worker</a> exemple d'envoi de message du service worker (voir <a href="https://googlechrome.github.io/samples/service-worker/post-message/">exemple en ligne</a>). Le code envoi un message et transfert le port vers le service worker qui pourra répondre via {{domxref("Client.postMessage()")}}.</p>
+
+<p>Ce message est contenu dans une promesse qui se résolvera si la réponse ne contient pas d'erreur et qui échouera avec l'erreur.</p>
+
+<pre class="brush: js">function sendMessage(message) {
+ return new Promise(function(resolve, reject) {
+ var messageChannel = new MessageChannel();
+ messageChannel.port1.onmessage = function(event) {
+ if (event.data.error) {
+ reject(event.data.error);
+ } else {
+ resolve(event.data);
+ }
+ };
+ navigator.serviceWorker.controller.postMessage(message, [messageChannel.port2]);
+ });
+}</pre>
+
+<h2 id="Spécifications">Spécifications</h2>
+
+<table class="standard-table">
+ <tbody>
+ <tr>
+ <th scope="col">Spécification</th>
+ <th scope="col">Statut</th>
+ <th scope="col">Commentaire</th>
+ </tr>
+ <tr>
+ <td>{{SpecName('Service Workers', '#client-postmessage-method', 'postMessage()')}}</td>
+ <td>{{Spec2('Service Workers')}}</td>
+ <td>Définition initiale</td>
+ </tr>
+ </tbody>
+</table>
+
+<h2 id="Compatibilité_des_navigateurs">Compatibilité des navigateurs</h2>
+
+<div>{{CompatibilityTable}}</div>
+
+<div id="compat-desktop">
+<table class="compat-table">
+ <tbody>
+ <tr>
+ <th>Fonctionnalité</th>
+ <th>Chrome</th>
+ <th>Firefox (Gecko)</th>
+ <th>Internet Explorer</th>
+ <th>Opera</th>
+ <th>Safari (WebKit)</th>
+ </tr>
+ <tr>
+ <td>Support de base</td>
+ <td>{{CompatChrome(45.0)}} [1]</td>
+ <td>{{CompatVersionUnknown}}<br>
+ {{ CompatGeckoDesktop("44.0") }}</td>
+ <td>{{CompatNo}}</td>
+ <td>{{CompatUnknown}}</td>
+ <td>{{CompatNo}}</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+
+<div id="compat-mobile">
+<table class="compat-table">
+ <tbody>
+ <tr>
+ <th>Fonctionnalité</th>
+ <th>Android</th>
+ <th>Android Webview</th>
+ <th>Firefox Mobile (Gecko)</th>
+ <th>Firefox OS</th>
+ <th>IE Mobile</th>
+ <th>Opera Mobile</th>
+ <th>Safari Mobile</th>
+ <th>Chrome for Android</th>
+ </tr>
+ <tr>
+ <td>Support de base</td>
+ <td>{{CompatNo}}</td>
+ <td>{{CompatNo}}</td>
+ <td>{{CompatVersionUnknown}}<br>
+ {{ CompatGeckoMobile("44.0") }}</td>
+ <td>{{CompatUnknown}}</td>
+ <td>{{CompatNo}}</td>
+ <td>{{CompatUnknown}}</td>
+ <td>{{CompatNo}}</td>
+ <td>{{CompatChrome(45.0)}} [1]</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+
+<ul>
+ <li>[1] Derrière un flag de Chrome 40 à 44.</li>
+</ul>
diff --git a/files/fr/web/api/client/url/index.html b/files/fr/web/api/client/url/index.html
new file mode 100644
index 0000000000..f96661289f
--- /dev/null
+++ b/files/fr/web/api/client/url/index.html
@@ -0,0 +1,118 @@
+---
+title: Client.url
+slug: Web/API/Client/url
+tags:
+ - API
+ - Client
+ - Experimental
+ - Property
+ - Reference
+ - ServiceWorkers
+ - URL
+translation_of: Web/API/Client/url
+---
+<div>{{SeeCompatTable}}{{APIRef("Service Workers API")}}</div>
+
+<div>La propriété <code><strong>url</strong></code> (lecture seule) de l'interface {{domxref("Client")}} retourne l'url du service worker client courant.</div>
+
+<div> </div>
+
+<h2 id="Syntaxe">Syntaxe</h2>
+
+<pre class="brush: js">var clientUrl = Client.url;</pre>
+
+<h3 id="Valeur_de_retour">Valeur de retour</h3>
+
+<p>Valeur de type {{domxref("USVString")}}.</p>
+
+<h2 id="Exemple">Exemple</h2>
+
+<pre class="brush: js">self.addEventListener('notificationclick', function(event) {
+ console.log('Au click de notification : ', event.notification.tag);
+ event.notification.close();
+
+  // Vérification pour savoir si l'évenement est ouvert et
+  // se focalise dessus si c'est le cas
+ event.waitUntil(clients.matchAll({
+ type: "window"
+ }).then(function(clientList) {
+ for (var i = 0; i &lt; clientList.length; i++) {
+ var client = clientList[i];
+ if (client.url == '/' &amp;&amp; 'focus' in client)
+ return client.focus();
+ }
+ if (clients.openWindow)
+ return clients.openWindow('/');
+ }));
+});</pre>
+
+<h2 id="Spécifications">Spécifications</h2>
+
+<table class="standard-table">
+ <tbody>
+ <tr>
+ <th scope="col">Spécification</th>
+ <th scope="col">Statut</th>
+ <th scope="col">Commentaire</th>
+ </tr>
+ <tr>
+ <td>{{SpecName('Service Workers', '#client-url', 'url')}}</td>
+ <td>{{Spec2('Service Workers')}}</td>
+ <td>Défintion initiale.</td>
+ </tr>
+ </tbody>
+</table>
+
+<h2 id="Compatibilité_des_navigateurs">Compatibilité des navigateurs</h2>
+
+<div>{{CompatibilityTable}}</div>
+
+<div id="compat-desktop">
+<table class="compat-table">
+ <tbody>
+ <tr>
+ <th>Fonctionnalité</th>
+ <th>Chrome</th>
+ <th>Firefox (Gecko)</th>
+ <th>Internet Explorer</th>
+ <th>Opera</th>
+ <th>Safari (WebKit)</th>
+ </tr>
+ <tr>
+ <td>Support de base</td>
+ <td>{{CompatChrome(41.0)}}</td>
+ <td>{{ CompatGeckoDesktop("44.0") }}</td>
+ <td>{{CompatNo}}</td>
+ <td>{{CompatUnknown}}</td>
+ <td>{{CompatNo}}</td>
+ </tr>
+ </tbody>
+</table>
+</div>
+
+<div id="compat-mobile">
+<table class="compat-table">
+ <tbody>
+ <tr>
+ <th>Fonctionnalité</th>
+ <th>Android</th>
+ <th>Firefox Mobile (Gecko)</th>
+ <th>Firefox OS</th>
+ <th>IE Mobile</th>
+ <th>Opera Mobile</th>
+ <th>Safari Mobile</th>
+ <th>Chrome for Android</th>
+ </tr>
+ <tr>
+ <td>Support de base</td>
+ <td>{{CompatNo}}</td>
+ <td>{{ CompatGeckoMobile("44.0") }}</td>
+ <td>{{CompatUnknown}}</td>
+ <td>{{CompatNo}}</td>
+ <td>{{CompatUnknown}}</td>
+ <td>{{CompatNo}}</td>
+ <td>{{CompatChrome(41.0)}}</td>
+ </tr>
+ </tbody>
+</table>
+</div>