mirror of
https://github.com/NativeScript/NativeScript.git
synced 2025-11-05 13:26:48 +08:00
refactor: rename HmrContext to ModuleContext (#6843)
* refactor: rename HmrContext to ModuleContext * refactor(ModuleContext): rename module to path
This commit is contained in:
@@ -31,40 +31,40 @@ const pageTemplate = `
|
|||||||
</StackLayout>
|
</StackLayout>
|
||||||
</Page>`;
|
</Page>`;
|
||||||
|
|
||||||
export function test_onLiveSync_HmrContext_AppStyle_AppNewCss() {
|
export function test_onLiveSync_ModuleContext_AppStyle_AppNewCss() {
|
||||||
_test_onLiveSync_HmrContext_AppStyle(appNewCssFileName);
|
_test_onLiveSync_ModuleContext_AppStyle(appNewCssFileName);
|
||||||
}
|
}
|
||||||
|
|
||||||
export function test_onLiveSync_HmrContext_AppStyle_AppNewScss() {
|
export function test_onLiveSync_ModuleContext_AppStyle_AppNewScss() {
|
||||||
_test_onLiveSync_HmrContext_AppStyle(appNewScssFileName);
|
_test_onLiveSync_ModuleContext_AppStyle(appNewScssFileName);
|
||||||
}
|
}
|
||||||
|
|
||||||
export function test_onLiveSync_HmrContext_ContextUndefined() {
|
export function test_onLiveSync_ModuleContext_ContextUndefined() {
|
||||||
_test_onLiveSync_HmrContext({ type: undefined, module: undefined });
|
_test_onLiveSync_ModuleContext({ type: undefined, path: undefined });
|
||||||
}
|
}
|
||||||
|
|
||||||
export function test_onLiveSync_HmrContext_ModuleUndefined() {
|
export function test_onLiveSync_ModuleContext_ModuleUndefined() {
|
||||||
_test_onLiveSync_HmrContext({ type: "script", module: undefined });
|
_test_onLiveSync_ModuleContext({ type: "script", path: undefined });
|
||||||
}
|
}
|
||||||
|
|
||||||
export function test_onLiveSync_HmrContext_Script_AppJs() {
|
export function test_onLiveSync_ModuleContext_Script_AppJs() {
|
||||||
_test_onLiveSync_HmrContext({ type: "script", module: appJsFileName });
|
_test_onLiveSync_ModuleContext({ type: "script", path: appJsFileName });
|
||||||
}
|
}
|
||||||
|
|
||||||
export function test_onLiveSync_HmrContext_Script_AppTs() {
|
export function test_onLiveSync_ModuleContext_Script_AppTs() {
|
||||||
_test_onLiveSync_HmrContext({ type: "script", module: appTsFileName });
|
_test_onLiveSync_ModuleContext({ type: "script", path: appTsFileName });
|
||||||
}
|
}
|
||||||
|
|
||||||
export function test_onLiveSync_HmrContext_Style_MainPageCss() {
|
export function test_onLiveSync_ModuleContext_Style_MainPageCss() {
|
||||||
_test_onLiveSync_HmrContext({ type: "style", module: mainPageCssFileName });
|
_test_onLiveSync_ModuleContext({ type: "style", path: mainPageCssFileName });
|
||||||
}
|
}
|
||||||
|
|
||||||
export function test_onLiveSync_HmrContext_Markup_MainPageHtml() {
|
export function test_onLiveSync_ModuleContext_Markup_MainPageHtml() {
|
||||||
_test_onLiveSync_HmrContext({ type: "markup", module: mainPageHtmlFileName });
|
_test_onLiveSync_ModuleContext({ type: "markup", path: mainPageHtmlFileName });
|
||||||
}
|
}
|
||||||
|
|
||||||
export function test_onLiveSync_HmrContext_Markup_MainPageXml() {
|
export function test_onLiveSync_ModuleContext_Markup_MainPageXml() {
|
||||||
_test_onLiveSync_HmrContext({ type: "markup", module: mainPageXmlFileName });
|
_test_onLiveSync_ModuleContext({ type: "markup", path: mainPageXmlFileName });
|
||||||
}
|
}
|
||||||
|
|
||||||
export function setUpModule() {
|
export function setUpModule() {
|
||||||
@@ -76,7 +76,7 @@ export function tearDown() {
|
|||||||
app.setCssFileName(appCssFileName);
|
app.setCssFileName(appCssFileName);
|
||||||
}
|
}
|
||||||
|
|
||||||
function _test_onLiveSync_HmrContext_AppStyle(styleFileName: string) {
|
function _test_onLiveSync_ModuleContext_AppStyle(styleFileName: string) {
|
||||||
const pageBeforeNavigation = helper.getCurrentPage();
|
const pageBeforeNavigation = helper.getCurrentPage();
|
||||||
|
|
||||||
const page = <Page>parse(pageTemplate);
|
const page = <Page>parse(pageTemplate);
|
||||||
@@ -84,7 +84,7 @@ function _test_onLiveSync_HmrContext_AppStyle(styleFileName: string) {
|
|||||||
app.setCssFileName(styleFileName);
|
app.setCssFileName(styleFileName);
|
||||||
|
|
||||||
const pageBeforeLiveSync = helper.getCurrentPage();
|
const pageBeforeLiveSync = helper.getCurrentPage();
|
||||||
global.__onLiveSync({ type: "style", module: styleFileName });
|
global.__onLiveSync({ type: "style", path: styleFileName });
|
||||||
|
|
||||||
const pageAfterLiveSync = helper.getCurrentPage();
|
const pageAfterLiveSync = helper.getCurrentPage();
|
||||||
TKUnit.waitUntilReady(() => pageAfterLiveSync.getViewById("button").style.color.toString() === green.toString());
|
TKUnit.waitUntilReady(() => pageAfterLiveSync.getViewById("button").style.color.toString() === green.toString());
|
||||||
@@ -101,10 +101,10 @@ function _test_onLiveSync_HmrContext_AppStyle(styleFileName: string) {
|
|||||||
TKUnit.assertTrue(pageAfterNavigationBack._cssState.isSelectorsLatestVersionApplied(), "Latest selectors version is NOT applied!");
|
TKUnit.assertTrue(pageAfterNavigationBack._cssState.isSelectorsLatestVersionApplied(), "Latest selectors version is NOT applied!");
|
||||||
}
|
}
|
||||||
|
|
||||||
function _test_onLiveSync_HmrContext(context: { type, module }) {
|
function _test_onLiveSync_ModuleContext(context: { type, path }) {
|
||||||
const page = <Page>parse(pageTemplate);
|
const page = <Page>parse(pageTemplate);
|
||||||
helper.navigateWithHistory(() => page);
|
helper.navigateWithHistory(() => page);
|
||||||
global.__onLiveSync({ type: context.type, module: context.module });
|
global.__onLiveSync({ type: context.type, path: context.path });
|
||||||
|
|
||||||
TKUnit.waitUntilReady(() => !!frame.topmost());
|
TKUnit.waitUntilReady(() => !!frame.topmost());
|
||||||
const topmostFrame = frame.topmost();
|
const topmostFrame = frame.topmost();
|
||||||
|
|||||||
@@ -79,7 +79,7 @@ export function setApplication(instance: iOSApplication | AndroidApplication): v
|
|||||||
app = instance;
|
app = instance;
|
||||||
}
|
}
|
||||||
|
|
||||||
export function livesync(rootView: View, context?: HmrContext) {
|
export function livesync(rootView: View, context?: ModuleContext) {
|
||||||
events.notify(<EventData>{ eventName: "livesync", object: app });
|
events.notify(<EventData>{ eventName: "livesync", object: app });
|
||||||
const liveSyncCore = global.__onLiveSyncCore;
|
const liveSyncCore = global.__onLiveSyncCore;
|
||||||
let reapplyAppCss = false;
|
let reapplyAppCss = false;
|
||||||
@@ -88,7 +88,7 @@ export function livesync(rootView: View, context?: HmrContext) {
|
|||||||
const fullFileName = getCssFileName();
|
const fullFileName = getCssFileName();
|
||||||
const fileName = fullFileName.substring(0, fullFileName.lastIndexOf(".") + 1);
|
const fileName = fullFileName.substring(0, fullFileName.lastIndexOf(".") + 1);
|
||||||
const extensions = ["css", "scss"];
|
const extensions = ["css", "scss"];
|
||||||
reapplyAppCss = extensions.some(ext => context.module === fileName.concat(ext));
|
reapplyAppCss = extensions.some(ext => context.path === fileName.concat(ext));
|
||||||
}
|
}
|
||||||
|
|
||||||
if (reapplyAppCss && rootView) {
|
if (reapplyAppCss && rootView) {
|
||||||
|
|||||||
@@ -212,7 +212,7 @@ export function getNativeApplication(): android.app.Application {
|
|||||||
return nativeApp;
|
return nativeApp;
|
||||||
}
|
}
|
||||||
|
|
||||||
global.__onLiveSync = function __onLiveSync(context?: HmrContext) {
|
global.__onLiveSync = function __onLiveSync(context?: ModuleContext) {
|
||||||
if (androidApp && androidApp.paused) {
|
if (androidApp && androidApp.paused) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -373,7 +373,7 @@ function setViewControllerView(view: View): void {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
global.__onLiveSync = function __onLiveSync(context?: HmrContext) {
|
global.__onLiveSync = function __onLiveSync(context?: ModuleContext) {
|
||||||
if (!started) {
|
if (!started) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|||||||
16
tns-core-modules/module.d.ts
vendored
16
tns-core-modules/module.d.ts
vendored
@@ -51,7 +51,7 @@ declare namespace NodeJS {
|
|||||||
__native?: any;
|
__native?: any;
|
||||||
__inspector?: any;
|
__inspector?: any;
|
||||||
__extends: any;
|
__extends: any;
|
||||||
__onLiveSync: (context?: { type: string, module: string }) => void;
|
__onLiveSync: (context?: { type: string, path: string }) => void;
|
||||||
__onLiveSyncCore: () => void;
|
__onLiveSyncCore: () => void;
|
||||||
__onUncaughtError: (error: NativeScriptError) => void;
|
__onUncaughtError: (error: NativeScriptError) => void;
|
||||||
__onDiscardedError: (error: NativeScriptError) => void;
|
__onDiscardedError: (error: NativeScriptError) => void;
|
||||||
@@ -65,25 +65,25 @@ declare function clearTimeout(timeoutId: number): void;
|
|||||||
declare function setInterval(callback: (...args: any[]) => void, ms: number, ...args: any[]): number;
|
declare function setInterval(callback: (...args: any[]) => void, ms: number, ...args: any[]): number;
|
||||||
declare function clearInterval(intervalId: number): void;
|
declare function clearInterval(intervalId: number): void;
|
||||||
|
|
||||||
declare enum HmrType {
|
declare enum ModuleType {
|
||||||
markup = "markup",
|
markup = "markup",
|
||||||
script = "script",
|
script = "script",
|
||||||
style = "style"
|
style = "style"
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Define a context for Hot Module Replacement.
|
* Define a module context for Hot Module Replacement.
|
||||||
*/
|
*/
|
||||||
interface HmrContext {
|
interface ModuleContext {
|
||||||
/**
|
/**
|
||||||
* The type of module for replacement.
|
* The type of the module for replacement.
|
||||||
*/
|
*/
|
||||||
type: HmrType;
|
type: ModuleType;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* The module for replacement.
|
* The path of the module for replacement.
|
||||||
*/
|
*/
|
||||||
module: string;
|
path: string;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|||||||
Reference in New Issue
Block a user