cavalion-blocks
Advanced tools
Comparing version 0.9.11 to 0.9.12
@@ -0,1 +1,7 @@ | ||
### 2019-12-02 - 0.9.12 | ||
- (FINALLY) Implemented relative resources via require (so cool) | ||
> ![image](https://user-images.githubusercontent.com/686773/70025078-95f39100-1561-11ea-9368-09daa0442916.png?2x) | ||
### 2019-11-29 - 0.9.11 | ||
@@ -2,0 +8,0 @@ - Introducing new classes |
{ | ||
"name": "cavalion-blocks", | ||
"version": "0.9.11", | ||
"version": "0.9.12", | ||
"description": "`blocks-dot-js` `[].js`", | ||
@@ -5,0 +5,0 @@ "main": "README.js", |
@@ -88,2 +88,12 @@ define(function(require) { | ||
} | ||
function normalize(uri, module) { | ||
if(module.includes("!")) { | ||
module = module.split("!"); | ||
module[1] = js.normalize(uri, module[1]); | ||
module = module.join("!"); | ||
} else { | ||
module = js.normalize(uri, module); | ||
} | ||
return module; | ||
} | ||
@@ -99,6 +109,24 @@ return (Factory = Factory(require, { | ||
constructor: function(parentRequire, uri, sourceUri, setIsRoot) { | ||
// console.log("new Factory(): " + uri + " " + sourceUri); | ||
this._parentRequire = parentRequire; | ||
var args = js.copy_args(arguments); | ||
/*- TODO clean up */ | ||
function thisRequire(modules, success, error) { | ||
if(modules instanceof Array) { | ||
modules = modules.map(module => normalize(sourceUri.split("!").pop(), module)); | ||
} else { | ||
modules = normalize(sourceUri.split("!").pop(), modules); | ||
} | ||
// console.log(">>>", modules); | ||
return parentRequire(modules, success, error); | ||
} | ||
for(var k in parentRequire) { | ||
thisRequire[k] = parentRequire[k]; | ||
} | ||
this._parentRequire = thisRequire; | ||
this._uri = uri; | ||
sourceUri && (this._sourceUri = sourceUri); | ||
arguments.length === 4 && (this._setIsRoot = setIsRoot); | ||
@@ -121,2 +149,3 @@ }, | ||
load: function(source, success, failure) { | ||
var me = this, uri = this._sourceUri.split("!").pop(); | ||
if(source && source.charAt && source.charAt(0) === "\"" && | ||
@@ -134,11 +163,7 @@ source.indexOf("\"use strict\";") !== 0) { | ||
return dep !== "strict" && dep !== "nostrict"; | ||
}).map(function(dep) { | ||
return normalize(uri, dep); | ||
}); | ||
var path = js.normalize(this._uri, "."); | ||
deps = deps.map(function(dep) { | ||
return dep.indexOf("./") === 0 ? path + dep.substring(1) : dep; | ||
}); | ||
/*- require all dependecies */ | ||
var me = this; | ||
return this._parentRequire(deps, function() { | ||
@@ -145,0 +170,0 @@ me.doLoad(source, success, failure); |
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
61835
1551