Sha256: d3144798c0abecf8d7f13d3fa32b78e00baf56c2e3b358e03b76dba96019a842

Contents?: true

Size: 1.29 KB

Versions: 5

Compression:

Stored size: 1.29 KB

Contents

import {
    BaseExtension, identifiedBy, identifier,
} from 'hippo/extensions/base';

@identifiedBy('extensions/<%= identifier %>')
export default class Extension extends BaseExtension {

    // must match the server-side identier in config/screens.rb
    // and lib/<%= identifier %>/extension.rb
    @identifier id = '<%= identifier %>';

    // This method is called when the extension is registered
    // Not all of Hippo will be available yet
    onRegistered() { }

    // This method is called after Hippo is completly loaded
    // and all extensions are registered
    onInitialized() { }

    // All extenensions have been given their data and Hippo has completed startup
    onAvailable() { }

    // Data that is provided by <%= namespace %>::Extension#client_bootstrap_data
    // in lib/<%= identifier %>/extension.rb is passed to this method
    // the Base class will simply store the provided data as @data
    setBootstrapData() { return super.setBootstrapData(...arguments); }

    // The root view that will be rendered when a screen is not being shown
    // Return a different component here to customize
    rootView() { return super.rootView(); }

    // A React component that should be rendered as part of the settings screen
    get systemSettingsComponent() {
        return null;
    }
}

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
hippo-fw-0.9.9 templates/client/extension.js
hippo-fw-0.9.8 templates/client/extension.js
hippo-fw-0.9.7 templates/client/extension.js
hippo-fw-0.9.6 templates/client/extension.js
hippo-fw-0.9.5 templates/client/extension.js