<commit_before><!--
  ~  This file is part of Waltz.
  ~
  ~  Waltz is free software: you can redistribute it and/or modify
  ~  it under the terms of the GNU General Public License as published by
  ~  the Free Software Foundation, either version 3 of the License, or
  ~  (at your option) any later version.
  ~
  ~  Waltz is distributed in the hope that it will be useful,
  ~  but WITHOUT ANY WARRANTY; without even the implied warranty of
  ~  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  ~  GNU General Public License for more details.
  ~
  ~  You should have received a copy of the GNU General Public License
  ~  along with Waltz.  If not, see <http://www.gnu.org/licenses/>.
  ~
  -->

<div>

    <!-- HEADER -->
    <waltz-page-header name="{{ ctrl.groupDetail.appGroup.name }}"
                       icon="object-group"
                       small="{{ ctrl.groupDetail.appGroup.kind }}">
        <ol class="waltz-breadcrumbs">
            <li><a ui-sref="main">Home</a></li>
            <li>App Group</li>
            <li><span ng-bind="ctrl.groupDetail.appGroup.name"></span></li>
        </ol>

    </waltz-page-header>


    <!-- SUMMARY -->
    <waltz-app-group-summary class='waltz-page-summary-attach'
                             applications="ctrl.applications"
                             asset-costs="ctrl.assetCostData.stats"
                             complexity="ctrl.complexity"
                             server-stats="ctrl.techStats.serverStats"
                             app-group="ctrl.groupDetail.appGroup"
                             flows="ctrl.dataFlows.stats"
                             editable="ctrl.isGroupEditable()">
    </waltz-app-group-summary>


    <!-- CHANGE INITIATIVES -->
    <waltz-section name="Change Initiatives"
                   icon="paper-plane-o"
                   id="change-initiatives-section">

        <waltz-section-actions>
            <button class="btn btn-xs waltz-btn-transparent"
                    ng-click="ctrl.visibility.changeInitiativeOverlay = ! ctrl.visibility.changeInitiativeOverlay">
                <waltz-icon name="map-signs"></waltz-icon>
            </button>
        </waltz-section-actions>

        <waltz-source-data-overlay visible="ctrl.visibility.changeInitiativeOverlay"
                                   ratings="ctrl.sourceDataRatings"
                                   entities="['CHANGE_INITIATIVE']">
        </waltz-source-data-overlay>


        <waltz-change-initiative-table ng-if='ctrl.changeInitiatives.length > 0'
                                       list="ctrl.changeInitiatives">
        </waltz-change-initiative-table>

        <div class="alert alert-warning" ng-if="ctrl.changeInitiatives.length == 0">
            <strong>This group has not been associated to any Change Initiatives</strong>
        </div>

    </waltz-section>


    <!-- CAPABILITIES -->
    <waltz-rating-explorer-section applications="ctrl.applications"
                                   app-capabilities="ctrl.appCapabilities"
                                   capabilities="ctrl.capabilities"
                                   source-data-ratings="ctrl.sourceDataRatings"
                                   id="ratings-explorer-section">
    </waltz-rating-explorer-section>


    <!-- FLOWS -->
    <waltz-logical-flows-tabgroup-section ratings="ctrl.sourceDataRatings"
                                          flow-data="ctrl.dataFlows"
                                          on-load-detail="ctrl.loadFlowDetail"
                                          applications="ctrl.applications">
    </waltz-logical-flows-tabgroup-section>


    <!--LINEAGE REPORTS-->
    <waltz-section name="Lineage Reports">
        <waltz-section-actions>
            <button ng-click="ctrl.exportLineageReports()"
                    class="btn btn-xs btn-primary"
                    ng-if="ctrl.lineageReports.length > 0">
                Export
            </button>
        </waltz-section-actions>

        <waltz-physical-flow-table lineage="ctrl.lineageReports"
                                   on-initialise="ctrl.lineageTableInitialised"
                                   ng-if="ctrl.lineageReports.length > 0">
        </waltz-physical-flow-table>

        <div ng-if="ctrl.lineageReports.length == 0"
             class="alert alert-warning">
            <strong>No Lineage Reports</strong> have been defined
        </div>
    </waltz-section>


    <!-- AUTH SOURCES -->
    <waltz-section name="Authoritative Sources">
        <waltz-rated-flow-summary-panel apps="ctrl.applications"<commit_msg>app-group not remembering collapsed sections<commit_after><!--
  ~  This file is part of Waltz.
  ~
  ~  Waltz is free software: you can redistribute it and/or modify
  ~  it under the terms of the GNU General Public License as published by
  ~  the Free Software Foundation, either version 3 of the License, or
  ~  (at your option) any later version.
  ~
  ~  Waltz is distributed in the hope that it will be useful,
  ~  but WITHOUT ANY WARRANTY; without even the implied warranty of
  ~  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  ~  GNU General Public License for more details.
  ~
  ~  You should have received a copy of the GNU General Public License
  ~  along with Waltz.  If not, see <http://www.gnu.org/licenses/>.
  ~
  -->

