Merge branch 'espruino:master' into master

master
Peer David 2021-11-24 17:52:48 +01:00 committed by GitHub
commit 59692c8ca1
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
6 changed files with 179 additions and 67 deletions

142
apps.json
View File

@ -51,6 +51,7 @@
{ {
"id": "android", "id": "android",
"name": "Android Integration", "name": "Android Integration",
"shortName": "Android",
"version": "0.03", "version": "0.03",
"description": "(BETA) App to display notifications from Gadgetbridge on Android. This will eventually replace the Gadgetbridge widget.", "description": "(BETA) App to display notifications from Gadgetbridge on Android. This will eventually replace the Gadgetbridge widget.",
"icon": "app.png", "icon": "app.png",
@ -137,7 +138,7 @@
"icon": "app.png", "icon": "app.png",
"tags": "tool,system", "tags": "tool,system",
"supports": ["BANGLEJS","BANGLEJS2"], "supports": ["BANGLEJS","BANGLEJS2"],
"screenshots": [{"url":"bangle1-about-screenshot.png"}], "screenshots": [{"url":"bangle1-about-screenshot.png"}],
"allow_emulator": true, "allow_emulator": true,
"storage": [ "storage": [
{"name":"about.app.js","url":"app-bangle1.js","supports": ["BANGLEJS"]}, {"name":"about.app.js","url":"app-bangle1.js","supports": ["BANGLEJS"]},
@ -213,7 +214,7 @@
"id": "welcome", "id": "welcome",
"name": "Welcome", "name": "Welcome",
"shortName": "Welcome", "shortName": "Welcome",
"version": "0.13", "version": "0.14",
"description": "Appears at first boot and explains how to use Bangle.js", "description": "Appears at first boot and explains how to use Bangle.js",
"icon": "app.png", "icon": "app.png",
"screenshots": [{"url":"screenshot_welcome.png"}], "screenshots": [{"url":"screenshot_welcome.png"}],
@ -239,7 +240,7 @@
"tags": "start,welcome", "tags": "start,welcome",
"supports": ["BANGLEJS"], "supports": ["BANGLEJS"],
"custom": "custom.html", "custom": "custom.html",
"screenshots": [{"url":"bangle1-customized-welcome-screenshot.png"}], "screenshots": [{"url":"bangle1-customized-welcome-screenshot.png"}],
"storage": [ "storage": [
{"name":"mywelcome.boot.js","url":"boot.js"}, {"name":"mywelcome.boot.js","url":"boot.js"},
{"name":"mywelcome.app.js","url":"app.js"}, {"name":"mywelcome.app.js","url":"app.js"},
@ -291,7 +292,7 @@
"icon": "app.png", "icon": "app.png",
"tags": "", "tags": "",
"supports": ["BANGLEJS"], "supports": ["BANGLEJS"],
"screenshots": [{"url":"bangle1-moon-phase-screenshot.png"}], "screenshots": [{"url":"bangle1-moon-phase-screenshot.png"}],
"allow_emulator": true, "allow_emulator": true,
"storage": [ "storage": [
{"name":"moonphase.app.js","url":"app.js"}, {"name":"moonphase.app.js","url":"app.js"},
@ -422,7 +423,7 @@
"supports": ["BANGLEJS"], "supports": ["BANGLEJS"],
"readme": "README.md", "readme": "README.md",
"allow_emulator": true, "allow_emulator": true,
"screenshots": [{"url":"bangle1-sweep-clock-screenshot.png"}], "screenshots": [{"url":"bangle1-sweep-clock-screenshot.png"}],
"storage": [ "storage": [
{"name":"sweepclock.app.js","url":"sweepclock.js"}, {"name":"sweepclock.app.js","url":"sweepclock.js"},
{"name":"sweepclock.img","url":"sweepclock-icon.js","evaluate":true} {"name":"sweepclock.img","url":"sweepclock-icon.js","evaluate":true}
@ -473,7 +474,7 @@
"type": "clock", "type": "clock",
"tags": "clock", "tags": "clock",
"supports": ["BANGLEJS"], "supports": ["BANGLEJS"],
"screenshots": [{"url":"bangle1-impercise-word-clock-screenshot.png"}], "screenshots": [{"url":"bangle1-impercise-word-clock-screenshot.png"}],
"allow_emulator": true, "allow_emulator": true,
"storage": [ "storage": [
{"name":"impwclock.app.js","url":"clock-impword.js"}, {"name":"impwclock.app.js","url":"clock-impword.js"},
@ -782,7 +783,7 @@
"tags": "battery", "tags": "battery",
"supports": ["BANGLEJS", "BANGLEJS2"], "supports": ["BANGLEJS", "BANGLEJS2"],
"allow_emulator": true, "allow_emulator": true,
"screenshots": [{"url":"bangle2-charge-animation-screenshot.png"},{"url":"bangle-charge-animation-screenshot.png"}], "screenshots": [{"url":"bangle2-charge-animation-screenshot.png"},{"url":"bangle-charge-animation-screenshot.png"}],
"storage": [ "storage": [
{"name":"chargeanim.app.js","url":"app.js"}, {"name":"chargeanim.app.js","url":"app.js"},
{"name":"chargeanim.boot.js","url":"boot.js"}, {"name":"chargeanim.boot.js","url":"boot.js"},
@ -988,7 +989,7 @@
"readme": "README.md", "readme": "README.md",
"interface": "interface.html", "interface": "interface.html",
"allow_emulator": true, "allow_emulator": true,
"screenshots": [{"url":"bangle1-stopwatch-screenshot.png"}], "screenshots": [{"url":"bangle1-stopwatch-screenshot.png"}],
"storage": [ "storage": [
{"name":"swatch.app.js","url":"stopwatch.js"}, {"name":"swatch.app.js","url":"stopwatch.js"},
{"name":"swatch.img","url":"stopwatch-icon.js","evaluate":true} {"name":"swatch.img","url":"stopwatch-icon.js","evaluate":true}
@ -1190,7 +1191,7 @@
"tags": "clock", "tags": "clock",
"supports": ["BANGLEJS"], "supports": ["BANGLEJS"],
"allow_emulator": true, "allow_emulator": true,
"screenshots": [{"url":"bangle1-vibrate-clock-screenshot.png"}], "screenshots": [{"url":"bangle1-vibrate-clock-screenshot.png"}],
"storage": [ "storage": [
{"name":"vibrclock.app.js","url":"app.js"}, {"name":"vibrclock.app.js","url":"app.js"},
{"name":"vibrclock.img","url":"app-icon.js","evaluate":true} {"name":"vibrclock.img","url":"app-icon.js","evaluate":true}
@ -1206,7 +1207,7 @@
"tags": "clock", "tags": "clock",
"supports": ["BANGLEJS","BANGLEJS2"], "supports": ["BANGLEJS","BANGLEJS2"],
"allow_emulator": true, "allow_emulator": true,
"screenshots": [{"url":"bangle2-simple-v-clock-screenshot.png"}], "screenshots": [{"url":"bangle2-simple-v-clock-screenshot.png"}],
"storage": [ "storage": [
{"name":"svclock.app.js","url":"vclock-simple.js"}, {"name":"svclock.app.js","url":"vclock-simple.js"},
{"name":"svclock.img","url":"vclock-simple-icon.js","evaluate":true} {"name":"svclock.img","url":"vclock-simple-icon.js","evaluate":true}
@ -1222,7 +1223,7 @@
"tags": "clock", "tags": "clock",
"supports": ["BANGLEJS","BANGLEJS2"], "supports": ["BANGLEJS","BANGLEJS2"],
"allow_emulator": true, "allow_emulator": true,
"screenshots": [{"url":"bangle2-dev-clock-screenshot.png"},{"url":"bangle1-dev-clock-screenshot.png"}], "screenshots": [{"url":"bangle2-dev-clock-screenshot.png"},{"url":"bangle1-dev-clock-screenshot.png"}],
"storage": [ "storage": [
{"name":"dclock.app.js","url":"clock-dev.js"}, {"name":"dclock.app.js","url":"clock-dev.js"},
{"name":"dclock.img","url":"clock-dev-icon.js","evaluate":true} {"name":"dclock.img","url":"clock-dev-icon.js","evaluate":true}
@ -1254,7 +1255,7 @@
"tags": "party,parrot,lol", "tags": "party,parrot,lol",
"supports": ["BANGLEJS"], "supports": ["BANGLEJS"],
"allow_emulator": true, "allow_emulator": true,
"screenshots": [{"url":"bangle1-party-parrot-screenshot.png"}], "screenshots": [{"url":"bangle1-party-parrot-screenshot.png"}],
"storage": [ "storage": [
{"name":"pparrot.app.js","url":"party-parrot.js"}, {"name":"pparrot.app.js","url":"party-parrot.js"},
{"name":"pparrot.img","url":"party-parrot-icon.js","evaluate":true} {"name":"pparrot.img","url":"party-parrot-icon.js","evaluate":true}
@ -1270,7 +1271,7 @@
"tags": "rings,hypnosis,psychadelic", "tags": "rings,hypnosis,psychadelic",
"supports": ["BANGLEJS"], "supports": ["BANGLEJS"],
"allow_emulator": true, "allow_emulator": true,
"screenshots": [{"url":"bangle1-hypno-rings-screenshot.png"}], "screenshots": [{"url":"bangle1-hypno-rings-screenshot.png"}],
"storage": [ "storage": [
{"name":"hrings.app.js","url":"hypno-rings.js"}, {"name":"hrings.app.js","url":"hypno-rings.js"},
{"name":"hrings.img","url":"hypno-rings-icon.js","evaluate":true} {"name":"hrings.img","url":"hypno-rings-icon.js","evaluate":true}
@ -1338,7 +1339,7 @@
"icon": "show-color.png", "icon": "show-color.png",
"type": "app", "type": "app",
"tags": "tool", "tags": "tool",
"screenshots": [{"url":"bangle1-view-color-screenshot.png"}], "screenshots": [{"url":"bangle1-view-color-screenshot.png"}],
"supports": ["BANGLEJS"], "supports": ["BANGLEJS"],
"allow_emulator": true, "allow_emulator": true,
"storage": [ "storage": [
@ -1354,7 +1355,7 @@
"icon": "clock-mixed.png", "icon": "clock-mixed.png",
"type": "clock", "type": "clock",
"tags": "clock", "tags": "clock",
"screenshots": [{"url":"bangle1-mixed-clock-screenshot.png"}], "screenshots": [{"url":"bangle1-mixed-clock-screenshot.png"}],
"supports": ["BANGLEJS"], "supports": ["BANGLEJS"],
"allow_emulator": true, "allow_emulator": true,
"storage": [ "storage": [
@ -1446,7 +1447,7 @@
"tags": "pomodoro,cooking,tools", "tags": "pomodoro,cooking,tools",
"supports": ["BANGLEJS", "BANGLEJS2"], "supports": ["BANGLEJS", "BANGLEJS2"],
"allow_emulator": true, "allow_emulator": true,
"screenshots": [{"url":"bangle2-pomodoro-screenshot.png"}], "screenshots": [{"url":"bangle2-pomodoro-screenshot.png"}],
"storage": [ "storage": [
{"name":"pomodo.app.js","url":"pomodoro.js"}, {"name":"pomodo.app.js","url":"pomodoro.js"},
{"name":"pomodo.img","url":"pomodoro-icon.js","evaluate":true} {"name":"pomodo.img","url":"pomodoro-icon.js","evaluate":true}
@ -1463,7 +1464,7 @@
"tags": "clock", "tags": "clock",
"supports": ["BANGLEJS","BANGLEJS2"], "supports": ["BANGLEJS","BANGLEJS2"],
"allow_emulator": true, "allow_emulator": true,
"screenshots": [{"url":"bangle2-large-digit-blob-clock-screenshot.png"},{"url":"bangle1-large-digit-blob-clock-screenshot.png"}], "screenshots": [{"url":"bangle2-large-digit-blob-clock-screenshot.png"},{"url":"bangle1-large-digit-blob-clock-screenshot.png"}],
"storage": [ "storage": [
{"name":"blobclk.app.js","url":"clock-blob.js"}, {"name":"blobclk.app.js","url":"clock-blob.js"},
{"name":"blobclk.img","url":"clock-blob-icon.js","evaluate":true} {"name":"blobclk.img","url":"clock-blob-icon.js","evaluate":true}
@ -1538,7 +1539,7 @@
"type": "clock", "type": "clock",
"tags": "clock", "tags": "clock",
"supports": ["BANGLEJS"], "supports": ["BANGLEJS"],
"screenshots": [{"url":"bangle1-center-clock-screenshot.png"}], "screenshots": [{"url":"bangle1-center-clock-screenshot.png"}],
"allow_emulator": true, "allow_emulator": true,
"storage": [ "storage": [
{"name":"ctrclk.app.js","url":"app.js"}, {"name":"ctrclk.app.js","url":"app.js"},
@ -1553,7 +1554,7 @@
"icon": "app.png", "icon": "app.png",
"type": "app", "type": "app",
"tags": "", "tags": "",
"screenshots": [{"url":"bangle1-demo-loop-screenshot1.png"},{"url":"bangle1-demo-loop-screenshot2.png"},{"url":"bangle1-demo-loop-screenshot3.png"},{"url":"bangle1-demo-loop-screenshot4.png"}], "screenshots": [{"url":"bangle1-demo-loop-screenshot1.png"},{"url":"bangle1-demo-loop-screenshot2.png"},{"url":"bangle1-demo-loop-screenshot3.png"},{"url":"bangle1-demo-loop-screenshot4.png"}],
"supports": ["BANGLEJS"], "supports": ["BANGLEJS"],
"allow_emulator": true, "allow_emulator": true,
"storage": [ "storage": [
@ -1586,7 +1587,7 @@
"tags": "clock", "tags": "clock",
"supports": ["BANGLEJS"], "supports": ["BANGLEJS"],
"allow_emulator": true, "allow_emulator": true,
"screenshots": [{"url":"bangle1-pipboy-themed-clock-screenshot.png"}], "screenshots": [{"url":"bangle1-pipboy-themed-clock-screenshot.png"}],
"storage": [ "storage": [
{"name":"pipboy.app.js","url":"app.js"}, {"name":"pipboy.app.js","url":"app.js"},
{"name":"pipboy.img","url":"app-icon.js","evaluate":true} {"name":"pipboy.img","url":"app-icon.js","evaluate":true}
@ -1633,7 +1634,7 @@
"supports": ["BANGLEJS"], "supports": ["BANGLEJS"],
"readme": "README.md", "readme": "README.md",
"allow_emulator": true, "allow_emulator": true,
"screenshots": [{"url":"bangle1-workout-HRM-screenshot.png"}], "screenshots": [{"url":"bangle1-workout-HRM-screenshot.png"}],
"storage": [ "storage": [
{"name":"wohrm.app.js","url":"app.js"}, {"name":"wohrm.app.js","url":"app.js"},
{"name":"wohrm.img","url":"app-icon.js","evaluate":true} {"name":"wohrm.img","url":"app-icon.js","evaluate":true}
@ -1678,7 +1679,7 @@
"supports": ["BANGLEJS"], "supports": ["BANGLEJS"],
"readme": "README.md", "readme": "README.md",
"allow_emulator": false, "allow_emulator": false,
"screenshots": [{"url":"bangle1-mario-clock-screenshot.png"}], "screenshots": [{"url":"bangle1-mario-clock-screenshot.png"}],
"storage": [ "storage": [
{"name":"marioclock.app.js","url":"marioclock-app.js"}, {"name":"marioclock.app.js","url":"marioclock-app.js"},
{"name":"marioclock.img","url":"marioclock-icon.js","evaluate":true} {"name":"marioclock.img","url":"marioclock-icon.js","evaluate":true}
@ -1851,7 +1852,7 @@
"tags": "game,fun", "tags": "game,fun",
"supports": ["BANGLEJS"], "supports": ["BANGLEJS"],
"allow_emulator": true, "allow_emulator": true,
"screenshots": [{"url":"bangle1-rpg-dice-screenshot.png"}], "screenshots": [{"url":"bangle1-rpg-dice-screenshot.png"}],
"storage": [ "storage": [
{"name":"rpgdice.app.js","url":"app.js"}, {"name":"rpgdice.app.js","url":"app.js"},
{"name":"rpgdice.img","url":"app-icon.js","evaluate":true} {"name":"rpgdice.img","url":"app-icon.js","evaluate":true}
@ -1880,7 +1881,7 @@
"tags": "clock,minion", "tags": "clock,minion",
"supports": ["BANGLEJS"], "supports": ["BANGLEJS"],
"allow_emulator": true, "allow_emulator": true,
"screenshots": [{"url":"bangle1-minion-clock-screenshot.png"}], "screenshots": [{"url":"bangle1-minion-clock-screenshot.png"}],
"storage": [ "storage": [
{"name":"minionclk.app.js","url":"app.js"}, {"name":"minionclk.app.js","url":"app.js"},
{"name":"minionclk.img","url":"app-icon.js","evaluate":true} {"name":"minionclk.img","url":"app-icon.js","evaluate":true}
@ -1973,7 +1974,7 @@
"icon": "app.png", "icon": "app.png",
"tags": "stopwatch,chrono,timer,chronometer", "tags": "stopwatch,chrono,timer,chronometer",
"supports": ["BANGLEJS","BANGLEJS2"], "supports": ["BANGLEJS","BANGLEJS2"],
"screenshots": [{"url":"bangle1-dev-stopwatch-screenshot.png"}], "screenshots": [{"url":"bangle1-dev-stopwatch-screenshot.png"}],
"allow_emulator": true, "allow_emulator": true,
"storage": [ "storage": [
{"name":"devstopwatch.app.js","url":"app.js"}, {"name":"devstopwatch.app.js","url":"app.js"},
@ -2007,7 +2008,7 @@
"tags": "app,learn,visual", "tags": "app,learn,visual",
"supports": ["BANGLEJS"], "supports": ["BANGLEJS"],
"allow_emulator": true, "allow_emulator": true,
"screenshots": [{"url":"bangle1-NATO-alphabet-screenshot.png"},{"url":"bangle1-NATO-alphabet-screenshot2.png"}], "screenshots": [{"url":"bangle1-NATO-alphabet-screenshot.png"},{"url":"bangle1-NATO-alphabet-screenshot2.png"}],
"storage": [ "storage": [
{"name":"nato.app.js","url":"nato.js"}, {"name":"nato.app.js","url":"nato.js"},
{"name":"nato.img","url":"nato-icon.js","evaluate":true} {"name":"nato.img","url":"nato-icon.js","evaluate":true}
@ -2024,7 +2025,7 @@
"tags": "numerals,clock", "tags": "numerals,clock",
"supports": ["BANGLEJS"], "supports": ["BANGLEJS"],
"allow_emulator": true, "allow_emulator": true,
"screenshots": [{"url":"bangle1-numerals-screenshot.png"}], "screenshots": [{"url":"bangle1-numerals-screenshot.png"}],
"storage": [ "storage": [
{"name":"numerals.app.js","url":"numerals.app.js"}, {"name":"numerals.app.js","url":"numerals.app.js"},
{"name":"numerals.img","url":"numerals-icon.js","evaluate":true}, {"name":"numerals.img","url":"numerals-icon.js","evaluate":true},
@ -2158,7 +2159,7 @@
"tags": "tool", "tags": "tool",
"supports": ["BANGLEJS","BANGLEJS2"], "supports": ["BANGLEJS","BANGLEJS2"],
"allow_emulator": true, "allow_emulator": true,
"screenshots": [{"url":"bangle1-metronome-screenshot.png"}], "screenshots": [{"url":"bangle1-metronome-screenshot.png"}],
"storage": [ "storage": [
{"name":"metronome.app.js","url":"metronome.js"}, {"name":"metronome.app.js","url":"metronome.js"},
{"name":"metronome.img","url":"metronome-icon.js","evaluate":true}, {"name":"metronome.img","url":"metronome-icon.js","evaluate":true},
@ -2174,7 +2175,7 @@
"icon": "blackjack.png", "icon": "blackjack.png",
"tags": "game", "tags": "game",
"supports": ["BANGLEJS"], "supports": ["BANGLEJS"],
"screenshots": [{"url":"bangle1-black-jack-game-screenshot.png"}], "screenshots": [{"url":"bangle1-black-jack-game-screenshot.png"}],
"allow_emulator": true, "allow_emulator": true,
"storage": [ "storage": [
{"name":"blackjack.app.js","url":"blackjack.app.js"}, {"name":"blackjack.app.js","url":"blackjack.app.js"},
@ -2208,7 +2209,7 @@
"supports": ["BANGLEJS"], "supports": ["BANGLEJS"],
"readme": "README.md", "readme": "README.md",
"allow_emulator": true, "allow_emulator": true,
"screenshots": [{"url":"bangle1-SWL-clock-screenshot.png"}], "screenshots": [{"url":"bangle1-SWL-clock-screenshot.png"}],
"storage": [ "storage": [
{"name":"swlclk.app.js","url":"app.js"}, {"name":"swlclk.app.js","url":"app.js"},
{"name":"swlclk.img","url":"app-icon.js","evaluate":true} {"name":"swlclk.img","url":"app-icon.js","evaluate":true}
@ -2286,7 +2287,7 @@
"supports": ["BANGLEJS"], "supports": ["BANGLEJS"],
"readme": "README.md", "readme": "README.md",
"allow_emulator": true, "allow_emulator": true,
"screenshots": [{"url":"bangle1-pong-screenshot.png"}], "screenshots": [{"url":"bangle1-pong-screenshot.png"}],
"storage": [ "storage": [
{"name":"pong.app.js","url":"app.js"}, {"name":"pong.app.js","url":"app.js"},
{"name":"pong.img","url":"app-icon.js","evaluate":true} {"name":"pong.img","url":"app-icon.js","evaluate":true}
@ -2349,7 +2350,7 @@
"supports": ["BANGLEJS"], "supports": ["BANGLEJS"],
"readme": "README.md", "readme": "README.md",
"allow_emulator": true, "allow_emulator": true,
"screenshots": [{"url":"bangle1-large-clock-screenshot.png"}], "screenshots": [{"url":"bangle1-large-clock-screenshot.png"}],
"storage": [ "storage": [
{"name":"largeclock.app.js","url":"largeclock.js"}, {"name":"largeclock.app.js","url":"largeclock.js"},
{"name":"largeclock.img","url":"largeclock-icon.js","evaluate":true}, {"name":"largeclock.img","url":"largeclock-icon.js","evaluate":true},
@ -2401,7 +2402,7 @@
"supports": ["BANGLEJS"], "supports": ["BANGLEJS"],
"readme": "README.md", "readme": "README.md",
"allow_emulator": true, "allow_emulator": true,
"screenshots": [{"url":"bangle1-timer-screenshot.png"}], "screenshots": [{"url":"bangle1-timer-screenshot.png"}],
"storage": [ "storage": [
{"name":"simpletimer.app.js","url":"app.js"}, {"name":"simpletimer.app.js","url":"app.js"},
{"name":".tfnames","url":"gesture-tfnames.js","evaluate":true}, {"name":".tfnames","url":"gesture-tfnames.js","evaluate":true},
@ -2418,7 +2419,7 @@
"icon": "beebclock.png", "icon": "beebclock.png",
"type": "clock", "type": "clock",
"tags": "clock", "tags": "clock",
"screenshots": [{"url":"bangle1-beeb-clock-screenshot.png"}], "screenshots": [{"url":"bangle1-beeb-clock-screenshot.png"}],
"supports": ["BANGLEJS"], "supports": ["BANGLEJS"],
"allow_emulator": true, "allow_emulator": true,
"storage": [ "storage": [
@ -2452,7 +2453,7 @@
"tags": "tools,health", "tags": "tools,health",
"supports": ["BANGLEJS"], "supports": ["BANGLEJS"],
"readme": "README.md", "readme": "README.md",
"screenshots": [{"url":"bangle1-get-up-screenshot.png"}], "screenshots": [{"url":"bangle1-get-up-screenshot.png"}],
"allow_emulator": true, "allow_emulator": true,
"storage": [ "storage": [
{"name":"getup.app.js","url":"app.js"}, {"name":"getup.app.js","url":"app.js"},
@ -2531,7 +2532,7 @@
"version": "0.01", "version": "0.01",
"description": "La palla predice il futuro", "description": "La palla predice il futuro",
"icon": "app.png", "icon": "app.png",
"screenshots": [{"url":"bangle1-magic-8-ball-italiano-screenshot.png"}], "screenshots": [{"url":"bangle1-magic-8-ball-italiano-screenshot.png"}],
"tags": "game", "tags": "game",
"supports": ["BANGLEJS"], "supports": ["BANGLEJS"],
"allow_emulator": true, "allow_emulator": true,
@ -2645,7 +2646,7 @@
"tags": "clock", "tags": "clock",
"supports": ["BANGLEJS"], "supports": ["BANGLEJS"],
"allow_emulator": true, "allow_emulator": true,
"screenshots": [{"url":"bangle1-vertical-watch-face-screenshot.png"}], "screenshots": [{"url":"bangle1-vertical-watch-face-screenshot.png"}],
"storage": [ "storage": [
{"name":"verticalface.app.js","url":"app.js"}, {"name":"verticalface.app.js","url":"app.js"},
{"name":"verticalface.img","url":"app-icon.js","evaluate":true} {"name":"verticalface.img","url":"app-icon.js","evaluate":true}
@ -2673,7 +2674,7 @@
"icon": "life.png", "icon": "life.png",
"tags": "game", "tags": "game",
"supports": ["BANGLEJS"], "supports": ["BANGLEJS"],
"screenshots": [{"url":"bangle1-game-of-life-screenshot.png"}], "screenshots": [{"url":"bangle1-game-of-life-screenshot.png"}],
"allow_emulator": true, "allow_emulator": true,
"storage": [ "storage": [
{"name":"life.app.js","url":"life.min.js"}, {"name":"life.app.js","url":"life.min.js"},
@ -2721,7 +2722,7 @@
"type": "clock", "type": "clock",
"tags": "clock", "tags": "clock",
"supports": ["BANGLEJS"], "supports": ["BANGLEJS"],
"screenshots": [{"url":"bangle1-mixed-clock-2-screenshot.png"}], "screenshots": [{"url":"bangle1-mixed-clock-2-screenshot.png"}],
"allow_emulator": true, "allow_emulator": true,
"storage": [ "storage": [
{"name":"miclock2.app.js","url":"clock-mixed.js"}, {"name":"miclock2.app.js","url":"clock-mixed.js"},
@ -2857,7 +2858,7 @@
"supports": ["BANGLEJS"], "supports": ["BANGLEJS"],
"readme": "README.md", "readme": "README.md",
"allow_emulator": true, "allow_emulator": true,
"screenshots": [{"url":"bangle1-CPR-assist-screenshot.png"}], "screenshots": [{"url":"bangle1-CPR-assist-screenshot.png"}],
"storage": [ "storage": [
{"name":"cprassist.app.js","url":"cprassist.js"}, {"name":"cprassist.app.js","url":"cprassist.js"},
{"name":"cprassist.img","url":"cprassist-icon.js","evaluate":true}, {"name":"cprassist.img","url":"cprassist-icon.js","evaluate":true},
@ -2901,7 +2902,7 @@
"icon": "counter_icon.png", "icon": "counter_icon.png",
"tags": "tool", "tags": "tool",
"supports": ["BANGLEJS"], "supports": ["BANGLEJS"],
"screenshots": [{"url":"bangle1-counter-screenshot.png"}], "screenshots": [{"url":"bangle1-counter-screenshot.png"}],
"allow_emulator": true, "allow_emulator": true,
"storage": [ "storage": [
{"name":"counter.app.js","url":"counter.js"}, {"name":"counter.app.js","url":"counter.js"},
@ -3281,7 +3282,7 @@
"tags": "clock", "tags": "clock",
"supports": ["BANGLEJS"], "supports": ["BANGLEJS"],
"readme": "README.md", "readme": "README.md",
"screenshots": [{"url":"bangle1-lazy-clock-screenshot.png"}], "screenshots": [{"url":"bangle1-lazy-clock-screenshot.png"}],
"allow_emulator": true, "allow_emulator": true,
"storage": [ "storage": [
{"name":"lazyclock.app.js","url":"lazyclock-app.js"}, {"name":"lazyclock.app.js","url":"lazyclock-app.js"},
@ -3723,7 +3724,7 @@
"icon": "battleship-icon.png", "icon": "battleship-icon.png",
"tags": "game", "tags": "game",
"supports": ["BANGLEJS"], "supports": ["BANGLEJS"],
"screenshots": [{"url":"bangle1-battle-ship-screenshot.png"}], "screenshots": [{"url":"bangle1-battle-ship-screenshot.png"}],
"readme": "README.md", "readme": "README.md",
"allow_emulator": true, "allow_emulator": true,
"storage": [ "storage": [
@ -3944,7 +3945,7 @@
"icon": "hcclock-icon.png", "icon": "hcclock-icon.png",
"type": "clock", "type": "clock",
"tags": "clock", "tags": "clock",
"screenshots": [{"url":"bangle1-high-contrast-clock-screenshot.png"}], "screenshots": [{"url":"bangle1-high-contrast-clock-screenshot.png"}],
"supports": ["BANGLEJS"], "supports": ["BANGLEJS"],
"allow_emulator": true, "allow_emulator": true,
"storage": [ "storage": [
@ -4026,7 +4027,7 @@
"tags": "clock", "tags": "clock",
"supports": ["BANGLEJS"], "supports": ["BANGLEJS"],
"allow_emulator": true, "allow_emulator": true,
"screenshots": [{"url":"bangle1-vector-clock-screenshot.png"}], "screenshots": [{"url":"bangle1-vector-clock-screenshot.png"}],
"storage": [ "storage": [
{"name":"vectorclock.app.js","url":"app.js"}, {"name":"vectorclock.app.js","url":"app.js"},
{"name":"vectorclock.img","url":"app-icon.js","evaluate":true} {"name":"vectorclock.img","url":"app-icon.js","evaluate":true}
@ -4056,7 +4057,7 @@
"supports": ["BANGLEJS"], "supports": ["BANGLEJS"],
"readme": "README.md", "readme": "README.md",
"allow_emulator": true, "allow_emulator": true,
"screenshots": [{"url":"bangle1-choozi-screenshot1.png"},{"url":"bangle1-choozi-screenshot2.png"}], "screenshots": [{"url":"bangle1-choozi-screenshot1.png"},{"url":"bangle1-choozi-screenshot2.png"}],
"storage": [ "storage": [
{"name":"choozi.app.js","url":"app.js"}, {"name":"choozi.app.js","url":"app.js"},
{"name":"choozi.img","url":"app-icon.js","evaluate":true} {"name":"choozi.img","url":"app-icon.js","evaluate":true}
@ -4413,23 +4414,36 @@
], ],
"data": [{"name":"authentiwatch.json"}] "data": [{"name":"authentiwatch.json"}]
}, },
{ "id": "schoolCalendar", { "id": "schoolCalendar",
"name": "School Calendar", "name": "School Calendar",
"shortName":"SCalendar", "shortName":"SCalendar",
"icon": "CalenderLogo.png", "icon": "CalenderLogo.png",
"version": "0.01", "version": "0.01",
"description": "A simple calendar that you can see your upcoming events that you create in the customizer. Keep in note that your events reapeat weekly.(Beta)", "description": "A simple calendar that you can see your upcoming events that you create in the customizer. Keep in note that your events reapeat weekly.(Beta)",
"tags": "tool", "tags": "tool",
"readme":"README.md", "readme":"README.md",
"custom":"custom.html", "custom":"custom.html",
"supports": ["BANGLEJS"], "supports": ["BANGLEJS"],
"screenshots": [{"url":"screenshot_basic.png"},{"url":"screenshot_info.png"}], "screenshots": [{"url":"screenshot_basic.png"},{"url":"screenshot_info.png"}],
"storage": [ "storage": [
{"name":"schoolCalendar.app.js"}, {"name":"schoolCalendar.app.js"},
{"name":"schoolCalendar.img","url":"app-icon.js","evaluate":true} {"name":"schoolCalendar.img","url":"app-icon.js","evaluate":true}
], ],
"data": [ "data": [
{"name":"app.json"} {"name":"app.json"}
] ]
},
{ "id": "timecal",
"name": "TimeCal",
"shortName":"TimeCal",
"icon": "icon.png",
"version":"0.01",
"description": "TimeCal shows the Time along with a 3 week calendar",
"tags": "clock",
"type": "clock",
"supports":["BANGLEJS2"],
"storage": [
{"name":"timecal.app.js","url":"timecal.app.js"}
]
} }
] ]

BIN
apps/timecal/icon.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.7 KiB

View File

@ -0,0 +1,94 @@
var center = g.getWidth() / 2;
var lastDayDraw;
var lastTimeDraw;
var fontColor = g.theme.fg;
var accentColor = "#FF0000";
var locale = require("locale");
function loop() {
var d = new Date();
var cleared = false;
if(lastDayDraw != d.getDate()){
lastDayDraw = d.getDate();
drawDate(d);
drawCal(d);
}
if(lastTimeDraw != d.getMinutes() || cleared){
lastTimeDraw = d.getMinutes();
drawTime(d);
}
}
function drawTime(d){
var hour = ("0" + d.getHours()).slice(-2);
var min = ("0" + d.getMinutes()).slice(-2);
g.setFontAlign(0,-1,0);
g.setFont("Vector",40);
g.setColor(fontColor);
g.clearRect(0,50,g.getWidth(),90);
g.drawString(hour + ":" + min,center,50);
}
function drawDate(d){
var day = ("0" + d.getDate()).slice(-2);
var month = ("0" + d.getMonth()).slice(-2);
var dateStr = locale.date(d,1);
g.clearRect(0,24,g.getWidth(),44);
g.setFont("Vector",20);
g.setColor(fontColor);
g.setFontAlign(0,-1,0);
g.drawString(dateStr,center,24);
}
function drawCal(d){
var calStart = 101;
var cellSize = g.getWidth() / 7;
var halfSize = cellSize / 2;
g.clearRect(0,calStart,g.getWidth(),g.getHeight());
g.drawLine(0,calStart,g.getWidth(),calStart);
var days = ["Mo","Tu","We","Th","Fr","Sa","Su"];
g.setFont("Vector",10);
g.setColor(fontColor);
g.setFontAlign(-1,-1,0);
for(var i = 0; i < days.length;i++){
g.drawString(days[i],i*cellSize+5,calStart -11);
if(i!=0){
g.drawLine(i*cellSize,calStart,i*cellSize,g.getHeight());
}
}
var cellHeight = (g.getHeight() -calStart ) / 3;
for(var i = 0;i < 3;i++){
var starty = calStart + i * cellHeight;
g.drawLine(0,starty,g.getWidth(),starty);
}
g.setFont("Vector",15);
var dayOfWeek = d.getDay();
var dayRem = d.getDay() - 1;
if(dayRem <0){
dayRem = 0;
}
var start = new Date();
start.setDate(start.getDate()-(7+dayRem));
g.setFontAlign(0,-1,0);
for (var y = 0;y < 3; y++){
for(var x = 0;x < 7; x++){
if(start.getDate() === d.getDate()){
g.setColor(accentColor);
}else{
g.setColor(fontColor);
}
g.drawString(start.getDate(),x*cellSize +(cellSize / 2) + 2,calStart+(cellHeight*y) + 5);
start.setDate(start.getDate()+1);
}
}
}
g.clear();
Bangle.setUI("clock");
Bangle.loadWidgets();
Bangle.drawWidgets();
loop();
setInterval(loop,1000);

View File

@ -15,3 +15,4 @@
0.11: Fix initial screen fill colour 0.11: Fix initial screen fill colour
0.12: Fix swipe direction (#800) 0.12: Fix swipe direction (#800)
0.13: Mods for Bangle.js 2 0.13: Mods for Bangle.js 2
0.14: Turn off and run later to use softOff to time is set right

View File

@ -11,7 +11,8 @@
'Run Now': () => load('welcome.app.js'), 'Run Now': () => load('welcome.app.js'),
'Turn off & run next': () => { 'Turn off & run next': () => {
require('Storage').write('welcome.json', {welcomed: false}); require('Storage').write('welcome.json', {welcomed: false});
Bangle.off(); Bangle.setLocked(true); // fix for pre-2v11 firmware that can accidentally leave touchscreen on
if (Bangle.softOff()) Bangle.softOff(); else Bangle.off();
}, },
'< Back': back, '< Back': back,
}) })

View File

@ -171,7 +171,9 @@ function onAppJSONLoaded() {
if (deviceId !== undefined) if (deviceId !== undefined)
filterAppsForDevice(deviceId); filterAppsForDevice(deviceId);
return new Promise(resolve => { /* Disable external screenshot loading - seems we probably have enough
screenshots added manually in apps.json */
/*return new Promise(resolve => {
httpGet("screenshots.json").then(screenshotJSON=>{ httpGet("screenshots.json").then(screenshotJSON=>{
var screenshots = []; var screenshots = [];
try { try {
@ -189,5 +191,5 @@ function onAppJSONLoaded() {
console.log("No screenshots.json found"); console.log("No screenshots.json found");
resolve(); resolve();
}); });
}); });*/
} }