@tsi-developpement/tsi-shared-ui 0.0.1
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/esm2022/lib/consts/app-providers.mjs +11 -0
- package/esm2022/lib/consts/html-template.const.mjs +40 -0
- package/esm2022/lib/consts/index.mjs +8 -0
- package/esm2022/lib/consts/localization-key.mjs +12 -0
- package/esm2022/lib/consts/locals.const.mjs +8 -0
- package/esm2022/lib/consts/queryParamNames.const.mjs +11 -0
- package/esm2022/lib/consts/themes.mjs +5 -0
- package/esm2022/lib/consts/tsi-consts.mjs +45 -0
- package/esm2022/lib/end-points/authorization-endpoints.mjs +35 -0
- package/esm2022/lib/end-points/baseuri.mjs +11 -0
- package/esm2022/lib/end-points/endpoints.mjs +208 -0
- package/esm2022/lib/end-points/import-export-endpoint.mjs +35 -0
- package/esm2022/lib/end-points/index.mjs +7 -0
- package/esm2022/lib/end-points/presentation-settings-endpoints.mjs +13 -0
- package/esm2022/lib/end-points/reporting-endpoints.mjs +55 -0
- package/esm2022/lib/end-points/shared-endpoint.mjs +12 -0
- package/esm2022/lib/end-points/user-identity-endpoints.mjs +61 -0
- package/esm2022/lib/enums/Language.mjs +9 -0
- package/esm2022/lib/enums/auto-complete.mjs +6 -0
- package/esm2022/lib/enums/button-type.enum.mjs +6 -0
- package/esm2022/lib/enums/claim-types.mjs +15 -0
- package/esm2022/lib/enums/code-format.mjs +6 -0
- package/esm2022/lib/enums/component-use-modes-enum.mjs +19 -0
- package/esm2022/lib/enums/css-units.mjs +10 -0
- package/esm2022/lib/enums/decimal-format.mjs +8 -0
- package/esm2022/lib/enums/display-types.mjs +35 -0
- package/esm2022/lib/enums/filter-operator-type.mjs +34 -0
- package/esm2022/lib/enums/form-validation-error.mjs +7 -0
- package/esm2022/lib/enums/grid-selection-mode.mjs +7 -0
- package/esm2022/lib/enums/grid-sort-mode.mjs +7 -0
- package/esm2022/lib/enums/http-method-types.mjs +6 -0
- package/esm2022/lib/enums/index.mjs +25 -0
- package/esm2022/lib/enums/input-types.mjs +20 -0
- package/esm2022/lib/enums/layout-orientation.mjs +6 -0
- package/esm2022/lib/enums/logout-reason-enum.mjs +8 -0
- package/esm2022/lib/enums/modal-size-enum.mjs +10 -0
- package/esm2022/lib/enums/report-type.mjs +9 -0
- package/esm2022/lib/enums/status.mjs +9 -0
- package/esm2022/lib/enums/text-box-type.mjs +7 -0
- package/esm2022/lib/enums/tooltipPosition.enum.mjs +8 -0
- package/esm2022/lib/enums/tsi-component-enum.mjs +40 -0
- package/esm2022/lib/enums/type-import.mjs +6 -0
- package/esm2022/lib/functions/array.functions.mjs +8 -0
- package/esm2022/lib/functions/index.mjs +3 -0
- package/esm2022/lib/functions/modal-open.function.mjs +69 -0
- package/esm2022/lib/guards/admin.guard.mjs +37 -0
- package/esm2022/lib/guards/auth.guard.mjs +30 -0
- package/esm2022/lib/guards/index.mjs +4 -0
- package/esm2022/lib/guards/permission.guard.mjs +32 -0
- package/esm2022/lib/interfaces/configuration/configuration.mjs +2 -0
- package/esm2022/lib/interfaces/generic-form/generic-form.mjs +118 -0
- package/esm2022/lib/interfaces/generic-types/dictionary.mjs +2 -0
- package/esm2022/lib/interfaces/grid/grid-configuration.mjs +2 -0
- package/esm2022/lib/interfaces/index.mjs +12 -0
- package/esm2022/lib/interfaces/modal/dynamic.component.mjs +7 -0
- package/esm2022/lib/interfaces/modal/modal-size.mjs +2 -0
- package/esm2022/lib/interfaces/pagination/pagination-base.mjs +2 -0
- package/esm2022/lib/interfaces/select-list/combo-status-model.mjs +10 -0
- package/esm2022/lib/interfaces/settings/app-settings.mjs +2 -0
- package/esm2022/lib/interfaces/styles/css-size-property.mjs +17 -0
- package/esm2022/lib/interfaces/translation/translation.mjs +2 -0
- package/esm2022/lib/models/Notes/Note.mjs +7 -0
- package/esm2022/lib/models/application/configuration/endpoint-infos.mjs +3 -0
- package/esm2022/lib/models/application/configuration/entity-delete-behavior.mjs +2 -0
- package/esm2022/lib/models/authorization/authorization-token-mapper.mjs +24 -0
- package/esm2022/lib/models/authorization/authorization-token.mjs +2 -0
- package/esm2022/lib/models/common/component-descriminator.mjs +2 -0
- package/esm2022/lib/models/common/entity-properties.mjs +2 -0
- package/esm2022/lib/models/common/entity-validations.mjs +2 -0
- package/esm2022/lib/models/common/event-schema.mjs +2 -0
- package/esm2022/lib/models/common/key-value-pair.mjs +2 -0
- package/esm2022/lib/models/entity-info/entity-info.mjs +29 -0
- package/esm2022/lib/models/filter/filter-by-existing-values.mjs +7 -0
- package/esm2022/lib/models/filter/paged-result-request-base.mjs +13 -0
- package/esm2022/lib/models/filter/search-field.mjs +2 -0
- package/esm2022/lib/models/import-export/import-export.mjs +15 -0
- package/esm2022/lib/models/index.mjs +38 -0
- package/esm2022/lib/models/journalisation-application/journalisation-application.mjs +10 -0
- package/esm2022/lib/models/journalisation-application/status-history.mjs +3 -0
- package/esm2022/lib/models/layout/layout-config.mjs +2 -0
- package/esm2022/lib/models/modal/bs-modal.mjs +6 -0
- package/esm2022/lib/models/presentation-settings/presentation-settings.mjs +8 -0
- package/esm2022/lib/models/progress-bar/progress-bar-create-request.mjs +2 -0
- package/esm2022/lib/models/progress-bar/progress-bar-response.mjs +8 -0
- package/esm2022/lib/models/progress-bar/progress-bar-update-request.mjs +3 -0
- package/esm2022/lib/models/remote-services-utility/subscription-result.mjs +17 -0
- package/esm2022/lib/models/reporting/json-data-connection.mjs +2 -0
- package/esm2022/lib/models/reporting/optional-endpoints.mjs +2 -0
- package/esm2022/lib/models/reporting/report-template-response.mjs +2 -0
- package/esm2022/lib/models/reporting/report-to-edit-template.mjs +2 -0
- package/esm2022/lib/models/reporting/report-to-print.mjs +2 -0
- package/esm2022/lib/models/reporting/report-to-template.mjs +2 -0
- package/esm2022/lib/models/settings/devise.mjs +3 -0
- package/esm2022/lib/models/settings/fichier.mjs +6 -0
- package/esm2022/lib/models/settings/type-fichier.mjs +3 -0
- package/esm2022/lib/models/tsi-card/tsi-card.mjs +3 -0
- package/esm2022/lib/models/user-identity/login-response.mjs +7 -0
- package/esm2022/lib/models/user-identity/tenant.mjs +3 -0
- package/esm2022/lib/models/user-identity/user-identity.mjs +3 -0
- package/esm2022/lib/models/workflow/workflow.mjs +14 -0
- package/esm2022/lib/package-initializer.mjs +7 -0
- package/esm2022/lib/pipes/cut-label.pipe.mjs +23 -0
- package/esm2022/lib/pipes/index.mjs +8 -0
- package/esm2022/lib/pipes/localize.pipe.mjs +51 -0
- package/esm2022/lib/pipes/modal-label.pipe.mjs +37 -0
- package/esm2022/lib/pipes/shorten.pipe.mjs +20 -0
- package/esm2022/lib/pipes/to-number.pipe.mjs +20 -0
- package/esm2022/lib/pipes/tsi-currency.pipe.mjs +29 -0
- package/esm2022/lib/pipes/tsi-decimal.pipe.mjs +21 -0
- package/esm2022/lib/providers/index.mjs +2 -0
- package/esm2022/lib/providers/shared-ui-tsi.provider.mjs +15 -0
- package/esm2022/lib/routes/admin.routes.mjs +5 -0
- package/esm2022/lib/routes/app.routes.mjs +7 -0
- package/esm2022/lib/routes/identity.routes.mjs +4 -0
- package/esm2022/lib/routes/index.mjs +5 -0
- package/esm2022/lib/routes/manage-reporting.routes.mjs +5 -0
- package/esm2022/lib/services/Component-Finder/tsi-component-finder.service.mjs +22 -0
- package/esm2022/lib/services/Import-Export/modele-import.service.mjs +59 -0
- package/esm2022/lib/services/Note/Note.service.mjs +35 -0
- package/esm2022/lib/services/UserIdentity/identity-platform-authentication.service.mjs +29 -0
- package/esm2022/lib/services/UserIdentity/user-identity.service.mjs +40 -0
- package/esm2022/lib/services/application/api-explorer.service.mjs +24 -0
- package/esm2022/lib/services/application/app.layout.service.mjs +97 -0
- package/esm2022/lib/services/application/parametres-application-parambase.service.mjs +20 -0
- package/esm2022/lib/services/authorization/authorization.service.mjs +124 -0
- package/esm2022/lib/services/authorization/identity-manager.service.mjs +97 -0
- package/esm2022/lib/services/base/crud-base.service.mjs +38 -0
- package/esm2022/lib/services/configuration/entity-configuration.service.mjs +49 -0
- package/esm2022/lib/services/currentUser/currentUser.service.mjs +49 -0
- package/esm2022/lib/services/date-helper.service.mjs +133 -0
- package/esm2022/lib/services/dialog-data.service.mjs +32 -0
- package/esm2022/lib/services/fichier/fichier-upload.service.mjs +44 -0
- package/esm2022/lib/services/fichier/fichier.service.mjs +20 -0
- package/esm2022/lib/services/formula.service.mjs +20 -0
- package/esm2022/lib/services/generator/html-template-generator.service.mjs +196 -0
- package/esm2022/lib/services/index.mjs +41 -0
- package/esm2022/lib/services/journalisation/journalisation-application.service.mjs +23 -0
- package/esm2022/lib/services/journalisation/status-history.service.mjs +23 -0
- package/esm2022/lib/services/layout/layout-helper.service.mjs +72 -0
- package/esm2022/lib/services/modal/tsi-bs-modal.service.mjs +37 -0
- package/esm2022/lib/services/modal/tsi-modal.service.mjs +21 -0
- package/esm2022/lib/services/module-code/module-code.service.mjs +31 -0
- package/esm2022/lib/services/module-main-parameter.service.mjs +31 -0
- package/esm2022/lib/services/notification/error-response-manager.service.mjs +57 -0
- package/esm2022/lib/services/notification/tsi-confirmation.service.mjs +37 -0
- package/esm2022/lib/services/notification/tsi-message.service.mjs +54 -0
- package/esm2022/lib/services/notification/tsi-notification.service.mjs +47 -0
- package/esm2022/lib/services/presentation-setting/presentation-designer-base.service.mjs +26 -0
- package/esm2022/lib/services/presentation-setting/presentation-designer.service.mjs +58 -0
- package/esm2022/lib/services/presentation-setting/presentation-setting.service.mjs +39 -0
- package/esm2022/lib/services/progress-bar/progress-bar-helper.service.mjs +39 -0
- package/esm2022/lib/services/progress-bar/progress-bar.service.mjs +30 -0
- package/esm2022/lib/services/record-info-popup.service.mjs +21 -0
- package/esm2022/lib/services/reporting/dashboard-module.service.mjs +24 -0
- package/esm2022/lib/services/reporting/reporting.service.mjs +111 -0
- package/esm2022/lib/services/settings/app-settings.service.mjs +47 -0
- package/esm2022/lib/services/settings/keyboard-shortcut.service.mjs +30 -0
- package/esm2022/lib/services/status/entityStatus.service.mjs +21 -0
- package/esm2022/lib/services/translation/translation.service.mjs +71 -0
- package/esm2022/lib/services/validation/entity-validations.service.mjs +21 -0
- package/esm2022/lib/services/validation/generic-validation-state.service.mjs +30 -0
- package/esm2022/lib/services/validation/input-registry.service.mjs +25 -0
- package/esm2022/lib/services/workflow/workflow-configuration.service.mjs +80 -0
- package/esm2022/lib/shared.module.mjs +643 -0
- package/esm2022/lib/tsi-base/components/app-base/app-base.component.mjs +101 -0
- package/esm2022/lib/tsi-base/components/tsi-base/tsi-base.component.mjs +25 -0
- package/esm2022/lib/tsi-base/components/tsi-form-base/tsi-form-base.component.mjs +645 -0
- package/esm2022/lib/tsi-base/components/tsi-list-base/tsi-list-base.component.mjs +514 -0
- package/esm2022/lib/tsi-base/index.mjs +6 -0
- package/esm2022/lib/tsi-base/tsi-input-base/tsi-input-base.component.mjs +141 -0
- package/esm2022/lib/tsi-components/alert-import-message/alert-import-message.component.mjs +19 -0
- package/esm2022/lib/tsi-components/button-components/Tsi-Submit-Button/tsi-submit-button.component.mjs +40 -0
- package/esm2022/lib/tsi-components/button-components/tsi-button/tsi-button.component.mjs +75 -0
- package/esm2022/lib/tsi-components/create-or-edit-entity-informations/create-or-edit-entity-informations.component.mjs +173 -0
- package/esm2022/lib/tsi-components/create-or-edit-modele-import/create-or-edit-modele-import.component.mjs +201 -0
- package/esm2022/lib/tsi-components/index.mjs +80 -0
- package/esm2022/lib/tsi-components/input-components/editable-grid/editable-grid.component.mjs +643 -0
- package/esm2022/lib/tsi-components/input-components/tsi-checkbox/tsi-checkbox.component.mjs +120 -0
- package/esm2022/lib/tsi-components/input-components/tsi-currency-other-input/tsi-currency-other-input.component.mjs +53 -0
- package/esm2022/lib/tsi-components/input-components/tsi-currency-societe-input/tsi-currency-societe-input.component.mjs +62 -0
- package/esm2022/lib/tsi-components/input-components/tsi-date-picker/tsi-date-picker.component.mjs +116 -0
- package/esm2022/lib/tsi-components/input-components/tsi-decimal-input/tsi-decimal-input.component.mjs +51 -0
- package/esm2022/lib/tsi-components/input-components/tsi-file-manager/tsi-file-manager.component.mjs +195 -0
- package/esm2022/lib/tsi-components/input-components/tsi-formula-box/tsi-formula-box.component.mjs +54 -0
- package/esm2022/lib/tsi-components/input-components/tsi-integer/tsi-integer.component.mjs +55 -0
- package/esm2022/lib/tsi-components/input-components/tsi-radio-button/tsi-radio-button.component.mjs +43 -0
- package/esm2022/lib/tsi-components/input-components/tsi-rate-input/tsi-rate-input.component.mjs +56 -0
- package/esm2022/lib/tsi-components/input-components/tsi-search-combo/tsi-search-combo.component.mjs +649 -0
- package/esm2022/lib/tsi-components/input-components/tsi-text-area/tsi-text-area.component.mjs +44 -0
- package/esm2022/lib/tsi-components/input-components/tsi-text-box/tsi-text-box.component.mjs +50 -0
- package/esm2022/lib/tsi-components/input-components/tsi-time-picker/tsi-time-picker.component.mjs +65 -0
- package/esm2022/lib/tsi-components/logout-popup/logout-popup.component.mjs +12 -0
- package/esm2022/lib/tsi-components/manage-import-export/manage-import-export.component.mjs +435 -0
- package/esm2022/lib/tsi-components/manage-reporting/add-report-popup/add-report-popup.component.mjs +148 -0
- package/esm2022/lib/tsi-components/manage-reporting/manage-reporting.component.mjs +1075 -0
- package/esm2022/lib/tsi-components/message-components/tsi-error-message/tsi-error-message.component.mjs +31 -0
- package/esm2022/lib/tsi-components/message-components/tsi-info-message/tsi-info-message.component.mjs +24 -0
- package/esm2022/lib/tsi-components/message-components/tsi-redirection-message/tsi-redirection-message.component.mjs +19 -0
- package/esm2022/lib/tsi-components/message-components/tsi-success-message/tsi-success-message.component.mjs +22 -0
- package/esm2022/lib/tsi-components/modal-component/modal.component.mjs +138 -0
- package/esm2022/lib/tsi-components/modal-loader/modal-loader.component.mjs +58 -0
- package/esm2022/lib/tsi-components/output-components/display-nested-prop/display-nested-prop.component.mjs +32 -0
- package/esm2022/lib/tsi-components/output-components/tsi-checkbox-display/tsi-checkbox-display.component.mjs +18 -0
- package/esm2022/lib/tsi-components/output-components/tsi-currency-other-display/tsi-currency-other-display.component.mjs +17 -0
- package/esm2022/lib/tsi-components/output-components/tsi-currency-societe-display/tsi-currency-societe-display.component.mjs +57 -0
- package/esm2022/lib/tsi-components/output-components/tsi-date-display/tsi-date-display.component.mjs +27 -0
- package/esm2022/lib/tsi-components/output-components/tsi-decimal-display/tsi-decimal-display.component.mjs +25 -0
- package/esm2022/lib/tsi-components/output-components/tsi-display-grid/tsi-display-grid.component.mjs +139 -0
- package/esm2022/lib/tsi-components/output-components/tsi-generic-grid/tsi-generic-grid.component.mjs +1509 -0
- package/esm2022/lib/tsi-components/output-components/tsi-image-display/tsi-image-display.component.mjs +144 -0
- package/esm2022/lib/tsi-components/output-components/tsi-integer-display/tsi-integer-display.component.mjs +13 -0
- package/esm2022/lib/tsi-components/output-components/tsi-label/tsi-label.component.mjs +24 -0
- package/esm2022/lib/tsi-components/output-components/tsi-label-legend/tsi-label-legend.component.mjs +18 -0
- package/esm2022/lib/tsi-components/output-components/tsi-legend/tsi-legend.component.mjs +20 -0
- package/esm2022/lib/tsi-components/output-components/tsi-paragraph/tsi-paragraph.component.mjs +17 -0
- package/esm2022/lib/tsi-components/output-components/tsi-rate-display/tsi-rate-display.component.mjs +30 -0
- package/esm2022/lib/tsi-components/output-components/tsi-time-display/tsi-time-display.component.mjs +17 -0
- package/esm2022/lib/tsi-components/output-components/tsi-view-grid/tsi-view-grid.component.mjs +427 -0
- package/esm2022/lib/tsi-components/reporting/reporting.component.mjs +667 -0
- package/esm2022/lib/tsi-components/spinner/spinner.component.mjs +15 -0
- package/esm2022/lib/tsi-components/tsi-bubble-info/tsi-bubble-info.component.mjs +21 -0
- package/esm2022/lib/tsi-components/tsi-calender/context-menu/context-menu.component.mjs +46 -0
- package/esm2022/lib/tsi-components/tsi-calender/tsi-calender.component.mjs +297 -0
- package/esm2022/lib/tsi-components/tsi-card/tsi-card.component.mjs +64 -0
- package/esm2022/lib/tsi-components/tsi-card-list/tsi-card-list.component.mjs +112 -0
- package/esm2022/lib/tsi-components/tsi-change-password/tsi-change-password.component.mjs +39 -0
- package/esm2022/lib/tsi-components/tsi-code-generator/tsi-code-generator.component.mjs +83 -0
- package/esm2022/lib/tsi-components/tsi-divider/tsi-divider.component.mjs +18 -0
- package/esm2022/lib/tsi-components/tsi-form/tsi-form.component.mjs +305 -0
- package/esm2022/lib/tsi-components/tsi-form-modal-footer/tsi-form-modal-footer.component.mjs +15 -0
- package/esm2022/lib/tsi-components/tsi-generic-crud/tsi-generic-crud.component.mjs +883 -0
- package/esm2022/lib/tsi-components/tsi-generic-form/tsi-generic-form.component.mjs +149 -0
- package/esm2022/lib/tsi-components/tsi-kanban/tsi-kanban.component.mjs +231 -0
- package/esm2022/lib/tsi-components/tsi-log-event-history/tsi-log-event-history.component.mjs +119 -0
- package/esm2022/lib/tsi-components/tsi-modal/tsi-modal.component.mjs +25 -0
- package/esm2022/lib/tsi-components/tsi-modal-footer/tsi-modal-footer.component.mjs +119 -0
- package/esm2022/lib/tsi-components/tsi-modal-header/tsi-modal-header.component.mjs +54 -0
- package/esm2022/lib/tsi-components/tsi-notes-avertir/tsi-notes-avertir.component.mjs +27 -0
- package/esm2022/lib/tsi-components/tsi-notes-createoredit/tsi-notes.component.mjs +123 -0
- package/esm2022/lib/tsi-components/tsi-notes-grid/tsi-notes-grid.component.mjs +41 -0
- package/esm2022/lib/tsi-components/tsi-popup-text-viewer/tsi-popup-text-viewer.component.mjs +187 -0
- package/esm2022/lib/tsi-components/tsi-progress-bar/tsi-progress-bar.component.mjs +170 -0
- package/esm2022/lib/tsi-components/tsi-search-box/tsi-search-box.component.mjs +142 -0
- package/esm2022/lib/tsi-components/tsi-send-mail/tsi-send-mail.component.mjs +37 -0
- package/esm2022/lib/tsi-components/tsi-tab-panel/tsi-tab-panel.component.mjs +52 -0
- package/esm2022/lib/tsi-components/tsi-tab-view/tsi-tab-view.component.mjs +46 -0
- package/esm2022/lib/tsi-components/tsi-tenants/tsi-tenants.component.mjs +122 -0
- package/esm2022/lib/tsi-components/tsi-tooltip/tsi-tooltip.component.mjs +21 -0
- package/esm2022/lib/tsi-components/tsi-upload-fiche/tsi-upload-fiche.component.mjs +186 -0
- package/esm2022/lib/tsi-components/tsi-upload-grid/tsi-upload-grid.component.mjs +54 -0
- package/esm2022/lib/tsi-directives/auto-select.directive.mjs +33 -0
- package/esm2022/lib/tsi-directives/busy.directive.mjs +32 -0
- package/esm2022/lib/tsi-directives/dynamic-component-loader/ad.directive.mjs +16 -0
- package/esm2022/lib/tsi-directives/index.mjs +8 -0
- package/esm2022/lib/tsi-directives/module-main-parameter.directive.mjs +16 -0
- package/esm2022/lib/tsi-directives/presentation-designer-base.directive.mjs +238 -0
- package/esm2022/lib/tsi-directives/presentation-designer.directive.mjs +205 -0
- package/esm2022/lib/tsi-directives/validation.directive.mjs +85 -0
- package/esm2022/lib/tsi-helpers/compoent-reference.helper.mjs +7 -0
- package/esm2022/lib/tsi-helpers/date-helper.mjs +21 -0
- package/esm2022/lib/tsi-helpers/export-excel.helper.mjs +40 -0
- package/esm2022/lib/tsi-helpers/filter-helper.mjs +126 -0
- package/esm2022/lib/tsi-helpers/grid-col-style.helper.mjs +7 -0
- package/esm2022/lib/tsi-helpers/guid.helper.mjs +19 -0
- package/esm2022/lib/tsi-helpers/helpers.mjs +9 -0
- package/esm2022/lib/tsi-helpers/index.mjs +13 -0
- package/esm2022/lib/tsi-helpers/mapping-helper.mjs +10 -0
- package/esm2022/lib/tsi-helpers/object.helper.mjs +6 -0
- package/esm2022/lib/tsi-helpers/primeng-translate-config.mjs +55 -0
- package/esm2022/lib/tsi-helpers/storage-manager.mjs +33 -0
- package/esm2022/lib/tsi-helpers/type-registry.helper.mjs +49 -0
- package/esm2022/lib/types/enum-description.type.mjs +2 -0
- package/esm2022/lib/types/index.mjs +3 -0
- package/esm2022/lib/types/time-only.mjs +42 -0
- package/esm2022/public-api.mjs +21 -0
- package/esm2022/tsi-developpement-tsi-shared-ui.mjs +5 -0
- package/esm2022/tsi-tsi-shared-ui.mjs +5 -0
- package/fesm2022/tsi-developpement-tsi-shared-ui.mjs +17486 -0
- package/fesm2022/tsi-developpement-tsi-shared-ui.mjs.map +1 -0
- package/fesm2022/tsi-tsi-shared-ui.mjs +17486 -0
- package/fesm2022/tsi-tsi-shared-ui.mjs.map +1 -0
- package/index.d.ts +5 -0
- package/lib/consts/app-providers.d.ts +4 -0
- package/lib/consts/html-template.const.d.ts +12 -0
- package/lib/consts/index.d.ts +7 -0
- package/lib/consts/localization-key.d.ts +11 -0
- package/lib/consts/locals.const.d.ts +7 -0
- package/lib/consts/queryParamNames.const.d.ts +10 -0
- package/lib/consts/themes.d.ts +4 -0
- package/lib/consts/tsi-consts.d.ts +40 -0
- package/lib/end-points/authorization-endpoints.d.ts +31 -0
- package/lib/end-points/baseuri.d.ts +10 -0
- package/lib/end-points/endpoints.d.ts +205 -0
- package/lib/end-points/import-export-endpoint.d.ts +33 -0
- package/lib/end-points/index.d.ts +6 -0
- package/lib/end-points/presentation-settings-endpoints.d.ts +11 -0
- package/lib/end-points/reporting-endpoints.d.ts +53 -0
- package/lib/end-points/shared-endpoint.d.ts +9 -0
- package/lib/end-points/user-identity-endpoints.d.ts +59 -0
- package/lib/enums/Language.d.ts +9 -0
- package/lib/enums/auto-complete.d.ts +4 -0
- package/lib/enums/button-type.enum.d.ts +4 -0
- package/lib/enums/claim-types.d.ts +13 -0
- package/lib/enums/code-format.d.ts +4 -0
- package/lib/enums/component-use-modes-enum.d.ts +17 -0
- package/lib/enums/css-units.d.ts +8 -0
- package/lib/enums/decimal-format.d.ts +6 -0
- package/lib/enums/display-types.d.ts +17 -0
- package/lib/enums/filter-operator-type.d.ts +18 -0
- package/lib/enums/form-validation-error.d.ts +11 -0
- package/lib/enums/grid-selection-mode.d.ts +5 -0
- package/lib/enums/grid-sort-mode.d.ts +5 -0
- package/lib/enums/http-method-types.d.ts +4 -0
- package/lib/enums/index.d.ts +24 -0
- package/lib/enums/input-types.d.ts +18 -0
- package/lib/enums/layout-orientation.d.ts +4 -0
- package/lib/enums/logout-reason-enum.d.ts +6 -0
- package/lib/enums/modal-size-enum.d.ts +10 -0
- package/lib/enums/report-type.d.ts +7 -0
- package/lib/enums/status.d.ts +7 -0
- package/lib/enums/text-box-type.d.ts +5 -0
- package/lib/enums/tooltipPosition.enum.d.ts +6 -0
- package/lib/enums/tsi-component-enum.d.ts +37 -0
- package/lib/enums/type-import.d.ts +4 -0
- package/lib/functions/array.functions.d.ts +1 -0
- package/lib/functions/index.d.ts +1 -0
- package/lib/functions/modal-open.function.d.ts +9 -0
- package/lib/guards/admin.guard.d.ts +14 -0
- package/lib/guards/auth.guard.d.ts +12 -0
- package/lib/guards/index.d.ts +3 -0
- package/lib/guards/permission.guard.d.ts +2 -0
- package/lib/interfaces/configuration/configuration.d.ts +10 -0
- package/lib/interfaces/generic-form/generic-form.d.ts +45 -0
- package/lib/interfaces/generic-types/dictionary.d.ts +3 -0
- package/lib/interfaces/grid/grid-configuration.d.ts +116 -0
- package/lib/interfaces/index.d.ts +11 -0
- package/lib/interfaces/modal/dynamic.component.d.ts +18 -0
- package/lib/interfaces/modal/modal-size.d.ts +4 -0
- package/lib/interfaces/pagination/pagination-base.d.ts +46 -0
- package/lib/interfaces/select-list/combo-status-model.d.ts +8 -0
- package/lib/interfaces/settings/app-settings.d.ts +4 -0
- package/lib/interfaces/styles/css-size-property.d.ts +10 -0
- package/lib/interfaces/translation/translation.d.ts +10 -0
- package/lib/models/Notes/Note.d.ts +25 -0
- package/lib/models/application/configuration/endpoint-infos.d.ts +6 -0
- package/lib/models/application/configuration/entity-delete-behavior.d.ts +6 -0
- package/lib/models/authorization/authorization-token-mapper.d.ts +4 -0
- package/lib/models/authorization/authorization-token.d.ts +16 -0
- package/lib/models/common/component-descriminator.d.ts +4 -0
- package/lib/models/common/entity-properties.d.ts +5 -0
- package/lib/models/common/entity-validations.d.ts +7 -0
- package/lib/models/common/event-schema.d.ts +6 -0
- package/lib/models/common/key-value-pair.d.ts +4 -0
- package/lib/models/entity-info/entity-info.d.ts +37 -0
- package/lib/models/filter/filter-by-existing-values.d.ts +6 -0
- package/lib/models/filter/paged-result-request-base.d.ts +16 -0
- package/lib/models/filter/search-field.d.ts +35 -0
- package/lib/models/import-export/import-export.d.ts +28 -0
- package/lib/models/index.d.ts +37 -0
- package/lib/models/journalisation-application/journalisation-application.d.ts +39 -0
- package/lib/models/journalisation-application/status-history.d.ts +12 -0
- package/lib/models/layout/layout-config.d.ts +3 -0
- package/lib/models/modal/bs-modal.d.ts +5 -0
- package/lib/models/presentation-settings/presentation-settings.d.ts +14 -0
- package/lib/models/progress-bar/progress-bar-create-request.d.ts +8 -0
- package/lib/models/progress-bar/progress-bar-response.d.ts +10 -0
- package/lib/models/progress-bar/progress-bar-update-request.d.ts +9 -0
- package/lib/models/remote-services-utility/subscription-result.d.ts +15 -0
- package/lib/models/reporting/json-data-connection.d.ts +6 -0
- package/lib/models/reporting/optional-endpoints.d.ts +8 -0
- package/lib/models/reporting/report-template-response.d.ts +13 -0
- package/lib/models/reporting/report-to-edit-template.d.ts +29 -0
- package/lib/models/reporting/report-to-print.d.ts +18 -0
- package/lib/models/reporting/report-to-template.d.ts +19 -0
- package/lib/models/settings/devise.d.ts +9 -0
- package/lib/models/settings/fichier.d.ts +14 -0
- package/lib/models/settings/type-fichier.d.ts +4 -0
- package/lib/models/tsi-card/tsi-card.d.ts +9 -0
- package/lib/models/user-identity/login-response.d.ts +8 -0
- package/lib/models/user-identity/tenant.d.ts +5 -0
- package/lib/models/user-identity/user-identity.d.ts +5 -0
- package/lib/models/workflow/workflow.d.ts +36 -0
- package/lib/package-initializer.d.ts +1 -0
- package/lib/pipes/cut-label.pipe.d.ts +7 -0
- package/lib/pipes/index.d.ts +7 -0
- package/lib/pipes/localize.pipe.d.ts +11 -0
- package/lib/pipes/modal-label.pipe.d.ts +10 -0
- package/lib/pipes/shorten.pipe.d.ts +7 -0
- package/lib/pipes/to-number.pipe.d.ts +7 -0
- package/lib/pipes/tsi-currency.pipe.d.ts +10 -0
- package/lib/pipes/tsi-decimal.pipe.d.ts +7 -0
- package/lib/providers/index.d.ts +1 -0
- package/lib/providers/shared-ui-tsi.provider.d.ts +8 -0
- package/lib/routes/admin.routes.d.ts +4 -0
- package/lib/routes/app.routes.d.ts +6 -0
- package/lib/routes/identity.routes.d.ts +3 -0
- package/lib/routes/index.d.ts +4 -0
- package/lib/routes/manage-reporting.routes.d.ts +4 -0
- package/lib/services/Component-Finder/tsi-component-finder.service.d.ts +10 -0
- package/lib/services/Import-Export/modele-import.service.d.ts +21 -0
- package/lib/services/Note/Note.service.d.ts +15 -0
- package/lib/services/UserIdentity/identity-platform-authentication.service.d.ts +13 -0
- package/lib/services/UserIdentity/user-identity.service.d.ts +15 -0
- package/lib/services/application/api-explorer.service.d.ts +13 -0
- package/lib/services/application/app.layout.service.d.ts +47 -0
- package/lib/services/application/parametres-application-parambase.service.d.ts +10 -0
- package/lib/services/authorization/authorization.service.d.ts +46 -0
- package/lib/services/authorization/identity-manager.service.d.ts +23 -0
- package/lib/services/base/crud-base.service.d.ts +20 -0
- package/lib/services/configuration/entity-configuration.service.d.ts +22 -0
- package/lib/services/currentUser/currentUser.service.d.ts +26 -0
- package/lib/services/date-helper.service.d.ts +32 -0
- package/lib/services/dialog-data.service.d.ts +12 -0
- package/lib/services/fichier/fichier-upload.service.d.ts +15 -0
- package/lib/services/fichier/fichier.service.d.ts +10 -0
- package/lib/services/formula.service.d.ts +10 -0
- package/lib/services/generator/html-template-generator.service.d.ts +28 -0
- package/lib/services/index.d.ts +40 -0
- package/lib/services/journalisation/journalisation-application.service.d.ts +12 -0
- package/lib/services/journalisation/status-history.service.d.ts +12 -0
- package/lib/services/layout/layout-helper.service.d.ts +25 -0
- package/lib/services/modal/tsi-bs-modal.service.d.ts +16 -0
- package/lib/services/modal/tsi-modal.service.d.ts +9 -0
- package/lib/services/module-code/module-code.service.d.ts +18 -0
- package/lib/services/module-main-parameter.service.d.ts +12 -0
- package/lib/services/notification/error-response-manager.service.d.ts +13 -0
- package/lib/services/notification/tsi-confirmation.service.d.ts +11 -0
- package/lib/services/notification/tsi-message.service.d.ts +13 -0
- package/lib/services/notification/tsi-notification.service.d.ts +18 -0
- package/lib/services/presentation-setting/presentation-designer-base.service.d.ts +14 -0
- package/lib/services/presentation-setting/presentation-designer.service.d.ts +19 -0
- package/lib/services/presentation-setting/presentation-setting.service.d.ts +16 -0
- package/lib/services/progress-bar/progress-bar-helper.service.d.ts +19 -0
- package/lib/services/progress-bar/progress-bar.service.d.ts +16 -0
- package/lib/services/record-info-popup.service.d.ts +10 -0
- package/lib/services/reporting/dashboard-module.service.d.ts +11 -0
- package/lib/services/reporting/reporting.service.d.ts +32 -0
- package/lib/services/settings/app-settings.service.d.ts +13 -0
- package/lib/services/settings/keyboard-shortcut.service.d.ts +9 -0
- package/lib/services/status/entityStatus.service.d.ts +11 -0
- package/lib/services/translation/translation.service.d.ts +20 -0
- package/lib/services/validation/entity-validations.service.d.ts +10 -0
- package/lib/services/validation/generic-validation-state.service.d.ts +15 -0
- package/lib/services/validation/input-registry.service.d.ts +11 -0
- package/lib/services/workflow/workflow-configuration.service.d.ts +28 -0
- package/lib/shared.module.d.ts +141 -0
- package/lib/tsi-base/components/app-base/app-base.component.d.ts +28 -0
- package/lib/tsi-base/components/tsi-base/tsi-base.component.d.ts +11 -0
- package/lib/tsi-base/components/tsi-form-base/tsi-form-base.component.d.ts +118 -0
- package/lib/tsi-base/components/tsi-list-base/tsi-list-base.component.d.ts +85 -0
- package/lib/tsi-base/index.d.ts +5 -0
- package/lib/tsi-base/tsi-input-base/tsi-input-base.component.d.ts +34 -0
- package/lib/tsi-components/alert-import-message/alert-import-message.component.d.ts +10 -0
- package/lib/tsi-components/button-components/Tsi-Submit-Button/tsi-submit-button.component.d.ts +16 -0
- package/lib/tsi-components/button-components/tsi-button/tsi-button.component.d.ts +26 -0
- package/lib/tsi-components/create-or-edit-entity-informations/create-or-edit-entity-informations.component.d.ts +31 -0
- package/lib/tsi-components/create-or-edit-modele-import/create-or-edit-modele-import.component.d.ts +52 -0
- package/lib/tsi-components/index.d.ts +79 -0
- package/lib/tsi-components/input-components/editable-grid/editable-grid.component.d.ts +127 -0
- package/lib/tsi-components/input-components/tsi-checkbox/tsi-checkbox.component.d.ts +30 -0
- package/lib/tsi-components/input-components/tsi-currency-other-input/tsi-currency-other-input.component.d.ts +18 -0
- package/lib/tsi-components/input-components/tsi-currency-societe-input/tsi-currency-societe-input.component.d.ts +21 -0
- package/lib/tsi-components/input-components/tsi-date-picker/tsi-date-picker.component.d.ts +38 -0
- package/lib/tsi-components/input-components/tsi-decimal-input/tsi-decimal-input.component.d.ts +14 -0
- package/lib/tsi-components/input-components/tsi-file-manager/tsi-file-manager.component.d.ts +45 -0
- package/lib/tsi-components/input-components/tsi-formula-box/tsi-formula-box.component.d.ts +17 -0
- package/lib/tsi-components/input-components/tsi-integer/tsi-integer.component.d.ts +19 -0
- package/lib/tsi-components/input-components/tsi-radio-button/tsi-radio-button.component.d.ts +16 -0
- package/lib/tsi-components/input-components/tsi-rate-input/tsi-rate-input.component.d.ts +16 -0
- package/lib/tsi-components/input-components/tsi-search-combo/tsi-search-combo.component.d.ts +92 -0
- package/lib/tsi-components/input-components/tsi-text-area/tsi-text-area.component.d.ts +17 -0
- package/lib/tsi-components/input-components/tsi-text-box/tsi-text-box.component.d.ts +21 -0
- package/lib/tsi-components/input-components/tsi-time-picker/tsi-time-picker.component.d.ts +23 -0
- package/lib/tsi-components/logout-popup/logout-popup.component.d.ts +5 -0
- package/lib/tsi-components/manage-import-export/manage-import-export.component.d.ts +64 -0
- package/lib/tsi-components/manage-reporting/add-report-popup/add-report-popup.component.d.ts +151 -0
- package/lib/tsi-components/manage-reporting/manage-reporting.component.d.ts +109 -0
- package/lib/tsi-components/message-components/tsi-error-message/tsi-error-message.component.d.ts +15 -0
- package/lib/tsi-components/message-components/tsi-info-message/tsi-info-message.component.d.ts +13 -0
- package/lib/tsi-components/message-components/tsi-redirection-message/tsi-redirection-message.component.d.ts +9 -0
- package/lib/tsi-components/message-components/tsi-success-message/tsi-success-message.component.d.ts +13 -0
- package/lib/tsi-components/modal-component/modal.component.d.ts +25 -0
- package/lib/tsi-components/modal-loader/modal-loader.component.d.ts +27 -0
- package/lib/tsi-components/output-components/display-nested-prop/display-nested-prop.component.d.ts +14 -0
- package/lib/tsi-components/output-components/tsi-checkbox-display/tsi-checkbox-display.component.d.ts +6 -0
- package/lib/tsi-components/output-components/tsi-currency-other-display/tsi-currency-other-display.component.d.ts +7 -0
- package/lib/tsi-components/output-components/tsi-currency-societe-display/tsi-currency-societe-display.component.d.ts +19 -0
- package/lib/tsi-components/output-components/tsi-date-display/tsi-date-display.component.d.ts +10 -0
- package/lib/tsi-components/output-components/tsi-decimal-display/tsi-decimal-display.component.d.ts +9 -0
- package/lib/tsi-components/output-components/tsi-display-grid/tsi-display-grid.component.d.ts +41 -0
- package/lib/tsi-components/output-components/tsi-generic-grid/tsi-generic-grid.component.d.ts +231 -0
- package/lib/tsi-components/output-components/tsi-image-display/tsi-image-display.component.d.ts +46 -0
- package/lib/tsi-components/output-components/tsi-integer-display/tsi-integer-display.component.d.ts +6 -0
- package/lib/tsi-components/output-components/tsi-label/tsi-label.component.d.ts +8 -0
- package/lib/tsi-components/output-components/tsi-label-legend/tsi-label-legend.component.d.ts +6 -0
- package/lib/tsi-components/output-components/tsi-legend/tsi-legend.component.d.ts +9 -0
- package/lib/tsi-components/output-components/tsi-paragraph/tsi-paragraph.component.d.ts +6 -0
- package/lib/tsi-components/output-components/tsi-rate-display/tsi-rate-display.component.d.ts +10 -0
- package/lib/tsi-components/output-components/tsi-time-display/tsi-time-display.component.d.ts +7 -0
- package/lib/tsi-components/output-components/tsi-view-grid/tsi-view-grid.component.d.ts +97 -0
- package/lib/tsi-components/reporting/reporting.component.d.ts +103 -0
- package/lib/tsi-components/spinner/spinner.component.d.ts +8 -0
- package/lib/tsi-components/tsi-bubble-info/tsi-bubble-info.component.d.ts +9 -0
- package/lib/tsi-components/tsi-calender/context-menu/context-menu.component.d.ts +25 -0
- package/lib/tsi-components/tsi-calender/tsi-calender.component.d.ts +50 -0
- package/lib/tsi-components/tsi-card/tsi-card.component.d.ts +25 -0
- package/lib/tsi-components/tsi-card-list/tsi-card-list.component.d.ts +35 -0
- package/lib/tsi-components/tsi-change-password/tsi-change-password.component.d.ts +21 -0
- package/lib/tsi-components/tsi-code-generator/tsi-code-generator.component.d.ts +23 -0
- package/lib/tsi-components/tsi-divider/tsi-divider.component.d.ts +6 -0
- package/lib/tsi-components/tsi-form/tsi-form.component.d.ts +91 -0
- package/lib/tsi-components/tsi-form-modal-footer/tsi-form-modal-footer.component.d.ts +8 -0
- package/lib/tsi-components/tsi-generic-crud/tsi-generic-crud.component.d.ts +156 -0
- package/lib/tsi-components/tsi-generic-form/tsi-generic-form.component.d.ts +28 -0
- package/lib/tsi-components/tsi-kanban/tsi-kanban.component.d.ts +68 -0
- package/lib/tsi-components/tsi-log-event-history/tsi-log-event-history.component.d.ts +35 -0
- package/lib/tsi-components/tsi-modal/tsi-modal.component.d.ts +10 -0
- package/lib/tsi-components/tsi-modal-footer/tsi-modal-footer.component.d.ts +38 -0
- package/lib/tsi-components/tsi-modal-header/tsi-modal-header.component.d.ts +19 -0
- package/lib/tsi-components/tsi-notes-avertir/tsi-notes-avertir.component.d.ts +13 -0
- package/lib/tsi-components/tsi-notes-createoredit/tsi-notes.component.d.ts +21 -0
- package/lib/tsi-components/tsi-notes-grid/tsi-notes-grid.component.d.ts +12 -0
- package/lib/tsi-components/tsi-popup-text-viewer/tsi-popup-text-viewer.component.d.ts +41 -0
- package/lib/tsi-components/tsi-progress-bar/tsi-progress-bar.component.d.ts +38 -0
- package/lib/tsi-components/tsi-search-box/tsi-search-box.component.d.ts +44 -0
- package/lib/tsi-components/tsi-send-mail/tsi-send-mail.component.d.ts +21 -0
- package/lib/tsi-components/tsi-tab-panel/tsi-tab-panel.component.d.ts +18 -0
- package/lib/tsi-components/tsi-tab-view/tsi-tab-view.component.d.ts +17 -0
- package/lib/tsi-components/tsi-tenants/tsi-tenants.component.d.ts +39 -0
- package/lib/tsi-components/tsi-tooltip/tsi-tooltip.component.d.ts +9 -0
- package/lib/tsi-components/tsi-upload-fiche/tsi-upload-fiche.component.d.ts +35 -0
- package/lib/tsi-components/tsi-upload-grid/tsi-upload-grid.component.d.ts +13 -0
- package/lib/tsi-directives/auto-select.directive.d.ts +9 -0
- package/lib/tsi-directives/busy.directive.d.ts +11 -0
- package/lib/tsi-directives/dynamic-component-loader/ad.directive.d.ts +8 -0
- package/lib/tsi-directives/index.d.ts +7 -0
- package/lib/tsi-directives/module-main-parameter.directive.d.ts +8 -0
- package/lib/tsi-directives/presentation-designer-base.directive.d.ts +41 -0
- package/lib/tsi-directives/presentation-designer.directive.d.ts +37 -0
- package/lib/tsi-directives/validation.directive.d.ts +18 -0
- package/lib/tsi-helpers/compoent-reference.helper.d.ts +5 -0
- package/lib/tsi-helpers/date-helper.d.ts +6 -0
- package/lib/tsi-helpers/export-excel.helper.d.ts +5 -0
- package/lib/tsi-helpers/filter-helper.d.ts +12 -0
- package/lib/tsi-helpers/grid-col-style.helper.d.ts +5 -0
- package/lib/tsi-helpers/guid.helper.d.ts +6 -0
- package/lib/tsi-helpers/helpers.d.ts +4 -0
- package/lib/tsi-helpers/index.d.ts +12 -0
- package/lib/tsi-helpers/mapping-helper.d.ts +5 -0
- package/lib/tsi-helpers/object.helper.d.ts +3 -0
- package/lib/tsi-helpers/primeng-translate-config.d.ts +54 -0
- package/lib/tsi-helpers/storage-manager.d.ts +8 -0
- package/lib/tsi-helpers/type-registry.helper.d.ts +34 -0
- package/lib/types/enum-description.type.d.ts +3 -0
- package/lib/types/index.d.ts +2 -0
- package/lib/types/time-only.d.ts +17 -0
- package/package.json +24 -0
- package/public-api.d.ts +17 -0
package/esm2022/lib/tsi-components/input-components/tsi-file-manager/tsi-file-manager.component.mjs
ADDED
|
@@ -0,0 +1,195 @@
|
|
|
1
|
+
import { Component, EventEmitter, Input, Output, ViewEncapsulation } from '@angular/core';
|
|
2
|
+
import { TsiInputBase } from '../../../tsi-base/tsi-input-base/tsi-input-base.component';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
import * as i1 from "../../../pipes/localize.pipe";
|
|
5
|
+
import * as i2 from "../../../services/notification/tsi-notification.service";
|
|
6
|
+
import * as i3 from "@angular/platform-browser";
|
|
7
|
+
import * as i4 from "@angular/common";
|
|
8
|
+
import * as i5 from "primeng/button";
|
|
9
|
+
import * as i6 from "primeng/api";
|
|
10
|
+
import * as i7 from "primeng/fileupload";
|
|
11
|
+
export class TsiFileManagerComponent extends TsiInputBase {
|
|
12
|
+
/* ngAfterViewInit() {
|
|
13
|
+
if (this.showSelectButton && this.fileUploadInput) {
|
|
14
|
+
this.fileUploadInput.nativeElement.style.display = 'none';
|
|
15
|
+
}
|
|
16
|
+
} */
|
|
17
|
+
constructor(localize, notificationService, domSanitizer) {
|
|
18
|
+
super();
|
|
19
|
+
this.localize = localize;
|
|
20
|
+
this.notificationService = notificationService;
|
|
21
|
+
this.domSanitizer = domSanitizer;
|
|
22
|
+
this.name = '';
|
|
23
|
+
this.accept = '';
|
|
24
|
+
this.maxFileSize = 10485760;
|
|
25
|
+
this.multiple = false;
|
|
26
|
+
this.exploreOnDownload = false;
|
|
27
|
+
this.showUploadButton = false;
|
|
28
|
+
this.showCancelButton = false;
|
|
29
|
+
this.showDownloadButton = false;
|
|
30
|
+
this.chooseIcon = '';
|
|
31
|
+
this.chooseLabel = '';
|
|
32
|
+
this.showSelectButton = true;
|
|
33
|
+
this.showFileUpload = true;
|
|
34
|
+
this.onSelectFileManager = new EventEmitter();
|
|
35
|
+
this.onClear = new EventEmitter();
|
|
36
|
+
this.onRemove = new EventEmitter();
|
|
37
|
+
this.inputFieldChange = new EventEmitter();
|
|
38
|
+
this.fileNameChange = new EventEmitter();
|
|
39
|
+
this.imageUrl = null;
|
|
40
|
+
this.fileSizeError = '';
|
|
41
|
+
}
|
|
42
|
+
getFileExtension(fileName) {
|
|
43
|
+
return fileName?.split('.')?.pop();
|
|
44
|
+
}
|
|
45
|
+
onFileSelect(event) {
|
|
46
|
+
const files = event.files;
|
|
47
|
+
// this.convertFileToBase64(files[0]).then((base64String: string) => {
|
|
48
|
+
// this.inputField = base64String;
|
|
49
|
+
// });
|
|
50
|
+
const reader = new FileReader();
|
|
51
|
+
reader.onload = () => {
|
|
52
|
+
this.inputField = reader.result.split(',')[1];
|
|
53
|
+
};
|
|
54
|
+
reader.onerror = (error) => {
|
|
55
|
+
};
|
|
56
|
+
reader.readAsDataURL(files[0]);
|
|
57
|
+
this.fileName = files[0].name;
|
|
58
|
+
const fileName = this.fileName;
|
|
59
|
+
if (files[0].size > this.maxFileSize) {
|
|
60
|
+
this.notificationService.warn(`
|
|
61
|
+
${this.localize.transform("tsi_file_upload_auto_validation_max_length_detail_1")}
|
|
62
|
+
${(files[0].size / (1024 * 1024)).toFixed(2)}
|
|
63
|
+
${this.localize.transform("tsi_file_upload_auto_validation_max_length_detail_2")}
|
|
64
|
+
${(this.maxFileSize / (1024 * 1024)).toFixed(2)} Mo`, this.localize.transform("tsi_file_upload_auto_validation_max_length_title"));
|
|
65
|
+
this.inputField = undefined;
|
|
66
|
+
return;
|
|
67
|
+
}
|
|
68
|
+
setTimeout(() => {
|
|
69
|
+
//this.fileName = files.map((file: any) => file.name).join(', ');
|
|
70
|
+
this.onSelectFileManager.emit({ event, files, inputField: this.inputField, fileName: fileName });
|
|
71
|
+
this.inputFieldChange.emit(this.inputField);
|
|
72
|
+
this.fileNameChange.emit(this.fileName);
|
|
73
|
+
}, 200);
|
|
74
|
+
}
|
|
75
|
+
onFileClear() {
|
|
76
|
+
this.inputField = null;
|
|
77
|
+
this.fileName = '';
|
|
78
|
+
this.imageUrl = null;
|
|
79
|
+
this.inputFieldChange.emit(this.inputField);
|
|
80
|
+
this.fileNameChange.emit(this.fileName);
|
|
81
|
+
this.onClear.emit();
|
|
82
|
+
}
|
|
83
|
+
onFileRemove(event) {
|
|
84
|
+
const file = event.file;
|
|
85
|
+
//this.inputField = this.inputField.filter((f: any) => f !== file);
|
|
86
|
+
//this.fileName = this.inputField.map((f: any) => f.name).join(', ');
|
|
87
|
+
this.inputField = null;
|
|
88
|
+
this.fileName = '';
|
|
89
|
+
this.imageUrl = null;
|
|
90
|
+
this.onRemove.emit(file);
|
|
91
|
+
this.inputFieldChange.emit(this.inputField);
|
|
92
|
+
this.fileNameChange.emit(this.fileName);
|
|
93
|
+
}
|
|
94
|
+
convertFileToBase64(file) {
|
|
95
|
+
return new Promise((resolve, reject) => {
|
|
96
|
+
const reader = new FileReader();
|
|
97
|
+
reader.readAsDataURL(file);
|
|
98
|
+
reader.onload = () => {
|
|
99
|
+
const base64String = reader.result; // Conversion explicite en string
|
|
100
|
+
resolve(base64String);
|
|
101
|
+
};
|
|
102
|
+
reader.onerror = error => reject(error);
|
|
103
|
+
});
|
|
104
|
+
}
|
|
105
|
+
downloadFile() {
|
|
106
|
+
if (!this.inputField) {
|
|
107
|
+
return;
|
|
108
|
+
}
|
|
109
|
+
const byteCharacters = atob(this.inputField);
|
|
110
|
+
const byteNumbers = new Array(byteCharacters.length);
|
|
111
|
+
for (let i = 0; i < byteCharacters.length; i++) {
|
|
112
|
+
byteNumbers[i] = byteCharacters.charCodeAt(i);
|
|
113
|
+
}
|
|
114
|
+
const byteArray = new Uint8Array(byteNumbers);
|
|
115
|
+
const blob = new Blob([byteArray], { type: 'application/octet-stream' });
|
|
116
|
+
const url = window.URL.createObjectURL(blob);
|
|
117
|
+
const a = document.createElement('a');
|
|
118
|
+
document.body.appendChild(a);
|
|
119
|
+
a.style.display = 'none';
|
|
120
|
+
a.href = url;
|
|
121
|
+
a.download = this.fileName;
|
|
122
|
+
a.click();
|
|
123
|
+
//window.URL.revokeObjectURL(url);
|
|
124
|
+
}
|
|
125
|
+
arrayBufferToBase64(buffer) {
|
|
126
|
+
const bytes = new Uint8Array(buffer);
|
|
127
|
+
let binary = '';
|
|
128
|
+
for (let i = 0; i < bytes.byteLength; i++) {
|
|
129
|
+
binary += String.fromCharCode(bytes[i]);
|
|
130
|
+
}
|
|
131
|
+
return 'data:application/octet-stream;base64,' + btoa(binary);
|
|
132
|
+
}
|
|
133
|
+
get fileUrl() {
|
|
134
|
+
if (!this.inputField) {
|
|
135
|
+
return '';
|
|
136
|
+
}
|
|
137
|
+
const byteCharacters = atob(this.inputField);
|
|
138
|
+
const byteNumbers = new Array(byteCharacters.length);
|
|
139
|
+
for (let i = 0; i < byteCharacters.length; i++) {
|
|
140
|
+
byteNumbers[i] = byteCharacters.charCodeAt(i);
|
|
141
|
+
}
|
|
142
|
+
const byteArray = new Uint8Array(byteNumbers);
|
|
143
|
+
const blob = new Blob([byteArray], { type: 'application/octet-stream' });
|
|
144
|
+
const url = window.URL.createObjectURL(blob);
|
|
145
|
+
return this.domSanitizer.bypassSecurityTrustUrl(url);
|
|
146
|
+
}
|
|
147
|
+
fileExtensionImage() {
|
|
148
|
+
return this.getFileExtension(this.fileName) == 'jpg';
|
|
149
|
+
}
|
|
150
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: TsiFileManagerComponent, deps: [{ token: i1.LocalizePipe }, { token: i2.TsiNotificationService }, { token: i3.DomSanitizer }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
151
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: TsiFileManagerComponent, selector: "Tsi-File-Manager", inputs: { fileName: "fileName", name: "name", id: "id", accept: "accept", maxFileSize: "maxFileSize", multiple: "multiple", exploreOnDownload: "exploreOnDownload", showUploadButton: "showUploadButton", showCancelButton: "showCancelButton", showDownloadButton: "showDownloadButton", chooseIcon: "chooseIcon", chooseLabel: "chooseLabel", showSelectButton: "showSelectButton", showFileUpload: "showFileUpload" }, outputs: { onSelectFileManager: "onSelectFileManager", onClear: "onClear", onRemove: "onRemove", inputFieldChange: "inputFieldChange", fileNameChange: "fileNameChange" }, usesInheritance: true, ngImport: i0, template: "<!-- <p-fileUpload class=\"file-manager\" #fileUpload [name]=\"name\" [id]=\"id\" [accept]=\"accept\" [maxFileSize]=\"maxFileSize\"\r\n [multiple]=\"multiple\" [showUploadButton]=\"showUploadButton\" [showCancelButton]=\"showCancelButton\"\r\n chooseIcon=\"pi pi-upload\" chooseLabel=\" \" (onSelect)=\"onFileSelect($event)\" (onClear)=\"onFileClear()\"\r\n (onRemove)=\"onFileRemove($event)\" class=\"custom-file-upload\" icon=\"pi pi-upload\">\r\n</p-fileUpload>\r\n\r\n<BR>\r\n<div *ngIf=\"showDownloadButton\">\r\n <button pButton type=\"button\" icon=\"pi pi-download\" (click)=\"downloadFile()\" class=\"h-2rem w-full text-center\">\r\n </button>\r\n</div> -->\r\n<div class=\"{{validationStatusCssClass}}\">\r\n\r\n <p-fileUpload class=\"file-manager custom-file-upload \" \r\n #fileUpload\r\n [name]=\"name\"\r\n [id]=\"id\" \r\n [accept]=\"accept\" \r\n [multiple]=\"multiple\"\r\n [disabled]=\"disabled\"\r\n [showUploadButton]=\"showUploadButton\" \r\n [showCancelButton]=\"showCancelButton\"\r\n chooseIcon=\"pi pi-upload\"\r\n chooseLabel= \"Upload\" \r\n (onSelect)=\"onFileSelect($event)\"\r\n (onClear)=\"onFileClear()\"\r\n (onRemove)=\"onFileRemove($event)\"\r\n >\r\n \r\n \r\n \r\n <!-- <ng-template pTemplate=\"content\">\r\n <button type=\"button\" pButton icon=\"pi pi-upload\" class=\"ml-4 h-2rem w-full text-center\">\r\n </button>\r\n </ng-template> -->\r\n <ng-template pTemplate=\"content\" let-files>\r\n <div *ngIf=\"fileExtensionImage() || inputField\">\r\n <img [src]=\"fileUrl\" style=\"width: 15rem;\"/>\r\n </div>\r\n <div *ngIf=\"fileName != undefined && fileName != null\">\r\n <p>File Name: {{ fileName }}</p>\r\n <p>File Extension: {{ getFileExtension(fileName) }}</p>\r\n </div>\r\n <div *ngIf=\"fileName != undefined && showDownloadButton\">\r\n <button pButton type=\"button\" icon=\"pi pi-download\" (click)=\"downloadFile()\" class=\" h-2rem w-full text-center\">\r\n <!-- <span class=\"font-bold ml-2\" >Download</span> -->\r\n </button>\r\n </div>\r\n </ng-template>\r\n \r\n </p-fileUpload>\r\n \r\n</div>", styles: [".ui-fileupload-choose{display:flex;align-items:center;justify-content:center;padding:.5rem;width:10rem;height:40px}.ui-fileupload-choose .ui-button-text{display:none}.ui-fileupload-choose .pi{font-size:2rem}.p-fileupload-choose input{display:none!important}:host ::ng-deep .p-fileupload-choose[disabled]{display:none!important}\n"], dependencies: [{ kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i5.ButtonDirective, selector: "[pButton]", inputs: ["iconPos", "loadingIcon", "label", "icon", "loading", "severity", "raised", "rounded", "text", "outlined", "size", "plain"] }, { kind: "directive", type: i6.PrimeTemplate, selector: "[pTemplate]", inputs: ["type", "pTemplate"] }, { kind: "component", type: i7.FileUpload, selector: "p-fileUpload", inputs: ["name", "url", "method", "multiple", "accept", "disabled", "auto", "withCredentials", "maxFileSize", "invalidFileSizeMessageSummary", "invalidFileSizeMessageDetail", "invalidFileTypeMessageSummary", "invalidFileTypeMessageDetail", "invalidFileLimitMessageDetail", "invalidFileLimitMessageSummary", "style", "styleClass", "previewWidth", "chooseLabel", "uploadLabel", "cancelLabel", "chooseIcon", "uploadIcon", "cancelIcon", "showUploadButton", "showCancelButton", "mode", "headers", "customUpload", "fileLimit", "uploadStyleClass", "cancelStyleClass", "removeStyleClass", "chooseStyleClass", "files"], outputs: ["onBeforeUpload", "onSend", "onUpload", "onError", "onClear", "onRemove", "onSelect", "onProgress", "uploadHandler", "onImageError", "onRemoveUploadedFile"] }], encapsulation: i0.ViewEncapsulation.None }); }
|
|
152
|
+
}
|
|
153
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: TsiFileManagerComponent, decorators: [{
|
|
154
|
+
type: Component,
|
|
155
|
+
args: [{ selector: 'Tsi-File-Manager', encapsulation: ViewEncapsulation.None, template: "<!-- <p-fileUpload class=\"file-manager\" #fileUpload [name]=\"name\" [id]=\"id\" [accept]=\"accept\" [maxFileSize]=\"maxFileSize\"\r\n [multiple]=\"multiple\" [showUploadButton]=\"showUploadButton\" [showCancelButton]=\"showCancelButton\"\r\n chooseIcon=\"pi pi-upload\" chooseLabel=\" \" (onSelect)=\"onFileSelect($event)\" (onClear)=\"onFileClear()\"\r\n (onRemove)=\"onFileRemove($event)\" class=\"custom-file-upload\" icon=\"pi pi-upload\">\r\n</p-fileUpload>\r\n\r\n<BR>\r\n<div *ngIf=\"showDownloadButton\">\r\n <button pButton type=\"button\" icon=\"pi pi-download\" (click)=\"downloadFile()\" class=\"h-2rem w-full text-center\">\r\n </button>\r\n</div> -->\r\n<div class=\"{{validationStatusCssClass}}\">\r\n\r\n <p-fileUpload class=\"file-manager custom-file-upload \" \r\n #fileUpload\r\n [name]=\"name\"\r\n [id]=\"id\" \r\n [accept]=\"accept\" \r\n [multiple]=\"multiple\"\r\n [disabled]=\"disabled\"\r\n [showUploadButton]=\"showUploadButton\" \r\n [showCancelButton]=\"showCancelButton\"\r\n chooseIcon=\"pi pi-upload\"\r\n chooseLabel= \"Upload\" \r\n (onSelect)=\"onFileSelect($event)\"\r\n (onClear)=\"onFileClear()\"\r\n (onRemove)=\"onFileRemove($event)\"\r\n >\r\n \r\n \r\n \r\n <!-- <ng-template pTemplate=\"content\">\r\n <button type=\"button\" pButton icon=\"pi pi-upload\" class=\"ml-4 h-2rem w-full text-center\">\r\n </button>\r\n </ng-template> -->\r\n <ng-template pTemplate=\"content\" let-files>\r\n <div *ngIf=\"fileExtensionImage() || inputField\">\r\n <img [src]=\"fileUrl\" style=\"width: 15rem;\"/>\r\n </div>\r\n <div *ngIf=\"fileName != undefined && fileName != null\">\r\n <p>File Name: {{ fileName }}</p>\r\n <p>File Extension: {{ getFileExtension(fileName) }}</p>\r\n </div>\r\n <div *ngIf=\"fileName != undefined && showDownloadButton\">\r\n <button pButton type=\"button\" icon=\"pi pi-download\" (click)=\"downloadFile()\" class=\" h-2rem w-full text-center\">\r\n <!-- <span class=\"font-bold ml-2\" >Download</span> -->\r\n </button>\r\n </div>\r\n </ng-template>\r\n \r\n </p-fileUpload>\r\n \r\n</div>", styles: [".ui-fileupload-choose{display:flex;align-items:center;justify-content:center;padding:.5rem;width:10rem;height:40px}.ui-fileupload-choose .ui-button-text{display:none}.ui-fileupload-choose .pi{font-size:2rem}.p-fileupload-choose input{display:none!important}:host ::ng-deep .p-fileupload-choose[disabled]{display:none!important}\n"] }]
|
|
156
|
+
}], ctorParameters: () => [{ type: i1.LocalizePipe }, { type: i2.TsiNotificationService }, { type: i3.DomSanitizer }], propDecorators: { fileName: [{
|
|
157
|
+
type: Input
|
|
158
|
+
}], name: [{
|
|
159
|
+
type: Input
|
|
160
|
+
}], id: [{
|
|
161
|
+
type: Input
|
|
162
|
+
}], accept: [{
|
|
163
|
+
type: Input
|
|
164
|
+
}], maxFileSize: [{
|
|
165
|
+
type: Input
|
|
166
|
+
}], multiple: [{
|
|
167
|
+
type: Input
|
|
168
|
+
}], exploreOnDownload: [{
|
|
169
|
+
type: Input
|
|
170
|
+
}], showUploadButton: [{
|
|
171
|
+
type: Input
|
|
172
|
+
}], showCancelButton: [{
|
|
173
|
+
type: Input
|
|
174
|
+
}], showDownloadButton: [{
|
|
175
|
+
type: Input
|
|
176
|
+
}], chooseIcon: [{
|
|
177
|
+
type: Input
|
|
178
|
+
}], chooseLabel: [{
|
|
179
|
+
type: Input
|
|
180
|
+
}], showSelectButton: [{
|
|
181
|
+
type: Input
|
|
182
|
+
}], showFileUpload: [{
|
|
183
|
+
type: Input
|
|
184
|
+
}], onSelectFileManager: [{
|
|
185
|
+
type: Output
|
|
186
|
+
}], onClear: [{
|
|
187
|
+
type: Output
|
|
188
|
+
}], onRemove: [{
|
|
189
|
+
type: Output
|
|
190
|
+
}], inputFieldChange: [{
|
|
191
|
+
type: Output
|
|
192
|
+
}], fileNameChange: [{
|
|
193
|
+
type: Output
|
|
194
|
+
}] } });
|
|
195
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHNpLWZpbGUtbWFuYWdlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90c2ktc2hhcmVkLXVpL3NyYy9saWIvdHNpLWNvbXBvbmVudHMvaW5wdXQtY29tcG9uZW50cy90c2ktZmlsZS1tYW5hZ2VyL3RzaS1maWxlLW1hbmFnZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHNpLXNoYXJlZC11aS9zcmMvbGliL3RzaS1jb21wb25lbnRzL2lucHV0LWNvbXBvbmVudHMvdHNpLWZpbGUtbWFuYWdlci90c2ktZmlsZS1tYW5hZ2VyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBcUIsTUFBTSxFQUE0QixpQkFBaUIsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUV2SSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sMkRBQTJELENBQUM7Ozs7Ozs7OztBQVV6RixNQUFNLE9BQU8sdUJBQXdCLFNBQVEsWUFBb0Q7SUE4Qi9GOzs7O1FBSUk7SUFFRixZQUNVLFFBQXNCLEVBQ3RCLG1CQUEyQyxFQUMzQyxZQUEwQjtRQUVsQyxLQUFLLEVBQUUsQ0FBQztRQUpBLGFBQVEsR0FBUixRQUFRLENBQWM7UUFDdEIsd0JBQW1CLEdBQW5CLG1CQUFtQixDQUF3QjtRQUMzQyxpQkFBWSxHQUFaLFlBQVksQ0FBYztRQW5DN0IsU0FBSSxHQUFXLEVBQUUsQ0FBQztRQUVsQixXQUFNLEdBQVcsRUFBRSxDQUFDO1FBQ3BCLGdCQUFXLEdBQVcsUUFBUSxDQUFDO1FBQy9CLGFBQVEsR0FBWSxLQUFLLENBQUM7UUFDMUIsc0JBQWlCLEdBQVksS0FBSyxDQUFDO1FBQ25DLHFCQUFnQixHQUFZLEtBQUssQ0FBQztRQUNsQyxxQkFBZ0IsR0FBWSxLQUFLLENBQUM7UUFDbEMsdUJB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dCwgT25DaGFuZ2VzLCBPbkluaXQsIE91dHB1dCwgU2ltcGxlQ2hhbmdlcywgVmlld0NoaWxkLCBWaWV3RW5jYXBzdWxhdGlvbiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBEb21TYW5pdGl6ZXIsIFNhZmVVcmwgfSBmcm9tICdAYW5ndWxhci9wbGF0Zm9ybS1icm93c2VyJztcclxuaW1wb3J0IHsgVHNpSW5wdXRCYXNlIH0gZnJvbSAnLi4vLi4vLi4vdHNpLWJhc2UvdHNpLWlucHV0LWJhc2UvdHNpLWlucHV0LWJhc2UuY29tcG9uZW50JztcclxuaW1wb3J0IHsgTG9jYWxpemVQaXBlIH0gZnJvbSAnLi4vLi4vLi4vcGlwZXMvbG9jYWxpemUucGlwZSc7XHJcbmltcG9ydCB7IFRzaU5vdGlmaWNhdGlvblNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlcy9ub3RpZmljYXRpb24vdHNpLW5vdGlmaWNhdGlvbi5zZXJ2aWNlJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnVHNpLUZpbGUtTWFuYWdlcicsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL3RzaS1maWxlLW1hbmFnZXIuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL3RzaS1maWxlLW1hbmFnZXIuY29tcG9uZW50LnNjc3MnXSxcclxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBUc2lGaWxlTWFuYWdlckNvbXBvbmVudCBleHRlbmRzIFRzaUlucHV0QmFzZTxzdHJpbmcgfCBBcnJheUJ1ZmZlciB8dW5kZWZpbmVkIHwgbnVsbD4ge1xyXG5cclxuICAvLyBASW5wdXQoKSBpbnB1dEZpZWxkOiBzdHJpbmcgfCBBcnJheUJ1ZmZlciB8dW5kZWZpbmVkIHwgbnVsbDtcclxuICBASW5wdXQoKSBmaWxlTmFtZTogc3RyaW5nIHx1bmRlZmluZWQ7XHJcbiAgQElucHV0KCkgbmFtZTogc3RyaW5nID0gJyc7XHJcbiAgQElucHV0KCkgaWQ6IHN0cmluZyB8IHVuZGVmaW5lZDtcclxuICBASW5wdXQoKSBhY2NlcHQ6IHN0cmluZyA9ICcnO1xyXG4gIEBJbnB1dCgpIG1heEZpbGVTaXplOiBudW1iZXIgPSAxMDQ4NTc2MDtcclxuICBASW5wdXQoKSBtdWx0aXBsZTogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIEBJbnB1dCgpIGV4cGxvcmVPbkRvd25sb2FkOiBib29sZWFuID0gZmFsc2U7XHJcbiAgQElucHV0KCkgc2hvd1VwbG9hZEJ1dHRvbjogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIEBJbnB1dCgpIHNob3dDYW5jZWxCdXR0b246IGJvb2xlYW4gPSBmYWxzZTtcclxuICBASW5wdXQoKSBzaG93RG93bmxvYWRCdXR0b246IGJvb2xlYW4gPSBmYWxzZTtcclxuICBASW5wdXQoKSBjaG9vc2VJY29uOiBzdHJpbmcgPSAnJztcclxuICBASW5wdXQoKSBjaG9vc2VMYWJlbDogc3RyaW5nID0gJyc7XHJcbiAgQElucHV0KCkgc2hvd1NlbGVjdEJ1dHRvbjogYm9vbGVhbiA9IHRydWU7XHJcbiAgQElucHV0KCkgc2hvd0ZpbGVVcGxvYWQ6IGJvb2xlYW4gPSB0cnVlO1xyXG5cclxuICBAT3V0cHV0KCkgb25TZWxlY3RGaWxlTWFuYWdlciA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xyXG4gIEBPdXRwdXQoKSBvbkNsZWFyID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xyXG4gIEBPdXRwdXQoKSBvblJlbW92ZSA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xyXG4gIEBPdXRwdXQoKSBpbnB1dEZpZWxkQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XHJcbiAgQE91dHB1dCgpIGZpbGVOYW1lQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxzdHJpbmc+KCk7XHJcblxyXG5cclxuICBpbWFnZVVybDogc3RyaW5nIHwgbnVsbCA9IG51bGw7XHJcblxyXG4gIGZpbGVFeHRlbnNpb24/OiBzdHJpbmc7XHJcblxyXG4gIGZpbGVTaXplRXJyb3IgOiBzdHJpbmcgPSAnJztcclxuICAvKiBuZ0FmdGVyVmlld0luaXQoKSB7XHJcbiAgICBpZiAodGhpcy5zaG93U2VsZWN0QnV0dG9uICYmIHRoaXMuZmlsZVVwbG9hZElucHV0KSB7XHJcbiAgICAgIHRoaXMuZmlsZVVwbG9hZElucHV0Lm5hdGl2ZUVsZW1lbnQuc3R5bGUuZGlzcGxheSA9ICdub25lJztcclxuICAgIH1cclxuICB9ICovXHJcblxyXG4gICAgY29uc3RydWN0b3IoXHJcbiAgICAgIHByaXZhdGUgbG9jYWxpemU6IExvY2FsaXplUGlwZSxcclxuICAgICAgcHJpdmF0ZSBub3RpZmljYXRpb25TZXJ2aWNlOiBUc2lOb3RpZmljYXRpb25TZXJ2aWNlLFxyXG4gICAgICBwcml2YXRlIGRvbVNhbml0aXplcjogRG9tU2FuaXRpemVyXHJcbiAgICApIHtcclxuICAgICAgc3VwZXIoKTtcclxuICAgICB9XHJcblxyXG5cclxuICBnZXRGaWxlRXh0ZW5zaW9uKGZpbGVOYW1lOiBzdHJpbmcpIHtcclxuICAgIHJldHVybiBmaWxlTmFtZT8uc3BsaXQoJy4nKT8ucG9wKCk7XHJcbiAgfVxyXG5cclxuICBvbkZpbGVTZWxlY3QoZXZlbnQ6IGFueSkge1xyXG4gICAgY29uc3QgZmlsZXM6IEZpbGVbXSA9IGV2ZW50LmZpbGVzO1xyXG4gICAgLy8gdGhpcy5jb252ZXJ0RmlsZVRvQmFzZTY0KGZpbGVzWzBdKS50aGVuKChiYXNlNjRTdHJpbmc6IHN0cmluZykgPT4ge1xyXG4gICAgLy8gdGhpcy5pbnB1dEZpZWxkID0gYmFzZTY0U3RyaW5nO1xyXG4gICAgLy8gfSk7XHJcbiAgICBjb25zdCByZWFkZXIgPSBuZXcgRmlsZVJlYWRlcigpO1xyXG4gICAgcmVhZGVyLm9ubG9hZCA9ICgpID0+IHtcclxuICAgICAgdGhpcy5pbnB1dEZpZWxkPSAocmVhZGVyLnJlc3VsdCBhcyBzdHJpbmcpLnNwbGl0KCcsJylbMV07XHJcbiAgICB9O1xyXG4gICAgcmVhZGVyLm9uZXJyb3IgPSAoZXJyb3IpID0+IHtcclxuICAgIH07XHJcbiAgICByZWFkZXIucmVhZEFzRGF0YVVSTChmaWxlc1swXSk7IFxyXG4gICAgdGhpcy5maWxlTmFtZSA9IGZpbGVzWzBdLm5hbWU7XHJcbiAgICBjb25zdCBmaWxlTmFtZTogc3RyaW5nID0gdGhpcy5maWxlTmFtZSE7XHJcblxyXG4gICAgaWYoZmlsZXNbMF0uc2l6ZSA+IHRoaXMubWF4RmlsZVNpemUpe1xyXG4gICAgICB0aGlzLm5vdGlmaWNhdGlvblNlcnZpY2Uud2FybihgXHJcbiAgICAgICAgJHt0aGlzLmxvY2FsaXplLnRyYW5zZm9ybShcInRzaV9maWxlX3VwbG9hZF9hdXRvX3ZhbGlkYXRpb25fbWF4X2xlbmd0aF9kZXRhaWxfMVwiKX0gXHJcbiAgICAgICAgJHsoZmlsZXNbMF0uc2l6ZSAvICgxMDI0ICogMTAyNCkpLnRvRml4ZWQoMil9IFxyXG4gICAgICAgICR7dGhpcy5sb2NhbGl6ZS50cmFuc2Zvcm0oXCJ0c2lfZmlsZV91cGxvYWRfYXV0b192YWxpZGF0aW9uX21heF9sZW5ndGhfZGV0YWlsXzJcIil9XHJcbiAgICAgICAgJHsodGhpcy5tYXhGaWxlU2l6ZSAvICgxMDI0ICogMTAyNCkpLnRvRml4ZWQoMil9IE1vYCxcclxuICAgICAgICB0aGlzLmxvY2FsaXplLnRyYW5zZm9ybShcInRzaV9maWxlX3VwbG9hZF9hdXRvX3ZhbGlkYXRpb25fbWF4X2xlbmd0aF90aXRsZVwiKSlcclxuICAgICAgICB0aGlzLmlucHV0RmllbGQgPSB1bmRlZmluZWRcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG4gICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgIC8vdGhpcy5maWxlTmFtZSA9IGZpbGVzLm1hcCgoZmlsZTogYW55KSA9PiBmaWxlLm5hbWUpLmpvaW4oJywgJyk7XHJcbiAgICAgIHRoaXMub25TZWxlY3RGaWxlTWFuYWdlci5lbWl0KHsgZXZlbnQsIGZpbGVzLCBpbnB1dEZpZWxkOiB0aGlzLmlucHV0RmllbGQsIGZpbGVOYW1lOiBmaWxlTmFtZSB9KTtcclxuICAgICAgdGhpcy5pbnB1dEZpZWxkQ2hhbmdlLmVtaXQodGhpcy5pbnB1dEZpZWxkKTtcclxuICAgICAgdGhpcy5maWxlTmFtZUNoYW5nZS5lbWl0KHRoaXMuZmlsZU5hbWUpO1xyXG4gICAgfSwgMjAwKTtcclxuICAgIFxyXG5cclxuICB9IFxyXG5cclxuICBvbkZpbGVDbGVhcigpIHtcclxuICAgIHRoaXMuaW5wdXRGaWVsZCA9IG51bGw7XHJcbiAgICB0aGlzLmZpbGVOYW1lID0gJyc7XHJcbiAgICB0aGlzLmltYWdlVXJsID0gbnVsbDtcclxuICAgIHRoaXMuaW5wdXRGaWVsZENoYW5nZS5lbWl0KHRoaXMuaW5wdXRGaWVsZCk7XHJcbiAgICB0aGlzLmZpbGVOYW1lQ2hhbmdlLmVtaXQodGhpcy5maWxlTmFtZSk7XHJcbiAgICB0aGlzLm9uQ2xlYXIuZW1pdCgpO1xyXG4gIH1cclxuXHJcbiAgb25GaWxlUmVtb3ZlKGV2ZW50OiBhbnkpIHtcclxuICAgIGNvbnN0IGZpbGUgPSBldmVudC5maWxlO1xyXG4gICAgLy90aGlzLmlucHV0RmllbGQgPSB0aGlzLmlucHV0RmllbGQuZmlsdGVyKChmOiBhbnkpID0+IGYgIT09IGZpbGUpO1xyXG4gICAgLy90aGlzLmZpbGVOYW1lID0gdGhpcy5pbnB1dEZpZWxkLm1hcCgoZjogYW55KSA9PiBmLm5hbWUpLmpvaW4oJywgJyk7XHJcbiAgICB0aGlzLmlucHV0RmllbGQgPSBudWxsO1xyXG4gICAgdGhpcy5maWxlTmFtZSA9ICcnO1xyXG4gICAgdGhpcy5pbWFnZVVybCA9IG51bGw7XHJcbiAgICB0aGlzLm9uUmVtb3ZlLmVtaXQoZmlsZSk7XHJcbiAgICB0aGlzLmlucHV0RmllbGRDaGFuZ2UuZW1pdCh0aGlzLmlucHV0RmllbGQpO1xyXG4gICAgdGhpcy5maWxlTmFtZUNoYW5nZS5lbWl0KHRoaXMuZmlsZU5hbWUpO1xyXG4gIH1cclxuXHJcbiAgY29udmVydEZpbGVUb0Jhc2U2NChmaWxlOiBGaWxlKTogUHJvbWlzZTxzdHJpbmc+IHtcclxuICAgIHJldHVybiBuZXcgUHJvbWlzZSgocmVzb2x2ZSwgcmVqZWN0KSA9PiB7XHJcbiAgICAgIGNvbnN0IHJlYWRlciA9IG5ldyBGaWxlUmVhZGVyKCk7XHJcbiAgICAgIHJlYWRlci5yZWFkQXNEYXRhVVJMKGZpbGUpO1xyXG4gICAgICByZWFkZXIub25sb2FkID0gKCkgPT4ge1xyXG4gICAgICAgIGNvbnN0IGJhc2U2NFN0cmluZyA9IHJlYWRlci5yZXN1bHQgYXMgc3RyaW5nOyAvLyBDb252ZXJzaW9uIGV4cGxpY2l0ZSBlbiBzdHJpbmdcclxuICAgICAgICByZXNvbHZlKGJhc2U2NFN0cmluZyk7XHJcbiAgICAgIH07XHJcbiAgICAgIHJlYWRlci5vbmVycm9yID0gZXJyb3IgPT4gcmVqZWN0KGVycm9yKTtcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgZG93bmxvYWRGaWxlKCkge1xyXG4gICAgaWYgKCF0aGlzLmlucHV0RmllbGQpIHtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG5cclxuICAgIGNvbnN0IGJ5dGVDaGFyYWN0ZXJzID0gYXRvYih0aGlzLmlucHV0RmllbGQgYXMgc3RyaW5nKTtcclxuICAgIGNvbnN0IGJ5dGVOdW1iZXJzID0gbmV3IEFycmF5KGJ5dGVDaGFyYWN0ZXJzLmxlbmd0aCk7XHJcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IGJ5dGVDaGFyYWN0ZXJzLmxlbmd0aDsgaSsrKSB7XHJcbiAgICAgIGJ5dGVOdW1iZXJzW2ldID0gYnl0ZUNoYXJhY3RlcnMuY2hhckNvZGVBdChpKTtcclxuICAgIH1cclxuICAgIGNvbnN0IGJ5dGVBcnJheSA9IG5ldyBVaW50OEFycmF5KGJ5dGVOdW1iZXJzKTtcclxuICAgIGNvbnN0IGJsb2IgPSBuZXcgQmxvYihbYnl0ZUFycmF5XSwgeyB0eXBlOiAnYXBwbGljYXRpb24vb2N0ZXQtc3RyZWFtJyB9KTtcclxuXHJcbiAgICBjb25zdCB1cmwgPSB3aW5kb3cuVVJMLmNyZWF0ZU9iamVjdFVSTChibG9iKTtcclxuXHJcbiAgICBjb25zdCBhID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnYScpO1xyXG4gICAgZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChhKTtcclxuICAgIGEuc3R5bGUuZGlzcGxheSA9ICdub25lJztcclxuICAgIGEuaHJlZiA9IHVybDtcclxuICAgIGEuZG93bmxvYWQgPSB0aGlzLmZpbGVOYW1lITtcclxuICAgIGEuY2xpY2soKTtcclxuXHJcbiAgICAvL3dpbmRvdy5VUkwucmV2b2tlT2JqZWN0VVJMKHVybCk7XHJcbiAgfVxyXG5cclxuICBhcnJheUJ1ZmZlclRvQmFzZTY0KGJ1ZmZlcjogQXJyYXlCdWZmZXIpOiBzdHJpbmcge1xyXG4gICAgY29uc3QgYnl0ZXMgPSBuZXcgVWludDhBcnJheShidWZmZXIpO1xyXG4gICAgbGV0IGJpbmFyeSA9ICcnO1xyXG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCBieXRlcy5ieXRlTGVuZ3RoOyBpKyspIHtcclxuICAgICAgYmluYXJ5ICs9IFN0cmluZy5mcm9tQ2hhckNvZGUoYnl0ZXNbaV0pO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuICdkYXRhOmFwcGxpY2F0aW9uL29jdGV0LXN0cmVhbTtiYXNlNjQsJyArIGJ0b2EoYmluYXJ5KTtcclxuICB9XHJcblxyXG4gIGdldCBmaWxlVXJsKCk6IFNhZmVVcmx7XHJcbiAgICBpZiAoIXRoaXMuaW5wdXRGaWVsZCkge1xyXG4gICAgICByZXR1cm4gJyc7XHJcbiAgICB9XHJcblxyXG4gICAgY29uc3QgYnl0ZUNoYXJhY3RlcnMgPSBhdG9iKHRoaXMuaW5wdXRGaWVsZCBhcyBzdHJpbmcpO1xyXG4gICAgY29uc3QgYnl0ZU51bWJlcnMgPSBuZXcgQXJyYXkoYnl0ZUNoYXJhY3RlcnMubGVuZ3RoKTtcclxuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgYnl0ZUNoYXJhY3RlcnMubGVuZ3RoOyBpKyspIHtcclxuICAgICAgYnl0ZU51bWJlcnNbaV0gPSBieXRlQ2hhcmFjdGVycy5jaGFyQ29kZUF0KGkpO1xyXG4gICAgfVxyXG4gICAgY29uc3QgYnl0ZUFycmF5ID0gbmV3IFVpbnQ4QXJyYXkoYnl0ZU51bWJlcnMpO1xyXG4gICAgY29uc3QgYmxvYiA9IG5ldyBCbG9iKFtieXRlQXJyYXldLCB7IHR5cGU6ICdhcHBsaWNhdGlvbi9vY3RldC1zdHJlYW0nIH0pO1xyXG5cclxuICAgIGNvbnN0IHVybCA9IHdpbmRvdy5VUkwuY3JlYXRlT2JqZWN0VVJMKGJsb2IpO1xyXG4gICAgXHJcbiAgICByZXR1cm4gdGhpcy5kb21TYW5pdGl6ZXIuYnlwYXNzU2VjdXJpdHlUcnVzdFVybCh1cmwpO1xyXG4gIH1cclxuXHJcbiBmaWxlRXh0ZW5zaW9uSW1hZ2UoKSA6ICBib29sZWFuICB7XHJcbiAgICByZXR1cm4gdGhpcy5nZXRGaWxlRXh0ZW5zaW9uKHRoaXMuZmlsZU5hbWUhKSA9PSAnanBnJ1xyXG4gIH1cclxufVxyXG4iLCI8IS0tIDxwLWZpbGVVcGxvYWQgY2xhc3M9XCJmaWxlLW1hbmFnZXJcIiAjZmlsZVVwbG9hZCBbbmFtZV09XCJuYW1lXCIgW2lkXT1cImlkXCIgW2FjY2VwdF09XCJhY2NlcHRcIiBbbWF4RmlsZVNpemVdPVwibWF4RmlsZVNpemVcIlxyXG4gIFttdWx0aXBsZV09XCJtdWx0aXBsZVwiIFtzaG93VXBsb2FkQnV0dG9uXT1cInNob3dVcGxvYWRCdXR0b25cIiBbc2hvd0NhbmNlbEJ1dHRvbl09XCJzaG93Q2FuY2VsQnV0dG9uXCJcclxuICBjaG9vc2VJY29uPVwicGkgcGktdXBsb2FkXCIgY2hvb3NlTGFiZWw9XCIgXCIgKG9uU2VsZWN0KT1cIm9uRmlsZVNlbGVjdCgkZXZlbnQpXCIgKG9uQ2xlYXIpPVwib25GaWxlQ2xlYXIoKVwiXHJcbiAgKG9uUmVtb3ZlKT1cIm9uRmlsZVJlbW92ZSgkZXZlbnQpXCIgY2xhc3M9XCJjdXN0b20tZmlsZS11cGxvYWRcIiBpY29uPVwicGkgcGktdXBsb2FkXCI+XHJcbjwvcC1maWxlVXBsb2FkPlxyXG5cclxuPEJSPlxyXG48ZGl2ICpuZ0lmPVwic2hvd0Rvd25sb2FkQnV0dG9uXCI+XHJcbiAgPGJ1dHRvbiBwQnV0dG9uIHR5cGU9XCJidXR0b25cIiBpY29uPVwicGkgcGktZG93bmxvYWRcIiAoY2xpY2spPVwiZG93bmxvYWRGaWxlKClcIiBjbGFzcz1cImgtMnJlbSB3LWZ1bGwgdGV4dC1jZW50ZXJcIj5cclxuICA8L2J1dHRvbj5cclxuPC9kaXY+IC0tPlxyXG48ZGl2IGNsYXNzPVwie3t2YWxpZGF0aW9uU3RhdHVzQ3NzQ2xhc3N9fVwiPlxyXG5cclxuICA8cC1maWxlVXBsb2FkIGNsYXNzPVwiZmlsZS1tYW5hZ2VyIGN1c3RvbS1maWxlLXVwbG9hZCBcIiBcclxuICAgICNmaWxlVXBsb2FkXHJcbiAgICBbbmFtZV09XCJuYW1lXCJcclxuICAgIFtpZF09XCJpZFwiIFxyXG4gICAgW2FjY2VwdF09XCJhY2NlcHRcIiBcclxuICAgIFttdWx0aXBsZV09XCJtdWx0aXBsZVwiXHJcbiAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxyXG4gICAgW3Nob3dVcGxvYWRCdXR0b25dPVwic2hvd1VwbG9hZEJ1dHRvblwiIFxyXG4gICAgW3Nob3dDYW5jZWxCdXR0b25dPVwic2hvd0NhbmNlbEJ1dHRvblwiXHJcbiAgICBjaG9vc2VJY29uPVwicGkgcGktdXBsb2FkXCJcclxuICAgIGNob29zZUxhYmVsPSBcIlVwbG9hZFwiIFxyXG4gICAgKG9uU2VsZWN0KT1cIm9uRmlsZVNlbGVjdCgkZXZlbnQpXCJcclxuICAgIChvbkNsZWFyKT1cIm9uRmlsZUNsZWFyKClcIlxyXG4gICAgKG9uUmVtb3ZlKT1cIm9uRmlsZVJlbW92ZSgkZXZlbnQpXCJcclxuICAgID5cclxuICAgIFxyXG4gICAgXHJcbiAgICBcclxuICAgIDwhLS0gPG5nLXRlbXBsYXRlIHBUZW1wbGF0ZT1cImNvbnRlbnRcIj5cclxuICAgICAgPGJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgcEJ1dHRvbiBpY29uPVwicGkgcGktdXBsb2FkXCIgY2xhc3M9XCJtbC00IGgtMnJlbSB3LWZ1bGwgdGV4dC1jZW50ZXJcIj5cclxuICAgICAgPC9idXR0b24+XHJcbiAgICA8L25nLXRlbXBsYXRlPiAtLT5cclxuICAgIDxuZy10ZW1wbGF0ZSBwVGVtcGxhdGU9XCJjb250ZW50XCIgbGV0LWZpbGVzPlxyXG4gICAgICA8ZGl2ICpuZ0lmPVwiZmlsZUV4dGVuc2lvbkltYWdlKCkgfHwgaW5wdXRGaWVsZFwiPlxyXG4gICAgICAgIDxpbWcgW3NyY109XCJmaWxlVXJsXCIgc3R5bGU9XCJ3aWR0aDogMTVyZW07XCIvPlxyXG4gICAgICA8L2Rpdj5cclxuICAgICAgPGRpdiAqbmdJZj1cImZpbGVOYW1lICE9IHVuZGVmaW5lZCAmJiBmaWxlTmFtZSAhPSBudWxsXCI+XHJcbiAgICAgICAgPHA+RmlsZSBOYW1lOiB7eyBmaWxlTmFtZSB9fTwvcD5cclxuICAgICAgICA8cD5GaWxlIEV4dGVuc2lvbjoge3sgZ2V0RmlsZUV4dGVuc2lvbihmaWxlTmFtZSkgfX08L3A+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgICA8ZGl2ICpuZ0lmPVwiZmlsZU5hbWUgIT0gdW5kZWZpbmVkICYmIHNob3dEb3dubG9hZEJ1dHRvblwiPlxyXG4gICAgICAgIDxidXR0b24gcEJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgaWNvbj1cInBpIHBpLWRvd25sb2FkXCIgKGNsaWNrKT1cImRvd25sb2FkRmlsZSgpXCIgY2xhc3M9XCIgaC0ycmVtIHctZnVsbCB0ZXh0LWNlbnRlclwiPlxyXG4gICAgICAgICAgPCEtLSA8c3BhbiBjbGFzcz1cImZvbnQtYm9sZCBtbC0yXCIgPkRvd25sb2FkPC9zcGFuPiAtLT5cclxuICAgICAgICA8L2J1dHRvbj5cclxuICAgICAgPC9kaXY+XHJcbiAgICA8L25nLXRlbXBsYXRlPlxyXG4gICAgXHJcbiAgPC9wLWZpbGVVcGxvYWQ+XHJcbiAgXHJcbjwvZGl2PiJdfQ==
|
package/esm2022/lib/tsi-components/input-components/tsi-formula-box/tsi-formula-box.component.mjs
ADDED
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
import { Component, EventEmitter, Input, Output } from '@angular/core';
|
|
2
|
+
import { TsiInputBase } from '../../../tsi-base/tsi-input-base/tsi-input-base.component';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
import * as i1 from "../../../services/formula.service";
|
|
5
|
+
import * as i2 from "@angular/common";
|
|
6
|
+
import * as i3 from "@angular/forms";
|
|
7
|
+
export class TsiFormulaBoxComponent extends TsiInputBase {
|
|
8
|
+
constructor(_formulaService, cdRef) {
|
|
9
|
+
super();
|
|
10
|
+
this._formulaService = _formulaService;
|
|
11
|
+
this.cdRef = cdRef;
|
|
12
|
+
this.value = '';
|
|
13
|
+
this.endPoint = '';
|
|
14
|
+
this.valueChange = new EventEmitter();
|
|
15
|
+
this.suggestions = [];
|
|
16
|
+
}
|
|
17
|
+
onInputChange(val) {
|
|
18
|
+
this.value = val;
|
|
19
|
+
this.valueChange.emit(this.value);
|
|
20
|
+
// Détecter `TOTAL(` suivi de tout ce qui n'est pas une parenthèse fermante
|
|
21
|
+
const match = /TOTAL\(([^)]*)$/i.exec(val);
|
|
22
|
+
if (match) {
|
|
23
|
+
const term = match[1];
|
|
24
|
+
if (term !== undefined && term.length >= 0) {
|
|
25
|
+
this._formulaService.getFormulaSuggestions(this.endPoint, term).subscribe(res => {
|
|
26
|
+
this.suggestions = res;
|
|
27
|
+
this.cdRef.detectChanges();
|
|
28
|
+
});
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
else {
|
|
32
|
+
this.suggestions = [];
|
|
33
|
+
this.cdRef.detectChanges();
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
onSuggestionSelect(s) {
|
|
37
|
+
this.value = this.value.replace(/TOTAL\([^\)]*$/, `TOTAL(${s}`);
|
|
38
|
+
this.valueChange.emit(this.value);
|
|
39
|
+
this.suggestions = [];
|
|
40
|
+
}
|
|
41
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: TsiFormulaBoxComponent, deps: [{ token: i1.FormulaService }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
42
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: TsiFormulaBoxComponent, selector: "Tsi-Formula-Box", inputs: { value: "value", endPoint: "endPoint" }, outputs: { valueChange: "valueChange" }, usesInheritance: true, ngImport: i0, template: "<div class=\"formula-wrapper {{validationStatusCssClass}}\" style=\"position: relative; z-index: 9999;\">\r\n <input type=\"text\" class=\"form-control\" [(ngModel)]=\"value\" (ngModelChange)=\"onInputChange($event)\"\r\n placeholder=\"\" maxlength=\"{{maxLength}}\"/>\r\n\r\n <ul *ngIf=\"suggestions.length > 0\">\r\n <li *ngFor=\"let s of suggestions\" (click)=\"onSuggestionSelect(s)\">\r\n {{ s }}\r\n </li>\r\n </ul>\r\n</div>", styles: [".formula-wrapper{position:relative;width:100%}::ng-deep ul li{list-style:none!important}::ng-deep ul li:hover{text-decoration:underline!important}\n"], dependencies: [{ kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.MaxLengthValidator, selector: "[maxlength][formControlName],[maxlength][formControl],[maxlength][ngModel]", inputs: ["maxlength"] }, { kind: "directive", type: i3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }] }); }
|
|
43
|
+
}
|
|
44
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: TsiFormulaBoxComponent, decorators: [{
|
|
45
|
+
type: Component,
|
|
46
|
+
args: [{ selector: 'Tsi-Formula-Box', template: "<div class=\"formula-wrapper {{validationStatusCssClass}}\" style=\"position: relative; z-index: 9999;\">\r\n <input type=\"text\" class=\"form-control\" [(ngModel)]=\"value\" (ngModelChange)=\"onInputChange($event)\"\r\n placeholder=\"\" maxlength=\"{{maxLength}}\"/>\r\n\r\n <ul *ngIf=\"suggestions.length > 0\">\r\n <li *ngFor=\"let s of suggestions\" (click)=\"onSuggestionSelect(s)\">\r\n {{ s }}\r\n </li>\r\n </ul>\r\n</div>", styles: [".formula-wrapper{position:relative;width:100%}::ng-deep ul li{list-style:none!important}::ng-deep ul li:hover{text-decoration:underline!important}\n"] }]
|
|
47
|
+
}], ctorParameters: () => [{ type: i1.FormulaService }, { type: i0.ChangeDetectorRef }], propDecorators: { value: [{
|
|
48
|
+
type: Input
|
|
49
|
+
}], endPoint: [{
|
|
50
|
+
type: Input
|
|
51
|
+
}], valueChange: [{
|
|
52
|
+
type: Output
|
|
53
|
+
}] } });
|
|
54
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHNpLWZvcm11bGEtYm94LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RzaS1zaGFyZWQtdWkvc3JjL2xpYi90c2ktY29tcG9uZW50cy9pbnB1dC1jb21wb25lbnRzL3RzaS1mb3JtdWxhLWJveC90c2ktZm9ybXVsYS1ib3guY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHNpLXNoYXJlZC11aS9zcmMvbGliL3RzaS1jb21wb25lbnRzL2lucHV0LWNvbXBvbmVudHMvdHNpLWZvcm11bGEtYm94L1RzaS1Gb3JtdWxhLUJveC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQXFCLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMxRixPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sMkRBQTJELENBQUM7Ozs7O0FBUXpGLE1BQU0sT0FBTyxzQkFBdUIsU0FBUSxZQUFZO0lBT3RELFlBQW9CLGVBQStCLEVBQWtCLEtBQXdCO1FBQzNGLEtBQUssRUFBRSxDQUFDO1FBRFUsb0JBQWUsR0FBZixlQUFlLENBQWdCO1FBQWtCLFVBQUssR0FBTCxLQUFLLENBQW1CO1FBTnBGLFVBQUssR0FBVyxFQUFFLENBQUM7UUFDbkIsYUFBUSxHQUFXLEVBQUUsQ0FBQztRQUNyQixnQkFBVyxHQUFHLElBQUksWUFBWSxFQUFVLENBQUM7UUFFbkQsZ0JBQVcsR0FBYSxFQUFFLENBQUM7SUFJM0IsQ0FBQztJQUVELGFBQWEsQ0FBQyxHQUFXO1FBQ3ZCLElBQUksQ0FBQyxLQUFLLEdBQUcsR0FBRyxDQUFDO1FBQ2pCLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUVsQywyRUFBMkU7UUFDM0UsTUFBTSxLQUFLLEdBQUcsa0JBQWtCLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQzNDLElBQUksS0FBSyxFQUFFLENBQUM7WUFDVixNQUFNLElBQUksR0FBRyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDdEIsSUFBSSxJQUFJLEtBQUssU0FBUyxJQUFJLElBQUksQ0FBQyxNQUFNLElBQUksQ0FBQyxFQUFFLENBQUM7Z0JBQzNDLElBQUksQ0FBQyxlQUFlLENBQUMscUJBQXFCLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxJQUFJLENBQUMsQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUU7b0JBQzlFLElBQUksQ0FBQyxXQUFXLEdBQUcsR0FBRyxDQUFDO29CQUN2QixJQUFJLENBQUMsS0FBSyxDQUFDLGFBQWEsRUFBRSxDQUFDO2dCQUM3QixDQUFDLENBQUMsQ0FBQztZQUNMLENBQUM7UUFDSCxDQUFDO2FBQU0sQ0FBQztZQUNOLElBQUksQ0FBQyxXQUFXLEdBQUcsRUFBRSxDQUFDO1lBQ3RCLElBQUksQ0FBQyxLQUFLLENBQUMsYUFBYSxFQUFFLENBQUM7UUFDN0IsQ0FBQztJQUNILENBQUM7SUFDRCxrQkFBa0IsQ0FBQyxDQUFTO1FBQzFCLElBQUksQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsZ0JBQWdCLEVBQUUsU0FBUyxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBQ2hFLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNsQyxJQUFJLENBQUMsV0FBVyxHQUFHLEVBQUUsQ0FBQztJQUN4QixDQUFDOytHQWxDVSxzQkFBc0I7bUdBQXRCLHNCQUFzQix5S0NUbkMsMGdCQVNNOzs0RkRBTyxzQkFBc0I7a0JBTGxDLFNBQVM7K0JBQ0UsaUJBQWlCO21IQUtsQixLQUFLO3NCQUFiLEtBQUs7Z0JBQ0csUUFBUTtzQkFBaEIsS0FBSztnQkFDSSxXQUFXO3NCQUFwQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0b3JSZWYsIENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IFRzaUlucHV0QmFzZSB9IGZyb20gJy4uLy4uLy4uL3RzaS1iYXNlL3RzaS1pbnB1dC1iYXNlL3RzaS1pbnB1dC1iYXNlLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEZvcm11bGFTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvZm9ybXVsYS5zZXJ2aWNlJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnVHNpLUZvcm11bGEtQm94JyxcclxuICB0ZW1wbGF0ZVVybDogJy4vVHNpLUZvcm11bGEtQm94LmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9Uc2ktRm9ybXVsYS1Cb3guY29tcG9uZW50LnNjc3MnXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIFRzaUZvcm11bGFCb3hDb21wb25lbnQgZXh0ZW5kcyBUc2lJbnB1dEJhc2Uge1xyXG4gIEBJbnB1dCgpIHZhbHVlOiBzdHJpbmcgPSAnJztcclxuICBASW5wdXQoKSBlbmRQb2ludDogc3RyaW5nID0gJyc7XHJcbiAgQE91dHB1dCgpIHZhbHVlQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxzdHJpbmc+KCk7XHJcblxyXG4gIHN1Z2dlc3Rpb25zOiBzdHJpbmdbXSA9IFtdO1xyXG5cclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIF9mb3JtdWxhU2VydmljZTogRm9ybXVsYVNlcnZpY2UsIHB1YmxpYyBvdmVycmlkZSBjZFJlZjogQ2hhbmdlRGV0ZWN0b3JSZWYpIHtcclxuICAgIHN1cGVyKCk7XHJcbiAgfVxyXG5cclxuICBvbklucHV0Q2hhbmdlKHZhbDogc3RyaW5nKSB7XHJcbiAgICB0aGlzLnZhbHVlID0gdmFsO1xyXG4gICAgdGhpcy52YWx1ZUNoYW5nZS5lbWl0KHRoaXMudmFsdWUpO1xyXG4gIFxyXG4gICAgLy8gRMOpdGVjdGVyIGBUT1RBTChgIHN1aXZpIGRlIHRvdXQgY2UgcXVpIG4nZXN0IHBhcyB1bmUgcGFyZW50aMOoc2UgZmVybWFudGVcclxuICAgIGNvbnN0IG1hdGNoID0gL1RPVEFMXFwoKFteKV0qKSQvaS5leGVjKHZhbCk7XHJcbiAgICBpZiAobWF0Y2gpIHtcclxuICAgICAgY29uc3QgdGVybSA9IG1hdGNoWzFdO1xyXG4gICAgICBpZiAodGVybSAhPT0gdW5kZWZpbmVkICYmIHRlcm0ubGVuZ3RoID49IDApIHtcclxuICAgICAgICB0aGlzLl9mb3JtdWxhU2VydmljZS5nZXRGb3JtdWxhU3VnZ2VzdGlvbnModGhpcy5lbmRQb2ludCwgdGVybSkuc3Vic2NyaWJlKHJlcyA9PiB7XHJcbiAgICAgICAgICB0aGlzLnN1Z2dlc3Rpb25zID0gcmVzO1xyXG4gICAgICAgICAgdGhpcy5jZFJlZi5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgICAgICAgfSk7XHJcbiAgICAgIH1cclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMuc3VnZ2VzdGlvbnMgPSBbXTtcclxuICAgICAgdGhpcy5jZFJlZi5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgICB9XHJcbiAgfVxyXG4gIG9uU3VnZ2VzdGlvblNlbGVjdChzOiBzdHJpbmcpIHtcclxuICAgIHRoaXMudmFsdWUgPSB0aGlzLnZhbHVlLnJlcGxhY2UoL1RPVEFMXFwoW15cXCldKiQvLCBgVE9UQUwoJHtzfWApO1xyXG4gICAgdGhpcy52YWx1ZUNoYW5nZS5lbWl0KHRoaXMudmFsdWUpO1xyXG4gICAgdGhpcy5zdWdnZXN0aW9ucyA9IFtdO1xyXG4gIH1cclxufVxyXG4iLCI8ZGl2IGNsYXNzPVwiZm9ybXVsYS13cmFwcGVyIHt7dmFsaWRhdGlvblN0YXR1c0Nzc0NsYXNzfX1cIiBzdHlsZT1cInBvc2l0aW9uOiByZWxhdGl2ZTsgei1pbmRleDogOTk5OTtcIj5cclxuICAgICAgICA8aW5wdXQgdHlwZT1cInRleHRcIiBjbGFzcz1cImZvcm0tY29udHJvbFwiIFsobmdNb2RlbCldPVwidmFsdWVcIiAobmdNb2RlbENoYW5nZSk9XCJvbklucHV0Q2hhbmdlKCRldmVudClcIlxyXG4gICAgICAgICAgICAgICAgcGxhY2Vob2xkZXI9XCJcIiBtYXhsZW5ndGg9XCJ7e21heExlbmd0aH19XCIvPlxyXG5cclxuICAgICAgICA8dWwgKm5nSWY9XCJzdWdnZXN0aW9ucy5sZW5ndGggPiAwXCI+XHJcbiAgICAgICAgICAgICAgICA8bGkgKm5nRm9yPVwibGV0IHMgb2Ygc3VnZ2VzdGlvbnNcIiAoY2xpY2spPVwib25TdWdnZXN0aW9uU2VsZWN0KHMpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHt7IHMgfX1cclxuICAgICAgICAgICAgICAgIDwvbGk+XHJcbiAgICAgICAgPC91bD5cclxuPC9kaXY+Il19
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
import { Component, EventEmitter, Input, Output } from '@angular/core';
|
|
2
|
+
import { FormControl } from '@angular/forms';
|
|
3
|
+
import { TsiInputBase } from '../../../tsi-base/tsi-input-base/tsi-input-base.component';
|
|
4
|
+
import * as i0 from "@angular/core";
|
|
5
|
+
import * as i1 from "@angular/forms";
|
|
6
|
+
import * as i2 from "primeng/inputnumber";
|
|
7
|
+
import * as i3 from "../../tsi-bubble-info/tsi-bubble-info.component";
|
|
8
|
+
import * as i4 from "../../../tsi-directives/auto-select.directive";
|
|
9
|
+
export class TsiIntegerComponent extends TsiInputBase {
|
|
10
|
+
constructor() {
|
|
11
|
+
super(...arguments);
|
|
12
|
+
//#region inputs
|
|
13
|
+
// @Input() inputField?: number | undefined | string;
|
|
14
|
+
this.class = {};
|
|
15
|
+
this.delayChangeTime = 1000;
|
|
16
|
+
this.myFormControl = new FormControl();
|
|
17
|
+
//#endregion
|
|
18
|
+
//#region outputs
|
|
19
|
+
this.newItemEvent = new EventEmitter();
|
|
20
|
+
this.inputFieldChange = new EventEmitter();
|
|
21
|
+
//#endregion
|
|
22
|
+
this.infinityRef = Infinity;
|
|
23
|
+
this.isValueChanged = false;
|
|
24
|
+
}
|
|
25
|
+
valueChanged() {
|
|
26
|
+
this.isValueChanged = true;
|
|
27
|
+
}
|
|
28
|
+
onChangeofOptions() {
|
|
29
|
+
if (this.isValueChanged) {
|
|
30
|
+
this.newItemEvent.emit(this.inputField);
|
|
31
|
+
this.inputFieldChange.emit(this.inputField);
|
|
32
|
+
this.isValueChanged = false;
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: TsiIntegerComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
36
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: TsiIntegerComponent, selector: "Tsi-Integer", inputs: { class: "class", minValue: "minValue", maxValue: "maxValue", delayChangeTime: "delayChangeTime" }, outputs: { newItemEvent: "newItemEvent", inputFieldChange: "inputFieldChange" }, usesInheritance: true, ngImport: i0, template: "<div class=\"flex h-2rem\">\r\n <p-inputNumber autoSelect class=\"{{class}} {{myStyleClass}}\"\r\n inputStyleClass=\"{{class}} {{validationStatusCssClass}}\" styleClass=\"border-radius-7\"\r\n [disabled]=\"disabled\" [(ngModel)]=\"inputField\" name=\"{{inputName}}\"\r\n id=\"{{inputId}}\"\r\n (onBlur)=\"onChangeofOptions()\"\r\n (ngModelChange)=\"valueChanged()\"\r\n [max]=\"maxValue ?? infinityRef\" [maxlength]=\"maxLength ?? infinityRef\">\r\n </p-inputNumber>\r\n <Tsi-Bubble-Info [infoText]=\"infoText\"></Tsi-Bubble-Info>\r\n</div>", styles: [".ColorClass{background-color:#7fffd4;text-align:right}::ng-deep p-inputNumber span input{width:100%!important}\n"], dependencies: [{ kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.MaxLengthValidator, selector: "[maxlength][formControlName],[maxlength][formControl],[maxlength][ngModel]", inputs: ["maxlength"] }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i2.InputNumber, selector: "p-inputNumber", inputs: ["showButtons", "format", "buttonLayout", "inputId", "styleClass", "style", "placeholder", "size", "maxlength", "tabindex", "title", "ariaLabelledBy", "ariaLabel", "ariaRequired", "name", "required", "autocomplete", "min", "max", "incrementButtonClass", "decrementButtonClass", "incrementButtonIcon", "decrementButtonIcon", "readonly", "step", "allowEmpty", "locale", "localeMatcher", "mode", "currency", "currencyDisplay", "useGrouping", "variant", "minFractionDigits", "maxFractionDigits", "prefix", "suffix", "inputStyle", "inputStyleClass", "showClear", "autofocus", "disabled"], outputs: ["onInput", "onFocus", "onBlur", "onKeyDown", "onClear"] }, { kind: "component", type: i3.TsiBubbleInfoComponent, selector: "Tsi-Bubble-Info", inputs: ["infoText"] }, { kind: "directive", type: i4.AutoSelectDirective, selector: "[autoSelect]" }] }); }
|
|
37
|
+
}
|
|
38
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: TsiIntegerComponent, decorators: [{
|
|
39
|
+
type: Component,
|
|
40
|
+
args: [{ selector: 'Tsi-Integer', template: "<div class=\"flex h-2rem\">\r\n <p-inputNumber autoSelect class=\"{{class}} {{myStyleClass}}\"\r\n inputStyleClass=\"{{class}} {{validationStatusCssClass}}\" styleClass=\"border-radius-7\"\r\n [disabled]=\"disabled\" [(ngModel)]=\"inputField\" name=\"{{inputName}}\"\r\n id=\"{{inputId}}\"\r\n (onBlur)=\"onChangeofOptions()\"\r\n (ngModelChange)=\"valueChanged()\"\r\n [max]=\"maxValue ?? infinityRef\" [maxlength]=\"maxLength ?? infinityRef\">\r\n </p-inputNumber>\r\n <Tsi-Bubble-Info [infoText]=\"infoText\"></Tsi-Bubble-Info>\r\n</div>", styles: [".ColorClass{background-color:#7fffd4;text-align:right}::ng-deep p-inputNumber span input{width:100%!important}\n"] }]
|
|
41
|
+
}], propDecorators: { class: [{
|
|
42
|
+
type: Input,
|
|
43
|
+
args: ['class']
|
|
44
|
+
}], minValue: [{
|
|
45
|
+
type: Input
|
|
46
|
+
}], maxValue: [{
|
|
47
|
+
type: Input
|
|
48
|
+
}], delayChangeTime: [{
|
|
49
|
+
type: Input
|
|
50
|
+
}], newItemEvent: [{
|
|
51
|
+
type: Output
|
|
52
|
+
}], inputFieldChange: [{
|
|
53
|
+
type: Output
|
|
54
|
+
}] } });
|
|
55
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHNpLWludGVnZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHNpLXNoYXJlZC11aS9zcmMvbGliL3RzaS1jb21wb25lbnRzL2lucHV0LWNvbXBvbmVudHMvdHNpLWludGVnZXIvdHNpLWludGVnZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHNpLXNoYXJlZC11aS9zcmMvbGliL3RzaS1jb21wb25lbnRzL2lucHV0LWNvbXBvbmVudHMvdHNpLWludGVnZXIvdHNpLWludGVnZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN2RSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDN0MsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDJEQUEyRCxDQUFDOzs7Ozs7QUFPekYsTUFBTSxPQUFPLG1CQUFvQixTQUFRLFlBQXlDO0lBTGxGOztRQU1FLGdCQUFnQjtRQUNoQixxREFBcUQ7UUFDckMsVUFBSyxHQUFRLEVBQUUsQ0FBQztRQUd2QixvQkFBZSxHQUFXLElBQUksQ0FBQTtRQUN2QyxrQkFBYSxHQUFnQixJQUFJLFdBQVcsRUFBRSxDQUFDO1FBQy9DLFlBQVk7UUFFWixpQkFBaUI7UUFDUCxpQkFBWSxHQUFHLElBQUksWUFBWSxFQUFPLENBQUM7UUFDdkMscUJBQWdCLEdBQUcsSUFBSSxZQUFZLEVBQU8sQ0FBQztRQUNyRCxZQUFZO1FBRVosZ0JBQVcsR0FBRyxRQUFRLENBQUE7UUFDZCxtQkFBYyxHQUFhLEtBQUssQ0FBQTtLQWF6QztJQVhDLFlBQVk7UUFDVixJQUFJLENBQUMsY0FBYyxHQUFHLElBQUksQ0FBQTtJQUM1QixDQUFDO0lBRUQsaUJBQWlCO1FBQ2YsSUFBRyxJQUFJLENBQUMsY0FBYyxFQUFDLENBQUM7WUFDdEIsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1lBQ3hDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1lBQzVDLElBQUksQ0FBQyxjQUFjLEdBQUcsS0FBSyxDQUFBO1FBQzdCLENBQUM7SUFDSCxDQUFDOytHQTVCVSxtQkFBbUI7bUdBQW5CLG1CQUFtQix1UUNUaEMsNm9CQVVNOzs0RkRETyxtQkFBbUI7a0JBTC9CLFNBQVM7K0JBQ0UsYUFBYTs4QkFPUCxLQUFLO3NCQUFwQixLQUFLO3VCQUFDLE9BQU87Z0JBQ0wsUUFBUTtzQkFBaEIsS0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLO2dCQUNHLGVBQWU7c0JBQXZCLEtBQUs7Z0JBS0ksWUFBWTtzQkFBckIsTUFBTTtnQkFDRyxnQkFBZ0I7c0JBQXpCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBGb3JtQ29udHJvbCB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgVHNpSW5wdXRCYXNlIH0gZnJvbSAnLi4vLi4vLi4vdHNpLWJhc2UvdHNpLWlucHV0LWJhc2UvdHNpLWlucHV0LWJhc2UuY29tcG9uZW50JztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnVHNpLUludGVnZXInLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi90c2ktaW50ZWdlci5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vdHNpLWludGVnZXIuY29tcG9uZW50LmNzcyddXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBUc2lJbnRlZ2VyQ29tcG9uZW50IGV4dGVuZHMgVHNpSW5wdXRCYXNlPG51bWJlciB8IHVuZGVmaW5lZCB8IHN0cmluZz4ge1xyXG4gIC8vI3JlZ2lvbiBpbnB1dHNcclxuICAvLyBASW5wdXQoKSBpbnB1dEZpZWxkPzogbnVtYmVyIHwgdW5kZWZpbmVkIHwgc3RyaW5nO1xyXG4gIEBJbnB1dCgnY2xhc3MnKSBjbGFzczogYW55ID0ge307XHJcbiAgQElucHV0KCkgbWluVmFsdWU/OiBudW1iZXI7XHJcbiAgQElucHV0KCkgbWF4VmFsdWU/OiBudW1iZXI7XHJcbiAgQElucHV0KCkgZGVsYXlDaGFuZ2VUaW1lOiBudW1iZXIgPSAxMDAwXHJcbiAgbXlGb3JtQ29udHJvbDogRm9ybUNvbnRyb2wgPSBuZXcgRm9ybUNvbnRyb2woKTtcclxuICAvLyNlbmRyZWdpb25cclxuXHJcbiAgLy8jcmVnaW9uIG91dHB1dHNcclxuICBAT3V0cHV0KCkgbmV3SXRlbUV2ZW50ID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XHJcbiAgQE91dHB1dCgpIGlucHV0RmllbGRDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcclxuICAvLyNlbmRyZWdpb25cclxuXHJcbiAgaW5maW5pdHlSZWYgPSBJbmZpbml0eVxyXG4gIHByaXZhdGUgaXNWYWx1ZUNoYW5nZWQgOiBib29sZWFuID0gZmFsc2VcclxuXHJcbiAgdmFsdWVDaGFuZ2VkKCl7XHJcbiAgICB0aGlzLmlzVmFsdWVDaGFuZ2VkID0gdHJ1ZVxyXG4gIH1cclxuXHJcbiAgb25DaGFuZ2VvZk9wdGlvbnMoKSB7XHJcbiAgICBpZih0aGlzLmlzVmFsdWVDaGFuZ2VkKXtcclxuICAgICAgdGhpcy5uZXdJdGVtRXZlbnQuZW1pdCh0aGlzLmlucHV0RmllbGQpO1xyXG4gICAgICB0aGlzLmlucHV0RmllbGRDaGFuZ2UuZW1pdCh0aGlzLmlucHV0RmllbGQpO1xyXG4gICAgICB0aGlzLmlzVmFsdWVDaGFuZ2VkID0gZmFsc2VcclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiPGRpdiBjbGFzcz1cImZsZXggaC0ycmVtXCI+XHJcbiAgICAgICAgPHAtaW5wdXROdW1iZXIgYXV0b1NlbGVjdCBjbGFzcz1cInt7Y2xhc3N9fSB7e215U3R5bGVDbGFzc319XCJcclxuICAgICAgICAgICAgICAgIGlucHV0U3R5bGVDbGFzcz1cInt7Y2xhc3N9fSB7e3ZhbGlkYXRpb25TdGF0dXNDc3NDbGFzc319XCIgc3R5bGVDbGFzcz1cImJvcmRlci1yYWRpdXMtN1wiXHJcbiAgICAgICAgICAgICAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIiBbKG5nTW9kZWwpXT1cImlucHV0RmllbGRcIiBuYW1lPVwie3tpbnB1dE5hbWV9fVwiXHJcbiAgICAgICAgICAgICAgICBpZD1cInt7aW5wdXRJZH19XCJcclxuICAgICAgICAgICAgICAgIChvbkJsdXIpPVwib25DaGFuZ2VvZk9wdGlvbnMoKVwiXHJcbiAgICAgICAgICAgICAgICAobmdNb2RlbENoYW5nZSk9XCJ2YWx1ZUNoYW5nZWQoKVwiXHJcbiAgICAgICAgICAgICAgICBbbWF4XT1cIm1heFZhbHVlID8/IGluZmluaXR5UmVmXCIgW21heGxlbmd0aF09XCJtYXhMZW5ndGggPz8gaW5maW5pdHlSZWZcIj5cclxuICAgICAgICA8L3AtaW5wdXROdW1iZXI+XHJcbiAgICAgICAgPFRzaS1CdWJibGUtSW5mbyBbaW5mb1RleHRdPVwiaW5mb1RleHRcIj48L1RzaS1CdWJibGUtSW5mbz5cclxuPC9kaXY+Il19
|
package/esm2022/lib/tsi-components/input-components/tsi-radio-button/tsi-radio-button.component.mjs
ADDED
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import { Component, EventEmitter, Input, Output } from '@angular/core';
|
|
2
|
+
import { LayoutOrientation } from '../../../enums';
|
|
3
|
+
import { TsiInputBase } from '../../../tsi-base/tsi-input-base/tsi-input-base.component';
|
|
4
|
+
import * as i0 from "@angular/core";
|
|
5
|
+
import * as i1 from "@angular/common";
|
|
6
|
+
import * as i2 from "@angular/forms";
|
|
7
|
+
import * as i3 from "primeng/radiobutton";
|
|
8
|
+
import * as i4 from "../../../pipes/localize.pipe";
|
|
9
|
+
export class TsiRadioButtonComponent extends TsiInputBase {
|
|
10
|
+
constructor() {
|
|
11
|
+
super(...arguments);
|
|
12
|
+
//#region local variables
|
|
13
|
+
this.verticalLayoutOrientation = LayoutOrientation.vertical;
|
|
14
|
+
this.horizontalLayoutOrientation = LayoutOrientation.horizontal;
|
|
15
|
+
// @Input() inputField: any;
|
|
16
|
+
this.class = {};
|
|
17
|
+
this.layoutOrientation = LayoutOrientation.vertical;
|
|
18
|
+
//#endregion
|
|
19
|
+
//#region outputs
|
|
20
|
+
this.inputFieldChange = new EventEmitter();
|
|
21
|
+
}
|
|
22
|
+
//#endregion
|
|
23
|
+
onChangeofOptions(input) {
|
|
24
|
+
this.inputField = input;
|
|
25
|
+
this.inputFieldChange.emit(input);
|
|
26
|
+
}
|
|
27
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: TsiRadioButtonComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
28
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: TsiRadioButtonComponent, selector: "Tsi-Radio-Button", inputs: { dataSource: "dataSource", class: "class", layoutOrientation: "layoutOrientation" }, outputs: { inputFieldChange: "inputFieldChange" }, usesInheritance: true, ngImport: i0, template: "<!-- align items vertical -->\r\n<div *ngIf=\"layoutOrientation == verticalLayoutOrientation\">\r\n <div *ngFor=\"let item of dataSource\" class=\"custom-control custom-radio\">\r\n <p-radioButton [disabled]=\"disabled\" class=\"tsi-component {{validationStatusCssClass}}\" name=\"groupname\" value=\"{{item.key}}\" label=\"{{item.value | localize}}\"\r\n [ngModel]=\"inputField\" (ngModelChange)=\"onChangeofOptions($event)\"></p-radioButton>\r\n </div>\r\n</div>\r\n\r\n<!-- align items horizontal -->\r\n<div class=\"flex flex-row\" *ngIf=\"layoutOrientation == horizontalLayoutOrientation\">\r\n <div *ngFor=\"let item of dataSource\" class=\"custom-control custom-radio p-1\" >\r\n <p-radioButton [disabled]=\"disabled\" class=\"tsi-component {{validationStatusCssClass}}\" name=\"groupname\" value=\"{{item.key}}\" label=\"{{item.value | localize}}\"\r\n [ngModel]=\"inputField\" (ngModelChange)=\"onChangeofOptions($event)\"></p-radioButton>\r\n </div>\r\n</div>\r\n", styles: [""], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i3.RadioButton, selector: "p-radioButton", inputs: ["value", "formControlName", "name", "disabled", "label", "variant", "tabindex", "inputId", "ariaLabelledBy", "ariaLabel", "style", "styleClass", "labelStyleClass", "autofocus"], outputs: ["onClick", "onFocus", "onBlur"] }, { kind: "pipe", type: i4.LocalizePipe, name: "localize" }] }); }
|
|
29
|
+
}
|
|
30
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: TsiRadioButtonComponent, decorators: [{
|
|
31
|
+
type: Component,
|
|
32
|
+
args: [{ selector: 'Tsi-Radio-Button', template: "<!-- align items vertical -->\r\n<div *ngIf=\"layoutOrientation == verticalLayoutOrientation\">\r\n <div *ngFor=\"let item of dataSource\" class=\"custom-control custom-radio\">\r\n <p-radioButton [disabled]=\"disabled\" class=\"tsi-component {{validationStatusCssClass}}\" name=\"groupname\" value=\"{{item.key}}\" label=\"{{item.value | localize}}\"\r\n [ngModel]=\"inputField\" (ngModelChange)=\"onChangeofOptions($event)\"></p-radioButton>\r\n </div>\r\n</div>\r\n\r\n<!-- align items horizontal -->\r\n<div class=\"flex flex-row\" *ngIf=\"layoutOrientation == horizontalLayoutOrientation\">\r\n <div *ngFor=\"let item of dataSource\" class=\"custom-control custom-radio p-1\" >\r\n <p-radioButton [disabled]=\"disabled\" class=\"tsi-component {{validationStatusCssClass}}\" name=\"groupname\" value=\"{{item.key}}\" label=\"{{item.value | localize}}\"\r\n [ngModel]=\"inputField\" (ngModelChange)=\"onChangeofOptions($event)\"></p-radioButton>\r\n </div>\r\n</div>\r\n" }]
|
|
33
|
+
}], propDecorators: { dataSource: [{
|
|
34
|
+
type: Input
|
|
35
|
+
}], class: [{
|
|
36
|
+
type: Input,
|
|
37
|
+
args: ['class']
|
|
38
|
+
}], layoutOrientation: [{
|
|
39
|
+
type: Input
|
|
40
|
+
}], inputFieldChange: [{
|
|
41
|
+
type: Output
|
|
42
|
+
}] } });
|
|
43
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHNpLXJhZGlvLWJ1dHRvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90c2ktc2hhcmVkLXVpL3NyYy9saWIvdHNpLWNvbXBvbmVudHMvaW5wdXQtY29tcG9uZW50cy90c2ktcmFkaW8tYnV0dG9uL3RzaS1yYWRpby1idXR0b24uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHNpLXNoYXJlZC11aS9zcmMvbGliL3RzaS1jb21wb25lbnRzL2lucHV0LWNvbXBvbmVudHMvdHNpLXJhZGlvLWJ1dHRvbi90c2ktcmFkaW8tYnV0dG9uLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDdkUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDbkQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDJEQUEyRCxDQUFDOzs7Ozs7QUFPekYsTUFBTSxPQUFPLHVCQUF3QixTQUFRLFlBQWlCO0lBTDlEOztRQU1FLHlCQUF5QjtRQUN6Qiw4QkFBeUIsR0FBc0IsaUJBQWlCLENBQUMsUUFBUSxDQUFDO1FBQzFFLGdDQUEyQixHQUFzQixpQkFBaUIsQ0FBQyxVQUFVLENBQUM7UUFJOUUsNEJBQTRCO1FBQ1osVUFBSyxHQUFRLEVBQUUsQ0FBQztRQUN2QixzQkFBaUIsR0FBc0IsaUJBQWlCLENBQUMsUUFBUSxDQUFDO1FBQzNFLFlBQVk7UUFFWixpQkFBaUI7UUFDUCxxQkFBZ0IsR0FBRyxJQUFJLFlBQVksRUFBVSxDQUFDO0tBT3pEO0lBTkMsWUFBWTtJQUVaLGlCQUFpQixDQUFDLEtBQVU7UUFDMUIsSUFBSSxDQUFDLFVBQVUsR0FBRyxLQUFLLENBQUM7UUFDeEIsSUFBSSxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNwQyxDQUFDOytHQW5CVSx1QkFBdUI7bUdBQXZCLHVCQUF1QixnT0NWcEMsbStCQWVBOzs0RkRMYSx1QkFBdUI7a0JBTG5DLFNBQVM7K0JBQ0Usa0JBQWtCOzhCQVVuQixVQUFVO3NCQUFsQixLQUFLO2dCQUVVLEtBQUs7c0JBQXBCLEtBQUs7dUJBQUMsT0FBTztnQkFDTCxpQkFBaUI7c0JBQXpCLEtBQUs7Z0JBSUksZ0JBQWdCO3NCQUF6QixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgS2V5VmFsdWUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5pbXBvcnQgeyBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBMYXlvdXRPcmllbnRhdGlvbiB9IGZyb20gJy4uLy4uLy4uL2VudW1zJztcclxuaW1wb3J0IHsgVHNpSW5wdXRCYXNlIH0gZnJvbSAnLi4vLi4vLi4vdHNpLWJhc2UvdHNpLWlucHV0LWJhc2UvdHNpLWlucHV0LWJhc2UuY29tcG9uZW50JztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnVHNpLVJhZGlvLUJ1dHRvbicsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL3RzaS1yYWRpby1idXR0b24uY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL3RzaS1yYWRpby1idXR0b24uY29tcG9uZW50LmNzcyddXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBUc2lSYWRpb0J1dHRvbkNvbXBvbmVudCBleHRlbmRzIFRzaUlucHV0QmFzZTxhbnk+e1xyXG4gIC8vI3JlZ2lvbiBsb2NhbCB2YXJpYWJsZXNcclxuICB2ZXJ0aWNhbExheW91dE9yaWVudGF0aW9uOiBMYXlvdXRPcmllbnRhdGlvbiA9IExheW91dE9yaWVudGF0aW9uLnZlcnRpY2FsO1xyXG4gIGhvcml6b250YWxMYXlvdXRPcmllbnRhdGlvbjogTGF5b3V0T3JpZW50YXRpb24gPSBMYXlvdXRPcmllbnRhdGlvbi5ob3Jpem9udGFsO1xyXG4gIC8vI2VuZHJlZ2lvblxyXG4gIC8vI3JlZ2lvbiBpbnB1dHNcclxuICBASW5wdXQoKSBkYXRhU291cmNlPzogQXJyYXk8S2V5VmFsdWU8YW55LCBzdHJpbmc+PjtcclxuICAvLyBASW5wdXQoKSBpbnB1dEZpZWxkOiBhbnk7XHJcbiAgQElucHV0KCdjbGFzcycpIGNsYXNzOiBhbnkgPSB7fTtcclxuICBASW5wdXQoKSBsYXlvdXRPcmllbnRhdGlvbjogTGF5b3V0T3JpZW50YXRpb24gPSBMYXlvdXRPcmllbnRhdGlvbi52ZXJ0aWNhbDtcclxuICAvLyNlbmRyZWdpb25cclxuXHJcbiAgLy8jcmVnaW9uIG91dHB1dHNcclxuICBAT3V0cHV0KCkgaW5wdXRGaWVsZENoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8c3RyaW5nPigpO1xyXG4gIC8vI2VuZHJlZ2lvblxyXG5cclxuICBvbkNoYW5nZW9mT3B0aW9ucyhpbnB1dDogYW55KTp2b2lkIHtcclxuICAgIHRoaXMuaW5wdXRGaWVsZCA9IGlucHV0O1xyXG4gICAgdGhpcy5pbnB1dEZpZWxkQ2hhbmdlLmVtaXQoaW5wdXQpO1xyXG4gIH1cclxufVxyXG4iLCI8IS0tIGFsaWduIGl0ZW1zIHZlcnRpY2FsIC0tPlxyXG48ZGl2ICpuZ0lmPVwibGF5b3V0T3JpZW50YXRpb24gPT0gdmVydGljYWxMYXlvdXRPcmllbnRhdGlvblwiPlxyXG4gIDxkaXYgKm5nRm9yPVwibGV0IGl0ZW0gb2YgZGF0YVNvdXJjZVwiIGNsYXNzPVwiY3VzdG9tLWNvbnRyb2wgY3VzdG9tLXJhZGlvXCI+XHJcbiAgICA8cC1yYWRpb0J1dHRvbiBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIiBjbGFzcz1cInRzaS1jb21wb25lbnQge3t2YWxpZGF0aW9uU3RhdHVzQ3NzQ2xhc3N9fVwiIG5hbWU9XCJncm91cG5hbWVcIiB2YWx1ZT1cInt7aXRlbS5rZXl9fVwiIGxhYmVsPVwie3tpdGVtLnZhbHVlIHwgbG9jYWxpemV9fVwiXHJcbiAgICAgIFtuZ01vZGVsXT1cImlucHV0RmllbGRcIiAobmdNb2RlbENoYW5nZSk9XCJvbkNoYW5nZW9mT3B0aW9ucygkZXZlbnQpXCI+PC9wLXJhZGlvQnV0dG9uPlxyXG4gIDwvZGl2PlxyXG48L2Rpdj5cclxuXHJcbjwhLS0gYWxpZ24gaXRlbXMgaG9yaXpvbnRhbCAtLT5cclxuPGRpdiBjbGFzcz1cImZsZXggZmxleC1yb3dcIiAqbmdJZj1cImxheW91dE9yaWVudGF0aW9uID09IGhvcml6b250YWxMYXlvdXRPcmllbnRhdGlvblwiPlxyXG4gIDxkaXYgKm5nRm9yPVwibGV0IGl0ZW0gb2YgZGF0YVNvdXJjZVwiIGNsYXNzPVwiY3VzdG9tLWNvbnRyb2wgY3VzdG9tLXJhZGlvIHAtMVwiID5cclxuICAgIDxwLXJhZGlvQnV0dG9uIFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiIGNsYXNzPVwidHNpLWNvbXBvbmVudCB7e3ZhbGlkYXRpb25TdGF0dXNDc3NDbGFzc319XCIgbmFtZT1cImdyb3VwbmFtZVwiIHZhbHVlPVwie3tpdGVtLmtleX19XCIgbGFiZWw9XCJ7e2l0ZW0udmFsdWUgfCBsb2NhbGl6ZX19XCJcclxuICAgICAgW25nTW9kZWxdPVwiaW5wdXRGaWVsZFwiIChuZ01vZGVsQ2hhbmdlKT1cIm9uQ2hhbmdlb2ZPcHRpb25zKCRldmVudClcIj48L3AtcmFkaW9CdXR0b24+XHJcbiAgPC9kaXY+XHJcbjwvZGl2PlxyXG4iXX0=
|
package/esm2022/lib/tsi-components/input-components/tsi-rate-input/tsi-rate-input.component.mjs
ADDED
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
import { Component, EventEmitter, Input, Output } from '@angular/core';
|
|
2
|
+
import { TsiInputBase } from '../../../tsi-base/tsi-input-base/tsi-input-base.component';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
import * as i1 from "@angular/forms";
|
|
5
|
+
import * as i2 from "primeng/inputnumber";
|
|
6
|
+
import * as i3 from "../../tsi-bubble-info/tsi-bubble-info.component";
|
|
7
|
+
import * as i4 from "../../../tsi-directives/auto-select.directive";
|
|
8
|
+
export class TsiRateInputComponent extends TsiInputBase {
|
|
9
|
+
constructor() {
|
|
10
|
+
super(...arguments);
|
|
11
|
+
// isFraction = true : 2% est enregistré 0.02
|
|
12
|
+
// isFraction = false : 2% est enregistré 2
|
|
13
|
+
this.isFraction = false;
|
|
14
|
+
this.numOfDecimal = 2;
|
|
15
|
+
//#endregion
|
|
16
|
+
//#region outputs
|
|
17
|
+
this.newItemEvent = new EventEmitter();
|
|
18
|
+
this.inputFieldChange = new EventEmitter();
|
|
19
|
+
//#endregion
|
|
20
|
+
this.isValueChanged = false;
|
|
21
|
+
}
|
|
22
|
+
ngOnInit() {
|
|
23
|
+
super.ngOnInit();
|
|
24
|
+
// if (this.inputField === undefined || this.inputField === null) {
|
|
25
|
+
// this.inputField = 0;
|
|
26
|
+
// this.inputFieldChange.emit(this.inputField);
|
|
27
|
+
// }
|
|
28
|
+
}
|
|
29
|
+
valueChanged() {
|
|
30
|
+
this.isValueChanged = true;
|
|
31
|
+
}
|
|
32
|
+
onChangeofOptions() {
|
|
33
|
+
if (this.isValueChanged) {
|
|
34
|
+
this.newItemEvent.emit(Number(this.inputField));
|
|
35
|
+
this.inputFieldChange.emit(this.inputField);
|
|
36
|
+
this.isValueChanged = false;
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: TsiRateInputComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
40
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: TsiRateInputComponent, selector: "Tsi-Rate-Input", inputs: { required: "required", isFraction: "isFraction", numOfDecimal: "numOfDecimal" }, outputs: { newItemEvent: "newItemEvent", inputFieldChange: "inputFieldChange" }, usesInheritance: true, ngImport: i0, template: "<div class=\"flex h-2rem\">\r\n <p-inputNumber autoSelect class=\"{{myStyleClass}}\" \r\n styleClass=\"{{myStyleClass}} border-radius-7\" \r\n inputStyleClass=\"{{myStyleClass}} {{validationStatusCssClass}}\"\r\n [disabled]=\"disabled\" [(ngModel)]=\"inputField\" \r\n (ngModelChange)=\"valueChanged()\"\r\n [required]=\"isRequired\"\r\n (onBlur)=\"onChangeofOptions()\" name=\"{{inputName}}\"\r\n id=\"{{inputId}}\" suffix=\"%\" [minFractionDigits]=\"numOfDecimal ?? 0\" [maxFractionDigits]=\"numOfDecimal ?? 0\">\r\n </p-inputNumber>\r\n <Tsi-Bubble-Info [infoText]=\"infoText\"></Tsi-Bubble-Info>\r\n</div>", styles: [".ColorClass{background-color:#f0f;text-align:right}\n"], dependencies: [{ kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i2.InputNumber, selector: "p-inputNumber", inputs: ["showButtons", "format", "buttonLayout", "inputId", "styleClass", "style", "placeholder", "size", "maxlength", "tabindex", "title", "ariaLabelledBy", "ariaLabel", "ariaRequired", "name", "required", "autocomplete", "min", "max", "incrementButtonClass", "decrementButtonClass", "incrementButtonIcon", "decrementButtonIcon", "readonly", "step", "allowEmpty", "locale", "localeMatcher", "mode", "currency", "currencyDisplay", "useGrouping", "variant", "minFractionDigits", "maxFractionDigits", "prefix", "suffix", "inputStyle", "inputStyleClass", "showClear", "autofocus", "disabled"], outputs: ["onInput", "onFocus", "onBlur", "onKeyDown", "onClear"] }, { kind: "component", type: i3.TsiBubbleInfoComponent, selector: "Tsi-Bubble-Info", inputs: ["infoText"] }, { kind: "directive", type: i4.AutoSelectDirective, selector: "[autoSelect]" }] }); }
|
|
41
|
+
}
|
|
42
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: TsiRateInputComponent, decorators: [{
|
|
43
|
+
type: Component,
|
|
44
|
+
args: [{ selector: 'Tsi-Rate-Input', template: "<div class=\"flex h-2rem\">\r\n <p-inputNumber autoSelect class=\"{{myStyleClass}}\" \r\n styleClass=\"{{myStyleClass}} border-radius-7\" \r\n inputStyleClass=\"{{myStyleClass}} {{validationStatusCssClass}}\"\r\n [disabled]=\"disabled\" [(ngModel)]=\"inputField\" \r\n (ngModelChange)=\"valueChanged()\"\r\n [required]=\"isRequired\"\r\n (onBlur)=\"onChangeofOptions()\" name=\"{{inputName}}\"\r\n id=\"{{inputId}}\" suffix=\"%\" [minFractionDigits]=\"numOfDecimal ?? 0\" [maxFractionDigits]=\"numOfDecimal ?? 0\">\r\n </p-inputNumber>\r\n <Tsi-Bubble-Info [infoText]=\"infoText\"></Tsi-Bubble-Info>\r\n</div>", styles: [".ColorClass{background-color:#f0f;text-align:right}\n"] }]
|
|
45
|
+
}], propDecorators: { required: [{
|
|
46
|
+
type: Input
|
|
47
|
+
}], isFraction: [{
|
|
48
|
+
type: Input
|
|
49
|
+
}], numOfDecimal: [{
|
|
50
|
+
type: Input
|
|
51
|
+
}], newItemEvent: [{
|
|
52
|
+
type: Output
|
|
53
|
+
}], inputFieldChange: [{
|
|
54
|
+
type: Output
|
|
55
|
+
}] } });
|
|
56
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHNpLXJhdGUtaW5wdXQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHNpLXNoYXJlZC11aS9zcmMvbGliL3RzaS1jb21wb25lbnRzL2lucHV0LWNvbXBvbmVudHMvdHNpLXJhdGUtaW5wdXQvdHNpLXJhdGUtaW5wdXQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHNpLXNoYXJlZC11aS9zcmMvbGliL3RzaS1jb21wb25lbnRzL2lucHV0LWNvbXBvbmVudHMvdHNpLXJhdGUtaW5wdXQvdHNpLXJhdGUtaW5wdXQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFVLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMvRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sMkRBQTJELENBQUM7Ozs7OztBQU96RixNQUFNLE9BQU8scUJBQXNCLFNBQVEsWUFBZ0M7SUFMM0U7O1FBVUUsOENBQThDO1FBRTlDLDRDQUE0QztRQUNuQyxlQUFVLEdBQWEsS0FBSyxDQUFDO1FBQzdCLGlCQUFZLEdBQVksQ0FBQyxDQUFDO1FBQ25DLFlBQVk7UUFFWixpQkFBaUI7UUFDUCxpQkFBWSxHQUFHLElBQUksWUFBWSxFQUFVLENBQUM7UUFDMUMscUJBQWdCLEdBQUcsSUFBSSxZQUFZLEVBQVUsQ0FBQztRQUN4RCxZQUFZO1FBRUosbUJBQWMsR0FBWSxLQUFLLENBQUE7S0FxQnhDO0lBbkJVLFFBQVE7UUFDZixLQUFLLENBQUMsUUFBUSxFQUFFLENBQUM7UUFDakIsbUVBQW1FO1FBQ25FLHlCQUF5QjtRQUN6QixpREFBaUQ7UUFDakQsSUFBSTtJQUNOLENBQUM7SUFFRCxZQUFZO1FBQ1YsSUFBSSxDQUFDLGNBQWMsR0FBRyxJQUFJLENBQUE7SUFDNUIsQ0FBQztJQUVELGlCQUFpQjtRQUNmLElBQUksSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDO1lBQ3hCLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQztZQUNoRCxJQUFJLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQztZQUM1QyxJQUFJLENBQUMsY0FBYyxHQUFHLEtBQUssQ0FBQTtRQUM3QixDQUFDO0lBQ0gsQ0FBQzsrR0FyQ1UscUJBQXFCO21HQUFyQixxQkFBcUIsd1BDUmxDLDZwQkFXTTs7NEZESE8scUJBQXFCO2tCQUxqQyxTQUFTOytCQUNFLGdCQUFnQjs4QkFPakIsUUFBUTtzQkFBaEIsS0FBSztnQkFLRyxVQUFVO3NCQUFsQixLQUFLO2dCQUNHLFlBQVk7c0JBQXBCLEtBQUs7Z0JBSUksWUFBWTtzQkFBckIsTUFBTTtnQkFDRyxnQkFBZ0I7c0JBQXpCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE9uSW5pdCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IFRzaUlucHV0QmFzZSB9IGZyb20gJy4uLy4uLy4uL3RzaS1iYXNlL3RzaS1pbnB1dC1iYXNlL3RzaS1pbnB1dC1iYXNlLmNvbXBvbmVudCc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ1RzaS1SYXRlLUlucHV0JyxcclxuICB0ZW1wbGF0ZVVybDogJy4vdHNpLXJhdGUtaW5wdXQuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL3RzaS1yYXRlLWlucHV0LmNvbXBvbmVudC5jc3MnXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgVHNpUmF0ZUlucHV0Q29tcG9uZW50IGV4dGVuZHMgVHNpSW5wdXRCYXNlPG51bWJlciB8IHVuZGVmaW5lZD4gaW1wbGVtZW50cyBPbkluaXQge1xyXG4gIC8vI3JlZ2lvbiBpbnB1dHNcclxuICAvLyBASW5wdXQoKSBpbnB1dEZpZWxkPzogbnVtYmVyO1xyXG4gIEBJbnB1dCgpIHJlcXVpcmVkPzogYm9vbGVhbjtcclxuXHJcbiAgLy8gaXNGcmFjdGlvbiA9IHRydWUgIDogMiUgZXN0IGVucmVnaXN0csOpIDAuMDJcclxuXHJcbiAgLy8gaXNGcmFjdGlvbiA9IGZhbHNlICA6IDIlIGVzdCBlbnJlZ2lzdHLDqSAyXHJcbiAgQElucHV0KCkgaXNGcmFjdGlvbj86IGJvb2xlYW4gPSBmYWxzZTtcclxuICBASW5wdXQoKSBudW1PZkRlY2ltYWw/OiBudW1iZXIgPSAyO1xyXG4gIC8vI2VuZHJlZ2lvblxyXG5cclxuICAvLyNyZWdpb24gb3V0cHV0c1xyXG4gIEBPdXRwdXQoKSBuZXdJdGVtRXZlbnQgPSBuZXcgRXZlbnRFbWl0dGVyPG51bWJlcj4oKTtcclxuICBAT3V0cHV0KCkgaW5wdXRGaWVsZENoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8bnVtYmVyPigpO1xyXG4gIC8vI2VuZHJlZ2lvblxyXG5cclxuICBwcml2YXRlIGlzVmFsdWVDaGFuZ2VkOiBib29sZWFuID0gZmFsc2VcclxuXHJcbiAgb3ZlcnJpZGUgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICBzdXBlci5uZ09uSW5pdCgpO1xyXG4gICAgLy8gaWYgKHRoaXMuaW5wdXRGaWVsZCA9PT0gdW5kZWZpbmVkIHx8IHRoaXMuaW5wdXRGaWVsZCA9PT0gbnVsbCkge1xyXG4gICAgLy8gICB0aGlzLmlucHV0RmllbGQgPSAwO1xyXG4gICAgLy8gICB0aGlzLmlucHV0RmllbGRDaGFuZ2UuZW1pdCh0aGlzLmlucHV0RmllbGQpO1xyXG4gICAgLy8gfVxyXG4gIH1cclxuXHJcbiAgdmFsdWVDaGFuZ2VkKCkge1xyXG4gICAgdGhpcy5pc1ZhbHVlQ2hhbmdlZCA9IHRydWVcclxuICB9XHJcblxyXG4gIG9uQ2hhbmdlb2ZPcHRpb25zKCkge1xyXG4gICAgaWYgKHRoaXMuaXNWYWx1ZUNoYW5nZWQpIHtcclxuICAgICAgdGhpcy5uZXdJdGVtRXZlbnQuZW1pdChOdW1iZXIodGhpcy5pbnB1dEZpZWxkKSk7XHJcbiAgICAgIHRoaXMuaW5wdXRGaWVsZENoYW5nZS5lbWl0KHRoaXMuaW5wdXRGaWVsZCk7XHJcbiAgICAgIHRoaXMuaXNWYWx1ZUNoYW5nZWQgPSBmYWxzZVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCI8ZGl2IGNsYXNzPVwiZmxleCBoLTJyZW1cIj5cclxuICAgIDxwLWlucHV0TnVtYmVyIGF1dG9TZWxlY3QgY2xhc3M9XCJ7e215U3R5bGVDbGFzc319XCIgXHJcbiAgICAgICAgc3R5bGVDbGFzcz1cInt7bXlTdHlsZUNsYXNzfX0gYm9yZGVyLXJhZGl1cy03XCIgXHJcbiAgICAgICAgaW5wdXRTdHlsZUNsYXNzPVwie3tteVN0eWxlQ2xhc3N9fSB7e3ZhbGlkYXRpb25TdGF0dXNDc3NDbGFzc319XCJcclxuICAgICAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIiBbKG5nTW9kZWwpXT1cImlucHV0RmllbGRcIiBcclxuICAgICAgICAobmdNb2RlbENoYW5nZSk9XCJ2YWx1ZUNoYW5nZWQoKVwiXHJcbiAgICAgICAgW3JlcXVpcmVkXT1cImlzUmVxdWlyZWRcIlxyXG4gICAgICAgIChvbkJsdXIpPVwib25DaGFuZ2VvZk9wdGlvbnMoKVwiIG5hbWU9XCJ7e2lucHV0TmFtZX19XCJcclxuICAgICAgICBpZD1cInt7aW5wdXRJZH19XCIgc3VmZml4PVwiJVwiIFttaW5GcmFjdGlvbkRpZ2l0c109XCJudW1PZkRlY2ltYWwgPz8gMFwiIFttYXhGcmFjdGlvbkRpZ2l0c109XCJudW1PZkRlY2ltYWwgPz8gMFwiPlxyXG4gICAgPC9wLWlucHV0TnVtYmVyPlxyXG4gICAgPFRzaS1CdWJibGUtSW5mbyBbaW5mb1RleHRdPVwiaW5mb1RleHRcIj48L1RzaS1CdWJibGUtSW5mbz5cclxuPC9kaXY+Il19
|