MCPcopy Create free account
hub / github.com/Moddable-OpenSource/moddable / process

Method process

tools/mcmanifest.js:2059–2113  ·  view source on GitHub ↗
(property)

Source from the content-addressed store, hash-verified

2057 noFilesMatch(target) {
2058 }
2059 process(property) {
2060 var tool = this.tool;
2061 var target = "~";
2062 if (target in property) {
2063 var sources = property[target];
2064 if (sources instanceof Array) {
2065 for (var source of sources)
2066 this.iterate(target, source, false, true);
2067 }
2068 else
2069 this.iterate(target, sources, false, true);
2070 }
2071 for (var target in property) {
2072 var sources = property[target];
2073 if (target == "~") {
2074 }
2075 else {
2076 target = tool.resolvePrefix(target);
2077 target = tool.resolveSlash(target);
2078 var slash = target.lastIndexOf(tool.slash);
2079 if (slash >= 0)
2080 this.appendTarget(target.slice(0, slash));
2081 var star = target.lastIndexOf("*");
2082 if (star >= 0) {
2083 var suffix = target.slice(star + 1);
2084 target = target.slice(0, star);
2085 if (sources instanceof Array) {
2086 for (var source of sources) {
2087 if (typeof source == "string")
2088 source = tool.resolveSlash(source);
2089 else
2090 source.source = tool.resolveSlash(source.source);
2091 this.iterate(target, source, true, suffix, false);
2092 }
2093 }
2094 else
2095 this.iterate(target, sources, true, suffix, false);
2096 }
2097 else {
2098 var suffix = ""
2099 var pipe = target.lastIndexOf("|");
2100 if (pipe >= 0) {
2101 var suffix = target.slice(pipe + 1);
2102 target = target.slice(0, pipe);
2103 }
2104 if (sources instanceof Array) {
2105 for (var source of sources)
2106 this.iterate(target, source, true, suffix, true);
2107 }
2108 else
2109 this.iterate(target, sources, true, suffix, true);
2110 }
2111 }
2112 }
2113 }
2114};
2115
2116class DataRule extends Rule {

Callers 1

runMethod · 0.45

Calls 5

iterateMethod · 0.95
appendTargetMethod · 0.95
sliceMethod · 0.65
resolvePrefixMethod · 0.45
resolveSlashMethod · 0.45

Tested by

no test coverage detected