chore(vue): add eslint and prettier (#26635)

This commit is contained in:
Liam DeBeasi
2023-01-18 18:29:25 -05:00
committed by GitHub
parent 6d4c52aa5b
commit dc27736bd5
25 changed files with 5693 additions and 574 deletions

View File

@ -1,40 +1,48 @@
import { h, Teleport, VNode } from 'vue';
import type { FrameworkDelegate } from '@ionic/core/components';
import type { FrameworkDelegate } from "@ionic/core/components";
import type { VNode } from "vue";
import { h, Teleport } from "vue";
import { addTeleportedUserComponent, removeTeleportedUserComponent } from './components/IonApp';
import {
addTeleportedUserComponent,
removeTeleportedUserComponent,
} from "./components/IonApp";
export const VueDelegate = (addFn = addTeleportedUserComponent, removeFn = removeTeleportedUserComponent): FrameworkDelegate => {
export const VueDelegate = (
addFn = addTeleportedUserComponent,
removeFn = removeTeleportedUserComponent
): FrameworkDelegate => {
let Component: VNode | undefined;
// TODO(FW-2969): types
const attachViewToDom = (parentElement: HTMLElement, component: any, componentProps: any = {}, classes?: string[]) => {
const attachViewToDom = (
parentElement: HTMLElement,
component: any,
componentProps: any = {},
classes?: string[]
) => {
/**
* Ionic Framework passes in modal and popover element
* refs as props, but if these are not defined
* on the Vue component instance as props, Vue will
* warn the user.
*/
delete componentProps['modal'];
delete componentProps['popover'];
delete componentProps["modal"];
delete componentProps["popover"];
const div = document.createElement('div');
const div = document.createElement("div");
classes && div.classList.add(...classes);
parentElement.appendChild(div);
Component = h(
Teleport,
{ to: div },
h(component, { ...componentProps })
);
Component = h(Teleport, { to: div }, h(component, { ...componentProps }));
addFn(Component);
return Promise.resolve(div);
}
};
const removeViewFromDom = () => {
Component && removeFn(Component);
return Promise.resolve();
}
};
return { attachViewToDom, removeViewFromDom }
}
return { attachViewToDom, removeViewFromDom };
};