mirror of
https://github.com/openfoodfoundation/openfoodnetwork
synced 2026-01-13 18:46:49 +00:00
70 lines
2.0 KiB
JavaScript
70 lines
2.0 KiB
JavaScript
import { Controller } from "@hotwired/stimulus";
|
|
import StimulusReflex from "stimulus_reflex";
|
|
|
|
/* This is your ApplicationController.
|
|
* All StimulusReflex controllers should inherit from this class.
|
|
*
|
|
* Example:
|
|
*
|
|
* import ApplicationController from './application_controller'
|
|
*
|
|
* export default class extends ApplicationController { ... }
|
|
*
|
|
* Learn more at: https://docs.stimulusreflex.com
|
|
*/
|
|
export default class extends Controller {
|
|
connect() {
|
|
StimulusReflex.register(this);
|
|
}
|
|
|
|
/* Application-wide lifecycle methods
|
|
*
|
|
* Use these methods to handle lifecycle concerns for the entire application.
|
|
* Using the lifecycle is optional, so feel free to delete these stubs if you don't need them.
|
|
*
|
|
* Arguments:
|
|
*
|
|
* element - the element that triggered the reflex
|
|
* may be different than the Stimulus controller's this.element
|
|
*
|
|
* reflex - the name of the reflex e.g. "Example#demo"
|
|
*
|
|
* error/noop - the error message (for reflexError), otherwise null
|
|
*
|
|
* reflexId - a UUID4 or developer-provided unique identifier for each Reflex
|
|
*/
|
|
|
|
beforeReflex(element, reflex, noop, reflexId) {
|
|
// document.body.classList.add('wait')
|
|
}
|
|
|
|
reflexSuccess(element, reflex, noop, reflexId) {
|
|
// show success message
|
|
}
|
|
|
|
reflexError(element, reflex, error, reflexId) {
|
|
// Log to console (it normally only gets logged in dev mode)
|
|
console.error(reflex + ":\n " + error);
|
|
|
|
// show error message
|
|
alert(I18n.t("errors.general_error.message"));
|
|
}
|
|
|
|
reflexForbidden(element, reflex, noop, reflexId) {
|
|
// Reflex action did not have permission to run
|
|
// window.location = '/'
|
|
}
|
|
|
|
reflexHalted(element, reflex, noop, reflexId) {
|
|
// handle aborted Reflex action
|
|
}
|
|
|
|
afterReflex(element, reflex, noop, reflexId) {
|
|
// document.body.classList.remove('wait')
|
|
}
|
|
|
|
finalizeReflex(element, reflex, noop, reflexId) {
|
|
// all operations have completed, animation etc is now safe
|
|
}
|
|
}
|