feat(react): add custom elements bundle (#23896)

This commit is contained in:
Liam DeBeasi
2021-09-13 14:53:28 -04:00
committed by GitHub
parent d1763fc8b5
commit c50d895370
57 changed files with 321 additions and 565 deletions

View File

@ -1,7 +1,7 @@
import { OverlayEventDetail } from '@ionic/core';
import { OverlayEventDetail } from '@ionic/core/components';
import React from 'react';
import { attachProps, setRef } from './react-component-lib/utils';
import { attachProps, dashToPascalCase, defineCustomElement, setRef } from './react-component-lib/utils';
interface OverlayBase extends HTMLElement {
present: () => Promise<void>;
@ -20,9 +20,13 @@ export const createControllerComponent = <
OptionsType extends object,
OverlayType extends OverlayBase
>(
displayName: string,
controller: { create: (options: OptionsType) => Promise<OverlayType> }
tagName: string,
controller: { create: (options: OptionsType) => Promise<OverlayType> },
customElement?: any
) => {
defineCustomElement(tagName, customElement);
const displayName = dashToPascalCase(tagName);
const didDismissEventName = `on${displayName}DidDismiss`;
const didPresentEventName = `on${displayName}DidPresent`;
const willDismissEventName = `on${displayName}WillDismiss`;