@trudb/tru-common-lib 0.0.726 → 0.0.728
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/{esm2020 → esm2022}/lib/assets/tru-icon-module.mjs +32 -32
- package/{esm2020 → esm2022}/lib/assets/tru-search-icon-module.mjs +36 -36
- package/{esm2020 → esm2022}/lib/base-classes/tru-component-config-base.mjs +3 -3
- package/{esm2020 → esm2022}/lib/base-classes/tru-control-component-config-base.mjs +3 -3
- package/{esm2020 → esm2022}/lib/base-classes/tru-edit-control-base.mjs +17 -17
- package/esm2022/lib/base-classes/tru-edit-control-config-base.mjs +6 -0
- package/{esm2020 → esm2022}/lib/base-classes/tru-edit-parent-control-config-base.mjs +3 -3
- package/{esm2020 → esm2022}/lib/base-classes/tru-edit-pkey-control-config-base.mjs +3 -3
- package/esm2022/lib/base-classes/tru-entity-base.mjs +14 -0
- package/esm2022/lib/base-classes/tru-list-control-config-base.mjs +6 -0
- package/{esm2020 → esm2022}/lib/base-classes/tru-property-config-base.mjs +14 -15
- package/{esm2020 → esm2022}/lib/base-classes/tru-search-config-base.mjs +3 -3
- package/esm2022/lib/base-classes/tru-search-control-base.mjs +45 -0
- package/esm2022/lib/base-classes/tru-search-control-config-base.mjs +5 -0
- package/esm2022/lib/base-classes/tru-search-control-range-base.mjs +45 -0
- package/esm2022/lib/base-classes/tru-table-config-base.mjs +12 -0
- package/{esm2020 → esm2022}/lib/base-views/detail/tru-detail-view-base-module.mjs +19 -19
- package/esm2022/lib/base-views/detail/tru-detail-view-base.mjs +83 -0
- package/esm2022/lib/base-views/search/services/tru-search-view-control-event-handler.mjs +25 -0
- package/esm2022/lib/base-views/search/services/tru-search-view-event-handler.mjs +25 -0
- package/{esm2020 → esm2022}/lib/base-views/search/tru-search-view-base-module.mjs +19 -19
- package/esm2022/lib/base-views/search/tru-search-view-base.mjs +68 -0
- package/{esm2020 → esm2022}/lib/base-views/search-result/tru-search-result-view-base-module.mjs +19 -19
- package/esm2022/lib/base-views/search-result/tru-search-result-view-base.mjs +54 -0
- package/{esm2020 → esm2022}/lib/classes/tru-choice.mjs +2 -2
- package/esm2022/lib/classes/tru-context-filter-choice.mjs +11 -0
- package/esm2022/lib/classes/tru-context-filter.mjs +16 -0
- package/esm2022/lib/classes/tru-data-change-parser.mjs +287 -0
- package/esm2022/lib/classes/tru-data-change.mjs +5 -0
- package/{esm2020 → esm2022}/lib/classes/tru-formula-eval.mjs +156 -156
- package/esm2022/lib/classes/tru-merge-data-set.mjs +11 -0
- package/esm2022/lib/classes/tru-merge-data.mjs +20 -0
- package/{esm2020 → esm2022}/lib/classes/tru-name-value.mjs +2 -2
- package/esm2022/lib/classes/tru-predicate.mjs +47 -0
- package/{esm2020 → esm2022}/lib/classes/tru-property-config-cloud-file.mjs +4 -4
- package/esm2022/lib/classes/tru-property-config-date.mjs +7 -0
- package/esm2022/lib/classes/tru-property-config-decimal.mjs +9 -0
- package/{esm2020 → esm2022}/lib/classes/tru-property-config-file.mjs +6 -8
- package/esm2022/lib/classes/tru-property-config-foreign-key.mjs +8 -0
- package/esm2022/lib/classes/tru-property-config-integer.mjs +7 -0
- package/esm2022/lib/classes/tru-property-config-password.mjs +6 -0
- package/esm2022/lib/classes/tru-property-config-percentage.mjs +7 -0
- package/esm2022/lib/classes/tru-property-config-scientific.mjs +7 -0
- package/{esm2020 → esm2022}/lib/classes/tru-property-config-text-choices.mjs +6 -8
- package/{esm2020 → esm2022}/lib/classes/tru-property-config-text.mjs +8 -10
- package/{esm2020 → esm2022}/lib/classes/tru-property-config-usa-address.mjs +6 -8
- package/{esm2020 → esm2022}/lib/classes/tru-property-config-zip-code.mjs +6 -8
- package/esm2022/lib/classes/tru-query-predicate-manager.mjs +49 -0
- package/{esm2020 → esm2022}/lib/components/confirm-dialog/tru-confirm-dialog-module.mjs +20 -20
- package/esm2022/lib/components/confirm-dialog/tru-confirm-dialog.mjs +59 -0
- package/{esm2020 → esm2022}/lib/components/data-grid/classes/tru-data-grid-config.mjs +1 -1
- package/{esm2020 → esm2022}/lib/components/data-grid/enums/tru-data-grid-types.mjs +6 -6
- package/esm2022/lib/components/data-grid/overlays/tru-data-grid-loading-overlay/tru-data-grid-loading-overlay.mjs +40 -0
- package/esm2022/lib/components/data-grid/overlays/tru-data-grid-no-rows-overlay/tru-data-grid-no-rows-overlay.mjs +27 -0
- package/esm2022/lib/components/data-grid/tru-data-grid-module.mjs +67 -0
- package/esm2022/lib/components/data-grid/tru-data-grid.mjs +382 -0
- package/{esm2020 → esm2022}/lib/components/desktop/classes/tru-desktop-title.mjs +2 -2
- package/esm2022/lib/components/desktop/classes/tru-desktop-view-config.mjs +21 -0
- package/{esm2020 → esm2022}/lib/components/desktop/directives/resizable/tru-desktop-resizable-module.mjs +19 -19
- package/esm2022/lib/components/desktop/directives/resizable/tru-desktop-resizable.mjs +122 -0
- package/{esm2020 → esm2022}/lib/components/desktop/menubar/tru-desktop-menubar-module.mjs +56 -56
- package/esm2022/lib/components/desktop/menubar/tru-desktop-menubar.mjs +36 -0
- package/esm2022/lib/components/desktop/services/tru-desktop-manager.mjs +86 -0
- package/esm2022/lib/components/desktop/services/tru-desktop-service.mjs +108 -0
- package/esm2022/lib/components/desktop/services/tru-window-action-event-handler.mjs +25 -0
- package/esm2022/lib/components/desktop/services/tru-window-event-args.mjs +24 -0
- package/esm2022/lib/components/desktop/services/tru-window-event-handler.mjs +42 -0
- package/{esm2020 → esm2022}/lib/components/desktop/statusbar/tru-desktop-statusbar-module.mjs +19 -19
- package/esm2022/lib/components/desktop/statusbar/tru-desktop-statusbar.mjs +20 -0
- package/{esm2020 → esm2022}/lib/components/desktop/taskbar/tru-desktop-taskbar-module.mjs +21 -21
- package/esm2022/lib/components/desktop/taskbar/tru-desktop-taskbar.mjs +41 -0
- package/{esm2020 → esm2022}/lib/components/desktop/tru-desktop-module.mjs +72 -72
- package/esm2022/lib/components/desktop/tru-desktop.mjs +737 -0
- package/{esm2020 → esm2022}/lib/components/desktop/view/tru-desktop-view-module.mjs +19 -19
- package/esm2022/lib/components/desktop/view/tru-desktop-view.mjs +29 -0
- package/{esm2020 → esm2022}/lib/components/desktop/viewport/tru-desktop-viewport-module.mjs +20 -20
- package/esm2022/lib/components/desktop/viewport/tru-desktop-viewport.mjs +117 -0
- package/{esm2020 → esm2022}/lib/components/desktop/window/tru-desktop-window-module.mjs +58 -58
- package/esm2022/lib/components/desktop/window/tru-desktop-window.mjs +467 -0
- package/{esm2020 → esm2022}/lib/components/export-dialog/tru-export-dialog-module.mjs +20 -20
- package/esm2022/lib/components/export-dialog/tru-export-dialog.mjs +61 -0
- package/{esm2020 → esm2022}/lib/components/layout/column/tru-column-module.mjs +19 -19
- package/{esm2020 → esm2022}/lib/components/layout/column/tru-column.mjs +12 -12
- package/{esm2020 → esm2022}/lib/components/layout/form/tru-form-module.mjs +19 -19
- package/esm2022/lib/components/layout/form/tru-form.mjs +35 -0
- package/{esm2020 → esm2022}/lib/components/layout/group-box/tru-group-box-module.mjs +19 -19
- package/{esm2020 → esm2022}/lib/components/layout/group-box/tru-group-box.mjs +12 -12
- package/{esm2020 → esm2022}/lib/components/layout/row/tru-row-module.mjs +19 -19
- package/{esm2020 → esm2022}/lib/components/layout/row/tru-row.mjs +12 -12
- package/{esm2020 → esm2022}/lib/components/login/classes/tru-auth-config.mjs +7 -7
- package/esm2022/lib/components/login/classes/tru-auth-jwt-strategy.mjs +63 -0
- package/{esm2020 → esm2022}/lib/components/login/classes/tru-auth-login-request.mjs +5 -3
- package/{esm2020 → esm2022}/lib/components/login/classes/tru-auth-logout-request.mjs +4 -3
- package/esm2022/lib/components/login/classes/tru-auth-session-strategy.mjs +21 -0
- package/{esm2020 → esm2022}/lib/components/login/classes/tru-auth-strategy-provider.mjs +19 -19
- package/{esm2020 → esm2022}/lib/components/login/classes/tru-auth-token.mjs +11 -8
- package/{esm2020 → esm2022}/lib/components/login/classes/tru-auth-user-request.mjs +4 -3
- package/esm2022/lib/components/login/services/tru-auth-cache.mjs +20 -0
- package/esm2022/lib/components/login/services/tru-auth-interceptor.mjs +46 -0
- package/esm2022/lib/components/login/services/tru-auth.mjs +87 -0
- package/esm2022/lib/components/login/tru-login-module.mjs +46 -0
- package/esm2022/lib/components/login/tru-login.mjs +59 -0
- package/{esm2020 → esm2022}/lib/components/password-dialog/tru-password-dialog-module.mjs +20 -20
- package/esm2022/lib/components/password-dialog/tru-password-dialog.mjs +53 -0
- package/{esm2020 → esm2022}/lib/components/toolbar/button/tru-toolbar-button-module.mjs +32 -32
- package/esm2022/lib/components/toolbar/button/tru-toolbar-button.mjs +40 -0
- package/{esm2020 → esm2022}/lib/components/toolbar/classes/tru-toolbar-dropdown-option.mjs +1 -1
- package/{esm2020 → esm2022}/lib/components/toolbar/context-filter/tru-toolbar-context-filter-module.mjs +44 -44
- package/esm2022/lib/components/toolbar/context-filter/tru-toolbar-context-filter.mjs +26 -0
- package/{esm2020 → esm2022}/lib/components/toolbar/dropdown/tru-toolbar-dropdown-module.mjs +36 -36
- package/esm2022/lib/components/toolbar/dropdown/tru-toolbar-dropdown.mjs +45 -0
- package/{esm2020 → esm2022}/lib/components/toolbar/menu/menu-button/tru-toolbar-menu-button-module.mjs +19 -19
- package/esm2022/lib/components/toolbar/menu/menu-button/tru-toolbar-menu-button.mjs +17 -0
- package/{esm2020 → esm2022}/lib/components/toolbar/menu/menu-item/tru-toolbar-menu-item-module.mjs +19 -19
- package/esm2022/lib/components/toolbar/menu/menu-item/tru-toolbar-menu-item.mjs +26 -0
- package/{esm2020 → esm2022}/lib/components/toolbar/menu/tru-toolbar-menu-module.mjs +32 -32
- package/esm2022/lib/components/toolbar/menu/tru-toolbar-menu.mjs +33 -0
- package/{esm2020 → esm2022}/lib/components/toolbar/separator/tru-toolbar-separator-module.mjs +19 -19
- package/{esm2020 → esm2022}/lib/components/toolbar/separator/tru-toolbar-separator.mjs +12 -12
- package/{esm2020 → esm2022}/lib/components/toolbar/text/tru-toolbar-text-module.mjs +32 -32
- package/esm2022/lib/components/toolbar/text/tru-toolbar-text.mjs +27 -0
- package/{esm2020 → esm2022}/lib/components/toolbar/tru-toolbar-module.mjs +73 -73
- package/{esm2020 → esm2022}/lib/components/toolbar/tru-toolbar.mjs +20 -21
- package/{esm2020 → esm2022}/lib/components/toolbar/user-profile/tru-toolbar-user-profile-module.mjs +36 -36
- package/esm2022/lib/components/toolbar/user-profile/tru-toolbar-user-profile.mjs +38 -0
- package/esm2022/lib/components/validation-dialog/tru-validation-dialog-config.mjs +25 -0
- package/{esm2020 → esm2022}/lib/components/validation-dialog/tru-validation-dialog-module.mjs +19 -19
- package/esm2022/lib/components/validation-dialog/tru-validation-dialog.mjs +83 -0
- package/{esm2020 → esm2022}/lib/directives/breeze-validator/tru-breeze-validator-module.mjs +19 -19
- package/esm2022/lib/directives/breeze-validator/tru-breeze-validator.mjs +107 -0
- package/{esm2020 → esm2022}/lib/directives/search-panel-position-manager/tru-search-panel-position-manager-module.mjs +19 -19
- package/esm2022/lib/directives/search-panel-position-manager/tru-search-panel-position-manager.mjs +155 -0
- package/{esm2020 → esm2022}/lib/directives/select-panel/tru-mat-select-panel-module.mjs +19 -19
- package/esm2022/lib/directives/select-panel/tru-mat-select-panel.mjs +69 -0
- package/{esm2020 → esm2022}/lib/interfaces/tru-value.mjs +1 -1
- package/{esm2020 → esm2022}/lib/material.module.mjs +192 -192
- package/esm2022/lib/services/tru-app-environment.mjs +113 -0
- package/esm2022/lib/services/tru-breeze-context-factory.mjs +84 -0
- package/esm2022/lib/services/tru-breeze-metadata-provider.mjs +21 -0
- package/esm2022/lib/services/tru-component-lookup.mjs +23 -0
- package/esm2022/lib/services/tru-connection-hub.mjs +52 -0
- package/esm2022/lib/services/tru-context-filters.mjs +28 -0
- package/esm2022/lib/services/tru-data-context.mjs +263 -0
- package/esm2022/lib/services/tru-entity-accessor.mjs +292 -0
- package/esm2022/lib/services/tru-model-property-lookup.mjs +21 -0
- package/{esm2020 → esm2022}/lib/services/tru-predicate-map.mjs +11 -11
- package/esm2022/lib/services/tru-search-result-view-manager.mjs +18 -0
- package/esm2022/lib/services/tru-sort.mjs +113 -0
- package/esm2022/lib/services/tru-table-registry.mjs +15 -0
- package/esm2022/lib/services/tru-text-manager.mjs +148 -0
- package/esm2022/lib/services/tru-ui-notification.mjs +107 -0
- package/esm2022/lib/services/tru-user.mjs +62 -0
- package/esm2022/lib/services/tru-util.mjs +76 -0
- package/{esm2020 → esm2022}/lib/tru-common-module.mjs +16 -16
- package/{esm2020 → esm2022}/public-api.mjs +144 -144
- package/{esm2020 → esm2022}/trudb-tru-common-lib.mjs +4 -4
- package/fesm2022/trudb-tru-common-lib.mjs +6932 -0
- package/fesm2022/trudb-tru-common-lib.mjs.map +1 -0
- package/index.d.ts +5 -5
- package/lib/assets/tru-icon-module.d.ts +11 -11
- package/lib/assets/tru-search-icon-module.d.ts +11 -11
- package/lib/base-classes/tru-component-config-base.d.ts +3 -3
- package/lib/base-classes/tru-control-component-config-base.d.ts +20 -20
- package/lib/base-classes/tru-edit-control-base.d.ts +10 -10
- package/lib/base-classes/tru-edit-control-config-base.d.ts +21 -21
- package/lib/base-classes/tru-edit-parent-control-config-base.d.ts +9 -9
- package/lib/base-classes/tru-edit-pkey-control-config-base.d.ts +11 -11
- package/lib/base-classes/tru-entity-base.d.ts +14 -14
- package/lib/base-classes/tru-list-control-config-base.d.ts +21 -21
- package/lib/base-classes/tru-property-config-base.d.ts +13 -13
- package/lib/base-classes/tru-search-config-base.d.ts +9 -9
- package/lib/base-classes/tru-search-control-base.d.ts +21 -21
- package/lib/base-classes/tru-search-control-config-base.d.ts +13 -13
- package/lib/base-classes/tru-search-control-range-base.d.ts +25 -25
- package/lib/base-classes/tru-table-config-base.d.ts +11 -11
- package/lib/base-views/detail/tru-detail-view-base-module.d.ts +9 -9
- package/lib/base-views/detail/tru-detail-view-base.d.ts +32 -32
- package/lib/base-views/search/services/tru-search-view-control-event-handler.d.ts +12 -12
- package/lib/base-views/search/services/tru-search-view-event-handler.d.ts +11 -11
- package/lib/base-views/search/tru-search-view-base-module.d.ts +9 -9
- package/lib/base-views/search/tru-search-view-base.d.ts +36 -36
- package/lib/base-views/search-result/tru-search-result-view-base-module.d.ts +9 -9
- package/lib/base-views/search-result/tru-search-result-view-base.d.ts +25 -25
- package/lib/classes/tru-choice.d.ts +8 -8
- package/lib/classes/tru-context-filter-choice.d.ts +6 -6
- package/lib/classes/tru-context-filter.d.ts +10 -10
- package/lib/classes/tru-data-change-parser.d.ts +33 -33
- package/lib/classes/tru-data-change.d.ts +4 -4
- package/lib/classes/tru-formula-eval.d.ts +31 -31
- package/lib/classes/tru-merge-data-set.d.ts +7 -7
- package/lib/classes/tru-merge-data.d.ts +9 -9
- package/lib/classes/tru-name-value.d.ts +9 -9
- package/lib/classes/tru-predicate.d.ts +8 -8
- package/lib/classes/tru-property-config-cloud-file.d.ts +4 -4
- package/lib/classes/tru-property-config-date.d.ts +6 -6
- package/lib/classes/tru-property-config-decimal.d.ts +8 -8
- package/lib/classes/tru-property-config-file.d.ts +5 -5
- package/lib/classes/tru-property-config-foreign-key.d.ts +7 -7
- package/lib/classes/tru-property-config-integer.d.ts +6 -6
- package/lib/classes/tru-property-config-password.d.ts +5 -5
- package/lib/classes/tru-property-config-percentage.d.ts +6 -6
- package/lib/classes/tru-property-config-scientific.d.ts +6 -6
- package/lib/classes/tru-property-config-text-choices.d.ts +5 -5
- package/lib/classes/tru-property-config-text.d.ts +7 -7
- package/lib/classes/tru-property-config-usa-address.d.ts +5 -5
- package/lib/classes/tru-property-config-zip-code.d.ts +5 -5
- package/lib/classes/tru-query-predicate-manager.d.ts +26 -26
- package/lib/components/confirm-dialog/tru-confirm-dialog-module.d.ts +10 -10
- package/lib/components/confirm-dialog/tru-confirm-dialog.d.ts +28 -28
- package/lib/components/data-grid/classes/tru-data-grid-config.d.ts +7 -7
- package/lib/components/data-grid/enums/tru-data-grid-types.d.ts +5 -5
- package/lib/components/data-grid/overlays/tru-data-grid-loading-overlay/tru-data-grid-loading-overlay.d.ts +13 -13
- package/lib/components/data-grid/overlays/tru-data-grid-no-rows-overlay/tru-data-grid-no-rows-overlay.d.ts +13 -13
- package/lib/components/data-grid/tru-data-grid-module.d.ts +15 -15
- package/lib/components/data-grid/tru-data-grid.d.ts +67 -67
- package/lib/components/desktop/classes/tru-desktop-title.d.ts +4 -4
- package/lib/components/desktop/classes/tru-desktop-view-config.d.ts +16 -16
- package/lib/components/desktop/directives/resizable/tru-desktop-resizable-module.d.ts +9 -9
- package/lib/components/desktop/directives/resizable/tru-desktop-resizable.d.ts +32 -32
- package/lib/components/desktop/menubar/tru-desktop-menubar-module.d.ts +17 -17
- package/lib/components/desktop/menubar/tru-desktop-menubar.d.ts +15 -15
- package/lib/components/desktop/services/tru-desktop-manager.d.ts +33 -33
- package/lib/components/desktop/services/tru-desktop-service.d.ts +95 -95
- package/lib/components/desktop/services/tru-window-action-event-handler.d.ts +12 -12
- package/lib/components/desktop/services/tru-window-event-args.d.ts +17 -17
- package/lib/components/desktop/services/tru-window-event-handler.d.ts +20 -20
- package/lib/components/desktop/statusbar/tru-desktop-statusbar-module.d.ts +9 -9
- package/lib/components/desktop/statusbar/tru-desktop-statusbar.d.ts +10 -10
- package/lib/components/desktop/taskbar/tru-desktop-taskbar-module.d.ts +11 -11
- package/lib/components/desktop/taskbar/tru-desktop-taskbar.d.ts +15 -15
- package/lib/components/desktop/tru-desktop-module.d.ts +20 -20
- package/lib/components/desktop/tru-desktop.d.ts +337 -337
- package/lib/components/desktop/view/tru-desktop-view-module.d.ts +9 -9
- package/lib/components/desktop/view/tru-desktop-view.d.ts +14 -14
- package/lib/components/desktop/viewport/tru-desktop-viewport-module.d.ts +10 -10
- package/lib/components/desktop/viewport/tru-desktop-viewport.d.ts +48 -48
- package/lib/components/desktop/window/tru-desktop-window-module.d.ts +17 -17
- package/lib/components/desktop/window/tru-desktop-window.d.ts +189 -189
- package/lib/components/export-dialog/tru-export-dialog-module.d.ts +10 -10
- package/lib/components/export-dialog/tru-export-dialog.d.ts +26 -26
- package/lib/components/layout/column/tru-column-module.d.ts +9 -9
- package/lib/components/layout/column/tru-column.d.ts +6 -6
- package/lib/components/layout/form/tru-form-module.d.ts +9 -9
- package/lib/components/layout/form/tru-form.d.ts +10 -10
- package/lib/components/layout/group-box/tru-group-box-module.d.ts +9 -9
- package/lib/components/layout/group-box/tru-group-box.d.ts +6 -6
- package/lib/components/layout/row/tru-row-module.d.ts +9 -9
- package/lib/components/layout/row/tru-row.d.ts +6 -6
- package/lib/components/login/classes/tru-auth-config.d.ts +16 -16
- package/lib/components/login/classes/tru-auth-jwt-strategy.d.ts +15 -15
- package/lib/components/login/classes/tru-auth-login-request.d.ts +4 -4
- package/lib/components/login/classes/tru-auth-logout-request.d.ts +3 -3
- package/lib/components/login/classes/tru-auth-session-strategy.d.ts +13 -13
- package/lib/components/login/classes/tru-auth-strategy-provider.d.ts +9 -9
- package/lib/components/login/classes/tru-auth-token.d.ts +6 -6
- package/lib/components/login/classes/tru-auth-user-request.d.ts +3 -3
- package/lib/components/login/services/tru-auth-cache.d.ts +11 -11
- package/lib/components/login/services/tru-auth-interceptor.d.ts +16 -16
- package/lib/components/login/services/tru-auth.d.ts +29 -29
- package/lib/components/login/tru-login-module.d.ts +11 -11
- package/lib/components/login/tru-login.d.ts +21 -21
- package/lib/components/password-dialog/tru-password-dialog-module.d.ts +10 -10
- package/lib/components/password-dialog/tru-password-dialog.d.ts +24 -24
- package/lib/components/toolbar/button/tru-toolbar-button-module.d.ts +11 -11
- package/lib/components/toolbar/button/tru-toolbar-button.d.ts +16 -16
- package/lib/components/toolbar/classes/tru-toolbar-dropdown-option.d.ts +4 -4
- package/lib/components/toolbar/context-filter/tru-toolbar-context-filter-module.d.ts +14 -14
- package/lib/components/toolbar/context-filter/tru-toolbar-context-filter.d.ts +13 -13
- package/lib/components/toolbar/dropdown/tru-toolbar-dropdown-module.d.ts +12 -12
- package/lib/components/toolbar/dropdown/tru-toolbar-dropdown.d.ts +18 -18
- package/lib/components/toolbar/menu/menu-button/tru-toolbar-menu-button-module.d.ts +9 -9
- package/lib/components/toolbar/menu/menu-button/tru-toolbar-menu-button.d.ts +7 -7
- package/lib/components/toolbar/menu/menu-item/tru-toolbar-menu-item-module.d.ts +9 -9
- package/lib/components/toolbar/menu/menu-item/tru-toolbar-menu-item.d.ts +8 -8
- package/lib/components/toolbar/menu/tru-toolbar-menu-module.d.ts +11 -11
- package/lib/components/toolbar/menu/tru-toolbar-menu.d.ts +10 -10
- package/lib/components/toolbar/separator/tru-toolbar-separator-module.d.ts +9 -9
- package/lib/components/toolbar/separator/tru-toolbar-separator.d.ts +6 -6
- package/lib/components/toolbar/text/tru-toolbar-text-module.d.ts +11 -11
- package/lib/components/toolbar/text/tru-toolbar-text.d.ts +12 -12
- package/lib/components/toolbar/tru-toolbar-module.d.ts +16 -16
- package/lib/components/toolbar/tru-toolbar.d.ts +9 -9
- package/lib/components/toolbar/user-profile/tru-toolbar-user-profile-module.d.ts +12 -12
- package/lib/components/toolbar/user-profile/tru-toolbar-user-profile.d.ts +17 -17
- package/lib/components/validation-dialog/tru-validation-dialog-config.d.ts +13 -13
- package/lib/components/validation-dialog/tru-validation-dialog-module.d.ts +9 -9
- package/lib/components/validation-dialog/tru-validation-dialog.d.ts +20 -20
- package/lib/directives/breeze-validator/tru-breeze-validator-module.d.ts +9 -9
- package/lib/directives/breeze-validator/tru-breeze-validator.d.ts +27 -27
- package/lib/directives/search-panel-position-manager/tru-search-panel-position-manager-module.d.ts +9 -9
- package/lib/directives/search-panel-position-manager/tru-search-panel-position-manager.d.ts +40 -40
- package/lib/directives/select-panel/tru-mat-select-panel-module.d.ts +9 -9
- package/lib/directives/select-panel/tru-mat-select-panel.d.ts +17 -17
- package/lib/interfaces/tru-value.d.ts +6 -6
- package/lib/material.module.d.ts +50 -50
- package/lib/services/tru-app-environment.d.ts +57 -57
- package/lib/services/tru-breeze-context-factory.d.ts +32 -32
- package/lib/services/tru-breeze-metadata-provider.d.ts +9 -9
- package/lib/services/tru-component-lookup.d.ts +9 -9
- package/lib/services/tru-connection-hub.d.ts +18 -18
- package/lib/services/tru-context-filters.d.ts +10 -10
- package/lib/services/tru-data-context.d.ts +42 -42
- package/lib/services/tru-entity-accessor.d.ts +46 -46
- package/lib/services/tru-model-property-lookup.d.ts +10 -10
- package/lib/services/tru-predicate-map.d.ts +6 -6
- package/lib/services/tru-search-result-view-manager.d.ts +10 -10
- package/lib/services/tru-sort.d.ts +56 -56
- package/lib/services/tru-table-registry.d.ts +8 -8
- package/lib/services/tru-text-manager.d.ts +68 -68
- package/lib/services/tru-ui-notification.d.ts +36 -36
- package/lib/services/tru-user.d.ts +29 -29
- package/lib/services/tru-util.d.ts +14 -14
- package/lib/tru-common-module.d.ts +6 -6
- package/package.json +5 -11
- package/public-api.d.ts +117 -117
- package/esm2020/lib/base-classes/tru-edit-control-config-base.mjs +0 -4
- package/esm2020/lib/base-classes/tru-entity-base.mjs +0 -13
- package/esm2020/lib/base-classes/tru-list-control-config-base.mjs +0 -4
- package/esm2020/lib/base-classes/tru-search-control-base.mjs +0 -47
- package/esm2020/lib/base-classes/tru-search-control-config-base.mjs +0 -4
- package/esm2020/lib/base-classes/tru-search-control-range-base.mjs +0 -47
- package/esm2020/lib/base-classes/tru-table-config-base.mjs +0 -13
- package/esm2020/lib/base-views/detail/tru-detail-view-base.mjs +0 -76
- package/esm2020/lib/base-views/search/services/tru-search-view-control-event-handler.mjs +0 -27
- package/esm2020/lib/base-views/search/services/tru-search-view-event-handler.mjs +0 -27
- package/esm2020/lib/base-views/search/tru-search-view-base.mjs +0 -63
- package/esm2020/lib/base-views/search-result/tru-search-result-view-base.mjs +0 -51
- package/esm2020/lib/classes/tru-context-filter-choice.mjs +0 -8
- package/esm2020/lib/classes/tru-context-filter.mjs +0 -16
- package/esm2020/lib/classes/tru-data-change-parser.mjs +0 -277
- package/esm2020/lib/classes/tru-data-change.mjs +0 -7
- package/esm2020/lib/classes/tru-merge-data-set.mjs +0 -12
- package/esm2020/lib/classes/tru-merge-data.mjs +0 -17
- package/esm2020/lib/classes/tru-predicate.mjs +0 -47
- package/esm2020/lib/classes/tru-property-config-date.mjs +0 -9
- package/esm2020/lib/classes/tru-property-config-decimal.mjs +0 -11
- package/esm2020/lib/classes/tru-property-config-foreign-key.mjs +0 -10
- package/esm2020/lib/classes/tru-property-config-integer.mjs +0 -9
- package/esm2020/lib/classes/tru-property-config-password.mjs +0 -8
- package/esm2020/lib/classes/tru-property-config-percentage.mjs +0 -9
- package/esm2020/lib/classes/tru-property-config-scientific.mjs +0 -9
- package/esm2020/lib/classes/tru-query-predicate-manager.mjs +0 -49
- package/esm2020/lib/components/confirm-dialog/tru-confirm-dialog.mjs +0 -45
- package/esm2020/lib/components/data-grid/overlays/tru-data-grid-loading-overlay/tru-data-grid-loading-overlay.mjs +0 -39
- package/esm2020/lib/components/data-grid/overlays/tru-data-grid-no-rows-overlay/tru-data-grid-no-rows-overlay.mjs +0 -26
- package/esm2020/lib/components/data-grid/tru-data-grid-module.mjs +0 -67
- package/esm2020/lib/components/data-grid/tru-data-grid.mjs +0 -370
- package/esm2020/lib/components/desktop/classes/tru-desktop-view-config.mjs +0 -21
- package/esm2020/lib/components/desktop/directives/resizable/tru-desktop-resizable.mjs +0 -109
- package/esm2020/lib/components/desktop/menubar/tru-desktop-menubar.mjs +0 -34
- package/esm2020/lib/components/desktop/services/tru-desktop-manager.mjs +0 -84
- package/esm2020/lib/components/desktop/services/tru-desktop-service.mjs +0 -116
- package/esm2020/lib/components/desktop/services/tru-window-action-event-handler.mjs +0 -27
- package/esm2020/lib/components/desktop/services/tru-window-event-args.mjs +0 -26
- package/esm2020/lib/components/desktop/services/tru-window-event-handler.mjs +0 -44
- package/esm2020/lib/components/desktop/statusbar/tru-desktop-statusbar.mjs +0 -18
- package/esm2020/lib/components/desktop/taskbar/tru-desktop-taskbar.mjs +0 -40
- package/esm2020/lib/components/desktop/tru-desktop.mjs +0 -731
- package/esm2020/lib/components/desktop/view/tru-desktop-view.mjs +0 -25
- package/esm2020/lib/components/desktop/viewport/tru-desktop-viewport.mjs +0 -113
- package/esm2020/lib/components/desktop/window/tru-desktop-window.mjs +0 -457
- package/esm2020/lib/components/export-dialog/tru-export-dialog.mjs +0 -57
- package/esm2020/lib/components/layout/form/tru-form.mjs +0 -34
- package/esm2020/lib/components/login/classes/tru-auth-jwt-strategy.mjs +0 -65
- package/esm2020/lib/components/login/classes/tru-auth-session-strategy.mjs +0 -19
- package/esm2020/lib/components/login/services/tru-auth-cache.mjs +0 -22
- package/esm2020/lib/components/login/services/tru-auth-interceptor.mjs +0 -43
- package/esm2020/lib/components/login/services/tru-auth.mjs +0 -81
- package/esm2020/lib/components/login/tru-login-module.mjs +0 -46
- package/esm2020/lib/components/login/tru-login.mjs +0 -58
- package/esm2020/lib/components/password-dialog/tru-password-dialog.mjs +0 -48
- package/esm2020/lib/components/toolbar/button/tru-toolbar-button.mjs +0 -41
- package/esm2020/lib/components/toolbar/context-filter/tru-toolbar-context-filter.mjs +0 -24
- package/esm2020/lib/components/toolbar/dropdown/tru-toolbar-dropdown.mjs +0 -43
- package/esm2020/lib/components/toolbar/menu/menu-button/tru-toolbar-menu-button.mjs +0 -16
- package/esm2020/lib/components/toolbar/menu/menu-item/tru-toolbar-menu-item.mjs +0 -26
- package/esm2020/lib/components/toolbar/menu/tru-toolbar-menu.mjs +0 -33
- package/esm2020/lib/components/toolbar/text/tru-toolbar-text.mjs +0 -28
- package/esm2020/lib/components/toolbar/user-profile/tru-toolbar-user-profile.mjs +0 -35
- package/esm2020/lib/components/validation-dialog/tru-validation-dialog-config.mjs +0 -21
- package/esm2020/lib/components/validation-dialog/tru-validation-dialog.mjs +0 -79
- package/esm2020/lib/directives/breeze-validator/tru-breeze-validator.mjs +0 -100
- package/esm2020/lib/directives/search-panel-position-manager/tru-search-panel-position-manager.mjs +0 -151
- package/esm2020/lib/directives/select-panel/tru-mat-select-panel.mjs +0 -66
- package/esm2020/lib/services/tru-app-environment.mjs +0 -94
- package/esm2020/lib/services/tru-breeze-context-factory.mjs +0 -79
- package/esm2020/lib/services/tru-breeze-metadata-provider.mjs +0 -22
- package/esm2020/lib/services/tru-component-lookup.mjs +0 -25
- package/esm2020/lib/services/tru-connection-hub.mjs +0 -48
- package/esm2020/lib/services/tru-context-filters.mjs +0 -29
- package/esm2020/lib/services/tru-data-context.mjs +0 -258
- package/esm2020/lib/services/tru-entity-accessor.mjs +0 -287
- package/esm2020/lib/services/tru-model-property-lookup.mjs +0 -22
- package/esm2020/lib/services/tru-search-result-view-manager.mjs +0 -17
- package/esm2020/lib/services/tru-sort.mjs +0 -114
- package/esm2020/lib/services/tru-table-registry.mjs +0 -16
- package/esm2020/lib/services/tru-text-manager.mjs +0 -134
- package/esm2020/lib/services/tru-ui-notification.mjs +0 -103
- package/esm2020/lib/services/tru-user.mjs +0 -63
- package/esm2020/lib/services/tru-util.mjs +0 -77
- package/fesm2015/trudb-tru-common-lib.mjs +0 -6803
- package/fesm2015/trudb-tru-common-lib.mjs.map +0 -1
- package/fesm2020/trudb-tru-common-lib.mjs +0 -6780
- package/fesm2020/trudb-tru-common-lib.mjs.map +0 -1
|
@@ -1,156 +1,156 @@
|
|
|
1
|
-
import * as _ from 'underscore';
|
|
2
|
-
import moment from 'moment/moment';
|
|
3
|
-
export class TruFormulaEval {
|
|
4
|
-
static isString(s) {
|
|
5
|
-
return typeof s === 'string';
|
|
6
|
-
}
|
|
7
|
-
static isDate(v) {
|
|
8
|
-
return Object.prototype.toString.call(v) === '[object Date]';
|
|
9
|
-
}
|
|
10
|
-
static toValue(value) {
|
|
11
|
-
return value;
|
|
12
|
-
}
|
|
13
|
-
static toString(value) {
|
|
14
|
-
//if (_.isBoolean(value))
|
|
15
|
-
// return value ? 'TRUE' : 'FALSE';
|
|
16
|
-
return value.toString();
|
|
17
|
-
}
|
|
18
|
-
static toDouble(value) {
|
|
19
|
-
return Number(value);
|
|
20
|
-
}
|
|
21
|
-
static toInteger(value) {
|
|
22
|
-
return Math.round(value);
|
|
23
|
-
}
|
|
24
|
-
static toBoolean(value) {
|
|
25
|
-
if (_.isBoolean(value))
|
|
26
|
-
return value;
|
|
27
|
-
var number = Number(value);
|
|
28
|
-
if (isNaN(number))
|
|
29
|
-
return NaN;
|
|
30
|
-
return number !== 0;
|
|
31
|
-
}
|
|
32
|
-
static toDate(value) {
|
|
33
|
-
return value;
|
|
34
|
-
}
|
|
35
|
-
statictoDateTime(value) {
|
|
36
|
-
return value;
|
|
37
|
-
}
|
|
38
|
-
/**
|
|
39
|
-
* Exposed for testing.
|
|
40
|
-
*/
|
|
41
|
-
static _calculate(f, left, right) {
|
|
42
|
-
if (TruFormulaEval.isString(left))
|
|
43
|
-
left = parseFloat(left);
|
|
44
|
-
if (TruFormulaEval.isString(left))
|
|
45
|
-
if (TruFormulaEval.isString(right))
|
|
46
|
-
right = parseFloat(right);
|
|
47
|
-
return f(left, right);
|
|
48
|
-
}
|
|
49
|
-
static _calculateDate(left, right, add) {
|
|
50
|
-
if (add) {
|
|
51
|
-
if (TruFormulaEval.isDate(left) && !TruFormulaEval.isDate(right)) {
|
|
52
|
-
return moment(left).add(right, 'day').toDate();
|
|
53
|
-
}
|
|
54
|
-
if (!TruFormulaEval.isDate(left) && TruFormulaEval.isDate(right)) {
|
|
55
|
-
return moment(right).add(left, 'day').toDate();
|
|
56
|
-
}
|
|
57
|
-
if (TruFormulaEval.isDate(left) && TruFormulaEval.isDate(right)) {
|
|
58
|
-
moment(left).add(right).toDate();
|
|
59
|
-
}
|
|
60
|
-
}
|
|
61
|
-
else {
|
|
62
|
-
if (TruFormulaEval.isDate(left) && !TruFormulaEval.isDate(right)) {
|
|
63
|
-
return moment(left).subtract(right, 'day').toDate();
|
|
64
|
-
}
|
|
65
|
-
if (!TruFormulaEval.isDate(left) && TruFormulaEval.isDate(right)) {
|
|
66
|
-
return moment(right).subtract(left, 'day').toDate();
|
|
67
|
-
}
|
|
68
|
-
if (TruFormulaEval.isDate(left) && TruFormulaEval.isDate(right)) {
|
|
69
|
-
//var m = moment(left).diff(right, 'days'); //Integer value, but Excel uses decimal for date time
|
|
70
|
-
var m = moment(left).diff(moment(right)) / 86400000; //divide by miliseconds in a day, decimal answer 1.0 = 1 day, 0.5 = 12 hours
|
|
71
|
-
return m;
|
|
72
|
-
}
|
|
73
|
-
}
|
|
74
|
-
return null;
|
|
75
|
-
}
|
|
76
|
-
static add(left, right) {
|
|
77
|
-
if (left === null || left === undefined || right === null || right === undefined)
|
|
78
|
-
return undefined;
|
|
79
|
-
if (TruFormulaEval.isDate(left) || TruFormulaEval.isDate(right))
|
|
80
|
-
return TruFormulaEval._calculateDate(left, right, true);
|
|
81
|
-
return TruFormulaEval._calculate(function (l, r) { return l + r; }, left, right);
|
|
82
|
-
}
|
|
83
|
-
static subtract(left, right) {
|
|
84
|
-
if (left === null || left === undefined || right === null || right === undefined)
|
|
85
|
-
return undefined;
|
|
86
|
-
if (TruFormulaEval.isDate(left) || TruFormulaEval.isDate(right))
|
|
87
|
-
return TruFormulaEval._calculateDate(left, right, true);
|
|
88
|
-
return TruFormulaEval._calculate(function (l, r) { return l - r; }, left, right);
|
|
89
|
-
}
|
|
90
|
-
static multiply(left, right) {
|
|
91
|
-
if (left === null || left === undefined || right === null || right === undefined)
|
|
92
|
-
return undefined;
|
|
93
|
-
return TruFormulaEval._calculate(function (l, r) { return l * r; }, left, right);
|
|
94
|
-
}
|
|
95
|
-
static divide(left, right) {
|
|
96
|
-
if (left === null || left === undefined || right === null || right === undefined)
|
|
97
|
-
return undefined;
|
|
98
|
-
return TruFormulaEval._calculate(function (l, r) { return l / r; }, left, right);
|
|
99
|
-
}
|
|
100
|
-
static power(left, right) {
|
|
101
|
-
if (left === null || left === undefined || right === null || right === undefined)
|
|
102
|
-
return undefined;
|
|
103
|
-
return TruFormulaEval._calculate(Math.pow, left, right);
|
|
104
|
-
}
|
|
105
|
-
static concatenate(left, right) {
|
|
106
|
-
if (_.isBoolean(left))
|
|
107
|
-
left = left ? 'TRUE' : 'FALSE';
|
|
108
|
-
else if (!TruFormulaEval.isString(left))
|
|
109
|
-
//NOTE: only need to convert left to string since concat() will coerce parameters
|
|
110
|
-
left = left.toString();
|
|
111
|
-
if (_.isBoolean(right))
|
|
112
|
-
right = right ? 'TRUE' : 'FALSE';
|
|
113
|
-
return left.concat(right);
|
|
114
|
-
}
|
|
115
|
-
static equal(left, right) {
|
|
116
|
-
return left === right;
|
|
117
|
-
}
|
|
118
|
-
static notEqual(left, right) {
|
|
119
|
-
return left !== right;
|
|
120
|
-
}
|
|
121
|
-
static
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
return
|
|
143
|
-
}
|
|
144
|
-
static
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
}
|
|
156
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJ1LWZvcm11bGEtZXZhbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RydS1jb21tb24tbGliL3NyYy9saWIvY2xhc3Nlcy90cnUtZm9ybXVsYS1ldmFsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sS0FBSyxDQUFDLE1BQU0sWUFBWSxDQUFDO0FBQ2hDLE9BQU8sTUFBTSxNQUFNLGVBQWUsQ0FBQztBQUVuQyxNQUFNLE9BQU8sY0FBYztJQUVsQixNQUFNLENBQUMsUUFBUSxDQUFDLENBQU07UUFDM0IsT0FBTyxPQUFPLENBQUMsS0FBSyxRQUFRLENBQUM7SUFDL0IsQ0FBQztJQUVNLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBTTtRQUN6QixPQUFPLE1BQU0sQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsS0FBSyxlQUFlLENBQUE7SUFDOUQsQ0FBQztJQUVNLE1BQU0sQ0FBQyxPQUFPLENBQUMsS0FBVTtRQUM5QixPQUFPLEtBQUssQ0FBQztJQUNmLENBQUM7SUFFTSxNQUFNLENBQUMsUUFBUSxDQUFDLEtBQVU7UUFDL0IseUJBQXlCO1FBQ3pCLHNDQUFzQztRQUN0QyxPQUFPLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztJQUMxQixDQUFDO0lBRU0sTUFBTSxDQUFDLFFBQVEsQ0FBQyxLQUFVO1FBQy9CLE9BQU8sTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3ZCLENBQUM7SUFFTSxNQUFNLENBQUMsU0FBUyxDQUFDLEtBQVU7UUFDaEMsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzNCLENBQUM7SUFFTSxNQUFNLENBQUMsU0FBUyxDQUFDLEtBQVU7UUFDaEMsSUFBSSxDQUFDLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQztZQUNwQixPQUFPLEtBQUssQ0FBQztRQUNmLElBQUksTUFBTSxHQUFHLE1BQU0sQ0FB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LEtBQUssSUFBSSxJQUFJLEtBQUssS0FBSyxTQUFTO1lBQzlFLE9BQU8sU0FBUyxDQUFDO1FBRW5CLE9BQU8sY0FBYyxDQUFDLFVBQVUsQ0FBQyxVQUFVLENBQU0sRUFBRSxDQUFNLElBQUksT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFBLENBQUMsQ0FBQyxFQUFFLElBQUksRUFBRSxLQUFLLENBQUMsQ0FBQztJQUM1RixDQUFDO0lBQ00sTUFBTSxDQUFDLE1BQU0sQ0FBQyxJQUFTLEVBQUUsS0FBVTtRQUN4QyxJQUFJLElBQUksS0FBSyxJQUFJLElBQUksSUFBSSxLQUFLLFNBQVMsSUFBSSxLQUFLLEtBQUssSUFBSSxJQUFJLEtBQUssS0FBSyxTQUFTO1lBQzlFLE9BQU8sU0FBUyxDQUFDO1FBRW5CLE9BQU8sY0FBYyxDQUFDLFVBQVUsQ0FBQyxVQUFVLENBQU0sRUFBRSxDQUFNLElBQUksT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFBLENBQUMsQ0FBQyxFQUFFLElBQUksRUFBRSxLQUFLLENBQUMsQ0FBQztJQUM1RixDQUFDO0lBQ00sTUFBTSxDQUFDLEtBQUssQ0FBQyxJQUFTLEVBQUUsS0FBVTtRQUN2QyxJQUFJLElBQUksS0FBSyxJQUFJLElBQUksSUFBSSxLQUFLLFNBQVMsSUFBSSxLQUFLLEtBQUssSUFBSSxJQUFJLEtBQUssS0FBSyxTQUFTO1lBQzlFLE9BQU8sU0FBUyxDQUFDO1FBRW5CLE9BQU8sY0FBYyxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFLElBQUksRUFBRSxLQUFLLENBQUMsQ0FBQztJQUMxRCxDQUFDO0lBRU0sTUFBTSxDQUFDLFdBQVcsQ0FBQyxJQUFTLEVBQUUsS0FBVTtRQUM3QyxJQUFJLENBQUMsQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDO1lBQ25CLElBQUksR0FBRyxJQUFJLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDO2FBQzVCLElBQUksQ0FBQyxjQUFjLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQztZQUNyQyxpRkFBaUY7WUFDakYsSUFBSSxHQUFHLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUN6QixJQUFJLENBQUMsQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDO1lBQ3BCLEtBQUssR0FBRyxLQUFLLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDO1FBQ25DLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUM1QixDQUFDO0lBQ00sTUFBTSxDQUFDLEtBQUssQ0FBQyxJQUFTLEVBQUUsS0FBVTtRQUN2QyxPQUFPLElBQUksS0FBSyxLQUFLLENBQUM7SUFDeEIsQ0FBQztJQUNNLE1BQU0sQ0FBQyxRQUFRLENBQUMsSUFBUyxFQUFFLEtBQVU7UUFDMUMsT0FBTyxJQUFJLEtBQUssS0FBSyxDQUFDO0lBQ3hCLENBQUM7SUFVTSxNQUFNLENBQUMsUUFBUSxDQUFDLElBQVMsRUFBRSxLQUFVO1FBQzFDLElBQUksT0FBTyxDQUFDLElBQUksQ0FBQyxLQUFLLE9BQU8sQ0FBQyxLQUFLLENBQUM7WUFDbEMsT0FBTyxDQUFDLGNBQWMsQ0FBQyxnQ0FBZ0MsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEdBQUcsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7UUFDMUYsT0FBTyxJQUFJLEdBQUcsS0FBSyxDQUFDO0lBQ3RCLENBQUM7SUFDTSxNQUFNLENBQUMsV0FBVyxDQUFDLElBQVMsRUFBRSxLQUFVO1FBQzdDLElBQUksT0FBTyxDQUFDLElBQUksQ0FBQyxLQUFLLE9BQU8sQ0FBQyxLQUFLLENBQUM7WUFDbEMsT0FBTyxjQUFjLENBQUMsZ0NBQWdDLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxHQUFHLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO1FBQ3pGLE9BQU8sSUFBSSxHQUFHLEtBQUssQ0FBQztJQUN0QixDQUFDO0lBQ00sTUFBTSxDQUFDLGVBQWUsQ0FBQyxJQUFTLEVBQUUsS0FBVTtRQUNqRCxJQUFJLE9BQU8sQ0FBQyxJQUFJLENBQUMsS0FBSyxPQUFPLENBQUMsS0FBSyxDQUFDO1lBQ2xDLE9BQU8sQ0FBQyxjQUFjLENBQUMsZ0NBQWdDLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxHQUFHLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO1FBQzFGLE9BQU8sSUFBSSxJQUFJLEtBQUssQ0FBQztJQUN2QixDQUFDO0lBQ00sTUFBTSxDQUFDLGtCQUFrQixDQUFDLElBQVMsRUFBRSxLQUFVO1FBQ3BELElBQUksT0FBTyxDQUFDLElBQUksQ0FBQyxLQUFLLE9BQU8sQ0FBQyxLQUFLLENBQUM7WUFDbEMsT0FBTyxjQUFjLENBQUMsZ0NBQWdDLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxHQUFHLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO1FBQ3pGLE9BQU8sSUFBSSxJQUFJLEtBQUssQ0FBQztJQUN2QixDQUFDO0lBRU0sTUFBTSxDQUFDLE1BQU0sQ0FBQyxPQUFZO1FBQy9CLE9BQU8sQ0FBQyxPQUFPLENBQUM7SUFDbEIsQ0FBQztJQUVNLE1BQU0sQ0FBQyxPQUFPLENBQUMsT0FBWTtRQUNoQyxPQUFPLE9BQU8sR0FBRyxLQUFLLENBQUM7SUFDekIsQ0FBQzs7QUFuQ2EsK0NBQWdDLEdBQVE7SUFDcEQsYUFBYSxFQUFFLElBQUk7SUFDbkIsYUFBYSxFQUFFLElBQUk7SUFDbkIsWUFBWSxFQUFFLElBQUk7SUFDbEIsYUFBYSxFQUFFLEtBQUs7SUFDcEIsWUFBWSxFQUFFLEtBQUs7SUFDbkIsYUFBYSxFQUFFLEtBQUs7Q0FDckIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIF8gZnJvbSAndW5kZXJzY29yZSc7XHJcbmltcG9ydCBtb21lbnQgZnJvbSAnbW9tZW50L21vbWVudCc7IFxyXG5cclxuZXhwb3J0IGNsYXNzIFRydUZvcm11bGFFdmFsIHtcclxuXHJcbiAgcHVibGljIHN0YXRpYyBpc1N0cmluZyhzOiBhbnkpIHtcclxuICAgIHJldHVybiB0eXBlb2YgcyA9PT0gJ3N0cmluZyc7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgc3RhdGljIGlzRGF0ZSh2OiBhbnkpIHtcclxuICAgIHJldHVybiBPYmplY3QucHJvdG90eXBlLnRvU3RyaW5nLmNhbGwodikgPT09ICdbb2JqZWN0IERhdGVdJ1xyXG4gIH1cclxuXHJcbiAgcHVibGljIHN0YXRpYyB0b1ZhbHVlKHZhbHVlOiBhbnkpIHtcclxuICAgIHJldHVybiB2YWx1ZTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBzdGF0aWMgdG9TdHJpbmcodmFsdWU6IGFueSkge1xyXG4gICAgLy9pZiAoXy5pc0Jvb2xlYW4odmFsdWUpKVxyXG4gICAgLy8gICAgcmV0dXJuIHZhbHVlID8gJ1RSVUUnIDogJ0ZBTFNFJztcclxuICAgIHJldHVybiB2YWx1ZS50b1N0cmluZygpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIHN0YXRpYyB0b0RvdWJsZSh2YWx1ZTogYW55KSB7XHJcbiAgICByZXR1cm4gTnVtYmVyKHZhbHVlKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBzdGF0aWMgdG9JbnRlZ2VyKHZhbHVlOiBhbnkpIHtcclxuICAgIHJldHVybiBNYXRoLnJvdW5kKHZhbHVlKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBzdGF0aWMgdG9Cb29sZWFuKHZhbHVlOiBhbnkpIHtcclxuICAgIGlmIChfLmlzQm9vbGVhbih2YWx1ZSkpXHJcbiAgICAgIHJldHVybiB2YWx1ZTtcclxuICAgIHZhciBudW1iZXIgPSBOdW1iZXIodmFsdWUpO1xyXG4gICAgaWYgKGlzTmFOKG51bWJlcikpXHJcbiAgICAgIHJldHVybiBOYU47XHJcbiAgICByZXR1cm4gbnVtYmVyICE9PSAwO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIHN0YXRpYyB0b0RhdGUodmFsdWU6IGFueSkge1xyXG4gICAgcmV0dXJuIHZhbHVlO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIHN0YXRpY3RvRGF0ZVRpbWUodmFsdWU6IGFueSkge1xyXG4gICAgcmV0dXJuIHZhbHVlO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogRXhwb3NlZCBmb3IgdGVzdGluZy5cclxuICAgKi9cclxuICBwdWJsaWMgc3RhdGljIF9jYWxjdWxhdGUoZjogYW55LCBsZWZ0OiBhbnksIHJpZ2h0OiBhbnkpIHtcclxuICAgIGlmIChUcnVGb3JtdWxhRXZhbC5pc1N0cmluZyhsZWZ0KSlcclxuICAgICAgbGVmdCA9IHBhcnNlRmxvYXQobGVmdCk7XHJcbiAgICBpZiAoVHJ1Rm9ybXVsYUV2YWwuaXNTdHJpbmcobGVmdCkpXHJcbiAgICAgIGlmIChUcnVGb3JtdWxhRXZhbC5pc1N0cmluZyhyaWdodCkpXHJcbiAgICAgICAgcmlnaHQgPSBwYXJzZUZsb2F0KHJpZ2h0KTtcclxuICAgIHJldHVybiBmKGxlZnQsIHJpZ2h0KTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBzdGF0aWMgX2NhbGN1bGF0ZURhdGUobGVmdDogYW55LCByaWdodDogYW55LCBhZGQ6IGFueSkge1xyXG4gICAgaWYgKGFkZCkge1xyXG4gICAgICBpZiAoVHJ1Rm9ybXVsYUV2YWwuaXNEYXRlKGxlZnQpICYmICFUcnVGb3JtdWxhRXZhbC5pc0RhdGUocmlnaHQpKSB7XHJcbiAgICAgICAgcmV0dXJuIG1vbWVudChsZWZ0KS5hZGQocmlnaHQsICdkYXknKS50b0RhdGUoKTtcclxuXHJcbiAgICAgIH1cclxuXHJcbiAgICAgIGlmICghVHJ1Rm9ybXVsYUV2YWwuaXNEYXRlKGxlZnQpICYmIFRydUZvcm11bGFFdmFsLmlzRGF0ZShyaWdodCkpIHtcclxuICAgICAgICByZXR1cm4gbW9tZW50KHJpZ2h0KS5hZGQobGVmdCwgJ2RheScpLnRvRGF0ZSgpO1xyXG4gICAgICB9XHJcblxyXG4gICAgICBpZiAoVHJ1Rm9ybXVsYUV2YWwuaXNEYXRlKGxlZnQpICYmIFRydUZvcm11bGFFdmFsLmlzRGF0ZShyaWdodCkpIHtcclxuICAgICAgICBtb21lbnQobGVmdCkuYWRkKHJpZ2h0KS50b0RhdGUoKTtcclxuICAgICAgfVxyXG4gICAgfSBlbHNlIHtcclxuICAgICAgaWYgKFRydUZvcm11bGFFdmFsLmlzRGF0ZShsZWZ0KSAmJiAhVHJ1Rm9ybXVsYUV2YWwuaXNEYXRlKHJpZ2h0KSkge1xyXG4gICAgICAgIHJldHVybiBtb21lbnQobGVmdCkuc3VidHJhY3QocmlnaHQsICdkYXknKS50b0RhdGUoKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgaWYgKCFUcnVGb3JtdWxhRXZhbC5pc0RhdGUobGVmdCkgJiYgVHJ1Rm9ybXVsYUV2YWwuaXNEYXRlKHJpZ2h0KSkge1xyXG4gICAgICAgIHJldHVybiBtb21lbnQocmlnaHQpLnN1YnRyYWN0KGxlZnQsICdkYXknKS50b0RhdGUoKTtcclxuXHJcbiAgICAgIH1cclxuXHJcbiAgICAgIGlmIChUcnVGb3JtdWxhRXZhbC5pc0RhdGUobGVmdCkgJiYgVHJ1Rm9ybXVsYUV2YWwuaXNEYXRlKHJpZ2h0KSkge1xyXG4gICAgICAgIC8vdmFyIG0gPSBtb21lbnQobGVmdCkuZGlmZihyaWdodCwgJ2RheXMnKTsgLy9JbnRlZ2VyIHZhbHVlLCBidXQgRXhjZWwgdXNlcyBkZWNpbWFsIGZvciBkYXRlIHRpbWVcclxuICAgICAgICB2YXIgbSA9IG1vbWVudChsZWZ0KS5kaWZmKG1vbWVudChyaWdodCkpIC8gODY0MDAwMDA7IC8vZGl2aWRlIGJ5IG1pbGlzZWNvbmRzIGluIGEgZGF5LCBkZWNpbWFsIGFuc3dlciAxLjAgPSAxIGRheSwgMC41ID0gMTIgaG91cnNcclxuICAgICAgICByZXR1cm4gbTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgcmV0dXJuIG51bGw7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgc3RhdGljIGFkZChsZWZ0OiBhbnksIHJpZ2h0OiBhbnkpIHtcclxuICAgIGlmIChsZWZ0ID09PSBudWxsIHx8IGxlZnQgPT09IHVuZGVmaW5lZCB8fCByaWdodCA9PT0gbnVsbCB8fCByaWdodCA9PT0gdW5kZWZpbmVkKVxyXG4gICAgICByZXR1cm4gdW5kZWZpbmVkO1xyXG5cclxuICAgIGlmIChUcnVGb3JtdWxhRXZhbC5pc0RhdGUobGVmdCkgfHwgVHJ1Rm9ybXVsYUV2YWwuaXNEYXRlKHJpZ2h0KSlcclxuICAgICAgcmV0dXJuIFRydUZvcm11bGFFdmFsLl9jYWxjdWxhdGVEYXRlKGxlZnQsIHJpZ2h0LCB0cnVlKTtcclxuXHJcbiAgICByZXR1cm4gVHJ1Rm9ybXVsYUV2YWwuX2NhbGN1bGF0ZShmdW5jdGlvbiAobDogYW55LCByOiBhbnkpIHsgcmV0dXJuIGwgKyByIH0sIGxlZnQsIHJpZ2h0KTtcclxuICB9XHJcbiAgcHVibGljIHN0YXRpYyBzdWJ0cmFjdChsZWZ0OiBhbnksIHJpZ2h0OiBhbnkpIHtcclxuICAgIGlmIChsZWZ0ID09PSBudWxsIHx8IGxlZnQgPT09IHVuZGVmaW5lZCB8fCByaWdodCA9PT0gbnVsbCB8fCByaWdodCA9PT0gdW5kZWZpbmVkKVxyXG4gICAgICByZXR1cm4gdW5kZWZpbmVkO1xyXG5cclxuICAgIGlmIChUcnVGb3JtdWxhRXZhbC5pc0RhdGUobGVmdCkgfHwgVHJ1Rm9ybXVsYUV2YWwuaXNEYXRlKHJpZ2h0KSlcclxuICAgICAgcmV0dXJuIFRydUZvcm11bGFFdmFsLl9jYWxjdWxhdGVEYXRlKGxlZnQsIHJpZ2h0LCB0cnVlKTtcclxuXHJcbiAgICByZXR1cm4gVHJ1Rm9ybXVsYUV2YWwuX2NhbGN1bGF0ZShmdW5jdGlvbiAobDogYW55LCByOiBhbnkpIHsgcmV0dXJuIGwgLSByIH0sIGxlZnQsIHJpZ2h0KTtcclxuICB9XHJcbiAgcHVibGljIHN0YXRpYyBtdWx0aXBseShsZWZ0OiBhbnksIHJpZ2h0OiBhbnkpIHtcclxuICAgIGlmIChsZWZ0ID09PSBudWxsIHx8IGxlZnQgPT09IHVuZGVmaW5lZCB8fCByaWdodCA9PT0gbnVsbCB8fCByaWdodCA9PT0gdW5kZWZpbmVkKVxyXG4gICAgICByZXR1cm4gdW5kZWZpbmVkO1xyXG5cclxuICAgIHJldHVybiBUcnVGb3JtdWxhRXZhbC5fY2FsY3VsYXRlKGZ1bmN0aW9uIChsOiBhbnksIHI6IGFueSkgeyByZXR1cm4gbCAqIHIgfSwgbGVmdCwgcmlnaHQpO1xyXG4gIH1cclxuICBwdWJsaWMgc3RhdGljIGRpdmlkZShsZWZ0OiBhbnksIHJpZ2h0OiBhbnkpIHtcclxuICAgIGlmIChsZWZ0ID09PSBudWxsIHx8IGxlZnQgPT09IHVuZGVmaW5lZCB8fCByaWdodCA9PT0gbnVsbCB8fCByaWdodCA9PT0gdW5kZWZpbmVkKVxyXG4gICAgICByZXR1cm4gdW5kZWZpbmVkO1xyXG5cclxuICAgIHJldHVybiBUcnVGb3JtdWxhRXZhbC5fY2FsY3VsYXRlKGZ1bmN0aW9uIChsOiBhbnksIHI6IGFueSkgeyByZXR1cm4gbCAvIHIgfSwgbGVmdCwgcmlnaHQpO1xyXG4gIH1cclxuICBwdWJsaWMgc3RhdGljIHBvd2VyKGxlZnQ6IGFueSwgcmlnaHQ6IGFueSkge1xyXG4gICAgaWYgKGxlZnQgPT09IG51bGwgfHwgbGVmdCA9PT0gdW5kZWZpbmVkIHx8IHJpZ2h0ID09PSBudWxsIHx8IHJpZ2h0ID09PSB1bmRlZmluZWQpXHJcbiAgICAgIHJldHVybiB1bmRlZmluZWQ7XHJcblxyXG4gICAgcmV0dXJuIFRydUZvcm11bGFFdmFsLl9jYWxjdWxhdGUoTWF0aC5wb3csIGxlZnQsIHJpZ2h0KTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBzdGF0aWMgY29uY2F0ZW5hdGUobGVmdDogYW55LCByaWdodDogYW55KSB7XHJcbiAgICBpZiAoXy5pc0Jvb2xlYW4obGVmdCkpXHJcbiAgICAgIGxlZnQgPSBsZWZ0ID8gJ1RSVUUnIDogJ0ZBTFNFJztcclxuICAgIGVsc2UgaWYgKCFUcnVGb3JtdWxhRXZhbC5pc1N0cmluZyhsZWZ0KSlcclxuICAgICAgLy9OT1RFOiBvbmx5IG5lZWQgdG8gY29udmVydCBsZWZ0IHRvIHN0cmluZyBzaW5jZSBjb25jYXQoKSB3aWxsIGNvZXJjZSBwYXJhbWV0ZXJzXHJcbiAgICAgIGxlZnQgPSBsZWZ0LnRvU3RyaW5nKCk7XHJcbiAgICBpZiAoXy5pc0Jvb2xlYW4ocmlnaHQpKVxyXG4gICAgICByaWdodCA9IHJpZ2h0ID8gJ1RSVUUnIDogJ0ZBTFNFJztcclxuICAgIHJldHVybiBsZWZ0LmNvbmNhdChyaWdodCk7XHJcbiAgfVxyXG4gIHB1YmxpYyBzdGF0aWMgZXF1YWwobGVmdDogYW55LCByaWdodDogYW55KSB7XHJcbiAgICByZXR1cm4gbGVmdCA9PT0gcmlnaHQ7XHJcbiAgfVxyXG4gIHB1YmxpYyBzdGF0aWMgbm90RXF1YWwobGVmdDogYW55LCByaWdodDogYW55KSB7XHJcbiAgICByZXR1cm4gbGVmdCAhPT0gcmlnaHQ7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgc3RhdGljIGNvbXBhcmVSZXN1bHRGb3JNaXNtYXRjaGVkUGFyYW1zOiBhbnkgPSB7XHJcbiAgICBib29sZWFuc3RyaW5nOiB0cnVlLFxyXG4gICAgYm9vbGVhbm51bWJlcjogdHJ1ZSxcclxuICAgIHN0cmluZ251bWJlcjogdHJ1ZSxcclxuICAgIHN0cmluZ2Jvb2xlYW46IGZhbHNlLFxyXG4gICAgbnVtYmVyc3RyaW5nOiBmYWxzZSxcclxuICAgIG51bWJlcmJvb2xlYW46IGZhbHNlXHJcbiAgfTtcclxuICBwdWJsaWMgc3RhdGljIGxlc3NUaGFuKGxlZnQ6IGFueSwgcmlnaHQ6IGFueSkge1xyXG4gICAgaWYgKHR5cGVvZiAobGVmdCkgIT09IHR5cGVvZiAocmlnaHQpKVxyXG4gICAgICByZXR1cm4gIVRydUZvcm11bGFFdmFsLmNvbXBhcmVSZXN1bHRGb3JNaXNtYXRjaGVkUGFyYW1zW3R5cGVvZiAobGVmdCkgKyB0eXBlb2YgKHJpZ2h0KV07XHJcbiAgICByZXR1cm4gbGVmdCA8IHJpZ2h0O1xyXG4gIH1cclxuICBwdWJsaWMgc3RhdGljIGdyZWF0ZXJUaGFuKGxlZnQ6IGFueSwgcmlnaHQ6IGFueSkge1xyXG4gICAgaWYgKHR5cGVvZiAobGVmdCkgIT09IHR5cGVvZiAocmlnaHQpKVxyXG4gICAgICByZXR1cm4gVHJ1Rm9ybXVsYUV2YWwuY29tcGFyZVJlc3VsdEZvck1pc21hdGNoZWRQYXJhbXNbdHlwZW9mIChsZWZ0KSArIHR5cGVvZiAocmlnaHQpXTtcclxuICAgIHJldHVybiBsZWZ0ID4gcmlnaHQ7XHJcbiAgfVxyXG4gIHB1YmxpYyBzdGF0aWMgbGVzc1RoYW5PckVxdWFsKGxlZnQ6IGFueSwgcmlnaHQ6IGFueSkge1xyXG4gICAgaWYgKHR5cGVvZiAobGVmdCkgIT09IHR5cGVvZiAocmlnaHQpKVxyXG4gICAgICByZXR1cm4gIVRydUZvcm11bGFFdmFsLmNvbXBhcmVSZXN1bHRGb3JNaXNtYXRjaGVkUGFyYW1zW3R5cGVvZiAobGVmdCkgKyB0eXBlb2YgKHJpZ2h0KV07XHJcbiAgICByZXR1cm4gbGVmdCA8PSByaWdodDtcclxuICB9XHJcbiAgcHVibGljIHN0YXRpYyBncmVhdGVyVGhhbk9yRXF1YWwobGVmdDogYW55LCByaWdodDogYW55KSB7XHJcbiAgICBpZiAodHlwZW9mIChsZWZ0KSAhPT0gdHlwZW9mIChyaWdodCkpXHJcbiAgICAgIHJldHVybiBUcnVGb3JtdWxhRXZhbC5jb21wYXJlUmVzdWx0Rm9yTWlzbWF0Y2hlZFBhcmFtc1t0eXBlb2YgKGxlZnQpICsgdHlwZW9mIChyaWdodCldO1xyXG4gICAgcmV0dXJuIGxlZnQgPj0gcmlnaHQ7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgc3RhdGljIG5lZ2F0ZShvcGVyYW5kOiBhbnkpIHtcclxuICAgIHJldHVybiAtb3BlcmFuZDtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBzdGF0aWMgcGVyY2VudChvcGVyYW5kOiBhbnkpIHtcclxuICAgIHJldHVybiBvcGVyYW5kIC8gMTAwLjA7XHJcbiAgfVxyXG59XHJcbiJdfQ==
|
|
1
|
+
import * as _ from 'underscore';
|
|
2
|
+
import moment from 'moment/moment';
|
|
3
|
+
export class TruFormulaEval {
|
|
4
|
+
static isString(s) {
|
|
5
|
+
return typeof s === 'string';
|
|
6
|
+
}
|
|
7
|
+
static isDate(v) {
|
|
8
|
+
return Object.prototype.toString.call(v) === '[object Date]';
|
|
9
|
+
}
|
|
10
|
+
static toValue(value) {
|
|
11
|
+
return value;
|
|
12
|
+
}
|
|
13
|
+
static toString(value) {
|
|
14
|
+
//if (_.isBoolean(value))
|
|
15
|
+
// return value ? 'TRUE' : 'FALSE';
|
|
16
|
+
return value.toString();
|
|
17
|
+
}
|
|
18
|
+
static toDouble(value) {
|
|
19
|
+
return Number(value);
|
|
20
|
+
}
|
|
21
|
+
static toInteger(value) {
|
|
22
|
+
return Math.round(value);
|
|
23
|
+
}
|
|
24
|
+
static toBoolean(value) {
|
|
25
|
+
if (_.isBoolean(value))
|
|
26
|
+
return value;
|
|
27
|
+
var number = Number(value);
|
|
28
|
+
if (isNaN(number))
|
|
29
|
+
return NaN;
|
|
30
|
+
return number !== 0;
|
|
31
|
+
}
|
|
32
|
+
static toDate(value) {
|
|
33
|
+
return value;
|
|
34
|
+
}
|
|
35
|
+
statictoDateTime(value) {
|
|
36
|
+
return value;
|
|
37
|
+
}
|
|
38
|
+
/**
|
|
39
|
+
* Exposed for testing.
|
|
40
|
+
*/
|
|
41
|
+
static _calculate(f, left, right) {
|
|
42
|
+
if (TruFormulaEval.isString(left))
|
|
43
|
+
left = parseFloat(left);
|
|
44
|
+
if (TruFormulaEval.isString(left))
|
|
45
|
+
if (TruFormulaEval.isString(right))
|
|
46
|
+
right = parseFloat(right);
|
|
47
|
+
return f(left, right);
|
|
48
|
+
}
|
|
49
|
+
static _calculateDate(left, right, add) {
|
|
50
|
+
if (add) {
|
|
51
|
+
if (TruFormulaEval.isDate(left) && !TruFormulaEval.isDate(right)) {
|
|
52
|
+
return moment(left).add(right, 'day').toDate();
|
|
53
|
+
}
|
|
54
|
+
if (!TruFormulaEval.isDate(left) && TruFormulaEval.isDate(right)) {
|
|
55
|
+
return moment(right).add(left, 'day').toDate();
|
|
56
|
+
}
|
|
57
|
+
if (TruFormulaEval.isDate(left) && TruFormulaEval.isDate(right)) {
|
|
58
|
+
moment(left).add(right).toDate();
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
else {
|
|
62
|
+
if (TruFormulaEval.isDate(left) && !TruFormulaEval.isDate(right)) {
|
|
63
|
+
return moment(left).subtract(right, 'day').toDate();
|
|
64
|
+
}
|
|
65
|
+
if (!TruFormulaEval.isDate(left) && TruFormulaEval.isDate(right)) {
|
|
66
|
+
return moment(right).subtract(left, 'day').toDate();
|
|
67
|
+
}
|
|
68
|
+
if (TruFormulaEval.isDate(left) && TruFormulaEval.isDate(right)) {
|
|
69
|
+
//var m = moment(left).diff(right, 'days'); //Integer value, but Excel uses decimal for date time
|
|
70
|
+
var m = moment(left).diff(moment(right)) / 86400000; //divide by miliseconds in a day, decimal answer 1.0 = 1 day, 0.5 = 12 hours
|
|
71
|
+
return m;
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
return null;
|
|
75
|
+
}
|
|
76
|
+
static add(left, right) {
|
|
77
|
+
if (left === null || left === undefined || right === null || right === undefined)
|
|
78
|
+
return undefined;
|
|
79
|
+
if (TruFormulaEval.isDate(left) || TruFormulaEval.isDate(right))
|
|
80
|
+
return TruFormulaEval._calculateDate(left, right, true);
|
|
81
|
+
return TruFormulaEval._calculate(function (l, r) { return l + r; }, left, right);
|
|
82
|
+
}
|
|
83
|
+
static subtract(left, right) {
|
|
84
|
+
if (left === null || left === undefined || right === null || right === undefined)
|
|
85
|
+
return undefined;
|
|
86
|
+
if (TruFormulaEval.isDate(left) || TruFormulaEval.isDate(right))
|
|
87
|
+
return TruFormulaEval._calculateDate(left, right, true);
|
|
88
|
+
return TruFormulaEval._calculate(function (l, r) { return l - r; }, left, right);
|
|
89
|
+
}
|
|
90
|
+
static multiply(left, right) {
|
|
91
|
+
if (left === null || left === undefined || right === null || right === undefined)
|
|
92
|
+
return undefined;
|
|
93
|
+
return TruFormulaEval._calculate(function (l, r) { return l * r; }, left, right);
|
|
94
|
+
}
|
|
95
|
+
static divide(left, right) {
|
|
96
|
+
if (left === null || left === undefined || right === null || right === undefined)
|
|
97
|
+
return undefined;
|
|
98
|
+
return TruFormulaEval._calculate(function (l, r) { return l / r; }, left, right);
|
|
99
|
+
}
|
|
100
|
+
static power(left, right) {
|
|
101
|
+
if (left === null || left === undefined || right === null || right === undefined)
|
|
102
|
+
return undefined;
|
|
103
|
+
return TruFormulaEval._calculate(Math.pow, left, right);
|
|
104
|
+
}
|
|
105
|
+
static concatenate(left, right) {
|
|
106
|
+
if (_.isBoolean(left))
|
|
107
|
+
left = left ? 'TRUE' : 'FALSE';
|
|
108
|
+
else if (!TruFormulaEval.isString(left))
|
|
109
|
+
//NOTE: only need to convert left to string since concat() will coerce parameters
|
|
110
|
+
left = left.toString();
|
|
111
|
+
if (_.isBoolean(right))
|
|
112
|
+
right = right ? 'TRUE' : 'FALSE';
|
|
113
|
+
return left.concat(right);
|
|
114
|
+
}
|
|
115
|
+
static equal(left, right) {
|
|
116
|
+
return left === right;
|
|
117
|
+
}
|
|
118
|
+
static notEqual(left, right) {
|
|
119
|
+
return left !== right;
|
|
120
|
+
}
|
|
121
|
+
static compareResultForMismatchedParams = {
|
|
122
|
+
booleanstring: true,
|
|
123
|
+
booleannumber: true,
|
|
124
|
+
stringnumber: true,
|
|
125
|
+
stringboolean: false,
|
|
126
|
+
numberstring: false,
|
|
127
|
+
numberboolean: false
|
|
128
|
+
};
|
|
129
|
+
static lessThan(left, right) {
|
|
130
|
+
if (typeof (left) !== typeof (right))
|
|
131
|
+
return !TruFormulaEval.compareResultForMismatchedParams[typeof (left) + typeof (right)];
|
|
132
|
+
return left < right;
|
|
133
|
+
}
|
|
134
|
+
static greaterThan(left, right) {
|
|
135
|
+
if (typeof (left) !== typeof (right))
|
|
136
|
+
return TruFormulaEval.compareResultForMismatchedParams[typeof (left) + typeof (right)];
|
|
137
|
+
return left > right;
|
|
138
|
+
}
|
|
139
|
+
static lessThanOrEqual(left, right) {
|
|
140
|
+
if (typeof (left) !== typeof (right))
|
|
141
|
+
return !TruFormulaEval.compareResultForMismatchedParams[typeof (left) + typeof (right)];
|
|
142
|
+
return left <= right;
|
|
143
|
+
}
|
|
144
|
+
static greaterThanOrEqual(left, right) {
|
|
145
|
+
if (typeof (left) !== typeof (right))
|
|
146
|
+
return TruFormulaEval.compareResultForMismatchedParams[typeof (left) + typeof (right)];
|
|
147
|
+
return left >= right;
|
|
148
|
+
}
|
|
149
|
+
static negate(operand) {
|
|
150
|
+
return -operand;
|
|
151
|
+
}
|
|
152
|
+
static percent(operand) {
|
|
153
|
+
return operand / 100.0;
|
|
154
|
+
}
|
|
155
|
+
}
|
|
156
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJ1LWZvcm11bGEtZXZhbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RydS1jb21tb24tbGliL3NyYy9saWIvY2xhc3Nlcy90cnUtZm9ybXVsYS1ldmFsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sS0FBSyxDQUFDLE1BQU0sWUFBWSxDQUFDO0FBQ2hDLE9BQU8sTUFBTSxNQUFNLGVBQWUsQ0FBQztBQUVuQyxNQUFNLE9BQU8sY0FBYztJQUVsQixNQUFNLENBQUMsUUFBUSxDQUFDLENBQU07UUFDM0IsT0FBTyxPQUFPLENBQUMsS0FBSyxRQUFRLENBQUM7SUFDL0IsQ0FBQztJQUVNLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBTTtRQUN6QixPQUFPLE1BQU0sQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsS0FBSyxlQUFlLENBQUE7SUFDOUQsQ0FBQztJQUVNLE1BQU0sQ0FBQyxPQUFPLENBQUMsS0FBVTtRQUM5QixPQUFPLEtBQUssQ0FBQztJQUNmLENBQUM7SUFFTSxNQUFNLENBQUMsUUFBUSxDQUFDLEtBQVU7UUFDL0IseUJBQXlCO1FBQ3pCLHNDQUFzQztRQUN0QyxPQUFPLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztJQUMxQixDQUFDO0lBRU0sTUFBTSxDQUFDLFFBQVEsQ0FBQyxLQUFVO1FBQy9CLE9BQU8sTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3ZCLENBQUM7SUFFTSxNQUFNLENBQUMsU0FBUyxDQUFDLEtBQVU7UUFDaEMsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzNCLENBQUM7SUFFTSxNQUFNLENBQUMsU0FBUyxDQUFDLEtBQVU7UUFDaEMsSUFBSSxDQUFDLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQztZQUNwQixPQUFPLEtBQUssQ0FBQztRQUNmLElBQUksTUFBTSxHQUFHLE1BQU0sQ0FB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LEtBQUssSUFBSSxJQUFJLEtBQUssS0FBSyxTQUFTO1lBQzlFLE9BQU8sU0FBUyxDQUFDO1FBRW5CLE9BQU8sY0FBYyxDQUFDLFVBQVUsQ0FBQyxVQUFVLENBQU0sRUFBRSxDQUFNLElBQUksT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFBLENBQUMsQ0FBQyxFQUFFLElBQUksRUFBRSxLQUFLLENBQUMsQ0FBQztJQUM1RixDQUFDO0lBQ00sTUFBTSxDQUFDLE1BQU0sQ0FBQyxJQUFTLEVBQUUsS0FBVTtRQUN4QyxJQUFJLElBQUksS0FBSyxJQUFJLElBQUksSUFBSSxLQUFLLFNBQVMsSUFBSSxLQUFLLEtBQUssSUFBSSxJQUFJLEtBQUssS0FBSyxTQUFTO1lBQzlFLE9BQU8sU0FBUyxDQUFDO1FBRW5CLE9BQU8sY0FBYyxDQUFDLFVBQVUsQ0FBQyxVQUFVLENBQU0sRUFBRSxDQUFNLElBQUksT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFBLENBQUMsQ0FBQyxFQUFFLElBQUksRUFBRSxLQUFLLENBQUMsQ0FBQztJQUM1RixDQUFDO0lBQ00sTUFBTSxDQUFDLEtBQUssQ0FBQyxJQUFTLEVBQUUsS0FBVTtRQUN2QyxJQUFJLElBQUksS0FBSyxJQUFJLElBQUksSUFBSSxLQUFLLFNBQVMsSUFBSSxLQUFLLEtBQUssSUFBSSxJQUFJLEtBQUssS0FBSyxTQUFTO1lBQzlFLE9BQU8sU0FBUyxDQUFDO1FBRW5CLE9BQU8sY0FBYyxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFLElBQUksRUFBRSxLQUFLLENBQUMsQ0FBQztJQUMxRCxDQUFDO0lBRU0sTUFBTSxDQUFDLFdBQVcsQ0FBQyxJQUFTLEVBQUUsS0FBVTtRQUM3QyxJQUFJLENBQUMsQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDO1lBQ25CLElBQUksR0FBRyxJQUFJLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDO2FBQzVCLElBQUksQ0FBQyxjQUFjLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQztZQUNyQyxpRkFBaUY7WUFDakYsSUFBSSxHQUFHLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUN6QixJQUFJLENBQUMsQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDO1lBQ3BCLEtBQUssR0FBRyxLQUFLLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDO1FBQ25DLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUM1QixDQUFDO0lBQ00sTUFBTSxDQUFDLEtBQUssQ0FBQyxJQUFTLEVBQUUsS0FBVTtRQUN2QyxPQUFPLElBQUksS0FBSyxLQUFLLENBQUM7SUFDeEIsQ0FBQztJQUNNLE1BQU0sQ0FBQyxRQUFRLENBQUMsSUFBUyxFQUFFLEtBQVU7UUFDMUMsT0FBTyxJQUFJLEtBQUssS0FBSyxDQUFDO0lBQ3hCLENBQUM7SUFFTSxNQUFNLENBQUMsZ0NBQWdDLEdBQVE7UUFDcEQsYUFBYSxFQUFFLElBQUk7UUFDbkIsYUFBYSxFQUFFLElBQUk7UUFDbkIsWUFBWSxFQUFFLElBQUk7UUFDbEIsYUFBYSxFQUFFLEtBQUs7UUFDcEIsWUFBWSxFQUFFLEtBQUs7UUFDbkIsYUFBYSxFQUFFLEtBQUs7S0FDckIsQ0FBQztJQUNLLE1BQU0sQ0FBQyxRQUFRLENBQUMsSUFBUyxFQUFFLEtBQVU7UUFDMUMsSUFBSSxPQUFPLENBQUMsSUFBSSxDQUFDLEtBQUssT0FBTyxDQUFDLEtBQUssQ0FBQztZQUNsQyxPQUFPLENBQUMsY0FBYyxDQUFDLGdDQUFnQyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsR0FBRyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztRQUMxRixPQUFPLElBQUksR0FBRyxLQUFLLENBQUM7SUFDdEIsQ0FBQztJQUNNLE1BQU0sQ0FBQyxXQUFXLENBQUMsSUFBUyxFQUFFLEtBQVU7UUFDN0MsSUFBSSxPQUFPLENBQUMsSUFBSSxDQUFDLEtBQUssT0FBTyxDQUFDLEtBQUssQ0FBQztZQUNsQyxPQUFPLGNBQWMsQ0FBQyxnQ0FBZ0MsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEdBQUcsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7UUFDekYsT0FBTyxJQUFJLEdBQUcsS0FBSyxDQUFDO0lBQ3RCLENBQUM7SUFDTSxNQUFNLENBQUMsZUFBZSxDQUFDLElBQVMsRUFBRSxLQUFVO1FBQ2pELElBQUksT0FBTyxDQUFDLElBQUksQ0FBQyxLQUFLLE9BQU8sQ0FBQyxLQUFLLENBQUM7WUFDbEMsT0FBTyxDQUFDLGNBQWMsQ0FBQyxnQ0FBZ0MsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEdBQUcsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7UUFDMUYsT0FBTyxJQUFJLElBQUksS0FBSyxDQUFDO0lBQ3ZCLENBQUM7SUFDTSxNQUFNLENBQUMsa0JBQWtCLENBQUMsSUFBUyxFQUFFLEtBQVU7UUFDcEQsSUFBSSxPQUFPLENBQUMsSUFBSSxDQUFDLEtBQUssT0FBTyxDQUFDLEtBQUssQ0FBQztZQUNsQyxPQUFPLGNBQWMsQ0FBQyxnQ0FBZ0MsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEdBQUcsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7UUFDekYsT0FBTyxJQUFJLElBQUksS0FBSyxDQUFDO0lBQ3ZCLENBQUM7SUFFTSxNQUFNLENBQUMsTUFBTSxDQUFDLE9BQVk7UUFDL0IsT0FBTyxDQUFDLE9BQU8sQ0FBQztJQUNsQixDQUFDO0lBRU0sTUFBTSxDQUFDLE9BQU8sQ0FBQyxPQUFZO1FBQ2hDLE9BQU8sT0FBTyxHQUFHLEtBQUssQ0FBQztJQUN6QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgXyBmcm9tICd1bmRlcnNjb3JlJztcclxuaW1wb3J0IG1vbWVudCBmcm9tICdtb21lbnQvbW9tZW50JzsgXHJcblxyXG5leHBvcnQgY2xhc3MgVHJ1Rm9ybXVsYUV2YWwge1xyXG5cclxuICBwdWJsaWMgc3RhdGljIGlzU3RyaW5nKHM6IGFueSkge1xyXG4gICAgcmV0dXJuIHR5cGVvZiBzID09PSAnc3RyaW5nJztcclxuICB9XHJcblxyXG4gIHB1YmxpYyBzdGF0aWMgaXNEYXRlKHY6IGFueSkge1xyXG4gICAgcmV0dXJuIE9iamVjdC5wcm90b3R5cGUudG9TdHJpbmcuY2FsbCh2KSA9PT0gJ1tvYmplY3QgRGF0ZV0nXHJcbiAgfVxyXG5cclxuICBwdWJsaWMgc3RhdGljIHRvVmFsdWUodmFsdWU6IGFueSkge1xyXG4gICAgcmV0dXJuIHZhbHVlO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIHN0YXRpYyB0b1N0cmluZyh2YWx1ZTogYW55KSB7XHJcbiAgICAvL2lmIChfLmlzQm9vbGVhbih2YWx1ZSkpXHJcbiAgICAvLyAgICByZXR1cm4gdmFsdWUgPyAnVFJVRScgOiAnRkFMU0UnO1xyXG4gICAgcmV0dXJuIHZhbHVlLnRvU3RyaW5nKCk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgc3RhdGljIHRvRG91YmxlKHZhbHVlOiBhbnkpIHtcclxuICAgIHJldHVybiBOdW1iZXIodmFsdWUpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIHN0YXRpYyB0b0ludGVnZXIodmFsdWU6IGFueSkge1xyXG4gICAgcmV0dXJuIE1hdGgucm91bmQodmFsdWUpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIHN0YXRpYyB0b0Jvb2xlYW4odmFsdWU6IGFueSkge1xyXG4gICAgaWYgKF8uaXNCb29sZWFuKHZhbHVlKSlcclxuICAgICAgcmV0dXJuIHZhbHVlO1xyXG4gICAgdmFyIG51bWJlciA9IE51bWJlcih2YWx1ZSk7XHJcbiAgICBpZiAoaXNOYU4obnVtYmVyKSlcclxuICAgICAgcmV0dXJuIE5hTjtcclxuICAgIHJldHVybiBudW1iZXIgIT09IDA7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgc3RhdGljIHRvRGF0ZSh2YWx1ZTogYW55KSB7XHJcbiAgICByZXR1cm4gdmFsdWU7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgc3RhdGljdG9EYXRlVGltZSh2YWx1ZTogYW55KSB7XHJcbiAgICByZXR1cm4gdmFsdWU7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBFeHBvc2VkIGZvciB0ZXN0aW5nLlxyXG4gICAqL1xyXG4gIHB1YmxpYyBzdGF0aWMgX2NhbGN1bGF0ZShmOiBhbnksIGxlZnQ6IGFueSwgcmlnaHQ6IGFueSkge1xyXG4gICAgaWYgKFRydUZvcm11bGFFdmFsLmlzU3RyaW5nKGxlZnQpKVxyXG4gICAgICBsZWZ0ID0gcGFyc2VGbG9hdChsZWZ0KTtcclxuICAgIGlmIChUcnVGb3JtdWxhRXZhbC5pc1N0cmluZyhsZWZ0KSlcclxuICAgICAgaWYgKFRydUZvcm11bGFFdmFsLmlzU3RyaW5nKHJpZ2h0KSlcclxuICAgICAgICByaWdodCA9IHBhcnNlRmxvYXQocmlnaHQpO1xyXG4gICAgcmV0dXJuIGYobGVmdCwgcmlnaHQpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIHN0YXRpYyBfY2FsY3VsYXRlRGF0ZShsZWZ0OiBhbnksIHJpZ2h0OiBhbnksIGFkZDogYW55KSB7XHJcbiAgICBpZiAoYWRkKSB7XHJcbiAgICAgIGlmIChUcnVGb3JtdWxhRXZhbC5pc0RhdGUobGVmdCkgJiYgIVRydUZvcm11bGFFdmFsLmlzRGF0ZShyaWdodCkpIHtcclxuICAgICAgICByZXR1cm4gbW9tZW50KGxlZnQpLmFkZChyaWdodCwgJ2RheScpLnRvRGF0ZSgpO1xyXG5cclxuICAgICAgfVxyXG5cclxuICAgICAgaWYgKCFUcnVGb3JtdWxhRXZhbC5pc0RhdGUobGVmdCkgJiYgVHJ1Rm9ybXVsYUV2YWwuaXNEYXRlKHJpZ2h0KSkge1xyXG4gICAgICAgIHJldHVybiBtb21lbnQocmlnaHQpLmFkZChsZWZ0LCAnZGF5JykudG9EYXRlKCk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIGlmIChUcnVGb3JtdWxhRXZhbC5pc0RhdGUobGVmdCkgJiYgVHJ1Rm9ybXVsYUV2YWwuaXNEYXRlKHJpZ2h0KSkge1xyXG4gICAgICAgIG1vbWVudChsZWZ0KS5hZGQocmlnaHQpLnRvRGF0ZSgpO1xyXG4gICAgICB9XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICBpZiAoVHJ1Rm9ybXVsYUV2YWwuaXNEYXRlKGxlZnQpICYmICFUcnVGb3JtdWxhRXZhbC5pc0RhdGUocmlnaHQpKSB7XHJcbiAgICAgICAgcmV0dXJuIG1vbWVudChsZWZ0KS5zdWJ0cmFjdChyaWdodCwgJ2RheScpLnRvRGF0ZSgpO1xyXG4gICAgICB9XHJcblxyXG4gICAgICBpZiAoIVRydUZvcm11bGFFdmFsLmlzRGF0ZShsZWZ0KSAmJiBUcnVGb3JtdWxhRXZhbC5pc0RhdGUocmlnaHQpKSB7XHJcbiAgICAgICAgcmV0dXJuIG1vbWVudChyaWdodCkuc3VidHJhY3QobGVmdCwgJ2RheScpLnRvRGF0ZSgpO1xyXG5cclxuICAgICAgfVxyXG5cclxuICAgICAgaWYgKFRydUZvcm11bGFFdmFsLmlzRGF0ZShsZWZ0KSAmJiBUcnVGb3JtdWxhRXZhbC5pc0RhdGUocmlnaHQpKSB7XHJcbiAgICAgICAgLy92YXIgbSA9IG1vbWVudChsZWZ0KS5kaWZmKHJpZ2h0LCAnZGF5cycpOyAvL0ludGVnZXIgdmFsdWUsIGJ1dCBFeGNlbCB1c2VzIGRlY2ltYWwgZm9yIGRhdGUgdGltZVxyXG4gICAgICAgIHZhciBtID0gbW9tZW50KGxlZnQpLmRpZmYobW9tZW50KHJpZ2h0KSkgLyA4NjQwMDAwMDsgLy9kaXZpZGUgYnkgbWlsaXNlY29uZHMgaW4gYSBkYXksIGRlY2ltYWwgYW5zd2VyIDEuMCA9IDEgZGF5LCAwLjUgPSAxMiBob3Vyc1xyXG4gICAgICAgIHJldHVybiBtO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICByZXR1cm4gbnVsbDtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBzdGF0aWMgYWRkKGxlZnQ6IGFueSwgcmlnaHQ6IGFueSkge1xyXG4gICAgaWYgKGxlZnQgPT09IG51bGwgfHwgbGVmdCA9PT0gdW5kZWZpbmVkIHx8IHJpZ2h0ID09PSBudWxsIHx8IHJpZ2h0ID09PSB1bmRlZmluZWQpXHJcbiAgICAgIHJldHVybiB1bmRlZmluZWQ7XHJcblxyXG4gICAgaWYgKFRydUZvcm11bGFFdmFsLmlzRGF0ZShsZWZ0KSB8fCBUcnVGb3JtdWxhRXZhbC5pc0RhdGUocmlnaHQpKVxyXG4gICAgICByZXR1cm4gVHJ1Rm9ybXVsYUV2YWwuX2NhbGN1bGF0ZURhdGUobGVmdCwgcmlnaHQsIHRydWUpO1xyXG5cclxuICAgIHJldHVybiBUcnVGb3JtdWxhRXZhbC5fY2FsY3VsYXRlKGZ1bmN0aW9uIChsOiBhbnksIHI6IGFueSkgeyByZXR1cm4gbCArIHIgfSwgbGVmdCwgcmlnaHQpO1xyXG4gIH1cclxuICBwdWJsaWMgc3RhdGljIHN1YnRyYWN0KGxlZnQ6IGFueSwgcmlnaHQ6IGFueSkge1xyXG4gICAgaWYgKGxlZnQgPT09IG51bGwgfHwgbGVmdCA9PT0gdW5kZWZpbmVkIHx8IHJpZ2h0ID09PSBudWxsIHx8IHJpZ2h0ID09PSB1bmRlZmluZWQpXHJcbiAgICAgIHJldHVybiB1bmRlZmluZWQ7XHJcblxyXG4gICAgaWYgKFRydUZvcm11bGFFdmFsLmlzRGF0ZShsZWZ0KSB8fCBUcnVGb3JtdWxhRXZhbC5pc0RhdGUocmlnaHQpKVxyXG4gICAgICByZXR1cm4gVHJ1Rm9ybXVsYUV2YWwuX2NhbGN1bGF0ZURhdGUobGVmdCwgcmlnaHQsIHRydWUpO1xyXG5cclxuICAgIHJldHVybiBUcnVGb3JtdWxhRXZhbC5fY2FsY3VsYXRlKGZ1bmN0aW9uIChsOiBhbnksIHI6IGFueSkgeyByZXR1cm4gbCAtIHIgfSwgbGVmdCwgcmlnaHQpO1xyXG4gIH1cclxuICBwdWJsaWMgc3RhdGljIG11bHRpcGx5KGxlZnQ6IGFueSwgcmlnaHQ6IGFueSkge1xyXG4gICAgaWYgKGxlZnQgPT09IG51bGwgfHwgbGVmdCA9PT0gdW5kZWZpbmVkIHx8IHJpZ2h0ID09PSBudWxsIHx8IHJpZ2h0ID09PSB1bmRlZmluZWQpXHJcbiAgICAgIHJldHVybiB1bmRlZmluZWQ7XHJcblxyXG4gICAgcmV0dXJuIFRydUZvcm11bGFFdmFsLl9jYWxjdWxhdGUoZnVuY3Rpb24gKGw6IGFueSwgcjogYW55KSB7IHJldHVybiBsICogciB9LCBsZWZ0LCByaWdodCk7XHJcbiAgfVxyXG4gIHB1YmxpYyBzdGF0aWMgZGl2aWRlKGxlZnQ6IGFueSwgcmlnaHQ6IGFueSkge1xyXG4gICAgaWYgKGxlZnQgPT09IG51bGwgfHwgbGVmdCA9PT0gdW5kZWZpbmVkIHx8IHJpZ2h0ID09PSBudWxsIHx8IHJpZ2h0ID09PSB1bmRlZmluZWQpXHJcbiAgICAgIHJldHVybiB1bmRlZmluZWQ7XHJcblxyXG4gICAgcmV0dXJuIFRydUZvcm11bGFFdmFsLl9jYWxjdWxhdGUoZnVuY3Rpb24gKGw6IGFueSwgcjogYW55KSB7IHJldHVybiBsIC8gciB9LCBsZWZ0LCByaWdodCk7XHJcbiAgfVxyXG4gIHB1YmxpYyBzdGF0aWMgcG93ZXIobGVmdDogYW55LCByaWdodDogYW55KSB7XHJcbiAgICBpZiAobGVmdCA9PT0gbnVsbCB8fCBsZWZ0ID09PSB1bmRlZmluZWQgfHwgcmlnaHQgPT09IG51bGwgfHwgcmlnaHQgPT09IHVuZGVmaW5lZClcclxuICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcclxuXHJcbiAgICByZXR1cm4gVHJ1Rm9ybXVsYUV2YWwuX2NhbGN1bGF0ZShNYXRoLnBvdywgbGVmdCwgcmlnaHQpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIHN0YXRpYyBjb25jYXRlbmF0ZShsZWZ0OiBhbnksIHJpZ2h0OiBhbnkpIHtcclxuICAgIGlmIChfLmlzQm9vbGVhbihsZWZ0KSlcclxuICAgICAgbGVmdCA9IGxlZnQgPyAnVFJVRScgOiAnRkFMU0UnO1xyXG4gICAgZWxzZSBpZiAoIVRydUZvcm11bGFFdmFsLmlzU3RyaW5nKGxlZnQpKVxyXG4gICAgICAvL05PVEU6IG9ubHkgbmVlZCB0byBjb252ZXJ0IGxlZnQgdG8gc3RyaW5nIHNpbmNlIGNvbmNhdCgpIHdpbGwgY29lcmNlIHBhcmFtZXRlcnNcclxuICAgICAgbGVmdCA9IGxlZnQudG9TdHJpbmcoKTtcclxuICAgIGlmIChfLmlzQm9vbGVhbihyaWdodCkpXHJcbiAgICAgIHJpZ2h0ID0gcmlnaHQgPyAnVFJVRScgOiAnRkFMU0UnO1xyXG4gICAgcmV0dXJuIGxlZnQuY29uY2F0KHJpZ2h0KTtcclxuICB9XHJcbiAgcHVibGljIHN0YXRpYyBlcXVhbChsZWZ0OiBhbnksIHJpZ2h0OiBhbnkpIHtcclxuICAgIHJldHVybiBsZWZ0ID09PSByaWdodDtcclxuICB9XHJcbiAgcHVibGljIHN0YXRpYyBub3RFcXVhbChsZWZ0OiBhbnksIHJpZ2h0OiBhbnkpIHtcclxuICAgIHJldHVybiBsZWZ0ICE9PSByaWdodDtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBzdGF0aWMgY29tcGFyZVJlc3VsdEZvck1pc21hdGNoZWRQYXJhbXM6IGFueSA9IHtcclxuICAgIGJvb2xlYW5zdHJpbmc6IHRydWUsXHJcbiAgICBib29sZWFubnVtYmVyOiB0cnVlLFxyXG4gICAgc3RyaW5nbnVtYmVyOiB0cnVlLFxyXG4gICAgc3RyaW5nYm9vbGVhbjogZmFsc2UsXHJcbiAgICBudW1iZXJzdHJpbmc6IGZhbHNlLFxyXG4gICAgbnVtYmVyYm9vbGVhbjogZmFsc2VcclxuICB9O1xyXG4gIHB1YmxpYyBzdGF0aWMgbGVzc1RoYW4obGVmdDogYW55LCByaWdodDogYW55KSB7XHJcbiAgICBpZiAodHlwZW9mIChsZWZ0KSAhPT0gdHlwZW9mIChyaWdodCkpXHJcbiAgICAgIHJldHVybiAhVHJ1Rm9ybXVsYUV2YWwuY29tcGFyZVJlc3VsdEZvck1pc21hdGNoZWRQYXJhbXNbdHlwZW9mIChsZWZ0KSArIHR5cGVvZiAocmlnaHQpXTtcclxuICAgIHJldHVybiBsZWZ0IDwgcmlnaHQ7XHJcbiAgfVxyXG4gIHB1YmxpYyBzdGF0aWMgZ3JlYXRlclRoYW4obGVmdDogYW55LCByaWdodDogYW55KSB7XHJcbiAgICBpZiAodHlwZW9mIChsZWZ0KSAhPT0gdHlwZW9mIChyaWdodCkpXHJcbiAgICAgIHJldHVybiBUcnVGb3JtdWxhRXZhbC5jb21wYXJlUmVzdWx0Rm9yTWlzbWF0Y2hlZFBhcmFtc1t0eXBlb2YgKGxlZnQpICsgdHlwZW9mIChyaWdodCldO1xyXG4gICAgcmV0dXJuIGxlZnQgPiByaWdodDtcclxuICB9XHJcbiAgcHVibGljIHN0YXRpYyBsZXNzVGhhbk9yRXF1YWwobGVmdDogYW55LCByaWdodDogYW55KSB7XHJcbiAgICBpZiAodHlwZW9mIChsZWZ0KSAhPT0gdHlwZW9mIChyaWdodCkpXHJcbiAgICAgIHJldHVybiAhVHJ1Rm9ybXVsYUV2YWwuY29tcGFyZVJlc3VsdEZvck1pc21hdGNoZWRQYXJhbXNbdHlwZW9mIChsZWZ0KSArIHR5cGVvZiAocmlnaHQpXTtcclxuICAgIHJldHVybiBsZWZ0IDw9IHJpZ2h0O1xyXG4gIH1cclxuICBwdWJsaWMgc3RhdGljIGdyZWF0ZXJUaGFuT3JFcXVhbChsZWZ0OiBhbnksIHJpZ2h0OiBhbnkpIHtcclxuICAgIGlmICh0eXBlb2YgKGxlZnQpICE9PSB0eXBlb2YgKHJpZ2h0KSlcclxuICAgICAgcmV0dXJuIFRydUZvcm11bGFFdmFsLmNvbXBhcmVSZXN1bHRGb3JNaXNtYXRjaGVkUGFyYW1zW3R5cGVvZiAobGVmdCkgKyB0eXBlb2YgKHJpZ2h0KV07XHJcbiAgICByZXR1cm4gbGVmdCA+PSByaWdodDtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBzdGF0aWMgbmVnYXRlKG9wZXJhbmQ6IGFueSkge1xyXG4gICAgcmV0dXJuIC1vcGVyYW5kO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIHN0YXRpYyBwZXJjZW50KG9wZXJhbmQ6IGFueSkge1xyXG4gICAgcmV0dXJuIG9wZXJhbmQgLyAxMDAuMDtcclxuICB9XHJcbn1cclxuIl19
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
export class TruMergeDataSet {
|
|
2
|
+
_data = {};
|
|
3
|
+
getData = (propertyName) => {
|
|
4
|
+
return this._data[propertyName];
|
|
5
|
+
};
|
|
6
|
+
setData = (propertyName, data) => {
|
|
7
|
+
this._data[propertyName] = data;
|
|
8
|
+
};
|
|
9
|
+
constructor() { }
|
|
10
|
+
}
|
|
11
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJ1LW1lcmdlLWRhdGEtc2V0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHJ1LWNvbW1vbi1saWIvc3JjL2xpYi9jbGFzc2VzL3RydS1tZXJnZS1kYXRhLXNldC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxNQUFNLE9BQU8sZUFBZTtJQUNsQixLQUFLLEdBQWlDLEVBQUUsQ0FBQztJQUVqRCxPQUFPLEdBQUcsQ0FBQyxZQUFvQixFQUE0QixFQUFFO1FBQzNELE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxZQUFZLENBQUMsQ0FBQztJQUNsQyxDQUFDLENBQUE7SUFFRCxPQUFPLEdBQUcsQ0FBQyxZQUFvQixFQUFFLElBQWtCLEVBQUUsRUFBRTtRQUNyRCxJQUFJLENBQUMsS0FBSyxDQUFDLFlBQVksQ0FBQyxHQUFHLElBQUksQ0FBQztJQUNsQyxDQUFDLENBQUE7SUFFRCxnQkFBZSxDQUFDO0NBQ2pCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgVHJ1TWVyZ2VEYXRhIH0gZnJvbSBcIi4vdHJ1LW1lcmdlLWRhdGFcIjtcclxuXHJcbmV4cG9ydCBjbGFzcyBUcnVNZXJnZURhdGFTZXQge1xyXG4gIHByaXZhdGUgX2RhdGE6IFJlY29yZDxzdHJpbmcsIFRydU1lcmdlRGF0YT4gPSB7fTtcclxuXHJcbiAgZ2V0RGF0YSA9IChwcm9wZXJ0eU5hbWU6IHN0cmluZyk6IFRydU1lcmdlRGF0YSB8IHVuZGVmaW5lZCA9PiB7XHJcbiAgICByZXR1cm4gdGhpcy5fZGF0YVtwcm9wZXJ0eU5hbWVdO1xyXG4gIH1cclxuXHJcbiAgc2V0RGF0YSA9IChwcm9wZXJ0eU5hbWU6IHN0cmluZywgZGF0YTogVHJ1TWVyZ2VEYXRhKSA9PiB7XHJcbiAgICB0aGlzLl9kYXRhW3Byb3BlcnR5TmFtZV0gPSBkYXRhO1xyXG4gIH1cclxuXHJcbiAgY29uc3RydWN0b3IoKSB7fVxyXG59XHJcbiJdfQ==
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
export class TruMergeData {
|
|
2
|
+
_value;
|
|
3
|
+
_modifiedBy;
|
|
4
|
+
_hid;
|
|
5
|
+
get value() {
|
|
6
|
+
return this._value;
|
|
7
|
+
}
|
|
8
|
+
get modifiedBy() {
|
|
9
|
+
return this._modifiedBy;
|
|
10
|
+
}
|
|
11
|
+
get hid() {
|
|
12
|
+
return this._hid;
|
|
13
|
+
}
|
|
14
|
+
constructor(value, modifiedBy, hid) {
|
|
15
|
+
this._value = value;
|
|
16
|
+
this._modifiedBy = modifiedBy;
|
|
17
|
+
this._hid = hid;
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJ1LW1lcmdlLWRhdGEuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90cnUtY29tbW9uLWxpYi9zcmMvbGliL2NsYXNzZXMvdHJ1LW1lcmdlLWRhdGEudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxPQUFPLFlBQVk7SUFDZixNQUFNLENBQU07SUFDWixXQUFXLENBQVM7SUFDcEIsSUFBSSxDQUFTO0lBR3JCLElBQVcsS0FBSztRQUNkLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQztJQUNyQixDQUFDO0lBRUQsSUFBVyxVQUFVO1FBQ25CLE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQztJQUMxQixDQUFDO0lBRUQsSUFBVyxHQUFHO1FBQ1osT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDO0lBQ25CLENBQUM7SUFFRCxZQUFZLEtBQVUsRUFBRSxVQUFrQixFQUFFLEdBQVc7UUFDckQsSUFBSSxDQUFDLE1BQU0sR0FBRyxLQUFLLENBQUM7UUFDcEIsSUFBSSxDQUFDLFdBQVcsR0FBRyxVQUFVLENBQUM7UUFDOUIsSUFBSSxDQUFDLElBQUksR0FBRyxHQUFHLENBQUM7SUFDbEIsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNsYXNzIFRydU1lcmdlRGF0YSB7XHJcbiAgcHJpdmF0ZSBfdmFsdWU6IGFueTtcclxuICBwcml2YXRlIF9tb2RpZmllZEJ5OiBzdHJpbmc7XHJcbiAgcHJpdmF0ZSBfaGlkOiBzdHJpbmc7XHJcblxyXG5cclxuICBwdWJsaWMgZ2V0IHZhbHVlKCk6IHN0cmluZyB7XHJcbiAgICByZXR1cm4gdGhpcy5fdmFsdWU7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0IG1vZGlmaWVkQnkoKTogc3RyaW5nIHtcclxuICAgIHJldHVybiB0aGlzLl9tb2RpZmllZEJ5O1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldCBoaWQoKTogc3RyaW5nIHtcclxuICAgIHJldHVybiB0aGlzLl9oaWQ7XHJcbiAgfVxyXG5cclxuICBjb25zdHJ1Y3Rvcih2YWx1ZTogYW55LCBtb2RpZmllZEJ5OiBzdHJpbmcsIGhpZDogc3RyaW5nKSB7XHJcbiAgICB0aGlzLl92YWx1ZSA9IHZhbHVlO1xyXG4gICAgdGhpcy5fbW9kaWZpZWRCeSA9IG1vZGlmaWVkQnk7XHJcbiAgICB0aGlzLl9oaWQgPSBoaWQ7XHJcbiAgfVxyXG59XHJcbiJdfQ==
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
export class TruNameValue {
|
|
2
|
-
}
|
|
1
|
+
export class TruNameValue {
|
|
2
|
+
}
|
|
3
3
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJ1LW5hbWUtdmFsdWUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90cnUtY29tbW9uLWxpYi9zcmMvbGliL2NsYXNzZXMvdHJ1LW5hbWUtdmFsdWUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxPQUFnQixZQUFZO0NBTWpDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGFic3RyYWN0IGNsYXNzIFRydU5hbWVWYWx1ZSB7XHJcbiAgYWJzdHJhY3QgbmFtZTogc3RyaW5nO1xyXG4gIGFic3RyYWN0IHZhbHVlOiB7ICQ6IHN0cmluZyB8IG51bWJlciB8IG51bGwgfCB1bmRlZmluZWQgfTtcclxuICBhYnN0cmFjdCBlbnRpdHk/OiBhbnk7XHJcbiAgYWJzdHJhY3QgY2hlY2tlZD86IGJvb2xlYW4gfCBudWxsIHwgdW5kZWZpbmVkO1xyXG4gIGFic3RyYWN0IG5vdEFuT3B0aW9uPzogYm9vbGVhbiB8IHVuZGVmaW5lZDtcclxufVxyXG4iXX0=
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
import { AndOrPredicate, BinaryPredicate, breeze } from "breeze-client";
|
|
2
|
+
export class TruPredicate {
|
|
3
|
+
_breezePredicate = null;
|
|
4
|
+
constructor(field, operator, value, propertyQueryPath, overQuoted = false) {
|
|
5
|
+
if (typeof field === 'string') {
|
|
6
|
+
var args = propertyQueryPath?.slice(0);
|
|
7
|
+
args[args.length - 1] += field;
|
|
8
|
+
args.push(operator);
|
|
9
|
+
args.push(value);
|
|
10
|
+
this._breezePredicate = new breeze.Predicate(args);
|
|
11
|
+
this._breezePredicate.overQuoted = overQuoted;
|
|
12
|
+
}
|
|
13
|
+
else if (arguments[0].constructor === TruPredicate || arguments[0].constructor === BinaryPredicate || arguments[0].constructor === AndOrPredicate) {
|
|
14
|
+
this._breezePredicate = arguments[0];
|
|
15
|
+
}
|
|
16
|
+
else {
|
|
17
|
+
throw new TypeError('Unexpected parameter type <' + arguments[0].constructor + '>.');
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
handleOperator = (fieldOrPredicate, oper, operator, value) => {
|
|
21
|
+
var breezePredicate;
|
|
22
|
+
if (Array.isArray(fieldOrPredicate)) {
|
|
23
|
+
breezePredicate = new TruPredicate(fieldOrPredicate[0], fieldOrPredicate[1], fieldOrPredicate[2], []);
|
|
24
|
+
}
|
|
25
|
+
else if (fieldOrPredicate.constructor === TruPredicate || fieldOrPredicate.constructor === BinaryPredicate || fieldOrPredicate.constructor === AndOrPredicate) {
|
|
26
|
+
breezePredicate = fieldOrPredicate;
|
|
27
|
+
}
|
|
28
|
+
else {
|
|
29
|
+
throw new TypeError('Unexpected parameter type <' + fieldOrPredicate.constructor + '>.');
|
|
30
|
+
}
|
|
31
|
+
breezePredicate = oper(breezePredicate);
|
|
32
|
+
return new TruPredicate(breezePredicate, null, null, null);
|
|
33
|
+
};
|
|
34
|
+
and = (fieldOrPredicate, operator, value) => {
|
|
35
|
+
var that = this;
|
|
36
|
+
return this.handleOperator(fieldOrPredicate, function (p) { return that._breezePredicate.and(p); }, operator, value);
|
|
37
|
+
};
|
|
38
|
+
or = (fieldOrPredicate, operator, value) => {
|
|
39
|
+
var that = this;
|
|
40
|
+
return this.handleOperator(fieldOrPredicate, function (p) { return that._breezePredicate.and(p); }, operator, value);
|
|
41
|
+
};
|
|
42
|
+
not = () => {
|
|
43
|
+
var breezePredicate = this._breezePredicate.not();
|
|
44
|
+
return new TruPredicate(breezePredicate, null, null, null);
|
|
45
|
+
};
|
|
46
|
+
}
|
|
47
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJ1LXByZWRpY2F0ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RydS1jb21tb24tbGliL3NyYy9saWIvY2xhc3Nlcy90cnUtcHJlZGljYXRlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxjQUFjLEVBQUUsZUFBZSxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUV4RSxNQUFNLE9BQU8sWUFBWTtJQUN2QixnQkFBZ0IsR0FBUSxJQUFJLENBQUM7SUFFN0IsWUFBWSxLQUFVLEVBQUUsUUFBdUIsRUFBRSxLQUFVLEVBQUUsaUJBQXVDLEVBQUUsYUFBc0IsS0FBSztRQUMvSCxJQUFJLE9BQU8sS0FBSyxLQUFLLFFBQVEsRUFBRTtZQUM3QixJQUFJLElBQUksR0FBRyxpQkFBaUIsRUFBRSxLQUFLLENBQUMsQ0FBQyxDQUFrQixDQUFDO1lBQ3hELElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxJQUFJLEtBQUssQ0FBQztZQUMvQixJQUFJLENBQUMsSUFBSSxDQUFDLFFBQWtCLENBQUMsQ0FBQztZQUM5QixJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQ2pCLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxJQUFJLE1BQU0sQ0FBQyxTQUFTLENBQUMsSUFBa0IsQ0FBQyxDQUFDO1lBQ2pFLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxVQUFVLEdBQUcsVUFBVSxDQUFDO1NBQy9DO2FBQU0sSUFBSSxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsV0FBVyxLQUFLLFlBQVksSUFBSSxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsV0FBVyxLQUFLLGVBQWUsSUFBSSxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsV0FBVyxLQUFLLGNBQWMsRUFBRTtZQUNuSixJQUFJLENBQUMsZ0JBQWdCLEdBQUcsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDO1NBQ3RDO2FBQU07WUFDTCxNQUFNLElBQUksU0FBUyxDQUFDLDZCQUE2QixHQUFHLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDLENBQUM7U0FDdEY7SUFDSCxDQUFDO0lBRUQsY0FBYyxHQUFHLENBQUMsZ0JBQXFCLEVBQUUsSUFBb0IsRUFBRSxRQUFpQixFQUFFLEtBQVcsRUFBRSxFQUFFO1FBQy9GLElBQUksZUFBZSxDQUFDO1FBQ3BCLElBQUksS0FBSyxDQUFDLE9BQU8sQ0FBQyxnQkFBZ0IsQ0FBQyxFQUFFO1lBQ25DLGVBQWUsR0FBRyxJQUFJLFlBQVksQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDLENBQUMsRUFBRSxnQkFBZ0IsQ0FBQyxDQUFDLENBQUMsRUFBRSxnQkFBZ0IsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQztTQUN2RzthQUFNLElBQUksZ0JBQWdCLENBQUMsV0FBVyxLQUFLLFlBQVksSUFBSSxnQkFBZ0IsQ0FBQyxXQUFXLEtBQUssZUFBZSxJQUFJLGdCQUFnQixDQUFDLFdBQVcsS0FBSyxjQUFjLEVBQUU7WUFDL0osZUFBZSxHQUFHLGdCQUFnQixDQUFDO1NBQ3BDO2FBQU07WUFDTCxNQUFNLElBQUksU0FBUyxDQUFDLDZCQUE2QixHQUFHLGdCQUFnQixDQUFDLFdBQVcsR0FBRyxJQUFJLENBQUMsQ0FBQztTQUMxRjtRQUNELGVBQWUsR0FBRyxJQUFJLENBQUMsZUFBZSxDQUFDLENBQUM7UUFDeEMsT0FBTyxJQUFJLFlBQVksQ0FBQyxlQUFlLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLENBQUMsQ0FBQztJQUM3RCxDQUFDLENBQUE7SUFFRCxHQUFHLEdBQUcsQ0FBQyxnQkFBcUIsRUFBRSxRQUFpQixFQUFFLEtBQVcsRUFBRSxFQUFFO1FBQzlELElBQUksSUFBSSxHQUFHLElBQUksQ0FBQztRQUNoQixPQUFPLElBQUksQ0FBQyxjQUFjLENBQUMsZ0JBQWdCLEVBQUUsVUFBVSxDQUFDLElBQUksT0FBTyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLFFBQVEsRUFBRSxLQUFLLENBQUMsQ0FBQztJQUN2SCxDQUFDLENBQUE7SUFFRCxFQUFFLEdBQUcsQ0FBQyxnQkFBcUIsRUFBRSxRQUFpQixFQUFFLEtBQVcsRUFBRSxFQUFFO1FBQzdELElBQUksSUFBSSxHQUFHLElBQUksQ0FBQztRQUNoQixPQUFPLElBQUksQ0FBQyxjQUFjLENBQUMsZ0JBQWdCLEVBQUUsVUFBVSxDQUFDLElBQUksT0FBTyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLFFBQVEsRUFBRSxLQUFLLENBQUMsQ0FBQztJQUN2SCxDQUFDLENBQUE7SUFFRCxHQUFHLEdBQUcsR0FBRyxFQUFFO1FBQ1QsSUFBSSxlQUFlLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixDQUFDLEdBQUcsRUFBRSxDQUFDO1FBQ2xELE9BQU8sSUFBSSxZQUFZLENBQUMsZUFBZSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDN0QsQ0FBQyxDQUFBO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBbmRPclByZWRpY2F0ZSwgQmluYXJ5UHJlZGljYXRlLCBicmVlemUgfSBmcm9tIFwiYnJlZXplLWNsaWVudFwiO1xyXG5cclxuZXhwb3J0IGNsYXNzIFRydVByZWRpY2F0ZSB7XHJcbiAgX2JyZWV6ZVByZWRpY2F0ZTogYW55ID0gbnVsbDtcclxuXHJcbiAgY29uc3RydWN0b3IoZmllbGQ6IGFueSwgb3BlcmF0b3I6IHN0cmluZyB8IG51bGwsIHZhbHVlOiBhbnksIHByb3BlcnR5UXVlcnlQYXRoOiBBcnJheTxzdHJpbmc+IHwgbnVsbCwgb3ZlclF1b3RlZDogYm9vbGVhbiA9IGZhbHNlKSB7XHJcbiAgICBpZiAodHlwZW9mIGZpZWxkID09PSAnc3RyaW5nJykge1xyXG4gICAgICB2YXIgYXJncyA9IHByb3BlcnR5UXVlcnlQYXRoPy5zbGljZSgwKSBhcyBBcnJheTxzdHJpbmc+O1xyXG4gICAgICBhcmdzW2FyZ3MubGVuZ3RoIC0gMV0gKz0gZmllbGQ7XHJcbiAgICAgIGFyZ3MucHVzaChvcGVyYXRvciBhcyBzdHJpbmcpO1xyXG4gICAgICBhcmdzLnB1c2godmFsdWUpO1xyXG4gICAgICB0aGlzLl9icmVlemVQcmVkaWNhdGUgPSBuZXcgYnJlZXplLlByZWRpY2F0ZShhcmdzIGFzIEFycmF5PGFueT4pO1xyXG4gICAgICB0aGlzLl9icmVlemVQcmVkaWNhdGUub3ZlclF1b3RlZCA9IG92ZXJRdW90ZWQ7XHJcbiAgICB9IGVsc2UgaWYgKGFyZ3VtZW50c1swXS5jb25zdHJ1Y3RvciA9PT0gVHJ1UHJlZGljYXRlIHx8IGFyZ3VtZW50c1swXS5jb25zdHJ1Y3RvciA9PT0gQmluYXJ5UHJlZGljYXRlIHx8IGFyZ3VtZW50c1swXS5jb25zdHJ1Y3RvciA9PT0gQW5kT3JQcmVkaWNhdGUpIHtcclxuICAgICAgdGhpcy5fYnJlZXplUHJlZGljYXRlID0gYXJndW1lbnRzWzBdO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhyb3cgbmV3IFR5cGVFcnJvcignVW5leHBlY3RlZCBwYXJhbWV0ZXIgdHlwZSA8JyArIGFyZ3VtZW50c1swXS5jb25zdHJ1Y3RvciArICc+LicpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgaGFuZGxlT3BlcmF0b3IgPSAoZmllbGRPclByZWRpY2F0ZTogYW55LCBvcGVyOiAocDogYW55KSA9PiB7fSwgb3BlcmF0b3I/OiBzdHJpbmcsIHZhbHVlPzogYW55KSA9PiB7XHJcbiAgICB2YXIgYnJlZXplUHJlZGljYXRlO1xyXG4gICAgaWYgKEFycmF5LmlzQXJyYXkoZmllbGRPclByZWRpY2F0ZSkpIHtcclxuICAgICAgYnJlZXplUHJlZGljYXRlID0gbmV3IFRydVByZWRpY2F0ZShmaWVsZE9yUHJlZGljYXRlWzBdLCBmaWVsZE9yUHJlZGljYXRlWzFdLCBmaWVsZE9yUHJlZGljYXRlWzJdLCBbXSk7XHJcbiAgICB9IGVsc2UgaWYgKGZpZWxkT3JQcmVkaWNhdGUuY29uc3RydWN0b3IgPT09IFRydVByZWRpY2F0ZSB8fCBmaWVsZE9yUHJlZGljYXRlLmNvbnN0cnVjdG9yID09PSBCaW5hcnlQcmVkaWNhdGUgfHwgZmllbGRPclByZWRpY2F0ZS5jb25zdHJ1Y3RvciA9PT0gQW5kT3JQcmVkaWNhdGUpIHtcclxuICAgICAgYnJlZXplUHJlZGljYXRlID0gZmllbGRPclByZWRpY2F0ZTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoJ1VuZXhwZWN0ZWQgcGFyYW1ldGVyIHR5cGUgPCcgKyBmaWVsZE9yUHJlZGljYXRlLmNvbnN0cnVjdG9yICsgJz4uJyk7XHJcbiAgICB9XHJcbiAgICBicmVlemVQcmVkaWNhdGUgPSBvcGVyKGJyZWV6ZVByZWRpY2F0ZSk7XHJcbiAgICByZXR1cm4gbmV3IFRydVByZWRpY2F0ZShicmVlemVQcmVkaWNhdGUsIG51bGwsIG51bGwsIG51bGwpO1xyXG4gIH1cclxuXHJcbiAgYW5kID0gKGZpZWxkT3JQcmVkaWNhdGU6IGFueSwgb3BlcmF0b3I/OiBzdHJpbmcsIHZhbHVlPzogYW55KSA9PiB7XHJcbiAgICB2YXIgdGhhdCA9IHRoaXM7XHJcbiAgICByZXR1cm4gdGhpcy5oYW5kbGVPcGVyYXRvcihmaWVsZE9yUHJlZGljYXRlLCBmdW5jdGlvbiAocCkgeyByZXR1cm4gdGhhdC5fYnJlZXplUHJlZGljYXRlLmFuZChwKTsgfSwgb3BlcmF0b3IsIHZhbHVlKTtcclxuICB9XHJcblxyXG4gIG9yID0gKGZpZWxkT3JQcmVkaWNhdGU6IGFueSwgb3BlcmF0b3I/OiBzdHJpbmcsIHZhbHVlPzogYW55KSA9PiB7XHJcbiAgICB2YXIgdGhhdCA9IHRoaXM7XHJcbiAgICByZXR1cm4gdGhpcy5oYW5kbGVPcGVyYXRvcihmaWVsZE9yUHJlZGljYXRlLCBmdW5jdGlvbiAocCkgeyByZXR1cm4gdGhhdC5fYnJlZXplUHJlZGljYXRlLmFuZChwKTsgfSwgb3BlcmF0b3IsIHZhbHVlKTtcclxuICB9XHJcblxyXG4gIG5vdCA9ICgpID0+IHtcclxuICAgIHZhciBicmVlemVQcmVkaWNhdGUgPSB0aGlzLl9icmVlemVQcmVkaWNhdGUubm90KCk7XHJcbiAgICByZXR1cm4gbmV3IFRydVByZWRpY2F0ZShicmVlemVQcmVkaWNhdGUsIG51bGwsIG51bGwsIG51bGwpO1xyXG4gIH1cclxufVxyXG4iXX0=
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { TruPropertyConfigForeignKey } from './tru-property-config-foreign-key';
|
|
2
|
-
export class TruPropertyConfigCloudFile extends TruPropertyConfigForeignKey {
|
|
3
|
-
constructor() { super(); }
|
|
4
|
-
}
|
|
1
|
+
import { TruPropertyConfigForeignKey } from './tru-property-config-foreign-key';
|
|
2
|
+
export class TruPropertyConfigCloudFile extends TruPropertyConfigForeignKey {
|
|
3
|
+
constructor() { super(); }
|
|
4
|
+
}
|
|
5
5
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJ1LXByb3BlcnR5LWNvbmZpZy1jbG91ZC1maWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHJ1LWNvbW1vbi1saWIvc3JjL2xpYi9jbGFzc2VzL3RydS1wcm9wZXJ0eS1jb25maWctY2xvdWQtZmlsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUVoRixNQUFNLE9BQU8sMEJBQTJCLFNBQVEsMkJBQTJCO0lBQ3pFLGdCQUFnQixLQUFLLEVBQUUsQ0FBQSxDQUFDLENBQUM7Q0FFMUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBUcnVQcm9wZXJ0eUNvbmZpZ0ZvcmVpZ25LZXkgfSBmcm9tICcuL3RydS1wcm9wZXJ0eS1jb25maWctZm9yZWlnbi1rZXknO1xyXG5cclxuZXhwb3J0IGNsYXNzIFRydVByb3BlcnR5Q29uZmlnQ2xvdWRGaWxlIGV4dGVuZHMgVHJ1UHJvcGVydHlDb25maWdGb3JlaWduS2V5IHtcclxuICBjb25zdHJ1Y3RvcigpIHsgc3VwZXIoKSB9XHJcbiBcclxufVxyXG4iXX0=
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { TruPropertyConfigBase } from '../base-classes/tru-property-config-base';
|
|
2
|
+
export class TruPropertyConfigDate extends TruPropertyConfigBase {
|
|
3
|
+
constructor() { super(); }
|
|
4
|
+
minimumValue = undefined;
|
|
5
|
+
maximumValue = undefined;
|
|
6
|
+
}
|
|
7
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJ1LXByb3BlcnR5LWNvbmZpZy1kYXRlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHJ1LWNvbW1vbi1saWIvc3JjL2xpYi9jbGFzc2VzL3RydS1wcm9wZXJ0eS1jb25maWctZGF0ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSwwQ0FBMEMsQ0FBQztBQUVqRixNQUFNLE9BQU8scUJBQXNCLFNBQVEscUJBQXFCO0lBQzlELGdCQUFnQixLQUFLLEVBQUUsQ0FBQSxDQUFDLENBQUM7SUFFekIsWUFBWSxHQUF1QixTQUFTLENBQUM7SUFDN0MsWUFBWSxHQUF1QixTQUFTLENBQUM7Q0FDOUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBUcnVQcm9wZXJ0eUNvbmZpZ0Jhc2UgfSBmcm9tICcuLi9iYXNlLWNsYXNzZXMvdHJ1LXByb3BlcnR5LWNvbmZpZy1iYXNlJztcclxuXHJcbmV4cG9ydCBjbGFzcyBUcnVQcm9wZXJ0eUNvbmZpZ0RhdGUgZXh0ZW5kcyBUcnVQcm9wZXJ0eUNvbmZpZ0Jhc2Uge1xyXG4gIGNvbnN0cnVjdG9yKCkgeyBzdXBlcigpIH1cclxuXHJcbiAgbWluaW11bVZhbHVlOiBudW1iZXIgfCB1bmRlZmluZWQgPSB1bmRlZmluZWQ7XHJcbiAgbWF4aW11bVZhbHVlOiBudW1iZXIgfCB1bmRlZmluZWQgPSB1bmRlZmluZWQ7XHJcbn1cclxuIl19
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { TruPropertyConfigBase } from '../base-classes/tru-property-config-base';
|
|
2
|
+
export class TruPropertyConfigDecimal extends TruPropertyConfigBase {
|
|
3
|
+
constructor() { super(); }
|
|
4
|
+
decimalPlaces = undefined;
|
|
5
|
+
totalDigits = undefined;
|
|
6
|
+
minimumValue = undefined;
|
|
7
|
+
maximumValue = undefined;
|
|
8
|
+
}
|
|
9
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJ1LXByb3BlcnR5LWNvbmZpZy1kZWNpbWFsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHJ1LWNvbW1vbi1saWIvc3JjL2xpYi9jbGFzc2VzL3RydS1wcm9wZXJ0eS1jb25maWctZGVjaW1hbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSwwQ0FBMEMsQ0FBQztBQUVqRixNQUFNLE9BQU8sd0JBQXlCLFNBQVEscUJBQXFCO0lBQ2pFLGdCQUFnQixLQUFLLEVBQUUsQ0FBQSxDQUFDLENBQUM7SUFDekIsYUFBYSxHQUF1QixTQUFTLENBQUM7SUFDOUMsV0FBVyxHQUF1QixTQUFTLENBQUM7SUFDNUMsWUFBWSxHQUF1QixTQUFTLENBQUM7SUFDN0MsWUFBWSxHQUF1QixTQUFTLENBQUM7Q0FDOUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBUcnVQcm9wZXJ0eUNvbmZpZ0Jhc2UgfSBmcm9tICcuLi9iYXNlLWNsYXNzZXMvdHJ1LXByb3BlcnR5LWNvbmZpZy1iYXNlJztcclxuXHJcbmV4cG9ydCBjbGFzcyBUcnVQcm9wZXJ0eUNvbmZpZ0RlY2ltYWwgZXh0ZW5kcyBUcnVQcm9wZXJ0eUNvbmZpZ0Jhc2Uge1xyXG4gIGNvbnN0cnVjdG9yKCkgeyBzdXBlcigpIH1cclxuICBkZWNpbWFsUGxhY2VzOiBudW1iZXIgfCB1bmRlZmluZWQgPSB1bmRlZmluZWQ7XHJcbiAgdG90YWxEaWdpdHM6IG51bWJlciB8IHVuZGVmaW5lZCA9IHVuZGVmaW5lZDtcclxuICBtaW5pbXVtVmFsdWU6IG51bWJlciB8IHVuZGVmaW5lZCA9IHVuZGVmaW5lZDtcclxuICBtYXhpbXVtVmFsdWU6IG51bWJlciB8IHVuZGVmaW5lZCA9IHVuZGVmaW5lZDtcclxufVxyXG4iXX0=
|
|
@@ -1,8 +1,6 @@
|
|
|
1
|
-
import { TruPropertyConfigBase } from '../base-classes/tru-property-config-base';
|
|
2
|
-
export class TruPropertyConfigFile extends TruPropertyConfigBase {
|
|
3
|
-
constructor() {
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
}
|
|
8
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJ1LXByb3BlcnR5LWNvbmZpZy1maWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHJ1LWNvbW1vbi1saWIvc3JjL2xpYi9jbGFzc2VzL3RydS1wcm9wZXJ0eS1jb25maWctZmlsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSwwQ0FBMEMsQ0FBQztBQUVqRixNQUFNLE9BQU8scUJBQXNCLFNBQVEscUJBQXFCO0lBQzlEO1FBQWdCLEtBQUssRUFBRSxDQUFBO1FBRXZCLFlBQU8sR0FBdUIsU0FBUyxDQUFDO0lBRmhCLENBQUM7Q0FHMUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBUcnVQcm9wZXJ0eUNvbmZpZ0Jhc2UgfSBmcm9tICcuLi9iYXNlLWNsYXNzZXMvdHJ1LXByb3BlcnR5LWNvbmZpZy1iYXNlJztcclxuXHJcbmV4cG9ydCBjbGFzcyBUcnVQcm9wZXJ0eUNvbmZpZ0ZpbGUgZXh0ZW5kcyBUcnVQcm9wZXJ0eUNvbmZpZ0Jhc2Uge1xyXG4gIGNvbnN0cnVjdG9yKCkgeyBzdXBlcigpIH1cclxuXHJcbiAgbWF4U2l6ZTogbnVtYmVyIHwgdW5kZWZpbmVkID0gdW5kZWZpbmVkO1xyXG59XHJcbiJdfQ==
|
|
1
|
+
import { TruPropertyConfigBase } from '../base-classes/tru-property-config-base';
|
|
2
|
+
export class TruPropertyConfigFile extends TruPropertyConfigBase {
|
|
3
|
+
constructor() { super(); }
|
|
4
|
+
maxSize = undefined;
|
|
5
|
+
}
|
|
6
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJ1LXByb3BlcnR5LWNvbmZpZy1maWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHJ1LWNvbW1vbi1saWIvc3JjL2xpYi9jbGFzc2VzL3RydS1wcm9wZXJ0eS1jb25maWctZmlsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSwwQ0FBMEMsQ0FBQztBQUVqRixNQUFNLE9BQU8scUJBQXNCLFNBQVEscUJBQXFCO0lBQzlELGdCQUFnQixLQUFLLEVBQUUsQ0FBQSxDQUFDLENBQUM7SUFFekIsT0FBTyxHQUF1QixTQUFTLENBQUM7Q0FDekMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBUcnVQcm9wZXJ0eUNvbmZpZ0Jhc2UgfSBmcm9tICcuLi9iYXNlLWNsYXNzZXMvdHJ1LXByb3BlcnR5LWNvbmZpZy1iYXNlJztcclxuXHJcbmV4cG9ydCBjbGFzcyBUcnVQcm9wZXJ0eUNvbmZpZ0ZpbGUgZXh0ZW5kcyBUcnVQcm9wZXJ0eUNvbmZpZ0Jhc2Uge1xyXG4gIGNvbnN0cnVjdG9yKCkgeyBzdXBlcigpIH1cclxuXHJcbiAgbWF4U2l6ZTogbnVtYmVyIHwgdW5kZWZpbmVkID0gdW5kZWZpbmVkO1xyXG59XHJcbiJdfQ==
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { TruPropertyConfigBase } from '../base-classes/tru-property-config-base';
|
|
2
|
+
export class TruPropertyConfigForeignKey extends TruPropertyConfigBase {
|
|
3
|
+
constructor() { super(); }
|
|
4
|
+
table = undefined;
|
|
5
|
+
foreignTableName = undefined;
|
|
6
|
+
choicesQuery = undefined;
|
|
7
|
+
}
|
|
8
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJ1LXByb3BlcnR5LWNvbmZpZy1mb3JlaWduLWtleS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RydS1jb21tb24tbGliL3NyYy9saWIvY2xhc3Nlcy90cnUtcHJvcGVydHktY29uZmlnLWZvcmVpZ24ta2V5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDBDQUEwQyxDQUFDO0FBRWpGLE1BQU0sT0FBTywyQkFBNEIsU0FBUSxxQkFBcUI7SUFDcEUsZ0JBQWdCLEtBQUssRUFBRSxDQUFBLENBQUMsQ0FBQztJQUN6QixLQUFLLEdBQXVCLFNBQVMsQ0FBQztJQUN0QyxnQkFBZ0IsR0FBdUIsU0FBUyxDQUFDO0lBQ2pELFlBQVksR0FBdUIsU0FBUyxDQUFDO0NBQzlDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgVHJ1UHJvcGVydHlDb25maWdCYXNlIH0gZnJvbSAnLi4vYmFzZS1jbGFzc2VzL3RydS1wcm9wZXJ0eS1jb25maWctYmFzZSc7XHJcblxyXG5leHBvcnQgY2xhc3MgVHJ1UHJvcGVydHlDb25maWdGb3JlaWduS2V5IGV4dGVuZHMgVHJ1UHJvcGVydHlDb25maWdCYXNlIHtcclxuICBjb25zdHJ1Y3RvcigpIHsgc3VwZXIoKSB9XHJcbiAgdGFibGU6IHN0cmluZyB8IHVuZGVmaW5lZCA9IHVuZGVmaW5lZDtcclxuICBmb3JlaWduVGFibGVOYW1lOiBzdHJpbmcgfCB1bmRlZmluZWQgPSB1bmRlZmluZWQ7XHJcbiAgY2hvaWNlc1F1ZXJ5OiBzdHJpbmcgfCB1bmRlZmluZWQgPSB1bmRlZmluZWQ7XHJcbn1cclxuIl19
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { TruPropertyConfigBase } from '../base-classes/tru-property-config-base';
|
|
2
|
+
export class TruPropertyConfigInteger extends TruPropertyConfigBase {
|
|
3
|
+
constructor() { super(); }
|
|
4
|
+
minimumValue = undefined;
|
|
5
|
+
maximumValue = undefined;
|
|
6
|
+
}
|
|
7
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJ1LXByb3BlcnR5LWNvbmZpZy1pbnRlZ2VyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHJ1LWNvbW1vbi1saWIvc3JjL2xpYi9jbGFzc2VzL3RydS1wcm9wZXJ0eS1jb25maWctaW50ZWdlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSwwQ0FBMEMsQ0FBQztBQUVqRixNQUFNLE9BQU8sd0JBQXlCLFNBQVEscUJBQXFCO0lBQ2pFLGdCQUFnQixLQUFLLEVBQUUsQ0FBQSxDQUFDLENBQUM7SUFFekIsWUFBWSxHQUF1QixTQUFTLENBQUM7SUFDN0MsWUFBWSxHQUF1QixTQUFTLENBQUM7Q0FDOUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBUcnVQcm9wZXJ0eUNvbmZpZ0Jhc2UgfSBmcm9tICcuLi9iYXNlLWNsYXNzZXMvdHJ1LXByb3BlcnR5LWNvbmZpZy1iYXNlJztcclxuXHJcbmV4cG9ydCBjbGFzcyBUcnVQcm9wZXJ0eUNvbmZpZ0ludGVnZXIgZXh0ZW5kcyBUcnVQcm9wZXJ0eUNvbmZpZ0Jhc2Uge1xyXG4gIGNvbnN0cnVjdG9yKCkgeyBzdXBlcigpIH1cclxuICBcclxuICBtaW5pbXVtVmFsdWU6IG51bWJlciB8IHVuZGVmaW5lZCA9IHVuZGVmaW5lZDtcclxuICBtYXhpbXVtVmFsdWU6IG51bWJlciB8IHVuZGVmaW5lZCA9IHVuZGVmaW5lZDtcclxufVxyXG4iXX0=
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { TruPropertyConfigText } from './tru-property-config-text';
|
|
2
|
+
export class TruPropertyConfigPassword extends TruPropertyConfigText {
|
|
3
|
+
constructor() { super(); }
|
|
4
|
+
encryptionType = undefined;
|
|
5
|
+
}
|
|
6
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJ1LXByb3BlcnR5LWNvbmZpZy1wYXNzd29yZC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RydS1jb21tb24tbGliL3NyYy9saWIvY2xhc3Nlcy90cnUtcHJvcGVydHktY29uZmlnLXBhc3N3b3JkLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBRW5FLE1BQU0sT0FBTyx5QkFBMEIsU0FBUSxxQkFBcUI7SUFDbEUsZ0JBQWdCLEtBQUssRUFBRSxDQUFBLENBQUMsQ0FBQztJQUV6QixjQUFjLEdBQXVCLFNBQVMsQ0FBQztDQUNoRCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFRydVByb3BlcnR5Q29uZmlnVGV4dCB9IGZyb20gJy4vdHJ1LXByb3BlcnR5LWNvbmZpZy10ZXh0JztcclxuXHJcbmV4cG9ydCBjbGFzcyBUcnVQcm9wZXJ0eUNvbmZpZ1Bhc3N3b3JkIGV4dGVuZHMgVHJ1UHJvcGVydHlDb25maWdUZXh0IHtcclxuICBjb25zdHJ1Y3RvcigpIHsgc3VwZXIoKSB9XHJcblxyXG4gIGVuY3J5cHRpb25UeXBlOiBzdHJpbmcgfCB1bmRlZmluZWQgPSB1bmRlZmluZWQ7XHJcbn1cclxuIl19
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { TruPropertyConfigBase } from '../base-classes/tru-property-config-base';
|
|
2
|
+
export class TruPropertyConfigPercentage extends TruPropertyConfigBase {
|
|
3
|
+
constructor() { super(); }
|
|
4
|
+
minimumValue = undefined;
|
|
5
|
+
maximumValue = undefined;
|
|
6
|
+
}
|
|
7
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJ1LXByb3BlcnR5LWNvbmZpZy1wZXJjZW50YWdlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHJ1LWNvbW1vbi1saWIvc3JjL2xpYi9jbGFzc2VzL3RydS1wcm9wZXJ0eS1jb25maWctcGVyY2VudGFnZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSwwQ0FBMEMsQ0FBQztBQUVqRixNQUFNLE9BQU8sMkJBQTRCLFNBQVEscUJBQXFCO0lBQ3BFLGdCQUFnQixLQUFLLEVBQUUsQ0FBQSxDQUFDLENBQUM7SUFFekIsWUFBWSxHQUF1QixTQUFTLENBQUM7SUFDN0MsWUFBWSxHQUF1QixTQUFTLENBQUM7Q0FDOUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBUcnVQcm9wZXJ0eUNvbmZpZ0Jhc2UgfSBmcm9tICcuLi9iYXNlLWNsYXNzZXMvdHJ1LXByb3BlcnR5LWNvbmZpZy1iYXNlJztcclxuXHJcbmV4cG9ydCBjbGFzcyBUcnVQcm9wZXJ0eUNvbmZpZ1BlcmNlbnRhZ2UgZXh0ZW5kcyBUcnVQcm9wZXJ0eUNvbmZpZ0Jhc2Uge1xyXG4gIGNvbnN0cnVjdG9yKCkgeyBzdXBlcigpIH1cclxuICBcclxuICBtaW5pbXVtVmFsdWU6IG51bWJlciB8IHVuZGVmaW5lZCA9IHVuZGVmaW5lZDtcclxuICBtYXhpbXVtVmFsdWU6IG51bWJlciB8IHVuZGVmaW5lZCA9IHVuZGVmaW5lZDtcclxufVxyXG4iXX0=
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { TruPropertyConfigBase } from '../base-classes/tru-property-config-base';
|
|
2
|
+
export class TruPropertyConfigScientific extends TruPropertyConfigBase {
|
|
3
|
+
constructor() { super(); }
|
|
4
|
+
minimumValue = undefined;
|
|
5
|
+
maximumValue = undefined;
|
|
6
|
+
}
|
|
7
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJ1LXByb3BlcnR5LWNvbmZpZy1zY2llbnRpZmljLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHJ1LWNvbW1vbi1saWIvc3JjL2xpYi9jbGFzc2VzL3RydS1wcm9wZXJ0eS1jb25maWctc2NpZW50aWZpYy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSwwQ0FBMEMsQ0FBQztBQUVqRixNQUFNLE9BQU8sMkJBQTRCLFNBQVEscUJBQXFCO0lBQ3BFLGdCQUFnQixLQUFLLEVBQUUsQ0FBQSxDQUFDLENBQUM7SUFFekIsWUFBWSxHQUF1QixTQUFTLENBQUM7SUFDN0MsWUFBWSxHQUF1QixTQUFTLENBQUM7Q0FDOUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBUcnVQcm9wZXJ0eUNvbmZpZ0Jhc2UgfSBmcm9tICcuLi9iYXNlLWNsYXNzZXMvdHJ1LXByb3BlcnR5LWNvbmZpZy1iYXNlJztcclxuXHJcbmV4cG9ydCBjbGFzcyBUcnVQcm9wZXJ0eUNvbmZpZ1NjaWVudGlmaWMgZXh0ZW5kcyBUcnVQcm9wZXJ0eUNvbmZpZ0Jhc2Uge1xyXG4gIGNvbnN0cnVjdG9yKCkgeyBzdXBlcigpIH1cclxuICBcclxuICBtaW5pbXVtVmFsdWU6IG51bWJlciB8IHVuZGVmaW5lZCA9IHVuZGVmaW5lZDtcclxuICBtYXhpbXVtVmFsdWU6IG51bWJlciB8IHVuZGVmaW5lZCA9IHVuZGVmaW5lZDtcclxufVxyXG4iXX0=
|
|
@@ -1,8 +1,6 @@
|
|
|
1
|
-
import { TruPropertyConfigText } from './tru-property-config-text';
|
|
2
|
-
export class TruPropertyConfigTextChoices extends TruPropertyConfigText {
|
|
3
|
-
constructor() {
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
}
|
|
8
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJ1LXByb3BlcnR5LWNvbmZpZy10ZXh0LWNob2ljZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90cnUtY29tbW9uLWxpYi9zcmMvbGliL2NsYXNzZXMvdHJ1LXByb3BlcnR5LWNvbmZpZy10ZXh0LWNob2ljZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFFbkUsTUFBTSxPQUFPLDRCQUE2QixTQUFRLHFCQUFxQjtJQUNyRTtRQUFnQixLQUFLLEVBQUUsQ0FBQTtRQUN2QixZQUFPLEdBQVEsRUFBRSxDQUFDO0lBRE0sQ0FBQztDQUUxQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFRydVByb3BlcnR5Q29uZmlnVGV4dCB9IGZyb20gJy4vdHJ1LXByb3BlcnR5LWNvbmZpZy10ZXh0JztcclxuXHJcbmV4cG9ydCBjbGFzcyBUcnVQcm9wZXJ0eUNvbmZpZ1RleHRDaG9pY2VzIGV4dGVuZHMgVHJ1UHJvcGVydHlDb25maWdUZXh0IHtcclxuICBjb25zdHJ1Y3RvcigpIHsgc3VwZXIoKSB9XHJcbiAgY2hvaWNlczogYW55ID0ge307XHJcbn1cclxuIl19
|
|
1
|
+
import { TruPropertyConfigText } from './tru-property-config-text';
|
|
2
|
+
export class TruPropertyConfigTextChoices extends TruPropertyConfigText {
|
|
3
|
+
constructor() { super(); }
|
|
4
|
+
choices = {};
|
|
5
|
+
}
|
|
6
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJ1LXByb3BlcnR5LWNvbmZpZy10ZXh0LWNob2ljZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90cnUtY29tbW9uLWxpYi9zcmMvbGliL2NsYXNzZXMvdHJ1LXByb3BlcnR5LWNvbmZpZy10ZXh0LWNob2ljZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFFbkUsTUFBTSxPQUFPLDRCQUE2QixTQUFRLHFCQUFxQjtJQUNyRSxnQkFBZ0IsS0FBSyxFQUFFLENBQUEsQ0FBQyxDQUFDO0lBQ3pCLE9BQU8sR0FBUSxFQUFFLENBQUM7Q0FDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBUcnVQcm9wZXJ0eUNvbmZpZ1RleHQgfSBmcm9tICcuL3RydS1wcm9wZXJ0eS1jb25maWctdGV4dCc7XHJcblxyXG5leHBvcnQgY2xhc3MgVHJ1UHJvcGVydHlDb25maWdUZXh0Q2hvaWNlcyBleHRlbmRzIFRydVByb3BlcnR5Q29uZmlnVGV4dCB7XHJcbiAgY29uc3RydWN0b3IoKSB7IHN1cGVyKCkgfVxyXG4gIGNob2ljZXM6IGFueSA9IHt9O1xyXG59XHJcbiJdfQ==
|