1
0
Ver Fonte

Merge branch 'master' into 0.13-prereleases

Herbert Vojčík há 10 anos atrás
pai
commit
358be22106
3 ficheiros alterados com 35 adições e 2 exclusões
  1. 15 0
      API-CHANGES.txt
  2. 18 0
      external/amber-dev/lib/config.js
  3. 2 2
      external/amber-dev/package.json

+ 15 - 0
API-CHANGES.txt

@@ -1,8 +1,23 @@
 0.13.0:
 
+* String >> asSelector is now String >> asJavaScriptMethodName
+* String >> asJavaScriptSelector is now String >> asJavaScriptPropertyName
+* smalltalk.selector is now smalltalk.st2js
+* smalltalk.convertSelector is now smalltalk.js2st
+* Collection >> ifEmpty:ifNotEmpty: family passes self to ifNotEmpty: block
+
++ smalltalk.
+  + accessJavaScript
 + Object >>
   + postMessageTo:
   + postMessageTo:origin:
++ Class >>
+  + heliosClass
+
+- ProtoObject class >>
+  - heliosClass
+- Object class >>
+  - heliosClass
 
 
 0.12.6:

+ 18 - 0
external/amber-dev/lib/config.js

@@ -12,8 +12,26 @@ exports.writeConfig = function (searchDir, fileForConfig, callback) {
     fileForConfig = fileForConfig || 'config.js';
     callback = callback || function (err) { if (err) throw err; };
 
+    function tryToFlattenPathsMapping(mapping) {
+        if (Array.isArray(mapping)) {
+            for (var i = 0; i < mapping.length; ++i) {
+                var element = mapping[i];
+                if (element.match(/(^|:)\/\//)) break;
+                try {
+                    var stat = fs.statSync(path.join(searchDir, element + ".js"));
+                    if (stat.isDirectory()) break;
+                    if (stat.isFile()) return element;
+                } catch (e) {}
+            }
+        }
+        return mapping;
+    }
+
     configBuilder.produceConfigObject(searchDir, function (err, result) {
         if (err) return callback(err);
+        for (var p in result.paths) {
+            result.paths[p] = tryToFlattenPathsMapping(result.paths[p]);
+        }
         var text = "/* DO NOT EDIT! This file is generated. */\n" +
             "\n" +
             "var require;\n" +

+ 2 - 2
external/amber-dev/package.json

@@ -1,6 +1,6 @@
 {
   "name": "amber-dev",
-  "version": "0.1.6",
+  "version": "0.2.0",
   "description": "Development goodies for Amber Smalltalk",
   "scripts": {
     "test": "echo \"Error: no test specified\" && exit 1"
@@ -12,7 +12,7 @@
   "author": "",
   "license": "MIT",
   "bugs": {
-    "url": "https://github.com/amber-smalltalk/amber/issues?labels=devkit"
+    "url": "https://github.com/amber-smalltalk/amber/issues?labels=in+devkit"
   },
   "dependencies": {
     "amdefine": "0.0.8",