diff --git a/demo/static/src/ts/env.ts b/demo/static/src/ts/env.ts index b0ae3e5c..ab713365 100644 --- a/demo/static/src/ts/env.ts +++ b/demo/static/src/ts/env.ts @@ -1,4 +1,4 @@ -import { WEnv } from "../../../../src/component"; +import { Env as WEnv } from "../../../../src/component"; import { QWeb } from "../../../../src/qweb_vdom"; import { Registry } from "../../../../src/registry"; import { RPC as RPCService } from "./services/ajax"; diff --git a/demo/static/tests/helpers/test_env.ts b/demo/static/tests/helpers/test_env.ts index c2153c22..ebc7f5fc 100644 --- a/demo/static/tests/helpers/test_env.ts +++ b/demo/static/tests/helpers/test_env.ts @@ -1,5 +1,5 @@ import { readFileSync } from "fs"; -import { WEnv } from "../../../../src/component"; +import { Env as WEnv } from "../../../../src/component"; import { QWeb } from "../../../../src/qweb_vdom"; import { Registry } from "../../../../src/registry"; import { Env, InitData, linkStoreToEnv, makeEnv } from "../../src/ts/env"; diff --git a/package.json b/package.json index d739e40d..8913bf4d 100644 --- a/package.json +++ b/package.json @@ -2,21 +2,21 @@ "name": "web-core", "version": "0.1.1", "description": "Core Utils for Odoo Web Client", - "main": "index.js", + "main": "src/index.ts", "scripts": { + "prebuild": "tsc --allowjs --lib es2017,dom --target esnext --outDir dist/core src/*", + "build": "rollup -c", + "postbuild": "uglifyjs dist/core.js -o dist/core.min.js --compress --mangle", "test": "jest", "test:watch": "jest --watch", - "build": "cp -r demo/ dist/app && npm run build:js && npm run build:css && npm run build:xml", - "build:css": "sass demo/static/src/scss/app.scss dist/app/app.css", - "build:js": "tsc --allowjs -m amd --lib es2017,dom --target esnext --outfile dist/app/main.js demo/static/src/ts/main.ts", - "build:xml": "cpx demo/static/src/xml/templates.xml dist/app", - "minify": "uglifyjs dist/app/main.js -o dist/app/main.js --compress --mangle", - "serve": "live-server --entry-file=index.html dist/app/", - "predev": "npm run build", - "dev": "npm-run-all --parallel \"build:* -- --watch\" serve", - "prepackage:core": "tsc --allowjs --lib es2017,dom --target esnext --outDir dist/core src/*", - "package:core": "rollup -c", - "postpackage:core": "uglifyjs dist/core.js -o dist/core.min.js --compress --mangle" + "demo:build": "cpx \"demo/**/*.{html,js,css,ttf,woff,woff2}\" dist/app && npm-run-all --parallel demo:build:*", + "demo:build:css": "sass demo/static/src/scss/app.scss dist/app/app.css", + "demo:build:js": "tsc --allowjs -m amd --lib es2017,dom --target esnext --outfile dist/app/main.js demo/static/src/ts/main.ts", + "demo:build:xml": "cpx demo/static/src/xml/templates.xml dist/app", + "demo:minify": "uglifyjs dist/app/main.js -o dist/app/main.js --compress --mangle", + "demo:serve": "live-server --entry-file=index.html dist/app/", + "predemo:dev": "npm run demo:build", + "demo:dev": "npm-run-all --parallel \"demo:build:* -- --watch\" demo:serve" }, "repository": { "type": "git", diff --git a/src/component.ts b/src/component.ts index 0c088de5..680bc4bd 100644 --- a/src/component.ts +++ b/src/component.ts @@ -13,14 +13,14 @@ let getId = idGenerator(); // Types/helpers //------------------------------------------------------------------------------ -export interface WEnv { +export interface Env { qweb: QWeb; } let wl: any[] = []; (window).wl = wl; -export interface Meta { +export interface Meta { readonly id: number; vnode: VNode | null; isStarted: boolean; @@ -49,11 +49,11 @@ export interface Type extends Function { //------------------------------------------------------------------------------ export class Component< - T extends WEnv, + T extends Env, Props, State extends {} > extends EventBus { - readonly __widget__: Meta; + readonly __widget__: Meta; template: string = "default"; inlineTemplate: string | null = null; diff --git a/tests/helpers.ts b/tests/helpers.ts index 9d4c5188..9f5ba0a4 100644 --- a/tests/helpers.ts +++ b/tests/helpers.ts @@ -1,4 +1,4 @@ -import { WEnv } from "../src/component"; +import { Env } from "../src/component"; import { QWeb } from "../src/qweb_vdom"; export function nextMicroTick(): Promise { @@ -35,7 +35,7 @@ export function makeDeferred(): Deferred { return def; } -export function makeTestWEnv(): WEnv { +export function makeTestWEnv(): Env { return { qweb: new QWeb() };