Sha256: fe533aaf0a13c792b12bd2b4d52bcc1e93374754ea13f3a314f9a9295b2a8d90
Contents?: true
Size: 1.7 KB
Versions: 46
Compression:
Stored size: 1.7 KB
Contents
// application_controller.js import { Controller } from "@hotwired/stimulus" export default class ApplicationController extends Controller { connect() { this.element[this.identifier] = this } getController(element, identifier) { return this.application.getControllerForElementAndIdentifier(element, identifier) } triggerEvent(el, name, data) { let event if (typeof window.CustomEvent === "function") { event = new CustomEvent(name, { detail: data, cancelable: true, bubbles: true }) } else { event = document.createEvent("CustomEvent") event.initCustomEvent(name, true, true, data) } el.dispatchEvent(event) } elementScrolled(element) { if (element.scrollHeight - Math.round(element.scrollTop) === element.clientHeight) { return true } return false } getUserData(key) { return fetch("/satis/user_data/" + key, { method: "GET", headers: { "Content-Type": "application/json", }, }) .then((res) => { if (res.ok) { return res.json().then((data) => { return data }) } }) .catch((err) => { console.log(err) }) } setUserData(key, data) { let csrfToken = document.querySelector("meta[name=csrf-token]").content return fetch("/satis/user_data/" + key, { method: "PUT", headers: { "Content-Type": "application/json", "X-CSRF-Token": csrfToken, }, body: JSON.stringify(data), }) .then((res) => { if (res.ok) { return res.json().then((data) => { return data }) } }) .catch((err) => { console.log(err) }) } }
Version data entries
46 entries across 46 versions & 1 rubygems