Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
2094 commits
Select commit Hold shift + click to select a range
3d8eca6
Rewrite isTouchingDrawables on CPU (#263)
gnarf Apr 27, 2018
8deff94
Merge pull request #268 from paulkaplan/fix-blurry-fullscreen
paulkaplan May 2, 2018
8ad0cf5
Merge pull request #269 from fsih/updateBitmapSkinJsdoc
fsih May 4, 2018
87dfab6
Merge pull request #285 from kchadha/layer-ordering
kchadha May 25, 2018
c26b18a
Merge pull request #320 from kchadha/get-drawable-order
kchadha Jul 24, 2018
1ff7bc7
Optimizing isTouching while creating a drawableTouches for sensing mo…
gnarf Aug 7, 2018
df9bae9
Touching color implementation (#312)
gnarf Aug 8, 2018
591e784
Framebuffer PenSkin (#319)
mzgoddard Aug 8, 2018
610e732
Merge pull request #348 from rschamp/get-canvas
rschamp Sep 18, 2018
c64ac86
Merge pull request #347 from rschamp/snapshots
rschamp Sep 18, 2018
d7bafaa
Merge pull request #349 from wdr-data/fix/infinite-bounds-loop
cwillisf Oct 2, 2018
0b8d48f
Merge pull request #354 from mzgoddard/fix-touching-mouse
thisandagain Nov 2, 2018
1f3cb55
Merge pull request #392 from kchadha/fix-uncaught-type-error
kchadha Jan 7, 2019
7c0c5f6
Merge pull request #391 from LLK/blurrybg
fsih Jan 8, 2019
971f4f8
Merge pull request #393 from LLK/revert-391-blurrybg
paulkaplan Jan 8, 2019
f8a921e
Merge pull request #394 from paulkaplan/defer-silhouette-updates
paulkaplan Jan 9, 2019
12d44be
Merge pull request #398 from paulkaplan/revert-silhouette
paulkaplan Jan 15, 2019
62a479a
Merge pull request #400 from ktbee/fence-width-compat
ktbee Jan 17, 2019
f2d0fab
Merge pull request #404 from LLK/touchingColor2
fsih Jan 22, 2019
e401df9
Merge pull request #376 from evhan55/bug/extract-drawable
evhan55 Jan 25, 2019
5ccef2c
Merge pull request #407 from cwillisf/coordinates-fixups
cwillisf Feb 6, 2019
42e6f5b
Merge pull request #410 from LLK/revert-407-coordinates-fixups
cwillisf Feb 7, 2019
6f739f1
Merge pull request #408 from ktbee/compat-integer-x-y-off-stage
ktbee Feb 8, 2019
25958b3
Merge pull request #409 from ktbee/compat-bitmap-position-off-stage
ktbee Feb 13, 2019
019b6a2
Merge pull request #406 from cwillisf/playground-webpack
cwillisf Feb 14, 2019
a7906d7
Merge pull request #414 from mzgoddard/image-data-texture
mzgoddard Mar 26, 2019
ce849a5
Merge pull request #419 from cwillisf/coordinates-fixups-2
cwillisf Apr 10, 2019
aff0019
Merge pull request #440 from LLK/revert-419-coordinates-fixups-2
paulkaplan Apr 19, 2019
ed09d3d
Merge pull request #418 from peabrainiac/develop
cwillisf Apr 30, 2019
99dbae4
Merge pull request #451 from adroitwhiz/canvas-text-bubble
paulkaplan May 24, 2019
cb22fb3
Merge pull request #467 from mzgoddard/rect-init-matrix
cwillisf Jul 1, 2019
191d3d6
Merge pull request #470 from mzgoddard/skin-alter-push
cwillisf Jul 1, 2019
3cb7449
Merge pull request #493 from LLK/revert-470-skin-alter-push
kchadha Aug 13, 2019
9340785
Merge pull request #494 from LLK/revert-467-rect-init-matrix
kchadha Aug 13, 2019
758ceaf
Merge pull request #502 from fsih/turnOffAntiAlias
fsih Aug 30, 2019
b36ad03
Merge pull request #441 from adroitwhiz/region-exit-fix
cwillisf Aug 30, 2019
1007607
Merge pull request #442 from adroitwhiz/pen-stamp-region-optimization
cwillisf Aug 30, 2019
5a67c50
Merge pull request #495 from LLK/revert-494-revert-467-rect-init-matrix
kchadha Aug 30, 2019
e9fb165
Merge pull request #496 from LLK/revert-493-revert-470-skin-alter-push
cwillisf Sep 5, 2019
68d7f87
Merge pull request #505 from LLK/revert-496-revert-493-revert-470-ski…
kchadha Sep 12, 2019
3a6a5b2
Merge pull request #506 from LLK/revert-505-revert-496-revert-493-rev…
cwillisf Sep 25, 2019
9d84489
Merge pull request #508 from LLK/revert-506-revert-505-revert-496-rev…
kchadha Sep 26, 2019
00ddf3f
Merge pull request #469 from mzgoddard/update-drawable
fsih Oct 1, 2019
ad11b87
Merge pull request #491 from adroitwhiz/dont-fudge-up-the-renderer
cwillisf Oct 1, 2019
c3eb5b7
Merge pull request #512 from kchadha/skin-empty-image-data
kchadha Oct 21, 2019
ff02312
Merge pull request #514 from adroitwhiz/simplify-reskin
fsih Nov 6, 2019
f50ea2b
Merge pull request #480 from adroitwhiz/usenearest-fix-2
fsih Nov 6, 2019
7014ebe
Merge pull request #431 from ktbee/javascript-scaled-textures
cwillisf Nov 26, 2019
bf29c5a
Merge pull request #487 from adroitwhiz/pen-stamp-to-framebuffer
fsih Dec 11, 2019
cb8a7e4
Add test for local linking?
paulkaplan Sep 18, 2020
3dd729a
Add basic sprite text
paulkaplan Sep 23, 2020
9639c25
Add TextCostumeSkin, revert TextBubbleSkin to develop
ericrosenbaum Oct 6, 2020
487edd2
put textCostume functions next to each other
ericrosenbaum Oct 9, 2020
2764abd
extension owns style state
ericrosenbaum Oct 10, 2020
d1bd37c
trying to get text working for clones
ericrosenbaum Oct 10, 2020
3a5e955
Clones get their own skins
ericrosenbaum Oct 11, 2020
417ad7e
Update to most recent scratch-render, dropping previous changes (i'll…
paulkaplan Oct 13, 2020
fdf39fc
Add back TextCostumeSkin functionality after develop update
paulkaplan Oct 13, 2020
dcd4e82
working dependencies for blazeface
ericrosenbaum Oct 22, 2020
fa4081f
all blocks working!
ericrosenbaum Oct 22, 2020
f41353c
run at 30fps
ericrosenbaum Oct 23, 2020
e8b829d
Override clamping behvior for text skins
paulkaplan Oct 26, 2020
7cce888
Add browser entry point for gui
paulkaplan Oct 26, 2020
966c475
increase auto-scroll time delay
ericrosenbaum Oct 27, 2020
af95e91
update extension library tile
ericrosenbaum Oct 27, 2020
6894f2e
add face detected hat, boolean and probability blocks
ericrosenbaum Nov 9, 2020
1481724
Add number of faces and face size reporters
ericrosenbaum Nov 9, 2020
9a09c46
add attach block
ericrosenbaum Nov 9, 2020
9e795dc
make motion and size blocks work after attaching
ericrosenbaum Nov 13, 2020
58f3d7b
Merge branch 'sprite-text-v3' into labs-site-sprite-text
paulkaplan Nov 13, 2020
d036411
always use “face” instead of “head”
ericrosenbaum Nov 18, 2020
9b0f771
remove attach block, add point in face tilt dir and set size to face …
ericrosenbaum Nov 18, 2020
491dc3f
clean up and re-arrange blocks menu
ericrosenbaum Nov 18, 2020
5b3d6bb
Add points between eyes and top of head
ericrosenbaum Nov 19, 2020
0dc1c6f
use a distance function
ericrosenbaum Nov 20, 2020
081b4aa
Add “when this sprite touches nose” block
ericrosenbaum Nov 20, 2020
ecb113f
Simpler “when face touches” using face bounds
ericrosenbaum Nov 20, 2020
e5081e3
change hat to “when this sprite touches a nose”
ericrosenbaum Nov 23, 2020
9a6ee9f
Add temporary extension library tile
ericrosenbaum Nov 23, 2020
4b4bbe3
show “importing” alert while extension data is loading
ericrosenbaum Nov 23, 2020
3406995
Show “loading extension…” in the alert
ericrosenbaum Nov 23, 2020
02c0eda
Add ext name and feedback button to editor menubar
paulkaplan Nov 24, 2020
8ce45d0
Add last updated time to editor
paulkaplan Nov 24, 2020
8f2acc6
WIP add pre-download confirmation modal
paulkaplan Nov 24, 2020
db22267
Add link for feedback button
paulkaplan Nov 24, 2020
6116a54
Revert "Add last updated time to editor"
paulkaplan Dec 1, 2020
17f75ba
reduce framerate to 15fps
ericrosenbaum Dec 1, 2020
39e70d1
remove log
ericrosenbaum Dec 1, 2020
80cdbfb
Remove offset logic that was causing frequent skipped frames
ericrosenbaum Dec 1, 2020
b0c5916
change to “when this sprite touches a mouth” and “a face is detected?”
ericrosenbaum Dec 1, 2020
dccad9a
command blocks do nothing if there’s no face
ericrosenbaum Dec 1, 2020
7f19d57
cache size and tilt to report if there’s no face
ericrosenbaum Dec 1, 2020
f833ea0
re-order blocks and use a menu for “when this sprite touches”
ericrosenbaum Dec 9, 2020
09c4358
Add Initial scratch lab site
paulkaplan Dec 11, 2020
588b8a9
Only load the extension when entering the modal
paulkaplan Dec 11, 2020
742bed0
update block and menu icons
ericrosenbaum Dec 14, 2020
78823af
Merge branch 'face-sensing-v6' into face
paulkaplan Dec 16, 2020
07ec2bc
Update to gui develop as of 12-16-2020
paulkaplan Dec 16, 2020
f0b67e0
Update to vm develop 12-16-2020
paulkaplan Dec 16, 2020
cdd55f8
Update to render develop 12-16-2020
paulkaplan Dec 16, 2020
fd47cd2
Reset to llk/develop for scratch-vm
paulkaplan Dec 18, 2020
50ae486
Reset to llk/develop for scratch-render
paulkaplan Dec 18, 2020
3bdeec3
Bring up-to-date with gui develop and minimal template changes
paulkaplan Dec 18, 2020
87e6a17
Update README
paulkaplan Dec 18, 2020
1e5650c
Remove packages so they are never out of date
paulkaplan Dec 18, 2020
3024124
Update scratch-render to latest upstream, keeping the scratch coord h…
paulkaplan Dec 22, 2020
8698a8e
Update vm to latest, stripping out text specific stuff
paulkaplan Dec 22, 2020
14e894c
Update gui to develop for face
paulkaplan Dec 22, 2020
30f79c3
Add back the scratch-vm changes for when an extension is loaded
paulkaplan Dec 22, 2020
97a487c
Update name of extension in GUI
paulkaplan Dec 22, 2020
ae000ff
smoothing for face detected boolean and hat blocks
ericrosenbaum Dec 17, 2020
5f38d64
update extension library tile
ericrosenbaum Jan 8, 2021
a91f0c0
Update bleb and form url
paulkaplan Jan 13, 2021
1cdd2ec
Include a sane cacheTimeout for video getFrame
paulkaplan Jan 22, 2021
b44321f
editor logo at top left links to scratch lab home page
ericrosenbaum Apr 21, 2021
f035975
Merge commit '09b4b559c18e1347a1793ae50dfd9fa79cd534aa' as 'packages/…
benjiwheeler Apr 24, 2023
4976a0e
Merge commit '4d4c25ea7d062a2fa9e48cb6c7931a7c114d80cd' as 'packages/…
benjiwheeler Apr 24, 2023
543da14
Merge commit 'b3398d039935ee2520772164c09d1cfdf1be0298' as 'packages/…
benjiwheeler Apr 24, 2023
9472226
commit patched changes, starter extension and lerna linking
benjiwheeler Apr 24, 2023
2ce63b4
chore: [UEPR-56] update react-intl library
MiroslavDionisiev Jan 17, 2025
4819872
fix: [UEPR-56] fix unit tests
Bogomil-Stoyanov Jan 20, 2025
86f4566
uepr-127:changed face sensing model
Bogomil-Stoyanov Jan 24, 2025
3fccb4c
refactor: [UEPR-56]changes to library versions
Bogomil-Stoyanov Jan 28, 2025
413c700
refactor: [UEPR-56]removed a change in webpack
Bogomil-Stoyanov Jan 28, 2025
2d00b0a
refactor: [UEPR-56]changed peer dependencies
Bogomil-Stoyanov Jan 28, 2025
5a686e9
refactor: [UEPR-56] updated library versions
Bogomil-Stoyanov Jan 29, 2025
5f8ba3f
refactor: [UEPR-56] removed react-contextmenu dependency, changed rea…
Bogomil-Stoyanov Jan 29, 2025
97cf6b2
refactor: [UEPR-56] trying to make all libs use react 18
Bogomil-Stoyanov Jan 30, 2025
cbb94f5
refactor: [UEPR-56] all libs now use react18
Bogomil-Stoyanov Jan 30, 2025
7622534
refactor: [UEPR-56] moved to createRoot
Bogomil-Stoyanov Jan 30, 2025
d7667a6
refactor: [UEPR-56] added radixui context menu
Bogomil-Stoyanov Jan 31, 2025
bb37cbb
refactor: [UEPR-56] fixed paint problem
Bogomil-Stoyanov Jan 31, 2025
383bbaa
feat: [UEPR-56] Work in progress - change context menu
Bogomil-Stoyanov Feb 3, 2025
f19cc45
feat: [UEPR-56] Styled context menu in sprite selector
Bogomil-Stoyanov Feb 3, 2025
d7878c2
feat: [UEPR-56] Fixed style name
Bogomil-Stoyanov Feb 3, 2025
c728b58
feat: [UEPR-56] Renaming styles
Bogomil-Stoyanov Feb 4, 2025
0359484
feat: [UEPR-56] Fixed menu dropdown
Bogomil-Stoyanov Feb 4, 2025
201bcc6
feat: [UEPR-56] Context menu in monitor.jsx
Bogomil-Stoyanov Feb 5, 2025
864c803
feat: [UEPR-56] Styled context menu
Bogomil-Stoyanov Feb 5, 2025
ab18b12
feat: [UEPR-56] Code format changes
Bogomil-Stoyanov Feb 5, 2025
7d23786
feat: [UEPR-56] trying to fix eslint
Bogomil-Stoyanov Feb 5, 2025
d3bc285
Merge remote-tracking branch 'origin/develop' into HEAD
KManolov3 Feb 6, 2025
133c056
feat: [UEPR-56] Rewriting tests in progress
Bogomil-Stoyanov Feb 6, 2025
0be9086
feat: fix order of peer dependencies in package.json
KManolov3 Feb 6, 2025
5b4ea33
feat: fix react-intl usage in delete confirmation prompt
KManolov3 Feb 6, 2025
7e27b9b
fix: update type of reducer
KManolov3 Feb 6, 2025
0406ca8
fix: make shared-messages a .ts file and ensure its type is resolved
KManolov3 Feb 6, 2025
f68d0df
fix: declare empty type file for scratch-paint
KManolov3 Feb 6, 2025
077c4c7
fix: eslint errors
KManolov3 Feb 6, 2025
d97c754
Merge remote-tracking branch 'kalo/uepr-56-react-18' into uepr56-react18
Bogomil-Stoyanov Feb 7, 2025
3e43a75
feat: [UEPR-56] Unit tests - error hoc, controls, menu bar WIP
Bogomil-Stoyanov Feb 7, 2025
c8bd70d
feat: [UEPR-56] Unit tests - menubar, monitor, sound editor
Bogomil-Stoyanov Feb 7, 2025
22f7649
feat: [UEPR-56] Unit tests - sound editor, sprite selector
Bogomil-Stoyanov Feb 10, 2025
9cbab8a
feat: [UEPR-56] Unit tests - sound editor, sprite selector item, togg…
Bogomil-Stoyanov Feb 10, 2025
8e1050e
feat: [UEPR-56] Unit tests - slider-prompt, sound editor, sprite sele…
Bogomil-Stoyanov Feb 11, 2025
2f6d5a4
refactor: [UEPR-56] migrated unit tests to use react testing library
MiroslavDionisiev Feb 17, 2025
d812cc8
fix: disable import/no-unresolved for context-menu library
MiroslavDionisiev Feb 17, 2025
70fdf97
fix: [UEPR-56] fix failing integration tests after context menu libra…
MiroslavDionisiev Feb 18, 2025
18da2f1
feat: [UEPR-56] allow for interactions outside of open context menu
MiroslavDionisiev Feb 18, 2025
6f1b6a1
fix: [UEPR-56] remove pointer events style
MiroslavDionisiev Feb 18, 2025
d1bd0fd
chore: test menu as modal
MiroslavDionisiev Feb 18, 2025
650ec1c
chore: test menu as modal
MiroslavDionisiev Feb 18, 2025
3f63aa2
fix: return old behaviour
MiroslavDionisiev Feb 18, 2025
a8224d2
fix: remove z-index
MiroslavDionisiev Feb 18, 2025
c3588f5
fix: test change of test name
MiroslavDionisiev Feb 19, 2025
632b455
fix: [UEPR-56] add check if the component assigned to the ref is unde…
MiroslavDionisiev Feb 20, 2025
5998b3a
chore: [UEPR-56] re-export radix-ui library
MiroslavDionisiev Feb 20, 2025
98fe22a
Merge with starter branch changes
KManolov3 Apr 1, 2025
9e8fddf
Merge remote-tracking branch 'origin/starter' into tensorflow-face-de…
KManolov3 Apr 1, 2025
fa5ecab
Merge remote-tracking branch 'upstream/develop' into HEAD
KManolov3 Apr 9, 2025
8b5e5ec
feat: [UEPR-282] add face-sensing exttension
MiroslavDionisiev Jul 22, 2025
a451685
chore: [UEPR-282] update package-lock
MiroslavDionisiev Jul 22, 2025
b7ad4c1
feat: [UEPR-289] disconnect project from cloud
MiroslavDionisiev Jul 23, 2025
906150d
chore: [UEPR-56] resolve merge conflicts
MiroslavDionisiev Jul 24, 2025
7546200
chore: [UEPR-56] resolve merge conflicts
MiroslavDionisiev Jul 24, 2025
b8c7c37
fix: [UEPR-56] address review comments
MiroslavDionisiev Jul 29, 2025
5f1eed0
fix: [UEPR-282] change field name
MiroslavDionisiev Jul 31, 2025
8dfd7f8
Merge remote-tracking branch 'upstream/develop' into HEAD
KManolov3 Aug 4, 2025
38e328c
Merge pull request #273 from scratchfoundation/UEPR-289
KManolov3 Aug 4, 2025
809a48e
fix: [UEPR-302] Rename face sensing block to nose, instead of noseTip
adzhindzhi Aug 8, 2025
cd4b799
feat: install mediapipe via npm and add fallback to CDN
adzhindzhi Aug 11, 2025
38084d0
fix: use mediapipe version from the package.json instead of hardcodin…
adzhindzhi Aug 12, 2025
002c37b
Merge remote-tracking branch 'upstream/develop' into HEAD
KManolov3 Aug 12, 2025
a3339b6
fix: resolve react-dom import warning
KManolov3 Aug 12, 2025
bfc4a2c
Merge pull request #286 from scratchfoundation/UEPR-302-rename-face-s…
KManolov3 Aug 12, 2025
7fb6d8d
fix: use a different icon for the face sensing extension in high cont…
adzhindzhi Aug 13, 2025
1b7d028
fix: replace the default face sensing block icon with the one without…
adzhindzhi Aug 13, 2025
5ea903a
Merge pull request #292 from adzhindzhi/UEPR-306-face-sensing-high-co…
adzhindzhi Aug 13, 2025
4621a13
Merge pull request #291 from adzhindzhi/UEPR-290-update-face-sensing-…
adzhindzhi Aug 13, 2025
bf1f3ba
Merge tag 'v11.6.0' into uepr56-react18
KManolov3 Aug 22, 2025
15172af
feat: run the face sensing block icon through an optimizer
adzhindzhi Aug 28, 2025
325c7ec
feat: clean up face sensing codebase
adzhindzhi Sep 1, 2025
5329524
fix: use a better SVG optimizer and reduce the size a bit more
adzhindzhi Sep 1, 2025
2f0257f
feat: run all svgs through SVG optimizer
adzhindzhi Sep 2, 2025
cee6906
feat: apply image compression to PNGs
adzhindzhi Sep 2, 2025
005a4a6
Merge pull request #304 from adzhindzhi/UEPR-316-apply-compression-to…
adzhindzhi Sep 10, 2025
fc4c53e
Merge pull request #302 from adzhindzhi/UEPR-317-optimize-the-face-se…
adzhindzhi Sep 10, 2025
2d4e3a3
fix: revert unwanted cleanup and remove some additional unused code
adzhindzhi Sep 10, 2025
f6f2232
fix: remove unused STATE_KEY
adzhindzhi Sep 11, 2025
aa4897b
fix: translate the menus and add missing description fields to format…
adzhindzhi Sep 11, 2025
257dc82
Merge pull request #303 from adzhindzhi/UEPR-312-clean-up-face-sensin…
adzhindzhi Sep 11, 2025
437915e
Merge branch 'UEPR-282-face-sensing' of github.com:scratchfoundation/…
adzhindzhi Sep 11, 2025
945281e
fix: migrate new face sensing test to use react testing library
adzhindzhi Sep 11, 2025
699706e
fix: remove lefover use of intl from props, instead of react-intl to …
adzhindzhi Sep 15, 2025
62ea586
fix: fix profile dropdown in the editor not opening
adzhindzhi Sep 15, 2025
a822bae
Merge pull request #318 from adzhindzhi/uepr-326-issues-after-react-m…
adzhindzhi Sep 16, 2025
8d416b8
Merge branch 'uepr56-react18' of github.com:scratchfoundation/scratch…
adzhindzhi Sep 16, 2025
6445a08
Merge pull request #315 from adzhindzhi/UEPR-313-add-localization-for…
adzhindzhi Sep 16, 2025
70adde9
Merge branch 'UEPR-282-face-sensing' of github.com:scratchfoundation/…
adzhindzhi Sep 16, 2025
a84b993
fix: remove loading extension listener to prevent multiple alerts whe…
adzhindzhi Sep 16, 2025
5165851
fix: allow only one loadingExtensionData alert to be present at a time
adzhindzhi Sep 16, 2025
d941b9d
Merge pull request #320 from adzhindzhi/uepr-307-loading-extension-to…
adzhindzhi Sep 18, 2025
ed97273
fix: close extension loading alert when loading has finished, regardl…
adzhindzhi Sep 23, 2025
bde8e7a
Merge pull request #324 from adzhindzhi/uepr-333-loading-extension-al…
adzhindzhi Sep 25, 2025
c08511e
feat: add face sensing tutorial
adzhindzhi Sep 25, 2025
80793f7
fix: replace some assets with more readable ones
adzhindzhi Sep 26, 2025
9df2a36
feat: add face sensing callouts to main editor page
KManolov3 Sep 26, 2025
aff7ccf
fix: ui issues with extension button callout
adzhindzhi Sep 30, 2025
8c96e4b
feat: add callout for the face sensing extension in the extensions modal
adzhindzhi Sep 30, 2025
32b1bcd
fix: set default value for feature callouts in the editor to false
adzhindzhi Sep 30, 2025
9c064f9
fix: store whether user has used face sensing only when callouts are …
adzhindzhi Sep 30, 2025
e604258
fix: follow the naming convention for tutorial steps containing text …
adzhindzhi Sep 30, 2025
4b06d19
Merge pull request #328 from adzhindzhi/uepr-184-uepr-329
adzhindzhi Sep 30, 2025
4037650
fix: address review points and fix small ui issues
adzhindzhi Sep 30, 2025
2ff6d54
fix: replace magic numbers and harcoded strings with constants and enums
adzhindzhi Oct 1, 2025
c07eb57
chore: update scratch-webpack-configuration version to 3.1.0
adzhindzhi Oct 1, 2025
65628f9
Merge pull request #338 from adzhindzhi/uepr-314-replace-magig-number…
adzhindzhi Oct 1, 2025
378bdf1
fix: driverjs arrow styling
adzhindzhi Oct 1, 2025
7f483ae
Merge pull request #330 from scratchfoundation/feature/uepr-331-imple…
adzhindzhi Oct 1, 2025
d015a0e
Merge branch 'UEPR-282-face-sensing' of github.com:scratchfoundation/…
adzhindzhi Oct 1, 2025
0d5b194
fix: change tutorial thumbnail
adzhindzhi Oct 2, 2025
0559538
fix: use more specific selectors to override driverjs styles
adzhindzhi Oct 2, 2025
cbf4582
fix: prevent sound editor from crashing when removing all sounds
adzhindzhi Oct 3, 2025
961ed9b
fix: better error handling when no sounds are present
adzhindzhi Oct 3, 2025
d2afeb9
Merge pull request #340 from adzhindzhi/uepr-184-change-tutorial-thum…
adzhindzhi Oct 3, 2025
b90e507
Merge pull request #341 from adzhindzhi/uepr-385-sprite-on-stage-not-…
adzhindzhi Oct 3, 2025
62dde2c
Merge pull request #342 from adzhindzhi/bugfix/uepr-386-sound-editor-…
adzhindzhi Oct 3, 2025
9c74f8d
fix: do not display face sensing tooltip when trying to use another e…
adzhindzhi Oct 3, 2025
0efd0b8
Merge pull request #344 from adzhindzhi/bugfix/uepr-387-face-sensing-…
adzhindzhi Oct 3, 2025
b85e329
Merge branch 'uepr56-react18' of github.com:scratchfoundation/scratch…
adzhindzhi Oct 3, 2025
8bd2664
Merge branch 'UEPR-282-face-sensing' of github.com:scratchfoundation/…
adzhindzhi Oct 3, 2025
00ed0dd
fix: use more specific styles to allow pointer events on green flag o…
adzhindzhi Oct 7, 2025
6846451
Merge pull request #349 from adzhindzhi/fix/allow-pointer-event-on-gr…
adzhindzhi Oct 7, 2025
23d8f54
Merge branch 'UEPR-282-face-sensing' of github.com:scratchfoundation/…
adzhindzhi Oct 7, 2025
6ac7514
Merge branch 'develop' of github.com:scratchfoundation/scratch-editor…
adzhindzhi Oct 8, 2025
5dd5356
Merge branch 'develop' of github.com:scratchfoundation/scratch-editor…
adzhindzhi Oct 8, 2025
40f4ff2
fix: package issues
adzhindzhi Oct 8, 2025
23a75bf
fix: test failures
adzhindzhi Oct 8, 2025
88eb54b
Merge branch 'develop' of github.com:scratchfoundation/scratch-editor…
adzhindzhi Oct 8, 2025
fcf19b7
Merge branch 'develop' of github.com:scratchfoundation/scratch-editor…
adzhindzhi Oct 9, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4,465 changes: 3,335 additions & 1,130 deletions package-lock.json

Large diffs are not rendered by default.

43 changes: 26 additions & 17 deletions packages/scratch-gui/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -57,10 +57,15 @@
"watch": "webpack --watch"
},
"dependencies": {
"@mediapipe/face_detection": "0.4.1646425229",
"@microbit/microbit-universal-hex": "0.2.2",
"@radix-ui/react-context-menu": "^2.2.5",
"@testing-library/user-event": "^14.6.1",
"@scratch/scratch-render": "11.6.0",
"@scratch/scratch-svg-renderer": "11.6.0",
"@scratch/scratch-vm": "11.6.0",
"@tensorflow-models/face-detection": "^1.0.3",
"@tensorflow/tfjs": "^4.22.0",
"arraybuffer-loader": "1.0.8",
"autoprefixer": "9.8.8",
"balance-text": "3.3.1",
Expand All @@ -74,6 +79,7 @@
"core-js": "2.6.12",
"css-loader": "5.2.7",
"dapjs": "2.3.0",
"driver.js": "1.3.6",
"es6-object-assign": "1.1.0",
"fastestsmallesttextencoderdecoder": "1.0.22",
"get-float-time-domain-data": "0.1.0",
Expand All @@ -96,23 +102,23 @@
"prop-types": "15.8.1",
"query-string": "5.1.1",
"raw-loader": "4.0.2",
"react-contextmenu": "2.14.0",
"react-draggable": "3.3.2",
"react-ga": "2.7.0",
"react-intl": "2.9.0",
"react-modal": "3.16.3",
"react-ga": "^3.3.1",
"react-intl": "6.8.9",
"react-modal": "^3.16.3",
"react-popover": "0.5.10",
"react-responsive": "5.0.0",
"react-redux": "^8.0.0",
"react-responsive": "9.0.0",
"react-style-proptype": "3.2.2",
"react-tabs": "2.3.1",
"react-tooltip": "4.5.1",
"react-tabs": "^5.2.0",
"react-tooltip": "^4.5.1",
"react-virtualized": "9.22.6",
"react-visibility-sensor": "5.1.1",
"redux-throttle": "0.1.1",
"scratch-audio": "2.0.241",
"scratch-blocks": "1.1.224",
"scratch-l10n": "6.0.60",
"scratch-paint": "3.0.339",
"scratch-paint": "4.0.3",
"scratch-render-fonts": "1.0.238",
"scratch-storage": "4.1.8",
"startaudiocontext": "1.2.1",
Expand All @@ -123,17 +129,19 @@
"xhr": "2.6.0"
},
"peerDependencies": {
"react": "^16.0.0",
"react-dom": "^16.0.0",
"react-redux": "^5.0.7",
"redux": "^3.7.2"
"react": "^18.0.0",
"react-dom": "^18.0.0",
"react-redux": "^8.0.0",
"redux": "^4.0.0"
},
"devDependencies": {
"@babel/cli": "7.28.3",
"@babel/core": "7.28.4",
"@babel/eslint-parser": "7.28.4",
"@babel/preset-env": "7.28.3",
"@babel/preset-react": "7.27.1",
"@testing-library/jest-dom": "^5.16.5",
"@testing-library/react": "^14.0.0",
"@types/prop-types": "15.7.15",
"@types/react-modal": "3.16.3",
"@typescript-eslint/eslint-plugin": "8.7.0",
Expand All @@ -142,8 +150,6 @@
"babel-loader": "9.2.1",
"cheerio": "1.0.0-rc.3",
"cross-env": "7.0.3",
"enzyme": "3.11.0",
"enzyme-adapter-react-16": "1.15.8",
"eslint": "8.57.1",
"eslint-config-scratch": "9.0.9",
"eslint-import-resolver-webpack": "0.11.1",
Expand All @@ -157,7 +163,7 @@
"jest-junit": "7.0.0",
"mkdirp": "1.0.4",
"raf": "3.4.1",
"react-test-renderer": "16.14.0",
"react-test-renderer": "18.2.0",
"redux-mock-store": "1.5.5",
"rimraf": "2.7.1",
"scratch-semantic-release-config": "3.0.0",
Expand All @@ -182,8 +188,7 @@
}
},
"setupFiles": [
"raf/polyfill",
"<rootDir>/test/helpers/enzyme-setup.js"
"raf/polyfill"
],
"reporters": [
"default",
Expand All @@ -194,6 +199,7 @@
}
]
],
"testEnvironment": "jsdom",
"testPathIgnorePatterns": [
"src/test.js"
],
Expand All @@ -202,6 +208,9 @@
"\\.(css|less)$": "<rootDir>/test/__mocks__/styleMock.js",
"editor-msgs(\\.js)?$": "<rootDir>/test/__mocks__/editor-msgs-mock.js"
},
"transformIgnorePatterns": [
"/node_modules/(?!intl-messageformat|intl-messageformat-parser).+\\.js$"
],
"moduleFileExtensions": [
"ts",
"js",
Expand Down
2 changes: 1 addition & 1 deletion packages/scratch-gui/src/components/alerts/alert.css
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
@import "../../css/colors.css";
@import "../../css/z-index.css";

.alert {
body .alert {
width: 100%;
display: flex;
flex-direction: row;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@ const InlineMessageComponent = ({
}) => (
<div
className={classNames(styles.inlineMessage, styles[level])}
aria-label="inline message"
>
{/* TODO: implement Rtl handling */}
{iconSpinner && (
Expand Down
169 changes: 85 additions & 84 deletions packages/scratch-gui/src/components/backpack/backpack.jsx
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
import React from 'react';
import PropTypes from 'prop-types';
import classNames from 'classnames';
import {FormattedMessage, defineMessages, injectIntl, intlShape} from 'react-intl';
import {FormattedMessage, defineMessages, useIntl} from 'react-intl';
import DragConstants from '../../lib/drag-constants';
import {ComingSoonTooltip} from '../coming-soon/coming-soon.jsx';
import SpriteSelectorItem from '../../containers/sprite-selector-item.jsx';
Expand Down Expand Up @@ -47,111 +47,113 @@ const Backpack = ({
dragOver,
error,
expanded,
intl,
loading,
showMore,
onToggle,
onDelete,
onMouseEnter,
onMouseLeave,
onMore
}) => (
<div className={styles.backpackContainer}>
<div
className={styles.backpackHeader}
onClick={onToggle}
>
{onToggle ? (
<FormattedMessage
defaultMessage="Backpack"
description="Button to open the backpack"
id="gui.backpack.header"
/>
) : (
<ComingSoonTooltip
place="top"
tooltipId="backpack-tooltip"
>
}) => {
const intl = useIntl();
return (
<div className={styles.backpackContainer}>
<div
className={styles.backpackHeader}
onClick={onToggle}
>
{onToggle ? (
<FormattedMessage
defaultMessage="Backpack"
description="Button to open the backpack"
id="gui.backpack.header"
/>
</ComingSoonTooltip>
)}
</div>
{expanded ? (
<div
className={classNames(styles.backpackList, {
[styles.dragOver]: dragOver || blockDragOver
})}
ref={containerRef}
onMouseEnter={onMouseEnter}
onMouseLeave={onMouseLeave}
>
{error ? (
<div className={styles.statusMessage}>
) : (
<ComingSoonTooltip
place="top"
tooltipId="backpack-tooltip"
>
<FormattedMessage
defaultMessage="Error loading backpack"
description="Error backpack message"
id="gui.backpack.errorBackpack"
defaultMessage="Backpack"
description="Button to open the backpack"
id="gui.backpack.header"
/>
</div>
) : (
loading ? (
</ComingSoonTooltip>
)}
</div>
{expanded ? (
<div
className={classNames(styles.backpackList, {
[styles.dragOver]: dragOver || blockDragOver
})}
ref={containerRef}
onMouseEnter={onMouseEnter}
onMouseLeave={onMouseLeave}
>
{error ? (
<div className={styles.statusMessage}>
<FormattedMessage
defaultMessage="Loading..."
description="Loading backpack message"
id="gui.backpack.loadingBackpack"
defaultMessage="Error loading backpack"
description="Error backpack message"
id="gui.backpack.errorBackpack"
/>
</div>
) : (
contents.length > 0 ? (
<div className={styles.backpackListInner}>
{contents.map(item => (
<SpriteSelectorItem
className={styles.backpackItem}
costumeURL={item.thumbnailUrl}
details={item.name}
dragPayload={item}
dragType={dragTypeMap[item.type]}
id={item.id}
key={item.id}
name={intl.formatMessage(labelMap[item.type])}
selected={false}
onClick={noop}
onDeleteButtonClick={onDelete}
/>
))}
{showMore && (
<button
className={styles.more}
onClick={onMore}
>
<FormattedMessage
defaultMessage="More"
description="Load more from backpack"
id="gui.backpack.more"
/>
</button>
)}
</div>
) : (
loading ? (
<div className={styles.statusMessage}>
<FormattedMessage
defaultMessage="Backpack is empty"
description="Empty backpack message"
id="gui.backpack.emptyBackpack"
defaultMessage="Loading..."
description="Loading backpack message"
id="gui.backpack.loadingBackpack"
/>
</div>
) : (
contents.length > 0 ? (
<div className={styles.backpackListInner}>
{contents.map(item => (
<SpriteSelectorItem
className={styles.backpackItem}
costumeURL={item.thumbnailUrl}
details={item.name}
dragPayload={item}
dragType={dragTypeMap[item.type]}
id={item.id}
key={item.id}
name={intl.formatMessage(labelMap[item.type])}
selected={false}
onClick={noop}
onDeleteButtonClick={onDelete}
/>
))}
{showMore && (
<button
className={styles.more}
onClick={onMore}
>
<FormattedMessage
defaultMessage="More"
description="Load more from backpack"
id="gui.backpack.more"
/>
</button>
)}
</div>
) : (
<div className={styles.statusMessage}>
<FormattedMessage
defaultMessage="Backpack is empty"
description="Empty backpack message"
id="gui.backpack.emptyBackpack"
/>
</div>
)
)
)
)}
</div>
) : null}
</div>
);
)}
</div>
) : null}
</div>
);
};

Backpack.propTypes = {
blockDragOver: PropTypes.bool,
Expand All @@ -165,7 +167,6 @@ Backpack.propTypes = {
dragOver: PropTypes.bool,
error: PropTypes.bool,
expanded: PropTypes.bool,
intl: intlShape,
loading: PropTypes.bool,
onDelete: PropTypes.func,
onMore: PropTypes.func,
Expand All @@ -186,4 +187,4 @@ Backpack.defaultProps = {
onToggle: null
};

export default injectIntl(Backpack);
export default Backpack;
Loading
Loading