Browse Source

Clean _getFrame

pull/5321/head
Artur Arseniev 3 years ago
parent
commit
f912cbb7e8
  1. 13
      src/canvas/view/CanvasView.ts
  2. 8
      src/dom_components/view/ComponentView.ts

13
src/canvas/view/CanvasView.ts

@ -123,13 +123,13 @@ export default class CanvasView extends ModuleView<Canvas> {
);
}
checkSelected(component: Component, opts: any = {}) {
checkSelected(component: Component, opts: { scroll?: ScrollIntoViewOptions } = {}) {
const { scroll } = opts;
const currFrame = this.em.get('currentFrame');
const currFrame = this.em.getCurrentFrame();
scroll &&
component.views?.forEach(view => {
view._getFrame() === currFrame && view.scrollIntoView(scroll);
view.frameView === currFrame && view.scrollIntoView(scroll);
});
}
@ -509,7 +509,8 @@ export default class CanvasView extends ModuleView<Canvas> {
if (!view.scriptContainer) {
view.scriptContainer = createEl('div', { 'data-id': id });
this.getJsContainer().appendChild(view.scriptContainer);
const jsEl = this.getJsContainer();
jsEl?.appendChild(view.scriptContainer);
}
view.el.id = id;
@ -540,11 +541,11 @@ export default class CanvasView extends ModuleView<Canvas> {
*/
getJsContainer(view?: ComponentView) {
const frameView = this.getFrameView(view);
return frameView && frameView.getJsContainer();
return frameView?.getJsContainer();
}
getFrameView(view?: ComponentView) {
return view?._getFrame() || this.em.get('currentFrame');
return view?.frameView || this.em.getCurrentFrame();
}
_renderFrames() {

8
src/dom_components/view/ComponentView.ts

@ -143,7 +143,7 @@ Component> {
super.remove();
const { model, $el } = this;
const { views } = model;
const frame = this._getFrame() || {};
const frame = this.frameView || {};
model.components().forEach(comp => {
const view = comp.getView(frame.model);
view?.remove();
@ -462,7 +462,7 @@ Component> {
const { body } = elDoc;
const frameElement = elDoc.defaultView?.frameElement as HTMLIFrameElement;
const { top, left } = rect || this.getOffsetRect();
const frame = this._getFrame().getOffsetRect();
const frame = this.frameView.getOffsetRect();
return (
top! >= frame.scrollTop &&
@ -512,10 +512,6 @@ Component> {
this.$el.data({ model, collection, view });
}
_getFrame() {
return this.em?.get('Canvas').config.frameView;
}
/**
* Render children components
* @private

Loading…
Cancel
Save