@angular/cdk 21.1.0-next.0 → 21.1.0-next.2
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/_a11y-module-chunk.mjs +30 -24
- package/fesm2022/_a11y-module-chunk.mjs.map +1 -1
- package/fesm2022/_activedescendant-key-manager-chunk.mjs.map +1 -1
- package/fesm2022/_array-chunk.mjs.map +1 -1
- package/fesm2022/_breakpoints-observer-chunk.mjs +6 -6
- package/fesm2022/_breakpoints-observer-chunk.mjs.map +1 -1
- package/fesm2022/_css-pixel-value-chunk.mjs.map +1 -1
- package/fesm2022/_data-source-chunk.mjs.map +1 -1
- package/fesm2022/_directionality-chunk.mjs +3 -3
- package/fesm2022/_directionality-chunk.mjs.map +1 -1
- package/fesm2022/_dispose-view-repeater-strategy-chunk.mjs.map +1 -1
- package/fesm2022/_element-chunk.mjs.map +1 -1
- package/fesm2022/_fake-event-detection-chunk.mjs.map +1 -1
- package/fesm2022/_focus-key-manager-chunk.mjs.map +1 -1
- package/fesm2022/_focus-monitor-chunk.mjs +9 -9
- package/fesm2022/_focus-monitor-chunk.mjs.map +1 -1
- package/fesm2022/_id-generator-chunk.mjs +3 -3
- package/fesm2022/_id-generator-chunk.mjs.map +1 -1
- package/fesm2022/_keycodes-chunk.mjs.map +1 -1
- package/fesm2022/_list-key-manager-chunk.mjs +5 -5
- package/fesm2022/_list-key-manager-chunk.mjs.map +1 -1
- package/fesm2022/_overlay-module-chunk.mjs +42 -34
- package/fesm2022/_overlay-module-chunk.mjs.map +1 -1
- package/fesm2022/_passive-listeners-chunk.mjs.map +1 -1
- package/fesm2022/_platform-chunk.mjs +3 -3
- package/fesm2022/_platform-chunk.mjs.map +1 -1
- package/fesm2022/_recycle-view-repeater-strategy-chunk.mjs +1 -3
- package/fesm2022/_recycle-view-repeater-strategy-chunk.mjs.map +1 -1
- package/fesm2022/_scrolling-chunk.mjs.map +1 -1
- package/fesm2022/_selection-model-chunk.mjs.map +1 -1
- package/fesm2022/_shadow-dom-chunk.mjs.map +1 -1
- package/fesm2022/_style-loader-chunk.mjs +3 -3
- package/fesm2022/_style-loader-chunk.mjs.map +1 -1
- package/fesm2022/_test-environment-chunk.mjs.map +1 -1
- package/fesm2022/_tree-key-manager-chunk.mjs.map +1 -1
- package/fesm2022/_typeahead-chunk.mjs.map +1 -1
- package/fesm2022/_unique-selection-dispatcher-chunk.mjs +3 -3
- package/fesm2022/_unique-selection-dispatcher-chunk.mjs.map +1 -1
- package/fesm2022/a11y.mjs +11 -10
- package/fesm2022/a11y.mjs.map +1 -1
- package/fesm2022/accordion.mjs +10 -10
- package/fesm2022/accordion.mjs.map +1 -1
- package/fesm2022/bidi.mjs +7 -7
- package/fesm2022/bidi.mjs.map +1 -1
- package/fesm2022/cdk.mjs +1 -1
- package/fesm2022/cdk.mjs.map +1 -1
- package/fesm2022/clipboard.mjs +10 -10
- package/fesm2022/clipboard.mjs.map +1 -1
- package/fesm2022/coercion-private.mjs.map +1 -1
- package/fesm2022/coercion.mjs.map +1 -1
- package/fesm2022/collections.mjs +1 -1
- package/fesm2022/dialog.mjs +12 -11
- package/fesm2022/dialog.mjs.map +1 -1
- package/fesm2022/drag-drop.mjs +31 -31
- package/fesm2022/drag-drop.mjs.map +1 -1
- package/fesm2022/keycodes.mjs.map +1 -1
- package/fesm2022/layout.mjs +4 -4
- package/fesm2022/layout.mjs.map +1 -1
- package/fesm2022/listbox.mjs +10 -10
- package/fesm2022/listbox.mjs.map +1 -1
- package/fesm2022/menu.mjs +69 -52
- package/fesm2022/menu.mjs.map +1 -1
- package/fesm2022/observers-private.mjs +3 -3
- package/fesm2022/observers-private.mjs.map +1 -1
- package/fesm2022/observers.mjs +13 -13
- package/fesm2022/observers.mjs.map +1 -1
- package/fesm2022/overlay.mjs +3 -3
- package/fesm2022/overlay.mjs.map +1 -1
- package/fesm2022/platform.mjs +4 -4
- package/fesm2022/platform.mjs.map +1 -1
- package/fesm2022/portal.mjs +10 -10
- package/fesm2022/portal.mjs.map +1 -1
- package/fesm2022/private.mjs +52 -3
- package/fesm2022/private.mjs.map +1 -1
- package/fesm2022/scrolling.mjs +55 -53
- package/fesm2022/scrolling.mjs.map +1 -1
- package/fesm2022/stepper.mjs +22 -22
- package/fesm2022/stepper.mjs.map +1 -1
- package/fesm2022/table.mjs +214 -109
- package/fesm2022/table.mjs.map +1 -1
- package/fesm2022/testing-selenium-webdriver.mjs.map +1 -1
- package/fesm2022/testing-testbed.mjs.map +1 -1
- package/fesm2022/testing.mjs.map +1 -1
- package/fesm2022/text-field.mjs +16 -16
- package/fesm2022/text-field.mjs.map +1 -1
- package/fesm2022/tree.mjs +25 -25
- package/fesm2022/tree.mjs.map +1 -1
- package/package.json +2 -1
- package/schematics/ng-add/index.js +1 -1
- package/types/_a11y-module-chunk.d.ts +9 -5
- package/types/_overlay-module-chunk.d.ts +1 -0
- package/types/_scrolling-module-chunk.d.ts +11 -1
- package/types/_view-repeater-chunk.d.ts +2 -7
- package/types/a11y.d.ts +2 -1
- package/types/collections.d.ts +1 -1
- package/types/dialog.d.ts +1 -0
- package/types/menu.d.ts +7 -2
- package/types/private.d.ts +5 -1
- package/types/scrolling.d.ts +1 -1
- package/types/table.d.ts +62 -11
- package/_adev_assets/cdk_drag_drop.json +0 -7221
- package/_adev_assets/cdk_testing.json +0 -7601
- package/_adev_assets/cdk_testing_protractor.json +0 -1747
- package/_adev_assets/cdk_testing_selenium_webdriver.json +0 -1801
- package/_adev_assets/cdk_testing_testbed.json +0 -1903
- package/fesm2022/_visually-hidden-chunk.mjs +0 -46
- package/fesm2022/_visually-hidden-chunk.mjs.map +0 -1
|
@@ -24,7 +24,7 @@ class MediaMatcher {
|
|
|
24
24
|
}
|
|
25
25
|
static ɵfac = i0.ɵɵngDeclareFactory({
|
|
26
26
|
minVersion: "12.0.0",
|
|
27
|
-
version: "21.0.
|
|
27
|
+
version: "21.0.3",
|
|
28
28
|
ngImport: i0,
|
|
29
29
|
type: MediaMatcher,
|
|
30
30
|
deps: [],
|
|
@@ -32,7 +32,7 @@ class MediaMatcher {
|
|
|
32
32
|
});
|
|
33
33
|
static ɵprov = i0.ɵɵngDeclareInjectable({
|
|
34
34
|
minVersion: "12.0.0",
|
|
35
|
-
version: "21.0.
|
|
35
|
+
version: "21.0.3",
|
|
36
36
|
ngImport: i0,
|
|
37
37
|
type: MediaMatcher,
|
|
38
38
|
providedIn: 'root'
|
|
@@ -40,7 +40,7 @@ class MediaMatcher {
|
|
|
40
40
|
}
|
|
41
41
|
i0.ɵɵngDeclareClassMetadata({
|
|
42
42
|
minVersion: "12.0.0",
|
|
43
|
-
version: "21.0.
|
|
43
|
+
version: "21.0.3",
|
|
44
44
|
ngImport: i0,
|
|
45
45
|
type: MediaMatcher,
|
|
46
46
|
decorators: [{
|
|
@@ -141,7 +141,7 @@ class BreakpointObserver {
|
|
|
141
141
|
}
|
|
142
142
|
static ɵfac = i0.ɵɵngDeclareFactory({
|
|
143
143
|
minVersion: "12.0.0",
|
|
144
|
-
version: "21.0.
|
|
144
|
+
version: "21.0.3",
|
|
145
145
|
ngImport: i0,
|
|
146
146
|
type: BreakpointObserver,
|
|
147
147
|
deps: [],
|
|
@@ -149,7 +149,7 @@ class BreakpointObserver {
|
|
|
149
149
|
});
|
|
150
150
|
static ɵprov = i0.ɵɵngDeclareInjectable({
|
|
151
151
|
minVersion: "12.0.0",
|
|
152
|
-
version: "21.0.
|
|
152
|
+
version: "21.0.3",
|
|
153
153
|
ngImport: i0,
|
|
154
154
|
type: BreakpointObserver,
|
|
155
155
|
providedIn: 'root'
|
|
@@ -157,7 +157,7 @@ class BreakpointObserver {
|
|
|
157
157
|
}
|
|
158
158
|
i0.ɵɵngDeclareClassMetadata({
|
|
159
159
|
minVersion: "12.0.0",
|
|
160
|
-
version: "21.0.
|
|
160
|
+
version: "21.0.3",
|
|
161
161
|
ngImport: i0,
|
|
162
162
|
type: BreakpointObserver,
|
|
163
163
|
decorators: [{
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"_breakpoints-observer-chunk.mjs","sources":["../../../../../darwin_arm64-fastbuild-ST-199a4f3c4e20/bin/src/cdk/layout/media-matcher.ts","../../../../../darwin_arm64-fastbuild-ST-199a4f3c4e20/bin/src/cdk/layout/breakpoints-observer.ts"],"sourcesContent":["/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.dev/license\n */\nimport {Injectable, CSP_NONCE, inject} from '@angular/core';\nimport {Platform} from '../platform';\n\n/** Global registry for all dynamically-created, injected media queries. */\nconst mediaQueriesForWebkitCompatibility: Set<string> = new Set<string>();\n\n/** Style tag that holds all of the dynamically-created media queries. */\nlet mediaQueryStyleNode: HTMLStyleElement | undefined;\n\n/** A utility for calling matchMedia queries. */\n@Injectable({providedIn: 'root'})\nexport class MediaMatcher {\n private _platform = inject(Platform);\n private _nonce = inject(CSP_NONCE, {optional: true});\n\n /** The internal matchMedia method to return back a MediaQueryList like object. */\n private _matchMedia: (query: string) => MediaQueryList;\n\n constructor(...args: unknown[]);\n\n constructor() {\n this._matchMedia =\n this._platform.isBrowser && window.matchMedia\n ? // matchMedia is bound to the window scope intentionally as it is an illegal invocation to\n // call it from a different scope.\n window.matchMedia.bind(window)\n : noopMatchMedia;\n }\n\n /**\n * Evaluates the given media query and returns the native MediaQueryList from which results\n * can be retrieved.\n * Confirms the layout engine will trigger for the selector query provided and returns the\n * MediaQueryList for the query provided.\n */\n matchMedia(query: string): MediaQueryList {\n if (this._platform.WEBKIT || this._platform.BLINK) {\n createEmptyStyleRule(query, this._nonce);\n }\n return this._matchMedia(query);\n }\n}\n\n/**\n * Creates an empty stylesheet that is used to work around browser inconsistencies related to\n * `matchMedia`. At the time of writing, it handles the following cases:\n * 1. On WebKit browsers, a media query has to have at least one rule in order for `matchMedia`\n * to fire. We work around it by declaring a dummy stylesheet with a `@media` declaration.\n * 2. In some cases Blink browsers will stop firing the `matchMedia` listener if none of the rules\n * inside the `@media` match existing elements on the page. We work around it by having one rule\n * targeting the `body`. See https://github.com/angular/components/issues/23546.\n */\nfunction createEmptyStyleRule(query: string, nonce: string | undefined | null) {\n if (mediaQueriesForWebkitCompatibility.has(query)) {\n return;\n }\n\n try {\n if (!mediaQueryStyleNode) {\n mediaQueryStyleNode = document.createElement('style');\n\n if (nonce) {\n mediaQueryStyleNode.setAttribute('nonce', nonce);\n }\n\n mediaQueryStyleNode.setAttribute('type', 'text/css');\n document.head!.appendChild(mediaQueryStyleNode);\n }\n\n if (mediaQueryStyleNode.sheet) {\n mediaQueryStyleNode.sheet.insertRule(`@media ${query} {body{ }}`, 0);\n mediaQueriesForWebkitCompatibility.add(query);\n }\n } catch (e) {\n console.error(e);\n }\n}\n\n/** No-op matchMedia replacement for non-browser platforms. */\nfunction noopMatchMedia(query: string): MediaQueryList {\n // Use `as any` here to avoid adding additional necessary properties for\n // the noop matcher.\n return {\n matches: query === 'all' || query === '',\n media: query,\n addListener: () => {},\n removeListener: () => {},\n } as any;\n}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.dev/license\n */\n\nimport {coerceArray} from '../coercion';\nimport {Injectable, NgZone, OnDestroy, inject} from '@angular/core';\nimport {combineLatest, concat, Observable, Observer, Subject} from 'rxjs';\nimport {debounceTime, map, skip, startWith, take, takeUntil} from 'rxjs/operators';\nimport {MediaMatcher} from './media-matcher';\n\n/** The current state of a layout breakpoint. */\nexport interface BreakpointState {\n /** Whether the breakpoint is currently matching. */\n matches: boolean;\n /**\n * A key boolean pair for each query provided to the observe method,\n * with its current matched state.\n */\n breakpoints: {\n [key: string]: boolean;\n };\n}\n\n/** The current state of a layout breakpoint. */\ninterface InternalBreakpointState {\n /** Whether the breakpoint is currently matching. */\n matches: boolean;\n /** The media query being to be matched */\n query: string;\n}\n\ninterface Query {\n observable: Observable<InternalBreakpointState>;\n mql: MediaQueryList;\n}\n\n/** Utility for checking the matching state of `@media` queries. */\n@Injectable({providedIn: 'root'})\nexport class BreakpointObserver implements OnDestroy {\n private _mediaMatcher = inject(MediaMatcher);\n private _zone = inject(NgZone);\n\n /** A map of all media queries currently being listened for. */\n private _queries = new Map<string, Query>();\n /** A subject for all other observables to takeUntil based on. */\n private readonly _destroySubject = new Subject<void>();\n\n constructor(...args: unknown[]);\n constructor() {}\n\n /** Completes the active subject, signalling to all other observables to complete. */\n ngOnDestroy() {\n this._destroySubject.next();\n this._destroySubject.complete();\n }\n\n /**\n * Whether one or more media queries match the current viewport size.\n * @param value One or more media queries to check.\n * @returns Whether any of the media queries match.\n */\n isMatched(value: string | readonly string[]): boolean {\n const queries = splitQueries(coerceArray(value));\n return queries.some(mediaQuery => this._registerQuery(mediaQuery).mql.matches);\n }\n\n /**\n * Gets an observable of results for the given queries that will emit new results for any changes\n * in matching of the given queries.\n * @param value One or more media queries to check.\n * @returns A stream of matches for the given queries.\n */\n observe(value: string | readonly string[]): Observable<BreakpointState> {\n const queries = splitQueries(coerceArray(value));\n const observables = queries.map(query => this._registerQuery(query).observable);\n\n let stateObservable = combineLatest(observables);\n // Emit the first state immediately, and then debounce the subsequent emissions.\n stateObservable = concat(\n stateObservable.pipe(take(1)),\n stateObservable.pipe(skip(1), debounceTime(0)),\n );\n return stateObservable.pipe(\n map(breakpointStates => {\n const response: BreakpointState = {\n matches: false,\n breakpoints: {},\n };\n breakpointStates.forEach(({matches, query}) => {\n response.matches = response.matches || matches;\n response.breakpoints[query] = matches;\n });\n return response;\n }),\n );\n }\n\n /** Registers a specific query to be listened for. */\n private _registerQuery(query: string): Query {\n // Only set up a new MediaQueryList if it is not already being listened for.\n if (this._queries.has(query)) {\n return this._queries.get(query)!;\n }\n\n const mql = this._mediaMatcher.matchMedia(query);\n\n // Create callback for match changes and add it is as a listener.\n const queryObservable = new Observable((observer: Observer<MediaQueryListEvent>) => {\n // Listener callback methods are wrapped to be placed back in ngZone. Callbacks must be placed\n // back into the zone because matchMedia is only included in Zone.js by loading the\n // webapis-media-query.js file alongside the zone.js file. Additionally, some browsers do not\n // have MediaQueryList inherit from EventTarget, which causes inconsistencies in how Zone.js\n // patches it.\n const handler = (e: MediaQueryListEvent): void => this._zone.run(() => observer.next(e));\n mql.addListener(handler);\n\n return () => {\n mql.removeListener(handler);\n };\n }).pipe(\n startWith(mql),\n map(({matches}) => ({query, matches})),\n takeUntil(this._destroySubject),\n );\n\n // Add the MediaQueryList to the set of queries.\n const output = {observable: queryObservable, mql};\n this._queries.set(query, output);\n return output;\n }\n}\n\n/**\n * Split each query string into separate query strings if two queries are provided as comma\n * separated.\n */\nfunction splitQueries(queries: readonly string[]): readonly string[] {\n return queries\n .map(query => query.split(','))\n .reduce((a1, a2) => a1.concat(a2))\n .map(query => query.trim());\n}\n"],"names":["mediaQueriesForWebkitCompatibility","Set","mediaQueryStyleNode","MediaMatcher","_platform","inject","Platform","_nonce","CSP_NONCE","optional","_matchMedia","constructor","isBrowser","window","matchMedia","bind","noopMatchMedia","query","WEBKIT","BLINK","createEmptyStyleRule","deps","target","i0","ɵɵFactoryTarget","Injectable","ɵprov","ɵɵngDeclareInjectable","minVersion","version","ngImport","type","decorators","providedIn","nonce","has","document","createElement","setAttribute","head","appendChild","sheet","insertRule","add","e","console","error","matches","media","addListener","removeListener","BreakpointObserver","_mediaMatcher","_zone","NgZone","_queries","Map","_destroySubject","Subject","ngOnDestroy","next","complete","isMatched","value","queries","splitQueries","coerceArray","some","mediaQuery","_registerQuery","mql","observe","observables","map","observable","stateObservable","combineLatest","concat","pipe","take","skip","debounceTime","breakpointStates","response","breakpoints","forEach","get","queryObservable","Observable","observer","handler","run","startWith","takeUntil","output","set","split","reduce","a1","a2","trim"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"_breakpoints-observer-chunk.mjs","sources":["../../../../../darwin_arm64-fastbuild-ST-fdfa778d11ba/bin/src/cdk/layout/media-matcher.ts","../../../../../darwin_arm64-fastbuild-ST-fdfa778d11ba/bin/src/cdk/layout/breakpoints-observer.ts"],"sourcesContent":["/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.dev/license\n */\nimport {Injectable, CSP_NONCE, inject} from '@angular/core';\nimport {Platform} from '../platform';\n\n/** Global registry for all dynamically-created, injected media queries. */\nconst mediaQueriesForWebkitCompatibility: Set<string> = new Set<string>();\n\n/** Style tag that holds all of the dynamically-created media queries. */\nlet mediaQueryStyleNode: HTMLStyleElement | undefined;\n\n/** A utility for calling matchMedia queries. */\n@Injectable({providedIn: 'root'})\nexport class MediaMatcher {\n private _platform = inject(Platform);\n private _nonce = inject(CSP_NONCE, {optional: true});\n\n /** The internal matchMedia method to return back a MediaQueryList like object. */\n private _matchMedia: (query: string) => MediaQueryList;\n\n constructor(...args: unknown[]);\n\n constructor() {\n this._matchMedia =\n this._platform.isBrowser && window.matchMedia\n ? // matchMedia is bound to the window scope intentionally as it is an illegal invocation to\n // call it from a different scope.\n window.matchMedia.bind(window)\n : noopMatchMedia;\n }\n\n /**\n * Evaluates the given media query and returns the native MediaQueryList from which results\n * can be retrieved.\n * Confirms the layout engine will trigger for the selector query provided and returns the\n * MediaQueryList for the query provided.\n */\n matchMedia(query: string): MediaQueryList {\n if (this._platform.WEBKIT || this._platform.BLINK) {\n createEmptyStyleRule(query, this._nonce);\n }\n return this._matchMedia(query);\n }\n}\n\n/**\n * Creates an empty stylesheet that is used to work around browser inconsistencies related to\n * `matchMedia`. At the time of writing, it handles the following cases:\n * 1. On WebKit browsers, a media query has to have at least one rule in order for `matchMedia`\n * to fire. We work around it by declaring a dummy stylesheet with a `@media` declaration.\n * 2. In some cases Blink browsers will stop firing the `matchMedia` listener if none of the rules\n * inside the `@media` match existing elements on the page. We work around it by having one rule\n * targeting the `body`. See https://github.com/angular/components/issues/23546.\n */\nfunction createEmptyStyleRule(query: string, nonce: string | undefined | null) {\n if (mediaQueriesForWebkitCompatibility.has(query)) {\n return;\n }\n\n try {\n if (!mediaQueryStyleNode) {\n mediaQueryStyleNode = document.createElement('style');\n\n if (nonce) {\n mediaQueryStyleNode.setAttribute('nonce', nonce);\n }\n\n mediaQueryStyleNode.setAttribute('type', 'text/css');\n document.head!.appendChild(mediaQueryStyleNode);\n }\n\n if (mediaQueryStyleNode.sheet) {\n mediaQueryStyleNode.sheet.insertRule(`@media ${query} {body{ }}`, 0);\n mediaQueriesForWebkitCompatibility.add(query);\n }\n } catch (e) {\n console.error(e);\n }\n}\n\n/** No-op matchMedia replacement for non-browser platforms. */\nfunction noopMatchMedia(query: string): MediaQueryList {\n // Use `as any` here to avoid adding additional necessary properties for\n // the noop matcher.\n return {\n matches: query === 'all' || query === '',\n media: query,\n addListener: () => {},\n removeListener: () => {},\n } as any;\n}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.dev/license\n */\n\nimport {coerceArray} from '../coercion';\nimport {Injectable, NgZone, OnDestroy, inject} from '@angular/core';\nimport {combineLatest, concat, Observable, Observer, Subject} from 'rxjs';\nimport {debounceTime, map, skip, startWith, take, takeUntil} from 'rxjs/operators';\nimport {MediaMatcher} from './media-matcher';\n\n/** The current state of a layout breakpoint. */\nexport interface BreakpointState {\n /** Whether the breakpoint is currently matching. */\n matches: boolean;\n /**\n * A key boolean pair for each query provided to the observe method,\n * with its current matched state.\n */\n breakpoints: {\n [key: string]: boolean;\n };\n}\n\n/** The current state of a layout breakpoint. */\ninterface InternalBreakpointState {\n /** Whether the breakpoint is currently matching. */\n matches: boolean;\n /** The media query being to be matched */\n query: string;\n}\n\ninterface Query {\n observable: Observable<InternalBreakpointState>;\n mql: MediaQueryList;\n}\n\n/** Utility for checking the matching state of `@media` queries. */\n@Injectable({providedIn: 'root'})\nexport class BreakpointObserver implements OnDestroy {\n private _mediaMatcher = inject(MediaMatcher);\n private _zone = inject(NgZone);\n\n /** A map of all media queries currently being listened for. */\n private _queries = new Map<string, Query>();\n /** A subject for all other observables to takeUntil based on. */\n private readonly _destroySubject = new Subject<void>();\n\n constructor(...args: unknown[]);\n constructor() {}\n\n /** Completes the active subject, signalling to all other observables to complete. */\n ngOnDestroy() {\n this._destroySubject.next();\n this._destroySubject.complete();\n }\n\n /**\n * Whether one or more media queries match the current viewport size.\n * @param value One or more media queries to check.\n * @returns Whether any of the media queries match.\n */\n isMatched(value: string | readonly string[]): boolean {\n const queries = splitQueries(coerceArray(value));\n return queries.some(mediaQuery => this._registerQuery(mediaQuery).mql.matches);\n }\n\n /**\n * Gets an observable of results for the given queries that will emit new results for any changes\n * in matching of the given queries.\n * @param value One or more media queries to check.\n * @returns A stream of matches for the given queries.\n */\n observe(value: string | readonly string[]): Observable<BreakpointState> {\n const queries = splitQueries(coerceArray(value));\n const observables = queries.map(query => this._registerQuery(query).observable);\n\n let stateObservable = combineLatest(observables);\n // Emit the first state immediately, and then debounce the subsequent emissions.\n stateObservable = concat(\n stateObservable.pipe(take(1)),\n stateObservable.pipe(skip(1), debounceTime(0)),\n );\n return stateObservable.pipe(\n map(breakpointStates => {\n const response: BreakpointState = {\n matches: false,\n breakpoints: {},\n };\n breakpointStates.forEach(({matches, query}) => {\n response.matches = response.matches || matches;\n response.breakpoints[query] = matches;\n });\n return response;\n }),\n );\n }\n\n /** Registers a specific query to be listened for. */\n private _registerQuery(query: string): Query {\n // Only set up a new MediaQueryList if it is not already being listened for.\n if (this._queries.has(query)) {\n return this._queries.get(query)!;\n }\n\n const mql = this._mediaMatcher.matchMedia(query);\n\n // Create callback for match changes and add it is as a listener.\n const queryObservable = new Observable((observer: Observer<MediaQueryListEvent>) => {\n // Listener callback methods are wrapped to be placed back in ngZone. Callbacks must be placed\n // back into the zone because matchMedia is only included in Zone.js by loading the\n // webapis-media-query.js file alongside the zone.js file. Additionally, some browsers do not\n // have MediaQueryList inherit from EventTarget, which causes inconsistencies in how Zone.js\n // patches it.\n const handler = (e: MediaQueryListEvent): void => this._zone.run(() => observer.next(e));\n mql.addListener(handler);\n\n return () => {\n mql.removeListener(handler);\n };\n }).pipe(\n startWith(mql),\n map(({matches}) => ({query, matches})),\n takeUntil(this._destroySubject),\n );\n\n // Add the MediaQueryList to the set of queries.\n const output = {observable: queryObservable, mql};\n this._queries.set(query, output);\n return output;\n }\n}\n\n/**\n * Split each query string into separate query strings if two queries are provided as comma\n * separated.\n */\nfunction splitQueries(queries: readonly string[]): readonly string[] {\n return queries\n .map(query => query.split(','))\n .reduce((a1, a2) => a1.concat(a2))\n .map(query => query.trim());\n}\n"],"names":["mediaQueriesForWebkitCompatibility","Set","mediaQueryStyleNode","MediaMatcher","_platform","inject","Platform","_nonce","CSP_NONCE","optional","_matchMedia","constructor","isBrowser","window","matchMedia","bind","noopMatchMedia","query","WEBKIT","BLINK","createEmptyStyleRule","deps","target","i0","ɵɵFactoryTarget","Injectable","ɵprov","ɵɵngDeclareInjectable","minVersion","version","ngImport","type","decorators","providedIn","nonce","has","document","createElement","setAttribute","head","appendChild","sheet","insertRule","add","e","console","error","matches","media","addListener","removeListener","BreakpointObserver","_mediaMatcher","_zone","NgZone","_queries","Map","_destroySubject","Subject","ngOnDestroy","next","complete","isMatched","value","queries","splitQueries","coerceArray","some","mediaQuery","_registerQuery","mql","observe","observables","map","observable","stateObservable","combineLatest","concat","pipe","take","skip","debounceTime","breakpointStates","response","breakpoints","forEach","get","queryObservable","Observable","observer","handler","run","startWith","takeUntil","output","set","split","reduce","a1","a2","trim"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"_css-pixel-value-chunk.mjs","sources":["../../../../../darwin_arm64-fastbuild-ST-
|
|
1
|
+
{"version":3,"file":"_css-pixel-value-chunk.mjs","sources":["../../../../../darwin_arm64-fastbuild-ST-fdfa778d11ba/bin/src/cdk/coercion/css-pixel-value.ts"],"sourcesContent":["/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.dev/license\n */\n\n/** Coerces a value to a CSS pixel value. */\nexport function coerceCssPixelValue(value: any): string {\n if (value == null) {\n return '';\n }\n\n return typeof value === 'string' ? value : `${value}px`;\n}\n"],"names":["coerceCssPixelValue","value"],"mappings":"AASM,SAAUA,mBAAmBA,CAACC,KAAU,EAAA;EAC5C,IAAIA,KAAK,IAAI,IAAI,EAAE;AACjB,IAAA,OAAO,EAAE;AACX;EAEA,OAAO,OAAOA,KAAK,KAAK,QAAQ,GAAGA,KAAK,GAAG,CAAGA,EAAAA,KAAK,CAAI,EAAA,CAAA;AACzD;;;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"_data-source-chunk.mjs","sources":["../../../../../darwin_arm64-fastbuild-ST-
|
|
1
|
+
{"version":3,"file":"_data-source-chunk.mjs","sources":["../../../../../darwin_arm64-fastbuild-ST-fdfa778d11ba/bin/src/cdk/collections/data-source.ts"],"sourcesContent":["/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.dev/license\n */\n\nimport {ConnectableObservable, Observable} from 'rxjs';\nimport {CollectionViewer} from './collection-viewer';\n\nexport abstract class DataSource<T> {\n /**\n * Connects a collection viewer (such as a data-table) to this data source. Note that\n * the stream provided will be accessed during change detection and should not directly change\n * values that are bound in template views.\n * @param collectionViewer The component that exposes a view over the data provided by this\n * data source.\n * @returns Observable that emits a new value when the data changes.\n */\n abstract connect(collectionViewer: CollectionViewer): Observable<readonly T[]>;\n\n /**\n * Disconnects a collection viewer (such as a data-table) from this data source. Can be used\n * to perform any clean-up or tear-down operations when a view is being destroyed.\n *\n * @param collectionViewer The component that exposes a view over the data provided by this\n * data source.\n */\n abstract disconnect(collectionViewer: CollectionViewer): void;\n}\n\n/** Checks whether an object is a data source. */\nexport function isDataSource(value: any): value is DataSource<any> {\n // Check if the value is a DataSource by observing if it has a connect function. Cannot\n // be checked as an `instanceof DataSource` since people could create their own sources\n // that match the interface, but don't extend DataSource. We also can't use `isObservable`\n // here, because of some internal apps.\n return value && typeof value.connect === 'function' && !(value instanceof ConnectableObservable);\n}\n"],"names":["DataSource","isDataSource","value","connect","ConnectableObservable"],"mappings":";;MAWsBA,UAAU,CAAA;AAsB1B,SAAUC,YAAYA,CAACC,KAAU,EAAA;AAKrC,EAAA,OAAOA,KAAK,IAAI,OAAOA,KAAK,CAACC,OAAO,KAAK,UAAU,IAAI,EAAED,KAAK,YAAYE,qBAAqB,CAAC;AAClG;;;;"}
|
|
@@ -37,7 +37,7 @@ class Directionality {
|
|
|
37
37
|
}
|
|
38
38
|
static ɵfac = i0.ɵɵngDeclareFactory({
|
|
39
39
|
minVersion: "12.0.0",
|
|
40
|
-
version: "21.0.
|
|
40
|
+
version: "21.0.3",
|
|
41
41
|
ngImport: i0,
|
|
42
42
|
type: Directionality,
|
|
43
43
|
deps: [],
|
|
@@ -45,7 +45,7 @@ class Directionality {
|
|
|
45
45
|
});
|
|
46
46
|
static ɵprov = i0.ɵɵngDeclareInjectable({
|
|
47
47
|
minVersion: "12.0.0",
|
|
48
|
-
version: "21.0.
|
|
48
|
+
version: "21.0.3",
|
|
49
49
|
ngImport: i0,
|
|
50
50
|
type: Directionality,
|
|
51
51
|
providedIn: 'root'
|
|
@@ -53,7 +53,7 @@ class Directionality {
|
|
|
53
53
|
}
|
|
54
54
|
i0.ɵɵngDeclareClassMetadata({
|
|
55
55
|
minVersion: "12.0.0",
|
|
56
|
-
version: "21.0.
|
|
56
|
+
version: "21.0.3",
|
|
57
57
|
ngImport: i0,
|
|
58
58
|
type: Directionality,
|
|
59
59
|
decorators: [{
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"_directionality-chunk.mjs","sources":["../../../../../darwin_arm64-fastbuild-ST-
|
|
1
|
+
{"version":3,"file":"_directionality-chunk.mjs","sources":["../../../../../darwin_arm64-fastbuild-ST-fdfa778d11ba/bin/src/cdk/bidi/dir-document-token.ts","../../../../../darwin_arm64-fastbuild-ST-fdfa778d11ba/bin/src/cdk/bidi/directionality.ts"],"sourcesContent":["/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.dev/license\n */\n\nimport {inject, InjectionToken, DOCUMENT} from '@angular/core';\n\n/**\n * Injection token used to inject the document into Directionality.\n * This is used so that the value can be faked in tests.\n *\n * We can't use the real document in tests because changing the real `dir` causes geometry-based\n * tests in Safari to fail.\n *\n * We also can't re-provide the DOCUMENT token from platform-browser because the unit tests\n * themselves use things like `querySelector` in test code.\n *\n * This token is defined in a separate file from Directionality as a workaround for\n * https://github.com/angular/angular/issues/22559\n *\n * @docs-private\n */\nexport const DIR_DOCUMENT = new InjectionToken<Document>('cdk-dir-doc', {\n providedIn: 'root',\n factory: () => inject(DOCUMENT),\n});\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.dev/license\n */\n\nimport {EventEmitter, Injectable, OnDestroy, inject, signal} from '@angular/core';\nimport {DIR_DOCUMENT} from './dir-document-token';\n\nexport type Direction = 'ltr' | 'rtl';\n\n/** Regex that matches locales with an RTL script. Taken from `goog.i18n.bidi.isRtlLanguage`. */\nconst RTL_LOCALE_PATTERN =\n /^(ar|ckb|dv|he|iw|fa|nqo|ps|sd|ug|ur|yi|.*[-_](Adlm|Arab|Hebr|Nkoo|Rohg|Thaa))(?!.*[-_](Latn|Cyrl)($|-|_))($|-|_)/i;\n\n/** Resolves a string value to a specific direction. */\nexport function _resolveDirectionality(rawValue: string): Direction {\n const value = rawValue?.toLowerCase() || '';\n\n if (value === 'auto' && typeof navigator !== 'undefined' && navigator?.language) {\n return RTL_LOCALE_PATTERN.test(navigator.language) ? 'rtl' : 'ltr';\n }\n\n return value === 'rtl' ? 'rtl' : 'ltr';\n}\n\n/**\n * The directionality (LTR / RTL) context for the application (or a subtree of it).\n * Exposes the current direction and a stream of direction changes.\n */\n@Injectable({providedIn: 'root'})\nexport class Directionality implements OnDestroy {\n /** The current 'ltr' or 'rtl' value. */\n get value() {\n return this.valueSignal();\n }\n\n /**\n * The current 'ltr' or 'rtl' value.\n */\n readonly valueSignal = signal<Direction>('ltr');\n\n /** Stream that emits whenever the 'ltr' / 'rtl' state changes. */\n readonly change = new EventEmitter<Direction>();\n\n constructor(...args: unknown[]);\n\n constructor() {\n const _document = inject(DIR_DOCUMENT, {optional: true});\n\n if (_document) {\n const bodyDir = _document.body ? _document.body.dir : null;\n const htmlDir = _document.documentElement ? _document.documentElement.dir : null;\n this.valueSignal.set(_resolveDirectionality(bodyDir || htmlDir || 'ltr'));\n }\n }\n\n ngOnDestroy() {\n this.change.complete();\n }\n}\n"],"names":["DIR_DOCUMENT","InjectionToken","providedIn","factory","inject","DOCUMENT","RTL_LOCALE_PATTERN","_resolveDirectionality","rawValue","value","toLowerCase","navigator","language","test","Directionality","valueSignal","signal","change","EventEmitter","constructor","_document","optional","bodyDir","body","dir","htmlDir","documentElement","set","ngOnDestroy","complete","deps","target","i0","ɵɵFactoryTarget","Injectable","ɵprov","ɵɵngDeclareInjectable","minVersion","version","ngImport","type","decorators"],"mappings":";;;MAyBaA,YAAY,GAAG,IAAIC,cAAc,CAAW,aAAa,EAAE;AACtEC,EAAAA,UAAU,EAAE,MAAM;AAClBC,EAAAA,OAAO,EAAEA,MAAMC,MAAM,CAACC,QAAQ;AAC/B,CAAA;;ACdD,MAAMC,kBAAkB,GACtB,oHAAoH;AAGhH,SAAUC,sBAAsBA,CAACC,QAAgB,EAAA;EACrD,MAAMC,KAAK,GAAGD,QAAQ,EAAEE,WAAW,EAAE,IAAI,EAAE;AAE3C,EAAA,IAAID,KAAK,KAAK,MAAM,IAAI,OAAOE,SAAS,KAAK,WAAW,IAAIA,SAAS,EAAEC,QAAQ,EAAE;IAC/E,OAAON,kBAAkB,CAACO,IAAI,CAACF,SAAS,CAACC,QAAQ,CAAC,GAAG,KAAK,GAAG,KAAK;AACpE;AAEA,EAAA,OAAOH,KAAK,KAAK,KAAK,GAAG,KAAK,GAAG,KAAK;AACxC;MAOaK,cAAc,CAAA;EAEzB,IAAIL,KAAKA,GAAA;AACP,IAAA,OAAO,IAAI,CAACM,WAAW,EAAE;AAC3B;EAKSA,WAAW,GAAGC,MAAM,CAAY,KAAK;;WAAC;AAGtCC,EAAAA,MAAM,GAAG,IAAIC,YAAY,EAAa;AAI/CC,EAAAA,WAAAA,GAAA;AACE,IAAA,MAAMC,SAAS,GAAGhB,MAAM,CAACJ,YAAY,EAAE;AAACqB,MAAAA,QAAQ,EAAE;AAAK,KAAA,CAAC;AAExD,IAAA,IAAID,SAAS,EAAE;AACb,MAAA,MAAME,OAAO,GAAGF,SAAS,CAACG,IAAI,GAAGH,SAAS,CAACG,IAAI,CAACC,GAAG,GAAG,IAAI;AAC1D,MAAA,MAAMC,OAAO,GAAGL,SAAS,CAACM,eAAe,GAAGN,SAAS,CAACM,eAAe,CAACF,GAAG,GAAG,IAAI;AAChF,MAAA,IAAI,CAACT,WAAW,CAACY,GAAG,CAACpB,sBAAsB,CAACe,OAAO,IAAIG,OAAO,IAAI,KAAK,CAAC,CAAC;AAC3E;AACF;AAEAG,EAAAA,WAAWA,GAAA;AACT,IAAA,IAAI,CAACX,MAAM,CAACY,QAAQ,EAAE;AACxB;;;;;UA5BWf,cAAc;AAAAgB,IAAAA,IAAA,EAAA,EAAA;AAAAC,IAAAA,MAAA,EAAAC,EAAA,CAAAC,eAAA,CAAAC;AAAA,GAAA,CAAA;AAAd,EAAA,OAAAC,KAAA,GAAAH,EAAA,CAAAI,qBAAA,CAAA;AAAAC,IAAAA,UAAA,EAAA,QAAA;AAAAC,IAAAA,OAAA,EAAA,QAAA;AAAAC,IAAAA,QAAA,EAAAP,EAAA;AAAAQ,IAAAA,IAAA,EAAA1B,cAAc;gBADF;AAAM,GAAA,CAAA;;;;;;QAClBA,cAAc;AAAA2B,EAAAA,UAAA,EAAA,CAAA;UAD1BP,UAAU;WAAC;AAAChC,MAAAA,UAAU,EAAE;KAAO;;;;;;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"_dispose-view-repeater-strategy-chunk.mjs","sources":["../../../../../darwin_arm64-fastbuild-ST-
|
|
1
|
+
{"version":3,"file":"_dispose-view-repeater-strategy-chunk.mjs","sources":["../../../../../darwin_arm64-fastbuild-ST-fdfa778d11ba/bin/src/cdk/collections/dispose-view-repeater-strategy.ts"],"sourcesContent":["/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.dev/license\n */\n\nimport {\n EmbeddedViewRef,\n IterableChangeRecord,\n IterableChanges,\n ViewContainerRef,\n} from '@angular/core';\nimport {\n _ViewRepeater,\n _ViewRepeaterItemChanged,\n _ViewRepeaterItemContext,\n _ViewRepeaterItemContextFactory,\n _ViewRepeaterItemValueResolver,\n _ViewRepeaterOperation,\n} from './view-repeater';\n\n/**\n * A repeater that destroys views when they are removed from a\n * `ViewContainerRef`. When new items are inserted into the container,\n * the repeater will always construct a new embedded view for each item.\n *\n * @template T The type for the embedded view's $implicit property.\n * @template R The type for the item in each IterableDiffer change record.\n * @template C The type for the context passed to each embedded view.\n */\nexport class _DisposeViewRepeaterStrategy<\n T,\n R,\n C extends _ViewRepeaterItemContext<T>,\n> implements _ViewRepeater<T, R, C> {\n applyChanges(\n changes: IterableChanges<R>,\n viewContainerRef: ViewContainerRef,\n itemContextFactory: _ViewRepeaterItemContextFactory<T, R, C>,\n itemValueResolver: _ViewRepeaterItemValueResolver<T, R>,\n itemViewChanged?: _ViewRepeaterItemChanged<R, C>,\n ) {\n changes.forEachOperation(\n (\n record: IterableChangeRecord<R>,\n adjustedPreviousIndex: number | null,\n currentIndex: number | null,\n ) => {\n let view: EmbeddedViewRef<C> | undefined;\n let operation: _ViewRepeaterOperation;\n if (record.previousIndex == null) {\n const insertContext = itemContextFactory(record, adjustedPreviousIndex, currentIndex);\n view = viewContainerRef.createEmbeddedView(\n insertContext.templateRef,\n insertContext.context,\n insertContext.index,\n );\n operation = _ViewRepeaterOperation.INSERTED;\n } else if (currentIndex == null) {\n viewContainerRef.remove(adjustedPreviousIndex!);\n operation = _ViewRepeaterOperation.REMOVED;\n } else {\n view = viewContainerRef.get(adjustedPreviousIndex!) as EmbeddedViewRef<C>;\n viewContainerRef.move(view!, currentIndex);\n operation = _ViewRepeaterOperation.MOVED;\n }\n\n if (itemViewChanged) {\n itemViewChanged({\n context: view?.context,\n operation,\n record,\n });\n }\n },\n );\n }\n\n detach() {}\n}\n"],"names":["_DisposeViewRepeaterStrategy","applyChanges","changes","viewContainerRef","itemContextFactory","itemValueResolver","itemViewChanged","forEachOperation","record","adjustedPreviousIndex","currentIndex","view","operation","previousIndex","insertContext","createEmbeddedView","templateRef","context","index","_ViewRepeaterOperation","INSERTED","remove","REMOVED","get","move","MOVED","detach"],"mappings":";;MAgCaA,4BAA4B,CAAA;EAKvCC,YAAYA,CACVC,OAA2B,EAC3BC,gBAAkC,EAClCC,kBAA4D,EAC5DC,iBAAuD,EACvDC,eAAgD,EAAA;IAEhDJ,OAAO,CAACK,gBAAgB,CACtB,CACEC,MAA+B,EAC/BC,qBAAoC,EACpCC,YAA2B,KACzB;AACF,MAAA,IAAIC,IAAoC;AACxC,MAAA,IAAIC,SAAiC;AACrC,MAAA,IAAIJ,MAAM,CAACK,aAAa,IAAI,IAAI,EAAE;QAChC,MAAMC,aAAa,GAAGV,kBAAkB,CAACI,MAAM,EAAEC,qBAAqB,EAAEC,YAAY,CAAC;AACrFC,QAAAA,IAAI,GAAGR,gBAAgB,CAACY,kBAAkB,CACxCD,aAAa,CAACE,WAAW,EACzBF,aAAa,CAACG,OAAO,EACrBH,aAAa,CAACI,KAAK,CACpB;QACDN,SAAS,GAAGO,sBAAsB,CAACC,QAAQ;AAC7C,OAAA,MAAO,IAAIV,YAAY,IAAI,IAAI,EAAE;AAC/BP,QAAAA,gBAAgB,CAACkB,MAAM,CAACZ,qBAAsB,CAAC;QAC/CG,SAAS,GAAGO,sBAAsB,CAACG,OAAO;AAC5C,OAAA,MAAO;AACLX,QAAAA,IAAI,GAAGR,gBAAgB,CAACoB,GAAG,CAACd,qBAAsB,CAAuB;AACzEN,QAAAA,gBAAgB,CAACqB,IAAI,CAACb,IAAK,EAAED,YAAY,CAAC;QAC1CE,SAAS,GAAGO,sBAAsB,CAACM,KAAK;AAC1C;AAEA,MAAA,IAAInB,eAAe,EAAE;AACnBA,QAAAA,eAAe,CAAC;UACdW,OAAO,EAAEN,IAAI,EAAEM,OAAO;UACtBL,SAAS;AACTJ,UAAAA;AACD,SAAA,CAAC;AACJ;AACF,KAAC,CACF;AACH;EAEAkB,MAAMA;AACP;;;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"_element-chunk.mjs","sources":["../../../../../darwin_arm64-fastbuild-ST-
|
|
1
|
+
{"version":3,"file":"_element-chunk.mjs","sources":["../../../../../darwin_arm64-fastbuild-ST-fdfa778d11ba/bin/src/cdk/coercion/number-property.ts","../../../../../darwin_arm64-fastbuild-ST-fdfa778d11ba/bin/src/cdk/coercion/element.ts"],"sourcesContent":["/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.dev/license\n */\n\n/**\n * Type describing the allowed values for a number input\n * @docs-private\n */\nexport type NumberInput = string | number | null | undefined;\n\n/** Coerces a data-bound value (typically a string) to a number. */\nexport function coerceNumberProperty(value: any): number;\nexport function coerceNumberProperty<D>(value: any, fallback: D): number | D;\nexport function coerceNumberProperty(value: any, fallbackValue = 0) {\n if (_isNumberValue(value)) {\n return Number(value);\n }\n return arguments.length === 2 ? fallbackValue : 0;\n}\n\n/**\n * Whether the provided value is considered a number.\n * @docs-private\n */\nexport function _isNumberValue(value: any): boolean {\n // parseFloat(value) handles most of the cases we're interested in (it treats null, empty string,\n // and other non-number values as NaN, where Number just uses 0) but it considers the string\n // '123hello' to be a valid number. Therefore we also check if Number(value) is NaN.\n return !isNaN(parseFloat(value as any)) && !isNaN(Number(value));\n}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.dev/license\n */\n\nimport {ElementRef} from '@angular/core';\n\n/**\n * Coerces an ElementRef or an Element into an element.\n * Useful for APIs that can accept either a ref or the native element itself.\n */\nexport function coerceElement<T>(elementOrRef: ElementRef<T> | T): T {\n return elementOrRef instanceof ElementRef ? elementOrRef.nativeElement : elementOrRef;\n}\n"],"names":["coerceNumberProperty","value","fallbackValue","_isNumberValue","Number","arguments","length","isNaN","parseFloat","coerceElement","elementOrRef","ElementRef","nativeElement"],"mappings":";;SAiBgBA,oBAAoBA,CAACC,KAAU,EAAEC,aAAa,GAAG,CAAC,EAAA;AAChE,EAAA,IAAIC,cAAc,CAACF,KAAK,CAAC,EAAE;IACzB,OAAOG,MAAM,CAACH,KAAK,CAAC;AACtB;EACA,OAAOI,SAAS,CAACC,MAAM,KAAK,CAAC,GAAGJ,aAAa,GAAG,CAAC;AACnD;AAMM,SAAUC,cAAcA,CAACF,KAAU,EAAA;AAIvC,EAAA,OAAO,CAACM,KAAK,CAACC,UAAU,CAACP,KAAY,CAAC,CAAC,IAAI,CAACM,KAAK,CAACH,MAAM,CAACH,KAAK,CAAC,CAAC;AAClE;;ACnBM,SAAUQ,aAAaA,CAAIC,YAA+B,EAAA;EAC9D,OAAOA,YAAY,YAAYC,UAAU,GAAGD,YAAY,CAACE,aAAa,GAAGF,YAAY;AACvF;;;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"_fake-event-detection-chunk.mjs","sources":["../../../../../darwin_arm64-fastbuild-ST-
|
|
1
|
+
{"version":3,"file":"_fake-event-detection-chunk.mjs","sources":["../../../../../darwin_arm64-fastbuild-ST-fdfa778d11ba/bin/src/cdk/a11y/fake-event-detection.ts"],"sourcesContent":["/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.dev/license\n */\n\n/** Gets whether an event could be a faked `mousedown` event dispatched by a screen reader. */\nexport function isFakeMousedownFromScreenReader(event: MouseEvent): boolean {\n // Some screen readers will dispatch a fake `mousedown` event when pressing enter or space on\n // a clickable element. We can distinguish these events when `event.buttons` is zero, or\n // `event.detail` is zero depending on the browser:\n // - `event.buttons` works on Firefox, but fails on Chrome.\n // - `detail` works on Chrome, but fails on Firefox.\n return event.buttons === 0 || event.detail === 0;\n}\n\n/** Gets whether an event could be a faked `touchstart` event dispatched by a screen reader. */\nexport function isFakeTouchstartFromScreenReader(event: TouchEvent): boolean {\n const touch: Touch | undefined =\n (event.touches && event.touches[0]) || (event.changedTouches && event.changedTouches[0]);\n\n // A fake `touchstart` can be distinguished from a real one by looking at the `identifier`\n // which is typically >= 0 on a real device versus -1 from a screen reader. Just to be safe,\n // we can also look at `radiusX` and `radiusY`. This behavior was observed against a Windows 10\n // device with a touch screen running NVDA v2020.4 and Firefox 85 or Chrome 88.\n return (\n !!touch &&\n touch.identifier === -1 &&\n (touch.radiusX == null || touch.radiusX === 1) &&\n (touch.radiusY == null || touch.radiusY === 1)\n );\n}\n"],"names":["isFakeMousedownFromScreenReader","event","buttons","detail","isFakeTouchstartFromScreenReader","touch","touches","changedTouches","identifier","radiusX","radiusY"],"mappings":"AASM,SAAUA,+BAA+BA,CAACC,KAAiB,EAAA;EAM/D,OAAOA,KAAK,CAACC,OAAO,KAAK,CAAC,IAAID,KAAK,CAACE,MAAM,KAAK,CAAC;AAClD;AAGM,SAAUC,gCAAgCA,CAACH,KAAiB,EAAA;EAChE,MAAMI,KAAK,GACRJ,KAAK,CAACK,OAAO,IAAIL,KAAK,CAACK,OAAO,CAAC,CAAC,CAAC,IAAML,KAAK,CAACM,cAAc,IAAIN,KAAK,CAACM,cAAc,CAAC,CAAC,CAAE;AAM1F,EAAA,OACE,CAAC,CAACF,KAAK,IACPA,KAAK,CAACG,UAAU,KAAK,CAAC,CAAC,KACtBH,KAAK,CAACI,OAAO,IAAI,IAAI,IAAIJ,KAAK,CAACI,OAAO,KAAK,CAAC,CAAC,KAC7CJ,KAAK,CAACK,OAAO,IAAI,IAAI,IAAIL,KAAK,CAACK,OAAO,KAAK,CAAC,CAAC;AAElD;;;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"_focus-key-manager-chunk.mjs","sources":["../../../../../darwin_arm64-fastbuild-ST-
|
|
1
|
+
{"version":3,"file":"_focus-key-manager-chunk.mjs","sources":["../../../../../darwin_arm64-fastbuild-ST-fdfa778d11ba/bin/src/cdk/a11y/key-manager/focus-key-manager.ts"],"sourcesContent":["/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.dev/license\n */\n\nimport {ListKeyManager, ListKeyManagerOption} from './list-key-manager';\nimport {FocusOrigin} from '../focus-monitor/focus-monitor';\n\n/**\n * This is the interface for focusable items (used by the FocusKeyManager).\n * Each item must know how to focus itself, whether or not it is currently disabled\n * and be able to supply its label.\n */\nexport interface FocusableOption extends ListKeyManagerOption {\n /** Focuses the `FocusableOption`. */\n focus(origin?: FocusOrigin): void;\n}\n\nexport class FocusKeyManager<T> extends ListKeyManager<FocusableOption & T> {\n private _origin: FocusOrigin = 'program';\n\n /**\n * Sets the focus origin that will be passed in to the items for any subsequent `focus` calls.\n * @param origin Focus origin to be used when focusing items.\n */\n setFocusOrigin(origin: FocusOrigin): this {\n this._origin = origin;\n return this;\n }\n\n /**\n * Sets the active item to the item at the specified\n * index and focuses the newly active item.\n * @param index Index of the item to be set as active.\n */\n override setActiveItem(index: number): void;\n\n /**\n * Sets the active item to the item that is specified and focuses it.\n * @param item Item to be set as active.\n */\n override setActiveItem(item: T): void;\n\n /**\n * Sets the active item to the item that is specified and focuses it.\n * @param item Item to be set as active.\n */\n override setActiveItem(item: T | number): void;\n\n override setActiveItem(item: any): void {\n super.setActiveItem(item);\n\n if (this.activeItem) {\n this.activeItem.focus(this._origin);\n }\n }\n}\n"],"names":["FocusKeyManager","ListKeyManager","_origin","setFocusOrigin","origin","setActiveItem","item","activeItem","focus"],"mappings":";;AAqBM,MAAOA,eAAmB,SAAQC,cAAmC,CAAA;AACjEC,EAAAA,OAAO,GAAgB,SAAS;EAMxCC,cAAcA,CAACC,MAAmB,EAAA;IAChC,IAAI,CAACF,OAAO,GAAGE,MAAM;AACrB,IAAA,OAAO,IAAI;AACb;EAqBSC,aAAaA,CAACC,IAAS,EAAA;AAC9B,IAAA,KAAK,CAACD,aAAa,CAACC,IAAI,CAAC;IAEzB,IAAI,IAAI,CAACC,UAAU,EAAE;MACnB,IAAI,CAACA,UAAU,CAACC,KAAK,CAAC,IAAI,CAACN,OAAO,CAAC;AACrC;AACF;AACD;;;;"}
|
|
@@ -78,7 +78,7 @@ class InputModalityDetector {
|
|
|
78
78
|
}
|
|
79
79
|
static ɵfac = i0.ɵɵngDeclareFactory({
|
|
80
80
|
minVersion: "12.0.0",
|
|
81
|
-
version: "21.0.
|
|
81
|
+
version: "21.0.3",
|
|
82
82
|
ngImport: i0,
|
|
83
83
|
type: InputModalityDetector,
|
|
84
84
|
deps: [],
|
|
@@ -86,7 +86,7 @@ class InputModalityDetector {
|
|
|
86
86
|
});
|
|
87
87
|
static ɵprov = i0.ɵɵngDeclareInjectable({
|
|
88
88
|
minVersion: "12.0.0",
|
|
89
|
-
version: "21.0.
|
|
89
|
+
version: "21.0.3",
|
|
90
90
|
ngImport: i0,
|
|
91
91
|
type: InputModalityDetector,
|
|
92
92
|
providedIn: 'root'
|
|
@@ -94,7 +94,7 @@ class InputModalityDetector {
|
|
|
94
94
|
}
|
|
95
95
|
i0.ɵɵngDeclareClassMetadata({
|
|
96
96
|
minVersion: "12.0.0",
|
|
97
|
-
version: "21.0.
|
|
97
|
+
version: "21.0.3",
|
|
98
98
|
ngImport: i0,
|
|
99
99
|
type: InputModalityDetector,
|
|
100
100
|
decorators: [{
|
|
@@ -337,7 +337,7 @@ class FocusMonitor {
|
|
|
337
337
|
}
|
|
338
338
|
static ɵfac = i0.ɵɵngDeclareFactory({
|
|
339
339
|
minVersion: "12.0.0",
|
|
340
|
-
version: "21.0.
|
|
340
|
+
version: "21.0.3",
|
|
341
341
|
ngImport: i0,
|
|
342
342
|
type: FocusMonitor,
|
|
343
343
|
deps: [],
|
|
@@ -345,7 +345,7 @@ class FocusMonitor {
|
|
|
345
345
|
});
|
|
346
346
|
static ɵprov = i0.ɵɵngDeclareInjectable({
|
|
347
347
|
minVersion: "12.0.0",
|
|
348
|
-
version: "21.0.
|
|
348
|
+
version: "21.0.3",
|
|
349
349
|
ngImport: i0,
|
|
350
350
|
type: FocusMonitor,
|
|
351
351
|
providedIn: 'root'
|
|
@@ -353,7 +353,7 @@ class FocusMonitor {
|
|
|
353
353
|
}
|
|
354
354
|
i0.ɵɵngDeclareClassMetadata({
|
|
355
355
|
minVersion: "12.0.0",
|
|
356
|
-
version: "21.0.
|
|
356
|
+
version: "21.0.3",
|
|
357
357
|
ngImport: i0,
|
|
358
358
|
type: FocusMonitor,
|
|
359
359
|
decorators: [{
|
|
@@ -389,7 +389,7 @@ class CdkMonitorFocus {
|
|
|
389
389
|
}
|
|
390
390
|
static ɵfac = i0.ɵɵngDeclareFactory({
|
|
391
391
|
minVersion: "12.0.0",
|
|
392
|
-
version: "21.0.
|
|
392
|
+
version: "21.0.3",
|
|
393
393
|
ngImport: i0,
|
|
394
394
|
type: CdkMonitorFocus,
|
|
395
395
|
deps: [],
|
|
@@ -397,7 +397,7 @@ class CdkMonitorFocus {
|
|
|
397
397
|
});
|
|
398
398
|
static ɵdir = i0.ɵɵngDeclareDirective({
|
|
399
399
|
minVersion: "14.0.0",
|
|
400
|
-
version: "21.0.
|
|
400
|
+
version: "21.0.3",
|
|
401
401
|
type: CdkMonitorFocus,
|
|
402
402
|
isStandalone: true,
|
|
403
403
|
selector: "[cdkMonitorElementFocus], [cdkMonitorSubtreeFocus]",
|
|
@@ -410,7 +410,7 @@ class CdkMonitorFocus {
|
|
|
410
410
|
}
|
|
411
411
|
i0.ɵɵngDeclareClassMetadata({
|
|
412
412
|
minVersion: "12.0.0",
|
|
413
|
-
version: "21.0.
|
|
413
|
+
version: "21.0.3",
|
|
414
414
|
ngImport: i0,
|
|
415
415
|
type: CdkMonitorFocus,
|
|
416
416
|
decorators: [{
|