Sha256: 08df493281abe8c9b8f0e6bb4c3835702842ddf3fed7dd04a723c6493231202e

Contents?: true

Size: 473 Bytes

Versions: 35

Compression:

Stored size: 473 Bytes

Contents

import { getData } from "@helpers/alpine";
import { nameFunction } from "@helpers/lang";

function CocoComponent(name, fn) {
  const func = nameFunction(name, (...args) => {
    const data = fn(...args);

    Object.defineProperties(data, {
      $parent: {
        get() {
          return getData(this.$root.parentElement);
        },
      },
    });

    data.$options = {};

    return data;
  });

  func.component = true;
  return func;
}

export { CocoComponent };

Version data entries

35 entries across 35 versions & 1 rubygems

Version Path
coveragebook_components-0.8.2 app/assets/js/coco.js
coveragebook_components-0.8.1 app/assets/js/coco.js
coveragebook_components-0.8.0 app/assets/js/coco.js
coveragebook_components-0.8.0.beta.3 app/assets/js/coco.js
coveragebook_components-0.8.0.beta.2 app/assets/js/coco.js
coveragebook_components-0.8.0.beta.1 app/assets/js/coco.js
coveragebook_components-0.7.10 app/assets/js/coco.js
coveragebook_components-0.7.9 app/assets/js/coco.js
coveragebook_components-0.7.8 app/assets/js/coco.js
coveragebook_components-0.7.7 app/assets/js/coco.js
coveragebook_components-0.7.6 app/assets/js/coco.js
coveragebook_components-0.7.5 app/assets/js/coco.js
coveragebook_components-0.7.4 app/assets/js/coco.js
coveragebook_components-0.7.3 app/assets/js/coco.js
coveragebook_components-0.7.2 app/assets/js/coco.js