diff --git a/cmds/cmds.ts b/cmds/cmds.ts
index a39d285a..b999bf60 100644
--- a/cmds/cmds.ts
+++ b/cmds/cmds.ts
@@ -1,4 +1,3 @@
-///
///
import * as fs from 'fs';
diff --git a/cmds/pxtrequire.ts b/cmds/pxtrequire.ts
index 0eabce91..713b72c1 100644
--- a/cmds/pxtrequire.ts
+++ b/cmds/pxtrequire.ts
@@ -1,4 +1,3 @@
-///
///
import * as path from "path";
diff --git a/cmds/tsconfig.json b/cmds/tsconfig.json
index 7d57cc95..4ebfccad 100644
--- a/cmds/tsconfig.json
+++ b/cmds/tsconfig.json
@@ -8,6 +8,7 @@
"module": "commonjs",
"rootDir": ".",
"newLine": "LF",
- "sourceMap": false
+ "sourceMap": false,
+ "types": ["node"]
}
}
diff --git a/libs/base/_locales/base-jsdoc-strings.json b/libs/base/_locales/base-jsdoc-strings.json
index 57ed1703..3d209b44 100644
--- a/libs/base/_locales/base-jsdoc-strings.json
+++ b/libs/base/_locales/base-jsdoc-strings.json
@@ -92,7 +92,7 @@
"Math.pow|param|x": "The base value of the expression.",
"Math.pow|param|y": "The exponent value of the expression.",
"Math.random": "Returns a pseudorandom number between 0 and 1.",
- "Math.randomRange": "Returns a pseudorandom number between min and max included. \nIf both numbers are integral, the result is integral.",
+ "Math.randomRange": "Returns a pseudorandom number between min and max included.\nIf both numbers are integral, the result is integral.",
"Math.randomRange|param|max": "the upper inclusive bound, eg: 10",
"Math.randomRange|param|min": "the lower inclusive bound, eg: 0",
"Math.round": "Returns a supplied numeric expression rounded to the nearest number.",
@@ -142,15 +142,10 @@
"loops.forever": "Repeats the code forever in the background. On each iteration, allows other codes to run.",
"loops.pause": "Pause for the specified time in milliseconds",
"loops.pause|param|ms": "how long to pause for, eg: 100, 200, 500, 1000, 2000",
- "loops.timePicker": "Get the time field editor",
- "loops.timePicker|param|ms": "time duration in milliseconds, eg: 500, 1000",
- "loops.waitUntil": "Busy wait for a condition to be true",
- "loops.waitUntil|param|condition": "condition to test for",
- "loops.waitUntil|param|timeOut": "if positive, maximum duration to wait for in milliseconds",
- "loops.when": "Runs code when the condition becomes true",
- "loops.when|param|condition": "condition to test",
- "loops.when|param|handler": "code to run",
"parseInt": "Convert a string to an integer.",
+ "pauseUntil": "Busy wait for a condition to be true",
+ "pauseUntil|param|condition": "condition to test for",
+ "pauseUntil|param|timeOut": "if positive, maximum duration to wait for in milliseconds",
"serial": "Reading and writing data over a serial connection.",
"serial.writeBuffer": "Send a buffer across the serial connection.",
"serial.writeLine": "Write a line of text to the serial port.",
diff --git a/libs/base/_locales/base-strings.json b/libs/base/_locales/base-strings.json
index 6df21f59..347db075 100644
--- a/libs/base/_locales/base-strings.json
+++ b/libs/base/_locales/base-strings.json
@@ -31,7 +31,6 @@
"control|block": "control",
"loops.forever|block": "forever",
"loops.pause|block": "pause %pause=timePicker|ms",
- "loops.timePicker|block": "%ms",
"loops|block": "loops",
"parseInt|block": "parse to integer %text",
"serial.writeBuffer|block": "serial|write buffer %buffer",
diff --git a/libs/base/pxt.json b/libs/base/pxt.json
index d947da11..98322f56 100644
--- a/libs/base/pxt.json
+++ b/libs/base/pxt.json
@@ -17,8 +17,7 @@
"control.cpp",
"control.ts",
"serial.cpp",
- "serial.ts",
- "loops.ts"
+ "serial.ts"
],
"testFiles": [
"test.ts"
diff --git a/libs/ev3/ns.ts b/libs/ev3/ns.ts
index 13ca4520..839da544 100644
--- a/libs/ev3/ns.ts
+++ b/libs/ev3/ns.ts
@@ -1,19 +1,19 @@
-//% color="#00A5C8" weight=100
+//% color="#68C3E2" weight=100
//% groups='["Light", "Buttons", "Screen"]'
namespace brick {
}
-//% color="#D42878" weight=95
+//% color="#C8509B" weight=95
namespace sensors {
}
-//% color="#8AC044" weight=90 icon="\uf185"
+//% color="#A5CA18" weight=90 icon="\uf185"
namespace motors {
}
-//% color="#DF5014" weight=80
+//% color="#D67923" weight=80
namespace music {
}
@@ -33,12 +33,12 @@ namespace serial {
}
-//% color="#0F841C"
+//% color="#58AB41"
namespace loops {
}
-//% color="#4c97ff"
+//% color="#1E5AA8"
namespace light {
}
\ No newline at end of file
diff --git a/package.json b/package.json
index 2d21827e..2ba1ba8a 100644
--- a/package.json
+++ b/package.json
@@ -32,15 +32,18 @@
"main": "built/pxtrequire.js",
"typings": "built/pxtrequire.d.ts",
"devDependencies": {
- "typescript": "^1.8.7",
+ "typescript": "2.6.1",
"less": "^2.6.0",
"rtlcss": "^2.1.2",
"autoprefixer": "^6.7.6",
- "semantic-ui-less": "^2.2.4"
+ "semantic-ui-less": "^2.2.4",
+ "@types/bluebird": "2.0.33",
+ "@types/jquery": "3.2.16",
+ "@types/node": "8.0.53"
},
"dependencies": {
- "pxt-common-packages": "0.14.5",
- "pxt-core": "2.3.37"
+ "pxt-common-packages": "0.14.12",
+ "pxt-core": "3.0.1"
},
"scripts": {
"test": "node node_modules/pxt-core/built/pxt.js travis"
diff --git a/pxtarget.json b/pxtarget.json
index 31111b63..654f55d5 100644
--- a/pxtarget.json
+++ b/pxtarget.json
@@ -63,7 +63,10 @@
"listsBlocks": true,
"functionBlocks": true,
"onStartNamespace": "loops",
- "onStartColor": "#0F841C"
+ "onStartColor": "#0F841C",
+ "pauseUntilBlock": {
+ "category": "loops"
+ }
},
"compileService": {
"buildEngine": "dockermake",
@@ -122,12 +125,12 @@
"blocklyOptions": {
},
"blockColors": {
- "loops": "#0F841C",
- "logic": "#3979B9",
- "math": "#8A83BA",
- "variables": "#D4000D",
+ "loops": "#58AB41",
+ "logic": "#1E5AA8",
+ "math": "#9DC3F7",
+ "variables": "#B40000",
"text": "#F0890A",
- "advanced": "#7A8284",
+ "advanced": "#969696",
"functions": "#064597",
"arrays": "#890058"
},
diff --git a/sim/instructions.ts b/sim/instructions.ts
index e3fb8a76..b0f872a0 100644
--- a/sim/instructions.ts
+++ b/sim/instructions.ts
@@ -1,4 +1,3 @@
-///
///
///
diff --git a/sim/tsconfig.json b/sim/tsconfig.json
index 007366f2..98cd3cb1 100644
--- a/sim/tsconfig.json
+++ b/sim/tsconfig.json
@@ -7,6 +7,9 @@
"out": "../built/sim.js",
"rootDir": ".",
"newLine": "LF",
- "sourceMap": false
+ "sourceMap": false,
+ "lib": ["dom", "dom.iterable", "scripthost", "es6"],
+ "types": ["jquery", "bluebird"],
+ "typeRoots": ["../node_modules/@types"]
}
}
diff --git a/theme/blockly.less b/theme/blockly.less
index 1088b2ce..ca5fe0b7 100644
--- a/theme/blockly.less
+++ b/theme/blockly.less
@@ -7,18 +7,16 @@
/* Toolbox padding */
.blocklyToolboxDiv, .monacoToolboxDiv {
padding: 0.5rem;
- -webkit-box-shadow: inset 0px 0px 0px 2px rgba(255,255,255,0.31);
- -moz-box-shadow: inset 0px 0px 0px 2px rgba(255,255,255,0.31);
- box-shadow: inset 0px 0px 0px 2px rgba(255,255,255,0.31);
+ box-shadow: inset 0px 0px 0px 2px #D3A805;
border-bottom-left-radius: 3px;
border-bottom-right-radius: 3px;
}
div.blocklyTreeRow {
border-radius: 0px;
- -webkit-box-shadow: inset 0px 0px 0px 3px rgba(0,0,0,0.1);
- -moz-box-shadow: inset 0px 0px 0px 3px rgba(0,0,0,0.1);
- box-shadow: inset 0px 0px 0px 3px rgba(0,0,0,0.1);
+ -webkit-box-shadow: inset 0px 0px 0px 3px rgba(0,0,0,0.2);
+ -moz-box-shadow: inset 0px 0px 0px 3px rgba(0,0,0,0.2);
+ box-shadow: inset 0px 0px 0px 3px rgba(0,0,0,0.2);
}
/* Remove shadow around blockly blocks */
diff --git a/theme/site/globals/site.variables b/theme/site/globals/site.variables
index a8609a69..9b11b38d 100644
--- a/theme/site/globals/site.variables
+++ b/theme/site/globals/site.variables
@@ -139,8 +139,8 @@
Editor
--------------------*/
-@blocklyToolboxColor: #FED30D;
-@trashIconColor: @primaryColor;
+@blocklyToolboxColor: #FAC80A;
+@trashIconColor: white;
/*-------------------