├── .eslintignore ├── .eslintrc.js ├── .gitignore ├── .gitmodules ├── .travis.yml ├── LICENSE ├── README.md ├── babel.config.js ├── boards ├── DO_NOT_REMOVE_FOLDER_HERE └── config.js ├── build ├── clean_file_before_build.linuxx64.sh ├── clean_file_before_build.win32.sh ├── icons │ ├── 1024x1024.png │ ├── 128x128.png │ ├── 16x16.png │ ├── 24x24.png │ ├── 256x256.png │ ├── 32x32.png │ ├── 48x48.png │ ├── 512x512.png │ ├── 64x64.png │ ├── icon.icns │ └── icon.ico ├── installed_package.txt └── installed_package_v1.1.txt ├── docs ├── .gitkeep ├── getting-started.md └── images │ ├── .gitkeep │ ├── How2Upload │ ├── how2upload1.JPG │ ├── how2upload2.JPG │ ├── how2upload3.JPG │ ├── how2upload4.JPG │ ├── how2upload5.JPG │ └── how2upload6.JPG │ ├── boardmanager1.PNG │ ├── boardmanager2.PNG │ ├── boardmanager3.png │ ├── boardmanager4.png │ ├── boardmanager5.png │ ├── desktop.PNG │ ├── example-menu-1.png │ ├── example-select.png │ ├── example-structure.png │ ├── example1.PNG │ ├── example2.PNG │ ├── example3.PNG │ ├── example4.png │ ├── example5.PNG │ ├── example6.PNG │ ├── example7.PNG │ ├── installKBIDE │ ├── KBIDEinstall1.JPG │ ├── KBIDEinstall2.JPG │ ├── KBIDEinstall3.JPG │ ├── KBIDEinstall4.JPG │ └── KBIDEinstall5.JPG │ ├── install_warning.jpg │ ├── kb-basicdisplay.PNG │ ├── kb-ide-mac.png │ ├── kb-logic.PNG │ ├── kb-music.PNG │ ├── kb-sensor.PNG │ ├── kbpro1.png │ ├── music_1.png │ ├── music_2.png │ ├── music_3.png │ ├── music_4.png │ ├── music_5.png │ ├── music_6.png │ ├── openfile1.PNG │ ├── openfile2.PNG │ ├── pluginmanager1.PNG │ ├── pluginmanager2.PNG │ ├── setting1.PNG │ ├── setting2.PNG │ ├── setting3.PNG │ ├── toolbar1.PNG │ ├── userlevel1.PNG │ ├── userlevel2.PNG │ ├── userlevel3.png │ └── userlevel4.png ├── jest.config.js ├── migrate.js ├── package.json ├── packages ├── .getkeep ├── DUMMY └── kbide-package-clang-format │ ├── .clang-format │ ├── bin │ ├── check-clang-format.js │ ├── darwin_x64 │ │ └── clang-format │ ├── git-clang-format │ ├── linux_arm │ │ ├── clang-format │ │ └── clang-format-7 │ ├── linux_arm64 │ │ └── clang-format │ ├── linux_x64 │ │ └── clang-format │ └── win32 │ │ └── clang-format.exe │ ├── main.js │ ├── test.cpp │ └── test.js ├── platforms ├── .gitkeep └── DO_NOT_REMOVE_FOLDER_HERE ├── plugins └── DUMMY ├── postcss.config.js ├── project-configs └── KBProIDE.xml ├── public ├── icon-old.png ├── icon.icns ├── icon.ico ├── icon.png ├── index.html ├── manifest.json ├── robots.txt └── static │ ├── .gitkeep │ ├── block_icons │ ├── 100102ST.png │ ├── 100103ST.png │ ├── banana.png │ ├── buzzer.png │ ├── ldr.png │ ├── ldr1.png │ ├── led.png │ ├── notes │ │ ├── eighth.svg │ │ ├── half.svg │ │ ├── quarter.svg │ │ ├── sixteenth.svg │ │ └── whole.svg │ ├── relay.png │ ├── shift_down_24px.svg │ ├── shift_left_24px.svg │ ├── shift_right_24px.svg │ ├── shift_up_24px.svg │ ├── sot23-6.png │ ├── sot23-6_1.png │ ├── sw12x12.png │ └── usb_con.png │ ├── blockly │ └── media │ │ ├── 1x1.gif │ │ ├── click.mp3 │ │ ├── click.ogg │ │ ├── click.wav │ │ ├── delete.mp3 │ │ ├── delete.ogg │ │ ├── delete.wav │ │ ├── disconnect.mp3 │ │ ├── disconnect.ogg │ │ ├── disconnect.wav │ │ ├── handclosed.cur │ │ ├── handdelete.cur │ │ ├── handopen.cur │ │ ├── quote0.png │ │ ├── quote1.png │ │ ├── sprites.png │ │ ├── sprites.svg │ │ ├── spritesn.png │ │ ├── spritesn.svg │ │ ├── test_200px.png │ │ ├── test_30px.png │ │ ├── test_50px.png │ │ ├── test_a.png │ │ ├── test_b.png │ │ ├── test_c.png │ │ ├── test_d.png │ │ ├── test_e.png │ │ ├── test_f.png │ │ ├── test_g.png │ │ ├── test_h.png │ │ ├── test_i.png │ │ ├── test_j.png │ │ ├── test_k.png │ │ ├── test_l.png │ │ └── test_m.png │ ├── css │ └── ui-custom.css │ ├── data │ ├── chat_message.json │ ├── file.json │ ├── font-awesome.json │ ├── material.json │ └── user.json │ ├── error │ ├── 403.svg │ ├── 404.svg │ └── 500.svg │ ├── fonts │ ├── Manjari │ │ ├── Manjari-Bold.ttf │ │ ├── Manjari-Regular.ttf │ │ ├── Manjari-Thin.ttf │ │ └── OFL.txt │ └── Roboto │ │ ├── LICENSE.txt │ │ ├── Roboto-Black.ttf │ │ ├── Roboto-BlackItalic.ttf │ │ ├── Roboto-Bold.ttf │ │ ├── Roboto-BoldItalic.ttf │ │ ├── Roboto-Light.ttf │ │ ├── Roboto-LightItalic.ttf │ │ ├── Roboto-Medium.ttf │ │ ├── Roboto-MediumItalic.ttf │ │ ├── Roboto-Regular.ttf │ │ ├── Roboto-RegularItalic.ttf │ │ ├── Roboto-Thin.ttf │ │ └── Roboto-ThinItalic.ttf │ ├── icons │ ├── 100102ST.png │ ├── 100103ST.png │ ├── 2748656-40.jpg │ ├── BMX055.jpg │ ├── MFG_BME280.jpg │ ├── MFG_BME280.png │ ├── MFG_BMX055.jpg │ ├── PNG │ │ ├── 001.png │ │ ├── 002.png │ │ ├── 003.png │ │ ├── 004.png │ │ ├── 005.png │ │ ├── 006.png │ │ ├── 007.png │ │ ├── 008.png │ │ ├── 009.png │ │ ├── 02.png │ │ ├── 03.png │ │ ├── 04.png │ │ ├── 05].png │ │ ├── 06.png │ │ ├── 07.png │ │ ├── 08.png │ │ ├── 10.png │ │ ├── 11.png │ │ ├── 12.png │ │ ├── 13.png │ │ ├── 14.png │ │ ├── 15.png │ │ ├── Basic.png │ │ └── logo.png │ ├── SVG │ │ ├── 201556.svg │ │ ├── Logo.svg │ │ ├── Logo2.svg │ │ ├── c1.svg │ │ ├── c10.svg │ │ ├── c11.svg │ │ ├── c2.svg │ │ ├── c3.svg │ │ ├── c4.svg │ │ ├── c5.svg │ │ ├── c6.svg │ │ ├── c7.svg │ │ ├── c8.svg │ │ ├── c9.svg │ │ ├── export.svg │ │ ├── h1.svg │ │ ├── h2.svg │ │ ├── h3.svg │ │ ├── h4.svg │ │ ├── h5.svg │ │ ├── h6.svg │ │ ├── h7.svg │ │ ├── head.svg │ │ ├── import.svg │ │ ├── modalicon │ │ │ ├── m1.svg │ │ │ ├── m2.svg │ │ │ ├── m3.svg │ │ │ ├── m4.svg │ │ │ ├── m5.svg │ │ │ ├── m6.svg │ │ │ └── m7.svg │ │ ├── new-file.svg │ │ └── save-file.svg │ ├── administrator.png │ ├── arduino_esp32 │ │ └── advanced │ │ │ └── mqtt │ │ │ ├── 1122395.svg │ │ │ ├── 138617.svg │ │ │ ├── 148832.svg │ │ │ ├── 148833.svg │ │ │ ├── 148834.svg │ │ │ └── 234158.svg │ ├── banana.png │ ├── bh1680.png │ ├── bh1745.jpg │ ├── bh1745.png │ ├── bme280.png │ ├── bmx055.png │ ├── boy.png │ ├── buzzer.png │ ├── calculator.png │ ├── chip.png │ ├── coding_256.png │ ├── display.png │ ├── dual.png │ ├── dual2_128.png │ ├── dual2_128_wbg.png │ ├── dual_wbg.png │ ├── fullscreen.png │ ├── icons8_123_96px.png │ ├── icons8_Story_Time_96px.png │ ├── icons8_bluetooth_2_26px.png │ ├── icons8_bluetooth_2_48px.png │ ├── icons8_bluetooth_2_96px.png │ ├── icons8_compare_96px.png │ ├── icons8_disconnected_96px.png │ ├── icons8_electronics_96px.png │ ├── icons8_exercise_96px.png │ ├── icons8_genealogy_96px.png │ ├── icons8_hacker_128px.png │ ├── icons8_idea_96px.png │ ├── icons8_math_96px.png │ ├── icons8_module_96px.png │ ├── icons8_move_24px.png │ ├── icons8_musical_notes_96px.png │ ├── icons8_network_cable_filled_50px.png │ ├── icons8_picture_96px_1.png │ ├── icons8_process_96px.png │ ├── icons8_repeat_96px.png │ ├── icons8_serial_tasks_96px.png │ ├── icons8_stack_96px.png │ ├── icons8_text_color_96px.png │ ├── icons8_thermometer_96px.png │ ├── icons8_thermometer_automation_96px.png │ ├── icons8_variable_96px.png │ ├── icons8_wifi_26px.png │ ├── icons8_wifi_logo_24px.png │ ├── icons8_wifi_router_60px.png │ ├── icons8_wifi_router_96px.png │ ├── icons8_workflow_128px.png │ ├── jigsaw_128.png │ ├── jigsaw_128_wbg.png │ ├── jigsaw_256.png │ ├── kid.png │ ├── ldr.png │ ├── ldr1.png │ ├── led.png │ ├── minus.png │ ├── mqtt.png │ ├── nerd.png │ ├── notes │ │ ├── eighth.svg │ │ ├── half.svg │ │ ├── quarter.svg │ │ ├── sixteenth.svg │ │ └── whole.svg │ ├── plus.png │ ├── programmer.png │ ├── programmer2.png │ ├── programmer3.png │ ├── programmer5.png │ ├── relay.png │ ├── rgb_neopixel.png │ ├── sd-card.png │ ├── serialport.png │ ├── shift_down_24px.svg │ ├── shift_left_24px.svg │ ├── shift_right_24px.svg │ ├── shift_up_24px.svg │ ├── sot23-6.png │ ├── sot23-6_1.png │ ├── source-code.png │ ├── source-code2_128.png │ ├── source-code2_128_wbg.png │ ├── source-code2_256.png │ ├── student2.png │ ├── sw12x12.png │ └── usb_con.png │ ├── images │ └── noimage.jpg │ ├── js │ ├── Tone.js │ └── Tone.min.js │ ├── logo │ ├── KBIDE.png │ ├── broccoli.png │ ├── kidcom_128.png │ ├── logo1-resized.png │ ├── logo2-resized.png │ ├── logo3-resized.png │ └── logo5-100px.png │ └── vue.js ├── src ├── App.vue ├── background.js ├── engine │ ├── AsyncComponent.vue │ ├── BoardManager.js │ ├── Compiler.js │ ├── ComponentManager.js │ ├── PackageManager.js │ ├── PlatformManager.js │ ├── PluginManager.js │ ├── UIManager.js │ ├── components │ │ ├── board_selector │ │ │ ├── ToolbarBoard.vue │ │ │ └── config.js │ │ ├── editor │ │ │ ├── ActionbarNewFile.vue │ │ │ ├── ActionbarOpenFile.vue │ │ │ ├── ActionbarSaveFile.vue │ │ │ ├── Page.vue │ │ │ ├── Setting.vue │ │ │ ├── ToolbarMode.vue │ │ │ ├── config.js │ │ │ └── errorlint.js │ │ ├── examples │ │ │ ├── ToolbarExample.vue │ │ │ └── config.js │ │ ├── package │ │ │ ├── ToolbarPackage.vue │ │ │ └── config.js │ │ ├── plugin │ │ │ ├── PluginPublishForm.vue │ │ │ ├── ToolbarPlugin.vue │ │ │ └── config.js │ │ ├── raw_code │ │ │ ├── ToolbarRawCodeToggle.vue │ │ │ └── config.js │ │ └── setting │ │ │ ├── RightDrawer.vue │ │ │ ├── ToolbarSetting.vue │ │ │ └── config.js │ ├── plugins │ │ └── vuetify.js │ ├── updater │ │ ├── AppUpdater.vue │ │ └── DownloadAndExtract.js │ ├── utils │ │ ├── blockly.js │ │ ├── codeformat.js │ │ ├── compiler.js │ │ ├── file.js │ │ ├── index.js │ │ ├── regex-parser.js │ │ ├── ui.js │ │ └── unzip.js │ └── views │ │ ├── AppFooter.vue │ │ ├── AppToolbar.vue │ │ ├── Notification.vue │ │ ├── ThemeSettings.vue │ │ ├── VWidget.vue │ │ ├── dialog │ │ ├── PianoDialog.vue │ │ ├── TTSDialog.vue │ │ ├── VariableNamingDialog.vue │ │ └── tts.js │ │ ├── page │ │ ├── Deny.vue │ │ ├── Error.vue │ │ ├── Login.vue │ │ └── NotFound.vue │ │ └── widgets │ │ ├── card │ │ └── UserSelectCard.vue │ │ ├── list │ │ ├── SmoothScrollbar.vue │ │ ├── TreeMenu.vue │ │ └── TreeMenu2.vue │ │ └── piano │ │ ├── Piano.vue │ │ ├── PianoKey.vue │ │ └── midikey.js ├── event.js ├── main.js ├── menu.js ├── registerServiceWorker.js ├── router │ ├── index.js │ └── paths.js ├── store.js ├── theme │ ├── component-design.styl │ └── default.styl └── tour.js ├── tests └── unit │ ├── .eslintrc.js │ ├── setup.js │ └── utils │ ├── index.spec.js │ └── utils.spec.js └── vue.config.js /.eslintignore: -------------------------------------------------------------------------------- 1 | /build/ 2 | /config/ 3 | /dist/ 4 | /*.js 5 | /test/unit/coverage/ 6 | -------------------------------------------------------------------------------- /.eslintrc.js: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | root: true, 3 | env: { 4 | node: true 5 | }, 6 | extends: ["plugin:vue/essential", "@vue/prettier"], 7 | rules: { 8 | "no-console": process.env.NODE_ENV === "production" ? "error" : "off", 9 | "no-debugger": process.env.NODE_ENV === "production" ? "error" : "off" 10 | }, 11 | parserOptions: { 12 | parser: "babel-eslint" 13 | } 14 | }; 15 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | .DS_Store 2 | node_modules/ 3 | npm-debug.log* 4 | yarn-debug.log* 5 | yarn.lock 6 | yarn-error.log* 7 | /test/unit/coverage/ 8 | /test/e2e/reports/ 9 | selenium-debug.log 10 | node_modules 11 | release 12 | boards/kidbright/build/ 13 | clang_source.js 14 | 15 | # Editor directories and files 16 | .idea 17 | .vscode 18 | *.suo 19 | *.ntvs* 20 | *.njsproj 21 | *.sln 22 | 23 | #Electron-builder output 24 | /dist_electron 25 | boards/kbpro/build 26 | dist_electronupdater-log.txt 27 | #build 28 | boards/esp32-wrover/lib/README.md 29 | boards/esp32-wrover/include/pins_arduino.h 30 | boards/esp32-wrover/context.json 31 | boards/esp32-wrover/config.js 32 | boards/esp32-wrover/compiler.js 33 | boards/esp32-wrover/README.md 34 | boards/esp32-wrover/LICENSE 35 | boards/esp32-wrover/.gitattributes 36 | boards/esp32-wrover/template.c 37 | boards/esp32-wrover/static/esp32-wrover_datasheet_en.pdf 38 | boards/esp32-wrover/static/display.jpg 39 | boards/esp32-wrover/plugin/README.md 40 | boards/esp32-wrover/include/KBProTime.h 41 | boards/esp32-wrover/include/KBProTime.cpp 42 | boards/esp32-wrover/block/config.js 43 | package-lock.json 44 | INSTALLED 45 | boards/arduino-nano/ 46 | boards/arduino-mega/ 47 | -------------------------------------------------------------------------------- /.gitmodules: -------------------------------------------------------------------------------- 1 | [submodule "platforms/esp-idf"] 2 | path = platforms/esp-idf 3 | url = https://github.com/MakerAsia/kbpro-esp-idf-platfrom 4 | [submodule "platforms/arduino-esp32"] 5 | path = platforms/arduino-esp32 6 | url = https://github.com/MakerAsia/kbpro-arduino-platfrom 7 | [submodule "boards/kidbright"] 8 | path = boards/kidbright 9 | url = https://github.com/comdet/kidbright-board-kbide 10 | [submodule "boards/kbpro"] 11 | path = boards/kbpro 12 | url = https://github.com/MakerAsia/kbpro-board 13 | [submodule "boards/kbx"] 14 | path = boards/kbx 15 | url = https://github.com/cmmakerclub/kbx-board.git 16 | [submodule "boards/kidbright-arduino"] 17 | path = boards/kidbright-arduino 18 | url = https://github.com/MakerAsia/kidbright-arduino-board.git 19 | [submodule "boards/ttgo-t-watcher-v1.2"] 20 | path = boards/ttgo-t-watcher-v1.2 21 | url = https://github.com/cmmakerclub/ttgo-t-watcher-v1.2-board.git 22 | [submodule "boards/ttgo-t-watcher-v1.3"] 23 | path = boards/ttgo-t-watcher-v1.3 24 | url = https://github.com/cmmakerclub/ttgo-t-watcher-v1.3-board 25 | [submodule "boards/ttgo-t8-v1.1"] 26 | path = boards/ttgo-t8-v1.1 27 | url = https://github.com/cmmakerclub/ttgo-t8-v1.1-board 28 | [submodule "boards/ttgo-t8-v1.3"] 29 | path = boards/ttgo-t8-v1.3 30 | url = https://github.com/cmmakerclub/ttgo-t8-v1.3-board 31 | [submodule "boards/ttgo-t8-v1.7"] 32 | path = boards/ttgo-t8-v1.7 33 | url = https://github.com/cmmakerclub/ttgo-t8-v1.7-board 34 | [submodule "platforms/arduino-avr"] 35 | path = platforms/arduino-avr 36 | url = https://github.com/MakerAsia/kbide-arduino-avr-platform 37 | [submodule "boards/arduino-uno"] 38 | path = boards/arduino-uno 39 | url = https://github.com/KhonKaenMakerClub/kbide-arduino-uno 40 | [submodule "boards/ipst-wifi"] 41 | path = boards/ipst-wifi 42 | url = https://github.com/MakerAsia/ipst-wifi-board 43 | [submodule "boards/arduino-nano"] 44 | path = boards/arduino-nano 45 | url = https://github.com/cmmakerclub/arduino-nano-board/ 46 | [submodule "boards/arduino-mega"] 47 | path = boards/arduino-mega 48 | url = https://github.com/cmmakerclub/arduino-mega-board/ 49 | [submodule "packages/kbide-extension-pack"] 50 | path = packages/kbide-extension-pack 51 | url = https://github.com/cmmc-kbide/kbide-extension-pack 52 | [submodule "boards/openkb"] 53 | path = boards/openkb 54 | url = https://github.com/MakerAsia/openkb 55 | [submodule "boards/kbm5stack"] 56 | path = boards/kbm5stack 57 | url = https://github.com/MakerAsia/kbm5stack 58 | -------------------------------------------------------------------------------- /.travis.yml: -------------------------------------------------------------------------------- 1 | language: node_js 2 | sudo: false 3 | node_js: 4 | - 10 5 | - 8 6 | cache: 7 | yarn: true 8 | directories: 9 | - node_modules 10 | install: 11 | - npm install 12 | # - npm i -g npm@5.7.1 13 | scripts: 14 | # run tests, build, ... 15 | script: 16 | - npm run test:unit 17 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2018-present tookit 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | 2 | # KBProIDE [![Build Status](https://travis-ci.com/MakerAsia/KBProIDE.svg?branch=master)](https://travis-ci.com/MakerAsia/KBProIDE) 3 | 4 | ## Windows Install 5 | use node v10.15.0 (but v8 also work too) and need Anaconda python2 6 | first run CMD as Administrator and install build tool first 7 | - git clone --recursive https://github.com/MakerAsia/KBProIDE 8 | - cd KBProIDE 9 | - git submodule init 10 | - git submodule update 11 | - (cmd as Administrator) npm install --global --production windows-build-tools 12 | - npm uninstall -g vue-cli && npm install -g @vue/cli 13 | - npm install 14 | - npm run electron:rebuild 15 | - npm run electron:rebuild-serial 16 | 17 | ## MacOS Install 18 | - git clone --recursive https://github.com/MakerAsia/KBProIDE 19 | - cd KBProIDE 20 | - git submodule init 21 | - git submodule update 22 | - npm uninstall -g vue-cli && npm install -g @vue/cli 23 | - npm install 24 | - npm run electron:rebuild 25 | - npm run electron:rebuild-serial 26 | 27 | ## Linux Install 28 | - sudo apt-get install python-pip git nodejs npm 29 | - sudo pip install pyserial 30 | - git clone --recursive https://github.com/MakerAsia/KBProIDE 31 | - cd KBProIDE 32 | - git submodule init 33 | - git submodule update 34 | - sudo npm uninstall -g vue-cli //if new install no need this command 35 | - sudo npm install -g @vue/cli 36 | - npm install 37 | - npm run electron:rebuild 38 | - npm run electron:rebuild-serial 39 | - (add Serial permission to user) $sudo adduser $USER dialout 40 | ## Run 41 | - npm run electron:serve 42 | 43 | ## Build 44 | - npm run electron:build 45 | 46 | ## Test 47 | - npm run test:unit 48 | - npx vue-cli-service test:unit --watchAll 49 | 50 | ## Update submodules 51 | - git config submodule.recurse true 52 | - git pull --recurse-submodules 53 | - git submodule update --recursive --remote 54 | - git submodule foreach "(git checkout master; git pull)" 55 | 56 | ## Release 57 | - cp mac/kbide.app/Contents/Resources/app.asar update.asar 58 | - zip -9 1.0.0-darwin.zip update.asar 59 | 60 | 61 | ## License 62 | 63 | [MIT] 64 | -------------------------------------------------------------------------------- /babel.config.js: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | presets: ["@vue/app"] 3 | }; 4 | -------------------------------------------------------------------------------- /boards/DO_NOT_REMOVE_FOLDER_HERE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/boards/DO_NOT_REMOVE_FOLDER_HERE -------------------------------------------------------------------------------- /boards/config.js: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | data: { 3 | board_config: 1, 4 | block: {}, 5 | template: "", 6 | }, 7 | persistence: { 8 | board : 'kidbright-arduino', 9 | board_info : { 10 | name : 'kidbright-arduino', 11 | platform : 'arduino-esp32', 12 | title : 'Kidbright (Arduino API)', 13 | description : 'บอร์ด KidBright เขียนบนแพลตฟอร์ม Arduino-ESP32 ทำให้สามารถใช้ความสามารถใหม่ ๆ และปลั๊กอินของ Arduino ได้', 14 | author : 'Maker Asia (maintain by Comdet)', 15 | email : 'makerasia@gmail.com', 16 | website : 'https://github.com/MakerAsia/kidbright-arduino-board/', 17 | git : "https://github.com/MakerAsia/kidbright-arduino-board/", 18 | image : '/static/display.jpg', 19 | version : '1.1.4' 20 | } 21 | }, 22 | }; 23 | -------------------------------------------------------------------------------- /build/clean_file_before_build.linuxx64.sh: -------------------------------------------------------------------------------- 1 | git clone https://github.com/MakerAsia/kbide-esp-idf-platfrom-linuxx64 /tmp/esp-idf-linuxx64 2 | rm -rf ../platforms/esp-idf/tools 3 | cp -r /tmp/esp-idf-linuxx64/tools ../platforms/esp-idf/tools 4 | rm -rf /tmp/esp-idf-linuxx64 5 | git clone https://github.com/MakerAsia/kbide-arduino-avr-platfrom-linuxx64 /tmp/arduino-avr-linuxx64 6 | rm -rf ../platforms/arduino-avr/tools 7 | cp -r /tmp/arduino-avr-linuxx64/tools ../platforms/arduino-avr/tools 8 | rm -rf /tmp/arduino-avr-linuxx64 9 | 10 | #clean all build folder 11 | bdirs=$(find ../boards -maxdepth 2 -name "build" -type d) 12 | for bdir in $bdirs; do 13 | echo "delete $bdir" 14 | rm -rf $bdir 15 | done 16 | chmod +x ../packages/kbide-package-clang-format/bin/linux_x64/clang-format 17 | -------------------------------------------------------------------------------- /build/icons/1024x1024.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/build/icons/1024x1024.png -------------------------------------------------------------------------------- /build/icons/128x128.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/build/icons/128x128.png -------------------------------------------------------------------------------- /build/icons/16x16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/build/icons/16x16.png -------------------------------------------------------------------------------- /build/icons/24x24.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/build/icons/24x24.png -------------------------------------------------------------------------------- /build/icons/256x256.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/build/icons/256x256.png -------------------------------------------------------------------------------- /build/icons/32x32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/build/icons/32x32.png -------------------------------------------------------------------------------- /build/icons/48x48.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/build/icons/48x48.png -------------------------------------------------------------------------------- /build/icons/512x512.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/build/icons/512x512.png -------------------------------------------------------------------------------- /build/icons/64x64.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/build/icons/64x64.png -------------------------------------------------------------------------------- /build/icons/icon.icns: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/build/icons/icon.icns -------------------------------------------------------------------------------- /build/icons/icon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/build/icons/icon.ico -------------------------------------------------------------------------------- /build/installed_package.txt: -------------------------------------------------------------------------------- 1 | kbide@1.2.0 D:\KBIDEV6 2 | +-- @directus/sdk-js@5.3.4 3 | +-- @johmun/vue-tags-input@2.1.0 4 | +-- @vue/cli-plugin-babel@3.12.1 5 | +-- @vue/cli-plugin-eslint@3.12.1 6 | +-- @vue/cli-plugin-pwa@3.12.1 7 | +-- @vue/cli-plugin-unit-jest@3.12.1 8 | +-- @vue/cli-service@3.12.1 9 | +-- @vue/eslint-config-prettier@4.0.1 10 | +-- @vue/test-utils@1.0.0-beta.29 11 | +-- babel-core@7.0.0-bridge.0 12 | +-- babel-eslint@10.0.3 13 | +-- babel-jest@23.6.0 14 | +-- braces@3.0.2 15 | +-- chart.js@2.9.3 16 | +-- electron@4.2.12 17 | +-- electron-asar-hot-updater@0.1.3 (git+https://github.com/comdet/electron-asar-hot-updater.git#6dcc263064206e7b5a9e0c59d1bc8160abf18960) 18 | +-- electron-builder@20.44.4 19 | +-- electron-google-analytics@0.1.0 20 | +-- electron-icon-builder@1.0.1 21 | +-- electron-rebuild@1.8.6 22 | +-- electron-unhandled@2.2.0 23 | +-- electron-util@0.11.0 24 | +-- eslint@5.16.0 25 | +-- eslint-plugin-vue@5.2.3 26 | +-- external-loader@0.1.1 27 | +-- font-awesome@4.7.0 28 | +-- fstream@1.0.12 29 | +-- js-yaml@3.13.1 30 | +-- lodash.truncate@4.4.2 31 | +-- material-design-icons-iconfont@5.0.1 32 | +-- md5@2.2.1 33 | +-- mkdirp@0.5.1 34 | +-- moment@2.24.0 35 | +-- monaco-editor@0.17.1 36 | +-- monaco-themes@0.3.3 37 | +-- nprogress@0.2.0 38 | +-- nwjs-builder-phoenix@1.15.0 39 | +-- p-queue@6.2.1 40 | +-- prismjs@1.17.1 41 | +-- quill@1.3.7 42 | +-- register-service-worker@1.6.2 43 | +-- request-promise@4.2.5 44 | +-- roboto-fontface@0.10.0 45 | +-- serialport@7.1.5 46 | +-- stylus@0.54.7 47 | +-- stylus-loader@3.0.2 48 | +-- tar@4.4.13 49 | +-- v8-compile-cache@2.1.0 50 | +-- vee-validate@2.2.15 51 | +-- vue@2.6.10 52 | +-- vue-blockly@1.0.7 (git+https://github.com/comdet/vue-blockly.git#f036a887ddc2732e68bc65fedd811f9c94eb7e64) 53 | +-- vue-chartjs@3.5.0 54 | +-- vue-cli-plugin-electron-builder@1.1.3 55 | +-- vue-cli-plugin-vuetify@0.4.6 56 | +-- vue-color@2.7.0 57 | +-- vue-fullcalendar@1.0.9 58 | +-- vue-highlightjs@1.3.3 59 | +-- vue-js-toggle-button@1.3.3 60 | +-- vue-markdown@2.2.4 61 | +-- vue-monaco@1.1.0 62 | +-- vue-multipane@0.9.5 (git+https://github.com/comdet/vue-multipane.git#9e52545ae0850e09e94c01c2558b5387b265ae05) 63 | +-- vue-perfect-scrollbar@0.1.0 64 | +-- vue-prism-component@1.1.1 65 | +-- vue-qrcode-component@2.1.1 66 | +-- vue-quill-editor@3.0.6 67 | +-- vue-router@3.1.3 68 | +-- vue-smooth-scrollbar@0.1.2 69 | +-- vue-swatches@1.0.4 70 | +-- vue-template-compiler@2.6.10 71 | +-- vue-tour@1.1.0 (git+https://github.com/comdet/vue-tour.git#76d6d9f6248654718bc829231b52549206e93aa5) 72 | +-- vuedraggable@2.23.2 73 | +-- vuetify@1.5.21 74 | +-- vuetify-dialog@0.3.8 75 | +-- vuetify-loader@1.3.1 76 | +-- vuex@3.1.2 77 | +-- webpack-bundle-analyzer@3.6.0 78 | +-- webpack-externals-plugin@1.0.0 79 | `-- yauzl@2.10.0 80 | 81 | -------------------------------------------------------------------------------- /build/installed_package_v1.1.txt: -------------------------------------------------------------------------------- 1 | kbide@1.2.0 D:\KBIDEV6 2 | +-- @directus/sdk-js@5.3.4 3 | +-- @johmun/vue-tags-input@2.1.0 4 | +-- @vue/cli-plugin-babel@3.12.1 5 | +-- @vue/cli-plugin-eslint@3.12.1 6 | +-- @vue/cli-plugin-pwa@3.12.1 7 | +-- @vue/cli-plugin-unit-jest@3.12.1 8 | +-- @vue/cli-service@3.12.1 9 | +-- @vue/eslint-config-prettier@4.0.1 10 | +-- @vue/test-utils@1.0.0-beta.29 11 | +-- babel-core@7.0.0-bridge.0 12 | +-- babel-eslint@10.0.3 13 | +-- babel-jest@23.6.0 14 | +-- braces@3.0.2 15 | +-- chart.js@2.9.3 16 | +-- electron@4.2.12 17 | +-- electron-asar-hot-updater@0.1.3 (git+https://github.com/comdet/electron-asar-hot-updater.git#6dcc263064206e7b5a9e0c59d1bc8160abf18960) 18 | +-- electron-builder@20.44.4 19 | +-- electron-google-analytics@0.1.0 20 | +-- electron-icon-builder@1.0.1 21 | +-- electron-rebuild@1.8.6 22 | +-- electron-unhandled@2.2.0 23 | +-- electron-util@0.11.0 24 | +-- eslint@5.16.0 25 | +-- eslint-plugin-vue@5.2.3 26 | +-- external-loader@0.1.1 27 | +-- font-awesome@4.7.0 28 | +-- fstream@1.0.12 29 | +-- js-yaml@3.13.1 30 | +-- lodash.truncate@4.4.2 31 | +-- material-design-icons-iconfont@5.0.1 32 | +-- md5@2.2.1 33 | +-- mkdirp@0.5.1 34 | +-- moment@2.24.0 35 | +-- monaco-editor@0.17.1 36 | +-- monaco-themes@0.3.3 37 | +-- nprogress@0.2.0 38 | +-- nwjs-builder-phoenix@1.15.0 39 | +-- p-queue@6.2.1 40 | +-- prismjs@1.17.1 41 | +-- quill@1.3.7 42 | +-- register-service-worker@1.6.2 43 | +-- request-promise@4.2.5 44 | +-- roboto-fontface@0.10.0 45 | +-- serialport@7.1.5 46 | +-- stylus@0.54.7 47 | +-- stylus-loader@3.0.2 48 | +-- tar@4.4.13 49 | +-- v8-compile-cache@2.1.0 50 | +-- vee-validate@2.2.15 51 | +-- vue@2.6.10 52 | +-- vue-blockly@1.0.7 (git+https://github.com/comdet/vue-blockly.git#f036a887ddc2732e68bc65fedd811f9c94eb7e64) 53 | +-- vue-chartjs@3.5.0 54 | +-- vue-cli-plugin-electron-builder@1.1.2 55 | +-- vue-cli-plugin-vuetify@0.4.6 56 | +-- vue-color@2.7.0 57 | +-- vue-fullcalendar@1.0.9 58 | +-- vue-highlightjs@1.3.3 59 | +-- vue-js-toggle-button@1.3.3 60 | +-- vue-markdown@2.2.4 61 | +-- vue-monaco@1.1.0 62 | +-- vue-multipane@0.9.5 (git+https://github.com/comdet/vue-multipane.git#9e52545ae0850e09e94c01c2558b5387b265ae05) 63 | +-- vue-perfect-scrollbar@0.1.0 64 | +-- vue-prism-component@1.1.1 65 | +-- vue-qrcode-component@2.1.1 66 | +-- vue-quill-editor@3.0.6 67 | +-- vue-router@3.1.3 68 | +-- vue-smooth-scrollbar@0.1.2 69 | +-- vue-swatches@1.0.4 70 | +-- vue-template-compiler@2.6.10 71 | +-- vue-tour@1.1.0 (git+https://github.com/comdet/vue-tour.git#76d6d9f6248654718bc829231b52549206e93aa5) 72 | +-- vuedraggable@2.23.2 73 | +-- vuetify@1.5.21 74 | +-- vuetify-dialog@0.3.8 75 | +-- vuetify-loader@1.3.1 76 | +-- vuex@3.1.2 77 | +-- webpack-bundle-analyzer@3.6.0 78 | +-- webpack-externals-plugin@1.0.0 79 | `-- yauzl@2.10.0 80 | 81 | -------------------------------------------------------------------------------- /docs/.gitkeep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/docs/.gitkeep -------------------------------------------------------------------------------- /docs/getting-started.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/docs/getting-started.md -------------------------------------------------------------------------------- /docs/images/.gitkeep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/docs/images/.gitkeep -------------------------------------------------------------------------------- /docs/images/How2Upload/how2upload1.JPG: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/docs/images/How2Upload/how2upload1.JPG -------------------------------------------------------------------------------- /docs/images/How2Upload/how2upload2.JPG: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/docs/images/How2Upload/how2upload2.JPG -------------------------------------------------------------------------------- /docs/images/How2Upload/how2upload3.JPG: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/docs/images/How2Upload/how2upload3.JPG -------------------------------------------------------------------------------- /docs/images/How2Upload/how2upload4.JPG: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/docs/images/How2Upload/how2upload4.JPG -------------------------------------------------------------------------------- /docs/images/How2Upload/how2upload5.JPG: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/docs/images/How2Upload/how2upload5.JPG -------------------------------------------------------------------------------- /docs/images/How2Upload/how2upload6.JPG: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/docs/images/How2Upload/how2upload6.JPG -------------------------------------------------------------------------------- /docs/images/boardmanager1.PNG: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/docs/images/boardmanager1.PNG -------------------------------------------------------------------------------- /docs/images/boardmanager2.PNG: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/docs/images/boardmanager2.PNG -------------------------------------------------------------------------------- /docs/images/boardmanager3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/docs/images/boardmanager3.png -------------------------------------------------------------------------------- /docs/images/boardmanager4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/docs/images/boardmanager4.png -------------------------------------------------------------------------------- /docs/images/boardmanager5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/docs/images/boardmanager5.png -------------------------------------------------------------------------------- /docs/images/desktop.PNG: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/docs/images/desktop.PNG -------------------------------------------------------------------------------- /docs/images/example-menu-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/docs/images/example-menu-1.png -------------------------------------------------------------------------------- /docs/images/example-select.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/docs/images/example-select.png -------------------------------------------------------------------------------- /docs/images/example-structure.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/docs/images/example-structure.png -------------------------------------------------------------------------------- /docs/images/example1.PNG: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/docs/images/example1.PNG -------------------------------------------------------------------------------- /docs/images/example2.PNG: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/docs/images/example2.PNG -------------------------------------------------------------------------------- /docs/images/example3.PNG: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/docs/images/example3.PNG -------------------------------------------------------------------------------- /docs/images/example4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/docs/images/example4.png -------------------------------------------------------------------------------- /docs/images/example5.PNG: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/docs/images/example5.PNG -------------------------------------------------------------------------------- /docs/images/example6.PNG: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/docs/images/example6.PNG -------------------------------------------------------------------------------- /docs/images/example7.PNG: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/docs/images/example7.PNG -------------------------------------------------------------------------------- /docs/images/installKBIDE/KBIDEinstall1.JPG: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/docs/images/installKBIDE/KBIDEinstall1.JPG -------------------------------------------------------------------------------- /docs/images/installKBIDE/KBIDEinstall2.JPG: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/docs/images/installKBIDE/KBIDEinstall2.JPG -------------------------------------------------------------------------------- /docs/images/installKBIDE/KBIDEinstall3.JPG: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/docs/images/installKBIDE/KBIDEinstall3.JPG -------------------------------------------------------------------------------- /docs/images/installKBIDE/KBIDEinstall4.JPG: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/docs/images/installKBIDE/KBIDEinstall4.JPG -------------------------------------------------------------------------------- /docs/images/installKBIDE/KBIDEinstall5.JPG: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/docs/images/installKBIDE/KBIDEinstall5.JPG -------------------------------------------------------------------------------- /docs/images/install_warning.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/docs/images/install_warning.jpg -------------------------------------------------------------------------------- /docs/images/kb-basicdisplay.PNG: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/docs/images/kb-basicdisplay.PNG -------------------------------------------------------------------------------- /docs/images/kb-ide-mac.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/docs/images/kb-ide-mac.png -------------------------------------------------------------------------------- /docs/images/kb-logic.PNG: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/docs/images/kb-logic.PNG -------------------------------------------------------------------------------- /docs/images/kb-music.PNG: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/docs/images/kb-music.PNG -------------------------------------------------------------------------------- /docs/images/kb-sensor.PNG: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/docs/images/kb-sensor.PNG -------------------------------------------------------------------------------- /docs/images/kbpro1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/docs/images/kbpro1.png -------------------------------------------------------------------------------- /docs/images/music_1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/docs/images/music_1.png -------------------------------------------------------------------------------- /docs/images/music_2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/docs/images/music_2.png -------------------------------------------------------------------------------- /docs/images/music_3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/docs/images/music_3.png -------------------------------------------------------------------------------- /docs/images/music_4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/docs/images/music_4.png -------------------------------------------------------------------------------- /docs/images/music_5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/docs/images/music_5.png -------------------------------------------------------------------------------- /docs/images/music_6.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/docs/images/music_6.png -------------------------------------------------------------------------------- /docs/images/openfile1.PNG: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/docs/images/openfile1.PNG -------------------------------------------------------------------------------- /docs/images/openfile2.PNG: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/docs/images/openfile2.PNG -------------------------------------------------------------------------------- /docs/images/pluginmanager1.PNG: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/docs/images/pluginmanager1.PNG -------------------------------------------------------------------------------- /docs/images/pluginmanager2.PNG: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/docs/images/pluginmanager2.PNG -------------------------------------------------------------------------------- /docs/images/setting1.PNG: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/docs/images/setting1.PNG -------------------------------------------------------------------------------- /docs/images/setting2.PNG: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/docs/images/setting2.PNG -------------------------------------------------------------------------------- /docs/images/setting3.PNG: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/docs/images/setting3.PNG -------------------------------------------------------------------------------- /docs/images/toolbar1.PNG: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/docs/images/toolbar1.PNG -------------------------------------------------------------------------------- /docs/images/userlevel1.PNG: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/docs/images/userlevel1.PNG -------------------------------------------------------------------------------- /docs/images/userlevel2.PNG: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/docs/images/userlevel2.PNG -------------------------------------------------------------------------------- /docs/images/userlevel3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/docs/images/userlevel3.png -------------------------------------------------------------------------------- /docs/images/userlevel4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/docs/images/userlevel4.png -------------------------------------------------------------------------------- /jest.config.js: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | verbose: true, 3 | moduleFileExtensions: [ 4 | "js", 5 | "jsx", 6 | "json", 7 | "vue", 8 | ], 9 | transform: { 10 | "^.+\\.vue$": "vue-jest", 11 | ".+\\.(css|styl|less|sass|scss|svg|png|jpg|ttf|woff|woff2)$": "jest-transform-stub", 12 | "^.+\\.jsx?$": "babel-jest", 13 | }, 14 | transformIgnorePatterns: [ 15 | "node_modules/(?!(babel-jest|jest-vue-preprocessor)/)", 16 | "/node_modules/", 17 | ], 18 | moduleNameMapper: { 19 | "^@/(.*)$": "/src/$1", 20 | }, 21 | snapshotSerializers: [ 22 | "jest-serializer-vue", 23 | ], 24 | testMatch: [ 25 | "/tests/unit/**/*.spec.(js|jsx|ts|tsx)|**/__tests__/*.(js|jsx|ts|tsx)", 26 | ], 27 | testURL: "http://localhost/", 28 | watchPlugins: [ 29 | "jest-watch-typeahead/filename", 30 | "jest-watch-typeahead/testname", 31 | ], 32 | collectCoverage: false, 33 | collectCoverageFrom: [ 34 | "**/*.{vue}", "!**/node_modules/**", "!/dist/**", 35 | "!/src/plugins/**", "!/tests/unit/**", 36 | ], 37 | coverageReporters: ["lcov", "text-summary"], 38 | }; 39 | -------------------------------------------------------------------------------- /migrate.js: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | migrate : function(argument) { 3 | console.log("Migrating ..."); 4 | } 5 | }; -------------------------------------------------------------------------------- /packages/.getkeep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/packages/.getkeep -------------------------------------------------------------------------------- /packages/DUMMY: -------------------------------------------------------------------------------- 1 | https://github.com/electron-userland/electron-builder/issues/3740 -------------------------------------------------------------------------------- /packages/kbide-package-clang-format/.clang-format: -------------------------------------------------------------------------------- 1 | Language: Cpp 2 | BasedOnStyle: Google 3 | IndentWidth: 2 4 | AllowShortFunctionsOnASingleLine : false 5 | -------------------------------------------------------------------------------- /packages/kbide-package-clang-format/bin/darwin_x64/clang-format: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/packages/kbide-package-clang-format/bin/darwin_x64/clang-format -------------------------------------------------------------------------------- /packages/kbide-package-clang-format/bin/linux_arm/clang-format: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/packages/kbide-package-clang-format/bin/linux_arm/clang-format -------------------------------------------------------------------------------- /packages/kbide-package-clang-format/bin/linux_arm/clang-format-7: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/packages/kbide-package-clang-format/bin/linux_arm/clang-format-7 -------------------------------------------------------------------------------- /packages/kbide-package-clang-format/bin/linux_arm64/clang-format: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/packages/kbide-package-clang-format/bin/linux_arm64/clang-format -------------------------------------------------------------------------------- /packages/kbide-package-clang-format/bin/linux_x64/clang-format: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/packages/kbide-package-clang-format/bin/linux_x64/clang-format -------------------------------------------------------------------------------- /packages/kbide-package-clang-format/bin/win32/clang-format.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/packages/kbide-package-clang-format/bin/win32/clang-format.exe -------------------------------------------------------------------------------- /packages/kbide-package-clang-format/main.js: -------------------------------------------------------------------------------- 1 | const execSync = require('child_process').execSync; 2 | const os = require('os'); 3 | const path = require('path'); 4 | const engine = Vue.prototype.$engine; 5 | const fs = require('fs'); 6 | 7 | const getNativeBinary = function() { 8 | let nativeBinary; 9 | 10 | if (os.platform() === 'win32') { 11 | nativeBinary = `${engine.util.packageDir}/kbide-package-clang-format/bin/win32/clang-format.exe`; 12 | } else { 13 | nativeBinary = `${engine.util.packageDir}/kbide-package-clang-format/bin/${os.platform()}_${os.arch()}/clang-format`; 14 | } 15 | 16 | if (!fs.existsSync(nativeBinary)) { 17 | const message = 'This module doesn\'t bundle the clang-format executable for your platform. ' + 18 | `(${os.platform()}_${os.arch()})\n` + 19 | 'Consider installing it with your native package manager instead.\n'; 20 | throw new Error(message); 21 | } 22 | 23 | return nativeBinary; 24 | } 25 | 26 | const getEndJSONPosition = (text) => { 27 | for (let i = 0; i < text.length; i += 1) { 28 | if ((text[i] === '\n') || (text[i] === '\r')) { 29 | return i + 1; 30 | } 31 | } 32 | return -1; 33 | } 34 | 35 | const getReturnedFormattedText = stdout => stdout.slice(getEndJSONPosition(stdout)); 36 | 37 | const format = function(sourcecode){ 38 | let exe = getNativeBinary(); 39 | let cwd = `${engine.util.packageDir}/kbide-package-clang-format`; 40 | const options = { 41 | style: 'file', 42 | 'sort-includes' : 'false' 43 | }; 44 | const args = Object.keys(options).reduce((memo, optionKey) => { 45 | const optionValue = options[optionKey]; 46 | if (optionValue) { 47 | return `${memo}-${optionKey}="${optionValue}" `; 48 | } 49 | return memo; 50 | }, ''); 51 | const execOptions = { input: sourcecode, cwd : cwd}; 52 | try { 53 | //console.log(`"${exe}" ${args}`); 54 | const stdout = execSync(`"${exe}" ${args}`, execOptions).toString(); 55 | //return getReturnedFormattedText(stdout); 56 | return stdout; 57 | } catch (error) { 58 | console.log(error); 59 | if (error.message.indexOf('Command failed:') < 0) { 60 | throw error; 61 | } else { 62 | //throw error; 63 | console.error('Clang Format Command Failed'); 64 | console.error(`Error message: "${error.stderr.toString()}".\nWhen running: "${exe} ${args}".\nStdout was: "${error.stdout.toString()}"`); 65 | } 66 | } 67 | } 68 | 69 | module.exports = format; 70 | -------------------------------------------------------------------------------- /packages/kbide-package-clang-format/test.cpp: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | #include 4 | #include 5 | #include "SPI.h" 6 | #include "Adafruit_GFX.h" 7 | #include "Adafruit_LEDBackpack.h" 8 | 9 | 10 | 11 | #include "KB_initBoard.h" 12 | #include "KB_music.h" 13 | #include "KB_LDR.h" 14 | #include "KB_LM73.h" 15 | #include "KB_ht16k33.h" 16 | 17 | KB_board board = KB_board(); 18 | KB_music music = KB_music(); 19 | KB_LDR ldr = KB_LDR(); 20 | KB_LM73 lm73 = KB_LM73(); 21 | KB_8x16Matrix matrix = KB_8x16Matrix(); 22 | 23 | typedef int Number; 24 | typedef int Boolean; 25 | using namespace std; 26 | 27 | int i; 28 | 29 | 30 | 31 | 32 | void setup() 33 | { 34 | board.begin(); 35 | music.begin(); 36 | lm73.begin(); 37 | matrix.displayBegin(); 38 | 39 | 40 | while (((int)digitalRead(KB_BUTTON1))) { 41 | } 42 | for (i = 1; i <= 120; i++) { 43 | matrix.printText(0, 0, String(i)); 44 | delay(1000); 45 | } 46 | music.tone(349,1000); 47 | delay(500); 48 | music.tone(349,1000); 49 | delay(500); 50 | music.tone(349,1000); 51 | for (i = 1; i <= 60; i++) { 52 | matrix.printText(0, 0, String(i)); 53 | delay(1000); 54 | }} 55 | void loop() 56 | { 57 | music.tone(349,1000); 58 | delay(500); 59 | 60 | 61 | } 62 | void test() 63 | { 64 | 65 | } -------------------------------------------------------------------------------- /packages/kbide-package-clang-format/test.js: -------------------------------------------------------------------------------- 1 | const os = require('os'); 2 | const path = require('path'); 3 | const fs = require('fs'); 4 | 5 | const format = require('./main'); 6 | 7 | fs.readFile('test.cpp','utf8', function(err, data) { 8 | let res = format(data); 9 | console.log(res); 10 | }); -------------------------------------------------------------------------------- /platforms/.gitkeep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/platforms/.gitkeep -------------------------------------------------------------------------------- /platforms/DO_NOT_REMOVE_FOLDER_HERE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/platforms/DO_NOT_REMOVE_FOLDER_HERE -------------------------------------------------------------------------------- /plugins/DUMMY: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/plugins/DUMMY -------------------------------------------------------------------------------- /postcss.config.js: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | plugins: { 3 | autoprefixer: {} 4 | } 5 | }; 6 | -------------------------------------------------------------------------------- /project-configs/KBProIDE.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /public/icon-old.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/icon-old.png -------------------------------------------------------------------------------- /public/icon.icns: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/icon.icns -------------------------------------------------------------------------------- /public/icon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/icon.ico -------------------------------------------------------------------------------- /public/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/icon.png -------------------------------------------------------------------------------- /public/manifest.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "vma", 3 | "short_name": "vma", 4 | "icons": [ 5 | { 6 | "src": "./img/icons/android-chrome-192x192.png", 7 | "sizes": "192x192", 8 | "type": "image/png" 9 | }, 10 | { 11 | "src": "./img/icons/android-chrome-512x512.png", 12 | "sizes": "512x512", 13 | "type": "image/png" 14 | } 15 | ], 16 | "start_url": "./index.html", 17 | "display": "standalone", 18 | "background_color": "#000000", 19 | "theme_color": "#4DBA87" 20 | } 21 | -------------------------------------------------------------------------------- /public/robots.txt: -------------------------------------------------------------------------------- 1 | User-agent: * 2 | Disallow: 3 | -------------------------------------------------------------------------------- /public/static/.gitkeep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/.gitkeep -------------------------------------------------------------------------------- /public/static/block_icons/100102ST.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/block_icons/100102ST.png -------------------------------------------------------------------------------- /public/static/block_icons/100103ST.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/block_icons/100103ST.png -------------------------------------------------------------------------------- /public/static/block_icons/banana.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/block_icons/banana.png -------------------------------------------------------------------------------- /public/static/block_icons/buzzer.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/block_icons/buzzer.png -------------------------------------------------------------------------------- /public/static/block_icons/ldr.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/block_icons/ldr.png -------------------------------------------------------------------------------- /public/static/block_icons/ldr1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/block_icons/ldr1.png -------------------------------------------------------------------------------- /public/static/block_icons/led.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/block_icons/led.png -------------------------------------------------------------------------------- /public/static/block_icons/relay.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/block_icons/relay.png -------------------------------------------------------------------------------- /public/static/block_icons/shift_down_24px.svg: -------------------------------------------------------------------------------- 1 | 2 | 18 | 20 | 21 | 23 | image/svg+xml 24 | 26 | 27 | 28 | 29 | 30 | 32 | 52 | 55 | 56 | 61 | 66 | 75 | 80 | 81 | -------------------------------------------------------------------------------- /public/static/block_icons/shift_left_24px.svg: -------------------------------------------------------------------------------- 1 | 2 | 18 | 20 | 21 | 23 | image/svg+xml 24 | 26 | 27 | 28 | 29 | 31 | 51 | 54 | 55 | 60 | 64 | 72 | 77 | 78 | -------------------------------------------------------------------------------- /public/static/block_icons/shift_right_24px.svg: -------------------------------------------------------------------------------- 1 | 2 | 18 | 20 | 21 | 23 | image/svg+xml 24 | 26 | 27 | 28 | 29 | 31 | 51 | 54 | 55 | 60 | 65 | 74 | 79 | 80 | -------------------------------------------------------------------------------- /public/static/block_icons/shift_up_24px.svg: -------------------------------------------------------------------------------- 1 | 2 | 18 | 20 | 21 | 23 | image/svg+xml 24 | 26 | 27 | 28 | 29 | 30 | 32 | 52 | 55 | 56 | 61 | 66 | 75 | 80 | 81 | -------------------------------------------------------------------------------- /public/static/block_icons/sot23-6.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/block_icons/sot23-6.png -------------------------------------------------------------------------------- /public/static/block_icons/sot23-6_1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/block_icons/sot23-6_1.png -------------------------------------------------------------------------------- /public/static/block_icons/sw12x12.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/block_icons/sw12x12.png -------------------------------------------------------------------------------- /public/static/block_icons/usb_con.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/block_icons/usb_con.png -------------------------------------------------------------------------------- /public/static/blockly/media/1x1.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/blockly/media/1x1.gif -------------------------------------------------------------------------------- /public/static/blockly/media/click.mp3: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/blockly/media/click.mp3 -------------------------------------------------------------------------------- /public/static/blockly/media/click.ogg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/blockly/media/click.ogg -------------------------------------------------------------------------------- /public/static/blockly/media/click.wav: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/blockly/media/click.wav -------------------------------------------------------------------------------- /public/static/blockly/media/delete.mp3: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/blockly/media/delete.mp3 -------------------------------------------------------------------------------- /public/static/blockly/media/delete.ogg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/blockly/media/delete.ogg -------------------------------------------------------------------------------- /public/static/blockly/media/delete.wav: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/blockly/media/delete.wav -------------------------------------------------------------------------------- /public/static/blockly/media/disconnect.mp3: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/blockly/media/disconnect.mp3 -------------------------------------------------------------------------------- /public/static/blockly/media/disconnect.ogg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/blockly/media/disconnect.ogg -------------------------------------------------------------------------------- /public/static/blockly/media/disconnect.wav: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/blockly/media/disconnect.wav -------------------------------------------------------------------------------- /public/static/blockly/media/handclosed.cur: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/blockly/media/handclosed.cur -------------------------------------------------------------------------------- /public/static/blockly/media/handdelete.cur: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/blockly/media/handdelete.cur -------------------------------------------------------------------------------- /public/static/blockly/media/handopen.cur: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/blockly/media/handopen.cur -------------------------------------------------------------------------------- /public/static/blockly/media/quote0.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/blockly/media/quote0.png -------------------------------------------------------------------------------- /public/static/blockly/media/quote1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/blockly/media/quote1.png -------------------------------------------------------------------------------- /public/static/blockly/media/sprites.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/blockly/media/sprites.png -------------------------------------------------------------------------------- /public/static/blockly/media/spritesn.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/blockly/media/spritesn.png -------------------------------------------------------------------------------- /public/static/blockly/media/spritesn.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | 62 | 63 | 64 | 65 | 66 | 67 | 68 | 69 | 70 | 71 | 72 | 73 | 74 | 75 | -------------------------------------------------------------------------------- /public/static/blockly/media/test_200px.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/blockly/media/test_200px.png -------------------------------------------------------------------------------- /public/static/blockly/media/test_30px.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/blockly/media/test_30px.png -------------------------------------------------------------------------------- /public/static/blockly/media/test_50px.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/blockly/media/test_50px.png -------------------------------------------------------------------------------- /public/static/blockly/media/test_a.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/blockly/media/test_a.png -------------------------------------------------------------------------------- /public/static/blockly/media/test_b.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/blockly/media/test_b.png -------------------------------------------------------------------------------- /public/static/blockly/media/test_c.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/blockly/media/test_c.png -------------------------------------------------------------------------------- /public/static/blockly/media/test_d.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/blockly/media/test_d.png -------------------------------------------------------------------------------- /public/static/blockly/media/test_e.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/blockly/media/test_e.png -------------------------------------------------------------------------------- /public/static/blockly/media/test_f.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/blockly/media/test_f.png -------------------------------------------------------------------------------- /public/static/blockly/media/test_g.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/blockly/media/test_g.png -------------------------------------------------------------------------------- /public/static/blockly/media/test_h.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/blockly/media/test_h.png -------------------------------------------------------------------------------- /public/static/blockly/media/test_i.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/blockly/media/test_i.png -------------------------------------------------------------------------------- /public/static/blockly/media/test_j.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/blockly/media/test_j.png -------------------------------------------------------------------------------- /public/static/blockly/media/test_k.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/blockly/media/test_k.png -------------------------------------------------------------------------------- /public/static/blockly/media/test_l.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/blockly/media/test_l.png -------------------------------------------------------------------------------- /public/static/blockly/media/test_m.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/blockly/media/test_m.png -------------------------------------------------------------------------------- /public/static/css/ui-custom.css: -------------------------------------------------------------------------------- 1 | @font-face { 2 | font-family: Manjari-Bold; 3 | src: url(../fonts/Manjari/Manjari-Bold.ttf); 4 | } 5 | 6 | @font-face { 7 | font-family: Manjari-Regular; 8 | src: url(../fonts/Manjari/Manjari-Regular.ttf); 9 | } 10 | 11 | @font-face { 12 | font-family: Manjari-Thin; 13 | src: url(../fonts/Manjari/Manjari-Thin.ttf); 14 | } 15 | 16 | @font-face { 17 | font-family: Roboto; 18 | font-weight: normal; 19 | src: url(../fonts/Roboto/Roboto-Regular.ttf); 20 | } 21 | 22 | @font-face { 23 | font-family: Roboto; 24 | font-weight: bold; 25 | src: url(../fonts/Roboto/Roboto-Bold.ttf); 26 | } 27 | 28 | .f-manjari-b { 29 | font-family: Manjari-Regular, sans-serif !important; 30 | font-weight: bold !important; 31 | } 32 | 33 | .blocklyTreeLabel, .blocklyText, .loading { 34 | font-family: Manjari-Bold, sans-serif !important; 35 | font-weight: 700 !important; 36 | } 37 | 38 | .blocklyTreeLabel { 39 | padding-right: 20px; 40 | } 41 | 42 | .blocklyTreeSelected .blocklyTreeLabel { 43 | color: black !important; 44 | } 45 | 46 | .blocklyTreeSelected, .blocklyFlyoutBackground { 47 | fill: aliceblue !important; 48 | background-color: aliceblue !important; 49 | } 50 | 51 | /* loading dots */ 52 | 53 | .loading { 54 | color: black; 55 | font: 300 4em/150% Impact; 56 | text-align: center; 57 | } 58 | 59 | .loading:after { 60 | content: ' .'; 61 | animation: dots 1s steps(5, end) infinite;} 62 | 63 | @keyframes dots { 64 | 0%, 20% { 65 | color: rgba(0,0,0,0); 66 | text-shadow: 67 | .25em 0 0 rgba(0,0,0,0), 68 | .5em 0 0 rgba(0,0,0,0);} 69 | 40% { 70 | color: black; 71 | text-shadow: 72 | .25em 0 0 rgba(0,0,0,0), 73 | .5em 0 0 rgba(0,0,0,0);} 74 | 60% { 75 | text-shadow: 76 | .25em 0 0 black, 77 | .5em 0 0 rgba(0,0,0,0);} 78 | 80%, 100% { 79 | text-shadow: 80 | .25em 0 0 black, 81 | .5em 0 0 black;}} 82 | -------------------------------------------------------------------------------- /public/static/fonts/Manjari/Manjari-Bold.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/fonts/Manjari/Manjari-Bold.ttf -------------------------------------------------------------------------------- /public/static/fonts/Manjari/Manjari-Regular.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/fonts/Manjari/Manjari-Regular.ttf -------------------------------------------------------------------------------- /public/static/fonts/Manjari/Manjari-Thin.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/fonts/Manjari/Manjari-Thin.ttf -------------------------------------------------------------------------------- /public/static/fonts/Roboto/Roboto-Black.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/fonts/Roboto/Roboto-Black.ttf -------------------------------------------------------------------------------- /public/static/fonts/Roboto/Roboto-BlackItalic.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/fonts/Roboto/Roboto-BlackItalic.ttf -------------------------------------------------------------------------------- /public/static/fonts/Roboto/Roboto-Bold.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/fonts/Roboto/Roboto-Bold.ttf -------------------------------------------------------------------------------- /public/static/fonts/Roboto/Roboto-BoldItalic.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/fonts/Roboto/Roboto-BoldItalic.ttf -------------------------------------------------------------------------------- /public/static/fonts/Roboto/Roboto-Light.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/fonts/Roboto/Roboto-Light.ttf -------------------------------------------------------------------------------- /public/static/fonts/Roboto/Roboto-LightItalic.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/fonts/Roboto/Roboto-LightItalic.ttf -------------------------------------------------------------------------------- /public/static/fonts/Roboto/Roboto-Medium.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/fonts/Roboto/Roboto-Medium.ttf -------------------------------------------------------------------------------- /public/static/fonts/Roboto/Roboto-MediumItalic.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/fonts/Roboto/Roboto-MediumItalic.ttf -------------------------------------------------------------------------------- /public/static/fonts/Roboto/Roboto-Regular.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/fonts/Roboto/Roboto-Regular.ttf -------------------------------------------------------------------------------- /public/static/fonts/Roboto/Roboto-RegularItalic.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/fonts/Roboto/Roboto-RegularItalic.ttf -------------------------------------------------------------------------------- /public/static/fonts/Roboto/Roboto-Thin.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/fonts/Roboto/Roboto-Thin.ttf -------------------------------------------------------------------------------- /public/static/fonts/Roboto/Roboto-ThinItalic.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/fonts/Roboto/Roboto-ThinItalic.ttf -------------------------------------------------------------------------------- /public/static/icons/100102ST.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/icons/100102ST.png -------------------------------------------------------------------------------- /public/static/icons/100103ST.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/icons/100103ST.png -------------------------------------------------------------------------------- /public/static/icons/2748656-40.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/icons/2748656-40.jpg -------------------------------------------------------------------------------- /public/static/icons/BMX055.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/icons/BMX055.jpg -------------------------------------------------------------------------------- /public/static/icons/MFG_BME280.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/icons/MFG_BME280.jpg -------------------------------------------------------------------------------- /public/static/icons/MFG_BME280.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/icons/MFG_BME280.png -------------------------------------------------------------------------------- /public/static/icons/MFG_BMX055.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/icons/MFG_BMX055.jpg -------------------------------------------------------------------------------- /public/static/icons/PNG/001.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/icons/PNG/001.png -------------------------------------------------------------------------------- /public/static/icons/PNG/002.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/icons/PNG/002.png -------------------------------------------------------------------------------- /public/static/icons/PNG/003.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/icons/PNG/003.png -------------------------------------------------------------------------------- /public/static/icons/PNG/004.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/icons/PNG/004.png -------------------------------------------------------------------------------- /public/static/icons/PNG/005.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/icons/PNG/005.png -------------------------------------------------------------------------------- /public/static/icons/PNG/006.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/icons/PNG/006.png -------------------------------------------------------------------------------- /public/static/icons/PNG/007.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/icons/PNG/007.png -------------------------------------------------------------------------------- /public/static/icons/PNG/008.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/icons/PNG/008.png -------------------------------------------------------------------------------- /public/static/icons/PNG/009.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/icons/PNG/009.png -------------------------------------------------------------------------------- /public/static/icons/PNG/02.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/icons/PNG/02.png -------------------------------------------------------------------------------- /public/static/icons/PNG/03.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/icons/PNG/03.png -------------------------------------------------------------------------------- /public/static/icons/PNG/04.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/icons/PNG/04.png -------------------------------------------------------------------------------- /public/static/icons/PNG/05].png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/icons/PNG/05].png -------------------------------------------------------------------------------- /public/static/icons/PNG/06.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/icons/PNG/06.png -------------------------------------------------------------------------------- /public/static/icons/PNG/07.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/icons/PNG/07.png -------------------------------------------------------------------------------- /public/static/icons/PNG/08.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/icons/PNG/08.png -------------------------------------------------------------------------------- /public/static/icons/PNG/10.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/icons/PNG/10.png -------------------------------------------------------------------------------- /public/static/icons/PNG/11.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/icons/PNG/11.png -------------------------------------------------------------------------------- /public/static/icons/PNG/12.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/icons/PNG/12.png -------------------------------------------------------------------------------- /public/static/icons/PNG/13.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/icons/PNG/13.png -------------------------------------------------------------------------------- /public/static/icons/PNG/14.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/icons/PNG/14.png -------------------------------------------------------------------------------- /public/static/icons/PNG/15.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/icons/PNG/15.png -------------------------------------------------------------------------------- /public/static/icons/PNG/Basic.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/icons/PNG/Basic.png -------------------------------------------------------------------------------- /public/static/icons/PNG/logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/icons/PNG/logo.png -------------------------------------------------------------------------------- /public/static/icons/SVG/c1.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Created with Sketch. 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | -------------------------------------------------------------------------------- /public/static/icons/SVG/c10.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Created with Sketch. 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | -------------------------------------------------------------------------------- /public/static/icons/SVG/export.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Created with Sketch. 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | -------------------------------------------------------------------------------- /public/static/icons/SVG/h1.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Created with Sketch. 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /public/static/icons/SVG/h2.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Created with Sketch. 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | -------------------------------------------------------------------------------- /public/static/icons/SVG/h4.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Created with Sketch. 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | -------------------------------------------------------------------------------- /public/static/icons/SVG/h5.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Created with Sketch. 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | -------------------------------------------------------------------------------- /public/static/icons/SVG/h6.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Created with Sketch. 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | -------------------------------------------------------------------------------- /public/static/icons/SVG/head.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Created with Sketch. 5 | 6 | 7 | 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /public/static/icons/SVG/import.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Created with Sketch. 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | -------------------------------------------------------------------------------- /public/static/icons/SVG/modalicon/m2.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Created with Sketch. 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | -------------------------------------------------------------------------------- /public/static/icons/SVG/modalicon/m3.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Created with Sketch. 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | -------------------------------------------------------------------------------- /public/static/icons/SVG/modalicon/m4.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Created with Sketch. 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /public/static/icons/SVG/modalicon/m5.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Created with Sketch. 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | -------------------------------------------------------------------------------- /public/static/icons/SVG/modalicon/m6.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Created with Sketch. 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /public/static/icons/SVG/new-file.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Created with Sketch. 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /public/static/icons/SVG/save-file.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Created with Sketch. 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | -------------------------------------------------------------------------------- /public/static/icons/administrator.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/icons/administrator.png -------------------------------------------------------------------------------- /public/static/icons/arduino_esp32/advanced/mqtt/1122395.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | -------------------------------------------------------------------------------- /public/static/icons/arduino_esp32/advanced/mqtt/148832.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 5 | 10 | 12 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | -------------------------------------------------------------------------------- /public/static/icons/arduino_esp32/advanced/mqtt/148833.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 5 | 10 | 12 | 14 | 15 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | -------------------------------------------------------------------------------- /public/static/icons/arduino_esp32/advanced/mqtt/148834.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 5 | 10 | 12 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | -------------------------------------------------------------------------------- /public/static/icons/arduino_esp32/advanced/mqtt/234158.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 5 | 6 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | -------------------------------------------------------------------------------- /public/static/icons/banana.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/icons/banana.png -------------------------------------------------------------------------------- /public/static/icons/bh1680.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/icons/bh1680.png -------------------------------------------------------------------------------- /public/static/icons/bh1745.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/icons/bh1745.jpg -------------------------------------------------------------------------------- /public/static/icons/bh1745.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/icons/bh1745.png -------------------------------------------------------------------------------- /public/static/icons/bme280.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/icons/bme280.png -------------------------------------------------------------------------------- /public/static/icons/bmx055.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/icons/bmx055.png -------------------------------------------------------------------------------- /public/static/icons/boy.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/icons/boy.png -------------------------------------------------------------------------------- /public/static/icons/buzzer.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/icons/buzzer.png -------------------------------------------------------------------------------- /public/static/icons/calculator.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/icons/calculator.png -------------------------------------------------------------------------------- /public/static/icons/chip.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/icons/chip.png -------------------------------------------------------------------------------- /public/static/icons/coding_256.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/icons/coding_256.png -------------------------------------------------------------------------------- /public/static/icons/display.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/icons/display.png -------------------------------------------------------------------------------- /public/static/icons/dual.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/icons/dual.png -------------------------------------------------------------------------------- /public/static/icons/dual2_128.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/icons/dual2_128.png -------------------------------------------------------------------------------- /public/static/icons/dual2_128_wbg.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/icons/dual2_128_wbg.png -------------------------------------------------------------------------------- /public/static/icons/dual_wbg.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/icons/dual_wbg.png -------------------------------------------------------------------------------- /public/static/icons/fullscreen.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/icons/fullscreen.png -------------------------------------------------------------------------------- /public/static/icons/icons8_123_96px.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/icons/icons8_123_96px.png -------------------------------------------------------------------------------- /public/static/icons/icons8_Story_Time_96px.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/icons/icons8_Story_Time_96px.png -------------------------------------------------------------------------------- /public/static/icons/icons8_bluetooth_2_26px.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/icons/icons8_bluetooth_2_26px.png -------------------------------------------------------------------------------- /public/static/icons/icons8_bluetooth_2_48px.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/icons/icons8_bluetooth_2_48px.png -------------------------------------------------------------------------------- /public/static/icons/icons8_bluetooth_2_96px.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/icons/icons8_bluetooth_2_96px.png -------------------------------------------------------------------------------- /public/static/icons/icons8_compare_96px.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/icons/icons8_compare_96px.png -------------------------------------------------------------------------------- /public/static/icons/icons8_disconnected_96px.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/icons/icons8_disconnected_96px.png -------------------------------------------------------------------------------- /public/static/icons/icons8_electronics_96px.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/icons/icons8_electronics_96px.png -------------------------------------------------------------------------------- /public/static/icons/icons8_exercise_96px.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/icons/icons8_exercise_96px.png -------------------------------------------------------------------------------- /public/static/icons/icons8_genealogy_96px.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/icons/icons8_genealogy_96px.png -------------------------------------------------------------------------------- /public/static/icons/icons8_hacker_128px.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/icons/icons8_hacker_128px.png -------------------------------------------------------------------------------- /public/static/icons/icons8_idea_96px.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/icons/icons8_idea_96px.png -------------------------------------------------------------------------------- /public/static/icons/icons8_math_96px.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/icons/icons8_math_96px.png -------------------------------------------------------------------------------- /public/static/icons/icons8_module_96px.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/icons/icons8_module_96px.png -------------------------------------------------------------------------------- /public/static/icons/icons8_move_24px.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/icons/icons8_move_24px.png -------------------------------------------------------------------------------- /public/static/icons/icons8_musical_notes_96px.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/icons/icons8_musical_notes_96px.png -------------------------------------------------------------------------------- /public/static/icons/icons8_network_cable_filled_50px.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/icons/icons8_network_cable_filled_50px.png -------------------------------------------------------------------------------- /public/static/icons/icons8_picture_96px_1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/icons/icons8_picture_96px_1.png -------------------------------------------------------------------------------- /public/static/icons/icons8_process_96px.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/icons/icons8_process_96px.png -------------------------------------------------------------------------------- /public/static/icons/icons8_repeat_96px.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/icons/icons8_repeat_96px.png -------------------------------------------------------------------------------- /public/static/icons/icons8_serial_tasks_96px.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/icons/icons8_serial_tasks_96px.png -------------------------------------------------------------------------------- /public/static/icons/icons8_stack_96px.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/icons/icons8_stack_96px.png -------------------------------------------------------------------------------- /public/static/icons/icons8_text_color_96px.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/icons/icons8_text_color_96px.png -------------------------------------------------------------------------------- /public/static/icons/icons8_thermometer_96px.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/icons/icons8_thermometer_96px.png -------------------------------------------------------------------------------- /public/static/icons/icons8_thermometer_automation_96px.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/icons/icons8_thermometer_automation_96px.png -------------------------------------------------------------------------------- /public/static/icons/icons8_variable_96px.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/icons/icons8_variable_96px.png -------------------------------------------------------------------------------- /public/static/icons/icons8_wifi_26px.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/icons/icons8_wifi_26px.png -------------------------------------------------------------------------------- /public/static/icons/icons8_wifi_logo_24px.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/icons/icons8_wifi_logo_24px.png -------------------------------------------------------------------------------- /public/static/icons/icons8_wifi_router_60px.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/icons/icons8_wifi_router_60px.png -------------------------------------------------------------------------------- /public/static/icons/icons8_wifi_router_96px.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/icons/icons8_wifi_router_96px.png -------------------------------------------------------------------------------- /public/static/icons/icons8_workflow_128px.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/icons/icons8_workflow_128px.png -------------------------------------------------------------------------------- /public/static/icons/jigsaw_128.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/icons/jigsaw_128.png -------------------------------------------------------------------------------- /public/static/icons/jigsaw_128_wbg.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/icons/jigsaw_128_wbg.png -------------------------------------------------------------------------------- /public/static/icons/jigsaw_256.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/icons/jigsaw_256.png -------------------------------------------------------------------------------- /public/static/icons/kid.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/icons/kid.png -------------------------------------------------------------------------------- /public/static/icons/ldr.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/icons/ldr.png -------------------------------------------------------------------------------- /public/static/icons/ldr1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/icons/ldr1.png -------------------------------------------------------------------------------- /public/static/icons/led.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/icons/led.png -------------------------------------------------------------------------------- /public/static/icons/minus.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/icons/minus.png -------------------------------------------------------------------------------- /public/static/icons/mqtt.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/icons/mqtt.png -------------------------------------------------------------------------------- /public/static/icons/nerd.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/icons/nerd.png -------------------------------------------------------------------------------- /public/static/icons/plus.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/icons/plus.png -------------------------------------------------------------------------------- /public/static/icons/programmer.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/icons/programmer.png -------------------------------------------------------------------------------- /public/static/icons/programmer2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/icons/programmer2.png -------------------------------------------------------------------------------- /public/static/icons/programmer3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/icons/programmer3.png -------------------------------------------------------------------------------- /public/static/icons/programmer5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/icons/programmer5.png -------------------------------------------------------------------------------- /public/static/icons/relay.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/icons/relay.png -------------------------------------------------------------------------------- /public/static/icons/rgb_neopixel.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/icons/rgb_neopixel.png -------------------------------------------------------------------------------- /public/static/icons/sd-card.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/icons/sd-card.png -------------------------------------------------------------------------------- /public/static/icons/serialport.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/icons/serialport.png -------------------------------------------------------------------------------- /public/static/icons/shift_down_24px.svg: -------------------------------------------------------------------------------- 1 | 2 | 18 | 20 | 21 | 23 | image/svg+xml 24 | 26 | 27 | 28 | 29 | 30 | 32 | 52 | 55 | 56 | 61 | 66 | 75 | 80 | 81 | -------------------------------------------------------------------------------- /public/static/icons/shift_left_24px.svg: -------------------------------------------------------------------------------- 1 | 2 | 18 | 20 | 21 | 23 | image/svg+xml 24 | 26 | 27 | 28 | 29 | 31 | 51 | 54 | 55 | 60 | 64 | 72 | 77 | 78 | -------------------------------------------------------------------------------- /public/static/icons/shift_right_24px.svg: -------------------------------------------------------------------------------- 1 | 2 | 18 | 20 | 21 | 23 | image/svg+xml 24 | 26 | 27 | 28 | 29 | 31 | 51 | 54 | 55 | 60 | 65 | 74 | 79 | 80 | -------------------------------------------------------------------------------- /public/static/icons/shift_up_24px.svg: -------------------------------------------------------------------------------- 1 | 2 | 18 | 20 | 21 | 23 | image/svg+xml 24 | 26 | 27 | 28 | 29 | 30 | 32 | 52 | 55 | 56 | 61 | 66 | 75 | 80 | 81 | -------------------------------------------------------------------------------- /public/static/icons/sot23-6.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/icons/sot23-6.png -------------------------------------------------------------------------------- /public/static/icons/sot23-6_1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/icons/sot23-6_1.png -------------------------------------------------------------------------------- /public/static/icons/source-code.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/icons/source-code.png -------------------------------------------------------------------------------- /public/static/icons/source-code2_128.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/icons/source-code2_128.png -------------------------------------------------------------------------------- /public/static/icons/source-code2_128_wbg.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/icons/source-code2_128_wbg.png -------------------------------------------------------------------------------- /public/static/icons/source-code2_256.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/icons/source-code2_256.png -------------------------------------------------------------------------------- /public/static/icons/student2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/icons/student2.png -------------------------------------------------------------------------------- /public/static/icons/sw12x12.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/icons/sw12x12.png -------------------------------------------------------------------------------- /public/static/icons/usb_con.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/icons/usb_con.png -------------------------------------------------------------------------------- /public/static/images/noimage.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/images/noimage.jpg -------------------------------------------------------------------------------- /public/static/logo/KBIDE.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/logo/KBIDE.png -------------------------------------------------------------------------------- /public/static/logo/broccoli.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/logo/broccoli.png -------------------------------------------------------------------------------- /public/static/logo/kidcom_128.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/logo/kidcom_128.png -------------------------------------------------------------------------------- /public/static/logo/logo1-resized.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/logo/logo1-resized.png -------------------------------------------------------------------------------- /public/static/logo/logo2-resized.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/logo/logo2-resized.png -------------------------------------------------------------------------------- /public/static/logo/logo3-resized.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/logo/logo3-resized.png -------------------------------------------------------------------------------- /public/static/logo/logo5-100px.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/public/static/logo/logo5-100px.png -------------------------------------------------------------------------------- /src/background.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | 3 | import {app, protocol, BrowserWindow, ipcMain} from "electron"; 4 | import { 5 | createProtocol, 6 | installVueDevtools 7 | } from "vue-cli-plugin-electron-builder/lib"; 8 | const path = require("path"); 9 | 10 | const isDevelopment = process.env.NODE_ENV !== "production"; 11 | 12 | // Keep a global reference of the window object, if you don't, the window will 13 | // be closed automatically when the JavaScript object is garbage collected. 14 | let win; 15 | 16 | // Standard scheme must be registered before the app is ready 17 | protocol.registerStandardSchemes(["app"], { secure: true }); 18 | 19 | function createWindow() { 20 | win = new BrowserWindow({ 21 | width: 800, 22 | height: 600, 23 | icon: path.join(__static, "icon.png"), 24 | webPreferences: { //TODO check here! 25 | webSecurity: false 26 | } 27 | }); 28 | win.maximize(); 29 | if (process.env.WEBPACK_DEV_SERVER_URL) { 30 | // Load the url of the dev server if in development mode 31 | win.loadURL(process.env.WEBPACK_DEV_SERVER_URL); 32 | //if (!process.env.IS_TEST) win.webContents.openDevTools() 33 | } else { 34 | createProtocol("app"); 35 | // Load the index.html when not in development 36 | win.loadURL("app://./index.html"); 37 | } 38 | //win.webContents.openDevTools()//<<<<<<<<<<<< 39 | win.on("closed", () => { 40 | win = null; 41 | }); 42 | } 43 | 44 | // Quit when all windows are closed. 45 | app.on("window-all-closed", () => { 46 | // On macOS it is common for applications and their menu bar 47 | // to stay active until the user quits explicitly with Cmd + Q 48 | if (process.platform !== "darwin") { 49 | app.quit(); 50 | } 51 | }); 52 | 53 | app.on("activate", () => { 54 | // On macOS it's common to re-create a window in the app when the 55 | // dock icon is clicked and there are no other windows open. 56 | if (win === null) { 57 | createWindow(); 58 | } 59 | }); 60 | 61 | // This method will be called when Electron has finished 62 | // initialization and is ready to create browser windows. 63 | // Some APIs can only be used after this event occurs. 64 | app.on("ready", async () => { 65 | if (isDevelopment && !process.env.IS_TEST) { 66 | // Install Vue Devtools 67 | await installVueDevtools(); 68 | } 69 | createWindow(); 70 | }); 71 | 72 | // Exit cleanly on request from parent process in development mode. 73 | if (isDevelopment) { 74 | if (process.platform === "win32") { 75 | process.on("message", data => { 76 | if (data === "graceful-exit") { 77 | app.quit(); 78 | } 79 | }); 80 | } else { 81 | process.on("SIGTERM", () => { 82 | app.quit(); 83 | }); 84 | } 85 | } 86 | 87 | ipcMain.on("update-restart", () => { 88 | app.relaunch(); 89 | app.exit(0); 90 | }); 91 | //====== create menu =======// 92 | require("./menu"); 93 | -------------------------------------------------------------------------------- /src/engine/AsyncComponent.vue: -------------------------------------------------------------------------------- 1 | 4 | 5 | -------------------------------------------------------------------------------- /src/engine/Compiler.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MakerAsia/KBProIDE/3d7992d95a6a7c2501e938908aede7ff4c8c1661/src/engine/Compiler.js -------------------------------------------------------------------------------- /src/engine/ComponentManager.js: -------------------------------------------------------------------------------- 1 | import utils from '@/engine/utils'; 2 | let listedComponents = {}; 3 | 4 | let listComponent = function(){ 5 | let res = require.context('./components', true, /^\.\/.*?\.(vue|js)$/); //<<< "./component" must fix value, cannot use dynamic variable in webpack naja!!!! 6 | let context = {}; 7 | res.keys().forEach(element => { 8 | let tmp = (/\.\/([_A-Za-z0-9]+)\/([A-Za-z0-9]+)\.(vue|js)$/g).exec(element); 9 | if(tmp != null && tmp.length == 4){ 10 | let fullPath = tmp[0]; 11 | let name = tmp[1]; 12 | let componentName = tmp[2]; 13 | let type = tmp[3]; 14 | if (!(name in context)){//existing key 15 | context[name] = {}; 16 | } 17 | if(type === 'vue'){ 18 | context[name][componentName] = './components/'+name+'/'+componentName; 19 | } 20 | if(type === 'js' && componentName === 'config'){ 21 | context[name]['config'] = require('./components/'+name+'/'+componentName).default; 22 | } 23 | } 24 | }); 25 | //sort menu by config index 26 | let orderedContext = {}; 27 | Object.keys(context).sort(function(a,b) { 28 | if(context[a].config && context[b].config){ 29 | if('index' in context[a].config && 'index' in context[b].config) 30 | return context[a].config.index - context[b].config.index; 31 | } 32 | return 0; 33 | }).forEach(function(key) { 34 | orderedContext[key] = context[key]; 35 | }); 36 | if(components) 37 | return orderedContext; 38 | }; 39 | 40 | let components = function(){ 41 | if(Object.entries(listedComponents).length === 0 && listedComponents.constructor === Object){ // check empty object !!! 42 | listedComponents = listComponent(); 43 | } 44 | return listedComponents; 45 | }; 46 | export default { 47 | components, 48 | listComponent, 49 | listToolbar : utils.filterFileName(components(),'Toolbar'), 50 | listActionbar : utils.filterFileName(components(),'Actionbar'), 51 | listPage : utils.filterFileName(components(),'Page'), 52 | listLeftDrawer : utils.filterFileName(components(),'LeftDrawer'), 53 | listRightDrawer : utils.filterFileName(components(),'RightDrawer'), 54 | listBottomPanel : utils.filterFileName(components(),'BottomPanel'), 55 | listRightTab : utils.filterFileName(components(),'RightTab'), 56 | listBottomTab : utils.filterFileName(components(),'BottomTab'), 57 | listSetting : utils.filterFileName(components(),'Setting'), 58 | load : ()=>{ 59 | 60 | }, 61 | install : (namespace)=>{ 62 | 63 | }, 64 | remove : (namespace)=>{ 65 | 66 | }, 67 | update : (namespace)=>{ 68 | 69 | } 70 | } 71 | -------------------------------------------------------------------------------- /src/engine/components/board_selector/config.js: -------------------------------------------------------------------------------- 1 | export default { 2 | name : 'board_selector', 3 | description : "no have", 4 | index : 1, 5 | tooltip : 'Board Manager', 6 | persistence:{ 7 | sortby : 'recommended', 8 | }, 9 | data:{ 10 | //saved : false, 11 | } 12 | } -------------------------------------------------------------------------------- /src/engine/components/editor/ActionbarNewFile.vue: -------------------------------------------------------------------------------- 1 | 9 | 75 | -------------------------------------------------------------------------------- /src/engine/components/editor/ActionbarSaveFile.vue: -------------------------------------------------------------------------------- 1 | 9 | 10 | -------------------------------------------------------------------------------- /src/engine/components/editor/config.js: -------------------------------------------------------------------------------- 1 | const path = require("path"); 2 | const rootDir = __dirname; // require('electron-root-path').rootPath; 3 | 4 | let baseDir = ""; 5 | 6 | if (process.env.NODE_ENV === "development") { 7 | if (process.platform === "win32") { 8 | baseDir = rootDir + "/../../../../../.."; 9 | } else if (process.platform === "darwin") { 10 | baseDir = rootDir + "/../../../../../../../.."; 11 | } else if (process.platform === "linux") { 12 | baseDir = rootDir + "/../../../../../.."; 13 | } 14 | } else { 15 | if (process.platform === "win32") { 16 | baseDir = rootDir + "/../.."; 17 | } else if (process.platform === "darwin") { 18 | baseDir = rootDir + "/../.."; 19 | } else if (process.platform === "linux") { 20 | baseDir = rootDir + "/../.."; 21 | } 22 | } 23 | 24 | baseDir = path.resolve(baseDir); 25 | 26 | export default { 27 | name: "editor", 28 | index: 0, 29 | description: "no have", 30 | tooltip: "Change Editor", 31 | persistence: { 32 | mode: 1, 33 | blockCode: "", 34 | sourceCode: "", 35 | previewSourceCode : "", 36 | rawCode: "", 37 | rawCodeMode: false, 38 | rollbackMode: 0, 39 | fontSize: "24", 40 | theme: "vs-dark", 41 | editor_options: { 42 | automaticLayout: true, 43 | lineNumbers: "on", 44 | scrollBeyondLastLine: false, 45 | readOnly: false 46 | }, 47 | clangFormatFrom: "clang_source.js", 48 | baseDir: baseDir, 49 | consoleDisplay: true 50 | }, 51 | data: { 52 | Blockly: null, 53 | workspace: null, 54 | CodeMirror: null, 55 | Editor: null 56 | } 57 | }; 58 | -------------------------------------------------------------------------------- /src/engine/components/editor/errorlint.js: -------------------------------------------------------------------------------- 1 | var GUTTER_ID = "CodeMirror-lint-markers"; 2 | 3 | function showTooltip(cm, e, content) { 4 | let tt = document.createElement("div"); 5 | tt.className = "CodeMirror-lint-tooltip"; 6 | tt.appendChild(content.cloneNode(true)); 7 | document.body.appendChild(tt); 8 | 9 | function position(e) { 10 | if (!tt.parentNode){ 11 | //return cm.off(document, "mousemove", position); 12 | document.onmouseover = null; 13 | } 14 | tt.style.top = Math.max(0, e.clientY - tt.offsetHeight - 5) + "px"; 15 | tt.style.left = (e.clientX + 5) + "px"; 16 | } 17 | //cm.on(document, "mousemove", position); 18 | document.onmouseover = position; 19 | position(e); 20 | if (tt.style.opacity != null) tt.style.opacity = 1; 21 | return tt; 22 | } 23 | function rm(elt) { 24 | if (elt.parentNode) elt.parentNode.removeChild(elt); 25 | } 26 | function hideTooltip(tt) { 27 | if (!tt.parentNode) return; 28 | if (tt.style.opacity == null) rm(tt); 29 | tt.style.opacity = 0; 30 | setTimeout(function() { rm(tt); }, 600); 31 | } 32 | 33 | function showTooltipFor(cm, e, content, node) { 34 | let tooltip = showTooltip(cm,e, content); 35 | function hide() { 36 | //cm.off(node, "mouseout", hide); 37 | node.onmouseout = null; 38 | if (tooltip) { hideTooltip(tooltip); tooltip = null; } 39 | } 40 | let poll = setInterval(function() { 41 | if (tooltip) for (let n = node;; n = n.parentNode) { 42 | if (n && n.nodeType === 11) n = n.host; 43 | if (n === document.body) return; 44 | if (!n) { hide(); break; } 45 | } 46 | if (!tooltip) return clearInterval(poll); 47 | }, 400); 48 | //cm.on(node, "mouseout", hide); 49 | node.onmouseout = hide; 50 | } 51 | 52 | function clearMarks(cm) { 53 | /*let state = cm.state.lint; 54 | if (state && state.hasGutter) cm.clearGutter(GUTTER_ID); 55 | for (var i = 0; i < state.marked.length; ++i) 56 | state.marked[i].clear(); 57 | state.marked.length = 0;*/ 58 | } 59 | 60 | function makeMarker(cm, labels, severity, multiple, tooltips) { 61 | let marker = document.createElement("div"), inner = marker; 62 | marker.className = "CodeMirror-lint-marker-" + severity; 63 | if (multiple) { 64 | inner = marker.appendChild(document.createElement("div")); 65 | inner.className = "CodeMirror-lint-marker-multiple"; 66 | } 67 | 68 | if (tooltips !== false){ 69 | inner.onmouseover = function(e) { 70 | showTooltipFor(cm, e, labels, inner); 71 | } 72 | } 73 | return marker; 74 | } 75 | 76 | export default { 77 | GUTTER_ID, 78 | makeMarker, 79 | clearMarks, 80 | marked : [] 81 | } -------------------------------------------------------------------------------- /src/engine/components/examples/config.js: -------------------------------------------------------------------------------- 1 | export default { 2 | name : 'example_manager', 3 | description : "no have", 4 | index : 4, 5 | tooltip : 'Example Manager', 6 | data:{ 7 | pluginInfo : null, 8 | } 9 | } -------------------------------------------------------------------------------- /src/engine/components/package/config.js: -------------------------------------------------------------------------------- 1 | export default { 2 | name : 'package_manager', 3 | description : "no have", 4 | index : 2, 5 | tooltip : 'Package Manager', 6 | data:{ 7 | packageInfo : null, 8 | }, 9 | persistence:{ 10 | sortby : 'Recommended', 11 | }, 12 | } 13 | -------------------------------------------------------------------------------- /src/engine/components/plugin/config.js: -------------------------------------------------------------------------------- 1 | export default { 2 | name : 'plugin_manager', 3 | description : "no have", 4 | index : 2, 5 | tooltip : 'Plugin Manager', 6 | data:{ 7 | pluginInfo : null, 8 | }, 9 | persistence:{ 10 | sortby : 'Recommended', 11 | }, 12 | } -------------------------------------------------------------------------------- /src/engine/components/raw_code/ToolbarRawCodeToggle.vue: -------------------------------------------------------------------------------- 1 | 10 | 11 | 20 | 21 | -------------------------------------------------------------------------------- /src/engine/components/raw_code/config.js: -------------------------------------------------------------------------------- 1 | export default { 2 | name : 'row_code', 3 | description : "no have", 4 | index : 6, 5 | tooltip : '', 6 | persistence:{ 7 | 8 | }, 9 | data:{ 10 | //saved : false, 11 | } 12 | } -------------------------------------------------------------------------------- /src/engine/components/setting/ToolbarSetting.vue: -------------------------------------------------------------------------------- 1 | 13 | 21 | -------------------------------------------------------------------------------- /src/engine/components/setting/config.js: -------------------------------------------------------------------------------- 1 | export default { 2 | name : 'setting', 3 | index : 5, 4 | description : "no have", 5 | tooltip : 'Setting', 6 | persistence:{ 7 | color : '', 8 | rightSeparator : 80, 9 | devMode : false, 10 | ignoreUpdateVersion : '', 11 | ignorePlatformVersion : '', 12 | ignoreUpdateVersionID : -1, 13 | firstUse : true 14 | }, 15 | data:{ 16 | rightDrawer : false, 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /src/engine/plugins/vuetify.js: -------------------------------------------------------------------------------- 1 | import Vue from 'vue' 2 | //import Vuetify from 'vuetify/lib' 3 | import Vuetify from 'vuetify' 4 | 5 | import 'vuetify/src/stylus/app.styl' 6 | import '../../theme/default.styl' 7 | 8 | import VuetifyDialog from 'vuetify-dialog' 9 | 10 | Vue.use(Vuetify, { 11 | theme: { 12 | primary: '#ee44aa', 13 | secondary: '#424242', 14 | accent: '#82B1FF', 15 | error: '#FF5252', 16 | info: '#2196F3', 17 | success: '#4CAF50', 18 | warning: '#FFC107' 19 | }, 20 | customProperties: true, 21 | iconfont: 'fa', 22 | }) 23 | 24 | 25 | Vue.use(VuetifyDialog); 26 | -------------------------------------------------------------------------------- /src/engine/utils/blockly.js: -------------------------------------------------------------------------------- 1 | export default { 2 | floyd_steinberg: function(imageData, w) { 3 | var imageDataLength = imageData.length; 4 | var lumR = [], 5 | lumG = [], 6 | lumB = []; 7 | var newPixel, err; 8 | var i; 9 | for (i = 0; i < 256; i++) { 10 | lumR[i] = i * 0.299; 11 | lumG[i] = i * 0.587; 12 | lumB[i] = i * 0.110; 13 | } 14 | // Greyscale luminance (sets r pixels to luminance of rgb) 15 | for (i = 0; i <= imageDataLength; i += 4) { 16 | imageData[i] = Math.floor(lumR[imageData[i]] + lumG[imageData[i + 1]] + 17 | lumB[imageData[i + 2]]); 18 | } 19 | for (let currentPixel = 0; currentPixel <= 20 | imageDataLength; currentPixel += 4) { 21 | // threshold for determining current pixel's conversion to a black or white pixel 22 | newPixel = imageData[currentPixel] < 150 23 | ? 0 24 | : 255; 25 | err = Math.floor((imageData[currentPixel] - newPixel) / 23); 26 | imageData[currentPixel + 0 * 1 - 0] = newPixel; 27 | imageData[currentPixel + 4 * 1 - 0] += err * 7; 28 | imageData[currentPixel + 4 * w - 4] += err * 3; 29 | imageData[currentPixel + 4 * w - 0] += err * 5; 30 | imageData[currentPixel + 4 * w + 4] += err * 1; 31 | // Set g and b values equal to r (effectively greyscales the image fully) 32 | imageData[currentPixel + 1] = imageData[currentPixel + 33 | 2] = imageData[currentPixel]; 34 | } 35 | return imageData; 36 | }, 37 | hexToRgbA: function(hex) { 38 | var c; 39 | console.log(`hexToRgbA called with ${hex}`); 40 | if (/^#([A-Fa-f0-9]{3}){1,2}$/.test(hex)) { 41 | c = hex.substring(1).split(""); 42 | if (c.length == 3) { 43 | c = [c[0], c[0], c[1], c[1], c[2], c[2]]; 44 | } 45 | c = "0x" + c.join(""); 46 | return [(c >> 16) & 255, (c >> 8) & 255, c & 255]; 47 | } else { 48 | console.error(`${hex} is invalid.`); 49 | } 50 | } 51 | }; 52 | -------------------------------------------------------------------------------- /src/engine/utils/codeformat.js: -------------------------------------------------------------------------------- 1 | //./clang-format -style='{AllowShortFunctionsOnASingleLine : None , BreakBeforeBraces: GNU}' notbeautiful.c 2 | -------------------------------------------------------------------------------- /src/engine/utils/compiler.js: -------------------------------------------------------------------------------- 1 | export default { 2 | parseError: (err) => { 3 | return new Promise((resolve, reject) => { 4 | let errors = []; 5 | if (err.error) { 6 | errors = err.error.stderr.split("\n"). 7 | filter(v => v.indexOf("user_app.cpp") > -1). 8 | map(v => v.split("user_app.cpp:")[1]); 9 | Vue.prototype.$global.$emit("compiler-error", errors); 10 | resolve(errors); 11 | } else { 12 | reject(`no err.error`, err); 13 | } 14 | }); 15 | }, 16 | }; 17 | -------------------------------------------------------------------------------- /src/engine/utils/file.js: -------------------------------------------------------------------------------- 1 | 2 | export default { 3 | 4 | } -------------------------------------------------------------------------------- /src/engine/utils/regex-parser.js: -------------------------------------------------------------------------------- 1 | export default { 2 | isValidGithubUrl: (url) => { 3 | return (/^http(s)?:\/\/(www\.)?github\.com\/[\.\_\-0-9A-Za-z]+\/[\.\_\-0-9A-Za-z]+\/$/g).test( 4 | url); 5 | }, 6 | }; 7 | -------------------------------------------------------------------------------- /src/engine/utils/ui.js: -------------------------------------------------------------------------------- 1 | export default { 2 | colorLuminance : (hex, lum) => { 3 | hex = String(hex).replace(/[^0-9a-f]/gi, ''); 4 | if (hex.length < 6) { 5 | hex = hex[0]+hex[0]+hex[1]+hex[1]+hex[2]+hex[2]; 6 | } 7 | lum = lum || 0; 8 | var rgb = "#", c, i; 9 | for (i = 0; i < 3; i++) { 10 | c = parseInt(hex.substr(i*2,2), 16); 11 | c = Math.round(Math.min(Math.max(0, c + (c * lum)), 255)).toString(16); 12 | rgb += ("00"+c).substr(c.length); 13 | } 14 | return rgb; 15 | } 16 | } -------------------------------------------------------------------------------- /src/engine/views/VWidget.vue: -------------------------------------------------------------------------------- 1 | 16 | 17 | 44 | -------------------------------------------------------------------------------- /src/engine/views/dialog/VariableNamingDialog.vue: -------------------------------------------------------------------------------- 1 | 27 | 62 | -------------------------------------------------------------------------------- /src/engine/views/page/Deny.vue: -------------------------------------------------------------------------------- 1 | 19 | 20 | 29 | 38 | -------------------------------------------------------------------------------- /src/engine/views/page/Error.vue: -------------------------------------------------------------------------------- 1 | 19 | 20 | 29 | 38 | -------------------------------------------------------------------------------- /src/engine/views/page/Login.vue: -------------------------------------------------------------------------------- 1 | 38 | 39 | 60 | 71 | -------------------------------------------------------------------------------- /src/engine/views/page/NotFound.vue: -------------------------------------------------------------------------------- 1 | 16 | 17 | 26 | 35 | -------------------------------------------------------------------------------- /src/engine/views/widgets/list/SmoothScrollbar.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 57 | 58 | -------------------------------------------------------------------------------- /src/engine/views/widgets/piano/Piano.vue: -------------------------------------------------------------------------------- 1 | 8 | 9 | 30 | 31 | 32 | -------------------------------------------------------------------------------- /src/engine/views/widgets/piano/PianoKey.vue: -------------------------------------------------------------------------------- 1 | 7 | 8 | 35 | 36 | -------------------------------------------------------------------------------- /src/engine/views/widgets/piano/midikey.js: -------------------------------------------------------------------------------- 1 | export default [ 2 | { text : "C2"}, 3 | { text : "C#2"}, 4 | { text : "D2"}, 5 | { text : "D#2"}, 6 | { text : "E2"}, 7 | { text : "F2"}, 8 | { text : "F#2"}, 9 | { text : "G2"}, 10 | { text : "G#2"}, 11 | { text : "A2"}, 12 | { text : "A#2"}, 13 | { text : "B2"}, 14 | 15 | { text : "C3"}, 16 | { text : "C#3"}, 17 | { text : "D3"}, 18 | { text : "D#3"}, 19 | { text : "E3"}, 20 | { text : "F3"}, 21 | { text : "F#3"}, 22 | { text : "G3"}, 23 | { text : "G#3"}, 24 | { text : "A3"}, 25 | { text : "A#3"}, 26 | { text : "B3"}, 27 | 28 | { text : "C4"}, 29 | { text : "C#4"}, 30 | { text : "D4"}, 31 | { text : "D#4"}, 32 | { text : "E4"}, 33 | { text : "F4"}, 34 | { text : "F#4"}, 35 | { text : "G4"}, 36 | { text : "G#4"}, 37 | { text : "A4"}, 38 | { text : "A#4"}, 39 | { text : "B4"}, 40 | 41 | { text : "C5"}, 42 | { text : "C#5"}, 43 | { text : "D5"}, 44 | { text : "D#5"}, 45 | { text : "E5"}, 46 | { text : "F5"}, 47 | { text : "F#5"}, 48 | { text : "G5"}, 49 | { text : "G#5"}, 50 | { text : "A5"}, 51 | { text : "A#5"}, 52 | { text : "B5"}, 53 | /* 54 | { text : "C6"}, 55 | { text : "C#6"}, 56 | { text : "D6"}, 57 | { text : "D#6"}, 58 | { text : "E6"}, 59 | { text : "F6"}, 60 | { text : "F#6"}, 61 | { text : "G6"}, 62 | { text : "G#6"}, 63 | { text : "A6"}, 64 | { text : "A#6"}, 65 | { text : "B6"}*/ 66 | ] -------------------------------------------------------------------------------- /src/event.js: -------------------------------------------------------------------------------- 1 | export default [ 2 | { 3 | name: 'APP_LOGIN_SUCCESS', 4 | callback: function (e) { 5 | this.$router.push({ path: 'dashboard' }); 6 | } 7 | }, 8 | { 9 | name: 'APP_LOGOUT', 10 | callback: function (e) { 11 | this.snackbar = { 12 | show: true, 13 | color: 'green', 14 | text: 'Logout successfully.' 15 | }; 16 | this.$router.replace({ path: '/login' }); 17 | } 18 | }, 19 | { 20 | name: 'APP_PAGE_LOADED', 21 | callback: function (e) { 22 | } 23 | }, 24 | { 25 | name: 'APP_AUTH_FAILED', 26 | callback: function (e) { 27 | this.$router.push('/login'); 28 | this.$message.error('Token has expired'); 29 | } 30 | }, 31 | { 32 | name: 'APP_BAD_REQUEST', 33 | // @error api response data 34 | callback: function (msg) { 35 | this.$message.error(msg); 36 | } 37 | }, 38 | { 39 | name: 'APP_ACCESS_DENIED', 40 | // @error api response data 41 | callback: function (msg) { 42 | this.$message.error(msg); 43 | this.$router.push('/forbidden'); 44 | } 45 | }, 46 | { 47 | name: 'APP_RESOURCE_DELETED', 48 | // @error api response data 49 | callback: function (msg) { 50 | this.$message.success(msg); 51 | } 52 | }, 53 | { 54 | name: 'APP_RESOURCE_UPDATED', 55 | // @error api response data 56 | callback: function (msg) { 57 | this.$message.success(msg); 58 | } 59 | }, 60 | 61 | ]; 62 | -------------------------------------------------------------------------------- /src/registerServiceWorker.js: -------------------------------------------------------------------------------- 1 | /* eslint-disable no-console */ 2 | 3 | import { register } from "register-service-worker"; 4 | 5 | if (process.env.NODE_ENV === "production") { 6 | register(`${process.env.BASE_URL}service-worker.js`, { 7 | ready() { 8 | console.log( 9 | "App is being served from cache by a service worker.\n" + 10 | "For more details, visit https://goo.gl/AFskqB" 11 | ); 12 | }, 13 | registered() { 14 | console.log("Service worker has been registered."); 15 | }, 16 | cached() { 17 | console.log("Content has been cached for offline use."); 18 | }, 19 | updatefound() { 20 | console.log("New content is downloading."); 21 | }, 22 | updated() { 23 | console.log("New content is available; please refresh."); 24 | }, 25 | offline() { 26 | console.log( 27 | "No internet connection found. App is running in offline mode." 28 | ); 29 | }, 30 | error(error) { 31 | console.error("Error during service worker registration:", error); 32 | } 33 | }); 34 | } 35 | -------------------------------------------------------------------------------- /src/router/index.js: -------------------------------------------------------------------------------- 1 | import Vue from 'vue'; 2 | import Router from 'vue-router'; 3 | import paths from './paths'; 4 | import NProgress from 'nprogress'; 5 | import 'nprogress/nprogress.css'; 6 | 7 | Vue.use(Router); 8 | const router = new Router({ 9 | base: '/', 10 | mode: 'hash', 11 | linkActiveClass: 'active', 12 | routes: paths 13 | }); 14 | // router gards 15 | router.beforeEach((to, from, next) => { 16 | NProgress.start(); 17 | next(); 18 | }); 19 | 20 | router.afterEach((to, from) => { 21 | NProgress.done(); 22 | }); 23 | 24 | export default router; 25 | -------------------------------------------------------------------------------- /src/router/paths.js: -------------------------------------------------------------------------------- 1 | export default [ 2 | { 3 | path: '*', 4 | meta: { 5 | public: true, 6 | }, 7 | redirect: { 8 | path: '/404' 9 | } 10 | }, 11 | { 12 | path: '/404', 13 | meta: { 14 | public: true, 15 | }, 16 | name: 'NotFound', 17 | component: () => import( 18 | `@/engine/views/page/NotFound.vue` 19 | ) 20 | }, 21 | { 22 | path: '/403', 23 | meta: { 24 | public: true, 25 | }, 26 | name: 'AccessDenied', 27 | component: () => import( 28 | `@/engine/views/page/Deny.vue` 29 | ) 30 | }, 31 | { 32 | path: '/500', 33 | meta: { 34 | public: true, 35 | }, 36 | name: 'ServerError', 37 | component: () => import( 38 | `@/engine/views/page/Error.vue` 39 | ) 40 | }, 41 | { 42 | path: '/login', 43 | meta: { 44 | public: true, 45 | }, 46 | name: 'Login', 47 | component: () => import( 48 | `@/engine/views/page/Login.vue` 49 | ) 50 | }, 51 | { 52 | path: '/', 53 | meta: { }, 54 | name: 'Root', 55 | redirect: { 56 | name: 'Editor' 57 | } 58 | }, 59 | { 60 | path: '/editor', 61 | meta: { breadcrumb: false ,hide_drawer: true }, 62 | name: 'Editor', 63 | component: () => import( 64 | `@/engine/components/editor/Page.vue` 65 | ) 66 | } 67 | ]; 68 | -------------------------------------------------------------------------------- /src/store.js: -------------------------------------------------------------------------------- 1 | import Vue from "vue"; 2 | import Vuex from "vuex"; 3 | 4 | Vue.use(Vuex); 5 | 6 | export default new Vuex.Store({ 7 | state: { 8 | rawCode: { 9 | mode: false, 10 | rollbackMode: 0, 11 | display: false, 12 | } 13 | }, 14 | mutations: { 15 | rawCodeMode(state, data) { 16 | state.rawCode.mode = data; 17 | }, 18 | rollbackRawCode(state, data) { 19 | state.rawCode.rollbackMode = data; 20 | }, 21 | rawCodeToggleDisplay(state, data) { 22 | state.rawCode.display = data; 23 | } 24 | }, 25 | actions: { 26 | rawCodeMode(context, data) { 27 | context.commit('rawCodeMode', data); 28 | }, 29 | rollbackRawCode(context, data) { 30 | context.commit('rollbackRawCode', data); 31 | }, 32 | rawCodeToggleDisplay(context, data) { 33 | context.commit('rawCodeToggleDisplay', data); 34 | }, 35 | } 36 | }); 37 | -------------------------------------------------------------------------------- /src/theme/component-design.styl: -------------------------------------------------------------------------------- 1 | primary = #4285F4 !important 2 | success = #00C851 !important 3 | success-dark = #007E33 !important 4 | danger = #ff4444 !important 5 | white = #ffffff !important 6 | gray-400 = #d9d9d9 !important 7 | gray-800 = #8c8c8c !important 8 | 9 | .disabled 10 | background-color: gray-400 11 | color: white 12 | 13 | /* Start Background */ 14 | .bg-white 15 | background-color: white 16 | 17 | .bg-success 18 | background-color: success 19 | 20 | .bg-success-dark 21 | background-color: success-dark 22 | 23 | .bg-danger 24 | background-color: danger 25 | 26 | .bg-primary 27 | background-color: primary 28 | 29 | .bg-gray-400 30 | background-color: gray-400 31 | 32 | .bg-gray-800 33 | background-color: gray-800 34 | 35 | /* End Background */ 36 | 37 | /* Start Text */ 38 | .font-bold 39 | font-weight: bold 40 | 41 | .text-white 42 | color: white 43 | 44 | .text-gray 45 | color: gray 46 | 47 | .text-success 48 | color: success 49 | 50 | .text-success-dark 51 | color: success-dark 52 | 53 | .text-danger 54 | color: danger 55 | 56 | .text-primary 57 | color: primary 58 | 59 | .font-size-14 60 | font-size: 14px 61 | 62 | .font-size-16 63 | font-size: 16px 64 | 65 | .font-size-18 66 | font-size: 18px 67 | 68 | /* End Text */ 69 | 70 | /* Start Button */ 71 | 72 | .btn-success 73 | background-color: success 74 | color: white 75 | 76 | .btn-danger 77 | background-color: danger 78 | color: white 79 | 80 | .btn-primary 81 | background-color: primary 82 | color: white 83 | 84 | .btn-gray 85 | background-color: gray 86 | color: white 87 | 88 | .btn-gray-400 89 | background-color: gray-400 90 | color: white 91 | 92 | .btn-gray-800 93 | background-color: gray-800 94 | color: white 95 | 96 | /* End Button */ 97 | 98 | /* Start Layout */ 99 | .float-right 100 | float: right 101 | 102 | .text-right 103 | text-align: right 104 | 105 | .form-control 106 | border: 1px solid primary 107 | border-radius: 3px 108 | padding: 5px 10px 5px 10px 109 | width: 100% 110 | 111 | /* End Layout */ 112 | -------------------------------------------------------------------------------- /tests/unit/.eslintrc.js: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | env: { 3 | jest: true 4 | }, 5 | "globals": { 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /tests/unit/setup.js: -------------------------------------------------------------------------------- 1 | import Vue from 'vue' 2 | 3 | Vue.config.productionTip = false 4 | -------------------------------------------------------------------------------- /tests/unit/utils/index.spec.js: -------------------------------------------------------------------------------- 1 | import utils from "@/engine/utils/index.js"; 2 | 3 | describe("camelActual()", () => { 4 | it("must be correct transform CamelCase", () => { 5 | expect(utils.camelActual("hello-world")).toBe("helloWorld"); 6 | expect(utils.camelActual("hello-world-world")).toBe("helloWorldWorld"); 7 | expect(utils.camelActual("hello-wOrld")).toBe("helloWOrld"); 8 | expect(utils.camelActual("hello world")).toBe("hello world"); 9 | }); 10 | }); 11 | -------------------------------------------------------------------------------- /tests/unit/utils/utils.spec.js: -------------------------------------------------------------------------------- 1 | //import _regex from "@/engine/utils/regex-parser.js"; 2 | //import compiler from "@/engine/utils/compiler.js"; 3 | import utils from "@/engine/utils"; 4 | 5 | let compiler = utils.compiler; 6 | 7 | describe("@engine/utils/compiler.js", () => { 8 | it("must have parseError", () => { 9 | expect(compiler.parseError).not.toBeUndefined(); 10 | }); 11 | }); 12 | 13 | describe("@engine/utils/regex-parser.js with slash ending", () => { 14 | let url; 15 | 16 | it(`parse ${url} `, () => { 17 | url = "https://github.com/cmmakerclub/ttgo-t8-v1.3-board/"; 18 | expect(utils.regex.isValidGithubUrl(url)).toBeTruthy(); 19 | }); 20 | 21 | it(`parse all dot repo name ${url} to be true`, () => { 22 | url = "https://github.com/cmmakerclub/ttgo.t8.v1.3.board/"; 23 | expect(utils.regex.isValidGithubUrl(url)).toBeTruthy(); 24 | }); 25 | 26 | it(`parse all underscore repo name ${url} to be true`, () => { 27 | url = "https://github.com/cmmakerclub/ttgo_t8_v1_3_board/"; 28 | expect(utils.regex.isValidGithubUrl(url)).toBeTruthy(); 29 | }); 30 | 31 | it(`must be failed if not started with https://`, () => { 32 | url = "github.com/cmmakerclub/ttgo_t8_v1_3_board/"; 33 | expect(utils.regex.isValidGithubUrl(url)).toBeFalsy(); 34 | }); 35 | 36 | it(`parse all underscore repo name ${url} to be true`, () => { 37 | url = "https://github.com/cmmakerclub/ttgo_t8_v1_3_board/"; 38 | expect(utils.regex.isValidGithubUrl(url)).toBeTruthy(); 39 | }); 40 | 41 | it(`must be true when using https://www.github....`, () => { 42 | url = "https://www.github.com/cmmakerclub/ttgo_t8_v1_3_board/"; 43 | expect(utils.regex.isValidGithubUrl(url)).toBeTruthy(); 44 | }); 45 | 46 | it(`must be failed when using do not use http://www.github or http://github`, 47 | () => { 48 | url = "https://ww.github.com/cmmakerclub/ttgo_t8_v1_3_board/"; 49 | expect(utils.regex.isValidGithubUrl(url)).toBeFalsy(); 50 | }); 51 | 52 | }); 53 | -------------------------------------------------------------------------------- /vue.config.js: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | runtimeCompiler: true, 3 | configureWebpack: { 4 | optimization: { 5 | 6 | }, 7 | externals: { 8 | vue: "Vue", 9 | }, 10 | }, 11 | pluginOptions: { 12 | electronBuilder: { 13 | outputDir: "dist_electron", 14 | builderOptions: { 15 | appId: "com.makerasia.ide", 16 | "mac": { 17 | "category": "public.app-category.productivity", 18 | }, 19 | "dmg": {}, 20 | "copyright": "Copyright © 2019 MakerAsia Co.,Ltd", 21 | extraResources: [ 22 | { 23 | "from": "boards", 24 | "to": "../boards", 25 | }, 26 | { 27 | "from": "platforms", 28 | "to": "../platforms", 29 | }, 30 | { 31 | "from": "packages", 32 | "to": "../packages", 33 | }, 34 | { 35 | "from": "plugins", 36 | "to": "../plugins", 37 | }, 38 | ], 39 | "win": { 40 | "target": [ 41 | { 42 | "target": "nsis", 43 | } 44 | ] 45 | }, 46 | "nsis" : { 47 | "oneClick" : false, 48 | "perMachine" : false, 49 | "allowElevation" : false, 50 | } 51 | // options placed here will be merged with default configuration and passed to electron-builder 52 | }, 53 | chainWebpackMainProcess: config => { 54 | // Chain webpack config for electron main process only 55 | console.log("chaingWebpackMainProcess"); 56 | }, 57 | chainWebpackRendererProcess: config => { 58 | // Chain webpack config for electron renderer process only 59 | // The following example will set IS_ELECTRON to true in your app 60 | config.plugin("define").tap(args => { 61 | args[0]["IS_ELECTRON"] = true; 62 | return args; 63 | }); 64 | }, 65 | }, 66 | }, 67 | }; 68 | --------------------------------------------------------------------------------