Sha256: 58d8abecd3cbefb123c48afedbbebe2642d0af57f8aed608e6d4143eb8e177b7
Contents?: true
Size: 1.2 KB
Versions: 41
Compression:
Stored size: 1.2 KB
Contents
import { CocoComponent } from "@js/coco"; import { getComponent } from "@helpers/alpine"; export default CocoComponent("appToolbar", () => { return { ready: false, startSectionWidth: null, endSectionWidth: null, get startGroupEl() { return this.$refs.startSection.firstElementChild; }, get endGroupEl() { return this.$refs.endSection.firstElementChild; }, get groups() { return [this.startGroupEl, this.endGroupEl] .filter((g) => g) .map((el) => getComponent(el, false)); }, init() { const toolbarWidth = this.$el.offsetWidth; let startSectionWidth = 0; let endSectionWidth = 0; if (this.startGroupEl) { startSectionWidth = Math.ceil( (this.startGroupEl.offsetWidth / toolbarWidth) * 100 ); } if (this.endGroupEl) { endSectionWidth = Math.ceil( (this.endGroupEl.offsetWidth / toolbarWidth) * 100 ); } this.$nextTick(() => { this.startSectionWidth = `${startSectionWidth}%`; this.endSectionWidth = `${endSectionWidth}%`; this.groups.forEach((group) => group.onResize()); this.ready = true; }); }, }; });
Version data entries
41 entries across 41 versions & 1 rubygems