Commit Graph

7907 Commits

Author SHA1 Message Date
dependabot[bot]
a344eaf149 chore(deps): bump google-github-actions/deploy-appengine (#6951)
Bumps [google-github-actions/deploy-appengine](https://github.com/google-github-actions/deploy-appengine) from 1.2.2 to 1.2.6.
- [Release notes](https://github.com/google-github-actions/deploy-appengine/releases)
- [Changelog](https://github.com/google-github-actions/deploy-appengine/blob/main/CHANGELOG.md)
- [Commits](https://github.com/google-github-actions/deploy-appengine/compare/v1.2.2...v1.2.6)

---
updated-dependencies:
- dependency-name: google-github-actions/deploy-appengine
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-04-10 14:22:11 -07:00
dependabot[bot]
90ffa76086 chore(deps): bump google-closure-compiler (#6948)
Bumps [google-closure-compiler](https://github.com/google/closure-compiler-npm) from 20230206.0.0 to 20230228.0.0.
- [Release notes](https://github.com/google/closure-compiler-npm/releases)
- [Commits](https://github.com/google/closure-compiler-npm/compare/v20230206.0.0...v20230228.0.0)

---
updated-dependencies:
- dependency-name: google-closure-compiler
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-04-10 13:59:01 -07:00
Aaron Dodson
b32e76d45f refactor: Remove some more uses of AnyDuringMigration. (#6970) 2023-04-10 13:57:04 -07:00
dependabot[bot]
5a671da5aa chore(deps): bump typescript from 5.0.2 to 5.0.4 (#6966)
Bumps [typescript](https://github.com/Microsoft/TypeScript) from 5.0.2 to 5.0.4.
- [Release notes](https://github.com/Microsoft/TypeScript/releases)
- [Commits](https://github.com/Microsoft/TypeScript/compare/v5.0.2...v5.0.4)

---
updated-dependencies:
- dependency-name: typescript
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-04-10 13:54:43 -07:00
dependabot[bot]
9bcdd5dd18 chore(deps): bump google-closure-deps from 20230206.0.0 to 20230228.0.0 (#6965)
Bumps [google-closure-deps](https://github.com/google/closure-library) from 20230206.0.0 to 20230228.0.0.
- [Release notes](https://github.com/google/closure-library/releases)
- [Commits](https://github.com/google/closure-library/compare/v20230206...v20230228)

---
updated-dependencies:
- dependency-name: google-closure-deps
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-04-10 13:54:21 -07:00
Rachel Fenichel
48bdeb3bdb chore: remove underscores from private properties and methods for flyout (#6960)
* chore: remove underscores in flyout files

* chore: remove underscores in flyout_button
2023-04-07 15:40:56 -07:00
Rachel Fenichel
8378eddd17 chore: remove underscores from properties and methods in trashcan (#6959) 2023-04-07 14:51:35 -07:00
Beka Westberg
ec6e951e68 release: v9.3.2
Merge pull request #6955 from google/rc/v9.3.2
blockly-v9.3.2
2023-04-06 12:10:28 -07:00
Beka Westberg
860dddd08f release: Update version number to 9.3.2 2023-04-06 18:55:00 +00:00
Beka Westberg
4271e1a4a7 fix: disposing during dragging (#6954)
(cherry picked from commit 2167afab85)
2023-04-06 18:54:07 +00:00
Beka Westberg
d227ec2c89 fix: remove forced rerender from mutator (#6918)
(cherry picked from commit d897cdcf1d)
2023-04-06 18:53:58 +00:00
Beka Westberg
2167afab85 fix: disposing during dragging (#6954) 2023-04-06 11:41:12 -07:00
Beka Westberg
7c17ab9931 fix: collapsed toolbox categories being expanded (#6942) 2023-04-06 09:09:34 -07:00
dependabot[bot]
ce4260c373 chore(deps): bump eslint from 8.34.0 to 8.37.0 (#6946)
Bumps [eslint](https://github.com/eslint/eslint) from 8.34.0 to 8.37.0.
- [Release notes](https://github.com/eslint/eslint/releases)
- [Changelog](https://github.com/eslint/eslint/blob/main/CHANGELOG.md)
- [Commits](https://github.com/eslint/eslint/compare/v8.34.0...v8.37.0)

---
updated-dependencies:
- dependency-name: eslint
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-04-06 15:59:23 +01:00
Beka Westberg
25c6d473ce Merge pull request #6918 from BeksOmega/fix/mutator-rerender
fix: remove forced rerender from mutator
2023-04-05 16:21:57 -07:00
Beka Westberg
2bf456d214 chore: Merge master back into develop following v9.3.0 release
Merge pull request #6935 from google/master
2023-04-04 13:12:22 -07:00
dependabot[bot]
3996d8f250 chore(deps): bump concurrently from 7.6.0 to 8.0.1 (#6949)
Bumps [concurrently](https://github.com/open-cli-tools/concurrently) from 7.6.0 to 8.0.1.
- [Release notes](https://github.com/open-cli-tools/concurrently/releases)
- [Commits](https://github.com/open-cli-tools/concurrently/compare/v7.6.0...v8.0.1)

---
updated-dependencies:
- dependency-name: concurrently
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-04-03 08:44:09 -07:00
Beka Westberg
cf850d5f78 Merge pull request #6941 from google/rc/v9.3.1
release: v9.3.1
blockly-v9.3.1
2023-03-30 14:01:14 -07:00
Beka Westberg
15b83d42db release: Update version number to 9.3.1 2023-03-30 20:45:03 +00:00
Maribeth Bottorff
8e1890a93c fix: allow splicing into shadow block stacks (#6939)
* fix: allow splicing into shadow block stacks

* chore: format

(cherry picked from commit 69afe5b60f)
2023-03-30 20:44:40 +00:00
Maribeth Bottorff
69afe5b60f fix: allow splicing into shadow block stacks (#6939)
* fix: allow splicing into shadow block stacks

* chore: format
2023-03-30 13:32:57 -07:00
Beka Westberg
9c9aef1d23 release: v9.3.0
Merge pull request #6934 from google/rc/v9.3.0
blockly-v9.3.0
2023-03-29 10:56:46 -07:00
Beka Westberg
a17c86ea7c release: Update version number to 9.3.0 2023-03-29 17:12:05 +00:00
Beka Westberg
d642aa0dad release: Merge branch 'develop' into rc/v9.3.0 2023-03-29 17:11:20 +00:00
Beka Westberg
9328eebd73 chore: Update metadata for 2023 Q1 release (#6933) 2023-03-29 10:10:11 -07:00
Beka Westberg
ba208037c0 chore: update renamings file for 2023 Q1 release (#6932) 2023-03-29 10:09:58 -07:00
Beka Westberg
3572986577 chore: Rollup of 2023 Q1 updates from TranslateWiki (#6931) 2023-03-29 10:09:48 -07:00
Christopher Allen
42e838621d chore(build): Temporarily exclude blocks and generators .d.ts files (#6930)
Temporarily exclude the generated .d.ts files for blocks/* and
generators/* from the package.

This will in due course replace the (very simplistic) hand-written
versions in typings/, but for now they are not referenced
anywhere a developer's tooling should be looking, and contain
in some cases actually incorrect typings (e.g., in unmigrated
blocks files, the blocks export is typed as ObjectConstructor,
which is wrong), so do not include them in the package least they
cause problems for the unwary.
2023-03-28 22:30:08 +01:00
Beka Westberg
7291fa04a9 fix: mutator not resizing for flyout (#6917) 2023-03-28 12:47:02 -07:00
dependabot[bot]
c688c9382b chore(deps): bump @blockly/dev-tools from 5.0.2 to 5.2.4 (#6927)
Bumps [@blockly/dev-tools](https://github.com/google/blockly-samples/tree/HEAD/plugins/dev-tools) from 5.0.2 to 5.2.4.
- [Release notes](https://github.com/google/blockly-samples/releases)
- [Changelog](https://github.com/google/blockly-samples/blob/master/plugins/dev-tools/CHANGELOG.md)
- [Commits](https://github.com/google/blockly-samples/commits/@blockly/dev-tools@5.2.4/plugins/dev-tools)

---
updated-dependencies:
- dependency-name: "@blockly/dev-tools"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-03-27 18:28:04 +01:00
dependabot[bot]
c1e2956a31 chore(deps): bump patch-package from 6.5.0 to 6.5.1 (#6804)
Bumps [patch-package](https://github.com/ds300/patch-package) from 6.5.0 to 6.5.1.
- [Release notes](https://github.com/ds300/patch-package/releases)
- [Changelog](https://github.com/ds300/patch-package/blob/master/CHANGELOG.md)
- [Commits](https://github.com/ds300/patch-package/compare/v6.5.0...v6.5.1)

---
updated-dependencies:
- dependency-name: patch-package
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-03-27 08:48:16 -07:00
dependabot[bot]
a83840c28d chore(deps): bump closure-calculate-chunks from 3.0.3 to 3.1.1 (#6926)
Bumps [closure-calculate-chunks](https://github.com/chadkillingsworth/closure-calculate-chunks) from 3.0.3 to 3.1.1.
- [Release notes](https://github.com/chadkillingsworth/closure-calculate-chunks/releases)
- [Commits](https://github.com/chadkillingsworth/closure-calculate-chunks/compare/v3.0.3...v3.1.1)

---
updated-dependencies:
- dependency-name: closure-calculate-chunks
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-03-27 08:19:48 -07:00
Aaron Dodson
d004bd256d fix: Make Escape cancel changes in text fields. (#6923) 2023-03-24 14:56:25 -07:00
Beka Westberg
0708c97ffe fix: connection locations not updating (#6921)
* fix: connection locations not updating

* chore: update TODO
2023-03-24 19:58:33 +00:00
Christopher Allen
faa95d022d fix(fields): Make SKIP_SETUP a Symbol; remove Sentinel class (#6919)
We introduced the SKIP_SETUP sentinel value when converting
Field and its subclasses to ES6 class syntax, because super
must be called before any other code in a subclass
constructor, breaking the previous mechanism where subclasses
would set some properties before calling their superclass
constructor.

SKIP_SETUP was a singleton value of class Sentinel.

Recently, in PR #6639 @btw17 introduced the isSentinel type
predicate to improve the typing of Field.  Unfortunately, there
were some aspects of this change that were not very elegant:

- isSentinel was declared as a static method on Field (rather
  than on Sentinel itself).
- It only checks against the specific value SKIP_SETUP,
  rather than checking if the argument is instanceof Sentinel
  (though perhaps this is for efficiency?)

Additionally - as a result of the migration from ES6 to TS, and
predating PR #6639 - The signature for the Field constructor's
first argument was typed T|Sentinel, with subclass constructors
generally being <some type(s)>|Sentinel.

This creates a small problem when attempting to port Fields from
core to plugins, because Sentinel is not reexported by
core/utils.ts (and therefore not from core/blockly.ts either).

The latter problem could be solved simply by reexporting Sentinel,
or by having plugin constructors not accept SKIP_SETUP (though
this potentially makes them more difficult to subclass), but
neither is particularly desirable.

Instead, this PR proposes that we:

- Make Field.SKIP_SETUP a (unique) Symbol.
- Change the value argument to the Field constructor to accept
  T|typeof Field.SKIP_SETUP - where typeof Field.SKIP_SETUP is
  (like a literal type) a type that accepts just the single
  value SKIP_SETUP.
- Remove the Sentinel class and core/utils/sentinel.ts.

Not treating this as a breaking change:

- Removes Field.isSentinel - though this addition has not yet
  been published, so it can only break our own as-yet-unreleased
  code in samples.

- Changes the type of Field.SKIP_SETUP and the first argument
  of the Field constructor from Sentinel to typeof SKIP_SETUP
  (a unique Symbol) - but given that Sentinel has never been
  exported this should not break any actual external code.
2023-03-23 20:30:48 +00:00
Beka Westberg
01ecf547f4 fix: overwriting flyout def with dynamic categories (#6913)
* fix: overwriting flyout def with dynamic categories

* chore: revert playground testing

* fix: change createFlyoutInfo_ to be recursive
2023-03-22 15:25:47 -07:00
Beka Westberg
d897cdcf1d fix: remove forced rerender from mutator 2023-03-22 21:43:57 +00:00
dependabot[bot]
00dae595ff chore(deps): bump typescript from 4.9.5 to 5.0.2 (#6908)
Bumps [typescript](https://github.com/Microsoft/TypeScript) from 4.9.5 to 5.0.2.
- [Release notes](https://github.com/Microsoft/TypeScript/releases)
- [Commits](https://github.com/Microsoft/TypeScript/compare/v4.9.5...v5.0.2)

---
updated-dependencies:
- dependency-name: typescript
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-03-22 16:36:10 +00:00
Beka Westberg
a7d250cb78 fix: flyouts resizing for blocks (#6914)
* fix: flyouts resizing for blocks

* chore: fix node build

* chore: actually fix node
2023-03-21 15:27:04 -07:00
Beka Westberg
252b204adb fix: scrolling dropdown items into view (#6912)
* fix: scrolling dropdown items into view

* chore: lint
2023-03-21 10:00:40 -07:00
Aaron Dodson
cbb3829707 fix: Fix scrolling of menus on mobile. (#6911) 2023-03-20 15:27:51 -07:00
dependabot[bot]
40b454fb2f chore(deps): bump @typescript-eslint/eslint-plugin from 5.50.0 to 5.55.0 (#6909)
Bumps [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) from 5.50.0 to 5.55.0.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v5.55.0/packages/eslint-plugin)

---
updated-dependencies:
- dependency-name: "@typescript-eslint/eslint-plugin"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-03-20 17:43:58 +00:00
Beka Westberg
ed531ec313 chore: remove all namespace comments (#6903)
* chore: remove all namespace comments

* chore: fix lint
2023-03-20 09:43:58 -07:00
dependabot[bot]
5cdd2bf65f chore(deps): bump peter-evans/create-pull-request from 4.2.3 to 4.2.4 (#6910)
Bumps [peter-evans/create-pull-request](https://github.com/peter-evans/create-pull-request) from 4.2.3 to 4.2.4.
- [Release notes](https://github.com/peter-evans/create-pull-request/releases)
- [Commits](2b011faafd...38e0b6e68b)

---
updated-dependencies:
- dependency-name: peter-evans/create-pull-request
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-03-20 09:06:08 -07:00
Christopher Allen
bb9f31853d refactor(blocks): Migrate blocks/math.js to TypeScript (#6900)
* refactor(blocks): Auto-migration of blocks/math.js to ts

  This is just the result of running js2ts on this file.

* fix(blocks): Manually migrate & fix types in math.ts

* chore(blocks): clang-format math.ts

* fix(blocks): Corrections for comments on PR #6900

* refactor(blocks): Define types for mixin-ed blocks, etc.

  Define types to represent the union of Block and each of the
  *_MIXINs, and use these types for the type of this in mixin
  methods.

* refactor(blocks): Misc minor changes

  Make sure validator functions explicitly return undefined.
  Field.prototype.setValidator takes a FieldValidator<T>, which
  must be a non-void function.  I'm not sure why tsc was not
  objecting to the void implementation here, but it does in
  other very similar situations so for consistency explicitly
  return undefined to signal the value should be used unchanged.

  Also undo previous change of !. to ?.: I think it wisest to
  try to preserve the existing behaviour as exactly as possible
  for now, and make behaviour changes (i.e., ones that affect
  the generated code) separately.

* fix(blocks): Fix erroneous typing of mixins

  It turns out that the previous types for these were completely
  wrong, for two reasons:

  - They should be intersection types (which have the union of the
    properties), not union types (which have the interseciton of the
    properties).
  - The *_MIXIN types were already declared as having type
    BlockDefinition, which is ultimately an alias for any.

  TypeScript doesn't like (some) kinds of circularly defined types,
  so fixing the above necessitates declaring a few auxiliary types
  just to make the type checker happy - but the end result is
  excellent and caught an actual type error in the code.
2023-03-17 20:24:09 +00:00
Maribeth Bottorff
a7c342ec29 chore: force add the build files when updating gh-pages (#6904) 2023-03-17 12:36:48 -07:00
Neil Fraser
6f64d1801a fix: Don't clober event group when renaming vars (#6829)
* fix: Don't clober event group when renaming vars

Also audit all existing event group commands and tweak a few of them where I think there's a potential issue.
2023-03-17 12:09:51 -07:00
Christopher Allen
a0b4a214a9 refactor(blocks): Migrate blocks/colour.js to TypeScript (#6901)
* refactor(blocks): Auto-migration of blocks/colour.js to ts

* fix(blocks): Manually migrate types & fix imports in colour.ts
2023-03-17 15:36:44 +00:00
Beka Westberg
670f7da802 fix: dispose performance (#6894)
* fix: improve dispose performance

* chore: cleanup dispose functions

* chore: split dispose into dispose and disposeInternal

* chore: remove unnecessary node removal

* fix: remove unnecessary unbinding of event listeners

* fix: readd skipping event construction

* chore: work on fixing tests

* chore: fix remaining test failures

* chore: format

* chore: typo

* fix: first pass of PR comments

* chore: remove TODO
2023-03-16 15:28:25 -07:00
Beka Westberg
c2919c51bd fix: improve performance of connecting blocks (#6876)
* fix: early return from updateDisabled if it is noop

* chore: trigger connect and disconnect before hiding

* chore: remove disconnectInternal

* fix: skip setting parent when disconnecting before connecting

* chore: fixup docs

* chore: remove erroneous test

* fix: add delay to context menu callback.

Improve INP by allowing the browser to do a paint (closing the context
menu) before we trigger callbacks. This improves the user experience
for expensive callbacks (e.g. collapsing, or updating disabled).

* fix: rendering bug

When disconnecting the last block in the stack, the block would not be
rerendered correctly (the top-start corner would not be reshaped)

* fix: connecting bug

The order for applying connections was changed so that connections were
applied and then the insertion marker was hidden. This caused an error
because hiding the insertion marker expected there to be a child block
when there was not.

* chore: remove setParent param from public API

* chore: tsdoc
2023-03-16 13:40:33 -07:00