@sme.up/ketchup 8.0.2 → 8.2.0
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/cjs/{GenericVariables-a9ed17ee.js → GenericVariables-9cd88034.js} +3 -3
- package/dist/cjs/{component-85c2bd4d.js → component-2c7ddef7.js} +91 -10
- package/dist/cjs/{f-button-9524bbf7.js → f-button-797c8e7f.js} +99 -99
- package/dist/cjs/{f-button-declarations-b611587f.js → f-button-declarations-76b4fb4c.js} +16 -16
- package/dist/cjs/{f-cell-bcb75ade.js → f-cell-9c8ed48b.js} +478 -472
- package/dist/cjs/{f-checkbox-1148e791.js → f-checkbox-cff77b2c.js} +23 -23
- package/dist/cjs/{f-chip-2249b386.js → f-chip-318863df.js} +125 -125
- package/dist/cjs/{f-image-47d74999.js → f-image-f10144e9.js} +107 -107
- package/dist/cjs/{f-paginator-utils-b0a9ae5f.js → f-paginator-utils-8c44a37b.js} +1548 -1548
- package/dist/cjs/{f-text-field-579c0fc0.js → f-text-field-9610c198.js} +172 -172
- package/dist/cjs/{f-text-field-mdc-0e22f3e3.js → f-text-field-mdc-d38d80b5.js} +59 -60
- package/dist/cjs/{index-1f177abc.js → index-a9a3b467.js} +93 -24
- package/dist/cjs/ketchup.cjs.js +3 -3
- package/dist/cjs/kup-accordion.cjs.entry.js +199 -200
- package/dist/cjs/kup-autocomplete_27.cjs.entry.js +17557 -17508
- package/dist/cjs/kup-box.cjs.entry.js +1289 -1232
- package/dist/cjs/kup-calendar.cjs.entry.js +9542 -10035
- package/dist/cjs/kup-cell.cjs.entry.js +172 -172
- package/dist/cjs/kup-dash-list.cjs.entry.js +106 -106
- package/dist/cjs/kup-dash_2.cjs.entry.js +162 -162
- package/dist/cjs/kup-dashboard.cjs.entry.js +400 -401
- package/dist/cjs/kup-drawer.cjs.entry.js +138 -138
- package/dist/cjs/kup-echart.cjs.entry.js +7228 -6598
- package/dist/cjs/kup-family-tree.cjs.entry.js +439 -439
- package/dist/cjs/kup-iframe.cjs.entry.js +94 -94
- package/dist/cjs/kup-image-list.cjs.entry.js +255 -256
- package/dist/cjs/kup-lazy.cjs.entry.js +186 -186
- package/dist/cjs/kup-magic-box.cjs.entry.js +298 -298
- package/dist/cjs/{kup-manager-85b2a756.js → kup-manager-7747decd.js} +7287 -7287
- package/dist/cjs/kup-nav-bar.cjs.entry.js +130 -130
- package/dist/cjs/kup-numeric-picker.cjs.entry.js +367 -368
- package/dist/cjs/kup-photo-frame.cjs.entry.js +144 -144
- package/dist/cjs/kup-planner.cjs.entry.js +1185 -1027
- package/dist/cjs/kup-probe.cjs.entry.js +246 -246
- package/dist/cjs/kup-qlik.cjs.entry.js +138 -138
- package/dist/cjs/kup-snackbar.cjs.entry.js +116 -116
- package/dist/cjs/loader.cjs.js +3 -3
- package/dist/collection/assets/dash-list.js +466 -293
- package/dist/collection/assets/data-table.js +45 -0
- package/dist/collection/assets/echart.js +176 -0
- package/dist/collection/assets/index.js +4 -0
- package/dist/collection/assets/planner.js +8189 -0
- package/dist/collection/collection-manifest.json +2 -2
- package/dist/collection/components/kup-accordion/kup-accordion-declarations.js +10 -10
- package/dist/collection/components/kup-accordion/kup-accordion.js +445 -445
- package/dist/collection/components/kup-autocomplete/kup-autocomplete-declarations.js +27 -27
- package/dist/collection/components/kup-autocomplete/kup-autocomplete.js +908 -908
- package/dist/collection/components/kup-badge/kup-badge-declarations.js +10 -10
- package/dist/collection/components/kup-badge/kup-badge.js +276 -276
- package/dist/collection/components/kup-box/kup-box-declarations.js +33 -33
- package/dist/collection/components/kup-box/kup-box-state.js +15 -15
- package/dist/collection/components/kup-box/kup-box.js +2134 -2079
- package/dist/collection/components/kup-button/kup-button-declarations.js +18 -18
- package/dist/collection/components/kup-button/kup-button.js +580 -580
- package/dist/collection/components/kup-button-list/kup-button-list-declarations.js +13 -13
- package/dist/collection/components/kup-button-list/kup-button-list.e2e.js +144 -0
- package/dist/collection/components/kup-button-list/kup-button-list.js +527 -527
- package/dist/collection/components/kup-calendar/kup-calendar-declarations.js +35 -35
- package/dist/collection/components/kup-calendar/kup-calendar.css +0 -4
- package/dist/collection/components/kup-calendar/kup-calendar.js +690 -690
- package/dist/collection/components/kup-card/box/kup-card-box.js +227 -227
- package/dist/collection/components/kup-card/built-in/kup-card-built-in.js +56 -56
- package/dist/collection/components/kup-card/built-in/kup-card-calendar.js +393 -393
- package/dist/collection/components/kup-card/built-in/kup-card-clock.js +308 -308
- package/dist/collection/components/kup-card/built-in/kup-card-column-drop-menu.js +165 -165
- package/dist/collection/components/kup-card/built-in/kup-card-message-box.js +10 -10
- package/dist/collection/components/kup-card/built-in/kup-card-numeric.js +118 -118
- package/dist/collection/components/kup-card/collapsible/kup-card-collapsible.js +64 -64
- package/dist/collection/components/kup-card/dialog/kup-card-dialog.js +217 -217
- package/dist/collection/components/kup-card/free/kup-card-free.js +22 -22
- package/dist/collection/components/kup-card/kup-card-declarations.js +98 -98
- package/dist/collection/components/kup-card/kup-card-helper.js +196 -196
- package/dist/collection/components/kup-card/kup-card.js +809 -809
- package/dist/collection/components/kup-card/scalable/kup-card-scalable.js +251 -251
- package/dist/collection/components/kup-card/standard/kup-card-standard.js +593 -593
- package/dist/collection/components/kup-cell/kup-cell-declarations.js +11 -11
- package/dist/collection/components/kup-cell/kup-cell.js +401 -401
- package/dist/collection/components/kup-chart/kup-chart-builder.js +93 -93
- package/dist/collection/components/kup-chart/kup-chart-declarations.js +49 -49
- package/dist/collection/components/kup-chart/kup-chart.js +1080 -1080
- package/dist/collection/components/kup-checkbox/kup-checkbox-declarations.js +13 -13
- package/dist/collection/components/kup-checkbox/kup-checkbox.js +433 -433
- package/dist/collection/components/kup-chip/kup-chip-declarations.js +12 -12
- package/dist/collection/components/kup-chip/kup-chip.js +558 -558
- package/dist/collection/components/kup-color-picker/kup-color-picker-declarations.js +12 -12
- package/dist/collection/components/kup-color-picker/kup-color-picker.js +546 -546
- package/dist/collection/components/kup-combobox/kup-combobox-declarations.js +15 -15
- package/dist/collection/components/kup-combobox/kup-combobox.js +821 -821
- package/dist/collection/components/kup-dash/kup-dash.js +171 -171
- package/dist/collection/components/kup-dash-list/kup-dash-list.js +327 -327
- package/dist/collection/components/kup-dashboard/kup-dashboard-declarations.js +10 -10
- package/dist/collection/components/kup-dashboard/kup-dashboard.js +588 -588
- package/dist/collection/components/kup-data-table/kup-data-table-declarations.js +157 -156
- package/dist/collection/components/kup-data-table/kup-data-table-helper.js +808 -808
- package/dist/collection/components/kup-data-table/kup-data-table-state.js +36 -36
- package/dist/collection/components/kup-data-table/kup-data-table.css +1 -0
- package/dist/collection/components/kup-data-table/kup-data-table.js +5572 -5527
- package/dist/collection/components/kup-date-picker/kup-date-picker-declarations.js +18 -18
- package/dist/collection/components/kup-date-picker/kup-date-picker.js +816 -816
- package/dist/collection/components/kup-dialog/kup-dialog-declarations.js +14 -14
- package/dist/collection/components/kup-dialog/kup-dialog.js +467 -467
- package/dist/collection/components/kup-drawer/kup-drawer-declarations.js +10 -10
- package/dist/collection/components/kup-drawer/kup-drawer.e2e.js +9 -0
- package/dist/collection/components/kup-drawer/kup-drawer.js +383 -383
- package/dist/collection/components/kup-dropdown-button/kup-dropdown-button-declarations.js +18 -18
- package/dist/collection/components/kup-dropdown-button/kup-dropdown-button.js +800 -800
- package/dist/collection/components/kup-echart/kup-echart-declarations.js +53 -52
- package/dist/collection/components/kup-echart/kup-echart.js +1519 -1437
- package/dist/collection/components/kup-family-tree/kup-family-tree-declarations.js +15 -15
- package/dist/collection/components/kup-family-tree/kup-family-tree.js +829 -829
- package/dist/collection/components/kup-form/kup-form-declarations.js +29 -29
- package/dist/collection/components/kup-form/kup-form.js +734 -731
- package/dist/collection/components/kup-gauge/kup-gauge-declarations.js +26 -26
- package/dist/collection/components/kup-gauge/kup-gauge.js +764 -764
- package/dist/collection/components/kup-grid/kup-grid-declarations.js +10 -10
- package/dist/collection/components/kup-grid/kup-grid.js +253 -253
- package/dist/collection/components/kup-iframe/kup-iframe-declarations.js +10 -10
- package/dist/collection/components/kup-iframe/kup-iframe.js +281 -281
- package/dist/collection/components/kup-image/canvas/kup-image-canvas-declarations.js +184 -184
- package/dist/collection/components/kup-image/canvas/kup-image-canvas-helper.js +19 -19
- package/dist/collection/components/kup-image/canvas/kup-image-canvas.js +225 -225
- package/dist/collection/components/kup-image/kup-image-declarations.js +16 -16
- package/dist/collection/components/kup-image/kup-image.js +491 -491
- package/dist/collection/components/kup-image-list/kup-image-list-declarations.js +10 -10
- package/dist/collection/components/kup-image-list/kup-image-list-state.js +9 -9
- package/dist/collection/components/kup-image-list/kup-image-list.js +533 -533
- package/dist/collection/components/kup-lazy/kup-lazy-declarations.js +20 -20
- package/dist/collection/components/kup-lazy/kup-lazy.js +430 -430
- package/dist/collection/components/kup-list/kup-list-declarations.js +34 -34
- package/dist/collection/components/kup-list/kup-list-helper.js +121 -121
- package/dist/collection/components/kup-list/kup-list.js +949 -949
- package/dist/collection/components/kup-magic-box/kup-magic-box-declarations.js +23 -23
- package/dist/collection/components/kup-magic-box/kup-magic-box.js +431 -431
- package/dist/collection/components/kup-nav-bar/kup-nav-bar-declarations.js +21 -21
- package/dist/collection/components/kup-nav-bar/kup-nav-bar.js +315 -315
- package/dist/collection/components/kup-numeric-picker/kup-numeric-picker-declarations.js +16 -16
- package/dist/collection/components/kup-numeric-picker/kup-numeric-picker.js +864 -864
- package/dist/collection/components/kup-photo-frame/kup-photo-frame-declarations.js +10 -10
- package/dist/collection/components/kup-photo-frame/kup-photo-frame.js +372 -372
- package/dist/collection/components/kup-planner/kup-planner-declarations.js +83 -76
- package/dist/collection/components/kup-planner/kup-planner-helper.js +54 -54
- package/dist/collection/components/kup-planner/kup-planner-state.js +16 -0
- package/dist/collection/components/kup-planner/kup-planner.css +2 -2
- package/dist/collection/components/kup-planner/kup-planner.js +1732 -1352
- package/dist/collection/components/kup-probe/kup-probe.js +358 -358
- package/dist/collection/components/kup-progress-bar/kup-progress-bar-declarations.js +14 -14
- package/dist/collection/components/kup-progress-bar/kup-progress-bar.js +405 -405
- package/dist/collection/components/kup-qlik/kup-qlik-declarations.js +1 -1
- package/dist/collection/components/kup-qlik/kup-qlik.js +326 -326
- package/dist/collection/components/kup-radio/kup-radio-declarations.js +12 -12
- package/dist/collection/components/kup-radio/kup-radio.js +398 -398
- package/dist/collection/components/kup-rating/kup-rating-declarations.js +11 -11
- package/dist/collection/components/kup-rating/kup-rating.js +332 -332
- package/dist/collection/components/kup-snackbar/kup-snackbar-declarations.js +13 -13
- package/dist/collection/components/kup-snackbar/kup-snackbar.js +389 -389
- package/dist/collection/components/kup-spinner/kup-spinner-declarations.js +15 -15
- package/dist/collection/components/kup-spinner/kup-spinner.js +468 -468
- package/dist/collection/components/kup-state/kup-state.js +1 -1
- package/dist/collection/components/kup-state/kup-store.js +1 -1
- package/dist/collection/components/kup-state/mock-store.js +13 -13
- package/dist/collection/components/kup-switch/kup-switch-declarations.js +12 -12
- package/dist/collection/components/kup-switch/kup-switch.js +402 -402
- package/dist/collection/components/kup-tab-bar/kup-tab-bar-declarations.js +10 -10
- package/dist/collection/components/kup-tab-bar/kup-tab-bar.js +443 -443
- package/dist/collection/components/kup-text-field/kup-text-field-declarations.js +35 -35
- package/dist/collection/components/kup-text-field/kup-text-field.js +1193 -1189
- package/dist/collection/components/kup-time-picker/kup-time-picker-declarations.js +14 -14
- package/dist/collection/components/kup-time-picker/kup-time-picker.js +921 -921
- package/dist/collection/components/kup-tree/kup-tree-declarations.js +43 -43
- package/dist/collection/components/kup-tree/kup-tree-faker.js +305 -305
- package/dist/collection/components/kup-tree/kup-tree-state.js +15 -15
- package/dist/collection/components/kup-tree/kup-tree.js +2479 -2479
- package/dist/collection/f-components/f-button/f-button-declarations.js +17 -17
- package/dist/collection/f-components/f-button/f-button.js +91 -91
- package/dist/collection/f-components/f-cell/f-cell-declarations.js +158 -158
- package/dist/collection/f-components/f-cell/f-cell.js +435 -429
- package/dist/collection/f-components/f-checkbox/f-checkbox-declarations.js +1 -1
- package/dist/collection/f-components/f-checkbox/f-checkbox.js +16 -16
- package/dist/collection/f-components/f-chip/f-chip-declarations.js +15 -15
- package/dist/collection/f-components/f-chip/f-chip.js +101 -101
- package/dist/collection/f-components/f-image/f-image-declarations.js +8 -8
- package/dist/collection/f-components/f-image/f-image.js +100 -100
- package/dist/collection/f-components/f-paginator/f-paginator-declarations.js +5 -5
- package/dist/collection/f-components/f-paginator/f-paginator-utils.js +28 -28
- package/dist/collection/f-components/f-paginator/f-paginator.js +86 -86
- package/dist/collection/f-components/f-switch/f-switch-declarations.js +1 -1
- package/dist/collection/f-components/f-switch/f-switch.js +12 -12
- package/dist/collection/f-components/f-text-field/f-text-field-declarations.js +1 -1
- package/dist/collection/f-components/f-text-field/f-text-field-mdc.js +29 -29
- package/dist/collection/f-components/f-text-field/f-text-field.js +151 -151
- package/dist/collection/managers/kup-data/kup-data-cell-helper.js +86 -86
- package/dist/collection/managers/kup-data/kup-data-column-helper.js +300 -300
- package/dist/collection/managers/kup-data/kup-data-declarations.js +10 -10
- package/dist/collection/managers/kup-data/kup-data-node-helper.js +165 -165
- package/dist/collection/managers/kup-data/kup-data-row-helper.js +28 -28
- package/dist/collection/managers/kup-data/kup-data.js +499 -499
- package/dist/collection/managers/kup-dates/kup-dates-declarations.js +43 -43
- package/dist/collection/managers/kup-dates/kup-dates.js +654 -654
- package/dist/collection/managers/kup-debug/kup-debug-declarations.js +20 -20
- package/dist/collection/managers/kup-debug/kup-debug.js +670 -670
- package/dist/collection/managers/kup-dynamic-position/kup-dynamic-position-declarations.js +27 -27
- package/dist/collection/managers/kup-dynamic-position/kup-dynamic-position.js +244 -244
- package/dist/collection/managers/kup-interact/kup-interact-declarations.js +49 -49
- package/dist/collection/managers/kup-interact/kup-interact.js +397 -397
- package/dist/collection/managers/kup-language/kup-language-declarations.js +211 -211
- package/dist/collection/managers/kup-language/kup-language.js +151 -151
- package/dist/collection/managers/kup-manager/kup-manager-declarations.js +1 -1
- package/dist/collection/managers/kup-manager/kup-manager.js +303 -303
- package/dist/collection/managers/kup-math/kup-math-declarations.js +13 -13
- package/dist/collection/managers/kup-math/kup-math-helper.js +39 -39
- package/dist/collection/managers/kup-math/kup-math.js +413 -413
- package/dist/collection/managers/kup-objects/kup-objects-declarations.js +1 -1
- package/dist/collection/managers/kup-objects/kup-objects.js +387 -387
- package/dist/collection/managers/kup-scroll-on-hover/kup-scroll-on-hover-declarations.js +10 -10
- package/dist/collection/managers/kup-scroll-on-hover/kup-scroll-on-hover.js +334 -334
- package/dist/collection/managers/kup-search/kup-search-declarations.js +1 -1
- package/dist/collection/managers/kup-search/kup-search.js +75 -75
- package/dist/collection/managers/kup-theme/kup-theme-declarations.js +177 -177
- package/dist/collection/managers/kup-theme/kup-theme.js +715 -715
- package/dist/collection/managers/kup-toolbar/kup-toolbar-declarations.js +9 -9
- package/dist/collection/managers/kup-toolbar/kup-toolbar.js +111 -111
- package/dist/collection/managers/kup-tooltip/kup-tooltip-declarations.js +1 -1
- package/dist/collection/managers/kup-tooltip/kup-tooltip.js +229 -229
- package/dist/collection/types/GenericTypes.js +54 -54
- package/dist/collection/utils/cell-utils.js +156 -156
- package/dist/collection/utils/filters/filters-column-menu.js +360 -360
- package/dist/collection/utils/filters/filters-declarations.js +25 -25
- package/dist/collection/utils/filters/filters-rows.js +238 -238
- package/dist/collection/utils/filters/filters-tree-items.js +117 -117
- package/dist/collection/utils/filters/filters.js +287 -287
- package/dist/collection/utils/kup-column-menu/kup-column-menu-declarations.js +20 -20
- package/dist/collection/utils/kup-column-menu/kup-column-menu.js +751 -751
- package/dist/collection/utils/utils.js +84 -80
- package/dist/collection/variables/GenericVariables.js +4 -4
- package/dist/components/kup-accordion.js +355 -355
- package/dist/components/kup-autocomplete2.js +31821 -31763
- package/dist/components/kup-box2.js +1463 -1405
- package/dist/components/kup-calendar.js +9788 -10280
- package/dist/components/kup-card.js +1 -1
- package/dist/components/kup-cell.js +325 -325
- package/dist/components/kup-chart.js +1 -1
- package/dist/components/kup-checkbox.js +1 -1
- package/dist/components/kup-chip.js +1 -1
- package/dist/components/kup-color-picker.js +1 -1
- package/dist/components/kup-combobox.js +1 -1
- package/dist/components/kup-dash-list.js +276 -276
- package/dist/components/kup-dash2.js +220 -220
- package/dist/components/kup-dashboard.js +549 -549
- package/dist/components/kup-data-table.js +1 -1
- package/dist/components/kup-date-picker.js +1 -1
- package/dist/components/kup-dialog.js +1 -1
- package/dist/components/kup-drawer.js +295 -295
- package/dist/components/kup-dropdown-button.js +1 -1
- package/dist/components/kup-echart2.js +7395 -6765
- package/dist/components/kup-family-tree.js +604 -604
- package/dist/components/kup-form.js +1 -1
- package/dist/components/kup-gauge.js +1 -1
- package/dist/components/kup-grid2.js +251 -251
- package/dist/components/kup-iframe.js +249 -249
- package/dist/components/kup-image-list.js +407 -407
- package/dist/components/kup-image.js +1 -1
- package/dist/components/kup-lazy.js +344 -344
- package/dist/components/kup-list.js +1 -1
- package/dist/components/kup-magic-box.js +461 -461
- package/dist/components/kup-nav-bar.js +284 -284
- package/dist/components/kup-numeric-picker.js +529 -529
- package/dist/components/kup-photo-frame.js +300 -300
- package/dist/components/kup-planner.js +1376 -1207
- package/dist/components/kup-probe.js +399 -399
- package/dist/components/kup-progress-bar.js +1 -1
- package/dist/components/kup-qlik.js +296 -296
- package/dist/components/kup-radio.js +1 -1
- package/dist/components/kup-rating.js +1 -1
- package/dist/components/kup-snackbar.js +273 -273
- package/dist/components/kup-spinner.js +1 -1
- package/dist/components/kup-switch.js +1 -1
- package/dist/components/kup-tab-bar.js +1 -1
- package/dist/components/kup-text-field.js +1 -1
- package/dist/components/kup-time-picker.js +1 -1
- package/dist/components/kup-tree.js +1 -1
- package/dist/esm/{GenericVariables-665de00a.js → GenericVariables-6dfdd433.js} +3 -3
- package/dist/esm/{component-120651a0.js → component-e86c51ea.js} +81 -2
- package/dist/esm/{f-button-declarations-b1b4cac4.js → f-button-declarations-fd4965d1.js} +16 -16
- package/dist/esm/{f-button-024f0cfe.js → f-button-e0e6f65f.js} +99 -99
- package/dist/esm/{f-cell-90240a8c.js → f-cell-359dfe28.js} +478 -472
- package/dist/esm/{f-checkbox-9b3f5f5b.js → f-checkbox-91358c27.js} +23 -23
- package/dist/esm/{f-chip-2238ad43.js → f-chip-0fd043b4.js} +125 -125
- package/dist/esm/{f-image-f2e9bf79.js → f-image-b853b0cc.js} +107 -107
- package/dist/esm/{f-paginator-utils-8cb3c023.js → f-paginator-utils-124c146a.js} +1548 -1548
- package/dist/esm/{f-text-field-d231982c.js → f-text-field-92bb3a1f.js} +172 -172
- package/dist/esm/{f-text-field-mdc-cee583ea.js → f-text-field-mdc-a1b4a919.js} +27 -28
- package/dist/esm/{index-8bd38435.js → index-bb15ce14.js} +93 -25
- package/dist/esm/ketchup.js +4 -4
- package/dist/esm/kup-accordion.entry.js +199 -200
- package/dist/esm/kup-autocomplete_27.entry.js +17557 -17508
- package/dist/esm/kup-box.entry.js +1289 -1232
- package/dist/esm/kup-calendar.entry.js +9557 -10050
- package/dist/esm/kup-cell.entry.js +172 -172
- package/dist/esm/kup-dash-list.entry.js +106 -106
- package/dist/esm/kup-dash_2.entry.js +162 -162
- package/dist/esm/kup-dashboard.entry.js +400 -401
- package/dist/esm/kup-drawer.entry.js +138 -138
- package/dist/esm/kup-echart.entry.js +7228 -6598
- package/dist/esm/kup-family-tree.entry.js +439 -439
- package/dist/esm/kup-iframe.entry.js +94 -94
- package/dist/esm/kup-image-list.entry.js +255 -256
- package/dist/esm/kup-lazy.entry.js +186 -186
- package/dist/esm/kup-magic-box.entry.js +298 -298
- package/dist/esm/{kup-manager-d1da769e.js → kup-manager-1e6ea451.js} +7288 -7287
- package/dist/esm/kup-nav-bar.entry.js +130 -130
- package/dist/esm/kup-numeric-picker.entry.js +367 -368
- package/dist/esm/kup-photo-frame.entry.js +144 -144
- package/dist/esm/kup-planner.entry.js +1185 -1027
- package/dist/esm/kup-probe.entry.js +246 -246
- package/dist/esm/kup-qlik.entry.js +138 -138
- package/dist/esm/kup-snackbar.entry.js +116 -116
- package/dist/esm/loader.js +4 -4
- package/dist/ketchup/ketchup.esm.js +1 -1
- package/dist/ketchup/{p-3cf64473.js → p-0143e942.js} +1 -1
- package/dist/ketchup/{p-5f3680f2.js → p-1ca9aece.js} +1 -1
- package/dist/ketchup/p-1cd5785e.entry.js +9 -0
- package/dist/ketchup/{p-410c102a.js → p-2ac2c05e.js} +1 -1
- package/dist/ketchup/{p-8b46e7ce.js → p-349d4715.js} +1 -1
- package/dist/ketchup/{p-83435e6c.entry.js → p-374f867e.entry.js} +1 -1
- package/dist/ketchup/{p-c42b80c1.entry.js → p-41c00681.entry.js} +1 -1
- package/dist/ketchup/p-5dbd4402.entry.js +1 -0
- package/dist/ketchup/{p-89743989.entry.js → p-620faa59.entry.js} +1 -1
- package/dist/ketchup/{p-10d84b1b.js → p-6507e9eb.js} +7 -6
- package/dist/ketchup/{p-a84f1d24.entry.js → p-6837f725.entry.js} +1 -1
- package/dist/ketchup/p-6d46cbb0.js +30 -0
- package/dist/ketchup/{p-e1f1e661.entry.js → p-6e79b764.entry.js} +1 -1
- package/dist/ketchup/{p-1ad628fb.entry.js → p-818a4a09.entry.js} +1 -1
- package/dist/ketchup/p-81e20baa.entry.js +1 -0
- package/dist/ketchup/p-85d6bb1f.entry.js +1 -0
- package/dist/ketchup/p-8c1804d7.entry.js +1 -0
- package/dist/ketchup/{p-163b18b9.entry.js → p-ad919f87.entry.js} +1 -1
- package/dist/ketchup/{p-651d89c8.entry.js → p-adad6804.entry.js} +1 -1
- package/dist/ketchup/{p-37067ee6.entry.js → p-adebe276.entry.js} +1 -1
- package/dist/ketchup/p-b5deb573.js +2 -0
- package/dist/ketchup/{p-f876125d.entry.js → p-b73b3b52.entry.js} +1 -1
- package/dist/ketchup/{p-0d7d59c7.entry.js → p-ba0c4019.entry.js} +1 -1
- package/dist/ketchup/p-c010483d.entry.js +25 -0
- package/dist/ketchup/p-c1b10c9c.entry.js +1 -0
- package/dist/ketchup/{p-063d4c27.entry.js → p-c28be862.entry.js} +1 -1
- package/dist/ketchup/p-c6088459.entry.js +39 -0
- package/dist/ketchup/{p-43b67de4.entry.js → p-cf24193b.entry.js} +1 -1
- package/dist/ketchup/p-e646523d.js +1 -0
- package/dist/ketchup/p-e8977116.entry.js +1 -0
- package/dist/ketchup/{p-27a56c87.js → p-fb03f2f5.js} +2 -2
- package/dist/ketchup/{p-eda7f130.js → p-fb29ba2a.js} +1 -1
- package/dist/ketchup/{p-9f9b6656.js → p-fd1323da.js} +1 -1
- package/dist/loader/index.d.ts +1 -1
- package/dist/types/components/kup-accordion/kup-accordion-declarations.d.ts +20 -20
- package/dist/types/components/kup-accordion/kup-accordion.d.ts +80 -80
- package/dist/types/components/kup-autocomplete/kup-autocomplete-declarations.d.ts +35 -35
- package/dist/types/components/kup-autocomplete/kup-autocomplete.d.ts +119 -119
- package/dist/types/components/kup-badge/kup-badge-declarations.d.ts +9 -9
- package/dist/types/components/kup-badge/kup-badge.d.ts +51 -51
- package/dist/types/components/kup-box/kup-box-declarations.d.ts +113 -113
- package/dist/types/components/kup-box/kup-box-state.d.ts +10 -10
- package/dist/types/components/kup-box/kup-box.d.ts +270 -270
- package/dist/types/components/kup-button/kup-button-declarations.d.ts +24 -24
- package/dist/types/components/kup-button/kup-button.d.ts +111 -111
- package/dist/types/components/kup-button-list/kup-button-list-declarations.d.ts +24 -24
- package/dist/types/components/kup-button-list/kup-button-list.d.ts +82 -82
- package/dist/types/components/kup-calendar/kup-calendar-declarations.d.ts +70 -70
- package/dist/types/components/kup-calendar/kup-calendar.d.ts +100 -100
- package/dist/types/components/kup-card/box/kup-card-box.d.ts +50 -50
- package/dist/types/components/kup-card/built-in/kup-card-built-in.d.ts +39 -39
- package/dist/types/components/kup-card/built-in/kup-card-calendar.d.ts +2 -2
- package/dist/types/components/kup-card/built-in/kup-card-clock.d.ts +2 -2
- package/dist/types/components/kup-card/built-in/kup-card-column-drop-menu.d.ts +3 -3
- package/dist/types/components/kup-card/built-in/kup-card-message-box.d.ts +3 -3
- package/dist/types/components/kup-card/built-in/kup-card-numeric.d.ts +2 -2
- package/dist/types/components/kup-card/collapsible/kup-card-collapsible.d.ts +14 -14
- package/dist/types/components/kup-card/dialog/kup-card-dialog.d.ts +44 -44
- package/dist/types/components/kup-card/free/kup-card-free.d.ts +14 -14
- package/dist/types/components/kup-card/kup-card-declarations.d.ts +236 -236
- package/dist/types/components/kup-card/kup-card-helper.d.ts +27 -27
- package/dist/types/components/kup-card/kup-card.d.ts +159 -159
- package/dist/types/components/kup-card/scalable/kup-card-scalable.d.ts +56 -56
- package/dist/types/components/kup-card/standard/kup-card-standard.d.ts +92 -92
- package/dist/types/components/kup-cell/kup-cell-declarations.d.ts +10 -10
- package/dist/types/components/kup-cell/kup-cell.d.ts +67 -67
- package/dist/types/components/kup-chart/kup-chart-builder.d.ts +7 -7
- package/dist/types/components/kup-chart/kup-chart-declarations.d.ts +135 -135
- package/dist/types/components/kup-chart/kup-chart.d.ts +170 -170
- package/dist/types/components/kup-checkbox/kup-checkbox-declarations.d.ts +17 -17
- package/dist/types/components/kup-checkbox/kup-checkbox.d.ts +85 -85
- package/dist/types/components/kup-chip/kup-chip-declarations.d.ts +22 -22
- package/dist/types/components/kup-chip/kup-chip.d.ts +89 -89
- package/dist/types/components/kup-color-picker/kup-color-picker-declarations.d.ts +15 -15
- package/dist/types/components/kup-color-picker/kup-color-picker.d.ts +89 -89
- package/dist/types/components/kup-combobox/kup-combobox-declarations.d.ts +24 -24
- package/dist/types/components/kup-combobox/kup-combobox.d.ts +95 -95
- package/dist/types/components/kup-dash/kup-dash.d.ts +33 -33
- package/dist/types/components/kup-dash-list/kup-dash-list.d.ts +22 -22
- package/dist/types/components/kup-dashboard/kup-dashboard-declarations.d.ts +61 -61
- package/dist/types/components/kup-dashboard/kup-dashboard.d.ts +80 -80
- package/dist/types/components/kup-data-table/kup-data-table-declarations.d.ts +258 -254
- package/dist/types/components/kup-data-table/kup-data-table-helper.d.ts +25 -25
- package/dist/types/components/kup-data-table/kup-data-table-state.d.ts +36 -36
- package/dist/types/components/kup-data-table/kup-data-table.d.ts +452 -444
- package/dist/types/components/kup-date-picker/kup-date-picker-declarations.d.ts +20 -20
- package/dist/types/components/kup-date-picker/kup-date-picker.d.ts +110 -110
- package/dist/types/components/kup-dialog/kup-dialog-declarations.d.ts +26 -26
- package/dist/types/components/kup-dialog/kup-dialog.d.ts +77 -77
- package/dist/types/components/kup-drawer/kup-drawer-declarations.d.ts +9 -9
- package/dist/types/components/kup-drawer/kup-drawer.d.ts +74 -74
- package/dist/types/components/kup-dropdown-button/kup-dropdown-button-declarations.d.ts +21 -21
- package/dist/types/components/kup-dropdown-button/kup-dropdown-button.d.ts +161 -161
- package/dist/types/components/kup-echart/kup-echart-declarations.d.ts +63 -62
- package/dist/types/components/kup-echart/kup-echart.d.ts +111 -111
- package/dist/types/components/kup-family-tree/kup-family-tree-declarations.d.ts +38 -38
- package/dist/types/components/kup-family-tree/kup-family-tree.d.ts +87 -87
- package/dist/types/components/kup-form/kup-form-declarations.d.ts +64 -64
- package/dist/types/components/kup-form/kup-form.d.ts +83 -83
- package/dist/types/components/kup-gauge/kup-gauge-declarations.d.ts +25 -25
- package/dist/types/components/kup-gauge/kup-gauge.d.ts +147 -147
- package/dist/types/components/kup-grid/kup-grid-declarations.d.ts +9 -9
- package/dist/types/components/kup-grid/kup-grid.d.ts +48 -48
- package/dist/types/components/kup-iframe/kup-iframe-declarations.d.ts +9 -9
- package/dist/types/components/kup-iframe/kup-iframe.d.ts +49 -49
- package/dist/types/components/kup-image/canvas/kup-image-canvas-declarations.d.ts +23 -23
- package/dist/types/components/kup-image/canvas/kup-image-canvas-helper.d.ts +2 -2
- package/dist/types/components/kup-image/canvas/kup-image-canvas.d.ts +28 -28
- package/dist/types/components/kup-image/kup-image-declarations.d.ts +19 -19
- package/dist/types/components/kup-image/kup-image.d.ts +103 -103
- package/dist/types/components/kup-image-list/kup-image-list-declarations.d.ts +14 -14
- package/dist/types/components/kup-image-list/kup-image-list-state.d.ts +6 -6
- package/dist/types/components/kup-image-list/kup-image-list.d.ts +73 -73
- package/dist/types/components/kup-lazy/kup-lazy-declarations.d.ts +18 -18
- package/dist/types/components/kup-lazy/kup-lazy.d.ts +78 -78
- package/dist/types/components/kup-list/kup-list-declarations.d.ts +48 -48
- package/dist/types/components/kup-list/kup-list-helper.d.ts +6 -6
- package/dist/types/components/kup-list/kup-list.d.ts +128 -128
- package/dist/types/components/kup-magic-box/kup-magic-box-declarations.d.ts +21 -21
- package/dist/types/components/kup-magic-box/kup-magic-box.d.ts +65 -65
- package/dist/types/components/kup-nav-bar/kup-nav-bar-declarations.d.ts +19 -19
- package/dist/types/components/kup-nav-bar/kup-nav-bar.d.ts +65 -65
- package/dist/types/components/kup-numeric-picker/kup-numeric-picker-declarations.d.ts +19 -19
- package/dist/types/components/kup-numeric-picker/kup-numeric-picker.d.ts +121 -121
- package/dist/types/components/kup-photo-frame/kup-photo-frame-declarations.d.ts +9 -9
- package/dist/types/components/kup-photo-frame/kup-photo-frame.d.ts +61 -61
- package/dist/types/components/kup-planner/kup-planner-declarations.d.ts +127 -106
- package/dist/types/components/kup-planner/kup-planner-helper.d.ts +6 -6
- package/dist/types/components/kup-planner/kup-planner-state.d.ts +13 -0
- package/dist/types/components/kup-planner/kup-planner.d.ts +266 -212
- package/dist/types/components/kup-probe/kup-probe.d.ts +72 -72
- package/dist/types/components/kup-progress-bar/kup-progress-bar-declarations.d.ts +13 -13
- package/dist/types/components/kup-progress-bar/kup-progress-bar.d.ts +69 -69
- package/dist/types/components/kup-qlik/kup-qlik-declarations.d.ts +19 -19
- package/dist/types/components/kup-qlik/kup-qlik.d.ts +100 -100
- package/dist/types/components/kup-radio/kup-radio-declarations.d.ts +23 -23
- package/dist/types/components/kup-radio/kup-radio.d.ts +80 -80
- package/dist/types/components/kup-rating/kup-rating-declarations.d.ts +14 -14
- package/dist/types/components/kup-rating/kup-rating.d.ts +62 -62
- package/dist/types/components/kup-snackbar/kup-snackbar-declarations.d.ts +12 -12
- package/dist/types/components/kup-snackbar/kup-snackbar.d.ts +84 -84
- package/dist/types/components/kup-spinner/kup-spinner-declarations.d.ts +14 -14
- package/dist/types/components/kup-spinner/kup-spinner.d.ts +79 -79
- package/dist/types/components/kup-state/kup-state.d.ts +3 -3
- package/dist/types/components/kup-state/kup-store.d.ts +4 -4
- package/dist/types/components/kup-state/mock-store.d.ts +8 -8
- package/dist/types/components/kup-switch/kup-switch-declarations.d.ts +15 -15
- package/dist/types/components/kup-switch/kup-switch.d.ts +80 -80
- package/dist/types/components/kup-tab-bar/kup-tab-bar-declarations.d.ts +21 -21
- package/dist/types/components/kup-tab-bar/kup-tab-bar.d.ts +77 -77
- package/dist/types/components/kup-text-field/kup-text-field-declarations.d.ts +38 -38
- package/dist/types/components/kup-text-field/kup-text-field.d.ts +253 -253
- package/dist/types/components/kup-time-picker/kup-time-picker-declarations.d.ts +17 -17
- package/dist/types/components/kup-time-picker/kup-time-picker.d.ts +125 -125
- package/dist/types/components/kup-tree/kup-tree-declarations.d.ts +97 -97
- package/dist/types/components/kup-tree/kup-tree-faker.d.ts +54 -54
- package/dist/types/components/kup-tree/kup-tree-state.d.ts +14 -14
- package/dist/types/components/kup-tree/kup-tree.d.ts +362 -362
- package/dist/types/components.d.ts +112 -14
- package/dist/types/f-components/f-button/f-button-declarations.d.ts +41 -41
- package/dist/types/f-components/f-button/f-button.d.ts +3 -3
- package/dist/types/f-components/f-cell/f-cell-declarations.d.ts +162 -162
- package/dist/types/f-components/f-cell/f-cell.d.ts +3 -3
- package/dist/types/f-components/f-checkbox/f-checkbox-declarations.d.ts +15 -15
- package/dist/types/f-components/f-checkbox/f-checkbox.d.ts +3 -3
- package/dist/types/f-components/f-chip/f-chip-declarations.d.ts +29 -29
- package/dist/types/f-components/f-chip/f-chip.d.ts +3 -3
- package/dist/types/f-components/f-image/f-image-declarations.d.ts +36 -36
- package/dist/types/f-components/f-image/f-image.d.ts +3 -3
- package/dist/types/f-components/f-paginator/f-paginator-declarations.d.ts +22 -22
- package/dist/types/f-components/f-paginator/f-paginator-utils.d.ts +2 -2
- package/dist/types/f-components/f-paginator/f-paginator.d.ts +3 -3
- package/dist/types/f-components/f-switch/f-switch-declarations.d.ts +14 -14
- package/dist/types/f-components/f-switch/f-switch.d.ts +3 -3
- package/dist/types/f-components/f-text-field/f-text-field-declarations.d.ts +42 -42
- package/dist/types/f-components/f-text-field/f-text-field-mdc.d.ts +6 -6
- package/dist/types/f-components/f-text-field/f-text-field.d.ts +3 -3
- package/dist/types/managers/kup-data/kup-data-cell-helper.d.ts +31 -31
- package/dist/types/managers/kup-data/kup-data-column-helper.d.ts +39 -39
- package/dist/types/managers/kup-data/kup-data-declarations.d.ts +173 -173
- package/dist/types/managers/kup-data/kup-data-node-helper.d.ts +44 -44
- package/dist/types/managers/kup-data/kup-data-row-helper.d.ts +14 -14
- package/dist/types/managers/kup-data/kup-data.d.ts +86 -86
- package/dist/types/managers/kup-dates/kup-dates-declarations.d.ts +39 -39
- package/dist/types/managers/kup-dates/kup-dates.d.ts +207 -207
- package/dist/types/managers/kup-debug/kup-debug-declarations.d.ts +38 -38
- package/dist/types/managers/kup-debug/kup-debug.d.ts +95 -95
- package/dist/types/managers/kup-dynamic-position/kup-dynamic-position-declarations.d.ts +50 -50
- package/dist/types/managers/kup-dynamic-position/kup-dynamic-position.d.ts +61 -61
- package/dist/types/managers/kup-interact/kup-interact-declarations.d.ts +128 -128
- package/dist/types/managers/kup-interact/kup-interact.d.ts +105 -105
- package/dist/types/managers/kup-language/kup-language-declarations.d.ts +225 -225
- package/dist/types/managers/kup-language/kup-language.d.ts +52 -52
- package/dist/types/managers/kup-manager/kup-manager-declarations.d.ts +162 -162
- package/dist/types/managers/kup-manager/kup-manager.d.ts +95 -95
- package/dist/types/managers/kup-math/kup-math-declarations.d.ts +33 -33
- package/dist/types/managers/kup-math/kup-math-helper.d.ts +17 -17
- package/dist/types/managers/kup-math/kup-math.d.ts +147 -146
- package/dist/types/managers/kup-objects/kup-objects-declarations.d.ts +15 -15
- package/dist/types/managers/kup-objects/kup-objects.d.ts +210 -210
- package/dist/types/managers/kup-scroll-on-hover/kup-scroll-on-hover-declarations.d.ts +28 -28
- package/dist/types/managers/kup-scroll-on-hover/kup-scroll-on-hover.d.ts +62 -62
- package/dist/types/managers/kup-search/kup-search-declarations.d.ts +7 -7
- package/dist/types/managers/kup-search/kup-search.d.ts +20 -20
- package/dist/types/managers/kup-theme/kup-theme-declarations.d.ts +185 -185
- package/dist/types/managers/kup-theme/kup-theme.d.ts +127 -127
- package/dist/types/managers/kup-toolbar/kup-toolbar-declarations.d.ts +8 -8
- package/dist/types/managers/kup-toolbar/kup-toolbar.d.ts +39 -39
- package/dist/types/managers/kup-tooltip/kup-tooltip-declarations.d.ts +8 -8
- package/dist/types/managers/kup-tooltip/kup-tooltip.d.ts +51 -51
- package/dist/types/stencil-public-runtime.d.ts +3 -0
- package/dist/types/types/GenericTypes.d.ts +110 -110
- package/dist/types/utils/cell-utils.d.ts +10 -10
- package/dist/types/utils/filters/filters-column-menu.d.ts +96 -96
- package/dist/types/utils/filters/filters-declarations.d.ts +39 -39
- package/dist/types/utils/filters/filters-rows.d.ts +30 -30
- package/dist/types/utils/filters/filters-tree-items.d.ts +19 -19
- package/dist/types/utils/filters/filters.d.ts +72 -72
- package/dist/types/utils/kup-column-menu/kup-column-menu-declarations.d.ts +19 -19
- package/dist/types/utils/kup-column-menu/kup-column-menu.d.ts +142 -142
- package/dist/types/utils/utils.d.ts +37 -35
- package/dist/types/variables/GenericVariables.d.ts +4 -4
- package/package.json +21 -16
- package/dist/cjs/tslib.es6-386654de.js +0 -87
- package/dist/esm/tslib.es6-8c2af864.js +0 -82
- package/dist/ketchup/p-0bcda0e2.entry.js +0 -1
- package/dist/ketchup/p-33aff1ca.entry.js +0 -25
- package/dist/ketchup/p-3432ebaf.entry.js +0 -9
- package/dist/ketchup/p-35b29b22.entry.js +0 -1
- package/dist/ketchup/p-36dac88e.js +0 -30
- package/dist/ketchup/p-39a55c47.js +0 -1
- package/dist/ketchup/p-489d55ff.entry.js +0 -39
- package/dist/ketchup/p-73c8d651.entry.js +0 -1
- package/dist/ketchup/p-7f59211b.js +0 -1
- package/dist/ketchup/p-9dcfbb1e.js +0 -2
- package/dist/ketchup/p-b2fd2dbf.entry.js +0 -1
- package/dist/ketchup/p-d1b050d0.entry.js +0 -27
- package/dist/ketchup/p-d6ea709e.entry.js +0 -1
- /package/dist/ketchup/{p-6c77a36c.js → p-0fd98ab4.js} +0 -0
- /package/dist/ketchup/{p-97e8ea42.js → p-ad2e21d2.js} +0 -0
|
@@ -1,300 +1,300 @@
|
|
|
1
|
-
import { KupDebugCategory } from '../kup-debug/kup-debug-declarations';
|
|
2
|
-
import { KupLanguageTotals } from '../kup-language/kup-language-declarations';
|
|
3
|
-
import { KupDataNewColumnTypes, } from './kup-data-declarations';
|
|
4
|
-
const dom = document.documentElement;
|
|
5
|
-
/**
|
|
6
|
-
* Finds the columns matching the criteria specified in the filters argument.
|
|
7
|
-
* @param {KupDataDataset | Column[]} dataset - Input dataset or array of columns.
|
|
8
|
-
* @param {Partial<Column>} filters - Column interface containing the filters to match.
|
|
9
|
-
* @returns {Column[]} Columns matching the criteria.
|
|
10
|
-
*/
|
|
11
|
-
export function findColumns(dataset, filters) {
|
|
12
|
-
const result = [];
|
|
13
|
-
if (!dataset) {
|
|
14
|
-
return result;
|
|
15
|
-
}
|
|
16
|
-
const columns = dataset.columns
|
|
17
|
-
? dataset.columns
|
|
18
|
-
: dataset;
|
|
19
|
-
for (let index = 0; index < columns.length; index++) {
|
|
20
|
-
const column = columns[index];
|
|
21
|
-
for (const key in filters) {
|
|
22
|
-
const filter = filters[key];
|
|
23
|
-
if (column[key] === filter) {
|
|
24
|
-
result.push(column);
|
|
25
|
-
}
|
|
26
|
-
else if (dom.ketchup.objects.deepEqual(column[key], filter)) {
|
|
27
|
-
result.push(column);
|
|
28
|
-
}
|
|
29
|
-
}
|
|
30
|
-
}
|
|
31
|
-
return result;
|
|
32
|
-
}
|
|
33
|
-
/**
|
|
34
|
-
* Sets the given columns of the input dataset to be hidden.
|
|
35
|
-
* @param {KupDataDataset | Column[]} dataset - Input dataset or array of columns.
|
|
36
|
-
* @param {string[]} columns2hide - Names of columns to hide.
|
|
37
|
-
* @returns {KupDataColumn[]} Columns that were set to hidden.
|
|
38
|
-
*/
|
|
39
|
-
export function hideColumns(dataset, columns2hide) {
|
|
40
|
-
const columns = dataset.columns
|
|
41
|
-
? dataset.columns
|
|
42
|
-
: dataset;
|
|
43
|
-
const hidden = [];
|
|
44
|
-
for (let index = 0; index < columns.length; index++) {
|
|
45
|
-
const column = columns[index];
|
|
46
|
-
if (columns2hide.includes(column.name)) {
|
|
47
|
-
column.visible = false;
|
|
48
|
-
hidden.push(column);
|
|
49
|
-
}
|
|
50
|
-
}
|
|
51
|
-
return hidden;
|
|
52
|
-
}
|
|
53
|
-
/**
|
|
54
|
-
* Creates a new column with the specified options.
|
|
55
|
-
* @param {KupDataDataset} dataset - Input dataset.
|
|
56
|
-
* @param {KupDataNewColumnTypes} type - Type of column creation.
|
|
57
|
-
* @param {KupDataNewColumnOptions} options - Options used by the submethods to create the column.
|
|
58
|
-
* @returns {string | Column} Returns the new column created or a string containing the error message (if something went wrong).
|
|
59
|
-
*/
|
|
60
|
-
export function newColumn(dataset, type, options) {
|
|
61
|
-
switch (type) {
|
|
62
|
-
case KupDataNewColumnTypes.CONCATENATE:
|
|
63
|
-
return newColumnFromConcatenate(dataset, options.columns, options.separator);
|
|
64
|
-
case KupDataNewColumnTypes.DUPLICATE:
|
|
65
|
-
return newColumnFromDuplication(dataset, options.columns, options.newColumn);
|
|
66
|
-
case KupDataNewColumnTypes.MATH:
|
|
67
|
-
return newColumnFromMath(dataset, options.operation, options.columns);
|
|
68
|
-
case KupDataNewColumnTypes.MERGE:
|
|
69
|
-
return newColumnFromMerge(dataset, options.columns, options.newColumn);
|
|
70
|
-
default:
|
|
71
|
-
const message = 'Wrong type used to invoke new column creation!(' + type + ')';
|
|
72
|
-
dom.ketchup.debug.logMessage('kup-data', message, KupDebugCategory.WARNING);
|
|
73
|
-
return message;
|
|
74
|
-
}
|
|
75
|
-
}
|
|
76
|
-
/**
|
|
77
|
-
* This method concatenates all the columns specified in the argument into a single one.
|
|
78
|
-
* @param {KupDataDataset} dataset - Input dataset.
|
|
79
|
-
* @param {string[]} columns - Array of column names.
|
|
80
|
-
* @param {string} separator - Characters used to separate values.
|
|
81
|
-
* @returns {string|KupDataColumn} Returns the new column created or a string containing the error message (if something went wrong).
|
|
82
|
-
*/
|
|
83
|
-
function newColumnFromConcatenate(dataset, columns, separator) {
|
|
84
|
-
if (!columns || columns.length === 0) {
|
|
85
|
-
const message = 'Invalid array, interrupting column merging!(' + columns + ')';
|
|
86
|
-
dom.ketchup.debug.logMessage('kup-data', message, KupDebugCategory.WARNING);
|
|
87
|
-
return message;
|
|
88
|
-
}
|
|
89
|
-
let firstColumn = null;
|
|
90
|
-
const titles = [];
|
|
91
|
-
const objs = [];
|
|
92
|
-
separator = separator ? separator : ' ';
|
|
93
|
-
for (let index = 0; index < dataset.columns.length; index++) {
|
|
94
|
-
const col = dataset.columns[index];
|
|
95
|
-
if (columns.includes(col.name)) {
|
|
96
|
-
objs.push(col.obj);
|
|
97
|
-
titles[columns.indexOf(col.name)] = col.title;
|
|
98
|
-
}
|
|
99
|
-
if (columns[0] === col.name) {
|
|
100
|
-
firstColumn = col;
|
|
101
|
-
}
|
|
102
|
-
if (col.mergedFrom &&
|
|
103
|
-
col.mergedFrom.toString() === columns.toString()) {
|
|
104
|
-
const message = 'The product of these columns in the same order already exists!(' +
|
|
105
|
-
columns.toString() +
|
|
106
|
-
')';
|
|
107
|
-
col.visible = true;
|
|
108
|
-
dom.ketchup.debug.logMessage('kup-data', message, KupDebugCategory.WARNING);
|
|
109
|
-
return message;
|
|
110
|
-
}
|
|
111
|
-
}
|
|
112
|
-
const newName = columns.join('_');
|
|
113
|
-
const newObj = objs.length > 0 && dom.ketchup.objects.isSameKupObj(objs)
|
|
114
|
-
? objs[0]
|
|
115
|
-
: null;
|
|
116
|
-
const newTitle = titles.join(separator);
|
|
117
|
-
dataset.rows.forEach((row) => {
|
|
118
|
-
const cells = row.cells;
|
|
119
|
-
const values = [];
|
|
120
|
-
let base = null;
|
|
121
|
-
if (cells) {
|
|
122
|
-
for (let index = 0; index < columns.length; index++) {
|
|
123
|
-
const column = columns[index];
|
|
124
|
-
const cell = cells[column];
|
|
125
|
-
if (cell) {
|
|
126
|
-
if (!base) {
|
|
127
|
-
base = cell;
|
|
128
|
-
}
|
|
129
|
-
values.push(cell.value);
|
|
130
|
-
}
|
|
131
|
-
}
|
|
132
|
-
}
|
|
133
|
-
const value = values.join(separator);
|
|
134
|
-
if (values.length > 0) {
|
|
135
|
-
cells[newName] = Object.assign(Object.assign({}, base), { displayedValue: null, obj: newObj ? Object.assign(Object.assign({}, newObj), { k: value }) : null, value: value });
|
|
136
|
-
}
|
|
137
|
-
});
|
|
138
|
-
const newColumn = Object.assign(Object.assign({}, firstColumn), { name: newName, title: newTitle, obj: newObj, mergedFrom: columns });
|
|
139
|
-
dataset.columns.splice(dataset.columns.indexOf(firstColumn) + 1, 0, newColumn);
|
|
140
|
-
return newColumn;
|
|
141
|
-
}
|
|
142
|
-
/**
|
|
143
|
-
* Creates a duplicate of the specified column.
|
|
144
|
-
* @param {KupDataDataset} dataset - Input dataset.
|
|
145
|
-
* @param {string[]} column2duplicate - Name of the column to duplicate (the first occurrence of the array will be used).
|
|
146
|
-
* @param {KupDataColumn} newColumn - Column created.
|
|
147
|
-
* @returns {KupDataColumn} Resulting column.
|
|
148
|
-
*/
|
|
149
|
-
export function newColumnFromDuplication(dataset, column2duplicate, newColumn) {
|
|
150
|
-
const duplicatedName = column2duplicate[0];
|
|
151
|
-
for (let index = 0; index < dataset.rows.length; index++) {
|
|
152
|
-
const row = dataset.rows[index];
|
|
153
|
-
const cells = row.cells;
|
|
154
|
-
if (cells && cells[duplicatedName]) {
|
|
155
|
-
cells[newColumn.name] = Object.assign({}, cells[duplicatedName]);
|
|
156
|
-
}
|
|
157
|
-
}
|
|
158
|
-
dataset.columns.push(newColumn);
|
|
159
|
-
return newColumn;
|
|
160
|
-
}
|
|
161
|
-
/**
|
|
162
|
-
* This method is used to create a new column from a mathematical formula.
|
|
163
|
-
* @param {KupDataDataset} dataset - Input dataset.
|
|
164
|
-
* @param {string} operation - Mathematical operation to apply (i.e.: "sum", "average", ([COL1] - [COL2]) * 100 / [COL3]).
|
|
165
|
-
* @param {string[]} columns - Column names used for the mathematical operation. When missing, they will be extracted from the formula.
|
|
166
|
-
* @returns {string | KupDataColumn} Returns the new column created or a string containing the error message (if something went wrong).
|
|
167
|
-
*/
|
|
168
|
-
function newColumnFromMath(dataset, operation, columns) {
|
|
169
|
-
if (!columns) {
|
|
170
|
-
columns = [];
|
|
171
|
-
}
|
|
172
|
-
if (columns.length === 0) {
|
|
173
|
-
const names = operation.split('[');
|
|
174
|
-
for (let i = 1; i < names.length; i++) {
|
|
175
|
-
columns.push(names[i].split(']')[0]);
|
|
176
|
-
}
|
|
177
|
-
}
|
|
178
|
-
if (columns.length === 0) {
|
|
179
|
-
const message = "Can't apply math formulas without columns!(" + columns + ')';
|
|
180
|
-
dom.ketchup.debug.logMessage('kup-data', message, KupDebugCategory.WARNING);
|
|
181
|
-
return message;
|
|
182
|
-
}
|
|
183
|
-
const titles = [];
|
|
184
|
-
const formulaRow = {};
|
|
185
|
-
let firstColumn = null;
|
|
186
|
-
let formula = '';
|
|
187
|
-
switch (operation) {
|
|
188
|
-
case KupLanguageTotals.AVERAGE:
|
|
189
|
-
formula = `(${columns.join(' + ')}) / ${columns.length}`;
|
|
190
|
-
break;
|
|
191
|
-
case KupLanguageTotals.DIFFERENCE:
|
|
192
|
-
formula = columns.join(' - ');
|
|
193
|
-
break;
|
|
194
|
-
case KupLanguageTotals.PRODUCT:
|
|
195
|
-
formula = columns.join(' * ');
|
|
196
|
-
break;
|
|
197
|
-
case KupLanguageTotals.SUM:
|
|
198
|
-
formula = columns.join(' + ');
|
|
199
|
-
break;
|
|
200
|
-
default:
|
|
201
|
-
formula = operation;
|
|
202
|
-
}
|
|
203
|
-
for (let index = 0; index < dataset.columns.length; index++) {
|
|
204
|
-
const col = dataset.columns[index];
|
|
205
|
-
if (columns.includes(col.name)) {
|
|
206
|
-
titles[columns.indexOf(col.name)] = col.title;
|
|
207
|
-
if (!dom.ketchup.objects.isNumber(col.obj)) {
|
|
208
|
-
const message = "Can't apply math formulas on non-numerical columns!(" +
|
|
209
|
-
columns +
|
|
210
|
-
')';
|
|
211
|
-
dom.ketchup.debug.logMessage('kup-data', message, KupDebugCategory.WARNING);
|
|
212
|
-
return message;
|
|
213
|
-
}
|
|
214
|
-
}
|
|
215
|
-
if (columns[0] === col.name) {
|
|
216
|
-
firstColumn = col;
|
|
217
|
-
}
|
|
218
|
-
if (col.resultOf && col.resultOf === formula) {
|
|
219
|
-
const message = 'This mathematical operation on these columns was already performed!(' +
|
|
220
|
-
formula +
|
|
221
|
-
')';
|
|
222
|
-
dom.ketchup.debug.logMessage('kup-data', message, KupDebugCategory.WARNING);
|
|
223
|
-
return message;
|
|
224
|
-
}
|
|
225
|
-
}
|
|
226
|
-
let prog = 0;
|
|
227
|
-
let newName = 'MATH_';
|
|
228
|
-
while (findColumns(dataset, { name: newName + prog }).length > 0) {
|
|
229
|
-
prog++;
|
|
230
|
-
}
|
|
231
|
-
newName = newName + prog;
|
|
232
|
-
const newObj = firstColumn.obj;
|
|
233
|
-
let newTitle = formula;
|
|
234
|
-
for (let i = 0; i < columns.length; i++) {
|
|
235
|
-
const column = columns[i];
|
|
236
|
-
let re = new RegExp(column, 'g');
|
|
237
|
-
newTitle = newTitle.replace(re, titles[i]);
|
|
238
|
-
}
|
|
239
|
-
dataset.rows.forEach((row) => {
|
|
240
|
-
const cells = row.cells;
|
|
241
|
-
let base = null;
|
|
242
|
-
if (cells) {
|
|
243
|
-
for (let index = 0; index < columns.length; index++) {
|
|
244
|
-
const column = columns[index];
|
|
245
|
-
const cell = cells[column];
|
|
246
|
-
if (cell) {
|
|
247
|
-
if (!base) {
|
|
248
|
-
base = cell;
|
|
249
|
-
}
|
|
250
|
-
formulaRow[column] = dom.ketchup.math.numberify(cell.value);
|
|
251
|
-
}
|
|
252
|
-
}
|
|
253
|
-
}
|
|
254
|
-
const value = dom.ketchup.math.formulas
|
|
255
|
-
.custom(formula, formulaRow)
|
|
256
|
-
.toString();
|
|
257
|
-
cells[newName] = Object.assign(Object.assign({}, base), { displayedValue: null, obj: Object.assign(Object.assign({}, newObj), { k: value }), value: value });
|
|
258
|
-
});
|
|
259
|
-
const newColumn = Object.assign(Object.assign({}, firstColumn), { name: newName, title: newTitle, obj: newObj, resultOf: formula });
|
|
260
|
-
dataset.columns.splice(dataset.columns.indexOf(firstColumn) + 1, 0, newColumn);
|
|
261
|
-
return newColumn;
|
|
262
|
-
}
|
|
263
|
-
/**
|
|
264
|
-
* Takes the columns to merge and creates a new column with their cells. The merged columns will then be removed.
|
|
265
|
-
* @param {KupDataDataset} dataset - Input dataset.
|
|
266
|
-
* @param {string[]} columns2merge - Names of columns to merge.
|
|
267
|
-
* @param {KupDataColumn} newColumn - Column created.
|
|
268
|
-
* @returns {KupDataColumn} Resulting column.
|
|
269
|
-
*/
|
|
270
|
-
export function newColumnFromMerge(dataset, columns2merge, newColumn) {
|
|
271
|
-
const outputCells = [];
|
|
272
|
-
for (let index = 0; index < dataset.rows.length; index++) {
|
|
273
|
-
const row = dataset.rows[index];
|
|
274
|
-
const cells = row.cells;
|
|
275
|
-
for (const key in cells) {
|
|
276
|
-
const cell = cells[key];
|
|
277
|
-
if (columns2merge.includes(key)) {
|
|
278
|
-
outputCells.push(Object.assign({}, cell));
|
|
279
|
-
delete cells[key];
|
|
280
|
-
}
|
|
281
|
-
}
|
|
282
|
-
}
|
|
283
|
-
for (let index = 0; index < columns2merge.length; index++) {
|
|
284
|
-
const column2removeIndex = dataset.columns.findIndex((col) => col.name === columns2merge[index]);
|
|
285
|
-
dataset.columns.splice(column2removeIndex, 1);
|
|
286
|
-
}
|
|
287
|
-
let rowIndex = 0;
|
|
288
|
-
for (let index = 0; index < outputCells.length; index++) {
|
|
289
|
-
const outputCell = outputCells[index];
|
|
290
|
-
let row = null;
|
|
291
|
-
if (!dataset.rows[rowIndex]) {
|
|
292
|
-
dataset.rows[rowIndex] = { cells: {} };
|
|
293
|
-
}
|
|
294
|
-
row = dataset.rows[rowIndex];
|
|
295
|
-
row.cells[newColumn.name] = outputCell;
|
|
296
|
-
rowIndex++;
|
|
297
|
-
}
|
|
298
|
-
dataset.columns.push(newColumn);
|
|
299
|
-
return newColumn;
|
|
300
|
-
}
|
|
1
|
+
import { KupDebugCategory } from '../kup-debug/kup-debug-declarations';
|
|
2
|
+
import { KupLanguageTotals } from '../kup-language/kup-language-declarations';
|
|
3
|
+
import { KupDataNewColumnTypes, } from './kup-data-declarations';
|
|
4
|
+
const dom = document.documentElement;
|
|
5
|
+
/**
|
|
6
|
+
* Finds the columns matching the criteria specified in the filters argument.
|
|
7
|
+
* @param {KupDataDataset | Column[]} dataset - Input dataset or array of columns.
|
|
8
|
+
* @param {Partial<Column>} filters - Column interface containing the filters to match.
|
|
9
|
+
* @returns {Column[]} Columns matching the criteria.
|
|
10
|
+
*/
|
|
11
|
+
export function findColumns(dataset, filters) {
|
|
12
|
+
const result = [];
|
|
13
|
+
if (!dataset) {
|
|
14
|
+
return result;
|
|
15
|
+
}
|
|
16
|
+
const columns = dataset.columns
|
|
17
|
+
? dataset.columns
|
|
18
|
+
: dataset;
|
|
19
|
+
for (let index = 0; index < columns.length; index++) {
|
|
20
|
+
const column = columns[index];
|
|
21
|
+
for (const key in filters) {
|
|
22
|
+
const filter = filters[key];
|
|
23
|
+
if (column[key] === filter) {
|
|
24
|
+
result.push(column);
|
|
25
|
+
}
|
|
26
|
+
else if (dom.ketchup.objects.deepEqual(column[key], filter)) {
|
|
27
|
+
result.push(column);
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
return result;
|
|
32
|
+
}
|
|
33
|
+
/**
|
|
34
|
+
* Sets the given columns of the input dataset to be hidden.
|
|
35
|
+
* @param {KupDataDataset | Column[]} dataset - Input dataset or array of columns.
|
|
36
|
+
* @param {string[]} columns2hide - Names of columns to hide.
|
|
37
|
+
* @returns {KupDataColumn[]} Columns that were set to hidden.
|
|
38
|
+
*/
|
|
39
|
+
export function hideColumns(dataset, columns2hide) {
|
|
40
|
+
const columns = dataset.columns
|
|
41
|
+
? dataset.columns
|
|
42
|
+
: dataset;
|
|
43
|
+
const hidden = [];
|
|
44
|
+
for (let index = 0; index < columns.length; index++) {
|
|
45
|
+
const column = columns[index];
|
|
46
|
+
if (columns2hide.includes(column.name)) {
|
|
47
|
+
column.visible = false;
|
|
48
|
+
hidden.push(column);
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
return hidden;
|
|
52
|
+
}
|
|
53
|
+
/**
|
|
54
|
+
* Creates a new column with the specified options.
|
|
55
|
+
* @param {KupDataDataset} dataset - Input dataset.
|
|
56
|
+
* @param {KupDataNewColumnTypes} type - Type of column creation.
|
|
57
|
+
* @param {KupDataNewColumnOptions} options - Options used by the submethods to create the column.
|
|
58
|
+
* @returns {string | Column} Returns the new column created or a string containing the error message (if something went wrong).
|
|
59
|
+
*/
|
|
60
|
+
export function newColumn(dataset, type, options) {
|
|
61
|
+
switch (type) {
|
|
62
|
+
case KupDataNewColumnTypes.CONCATENATE:
|
|
63
|
+
return newColumnFromConcatenate(dataset, options.columns, options.separator);
|
|
64
|
+
case KupDataNewColumnTypes.DUPLICATE:
|
|
65
|
+
return newColumnFromDuplication(dataset, options.columns, options.newColumn);
|
|
66
|
+
case KupDataNewColumnTypes.MATH:
|
|
67
|
+
return newColumnFromMath(dataset, options.operation, options.columns);
|
|
68
|
+
case KupDataNewColumnTypes.MERGE:
|
|
69
|
+
return newColumnFromMerge(dataset, options.columns, options.newColumn);
|
|
70
|
+
default:
|
|
71
|
+
const message = 'Wrong type used to invoke new column creation!(' + type + ')';
|
|
72
|
+
dom.ketchup.debug.logMessage('kup-data', message, KupDebugCategory.WARNING);
|
|
73
|
+
return message;
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
/**
|
|
77
|
+
* This method concatenates all the columns specified in the argument into a single one.
|
|
78
|
+
* @param {KupDataDataset} dataset - Input dataset.
|
|
79
|
+
* @param {string[]} columns - Array of column names.
|
|
80
|
+
* @param {string} separator - Characters used to separate values.
|
|
81
|
+
* @returns {string|KupDataColumn} Returns the new column created or a string containing the error message (if something went wrong).
|
|
82
|
+
*/
|
|
83
|
+
function newColumnFromConcatenate(dataset, columns, separator) {
|
|
84
|
+
if (!columns || columns.length === 0) {
|
|
85
|
+
const message = 'Invalid array, interrupting column merging!(' + columns + ')';
|
|
86
|
+
dom.ketchup.debug.logMessage('kup-data', message, KupDebugCategory.WARNING);
|
|
87
|
+
return message;
|
|
88
|
+
}
|
|
89
|
+
let firstColumn = null;
|
|
90
|
+
const titles = [];
|
|
91
|
+
const objs = [];
|
|
92
|
+
separator = separator ? separator : ' ';
|
|
93
|
+
for (let index = 0; index < dataset.columns.length; index++) {
|
|
94
|
+
const col = dataset.columns[index];
|
|
95
|
+
if (columns.includes(col.name)) {
|
|
96
|
+
objs.push(col.obj);
|
|
97
|
+
titles[columns.indexOf(col.name)] = col.title;
|
|
98
|
+
}
|
|
99
|
+
if (columns[0] === col.name) {
|
|
100
|
+
firstColumn = col;
|
|
101
|
+
}
|
|
102
|
+
if (col.mergedFrom &&
|
|
103
|
+
col.mergedFrom.toString() === columns.toString()) {
|
|
104
|
+
const message = 'The product of these columns in the same order already exists!(' +
|
|
105
|
+
columns.toString() +
|
|
106
|
+
')';
|
|
107
|
+
col.visible = true;
|
|
108
|
+
dom.ketchup.debug.logMessage('kup-data', message, KupDebugCategory.WARNING);
|
|
109
|
+
return message;
|
|
110
|
+
}
|
|
111
|
+
}
|
|
112
|
+
const newName = columns.join('_');
|
|
113
|
+
const newObj = objs.length > 0 && dom.ketchup.objects.isSameKupObj(objs)
|
|
114
|
+
? objs[0]
|
|
115
|
+
: null;
|
|
116
|
+
const newTitle = titles.join(separator);
|
|
117
|
+
dataset.rows.forEach((row) => {
|
|
118
|
+
const cells = row.cells;
|
|
119
|
+
const values = [];
|
|
120
|
+
let base = null;
|
|
121
|
+
if (cells) {
|
|
122
|
+
for (let index = 0; index < columns.length; index++) {
|
|
123
|
+
const column = columns[index];
|
|
124
|
+
const cell = cells[column];
|
|
125
|
+
if (cell) {
|
|
126
|
+
if (!base) {
|
|
127
|
+
base = cell;
|
|
128
|
+
}
|
|
129
|
+
values.push(cell.value);
|
|
130
|
+
}
|
|
131
|
+
}
|
|
132
|
+
}
|
|
133
|
+
const value = values.join(separator);
|
|
134
|
+
if (values.length > 0) {
|
|
135
|
+
cells[newName] = Object.assign(Object.assign({}, base), { displayedValue: null, obj: newObj ? Object.assign(Object.assign({}, newObj), { k: value }) : null, value: value });
|
|
136
|
+
}
|
|
137
|
+
});
|
|
138
|
+
const newColumn = Object.assign(Object.assign({}, firstColumn), { name: newName, title: newTitle, obj: newObj, mergedFrom: columns });
|
|
139
|
+
dataset.columns.splice(dataset.columns.indexOf(firstColumn) + 1, 0, newColumn);
|
|
140
|
+
return newColumn;
|
|
141
|
+
}
|
|
142
|
+
/**
|
|
143
|
+
* Creates a duplicate of the specified column.
|
|
144
|
+
* @param {KupDataDataset} dataset - Input dataset.
|
|
145
|
+
* @param {string[]} column2duplicate - Name of the column to duplicate (the first occurrence of the array will be used).
|
|
146
|
+
* @param {KupDataColumn} newColumn - Column created.
|
|
147
|
+
* @returns {KupDataColumn} Resulting column.
|
|
148
|
+
*/
|
|
149
|
+
export function newColumnFromDuplication(dataset, column2duplicate, newColumn) {
|
|
150
|
+
const duplicatedName = column2duplicate[0];
|
|
151
|
+
for (let index = 0; index < dataset.rows.length; index++) {
|
|
152
|
+
const row = dataset.rows[index];
|
|
153
|
+
const cells = row.cells;
|
|
154
|
+
if (cells && cells[duplicatedName]) {
|
|
155
|
+
cells[newColumn.name] = Object.assign({}, cells[duplicatedName]);
|
|
156
|
+
}
|
|
157
|
+
}
|
|
158
|
+
dataset.columns.push(newColumn);
|
|
159
|
+
return newColumn;
|
|
160
|
+
}
|
|
161
|
+
/**
|
|
162
|
+
* This method is used to create a new column from a mathematical formula.
|
|
163
|
+
* @param {KupDataDataset} dataset - Input dataset.
|
|
164
|
+
* @param {string} operation - Mathematical operation to apply (i.e.: "sum", "average", ([COL1] - [COL2]) * 100 / [COL3]).
|
|
165
|
+
* @param {string[]} columns - Column names used for the mathematical operation. When missing, they will be extracted from the formula.
|
|
166
|
+
* @returns {string | KupDataColumn} Returns the new column created or a string containing the error message (if something went wrong).
|
|
167
|
+
*/
|
|
168
|
+
function newColumnFromMath(dataset, operation, columns) {
|
|
169
|
+
if (!columns) {
|
|
170
|
+
columns = [];
|
|
171
|
+
}
|
|
172
|
+
if (columns.length === 0) {
|
|
173
|
+
const names = operation.split('[');
|
|
174
|
+
for (let i = 1; i < names.length; i++) {
|
|
175
|
+
columns.push(names[i].split(']')[0]);
|
|
176
|
+
}
|
|
177
|
+
}
|
|
178
|
+
if (columns.length === 0) {
|
|
179
|
+
const message = "Can't apply math formulas without columns!(" + columns + ')';
|
|
180
|
+
dom.ketchup.debug.logMessage('kup-data', message, KupDebugCategory.WARNING);
|
|
181
|
+
return message;
|
|
182
|
+
}
|
|
183
|
+
const titles = [];
|
|
184
|
+
const formulaRow = {};
|
|
185
|
+
let firstColumn = null;
|
|
186
|
+
let formula = '';
|
|
187
|
+
switch (operation) {
|
|
188
|
+
case KupLanguageTotals.AVERAGE:
|
|
189
|
+
formula = `(${columns.join(' + ')}) / ${columns.length}`;
|
|
190
|
+
break;
|
|
191
|
+
case KupLanguageTotals.DIFFERENCE:
|
|
192
|
+
formula = columns.join(' - ');
|
|
193
|
+
break;
|
|
194
|
+
case KupLanguageTotals.PRODUCT:
|
|
195
|
+
formula = columns.join(' * ');
|
|
196
|
+
break;
|
|
197
|
+
case KupLanguageTotals.SUM:
|
|
198
|
+
formula = columns.join(' + ');
|
|
199
|
+
break;
|
|
200
|
+
default:
|
|
201
|
+
formula = operation;
|
|
202
|
+
}
|
|
203
|
+
for (let index = 0; index < dataset.columns.length; index++) {
|
|
204
|
+
const col = dataset.columns[index];
|
|
205
|
+
if (columns.includes(col.name)) {
|
|
206
|
+
titles[columns.indexOf(col.name)] = col.title;
|
|
207
|
+
if (!dom.ketchup.objects.isNumber(col.obj)) {
|
|
208
|
+
const message = "Can't apply math formulas on non-numerical columns!(" +
|
|
209
|
+
columns +
|
|
210
|
+
')';
|
|
211
|
+
dom.ketchup.debug.logMessage('kup-data', message, KupDebugCategory.WARNING);
|
|
212
|
+
return message;
|
|
213
|
+
}
|
|
214
|
+
}
|
|
215
|
+
if (columns[0] === col.name) {
|
|
216
|
+
firstColumn = col;
|
|
217
|
+
}
|
|
218
|
+
if (col.resultOf && col.resultOf === formula) {
|
|
219
|
+
const message = 'This mathematical operation on these columns was already performed!(' +
|
|
220
|
+
formula +
|
|
221
|
+
')';
|
|
222
|
+
dom.ketchup.debug.logMessage('kup-data', message, KupDebugCategory.WARNING);
|
|
223
|
+
return message;
|
|
224
|
+
}
|
|
225
|
+
}
|
|
226
|
+
let prog = 0;
|
|
227
|
+
let newName = 'MATH_';
|
|
228
|
+
while (findColumns(dataset, { name: newName + prog }).length > 0) {
|
|
229
|
+
prog++;
|
|
230
|
+
}
|
|
231
|
+
newName = newName + prog;
|
|
232
|
+
const newObj = firstColumn.obj;
|
|
233
|
+
let newTitle = formula;
|
|
234
|
+
for (let i = 0; i < columns.length; i++) {
|
|
235
|
+
const column = columns[i];
|
|
236
|
+
let re = new RegExp(column, 'g');
|
|
237
|
+
newTitle = newTitle.replace(re, titles[i]);
|
|
238
|
+
}
|
|
239
|
+
dataset.rows.forEach((row) => {
|
|
240
|
+
const cells = row.cells;
|
|
241
|
+
let base = null;
|
|
242
|
+
if (cells) {
|
|
243
|
+
for (let index = 0; index < columns.length; index++) {
|
|
244
|
+
const column = columns[index];
|
|
245
|
+
const cell = cells[column];
|
|
246
|
+
if (cell) {
|
|
247
|
+
if (!base) {
|
|
248
|
+
base = cell;
|
|
249
|
+
}
|
|
250
|
+
formulaRow[column] = dom.ketchup.math.numberify(cell.value);
|
|
251
|
+
}
|
|
252
|
+
}
|
|
253
|
+
}
|
|
254
|
+
const value = dom.ketchup.math.formulas
|
|
255
|
+
.custom(formula, formulaRow)
|
|
256
|
+
.toString();
|
|
257
|
+
cells[newName] = Object.assign(Object.assign({}, base), { displayedValue: null, obj: Object.assign(Object.assign({}, newObj), { k: value }), value: value });
|
|
258
|
+
});
|
|
259
|
+
const newColumn = Object.assign(Object.assign({}, firstColumn), { name: newName, title: newTitle, obj: newObj, resultOf: formula });
|
|
260
|
+
dataset.columns.splice(dataset.columns.indexOf(firstColumn) + 1, 0, newColumn);
|
|
261
|
+
return newColumn;
|
|
262
|
+
}
|
|
263
|
+
/**
|
|
264
|
+
* Takes the columns to merge and creates a new column with their cells. The merged columns will then be removed.
|
|
265
|
+
* @param {KupDataDataset} dataset - Input dataset.
|
|
266
|
+
* @param {string[]} columns2merge - Names of columns to merge.
|
|
267
|
+
* @param {KupDataColumn} newColumn - Column created.
|
|
268
|
+
* @returns {KupDataColumn} Resulting column.
|
|
269
|
+
*/
|
|
270
|
+
export function newColumnFromMerge(dataset, columns2merge, newColumn) {
|
|
271
|
+
const outputCells = [];
|
|
272
|
+
for (let index = 0; index < dataset.rows.length; index++) {
|
|
273
|
+
const row = dataset.rows[index];
|
|
274
|
+
const cells = row.cells;
|
|
275
|
+
for (const key in cells) {
|
|
276
|
+
const cell = cells[key];
|
|
277
|
+
if (columns2merge.includes(key)) {
|
|
278
|
+
outputCells.push(Object.assign({}, cell));
|
|
279
|
+
delete cells[key];
|
|
280
|
+
}
|
|
281
|
+
}
|
|
282
|
+
}
|
|
283
|
+
for (let index = 0; index < columns2merge.length; index++) {
|
|
284
|
+
const column2removeIndex = dataset.columns.findIndex((col) => col.name === columns2merge[index]);
|
|
285
|
+
dataset.columns.splice(column2removeIndex, 1);
|
|
286
|
+
}
|
|
287
|
+
let rowIndex = 0;
|
|
288
|
+
for (let index = 0; index < outputCells.length; index++) {
|
|
289
|
+
const outputCell = outputCells[index];
|
|
290
|
+
let row = null;
|
|
291
|
+
if (!dataset.rows[rowIndex]) {
|
|
292
|
+
dataset.rows[rowIndex] = { cells: {} };
|
|
293
|
+
}
|
|
294
|
+
row = dataset.rows[rowIndex];
|
|
295
|
+
row.cells[newColumn.name] = outputCell;
|
|
296
|
+
rowIndex++;
|
|
297
|
+
}
|
|
298
|
+
dataset.columns.push(newColumn);
|
|
299
|
+
return newColumn;
|
|
300
|
+
}
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Types of column creation when invoking column.new.
|
|
3
|
-
*/
|
|
4
|
-
export var KupDataNewColumnTypes;
|
|
5
|
-
(function (KupDataNewColumnTypes) {
|
|
6
|
-
KupDataNewColumnTypes["CONCATENATE"] = "concatenate";
|
|
7
|
-
KupDataNewColumnTypes["DUPLICATE"] = "duplicate";
|
|
8
|
-
KupDataNewColumnTypes["MATH"] = "math";
|
|
9
|
-
KupDataNewColumnTypes["MERGE"] = "merge";
|
|
10
|
-
})(KupDataNewColumnTypes || (KupDataNewColumnTypes = {}));
|
|
1
|
+
/**
|
|
2
|
+
* Types of column creation when invoking column.new.
|
|
3
|
+
*/
|
|
4
|
+
export var KupDataNewColumnTypes;
|
|
5
|
+
(function (KupDataNewColumnTypes) {
|
|
6
|
+
KupDataNewColumnTypes["CONCATENATE"] = "concatenate";
|
|
7
|
+
KupDataNewColumnTypes["DUPLICATE"] = "duplicate";
|
|
8
|
+
KupDataNewColumnTypes["MATH"] = "math";
|
|
9
|
+
KupDataNewColumnTypes["MERGE"] = "merge";
|
|
10
|
+
})(KupDataNewColumnTypes || (KupDataNewColumnTypes = {}));
|