pc__source_map
v0.0.1
Published
This is plugin for nmp-package "Post-Compression". He is contains methods for working with source maps.
Downloads
3
Maintainers
Readme
Work with source map
This is plugin for nmp-package "Post-Compression".
He is contains methods for working with source maps.
Each instance of the class has the following API:
- remove(mapWithGroupsA, mapWithGroupsB) - if the property exist in "mapWithGroupsB" to remove it in "mapWithGroupsA".
- combine(mapWithGroupsA) - to combine the properties of all groups.
- minus(mapA, mapB) - if the property contains in "mapB" it must be removed from "mapA".
- plus(mapA, mapB) - add all the properties from "mapB" in "mapA". To summarizes the value of properties.
- copy(mapA, mapB) - add all the properties from "mapB" in "mapA". When the coincidence of the names of the properties, takes the value of the latter.
- clear(mapWithGroupsA, config, isNeedShowConsole) - if the property contains certain characters it must be removed.
- get(fileName) - load "source map" from the file. Expects one argument: the name of the file.
- set(fileName, mapWithGroupsA) - sorts, formats and saves in the file "source map". Expects two arguments: the name of the file and unique names.
- forEachValue(mapWithGroupsA, callback) - iterates through the elements.
- forEachCommon(full, part, callback) - iterates through only common the elements.
The first example source map (map with groups):
{
"class_in_css": {
"button_green": 5,
"button_black": 2,
"button_blue": 3,
"button_red": 1
}
}
The second example source map (map without groups):
{
"button_green": 5,
"button_black": 2,
"button_blue": 3,
"button_red": 1
}
An example of using:
var map = require("pc__source_map");
var mapA = {
propertyB: 2,
propertyC: 3
},
mapB = {
propertyD: 1,
propertyC: 2
}
map.minus(mapA, mapB);
map.plus(mapA, mapB);
The result of executing "minus":
mapA = {
propertyB: 2
}
mapB = {
propertyD: 1,
propertyC: 2
}
The result of executing "plus":
mapA = {
propertyB: 2
propertyD: 1,
propertyC: 5
}
mapB = {
propertyD: 1,
propertyC: 2
}
Detailed description of the API
Clear
Clears the "sourceMap" from according to the list of rules. This need for automation of drawing up the list of ignored values.
An example of "sourceMap" before:
{
"groupNameA": {
"valueA": 12,
"valueB__some_postfix": 64
}
}
An example of "sourceMap" after:
{
"groupNameA": {
"valueA": 12
}
}
Set / Get
Clears the "sourceMap" from according to the list of rules. This need for automation of drawing up the list of ignored values.
An example of "sourceMap" before:
{
"groupNameA": {
"valueA": 12,
"valueB__some_postfix": 64
}
}
An example of using:
var map = require("./pc__source_map");
map.set("./pc__source_map.json", uniqueNames); // save
uniqueNames = map.get("./pc__source_map.json"); // load