<div>

    <!-- HEADER -->
    <waltz-page-header name="{{ ctrl.groupDetail.appGroup.name }}"
                       icon="object-group"
                       small="{{ ctrl.groupDetail.appGroup.kind }}">
        <ol class="waltz-breadcrumbs">
            <li><a ui-sref="main">Home</a></li>
            <li>App Group</li>
            <li><span ng-bind="ctrl.groupDetail.appGroup.name"></span></li>
        </ol>

    </waltz-page-header>


    <!-- SUMMARY -->
    <waltz-app-group-summary class='waltz-page-summary-attach'
                             applications="ctrl.applications"
                             asset-costs="ctrl.assetCostData.stats"
                             complexity="ctrl.complexity"
                             server-stats="ctrl.techStats.serverStats"
                             app-group="ctrl.groupDetail.appGroup"
                             flows="ctrl.dataFlows.stats"
                             editable="ctrl.isGroupEditable()">
    </waltz-app-group-summary>


    <!-- CHANGE INITIATIVES -->
    <waltz-section name="Change Initiatives"
                   icon="paper-plane-o"
                   id="change-initiatives-section">

        <waltz-section-actions>
            <button class="btn btn-xs waltz-btn-transparent"
                    ng-click="ctrl.visibility.changeInitiativeOverlay = ! ctrl.visibility.changeInitiativeOverlay">
                <waltz-icon name="map-signs"></waltz-icon>
            </button>
        </waltz-section-actions>

        <waltz-source-data-overlay visible="ctrl.visibility.changeInitiativeOverlay"
                                   ratings="ctrl.sourceDataRatings"
                                   entities="['CHANGE_INITIATIVE']">
        </waltz-source-data-overlay>


        <waltz-change-initiative-table ng-if='ctrl.changeInitiatives.length > 0'
                                       list="ctrl.changeInitiatives">
        </waltz-change-initiative-table>

        <div class="alert alert-warning" ng-if="ctrl.changeInitiatives.length == 0">
            <strong>This group has not been associated to any Change Initiatives</strong>
        </div>

    </waltz-section>


    <!-- CAPABILITIES -->
    <waltz-rating-explorer-section applications="ctrl.applications"
                                   app-capabilities="ctrl.appCapabilities"
                                   capabilities="ctrl.capabilities"
                                   source-data-ratings="ctrl.sourceDataRatings"
                                   id="ratings-explorer-section">
    </waltz-rating-explorer-section>


    <!-- FLOWS -->
    <waltz-logical-flows-tabgroup-section ratings="ctrl.sourceDataRatings"
                                          flow-data="ctrl.dataFlows"
                                          on-load-detail="ctrl.loadFlowDetail"
                                          applications="ctrl.applications">
    </waltz-logical-flows-tabgroup-section>


    <!--LINEAGE REPORTS-->
    <waltz-section name="Lineage Reports"
                   id="lineage-reports-section">
        <waltz-section-actions>
            <button ng-click="ctrl.exportLineageReports()"
                    class="btn btn-xs btn-primary"
                    ng-if="ctrl.lineageReports.length > 0">
                Export
            </button>
        </waltz-section-actions>

        <waltz-physical-flow-table lineage="ctrl.lineageReports"
                                   on-initialise="ctrl.lineageTableInitialised"
                                   ng-if="ctrl.lineageReports.length > 0">
        </waltz-physical-flow-table>

        <div ng-if="ctrl.lineageReports.length == 0"
             class="alert alert-warning">
            <strong>No Lineage Reports</strong> have been defined
        </div>
    </waltz-section>


    <!-- AUTH SOURCES -->
    <waltz-section name="Authoritative Sources"
                   id="auth-flows-section">
        <waltz-rated-flow-summary-panel apps="ctrl.applications"
{'fraction_non_alphanumeric': 0.11588486140724946, 'fraction_numerical': 0.001279317697228145, 'mean_word_length': 1.6925947187141217, 'pattern_counts': {'":': 0, '<': 123, '<?xml version=': 0, '>': 127, 'https://': 0, 'lorem ipsum': 0, 'www.': 2, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 30, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '2486406', 'n_tokens_mistral': 2588, 'n_tokens_neox': 2528, 'n_words': 473}