UNPKG

@angular/material

Version:
1 lines 17.2 kB
{"version":3,"file":"progress-spinner.mjs","sources":["../../../../../darwin_arm64-fastbuild-ST-fdfa778d11ba/bin/src/material/progress-spinner/progress-spinner.ts","../../../../../darwin_arm64-fastbuild-ST-fdfa778d11ba/bin/src/material/progress-spinner/progress-spinner.html","../../../../../darwin_arm64-fastbuild-ST-fdfa778d11ba/bin/src/material/progress-spinner/progress-spinner-module.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 ChangeDetectionStrategy,\n Component,\n ElementRef,\n InjectionToken,\n Input,\n ViewChild,\n ViewEncapsulation,\n numberAttribute,\n inject,\n} from '@angular/core';\nimport {_getAnimationsState, ThemePalette} from '../core';\nimport {NgTemplateOutlet} from '@angular/common';\n\n/** Possible mode for a progress spinner. */\nexport type ProgressSpinnerMode = 'determinate' | 'indeterminate';\n\n/** Default `mat-progress-spinner` options that can be overridden. */\nexport interface MatProgressSpinnerDefaultOptions {\n /**\n * Default theme color of the progress spinner. This API is supported in M2 themes only, it\n * has no effect in M3 themes. For color customization in M3, see https://material.angular.dev/components/progress-spinner/styling.\n *\n * For information on applying color variants in M3, see\n * https://material.angular.dev/guide/material-2-theming#optional-add-backwards-compatibility-styles-for-color-variants\n */\n color?: ThemePalette;\n /** Diameter of the spinner. */\n diameter?: number;\n /** Width of the spinner's stroke. */\n strokeWidth?: number;\n /**\n * Whether the animations should be force to be enabled, ignoring if the current environment\n * disables them.\n */\n _forceAnimations?: boolean;\n}\n\n/** Injection token to be used to override the default options for `mat-progress-spinner`. */\nexport const MAT_PROGRESS_SPINNER_DEFAULT_OPTIONS =\n new InjectionToken<MatProgressSpinnerDefaultOptions>('mat-progress-spinner-default-options', {\n providedIn: 'root',\n factory: () => ({diameter: BASE_SIZE}),\n });\n\n/**\n * Base reference size of the spinner.\n */\nconst BASE_SIZE = 100;\n\n/**\n * Base reference stroke width of the spinner.\n */\nconst BASE_STROKE_WIDTH = 10;\n\n@Component({\n selector: 'mat-progress-spinner, mat-spinner',\n exportAs: 'matProgressSpinner',\n host: {\n 'role': 'progressbar',\n 'class': 'mat-mdc-progress-spinner mdc-circular-progress',\n // set tab index to -1 so screen readers will read the aria-label\n // Note: there is a known issue with JAWS that does not read progressbar aria labels on FireFox\n 'tabindex': '-1',\n '[class]': '\"mat-\" + color',\n '[class._mat-animation-noopable]': `_noopAnimations`,\n '[class.mdc-circular-progress--indeterminate]': 'mode === \"indeterminate\"',\n '[style.width.px]': 'diameter',\n '[style.height.px]': 'diameter',\n '[style.--mat-progress-spinner-size]': 'diameter + \"px\"',\n '[style.--mat-progress-spinner-active-indicator-width]': 'diameter + \"px\"',\n '[attr.aria-valuemin]': '0',\n '[attr.aria-valuemax]': '100',\n '[attr.aria-valuenow]': 'mode === \"determinate\" ? value : null',\n '[attr.mode]': 'mode',\n },\n templateUrl: 'progress-spinner.html',\n styleUrl: 'progress-spinner.css',\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n imports: [NgTemplateOutlet],\n})\nexport class MatProgressSpinner {\n readonly _elementRef = inject<ElementRef<HTMLElement>>(ElementRef);\n\n /** Whether the _mat-animation-noopable class should be applied, disabling animations. */\n _noopAnimations: boolean;\n\n // TODO: should be typed as `ThemePalette` but internal apps pass in arbitrary strings.\n /**\n * Theme color of the progress spinner. This API is supported in M2 themes only, it\n * has no effect in M3 themes. For color customization in M3, see https://material.angular.dev/components/progress-spinner/styling.\n *\n * For information on applying color variants in M3, see\n * https://material.angular.dev/guide/material-2-theming#optional-add-backwards-compatibility-styles-for-color-variants\n */\n @Input()\n get color() {\n return this._color || this._defaultColor;\n }\n set color(value: string | null | undefined) {\n this._color = value;\n }\n private _color: string | null | undefined;\n private _defaultColor: ThemePalette = 'primary';\n\n /** The element of the determinate spinner. */\n @ViewChild('determinateSpinner') _determinateCircle: ElementRef<HTMLElement>;\n\n constructor(...args: unknown[]);\n\n constructor() {\n const defaults = inject<MatProgressSpinnerDefaultOptions>(MAT_PROGRESS_SPINNER_DEFAULT_OPTIONS);\n const animationsState = _getAnimationsState();\n const element = this._elementRef.nativeElement;\n\n this._noopAnimations =\n animationsState === 'di-disabled' && !!defaults && !defaults._forceAnimations;\n this.mode = element.nodeName.toLowerCase() === 'mat-spinner' ? 'indeterminate' : 'determinate';\n\n if (!this._noopAnimations && animationsState === 'reduced-motion') {\n element.classList.add('mat-progress-spinner-reduced-motion');\n }\n\n if (defaults) {\n if (defaults.color) {\n this.color = this._defaultColor = defaults.color;\n }\n\n if (defaults.diameter) {\n this.diameter = defaults.diameter;\n }\n\n if (defaults.strokeWidth) {\n this.strokeWidth = defaults.strokeWidth;\n }\n }\n }\n\n /**\n * Mode of the progress bar.\n *\n * Input must be one of these values: determinate, indeterminate, buffer, query, defaults to\n * 'determinate'.\n * Mirrored to mode attribute.\n */\n @Input() mode: ProgressSpinnerMode;\n\n /** Value of the progress bar. Defaults to zero. Mirrored to aria-valuenow. */\n @Input({transform: numberAttribute})\n get value(): number {\n return this.mode === 'determinate' ? this._value : 0;\n }\n set value(v: number) {\n this._value = Math.max(0, Math.min(100, v || 0));\n }\n private _value = 0;\n\n /** The diameter of the progress spinner (will set width and height of svg). */\n @Input({transform: numberAttribute})\n get diameter(): number {\n return this._diameter;\n }\n set diameter(size: number) {\n this._diameter = size || 0;\n }\n private _diameter = BASE_SIZE;\n\n /** Stroke width of the progress spinner. */\n @Input({transform: numberAttribute})\n get strokeWidth(): number {\n return this._strokeWidth ?? this.diameter / 10;\n }\n set strokeWidth(value: number) {\n this._strokeWidth = value || 0;\n }\n private _strokeWidth: number;\n\n /** The radius of the spinner, adjusted for stroke width. */\n _circleRadius(): number {\n return (this.diameter - BASE_STROKE_WIDTH) / 2;\n }\n\n /** The view box of the spinner's svg element. */\n _viewBox() {\n const viewBox = this._circleRadius() * 2 + this.strokeWidth;\n return `0 0 ${viewBox} ${viewBox}`;\n }\n\n /** The stroke circumference of the svg circle. */\n _strokeCircumference(): number {\n return 2 * Math.PI * this._circleRadius();\n }\n\n /** The dash offset of the svg circle. */\n _strokeDashOffset() {\n if (this.mode === 'determinate') {\n return (this._strokeCircumference() * (100 - this._value)) / 100;\n }\n return null;\n }\n\n /** Stroke width of the circle in percent. */\n _circleStrokeWidth() {\n return (this.strokeWidth / this.diameter) * 100;\n }\n}\n\n/**\n * @deprecated Import Progress Spinner instead. Note that the\n * `mat-spinner` selector isn't deprecated.\n * @breaking-change 16.0.0\n */\n// tslint:disable-next-line:variable-name\nexport const MatSpinner = MatProgressSpinner;\n","<ng-template #circle>\n <svg [attr.viewBox]=\"_viewBox()\" class=\"mdc-circular-progress__indeterminate-circle-graphic\"\n xmlns=\"http://www.w3.org/2000/svg\" focusable=\"false\">\n <circle [attr.r]=\"_circleRadius()\"\n [style.stroke-dasharray.px]=\"_strokeCircumference()\"\n [style.stroke-dashoffset.px]=\"_strokeCircumference() / 2\"\n [style.stroke-width.%]=\"_circleStrokeWidth()\"\n cx=\"50%\" cy=\"50%\"/>\n </svg>\n</ng-template>\n\n<!--\n All children need to be hidden for screen readers in order to support ChromeVox.\n More context in the issue: https://github.com/angular/components/issues/22165.\n-->\n<div class=\"mdc-circular-progress__determinate-container\" aria-hidden=\"true\" #determinateSpinner>\n <svg [attr.viewBox]=\"_viewBox()\" class=\"mdc-circular-progress__determinate-circle-graphic\"\n xmlns=\"http://www.w3.org/2000/svg\" focusable=\"false\">\n <circle [attr.r]=\"_circleRadius()\"\n [style.stroke-dasharray.px]=\"_strokeCircumference()\"\n [style.stroke-dashoffset.px]=\"_strokeDashOffset()\"\n [style.stroke-width.%]=\"_circleStrokeWidth()\"\n class=\"mdc-circular-progress__determinate-circle\"\n cx=\"50%\" cy=\"50%\"/>\n </svg>\n</div>\n<!--TODO: figure out why there are 3 separate svgs-->\n<div class=\"mdc-circular-progress__indeterminate-container\" aria-hidden=\"true\">\n <div class=\"mdc-circular-progress__spinner-layer\">\n <div class=\"mdc-circular-progress__circle-clipper mdc-circular-progress__circle-left\">\n <ng-container [ngTemplateOutlet]=\"circle\"></ng-container>\n </div>\n <div class=\"mdc-circular-progress__gap-patch\">\n <ng-container [ngTemplateOutlet]=\"circle\"></ng-container>\n </div>\n <div class=\"mdc-circular-progress__circle-clipper mdc-circular-progress__circle-right\">\n <ng-container [ngTemplateOutlet]=\"circle\"></ng-container>\n </div>\n </div>\n</div>\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 {BidiModule} from '@angular/cdk/bidi';\nimport {NgModule} from '@angular/core';\nimport {MatProgressSpinner, MatSpinner} from './progress-spinner';\n\n@NgModule({\n imports: [MatProgressSpinner, MatSpinner],\n exports: [MatProgressSpinner, MatSpinner, BidiModule],\n})\nexport class MatProgressSpinnerModule {}\n"],"names":["MAT_PROGRESS_SPINNER_DEFAULT_OPTIONS","InjectionToken","providedIn","factory","diameter","BASE_SIZE","BASE_STROKE_WIDTH","MatProgressSpinner","_elementRef","inject","ElementRef","_noopAnimations","color","_color","_defaultColor","value","_determinateCircle","constructor","defaults","animationsState","_getAnimationsState","element","nativeElement","_forceAnimations","mode","nodeName","toLowerCase","classList","add","strokeWidth","_value","v","Math","max","min","_diameter","size","_strokeWidth","_circleRadius","_viewBox","viewBox","_strokeCircumference","PI","_strokeDashOffset","_circleStrokeWidth","deps","target","i0","ɵɵFactoryTarget","Component","isStandalone","selector","inputs","numberAttribute","host","attributes","properties","classAttribute","viewQueries","propertyName","first","predicate","descendants","exportAs","ngImport","template","styles","dependencies","kind","type","NgTemplateOutlet","changeDetection","ChangeDetectionStrategy","OnPush","encapsulation","ViewEncapsulation","None","decorators","imports","Input","ViewChild","transform","MatSpinner","MatProgressSpinnerModule","NgModule","BidiModule","ɵinj","ɵɵngDeclareInjector","minVersion","version","args","exports"],"mappings":"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"}