mirror of
https://github.com/ionic-team/ionic-framework.git
synced 2025-08-16 10:01:59 +08:00
chore(): migrate vue to typescript (#15928)
This commit is contained in:

committed by
Mike Hartington

parent
d800c48734
commit
e251ca71b4
4
vue/types/api-utils.d.ts
vendored
Normal file
4
vue/types/api-utils.d.ts
vendored
Normal file
@ -0,0 +1,4 @@
|
||||
import { HTMLStencilElement } from './interfaces';
|
||||
export declare function proxyMethod(tag: string, method: string, ...opts: any[]): Promise<any>;
|
||||
export declare function initController(tag: string): Promise<HTMLStencilElement>;
|
||||
//# sourceMappingURL=api-utils.d.ts.map
|
18
vue/types/api.d.ts
vendored
Normal file
18
vue/types/api.d.ts
vendored
Normal file
@ -0,0 +1,18 @@
|
||||
import { PluginFunction } from 'vue';
|
||||
import { ApiCache } from './interfaces';
|
||||
import ProxyController from './proxy-controller';
|
||||
import ProxyMenuController from './proxy-menu-controller';
|
||||
import ProxyDelegateController from './proxy-delegate-controller';
|
||||
export default class Api {
|
||||
static cache: ApiCache;
|
||||
static installed: boolean;
|
||||
static install: PluginFunction<never>;
|
||||
readonly actionSheetController: ProxyController;
|
||||
readonly alertController: ProxyController;
|
||||
readonly loadingController: ProxyController;
|
||||
readonly menuController: ProxyMenuController;
|
||||
readonly modalController: ProxyDelegateController;
|
||||
readonly popoverController: ProxyDelegateController;
|
||||
readonly toastController: ProxyController;
|
||||
}
|
||||
//# sourceMappingURL=api.d.ts.map
|
7
vue/types/components/ion-vue-router-transitionless.vue.d.ts
vendored
Normal file
7
vue/types/components/ion-vue-router-transitionless.vue.d.ts
vendored
Normal file
@ -0,0 +1,7 @@
|
||||
import CatchIonicGoBack from '../mixins/catch-ionic-go-back';
|
||||
declare const IonVueRouter_base: import("vue-class-component/lib/declarations").VueClass<CatchIonicGoBack>;
|
||||
export default class IonVueRouter extends IonVueRouter_base {
|
||||
name: string;
|
||||
}
|
||||
export {};
|
||||
//# sourceMappingURL=ion-vue-router-transitionless.vue?rollup-plugin-vue=script.d.ts.map
|
25
vue/types/components/ion-vue-router.vue.d.ts
vendored
Normal file
25
vue/types/components/ion-vue-router.vue.d.ts
vendored
Normal file
@ -0,0 +1,25 @@
|
||||
import CatchIonicGoBack from '../mixins/catch-ionic-go-back';
|
||||
declare const IonVueRouter_base: import("vue-class-component/lib/declarations").VueClass<CatchIonicGoBack>;
|
||||
export default class IonVueRouter extends IonVueRouter_base {
|
||||
name: string;
|
||||
bindCSS: boolean;
|
||||
animated: boolean;
|
||||
leavingEl: HTMLElement;
|
||||
enteringEl: HTMLElement;
|
||||
inTransition: boolean;
|
||||
customTransition: boolean;
|
||||
created(): void;
|
||||
transition(enteringEl: HTMLElement, leavingEl: HTMLElement): Promise<boolean> | undefined;
|
||||
getDuration(): 0 | undefined;
|
||||
getDirection(): "forward" | "back";
|
||||
beforeEnter(el: HTMLElement): void;
|
||||
beforeLeave(el: HTMLElement): void;
|
||||
leave(el: HTMLElement, done: (opts?: boolean) => void): void;
|
||||
enter(_el: HTMLElement, done: () => void): void;
|
||||
afterEnter(): void;
|
||||
enterCancelled(): void;
|
||||
afterLeave(): void;
|
||||
leaveCancelled(): void;
|
||||
}
|
||||
export {};
|
||||
//# sourceMappingURL=ion-vue-router.vue?rollup-plugin-vue=script.d.ts.map
|
11
vue/types/framework-delegate.d.ts
vendored
Normal file
11
vue/types/framework-delegate.d.ts
vendored
Normal file
@ -0,0 +1,11 @@
|
||||
import { VueConstructor } from 'vue';
|
||||
import { FrameworkDelegate, HTMLVueElement, WebpackFunction } from './interfaces';
|
||||
export default class Delegate implements FrameworkDelegate {
|
||||
vue: VueConstructor;
|
||||
constructor(vue: VueConstructor);
|
||||
attachViewToDom(parentElement: HTMLElement, component: HTMLElement | WebpackFunction | object | VueConstructor, opts?: object, classes?: string[]): Promise<HTMLElement>;
|
||||
removeViewFromDom(_parentElement: HTMLElement, childElement: HTMLVueElement): Promise<void>;
|
||||
vueController(component: WebpackFunction | object | VueConstructor): Promise<VueConstructor>;
|
||||
vueComponent(controller: VueConstructor, opts?: object): import("vue/types/vue").CombinedVueInstance<import("vue/types/vue").Vue, object, object, object, Record<never, any>>;
|
||||
}
|
||||
//# sourceMappingURL=framework-delegate.d.ts.map
|
4
vue/types/index.d.ts
vendored
Normal file
4
vue/types/index.d.ts
vendored
Normal file
@ -0,0 +1,4 @@
|
||||
export { default as Ionic } from './ionic';
|
||||
export { default as IonicAPI } from './api';
|
||||
export { default as IonicVueRouter } from './router';
|
||||
//# sourceMappingURL=index.d.ts.map
|
75
vue/types/interfaces.d.ts
vendored
Normal file
75
vue/types/interfaces.d.ts
vendored
Normal file
@ -0,0 +1,75 @@
|
||||
import Vue from 'vue';
|
||||
import IonicApi from './api';
|
||||
import VueRouter from 'vue-router';
|
||||
import { RouterOptions } from 'vue-router/types/router';
|
||||
declare module 'vue/types/vue' {
|
||||
interface Vue {
|
||||
$ionic: IonicApi;
|
||||
}
|
||||
}
|
||||
declare module 'vue-router/types/router' {
|
||||
interface VueRouter {
|
||||
direction: number;
|
||||
directionOverride: number | null;
|
||||
canGoBack(): boolean;
|
||||
}
|
||||
}
|
||||
export interface HTMLVueElement extends HTMLElement {
|
||||
__vue__: Vue;
|
||||
}
|
||||
export interface VueWindow extends Window {
|
||||
Vue: typeof Vue;
|
||||
VueRouter: typeof VueRouter;
|
||||
disableIonicTransitions: boolean;
|
||||
}
|
||||
export interface WebpackFunction extends Function {
|
||||
cid: number;
|
||||
}
|
||||
export interface EsModule extends Object {
|
||||
__esModule?: boolean;
|
||||
[Symbol.toStringTag]: string;
|
||||
}
|
||||
export interface HTMLStencilElement extends HTMLElement {
|
||||
componentOnReady(): Promise<this>;
|
||||
componentOnReady(done: (el?: this) => void): void;
|
||||
forceUpdate(): void;
|
||||
}
|
||||
export interface FrameworkDelegate {
|
||||
attachViewToDom(parentElement: HTMLElement, component: HTMLElement | WebpackFunction | object | Vue, opts?: object, classes?: string[]): Promise<HTMLElement>;
|
||||
removeViewFromDom(parentElement: HTMLElement, childElement: HTMLVueElement): Promise<void>;
|
||||
}
|
||||
export interface IonBackButton extends HTMLStencilElement {
|
||||
defaultHref?: string;
|
||||
}
|
||||
export interface IonRouterOutlet extends HTMLStencilElement {
|
||||
commit(enterinEl: HTMLElement, leavingEl: HTMLElement | undefined, opts?: object | undefined): Promise<boolean>;
|
||||
}
|
||||
export interface ApiCache {
|
||||
[key: string]: any;
|
||||
}
|
||||
export interface RouterArgs extends RouterOptions {
|
||||
direction: number;
|
||||
viewCount: number;
|
||||
}
|
||||
export interface ProxyControllerInterface {
|
||||
create(opts: object): Promise<HTMLElement>;
|
||||
dismiss(): Promise<void>;
|
||||
getTop(): Promise<HTMLElement>;
|
||||
}
|
||||
export interface ProxyDelegateOptions extends Object {
|
||||
[key: string]: any;
|
||||
delegate?: FrameworkDelegate;
|
||||
}
|
||||
export interface ProxyMenuControllerInterface {
|
||||
open(menuId?: string): Promise<boolean>;
|
||||
close(menuId?: string): Promise<boolean>;
|
||||
toggle(menuId?: string): Promise<boolean>;
|
||||
enable(shouldEnable: boolean, menuId?: string): Promise<HTMLElement>;
|
||||
swipeEnable(shouldEnable: boolean, menuId?: string): Promise<HTMLElement>;
|
||||
isOpen(menuId?: string): Promise<boolean>;
|
||||
isEnabled(menuId?: string): Promise<boolean>;
|
||||
get(menuId?: string): Promise<HTMLElement>;
|
||||
getOpen(): Promise<HTMLElement>;
|
||||
getMenus(): Promise<HTMLElement>;
|
||||
}
|
||||
//# sourceMappingURL=interfaces.d.ts.map
|
8
vue/types/ionic.d.ts
vendored
Normal file
8
vue/types/ionic.d.ts
vendored
Normal file
@ -0,0 +1,8 @@
|
||||
import '@ionic/core/css/ionic.bundle.css';
|
||||
import 'ionicons/dist/collection/icon/icon.css';
|
||||
import '@ionic/core/dist/ionic/svg';
|
||||
declare const _default: {
|
||||
init(): void;
|
||||
};
|
||||
export default _default;
|
||||
//# sourceMappingURL=ionic.d.ts.map
|
5
vue/types/mixins/catch-ionic-go-back.d.ts
vendored
Normal file
5
vue/types/mixins/catch-ionic-go-back.d.ts
vendored
Normal file
@ -0,0 +1,5 @@
|
||||
import Vue from 'vue';
|
||||
export default class CatchIonicGoBack extends Vue {
|
||||
catchIonicGoBack(event: Event): void;
|
||||
}
|
||||
//# sourceMappingURL=catch-ionic-go-back.d.ts.map
|
9
vue/types/proxy-controller.d.ts
vendored
Normal file
9
vue/types/proxy-controller.d.ts
vendored
Normal file
@ -0,0 +1,9 @@
|
||||
import { ProxyControllerInterface } from './interfaces';
|
||||
export default class ProxyController implements ProxyControllerInterface {
|
||||
tag: string;
|
||||
constructor(tag: string);
|
||||
create(opts?: object): Promise<HTMLElement>;
|
||||
dismiss(): Promise<void>;
|
||||
getTop(): Promise<HTMLElement>;
|
||||
}
|
||||
//# sourceMappingURL=proxy-controller.d.ts.map
|
9
vue/types/proxy-delegate-controller.d.ts
vendored
Normal file
9
vue/types/proxy-delegate-controller.d.ts
vendored
Normal file
@ -0,0 +1,9 @@
|
||||
import ProxyController from './proxy-controller';
|
||||
import { FrameworkDelegate, ProxyDelegateOptions } from './interfaces';
|
||||
export default class ProxyDelegateController extends ProxyController {
|
||||
tag: string;
|
||||
static delegate: FrameworkDelegate;
|
||||
constructor(tag: string, delegate: FrameworkDelegate);
|
||||
create(opts?: ProxyDelegateOptions): Promise<HTMLElement>;
|
||||
}
|
||||
//# sourceMappingURL=proxy-delegate-controller.d.ts.map
|
16
vue/types/proxy-menu-controller.d.ts
vendored
Normal file
16
vue/types/proxy-menu-controller.d.ts
vendored
Normal file
@ -0,0 +1,16 @@
|
||||
import { ProxyMenuControllerInterface } from './interfaces';
|
||||
export default class ProxyMenuController implements ProxyMenuControllerInterface {
|
||||
tag: string;
|
||||
constructor(tag: string);
|
||||
open(menuId?: string): Promise<boolean>;
|
||||
close(menuId?: string): Promise<boolean>;
|
||||
toggle(menuId?: string): Promise<boolean>;
|
||||
enable(shouldEnable: boolean, menuId?: string): Promise<HTMLElement>;
|
||||
swipeEnable(shouldEnable: boolean, menuId?: string): Promise<HTMLElement>;
|
||||
isOpen(menuId?: string): Promise<boolean>;
|
||||
isEnabled(menuId?: string): Promise<boolean>;
|
||||
get(menuId?: string): Promise<HTMLElement>;
|
||||
getOpen(): Promise<HTMLElement>;
|
||||
getMenus(): Promise<HTMLElement>;
|
||||
}
|
||||
//# sourceMappingURL=proxy-menu-controller.d.ts.map
|
19
vue/types/router.d.ts
vendored
Normal file
19
vue/types/router.d.ts
vendored
Normal file
@ -0,0 +1,19 @@
|
||||
import VueRouter, { Route } from 'vue-router';
|
||||
import { PluginFunction } from 'vue';
|
||||
import { RouterArgs } from './interfaces';
|
||||
declare const _VueRouter: typeof VueRouter;
|
||||
export default class Router extends _VueRouter {
|
||||
direction: number;
|
||||
directionOverride: number | null;
|
||||
viewCount: number;
|
||||
prevRouteStack: Route[];
|
||||
history: any;
|
||||
static installed: boolean;
|
||||
static install: PluginFunction<never>;
|
||||
constructor(args?: RouterArgs);
|
||||
extendHistory(): void;
|
||||
canGoBack(): boolean;
|
||||
guessDirection(nextRoute: Route): number;
|
||||
}
|
||||
export {};
|
||||
//# sourceMappingURL=router.d.ts.map
|
75
vue/types/types/interfaces.d.ts
vendored
Normal file
75
vue/types/types/interfaces.d.ts
vendored
Normal file
@ -0,0 +1,75 @@
|
||||
import Vue from 'vue';
|
||||
import IonicApi from '../api';
|
||||
import VueRouter from 'vue-router';
|
||||
import { RouterOptions } from 'vue-router/types/router';
|
||||
declare module 'vue/types/vue' {
|
||||
interface Vue {
|
||||
$ionic: IonicApi;
|
||||
}
|
||||
}
|
||||
declare module 'vue-router/types/router' {
|
||||
interface VueRouter {
|
||||
direction: number;
|
||||
directionOverride: number | null;
|
||||
canGoBack(): boolean;
|
||||
}
|
||||
}
|
||||
export interface HTMLVueElement extends HTMLElement {
|
||||
__vue__: Vue;
|
||||
}
|
||||
export interface VueWindow extends Window {
|
||||
Vue: typeof Vue;
|
||||
VueRouter: typeof VueRouter;
|
||||
disableIonicTransitions: boolean;
|
||||
}
|
||||
export interface WebpackFunction extends Function {
|
||||
cid: number;
|
||||
}
|
||||
export interface EsModule extends Object {
|
||||
__esModule?: boolean;
|
||||
[Symbol.toStringTag]: string;
|
||||
}
|
||||
export interface HTMLStencilElement extends HTMLElement {
|
||||
componentOnReady(): Promise<this>;
|
||||
componentOnReady(done: (el?: this) => void): void;
|
||||
forceUpdate(): void;
|
||||
}
|
||||
export interface FrameworkDelegate {
|
||||
attachViewToDom(parentElement: HTMLElement, component: HTMLElement | WebpackFunction | object | Vue, opts?: object, classes?: string[]): Promise<HTMLElement>;
|
||||
removeViewFromDom(parentElement: HTMLElement, childElement: HTMLVueElement): Promise<void>;
|
||||
}
|
||||
export interface IonBackButton extends HTMLStencilElement {
|
||||
defaultHref?: string;
|
||||
}
|
||||
export interface IonRouterOutlet extends HTMLStencilElement {
|
||||
commit(enterinEl: HTMLElement, leavingEl: HTMLElement | undefined, opts?: object | undefined): Promise<boolean>;
|
||||
}
|
||||
export interface ApiCache {
|
||||
[key: string]: any;
|
||||
}
|
||||
export interface RouterArgs extends RouterOptions {
|
||||
direction: number;
|
||||
viewCount: number;
|
||||
}
|
||||
export interface ProxyControllerInterface {
|
||||
create(opts: object): Promise<HTMLElement>;
|
||||
dismiss(): Promise<void>;
|
||||
getTop(): Promise<HTMLElement>;
|
||||
}
|
||||
export interface ProxyDelegateOptions extends Object {
|
||||
[key: string]: any;
|
||||
delegate: FrameworkDelegate;
|
||||
}
|
||||
export interface ProxyMenuControllerInterface {
|
||||
open(menuId?: string): Promise<boolean>;
|
||||
close(menuId?: string): Promise<boolean>;
|
||||
toggle(menuId?: string): Promise<boolean>;
|
||||
enable(shouldEnable: boolean, menuId?: string): Promise<HTMLElement>;
|
||||
swipeEnable(shouldEnable: boolean, menuId?: string): Promise<HTMLElement>;
|
||||
isOpen(menuId?: string): Promise<boolean>;
|
||||
isEnabled(menuId?: string): Promise<boolean>;
|
||||
get(menuId?: string): Promise<HTMLElement>;
|
||||
getOpen(): Promise<HTMLElement>;
|
||||
getMenus(): Promise<HTMLElement>;
|
||||
}
|
||||
//# sourceMappingURL=interfaces.d.ts.map
|
Reference in New Issue
Block a user