8000 Add type annotations (#488) · highb/pyscript@6822105 · GitHub
[go: up one dir, main page]

Skip to content

Commit 6822105

Browse files
authored
Add type annotations (pyscript#488)
1 parent d5d855e commit 6822105

File tree

3 files changed

+12
-9
lines changed

3 files changed

+12
-9
lines changed

pyscriptjs/src/components/pyconfig.ts

Lines changed: 9 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@ import {
1212
Initializer,
1313
} from '../stores';
1414
import { loadInterpreter } from '../interpreter';
15+
import type { PyLoader } from './pyloader';
1516
import type { PyScript } from './pyscript';
1617

1718
const DEFAULT_RUNTIME = {
@@ -69,8 +70,8 @@ mode.subscribe((value: string) => {
6970
});
7071

7172
let pyodideReadyPromise;
72-
let loader;
7373

74+
let loader: PyLoader | undefined;
7475
globalLoader.subscribe(value => {
7576
loader = value;
7677
});
@@ -84,7 +85,7 @@ export class PyodideRuntime extends Object {
8485
}
8586

8687
async initialize() {
87-
loader.log('Loading runtime...');
88+
loader?.log('Loading runtime...');
8889
pyodideReadyPromise = loadInterpreter(this.src);
8990
const pyodide = await pyodideReadyPromise;
9091
const newEnv = {
@@ -96,21 +97,22 @@ export class PyodideRuntime extends Object {
9697
pyodideLoaded.set(pyodide);
9798

9899
// Inject the loader into the runtime namespace
100+
// eslint-disable-next-line
99101
pyodide.globals.set('pyscript_loader', loader);
100102

101-
loader.log('Runtime created...');
103+
loader?.log('Runtime created...');
102104
loadedEnvironments.update((value: any): any => {
103105
value[newEnv['id']] = newEnv;
104106
});
105107

106108
// now we call all initializers before we actually executed all page scripts
107-
loader.log('Initializing components...');
109+
loader?.log('Initializing components...');
108110
for (const initializer of initializers_) {
109111
await initializer();
110112
}
111113

112114
// now we can actually execute the page scripts if we are in play mode
113-
loader.log('Initializing scripts...');
115+
loader?.log('Initializing scripts...');
114116
if (mode_ == 'play') {
115117
for (const script of scriptsQueue_) {
116118
script.evaluate();
@@ -119,10 +121,10 @@ export class PyodideRuntime extends Object {
119121
}
120122

121123
// now we call all post initializers AFTER we actually executed all page scripts
122-
loader.log('Running post initializers...');
124+
loader?.log('Running post initializers...');
123125

124126
if (appConfig_ && appConfig_.autoclose_loader) {
125-
loader.close();
127+
loader?.close();
126128
console.log('------ loader closed ------');
127129
}
128130

pyscriptjs/src/main.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@ if (!config) {
3131
}
3232

3333
// add loader to the page body
34-
const loader = document.createElement('py-loader');
34+
const loader = <PyLoader>document.createElement('py-loader');
3535
document.body.append(loader);
3636
globalLoader.set(loader);
3737

pyscriptjs/src/stores.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
import { writable } from 'svelte/store';
2+
import type { PyLoader } from './components/pyloader';
23
import type { PyScript } from './components/pyscript';
34

45
export type Initializer = () => Promise<void>;
@@ -20,7 +21,7 @@ export const mode = writable(DEFAULT_MODE);
2021
export const scriptsQueue = writable<PyScript[]>([]);
2122
export const initializers = writable<Initializer[]>([]);
2223
export const postInitializers = writable<Initializer[]>([]);
23-
export const globalLoader = writable();
24+
export const globalLoader = writable<PyLoader | undefined>();
2425
export const appConfig = writable();
2526

2627
let scriptsQueue_: PyScript[] = [];

0 commit comments

Comments
 (0)
0