Sha256: 28cf080b598282fb173ca7643d2c6c34b1a5c6d7b62552769385366f94a6fc8b

Contents?: true

Size: 517 Bytes

Versions: 3

Compression:

Stored size: 517 Bytes

Contents

import AlpineComponent from "@js/alpine/component";
import { getData } from "@js/alpine/utils";

export default AlpineComponent("toolbarTabGroup", () => {
  return {
    activeTab: null,

    selectTab(name) {
      this.activeTab = name;
      this.$dispatch("toolbar:tab-selected", { name });
    },

    isActive(name) {
      return this.activeTab === name;
    },

    get tabs() {
      const childNodes = this.$root.children;
      return Array.from(childNodes).map((child) => getData(child));
    },
  };
});

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
lookbook-3.0.0.alpha.2 app/components/lookbook/ui/elements/toolbar/toolbar_tab_group/toolbar_tab_group.js
lookbook-3.0.0.alpha.1 app/components/lookbook/ui/elements/toolbar/toolbar_tab_group/toolbar_tab_group.js
lookbook-3.0.0.alpha.0 app/components/lookbook/ui/elements/toolbar/toolbar_tab_group/toolbar_tab_group.js