1.2.7 • Published 4 years ago

pwa-ios-invitation v1.2.7

Weekly downloads
3
License
ISC
Repository
github
Last release
4 years ago

pwa-ios-invitation npm.io npm.io

PWA invitation react component for iOS (located in right place for different devices) and few utils usefull for PWA.

Screenshot

<PwaIosInstallInvitation/>

PWA invitation component on iOS style, located in a bottom for iPhones portrait and in top for iPad and iPhones landscape (greater iPhone SE)

import React, { Fragment } from 'react'
import PwaIosInstallInvitation, { IconShareIos } from 'pwa-const-and-invitation'

ReactDOM.render(
  <Fragment>
    <App />

    <PwaIosInstallInvitation
      showPwaInvitation={true}
      iosInvitationTimeout={10000}
      iosInvitationOnlySafari={true}
      iosInvitationContent={
        (iosDevice)=>
          <Fragment>
            Install my awesome webapp on your {iosDevice}: tap <IconShareIos /> and then Add to Home Screen
          </Fragment>
      }
    />

  </Fragment>,
  document.getElementById('root')
)
Prop / ConstTypeDefaultDescription
showPwaInvitationbool or function::booltrueValue or function that set PWA invitation visablity. It's affect Android devices too
iosInvitationTimeoutint0Milliseconds after last closing PWA invitation on ios to show it again
iosInvitationOnlySafariboolfalseSet to true to show invitation on ios only in Safari
iosInvitationContentstring, jsx or function(iosDevice)"Install this webapp on your {iosDevice}: tap <IconShareIos /> and then Add to Home Screen"Ios invitation content
--ios-install-invitation-bgcss const#f2f8ffComponent background color
--ios-install-invitation-text-colorcss const#37434EComponent text color

Consts

Consts that can be usefull with PWA works

// use this one to reduce bundle size, if you need only const
import { isPwa, isIos, iosDevice, isSafari } from 'pwa-const-and-invitation/const' 

// or you can use this one, if you use invitation too
import { isPwa, isIos, iosDevice, isSafari } from 'pwa-const-and-invitation'
PropTypeDescription
isPwabooltrue if application run as PWA
isIosboolequal true if device based on ios
iosDevicestringiPhone or iPad or iPod
isSafaribooltrue if it Safari and NOT Chrome

IconShareIos

Ios style "Share" icon. You can use it for iosInvitationContent

import { IconShareIos } from 'pwa-const-and-invitation'
PropTypeDescription
classNamestringCustom css class for icon component

useWindowBeforeInstallPrompt

Hook for default PWA install invitation event

// use this one to reduce bundle size, if you need only const
import { IconShareIos } from 'pwa-const-and-invitation/hooks'

// or you can use this one, if you use invitation too
import { IconShareIos } from 'pwa-const-and-invitation'