Skip to content

Commit e8e2159

Browse files
committed
Merge remote-tracking branch 'origin/develop' into sfc-in-markup
2 parents ceb2868 + 8ad3dec commit e8e2159

File tree

2 files changed

+12
-16
lines changed

2 files changed

+12
-16
lines changed

src/livecodes/core.ts

Lines changed: 9 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -164,6 +164,7 @@ import { appLanguages } from './i18n/app-languages';
164164
import { themeColors } from './UI/theme-colors';
165165
import { getCommandMenuActions } from './UI/command-menu-actions';
166166
import { createLanguageMenus, createProcessorItem } from './UI/create-language-menus';
167+
import { hasJsx } from './editor/ts-compiler-options';
167168

168169
// declare global dependencies
169170
declare global {
@@ -370,8 +371,9 @@ const loadModuleTypes = async (
370371
...config.types,
371372
...config.customSettings.types,
372373
};
374+
const reactImport = hasJsx.includes(scriptLanguage) ? `import React from 'react';\n` : '';
373375
const libs = await typeLoader.load(
374-
getConfig().script.content + '\n' + getConfig().markup.content,
376+
reactImport + getConfig().script.content + '\n' + getConfig().markup.content,
375377
configTypes,
376378
loadAll,
377379
force,
@@ -649,6 +651,7 @@ const showMode = (mode?: Config['mode'], view?: Config['view']) => {
649651
document.body.classList.toggle('focus-mode', mode === 'focus');
650652
document.body.classList.toggle('lite-mode', mode === 'lite');
651653
document.body.classList.toggle('result', mode === 'result');
654+
document.body.classList.toggle('no-result', mode === 'editor' || mode === 'codeblock');
652655
if ((mode === 'full' || mode === 'simple') && !split) {
653656
split = createSplitPanes();
654657
}
@@ -4798,7 +4801,7 @@ const handleDropFiles = () => {
47984801
});
47994802
};
48004803

4801-
const handleResultMode = () => {
4804+
const handleResultModeDrawer = () => {
48024805
const drawer = UI.getResultModeDrawer();
48034806
const drawerLink = drawer.querySelector('a') as HTMLAnchorElement;
48044807
const closeBtn = drawer.querySelector('#drawer-close') as HTMLButtonElement;
@@ -5059,15 +5062,9 @@ const extraHandlers = async () => {
50595062
showConsoleMessage();
50605063
};
50615064

5062-
const configureEmbed = (config: Config, eventsManager: EventsManager) => {
5065+
const configureEmbed = (eventsManager: EventsManager) => {
50635066
document.body.classList.add('embed');
5064-
if (config.mode === 'result') {
5065-
document.body.classList.add('result');
5066-
handleResultMode();
5067-
}
5068-
if (config.mode === 'editor' || config.mode === 'codeblock') {
5069-
document.body.classList.add('no-result');
5070-
}
5067+
handleResultModeDrawer();
50715068

50725069
const logoLink = UI.getLogoLink();
50735070
logoLink.title = window.deps.translateString('generic.embed.logoHint', 'Edit on LiveCodes 🡕');
@@ -5122,7 +5119,7 @@ const configureModes = ({
51225119
configureLite();
51235120
}
51245121
if (isEmbed || config.mode === 'result') {
5125-
configureEmbed(config, eventsManager);
5122+
configureEmbed(eventsManager);
51265123
}
51275124
if (config.mode === 'simple') {
51285125
configureSimpleMode(config);
@@ -5661,6 +5658,7 @@ const initEmbed = async (config: Partial<Config>, baseUrl: string) => {
56615658
});
56625659
return createApi();
56635660
};
5661+
56645662
const initHeadless = async (config: Partial<Config>, baseUrl: string) => {
56655663
window.deps = {
56665664
showMode: () => undefined,

src/livecodes/styles/app.scss

Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1575,13 +1575,11 @@ a.editor-title {
15751575
.toolbar-app {
15761576
justify-content: flex-start;
15771577

1578-
#app-menu-button-project,
1579-
#app-menu-button-settings,
1580-
#app-menu-button-help,
1581-
#app-menu-button-i18n,
1578+
[id^='app-menu-container-'],
1579+
[id^='app-menu-button-'],
15821580
#light-theme-button,
15831581
#dark-theme-button {
1584-
display: none;
1582+
display: none !important;
15851583
}
15861584

15871585
.menu {

0 commit comments

Comments
 (0)