@zeedhi/common 3.0.5 → 3.0.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/types/components/zd-date-input/date-input.d.ts +1 -1
- package/dist/types/components/zd-date-range/date-range.d.ts +3 -1
- package/dist/types/components/zd-iterable/iterable.d.ts +9 -0
- package/dist/types/utils/date-utils/date-utils.d.ts +1 -0
- package/dist/zd-common.js +75 -24
- package/dist/zd-common.min.js +75 -24
- package/environments.json +6 -0
- package/jest.config.cjs +1 -0
- package/package.json +6 -3
- package/src/components/zd-date-input/date-input.ts +9 -21
- package/src/components/zd-date-range/date-range.ts +27 -4
- package/src/components/zd-iterable/iterable.ts +41 -3
- package/src/utils/date-utils/date-utils.ts +18 -0
- package/tests/unit/components/zd-component/component.spec.ts +3 -2
- package/tests/unit/components/zd-date-range/date-range.spec.ts +189 -23
- package/tests/unit/components/zd-grid/grid.spec.ts +48 -35
- package/tests/unit/components/zd-grid-editable/data-editor.spec.ts +1 -1
- package/tests/unit/components/zd-grid-editable/grid-editable.spec.ts +1 -1
- package/tests/unit/components/zd-iterable/column.spec.ts +42 -0
- package/tests/unit/utils/mock-console.ts +18 -0
- package/.package.json +0 -45
- package/coverage/clover.xml +0 -5741
- package/coverage/coverage-final.json +0 -144
- package/coverage/lcov-report/base.css +0 -224
- package/coverage/lcov-report/block-navigation.js +0 -87
- package/coverage/lcov-report/favicon.png +0 -0
- package/coverage/lcov-report/index.html +0 -1316
- package/coverage/lcov-report/prettify.css +0 -1
- package/coverage/lcov-report/prettify.js +0 -2
- package/coverage/lcov-report/sort-arrow-sprite.png +0 -0
- package/coverage/lcov-report/sorter.js +0 -210
- package/coverage/lcov-report/src/components/index.html +0 -116
- package/coverage/lcov-report/src/components/index.ts.html +0 -730
- package/coverage/lcov-report/src/components/zd-alert/alert.ts.html +0 -502
- package/coverage/lcov-report/src/components/zd-alert/index.html +0 -116
- package/coverage/lcov-report/src/components/zd-badge/badge.ts.html +0 -226
- package/coverage/lcov-report/src/components/zd-badge/index.html +0 -116
- package/coverage/lcov-report/src/components/zd-breadcrumbs/breadcrumbs.ts.html +0 -226
- package/coverage/lcov-report/src/components/zd-breadcrumbs/index.html +0 -116
- package/coverage/lcov-report/src/components/zd-button/button.ts.html +0 -706
- package/coverage/lcov-report/src/components/zd-button/index.html +0 -116
- package/coverage/lcov-report/src/components/zd-button-group/button-group.ts.html +0 -412
- package/coverage/lcov-report/src/components/zd-button-group/index.html +0 -116
- package/coverage/lcov-report/src/components/zd-card/card.ts.html +0 -748
- package/coverage/lcov-report/src/components/zd-card/index.html +0 -116
- package/coverage/lcov-report/src/components/zd-carousel/carousel.ts.html +0 -949
- package/coverage/lcov-report/src/components/zd-carousel/index.html +0 -116
- package/coverage/lcov-report/src/components/zd-checkbox/checkbox.ts.html +0 -148
- package/coverage/lcov-report/src/components/zd-checkbox/index.html +0 -116
- package/coverage/lcov-report/src/components/zd-checkbox-multiple/checkbox-multiple.ts.html +0 -313
- package/coverage/lcov-report/src/components/zd-checkbox-multiple/index.html +0 -116
- package/coverage/lcov-report/src/components/zd-chip/chip.ts.html +0 -352
- package/coverage/lcov-report/src/components/zd-chip/index.html +0 -116
- package/coverage/lcov-report/src/components/zd-code-viewer/code-viewer.ts.html +0 -682
- package/coverage/lcov-report/src/components/zd-code-viewer/index.html +0 -116
- package/coverage/lcov-report/src/components/zd-col/col.ts.html +0 -250
- package/coverage/lcov-report/src/components/zd-col/index.html +0 -116
- package/coverage/lcov-report/src/components/zd-collapse-card/collapse-card.ts.html +0 -343
- package/coverage/lcov-report/src/components/zd-collapse-card/index.html +0 -116
- package/coverage/lcov-report/src/components/zd-component/child-not-found.ts.html +0 -109
- package/coverage/lcov-report/src/components/zd-component/component-render.ts.html +0 -160
- package/coverage/lcov-report/src/components/zd-component/component.ts.html +0 -1084
- package/coverage/lcov-report/src/components/zd-component/index.html +0 -146
- package/coverage/lcov-report/src/components/zd-container/container.ts.html +0 -289
- package/coverage/lcov-report/src/components/zd-container/index.html +0 -116
- package/coverage/lcov-report/src/components/zd-currency/currency.ts.html +0 -259
- package/coverage/lcov-report/src/components/zd-currency/index.html +0 -116
- package/coverage/lcov-report/src/components/zd-date-input/date-input.ts.html +0 -1798
- package/coverage/lcov-report/src/components/zd-date-input/index.html +0 -116
- package/coverage/lcov-report/src/components/zd-date-range/date-range.ts.html +0 -2167
- package/coverage/lcov-report/src/components/zd-date-range/index.html +0 -116
- package/coverage/lcov-report/src/components/zd-dialog/dialog.ts.html +0 -541
- package/coverage/lcov-report/src/components/zd-dialog/index.html +0 -116
- package/coverage/lcov-report/src/components/zd-divider/divider.ts.html +0 -178
- package/coverage/lcov-report/src/components/zd-divider/index.html +0 -116
- package/coverage/lcov-report/src/components/zd-dropdown/dropdown.ts.html +0 -460
- package/coverage/lcov-report/src/components/zd-dropdown/index.html +0 -116
- package/coverage/lcov-report/src/components/zd-footer/footer.ts.html +0 -451
- package/coverage/lcov-report/src/components/zd-footer/index.html +0 -116
- package/coverage/lcov-report/src/components/zd-form/form.ts.html +0 -1075
- package/coverage/lcov-report/src/components/zd-form/index.html +0 -116
- package/coverage/lcov-report/src/components/zd-frame/frame.ts.html +0 -763
- package/coverage/lcov-report/src/components/zd-frame/index.html +0 -116
- package/coverage/lcov-report/src/components/zd-frame-page/frame-page.ts.html +0 -169
- package/coverage/lcov-report/src/components/zd-frame-page/index.html +0 -116
- package/coverage/lcov-report/src/components/zd-grid/data-navigator.ts.html +0 -304
- package/coverage/lcov-report/src/components/zd-grid/data-selector.ts.html +0 -532
- package/coverage/lcov-report/src/components/zd-grid/grid-column.ts.html +0 -709
- package/coverage/lcov-report/src/components/zd-grid/grid-events.ts.html +0 -244
- package/coverage/lcov-report/src/components/zd-grid/grid.ts.html +0 -1042
- package/coverage/lcov-report/src/components/zd-grid/index.html +0 -266
- package/coverage/lcov-report/src/components/zd-grid/index.ts.html +0 -118
- package/coverage/lcov-report/src/components/zd-grid/iterable-table.ts.html +0 -274
- package/coverage/lcov-report/src/components/zd-grid/keymap-merger.ts.html +0 -241
- package/coverage/lcov-report/src/components/zd-grid/keymap-navigation.ts.html +0 -313
- package/coverage/lcov-report/src/components/zd-grid/table-action-builder.ts.html +0 -427
- package/coverage/lcov-report/src/components/zd-grid/view-navigator.ts.html +0 -175
- package/coverage/lcov-report/src/components/zd-grid-editable/data-editor-with-add.ts.html +0 -826
- package/coverage/lcov-report/src/components/zd-grid-editable/data-editor.ts.html +0 -1570
- package/coverage/lcov-report/src/components/zd-grid-editable/errors/index.html +0 -146
- package/coverage/lcov-report/src/components/zd-grid-editable/errors/index.ts.html +0 -91
- package/coverage/lcov-report/src/components/zd-grid-editable/errors/not-editing.ts.html +0 -109
- package/coverage/lcov-report/src/components/zd-grid-editable/errors/row-not-found.ts.html +0 -109
- package/coverage/lcov-report/src/components/zd-grid-editable/grid-column-editable.ts.html +0 -130
- package/coverage/lcov-report/src/components/zd-grid-editable/grid-editable-controller.ts.html +0 -139
- package/coverage/lcov-report/src/components/zd-grid-editable/grid-editable-events.ts.html +0 -430
- package/coverage/lcov-report/src/components/zd-grid-editable/grid-editable.ts.html +0 -1477
- package/coverage/lcov-report/src/components/zd-grid-editable/index.html +0 -221
- package/coverage/lcov-report/src/components/zd-grid-editable/index.ts.html +0 -109
- package/coverage/lcov-report/src/components/zd-grid-editable/keymap-editing.ts.html +0 -139
- package/coverage/lcov-report/src/components/zd-header/header.ts.html +0 -502
- package/coverage/lcov-report/src/components/zd-header/index.html +0 -116
- package/coverage/lcov-report/src/components/zd-icon/icon.ts.html +0 -325
- package/coverage/lcov-report/src/components/zd-icon/index.html +0 -116
- package/coverage/lcov-report/src/components/zd-image/image.ts.html +0 -424
- package/coverage/lcov-report/src/components/zd-image/index.html +0 -116
- package/coverage/lcov-report/src/components/zd-increment/increment.ts.html +0 -436
- package/coverage/lcov-report/src/components/zd-increment/index.html +0 -116
- package/coverage/lcov-report/src/components/zd-input/index.html +0 -131
- package/coverage/lcov-report/src/components/zd-input/input-factory.ts.html +0 -130
- package/coverage/lcov-report/src/components/zd-input/input.ts.html +0 -1345
- package/coverage/lcov-report/src/components/zd-iterable/column-not-found.ts.html +0 -109
- package/coverage/lcov-report/src/components/zd-iterable/column.ts.html +0 -823
- package/coverage/lcov-report/src/components/zd-iterable/conditions-manager.ts.html +0 -523
- package/coverage/lcov-report/src/components/zd-iterable/index.html +0 -281
- package/coverage/lcov-report/src/components/zd-iterable/iterable-columns-button-controller.ts.html +0 -136
- package/coverage/lcov-report/src/components/zd-iterable/iterable-columns-button.ts.html +0 -313
- package/coverage/lcov-report/src/components/zd-iterable/iterable-controller.ts.html +0 -166
- package/coverage/lcov-report/src/components/zd-iterable/iterable-page-component.ts.html +0 -244
- package/coverage/lcov-report/src/components/zd-iterable/iterable-page-info.ts.html +0 -106
- package/coverage/lcov-report/src/components/zd-iterable/iterable-page-size.ts.html +0 -421
- package/coverage/lcov-report/src/components/zd-iterable/iterable-pagination.ts.html +0 -208
- package/coverage/lcov-report/src/components/zd-iterable/iterable.ts.html +0 -820
- package/coverage/lcov-report/src/components/zd-iterable/search.ts.html +0 -343
- package/coverage/lcov-report/src/components/zd-iterable-component-render/index.html +0 -116
- package/coverage/lcov-report/src/components/zd-iterable-component-render/iterable-component-render.ts.html +0 -592
- package/coverage/lcov-report/src/components/zd-layout/index.html +0 -116
- package/coverage/lcov-report/src/components/zd-layout/layout.ts.html +0 -145
- package/coverage/lcov-report/src/components/zd-list/index.html +0 -161
- package/coverage/lcov-report/src/components/zd-list/item-not-found.ts.html +0 -109
- package/coverage/lcov-report/src/components/zd-list/list-group.ts.html +0 -241
- package/coverage/lcov-report/src/components/zd-list/list-item.ts.html +0 -298
- package/coverage/lcov-report/src/components/zd-list/list.ts.html +0 -460
- package/coverage/lcov-report/src/components/zd-loading/index.html +0 -116
- package/coverage/lcov-report/src/components/zd-loading/loading.ts.html +0 -217
- package/coverage/lcov-report/src/components/zd-login/index.html +0 -131
- package/coverage/lcov-report/src/components/zd-login/login-button.ts.html +0 -421
- package/coverage/lcov-report/src/components/zd-login/login.ts.html +0 -340
- package/coverage/lcov-report/src/components/zd-main/index.html +0 -116
- package/coverage/lcov-report/src/components/zd-main/main.ts.html +0 -133
- package/coverage/lcov-report/src/components/zd-master-detail/detail-not-found.ts.html +0 -118
- package/coverage/lcov-report/src/components/zd-master-detail/index.html +0 -146
- package/coverage/lcov-report/src/components/zd-master-detail/master-detail.ts.html +0 -331
- package/coverage/lcov-report/src/components/zd-master-detail/master-not-found.ts.html +0 -118
- package/coverage/lcov-report/src/components/zd-menu/index.html +0 -176
- package/coverage/lcov-report/src/components/zd-menu/menu-button.ts.html +0 -241
- package/coverage/lcov-report/src/components/zd-menu/menu-group.ts.html +0 -400
- package/coverage/lcov-report/src/components/zd-menu/menu-link.ts.html +0 -337
- package/coverage/lcov-report/src/components/zd-menu/menu-separator.ts.html +0 -106
- package/coverage/lcov-report/src/components/zd-menu/menu.ts.html +0 -1384
- package/coverage/lcov-report/src/components/zd-modal/index.html +0 -131
- package/coverage/lcov-report/src/components/zd-modal/modal-close-button.ts.html +0 -220
- package/coverage/lcov-report/src/components/zd-modal/modal.ts.html +0 -355
- package/coverage/lcov-report/src/components/zd-month/index.html +0 -116
- package/coverage/lcov-report/src/components/zd-month/month.ts.html +0 -568
- package/coverage/lcov-report/src/components/zd-number-input/index.html +0 -116
- package/coverage/lcov-report/src/components/zd-number-input/number-input.ts.html +0 -532
- package/coverage/lcov-report/src/components/zd-password/index.html +0 -116
- package/coverage/lcov-report/src/components/zd-password/password.ts.html +0 -220
- package/coverage/lcov-report/src/components/zd-progress/index.html +0 -116
- package/coverage/lcov-report/src/components/zd-progress/progress.ts.html +0 -262
- package/coverage/lcov-report/src/components/zd-radio/index.html +0 -116
- package/coverage/lcov-report/src/components/zd-radio/radio.ts.html +0 -289
- package/coverage/lcov-report/src/components/zd-row/index.html +0 -116
- package/coverage/lcov-report/src/components/zd-row/row.ts.html +0 -256
- package/coverage/lcov-report/src/components/zd-select/index.html +0 -116
- package/coverage/lcov-report/src/components/zd-select/select.ts.html +0 -2089
- package/coverage/lcov-report/src/components/zd-select-multiple/index.html +0 -116
- package/coverage/lcov-report/src/components/zd-select-multiple/select-multiple.ts.html +0 -1549
- package/coverage/lcov-report/src/components/zd-svg-map/index.html +0 -116
- package/coverage/lcov-report/src/components/zd-svg-map/svg-map.ts.html +0 -475
- package/coverage/lcov-report/src/components/zd-switch/index.html +0 -116
- package/coverage/lcov-report/src/components/zd-switch/switch.ts.html +0 -163
- package/coverage/lcov-report/src/components/zd-table/index.html +0 -116
- package/coverage/lcov-report/src/components/zd-table/table.ts.html +0 -280
- package/coverage/lcov-report/src/components/zd-tabs/index.html +0 -146
- package/coverage/lcov-report/src/components/zd-tabs/tab-not-found.ts.html +0 -127
- package/coverage/lcov-report/src/components/zd-tabs/tab.ts.html +0 -370
- package/coverage/lcov-report/src/components/zd-tabs/tabs.ts.html +0 -586
- package/coverage/lcov-report/src/components/zd-tag/index.html +0 -116
- package/coverage/lcov-report/src/components/zd-tag/tag.ts.html +0 -142
- package/coverage/lcov-report/src/components/zd-text/index.html +0 -116
- package/coverage/lcov-report/src/components/zd-text/text.ts.html +0 -136
- package/coverage/lcov-report/src/components/zd-text-input/index.html +0 -116
- package/coverage/lcov-report/src/components/zd-text-input/text-input.ts.html +0 -778
- package/coverage/lcov-report/src/components/zd-textarea/index.html +0 -116
- package/coverage/lcov-report/src/components/zd-textarea/textarea.ts.html +0 -418
- package/coverage/lcov-report/src/components/zd-time/index.html +0 -131
- package/coverage/lcov-report/src/components/zd-time/time-format-selector.ts.html +0 -157
- package/coverage/lcov-report/src/components/zd-time/time.ts.html +0 -1687
- package/coverage/lcov-report/src/components/zd-toggleable/index.html +0 -116
- package/coverage/lcov-report/src/components/zd-toggleable/toggleable.ts.html +0 -196
- package/coverage/lcov-report/src/components/zd-tooltip/index.html +0 -116
- package/coverage/lcov-report/src/components/zd-tooltip/tooltip.ts.html +0 -340
- package/coverage/lcov-report/src/components/zd-tree/index.html +0 -116
- package/coverage/lcov-report/src/components/zd-tree/tree.ts.html +0 -1849
- package/coverage/lcov-report/src/components/zd-tree-grid/index.html +0 -191
- package/coverage/lcov-report/src/components/zd-tree-grid/index.ts.html +0 -103
- package/coverage/lcov-report/src/components/zd-tree-grid/iterable-tree.ts.html +0 -202
- package/coverage/lcov-report/src/components/zd-tree-grid/keymap-tree.ts.html +0 -154
- package/coverage/lcov-report/src/components/zd-tree-grid/tree-data-navigator.ts.html +0 -235
- package/coverage/lcov-report/src/components/zd-tree-grid/tree-data-selector.ts.html +0 -448
- package/coverage/lcov-report/src/components/zd-tree-grid/tree-grid.ts.html +0 -1390
- package/coverage/lcov-report/src/error/delete-rows.ts.html +0 -124
- package/coverage/lcov-report/src/error/index.html +0 -161
- package/coverage/lcov-report/src/error/index.ts.html +0 -94
- package/coverage/lcov-report/src/error/non-initialized.ts.html +0 -118
- package/coverage/lcov-report/src/error/zeedhi-error.ts.html +0 -109
- package/coverage/lcov-report/src/index.html +0 -116
- package/coverage/lcov-report/src/index.ts.html +0 -145
- package/coverage/lcov-report/src/services/index.html +0 -116
- package/coverage/lcov-report/src/services/index.ts.html +0 -97
- package/coverage/lcov-report/src/services/zd-alert/alert-queue.ts.html +0 -205
- package/coverage/lcov-report/src/services/zd-alert/alert-replace.ts.html +0 -220
- package/coverage/lcov-report/src/services/zd-alert/alert-service.ts.html +0 -316
- package/coverage/lcov-report/src/services/zd-alert/alert-stack.ts.html +0 -172
- package/coverage/lcov-report/src/services/zd-alert/index.html +0 -176
- package/coverage/lcov-report/src/services/zd-alert/index.ts.html +0 -100
- package/coverage/lcov-report/src/services/zd-dialog/dialog-service.ts.html +0 -205
- package/coverage/lcov-report/src/services/zd-dialog/index.html +0 -116
- package/coverage/lcov-report/src/services/zd-loading/index.html +0 -116
- package/coverage/lcov-report/src/services/zd-loading/loading-service.ts.html +0 -157
- package/coverage/lcov-report/src/services/zd-modal/index.html +0 -116
- package/coverage/lcov-report/src/services/zd-modal/modal-service.ts.html +0 -298
- package/coverage/lcov-report/src/utils/data-value-out/data-value-out.ts.html +0 -202
- package/coverage/lcov-report/src/utils/data-value-out/index.html +0 -131
- package/coverage/lcov-report/src/utils/data-value-out/index.ts.html +0 -91
- package/coverage/lcov-report/src/utils/datasource-searcher/datasource-searcher.ts.html +0 -241
- package/coverage/lcov-report/src/utils/datasource-searcher/index.html +0 -131
- package/coverage/lcov-report/src/utils/datasource-searcher/index.ts.html +0 -91
- package/coverage/lcov-report/src/utils/icons/icons.ts.html +0 -547
- package/coverage/lcov-report/src/utils/icons/index.html +0 -116
- package/coverage/lcov-report/src/utils/index.html +0 -116
- package/coverage/lcov-report/src/utils/index.ts.html +0 -106
- package/coverage/lcov-report/src/utils/omit/index.html +0 -116
- package/coverage/lcov-report/src/utils/omit/omit.ts.html +0 -124
- package/coverage/lcov-report/src/utils/theme/index.html +0 -116
- package/coverage/lcov-report/src/utils/theme/theme.ts.html +0 -679
- package/coverage/lcov-report/src/utils/tree-data-structure/index.html +0 -131
- package/coverage/lcov-report/src/utils/tree-data-structure/index.ts.html +0 -91
- package/coverage/lcov-report/src/utils/tree-data-structure/tree-data-structure.ts.html +0 -1645
- package/coverage/lcov-report/src/utils/unique-by/index.html +0 -116
- package/coverage/lcov-report/src/utils/unique-by/unique-by.ts.html +0 -130
- package/coverage/lcov-report/tests/unit/components/zd-component/ComponentMock.ts.html +0 -166
- package/coverage/lcov-report/tests/unit/components/zd-component/index.html +0 -116
- package/coverage/lcov.info +0 -10206
- package/tests/unit/utils/is-filled-object.spec.ts +0 -33
|
@@ -1,1570 +0,0 @@
|
|
|
1
|
-
|
|
2
|
-
<!doctype html>
|
|
3
|
-
<html lang="en">
|
|
4
|
-
|
|
5
|
-
<head>
|
|
6
|
-
<title>Code coverage report for src/components/zd-grid-editable/data-editor.ts</title>
|
|
7
|
-
<meta charset="utf-8" />
|
|
8
|
-
<link rel="stylesheet" href="../../../prettify.css" />
|
|
9
|
-
<link rel="stylesheet" href="../../../base.css" />
|
|
10
|
-
<link rel="shortcut icon" type="image/x-icon" href="../../../favicon.png" />
|
|
11
|
-
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
|
12
|
-
<style type='text/css'>
|
|
13
|
-
.coverage-summary .sorter {
|
|
14
|
-
background-image: url(../../../sort-arrow-sprite.png);
|
|
15
|
-
}
|
|
16
|
-
</style>
|
|
17
|
-
</head>
|
|
18
|
-
|
|
19
|
-
<body>
|
|
20
|
-
<div class='wrapper'>
|
|
21
|
-
<div class='pad1'>
|
|
22
|
-
<h1><a href="../../../index.html">All files</a> / <a href="index.html">src/components/zd-grid-editable</a> data-editor.ts</h1>
|
|
23
|
-
<div class='clearfix'>
|
|
24
|
-
|
|
25
|
-
<div class='fl pad1y space-right2'>
|
|
26
|
-
<span class="strong">100% </span>
|
|
27
|
-
<span class="quiet">Statements</span>
|
|
28
|
-
<span class='fraction'>219/219</span>
|
|
29
|
-
</div>
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
<div class='fl pad1y space-right2'>
|
|
33
|
-
<span class="strong">100% </span>
|
|
34
|
-
<span class="quiet">Branches</span>
|
|
35
|
-
<span class='fraction'>73/73</span>
|
|
36
|
-
</div>
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
<div class='fl pad1y space-right2'>
|
|
40
|
-
<span class="strong">100% </span>
|
|
41
|
-
<span class="quiet">Functions</span>
|
|
42
|
-
<span class='fraction'>48/48</span>
|
|
43
|
-
</div>
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
<div class='fl pad1y space-right2'>
|
|
47
|
-
<span class="strong">100% </span>
|
|
48
|
-
<span class="quiet">Lines</span>
|
|
49
|
-
<span class='fraction'>209/209</span>
|
|
50
|
-
</div>
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
</div>
|
|
54
|
-
<p class="quiet">
|
|
55
|
-
Press <em>n</em> or <em>j</em> to go to the next uncovered block, <em>b</em>, <em>p</em> or <em>k</em> for the previous block.
|
|
56
|
-
</p>
|
|
57
|
-
<template id="filterTemplate">
|
|
58
|
-
<div class="quiet">
|
|
59
|
-
Filter:
|
|
60
|
-
<input type="search" id="fileSearch">
|
|
61
|
-
</div>
|
|
62
|
-
</template>
|
|
63
|
-
</div>
|
|
64
|
-
<div class='status-line high'></div>
|
|
65
|
-
<pre><table class="coverage">
|
|
66
|
-
<tr><td class="line-count quiet"><a name='L1'></a><a href='#L1'>1</a>
|
|
67
|
-
<a name='L2'></a><a href='#L2'>2</a>
|
|
68
|
-
<a name='L3'></a><a href='#L3'>3</a>
|
|
69
|
-
<a name='L4'></a><a href='#L4'>4</a>
|
|
70
|
-
<a name='L5'></a><a href='#L5'>5</a>
|
|
71
|
-
<a name='L6'></a><a href='#L6'>6</a>
|
|
72
|
-
<a name='L7'></a><a href='#L7'>7</a>
|
|
73
|
-
<a name='L8'></a><a href='#L8'>8</a>
|
|
74
|
-
<a name='L9'></a><a href='#L9'>9</a>
|
|
75
|
-
<a name='L10'></a><a href='#L10'>10</a>
|
|
76
|
-
<a name='L11'></a><a href='#L11'>11</a>
|
|
77
|
-
<a name='L12'></a><a href='#L12'>12</a>
|
|
78
|
-
<a name='L13'></a><a href='#L13'>13</a>
|
|
79
|
-
<a name='L14'></a><a href='#L14'>14</a>
|
|
80
|
-
<a name='L15'></a><a href='#L15'>15</a>
|
|
81
|
-
<a name='L16'></a><a href='#L16'>16</a>
|
|
82
|
-
<a name='L17'></a><a href='#L17'>17</a>
|
|
83
|
-
<a name='L18'></a><a href='#L18'>18</a>
|
|
84
|
-
<a name='L19'></a><a href='#L19'>19</a>
|
|
85
|
-
<a name='L20'></a><a href='#L20'>20</a>
|
|
86
|
-
<a name='L21'></a><a href='#L21'>21</a>
|
|
87
|
-
<a name='L22'></a><a href='#L22'>22</a>
|
|
88
|
-
<a name='L23'></a><a href='#L23'>23</a>
|
|
89
|
-
<a name='L24'></a><a href='#L24'>24</a>
|
|
90
|
-
<a name='L25'></a><a href='#L25'>25</a>
|
|
91
|
-
<a name='L26'></a><a href='#L26'>26</a>
|
|
92
|
-
<a name='L27'></a><a href='#L27'>27</a>
|
|
93
|
-
<a name='L28'></a><a href='#L28'>28</a>
|
|
94
|
-
<a name='L29'></a><a href='#L29'>29</a>
|
|
95
|
-
<a name='L30'></a><a href='#L30'>30</a>
|
|
96
|
-
<a name='L31'></a><a href='#L31'>31</a>
|
|
97
|
-
<a name='L32'></a><a href='#L32'>32</a>
|
|
98
|
-
<a name='L33'></a><a href='#L33'>33</a>
|
|
99
|
-
<a name='L34'></a><a href='#L34'>34</a>
|
|
100
|
-
<a name='L35'></a><a href='#L35'>35</a>
|
|
101
|
-
<a name='L36'></a><a href='#L36'>36</a>
|
|
102
|
-
<a name='L37'></a><a href='#L37'>37</a>
|
|
103
|
-
<a name='L38'></a><a href='#L38'>38</a>
|
|
104
|
-
<a name='L39'></a><a href='#L39'>39</a>
|
|
105
|
-
<a name='L40'></a><a href='#L40'>40</a>
|
|
106
|
-
<a name='L41'></a><a href='#L41'>41</a>
|
|
107
|
-
<a name='L42'></a><a href='#L42'>42</a>
|
|
108
|
-
<a name='L43'></a><a href='#L43'>43</a>
|
|
109
|
-
<a name='L44'></a><a href='#L44'>44</a>
|
|
110
|
-
<a name='L45'></a><a href='#L45'>45</a>
|
|
111
|
-
<a name='L46'></a><a href='#L46'>46</a>
|
|
112
|
-
<a name='L47'></a><a href='#L47'>47</a>
|
|
113
|
-
<a name='L48'></a><a href='#L48'>48</a>
|
|
114
|
-
<a name='L49'></a><a href='#L49'>49</a>
|
|
115
|
-
<a name='L50'></a><a href='#L50'>50</a>
|
|
116
|
-
<a name='L51'></a><a href='#L51'>51</a>
|
|
117
|
-
<a name='L52'></a><a href='#L52'>52</a>
|
|
118
|
-
<a name='L53'></a><a href='#L53'>53</a>
|
|
119
|
-
<a name='L54'></a><a href='#L54'>54</a>
|
|
120
|
-
<a name='L55'></a><a href='#L55'>55</a>
|
|
121
|
-
<a name='L56'></a><a href='#L56'>56</a>
|
|
122
|
-
<a name='L57'></a><a href='#L57'>57</a>
|
|
123
|
-
<a name='L58'></a><a href='#L58'>58</a>
|
|
124
|
-
<a name='L59'></a><a href='#L59'>59</a>
|
|
125
|
-
<a name='L60'></a><a href='#L60'>60</a>
|
|
126
|
-
<a name='L61'></a><a href='#L61'>61</a>
|
|
127
|
-
<a name='L62'></a><a href='#L62'>62</a>
|
|
128
|
-
<a name='L63'></a><a href='#L63'>63</a>
|
|
129
|
-
<a name='L64'></a><a href='#L64'>64</a>
|
|
130
|
-
<a name='L65'></a><a href='#L65'>65</a>
|
|
131
|
-
<a name='L66'></a><a href='#L66'>66</a>
|
|
132
|
-
<a name='L67'></a><a href='#L67'>67</a>
|
|
133
|
-
<a name='L68'></a><a href='#L68'>68</a>
|
|
134
|
-
<a name='L69'></a><a href='#L69'>69</a>
|
|
135
|
-
<a name='L70'></a><a href='#L70'>70</a>
|
|
136
|
-
<a name='L71'></a><a href='#L71'>71</a>
|
|
137
|
-
<a name='L72'></a><a href='#L72'>72</a>
|
|
138
|
-
<a name='L73'></a><a href='#L73'>73</a>
|
|
139
|
-
<a name='L74'></a><a href='#L74'>74</a>
|
|
140
|
-
<a name='L75'></a><a href='#L75'>75</a>
|
|
141
|
-
<a name='L76'></a><a href='#L76'>76</a>
|
|
142
|
-
<a name='L77'></a><a href='#L77'>77</a>
|
|
143
|
-
<a name='L78'></a><a href='#L78'>78</a>
|
|
144
|
-
<a name='L79'></a><a href='#L79'>79</a>
|
|
145
|
-
<a name='L80'></a><a href='#L80'>80</a>
|
|
146
|
-
<a name='L81'></a><a href='#L81'>81</a>
|
|
147
|
-
<a name='L82'></a><a href='#L82'>82</a>
|
|
148
|
-
<a name='L83'></a><a href='#L83'>83</a>
|
|
149
|
-
<a name='L84'></a><a href='#L84'>84</a>
|
|
150
|
-
<a name='L85'></a><a href='#L85'>85</a>
|
|
151
|
-
<a name='L86'></a><a href='#L86'>86</a>
|
|
152
|
-
<a name='L87'></a><a href='#L87'>87</a>
|
|
153
|
-
<a name='L88'></a><a href='#L88'>88</a>
|
|
154
|
-
<a name='L89'></a><a href='#L89'>89</a>
|
|
155
|
-
<a name='L90'></a><a href='#L90'>90</a>
|
|
156
|
-
<a name='L91'></a><a href='#L91'>91</a>
|
|
157
|
-
<a name='L92'></a><a href='#L92'>92</a>
|
|
158
|
-
<a name='L93'></a><a href='#L93'>93</a>
|
|
159
|
-
<a name='L94'></a><a href='#L94'>94</a>
|
|
160
|
-
<a name='L95'></a><a href='#L95'>95</a>
|
|
161
|
-
<a name='L96'></a><a href='#L96'>96</a>
|
|
162
|
-
<a name='L97'></a><a href='#L97'>97</a>
|
|
163
|
-
<a name='L98'></a><a href='#L98'>98</a>
|
|
164
|
-
<a name='L99'></a><a href='#L99'>99</a>
|
|
165
|
-
<a name='L100'></a><a href='#L100'>100</a>
|
|
166
|
-
<a name='L101'></a><a href='#L101'>101</a>
|
|
167
|
-
<a name='L102'></a><a href='#L102'>102</a>
|
|
168
|
-
<a name='L103'></a><a href='#L103'>103</a>
|
|
169
|
-
<a name='L104'></a><a href='#L104'>104</a>
|
|
170
|
-
<a name='L105'></a><a href='#L105'>105</a>
|
|
171
|
-
<a name='L106'></a><a href='#L106'>106</a>
|
|
172
|
-
<a name='L107'></a><a href='#L107'>107</a>
|
|
173
|
-
<a name='L108'></a><a href='#L108'>108</a>
|
|
174
|
-
<a name='L109'></a><a href='#L109'>109</a>
|
|
175
|
-
<a name='L110'></a><a href='#L110'>110</a>
|
|
176
|
-
<a name='L111'></a><a href='#L111'>111</a>
|
|
177
|
-
<a name='L112'></a><a href='#L112'>112</a>
|
|
178
|
-
<a name='L113'></a><a href='#L113'>113</a>
|
|
179
|
-
<a name='L114'></a><a href='#L114'>114</a>
|
|
180
|
-
<a name='L115'></a><a href='#L115'>115</a>
|
|
181
|
-
<a name='L116'></a><a href='#L116'>116</a>
|
|
182
|
-
<a name='L117'></a><a href='#L117'>117</a>
|
|
183
|
-
<a name='L118'></a><a href='#L118'>118</a>
|
|
184
|
-
<a name='L119'></a><a href='#L119'>119</a>
|
|
185
|
-
<a name='L120'></a><a href='#L120'>120</a>
|
|
186
|
-
<a name='L121'></a><a href='#L121'>121</a>
|
|
187
|
-
<a name='L122'></a><a href='#L122'>122</a>
|
|
188
|
-
<a name='L123'></a><a href='#L123'>123</a>
|
|
189
|
-
<a name='L124'></a><a href='#L124'>124</a>
|
|
190
|
-
<a name='L125'></a><a href='#L125'>125</a>
|
|
191
|
-
<a name='L126'></a><a href='#L126'>126</a>
|
|
192
|
-
<a name='L127'></a><a href='#L127'>127</a>
|
|
193
|
-
<a name='L128'></a><a href='#L128'>128</a>
|
|
194
|
-
<a name='L129'></a><a href='#L129'>129</a>
|
|
195
|
-
<a name='L130'></a><a href='#L130'>130</a>
|
|
196
|
-
<a name='L131'></a><a href='#L131'>131</a>
|
|
197
|
-
<a name='L132'></a><a href='#L132'>132</a>
|
|
198
|
-
<a name='L133'></a><a href='#L133'>133</a>
|
|
199
|
-
<a name='L134'></a><a href='#L134'>134</a>
|
|
200
|
-
<a name='L135'></a><a href='#L135'>135</a>
|
|
201
|
-
<a name='L136'></a><a href='#L136'>136</a>
|
|
202
|
-
<a name='L137'></a><a href='#L137'>137</a>
|
|
203
|
-
<a name='L138'></a><a href='#L138'>138</a>
|
|
204
|
-
<a name='L139'></a><a href='#L139'>139</a>
|
|
205
|
-
<a name='L140'></a><a href='#L140'>140</a>
|
|
206
|
-
<a name='L141'></a><a href='#L141'>141</a>
|
|
207
|
-
<a name='L142'></a><a href='#L142'>142</a>
|
|
208
|
-
<a name='L143'></a><a href='#L143'>143</a>
|
|
209
|
-
<a name='L144'></a><a href='#L144'>144</a>
|
|
210
|
-
<a name='L145'></a><a href='#L145'>145</a>
|
|
211
|
-
<a name='L146'></a><a href='#L146'>146</a>
|
|
212
|
-
<a name='L147'></a><a href='#L147'>147</a>
|
|
213
|
-
<a name='L148'></a><a href='#L148'>148</a>
|
|
214
|
-
<a name='L149'></a><a href='#L149'>149</a>
|
|
215
|
-
<a name='L150'></a><a href='#L150'>150</a>
|
|
216
|
-
<a name='L151'></a><a href='#L151'>151</a>
|
|
217
|
-
<a name='L152'></a><a href='#L152'>152</a>
|
|
218
|
-
<a name='L153'></a><a href='#L153'>153</a>
|
|
219
|
-
<a name='L154'></a><a href='#L154'>154</a>
|
|
220
|
-
<a name='L155'></a><a href='#L155'>155</a>
|
|
221
|
-
<a name='L156'></a><a href='#L156'>156</a>
|
|
222
|
-
<a name='L157'></a><a href='#L157'>157</a>
|
|
223
|
-
<a name='L158'></a><a href='#L158'>158</a>
|
|
224
|
-
<a name='L159'></a><a href='#L159'>159</a>
|
|
225
|
-
<a name='L160'></a><a href='#L160'>160</a>
|
|
226
|
-
<a name='L161'></a><a href='#L161'>161</a>
|
|
227
|
-
<a name='L162'></a><a href='#L162'>162</a>
|
|
228
|
-
<a name='L163'></a><a href='#L163'>163</a>
|
|
229
|
-
<a name='L164'></a><a href='#L164'>164</a>
|
|
230
|
-
<a name='L165'></a><a href='#L165'>165</a>
|
|
231
|
-
<a name='L166'></a><a href='#L166'>166</a>
|
|
232
|
-
<a name='L167'></a><a href='#L167'>167</a>
|
|
233
|
-
<a name='L168'></a><a href='#L168'>168</a>
|
|
234
|
-
<a name='L169'></a><a href='#L169'>169</a>
|
|
235
|
-
<a name='L170'></a><a href='#L170'>170</a>
|
|
236
|
-
<a name='L171'></a><a href='#L171'>171</a>
|
|
237
|
-
<a name='L172'></a><a href='#L172'>172</a>
|
|
238
|
-
<a name='L173'></a><a href='#L173'>173</a>
|
|
239
|
-
<a name='L174'></a><a href='#L174'>174</a>
|
|
240
|
-
<a name='L175'></a><a href='#L175'>175</a>
|
|
241
|
-
<a name='L176'></a><a href='#L176'>176</a>
|
|
242
|
-
<a name='L177'></a><a href='#L177'>177</a>
|
|
243
|
-
<a name='L178'></a><a href='#L178'>178</a>
|
|
244
|
-
<a name='L179'></a><a href='#L179'>179</a>
|
|
245
|
-
<a name='L180'></a><a href='#L180'>180</a>
|
|
246
|
-
<a name='L181'></a><a href='#L181'>181</a>
|
|
247
|
-
<a name='L182'></a><a href='#L182'>182</a>
|
|
248
|
-
<a name='L183'></a><a href='#L183'>183</a>
|
|
249
|
-
<a name='L184'></a><a href='#L184'>184</a>
|
|
250
|
-
<a name='L185'></a><a href='#L185'>185</a>
|
|
251
|
-
<a name='L186'></a><a href='#L186'>186</a>
|
|
252
|
-
<a name='L187'></a><a href='#L187'>187</a>
|
|
253
|
-
<a name='L188'></a><a href='#L188'>188</a>
|
|
254
|
-
<a name='L189'></a><a href='#L189'>189</a>
|
|
255
|
-
<a name='L190'></a><a href='#L190'>190</a>
|
|
256
|
-
<a name='L191'></a><a href='#L191'>191</a>
|
|
257
|
-
<a name='L192'></a><a href='#L192'>192</a>
|
|
258
|
-
<a name='L193'></a><a href='#L193'>193</a>
|
|
259
|
-
<a name='L194'></a><a href='#L194'>194</a>
|
|
260
|
-
<a name='L195'></a><a href='#L195'>195</a>
|
|
261
|
-
<a name='L196'></a><a href='#L196'>196</a>
|
|
262
|
-
<a name='L197'></a><a href='#L197'>197</a>
|
|
263
|
-
<a name='L198'></a><a href='#L198'>198</a>
|
|
264
|
-
<a name='L199'></a><a href='#L199'>199</a>
|
|
265
|
-
<a name='L200'></a><a href='#L200'>200</a>
|
|
266
|
-
<a name='L201'></a><a href='#L201'>201</a>
|
|
267
|
-
<a name='L202'></a><a href='#L202'>202</a>
|
|
268
|
-
<a name='L203'></a><a href='#L203'>203</a>
|
|
269
|
-
<a name='L204'></a><a href='#L204'>204</a>
|
|
270
|
-
<a name='L205'></a><a href='#L205'>205</a>
|
|
271
|
-
<a name='L206'></a><a href='#L206'>206</a>
|
|
272
|
-
<a name='L207'></a><a href='#L207'>207</a>
|
|
273
|
-
<a name='L208'></a><a href='#L208'>208</a>
|
|
274
|
-
<a name='L209'></a><a href='#L209'>209</a>
|
|
275
|
-
<a name='L210'></a><a href='#L210'>210</a>
|
|
276
|
-
<a name='L211'></a><a href='#L211'>211</a>
|
|
277
|
-
<a name='L212'></a><a href='#L212'>212</a>
|
|
278
|
-
<a name='L213'></a><a href='#L213'>213</a>
|
|
279
|
-
<a name='L214'></a><a href='#L214'>214</a>
|
|
280
|
-
<a name='L215'></a><a href='#L215'>215</a>
|
|
281
|
-
<a name='L216'></a><a href='#L216'>216</a>
|
|
282
|
-
<a name='L217'></a><a href='#L217'>217</a>
|
|
283
|
-
<a name='L218'></a><a href='#L218'>218</a>
|
|
284
|
-
<a name='L219'></a><a href='#L219'>219</a>
|
|
285
|
-
<a name='L220'></a><a href='#L220'>220</a>
|
|
286
|
-
<a name='L221'></a><a href='#L221'>221</a>
|
|
287
|
-
<a name='L222'></a><a href='#L222'>222</a>
|
|
288
|
-
<a name='L223'></a><a href='#L223'>223</a>
|
|
289
|
-
<a name='L224'></a><a href='#L224'>224</a>
|
|
290
|
-
<a name='L225'></a><a href='#L225'>225</a>
|
|
291
|
-
<a name='L226'></a><a href='#L226'>226</a>
|
|
292
|
-
<a name='L227'></a><a href='#L227'>227</a>
|
|
293
|
-
<a name='L228'></a><a href='#L228'>228</a>
|
|
294
|
-
<a name='L229'></a><a href='#L229'>229</a>
|
|
295
|
-
<a name='L230'></a><a href='#L230'>230</a>
|
|
296
|
-
<a name='L231'></a><a href='#L231'>231</a>
|
|
297
|
-
<a name='L232'></a><a href='#L232'>232</a>
|
|
298
|
-
<a name='L233'></a><a href='#L233'>233</a>
|
|
299
|
-
<a name='L234'></a><a href='#L234'>234</a>
|
|
300
|
-
<a name='L235'></a><a href='#L235'>235</a>
|
|
301
|
-
<a name='L236'></a><a href='#L236'>236</a>
|
|
302
|
-
<a name='L237'></a><a href='#L237'>237</a>
|
|
303
|
-
<a name='L238'></a><a href='#L238'>238</a>
|
|
304
|
-
<a name='L239'></a><a href='#L239'>239</a>
|
|
305
|
-
<a name='L240'></a><a href='#L240'>240</a>
|
|
306
|
-
<a name='L241'></a><a href='#L241'>241</a>
|
|
307
|
-
<a name='L242'></a><a href='#L242'>242</a>
|
|
308
|
-
<a name='L243'></a><a href='#L243'>243</a>
|
|
309
|
-
<a name='L244'></a><a href='#L244'>244</a>
|
|
310
|
-
<a name='L245'></a><a href='#L245'>245</a>
|
|
311
|
-
<a name='L246'></a><a href='#L246'>246</a>
|
|
312
|
-
<a name='L247'></a><a href='#L247'>247</a>
|
|
313
|
-
<a name='L248'></a><a href='#L248'>248</a>
|
|
314
|
-
<a name='L249'></a><a href='#L249'>249</a>
|
|
315
|
-
<a name='L250'></a><a href='#L250'>250</a>
|
|
316
|
-
<a name='L251'></a><a href='#L251'>251</a>
|
|
317
|
-
<a name='L252'></a><a href='#L252'>252</a>
|
|
318
|
-
<a name='L253'></a><a href='#L253'>253</a>
|
|
319
|
-
<a name='L254'></a><a href='#L254'>254</a>
|
|
320
|
-
<a name='L255'></a><a href='#L255'>255</a>
|
|
321
|
-
<a name='L256'></a><a href='#L256'>256</a>
|
|
322
|
-
<a name='L257'></a><a href='#L257'>257</a>
|
|
323
|
-
<a name='L258'></a><a href='#L258'>258</a>
|
|
324
|
-
<a name='L259'></a><a href='#L259'>259</a>
|
|
325
|
-
<a name='L260'></a><a href='#L260'>260</a>
|
|
326
|
-
<a name='L261'></a><a href='#L261'>261</a>
|
|
327
|
-
<a name='L262'></a><a href='#L262'>262</a>
|
|
328
|
-
<a name='L263'></a><a href='#L263'>263</a>
|
|
329
|
-
<a name='L264'></a><a href='#L264'>264</a>
|
|
330
|
-
<a name='L265'></a><a href='#L265'>265</a>
|
|
331
|
-
<a name='L266'></a><a href='#L266'>266</a>
|
|
332
|
-
<a name='L267'></a><a href='#L267'>267</a>
|
|
333
|
-
<a name='L268'></a><a href='#L268'>268</a>
|
|
334
|
-
<a name='L269'></a><a href='#L269'>269</a>
|
|
335
|
-
<a name='L270'></a><a href='#L270'>270</a>
|
|
336
|
-
<a name='L271'></a><a href='#L271'>271</a>
|
|
337
|
-
<a name='L272'></a><a href='#L272'>272</a>
|
|
338
|
-
<a name='L273'></a><a href='#L273'>273</a>
|
|
339
|
-
<a name='L274'></a><a href='#L274'>274</a>
|
|
340
|
-
<a name='L275'></a><a href='#L275'>275</a>
|
|
341
|
-
<a name='L276'></a><a href='#L276'>276</a>
|
|
342
|
-
<a name='L277'></a><a href='#L277'>277</a>
|
|
343
|
-
<a name='L278'></a><a href='#L278'>278</a>
|
|
344
|
-
<a name='L279'></a><a href='#L279'>279</a>
|
|
345
|
-
<a name='L280'></a><a href='#L280'>280</a>
|
|
346
|
-
<a name='L281'></a><a href='#L281'>281</a>
|
|
347
|
-
<a name='L282'></a><a href='#L282'>282</a>
|
|
348
|
-
<a name='L283'></a><a href='#L283'>283</a>
|
|
349
|
-
<a name='L284'></a><a href='#L284'>284</a>
|
|
350
|
-
<a name='L285'></a><a href='#L285'>285</a>
|
|
351
|
-
<a name='L286'></a><a href='#L286'>286</a>
|
|
352
|
-
<a name='L287'></a><a href='#L287'>287</a>
|
|
353
|
-
<a name='L288'></a><a href='#L288'>288</a>
|
|
354
|
-
<a name='L289'></a><a href='#L289'>289</a>
|
|
355
|
-
<a name='L290'></a><a href='#L290'>290</a>
|
|
356
|
-
<a name='L291'></a><a href='#L291'>291</a>
|
|
357
|
-
<a name='L292'></a><a href='#L292'>292</a>
|
|
358
|
-
<a name='L293'></a><a href='#L293'>293</a>
|
|
359
|
-
<a name='L294'></a><a href='#L294'>294</a>
|
|
360
|
-
<a name='L295'></a><a href='#L295'>295</a>
|
|
361
|
-
<a name='L296'></a><a href='#L296'>296</a>
|
|
362
|
-
<a name='L297'></a><a href='#L297'>297</a>
|
|
363
|
-
<a name='L298'></a><a href='#L298'>298</a>
|
|
364
|
-
<a name='L299'></a><a href='#L299'>299</a>
|
|
365
|
-
<a name='L300'></a><a href='#L300'>300</a>
|
|
366
|
-
<a name='L301'></a><a href='#L301'>301</a>
|
|
367
|
-
<a name='L302'></a><a href='#L302'>302</a>
|
|
368
|
-
<a name='L303'></a><a href='#L303'>303</a>
|
|
369
|
-
<a name='L304'></a><a href='#L304'>304</a>
|
|
370
|
-
<a name='L305'></a><a href='#L305'>305</a>
|
|
371
|
-
<a name='L306'></a><a href='#L306'>306</a>
|
|
372
|
-
<a name='L307'></a><a href='#L307'>307</a>
|
|
373
|
-
<a name='L308'></a><a href='#L308'>308</a>
|
|
374
|
-
<a name='L309'></a><a href='#L309'>309</a>
|
|
375
|
-
<a name='L310'></a><a href='#L310'>310</a>
|
|
376
|
-
<a name='L311'></a><a href='#L311'>311</a>
|
|
377
|
-
<a name='L312'></a><a href='#L312'>312</a>
|
|
378
|
-
<a name='L313'></a><a href='#L313'>313</a>
|
|
379
|
-
<a name='L314'></a><a href='#L314'>314</a>
|
|
380
|
-
<a name='L315'></a><a href='#L315'>315</a>
|
|
381
|
-
<a name='L316'></a><a href='#L316'>316</a>
|
|
382
|
-
<a name='L317'></a><a href='#L317'>317</a>
|
|
383
|
-
<a name='L318'></a><a href='#L318'>318</a>
|
|
384
|
-
<a name='L319'></a><a href='#L319'>319</a>
|
|
385
|
-
<a name='L320'></a><a href='#L320'>320</a>
|
|
386
|
-
<a name='L321'></a><a href='#L321'>321</a>
|
|
387
|
-
<a name='L322'></a><a href='#L322'>322</a>
|
|
388
|
-
<a name='L323'></a><a href='#L323'>323</a>
|
|
389
|
-
<a name='L324'></a><a href='#L324'>324</a>
|
|
390
|
-
<a name='L325'></a><a href='#L325'>325</a>
|
|
391
|
-
<a name='L326'></a><a href='#L326'>326</a>
|
|
392
|
-
<a name='L327'></a><a href='#L327'>327</a>
|
|
393
|
-
<a name='L328'></a><a href='#L328'>328</a>
|
|
394
|
-
<a name='L329'></a><a href='#L329'>329</a>
|
|
395
|
-
<a name='L330'></a><a href='#L330'>330</a>
|
|
396
|
-
<a name='L331'></a><a href='#L331'>331</a>
|
|
397
|
-
<a name='L332'></a><a href='#L332'>332</a>
|
|
398
|
-
<a name='L333'></a><a href='#L333'>333</a>
|
|
399
|
-
<a name='L334'></a><a href='#L334'>334</a>
|
|
400
|
-
<a name='L335'></a><a href='#L335'>335</a>
|
|
401
|
-
<a name='L336'></a><a href='#L336'>336</a>
|
|
402
|
-
<a name='L337'></a><a href='#L337'>337</a>
|
|
403
|
-
<a name='L338'></a><a href='#L338'>338</a>
|
|
404
|
-
<a name='L339'></a><a href='#L339'>339</a>
|
|
405
|
-
<a name='L340'></a><a href='#L340'>340</a>
|
|
406
|
-
<a name='L341'></a><a href='#L341'>341</a>
|
|
407
|
-
<a name='L342'></a><a href='#L342'>342</a>
|
|
408
|
-
<a name='L343'></a><a href='#L343'>343</a>
|
|
409
|
-
<a name='L344'></a><a href='#L344'>344</a>
|
|
410
|
-
<a name='L345'></a><a href='#L345'>345</a>
|
|
411
|
-
<a name='L346'></a><a href='#L346'>346</a>
|
|
412
|
-
<a name='L347'></a><a href='#L347'>347</a>
|
|
413
|
-
<a name='L348'></a><a href='#L348'>348</a>
|
|
414
|
-
<a name='L349'></a><a href='#L349'>349</a>
|
|
415
|
-
<a name='L350'></a><a href='#L350'>350</a>
|
|
416
|
-
<a name='L351'></a><a href='#L351'>351</a>
|
|
417
|
-
<a name='L352'></a><a href='#L352'>352</a>
|
|
418
|
-
<a name='L353'></a><a href='#L353'>353</a>
|
|
419
|
-
<a name='L354'></a><a href='#L354'>354</a>
|
|
420
|
-
<a name='L355'></a><a href='#L355'>355</a>
|
|
421
|
-
<a name='L356'></a><a href='#L356'>356</a>
|
|
422
|
-
<a name='L357'></a><a href='#L357'>357</a>
|
|
423
|
-
<a name='L358'></a><a href='#L358'>358</a>
|
|
424
|
-
<a name='L359'></a><a href='#L359'>359</a>
|
|
425
|
-
<a name='L360'></a><a href='#L360'>360</a>
|
|
426
|
-
<a name='L361'></a><a href='#L361'>361</a>
|
|
427
|
-
<a name='L362'></a><a href='#L362'>362</a>
|
|
428
|
-
<a name='L363'></a><a href='#L363'>363</a>
|
|
429
|
-
<a name='L364'></a><a href='#L364'>364</a>
|
|
430
|
-
<a name='L365'></a><a href='#L365'>365</a>
|
|
431
|
-
<a name='L366'></a><a href='#L366'>366</a>
|
|
432
|
-
<a name='L367'></a><a href='#L367'>367</a>
|
|
433
|
-
<a name='L368'></a><a href='#L368'>368</a>
|
|
434
|
-
<a name='L369'></a><a href='#L369'>369</a>
|
|
435
|
-
<a name='L370'></a><a href='#L370'>370</a>
|
|
436
|
-
<a name='L371'></a><a href='#L371'>371</a>
|
|
437
|
-
<a name='L372'></a><a href='#L372'>372</a>
|
|
438
|
-
<a name='L373'></a><a href='#L373'>373</a>
|
|
439
|
-
<a name='L374'></a><a href='#L374'>374</a>
|
|
440
|
-
<a name='L375'></a><a href='#L375'>375</a>
|
|
441
|
-
<a name='L376'></a><a href='#L376'>376</a>
|
|
442
|
-
<a name='L377'></a><a href='#L377'>377</a>
|
|
443
|
-
<a name='L378'></a><a href='#L378'>378</a>
|
|
444
|
-
<a name='L379'></a><a href='#L379'>379</a>
|
|
445
|
-
<a name='L380'></a><a href='#L380'>380</a>
|
|
446
|
-
<a name='L381'></a><a href='#L381'>381</a>
|
|
447
|
-
<a name='L382'></a><a href='#L382'>382</a>
|
|
448
|
-
<a name='L383'></a><a href='#L383'>383</a>
|
|
449
|
-
<a name='L384'></a><a href='#L384'>384</a>
|
|
450
|
-
<a name='L385'></a><a href='#L385'>385</a>
|
|
451
|
-
<a name='L386'></a><a href='#L386'>386</a>
|
|
452
|
-
<a name='L387'></a><a href='#L387'>387</a>
|
|
453
|
-
<a name='L388'></a><a href='#L388'>388</a>
|
|
454
|
-
<a name='L389'></a><a href='#L389'>389</a>
|
|
455
|
-
<a name='L390'></a><a href='#L390'>390</a>
|
|
456
|
-
<a name='L391'></a><a href='#L391'>391</a>
|
|
457
|
-
<a name='L392'></a><a href='#L392'>392</a>
|
|
458
|
-
<a name='L393'></a><a href='#L393'>393</a>
|
|
459
|
-
<a name='L394'></a><a href='#L394'>394</a>
|
|
460
|
-
<a name='L395'></a><a href='#L395'>395</a>
|
|
461
|
-
<a name='L396'></a><a href='#L396'>396</a>
|
|
462
|
-
<a name='L397'></a><a href='#L397'>397</a>
|
|
463
|
-
<a name='L398'></a><a href='#L398'>398</a>
|
|
464
|
-
<a name='L399'></a><a href='#L399'>399</a>
|
|
465
|
-
<a name='L400'></a><a href='#L400'>400</a>
|
|
466
|
-
<a name='L401'></a><a href='#L401'>401</a>
|
|
467
|
-
<a name='L402'></a><a href='#L402'>402</a>
|
|
468
|
-
<a name='L403'></a><a href='#L403'>403</a>
|
|
469
|
-
<a name='L404'></a><a href='#L404'>404</a>
|
|
470
|
-
<a name='L405'></a><a href='#L405'>405</a>
|
|
471
|
-
<a name='L406'></a><a href='#L406'>406</a>
|
|
472
|
-
<a name='L407'></a><a href='#L407'>407</a>
|
|
473
|
-
<a name='L408'></a><a href='#L408'>408</a>
|
|
474
|
-
<a name='L409'></a><a href='#L409'>409</a>
|
|
475
|
-
<a name='L410'></a><a href='#L410'>410</a>
|
|
476
|
-
<a name='L411'></a><a href='#L411'>411</a>
|
|
477
|
-
<a name='L412'></a><a href='#L412'>412</a>
|
|
478
|
-
<a name='L413'></a><a href='#L413'>413</a>
|
|
479
|
-
<a name='L414'></a><a href='#L414'>414</a>
|
|
480
|
-
<a name='L415'></a><a href='#L415'>415</a>
|
|
481
|
-
<a name='L416'></a><a href='#L416'>416</a>
|
|
482
|
-
<a name='L417'></a><a href='#L417'>417</a>
|
|
483
|
-
<a name='L418'></a><a href='#L418'>418</a>
|
|
484
|
-
<a name='L419'></a><a href='#L419'>419</a>
|
|
485
|
-
<a name='L420'></a><a href='#L420'>420</a>
|
|
486
|
-
<a name='L421'></a><a href='#L421'>421</a>
|
|
487
|
-
<a name='L422'></a><a href='#L422'>422</a>
|
|
488
|
-
<a name='L423'></a><a href='#L423'>423</a>
|
|
489
|
-
<a name='L424'></a><a href='#L424'>424</a>
|
|
490
|
-
<a name='L425'></a><a href='#L425'>425</a>
|
|
491
|
-
<a name='L426'></a><a href='#L426'>426</a>
|
|
492
|
-
<a name='L427'></a><a href='#L427'>427</a>
|
|
493
|
-
<a name='L428'></a><a href='#L428'>428</a>
|
|
494
|
-
<a name='L429'></a><a href='#L429'>429</a>
|
|
495
|
-
<a name='L430'></a><a href='#L430'>430</a>
|
|
496
|
-
<a name='L431'></a><a href='#L431'>431</a>
|
|
497
|
-
<a name='L432'></a><a href='#L432'>432</a>
|
|
498
|
-
<a name='L433'></a><a href='#L433'>433</a>
|
|
499
|
-
<a name='L434'></a><a href='#L434'>434</a>
|
|
500
|
-
<a name='L435'></a><a href='#L435'>435</a>
|
|
501
|
-
<a name='L436'></a><a href='#L436'>436</a>
|
|
502
|
-
<a name='L437'></a><a href='#L437'>437</a>
|
|
503
|
-
<a name='L438'></a><a href='#L438'>438</a>
|
|
504
|
-
<a name='L439'></a><a href='#L439'>439</a>
|
|
505
|
-
<a name='L440'></a><a href='#L440'>440</a>
|
|
506
|
-
<a name='L441'></a><a href='#L441'>441</a>
|
|
507
|
-
<a name='L442'></a><a href='#L442'>442</a>
|
|
508
|
-
<a name='L443'></a><a href='#L443'>443</a>
|
|
509
|
-
<a name='L444'></a><a href='#L444'>444</a>
|
|
510
|
-
<a name='L445'></a><a href='#L445'>445</a>
|
|
511
|
-
<a name='L446'></a><a href='#L446'>446</a>
|
|
512
|
-
<a name='L447'></a><a href='#L447'>447</a>
|
|
513
|
-
<a name='L448'></a><a href='#L448'>448</a>
|
|
514
|
-
<a name='L449'></a><a href='#L449'>449</a>
|
|
515
|
-
<a name='L450'></a><a href='#L450'>450</a>
|
|
516
|
-
<a name='L451'></a><a href='#L451'>451</a>
|
|
517
|
-
<a name='L452'></a><a href='#L452'>452</a>
|
|
518
|
-
<a name='L453'></a><a href='#L453'>453</a>
|
|
519
|
-
<a name='L454'></a><a href='#L454'>454</a>
|
|
520
|
-
<a name='L455'></a><a href='#L455'>455</a>
|
|
521
|
-
<a name='L456'></a><a href='#L456'>456</a>
|
|
522
|
-
<a name='L457'></a><a href='#L457'>457</a>
|
|
523
|
-
<a name='L458'></a><a href='#L458'>458</a>
|
|
524
|
-
<a name='L459'></a><a href='#L459'>459</a>
|
|
525
|
-
<a name='L460'></a><a href='#L460'>460</a>
|
|
526
|
-
<a name='L461'></a><a href='#L461'>461</a>
|
|
527
|
-
<a name='L462'></a><a href='#L462'>462</a>
|
|
528
|
-
<a name='L463'></a><a href='#L463'>463</a>
|
|
529
|
-
<a name='L464'></a><a href='#L464'>464</a>
|
|
530
|
-
<a name='L465'></a><a href='#L465'>465</a>
|
|
531
|
-
<a name='L466'></a><a href='#L466'>466</a>
|
|
532
|
-
<a name='L467'></a><a href='#L467'>467</a>
|
|
533
|
-
<a name='L468'></a><a href='#L468'>468</a>
|
|
534
|
-
<a name='L469'></a><a href='#L469'>469</a>
|
|
535
|
-
<a name='L470'></a><a href='#L470'>470</a>
|
|
536
|
-
<a name='L471'></a><a href='#L471'>471</a>
|
|
537
|
-
<a name='L472'></a><a href='#L472'>472</a>
|
|
538
|
-
<a name='L473'></a><a href='#L473'>473</a>
|
|
539
|
-
<a name='L474'></a><a href='#L474'>474</a>
|
|
540
|
-
<a name='L475'></a><a href='#L475'>475</a>
|
|
541
|
-
<a name='L476'></a><a href='#L476'>476</a>
|
|
542
|
-
<a name='L477'></a><a href='#L477'>477</a>
|
|
543
|
-
<a name='L478'></a><a href='#L478'>478</a>
|
|
544
|
-
<a name='L479'></a><a href='#L479'>479</a>
|
|
545
|
-
<a name='L480'></a><a href='#L480'>480</a>
|
|
546
|
-
<a name='L481'></a><a href='#L481'>481</a>
|
|
547
|
-
<a name='L482'></a><a href='#L482'>482</a>
|
|
548
|
-
<a name='L483'></a><a href='#L483'>483</a>
|
|
549
|
-
<a name='L484'></a><a href='#L484'>484</a>
|
|
550
|
-
<a name='L485'></a><a href='#L485'>485</a>
|
|
551
|
-
<a name='L486'></a><a href='#L486'>486</a>
|
|
552
|
-
<a name='L487'></a><a href='#L487'>487</a>
|
|
553
|
-
<a name='L488'></a><a href='#L488'>488</a>
|
|
554
|
-
<a name='L489'></a><a href='#L489'>489</a>
|
|
555
|
-
<a name='L490'></a><a href='#L490'>490</a>
|
|
556
|
-
<a name='L491'></a><a href='#L491'>491</a>
|
|
557
|
-
<a name='L492'></a><a href='#L492'>492</a>
|
|
558
|
-
<a name='L493'></a><a href='#L493'>493</a>
|
|
559
|
-
<a name='L494'></a><a href='#L494'>494</a>
|
|
560
|
-
<a name='L495'></a><a href='#L495'>495</a>
|
|
561
|
-
<a name='L496'></a><a href='#L496'>496</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">93x</span>
|
|
562
|
-
<span class="cline-any cline-neutral"> </span>
|
|
563
|
-
<span class="cline-any cline-neutral"> </span>
|
|
564
|
-
<span class="cline-any cline-neutral"> </span>
|
|
565
|
-
<span class="cline-any cline-neutral"> </span>
|
|
566
|
-
<span class="cline-any cline-neutral"> </span>
|
|
567
|
-
<span class="cline-any cline-neutral"> </span>
|
|
568
|
-
<span class="cline-any cline-neutral"> </span>
|
|
569
|
-
<span class="cline-any cline-neutral"> </span>
|
|
570
|
-
<span class="cline-any cline-yes">93x</span>
|
|
571
|
-
<span class="cline-any cline-yes">93x</span>
|
|
572
|
-
<span class="cline-any cline-neutral"> </span>
|
|
573
|
-
<span class="cline-any cline-neutral"> </span>
|
|
574
|
-
<span class="cline-any cline-yes">93x</span>
|
|
575
|
-
<span class="cline-any cline-yes">93x</span>
|
|
576
|
-
<span class="cline-any cline-neutral"> </span>
|
|
577
|
-
<span class="cline-any cline-neutral"> </span>
|
|
578
|
-
<span class="cline-any cline-neutral"> </span>
|
|
579
|
-
<span class="cline-any cline-yes">93x</span>
|
|
580
|
-
<span class="cline-any cline-neutral"> </span>
|
|
581
|
-
<span class="cline-any cline-neutral"> </span>
|
|
582
|
-
<span class="cline-any cline-yes">168x</span>
|
|
583
|
-
<span class="cline-any cline-neutral"> </span>
|
|
584
|
-
<span class="cline-any cline-neutral"> </span>
|
|
585
|
-
<span class="cline-any cline-neutral"> </span>
|
|
586
|
-
<span class="cline-any cline-neutral"> </span>
|
|
587
|
-
<span class="cline-any cline-neutral"> </span>
|
|
588
|
-
<span class="cline-any cline-yes">168x</span>
|
|
589
|
-
<span class="cline-any cline-neutral"> </span>
|
|
590
|
-
<span class="cline-any cline-yes">168x</span>
|
|
591
|
-
<span class="cline-any cline-neutral"> </span>
|
|
592
|
-
<span class="cline-any cline-neutral"> </span>
|
|
593
|
-
<span class="cline-any cline-yes">168x</span>
|
|
594
|
-
<span class="cline-any cline-neutral"> </span>
|
|
595
|
-
<span class="cline-any cline-neutral"> </span>
|
|
596
|
-
<span class="cline-any cline-neutral"> </span>
|
|
597
|
-
<span class="cline-any cline-neutral"> </span>
|
|
598
|
-
<span class="cline-any cline-neutral"> </span>
|
|
599
|
-
<span class="cline-any cline-neutral"> </span>
|
|
600
|
-
<span class="cline-any cline-neutral"> </span>
|
|
601
|
-
<span class="cline-any cline-neutral"> </span>
|
|
602
|
-
<span class="cline-any cline-yes">233x</span>
|
|
603
|
-
<span class="cline-any cline-neutral"> </span>
|
|
604
|
-
<span class="cline-any cline-neutral"> </span>
|
|
605
|
-
<span class="cline-any cline-neutral"> </span>
|
|
606
|
-
<span class="cline-any cline-yes">194x</span>
|
|
607
|
-
<span class="cline-any cline-yes">194x</span>
|
|
608
|
-
<span class="cline-any cline-yes">194x</span>
|
|
609
|
-
<span class="cline-any cline-yes">1x</span>
|
|
610
|
-
<span class="cline-any cline-neutral"> </span>
|
|
611
|
-
<span class="cline-any cline-yes">193x</span>
|
|
612
|
-
<span class="cline-any cline-neutral"> </span>
|
|
613
|
-
<span class="cline-any cline-neutral"> </span>
|
|
614
|
-
<span class="cline-any cline-neutral"> </span>
|
|
615
|
-
<span class="cline-any cline-neutral"> </span>
|
|
616
|
-
<span class="cline-any cline-neutral"> </span>
|
|
617
|
-
<span class="cline-any cline-neutral"> </span>
|
|
618
|
-
<span class="cline-any cline-neutral"> </span>
|
|
619
|
-
<span class="cline-any cline-yes">194x</span>
|
|
620
|
-
<span class="cline-any cline-neutral"> </span>
|
|
621
|
-
<span class="cline-any cline-yes">9x</span>
|
|
622
|
-
<span class="cline-any cline-neutral"> </span>
|
|
623
|
-
<span class="cline-any cline-neutral"> </span>
|
|
624
|
-
<span class="cline-any cline-yes">9x</span>
|
|
625
|
-
<span class="cline-any cline-neutral"> </span>
|
|
626
|
-
<span class="cline-any cline-yes">8x</span>
|
|
627
|
-
<span class="cline-any cline-neutral"> </span>
|
|
628
|
-
<span class="cline-any cline-yes">8x</span>
|
|
629
|
-
<span class="cline-any cline-yes">2x</span>
|
|
630
|
-
<span class="cline-any cline-yes">6x</span>
|
|
631
|
-
<span class="cline-any cline-yes">6x</span>
|
|
632
|
-
<span class="cline-any cline-neutral"> </span>
|
|
633
|
-
<span class="cline-any cline-yes">2x</span>
|
|
634
|
-
<span class="cline-any cline-neutral"> </span>
|
|
635
|
-
<span class="cline-any cline-neutral"> </span>
|
|
636
|
-
<span class="cline-any cline-yes">6x</span>
|
|
637
|
-
<span class="cline-any cline-neutral"> </span>
|
|
638
|
-
<span class="cline-any cline-neutral"> </span>
|
|
639
|
-
<span class="cline-any cline-neutral"> </span>
|
|
640
|
-
<span class="cline-any cline-neutral"> </span>
|
|
641
|
-
<span class="cline-any cline-yes">2x</span>
|
|
642
|
-
<span class="cline-any cline-yes">2x</span>
|
|
643
|
-
<span class="cline-any cline-yes">2x</span>
|
|
644
|
-
<span class="cline-any cline-neutral"> </span>
|
|
645
|
-
<span class="cline-any cline-neutral"> </span>
|
|
646
|
-
<span class="cline-any cline-yes">4x</span>
|
|
647
|
-
<span class="cline-any cline-neutral"> </span>
|
|
648
|
-
<span class="cline-any cline-neutral"> </span>
|
|
649
|
-
<span class="cline-any cline-neutral"> </span>
|
|
650
|
-
<span class="cline-any cline-yes">12x</span>
|
|
651
|
-
<span class="cline-any cline-yes">12x</span>
|
|
652
|
-
<span class="cline-any cline-neutral"> </span>
|
|
653
|
-
<span class="cline-any cline-yes">9x</span>
|
|
654
|
-
<span class="cline-any cline-neutral"> </span>
|
|
655
|
-
<span class="cline-any cline-yes">9x</span>
|
|
656
|
-
<span class="cline-any cline-yes">9x</span>
|
|
657
|
-
<span class="cline-any cline-yes">9x</span>
|
|
658
|
-
<span class="cline-any cline-neutral"> </span>
|
|
659
|
-
<span class="cline-any cline-yes">8x</span>
|
|
660
|
-
<span class="cline-any cline-neutral"> </span>
|
|
661
|
-
<span class="cline-any cline-neutral"> </span>
|
|
662
|
-
<span class="cline-any cline-neutral"> </span>
|
|
663
|
-
<span class="cline-any cline-yes">22x</span>
|
|
664
|
-
<span class="cline-any cline-yes">22x</span>
|
|
665
|
-
<span class="cline-any cline-neutral"> </span>
|
|
666
|
-
<span class="cline-any cline-yes">22x</span>
|
|
667
|
-
<span class="cline-any cline-yes">3x</span>
|
|
668
|
-
<span class="cline-any cline-neutral"> </span>
|
|
669
|
-
<span class="cline-any cline-yes">19x</span>
|
|
670
|
-
<span class="cline-any cline-neutral"> </span>
|
|
671
|
-
<span class="cline-any cline-neutral"> </span>
|
|
672
|
-
<span class="cline-any cline-yes">22x</span>
|
|
673
|
-
<span class="cline-any cline-neutral"> </span>
|
|
674
|
-
<span class="cline-any cline-neutral"> </span>
|
|
675
|
-
<span class="cline-any cline-neutral"> </span>
|
|
676
|
-
<span class="cline-any cline-yes">194x</span>
|
|
677
|
-
<span class="cline-any cline-yes">194x</span>
|
|
678
|
-
<span class="cline-any cline-yes">2x</span>
|
|
679
|
-
<span class="cline-any cline-neutral"> </span>
|
|
680
|
-
<span class="cline-any cline-neutral"> </span>
|
|
681
|
-
<span class="cline-any cline-neutral"> </span>
|
|
682
|
-
<span class="cline-any cline-neutral"> </span>
|
|
683
|
-
<span class="cline-any cline-yes">194x</span>
|
|
684
|
-
<span class="cline-any cline-yes">194x</span>
|
|
685
|
-
<span class="cline-any cline-yes">194x</span>
|
|
686
|
-
<span class="cline-any cline-neutral"> </span>
|
|
687
|
-
<span class="cline-any cline-yes">194x</span>
|
|
688
|
-
<span class="cline-any cline-yes">194x</span>
|
|
689
|
-
<span class="cline-any cline-yes">194x</span>
|
|
690
|
-
<span class="cline-any cline-yes">194x</span>
|
|
691
|
-
<span class="cline-any cline-yes">2x</span>
|
|
692
|
-
<span class="cline-any cline-neutral"> </span>
|
|
693
|
-
<span class="cline-any cline-neutral"> </span>
|
|
694
|
-
<span class="cline-any cline-yes">194x</span>
|
|
695
|
-
<span class="cline-any cline-neutral"> </span>
|
|
696
|
-
<span class="cline-any cline-yes">194x</span>
|
|
697
|
-
<span class="cline-any cline-neutral"> </span>
|
|
698
|
-
<span class="cline-any cline-yes">11x</span>
|
|
699
|
-
<span class="cline-any cline-yes">11x</span>
|
|
700
|
-
<span class="cline-any cline-yes">11x</span>
|
|
701
|
-
<span class="cline-any cline-yes">1x</span>
|
|
702
|
-
<span class="cline-any cline-neutral"> </span>
|
|
703
|
-
<span class="cline-any cline-neutral"> </span>
|
|
704
|
-
<span class="cline-any cline-neutral"> </span>
|
|
705
|
-
<span class="cline-any cline-neutral"> </span>
|
|
706
|
-
<span class="cline-any cline-neutral"> </span>
|
|
707
|
-
<span class="cline-any cline-neutral"> </span>
|
|
708
|
-
<span class="cline-any cline-neutral"> </span>
|
|
709
|
-
<span class="cline-any cline-neutral"> </span>
|
|
710
|
-
<span class="cline-any cline-neutral"> </span>
|
|
711
|
-
<span class="cline-any cline-yes">5x</span>
|
|
712
|
-
<span class="cline-any cline-yes">5x</span>
|
|
713
|
-
<span class="cline-any cline-yes">1x</span>
|
|
714
|
-
<span class="cline-any cline-neutral"> </span>
|
|
715
|
-
<span class="cline-any cline-neutral"> </span>
|
|
716
|
-
<span class="cline-any cline-neutral"> </span>
|
|
717
|
-
<span class="cline-any cline-neutral"> </span>
|
|
718
|
-
<span class="cline-any cline-neutral"> </span>
|
|
719
|
-
<span class="cline-any cline-neutral"> </span>
|
|
720
|
-
<span class="cline-any cline-neutral"> </span>
|
|
721
|
-
<span class="cline-any cline-neutral"> </span>
|
|
722
|
-
<span class="cline-any cline-neutral"> </span>
|
|
723
|
-
<span class="cline-any cline-yes">4x</span>
|
|
724
|
-
<span class="cline-any cline-yes">4x</span>
|
|
725
|
-
<span class="cline-any cline-yes">2x</span>
|
|
726
|
-
<span class="cline-any cline-neutral"> </span>
|
|
727
|
-
<span class="cline-any cline-neutral"> </span>
|
|
728
|
-
<span class="cline-any cline-neutral"> </span>
|
|
729
|
-
<span class="cline-any cline-neutral"> </span>
|
|
730
|
-
<span class="cline-any cline-neutral"> </span>
|
|
731
|
-
<span class="cline-any cline-neutral"> </span>
|
|
732
|
-
<span class="cline-any cline-neutral"> </span>
|
|
733
|
-
<span class="cline-any cline-neutral"> </span>
|
|
734
|
-
<span class="cline-any cline-neutral"> </span>
|
|
735
|
-
<span class="cline-any cline-yes">194x</span>
|
|
736
|
-
<span class="cline-any cline-neutral"> </span>
|
|
737
|
-
<span class="cline-any cline-yes">194x</span>
|
|
738
|
-
<span class="cline-any cline-neutral"> </span>
|
|
739
|
-
<span class="cline-any cline-neutral"> </span>
|
|
740
|
-
<span class="cline-any cline-neutral"> </span>
|
|
741
|
-
<span class="cline-any cline-neutral"> </span>
|
|
742
|
-
<span class="cline-any cline-neutral"> </span>
|
|
743
|
-
<span class="cline-any cline-neutral"> </span>
|
|
744
|
-
<span class="cline-any cline-neutral"> </span>
|
|
745
|
-
<span class="cline-any cline-neutral"> </span>
|
|
746
|
-
<span class="cline-any cline-neutral"> </span>
|
|
747
|
-
<span class="cline-any cline-neutral"> </span>
|
|
748
|
-
<span class="cline-any cline-neutral"> </span>
|
|
749
|
-
<span class="cline-any cline-neutral"> </span>
|
|
750
|
-
<span class="cline-any cline-neutral"> </span>
|
|
751
|
-
<span class="cline-any cline-neutral"> </span>
|
|
752
|
-
<span class="cline-any cline-neutral"> </span>
|
|
753
|
-
<span class="cline-any cline-neutral"> </span>
|
|
754
|
-
<span class="cline-any cline-neutral"> </span>
|
|
755
|
-
<span class="cline-any cline-neutral"> </span>
|
|
756
|
-
<span class="cline-any cline-neutral"> </span>
|
|
757
|
-
<span class="cline-any cline-neutral"> </span>
|
|
758
|
-
<span class="cline-any cline-neutral"> </span>
|
|
759
|
-
<span class="cline-any cline-yes">29x</span>
|
|
760
|
-
<span class="cline-any cline-yes">29x</span>
|
|
761
|
-
<span class="cline-any cline-yes">29x</span>
|
|
762
|
-
<span class="cline-any cline-yes">29x</span>
|
|
763
|
-
<span class="cline-any cline-yes">19x</span>
|
|
764
|
-
<span class="cline-any cline-yes">19x</span>
|
|
765
|
-
<span class="cline-any cline-yes">19x</span>
|
|
766
|
-
<span class="cline-any cline-yes">19x</span>
|
|
767
|
-
<span class="cline-any cline-neutral"> </span>
|
|
768
|
-
<span class="cline-any cline-yes">19x</span>
|
|
769
|
-
<span class="cline-any cline-yes">16x</span>
|
|
770
|
-
<span class="cline-any cline-yes">16x</span>
|
|
771
|
-
<span class="cline-any cline-neutral"> </span>
|
|
772
|
-
<span class="cline-any cline-neutral"> </span>
|
|
773
|
-
<span class="cline-any cline-yes">19x</span>
|
|
774
|
-
<span class="cline-any cline-yes">10x</span>
|
|
775
|
-
<span class="cline-any cline-yes">7x</span>
|
|
776
|
-
<span class="cline-any cline-yes">7x</span>
|
|
777
|
-
<span class="cline-any cline-yes">7x</span>
|
|
778
|
-
<span class="cline-any cline-neutral"> </span>
|
|
779
|
-
<span class="cline-any cline-yes">7x</span>
|
|
780
|
-
<span class="cline-any cline-neutral"> </span>
|
|
781
|
-
<span class="cline-any cline-yes">7x</span>
|
|
782
|
-
<span class="cline-any cline-yes">5x</span>
|
|
783
|
-
<span class="cline-any cline-yes">5x</span>
|
|
784
|
-
<span class="cline-any cline-neutral"> </span>
|
|
785
|
-
<span class="cline-any cline-neutral"> </span>
|
|
786
|
-
<span class="cline-any cline-yes">7x</span>
|
|
787
|
-
<span class="cline-any cline-yes">2x</span>
|
|
788
|
-
<span class="cline-any cline-neutral"> </span>
|
|
789
|
-
<span class="cline-any cline-neutral"> </span>
|
|
790
|
-
<span class="cline-any cline-neutral"> </span>
|
|
791
|
-
<span class="cline-any cline-neutral"> </span>
|
|
792
|
-
<span class="cline-any cline-neutral"> </span>
|
|
793
|
-
<span class="cline-any cline-yes">2x</span>
|
|
794
|
-
<span class="cline-any cline-yes">2x</span>
|
|
795
|
-
<span class="cline-any cline-yes">2x</span>
|
|
796
|
-
<span class="cline-any cline-neutral"> </span>
|
|
797
|
-
<span class="cline-any cline-neutral"> </span>
|
|
798
|
-
<span class="cline-any cline-neutral"> </span>
|
|
799
|
-
<span class="cline-any cline-yes">10x</span>
|
|
800
|
-
<span class="cline-any cline-yes">10x</span>
|
|
801
|
-
<span class="cline-any cline-neutral"> </span>
|
|
802
|
-
<span class="cline-any cline-yes">10x</span>
|
|
803
|
-
<span class="cline-any cline-yes">2x</span>
|
|
804
|
-
<span class="cline-any cline-neutral"> </span>
|
|
805
|
-
<span class="cline-any cline-neutral"> </span>
|
|
806
|
-
<span class="cline-any cline-yes">8x</span>
|
|
807
|
-
<span class="cline-any cline-yes">8x</span>
|
|
808
|
-
<span class="cline-any cline-neutral"> </span>
|
|
809
|
-
<span class="cline-any cline-yes">6x</span>
|
|
810
|
-
<span class="cline-any cline-neutral"> </span>
|
|
811
|
-
<span class="cline-any cline-yes">6x</span>
|
|
812
|
-
<span class="cline-any cline-neutral"> </span>
|
|
813
|
-
<span class="cline-any cline-yes">2x</span>
|
|
814
|
-
<span class="cline-any cline-yes">1x</span>
|
|
815
|
-
<span class="cline-any cline-neutral"> </span>
|
|
816
|
-
<span class="cline-any cline-neutral"> </span>
|
|
817
|
-
<span class="cline-any cline-yes">1x</span>
|
|
818
|
-
<span class="cline-any cline-neutral"> </span>
|
|
819
|
-
<span class="cline-any cline-neutral"> </span>
|
|
820
|
-
<span class="cline-any cline-neutral"> </span>
|
|
821
|
-
<span class="cline-any cline-neutral"> </span>
|
|
822
|
-
<span class="cline-any cline-yes">1x</span>
|
|
823
|
-
<span class="cline-any cline-yes">1x</span>
|
|
824
|
-
<span class="cline-any cline-neutral"> </span>
|
|
825
|
-
<span class="cline-any cline-yes">1x</span>
|
|
826
|
-
<span class="cline-any cline-neutral"> </span>
|
|
827
|
-
<span class="cline-any cline-neutral"> </span>
|
|
828
|
-
<span class="cline-any cline-neutral"> </span>
|
|
829
|
-
<span class="cline-any cline-neutral"> </span>
|
|
830
|
-
<span class="cline-any cline-neutral"> </span>
|
|
831
|
-
<span class="cline-any cline-neutral"> </span>
|
|
832
|
-
<span class="cline-any cline-yes">1x</span>
|
|
833
|
-
<span class="cline-any cline-yes">1x</span>
|
|
834
|
-
<span class="cline-any cline-neutral"> </span>
|
|
835
|
-
<span class="cline-any cline-yes">3x</span>
|
|
836
|
-
<span class="cline-any cline-yes">1x</span>
|
|
837
|
-
<span class="cline-any cline-yes">2x</span>
|
|
838
|
-
<span class="cline-any cline-neutral"> </span>
|
|
839
|
-
<span class="cline-any cline-yes">2x</span>
|
|
840
|
-
<span class="cline-any cline-neutral"> </span>
|
|
841
|
-
<span class="cline-any cline-neutral"> </span>
|
|
842
|
-
<span class="cline-any cline-neutral"> </span>
|
|
843
|
-
<span class="cline-any cline-neutral"> </span>
|
|
844
|
-
<span class="cline-any cline-yes">2x</span>
|
|
845
|
-
<span class="cline-any cline-neutral"> </span>
|
|
846
|
-
<span class="cline-any cline-neutral"> </span>
|
|
847
|
-
<span class="cline-any cline-yes">1x</span>
|
|
848
|
-
<span class="cline-any cline-yes">2x</span>
|
|
849
|
-
<span class="cline-any cline-yes">2x</span>
|
|
850
|
-
<span class="cline-any cline-yes">4x</span>
|
|
851
|
-
<span class="cline-any cline-neutral"> </span>
|
|
852
|
-
<span class="cline-any cline-yes">4x</span>
|
|
853
|
-
<span class="cline-any cline-yes">1x</span>
|
|
854
|
-
<span class="cline-any cline-neutral"> </span>
|
|
855
|
-
<span class="cline-any cline-neutral"> </span>
|
|
856
|
-
<span class="cline-any cline-neutral"> </span>
|
|
857
|
-
<span class="cline-any cline-neutral"> </span>
|
|
858
|
-
<span class="cline-any cline-yes">1x</span>
|
|
859
|
-
<span class="cline-any cline-yes">1x</span>
|
|
860
|
-
<span class="cline-any cline-yes">1x</span>
|
|
861
|
-
<span class="cline-any cline-yes">1x</span>
|
|
862
|
-
<span class="cline-any cline-yes">1x</span>
|
|
863
|
-
<span class="cline-any cline-yes">1x</span>
|
|
864
|
-
<span class="cline-any cline-neutral"> </span>
|
|
865
|
-
<span class="cline-any cline-neutral"> </span>
|
|
866
|
-
<span class="cline-any cline-neutral"> </span>
|
|
867
|
-
<span class="cline-any cline-neutral"> </span>
|
|
868
|
-
<span class="cline-any cline-yes">1x</span>
|
|
869
|
-
<span class="cline-any cline-neutral"> </span>
|
|
870
|
-
<span class="cline-any cline-neutral"> </span>
|
|
871
|
-
<span class="cline-any cline-neutral"> </span>
|
|
872
|
-
<span class="cline-any cline-yes">30x</span>
|
|
873
|
-
<span class="cline-any cline-yes">27x</span>
|
|
874
|
-
<span class="cline-any cline-neutral"> </span>
|
|
875
|
-
<span class="cline-any cline-neutral"> </span>
|
|
876
|
-
<span class="cline-any cline-yes">3x</span>
|
|
877
|
-
<span class="cline-any cline-yes">1x</span>
|
|
878
|
-
<span class="cline-any cline-neutral"> </span>
|
|
879
|
-
<span class="cline-any cline-neutral"> </span>
|
|
880
|
-
<span class="cline-any cline-yes">2x</span>
|
|
881
|
-
<span class="cline-any cline-neutral"> </span>
|
|
882
|
-
<span class="cline-any cline-yes">2x</span>
|
|
883
|
-
<span class="cline-any cline-yes">4x</span>
|
|
884
|
-
<span class="cline-any cline-yes">12x</span>
|
|
885
|
-
<span class="cline-any cline-yes">12x</span>
|
|
886
|
-
<span class="cline-any cline-neutral"> </span>
|
|
887
|
-
<span class="cline-any cline-yes">12x</span>
|
|
888
|
-
<span class="cline-any cline-neutral"> </span>
|
|
889
|
-
<span class="cline-any cline-yes">8x</span>
|
|
890
|
-
<span class="cline-any cline-neutral"> </span>
|
|
891
|
-
<span class="cline-any cline-neutral"> </span>
|
|
892
|
-
<span class="cline-any cline-neutral"> </span>
|
|
893
|
-
<span class="cline-any cline-yes">2x</span>
|
|
894
|
-
<span class="cline-any cline-neutral"> </span>
|
|
895
|
-
<span class="cline-any cline-neutral"> </span>
|
|
896
|
-
<span class="cline-any cline-neutral"> </span>
|
|
897
|
-
<span class="cline-any cline-yes">25x</span>
|
|
898
|
-
<span class="cline-any cline-yes">25x</span>
|
|
899
|
-
<span class="cline-any cline-neutral"> </span>
|
|
900
|
-
<span class="cline-any cline-neutral"> </span>
|
|
901
|
-
<span class="cline-any cline-neutral"> </span>
|
|
902
|
-
<span class="cline-any cline-neutral"> </span>
|
|
903
|
-
<span class="cline-any cline-neutral"> </span>
|
|
904
|
-
<span class="cline-any cline-neutral"> </span>
|
|
905
|
-
<span class="cline-any cline-neutral"> </span>
|
|
906
|
-
<span class="cline-any cline-neutral"> </span>
|
|
907
|
-
<span class="cline-any cline-neutral"> </span>
|
|
908
|
-
<span class="cline-any cline-neutral"> </span>
|
|
909
|
-
<span class="cline-any cline-yes">42x</span>
|
|
910
|
-
<span class="cline-any cline-neutral"> </span>
|
|
911
|
-
<span class="cline-any cline-neutral"> </span>
|
|
912
|
-
<span class="cline-any cline-yes">42x</span>
|
|
913
|
-
<span class="cline-any cline-yes">18x</span>
|
|
914
|
-
<span class="cline-any cline-yes">18x</span>
|
|
915
|
-
<span class="cline-any cline-neutral"> </span>
|
|
916
|
-
<span class="cline-any cline-neutral"> </span>
|
|
917
|
-
<span class="cline-any cline-yes">24x</span>
|
|
918
|
-
<span class="cline-any cline-yes">24x</span>
|
|
919
|
-
<span class="cline-any cline-neutral"> </span>
|
|
920
|
-
<span class="cline-any cline-yes">21x</span>
|
|
921
|
-
<span class="cline-any cline-neutral"> </span>
|
|
922
|
-
<span class="cline-any cline-yes">3x</span>
|
|
923
|
-
<span class="cline-any cline-yes">2x</span>
|
|
924
|
-
<span class="cline-any cline-yes">2x</span>
|
|
925
|
-
<span class="cline-any cline-neutral"> </span>
|
|
926
|
-
<span class="cline-any cline-neutral"> </span>
|
|
927
|
-
<span class="cline-any cline-yes">1x</span>
|
|
928
|
-
<span class="cline-any cline-neutral"> </span>
|
|
929
|
-
<span class="cline-any cline-neutral"> </span>
|
|
930
|
-
<span class="cline-any cline-neutral"> </span>
|
|
931
|
-
<span class="cline-any cline-neutral"> </span>
|
|
932
|
-
<span class="cline-any cline-yes">30x</span>
|
|
933
|
-
<span class="cline-any cline-yes">65x</span>
|
|
934
|
-
<span class="cline-any cline-yes">65x</span>
|
|
935
|
-
<span class="cline-any cline-neutral"> </span>
|
|
936
|
-
<span class="cline-any cline-neutral"> </span>
|
|
937
|
-
<span class="cline-any cline-neutral"> </span>
|
|
938
|
-
<span class="cline-any cline-neutral"> </span>
|
|
939
|
-
<span class="cline-any cline-yes">11x</span>
|
|
940
|
-
<span class="cline-any cline-yes">1x</span>
|
|
941
|
-
<span class="cline-any cline-neutral"> </span>
|
|
942
|
-
<span class="cline-any cline-neutral"> </span>
|
|
943
|
-
<span class="cline-any cline-yes">10x</span>
|
|
944
|
-
<span class="cline-any cline-yes">10x</span>
|
|
945
|
-
<span class="cline-any cline-neutral"> </span>
|
|
946
|
-
<span class="cline-any cline-yes">10x</span>
|
|
947
|
-
<span class="cline-any cline-yes">1x</span>
|
|
948
|
-
<span class="cline-any cline-neutral"> </span>
|
|
949
|
-
<span class="cline-any cline-neutral"> </span>
|
|
950
|
-
<span class="cline-any cline-yes">9x</span>
|
|
951
|
-
<span class="cline-any cline-yes">23x</span>
|
|
952
|
-
<span class="cline-any cline-neutral"> </span>
|
|
953
|
-
<span class="cline-any cline-yes">23x</span>
|
|
954
|
-
<span class="cline-any cline-neutral"> </span>
|
|
955
|
-
<span class="cline-any cline-neutral"> </span>
|
|
956
|
-
<span class="cline-any cline-neutral"> </span>
|
|
957
|
-
<span class="cline-any cline-neutral"> </span>
|
|
958
|
-
<span class="cline-any cline-yes">21x</span>
|
|
959
|
-
<span class="cline-any cline-yes">1x</span>
|
|
960
|
-
<span class="cline-any cline-neutral"> </span>
|
|
961
|
-
<span class="cline-any cline-neutral"> </span>
|
|
962
|
-
<span class="cline-any cline-yes">20x</span>
|
|
963
|
-
<span class="cline-any cline-neutral"> </span>
|
|
964
|
-
<span class="cline-any cline-yes">20x</span>
|
|
965
|
-
<span class="cline-any cline-yes">1x</span>
|
|
966
|
-
<span class="cline-any cline-neutral"> </span>
|
|
967
|
-
<span class="cline-any cline-neutral"> </span>
|
|
968
|
-
<span class="cline-any cline-yes">19x</span>
|
|
969
|
-
<span class="cline-any cline-yes">19x</span>
|
|
970
|
-
<span class="cline-any cline-neutral"> </span>
|
|
971
|
-
<span class="cline-any cline-neutral"> </span>
|
|
972
|
-
<span class="cline-any cline-neutral"> </span>
|
|
973
|
-
<span class="cline-any cline-yes">3x</span>
|
|
974
|
-
<span class="cline-any cline-yes">4x</span>
|
|
975
|
-
<span class="cline-any cline-yes">4x</span>
|
|
976
|
-
<span class="cline-any cline-neutral"> </span>
|
|
977
|
-
<span class="cline-any cline-neutral"> </span>
|
|
978
|
-
<span class="cline-any cline-yes">3x</span>
|
|
979
|
-
<span class="cline-any cline-neutral"> </span>
|
|
980
|
-
<span class="cline-any cline-yes">2x</span>
|
|
981
|
-
<span class="cline-any cline-neutral"> </span>
|
|
982
|
-
<span class="cline-any cline-yes">2x</span>
|
|
983
|
-
<span class="cline-any cline-neutral"> </span>
|
|
984
|
-
<span class="cline-any cline-neutral"> </span>
|
|
985
|
-
<span class="cline-any cline-neutral"> </span>
|
|
986
|
-
<span class="cline-any cline-yes">1x</span>
|
|
987
|
-
<span class="cline-any cline-neutral"> </span>
|
|
988
|
-
<span class="cline-any cline-neutral"> </span>
|
|
989
|
-
<span class="cline-any cline-neutral"> </span>
|
|
990
|
-
<span class="cline-any cline-yes">2x</span>
|
|
991
|
-
<span class="cline-any cline-yes">1x</span>
|
|
992
|
-
<span class="cline-any cline-neutral"> </span>
|
|
993
|
-
<span class="cline-any cline-yes">1x</span>
|
|
994
|
-
<span class="cline-any cline-neutral"> </span>
|
|
995
|
-
<span class="cline-any cline-neutral"> </span>
|
|
996
|
-
<span class="cline-any cline-neutral"> </span>
|
|
997
|
-
<span class="cline-any cline-yes">1x</span>
|
|
998
|
-
<span class="cline-any cline-yes">1x</span>
|
|
999
|
-
<span class="cline-any cline-yes">1x</span>
|
|
1000
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1001
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1002
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1003
|
-
<span class="cline-any cline-yes">1x</span>
|
|
1004
|
-
<span class="cline-any cline-yes">2x</span>
|
|
1005
|
-
<span class="cline-any cline-yes">1x</span>
|
|
1006
|
-
<span class="cline-any cline-yes">1x</span>
|
|
1007
|
-
<span class="cline-any cline-yes">1x</span>
|
|
1008
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1009
|
-
<span class="cline-any cline-yes">1x</span>
|
|
1010
|
-
<span class="cline-any cline-yes">1x</span>
|
|
1011
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1012
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1013
|
-
<span class="cline-any cline-yes">168x</span>
|
|
1014
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1015
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1016
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1017
|
-
<span class="cline-any cline-yes">1x</span>
|
|
1018
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1019
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1020
|
-
<span class="cline-any cline-yes">1x</span>
|
|
1021
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1022
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1023
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1024
|
-
<span class="cline-any cline-yes">11x</span>
|
|
1025
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1026
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1027
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1028
|
-
<span class="cline-any cline-yes">16x</span>
|
|
1029
|
-
<span class="cline-any cline-yes">16x</span>
|
|
1030
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1031
|
-
<span class="cline-any cline-yes">16x</span>
|
|
1032
|
-
<span class="cline-any cline-yes">67x</span>
|
|
1033
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1034
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1035
|
-
<span class="cline-any cline-yes">16x</span>
|
|
1036
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1037
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1038
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1039
|
-
<span class="cline-any cline-yes">28x</span>
|
|
1040
|
-
<span class="cline-any cline-yes">28x</span>
|
|
1041
|
-
<span class="cline-any cline-yes">27x</span>
|
|
1042
|
-
<span class="cline-any cline-yes">27x</span>
|
|
1043
|
-
<span class="cline-any cline-yes">2x</span>
|
|
1044
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1045
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1046
|
-
<span class="cline-any cline-yes">25x</span>
|
|
1047
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1048
|
-
<span class="cline-any cline-yes">26x</span>
|
|
1049
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1050
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1051
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1052
|
-
<span class="cline-any cline-yes">2x</span>
|
|
1053
|
-
<span class="cline-any cline-yes">2x</span>
|
|
1054
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1055
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1056
|
-
<span class="cline-any cline-neutral"> </span></td><td class="text"><pre class="prettyprint lang-js">import {
|
|
1057
|
-
IDictionary,
|
|
1058
|
-
InstanceNotFoundError,
|
|
1059
|
-
Metadata,
|
|
1060
|
-
MethodNotAssignedError,
|
|
1061
|
-
Utils,
|
|
1062
|
-
ViewService,
|
|
1063
|
-
Event as ZdEvent,
|
|
1064
|
-
} from '@zeedhi/core';
|
|
1065
|
-
import merge from 'lodash.merge';
|
|
1066
|
-
import { omit } from '../../utils';
|
|
1067
|
-
import { IComponentRender } from '../zd-component/interfaces';
|
|
1068
|
-
import { Input } from '../zd-input/input';
|
|
1069
|
-
import { InputFactory } from '../zd-input/input-factory';
|
|
1070
|
-
import { NotEditingError, RowNotFoundError } from './errors';
|
|
1071
|
-
import { GridColumnEditable } from './grid-column-editable';
|
|
1072
|
-
import { IDataEditor, IGridColumnEditable, IGridEditable } from './interfaces';
|
|
1073
|
-
|
|
1074
|
-
export class DataEditor implements IDataEditor {
|
|
1075
|
-
protected grid: IGridEditable;
|
|
1076
|
-
|
|
1077
|
-
protected editedRows: Map<string | number, IDictionary> = new Map();
|
|
1078
|
-
|
|
1079
|
-
/**
|
|
1080
|
-
* Invalid inline components
|
|
1081
|
-
* @private
|
|
1082
|
-
*/
|
|
1083
|
-
protected invalidComponents: Set<string> = new Set();
|
|
1084
|
-
|
|
1085
|
-
private viewEnterEdit: ((rowKey: string, columnName: string) => void) | null = null;
|
|
1086
|
-
|
|
1087
|
-
constructor(grid: IGridEditable) {
|
|
1088
|
-
this.grid = grid;
|
|
1089
|
-
}
|
|
1090
|
-
|
|
1091
|
-
/**
|
|
1092
|
-
* Gets the editable component name
|
|
1093
|
-
* @param key Row unique key
|
|
1094
|
-
* @param columnName Column name
|
|
1095
|
-
*/
|
|
1096
|
-
private getCompName(key: string | number, columnName: string) {
|
|
1097
|
-
return `${columnName}_editable_${key}`;
|
|
1098
|
-
}
|
|
1099
|
-
|
|
1100
|
-
getVisibleValue(row: IDictionary, column: IGridColumnEditable) {
|
|
1101
|
-
const key = this.grid.getRowKey(row);
|
|
1102
|
-
const editedRow = this.editedRows.get(key);
|
|
1103
|
-
if (editedRow && Object.prototype.hasOwnProperty.call(editedRow, column.name)) {
|
|
1104
|
-
return editedRow[column.name];
|
|
1105
|
-
}
|
|
1106
|
-
return row[column.name];
|
|
1107
|
-
}
|
|
1108
|
-
|
|
1109
|
-
/**
|
|
1110
|
-
* Pushes lookup values into the column's datasource
|
|
1111
|
-
* If the row[column.name] has a selected value, pushes it
|
|
1112
|
-
*/
|
|
1113
|
-
private checkLookupData(column: IGridColumnEditable, row: IDictionary, componentProps: IDictionary) {
|
|
1114
|
-
if (!row[column.name] || !column.lookupData || !componentProps.datasource) return;
|
|
1115
|
-
|
|
1116
|
-
componentProps.datasource.data = componentProps.datasource.data || [];
|
|
1117
|
-
|
|
1118
|
-
// prevent pushing lookup values when using accessor in data
|
|
1119
|
-
if (!Array.isArray(componentProps.datasource.data)) return;
|
|
1120
|
-
|
|
1121
|
-
const colValue = row[column.name];
|
|
1122
|
-
|
|
1123
|
-
if (Array.isArray(colValue)) {
|
|
1124
|
-
colValue.forEach((item) => {
|
|
1125
|
-
const value = typeof item === 'object' ? item[componentProps.dataValue] : item;
|
|
1126
|
-
this.pushLookupValue(column, value, componentProps);
|
|
1127
|
-
});
|
|
1128
|
-
return;
|
|
1129
|
-
}
|
|
1130
|
-
|
|
1131
|
-
if (
|
|
1132
|
-
colValue &&
|
|
1133
|
-
typeof colValue === 'object' &&
|
|
1134
|
-
Object.prototype.hasOwnProperty.call(colValue, componentProps.dataValue)
|
|
1135
|
-
) {
|
|
1136
|
-
const value = (colValue as IDictionary)[componentProps.dataValue];
|
|
1137
|
-
this.pushLookupValue(column, value, componentProps);
|
|
1138
|
-
return;
|
|
1139
|
-
}
|
|
1140
|
-
|
|
1141
|
-
this.pushLookupValue(column, colValue, componentProps);
|
|
1142
|
-
}
|
|
1143
|
-
|
|
1144
|
-
private pushLookupValue(column: IGridColumnEditable, value: any, componentProps: IDictionary) {
|
|
1145
|
-
const lookupValue = column.lookupData[value];
|
|
1146
|
-
if (!lookupValue) return;
|
|
1147
|
-
|
|
1148
|
-
const { dataValue } = componentProps;
|
|
1149
|
-
|
|
1150
|
-
const key = lookupValue[dataValue];
|
|
1151
|
-
const isValueInDatasource = componentProps.datasource.data.find((row: IDictionary) => row[dataValue] === key);
|
|
1152
|
-
if (isValueInDatasource) return;
|
|
1153
|
-
|
|
1154
|
-
componentProps.datasource.data.push(lookupValue);
|
|
1155
|
-
}
|
|
1156
|
-
|
|
1157
|
-
private async checkCompValidity(input: Input) {
|
|
1158
|
-
const validationErrors = await input.validate();
|
|
1159
|
-
const isValid = validationErrors.length === 0;
|
|
1160
|
-
|
|
1161
|
-
if (!isValid) {
|
|
1162
|
-
this.invalidComponents.add(input.name);
|
|
1163
|
-
} else {
|
|
1164
|
-
this.invalidComponents.delete(input.name);
|
|
1165
|
-
}
|
|
1166
|
-
|
|
1167
|
-
return isValid;
|
|
1168
|
-
}
|
|
1169
|
-
|
|
1170
|
-
private updateOriginalRow(key: any, row: IDictionary) {
|
|
1171
|
-
const editedRow = this.editedRows.get(key);
|
|
1172
|
-
if (editedRow) {
|
|
1173
|
-
editedRow.originalRow = omit(row, 'originalRow');
|
|
1174
|
-
}
|
|
1175
|
-
}
|
|
1176
|
-
|
|
1177
|
-
getEditableComponent(column: GridColumnEditable, row: IDictionary<any>): IComponentRender {
|
|
1178
|
-
const key = this.grid.getRowKey(row);
|
|
1179
|
-
const compName = this.getCompName(key, column.name);
|
|
1180
|
-
const colValue: any = this.getVisibleValue(row, column);
|
|
1181
|
-
|
|
1182
|
-
const conditionalProps = this.grid.getConditionalProps({ row, column });
|
|
1183
|
-
const componentProps: IComponentRender = merge({}, column.componentProps, conditionalProps?.componentProps);
|
|
1184
|
-
let compEvents: any = {};
|
|
1185
|
-
if (componentProps?.events) {
|
|
1186
|
-
compEvents = ZdEvent.factory(componentProps.events);
|
|
1187
|
-
}
|
|
1188
|
-
|
|
1189
|
-
this.checkLookupData(column, { ...row }, componentProps);
|
|
1190
|
-
|
|
1191
|
-
const newEvents = {
|
|
1192
|
-
change: ({ component, event, element }: any) => {
|
|
1193
|
-
this.changeEditableComponent(column, { ...row }, component.value, component);
|
|
1194
|
-
this.checkCompValidity(component);
|
|
1195
|
-
if (compEvents.change) {
|
|
1196
|
-
compEvents.change({
|
|
1197
|
-
component,
|
|
1198
|
-
event,
|
|
1199
|
-
element,
|
|
1200
|
-
row,
|
|
1201
|
-
column,
|
|
1202
|
-
});
|
|
1203
|
-
}
|
|
1204
|
-
},
|
|
1205
|
-
blur: ({ event, element, component }: any) => {
|
|
1206
|
-
this.checkCompValidity(component);
|
|
1207
|
-
if (compEvents.blur) {
|
|
1208
|
-
compEvents.blur({
|
|
1209
|
-
component,
|
|
1210
|
-
event,
|
|
1211
|
-
element,
|
|
1212
|
-
row,
|
|
1213
|
-
column,
|
|
1214
|
-
});
|
|
1215
|
-
}
|
|
1216
|
-
},
|
|
1217
|
-
focus: ({ event, element, component }: any) => {
|
|
1218
|
-
this.grid.setCurrentRow(row);
|
|
1219
|
-
if (compEvents.focus) {
|
|
1220
|
-
compEvents.focus({
|
|
1221
|
-
component,
|
|
1222
|
-
event,
|
|
1223
|
-
element,
|
|
1224
|
-
row,
|
|
1225
|
-
column,
|
|
1226
|
-
});
|
|
1227
|
-
}
|
|
1228
|
-
},
|
|
1229
|
-
};
|
|
1230
|
-
this.updateOriginalRow(key, row);
|
|
1231
|
-
|
|
1232
|
-
return {
|
|
1233
|
-
...componentProps,
|
|
1234
|
-
name: compName,
|
|
1235
|
-
parent: this.grid,
|
|
1236
|
-
align: column.align,
|
|
1237
|
-
showLabel: false,
|
|
1238
|
-
showHelper: false,
|
|
1239
|
-
dense: true,
|
|
1240
|
-
value: colValue,
|
|
1241
|
-
events: newEvents,
|
|
1242
|
-
autofill: false,
|
|
1243
|
-
allowDuplicate: true,
|
|
1244
|
-
autoRegister: false,
|
|
1245
|
-
};
|
|
1246
|
-
}
|
|
1247
|
-
|
|
1248
|
-
protected changeEditableComponent(
|
|
1249
|
-
column: IGridColumnEditable,
|
|
1250
|
-
row: IDictionary<any>,
|
|
1251
|
-
value: any,
|
|
1252
|
-
component?: Input,
|
|
1253
|
-
): void {
|
|
1254
|
-
const key = this.grid.getRowKey(row);
|
|
1255
|
-
const columnName = column.name;
|
|
1256
|
-
const editedRow = this.editedRows.get(key);
|
|
1257
|
-
if (!Utils.isEqual(value, row[columnName])) {
|
|
1258
|
-
const newRow: IDictionary = { ...editedRow };
|
|
1259
|
-
newRow.originalRow = omit(row, 'originalRow');
|
|
1260
|
-
newRow[columnName] = value;
|
|
1261
|
-
newRow[`${columnName}_original`] = row[columnName];
|
|
1262
|
-
|
|
1263
|
-
if (component) {
|
|
1264
|
-
column.checkOutValues(component, row, newRow);
|
|
1265
|
-
component.value = value;
|
|
1266
|
-
}
|
|
1267
|
-
|
|
1268
|
-
this.editedRows.set(key, newRow);
|
|
1269
|
-
} else if (editedRow) {
|
|
1270
|
-
let newRow = { ...editedRow };
|
|
1271
|
-
newRow = omit(newRow, columnName);
|
|
1272
|
-
newRow = omit(newRow, `${columnName}_original`);
|
|
1273
|
-
|
|
1274
|
-
this.editedRows.set(key, newRow);
|
|
1275
|
-
|
|
1276
|
-
if (component) {
|
|
1277
|
-
column.checkOutValues(component, row, newRow);
|
|
1278
|
-
component.value = value;
|
|
1279
|
-
}
|
|
1280
|
-
|
|
1281
|
-
if (Object.keys(newRow).length === 1 && newRow.originalRow) {
|
|
1282
|
-
this.editedRows.delete(key);
|
|
1283
|
-
}
|
|
1284
|
-
}
|
|
1285
|
-
}
|
|
1286
|
-
|
|
1287
|
-
isEdited(column: IGridColumnEditable, row: IDictionary): boolean {
|
|
1288
|
-
const key = this.grid.getRowKey(row);
|
|
1289
|
-
const editedRow = this.editedRows.get(key);
|
|
1290
|
-
return !!editedRow && editedRow[column.name] !== editedRow[`${column.name}_original`];
|
|
1291
|
-
}
|
|
1292
|
-
|
|
1293
|
-
async isValid(column: IGridColumnEditable, row: IDictionary, revalidate?: boolean): Promise<boolean> {
|
|
1294
|
-
const key = this.grid.getRowKey(row);
|
|
1295
|
-
const compName = this.getCompName(key, column.name);
|
|
1296
|
-
|
|
1297
|
-
if (!revalidate) {
|
|
1298
|
-
return !this.invalidComponents.has(compName);
|
|
1299
|
-
}
|
|
1300
|
-
|
|
1301
|
-
try {
|
|
1302
|
-
const input = this.getComponent<Input>(key, column.name);
|
|
1303
|
-
|
|
1304
|
-
const isValid = await this.checkCompValidity(input);
|
|
1305
|
-
|
|
1306
|
-
return isValid;
|
|
1307
|
-
} catch (e) {
|
|
1308
|
-
if (e instanceof InstanceNotFoundError) {
|
|
1309
|
-
return true;
|
|
1310
|
-
}
|
|
1311
|
-
|
|
1312
|
-
throw e;
|
|
1313
|
-
}
|
|
1314
|
-
}
|
|
1315
|
-
|
|
1316
|
-
checkValid(column: IGridColumnEditable, row: IDictionary): boolean {
|
|
1317
|
-
const key = this.grid.getRowKey(row);
|
|
1318
|
-
const compName = this.getCompName(key, column.name);
|
|
1319
|
-
|
|
1320
|
-
return !this.invalidComponents.has(compName);
|
|
1321
|
-
}
|
|
1322
|
-
|
|
1323
|
-
/**
|
|
1324
|
-
* Checks whether the grid is valid while not in editing mode
|
|
1325
|
-
*/
|
|
1326
|
-
private isViewGridValid(forceEditing = true) {
|
|
1327
|
-
const invalidCompNames: string[] = [];
|
|
1328
|
-
const componentInstances: IDictionary<Input> = {};
|
|
1329
|
-
|
|
1330
|
-
const editableColumns = this.grid.columns.filter((column) => column.editable && column.isVisible);
|
|
1331
|
-
editableColumns.forEach((column) => {
|
|
1332
|
-
const compName = this.getCompName('temp', column.name);
|
|
1333
|
-
|
|
1334
|
-
const componentProps = {
|
|
1335
|
-
...column.componentProps,
|
|
1336
|
-
name: compName,
|
|
1337
|
-
};
|
|
1338
|
-
|
|
1339
|
-
componentInstances[column.name] = InputFactory.factory(componentProps);
|
|
1340
|
-
});
|
|
1341
|
-
|
|
1342
|
-
this.grid.getData().forEach((row) => {
|
|
1343
|
-
const key = this.grid.getRowKey(row);
|
|
1344
|
-
editableColumns.forEach((column) => {
|
|
1345
|
-
const instance = componentInstances[column.name];
|
|
1346
|
-
|
|
1347
|
-
if (!instance.isValid(row[column.name])) {
|
|
1348
|
-
invalidCompNames.push(this.getCompName(key, column.name));
|
|
1349
|
-
}
|
|
1350
|
-
});
|
|
1351
|
-
});
|
|
1352
|
-
|
|
1353
|
-
if (invalidCompNames.length > 0 && forceEditing) {
|
|
1354
|
-
this.grid.editing = true;
|
|
1355
|
-
ViewService.nextTick(() => {
|
|
1356
|
-
invalidCompNames.forEach((compName) => {
|
|
1357
|
-
const invalidComponent = Metadata.getInstance<Input>(compName);
|
|
1358
|
-
invalidComponent.validate();
|
|
1359
|
-
});
|
|
1360
|
-
});
|
|
1361
|
-
}
|
|
1362
|
-
|
|
1363
|
-
return invalidCompNames.length === 0;
|
|
1364
|
-
}
|
|
1365
|
-
|
|
1366
|
-
isGridValid(revalidate?: boolean): boolean {
|
|
1367
|
-
if (!revalidate) {
|
|
1368
|
-
return this.invalidComponents.size === 0;
|
|
1369
|
-
}
|
|
1370
|
-
|
|
1371
|
-
if (!this.grid.editing) {
|
|
1372
|
-
return this.isViewGridValid();
|
|
1373
|
-
}
|
|
1374
|
-
|
|
1375
|
-
let allValid = true;
|
|
1376
|
-
|
|
1377
|
-
this.grid.getData().forEach((row) =>
|
|
1378
|
-
this.grid.columns.forEach((column) => {
|
|
1379
|
-
const cellsApplied = this.grid.getAppliedConditions({ row, column });
|
|
1380
|
-
const editable = cellsApplied.editable ?? column.editable;
|
|
1381
|
-
|
|
1382
|
-
if (!column.isVisible || !editable) return;
|
|
1383
|
-
|
|
1384
|
-
if (!this.isValid(column, row, true)) allValid = false;
|
|
1385
|
-
}),
|
|
1386
|
-
);
|
|
1387
|
-
|
|
1388
|
-
return allValid;
|
|
1389
|
-
}
|
|
1390
|
-
|
|
1391
|
-
getComponent<T>(key: string | number, columnName: string): T {
|
|
1392
|
-
const compName = this.getCompName(key, columnName);
|
|
1393
|
-
return Metadata.getInstance<T>(compName);
|
|
1394
|
-
}
|
|
1395
|
-
|
|
1396
|
-
/**
|
|
1397
|
-
* Changes a cell value in editedRows
|
|
1398
|
-
* @param rowKey Cell's row key
|
|
1399
|
-
* @param rowIdx Cell's row index in datasource.data
|
|
1400
|
-
* @param column Cell's column
|
|
1401
|
-
* @param value Value to be set in the cell
|
|
1402
|
-
*/
|
|
1403
|
-
private changeCell(rowKey: string | number, rowIdx: number, column: GridColumnEditable, value: any) {
|
|
1404
|
-
const originalRow = this.grid.getData()[rowIdx];
|
|
1405
|
-
|
|
1406
|
-
// Column doesn't have component
|
|
1407
|
-
if (!column.editable || !column.isVisible) {
|
|
1408
|
-
this.changeEditableComponent(column, originalRow, value);
|
|
1409
|
-
return;
|
|
1410
|
-
}
|
|
1411
|
-
|
|
1412
|
-
try {
|
|
1413
|
-
const component = this.getComponent<Input>(rowKey, column.name);
|
|
1414
|
-
|
|
1415
|
-
this.changeEditableComponent(column, originalRow, value, component);
|
|
1416
|
-
} catch (e) {
|
|
1417
|
-
if (e instanceof InstanceNotFoundError) {
|
|
1418
|
-
this.changeEditableComponent(column, originalRow, value);
|
|
1419
|
-
return;
|
|
1420
|
-
}
|
|
1421
|
-
|
|
1422
|
-
throw e;
|
|
1423
|
-
}
|
|
1424
|
-
}
|
|
1425
|
-
|
|
1426
|
-
private getRowIndex(newRowKey: string | number) {
|
|
1427
|
-
return this.grid.getData().findIndex((row: IDictionary) => {
|
|
1428
|
-
const rowKey = this.grid.getRowKey(row);
|
|
1429
|
-
return rowKey === newRowKey;
|
|
1430
|
-
});
|
|
1431
|
-
}
|
|
1432
|
-
|
|
1433
|
-
updateRow(newRow: IDictionary): void {
|
|
1434
|
-
if (!this.grid.editing) {
|
|
1435
|
-
throw new NotEditingError('updateRow');
|
|
1436
|
-
}
|
|
1437
|
-
|
|
1438
|
-
const newRowKey = this.grid.getRowKey(newRow);
|
|
1439
|
-
const rowIdx = this.getRowIndex(newRowKey);
|
|
1440
|
-
|
|
1441
|
-
if (rowIdx === -1) {
|
|
1442
|
-
throw new RowNotFoundError(newRowKey, this.grid.name);
|
|
1443
|
-
}
|
|
1444
|
-
|
|
1445
|
-
this.grid.columns.forEach((column: GridColumnEditable) => {
|
|
1446
|
-
const columnName = column.name;
|
|
1447
|
-
|
|
1448
|
-
this.changeCell(newRowKey, rowIdx, column, newRow[columnName]);
|
|
1449
|
-
});
|
|
1450
|
-
}
|
|
1451
|
-
|
|
1452
|
-
updateCell(rowKey: string, columnName: string, value: any): void {
|
|
1453
|
-
if (!this.grid.editing) {
|
|
1454
|
-
throw new NotEditingError('updateCell');
|
|
1455
|
-
}
|
|
1456
|
-
|
|
1457
|
-
const rowIdx = this.getRowIndex(rowKey);
|
|
1458
|
-
|
|
1459
|
-
if (rowIdx === -1) {
|
|
1460
|
-
throw new RowNotFoundError(rowKey, this.grid.name);
|
|
1461
|
-
}
|
|
1462
|
-
|
|
1463
|
-
const column = this.grid.getColumn(columnName);
|
|
1464
|
-
this.changeCell(rowKey, rowIdx, column, value);
|
|
1465
|
-
}
|
|
1466
|
-
|
|
1467
|
-
changeData(data?: IDictionary<any>[]): void {
|
|
1468
|
-
const emptyRow = data?.find((row) => {
|
|
1469
|
-
const rowKey = this.grid.getRowKey(row);
|
|
1470
|
-
return rowKey !== 0 && !rowKey;
|
|
1471
|
-
});
|
|
1472
|
-
|
|
1473
|
-
if (!emptyRow) return;
|
|
1474
|
-
|
|
1475
|
-
const emptyRowKey = this.grid.getRowKey(emptyRow);
|
|
1476
|
-
|
|
1477
|
-
this.editedRows.delete(emptyRowKey);
|
|
1478
|
-
}
|
|
1479
|
-
|
|
1480
|
-
setViewEnterEdit(fn: ((rowKey: string, columnName: string) => void) | null) {
|
|
1481
|
-
this.viewEnterEdit = fn;
|
|
1482
|
-
}
|
|
1483
|
-
|
|
1484
|
-
enterEdit(rowKey: string, columnName: string): void {
|
|
1485
|
-
if (!this.viewEnterEdit) {
|
|
1486
|
-
throw new MethodNotAssignedError('viewEnterEdit');
|
|
1487
|
-
}
|
|
1488
|
-
this.viewEnterEdit(rowKey, columnName);
|
|
1489
|
-
}
|
|
1490
|
-
|
|
1491
|
-
async cancelEditedRows(): Promise<void> {
|
|
1492
|
-
this.grid.editing = false;
|
|
1493
|
-
this.editedRows.clear();
|
|
1494
|
-
this.invalidComponents.clear();
|
|
1495
|
-
}
|
|
1496
|
-
|
|
1497
|
-
async saveEditedRows(revalidate?: boolean): Promise<void[]> {
|
|
1498
|
-
const page = this.grid.getPage();
|
|
1499
|
-
const response = await Promise.all(this.getEditedRows(revalidate).map((row) => this.grid.datasource.put(row)));
|
|
1500
|
-
this.grid.editing = false;
|
|
1501
|
-
this.editedRows.clear();
|
|
1502
|
-
this.invalidComponents.clear();
|
|
1503
|
-
|
|
1504
|
-
await this.grid.setPage(page);
|
|
1505
|
-
return response;
|
|
1506
|
-
}
|
|
1507
|
-
|
|
1508
|
-
protected canEditRowConditions = new Map<string | number, boolean | undefined>();
|
|
1509
|
-
|
|
1510
|
-
reapplyCanEditRow(row: IDictionary<any>) {
|
|
1511
|
-
const canEdit =
|
|
1512
|
-
!this.grid.canEditRow ||
|
|
1513
|
-
typeof this.grid.canEditRow !== 'function' ||
|
|
1514
|
-
this.grid.canEditRow({ row, component: this.grid });
|
|
1515
|
-
this.canEditRowConditions.set(this.grid.getRowKey(row), canEdit);
|
|
1516
|
-
}
|
|
1517
|
-
|
|
1518
|
-
getCanEditRow(row: IDictionary<any>) {
|
|
1519
|
-
return this.canEditRowConditions.get(this.grid.getRowKey(row));
|
|
1520
|
-
}
|
|
1521
|
-
|
|
1522
|
-
protected omitInternals(editedRow: IDictionary) {
|
|
1523
|
-
let row = { ...editedRow.originalRow, ...editedRow };
|
|
1524
|
-
row = omit(row, 'originalRow');
|
|
1525
|
-
|
|
1526
|
-
Object.keys(row).forEach((attr) => {
|
|
1527
|
-
row = omit(row, `${attr}_original`);
|
|
1528
|
-
});
|
|
1529
|
-
|
|
1530
|
-
return row;
|
|
1531
|
-
}
|
|
1532
|
-
|
|
1533
|
-
getEditedRows(revalidate?: boolean, silent?: boolean): IDictionary<any>[] {
|
|
1534
|
-
const editedRows: IDictionary<any>[] = [];
|
|
1535
|
-
this.editedRows.forEach((editedRow) => {
|
|
1536
|
-
const row = this.omitInternals(editedRow);
|
|
1537
|
-
if (!silent && !this.isGridValid(revalidate)) {
|
|
1538
|
-
throw new Error('Invalid rows');
|
|
1539
|
-
}
|
|
1540
|
-
|
|
1541
|
-
editedRows.push(row);
|
|
1542
|
-
});
|
|
1543
|
-
return editedRows;
|
|
1544
|
-
}
|
|
1545
|
-
|
|
1546
|
-
getEditedRow(row: IDictionary): IDictionary | undefined {
|
|
1547
|
-
const editedRow = this.editedRows.get(this.grid.getRowKey(row));
|
|
1548
|
-
return editedRow ? this.omitInternals(editedRow) : undefined;
|
|
1549
|
-
}
|
|
1550
|
-
}
|
|
1551
|
-
</pre></td></tr></table></pre>
|
|
1552
|
-
|
|
1553
|
-
<div class='push'></div><!-- for sticky footer -->
|
|
1554
|
-
</div><!-- /wrapper -->
|
|
1555
|
-
<div class='footer quiet pad2 space-top1 center small'>
|
|
1556
|
-
Code coverage generated by
|
|
1557
|
-
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
1558
|
-
at 2025-11-06T17:56:59.252Z
|
|
1559
|
-
</div>
|
|
1560
|
-
<script src="../../../prettify.js"></script>
|
|
1561
|
-
<script>
|
|
1562
|
-
window.onload = function () {
|
|
1563
|
-
prettyPrint();
|
|
1564
|
-
};
|
|
1565
|
-
</script>
|
|
1566
|
-
<script src="../../../sorter.js"></script>
|
|
1567
|
-
<script src="../../../block-navigation.js"></script>
|
|
1568
|
-
</body>
|
|
1569
|
-
</html>
|
|
1570
|
-
|