@sdcorejs/angular 19.1.3 → 19.1.5
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/README.md +19 -14
- package/components/audit-diff/index.d.ts +2 -0
- package/components/audit-diff/src/audit-diff.component.d.ts +30 -0
- package/components/audit-diff/src/audit-diff.engine.d.ts +40 -0
- package/components/badge/src/badge.component.d.ts +1 -1
- package/components/breadcrumb/index.d.ts +1 -0
- package/components/breadcrumb/src/breadcrumb.component.d.ts +50 -0
- package/components/data-state/index.d.ts +1 -0
- package/components/data-state/src/data-state.component.d.ts +40 -0
- package/components/document-builder/src/components/header-footer-builder/header-footer-builder.component.d.ts +1 -2
- package/components/document-builder/src/document-builder.component.d.ts +4 -4
- package/components/form-generic/src/components/form-builder/components/attribute-expression/attribute-expression.component.d.ts +7 -8
- package/components/form-generic/src/components/form-builder/components/attribute-input/attribute-input.component.d.ts +4 -5
- package/components/form-generic/src/components/form-builder/components/attribute-input-number/attribute-input-number.component.d.ts +1 -2
- package/components/form-generic/src/components/form-builder/components/attribute-parameter/attribute-parameter.component.d.ts +6 -5
- package/components/form-generic/src/components/form-builder/components/attribute-select/attribute-select.component.d.ts +4 -5
- package/components/form-generic/src/components/form-builder/components/attribute-selection/attribute-selection.component.d.ts +9 -9
- package/components/form-generic/src/components/form-builder/components/attribute-selection/components/build-queries/build-queries.component.d.ts +8 -7
- package/components/form-generic/src/components/form-builder/components/attribute-selection/components/build-variables/build-variables.component.d.ts +8 -7
- package/components/form-generic/src/components/form-builder/components/attribute-switch/attribute-switch.component.d.ts +3 -4
- package/components/form-generic/src/components/form-builder/components/attribute-table/attribute-table.component.d.ts +5 -6
- package/components/form-generic/src/components/form-builder/components/attribute-template/attribute-template.component.d.ts +1 -2
- package/components/form-generic/src/components/form-builder/components/attribute-textarea/attribute-textarea.component.d.ts +4 -5
- package/components/form-generic/src/components/form-builder/components/checkbox/attribute/checkbox-attribute.component.d.ts +6 -6
- package/components/form-generic/src/components/form-builder/components/chip-calendar/attribute/chip-calendar-attribute.component.d.ts +6 -6
- package/components/form-generic/src/components/form-builder/components/chip-calendar/control/chip-calendar-control.component.d.ts +3 -3
- package/components/form-generic/src/components/form-builder/components/chip-string/attribute/chip-string-attribute.component.d.ts +6 -6
- package/components/form-generic/src/components/form-builder/components/chip-string/control/chip-string-control.component.d.ts +3 -3
- package/components/form-generic/src/components/form-builder/components/configure-validation/configure-validation.component.d.ts +2 -2
- package/components/form-generic/src/components/form-builder/components/datetime/attribute/datetime-attribute.component.d.ts +6 -6
- package/components/form-generic/src/components/form-builder/components/datetime/control/datetime-control.component.d.ts +3 -3
- package/components/form-generic/src/components/form-builder/components/expression-builder/expression-builder.component.d.ts +6 -5
- package/components/form-generic/src/components/form-builder/components/html/attribute/components/build-queries/build-queries.component.d.ts +7 -6
- package/components/form-generic/src/components/form-builder/components/html/attribute/html-attribute.component.d.ts +7 -8
- package/components/form-generic/src/components/form-builder/components/html/control/html-control.component.d.ts +3 -4
- package/components/form-generic/src/components/form-builder/components/number/attribute/number-attribute.component.d.ts +6 -6
- package/components/form-generic/src/components/form-builder/components/number/control/number-control.component.d.ts +3 -3
- package/components/form-generic/src/components/form-builder/components/radio/attribute/radio-attribute.component.d.ts +6 -6
- package/components/form-generic/src/components/form-builder/components/radio/control/radio-control.component.d.ts +3 -3
- package/components/form-generic/src/components/form-builder/components/select/attribute/select-attribute.component.d.ts +6 -6
- package/components/form-generic/src/components/form-builder/components/select/control/select-control.component.d.ts +3 -3
- package/components/form-generic/src/components/form-builder/components/table/attribute/table-attribute.component.d.ts +6 -6
- package/components/form-generic/src/components/form-builder/components/table/control/table-control.component.d.ts +3 -3
- package/components/form-generic/src/components/form-builder/components/textarea/attribute/textarea-attribute.component.d.ts +6 -6
- package/components/form-generic/src/components/form-builder/components/textarea/control/textarea-control.component.d.ts +3 -3
- package/components/form-generic/src/components/form-builder/components/textfield/attribute/textfield-attribute.component.d.ts +6 -6
- package/components/form-generic/src/components/form-builder/components/textfield/control/textfield-control.component.d.ts +3 -3
- package/components/form-generic/src/components/form-builder/components/upload/attribute/upload-attribute.component.d.ts +6 -6
- package/components/form-generic/src/components/form-builder/components/upload/control/upload-control.component.d.ts +3 -3
- package/components/form-generic/src/components/form-render/components/item/components/chip-calendar/chip-calendar.component.d.ts +7 -6
- package/components/form-generic/src/components/form-render/components/item/components/chip-string/chip-string.component.d.ts +7 -6
- package/components/form-generic/src/components/form-render/components/item/components/datetime/datetime.component.d.ts +7 -7
- package/components/form-generic/src/components/form-render/components/item/components/html/html.component.d.ts +6 -6
- package/components/form-generic/src/components/form-render/components/item/components/number/number.component.d.ts +7 -6
- package/components/form-generic/src/components/form-render/components/item/components/radio/radio.component.d.ts +6 -7
- package/components/form-generic/src/components/form-render/components/item/components/select/select.component.d.ts +6 -7
- package/components/form-generic/src/components/form-render/components/item/components/table/table.component.d.ts +8 -8
- package/components/form-generic/src/components/form-render/components/item/components/textarea/textarea.component.d.ts +7 -6
- package/components/form-generic/src/components/form-render/components/item/components/textfield/textfield.component.d.ts +7 -6
- package/components/form-generic/src/components/form-render/components/item/components/upload/upload.component.d.ts +7 -6
- package/components/form-generic/src/components/form-render/components/item/item.component.d.ts +4 -4
- package/components/form-generic/src/components/sd-feel-expression/sd-feel-expression.component.d.ts +8 -9
- package/components/form-generic/src/pipes/component-viewed.pipe.d.ts +2 -3
- package/components/form-generic/src/pipes/html.pipe.d.ts +2 -2
- package/components/form-generic/src/services/form-render.service.d.ts +2 -2
- package/components/import-excel/src/import-excel.component.d.ts +4 -7
- package/components/import-excel/src/pipes/column-transform.pipe.d.ts +3 -2
- package/components/index.d.ts +4 -0
- package/components/job-progress/index.d.ts +1 -0
- package/components/job-progress/src/job-progress.component.d.ts +34 -0
- package/components/mini-editor/src/mini-editor.component.d.ts +7 -7
- package/components/modal/src/modal.component.d.ts +6 -1
- package/components/preview/index.d.ts +3 -0
- package/components/preview/src/preview-pdf/preview-pdf.browser.d.ts +28 -0
- package/components/preview/src/preview-pdf/preview-pdf.component.d.ts +61 -23
- package/components/preview/src/preview-pdf/preview-pdf.pdfjs.d.ts +77 -0
- package/components/preview/src/preview-pdf/preview-pdf.print.d.ts +10 -0
- package/components/preview/src/preview-pdf/preview-pdf.types.d.ts +11 -9
- package/components/side-drawer/src/side-drawer.component.d.ts +6 -1
- package/components/tab/src/tab-group.component.d.ts +1 -0
- package/components/tab/src/tab.component.d.ts +7 -1
- package/components/tab-router/src/components/tab-router-item/tab-router-item.component.d.ts +3 -4
- package/components/tab-router/src/pipes/tab-info.pipe.d.ts +2 -2
- package/components/tab-router/src/services/tab-decorator.service.d.ts +2 -1
- package/components/table/src/components/filter/column-filter/column-filter.component.d.ts +1 -1
- package/components/table/src/components/popup-export/popup-export.component.d.ts +6 -6
- package/components/table/src/models/table-column.model.d.ts +1 -1
- package/components/table/src/services/config.service.d.ts +3 -2
- package/components/table/src/services/table-filter/table-filter.model.d.ts +1 -1
- package/components/table/src/services/table-filter/table-filter.service.d.ts +2 -2
- package/components/tree/src/tree.component.d.ts +13 -2
- package/components/tree/src/tree.model.d.ts +11 -0
- package/components/upload-file/src/components/preview/preview.component.d.ts +4 -4
- package/directives/src/sd-hover-copy.directive.d.ts +6 -5
- package/directives/src/sd-href.directive.d.ts +2 -2
- package/directives/src/sd-scroll.directive.d.ts +3 -2
- package/fesm2022/sdcorejs-angular-components-anchor.mjs +14 -14
- package/fesm2022/sdcorejs-angular-components-anchor.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-components-audit-diff.mjs +332 -0
- package/fesm2022/sdcorejs-angular-components-audit-diff.mjs.map +1 -0
- package/fesm2022/sdcorejs-angular-components-badge.mjs +1 -0
- package/fesm2022/sdcorejs-angular-components-badge.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-components-breadcrumb.mjs +121 -0
- package/fesm2022/sdcorejs-angular-components-breadcrumb.mjs.map +1 -0
- package/fesm2022/sdcorejs-angular-components-data-state.mjs +68 -0
- package/fesm2022/sdcorejs-angular-components-data-state.mjs.map +1 -0
- package/fesm2022/sdcorejs-angular-components-document-builder.mjs +16 -21
- package/fesm2022/sdcorejs-angular-components-document-builder.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-components-editor.mjs +6 -4
- package/fesm2022/sdcorejs-angular-components-editor.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-components-form-generic.mjs +463 -806
- package/fesm2022/sdcorejs-angular-components-form-generic.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-components-import-excel.mjs +23 -33
- package/fesm2022/sdcorejs-angular-components-import-excel.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-components-job-progress.mjs +97 -0
- package/fesm2022/sdcorejs-angular-components-job-progress.mjs.map +1 -0
- package/fesm2022/sdcorejs-angular-components-mini-editor.mjs +9 -19
- package/fesm2022/sdcorejs-angular-components-mini-editor.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-components-modal.mjs +60 -3
- package/fesm2022/sdcorejs-angular-components-modal.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-components-preview.mjs +1437 -217
- package/fesm2022/sdcorejs-angular-components-preview.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-components-query-bar.mjs +4 -4
- package/fesm2022/sdcorejs-angular-components-query-bar.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-components-query-builder.mjs +1 -1
- package/fesm2022/sdcorejs-angular-components-query-builder.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-components-side-drawer.mjs +38 -1
- package/fesm2022/sdcorejs-angular-components-side-drawer.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-components-tab-router.mjs +16 -22
- package/fesm2022/sdcorejs-angular-components-tab-router.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-components-tab.mjs +47 -3
- package/fesm2022/sdcorejs-angular-components-tab.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-components-table.mjs +94 -61
- package/fesm2022/sdcorejs-angular-components-table.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-components-tree.mjs +185 -16
- package/fesm2022/sdcorejs-angular-components-tree.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-components-upload-file.mjs +14 -21
- package/fesm2022/sdcorejs-angular-components-upload-file.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-components.mjs +4 -0
- package/fesm2022/sdcorejs-angular-components.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-directives.mjs +29 -41
- package/fesm2022/sdcorejs-angular-directives.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-forms-autocomplete.mjs +7 -7
- package/fesm2022/sdcorejs-angular-forms-autocomplete.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-forms-checkbox.mjs +20 -73
- package/fesm2022/sdcorejs-angular-forms-checkbox.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-forms-chip-calendar.mjs +6 -3
- package/fesm2022/sdcorejs-angular-forms-chip-calendar.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-forms-chip.mjs +6 -3
- package/fesm2022/sdcorejs-angular-forms-chip.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-forms-date-range.mjs +16 -13
- package/fesm2022/sdcorejs-angular-forms-date-range.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-forms-date.mjs +42 -65
- package/fesm2022/sdcorejs-angular-forms-date.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-forms-datetime.mjs +51 -66
- package/fesm2022/sdcorejs-angular-forms-datetime.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-forms-entity-picker.mjs +384 -0
- package/fesm2022/sdcorejs-angular-forms-entity-picker.mjs.map +1 -0
- package/fesm2022/sdcorejs-angular-forms-input-color.mjs +1 -1
- package/fesm2022/sdcorejs-angular-forms-input-color.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-forms-input-number.mjs +7 -5
- package/fesm2022/sdcorejs-angular-forms-input-number.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-forms-input.mjs +289 -55
- package/fesm2022/sdcorejs-angular-forms-input.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-forms-models.mjs +155 -2
- package/fesm2022/sdcorejs-angular-forms-models.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-forms-radio.mjs +44 -68
- package/fesm2022/sdcorejs-angular-forms-radio.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-forms-select.mjs +6 -20
- package/fesm2022/sdcorejs-angular-forms-select.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-forms-switch.mjs +19 -66
- package/fesm2022/sdcorejs-angular-forms-switch.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-forms-textarea.mjs +6 -5
- package/fesm2022/sdcorejs-angular-forms-textarea.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-forms-time-range.mjs +279 -0
- package/fesm2022/sdcorejs-angular-forms-time-range.mjs.map +1 -0
- package/fesm2022/sdcorejs-angular-forms-time.mjs +309 -0
- package/fesm2022/sdcorejs-angular-forms-time.mjs.map +1 -0
- package/fesm2022/sdcorejs-angular-forms-tree-select.mjs +210 -0
- package/fesm2022/sdcorejs-angular-forms-tree-select.mjs.map +1 -0
- package/fesm2022/sdcorejs-angular-forms.mjs +73 -4
- package/fesm2022/sdcorejs-angular-forms.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-i18n.mjs +375 -10
- package/fesm2022/sdcorejs-angular-i18n.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-interceptors.mjs +12 -17
- package/fesm2022/sdcorejs-angular-interceptors.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-modules-layout.mjs +992 -166
- package/fesm2022/sdcorejs-angular-modules-layout.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-pipes.mjs +5 -7
- package/fesm2022/sdcorejs-angular-pipes.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-services-api.mjs +407 -137
- package/fesm2022/sdcorejs-angular-services-api.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-services-cache.mjs +515 -105
- package/fesm2022/sdcorejs-angular-services-cache.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-services-confirm.mjs +5 -7
- package/fesm2022/sdcorejs-angular-services-confirm.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-services-docx.mjs +7 -10
- package/fesm2022/sdcorejs-angular-services-docx.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-services-loading.mjs +339 -74
- package/fesm2022/sdcorejs-angular-services-loading.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-services-notify.mjs +7 -10
- package/fesm2022/sdcorejs-angular-services-notify.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-services-persistence.mjs +899 -0
- package/fesm2022/sdcorejs-angular-services-persistence.mjs.map +1 -0
- package/fesm2022/sdcorejs-angular-services-storage.mjs +324 -122
- package/fesm2022/sdcorejs-angular-services-storage.mjs.map +1 -1
- package/fesm2022/sdcorejs-angular-services-task.mjs +389 -0
- package/fesm2022/sdcorejs-angular-services-task.mjs.map +1 -0
- package/fesm2022/sdcorejs-angular-services-unsaved-changes.mjs +255 -0
- package/fesm2022/sdcorejs-angular-services-unsaved-changes.mjs.map +1 -0
- package/fesm2022/sdcorejs-angular-services-viewport.mjs +76 -0
- package/fesm2022/sdcorejs-angular-services-viewport.mjs.map +1 -0
- package/fesm2022/sdcorejs-angular-services.mjs +4 -0
- package/fesm2022/sdcorejs-angular-services.mjs.map +1 -1
- package/forms/autocomplete/src/autocomplete.component.d.ts +3 -4
- package/forms/checkbox/src/checkbox.component.d.ts +4 -8
- package/forms/date/src/date.component.d.ts +3 -2
- package/forms/date-range/src/date-range.component.d.ts +5 -8
- package/forms/datetime/src/datetime.component.d.ts +3 -2
- package/forms/entity-picker/index.d.ts +1 -0
- package/forms/entity-picker/src/entity-picker.component.d.ts +123 -0
- package/forms/index.d.ts +6 -0
- package/forms/input/index.d.ts +1 -0
- package/forms/input/src/input-mask.d.ts +43 -0
- package/forms/input/src/input.component.d.ts +26 -9
- package/forms/input-number/src/input-number.component.d.ts +1 -1
- package/forms/models/index.d.ts +1 -0
- package/forms/models/src/sd-form-control-connector.d.ts +86 -0
- package/forms/radio/src/radio.component.d.ts +12 -8
- package/forms/src/forms.module.d.ts +9 -5
- package/forms/switch/src/switch.component.d.ts +4 -7
- package/forms/time/index.d.ts +3 -0
- package/forms/time/src/time-picker.adapter.d.ts +13 -0
- package/forms/time/src/time-value.d.ts +19 -0
- package/forms/time/src/time.component.d.ts +78 -0
- package/forms/time-range/index.d.ts +2 -0
- package/forms/time-range/src/time-range-value.d.ts +14 -0
- package/forms/time-range/src/time-range.component.d.ts +80 -0
- package/forms/tree-select/index.d.ts +1 -0
- package/forms/tree-select/src/tree-select.component.d.ts +71 -0
- package/i18n/src/en.d.ts +72 -2
- package/interceptors/no-internet/no-internet.interceptor.d.ts +2 -3
- package/interceptors/unauthorized/unauthorized.interceptor.d.ts +2 -2
- package/modules/layout/components/index.d.ts +6 -0
- package/modules/layout/components/layout-main/layout-main.component.d.ts +7 -2
- package/modules/layout/components/shared/menu-tree/menu-tree.component.d.ts +33 -0
- package/modules/layout/components/shared/search-field/search-field.component.d.ts +9 -0
- package/modules/layout/components/shared/user-menu/user-menu.component.d.ts +45 -0
- package/modules/layout/components/sidebar-mobile-v1/components/user/user.component.d.ts +3 -11
- package/modules/layout/components/sidebar-mobile-v2/main.component.d.ts +27 -0
- package/modules/layout/components/sidebar-mobile-v3/main.component.d.ts +28 -0
- package/modules/layout/components/sidebar-v1/components/sidebar/sidebar.component.d.ts +4 -4
- package/modules/layout/components/sidebar-v1/components/user/user.component.d.ts +3 -9
- package/modules/layout/components/sidebar-v1/main.component.d.ts +3 -2
- package/modules/layout/components/sidebar-v2/main.component.d.ts +36 -0
- package/modules/layout/components/sidebar-v3/main.component.d.ts +29 -0
- package/modules/layout/configurations/layout.configuration.d.ts +78 -5
- package/modules/layout/index.d.ts +1 -0
- package/modules/layout/pipes/menu.pipe.d.ts +2 -2
- package/modules/layout/services/index.d.ts +3 -0
- package/modules/layout/services/layout.service.d.ts +2 -2
- package/modules/layout/services/menu/menu.utils.d.ts +6 -0
- package/modules/layout/services/navigation-state/navigation-state.service.d.ts +18 -0
- package/modules/layout/services/responsive/responsive.service.d.ts +12 -0
- package/modules/layout/services/storage/storage.service.d.ts +21 -8
- package/package.json +49 -1
- package/pipes/src/safe-html.pipe.d.ts +2 -2
- package/services/api/src/api.model.d.ts +54 -15
- package/services/api/src/api.service.d.ts +13 -8
- package/services/api/src/interceptors/api.interceptor.d.ts +1 -1
- package/services/cache/src/cache.model.d.ts +46 -13
- package/services/cache/src/cache.service.d.ts +5 -2
- package/services/confirm/src/lib/confirm.service.d.ts +2 -2
- package/services/docx/src/lib/docx.service.d.ts +2 -3
- package/services/index.d.ts +4 -0
- package/services/loading/src/loading.service.d.ts +15 -8
- package/services/notify/src/components/toast/toast.component.d.ts +2 -3
- package/services/persistence/index.d.ts +5 -0
- package/services/persistence/src/graph-serializer.d.ts +16 -0
- package/services/persistence/src/persistence-envelope.d.ts +28 -0
- package/services/persistence/src/persistence-key.d.ts +17 -0
- package/services/persistence/src/persistence.model.d.ts +63 -0
- package/services/persistence/src/storage-adapter.d.ts +29 -0
- package/services/storage/src/storage.model.d.ts +20 -5
- package/services/storage/src/storage.service.d.ts +6 -3
- package/services/task/index.d.ts +3 -0
- package/services/task/src/task.model.d.ts +75 -0
- package/services/task/src/task.service.d.ts +14 -0
- package/services/task/src/task.tokens.d.ts +12 -0
- package/services/unsaved-changes/index.d.ts +4 -0
- package/services/unsaved-changes/src/unsaved-changes.adapters.d.ts +15 -0
- package/services/unsaved-changes/src/unsaved-changes.model.d.ts +41 -0
- package/services/unsaved-changes/src/unsaved-changes.service.d.ts +16 -0
- package/services/unsaved-changes/src/unsaved-changes.tokens.d.ts +9 -0
- package/services/viewport/index.d.ts +3 -0
- package/services/viewport/src/viewport.model.d.ts +12 -0
- package/services/viewport/src/viewport.service.d.ts +18 -0
- package/services/viewport/src/viewport.tokens.d.ts +6 -0
package/components/form-generic/src/components/sd-feel-expression/sd-feel-expression.component.d.ts
CHANGED
|
@@ -1,9 +1,7 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { OnInit } from '@angular/core';
|
|
2
2
|
import { FormGroup } from '@angular/forms';
|
|
3
3
|
import { SdModal } from '@sdcorejs/angular/components/modal';
|
|
4
4
|
import { Attribute, SdFormGenericComponent, SdFormGenericExpression, SdFormGenericGroup } from '../../models';
|
|
5
|
-
import { ExpressionFeelPipe } from '../../pipes';
|
|
6
|
-
import { FormGenericService } from '../../services';
|
|
7
5
|
import * as i0 from "@angular/core";
|
|
8
6
|
export declare class SdFeelExpression implements OnInit {
|
|
9
7
|
#private;
|
|
@@ -19,18 +17,19 @@ export declare class SdFeelExpression implements OnInit {
|
|
|
19
17
|
}[]>;
|
|
20
18
|
attributes: Attribute[];
|
|
21
19
|
attribute: Record<string, Attribute>;
|
|
22
|
-
components: (SdFormGenericComponent | SdFormGenericGroup)[]
|
|
20
|
+
readonly components: import("@angular/core").InputSignal<(SdFormGenericComponent | SdFormGenericGroup)[]>;
|
|
23
21
|
expression?: SdFormGenericExpression;
|
|
24
22
|
set _expression(expression: SdFormGenericExpression | undefined);
|
|
25
|
-
expressionChange:
|
|
23
|
+
readonly expressionChange: import("@angular/core").OutputEmitterRef<SdFormGenericExpression>;
|
|
26
24
|
model?: string;
|
|
27
25
|
set _model(model: string | undefined);
|
|
28
|
-
modelChange:
|
|
29
|
-
sdChange:
|
|
26
|
+
readonly modelChange: import("@angular/core").OutputEmitterRef<string | undefined>;
|
|
27
|
+
readonly sdChange: import("@angular/core").OutputEmitterRef<{
|
|
30
28
|
model?: string;
|
|
31
29
|
expression?: SdFormGenericExpression;
|
|
32
30
|
}>;
|
|
33
|
-
|
|
31
|
+
/** Inserted by Angular inject() migration for backwards compatibility */
|
|
32
|
+
constructor(...args: unknown[]);
|
|
34
33
|
ngOnInit(): void;
|
|
35
34
|
edit: () => Promise<void>;
|
|
36
35
|
addCondition: (conditions: SdFormGenericExpression["conditions"]) => void;
|
|
@@ -38,5 +37,5 @@ export declare class SdFeelExpression implements OnInit {
|
|
|
38
37
|
remove: (conditions: SdFormGenericExpression["conditions"], idx: number) => void;
|
|
39
38
|
onAccept: () => void;
|
|
40
39
|
static ɵfac: i0.ɵɵFactoryDeclaration<SdFeelExpression, never>;
|
|
41
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<SdFeelExpression, "sd-feel-expression", never, { "components": { "alias": "components"; "required": true; }; "_expression": { "alias": "expression"; "required": true; }; "_model": { "alias": "model"; "required": true; }; }, { "expressionChange": "expressionChange"; "modelChange": "modelChange"; "sdChange": "sdChange"; }, never, never, true, never>;
|
|
40
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<SdFeelExpression, "sd-feel-expression", never, { "components": { "alias": "components"; "required": true; "isSignal": true; }; "_expression": { "alias": "expression"; "required": true; }; "_model": { "alias": "model"; "required": true; }; }, { "expressionChange": "expressionChange"; "modelChange": "modelChange"; "sdChange": "sdChange"; }, never, never, true, never>;
|
|
42
41
|
}
|
|
@@ -1,12 +1,11 @@
|
|
|
1
1
|
import { PipeTransform } from '@angular/core';
|
|
2
2
|
import { SdFormGenericComponent, SdFormGenericHtml } from '../models';
|
|
3
|
-
import { FormGenericService } from '../services';
|
|
4
|
-
import { SdFormatNumberPipe } from '@sdcorejs/angular/pipes';
|
|
5
3
|
import * as i0 from "@angular/core";
|
|
6
4
|
export declare class ComponentViewedPipe implements PipeTransform {
|
|
7
5
|
private readonly formatNumberPipe;
|
|
8
6
|
private readonly formGenericService;
|
|
9
|
-
|
|
7
|
+
/** Inserted by Angular inject() migration for backwards compatibility */
|
|
8
|
+
constructor(...args: unknown[]);
|
|
10
9
|
transform: (value: any, entity: Record<string, any>, component: Exclude<SdFormGenericComponent, SdFormGenericHtml>) => Promise<string>;
|
|
11
10
|
static ɵfac: i0.ɵɵFactoryDeclaration<ComponentViewedPipe, never>;
|
|
12
11
|
static ɵpipe: i0.ɵɵPipeDeclaration<ComponentViewedPipe, "componentViewed", true>;
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import { PipeTransform } from '@angular/core';
|
|
2
|
-
import { DomSanitizer } from '@angular/platform-browser';
|
|
3
2
|
import { SdFormGenericHtml } from '../models';
|
|
4
3
|
import * as i0 from "@angular/core";
|
|
5
4
|
export declare class HtmlPipe implements PipeTransform {
|
|
6
5
|
private readonly sanitizer;
|
|
7
|
-
|
|
6
|
+
/** Inserted by Angular inject() migration for backwards compatibility */
|
|
7
|
+
constructor(...args: unknown[]);
|
|
8
8
|
transform: (hashed: string | undefined | null, content: string, component: SdFormGenericHtml) => string;
|
|
9
9
|
static ɵfac: i0.ɵɵFactoryDeclaration<HtmlPipe, never>;
|
|
10
10
|
static ɵpipe: i0.ɵɵPipeDeclaration<HtmlPipe, "htmlPipe", true>;
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { SdFormGeneric } from '../models/form-generic.model';
|
|
2
|
-
import { ComponentViewedPipe } from '../pipes';
|
|
3
2
|
import * as i0 from "@angular/core";
|
|
4
3
|
export declare class SdFormRenderService {
|
|
5
4
|
private readonly componentViewedPipe;
|
|
6
|
-
|
|
5
|
+
/** Inserted by Angular inject() migration for backwards compatibility */
|
|
6
|
+
constructor(...args: unknown[]);
|
|
7
7
|
viewEntities: (form: SdFormGeneric, entities: Record<string, any>[]) => Promise<Record<string, any>[]>;
|
|
8
8
|
static ɵfac: i0.ɵɵFactoryDeclaration<SdFormRenderService, never>;
|
|
9
9
|
static ɵprov: i0.ɵɵInjectableDeclaration<SdFormRenderService>;
|
|
@@ -1,11 +1,7 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { OnDestroy, OnInit } from '@angular/core';
|
|
2
2
|
import { MatPaginator } from '@angular/material/paginator';
|
|
3
|
-
import { ColumnHiddenPipe } from './pipes/columm-hidden.pipe';
|
|
4
3
|
import { SdImportExcelItem, SdImportExcelOption, SdImportExcelValidation } from './import-excel.model';
|
|
5
4
|
import { SdModal } from '@sdcorejs/angular/components/modal';
|
|
6
|
-
import { SdExcelService } from '@sdcorejs/angular/services/excel';
|
|
7
|
-
import { SdNotifyService } from '@sdcorejs/angular/services/notify';
|
|
8
|
-
import { SdLoadingService } from '@sdcorejs/angular/services/loading';
|
|
9
5
|
import * as i0 from "@angular/core";
|
|
10
6
|
export declare class SdImportExcel implements OnInit, OnDestroy {
|
|
11
7
|
#private;
|
|
@@ -29,8 +25,9 @@ export declare class SdImportExcel implements OnInit, OnDestroy {
|
|
|
29
25
|
uploading: boolean;
|
|
30
26
|
isUploaded: boolean;
|
|
31
27
|
isDownloadTemplate: boolean;
|
|
32
|
-
sdClosed:
|
|
33
|
-
|
|
28
|
+
readonly sdClosed: import("@angular/core").OutputEmitterRef<void>;
|
|
29
|
+
/** Inserted by Angular inject() migration for backwards compatibility */
|
|
30
|
+
constructor(...args: unknown[]);
|
|
34
31
|
ngOnInit(): void;
|
|
35
32
|
ngOnDestroy(): void;
|
|
36
33
|
open: () => void;
|
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
import { PipeTransform } from '@angular/core';
|
|
2
|
-
import {
|
|
2
|
+
import { SafeHtml } from '@angular/platform-browser';
|
|
3
3
|
import { SdImportExcelItem, SdUploadExcelColumn } from '../import-excel.model';
|
|
4
4
|
import * as i0 from "@angular/core";
|
|
5
5
|
export declare class ColumnTransformPipe implements PipeTransform {
|
|
6
6
|
private sanitizer;
|
|
7
|
-
|
|
7
|
+
/** Inserted by Angular inject() migration for backwards compatibility */
|
|
8
|
+
constructor(...args: unknown[]);
|
|
8
9
|
transform(item: SdImportExcelItem, column: SdUploadExcelColumn): Promise<string | SafeHtml>;
|
|
9
10
|
static ɵfac: i0.ɵɵFactoryDeclaration<ColumnTransformPipe, never>;
|
|
10
11
|
static ɵpipe: i0.ɵɵPipeDeclaration<ColumnTransformPipe, "columnTransform", true>;
|
package/components/index.d.ts
CHANGED
|
@@ -25,3 +25,7 @@ export * from '@sdcorejs/angular/components/editor';
|
|
|
25
25
|
export * from '@sdcorejs/angular/components/splitter';
|
|
26
26
|
export * from '@sdcorejs/angular/components/preview';
|
|
27
27
|
export * from '@sdcorejs/angular/components/autoid-inspector';
|
|
28
|
+
export * from '@sdcorejs/angular/components/breadcrumb';
|
|
29
|
+
export * from '@sdcorejs/angular/components/data-state';
|
|
30
|
+
export * from '@sdcorejs/angular/components/job-progress';
|
|
31
|
+
export * from '@sdcorejs/angular/components/audit-diff';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './src/job-progress.component';
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import { SdTaskState, SdTaskStatus, SdTaskView } from '@sdcorejs/angular/services/task';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
export type SdJobProgressMode = 'bar' | 'compact' | 'details';
|
|
4
|
+
export declare class SdJobProgress {
|
|
5
|
+
#private;
|
|
6
|
+
readonly taskId: import("@angular/core").InputSignal<string | undefined>;
|
|
7
|
+
readonly state: import("@angular/core").InputSignal<SdTaskState<unknown> | undefined>;
|
|
8
|
+
readonly mode: import("@angular/core").InputSignal<SdJobProgressMode>;
|
|
9
|
+
readonly title: import("@angular/core").InputSignal<string | undefined>;
|
|
10
|
+
readonly message: import("@angular/core").InputSignal<string | undefined>;
|
|
11
|
+
readonly showActions: import("@angular/core").InputSignalWithTransform<boolean, unknown>;
|
|
12
|
+
readonly sdCancel: import("@angular/core").OutputEmitterRef<void>;
|
|
13
|
+
readonly sdRetry: import("@angular/core").OutputEmitterRef<void>;
|
|
14
|
+
readonly task: import("@angular/core").Signal<SdTaskView<unknown> | undefined>;
|
|
15
|
+
readonly resolvedState: import("@angular/core").Signal<SdTaskState<unknown> | undefined>;
|
|
16
|
+
readonly progress: import("@angular/core").Signal<number | undefined>;
|
|
17
|
+
readonly effectiveTitle: import("@angular/core").Signal<string | undefined>;
|
|
18
|
+
readonly effectiveMessage: import("@angular/core").Signal<string | undefined>;
|
|
19
|
+
readonly statusLabel: import("@angular/core").Signal<string>;
|
|
20
|
+
readonly progressLabel: import("@angular/core").Signal<string>;
|
|
21
|
+
readonly cancelLabel: import("@angular/core").Signal<string>;
|
|
22
|
+
readonly retryLabel: import("@angular/core").Signal<string>;
|
|
23
|
+
readonly displayedError: import("@angular/core").Signal<string | undefined>;
|
|
24
|
+
readonly active: import("@angular/core").Signal<boolean>;
|
|
25
|
+
readonly canCancel: import("@angular/core").Signal<boolean>;
|
|
26
|
+
readonly canRetry: import("@angular/core").Signal<boolean>;
|
|
27
|
+
get modeAttr(): SdJobProgressMode;
|
|
28
|
+
get statusAttr(): SdTaskStatus;
|
|
29
|
+
readonly ariaLive = "polite";
|
|
30
|
+
onCancel(): void;
|
|
31
|
+
onRetry(): void;
|
|
32
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<SdJobProgress, never>;
|
|
33
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<SdJobProgress, "sd-job-progress", never, { "taskId": { "alias": "taskId"; "required": false; "isSignal": true; }; "state": { "alias": "state"; "required": false; "isSignal": true; }; "mode": { "alias": "mode"; "required": false; "isSignal": true; }; "title": { "alias": "title"; "required": false; "isSignal": true; }; "message": { "alias": "message"; "required": false; "isSignal": true; }; "showActions": { "alias": "showActions"; "required": false; "isSignal": true; }; }, { "sdCancel": "sdCancel"; "sdRetry": "sdRetry"; }, never, never, true, never>;
|
|
34
|
+
}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { OnDestroy } from '@angular/core';
|
|
2
2
|
import { ClassicEditor } from 'ckeditor5';
|
|
3
3
|
import { ControlValueAccessor } from '@angular/forms';
|
|
4
4
|
import { SdMiniEditorOption, SdMiniEditorConfig } from './mini-editor.model';
|
|
@@ -25,15 +25,15 @@ export declare class SdMiniEditor implements ControlValueAccessor, OnDestroy {
|
|
|
25
25
|
get maxEditorHeight(): string | undefined;
|
|
26
26
|
/** NgModel binding - nội dung HTML/Markdown */
|
|
27
27
|
value: string;
|
|
28
|
-
valueChange:
|
|
28
|
+
readonly valueChange: import("@angular/core").OutputEmitterRef<string>;
|
|
29
29
|
/** Event emitter khi content thay đổi */
|
|
30
|
-
contentChange:
|
|
30
|
+
readonly contentChange: import("@angular/core").OutputEmitterRef<string>;
|
|
31
31
|
/** Event emitter khi blur */
|
|
32
|
-
blur:
|
|
32
|
+
readonly blur: import("@angular/core").OutputEmitterRef<FocusEvent>;
|
|
33
33
|
/** Event emitter khi focus */
|
|
34
|
-
focus:
|
|
34
|
+
readonly focus: import("@angular/core").OutputEmitterRef<FocusEvent>;
|
|
35
35
|
/** Disabled state */
|
|
36
|
-
disabled: boolean
|
|
36
|
+
readonly disabled: import("@angular/core").InputSignal<boolean>;
|
|
37
37
|
Editor: typeof ClassicEditor;
|
|
38
38
|
get editorConfig(): SdMiniEditorConfig;
|
|
39
39
|
constructor();
|
|
@@ -87,5 +87,5 @@ export declare class SdMiniEditor implements ControlValueAccessor, OnDestroy {
|
|
|
87
87
|
*/
|
|
88
88
|
registerOnTouched(fn: () => void): void;
|
|
89
89
|
static ɵfac: i0.ɵɵFactoryDeclaration<SdMiniEditor, never>;
|
|
90
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<SdMiniEditor, "sd-mini-editor", never, { "option": { "alias": "option"; "required": true; }; "value": { "alias": "value"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; }, { "valueChange": "valueChange"; "contentChange": "contentChange"; "blur": "blur"; "focus": "focus"; }, never, never, true, never>;
|
|
90
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<SdMiniEditor, "sd-mini-editor", never, { "option": { "alias": "option"; "required": true; }; "value": { "alias": "value"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; }, { "valueChange": "valueChange"; "contentChange": "contentChange"; "blur": "blur"; "focus": "focus"; }, never, never, true, never>;
|
|
91
91
|
}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { ElementRef, TemplateRef } from '@angular/core';
|
|
2
2
|
import { Color } from '@sdcorejs/utils/models';
|
|
3
3
|
import * as i0 from "@angular/core";
|
|
4
|
+
export type SdModalBeforeClose = () => boolean | Promise<boolean>;
|
|
4
5
|
export declare class SdModal {
|
|
5
6
|
#private;
|
|
6
7
|
static index: import("@angular/core").WritableSignal<number>;
|
|
@@ -19,12 +20,16 @@ export declare class SdModal {
|
|
|
19
20
|
lazyLoadContent: import("@angular/core").InputSignalWithTransform<boolean, unknown>;
|
|
20
21
|
hideClose: import("@angular/core").InputSignalWithTransform<boolean, boolean | "">;
|
|
21
22
|
disableBackdropClose: import("@angular/core").InputSignalWithTransform<boolean, boolean | "">;
|
|
23
|
+
beforeClose: import("@angular/core").InputSignal<SdModalBeforeClose | undefined>;
|
|
22
24
|
sdClosed: import("@angular/core").OutputEmitterRef<void>;
|
|
25
|
+
sdCloseError: import("@angular/core").OutputEmitterRef<unknown>;
|
|
23
26
|
isOpened: import("@angular/core").WritableSignal<boolean>;
|
|
24
27
|
alreadyOpened: import("@angular/core").WritableSignal<boolean>;
|
|
25
28
|
constructor();
|
|
26
29
|
open: () => void;
|
|
27
30
|
close: () => void;
|
|
31
|
+
requestClose: () => Promise<boolean>;
|
|
32
|
+
forceClose: () => void;
|
|
28
33
|
static ɵfac: i0.ɵɵFactoryDeclaration<SdModal, never>;
|
|
29
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<SdModal, "sd-modal", never, { "autoIdInput": { "alias": "autoId"; "required": false; "isSignal": true; }; "title": { "alias": "title"; "required": false; "isSignal": true; }; "color": { "alias": "color"; "required": false; "isSignal": true; }; "width": { "alias": "width"; "required": false; "isSignal": true; }; "height": { "alias": "height"; "required": false; "isSignal": true; }; "view": { "alias": "view"; "required": false; "isSignal": true; }; "modalClass": { "alias": "modalClass"; "required": false; "isSignal": true; }; "lazyLoadContent": { "alias": "lazyLoadContent"; "required": false; "isSignal": true; }; "hideClose": { "alias": "hideClose"; "required": false; "isSignal": true; }; "disableBackdropClose": { "alias": "disableBackdropClose"; "required": false; "isSignal": true; }; }, { "sdClosed": "sdClosed"; }, never, ["[sdHeaderLeft]", "[sdHeaderRight]", "*", "[sdFooterLeft]", "[sdFooterRight]"], true, never>;
|
|
34
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<SdModal, "sd-modal", never, { "autoIdInput": { "alias": "autoId"; "required": false; "isSignal": true; }; "title": { "alias": "title"; "required": false; "isSignal": true; }; "color": { "alias": "color"; "required": false; "isSignal": true; }; "width": { "alias": "width"; "required": false; "isSignal": true; }; "height": { "alias": "height"; "required": false; "isSignal": true; }; "view": { "alias": "view"; "required": false; "isSignal": true; }; "modalClass": { "alias": "modalClass"; "required": false; "isSignal": true; }; "lazyLoadContent": { "alias": "lazyLoadContent"; "required": false; "isSignal": true; }; "hideClose": { "alias": "hideClose"; "required": false; "isSignal": true; }; "disableBackdropClose": { "alias": "disableBackdropClose"; "required": false; "isSignal": true; }; "beforeClose": { "alias": "beforeClose"; "required": false; "isSignal": true; }; }, { "sdClosed": "sdClosed"; "sdCloseError": "sdCloseError"; }, never, ["[sdHeaderLeft]", "[sdHeaderRight]", "*", "[sdFooterLeft]", "[sdFooterRight]"], true, never>;
|
|
30
35
|
}
|
|
@@ -1,4 +1,7 @@
|
|
|
1
1
|
export * from './src/preview-image/preview-image.component';
|
|
2
2
|
export type * from './src/preview-image/preview-image.types';
|
|
3
3
|
export * from './src/preview-pdf/preview-pdf.component';
|
|
4
|
+
export * from './src/preview-pdf/preview-pdf.browser';
|
|
5
|
+
export * from './src/preview-pdf/preview-pdf.print';
|
|
6
|
+
export * from './src/preview-pdf/preview-pdf.pdfjs';
|
|
4
7
|
export type * from './src/preview-pdf/preview-pdf.types';
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { InjectionToken } from '@angular/core';
|
|
2
|
+
export interface SdPdfIntersectionEntry {
|
|
3
|
+
readonly target: Element;
|
|
4
|
+
readonly isIntersecting: boolean;
|
|
5
|
+
}
|
|
6
|
+
export interface SdPdfBrowserAdapter {
|
|
7
|
+
readonly isBrowser: boolean;
|
|
8
|
+
/** The platform can trigger an anchor download for an existing URL. */
|
|
9
|
+
readonly canDownloadUrl: boolean;
|
|
10
|
+
/** The platform can create/revoke an object URL and then download it. */
|
|
11
|
+
readonly canDownloadBlob: boolean;
|
|
12
|
+
readonly canFullscreen: boolean;
|
|
13
|
+
isFile(value: unknown): value is File;
|
|
14
|
+
isBlob(value: unknown): value is Blob;
|
|
15
|
+
createPdfBlob(data: Uint8Array): Blob | null;
|
|
16
|
+
createObjectUrl(blob: Blob): string | null;
|
|
17
|
+
revokeObjectUrl(url: string): void;
|
|
18
|
+
download(href: string, filename: string): boolean;
|
|
19
|
+
createElement<K extends keyof HTMLElementTagNameMap>(tagName: K): HTMLElementTagNameMap[K] | null;
|
|
20
|
+
createImage(): HTMLImageElement | null;
|
|
21
|
+
listenFullscreen(host: HTMLElement, listener: (active: boolean) => void): () => void;
|
|
22
|
+
toggleFullscreen(host: HTMLElement): Promise<void>;
|
|
23
|
+
observeResize(element: Element, listener: () => void): () => void;
|
|
24
|
+
observeIntersections(elements: readonly Element[], listener: (entries: readonly SdPdfIntersectionEntry[]) => void, options?: IntersectionObserverInit): () => void;
|
|
25
|
+
scheduleFrame(callback: FrameRequestCallback): number | null;
|
|
26
|
+
cancelFrame(handle: number | null): void;
|
|
27
|
+
}
|
|
28
|
+
export declare const SD_PDF_BROWSER_ADAPTER: InjectionToken<SdPdfBrowserAdapter>;
|
|
@@ -1,33 +1,37 @@
|
|
|
1
|
-
import { ElementRef
|
|
2
|
-
import { PdfErrorEvent, PdfLoadEvent, PdfMeta, PdfScrollMode, PdfSearchResult, PdfSearchState, PdfSidebarMode, PdfSource, PdfStage, PdfZoomMode, PreviewTheme } from './preview-pdf.types';
|
|
1
|
+
import { ElementRef } from '@angular/core';
|
|
2
|
+
import { PdfErrorEvent, PdfLoadEvent, PdfMeta, PdfOutlineItem, PdfScrollMode, PdfSearchResult, PdfSearchState, PdfSidebarMode, PdfSource, PdfStage, PdfZoomMode, PreviewTheme } from './preview-pdf.types';
|
|
3
3
|
import * as i0 from "@angular/core";
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
getDocument: (spec: unknown) => {
|
|
11
|
-
promise: Promise<unknown>;
|
|
12
|
-
onProgress?: (p: {
|
|
13
|
-
loaded: number;
|
|
14
|
-
total: number;
|
|
15
|
-
}) => void;
|
|
16
|
-
};
|
|
17
|
-
GlobalWorkerOptions: {
|
|
18
|
-
workerSrc: string;
|
|
19
|
-
};
|
|
4
|
+
export { SD_PDFJS_LIB } from './preview-pdf.pdfjs';
|
|
5
|
+
export type { SdPdfJsLib } from './preview-pdf.pdfjs';
|
|
6
|
+
interface PdfOutlineRow {
|
|
7
|
+
readonly item: PdfOutlineItem;
|
|
8
|
+
readonly level: number;
|
|
9
|
+
readonly parentId: string | null;
|
|
20
10
|
}
|
|
21
|
-
|
|
22
|
-
export declare class SdPreviewPdf
|
|
11
|
+
type PdfSidebarTabMode = Exclude<PdfSidebarMode, 'none'>;
|
|
12
|
+
export declare class SdPreviewPdf {
|
|
23
13
|
#private;
|
|
24
14
|
static readonly MIN_ZOOM = 0.25;
|
|
25
15
|
static readonly MAX_ZOOM = 4;
|
|
26
16
|
static readonly ZOOM_STEP = 0.1;
|
|
17
|
+
static readonly OUTLINE_MAX_DEPTH = 64;
|
|
18
|
+
static readonly OUTLINE_MAX_NODES = 10000;
|
|
19
|
+
static readonly MAX_SEARCH_RESULTS = 1000;
|
|
20
|
+
static readonly MAX_PAGE_TEXT_CACHE_PAGES = 128;
|
|
21
|
+
static readonly THUMBNAIL_WINDOW_SIZE = 48;
|
|
22
|
+
static readonly THUMBNAIL_ITEM_HEIGHT = 220;
|
|
23
|
+
static readonly MAX_THUMBNAIL_CACHE_ENTRIES = 96;
|
|
24
|
+
private static readonly MAX_CONCURRENT_THUMBNAIL_WORK;
|
|
25
|
+
static readonly MAX_CANVAS_DIMENSION = 8192;
|
|
26
|
+
static readonly MAX_CANVAS_PIXELS = 16777216;
|
|
27
27
|
protected readonly pageCanvasRef: import("@angular/core").Signal<ElementRef<HTMLCanvasElement> | undefined>;
|
|
28
28
|
protected readonly stageEl: import("@angular/core").Signal<ElementRef<HTMLElement> | undefined>;
|
|
29
29
|
protected readonly pageInputRef: import("@angular/core").Signal<ElementRef<HTMLInputElement> | undefined>;
|
|
30
30
|
protected readonly searchInputRef: import("@angular/core").Signal<ElementRef<HTMLInputElement> | undefined>;
|
|
31
|
+
protected readonly sidebarContentRef: import("@angular/core").Signal<ElementRef<HTMLElement> | undefined>;
|
|
32
|
+
protected readonly outlineItemRefs: import("@angular/core").Signal<readonly ElementRef<HTMLElement>[]>;
|
|
33
|
+
protected readonly sidebarTabRefs: import("@angular/core").Signal<readonly ElementRef<HTMLButtonElement>[]>;
|
|
34
|
+
protected readonly continuousCanvases: import("@angular/core").Signal<readonly ElementRef<HTMLCanvasElement>[]>;
|
|
31
35
|
protected readonly thumbCanvases: import("@angular/core").Signal<readonly ElementRef<HTMLCanvasElement>[]>;
|
|
32
36
|
readonly autoIdInput: import("@angular/core").InputSignal<string | null | undefined>;
|
|
33
37
|
readonly autoId: import("@angular/core").Signal<string | undefined>;
|
|
@@ -51,6 +55,13 @@ export declare class SdPreviewPdf implements OnDestroy {
|
|
|
51
55
|
readonly autoIdTabThumbnails: import("@angular/core").Signal<string | undefined>;
|
|
52
56
|
readonly autoIdTabOutline: import("@angular/core").Signal<string | undefined>;
|
|
53
57
|
readonly autoIdTabSearch: import("@angular/core").Signal<string | undefined>;
|
|
58
|
+
readonly sidebarPanelId: import("@angular/core").Signal<string>;
|
|
59
|
+
readonly sidebarRegionId: import("@angular/core").Signal<string>;
|
|
60
|
+
readonly searchBarId: import("@angular/core").Signal<string>;
|
|
61
|
+
readonly tabThumbnailsId: import("@angular/core").Signal<string>;
|
|
62
|
+
readonly tabOutlineId: import("@angular/core").Signal<string>;
|
|
63
|
+
readonly tabSearchId: import("@angular/core").Signal<string>;
|
|
64
|
+
readonly sidebarActiveTabId: import("@angular/core").Signal<string>;
|
|
54
65
|
readonly autoIdSearchInput: import("@angular/core").Signal<string | undefined>;
|
|
55
66
|
readonly autoIdSearchNext: import("@angular/core").Signal<string | undefined>;
|
|
56
67
|
readonly autoIdSearchPrev: import("@angular/core").Signal<string | undefined>;
|
|
@@ -84,6 +95,7 @@ export declare class SdPreviewPdf implements OnDestroy {
|
|
|
84
95
|
term: string;
|
|
85
96
|
total: number;
|
|
86
97
|
current: number;
|
|
98
|
+
truncated: boolean;
|
|
87
99
|
}>;
|
|
88
100
|
readonly stage: import("@angular/core").Signal<PdfStage>;
|
|
89
101
|
readonly activePage: import("@angular/core").Signal<number>;
|
|
@@ -98,14 +110,28 @@ export declare class SdPreviewPdf implements OnDestroy {
|
|
|
98
110
|
readonly fileSize: import("@angular/core").Signal<number>;
|
|
99
111
|
readonly loadError$: import("@angular/core").Signal<PdfErrorEvent | null>;
|
|
100
112
|
readonly thumbCache: import("@angular/core").Signal<Record<number, string>>;
|
|
113
|
+
readonly thumbnailWorkCount: import("@angular/core").Signal<number>;
|
|
114
|
+
readonly pageTextCacheSize: import("@angular/core").Signal<number>;
|
|
115
|
+
readonly continuousPages: import("@angular/core").Signal<number[]>;
|
|
116
|
+
readonly continuousTopSpacer: import("@angular/core").Signal<number>;
|
|
117
|
+
readonly continuousBottomSpacer: import("@angular/core").Signal<number>;
|
|
118
|
+
readonly continuousPageHeights: import("@angular/core").Signal<Record<number, number>>;
|
|
119
|
+
readonly outline: import("@angular/core").Signal<readonly PdfOutlineItem[]>;
|
|
120
|
+
readonly outlineFocusId: import("@angular/core").Signal<string | null>;
|
|
121
|
+
readonly visibleOutline: import("@angular/core").Signal<readonly PdfOutlineRow[]>;
|
|
101
122
|
readonly numPages: import("@angular/core").Signal<number>;
|
|
102
123
|
readonly canPrev: import("@angular/core").Signal<boolean>;
|
|
103
124
|
readonly canNext: import("@angular/core").Signal<boolean>;
|
|
104
125
|
readonly zoomPercent: import("@angular/core").Signal<number>;
|
|
105
126
|
readonly loadPercent: import("@angular/core").Signal<number>;
|
|
106
127
|
readonly isSidebarOpen: import("@angular/core").Signal<boolean>;
|
|
128
|
+
readonly canDownload: import("@angular/core").Signal<boolean>;
|
|
129
|
+
readonly canFullscreen: import("@angular/core").Signal<boolean>;
|
|
130
|
+
readonly canPrint: import("@angular/core").Signal<boolean>;
|
|
107
131
|
readonly pageList: import("@angular/core").Signal<number[]>;
|
|
108
132
|
readonly pageNumbers: import("@angular/core").Signal<number[]>;
|
|
133
|
+
readonly thumbnailTopSpacer: import("@angular/core").Signal<number>;
|
|
134
|
+
readonly thumbnailBottomSpacer: import("@angular/core").Signal<number>;
|
|
109
135
|
readonly searchBarOpen: import("@angular/core").Signal<boolean>;
|
|
110
136
|
readonly searchTerm: import("@angular/core").Signal<string>;
|
|
111
137
|
readonly searchResults: import("@angular/core").Signal<PdfSearchResult[]>;
|
|
@@ -113,11 +139,11 @@ export declare class SdPreviewPdf implements OnDestroy {
|
|
|
113
139
|
readonly searchCaseSensitive: import("@angular/core").Signal<boolean>;
|
|
114
140
|
readonly searchWholeWord: import("@angular/core").Signal<boolean>;
|
|
115
141
|
readonly searchTotal: import("@angular/core").Signal<number>;
|
|
142
|
+
readonly searchTruncated: import("@angular/core").Signal<boolean>;
|
|
116
143
|
readonly searchCurrent: import("@angular/core").Signal<number>;
|
|
117
144
|
readonly searchActiveResult: import("@angular/core").Signal<PdfSearchResult | null>;
|
|
118
145
|
readonly searchState: import("@angular/core").Signal<PdfSearchState>;
|
|
119
146
|
constructor();
|
|
120
|
-
ngOnDestroy(): void;
|
|
121
147
|
goToPage(page: number): void;
|
|
122
148
|
nextPage(): void;
|
|
123
149
|
prevPage(): void;
|
|
@@ -129,14 +155,23 @@ export declare class SdPreviewPdf implements OnDestroy {
|
|
|
129
155
|
rotate(direction: 'left' | 'right'): void;
|
|
130
156
|
toggleSidebar(): void;
|
|
131
157
|
setSidebarMode(mode: PdfSidebarMode): void;
|
|
158
|
+
onSidebarTabKeyDown(event: KeyboardEvent, currentMode: PdfSidebarTabMode): void;
|
|
159
|
+
onThumbnailSidebarScroll(event: Event): void;
|
|
132
160
|
setScrollMode(mode: PdfScrollMode): void;
|
|
133
161
|
downloadFile(): void;
|
|
162
|
+
downloadFileAsync(): Promise<boolean>;
|
|
134
163
|
toggleFullscreen(): void;
|
|
135
164
|
/** Programmatic equivalent of clicking the X — emits the close output. */
|
|
136
165
|
requestClose(): void;
|
|
137
166
|
/** Retry the active load attempt (called from the error state retry button). */
|
|
138
167
|
retryLoad(): void;
|
|
139
168
|
printFile(): void;
|
|
169
|
+
print(): Promise<void>;
|
|
170
|
+
isOutlineExpanded(id: string): boolean;
|
|
171
|
+
toggleOutlineItem(id: string, event?: Event): void;
|
|
172
|
+
focusOutlineItem(id: string): void;
|
|
173
|
+
activateOutlineItem(id: string): void;
|
|
174
|
+
onOutlineKeyDown(event: KeyboardEvent, id: string): void;
|
|
140
175
|
/**
|
|
141
176
|
* Run a full-document search for `term`. Returns the result count.
|
|
142
177
|
*
|
|
@@ -159,6 +194,7 @@ export declare class SdPreviewPdf implements OnDestroy {
|
|
|
159
194
|
}): Promise<number>;
|
|
160
195
|
searchNext(): void;
|
|
161
196
|
searchPrev(): void;
|
|
197
|
+
activateSearchResult(index: number): void;
|
|
162
198
|
clearSearch(): void;
|
|
163
199
|
/** Open the search bar and focus its input. Idempotent. */
|
|
164
200
|
openSearch(): void;
|
|
@@ -167,15 +203,17 @@ export declare class SdPreviewPdf implements OnDestroy {
|
|
|
167
203
|
toggleSearchCaseSensitive(): void;
|
|
168
204
|
toggleSearchWholeWord(): void;
|
|
169
205
|
/** Live binding from the search bar's `(input)` event. */
|
|
170
|
-
onSearchInput(
|
|
206
|
+
onSearchInput(event: Event): void;
|
|
171
207
|
onKeyDown(event: KeyboardEvent): void;
|
|
172
208
|
onPageInputEnter(event: Event): void;
|
|
173
209
|
onPageInputBlur(event: Event): void;
|
|
174
210
|
onWheel(event: WheelEvent): void;
|
|
175
211
|
trackByPage(_i: number, page: number): number;
|
|
212
|
+
onStageScroll(): void;
|
|
176
213
|
/**
|
|
177
214
|
* Render a single page into a sidebar thumbnail canvas at ~140px width.
|
|
178
|
-
*
|
|
215
|
+
* Reserved in `#thumbnailWork` before getPage() so rapid scroll bounces
|
|
216
|
+
* cannot start duplicate work for the same mounted page.
|
|
179
217
|
*
|
|
180
218
|
* Visible for testing — tests can stub `getPage()` on the fake doc to
|
|
181
219
|
* assert this method calls `render(...)` with the right page argument.
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
import { InjectionToken } from '@angular/core';
|
|
2
|
+
export interface SdPdfRenderTask {
|
|
3
|
+
readonly promise: Promise<void>;
|
|
4
|
+
cancel(): void;
|
|
5
|
+
}
|
|
6
|
+
export interface SdPdfViewport {
|
|
7
|
+
readonly width: number;
|
|
8
|
+
readonly height: number;
|
|
9
|
+
}
|
|
10
|
+
export interface SdPdfTextItem {
|
|
11
|
+
readonly str: string;
|
|
12
|
+
}
|
|
13
|
+
export interface SdPdfTextContent {
|
|
14
|
+
readonly items: readonly unknown[];
|
|
15
|
+
}
|
|
16
|
+
export interface SdPdfPageProxy {
|
|
17
|
+
getViewport(parameters: {
|
|
18
|
+
scale: number;
|
|
19
|
+
rotation?: number;
|
|
20
|
+
}): SdPdfViewport;
|
|
21
|
+
render(parameters: {
|
|
22
|
+
canvasContext: CanvasRenderingContext2D;
|
|
23
|
+
viewport: SdPdfViewport;
|
|
24
|
+
}): SdPdfRenderTask;
|
|
25
|
+
getTextContent(): Promise<SdPdfTextContent | unknown>;
|
|
26
|
+
cleanup(): void;
|
|
27
|
+
}
|
|
28
|
+
export interface SdPdfReference {
|
|
29
|
+
readonly num: number;
|
|
30
|
+
readonly gen: number;
|
|
31
|
+
}
|
|
32
|
+
export type SdPdfDestination = string | readonly unknown[] | null;
|
|
33
|
+
export interface SdPdfRawOutlineItem {
|
|
34
|
+
readonly title?: string;
|
|
35
|
+
readonly dest?: SdPdfDestination;
|
|
36
|
+
readonly url?: string | null;
|
|
37
|
+
readonly items?: readonly SdPdfRawOutlineItem[];
|
|
38
|
+
}
|
|
39
|
+
export interface SdPdfDocumentProxy {
|
|
40
|
+
readonly numPages: number;
|
|
41
|
+
getPage(pageNumber: number): Promise<SdPdfPageProxy>;
|
|
42
|
+
getMetadata(): Promise<{
|
|
43
|
+
readonly info?: {
|
|
44
|
+
readonly Title?: string;
|
|
45
|
+
readonly Author?: string;
|
|
46
|
+
readonly Subject?: string;
|
|
47
|
+
};
|
|
48
|
+
}>;
|
|
49
|
+
getOutline(): Promise<readonly SdPdfRawOutlineItem[] | null>;
|
|
50
|
+
getDestination(name: string): Promise<readonly unknown[] | null>;
|
|
51
|
+
getPageIndex(reference: SdPdfReference): Promise<number>;
|
|
52
|
+
cachedPageNumber(reference: SdPdfReference): number | null;
|
|
53
|
+
getData(): Promise<Uint8Array>;
|
|
54
|
+
destroy(): Promise<void>;
|
|
55
|
+
}
|
|
56
|
+
export interface SdPdfLoadingTask {
|
|
57
|
+
readonly promise: Promise<SdPdfDocumentProxy>;
|
|
58
|
+
onProgress?: (progress: {
|
|
59
|
+
loaded: number;
|
|
60
|
+
total: number;
|
|
61
|
+
}) => void;
|
|
62
|
+
destroy?(): Promise<void> | void;
|
|
63
|
+
}
|
|
64
|
+
export interface SdPdfDocumentSpec {
|
|
65
|
+
url?: string;
|
|
66
|
+
data?: Uint8Array;
|
|
67
|
+
httpHeaders?: Record<string, string>;
|
|
68
|
+
withCredentials?: boolean;
|
|
69
|
+
password?: string;
|
|
70
|
+
}
|
|
71
|
+
export interface SdPdfJsLib {
|
|
72
|
+
getDocument(spec: SdPdfDocumentSpec): SdPdfLoadingTask;
|
|
73
|
+
readonly GlobalWorkerOptions: {
|
|
74
|
+
workerSrc: string;
|
|
75
|
+
};
|
|
76
|
+
}
|
|
77
|
+
export declare const SD_PDFJS_LIB: InjectionToken<SdPdfJsLib>;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { InjectionToken } from '@angular/core';
|
|
2
|
+
export interface SdPdfPrintJob {
|
|
3
|
+
readonly finished: Promise<void>;
|
|
4
|
+
cancel(): void;
|
|
5
|
+
}
|
|
6
|
+
export interface SdPdfPrintAdapter {
|
|
7
|
+
readonly isSupported: boolean;
|
|
8
|
+
start(data: Uint8Array, filename: string): SdPdfPrintJob | null;
|
|
9
|
+
}
|
|
10
|
+
export declare const SD_PDF_PRINT_ADAPTER: InjectionToken<SdPdfPrintAdapter>;
|
|
@@ -18,17 +18,18 @@ export type PdfSource = string | File | Blob | ArrayBuffer | Uint8Array | {
|
|
|
18
18
|
* page change.
|
|
19
19
|
*/
|
|
20
20
|
export type PdfZoomMode = number | 'page-fit' | 'page-width' | 'page-actual';
|
|
21
|
-
/**
|
|
22
|
-
* Which tab the sidebar shows. `'none'` collapses the sidebar entirely.
|
|
23
|
-
* NOTE: outline + search tabs are deferred — selecting them shows a placeholder.
|
|
24
|
-
*/
|
|
21
|
+
/** Which tab the sidebar shows. `'none'` collapses the sidebar entirely. */
|
|
25
22
|
export type PdfSidebarMode = 'thumbnails' | 'outline' | 'search' | 'none';
|
|
26
|
-
/**
|
|
27
|
-
* Page layout mode. `'continuous'` is deferred — the input is kept on the
|
|
28
|
-
* public API so consumer code compiles, but the component falls back to
|
|
29
|
-
* single-page behavior with a warning.
|
|
30
|
-
*/
|
|
23
|
+
/** Page layout mode. */
|
|
31
24
|
export type PdfScrollMode = 'page' | 'continuous';
|
|
25
|
+
/** Consumer-facing, recursively resolved PDF document-outline item. */
|
|
26
|
+
export interface PdfOutlineItem {
|
|
27
|
+
readonly id: string;
|
|
28
|
+
readonly title: string;
|
|
29
|
+
readonly page: number | null;
|
|
30
|
+
readonly url?: string;
|
|
31
|
+
readonly children: readonly PdfOutlineItem[];
|
|
32
|
+
}
|
|
32
33
|
/**
|
|
33
34
|
* Document-level metadata extracted from `pdfDoc.getMetadata()`.
|
|
34
35
|
*/
|
|
@@ -81,4 +82,5 @@ export interface PdfSearchState {
|
|
|
81
82
|
wholeWord: boolean;
|
|
82
83
|
results: PdfSearchResult[];
|
|
83
84
|
activeIndex: number;
|
|
85
|
+
truncated: boolean;
|
|
84
86
|
}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { CdkPortal } from '@angular/cdk/portal';
|
|
2
2
|
import { Observable } from 'rxjs';
|
|
3
3
|
import * as i0 from "@angular/core";
|
|
4
|
+
export type SdSideDrawerBeforeClose = () => boolean | Promise<boolean>;
|
|
4
5
|
export declare class SdSideDrawer {
|
|
5
6
|
#private;
|
|
6
7
|
id: string;
|
|
@@ -9,10 +10,12 @@ export declare class SdSideDrawer {
|
|
|
9
10
|
width: import("@angular/core").InputSignal<string>;
|
|
10
11
|
hideClose: import("@angular/core").InputSignalWithTransform<boolean, boolean | "">;
|
|
11
12
|
disableBackdropClose: import("@angular/core").InputSignalWithTransform<boolean, boolean | "">;
|
|
13
|
+
beforeClose: import("@angular/core").InputSignal<SdSideDrawerBeforeClose | undefined>;
|
|
12
14
|
drawerClass: import("@angular/core").InputSignal<any>;
|
|
13
15
|
readonly autoIdInput: import("@angular/core").InputSignal<string | null | undefined>;
|
|
14
16
|
readonly autoId: import("@angular/core").Signal<string | undefined>;
|
|
15
17
|
sdClosed: import("@angular/core").OutputEmitterRef<void>;
|
|
18
|
+
sdCloseError: import("@angular/core").OutputEmitterRef<unknown>;
|
|
16
19
|
readonly isOpened: import("@angular/core").Signal<boolean>;
|
|
17
20
|
readonly isLoading: import("@angular/core").Signal<boolean>;
|
|
18
21
|
readonly dataOpened: import("@angular/core").Signal<"true" | "false">;
|
|
@@ -21,9 +24,11 @@ export declare class SdSideDrawer {
|
|
|
21
24
|
constructor();
|
|
22
25
|
open: () => void;
|
|
23
26
|
close: () => void;
|
|
27
|
+
requestClose: () => Promise<boolean>;
|
|
28
|
+
forceClose: () => void;
|
|
24
29
|
startLoading: () => void;
|
|
25
30
|
stopLoading: () => void;
|
|
26
31
|
preventScroll: (event: Event) => void;
|
|
27
32
|
static ɵfac: i0.ɵɵFactoryDeclaration<SdSideDrawer, never>;
|
|
28
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<SdSideDrawer, "sd-side-drawer", never, { "title": { "alias": "title"; "required": false; "isSignal": true; }; "width": { "alias": "width"; "required": false; "isSignal": true; }; "hideClose": { "alias": "hideClose"; "required": false; "isSignal": true; }; "disableBackdropClose": { "alias": "disableBackdropClose"; "required": false; "isSignal": true; }; "drawerClass": { "alias": "drawerClass"; "required": false; "isSignal": true; }; "autoIdInput": { "alias": "autoId"; "required": false; "isSignal": true; }; }, { "sdClosed": "sdClosed"; }, never, ["[sdHeaderLeft]", "[sdHeaderRight]", "*", "[sdFooterLeft]", "[sdFooterRight]"], true, never>;
|
|
33
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<SdSideDrawer, "sd-side-drawer", never, { "title": { "alias": "title"; "required": false; "isSignal": true; }; "width": { "alias": "width"; "required": false; "isSignal": true; }; "hideClose": { "alias": "hideClose"; "required": false; "isSignal": true; }; "disableBackdropClose": { "alias": "disableBackdropClose"; "required": false; "isSignal": true; }; "beforeClose": { "alias": "beforeClose"; "required": false; "isSignal": true; }; "drawerClass": { "alias": "drawerClass"; "required": false; "isSignal": true; }; "autoIdInput": { "alias": "autoId"; "required": false; "isSignal": true; }; }, { "sdClosed": "sdClosed"; "sdCloseError": "sdCloseError"; }, never, ["[sdHeaderLeft]", "[sdHeaderRight]", "*", "[sdFooterLeft]", "[sdFooterRight]"], true, never>;
|
|
29
34
|
}
|
|
@@ -7,6 +7,7 @@ export interface SdTabClosedEvent {
|
|
|
7
7
|
tab: SdTab;
|
|
8
8
|
}
|
|
9
9
|
export declare class SdTabGroup {
|
|
10
|
+
#private;
|
|
10
11
|
tabs: import("@angular/core").Signal<readonly SdTab[]>;
|
|
11
12
|
selectedIndex: import("@angular/core").ModelSignal<number>;
|
|
12
13
|
variant: import("@angular/core").InputSignal<"line" | "pills" | "segmented">;
|