import { _decorator, Component, UITransform, view } from 'cc';
const { ccclass, menu, disallowMultiple } = _decorator;

@ccclass('BackgroundScaler')
@menu('Nexux/BackgroundScaler')
@disallowMultiple()
export class BackgroundScaler extends Component {
  onLoad() {
    const bg = this.node;
    const uiTransform = bg.getComponent(UITransform);
    const bgSize = uiTransform?.contentSize;

    if (!bgSize) {
      console.error('BackgroundScaler: bgSize is null');
      return;
    }

    const winSize = view.getVisibleSize();

    const scaleX = winSize.width / bgSize.width;
    const scaleY = winSize.height / bgSize.height;

    const scale = Math.max(scaleX, scaleY);

    bg.setScale(scale, scale);
  }
}
