mirror of
https://github.com/NativeScript/NativeScript.git
synced 2025-11-05 13:26:48 +08:00
chore: cleanup
This commit is contained in:
@@ -3,45 +3,47 @@ g.initGlobal();
|
||||
|
||||
// Register "dynamically" loaded module that need to be resolved by the
|
||||
// XML/component builders.
|
||||
import * as coreUIModules from './ui/index';
|
||||
global.registerModule('@nativescript/core/ui', () => coreUIModules);
|
||||
|
||||
global.registerModule('text/formatted-string', () => require('./text/formatted-string'));
|
||||
global.registerModule('text/span', () => require('./text/span'));
|
||||
global.registerModule('ui/text-base/formatted-string', () => require('./ui/text-base/formatted-string'));
|
||||
global.registerModule('ui/text-base/span', () => require('./ui/text-base/span'));
|
||||
global.registerModule('ui/action-bar', () => require('./ui/action-bar'));
|
||||
global.registerModule('ui/activity-indicator', () => require('./ui/activity-indicator'));
|
||||
global.registerModule('ui/bottom-navigation', () => require('./ui/bottom-navigation'));
|
||||
global.registerModule('ui/button', () => require('./ui/button'));
|
||||
global.registerModule('ui/content-view', () => require('./ui/content-view'));
|
||||
global.registerModule('ui/date-picker', () => require('./ui/date-picker'));
|
||||
global.registerModule('ui/frame', () => require('./ui/frame'));
|
||||
global.registerModule('ui/html-view', () => require('./ui/html-view'));
|
||||
global.registerModule('ui/image', () => require('./ui/image'));
|
||||
global.registerModule('ui/label', () => require('./ui/label'));
|
||||
global.registerModule('ui/layouts/absolute-layout', () => require('./ui/layouts/absolute-layout'));
|
||||
global.registerModule('ui/layouts/dock-layout', () => require('./ui/layouts/dock-layout'));
|
||||
global.registerModule('ui/layouts/grid-layout', () => require('./ui/layouts/grid-layout'));
|
||||
global.registerModule('ui/layouts/stack-layout', () => require('./ui/layouts/stack-layout'));
|
||||
global.registerModule('ui/layouts/flexbox-layout', () => require('./ui/layouts/flexbox-layout'));
|
||||
global.registerModule('ui/layouts/wrap-layout', () => require('./ui/layouts/wrap-layout'));
|
||||
global.registerModule('ui/list-picker', () => require('./ui/list-picker'));
|
||||
global.registerModule('ui/page', () => require('./ui/page'));
|
||||
global.registerModule('ui/placeholder', () => require('./ui/placeholder'));
|
||||
global.registerModule('ui/progress', () => require('./ui/progress'));
|
||||
global.registerModule('ui/proxy-view-container', () => require('./ui/proxy-view-container'));
|
||||
global.registerModule('ui/repeater', () => require('./ui/repeater'));
|
||||
global.registerModule('ui/scroll-view', () => require('./ui/scroll-view'));
|
||||
global.registerModule('ui/search-bar', () => require('./ui/search-bar'));
|
||||
global.registerModule('ui/segmented-bar', () => require('./ui/segmented-bar'));
|
||||
global.registerModule('ui/slider', () => require('./ui/slider'));
|
||||
global.registerModule('ui/switch', () => require('./ui/switch'));
|
||||
global.registerModule('ui/tab-view', () => require('./ui/tab-view'));
|
||||
global.registerModule('ui/tab-navigation-base/tab-strip', () => require('./ui/tab-navigation-base/tab-strip'));
|
||||
global.registerModule('ui/tab-navigation-base/tab-strip-item', () => require('./ui/tab-navigation-base/tab-strip-item'));
|
||||
global.registerModule('ui/tab-navigation-base/tab-content-item', () => require('./ui/tab-navigation-base/tab-content-item'));
|
||||
global.registerModule('ui/tabs', () => require('./ui/tabs'));
|
||||
global.registerModule('ui/web-view', () => require('./ui/web-view'));
|
||||
global.registerModule('ui/text-field', () => require('./ui/text-field'));
|
||||
global.registerModule('ui/text-view', () => require('./ui/text-view'));
|
||||
global.registerModule('ui/time-picker', () => require('./ui/time-picker'));
|
||||
global.registerModule('ui/list-view', () => require('./ui/list-view'));
|
||||
// global.registerModule('text/formatted-string', () => require('./text/formatted-string'));
|
||||
// global.registerModule('text/span', () => require('./text/span'));
|
||||
// global.registerModule('ui/text-base/formatted-string', () => require('./ui/text-base/formatted-string'));
|
||||
// global.registerModule('ui/text-base/span', () => require('./ui/text-base/span'));
|
||||
// global.registerModule('ui/action-bar', () => require('./ui/action-bar'));
|
||||
// global.registerModule('ui/activity-indicator', () => require('./ui/activity-indicator'));
|
||||
// global.registerModule('ui/bottom-navigation', () => require('./ui/bottom-navigation'));
|
||||
// global.registerModule('ui/button', () => require('./ui/button'));
|
||||
// global.registerModule('ui/content-view', () => require('./ui/content-view'));
|
||||
// global.registerModule('ui/date-picker', () => require('./ui/date-picker'));
|
||||
// global.registerModule('ui/frame', () => require('./ui/frame'));
|
||||
// global.registerModule('ui/html-view', () => require('./ui/html-view'));
|
||||
// global.registerModule('ui/image', () => require('./ui/image'));
|
||||
// global.registerModule('ui/label', () => require('./ui/label'));
|
||||
// global.registerModule('ui/layouts/absolute-layout', () => require('./ui/layouts/absolute-layout'));
|
||||
// global.registerModule('ui/layouts/dock-layout', () => require('./ui/layouts/dock-layout'));
|
||||
// global.registerModule('ui/layouts/grid-layout', () => require('./ui/layouts/grid-layout'));
|
||||
// global.registerModule('ui/layouts/stack-layout', () => require('./ui/layouts/stack-layout'));
|
||||
// global.registerModule('ui/layouts/flexbox-layout', () => require('./ui/layouts/flexbox-layout'));
|
||||
// global.registerModule('ui/layouts/wrap-layout', () => require('./ui/layouts/wrap-layout'));
|
||||
// global.registerModule('ui/list-picker', () => require('./ui/list-picker'));
|
||||
// global.registerModule('ui/page', () => require('./ui/page'));
|
||||
// global.registerModule('ui/placeholder', () => require('./ui/placeholder'));
|
||||
// global.registerModule('ui/progress', () => require('./ui/progress'));
|
||||
// global.registerModule('ui/proxy-view-container', () => require('./ui/proxy-view-container'));
|
||||
// global.registerModule('ui/repeater', () => require('./ui/repeater'));
|
||||
// global.registerModule('ui/scroll-view', () => require('./ui/scroll-view'));
|
||||
// global.registerModule('ui/search-bar', () => require('./ui/search-bar'));
|
||||
// global.registerModule('ui/segmented-bar', () => require('./ui/segmented-bar'));
|
||||
// global.registerModule('ui/slider', () => require('./ui/slider'));
|
||||
// global.registerModule('ui/switch', () => require('./ui/switch'));
|
||||
// global.registerModule('ui/tab-view', () => require('./ui/tab-view'));
|
||||
// global.registerModule('ui/tab-navigation-base/tab-strip', () => require('./ui/tab-navigation-base/tab-strip'));
|
||||
// global.registerModule('ui/tab-navigation-base/tab-strip-item', () => require('./ui/tab-navigation-base/tab-strip-item'));
|
||||
// global.registerModule('ui/tab-navigation-base/tab-content-item', () => require('./ui/tab-navigation-base/tab-content-item'));
|
||||
// global.registerModule('ui/tabs', () => require('./ui/tabs'));
|
||||
// global.registerModule('ui/web-view', () => require('./ui/web-view'));
|
||||
// global.registerModule('ui/text-field', () => require('./ui/text-field'));
|
||||
// global.registerModule('ui/text-view', () => require('./ui/text-view'));
|
||||
// global.registerModule('ui/time-picker', () => require('./ui/time-picker'));
|
||||
// global.registerModule('ui/list-view', () => require('./ui/list-view'));
|
||||
|
||||
@@ -22,6 +22,7 @@ const maxTabsCount = 5;
|
||||
const majorVersion = iOSNativeHelper.MajorVersion;
|
||||
const isPhone = Device.deviceType === 'Phone';
|
||||
|
||||
@NativeClass
|
||||
class UITabBarControllerImpl extends UITabBarController {
|
||||
private _owner: WeakRef<BottomNavigation>;
|
||||
|
||||
|
||||
@@ -27,7 +27,50 @@ const MODULES = {
|
||||
NavigationButton: 'ui/action-bar',
|
||||
SegmentedBarItem: 'ui/segmented-bar',
|
||||
};
|
||||
|
||||
const legacyShortBarrels = [
|
||||
'text/formatted-string',
|
||||
'text/span',
|
||||
'ui/text-base/formatted-string',
|
||||
'ui/text-base/span',
|
||||
'ui/action-bar',
|
||||
'ui/activity-indicator',
|
||||
'ui/bottom-navigation',
|
||||
'ui/button',
|
||||
'ui/content-view',
|
||||
'ui/date-picker',
|
||||
'ui/frame',
|
||||
'ui/html-view',
|
||||
'ui/image',
|
||||
'ui/label',
|
||||
'ui/layouts/absolute-layout',
|
||||
'ui/layouts/dock-layout',
|
||||
'ui/layouts/grid-layout',
|
||||
'ui/layouts/stack-layout',
|
||||
'ui/layouts/flexbox-layout',
|
||||
'ui/layouts/wrap-layout',
|
||||
'ui/list-picker',
|
||||
'ui/page',
|
||||
'ui/placeholder',
|
||||
'ui/progress',
|
||||
'ui/proxy-view-container',
|
||||
'ui/repeater',
|
||||
'ui/scroll-view',
|
||||
'ui/search-bar',
|
||||
'ui/segmented-bar',
|
||||
'ui/slider',
|
||||
'ui/switch',
|
||||
'ui/tab-view',
|
||||
'ui/tab-navigation-base/tab-strip',
|
||||
'ui/tab-navigation-base/tab-strip-item',
|
||||
'ui/tab-navigation-base/tab-content-item',
|
||||
'ui/tabs',
|
||||
'ui/web-view',
|
||||
'ui/text-field',
|
||||
'ui/text-view',
|
||||
'ui/time-picker',
|
||||
'ui/list-view',
|
||||
];
|
||||
const CORE_UI_BARREL = '@nativescript/core/ui';
|
||||
const CODE_FILE = 'codeFile';
|
||||
const CSS_FILE = 'cssFile';
|
||||
const IMPORT = 'import';
|
||||
@@ -39,21 +82,28 @@ const createComponentInstance = profile('createComponentInstance', (elementName:
|
||||
let resolvedModuleName;
|
||||
try {
|
||||
if (typeof namespace === 'string') {
|
||||
resolvedModuleName = resolveModuleName(namespace, '');
|
||||
if (legacyShortBarrels.includes(namespace)) {
|
||||
// console.log('CORE_UI_BARREL namespace:', namespace)
|
||||
resolvedModuleName = CORE_UI_BARREL;
|
||||
} else {
|
||||
// console.log('CUSTOM namespace:', namespace)
|
||||
resolvedModuleName = resolveModuleName(namespace, '');
|
||||
}
|
||||
instanceModule = global.loadModule(resolvedModuleName, true);
|
||||
} else {
|
||||
// load module from @nativescript/core/ui or mapped paths
|
||||
resolvedModuleName =
|
||||
MODULES[elementName] ||
|
||||
UI_PATH +
|
||||
(elementName.toLowerCase().indexOf('layout') !== -1 ? 'layouts/' : '') +
|
||||
elementName
|
||||
.split(/(?=[A-Z])/)
|
||||
.join('-')
|
||||
.toLowerCase();
|
||||
// resolvedModuleName =
|
||||
// MODULES[elementName] ||
|
||||
// UI_PATH +
|
||||
// (elementName.toLowerCase().indexOf('layout') !== -1 ? 'layouts/' : '') +
|
||||
// elementName
|
||||
// .split(/(?=[A-Z])/)
|
||||
// .join('-')
|
||||
// .toLowerCase();
|
||||
|
||||
instanceModule = global.loadModule(CORE_UI_BARREL, false);
|
||||
// don't register core modules for HMR self-accept
|
||||
instanceModule = global.loadModule(resolvedModuleName, false);
|
||||
// instanceModule = global.loadModule(resolvedModuleName, false);
|
||||
}
|
||||
|
||||
// Get the component type from module.
|
||||
|
||||
@@ -463,6 +463,7 @@ function _getLongPressData(args: GestureEventData): GestureEventDataWithState {
|
||||
};
|
||||
}
|
||||
|
||||
@NativeClass
|
||||
class TouchGestureRecognizer extends UIGestureRecognizer {
|
||||
public observer: GesturesObserver;
|
||||
private _eventData: TouchGestureEventData;
|
||||
|
||||
@@ -25,6 +25,7 @@ interface ViewItemIndex {
|
||||
|
||||
type ItemView = View & ViewItemIndex;
|
||||
|
||||
@NativeClass
|
||||
class ListViewCell extends UITableViewCell {
|
||||
public static initWithEmptyBackground(): ListViewCell {
|
||||
const cell = <ListViewCell>ListViewCell.new();
|
||||
|
||||
@@ -57,6 +57,7 @@ class UISearchBarDelegateImpl extends NSObject implements UISearchBarDelegate {
|
||||
}
|
||||
}
|
||||
|
||||
@NativeClass
|
||||
class UISearchBarImpl extends UISearchBar {
|
||||
sizeThatFits(size: CGSize): CGSize {
|
||||
// iOS11 SDK does not support passing sizeThatFits(...) non-finite width value;
|
||||
|
||||
@@ -18,6 +18,7 @@ export * from './tab-view-common';
|
||||
const majorVersion = iOSNativeHelper.MajorVersion;
|
||||
const isPhone = Device.deviceType === 'Phone';
|
||||
|
||||
@NativeClass
|
||||
class UITabBarControllerImpl extends UITabBarController {
|
||||
private _owner: WeakRef<TabView>;
|
||||
|
||||
|
||||
@@ -92,6 +92,7 @@ class BackgroundIndicatorTemplate extends NSObject implements MDCTabBarIndicator
|
||||
}
|
||||
}
|
||||
|
||||
@NativeClass
|
||||
class UIPageViewControllerImpl extends UIPageViewController {
|
||||
tabBar: MDCTabBar;
|
||||
scrollView: UIScrollView;
|
||||
|
||||
@@ -79,6 +79,7 @@ class UITextFieldDelegateImpl extends NSObject implements UITextFieldDelegate {
|
||||
}
|
||||
}
|
||||
|
||||
@NativeClass
|
||||
class UITextFieldImpl extends UITextField {
|
||||
private _owner: WeakRef<TextField>;
|
||||
|
||||
|
||||
@@ -71,6 +71,7 @@ class UITextViewDelegateImpl extends NSObject implements UITextViewDelegate {
|
||||
}
|
||||
}
|
||||
|
||||
@NativeClass
|
||||
class NoScrollAnimationUITextView extends UITextView {
|
||||
// see https://github.com/NativeScript/NativeScript/issues/6863
|
||||
// UITextView internally scrolls the text you are currently typing to visible when newline character
|
||||
|
||||
Reference in New Issue
Block a user