@microsoft/windows-admin-center-sdk 4.123.0 → 4.232.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/angular/assets/strings/cs-CZ/strings.json +1 -1
- package/angular/assets/strings/de-DE/strings.json +1 -1
- package/angular/assets/strings/es-ES/strings.json +1 -1
- package/angular/assets/strings/fr-FR/strings.json +1 -1
- package/angular/assets/strings/hu-HU/strings.json +1 -1
- package/angular/assets/strings/id-ID/strings.json +1 -1
- package/angular/assets/strings/it-IT/strings.json +1 -1
- package/angular/assets/strings/ja-JP/strings.json +1 -1
- package/angular/assets/strings/ko-KR/strings.json +1 -1
- package/angular/assets/strings/nl-NL/strings.json +1 -1
- package/angular/assets/strings/pl-PL/strings.json +1 -1
- package/angular/assets/strings/pt-BR/strings.json +1 -1
- package/angular/assets/strings/pt-PT/strings.json +1 -1
- package/angular/assets/strings/ru-RU/strings.json +1 -1
- package/angular/assets/strings/strings.json +1 -1
- package/angular/assets/strings/sv-SE/strings.json +1 -1
- package/angular/assets/strings/tr-TR/strings.json +1 -1
- package/angular/assets/strings/zh-CN/strings.json +1 -1
- package/angular/assets/strings/zh-TW/strings.json +1 -1
- package/angular/esm2020/src/controls/accordion/accordion-panel/accordion-panel.component.mjs +36 -12
- package/angular/esm2020/src/controls/actions/containers/action-container.component.mjs +2 -3
- package/angular/esm2020/src/controls/alert-bar/alert-bar.component.mjs +2 -2
- package/angular/esm2020/src/controls/breadcrumb-header/breadcrumb-header.component.mjs +1 -1
- package/angular/esm2020/src/controls/common/base.component.mjs +1 -1
- package/angular/esm2020/src/controls/common/spacer-base.component.mjs +25 -1
- package/angular/esm2020/src/controls/context-menu/context-menu.component.mjs +2 -3
- package/angular/esm2020/src/controls/data-table/data-table.component.mjs +7 -7
- package/angular/esm2020/src/controls/dialog/base-dialog.component.mjs +2 -4
- package/angular/esm2020/src/controls/dialog/confirmation-list-dialog/confirmation-list-dialog.component.mjs +2 -2
- package/angular/esm2020/src/controls/dropdown/dropdown.component.mjs +1 -4
- package/angular/esm2020/src/controls/form/form-field/array/array-form-field-accessibility-manager.service.mjs +59 -0
- package/angular/esm2020/src/controls/form/form-field/array/array-form-field.component.mjs +24 -35
- package/angular/esm2020/src/controls/form/form-field/clock/clock-form-field.component.mjs +10 -7
- package/angular/esm2020/src/controls/form/form-field/form-field-accessibility-manager-base.service.mjs +105 -0
- package/angular/esm2020/src/controls/form/form-field/form-field.component.mjs +1 -1
- package/angular/esm2020/src/controls/form/form-field/list/list-form-field-accessibility-manager.service.mjs +38 -0
- package/angular/esm2020/src/controls/form/form-field/list/list-form-field.component.mjs +56 -38
- package/angular/esm2020/src/controls/form/form-field/number/number-form-field.component.mjs +22 -4
- package/angular/esm2020/src/controls/form/form-field/ordered-list/ordered-list-form-field-accessibility-manager.service.mjs +54 -0
- package/angular/esm2020/src/controls/form/form-field/ordered-list/ordered-list-form-field.component.mjs +67 -67
- package/angular/esm2020/src/controls/form/form-field/radio-group/classic/radio-group-form-field.component.mjs +5 -5
- package/angular/esm2020/src/controls/form/forms.module.mjs +19 -2
- package/angular/esm2020/src/controls/icon/icon-text/icon-text.component.mjs +6 -6
- package/angular/esm2020/src/controls/icon/layered-icon/status/status-icon.component.mjs +1 -1
- package/angular/esm2020/src/controls/layout/editable-layout.component.mjs +2 -3
- package/angular/esm2020/src/controls/node-credentials-form/node-credentials-form.component.mjs +2 -2
- package/angular/esm2020/src/controls/page-alert-bar/page-alert-bar.component.mjs +4 -4
- package/angular/esm2020/src/controls/property-grid/property-grid.component.mjs +33 -13
- package/angular/esm2020/src/controls/schema/tabbed-form-loader.component.mjs +2 -2
- package/angular/esm2020/src/controls/settings/common-settings/common-settings.component.mjs +5 -5
- package/angular/esm2020/src/controls/settings/settings-form.directive.mjs +3 -7
- package/angular/esm2020/src/controls/settings/settings-form.service.mjs +2 -4
- package/angular/esm2020/src/controls/snap-in-extension/snap-in-extension.component.mjs +1 -1
- package/angular/esm2020/src/controls/split-view/split-view.component.mjs +2 -2
- package/angular/esm2020/src/controls/wizard/models/wizard-step-snap-in-output.mjs +1 -1
- package/angular/esm2020/src/controls/wizard-lite/wizard-navigation-button/wizard-navigation-button.component.mjs +3 -3
- package/angular/esm2020/src/data/extension-broker/snap-in-listener.mjs +80 -0
- package/angular/esm2020/src/data/index.mjs +2 -1
- package/angular/esm2020/src/directives/router/router-link.directive.mjs +2 -2
- package/angular/esm2020/src/directives/svg/svg.directive.mjs +2 -3
- package/angular/esm2020/src/generated/strings.mjs +1 -1
- package/angular/esm2020/src/service/navigation.service.mjs +3 -8
- package/angular/esm2020/src/service/user-alive.service.mjs +2 -4
- package/angular/fesm2015/microsoft-windows-admin-center-sdk-angular.mjs +665 -239
- package/angular/fesm2015/microsoft-windows-admin-center-sdk-angular.mjs.map +1 -1
- package/angular/fesm2020/microsoft-windows-admin-center-sdk-angular.mjs +636 -237
- package/angular/fesm2020/microsoft-windows-admin-center-sdk-angular.mjs.map +1 -1
- package/angular/package.json +1 -1
- package/angular/src/controls/accordion/accordion-panel/accordion-panel.component.d.ts +13 -4
- package/angular/src/controls/common/spacer-base.component.d.ts +11 -2
- package/angular/src/controls/form/form-field/array/array-form-field-accessibility-manager.service.d.ts +38 -0
- package/angular/src/controls/form/form-field/array/array-form-field.component.d.ts +3 -1
- package/angular/src/controls/form/form-field/form-field-accessibility-manager-base.service.d.ts +37 -0
- package/angular/src/controls/form/form-field/list/list-form-field-accessibility-manager.service.d.ts +25 -0
- package/angular/src/controls/form/form-field/list/list-form-field.component.d.ts +12 -2
- package/angular/src/controls/form/form-field/number/number-form-field.component.d.ts +8 -0
- package/angular/src/controls/form/form-field/ordered-list/ordered-list-form-field-accessibility-manager.service.d.ts +37 -0
- package/angular/src/controls/form/form-field/ordered-list/ordered-list-form-field.component.d.ts +12 -8
- package/angular/src/controls/icon/icon-text/icon-text.component.d.ts +1 -1
- package/angular/src/controls/property-grid/property-grid.component.d.ts +2 -0
- package/angular/src/controls/wizard/models/wizard-step-snap-in-output.d.ts +1 -1
- package/{core → angular/src}/data/extension-broker/snap-in-listener.d.ts +49 -46
- package/angular/src/data/index.d.ts +1 -0
- package/angular/src/directives/svg/svg.directive.d.ts +1 -2
- package/angular/src/generated/strings.d.ts +12 -0
- package/core/async/cancellation.js +312 -0
- package/core/async/index.js +312 -0
- package/core/async/progress.js +312 -0
- package/core/azure/azure-constants.d.ts +2 -2
- package/core/azure/azure-constants.d.ts.map +1 -1
- package/core/azure/azure-constants.js +322 -3
- package/core/azure/azure-constants.js.map +1 -1
- package/core/azure/azure-logging.js +312 -0
- package/core/azure/azure-manager.js +312 -0
- package/core/azure/models/aadAppConfig-data.js +312 -0
- package/core/azure/models/azureArcStatusEnum.js +312 -0
- package/core/azure/models/azureTokenResult-data.js +312 -0
- package/core/azure/resources/deployment-operation-request-body.js +312 -0
- package/core/azure/resources/deployment-operation-response.js +312 -0
- package/core/azure/resources/location-data.js +315 -0
- package/core/azure/resources/resource-group-data.js +312 -0
- package/core/azure/resources/subscription-data.js +312 -0
- package/core/base/data-store/browser-storage-data-store.js +315 -0
- package/core/base/data-store/cached-data-store.js +312 -0
- package/core/base/data-store/data-store.js +312 -0
- package/core/base/data-store/local-data-store.js +312 -0
- package/core/base/data-store/memory-data-store.js +312 -0
- package/core/base/data-store/session-data-store.js +312 -0
- package/core/base/date/date-like.js +312 -0
- package/core/base/date/date-range.js +312 -0
- package/core/base/date/date-time.js +312 -0
- package/core/base/date/date-type.js +312 -0
- package/core/base/date/time-unit.js +312 -0
- package/core/base/decorators/base.js +312 -0
- package/core/base/decorators/debounce.decorators.js +312 -0
- package/core/base/decorators/delay.decorator.js +315 -0
- package/core/base/decorators/yield.decorator.js +312 -0
- package/core/base/environment.js +312 -0
- package/core/base/json.js +312 -0
- package/core/base/msft-sme.mock.js +316 -0
- package/core/base/polyfills/array.js +315 -0
- package/core/base/polyfills/string.js +312 -0
- package/core/base/rxjs-lifetime-manager.js +312 -0
- package/core/base/utilities.js +312 -0
- package/core/base/versioned-object.js +312 -0
- package/core/data/accessibility-manager.js +312 -0
- package/core/data/active-directory/active-directory.js +312 -0
- package/core/data/active-directory/models/account-info.js +312 -0
- package/core/data/active-directory/models/active-directory-search-options.js +312 -0
- package/core/data/active-directory/models/search-type.js +312 -0
- package/core/data/animation.js +312 -0
- package/core/data/app-context.js +312 -0
- package/core/data/asset-manager.js +315 -0
- package/core/data/base64-array-buffer.js +312 -0
- package/core/data/batch-connection.js +312 -0
- package/core/data/cim-connection.js +312 -0
- package/core/data/cim-stream.js +312 -0
- package/core/data/cim.js +312 -0
- package/core/data/column-picker.js +312 -0
- package/core/data/cookie.js +312 -0
- package/core/data/core-environment.js +315 -0
- package/core/data/crypto.js +312 -0
- package/core/data/deployment-share.js +312 -0
- package/core/data/disposable.js +312 -0
- package/core/data/electron.js +315 -0
- package/core/data/error-extended.js +312 -0
- package/core/data/extension-broker/dialog-listener.js +312 -0
- package/core/data/extension-broker/extension-broker.js +312 -0
- package/core/data/extension-broker/extension-listener.js +312 -0
- package/core/data/extension-broker/model/extension-broker-request-payload.js +312 -0
- package/core/data/extension-broker/model/extension-broker-response-error.js +312 -0
- package/core/data/extension-broker/model/extension-broker-response-payload.js +312 -0
- package/core/data/extension-broker/model/extension-entries.js +315 -0
- package/core/data/extension-broker/model/extension-instance.js +315 -0
- package/core/data/extension-broker/model/extension-rect.js +312 -0
- package/core/data/extension-broker/model/extension-search-options.js +312 -0
- package/core/data/extension-broker/service-listener.js +312 -0
- package/core/data/extension-broker/worker-listener.js +312 -0
- package/core/data/extension-broker/worker-set.js +312 -0
- package/core/data/file-transfer.js +312 -0
- package/core/data/gateway-connection.js +312 -0
- package/core/data/gateway-status.js +312 -0
- package/core/data/gateway-url-builder.js +312 -0
- package/core/data/gateway-url-translator.d.ts +1 -0
- package/core/data/gateway-url-translator.d.ts.map +1 -1
- package/core/data/gateway-url-translator.js +337 -6
- package/core/data/gateway-url-translator.js.map +1 -1
- package/core/data/gateway-urls.js +312 -0
- package/core/data/globalization.js +315 -0
- package/core/data/http-constants.js +315 -0
- package/core/data/http.js +312 -0
- package/core/data/jobs/jobs-manager.js +312 -0
- package/core/data/jobs/models/job-credentials.js +312 -0
- package/core/data/jobs/models/job-node.js +312 -0
- package/core/data/jobs/models/job-paginated-response.js +315 -0
- package/core/data/jobs/models/job-pagination-options.js +315 -0
- package/core/data/jobs/models/job.js +312 -0
- package/core/data/jobs/models/node-job.js +312 -0
- package/core/data/jobs/models/powershell-job.js +312 -0
- package/core/data/language.js +315 -0
- package/core/data/lifetime-data.js +312 -0
- package/core/data/localization-manager.js +312 -0
- package/core/data/native-q.js +312 -0
- package/core/data/net.d.ts.map +1 -1
- package/core/data/net.js +313 -1
- package/core/data/net.js.map +1 -1
- package/core/data/node-connection.d.ts.map +1 -1
- package/core/data/node-connection.js +312 -2
- package/core/data/node-connection.js.map +1 -1
- package/core/data/node-extension-install.js +312 -0
- package/core/data/powershell-alternate.js +312 -0
- package/core/data/powershell-batch.js +312 -0
- package/core/data/powershell-connection.js +312 -0
- package/core/data/powershell-crypto.js +312 -0
- package/core/data/powershell-stream.js +312 -0
- package/core/data/powershell.js +312 -0
- package/core/data/query-cache.js +312 -0
- package/core/data/resource-cache.js +312 -0
- package/core/data/schedule-reboot.js +312 -0
- package/core/data/settings-manager.js +312 -0
- package/core/data/settings-manger.mock.js +312 -0
- package/core/data/sme-extension.js +312 -0
- package/core/data/ssh-stream.js +312 -0
- package/core/data/units.js +312 -0
- package/core/data/uri-builder.js +315 -0
- package/core/data/wdac-operations.js +312 -0
- package/core/data/websocket-stream.js +312 -0
- package/core/diagnostics/error-monitor.js +312 -0
- package/core/diagnostics/log-level.js +312 -0
- package/core/diagnostics/log-record.js +312 -0
- package/core/diagnostics/logging-constants.js +312 -0
- package/core/diagnostics/logging.js +312 -0
- package/core/diagnostics/logging.mock.js +312 -0
- package/core/diagnostics/sme-web-telemetry-models.js +312 -0
- package/core/diagnostics/sme-web-telemetry.d.ts +1 -2
- package/core/diagnostics/sme-web-telemetry.d.ts.map +1 -1
- package/core/diagnostics/sme-web-telemetry.js +336 -15
- package/core/diagnostics/sme-web-telemetry.js.map +1 -1
- package/core/diagnostics/telemetry-control-type.js +312 -0
- package/core/diagnostics/telemetry-options.js +312 -0
- package/core/diagnostics/telemetry-record.js +312 -0
- package/core/dom/dom.js +312 -0
- package/core/frame/frame-connection.js +312 -0
- package/core/frame/frame-connection.mock.js +312 -0
- package/core/frame/shell-navigation-connection.js +312 -0
- package/core/generated/powershell-scripts.d.ts.map +1 -1
- package/core/generated/powershell-scripts.js +313 -1
- package/core/generated/powershell-scripts.js.map +1 -1
- package/core/generated/strings.js +312 -0
- package/core/host/host-core-manager.js +312 -0
- package/core/host/host-core-message-type.js +312 -0
- package/core/host/host-core-messages.js +312 -0
- package/core/index.d.ts +0 -1
- package/core/index.d.ts.map +1 -1
- package/core/index.js +312 -1
- package/core/index.js.map +1 -1
- package/core/manifest/environment-modules.js +312 -0
- package/core/manifest/manifest-loader.js +312 -0
- package/core/notification/client-notification-instance.js +312 -0
- package/core/notification/client-notification.js +312 -0
- package/core/notification/notification-connection.js +312 -0
- package/core/notification/notification-link-type.js +312 -0
- package/core/notification/notification-manager.js +312 -0
- package/core/notification/notification-message.js +312 -0
- package/core/notification/notification-state.js +312 -0
- package/core/notification/notification.js +312 -0
- package/core/notification/powershell-notification.js +312 -0
- package/core/notification/socket-signalr.js +312 -0
- package/core/notification/work-item-connection.js +312 -0
- package/core/notification/work-item-manager.js +312 -0
- package/core/notification/work-item-request.js +312 -0
- package/core/performance/performance-profile-data-type.js +312 -0
- package/core/performance/performance-profile-data.js +312 -0
- package/core/performance/performance-profile-database.js +312 -0
- package/core/performance/performance-profile-record.js +312 -0
- package/core/performance/performance-profile.d.ts.map +1 -1
- package/core/performance/performance-profile.js +321 -9
- package/core/performance/performance-profile.js.map +1 -1
- package/core/performance/performance-tracker.js +312 -0
- package/core/polyfills.js +312 -0
- package/core/resources/scripts/public/crypto/Get-DecryptedDataFromNode.ps1 +216 -0
- package/core/resources/scripts/public/crypto/Get-EncryptionJWKOnNode.ps1 +216 -0
- package/core/resources/scripts/public/inventory/Get-CimWin32LogicalDisk.ps1 +218 -0
- package/core/resources/scripts/public/inventory/Get-CimWin32NetworkAdapter.ps1 +216 -0
- package/core/resources/scripts/public/inventory/Get-CimWin32PhysicalMemory.ps1 +216 -0
- package/core/resources/scripts/public/inventory/Get-CimWin32Processor.ps1 +216 -0
- package/core/resources/scripts/public/inventory/Get-ClusterInventory.ps1 +216 -0
- package/core/resources/scripts/public/inventory/Get-ClusterNodes.ps1 +216 -0
- package/core/resources/scripts/public/inventory/Get-ServerInventory.ps1 +246 -8
- package/core/rpc/alive/rpc-alive-client.js +312 -0
- package/core/rpc/alive/rpc-alive-handler.js +312 -0
- package/core/rpc/alive/rpc-alive-model.js +315 -0
- package/core/rpc/alive/rpc-alive-subject-server.js +312 -0
- package/core/rpc/alive/rpc-observable-alive-client.js +312 -0
- package/core/rpc/alive/rpc-observable-alive-model.js +312 -0
- package/core/rpc/alive/rpc-observable-alive-server.js +312 -0
- package/core/rpc/azure/rpc-azure-model.js +312 -0
- package/core/rpc/azure/rpc-azure-request-client.js +312 -0
- package/core/rpc/azure/rpc-azure-request-handler.js +312 -0
- package/core/rpc/azure/rpc-azure-request-subject-server.js +312 -0
- package/core/rpc/azure/rpc-azure-response-client.js +312 -0
- package/core/rpc/azure/rpc-azure-response-handler.js +315 -0
- package/core/rpc/credssp/rpc-credssp-model.js +312 -0
- package/core/rpc/credssp/rpc-credssp-request-client.js +312 -0
- package/core/rpc/credssp/rpc-credssp-request-handler.js +315 -0
- package/core/rpc/credssp/rpc-credssp-request-subject-server.js +312 -0
- package/core/rpc/credssp/rpc-credssp-response-client.js +312 -0
- package/core/rpc/credssp/rpc-credssp-response-handler.js +315 -0
- package/core/rpc/dialog/rpc-dialog-client.js +312 -0
- package/core/rpc/dialog/rpc-dialog-handler.js +312 -0
- package/core/rpc/dialog/rpc-dialog-model.js +312 -0
- package/core/rpc/dialog/rpc-dialog-subject-server.js +315 -0
- package/core/rpc/electron/rpc-electron-model.js +312 -0
- package/core/rpc/electron/rpc-electron-request-client.js +312 -0
- package/core/rpc/electron/rpc-electron-request-handler.js +312 -0
- package/core/rpc/electron/rpc-electron-request-subject-server.js +312 -0
- package/core/rpc/electron/rpc-electron-response-client.js +312 -0
- package/core/rpc/electron/rpc-electron-response-handler.js +312 -0
- package/core/rpc/elevate/rpc-observable-elevate-client.js +312 -0
- package/core/rpc/elevate/rpc-observable-elevate-model.js +312 -0
- package/core/rpc/elevate/rpc-observable-elevate-server.js +312 -0
- package/core/rpc/error-monitor/rpc-observable-error-monitor-client.js +312 -0
- package/core/rpc/error-monitor/rpc-observable-error-monitor-model.js +315 -0
- package/core/rpc/error-monitor/rpc-observable-error-monitor-server.js +312 -0
- package/core/rpc/extension-broker/rpc-extension-broker-model.js +315 -0
- package/core/rpc/extension-broker/rpc-extension-broker-module-request-subject-server.js +315 -0
- package/core/rpc/extension-broker/rpc-extension-broker-request-client.js +312 -0
- package/core/rpc/extension-broker/rpc-extension-broker-request-handler.js +312 -0
- package/core/rpc/extension-broker/rpc-extension-broker-request-subject-server.js +312 -0
- package/core/rpc/extension-broker/rpc-extension-broker-response-client.js +312 -0
- package/core/rpc/extension-broker/rpc-extension-broker-response-handler.js +312 -0
- package/core/rpc/extension-data/rpc-observable-extension-data-client.js +312 -0
- package/core/rpc/extension-data/rpc-observable-extension-data-model.js +312 -0
- package/core/rpc/extension-data/rpc-observable-extension-data-server.js +312 -0
- package/core/rpc/forward/rpc-forward-auto-client.js +312 -0
- package/core/rpc/forward/rpc-forward-down-client.js +315 -0
- package/core/rpc/forward/rpc-forward-down-handler.js +312 -0
- package/core/rpc/forward/rpc-forward-model.js +312 -0
- package/core/rpc/forward/rpc-forward-up-client.js +312 -0
- package/core/rpc/forward/rpc-forward-up-handler.js +312 -0
- package/core/rpc/forward/rpc-forward-up-subject-server.js +312 -0
- package/core/rpc/log/rpc-log-client.js +312 -0
- package/core/rpc/log/rpc-log-handler.js +312 -0
- package/core/rpc/log/rpc-log-model.js +312 -0
- package/core/rpc/log/rpc-log-subject-server.js +312 -0
- package/core/rpc/notification/rpc-notification-client.js +312 -0
- package/core/rpc/notification/rpc-notification-handler.js +312 -0
- package/core/rpc/notification/rpc-notification-model.js +312 -0
- package/core/rpc/notification/rpc-notification-subject-server.js +312 -0
- package/core/rpc/overlay/rpc-overlay-close-client.js +312 -0
- package/core/rpc/overlay/rpc-overlay-close-handler.js +312 -0
- package/core/rpc/overlay/rpc-overlay-model.js +312 -0
- package/core/rpc/overlay/rpc-overlay-open-client.js +315 -0
- package/core/rpc/overlay/rpc-overlay-open-handler.js +312 -0
- package/core/rpc/overlay/rpc-overlay-open-subject-server.js +312 -0
- package/core/rpc/performance/rpc-observable-performance-client.js +312 -0
- package/core/rpc/performance/rpc-observable-performance-config-client.js +312 -0
- package/core/rpc/performance/rpc-observable-performance-config-server.js +312 -0
- package/core/rpc/performance/rpc-observable-performance-model.js +312 -0
- package/core/rpc/performance/rpc-observable-performance-server.js +312 -0
- package/core/rpc/report/rpc-report-client.js +312 -0
- package/core/rpc/report/rpc-report-handler.js +312 -0
- package/core/rpc/report/rpc-report-model.js +312 -0
- package/core/rpc/report/rpc-report-subject-server.js +315 -0
- package/core/rpc/rpc-base.js +312 -0
- package/core/rpc/rpc-channel.js +312 -0
- package/core/rpc/rpc-forwarder.js +312 -0
- package/core/rpc/rpc-inbound-client.js +312 -0
- package/core/rpc/rpc-inbound.js +312 -0
- package/core/rpc/rpc-manager.js +312 -0
- package/core/rpc/rpc-module-subject-server.js +315 -0
- package/core/rpc/rpc-observable-client.js +312 -0
- package/core/rpc/rpc-observable-request.js +312 -0
- package/core/rpc/rpc-observable-result.js +312 -0
- package/core/rpc/rpc-observable-server.js +312 -0
- package/core/rpc/rpc-outbound-client.js +312 -0
- package/core/rpc/rpc-outbound.js +312 -0
- package/core/rpc/rpc-subject-server.js +312 -0
- package/core/rpc/rpc.js +312 -0
- package/core/rpc/seek/rpc-seek-client.js +312 -0
- package/core/rpc/seek/rpc-seek-handler.js +315 -0
- package/core/rpc/seek/rpc-seek-model.js +312 -0
- package/core/rpc/settings/rpc-settings-client.js +315 -0
- package/core/rpc/settings/rpc-settings-handler.js +312 -0
- package/core/rpc/settings/rpc-settings-model.js +312 -0
- package/core/rpc/settings/rpc-settings-subject-server.js +312 -0
- package/core/rpc/shell-navigate/rpc-shell-navigate-client.js +312 -0
- package/core/rpc/shell-navigate/rpc-shell-navigate-handler.js +312 -0
- package/core/rpc/shell-navigate/rpc-shell-navigate-model.js +312 -0
- package/core/rpc/shell-navigate/rpc-shell-navigate-subject-server.js +312 -0
- package/core/rpc/sme-extension/rpc-sme-extension-model.js +315 -0
- package/core/rpc/sme-extension/rpc-sme-extension-request-client.js +312 -0
- package/core/rpc/sme-extension/rpc-sme-extension-request-handler.js +312 -0
- package/core/rpc/sme-extension/rpc-sme-extension-request-subject-server.js +312 -0
- package/core/rpc/sme-extension/rpc-sme-extension-response-client.js +312 -0
- package/core/rpc/sme-extension/rpc-sme-extension-response-handler.js +312 -0
- package/core/rpc/telemetry/rpc-telemetry-client.js +312 -0
- package/core/rpc/telemetry/rpc-telemetry-handler.js +315 -0
- package/core/rpc/telemetry/rpc-telemetry-model.js +312 -0
- package/core/rpc/telemetry/rpc-telemetry-subject-server.js +312 -0
- package/core/rpc/update-data/rpc-update-data-client.js +312 -0
- package/core/rpc/update-data/rpc-update-data-handler.js +312 -0
- package/core/rpc/update-data/rpc-update-data-model.js +312 -0
- package/core/rpc/update-data/rpc-update-data-subject-server.js +312 -0
- package/core/rpc/update-theme/rpc-observable-update-theme-client.js +312 -0
- package/core/rpc/update-theme/rpc-observable-update-theme-model.js +312 -0
- package/core/rpc/update-theme/rpc-observable-update-theme-server.js +312 -0
- package/core/rpc/work-item/rpc-work-item-client.js +312 -0
- package/core/rpc/work-item/rpc-work-item-handler.js +312 -0
- package/core/rpc/work-item/rpc-work-item-model.js +312 -0
- package/core/rpc/work-item/rpc-work-item-subject-server.js +312 -0
- package/core/rpc/work-item-find/rpc-work-item-find-client.js +312 -0
- package/core/rpc/work-item-find/rpc-work-item-find-handler.js +312 -0
- package/core/rpc/work-item-find/rpc-work-item-find-model.js +312 -0
- package/core/rpc/work-item-find/rpc-work-item-find-subject-server.js +312 -0
- package/core/security/active-connection.js +312 -0
- package/core/security/authorization-manager.js +312 -0
- package/core/security/connection-manager-settings/common-connection-settings.js +315 -0
- package/core/security/connection-manager-settings/connection-settings.js +312 -0
- package/core/security/connection-manager.js +312 -0
- package/core/security/connection-stream.js +312 -0
- package/core/security/connection.js +312 -0
- package/core/security/credssp-manager.js +312 -0
- package/core/security/sign-on-manager.js +312 -0
- package/core/security/tag-manager.js +312 -0
- package/core/security/tool-condition-validator.js +312 -0
- package/core/security/tool-connection-query.js +312 -0
- package/core/security/user-principal.js +312 -0
- package/core/shared/cluster-inventory/cluster-inventory-cache.js +312 -0
- package/core/shared/cluster-inventory/cluster-inventory.js +312 -0
- package/core/shared/cluster-inventory/cluster-node-inventory.js +312 -0
- package/core/shared/gateway-inventory/gateway-inventory-cache.js +312 -0
- package/core/shared/gateway-inventory/gateway-inventory-detail-cache.js +312 -0
- package/core/shared/gateway-inventory/gateway-inventory-detail.js +312 -0
- package/core/shared/gateway-inventory/gateway-inventory.js +312 -0
- package/core/shared/inventory-query-caches.js +312 -0
- package/core/shared/server-inventory/server-inventory-cache.js +312 -0
- package/core/shared/server-inventory/server-inventory-detail-cache.js +312 -0
- package/core/shared/server-inventory/server-inventory-detail.js +315 -0
- package/core/shared/server-inventory/server-inventory.js +312 -0
- package/core/shared/shared-cache.js +312 -0
- package/core/shared/tool-inventory/tool-inventory-cache.js +312 -0
- package/core/shared/tool-inventory/tool-inventory.js +312 -0
- package/core/special.js +315 -0
- package/core/test-utilities/accessibility-tester.js +312 -0
- package/core/test-utilities/console.mock.js +312 -0
- package/core/test-utilities/jasmine-axe-matcher.js +312 -0
- package/core/test-utilities/wait-async.js +312 -0
- package/core/test.js +312 -0
- package/core/testing.js +312 -0
- package/core/workflow/persistent-local-storage.js +312 -0
- package/core/workflow/persistent-work-item-apply-state.js +316 -0
- package/core/workflow/persistent-work-item-state.js +312 -0
- package/core/workflow/persistent-work-item.js +315 -0
- package/core/workflow/persistent-workflow-builder.js +312 -0
- package/core/workflow/persistent-workflow-context.js +312 -0
- package/core/workflow/persistent-workflow-runner.js +312 -0
- package/core/workflow/persistent-workflow-snapshot.js +312 -0
- package/core/workflow/persistent-workflow-store.js +312 -0
- package/core/workflow/persistent-workflow.js +312 -0
- package/package.json +11 -9
- package/styles/css/main-v2.css +1 -1
- package/styles/fonts/SegoeUI/Bold/SegoeUIBold-5.27.woff +0 -0
- package/styles/fonts/SegoeUI/Light/SegoeUILight-5.27.woff +0 -0
- package/styles/fonts/SegoeUI/Normal/SegoeUI-5.27.woff +0 -0
- package/styles/fonts/SegoeUI/SemiBold/SegoeUISemiBold-5.27.woff +0 -0
- package/styles/fonts/SegoeUI/SemiLight/SegoeUISemiLight-5.27.woff +0 -0
- package/styles/fonts/ServMDL2/ServMDL2-4.66.woff +0 -0
- package/tools/build/webpack/index-html.transform.js +312 -0
- package/tools/build/webpack/shell.index-html.transform.js +312 -0
- package/tools/build/webpack/shell.webpack.config.js +312 -0
- package/tools/build/webpack/webpack.config.js +312 -0
- package/tools/code-formatter/.eslintrc.base.json +3 -1
- package/tools/code-formatter/lint.d.ts.map +1 -1
- package/tools/code-formatter/lint.js +319 -1
- package/tools/code-formatter/lint.js.map +1 -1
- package/tools/code-formatter/utilities.d.ts +7 -0
- package/tools/code-formatter/utilities.d.ts.map +1 -0
- package/tools/code-formatter/utilities.js +395 -0
- package/tools/code-formatter/utilities.js.map +1 -0
- package/tools/gulp-doc-generator/index.js +312 -0
- package/tools/gulp-manifest-resource/index.js +312 -0
- package/tools/gulp-manifest-validator/index.js +312 -0
- package/tools/gulp-merge-json-in-folders/index.js +312 -0
- package/tools/gulp-merge-json-in-folders/json-merge.js +312 -0
- package/tools/gulp-ps-cim/index.js +315 -0
- package/tools/gulp-ps-code/index.d.ts.map +1 -1
- package/tools/gulp-ps-code/index.js +323 -2
- package/tools/gulp-ps-code/index.js.map +1 -1
- package/tools/gulp-ps-code/ps-code-convert.js +312 -0
- package/tools/gulp-ps-manifest/index.js +312 -0
- package/tools/gulp-ps-module/index.d.ts.map +1 -1
- package/tools/gulp-ps-module/index.js +327 -3
- package/tools/gulp-ps-module/index.js.map +1 -1
- package/tools/gulp-ps-resjson/index.js +315 -0
- package/tools/gulp-resjson/index.js +315 -0
- package/tools/gulp-resjson/resjson-convert.js +312 -0
- package/tools/gulp-schema-form/index.js +312 -0
- package/tools/gulp-svg-code/index.js +312 -0
- package/tools/gulp-svg-code/svg-code-convert.js +312 -0
- package/tools/gulp-update-notes-resource/index.d.ts.map +1 -1
- package/tools/gulp-update-notes-resource/index.js +316 -4
- package/tools/gulp-update-notes-resource/index.js.map +1 -1
- package/tools/module-template/.eslintrc.json +3 -0
- package/tools/module-template/build/increment-package-version.ps1 +216 -0
- package/tools/module-template/build/push-incremented-version.ps1 +216 -1
- package/tools/module-template/build/update-powershell-code.ps1 +216 -0
- package/tools/module-template/gulpfile.ts/common/clean.ts +2 -0
- package/tools/module-template/gulpfile.ts/common/pack.ts +17 -5
- package/tools/module-template/gulpfile.ts/common/powershell.ts +40 -2
- package/tools/module-template/gulpfile.ts/common/utilities.ts +1 -0
- package/tools/pack-nuget/index.d.ts.map +1 -1
- package/tools/pack-nuget/index.js +321 -3
- package/tools/pack-nuget/index.js.map +1 -1
- package/tools/scripts/Invoke-PesterTest.ps1 +216 -0
- package/tools/scripts/New-ExtensionPackage.ps1 +373 -6
- package/tools/scripts/Search-NonAsciiText.ps1 +216 -0
- package/tools/scripts/package-information/README.md +3 -0
- package/tools/scripts/package-information/ms-logo.png +0 -0
- package/tools/test-runner/index.js +312 -0
- package/tools/utilities/index.js +312 -0
- package/tools/wac-cli/src/angular15/configs/angular-json-config.js +312 -0
- package/tools/wac-cli/src/angular15/configs/ci-build-yml-config.js +315 -0
- package/tools/wac-cli/src/angular15/configs/config.js +312 -0
- package/tools/wac-cli/src/angular15/configs/eslint-auto-fix-config.d.ts +9 -0
- package/tools/wac-cli/src/angular15/configs/eslint-auto-fix-config.d.ts.map +1 -0
- package/tools/wac-cli/src/angular15/configs/eslint-auto-fix-config.js +328 -0
- package/tools/wac-cli/src/angular15/configs/eslint-auto-fix-config.js.map +1 -0
- package/tools/wac-cli/src/angular15/configs/git-ignore-config.js +312 -0
- package/tools/wac-cli/src/angular15/configs/jasmine-test-config.js +315 -0
- package/tools/wac-cli/src/angular15/configs/package-json-config.js +312 -0
- package/tools/wac-cli/src/angular15/configs/replace-config.js +315 -0
- package/tools/wac-cli/src/angular15/configs/tsconfig-config.js +312 -0
- package/tools/wac-cli/src/angular15/configs/ui-test-automation-lagacy-config.js +312 -0
- package/tools/wac-cli/src/angular15/main.d.ts +19 -3
- package/tools/wac-cli/src/angular15/main.d.ts.map +1 -1
- package/tools/wac-cli/src/angular15/main.js +353 -7
- package/tools/wac-cli/src/angular15/main.js.map +1 -1
- package/tools/wac-cli/src/angular15/upgrader/angular-json-upgrader.js +316 -0
- package/tools/wac-cli/src/angular15/upgrader/audit/ajax-response-updater.js +312 -0
- package/tools/wac-cli/src/angular15/upgrader/audit/css-syntax-error-updater.js +312 -0
- package/tools/wac-cli/src/angular15/upgrader/audit/declare-override-updater.js +312 -0
- package/tools/wac-cli/src/angular15/upgrader/audit/error-updater-angular15.js +312 -0
- package/tools/wac-cli/src/angular15/upgrader/audit/form-control-updater.js +312 -0
- package/tools/wac-cli/src/angular15/upgrader/audit/iif-updater-util.js +312 -0
- package/tools/wac-cli/src/angular15/upgrader/audit/load-children-callback-updater.js +315 -0
- package/tools/wac-cli/src/angular15/upgrader/audit/log-parser.js +312 -0
- package/tools/wac-cli/src/angular15/upgrader/audit/observable-throw-updater.js +312 -0
- package/tools/wac-cli/src/angular15/upgrader/audit/parameter-count-violation-updater.js +312 -0
- package/tools/wac-cli/src/angular15/upgrader/audit/string-replace-updater.js +312 -0
- package/tools/wac-cli/src/angular15/upgrader/audit/subjuct-next-updater-util.js +312 -0
- package/tools/wac-cli/src/angular15/upgrader/ci-build-yml-upgrader.js +312 -0
- package/tools/wac-cli/src/angular15/upgrader/eslint-auto-fix-upgrader.d.ts +18 -0
- package/tools/wac-cli/src/angular15/upgrader/eslint-auto-fix-upgrader.d.ts.map +1 -0
- package/tools/wac-cli/src/angular15/upgrader/eslint-auto-fix-upgrader.js +361 -0
- package/tools/wac-cli/src/angular15/upgrader/eslint-auto-fix-upgrader.js.map +1 -0
- package/tools/wac-cli/src/angular15/upgrader/file-replacement-upgrader.js +312 -0
- package/tools/wac-cli/src/angular15/upgrader/git-ignore-upgrader.js +312 -0
- package/tools/wac-cli/src/angular15/upgrader/jasmine-test-upgrader.js +312 -0
- package/tools/wac-cli/src/angular15/upgrader/package-json-upgrader.js +312 -0
- package/tools/wac-cli/src/angular15/upgrader/remove-upgrader.js +315 -0
- package/tools/wac-cli/src/angular15/upgrader/replace-upgrader.js +312 -0
- package/tools/wac-cli/src/angular15/upgrader/tsconfig-upgrader.js +312 -0
- package/tools/wac-cli/src/angular15/upgrader/ui-test-automation-legacy-upgrader.js +312 -0
- package/tools/wac-cli/src/angular15/upgrader/version-json-upgrader.js +312 -0
- package/tools/wac-cli/src/angular15/utils/add-item.js +312 -0
- package/tools/wac-cli/src/angular15/utils/command-runner.js +312 -0
- package/tools/wac-cli/src/angular15/utils/file-comparison.js +315 -0
- package/tools/wac-cli/src/angular15/utils/file-replacement.js +312 -0
- package/tools/wac-cli/src/angular15/utils/file-writer.js +312 -0
- package/tools/wac-cli/src/angular15/utils/logger.js +312 -0
- package/tools/wac-cli/src/angular15/utils/main-debugger.js +312 -0
- package/tools/wac-cli/src/angular15/utils/relative-path.js +312 -0
- package/tools/wac-cli/src/angular15/utils/remove-item.js +312 -0
- package/tools/wac-cli/src/angular15/utils/space-generator.js +312 -0
- package/tools/wac-cli/src/angular15/utils/update-shell-references.js +316 -0
- package/tools/wac-cli/src/common.js +312 -0
- package/tools/wac-cli/src/create/main.js +312 -0
- package/tools/wac-cli/src/eslint/main.js +312 -0
- package/tools/wac-cli/src/index.js +312 -0
- package/tools/wac-cli/src/upgrade/error-updater.js +312 -0
- package/tools/wac-cli/src/upgrade/error-updaters/component-selector-updater.js +315 -0
- package/tools/wac-cli/src/upgrade/error-updaters/only-arrow-functions-updater.js +315 -0
- package/tools/wac-cli/src/upgrade/error-updaters/updater-lookup.js +312 -0
- package/tools/wac-cli/src/upgrade/file-updater.js +312 -0
- package/tools/wac-cli/src/upgrade/get-files.js +312 -0
- package/tools/wac-cli/src/upgrade/main.js +312 -0
- package/tools/wac-cli/src/upgrade/models/error-result.js +312 -0
- package/tools/wac-cli/src/upgrade/models/updater-interface.js +312 -0
- package/tools/wac-cli/src/upgrade/package-updater.js +312 -0
- package/tools/wac-cli/templates/wac-template/src/favicon.ico +0 -0
- package/tools/wac-cli/templates/wac-template/src/karma.conf.js +312 -0
- package/tools/wac-cli/templates/wac-template/src/resources/scripts/Get-Error.ps1 +216 -0
- package/tools/wac-cli/templates/wac-template/src/resources/scripts/Get-Exception.ps1 +216 -0
- package/tools/wac-cli/templates/wac-template/src/resources/scripts/Get-Process.ps1 +216 -1
- package/tools/wac-cli/templates/wac-template/src/resources/scripts/Get-Service.ps1 +216 -1
- package/tools/wac-cli/templates/wac-template/src/resources/scripts/Get-WinRmState.ps1 +216 -1
- package/core/data/extension-broker/snap-in-listener.d.ts.map +0 -1
- package/core/data/extension-broker/snap-in-listener.js +0 -73
- package/core/data/extension-broker/snap-in-listener.js.map +0 -1
- package/microsoft-windows-admin-center-sdk-4.123.0.tgz +0 -0
|
@@ -7,7 +7,7 @@ import { LogLevel } from '@microsoft/windows-admin-center-sdk/core/diagnostics/l
|
|
|
7
7
|
import { Logging } from '@microsoft/windows-admin-center-sdk/core/diagnostics/logging';
|
|
8
8
|
import { __decorate, __metadata, __param } from 'tslib';
|
|
9
9
|
import { Debounce as Debounce$1 } from '@microsoft/windows-admin-center-sdk/core/base/decorators/debounce.decorators';
|
|
10
|
-
import { Dom
|
|
10
|
+
import { Dom } from '@microsoft/windows-admin-center-sdk/core/dom/dom';
|
|
11
11
|
import { marked } from 'marked';
|
|
12
12
|
import * as i1$1 from '@angular/common';
|
|
13
13
|
import { Location, CommonModule, DatePipe } from '@angular/common';
|
|
@@ -20,6 +20,7 @@ import { ActiveConnection } from '@microsoft/windows-admin-center-sdk/core/secur
|
|
|
20
20
|
import { CimConnection } from '@microsoft/windows-admin-center-sdk/core/data/cim-connection';
|
|
21
21
|
import { BatchConnection } from '@microsoft/windows-admin-center-sdk/core/data/batch-connection';
|
|
22
22
|
import { AuthorizationManager } from '@microsoft/windows-admin-center-sdk/core/security/authorization-manager';
|
|
23
|
+
import * as i1$3 from '@microsoft/windows-admin-center-sdk/core/rpc/rpc';
|
|
23
24
|
import { Rpc } from '@microsoft/windows-admin-center-sdk/core/rpc/rpc';
|
|
24
25
|
import { GatewayConnection } from '@microsoft/windows-admin-center-sdk/core/data/gateway-connection';
|
|
25
26
|
import { Http } from '@microsoft/windows-admin-center-sdk/core/data/http';
|
|
@@ -44,10 +45,12 @@ import { Globalization } from '@microsoft/windows-admin-center-sdk/core/data/glo
|
|
|
44
45
|
import { KeyCode } from '@microsoft/windows-admin-center-sdk/core/data/accessibility-manager';
|
|
45
46
|
import { Yield as Yield$1 } from '@microsoft/windows-admin-center-sdk/core/base/decorators/yield.decorator';
|
|
46
47
|
import { TagManager } from '@microsoft/windows-admin-center-sdk/core/security/tag-manager';
|
|
48
|
+
import * as i2 from '@microsoft/windows-admin-center-sdk/core/data/extension-broker/extension-broker';
|
|
47
49
|
import { ExtensionBroker } from '@microsoft/windows-admin-center-sdk/core/data/extension-broker/extension-broker';
|
|
48
50
|
import * as i1$2 from '@angular/forms';
|
|
49
51
|
import { NG_VALUE_ACCESSOR, NG_ASYNC_VALIDATORS, NG_VALIDATORS, NgControl, ControlContainer, Validators, FormsModule, ReactiveFormsModule, FormGroup, FormControl, FormArray, FormBuilder } from '@angular/forms';
|
|
50
52
|
import { Net } from '@microsoft/windows-admin-center-sdk/core/data/net';
|
|
53
|
+
import { Debounce as Debounce$2 } from '@microsoft/windows-admin-center-sdk/core/index';
|
|
51
54
|
import { DateTime } from '@microsoft/windows-admin-center-sdk/core/base/date/date-time';
|
|
52
55
|
import { DateType } from '@microsoft/windows-admin-center-sdk/core/base/date/date-type';
|
|
53
56
|
import { TimeUnit } from '@microsoft/windows-admin-center-sdk/core/base/date/time-unit';
|
|
@@ -83,6 +86,7 @@ import { ScheduleRebootManager } from '@microsoft/windows-admin-center-sdk/core/
|
|
|
83
86
|
import { headerConstants } from '@microsoft/windows-admin-center-sdk/core/data/http-constants';
|
|
84
87
|
import { RpcObservableExtensionDataClient } from '@microsoft/windows-admin-center-sdk/core/rpc/extension-data/rpc-observable-extension-data-client';
|
|
85
88
|
import { SmeExtension } from '@microsoft/windows-admin-center-sdk/core/data/sme-extension';
|
|
89
|
+
import { ExtensionClientListener } from '@microsoft/windows-admin-center-sdk/core/data/extension-broker/extension-listener';
|
|
86
90
|
|
|
87
91
|
/**
|
|
88
92
|
* Directive to provide notification or state changes for angulars @see RouterLink directive.
|
|
@@ -137,7 +141,7 @@ class SmeRouterLinkDirective {
|
|
|
137
141
|
this.updateIsActive();
|
|
138
142
|
}
|
|
139
143
|
ngOnDestroy() {
|
|
140
|
-
this.subscriptions.forEach(sub => sub
|
|
144
|
+
this.subscriptions.forEach(sub => sub?.unsubscribe());
|
|
141
145
|
}
|
|
142
146
|
/**
|
|
143
147
|
* Updates the isActive state and fires appropriate events if that state has changed.
|
|
@@ -3547,7 +3551,7 @@ class TooltipHostInstance {
|
|
|
3547
3551
|
}], null, null); })();
|
|
3548
3552
|
|
|
3549
3553
|
const _c0$1I = ["tooltipContainer"];
|
|
3550
|
-
const _c1$
|
|
3554
|
+
const _c1$V = ["tooltipPointer"];
|
|
3551
3555
|
function TooltipHostComponent_div_5_ng_container_1_Template(rf, ctx) { if (rf & 1) {
|
|
3552
3556
|
i0.ɵɵelementContainerStart(0);
|
|
3553
3557
|
i0.ɵɵelementContainer(1, 10);
|
|
@@ -3918,7 +3922,7 @@ TooltipHostComponent.SCREEN_EDGE_MARGIN = 16;
|
|
|
3918
3922
|
/** @nocollapse */ TooltipHostComponent.ɵfac = function TooltipHostComponent_Factory(t) { return new (t || TooltipHostComponent)(i0.ɵɵdirectiveInject(i0.Injector), i0.ɵɵdirectiveInject(i0.NgZone)); };
|
|
3919
3923
|
/** @nocollapse */ TooltipHostComponent.ɵcmp = /** @pureOrBreakMyCode */ i0.ɵɵdefineComponent({ type: TooltipHostComponent, selectors: [["sme-tooltip-host"]], viewQuery: function TooltipHostComponent_Query(rf, ctx) { if (rf & 1) {
|
|
3920
3924
|
i0.ɵɵviewQuery(_c0$1I, 5);
|
|
3921
|
-
i0.ɵɵviewQuery(_c1$
|
|
3925
|
+
i0.ɵɵviewQuery(_c1$V, 5);
|
|
3922
3926
|
} if (rf & 2) {
|
|
3923
3927
|
let _t;
|
|
3924
3928
|
i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.tooltipContainer = _t.first);
|
|
@@ -5151,12 +5155,12 @@ class ExtensionRootModule {
|
|
|
5151
5155
|
BackgroundExtensionRootComponent] }); })();
|
|
5152
5156
|
|
|
5153
5157
|
const _c0$1G = ["*"];
|
|
5154
|
-
const _c1$
|
|
5158
|
+
const _c1$U = function (a0, a1) { return { "sme-icon-chevronDown": a0, "sme-icon-chevronRight": a1 }; };
|
|
5155
5159
|
function AccordionPanelComponent_span_4_Template(rf, ctx) { if (rf & 1) {
|
|
5156
5160
|
i0.ɵɵelement(0, "span", 7);
|
|
5157
5161
|
} if (rf & 2) {
|
|
5158
5162
|
const ctx_r1 = i0.ɵɵnextContext();
|
|
5159
|
-
i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction2(1, _c1$
|
|
5163
|
+
i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction2(1, _c1$U, ctx_r1.opened, !ctx_r1.opened));
|
|
5160
5164
|
} }
|
|
5161
5165
|
function AccordionPanelComponent_div_8_Template(rf, ctx) { if (rf & 1) {
|
|
5162
5166
|
i0.ɵɵelementStart(0, "div", 8);
|
|
@@ -5169,9 +5173,17 @@ function AccordionPanelComponent_div_8_Template(rf, ctx) { if (rf & 1) {
|
|
|
5169
5173
|
const _c2$n = [[["sme-panel-control"]], "*"];
|
|
5170
5174
|
const _c3$e = ["sme-panel-control", "*"];
|
|
5171
5175
|
class PanelControlComponent {
|
|
5176
|
+
constructor() {
|
|
5177
|
+
/**
|
|
5178
|
+
* Best effort to make sure the buttons, texts can be focused.
|
|
5179
|
+
*/
|
|
5180
|
+
this.defaultFocusZone = true;
|
|
5181
|
+
}
|
|
5172
5182
|
}
|
|
5173
5183
|
/** @nocollapse */ PanelControlComponent.ɵfac = function PanelControlComponent_Factory(t) { return new (t || PanelControlComponent)(); };
|
|
5174
|
-
/** @nocollapse */ PanelControlComponent.ɵcmp = /** @pureOrBreakMyCode */ i0.ɵɵdefineComponent({ type: PanelControlComponent, selectors: [["sme-panel-control"]],
|
|
5184
|
+
/** @nocollapse */ PanelControlComponent.ɵcmp = /** @pureOrBreakMyCode */ i0.ɵɵdefineComponent({ type: PanelControlComponent, selectors: [["sme-panel-control"]], hostVars: 2, hostBindings: function PanelControlComponent_HostBindings(rf, ctx) { if (rf & 2) {
|
|
5185
|
+
i0.ɵɵclassProp("sme-focus-zone", ctx.defaultFocusZone);
|
|
5186
|
+
} }, ngContentSelectors: _c0$1G, decls: 1, vars: 0, template: function PanelControlComponent_Template(rf, ctx) { if (rf & 1) {
|
|
5175
5187
|
i0.ɵɵprojectionDef();
|
|
5176
5188
|
i0.ɵɵprojection(0);
|
|
5177
5189
|
} }, encapsulation: 2 });
|
|
@@ -5181,9 +5193,21 @@ class PanelControlComponent {
|
|
|
5181
5193
|
selector: 'sme-panel-control',
|
|
5182
5194
|
template: '<ng-content></ng-content>'
|
|
5183
5195
|
}]
|
|
5184
|
-
}], null,
|
|
5196
|
+
}], null, { defaultFocusZone: [{
|
|
5197
|
+
type: HostBinding,
|
|
5198
|
+
args: ['class.sme-focus-zone']
|
|
5199
|
+
}] }); })();
|
|
5185
5200
|
class AccordionPanelComponent {
|
|
5186
5201
|
constructor() {
|
|
5202
|
+
/**
|
|
5203
|
+
* It indicates whether the panel is opened.
|
|
5204
|
+
*/
|
|
5205
|
+
this.opened = true;
|
|
5206
|
+
/**
|
|
5207
|
+
* It indicates whether the panel is initially opened.
|
|
5208
|
+
* This value will no longer be respected after the control fully loaded.
|
|
5209
|
+
*/
|
|
5210
|
+
this.initialOpened = true;
|
|
5187
5211
|
/**
|
|
5188
5212
|
* It indicates whether the panel is expandable.
|
|
5189
5213
|
*/
|
|
@@ -5199,21 +5223,24 @@ class AccordionPanelComponent {
|
|
|
5199
5223
|
*/
|
|
5200
5224
|
this.paddingInset = false;
|
|
5201
5225
|
this.toggled = new EventEmitter();
|
|
5202
|
-
|
|
5226
|
+
}
|
|
5227
|
+
ngOnInit() {
|
|
5228
|
+
this.opened = !!this.initialOpened;
|
|
5203
5229
|
this.canClose = this.isExpandable;
|
|
5204
5230
|
}
|
|
5205
5231
|
/**
|
|
5206
5232
|
* The on toggle function implementation.
|
|
5207
5233
|
*/
|
|
5208
5234
|
onToggle() {
|
|
5209
|
-
if (this.isExpandable) {
|
|
5210
|
-
|
|
5211
|
-
this.toggled.emit(this);
|
|
5235
|
+
if (!this.isExpandable) {
|
|
5236
|
+
return;
|
|
5212
5237
|
}
|
|
5238
|
+
this.opened = !this.opened;
|
|
5239
|
+
this.toggled.emit(this);
|
|
5213
5240
|
}
|
|
5214
5241
|
}
|
|
5215
5242
|
/** @nocollapse */ AccordionPanelComponent.ɵfac = function AccordionPanelComponent_Factory(t) { return new (t || AccordionPanelComponent)(); };
|
|
5216
|
-
/** @nocollapse */ AccordionPanelComponent.ɵcmp = /** @pureOrBreakMyCode */ i0.ɵɵdefineComponent({ type: AccordionPanelComponent, selectors: [["sme-accordion-panel"]], inputs: { header: "header",
|
|
5243
|
+
/** @nocollapse */ AccordionPanelComponent.ɵcmp = /** @pureOrBreakMyCode */ i0.ɵɵdefineComponent({ type: AccordionPanelComponent, selectors: [["sme-accordion-panel"]], inputs: { header: "header", initialOpened: "initialOpened", isExpandable: "isExpandable", borderRadius: "borderRadius", paddingInset: "paddingInset" }, outputs: { toggled: "toggled" }, ngContentSelectors: _c3$e, decls: 9, vars: 16, consts: [[1, "sme-accordion-panel"], [1, "sme-arrange-stack-h", "sme-panel-header", "sme-layout-flex", "sme-position-flex-align-center"], ["tabindex", "0", 1, "sme-button", "sme-button-align-left", "sme-button-trigger", "sme-position-flex-auto", "sme-panel-expander", 3, "click"], ["accordionPanelButton", ""], ["class", "sme-position-flex-none sme-icon sme-position-stretch-v", 3, "ngClass", 4, "ngIf"], [1, "sme-arrange-ellipsis", "sme-position-stretch-v", 3, "title"], ["class", "sme-panel-body", 3, "sme-padding-inset-sm", 4, "ngIf"], [1, "sme-position-flex-none", "sme-icon", "sme-position-stretch-v", 3, "ngClass"], [1, "sme-panel-body"]], template: function AccordionPanelComponent_Template(rf, ctx) { if (rf & 1) {
|
|
5217
5244
|
i0.ɵɵprojectionDef(_c2$n);
|
|
5218
5245
|
i0.ɵɵelementStart(0, "div", 0)(1, "div", 1)(2, "div", 2, 3);
|
|
5219
5246
|
i0.ɵɵlistener("click", function AccordionPanelComponent_Template_div_click_2_listener() { return ctx.onToggle(); });
|
|
@@ -5230,6 +5257,7 @@ class AccordionPanelComponent {
|
|
|
5230
5257
|
i0.ɵɵclassProp("sme-panel-header-border-radius", ctx.borderRadius)("sme-panel-header-border-radius-opened", ctx.borderRadius && ctx.opened);
|
|
5231
5258
|
i0.ɵɵadvance(1);
|
|
5232
5259
|
i0.ɵɵclassProp("sme-focus-zone", ctx.canClose)("sme-panel-header-border-radius", ctx.borderRadius)("sme-panel-header-border-radius-opened", ctx.borderRadius && ctx.opened);
|
|
5260
|
+
i0.ɵɵattribute("aria-expanded", !!ctx.opened)("aria-label", ctx.header);
|
|
5233
5261
|
i0.ɵɵadvance(2);
|
|
5234
5262
|
i0.ɵɵproperty("ngIf", ctx.canClose);
|
|
5235
5263
|
i0.ɵɵadvance(1);
|
|
@@ -5241,10 +5269,10 @@ class AccordionPanelComponent {
|
|
|
5241
5269
|
} }, dependencies: [i1$1.NgClass, i1$1.NgIf], encapsulation: 2 });
|
|
5242
5270
|
(function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(AccordionPanelComponent, [{
|
|
5243
5271
|
type: Component,
|
|
5244
|
-
args: [{ selector: 'sme-accordion-panel', template: "<div class=\"sme-accordion-panel\">\r\n <div class=\"sme-arrange-stack-h sme-panel-header sme-layout-flex sme-position-flex-align-center\" [class.sme-panel-header-border-radius]=\"borderRadius\"\r\n [class.sme-panel-header-border-radius-opened]=\"borderRadius && opened\">\r\n <div #accordionPanelButton [class.sme-focus-zone]=\"canClose\" [class.sme-panel-header-border-radius]=\"borderRadius\"\r\n [class.sme-panel-header-border-radius-opened]=\"borderRadius && opened\"\r\n class=\"sme-button sme-button-align-left sme-button-trigger sme-position-flex-auto sme-panel-expander\"\r\n (click)=\"onToggle()\">\r\n <span *ngIf=\"canClose\" class=\"sme-position-flex-none sme-icon sme-position-stretch-v\"\r\n [ngClass]=\"{'sme-icon-chevronDown':opened, 'sme-icon-chevronRight': !opened}\"></span>\r\n <span class=\"sme-arrange-ellipsis sme-position-stretch-v\" [title]=\"header\">{{ header }}</span>\r\n </div>\r\n <ng-content select=\"sme-panel-control\"></ng-content>\r\n </div>\r\n <div class=\"sme-panel-body\" *ngIf=\"opened\" [class.sme-padding-inset-sm]=\"paddingInset\">\r\n <ng-content></ng-content>\r\n </div>\r\n</div>\r\n" }]
|
|
5245
|
-
}],
|
|
5272
|
+
args: [{ selector: 'sme-accordion-panel', template: "<div class=\"sme-accordion-panel\">\r\n <div class=\"sme-arrange-stack-h sme-panel-header sme-layout-flex sme-position-flex-align-center\" [class.sme-panel-header-border-radius]=\"borderRadius\"\r\n [class.sme-panel-header-border-radius-opened]=\"borderRadius && opened\">\r\n <div #accordionPanelButton [class.sme-focus-zone]=\"canClose\" [class.sme-panel-header-border-radius]=\"borderRadius\"\r\n [class.sme-panel-header-border-radius-opened]=\"borderRadius && opened\" [attr.aria-expanded]=\"!!opened\"\r\n [attr.aria-label]=\"header\" tabindex=\"0\"\r\n class=\"sme-button sme-button-align-left sme-button-trigger sme-position-flex-auto sme-panel-expander\"\r\n (click)=\"onToggle()\">\r\n <span *ngIf=\"canClose\" class=\"sme-position-flex-none sme-icon sme-position-stretch-v\"\r\n [ngClass]=\"{'sme-icon-chevronDown':opened, 'sme-icon-chevronRight': !opened}\"></span>\r\n <span class=\"sme-arrange-ellipsis sme-position-stretch-v\" [title]=\"header\">{{ header }}</span>\r\n </div>\r\n <ng-content select=\"sme-panel-control\"></ng-content>\r\n </div>\r\n <div class=\"sme-panel-body\" *ngIf=\"opened\" [class.sme-padding-inset-sm]=\"paddingInset\">\r\n <ng-content></ng-content>\r\n </div>\r\n</div>\r\n" }]
|
|
5273
|
+
}], null, { header: [{
|
|
5246
5274
|
type: Input
|
|
5247
|
-
}],
|
|
5275
|
+
}], initialOpened: [{
|
|
5248
5276
|
type: Input
|
|
5249
5277
|
}], isExpandable: [{
|
|
5250
5278
|
type: Input
|
|
@@ -5955,7 +5983,7 @@ __decorate([
|
|
|
5955
5983
|
}], null, { closeNestedHelper: [] }); })();
|
|
5956
5984
|
|
|
5957
5985
|
const _c0$1E = ["smeDropdownContent"];
|
|
5958
|
-
const _c1$
|
|
5986
|
+
const _c1$T = ["smeDropdownToggle"];
|
|
5959
5987
|
const _c2$m = [[["", 8, "sme-dropdown-toggle"]], [["", 8, "sme-dropdown-content"]]];
|
|
5960
5988
|
const _c3$d = function (a0, a1, a2, a3) { return { "sme-layout-hidden": a0, "sme-layout-inline-block": a1, "sme-arrange-overflow-auto-x": a2, "sme-arrange-overflow-auto-y": a3 }; };
|
|
5961
5989
|
const _c4$9 = [".sme-dropdown-toggle", ".sme-dropdown-content"];
|
|
@@ -6044,7 +6072,6 @@ class DropdownComponent {
|
|
|
6044
6072
|
ngAfterViewInit() {
|
|
6045
6073
|
// load the context menu code here so as to allow all child views to be completely initialized
|
|
6046
6074
|
if (!this.isContextMenu) {
|
|
6047
|
-
this.renderer.setAttribute(this.toggleElement.nativeElement, 'aria-haspopup', 'true');
|
|
6048
6075
|
this.unsubscribeToggleClick = this.renderer.listen(this.toggleElement.nativeElement, 'click', (event) => this.onToggleClick(event));
|
|
6049
6076
|
}
|
|
6050
6077
|
else {
|
|
@@ -6112,7 +6139,6 @@ class DropdownComponent {
|
|
|
6112
6139
|
if (this.isOpen) {
|
|
6113
6140
|
// close if opened
|
|
6114
6141
|
this.dropdownService.close(this);
|
|
6115
|
-
this.renderer.setAttribute(this.toggleElement.nativeElement, 'aria-expanded', 'false');
|
|
6116
6142
|
if (event) {
|
|
6117
6143
|
this.dropdownService.closeNested(this, event);
|
|
6118
6144
|
}
|
|
@@ -6122,7 +6148,6 @@ class DropdownComponent {
|
|
|
6122
6148
|
else {
|
|
6123
6149
|
// open if closed
|
|
6124
6150
|
this.dropdownService.open(this, calculateHeight, displayToSide).then(() => {
|
|
6125
|
-
this.renderer.setAttribute(this.toggleElement.nativeElement, 'aria-expanded', 'true');
|
|
6126
6151
|
this.toggleElement.nativeElement.addEventListener('closeEvent', () => {
|
|
6127
6152
|
this.isOpen = false;
|
|
6128
6153
|
}, false);
|
|
@@ -6150,7 +6175,7 @@ class DropdownComponent {
|
|
|
6150
6175
|
/** @nocollapse */ DropdownComponent.ɵfac = function DropdownComponent_Factory(t) { return new (t || DropdownComponent)(i0.ɵɵdirectiveInject(i0.Renderer2), i0.ɵɵdirectiveInject(i0.ElementRef), i0.ɵɵdirectiveInject(DropdownService), i0.ɵɵdirectiveInject(SME_LAYOUT_PROVIDER, 8)); };
|
|
6151
6176
|
/** @nocollapse */ DropdownComponent.ɵcmp = /** @pureOrBreakMyCode */ i0.ɵɵdefineComponent({ type: DropdownComponent, selectors: [["sme-dropdown"]], viewQuery: function DropdownComponent_Query(rf, ctx) { if (rf & 1) {
|
|
6152
6177
|
i0.ɵɵviewQuery(_c0$1E, 5);
|
|
6153
|
-
i0.ɵɵviewQuery(_c1$
|
|
6178
|
+
i0.ɵɵviewQuery(_c1$T, 7);
|
|
6154
6179
|
} if (rf & 2) {
|
|
6155
6180
|
let _t;
|
|
6156
6181
|
i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.contentElement = _t.first);
|
|
@@ -6250,7 +6275,6 @@ class ActionContainerComponent extends CoreBaseComponent {
|
|
|
6250
6275
|
/**
|
|
6251
6276
|
* Event emitter fired whenever an error occurs within a child ActionItem.
|
|
6252
6277
|
*/
|
|
6253
|
-
// eslint-disable-next-line @angular-eslint/no-output-native
|
|
6254
6278
|
this.error = new EventEmitter();
|
|
6255
6279
|
/**
|
|
6256
6280
|
* Event emitter fired whenever a child ActionItem is executed.
|
|
@@ -6335,7 +6359,7 @@ class ActionContainerComponent extends CoreBaseComponent {
|
|
|
6335
6359
|
* Callback method run when ActionContainerComponent is destroyed.
|
|
6336
6360
|
*/
|
|
6337
6361
|
ngOnDestroy() {
|
|
6338
|
-
this.completedSubscription
|
|
6362
|
+
this.completedSubscription?.unsubscribe();
|
|
6339
6363
|
}
|
|
6340
6364
|
/**
|
|
6341
6365
|
* Callback method run immediately after Angular has completed initialization of all of ActionContainerComponent's content.
|
|
@@ -6681,7 +6705,7 @@ class ActionMenuComponent extends ActionContainerComponent {
|
|
|
6681
6705
|
}] }, { type: i0.Injector }]; }, null); })();
|
|
6682
6706
|
|
|
6683
6707
|
const _c0$1B = ["actionBarElement"];
|
|
6684
|
-
const _c1$
|
|
6708
|
+
const _c1$S = ["dropDownButton"];
|
|
6685
6709
|
const _c2$l = ["dropDown"];
|
|
6686
6710
|
function ActionBarComponent_sme_dynamic_action_item_2_Template(rf, ctx) { if (rf & 1) {
|
|
6687
6711
|
const _r6 = i0.ɵɵgetCurrentView();
|
|
@@ -7042,7 +7066,7 @@ class ActionBarComponent extends ActionContainerComponent {
|
|
|
7042
7066
|
/** @nocollapse */ ActionBarComponent.ɵfac = function ActionBarComponent_Factory(t) { return new (t || ActionBarComponent)(i0.ɵɵdirectiveInject(i0.IterableDiffers), i0.ɵɵdirectiveInject(i0.Renderer2), i0.ɵɵdirectiveInject(i0.ElementRef), i0.ɵɵdirectiveInject(SME_LAYOUT_PROVIDER, 8), i0.ɵɵdirectiveInject(i0.Injector)); };
|
|
7043
7067
|
/** @nocollapse */ ActionBarComponent.ɵcmp = /** @pureOrBreakMyCode */ i0.ɵɵdefineComponent({ type: ActionBarComponent, selectors: [["sme-action-bar"]], viewQuery: function ActionBarComponent_Query(rf, ctx) { if (rf & 1) {
|
|
7044
7068
|
i0.ɵɵviewQuery(_c0$1B, 5);
|
|
7045
|
-
i0.ɵɵviewQuery(_c1$
|
|
7069
|
+
i0.ɵɵviewQuery(_c1$S, 5);
|
|
7046
7070
|
i0.ɵɵviewQuery(_c2$l, 5);
|
|
7047
7071
|
} if (rf & 2) {
|
|
7048
7072
|
let _t;
|
|
@@ -7726,7 +7750,7 @@ class ActionButtonAsyncComponent extends ActionItemComponent {
|
|
|
7726
7750
|
}] }); })();
|
|
7727
7751
|
|
|
7728
7752
|
const _c0$1A = ["dropDown"];
|
|
7729
|
-
const _c1$
|
|
7753
|
+
const _c1$R = ["dropDownButton"];
|
|
7730
7754
|
function ActionDropdownRendererComponent_p_4_Template(rf, ctx) { if (rf & 1) {
|
|
7731
7755
|
i0.ɵɵelementStart(0, "p", 10);
|
|
7732
7756
|
i0.ɵɵtext(1);
|
|
@@ -7838,7 +7862,7 @@ ActionDropdownRendererComponent.dropdownUtaIdSuffix = '-dropdown';
|
|
|
7838
7862
|
/** @nocollapse */ ActionDropdownRendererComponent.ɵfac = function ActionDropdownRendererComponent_Factory(t) { return new (t || ActionDropdownRendererComponent)(i0.ɵɵdirectiveInject(i0.Renderer2), i0.ɵɵdirectiveInject(i0.ElementRef)); };
|
|
7839
7863
|
/** @nocollapse */ ActionDropdownRendererComponent.ɵcmp = /** @pureOrBreakMyCode */ i0.ɵɵdefineComponent({ type: ActionDropdownRendererComponent, selectors: [["sme-action-dropdown-renderer"]], viewQuery: function ActionDropdownRendererComponent_Query(rf, ctx) { if (rf & 1) {
|
|
7840
7864
|
i0.ɵɵviewQuery(_c0$1A, 5);
|
|
7841
|
-
i0.ɵɵviewQuery(_c1$
|
|
7865
|
+
i0.ɵɵviewQuery(_c1$R, 5);
|
|
7842
7866
|
} if (rf & 2) {
|
|
7843
7867
|
let _t;
|
|
7844
7868
|
i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.dropDown = _t.first);
|
|
@@ -8376,8 +8400,8 @@ function IconTextComponent_input_1_Template(rf, ctx) { if (rf & 1) {
|
|
|
8376
8400
|
i0.ɵɵproperty("value", ctx_r1.title);
|
|
8377
8401
|
i0.ɵɵattribute("aria-label", ctx_r1.readOnlyFormFieldLabel);
|
|
8378
8402
|
} }
|
|
8379
|
-
function
|
|
8380
|
-
i0.ɵɵelementStart(0, "
|
|
8403
|
+
function IconTextComponent_h3_2_Template(rf, ctx) { if (rf & 1) {
|
|
8404
|
+
i0.ɵɵelementStart(0, "h3", 8);
|
|
8381
8405
|
i0.ɵɵtext(1);
|
|
8382
8406
|
i0.ɵɵelementEnd();
|
|
8383
8407
|
} if (rf & 2) {
|
|
@@ -8393,7 +8417,7 @@ class IconTextComponent extends CoreBaseComponent {
|
|
|
8393
8417
|
*/
|
|
8394
8418
|
this.title = '';
|
|
8395
8419
|
/**
|
|
8396
|
-
*
|
|
8420
|
+
* It determines whether to show title
|
|
8397
8421
|
*/
|
|
8398
8422
|
this.showTitle = true;
|
|
8399
8423
|
this.layoutFlex = true;
|
|
@@ -8422,7 +8446,7 @@ class IconTextComponent extends CoreBaseComponent {
|
|
|
8422
8446
|
} }, inputs: { title: "title", showTitle: "showTitle", urlIcon: "urlIcon", smeIconClassName: "smeIconClassName", readOnlyFormField: "readOnlyFormField", readOnlyFormFieldLabel: "readOnlyFormFieldLabel" }, features: [i0.ɵɵInheritDefinitionFeature], decls: 3, vars: 3, consts: [[4, "ngIf"], ["type", "text", "readonly", "", "class", "sme-icon-text-text sme-position-flex-auto", "tabindex", "-1", 3, "value", 4, "ngIf"], ["class", "sme-icon-text-text sme-position-flex-align-center", 4, "ngIf"], ["class", "sme-icon-text-icon sme-position-flex-align-center sme-icon sme-margin-right-xs", 3, "class", 4, "ngIf"], ["class", "sme-icon-text-icon sme-position-flex-align-center sme-url-icon sme-margin-right-xs", 3, "background-image", 4, "ngIf"], [1, "sme-icon-text-icon", "sme-position-flex-align-center", "sme-icon", "sme-margin-right-xs"], [1, "sme-icon-text-icon", "sme-position-flex-align-center", "sme-url-icon", "sme-margin-right-xs"], ["type", "text", "readonly", "", "tabindex", "-1", 1, "sme-icon-text-text", "sme-position-flex-auto", 3, "value"], [1, "sme-icon-text-text", "sme-position-flex-align-center"]], template: function IconTextComponent_Template(rf, ctx) { if (rf & 1) {
|
|
8423
8447
|
i0.ɵɵtemplate(0, IconTextComponent_ng_container_0_Template, 3, 2, "ng-container", 0);
|
|
8424
8448
|
i0.ɵɵtemplate(1, IconTextComponent_input_1_Template, 1, 2, "input", 1);
|
|
8425
|
-
i0.ɵɵtemplate(2,
|
|
8449
|
+
i0.ɵɵtemplate(2, IconTextComponent_h3_2_Template, 2, 1, "h3", 2);
|
|
8426
8450
|
} if (rf & 2) {
|
|
8427
8451
|
i0.ɵɵproperty("ngIf", ctx.smeIconClassName || ctx.urlIcon);
|
|
8428
8452
|
i0.ɵɵadvance(1);
|
|
@@ -8432,7 +8456,7 @@ class IconTextComponent extends CoreBaseComponent {
|
|
|
8432
8456
|
} }, dependencies: [i1$1.NgIf], encapsulation: 2 });
|
|
8433
8457
|
(function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(IconTextComponent, [{
|
|
8434
8458
|
type: Component,
|
|
8435
|
-
args: [{ selector: 'sme-icon-text', template: "<ng-container *ngIf=\"smeIconClassName || urlIcon\">\r\n <span *ngIf=\"smeIconClassName\" class=\"sme-icon-text-icon sme-position-flex-align-center sme-icon sme-margin-right-xs\" [class]=\"smeIconClassName ? smeIconClassName : ''\"></span>\r\n <span *ngIf=\"urlIcon && !smeIconClassName\" class=\"sme-icon-text-icon sme-position-flex-align-center sme-url-icon sme-margin-right-xs\" [style.background-image]=\"urlIcon\"></span>\r\n</ng-container>\r\n<input *ngIf=\"readOnlyFormField\" type=\"text\" readonly class=\"sme-icon-text-text sme-position-flex-auto\" [attr.aria-label]=\"readOnlyFormFieldLabel\" tabindex=\"-1\" [value]=\"title\" />\r\n<
|
|
8459
|
+
args: [{ selector: 'sme-icon-text', template: "<ng-container *ngIf=\"smeIconClassName || urlIcon\">\r\n <span *ngIf=\"smeIconClassName\" class=\"sme-icon-text-icon sme-position-flex-align-center sme-icon sme-margin-right-xs\" [class]=\"smeIconClassName ? smeIconClassName : ''\"></span>\r\n <span *ngIf=\"urlIcon && !smeIconClassName\" class=\"sme-icon-text-icon sme-position-flex-align-center sme-url-icon sme-margin-right-xs\" [style.background-image]=\"urlIcon\"></span>\r\n</ng-container>\r\n<input *ngIf=\"readOnlyFormField\" type=\"text\" readonly class=\"sme-icon-text-text sme-position-flex-auto\" [attr.aria-label]=\"readOnlyFormFieldLabel\" tabindex=\"-1\" [value]=\"title\" />\r\n<h3 *ngIf=\"!readOnlyFormField && showTitle\" class=\"sme-icon-text-text sme-position-flex-align-center\">{{ title }}</h3>\r\n" }]
|
|
8436
8460
|
}], function () { return [{ type: i0.Injector }]; }, { title: [{
|
|
8437
8461
|
type: Input
|
|
8438
8462
|
}], showTitle: [{
|
|
@@ -8811,7 +8835,7 @@ function EditableLayoutItemComponent_p_2_Template(rf, ctx) { if (rf & 1) {
|
|
|
8811
8835
|
i0.ɵɵtextInterpolate1(" ", ctx_r0.displayName, " ");
|
|
8812
8836
|
} }
|
|
8813
8837
|
const _c0$1v = function (a0) { return { "sme-cursor-pointer": a0 }; };
|
|
8814
|
-
const _c1$
|
|
8838
|
+
const _c1$Q = function (a0) { return { "sme-corner-resizer-disabled": a0 }; };
|
|
8815
8839
|
const _c2$j = ["*"];
|
|
8816
8840
|
/**
|
|
8817
8841
|
* Individual Layout Items that can be added on demand with as -
|
|
@@ -8914,7 +8938,7 @@ class EditableLayoutItemComponent extends CoreBaseComponent {
|
|
|
8914
8938
|
i0.ɵɵadvance(1);
|
|
8915
8939
|
i0.ɵɵproperty("ngIf", ctx.isLayoutItemDraggable);
|
|
8916
8940
|
i0.ɵɵadvance(2);
|
|
8917
|
-
i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction1(14, _c1$
|
|
8941
|
+
i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction1(14, _c1$Q, !ctx.isLayoutItemDraggable));
|
|
8918
8942
|
} }, dependencies: [i1$1.NgClass, i1$1.NgIf], encapsulation: 2 });
|
|
8919
8943
|
(function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(EditableLayoutItemComponent, [{
|
|
8920
8944
|
type: Component,
|
|
@@ -9512,7 +9536,7 @@ __decorate([
|
|
|
9512
9536
|
], LayoutResponsiveWindowManager.prototype, "onWindowSizeChanged", null);
|
|
9513
9537
|
|
|
9514
9538
|
const _c0$1t = [[["sme-layout-item"]]];
|
|
9515
|
-
const _c1$
|
|
9539
|
+
const _c1$P = ["sme-layout-item"];
|
|
9516
9540
|
/**
|
|
9517
9541
|
* Layout component
|
|
9518
9542
|
*/
|
|
@@ -9958,7 +9982,7 @@ class LayoutComponent extends CoreBaseComponent {
|
|
|
9958
9982
|
let _t;
|
|
9959
9983
|
i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.layoutItems = _t);
|
|
9960
9984
|
i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.definitions = _t);
|
|
9961
|
-
} }, inputs: { itemHorizontalSpace: "itemHorizontalSpace", itemVerticalSpace: "itemVerticalSpace", oneColumn: "oneColumn", tryToFillWholeRow: "tryToFillWholeRow", definition: "definition", padLastItem: "padLastItem", noExtraRightPaddingOneItemPerRow: "noExtraRightPaddingOneItemPerRow", layoutConfig: "layoutConfig" }, outputs: { layoutChanged: "layoutChanged", windowBreakpointChanged: "windowBreakpointChanged" }, features: [i0.ɵɵInheritDefinitionFeature], ngContentSelectors: _c1$
|
|
9985
|
+
} }, inputs: { itemHorizontalSpace: "itemHorizontalSpace", itemVerticalSpace: "itemVerticalSpace", oneColumn: "oneColumn", tryToFillWholeRow: "tryToFillWholeRow", definition: "definition", padLastItem: "padLastItem", noExtraRightPaddingOneItemPerRow: "noExtraRightPaddingOneItemPerRow", layoutConfig: "layoutConfig" }, outputs: { layoutChanged: "layoutChanged", windowBreakpointChanged: "windowBreakpointChanged" }, features: [i0.ɵɵInheritDefinitionFeature], ngContentSelectors: _c1$P, decls: 1, vars: 0, template: function LayoutComponent_Template(rf, ctx) { if (rf & 1) {
|
|
9962
9986
|
i0.ɵɵprojectionDef(_c0$1t);
|
|
9963
9987
|
i0.ɵɵprojection(0);
|
|
9964
9988
|
} }, encapsulation: 2 });
|
|
@@ -10015,7 +10039,7 @@ __decorate([
|
|
|
10015
10039
|
}], refresh: [], deferredOnLayoutChanged: [], onWindowBreakpointChanged: [] }); })();
|
|
10016
10040
|
|
|
10017
10041
|
const _c0$1s = [[["sme-editable-layout-item"]]];
|
|
10018
|
-
const _c1$
|
|
10042
|
+
const _c1$O = ["sme-editable-layout-item"];
|
|
10019
10043
|
class EditableLayoutComponent extends LayoutComponent {
|
|
10020
10044
|
/**
|
|
10021
10045
|
* The source name to use for logging
|
|
@@ -10183,7 +10207,7 @@ EditableLayoutComponent.gridPaddingSize = 8;
|
|
|
10183
10207
|
} if (rf & 2) {
|
|
10184
10208
|
let _t;
|
|
10185
10209
|
i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.editableLayoutItems = _t);
|
|
10186
|
-
} }, inputs: { isEditMode: "isEditMode" }, features: [i0.ɵɵInheritDefinitionFeature, i0.ɵɵNgOnChangesFeature], ngContentSelectors: _c1$
|
|
10210
|
+
} }, inputs: { isEditMode: "isEditMode" }, features: [i0.ɵɵInheritDefinitionFeature, i0.ɵɵNgOnChangesFeature], ngContentSelectors: _c1$O, decls: 2, vars: 4, consts: [[1, "sme-editable-layout-grid"]], template: function EditableLayoutComponent_Template(rf, ctx) { if (rf & 1) {
|
|
10187
10211
|
i0.ɵɵprojectionDef(_c0$1s);
|
|
10188
10212
|
i0.ɵɵelementStart(0, "div", 0);
|
|
10189
10213
|
i0.ɵɵprojection(1);
|
|
@@ -10243,7 +10267,7 @@ function LoadingWheelComponent_a_11_Template(rf, ctx) { if (rf & 1) {
|
|
|
10243
10267
|
i0.ɵɵtextInterpolate(ctx_r1.buttonLabel);
|
|
10244
10268
|
} }
|
|
10245
10269
|
const _c0$1r = function (a0, a1, a2) { return { "sme-scheme-loading-wheel": a0, "sme-layout-absolute": a1, "sme-position-inset-none": a2 }; };
|
|
10246
|
-
const _c1$
|
|
10270
|
+
const _c1$N = function (a0, a1) { return { "sme-layout-absolute": a0, "sme-position-center": a1 }; };
|
|
10247
10271
|
const _c2$i = function (a0, a1) { return { "sme-progress-center": a0, "sme-progress-center-h": a1 }; };
|
|
10248
10272
|
var LoadingWheelSize;
|
|
10249
10273
|
(function (LoadingWheelSize) {
|
|
@@ -10389,7 +10413,7 @@ class LoadingWheelComponent extends CoreBaseComponent {
|
|
|
10389
10413
|
} if (rf & 2) {
|
|
10390
10414
|
i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction3(11, _c0$1r, !ctx.isBackgroundTransparent, !ctx.inline, !ctx.inline));
|
|
10391
10415
|
i0.ɵɵadvance(1);
|
|
10392
|
-
i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction2(15, _c1$
|
|
10416
|
+
i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction2(15, _c1$N, !ctx.inline, !ctx.inline));
|
|
10393
10417
|
i0.ɵɵadvance(1);
|
|
10394
10418
|
i0.ɵɵclassMapInterpolate1("sme-progress sme-progress-indeterminate-local ", ctx.sizeClass, " sme-focus-zone");
|
|
10395
10419
|
i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction2(18, _c2$i, ctx.inline, !ctx.inline));
|
|
@@ -12007,7 +12031,7 @@ class SmeInternalFormFieldComponent extends FormFieldComponent {
|
|
|
12007
12031
|
}], null, null); })();
|
|
12008
12032
|
|
|
12009
12033
|
const _c0$1q = ["fieldHost"];
|
|
12010
|
-
const _c1$
|
|
12034
|
+
const _c1$M = ["field"];
|
|
12011
12035
|
/**
|
|
12012
12036
|
* Schema Form Component
|
|
12013
12037
|
* It takes the schema and data and other necessary inputs then dynamically renders the form UI.
|
|
@@ -12315,7 +12339,7 @@ SchemaFieldLoaderComponentBase.resourceActualTextPrefix = 'actual_string:';
|
|
|
12315
12339
|
SchemaFieldLoaderComponentBase.localizationCache = {};
|
|
12316
12340
|
/** @nocollapse */ SchemaFieldLoaderComponentBase.ɵfac = function SchemaFieldLoaderComponentBase_Factory(t) { return new (t || SchemaFieldLoaderComponentBase)(); };
|
|
12317
12341
|
/** @nocollapse */ SchemaFieldLoaderComponentBase.ɵdir = /** @pureOrBreakMyCode */ i0.ɵɵdefineDirective({ type: SchemaFieldLoaderComponentBase, viewQuery: function SchemaFieldLoaderComponentBase_Query(rf, ctx) { if (rf & 1) {
|
|
12318
|
-
i0.ɵɵviewQuery(_c1$
|
|
12342
|
+
i0.ɵɵviewQuery(_c1$M, 5);
|
|
12319
12343
|
} if (rf & 2) {
|
|
12320
12344
|
let _t;
|
|
12321
12345
|
i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.formFieldComponent = _t.first);
|
|
@@ -14505,7 +14529,7 @@ function DialogComponent_sme_backdrop_0_Template(rf, ctx) { if (rf & 1) {
|
|
|
14505
14529
|
i0.ɵɵadvance(1);
|
|
14506
14530
|
i0.ɵɵproperty("ngIf", ctx_r0.ariaDescription);
|
|
14507
14531
|
} }
|
|
14508
|
-
const _c1$
|
|
14532
|
+
const _c1$L = [[["sme-dialog-header"]], [["sme-dialog-content"]], [["sme-dialog-footer"]]];
|
|
14509
14533
|
const _c2$h = ["sme-dialog-header", "sme-dialog-content", "sme-dialog-footer"];
|
|
14510
14534
|
/**
|
|
14511
14535
|
*
|
|
@@ -14823,7 +14847,7 @@ DialogComponent.nextDialogId = 0;
|
|
|
14823
14847
|
/** @nocollapse */ DialogComponent.ɵcmp = /** @pureOrBreakMyCode */ i0.ɵɵdefineComponent({ type: DialogComponent, selectors: [["sme-dialog"]], hostBindings: function DialogComponent_HostBindings(rf, ctx) { if (rf & 1) {
|
|
14824
14848
|
i0.ɵɵlistener("keyup.escape", function DialogComponent_keyup_escape_HostBindingHandler() { return ctx.onKeyUp(); }, false, i0.ɵɵresolveDocument);
|
|
14825
14849
|
} }, inputs: { allowBackgroundInteraction: "allowBackgroundInteraction", showBackdrop: "showBackdrop", clickBackdrop: "clickBackdrop", ariaLabel: "ariaLabel", ariaDescription: "ariaDescription", actionPane: "actionPane", dialogMode: "dialogMode", dialogType: "dialogType", closeButton: "closeButton", compactFullHeight: "compactFullHeight" }, features: [i0.ɵɵInheritDefinitionFeature, i0.ɵɵNgOnChangesFeature], ngContentSelectors: _c2$h, decls: 1, vars: 1, consts: [["class", "sme-layout-absolute sme-position-inset-none", 3, "level", "showBackdrop", "allowBackgroundInteraction", "clicked", 4, "ngIf"], [1, "sme-layout-absolute", "sme-position-inset-none", 3, "level", "showBackdrop", "allowBackgroundInteraction", "clicked"], ["aria-modal", "true", 3, "ngClass"], ["class", "sme-button-trigger sme-button-auto-width sme-dialog-close-button", 3, "title", "click", 4, "ngIf"], [1, "sme-position-flex-none", "sme-focus-zone"], [1, "sme-layout-relative", "sme-position-flex-auto", "sme-padding-horizontal-lg", "sme-arrange-overflow-auto-y", "sme-arrange-overflow-hide-x", "sme-focus-zone", "sme-layout-responsive-zone-xs", "sme-dialog-content-wrapper"], [1, "sme-position-flex-none", "sme-focus-zone", "sme-padding-horizontal-lg", "sme-padding-vertical-sm"], ["class", "sme-screen-reader", 3, "id", 4, "ngIf"], [1, "sme-button-trigger", "sme-button-auto-width", "sme-dialog-close-button", 3, "title", "click"], [1, "sme-icon", "sme-icon-cancel"], [1, "sme-screen-reader", 3, "id"]], template: function DialogComponent_Template(rf, ctx) { if (rf & 1) {
|
|
14826
|
-
i0.ɵɵprojectionDef(_c1$
|
|
14850
|
+
i0.ɵɵprojectionDef(_c1$L);
|
|
14827
14851
|
i0.ɵɵtemplate(0, DialogComponent_sme_backdrop_0_Template, 11, 11, "sme-backdrop", 0);
|
|
14828
14852
|
} if (rf & 2) {
|
|
14829
14853
|
i0.ɵɵproperty("ngIf", ctx.visible);
|
|
@@ -15594,7 +15618,7 @@ class TabbedFormLoaderComponent extends ObjectPropertySchemaFieldLoaderComponent
|
|
|
15594
15618
|
});
|
|
15595
15619
|
}
|
|
15596
15620
|
ngOnDestroy() {
|
|
15597
|
-
this.subscriptions.forEach(sub => sub
|
|
15621
|
+
this.subscriptions.forEach(sub => sub?.unsubscribe());
|
|
15598
15622
|
}
|
|
15599
15623
|
setupSchema(schema) {
|
|
15600
15624
|
for (let i = 0; i < schema.properties.length; i++) {
|
|
@@ -15872,6 +15896,162 @@ class SchemaFieldHostModule {
|
|
|
15872
15896
|
DisabledModule,
|
|
15873
15897
|
TooltipModule], exports: [SchemaFieldHostComponent] }); })();
|
|
15874
15898
|
|
|
15899
|
+
/**
|
|
15900
|
+
* A re-usable form field accessibility manager.
|
|
15901
|
+
*/
|
|
15902
|
+
class FormFieldAccessibilityManagerBaseService {
|
|
15903
|
+
/**
|
|
15904
|
+
* The focus handler on delete/add if the form field is a list.
|
|
15905
|
+
* @param value The value for the list form field.
|
|
15906
|
+
* @param addButton The component reference for the add button.
|
|
15907
|
+
* @param hostElement The host element reference.
|
|
15908
|
+
* @param isDelete Determine if the action is delete.
|
|
15909
|
+
* @returns void
|
|
15910
|
+
*/
|
|
15911
|
+
listFormFieldFocusHandlerOnKeyboardAction(value, addButton, hostElement, isDelete = true) {
|
|
15912
|
+
// If there are no items in the list, focus on the add button.
|
|
15913
|
+
if (!value || !value.length) {
|
|
15914
|
+
this.deferredFocusOnAddButton(addButton);
|
|
15915
|
+
return;
|
|
15916
|
+
}
|
|
15917
|
+
// Otherwise focus on the either the first input fields when it is delete or the last input field when it is add.
|
|
15918
|
+
this.deferredFocusOnInputFields(hostElement, value, isDelete);
|
|
15919
|
+
}
|
|
15920
|
+
/**
|
|
15921
|
+
* The focus handler on delete/add if the form field is a list. And the list is built with a specific selector.
|
|
15922
|
+
* @param value The value for the list form field.
|
|
15923
|
+
* @param addButton The component reference for the add button.
|
|
15924
|
+
* @param hostElement The host element reference.
|
|
15925
|
+
* @param selector The selector for the input fields.
|
|
15926
|
+
* @returns void
|
|
15927
|
+
*/
|
|
15928
|
+
listFormFieldFocusHandlerOnKeyboardActionBySelector(value, addButton, hostElement, selector) {
|
|
15929
|
+
// If there are no items in the list, focus on the add button.
|
|
15930
|
+
if (!value || !value.length) {
|
|
15931
|
+
this.deferredFocusOnAddButton(addButton);
|
|
15932
|
+
return;
|
|
15933
|
+
}
|
|
15934
|
+
// Otherwise focus on the either the first input fields when it is delete or the last input field when it is add.
|
|
15935
|
+
this.deferredFocusOnTargetBySelector(value, hostElement, selector);
|
|
15936
|
+
}
|
|
15937
|
+
/**
|
|
15938
|
+
* It handles the focus on the input field by index if value is type of any[].
|
|
15939
|
+
* @param hostElement the host form field element.
|
|
15940
|
+
* @param index the index of the input field to focus on.
|
|
15941
|
+
* @returns void.
|
|
15942
|
+
*/
|
|
15943
|
+
focusOnInputByIndex(hostElement, index) {
|
|
15944
|
+
const inputs = hostElement.nativeElement.querySelectorAll('input');
|
|
15945
|
+
if (index < 0 || index >= inputs.length) {
|
|
15946
|
+
return;
|
|
15947
|
+
}
|
|
15948
|
+
inputs[index].focus();
|
|
15949
|
+
}
|
|
15950
|
+
deferredFocusOnTargetBySelector(value, hostElement, selector) {
|
|
15951
|
+
if (!value || !value.length) {
|
|
15952
|
+
return;
|
|
15953
|
+
}
|
|
15954
|
+
const targets = hostElement.nativeElement.querySelectorAll(selector);
|
|
15955
|
+
if (!targets || !targets.length) {
|
|
15956
|
+
return;
|
|
15957
|
+
}
|
|
15958
|
+
targets[0].focus();
|
|
15959
|
+
}
|
|
15960
|
+
deferredFocusOnAddButton(addButton) {
|
|
15961
|
+
if (!addButton) {
|
|
15962
|
+
return;
|
|
15963
|
+
}
|
|
15964
|
+
addButton.nativeElement.focus();
|
|
15965
|
+
}
|
|
15966
|
+
deferredFocusOnInputFields(hostElement, value, isDelete = true) {
|
|
15967
|
+
if (!value || !value.length) {
|
|
15968
|
+
return;
|
|
15969
|
+
}
|
|
15970
|
+
this.focusOnInputByIndex(hostElement, isDelete ? 0 : value.length - 1);
|
|
15971
|
+
}
|
|
15972
|
+
}
|
|
15973
|
+
/** @nocollapse */ FormFieldAccessibilityManagerBaseService.ɵfac = function FormFieldAccessibilityManagerBaseService_Factory(t) { return new (t || FormFieldAccessibilityManagerBaseService)(); };
|
|
15974
|
+
/** @nocollapse */ FormFieldAccessibilityManagerBaseService.ɵprov = /** @pureOrBreakMyCode */ i0.ɵɵdefineInjectable({ token: FormFieldAccessibilityManagerBaseService, factory: FormFieldAccessibilityManagerBaseService.ɵfac, providedIn: 'root' });
|
|
15975
|
+
__decorate([
|
|
15976
|
+
Debounce$2(),
|
|
15977
|
+
__metadata("design:type", Function),
|
|
15978
|
+
__metadata("design:paramtypes", [Array, ElementRef, String]),
|
|
15979
|
+
__metadata("design:returntype", void 0)
|
|
15980
|
+
], FormFieldAccessibilityManagerBaseService.prototype, "deferredFocusOnTargetBySelector", null);
|
|
15981
|
+
__decorate([
|
|
15982
|
+
Debounce$2(),
|
|
15983
|
+
__metadata("design:type", Function),
|
|
15984
|
+
__metadata("design:paramtypes", [ElementRef]),
|
|
15985
|
+
__metadata("design:returntype", void 0)
|
|
15986
|
+
], FormFieldAccessibilityManagerBaseService.prototype, "deferredFocusOnAddButton", null);
|
|
15987
|
+
__decorate([
|
|
15988
|
+
Debounce$2(),
|
|
15989
|
+
__metadata("design:type", Function),
|
|
15990
|
+
__metadata("design:paramtypes", [ElementRef, Array, Object]),
|
|
15991
|
+
__metadata("design:returntype", void 0)
|
|
15992
|
+
], FormFieldAccessibilityManagerBaseService.prototype, "deferredFocusOnInputFields", null);
|
|
15993
|
+
(function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(FormFieldAccessibilityManagerBaseService, [{
|
|
15994
|
+
type: Injectable,
|
|
15995
|
+
args: [{
|
|
15996
|
+
providedIn: 'root'
|
|
15997
|
+
}]
|
|
15998
|
+
}], null, { deferredFocusOnTargetBySelector: [], deferredFocusOnAddButton: [], deferredFocusOnInputFields: [] }); })();
|
|
15999
|
+
|
|
16000
|
+
class ArrayFormFieldAccessibilityManagerService {
|
|
16001
|
+
constructor(formFieldAccessibilityManagerBaseService) {
|
|
16002
|
+
this.formFieldAccessibilityManagerBaseService = formFieldAccessibilityManagerBaseService;
|
|
16003
|
+
this.firstFormFieldInArrayItemSelector = 'sme-accordion sme-accordion-panel:last-of-type input';
|
|
16004
|
+
}
|
|
16005
|
+
/**
|
|
16006
|
+
* It handles the focus when deleting an item from the list.
|
|
16007
|
+
* @param value the value for the list.
|
|
16008
|
+
* @param addButton the element reference for the add button.
|
|
16009
|
+
* @param hostElement the element reference for the host element.
|
|
16010
|
+
* @returns void
|
|
16011
|
+
*/
|
|
16012
|
+
delete(value, addButton, hostElement) {
|
|
16013
|
+
this.formFieldAccessibilityManagerBaseService.listFormFieldFocusHandlerOnKeyboardActionBySelector(value, addButton, hostElement, this.firstFormFieldInArrayItemSelector);
|
|
16014
|
+
}
|
|
16015
|
+
/**
|
|
16016
|
+
* It handles the focus when adding an item to the list.
|
|
16017
|
+
* @param value the value for the list.
|
|
16018
|
+
* @param addButton the element reference for the add button.
|
|
16019
|
+
* @param hostElement the element reference for the host element.
|
|
16020
|
+
* @returns void
|
|
16021
|
+
*/
|
|
16022
|
+
add(value, addButton, hostElement) {
|
|
16023
|
+
this.formFieldAccessibilityManagerBaseService.listFormFieldFocusHandlerOnKeyboardActionBySelector(value, addButton, hostElement, this.firstFormFieldInArrayItemSelector);
|
|
16024
|
+
}
|
|
16025
|
+
/**
|
|
16026
|
+
* It handles the focus when promoting an item in the list.
|
|
16027
|
+
* @param hostElement The element reference for the host element.
|
|
16028
|
+
* @param index the current index.
|
|
16029
|
+
*/
|
|
16030
|
+
promote(value, hostElement, index) {
|
|
16031
|
+
this.formFieldAccessibilityManagerBaseService.deferredFocusOnTargetBySelector(value, hostElement,
|
|
16032
|
+
// nth means index - 1 + 1 = index
|
|
16033
|
+
`sme-accordion sme-accordion-panel:nth-of-type(${index}) button:nth-of-type(2)`);
|
|
16034
|
+
}
|
|
16035
|
+
/**
|
|
16036
|
+
* It handles the focus when demoting an item in the list.
|
|
16037
|
+
* @param hostElement The element reference for the host element.
|
|
16038
|
+
* @param index the current index.
|
|
16039
|
+
*/
|
|
16040
|
+
demote(value, hostElement, index) {
|
|
16041
|
+
this.formFieldAccessibilityManagerBaseService.deferredFocusOnTargetBySelector(value, hostElement,
|
|
16042
|
+
// nth means index + 1 + 1 = index + 2
|
|
16043
|
+
`sme-accordion sme-accordion-panel:nth-of-type(${index + 2}) button:nth-of-type(3)`);
|
|
16044
|
+
}
|
|
16045
|
+
}
|
|
16046
|
+
/** @nocollapse */ ArrayFormFieldAccessibilityManagerService.ɵfac = function ArrayFormFieldAccessibilityManagerService_Factory(t) { return new (t || ArrayFormFieldAccessibilityManagerService)(i0.ɵɵinject(FormFieldAccessibilityManagerBaseService)); };
|
|
16047
|
+
/** @nocollapse */ ArrayFormFieldAccessibilityManagerService.ɵprov = /** @pureOrBreakMyCode */ i0.ɵɵdefineInjectable({ token: ArrayFormFieldAccessibilityManagerService, factory: ArrayFormFieldAccessibilityManagerService.ɵfac, providedIn: 'root' });
|
|
16048
|
+
(function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(ArrayFormFieldAccessibilityManagerService, [{
|
|
16049
|
+
type: Injectable,
|
|
16050
|
+
args: [{
|
|
16051
|
+
providedIn: 'root'
|
|
16052
|
+
}]
|
|
16053
|
+
}], function () { return [{ type: FormFieldAccessibilityManagerBaseService }]; }, null); })();
|
|
16054
|
+
|
|
15875
16055
|
/**
|
|
15876
16056
|
* Provider that hides any existing ControlContainers from NgModel
|
|
15877
16057
|
*/
|
|
@@ -16005,7 +16185,7 @@ function ArrayFormFieldLoaderComponent_ng_template_2_Template(rf, ctx) { if (rf
|
|
|
16005
16185
|
const ctx_r1 = i0.ɵɵnextContext();
|
|
16006
16186
|
i0.ɵɵproperty("propertySchema", ctx_r1.propertySchema.item)("context", ctx_r1.context)("data", model_r2);
|
|
16007
16187
|
} }
|
|
16008
|
-
const _c1$
|
|
16188
|
+
const _c1$K = ["addButton"];
|
|
16009
16189
|
const _c2$g = ["type", "array"];
|
|
16010
16190
|
const _c3$b = function (a0, a1) { return { index: a0, ariaLabelId: a1 }; };
|
|
16011
16191
|
function ArrayFormFieldComponent_sme_accordion_panel_3_ng_container_2_Template(rf, ctx) { if (rf & 1) {
|
|
@@ -16103,7 +16283,6 @@ function ArrayFormFieldComponent_button_4_Template(rf, ctx) { if (rf & 1) {
|
|
|
16103
16283
|
i0.ɵɵtextInterpolate(ctx_r1.addButtonText);
|
|
16104
16284
|
} }
|
|
16105
16285
|
/* eslint-disable max-len */
|
|
16106
|
-
/* eslint-enable max-len */
|
|
16107
16286
|
class ArrayFormFieldLoaderComponent extends ArrayPropertySchemaFieldLoaderComponent {
|
|
16108
16287
|
askForNewItem($event) {
|
|
16109
16288
|
const item = SchemaUtilities.generateDataBasedOnSchemaProperty(this.propertySchema.item);
|
|
@@ -16172,8 +16351,9 @@ let ArrayFormFieldComponent = class ArrayFormFieldComponent extends SmeInternalF
|
|
|
16172
16351
|
/**
|
|
16173
16352
|
* Initializes a new instance of the JsonFormFieldComponent
|
|
16174
16353
|
*/
|
|
16175
|
-
constructor(injector) {
|
|
16354
|
+
constructor(injector, arrayFormFieldAccessibilityManagerService) {
|
|
16176
16355
|
super(injector);
|
|
16356
|
+
this.arrayFormFieldAccessibilityManagerService = arrayFormFieldAccessibilityManagerService;
|
|
16177
16357
|
/**
|
|
16178
16358
|
* When no "newItem" is provided. This output will be called anytime a new item is required.
|
|
16179
16359
|
*/
|
|
@@ -16259,35 +16439,19 @@ let ArrayFormFieldComponent = class ArrayFormFieldComponent extends SmeInternalF
|
|
|
16259
16439
|
*/
|
|
16260
16440
|
add() {
|
|
16261
16441
|
const item = this.getNewItem();
|
|
16262
|
-
const index = this.value.length;
|
|
16263
16442
|
this.value.push(item);
|
|
16264
16443
|
this.triggerValueChange();
|
|
16265
|
-
|
|
16266
|
-
const itemId = this.getItemAriaId(index, 'itemContainer');
|
|
16267
|
-
const itemContainer = document.getElementById(itemId);
|
|
16268
|
-
const firstInput = itemContainer.querySelector('input');
|
|
16269
|
-
if (firstInput) {
|
|
16270
|
-
firstInput.focus();
|
|
16271
|
-
}
|
|
16272
|
-
itemContainer.scrollIntoView({ behavior: 'smooth', block: 'center' });
|
|
16273
|
-
});
|
|
16444
|
+
this.arrayFormFieldAccessibilityManagerService.add(this.value, this.addButton, this.hostElement);
|
|
16274
16445
|
}
|
|
16275
16446
|
/**
|
|
16276
16447
|
* Deletes an item from the array
|
|
16277
16448
|
*/
|
|
16278
16449
|
delete(item) {
|
|
16279
16450
|
const index = this.value.indexOf(item);
|
|
16280
|
-
// return the view to the previous item in the list.
|
|
16281
|
-
const prevItemId = this.getItemAriaId(index - 1, 'itemContainer');
|
|
16282
|
-
const prevContainer = document.getElementById(prevItemId);
|
|
16283
|
-
if (prevContainer) {
|
|
16284
|
-
prevContainer.scrollIntoView({ behavior: 'smooth', block: 'center' });
|
|
16285
|
-
}
|
|
16286
|
-
// focus on the add button, otherwise focus is reset to the beginning of the page
|
|
16287
|
-
this.addButton.nativeElement.focus();
|
|
16288
16451
|
this.value.splice(index, 1);
|
|
16289
16452
|
this.triggerValueChange();
|
|
16290
16453
|
this.updateScreenReaderEvent(this.strings.MsftSmeShell.Angular.Form.Array.removeButtonEvent);
|
|
16454
|
+
this.arrayFormFieldAccessibilityManagerService.delete(this.value, this.addButton, this.hostElement);
|
|
16291
16455
|
}
|
|
16292
16456
|
/**
|
|
16293
16457
|
* Decreases the index of an item by 1
|
|
@@ -16299,6 +16463,7 @@ let ArrayFormFieldComponent = class ArrayFormFieldComponent extends SmeInternalF
|
|
|
16299
16463
|
this.value[index] = { ...this.value[index - 1] };
|
|
16300
16464
|
this.value[index - 1] = temp;
|
|
16301
16465
|
this.updateScreenReaderEvent(this.strings.MsftSmeShell.Angular.Form.Array.promoteButtonEvent);
|
|
16466
|
+
this.arrayFormFieldAccessibilityManagerService.promote(this.value, this.hostElement, index);
|
|
16302
16467
|
}
|
|
16303
16468
|
else {
|
|
16304
16469
|
this.updateScreenReaderEvent(this.strings.MsftSmeShell.Angular.Form.Array.promoteButtonPreventedEvent);
|
|
@@ -16314,6 +16479,7 @@ let ArrayFormFieldComponent = class ArrayFormFieldComponent extends SmeInternalF
|
|
|
16314
16479
|
this.value[index] = { ...this.value[index + 1] };
|
|
16315
16480
|
this.value[index + 1] = temp;
|
|
16316
16481
|
this.updateScreenReaderEvent(this.strings.MsftSmeShell.Angular.Form.Array.demoteButtonEvent);
|
|
16482
|
+
this.arrayFormFieldAccessibilityManagerService.demote(this.value, this.hostElement, index);
|
|
16317
16483
|
}
|
|
16318
16484
|
else {
|
|
16319
16485
|
this.updateScreenReaderEvent(this.strings.MsftSmeShell.Angular.Form.Array.demoteButtonPreventedEvent);
|
|
@@ -16393,14 +16559,14 @@ let ArrayFormFieldComponent = class ArrayFormFieldComponent extends SmeInternalF
|
|
|
16393
16559
|
}
|
|
16394
16560
|
}
|
|
16395
16561
|
};
|
|
16396
|
-
/** @nocollapse */ ArrayFormFieldComponent.ɵfac = function ArrayFormFieldComponent_Factory(t) { return new (t || ArrayFormFieldComponent)(i0.ɵɵdirectiveInject(i0.Injector)); };
|
|
16562
|
+
/** @nocollapse */ ArrayFormFieldComponent.ɵfac = function ArrayFormFieldComponent_Factory(t) { return new (t || ArrayFormFieldComponent)(i0.ɵɵdirectiveInject(i0.Injector), i0.ɵɵdirectiveInject(ArrayFormFieldAccessibilityManagerService)); };
|
|
16397
16563
|
/** @nocollapse */ ArrayFormFieldComponent.ɵcmp = /** @pureOrBreakMyCode */ i0.ɵɵdefineComponent({ type: ArrayFormFieldComponent, selectors: [["sme-form-field", "type", "array"]], contentQueries: function ArrayFormFieldComponent_ContentQueries(rf, ctx, dirIndex) { if (rf & 1) {
|
|
16398
16564
|
i0.ɵɵcontentQuery(dirIndex, FormFieldIsolatorComponent, 7);
|
|
16399
16565
|
} if (rf & 2) {
|
|
16400
16566
|
let _t;
|
|
16401
16567
|
i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.subFieldIsolator = _t.first);
|
|
16402
16568
|
} }, viewQuery: function ArrayFormFieldComponent_Query(rf, ctx) { if (rf & 1) {
|
|
16403
|
-
i0.ɵɵviewQuery(_c1$
|
|
16569
|
+
i0.ɵɵviewQuery(_c1$K, 5);
|
|
16404
16570
|
} if (rf & 2) {
|
|
16405
16571
|
let _t;
|
|
16406
16572
|
i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.addButton = _t.first);
|
|
@@ -16437,12 +16603,13 @@ ArrayFormFieldComponent = __decorate([
|
|
|
16437
16603
|
description: `A form field control binding to array data.`,
|
|
16438
16604
|
loaderComponent: ArrayFormFieldLoaderComponent
|
|
16439
16605
|
}),
|
|
16440
|
-
__metadata("design:paramtypes", [Injector
|
|
16606
|
+
__metadata("design:paramtypes", [Injector,
|
|
16607
|
+
ArrayFormFieldAccessibilityManagerService])
|
|
16441
16608
|
], ArrayFormFieldComponent);
|
|
16442
16609
|
(function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(ArrayFormFieldComponent, [{
|
|
16443
16610
|
type: Component,
|
|
16444
|
-
args: [{ selector: 'sme-form-field[type="array"]', template: "<sme-form-field-layout [formField]=\"this\">\r\n
|
|
16445
|
-
}], function () { return [{ type: i0.Injector }]; }, { subFieldIsolator: [{
|
|
16611
|
+
args: [{ selector: 'sme-form-field[type="array"]', template: "<sme-form-field-layout [formField]=\"this\">\r\n <div class=\"sme-array\">\r\n <sme-accordion [canCloseAny]=\"canCloseAny\" [canCloseAll]=\"canCloseAll\" [canOpenMultiple]=\"canOpenMultiple\">\r\n <sme-accordion-panel *ngFor=\"let item of value; let i = index\" [header]=\"getItemTitle(item, i)\" [isExpandable]=\"false\" [attr.data-uta-id]=\"'array-form-field-item-' + i\">\r\n <sme-panel-control>\r\n <ng-container *ngIf=\"headerTemplate\" smeTemplateOutlet [template]=\"headerTemplate\" [data]=\"item\" hostDataName=\"context\"\r\n [hostData]=\"{index: i, ariaLabelId: getItemAriaId(i, 'itemHeader')}\"></ng-container>\r\n <button *ngIf=\"showMove\" type=\"button\"\r\n class=\"sme-button-trigger sme-button-auto-width sme-form-field-height sme-padding-horizontal-xs\"\r\n [attr.aria-label]=\"strings.MsftSmeShell.Angular.Form.Array.promoteButtonAriaLabel\"\r\n [title]=\"strings.MsftSmeShell.Angular.Form.Array.promoteButtonTooltip\" (click)=\"moveUp(item)\"\r\n [smeDisabled]=\"loadingOrDisabled\" data-uta-id=\"promote-button\">\r\n <span class=\"sme-icon sme-icon-up\"></span>\r\n </button>\r\n <button *ngIf=\"showMove\" type=\"button\"\r\n class=\"sme-button-trigger sme-button-auto-width sme-form-field-height sme-padding-horizontal-xs\"\r\n [attr.aria-label]=\"strings.MsftSmeShell.Angular.Form.Array.demoteButtonAriaLabel\"\r\n [title]=\"strings.MsftSmeShell.Angular.Form.Array.demoteButtonTooltip\" (click)=\"moveDown(item)\"\r\n [smeDisabled]=\"loadingOrDisabled\" data-uta-id=\"demote-button\">\r\n <span class=\"sme-icon sme-icon-down\"></span>\r\n </button>\r\n <button *ngIf=\"getShowRemove(item, i)\" type=\"button\"\r\n class=\"sme-button-trigger sme-button-auto-width sme-form-field-height sme-padding-horizontal-xs\"\r\n [attr.aria-label]=\"strings.MsftSmeShell.Angular.Form.Array.removeButtonAriaLabel\"\r\n [title]=\"strings.MsftSmeShell.Angular.Form.Array.removeButtonTooltip\" (click)=\"delete(item)\"\r\n [smeDisabled]=\"loadingOrDisabled\" data-uta-id=\"remove-button\">\r\n <span class=\"sme-icon sme-icon-delete sme-color-red\"></span>\r\n </button>\r\n </sme-panel-control>\r\n <span class=\"sme-screen-reader\" [id]=\"getItemAriaId(i, 'item')\">{{itemTitle}}</span>\r\n <fieldset [attr.aria-labelledby]=\"getItemAriaId(i, 'item')\"\r\n class=\"sme-arrange-stack-h sme-margin-bottom-lg sme-array-item\"\r\n [class.sme-subform-indent-none]=\"orientation==='horizontal'\">\r\n <div class=\"sme-position-flex-auto sme-padding-inset-md\" [id]=\"getItemAriaId(i, 'itemContainer')\">\r\n <ng-container smeTemplateOutlet [template]=\"itemTemplate\" [data]=\"item\" hostDataName=\"context\"\r\n [hostData]=\"{index: i, ariaLabelId: getItemAriaId(i, 'item')}\"></ng-container>\r\n </div>\r\n </fieldset>\r\n </sme-accordion-panel>\r\n </sme-accordion>\r\n <button #addButton *ngIf=\"showAdd\" type=\"button\" data-uta-id=\"add-button\"\r\n [smeDisabled]=\"loadingOrDisabled || (maxItems !== -1 && value.length >= maxItems)\"\r\n class=\"sme-button-trigger sme-button-auto-width sme-icon sme-icon-add sme-margin-bottom-xs\"\r\n [attr.aria-label]=\"strings.MsftSmeShell.Angular.Form.Array.addButtonAriaLabel\"\r\n [title]=\"strings.MsftSmeShell.Angular.Form.Array.addButtonTooltip\" (click)=\"add()\">{{addButtonText}}</button>\r\n </div>\r\n <sme-validation-alert [alert]=\"alert\"></sme-validation-alert>\r\n <div class=\"sme-screen-reader\" aria-live=\"assertive\" aria-relevant=\"all\">{{screenReaderEvent}}</div>\r\n</sme-form-field-layout>\r\n" }]
|
|
16612
|
+
}], function () { return [{ type: i0.Injector }, { type: ArrayFormFieldAccessibilityManagerService }]; }, { subFieldIsolator: [{
|
|
16446
16613
|
type: ContentChild,
|
|
16447
16614
|
args: [FormFieldIsolatorComponent, { static: true }]
|
|
16448
16615
|
}], askForNewItem: [{
|
|
@@ -17489,8 +17656,10 @@ function ClockFormFieldComponent_div_12_Template(rf, ctx) { if (rf & 1) {
|
|
|
17489
17656
|
} if (rf & 2) {
|
|
17490
17657
|
const ctx_r3 = i0.ɵɵnextContext();
|
|
17491
17658
|
i0.ɵɵadvance(1);
|
|
17659
|
+
i0.ɵɵproperty("title", ctx_r3.strings.MsftSmeShell.Angular.Common.apply);
|
|
17492
17660
|
i0.ɵɵattribute("aria-label", ctx_r3.strings.MsftSmeShell.Angular.Common.apply);
|
|
17493
17661
|
i0.ɵɵadvance(2);
|
|
17662
|
+
i0.ɵɵproperty("title", ctx_r3.strings.MsftSmeShell.Angular.Common.clear);
|
|
17494
17663
|
i0.ɵɵattribute("aria-label", ctx_r3.strings.MsftSmeShell.Angular.Common.clear);
|
|
17495
17664
|
} }
|
|
17496
17665
|
function ClockFormFieldComponent_sme_validation_alert_13_Template(rf, ctx) { if (rf & 1) {
|
|
@@ -18053,7 +18222,7 @@ class ClockFormFieldComponent extends DateLikeFormFieldComponent {
|
|
|
18053
18222
|
}
|
|
18054
18223
|
}
|
|
18055
18224
|
/** @nocollapse */ ClockFormFieldComponent.ɵfac = function ClockFormFieldComponent_Factory(t) { return new (t || ClockFormFieldComponent)(i0.ɵɵdirectiveInject(i0.Injector)); };
|
|
18056
|
-
/** @nocollapse */ ClockFormFieldComponent.ɵcmp = /** @pureOrBreakMyCode */ i0.ɵɵdefineComponent({ type: ClockFormFieldComponent, selectors: [["sme-form-field", "type", "clock"]], inputs: { showConfirmation: "showConfirmation" }, outputs: { accepted: "accepted", cleared: "cleared" }, features: [i0.ɵɵInheritDefinitionFeature], attrs: _c0$1g, decls: 14, vars: 9, consts: [["role", "region", 3, "formField"], [1, "sme-clock", "sme-focus-zone", "sme-form-field-editor"], [1, "sme-clock-main-content"], [1, "sme-clock-column", "sme-clock-column-hours", 3, "wheel", "scroll"], [1, "sme-clock-column-header"], ["type", "button", 3, "sme-selected", "tabindex", "click", "keydown", 4, "ngFor", "ngForOf"], [1, "sme-clock-column", "sme-clock-column-minutes", 3, "wheel", "scroll"], ["class", "sme-clock-column sme-clock-column-meridiem", 3, "wheel", "scroll", 4, "ngIf"], ["class", "sme-clock-confirmation", 4, "ngIf"], [3, "alert", 4, "ngIf"], ["type", "button", 3, "tabindex", "click", "keydown"], [1, "sme-clock-column", "sme-clock-column-meridiem", 3, "wheel", "scroll"], ["type", "button", 3, "class", "sme-selected", "tabindex", "click", "keydown", 4, "ngFor", "ngForOf"], [1, "sme-clock-confirmation"], ["type", "button", "tabindex", "0", 3, "click"], [1, "sme-icon", "sme-icon-size-xxs", "sme-icon-accept"], [1, "sme-icon", "sme-icon-size-xxs", "sme-icon-clear"], [3, "alert"]], template: function ClockFormFieldComponent_Template(rf, ctx) { if (rf & 1) {
|
|
18225
|
+
/** @nocollapse */ ClockFormFieldComponent.ɵcmp = /** @pureOrBreakMyCode */ i0.ɵɵdefineComponent({ type: ClockFormFieldComponent, selectors: [["sme-form-field", "type", "clock"]], inputs: { showConfirmation: "showConfirmation" }, outputs: { accepted: "accepted", cleared: "cleared" }, features: [i0.ɵɵInheritDefinitionFeature], attrs: _c0$1g, decls: 14, vars: 9, consts: [["role", "region", 3, "formField"], [1, "sme-clock", "sme-focus-zone", "sme-form-field-editor"], [1, "sme-clock-main-content"], [1, "sme-clock-column", "sme-clock-column-hours", 3, "wheel", "scroll"], [1, "sme-clock-column-header"], ["type", "button", 3, "sme-selected", "tabindex", "click", "keydown", 4, "ngFor", "ngForOf"], [1, "sme-clock-column", "sme-clock-column-minutes", 3, "wheel", "scroll"], ["class", "sme-clock-column sme-clock-column-meridiem", 3, "wheel", "scroll", 4, "ngIf"], ["class", "sme-clock-confirmation", 4, "ngIf"], [3, "alert", 4, "ngIf"], ["type", "button", 3, "tabindex", "click", "keydown"], [1, "sme-clock-column", "sme-clock-column-meridiem", 3, "wheel", "scroll"], ["type", "button", 3, "class", "sme-selected", "tabindex", "click", "keydown", 4, "ngFor", "ngForOf"], [1, "sme-clock-confirmation"], ["type", "button", "tabindex", "0", 3, "title", "click"], [1, "sme-icon", "sme-icon-size-xxs", "sme-icon-accept"], [1, "sme-icon", "sme-icon-size-xxs", "sme-icon-clear"], [3, "alert"]], template: function ClockFormFieldComponent_Template(rf, ctx) { if (rf & 1) {
|
|
18057
18226
|
i0.ɵɵelementStart(0, "sme-form-field-layout", 0)(1, "div", 1)(2, "div", 2)(3, "div", 3);
|
|
18058
18227
|
i0.ɵɵlistener("wheel", function ClockFormFieldComponent_Template_div_wheel_3_listener($event) { return ctx.onHourWheel($event); })("scroll", function ClockFormFieldComponent_Template_div_scroll_3_listener($event) { return ctx.onColumnScroll($event); });
|
|
18059
18228
|
i0.ɵɵelementStart(4, "div", 4);
|
|
@@ -18070,7 +18239,7 @@ class ClockFormFieldComponent extends DateLikeFormFieldComponent {
|
|
|
18070
18239
|
i0.ɵɵelementEnd();
|
|
18071
18240
|
i0.ɵɵtemplate(11, ClockFormFieldComponent_div_11_Template, 4, 2, "div", 7);
|
|
18072
18241
|
i0.ɵɵelementEnd();
|
|
18073
|
-
i0.ɵɵtemplate(12, ClockFormFieldComponent_div_12_Template, 5,
|
|
18242
|
+
i0.ɵɵtemplate(12, ClockFormFieldComponent_div_12_Template, 5, 4, "div", 8);
|
|
18074
18243
|
i0.ɵɵelementEnd();
|
|
18075
18244
|
i0.ɵɵtemplate(13, ClockFormFieldComponent_sme_validation_alert_13_Template, 1, 1, "sme-validation-alert", 9);
|
|
18076
18245
|
i0.ɵɵelementEnd();
|
|
@@ -18091,7 +18260,7 @@ class ClockFormFieldComponent extends DateLikeFormFieldComponent {
|
|
|
18091
18260
|
i0.ɵɵproperty("ngIf", ctx.showConfirmation);
|
|
18092
18261
|
i0.ɵɵadvance(1);
|
|
18093
18262
|
i0.ɵɵproperty("ngIf", !ctx.compact);
|
|
18094
|
-
} }, dependencies: [i1$1.NgForOf, i1$1.NgIf, ValidationAlertComponent, FormFieldLayoutComponent], encapsulation: 2 });
|
|
18263
|
+
} }, dependencies: [i1$1.NgForOf, i1$1.NgIf, TooltipDirective, ValidationAlertComponent, FormFieldLayoutComponent], encapsulation: 2 });
|
|
18095
18264
|
__decorate([
|
|
18096
18265
|
Debounce$1(10),
|
|
18097
18266
|
__metadata("design:type", Function),
|
|
@@ -18106,7 +18275,7 @@ __decorate([
|
|
|
18106
18275
|
], ClockFormFieldComponent.prototype, "focusOnHostElement", null);
|
|
18107
18276
|
(function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(ClockFormFieldComponent, [{
|
|
18108
18277
|
type: Component,
|
|
18109
|
-
args: [{ selector: 'sme-form-field[type="clock"]', template: "<sme-form-field-layout [formField]=\"this\" role=\"region\" [attr.aria-label]=\"ariaLabel\">\r\n <div class=\"sme-clock sme-focus-zone sme-form-field-editor \">\r\n <div class=\"sme-clock-main-content\">\r\n <div class=\"sme-clock-column sme-clock-column-hours\" (wheel)=\"onHourWheel($event)\"\r\n (scroll)=\"onColumnScroll($event)\">\r\n <div class=\"sme-clock-column-header\">{{this.strings.MsftSmeShell.Angular.Clock.Headings.hour}}</div>\r\n <button type=\"button\" *ngFor=\"let hour of hours\" [class.sme-selected]=\"hour.isSelected\" [tabindex]=\"hour.isSelected ? 0 : -1\"\r\n (click)=\"onHourClicked($event, hour)\" (keydown)=\"onHourKeydown($event)\" [attr.aria-label]=\"strings.MsftSmeShell.Angular.Clock.Headings.hour + hour.display\">{{hour.display}}</button>\r\n </div>\r\n <div class=\"sme-clock-column sme-clock-column-minutes\" (wheel)=\"onMinuteWheel($event)\"\r\n (scroll)=\"onColumnScroll($event)\">\r\n <div class=\"sme-clock-column-header\">{{this.strings.MsftSmeShell.Angular.Clock.Headings.minute}}</div>\r\n <button type=\"button\" *ngFor=\"let minute of minutes\" [class.sme-selected]=\"minute.isSelected\"\r\n [tabindex]=\"minute.isSelected ? 0 : -1\" (click)=\"onMinuteClicked($event, minute)\"\r\n (keydown)=\"onMinuteKeydown($event)\" [attr.aria-label]=\"strings.MsftSmeShell.Angular.Clock.Headings.minute + minute.display\">{{minute.display}}</button>\r\n </div>\r\n <div *ngIf=\"!!viewportMeridiem\" class=\"sme-clock-column sme-clock-column-meridiem\"\r\n (wheel)=\"onMeridiemWheel($event)\" (scroll)=\"onColumnScroll($event)\">\r\n <div class=\"sme-clock-column-header\">{{this.strings.MsftSmeShell.Angular.Clock.Headings.meridiem}}</div>\r\n <button type=\"button\" *ngFor=\"let meridiem of meridiems\" class=\"sme-clock-meridiem-{{meridiem.value}}\"\r\n [class.sme-selected]=\"meridiem.isSelected\" [tabindex]=\"meridiem.isSelected ? 0 : -1\"\r\n (click)=\"onMeridiemClicked($event, meridiem.value)\"\r\n (keydown)=\"onMeridiemKeydown($event)\">{{meridiem.display}}</button>\r\n </div>\r\n </div>\r\n <div *ngIf=\"showConfirmation\" class=\"sme-clock-confirmation\">\r\n <button type=\"button\" [attr.aria-label]=\"this.strings.MsftSmeShell.Angular.Common.apply\" tabindex=\"0\"\r\n
|
|
18278
|
+
args: [{ selector: 'sme-form-field[type="clock"]', template: "<sme-form-field-layout [formField]=\"this\" role=\"region\" [attr.aria-label]=\"ariaLabel\">\r\n <div class=\"sme-clock sme-focus-zone sme-form-field-editor \">\r\n <div class=\"sme-clock-main-content\">\r\n <div class=\"sme-clock-column sme-clock-column-hours\" (wheel)=\"onHourWheel($event)\"\r\n (scroll)=\"onColumnScroll($event)\">\r\n <div class=\"sme-clock-column-header\">{{this.strings.MsftSmeShell.Angular.Clock.Headings.hour}}</div>\r\n <button type=\"button\" *ngFor=\"let hour of hours\" [class.sme-selected]=\"hour.isSelected\" [tabindex]=\"hour.isSelected ? 0 : -1\"\r\n (click)=\"onHourClicked($event, hour)\" (keydown)=\"onHourKeydown($event)\" [attr.aria-label]=\"strings.MsftSmeShell.Angular.Clock.Headings.hour + hour.display\">{{hour.display}}</button>\r\n </div>\r\n <div class=\"sme-clock-column sme-clock-column-minutes\" (wheel)=\"onMinuteWheel($event)\"\r\n (scroll)=\"onColumnScroll($event)\">\r\n <div class=\"sme-clock-column-header\">{{this.strings.MsftSmeShell.Angular.Clock.Headings.minute}}</div>\r\n <button type=\"button\" *ngFor=\"let minute of minutes\" [class.sme-selected]=\"minute.isSelected\"\r\n [tabindex]=\"minute.isSelected ? 0 : -1\" (click)=\"onMinuteClicked($event, minute)\"\r\n (keydown)=\"onMinuteKeydown($event)\" [attr.aria-label]=\"strings.MsftSmeShell.Angular.Clock.Headings.minute + minute.display\">{{minute.display}}</button>\r\n </div>\r\n <div *ngIf=\"!!viewportMeridiem\" class=\"sme-clock-column sme-clock-column-meridiem\"\r\n (wheel)=\"onMeridiemWheel($event)\" (scroll)=\"onColumnScroll($event)\">\r\n <div class=\"sme-clock-column-header\">{{this.strings.MsftSmeShell.Angular.Clock.Headings.meridiem}}</div>\r\n <button type=\"button\" *ngFor=\"let meridiem of meridiems\" class=\"sme-clock-meridiem-{{meridiem.value}}\"\r\n [class.sme-selected]=\"meridiem.isSelected\" [tabindex]=\"meridiem.isSelected ? 0 : -1\"\r\n (click)=\"onMeridiemClicked($event, meridiem.value)\"\r\n (keydown)=\"onMeridiemKeydown($event)\">{{meridiem.display}}</button>\r\n </div>\r\n </div>\r\n <div *ngIf=\"showConfirmation\" class=\"sme-clock-confirmation\">\r\n <button type=\"button\" [title]=\"this.strings.MsftSmeShell.Angular.Common.apply\"\r\n [attr.aria-label]=\"this.strings.MsftSmeShell.Angular.Common.apply\" tabindex=\"0\"\r\n (click)=\"onAcceptClicked($event)\">\r\n <span class=\"sme-icon sme-icon-size-xxs sme-icon-accept\"></span>\r\n </button>\r\n <button type=\"button\" [title]=\"this.strings.MsftSmeShell.Angular.Common.clear\"\r\n [attr.aria-label]=\"this.strings.MsftSmeShell.Angular.Common.clear\" tabindex=\"0\"\r\n (click)=\"cleared.emit($event)\">\r\n <span class=\"sme-icon sme-icon-size-xxs sme-icon-clear\"></span>\r\n </button>\r\n </div>\r\n </div>\r\n <sme-validation-alert *ngIf=\"!compact\" [alert]=\"alert\"></sme-validation-alert>\r\n</sme-form-field-layout>\r\n" }]
|
|
18110
18279
|
}], function () { return [{ type: i0.Injector }]; }, { showConfirmation: [{
|
|
18111
18280
|
type: Input
|
|
18112
18281
|
}], accepted: [{
|
|
@@ -18215,7 +18384,7 @@ function fromMonacoEvent(emitter) {
|
|
|
18215
18384
|
}
|
|
18216
18385
|
|
|
18217
18386
|
const _c0$1f = ["editor"];
|
|
18218
|
-
const _c1$
|
|
18387
|
+
const _c1$J = ["type", "code"];
|
|
18219
18388
|
function CodeFormFieldComponent_sme_validation_alert_3_Template(rf, ctx) { if (rf & 1) {
|
|
18220
18389
|
i0.ɵɵelement(0, "sme-validation-alert", 4);
|
|
18221
18390
|
} if (rf & 2) {
|
|
@@ -18513,7 +18682,7 @@ let CodeFormFieldComponent = class CodeFormFieldComponent extends SmeInternalFor
|
|
|
18513
18682
|
i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.editorHost = _t.first);
|
|
18514
18683
|
} }, hostBindings: function CodeFormFieldComponent_HostBindings(rf, ctx) { if (rf & 1) {
|
|
18515
18684
|
i0.ɵɵlistener("keydown", function CodeFormFieldComponent_keydown_HostBindingHandler($event) { return ctx.onKeyDown($event); });
|
|
18516
|
-
} }, inputs: { language: "language", options: "options" }, features: [i0.ɵɵInheritDefinitionFeature, i0.ɵɵNgOnChangesFeature], attrs: _c1$
|
|
18685
|
+
} }, inputs: { language: "language", options: "options" }, features: [i0.ɵɵInheritDefinitionFeature, i0.ɵɵNgOnChangesFeature], attrs: _c1$J, decls: 4, vars: 2, consts: [[3, "formField"], ["sme-lint-disable", "", 1, "sme-code-editor", "sme-form-field-editor"], ["editor", ""], [3, "alert", 4, "ngIf"], [3, "alert"]], template: function CodeFormFieldComponent_Template(rf, ctx) { if (rf & 1) {
|
|
18517
18686
|
i0.ɵɵelementStart(0, "sme-form-field-layout", 0);
|
|
18518
18687
|
i0.ɵɵelement(1, "div", 1, 2);
|
|
18519
18688
|
i0.ɵɵtemplate(3, CodeFormFieldComponent_sme_validation_alert_3_Template, 1, 1, "sme-validation-alert", 3);
|
|
@@ -18863,7 +19032,7 @@ function ComboboxFormFieldLoaderComponent_ng_container_3_Template(rf, ctx) { if
|
|
|
18863
19032
|
i0.ɵɵproperty("ngForOf", ctx_r2.resolveComponentMember(ctx_r2.propertySchema.options.itemsBinding));
|
|
18864
19033
|
} }
|
|
18865
19034
|
const _c0$1d = ["singleSelectTemplate"];
|
|
18866
|
-
const _c1$
|
|
19035
|
+
const _c1$I = ["multiSelectTemplate"];
|
|
18867
19036
|
const _c2$f = ["listbox"];
|
|
18868
19037
|
const _c3$a = ["dropDown"];
|
|
18869
19038
|
const _c4$8 = ["type", "combobox"];
|
|
@@ -19274,7 +19443,7 @@ let ComboboxFormFieldComponent = class ComboboxFormFieldComponent extends SmeInt
|
|
|
19274
19443
|
/** @nocollapse */ ComboboxFormFieldComponent.ɵfac = function ComboboxFormFieldComponent_Factory(t) { return new (t || ComboboxFormFieldComponent)(i0.ɵɵdirectiveInject(i0.Injector)); };
|
|
19275
19444
|
/** @nocollapse */ ComboboxFormFieldComponent.ɵcmp = /** @pureOrBreakMyCode */ i0.ɵɵdefineComponent({ type: ComboboxFormFieldComponent, selectors: [["sme-form-field", "type", "combobox"], ["sme-form-field", "type", "select"]], viewQuery: function ComboboxFormFieldComponent_Query(rf, ctx) { if (rf & 1) {
|
|
19276
19445
|
i0.ɵɵviewQuery(_c0$1d, 7);
|
|
19277
|
-
i0.ɵɵviewQuery(_c1$
|
|
19446
|
+
i0.ɵɵviewQuery(_c1$I, 7);
|
|
19278
19447
|
i0.ɵɵviewQuery(_c2$f, 5);
|
|
19279
19448
|
i0.ɵɵviewQuery(_c3$a, 5);
|
|
19280
19449
|
} if (rf & 2) {
|
|
@@ -19447,7 +19616,7 @@ class SelectFormFieldDirective {
|
|
|
19447
19616
|
}], null, null); })();
|
|
19448
19617
|
|
|
19449
19618
|
const _c0$1c = ["dropDown"];
|
|
19450
|
-
const _c1$
|
|
19619
|
+
const _c1$H = ["calendar"];
|
|
19451
19620
|
const _c2$e = ["type", "date"];
|
|
19452
19621
|
/**
|
|
19453
19622
|
* Date Form Field Component
|
|
@@ -19568,7 +19737,7 @@ class DateFormFieldComponent extends DateLikeFormFieldComponent {
|
|
|
19568
19737
|
/** @nocollapse */ DateFormFieldComponent.ɵfac = function DateFormFieldComponent_Factory(t) { return new (t || DateFormFieldComponent)(i0.ɵɵdirectiveInject(i0.Injector)); };
|
|
19569
19738
|
/** @nocollapse */ DateFormFieldComponent.ɵcmp = /** @pureOrBreakMyCode */ i0.ɵɵdefineComponent({ type: DateFormFieldComponent, selectors: [["sme-form-field", "type", "date"]], viewQuery: function DateFormFieldComponent_Query(rf, ctx) { if (rf & 1) {
|
|
19570
19739
|
i0.ɵɵviewQuery(_c0$1c, 5);
|
|
19571
|
-
i0.ɵɵviewQuery(_c1$
|
|
19740
|
+
i0.ɵɵviewQuery(_c1$H, 5);
|
|
19572
19741
|
} if (rf & 2) {
|
|
19573
19742
|
let _t;
|
|
19574
19743
|
i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.dropDown = _t.first);
|
|
@@ -19621,7 +19790,7 @@ class DateFormFieldComponent extends DateLikeFormFieldComponent {
|
|
|
19621
19790
|
}] }); })();
|
|
19622
19791
|
|
|
19623
19792
|
const _c0$1b = ["dropDown"];
|
|
19624
|
-
const _c1$
|
|
19793
|
+
const _c1$G = ["calendar"];
|
|
19625
19794
|
const _c2$d = ["clock"];
|
|
19626
19795
|
const _c3$9 = ["type", "datetime"];
|
|
19627
19796
|
/**
|
|
@@ -19772,7 +19941,7 @@ class DateTimeFormFieldComponent extends DateLikeFormFieldComponent {
|
|
|
19772
19941
|
/** @nocollapse */ DateTimeFormFieldComponent.ɵfac = function DateTimeFormFieldComponent_Factory(t) { return new (t || DateTimeFormFieldComponent)(i0.ɵɵdirectiveInject(i0.Injector)); };
|
|
19773
19942
|
/** @nocollapse */ DateTimeFormFieldComponent.ɵcmp = /** @pureOrBreakMyCode */ i0.ɵɵdefineComponent({ type: DateTimeFormFieldComponent, selectors: [["sme-form-field", "type", "datetime"]], viewQuery: function DateTimeFormFieldComponent_Query(rf, ctx) { if (rf & 1) {
|
|
19774
19943
|
i0.ɵɵviewQuery(_c0$1b, 5);
|
|
19775
|
-
i0.ɵɵviewQuery(_c1$
|
|
19944
|
+
i0.ɵɵviewQuery(_c1$G, 5);
|
|
19776
19945
|
i0.ɵɵviewQuery(_c2$d, 5);
|
|
19777
19946
|
} if (rf & 2) {
|
|
19778
19947
|
let _t;
|
|
@@ -19888,7 +20057,7 @@ class DateTimeRangeOptionComponent {
|
|
|
19888
20057
|
}] }); })();
|
|
19889
20058
|
|
|
19890
20059
|
const _c0$1a = ["listbox"];
|
|
19891
|
-
const _c1$
|
|
20060
|
+
const _c1$F = ["dropDown"];
|
|
19892
20061
|
const _c2$c = ["startFormField"];
|
|
19893
20062
|
const _c3$8 = ["endFormField"];
|
|
19894
20063
|
const _c4$7 = ["type", "datetimerange"];
|
|
@@ -20319,7 +20488,7 @@ DateTimeRangeFormFieldComponent.endProperty = 'end';
|
|
|
20319
20488
|
i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.options = _t);
|
|
20320
20489
|
} }, viewQuery: function DateTimeRangeFormFieldComponent_Query(rf, ctx) { if (rf & 1) {
|
|
20321
20490
|
i0.ɵɵviewQuery(_c0$1a, 5);
|
|
20322
|
-
i0.ɵɵviewQuery(_c1$
|
|
20491
|
+
i0.ɵɵviewQuery(_c1$F, 5);
|
|
20323
20492
|
i0.ɵɵviewQuery(_c2$c, 5);
|
|
20324
20493
|
i0.ɵɵviewQuery(_c3$8, 5);
|
|
20325
20494
|
} if (rf & 2) {
|
|
@@ -20482,7 +20651,7 @@ class WebkitFileSystem {
|
|
|
20482
20651
|
WebkitFileSystem.isDirectoryPropertyName = '__SME_isDirectory__';
|
|
20483
20652
|
|
|
20484
20653
|
const _c0$19 = ["file"];
|
|
20485
|
-
const _c1$
|
|
20654
|
+
const _c1$E = ["type", "file"];
|
|
20486
20655
|
function FileFormFieldComponent_ng_container_16_div_1_Template(rf, ctx) { if (rf & 1) {
|
|
20487
20656
|
const _r6 = i0.ɵɵgetCurrentView();
|
|
20488
20657
|
i0.ɵɵelementStart(0, "div", 12);
|
|
@@ -20777,7 +20946,7 @@ let FileFormFieldComponent = class FileFormFieldComponent extends SmeInternalFor
|
|
|
20777
20946
|
} if (rf & 2) {
|
|
20778
20947
|
let _t;
|
|
20779
20948
|
i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.fileInput = _t.first);
|
|
20780
|
-
} }, inputs: { multiple: "multiple", fileTypes: "fileTypes", buttonLabel: "buttonLabel" }, features: [i0.ɵɵInheritDefinitionFeature], attrs: _c1$
|
|
20949
|
+
} }, inputs: { multiple: "multiple", fileTypes: "fileTypes", buttonLabel: "buttonLabel" }, features: [i0.ɵɵInheritDefinitionFeature], attrs: _c1$E, decls: 18, vars: 19, consts: [[3, "formField"], [1, "sme-file-drop-zone", "sme-subform-indent-none", "sme-subform-no-bottom-margin"], [1, "sme-padding-inset-xs", "sme-margin-bottom-xs", "sme-arrange-stack-v", 3, "smeDrop"], [1, "sme-file-input", "sme-margin-bottom-xxs"], ["type", "file", 1, "sme-layout-none", 3, "disabled", "change"], ["file", ""], ["type", "button", 1, "sme-button-primary", "sme-button-auto-width", "sme-margin-right-xs", 3, "smeDisabled", "click"], [1, "sme-position-flex-align-center"], [1, "sme-margin-bottom-xs"], [4, "ngIf"], [3, "alert"], ["class", "sme-arrange-stack-h sme-margin-bottom-xs", 4, "ngFor", "ngForOf"], [1, "sme-arrange-stack-h", "sme-margin-bottom-xs"], [1, "sme-position-flex-none", "sme-icon", "sme-icon-size-lg"], [1, "sme-position-flex-auto", "sme-padding-left-sm", "sme-arrange-stack-v"], [1, "sme-position-flex-auto", "sme-arrange-ellipsis", "sme-padding-inset-none"], ["type", "button", 1, "sme-button-trigger", "sme-position-flex-none", "sme-button-auto-width", 3, "title", "smeDisabled", "click"], [1, "sme-icon", "sme-icon-cancel", "sme-color-red"]], template: function FileFormFieldComponent_Template(rf, ctx) { if (rf & 1) {
|
|
20781
20950
|
const _r7 = i0.ɵɵgetCurrentView();
|
|
20782
20951
|
i0.ɵɵelementStart(0, "sme-form-field-layout", 0)(1, "fieldset", 1)(2, "sme-drop-zone", 2);
|
|
20783
20952
|
i0.ɵɵlistener("smeDrop", function FileFormFieldComponent_Template_sme_drop_zone_smeDrop_2_listener($event) { return ctx.onDrop($event); });
|
|
@@ -20981,35 +21150,70 @@ JsonFormFieldComponent = __decorate([
|
|
|
20981
21150
|
args: [{ selector: 'sme-form-field[type="json"]', template: "<sme-form-field-layout [formField]=\"this\">\r\n <div class=\"sme-json sme-form-field-editor\">\r\n <textarea [(ngModel)]=\"jsonText\" rows=\"10\">\r\n </textarea>\r\n </div>\r\n <span class=\"sme-screen-reader\" [id]=\"idBag.detailsSpan\">{{details}}</span>\r\n <sme-validation-alert [alert]=\"alert\"></sme-validation-alert>\r\n</sme-form-field-layout>\r\n" }]
|
|
20982
21151
|
}], function () { return [{ type: i0.Injector }]; }, null); })();
|
|
20983
21152
|
|
|
20984
|
-
|
|
21153
|
+
class ListFormFieldAccessibilityManagerService {
|
|
21154
|
+
constructor(formFieldAccessibilityManagerBaseService) {
|
|
21155
|
+
this.formFieldAccessibilityManagerBaseService = formFieldAccessibilityManagerBaseService;
|
|
21156
|
+
}
|
|
21157
|
+
/**
|
|
21158
|
+
* It handles the focus when deleting an item from the list.
|
|
21159
|
+
* @param value the value for the list.
|
|
21160
|
+
* @param addButton the element reference for the add button.
|
|
21161
|
+
* @param hostElement the element reference for the host element.
|
|
21162
|
+
* @returns void
|
|
21163
|
+
*/
|
|
21164
|
+
delete(value, addButton, hostElement) {
|
|
21165
|
+
this.formFieldAccessibilityManagerBaseService.listFormFieldFocusHandlerOnKeyboardAction(value, addButton, hostElement);
|
|
21166
|
+
}
|
|
21167
|
+
/**
|
|
21168
|
+
* It handles the focus when adding an item to the list.
|
|
21169
|
+
* @param value the value for the list.
|
|
21170
|
+
* @param addButton the element reference for the add button.
|
|
21171
|
+
* @param hostElement the element reference for the host element.
|
|
21172
|
+
* @returns void
|
|
21173
|
+
*/
|
|
21174
|
+
add(value, addButton, hostElement) {
|
|
21175
|
+
this.formFieldAccessibilityManagerBaseService.listFormFieldFocusHandlerOnKeyboardAction(value, addButton, hostElement, false);
|
|
21176
|
+
}
|
|
21177
|
+
}
|
|
21178
|
+
/** @nocollapse */ ListFormFieldAccessibilityManagerService.ɵfac = function ListFormFieldAccessibilityManagerService_Factory(t) { return new (t || ListFormFieldAccessibilityManagerService)(i0.ɵɵinject(FormFieldAccessibilityManagerBaseService)); };
|
|
21179
|
+
/** @nocollapse */ ListFormFieldAccessibilityManagerService.ɵprov = /** @pureOrBreakMyCode */ i0.ɵɵdefineInjectable({ token: ListFormFieldAccessibilityManagerService, factory: ListFormFieldAccessibilityManagerService.ɵfac, providedIn: 'root' });
|
|
21180
|
+
(function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(ListFormFieldAccessibilityManagerService, [{
|
|
21181
|
+
type: Injectable,
|
|
21182
|
+
args: [{
|
|
21183
|
+
providedIn: 'root'
|
|
21184
|
+
}]
|
|
21185
|
+
}], function () { return [{ type: FormFieldAccessibilityManagerBaseService }]; }, null); })();
|
|
21186
|
+
|
|
21187
|
+
const _c0$17 = ["addButton"];
|
|
21188
|
+
const _c1$D = ["type", "list"];
|
|
20985
21189
|
function ListFormFieldComponent_div_1_div_1_Template(rf, ctx) { if (rf & 1) {
|
|
20986
|
-
const
|
|
20987
|
-
i0.ɵɵelementStart(0, "div",
|
|
20988
|
-
i0.ɵɵlistener("ngModelChange", function ListFormFieldComponent_div_1_div_1_Template_input_ngModelChange_1_listener($event) { const restoredCtx = i0.ɵɵrestoreView(
|
|
21190
|
+
const _r6 = i0.ɵɵgetCurrentView();
|
|
21191
|
+
i0.ɵɵelementStart(0, "div", 8)(1, "input", 9);
|
|
21192
|
+
i0.ɵɵlistener("ngModelChange", function ListFormFieldComponent_div_1_div_1_Template_input_ngModelChange_1_listener($event) { const restoredCtx = i0.ɵɵrestoreView(_r6); const i_r4 = restoredCtx.index; const ctx_r5 = i0.ɵɵnextContext(2); return i0.ɵɵresetView((ctx_r5.value[i_r4] = $event)); })("input", function ListFormFieldComponent_div_1_div_1_Template_input_input_1_listener() { i0.ɵɵrestoreView(_r6); const ctx_r7 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r7.triggerValueChange()); });
|
|
20989
21193
|
i0.ɵɵelementEnd();
|
|
20990
|
-
i0.ɵɵelementStart(2, "button",
|
|
20991
|
-
i0.ɵɵlistener("click", function ListFormFieldComponent_div_1_div_1_Template_button_click_2_listener() { const restoredCtx = i0.ɵɵrestoreView(
|
|
20992
|
-
i0.ɵɵelement(3, "span",
|
|
21194
|
+
i0.ɵɵelementStart(2, "button", 10);
|
|
21195
|
+
i0.ɵɵlistener("click", function ListFormFieldComponent_div_1_div_1_Template_button_click_2_listener() { const restoredCtx = i0.ɵɵrestoreView(_r6); const i_r4 = restoredCtx.index; const ctx_r8 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r8.removeItemAt(i_r4)); });
|
|
21196
|
+
i0.ɵɵelement(3, "span", 11);
|
|
20993
21197
|
i0.ɵɵelementEnd()();
|
|
20994
21198
|
} if (rf & 2) {
|
|
20995
|
-
const
|
|
21199
|
+
const i_r4 = ctx.index;
|
|
20996
21200
|
const ctx_r1 = i0.ɵɵnextContext(2);
|
|
20997
21201
|
i0.ɵɵadvance(1);
|
|
20998
|
-
i0.ɵɵproperty("ngModel", ctx_r1.value[
|
|
20999
|
-
i0.ɵɵattribute("aria-label", ctx_r1.strings.MsftSmeShell.Angular.Form.List.itemAriaLabel.format(ctx_r1.label,
|
|
21202
|
+
i0.ɵɵproperty("ngModel", ctx_r1.value[i_r4]);
|
|
21203
|
+
i0.ɵɵattribute("aria-label", ctx_r1.strings.MsftSmeShell.Angular.Form.List.itemAriaLabel.format(ctx_r1.label, i_r4 + 1, ctx_r1.value.length));
|
|
21000
21204
|
i0.ɵɵadvance(1);
|
|
21001
21205
|
i0.ɵɵproperty("title", ctx_r1.strings.MsftSmeShell.Angular.Form.List.removeButtonTooltip);
|
|
21002
21206
|
i0.ɵɵattribute("aria-label", ctx_r1.strings.MsftSmeShell.Angular.Form.List.removeButtonAriaLabel);
|
|
21003
21207
|
} }
|
|
21004
21208
|
function ListFormFieldComponent_div_1_Template(rf, ctx) { if (rf & 1) {
|
|
21005
|
-
const
|
|
21209
|
+
const _r10 = i0.ɵɵgetCurrentView();
|
|
21006
21210
|
i0.ɵɵelementStart(0, "div", 3);
|
|
21007
21211
|
i0.ɵɵtemplate(1, ListFormFieldComponent_div_1_div_1_Template, 4, 4, "div", 4);
|
|
21008
|
-
i0.ɵɵelementStart(2, "button", 5);
|
|
21009
|
-
i0.ɵɵlistener("click", function ListFormFieldComponent_div_1_Template_button_click_2_listener() { i0.ɵɵrestoreView(
|
|
21010
|
-
i0.ɵɵelement(
|
|
21011
|
-
i0.ɵɵelementStart(
|
|
21012
|
-
i0.ɵɵtext(
|
|
21212
|
+
i0.ɵɵelementStart(2, "button", 5, 6);
|
|
21213
|
+
i0.ɵɵlistener("click", function ListFormFieldComponent_div_1_Template_button_click_2_listener() { i0.ɵɵrestoreView(_r10); const ctx_r9 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r9.addListItem()); });
|
|
21214
|
+
i0.ɵɵelement(4, "span", 7);
|
|
21215
|
+
i0.ɵɵelementStart(5, "span");
|
|
21216
|
+
i0.ɵɵtext(6);
|
|
21013
21217
|
i0.ɵɵelementEnd()()();
|
|
21014
21218
|
} if (rf & 2) {
|
|
21015
21219
|
const ctx_r0 = i0.ɵɵnextContext();
|
|
@@ -21017,8 +21221,8 @@ function ListFormFieldComponent_div_1_Template(rf, ctx) { if (rf & 1) {
|
|
|
21017
21221
|
i0.ɵɵproperty("ngForOf", ctx_r0.value)("ngForTrackBy", ctx_r0.trackByIndex);
|
|
21018
21222
|
i0.ɵɵadvance(1);
|
|
21019
21223
|
i0.ɵɵproperty("title", ctx_r0.strings.MsftSmeShell.Angular.Form.List.addButtonTooltip);
|
|
21020
|
-
i0.ɵɵattribute("aria-label", ctx_r0.
|
|
21021
|
-
i0.ɵɵadvance(
|
|
21224
|
+
i0.ɵɵattribute("aria-label", ctx_r0.addButtonAriaLabel);
|
|
21225
|
+
i0.ɵɵadvance(4);
|
|
21022
21226
|
i0.ɵɵtextInterpolate(ctx_r0.strings.MsftSmeShell.Angular.Form.List.addButtonAriaLabel);
|
|
21023
21227
|
} }
|
|
21024
21228
|
/**
|
|
@@ -21028,8 +21232,9 @@ class ListFormFieldComponent extends SmeInternalFormFieldComponent {
|
|
|
21028
21232
|
/**
|
|
21029
21233
|
* Initializes a new instance of the ListFormFieldComponent
|
|
21030
21234
|
*/
|
|
21031
|
-
constructor(injector) {
|
|
21235
|
+
constructor(injector, listFormFieldAccessibilityManagerService) {
|
|
21032
21236
|
super(injector);
|
|
21237
|
+
this.listFormFieldAccessibilityManagerService = listFormFieldAccessibilityManagerService;
|
|
21033
21238
|
}
|
|
21034
21239
|
/**
|
|
21035
21240
|
* The source name to use for logging
|
|
@@ -21043,6 +21248,15 @@ class ListFormFieldComponent extends SmeInternalFormFieldComponent {
|
|
|
21043
21248
|
get ariaLabel() {
|
|
21044
21249
|
return this.getMergedDescriptionLabel();
|
|
21045
21250
|
}
|
|
21251
|
+
/**
|
|
21252
|
+
* It gets the aria label for the add button that can respect when the field is required.
|
|
21253
|
+
*/
|
|
21254
|
+
get addButtonAriaLabel() {
|
|
21255
|
+
if (this.required) {
|
|
21256
|
+
return this.strings.MsftSmeShell.Angular.Calendar.AriaLabel.Required.format(this.strings.MsftSmeShell.Angular.Form.List.addButtonAriaLabel);
|
|
21257
|
+
}
|
|
21258
|
+
return this.strings.MsftSmeShell.Angular.Form.List.addButtonAriaLabel;
|
|
21259
|
+
}
|
|
21046
21260
|
/**
|
|
21047
21261
|
* The method called after the component is initialized.
|
|
21048
21262
|
*/
|
|
@@ -21055,6 +21269,7 @@ class ListFormFieldComponent extends SmeInternalFormFieldComponent {
|
|
|
21055
21269
|
*/
|
|
21056
21270
|
addListItem(value = '') {
|
|
21057
21271
|
this.value = [...this.value, value];
|
|
21272
|
+
this.listFormFieldAccessibilityManagerService.add(this.value, this.addButton, this.hostElement);
|
|
21058
21273
|
}
|
|
21059
21274
|
/**
|
|
21060
21275
|
* Removes an item at the given index
|
|
@@ -21063,10 +21278,7 @@ class ListFormFieldComponent extends SmeInternalFormFieldComponent {
|
|
|
21063
21278
|
const value = [...this.value];
|
|
21064
21279
|
value.splice(index, 1);
|
|
21065
21280
|
this.value = value;
|
|
21066
|
-
|
|
21067
|
-
if (firstFocusable) {
|
|
21068
|
-
firstFocusable.focus();
|
|
21069
|
-
}
|
|
21281
|
+
this.listFormFieldAccessibilityManagerService.delete(this.value, this.addButton, this.hostElement);
|
|
21070
21282
|
}
|
|
21071
21283
|
/**
|
|
21072
21284
|
* The method called when a <select> element's value changes.
|
|
@@ -21107,12 +21319,17 @@ class ListFormFieldComponent extends SmeInternalFormFieldComponent {
|
|
|
21107
21319
|
return super.validate(c);
|
|
21108
21320
|
}
|
|
21109
21321
|
}
|
|
21110
|
-
/** @nocollapse */ ListFormFieldComponent.ɵfac = function ListFormFieldComponent_Factory(t) { return new (t || ListFormFieldComponent)(i0.ɵɵdirectiveInject(i0.Injector)); };
|
|
21111
|
-
/** @nocollapse */ ListFormFieldComponent.ɵcmp = /** @pureOrBreakMyCode */ i0.ɵɵdefineComponent({ type: ListFormFieldComponent, selectors: [["sme-form-field", "type", "list"]],
|
|
21322
|
+
/** @nocollapse */ ListFormFieldComponent.ɵfac = function ListFormFieldComponent_Factory(t) { return new (t || ListFormFieldComponent)(i0.ɵɵdirectiveInject(i0.Injector), i0.ɵɵdirectiveInject(ListFormFieldAccessibilityManagerService)); };
|
|
21323
|
+
/** @nocollapse */ ListFormFieldComponent.ɵcmp = /** @pureOrBreakMyCode */ i0.ɵɵdefineComponent({ type: ListFormFieldComponent, selectors: [["sme-form-field", "type", "list"]], viewQuery: function ListFormFieldComponent_Query(rf, ctx) { if (rf & 1) {
|
|
21324
|
+
i0.ɵɵviewQuery(_c0$17, 5);
|
|
21325
|
+
} if (rf & 2) {
|
|
21326
|
+
let _t;
|
|
21327
|
+
i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.addButton = _t.first);
|
|
21328
|
+
} }, hostVars: 1, hostBindings: function ListFormFieldComponent_HostBindings(rf, ctx) { if (rf & 2) {
|
|
21112
21329
|
i0.ɵɵattribute("aria-label", ctx.ariaLabel);
|
|
21113
|
-
} }, features: [i0.ɵɵInheritDefinitionFeature], attrs:
|
|
21330
|
+
} }, features: [i0.ɵɵInheritDefinitionFeature], attrs: _c1$D, decls: 3, vars: 3, consts: [[3, "formField"], ["class", "sme-margin-bottom-xs sme-form-field-editor", 4, "ngIf"], [3, "alert"], [1, "sme-margin-bottom-xs", "sme-form-field-editor"], ["class", "sme-arrange-stack-h sme-margin-bottom-xs sme-form-field-width", 4, "ngFor", "ngForOf", "ngForTrackBy"], ["type", "button", 1, "sme-button-trigger", "sme-button-auto-width", "sme-margin-bottom-xs", 3, "title", "click"], ["addButton", ""], [1, "sme-icon", "sme-icon-add"], [1, "sme-arrange-stack-h", "sme-margin-bottom-xs", "sme-form-field-width"], ["type", "text", 1, "sme-position-flex-auto", "sme-margin-right-xs", 3, "ngModel", "ngModelChange", "input"], ["type", "button", 1, "sme-button-trigger", "sme-position-flex-none", "sme-button-auto-width", 3, "title", "click"], [1, "sme-icon", "sme-icon-cancel", "sme-color-red"]], template: function ListFormFieldComponent_Template(rf, ctx) { if (rf & 1) {
|
|
21114
21331
|
i0.ɵɵelementStart(0, "sme-form-field-layout", 0);
|
|
21115
|
-
i0.ɵɵtemplate(1, ListFormFieldComponent_div_1_Template,
|
|
21332
|
+
i0.ɵɵtemplate(1, ListFormFieldComponent_div_1_Template, 7, 5, "div", 1);
|
|
21116
21333
|
i0.ɵɵelement(2, "sme-validation-alert", 2);
|
|
21117
21334
|
i0.ɵɵelementEnd();
|
|
21118
21335
|
} if (rf & 2) {
|
|
@@ -21124,14 +21341,17 @@ class ListFormFieldComponent extends SmeInternalFormFieldComponent {
|
|
|
21124
21341
|
} }, dependencies: [i1$1.NgForOf, i1$1.NgIf, i1$2.DefaultValueAccessor, i1$2.NgControlStatus, i1$2.NgModel, TooltipDirective, ValidationAlertComponent, FormFieldLayoutComponent], encapsulation: 2 });
|
|
21125
21342
|
(function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(ListFormFieldComponent, [{
|
|
21126
21343
|
type: Component,
|
|
21127
|
-
args: [{ selector: 'sme-form-field[type="list"]', template: "<sme-form-field-layout [formField]=\"this\">\r\n <div *ngIf=\"value\" class=\"sme-margin-bottom-xs sme-form-field-editor\">\r\n <div *ngFor=\"let item of value;trackBy: trackByIndex; let i = index\"\r\n class=\"sme-arrange-stack-h sme-margin-bottom-xs sme-form-field-width\">\r\n <input class=\"sme-position-flex-auto sme-margin-right-xs\" type=\"text\" [(ngModel)]=\"value[i]\"\r\n (input)=\"triggerValueChange()\"\r\n [attr.aria-label]=\"strings.MsftSmeShell.Angular.Form.List.itemAriaLabel.format(label, i + 1, value.length)\" />\r\n <button type=\"button\" class=\"sme-button-trigger sme-position-flex-none sme-button-auto-width\"\r\n [attr.aria-label]=\"strings.MsftSmeShell.Angular.Form.List.removeButtonAriaLabel\"\r\n [title]=\"strings.MsftSmeShell.Angular.Form.List.removeButtonTooltip\" (click)=\"removeItemAt(i)\">\r\n <span class=\"sme-icon sme-icon-cancel sme-color-red\"></span>\r\n </button>\r\n </div>\r\n <button type=\"button\" class=\"sme-button-trigger sme-button-auto-width sme-margin-bottom-xs\"\r\n [attr.aria-label]=\"
|
|
21128
|
-
}], function () { return [{ type: i0.Injector }]; }, {
|
|
21344
|
+
args: [{ selector: 'sme-form-field[type="list"]', template: "<sme-form-field-layout [formField]=\"this\">\r\n <div *ngIf=\"value\" class=\"sme-margin-bottom-xs sme-form-field-editor\">\r\n <div *ngFor=\"let item of value;trackBy: trackByIndex; let i = index\"\r\n class=\"sme-arrange-stack-h sme-margin-bottom-xs sme-form-field-width\">\r\n <input class=\"sme-position-flex-auto sme-margin-right-xs\" type=\"text\" [(ngModel)]=\"value[i]\"\r\n (input)=\"triggerValueChange()\"\r\n [attr.aria-label]=\"strings.MsftSmeShell.Angular.Form.List.itemAriaLabel.format(label, i + 1, value.length)\" />\r\n <button type=\"button\" class=\"sme-button-trigger sme-position-flex-none sme-button-auto-width\"\r\n [attr.aria-label]=\"strings.MsftSmeShell.Angular.Form.List.removeButtonAriaLabel\"\r\n [title]=\"strings.MsftSmeShell.Angular.Form.List.removeButtonTooltip\" (click)=\"removeItemAt(i)\">\r\n <span class=\"sme-icon sme-icon-cancel sme-color-red\"></span>\r\n </button>\r\n </div>\r\n <button #addButton type=\"button\" class=\"sme-button-trigger sme-button-auto-width sme-margin-bottom-xs\"\r\n [attr.aria-label]=\"addButtonAriaLabel\"\r\n [title]=\"strings.MsftSmeShell.Angular.Form.List.addButtonTooltip\" (click)=\"addListItem()\">\r\n <span class=\"sme-icon sme-icon-add\"></span>\r\n <span>{{ strings.MsftSmeShell.Angular.Form.List.addButtonAriaLabel }}</span>\r\n </button>\r\n </div>\r\n <sme-validation-alert [alert]=\"alert\"></sme-validation-alert>\r\n</sme-form-field-layout>" }]
|
|
21345
|
+
}], function () { return [{ type: i0.Injector }, { type: ListFormFieldAccessibilityManagerService }]; }, { addButton: [{
|
|
21346
|
+
type: ViewChild,
|
|
21347
|
+
args: ['addButton']
|
|
21348
|
+
}], ariaLabel: [{
|
|
21129
21349
|
type: HostBinding,
|
|
21130
21350
|
args: ['attr.aria-label']
|
|
21131
21351
|
}] }); })();
|
|
21132
21352
|
|
|
21133
21353
|
const _c0$16 = ["input"];
|
|
21134
|
-
const _c1$
|
|
21354
|
+
const _c1$C = ["container"];
|
|
21135
21355
|
const _c2$b = ["incrementButton"];
|
|
21136
21356
|
const _c3$7 = ["decrementButton"];
|
|
21137
21357
|
const _c4$6 = ["type", "number"];
|
|
@@ -21154,19 +21374,25 @@ function NumberFormFieldComponent_div_3_span_4_Template(rf, ctx) { if (rf & 1) {
|
|
|
21154
21374
|
i0.ɵɵlistener("click", function NumberFormFieldComponent_div_3_span_4_Template_button_click_4_listener() { i0.ɵɵrestoreView(_r8); const ctx_r9 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r9.decrement()); });
|
|
21155
21375
|
i0.ɵɵelement(6, "span", 15);
|
|
21156
21376
|
i0.ɵɵelementEnd()();
|
|
21377
|
+
} if (rf & 2) {
|
|
21378
|
+
const ctx_r4 = i0.ɵɵnextContext(2);
|
|
21379
|
+
i0.ɵɵadvance(1);
|
|
21380
|
+
i0.ɵɵattribute("aria-label", ctx_r4.ariaLabelIncrease);
|
|
21381
|
+
i0.ɵɵadvance(3);
|
|
21382
|
+
i0.ɵɵattribute("aria-label", ctx_r4.ariaLabelDecrease);
|
|
21157
21383
|
} }
|
|
21158
21384
|
function NumberFormFieldComponent_div_3_Template(rf, ctx) { if (rf & 1) {
|
|
21159
21385
|
const _r11 = i0.ɵɵgetCurrentView();
|
|
21160
21386
|
i0.ɵɵelementStart(0, "div", 5, 6)(2, "input", 7, 8);
|
|
21161
21387
|
i0.ɵɵlistener("ngModelChange", function NumberFormFieldComponent_div_3_Template_input_ngModelChange_2_listener($event) { i0.ɵɵrestoreView(_r11); const ctx_r10 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r10.value = $event); })("focus", function NumberFormFieldComponent_div_3_Template_input_focus_2_listener($event) { i0.ɵɵrestoreView(_r11); const ctx_r12 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r12.onInputFocus($event)); })("focusout", function NumberFormFieldComponent_div_3_Template_input_focusout_2_listener($event) { i0.ɵɵrestoreView(_r11); const ctx_r13 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r13.onInputFocusOut($event)); })("keydown", function NumberFormFieldComponent_div_3_Template_input_keydown_2_listener($event) { i0.ɵɵrestoreView(_r11); const ctx_r14 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r14.onInputKeydown($event)); });
|
|
21162
21388
|
i0.ɵɵelementEnd();
|
|
21163
|
-
i0.ɵɵtemplate(4, NumberFormFieldComponent_div_3_span_4_Template, 7,
|
|
21389
|
+
i0.ɵɵtemplate(4, NumberFormFieldComponent_div_3_span_4_Template, 7, 2, "span", 9);
|
|
21164
21390
|
i0.ɵɵelementEnd();
|
|
21165
21391
|
} if (rf & 2) {
|
|
21166
21392
|
const ctx_r1 = i0.ɵɵnextContext();
|
|
21167
21393
|
i0.ɵɵadvance(2);
|
|
21168
21394
|
i0.ɵɵproperty("ngModel", ctx_r1.value)("required", ctx_r1.required)("disabled", ctx_r1.loadingOrDisabled)("max", ctx_r1.max)("min", ctx_r1.min)("step", ctx_r1.step)("placeholder", ctx_r1.placeholder);
|
|
21169
|
-
i0.ɵɵattribute("role", ctx_r1.showSpinButton ? "
|
|
21395
|
+
i0.ɵɵattribute("role", ctx_r1.showSpinButton ? "spinbutton" : null)("aria-valuemax", ctx_r1.max)("aria-valuemin", ctx_r1.min)("aria-label", ctx_r1.label)("aria-required", ctx_r1.required);
|
|
21170
21396
|
i0.ɵɵadvance(2);
|
|
21171
21397
|
i0.ɵɵproperty("ngIf", ctx_r1.showSpinButton);
|
|
21172
21398
|
} }
|
|
@@ -21215,6 +21441,18 @@ let NumberFormFieldComponent = class NumberFormFieldComponent extends SmeInterna
|
|
|
21215
21441
|
? MsftSme.isNullOrUndefined(this.step) ? 1 : this.step
|
|
21216
21442
|
: this.incrementBy;
|
|
21217
21443
|
}
|
|
21444
|
+
/**
|
|
21445
|
+
* Getter aria label increase for spin button increase.
|
|
21446
|
+
*/
|
|
21447
|
+
get ariaLabelIncrease() {
|
|
21448
|
+
return this.strings.MsftSmeShell.Angular.Form.SpinButton.increase.format(this.incrementBy);
|
|
21449
|
+
}
|
|
21450
|
+
/**
|
|
21451
|
+
* Getter aria label increase for spin button decrease.
|
|
21452
|
+
*/
|
|
21453
|
+
get ariaLabelDecrease() {
|
|
21454
|
+
return this.strings.MsftSmeShell.Angular.Form.SpinButton.decrease.format(this.incrementBy);
|
|
21455
|
+
}
|
|
21218
21456
|
/**
|
|
21219
21457
|
* Handle keydown events on the number input
|
|
21220
21458
|
*/
|
|
@@ -21387,7 +21625,7 @@ let NumberFormFieldComponent = class NumberFormFieldComponent extends SmeInterna
|
|
|
21387
21625
|
/** @nocollapse */ NumberFormFieldComponent.ɵfac = function NumberFormFieldComponent_Factory(t) { return new (t || NumberFormFieldComponent)(i0.ɵɵdirectiveInject(i0.Injector)); };
|
|
21388
21626
|
/** @nocollapse */ NumberFormFieldComponent.ɵcmp = /** @pureOrBreakMyCode */ i0.ɵɵdefineComponent({ type: NumberFormFieldComponent, selectors: [["sme-form-field", "type", "number"]], viewQuery: function NumberFormFieldComponent_Query(rf, ctx) { if (rf & 1) {
|
|
21389
21627
|
i0.ɵɵviewQuery(_c0$16, 5);
|
|
21390
|
-
i0.ɵɵviewQuery(_c1$
|
|
21628
|
+
i0.ɵɵviewQuery(_c1$C, 5);
|
|
21391
21629
|
i0.ɵɵviewQuery(_c2$b, 5);
|
|
21392
21630
|
i0.ɵɵviewQuery(_c3$7, 5);
|
|
21393
21631
|
} if (rf & 2) {
|
|
@@ -21459,7 +21697,7 @@ NumberFormFieldComponent = __decorate([
|
|
|
21459
21697
|
], NumberFormFieldComponent);
|
|
21460
21698
|
(function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(NumberFormFieldComponent, [{
|
|
21461
21699
|
type: Component,
|
|
21462
|
-
args: [{ selector: 'sme-form-field[type="number"]', template: "<sme-form-field-layout [formField]=\"this\">\r\n <div class=\"sme-form-field-editor\">\r\n <span *ngIf=\"readonly\">{{ value }}</span>\r\n <div #container *ngIf=\"!readonly\" class=\"sme-number-form-field-container\">\r\n <input #input type=\"number\" autocomplete=\"off\" [(ngModel)]=\"value\" class=\"sme-hidden-focus\" [attr.role]=\"showSpinButton ? '
|
|
21700
|
+
args: [{ selector: 'sme-form-field[type="number"]', template: "<sme-form-field-layout [formField]=\"this\">\r\n <div class=\"sme-form-field-editor\">\r\n <span *ngIf=\"readonly\">{{ value }}</span>\r\n <div #container *ngIf=\"!readonly\" class=\"sme-number-form-field-container\">\r\n <input #input type=\"number\" autocomplete=\"off\" [(ngModel)]=\"value\" class=\"sme-hidden-focus\" [attr.role]=\"showSpinButton ? 'spinbutton': null\"\r\n [required]=\"required\" [disabled]=\"loadingOrDisabled\" [max]=\"max\" [min]=\"min\" [step]=\"step\" [placeholder]=\"placeholder\"\r\n [attr.aria-valuemax]=\"max\" [attr.aria-valuemin]=\"min\" [attr.aria-label]=\"label\" [attr.aria-required]=\"required\"\r\n (focus)=\"onInputFocus($event)\" (focusout)=\"onInputFocusOut($event)\" (keydown)=\"onInputKeydown($event)\">\r\n <span *ngIf=\"showSpinButton\" class=\"sme-arrange-stack-v sme-form-field-number-button-group\">\r\n <button #incrementButton type=\"button\" class=\"sme-button-auto-width\" tabindex=\"-1\" (click)=\"increment()\" [attr.aria-label]=\"ariaLabelIncrease\">\r\n <span class=\"sme-icon sme-icon-chevronUpSmall\"></span>\r\n </button>\r\n <button #decrementButton type=\"button\" class=\"sme-button-auto-width\" tabindex=\"-1\" (click)=\"decrement()\" [attr.aria-label]=\"ariaLabelDecrease\">\r\n <span class=\"sme-icon sme-icon-chevronDownSmall\"></span>\r\n </button>\r\n </span>\r\n </div>\r\n </div>\r\n <sme-validation-alert [alert]=\"alert\"></sme-validation-alert>\r\n</sme-form-field-layout>\r\n" }]
|
|
21463
21701
|
}], function () { return [{ type: i0.Injector }]; }, { input: [{
|
|
21464
21702
|
type: ViewChild,
|
|
21465
21703
|
args: ['input']
|
|
@@ -21484,6 +21722,56 @@ NumberFormFieldComponent = __decorate([
|
|
|
21484
21722
|
type: Input
|
|
21485
21723
|
}] }); })();
|
|
21486
21724
|
|
|
21725
|
+
class OrderedListFormFieldAccessibilityManagerService {
|
|
21726
|
+
constructor(formFieldAccessibilityManagerBaseService) {
|
|
21727
|
+
this.formFieldAccessibilityManagerBaseService = formFieldAccessibilityManagerBaseService;
|
|
21728
|
+
}
|
|
21729
|
+
/**
|
|
21730
|
+
* It handles the focus when deleting an item from the list.
|
|
21731
|
+
* @param value the value for the list.
|
|
21732
|
+
* @param addButton the element reference for the add button.
|
|
21733
|
+
* @param hostElement the element reference for the host element.
|
|
21734
|
+
* @returns void
|
|
21735
|
+
*/
|
|
21736
|
+
delete(value, addButton, hostElement) {
|
|
21737
|
+
this.formFieldAccessibilityManagerBaseService.listFormFieldFocusHandlerOnKeyboardAction(value, addButton, hostElement);
|
|
21738
|
+
}
|
|
21739
|
+
/**
|
|
21740
|
+
* It handles the focus when adding an item to the list.
|
|
21741
|
+
* @param value the value for the list.
|
|
21742
|
+
* @param addButton the element reference for the add button.
|
|
21743
|
+
* @param hostElement the element reference for the host element.
|
|
21744
|
+
* @returns void
|
|
21745
|
+
*/
|
|
21746
|
+
add(value, addButton, hostElement) {
|
|
21747
|
+
this.formFieldAccessibilityManagerBaseService.listFormFieldFocusHandlerOnKeyboardAction(value, addButton, hostElement, false);
|
|
21748
|
+
}
|
|
21749
|
+
/**
|
|
21750
|
+
* It handles the focus when promoting an item in the list.
|
|
21751
|
+
* @param hostElement The element reference for the host element.
|
|
21752
|
+
* @param index the current index.
|
|
21753
|
+
*/
|
|
21754
|
+
promote(value, hostElement, buttonId) {
|
|
21755
|
+
this.formFieldAccessibilityManagerBaseService.deferredFocusOnTargetBySelector(value, hostElement, buttonId);
|
|
21756
|
+
}
|
|
21757
|
+
/**
|
|
21758
|
+
* It handles the focus when demoting an item in the list.
|
|
21759
|
+
* @param hostElement The element reference for the host element.
|
|
21760
|
+
* @param index the current index.
|
|
21761
|
+
*/
|
|
21762
|
+
demote(value, hostElement, buttonId) {
|
|
21763
|
+
this.formFieldAccessibilityManagerBaseService.deferredFocusOnTargetBySelector(value, hostElement, buttonId);
|
|
21764
|
+
}
|
|
21765
|
+
}
|
|
21766
|
+
/** @nocollapse */ OrderedListFormFieldAccessibilityManagerService.ɵfac = function OrderedListFormFieldAccessibilityManagerService_Factory(t) { return new (t || OrderedListFormFieldAccessibilityManagerService)(i0.ɵɵinject(FormFieldAccessibilityManagerBaseService)); };
|
|
21767
|
+
/** @nocollapse */ OrderedListFormFieldAccessibilityManagerService.ɵprov = /** @pureOrBreakMyCode */ i0.ɵɵdefineInjectable({ token: OrderedListFormFieldAccessibilityManagerService, factory: OrderedListFormFieldAccessibilityManagerService.ɵfac, providedIn: 'root' });
|
|
21768
|
+
(function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(OrderedListFormFieldAccessibilityManagerService, [{
|
|
21769
|
+
type: Injectable,
|
|
21770
|
+
args: [{
|
|
21771
|
+
providedIn: 'root'
|
|
21772
|
+
}]
|
|
21773
|
+
}], function () { return [{ type: FormFieldAccessibilityManagerBaseService }]; }, null); })();
|
|
21774
|
+
|
|
21487
21775
|
function OrderedListFormFieldLoaderComponent_sme_option_2_Template(rf, ctx) { if (rf & 1) {
|
|
21488
21776
|
i0.ɵɵelement(0, "sme-option", 4);
|
|
21489
21777
|
} if (rf & 2) {
|
|
@@ -21507,7 +21795,8 @@ function OrderedListFormFieldLoaderComponent_ng_container_3_Template(rf, ctx) {
|
|
|
21507
21795
|
i0.ɵɵadvance(1);
|
|
21508
21796
|
i0.ɵɵproperty("ngForOf", ctx_r2.resolveComponentMember(ctx_r2.propertySchema.options.itemsBinding));
|
|
21509
21797
|
} }
|
|
21510
|
-
const _c0$15 = ["
|
|
21798
|
+
const _c0$15 = ["addButton"];
|
|
21799
|
+
const _c1$B = ["type", "orderedlist"];
|
|
21511
21800
|
function OrderedListFormFieldComponent_div_1_div_1_p_3_Template(rf, ctx) { if (rf & 1) {
|
|
21512
21801
|
i0.ɵɵelementStart(0, "p", 14);
|
|
21513
21802
|
i0.ɵɵtext(1);
|
|
@@ -21515,9 +21804,9 @@ function OrderedListFormFieldComponent_div_1_div_1_p_3_Template(rf, ctx) { if (r
|
|
|
21515
21804
|
} if (rf & 2) {
|
|
21516
21805
|
const i_r4 = i0.ɵɵnextContext().index;
|
|
21517
21806
|
const ctx_r5 = i0.ɵɵnextContext(2);
|
|
21518
|
-
i0.ɵɵattribute("aria-
|
|
21807
|
+
i0.ɵɵattribute("aria-label", ctx_r5.idBag.detailsSpan + i_r4);
|
|
21519
21808
|
i0.ɵɵadvance(1);
|
|
21520
|
-
i0.ɵɵ
|
|
21809
|
+
i0.ɵɵtextInterpolate1(" ", ctx_r5.arrayGetValueDisplayString(ctx_r5.value[i_r4]), "");
|
|
21521
21810
|
} }
|
|
21522
21811
|
function OrderedListFormFieldComponent_div_1_div_1_sme_form_field_5_ng_container_1_sme_option_1_Template(rf, ctx) { if (rf & 1) {
|
|
21523
21812
|
i0.ɵɵelement(0, "sme-option", 18);
|
|
@@ -21539,22 +21828,22 @@ function OrderedListFormFieldComponent_div_1_div_1_sme_form_field_5_ng_container
|
|
|
21539
21828
|
function OrderedListFormFieldComponent_div_1_div_1_sme_form_field_5_Template(rf, ctx) { if (rf & 1) {
|
|
21540
21829
|
const _r17 = i0.ɵɵgetCurrentView();
|
|
21541
21830
|
i0.ɵɵelementStart(0, "sme-form-field", 15);
|
|
21542
|
-
i0.ɵɵlistener("ngModelChange", function OrderedListFormFieldComponent_div_1_div_1_sme_form_field_5_Template_sme_form_field_ngModelChange_0_listener($event) { i0.ɵɵrestoreView(_r17); const i_r4 = i0.ɵɵnextContext().index; const ctx_r16 = i0.ɵɵnextContext(2); return i0.ɵɵresetView((ctx_r16.value[i_r4] = $event)); })("ngModelChange", function OrderedListFormFieldComponent_div_1_div_1_sme_form_field_5_Template_sme_form_field_ngModelChange_0_listener() { i0.ɵɵrestoreView(_r17); const ctx_r19 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r19.triggerValueChange()); })
|
|
21831
|
+
i0.ɵɵlistener("ngModelChange", function OrderedListFormFieldComponent_div_1_div_1_sme_form_field_5_Template_sme_form_field_ngModelChange_0_listener($event) { i0.ɵɵrestoreView(_r17); const i_r4 = i0.ɵɵnextContext().index; const ctx_r16 = i0.ɵɵnextContext(2); return i0.ɵɵresetView((ctx_r16.value[i_r4] = $event)); })("ngModelChange", function OrderedListFormFieldComponent_div_1_div_1_sme_form_field_5_Template_sme_form_field_ngModelChange_0_listener() { i0.ɵɵrestoreView(_r17); const ctx_r19 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r19.triggerValueChange()); });
|
|
21543
21832
|
i0.ɵɵtemplate(1, OrderedListFormFieldComponent_div_1_div_1_sme_form_field_5_ng_container_1_Template, 2, 1, "ng-container", 16);
|
|
21544
21833
|
i0.ɵɵelementEnd();
|
|
21545
21834
|
} if (rf & 2) {
|
|
21546
|
-
const
|
|
21547
|
-
const item_r3 =
|
|
21548
|
-
const i_r4 =
|
|
21835
|
+
const ctx_r20 = i0.ɵɵnextContext();
|
|
21836
|
+
const item_r3 = ctx_r20.$implicit;
|
|
21837
|
+
const i_r4 = ctx_r20.index;
|
|
21549
21838
|
const ctx_r6 = i0.ɵɵnextContext(2);
|
|
21550
21839
|
i0.ɵɵproperty("utaId", item_r3 ? item_r3.toString() + "-combobox" : "new-combobox")("hideHeader", true)("valueComparator", ctx_r6.valueComparator)("ngModel", ctx_r6.value[i_r4])("label", ctx_r6.label)("searchable", ctx_r6.searchable);
|
|
21551
21840
|
i0.ɵɵadvance(1);
|
|
21552
21841
|
i0.ɵɵproperty("ngForOf", ctx_r6.options);
|
|
21553
21842
|
} }
|
|
21554
21843
|
function OrderedListFormFieldComponent_div_1_div_1_button_6_Template(rf, ctx) { if (rf & 1) {
|
|
21555
|
-
const
|
|
21844
|
+
const _r23 = i0.ɵɵgetCurrentView();
|
|
21556
21845
|
i0.ɵɵelementStart(0, "button", 19);
|
|
21557
|
-
i0.ɵɵlistener("click", function OrderedListFormFieldComponent_div_1_div_1_button_6_Template_button_click_0_listener() { i0.ɵɵrestoreView(
|
|
21846
|
+
i0.ɵɵlistener("click", function OrderedListFormFieldComponent_div_1_div_1_button_6_Template_button_click_0_listener() { i0.ɵɵrestoreView(_r23); const i_r4 = i0.ɵɵnextContext().index; const ctx_r21 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r21.promoteItemAt(i_r4)); });
|
|
21558
21847
|
i0.ɵɵelement(1, "span", 20);
|
|
21559
21848
|
i0.ɵɵelementEnd();
|
|
21560
21849
|
} if (rf & 2) {
|
|
@@ -21564,9 +21853,9 @@ function OrderedListFormFieldComponent_div_1_div_1_button_6_Template(rf, ctx) {
|
|
|
21564
21853
|
i0.ɵɵattribute("aria-label", ctx_r7.strings.MsftSmeShell.Angular.Form.OrderedList.promoteButtonAriaLabel);
|
|
21565
21854
|
} }
|
|
21566
21855
|
function OrderedListFormFieldComponent_div_1_div_1_button_7_Template(rf, ctx) { if (rf & 1) {
|
|
21567
|
-
const
|
|
21856
|
+
const _r27 = i0.ɵɵgetCurrentView();
|
|
21568
21857
|
i0.ɵɵelementStart(0, "button", 21);
|
|
21569
|
-
i0.ɵɵlistener("click", function OrderedListFormFieldComponent_div_1_div_1_button_7_Template_button_click_0_listener() { i0.ɵɵrestoreView(
|
|
21858
|
+
i0.ɵɵlistener("click", function OrderedListFormFieldComponent_div_1_div_1_button_7_Template_button_click_0_listener() { i0.ɵɵrestoreView(_r27); const i_r4 = i0.ɵɵnextContext().index; const ctx_r25 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r25.demoteItemAt(i_r4)); });
|
|
21570
21859
|
i0.ɵɵelement(1, "span", 22);
|
|
21571
21860
|
i0.ɵɵelementEnd();
|
|
21572
21861
|
} if (rf & 2) {
|
|
@@ -21576,9 +21865,9 @@ function OrderedListFormFieldComponent_div_1_div_1_button_7_Template(rf, ctx) {
|
|
|
21576
21865
|
i0.ɵɵattribute("aria-label", ctx_r8.strings.MsftSmeShell.Angular.Form.OrderedList.demoteButtonAriaLabel);
|
|
21577
21866
|
} }
|
|
21578
21867
|
function OrderedListFormFieldComponent_div_1_div_1_button_8_Template(rf, ctx) { if (rf & 1) {
|
|
21579
|
-
const
|
|
21868
|
+
const _r31 = i0.ɵɵgetCurrentView();
|
|
21580
21869
|
i0.ɵɵelementStart(0, "button", 23);
|
|
21581
|
-
i0.ɵɵlistener("click", function OrderedListFormFieldComponent_div_1_div_1_button_8_Template_button_click_0_listener() { i0.ɵɵrestoreView(
|
|
21870
|
+
i0.ɵɵlistener("click", function OrderedListFormFieldComponent_div_1_div_1_button_8_Template_button_click_0_listener() { i0.ɵɵrestoreView(_r31); const i_r4 = i0.ɵɵnextContext().index; const ctx_r29 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r29.removeItemAt(i_r4)); });
|
|
21582
21871
|
i0.ɵɵelement(1, "span", 24);
|
|
21583
21872
|
i0.ɵɵelementEnd();
|
|
21584
21873
|
} if (rf & 2) {
|
|
@@ -21622,21 +21911,21 @@ function OrderedListFormFieldComponent_div_1_div_1_Template(rf, ctx) { if (rf &
|
|
|
21622
21911
|
} }
|
|
21623
21912
|
function OrderedListFormFieldComponent_div_1_button_2_Template(rf, ctx) { if (rf & 1) {
|
|
21624
21913
|
const _r34 = i0.ɵɵgetCurrentView();
|
|
21625
|
-
i0.ɵɵelementStart(0, "button", 25);
|
|
21914
|
+
i0.ɵɵelementStart(0, "button", 25, 26);
|
|
21626
21915
|
i0.ɵɵlistener("click", function OrderedListFormFieldComponent_div_1_button_2_Template_button_click_0_listener() { i0.ɵɵrestoreView(_r34); const ctx_r33 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r33.addListItem()); });
|
|
21627
|
-
i0.ɵɵtext(
|
|
21916
|
+
i0.ɵɵtext(2);
|
|
21628
21917
|
i0.ɵɵelementEnd();
|
|
21629
21918
|
} if (rf & 2) {
|
|
21630
21919
|
const ctx_r2 = i0.ɵɵnextContext(2);
|
|
21631
21920
|
i0.ɵɵproperty("smeDisabled", ctx_r2.loadingOrDisabled || ctx_r2.value.length === ctx_r2.options.length)("title", ctx_r2.strings.MsftSmeShell.Angular.Form.OrderedList.addButtonTooltip);
|
|
21632
|
-
i0.ɵɵattribute("aria-label", ctx_r2.
|
|
21633
|
-
i0.ɵɵadvance(
|
|
21921
|
+
i0.ɵɵattribute("aria-label", ctx_r2.addRemoveButtonArialLabel);
|
|
21922
|
+
i0.ɵɵadvance(2);
|
|
21634
21923
|
i0.ɵɵtextInterpolate1(" ", ctx_r2.addButtonText, " ");
|
|
21635
21924
|
} }
|
|
21636
21925
|
function OrderedListFormFieldComponent_div_1_Template(rf, ctx) { if (rf & 1) {
|
|
21637
21926
|
i0.ɵɵelementStart(0, "div", 3);
|
|
21638
21927
|
i0.ɵɵtemplate(1, OrderedListFormFieldComponent_div_1_div_1_Template, 9, 10, "div", 4);
|
|
21639
|
-
i0.ɵɵtemplate(2, OrderedListFormFieldComponent_div_1_button_2_Template,
|
|
21928
|
+
i0.ɵɵtemplate(2, OrderedListFormFieldComponent_div_1_button_2_Template, 3, 4, "button", 5);
|
|
21640
21929
|
i0.ɵɵelementEnd();
|
|
21641
21930
|
} if (rf & 2) {
|
|
21642
21931
|
const ctx_r0 = i0.ɵɵnextContext();
|
|
@@ -21709,8 +21998,9 @@ let OrderedListFormFieldComponent = class OrderedListFormFieldComponent extends
|
|
|
21709
21998
|
/**
|
|
21710
21999
|
* Initializes a new instance of the OrderedListFormFieldComponent
|
|
21711
22000
|
*/
|
|
21712
|
-
constructor(injector) {
|
|
22001
|
+
constructor(injector, orderedListFormFieldAccessibilityManagerService) {
|
|
21713
22002
|
super(injector);
|
|
22003
|
+
this.orderedListFormFieldAccessibilityManagerService = orderedListFormFieldAccessibilityManagerService;
|
|
21714
22004
|
/**
|
|
21715
22005
|
* Single selection is not supported by ordered list
|
|
21716
22006
|
*/
|
|
@@ -21727,10 +22017,6 @@ let OrderedListFormFieldComponent = class OrderedListFormFieldComponent extends
|
|
|
21727
22017
|
* Indicates allow empty selection
|
|
21728
22018
|
*/
|
|
21729
22019
|
this.allowEmpty = true;
|
|
21730
|
-
/**
|
|
21731
|
-
* Tracks when new item is added to place focus on.
|
|
21732
|
-
*/
|
|
21733
|
-
this.newItemAdded = false;
|
|
21734
22020
|
this.instructions = this.strings.MsftSmeShell.Angular.Form.OrderedList.instructions;
|
|
21735
22021
|
this.showAddRemove = true;
|
|
21736
22022
|
this.showMove = true;
|
|
@@ -21754,6 +22040,17 @@ let OrderedListFormFieldComponent = class OrderedListFormFieldComponent extends
|
|
|
21754
22040
|
get ariaLabel() {
|
|
21755
22041
|
return this.getMergedDescriptionLabel();
|
|
21756
22042
|
}
|
|
22043
|
+
/**
|
|
22044
|
+
* The aria label for the add/remove button when aria label is passed in.
|
|
22045
|
+
* The aria label needs to be in sync with the add button text so that narrator can read the correct content.
|
|
22046
|
+
* It should also respect the required state.
|
|
22047
|
+
*/
|
|
22048
|
+
get addRemoveButtonArialLabel() {
|
|
22049
|
+
if (this.addButtonText) {
|
|
22050
|
+
return this.required ? this.strings.MsftSmeShell.Angular.Calendar.AriaLabel.Required.format(this.addButtonText) : this.addButtonText;
|
|
22051
|
+
}
|
|
22052
|
+
return this.required ? this.strings.MsftSmeShell.Angular.Calendar.AriaLabel.Required.format(this.strings.MsftSmeShell.Angular.Form.OrderedList.addButtonAriaLabel) : this.strings.MsftSmeShell.Angular.Form.OrderedList.addButtonAriaLabel;
|
|
22053
|
+
}
|
|
21757
22054
|
/**
|
|
21758
22055
|
* The method called after the component is initialized.
|
|
21759
22056
|
*/
|
|
@@ -21791,7 +22088,7 @@ let OrderedListFormFieldComponent = class OrderedListFormFieldComponent extends
|
|
|
21791
22088
|
return false;
|
|
21792
22089
|
}
|
|
21793
22090
|
this.value = [...this.value, value];
|
|
21794
|
-
this.
|
|
22091
|
+
this.orderedListFormFieldAccessibilityManagerService.add(this.value, this.addButton, this.hostElement);
|
|
21795
22092
|
return true;
|
|
21796
22093
|
}
|
|
21797
22094
|
/**
|
|
@@ -21799,26 +22096,22 @@ let OrderedListFormFieldComponent = class OrderedListFormFieldComponent extends
|
|
|
21799
22096
|
* @param index The index of the item being demoted.
|
|
21800
22097
|
*/
|
|
21801
22098
|
demoteItemAt(index) {
|
|
21802
|
-
if (index
|
|
21803
|
-
|
|
21804
|
-
const focusable = document.getElementById(`${this.idBag.demote}${index + 1}`);
|
|
21805
|
-
if (focusable) {
|
|
21806
|
-
focusable.focus();
|
|
21807
|
-
}
|
|
22099
|
+
if (index === this.value.length - 1) {
|
|
22100
|
+
return;
|
|
21808
22101
|
}
|
|
22102
|
+
this.moveItem(index, index + 1);
|
|
22103
|
+
this.orderedListFormFieldAccessibilityManagerService.demote(this.value, this.hostElement, `#${this.idBag.demote}${index + 1}`);
|
|
21809
22104
|
}
|
|
21810
22105
|
/**
|
|
21811
22106
|
* Promotes an item at the given index by 1
|
|
21812
22107
|
* @param index The index of the item being promoted.
|
|
21813
22108
|
*/
|
|
21814
22109
|
promoteItemAt(index) {
|
|
21815
|
-
if (index
|
|
21816
|
-
|
|
21817
|
-
const focusable = document.getElementById(`${this.idBag.promote}${index - 1}`);
|
|
21818
|
-
if (focusable) {
|
|
21819
|
-
focusable.focus();
|
|
21820
|
-
}
|
|
22110
|
+
if (index === 0) {
|
|
22111
|
+
return;
|
|
21821
22112
|
}
|
|
22113
|
+
this.moveItem(index, index - 1);
|
|
22114
|
+
this.orderedListFormFieldAccessibilityManagerService.promote(this.value, this.hostElement, `#${this.idBag.promote}${index - 1}`);
|
|
21822
22115
|
}
|
|
21823
22116
|
/**
|
|
21824
22117
|
* Returns the index to track items in the array.
|
|
@@ -21830,10 +22123,7 @@ let OrderedListFormFieldComponent = class OrderedListFormFieldComponent extends
|
|
|
21830
22123
|
removeItemAt(index) {
|
|
21831
22124
|
this.value.splice(index, 1);
|
|
21832
22125
|
this.triggerValueChange();
|
|
21833
|
-
|
|
21834
|
-
if (firstFocusable) {
|
|
21835
|
-
firstFocusable.focus();
|
|
21836
|
-
}
|
|
22126
|
+
this.orderedListFormFieldAccessibilityManagerService.delete(this.value, this.addButton, this.hostElement);
|
|
21837
22127
|
}
|
|
21838
22128
|
/**
|
|
21839
22129
|
* Moves an element of an array from a starting index to a destination index.
|
|
@@ -21856,18 +22146,6 @@ let OrderedListFormFieldComponent = class OrderedListFormFieldComponent extends
|
|
|
21856
22146
|
}
|
|
21857
22147
|
this.value = value;
|
|
21858
22148
|
}
|
|
21859
|
-
/**
|
|
21860
|
-
* Places focus on new item when it is added.
|
|
21861
|
-
*/
|
|
21862
|
-
newItemCheck() {
|
|
21863
|
-
if (this.newItemAdded) {
|
|
21864
|
-
const focusable = Dom.findChildElementDFS(this.hostElement.nativeElement, (element) => element.tagName.toUpperCase() === 'INPUT', ElementPosition.Last);
|
|
21865
|
-
if (focusable) {
|
|
21866
|
-
focusable.focus();
|
|
21867
|
-
}
|
|
21868
|
-
this.newItemAdded = false;
|
|
21869
|
-
}
|
|
21870
|
-
}
|
|
21871
22149
|
/**
|
|
21872
22150
|
* The method called when a <select> element's value changes.
|
|
21873
22151
|
*/
|
|
@@ -21905,10 +22183,15 @@ let OrderedListFormFieldComponent = class OrderedListFormFieldComponent extends
|
|
|
21905
22183
|
return super.validate(c);
|
|
21906
22184
|
}
|
|
21907
22185
|
};
|
|
21908
|
-
/** @nocollapse */ OrderedListFormFieldComponent.ɵfac = function OrderedListFormFieldComponent_Factory(t) { return new (t || OrderedListFormFieldComponent)(i0.ɵɵdirectiveInject(i0.Injector)); };
|
|
21909
|
-
/** @nocollapse */ OrderedListFormFieldComponent.ɵcmp = /** @pureOrBreakMyCode */ i0.ɵɵdefineComponent({ type: OrderedListFormFieldComponent, selectors: [["sme-form-field", "type", "orderedlist"]],
|
|
22186
|
+
/** @nocollapse */ OrderedListFormFieldComponent.ɵfac = function OrderedListFormFieldComponent_Factory(t) { return new (t || OrderedListFormFieldComponent)(i0.ɵɵdirectiveInject(i0.Injector), i0.ɵɵdirectiveInject(OrderedListFormFieldAccessibilityManagerService)); };
|
|
22187
|
+
/** @nocollapse */ OrderedListFormFieldComponent.ɵcmp = /** @pureOrBreakMyCode */ i0.ɵɵdefineComponent({ type: OrderedListFormFieldComponent, selectors: [["sme-form-field", "type", "orderedlist"]], viewQuery: function OrderedListFormFieldComponent_Query(rf, ctx) { if (rf & 1) {
|
|
22188
|
+
i0.ɵɵviewQuery(_c0$15, 5);
|
|
22189
|
+
} if (rf & 2) {
|
|
22190
|
+
let _t;
|
|
22191
|
+
i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.addButton = _t.first);
|
|
22192
|
+
} }, hostVars: 1, hostBindings: function OrderedListFormFieldComponent_HostBindings(rf, ctx) { if (rf & 2) {
|
|
21910
22193
|
i0.ɵɵattribute("aria-label", ctx.ariaLabel);
|
|
21911
|
-
} }, inputs: { showAddRemove: "showAddRemove", showMove: "showMove", showSelect: "showSelect", addButtonText: "addButtonText", searchable: "searchable", allowEmpty: "allowEmpty" }, features: [i0.ɵɵInheritDefinitionFeature], attrs:
|
|
22194
|
+
} }, inputs: { showAddRemove: "showAddRemove", showMove: "showMove", showSelect: "showSelect", addButtonText: "addButtonText", searchable: "searchable", allowEmpty: "allowEmpty" }, features: [i0.ɵɵInheritDefinitionFeature], attrs: _c1$B, decls: 3, vars: 3, consts: [[3, "formField"], ["class", "sme-margin-bottom-xs sme-form-field-editor", 4, "ngIf"], [3, "alert"], [1, "sme-margin-bottom-xs", "sme-form-field-editor"], ["class", "sme-arrange-stack-h sme-margin-bottom-xs sme-form-field-width", 4, "ngFor", "ngForOf", "ngForTrackBy"], ["type", "button", "class", "sme-button-trigger sme-button-auto-width sme-icon sme-icon-add sme-margin-bottom-xs", "data-uta-id", "add-button", 3, "smeDisabled", "title", "click", 4, "ngIf"], [1, "sme-arrange-stack-h", "sme-margin-bottom-xs", "sme-form-field-width"], [1, "sme-screen-reader", 3, "id"], ["class", "sme-position-flex-auto", "role", "textbox", 4, "ngIf"], [1, "sme-layout-relative", "sme-position-flex-auto"], ["type", "combobox", 3, "utaId", "hideHeader", "valueComparator", "ngModel", "label", "searchable", "ngModelChange", 4, "ngIf"], ["type", "button", "class", "sme-button-trigger sme-position-flex-none sme-button-auto-width sme-form-field-height", "data-uta-id", "promote-button", 3, "id", "title", "smeDisabled", "click", 4, "ngIf"], ["type", "button", "class", "sme-button-trigger sme-position-flex-none sme-button-auto-width sme-form-field-height", "data-uta-id", "demote-button", 3, "id", "title", "smeDisabled", "click", 4, "ngIf"], ["type", "button", "class", "sme-button-trigger sme-position-flex-none sme-button-auto-width sme-form-field-height", "data-uta-id", "remove-button", 3, "title", "smeDisabled", "click", 4, "ngIf"], ["role", "textbox", 1, "sme-position-flex-auto"], ["type", "combobox", 3, "utaId", "hideHeader", "valueComparator", "ngModel", "label", "searchable", "ngModelChange"], [4, "ngFor", "ngForOf"], [3, "utaId", "value", "label", "disabled", 4, "ngIf"], [3, "utaId", "value", "label", "disabled"], ["type", "button", "data-uta-id", "promote-button", 1, "sme-button-trigger", "sme-position-flex-none", "sme-button-auto-width", "sme-form-field-height", 3, "id", "title", "smeDisabled", "click"], [1, "sme-icon", "sme-icon-up"], ["type", "button", "data-uta-id", "demote-button", 1, "sme-button-trigger", "sme-position-flex-none", "sme-button-auto-width", "sme-form-field-height", 3, "id", "title", "smeDisabled", "click"], [1, "sme-icon", "sme-icon-down"], ["type", "button", "data-uta-id", "remove-button", 1, "sme-button-trigger", "sme-position-flex-none", "sme-button-auto-width", "sme-form-field-height", 3, "title", "smeDisabled", "click"], [1, "sme-icon", "sme-icon-cancel", "sme-color-red"], ["type", "button", "data-uta-id", "add-button", 1, "sme-button-trigger", "sme-button-auto-width", "sme-icon", "sme-icon-add", "sme-margin-bottom-xs", 3, "smeDisabled", "title", "click"], ["addButton", ""]], template: function OrderedListFormFieldComponent_Template(rf, ctx) { if (rf & 1) {
|
|
21912
22195
|
i0.ɵɵelementStart(0, "sme-form-field-layout", 0);
|
|
21913
22196
|
i0.ɵɵtemplate(1, OrderedListFormFieldComponent_div_1_Template, 3, 3, "div", 1);
|
|
21914
22197
|
i0.ɵɵelement(2, "sme-validation-alert", 2);
|
|
@@ -21964,12 +22247,16 @@ OrderedListFormFieldComponent = __decorate([
|
|
|
21964
22247
|
}
|
|
21965
22248
|
]
|
|
21966
22249
|
}),
|
|
21967
|
-
__metadata("design:paramtypes", [Injector
|
|
22250
|
+
__metadata("design:paramtypes", [Injector,
|
|
22251
|
+
OrderedListFormFieldAccessibilityManagerService])
|
|
21968
22252
|
], OrderedListFormFieldComponent);
|
|
21969
22253
|
(function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(OrderedListFormFieldComponent, [{
|
|
21970
22254
|
type: Component,
|
|
21971
|
-
args: [{ selector: 'sme-form-field[type="orderedlist"]', template: "<sme-form-field-layout [formField]=\"this\">\r\n <div *ngIf=\"value\" class=\"sme-margin-bottom-xs sme-form-field-editor\">\r\n <div *ngFor=\"let item of value; trackBy: trackByIndex; let i = index\"\r\n class=\"sme-arrange-stack-h sme-margin-bottom-xs sme-form-field-width\"\r\n [attr.data-uta-id]=\"item ? item.toString() + '-row' : 'new-item-row'\">\r\n <label class=\"sme-screen-reader\" [id]=\"idBag.detailsSpan + i\">\r\n {{strings.MsftSmeShell.Angular.Form.OrderedList.itemAriaDescription.format(i + 1, value.length)}}\r\n </label>\r\n <p *ngIf=\"!showSelect\" class=\"sme-position-flex-auto\" role=\"textbox\"
|
|
21972
|
-
}], function () { return [{ type: i0.Injector }]; }, {
|
|
22255
|
+
args: [{ selector: 'sme-form-field[type="orderedlist"]', template: "<sme-form-field-layout [formField]=\"this\">\r\n <div *ngIf=\"value\" class=\"sme-margin-bottom-xs sme-form-field-editor\">\r\n <div *ngFor=\"let item of value; trackBy: trackByIndex; let i = index\"\r\n class=\"sme-arrange-stack-h sme-margin-bottom-xs sme-form-field-width\"\r\n [attr.data-uta-id]=\"item ? item.toString() + '-row' : 'new-item-row'\">\r\n <label class=\"sme-screen-reader\" [id]=\"idBag.detailsSpan + i\">\r\n {{ strings.MsftSmeShell.Angular.Form.OrderedList.itemAriaDescription.format(i + 1, value.length) }}\r\n </label>\r\n <p *ngIf=\"!showSelect\" class=\"sme-position-flex-auto\" role=\"textbox\" [attr.aria-label]=\"idBag.detailsSpan + i\">\r\n {{ arrayGetValueDisplayString(value[i]) }}</p>\r\n <div class=\"sme-layout-relative sme-position-flex-auto\" [class.sme-margin-right-xs]=\"showMove || showAddRemove\">\r\n <sme-form-field *ngIf=\"showSelect\" [utaId]=\"item ? item.toString() + '-combobox' : 'new-combobox'\"\r\n type=\"combobox\" [hideHeader]=\"true\" [valueComparator]=\"valueComparator\" [(ngModel)]=\"value[i]\"\r\n (ngModelChange)=\"triggerValueChange()\" [label]=\"label\"\r\n [searchable]=\"searchable\">\r\n <ng-container *ngFor=\"let option of options\">\r\n <sme-option *ngIf=\"!option.isSelected || arrayValueComparator(option.value, value[i])\"\r\n [utaId]=\"option.utaId ? option.utaId : option.value\" [value]=\"option.value\" [label]=\"option.toString()\"\r\n [disabled]=\"option.disabled\">\r\n </sme-option>\r\n </ng-container>\r\n </sme-form-field>\r\n </div>\r\n <button *ngIf=\"showMove\" [id]=\"idBag.promote + i\" type=\"button\"\r\n class=\"sme-button-trigger sme-position-flex-none sme-button-auto-width sme-form-field-height\"\r\n [attr.aria-label]=\"strings.MsftSmeShell.Angular.Form.OrderedList.promoteButtonAriaLabel\"\r\n [title]=\"strings.MsftSmeShell.Angular.Form.OrderedList.promoteButtonTooltip\" (click)=\"promoteItemAt(i)\"\r\n [smeDisabled]=\"loadingOrDisabled || allowEmptyDisableActions\" data-uta-id=\"promote-button\">\r\n <span class=\"sme-icon sme-icon-up\"></span>\r\n </button>\r\n <button *ngIf=\"showMove\" [id]=\"idBag.demote + i\" type=\"button\"\r\n class=\"sme-button-trigger sme-position-flex-none sme-button-auto-width sme-form-field-height\"\r\n [attr.aria-label]=\"strings.MsftSmeShell.Angular.Form.OrderedList.demoteButtonAriaLabel\"\r\n [title]=\"strings.MsftSmeShell.Angular.Form.OrderedList.demoteButtonTooltip\" (click)=\"demoteItemAt(i)\"\r\n [smeDisabled]=\"loadingOrDisabled || allowEmptyDisableActions\" data-uta-id=\"demote-button\">\r\n <span class=\"sme-icon sme-icon-down\"></span>\r\n </button>\r\n <button *ngIf=\"showAddRemove\" type=\"button\"\r\n class=\"sme-button-trigger sme-position-flex-none sme-button-auto-width sme-form-field-height\"\r\n [attr.aria-label]=\"strings.MsftSmeShell.Angular.Form.OrderedList.removeButtonAriaLabel\"\r\n [title]=\"strings.MsftSmeShell.Angular.Form.OrderedList.removeButtonTooltip\" (click)=\"removeItemAt(i)\"\r\n [smeDisabled]=\"loadingOrDisabled || allowEmptyDisableActions\" data-uta-id=\"remove-button\">\r\n <span class=\"sme-icon sme-icon-cancel sme-color-red\"></span>\r\n </button>\r\n </div>\r\n <button #addButton *ngIf=\"showAddRemove\" type=\"button\" [smeDisabled]=\"loadingOrDisabled || value.length === options.length\"\r\n class=\"sme-button-trigger sme-button-auto-width sme-icon sme-icon-add sme-margin-bottom-xs\"\r\n [attr.aria-label]=\"addRemoveButtonArialLabel\" data-uta-id=\"add-button\"\r\n [title]=\"strings.MsftSmeShell.Angular.Form.OrderedList.addButtonTooltip\" (click)=\"addListItem()\">\r\n {{ addButtonText }}\r\n </button>\r\n </div>\r\n <sme-validation-alert [alert]=\"alert\"></sme-validation-alert>\r\n</sme-form-field-layout>\r\n" }]
|
|
22256
|
+
}], function () { return [{ type: i0.Injector }, { type: OrderedListFormFieldAccessibilityManagerService }]; }, { addButton: [{
|
|
22257
|
+
type: ViewChild,
|
|
22258
|
+
args: ['addButton']
|
|
22259
|
+
}], showAddRemove: [{
|
|
21973
22260
|
type: Input
|
|
21974
22261
|
}], showMove: [{
|
|
21975
22262
|
type: Input
|
|
@@ -22231,7 +22518,7 @@ function RadioGroupFormFieldLoaderComponent_ng_container_2_sme_option_1_Template
|
|
|
22231
22518
|
} if (rf & 2) {
|
|
22232
22519
|
const item_r2 = i0.ɵɵnextContext().$implicit;
|
|
22233
22520
|
const ctx_r3 = i0.ɵɵnextContext();
|
|
22234
|
-
i0.ɵɵproperty("disabled", ctx_r3.shouldDisable()
|
|
22521
|
+
i0.ɵɵproperty("disabled", ctx_r3.shouldDisable() === item_r2.value)("value", item_r2.value)("label", ctx_r3.localize(item_r2.label))("description", ctx_r3.localize(item_r2.description));
|
|
22235
22522
|
} }
|
|
22236
22523
|
function RadioGroupFormFieldLoaderComponent_ng_container_2_sme_option_2_ng_template_1_Template(rf, ctx) { if (rf & 1) {
|
|
22237
22524
|
const _r8 = i0.ɵɵgetCurrentView();
|
|
@@ -22250,7 +22537,7 @@ function RadioGroupFormFieldLoaderComponent_ng_container_2_sme_option_2_Template
|
|
|
22250
22537
|
} if (rf & 2) {
|
|
22251
22538
|
const item_r2 = i0.ɵɵnextContext().$implicit;
|
|
22252
22539
|
const ctx_r4 = i0.ɵɵnextContext();
|
|
22253
|
-
i0.ɵɵproperty("disabled", ctx_r4.shouldDisable()
|
|
22540
|
+
i0.ɵɵproperty("disabled", ctx_r4.shouldDisable() === item_r2.value)("value", item_r2.value)("label", ctx_r4.localize(item_r2.label))("description", ctx_r4.localize(item_r2.description));
|
|
22254
22541
|
} }
|
|
22255
22542
|
function RadioGroupFormFieldLoaderComponent_ng_container_2_Template(rf, ctx) { if (rf & 1) {
|
|
22256
22543
|
i0.ɵɵelementContainerStart(0);
|
|
@@ -22521,10 +22808,10 @@ class RadioGroupFormFieldLoaderComponent extends ObjectPropertySchemaFieldLoader
|
|
|
22521
22808
|
[disabled]="!!(propertySchema.disabledCondition && evalExpression(propertySchema.disabledCondition))"
|
|
22522
22809
|
(customValidate)="resolveFunction(propertySchema.customValidation)($event)">
|
|
22523
22810
|
<ng-container *ngFor="let item of options">
|
|
22524
|
-
<sme-option *ngIf="!getObjectOptionByMainOption(item.value)" [disabled]="shouldDisable()
|
|
22811
|
+
<sme-option *ngIf="!getObjectOptionByMainOption(item.value)" [disabled]="shouldDisable()===item.value"
|
|
22525
22812
|
[value]="item.value" [label]="localize(item.label)" [description]="localize(item.description)">
|
|
22526
22813
|
</sme-option>
|
|
22527
|
-
<sme-option *ngIf="getObjectOptionByMainOption(item.value)" [disabled]="shouldDisable()
|
|
22814
|
+
<sme-option *ngIf="getObjectOptionByMainOption(item.value)" [disabled]="shouldDisable()===item.value"
|
|
22528
22815
|
[value]="item.value" [label]="localize(item.label)" [description]="localize(item.description)">
|
|
22529
22816
|
<ng-template>
|
|
22530
22817
|
<sme-schema-field-host [propertySchema]="getObjectOptionByMainOption(item.value)"
|
|
@@ -24432,7 +24719,13 @@ class SmeFormsModule {
|
|
|
24432
24719
|
}
|
|
24433
24720
|
/** @nocollapse */ SmeFormsModule.ɵfac = function SmeFormsModule_Factory(t) { return new (t || SmeFormsModule)(); };
|
|
24434
24721
|
/** @nocollapse */ SmeFormsModule.ɵmod = /** @pureOrBreakMyCode */ i0.ɵɵdefineNgModule({ type: SmeFormsModule });
|
|
24435
|
-
/** @nocollapse */ SmeFormsModule.ɵinj = /** @pureOrBreakMyCode */ i0.ɵɵdefineInjector({
|
|
24722
|
+
/** @nocollapse */ SmeFormsModule.ɵinj = /** @pureOrBreakMyCode */ i0.ɵɵdefineInjector({ providers: [
|
|
24723
|
+
// TODO: each form field should have its own accessibility manager service
|
|
24724
|
+
ArrayFormFieldAccessibilityManagerService,
|
|
24725
|
+
ListFormFieldAccessibilityManagerService,
|
|
24726
|
+
OrderedListFormFieldAccessibilityManagerService,
|
|
24727
|
+
FormFieldAccessibilityManagerBaseService
|
|
24728
|
+
], imports: [AccordionModule,
|
|
24436
24729
|
ActionsModule,
|
|
24437
24730
|
AutofocusModule,
|
|
24438
24731
|
CommonModule,
|
|
@@ -24604,6 +24897,13 @@ class SmeFormsModule {
|
|
|
24604
24897
|
TileDirectivesModule,
|
|
24605
24898
|
TooltipModule,
|
|
24606
24899
|
TelemetryDirectiveModule
|
|
24900
|
+
],
|
|
24901
|
+
providers: [
|
|
24902
|
+
// TODO: each form field should have its own accessibility manager service
|
|
24903
|
+
ArrayFormFieldAccessibilityManagerService,
|
|
24904
|
+
ListFormFieldAccessibilityManagerService,
|
|
24905
|
+
OrderedListFormFieldAccessibilityManagerService,
|
|
24906
|
+
FormFieldAccessibilityManagerBaseService
|
|
24607
24907
|
]
|
|
24608
24908
|
}]
|
|
24609
24909
|
}], null, null); })();
|
|
@@ -25525,12 +25825,36 @@ class DataTableColumnComponent {
|
|
|
25525
25825
|
* if we don't initialize from child components.
|
|
25526
25826
|
*/
|
|
25527
25827
|
class SpacerBaseDirective extends CoreBaseComponent {
|
|
25828
|
+
constructor() {
|
|
25829
|
+
super(...arguments);
|
|
25830
|
+
/**
|
|
25831
|
+
* The internal value for showLeftMargin.
|
|
25832
|
+
*/
|
|
25833
|
+
this.showLeftMarginInternal = true;
|
|
25834
|
+
}
|
|
25528
25835
|
/**
|
|
25529
25836
|
* The log source name for the component.
|
|
25530
25837
|
*/
|
|
25531
25838
|
get logSourceName() {
|
|
25532
25839
|
return 'SpacerBaseDirective';
|
|
25533
25840
|
}
|
|
25841
|
+
/**
|
|
25842
|
+
* Setter showLeftMargin.
|
|
25843
|
+
* The input parameter for determining the component to render left margin.
|
|
25844
|
+
* Custom implementation on control is required.
|
|
25845
|
+
* Migrated from the data-table control, the data-table control will still accept this input but actual implementation will be noLeftMargin.
|
|
25846
|
+
* @deprecated since '05/01/23' Use noLeftMargin instead.
|
|
25847
|
+
*/
|
|
25848
|
+
set showLeftMargin(input) {
|
|
25849
|
+
this.showLeftMarginInternal = !!input;
|
|
25850
|
+
this.noLeftMargin = !input;
|
|
25851
|
+
}
|
|
25852
|
+
/**
|
|
25853
|
+
* Getter showLeftMargin.
|
|
25854
|
+
*/
|
|
25855
|
+
get showLeftMargin() {
|
|
25856
|
+
return !!this.showLeftMarginInternal;
|
|
25857
|
+
}
|
|
25534
25858
|
}
|
|
25535
25859
|
/** @nocollapse */ SpacerBaseDirective.ɵfac = /** @pureOrBreakMyCode */ function () { let ɵSpacerBaseDirective_BaseFactory; return function SpacerBaseDirective_Factory(t) { return (ɵSpacerBaseDirective_BaseFactory || (ɵSpacerBaseDirective_BaseFactory = i0.ɵɵgetInheritedFactory(SpacerBaseDirective)))(t || SpacerBaseDirective); }; }();
|
|
25536
25860
|
/** @nocollapse */ SpacerBaseDirective.ɵdir = /** @pureOrBreakMyCode */ i0.ɵɵdefineDirective({ type: SpacerBaseDirective, inputs: { noLeftPadding: "noLeftPadding", noPadding: "noPadding", noHorizontalMargin: "noHorizontalMargin", noSideMargin: "noSideMargin", showLeftMargin: "showLeftMargin", noLeftMargin: "noLeftMargin" }, features: [i0.ɵɵInheritDefinitionFeature] });
|
|
@@ -31203,7 +31527,7 @@ DataTableComponent.pxConverter = new PxConverter();
|
|
|
31203
31527
|
i0.ɵɵelementEnd();
|
|
31204
31528
|
i0.ɵɵelement(28, "div", 27, 28);
|
|
31205
31529
|
} if (rf & 2) {
|
|
31206
|
-
i0.ɵɵclassProp("sme-shadow-scrolled-content", ctx.isScrolledDown)("sme-table-multi-select", ctx.selectionMode === "multiple")("sme-table-selectable", ctx.selectable)("sme-table-indented", ctx.
|
|
31530
|
+
i0.ɵɵclassProp("sme-shadow-scrolled-content", ctx.isScrolledDown)("sme-table-multi-select", ctx.selectionMode === "multiple")("sme-table-selectable", ctx.selectable)("sme-table-indented", !ctx.noLeftMargin)("sme-table-select-all-enabled", ctx.selectionMode === "multiple" && ctx.showAllItemCheckbox);
|
|
31207
31531
|
i0.ɵɵadvance(5);
|
|
31208
31532
|
i0.ɵɵattribute("role", ctx.selectionMode === "multiple" ? "columnheader" : "presentation");
|
|
31209
31533
|
i0.ɵɵadvance(1);
|
|
@@ -31211,7 +31535,7 @@ DataTableComponent.pxConverter = new PxConverter();
|
|
|
31211
31535
|
i0.ɵɵadvance(1);
|
|
31212
31536
|
i0.ɵɵproperty("ngForOf", ctx.actualColumns);
|
|
31213
31537
|
i0.ɵɵadvance(1);
|
|
31214
|
-
i0.ɵɵclassProp("sme-table-multi-select", ctx.selectionMode === "multiple")("sme-table-selectable", ctx.selectable)("sme-margin-top-none", !ctx.showHeader)("sme-table-indented", ctx.
|
|
31538
|
+
i0.ɵɵclassProp("sme-table-multi-select", ctx.selectionMode === "multiple")("sme-table-selectable", ctx.selectable)("sme-margin-top-none", !ctx.showHeader)("sme-table-indented", !ctx.noLeftMargin)("sme-table-grid-lines", ctx.showGrid)("sme-table-select-all-enabled", ctx.selectionMode === "multiple" && ctx.showAllItemCheckbox)("sme-table-editable", ctx.editable);
|
|
31215
31539
|
i0.ɵɵadvance(2);
|
|
31216
31540
|
i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction2(38, _c18, ctx.scrollable, ctx.shouldScroll));
|
|
31217
31541
|
i0.ɵɵadvance(2);
|
|
@@ -31287,7 +31611,7 @@ __decorate([
|
|
|
31287
31611
|
], DataTableComponent.prototype, "setIsColumnWidthCalculated", null);
|
|
31288
31612
|
(function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(DataTableComponent, [{
|
|
31289
31613
|
type: Component,
|
|
31290
|
-
args: [{ selector: 'sme-data-table', template: "<div role=\"presentation\" class=\"sme-table-header sme-focus-zone sme-data-table-transition\" #header\r\n [class.sme-shadow-scrolled-content]=\"isScrolledDown\" [class.sme-table-multi-select]=\"selectionMode==='multiple'\"\r\n [class.sme-table-selectable]=\"selectable\" [class.sme-table-indented]=\"showLeftMargin\"\r\n [class.sme-table-select-all-enabled]=\"selectionMode==='multiple' && showAllItemCheckbox\">\r\n <!-- According to the accessibility team, data-table headers should be accessible by keyboard\r\n and the resizer should also be accessed by keyboard.-->\r\n <div #headerTable class=\"sme-table sme-table-virtualized sme-table-auto-width-phone-down\" role=\"rowgroup\">\r\n <div class=\"sme-table-row sme-arrange-stack-h sme-position-flex-auto\" role=\"row\"\r\n (keydown)=\"onHeaderTablePressed($event)\">\r\n <div class=\"sme-table-caption\" [attr.role]=\"selectionMode==='multiple'?'columnheader':'presentation'\"\r\n data-uta-id=\"checkboxColumn\">\r\n <div class=\"sme-table-checkbox sme-table-header-checkbox\"\r\n *ngIf=\"selectionMode==='multiple' && showAllItemCheckbox && showHeader\" role=\"presentation\">\r\n <input sme-lint-disable-self type=\"checkbox\" [attr.aria-label]=\"getAllItemCheckBoxAriaLabel()\"\r\n [checked]=\"shouldAllItemCheckBoxChecked()\"\r\n [attr.aria-checked]=\"shouldAllItemCheckBoxChecked()?'true':'false'\" (change)=\"onAllItemCheckBoxClicked()\" />\r\n <label role=\"presentation\"></label>\r\n </div>\r\n </div>\r\n <div *ngFor=\"let column of actualColumns; let colIndex = index\" [attr.field]=\"column.field\"\r\n [ngStyle]=\"{'width': column.width}\"\r\n class=\"sme-table-caption sme-table-column-header sme-position-flex-auto {{column.styleClass}}\"\r\n role=\"presentation\" [attr.data-uta-id]=\"column.utaId\" [attr.column-index]=\"colIndex\">\r\n <div *ngIf=\"column.sortable && column.sortable!='false' && showHeader\"\r\n class=\"sme-table-header-cell sme-focus-zone\" (click)=\"clickColumn(column)\" role=\"columnheader\"\r\n [title]=\"column.header\" aria-live=\"polite\" tabindex=\"0\" [attr.aria-sort]=\"columnSortSettings[column.header]\">\r\n <span>{{column.header}}</span>\r\n <span class=\"sme-icon sme-margin-left-xxs\" [attr.aria-label]=\"column.sortable ? getSortLabel(column) : null\"\r\n [ngClass]=\"{'sme-icon-up':column.sortMode===sortModeEnum.Ascend,'sme-icon-down':column.sortMode===sortModeEnum.Descend}\"></span>\r\n </div>\r\n <div *ngIf=\"!(column.sortable && column.sortable!='false') && showHeader\" class=\"sme-table-header-cell sme-focus-zone\"\r\n role=\"columnheader\" [title]=\"column.header\" tabindex=\"0\">\r\n <span>{{column.header}}</span>\r\n <span class=\"sme-icon sme-margin-left-xxs\" [attr.aria-label]=\"column.sortable ? getSortLabel(column) : null\"\r\n [ngClass]=\"{'sme-icon-up':column.sortMode===sortModeEnum.Ascend,'sme-icon-down':column.sortMode===sortModeEnum.Descend}\"></span>\r\n </div>\r\n <div *ngIf=\"!showHeader\" class=\"sme-table-header-cell\" role=\"columnheader\">\r\n </div>\r\n <sme-resizer [focusable]=\"false\" *ngIf=\"colIndex!==actualColumns.length-1 && showHeader\"\r\n resizerHostSelector=\"div.sme-table-header\" (resized)=\"onColumnResized(colIndex, $event)\"\r\n [visibleToScreenReader]=\"true\" [showResizerCover]=\"false\" orientation=\"left\"\r\n (resizing)=\"onColumnResizing($event)\" class=\"sme-focus-zone\"></sme-resizer>\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n<div class=\"sme-focus-zone sme-table-container sme-data-table-transition\" #content role=\"presentation\"\r\n [class.sme-table-multi-select]=\"selectionMode==='multiple'\" [class.sme-table-selectable]=\"selectable\"\r\n [class.sme-margin-top-none]=\"!showHeader\" [class.sme-table-indented]=\"showLeftMargin\"\r\n [class.sme-table-grid-lines]=\"showGrid\"\r\n [class.sme-table-select-all-enabled]=\"selectionMode==='multiple' && showAllItemCheckbox\"\r\n [class.sme-table-editable]=\"editable\">\r\n <div class=\"sme-table-scroll-container sme-layout-absolute sme-position-inset-none\"\r\n [ngClass]=\"{'sme-layout-absolute sme-position-inset-none': scrollable, 'sme-scrollable': shouldScroll}\"\r\n #scrollContainer role=\"rowgroup\">\r\n <div role=\"row\" class=\"sme-table-row sme-table-row-placeholder\" #emptyMessage tabindex=\"0\"\r\n *ngIf=\"showNoRecordsMessage()\" data-uta-id=\"empty-table-message\">\r\n <sme-loading-wheel *ngIf=\"isLoading || !isColumnWidthCalculated\" [message]=\"loadingMessage\">\r\n </sme-loading-wheel>\r\n <div class=\"sme-table-cell sme-table-cell-placeholder\"> </div>\r\n <div role=\"gridcell\" class=\"sme-table-cell\">{{getNoRecordsMessage()}}</div>\r\n </div>\r\n <div class=\"sme-layout-relative sme-position-stretch-h sme-arrange-overflow-hide\" #scrollBody role=\"presentation\">\r\n <div class=\"sme-table sme-table-scrollable sme-table-virtualized\" #scrollAboveData\r\n [ngStyle]=\"{top: scrollAboveDataStyleTop}\" [attr.aria-hidden]=\"true\" sme-lint-disable>\r\n <!-- Above view port -->\r\n <div *ngFor=\"let renderedItem of renderedItemsAboveViewPort; let rowIndex = index\"\r\n class=\"sme-table-row sme-table-row-data sme-table-row-selectable\"\r\n [class.sme-table-row-active]=\"renderedItem.index === getActiveRenderedItemIndex()\"\r\n [class.sme-table-row-selected]=\"renderedItem.index === getActiveRenderedItemIndex() || isItemSelected(renderedItem)\"\r\n [class.sme-table-group-item]=\"renderedItem.type === renderedItemTypeEnum.GroupItem\"\r\n [class.sme-table-group-header]=\"renderedItem.type === renderedItemTypeEnum.GroupHeader\"\r\n [class.sme-checked]=\"isItemSelected(renderedItem)\">\r\n <div class=\"sme-arrange-stack-h\">\r\n <div class=\"sme-table-td sme-position-flex-auto\">\r\n <div class=\"sme-table-cell\">\r\n <div *ngIf=\"!showAsTree\" class=\"sme-table-checkbox\" role=\"presentation\">\r\n <input type=\"checkbox\" [checked]=\"isItemSelected(renderedItem)\" />\r\n <label role=\"presentation\"></label>\r\n </div>\r\n </div>\r\n </div>\r\n <div *ngFor=\"let column of actualColumns; let colIndex=index\"\r\n [ngClass]=\"{'sme-table-column-first': isFirstDataColumn(column), 'sme-table-group-header-cell': renderedItem.type===renderedItemTypeEnum.GroupHeader}\"\r\n [ngStyle]=\"{'width':column.domWidth+'px'}\"\r\n class=\"sme-table-td sme-position-flex-auto {{column.styleClass}}\"\r\n [attr.tabindex]=\"isTreeTableParentNode(renderedItem) ? -1 : 0\">\r\n <div class=\"sme-screen-reader sme-screen-reader-disable-copy\" *ngIf=\"isFirstDataColumn(column)\">\r\n {{getAdditionalScreenRecorderContent(renderedItem)}}</div>\r\n <div *ngIf=\"renderedItem.type===renderedItemTypeEnum.GroupHeader && colIndex===0\" class=\"sme-table-cell\"\r\n (click)=\"clickGroupToggle(renderedItem)\">\r\n <span *ngIf=\"useGroupToggle\" class=\"sme-icon sme-icon-size-xxs sme-margin-right-xxs\"\r\n [ngClass]=\"{'sme-icon-chevronDown':isGroupExpanded(renderedItem.data), 'sme-icon-chevronRight':!isGroupExpanded(renderedItem.data)}\">\r\n </span>\r\n <span *ngIf=\"!this.groupHeaderTemplate\">\r\n {{renderedItem.data}}\r\n </span>\r\n <span *ngIf=\"this.groupHeaderTemplate\">\r\n <sme-data-table-template-loader [template]=\"this.groupHeaderTemplate\" [data]=\"renderedItem.data\">\r\n </sme-data-table-template-loader>\r\n </span>\r\n </div>\r\n <div\r\n *ngIf=\"renderedItem.type===renderedItemTypeEnum.TreeNode && !renderedItem.node.isBusy && colIndex===0\"\r\n class=\"sme-table-expander-cell\" [ngStyle]=\"{'padding-left':(renderedItem.depth*16+4)+'px'}\"\r\n [ngClass]=\"{'sme-expandable': renderedItem.hasChildren && !renderedItem.node.isLeaf}\">\r\n <span class=\"sme-icon sme-icon-size-xxs\" role=\"button\"\r\n [attr.aria-expanded]=\"renderedItem.node.expanded?'true':'false'\"\r\n (click)=\"clickTreeToggle($event, renderedItem)\"\r\n [ngClass]=\"{'sme-icon-chevronDown':renderedItem.node.expanded, 'sme-icon-chevronRight':!renderedItem.node.expanded}\"\r\n [attr.aria-label]=\"renderedItem.node.expanded ? this.strings.MsftSmeShell.Angular.DataTable.aria.label.collapse : this.strings.MsftSmeShell.Angular.DataTable.aria.label.expand\">\r\n </span>\r\n <span class=\"sme-table-expander-cell-placeholder\"></span>\r\n </div>\r\n <div *ngIf=\"renderedItem.type===renderedItemTypeEnum.TreeNode && renderedItem.node.isBusy && colIndex===0\"\r\n class=\"sme-table-expander-cell\" [ngStyle]=\"{'padding-left':(renderedItem.depth*16+4)+'px'}\">\r\n <sme-loading-wheel size=\"extra-small\" [inline]=\"true\" [isBackgroundTransparent]=\"true\">\r\n </sme-loading-wheel>\r\n <span class=\"sme-table-expander-cell-placeholder\"></span>\r\n </div>\r\n <div\r\n *ngIf=\"showAsTree && selectionMode==='multiple' && renderedItem.type==renderedItemTypeEnum.TreeNode && colIndex==0\"\r\n class=\"sme-table-cell sme-table-checkbox-container\" role=\"presentation\">\r\n <div class=\"sme-table-checkbox\" role=\"presentation\">\r\n <input type=\"checkbox\" [checked]=\"isItemSelected(renderedItem)\"\r\n (change)=\"onItemCheckBoxClicked(renderedItem)\" />\r\n <label role=\"presentation\"></label>\r\n </div>\r\n </div>\r\n <ng-container *ngIf=\"!editable\">\r\n <div *ngIf=\"!column.bodyTemplate && renderedItem.type!=renderedItemTypeEnum.GroupHeader\"\r\n class=\"sme-table-cell\" [class.sme-table-cell-full-height]=\"autoRowHeight\">\r\n {{renderedItem.data?resolveObjectPath(renderedItem.data,column.field):'.'}}\r\n </div>\r\n <div\r\n *ngIf=\"renderedItem.type!=renderedItemTypeEnum.GroupHeader && renderedItem.data && column.bodyTemplate\"\r\n [class.sme-table-cell-full-height]=\"autoRowHeight\" [class.sme-table-cell-height-auto]=\"autoRowHeight\"\r\n class=\"sme-table-cell\">\r\n <sme-data-table-template-loader *ngIf=\"!renderedItem.data.placeholder\"\r\n [template]=\"column.bodyTemplate\" [data]=\"renderedItem.data\" [rowIndex]=\"rowIndex\">\r\n </sme-data-table-template-loader>\r\n </div>\r\n </ng-container>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"sme-table sme-table-scrollable\" #scrollData [class.sme-table-virtualized]=\"!disableUIVirtualization\"\r\n [ngStyle]=\"{top: scrollDataStyleTop}\" sme-lint-disable role=\"presentation\">\r\n <div *ngFor=\"let renderedItem of renderedItemsInAndBelowViewPort; let rowIndex = index\"\r\n (keydown)=\"onContentTablePressed($event)\" (keyup)=\"onContentTableKeyUp($event)\"\r\n (contextmenu)=\"enableRightClickSelect ? selectItem($event, renderedItem) : true\"\r\n (click)=\"selectItem($event, renderedItem)\" class=\"sme-table-row sme-table-row-data sme-table-row-selectable\"\r\n [class.sme-table-row-active]=\"renderedItem.index === getActiveRenderedItemIndex()\"\r\n [class.sme-table-row-selected]=\"rowDisplayAsSelected(renderedItem)\"\r\n [class.sme-table-group-item]=\"renderedItem.type === renderedItemTypeEnum.GroupItem\"\r\n [class.sme-table-group-header]=\"renderedItem.type === renderedItemTypeEnum.GroupHeader\"\r\n [class.sme-checked]=\"isItemSelected(renderedItem)\" [class.sme-table-row-editable]=\"editable\"\r\n [class.sme-has-validation-error]=\"hasValidationError(renderedItem)\"\r\n [class.sme-data-table-row-new-item]=\"renderedItem?.data?.isNewRow\"\r\n [attr.tabindex]=\"renderedItem.index >= 0 ? 0 : undefined\" (dblclick)=\"doubleClickRow($event,renderedItem)\"\r\n (focus)=\"onContentItemFocused($event, renderedItem)\" (focusin)=\"onContentItemFocused($event, renderedItem)\"\r\n (focusout)=\"onContentItemBlurred($event, renderedItem)\" [attr.data-rendered-item-index]=\"renderedItem.index\"\r\n [attr.aria-rowindex]=\"renderedItem.index+2\" [attr.aria-selected]=\"isItemSelected(renderedItem)?'true':'false'\"\r\n (mouseenter)=\"setHoveredRenderedItem(renderedItem)\" (mouseleave)=\"unsetHoveredRenderedItem(renderedItem)\"\r\n role=\"row\" [attr.aria-expanded]=\"getAriaExpandedAttributeValue(renderedItem)\"\r\n [attr.aria-level]=\"showAsTree && renderedItem.depth ? (renderedItem.depth+1):undefined\">\r\n <div class=\"sme-arrange-stack-h\" role=\"presentation\">\r\n <div class=\"sme-table-td sme-position-flex-auto\"\r\n [attr.role] = \"selectionMode === 'multiple' ? 'gridcell': 'presentation'\">\r\n <div *ngIf=\"!showAsTree\" class=\"sme-table-cell sme-table-checkbox-container\" role=\"presentation\"\r\n [class.sme-table-cell-full-height]=\"autoRowHeight\">\r\n <div class=\"sme-table-checkbox\" role=\"presentation\">\r\n <input type=\"checkbox\" [attr.aria-checked]=\"isItemSelected(renderedItem)?'true':'false'\"\r\n [attr.aria-labelledby]=\"idBag.firstDataColumn + renderedItem.index\"\r\n [checked]=\"isItemSelected(renderedItem)\" (change)=\"onItemCheckBoxClicked(renderedItem)\" />\r\n <label role=\"presentation\"></label>\r\n </div>\r\n </div>\r\n </div>\r\n <div *ngFor=\"let column of actualColumns; let colIndex=index\"\r\n [ngClass]=\"{'sme-table-column-first': isFirstDataColumn(column), 'sme-table-group-header-cell': renderedItem.type===renderedItemTypeEnum.GroupHeader}\"\r\n [ngStyle]=\"{'width':column.domWidth+'px'}\"\r\n class=\"sme-table-td sme-position-flex-auto {{column.styleClass}}\"\r\n role=\"gridcell\" [attr.aria-rowindex]=\"renderedItem.index+2\"\r\n [attr.tabindex]=\"isTreeTableParentNode(renderedItem) ? -1 : 0\">\r\n <div class=\"sme-screen-reader sme-screen-reader-disable-copy\" *ngIf=\"isFirstDataColumn(column)\">\r\n {{getAdditionalScreenRecorderContent(renderedItem)}}</div>\r\n <div *ngIf=\"renderedItem.type===renderedItemTypeEnum.GroupHeader && colIndex===0\" class=\"sme-table-cell\"\r\n (click)=\"clickGroupToggle(renderedItem)\" [id]=\"getFirstColumnId(column, renderedItem)\">\r\n <span *ngIf=\"useGroupToggle\" class=\"sme-icon sme-icon-size-xxs sme-margin-right-xxs\"\r\n [ngClass]=\"{'sme-icon-chevronDown':isGroupExpanded(renderedItem.data), 'sme-icon-chevronRight':!isGroupExpanded(renderedItem.data)}\">\r\n </span>\r\n <span *ngIf=\"!this.groupHeaderTemplate\">\r\n {{renderedItem.data}}\r\n </span>\r\n <span *ngIf=\"this.groupHeaderTemplate\">\r\n <sme-data-table-template-loader [template]=\"this.groupHeaderTemplate\" [data]=\"renderedItem.data\">\r\n </sme-data-table-template-loader>\r\n </span>\r\n </div>\r\n <div\r\n *ngIf=\"renderedItem.type===renderedItemTypeEnum.TreeNode && !renderedItem.node.isBusy && colIndex===0\"\r\n class=\"sme-table-expander-cell\" [ngStyle]=\"{'padding-left':(renderedItem.depth*16+4)+'px'}\"\r\n [ngClass]=\"{'sme-expandable': renderedItem.hasChildren && !renderedItem.node.isLeaf}\">\r\n <span class=\"sme-icon sme-icon-size-xxs\" role=\"button\"\r\n [attr.aria-expanded]=\"renderedItem.node.expanded?'true':'false'\"\r\n (click)=\"clickTreeToggle($event, renderedItem)\"\r\n [ngClass]=\"{'sme-icon-chevronDown':renderedItem.node.expanded, 'sme-icon-chevronRight':!renderedItem.node.expanded}\"\r\n [attr.aria-label]=\"renderedItem.node.expanded ? this.strings.MsftSmeShell.Angular.DataTable.aria.label.collapse : this.strings.MsftSmeShell.Angular.DataTable.aria.label.expand\">\r\n </span>\r\n <span class=\"sme-table-expander-cell-placeholder\"></span>\r\n </div>\r\n <div *ngIf=\"renderedItem.type===renderedItemTypeEnum.TreeNode && renderedItem.node.isBusy && colIndex===0\"\r\n class=\"sme-table-expander-cell\" [ngStyle]=\"{'padding-left':(renderedItem.depth*16+4)+'px'}\">\r\n <sme-loading-wheel size=\"extra-small\" [inline]=\"true\" [isBackgroundTransparent]=\"true\">\r\n </sme-loading-wheel>\r\n <span class=\"sme-table-expander-cell-placeholder\"></span>\r\n </div>\r\n <div\r\n *ngIf=\"showAsTree && selectionMode==='multiple' && renderedItem.type==renderedItemTypeEnum.TreeNode && colIndex==0\"\r\n class=\"sme-table-cell sme-table-checkbox-container\" role=\"presentation\">\r\n <div class=\"sme-table-checkbox\" role=\"presentation\">\r\n <input type=\"checkbox\" [attr.aria-checked]=\"isItemSelected(renderedItem)?'true':'false'\"\r\n [attr.aria-labelledby]=\"idBag.firstDataColumn + renderedItem.index\"\r\n [checked]=\"isItemSelected(renderedItem)\" (change)=\"onItemCheckBoxClicked(renderedItem)\" />\r\n <label role=\"presentation\"></label>\r\n </div>\r\n </div>\r\n <ng-container *ngIf=\"!editable\">\r\n <div *ngIf=\"!column.bodyTemplate && renderedItem.type!=renderedItemTypeEnum.GroupHeader\"\r\n class=\"sme-table-cell\" [class.sme-table-cell-full-height]=\"autoRowHeight\"\r\n [id]=\"getFirstColumnId(column, renderedItem)\"\r\n [title]=\"getColumnTooltipText(column, renderedItem)\">\r\n {{renderedItem.data?resolveObjectPath(renderedItem.data,column.field):'.'}}</div>\r\n <div\r\n *ngIf=\"renderedItem.type!=renderedItemTypeEnum.GroupHeader && renderedItem.data && column.bodyTemplate\"\r\n class=\"sme-table-cell\" [class.sme-table-cell-height-auto]=\"autoRowHeight\"\r\n [class.sme-table-cell-full-height]=\"autoRowHeight\" [id]=\"getFirstColumnId(column, renderedItem)\"\r\n [title]=\"getColumnTooltipText(column, renderedItem)\">\r\n <sme-data-table-template-loader *ngIf=\"!renderedItem.data.placeholder\"\r\n [template]=\"column.bodyTemplate\" [data]=\"renderedItem.data\" [rowIndex]=\"rowIndex\">\r\n </sme-data-table-template-loader>\r\n </div>\r\n </ng-container>\r\n <ng-container *ngIf=\"editable && !column.bodyEditTemplate\">\r\n <div *ngIf=\"!column.bodyReadTemplate && renderedItem.type!=renderedItemTypeEnum.GroupHeader\"\r\n class=\"sme-table-cell\"\r\n [title]=\"getColumnTooltipText(column, renderedItem)\">\r\n {{renderedItem.data?resolveObjectPath(renderedItem.data.content,column.field):'.'}}</div>\r\n <div\r\n *ngIf=\"renderedItem.type!=renderedItemTypeEnum.GroupHeader && renderedItem.data && column.bodyReadTemplate\"\r\n class=\"sme-table-cell\"\r\n [title]=\"getColumnTooltipText(column, renderedItem)\">\r\n <sme-data-table-template-loader *ngIf=\"!renderedItem.data.placeholder\" [renderedItem]=\"renderedItem\"\r\n [template]=\"column.bodyReadTemplate\" [data]=\"renderedItem.data.content\" [rowIndex]=\"rowIndex\">\r\n </sme-data-table-template-loader>\r\n </div>\r\n </ng-container>\r\n <ng-container *ngIf=\"editable && column.bodyEditTemplate\">\r\n <ng-container *ngIf=\"!shouldShowEditRow(renderedItem)\">\r\n <div *ngIf=\"!column.bodyReadTemplate && renderedItem.type!=renderedItemTypeEnum.GroupHeader\"\r\n class=\"sme-table-cell\"\r\n [title]=\"getColumnTooltipText(column, renderedItem)\">\r\n {{renderedItem.data?resolveObjectPath(renderedItem.data.content,column.field):'.'}}</div>\r\n <div\r\n *ngIf=\"renderedItem.type!=renderedItemTypeEnum.GroupHeader && renderedItem.data && column.bodyReadTemplate\"\r\n class=\"sme-table-cell\"\r\n [title]=\"getColumnTooltipText(column, renderedItem)\">\r\n <sme-data-table-template-loader *ngIf=\"!renderedItem.data.placeholder\"\r\n [template]=\"column.bodyReadTemplate\" [data]=\"renderedItem.data.content\" [rowIndex]=\"rowIndex\">\r\n </sme-data-table-template-loader>\r\n </div>\r\n </ng-container>\r\n <div *ngIf=\"shouldShowEditRow(renderedItem)\" class=\"sme-table-cell sme-table-edit-container\"\r\n [title]=\"getColumnTooltipText(column, renderedItem)\">\r\n <sme-data-table-template-loader *ngIf=\"!renderedItem.data.placeholder\"\r\n [template]=\"column.bodyEditTemplate\" [field]=\"column.field\" [data]=\"renderedItem.data.content\"\r\n [rowIndex]=\"rowIndex\" [renderedItem]=\"renderedItem\"\r\n (validationAlert)=\"onValidationAlertHandler(renderedItem, column.field, $event.alert)\"\r\n (dataChanged)=\"onEditableDataChanged($event.renderedItem,$event.field)\">\r\n </sme-data-table-template-loader>\r\n </div>\r\n </ng-container>\r\n </div>\r\n </div>\r\n <div *ngIf=\"hasValidationError(renderedItem)\" class=\"sme-table-row-validation\">\r\n <div class=\"sme-table-td sme-position-flex-auto\"\r\n [attr.role] = \"selectionMode === 'multiple' ? 'gridcell' : 'presentation'\"\r\n [attr.tabindex]=\"selectionMode==='multiple'?'0':'undefined'\">\r\n <div class=\"sme-table-cell\" role=\"presentation\">\r\n <div *ngFor=\"let validationResultItem of renderedItem.validationResult\">\r\n <sme-validation-alert [alert]=\"validationResultItem.alert\"></sme-validation-alert>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"sme-table-row\" #tempRow>\r\n <div class=\"sme-table-td\" tabindex=\"0\">\r\n <div class=\"sme-table-cell\"> </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <div *ngIf=\"shouldUseLastFocusableShadowElement\" #lastFocusableShadowElement class=\"sme-focus-zone\"\r\n data-sme-last-focusable-shadow-element (focus)=\"onLastFocusableShadowElementFocused($event)\" tabindex=\"0\"></div>\r\n </div>\r\n <div class=\"sme-layout-absolute sme-position-inset-none\"\r\n *ngIf=\"isBusy || (this.nodeNavigatingTask && this.nodeNavigatingTask.isRunning)\">\r\n <sme-loading-wheel [isBackgroundTransparent]=\"true\"></sme-loading-wheel>\r\n </div>\r\n</div>\r\n<div #resizerIndicator\r\n class=\"sme-width-xxs sme-layout-absolute sme-position-stretch-v sme-background-color-base-80 sme-layer-flyout sme-layout-none\">\r\n</div>\r\n" }]
|
|
31614
|
+
args: [{ selector: 'sme-data-table', template: "<div role=\"presentation\" class=\"sme-table-header sme-focus-zone sme-data-table-transition\" #header\r\n [class.sme-shadow-scrolled-content]=\"isScrolledDown\" [class.sme-table-multi-select]=\"selectionMode==='multiple'\"\r\n [class.sme-table-selectable]=\"selectable\" [class.sme-table-indented]=\"!noLeftMargin\"\r\n [class.sme-table-select-all-enabled]=\"selectionMode==='multiple' && showAllItemCheckbox\">\r\n <!-- According to the accessibility team, data-table headers should be accessible by keyboard\r\n and the resizer should also be accessed by keyboard.-->\r\n <div #headerTable class=\"sme-table sme-table-virtualized sme-table-auto-width-phone-down\" role=\"rowgroup\">\r\n <div class=\"sme-table-row sme-arrange-stack-h sme-position-flex-auto\" role=\"row\"\r\n (keydown)=\"onHeaderTablePressed($event)\">\r\n <div class=\"sme-table-caption\" [attr.role]=\"selectionMode==='multiple'?'columnheader':'presentation'\"\r\n data-uta-id=\"checkboxColumn\">\r\n <div class=\"sme-table-checkbox sme-table-header-checkbox\"\r\n *ngIf=\"selectionMode==='multiple' && showAllItemCheckbox && showHeader\" role=\"presentation\">\r\n <input sme-lint-disable-self type=\"checkbox\" [attr.aria-label]=\"getAllItemCheckBoxAriaLabel()\"\r\n [checked]=\"shouldAllItemCheckBoxChecked()\"\r\n [attr.aria-checked]=\"shouldAllItemCheckBoxChecked()?'true':'false'\" (change)=\"onAllItemCheckBoxClicked()\" />\r\n <label role=\"presentation\"></label>\r\n </div>\r\n </div>\r\n <div *ngFor=\"let column of actualColumns; let colIndex = index\" [attr.field]=\"column.field\"\r\n [ngStyle]=\"{'width': column.width}\"\r\n class=\"sme-table-caption sme-table-column-header sme-position-flex-auto {{column.styleClass}}\"\r\n role=\"presentation\" [attr.data-uta-id]=\"column.utaId\" [attr.column-index]=\"colIndex\">\r\n <div *ngIf=\"column.sortable && column.sortable!='false' && showHeader\"\r\n class=\"sme-table-header-cell sme-focus-zone\" (click)=\"clickColumn(column)\" role=\"columnheader\"\r\n [title]=\"column.header\" aria-live=\"polite\" tabindex=\"0\" [attr.aria-sort]=\"columnSortSettings[column.header]\">\r\n <span>{{column.header}}</span>\r\n <span class=\"sme-icon sme-margin-left-xxs\" [attr.aria-label]=\"column.sortable ? getSortLabel(column) : null\"\r\n [ngClass]=\"{'sme-icon-up':column.sortMode===sortModeEnum.Ascend,'sme-icon-down':column.sortMode===sortModeEnum.Descend}\"></span>\r\n </div>\r\n <div *ngIf=\"!(column.sortable && column.sortable!='false') && showHeader\" class=\"sme-table-header-cell sme-focus-zone\"\r\n role=\"columnheader\" [title]=\"column.header\" tabindex=\"0\">\r\n <span>{{column.header}}</span>\r\n <span class=\"sme-icon sme-margin-left-xxs\" [attr.aria-label]=\"column.sortable ? getSortLabel(column) : null\"\r\n [ngClass]=\"{'sme-icon-up':column.sortMode===sortModeEnum.Ascend,'sme-icon-down':column.sortMode===sortModeEnum.Descend}\"></span>\r\n </div>\r\n <div *ngIf=\"!showHeader\" class=\"sme-table-header-cell\" role=\"columnheader\">\r\n </div>\r\n <sme-resizer [focusable]=\"false\" *ngIf=\"colIndex!==actualColumns.length-1 && showHeader\"\r\n resizerHostSelector=\"div.sme-table-header\" (resized)=\"onColumnResized(colIndex, $event)\"\r\n [visibleToScreenReader]=\"true\" [showResizerCover]=\"false\" orientation=\"left\"\r\n (resizing)=\"onColumnResizing($event)\" class=\"sme-focus-zone\"></sme-resizer>\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n<div class=\"sme-focus-zone sme-table-container sme-data-table-transition\" #content role=\"presentation\"\r\n [class.sme-table-multi-select]=\"selectionMode==='multiple'\" [class.sme-table-selectable]=\"selectable\"\r\n [class.sme-margin-top-none]=\"!showHeader\" [class.sme-table-indented]=\"!noLeftMargin\"\r\n [class.sme-table-grid-lines]=\"showGrid\"\r\n [class.sme-table-select-all-enabled]=\"selectionMode==='multiple' && showAllItemCheckbox\"\r\n [class.sme-table-editable]=\"editable\">\r\n <div class=\"sme-table-scroll-container sme-layout-absolute sme-position-inset-none\"\r\n [ngClass]=\"{'sme-layout-absolute sme-position-inset-none': scrollable, 'sme-scrollable': shouldScroll}\"\r\n #scrollContainer role=\"rowgroup\">\r\n <div role=\"row\" class=\"sme-table-row sme-table-row-placeholder\" #emptyMessage tabindex=\"0\"\r\n *ngIf=\"showNoRecordsMessage()\" data-uta-id=\"empty-table-message\">\r\n <sme-loading-wheel *ngIf=\"isLoading || !isColumnWidthCalculated\" [message]=\"loadingMessage\">\r\n </sme-loading-wheel>\r\n <div class=\"sme-table-cell sme-table-cell-placeholder\"> </div>\r\n <div role=\"gridcell\" class=\"sme-table-cell\">{{getNoRecordsMessage()}}</div>\r\n </div>\r\n <div class=\"sme-layout-relative sme-position-stretch-h sme-arrange-overflow-hide\" #scrollBody role=\"presentation\">\r\n <div class=\"sme-table sme-table-scrollable sme-table-virtualized\" #scrollAboveData\r\n [ngStyle]=\"{top: scrollAboveDataStyleTop}\" [attr.aria-hidden]=\"true\" sme-lint-disable>\r\n <!-- Above view port -->\r\n <div *ngFor=\"let renderedItem of renderedItemsAboveViewPort; let rowIndex = index\"\r\n class=\"sme-table-row sme-table-row-data sme-table-row-selectable\"\r\n [class.sme-table-row-active]=\"renderedItem.index === getActiveRenderedItemIndex()\"\r\n [class.sme-table-row-selected]=\"renderedItem.index === getActiveRenderedItemIndex() || isItemSelected(renderedItem)\"\r\n [class.sme-table-group-item]=\"renderedItem.type === renderedItemTypeEnum.GroupItem\"\r\n [class.sme-table-group-header]=\"renderedItem.type === renderedItemTypeEnum.GroupHeader\"\r\n [class.sme-checked]=\"isItemSelected(renderedItem)\">\r\n <div class=\"sme-arrange-stack-h\">\r\n <div class=\"sme-table-td sme-position-flex-auto\">\r\n <div class=\"sme-table-cell\">\r\n <div *ngIf=\"!showAsTree\" class=\"sme-table-checkbox\" role=\"presentation\">\r\n <input type=\"checkbox\" [checked]=\"isItemSelected(renderedItem)\" />\r\n <label role=\"presentation\"></label>\r\n </div>\r\n </div>\r\n </div>\r\n <div *ngFor=\"let column of actualColumns; let colIndex=index\"\r\n [ngClass]=\"{'sme-table-column-first': isFirstDataColumn(column), 'sme-table-group-header-cell': renderedItem.type===renderedItemTypeEnum.GroupHeader}\"\r\n [ngStyle]=\"{'width':column.domWidth+'px'}\"\r\n class=\"sme-table-td sme-position-flex-auto {{column.styleClass}}\"\r\n [attr.tabindex]=\"isTreeTableParentNode(renderedItem) ? -1 : 0\">\r\n <div class=\"sme-screen-reader sme-screen-reader-disable-copy\" *ngIf=\"isFirstDataColumn(column)\">\r\n {{getAdditionalScreenRecorderContent(renderedItem)}}</div>\r\n <div *ngIf=\"renderedItem.type===renderedItemTypeEnum.GroupHeader && colIndex===0\" class=\"sme-table-cell\"\r\n (click)=\"clickGroupToggle(renderedItem)\">\r\n <span *ngIf=\"useGroupToggle\" class=\"sme-icon sme-icon-size-xxs sme-margin-right-xxs\"\r\n [ngClass]=\"{'sme-icon-chevronDown':isGroupExpanded(renderedItem.data), 'sme-icon-chevronRight':!isGroupExpanded(renderedItem.data)}\">\r\n </span>\r\n <span *ngIf=\"!this.groupHeaderTemplate\">\r\n {{renderedItem.data}}\r\n </span>\r\n <span *ngIf=\"this.groupHeaderTemplate\">\r\n <sme-data-table-template-loader [template]=\"this.groupHeaderTemplate\" [data]=\"renderedItem.data\">\r\n </sme-data-table-template-loader>\r\n </span>\r\n </div>\r\n <div\r\n *ngIf=\"renderedItem.type===renderedItemTypeEnum.TreeNode && !renderedItem.node.isBusy && colIndex===0\"\r\n class=\"sme-table-expander-cell\" [ngStyle]=\"{'padding-left':(renderedItem.depth*16+4)+'px'}\"\r\n [ngClass]=\"{'sme-expandable': renderedItem.hasChildren && !renderedItem.node.isLeaf}\">\r\n <span class=\"sme-icon sme-icon-size-xxs\" role=\"button\"\r\n [attr.aria-expanded]=\"renderedItem.node.expanded?'true':'false'\"\r\n (click)=\"clickTreeToggle($event, renderedItem)\"\r\n [ngClass]=\"{'sme-icon-chevronDown':renderedItem.node.expanded, 'sme-icon-chevronRight':!renderedItem.node.expanded}\"\r\n [attr.aria-label]=\"renderedItem.node.expanded ? this.strings.MsftSmeShell.Angular.DataTable.aria.label.collapse : this.strings.MsftSmeShell.Angular.DataTable.aria.label.expand\">\r\n </span>\r\n <span class=\"sme-table-expander-cell-placeholder\"></span>\r\n </div>\r\n <div *ngIf=\"renderedItem.type===renderedItemTypeEnum.TreeNode && renderedItem.node.isBusy && colIndex===0\"\r\n class=\"sme-table-expander-cell\" [ngStyle]=\"{'padding-left':(renderedItem.depth*16+4)+'px'}\">\r\n <sme-loading-wheel size=\"extra-small\" [inline]=\"true\" [isBackgroundTransparent]=\"true\">\r\n </sme-loading-wheel>\r\n <span class=\"sme-table-expander-cell-placeholder\"></span>\r\n </div>\r\n <div\r\n *ngIf=\"showAsTree && selectionMode==='multiple' && renderedItem.type==renderedItemTypeEnum.TreeNode && colIndex==0\"\r\n class=\"sme-table-cell sme-table-checkbox-container\" role=\"presentation\">\r\n <div class=\"sme-table-checkbox\" role=\"presentation\">\r\n <input type=\"checkbox\" [checked]=\"isItemSelected(renderedItem)\"\r\n (change)=\"onItemCheckBoxClicked(renderedItem)\" />\r\n <label role=\"presentation\"></label>\r\n </div>\r\n </div>\r\n <ng-container *ngIf=\"!editable\">\r\n <div *ngIf=\"!column.bodyTemplate && renderedItem.type!=renderedItemTypeEnum.GroupHeader\"\r\n class=\"sme-table-cell\" [class.sme-table-cell-full-height]=\"autoRowHeight\">\r\n {{renderedItem.data?resolveObjectPath(renderedItem.data,column.field):'.'}}\r\n </div>\r\n <div\r\n *ngIf=\"renderedItem.type!=renderedItemTypeEnum.GroupHeader && renderedItem.data && column.bodyTemplate\"\r\n [class.sme-table-cell-full-height]=\"autoRowHeight\" [class.sme-table-cell-height-auto]=\"autoRowHeight\"\r\n class=\"sme-table-cell\">\r\n <sme-data-table-template-loader *ngIf=\"!renderedItem.data.placeholder\"\r\n [template]=\"column.bodyTemplate\" [data]=\"renderedItem.data\" [rowIndex]=\"rowIndex\">\r\n </sme-data-table-template-loader>\r\n </div>\r\n </ng-container>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"sme-table sme-table-scrollable\" #scrollData [class.sme-table-virtualized]=\"!disableUIVirtualization\"\r\n [ngStyle]=\"{top: scrollDataStyleTop}\" sme-lint-disable role=\"presentation\">\r\n <div *ngFor=\"let renderedItem of renderedItemsInAndBelowViewPort; let rowIndex = index\"\r\n (keydown)=\"onContentTablePressed($event)\" (keyup)=\"onContentTableKeyUp($event)\"\r\n (contextmenu)=\"enableRightClickSelect ? selectItem($event, renderedItem) : true\"\r\n (click)=\"selectItem($event, renderedItem)\" class=\"sme-table-row sme-table-row-data sme-table-row-selectable\"\r\n [class.sme-table-row-active]=\"renderedItem.index === getActiveRenderedItemIndex()\"\r\n [class.sme-table-row-selected]=\"rowDisplayAsSelected(renderedItem)\"\r\n [class.sme-table-group-item]=\"renderedItem.type === renderedItemTypeEnum.GroupItem\"\r\n [class.sme-table-group-header]=\"renderedItem.type === renderedItemTypeEnum.GroupHeader\"\r\n [class.sme-checked]=\"isItemSelected(renderedItem)\" [class.sme-table-row-editable]=\"editable\"\r\n [class.sme-has-validation-error]=\"hasValidationError(renderedItem)\"\r\n [class.sme-data-table-row-new-item]=\"renderedItem?.data?.isNewRow\"\r\n [attr.tabindex]=\"renderedItem.index >= 0 ? 0 : undefined\" (dblclick)=\"doubleClickRow($event,renderedItem)\"\r\n (focus)=\"onContentItemFocused($event, renderedItem)\" (focusin)=\"onContentItemFocused($event, renderedItem)\"\r\n (focusout)=\"onContentItemBlurred($event, renderedItem)\" [attr.data-rendered-item-index]=\"renderedItem.index\"\r\n [attr.aria-rowindex]=\"renderedItem.index+2\" [attr.aria-selected]=\"isItemSelected(renderedItem)?'true':'false'\"\r\n (mouseenter)=\"setHoveredRenderedItem(renderedItem)\" (mouseleave)=\"unsetHoveredRenderedItem(renderedItem)\"\r\n role=\"row\" [attr.aria-expanded]=\"getAriaExpandedAttributeValue(renderedItem)\"\r\n [attr.aria-level]=\"showAsTree && renderedItem.depth ? (renderedItem.depth+1):undefined\">\r\n <div class=\"sme-arrange-stack-h\" role=\"presentation\">\r\n <div class=\"sme-table-td sme-position-flex-auto\"\r\n [attr.role] = \"selectionMode === 'multiple' ? 'gridcell': 'presentation'\">\r\n <div *ngIf=\"!showAsTree\" class=\"sme-table-cell sme-table-checkbox-container\" role=\"presentation\"\r\n [class.sme-table-cell-full-height]=\"autoRowHeight\">\r\n <div class=\"sme-table-checkbox\" role=\"presentation\">\r\n <input type=\"checkbox\" [attr.aria-checked]=\"isItemSelected(renderedItem)?'true':'false'\"\r\n [attr.aria-labelledby]=\"idBag.firstDataColumn + renderedItem.index\"\r\n [checked]=\"isItemSelected(renderedItem)\" (change)=\"onItemCheckBoxClicked(renderedItem)\" />\r\n <label role=\"presentation\"></label>\r\n </div>\r\n </div>\r\n </div>\r\n <div *ngFor=\"let column of actualColumns; let colIndex=index\"\r\n [ngClass]=\"{'sme-table-column-first': isFirstDataColumn(column), 'sme-table-group-header-cell': renderedItem.type===renderedItemTypeEnum.GroupHeader}\"\r\n [ngStyle]=\"{'width':column.domWidth+'px'}\"\r\n class=\"sme-table-td sme-position-flex-auto {{column.styleClass}}\"\r\n role=\"gridcell\" [attr.aria-rowindex]=\"renderedItem.index+2\"\r\n [attr.tabindex]=\"isTreeTableParentNode(renderedItem) ? -1 : 0\">\r\n <div class=\"sme-screen-reader sme-screen-reader-disable-copy\" *ngIf=\"isFirstDataColumn(column)\">\r\n {{getAdditionalScreenRecorderContent(renderedItem)}}</div>\r\n <div *ngIf=\"renderedItem.type===renderedItemTypeEnum.GroupHeader && colIndex===0\" class=\"sme-table-cell\"\r\n (click)=\"clickGroupToggle(renderedItem)\" [id]=\"getFirstColumnId(column, renderedItem)\">\r\n <span *ngIf=\"useGroupToggle\" class=\"sme-icon sme-icon-size-xxs sme-margin-right-xxs\"\r\n [ngClass]=\"{'sme-icon-chevronDown':isGroupExpanded(renderedItem.data), 'sme-icon-chevronRight':!isGroupExpanded(renderedItem.data)}\">\r\n </span>\r\n <span *ngIf=\"!this.groupHeaderTemplate\">\r\n {{renderedItem.data}}\r\n </span>\r\n <span *ngIf=\"this.groupHeaderTemplate\">\r\n <sme-data-table-template-loader [template]=\"this.groupHeaderTemplate\" [data]=\"renderedItem.data\">\r\n </sme-data-table-template-loader>\r\n </span>\r\n </div>\r\n <div\r\n *ngIf=\"renderedItem.type===renderedItemTypeEnum.TreeNode && !renderedItem.node.isBusy && colIndex===0\"\r\n class=\"sme-table-expander-cell\" [ngStyle]=\"{'padding-left':(renderedItem.depth*16+4)+'px'}\"\r\n [ngClass]=\"{'sme-expandable': renderedItem.hasChildren && !renderedItem.node.isLeaf}\">\r\n <span class=\"sme-icon sme-icon-size-xxs\" role=\"button\"\r\n [attr.aria-expanded]=\"renderedItem.node.expanded?'true':'false'\"\r\n (click)=\"clickTreeToggle($event, renderedItem)\"\r\n [ngClass]=\"{'sme-icon-chevronDown':renderedItem.node.expanded, 'sme-icon-chevronRight':!renderedItem.node.expanded}\"\r\n [attr.aria-label]=\"renderedItem.node.expanded ? this.strings.MsftSmeShell.Angular.DataTable.aria.label.collapse : this.strings.MsftSmeShell.Angular.DataTable.aria.label.expand\">\r\n </span>\r\n <span class=\"sme-table-expander-cell-placeholder\"></span>\r\n </div>\r\n <div *ngIf=\"renderedItem.type===renderedItemTypeEnum.TreeNode && renderedItem.node.isBusy && colIndex===0\"\r\n class=\"sme-table-expander-cell\" [ngStyle]=\"{'padding-left':(renderedItem.depth*16+4)+'px'}\">\r\n <sme-loading-wheel size=\"extra-small\" [inline]=\"true\" [isBackgroundTransparent]=\"true\">\r\n </sme-loading-wheel>\r\n <span class=\"sme-table-expander-cell-placeholder\"></span>\r\n </div>\r\n <div\r\n *ngIf=\"showAsTree && selectionMode==='multiple' && renderedItem.type==renderedItemTypeEnum.TreeNode && colIndex==0\"\r\n class=\"sme-table-cell sme-table-checkbox-container\" role=\"presentation\">\r\n <div class=\"sme-table-checkbox\" role=\"presentation\">\r\n <input type=\"checkbox\" [attr.aria-checked]=\"isItemSelected(renderedItem)?'true':'false'\"\r\n [attr.aria-labelledby]=\"idBag.firstDataColumn + renderedItem.index\"\r\n [checked]=\"isItemSelected(renderedItem)\" (change)=\"onItemCheckBoxClicked(renderedItem)\" />\r\n <label role=\"presentation\"></label>\r\n </div>\r\n </div>\r\n <ng-container *ngIf=\"!editable\">\r\n <div *ngIf=\"!column.bodyTemplate && renderedItem.type!=renderedItemTypeEnum.GroupHeader\"\r\n class=\"sme-table-cell\" [class.sme-table-cell-full-height]=\"autoRowHeight\"\r\n [id]=\"getFirstColumnId(column, renderedItem)\"\r\n [title]=\"getColumnTooltipText(column, renderedItem)\">\r\n {{renderedItem.data?resolveObjectPath(renderedItem.data,column.field):'.'}}</div>\r\n <div\r\n *ngIf=\"renderedItem.type!=renderedItemTypeEnum.GroupHeader && renderedItem.data && column.bodyTemplate\"\r\n class=\"sme-table-cell\" [class.sme-table-cell-height-auto]=\"autoRowHeight\"\r\n [class.sme-table-cell-full-height]=\"autoRowHeight\" [id]=\"getFirstColumnId(column, renderedItem)\"\r\n [title]=\"getColumnTooltipText(column, renderedItem)\">\r\n <sme-data-table-template-loader *ngIf=\"!renderedItem.data.placeholder\"\r\n [template]=\"column.bodyTemplate\" [data]=\"renderedItem.data\" [rowIndex]=\"rowIndex\">\r\n </sme-data-table-template-loader>\r\n </div>\r\n </ng-container>\r\n <ng-container *ngIf=\"editable && !column.bodyEditTemplate\">\r\n <div *ngIf=\"!column.bodyReadTemplate && renderedItem.type!=renderedItemTypeEnum.GroupHeader\"\r\n class=\"sme-table-cell\"\r\n [title]=\"getColumnTooltipText(column, renderedItem)\">\r\n {{renderedItem.data?resolveObjectPath(renderedItem.data.content,column.field):'.'}}</div>\r\n <div\r\n *ngIf=\"renderedItem.type!=renderedItemTypeEnum.GroupHeader && renderedItem.data && column.bodyReadTemplate\"\r\n class=\"sme-table-cell\"\r\n [title]=\"getColumnTooltipText(column, renderedItem)\">\r\n <sme-data-table-template-loader *ngIf=\"!renderedItem.data.placeholder\" [renderedItem]=\"renderedItem\"\r\n [template]=\"column.bodyReadTemplate\" [data]=\"renderedItem.data.content\" [rowIndex]=\"rowIndex\">\r\n </sme-data-table-template-loader>\r\n </div>\r\n </ng-container>\r\n <ng-container *ngIf=\"editable && column.bodyEditTemplate\">\r\n <ng-container *ngIf=\"!shouldShowEditRow(renderedItem)\">\r\n <div *ngIf=\"!column.bodyReadTemplate && renderedItem.type!=renderedItemTypeEnum.GroupHeader\"\r\n class=\"sme-table-cell\"\r\n [title]=\"getColumnTooltipText(column, renderedItem)\">\r\n {{renderedItem.data?resolveObjectPath(renderedItem.data.content,column.field):'.'}}</div>\r\n <div\r\n *ngIf=\"renderedItem.type!=renderedItemTypeEnum.GroupHeader && renderedItem.data && column.bodyReadTemplate\"\r\n class=\"sme-table-cell\"\r\n [title]=\"getColumnTooltipText(column, renderedItem)\">\r\n <sme-data-table-template-loader *ngIf=\"!renderedItem.data.placeholder\"\r\n [template]=\"column.bodyReadTemplate\" [data]=\"renderedItem.data.content\" [rowIndex]=\"rowIndex\">\r\n </sme-data-table-template-loader>\r\n </div>\r\n </ng-container>\r\n <div *ngIf=\"shouldShowEditRow(renderedItem)\" class=\"sme-table-cell sme-table-edit-container\"\r\n [title]=\"getColumnTooltipText(column, renderedItem)\">\r\n <sme-data-table-template-loader *ngIf=\"!renderedItem.data.placeholder\"\r\n [template]=\"column.bodyEditTemplate\" [field]=\"column.field\" [data]=\"renderedItem.data.content\"\r\n [rowIndex]=\"rowIndex\" [renderedItem]=\"renderedItem\"\r\n (validationAlert)=\"onValidationAlertHandler(renderedItem, column.field, $event.alert)\"\r\n (dataChanged)=\"onEditableDataChanged($event.renderedItem,$event.field)\">\r\n </sme-data-table-template-loader>\r\n </div>\r\n </ng-container>\r\n </div>\r\n </div>\r\n <div *ngIf=\"hasValidationError(renderedItem)\" class=\"sme-table-row-validation\">\r\n <div class=\"sme-table-td sme-position-flex-auto\"\r\n [attr.role] = \"selectionMode === 'multiple' ? 'gridcell' : 'presentation'\"\r\n [attr.tabindex]=\"selectionMode==='multiple'?'0':'undefined'\">\r\n <div class=\"sme-table-cell\" role=\"presentation\">\r\n <div *ngFor=\"let validationResultItem of renderedItem.validationResult\">\r\n <sme-validation-alert [alert]=\"validationResultItem.alert\"></sme-validation-alert>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"sme-table-row\" #tempRow>\r\n <div class=\"sme-table-td\" tabindex=\"0\">\r\n <div class=\"sme-table-cell\"> </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <div *ngIf=\"shouldUseLastFocusableShadowElement\" #lastFocusableShadowElement class=\"sme-focus-zone\"\r\n data-sme-last-focusable-shadow-element (focus)=\"onLastFocusableShadowElementFocused($event)\" tabindex=\"0\"></div>\r\n </div>\r\n <div class=\"sme-layout-absolute sme-position-inset-none\"\r\n *ngIf=\"isBusy || (this.nodeNavigatingTask && this.nodeNavigatingTask.isRunning)\">\r\n <sme-loading-wheel [isBackgroundTransparent]=\"true\"></sme-loading-wheel>\r\n </div>\r\n</div>\r\n<div #resizerIndicator\r\n class=\"sme-width-xxs sme-layout-absolute sme-position-stretch-v sme-background-color-base-80 sme-layer-flyout sme-layout-none\">\r\n</div>\r\n" }]
|
|
31291
31615
|
}], function () { return [{ type: i0.Injector }]; }, { resizerIndicator: [{
|
|
31292
31616
|
type: ViewChild,
|
|
31293
31617
|
args: ['resizerIndicator']
|
|
@@ -31516,7 +31840,7 @@ class TreeTableComponent extends DataTableComponent {
|
|
|
31516
31840
|
i0.ɵɵelementEnd();
|
|
31517
31841
|
i0.ɵɵelement(28, "div", 27, 28);
|
|
31518
31842
|
} if (rf & 2) {
|
|
31519
|
-
i0.ɵɵclassProp("sme-shadow-scrolled-content", ctx.isScrolledDown)("sme-table-multi-select", ctx.selectionMode === "multiple")("sme-table-selectable", ctx.selectable)("sme-table-indented", ctx.
|
|
31843
|
+
i0.ɵɵclassProp("sme-shadow-scrolled-content", ctx.isScrolledDown)("sme-table-multi-select", ctx.selectionMode === "multiple")("sme-table-selectable", ctx.selectable)("sme-table-indented", !ctx.noLeftMargin)("sme-table-select-all-enabled", ctx.selectionMode === "multiple" && ctx.showAllItemCheckbox);
|
|
31520
31844
|
i0.ɵɵadvance(5);
|
|
31521
31845
|
i0.ɵɵattribute("role", ctx.selectionMode === "multiple" ? "columnheader" : "presentation");
|
|
31522
31846
|
i0.ɵɵadvance(1);
|
|
@@ -31524,7 +31848,7 @@ class TreeTableComponent extends DataTableComponent {
|
|
|
31524
31848
|
i0.ɵɵadvance(1);
|
|
31525
31849
|
i0.ɵɵproperty("ngForOf", ctx.actualColumns);
|
|
31526
31850
|
i0.ɵɵadvance(1);
|
|
31527
|
-
i0.ɵɵclassProp("sme-table-multi-select", ctx.selectionMode === "multiple")("sme-table-selectable", ctx.selectable)("sme-margin-top-none", !ctx.showHeader)("sme-table-indented", ctx.
|
|
31851
|
+
i0.ɵɵclassProp("sme-table-multi-select", ctx.selectionMode === "multiple")("sme-table-selectable", ctx.selectable)("sme-margin-top-none", !ctx.showHeader)("sme-table-indented", !ctx.noLeftMargin)("sme-table-grid-lines", ctx.showGrid)("sme-table-select-all-enabled", ctx.selectionMode === "multiple" && ctx.showAllItemCheckbox)("sme-table-editable", ctx.editable);
|
|
31528
31852
|
i0.ɵɵadvance(2);
|
|
31529
31853
|
i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction2(38, _c18, ctx.scrollable, ctx.shouldScroll));
|
|
31530
31854
|
i0.ɵɵadvance(2);
|
|
@@ -31546,7 +31870,7 @@ class TreeTableComponent extends DataTableComponent {
|
|
|
31546
31870
|
} }, dependencies: [i1$1.NgClass, i1$1.NgForOf, i1$1.NgIf, i1$1.NgStyle, ResizerComponent, LoadingWheelComponent, TooltipDirective, ValidationAlertComponent, DataTableTemplateLoaderComponent], encapsulation: 2 });
|
|
31547
31871
|
(function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(TreeTableComponent, [{
|
|
31548
31872
|
type: Component,
|
|
31549
|
-
args: [{ selector: 'sme-tree-table', template: "<div role=\"presentation\" class=\"sme-table-header sme-focus-zone sme-data-table-transition\" #header\r\n [class.sme-shadow-scrolled-content]=\"isScrolledDown\" [class.sme-table-multi-select]=\"selectionMode==='multiple'\"\r\n [class.sme-table-selectable]=\"selectable\" [class.sme-table-indented]=\"showLeftMargin\"\r\n [class.sme-table-select-all-enabled]=\"selectionMode==='multiple' && showAllItemCheckbox\">\r\n <!-- According to the accessibility team, data-table headers should be accessible by keyboard\r\n and the resizer should also be accessed by keyboard.-->\r\n <div #headerTable class=\"sme-table sme-table-virtualized sme-table-auto-width-phone-down\" role=\"rowgroup\">\r\n <div class=\"sme-table-row sme-arrange-stack-h sme-position-flex-auto\" role=\"row\"\r\n (keydown)=\"onHeaderTablePressed($event)\">\r\n <div class=\"sme-table-caption\" [attr.role]=\"selectionMode==='multiple'?'columnheader':'presentation'\"\r\n data-uta-id=\"checkboxColumn\">\r\n <div class=\"sme-table-checkbox sme-table-header-checkbox\"\r\n *ngIf=\"selectionMode==='multiple' && showAllItemCheckbox && showHeader\" role=\"presentation\">\r\n <input sme-lint-disable-self type=\"checkbox\" [attr.aria-label]=\"getAllItemCheckBoxAriaLabel()\"\r\n [checked]=\"shouldAllItemCheckBoxChecked()\"\r\n [attr.aria-checked]=\"shouldAllItemCheckBoxChecked()?'true':'false'\" (change)=\"onAllItemCheckBoxClicked()\" />\r\n <label role=\"presentation\"></label>\r\n </div>\r\n </div>\r\n <div *ngFor=\"let column of actualColumns; let colIndex = index\" [attr.field]=\"column.field\"\r\n [ngStyle]=\"{'width': column.width}\"\r\n class=\"sme-table-caption sme-table-column-header sme-position-flex-auto {{column.styleClass}}\"\r\n role=\"presentation\" [attr.data-uta-id]=\"column.utaId\" [attr.column-index]=\"colIndex\">\r\n <div *ngIf=\"column.sortable && column.sortable!='false' && showHeader\"\r\n class=\"sme-table-header-cell sme-focus-zone\" (click)=\"clickColumn(column)\" role=\"columnheader\"\r\n [title]=\"column.header\" aria-live=\"polite\" tabindex=\"0\" [attr.aria-sort]=\"columnSortSettings[column.header]\">\r\n <span>{{column.header}}</span>\r\n <span class=\"sme-icon sme-margin-left-xxs\" [attr.aria-label]=\"column.sortable ? getSortLabel(column) : null\"\r\n [ngClass]=\"{'sme-icon-up':column.sortMode===sortModeEnum.Ascend,'sme-icon-down':column.sortMode===sortModeEnum.Descend}\"></span>\r\n </div>\r\n <div *ngIf=\"!(column.sortable && column.sortable!='false') && showHeader\" class=\"sme-table-header-cell sme-focus-zone\"\r\n role=\"columnheader\" [title]=\"column.header\" tabindex=\"0\">\r\n <span>{{column.header}}</span>\r\n <span class=\"sme-icon sme-margin-left-xxs\" [attr.aria-label]=\"column.sortable ? getSortLabel(column) : null\"\r\n [ngClass]=\"{'sme-icon-up':column.sortMode===sortModeEnum.Ascend,'sme-icon-down':column.sortMode===sortModeEnum.Descend}\"></span>\r\n </div>\r\n <div *ngIf=\"!showHeader\" class=\"sme-table-header-cell\" role=\"columnheader\">\r\n </div>\r\n <sme-resizer [focusable]=\"false\" *ngIf=\"colIndex!==actualColumns.length-1 && showHeader\"\r\n resizerHostSelector=\"div.sme-table-header\" (resized)=\"onColumnResized(colIndex, $event)\"\r\n [visibleToScreenReader]=\"true\" [showResizerCover]=\"false\" orientation=\"left\"\r\n (resizing)=\"onColumnResizing($event)\" class=\"sme-focus-zone\"></sme-resizer>\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n<div class=\"sme-focus-zone sme-table-container sme-data-table-transition\" #content role=\"presentation\"\r\n [class.sme-table-multi-select]=\"selectionMode==='multiple'\" [class.sme-table-selectable]=\"selectable\"\r\n [class.sme-margin-top-none]=\"!showHeader\" [class.sme-table-indented]=\"showLeftMargin\"\r\n [class.sme-table-grid-lines]=\"showGrid\"\r\n [class.sme-table-select-all-enabled]=\"selectionMode==='multiple' && showAllItemCheckbox\"\r\n [class.sme-table-editable]=\"editable\">\r\n <div class=\"sme-table-scroll-container sme-layout-absolute sme-position-inset-none\"\r\n [ngClass]=\"{'sme-layout-absolute sme-position-inset-none': scrollable, 'sme-scrollable': shouldScroll}\"\r\n #scrollContainer role=\"rowgroup\">\r\n <div role=\"row\" class=\"sme-table-row sme-table-row-placeholder\" #emptyMessage tabindex=\"0\"\r\n *ngIf=\"showNoRecordsMessage()\" data-uta-id=\"empty-table-message\">\r\n <sme-loading-wheel *ngIf=\"isLoading || !isColumnWidthCalculated\" [message]=\"loadingMessage\">\r\n </sme-loading-wheel>\r\n <div class=\"sme-table-cell sme-table-cell-placeholder\"> </div>\r\n <div role=\"gridcell\" class=\"sme-table-cell\">{{getNoRecordsMessage()}}</div>\r\n </div>\r\n <div class=\"sme-layout-relative sme-position-stretch-h sme-arrange-overflow-hide\" #scrollBody role=\"presentation\">\r\n <div class=\"sme-table sme-table-scrollable sme-table-virtualized\" #scrollAboveData\r\n [ngStyle]=\"{top: scrollAboveDataStyleTop}\" [attr.aria-hidden]=\"true\" sme-lint-disable>\r\n <!-- Above view port -->\r\n <div *ngFor=\"let renderedItem of renderedItemsAboveViewPort; let rowIndex = index\"\r\n class=\"sme-table-row sme-table-row-data sme-table-row-selectable\"\r\n [class.sme-table-row-active]=\"renderedItem.index === getActiveRenderedItemIndex()\"\r\n [class.sme-table-row-selected]=\"renderedItem.index === getActiveRenderedItemIndex() || isItemSelected(renderedItem)\"\r\n [class.sme-table-group-item]=\"renderedItem.type === renderedItemTypeEnum.GroupItem\"\r\n [class.sme-table-group-header]=\"renderedItem.type === renderedItemTypeEnum.GroupHeader\"\r\n [class.sme-checked]=\"isItemSelected(renderedItem)\">\r\n <div class=\"sme-arrange-stack-h\">\r\n <div class=\"sme-table-td sme-position-flex-auto\">\r\n <div class=\"sme-table-cell\">\r\n <div *ngIf=\"!showAsTree\" class=\"sme-table-checkbox\" role=\"presentation\">\r\n <input type=\"checkbox\" [checked]=\"isItemSelected(renderedItem)\" />\r\n <label role=\"presentation\"></label>\r\n </div>\r\n </div>\r\n </div>\r\n <div *ngFor=\"let column of actualColumns; let colIndex=index\"\r\n [ngClass]=\"{'sme-table-column-first': isFirstDataColumn(column), 'sme-table-group-header-cell': renderedItem.type===renderedItemTypeEnum.GroupHeader}\"\r\n [ngStyle]=\"{'width':column.domWidth+'px'}\"\r\n class=\"sme-table-td sme-position-flex-auto {{column.styleClass}}\"\r\n [attr.tabindex]=\"isTreeTableParentNode(renderedItem) ? -1 : 0\">\r\n <div class=\"sme-screen-reader sme-screen-reader-disable-copy\" *ngIf=\"isFirstDataColumn(column)\">\r\n {{getAdditionalScreenRecorderContent(renderedItem)}}</div>\r\n <div *ngIf=\"renderedItem.type===renderedItemTypeEnum.GroupHeader && colIndex===0\" class=\"sme-table-cell\"\r\n (click)=\"clickGroupToggle(renderedItem)\">\r\n <span *ngIf=\"useGroupToggle\" class=\"sme-icon sme-icon-size-xxs sme-margin-right-xxs\"\r\n [ngClass]=\"{'sme-icon-chevronDown':isGroupExpanded(renderedItem.data), 'sme-icon-chevronRight':!isGroupExpanded(renderedItem.data)}\">\r\n </span>\r\n <span *ngIf=\"!this.groupHeaderTemplate\">\r\n {{renderedItem.data}}\r\n </span>\r\n <span *ngIf=\"this.groupHeaderTemplate\">\r\n <sme-data-table-template-loader [template]=\"this.groupHeaderTemplate\" [data]=\"renderedItem.data\">\r\n </sme-data-table-template-loader>\r\n </span>\r\n </div>\r\n <div\r\n *ngIf=\"renderedItem.type===renderedItemTypeEnum.TreeNode && !renderedItem.node.isBusy && colIndex===0\"\r\n class=\"sme-table-expander-cell\" [ngStyle]=\"{'padding-left':(renderedItem.depth*16+4)+'px'}\"\r\n [ngClass]=\"{'sme-expandable': renderedItem.hasChildren && !renderedItem.node.isLeaf}\">\r\n <span class=\"sme-icon sme-icon-size-xxs\" role=\"button\"\r\n [attr.aria-expanded]=\"renderedItem.node.expanded?'true':'false'\"\r\n (click)=\"clickTreeToggle($event, renderedItem)\"\r\n [ngClass]=\"{'sme-icon-chevronDown':renderedItem.node.expanded, 'sme-icon-chevronRight':!renderedItem.node.expanded}\"\r\n [attr.aria-label]=\"renderedItem.node.expanded ? this.strings.MsftSmeShell.Angular.DataTable.aria.label.collapse : this.strings.MsftSmeShell.Angular.DataTable.aria.label.expand\">\r\n </span>\r\n <span class=\"sme-table-expander-cell-placeholder\"></span>\r\n </div>\r\n <div *ngIf=\"renderedItem.type===renderedItemTypeEnum.TreeNode && renderedItem.node.isBusy && colIndex===0\"\r\n class=\"sme-table-expander-cell\" [ngStyle]=\"{'padding-left':(renderedItem.depth*16+4)+'px'}\">\r\n <sme-loading-wheel size=\"extra-small\" [inline]=\"true\" [isBackgroundTransparent]=\"true\">\r\n </sme-loading-wheel>\r\n <span class=\"sme-table-expander-cell-placeholder\"></span>\r\n </div>\r\n <div\r\n *ngIf=\"showAsTree && selectionMode==='multiple' && renderedItem.type==renderedItemTypeEnum.TreeNode && colIndex==0\"\r\n class=\"sme-table-cell sme-table-checkbox-container\" role=\"presentation\">\r\n <div class=\"sme-table-checkbox\" role=\"presentation\">\r\n <input type=\"checkbox\" [checked]=\"isItemSelected(renderedItem)\"\r\n (change)=\"onItemCheckBoxClicked(renderedItem)\" />\r\n <label role=\"presentation\"></label>\r\n </div>\r\n </div>\r\n <ng-container *ngIf=\"!editable\">\r\n <div *ngIf=\"!column.bodyTemplate && renderedItem.type!=renderedItemTypeEnum.GroupHeader\"\r\n class=\"sme-table-cell\" [class.sme-table-cell-full-height]=\"autoRowHeight\">\r\n {{renderedItem.data?resolveObjectPath(renderedItem.data,column.field):'.'}}\r\n </div>\r\n <div\r\n *ngIf=\"renderedItem.type!=renderedItemTypeEnum.GroupHeader && renderedItem.data && column.bodyTemplate\"\r\n [class.sme-table-cell-full-height]=\"autoRowHeight\" [class.sme-table-cell-height-auto]=\"autoRowHeight\"\r\n class=\"sme-table-cell\">\r\n <sme-data-table-template-loader *ngIf=\"!renderedItem.data.placeholder\"\r\n [template]=\"column.bodyTemplate\" [data]=\"renderedItem.data\" [rowIndex]=\"rowIndex\">\r\n </sme-data-table-template-loader>\r\n </div>\r\n </ng-container>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"sme-table sme-table-scrollable\" #scrollData [class.sme-table-virtualized]=\"!disableUIVirtualization\"\r\n [ngStyle]=\"{top: scrollDataStyleTop}\" sme-lint-disable role=\"presentation\">\r\n <div *ngFor=\"let renderedItem of renderedItemsInAndBelowViewPort; let rowIndex = index\"\r\n (keydown)=\"onContentTablePressed($event)\" (keyup)=\"onContentTableKeyUp($event)\"\r\n (contextmenu)=\"enableRightClickSelect ? selectItem($event, renderedItem) : true\"\r\n (click)=\"selectItem($event, renderedItem)\" class=\"sme-table-row sme-table-row-data sme-table-row-selectable\"\r\n [class.sme-table-row-active]=\"renderedItem.index === getActiveRenderedItemIndex()\"\r\n [class.sme-table-row-selected]=\"rowDisplayAsSelected(renderedItem)\"\r\n [class.sme-table-group-item]=\"renderedItem.type === renderedItemTypeEnum.GroupItem\"\r\n [class.sme-table-group-header]=\"renderedItem.type === renderedItemTypeEnum.GroupHeader\"\r\n [class.sme-checked]=\"isItemSelected(renderedItem)\" [class.sme-table-row-editable]=\"editable\"\r\n [class.sme-has-validation-error]=\"hasValidationError(renderedItem)\"\r\n [class.sme-data-table-row-new-item]=\"renderedItem?.data?.isNewRow\"\r\n [attr.tabindex]=\"renderedItem.index >= 0 ? 0 : undefined\" (dblclick)=\"doubleClickRow($event,renderedItem)\"\r\n (focus)=\"onContentItemFocused($event, renderedItem)\" (focusin)=\"onContentItemFocused($event, renderedItem)\"\r\n (focusout)=\"onContentItemBlurred($event, renderedItem)\" [attr.data-rendered-item-index]=\"renderedItem.index\"\r\n [attr.aria-rowindex]=\"renderedItem.index+2\" [attr.aria-selected]=\"isItemSelected(renderedItem)?'true':'false'\"\r\n (mouseenter)=\"setHoveredRenderedItem(renderedItem)\" (mouseleave)=\"unsetHoveredRenderedItem(renderedItem)\"\r\n role=\"row\" [attr.aria-expanded]=\"getAriaExpandedAttributeValue(renderedItem)\"\r\n [attr.aria-level]=\"showAsTree && renderedItem.depth ? (renderedItem.depth+1):undefined\">\r\n <div class=\"sme-arrange-stack-h\" role=\"presentation\">\r\n <div class=\"sme-table-td sme-position-flex-auto\"\r\n [attr.role] = \"selectionMode === 'multiple' ? 'gridcell': 'presentation'\">\r\n <div *ngIf=\"!showAsTree\" class=\"sme-table-cell sme-table-checkbox-container\" role=\"presentation\"\r\n [class.sme-table-cell-full-height]=\"autoRowHeight\">\r\n <div class=\"sme-table-checkbox\" role=\"presentation\">\r\n <input type=\"checkbox\" [attr.aria-checked]=\"isItemSelected(renderedItem)?'true':'false'\"\r\n [attr.aria-labelledby]=\"idBag.firstDataColumn + renderedItem.index\"\r\n [checked]=\"isItemSelected(renderedItem)\" (change)=\"onItemCheckBoxClicked(renderedItem)\" />\r\n <label role=\"presentation\"></label>\r\n </div>\r\n </div>\r\n </div>\r\n <div *ngFor=\"let column of actualColumns; let colIndex=index\"\r\n [ngClass]=\"{'sme-table-column-first': isFirstDataColumn(column), 'sme-table-group-header-cell': renderedItem.type===renderedItemTypeEnum.GroupHeader}\"\r\n [ngStyle]=\"{'width':column.domWidth+'px'}\"\r\n class=\"sme-table-td sme-position-flex-auto {{column.styleClass}}\"\r\n role=\"gridcell\" [attr.aria-rowindex]=\"renderedItem.index+2\"\r\n [attr.tabindex]=\"isTreeTableParentNode(renderedItem) ? -1 : 0\">\r\n <div class=\"sme-screen-reader sme-screen-reader-disable-copy\" *ngIf=\"isFirstDataColumn(column)\">\r\n {{getAdditionalScreenRecorderContent(renderedItem)}}</div>\r\n <div *ngIf=\"renderedItem.type===renderedItemTypeEnum.GroupHeader && colIndex===0\" class=\"sme-table-cell\"\r\n (click)=\"clickGroupToggle(renderedItem)\" [id]=\"getFirstColumnId(column, renderedItem)\">\r\n <span *ngIf=\"useGroupToggle\" class=\"sme-icon sme-icon-size-xxs sme-margin-right-xxs\"\r\n [ngClass]=\"{'sme-icon-chevronDown':isGroupExpanded(renderedItem.data), 'sme-icon-chevronRight':!isGroupExpanded(renderedItem.data)}\">\r\n </span>\r\n <span *ngIf=\"!this.groupHeaderTemplate\">\r\n {{renderedItem.data}}\r\n </span>\r\n <span *ngIf=\"this.groupHeaderTemplate\">\r\n <sme-data-table-template-loader [template]=\"this.groupHeaderTemplate\" [data]=\"renderedItem.data\">\r\n </sme-data-table-template-loader>\r\n </span>\r\n </div>\r\n <div\r\n *ngIf=\"renderedItem.type===renderedItemTypeEnum.TreeNode && !renderedItem.node.isBusy && colIndex===0\"\r\n class=\"sme-table-expander-cell\" [ngStyle]=\"{'padding-left':(renderedItem.depth*16+4)+'px'}\"\r\n [ngClass]=\"{'sme-expandable': renderedItem.hasChildren && !renderedItem.node.isLeaf}\">\r\n <span class=\"sme-icon sme-icon-size-xxs\" role=\"button\"\r\n [attr.aria-expanded]=\"renderedItem.node.expanded?'true':'false'\"\r\n (click)=\"clickTreeToggle($event, renderedItem)\"\r\n [ngClass]=\"{'sme-icon-chevronDown':renderedItem.node.expanded, 'sme-icon-chevronRight':!renderedItem.node.expanded}\"\r\n [attr.aria-label]=\"renderedItem.node.expanded ? this.strings.MsftSmeShell.Angular.DataTable.aria.label.collapse : this.strings.MsftSmeShell.Angular.DataTable.aria.label.expand\">\r\n </span>\r\n <span class=\"sme-table-expander-cell-placeholder\"></span>\r\n </div>\r\n <div *ngIf=\"renderedItem.type===renderedItemTypeEnum.TreeNode && renderedItem.node.isBusy && colIndex===0\"\r\n class=\"sme-table-expander-cell\" [ngStyle]=\"{'padding-left':(renderedItem.depth*16+4)+'px'}\">\r\n <sme-loading-wheel size=\"extra-small\" [inline]=\"true\" [isBackgroundTransparent]=\"true\">\r\n </sme-loading-wheel>\r\n <span class=\"sme-table-expander-cell-placeholder\"></span>\r\n </div>\r\n <div\r\n *ngIf=\"showAsTree && selectionMode==='multiple' && renderedItem.type==renderedItemTypeEnum.TreeNode && colIndex==0\"\r\n class=\"sme-table-cell sme-table-checkbox-container\" role=\"presentation\">\r\n <div class=\"sme-table-checkbox\" role=\"presentation\">\r\n <input type=\"checkbox\" [attr.aria-checked]=\"isItemSelected(renderedItem)?'true':'false'\"\r\n [attr.aria-labelledby]=\"idBag.firstDataColumn + renderedItem.index\"\r\n [checked]=\"isItemSelected(renderedItem)\" (change)=\"onItemCheckBoxClicked(renderedItem)\" />\r\n <label role=\"presentation\"></label>\r\n </div>\r\n </div>\r\n <ng-container *ngIf=\"!editable\">\r\n <div *ngIf=\"!column.bodyTemplate && renderedItem.type!=renderedItemTypeEnum.GroupHeader\"\r\n class=\"sme-table-cell\" [class.sme-table-cell-full-height]=\"autoRowHeight\"\r\n [id]=\"getFirstColumnId(column, renderedItem)\"\r\n [title]=\"getColumnTooltipText(column, renderedItem)\">\r\n {{renderedItem.data?resolveObjectPath(renderedItem.data,column.field):'.'}}</div>\r\n <div\r\n *ngIf=\"renderedItem.type!=renderedItemTypeEnum.GroupHeader && renderedItem.data && column.bodyTemplate\"\r\n class=\"sme-table-cell\" [class.sme-table-cell-height-auto]=\"autoRowHeight\"\r\n [class.sme-table-cell-full-height]=\"autoRowHeight\" [id]=\"getFirstColumnId(column, renderedItem)\"\r\n [title]=\"getColumnTooltipText(column, renderedItem)\">\r\n <sme-data-table-template-loader *ngIf=\"!renderedItem.data.placeholder\"\r\n [template]=\"column.bodyTemplate\" [data]=\"renderedItem.data\" [rowIndex]=\"rowIndex\">\r\n </sme-data-table-template-loader>\r\n </div>\r\n </ng-container>\r\n <ng-container *ngIf=\"editable && !column.bodyEditTemplate\">\r\n <div *ngIf=\"!column.bodyReadTemplate && renderedItem.type!=renderedItemTypeEnum.GroupHeader\"\r\n class=\"sme-table-cell\"\r\n [title]=\"getColumnTooltipText(column, renderedItem)\">\r\n {{renderedItem.data?resolveObjectPath(renderedItem.data.content,column.field):'.'}}</div>\r\n <div\r\n *ngIf=\"renderedItem.type!=renderedItemTypeEnum.GroupHeader && renderedItem.data && column.bodyReadTemplate\"\r\n class=\"sme-table-cell\"\r\n [title]=\"getColumnTooltipText(column, renderedItem)\">\r\n <sme-data-table-template-loader *ngIf=\"!renderedItem.data.placeholder\" [renderedItem]=\"renderedItem\"\r\n [template]=\"column.bodyReadTemplate\" [data]=\"renderedItem.data.content\" [rowIndex]=\"rowIndex\">\r\n </sme-data-table-template-loader>\r\n </div>\r\n </ng-container>\r\n <ng-container *ngIf=\"editable && column.bodyEditTemplate\">\r\n <ng-container *ngIf=\"!shouldShowEditRow(renderedItem)\">\r\n <div *ngIf=\"!column.bodyReadTemplate && renderedItem.type!=renderedItemTypeEnum.GroupHeader\"\r\n class=\"sme-table-cell\"\r\n [title]=\"getColumnTooltipText(column, renderedItem)\">\r\n {{renderedItem.data?resolveObjectPath(renderedItem.data.content,column.field):'.'}}</div>\r\n <div\r\n *ngIf=\"renderedItem.type!=renderedItemTypeEnum.GroupHeader && renderedItem.data && column.bodyReadTemplate\"\r\n class=\"sme-table-cell\"\r\n [title]=\"getColumnTooltipText(column, renderedItem)\">\r\n <sme-data-table-template-loader *ngIf=\"!renderedItem.data.placeholder\"\r\n [template]=\"column.bodyReadTemplate\" [data]=\"renderedItem.data.content\" [rowIndex]=\"rowIndex\">\r\n </sme-data-table-template-loader>\r\n </div>\r\n </ng-container>\r\n <div *ngIf=\"shouldShowEditRow(renderedItem)\" class=\"sme-table-cell sme-table-edit-container\"\r\n [title]=\"getColumnTooltipText(column, renderedItem)\">\r\n <sme-data-table-template-loader *ngIf=\"!renderedItem.data.placeholder\"\r\n [template]=\"column.bodyEditTemplate\" [field]=\"column.field\" [data]=\"renderedItem.data.content\"\r\n [rowIndex]=\"rowIndex\" [renderedItem]=\"renderedItem\"\r\n (validationAlert)=\"onValidationAlertHandler(renderedItem, column.field, $event.alert)\"\r\n (dataChanged)=\"onEditableDataChanged($event.renderedItem,$event.field)\">\r\n </sme-data-table-template-loader>\r\n </div>\r\n </ng-container>\r\n </div>\r\n </div>\r\n <div *ngIf=\"hasValidationError(renderedItem)\" class=\"sme-table-row-validation\">\r\n <div class=\"sme-table-td sme-position-flex-auto\"\r\n [attr.role] = \"selectionMode === 'multiple' ? 'gridcell' : 'presentation'\"\r\n [attr.tabindex]=\"selectionMode==='multiple'?'0':'undefined'\">\r\n <div class=\"sme-table-cell\" role=\"presentation\">\r\n <div *ngFor=\"let validationResultItem of renderedItem.validationResult\">\r\n <sme-validation-alert [alert]=\"validationResultItem.alert\"></sme-validation-alert>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"sme-table-row\" #tempRow>\r\n <div class=\"sme-table-td\" tabindex=\"0\">\r\n <div class=\"sme-table-cell\"> </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <div *ngIf=\"shouldUseLastFocusableShadowElement\" #lastFocusableShadowElement class=\"sme-focus-zone\"\r\n data-sme-last-focusable-shadow-element (focus)=\"onLastFocusableShadowElementFocused($event)\" tabindex=\"0\"></div>\r\n </div>\r\n <div class=\"sme-layout-absolute sme-position-inset-none\"\r\n *ngIf=\"isBusy || (this.nodeNavigatingTask && this.nodeNavigatingTask.isRunning)\">\r\n <sme-loading-wheel [isBackgroundTransparent]=\"true\"></sme-loading-wheel>\r\n </div>\r\n</div>\r\n<div #resizerIndicator\r\n class=\"sme-width-xxs sme-layout-absolute sme-position-stretch-v sme-background-color-base-80 sme-layer-flyout sme-layout-none\">\r\n</div>\r\n" }]
|
|
31873
|
+
args: [{ selector: 'sme-tree-table', template: "<div role=\"presentation\" class=\"sme-table-header sme-focus-zone sme-data-table-transition\" #header\r\n [class.sme-shadow-scrolled-content]=\"isScrolledDown\" [class.sme-table-multi-select]=\"selectionMode==='multiple'\"\r\n [class.sme-table-selectable]=\"selectable\" [class.sme-table-indented]=\"!noLeftMargin\"\r\n [class.sme-table-select-all-enabled]=\"selectionMode==='multiple' && showAllItemCheckbox\">\r\n <!-- According to the accessibility team, data-table headers should be accessible by keyboard\r\n and the resizer should also be accessed by keyboard.-->\r\n <div #headerTable class=\"sme-table sme-table-virtualized sme-table-auto-width-phone-down\" role=\"rowgroup\">\r\n <div class=\"sme-table-row sme-arrange-stack-h sme-position-flex-auto\" role=\"row\"\r\n (keydown)=\"onHeaderTablePressed($event)\">\r\n <div class=\"sme-table-caption\" [attr.role]=\"selectionMode==='multiple'?'columnheader':'presentation'\"\r\n data-uta-id=\"checkboxColumn\">\r\n <div class=\"sme-table-checkbox sme-table-header-checkbox\"\r\n *ngIf=\"selectionMode==='multiple' && showAllItemCheckbox && showHeader\" role=\"presentation\">\r\n <input sme-lint-disable-self type=\"checkbox\" [attr.aria-label]=\"getAllItemCheckBoxAriaLabel()\"\r\n [checked]=\"shouldAllItemCheckBoxChecked()\"\r\n [attr.aria-checked]=\"shouldAllItemCheckBoxChecked()?'true':'false'\" (change)=\"onAllItemCheckBoxClicked()\" />\r\n <label role=\"presentation\"></label>\r\n </div>\r\n </div>\r\n <div *ngFor=\"let column of actualColumns; let colIndex = index\" [attr.field]=\"column.field\"\r\n [ngStyle]=\"{'width': column.width}\"\r\n class=\"sme-table-caption sme-table-column-header sme-position-flex-auto {{column.styleClass}}\"\r\n role=\"presentation\" [attr.data-uta-id]=\"column.utaId\" [attr.column-index]=\"colIndex\">\r\n <div *ngIf=\"column.sortable && column.sortable!='false' && showHeader\"\r\n class=\"sme-table-header-cell sme-focus-zone\" (click)=\"clickColumn(column)\" role=\"columnheader\"\r\n [title]=\"column.header\" aria-live=\"polite\" tabindex=\"0\" [attr.aria-sort]=\"columnSortSettings[column.header]\">\r\n <span>{{column.header}}</span>\r\n <span class=\"sme-icon sme-margin-left-xxs\" [attr.aria-label]=\"column.sortable ? getSortLabel(column) : null\"\r\n [ngClass]=\"{'sme-icon-up':column.sortMode===sortModeEnum.Ascend,'sme-icon-down':column.sortMode===sortModeEnum.Descend}\"></span>\r\n </div>\r\n <div *ngIf=\"!(column.sortable && column.sortable!='false') && showHeader\" class=\"sme-table-header-cell sme-focus-zone\"\r\n role=\"columnheader\" [title]=\"column.header\" tabindex=\"0\">\r\n <span>{{column.header}}</span>\r\n <span class=\"sme-icon sme-margin-left-xxs\" [attr.aria-label]=\"column.sortable ? getSortLabel(column) : null\"\r\n [ngClass]=\"{'sme-icon-up':column.sortMode===sortModeEnum.Ascend,'sme-icon-down':column.sortMode===sortModeEnum.Descend}\"></span>\r\n </div>\r\n <div *ngIf=\"!showHeader\" class=\"sme-table-header-cell\" role=\"columnheader\">\r\n </div>\r\n <sme-resizer [focusable]=\"false\" *ngIf=\"colIndex!==actualColumns.length-1 && showHeader\"\r\n resizerHostSelector=\"div.sme-table-header\" (resized)=\"onColumnResized(colIndex, $event)\"\r\n [visibleToScreenReader]=\"true\" [showResizerCover]=\"false\" orientation=\"left\"\r\n (resizing)=\"onColumnResizing($event)\" class=\"sme-focus-zone\"></sme-resizer>\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n<div class=\"sme-focus-zone sme-table-container sme-data-table-transition\" #content role=\"presentation\"\r\n [class.sme-table-multi-select]=\"selectionMode==='multiple'\" [class.sme-table-selectable]=\"selectable\"\r\n [class.sme-margin-top-none]=\"!showHeader\" [class.sme-table-indented]=\"!noLeftMargin\"\r\n [class.sme-table-grid-lines]=\"showGrid\"\r\n [class.sme-table-select-all-enabled]=\"selectionMode==='multiple' && showAllItemCheckbox\"\r\n [class.sme-table-editable]=\"editable\">\r\n <div class=\"sme-table-scroll-container sme-layout-absolute sme-position-inset-none\"\r\n [ngClass]=\"{'sme-layout-absolute sme-position-inset-none': scrollable, 'sme-scrollable': shouldScroll}\"\r\n #scrollContainer role=\"rowgroup\">\r\n <div role=\"row\" class=\"sme-table-row sme-table-row-placeholder\" #emptyMessage tabindex=\"0\"\r\n *ngIf=\"showNoRecordsMessage()\" data-uta-id=\"empty-table-message\">\r\n <sme-loading-wheel *ngIf=\"isLoading || !isColumnWidthCalculated\" [message]=\"loadingMessage\">\r\n </sme-loading-wheel>\r\n <div class=\"sme-table-cell sme-table-cell-placeholder\"> </div>\r\n <div role=\"gridcell\" class=\"sme-table-cell\">{{getNoRecordsMessage()}}</div>\r\n </div>\r\n <div class=\"sme-layout-relative sme-position-stretch-h sme-arrange-overflow-hide\" #scrollBody role=\"presentation\">\r\n <div class=\"sme-table sme-table-scrollable sme-table-virtualized\" #scrollAboveData\r\n [ngStyle]=\"{top: scrollAboveDataStyleTop}\" [attr.aria-hidden]=\"true\" sme-lint-disable>\r\n <!-- Above view port -->\r\n <div *ngFor=\"let renderedItem of renderedItemsAboveViewPort; let rowIndex = index\"\r\n class=\"sme-table-row sme-table-row-data sme-table-row-selectable\"\r\n [class.sme-table-row-active]=\"renderedItem.index === getActiveRenderedItemIndex()\"\r\n [class.sme-table-row-selected]=\"renderedItem.index === getActiveRenderedItemIndex() || isItemSelected(renderedItem)\"\r\n [class.sme-table-group-item]=\"renderedItem.type === renderedItemTypeEnum.GroupItem\"\r\n [class.sme-table-group-header]=\"renderedItem.type === renderedItemTypeEnum.GroupHeader\"\r\n [class.sme-checked]=\"isItemSelected(renderedItem)\">\r\n <div class=\"sme-arrange-stack-h\">\r\n <div class=\"sme-table-td sme-position-flex-auto\">\r\n <div class=\"sme-table-cell\">\r\n <div *ngIf=\"!showAsTree\" class=\"sme-table-checkbox\" role=\"presentation\">\r\n <input type=\"checkbox\" [checked]=\"isItemSelected(renderedItem)\" />\r\n <label role=\"presentation\"></label>\r\n </div>\r\n </div>\r\n </div>\r\n <div *ngFor=\"let column of actualColumns; let colIndex=index\"\r\n [ngClass]=\"{'sme-table-column-first': isFirstDataColumn(column), 'sme-table-group-header-cell': renderedItem.type===renderedItemTypeEnum.GroupHeader}\"\r\n [ngStyle]=\"{'width':column.domWidth+'px'}\"\r\n class=\"sme-table-td sme-position-flex-auto {{column.styleClass}}\"\r\n [attr.tabindex]=\"isTreeTableParentNode(renderedItem) ? -1 : 0\">\r\n <div class=\"sme-screen-reader sme-screen-reader-disable-copy\" *ngIf=\"isFirstDataColumn(column)\">\r\n {{getAdditionalScreenRecorderContent(renderedItem)}}</div>\r\n <div *ngIf=\"renderedItem.type===renderedItemTypeEnum.GroupHeader && colIndex===0\" class=\"sme-table-cell\"\r\n (click)=\"clickGroupToggle(renderedItem)\">\r\n <span *ngIf=\"useGroupToggle\" class=\"sme-icon sme-icon-size-xxs sme-margin-right-xxs\"\r\n [ngClass]=\"{'sme-icon-chevronDown':isGroupExpanded(renderedItem.data), 'sme-icon-chevronRight':!isGroupExpanded(renderedItem.data)}\">\r\n </span>\r\n <span *ngIf=\"!this.groupHeaderTemplate\">\r\n {{renderedItem.data}}\r\n </span>\r\n <span *ngIf=\"this.groupHeaderTemplate\">\r\n <sme-data-table-template-loader [template]=\"this.groupHeaderTemplate\" [data]=\"renderedItem.data\">\r\n </sme-data-table-template-loader>\r\n </span>\r\n </div>\r\n <div\r\n *ngIf=\"renderedItem.type===renderedItemTypeEnum.TreeNode && !renderedItem.node.isBusy && colIndex===0\"\r\n class=\"sme-table-expander-cell\" [ngStyle]=\"{'padding-left':(renderedItem.depth*16+4)+'px'}\"\r\n [ngClass]=\"{'sme-expandable': renderedItem.hasChildren && !renderedItem.node.isLeaf}\">\r\n <span class=\"sme-icon sme-icon-size-xxs\" role=\"button\"\r\n [attr.aria-expanded]=\"renderedItem.node.expanded?'true':'false'\"\r\n (click)=\"clickTreeToggle($event, renderedItem)\"\r\n [ngClass]=\"{'sme-icon-chevronDown':renderedItem.node.expanded, 'sme-icon-chevronRight':!renderedItem.node.expanded}\"\r\n [attr.aria-label]=\"renderedItem.node.expanded ? this.strings.MsftSmeShell.Angular.DataTable.aria.label.collapse : this.strings.MsftSmeShell.Angular.DataTable.aria.label.expand\">\r\n </span>\r\n <span class=\"sme-table-expander-cell-placeholder\"></span>\r\n </div>\r\n <div *ngIf=\"renderedItem.type===renderedItemTypeEnum.TreeNode && renderedItem.node.isBusy && colIndex===0\"\r\n class=\"sme-table-expander-cell\" [ngStyle]=\"{'padding-left':(renderedItem.depth*16+4)+'px'}\">\r\n <sme-loading-wheel size=\"extra-small\" [inline]=\"true\" [isBackgroundTransparent]=\"true\">\r\n </sme-loading-wheel>\r\n <span class=\"sme-table-expander-cell-placeholder\"></span>\r\n </div>\r\n <div\r\n *ngIf=\"showAsTree && selectionMode==='multiple' && renderedItem.type==renderedItemTypeEnum.TreeNode && colIndex==0\"\r\n class=\"sme-table-cell sme-table-checkbox-container\" role=\"presentation\">\r\n <div class=\"sme-table-checkbox\" role=\"presentation\">\r\n <input type=\"checkbox\" [checked]=\"isItemSelected(renderedItem)\"\r\n (change)=\"onItemCheckBoxClicked(renderedItem)\" />\r\n <label role=\"presentation\"></label>\r\n </div>\r\n </div>\r\n <ng-container *ngIf=\"!editable\">\r\n <div *ngIf=\"!column.bodyTemplate && renderedItem.type!=renderedItemTypeEnum.GroupHeader\"\r\n class=\"sme-table-cell\" [class.sme-table-cell-full-height]=\"autoRowHeight\">\r\n {{renderedItem.data?resolveObjectPath(renderedItem.data,column.field):'.'}}\r\n </div>\r\n <div\r\n *ngIf=\"renderedItem.type!=renderedItemTypeEnum.GroupHeader && renderedItem.data && column.bodyTemplate\"\r\n [class.sme-table-cell-full-height]=\"autoRowHeight\" [class.sme-table-cell-height-auto]=\"autoRowHeight\"\r\n class=\"sme-table-cell\">\r\n <sme-data-table-template-loader *ngIf=\"!renderedItem.data.placeholder\"\r\n [template]=\"column.bodyTemplate\" [data]=\"renderedItem.data\" [rowIndex]=\"rowIndex\">\r\n </sme-data-table-template-loader>\r\n </div>\r\n </ng-container>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"sme-table sme-table-scrollable\" #scrollData [class.sme-table-virtualized]=\"!disableUIVirtualization\"\r\n [ngStyle]=\"{top: scrollDataStyleTop}\" sme-lint-disable role=\"presentation\">\r\n <div *ngFor=\"let renderedItem of renderedItemsInAndBelowViewPort; let rowIndex = index\"\r\n (keydown)=\"onContentTablePressed($event)\" (keyup)=\"onContentTableKeyUp($event)\"\r\n (contextmenu)=\"enableRightClickSelect ? selectItem($event, renderedItem) : true\"\r\n (click)=\"selectItem($event, renderedItem)\" class=\"sme-table-row sme-table-row-data sme-table-row-selectable\"\r\n [class.sme-table-row-active]=\"renderedItem.index === getActiveRenderedItemIndex()\"\r\n [class.sme-table-row-selected]=\"rowDisplayAsSelected(renderedItem)\"\r\n [class.sme-table-group-item]=\"renderedItem.type === renderedItemTypeEnum.GroupItem\"\r\n [class.sme-table-group-header]=\"renderedItem.type === renderedItemTypeEnum.GroupHeader\"\r\n [class.sme-checked]=\"isItemSelected(renderedItem)\" [class.sme-table-row-editable]=\"editable\"\r\n [class.sme-has-validation-error]=\"hasValidationError(renderedItem)\"\r\n [class.sme-data-table-row-new-item]=\"renderedItem?.data?.isNewRow\"\r\n [attr.tabindex]=\"renderedItem.index >= 0 ? 0 : undefined\" (dblclick)=\"doubleClickRow($event,renderedItem)\"\r\n (focus)=\"onContentItemFocused($event, renderedItem)\" (focusin)=\"onContentItemFocused($event, renderedItem)\"\r\n (focusout)=\"onContentItemBlurred($event, renderedItem)\" [attr.data-rendered-item-index]=\"renderedItem.index\"\r\n [attr.aria-rowindex]=\"renderedItem.index+2\" [attr.aria-selected]=\"isItemSelected(renderedItem)?'true':'false'\"\r\n (mouseenter)=\"setHoveredRenderedItem(renderedItem)\" (mouseleave)=\"unsetHoveredRenderedItem(renderedItem)\"\r\n role=\"row\" [attr.aria-expanded]=\"getAriaExpandedAttributeValue(renderedItem)\"\r\n [attr.aria-level]=\"showAsTree && renderedItem.depth ? (renderedItem.depth+1):undefined\">\r\n <div class=\"sme-arrange-stack-h\" role=\"presentation\">\r\n <div class=\"sme-table-td sme-position-flex-auto\"\r\n [attr.role] = \"selectionMode === 'multiple' ? 'gridcell': 'presentation'\">\r\n <div *ngIf=\"!showAsTree\" class=\"sme-table-cell sme-table-checkbox-container\" role=\"presentation\"\r\n [class.sme-table-cell-full-height]=\"autoRowHeight\">\r\n <div class=\"sme-table-checkbox\" role=\"presentation\">\r\n <input type=\"checkbox\" [attr.aria-checked]=\"isItemSelected(renderedItem)?'true':'false'\"\r\n [attr.aria-labelledby]=\"idBag.firstDataColumn + renderedItem.index\"\r\n [checked]=\"isItemSelected(renderedItem)\" (change)=\"onItemCheckBoxClicked(renderedItem)\" />\r\n <label role=\"presentation\"></label>\r\n </div>\r\n </div>\r\n </div>\r\n <div *ngFor=\"let column of actualColumns; let colIndex=index\"\r\n [ngClass]=\"{'sme-table-column-first': isFirstDataColumn(column), 'sme-table-group-header-cell': renderedItem.type===renderedItemTypeEnum.GroupHeader}\"\r\n [ngStyle]=\"{'width':column.domWidth+'px'}\"\r\n class=\"sme-table-td sme-position-flex-auto {{column.styleClass}}\"\r\n role=\"gridcell\" [attr.aria-rowindex]=\"renderedItem.index+2\"\r\n [attr.tabindex]=\"isTreeTableParentNode(renderedItem) ? -1 : 0\">\r\n <div class=\"sme-screen-reader sme-screen-reader-disable-copy\" *ngIf=\"isFirstDataColumn(column)\">\r\n {{getAdditionalScreenRecorderContent(renderedItem)}}</div>\r\n <div *ngIf=\"renderedItem.type===renderedItemTypeEnum.GroupHeader && colIndex===0\" class=\"sme-table-cell\"\r\n (click)=\"clickGroupToggle(renderedItem)\" [id]=\"getFirstColumnId(column, renderedItem)\">\r\n <span *ngIf=\"useGroupToggle\" class=\"sme-icon sme-icon-size-xxs sme-margin-right-xxs\"\r\n [ngClass]=\"{'sme-icon-chevronDown':isGroupExpanded(renderedItem.data), 'sme-icon-chevronRight':!isGroupExpanded(renderedItem.data)}\">\r\n </span>\r\n <span *ngIf=\"!this.groupHeaderTemplate\">\r\n {{renderedItem.data}}\r\n </span>\r\n <span *ngIf=\"this.groupHeaderTemplate\">\r\n <sme-data-table-template-loader [template]=\"this.groupHeaderTemplate\" [data]=\"renderedItem.data\">\r\n </sme-data-table-template-loader>\r\n </span>\r\n </div>\r\n <div\r\n *ngIf=\"renderedItem.type===renderedItemTypeEnum.TreeNode && !renderedItem.node.isBusy && colIndex===0\"\r\n class=\"sme-table-expander-cell\" [ngStyle]=\"{'padding-left':(renderedItem.depth*16+4)+'px'}\"\r\n [ngClass]=\"{'sme-expandable': renderedItem.hasChildren && !renderedItem.node.isLeaf}\">\r\n <span class=\"sme-icon sme-icon-size-xxs\" role=\"button\"\r\n [attr.aria-expanded]=\"renderedItem.node.expanded?'true':'false'\"\r\n (click)=\"clickTreeToggle($event, renderedItem)\"\r\n [ngClass]=\"{'sme-icon-chevronDown':renderedItem.node.expanded, 'sme-icon-chevronRight':!renderedItem.node.expanded}\"\r\n [attr.aria-label]=\"renderedItem.node.expanded ? this.strings.MsftSmeShell.Angular.DataTable.aria.label.collapse : this.strings.MsftSmeShell.Angular.DataTable.aria.label.expand\">\r\n </span>\r\n <span class=\"sme-table-expander-cell-placeholder\"></span>\r\n </div>\r\n <div *ngIf=\"renderedItem.type===renderedItemTypeEnum.TreeNode && renderedItem.node.isBusy && colIndex===0\"\r\n class=\"sme-table-expander-cell\" [ngStyle]=\"{'padding-left':(renderedItem.depth*16+4)+'px'}\">\r\n <sme-loading-wheel size=\"extra-small\" [inline]=\"true\" [isBackgroundTransparent]=\"true\">\r\n </sme-loading-wheel>\r\n <span class=\"sme-table-expander-cell-placeholder\"></span>\r\n </div>\r\n <div\r\n *ngIf=\"showAsTree && selectionMode==='multiple' && renderedItem.type==renderedItemTypeEnum.TreeNode && colIndex==0\"\r\n class=\"sme-table-cell sme-table-checkbox-container\" role=\"presentation\">\r\n <div class=\"sme-table-checkbox\" role=\"presentation\">\r\n <input type=\"checkbox\" [attr.aria-checked]=\"isItemSelected(renderedItem)?'true':'false'\"\r\n [attr.aria-labelledby]=\"idBag.firstDataColumn + renderedItem.index\"\r\n [checked]=\"isItemSelected(renderedItem)\" (change)=\"onItemCheckBoxClicked(renderedItem)\" />\r\n <label role=\"presentation\"></label>\r\n </div>\r\n </div>\r\n <ng-container *ngIf=\"!editable\">\r\n <div *ngIf=\"!column.bodyTemplate && renderedItem.type!=renderedItemTypeEnum.GroupHeader\"\r\n class=\"sme-table-cell\" [class.sme-table-cell-full-height]=\"autoRowHeight\"\r\n [id]=\"getFirstColumnId(column, renderedItem)\"\r\n [title]=\"getColumnTooltipText(column, renderedItem)\">\r\n {{renderedItem.data?resolveObjectPath(renderedItem.data,column.field):'.'}}</div>\r\n <div\r\n *ngIf=\"renderedItem.type!=renderedItemTypeEnum.GroupHeader && renderedItem.data && column.bodyTemplate\"\r\n class=\"sme-table-cell\" [class.sme-table-cell-height-auto]=\"autoRowHeight\"\r\n [class.sme-table-cell-full-height]=\"autoRowHeight\" [id]=\"getFirstColumnId(column, renderedItem)\"\r\n [title]=\"getColumnTooltipText(column, renderedItem)\">\r\n <sme-data-table-template-loader *ngIf=\"!renderedItem.data.placeholder\"\r\n [template]=\"column.bodyTemplate\" [data]=\"renderedItem.data\" [rowIndex]=\"rowIndex\">\r\n </sme-data-table-template-loader>\r\n </div>\r\n </ng-container>\r\n <ng-container *ngIf=\"editable && !column.bodyEditTemplate\">\r\n <div *ngIf=\"!column.bodyReadTemplate && renderedItem.type!=renderedItemTypeEnum.GroupHeader\"\r\n class=\"sme-table-cell\"\r\n [title]=\"getColumnTooltipText(column, renderedItem)\">\r\n {{renderedItem.data?resolveObjectPath(renderedItem.data.content,column.field):'.'}}</div>\r\n <div\r\n *ngIf=\"renderedItem.type!=renderedItemTypeEnum.GroupHeader && renderedItem.data && column.bodyReadTemplate\"\r\n class=\"sme-table-cell\"\r\n [title]=\"getColumnTooltipText(column, renderedItem)\">\r\n <sme-data-table-template-loader *ngIf=\"!renderedItem.data.placeholder\" [renderedItem]=\"renderedItem\"\r\n [template]=\"column.bodyReadTemplate\" [data]=\"renderedItem.data.content\" [rowIndex]=\"rowIndex\">\r\n </sme-data-table-template-loader>\r\n </div>\r\n </ng-container>\r\n <ng-container *ngIf=\"editable && column.bodyEditTemplate\">\r\n <ng-container *ngIf=\"!shouldShowEditRow(renderedItem)\">\r\n <div *ngIf=\"!column.bodyReadTemplate && renderedItem.type!=renderedItemTypeEnum.GroupHeader\"\r\n class=\"sme-table-cell\"\r\n [title]=\"getColumnTooltipText(column, renderedItem)\">\r\n {{renderedItem.data?resolveObjectPath(renderedItem.data.content,column.field):'.'}}</div>\r\n <div\r\n *ngIf=\"renderedItem.type!=renderedItemTypeEnum.GroupHeader && renderedItem.data && column.bodyReadTemplate\"\r\n class=\"sme-table-cell\"\r\n [title]=\"getColumnTooltipText(column, renderedItem)\">\r\n <sme-data-table-template-loader *ngIf=\"!renderedItem.data.placeholder\"\r\n [template]=\"column.bodyReadTemplate\" [data]=\"renderedItem.data.content\" [rowIndex]=\"rowIndex\">\r\n </sme-data-table-template-loader>\r\n </div>\r\n </ng-container>\r\n <div *ngIf=\"shouldShowEditRow(renderedItem)\" class=\"sme-table-cell sme-table-edit-container\"\r\n [title]=\"getColumnTooltipText(column, renderedItem)\">\r\n <sme-data-table-template-loader *ngIf=\"!renderedItem.data.placeholder\"\r\n [template]=\"column.bodyEditTemplate\" [field]=\"column.field\" [data]=\"renderedItem.data.content\"\r\n [rowIndex]=\"rowIndex\" [renderedItem]=\"renderedItem\"\r\n (validationAlert)=\"onValidationAlertHandler(renderedItem, column.field, $event.alert)\"\r\n (dataChanged)=\"onEditableDataChanged($event.renderedItem,$event.field)\">\r\n </sme-data-table-template-loader>\r\n </div>\r\n </ng-container>\r\n </div>\r\n </div>\r\n <div *ngIf=\"hasValidationError(renderedItem)\" class=\"sme-table-row-validation\">\r\n <div class=\"sme-table-td sme-position-flex-auto\"\r\n [attr.role] = \"selectionMode === 'multiple' ? 'gridcell' : 'presentation'\"\r\n [attr.tabindex]=\"selectionMode==='multiple'?'0':'undefined'\">\r\n <div class=\"sme-table-cell\" role=\"presentation\">\r\n <div *ngFor=\"let validationResultItem of renderedItem.validationResult\">\r\n <sme-validation-alert [alert]=\"validationResultItem.alert\"></sme-validation-alert>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"sme-table-row\" #tempRow>\r\n <div class=\"sme-table-td\" tabindex=\"0\">\r\n <div class=\"sme-table-cell\"> </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <div *ngIf=\"shouldUseLastFocusableShadowElement\" #lastFocusableShadowElement class=\"sme-focus-zone\"\r\n data-sme-last-focusable-shadow-element (focus)=\"onLastFocusableShadowElementFocused($event)\" tabindex=\"0\"></div>\r\n </div>\r\n <div class=\"sme-layout-absolute sme-position-inset-none\"\r\n *ngIf=\"isBusy || (this.nodeNavigatingTask && this.nodeNavigatingTask.isRunning)\">\r\n <sme-loading-wheel [isBackgroundTransparent]=\"true\"></sme-loading-wheel>\r\n </div>\r\n</div>\r\n<div #resizerIndicator\r\n class=\"sme-width-xxs sme-layout-absolute sme-position-stretch-v sme-background-color-base-80 sme-layer-flyout sme-layout-none\">\r\n</div>\r\n" }]
|
|
31550
31874
|
}], function () { return [{ type: i0.Injector }]; }, null); })();
|
|
31551
31875
|
|
|
31552
31876
|
const _c0$U = ["deleteTemplate"];
|
|
@@ -33465,7 +33789,7 @@ class SplitViewComponent extends CoreBaseComponent {
|
|
|
33465
33789
|
* The Angular ngOnDestroy function.
|
|
33466
33790
|
*/
|
|
33467
33791
|
ngOnDestroy() {
|
|
33468
|
-
this.subscriptions.forEach(sub => sub
|
|
33792
|
+
this.subscriptions.forEach(sub => sub?.unsubscribe());
|
|
33469
33793
|
}
|
|
33470
33794
|
/**
|
|
33471
33795
|
* The method called after content is initialized.
|
|
@@ -35661,7 +35985,7 @@ class AlertBarComponent extends CoreBaseComponent {
|
|
|
35661
35985
|
ngOnDestroy() {
|
|
35662
35986
|
this.alertBarService.unregister(this.id);
|
|
35663
35987
|
if (this.dialogSubscriptions) {
|
|
35664
|
-
this.dialogSubscriptions.forEach(sub => sub
|
|
35988
|
+
this.dialogSubscriptions.forEach(sub => sub?.unsubscribe());
|
|
35665
35989
|
}
|
|
35666
35990
|
}
|
|
35667
35991
|
/**
|
|
@@ -39035,9 +39359,7 @@ class BaseDialogComponent {
|
|
|
39035
39359
|
* The method to run when the component is destroyed.
|
|
39036
39360
|
*/
|
|
39037
39361
|
ngOnDestroy() {
|
|
39038
|
-
this.dialogService
|
|
39039
|
-
// the close subscription is created in ngAfterViewInit, if the component is destroyed before that
|
|
39040
|
-
// then the subscription will not exist and causing an error.
|
|
39362
|
+
this.dialogService?.unregister(this.id);
|
|
39041
39363
|
this.closeSubscription?.unsubscribe();
|
|
39042
39364
|
}
|
|
39043
39365
|
/**
|
|
@@ -39482,7 +39804,7 @@ class ConfirmationListDialogComponent extends BaseDialogComponent {
|
|
|
39482
39804
|
return result;
|
|
39483
39805
|
}
|
|
39484
39806
|
hide(result) {
|
|
39485
|
-
this.dataSourceSubscription
|
|
39807
|
+
this.dataSourceSubscription?.unsubscribe();
|
|
39486
39808
|
super.hide(result);
|
|
39487
39809
|
}
|
|
39488
39810
|
onConfirm() {
|
|
@@ -42932,7 +43254,7 @@ function PageAlertBarComponent_a_5_Template(rf, ctx) { if (rf & 1) {
|
|
|
42932
43254
|
const ctx_r2 = i0.ɵɵnextContext();
|
|
42933
43255
|
i0.ɵɵproperty("title", !!ctx_r2.alert.detailsCaption ? ctx_r2.alert.detailsCaption : ctx_r2.defaultDetailsLabel);
|
|
42934
43256
|
i0.ɵɵadvance(1);
|
|
42935
|
-
i0.ɵɵtextInterpolate1(" ", !!ctx_r2.alert.detailsLabel ? ctx_r2.alert.detailsLabel : ctx_r2.defaultDetailsLabel, "
|
|
43257
|
+
i0.ɵɵtextInterpolate1(" ", !!ctx_r2.alert.detailsLabel ? ctx_r2.alert.detailsLabel : ctx_r2.defaultDetailsLabel, " ");
|
|
42936
43258
|
} }
|
|
42937
43259
|
/**
|
|
42938
43260
|
*
|
|
@@ -43083,8 +43405,8 @@ class PageAlertBarComponent extends SpacerBaseDirective {
|
|
|
43083
43405
|
i0.ɵɵelementStart(2, "span");
|
|
43084
43406
|
i0.ɵɵtext(3);
|
|
43085
43407
|
i0.ɵɵtemplate(4, PageAlertBarComponent_a_4_Template, 2, 6, "a", 1);
|
|
43086
|
-
i0.ɵɵelementEnd();
|
|
43087
43408
|
i0.ɵɵtemplate(5, PageAlertBarComponent_a_5_Template, 2, 2, "a", 2);
|
|
43409
|
+
i0.ɵɵelementEnd();
|
|
43088
43410
|
} if (rf & 2) {
|
|
43089
43411
|
i0.ɵɵclassMapInterpolate1("sme-margin-right-xs sme-position-flex-none ", ctx.iconClass, "");
|
|
43090
43412
|
i0.ɵɵclassProp("sme-icon", !!ctx.iconClass);
|
|
@@ -43099,7 +43421,7 @@ class PageAlertBarComponent extends SpacerBaseDirective {
|
|
|
43099
43421
|
} }, dependencies: [i1$1.NgIf, StatusIconComponent, TooltipDirective], encapsulation: 2 });
|
|
43100
43422
|
(function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(PageAlertBarComponent, [{
|
|
43101
43423
|
type: Component,
|
|
43102
|
-
args: [{ selector: 'sme-page-alert-bar', template: "<span class=\"sme-margin-right-xs sme-position-flex-none {{iconClass}}\" [class.sme-icon]=\"!!iconClass\">\r\n <sme-status-icon *ngIf=\"statusIcon !== null\" class=\"sme-layout-inline-block\" [status]=\"statusIcon\" size=\"16px\">\r\n </sme-status-icon>\r\n</span>\r\n\r\n<span>\r\n {{ alert.message }}\r\n <a *ngIf=\"alert.externalLink\" class=\"sme-link sme-focus-zone sme-icon-after\" [class]=\"alert?.externalLink?.iconClass\"\r\n [class.sme-icon]=\"!!alert?.externalLink?.iconClass\" href=\"{{alert.externalLink.url}}\"
|
|
43424
|
+
args: [{ selector: 'sme-page-alert-bar', template: "<span class=\"sme-margin-right-xs sme-position-flex-none {{iconClass}}\" [class.sme-icon]=\"!!iconClass\">\r\n <sme-status-icon *ngIf=\"statusIcon !== null\" class=\"sme-layout-inline-block\" [status]=\"statusIcon\" size=\"16px\">\r\n </sme-status-icon>\r\n</span>\r\n\r\n<span>\r\n {{ alert.message }}\r\n <a *ngIf=\"alert.externalLink\" class=\"sme-link sme-focus-zone sme-icon-after\" [class]=\"alert?.externalLink?.iconClass\"\r\n [class.sme-icon]=\"!!alert?.externalLink?.iconClass\" href=\"{{alert.externalLink.url}}\" target=\"_blank\">{{\r\n alert.externalLink.title }}</a>\r\n <a *ngIf=\"!!alert.detailsCommand\" class=\"sme-margin-left-xs sme-position-flex-none sme-link sme-focus-zone\"\r\n tabindex=\"0\" role=\"link\" [title]=\"!!alert.detailsCaption ? alert.detailsCaption : defaultDetailsLabel\"\r\n (click)=\"alert.detailsCommand($event)\">\r\n {{ !!alert.detailsLabel ? alert.detailsLabel : defaultDetailsLabel }}\r\n </a>\r\n</span>\r\n" }]
|
|
43103
43425
|
}], function () { return [{ type: i0.Injector }]; }, { isBackgroundTransparent: [{
|
|
43104
43426
|
type: Input
|
|
43105
43427
|
}], isCritical: [{
|
|
@@ -43444,6 +43766,9 @@ function PropertyGridComponent_ng_template_10_Template(rf, ctx) { if (rf & 1) {
|
|
|
43444
43766
|
i0.ɵɵtemplate(2, PropertyGridComponent_ng_template_10_span_2_Template, 2, 1, "span", 25);
|
|
43445
43767
|
i0.ɵɵelementStart(3, "a", 28);
|
|
43446
43768
|
i0.ɵɵtext(4);
|
|
43769
|
+
i0.ɵɵelementEnd();
|
|
43770
|
+
i0.ɵɵelementStart(5, "span", 29);
|
|
43771
|
+
i0.ɵɵtext(6);
|
|
43447
43772
|
i0.ɵɵelementEnd()();
|
|
43448
43773
|
} if (rf & 2) {
|
|
43449
43774
|
const item_r35 = ctx.$implicit;
|
|
@@ -43451,14 +43776,18 @@ function PropertyGridComponent_ng_template_10_Template(rf, ctx) { if (rf & 1) {
|
|
|
43451
43776
|
const ctx_r9 = i0.ɵɵnextContext();
|
|
43452
43777
|
const _r12 = i0.ɵɵreference(15);
|
|
43453
43778
|
i0.ɵɵadvance(1);
|
|
43454
|
-
i0.ɵɵproperty("ngTemplateOutlet", _r12)("ngTemplateOutletContext", i0.ɵɵpureFunction2(
|
|
43779
|
+
i0.ɵɵproperty("ngTemplateOutlet", _r12)("ngTemplateOutletContext", i0.ɵɵpureFunction2(8, _c4$2, item_r35, i_r36));
|
|
43455
43780
|
i0.ɵɵadvance(1);
|
|
43456
43781
|
i0.ɵɵproperty("ngIf", item_r35.prefixString);
|
|
43457
43782
|
i0.ɵɵadvance(1);
|
|
43458
43783
|
i0.ɵɵproperty("routerLink", item_r35.link);
|
|
43459
|
-
i0.ɵɵattribute("aria-
|
|
43784
|
+
i0.ɵɵattribute("aria-describedby", ctx_r9.idBag.detailsSpan + i_r36);
|
|
43460
43785
|
i0.ɵɵadvance(1);
|
|
43461
43786
|
i0.ɵɵtextInterpolate(item_r35.value);
|
|
43787
|
+
i0.ɵɵadvance(1);
|
|
43788
|
+
i0.ɵɵproperty("id", ctx_r9.idBag.detailsSpan + i_r36);
|
|
43789
|
+
i0.ɵɵadvance(1);
|
|
43790
|
+
i0.ɵɵtextInterpolate(ctx_r9.getInternalLinkDescription(item_r35));
|
|
43462
43791
|
} }
|
|
43463
43792
|
function PropertyGridComponent_ng_template_12_ng_container_1_Template(rf, ctx) { if (rf & 1) {
|
|
43464
43793
|
i0.ɵɵelementContainer(0);
|
|
@@ -43476,8 +43805,11 @@ function PropertyGridComponent_ng_template_12_Template(rf, ctx) { if (rf & 1) {
|
|
|
43476
43805
|
i0.ɵɵelementStart(0, "p");
|
|
43477
43806
|
i0.ɵɵtemplate(1, PropertyGridComponent_ng_template_12_ng_container_1_Template, 1, 0, "ng-container", 19);
|
|
43478
43807
|
i0.ɵɵtemplate(2, PropertyGridComponent_ng_template_12_span_2_Template, 2, 1, "span", 25);
|
|
43479
|
-
i0.ɵɵelementStart(3, "a",
|
|
43808
|
+
i0.ɵɵelementStart(3, "a", 30);
|
|
43480
43809
|
i0.ɵɵtext(4);
|
|
43810
|
+
i0.ɵɵelementEnd();
|
|
43811
|
+
i0.ɵɵelementStart(5, "span", 29);
|
|
43812
|
+
i0.ɵɵtext(6);
|
|
43481
43813
|
i0.ɵɵelementEnd()();
|
|
43482
43814
|
} if (rf & 2) {
|
|
43483
43815
|
const item_r40 = ctx.$implicit;
|
|
@@ -43485,14 +43817,18 @@ function PropertyGridComponent_ng_template_12_Template(rf, ctx) { if (rf & 1) {
|
|
|
43485
43817
|
const ctx_r11 = i0.ɵɵnextContext();
|
|
43486
43818
|
const _r12 = i0.ɵɵreference(15);
|
|
43487
43819
|
i0.ɵɵadvance(1);
|
|
43488
|
-
i0.ɵɵproperty("ngTemplateOutlet", _r12)("ngTemplateOutletContext", i0.ɵɵpureFunction2(
|
|
43820
|
+
i0.ɵɵproperty("ngTemplateOutlet", _r12)("ngTemplateOutletContext", i0.ɵɵpureFunction2(8, _c4$2, item_r40, i_r41));
|
|
43489
43821
|
i0.ɵɵadvance(1);
|
|
43490
43822
|
i0.ɵɵproperty("ngIf", item_r40.prefixString);
|
|
43491
43823
|
i0.ɵɵadvance(1);
|
|
43492
43824
|
i0.ɵɵproperty("href", item_r40.link, i0.ɵɵsanitizeUrl);
|
|
43493
|
-
i0.ɵɵattribute("aria-
|
|
43825
|
+
i0.ɵɵattribute("aria-describedby", ctx_r11.idBag.detailsSpan + i_r41);
|
|
43494
43826
|
i0.ɵɵadvance(1);
|
|
43495
43827
|
i0.ɵɵtextInterpolate(item_r40.value);
|
|
43828
|
+
i0.ɵɵadvance(1);
|
|
43829
|
+
i0.ɵɵproperty("id", ctx_r11.idBag.detailsSpan + i_r41);
|
|
43830
|
+
i0.ɵɵadvance(1);
|
|
43831
|
+
i0.ɵɵtextInterpolate(ctx_r11.getExternalLinkDescription(item_r40));
|
|
43496
43832
|
} }
|
|
43497
43833
|
function PropertyGridComponent_ng_template_14_span_0_Template(rf, ctx) { if (rf & 1) {
|
|
43498
43834
|
i0.ɵɵelement(0, "span");
|
|
@@ -43501,14 +43837,14 @@ function PropertyGridComponent_ng_template_14_span_0_Template(rf, ctx) { if (rf
|
|
|
43501
43837
|
i0.ɵɵclassMapInterpolate1("sme-margin-right-xs sme-icon ", item_r45.iconClass, "");
|
|
43502
43838
|
} }
|
|
43503
43839
|
function PropertyGridComponent_ng_template_14_sme_status_icon_1_Template(rf, ctx) { if (rf & 1) {
|
|
43504
|
-
i0.ɵɵelement(0, "sme-status-icon",
|
|
43840
|
+
i0.ɵɵelement(0, "sme-status-icon", 33);
|
|
43505
43841
|
} if (rf & 2) {
|
|
43506
43842
|
const item_r45 = i0.ɵɵnextContext().$implicit;
|
|
43507
43843
|
i0.ɵɵproperty("status", item_r45.status);
|
|
43508
43844
|
} }
|
|
43509
43845
|
function PropertyGridComponent_ng_template_14_Template(rf, ctx) { if (rf & 1) {
|
|
43510
|
-
i0.ɵɵtemplate(0, PropertyGridComponent_ng_template_14_span_0_Template, 1, 3, "span",
|
|
43511
|
-
i0.ɵɵtemplate(1, PropertyGridComponent_ng_template_14_sme_status_icon_1_Template, 1, 1, "sme-status-icon",
|
|
43846
|
+
i0.ɵɵtemplate(0, PropertyGridComponent_ng_template_14_span_0_Template, 1, 3, "span", 31);
|
|
43847
|
+
i0.ɵɵtemplate(1, PropertyGridComponent_ng_template_14_sme_status_icon_1_Template, 1, 1, "sme-status-icon", 32);
|
|
43512
43848
|
} if (rf & 2) {
|
|
43513
43849
|
const item_r45 = ctx.$implicit;
|
|
43514
43850
|
i0.ɵɵproperty("ngIf", !!item_r45.iconClass);
|
|
@@ -43644,6 +43980,12 @@ class PropertyGridComponent extends CoreBaseComponent {
|
|
|
43644
43980
|
item.loading = false;
|
|
43645
43981
|
}
|
|
43646
43982
|
}
|
|
43983
|
+
getInternalLinkDescription(item) {
|
|
43984
|
+
return this.strings.MsftSmeShell.Angular.PropertyGrid.InternalLink.label.format(item.link);
|
|
43985
|
+
}
|
|
43986
|
+
getExternalLinkDescription(item) {
|
|
43987
|
+
return this.strings.MsftSmeShell.Angular.PropertyGrid.ExternalLink.label.format(item.link);
|
|
43988
|
+
}
|
|
43647
43989
|
/**
|
|
43648
43990
|
* Creates the idBag used by this component to store unique element ids.
|
|
43649
43991
|
* id values will be assigned be the @see BaseComponent super class.
|
|
@@ -43685,7 +44027,7 @@ class PropertyGridComponent extends CoreBaseComponent {
|
|
|
43685
44027
|
i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.externalLinkTemplate = _t.first);
|
|
43686
44028
|
} }, inputs: { orientation: "orientation" }, outputs: { layoutChanged: "layoutChanged", windowBreakpointChanged: "windowBreakpointChanged" }, features: [i0.ɵɵProvidersFeature([
|
|
43687
44029
|
{ provide: SME_LAYOUT_PROVIDER, useExisting: forwardRef((() => PropertyGridComponent)) }
|
|
43688
|
-
]), i0.ɵɵInheritDefinitionFeature, i0.ɵɵNgOnChangesFeature], decls: 16, vars: 7, consts: [[1, "sme-position-inset-none", "sme-position-stretch-h", 3, "padLastItem", "oneColumn"], ["layout", ""], ["name", "narrow", 3, "until", "columns"], ["name", "medium", 3, "until", "columns", 4, "ngIf"], ["name", "wide", 3, "columns", 4, "ngIf"], [3, "columnSpan", "maxWidth", 4, "ngFor", "ngForOf"], ["readonlyTemplate", ""], ["actionLinkTemplate", ""], ["internalLinkTemplate", ""], ["externalLinkTemplate", ""], ["iconTemplate", ""], ["name", "medium", 3, "until", "columns"], ["name", "wide", 3, "columns"], [3, "columnSpan", "maxWidth"], ["tabindex", "0", "aria-live", "polite", "aria-atomic", "true", "smeTooltipZone", "", 1, "sme-property-grid-item"], ["zone", "smeTooltipZone"], [1, "sme-arrange-stack-h"], ["class", "sme-position-flex-none sme-icon sme-icon-info sme-info-bubble sme-margin-left-xs", "aria-hidden", "true", "tabindex", "0", 3, "title", "tooltipZone", 4, "ngIf"], [1, "sme-screen-reader"], [4, "ngTemplateOutlet", "ngTemplateOutletContext"], ["aria-hidden", "true", "tabindex", "0", 1, "sme-position-flex-none", "sme-icon", "sme-icon-info", "sme-info-bubble", "sme-margin-left-xs", 3, "title", "tooltipZone"], ["size", "extra-small", 3, "inline", "isBackgroundTransparent", 4, "ngIf"], [4, "ngIf"], ["size", "extra-small", 3, "inline", "isBackgroundTransparent"], [1, "sme-read-only-template"], ["class", "sme-padding-right-xs", 4, "ngIf"], ["tabindex", "0", "role", "link", 1, "sme-link", "sme-focus-zone", "sme-action-link-template", 3, "click"], [1, "sme-padding-right-xs"], ["role", "link", 1, "sme-link", "sme-focus-zone", 3, "routerLink"], ["role", "link", "target", "_blank", 1, "sme-link", "sme-focus-zone", "sme-icon", "sme-icon-after", "sme-icon-openInNewWindow", 3, "href"], [3, "class", 4, "ngIf"], ["class", "sme-layout-inline-block sme-margin-right-xs ", "size", "16px", 3, "status", 4, "ngIf"], ["size", "16px", 1, "sme-layout-inline-block", "sme-margin-right-xs", 3, "status"]], template: function PropertyGridComponent_Template(rf, ctx) { if (rf & 1) {
|
|
44030
|
+
]), i0.ɵɵInheritDefinitionFeature, i0.ɵɵNgOnChangesFeature], decls: 16, vars: 7, consts: [[1, "sme-position-inset-none", "sme-position-stretch-h", 3, "padLastItem", "oneColumn"], ["layout", ""], ["name", "narrow", 3, "until", "columns"], ["name", "medium", 3, "until", "columns", 4, "ngIf"], ["name", "wide", 3, "columns", 4, "ngIf"], [3, "columnSpan", "maxWidth", 4, "ngFor", "ngForOf"], ["readonlyTemplate", ""], ["actionLinkTemplate", ""], ["internalLinkTemplate", ""], ["externalLinkTemplate", ""], ["iconTemplate", ""], ["name", "medium", 3, "until", "columns"], ["name", "wide", 3, "columns"], [3, "columnSpan", "maxWidth"], ["tabindex", "0", "aria-live", "polite", "aria-atomic", "true", "smeTooltipZone", "", 1, "sme-property-grid-item"], ["zone", "smeTooltipZone"], [1, "sme-arrange-stack-h"], ["class", "sme-position-flex-none sme-icon sme-icon-info sme-info-bubble sme-margin-left-xs", "aria-hidden", "true", "tabindex", "0", 3, "title", "tooltipZone", 4, "ngIf"], [1, "sme-screen-reader"], [4, "ngTemplateOutlet", "ngTemplateOutletContext"], ["aria-hidden", "true", "tabindex", "0", 1, "sme-position-flex-none", "sme-icon", "sme-icon-info", "sme-info-bubble", "sme-margin-left-xs", 3, "title", "tooltipZone"], ["size", "extra-small", 3, "inline", "isBackgroundTransparent", 4, "ngIf"], [4, "ngIf"], ["size", "extra-small", 3, "inline", "isBackgroundTransparent"], [1, "sme-read-only-template"], ["class", "sme-padding-right-xs", 4, "ngIf"], ["tabindex", "0", "role", "link", 1, "sme-link", "sme-focus-zone", "sme-action-link-template", 3, "click"], [1, "sme-padding-right-xs"], ["role", "link", 1, "sme-link", "sme-focus-zone", 3, "routerLink"], [1, "sme-screen-reader", 3, "id"], ["role", "link", "target", "_blank", 1, "sme-link", "sme-focus-zone", "sme-icon", "sme-icon-after", "sme-icon-openInNewWindow", 3, "href"], [3, "class", 4, "ngIf"], ["class", "sme-layout-inline-block sme-margin-right-xs ", "size", "16px", 3, "status", 4, "ngIf"], ["size", "16px", 1, "sme-layout-inline-block", "sme-margin-right-xs", 3, "status"]], template: function PropertyGridComponent_Template(rf, ctx) { if (rf & 1) {
|
|
43689
44031
|
i0.ɵɵelementStart(0, "sme-layout", 0, 1);
|
|
43690
44032
|
i0.ɵɵelement(2, "sme-layout-definition", 2);
|
|
43691
44033
|
i0.ɵɵtemplate(3, PropertyGridComponent_sme_layout_definition_3_Template, 1, 2, "sme-layout-definition", 3);
|
|
@@ -43694,8 +44036,8 @@ class PropertyGridComponent extends CoreBaseComponent {
|
|
|
43694
44036
|
i0.ɵɵelementEnd();
|
|
43695
44037
|
i0.ɵɵtemplate(6, PropertyGridComponent_ng_template_6_Template, 2, 2, "ng-template", null, 6, i0.ɵɵtemplateRefExtractor);
|
|
43696
44038
|
i0.ɵɵtemplate(8, PropertyGridComponent_ng_template_8_Template, 5, 9, "ng-template", null, 7, i0.ɵɵtemplateRefExtractor);
|
|
43697
|
-
i0.ɵɵtemplate(10, PropertyGridComponent_ng_template_10_Template,
|
|
43698
|
-
i0.ɵɵtemplate(12, PropertyGridComponent_ng_template_12_Template,
|
|
44039
|
+
i0.ɵɵtemplate(10, PropertyGridComponent_ng_template_10_Template, 7, 11, "ng-template", null, 8, i0.ɵɵtemplateRefExtractor);
|
|
44040
|
+
i0.ɵɵtemplate(12, PropertyGridComponent_ng_template_12_Template, 7, 11, "ng-template", null, 9, i0.ɵɵtemplateRefExtractor);
|
|
43699
44041
|
i0.ɵɵtemplate(14, PropertyGridComponent_ng_template_14_Template, 2, 2, "ng-template", null, 10, i0.ɵɵtemplateRefExtractor);
|
|
43700
44042
|
} if (rf & 2) {
|
|
43701
44043
|
i0.ɵɵproperty("padLastItem", true)("oneColumn", ctx.orientation === "vertical");
|
|
@@ -43712,7 +44054,7 @@ class PropertyGridComponent extends CoreBaseComponent {
|
|
|
43712
44054
|
type: Component,
|
|
43713
44055
|
args: [{ selector: 'sme-property-grid', providers: [
|
|
43714
44056
|
{ provide: SME_LAYOUT_PROVIDER, useExisting: forwardRef((() => PropertyGridComponent)) }
|
|
43715
|
-
], template: "<sme-layout #layout [padLastItem]=\"true\" class=\"sme-position-inset-none sme-position-stretch-h\" [oneColumn]=\"orientation === 'vertical'\">\r\n <sme-layout-definition name=\"narrow\" [until]=\"layoutItemWidth\" [columns]=\"1\"></sme-layout-definition>\r\n <sme-layout-definition *ngIf=\"orientation !== 'vertical'\" name=\"medium\" [until]=\"layoutItemWidth*2\" [columns]=\"2\"></sme-layout-definition>\r\n <sme-layout-definition *ngIf=\"orientation !== 'vertical'\" name=\"wide\" [columns]=\"3\"></sme-layout-definition>\r\n <sme-layout-item *ngFor=\"let item of items; index as i\" [columnSpan]=\"item.columnSpan\"\r\n [maxWidth]=\"orientation === 'vertical' ? null : item.columnSpan * layoutItemWidth\">\r\n <div class=\"sme-property-grid-item\" tabindex=\"0\" aria-live=\"polite\" aria-atomic=\"true\" #zone=\"smeTooltipZone\" smeTooltipZone>\r\n <label class=\"sme-arrange-stack-h\">\r\n <span>{{ item.label }}</span>\r\n <span *ngIf=\"item.tooltip\" class=\"sme-position-flex-none sme-icon sme-icon-info sme-info-bubble sme-margin-left-xs\"\r\n [title]=\"item.tooltip\" [tooltipZone]=\"zone\" aria-hidden=\"true\" tabindex=\"0\"></span>\r\n <!-- in scan mode screen reader does not focus on the info icon properly to read the title -->\r\n <span class=\"sme-screen-reader\">{{ item.tooltip }}</span>\r\n </label>\r\n <ng-container *ngTemplateOutlet=\"getTemplate(item);context:{$implicit:item, index: i}\"></ng-container>\r\n </div>\r\n </sme-layout-item>\r\n</sme-layout>\r\n\r\n<!-- Read only -->\r\n<ng-template #readonlyTemplate let-item let-i=\"index\">\r\n <sme-loading-wheel *ngIf=\"item.loading && item.isAsync\" size=\"extra-small\" [inline]=\"true\" [isBackgroundTransparent]=\"true\"></sme-loading-wheel>\r\n <ng-container *ngIf=\"!item.loading || !item.isAsync\">\r\n <p class=\"sme-read-only-template\" [attr.aria-labelledby]=\"idBag.labelSpan + i\" [attr.aria-describedby]=\"idBag.detailsSpan + i\">\r\n <ng-container *ngTemplateOutlet=\"iconTemplate;context:{$implicit:item, index: i}\"></ng-container>\r\n <span *ngIf=\"!item.link && !item.action\">{{ stringifyValue(item.value) }}</span>\r\n </p>\r\n </ng-container>\r\n</ng-template>\r\n\r\n<!-- Action link (role button) -->\r\n<ng-template #actionLinkTemplate let-item let-i=\"index\">\r\n <p>\r\n <ng-container *ngTemplateOutlet=\"iconTemplate;context:{$implicit:item, index: i}\"></ng-container>\r\n <span *ngIf=\"item.prefixString\" class=\"sme-padding-right-xs\">{{ item.prefixString }}</span>\r\n <a tabindex=\"0\" class=\"sme-link sme-focus-zone sme-action-link-template\" role=\"link\" (click)=\"item.action(item)\"\r\n [attr.aria-labelledby]=\"(idBag.labelSpan + i) + ' ' + (idBag.valueSpan + i)\"\r\n [attr.aria-describedby]=\"idBag.detailsSpan + i\">{{ item.value }}</a>\r\n </p>\r\n</ng-template>\r\n\r\n<!-- Internal link -->\r\n<ng-template #internalLinkTemplate let-item let-i=\"index\">\r\n <p>\r\n <ng-container *ngTemplateOutlet=\"iconTemplate;context:{$implicit:item, index: i}\"></ng-container>\r\n <span *ngIf=\"item.prefixString\" class=\"sme-padding-right-xs\">{{ item.prefixString }}</span>\r\n <a class=\"sme-link sme-focus-zone\" role=\"link\" [routerLink]=\"item.link\"
|
|
44057
|
+
], template: "<sme-layout #layout [padLastItem]=\"true\" class=\"sme-position-inset-none sme-position-stretch-h\" [oneColumn]=\"orientation === 'vertical'\">\r\n <sme-layout-definition name=\"narrow\" [until]=\"layoutItemWidth\" [columns]=\"1\"></sme-layout-definition>\r\n <sme-layout-definition *ngIf=\"orientation !== 'vertical'\" name=\"medium\" [until]=\"layoutItemWidth*2\" [columns]=\"2\"></sme-layout-definition>\r\n <sme-layout-definition *ngIf=\"orientation !== 'vertical'\" name=\"wide\" [columns]=\"3\"></sme-layout-definition>\r\n <sme-layout-item *ngFor=\"let item of items; index as i\" [columnSpan]=\"item.columnSpan\"\r\n [maxWidth]=\"orientation === 'vertical' ? null : item.columnSpan * layoutItemWidth\">\r\n <div class=\"sme-property-grid-item\" tabindex=\"0\" aria-live=\"polite\" aria-atomic=\"true\" #zone=\"smeTooltipZone\" smeTooltipZone>\r\n <label class=\"sme-arrange-stack-h\">\r\n <span>{{ item.label }}</span>\r\n <span *ngIf=\"item.tooltip\" class=\"sme-position-flex-none sme-icon sme-icon-info sme-info-bubble sme-margin-left-xs\"\r\n [title]=\"item.tooltip\" [tooltipZone]=\"zone\" aria-hidden=\"true\" tabindex=\"0\"></span>\r\n <!-- in scan mode screen reader does not focus on the info icon properly to read the title -->\r\n <span class=\"sme-screen-reader\">{{ item.tooltip }}</span>\r\n </label>\r\n <ng-container *ngTemplateOutlet=\"getTemplate(item);context:{$implicit:item, index: i}\"></ng-container>\r\n </div>\r\n </sme-layout-item>\r\n</sme-layout>\r\n\r\n<!-- Read only -->\r\n<ng-template #readonlyTemplate let-item let-i=\"index\">\r\n <sme-loading-wheel *ngIf=\"item.loading && item.isAsync\" size=\"extra-small\" [inline]=\"true\" [isBackgroundTransparent]=\"true\"></sme-loading-wheel>\r\n <ng-container *ngIf=\"!item.loading || !item.isAsync\">\r\n <p class=\"sme-read-only-template\" [attr.aria-labelledby]=\"idBag.labelSpan + i\" [attr.aria-describedby]=\"idBag.detailsSpan + i\">\r\n <ng-container *ngTemplateOutlet=\"iconTemplate;context:{$implicit:item, index: i}\"></ng-container>\r\n <span *ngIf=\"!item.link && !item.action\">{{ stringifyValue(item.value) }}</span>\r\n </p>\r\n </ng-container>\r\n</ng-template>\r\n\r\n<!-- Action link (role button) -->\r\n<ng-template #actionLinkTemplate let-item let-i=\"index\">\r\n <p>\r\n <ng-container *ngTemplateOutlet=\"iconTemplate;context:{$implicit:item, index: i}\"></ng-container>\r\n <span *ngIf=\"item.prefixString\" class=\"sme-padding-right-xs\">{{ item.prefixString }}</span>\r\n <a tabindex=\"0\" class=\"sme-link sme-focus-zone sme-action-link-template\" role=\"link\" (click)=\"item.action(item)\"\r\n [attr.aria-labelledby]=\"(idBag.labelSpan + i) + ' ' + (idBag.valueSpan + i)\"\r\n [attr.aria-describedby]=\"idBag.detailsSpan + i\">{{ item.value }}</a>\r\n </p>\r\n</ng-template>\r\n\r\n<!-- Internal link -->\r\n<ng-template #internalLinkTemplate let-item let-i=\"index\">\r\n <p>\r\n <ng-container *ngTemplateOutlet=\"iconTemplate;context:{$implicit:item, index: i}\"></ng-container>\r\n <span *ngIf=\"item.prefixString\" class=\"sme-padding-right-xs\">{{ item.prefixString }}</span>\r\n <a class=\"sme-link sme-focus-zone\" role=\"link\" [routerLink]=\"item.link\"\r\n [attr.aria-describedby]=\"idBag.detailsSpan + i\">{{ item.value }}</a>\r\n <span class=\"sme-screen-reader\" [id]=\"idBag.detailsSpan + i\">{{ getInternalLinkDescription(item) }}</span>\r\n </p>\r\n</ng-template>\r\n\r\n<!-- External link -->\r\n<ng-template #externalLinkTemplate let-item let-i=\"index\">\r\n <p>\r\n <ng-container *ngTemplateOutlet=\"iconTemplate;context:{$implicit:item, index: i}\"></ng-container>\r\n <span *ngIf=\"item.prefixString\" class=\"sme-padding-right-xs\">{{ item.prefixString }}</span>\r\n <a class=\"sme-link sme-focus-zone sme-icon sme-icon-after sme-icon-openInNewWindow\" role=\"link\" [href]=\"item.link\" target=\"_blank\"\r\n [attr.aria-describedby]=\"idBag.detailsSpan + i\">{{ item.value }}</a>\r\n <span class=\"sme-screen-reader\" [id]=\"idBag.detailsSpan + i\">{{ getExternalLinkDescription(item) }}</span>\r\n </p>\r\n</ng-template>\r\n\r\n<!-- Icon Template -->\r\n<ng-template #iconTemplate let-item let-i=\"index\">\r\n <span *ngIf=\"!!item.iconClass\" class=\"sme-margin-right-xs sme-icon {{item.iconClass}}\"></span>\r\n <sme-status-icon *ngIf=\"item.status !== undefined && item.status !== null && !item.iconClass\" class=\"sme-layout-inline-block sme-margin-right-xs \"\r\n [status]=\"item.status\" size=\"16px\"></sme-status-icon>\r\n</ng-template>\r\n" }]
|
|
43716
44058
|
}], function () { return [{ type: i0.Injector }, { type: undefined, decorators: [{
|
|
43717
44059
|
type: SkipSelf
|
|
43718
44060
|
}, {
|
|
@@ -47713,9 +48055,7 @@ class SettingsFormService {
|
|
|
47713
48055
|
return fallBackRoute;
|
|
47714
48056
|
}
|
|
47715
48057
|
ngOnDestroy() {
|
|
47716
|
-
|
|
47717
|
-
this.routerSubscription.unsubscribe();
|
|
47718
|
-
}
|
|
48058
|
+
this.routerSubscription?.unsubscribe();
|
|
47719
48059
|
}
|
|
47720
48060
|
}
|
|
47721
48061
|
/** @nocollapse */ SettingsFormService.ɵfac = function SettingsFormService_Factory(t) { return new (t || SettingsFormService)(i0.ɵɵinject(i1.Router)); };
|
|
@@ -48348,8 +48688,8 @@ function CommonSettingsComponent_header_2_Template(rf, ctx) { if (rf & 1) {
|
|
|
48348
48688
|
i0.ɵɵadvance(1);
|
|
48349
48689
|
i0.ɵɵtextInterpolate(ctx_r0.settingsTitle);
|
|
48350
48690
|
} }
|
|
48351
|
-
function
|
|
48352
|
-
i0.ɵɵelementStart(0, "
|
|
48691
|
+
function CommonSettingsComponent_li_10_div_1_Template(rf, ctx) { if (rf & 1) {
|
|
48692
|
+
i0.ɵɵelementStart(0, "div", 17);
|
|
48353
48693
|
i0.ɵɵtext(1);
|
|
48354
48694
|
i0.ɵɵelementEnd();
|
|
48355
48695
|
} if (rf & 2) {
|
|
@@ -48414,7 +48754,7 @@ function CommonSettingsComponent_li_10_a_2_Template(rf, ctx) { if (rf & 1) {
|
|
|
48414
48754
|
} }
|
|
48415
48755
|
function CommonSettingsComponent_li_10_Template(rf, ctx) { if (rf & 1) {
|
|
48416
48756
|
i0.ɵɵelementStart(0, "li", 14);
|
|
48417
|
-
i0.ɵɵtemplate(1,
|
|
48757
|
+
i0.ɵɵtemplate(1, CommonSettingsComponent_li_10_div_1_Template, 2, 3, "div", 15);
|
|
48418
48758
|
i0.ɵɵtemplate(2, CommonSettingsComponent_li_10_a_2_Template, 8, 21, "a", 16);
|
|
48419
48759
|
i0.ɵɵelementEnd();
|
|
48420
48760
|
} if (rf & 2) {
|
|
@@ -48866,7 +49206,7 @@ __decorate([
|
|
|
48866
49206
|
], CommonSettingsComponent.prototype, "onWindowBreakpointChanged", null);
|
|
48867
49207
|
(function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(CommonSettingsComponent, [{
|
|
48868
49208
|
type: Component,
|
|
48869
|
-
args: [{ selector: 'sme-common-settings', template: "<sme-settings [settingsTitle]=\"hackToolHeader ? '' : settingsTitle\" [class.sme-settings-external-header]=\"externalHeader\">\r\n <sme-settings-navigation class=\"sme-position-stretch-v-phone-up sme-position-stretch-h\" style=\"min-width: 160px\">\r\n <header class=\"sme-layout-tool-header\" *ngIf=\"hackToolHeader\">\r\n <h2 class=\"sme-position-flex-none sme-font-h3\" [attr.aria-label]=\"settingsTitle\">{{settingsTitle}}</h2>\r\n </header>\r\n <div role=\"region\" [attr.aria-label]=\"settingsTitle\" class=\"sme-position-stretch sme-arrange-stack-v\">\r\n <div class=\"sme-position-flex-none sme-focus-zone\">\r\n <form class=\"sme-margin-squish-v-sm\">\r\n <sme-form-field #searchTextBox type=\"search\" name=\"toolsListSearch\" [(ngModel)]=\"filter\" [placeholder]=\"searchBoxPlaceholder\"\r\n [autofocus]=\"true\" [count]=\"filteredSettings ? filteredSettings.length : 0\"\r\n (search)=\"onSearch()\"></sme-form-field>\r\n </form>\r\n </div>\r\n <nav role=\"tablist\" class=\"sme-arrange-stack-v sme-focus-zone\"\r\n [ngClass]=\"scrollableSecondaryNav ? 'sme-position-flex-auto sme-arrange-overflow-auto-y' : ''\">\r\n <ul class=\"sme-position-flex-auto sme-arrange-stack-v sme-arrange-overflow-hide-x sme-arrange-overflow-auto-y\"\r\n role=\"presentation\">\r\n <li *ngFor=\"let group of groupTools; let j = index\" class=\"sme-margin-inset-none\" role=\"presentation\">\r\n <
|
|
49209
|
+
args: [{ selector: 'sme-common-settings', template: "<sme-settings [settingsTitle]=\"hackToolHeader ? '' : settingsTitle\" [class.sme-settings-external-header]=\"externalHeader\">\r\n <sme-settings-navigation class=\"sme-position-stretch-v-phone-up sme-position-stretch-h\" style=\"min-width: 160px\">\r\n <header class=\"sme-layout-tool-header\" *ngIf=\"hackToolHeader\">\r\n <h2 class=\"sme-position-flex-none sme-font-h3\" [attr.aria-label]=\"settingsTitle\">{{settingsTitle}}</h2>\r\n </header>\r\n <div role=\"region\" [attr.aria-label]=\"settingsTitle\" class=\"sme-position-stretch sme-arrange-stack-v\">\r\n <div class=\"sme-position-flex-none sme-focus-zone\">\r\n <form class=\"sme-margin-squish-v-sm\">\r\n <sme-form-field #searchTextBox type=\"search\" name=\"toolsListSearch\" [(ngModel)]=\"filter\" [placeholder]=\"searchBoxPlaceholder\"\r\n [autofocus]=\"true\" [count]=\"filteredSettings ? filteredSettings.length : 0\"\r\n (search)=\"onSearch()\"></sme-form-field>\r\n </form>\r\n </div>\r\n <nav role=\"tablist\" class=\"sme-arrange-stack-v sme-focus-zone\"\r\n [ngClass]=\"scrollableSecondaryNav ? 'sme-position-flex-auto sme-arrange-overflow-auto-y' : ''\">\r\n <ul class=\"sme-position-flex-auto sme-arrange-stack-v sme-arrange-overflow-hide-x sme-arrange-overflow-auto-y\"\r\n role=\"presentation\">\r\n <li *ngFor=\"let group of groupTools; let j = index\" class=\"sme-margin-inset-none\" role=\"presentation\">\r\n <div [id]=\"idBag.group + '-' + j\" class=\"sme-font-h4 sme-font-h4-settings\" *ngIf=\"group.group!==defaultGroup\"\r\n [title]=\"group.group\">{{ group.group }}</div>\r\n <a *ngFor=\"let setting of group.options; let i = index\"\r\n class=\"sme-padding-squish-v-sm sme-arrange-stack-h sme-arrange-stack-centered-v sme-scheme-nav-item\" role=\"tab\"\r\n href=\"setting.routeParams.extras && setting.routeParams.extras.replaceUrl\"\r\n [attr.aria-selected]=\"selectedSetting === setting\"\r\n [routerLink]=\"setting.routeParams.commands\" routerLinkActive=\"sme-active\"\r\n (smeRouterLinkActivated)=\"onSmeRouterLinkActivated(setting)\"\r\n [preserveFragment]=\"setting.routeParams.extras && setting.routeParams.extras.preserveFragment\"\r\n [skipLocationChange]=\"setting.routeParams.extras && setting.routeParams.extras.skipLocationChange\"\r\n [replaceUrl]=\"setting.routeParams.extras && setting.routeParams.extras.replaceUrl\"\r\n [queryParams]=\"setting.routeParams.extras && setting.routeParams.extras.queryParams\"\r\n [title]=\"setting.label\" attr.aria-labelledby=\"{{idBag.option}}-{{j}}-{{i}} {{idBag.group}}-{{j}}\">\r\n <div class=\"sme-margin-right-xs sme-layout-flex sme-position-flex-align-center\">\r\n <div *ngIf=\"setting.smeIconClassName\" class=\"sme-icon\" [ngClass]=\"getSmeIconClass(setting)\"></div>\r\n <div *ngIf=\"setting.urlIcon\" class=\"sme-url-icon\" [style.background-image]=\"setting.urlIcon\"></div>\r\n <div *ngIf=\"!setting.urlIcon && !setting.smeIconClassName\" class=\"sme-url-icon\" [style.background-image]=\"defaultIcon\"></div>\r\n </div>\r\n <div class=\"sme-position-flex-auto\">\r\n <span [id]=\"idBag.option + '-' + j + '-' + i\" [class.sme-dirty]=\"!!(setting.form && setting.form.dirty)\"\r\n [class.sme-pristine]=\"!(setting.form && setting.form.dirty)\" class=\"sme-font-label sme-layout-flex sme-position-flex-align-center\">{{ setting.label }}</span>\r\n </div>\r\n </a>\r\n </li>\r\n </ul>\r\n </nav>\r\n </div>\r\n <div *ngIf=\"hackShowOverlay\">\r\n <div *ngFor=\"let layer of layers\"\r\n class=\"sme-layout-absolute sme-position-inset-none sme-layer-above sme-scheme-backdrop-opaque\"\r\n (click)=\"onOverlayClick(layer)\"></div>\r\n </div>\r\n </sme-settings-navigation>\r\n <sme-settings-header *ngIf=\"!!showHeader\">\r\n <h3 id=\"sme-shell-setting-selectedTitle\" [attr.aria-label]=\"selectedSetting.label\" *ngIf=\"!!selectedSetting\">\r\n {{ selectedSetting.label }}</h3>\r\n </sme-settings-header>\r\n <sme-settings-content>\r\n <router-outlet></router-outlet>\r\n </sme-settings-content>\r\n <sme-settings-footer>\r\n <ng-content></ng-content>\r\n </sme-settings-footer>\r\n</sme-settings>\r\n" }]
|
|
48870
49210
|
}], function () { return [{ type: i0.Injector }, { type: i1.Router }, { type: SettingsFormService }, { type: i0.IterableDiffers }, { type: AppContextService }, { type: RpcShellService }, { type: undefined, decorators: [{
|
|
48871
49211
|
type: Optional
|
|
48872
49212
|
}, {
|
|
@@ -49011,9 +49351,7 @@ class SettingsFormDirective {
|
|
|
49011
49351
|
}
|
|
49012
49352
|
ngOnChanges(changes) {
|
|
49013
49353
|
if (this.smeUpdateDataInComponent && this.smeSettingsForm) {
|
|
49014
|
-
|
|
49015
|
-
this.updateDataInComponentSubscription.unsubscribe();
|
|
49016
|
-
}
|
|
49354
|
+
this.updateDataInComponentSubscription?.unsubscribe();
|
|
49017
49355
|
this.updateDataInComponentSubscription = this.formsService.updateFormValue().subscribe((data) => {
|
|
49018
49356
|
this.smeSettingsFormValueUpdate.emit(data.formGroupNewData);
|
|
49019
49357
|
});
|
|
@@ -49026,9 +49364,7 @@ class SettingsFormDirective {
|
|
|
49026
49364
|
}
|
|
49027
49365
|
}
|
|
49028
49366
|
ngOnDestroy() {
|
|
49029
|
-
|
|
49030
|
-
this.updateDataInComponentSubscription.unsubscribe();
|
|
49031
|
-
}
|
|
49367
|
+
this.updateDataInComponentSubscription?.unsubscribe();
|
|
49032
49368
|
}
|
|
49033
49369
|
}
|
|
49034
49370
|
/** @nocollapse */ SettingsFormDirective.ɵfac = function SettingsFormDirective_Factory(t) { return new (t || SettingsFormDirective)(i0.ɵɵdirectiveInject(SettingsFormService)); };
|
|
@@ -49745,7 +50081,7 @@ class WizardNavigationButtonComponent extends CoreBaseComponent {
|
|
|
49745
50081
|
}
|
|
49746
50082
|
}
|
|
49747
50083
|
/** @nocollapse */ WizardNavigationButtonComponent.ɵfac = function WizardNavigationButtonComponent_Factory(t) { return new (t || WizardNavigationButtonComponent)(i0.ɵɵdirectiveInject(i0.Injector)); };
|
|
49748
|
-
/** @nocollapse */ WizardNavigationButtonComponent.ɵcmp = /** @pureOrBreakMyCode */ i0.ɵɵdefineComponent({ type: WizardNavigationButtonComponent, selectors: [["sme-wizard-navigation-button"]], inputs: { showIcons: "showIcons", leftIcon: "leftIcon", rightIcon: "rightIcon", buttonAutoWidth: "buttonAutoWidth", buttons: "buttons" }, outputs: { startButtonClicked: "startButtonClicked", endButtonClicked: "endButtonClicked" }, features: [i0.ɵɵInheritDefinitionFeature], decls: 10, vars: 16, consts: [[1, "sme-arrange-stack-h", "sme-position-stretch-h"], [1, "sme-padding-right-xs"], ["type", "button", "aria-live", "polite", "
|
|
50084
|
+
/** @nocollapse */ WizardNavigationButtonComponent.ɵcmp = /** @pureOrBreakMyCode */ i0.ɵɵdefineComponent({ type: WizardNavigationButtonComponent, selectors: [["sme-wizard-navigation-button"]], inputs: { showIcons: "showIcons", leftIcon: "leftIcon", rightIcon: "rightIcon", buttonAutoWidth: "buttonAutoWidth", buttons: "buttons" }, outputs: { startButtonClicked: "startButtonClicked", endButtonClicked: "endButtonClicked" }, features: [i0.ɵɵInheritDefinitionFeature], decls: 10, vars: 16, consts: [[1, "sme-arrange-stack-h", "sme-position-stretch-h"], [1, "sme-padding-right-xs"], ["type", "button", "aria-live", "polite", "tabindex", "0", 1, "sme-arrange-stack-h", 3, "disabled", "click"], ["class", "sme-icon", 3, "class", 4, "ngIf"], [1, "sme-position-flex-auto", "sme-position-flex-grow-start", "sme-arrange-ellipsis", "sme-action-button-text-span"], [1, "sme-icon"]], template: function WizardNavigationButtonComponent_Template(rf, ctx) { if (rf & 1) {
|
|
49749
50085
|
i0.ɵɵelementStart(0, "div", 0)(1, "span", 1)(2, "button", 2);
|
|
49750
50086
|
i0.ɵɵlistener("click", function WizardNavigationButtonComponent_Template_button_click_2_listener() { return ctx.onStartButtonClick(); });
|
|
49751
50087
|
i0.ɵɵtemplate(3, WizardNavigationButtonComponent_span_3_Template, 1, 2, "span", 3);
|
|
@@ -49780,7 +50116,7 @@ class WizardNavigationButtonComponent extends CoreBaseComponent {
|
|
|
49780
50116
|
} }, dependencies: [i1$1.NgIf], encapsulation: 2 });
|
|
49781
50117
|
(function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(WizardNavigationButtonComponent, [{
|
|
49782
50118
|
type: Component,
|
|
49783
|
-
args: [{ selector: 'sme-wizard-navigation-button', template: "<div class=\"sme-arrange-stack-h sme-position-stretch-h\" [class.sme-layout-hidden]=\"!render\">\r\n <span class=\"sme-padding-right-xs\">\r\n <button type=\"button\" aria-live=\"polite\" class=\"sme-arrange-stack-h\"
|
|
50119
|
+
args: [{ selector: 'sme-wizard-navigation-button', template: "<div class=\"sme-arrange-stack-h sme-position-stretch-h\" [class.sme-layout-hidden]=\"!render\">\r\n <span class=\"sme-padding-right-xs\">\r\n <button type=\"button\" aria-live=\"polite\" class=\"sme-arrange-stack-h\" tabindex=\"0\"\r\n [class]=\"buttons[currentStartButtonIndex]?.class\"\r\n [class.sme-button-auto-width]=\"buttonAutoWidth\"\r\n [disabled]=\"checkStartDisabled(currentStartButtonIndex)\"\r\n (click)=\"onStartButtonClick()\">\r\n <span *ngIf=\"showIcons\" class=\"sme-icon\" [class]=\"leftIcon\"></span>\r\n <span class=\"sme-position-flex-auto sme-position-flex-grow-start sme-arrange-ellipsis sme-action-button-text-span\">\r\n {{ buttons[currentStartButtonIndex] ? buttons[currentStartButtonIndex].label : strings.MsftSmeShell.Angular.Wizard.Lite.Actions.previous }}</span>\r\n </button>\r\n </span>\r\n <button type=\"button\" aria-live=\"polite\" class=\"sme-arrange-stack-h\" tabindex=\"0\"\r\n [class]=\"buttons[currentStartButtonIndex]?.class\"\r\n [class.sme-button-auto-width]=\"buttonAutoWidth\"\r\n [disabled]=\"checkEndDisabled(currentStartButtonIndex)\"\r\n (click)=\"onEndButtonClick()\">\r\n <span class=\"sme-position-flex-auto sme-position-flex-grow-start sme-arrange-ellipsis sme-action-button-text-span\">\r\n {{ buttons[currentStartButtonIndex + 2] ? buttons[currentStartButtonIndex + 2].label : strings.MsftSmeShell.Angular.Wizard.Lite.Actions.next }}</span>\r\n <span *ngIf=\"showIcons\" class=\"sme-icon\" [class]=\"rightIcon\"></span>\r\n </button>\r\n</div>\r\n" }]
|
|
49784
50120
|
}], function () { return [{ type: i0.Injector }]; }, { showIcons: [{
|
|
49785
50121
|
type: Input
|
|
49786
50122
|
}], leftIcon: [{
|
|
@@ -52579,9 +52915,7 @@ class UserAliveService extends RpcObservableAliveClient {
|
|
|
52579
52915
|
* Stop monitoring the user activity.
|
|
52580
52916
|
*/
|
|
52581
52917
|
stop() {
|
|
52582
|
-
|
|
52583
|
-
this.subscription.unsubscribe();
|
|
52584
|
-
}
|
|
52918
|
+
this.subscription?.unsubscribe();
|
|
52585
52919
|
}
|
|
52586
52920
|
}
|
|
52587
52921
|
/** @nocollapse */ UserAliveService.ɵfac = function UserAliveService_Factory(t) { return new (t || UserAliveService)(i0.ɵɵinject(i1.Router), i0.ɵɵinject(RpcService)); };
|
|
@@ -52636,9 +52970,7 @@ class NavigationService {
|
|
|
52636
52970
|
this.idleUrl = `/${this.options.idleRoute[0]}`;
|
|
52637
52971
|
// navigate to idle.
|
|
52638
52972
|
this.router.navigate(this.options.idleRoute, this.defaultNavigationOptions);
|
|
52639
|
-
|
|
52640
|
-
this.subscription.unsubscribe();
|
|
52641
|
-
}
|
|
52973
|
+
this.subscription?.unsubscribe();
|
|
52642
52974
|
let startTimestamp = null;
|
|
52643
52975
|
this.subscription = this.router.events
|
|
52644
52976
|
.pipe(tap(event => {
|
|
@@ -52677,10 +53009,7 @@ class NavigationService {
|
|
|
52677
53009
|
*/
|
|
52678
53010
|
shutdown() {
|
|
52679
53011
|
this.active = false;
|
|
52680
|
-
|
|
52681
|
-
this.subscription.unsubscribe();
|
|
52682
|
-
this.subscription = null;
|
|
52683
|
-
}
|
|
53012
|
+
this.subscription?.unsubscribe();
|
|
52684
53013
|
}
|
|
52685
53014
|
/**
|
|
52686
53015
|
* Map dialog service and dialog id so that correct dialog service instance can be found
|
|
@@ -53447,6 +53776,76 @@ function getFullRouteParams(route) {
|
|
|
53447
53776
|
return params;
|
|
53448
53777
|
}
|
|
53449
53778
|
|
|
53779
|
+
/**
|
|
53780
|
+
* Base class for snap in specific extension listeners
|
|
53781
|
+
*/
|
|
53782
|
+
class SnapInListener extends ExtensionClientListener {
|
|
53783
|
+
/**
|
|
53784
|
+
* Initializes a new instance of the SnapInListener class
|
|
53785
|
+
* @param rpc The rpc context
|
|
53786
|
+
*/
|
|
53787
|
+
constructor(rpc, extensionBroker, hostElement) {
|
|
53788
|
+
super(rpc);
|
|
53789
|
+
this.extensionBroker = extensionBroker;
|
|
53790
|
+
this.hostElement = hostElement;
|
|
53791
|
+
}
|
|
53792
|
+
ngAfterViewInit() {
|
|
53793
|
+
if (this.hostElement) {
|
|
53794
|
+
document.body.setAttribute('sme-snap-in', '');
|
|
53795
|
+
document.addEventListener('wheel', event => {
|
|
53796
|
+
// do not listen to wheel if it is for internal scroll
|
|
53797
|
+
// default behavior may try to scroll parent first THEN internal scroll,
|
|
53798
|
+
// see if we can update this to match that behavior
|
|
53799
|
+
if (!Dom.getOverflowAncestor(this.hostElement.nativeElement)) {
|
|
53800
|
+
this.emitOutput({ deltaY: event.deltaY });
|
|
53801
|
+
}
|
|
53802
|
+
});
|
|
53803
|
+
this.hostElement.nativeElement.addEventListener('focusin', (event) => {
|
|
53804
|
+
// check if we actually need to do these
|
|
53805
|
+
event.preventDefault();
|
|
53806
|
+
event.stopPropagation();
|
|
53807
|
+
// send info about the current active element
|
|
53808
|
+
if (document.activeElement) {
|
|
53809
|
+
const focusedElementRect = document.activeElement.getBoundingClientRect();
|
|
53810
|
+
this.emitOutput({ focusedElementRect });
|
|
53811
|
+
}
|
|
53812
|
+
});
|
|
53813
|
+
}
|
|
53814
|
+
}
|
|
53815
|
+
/**
|
|
53816
|
+
* Occurs when any method is called on this worker from another extension
|
|
53817
|
+
*/
|
|
53818
|
+
onCall(method, version, ...args) {
|
|
53819
|
+
if (method === 'input' && args && args.length > 0 && args[0].length > 0) {
|
|
53820
|
+
this.onInputReceived(args[0][0]);
|
|
53821
|
+
return of(null);
|
|
53822
|
+
}
|
|
53823
|
+
return super.throwMethodNotFound(method, version);
|
|
53824
|
+
}
|
|
53825
|
+
/**
|
|
53826
|
+
* Occurs when an input is received on this snap-in
|
|
53827
|
+
* @param input the input object.
|
|
53828
|
+
*/
|
|
53829
|
+
onInputReceived(input) {
|
|
53830
|
+
this.input = input;
|
|
53831
|
+
}
|
|
53832
|
+
/**
|
|
53833
|
+
* Emits an output to the consumer of this snap-in.
|
|
53834
|
+
* @param output the output object.
|
|
53835
|
+
*/
|
|
53836
|
+
emitOutput(output) {
|
|
53837
|
+
// TODO: should there be a separate output type for page events?
|
|
53838
|
+
// abstract output from consumer by mapping to null.
|
|
53839
|
+
return this.extensionBroker.emitResult(this.instanceId, 'output', output)
|
|
53840
|
+
.pipe(map(() => null));
|
|
53841
|
+
}
|
|
53842
|
+
}
|
|
53843
|
+
/** @nocollapse */ SnapInListener.ɵfac = function SnapInListener_Factory(t) { return new (t || SnapInListener)(i0.ɵɵdirectiveInject(i1$3.Rpc), i0.ɵɵdirectiveInject(i2.ExtensionBroker), i0.ɵɵdirectiveInject(i0.ElementRef)); };
|
|
53844
|
+
/** @nocollapse */ SnapInListener.ɵdir = /** @pureOrBreakMyCode */ i0.ɵɵdefineDirective({ type: SnapInListener, features: [i0.ɵɵInheritDefinitionFeature] });
|
|
53845
|
+
(function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(SnapInListener, [{
|
|
53846
|
+
type: Directive
|
|
53847
|
+
}], function () { return [{ type: i1$3.Rpc }, { type: i2.ExtensionBroker }, { type: i0.ElementRef }]; }, null); })();
|
|
53848
|
+
|
|
53450
53849
|
/// <reference path='../../dist/packages/core/index.d.ts'/>
|
|
53451
53850
|
/// <reference path='../../dist/packages/core/special.d.ts'/>
|
|
53452
53851
|
/// <reference path='../../dist/packages/core/polyfills.d.ts'/>
|
|
@@ -53458,5 +53857,5 @@ function getFullRouteParams(route) {
|
|
|
53458
53857
|
* Generated bundle index. Do not edit.
|
|
53459
53858
|
*/
|
|
53460
53859
|
|
|
53461
|
-
export { AccordionComponent, AccordionModule, AccordionPanelComponent, ActionBarComponent, ActionBarDirective, ActionButton, ActionButtonAsync, ActionButtonAsyncComponent, ActionButtonComponent, ActionButtonRendererComponent, ActionContainerComponent, ActionDropdown, ActionDropdownComponent, ActionDropdownRendererComponent, ActionItem, ActionItemComponent, ActionItemRendererComponent, ActionItemSeparator, ActionItemSeparatorComponent, ActionItemSeparatorRendererComponent, ActionMenuComponent, ActionsModule, ActiveConnectionService, ActiveDirectoryModule, ActiveDirectorySearchFormFieldComponent, ActiveDirectoryService, AlertBarComponent, AlertBarModule, AlertBarService, AlertSeverity, AppContextService, AppErrorHandler, ApplyMode, AriaLiveOptions, ArrayFormFieldComponent, ArrayFormFieldLoaderComponent, ArrayPropertySchemaFieldLoaderComponent, AuthorizationService, AutofocusDirective, AutofocusModule, AzureManagerService, BackdropComponent, BackdropModule, BackgroundExtensionRootComponent, BadgeBaseComponent, BadgeFeatureTypes, BadgeModule, BannerComponent, BannerModule, BaseComponent, BaseDialogComponent, BaseFormData, BasePropertiesForm, BasicFormLoaderComponent, BatchService, BooleanConverterPipe, BooleanConverterPipeModule, BreadcrumbComponent, BreadcrumbHeaderComponent, BreadcrumbHeaderModule, BreadcrumbModule, BreadcrumbSeparator, BugFixesFeatureBadgeComponent, ByteUnitConverterPipe, ByteUnitConverterPipeModule, CAPSLOCK_VALIDATOR, CalendarFormFieldComponent, CanDeactivateGuard, CapacityBarChartComponent, CapacityBase, CapacityDoughnutChartComponent, CapsLockValidatorDirective, ChartComponent, ChartModule, CheckboxFormFieldComponent, CheckboxFormFieldLoaderComponent, ChecklistFormFieldComponent, ChecklistFormFieldLoaderComponent, ChevronPosition, ChoiceDialogComponent, CimService, CimStreamService, ClampDirective, ClampModule, ClockFormFieldComponent, CodeFormFieldComponent, CodeFormFieldLoaderComponent, ColumnPickerService, ComboboxFormFieldComponent, ComboboxFormFieldLoaderComponent, ComingSoonBadgeComponent, CommonDialogsComponent, CommonSettingsComponent, CommonSettingsComponentBase, ConfirmationDialogComponent, ConfirmationListDialogComponent, ConnectionService, ConnectivityEnforcer, ConnectivityLevel, ContextDropdownComponent, ContextMenuComponent, ContextMenuDirective, ContextMenuModule, CoreServiceModule, CredSSPEnabledBadgeComponent, CredSSPManagerService, CriticalBadgeComponent, CustomBadgeComponent, DataOnlyFormFieldLoaderComponent, DataTableColumnComponent, DataTableColumnPickerExtension, DataTableComponent, DataTableDownloadDataType, DataTableDownloadService, DataTableModule, DataTableMultipleSelectMode, DataTableRenderedItemType, DataTableSortMode, DateConverterPipe, DateConverterPipeModule, DateFormFieldComponent, DateTimeFormFieldComponent, DateTimeRangeFormFieldComponent, DateTimeRangeOptionComponent, Debounce, DeleteColumnComponent, DetailsComponent, DetailsModule, DevGuardService, DialogChangeEvent, DialogCloseReason, DialogComponent, DialogContentComponent, DialogFooterComponent, DialogHeaderComponent, DialogMode, DialogModule, DialogService, DisabledChangedEvent, DisabledDirective, DisabledModule, DiscardDirective, DiscardModule, DocumentationComponent, DocumentationModule, DoughnutChartComponent, DoughnutChartModule, DropdownComponent, DropdownModule, DropdownService, DynamicActionItemComponent, DynamicComponentBase, EditableCollectionItem, EditableLayoutComponent, EditableLayoutItemComponent, ElectronService, EnumConverterPipe, EnumConverterPipeModule, ExperimentGuardService, ExtensionBrokerService, ExtensionDialogComponent, ExtensionRootModule, FeedbackBadgeComponent, FieldsetDirective, FileFormFieldComponent, FileFormFieldLoaderComponent, FileTransferService, FilterPipe, FilterPipeModule, FormAsyncValidatorBase, FormField, FormFieldAccessor, FormFieldAccessorDirective, FormFieldAsyncValidatorDirective, FormFieldComponent, FormFieldIsolatorComponent, FormFieldLayoutComponent, FormFieldOptionComponent, FormFieldOptionSubFormTemplateLoaderComponent, FormFieldOrientation, FormFieldTemplateDirective, FormFieldValidatorDirective, FormValidatorBase, FormWizardStepComponent, FormatPipe, FormatPipeModule, FrameService, GatewayService, GuardsModule, GuidedPaneComponent, GuidedPanelComponent, GuidedPanelModule, HeaderComponent, HeaderModule, HealthAlertSeverity, HighlightPipe, HighlightPipeModule, HorizontalBarChartComponent, HorizontalBarChartModule, HttpService, IconLayerComponent, IconModule, IconTextComponent, IdleComponent, IdleModule, ImprovementFeatureBadgeComponent, InputValidatorDirective, InstallationTypeGuardService, JobsService, JsonFormFieldComponent, JsonFormFieldLoaderComponent, LayeredIconComponent, LayoutComponent, LayoutConfigGenerator, LayoutDefinitionComponent, LayoutDrivenType, LayoutItemComponent, LayoutItemConfigMode, LayoutItemConfigPropertyWidthType, LayoutModule, LegendComponent, LegendEntryComponent, LegendModule, LifetimeService, LineChartComponent, LineChartModule, LineChartType, ListFormFieldComponent, LoadingWheelComponent, LoadingWheelModule, LoadingWheelSize, LocalDateConverterPipe, MachineNameValidatorDirective, MarkdownDirective, MarkdownModule, MasterViewComponent, MasterViewContentDirective, MasterViewContentModule, MasterViewModule, MatchFieldValidatorDirective, MediaConversion2, MessageDialogComponent, Monaco, Navigation, NavigationService, NavigationTitle, NewBadgeComponent, NewFeatureBadgeComponent, NodeCredentialsFormComponent, NodeCredentialsFormModule, NodeService, NotificationService, NumberFormFieldComponent, NumberFormFieldLoaderComponent, ObjectDefaultFormFieldLoaderComponent, ObjectPropertySchemaFieldLoaderComponent, OptionsFormFieldComponent, OrderedListFormFieldComponent, OrderedListFormFieldLoaderComponent, PageAlertBarComponent, PageAlertBarModule, PanelControlComponent, PasswordFormFieldComponent, PasswordFormFieldLoaderComponent, PivotComponent, PivotModule, PivotTabComponent, PivotTabType, PowerShellService, PowerShellStreamService, PreviewBadgeComponent, PropertyGridComponent, PropertyGridItemComponent, PropertyGridModule, QueryDataItemPresetGenerator, QueryDataItemValueType, QueryDataOperand, QueryEditorComponent, QueryEditorModule, RadioGroupFormFieldComponent, RadioGroupFormFieldLoaderComponent, RatingRadioGroupFormFieldComponent, ReactiveForm, ReactiveFormAccessor, ReactiveFormWizardStepComponent, ReadonlyFormFieldComponent, RequiredTrimmedValidatorDirective, ResizerComponent, ResizerModule, ResourceService, RpcService, RpcShellService, SME_ASYNC_VALIDATORS, SME_FORM_FIELD_VALIDATION_ALERT_CONTAINER_PROVIDER, SME_LAYOUT_PROVIDER, SME_VALIDATORS, ScheduleRebootService, SchemaDataTypeStore, SchemaFieldContext, SchemaFieldHostComponent, SchemaFieldHostModule, SchemaFieldLoaderComponentBase, SchemaFormComponent, SchemaFormModule, SchemaPrimitiveType, SchemaUtilities, SearchFormFieldComponent, SecureExtensionDataService, SelectFormFieldDirective, SettingsComponent, SettingsContentComponent, SettingsFooterComponent, SettingsFormDirective, SettingsFormService, SettingsHeaderComponent, SettingsModule, SettingsNavigationComponent, SettingsPageComponent, SettingsService, SimplePropertySchemaFieldLoaderComponent, SliderFormFieldComponent, SliderFormFieldLoaderComponent, SmeExtensionService, SmeFormsModule, SmeHeaderData, SmeInjectableBase, SmeInternalFormFieldComponent, SmeResponsiveWindowBreakpoints, SmeResponsiveWindowBreakpointsValue, SmeResponsiveWindowManagerComponent, SmeRouterLinkDirective, SmeRouterModule, SmeSchemaProperty, SmeTemplateOutletModule, SmeUxComponent, SmeUxContentComponent, SmeUxContentModule, SmeUxFooterComponent, SmeUxFooterModule, SmeUxModule, SmeUxPageComponent, SmeUxPageModule, SmeWizardLiteFooterTemplateComponent, SmeWizardLiteFooterTemplateModule, SnapInExtensionComponent, SnapInExtensionModule, SplitViewComponent, SplitViewContentComponent, SplitViewModule, SplitViewPaneComponent, SshStreamService, StackedBarComponent, StackedHorizontalBarChartComponent, StatusIconComponent, StatusIconType, SvgDirective, SvgInlineDirective, SvgInlineResource, SvgModule, SvgResource, TabbedFormController, TabbedFormItemController, TabbedFormLoaderComponent, TabbedLineChartGroupComponent, TagService, TagsActionButtonComponent, TagsColumnComponent, TagsFormFieldComponent, TagsFormFieldLoaderComponent, TelemetryDirective, TelemetryDirectiveModule, TemplateDrivenWizardStepComponent, TemplateOutletDirective, TextFormFieldComponent, TextFormFieldLoaderComponent, TileComponent, TileContentComponent, TileDirectivesModule, TileImageDirective, TileModule, TileRadioGroupFormFieldComponent, TimeFormFieldComponent, ToggleSwitchFormFieldComponent, ToggleSwitchFormFieldLoaderComponent, ToolHeaderComponent, ToolHeaderModule, TooltipDirective, TooltipHostComponent, TooltipHostInstance, TooltipModule, TooltipPlacement, TooltipZoneDirective, TreeTableComponent, UserAliveService, UxExtensionRootComponent, ValidationAlertComponent, ValidationAlertSeverity, WarningBadgeComponent, WebsocketStreamService, WizardAsParent, WizardBuilder, WizardComponent, WizardLiteComponent, WizardLiteModule, WizardModule, WizardNavigationButtonComponent, WizardNavigationButtonModule, WizardNavigationInformation, WizardStage, WizardStep, WizardStepComponent, WorkItemService, YesNoConverterPipe, YesNoConverterPipeModule, Yield, alertDialog, getFullRouteParams, modalDialog };
|
|
53860
|
+
export { AccordionComponent, AccordionModule, AccordionPanelComponent, ActionBarComponent, ActionBarDirective, ActionButton, ActionButtonAsync, ActionButtonAsyncComponent, ActionButtonComponent, ActionButtonRendererComponent, ActionContainerComponent, ActionDropdown, ActionDropdownComponent, ActionDropdownRendererComponent, ActionItem, ActionItemComponent, ActionItemRendererComponent, ActionItemSeparator, ActionItemSeparatorComponent, ActionItemSeparatorRendererComponent, ActionMenuComponent, ActionsModule, ActiveConnectionService, ActiveDirectoryModule, ActiveDirectorySearchFormFieldComponent, ActiveDirectoryService, AlertBarComponent, AlertBarModule, AlertBarService, AlertSeverity, AppContextService, AppErrorHandler, ApplyMode, AriaLiveOptions, ArrayFormFieldComponent, ArrayFormFieldLoaderComponent, ArrayPropertySchemaFieldLoaderComponent, AuthorizationService, AutofocusDirective, AutofocusModule, AzureManagerService, BackdropComponent, BackdropModule, BackgroundExtensionRootComponent, BadgeBaseComponent, BadgeFeatureTypes, BadgeModule, BannerComponent, BannerModule, BaseComponent, BaseDialogComponent, BaseFormData, BasePropertiesForm, BasicFormLoaderComponent, BatchService, BooleanConverterPipe, BooleanConverterPipeModule, BreadcrumbComponent, BreadcrumbHeaderComponent, BreadcrumbHeaderModule, BreadcrumbModule, BreadcrumbSeparator, BugFixesFeatureBadgeComponent, ByteUnitConverterPipe, ByteUnitConverterPipeModule, CAPSLOCK_VALIDATOR, CalendarFormFieldComponent, CanDeactivateGuard, CapacityBarChartComponent, CapacityBase, CapacityDoughnutChartComponent, CapsLockValidatorDirective, ChartComponent, ChartModule, CheckboxFormFieldComponent, CheckboxFormFieldLoaderComponent, ChecklistFormFieldComponent, ChecklistFormFieldLoaderComponent, ChevronPosition, ChoiceDialogComponent, CimService, CimStreamService, ClampDirective, ClampModule, ClockFormFieldComponent, CodeFormFieldComponent, CodeFormFieldLoaderComponent, ColumnPickerService, ComboboxFormFieldComponent, ComboboxFormFieldLoaderComponent, ComingSoonBadgeComponent, CommonDialogsComponent, CommonSettingsComponent, CommonSettingsComponentBase, ConfirmationDialogComponent, ConfirmationListDialogComponent, ConnectionService, ConnectivityEnforcer, ConnectivityLevel, ContextDropdownComponent, ContextMenuComponent, ContextMenuDirective, ContextMenuModule, CoreServiceModule, CredSSPEnabledBadgeComponent, CredSSPManagerService, CriticalBadgeComponent, CustomBadgeComponent, DataOnlyFormFieldLoaderComponent, DataTableColumnComponent, DataTableColumnPickerExtension, DataTableComponent, DataTableDownloadDataType, DataTableDownloadService, DataTableModule, DataTableMultipleSelectMode, DataTableRenderedItemType, DataTableSortMode, DateConverterPipe, DateConverterPipeModule, DateFormFieldComponent, DateTimeFormFieldComponent, DateTimeRangeFormFieldComponent, DateTimeRangeOptionComponent, Debounce, DeleteColumnComponent, DetailsComponent, DetailsModule, DevGuardService, DialogChangeEvent, DialogCloseReason, DialogComponent, DialogContentComponent, DialogFooterComponent, DialogHeaderComponent, DialogMode, DialogModule, DialogService, DisabledChangedEvent, DisabledDirective, DisabledModule, DiscardDirective, DiscardModule, DocumentationComponent, DocumentationModule, DoughnutChartComponent, DoughnutChartModule, DropdownComponent, DropdownModule, DropdownService, DynamicActionItemComponent, DynamicComponentBase, EditableCollectionItem, EditableLayoutComponent, EditableLayoutItemComponent, ElectronService, EnumConverterPipe, EnumConverterPipeModule, ExperimentGuardService, ExtensionBrokerService, ExtensionDialogComponent, ExtensionRootModule, FeedbackBadgeComponent, FieldsetDirective, FileFormFieldComponent, FileFormFieldLoaderComponent, FileTransferService, FilterPipe, FilterPipeModule, FormAsyncValidatorBase, FormField, FormFieldAccessor, FormFieldAccessorDirective, FormFieldAsyncValidatorDirective, FormFieldComponent, FormFieldIsolatorComponent, FormFieldLayoutComponent, FormFieldOptionComponent, FormFieldOptionSubFormTemplateLoaderComponent, FormFieldOrientation, FormFieldTemplateDirective, FormFieldValidatorDirective, FormValidatorBase, FormWizardStepComponent, FormatPipe, FormatPipeModule, FrameService, GatewayService, GuardsModule, GuidedPaneComponent, GuidedPanelComponent, GuidedPanelModule, HeaderComponent, HeaderModule, HealthAlertSeverity, HighlightPipe, HighlightPipeModule, HorizontalBarChartComponent, HorizontalBarChartModule, HttpService, IconLayerComponent, IconModule, IconTextComponent, IdleComponent, IdleModule, ImprovementFeatureBadgeComponent, InputValidatorDirective, InstallationTypeGuardService, JobsService, JsonFormFieldComponent, JsonFormFieldLoaderComponent, LayeredIconComponent, LayoutComponent, LayoutConfigGenerator, LayoutDefinitionComponent, LayoutDrivenType, LayoutItemComponent, LayoutItemConfigMode, LayoutItemConfigPropertyWidthType, LayoutModule, LegendComponent, LegendEntryComponent, LegendModule, LifetimeService, LineChartComponent, LineChartModule, LineChartType, ListFormFieldComponent, LoadingWheelComponent, LoadingWheelModule, LoadingWheelSize, LocalDateConverterPipe, MachineNameValidatorDirective, MarkdownDirective, MarkdownModule, MasterViewComponent, MasterViewContentDirective, MasterViewContentModule, MasterViewModule, MatchFieldValidatorDirective, MediaConversion2, MessageDialogComponent, Monaco, Navigation, NavigationService, NavigationTitle, NewBadgeComponent, NewFeatureBadgeComponent, NodeCredentialsFormComponent, NodeCredentialsFormModule, NodeService, NotificationService, NumberFormFieldComponent, NumberFormFieldLoaderComponent, ObjectDefaultFormFieldLoaderComponent, ObjectPropertySchemaFieldLoaderComponent, OptionsFormFieldComponent, OrderedListFormFieldComponent, OrderedListFormFieldLoaderComponent, PageAlertBarComponent, PageAlertBarModule, PanelControlComponent, PasswordFormFieldComponent, PasswordFormFieldLoaderComponent, PivotComponent, PivotModule, PivotTabComponent, PivotTabType, PowerShellService, PowerShellStreamService, PreviewBadgeComponent, PropertyGridComponent, PropertyGridItemComponent, PropertyGridModule, QueryDataItemPresetGenerator, QueryDataItemValueType, QueryDataOperand, QueryEditorComponent, QueryEditorModule, RadioGroupFormFieldComponent, RadioGroupFormFieldLoaderComponent, RatingRadioGroupFormFieldComponent, ReactiveForm, ReactiveFormAccessor, ReactiveFormWizardStepComponent, ReadonlyFormFieldComponent, RequiredTrimmedValidatorDirective, ResizerComponent, ResizerModule, ResourceService, RpcService, RpcShellService, SME_ASYNC_VALIDATORS, SME_FORM_FIELD_VALIDATION_ALERT_CONTAINER_PROVIDER, SME_LAYOUT_PROVIDER, SME_VALIDATORS, ScheduleRebootService, SchemaDataTypeStore, SchemaFieldContext, SchemaFieldHostComponent, SchemaFieldHostModule, SchemaFieldLoaderComponentBase, SchemaFormComponent, SchemaFormModule, SchemaPrimitiveType, SchemaUtilities, SearchFormFieldComponent, SecureExtensionDataService, SelectFormFieldDirective, SettingsComponent, SettingsContentComponent, SettingsFooterComponent, SettingsFormDirective, SettingsFormService, SettingsHeaderComponent, SettingsModule, SettingsNavigationComponent, SettingsPageComponent, SettingsService, SimplePropertySchemaFieldLoaderComponent, SliderFormFieldComponent, SliderFormFieldLoaderComponent, SmeExtensionService, SmeFormsModule, SmeHeaderData, SmeInjectableBase, SmeInternalFormFieldComponent, SmeResponsiveWindowBreakpoints, SmeResponsiveWindowBreakpointsValue, SmeResponsiveWindowManagerComponent, SmeRouterLinkDirective, SmeRouterModule, SmeSchemaProperty, SmeTemplateOutletModule, SmeUxComponent, SmeUxContentComponent, SmeUxContentModule, SmeUxFooterComponent, SmeUxFooterModule, SmeUxModule, SmeUxPageComponent, SmeUxPageModule, SmeWizardLiteFooterTemplateComponent, SmeWizardLiteFooterTemplateModule, SnapInExtensionComponent, SnapInExtensionModule, SnapInListener, SplitViewComponent, SplitViewContentComponent, SplitViewModule, SplitViewPaneComponent, SshStreamService, StackedBarComponent, StackedHorizontalBarChartComponent, StatusIconComponent, StatusIconType, SvgDirective, SvgInlineDirective, SvgInlineResource, SvgModule, SvgResource, TabbedFormController, TabbedFormItemController, TabbedFormLoaderComponent, TabbedLineChartGroupComponent, TagService, TagsActionButtonComponent, TagsColumnComponent, TagsFormFieldComponent, TagsFormFieldLoaderComponent, TelemetryDirective, TelemetryDirectiveModule, TemplateDrivenWizardStepComponent, TemplateOutletDirective, TextFormFieldComponent, TextFormFieldLoaderComponent, TileComponent, TileContentComponent, TileDirectivesModule, TileImageDirective, TileModule, TileRadioGroupFormFieldComponent, TimeFormFieldComponent, ToggleSwitchFormFieldComponent, ToggleSwitchFormFieldLoaderComponent, ToolHeaderComponent, ToolHeaderModule, TooltipDirective, TooltipHostComponent, TooltipHostInstance, TooltipModule, TooltipPlacement, TooltipZoneDirective, TreeTableComponent, UserAliveService, UxExtensionRootComponent, ValidationAlertComponent, ValidationAlertSeverity, WarningBadgeComponent, WebsocketStreamService, WizardAsParent, WizardBuilder, WizardComponent, WizardLiteComponent, WizardLiteModule, WizardModule, WizardNavigationButtonComponent, WizardNavigationButtonModule, WizardNavigationInformation, WizardStage, WizardStep, WizardStepComponent, WorkItemService, YesNoConverterPipe, YesNoConverterPipeModule, Yield, alertDialog, getFullRouteParams, modalDialog };
|
|
53462
53861
|
//# sourceMappingURL=microsoft-windows-admin-center-sdk-angular.mjs.map
|