Last active
September 1, 2021 14:52
-
-
Save rossjha/5b7683cee6db0d921db8fc0b9ac239df to your computer and use it in GitHub Desktop.
iframe-cross-origin
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
import Component from '@ember/component'; | |
export default Component.extend({ | |
tagName: 'iframe', | |
attributeBindings: ['src', 'title'], | |
classNames: ['w-full', 'h-screen', 'border-none'], | |
src: '', | |
title: 'test', | |
didInsertElement() { | |
this._super(...arguments); | |
console.log('foo'); | |
} | |
}); |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
import Controller from '@ember/controller'; | |
import { inject as service } from '@ember/service'; | |
import { get } from "@ember/object" | |
export default Controller.extend({ | |
windowMessage: service(), | |
init() { | |
this._super(...arguments); | |
get(this, 'windowMessage').on('greet', function() { | |
}).off('event', this, this.doSomething) | |
get(this, 'windowMessage').greet(); | |
}, | |
doSomething() { | |
console.log('ddd'); | |
} | |
}); |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
import Service from '@ember/service'; | |
import Evented from '@ember/object/evented'; | |
import { run } from '@ember/runloop'; | |
import { isBlank } from '@ember/utils'; | |
import { get, set } from "@ember/object" | |
export default Service.extend(Evented, { | |
window, | |
// Lifecycle Hooks | |
init() { | |
this._super(...arguments); | |
const listener = run.bind(this, 'onMessage'); | |
get(this, 'window').addEventListener('message', set(this, 'eventListener', listener)); | |
}, | |
willDestroy() { | |
this._super(...arguments); | |
get(this, 'window').removeEventListener('message', get(this, 'eventListener')); | |
}, | |
// Methods | |
isOriginAllowed() { | |
return true; | |
} | |
parseMessage(data) { | |
return JSON.parse(data); | |
} | |
onMessage(evt) { | |
if (!this.isOriginAllowed) { | |
return null; | |
} | |
const message = this.parseMessage(evt.data); | |
if !(isBlank(message)) { | |
this.trigger(`from:${message.type}`, message, event); | |
} | |
} | |
}); |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
@import "https://unpkg.com/tailwindcss@^2/dist/tailwind.min.css"; |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
{ | |
"version": "0.17.1", | |
"EmberENV": { | |
"FEATURES": {}, | |
"_TEMPLATE_ONLY_GLIMMER_COMPONENTS": false, | |
"_APPLICATION_TEMPLATE_WRAPPER": true, | |
"_JQUERY_INTEGRATION": true | |
}, | |
"options": { | |
"use_pods": false, | |
"enable-testing": false | |
}, | |
"dependencies": { | |
"jquery": "https://cdnjs.cloudflare.com/ajax/libs/jquery/3.5.1/jquery.js", | |
"ember": "2.18.2", | |
"ember-template-compiler": "2.18.2", | |
"ember-testing": "2.18.2" | |
}, | |
"addons": { | |
"@glimmer/component": "1.0.0", | |
"ember-data": "2.18.5" | |
} | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment