{
  "eventsAndFunctions": [
    {
      "algorithm": {
        "parameters": [],
        "statements": [
          {
            "command": "SetValue",
            "expression": "{}",
            "widgetName": "pnlOptions"
          },
          {
            "command": "WriteModel",
            "expression": "\"list\"",
            "modelVariableName": "presentationType"
          },
          {
            "command": "Execute",
            "expression": "refreshGoalMeasures()"
          }
        ],
        "typeReturn": "any",
        "variables": []
      },
      "name": "main_init"
    },
    {
      "algorithm": {
        "parameters": [
          {
            "name": "args",
            "type": "ArgsLoadRecords"
          }
        ],
        "statements": [
          {
            "command": "Return",
            "expression": "loadGoalMeasures(^args)"
          }
        ],
        "typeReturn": "any",
        "variables": []
      },
      "name": "goalMeasureCards_loadRecords"
    },
    {
      "algorithm": {
        "parameters": [
          {
            "name": "args",
            "type": "ArgsLoadRecords"
          }
        ],
        "statements": [
          {
            "command": "Return",
            "expression": "loadGoalMeasures(^args)"
          }
        ],
        "typeReturn": "any",
        "variables": []
      },
      "name": "goalMeasureGrid_loadRecords"
    },
    {
      "algorithm": {
        "parameters": [
          {
            "name": "recordRef",
            "type": "string"
          },
          {
            "name": "arg",
            "type": "string"
          }
        ],
        "statements": [
          {
            "command": "Execute",
            "expression": "refreshGoalMeasures()"
          }
        ],
        "typeReturn": "any",
        "variables": []
      },
      "name": "pnlOptions_handlerRecordAction_refresh"
    },
    {
      "algorithm": {
        "parameters": [
          {
            "name": "recordRef",
            "type": "string"
          },
          {
            "name": "arg",
            "type": "string"
          }
        ],
        "statements": [
          {
            "command": "WriteModel",
            "expression": "\"cards\"",
            "modelVariableName": "presentationType"
          },
          {
            "command": "Execute",
            "expression": "refreshGoalMeasures()"
          }
        ],
        "typeReturn": "any",
        "variables": []
      },
      "name": "pnlOptions_handlerRecordAction_cards"
    },
    {
      "algorithm": {
        "parameters": [
          {
            "name": "recordRef",
            "type": "string"
          },
          {
            "name": "arg",
            "type": "string"
          }
        ],
        "statements": [
          {
            "command": "WriteModel",
            "expression": "\"list\"",
            "modelVariableName": "presentationType"
          },
          {
            "command": "Execute",
            "expression": "refreshGoalMeasures()"
          }
        ],
        "typeReturn": "any",
        "variables": []
      },
      "name": "pnlOptions_handlerRecordAction_list"
    },
    {
      "algorithm": {
        "parameters": [
          {
            "name": "recordRef",
            "type": "string"
          },
          {
            "name": "arg",
            "type": "string"
          }
        ],
        "statements": [
          {
            "command": "ReadRecord",
            "expressionRecordRef": "^recordRef",
            "variableName": "measure",
            "widgetName": "goalMeasureCards"
          },
          {
            "command": "Execute",
            "expression": "editGoalMeasure(^measure)"
          }
        ],
        "typeReturn": "any",
        "variables": [
          {
            "name": "measure",
            "type": "ExtStrategicPlanMng.Measure"
          }
        ]
      },
      "name": "goalMeasureCards_handlerRecordAction_edit"
    },
    {
      "algorithm": {
        "parameters": [
          {
            "name": "recordRef",
            "type": "string"
          },
          {
            "name": "arg",
            "type": "string"
          }
        ],
        "statements": [
          {
            "command": "ReadRecord",
            "expressionRecordRef": "^recordRef",
            "variableName": "measure",
            "widgetName": "goalMeasureGrid"
          },
          {
            "command": "Execute",
            "expression": "editGoalMeasure(^measure)"
          }
        ],
        "typeReturn": "any",
        "variables": [
          {
            "name": "measure",
            "type": "ExtStrategicPlanMng.Measure"
          }
        ]
      },
      "name": "goalMeasureGrid_handlerRecordAction_edit"
    },
    {
      "algorithm": {
        "parameters": [
          {
            "name": "recordRef",
            "type": "string"
          },
          {
            "name": "arg",
            "type": "string"
          }
        ],
        "statements": [
          {
            "command": "ReadRecord",
            "expressionRecordRef": "^recordRef",
            "variableName": "measure",
            "widgetName": "goalMeasureGrid"
          },
          {
            "command": "Execute",
            "expression": "removeGoalMeasure(^measure)"
          }
        ],
        "typeReturn": "any",
        "variables": [
          {
            "name": "measure",
            "type": "ExtStrategicPlanMng.Measure"
          }
        ]
      },
      "name": "goalMeasureGrid_handlerRecordAction_remove"
    },
    {
      "algorithm": {
        "parameters": [
          {
            "name": "recordRef",
            "type": "string"
          },
          {
            "name": "arg",
            "type": "string"
          }
        ],
        "statements": [
          {
            "command": "ReadRecord",
            "expressionRecordRef": "^recordRef",
            "variableName": "measure",
            "widgetName": "goalMeasureCards"
          },
          {
            "command": "Execute",
            "expression": "removeGoalMeasure(^measure)"
          }
        ],
        "typeReturn": "any",
        "variables": [
          {
            "name": "measure",
            "type": "ExtStrategicPlanMng.Measure"
          }
        ]
      },
      "name": "goalMeasureCards_handlerRecordAction_remove"
    },
    {
      "algorithm": {
        "parameters": [
          {
            "name": "args",
            "type": "ArgsLoadRecords"
          }
        ],
        "statements": [
          {
            "command": "ReadModel",
            "modelVariableName": "planId",
            "variableName": "planId"
          },
          {
            "command": "ReadModel",
            "modelVariableName": "goalId",
            "variableName": "goalId"
          },
          {
            "command": "ReadModel",
            "modelVariableName": "mainGoalId",
            "variableName": "mainGoalId"
          },
          {
            "command": "ReadModel",
            "modelVariableName": "goalType",
            "variableName": "goalType"
          },
          {
            "command": "Set",
            "expression": "[]",
            "variableName": "list"
          },
          {
            "command": "Set",
            "expression": "ExtStrategicPlanMng.PlanGoalMeasureList(^planId, ^mainGoalId, ^goalId)",
            "variableName": "list"
          },
          {
            "command": "Return",
            "expression": "^list"
          }
        ],
        "typeReturn": "list(ExtStrategicPlanMng.Measure)",
        "variables": [
          {
            "name": "goalType",
            "type": "string"
          },
          {
            "name": "goalId",
            "type": "string"
          },
          {
            "name": "mainGoalId",
            "type": "string"
          },
          {
            "name": "planId",
            "type": "string"
          },
          {
            "name": "list",
            "type": "list(ExtStrategicPlanMng.Measure)"
          }
        ]
      },
      "name": "loadGoalMeasures"
    },
    {
      "algorithm": {
        "parameters": [],
        "statements": [
          {
            "command": "ReadModel",
            "modelVariableName": "presentationType",
            "variableName": "presentationType"
          },
          {
            "command": "Switch",
            "expression": "^presentationType"
          },
          {
            "children": [
              {
                "command": "Hide",
                "widgetName": "goalMeasureGridContainer"
              },
              {
                "command": "Refresh",
                "widgetName": "goalMeasureCards"
              },
              {
                "command": "Show",
                "widgetName": "goalMeasureCardsContainer"
              }
            ],
            "command": "Case",
            "expression": "\"cards\""
          },
          {
            "children": [
              {
                "command": "Hide",
                "widgetName": "goalMeasureCardsContainer"
              },
              {
                "command": "Refresh",
                "widgetName": "goalMeasureGrid"
              },
              {
                "command": "Show",
                "widgetName": "goalMeasureGridContainer"
              }
            ],
            "command": "Case",
            "expression": "\"list\""
          }
        ],
        "typeReturn": "any",
        "variables": [
          {
            "name": "presentationType",
            "type": "string"
          }
        ]
      },
      "name": "refreshGoalMeasures"
    },
    {
      "algorithm": {
        "parameters": [
          {
            "name": "measure",
            "type": "ExtStrategicPlanMng.Measure"
          }
        ],
        "statements": [
          {
            "command": "ReadModel",
            "modelVariableName": "planId",
            "variableName": "planId"
          },
          {
            "command": "ReadModel",
            "modelVariableName": "goalId",
            "variableName": "goalId"
          },
          {
            "command": "ReadModel",
            "modelVariableName": "mainGoalId",
            "variableName": "mainGoalId"
          },
          {
            "buttons": "ok-cancel",
            "command": "Open",
            "expressionIcon": "\"edit.svg\"",
            "expressionStartModel": "{measure: ^measure, mainGoalId: ^mainGoalId, planId: ^planId, goalId: ^goalId}",
            "expressionTitle": "\"[[Edit]] \" + ^measure.name",
            "mode": "right-drawer",
            "size": "default",
            "uiComponentName": "CmpSpEmpty"
          },
          {
            "children": [
              {
                "command": "Execute",
                "expression": "refreshGoalMeasures()"
              },
              {
                "command": "CloseCurrent"
              }
            ],
            "command": "OnOk",
            "variableNameOpenedModel": "openedModel"
          }
        ],
        "typeReturn": "any",
        "variables": [
          {
            "name": "openedModel",
            "type": "any"
          },
          {
            "name": "planId",
            "type": "string"
          },
          {
            "name": "goalId",
            "type": "string"
          },
          {
            "name": "mainGoalId",
            "type": "string"
          }
        ]
      },
      "name": "editGoalMeasure"
    },
    {
      "algorithm": {
        "parameters": [
          {
            "name": "measure",
            "type": "ExtStrategicPlanMng.Measure"
          }
        ],
        "statements": [
          {
            "command": "ReadModel",
            "modelVariableName": "planId",
            "variableName": "planId"
          },
          {
            "command": "ReadModel",
            "modelVariableName": "goalId",
            "variableName": "goalId"
          },
          {
            "command": "ReadModel",
            "modelVariableName": "mainGoalId",
            "variableName": "mainGoalId"
          },
          {
            "command": "ConfirmMessage",
            "expressionMessage": "\"[[ConfirmDeleteGoalMeasure]]\"",
            "expressionTitle": "\"[[ConfirmDelete]] \" + ^measure.name"
          },
          {
            "children": [
              {
                "command": "Execute",
                "expression": "ExtStrategicPlanMng.PlanGoalMeasureRemove(^planId, ^mainGoalId, ^goalId, ^measure.id)"
              },
              {
                "command": "Execute",
                "expression": "refreshGoalMeasures()"
              }
            ],
            "command": "OnYes"
          }
        ],
        "typeReturn": "any",
        "variables": [
          {
            "name": "planId",
            "type": "string"
          },
          {
            "name": "goalId",
            "type": "string"
          },
          {
            "name": "mainGoalId",
            "type": "string"
          }
        ]
      },
      "name": "removeGoalMeasure"
    }
  ],
  "model": [
    {
      "name": "goalId",
      "required": true,
      "type": "string"
    },
    {
      "name": "goalType",
      "required": true,
      "type": "string"
    },
    {
      "name": "planId",
      "required": true,
      "type": "string"
    },
    {
      "name": "mainGoalId",
      "required": false,
      "type": "string"
    },
    {
      "name": "presentationType",
      "required": false,
      "type": "string"
    }
  ],
  "root": {
    "children": [
      {
        "actions": [
          {
            "icon": "add.svg",
            "key": "add",
            "text": "[[Add]]"
          }
        ],
        "children": [
          {
            "htmlTemplate": "<div style=\"display: inline-flex\">\n   <div title=\"\" class=\"blz-btn blz-btn-default blz-toolbar-element blz-component-class-enabled plain\n      blz-border-radius blz-cast-shadow blz-border-top blz-border-right blz-border-left blz-border-bottom\" style=\"width: auto; background-color: white;\" tabindex=\"-1\" onclick=\"[RecordAction:cards]\">\n      <span id=\"blz-button-10653-33-blz-btn-icon\" class=\"blz-btn-icon\">\n      <img src=\"./icons/cards.svg\" style=\"width: 16px;\"/>\n      </span>\n      <span id=\"blz-button-10653-33-blz-btn-text\" class=\"blz-btn-text\"></span>\n      <input type=\"text\" id=\"blz-button-10653-33-focus\" style=\"width: 1px; height: 1px;\">\n   </div>\n   <div title=\"\" class=\"blz-btn blz-btn-default blz-toolbar-element blz-component-class-enabled plain \n      blz-border-radius blz-cast-shadow blz-border-top blz-border-right blz-border-left blz-border-bottom\" style=\"width: auto; background-color: white;\" tabindex=\"-1\" onclick=\"[RecordAction:list]\">\n      <span id=\"blz-button-10653-33-blz-btn-icon\" class=\"blz-btn-icon\">\n      [Icon:list.svg]\n      </span>\n      <span id=\"blz-button-10653-33-blz-btn-text\" class=\"blz-btn-text\"></span>\n      <input type=\"text\" id=\"blz-button-10653-33-focus\" style=\"width: 1px; height: 1px;\">\n   </div>\n   <div class=\"blz-btn blz-btn-default blz-toolbar-element blz-component-class-enabled plain \n      blz-border-radius blz-cast-shadow blz-border-top blz-border-right blz-border-left blz-border-bottom\"\n      style=\"width: auto; background-color: white;\" tabindex=\"-1\" onclick=\"[RecordAction:refresh]\">\n      <span class=\"blz-btn-icon\">\n      [Icon:refresh.svg]\n      </span>\n      <span class=\"blz-btn-text\"></span>\n      <input type=\"text\" style=\"width: 1px; height: 1px;\">\n   </div>\n</div>",
            "name": "pnlOptions",
            "recordActions": [
              {
                "key": "cards"
              },
              {
                "key": "list"
              },
              {
                "key": "refresh"
              }
            ],
            "widget": "HtmlRenderer"
          }
        ],
        "layout": "responsive",
        "name": "pnlOptionsContainer",
        "title": "[[Blank]]"
      },
      {
        "children": [
          {
            "cssClass": "blz-cards-main",
            "htmlTemplate": "<section class=\"blz-cards-brief\">\n    <article class=\"blz-cards-header\">\n        <section class=\"blz-cards-header-logo\">\n\t\t\t<img class=\"header-img\" src=\"./icons/goal.svg\"/>\n\t\t</section>\n        <section class=\"blz-cards-title\">\n            <article class=\"header-title\">\n                <span class=\"blz-text-title-md blz-text-bold blz-text-xlarge\">{{name}}</span>\n                <section>\n                    <span>[[Code]]: {{id}}</span>                     \n                </section>\n            </article>\n           <section class=\"blz-cards-header-dots\" style=\"max-width: 24px; max-height: 24px;\" onclick=\"[MultipleRecordAction:edit,remove]\">[Icon:dots-menu.svg]</section>\n        </section>\n    </article>\n    <article class=\"blz-cards-middle\">\n        <section class=\"blz-area-information\">\n            <p class=\"blz-text-bold blz-text-large\"><span>{{description}}</span></p> \n        </section>\n    </article>\n    <article class=\"blz-cards-content blz-area-brief\">\n         <span>[[Type]]: {{type}} </span>\n         <span>[[Category]] : {{category}}</span>\n         <span>[[UnitOfMeasure]]: {{unitOfMeasure.name}}</span>        \n    </article>\n</section>",
            "name": "goalMeasureCards",
            "pageSize": 10,
            "recordActions": [
              {
                "icon": "edit.svg",
                "key": "edit",
                "text": "[[Edit]]"
              },
              {
                "icon": "remove.svg",
                "key": "remove",
                "text": "[[Remove]]"
              }
            ],
            "typeName": "ExtStrategicPlanMng.Measure",
            "widget": "HtmlRepeater",
            "withPaging": true
          }
        ],
        "layout": "responsive",
        "name": "goalMeasureCardsContainer"
      },
      {
        "children": [
          {
            "columns": [
              {
                "align": "left",
                "bindText": "name",
                "header": "[[Name]]",
                "key": "name"
              },
              {
                "align": "left",
                "bindText": "type",
                "header": "[[Type]]",
                "key": "type"
              },
              {
                "align": "left",
                "bindText": "description",
                "header": "[[Description]]",
                "key": "description",
                "size": 2
              },
              {
                "align": "left",
                "bindText": "category",
                "header": "[[Category]]",
                "key": "category"
              },
              {
                "align": "right",
                "bindText": "unitOfMeasure.name",
                "header": "[[UnitOfMeasure]]",
                "key": "unitOfMeasure"
              }
            ],
            "name": "goalMeasureGrid",
            "pageSize": 10,
            "recordActions": [
              {
                "contextMenu": true,
                "icon": "edit.svg",
                "key": "edit",
                "text": "[[Edit]]"
              },
              {
                "contextMenu": true,
                "icon": "remove.svg",
                "key": "remove",
                "text": "[[Remove]]"
              }
            ],
            "typeName": "ExtStrategicPlanMng.Measure",
            "widget": "Grid",
            "withPaging": true
          }
        ],
        "layout": "responsive",
        "name": "goalMeasureGridContainer"
      }
    ],
    "cssClass": "blz-area-default blz-padding-top blz-padding-right blz-padding-left blz-padding-bottom",
    "layout": "responsive"
  },
  "routing": null,
  "unused": []
}