forked from flow/vue3js-app-proposal-for-sdk-claude
- Delete ObjectBasic (defined, never imported)
- ObjectShort: remove unused node prop
- exporter: export stressorToString; use in patchBarMeta (removes inline duplicate)
- PaneFO: import stressorToString from exporter; extract H4 style constant,
shapeSection() helper, instrOnChange() helper; remove apply param from
makeChangeHandler (was always () => markDirty()); remove unnecessary ?.
on always-initialized arrays (variations, labelSpecs, subvariations)
- PaneSubObjects: explicit hasChildren on all item kinds; bars at score
level get hasChildren based on voices; remove stale kind-list fallback
- ast-parser coerce(): remove unreachable s.trim() check ('' handled above)
- PaneCP: fix post-export synthesisStatus reset to use real field names
24 lines
841 B
JavaScript
24 lines
841 B
JavaScript
import { h } from 'vue';
|
||
|
||
// One-line summary row with a drill-down chevron.
|
||
export const ObjectShort = {
|
||
props: ['label', 'typeTag', 'focused', 'hasChildren'],
|
||
emits: ['focus', 'drillDown'],
|
||
setup(props, { emit }) {
|
||
return () => h('li', {
|
||
class: ['se-object-item', props.focused ? 'focused' : null],
|
||
onClick: () => emit('focus'),
|
||
}, [
|
||
props.typeTag ? h('span', { class: 'se-object-type' }, props.typeTag) : null,
|
||
h('span', { class: 'se-object-label' }, props.label),
|
||
props.hasChildren
|
||
? h('button', {
|
||
class: 'se-chevron',
|
||
title: 'Drill down',
|
||
onClick: e => { e.stopPropagation(); emit('drillDown'); },
|
||
}, '›')
|
||
: null,
|
||
]);
|
||
},
|
||
};
|