@ng-atomic/common 19.25.0 → 19.27.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/fesm2022/ng-atomic-common-directives-active-control.mjs +10 -10
- package/fesm2022/ng-atomic-common-directives-active-control.mjs.map +1 -1
- package/fesm2022/ng-atomic-common-directives-fallback-src.mjs +4 -4
- package/fesm2022/ng-atomic-common-directives-fallback-src.mjs.map +1 -1
- package/fesm2022/ng-atomic-common-directives-ios-safari-scroll-buggyfill.mjs +7 -7
- package/fesm2022/ng-atomic-common-directives-ios-safari-scroll-buggyfill.mjs.map +1 -1
- package/fesm2022/ng-atomic-common-directives-molecules-column.mjs +20 -20
- package/fesm2022/ng-atomic-common-directives-molecules-column.mjs.map +1 -1
- package/fesm2022/ng-atomic-common-directives-prevent-browser-zoom.mjs +65 -0
- package/fesm2022/ng-atomic-common-directives-prevent-browser-zoom.mjs.map +1 -0
- package/fesm2022/ng-atomic-common-directives-resize-column.mjs +8 -8
- package/fesm2022/ng-atomic-common-directives-resize-column.mjs.map +1 -1
- package/fesm2022/ng-atomic-common-interceptors-authorization.mjs +5 -5
- package/fesm2022/ng-atomic-common-interceptors-authorization.mjs.map +1 -1
- package/fesm2022/ng-atomic-common-interceptors-throttle.mjs +6 -6
- package/fesm2022/ng-atomic-common-interceptors-throttle.mjs.map +1 -1
- package/fesm2022/ng-atomic-common-interceptors-token.mjs +3 -3
- package/fesm2022/ng-atomic-common-interceptors-token.mjs.map +1 -1
- package/fesm2022/ng-atomic-common-interceptors.mjs +4 -4
- package/fesm2022/ng-atomic-common-interceptors.mjs.map +1 -1
- package/fesm2022/ng-atomic-common-models.mjs.map +1 -1
- package/fesm2022/ng-atomic-common-pipes-actions.mjs +3 -3
- package/fesm2022/ng-atomic-common-pipes-actions.mjs.map +1 -1
- package/fesm2022/ng-atomic-common-pipes-auto-columns.mjs +3 -3
- package/fesm2022/ng-atomic-common-pipes-auto-columns.mjs.map +1 -1
- package/fesm2022/ng-atomic-common-pipes-columns.mjs +3 -3
- package/fesm2022/ng-atomic-common-pipes-columns.mjs.map +1 -1
- package/fesm2022/ng-atomic-common-pipes-data-accessor.mjs +3 -3
- package/fesm2022/ng-atomic-common-pipes-data-accessor.mjs.map +1 -1
- package/fesm2022/ng-atomic-common-pipes-domain.mjs +3 -3
- package/fesm2022/ng-atomic-common-pipes-domain.mjs.map +1 -1
- package/fesm2022/ng-atomic-common-pipes-error.mjs +3 -3
- package/fesm2022/ng-atomic-common-pipes-error.mjs.map +1 -1
- package/fesm2022/ng-atomic-common-pipes-expression.mjs +3 -3
- package/fesm2022/ng-atomic-common-pipes-expression.mjs.map +1 -1
- package/fesm2022/ng-atomic-common-pipes-grouped-by.mjs +3 -3
- package/fesm2022/ng-atomic-common-pipes-grouped-by.mjs.map +1 -1
- package/fesm2022/ng-atomic-common-pipes-index-length.mjs +3 -3
- package/fesm2022/ng-atomic-common-pipes-index-length.mjs.map +1 -1
- package/fesm2022/ng-atomic-common-pipes-index.mjs +3 -3
- package/fesm2022/ng-atomic-common-pipes-index.mjs.map +1 -1
- package/fesm2022/ng-atomic-common-pipes-keys.mjs +3 -3
- package/fesm2022/ng-atomic-common-pipes-keys.mjs.map +1 -1
- package/fesm2022/ng-atomic-common-pipes-map.mjs +3 -3
- package/fesm2022/ng-atomic-common-pipes-map.mjs.map +1 -1
- package/fesm2022/ng-atomic-common-pipes-page.mjs +3 -3
- package/fesm2022/ng-atomic-common-pipes-page.mjs.map +1 -1
- package/fesm2022/ng-atomic-common-pipes-pagination.mjs +4 -4
- package/fesm2022/ng-atomic-common-pipes-pagination.mjs.map +1 -1
- package/fesm2022/ng-atomic-common-pipes-query.mjs +4 -4
- package/fesm2022/ng-atomic-common-pipes-query.mjs.map +1 -1
- package/fesm2022/ng-atomic-common-pipes-resolve-columns.mjs +3 -3
- package/fesm2022/ng-atomic-common-pipes-resolve-columns.mjs.map +1 -1
- package/fesm2022/ng-atomic-common-pipes-secret.mjs +3 -3
- package/fesm2022/ng-atomic-common-pipes-secret.mjs.map +1 -1
- package/fesm2022/ng-atomic-common-pipes-select-id.mjs +3 -3
- package/fesm2022/ng-atomic-common-pipes-select-id.mjs.map +1 -1
- package/fesm2022/ng-atomic-common-pipes-signal.mjs +3 -3
- package/fesm2022/ng-atomic-common-pipes-signal.mjs.map +1 -1
- package/fesm2022/ng-atomic-common-pipes-smart-field.mjs +3 -3
- package/fesm2022/ng-atomic-common-pipes-smart-field.mjs.map +1 -1
- package/fesm2022/ng-atomic-common-pipes-sort-by.mjs +3 -3
- package/fesm2022/ng-atomic-common-pipes-sort-by.mjs.map +1 -1
- package/fesm2022/ng-atomic-common-pipes-sort.mjs +3 -3
- package/fesm2022/ng-atomic-common-pipes-sort.mjs.map +1 -1
- package/fesm2022/ng-atomic-common-pipes-style.mjs +3 -3
- package/fesm2022/ng-atomic-common-pipes-style.mjs.map +1 -1
- package/fesm2022/ng-atomic-common-pipes-yen.mjs +3 -3
- package/fesm2022/ng-atomic-common-pipes-yen.mjs.map +1 -1
- package/fesm2022/ng-atomic-common-services-app.mjs +6 -6
- package/fesm2022/ng-atomic-common-services-app.mjs.map +1 -1
- package/fesm2022/ng-atomic-common-services-auth.mjs +3 -3
- package/fesm2022/ng-atomic-common-services-auth.mjs.map +1 -1
- package/fesm2022/ng-atomic-common-services-breakpoint.mjs +4 -4
- package/fesm2022/ng-atomic-common-services-breakpoint.mjs.map +1 -1
- package/fesm2022/ng-atomic-common-services-chips-manager.mjs +3 -3
- package/fesm2022/ng-atomic-common-services-chips-manager.mjs.map +1 -1
- package/fesm2022/ng-atomic-common-services-csv.mjs +3 -3
- package/fesm2022/ng-atomic-common-services-csv.mjs.map +1 -1
- package/fesm2022/ng-atomic-common-services-editing.mjs +5 -5
- package/fesm2022/ng-atomic-common-services-editing.mjs.map +1 -1
- package/fesm2022/ng-atomic-common-services-fab.mjs +5 -5
- package/fesm2022/ng-atomic-common-services-fab.mjs.map +1 -1
- package/fesm2022/ng-atomic-common-services-form-_index.mjs +3 -3
- package/fesm2022/ng-atomic-common-services-form-_index.mjs.map +1 -1
- package/fesm2022/ng-atomic-common-services-form-columns.mjs +3 -3
- package/fesm2022/ng-atomic-common-services-form-columns.mjs.map +1 -1
- package/fesm2022/ng-atomic-common-services-form-json-schema.mjs +3 -3
- package/fesm2022/ng-atomic-common-services-form-json-schema.mjs.map +1 -1
- package/fesm2022/ng-atomic-common-services-form-pagination.mjs +3 -3
- package/fesm2022/ng-atomic-common-services-form-pagination.mjs.map +1 -1
- package/fesm2022/ng-atomic-common-services-form-sort.mjs +3 -3
- package/fesm2022/ng-atomic-common-services-form-sort.mjs.map +1 -1
- package/fesm2022/ng-atomic-common-services-form.mjs +1 -1
- package/fesm2022/ng-atomic-common-services-form.mjs.map +1 -1
- package/fesm2022/ng-atomic-common-services-initializer.mjs +3 -3
- package/fesm2022/ng-atomic-common-services-initializer.mjs.map +1 -1
- package/fesm2022/ng-atomic-common-services-language.mjs +3 -3
- package/fesm2022/ng-atomic-common-services-language.mjs.map +1 -1
- package/fesm2022/ng-atomic-common-services-loading.mjs +7 -7
- package/fesm2022/ng-atomic-common-services-loading.mjs.map +1 -1
- package/fesm2022/ng-atomic-common-services-navigation-history.mjs +7 -7
- package/fesm2022/ng-atomic-common-services-navigation-history.mjs.map +1 -1
- package/fesm2022/ng-atomic-common-services-query-resolver.mjs +6 -6
- package/fesm2022/ng-atomic-common-services-query-resolver.mjs.map +1 -1
- package/fesm2022/ng-atomic-common-services-root-property.mjs +9 -9
- package/fesm2022/ng-atomic-common-services-root-property.mjs.map +1 -1
- package/fesm2022/ng-atomic-common-services-router.mjs +3 -3
- package/fesm2022/ng-atomic-common-services-router.mjs.map +1 -1
- package/fesm2022/ng-atomic-common-services-secret.mjs +4 -4
- package/fesm2022/ng-atomic-common-services-secret.mjs.map +1 -1
- package/fesm2022/ng-atomic-common-services-sheets-actions.mjs +19 -19
- package/fesm2022/ng-atomic-common-services-sheets-actions.mjs.map +1 -1
- package/fesm2022/ng-atomic-common-services-sheets.mjs +7 -7
- package/fesm2022/ng-atomic-common-services-sheets.mjs.map +1 -1
- package/fesm2022/ng-atomic-common-services-side-app.mjs +7 -7
- package/fesm2022/ng-atomic-common-services-side-app.mjs.map +1 -1
- package/fesm2022/ng-atomic-common-services-side-nav-mode.mjs +4 -4
- package/fesm2022/ng-atomic-common-services-side-nav-mode.mjs.map +1 -1
- package/fesm2022/ng-atomic-common-services-snack-bar.mjs +7 -7
- package/fesm2022/ng-atomic-common-services-snack-bar.mjs.map +1 -1
- package/fesm2022/ng-atomic-common-services-spreadsheet.mjs +70 -70
- package/fesm2022/ng-atomic-common-services-spreadsheet.mjs.map +1 -1
- package/fesm2022/ng-atomic-common-services-ui.mjs +6 -6
- package/fesm2022/ng-atomic-common-services-ui.mjs.map +1 -1
- package/fesm2022/ng-atomic-common-stores-entities.mjs +9 -9
- package/fesm2022/ng-atomic-common-stores-entities.mjs.map +1 -1
- package/fesm2022/ng-atomic-common-stores-entity.mjs.map +1 -1
- package/fesm2022/ng-atomic-common-stores-pagination.mjs +3 -3
- package/fesm2022/ng-atomic-common-stores-pagination.mjs.map +1 -1
- package/fesm2022/ng-atomic-common-stores-query.mjs +3 -3
- package/fesm2022/ng-atomic-common-stores-query.mjs.map +1 -1
- package/fesm2022/ng-atomic-common-stores-selection.mjs +3 -3
- package/fesm2022/ng-atomic-common-stores-selection.mjs.map +1 -1
- package/fesm2022/ng-atomic-common-stores-sort.mjs +3 -3
- package/fesm2022/ng-atomic-common-stores-sort.mjs.map +1 -1
- package/fesm2022/ng-atomic-common-utils.mjs +7 -7
- package/fesm2022/ng-atomic-common-utils.mjs.map +1 -1
- package/fesm2022/ng-atomic-common.mjs +19 -19
- package/fesm2022/ng-atomic-common.mjs.map +1 -1
- package/package.json +107 -103
- package/{directives/active-control/index.d.ts → types/ng-atomic-common-directives-active-control.d.ts} +1 -1
- package/types/ng-atomic-common-directives-active-control.d.ts.map +1 -0
- package/{directives/fallback-src/index.d.ts → types/ng-atomic-common-directives-fallback-src.d.ts} +1 -1
- package/types/ng-atomic-common-directives-fallback-src.d.ts.map +1 -0
- package/{directives/ios-safari-scroll-buggyfill/index.d.ts → types/ng-atomic-common-directives-ios-safari-scroll-buggyfill.d.ts} +1 -1
- package/types/ng-atomic-common-directives-ios-safari-scroll-buggyfill.d.ts.map +1 -0
- package/{directives/molecules/column/index.d.ts → types/ng-atomic-common-directives-molecules-column.d.ts} +1 -1
- package/types/ng-atomic-common-directives-molecules-column.d.ts.map +1 -0
- package/types/ng-atomic-common-directives-prevent-browser-zoom.d.ts +21 -0
- package/types/ng-atomic-common-directives-prevent-browser-zoom.d.ts.map +1 -0
- package/{directives/resize-column/index.d.ts → types/ng-atomic-common-directives-resize-column.d.ts} +1 -1
- package/types/ng-atomic-common-directives-resize-column.d.ts.map +1 -0
- package/{interceptors/authorization/index.d.ts → types/ng-atomic-common-interceptors-authorization.d.ts} +1 -1
- package/types/ng-atomic-common-interceptors-authorization.d.ts.map +1 -0
- package/{interceptors/throttle/index.d.ts → types/ng-atomic-common-interceptors-throttle.d.ts} +1 -1
- package/types/ng-atomic-common-interceptors-throttle.d.ts.map +1 -0
- package/{interceptors/token/index.d.ts → types/ng-atomic-common-interceptors-token.d.ts} +1 -1
- package/types/ng-atomic-common-interceptors-token.d.ts.map +1 -0
- package/{interceptors/index.d.ts → types/ng-atomic-common-interceptors.d.ts} +1 -1
- package/types/ng-atomic-common-interceptors.d.ts.map +1 -0
- package/{models/index.d.ts → types/ng-atomic-common-models.d.ts} +1 -1
- package/types/ng-atomic-common-models.d.ts.map +1 -0
- package/{pipes/actions/index.d.ts → types/ng-atomic-common-pipes-actions.d.ts} +1 -1
- package/types/ng-atomic-common-pipes-actions.d.ts.map +1 -0
- package/{pipes/auto-columns/index.d.ts → types/ng-atomic-common-pipes-auto-columns.d.ts} +1 -1
- package/types/ng-atomic-common-pipes-auto-columns.d.ts.map +1 -0
- package/{pipes/columns/index.d.ts → types/ng-atomic-common-pipes-columns.d.ts} +1 -1
- package/types/ng-atomic-common-pipes-columns.d.ts.map +1 -0
- package/{pipes/data-accessor/index.d.ts → types/ng-atomic-common-pipes-data-accessor.d.ts} +1 -1
- package/types/ng-atomic-common-pipes-data-accessor.d.ts.map +1 -0
- package/{pipes/domain/index.d.ts → types/ng-atomic-common-pipes-domain.d.ts} +1 -1
- package/types/ng-atomic-common-pipes-domain.d.ts.map +1 -0
- package/{pipes/error/index.d.ts → types/ng-atomic-common-pipes-error.d.ts} +1 -1
- package/types/ng-atomic-common-pipes-error.d.ts.map +1 -0
- package/{pipes/expression/index.d.ts → types/ng-atomic-common-pipes-expression.d.ts} +1 -1
- package/types/ng-atomic-common-pipes-expression.d.ts.map +1 -0
- package/{pipes/grouped-by/index.d.ts → types/ng-atomic-common-pipes-grouped-by.d.ts} +1 -1
- package/types/ng-atomic-common-pipes-grouped-by.d.ts.map +1 -0
- package/{pipes/index-length/index.d.ts → types/ng-atomic-common-pipes-index-length.d.ts} +1 -1
- package/types/ng-atomic-common-pipes-index-length.d.ts.map +1 -0
- package/{pipes/index/index.d.ts → types/ng-atomic-common-pipes-index.d.ts} +1 -1
- package/types/ng-atomic-common-pipes-index.d.ts.map +1 -0
- package/{pipes/keys/index.d.ts → types/ng-atomic-common-pipes-keys.d.ts} +1 -1
- package/types/ng-atomic-common-pipes-keys.d.ts.map +1 -0
- package/{pipes/map/index.d.ts → types/ng-atomic-common-pipes-map.d.ts} +1 -1
- package/types/ng-atomic-common-pipes-map.d.ts.map +1 -0
- package/{pipes/page/index.d.ts → types/ng-atomic-common-pipes-page.d.ts} +1 -1
- package/types/ng-atomic-common-pipes-page.d.ts.map +1 -0
- package/{pipes/pagination/index.d.ts → types/ng-atomic-common-pipes-pagination.d.ts} +1 -1
- package/types/ng-atomic-common-pipes-pagination.d.ts.map +1 -0
- package/{pipes/query/index.d.ts → types/ng-atomic-common-pipes-query.d.ts} +1 -1
- package/types/ng-atomic-common-pipes-query.d.ts.map +1 -0
- package/{pipes/resolve-columns/index.d.ts → types/ng-atomic-common-pipes-resolve-columns.d.ts} +1 -1
- package/types/ng-atomic-common-pipes-resolve-columns.d.ts.map +1 -0
- package/{pipes/secret/index.d.ts → types/ng-atomic-common-pipes-secret.d.ts} +1 -1
- package/types/ng-atomic-common-pipes-secret.d.ts.map +1 -0
- package/{pipes/select-id/index.d.ts → types/ng-atomic-common-pipes-select-id.d.ts} +1 -1
- package/types/ng-atomic-common-pipes-select-id.d.ts.map +1 -0
- package/{pipes/signal/index.d.ts → types/ng-atomic-common-pipes-signal.d.ts} +1 -1
- package/types/ng-atomic-common-pipes-signal.d.ts.map +1 -0
- package/{pipes/smart-field/index.d.ts → types/ng-atomic-common-pipes-smart-field.d.ts} +1 -1
- package/types/ng-atomic-common-pipes-smart-field.d.ts.map +1 -0
- package/{pipes/sort-by/index.d.ts → types/ng-atomic-common-pipes-sort-by.d.ts} +1 -1
- package/types/ng-atomic-common-pipes-sort-by.d.ts.map +1 -0
- package/{pipes/sort/index.d.ts → types/ng-atomic-common-pipes-sort.d.ts} +1 -1
- package/types/ng-atomic-common-pipes-sort.d.ts.map +1 -0
- package/{pipes/style/index.d.ts → types/ng-atomic-common-pipes-style.d.ts} +1 -1
- package/types/ng-atomic-common-pipes-style.d.ts.map +1 -0
- package/{pipes/yen/index.d.ts → types/ng-atomic-common-pipes-yen.d.ts} +1 -1
- package/types/ng-atomic-common-pipes-yen.d.ts.map +1 -0
- package/{services/app/index.d.ts → types/ng-atomic-common-services-app.d.ts} +1 -1
- package/types/ng-atomic-common-services-app.d.ts.map +1 -0
- package/{services/auth/index.d.ts → types/ng-atomic-common-services-auth.d.ts} +1 -1
- package/types/ng-atomic-common-services-auth.d.ts.map +1 -0
- package/{services/breakpoint/index.d.ts → types/ng-atomic-common-services-breakpoint.d.ts} +1 -1
- package/types/ng-atomic-common-services-breakpoint.d.ts.map +1 -0
- package/{services/chips-manager/index.d.ts → types/ng-atomic-common-services-chips-manager.d.ts} +1 -1
- package/types/ng-atomic-common-services-chips-manager.d.ts.map +1 -0
- package/{services/csv/index.d.ts → types/ng-atomic-common-services-csv.d.ts} +1 -1
- package/types/ng-atomic-common-services-csv.d.ts.map +1 -0
- package/{services/editing/index.d.ts → types/ng-atomic-common-services-editing.d.ts} +1 -1
- package/types/ng-atomic-common-services-editing.d.ts.map +1 -0
- package/{services/fab/index.d.ts → types/ng-atomic-common-services-fab.d.ts} +1 -1
- package/types/ng-atomic-common-services-fab.d.ts.map +1 -0
- package/{services/form/_index/index.d.ts → types/ng-atomic-common-services-form-_index.d.ts} +1 -1
- package/types/ng-atomic-common-services-form-_index.d.ts.map +1 -0
- package/{services/form/columns/index.d.ts → types/ng-atomic-common-services-form-columns.d.ts} +1 -1
- package/types/ng-atomic-common-services-form-columns.d.ts.map +1 -0
- package/{services/form/json-schema/index.d.ts → types/ng-atomic-common-services-form-json-schema.d.ts} +1 -1
- package/types/ng-atomic-common-services-form-json-schema.d.ts.map +1 -0
- package/{services/form/pagination/index.d.ts → types/ng-atomic-common-services-form-pagination.d.ts} +1 -1
- package/types/ng-atomic-common-services-form-pagination.d.ts.map +1 -0
- package/{services/form/sort/index.d.ts → types/ng-atomic-common-services-form-sort.d.ts} +1 -1
- package/types/ng-atomic-common-services-form-sort.d.ts.map +1 -0
- package/{services/form/index.d.ts → types/ng-atomic-common-services-form.d.ts} +1 -1
- package/types/ng-atomic-common-services-form.d.ts.map +1 -0
- package/{services/initializer/index.d.ts → types/ng-atomic-common-services-initializer.d.ts} +1 -1
- package/types/ng-atomic-common-services-initializer.d.ts.map +1 -0
- package/{services/language/index.d.ts → types/ng-atomic-common-services-language.d.ts} +1 -1
- package/types/ng-atomic-common-services-language.d.ts.map +1 -0
- package/{services/loading/index.d.ts → types/ng-atomic-common-services-loading.d.ts} +1 -1
- package/types/ng-atomic-common-services-loading.d.ts.map +1 -0
- package/{services/navigation-history/index.d.ts → types/ng-atomic-common-services-navigation-history.d.ts} +1 -1
- package/types/ng-atomic-common-services-navigation-history.d.ts.map +1 -0
- package/{services/query-resolver/index.d.ts → types/ng-atomic-common-services-query-resolver.d.ts} +1 -1
- package/types/ng-atomic-common-services-query-resolver.d.ts.map +1 -0
- package/{services/root-property/index.d.ts → types/ng-atomic-common-services-root-property.d.ts} +1 -1
- package/types/ng-atomic-common-services-root-property.d.ts.map +1 -0
- package/{services/router/index.d.ts → types/ng-atomic-common-services-router.d.ts} +1 -1
- package/types/ng-atomic-common-services-router.d.ts.map +1 -0
- package/{services/secret/index.d.ts → types/ng-atomic-common-services-secret.d.ts} +1 -1
- package/types/ng-atomic-common-services-secret.d.ts.map +1 -0
- package/{services/sheets/actions/index.d.ts → types/ng-atomic-common-services-sheets-actions.d.ts} +1 -1
- package/types/ng-atomic-common-services-sheets-actions.d.ts.map +1 -0
- package/{services/sheets/index.d.ts → types/ng-atomic-common-services-sheets.d.ts} +1 -1
- package/types/ng-atomic-common-services-sheets.d.ts.map +1 -0
- package/{services/side-app/index.d.ts → types/ng-atomic-common-services-side-app.d.ts} +1 -1
- package/types/ng-atomic-common-services-side-app.d.ts.map +1 -0
- package/{services/side-nav-mode/index.d.ts → types/ng-atomic-common-services-side-nav-mode.d.ts} +1 -1
- package/types/ng-atomic-common-services-side-nav-mode.d.ts.map +1 -0
- package/{services/snack-bar/index.d.ts → types/ng-atomic-common-services-snack-bar.d.ts} +1 -1
- package/types/ng-atomic-common-services-snack-bar.d.ts.map +1 -0
- package/{services/spreadsheet/index.d.ts → types/ng-atomic-common-services-spreadsheet.d.ts} +1 -1
- package/types/ng-atomic-common-services-spreadsheet.d.ts.map +1 -0
- package/{services/ui/index.d.ts → types/ng-atomic-common-services-ui.d.ts} +1 -1
- package/types/ng-atomic-common-services-ui.d.ts.map +1 -0
- package/{stores/entities/index.d.ts → types/ng-atomic-common-stores-entities.d.ts} +9 -4
- package/types/ng-atomic-common-stores-entities.d.ts.map +1 -0
- package/{stores/entity/index.d.ts → types/ng-atomic-common-stores-entity.d.ts} +1 -1
- package/types/ng-atomic-common-stores-entity.d.ts.map +1 -0
- package/{stores/pagination/index.d.ts → types/ng-atomic-common-stores-pagination.d.ts} +1 -1
- package/types/ng-atomic-common-stores-pagination.d.ts.map +1 -0
- package/{stores/query/index.d.ts → types/ng-atomic-common-stores-query.d.ts} +1 -1
- package/types/ng-atomic-common-stores-query.d.ts.map +1 -0
- package/{stores/selection/index.d.ts → types/ng-atomic-common-stores-selection.d.ts} +1 -1
- package/types/ng-atomic-common-stores-selection.d.ts.map +1 -0
- package/{stores/sort/index.d.ts → types/ng-atomic-common-stores-sort.d.ts} +1 -1
- package/types/ng-atomic-common-stores-sort.d.ts.map +1 -0
- package/{utils/index.d.ts → types/ng-atomic-common-utils.d.ts} +1 -1
- package/types/ng-atomic-common-utils.d.ts.map +1 -0
- package/{index.d.ts → types/ng-atomic-common.d.ts} +1 -1
- package/types/ng-atomic-common.d.ts.map +1 -0
- package/directives/active-control/index.d.ts.map +0 -1
- package/directives/fallback-src/index.d.ts.map +0 -1
- package/directives/ios-safari-scroll-buggyfill/index.d.ts.map +0 -1
- package/directives/molecules/column/index.d.ts.map +0 -1
- package/directives/resize-column/index.d.ts.map +0 -1
- package/index.d.ts.map +0 -1
- package/interceptors/authorization/index.d.ts.map +0 -1
- package/interceptors/index.d.ts.map +0 -1
- package/interceptors/throttle/index.d.ts.map +0 -1
- package/interceptors/token/index.d.ts.map +0 -1
- package/models/index.d.ts.map +0 -1
- package/pipes/actions/index.d.ts.map +0 -1
- package/pipes/auto-columns/index.d.ts.map +0 -1
- package/pipes/columns/index.d.ts.map +0 -1
- package/pipes/data-accessor/index.d.ts.map +0 -1
- package/pipes/domain/index.d.ts.map +0 -1
- package/pipes/error/index.d.ts.map +0 -1
- package/pipes/expression/index.d.ts.map +0 -1
- package/pipes/grouped-by/index.d.ts.map +0 -1
- package/pipes/index/index.d.ts.map +0 -1
- package/pipes/index-length/index.d.ts.map +0 -1
- package/pipes/keys/index.d.ts.map +0 -1
- package/pipes/map/index.d.ts.map +0 -1
- package/pipes/page/index.d.ts.map +0 -1
- package/pipes/pagination/index.d.ts.map +0 -1
- package/pipes/query/index.d.ts.map +0 -1
- package/pipes/resolve-columns/index.d.ts.map +0 -1
- package/pipes/secret/index.d.ts.map +0 -1
- package/pipes/select-id/index.d.ts.map +0 -1
- package/pipes/signal/index.d.ts.map +0 -1
- package/pipes/smart-field/index.d.ts.map +0 -1
- package/pipes/sort/index.d.ts.map +0 -1
- package/pipes/sort-by/index.d.ts.map +0 -1
- package/pipes/style/index.d.ts.map +0 -1
- package/pipes/yen/index.d.ts.map +0 -1
- package/services/app/index.d.ts.map +0 -1
- package/services/auth/index.d.ts.map +0 -1
- package/services/breakpoint/index.d.ts.map +0 -1
- package/services/chips-manager/index.d.ts.map +0 -1
- package/services/csv/index.d.ts.map +0 -1
- package/services/editing/index.d.ts.map +0 -1
- package/services/fab/index.d.ts.map +0 -1
- package/services/form/_index/index.d.ts.map +0 -1
- package/services/form/columns/index.d.ts.map +0 -1
- package/services/form/index.d.ts.map +0 -1
- package/services/form/json-schema/index.d.ts.map +0 -1
- package/services/form/pagination/index.d.ts.map +0 -1
- package/services/form/sort/index.d.ts.map +0 -1
- package/services/initializer/index.d.ts.map +0 -1
- package/services/language/index.d.ts.map +0 -1
- package/services/loading/index.d.ts.map +0 -1
- package/services/navigation-history/index.d.ts.map +0 -1
- package/services/query-resolver/index.d.ts.map +0 -1
- package/services/root-property/index.d.ts.map +0 -1
- package/services/router/index.d.ts.map +0 -1
- package/services/secret/index.d.ts.map +0 -1
- package/services/sheets/actions/index.d.ts.map +0 -1
- package/services/sheets/index.d.ts.map +0 -1
- package/services/side-app/index.d.ts.map +0 -1
- package/services/side-nav-mode/index.d.ts.map +0 -1
- package/services/snack-bar/index.d.ts.map +0 -1
- package/services/spreadsheet/index.d.ts.map +0 -1
- package/services/ui/index.d.ts.map +0 -1
- package/stores/entities/index.d.ts.map +0 -1
- package/stores/entity/index.d.ts.map +0 -1
- package/stores/pagination/index.d.ts.map +0 -1
- package/stores/query/index.d.ts.map +0 -1
- package/stores/selection/index.d.ts.map +0 -1
- package/stores/sort/index.d.ts.map +0 -1
- package/utils/index.d.ts.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ng-atomic-common.mjs","sources":["../tmp-esm2022/common.module.js","../tmp-esm2022/services/editing/editing-state-manager.service.js","../tmp-esm2022/operators/pause-when-editing.operator.js","../tmp-esm2022/directives/active-control/handlers/event-handlers.js","../tmp-esm2022/directives/active-control/handlers/scroll-control.js","../tmp-esm2022/directives/active-control/active-control.directive.js","../tmp-esm2022/ng-atomic-common.js"],"sourcesContent":["import { importProvidersFrom, NgModule } from \"@angular/core\";\nimport { MatDialogModule } from '@angular/material/dialog';\nimport { MatSnackBarModule } from '@angular/material/snack-bar';\nimport { NgAtomicSheetsModule } from \"@ng-atomic/common/services/sheets\";\nimport * as i0 from \"@angular/core\";\nexport class NgAtomicCommonModule {\n static forRoot() {\n return {\n ngModule: NgAtomicCommonModule,\n providers: [],\n };\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.0.5\", ngImport: i0, type: NgAtomicCommonModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }\n static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: \"14.0.0\", version: \"20.0.5\", ngImport: i0, type: NgAtomicCommonModule, imports: [MatDialogModule,\n MatSnackBarModule,\n NgAtomicSheetsModule] }); }\n static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: \"12.0.0\", version: \"20.0.5\", ngImport: i0, type: NgAtomicCommonModule, imports: [MatDialogModule,\n MatSnackBarModule,\n NgAtomicSheetsModule] }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.0.5\", ngImport: i0, type: NgAtomicCommonModule, decorators: [{\n type: NgModule,\n args: [{\n imports: [\n MatDialogModule,\n MatSnackBarModule,\n NgAtomicSheetsModule,\n ]\n }]\n }] });\nexport function provideNgAtomicCommon() {\n return importProvidersFrom(NgAtomicCommonModule.forRoot());\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tbW9uLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL0BuZy1hdG9taWMvY29tbW9uL3NyYy9saWIvY29tbW9uLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQXdCLG1CQUFtQixFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNwRixPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDM0QsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDaEUsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sbUNBQW1DLENBQUM7O0FBVXpFLE1BQU0sT0FBTyxvQkFBb0I7SUFDL0IsTUFBTSxDQUFDLE9BQU87UUFDWixPQUFPO1lBQ0wsUUFBUSxFQUFFLG9CQUFvQjtZQUM5QixTQUFTLEVBQUUsRUFDVjtTQUNGLENBQUE7SUFDSCxDQUFDOzhHQVBVLG9CQUFvQjsrR0FBcEIsb0JBQW9CLFlBTDdCLGVBQWU7WUFDZixpQkFBaUI7WUFDakIsb0JBQW9COytHQUdYLG9CQUFvQixZQUw3QixlQUFlO1lBQ2YsaUJBQWlCO1lBQ2pCLG9CQUFvQjs7MkZBR1gsb0JBQW9CO2tCQVBoQyxRQUFRO21CQUFDO29CQUNSLE9BQU8sRUFBRTt3QkFDUCxlQUFlO3dCQUNmLGlCQUFpQjt3QkFDakIsb0JBQW9CO3FCQUNyQjtpQkFDRjs7QUFXRCxNQUFNLFVBQVUscUJBQXFCO0lBQ25DLE9BQU8sbUJBQW1CLENBQUMsb0JBQW9CLENBQUMsT0FBTyxFQUFFLENBQUMsQ0FBQztBQUM3RCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRW52aXJvbm1lbnRQcm92aWRlcnMsIGltcG9ydFByb3ZpZGVyc0Zyb20sIE5nTW9kdWxlIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcbmltcG9ydCB7IE1hdERpYWxvZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2RpYWxvZyc7XG5pbXBvcnQgeyBNYXRTbmFja0Jhck1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3NuYWNrLWJhcic7XG5pbXBvcnQgeyBOZ0F0b21pY1NoZWV0c01vZHVsZSB9IGZyb20gXCJAbmctYXRvbWljL2NvbW1vbi9zZXJ2aWNlcy9zaGVldHNcIjtcblxuXG5ATmdNb2R1bGUoe1xuICBpbXBvcnRzOiBbXG4gICAgTWF0RGlhbG9nTW9kdWxlLFxuICAgIE1hdFNuYWNrQmFyTW9kdWxlLFxuICAgIE5nQXRvbWljU2hlZXRzTW9kdWxlLFxuICBdXG59KVxuZXhwb3J0IGNsYXNzIE5nQXRvbWljQ29tbW9uTW9kdWxlIHtcbiAgc3RhdGljIGZvclJvb3QoKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIG5nTW9kdWxlOiBOZ0F0b21pY0NvbW1vbk1vZHVsZSxcbiAgICAgIHByb3ZpZGVyczogW1xuICAgICAgXSxcbiAgICB9XG4gIH1cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHByb3ZpZGVOZ0F0b21pY0NvbW1vbigpOiBFbnZpcm9ubWVudFByb3ZpZGVycyB7XG4gIHJldHVybiBpbXBvcnRQcm92aWRlcnNGcm9tKE5nQXRvbWljQ29tbW9uTW9kdWxlLmZvclJvb3QoKSk7XG59XG4iXX0=","import { Injectable, signal, computed } from '@angular/core';\nimport { toObservable } from '@angular/core/rxjs-interop';\nimport * as i0 from \"@angular/core\";\n/**\n * EditingStateManager Service\n *\n * Manages global editing state for preventing data updates during cell editing.\n * Uses Angular Signals for reactive state management.\n */\nexport class EditingStateManager {\n constructor() {\n this.editingCells = signal([]);\n this.isEditing = computed(() => this.editingCells().length > 0);\n this.isEditing$ = toObservable(this.isEditing);\n }\n /**\n * Start editing a cell\n * @param rowId Row identifier\n * @param columnId Column identifier\n */\n startEditing(rowId, columnId) {\n const cellKey = `${rowId}-${columnId}`;\n this.editingCells.update(cells => {\n const newCells = new Set(cells);\n newCells.add(cellKey);\n return [...newCells];\n });\n }\n /**\n * Stop editing a cell\n * @param rowId Row identifier\n * @param columnId Column identifier\n */\n stopEditing(rowId, columnId) {\n const cellKey = `${rowId}-${columnId}`;\n this.editingCells.update(cells => {\n const newCells = new Set(cells);\n newCells.delete(cellKey);\n return [...newCells];\n });\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.0.5\", ngImport: i0, type: EditingStateManager, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }\n static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.0.5\", ngImport: i0, type: EditingStateManager, providedIn: 'root' }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.0.5\", ngImport: i0, type: EditingStateManager, decorators: [{\n type: Injectable,\n args: [{ providedIn: 'root' }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWRpdGluZy1zdGF0ZS1tYW5hZ2VyLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9AbmctYXRvbWljL2NvbW1vbi9zcmMvbGliL3NlcnZpY2VzL2VkaXRpbmcvZWRpdGluZy1zdGF0ZS1tYW5hZ2VyLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzdELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQzs7QUFHMUQ7Ozs7O0dBS0c7QUFFSCxNQUFNLE9BQU8sbUJBQW1CO0lBRGhDO1FBRW1CLGlCQUFZLEdBQUcsTUFBTSxDQUFXLEVBQUUsQ0FBQyxDQUFDO1FBQzVDLGNBQVMsR0FBRyxRQUFRLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FBQztRQUMzRCxlQUFVLEdBQXdCLFlBQVksQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7S0E2QnpFO0lBM0JDOzs7O09BSUc7SUFDSCxZQUFZLENBQUMsS0FBc0IsRUFBRSxRQUFnQjtRQUNuRCxNQUFNLE9BQU8sR0FBRyxHQUFHLEtBQUssSUFBSSxRQUFRLEVBQUUsQ0FBQztRQUN2QyxJQUFJLENBQUMsWUFBWSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsRUFBRTtZQUMvQixNQUFNLFFBQVEsR0FBRyxJQUFJLEdBQUcsQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUNoQyxRQUFRLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1lBQ3RCLE9BQU8sQ0FBQyxHQUFHLFFBQVEsQ0FBQyxDQUFDO1FBQ3ZCLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVEOzs7O09BSUc7SUFDSCxXQUFXLENBQUMsS0FBc0IsRUFBRSxRQUFnQjtRQUNsRCxNQUFNLE9BQU8sR0FBRyxHQUFHLEtBQUssSUFBSSxRQUFRLEVBQUUsQ0FBQztRQUN2QyxJQUFJLENBQUMsWUFBWSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsRUFBRTtZQUMvQixNQUFNLFFBQVEsR0FBRyxJQUFJLEdBQUcsQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUNoQyxRQUFRLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1lBQ3pCLE9BQU8sQ0FBQyxHQUFHLFFBQVEsQ0FBQyxDQUFDO1FBQ3ZCLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQzs4R0EvQlUsbUJBQW1CO2tIQUFuQixtQkFBbUIsY0FETixNQUFNOzsyRkFDbkIsbUJBQW1CO2tCQUQvQixVQUFVO21CQUFDLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUsIHNpZ25hbCwgY29tcHV0ZWQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IHRvT2JzZXJ2YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUvcnhqcy1pbnRlcm9wJztcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcblxuLyoqXG4gKiBFZGl0aW5nU3RhdGVNYW5hZ2VyIFNlcnZpY2VcbiAqIFxuICogTWFuYWdlcyBnbG9iYWwgZWRpdGluZyBzdGF0ZSBmb3IgcHJldmVudGluZyBkYXRhIHVwZGF0ZXMgZHVyaW5nIGNlbGwgZWRpdGluZy5cbiAqIFVzZXMgQW5ndWxhciBTaWduYWxzIGZvciByZWFjdGl2ZSBzdGF0ZSBtYW5hZ2VtZW50LlxuICovXG5ASW5qZWN0YWJsZSh7IHByb3ZpZGVkSW46ICdyb290JyB9KVxuZXhwb3J0IGNsYXNzIEVkaXRpbmdTdGF0ZU1hbmFnZXIge1xuICBwcml2YXRlIHJlYWRvbmx5IGVkaXRpbmdDZWxscyA9IHNpZ25hbDxzdHJpbmdbXT4oW10pO1xuICByZWFkb25seSBpc0VkaXRpbmcgPSBjb21wdXRlZCgoKSA9PiB0aGlzLmVkaXRpbmdDZWxscygpLmxlbmd0aCA+IDApO1xuICByZWFkb25seSBpc0VkaXRpbmckOiBPYnNlcnZhYmxlPGJvb2xlYW4+ID0gdG9PYnNlcnZhYmxlKHRoaXMuaXNFZGl0aW5nKTtcbiAgXG4gIC8qKlxuICAgKiBTdGFydCBlZGl0aW5nIGEgY2VsbFxuICAgKiBAcGFyYW0gcm93SWQgUm93IGlkZW50aWZpZXJcbiAgICogQHBhcmFtIGNvbHVtbklkIENvbHVtbiBpZGVudGlmaWVyXG4gICAqL1xuICBzdGFydEVkaXRpbmcocm93SWQ6IHN0cmluZyB8IG51bWJlciwgY29sdW1uSWQ6IHN0cmluZyk6IHZvaWQge1xuICAgIGNvbnN0IGNlbGxLZXkgPSBgJHtyb3dJZH0tJHtjb2x1bW5JZH1gO1xuICAgIHRoaXMuZWRpdGluZ0NlbGxzLnVwZGF0ZShjZWxscyA9PiB7XG4gICAgICBjb25zdCBuZXdDZWxscyA9IG5ldyBTZXQoY2VsbHMpO1xuICAgICAgbmV3Q2VsbHMuYWRkKGNlbGxLZXkpO1xuICAgICAgcmV0dXJuIFsuLi5uZXdDZWxsc107XG4gICAgfSk7XG4gIH1cbiAgXG4gIC8qKlxuICAgKiBTdG9wIGVkaXRpbmcgYSBjZWxsXG4gICAqIEBwYXJhbSByb3dJZCBSb3cgaWRlbnRpZmllclxuICAgKiBAcGFyYW0gY29sdW1uSWQgQ29sdW1uIGlkZW50aWZpZXJcbiAgICovXG4gIHN0b3BFZGl0aW5nKHJvd0lkOiBzdHJpbmcgfCBudW1iZXIsIGNvbHVtbklkOiBzdHJpbmcpOiB2b2lkIHtcbiAgICBjb25zdCBjZWxsS2V5ID0gYCR7cm93SWR9LSR7Y29sdW1uSWR9YDtcbiAgICB0aGlzLmVkaXRpbmdDZWxscy51cGRhdGUoY2VsbHMgPT4ge1xuICAgICAgY29uc3QgbmV3Q2VsbHMgPSBuZXcgU2V0KGNlbGxzKTtcbiAgICAgIG5ld0NlbGxzLmRlbGV0ZShjZWxsS2V5KTtcbiAgICAgIHJldHVybiBbLi4ubmV3Q2VsbHNdO1xuICAgIH0pO1xuICB9XG59Il19","import { Observable } from 'rxjs';\n/**\n * Custom RxJS operator that pauses data flow when editing is active.\n *\n * When editing starts, incoming values are buffered.\n * When editing ends, the latest buffered value is emitted.\n *\n * @param editingStateManager The EditingStateManager service instance\n * @returns An operator function that can be used in RxJS pipe\n *\n * @example\n * ```typescript\n * dataStream$.pipe(\n * pauseWhenEditing(this.editingStateManager),\n * // ... other operators\n * )\n * ```\n */\nexport function pauseWhenEditing(editingStateManager) {\n return (source) => {\n return new Observable(observer => {\n let pendingValues = [];\n let isEditing = false;\n // Subscribe to editing state changes\n const editingSub = editingStateManager.isEditing$.subscribe(editing => {\n const wasEditing = isEditing;\n isEditing = editing;\n console.debug('[pauseWhenEditing] Editing state changed:', { wasEditing, isEditing, pendingCount: pendingValues.length });\n // When editing ends, emit the latest pending value\n if (wasEditing && !isEditing && pendingValues.length > 0) {\n // Emit only the latest value (discard older updates)\n const latestValue = pendingValues[pendingValues.length - 1];\n pendingValues = [];\n console.debug('[pauseWhenEditing] Emitting pending value after edit end');\n observer.next(latestValue);\n }\n });\n // Subscribe to the source data stream\n const sourceSub = source.subscribe({\n next: value => {\n if (!isEditing) {\n // Pass through immediately when not editing\n console.debug('[pauseWhenEditing] Passing through value (not editing)');\n observer.next(value);\n }\n },\n error: err => observer.error(err),\n complete: () => observer.complete()\n });\n // Cleanup subscriptions\n return () => {\n editingSub.unsubscribe();\n sourceSub.unsubscribe();\n };\n });\n };\n}\n/**\n * Alternative operator that buffers ALL updates during editing.\n *\n * When editing ends, all buffered values are emitted in sequence.\n * This preserves the complete update history.\n *\n * @param editingStateManager The EditingStateManager service instance\n * @returns An operator function that can be used in RxJS pipe\n *\n * @example\n * ```typescript\n * dataStream$.pipe(\n * bufferWhenEditing(this.editingStateManager),\n * // ... other operators\n * )\n * ```\n */\nexport function bufferWhenEditing(editingStateManager) {\n return (source) => {\n return new Observable(observer => {\n const buffer = [];\n let isEditing = false;\n // Subscribe to editing state changes\n const editingSub = editingStateManager.isEditing$.subscribe(editing => {\n const wasEditing = isEditing;\n isEditing = editing;\n // When editing ends, emit all buffered values\n if (wasEditing && !isEditing && buffer.length > 0) {\n buffer.forEach(value => observer.next(value));\n buffer.length = 0; // Clear the buffer\n }\n });\n // Subscribe to the source data stream\n const sourceSub = source.subscribe({\n next: value => {\n if (!isEditing) {\n observer.next(value);\n }\n else {\n buffer.push(value);\n }\n },\n error: err => observer.error(err),\n complete: () => observer.complete()\n });\n // Cleanup subscriptions\n return () => {\n editingSub.unsubscribe();\n sourceSub.unsubscribe();\n };\n });\n };\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGF1c2Utd2hlbi1lZGl0aW5nLm9wZXJhdG9yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvQG5nLWF0b21pYy9jb21tb24vc3JjL2xpYi9vcGVyYXRvcnMvcGF1c2Utd2hlbi1lZGl0aW5nLm9wZXJhdG9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQTRCLE1BQU0sTUFBTSxDQUFDO0FBRzVEOzs7Ozs7Ozs7Ozs7Ozs7O0dBZ0JHO0FBQ0gsTUFBTSxVQUFVLGdCQUFnQixDQUM5QixtQkFBd0M7SUFFeEMsT0FBTyxDQUFDLE1BQXFCLEVBQUUsRUFBRTtRQUMvQixPQUFPLElBQUksVUFBVSxDQUFJLFFBQVEsQ0FBQyxFQUFFO1lBQ2xDLElBQUksYUFBYSxHQUFRLEVBQUUsQ0FBQztZQUM1QixJQUFJLFNBQVMsR0FBRyxLQUFLLENBQUM7WUFFdEIscUNBQXFDO1lBQ3JDLE1BQU0sVUFBVSxHQUFHLG1CQUFtQixDQUFDLFVBQVUsQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLEVBQUU7Z0JBQ3BFLE1BQU0sVUFBVSxHQUFHLFNBQVMsQ0FBQztnQkFDN0IsU0FBUyxHQUFHLE9BQU8sQ0FBQztnQkFDcEIsT0FBTyxDQUFDLEtBQUssQ0FBQywyQ0FBMkMsRUFBRSxFQUFFLFVBQVUsRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLGFBQWEsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxDQUFDO2dCQUUxSCxtREFBbUQ7Z0JBQ25ELElBQUksVUFBVSxJQUFJLENBQUMsU0FBUyxJQUFJLGFBQWEsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFLENBQUM7b0JBQ3pELHFEQUFxRDtvQkFDckQsTUFBTSxXQUFXLEdBQUcsYUFBYSxDQUFDLGFBQWEsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLENBQUM7b0JBQzVELGFBQWEsR0FBRyxFQUFFLENBQUM7b0JBQ25CLE9BQU8sQ0FBQyxLQUFLLENB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cmF0b3JGdW5jdGlvbiB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgRWRpdGluZ1N0YXRlTWFuYWdlciB9IGZyb20gJy4uL3NlcnZpY2VzL2VkaXRpbmcvZWRpdGluZy1zdGF0ZS1tYW5hZ2VyLnNlcnZpY2UnO1xuXG4vKipcbiAqIEN1c3RvbSBSeEpTIG9wZXJhdG9yIHRoYXQgcGF1c2VzIGRhdGEgZmxvdyB3aGVuIGVkaXRpbmcgaXMgYWN0aXZlLlxuICogXG4gKiBXaGVuIGVkaXRpbmcgc3RhcnRzLCBpbmNvbWluZyB2YWx1ZXMgYXJlIGJ1ZmZlcmVkLlxuICogV2hlbiBlZGl0aW5nIGVuZHMsIHRoZSBsYXRlc3QgYnVmZmVyZWQgdmFsdWUgaXMgZW1pdHRlZC5cbiAqIFxuICogQHBhcmFtIGVkaXRpbmdTdGF0ZU1hbmFnZXIgVGhlIEVkaXRpbmdTdGF0ZU1hbmFnZXIgc2VydmljZSBpbnN0YW5jZVxuICogQHJldHVybnMgQW4gb3BlcmF0b3IgZnVuY3Rpb24gdGhhdCBjYW4gYmUgdXNlZCBpbiBSeEpTIHBpcGVcbiAqIFxuICogQGV4YW1wbGVcbiAqIGBgYHR5cGVzY3JpcHRcbiAqIGRhdGFTdHJlYW0kLnBpcGUoXG4gKiAgIHBhdXNlV2hlbkVkaXRpbmcodGhpcy5lZGl0aW5nU3RhdGVNYW5hZ2VyKSxcbiAqICAgLy8gLi4uIG90aGVyIG9wZXJhdG9yc1xuICogKVxuICogYGBgXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBwYXVzZVdoZW5FZGl0aW5nPFQ+KFxuICBlZGl0aW5nU3RhdGVNYW5hZ2VyOiBFZGl0aW5nU3RhdGVNYW5hZ2VyXG4pOiBNb25vVHlwZU9wZXJhdG9yRnVuY3Rpb248VD4ge1xuICByZXR1cm4gKHNvdXJjZTogT2JzZXJ2YWJsZTxUPikgPT4ge1xuICAgIHJldHVybiBuZXcgT2JzZXJ2YWJsZTxUPihvYnNlcnZlciA9PiB7XG4gICAgICBsZXQgcGVuZGluZ1ZhbHVlczogVFtdID0gW107XG4gICAgICBsZXQgaXNFZGl0aW5nID0gZmFsc2U7XG4gICAgICBcbiAgICAgIC8vIFN1YnNjcmliZSB0byBlZGl0aW5nIHN0YXRlIGNoYW5nZXNcbiAgICAgIGNvbnN0IGVkaXRpbmdTdWIgPSBlZGl0aW5nU3RhdGVNYW5hZ2VyLmlzRWRpdGluZyQuc3Vic2NyaWJlKGVkaXRpbmcgPT4ge1xuICAgICAgICBjb25zdCB3YXNFZGl0aW5nID0gaXNFZGl0aW5nO1xuICAgICAgICBpc0VkaXRpbmcgPSBlZGl0aW5nO1xuICAgICAgICBjb25zb2xlLmRlYnVnKCdbcGF1c2VXaGVuRWRpdGluZ10gRWRpdGluZyBzdGF0ZSBjaGFuZ2VkOicsIHsgd2FzRWRpdGluZywgaXNFZGl0aW5nLCBwZW5kaW5nQ291bnQ6IHBlbmRpbmdWYWx1ZXMubGVuZ3RoIH0pO1xuICAgICAgICBcbiAgICAgICAgLy8gV2hlbiBlZGl0aW5nIGVuZHMsIGVtaXQgdGhlIGxhdGVzdCBwZW5kaW5nIHZhbHVlXG4gICAgICAgIGlmICh3YXNFZGl0aW5nICYmICFpc0VkaXRpbmcgJiYgcGVuZGluZ1ZhbHVlcy5sZW5ndGggPiAwKSB7XG4gICAgICAgICAgLy8gRW1pdCBvbmx5IHRoZSBsYXRlc3QgdmFsdWUgKGRpc2NhcmQgb2xkZXIgdXBkYXRlcylcbiAgICAgICAgICBjb25zdCBsYXRlc3RWYWx1ZSA9IHBlbmRpbmdWYWx1ZXNbcGVuZGluZ1ZhbHVlcy5sZW5ndGggLSAxXTtcbiAgICAgICAgICBwZW5kaW5nVmFsdWVzID0gW107XG4gICAgICAgICAgY29uc29sZS5kZWJ1ZygnW3BhdXNlV2hlbkVkaXRpbmddIEVtaXR0aW5nIHBlbmRpbmcgdmFsdWUgYWZ0ZXIgZWRpdCBlbmQnKTtcbiAgICAgICAgICBvYnNlcnZlci5uZXh0KGxhdGVzdFZhbHVlKTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgICBcbiAgICAgIC8vIFN1YnNjcmliZSB0byB0aGUgc291cmNlIGRhdGEgc3RyZWFtXG4gICAgICBjb25zdCBzb3VyY2VTdWIgPSBzb3VyY2Uuc3Vic2NyaWJlKHtcbiAgICAgICAgbmV4dDogdmFsdWUgPT4ge1xuICAgICAgICAgIGlmICghaXNFZGl0aW5nKSB7XG4gICAgICAgICAgICAvLyBQYXNzIHRocm91Z2ggaW1tZWRpYXRlbHkgd2hlbiBub3QgZWRpdGluZ1xuICAgICAgICAgICAgY29uc29sZS5kZWJ1ZygnW3BhdXNlV2hlbkVkaXRpbmddIFBhc3NpbmcgdGhyb3VnaCB2YWx1ZSAobm90IGVkaXRpbmcpJyk7XG4gICAgICAgICAgICBvYnNlcnZlci5uZXh0KHZhbHVlKTtcbiAgICAgICAgICB9XG4gICAgICAgIH0sXG4gICAgICAgIGVycm9yOiBlcnIgPT4gb2JzZXJ2ZXIuZXJyb3IoZXJyKSxcbiAgICAgICAgY29tcGxldGU6ICgpID0+IG9ic2VydmVyLmNvbXBsZXRlKClcbiAgICAgIH0pO1xuICAgICAgXG4gICAgICAvLyBDbGVhbnVwIHN1YnNjcmlwdGlvbnNcbiAgICAgIHJldHVybiAoKSA9PiB7XG4gICAgICAgIGVkaXRpbmdTdWIudW5zdWJzY3JpYmUoKTtcbiAgICAgICAgc291cmNlU3ViLnVuc3Vic2NyaWJlKCk7XG4gICAgICB9O1xuICAgIH0pO1xuICB9O1xufVxuXG4vKipcbiAqIEFsdGVybmF0aXZlIG9wZXJhdG9yIHRoYXQgYnVmZmVycyBBTEwgdXBkYXRlcyBkdXJpbmcgZWRpdGluZy5cbiAqIFxuICogV2hlbiBlZGl0aW5nIGVuZHMsIGFsbCBidWZmZXJlZCB2YWx1ZXMgYXJlIGVtaXR0ZWQgaW4gc2VxdWVuY2UuXG4gKiBUaGlzIHByZXNlcnZlcyB0aGUgY29tcGxldGUgdXBkYXRlIGhpc3RvcnkuXG4gKiBcbiAqIEBwYXJhbSBlZGl0aW5nU3RhdGVNYW5hZ2VyIFRoZSBFZGl0aW5nU3RhdGVNYW5hZ2VyIHNlcnZpY2UgaW5zdGFuY2VcbiAqIEByZXR1cm5zIEFuIG9wZXJhdG9yIGZ1bmN0aW9uIHRoYXQgY2FuIGJlIHVzZWQgaW4gUnhKUyBwaXBlXG4gKiBcbiAqIEBleGFtcGxlXG4gKiBgYGB0eXBlc2NyaXB0XG4gKiBkYXRhU3RyZWFtJC5waXBlKFxuICogICBidWZmZXJXaGVuRWRpdGluZyh0aGlzLmVkaXRpbmdTdGF0ZU1hbmFnZXIpLFxuICogICAvLyAuLi4gb3RoZXIgb3BlcmF0b3JzXG4gKiApXG4gKiBgYGBcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGJ1ZmZlcldoZW5FZGl0aW5nPFQ+KFxuICBlZGl0aW5nU3RhdGVNYW5hZ2VyOiBFZGl0aW5nU3RhdGVNYW5hZ2VyXG4pOiBNb25vVHlwZU9wZXJhdG9yRnVuY3Rpb248VD4ge1xuICByZXR1cm4gKHNvdXJjZTogT2JzZXJ2YWJsZTxUPikgPT4ge1xuICAgIHJldHVybiBuZXcgT2JzZXJ2YWJsZTxUPihvYnNlcnZlciA9PiB7XG4gICAgICBjb25zdCBidWZmZXI6IFRbXSA9IFtdO1xuICAgICAgbGV0IGlzRWRpdGluZyA9IGZhbHNlO1xuICAgICAgXG4gICAgICAvLyBTdWJzY3JpYmUgdG8gZWRpdGluZyBzdGF0ZSBjaGFuZ2VzXG4gICAgICBjb25zdCBlZGl0aW5nU3ViID0gZWRpdGluZ1N0YXRlTWFuYWdlci5pc0VkaXRpbmckLnN1YnNjcmliZShlZGl0aW5nID0+IHtcbiAgICAgICAgY29uc3Qgd2FzRWRpdGluZyA9IGlzRWRpdGluZztcbiAgICAgICAgaXNFZGl0aW5nID0gZWRpdGluZztcbiAgICAgICAgXG4gICAgICAgIC8vIFdoZW4gZWRpdGluZyBlbmRzLCBlbWl0IGFsbCBidWZmZXJlZCB2YWx1ZXNcbiAgICAgICAgaWYgKHdhc0VkaXRpbmcgJiYgIWlzRWRpdGluZyAmJiBidWZmZXIubGVuZ3RoID4gMCkge1xuICAgICAgICAgIGJ1ZmZlci5mb3JFYWNoKHZhbHVlID0+IG9ic2VydmVyLm5leHQodmFsdWUpKTtcbiAgICAgICAgICBidWZmZXIubGVuZ3RoID0gMDsgLy8gQ2xlYXIgdGhlIGJ1ZmZlclxuICAgICAgICB9XG4gICAgICB9KTtcbiAgICAgIFxuICAgICAgLy8gU3Vic2NyaWJlIHRvIHRoZSBzb3VyY2UgZGF0YSBzdHJlYW1cbiAgICAgIGNvbnN0IHNvdXJjZVN1YiA9IHNvdXJjZS5zdWJzY3JpYmUoe1xuICAgICAgICBuZXh0OiB2YWx1ZSA9PiB7XG4gICAgICAgICAgaWYgKCFpc0VkaXRpbmcpIHtcbiAgICAgICAgICAgIG9ic2VydmVyLm5leHQodmFsdWUpO1xuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBidWZmZXIucHVzaCh2YWx1ZSk7XG4gICAgICAgICAgfVxuICAgICAgICB9LFxuICAgICAgICBlcnJvcjogZXJyID0+IG9ic2VydmVyLmVycm9yKGVyciksXG4gICAgICAgIGNvbXBsZXRlOiAoKSA9PiBvYnNlcnZlci5jb21wbGV0ZSgpXG4gICAgICB9KTtcbiAgICAgIFxuICAgICAgLy8gQ2xlYW51cCBzdWJzY3JpcHRpb25zXG4gICAgICByZXR1cm4gKCkgPT4ge1xuICAgICAgICBlZGl0aW5nU3ViLnVuc3Vic2NyaWJlKCk7XG4gICAgICAgIHNvdXJjZVN1Yi51bnN1YnNjcmliZSgpO1xuICAgICAgfTtcbiAgICB9KTtcbiAgfTtcbn0iXX0=","export class ActiveControlEventHandlers {\n constructor(hostElement, isActive, onActiveChange, options = {}) {\n this.hostElement = hostElement;\n this.isActive = isActive;\n this.onActiveChange = onActiveChange;\n this.options = options;\n this.cleanupFunctions = [];\n }\n setupAll() {\n this.setupClickHandlers();\n this.setupPreventionHandlers();\n return this.cleanupFunctions;\n }\n setupClickHandlers() {\n // ホスト要素クリック\n const mousedownHandler = (e) => {\n this.toggleActive();\n // React Flowなどのドラッグと共存するため、オプションでstopPropagationを無効化\n if (!this.options.disableStopPropagation) {\n e.stopPropagation();\n }\n };\n this.addEventListener(this.hostElement, 'mousedown', mousedownHandler);\n // 外部クリック\n const documentClickListener = (e) => {\n if (!this.hostElement.contains(e.target) && this.isActive()) {\n this.setActive(false);\n }\n };\n document.addEventListener('mousedown', documentClickListener, { capture: true });\n this.cleanupFunctions.push(() => document.removeEventListener('mousedown', documentClickListener, { capture: true }));\n }\n setupPreventionHandlers() {\n // ホイールイベント(スクロール対象要素以外でのみブロック)\n // ただし、ctrlKey + wheel(トラックパッドのピンチズーム)は常にブロック\n // 非アクティブ時はScrollControlがスクロール位置をリセットするため、ここでは処理しない\n this.addEventListener(this.hostElement, 'wheel', (e) => {\n if (this.isActive()) {\n // ctrlKey + wheel = トラックパッドのピンチズーム → 常にブロック\n if (e.ctrlKey) {\n e.preventDefault();\n e.stopPropagation();\n return;\n }\n // 通常のホイールスクロール: スクロール対象要素からのイベントは許可\n const target = e.target;\n const isScrollableElement = this.options.scrollSelectors?.some(selector => target.closest(selector) !== null);\n if (!isScrollableElement) {\n e.preventDefault();\n e.stopPropagation();\n }\n }\n }, { passive: false });\n // タッチイベント(ホスト要素レベル)\n const touchHandler = (e) => {\n if (!this.isActive())\n return;\n // スクロール対象要素からのイベントは許可\n const target = e.target;\n const isScrollableElement = this.options.scrollSelectors?.some(selector => target.closest(selector) !== null);\n if (!isScrollableElement) {\n if (e.touches.length > 1) {\n // ピンチズームなどマルチタッチ操作をブロック\n e.preventDefault();\n e.stopPropagation();\n }\n // シングルタッチはデフォルト動作を許可(スクロールなど)\n }\n };\n this.addEventListener(this.hostElement, 'touchstart', touchHandler, { passive: false });\n this.addEventListener(this.hostElement, 'touchmove', touchHandler, { passive: false });\n // ジェスチャーイベント(ホスト要素レベル)\n const gestureHandler = (e) => {\n if (this.isActive()) {\n e.preventDefault();\n e.stopPropagation();\n }\n };\n ['gesturestart', 'gesturechange', 'gestureend'].forEach(eventName => {\n this.addEventListener(this.hostElement, eventName, gestureHandler, { passive: false });\n });\n // Document-level capture phaseハンドラ\n // ブラウザのピンチズームがデフォルト動作を行う前にキャッチする\n this.setupDocumentLevelPinchZoomPrevention();\n }\n /**\n * Document-levelでcapture phaseを使ってピンチズームを防止\n * ホスト要素内で発生したマルチタッチ/ジェスチャーイベントのみをブロック\n */\n setupDocumentLevelPinchZoomPrevention() {\n // タッチイベント(capture phase)\n const documentTouchHandler = (e) => {\n if (!this.isActive())\n return;\n if (!this.hostElement.contains(e.target))\n return;\n if (e.touches.length > 1) {\n e.preventDefault();\n }\n };\n document.addEventListener('touchstart', documentTouchHandler, { capture: true, passive: false });\n document.addEventListener('touchmove', documentTouchHandler, { capture: true, passive: false });\n this.cleanupFunctions.push(() => {\n document.removeEventListener('touchstart', documentTouchHandler, { capture: true });\n document.removeEventListener('touchmove', documentTouchHandler, { capture: true });\n });\n // Safari gestureイベント(capture phase)\n const documentGestureHandler = (e) => {\n if (!this.isActive())\n return;\n if (!this.hostElement.contains(e.target))\n return;\n e.preventDefault();\n };\n ['gesturestart', 'gesturechange', 'gestureend'].forEach(eventName => {\n document.addEventListener(eventName, documentGestureHandler, { capture: true, passive: false });\n this.cleanupFunctions.push(() => document.removeEventListener(eventName, documentGestureHandler, { capture: true }));\n });\n }\n addEventListener(element, event, handler, options) {\n element.addEventListener(event, handler, options);\n this.cleanupFunctions.push(() => element.removeEventListener(event, handler, options));\n }\n toggleActive() {\n this.setActive(!this.isActive());\n }\n setActive(active) {\n this.isActive.set(active);\n this.onActiveChange(active);\n }\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXZlbnQtaGFuZGxlcnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9AbmctYXRvbWljL2NvbW1vbi9zcmMvbGliL2RpcmVjdGl2ZXMvYWN0aXZlLWNvbnRyb2wvaGFuZGxlcnMvZXZlbnQtaGFuZGxlcnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBV0EsTUFBTSxPQUFPLDBCQUEwQjtJQUdyQyxZQUNVLFdBQXdCLEVBQ3hCLFFBQWlDLEVBQ2pDLGNBQXlDLEVBQ3pDLFVBQWdDLEVBQUU7UUFIbEMsZ0JBQVcsR0FBWCxXQUFXLENBQWE7UUFDeEIsYUFBUSxHQUFSLFFBQVEsQ0FBeUI7UUFDakMsbUJBQWMsR0FBZCxjQUFjLENBQTJCO1FBQ3pDLFlBQU8sR0FBUCxPQUFPLENBQTJCO1FBTnBDLHFCQUFnQixHQUFzQixFQUFFLENBQUM7SUFPOUMsQ0FBQztJQUVKLFFBQVE7UUFDTixJQUFJLENBQUMsa0JBQWtCLEVBQUUsQ0FBQztRQUMxQixJQUFJLENBQUMsdUJBQXVCLEVBQUUsQ0FBQztRQUMvQixPQUFPLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQztJQUMvQixDQUFDO0lBRU8sa0JBQWtCO1FBQ3hCLFlBQVk7UUFDWixNQUFNLGdCQUFnQixHQUFHLENBQUMsQ0FBYSxFQUFFLEVBQUU7WUFDekMsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDO1lBQ3BCLHFEQUFxRDtZQUNyRCxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxzQkFBc0IsRUFBRSxDQUFDO2dCQUN6QyxDQUFDLENBQUMsZUFBZSxFQUFFLENBQUM7WUFDdEIsQ0FBQztRQUNILENBQUMsQ0FBQztRQUNGLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFLFdBQVcsRUFBRSxnQkFBZ0IsQ0FBQyxDQUFDO1FBRXZFLFNBQVM7UUFDVCxNQUFNLHFCQUFxQixHQUFHLENBQUMsQ0FBYSxFQUFFLEVBQUU7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QWEsRUFDYixPQUFzQixFQUN0QixPQUFpQztRQUVqQyxPQUFPLENBQUMsZ0JBQWdCLENBQUMsS0FBSyxFQUFFLE9BQU8sRUFBRSxPQUFPLENBQUMsQ0FBQztRQUNsRCxJQUFJLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDLE9BQU8sQ0FBQyxtQkFBbUIsQ0FBQyxLQUFLLEVBQUUsT0FBTyxFQUFFLE9BQU8sQ0FBQyxDQUFDLENBQUM7SUFDekYsQ0FBQztJQUVPLFlBQVk7UUFDbEIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFDO0lBQ25DLENBQUM7SUFFTyxTQUFTLENBQUMsTUFBZTtRQUMvQixJQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUMxQixJQUFJLENBQUMsY0FBYyxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQzlCLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFNpZ25hbCwgV3JpdGFibGVTaWduYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuZXhwb3J0IHR5cGUgQ2xlYW51cEZ1bmN0aW9uID0gKCkgPT4gdm9pZDtcblxuZXhwb3J0IGludGVyZmFjZSBBY3RpdmVDb250cm9sT3B0aW9ucyB7XG4gIC8qKiBtb3VzZWRvd27jgadzdG9wUHJvcGFnYXRpb27jgpLlkbzjgbDjgarjgYQgKi9cbiAgZGlzYWJsZVN0b3BQcm9wYWdhdGlvbj86IGJvb2xlYW47XG4gIC8qKiDjgrnjgq/jg63jg7zjg6vjgpLoqLHlj6/jgZnjgovopoHntKDjga7jgrvjg6zjgq/jgr8gKi9cbiAgc2Nyb2xsU2VsZWN0b3JzPzogc3RyaW5nW107XG59XG5cbmV4cG9ydCBjbGFzcyBBY3RpdmVDb250cm9sRXZlbnRIYW5kbGVycyB7XG4gIHByaXZhdGUgY2xlYW51cEZ1bmN0aW9uczogQ2xlYW51cEZ1bmN0aW9uW10gPSBbXTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGhvc3RFbGVtZW50OiBIVE1MRWxlbWVudCxcbiAgICBwcml2YXRlIGlzQWN0aXZlOiBXcml0YWJsZVNpZ25hbDxib29sZWFuPixcbiAgICBwcml2YXRlIG9uQWN0aXZlQ2hhbmdlOiAoYWN0aXZlOiBib29sZWFuKSA9PiB2b2lkLFxuICAgIHByaXZhdGUgb3B0aW9uczogQWN0aXZlQ29udHJvbE9wdGlvbnMgPSB7fVxuICApIHt9XG5cbiAgc2V0dXBBbGwoKTogQ2xlYW51cEZ1bmN0aW9uW10ge1xuICAgIHRoaXMuc2V0dXBDbGlja0hhbmRsZXJzKCk7XG4gICAgdGhpcy5zZXR1cFByZXZlbnRpb25IYW5kbGVycygpO1xuICAgIHJldHVybiB0aGlzLmNsZWFudXBGdW5jdGlvbnM7XG4gIH1cblxuICBwcml2YXRlIHNldHVwQ2xpY2tIYW5kbGVycygpOiB2b2lkIHtcbiAgICAvLyDjg5vjgrnjg4jopoHntKDjgq/jg6rjg4Pjgq9cbiAgICBjb25zdCBtb3VzZWRvd25IYW5kbGVyID0gKGU6IE1vdXNlRXZlbnQpID0+IHtcbiAgICAgIHRoaXMudG9nZ2xlQWN0aXZlKCk7XG4gICAgICAvLyBSZWFjdCBGbG9344Gq44Gp44Gu44OJ44Op44OD44Kw44Go5YWx5a2Y44GZ44KL44Gf44KB44CB44Kq44OX44K344On44Oz44Gnc3RvcFByb3BhZ2F0aW9u44KS54Sh5Yq55YyWXG4gICAgICBpZiAoIXRoaXMub3B0aW9ucy5kaXNhYmxlU3RvcFByb3BhZ2F0aW9uKSB7XG4gICAgICAgIGUuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgICB9XG4gICAgfTtcbiAgICB0aGlzLmFkZEV2ZW50TGlzdGVuZXIodGhpcy5ob3N0RWxlbWVudCwgJ21vdXNlZG93bicsIG1vdXNlZG93bkhhbmRsZXIpO1xuXG4gICAgLy8g5aSW6YOo44Kv44Oq44OD44KvXG4gICAgY29uc3QgZG9jdW1lbnRDbGlja0xpc3RlbmVyID0gKGU6IE1vdXNlRXZlbnQpID0+IHtcbiAgICAgIGlmICghdGhpcy5ob3N0RWxlbWVudC5jb250YWlucyhlLnRhcmdldCBhcyBOb2RlKSAmJiB0aGlzLmlzQWN0aXZlKCkpIHtcbiAgICAgICAgdGhpcy5zZXRBY3RpdmUoZmFsc2UpO1xuICAgICAgfVxuICAgIH07XG4gICAgZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcignbW91c2Vkb3duJywgZG9jdW1lbnRDbGlja0xpc3RlbmVyLCB7IGNhcHR1cmU6IHRydWUgfSk7XG4gICAgdGhpcy5jbGVhbnVwRnVuY3Rpb25zLnB1c2goKCkgPT5cbiAgICAgIGRvY3VtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoJ21vdXNlZG93bicsIGRvY3VtZW50Q2xpY2tMaXN0ZW5lciwgeyBjYXB0dXJlOiB0cnVlIH0pXG4gICAgKTtcbiAgfVxuXG4gIHByaXZhdGUgc2V0dXBQcmV2ZW50aW9uSGFuZGxlcnMoKTogdm9pZCB7XG4gICAgLy8g44Ob44Kk44O844Or44Kk44OZ44Oz44OI77yI44K544Kv44Ot44O844Or5a++6LGh6KaB57Sg5Lul5aSW44Gn44Gu44G/44OW44Ot44OD44Kv77yJXG4gICAgLy8g44Gf44Gg44GX44CBY3RybEtleSArIHdoZWVs77yI44OI44Op44OD44Kv44OR44OD44OJ44Gu44OU44Oz44OB44K644O844Og77yJ44Gv5bi444Gr44OW44Ot44OD44KvXG4gICAgLy8g6Z2e44Ki44Kv44OG44Kj44OW5pmC44GvU2Nyb2xsQ29udHJvbOOBjOOCueOCr+ODreODvOODq+S9jee9ruOCkuODquOCu+ODg+ODiOOBmeOCi+OBn+OCgeOAgeOBk+OBk+OBp+OBr+WHpueQhuOBl+OBquOBhFxuICAgIHRoaXMuYWRkRXZlbnRMaXN0ZW5lcih0aGlzLmhvc3RFbGVtZW50LCAnd2hlZWwnLCAoZTogV2hlZWxFdmVudCkgPT4ge1xuICAgICAgaWYgKHRoaXMuaXNBY3RpdmUoKSkge1xuICAgICAgICAvLyBjdHJsS2V5ICsgd2hlZWwgPSDjg4jjg6njg4Pjgq/jg5Hjg4Pjg4njga7jg5Tjg7Pjg4Hjgrrjg7zjg6Ag4oaSIOW4uOOBq+ODluODreODg+OCr1xuICAgICAgICBpZiAoZS5jdHJsS2V5KSB7XG4gICAgICAgICAgZS5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICAgIGUuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8g6YCa5bi444Gu44Ob44Kk44O844Or44K544Kv44Ot44O844OrOiDjgrnjgq/jg63jg7zjg6vlr77osaHopoHntKDjgYvjgonjga7jgqTjg5njg7Pjg4jjga/oqLHlj69cbiAgICAgICAgY29uc3QgdGFyZ2V0ID0gZS50YXJnZXQgYXMgSFRNTEVsZW1lbnQ7XG4gICAgICAgIGNvbnN0IGlzU2Nyb2xsYWJsZUVsZW1lbnQgPSB0aGlzLm9wdGlvbnMuc2Nyb2xsU2VsZWN0b3JzPy5zb21lKHNlbGVjdG9yID0+XG4gICAgICAgICAgdGFyZ2V0LmNsb3Nlc3Qoc2VsZWN0b3IpICE9PSBudWxsXG4gICAgICAgICk7XG4gICAgICAgIGlmICghaXNTY3JvbGxhYmxlRWxlbWVudCkge1xuICAgICAgICAgIGUucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgICBlLnN0b3BQcm9wYWdhdGlvbigpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfSwgeyBwYXNzaXZlOiBmYWxzZSB9KTtcblxuICAgIC8vIOOCv+ODg+ODgeOCpOODmeODs+ODiO+8iOODm+OCueODiOimgee0oOODrOODmeODq++8iVxuICAgIGNvbnN0IHRvdWNoSGFuZGxlciA9IChlOiBUb3VjaEV2ZW50KSA9PiB7XG4gICAgICBpZiAoIXRoaXMuaXNBY3RpdmUoKSkgcmV0dXJuO1xuXG4gICAgICAvLyDjgrnjgq/jg63jg7zjg6vlr77osaHopoHntKDjgYvjgonjga7jgqTjg5njg7Pjg4jjga/oqLHlj69cbiAgICAgIGNvbnN0IHRhcmdldCA9IGUudGFyZ2V0IGFzIEhUTUxFbGVtZW50O1xuICAgICAgY29uc3QgaXNTY3JvbGxhYmxlRWxlbWVudCA9IHRoaXMub3B0aW9ucy5zY3JvbGxTZWxlY3RvcnM/LnNvbWUoc2VsZWN0b3IgPT5cbiAgICAgICAgdGFyZ2V0LmNsb3Nlc3Qoc2VsZWN0b3IpICE9PSBudWxsXG4gICAgICApO1xuICAgICAgaWYgKCFpc1Njcm9sbGFibGVFbGVtZW50KSB7XG4gICAgICAgIGlmIChlLnRvdWNoZXMubGVuZ3RoID4gMSkge1xuICAgICAgICAgIC8vIOODlOODs+ODgeOCuuODvOODoOOBquOBqeODnuODq+ODgeOCv+ODg+ODgeaTjeS9nOOCkuODluODreODg+OCr1xuICAgICAgICAgIGUucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgICBlLnN0b3BQcm9wYWdhdGlvbigpO1xuICAgICAgICB9XG4gICAgICAgIC8vIOOCt+ODs+OCsOODq+OCv+ODg+ODgeOBr+ODh+ODleOCqeODq+ODiOWLleS9nOOCkuioseWPr++8iOOCueOCr+ODreODvOODq+OBquOBqe+8iVxuICAgICAgfVxuICAgIH07XG4gICAgdGhpcy5hZGRFdmVudExpc3RlbmVyKHRoaXMuaG9zdEVsZW1lbnQsICd0b3VjaHN0YXJ0JywgdG91Y2hIYW5kbGVyLCB7IHBhc3NpdmU6IGZhbHNlIH0pO1xuICAgIHRoaXMuYWRkRXZlbnRMaXN0ZW5lcih0aGlzLmhvc3RFbGVtZW50LCAndG91Y2htb3ZlJywgdG91Y2hIYW5kbGVyLCB7IHBhc3NpdmU6IGZhbHNlIH0pO1xuXG4gICAgLy8g44K444Kn44K544OB44Oj44O844Kk44OZ44Oz44OI77yI44Ob44K544OI6KaB57Sg44Os44OZ44Or77yJXG4gICAgY29uc3QgZ2VzdHVyZUhhbmRsZXIgPSAoZTogRXZlbnQpID0+IHtcbiAgICAgIGlmICh0aGlzLmlzQWN0aXZlKCkpIHtcbiAgICAgICAgZS5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICBlLnN0b3BQcm9wYWdhdGlvbigpO1xuICAgICAgfVxuICAgIH07XG4gICAgWydnZXN0dXJlc3RhcnQnLCAnZ2VzdHVyZWNoYW5nZScsICdnZXN0dXJlZW5kJ10uZm9yRWFjaChldmVudE5hbWUgPT4ge1xuICAgICAgdGhpcy5hZGRFdmVudExpc3RlbmVyKHRoaXMuaG9zdEVsZW1lbnQsIGV2ZW50TmFtZSwgZ2VzdHVyZUhhbmRsZXIsIHsgcGFzc2l2ZTogZmFsc2UgfSk7XG4gICAgfSk7XG5cbiAgICAvLyBEb2N1bWVudC1sZXZlbCBjYXB0dXJlIHBoYXNl44OP44Oz44OJ44OpXG4gICAgLy8g44OW44Op44Km44K244Gu44OU44Oz44OB44K644O844Og44GM44OH44OV44Kp44Or44OI5YuV5L2c44KS6KGM44GG5YmN44Gr44Kt44Oj44OD44OB44GZ44KLXG4gICAgdGhpcy5zZXR1cERvY3VtZW50TGV2ZWxQaW5jaFpvb21QcmV2ZW50aW9uKCk7XG4gIH1cblxuICAvKipcbiAgICogRG9jdW1lbnQtbGV2ZWzjgadjYXB0dXJlIHBoYXNl44KS5L2/44Gj44Gm44OU44Oz44OB44K644O844Og44KS6Ziy5q2iXG4gICAqIOODm+OCueODiOimgee0oOWGheOBp+eZuueUn+OBl+OBn+ODnuODq+ODgeOCv+ODg+ODgS/jgrjjgqfjgrnjg4Hjg6Pjg7zjgqTjg5njg7Pjg4jjga7jgb/jgpLjg5bjg63jg4Pjgq9cbiAgICovXG4gIHByaXZhdGUgc2V0dXBEb2N1bWVudExldmVsUGluY2hab29tUHJldmVudGlvbigpOiB2b2lkIHtcbiAgICAvLyDjgr/jg4Pjg4HjgqTjg5njg7Pjg4jvvIhjYXB0dXJlIHBoYXNl77yJXG4gICAgY29uc3QgZG9jdW1lbnRUb3VjaEhhbmRsZXIgPSAoZTogVG91Y2hFdmVudCkgPT4ge1xuICAgICAgaWYgKCF0aGlzLmlzQWN0aXZlKCkpIHJldHVybjtcbiAgICAgIGlmICghdGhpcy5ob3N0RWxlbWVudC5jb250YWlucyhlLnRhcmdldCBhcyBOb2RlKSkgcmV0dXJuO1xuXG4gICAgICBpZiAoZS50b3VjaGVzLmxlbmd0aCA+IDEpIHtcbiAgICAgICAgZS5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgfVxuICAgIH07XG5cbiAgICBkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCd0b3VjaHN0YXJ0JywgZG9jdW1lbnRUb3VjaEhhbmRsZXIsIHsgY2FwdHVyZTogdHJ1ZSwgcGFzc2l2ZTogZmFsc2UgfSk7XG4gICAgZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigndG91Y2htb3ZlJywgZG9jdW1lbnRUb3VjaEhhbmRsZXIsIHsgY2FwdHVyZTogdHJ1ZSwgcGFzc2l2ZTogZmFsc2UgfSk7XG5cbiAgICB0aGlzLmNsZWFudXBGdW5jdGlvbnMucHVzaCgoKSA9PiB7XG4gICAgICBkb2N1bWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCd0b3VjaHN0YXJ0JywgZG9jdW1lbnRUb3VjaEhhbmRsZXIsIHsgY2FwdHVyZTogdHJ1ZSB9KTtcbiAgICAgIGRvY3VtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoJ3RvdWNobW92ZScsIGRvY3VtZW50VG91Y2hIYW5kbGVyLCB7IGNhcHR1cmU6IHRydWUgfSk7XG4gICAgfSk7XG5cbiAgICAvLyBTYWZhcmkgZ2VzdHVyZeOCpOODmeODs+ODiO+8iGNhcHR1cmUgcGhhc2XvvIlcbiAgICBjb25zdCBkb2N1bWVudEdlc3R1cmVIYW5kbGVyID0gKGU6IEV2ZW50KSA9PiB7XG4gICAgICBpZiAoIXRoaXMuaXNBY3RpdmUoKSkgcmV0dXJuO1xuICAgICAgaWYgKCF0aGlzLmhvc3RFbGVtZW50LmNvbnRhaW5zKGUudGFyZ2V0IGFzIE5vZGUpKSByZXR1cm47XG4gICAgICBlLnByZXZlbnREZWZhdWx0KCk7XG4gICAgfTtcblxuICAgIFsnZ2VzdHVyZXN0YXJ0JywgJ2dlc3R1cmVjaGFuZ2UnLCAnZ2VzdHVyZWVuZCddLmZvckVhY2goZXZlbnROYW1lID0+IHtcbiAgICAgIGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoZXZlbnROYW1lLCBkb2N1bWVudEdlc3R1cmVIYW5kbGVyLCB7IGNhcHR1cmU6IHRydWUsIHBhc3NpdmU6IGZhbHNlIH0pO1xuICAgICAgdGhpcy5jbGVhbnVwRnVuY3Rpb25zLnB1c2goKCkgPT5cbiAgICAgICAgZG9jdW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcihldmVudE5hbWUsIGRvY3VtZW50R2VzdHVyZUhhbmRsZXIsIHsgY2FwdHVyZTogdHJ1ZSB9KVxuICAgICAgKTtcbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgYWRkRXZlbnRMaXN0ZW5lcihcbiAgICBlbGVtZW50OiBIVE1MRWxlbWVudCB8IERvY3VtZW50LFxuICAgIGV2ZW50OiBzdHJpbmcsXG4gICAgaGFuZGxlcjogRXZlbnRMaXN0ZW5lcixcbiAgICBvcHRpb25zPzogQWRkRXZlbnRMaXN0ZW5lck9wdGlvbnNcbiAgKTogdm9pZCB7XG4gICAgZWxlbWVudC5hZGRFdmVudExpc3RlbmVyKGV2ZW50LCBoYW5kbGVyLCBvcHRpb25zKTtcbiAgICB0aGlzLmNsZWFudXBGdW5jdGlvbnMucHVzaCgoKSA9PiBlbGVtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoZXZlbnQsIGhhbmRsZXIsIG9wdGlvbnMpKTtcbiAgfVxuXG4gIHByaXZhdGUgdG9nZ2xlQWN0aXZlKCk6IHZvaWQge1xuICAgIHRoaXMuc2V0QWN0aXZlKCF0aGlzLmlzQWN0aXZlKCkpO1xuICB9XG5cbiAgcHJpdmF0ZSBzZXRBY3RpdmUoYWN0aXZlOiBib29sZWFuKTogdm9pZCB7XG4gICAgdGhpcy5pc0FjdGl2ZS5zZXQoYWN0aXZlKTtcbiAgICB0aGlzLm9uQWN0aXZlQ2hhbmdlKGFjdGl2ZSk7XG4gIH1cbn1cbiJdfQ==","export class ScrollControl {\n constructor(scrollElement, isActive, options = {}) {\n this.scrollElement = scrollElement;\n this.isActive = isActive;\n this.options = options;\n this.lockedScrollTop = 0;\n this.wasActive = false;\n }\n setup() {\n const cleanups = [];\n // アクティブ状態の監視\n const checkActiveState = () => {\n const isActiveNow = this.isActive();\n if (!this.options.disableScrollLock) {\n if (!isActiveNow && this.wasActive) {\n // アクティブ → 非アクティブ: 現在位置をロック\n this.lockedScrollTop = this.scrollElement.scrollTop;\n }\n else if (!isActiveNow) {\n // 継続して非アクティブ: ロック位置を維持\n this.scrollElement.scrollTop = this.lockedScrollTop;\n }\n }\n // アクティブ時 or disableScrollLock時: 何もしない(自由スクロール)\n this.wasActive = isActiveNow;\n this.rafId = requestAnimationFrame(checkActiveState);\n };\n checkActiveState();\n cleanups.push(() => {\n if (this.rafId !== undefined) {\n cancelAnimationFrame(this.rafId);\n }\n });\n // スクロールイベント監視\n const scrollHandler = () => {\n if (!this.options.disableScrollLock && !this.isActive()) {\n this.scrollElement.scrollTop = this.lockedScrollTop;\n }\n };\n this.scrollElement.addEventListener('scroll', scrollHandler);\n cleanups.push(() => this.scrollElement.removeEventListener('scroll', scrollHandler));\n return cleanups;\n }\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2Nyb2xsLWNvbnRyb2wuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9AbmctYXRvbWljL2NvbW1vbi9zcmMvbGliL2RpcmVjdGl2ZXMvYWN0aXZlLWNvbnRyb2wvaGFuZGxlcnMvc2Nyb2xsLWNvbnRyb2wudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBUUEsTUFBTSxPQUFPLGFBQWE7SUFLeEIsWUFDVSxhQUEwQixFQUMxQixRQUF5QixFQUN6QixVQUFnQyxFQUFFO1FBRmxDLGtCQUFhLEdBQWIsYUFBYSxDQUFhO1FBQzFCLGFBQVEsR0FBUixRQUFRLENBQWlCO1FBQ3pCLFlBQU8sR0FBUCxPQUFPLENBQTJCO1FBUHBDLG9CQUFlLEdBQUcsQ0FBQyxDQUFDO1FBQ3BCLGNBQVMsR0FBRyxLQUFLLENBQUM7SUFPdkIsQ0FBQztJQUVKLEtBQUs7UUFDSCxNQUFNLFFBQVEsR0FBc0IsRUFBRSxDQUFDO1FBRXZDLGFBQWE7UUFDYixNQUFNLGdCQUFnQixHQUFHLEdBQUcsRUFBRTtZQUM1QixNQUFNLFdBQVcsR0FBRyxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7WUFFcEMsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsaUJBQWlCLEVBQUUsQ0FBQztnQkFDcEMsSUFBSSxDQUFDLFdBQVcsSUFBSSxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7b0JBQ25DLDJCQUEyQjtvQkFDM0IsSUFBSSxDQUFDLGVBQWUsR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLFNBQVMsQ0FBQztnQkFDdEQsQ0FBQztxQkFBTSxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7b0JBQ3hCLHVCQUF1QjtvQkFDdkIsSUFBSSxDQUFDLGFBQWEsQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDLGVBQWUsQ0FBQztnQkFDdEQsQ0FBQztZQUNILENBQUM7WUFDRCwrQ0FBK0M7WUFFL0MsSUFBSSxDQUFDLFNBQVMsR0FBRyxXQUFXLENBQUM7WUFDN0IsSUFBSSxDQUFDLEtBQUssR0FBRyxxQkFBcUIsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO1FBQ3ZELENBQUMsQ0FBQztRQUNGLGdCQUFnQixFQUFFLENBQUM7UUFDbkIsUUFBUSxDQUFDLElBQUksQ0FBQyxHQUFHLEVBQUU7WUFDakIsSUFBSSxJQUFJLENBQUMsS0FBSyxLQUFLLFNBQVMsRUFBRSxDQUFDO2dCQUM3QixvQkFBb0IsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDbkMsQ0FBQztRQUNILENBQUMsQ0FBQyxDQUFDO1FBRUgsY0FBYztRQUNkLE1BQU0sYUFBYSxHQUFHLEdBQUcsRUFBRTtZQUN6QixJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxpQkFBaUIsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUUsRUFBRSxDQUFDO2dCQUN4RCxJQUFJLENBQUMsYUFBYSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUMsZUFBZSxDQUFDO1lBQ3RELENBQUM7UUFDSCxDQUFDLENBQUM7UUFDRixJQUFJLENBQUMsYUFBYSxDQUFDLGdCQUFnQixDQUFDLFFBQVEsRUFBRSxhQUFhLENBQUMsQ0FBQztRQUM3RCxRQUFRLENBQUMsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsbUJBQW1CLENBQUMsUUFBUSxFQUFFLGFBQWEsQ0FBQyxDQUFDLENBQUM7UUFFckYsT0FBTyxRQUFRLENBQUM7SUFDbEIsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgU2lnbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDbGVhbnVwRnVuY3Rpb24gfSBmcm9tICcuL2V2ZW50LWhhbmRsZXJzJztcblxuZXhwb3J0IGludGVyZmFjZSBTY3JvbGxDb250cm9sT3B0aW9ucyB7XG4gIC8qKiDjgrnjgq/jg63jg7zjg6vkvY3nva7jga7jg63jg4Pjgq/jgpLnhKHlirnljJbjgZnjgovvvIjluLjjgavjgrnjgq/jg63jg7zjg6vlj6/og73jgavjgZnjgovvvIkgKi9cbiAgZGlzYWJsZVNjcm9sbExvY2s/OiBib29sZWFuO1xufVxuXG5leHBvcnQgY2xhc3MgU2Nyb2xsQ29udHJvbCB7XG4gIHByaXZhdGUgbG9ja2VkU2Nyb2xsVG9wID0gMDtcbiAgcHJpdmF0ZSB3YXNBY3RpdmUgPSBmYWxzZTtcbiAgcHJpdmF0ZSByYWZJZD86IG51bWJlcjtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHNjcm9sbEVsZW1lbnQ6IEhUTUxFbGVtZW50LFxuICAgIHByaXZhdGUgaXNBY3RpdmU6IFNpZ25hbDxib29sZWFuPixcbiAgICBwcml2YXRlIG9wdGlvbnM6IFNjcm9sbENvbnRyb2xPcHRpb25zID0ge31cbiAgKSB7fVxuXG4gIHNldHVwKCk6IENsZWFudXBGdW5jdGlvbltdIHtcbiAgICBjb25zdCBjbGVhbnVwczogQ2xlYW51cEZ1bmN0aW9uW10gPSBbXTtcblxuICAgIC8vIOOCouOCr+ODhuOCo+ODlueKtuaFi+OBruebo+imllxuICAgIGNvbnN0IGNoZWNrQWN0aXZlU3RhdGUgPSAoKSA9PiB7XG4gICAgICBjb25zdCBpc0FjdGl2ZU5vdyA9IHRoaXMuaXNBY3RpdmUoKTtcblxuICAgICAgaWYgKCF0aGlzLm9wdGlvbnMuZGlzYWJsZVNjcm9sbExvY2spIHtcbiAgICAgICAgaWYgKCFpc0FjdGl2ZU5vdyAmJiB0aGlzLndhc0FjdGl2ZSkge1xuICAgICAgICAgIC8vIOOCouOCr+ODhuOCo+ODliDihpIg6Z2e44Ki44Kv44OG44Kj44OWOiDnj77lnKjkvY3nva7jgpLjg63jg4Pjgq9cbiAgICAgICAgICB0aGlzLmxvY2tlZFNjcm9sbFRvcCA9IHRoaXMuc2Nyb2xsRWxlbWVudC5zY3JvbGxUb3A7XG4gICAgICAgIH0gZWxzZSBpZiAoIWlzQWN0aXZlTm93KSB7XG4gICAgICAgICAgLy8g57aZ57aa44GX44Gm6Z2e44Ki44Kv44OG44Kj44OWOiDjg63jg4Pjgq/kvY3nva7jgpLntq3mjIFcbiAgICAgICAgICB0aGlzLnNjcm9sbEVsZW1lbnQuc2Nyb2xsVG9wID0gdGhpcy5sb2NrZWRTY3JvbGxUb3A7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC8vIOOCouOCr+ODhuOCo+ODluaZgiBvciBkaXNhYmxlU2Nyb2xsTG9ja+aZgjog5L2V44KC44GX44Gq44GE77yI6Ieq55Sx44K544Kv44Ot44O844Or77yJXG5cbiAgICAgIHRoaXMud2FzQWN0aXZlID0gaXNBY3RpdmVOb3c7XG4gICAgICB0aGlzLnJhZklkID0gcmVxdWVzdEFuaW1hdGlvbkZyYW1lKGNoZWNrQWN0aXZlU3RhdGUpO1xuICAgIH07XG4gICAgY2hlY2tBY3RpdmVTdGF0ZSgpO1xuICAgIGNsZWFudXBzLnB1c2goKCkgPT4ge1xuICAgICAgaWYgKHRoaXMucmFmSWQgIT09IHVuZGVmaW5lZCkge1xuICAgICAgICBjYW5jZWxBbmltYXRpb25GcmFtZSh0aGlzLnJhZklkKTtcbiAgICAgIH1cbiAgICB9KTtcblxuICAgIC8vIOOCueOCr+ODreODvOODq+OCpOODmeODs+ODiOebo+imllxuICAgIGNvbnN0IHNjcm9sbEhhbmRsZXIgPSAoKSA9PiB7XG4gICAgICBpZiAoIXRoaXMub3B0aW9ucy5kaXNhYmxlU2Nyb2xsTG9jayAmJiAhdGhpcy5pc0FjdGl2ZSgpKSB7XG4gICAgICAgIHRoaXMuc2Nyb2xsRWxlbWVudC5zY3JvbGxUb3AgPSB0aGlzLmxvY2tlZFNjcm9sbFRvcDtcbiAgICAgIH1cbiAgICB9O1xuICAgIHRoaXMuc2Nyb2xsRWxlbWVudC5hZGRFdmVudExpc3RlbmVyKCdzY3JvbGwnLCBzY3JvbGxIYW5kbGVyKTtcbiAgICBjbGVhbnVwcy5wdXNoKCgpID0+IHRoaXMuc2Nyb2xsRWxlbWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCdzY3JvbGwnLCBzY3JvbGxIYW5kbGVyKSk7XG5cbiAgICByZXR1cm4gY2xlYW51cHM7XG4gIH1cbn1cbiJdfQ==","import { Directive, ElementRef, input, output, effect, signal, inject } from '@angular/core';\nimport { ActiveControlEventHandlers, ScrollControl } from './handlers';\nimport * as i0 from \"@angular/core\";\n/**\n * アクティブ状態を管理するディレクティブ\n *\n * クリックでアクティブ化、外部クリックで非アクティブ化し、\n * スクロール位置の固定やイベント伝播の制御を行います。\n *\n * @example\n * ```html\n * <!-- 単一セレクタ -->\n * <div appActiveControl\n * [scrollSelector]=\"'.xterm-viewport'\"\n * (activeChange)=\"onActiveChange($event)\">\n * <!-- content -->\n * </div>\n *\n * <!-- 複数セレクタ -->\n * <div appActiveControl\n * [scrollSelectors]=\"['.xterm-viewport', '.qtp-content']\"\n * (activeChange)=\"onActiveChange($event)\">\n * <!-- content -->\n * </div>\n * ```\n */\nexport class ActiveControlDirective {\n constructor() {\n this.el = inject(ElementRef);\n this.scrollSelector = input();\n this.scrollSelectors = input();\n /** mousedownでstopPropagationを呼ばない(React Flowなどのドラッグと共存するため) */\n this.disableStopPropagation = input(false);\n /** スクロール位置のロックを無効化する(常にスクロール可能にする) */\n this.disableScrollLock = input(false);\n /** nodragクラスを付与しない(React Flowのノードでドラッグを有効化するため) */\n this.disableNodrag = input(false);\n this.activeChange = output();\n this.isActive = signal(false);\n this.eventCleanupFunctions = [];\n this.scrollCleanupFunctions = [];\n this.eventHandlersInitialized = false;\n // イベントハンドラーの初期化(一度だけ)\n effect(() => {\n if (!this.eventHandlersInitialized) {\n setTimeout(() => this.initializeEventHandlers(), 100);\n this.eventHandlersInitialized = true;\n }\n }, { allowSignalWrites: true });\n // スクロール制御の初期化(セレクタが変わるたびに再設定)\n effect(() => {\n const selectors = this.getScrollSelectors();\n setTimeout(() => this.setupScrollControls(selectors), 150);\n });\n }\n ngOnDestroy() {\n this.eventCleanupFunctions.forEach(cleanup => cleanup());\n this.scrollCleanupFunctions.forEach(cleanup => cleanup());\n }\n initializeEventHandlers() {\n const hostElement = this.el.nativeElement;\n const scrollSelectors = this.getScrollSelectors();\n const eventHandlers = new ActiveControlEventHandlers(hostElement, this.isActive, (active) => this.activeChange.emit(active), { disableStopPropagation: this.disableStopPropagation(), scrollSelectors });\n this.eventCleanupFunctions.push(...eventHandlers.setupAll());\n }\n setupScrollControls(selectors) {\n // 既存のスクロール制御をクリーンアップ\n this.scrollCleanupFunctions.forEach(cleanup => cleanup());\n this.scrollCleanupFunctions = [];\n const hostElement = this.el.nativeElement;\n const disableScrollLock = this.disableScrollLock();\n for (const selector of selectors) {\n // querySelectorAll を使用して全てのマッチする要素を取得\n const scrollElements = hostElement.querySelectorAll(selector);\n scrollElements.forEach(scrollElement => {\n const scrollControl = new ScrollControl(scrollElement, this.isActive, { disableScrollLock });\n this.scrollCleanupFunctions.push(...scrollControl.setup());\n });\n }\n }\n getScrollSelectors() {\n const multiple = this.scrollSelectors();\n if (multiple && multiple.length > 0) {\n return multiple;\n }\n const single = this.scrollSelector();\n return single ? [single] : [];\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.0.5\", ngImport: i0, type: ActiveControlDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }\n static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"17.1.0\", version: \"20.0.5\", type: ActiveControlDirective, isStandalone: true, selector: \"[appActiveControl]\", inputs: { scrollSelector: { classPropertyName: \"scrollSelector\", publicName: \"scrollSelector\", isSignal: true, isRequired: false, transformFunction: null }, scrollSelectors: { classPropertyName: \"scrollSelectors\", publicName: \"scrollSelectors\", isSignal: true, isRequired: false, transformFunction: null }, disableStopPropagation: { classPropertyName: \"disableStopPropagation\", publicName: \"disableStopPropagation\", isSignal: true, isRequired: false, transformFunction: null }, disableScrollLock: { classPropertyName: \"disableScrollLock\", publicName: \"disableScrollLock\", isSignal: true, isRequired: false, transformFunction: null }, disableNodrag: { classPropertyName: \"disableNodrag\", publicName: \"disableNodrag\", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { activeChange: \"activeChange\" }, host: { properties: { \"class.active\": \"isActive()\", \"class.nodrag\": \"!disableNodrag()\", \"class.nowheel\": \"isActive()\" } }, ngImport: i0 }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.0.5\", ngImport: i0, type: ActiveControlDirective, decorators: [{\n type: Directive,\n args: [{\n selector: '[appActiveControl]',\n standalone: true,\n host: {\n '[class.active]': 'isActive()',\n '[class.nodrag]': '!disableNodrag()',\n '[class.nowheel]': 'isActive()',\n }\n }]\n }], ctorParameters: () => [] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aXZlLWNvbnRyb2wuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvQG5nLWF0b21pYy9jb21tb24vc3JjL2xpYi9kaXJlY3RpdmVzL2FjdGl2ZS1jb250cm9sL2FjdGl2ZS1jb250cm9sLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQWEsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3hHLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxhQUFhLEVBQUUsTUFBTSxZQUFZLENBQUM7O0FBRXZFOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBc0JHO0FBVUgsTUFBTSxPQUFPLHNCQUFzQjtJQWlCakM7UUFoQmlCLE9BQUUsR0FBRyxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUM7UUFDaEMsbUJBQWMsR0FBRyxLQUFLLEVBQVUsQ0FBQztRQUNqQyxvQkFBZSxHQUFHLEtBQUssRUFBWSxDQUFDO1FBQzdDLCtEQUErRDtRQUN0RCwyQkFBc0IsR0FBRyxLQUFLLENBQVUsS0FBSyxDQUFDLENBQUM7UUFDeEQsc0NBQXNDO1FBQzdCLHNCQUFpQixHQUFHLEtBQUssQ0FBVSxLQUFLLENBQUMsQ0FBQztRQUNuRCxtREFBbUQ7UUFDMUMsa0JBQWEsR0FBRyxLQUFLLENBQVUsS0FBSyxDQUFDLENBQUM7UUFDdEMsaUJBQVksR0FBRyxNQUFNLEVBQVcsQ0FBQztRQUNqQyxhQUFRLEdBQUcsTUFBTSxDQUFVLEtBQUssQ0FBQyxDQUFDO1FBRW5DLDBCQUFxQixHQUFtQixFQUFFLENBQUM7UUFDM0MsMkJBQXNCLEdBQW1CLEVBQUUsQ0FBQztRQUM1Qyw2QkFBd0IsR0FBRyxLQUFLLENBQUM7UUFHdkMsc0JBQXNCO1FBQ3RCLE1BQU0sQ0FBQyxHQUFHLEVBQUU7WUFDVixJQUFJLENBQUMsSUFBSSxDQUFDLHdCQUF3QixFQUFFLENBQUM7Z0JBQ25DLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsdUJBQXVCLEVBQUUsRUFBRSxHQUFHLENBQUMsQ0FBQztnQkFDdEQsSUFBSSxDQUFDLHdCQUF3QixHQUFHLElBQUksQ0FBQztZQUN2QyxDQUFDO1FBQ0gsQ0FBQyxFQUFFLEVBQUUsaUJBQWlCLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQztRQUVoQyw4QkFBOEI7UUFDOUIsTUFBTSxDQUFDLEdBQUcsRUFBRTtZQUNWLE1BQU0sU0FBUyxHQUFHLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxDQUFDO1lBQzVDLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsbUJBQW1CLENBQUMsU0FBUyxDQUFDLEVBQUUsR0FBRyxDQUFDLENBQUM7UUFDN0QsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsV0FBVztRQUNULElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQyxPQUFPLEVBQUUsQ0FBQyxDQUFDO1FBQ3pELElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQyxPQUFPLEVBQUUsQ0FBQyxDQUFDO0lBQzVELENBQUM7SUFFTyx1QkFBdUI7UUFDN0IsTUFBTSxXQUFXLEdBQUcsSUFBSSxDQUFDLEVBQUUsQ0FBQyxhQUE0QixDQUFDO1FBQ3pELE1BQU0sZUFBZSxHQUFHLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxDQUFDO1FBQ2xELE1BQU0sYUFBYSxHQUFHLElBQUksMEJBQTBCLENBQ2xELFdBQVcsRUFDWCxJQUFJLENBQUMsUUFBUSxFQUNiLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsRUFDMUMsRUFBRSxzQkFBc0IsRUFBRSxJQUFJLENBQUMsc0JBQXNCLEVBQUUsRUFBRSxlQUFlLEVBQUUsQ0FDM0UsQ0FBQztRQUNGLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxJQUFJLENBQUMsR0FBRyxhQUFhLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQztJQUMvRCxDQUFDO0lBRU8sbUJBQW1CLENBQUMsU0FBbUI7UUFDN0MscUJBQXFCO1FBQ3JCLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQyxPQUFPLEVBQUUsQ0FBQyxDQUFDO1FBQzFELElBQUksQ0FBQyxzQkFBc0IsR0FBRyxFQUFFLENBQUM7UUFFakMsTUFBTSxXQUFXLEdBQUcsSUFBSSxDQUFDLEVBQUUsQ0FBQyxhQUE0QixDQUFDO1FBQ3pELE1BQU0saUJBQWlCLEdBQUcsSUFBSSxDQUFDLGlCQUFpQixFQUFFLENBQUM7UUFDbkQsS0FBSyxNQUFNLFFBQVEsSUFBSSxTQUFTLEVBQUUsQ0FBQztZQUNqQyxzQ0FBc0M7WUFDdEMsTUFBTSxjQUFjLEdBQUcsV0FBVyxDQUFDLGdCQUFnQixDQUFjLFFBQVEsQ0FBQyxDQUFDO1lBQzNFLGNBQWMsQ0FBQyxPQUFPLENBQUMsYUFBYSxDQUFDLEVBQUU7Z0JBQ3JDLE1BQU0sYUFBYSxHQUFHLElBQUksYUFBYSxDQUFDLGFBQWEsRUFBRSxJQUFJLENBQUMsUUFBUSxFQUFFLEVBQUUsaUJBQWlCLEVBQUUsQ0FBQyxDQUFDO2dCQUM3RixJQUFJLENBQUMsc0JBQXNCLENBQUMsSUFBSSxDQUFDLEdBQUcsYUFBYSxDQUFDLEtBQUssRUFBRSxDQUFDLENBQUM7WUFDN0QsQ0FBQyxDQUFDLENBQUM7UUFDTCxDQUFDO0lBQ0gsQ0FBQztJQUVPLGtCQUFrQjtRQUN4QixNQUFNLFFBQVEsR0FBRyxJQUFJLENBQUMsZUFBZSxFQUFFLENBQUM7UUFDeEMsSUFBSSxRQUFRLElBQUksUUFBUSxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUUsQ0FBQztZQUNwQyxPQUFPLFFBQVEsQ0FBQztRQUNsQixDQUFDO1FBQ0QsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDO1FBQ3JDLE9BQU8sTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7SUFDaEMsQ0FBQzs4R0ExRVUsc0JBQXNCO2tHQUF0QixzQkFBc0I7OzJGQUF0QixzQkFBc0I7a0JBVGxDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLG9CQUFvQjtvQkFDOUIsVUFBVSxFQUFFLElBQUk7b0JBQ2hCLElBQUksRUFBRTt3QkFDSixnQkFBZ0IsRUFBRSxZQUFZO3dCQUM5QixnQkFBZ0IsRUFBRSxrQkFBa0I7d0JBQ3BDLGlCQUFpQixFQUFFLFlBQVk7cUJBQ2hDO2lCQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBFbGVtZW50UmVmLCBpbnB1dCwgb3V0cHV0LCBlZmZlY3QsIHNpZ25hbCwgT25EZXN0cm95LCBpbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFjdGl2ZUNvbnRyb2xFdmVudEhhbmRsZXJzLCBTY3JvbGxDb250cm9sIH0gZnJvbSAnLi9oYW5kbGVycyc7XG5cbi8qKlxuICog44Ki44Kv44OG44Kj44OW54q25oWL44KS566h55CG44GZ44KL44OH44Kj44Os44Kv44OG44Kj44OWXG4gKlxuICog44Kv44Oq44OD44Kv44Gn44Ki44Kv44OG44Kj44OW5YyW44CB5aSW6YOo44Kv44Oq44OD44Kv44Gn6Z2e44Ki44Kv44OG44Kj44OW5YyW44GX44CBXG4gKiDjgrnjgq/jg63jg7zjg6vkvY3nva7jga7lm7rlrprjgoTjgqTjg5njg7Pjg4jkvJ3mkq3jga7liLblvqHjgpLooYzjgYTjgb7jgZnjgIJcbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgaHRtbFxuICogPCEtLSDljZjkuIDjgrvjg6zjgq/jgr8gLS0+XG4gKiA8ZGl2IGFwcEFjdGl2ZUNvbnRyb2xcbiAqICAgICAgW3Njcm9sbFNlbGVjdG9yXT1cIicueHRlcm0tdmlld3BvcnQnXCJcbiAqICAgICAgKGFjdGl2ZUNoYW5nZSk9XCJvbkFjdGl2ZUNoYW5nZSgkZXZlbnQpXCI+XG4gKiAgIDwhLS0gY29udGVudCAtLT5cbiAqIDwvZGl2PlxuICpcbiAqIDwhLS0g6KSH5pWw44K744Os44Kv44K/IC0tPlxuICogPGRpdiBhcHBBY3RpdmVDb250cm9sXG4gKiAgICAgIFtzY3JvbGxTZWxlY3RvcnNdPVwiWycueHRlcm0tdmlld3BvcnQnLCAnLnF0cC1jb250ZW50J11cIlxuICogICAgICAoYWN0aXZlQ2hhbmdlKT1cIm9uQWN0aXZlQ2hhbmdlKCRldmVudClcIj5cbiAqICAgPCEtLSBjb250ZW50IC0tPlxuICogPC9kaXY+XG4gKiBgYGBcbiAqL1xuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnW2FwcEFjdGl2ZUNvbnRyb2xdJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaG9zdDoge1xuICAgICdbY2xhc3MuYWN0aXZlXSc6ICdpc0FjdGl2ZSgpJyxcbiAgICAnW2NsYXNzLm5vZHJhZ10nOiAnIWRpc2FibGVOb2RyYWcoKScsXG4gICAgJ1tjbGFzcy5ub3doZWVsXSc6ICdpc0FjdGl2ZSgpJyxcbiAgfVxufSlcbmV4cG9ydCBjbGFzcyBBY3RpdmVDb250cm9sRGlyZWN0aXZlIGltcGxlbWVudHMgT25EZXN0cm95IHtcbiAgcHJpdmF0ZSByZWFkb25seSBlbCA9IGluamVjdChFbGVtZW50UmVmKTtcbiAgcmVhZG9ubHkgc2Nyb2xsU2VsZWN0b3IgPSBpbnB1dDxzdHJpbmc+KCk7XG4gIHJlYWRvbmx5IHNjcm9sbFNlbGVjdG9ycyA9IGlucHV0PHN0cmluZ1tdPigpO1xuICAvKiogbW91c2Vkb3du44Gnc3RvcFByb3BhZ2F0aW9u44KS5ZG844Gw44Gq44GE77yIUmVhY3QgRmxvd+OBquOBqeOBruODieODqeODg+OCsOOBqOWFseWtmOOBmeOCi+OBn+OCge+8iSAqL1xuICByZWFkb25seSBkaXNhYmxlU3RvcFByb3BhZ2F0aW9uID0gaW5wdXQ8Ym9vbGVhbj4oZmFsc2UpO1xuICAvKiog44K544Kv44Ot44O844Or5L2N572u44Gu44Ot44OD44Kv44KS54Sh5Yq55YyW44GZ44KL77yI5bi444Gr44K544Kv44Ot44O844Or5Y+v6IO944Gr44GZ44KL77yJICovXG4gIHJlYWRvbmx5IGRpc2FibGVTY3JvbGxMb2NrID0gaW5wdXQ8Ym9vbGVhbj4oZmFsc2UpO1xuICAvKiogbm9kcmFn44Kv44Op44K544KS5LuY5LiO44GX44Gq44GE77yIUmVhY3QgRmxvd+OBruODjuODvOODieOBp+ODieODqeODg+OCsOOCkuacieWKueWMluOBmeOCi+OBn+OCge+8iSAqL1xuICByZWFkb25seSBkaXNhYmxlTm9kcmFnID0gaW5wdXQ8Ym9vbGVhbj4oZmFsc2UpO1xuICByZWFkb25seSBhY3RpdmVDaGFuZ2UgPSBvdXRwdXQ8Ym9vbGVhbj4oKTtcbiAgcmVhZG9ubHkgaXNBY3RpdmUgPSBzaWduYWw8Ym9vbGVhbj4oZmFsc2UpO1xuXG4gIHByaXZhdGUgZXZlbnRDbGVhbnVwRnVuY3Rpb25zOiAoKCkgPT4gdm9pZClbXSA9IFtdO1xuICBwcml2YXRlIHNjcm9sbENsZWFudXBGdW5jdGlvbnM6ICgoKSA9PiB2b2lkKVtdID0gW107XG4gIHByaXZhdGUgZXZlbnRIYW5kbGVyc0luaXRpYWxpemVkID0gZmFsc2U7XG5cbiAgY29uc3RydWN0b3IoKSB7XG4gICAgLy8g44Kk44OZ44Oz44OI44OP44Oz44OJ44Op44O844Gu5Yid5pyf5YyW77yI5LiA5bqm44Gg44GR77yJXG4gICAgZWZmZWN0KCgpID0+IHtcbiAgICAgIGlmICghdGhpcy5ldmVudEhhbmRsZXJzSW5pdGlhbGl6ZWQpIHtcbiAgICAgICAgc2V0VGltZW91dCgoKSA9PiB0aGlzLmluaXRpYWxpemVFdmVudEhhbmRsZXJzKCksIDEwMCk7XG4gICAgICAgIHRoaXMuZXZlbnRIYW5kbGVyc0luaXRpYWxpemVkID0gdHJ1ZTtcbiAgICAgIH1cbiAgICB9LCB7IGFsbG93U2lnbmFsV3JpdGVzOiB0cnVlIH0pO1xuXG4gICAgLy8g44K544Kv44Ot44O844Or5Yi25b6h44Gu5Yid5pyf5YyW77yI44K744Os44Kv44K/44GM5aSJ44KP44KL44Gf44Gz44Gr5YaN6Kit5a6a77yJXG4gICAgZWZmZWN0KCgpID0+IHtcbiAgICAgIGNvbnN0IHNlbGVjdG9ycyA9IHRoaXMuZ2V0U2Nyb2xsU2VsZWN0b3JzKCk7XG4gICAgICBzZXRUaW1lb3V0KCgpID0+IHRoaXMuc2V0dXBTY3JvbGxDb250cm9scyhzZWxlY3RvcnMpLCAxNTApO1xuICAgIH0pO1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5ldmVudENsZWFudXBGdW5jdGlvbnMuZm9yRWFjaChjbGVhbnVwID0+IGNsZWFudXAoKSk7XG4gICAgdGhpcy5zY3JvbGxDbGVhbnVwRnVuY3Rpb25zLmZvckVhY2goY2xlYW51cCA9PiBjbGVhbnVwKCkpO1xuICB9XG5cbiAgcHJpdmF0ZSBpbml0aWFsaXplRXZlbnRIYW5kbGVycygpOiB2b2lkIHtcbiAgICBjb25zdCBob3N0RWxlbWVudCA9IHRoaXMuZWwubmF0aXZlRWxlbWVudCBhcyBIVE1MRWxlbWVudDtcbiAgICBjb25zdCBzY3JvbGxTZWxlY3RvcnMgPSB0aGlzLmdldFNjcm9sbFNlbGVjdG9ycygpO1xuICAgIGNvbnN0IGV2ZW50SGFuZGxlcnMgPSBuZXcgQWN0aXZlQ29udHJvbEV2ZW50SGFuZGxlcnMoXG4gICAgICBob3N0RWxlbWVudCxcbiAgICAgIHRoaXMuaXNBY3RpdmUsXG4gICAgICAoYWN0aXZlKSA9PiB0aGlzLmFjdGl2ZUNoYW5nZS5lbWl0KGFjdGl2ZSksXG4gICAgICB7IGRpc2FibGVTdG9wUHJvcGFnYXRpb246IHRoaXMuZGlzYWJsZVN0b3BQcm9wYWdhdGlvbigpLCBzY3JvbGxTZWxlY3RvcnMgfVxuICAgICk7XG4gICAgdGhpcy5ldmVudENsZWFudXBGdW5jdGlvbnMucHVzaCguLi5ldmVudEhhbmRsZXJzLnNldHVwQWxsKCkpO1xuICB9XG5cbiAgcHJpdmF0ZSBzZXR1cFNjcm9sbENvbnRyb2xzKHNlbGVjdG9yczogc3RyaW5nW10pOiB2b2lkIHtcbiAgICAvLyDml6LlrZjjga7jgrnjgq/jg63jg7zjg6vliLblvqHjgpLjgq/jg6rjg7zjg7PjgqLjg4Pjg5dcbiAgICB0aGlzLnNjcm9sbENsZWFudXBGdW5jdGlvbnMuZm9yRWFjaChjbGVhbnVwID0+IGNsZWFudXAoKSk7XG4gICAgdGhpcy5zY3JvbGxDbGVhbnVwRnVuY3Rpb25zID0gW107XG5cbiAgICBjb25zdCBob3N0RWxlbWVudCA9IHRoaXMuZWwubmF0aXZlRWxlbWVudCBhcyBIVE1MRWxlbWVudDtcbiAgICBjb25zdCBkaXNhYmxlU2Nyb2xsTG9jayA9IHRoaXMuZGlzYWJsZVNjcm9sbExvY2soKTtcbiAgICBmb3IgKGNvbnN0IHNlbGVjdG9yIG9mIHNlbGVjdG9ycykge1xuICAgICAgLy8gcXVlcnlTZWxlY3RvckFsbCDjgpLkvb/nlKjjgZfjgablhajjgabjga7jg57jg4Pjg4HjgZnjgovopoHntKDjgpLlj5blvpdcbiAgICAgIGNvbnN0IHNjcm9sbEVsZW1lbnRzID0gaG9zdEVsZW1lbnQucXVlcnlTZWxlY3RvckFsbDxIVE1MRWxlbWVudD4oc2VsZWN0b3IpO1xuICAgICAgc2Nyb2xsRWxlbWVudHMuZm9yRWFjaChzY3JvbGxFbGVtZW50ID0+IHtcbiAgICAgICAgY29uc3Qgc2Nyb2xsQ29udHJvbCA9IG5ldyBTY3JvbGxDb250cm9sKHNjcm9sbEVsZW1lbnQsIHRoaXMuaXNBY3RpdmUsIHsgZGlzYWJsZVNjcm9sbExvY2sgfSk7XG4gICAgICAgIHRoaXMuc2Nyb2xsQ2xlYW51cEZ1bmN0aW9ucy5wdXNoKC4uLnNjcm9sbENvbnRyb2wuc2V0dXAoKSk7XG4gICAgICB9KTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGdldFNjcm9sbFNlbGVjdG9ycygpOiBzdHJpbmdbXSB7XG4gICAgY29uc3QgbXVsdGlwbGUgPSB0aGlzLnNjcm9sbFNlbGVjdG9ycygpO1xuICAgIGlmIChtdWx0aXBsZSAmJiBtdWx0aXBsZS5sZW5ndGggPiAwKSB7XG4gICAgICByZXR1cm4gbXVsdGlwbGU7XG4gICAgfVxuICAgIGNvbnN0IHNpbmdsZSA9IHRoaXMuc2Nyb2xsU2VsZWN0b3IoKTtcbiAgICByZXR1cm4gc2luZ2xlID8gW3NpbmdsZV0gOiBbXTtcbiAgfVxufVxuIl19","/**\n * Generated bundle index. Do not edit.\n */\nexport * from './index';\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmctYXRvbWljLWNvbW1vbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL0BuZy1hdG9taWMvY29tbW9uL3NyYy9saWIvbmctYXRvbWljLWNvbW1vbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsU0FBUyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL2luZGV4JztcbiJdfQ=="],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ng-atomic-common.mjs","sources":["../../../../../packages/@ng-atomic/common/src/lib/common.module.ts","../../../../../packages/@ng-atomic/common/src/lib/services/editing/editing-state-manager.service.ts","../../../../../packages/@ng-atomic/common/src/lib/operators/pause-when-editing.operator.ts","../../../../../packages/@ng-atomic/common/src/lib/directives/active-control/handlers/event-handlers.ts","../../../../../packages/@ng-atomic/common/src/lib/directives/active-control/handlers/scroll-control.ts","../../../../../packages/@ng-atomic/common/src/lib/directives/active-control/active-control.directive.ts","../../../../../packages/@ng-atomic/common/src/lib/ng-atomic-common.ts"],"sourcesContent":["import { EnvironmentProviders, importProvidersFrom, NgModule } from \"@angular/core\";\nimport { MatDialogModule } from '@angular/material/dialog';\nimport { MatSnackBarModule } from '@angular/material/snack-bar';\nimport { NgAtomicSheetsModule } from \"@ng-atomic/common/services/sheets\";\n\n\n@NgModule({\n imports: [\n MatDialogModule,\n MatSnackBarModule,\n NgAtomicSheetsModule,\n ]\n})\nexport class NgAtomicCommonModule {\n static forRoot() {\n return {\n ngModule: NgAtomicCommonModule,\n providers: [\n ],\n }\n }\n}\n\nexport function provideNgAtomicCommon(): EnvironmentProviders {\n return importProvidersFrom(NgAtomicCommonModule.forRoot());\n}\n","import { Injectable, signal, computed } from '@angular/core';\nimport { toObservable } from '@angular/core/rxjs-interop';\nimport { Observable } from 'rxjs';\n\n/**\n * EditingStateManager Service\n * \n * Manages global editing state for preventing data updates during cell editing.\n * Uses Angular Signals for reactive state management.\n */\n@Injectable({ providedIn: 'root' })\nexport class EditingStateManager {\n private readonly editingCells = signal<string[]>([]);\n readonly isEditing = computed(() => this.editingCells().length > 0);\n readonly isEditing$: Observable<boolean> = toObservable(this.isEditing);\n \n /**\n * Start editing a cell\n * @param rowId Row identifier\n * @param columnId Column identifier\n */\n startEditing(rowId: string | number, columnId: string): void {\n const cellKey = `${rowId}-${columnId}`;\n this.editingCells.update(cells => {\n const newCells = new Set(cells);\n newCells.add(cellKey);\n return [...newCells];\n });\n }\n \n /**\n * Stop editing a cell\n * @param rowId Row identifier\n * @param columnId Column identifier\n */\n stopEditing(rowId: string | number, columnId: string): void {\n const cellKey = `${rowId}-${columnId}`;\n this.editingCells.update(cells => {\n const newCells = new Set(cells);\n newCells.delete(cellKey);\n return [...newCells];\n });\n }\n}","import { Observable, MonoTypeOperatorFunction } from 'rxjs';\nimport { EditingStateManager } from '../services/editing/editing-state-manager.service';\n\n/**\n * Custom RxJS operator that pauses data flow when editing is active.\n * \n * When editing starts, incoming values are buffered.\n * When editing ends, the latest buffered value is emitted.\n * \n * @param editingStateManager The EditingStateManager service instance\n * @returns An operator function that can be used in RxJS pipe\n * \n * @example\n * ```typescript\n * dataStream$.pipe(\n * pauseWhenEditing(this.editingStateManager),\n * // ... other operators\n * )\n * ```\n */\nexport function pauseWhenEditing<T>(\n editingStateManager: EditingStateManager\n): MonoTypeOperatorFunction<T> {\n return (source: Observable<T>) => {\n return new Observable<T>(observer => {\n let pendingValues: T[] = [];\n let isEditing = false;\n \n // Subscribe to editing state changes\n const editingSub = editingStateManager.isEditing$.subscribe(editing => {\n const wasEditing = isEditing;\n isEditing = editing;\n console.debug('[pauseWhenEditing] Editing state changed:', { wasEditing, isEditing, pendingCount: pendingValues.length });\n \n // When editing ends, emit the latest pending value\n if (wasEditing && !isEditing && pendingValues.length > 0) {\n // Emit only the latest value (discard older updates)\n const latestValue = pendingValues[pendingValues.length - 1];\n pendingValues = [];\n console.debug('[pauseWhenEditing] Emitting pending value after edit end');\n observer.next(latestValue);\n }\n });\n \n // Subscribe to the source data stream\n const sourceSub = source.subscribe({\n next: value => {\n if (!isEditing) {\n // Pass through immediately when not editing\n console.debug('[pauseWhenEditing] Passing through value (not editing)');\n observer.next(value);\n }\n },\n error: err => observer.error(err),\n complete: () => observer.complete()\n });\n \n // Cleanup subscriptions\n return () => {\n editingSub.unsubscribe();\n sourceSub.unsubscribe();\n };\n });\n };\n}\n\n/**\n * Alternative operator that buffers ALL updates during editing.\n * \n * When editing ends, all buffered values are emitted in sequence.\n * This preserves the complete update history.\n * \n * @param editingStateManager The EditingStateManager service instance\n * @returns An operator function that can be used in RxJS pipe\n * \n * @example\n * ```typescript\n * dataStream$.pipe(\n * bufferWhenEditing(this.editingStateManager),\n * // ... other operators\n * )\n * ```\n */\nexport function bufferWhenEditing<T>(\n editingStateManager: EditingStateManager\n): MonoTypeOperatorFunction<T> {\n return (source: Observable<T>) => {\n return new Observable<T>(observer => {\n const buffer: T[] = [];\n let isEditing = false;\n \n // Subscribe to editing state changes\n const editingSub = editingStateManager.isEditing$.subscribe(editing => {\n const wasEditing = isEditing;\n isEditing = editing;\n \n // When editing ends, emit all buffered values\n if (wasEditing && !isEditing && buffer.length > 0) {\n buffer.forEach(value => observer.next(value));\n buffer.length = 0; // Clear the buffer\n }\n });\n \n // Subscribe to the source data stream\n const sourceSub = source.subscribe({\n next: value => {\n if (!isEditing) {\n observer.next(value);\n } else {\n buffer.push(value);\n }\n },\n error: err => observer.error(err),\n complete: () => observer.complete()\n });\n \n // Cleanup subscriptions\n return () => {\n editingSub.unsubscribe();\n sourceSub.unsubscribe();\n };\n });\n };\n}","import { Signal, WritableSignal } from '@angular/core';\n\nexport type CleanupFunction = () => void;\n\nexport interface ActiveControlOptions {\n /** mousedownでstopPropagationを呼ばない */\n disableStopPropagation?: boolean;\n /** スクロールを許可する要素のセレクタ */\n scrollSelectors?: string[];\n}\n\nexport class ActiveControlEventHandlers {\n private cleanupFunctions: CleanupFunction[] = [];\n\n constructor(\n private hostElement: HTMLElement,\n private isActive: WritableSignal<boolean>,\n private onActiveChange: (active: boolean) => void,\n private options: ActiveControlOptions = {}\n ) {}\n\n setupAll(): CleanupFunction[] {\n this.setupClickHandlers();\n this.setupPreventionHandlers();\n return this.cleanupFunctions;\n }\n\n private setupClickHandlers(): void {\n // ホスト要素クリック\n const mousedownHandler = (e: MouseEvent) => {\n this.toggleActive();\n // React Flowなどのドラッグと共存するため、オプションでstopPropagationを無効化\n if (!this.options.disableStopPropagation) {\n e.stopPropagation();\n }\n };\n this.addEventListener(this.hostElement, 'mousedown', mousedownHandler);\n\n // 外部クリック\n const documentClickListener = (e: MouseEvent) => {\n if (!this.hostElement.contains(e.target as Node) && this.isActive()) {\n this.setActive(false);\n }\n };\n document.addEventListener('mousedown', documentClickListener, { capture: true });\n this.cleanupFunctions.push(() =>\n document.removeEventListener('mousedown', documentClickListener, { capture: true })\n );\n }\n\n private setupPreventionHandlers(): void {\n // ホイールイベント(スクロール対象要素以外でのみブロック)\n // ただし、ctrlKey + wheel(トラックパッドのピンチズーム)は常にブロック\n // 非アクティブ時はScrollControlがスクロール位置をリセットするため、ここでは処理しない\n this.addEventListener(this.hostElement, 'wheel', (e: WheelEvent) => {\n if (this.isActive()) {\n // ctrlKey + wheel = トラックパッドのピンチズーム → 常にブロック\n if (e.ctrlKey) {\n e.preventDefault();\n e.stopPropagation();\n return;\n }\n\n // 通常のホイールスクロール: スクロール対象要素からのイベントは許可\n const target = e.target as HTMLElement;\n const isScrollableElement = this.options.scrollSelectors?.some(selector =>\n target.closest(selector) !== null\n );\n if (!isScrollableElement) {\n e.preventDefault();\n e.stopPropagation();\n }\n }\n }, { passive: false });\n\n // タッチイベント(ホスト要素レベル)\n const touchHandler = (e: TouchEvent) => {\n if (!this.isActive()) return;\n\n // スクロール対象要素からのイベントは許可\n const target = e.target as HTMLElement;\n const isScrollableElement = this.options.scrollSelectors?.some(selector =>\n target.closest(selector) !== null\n );\n if (!isScrollableElement) {\n if (e.touches.length > 1) {\n // ピンチズームなどマルチタッチ操作をブロック\n e.preventDefault();\n e.stopPropagation();\n }\n // シングルタッチはデフォルト動作を許可(スクロールなど)\n }\n };\n this.addEventListener(this.hostElement, 'touchstart', touchHandler, { passive: false });\n this.addEventListener(this.hostElement, 'touchmove', touchHandler, { passive: false });\n\n // ジェスチャーイベント(ホスト要素レベル)\n const gestureHandler = (e: Event) => {\n if (this.isActive()) {\n e.preventDefault();\n e.stopPropagation();\n }\n };\n ['gesturestart', 'gesturechange', 'gestureend'].forEach(eventName => {\n this.addEventListener(this.hostElement, eventName, gestureHandler, { passive: false });\n });\n\n // Document-level capture phaseハンドラ\n // ブラウザのピンチズームがデフォルト動作を行う前にキャッチする\n this.setupDocumentLevelPinchZoomPrevention();\n }\n\n /**\n * Document-levelでcapture phaseを使ってピンチズームを防止\n * ホスト要素内で発生したマルチタッチ/ジェスチャーイベントのみをブロック\n */\n private setupDocumentLevelPinchZoomPrevention(): void {\n // タッチイベント(capture phase)\n const documentTouchHandler = (e: TouchEvent) => {\n if (!this.isActive()) return;\n if (!this.hostElement.contains(e.target as Node)) return;\n\n if (e.touches.length > 1) {\n e.preventDefault();\n }\n };\n\n document.addEventListener('touchstart', documentTouchHandler, { capture: true, passive: false });\n document.addEventListener('touchmove', documentTouchHandler, { capture: true, passive: false });\n\n this.cleanupFunctions.push(() => {\n document.removeEventListener('touchstart', documentTouchHandler, { capture: true });\n document.removeEventListener('touchmove', documentTouchHandler, { capture: true });\n });\n\n // Safari gestureイベント(capture phase)\n const documentGestureHandler = (e: Event) => {\n if (!this.isActive()) return;\n if (!this.hostElement.contains(e.target as Node)) return;\n e.preventDefault();\n };\n\n ['gesturestart', 'gesturechange', 'gestureend'].forEach(eventName => {\n document.addEventListener(eventName, documentGestureHandler, { capture: true, passive: false });\n this.cleanupFunctions.push(() =>\n document.removeEventListener(eventName, documentGestureHandler, { capture: true })\n );\n });\n }\n\n private addEventListener(\n element: HTMLElement | Document,\n event: string,\n handler: EventListener,\n options?: AddEventListenerOptions\n ): void {\n element.addEventListener(event, handler, options);\n this.cleanupFunctions.push(() => element.removeEventListener(event, handler, options));\n }\n\n private toggleActive(): void {\n this.setActive(!this.isActive());\n }\n\n private setActive(active: boolean): void {\n this.isActive.set(active);\n this.onActiveChange(active);\n }\n}\n","import { Signal } from '@angular/core';\nimport { CleanupFunction } from './event-handlers';\n\nexport interface ScrollControlOptions {\n /** スクロール位置のロックを無効化する(常にスクロール可能にする) */\n disableScrollLock?: boolean;\n}\n\nexport class ScrollControl {\n private lockedScrollTop = 0;\n private wasActive = false;\n private rafId?: number;\n\n constructor(\n private scrollElement: HTMLElement,\n private isActive: Signal<boolean>,\n private options: ScrollControlOptions = {}\n ) {}\n\n setup(): CleanupFunction[] {\n const cleanups: CleanupFunction[] = [];\n\n // アクティブ状態の監視\n const checkActiveState = () => {\n const isActiveNow = this.isActive();\n\n if (!this.options.disableScrollLock) {\n if (!isActiveNow && this.wasActive) {\n // アクティブ → 非アクティブ: 現在位置をロック\n this.lockedScrollTop = this.scrollElement.scrollTop;\n } else if (!isActiveNow) {\n // 継続して非アクティブ: ロック位置を維持\n this.scrollElement.scrollTop = this.lockedScrollTop;\n }\n }\n // アクティブ時 or disableScrollLock時: 何もしない(自由スクロール)\n\n this.wasActive = isActiveNow;\n this.rafId = requestAnimationFrame(checkActiveState);\n };\n checkActiveState();\n cleanups.push(() => {\n if (this.rafId !== undefined) {\n cancelAnimationFrame(this.rafId);\n }\n });\n\n // スクロールイベント監視\n const scrollHandler = () => {\n if (!this.options.disableScrollLock && !this.isActive()) {\n this.scrollElement.scrollTop = this.lockedScrollTop;\n }\n };\n this.scrollElement.addEventListener('scroll', scrollHandler);\n cleanups.push(() => this.scrollElement.removeEventListener('scroll', scrollHandler));\n\n return cleanups;\n }\n}\n","import { Directive, ElementRef, input, output, effect, signal, OnDestroy, inject } from '@angular/core';\nimport { ActiveControlEventHandlers, ScrollControl } from './handlers';\n\n/**\n * アクティブ状態を管理するディレクティブ\n *\n * クリックでアクティブ化、外部クリックで非アクティブ化し、\n * スクロール位置の固定やイベント伝播の制御を行います。\n *\n * @example\n * ```html\n * <!-- 単一セレクタ -->\n * <div appActiveControl\n * [scrollSelector]=\"'.xterm-viewport'\"\n * (activeChange)=\"onActiveChange($event)\">\n * <!-- content -->\n * </div>\n *\n * <!-- 複数セレクタ -->\n * <div appActiveControl\n * [scrollSelectors]=\"['.xterm-viewport', '.qtp-content']\"\n * (activeChange)=\"onActiveChange($event)\">\n * <!-- content -->\n * </div>\n * ```\n */\n@Directive({\n selector: '[appActiveControl]',\n standalone: true,\n host: {\n '[class.active]': 'isActive()',\n '[class.nodrag]': '!disableNodrag()',\n '[class.nowheel]': 'isActive()',\n }\n})\nexport class ActiveControlDirective implements OnDestroy {\n private readonly el = inject(ElementRef);\n readonly scrollSelector = input<string>();\n readonly scrollSelectors = input<string[]>();\n /** mousedownでstopPropagationを呼ばない(React Flowなどのドラッグと共存するため) */\n readonly disableStopPropagation = input<boolean>(false);\n /** スクロール位置のロックを無効化する(常にスクロール可能にする) */\n readonly disableScrollLock = input<boolean>(false);\n /** nodragクラスを付与しない(React Flowのノードでドラッグを有効化するため) */\n readonly disableNodrag = input<boolean>(false);\n readonly activeChange = output<boolean>();\n readonly isActive = signal<boolean>(false);\n\n private eventCleanupFunctions: (() => void)[] = [];\n private scrollCleanupFunctions: (() => void)[] = [];\n private eventHandlersInitialized = false;\n\n constructor() {\n // イベントハンドラーの初期化(一度だけ)\n effect(() => {\n if (!this.eventHandlersInitialized) {\n setTimeout(() => this.initializeEventHandlers(), 100);\n this.eventHandlersInitialized = true;\n }\n }, { allowSignalWrites: true });\n\n // スクロール制御の初期化(セレクタが変わるたびに再設定)\n effect(() => {\n const selectors = this.getScrollSelectors();\n setTimeout(() => this.setupScrollControls(selectors), 150);\n });\n }\n\n ngOnDestroy(): void {\n this.eventCleanupFunctions.forEach(cleanup => cleanup());\n this.scrollCleanupFunctions.forEach(cleanup => cleanup());\n }\n\n private initializeEventHandlers(): void {\n const hostElement = this.el.nativeElement as HTMLElement;\n const scrollSelectors = this.getScrollSelectors();\n const eventHandlers = new ActiveControlEventHandlers(\n hostElement,\n this.isActive,\n (active) => this.activeChange.emit(active),\n { disableStopPropagation: this.disableStopPropagation(), scrollSelectors }\n );\n this.eventCleanupFunctions.push(...eventHandlers.setupAll());\n }\n\n private setupScrollControls(selectors: string[]): void {\n // 既存のスクロール制御をクリーンアップ\n this.scrollCleanupFunctions.forEach(cleanup => cleanup());\n this.scrollCleanupFunctions = [];\n\n const hostElement = this.el.nativeElement as HTMLElement;\n const disableScrollLock = this.disableScrollLock();\n for (const selector of selectors) {\n // querySelectorAll を使用して全てのマッチする要素を取得\n const scrollElements = hostElement.querySelectorAll<HTMLElement>(selector);\n scrollElements.forEach(scrollElement => {\n const scrollControl = new ScrollControl(scrollElement, this.isActive, { disableScrollLock });\n this.scrollCleanupFunctions.push(...scrollControl.setup());\n });\n }\n }\n\n private getScrollSelectors(): string[] {\n const multiple = this.scrollSelectors();\n if (multiple && multiple.length > 0) {\n return multiple;\n }\n const single = this.scrollSelector();\n return single ? [single] : [];\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|