@microbit/makecode-embed 0.0.0-alpha.7 → 0.1.0

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/LICENSE.md CHANGED
@@ -1,6 +1,6 @@
1
1
  MIT License
2
2
 
3
- Copyright (c) YEAR AUTHOR
3
+ Copyright (c) 2024-2025 Micro:bit Educational Foundation and contributors
4
4
 
5
5
  Permission is hereby granted, free of charge, to any person obtaining a copy
6
6
  of this software and associated documentation files (the "Software"), to deal
package/README.md CHANGED
@@ -1,21 +1,25 @@
1
- # React/JavaScript library for embedding Microsoft MakeCode as an iframe
1
+ # MakeCode Embed
2
2
 
3
- This project is a work in progress.
3
+ <a href="https://microbit-foundation.github.io/makecode-embed/" class="typedoc-ignore">This documentation is best viewed on the documentation site rather than GitHub or NPM package site.</a>
4
+
5
+ This is a React/JavaScript library for embedding Microsoft MakeCode as an iframe.
4
6
 
5
7
  It is intended to be used by other Micro:bit Educational Foundation projects
6
8
  that need to embed MakeCode and, when the API stabilises, to be useful to others
7
9
  who embed MakeCode.
8
10
 
9
- ## Documentation
11
+ - [StoryBook demo of the components](https://makecode-embed.pages.dev/)
12
+
13
+ ## Usage
10
14
 
11
- There isn't any documentation yet. You can find a StoryBook demo of the
12
- components at https://microbit-foundation.github.io/makecode-embed/
15
+ - [React usage documentation](docs/react.md)
16
+ - [VanillaJS usage documentation](docs/vanilla.md)
13
17
 
14
18
  ## License
15
19
 
16
20
  This software is under the MIT open source license.
17
21
 
18
- [SPDX-License-Identifier: MIT](LICENSE)
22
+ [SPDX-License-Identifier: MIT](LICENSE.md)
19
23
 
20
24
  We use dependencies via the NPM registry as specified by the package.json file under common Open Source licenses.
21
25
 
@@ -3,10 +3,10 @@
3
3
  * to render MakeCode block snippets
4
4
  */
5
5
  import React from 'react';
6
- import { BlockLayout, Project } from '../vanilla/pxt.js';
6
+ import { BlockLayout, MakeCodeProject } from '../vanilla/pxt.js';
7
7
  export interface MakeCodeBlocksRenderingProps {
8
8
  className?: string;
9
- code?: string | Project;
9
+ code?: string | MakeCodeProject;
10
10
  packageId?: string;
11
11
  package?: string;
12
12
  snippetMode?: boolean;
@@ -1,13 +1,13 @@
1
1
  import React from 'react';
2
2
  import { MakeCodeFrameDriver } from '../vanilla/makecode-frame-driver.js';
3
- import { EditorContentLoadedRequest, EditorEvent, EditorMessageTutorialEventRequest, EditorWorkspaceSaveRequest, EditorWorkspaceSyncRequest, Project, ProjectFilters } from '../vanilla/pxt.js';
3
+ import { EditorContentLoadedRequest, EditorEvent, EditorMessageTutorialEventRequest, EditorWorkspaceSaveRequest, EditorWorkspaceSyncRequest, MakeCodeProject, ProjectFilters } from '../vanilla/pxt.js';
4
4
  export interface MakeCodeFrameProps extends React.ComponentPropsWithoutRef<'iframe'> {
5
5
  baseUrl?: string;
6
6
  version?: string;
7
7
  lang?: string;
8
8
  controller?: 1 | 2;
9
9
  queryParams?: Record<string, string>;
10
- initialProjects: () => Promise<Project[]>;
10
+ initialProjects: () => Promise<MakeCodeProject[]>;
11
11
  controllerId?: string;
12
12
  filters?: ProjectFilters;
13
13
  searchBar?: boolean;
@@ -1,8 +1,18 @@
1
1
  import { ReactNode } from 'react';
2
- import { MakeCodeRenderBlocksOptions } from '../vanilla/makecode-render-blocks.js';
3
2
  import { UseMakeCodeRenderBlocksReturn } from './useMakeCodeRenderBlocks.js';
4
- export declare const MakeCodeRenderBlocksProvider: ({ options, children, }: {
5
- options: MakeCodeRenderBlocksOptions;
3
+ export declare const MakeCodeRenderBlocksProvider: ({ disabled, version, lang, children, }: {
4
+ /**
5
+ * This can be used to disable loading MakeCode in scenarios where it will be unused.
6
+ */
7
+ disabled?: boolean | undefined;
8
+ /**
9
+ * MakeCode version.
10
+ */
11
+ version?: string | undefined;
12
+ /**
13
+ * MakeCode language code.
14
+ */
15
+ lang?: string | undefined;
6
16
  children: ReactNode;
7
17
  }) => import("react/jsx-runtime").JSX.Element;
8
18
  export declare const useMakeCodeRenderBlocksContext: () => UseMakeCodeRenderBlocksReturn;
@@ -1,12 +1,15 @@
1
1
  import { jsx as _jsx } from "react/jsx-runtime";
2
- import { createContext, useContext } from 'react';
2
+ import { createContext, useContext, useMemo } from 'react';
3
3
  import useMakeCodeRenderBlocks from './useMakeCodeRenderBlocks.js';
4
4
  const MakeCodeRenderBlocksContext = createContext({
5
5
  renderBlocks: () => {
6
6
  throw new Error('Configure MakeCodeRenderBlocksProvider.');
7
7
  },
8
8
  });
9
- export const MakeCodeRenderBlocksProvider = ({ options, children, }) => {
9
+ export const MakeCodeRenderBlocksProvider = ({ disabled, version, lang, children, }) => {
10
+ const options = useMemo(() => {
11
+ return { disabled, version, lang };
12
+ }, [disabled, lang, version]);
10
13
  const value = useMakeCodeRenderBlocks(options);
11
14
  return (_jsx(MakeCodeRenderBlocksContext.Provider, { value: value, children: children }));
12
15
  };
@@ -1 +1 @@
1
- {"version":3,"file":"MakeCodeRenderBlocksProvider.js","sourceRoot":"","sources":["../../src/react/MakeCodeRenderBlocksProvider.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAa,aAAa,EAAE,UAAU,EAAE,MAAM,OAAO,CAAC;AAE7D,OAAO,uBAEN,MAAM,8BAA8B,CAAC;AAEtC,MAAM,2BAA2B,GAC/B,aAAa,CAAgC;IAC3C,YAAY,EAAE,GAAG,EAAE;QACjB,MAAM,IAAI,KAAK,CAAC,yCAAyC,CAAC,CAAC;IAC7D,CAAC;CACF,CAAC,CAAC;AAEL,MAAM,CAAC,MAAM,4BAA4B,GAAG,CAAC,EAC3C,OAAO,EACP,QAAQ,GAIT,EAAE,EAAE;IACH,MAAM,KAAK,GAAG,uBAAuB,CAAC,OAAO,CAAC,CAAC;IAC/C,OAAO,CACL,KAAC,2BAA2B,CAAC,QAAQ,IAAC,KAAK,EAAE,KAAK,YAC/C,QAAQ,GAC4B,CACxC,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,8BAA8B,GAAG,GAAG,EAAE,CACjD,UAAU,CAAC,2BAA2B,CAAC,CAAC"}
1
+ {"version":3,"file":"MakeCodeRenderBlocksProvider.js","sourceRoot":"","sources":["../../src/react/MakeCodeRenderBlocksProvider.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAa,aAAa,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AACtE,OAAO,uBAEN,MAAM,8BAA8B,CAAC;AAEtC,MAAM,2BAA2B,GAC/B,aAAa,CAAgC;IAC3C,YAAY,EAAE,GAAG,EAAE;QACjB,MAAM,IAAI,KAAK,CAAC,yCAAyC,CAAC,CAAC;IAC7D,CAAC;CACF,CAAC,CAAC;AAEL,MAAM,CAAC,MAAM,4BAA4B,GAAG,CAAC,EAC3C,QAAQ,EACR,OAAO,EACP,IAAI,EACJ,QAAQ,GAeT,EAAE,EAAE;IACH,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,EAAE;QAC3B,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;IACrC,CAAC,EAAE,CAAC,QAAQ,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC;IAC9B,MAAM,KAAK,GAAG,uBAAuB,CAAC,OAAO,CAAC,CAAC;IAC/C,OAAO,CACL,KAAC,2BAA2B,CAAC,QAAQ,IAAC,KAAK,EAAE,KAAK,YAC/C,QAAQ,GAC4B,CACxC,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,8BAA8B,GAAG,GAAG,EAAE,CACjD,UAAU,CAAC,2BAA2B,CAAC,CAAC"}
@@ -5,4 +5,4 @@ export { default as MakeCodeBlocksRendering, type MakeCodeBlocksRenderingProps,
5
5
  export { defaultMakeCodeProject, emptyMakeCodeProject, } from '../vanilla/examples.js';
6
6
  export { MakeCodeFrameDriver, createMakeCodeURL, } from '../vanilla/makecode-frame-driver.js';
7
7
  export { BlockLayout } from '../vanilla/pxt.js';
8
- export type { CreateEvent, EditorContentLoadedRequest, EditorEvent, EditorMessageTutorialCompletedEventRequest, EditorMessageTutorialEventRequest, EditorMessageTutorialExitEventRequest, EditorMessageTutorialLoadedEventRequest, EditorMessageTutorialProgressEventRequest, EditorWorkspaceSaveRequest, EditorWorkspaceSyncRequest, ImportExternalProjectOptions, ImportFileOptions, ImportProjectOptions, InfoMessage, LanguageRestriction, Project, ProjectCreationOptions, ProjectFilters, RenderBlocksOptions, RenderByBlockIdOptions, RenderXmlOptions, ShareResult, StartActivityOptions, ToolboxBlockDefinition, ToolboxCategoryDefinition, UIEvent, } from '../vanilla/pxt.js';
8
+ export type { CreateEvent, EditorContentLoadedRequest, EditorEvent, EditorMessageTutorialCompletedEventRequest, EditorMessageTutorialEventRequest, EditorMessageTutorialExitEventRequest, EditorMessageTutorialLoadedEventRequest, EditorMessageTutorialProgressEventRequest, EditorWorkspaceSaveRequest, EditorWorkspaceSyncRequest, ImportExternalProjectOptions, ImportFileOptions, ImportProjectOptions, InfoMessage, LanguageRestriction, MakeCodeProject, ProjectCreationOptions, ProjectFilters, RenderBlocksOptions, RenderByBlockIdOptions, RenderXmlOptions, ShareResult, StartActivityOptions, ToolboxBlockDefinition, ToolboxCategoryDefinition, UIEvent, } from '../vanilla/pxt.js';
@@ -1,5 +1,5 @@
1
1
  import { useEffect, useMemo } from 'react';
2
- import createMakeCodeRenderBlocks from '../vanilla/makecode-render-blocks.js';
2
+ import { createMakeCodeRenderBlocks, } from '../vanilla/makecode-render-blocks.js';
3
3
  const useMakeCodeRenderBlocks = (options) => {
4
4
  const { disabled, lang, version } = options;
5
5
  const memoizedOptions = useMemo(() => {
@@ -1 +1 @@
1
- {"version":3,"file":"useMakeCodeRenderBlocks.js","sourceRoot":"","sources":["../../src/react/useMakeCodeRenderBlocks.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AAC3C,OAAO,0BAKN,MAAM,sCAAsC,CAAC;AAM9C,MAAM,uBAAuB,GAAG,CAC9B,OAAoC,EACL,EAAE;IACjC,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC;IAC5C,MAAM,eAAe,GAAG,OAAO,CAAC,GAAG,EAAE;QACnC,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;IACrC,CAAC,EAAE,CAAC,QAAQ,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC;IAC9B,MAAM,WAAW,GAAG,OAAO,CACzB,GAAG,EAAE,CAAC,0BAA0B,CAAC,eAAe,CAAC,EACjD,CAAC,eAAe,CAAC,CAClB,CAAC;IACF,SAAS,CAAC,GAAG,EAAE;QACb,WAAW,CAAC,UAAU,EAAE,CAAC;QACzB,OAAO,GAAG,EAAE,CAAC,WAAW,CAAC,OAAO,EAAE,CAAC;IACrC,CAAC,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC;IAElB,OAAO,WAAW,CAAC;AACrB,CAAC,CAAC;AAEF,eAAe,uBAAuB,CAAC"}
1
+ {"version":3,"file":"useMakeCodeRenderBlocks.js","sourceRoot":"","sources":["../../src/react/useMakeCodeRenderBlocks.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AAC3C,OAAO,EACL,0BAA0B,GAK3B,MAAM,sCAAsC,CAAC;AAM9C,MAAM,uBAAuB,GAAG,CAC9B,OAAoC,EACL,EAAE;IACjC,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC;IAC5C,MAAM,eAAe,GAAG,OAAO,CAAC,GAAG,EAAE;QACnC,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;IACrC,CAAC,EAAE,CAAC,QAAQ,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC;IAC9B,MAAM,WAAW,GAAG,OAAO,CACzB,GAAG,EAAE,CAAC,0BAA0B,CAAC,eAAe,CAAC,EACjD,CAAC,eAAe,CAAC,CAClB,CAAC;IACF,SAAS,CAAC,GAAG,EAAE;QACb,WAAW,CAAC,UAAU,EAAE,CAAC;QACzB,OAAO,GAAG,EAAE,CAAC,WAAW,CAAC,OAAO,EAAE,CAAC;IACrC,CAAC,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC;IAElB,OAAO,WAAW,CAAC;AACrB,CAAC,CAAC;AAEF,eAAe,uBAAuB,CAAC"}
@@ -1,3 +1,3 @@
1
- import { Project } from './pxt.js';
2
- export declare const defaultMakeCodeProject: Project;
3
- export declare const emptyMakeCodeProject: Project;
1
+ import { MakeCodeProject } from './pxt.js';
2
+ export declare const defaultMakeCodeProject: MakeCodeProject;
3
+ export declare const emptyMakeCodeProject: MakeCodeProject;
@@ -1 +1 @@
1
- {"version":3,"file":"examples.js","sourceRoot":"","sources":["../../src/vanilla/examples.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,sBAAsB,GAAY;IAC7C,IAAI,EAAE;QACJ,aAAa,EACX,sIAAsI;QACxI,SAAS,EAAE,EAAE;QACb,WAAW,EAAE,GAAG;QAChB,UAAU,EACR,mNAAmN;KACtN;CACF,CAAC;AAEF,MAAM,CAAC,MAAM,oBAAoB,GAAY;IAC3C,IAAI,EAAE;QACJ,aAAa,EACX,+EAA+E;QACjF,SAAS,EAAE,IAAI;QACf,WAAW,EAAE,GAAG;QAChB,UAAU,EACR,mNAAmN;KACtN;CACF,CAAC"}
1
+ {"version":3,"file":"examples.js","sourceRoot":"","sources":["../../src/vanilla/examples.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,sBAAsB,GAAoB;IACrD,IAAI,EAAE;QACJ,aAAa,EACX,sIAAsI;QACxI,SAAS,EAAE,EAAE;QACb,WAAW,EAAE,GAAG;QAChB,UAAU,EACR,mNAAmN;KACtN;CACF,CAAC;AAEF,MAAM,CAAC,MAAM,oBAAoB,GAAoB;IACnD,IAAI,EAAE;QACJ,aAAa,EACX,+EAA+E;QACjF,SAAS,EAAE,IAAI;QACf,WAAW,EAAE,GAAG;QAChB,UAAU,EACR,mNAAmN;KACtN;CACF,CAAC"}
@@ -1,4 +1,6 @@
1
1
  export { defaultMakeCodeProject, emptyMakeCodeProject, } from '../vanilla/examples.js';
2
- export { MakeCodeFrameDriver, createMakeCodeURL, type Options, } from '../vanilla/makecode-frame-driver.js';
2
+ export { MakeCodeFrameDriver, createMakeCodeURL, type EditorShareOptions, type Options, } from '../vanilla/makecode-frame-driver.js';
3
3
  export { BlockLayout } from '../vanilla/pxt.js';
4
- export type { CreateEvent, EditorContentLoadedRequest, EditorEvent, EditorMessageTutorialCompletedEventRequest, EditorMessageTutorialEventRequest, EditorMessageTutorialExitEventRequest, EditorMessageTutorialLoadedEventRequest, EditorMessageTutorialProgressEventRequest, EditorWorkspaceSaveRequest, EditorWorkspaceSyncRequest, ImportExternalProjectOptions, ImportFileOptions, ImportProjectOptions, InfoMessage, LanguageRestriction, Project, ProjectCreationOptions, ProjectFilters, RenderBlocksOptions, RenderByBlockIdOptions, RenderXmlOptions, ShareResult, StartActivityOptions, ToolboxBlockDefinition, ToolboxCategoryDefinition, UIEvent, } from '../vanilla/pxt.js';
4
+ export type { CodeCard, CodeCardAction, CodeCardEditorType, CodeCardType, CodeValidationConfig, CreateEvent, DependencyMap, EditorContentLoadedRequest, EditorEvent, EditorMessageTutorialCompletedEventRequest, EditorMessageTutorialEventRequest, EditorMessageTutorialExitEventRequest, EditorMessageTutorialLoadedEventRequest, EditorMessageTutorialProgressEventRequest, EditorWorkspaceSaveRequest, EditorWorkspaceSyncRequest, FilterState, Header, ImportExternalProjectOptions, ImportFileOptions, ImportProjectOptions, InfoMessage, LanguageRestriction, PackageConfig, PackageExtension, MakeCodeProject, ProjectCreationOptions, ProjectFilters, ProjectTemplate, RenderBlocksOptions, RenderByBlockIdOptions, RenderXmlOptions, ScriptText, ShareResult, SnippetAnswerTypes, SnippetConfig, SnippetGoToOptions, SnippetParameters, SnippetQuestionInput, SnippetQuestions, StartActivityOptions, TargetVersions, ToolboxBlockDefinition, ToolboxCategoryDefinition, TutorialActivityInfo, TutorialBlockConfig, TutorialMetadata, TutorialOptions, TutorialStepInfo, UIEvent, YottaConfig, } from '../vanilla/pxt.js';
5
+ export { createMakeCodeRenderBlocks } from '../vanilla/makecode-render-blocks.js';
6
+ export type { MakeCodeRenderBlocksOptions, MakeCodeRenderBlocksReturn, RenderBlocksResponse, RenderBlocksRequest, } from '../vanilla/makecode-render-blocks.js';
@@ -1,4 +1,5 @@
1
1
  export { defaultMakeCodeProject, emptyMakeCodeProject, } from '../vanilla/examples.js';
2
2
  export { MakeCodeFrameDriver, createMakeCodeURL, } from '../vanilla/makecode-frame-driver.js';
3
3
  export { BlockLayout } from '../vanilla/pxt.js';
4
+ export { createMakeCodeRenderBlocks } from '../vanilla/makecode-render-blocks.js';
4
5
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/vanilla/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,sBAAsB,EACtB,oBAAoB,GACrB,MAAM,wBAAwB,CAAC;AAEhC,OAAO,EACL,mBAAmB,EACnB,iBAAiB,GAElB,MAAM,qCAAqC,CAAC;AAE7C,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/vanilla/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,sBAAsB,EACtB,oBAAoB,GACrB,MAAM,wBAAwB,CAAC;AAEhC,OAAO,EACL,mBAAmB,EACnB,iBAAiB,GAGlB,MAAM,qCAAqC,CAAC;AAE7C,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAwDhD,OAAO,EAAE,0BAA0B,EAAE,MAAM,sCAAsC,CAAC"}
@@ -1,5 +1,5 @@
1
- import { EditorContentLoadedRequest, EditorEvent, EditorMessageTutorialEventRequest, EditorWorkspaceSaveRequest, EditorWorkspaceSyncRequest, ImportExternalProjectOptions, ImportFileOptions, ImportProjectOptions, InfoMessage, LanguageRestriction, Project, ProjectCreationOptions, ProjectFilters, RenderBlocksOptions, RenderByBlockIdOptions, RenderXmlOptions, ShareResult, StartActivityOptions, ToolboxCategoryDefinition } from './pxt.js';
2
- interface EditorShareOptions {
1
+ import { EditorContentLoadedRequest, EditorEvent, EditorMessageTutorialEventRequest, EditorWorkspaceSaveRequest, EditorWorkspaceSyncRequest, ImportExternalProjectOptions, ImportFileOptions, ImportProjectOptions, InfoMessage, LanguageRestriction, MakeCodeProject, ProjectCreationOptions, ProjectFilters, RenderBlocksOptions, RenderByBlockIdOptions, RenderXmlOptions, ShareResult, StartActivityOptions, ToolboxCategoryDefinition } from './pxt.js';
2
+ export interface EditorShareOptions {
3
3
  headerId: string;
4
4
  projectName: string;
5
5
  }
@@ -12,7 +12,7 @@ export interface Options {
12
12
  * The projects will receive updates via `onWorkspaceSave` and should be stored keyed by header
13
13
  * id.
14
14
  */
15
- initialProjects: () => Promise<Project[]>;
15
+ initialProjects: () => Promise<MakeCodeProject[]>;
16
16
  /**
17
17
  * Set this to a value representing your app.
18
18
  */
@@ -262,4 +262,3 @@ export declare class MakeCodeFrameDriver {
262
262
  importFile(options: ImportFileOptions): void;
263
263
  }
264
264
  export declare const createMakeCodeURL: (baseUrl: string | undefined, version: string | undefined, lang: string | undefined, controller: number | undefined, queryParams: Record<string, string> | undefined) => string;
265
- export {};
@@ -167,6 +167,7 @@ export class MakeCodeFrameDriver {
167
167
  // Native app oriented event that doesn't have a 'type' field.
168
168
  switch (data.cmd) {
169
169
  case 'backtap':
170
+ // MakeCode seems to send this twice for a single click but there's little we can do here.
170
171
  return this.options.onBack?.();
171
172
  case 'backpress':
172
173
  return this.options.onBackLongPress?.();
@@ -1 +1 @@
1
- {"version":3,"file":"makecode-frame-driver.js","sourceRoot":"","sources":["../../src/vanilla/makecode-frame-driver.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"makecode-frame-driver.js","sourceRoot":"","sources":["../../src/vanilla/makecode-frame-driver.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * MakeCode handling that does not depend on React.
3
3
  */
4
- import { BlockLayout, Project } from './pxt.js';
4
+ import { BlockLayout, MakeCodeProject } from './pxt.js';
5
5
  export interface MakeCodeRenderBlocksOptions {
6
6
  disabled?: boolean;
7
7
  version?: string;
@@ -13,7 +13,7 @@ export interface MakeCodeRenderBlocksReturn {
13
13
  dispose: () => void;
14
14
  }
15
15
  export interface RenderBlocksRequest {
16
- code: string | Project;
16
+ code: string | MakeCodeProject;
17
17
  options?: {
18
18
  packageId?: string;
19
19
  package?: string;
@@ -28,5 +28,4 @@ export interface RenderBlocksResponse {
28
28
  width?: number;
29
29
  height?: number;
30
30
  }
31
- declare const createMakeCodeRenderBlocks: (options: MakeCodeRenderBlocksOptions) => MakeCodeRenderBlocksReturn;
32
- export default createMakeCodeRenderBlocks;
31
+ export declare const createMakeCodeRenderBlocks: (options: MakeCodeRenderBlocksOptions) => MakeCodeRenderBlocksReturn;
@@ -3,7 +3,7 @@
3
3
  */
4
4
  const disposedMessage = 'Disposed';
5
5
  const makecodeFailedToLoadMessage = 'Failed to load MakeCode to render blocks.';
6
- const createMakeCodeRenderBlocks = (options) => {
6
+ export const createMakeCodeRenderBlocks = (options) => {
7
7
  const defaultedOptions = {
8
8
  ...options,
9
9
  };
@@ -210,5 +210,4 @@ function createIframe(makecodeOrigin, { lang, version }) {
210
210
  document.body.appendChild(f);
211
211
  return f;
212
212
  }
213
- export default createMakeCodeRenderBlocks;
214
213
  //# sourceMappingURL=makecode-render-blocks.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"makecode-render-blocks.js","sourceRoot":"","sources":["../../src/vanilla/makecode-render-blocks.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"makecode-render-blocks.js","sourceRoot":"","sources":["../../src/vanilla/makecode-render-blocks.ts"],"names":[],"mappings":"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"}
@@ -16,14 +16,13 @@
16
16
  * Modifications are Copright (c) Micro:bit Educational Foundation and contributors
17
17
  * 2024.
18
18
  */
19
- export interface JsonScriptMeta {
20
- blocksWidth?: number;
21
- blocksHeight?: number;
22
- versions?: TargetVersions;
23
- }
24
19
  export interface InstallHeader {
25
20
  name: string;
26
- meta: JsonScriptMeta;
21
+ meta: {
22
+ blocksWidth?: number;
23
+ blocksHeight?: number;
24
+ versions?: TargetVersions;
25
+ };
27
26
  editor: string;
28
27
  board?: string;
29
28
  temporary?: boolean;
@@ -31,14 +30,20 @@ export interface InstallHeader {
31
30
  targetVersion: string;
32
31
  pubId: string;
33
32
  pubCurrent: boolean;
34
- pubVersions?: PublishVersion[];
33
+ pubVersions?: {
34
+ id: string;
35
+ type: 'snapshot' | 'permalink';
36
+ }[];
35
37
  pubPermalink?: string;
36
38
  anonymousSharePreference?: boolean;
37
39
  githubId?: string;
38
40
  githubTag?: string;
39
41
  githubCurrent?: boolean;
40
42
  tutorial?: TutorialOptions;
41
- tutorialCompleted?: TutorialCompletionInfo;
43
+ tutorialCompleted?: {
44
+ id: string;
45
+ steps: number;
46
+ };
42
47
  extensionUnderTest?: string;
43
48
  cloudUserId?: string;
44
49
  isSkillmapProject?: boolean;
@@ -58,12 +63,8 @@ export interface Header extends InstallHeader {
58
63
  isBackup?: boolean;
59
64
  _rev: string;
60
65
  }
61
- interface PublishVersion {
62
- id: string;
63
- type: 'snapshot' | 'permalink';
64
- }
65
66
  export type ScriptText = Record<string, string>;
66
- export interface Project {
67
+ export interface MakeCodeProject {
67
68
  header?: Header;
68
69
  text?: ScriptText;
69
70
  }
@@ -213,16 +214,16 @@ export interface EditorSyncState {
213
214
  searchBar?: boolean;
214
215
  }
215
216
  export interface EditorWorkspaceSyncResponse extends EditorMessageResponse {
216
- projects: Project[];
217
+ projects: MakeCodeProject[];
217
218
  editor?: EditorSyncState;
218
219
  controllerId?: string;
219
220
  }
220
221
  export interface EditorWorkspaceSaveRequest extends EditorMessageRequest {
221
222
  action: 'workspacesave';
222
- project: Project;
223
+ project: MakeCodeProject;
223
224
  }
224
225
  export interface ImportProjectOptions {
225
- project: Project;
226
+ project: MakeCodeProject;
226
227
  filters?: ProjectFilters;
227
228
  searchBar?: boolean;
228
229
  }
@@ -230,7 +231,7 @@ export interface EditorMessageImportProjectRequest extends EditorMessageRequest,
230
231
  action: 'importproject';
231
232
  }
232
233
  export interface ImportExternalProjectOptions {
233
- project: Project;
234
+ project: MakeCodeProject;
234
235
  }
235
236
  export interface EditorMessageImportExternalProjectRequest extends EditorMessageRequest, ImportExternalProjectOptions {
236
237
  action: 'importexternalproject';
@@ -395,7 +396,7 @@ export interface EditorMessageServiceWorkerRegisteredRequest extends EditorMessa
395
396
  export interface EditorMessageGetToolboxCategoriesResponse {
396
397
  categories: ToolboxCategoryDefinition[];
397
398
  }
398
- interface ProjectTemplate {
399
+ export interface ProjectTemplate {
399
400
  id: string;
400
401
  config: PackageConfig;
401
402
  files: Record<string, string>;
@@ -555,21 +556,12 @@ export interface ToolboxBlockDefinition {
555
556
  blockId?: string;
556
557
  }
557
558
  export type CloudStatus = 'none' | 'synced' | 'justSynced' | 'offline' | 'syncing' | 'conflict' | 'localEdits';
558
- interface TargetVersions {
559
- target: string;
560
- targetId?: string;
561
- targetWebsite?: string;
562
- pxt?: string;
563
- tag?: string;
564
- branch?: string;
565
- commits?: string;
566
- }
567
- type CodeCardType = 'file' | 'example' | 'codeExample' | 'tutorial' | 'side' | 'template' | 'package' | 'hw' | 'forumUrl' | 'forumExample' | 'sharedExample' | 'link';
568
- type CodeCardEditorType = 'blocks' | 'js' | 'py';
569
- interface Map<T> {
559
+ export type CodeCardType = 'file' | 'example' | 'codeExample' | 'tutorial' | 'side' | 'template' | 'package' | 'hw' | 'forumUrl' | 'forumExample' | 'sharedExample' | 'link';
560
+ export type CodeCardEditorType = 'blocks' | 'js' | 'py';
561
+ export interface DependencyMap<T> {
570
562
  [index: string]: T;
571
563
  }
572
- interface TargetVersions {
564
+ export interface TargetVersions {
573
565
  target: string;
574
566
  targetId?: string;
575
567
  targetWebsite?: string;
@@ -578,11 +570,7 @@ interface TargetVersions {
578
570
  branch?: string;
579
571
  commits?: string;
580
572
  }
581
- interface Size {
582
- width: number;
583
- height: number;
584
- }
585
- interface CodeCardAction {
573
+ export interface CodeCardAction {
586
574
  url: string;
587
575
  editor?: CodeCardEditorType;
588
576
  cardType?: CodeCardType;
@@ -590,20 +578,20 @@ interface CodeCardAction {
590
578
  /**
591
579
  * The schema for the pxt.json package files
592
580
  */
593
- interface PackageConfig {
581
+ export interface PackageConfig {
594
582
  name: string;
595
583
  version?: string;
596
584
  icon?: string;
597
585
  documentation?: string;
598
586
  targetVersions?: TargetVersions;
599
587
  description?: string;
600
- dependencies: Map<string>;
588
+ dependencies: DependencyMap<string>;
601
589
  license?: string;
602
590
  authors?: string[];
603
591
  files: string[];
604
592
  simFiles?: string[];
605
593
  testFiles?: string[];
606
- fileDependencies?: Map<string>;
594
+ fileDependencies?: DependencyMap<string>;
607
595
  preferredEditor?: string;
608
596
  languageRestriction?: LanguageRestriction;
609
597
  testDependencies?: Record<string, string>;
@@ -611,14 +599,21 @@ interface PackageConfig {
611
599
  public?: boolean;
612
600
  partial?: boolean;
613
601
  binaryonly?: boolean;
614
- platformio?: PlatformIOConfig;
602
+ platformio?: {
603
+ dependencies?: DependencyMap<string>;
604
+ };
615
605
  compileServiceVariant?: string;
616
606
  palette?: string[];
617
607
  paletteNames?: string[];
618
- screenSize?: Size;
608
+ screenSize?: {
609
+ width: number;
610
+ height: number;
611
+ };
619
612
  yotta?: YottaConfig;
620
- codal?: CodalConfig;
621
- npmDependencies?: Map<string>;
613
+ codal?: {
614
+ libraries?: string[];
615
+ };
616
+ npmDependencies?: DependencyMap<string>;
622
617
  card?: CodeCard;
623
618
  additionalFilePath?: string;
624
619
  additionalFilePaths?: string[];
@@ -647,9 +642,9 @@ interface PackageConfig {
647
642
  disableTargetTemplateFiles?: boolean;
648
643
  theme?: string | Record<string, string>;
649
644
  assetPack?: boolean;
650
- assetPacks?: Map<boolean>;
645
+ assetPacks?: DependencyMap<boolean>;
651
646
  }
652
- interface PackageExtension {
647
+ export interface PackageExtension {
653
648
  namespace?: string;
654
649
  group?: string;
655
650
  label?: string;
@@ -658,28 +653,21 @@ interface PackageExtension {
658
653
  url?: string;
659
654
  localUrl?: string;
660
655
  }
661
- interface PlatformIOConfig {
662
- dependencies?: Map<string>;
663
- }
664
- interface CompilationConfig {
665
- description: string;
666
- config: any;
667
- }
668
- interface CodalConfig {
669
- libraries?: string[];
670
- }
671
- interface YottaConfig {
672
- dependencies?: Map<string>;
656
+ export interface YottaConfig {
657
+ dependencies?: DependencyMap<string>;
673
658
  config?: any;
674
659
  /**
675
660
  * Overridable config flags
676
661
  */
677
662
  optionalConfig?: any;
678
- userConfigs?: CompilationConfig[];
663
+ userConfigs?: {
664
+ description: string;
665
+ config: any;
666
+ }[];
679
667
  configIsJustDefaults?: boolean;
680
668
  ignoreConflicts?: boolean;
681
669
  }
682
- interface CodeCard {
670
+ export interface CodeCard {
683
671
  name?: string;
684
672
  shortName?: string;
685
673
  title?: string;
@@ -726,65 +714,55 @@ interface CodeCard {
726
714
  className?: string;
727
715
  variant?: string;
728
716
  }
729
- type SnippetOutputType = 'blocks';
730
- type SnippetOutputBehavior = /*assumed default*/ 'merge' | 'replace';
731
- interface SnippetConfig {
717
+ export interface SnippetConfig {
732
718
  name: string;
733
719
  namespace: string;
734
720
  group?: string;
735
721
  label: string;
736
- outputType: SnippetOutputType;
737
- outputBehavior?: SnippetOutputBehavior;
722
+ outputType: 'blocks';
723
+ outputBehavior?: /*assumed default*/ 'merge' | 'replace';
738
724
  initialOutput?: string;
739
725
  questions: SnippetQuestions[];
740
726
  }
741
- type SnippetAnswerTypes = 'number' | 'text' | 'variableName' | 'dropdown' | 'spriteEditor' | 'yesno' | string;
742
- interface SnippetGoToOptions {
727
+ export type SnippetAnswerTypes = 'number' | 'text' | 'variableName' | 'dropdown' | 'spriteEditor' | 'yesno' | string;
728
+ export interface SnippetGoToOptions {
743
729
  question?: number;
744
- validate?: SnippetValidate;
730
+ validate?: {
731
+ regex?: {
732
+ token: string;
733
+ regex: string;
734
+ match?: SnippetParameters;
735
+ noMatch?: SnippetParameters;
736
+ };
737
+ };
745
738
  parameters?: SnippetParameters[];
746
739
  }
747
- interface SnippetParameters {
740
+ export interface SnippetParameters {
748
741
  token?: string;
749
742
  answer?: string;
750
743
  question: number;
751
744
  }
752
- interface SnippetInputAnswerSingular {
745
+ export type SnippetQuestionInput = {
746
+ label?: string;
747
+ } & ({
753
748
  answerToken: string;
754
749
  defaultAnswer: SnippetAnswerTypes;
755
- }
756
- interface SnippetInputAnswerPlural {
750
+ } | {
757
751
  answerTokens: string[];
758
752
  defaultAnswers: SnippetAnswerTypes[];
759
- }
760
- interface SnippetInputOtherType {
753
+ }) & ({
761
754
  type: string;
762
- }
763
- interface SnippetInputNumberType {
755
+ } | {
764
756
  type: 'number' | 'positionPicker';
765
757
  max?: number;
766
758
  min?: number;
767
- }
768
- interface SnippetInputDropdownType {
759
+ } | {
769
760
  type: 'dropdown';
770
761
  options: Record<string, string>;
771
- }
772
- interface SnippetInputYesNoType {
762
+ } | {
773
763
  type: 'yesno';
774
- }
775
- type SnippetQuestionInput = {
776
- label?: string;
777
- } & (SnippetInputAnswerSingular | SnippetInputAnswerPlural) & (SnippetInputOtherType | SnippetInputNumberType | SnippetInputDropdownType | SnippetInputYesNoType);
778
- interface SnippetValidateRegex {
779
- token: string;
780
- regex: string;
781
- match?: SnippetParameters;
782
- noMatch?: SnippetParameters;
783
- }
784
- interface SnippetValidate {
785
- regex?: SnippetValidateRegex;
786
- }
787
- interface SnippetQuestions {
764
+ });
765
+ export interface SnippetQuestions {
788
766
  title: string;
789
767
  output?: string;
790
768
  outputConditionalOnAnswer?: string;
@@ -793,7 +771,7 @@ interface SnippetQuestions {
793
771
  inputs: SnippetQuestionInput[];
794
772
  hint?: string;
795
773
  }
796
- interface TutorialOptions {
774
+ export interface TutorialOptions {
797
775
  tutorial?: string;
798
776
  tutorialName?: string;
799
777
  tutorialReportId?: string;
@@ -820,7 +798,7 @@ interface TutorialOptions {
820
798
  globalValidationConfig?: CodeValidationConfig;
821
799
  simTheme?: Partial<PackageConfig>;
822
800
  }
823
- interface TutorialStepInfo {
801
+ export interface TutorialStepInfo {
824
802
  showHint?: boolean;
825
803
  showDialog?: boolean;
826
804
  resetDiff?: boolean;
@@ -833,19 +811,14 @@ interface TutorialStepInfo {
833
811
  localBlockConfig?: TutorialBlockConfig;
834
812
  localValidationConfig?: CodeValidationConfig;
835
813
  }
836
- interface TutorialCompletionInfo {
837
- id: string;
838
- steps: number;
839
- }
840
- interface TutorialBlockConfigEntry {
841
- blockId?: string;
842
- xml?: string;
843
- }
844
- interface TutorialBlockConfig {
814
+ export interface TutorialBlockConfig {
845
815
  md?: string;
846
- blocks?: TutorialBlockConfigEntry[];
816
+ blocks?: {
817
+ blockId?: string;
818
+ xml?: string;
819
+ }[];
847
820
  }
848
- interface TutorialMetadata {
821
+ export interface TutorialMetadata {
849
822
  activities?: boolean;
850
823
  explicitHints?: boolean;
851
824
  flyoutOnly?: boolean;
@@ -857,19 +830,16 @@ interface TutorialMetadata {
857
830
  autoexpandOff?: boolean;
858
831
  preferredEditor?: string;
859
832
  }
860
- interface TutorialActivityInfo {
833
+ export interface TutorialActivityInfo {
861
834
  name: string;
862
835
  step: number;
863
836
  }
864
- interface CodeValidatorBaseProperties {
865
- enabled?: string;
866
- markers?: string;
867
- }
868
- interface CodeValidatorMetadata {
869
- validatorType: string;
870
- properties: CodeValidatorBaseProperties;
871
- }
872
- interface CodeValidationConfig {
873
- validatorsMetadata: CodeValidatorMetadata[];
837
+ export interface CodeValidationConfig {
838
+ validatorsMetadata: {
839
+ validatorType: string;
840
+ properties: {
841
+ enabled?: string;
842
+ markers?: string;
843
+ };
844
+ }[];
874
845
  }
875
- export {};
@@ -1 +1 @@
1
- {"version":3,"file":"pxt.js","sourceRoot":"","sources":["../../src/vanilla/pxt.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AA2mBH,MAAM,CAAN,IAAY,WAIX;AAJD,WAAY,WAAW;IACrB,iDAAU,CAAA;IACV,mDAAW,CAAA;IACX,qDAAY,CAAA;AACd,CAAC,EAJW,WAAW,KAAX,WAAW,QAItB;AAED,MAAM,CAAN,IAAY,WAMX;AAND,WAAY,WAAW;IACrB,6CAAQ,CAAA;IACR,+CAAS,CAAA;IACT,qBAAqB;IACrB,+CAAS,CAAA;IACT,6CAAQ,CAAA;AACV,CAAC,EANW,WAAW,KAAX,WAAW,QAMtB"}
1
+ {"version":3,"file":"pxt.js","sourceRoot":"","sources":["../../src/vanilla/pxt.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AA6mBH,MAAM,CAAN,IAAY,WAIX;AAJD,WAAY,WAAW;IACrB,iDAAU,CAAA;IACV,mDAAW,CAAA;IACX,qDAAY,CAAA;AACd,CAAC,EAJW,WAAW,KAAX,WAAW,QAItB;AAED,MAAM,CAAN,IAAY,WAMX;AAND,WAAY,WAAW;IACrB,6CAAQ,CAAA;IACR,+CAAS,CAAA;IACT,qBAAqB;IACrB,+CAAS,CAAA;IACT,6CAAQ,CAAA;AACV,CAAC,EANW,WAAW,KAAX,WAAW,QAMtB"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@microbit/makecode-embed",
3
- "version": "0.0.0-alpha.7",
3
+ "version": "0.1.0",
4
4
  "description": "",
5
5
  "keywords": [],
6
6
  "type": "module",
@@ -31,7 +31,8 @@
31
31
  "lint": "eslint . --ext ts,tsx --report-unused-disable-directives --max-warnings 0",
32
32
  "ci": "npm run lint && npm run build && npm run build:storybook",
33
33
  "storybook": "storybook dev -p 6006",
34
- "build:storybook": "storybook build"
34
+ "build:storybook": "storybook build",
35
+ "docs": "typedoc"
35
36
  },
36
37
  "peerDependencies": {
37
38
  "react": ">=18.0.0",
@@ -60,6 +61,7 @@
60
61
  "prettier": "^3.2.5",
61
62
  "storybook": "^8.2.9",
62
63
  "tslib": "^2.6.2",
64
+ "typedoc": "^0.27.6",
63
65
  "typescript": "^5.2.2"
64
66
  }
65
67
  }
package/typedoc.json ADDED
@@ -0,0 +1,14 @@
1
+ {
2
+ "name": "MakeCode Embed",
3
+ "navigationLinks": {
4
+ "micro:bit tech site": "https://tech.microbit.org",
5
+ "GitHub": "https://github.com/microbit-foundation/makecode-embed"
6
+ },
7
+ "projectDocuments": ["docs/react.md", "docs/vanilla.md"],
8
+ "entryPoints": ["./src/react/index.ts", "./src/vanilla/index.ts"],
9
+ "out": "./docs/build",
10
+ "readme": "./README.md",
11
+ "headings": { "readme": false },
12
+ "customCss": "./docs/custom.css",
13
+ "excludeExternals": true
14
+ }