From cabcb048e375d497c1863a82a9011e207bb81eb0 Mon Sep 17 00:00:00 2001 From: Dmitriy Antipov Date: Tue, 25 Apr 2023 22:06:54 +0300 Subject: [PATCH] Troubleshooting updates v1.4.25 (#1012) * sim_fix ES version update * fieldeditors-es-upgrade-to-es2017 Update es to fix issue with fieldeditors. * editor-es-upgrade-to-es2017 Update es that fixes an issue with the editor. * editor-download-dialog-fix Solving a download error that arose due to problems with the buttons in the dialog box. * return_field_motors We return the fieldmotors field, because it is necessary about the choice of types of motors: medium, large, one or two. * update-fields-for-motor-blocks Set the blocks to the fieldmotors field. Change the name of the blocks for the motors. * enable-debugger Instead of the slowmo mode, which was before, a debugger was added, in which slowmo is present. * fix-field-music It turned out to update the fieldmusic menu. The menu is now displayed in the correct position. * Update field_music.ts * fix-field-brickbutton Fixed issue with button select menu position from ev3 brick. * Update dialogs.tsx * Update field_motors.ts Repartition of Label for fieldmotos, now it's more readable, it's better. * motors-new-icon Created new icons for motors for dropdown image. * remove-ai-files-for-motors-icon Remove ai image files for motors --- editor/dialogs.tsx | 12 +- editor/tsconfig.json | 2 +- fieldeditors/extension.ts | 4 + fieldeditors/field_brickbuttons.ts | 32 +++-- fieldeditors/field_motors.ts | 133 ++++++++++++++++++ fieldeditors/field_music.ts | 51 +++---- fieldeditors/tsconfig.json | 2 +- libs/core/icons.jres | 36 +++++ .../jres/icons/dualMotorLarge-portAB-icon.png | Bin 0 -> 8690 bytes .../jres/icons/dualMotorLarge-portAD-icon.png | Bin 0 -> 8654 bytes .../jres/icons/dualMotorLarge-portBC-icon.png | Bin 0 -> 8685 bytes .../jres/icons/dualMotorLarge-portCD-icon.png | Bin 0 -> 8646 bytes .../core/jres/icons/motorLarge-portA-icon.png | Bin 0 -> 5283 bytes .../core/jres/icons/motorLarge-portB-icon.png | Bin 0 -> 5350 bytes .../core/jres/icons/motorLarge-portC-icon.png | Bin 0 -> 5340 bytes .../core/jres/icons/motorLarge-portD-icon.png | Bin 0 -> 5319 bytes .../jres/icons/motorMedium-portA-icon.png | Bin 0 -> 4349 bytes .../jres/icons/motorMedium-portB-icon.png | Bin 0 -> 4414 bytes .../jres/icons/motorMedium-portC-icon.png | Bin 0 -> 4409 bytes .../jres/icons/motorMedium-portD-icon.png | Bin 0 -> 4380 bytes libs/core/output.ts | 54 +++---- pxtarget.json | 1 + sim/tsconfig.json | 6 +- 23 files changed, 252 insertions(+), 81 deletions(-) create mode 100644 fieldeditors/field_motors.ts create mode 100644 libs/core/jres/icons/dualMotorLarge-portAB-icon.png create mode 100644 libs/core/jres/icons/dualMotorLarge-portAD-icon.png create mode 100644 libs/core/jres/icons/dualMotorLarge-portBC-icon.png create mode 100644 libs/core/jres/icons/dualMotorLarge-portCD-icon.png create mode 100644 libs/core/jres/icons/motorLarge-portA-icon.png create mode 100644 libs/core/jres/icons/motorLarge-portB-icon.png create mode 100644 libs/core/jres/icons/motorLarge-portC-icon.png create mode 100644 libs/core/jres/icons/motorLarge-portD-icon.png create mode 100644 libs/core/jres/icons/motorMedium-portA-icon.png create mode 100644 libs/core/jres/icons/motorMedium-portB-icon.png create mode 100644 libs/core/jres/icons/motorMedium-portC-icon.png create mode 100644 libs/core/jres/icons/motorMedium-portD-icon.png diff --git a/editor/dialogs.tsx b/editor/dialogs.tsx index 8f329201..29a8b6a9 100644 --- a/editor/dialogs.tsx +++ b/editor/dialogs.tsx @@ -1,4 +1,5 @@ import * as React from "react"; + import { canUseWebSerial, enableWebSerialAsync } from "./deploy"; import { projectView } from "./extension"; @@ -52,11 +53,12 @@ function explainWebSerialPairingAsync(): Promise { export function showUploadDialogAsync(fn: string, url: string, _confirmAsync: (options: any) => Promise): Promise { confirmAsync = _confirmAsync; + // https://msdn.microsoft.com/en-us/library/cc848897.aspx // "For security reasons, data URIs are restricted to downloaded resources. // Data URIs cannot be used for navigation, for scripting, or to populate frame or iframe elements" const downloadAgain = !pxt.BrowserUtils.isIE() && !pxt.BrowserUtils.isEdge(); - const docUrl = pxt.appTarget.appTheme.usbDocs; + const docUrl = (pxt.appTarget.appTheme.usbDocs ? pxt.appTarget.appTheme.usbDocs : false); const jsx =
@@ -118,7 +120,7 @@ export function showUploadDialogAsync(fn: string, url: string, _confirmAsync: (o hideAgree: false, agreeLbl: lf("I got it"), className: 'downloaddialog', - buttons: [canUseWebSerial() ? { + buttons: [canUseWebSerial() && { label: lf("Bluetooth"), icon: "bluetooth", className: "bluetooth focused", @@ -127,18 +129,18 @@ export function showUploadDialogAsync(fn: string, url: string, _confirmAsync: (o explainWebSerialPairingAsync() .then(() => enableWebSerialAndCompileAsync()) } - } : undefined, downloadAgain ? { + }, downloadAgain && { label: fn, icon: "download", className: "lightgrey focused", url, fileName: fn - } : undefined, docUrl ? { + }, docUrl && { label: lf("Help"), icon: "help", className: "lightgrey", url: docUrl - } : undefined] + }] //timeout: 20000 }).then(() => { }); } \ No newline at end of file diff --git a/editor/tsconfig.json b/editor/tsconfig.json index 6cdec447..c1e0704e 100644 --- a/editor/tsconfig.json +++ b/editor/tsconfig.json @@ -1,6 +1,6 @@ { "compilerOptions": { - "target": "es5", + "target": "es2017", "noImplicitAny": true, "noImplicitReturns": true, "noImplicitThis": true, diff --git a/fieldeditors/extension.ts b/fieldeditors/extension.ts index 3f20b741..10944a73 100644 --- a/fieldeditors/extension.ts +++ b/fieldeditors/extension.ts @@ -2,6 +2,7 @@ /// import { FieldPorts } from "./field_ports"; +import { FieldMotors } from "./field_motors"; import { FieldBrickButtons } from "./field_brickbuttons"; import { FieldColorEnum } from "./field_color"; import { FieldMusic } from "./field_music"; @@ -13,6 +14,9 @@ pxt.editor.initFieldExtensionsAsync = function (opts: pxt.editor.FieldExtensionO fieldEditors: [{ selector: "ports", editor: FieldPorts + }, { + selector: "motors", + editor: FieldMotors }, { selector: "brickbuttons", editor: FieldBrickButtons diff --git a/fieldeditors/field_brickbuttons.ts b/fieldeditors/field_brickbuttons.ts index 9e941db6..647beaff 100644 --- a/fieldeditors/field_brickbuttons.ts +++ b/fieldeditors/field_brickbuttons.ts @@ -120,20 +120,17 @@ export class FieldBrickButtons extends Blockly.FieldDropdown implements Blockly. Blockly.DropDownDiv.setColour('#ffffff', '#dddddd'); - // Calculate positioning based on the field position. - let scale = (this.sourceBlock_.workspace).scale; - let bBox = { width: this.size_.width, height: this.size_.height }; - bBox.width *= scale; - bBox.height *= scale; - let position = this.fieldGroup_.getBoundingClientRect(); - let primaryX = position.left + bBox.width / 2; - let primaryY = position.top + bBox.height; - let secondaryX = primaryX; - let secondaryY = position.top; - // Set bounds to workspace; show the drop-down. - (Blockly.DropDownDiv as any).setBoundsElement((this.sourceBlock_.workspace).getParentSvg().parentNode); - (Blockly.DropDownDiv as any).show(this, primaryX, primaryY, secondaryX, secondaryY, - this.onHide_.bind(this)); + // Position based on the field position. + Blockly.DropDownDiv.showPositionedByField(this, this.onHide_.bind(this)); + + // Update colour to look selected. + let source = this.sourceBlock_ as Blockly.BlockSvg; + this.savedPrimary_ = source?.getColour(); + if (source?.isShadow()) { + source.setColour(source.getColourTertiary()); + } else if (this.borderRect_) { + this.borderRect_.setAttribute('fill', (this.sourceBlock_ as Blockly.BlockSvg).getColourTertiary()); + } } /** @@ -157,5 +154,12 @@ export class FieldBrickButtons extends Blockly.FieldDropdown implements Blockly. content.removeAttribute('aria-haspopup'); content.removeAttribute('aria-activedescendant'); (content as HTMLElement).style.width = ''; + // Update color (deselect) on dropdown hide + let source = this.sourceBlock_ as Blockly.BlockSvg; + if (source?.isShadow()) { + source.setColour(this.savedPrimary_); + } else if (this.borderRect_) { + this.borderRect_.setAttribute('fill', this.savedPrimary_); + } }; } \ No newline at end of file diff --git a/fieldeditors/field_motors.ts b/fieldeditors/field_motors.ts new file mode 100644 index 00000000..f904ca28 --- /dev/null +++ b/fieldeditors/field_motors.ts @@ -0,0 +1,133 @@ +/// +/// +/// + +export interface FieldMotorsOptions extends pxtblockly.FieldImagesOptions { + columns?: string; + width?: string; + //sort?: boolean; +} + +export class FieldMotors extends pxtblockly.FieldImages implements Blockly.FieldCustom { + public isFieldCustom_ = true; + //public shouldSort_: boolean; + + constructor(text: string, options: FieldMotorsOptions, validator?: Function) { + super(text, options, validator); + + this.columns_ = parseInt(options.columns) || 4; + this.width_ = parseInt(options.width) || 400; + //this.shouldSort_ = options.sort; + this.addLabel_ = true; + + this.renderSelectedImage_ = Blockly.FieldDropdown.prototype.renderSelectedText_; + this.updateSize_ = (Blockly.Field as any).prototype.updateSize_; + } + + /** + * Create a dropdown menu under the text. + * @private + */ + public showEditor_() { + // If there is an existing drop-down we own, this is a request to hide the drop-down. + if (Blockly.DropDownDiv.hideIfOwner(this)) { + return; + } + let sourceBlock = this.sourceBlock_ as Blockly.BlockSvg; + // If there is an existing drop-down someone else owns, hide it immediately and clear it. + Blockly.DropDownDiv.hideWithoutAnimation(); + Blockly.DropDownDiv.clearContent(); + // Populate the drop-down with the icons for this field. + let dropdownDiv = Blockly.DropDownDiv.getContentDiv(); + let contentDiv = document.createElement('div'); + // Accessibility properties + contentDiv.setAttribute('role', 'menu'); + contentDiv.setAttribute('aria-haspopup', 'true'); + const options = this.getOptions(); + //if (this.shouldSort_) options.sort(); + for (let i = 0; i < options.length; i++) { + const content = (options[i] as any)[0]; // Human-readable text or image. + const value = (options[i] as any)[1]; // Language-neutral value. + // Icons with the type property placeholder take up space but don't have any functionality + // Use for special-case layouts + if (content.type == 'placeholder') { + let placeholder = document.createElement('span'); + placeholder.setAttribute('class', 'blocklyDropDownPlaceholder'); + placeholder.style.width = content.width + 'px'; + placeholder.style.height = content.height + 'px'; + contentDiv.appendChild(placeholder); + continue; + } + let button = document.createElement('button'); + button.setAttribute('id', ':' + i); // For aria-activedescendant + button.setAttribute('role', 'menuitem'); + button.setAttribute('class', 'blocklyDropDownButton'); + button.title = content.alt; + if ((this as any).columns_) { + button.style.width = (((this as any).width_ / (this as any).columns_) - 8) + 'px'; + //button.style.height = ((this.width_ / this.columns_) - 8) + 'px'; + } else { + button.style.width = content.width + 'px'; + button.style.height = content.height + 'px'; + } + let backgroundColor = sourceBlock.getColour(); + if (value == this.getValue()) { + // This icon is selected, show it in a different colour + backgroundColor = sourceBlock.getColourTertiary(); + button.setAttribute('aria-selected', 'true'); + } + button.style.backgroundColor = backgroundColor; + button.style.borderColor = sourceBlock.getColourTertiary(); + Blockly.bindEvent_(button, 'click', this, this.buttonClick_); + Blockly.bindEvent_(button, 'mouseover', button, function () { + this.setAttribute('class', 'blocklyDropDownButton blocklyDropDownButtonHover'); + contentDiv.setAttribute('aria-activedescendant', this.id); + }); + Blockly.bindEvent_(button, 'mouseout', button, function () { + this.setAttribute('class', 'blocklyDropDownButton'); + contentDiv.removeAttribute('aria-activedescendant'); + }); + let buttonImg = document.createElement('img'); + buttonImg.src = content.src; + //buttonImg.alt = icon.alt; + // Upon click/touch, we will be able to get the clicked element as e.target + // Store a data attribute on all possible click targets so we can match it to the icon. + button.setAttribute('data-value', value); + buttonImg.setAttribute('data-value', value); + button.appendChild(buttonImg); + if (this.addLabel_) { + const buttonText = this.createTextNode_(content.alt); + buttonText.setAttribute('data-value', value); + buttonText.style.whiteSpace = 'inherit'; + buttonText.style.width = 'auto'; + buttonText.style.padding = '0 10px'; + button.appendChild(buttonText); + } + contentDiv.appendChild(button); + } + contentDiv.style.width = (this as any).width_ + 'px'; + dropdownDiv.appendChild(contentDiv); + + Blockly.DropDownDiv.setColour(sourceBlock.getColour(), sourceBlock.getColourTertiary()); + + // Position based on the field position. + Blockly.DropDownDiv.showPositionedByField(this, this.onHideCallback.bind(this)); + + // Update colour to look selected. + this.savedPrimary_ = sourceBlock?.getColour(); + if (sourceBlock?.isShadow()) { + sourceBlock.setColour(sourceBlock.style.colourTertiary); + } else if (this.borderRect_) { + this.borderRect_.setAttribute('fill', sourceBlock.style.colourTertiary); + } + } + + trimOptions_() { + } + + protected buttonClick_ = function (e: any) { + let value = e.target.getAttribute('data-value'); + this.setValue(value); + Blockly.DropDownDiv.hide(); + }; +} \ No newline at end of file diff --git a/fieldeditors/field_music.ts b/fieldeditors/field_music.ts index 42c3e463..4c577242 100644 --- a/fieldeditors/field_music.ts +++ b/fieldeditors/field_music.ts @@ -49,7 +49,7 @@ export class FieldMusic extends pxtblockly.FieldImages implements Blockly.FieldC Blockly.DropDownDiv.hideWithoutAnimation(); Blockly.DropDownDiv.clearContent(); // Populate the drop-down with the icons for this field. - let dropdownDiv = Blockly.DropDownDiv.getContentDiv(); + let dropdownDiv = Blockly.DropDownDiv.getContentDiv() as HTMLElement; let contentDiv = document.createElement('div'); // Accessibility properties contentDiv.setAttribute('role', 'menu'); @@ -67,8 +67,7 @@ export class FieldMusic extends pxtblockly.FieldImages implements Blockly.FieldC // Accessibility properties categoriesDiv.setAttribute('role', 'menu'); categoriesDiv.setAttribute('aria-haspopup', 'true'); - // FIXME: tertiary color? - categoriesDiv.style.backgroundColor = this.sourceBlock_.getColour(); + categoriesDiv.style.backgroundColor = (this.sourceBlock_ as Blockly.BlockSvg).getColourTertiary(); categoriesDiv.className = 'blocklyMusicFieldCategories'; this.refreshCategories(categoriesDiv, categories); @@ -82,31 +81,18 @@ export class FieldMusic extends pxtblockly.FieldImages implements Blockly.FieldC dropdownDiv.appendChild(categoriesDiv); dropdownDiv.appendChild(contentDiv); - Blockly.DropDownDiv.setColour(this.sourceBlock_.getColour(), - // FIXME: tertiary color? - this.sourceBlock_.getColour()); - - // Calculate positioning based on the field position. - let scale = (this.sourceBlock_.workspace).scale; - let bBox = { width: this.size_.width, height: this.size_.height }; - bBox.width *= scale; - bBox.height *= scale; - let position = this.fieldGroup_.getBoundingClientRect(); - let primaryX = position.left + bBox.width / 2; - let primaryY = position.top + bBox.height; - let secondaryX = primaryX; - let secondaryY = position.top; - // Set bounds to workspace; show the drop-down. - (Blockly.DropDownDiv as any).setBoundsElement((this.sourceBlock_.workspace).getParentSvg().parentNode); - (Blockly.DropDownDiv as any).show(this, primaryX, primaryY, secondaryX, secondaryY, - this.onHide_.bind(this)); + Blockly.DropDownDiv.setColour(this.sourceBlock_.getColour(), (this.sourceBlock_ as Blockly.BlockSvg).getColourTertiary()); + + // Position based on the field position. + Blockly.DropDownDiv.showPositionedByField(this, this.onHide_.bind(this)); // Update colour to look selected. - if (this.sourceBlock_.isShadow()) { - this.savedPrimary_ = this.sourceBlock_.getColour(); - // FIXME - // this.sourceBlock_.setColour(this.sourceBlock_.getColourTertiary(), - // this.sourceBlock_.getColourSecondary(), this.sourceBlock_.getColourTertiary()); + let source = this.sourceBlock_ as Blockly.BlockSvg; + this.savedPrimary_ = source?.getColour(); + if (source?.isShadow()) { + source.setColour(source.getColourTertiary()); + } else if (this.borderRect_) { + this.borderRect_.setAttribute('fill', (this.sourceBlock_ as Blockly.BlockSvg).getColourTertiary()); } } @@ -187,13 +173,11 @@ export class FieldMusic extends pxtblockly.FieldImages implements Blockly.FieldC let backgroundColor = this.savedPrimary_ || this.sourceBlock_.getColour(); if (value == this.getValue()) { // This icon is selected, show it in a different colour - // FIXME: tertiary color? - backgroundColor = this.sourceBlock_.getColour(); + backgroundColor = (this.sourceBlock_ as Blockly.BlockSvg).getColourTertiary(); button.setAttribute('aria-selected', 'true'); } button.style.backgroundColor = backgroundColor; - // FIXME: tertiary color? - button.style.borderColor = this.sourceBlock_.getColour(); + button.style.borderColor = (this.sourceBlock_ as Blockly.BlockSvg).getColourTertiary(); Blockly.bindEvent_(button, 'click', this, this.buttonClick_); Blockly.bindEvent_(button, 'mouseup', this, this.buttonClick_); // These are applied manually instead of using the :hover pseudoclass @@ -241,6 +225,13 @@ export class FieldMusic extends pxtblockly.FieldImages implements Blockly.FieldC super.onHide_(); (Blockly.DropDownDiv.getContentDiv() as HTMLElement).style.maxHeight = ''; this.stopSounds(); + // Update color (deselect) on dropdown hide + let source = this.sourceBlock_ as Blockly.BlockSvg; + if (source?.isShadow()) { + source.setColour(this.savedPrimary_); + } else if (this.borderRect_) { + this.borderRect_.setAttribute('fill', this.savedPrimary_); + } } protected createTextNode_(content: string) { diff --git a/fieldeditors/tsconfig.json b/fieldeditors/tsconfig.json index 9f5342cb..10ae6cd0 100644 --- a/fieldeditors/tsconfig.json +++ b/fieldeditors/tsconfig.json @@ -1,6 +1,6 @@ { "compilerOptions": { - "target": "es5", + "target": "es2017", "noImplicitAny": false, "noImplicitReturns": true, "module": "commonjs", diff --git a/libs/core/icons.jres b/libs/core/icons.jres index e71a83f9..da3f26a1 100644 --- a/libs/core/icons.jres +++ b/libs/core/icons.jres @@ -68,5 +68,41 @@ }, "portAD": { "icon": "data:image/png;base64,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" + }, + "dualMotorLargePortAB": { + "icon": "data:image/png;base64,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" + }, + "dualMotorLargePortBC": { + "icon": "data:image/png;base64,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" + }, + "dualMotorLargePortCD": { + "icon": "data:image/png;base64,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" + }, + "dualMotorLargePortAD": { + "icon": "data:image/png;base64,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" + }, + "motorLargePortA": { + "icon": "data:image/png;base64,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" + }, + "motorLargePortB": { + "icon": "data:image/png;base64,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" + }, + "motorLargePortC": { + "icon": "data:image/png;base64,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" + }, + "motorLargePortD": { + "icon": "data:image/png;base64,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" + }, + "motorMeduimPortA": { + "icon": "data:image/png;base64,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" + }, + "motorMeduimPortB": { + "icon": "data:image/png;base64,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" + }, + "motorMeduimPortC": { + "icon": "data:image/png;base64,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" + }, + "motorMeduimPortD": { + "icon": "data:image/png;base64,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" } } \ No newline at end of file diff --git a/libs/core/jres/icons/dualMotorLarge-portAB-icon.png b/libs/core/jres/icons/dualMotorLarge-portAB-icon.png new file mode 100644 index 0000000000000000000000000000000000000000..a19eea1f804fce24c371412dc08b0ffce77f10dc GIT binary patch literal 8690 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 XBu#1?n3q5lXdo%ds)4FyOhf($cW3G6 literal 0 HcmV?d00001 diff --git a/libs/core/jres/icons/dualMotorLarge-portBC-icon.png b/libs/core/jres/icons/dualMotorLarge-portBC-icon.png new file mode 100644 index 0000000000000000000000000000000000000000..f9bddb16e9811671d6d88abe69fdb41765d0bbf9 GIT binary patch literal 8685 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 CFABi` literal 0 HcmV?d00001 diff --git a/libs/core/jres/icons/motorLarge-portC-icon.png b/libs/core/jres/icons/motorLarge-portC-icon.png new file mode 100644 index 0000000000000000000000000000000000000000..0a7c0486ea75f32acee9d8a1c4b99dec27fbf858 GIT binary patch literal 5340 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 Z859Y7*)Zl0A;6UYZH>q36{;}gzX9Bx9{B(O literal 0 HcmV?d00001 diff --git a/libs/core/jres/icons/motorLarge-portD-icon.png b/libs/core/jres/icons/motorLarge-portD-icon.png new file mode 100644 index 0000000000000000000000000000000000000000..bbb7960ddc4556c665615ee4e3718b789a89bf9e GIT binary patch literal 5319 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 Z3t_4sc}rB{>HirF#`+NOC(!-qe*t}liVy$* literal 0 HcmV?d00001 diff --git a/libs/core/jres/icons/motorMedium-portB-icon.png b/libs/core/jres/icons/motorMedium-portB-icon.png new file mode 100644 index 0000000000000000000000000000000000000000..64836fb5db64b215aa66887059396e65cfc1ebb7 GIT binary patch literal 4414 zcmcJTcQ72>yT{dp)kUviBP6SZ2$m2+^iC{Rh!QQ9usYGBlU?=2id7=ovZAh1vr@ zX52qPcjdC@Wwt)NO!U6GHvSY8(!hU$GPqnlkb;8sKu=4Ew2-!o_k z@j~7#H}W>9)+FkiA!J7hq8uFPT1`4G4lpw~S%y|!7AV)D#JF@dQJ6yKb2QrJnYi{X zrBO&tqtXLxx)g`SgBf%aE%L6%6UEaU`_0I9#kTgZ^Lw*x9>2~aN09sT{-pWN)9x{~ zP1UiGbf8cMgUEV%=AtZ-5`c22j5ltK(iFFSfW9VGOi1D~-O^%^fS1s6fQeN9uVwD; zXH7~1%+S@UK0P^mlKTpY=7Ku|Uz)s_6G$kzCPjcT0V7)?OA~7z2b}5NaN@~0#J=ba zWyxR+Q~!NXn!mHNW1BmyP}khtJh<)`GIIRE(N~f$jX5nfwa`6(@ou8`&w!ukoqW&U zs`mMBc~!sim&obI>F3E~cQ)OD@W>Y7l?7VCN-%zHtt>Syjd$$ol`DPQaD7+T^1Ju$ zCF58B3iv}Ln(+$oWDQQ2-BnQFo%QteOzr06i_%yAKq=&?tT15GM(^q#*(3w*y{`}Q0|g826BcNk5;zmOGgdP{q6r2M zB)Q~;D!j@zSM)VUht7Bgu+s5++kn)*9w|Bd8%TAI(4_ig0Y`W_Pt9q8 zB4S$tf-%SWRmhDvkc7pP|E~k`WOO zoaji830m?=M{9@lfWSjEi0bLNlSE)7k})1b*D4Jfv$G+5z&c9kZ92zl15a$D$xeA>;IB z$_YV__EsrpHE?aKtpuDuI&bWBBxELhVS*meNw?wIRU5MKxse*lTN@AC2m}J_^IR&E zlIS18VJ+=(BB;6aL5uFjA{N1!Kjt3=Mhy;S8VHelmH7XHsC{6BgaL-SPzVoOt=zjI%qXk30 z0=^2^czA@ri}}X@qH?J@KibZ~T=!#gZv)ztwWiQ>Mf`Vv=c)`lDTLogQvhp065lvX zejkAC>pBoiviI}&6odd9)tOSQQm*n9L)g{YjcAb@0#b45axbDE^aQ8Vvq|V--H9cI zRc@RqA_sUCv4abdLvn{)-4IYHD84+51F`&T5rL-m(cAl4(I2*M#ZKP%Ikb>bH{+)2 z%VcWbLleUiujyJHxDVx~aW~(^yenDhSJ&Ihm@UH$Ne$ca_pj>LmCoq5T)!1`mj?li zT#z1}x)8yh3dh{e?o_1Xj{xvc2;OFJ7lCt}38*T&L$GkpM%GHz<8Eg?HUlkC3O)Ye z+VUpORofpWvIc$7p3T6&Ha%#@+xa~ZksvGu*?R|=TvWV|VnMmCwb}ve4`xM3X2UzZy-`MF$=#FoBqBQ2h~{OLOPP$^YT0-QVYGi(r3~X5Oe3Y6S~#389`?`rl}!fXxX(g1o8uOhx@gH>en74 zVuNDLLc*`VZrpc>PW-GaXrZYXJ-xUqh#Xw}^XO*e*?XI@lrd~=SV7^II--dQMgeGw+BZ-w*O&n3O8 zvXeT)(h9`++Y;vhu%%7h8-w3xvQ#>1O5-jzsL~pO=2mugwt=Bnx{RVV(KdSeDgAqP zp4_A&AsfgWHQ&2Pk-r^p#6~8~LB?ZEp{vtwJ3YYCqVqni!1AThzR0P4lbpvLaJfX7^uHbgT zYEIDt?wcIldT3_-F*IrU(~l3Joc;l({W!Jmke6nsQ(xS;awb+0zVMlSr71he&VaQi zk~(YI-SFo9?bw`tfPL=Z^i04bwku;n5~DQ4zUSpD0tPvQ(-)neUSFR!bx{7v_lorn z4w>ZN!Q*kr1C*XzVuJ~&s)8nT+z?e!5-_ynMckLo{ND*9nNuaPr|HniflzKZRa_UddU;36WqV&jwV)t^2far!xjb`dbR$~ zipZwdCA%iIdB0punZva<6&v3(7pUniCv}~E3kwlmW7J@n660YMQrL`JskkU~W^|yW6RuWH`mkwfl?^z>%E&_!df9+#var_>nxH;!h&{1!sx>@9P z!=;>Rn5p}`FplLy`_1fDFs!D!kjT}x9pS8z6!}L-8O6<;QvjQ}d--HKUjF=Dohc_L z;%6xK90n_rz{g21N&Na@Sl{HedmjB@2{v-o2-TCy3NDEqaMt)NF96_&0iXhj=wk4C z^b3TFPi~d&fbK}uz*3HjlLRXgNbS7R)@*;Xj{In$LQ$PXjXyl-`}ZDU6C>qMzcNO& z*Kl!~=wZdhju5vC;gcUa)n?qzHzOPz#ugwvJ=fH9XM{8^+Jk8$S1Hq@h-$KK^`uj26s%RLanRxoaJjQf|#x2!=EROz=)u{qAUlMNYx zn>wfAT@5IU3fHz2_q(2k!m%e?8Ane?V{?{8>_9jEDNn9y= z5V*hHDL%N%KYMw#nube25obgDfV+_mXEXYtaW4;;^ajQu9dlp?DkmUW>QimJKAu!D zeHeaQKzqvp5qsb1CJ9_nkXF<8)o`0YAXt8h3HLGdKay9Ind5*`t3rC-rQYd=v`Y6o z{ca{dCi^{0^m|4v=sH2=9H(_8;ZkJnY)L>#s2}Tz-RWC~bgj$$My{0TTz#$*;DU_5)CT9e2Dd5lBnW zvDWS4Y$P!62S`uX0RZ+Q@s6a!Olju~6syuZz7C*x8L-gtdF3pbC&Jb)8 z0Ev(4Z!)ZxYhniBE8{d}*jP)N3a>~WJuerRL)dD7WZClanaYM!i_IURb1C5Lhde?; z#$X7BA-o)k6W$1F0NM(4go@Es zvs=>nu5P9F2jA{r&+Js_lc2j8Xzp4=US`W3>ns#uh2V@L>fT6r+)s^Nfl5TW)dHyx zKk5T#JZiS)7JU+hx|H+Sm?vIrvyjr=ER0R{xX-yIQMV%TbG2%Q zN5Hb*gF>D^pL!+D5KMd2(Y@k|_M8P^w2qd`s<(P;nx@QEq3v*&qQn|)qev@ZalSOZ zAx0W1>D}(#OANSu*}ObGb0D*LC#>Uj)-8U1{@pY!(MNNO>wf*=Y7U>nF(>0Bob#|? zJI5R6QKJ5qmV;78ye_qRwD%|g*k=lu}}#cOhLthc?pFV7{X6n^46{?rWkl6ht!78ij=bZ-};9I;Zf12f2(bq4iuQKywa5r~5(nSml+NJXMFkeDmoK%Ys zVkh5&t#`b4s6dgL=1-4|@ay((UBg^hi!CjBZ|)W`;lS(x*AvpwaM^d_=#AyN#rh}Y z+{-;+IZw6=?s?~f*NdipP5XrcP}AvOW-0=0tu)Y?%Key8iFo7Z_#Mp1!8+&V`RzW) zI$K*$eZEChZlX@dvD!t+TpUNYxSoEWWx~eVbq7`dQvjeOmS64q3E6B)}J6(B9TH|Et8+#IbE#zptS&!9DDAZ-diZrix_G^9s+2BAT2>25CS2zKrj^P zqEZwhAiag&gdlbEyzlOZo!OoJv>(nrGv~}b^S^h_%ss!GZf2r)i|!5`85!9v1AT3C zlE?mIG}lQhC%yGP$-P@jMZj@m7@G?Vs>1NG=Ii+1ncv>RGQfZk0#U&_7nIbFeG;NXZrQk;AUcr|{ z^WZ|Xjc>?Hfh^XHp(l1efn7Thn6oddP3ecYWsjhG0|iKI{oS>*e1q4sYQ)*))!2kT zMbBS!%!LTQHn{tKHsp{?L_`zLB3L?-&SXaDp%DvnqhwW`~RAr zU%(^T^M+FVf4xyQXy4>9RU4i!@sQ)hpEqYFu@!NELi{#iX3p0a2m~HQsT$eY+qbFmLQI<&(z-47qv8VG+!lTCW3|r${Db@<@)&u0 zz|7{6NEi;!3OObo?T*G}>GX5Jsi_kgi6#Vnypor4%XTm_`7ZI=W>gu7XiLo&^HAQ)OLd^8M4%6h1IlRW-heEH?nbc!~`CGIx z0}Z}@ez`k4!2PIDNm3)jiJ$9_e1Q*XyOafTRS>blkL?(VUP z2@y#E@+}@X*B)QL`&Yc2tZdF~YV+n?htmYgxnwrgnf#oBTRrX(?iS3k!D4>sLeri<_+X1NEcb`4QJI3{DBRL+r*%M*>vn|?5ZIhW+rcB98~R$`*Ni})IC@*9En+8EU&#D` zwyvb;__*o_zR5;6bJrz&!B5Nu%D|`WFwuoBnW=IYx(>_<&Cy>cZF6N;>LeHn|0G%~ z{#R%rv{jDY12eD^Oc;S@;_8Eh%wX`kLqD67$w$%MEpjdSw7CJ{kF2%q`HycCpcBNy% zZ(4AFN`y`+0PUvNW^^j;s%LqP73(!3jyum7T50@#L-b*nxqIji^u(Mv1t3zah0Z+YGQbr|Fs{GO|_3i)9Rlw5I^QY$o!& z>h&NDWFJk&&F%emN@@Xs}|ZH zg%~X&O;_UCCw*g9m<#A_@npTZdz00c{Jx{IS_Cl`cDfWKULUM!kO7snX0uYOHkSg; zMYko-{uBkhbcV_Q=~)Y`3x~MLUG`PWH4}vmRD)3`!yTG#&L@awB8v~b4THlqOLjBO zy&V1bz;R&VW+H9D7FH7L6Lk(@{_{`wFGIuCiWU!-C!YD2Su?&-;mjHYX#}zmA0*`U z1Zt#6G~pC!xZ>$J$XFz9aNG@JJ?BrX`w&Y;j_q;LeF`*O<-*6i(;BFY=WQhoiO87PSfk>vmI7Dv2NAvpUmX_*was_9 zZVhU9xvd9^o~qTC<3?kekHgzMjIFD=Im8{e2m$STD0YwG8?m7gs&_+se(EvzTej+*5V^mlBOqA@q)NU)&aUz+bqYLvRgbG|E}oke<}sc{%s{n}+kVjewGs@l zSc_FKRHX&P#~CHGbl6S99kr>M7Z{#}{X_#-R8Xh|OmI5`(TJvN=x$~DoXHc@e%Arn^5&JWH&Yx!Br4=+q9h(~HGh4|6PFPvY9gHy(cSV3#<_ zXQ27)G^_M3m1nwKZGM=;FE~Iegpq2rLY%;h! z+>ngEmm8}0nLM85w}s`@?9>vz*c?@G9~c!999#zmw1UPPZ@BZy;P}aR3kUdk7>0;f z*1wFK0#yrN;Kru2*_6-EJ%s#PWopY0^*|CeG^y=$$`wahA&(tbCZ1TbR&_!-`0`+V ztp=4H#!z;R!w9M84sC;Y{z28XaIAn0?h~Px84WR((N-_{$X#%mXP*tFn_(6E%`9Gi zQ|DdM5p!8lt0>Bbt?W@I%jwuo`R(nwiDG9PV2LSWUkS6Moe&KdECCJ{mS*;`$ZZa( z`PzOMF*fK^sC|&(yJw!Z$oke;%2MK6Q%ud%?daJ%%#`n@xxOcKGYaThAA}_G3Eorp z@99;KPUfO!m@{bg_GYSjY5ObG_Ncvec!~I@tl0{=Nhg@h`BXh#;?X*v5^igu zCB+cXqkgEAu6o#rjE+nG zVj7;LiiFzl#HpVdqEspdx<-~Wh16r8bsZw!=qjzqZMohWaItHMxV0EDWcswmHFJMd zPfzbVN*3r~=%@{*L5S%-tsQC?+RaS!P#6yI7XSD_;oi=-Z;7;=x%C^~fvVN--AiI; zTRDMm4JDD*nT%Nck}-dEU-3G_!l!x}A*U89>x7jJgi2t8_wS6|9+sMy$N-nt1x!iy zL6-*Go*mEdy}-W?rvwz@eI%p?QI7UMqM2M7^QPyxID_%4Utvk| zy#fFiz!P4K5T837%*~O{JSQA47dyIUq>ejPJqg&G8D9fw6!U~;?(*fl0*9w-3#>WB zuZ*i0UUfD>o|Q=hL@q|mbW@q6l;d_&&UbS)&rgP5h%eX!VR%U9KvfnDf#6)&xoMod zJYcDP?wR3WK7o775p(|OZubDCyLa*k&M8Psm^^8H-B)s2f0M!nL}T)82| z=PX(`-!f`-o6O?AE}^P0seWr9r^i&0j{WgTCDa@^NNv-X_|TQ&D{S6#6PlQf`YD-& zNQ@+1I>2&K>+i6D04c|&(jQzF!Wv75pNzX6b|z6}Zg3p+ehUAMI|$op zu*N_&sX(OHgV88!(l(jQJp%SBVjZM~e~P}{$RE{H;V=~`-djt4O1LB5l*mS!h6bt5 z!XLx^-xt!^`9Lnf4Q7Ob&Zl0j;;}!6ojw&<(x=p>8%p|EVKoMmweXaZKI3fM;iKB+ zwR#b0tRP#vrL|3NCneHgjTMn7+Ws=jr&I*yL-iTP9MPogFiuLgO-i~zud(6HT|E6* z09oH@Nl``wuJF3lfmXTbL5|~NNqH7S?`!$FOw01D*lVS)!Tl#EQGHz*j`Nc5wl1>g z2D5xT_coMhl7W%3F5}Obs#!y=Mhfyj3`vAorF6fdFI5Kf@bCa;IL;8bO4MS|Z~M)B zHaitski%MW0x)$5k&DTZ{A}Xm`4;`nM+%@_{TXBvBK@YL0iOekaxIsg_N^hPss^O< zwm&kQS=bf33V_&YFFx#BL|?CbuU!%xOm*w~eJ#R5a8w2O+>98_ul@A*Jh|+XUlP~& z1f-i2VO4Duiux;QfG#~f>avgXg+wylA5N5!zry>i1VY=ujhm{FdTg)~ze#4o65P;| zmEufues2(3ZC-9dAZMC9_=-w+t%ag~5ppI20}qJ&_>DgbS=?_a|6(S#jK1oqsR^`w z^5luTkKQ>e*w^S_m$bU}8Y z5}X{=QcM~dxoL`FhGC<n*U3LR2{omnCrA%AW=7$Thq0RH^^5S6iQnALHYNHQjk1@$|j{Nw$c+wv? zK}FKB|FgN@W4dfw3cW@#P28FBS96*@t3O|^&=@^-5(`^=#JC4Z_`MW85!;=n=wTCx zJff6jfS1%Su+}(JrkHS333TjCZH@urCJ#L8qYu55&I%h2i$zL$Bbn)n9+8F==AG1A zT+63iC=4?CF577vOYo1BN7v&*S86+T#C4a)6SYLMKv@-wr(Aw|%UW=jicUtvj3+3_ z$%q7;Ok09d94x4ZBq1~$B9@&9{2f;15Xv?k)I*F8Dabm`aRWv9ZyM$9Qg6}-^Qc^v zmLTcsQuhK9@%~gK5fl{7tTba)|0;sRJ$GMIxx|*O{$l?pmCCxkv=(`_x>JCyBUR2E zlJ1a-7i*De5{e+Duj@M1{@HlA-rbeb`ln4%hS1=C(+N}E9Tm1HCefv3`#iIgU)Ql! zVJJ_=wB%c{YuNtkE6>dp`=)qKQZa5Y5A866+Md}|LATrPqk6&J57`f@Sm=s;$bnyo zFZR@i5Q53pR%CT)bfveX)QY#u6qHGz4d8bx@|4O*DSGxlviAI*z@){e+nsXvw?E*Q zKE$H|qaT_TWHJV90QOCRHDIJcpbEc0P`T4|9&8dC(~N22bH5wK=J1fKr50Z%5)8MQPj3Z& z?-wIhBmR$O_trHK|0O8kH@13j`mmh#CYDzS23$=Z=cG`Bq;n|f>I#ZY<_&@&= f%&))$SL9*)Qr6$zds34ALdXnsOtfpYToV5SpZs;B literal 0 HcmV?d00001 diff --git a/libs/core/jres/icons/motorMedium-portD-icon.png b/libs/core/jres/icons/motorMedium-portD-icon.png new file mode 100644 index 0000000000000000000000000000000000000000..8e6b80e9b266ffc743289cefadea21c63f954f9e GIT binary patch literal 4380 zcmcJTc{CLMyT|QYvM-|yBE*b6krC2ZE5?>>EZO&Um|@5g*+xTTDNBRWkfjOpwIvOW zD25mbjgTb_BFooyeedtyKkhmAckW;JbI$X5&iOpgAD_>2o^w9$*OLLWFgeS0j*EeT z;jEb{)cVx7{bL+#r@I)B{pP9T3^R3%WMEL1`NtSh&-J4j82ARwpx13tC2OUDVI_8A zwqRsQ}qlOr|oDkepN4`NO!$0)QNFo~5Y#>01*zOe8jetm{}42REn zxcPkKpTWg_!O}`Ru%28)O?Xu*Rm60psx@S%z-93ydT3$#GuLF1Dv4DGfD$l#9}QmX#K+((u)rtKKK+4G*`8@wvv8E#Mth;t7;2p8VnxXOoq&g0;J3y*QdPd;LH*!uC~ zuD`#3t}y7%ClE1|rZ=%m*DEe6GOfQc@uwWFvNGOaSx<6i2u&oV@yd^P69QX)o!_L^ z+G%|d!l~d#liWWRDmfPrcxDq8mVLb^$*VYci zq7?lmK+)xjXPsU88K$`79!gwOBm<)p{)d|<$7zYc*7AKCS*5VTF^x~GntRUp*=-P(`fWM6Tjigg=;0ih0`xu?<&AZ=r z#-`_ILAlZlRRnp`WV}tHv*6rmJV5ga#iQ%esom|>86I(w6}((7f=e8VtPSJNXszd& zu%#z3pnfkQV65g_+XcG^hT|-4e{SMN*US`!+T>>1N)W%zjMl^_AOHG0$MzB;J7}tD zIPrxAO`jG^+@%Ex;l$+0-=7Pt0M6aOr^8)DY3!AQCIOyBW+rf)- zf!mIfQ_NnXFoTWLzVI0fDOpM8d9vLBYI})ZzzY0Lnj0CJDTs1en+^A-T19p`^W{Ut zFnvk-*JK9^kCk6T?s3`$K(si{M{xld1l7*~E+8%*ieJ+SaD07BtchY1vy_l#9Sa_I zb~H!oLM851xKWWU4u*s5`4E4jr{X#~3VB-7QW4|VjIw}^-4D_h9&F(V7yuH@3qFia zKbq;jPn`_*^Ly#j?wkF3Y0s)q#jT9M^WHch#2z1g8cvX#!!52mQ#{`mA9ZfH#B=s-4h23){CtLC$ zSqr9=BR1}+D(+%gtf@yDe7PdkG71RRp5wupqEE+kE%k%Sa%B`8PM$l$4&?rjxjHa& zA+ecQ-F4%+_~S1>e*9p&1&3t`@&mry^$KlH47)HB_jEGnd^p)HdftxuXOg|DuDg`j z{wS*%_*s4HS1py4mlX#MVdvctJhH5U>to&}?eZeN`YgUw!0^S!#~%fFf8Ly1069VU zAmFE6-jVKHldHKMzuuA!K((<z9rk`G$N;vpJ-9r2jd;T;{(C<4u|0F-@!pXMlNb>_zl8bOg=~Fz4I@9= zK0o!sQ*WEFz_!2c9O~0-+7DD<8@&y)v?A?LCAxOPVILXYQBuzSZ=_jt!_=DO#9nS#MwK z@`Z{h+4J(K;gQ+bPVm)I6I9s7W=Vc4QUu4f)T>lrS61w49_*MEJBFwG_qmbo!&&B zosG_tENV+v`(Ppo1m0Gzoc=4PBb|>Qnu{$Gr~Ta$r!A2)0q!hK-T3jfNqcfKlBX{x z#ZDhRH^I7w-r9d^Go`Bes_~AR;ZjH;lo+I8(aQRe8u(xR{|p$Eks8rsse z-=6%=^hs&gxXho^jn6@43AJ8)h1OHsMv?BOhBgRnjUoQ;IkG1M)@4(Xo3E|7BZ&+Il4DlUq2N!rCX)lk!*5Q8pdpb$1FN3L6>F+qQNV^qy=Vv*ol)AD9&^&TQ!v*n!Qt>YZONqj( z0@@zDa_36<7*XJN1X~hj5@S*KrWk^+#`^LzVZJ+Be0$E$<)X3gLrI?DFOTpadM?z? zwp1BdMd5b3l=fRres!ERwLaHF-4CbRBJ(r#RAj`eX8{RmYpV*c%$83z$R*ADckq*W zrwZe?>V4{La-H&%OJjdb8*-#oZw4O5Ws@K#r?Pq+itj94p7gvWKT8Iw<+&;u;tDgi zi>Ft`8Z#O50u@v>nmIMd%PFS{h_B*WDI55=Azq%4TXr3!DrowUP2C#`YsFCp7!))1 zFj#E$DwxLkcEpUvGY4_xS33K>Q=JJn>B8+0<<+B@a{4>^_ynlmgd5%6@(_aw_nayS zP$(vT#C6_&lZvj}zZLnpG{vC)vuKb-xZ~(dFh{pCfdBxsKN+>5&@l>6N?7W}Pt zyWvt$#P$rc+Ks6I7CmT5D4Wt_Bx^{{IY}o*NuV%hHaSv{4UmiGpW1yFZ=c!MDLqoN zrQQGQ{m(@0;p1$qxmE6&Am${JynVfSsv?dZ>NOcf>w0L|z)F9+OP7@fB>gp70ImL$&PczqGPp$t;-DM$J{-iW6j1>|4$}D8-FAV zBy{OJbG&m1wOsG`E0(L&ubZ~6ucSsX5*_lLSg-FXx-WDIQIRD(mhS(NE&kv0RwHma z?C|IqttpFeA{5cVsTLN_w}6ngXDf#PgUcG#&COq|59`H*o}j5AJL|O2+g|SM`#;9( zoaF}!RPuff6y8K4iOq1cO9*RqOZ`8HK^KEP^e$a^0=;^IQoR!NRm!;~`1M=RDe?99 z?+mmIY_2@CocOst+N7B=K`%r)i%1&m?FCJ=^?ozf64Frs@r7L3AmX|&EU&D*fvRK> z8NtVzknZgP5h9TM1hBI8HwyX}w_CINl$2n6iYCcedo%8Bc z!u%0VQKzA^mmw8+E1Y7D&NGUc-NeR3>w?jkNCWd}NEi*#QPNRM-j*1PF#Jyn{aC^H z*v196R8{l!D1znQa3pc9% z*59El?dk75*48Xdkb6x}Oz$XnXt7j!1KJE$38aw?y*eaJbS1Qo3+48ItnaQjWklGY zHk@2SS3+L8Zs=t9)y`|3kT3l;QN)bCx{N5|?#}k?$=6Wpl+*KvJv!)#dA-ad{L;U< z(SM=;yD}?l4&Kc4UrjNzo%r@($$2$1C8 a*9XG+Bm literal 0 HcmV?d00001 diff --git a/libs/core/output.ts b/libs/core/output.ts index d9923329..403419c0 100644 --- a/libs/core/output.ts +++ b/libs/core/output.ts @@ -195,7 +195,7 @@ namespace motors { * @param brake a value indicating if the motor should break when off */ //% blockId=outputMotorSetBrakeMode block="set %motor|brake %brake=toggleOnOff" - //% motor.fieldEditor="speed" + //% motor.fieldEditor="motors" //% motor.fieldOptions.decompileLiterals=1 //% weight=60 blockGap=8 //% group="Properties" @@ -210,7 +210,7 @@ namespace motors { * @param value true to pause; false to continue the program execution */ //% blockId=outputMotorSetPauseMode block="set %motor|pause on run %brake=toggleOnOff" - //% motor.fieldEditor="speed" + //% motor.fieldEditor="motors" //% motor.fieldOptions.decompileLiterals=1 //% weight=60 blockGap=8 //% group="Properties" @@ -223,7 +223,7 @@ namespace motors { * Inverts the motor polarity */ //% blockId=motorSetInverted block="set %motor|inverted %reversed=toggleOnOff" - //% motor.fieldEditor="speed" + //% motor.fieldEditor="motors" //% motor.fieldOptions.decompileLiterals=1 //% weight=59 blockGap=8 //% group="Properties" @@ -241,7 +241,7 @@ namespace motors { * Set the settle time after braking in milliseconds (default is 10ms). */ //% blockId=motorSetBrakeSettleTime block="set %motor|brake settle time %millis|ms" - //% motor.fieldEditor="speed" + //% motor.fieldEditor="motors" //% motor.fieldOptions.decompileLiterals=1 //% weight=1 blockGap=8 //% group="Properties" @@ -347,7 +347,7 @@ namespace motors { //% blockId=motorRun block="run %motor at %speed=motorSpeedPicker|\\%||for %value %unit" //% weight=100 blockGap=8 //% group="Move" - //% motor.fieldEditor="speed" + //% motor.fieldEditor="motors" //% motor.fieldOptions.decompileLiterals=1 //% expandableArgumentMode=toggle //% help=motors/motor/run @@ -397,7 +397,7 @@ namespace motors { //% blockId=motorSchedule block="ramp %motor at %speed=motorSpeedPicker|\\%|for %value|%unit||accelerate %acceleration|decelerate %deceleration" //% weight=99 blockGap=8 //% group="Move" - //% motor.fieldEditor="speed" + //% motor.fieldEditor="motors" //% motor.fieldOptions.decompileLiterals=1 //% help=motors/motor/ramp //% inlineInputMode=inline @@ -427,7 +427,7 @@ namespace motors { * of run commands. */ //% blockId=outputMotorsetRunRamp block="set %motor|run %ramp to $value||$unit" - //% motor.fieldEditor="speed" + //% motor.fieldEditor="motors" //% motor.fieldOptions.decompileLiterals=1 //% weight=21 blockGap=8 //% group="Properties" @@ -499,7 +499,7 @@ namespace motors { * @param value true for regulated motor */ //% blockId=outputMotorSetRegulated block="set %motor|regulated %value=toggleOnOff" - //% motor.fieldEditor="speed" + //% motor.fieldEditor="motors" //% motor.fieldOptions.decompileLiterals=1 //% weight=58 blockGap=8 //% group="Properties" @@ -525,7 +525,7 @@ namespace motors { * @param timeOut optional maximum pausing time in milliseconds */ //% blockId=motorPauseUntilRead block="pause until %motor|ready" - //% motor.fieldEditor="speed" + //% motor.fieldEditor="motors" //% motor.fieldOptions.decompileLiterals=1 //% weight=90 blockGap=8 //% group="Move" @@ -584,7 +584,7 @@ namespace motors { * @param motor the port which connects to the motor */ //% blockId=motorSpeed block="%motor|speed" - //% motor.fieldEditor="speed" + //% motor.fieldEditor="motors" //% motor.fieldOptions.decompileLiterals=1 //% weight=72 //% blockGap=8 @@ -600,7 +600,7 @@ namespace motors { * @param motor the port which connects to the motor */ //% blockId=motorAngle block="%motor|angle" - //% motor.fieldEditor="speed" + //% motor.fieldEditor="motors" //% motor.fieldOptions.decompileLiterals=1 //% weight=70 //% blockGap=8 @@ -615,7 +615,7 @@ namespace motors { * Clears the motor count */ //% blockId=motorClearCount block="clear %motor|counters" - //% motor.fieldEditor="speed" + //% motor.fieldEditor="motors" //% motor.fieldOptions.decompileLiterals=1 //% weight=68 //% blockGap=8 @@ -644,7 +644,7 @@ namespace motors { * Pauses the program until the motor is stalled. */ //% blockId=motorPauseUntilStall block="pause until %motor|stalled" - //% motor.fieldEditor="speed" + //% motor.fieldEditor="motors" //% motor.fieldOptions.decompileLiterals=1 //% weight=89 //% group="Move" @@ -669,28 +669,28 @@ namespace motors { } } - //% whenUsed fixedInstance block="large motor A" jres=icons.portA + //% whenUsed fixedInstance block="large motor A" jres=icons.motorLargePortA export const largeA = new Motor(Output.A, true); - //% whenUsed fixedInstance block="large motor B" jres=icons.portB + //% whenUsed fixedInstance block="large motor B" jres=icons.motorLargePortB export const largeB = new Motor(Output.B, true); - //% whenUsed fixedInstance block="large motor C" jres=icons.portC + //% whenUsed fixedInstance block="large motor C" jres=icons.motorLargePortC export const largeC = new Motor(Output.C, true); - //% whenUsed fixedInstance block="large motor D" jres=icons.portD + //% whenUsed fixedInstance block="large motor D" jres=icons.motorLargePortD export const largeD = new Motor(Output.D, true); - //% whenUsed fixedInstance block="medium motor A" jres=icons.portA + //% whenUsed fixedInstance block="medium motor A" jres=icons.motorMeduimPortA export const mediumA = new Motor(Output.A, false); - //% whenUsed fixedInstance block="medium motor B" jres=icons.portB + //% whenUsed fixedInstance block="medium motor B" jres=icons.motorMeduimPortB export const mediumB = new Motor(Output.B, false); - //% whenUsed fixedInstance block="medium motor C" jres=icons.portC + //% whenUsed fixedInstance block="medium motor C" jres=icons.motorMeduimPortC export const mediumC = new Motor(Output.C, false); - //% whenUsed fixedInstance block="medium motor D" jres=icons.portD + //% whenUsed fixedInstance block="medium motor D" jres=icons.motorMeduimPortD export const mediumD = new Motor(Output.D, false); //% fixedInstances @@ -721,7 +721,7 @@ namespace motors { * @param unit (optional) unit of the value */ //% blockId=motorPairTank block="tank **motors** %motors %speedLeft=motorSpeedPicker|\\% %speedRight=motorSpeedPicker|\\%||for %value %unit" - //% motors.fieldEditor="ports" + //% motors.fieldEditor="motors" //% weight=96 blockGap=8 //% inlineInputMode=inline //% group="Move" @@ -751,7 +751,7 @@ namespace motors { * @param unit (optional) unit of the value */ //% blockId=motorPairSteer block="steer **motors** %chassis turn ratio %turnRatio=motorTurnRatioPicker speed %speed=motorSpeedPicker|\\%||for %value %unit" - //% chassis.fieldEditor="ports" + //% chassis.fieldEditor="motors" //% weight=95 //% turnRatio.min=-200 turnRatio=200 //% inlineInputMode=inline @@ -824,16 +824,16 @@ namespace motors { } } - //% whenUsed fixedInstance block="B+C" jres=icons.portBC + //% whenUsed fixedInstance block="large motors B+C" jres=icons.dualMotorLargePortBC export const largeBC = new SynchedMotorPair(Output.BC); - //% whenUsed fixedInstance block="A+D" jres=icons.portAD + //% whenUsed fixedInstance block="large motors A+D" jres=icons.dualMotorLargePortAD export const largeAD = new SynchedMotorPair(Output.AD); - //% whenUsed fixedInstance block="A+B" jres=icons.portAB + //% whenUsed fixedInstance block="large motors A+B" jres=icons.dualMotorLargePortAB export const largeAB = new SynchedMotorPair(Output.AB); - //% whenUsed fixedInstance block="C+D" jres=icons.portCD + //% whenUsed fixedInstance block="large motors C+D" jres=icons.dualMotorLargePortCD export const largeCD = new SynchedMotorPair(Output.CD); function reset(out: Output) { diff --git a/pxtarget.json b/pxtarget.json index e274aab3..dd82aa55 100644 --- a/pxtarget.json +++ b/pxtarget.json @@ -159,6 +159,7 @@ "extendEditor": true, "extendFieldEditors": true, "scriptManager": true, + "debugger": true, "importExtensionFiles": true, "experiments": [ "python", diff --git a/sim/tsconfig.json b/sim/tsconfig.json index 67bd8125..15ca0210 100644 --- a/sim/tsconfig.json +++ b/sim/tsconfig.json @@ -1,6 +1,6 @@ { "compilerOptions": { - "target": "es5", + "target": "es2017", "noImplicitAny": true, "noImplicitReturns": true, "declaration": true, @@ -8,8 +8,8 @@ "rootDir": ".", "newLine": "LF", "sourceMap": false, - "lib": ["dom", "dom.iterable", "scripthost", "es6"], + "lib": ["dom", "dom.iterable", "scripthost", "es2017"], "types": [], "typeRoots": ["../node_modules/@types"] } -} +} \ No newline at end of file