{
  "_version": "1.85.0",
  "sap.app": {
    "id": "homepage",
    "type": "application",
    "i18n": {
      "bundleUrl": "i18n/i18n.properties",
      "supportedLocales": [
        "",
        "en",
        "ko"
      ],
      "fallbackLocale": "en"
    },
    "applicationVersion": {
      "version": "0.0.1"
    },
    "title": "{{appTitle}}",
    "description": "{{appDescription}}",
    "resources": "resources.json",
    "sourceTemplate": {
      "id": "@sap/generator-fiori:basic",
      "version": "1.25.0",
      "toolsId": "a96003d7-5289-4768-8e59-109081d9f476"
    }
  },
  "sap.ui": {
    "technology": "UI5",
    "icons": {
      "icon": "",
      "favIcon": "",
      "phone": "",
      "phone@2": "",
      "tablet": "",
      "tablet@2": ""
    },
    "deviceTypes": {
      "desktop": true,
      "tablet": true,
      "phone": true
    }
  },
  "sap.ui5": {
    "flexEnabled": true,
    "dependencies": {
      "minUI5Version": "1.148.1",
      "libs": {
        "sap.m": {},
        "sap.ui.core": {}
      },
      "components": {}
    },
    "contentDensities": {
      "compact": true,
      "cozy": true
    },
    "models": {
      "i18n": {
        "type": "sap.ui.model.resource.ResourceModel",
        "settings": {
          "bundleName": "homepage.i18n.i18n",
          "supportedLocales": [
            "en",
            "ko"
          ]
        }
      }
    },
    "resources": {
      "css": [
        {
          "_comment": [
            "공용 css 경로입니다.",
            "ui5는 css파일의 속성을 전체 공유하기에",
            "하나의 파일에 속성을 정의하면 코드가 기하급수적으로 늘어납니다.",
            "따라서 각 페이지별로 css 파일을 분리하는 전략으로 유지보수를 용이하게 가져갑니다."
          ],
          "uri": "css/style.css"
        },
        {
          "_comment": [
            "enterprise 페이지 css입니다."
          ],
          "uri": "css/enterpriseStyle.css"
        },
        {
          "_comment": [
            "marketing 페이지 css입니다."
          ],
          "uri": "css/marketingStyle.css"
        },
        {
          "_comment": [
            "globalHeader 페이지 css입니다."
          ],
          "uri": "css/globalHeader.css"
        },
        {
          "_comment": [
            "test 페이지 css입니다."
          ],
          "uri": "css/testStyle.css"
        }
      ]
    },
    "routing": {
      "config": {
        "_comment": [
          "저희는 차후 클라우드 기반 미니 Erp 솔루션을 대비해",
          "중첩 라우팅 전략을 선택합니다.",
          "Main엔 사이드바, 해더 등이 필요 없는 GateWay, Login 페이지를 배치,",
          "Layout엔 공용으로 쓸 수 있는 해더, 챗봇 등은 중첩 라우팅을 쌓아 상태를 기억할 수 있도록 합니다.",
          "작동원리",
          "1. 'routes'의 pattern이라는 경로로 요청이 들어오거나, js를 통해 name으로 경로 요청이 들어온다.",
          "2. 'routes'의 target에 정의된 경로로 'targets'의 key를 찾는다.",
          "3. 'targets'의 key를 찾아 viewName 경로의 파일을 요청자에게 보여준다.",
          "* 참고로, parent는 중첩 라우팅을 쌓는다는 의미, ",
          " controlId은 내가 중첩된 view 하단에 표출할 장소를 의미, ",
          " controlAggregation은 표출하는 방식이 page형식인지 item형식인지를 의미합니다. (ex > Maketing은 page형식, header는 item형식)"
        ],
        "routerClass": "sap.m.routing.Router",
        "controlAggregation": "pages",
        "controlId": "app",
        "transition": "slide",
        "type": "View",
        "viewType": "XML",
        "path": "homepage.view",
        "async": true,
        "viewPath": "homepage.view"
      },
      "routes": [
        {
          "name": "RouteMain",
          "pattern": ":?query:",
          "target": [
            "TargetMain"
          ]
        },
        {
          "name": "RouteEnterprise",
          "pattern": "enterprise",
          "target": [
            "TargetEnterprise"
          ]
        },
        {
          "name": "RouteMarketing",
          "pattern": "marketing",
          "target": [
            "TargetMarketing"
          ]
        },
        {
          "name": "RouteTest",
          "pattern": "test",
          "target": [
            "TargetLayout",
            "TargetTest"
          ]
        }
      ],
      "targets": {
        "TargetMain": {
          "viewId": "Main",
          "viewName": "Main"
        },
        "TargetLayout": {
          "viewId": "Layout",
          "viewName": "Layout"
        },
        "TargetEnterprise": {
          "viewId": "Enterprise",
          "viewName": "pages.Enterprise",
          "parent": "TargetLayout",
          "controlId": "nestedAppContainer",
          "controlAggregation": "pages"
        },
        "TargetMarketing": {
          "viewId": "Marketing",
          "viewName": "pages.Marketing",
          "parent": "TargetLayout",
          "controlId": "nestedAppContainer",
          "controlAggregation": "pages"
        },
        "TargetTest": {
          "viewId": "test",
          "viewName": "pages.test",
          "parent": "TargetLayout",
          "controlId": "nestedAppContainer",
          "controlAggregation": "pages"
        }
      }
    },
    "rootView": {
      "viewName": "homepage.view.App",
      "type": "XML",
      "id": "App",
      "async": true
    }
  }
}