@operato/data-grist 9.0.0-beta.61 → 9.0.0-beta.63
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/CHANGELOG.md +18 -0
- package/dist/src/accumulator/accumulator.d.ts +2 -0
- package/dist/src/accumulator/accumulator.js +42 -0
- package/dist/src/accumulator/accumulator.js.map +1 -0
- package/dist/src/configure/column-builder.d.ts +2 -0
- package/dist/src/configure/column-builder.js +99 -0
- package/dist/src/configure/column-builder.js.map +1 -0
- package/dist/src/configure/config-builder.d.ts +2 -0
- package/dist/src/configure/config-builder.js +36 -0
- package/dist/src/configure/config-builder.js.map +1 -0
- package/dist/src/configure/filters-option-builder.d.ts +2 -0
- package/dist/src/configure/filters-option-builder.js +7 -0
- package/dist/src/configure/filters-option-builder.js.map +1 -0
- package/dist/src/configure/imex-option-builder.d.ts +2 -0
- package/dist/src/configure/imex-option-builder.js +4 -0
- package/dist/src/configure/imex-option-builder.js.map +1 -0
- package/dist/src/configure/list-option-builder.d.ts +2 -0
- package/dist/src/configure/list-option-builder.js +8 -0
- package/dist/src/configure/list-option-builder.js.map +1 -0
- package/dist/src/configure/rows-option-builder.d.ts +2 -0
- package/dist/src/configure/rows-option-builder.js +26 -0
- package/dist/src/configure/rows-option-builder.js.map +1 -0
- package/dist/src/configure/tree-option-builder.d.ts +2 -0
- package/dist/src/configure/tree-option-builder.js +18 -0
- package/dist/src/configure/tree-option-builder.js.map +1 -0
- package/dist/src/configure/zero-config.d.ts +23 -0
- package/dist/src/configure/zero-config.js +59 -0
- package/dist/src/configure/zero-config.js.map +1 -0
- package/dist/src/const.d.ts +1 -0
- package/dist/src/const.js +2 -0
- package/dist/src/const.js.map +1 -0
- package/dist/src/data-card/data-card-field.d.ts +11 -0
- package/dist/src/data-card/data-card-field.js +106 -0
- package/dist/src/data-card/data-card-field.js.map +1 -0
- package/dist/src/data-card/data-card-gutter-menu.d.ts +2 -0
- package/dist/src/data-card/data-card-gutter-menu.js +96 -0
- package/dist/src/data-card/data-card-gutter-menu.js.map +1 -0
- package/dist/src/data-card/data-card-gutter.d.ts +12 -0
- package/dist/src/data-card/data-card-gutter.js +116 -0
- package/dist/src/data-card/data-card-gutter.js.map +1 -0
- package/dist/src/data-card/data-card.d.ts +19 -0
- package/dist/src/data-card/data-card.js +149 -0
- package/dist/src/data-card/data-card.js.map +1 -0
- package/dist/src/data-card/event-handlers/record-card-click-handler.d.ts +7 -0
- package/dist/src/data-card/event-handlers/record-card-click-handler.js +29 -0
- package/dist/src/data-card/event-handlers/record-card-click-handler.js.map +1 -0
- package/dist/src/data-card/event-handlers/record-card-dblclick-handler.d.ts +7 -0
- package/dist/src/data-card/event-handlers/record-card-dblclick-handler.js +29 -0
- package/dist/src/data-card/event-handlers/record-card-dblclick-handler.js.map +1 -0
- package/dist/src/data-card/record-card.d.ts +23 -0
- package/dist/src/data-card/record-card.js +288 -0
- package/dist/src/data-card/record-card.js.map +1 -0
- package/dist/src/data-consumer.d.ts +10 -0
- package/dist/src/data-consumer.js +2 -0
- package/dist/src/data-consumer.js.map +1 -0
- package/dist/src/data-grid/data-grid-accum-field.d.ts +16 -0
- package/dist/src/data-grid/data-grid-accum-field.js +133 -0
- package/dist/src/data-grid/data-grid-accum-field.js.map +1 -0
- package/dist/src/data-grid/data-grid-body-style.d.ts +1 -0
- package/dist/src/data-grid/data-grid-body-style.js +99 -0
- package/dist/src/data-grid/data-grid-body-style.js.map +1 -0
- package/dist/src/data-grid/data-grid-body.d.ts +52 -0
- package/dist/src/data-grid/data-grid-body.js +660 -0
- package/dist/src/data-grid/data-grid-body.js.map +1 -0
- package/dist/src/data-grid/data-grid-field.d.ts +25 -0
- package/dist/src/data-grid/data-grid-field.js +263 -0
- package/dist/src/data-grid/data-grid-field.js.map +1 -0
- package/dist/src/data-grid/data-grid-footer.d.ts +11 -0
- package/dist/src/data-grid/data-grid-footer.js +120 -0
- package/dist/src/data-grid/data-grid-footer.js.map +1 -0
- package/dist/src/data-grid/data-grid-header.d.ts +29 -0
- package/dist/src/data-grid/data-grid-header.js +531 -0
- package/dist/src/data-grid/data-grid-header.js.map +1 -0
- package/dist/src/data-grid/data-grid.d.ts +36 -0
- package/dist/src/data-grid/data-grid.js +260 -0
- package/dist/src/data-grid/data-grid.js.map +1 -0
- package/dist/src/data-grid/event-handlers/data-grid-body-click-handler.d.ts +7 -0
- package/dist/src/data-grid/event-handlers/data-grid-body-click-handler.js +57 -0
- package/dist/src/data-grid/event-handlers/data-grid-body-click-handler.js.map +1 -0
- package/dist/src/data-grid/event-handlers/data-grid-body-contextmenu-handler.d.ts +7 -0
- package/dist/src/data-grid/event-handlers/data-grid-body-contextmenu-handler.js +25 -0
- package/dist/src/data-grid/event-handlers/data-grid-body-contextmenu-handler.js.map +1 -0
- package/dist/src/data-grid/event-handlers/data-grid-body-dblclick-handler.d.ts +7 -0
- package/dist/src/data-grid/event-handlers/data-grid-body-dblclick-handler.js +34 -0
- package/dist/src/data-grid/event-handlers/data-grid-body-dblclick-handler.js.map +1 -0
- package/dist/src/data-grid/event-handlers/data-grid-body-focus-change-handler.d.ts +7 -0
- package/dist/src/data-grid/event-handlers/data-grid-body-focus-change-handler.js +19 -0
- package/dist/src/data-grid/event-handlers/data-grid-body-focus-change-handler.js.map +1 -0
- package/dist/src/data-grid/event-handlers/data-grid-body-keydown-handler.d.ts +7 -0
- package/dist/src/data-grid/event-handlers/data-grid-body-keydown-handler.js +226 -0
- package/dist/src/data-grid/event-handlers/data-grid-body-keydown-handler.js.map +1 -0
- package/dist/src/data-grist.d.ts +367 -0
- package/dist/src/data-grist.js +1064 -0
- package/dist/src/data-grist.js.map +1 -0
- package/dist/src/data-list/data-list-field.d.ts +11 -0
- package/dist/src/data-list/data-list-field.js +95 -0
- package/dist/src/data-list/data-list-field.js.map +1 -0
- package/dist/src/data-list/data-list-gutter.d.ts +12 -0
- package/dist/src/data-list/data-list-gutter.js +121 -0
- package/dist/src/data-list/data-list-gutter.js.map +1 -0
- package/dist/src/data-list/data-list.d.ts +18 -0
- package/dist/src/data-list/data-list.js +139 -0
- package/dist/src/data-list/data-list.js.map +1 -0
- package/dist/src/data-list/event-handlers/record-partial-click-handler.d.ts +7 -0
- package/dist/src/data-list/event-handlers/record-partial-click-handler.js +29 -0
- package/dist/src/data-list/event-handlers/record-partial-click-handler.js.map +1 -0
- package/dist/src/data-list/event-handlers/record-partial-dblclick-handler.d.ts +7 -0
- package/dist/src/data-list/event-handlers/record-partial-dblclick-handler.js +29 -0
- package/dist/src/data-list/event-handlers/record-partial-dblclick-handler.js.map +1 -0
- package/dist/src/data-list/event-handlers/record-partial-long-press-handler.d.ts +7 -0
- package/dist/src/data-list/event-handlers/record-partial-long-press-handler.js +29 -0
- package/dist/src/data-list/event-handlers/record-partial-long-press-handler.js.map +1 -0
- package/dist/src/data-list/record-partial.d.ts +21 -0
- package/dist/src/data-list/record-partial.js +252 -0
- package/dist/src/data-list/record-partial.js.map +1 -0
- package/dist/src/data-manipulator.d.ts +38 -0
- package/dist/src/data-manipulator.js +324 -0
- package/dist/src/data-manipulator.js.map +1 -0
- package/dist/src/data-provider.d.ts +50 -0
- package/dist/src/data-provider.js +200 -0
- package/dist/src/data-provider.js.map +1 -0
- package/dist/src/data-report/data-report-body-style.d.ts +1 -0
- package/dist/src/data-report/data-report-body-style.js +58 -0
- package/dist/src/data-report/data-report-body-style.js.map +1 -0
- package/dist/src/data-report/data-report-body.d.ts +18 -0
- package/dist/src/data-report/data-report-body.js +181 -0
- package/dist/src/data-report/data-report-body.js.map +1 -0
- package/dist/src/data-report/data-report-component.d.ts +21 -0
- package/dist/src/data-report/data-report-component.js +138 -0
- package/dist/src/data-report/data-report-component.js.map +1 -0
- package/dist/src/data-report/data-report-field.d.ts +13 -0
- package/dist/src/data-report/data-report-field.js +99 -0
- package/dist/src/data-report/data-report-field.js.map +1 -0
- package/dist/src/data-report/data-report-header.d.ts +1 -0
- package/dist/src/data-report/data-report-header.js +221 -0
- package/dist/src/data-report/data-report-header.js.map +1 -0
- package/dist/src/data-report/event-handlers/data-report-body-click-handler.d.ts +5 -0
- package/dist/src/data-report/event-handlers/data-report-body-click-handler.js +33 -0
- package/dist/src/data-report/event-handlers/data-report-body-click-handler.js.map +1 -0
- package/dist/src/data-report/event-handlers/data-report-body-dblclick-handler.d.ts +5 -0
- package/dist/src/data-report/event-handlers/data-report-body-dblclick-handler.js +19 -0
- package/dist/src/data-report/event-handlers/data-report-body-dblclick-handler.js.map +1 -0
- package/dist/src/data-report/event-handlers/data-report-body-keydown-handler.d.ts +5 -0
- package/dist/src/data-report/event-handlers/data-report-body-keydown-handler.js +58 -0
- package/dist/src/data-report/event-handlers/data-report-body-keydown-handler.js.map +1 -0
- package/dist/src/data-report.d.ts +44 -0
- package/dist/src/data-report.js +386 -0
- package/dist/src/data-report.js.map +1 -0
- package/dist/src/editors/index.d.ts +3 -0
- package/dist/src/editors/index.js +4 -0
- package/dist/src/editors/index.js.map +1 -0
- package/dist/src/editors/ox-grist-editor-checkbox.d.ts +7 -0
- package/dist/src/editors/ox-grist-editor-checkbox.js +27 -0
- package/dist/src/editors/ox-grist-editor-checkbox.js.map +1 -0
- package/dist/src/editors/ox-grist-editor-color.d.ts +4 -0
- package/dist/src/editors/ox-grist-editor-color.js +14 -0
- package/dist/src/editors/ox-grist-editor-color.js.map +1 -0
- package/dist/src/editors/ox-grist-editor-date.d.ts +4 -0
- package/dist/src/editors/ox-grist-editor-date.js +14 -0
- package/dist/src/editors/ox-grist-editor-date.js.map +1 -0
- package/dist/src/editors/ox-grist-editor-datetime.d.ts +6 -0
- package/dist/src/editors/ox-grist-editor-datetime.js +26 -0
- package/dist/src/editors/ox-grist-editor-datetime.js.map +1 -0
- package/dist/src/editors/ox-grist-editor-email.d.ts +4 -0
- package/dist/src/editors/ox-grist-editor-email.js +14 -0
- package/dist/src/editors/ox-grist-editor-email.js.map +1 -0
- package/dist/src/editors/ox-grist-editor-file.d.ts +6 -0
- package/dist/src/editors/ox-grist-editor-file.js +25 -0
- package/dist/src/editors/ox-grist-editor-file.js.map +1 -0
- package/dist/src/editors/ox-grist-editor-image.d.ts +7 -0
- package/dist/src/editors/ox-grist-editor-image.js +31 -0
- package/dist/src/editors/ox-grist-editor-image.js.map +1 -0
- package/dist/src/editors/ox-grist-editor-month.d.ts +4 -0
- package/dist/src/editors/ox-grist-editor-month.js +14 -0
- package/dist/src/editors/ox-grist-editor-month.js.map +1 -0
- package/dist/src/editors/ox-grist-editor-multiple-select.d.ts +8 -0
- package/dist/src/editors/ox-grist-editor-multiple-select.js +52 -0
- package/dist/src/editors/ox-grist-editor-multiple-select.js.map +1 -0
- package/dist/src/editors/ox-grist-editor-number.d.ts +6 -0
- package/dist/src/editors/ox-grist-editor-number.js +27 -0
- package/dist/src/editors/ox-grist-editor-number.js.map +1 -0
- package/dist/src/editors/ox-grist-editor-password.d.ts +4 -0
- package/dist/src/editors/ox-grist-editor-password.js +14 -0
- package/dist/src/editors/ox-grist-editor-password.js.map +1 -0
- package/dist/src/editors/ox-grist-editor-select.d.ts +4 -0
- package/dist/src/editors/ox-grist-editor-select.js +53 -0
- package/dist/src/editors/ox-grist-editor-select.js.map +1 -0
- package/dist/src/editors/ox-grist-editor-tel.d.ts +4 -0
- package/dist/src/editors/ox-grist-editor-tel.js +14 -0
- package/dist/src/editors/ox-grist-editor-tel.js.map +1 -0
- package/dist/src/editors/ox-grist-editor-text.d.ts +5 -0
- package/dist/src/editors/ox-grist-editor-text.js +17 -0
- package/dist/src/editors/ox-grist-editor-text.js.map +1 -0
- package/dist/src/editors/ox-grist-editor-textarea.d.ts +6 -0
- package/dist/src/editors/ox-grist-editor-textarea.js +18 -0
- package/dist/src/editors/ox-grist-editor-textarea.js.map +1 -0
- package/dist/src/editors/ox-grist-editor-time.d.ts +4 -0
- package/dist/src/editors/ox-grist-editor-time.js +14 -0
- package/dist/src/editors/ox-grist-editor-time.js.map +1 -0
- package/dist/src/editors/ox-grist-editor-tree.d.ts +6 -0
- package/dist/src/editors/ox-grist-editor-tree.js +27 -0
- package/dist/src/editors/ox-grist-editor-tree.js.map +1 -0
- package/dist/src/editors/ox-grist-editor-varname.d.ts +6 -0
- package/dist/src/editors/ox-grist-editor-varname.js +36 -0
- package/dist/src/editors/ox-grist-editor-varname.js.map +1 -0
- package/dist/src/editors/ox-grist-editor-week.d.ts +4 -0
- package/dist/src/editors/ox-grist-editor-week.js +14 -0
- package/dist/src/editors/ox-grist-editor-week.js.map +1 -0
- package/dist/src/editors/ox-grist-editor.d.ts +27 -0
- package/dist/src/editors/ox-grist-editor.js +197 -0
- package/dist/src/editors/ox-grist-editor.js.map +1 -0
- package/dist/src/editors/ox-input-tree.d.ts +20 -0
- package/dist/src/editors/ox-input-tree.js +221 -0
- package/dist/src/editors/ox-input-tree.js.map +1 -0
- package/dist/src/editors/registry.d.ts +12 -0
- package/dist/src/editors/registry.js +71 -0
- package/dist/src/editors/registry.js.map +1 -0
- package/dist/src/empty-note.d.ts +9 -0
- package/dist/src/empty-note.js +53 -0
- package/dist/src/empty-note.js.map +1 -0
- package/dist/src/filters/filter-checkbox.d.ts +3 -0
- package/dist/src/filters/filter-checkbox.js +41 -0
- package/dist/src/filters/filter-checkbox.js.map +1 -0
- package/dist/src/filters/filter-input-barcode.d.ts +3 -0
- package/dist/src/filters/filter-input-barcode.js +28 -0
- package/dist/src/filters/filter-input-barcode.js.map +1 -0
- package/dist/src/filters/filter-input.d.ts +2 -0
- package/dist/src/filters/filter-input.js +25 -0
- package/dist/src/filters/filter-input.js.map +1 -0
- package/dist/src/filters/filter-range-date.d.ts +2 -0
- package/dist/src/filters/filter-range-date.js +66 -0
- package/dist/src/filters/filter-range-date.js.map +1 -0
- package/dist/src/filters/filter-range-number.d.ts +2 -0
- package/dist/src/filters/filter-range-number.js +54 -0
- package/dist/src/filters/filter-range-number.js.map +1 -0
- package/dist/src/filters/filter-select-buttons.d.ts +3 -0
- package/dist/src/filters/filter-select-buttons.js +50 -0
- package/dist/src/filters/filter-select-buttons.js.map +1 -0
- package/dist/src/filters/filter-select.d.ts +3 -0
- package/dist/src/filters/filter-select.js +52 -0
- package/dist/src/filters/filter-select.js.map +1 -0
- package/dist/src/filters/filter-styles.d.ts +1 -0
- package/dist/src/filters/filter-styles.js +119 -0
- package/dist/src/filters/filter-styles.js.map +1 -0
- package/dist/src/filters/filters-form.d.ts +40 -0
- package/dist/src/filters/filters-form.js +430 -0
- package/dist/src/filters/filters-form.js.map +1 -0
- package/dist/src/filters/index.d.ts +8 -0
- package/dist/src/filters/index.js +9 -0
- package/dist/src/filters/index.js.map +1 -0
- package/dist/src/filters/registry.d.ts +7 -0
- package/dist/src/filters/registry.js +48 -0
- package/dist/src/filters/registry.js.map +1 -0
- package/dist/src/formatters/date-formatter.d.ts +1 -0
- package/dist/src/formatters/date-formatter.js +4 -0
- package/dist/src/formatters/date-formatter.js.map +1 -0
- package/dist/src/formatters/index.d.ts +1 -0
- package/dist/src/formatters/index.js +2 -0
- package/dist/src/formatters/index.js.map +1 -0
- package/dist/src/formatters/number-formatter.d.ts +1 -0
- package/dist/src/formatters/number-formatter.js +4 -0
- package/dist/src/formatters/number-formatter.js.map +1 -0
- package/dist/src/formatters/registry.d.ts +6 -0
- package/dist/src/formatters/registry.js +25 -0
- package/dist/src/formatters/registry.js.map +1 -0
- package/dist/src/formatters/text-formatter.d.ts +1 -0
- package/dist/src/formatters/text-formatter.js +4 -0
- package/dist/src/formatters/text-formatter.js.map +1 -0
- package/dist/src/gutters/gutter-button.d.ts +21 -0
- package/dist/src/gutters/gutter-button.js +40 -0
- package/dist/src/gutters/gutter-button.js.map +1 -0
- package/dist/src/gutters/gutter-dirty.d.ts +23 -0
- package/dist/src/gutters/gutter-dirty.js +87 -0
- package/dist/src/gutters/gutter-dirty.js.map +1 -0
- package/dist/src/gutters/gutter-row-selector.d.ts +21 -0
- package/dist/src/gutters/gutter-row-selector.js +70 -0
- package/dist/src/gutters/gutter-row-selector.js.map +1 -0
- package/dist/src/gutters/gutter-sequence.d.ts +35 -0
- package/dist/src/gutters/gutter-sequence.js +48 -0
- package/dist/src/gutters/gutter-sequence.js.map +1 -0
- package/dist/src/gutters/index.d.ts +1 -0
- package/dist/src/gutters/index.js +2 -0
- package/dist/src/gutters/index.js.map +1 -0
- package/dist/src/gutters/registry.d.ts +7 -0
- package/dist/src/gutters/registry.js +26 -0
- package/dist/src/gutters/registry.js.map +1 -0
- package/dist/src/handlers/contextmenu-tree-mutation.d.ts +3 -0
- package/dist/src/handlers/contextmenu-tree-mutation.js +64 -0
- package/dist/src/handlers/contextmenu-tree-mutation.js.map +1 -0
- package/dist/src/handlers/index.d.ts +1 -0
- package/dist/src/handlers/index.js +2 -0
- package/dist/src/handlers/index.js.map +1 -0
- package/dist/src/handlers/move-down.d.ts +3 -0
- package/dist/src/handlers/move-down.js +26 -0
- package/dist/src/handlers/move-down.js.map +1 -0
- package/dist/src/handlers/move-up.d.ts +3 -0
- package/dist/src/handlers/move-up.js +26 -0
- package/dist/src/handlers/move-up.js.map +1 -0
- package/dist/src/handlers/record-copy.d.ts +3 -0
- package/dist/src/handlers/record-copy.js +23 -0
- package/dist/src/handlers/record-copy.js.map +1 -0
- package/dist/src/handlers/record-delete.d.ts +3 -0
- package/dist/src/handlers/record-delete.js +16 -0
- package/dist/src/handlers/record-delete.js.map +1 -0
- package/dist/src/handlers/record-view-handler.d.ts +3 -0
- package/dist/src/handlers/record-view-handler.js +15 -0
- package/dist/src/handlers/record-view-handler.js.map +1 -0
- package/dist/src/handlers/registry.d.ts +7 -0
- package/dist/src/handlers/registry.js +34 -0
- package/dist/src/handlers/registry.js.map +1 -0
- package/dist/src/handlers/select-row-toggle.d.ts +3 -0
- package/dist/src/handlers/select-row-toggle.js +18 -0
- package/dist/src/handlers/select-row-toggle.js.map +1 -0
- package/dist/src/handlers/select-row.d.ts +3 -0
- package/dist/src/handlers/select-row.js +14 -0
- package/dist/src/handlers/select-row.js.map +1 -0
- package/dist/src/index.d.ts +14 -0
- package/dist/src/index.js +15 -0
- package/dist/src/index.js.map +1 -0
- package/dist/src/personalizer/index.d.ts +1 -0
- package/dist/src/personalizer/index.js +2 -0
- package/dist/src/personalizer/index.js.map +1 -0
- package/dist/src/personalizer/ox-grist-filter-personalizer.d.ts +8 -0
- package/dist/src/personalizer/ox-grist-filter-personalizer.js +178 -0
- package/dist/src/personalizer/ox-grist-filter-personalizer.js.map +1 -0
- package/dist/src/personalizer/ox-grist-personalizer.d.ts +8 -0
- package/dist/src/personalizer/ox-grist-personalizer.js +212 -0
- package/dist/src/personalizer/ox-grist-personalizer.js.map +1 -0
- package/dist/src/record-view/event-handlers/record-view-body-click-handler.d.ts +7 -0
- package/dist/src/record-view/event-handlers/record-view-body-click-handler.js +27 -0
- package/dist/src/record-view/event-handlers/record-view-body-click-handler.js.map +1 -0
- package/dist/src/record-view/event-handlers/record-view-body-keydown-handler.d.ts +7 -0
- package/dist/src/record-view/event-handlers/record-view-body-keydown-handler.js +22 -0
- package/dist/src/record-view/event-handlers/record-view-body-keydown-handler.js.map +1 -0
- package/dist/src/record-view/index.d.ts +2 -0
- package/dist/src/record-view/index.js +3 -0
- package/dist/src/record-view/index.js.map +1 -0
- package/dist/src/record-view/ox-record-creator.d.ts +26 -0
- package/dist/src/record-view/ox-record-creator.js +247 -0
- package/dist/src/record-view/ox-record-creator.js.map +1 -0
- package/dist/src/record-view/record-view-body.d.ts +21 -0
- package/dist/src/record-view/record-view-body.js +252 -0
- package/dist/src/record-view/record-view-body.js.map +1 -0
- package/dist/src/record-view/record-view-handler.d.ts +9 -0
- package/dist/src/record-view/record-view-handler.js +57 -0
- package/dist/src/record-view/record-view-handler.js.map +1 -0
- package/dist/src/record-view/record-view.d.ts +23 -0
- package/dist/src/record-view/record-view.js +117 -0
- package/dist/src/record-view/record-view.js.map +1 -0
- package/dist/src/renderers/index.d.ts +13 -0
- package/dist/src/renderers/index.js +14 -0
- package/dist/src/renderers/index.js.map +1 -0
- package/dist/src/renderers/ox-grist-renderer-boolean.d.ts +2 -0
- package/dist/src/renderers/ox-grist-renderer-boolean.js +39 -0
- package/dist/src/renderers/ox-grist-renderer-boolean.js.map +1 -0
- package/dist/src/renderers/ox-grist-renderer-color.d.ts +2 -0
- package/dist/src/renderers/ox-grist-renderer-color.js +12 -0
- package/dist/src/renderers/ox-grist-renderer-color.js.map +1 -0
- package/dist/src/renderers/ox-grist-renderer-date.d.ts +2 -0
- package/dist/src/renderers/ox-grist-renderer-date.js +53 -0
- package/dist/src/renderers/ox-grist-renderer-date.js.map +1 -0
- package/dist/src/renderers/ox-grist-renderer-file.d.ts +2 -0
- package/dist/src/renderers/ox-grist-renderer-file.js +27 -0
- package/dist/src/renderers/ox-grist-renderer-file.js.map +1 -0
- package/dist/src/renderers/ox-grist-renderer-image.d.ts +2 -0
- package/dist/src/renderers/ox-grist-renderer-image.js +24 -0
- package/dist/src/renderers/ox-grist-renderer-image.js.map +1 -0
- package/dist/src/renderers/ox-grist-renderer-json5.d.ts +2 -0
- package/dist/src/renderers/ox-grist-renderer-json5.js +30 -0
- package/dist/src/renderers/ox-grist-renderer-json5.js.map +1 -0
- package/dist/src/renderers/ox-grist-renderer-link.d.ts +2 -0
- package/dist/src/renderers/ox-grist-renderer-link.js +12 -0
- package/dist/src/renderers/ox-grist-renderer-link.js.map +1 -0
- package/dist/src/renderers/ox-grist-renderer-password.d.ts +2 -0
- package/dist/src/renderers/ox-grist-renderer-password.js +5 -0
- package/dist/src/renderers/ox-grist-renderer-password.js.map +1 -0
- package/dist/src/renderers/ox-grist-renderer-progress.d.ts +5 -0
- package/dist/src/renderers/ox-grist-renderer-progress.js +46 -0
- package/dist/src/renderers/ox-grist-renderer-progress.js.map +1 -0
- package/dist/src/renderers/ox-grist-renderer-select.d.ts +2 -0
- package/dist/src/renderers/ox-grist-renderer-select.js +50 -0
- package/dist/src/renderers/ox-grist-renderer-select.js.map +1 -0
- package/dist/src/renderers/ox-grist-renderer-text.d.ts +2 -0
- package/dist/src/renderers/ox-grist-renderer-text.js +11 -0
- package/dist/src/renderers/ox-grist-renderer-text.js.map +1 -0
- package/dist/src/renderers/ox-grist-renderer-textarea.d.ts +2 -0
- package/dist/src/renderers/ox-grist-renderer-textarea.js +5 -0
- package/dist/src/renderers/ox-grist-renderer-textarea.js.map +1 -0
- package/dist/src/renderers/ox-grist-renderer-tree.d.ts +12 -0
- package/dist/src/renderers/ox-grist-renderer-tree.js +183 -0
- package/dist/src/renderers/ox-grist-renderer-tree.js.map +1 -0
- package/dist/src/renderers/ox-grist-renderer.d.ts +15 -0
- package/dist/src/renderers/ox-grist-renderer.js +48 -0
- package/dist/src/renderers/ox-grist-renderer.js.map +1 -0
- package/dist/src/renderers/registry.d.ts +12 -0
- package/dist/src/renderers/registry.js +70 -0
- package/dist/src/renderers/registry.js.map +1 -0
- package/dist/src/sorters/sorters-control.d.ts +12 -0
- package/dist/src/sorters/sorters-control.js +138 -0
- package/dist/src/sorters/sorters-control.js.map +1 -0
- package/dist/src/types.d.ts +696 -0
- package/dist/src/types.js +23 -0
- package/dist/src/types.js.map +1 -0
- package/dist/src/utils/index.d.ts +2 -0
- package/dist/src/utils/index.js +3 -0
- package/dist/src/utils/index.js.map +1 -0
- package/dist/src/utils/list-param.d.ts +16 -0
- package/dist/src/utils/list-param.js +40 -0
- package/dist/src/utils/list-param.js.map +1 -0
- package/dist/src/utils/supports-passive.d.ts +1 -0
- package/dist/src/utils/supports-passive.js +13 -0
- package/dist/src/utils/supports-passive.js.map +1 -0
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +4 -4
- package/dist/index.d.ts +0 -1
- package/dist/index.js +0 -2
- package/dist/index.js.map +0 -1
- package/index.ts +0 -1
@@ -0,0 +1,221 @@
|
|
1
|
+
import { __decorate } from "tslib";
|
2
|
+
import { css, html, LitElement } from 'lit';
|
3
|
+
import { customElement, property } from 'lit/decorators.js';
|
4
|
+
import throttle from 'lodash-es/throttle.js';
|
5
|
+
import { ZERO_CONFIG, ZERO_DATA } from '../configure/zero-config.js';
|
6
|
+
// import { supportsPassive } from '../utils/index.js'
|
7
|
+
let DataReportHeader = class DataReportHeader extends LitElement {
|
8
|
+
constructor() {
|
9
|
+
super(...arguments);
|
10
|
+
this.config = ZERO_CONFIG;
|
11
|
+
this.columns = [];
|
12
|
+
this.data = ZERO_DATA;
|
13
|
+
}
|
14
|
+
onWheelEvent(e) {
|
15
|
+
if (this.scrollWidth > this.clientWidth) {
|
16
|
+
var delta = Math.max(-1, Math.min(1, e.deltaY || 0));
|
17
|
+
this.scrollLeft = Math.max(0, this.scrollLeft - delta * 40);
|
18
|
+
var maxScrollLeft = this.scrollWidth - this.clientWidth;
|
19
|
+
var atStart = this.scrollLeft === 0;
|
20
|
+
var atEnd = this.scrollLeft === maxScrollLeft;
|
21
|
+
// 스크롤이 맨 앞으로 와 있는 상태에서 휠을 올리는 경우 또는
|
22
|
+
// 스크롤이 맨 끝으로 가 있는 상태에서 휠을 내리는 경우에만 디폴트 동작 허용
|
23
|
+
if ((atStart && delta > 0) || (atEnd && delta < 0)) {
|
24
|
+
return true;
|
25
|
+
}
|
26
|
+
e.preventDefault();
|
27
|
+
}
|
28
|
+
}
|
29
|
+
firstUpdated() {
|
30
|
+
this.addEventListener('wheel', this.onWheelEvent.bind(this));
|
31
|
+
}
|
32
|
+
async updated(changed) {
|
33
|
+
if (changed.has('config')) {
|
34
|
+
this._sorters = this.config.sorters || [];
|
35
|
+
}
|
36
|
+
}
|
37
|
+
render() {
|
38
|
+
var columns = this.columns || [];
|
39
|
+
return html `
|
40
|
+
${columns.map((column, idx) => !column.hidden
|
41
|
+
? html `
|
42
|
+
<div @dragstart=${(e) => this._dragStart(e, idx)}>
|
43
|
+
<span titler @click=${(e) => this._changeSort(column)}>${this._renderHeader(column)} </span>
|
44
|
+
|
45
|
+
${column.sortable
|
46
|
+
? html `
|
47
|
+
<span sorter @click=${(e) => this._changeSort(column)}>
|
48
|
+
${this._renderSortHeader(column)}
|
49
|
+
</span>
|
50
|
+
`
|
51
|
+
: html ``}
|
52
|
+
${column.resizable !== false ? html ` <span splitter draggable="true"> </span> ` : html ``}
|
53
|
+
</div>
|
54
|
+
`
|
55
|
+
: html ``)}
|
56
|
+
|
57
|
+
<div></div>
|
58
|
+
`;
|
59
|
+
}
|
60
|
+
_renderHeader(column) {
|
61
|
+
var { renderer } = column.header || {};
|
62
|
+
var title = renderer.call(this, column);
|
63
|
+
return html ` ${title} `;
|
64
|
+
}
|
65
|
+
_renderSortHeader(column) {
|
66
|
+
if (column.hidden) {
|
67
|
+
return html ``;
|
68
|
+
}
|
69
|
+
var sorters = this._sorters || [];
|
70
|
+
var sorter = sorters.find(sorter => column.type !== 'gutter' && column.name == sorter.name);
|
71
|
+
if (!sorter) {
|
72
|
+
return html ``;
|
73
|
+
}
|
74
|
+
if (sorters.length > 1) {
|
75
|
+
var rank = sorters.indexOf(sorter) + 1;
|
76
|
+
return sorter.desc ? html ` ▼<sub>${rank}</sub> ` : html ` ▲<sub>${rank}</sub> `;
|
77
|
+
}
|
78
|
+
else {
|
79
|
+
return sorter.desc ? html ` ▼ ` : html ` ▲ `;
|
80
|
+
}
|
81
|
+
}
|
82
|
+
_changeSort(column) {
|
83
|
+
if (!column.sortable) {
|
84
|
+
return;
|
85
|
+
}
|
86
|
+
var sorters = [...(this._sorters || [])];
|
87
|
+
var idx = sorters.findIndex(sorter => sorter.name == column.name);
|
88
|
+
if (idx !== -1) {
|
89
|
+
let sorter = sorters[idx];
|
90
|
+
if (sorter.desc) {
|
91
|
+
sorters.splice(idx, 1);
|
92
|
+
}
|
93
|
+
else {
|
94
|
+
sorter.desc = true;
|
95
|
+
}
|
96
|
+
}
|
97
|
+
else {
|
98
|
+
var sorter = {
|
99
|
+
name: column.name
|
100
|
+
};
|
101
|
+
sorters.push(sorter);
|
102
|
+
}
|
103
|
+
this._sorters = sorters;
|
104
|
+
this.dispatchEvent(new CustomEvent('fetch-params-change', {
|
105
|
+
bubbles: true,
|
106
|
+
composed: true,
|
107
|
+
detail: {
|
108
|
+
sorters: this._sorters,
|
109
|
+
from: 'data-report-header'
|
110
|
+
}
|
111
|
+
}));
|
112
|
+
}
|
113
|
+
_notifyWidthChange(idx, width) {
|
114
|
+
if (!this.throttledNotifier) {
|
115
|
+
this.throttledNotifier = throttle((idx, width) => {
|
116
|
+
this.dispatchEvent(new CustomEvent('column-width-change', {
|
117
|
+
bubbles: true,
|
118
|
+
composed: true,
|
119
|
+
detail: {
|
120
|
+
idx,
|
121
|
+
width
|
122
|
+
}
|
123
|
+
}));
|
124
|
+
}, 100);
|
125
|
+
}
|
126
|
+
this.throttledNotifier(idx, width);
|
127
|
+
}
|
128
|
+
_dragStart(e, idx) {
|
129
|
+
var target = e.currentTarget;
|
130
|
+
var startX = e.offsetX;
|
131
|
+
var dragHandler = ((e) => {
|
132
|
+
let column = this.columns[idx];
|
133
|
+
let width = Math.max(0, Number(column.width) + e.offsetX - startX);
|
134
|
+
if (width == 0) {
|
135
|
+
/* CLARIFY-ME 왜 마지막 이벤트의 offsetX로 음수 값이 오는가 */
|
136
|
+
return;
|
137
|
+
}
|
138
|
+
this._notifyWidthChange(idx, width);
|
139
|
+
}).bind(this);
|
140
|
+
var dragEndHandler = ((e) => {
|
141
|
+
target.removeEventListener('drag', dragHandler);
|
142
|
+
target.removeEventListener('dragend', dragEndHandler);
|
143
|
+
dragHandler(e);
|
144
|
+
}).bind(this);
|
145
|
+
target.addEventListener('drag', dragHandler);
|
146
|
+
target.addEventListener('dragend', dragEndHandler);
|
147
|
+
}
|
148
|
+
};
|
149
|
+
DataReportHeader.styles = [
|
150
|
+
css `
|
151
|
+
:host {
|
152
|
+
display: grid;
|
153
|
+
grid-template-columns: var(--report-template-columns);
|
154
|
+
|
155
|
+
overflow: hidden;
|
156
|
+
}
|
157
|
+
|
158
|
+
div {
|
159
|
+
display: flex;
|
160
|
+
|
161
|
+
white-space: nowrap;
|
162
|
+
overflow: hidden;
|
163
|
+
background-color: var(--report-header-background-color, gray);
|
164
|
+
border: 1px solid var(--report-header-border-color);
|
165
|
+
border-width: 1px 1px 1px 0;
|
166
|
+
padding: var(--report-header-padding);
|
167
|
+
|
168
|
+
text-overflow: ellipsis;
|
169
|
+
text-align: center;
|
170
|
+
font-size: var(--report-header-fontsize, 1em);
|
171
|
+
color: var(--report-header-color);
|
172
|
+
}
|
173
|
+
|
174
|
+
span {
|
175
|
+
white-space: nowrap;
|
176
|
+
overflow: hidden;
|
177
|
+
|
178
|
+
text-align: center;
|
179
|
+
}
|
180
|
+
|
181
|
+
span[titler] {
|
182
|
+
flex: 1;
|
183
|
+
text-overflow: ellipsis;
|
184
|
+
font: var(--report-header-font);
|
185
|
+
color: var(--report-header-color);
|
186
|
+
text-transform: capitalize;
|
187
|
+
}
|
188
|
+
|
189
|
+
span[sorter] {
|
190
|
+
padding: 0;
|
191
|
+
border: 0;
|
192
|
+
font-size: 10px;
|
193
|
+
}
|
194
|
+
|
195
|
+
span[splitter] {
|
196
|
+
cursor: col-resize;
|
197
|
+
}
|
198
|
+
|
199
|
+
@media print {
|
200
|
+
:host {
|
201
|
+
grid-template-columns: var(--report-template-print-columns);
|
202
|
+
}
|
203
|
+
}
|
204
|
+
`
|
205
|
+
];
|
206
|
+
__decorate([
|
207
|
+
property({ type: Object })
|
208
|
+
], DataReportHeader.prototype, "config", void 0);
|
209
|
+
__decorate([
|
210
|
+
property({ type: Array })
|
211
|
+
], DataReportHeader.prototype, "columns", void 0);
|
212
|
+
__decorate([
|
213
|
+
property({ type: Object })
|
214
|
+
], DataReportHeader.prototype, "data", void 0);
|
215
|
+
__decorate([
|
216
|
+
property({ type: Array })
|
217
|
+
], DataReportHeader.prototype, "_sorters", void 0);
|
218
|
+
DataReportHeader = __decorate([
|
219
|
+
customElement('ox-report-header')
|
220
|
+
], DataReportHeader);
|
221
|
+
//# sourceMappingURL=data-report-header.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"data-report-header.js","sourceRoot":"","sources":["../../../src/data-report/data-report-header.ts"],"names":[],"mappings":"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","sourcesContent":["import { css, html, LitElement, PropertyValues } from 'lit'\nimport { customElement, property } from 'lit/decorators.js'\nimport throttle from 'lodash-es/throttle.js'\n\nimport { ZERO_CONFIG, ZERO_DATA } from '../configure/zero-config.js'\nimport { ColumnConfig, GristConfig, GristData, SortersConfig } from '../types.js'\n// import { supportsPassive } from '../utils/index.js'\n\n@customElement('ox-report-header')\nclass DataReportHeader extends LitElement {\n static styles = [\n css`\n :host {\n display: grid;\n grid-template-columns: var(--report-template-columns);\n\n overflow: hidden;\n }\n\n div {\n display: flex;\n\n white-space: nowrap;\n overflow: hidden;\n background-color: var(--report-header-background-color, gray);\n border: 1px solid var(--report-header-border-color);\n border-width: 1px 1px 1px 0;\n padding: var(--report-header-padding);\n\n text-overflow: ellipsis;\n text-align: center;\n font-size: var(--report-header-fontsize, 1em);\n color: var(--report-header-color);\n }\n\n span {\n white-space: nowrap;\n overflow: hidden;\n\n text-align: center;\n }\n\n span[titler] {\n flex: 1;\n text-overflow: ellipsis;\n font: var(--report-header-font);\n color: var(--report-header-color);\n text-transform: capitalize;\n }\n\n span[sorter] {\n padding: 0;\n border: 0;\n font-size: 10px;\n }\n\n span[splitter] {\n cursor: col-resize;\n }\n\n @media print {\n :host {\n grid-template-columns: var(--report-template-print-columns);\n }\n }\n `\n ]\n\n @property({ type: Object }) config: GristConfig = ZERO_CONFIG\n @property({ type: Array }) columns: ColumnConfig[] = []\n @property({ type: Object }) data: GristData = ZERO_DATA\n @property({ type: Array }) private _sorters?: SortersConfig\n\n private throttledNotifier?: (idx: number, width: number) => void\n\n onWheelEvent(e: WheelEvent) {\n if (this.scrollWidth > this.clientWidth) {\n var delta = Math.max(-1, Math.min(1, e.deltaY || 0))\n this.scrollLeft = Math.max(0, this.scrollLeft - delta * 40)\n\n var maxScrollLeft = this.scrollWidth - this.clientWidth\n\n var atStart = this.scrollLeft === 0\n var atEnd = this.scrollLeft === maxScrollLeft\n\n // 스크롤이 맨 앞으로 와 있는 상태에서 휠을 올리는 경우 또는\n // 스크롤이 맨 끝으로 가 있는 상태에서 휠을 내리는 경우에만 디폴트 동작 허용\n if ((atStart && delta > 0) || (atEnd && delta < 0)) {\n return true\n }\n\n e.preventDefault()\n }\n }\n\n firstUpdated() {\n this.addEventListener('wheel', this.onWheelEvent.bind(this))\n }\n\n async updated(changed: PropertyValues<this>) {\n if (changed.has('config')) {\n this._sorters = this.config.sorters || []\n }\n }\n\n render() {\n var columns = this.columns || []\n\n return html`\n ${columns.map((column, idx) =>\n !column.hidden\n ? html`\n <div @dragstart=${(e: MouseEvent) => this._dragStart(e, idx)}>\n <span titler @click=${(e: Event) => this._changeSort(column)}>${this._renderHeader(column)} </span>\n\n ${column.sortable\n ? html`\n <span sorter @click=${(e: Event) => this._changeSort(column)}>\n ${this._renderSortHeader(column)}\n </span>\n `\n : html``}\n ${column.resizable !== false ? html` <span splitter draggable=\"true\"> </span> ` : html``}\n </div>\n `\n : html``\n )}\n\n <div></div>\n `\n }\n\n _renderHeader(column: ColumnConfig) {\n var { renderer } = column.header || {}\n var title = renderer.call(this, column)\n\n return html` ${title} `\n }\n\n _renderSortHeader(column: ColumnConfig) {\n if (column.hidden) {\n return html``\n }\n\n var sorters = this._sorters || []\n\n var sorter = sorters.find(sorter => column.type !== 'gutter' && column.name == sorter.name)\n if (!sorter) {\n return html``\n }\n\n if (sorters.length > 1) {\n var rank = sorters.indexOf(sorter) + 1\n return sorter.desc ? html` ▼<sub>${rank}</sub> ` : html` ▲<sub>${rank}</sub> `\n } else {\n return sorter.desc ? html` ▼ ` : html` ▲ `\n }\n }\n\n _changeSort(column: ColumnConfig) {\n if (!column.sortable) {\n return\n }\n\n var sorters = [...(this._sorters || [])]\n\n var idx = sorters.findIndex(sorter => sorter.name == column.name)\n if (idx !== -1) {\n let sorter = sorters[idx]\n if (sorter.desc) {\n sorters.splice(idx, 1)\n } else {\n sorter.desc = true\n }\n } else {\n var sorter = {\n name: column.name\n }\n\n sorters.push(sorter)\n }\n\n this._sorters = sorters\n\n this.dispatchEvent(\n new CustomEvent('fetch-params-change', {\n bubbles: true,\n composed: true,\n detail: {\n sorters: this._sorters,\n from: 'data-report-header'\n }\n })\n )\n }\n\n _notifyWidthChange(idx: number, width: number) {\n if (!this.throttledNotifier) {\n this.throttledNotifier = throttle((idx, width) => {\n this.dispatchEvent(\n new CustomEvent('column-width-change', {\n bubbles: true,\n composed: true,\n detail: {\n idx,\n width\n }\n })\n )\n }, 100)\n }\n\n this.throttledNotifier(idx, width)\n }\n\n _dragStart(e: MouseEvent, idx: number) {\n var target = e.currentTarget as HTMLElement\n var startX = e.offsetX\n\n var dragHandler = ((e: MouseEvent) => {\n let column = this.columns[idx]\n\n let width = Math.max(0, Number(column.width) + e.offsetX - startX)\n if (width == 0) {\n /* CLARIFY-ME 왜 마지막 이벤트의 offsetX로 음수 값이 오는가 */\n return\n }\n\n this._notifyWidthChange(idx, width)\n }).bind(this)\n\n var dragEndHandler = ((e: MouseEvent) => {\n target.removeEventListener('drag', dragHandler)\n target.removeEventListener('dragend', dragEndHandler)\n\n dragHandler(e)\n }).bind(this)\n\n target.addEventListener('drag', dragHandler)\n target.addEventListener('dragend', dragEndHandler)\n }\n}\n"]}
|
@@ -0,0 +1,33 @@
|
|
1
|
+
/**
|
2
|
+
* ox-report-body 의 click handler
|
3
|
+
*/
|
4
|
+
export function dataReportBodyClickHandler(e) {
|
5
|
+
e.stopPropagation();
|
6
|
+
var target = e.target;
|
7
|
+
var { column, record, rowIndex, columnIndex } = target;
|
8
|
+
if (!column) {
|
9
|
+
/* 여백 컬럼이 클릭된 경우 */
|
10
|
+
return;
|
11
|
+
}
|
12
|
+
if (!isNaN(rowIndex) && !isNaN(columnIndex)) {
|
13
|
+
if (!this.focused || rowIndex !== this.focused.row || columnIndex !== this.focused.column) {
|
14
|
+
this.focused = {
|
15
|
+
row: rowIndex,
|
16
|
+
column: columnIndex
|
17
|
+
};
|
18
|
+
}
|
19
|
+
else {
|
20
|
+
this.requestUpdate();
|
21
|
+
}
|
22
|
+
}
|
23
|
+
else {
|
24
|
+
console.error('should not be here.');
|
25
|
+
}
|
26
|
+
/* do column click handler */
|
27
|
+
var { click } = column.handlers;
|
28
|
+
click && click(this.columns, this.data, column, record, rowIndex, target);
|
29
|
+
/* do rows click handler */
|
30
|
+
var { click: rowsClick } = this.config.rows.handlers;
|
31
|
+
rowsClick && rowsClick(this.columns, this.data, column, record, rowIndex, target);
|
32
|
+
}
|
33
|
+
//# sourceMappingURL=data-report-body-click-handler.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"data-report-body-click-handler.js","sourceRoot":"","sources":["../../../../src/data-report/event-handlers/data-report-body-click-handler.ts"],"names":[],"mappings":"AAGA;;GAEG;AACH,MAAM,UAAU,0BAA0B,CAAuB,CAAQ;IACvE,CAAC,CAAC,eAAe,EAAE,CAAA;IAEnB,IAAI,MAAM,GAAG,CAAC,CAAC,MAAyB,CAAA;IACxC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,WAAW,EAAE,GAAG,MAAM,CAAA;IAEtD,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,mBAAmB;QACnB,OAAM;IACR,CAAC;IAED,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,EAAE,CAAC;QAC5C,IAAI,CAAC,IAAI,CAAC,OAAO,IAAI,QAAQ,KAAK,IAAI,CAAC,OAAO,CAAC,GAAG,IAAI,WAAW,KAAK,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;YAC1F,IAAI,CAAC,OAAO,GAAG;gBACb,GAAG,EAAE,QAAQ;gBACb,MAAM,EAAE,WAAW;aACpB,CAAA;QACH,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,aAAa,EAAE,CAAA;QACtB,CAAC;IACH,CAAC;SAAM,CAAC;QACN,OAAO,CAAC,KAAK,CAAC,qBAAqB,CAAC,CAAA;IACtC,CAAC;IAED,6BAA6B;IAC7B,IAAI,EAAE,KAAK,EAAE,GAAG,MAAM,CAAC,QAAQ,CAAA;IAC/B,KAAK,IAAI,KAAK,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAA;IAEzE,2BAA2B;IAC3B,IAAI,EAAE,KAAK,EAAE,SAAS,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAA;IACpD,SAAS,IAAI,SAAS,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAA;AACnF,CAAC","sourcesContent":["import { DataReportBody } from '../data-report-body.js'\nimport { DataReportField } from '../data-report-field.js'\n\n/**\n * ox-report-body 의 click handler\n */\nexport function dataReportBodyClickHandler(this: DataReportBody, e: Event) {\n e.stopPropagation()\n\n var target = e.target as DataReportField\n var { column, record, rowIndex, columnIndex } = target\n\n if (!column) {\n /* 여백 컬럼이 클릭된 경우 */\n return\n }\n\n if (!isNaN(rowIndex) && !isNaN(columnIndex)) {\n if (!this.focused || rowIndex !== this.focused.row || columnIndex !== this.focused.column) {\n this.focused = {\n row: rowIndex,\n column: columnIndex\n }\n } else {\n this.requestUpdate()\n }\n } else {\n console.error('should not be here.')\n }\n\n /* do column click handler */\n var { click } = column.handlers\n click && click(this.columns, this.data, column, record, rowIndex, target)\n\n /* do rows click handler */\n var { click: rowsClick } = this.config.rows.handlers\n rowsClick && rowsClick(this.columns, this.data, column, record, rowIndex, target)\n}\n"]}
|
@@ -0,0 +1,19 @@
|
|
1
|
+
/**
|
2
|
+
* ox-report-body 의 dblclick handler
|
3
|
+
*/
|
4
|
+
export async function dataReportBodyDblclickHandler(e) {
|
5
|
+
e.stopPropagation();
|
6
|
+
var target = e.target;
|
7
|
+
var { record, rowIndex, column } = target;
|
8
|
+
if (!column) {
|
9
|
+
/* 여백 컬럼이 클릭된 경우 */
|
10
|
+
return;
|
11
|
+
}
|
12
|
+
/* do column dblclick handler */
|
13
|
+
var { dblclick } = column.handlers;
|
14
|
+
dblclick && dblclick(this.columns, this.data, column, record, rowIndex, target);
|
15
|
+
/* do rows dblclick handler */
|
16
|
+
var { dblclick: rowsDblclick } = this.config.rows.handlers;
|
17
|
+
rowsDblclick && rowsDblclick(this.columns, this.data, column, record, rowIndex, target);
|
18
|
+
}
|
19
|
+
//# sourceMappingURL=data-report-body-dblclick-handler.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"data-report-body-dblclick-handler.js","sourceRoot":"","sources":["../../../../src/data-report/event-handlers/data-report-body-dblclick-handler.ts"],"names":[],"mappings":"AAGA;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,6BAA6B,CAAuB,CAAQ;IAChF,CAAC,CAAC,eAAe,EAAE,CAAA;IAEnB,IAAI,MAAM,GAAG,CAAC,CAAC,MAAyB,CAAA;IACxC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,MAAM,CAAA;IAEzC,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,mBAAmB;QACnB,OAAM;IACR,CAAC;IAED,gCAAgC;IAChC,IAAI,EAAE,QAAQ,EAAE,GAAG,MAAM,CAAC,QAAQ,CAAA;IAClC,QAAQ,IAAI,QAAQ,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAA;IAE/E,8BAA8B;IAC9B,IAAI,EAAE,QAAQ,EAAE,YAAY,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAA;IAC1D,YAAY,IAAI,YAAY,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAA;AACzF,CAAC","sourcesContent":["import { DataReportBody } from '../data-report-body.js'\nimport { DataReportField } from '../data-report-field.js'\n\n/**\n * ox-report-body 의 dblclick handler\n */\nexport async function dataReportBodyDblclickHandler(this: DataReportBody, e: Event) {\n e.stopPropagation()\n\n var target = e.target as DataReportField\n var { record, rowIndex, column } = target\n\n if (!column) {\n /* 여백 컬럼이 클릭된 경우 */\n return\n }\n\n /* do column dblclick handler */\n var { dblclick } = column.handlers\n dblclick && dblclick(this.columns, this.data, column, record, rowIndex, target)\n\n /* do rows dblclick handler */\n var { dblclick: rowsDblclick } = this.config.rows.handlers\n rowsDblclick && rowsDblclick(this.columns, this.data, column, record, rowIndex, target)\n}\n"]}
|
@@ -0,0 +1,58 @@
|
|
1
|
+
/**
|
2
|
+
* ox-report-body 의 keydown handler
|
3
|
+
*/
|
4
|
+
export function dataReportBodyKeydownHandler(e) {
|
5
|
+
var _a;
|
6
|
+
// arrow-key
|
7
|
+
const key = e.key;
|
8
|
+
var { row = 0, column = 0 } = this.focused || {};
|
9
|
+
var { records = [] } = this.data || {};
|
10
|
+
var maxrow = ((_a = this.config.rows) === null || _a === void 0 ? void 0 : _a.appendable) ? records.length : records.length - 1;
|
11
|
+
var maxcolumn = (this.columns || []).filter(column => !column.hidden).length - 1;
|
12
|
+
switch (key) {
|
13
|
+
case 'Up':
|
14
|
+
case 'ArrowUp':
|
15
|
+
row = Math.max(0, row - 1);
|
16
|
+
break;
|
17
|
+
case 'Down':
|
18
|
+
case 'ArrowDown':
|
19
|
+
row = Math.min(maxrow, row + 1);
|
20
|
+
break;
|
21
|
+
case 'Enter':
|
22
|
+
if (maxcolumn > column) {
|
23
|
+
column++;
|
24
|
+
}
|
25
|
+
else if (maxrow > row) {
|
26
|
+
row++;
|
27
|
+
}
|
28
|
+
break;
|
29
|
+
case 'Left':
|
30
|
+
case 'ArrowLeft':
|
31
|
+
case 'Backspace':
|
32
|
+
column = Math.max(0, column - 1);
|
33
|
+
break;
|
34
|
+
case 'Right':
|
35
|
+
case 'ArrowRight':
|
36
|
+
case 'Tab':
|
37
|
+
column = Math.min(maxcolumn, column + 1);
|
38
|
+
break;
|
39
|
+
case 'PageUp':
|
40
|
+
/* TODO 페이지당 레코드의 수를 계산해서 증감시켜야 한다. */
|
41
|
+
row = Math.max(0, row - 10);
|
42
|
+
break;
|
43
|
+
case 'PageDown':
|
44
|
+
row = Math.min(maxrow, row + 10);
|
45
|
+
break;
|
46
|
+
case 'Esc':
|
47
|
+
case 'Escape':
|
48
|
+
return;
|
49
|
+
default:
|
50
|
+
return;
|
51
|
+
}
|
52
|
+
if (!this.focused || this.focused.row !== row || this.focused.column !== column) {
|
53
|
+
this.focused = { row, column };
|
54
|
+
}
|
55
|
+
/* arrow key에 의한 scrollbar의 자동 움직임을 하지 못하도록 한다. */
|
56
|
+
e.preventDefault();
|
57
|
+
}
|
58
|
+
//# sourceMappingURL=data-report-body-keydown-handler.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"data-report-body-keydown-handler.js","sourceRoot":"","sources":["../../../../src/data-report/event-handlers/data-report-body-keydown-handler.ts"],"names":[],"mappings":"AAEA;;GAEG;AACH,MAAM,UAAU,4BAA4B,CAAuB,CAAgB;;IACjF,YAAY;IACZ,MAAM,GAAG,GAAG,CAAC,CAAC,GAAG,CAAA;IACjB,IAAI,EAAE,GAAG,GAAG,CAAC,EAAE,MAAM,GAAG,CAAC,EAAE,GAAG,IAAI,CAAC,OAAO,IAAI,EAAE,CAAA;IAChD,IAAI,EAAE,OAAO,GAAG,EAAE,EAAE,GAAG,IAAI,CAAC,IAAI,IAAI,EAAE,CAAA;IACtC,IAAI,MAAM,GAAG,CAAA,MAAA,IAAI,CAAC,MAAM,CAAC,IAAI,0CAAE,UAAU,EAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAA;IAC/E,IAAI,SAAS,GAAG,CAAC,IAAI,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,MAAM,GAAG,CAAC,CAAA;IAEhF,QAAQ,GAAG,EAAE,CAAC;QACZ,KAAK,IAAI,CAAC;QACV,KAAK,SAAS;YACZ,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,GAAG,CAAC,CAAC,CAAA;YAC1B,MAAK;QAEP,KAAK,MAAM,CAAC;QACZ,KAAK,WAAW;YACd,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,GAAG,CAAC,CAAC,CAAA;YAC/B,MAAK;QAEP,KAAK,OAAO;YACV,IAAI,SAAS,GAAG,MAAM,EAAE,CAAC;gBACvB,MAAM,EAAE,CAAA;YACV,CAAC;iBAAM,IAAI,MAAM,GAAG,GAAG,EAAE,CAAC;gBACxB,GAAG,EAAE,CAAA;YACP,CAAC;YACD,MAAK;QAEP,KAAK,MAAM,CAAC;QACZ,KAAK,WAAW,CAAC;QACjB,KAAK,WAAW;YACd,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,GAAG,CAAC,CAAC,CAAA;YAChC,MAAK;QAEP,KAAK,OAAO,CAAC;QACb,KAAK,YAAY,CAAC;QAClB,KAAK,KAAK;YACR,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,SAAS,EAAE,MAAM,GAAG,CAAC,CAAC,CAAA;YACxC,MAAK;QAEP,KAAK,QAAQ;YACX,sCAAsC;YACtC,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,GAAG,EAAE,CAAC,CAAA;YAC3B,MAAK;QAEP,KAAK,UAAU;YACb,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,GAAG,EAAE,CAAC,CAAA;YAChC,MAAK;QAEP,KAAK,KAAK,CAAC;QACX,KAAK,QAAQ;YACX,OAAM;QAER;YACE,OAAM;IACV,CAAC;IAED,IAAI,CAAC,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,OAAO,CAAC,GAAG,KAAK,GAAG,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,KAAK,MAAM,EAAE,CAAC;QAChF,IAAI,CAAC,OAAO,GAAG,EAAE,GAAG,EAAE,MAAM,EAAE,CAAA;IAChC,CAAC;IAED,kDAAkD;IAClD,CAAC,CAAC,cAAc,EAAE,CAAA;AACpB,CAAC","sourcesContent":["import { DataReportBody } from '../data-report-body.js'\n\n/**\n * ox-report-body 의 keydown handler\n */\nexport function dataReportBodyKeydownHandler(this: DataReportBody, e: KeyboardEvent): void {\n // arrow-key\n const key = e.key\n var { row = 0, column = 0 } = this.focused || {}\n var { records = [] } = this.data || {}\n var maxrow = this.config.rows?.appendable ? records.length : records.length - 1\n var maxcolumn = (this.columns || []).filter(column => !column.hidden).length - 1\n\n switch (key) {\n case 'Up':\n case 'ArrowUp':\n row = Math.max(0, row - 1)\n break\n\n case 'Down':\n case 'ArrowDown':\n row = Math.min(maxrow, row + 1)\n break\n\n case 'Enter':\n if (maxcolumn > column) {\n column++\n } else if (maxrow > row) {\n row++\n }\n break\n\n case 'Left':\n case 'ArrowLeft':\n case 'Backspace':\n column = Math.max(0, column - 1)\n break\n\n case 'Right':\n case 'ArrowRight':\n case 'Tab':\n column = Math.min(maxcolumn, column + 1)\n break\n\n case 'PageUp':\n /* TODO 페이지당 레코드의 수를 계산해서 증감시켜야 한다. */\n row = Math.max(0, row - 10)\n break\n\n case 'PageDown':\n row = Math.min(maxrow, row + 10)\n break\n\n case 'Esc':\n case 'Escape':\n return\n\n default:\n return\n }\n\n if (!this.focused || this.focused.row !== row || this.focused.column !== column) {\n this.focused = { row, column }\n }\n\n /* arrow key에 의한 scrollbar의 자동 움직임을 하지 못하도록 한다. */\n e.preventDefault()\n}\n"]}
|
@@ -0,0 +1,44 @@
|
|
1
|
+
import './data-report/data-report-component.js';
|
2
|
+
import { LitElement, PropertyValues } from 'lit';
|
3
|
+
import { GristConfig, GristData, GristRecord } from './types.js';
|
4
|
+
import { DataConsumer } from './data-consumer.js';
|
5
|
+
import { DataReportComponent } from './data-report/data-report-component.js';
|
6
|
+
export declare class DataReport extends LitElement implements DataConsumer {
|
7
|
+
static styles: import("lit").CSSResult[];
|
8
|
+
config: any;
|
9
|
+
data: GristData;
|
10
|
+
fetchHandler: any;
|
11
|
+
fetchOptions: any;
|
12
|
+
autoFetch: boolean;
|
13
|
+
_data: GristData;
|
14
|
+
_config: GristConfig;
|
15
|
+
private _showSpinner;
|
16
|
+
private dataProvider?;
|
17
|
+
private pulltorefreshHandle?;
|
18
|
+
report: DataReportComponent;
|
19
|
+
private wrap;
|
20
|
+
get mode(): 'REPORT';
|
21
|
+
connectedCallback(): void;
|
22
|
+
disconnectedCallback(): void;
|
23
|
+
private resetPullToRefresh;
|
24
|
+
private setPullToRefresh;
|
25
|
+
firstUpdated(): Promise<void>;
|
26
|
+
render(): import("lit-html").TemplateResult<1>;
|
27
|
+
fetch(reset?: boolean): Promise<void>;
|
28
|
+
updated(changes: PropertyValues<this>): Promise<void>;
|
29
|
+
get dirtyData(): any;
|
30
|
+
showSpinner(): void;
|
31
|
+
hideSpinner(): void;
|
32
|
+
focus(): void;
|
33
|
+
/**
|
34
|
+
* Forced internal data to be reflected on the screen
|
35
|
+
* Data changing through a normal method is automatically reflected on the screen, so it is a method that does not need to be used in general.
|
36
|
+
Therefore, it will be deprecated.
|
37
|
+
* @deprecated
|
38
|
+
* @method
|
39
|
+
*/
|
40
|
+
refresh(): void;
|
41
|
+
reset(): void;
|
42
|
+
sortByGroups(sortedRecords: GristRecord[]): any[];
|
43
|
+
checkDirties(): void;
|
44
|
+
}
|