pxt-core 8.3.1 → 8.3.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/built/cli.js +73 -76
- package/built/pxt.js +74 -77
- package/built/pxtlib.d.ts +0 -1
- package/built/pxtlib.js +1 -1
- package/built/server.js +0 -4
- package/built/target.js +1 -1
- package/built/web/ai.0.js +1 -1
- package/built/web/main.js +1 -1
- package/built/web/pxtapp.js +1 -1
- package/built/web/pxtasseteditor.js +1 -1
- package/built/web/pxtembed.js +1 -1
- package/built/web/pxtlib.js +1 -1
- package/built/web/pxtworker.js +1 -1
- package/built/web/react-common-authcode.css +6981 -4
- package/built/web/react-common-skillmap.css +1 -1
- package/built/web/rtlreact-common-skillmap.css +1 -1
- package/built/web/rtlsemantic.css +1 -1
- package/built/web/semantic.css +1 -1
- package/built/web/semantic.js +0 -0
- package/built/web/skillmap/css/main.3684f34d.chunk.css +1 -0
- package/built/web/skillmap/js/2.d9c1cec5.chunk.js +2 -0
- package/built/web/skillmap/js/main.94faba64.chunk.js +1 -0
- package/built/web/skillmap/js/runtime-main.37bd2885.js +1 -0
- package/package.json +55 -56
- package/react-common/components/controls/Modal.tsx +0 -2
- package/react-common/components/profile/UserPane.tsx +1 -0
- package/react-common/components/share/ThumbnailRecorder.tsx +36 -15
- package/react-common/styles/react-common-authcode-core.less +1 -1
- package/react-common/styles/react-common-authcode.less +1 -1
- package/react-common/styles/share/share.less +9 -0
- package/theme/toolbox.less +1 -0
- package/theme/tutorial-sidebar.less +3 -1
- package/webapp/public/skillmap.html +32 -1
- package/built/web/multiplayer/css/main.b0b14e9a.css +0 -2
- package/built/web/multiplayer/js/main.448c5eda.js +0 -2
- package/built/web/react-common-multiplayer.css +0 -13
- package/built/web/rtlreact-common-authcode.css +0 -13
- package/built/web/rtlreact-common-multiplayer.css +0 -13
- package/built/web/skillmap/css/main.242f7a98.css +0 -1
- package/built/web/skillmap/js/main.f143771a.js +0 -2
- package/pxtcompiler/ext-typescript/readme.md +0 -1
- package/react-common/styles/react-common-multiplayer-core.less +0 -10
- package/react-common/styles/react-common-multiplayer.less +0 -12
- package/tests/blocks-test/README.md +0 -4
- package/webapp/package.json +0 -15
- package/webapp/public/multiplayer.html +0 -1
|
@@ -79,7 +79,16 @@ export const ThumbnailRecorder = (props: ThumbnailRecorderProps) => {
|
|
|
79
79
|
|
|
80
80
|
const screenshotLabel = lf("Screenshot ({0})", targetTheme.simScreenshotKey);
|
|
81
81
|
const startRecordingLabel = lf("Record ({0})", targetTheme.simGifKey);
|
|
82
|
-
const stopRecordingLabel = lf("Stop recording ({0})", targetTheme.simGifKey)
|
|
82
|
+
const stopRecordingLabel = lf("Stop recording ({0})", targetTheme.simGifKey);
|
|
83
|
+
const renderingLabel = lf("Rendering...");
|
|
84
|
+
|
|
85
|
+
let recordLabel: string;
|
|
86
|
+
|
|
87
|
+
switch (recorderState) {
|
|
88
|
+
case "default": recordLabel = startRecordingLabel; break;
|
|
89
|
+
case "recording": recordLabel = stopRecordingLabel; break;
|
|
90
|
+
case "rendering": recordLabel = renderingLabel; break;
|
|
91
|
+
}
|
|
83
92
|
|
|
84
93
|
const thumbnailLabel = uri ? lf("New Thumbnail") : lf("Current Thumbnail");
|
|
85
94
|
const classes = classList(
|
|
@@ -95,14 +104,17 @@ export const ThumbnailRecorder = (props: ThumbnailRecorderProps) => {
|
|
|
95
104
|
</div>
|
|
96
105
|
<div className="gif-recorder">
|
|
97
106
|
<div className="gif-recorder-actions">
|
|
107
|
+
{recorderState === "default" &&
|
|
108
|
+
<Button className="teal inverted"
|
|
109
|
+
title={screenshotLabel}
|
|
110
|
+
label={screenshotLabel}
|
|
111
|
+
leftIcon="fas fa-camera"
|
|
112
|
+
onClick={handleScreenshotClick} />
|
|
113
|
+
}
|
|
98
114
|
<Button className="teal inverted"
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
onClick={handleScreenshotClick} />
|
|
103
|
-
<Button className="teal inverted"
|
|
104
|
-
title={recorderState === "recording" ? stopRecordingLabel : startRecordingLabel}
|
|
105
|
-
label={recorderState === "recording" ? stopRecordingLabel : startRecordingLabel}
|
|
115
|
+
disabled={recorderState === "rendering"}
|
|
116
|
+
title={recordLabel}
|
|
117
|
+
label={recordLabel}
|
|
106
118
|
leftIcon={`fas fa-${recorderState === "recording" ? "square" : "circle"}`}
|
|
107
119
|
onClick={handleRecordClick} />
|
|
108
120
|
<div className="spacer mobile-only" />
|
|
@@ -124,24 +136,33 @@ export const ThumbnailRecorder = (props: ThumbnailRecorderProps) => {
|
|
|
124
136
|
label={lf("Try again?")}
|
|
125
137
|
onClick={() => setUri(undefined)} />
|
|
126
138
|
</div>
|
|
127
|
-
<div className="thumbnail
|
|
128
|
-
{
|
|
139
|
+
<div className="project-share-thumbnail">
|
|
140
|
+
{recorderState !== "default" &&
|
|
141
|
+
<div className="project-thumbnail-placeholder">
|
|
142
|
+
<div className="common-spinner" />
|
|
143
|
+
<div className="project-thumbnail-label">
|
|
144
|
+
{recorderState === "recording" ? lf("Recording...") : lf("Rendering GIF...")}
|
|
145
|
+
</div>
|
|
146
|
+
</div>
|
|
147
|
+
}
|
|
148
|
+
{ recorderState === "default" &&
|
|
149
|
+
((uri || initialUri)
|
|
129
150
|
? <img src={uri || initialUri} />
|
|
130
|
-
: <div className="thumbnail-placeholder" />
|
|
151
|
+
: <div className="thumbnail-placeholder" />)
|
|
131
152
|
}
|
|
132
153
|
</div>
|
|
133
154
|
</div>
|
|
134
155
|
</div>
|
|
135
156
|
<div className="thumbnail-actions">
|
|
136
|
-
{
|
|
157
|
+
<Button title={lf("Cancel")}
|
|
158
|
+
label={lf("Cancel")}
|
|
159
|
+
onClick={onCancel} />
|
|
160
|
+
{uri && recorderState === "default" &&
|
|
137
161
|
<Button className="primary"
|
|
138
162
|
title={lf("Apply")}
|
|
139
163
|
label={lf("Apply")}
|
|
140
164
|
onClick={handleApplyClick} />
|
|
141
165
|
}
|
|
142
|
-
<Button title={lf("Cancel")}
|
|
143
|
-
label={lf("Cancel")}
|
|
144
|
-
onClick={onCancel} />
|
|
145
166
|
</div>
|
|
146
167
|
</div>
|
|
147
168
|
</div>
|
|
@@ -77,6 +77,8 @@
|
|
|
77
77
|
display: flex;
|
|
78
78
|
align-items: center;
|
|
79
79
|
justify-content: center;
|
|
80
|
+
flex-direction: column;
|
|
81
|
+
gap: 0.5rem;
|
|
80
82
|
|
|
81
83
|
.common-spinner {
|
|
82
84
|
width: 5rem;
|
|
@@ -231,6 +233,13 @@
|
|
|
231
233
|
|
|
232
234
|
.gif-recorder-actions {
|
|
233
235
|
display: flex;
|
|
236
|
+
width: 100%;
|
|
237
|
+
|
|
238
|
+
.common-button {
|
|
239
|
+
padding-left: 0;
|
|
240
|
+
padding-right: 0;
|
|
241
|
+
flex: 1;
|
|
242
|
+
}
|
|
234
243
|
}
|
|
235
244
|
|
|
236
245
|
.thumbnail-image,
|
package/theme/toolbox.less
CHANGED
|
@@ -135,6 +135,7 @@ span.blocklyTreeLabel, text.blocklyText {
|
|
|
135
135
|
font-size: 1.2rem;
|
|
136
136
|
padding: .5rem 1rem;
|
|
137
137
|
border-bottom: 2px solid darken(desaturate(@editorToolsBackground, 60%), 10%);
|
|
138
|
+
user-select: none;
|
|
138
139
|
}
|
|
139
140
|
|
|
140
141
|
@media only screen and (max-width: @largestMobileScreen) {
|
|
@@ -182,6 +182,7 @@
|
|
|
182
182
|
background: @tutorialPrimaryColor;
|
|
183
183
|
width: 2rem;
|
|
184
184
|
height: 2rem;
|
|
185
|
+
user-select: none;
|
|
185
186
|
|
|
186
187
|
~ .circle-button {
|
|
187
188
|
// buttons after selected step
|
|
@@ -405,7 +406,6 @@
|
|
|
405
406
|
padding: 1rem 0.5rem 1rem 1rem;
|
|
406
407
|
overflow-x: hidden;
|
|
407
408
|
overflow-y: scroll;
|
|
408
|
-
|
|
409
409
|
&.ui.items { margin-top: 0; }
|
|
410
410
|
}
|
|
411
411
|
|
|
@@ -531,6 +531,8 @@
|
|
|
531
531
|
.tabTutorial {
|
|
532
532
|
.immersive-reader-button.ui.item {
|
|
533
533
|
float: right;
|
|
534
|
+
border: 2px solid @tutorialGrayOffset;
|
|
535
|
+
margin-left: 1.5rem;
|
|
534
536
|
}
|
|
535
537
|
}
|
|
536
538
|
|
|
@@ -1 +1,32 @@
|
|
|
1
|
-
<!doctype html
|
|
1
|
+
<!doctype html>
|
|
2
|
+
<html lang="@locale@">
|
|
3
|
+
<head>
|
|
4
|
+
<meta charset="utf-8"/>
|
|
5
|
+
<meta name="viewport" content="width=device-width,initial-scale=1"/>
|
|
6
|
+
<title>MakeCode Skill Map</title>
|
|
7
|
+
<link rel="stylesheet" data-rtl="/blb/rtlsemantic.css" href="/blb/semantic.css">
|
|
8
|
+
<link rel="stylesheet" href="/blb/icons.css">
|
|
9
|
+
<link rel="stylesheet" href="/blb/react-common-skillmap.css">
|
|
10
|
+
<link href="/blb/skillmap/css/main.3684f34d.chunk.css" rel="stylesheet"></head>
|
|
11
|
+
<body>
|
|
12
|
+
<noscript>You need to enable JavaScript to run this app.</noscript>
|
|
13
|
+
|
|
14
|
+
<!-- @include tracking.html -->
|
|
15
|
+
<!-- @include tickevent.html -->
|
|
16
|
+
|
|
17
|
+
<!-- target.js is generated by the CLI -->
|
|
18
|
+
<script type="text/javascript" src="/blb/target.js"></script>
|
|
19
|
+
<script type="text/javascript" src="/blb/pxtlib.js"></script>
|
|
20
|
+
|
|
21
|
+
<div id="root"></div>
|
|
22
|
+
|
|
23
|
+
|
|
24
|
+
<script>var pxtConfig=null</script>
|
|
25
|
+
|
|
26
|
+
<!-- begin usabilla live embed code -->
|
|
27
|
+
<script type="text/javascript">window.lightningjs||function(e){function n(n,i){return i&&(i+=(/\?/.test(i)?"&":"?")+"lv=1"),e[n]||function(){var a=window,r=document,o=n,d=r.location.protocol,s="load",l=0;!function(){function n(){c.P(s),c.w=1,e[o]("_load")}e[o]=function(){function n(){return n.id=i,e[o].apply(n,arguments)}var t,i=++l;return t=this&&this!=a&&this.id||0,(c.s=c.s||[]).push([i,t,arguments]),n.then=function(e,t,a){var r=c.fh[i]=c.fh[i]||[],o=c.eh[i]=c.eh[i]||[],d=c.ph[i]=c.ph[i]||[];return e&&r.push(e),t&&o.push(t),a&&d.push(a),n},n};var c=e[o]._={};c.fh={},c.eh={},c.ph={},c.l=i?i.replace(/^\/\//,("https:"==d?d:"http:")+"//"):i,c.p={0:+new Date},c.P=function(e){c.p[e]=new Date-c.p[0]},c.w&&n(),a.addEventListener?a.addEventListener(s,n,!1):a.attachEvent("on"+s,n);var u=function(){function e(){return["<head></head><",n,' onload="var d=',f,";d.getElementsByTagName('head')[0].",d,"(d.",s,"('script')).",l,"='",c.l,"'\"></",n,">"].join("")}var n="body",i=r[n];if(!i)return setTimeout(u,100);c.P(1);var a,d="appendChild",s="createElement",l="src",h=r[s]("div"),p=h[d](r[s]("div")),v=r[s]("iframe"),f="document";h.style.display="none",i.insertBefore(h,i.firstChild).id=t+"-"+o,v.frameBorder="0",v.id=t+"-frame-"+o,/MSIE[ ]+6/.test(navigator.userAgent)&&(v[l]="javascript:false"),v.allowTransparency="true",p[d](v);try{v.contentWindow[f].open()}catch(e){c.domain=r.domain,a="javascript:var d="+f+".open();d.domain='"+r.domain+"';",v[l]=a+"void(0);"}try{var w=v.contentWindow[f];w.write(e()),w.close()}catch(n){v[l]=a+'d.write("'+e().replace(/"/g,String.fromCharCode(92)+'"')+'");d.close();'}c.P(2)};c.l&&setTimeout(u,0)}()}(),e[n].lv="1",e[n]}var t="lightningjs",i=window[t]=n(t);i.require=n,i.modules=e}({}),window.usabilla_live=lightningjs.require("usabilla_live","//w.usabilla.com/1bba04d66c15.js")</script>
|
|
28
|
+
<!-- end usabilla live embed code -->
|
|
29
|
+
|
|
30
|
+
<!-- @include thin-footer.html -->
|
|
31
|
+
<script>!function(e){function r(r){for(var n,l,i=r[0],a=r[1],p=r[2],c=0,s=[];c<i.length;c++)l=i[c],Object.prototype.hasOwnProperty.call(o,l)&&o[l]&&s.push(o[l][0]),o[l]=0;for(n in a)Object.prototype.hasOwnProperty.call(a,n)&&(e[n]=a[n]);for(f&&f(r);s.length;)s.shift()();return u.push.apply(u,p||[]),t()}function t(){for(var e,r=0;r<u.length;r++){for(var t=u[r],n=!0,i=1;i<t.length;i++){var a=t[i];0!==o[a]&&(n=!1)}n&&(u.splice(r--,1),e=l(l.s=t[0]))}return e}var n={},o={1:0},u=[];function l(r){if(n[r])return n[r].exports;var t=n[r]={i:r,l:!1,exports:{}};return e[r].call(t.exports,t,t.exports,l),t.l=!0,t.exports}l.m=e,l.c=n,l.d=function(e,r,t){l.o(e,r)||Object.defineProperty(e,r,{enumerable:!0,get:t})},l.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},l.t=function(e,r){if(1&r&&(e=l(e)),8&r)return e;if(4&r&&"object"==typeof e&&e&&e.__esModule)return e;var t=Object.create(null);if(l.r(t),Object.defineProperty(t,"default",{enumerable:!0,value:e}),2&r&&"string"!=typeof e)for(var n in e)l.d(t,n,function(r){return e[r]}.bind(null,n));return t},l.n=function(e){var r=e&&e.__esModule?function(){return e.default}:function(){return e};return l.d(r,"a",r),r},l.o=function(e,r){return Object.prototype.hasOwnProperty.call(e,r)},l.p="/";var i=this.webpackJsonpskillsmap=this.webpackJsonpskillsmap||[],a=i.push.bind(i);i.push=r,i=i.slice();for(var p=0;p<i.length;p++)r(i[p]);var f=a;t()}([])</script><script src="/blb/skillmap/js/2.d9c1cec5.chunk.js"></script><script src="/blb/skillmap/js/main.94faba64.chunk.js"></script></body>
|
|
32
|
+
</html>
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
:root{--black:#000;--white:#fff;--primary-color:#aa278f;--secondary-color:#eac6eb;--tertiary-color:#850a6b;--hover-color:var(--secondary-color);--active-color:var(--tertiary-color);--inactive-color:var(--secondary-color);--inactive-hover-color:#6e6e6e;--invert-active-color:#fff;--invert-hover-text-color:#850a6b;--body-background-color:#f9f9f9;--default-card-color:#ccc;--card-hover-color:#bfbfbf;--card-border-color:#e9eef2;--dropdown-hover-color:#ccc;--inverted-text-color:var(--white);--subtitle-text-color:#6e6e6e;--header-height:4rem;--header-padding-top:1rem;--body-font-family:"Share Tech Mono",Monaco,Menlo,"Ubuntu Mono",Consolas,source-code-pro,monospace;--feature-text-font:Segoe UI,Tahoma,Geneva,Verdana;--frame-loader-zindex:30;--above-frame-zindex:50;--modal-dimmer-zindex:100;--fullscreen-modal-zindex:90;--graph-backround-zindex:10;--above-graph-zindex:20;--high-contrast-text:var(--white);--high-contrast-background:var(--black);--high-contrast-highlight:#ff0;--high-contrast-focus-outline:2px solid var(--high-contrast-highlight);--high-contrast-hyperlink:#807fff}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#f9f9f9;background-color:var(--body-background-color);font-family:Share Tech Mono,Monaco,Menlo,Ubuntu Mono,Consolas,source-code-pro,monospace;font-family:var(--body-font-family);margin:0;overflow:hidden;position:relative}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}#root,#root>div,.app-container{height:100%;width:100%}.app-content{gap:1rem;padding-top:3rem}.app-content,.content-row{align-items:center;display:flex;flex-direction:column}.auth-button,.motd-button{width:-webkit-fit-content;width:-moz-fit-content;width:fit-content}body{background:#fdf3e0}.arcade{--primary-color:#e77038;--secondary-color:#ffeb9a;--tertiary-color:#e77038;--hover-color:var(--secondary-color);--active-color:var(--tertiary-color);--inactive-color:#bfbfbf;--invert-active-color:#fff;--invert-hover-text-color:#e77038;--body-background-color:#fdf3e0;--card-hover-color:var(--default-card-color)}.arcade .banner{background:linear-gradient(90deg,#9feffd,#fd99c2)}.arcade .dropdown-menu,.arcade .modal{background-color:var(--white)}.arcade .carousel-arrow{color:var(--primary-color)}
|
|
2
|
-
/*# sourceMappingURL=main.b0b14e9a.css.map*/
|