{
  "productInfo" : {
    "company" : "HighByte",
    "product" : "IntelligenceHub",
    "version" : "4.3.4",
    "build" : "2026.3.19.3",
    "stage" : "Release"
  },
  "project" : {
    "version" : 12,
    "connections" : [ ],
    "inputs" : [ ],
    "outputs" : [ ],
    "modeling" : {
      "models" : [ ],
      "instances" : [ ]
    },
    "conditions" : [ ],
    "functions" : [ ],
    "tags" : [ ],
    "pipelines" : [ {
      "name" : "IncrementCounter",
      "tags" : [ ],
      "inputStages" : [ "IsResetCounter" ],
      "stages" : [ {
        "name" : "IncrementCounter",
        "display" : {
          "position" : {
            "x" : 690,
            "y" : 67
          }
        },
        "config" : {
          "type" : ".JavaScriptTransformConfig",
          "transformExpression" : "let currentCounter = state.pipeline.get(\"Counter\", 0);\r\ncurrentCounter++;\r\nstage.setMetadata(\"Counter\", currentCounter);\r\nstate.pipeline.set(\"Counter\", currentCounter);\r\nstage.setValue(event.value);"
        },
        "outputs" : [ ]
      }, {
        "name" : "ResetCounter",
        "display" : {
          "position" : {
            "x" : 690,
            "y" : -67
          }
        },
        "config" : {
          "type" : ".JavaScriptTransformConfig",
          "transformExpression" : "let currentCounter = state.pipeline.set(\"Counter\", 1);\r\nstage.setMetadata(\"Counter\", 1);\r\n\r\nstage.setValue(event.value);"
        },
        "outputs" : [ ]
      }, {
        "name" : "IsResetCounter",
        "display" : {
          "position" : {
            "x" : 240,
            "y" : 0
          }
        },
        "config" : {
          "type" : ".SwitchConfig",
          "switchCases" : [ {
            "expression" : "return Boolean(event.metadata.hasOwnProperty('ResetCounter'));",
            "outputs" : [ "ResetCounter" ],
            "description" : "Value Is True"
          }, {
            "expression" : "return true",
            "outputs" : [ "IncrementCounter" ],
            "description" : "Default"
          } ],
          "evaluationType" : "onFirst"
        },
        "outputs" : [ ]
      } ],
      "trackActivity" : true,
      "triggers" : [ {
        "name" : "PolledTrigger",
        "display" : {
          "position" : {
            "x" : -450,
            "y" : -67
          }
        },
        "config" : {
          "type" : ".TriggerPolled",
          "enabled" : true,
          "interval" : {
            "duration" : 10,
            "units" : "Seconds"
          }
        }
      }, {
        "name" : "CallableTrigger",
        "display" : {
          "position" : {
            "x" : -450,
            "y" : 67
          }
        },
        "config" : {
          "type" : ".TriggerCallable",
          "enabled" : true,
          "parameters" : {
            "type" : "EmptyParameters"
          }
        }
      } ],
      "errorHandler" : {
        "type" : "default"
      }
    }, {
      "name" : "ResetAtMidnightAndIncrementCounter",
      "tags" : [ ],
      "inputStages" : [ "ResetCounter" ],
      "stages" : [ {
        "name" : "ResetCounter",
        "display" : {
          "position" : {
            "x" : 240,
            "y" : 0
          }
        },
        "config" : {
          "type" : ".JavaScriptTransformConfig",
          "transformExpression" : "stage.setMetadata(\"ResetCounter\", true);\r\n\r\nstage.setValue(event.value);"
        },
        "outputs" : [ "IncrementCounter" ]
      }, {
        "name" : "IncrementCounter",
        "display" : {
          "position" : {
            "x" : 748,
            "y" : -22
          }
        },
        "config" : {
          "type" : ".SubPipelineConfig",
          "failureOutputs" : [ ],
          "reference" : "{{Pipeline.IncrementCounter}}"
        },
        "outputs" : [ ]
      } ],
      "trackActivity" : false,
      "triggers" : [ {
        "name" : "CronTrigger",
        "display" : {
          "position" : {
            "x" : -447,
            "y" : 25
          }
        },
        "config" : {
          "type" : ".TriggerCron",
          "enabled" : true,
          "logging" : "on",
          "schedule" : "0 0 * * *",
          "timezone" : "local"
        }
      } ],
      "errorHandler" : {
        "type" : "default"
      }
    } ],
    "namespace" : [ ]
  },
  "network" : {
    "groups" : [ ],
    "hubs" : [ ]
  }
}