Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

chore: merge rc/v11.2.0 into rc/v12.0.0 #8657

Open
wants to merge 82 commits into
base: rc/v12.0.0
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
82 commits
Select commit Hold shift + click to select a range
8cad97a
chore(deps): bump @hyperjump/json-schema from 1.6.7 to 1.9.3 (#8363)
dependabot[bot] Jul 19, 2024
1276c83
chore(deps): bump @microsoft/api-documenter from 7.25.4 to 7.25.7
dependabot[bot] Jul 22, 2024
5cd3188
chore(deps): bump @typescript-eslint/eslint-plugin from 7.16.0 to 7.1…
dependabot[bot] Jul 22, 2024
40c6d9c
fix: Enable blocks if user can't manually enable them. (#8354)
johnnesky Jul 22, 2024
625369c
chore(deps): bump rimraf from 5.0.7 to 5.0.9 (#8409)
dependabot[bot] Jul 22, 2024
47c9750
Merge pull request #8408 from google/dependabot/npm_and_yarn/develop/…
BeksOmega Jul 22, 2024
505f28f
Revert "chore: Pin node.js v22 to v22.4.1 in CI (#8393)" (#8398)
BeksOmega Jul 23, 2024
ebb56b2
docs(blocks): `block.ts` and `blocks/*` JSDoc / formatting / etc. cle…
cpcallen Jul 25, 2024
504de6a
fix: drag strategy only clear group id set by us (#8355)
HollowMan6 Jul 25, 2024
ee4a9dd
chore(deps): bump prettier from 3.3.2 to 3.3.3 (#8410)
dependabot[bot] Jul 26, 2024
1d8e318
chore(deps): bump @typescript-eslint/parser from 7.16.1 to 7.17.0 (#8…
dependabot[bot] Jul 29, 2024
0f74186
chore(deps): bump @typescript-eslint/eslint-plugin from 7.16.1 to 7.1…
dependabot[bot] Jul 29, 2024
e2310a4
fix: Codify component weights with toolbox in front of flyouts. (#8432)
johnnesky Jul 29, 2024
612b8c8
chore(deps): bump jsdom from 24.1.0 to 24.1.1 (#8444)
dependabot[bot] Jul 30, 2024
f020b54
fix: bring comments and bubbles to the front on click (#8451)
UCYT5040 Aug 2, 2024
159c5c4
chore(deps): bump rimraf from 5.0.9 to 5.0.10 (#8461)
dependabot[bot] Aug 5, 2024
cd31edb
fix: Update dev-tools and remove toolbox category tests Colour and An…
johnnesky Aug 5, 2024
23e9011
feat: expose `bringToFront()` method (#8472)
UCYT5040 Aug 7, 2024
cf5a3c0
chore(deps): bump @microsoft/api-documenter from 7.25.7 to 7.25.10 (#…
dependabot[bot] Aug 7, 2024
6b3f9a6
fix(touch): prevent infinite loop on multi-touch drag (#8470)
AbhinavKRN Aug 8, 2024
8fa216c
chore(deps): bump gulp from 4.0.2 to 5.0.0 (#8463)
dependabot[bot] Aug 9, 2024
f4731f2
chore(deps): bump @hyperjump/json-schema from 1.9.3 to 1.9.6 (#8482)
dependabot[bot] Aug 12, 2024
7ca8460
chore(deps): bump google-github-actions/deploy-appengine (#8483)
dependabot[bot] Aug 12, 2024
c0c365a
chore(deps): bump the npm_and_yarn group across 1 directory with 4 up…
dependabot[bot] Aug 12, 2024
f57ef73
chore(deps): bump @typescript-eslint/eslint-plugin from 7.17.0 to 8.0…
dependabot[bot] Aug 14, 2024
ec8f9c8
chore: removed the whole Drag category from the browser test (#8478)
abhinavjha0239 Aug 14, 2024
ce22f42
chore: Organise imports (#8527)
cpcallen Aug 15, 2024
17e4f1c
Fix: let workspace comment have delete cursor over trash. (#8477)
johnnesky Aug 15, 2024
806f8f9
chore(deps): bump typescript from 5.5.3 to 5.5.4 (#8535)
dependabot[bot] Aug 19, 2024
7ccdcc5
refactor(events): introduce `EventType` enum in separate module (#8530)
cpcallen Aug 20, 2024
bde216d
refactor(events): Don't filter events before undo (#8537)
cpcallen Aug 20, 2024
032b5ed
refactor(events): Introduce and use event type predicates (#8538)
cpcallen Aug 20, 2024
9445adf
chore(deps): bump mocha from 10.6.0 to 10.7.3 (#8481)
dependabot[bot] Aug 21, 2024
3a3e83f
Fix workspace clean up not considering immovables.
BenHenning Aug 21, 2024
ca42a4b
Merge branch 'develop' into ensure-immovable-blocks-are-considered-du…
BenHenning Aug 21, 2024
0413021
Auto-fix formatting issues to address CI failure.
BenHenning Aug 21, 2024
348a5b3
Addressed self-review comment.
BenHenning Aug 22, 2024
095f29e
fix: Detect if deleting shadow block affects selection highlight (#8533)
johnnesky Aug 26, 2024
07da975
chore(deps): bump @typescript-eslint/parser from 8.1.0 to 8.2.0 (#8552)
dependabot[bot] Aug 26, 2024
a7afda8
fix(events): Simplify `filter` function, add new `enqueueEvent` funct…
cpcallen Aug 29, 2024
724828f
refactor: Use arrow functions when calling Array.prototype.filter (#8…
cpcallen Aug 30, 2024
2409123
refactor: Omit unused exception arguments from catch blocks (#8559)
cpcallen Sep 3, 2024
074a549
chore(deps): bump @blockly/dev-tools from 8.0.6 to 8.0.9 (#8562)
dependabot[bot] Sep 3, 2024
4d0fd5d
fix(comments): added workspace comments and comment drag strategy isD…
changminbark Sep 3, 2024
0c29d88
chore(deps): bump jsdom from 24.1.1 to 25.0.0 (#8553)
dependabot[bot] Sep 3, 2024
d10c564
chore(deps): bump webdriverio from 8.39.0 to 9.0.7 (#8561)
dependabot[bot] Sep 3, 2024
0a6596c
feat: mark some marker_svg properties protected instead of private (#…
rachel-fenichel Sep 3, 2024
fbafda3
Merge branch 'develop' into ensure-immovable-blocks-are-considered-du…
BenHenning Sep 3, 2024
05795a0
Rename 'tidyUp' back to 'cleanUp'.
BenHenning Sep 3, 2024
812d23b
release: Merge branch 'develop' into rc/v11.2.0
rachel-fenichel Sep 4, 2024
63158b6
release: Update version number to 11.2.0-beta.0
rachel-fenichel Sep 4, 2024
6acc583
Merge pull request #8550 from BenHenning/ensure-immovable-blocks-are-…
BenHenning Sep 5, 2024
483f8fb
chore(deps): bump @typescript-eslint/eslint-plugin from 8.1.0 to 8.4.…
dependabot[bot] Sep 9, 2024
8211c1a
chore(deps): bump @hyperjump/browser from 1.1.4 to 1.1.6 (#8569)
dependabot[bot] Sep 13, 2024
561b418
fix: Factor out workspace drag methods into utils. (#8566)
johnnesky Sep 13, 2024
de6982a
chore(deps): bump @microsoft/api-documenter from 7.25.10 to 7.25.14 (…
dependabot[bot] Sep 16, 2024
73416d4
chore(deps): bump @typescript-eslint/parser from 8.2.0 to 8.5.0 (#8577)
dependabot[bot] Sep 16, 2024
51f6dab
fix: Simplify list and text WHERE validation (#8575)
johnnesky Sep 20, 2024
bc2b142
chore(deps): bump @blockly/theme-modern from 6.0.3 to 6.0.7 (#8583)
dependabot[bot] Sep 23, 2024
8d44a4d
fix: Group field validator changes with field value changes. (#8589)
johnnesky Sep 24, 2024
e5a2e62
chore(deps): bump @typescript-eslint/eslint-plugin from 8.4.0 to 8.6.…
dependabot[bot] Sep 25, 2024
f7a2c4d
chore(deps): bump webdriverio from 9.0.7 to 9.0.9 (#8582)
dependabot[bot] Sep 25, 2024
5fd337b
chore(deps): bump concurrently from 8.2.2 to 9.0.1 (#8602)
dependabot[bot] Sep 30, 2024
9b3603a
fix: Let block factory overwrite user defined blocks. (#8605)
johnnesky Oct 2, 2024
9cd58e3
refactor(shortcuts): Improve shortcut registry documentation & style …
cpcallen Oct 2, 2024
c8c4684
chore(deps): bump @hyperjump/json-schema from 1.9.6 to 1.9.8 (#8603)
dependabot[bot] Oct 2, 2024
51c5809
chore(deps): bump @typescript-eslint/parser from 8.5.0 to 8.8.1 (#8620)
dependabot[bot] Oct 14, 2024
4a0b26f
chore(deps): bump jsdom from 25.0.0 to 25.0.1 (#8604)
dependabot[bot] Oct 15, 2024
60da7d8
chore(deps): bump @microsoft/api-extractor from 7.47.0 to 7.47.9 (#8612)
dependabot[bot] Oct 15, 2024
edc8473
chore(deps): bump typescript from 5.5.4 to 5.6.3 (#8623)
dependabot[bot] Oct 21, 2024
437f6a3
fix: bump initiator group in an orthogonal direction from neighboring…
johnnesky Oct 25, 2024
1d25903
chore(deps): bump @typescript-eslint/parser from 8.8.1 to 8.11.0 (#8629)
dependabot[bot] Oct 28, 2024
6a67400
fix: clear touch identifier on comment icon down (#8627)
riknoll Oct 28, 2024
0d88280
chore(deps): bump @microsoft/api-extractor from 7.47.9 to 7.47.11 (#8…
dependabot[bot] Nov 1, 2024
d053008
chore(deps): bump google-github-actions/deploy-appengine (#8630)
dependabot[bot] Nov 1, 2024
aedcfd6
fix: Use a readonly textarea for non-editable comments. (#8632)
gonfunko Nov 4, 2024
3c91b30
chore(deps): bump eslint-plugin-jsdoc from 48.5.0 to 50.4.3 (#8641)
dependabot[bot] Nov 7, 2024
f1cbaab
refactor: Move functions into FieldDropdown. (#8634)
gonfunko Nov 8, 2024
378d5a9
chore(deps): bump chai from 5.1.1 to 5.1.2 (#8651)
dependabot[bot] Nov 11, 2024
9a7de53
fix: Fix crash when resizing page while editing a field. (#8646)
gonfunko Nov 11, 2024
84de76f
release: Merge branch 'develop' into rc/v11.2.0
gonfunko Nov 11, 2024
22c879f
release: Update version number to 11.2.0-beta.1
gonfunko Nov 11, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
2 changes: 2 additions & 0 deletions .eslintrc.js
Original file line number Diff line number Diff line change
Expand Up @@ -101,6 +101,8 @@ function buildTSOverride({files, tsconfig}) {
'@typescript-eslint/no-empty-function': ['off'],
// Temporarily disable. 3 problems.
'@typescript-eslint/no-empty-interface': ['off'],
// We use this pattern extensively for block (e.g. controls_if) interfaces.
'@typescript-eslint/no-empty-object-type': ['off'],

// TsDoc rules (using JsDoc plugin)
// Disable built-in jsdoc verifier.
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/appengine_deploy.yml
Original file line number Diff line number Diff line change
Expand Up @@ -42,7 +42,7 @@ jobs:
path: _deploy/

- name: Deploy to App Engine
uses: google-github-actions/deploy-appengine@v2.1.2
uses: google-github-actions/deploy-appengine@v2.1.4
# For parameters see:
# https://github.com/google-github-actions/deploy-appengine#inputs
with:
Expand Down
3 changes: 1 addition & 2 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -18,8 +18,7 @@ jobs:
# TODO (#2114): re-enable osx build.
# os: [ubuntu-latest, macos-latest]
os: [ubuntu-latest]
# TODO(#8392): unpin v22 once npm issue fixed.
node-version: [18.x, 20.x, 22.4.1]
node-version: [18.x, 20.x, 22.x]
# See supported Node.js release schedule at
# https://nodejs.org/en/about/releases/

Expand Down
2 changes: 2 additions & 0 deletions .prettierrc.js
Original file line number Diff line number Diff line change
Expand Up @@ -10,4 +10,6 @@ module.exports = {
bracketSpacing: false,
// Put HTML tag closing brackets on same line as last attribute.
bracketSameLine: true,
// Organise imports using a plugin.
'plugins': ['prettier-plugin-organize-imports'],
};
2 changes: 1 addition & 1 deletion appengine/blockly_compressed.js
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,6 @@ var msg = 'Compiled Blockly files should be loaded from https://unpkg.com/blockl
console.log(msg);
try {
alert(msg);
} catch (_e) {
} catch {
// Can't alert? Probably node.js.
}
2 changes: 1 addition & 1 deletion blocks/blocks.ts
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@

// Former goog.module ID: Blockly.libraryBlocks

import type {BlockDefinition} from '../core/blocks.js';
import * as lists from './lists.js';
import * as logic from './logic.js';
import * as loops from './loops.js';
Expand All @@ -14,7 +15,6 @@ import * as procedures from './procedures.js';
import * as texts from './text.js';
import * as variables from './variables.js';
import * as variablesDynamic from './variables_dynamic.js';
import type {BlockDefinition} from '../core/blocks.js';

export {
lists,
Expand Down
155 changes: 69 additions & 86 deletions blocks/lists.ts
Original file line number Diff line number Diff line change
Expand Up @@ -6,22 +6,22 @@

// Former goog.module ID: Blockly.libraryBlocks.lists

import * as fieldRegistry from '../core/field_registry.js';
import * as xmlUtils from '../core/utils/xml.js';
import {Align} from '../core/inputs/align.js';
import type {Block} from '../core/block.js';
import type {Connection} from '../core/connection.js';
import type {BlockSvg} from '../core/block_svg.js';
import type {FieldDropdown} from '../core/field_dropdown.js';
import {Msg} from '../core/msg.js';
import {MutatorIcon} from '../core/icons/mutator_icon.js';
import type {Workspace} from '../core/workspace.js';
import {
createBlockDefinitionsFromJsonArray,
defineBlocks,
} from '../core/common.js';
import type {Connection} from '../core/connection.js';
import '../core/field_dropdown.js';
import type {FieldDropdown} from '../core/field_dropdown.js';
import * as fieldRegistry from '../core/field_registry.js';
import {MutatorIcon} from '../core/icons/mutator_icon.js';
import {Align} from '../core/inputs/align.js';
import {ValueInput} from '../core/inputs/value_input.js';
import {Msg} from '../core/msg.js';
import * as xmlUtils from '../core/utils/xml.js';
import type {Workspace} from '../core/workspace.js';

/**
* A dictionary of the block definitions provided by this module.
Expand Down Expand Up @@ -412,6 +412,24 @@ const LISTS_GETINDEX = {
this.appendDummyInput()
.appendField(modeMenu, 'MODE')
.appendField('', 'SPACE');
const menu = fieldRegistry.fromJson({
type: 'field_dropdown',
options: this.WHERE_OPTIONS,
}) as FieldDropdown;
menu.setValidator(
/** @param value The input value. */
function (this: FieldDropdown, value: string) {
const oldValue: string | null = this.getValue();
const oldAt = oldValue === 'FROM_START' || oldValue === 'FROM_END';
const newAt = value === 'FROM_START' || value === 'FROM_END';
if (newAt !== oldAt) {
const block = this.getSourceBlock() as GetIndexBlock;
block.updateAt_(newAt);
}
return undefined;
},
);
this.appendDummyInput().appendField(menu, 'WHERE');
this.appendDummyInput('AT');
if (Msg['LISTS_GET_INDEX_TAIL']) {
this.appendDummyInput('TAIL').appendField(Msg['LISTS_GET_INDEX_TAIL']);
Expand Down Expand Up @@ -577,31 +595,6 @@ const LISTS_GETINDEX = {
} else {
this.appendDummyInput('AT');
}
const menu = fieldRegistry.fromJson({
type: 'field_dropdown',
options: this.WHERE_OPTIONS,
}) as FieldDropdown;
menu.setValidator(
/**
* @param value The input value.
* @returns Null if the field has been replaced; otherwise undefined.
*/
function (this: FieldDropdown, value: string) {
const newAt = value === 'FROM_START' || value === 'FROM_END';
// The 'isAt' variable is available due to this function being a
// closure.
if (newAt !== isAt) {
const block = this.getSourceBlock() as GetIndexBlock;
block.updateAt_(newAt);
// This menu has been destroyed and replaced. Update the
// replacement.
block.setFieldValue(value, 'WHERE');
return null;
}
return undefined;
},
);
this.getInput('AT')!.appendField(menu, 'WHERE');
if (Msg['LISTS_GET_INDEX_TAIL']) {
this.moveInputBefore('TAIL', null);
}
Expand Down Expand Up @@ -644,6 +637,24 @@ const LISTS_SETINDEX = {
this.appendDummyInput()
.appendField(operationDropdown, 'MODE')
.appendField('', 'SPACE');
const menu = fieldRegistry.fromJson({
type: 'field_dropdown',
options: this.WHERE_OPTIONS,
}) as FieldDropdown;
menu.setValidator(
/** @param value The input value. */
function (this: FieldDropdown, value: string) {
const oldValue: string | null = this.getValue();
const oldAt = oldValue === 'FROM_START' || oldValue === 'FROM_END';
const newAt = value === 'FROM_START' || value === 'FROM_END';
if (newAt !== oldAt) {
const block = this.getSourceBlock() as SetIndexBlock;
block.updateAt_(newAt);
}
return undefined;
},
);
this.appendDummyInput().appendField(menu, 'WHERE');
this.appendDummyInput('AT');
this.appendValueInput('TO').appendField(Msg['LISTS_SET_INDEX_INPUT_TO']);
this.setInputsInline(true);
Expand Down Expand Up @@ -756,36 +767,10 @@ const LISTS_SETINDEX = {
} else {
this.appendDummyInput('AT');
}
const menu = fieldRegistry.fromJson({
type: 'field_dropdown',
options: this.WHERE_OPTIONS,
}) as FieldDropdown;
menu.setValidator(
/**
* @param value The input value.
* @returns Null if the field has been replaced; otherwise undefined.
*/
function (this: FieldDropdown, value: string) {
const newAt = value === 'FROM_START' || value === 'FROM_END';
// The 'isAt' variable is available due to this function being a
// closure.
if (newAt !== isAt) {
const block = this.getSourceBlock() as SetIndexBlock;
block.updateAt_(newAt);
// This menu has been destroyed and replaced. Update the
// replacement.
block.setFieldValue(value, 'WHERE');
return null;
}
return undefined;
},
);
this.moveInputBefore('AT', 'TO');
if (this.getInput('ORDINAL')) {
this.moveInputBefore('ORDINAL', 'TO');
}

this.getInput('AT')!.appendField(menu, 'WHERE');
},
};
blocks['lists_setIndex'] = LISTS_SETINDEX;
Expand Down Expand Up @@ -818,7 +803,30 @@ const LISTS_GETSUBLIST = {
this.appendValueInput('LIST')
.setCheck('Array')
.appendField(Msg['LISTS_GET_SUBLIST_INPUT_IN_LIST']);
const createMenu = (n: 1 | 2): FieldDropdown => {
const menu = fieldRegistry.fromJson({
type: 'field_dropdown',
options:
this[('WHERE_OPTIONS_' + n) as 'WHERE_OPTIONS_1' | 'WHERE_OPTIONS_2'],
}) as FieldDropdown;
menu.setValidator(
/** @param value The input value. */
function (this: FieldDropdown, value: string) {
const oldValue: string | null = this.getValue();
const oldAt = oldValue === 'FROM_START' || oldValue === 'FROM_END';
const newAt = value === 'FROM_START' || value === 'FROM_END';
if (newAt !== oldAt) {
const block = this.getSourceBlock() as GetSublistBlock;
block.updateAt_(n, newAt);
}
return undefined;
},
);
return menu;
};
this.appendDummyInput('WHERE1_INPUT').appendField(createMenu(1), 'WHERE1');
this.appendDummyInput('AT1');
this.appendDummyInput('WHERE2_INPUT').appendField(createMenu(2), 'WHERE2');
this.appendDummyInput('AT2');
if (Msg['LISTS_GET_SUBLIST_TAIL']) {
this.appendDummyInput('TAIL').appendField(Msg['LISTS_GET_SUBLIST_TAIL']);
Expand Down Expand Up @@ -896,35 +904,10 @@ const LISTS_GETSUBLIST = {
} else {
this.appendDummyInput('AT' + n);
}
const menu = fieldRegistry.fromJson({
type: 'field_dropdown',
options:
this[('WHERE_OPTIONS_' + n) as 'WHERE_OPTIONS_1' | 'WHERE_OPTIONS_2'],
}) as FieldDropdown;
menu.setValidator(
/**
* @param value The input value.
* @returns Null if the field has been replaced; otherwise undefined.
*/
function (this: FieldDropdown, value: string) {
const newAt = value === 'FROM_START' || value === 'FROM_END';
// The 'isAt' variable is available due to this function being a
// closure.
if (newAt !== isAt) {
const block = this.getSourceBlock() as GetSublistBlock;
block.updateAt_(n, newAt);
// This menu has been destroyed and replaced.
// Update the replacement.
block.setFieldValue(value, 'WHERE' + n);
return null;
}
},
);
this.getInput('AT' + n)!.appendField(menu, 'WHERE' + n);
if (n === 1) {
this.moveInputBefore('AT1', 'AT2');
this.moveInputBefore('AT1', 'WHERE2_INPUT');
if (this.getInput('ORDINAL1')) {
this.moveInputBefore('ORDINAL1', 'AT2');
this.moveInputBefore('ORDINAL1', 'WHERE2_INPUT');
}
}
if (Msg['LISTS_GET_SUBLIST_TAIL']) {
Expand Down
14 changes: 7 additions & 7 deletions blocks/logic.ts
Original file line number Diff line number Diff line change
Expand Up @@ -6,22 +6,22 @@

// Former goog.module ID: Blockly.libraryBlocks.logic

import * as Events from '../core/events/events.js';
import * as Extensions from '../core/extensions.js';
import * as xmlUtils from '../core/utils/xml.js';
import type {Abstract as AbstractEvent} from '../core/events/events_abstract.js';
import type {Block} from '../core/block.js';
import type {BlockSvg} from '../core/block_svg.js';
import type {Connection} from '../core/connection.js';
import {Msg} from '../core/msg.js';
import type {Workspace} from '../core/workspace.js';
import {
createBlockDefinitionsFromJsonArray,
defineBlocks,
} from '../core/common.js';
import type {Connection} from '../core/connection.js';
import * as Events from '../core/events/events.js';
import type {Abstract as AbstractEvent} from '../core/events/events_abstract.js';
import * as Extensions from '../core/extensions.js';
import '../core/field_dropdown.js';
import '../core/field_label.js';
import '../core/icons/mutator_icon.js';
import {Msg} from '../core/msg.js';
import * as xmlUtils from '../core/utils/xml.js';
import type {Workspace} from '../core/workspace.js';

/**
* A dictionary of the block definitions provided by this module.
Expand Down
16 changes: 8 additions & 8 deletions blocks/loops.ts
Original file line number Diff line number Diff line change
Expand Up @@ -6,27 +6,27 @@

// Former goog.module ID: Blockly.libraryBlocks.loops

import type {Abstract as AbstractEvent} from '../core/events/events_abstract.js';
import type {Block} from '../core/block.js';
import {
createBlockDefinitionsFromJsonArray,
defineBlocks,
} from '../core/common.js';
import * as ContextMenu from '../core/contextmenu.js';
import type {
ContextMenuOption,
LegacyContextMenuOption,
} from '../core/contextmenu_registry.js';
import * as Events from '../core/events/events.js';
import * as Extensions from '../core/extensions.js';
import {Msg} from '../core/msg.js';
import {
createBlockDefinitionsFromJsonArray,
defineBlocks,
} from '../core/common.js';
import type {Abstract as AbstractEvent} from '../core/events/events_abstract.js';
import * as eventUtils from '../core/events/utils.js';
import * as Extensions from '../core/extensions.js';
import '../core/field_dropdown.js';
import '../core/field_label.js';
import '../core/field_number.js';
import '../core/field_variable.js';
import '../core/icons/warning_icon.js';
import {FieldVariable} from '../core/field_variable.js';
import '../core/icons/warning_icon.js';
import {Msg} from '../core/msg.js';
import {WorkspaceSvg} from '../core/workspace_svg.js';

/**
Expand Down
6 changes: 3 additions & 3 deletions blocks/math.ts
Original file line number Diff line number Diff line change
Expand Up @@ -6,18 +6,18 @@

// Former goog.module ID: Blockly.libraryBlocks.math

import * as Extensions from '../core/extensions.js';
import type {FieldDropdown} from '../core/field_dropdown.js';
import * as xmlUtils from '../core/utils/xml.js';
import type {Block} from '../core/block.js';
import {
createBlockDefinitionsFromJsonArray,
defineBlocks,
} from '../core/common.js';
import * as Extensions from '../core/extensions.js';
import '../core/field_dropdown.js';
import type {FieldDropdown} from '../core/field_dropdown.js';
import '../core/field_label.js';
import '../core/field_number.js';
import '../core/field_variable.js';
import * as xmlUtils from '../core/utils/xml.js';

/**
* A dictionary of the block definitions provided by this module.
Expand Down
Loading
Loading