diff options
author | Matt A. Tobin <mattatobin@localhost.localdomain> | 2018-02-02 04:16:08 -0500 |
---|---|---|
committer | Matt A. Tobin <mattatobin@localhost.localdomain> | 2018-02-02 04:16:08 -0500 |
commit | 5f8de423f190bbb79a62f804151bc24824fa32d8 (patch) | |
tree | 10027f336435511475e392454359edea8e25895d /devtools/shared/css/generated/generate-properties-db.js | |
parent | 49ee0794b5d912db1f95dce6eb52d781dc210db5 (diff) | |
download | UXP-5f8de423f190bbb79a62f804151bc24824fa32d8.tar UXP-5f8de423f190bbb79a62f804151bc24824fa32d8.tar.gz UXP-5f8de423f190bbb79a62f804151bc24824fa32d8.tar.lz UXP-5f8de423f190bbb79a62f804151bc24824fa32d8.tar.xz UXP-5f8de423f190bbb79a62f804151bc24824fa32d8.zip |
Add m-esr52 at 52.6.0
Diffstat (limited to 'devtools/shared/css/generated/generate-properties-db.js')
-rw-r--r-- | devtools/shared/css/generated/generate-properties-db.js | 55 |
1 files changed, 55 insertions, 0 deletions
diff --git a/devtools/shared/css/generated/generate-properties-db.js b/devtools/shared/css/generated/generate-properties-db.js new file mode 100644 index 000000000..ad8dfb0ab --- /dev/null +++ b/devtools/shared/css/generated/generate-properties-db.js @@ -0,0 +1,55 @@ +/* This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ +"use strict"; + +/* + * This is an xpcshell script that runs to generate a static list of CSS properties + * as known by the platform. It is run from ./mach_commands.py by running + * `mach devtools-css-db`. + */ +var {require} = Components.utils.import("resource://devtools/shared/Loader.jsm", {}); +var {generateCssProperties} = require("devtools/server/actors/css-properties"); + +// xpcshell can output extra information, so place some delimiter text between +// the output of the css properties database. +dump("DEVTOOLS_CSS_DB_DELIMITER"); + +// Output JSON +dump(JSON.stringify({ + cssProperties: cssProperties(), + pseudoElements: pseudoElements() +})); + +dump("DEVTOOLS_CSS_DB_DELIMITER"); + +/* + * A list of CSS Properties and their various characteristics. This is used on the + * client-side when the CssPropertiesActor is not found, or when the client and server + * are the same version. A single property takes the form: + * + * "animation": { + * "isInherited": false, + * "supports": [ 7, 9, 10 ] + * } + */ +function cssProperties() { + const properties = generateCssProperties(); + for (let key in properties) { + // Ignore OS-specific properties + if (key.indexOf("-moz-osx-") !== -1) { + properties[key] = undefined; + } + } + return properties; +} + +/** + * The list of all CSS Pseudo Elements. + */ +function pseudoElements() { + const {classes: Cc, interfaces: Ci} = Components; + const domUtils = Cc["@mozilla.org/inspector/dom-utils;1"] + .getService(Ci.inIDOMUtils); + return domUtils.getCSSPseudoElementNames(); +} |