bookmarks
=========

L'API de la WebExtensions `bookmarks` permet à une extension d'interagir et de manipuler le système de Bookmarking du navigateur. Vous pouvez l'utiliser pour enregistrer des marque-pages, récupérer des marque-pages existants et éditer, supprimer ou organiser des marque-pages.

Pour utiliser cette API, une extension doit demander la permission « bookmarks » dans son fichier `manifest.json`.

Les extensions ne peuvent pas créer, modifier ou supprimer des signets dans le nœud racine de l'arborescence de signets. Cela provoquerait une erreur avec le message: *"La racine du signet ne peut pas être modifiée"*

Les Types
---------

`bookmarks.BookmarkTreeNode`

Représente un marque-page ou un dossier dans l'arborescence des marque-pages.

`bookmarks.BookmarkTreeNodeType`

Un énumérateur `String` qui décrit si un nœud de l'arbre est un marque-page, un dossier ou un séparateur.

`bookmarks.BookmarkTreeNodeUnmodifiable`

Un `String` énumère ce qui spécifie pourquoi un marque-page ou un dossier n'est pas possible.

`bookmarks.CreateDetails`

Contient des informations passées à la fonction `bookmarks.create()` lors de la création d'un nouveau marque-page.

Les fonctions
-------------

`bookmarks.create()`

Créer un marque-page ou un dossier.

`bookmarks.get()`

Récupère un ou plusieurs `BookmarkTreeNode`s, compte tenu d'un identifiant de marque-page ou d'un ensemble d'identifiants de marque-pages.

`bookmarks.getChildren()`

Récupère les enfants spécifiés `BookmarkTreeNode`.

`bookmarks.getRecent()`

Récupère un nombre demandé de marque-page récemment ajoutés.

`bookmarks.getSubTree()`

Récupère un nombre demandé de favoris récemment ajoutés.

`bookmarks.getTree()`

Récupère l'intégralité de l'arborescence des marques pages dans un tableau d'objets `BookmarkTreeNode`.

`bookmarks.move()`

Déplace le `BookmarkTreeNode` vers un nouvel emplacement dans l'arborescence de marque-pages.

`bookmarks.remove()`

Supprime un marque page ou un dossier de marque-pages vide, en fonction de l'ID du noeud.

`bookmarks.removeTree()`

Supprime de manière récursive un dossier de marque-pages ; c'est-à-dire, étant donné l'ID d'un noeud de dossier, supprime ce noeud et tous ses descendants.

`bookmarks.search()`

Recherche `BookmarkTreeNode` une correspondant à un ensemble de critères spécifié.

`bookmarks.update()`

Met à jour le titre et/ou l'URL d'un marque-page, ou un nom de dossier de marque-pages, en fonction de l'ID d'un marque-page.

Events
------

`bookmarks.onCreated`

Déclenché lorsqu'un marque-page ou un dossier est créé.

`bookmarks.onRemoved`

Déclenché lorsqu'un marque-page ou un dossier est supprimé. Lorsqu'un dossier est supprimé de manière récursive, une seule notification est envoyée pour le dossier et aucune pour son contenu.

`bookmarks.onChanged`

Déclenché lorsqu'un marque-page ou un dossier change. Actuellement, seuls les changements de titre et d'URL déclenchent ce type d'événement.

`bookmarks.onMoved`

Déclenché lorsqu'un marque-page ou un dossier est déplacé vers un dossier parent différent ou vers un nouveau décalage dans son dossier.

`bookmarks.onChildrenReordered`

Déclenché lorsque l'utilisateur a trié les enfants d'un dossier dans l'interface utilisateur du navigateur. Ceci n'est pas déclenché par un appel `move()`.

`bookmarks.onImportBegan`

Déclenché lorsqu'une session d'importation de marque-pages est commencée. Les observateurs coûteux doivent ignorer les `bookmarks.onCreated` mises à jour jusqu'à ce que `bookmarks.onImportEnded` soit déclenché. Les observateurs doivent toujours gérer d'autres notifications immédiatement.

`bookmarks.onImportEnded`

Déclenché lorsqu'une session d'importation de marque-pages est terminée.

Compatibilité des navigateurs
-----------------------------

BCD tables only load in the browser with JavaScript enabled. Enable JavaScript to view data.

Example extensions
------------------

* bookmark-it

**Note :**

Cette API est basée sur l'API Chromium `chrome.bookmarks`. Cette documentation provient de `bookmarks.json` dans le code Chromium.

Les données de compatibilité relatives à Microsoft Edge sont fournies par Microsoft Corporation et incluses ici sous la licence Creative Commons Attribution 3.0 pour les États-Unis.