41 lines
1.0 KiB
JavaScript
41 lines
1.0 KiB
JavaScript
Template.flexboxLayout.onCreated(() => {
|
|
const instance = Template.instance();
|
|
instance.state = instance.data.state;
|
|
});
|
|
|
|
let resizeTimeout;
|
|
Template.flexboxLayout.onRendered(() => {
|
|
const instance = Template.instance();
|
|
|
|
instance.autorun(() => {
|
|
Meteor.clearTimeout(resizeTimeout);
|
|
|
|
// Trigger a resize any time the layout state changes
|
|
instance.state.get('leftSidebar');
|
|
instance.state.get('rightSidebar');
|
|
|
|
resizeTimeout = Meteor.setTimeout(() => {
|
|
handleResize();
|
|
}, 300);
|
|
});
|
|
});
|
|
|
|
Template.flexboxLayout.helpers({
|
|
leftSidebarOpen() {
|
|
const instance = Template.instance();
|
|
return instance.state.get('leftSidebar');
|
|
},
|
|
|
|
lesionSidebarOpen() {
|
|
return Template.instance().state.get('rightSidebar') === 'lesions';
|
|
},
|
|
|
|
additionalMeasurementsSidebarOpen() {
|
|
return Template.instance().state.get('rightSidebar') === 'additional';
|
|
},
|
|
|
|
rightSidebarOpen() {
|
|
return Template.instance().state.get('rightSidebar') !== null;
|
|
}
|
|
});
|