Sha256: 3206c4b461b9b8152274e3de40bf37609352e12da390e08620a07f2b8ae8f5eb

Contents?: true

Size: 1.21 KB

Versions: 3

Compression:

Stored size: 1.21 KB

Contents

import { start as startRails } from "@rails/ujs";
import { Application } from "@hotwired/stimulus";
import "react_ujs";
import { FC } from "react";

import * as Components from "./components";

import EditPageController from "./controllers/EditPageController";
import MainController from "./controllers/MainController";
import LoginController from "./controllers/LoginController";
import PageOptionsController from "./controllers/PageOptionsController";

import RichText from "./features/RichText";

export function registerComponent(name: string, component: FC) {
  window[name] = component;
}

export default function startPages () {
  startRails();
  for (const name in Components) {
    registerComponent(name, Components[name] as FC);
  }
  RichText.start();

  const application = Application.start();
  application.register("edit-page", EditPageController);
  application.register("main", MainController);
  application.register("login", LoginController);
  application.register("page-options", PageOptionsController);
}

export * from "./components";
export * from "./hooks";
export * from "./stores";

export * from "./lib/request";
export { default as copyToClipboard,
         copySupported } from "./lib/copyToClipboard";

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
pages_core-3.12.4 app/javascript/index.ts
pages_core-3.12.3 app/javascript/index.ts
pages_core-3.12.2 app/javascript/index.ts