hummingbird-me/kitsu-web

View on GitHub
app/components/canny-feedback-script.js

Summary

Maintainability
A
0 mins
Test Coverage
F
0%
import Component from '@ember/component';
import { get } from '@ember/object';

export default Component.extend({
  didInsertElement() {
    this._super(...arguments);
    this._createCannyElement();
  },

  _createCannyElement() {
    const element = document.createElement('script');
    const content = document.createTextNode(`
      Canny('render', ${JSON.stringify(this._cannyObject())});
    `);
    element.appendChild(content);
    get(this, 'element').appendChild(element);
  },

  _cannyObject() {
    const baseObject = {
      basePath: get(this, 'path'),
      boardToken: get(this, 'boardToken')
    };
    if (get(this, 'session.hasUser')) {
      baseObject.ssoToken = get(this, 'token');
    }
    return baseObject;
  }
});