UNPKG

react-klasha

Version:

This is an reactJS library for implementing klasha payment gateway

68 lines (62 loc) 2.54 kB
import { attachShadow, createEvent, h, Host, proxyCustomElement } from '@stencil/core/internal/client'; import { b as getIonMode } from './ionic-global.js'; import { G as GESTURE_CONTROLLER } from './gesture-controller.js'; const backdropIosCss = ":host{left:0;right:0;top:0;bottom:0;display:block;position:absolute;-webkit-transform:translateZ(0);transform:translateZ(0);contain:strict;cursor:pointer;opacity:0.01;-ms-touch-action:none;touch-action:none;z-index:2}:host(.backdrop-hide){background:transparent}:host(.backdrop-no-tappable){cursor:auto}:host{background-color:var(--ion-backdrop-color, #000)}"; const backdropMdCss = ":host{left:0;right:0;top:0;bottom:0;display:block;position:absolute;-webkit-transform:translateZ(0);transform:translateZ(0);contain:strict;cursor:pointer;opacity:0.01;-ms-touch-action:none;touch-action:none;z-index:2}:host(.backdrop-hide){background:transparent}:host(.backdrop-no-tappable){cursor:auto}:host{background-color:var(--ion-backdrop-color, #000)}"; const Backdrop = class extends HTMLElement { constructor() { super(); this.__registerHost(); attachShadow(this); this.ionBackdropTap = createEvent(this, "ionBackdropTap", 7); this.blocker = GESTURE_CONTROLLER.createBlocker({ disableScroll: true }); /** * If `true`, the backdrop will be visible. */ this.visible = true; /** * If `true`, the backdrop will can be clicked and will emit the `ionBackdropTap` event. */ this.tappable = true; /** * If `true`, the backdrop will stop propagation on tap. */ this.stopPropagation = true; } connectedCallback() { if (this.stopPropagation) { this.blocker.block(); } } disconnectedCallback() { this.blocker.unblock(); } onMouseDown(ev) { this.emitTap(ev); } emitTap(ev) { if (this.stopPropagation) { ev.preventDefault(); ev.stopPropagation(); } if (this.tappable) { this.ionBackdropTap.emit(); } } render() { const mode = getIonMode(this); return (h(Host, { tabindex: "-1", "aria-hidden": "true", class: { [mode]: true, 'backdrop-hide': !this.visible, 'backdrop-no-tappable': !this.tappable, } })); } static get style() { return { ios: backdropIosCss, md: backdropMdCss }; } }; const IonBackdrop = /*@__PURE__*/proxyCustomElement(Backdrop, [33,"ion-backdrop",{"visible":[4],"tappable":[4],"stopPropagation":[4,"stop-propagation"]},[[2,"click","onMouseDown"]]]); export { IonBackdrop };