diff --git a/packages/core/src/canvas/model/Frame.ts b/packages/core/src/canvas/model/Frame.ts index 125039c67..61a9ba45f 100644 --- a/packages/core/src/canvas/model/Frame.ts +++ b/packages/core/src/canvas/model/Frame.ts @@ -200,6 +200,10 @@ export default class Frame extends ModuleModel { return this.get('component'); } + getMainComponent(): Component { + return this.refComponent || this.root; + } + getStyles() { return this.get('styles'); } diff --git a/packages/core/src/style_manager/model/PropertySelect.ts b/packages/core/src/style_manager/model/PropertySelect.ts index 72e156f1b..428ea2dcb 100644 --- a/packages/core/src/style_manager/model/PropertySelect.ts +++ b/packages/core/src/style_manager/model/PropertySelect.ts @@ -3,7 +3,7 @@ import { ObjectAny } from '../../common'; import { isDef } from '../../utils/mixins'; import Property, { PropertyProps } from './Property'; -type SelectOption = { +interface SelectOption { id: string; value?: string; label?: string; @@ -12,7 +12,7 @@ type SelectOption = { title?: string; style?: string; propValue?: ObjectAny; -}; +} /** @private */ export interface PropertySelectProps extends PropertyProps { diff --git a/packages/core/src/utils/sorter/SorterUtils.ts b/packages/core/src/utils/sorter/SorterUtils.ts index 8cc05f690..de794ba06 100644 --- a/packages/core/src/utils/sorter/SorterUtils.ts +++ b/packages/core/src/utils/sorter/SorterUtils.ts @@ -144,7 +144,7 @@ export function closest(el: HTMLElement, selector: string): HTMLElement | undefi * @private */ export function isStyleInFlow(el: HTMLElement, parent: HTMLElement): boolean { - if (isTextNode(el)) return false; + if (!el || isTextNode(el)) return false; const elementStyles = el.style || {}; const $el = $(el);