bifrost-cors

1.0.4 • Public • Published

Bifrost-CORS

A cross-domain communication solution to share data and many more functionalities with simple as just calling a method.

Get Started

##### NPM Install

npm install bifrost-cors

CDN Link (6.39KB)

https://cdn.jsdelivr.net/gh/spurushottam13/bifrost-cors/index.min.js

GZIP version of File (1.7KB)

https://cdn.jsdelivr.net/gh/spurushottam13/bifrost-cors/index.min.gz

Functionalities can be performed on CROS Domain


All above methods are wrapped in a promise.


Initialize Bifrost-CORS You have to Initialize Bifrost-CORS in both domain
var bifrostCors = new bifrostCors(address, iframeBoolean,iframeId)
Parameter Required Value
address YES Exact Address of the other domain
iframeBoolean No true :- If you already rendering the other domain in iframe
false If you are not rendering the other domain in iframe
Default false
iframeId No if iframeBoolean is set to true then you need to pass the ID for your Iframe in which you loading the other domain

Implementation of methods and how to handle promise
var bifrostCors = new bifrostCors("http://example.com/",false)
 
//Calling Methods without promise
var result = bifrostCors.getLocalStorage(key)
 
//Hanlde Promise
 
//1. Using .then()
bifrostCors.getLocalStorage(key).then((data) => {
    console.log(data)
 })
 
//2. Using async function
async function grabLocalStorage(){
    let result = await  bifrostCors.getLocalStorage(key)
}

Functionalities

  • Cookies

    • Get Cookies
    // return type Object, return all cookies
    bifrostCors.getCookie() 
     
    // return type string
    bifrostCors.getCookie("key")
    • Set Cookies
    bifrostCors.setCookie(name,value,days)   
    • Parameter

      • name String, name for cookie
      • value String, value for cookie
      • days int, expiration days for cookie
    • return type Boolean

  • LocalStorage

    • Get local Storage
    // return type stirng
    bifrostCors.getgetLocalStorage("key") 
     
    // return type array
    bifrostCors.getLocalStorage(["key1","key2"])
    • Set local Storage
    // return type Boolean
    bifrostCors.setLocalStorage({key: "user", value: "user-1"}) 
    • Delete local Storage
    // return type Boolean
    bifrostCors.deleteLocalStorage("key") 
     
    // return type Boolean
    bifrostCors.deleteLocalStorage(["key1","key2"])
  • Bi-directional message thread

    • Request Message Thread
    // return type Boolean, parameter type funtion
    bifrostCors.requestMessageThread(Listner)

    Listner is your custom function which will be invoked every time new message recivied, and it should expect a new message as a parameter

    Here's exapmle

    function myCustomListner(newMessage){
        cosnole.log("Hurray I got new message ",newMessage)
     }
     
     bifrostCors.requestMessageThread(myCustomListner)
    • Send Message
    // return type Boolean, parameter type string|int|array|object
    bifrostCors.send(message)
  • Run JS expression

    // return type Boolean, parameter type string
    bifrostCors.runExpression(expression)
  • DOM Manipulation

    • DOM Manipulation by ID
    // return type Boolean, parameter type string
    bifrostCors.domManipulationById("yourElementID")
    • DOM Manipulation by class name
    // return type Boolean, parameter type string,int,Objet
    bifrostCors.domManipulationById(class,index,style)
    • Parameter

      • class String your element class name
      • index int index no of that element in class array
      • style Object Style object
    • Example:a if you can access element by document.getElementsByClassName("myElementClass)[4]
      so parameter will be

      • class "myElementClass"
      • index 4
      • style {background:"red"}

Package Sidebar

Install

npm i bifrost-cors

Weekly Downloads

142

Version

1.0.4

License

ISC

Unpacked Size

115 kB

Total Files

6

Last publish

Collaborators

  • spurushottam13