{
  "custom": {
    "activityLogger": {
      "alt_pageid": "tools",
      "start_time": {
        "$": [
          "ts",
          192,
          1716471122012
        ],
        "$ts": 1716471122012
      }
    }
  },
  "events": {
    "system": {
      "onShutdown": {
        "config": {
          "script": "\tactivityLog.productMetrics.callLogger(self, \u0027page\u0027)"
        },
        "scope": "G",
        "type": "script"
      },
      "onStartup": {
        "config": {
          "script": "\tself.session.custom.view_in_focus \u003d self.page.props.path\n\tself.custom.activityLogger.start_time \u003d system.date.now()"
        },
        "scope": "G",
        "type": "script"
      }
    }
  },
  "params": {},
  "propConfig": {
    "custom.activityLogger": {
      "persistent": true
    },
    "custom.activityLogger.pageid": {
      "binding": {
        "config": {
          "expression": "{/root.props.currentTabIndex}"
        },
        "transforms": [
          {
            "code": "\tpageid\u003d self.custom.activityLogger.alt_pageid+\u0027/\u0027+self.getChild(\"root\").props.tabs[value]\n\treturn pageid.replace(\u0027 \u0027,\u0027\u0027)",
            "type": "script"
          }
        ],
        "type": "expr"
      }
    }
  },
  "props": {
    "defaultSize": {
      "height": 1080,
      "width": 1920
    }
  },
  "root": {
    "children": [
      {
        "meta": {
          "name": "CommissioningTool"
        },
        "props": {
          "path": "Main-Views/Commissioning Tool/CT_Main"
        },
        "type": "ia.display.view"
      },
      {
        "meta": {
          "name": "S3"
        },
        "position": {
          "tabIndex": 1
        },
        "propConfig": {
          "props.params.selected_site": {
            "binding": {
              "config": {
                "path": "session.custom.fc"
              },
              "type": "property"
            }
          }
        },
        "props": {
          "params": {
            "selected_image": null
          },
          "path": "Main-Views/S3/manage"
        },
        "type": "ia.display.view"
      },
      {
        "meta": {
          "name": "NotifyTool"
        },
        "position": {
          "tabIndex": 2
        },
        "props": {
          "path": "Main-Views/Notify-Tool/Notify-Main"
        },
        "type": "ia.display.view"
      },
      {
        "meta": {
          "name": "EmbeddedView"
        },
        "position": {
          "tabIndex": 3
        },
        "props": {
          "path": "Main-Views/Config-Tool/MainView"
        },
        "type": "ia.display.view"
      }
    ],
    "meta": {
      "name": "root"
    },
    "propConfig": {
      "props.currentTabIndex": {
        "onChange": {
          "enabled": null,
          "script": "\ttry:\n\t\tpageid \u003d self.view.custom.activityLogger.alt_pageid + \u0027/\u0027+ self.props.tabs[previousValue.value]\n\t\tpageid \u003d pageid.replace(\u0027 \u0027,\u0027\u0027)\n\t\tpayload \u003d activityLog.productMetrics.createActivityPayload(self.view, \u0027page\u0027, pageid, pageid)\n\t\tif payload:\n\t\t\tself.view.custom.activityLogger.start_time \u003d system.date.now()\n\t\t\tsystem.perspective.sendMessage(\u0027activityLogger-TabChanged\u0027, payload \u003d payload, scope \u003d \u0027page\u0027)\n\texcept:\n\t\tpass"
        }
      }
    },
    "props": {
      "currentTabIndex": 3,
      "tabs": [
        "CT",
        "S3",
        "Notify Tool",
        "Site Config"
      ]
    },
    "scripts": {
      "customMethods": [],
      "extensionFunctions": null,
      "messageHandlers": [
        {
          "messageType": "activityLogger-TabChanged",
          "pageScope": true,
          "script": "\t# implement your handler here\n\tif payload:\n\t\tactivityLog.productMetrics.callActivityLoggerAPI(payload)\n",
          "sessionScope": false,
          "viewScope": false
        }
      ]
    },
    "type": "ia.container.tab"
  }
}