@enhances/bigscreen-fit
Version:
Vue2 大屏适配方案、scale、可不压缩、不黑边、适配浏览器缩放、不同分辨率、提供全屏、退出全屏、判断全屏、提供缩放不同状态的classname
269 lines (268 loc) • 9.48 kB
TypeScript
declare module '@enhances/bigscreen-fit/boostrap' {
export {};
}
declare module '@enhances/bigscreen-fit' {
import { VueConstructor } from 'vue-demi';
import { components, share, directive } from '@enhances/bigscreen-fit/packages';
import { ScaleFitOptions } from '@enhances/bigscreen-fit/packages/directive/options';
export { components, share, directive, };
const _default: {
install(Vue: VueConstructor, options?: ScaleFitOptions): void;
};
export default _default;
}
declare module '@enhances/bigscreen-fit/main' {
}
declare module '@enhances/bigscreen-fit/packages' {
export * as components from '@enhances/bigscreen-fit/packages/components';
export * as share from '@enhances/bigscreen-fit/packages/share';
export * as directive from '@enhances/bigscreen-fit/packages/directive';
}
declare module '@enhances/bigscreen-fit/packages/components' {
export { default as BsConfigProvider } from '@enhances/bigscreen-fit/packages/components/bs-config-provider';
export { default as BigScreenFit } from '@enhances/bigscreen-fit/packages/components/bigscreen-fit';
}
declare module '@enhances/bigscreen-fit/packages/directive' {
import { VueConstructor } from 'vue-demi';
import ScaleFit from '@enhances/bigscreen-fit/packages/directive/scale-fit';
import { ScaleFitOptions } from '@enhances/bigscreen-fit/packages/directive/options';
export { ScaleFit, };
const _default: {
install(_Vue: VueConstructor, options?: ScaleFitOptions): void;
};
export default _default;
}
declare module '@enhances/bigscreen-fit/packages/share' {
export * from '@enhances/bigscreen-fit/packages/share/webapi';
}
declare module '@enhances/bigscreen-fit/packages/components/bigscreen-fit' {
import BigScreenFit, { PropsType } from '@enhances/bigscreen-fit/packages/components/bigscreen-fit/@enhances/bigscreen-fit/bigscreen-fit.vue';
export { type PropsType, };
export default BigScreenFit;
}
declare module '@enhances/bigscreen-fit/packages/components/bs-config-provider' {
import BsConfigProvider from '@enhances/bigscreen-fit/packages/components/bs-config-provider/@enhances/bigscreen-fit/bs-config-provider.vue';
export default BsConfigProvider;
}
declare module '@enhances/bigscreen-fit/packages/directive/scale-fit' {
import { VueConstructor } from 'vue-demi';
import { ScaleFitOptions } from '@enhances/bigscreen-fit/packages/directive/options';
const _default: {
install(_Vue: VueConstructor, options?: ScaleFitOptions): void;
};
export default _default;
}
declare module '@enhances/bigscreen-fit/packages/directive/scale-fit/scale-fit.v2' {
import { DirectiveOptions, VueConstructor } from 'vue-demi';
import { ScaleFitOptions } from '@enhances/bigscreen-fit/packages/directive/options';
export const directiveHooks: {
bind: string;
inserted: string;
update: string;
componentUpdated: string;
unbind: string;
};
export function useScaleFitV2(_Vue: VueConstructor, options?: ScaleFitOptions): DirectiveOptions;
}
declare module '@enhances/bigscreen-fit/packages/share/webapi' {
export function usResizeObjserver(el: Element, callback: (val: any) => void): void;
export function enterFullScreen(): void;
export function exitFullScreen(): void;
export function isFullScreen(): boolean;
export function onFullScreenChange(callback: (isFullScreen: boolean) => void): () => void;
}
declare module '@enhances/bigscreen-fit/packages/components/bigscreen-fit/@enhances/bigscreen-fit/bigscreen-fit' {
import { Ref } from "vue-demi";
import { PropsType } from '@enhances/bigscreen-fit/packages/components/bigscreen-fit/@enhances/bigscreen-fit/bigscreen-fit.vue';
import { BsConfigProviderInterface } from '@enhances/bigscreen-fit/packages/components/bs-config-provider/@enhances/bigscreen-fit/types';
export const defaultDesign: {
readonly width: 1920;
readonly height: 1080;
readonly zoom: 1;
readonly id: "bigscreen-config-provid";
readonly push: false;
readonly compress: "auto";
readonly origin: "left top";
readonly customScale: "auto";
readonly zIndex: 1;
readonly cssTranslate: "translate(-50%, -50%)";
};
/**
*
* @param {string|number} val
* @param unit
* @returns
*/
export function useDesignValue(val: string | number, unit?: string): string;
export function useBgsTransform<T extends PropsType>(props: T, bigscreenConfigProvid: Ref<BsConfigProviderInterface>): import("vue-demi").ComputedRef<{
fitTransform: string;
cssScale: string;
customClass: {
'bs-no-compress': boolean;
'bs-compress': boolean;
'bs-fullscreen': boolean;
'bs-no-fullscreen': boolean;
};
_isCompress: any;
fixRationWith: (width: number | string) => string | number;
}>;
}
declare module '@enhances/bigscreen-fit/packages/components/bs-config-provider/@enhances/bigscreen-fit/bs-config-provider' {
import { WinType } from '@enhances/bigscreen-fit/packages/components/bs-config-provider/@enhances/bigscreen-fit/types';
export function useScreenResize(callback?: (win: WinType) => void): {
win: import("vue-demi").Ref<WinType>;
updateWinOption: () => void;
};
}
declare module '@enhances/bigscreen-fit/packages/components/bs-config-provider/@enhances/bigscreen-fit/types' {
export interface BsConfigProviderInterface {
isFullScreen: boolean;
id?: string;
[x: string]: any;
win: WinType;
}
export interface WinType {
innerHeight: number;
innerWidth: number;
}
}
declare module '@enhances/bigscreen-fit/App' {
const _default: import("vue-demi").DefineComponent<{}, {}, {}, {}, {}, import("vue-demi").ComponentOptionsMixin, import("vue-demi").ComponentOptionsMixin, {}, string, Readonly<import("vue-demi").ExtractPropTypes<{}>>, {}>;
export default _default;
}
declare module '@enhances/bigscreen-fit/packages/components/bigscreen-fit/@enhances/bigscreen-fit/bigscreen-fit' {
export interface PropsType {
designWidth: number;
designHeight: number;
zoom?: number | ((isFullScreen: boolean) => number);
id: string;
push?: boolean;
compress?: boolean | 'auto';
origin?: string;
customScale?: string | 'auto';
zIndex: number;
cssTranslate?: string;
}
import { PropType } from 'vue-demi';
const _default: import("vue-demi").DefineComponent<{
designWidth: {
type: PropType<number>;
default: 1920;
};
designHeight: {
type: PropType<number>;
default: 1080;
};
zoom: {
type: PropType<number | ((isFullScreen: boolean) => number)>;
default: 1;
};
id: {
type: PropType<string>;
default: "bigscreen-config-provid";
};
push: {
type: PropType<boolean>;
default: false;
};
origin: {
type: PropType<string>;
default: "left top";
};
customScale: {
type: PropType<string>;
default: "auto";
};
zIndex: {
type: PropType<number>;
default: 1;
};
compress: {
type: PropType<boolean | "auto">;
default: "auto";
};
cssTranslate: {
type: PropType<string>;
default: "translate(-50%, -50%)";
};
}, {
bigscreenFitRef: import("vue-demi").ShallowRef<any>;
customProperty: any;
customClass: import("vue-demi").ComputedRef<{}>;
}, {}, {}, {}, import("vue-demi").ComponentOptionsMixin, import("vue-demi").ComponentOptionsMixin, {}, string, Readonly<import("vue-demi").ExtractPropTypes<{
designWidth: {
type: PropType<number>;
default: 1920;
};
designHeight: {
type: PropType<number>;
default: 1080;
};
zoom: {
type: PropType<number | ((isFullScreen: boolean) => number)>;
default: 1;
};
id: {
type: PropType<string>;
default: "bigscreen-config-provid";
};
push: {
type: PropType<boolean>;
default: false;
};
origin: {
type: PropType<string>;
default: "left top";
};
customScale: {
type: PropType<string>;
default: "auto";
};
zIndex: {
type: PropType<number>;
default: 1;
};
compress: {
type: PropType<boolean | "auto">;
default: "auto";
};
cssTranslate: {
type: PropType<string>;
default: "translate(-50%, -50%)";
};
}>>, {
push: boolean;
zIndex: number;
customScale: string;
designWidth: number;
designHeight: number;
zoom: number | ((isFullScreen: boolean) => number);
id: string;
origin: string;
compress: boolean | "auto";
cssTranslate: string;
}>;
export default _default;
}
declare module '@enhances/bigscreen-fit/packages/components/bs-config-provider/@enhances/bigscreen-fit/bs-config-provider' {
import { PropType } from 'vue-demi';
export interface PropsType {
id: string;
}
const _default: import("vue-demi").DefineComponent<{
id: {
type: PropType<string>;
default: string;
};
}, {
updateWinOption: () => void;
}, {}, {}, {}, import("vue-demi").ComponentOptionsMixin, import("vue-demi").ComponentOptionsMixin, {}, string, Readonly<import("vue-demi").ExtractPropTypes<{
id: {
type: PropType<string>;
default: string;
};
}>>, {
id: string;
}>;
export default _default;
}