define(['compat'], compat => {
  window.LOADED_START = performance.now();

  const PREFIX_PATH = compat.templatePath;

  const TEMPLATE_VERSION = '0.0.1';

  require.config({

    baseUrl: PREFIX_PATH,

    waitSeconds: 60,

    paths: {
      'domready': 'js/core/require-domready.min',
      'jquery': 'js/core/jquery.min',
      'migrate': 'js/core/jquery-migrate.min',
      'gsap': 'js/core/gsap.min',
      'scrolltrigger': 'js/core/scrolltrigger.min',
      'drawsvg': 'js/core/drawsvg.min',
      'scrollto': 'js/core/scrollto.min',
      'lozad': 'js/core/lozad.min',
      'smoothscroll': 'js/core/smoothscroll.min',
      'pen': 'js/core/pen',
      'page': 'js/core/page',
      'share': 'js/core/share',
      'swiper': 'js/core/swiper-bundle.min',
      'slick': 'js/core/slick.min',
      'tab': 'js/core/jquery.sudyTab.min',
      'until': 'js/util/until',
      'tools': 'js/util/tools',
      'common': 'js/module/common',
      'main': 'js/module/main',
      'list': 'js/module/list',
      'info': 'js/module/info'
    },

    map: {
      '*':{
        'min':'js/core/require-css.min'
      }
    },

    shim: {
      'migrate': ['jquery'],
      'slick': ['jquery'],
      'tab': ['jquery'],
      'page': ['jquery'],
      'share': ['jquery'],
      'common': ['jquery'],
      'scrolltrigger': ['gsap'],
      'drawsvg': ['gsap'],
      'scrollto': ['gsap'],
      'pen': ['gsap'],
      'until': ['gsap']
    },

    urlArgs: `ver=${TEMPLATE_VERSION}`

  });

  require([compat.pageModule, 'common', 'tools', 'gsap', 'smoothscroll', 'min!css/mobile', 'min!css/media', 'domready!'], (...args) => {
    console.log('DOM加载完成');
    const [tools] = args.slice(2);
    //首屏动画
    const loaderEl = document.querySelector('.pre-loader');
    if (loaderEl) {
      gsap.to(loaderEl, {
        opacity: 0,
        duration: .6,
        onComplete: () => {
          loaderEl.remove();
        }
      });
    }

    tools.loadFonts(PREFIX_PATH);

  }, err => {
    console.error('模块加载失败:', err);
  });

});
