UNPKG

carbon-components-angular

Version:
1 lines 8.19 kB
{"version":3,"file":"carbon-components-angular-inline-loading.mjs","sources":["../../src/inline-loading/inline-loading.component.ts","../../src/inline-loading/inline-loading.module.ts","../../src/inline-loading/carbon-components-angular-inline-loading.ts"],"sourcesContent":["import {\n\tComponent,\n\tInput,\n\tOutput,\n\tEventEmitter,\n\tHostBinding\n} from \"@angular/core\";\n\nexport enum InlineLoadingState {\n\t/** It hides the whole component. */\n\tHidden = \"hidden\",\n\t/** It shows the `loadingText` but no loading animation. */\n\tInactive = \"inactive\",\n\t/** It shows the `loadingText` with loading animation. */\n\tActive = \"active\",\n\t/** It shows the `successText` with a success state. */\n\tFinished = \"finished\",\n\t/** It shows the `errorText` with an error state. */\n\tError = \"error\"\n}\n\n/**\n * Get started with importing the module:\n *\n * ```typescript\n * import { InlineLoadingModule } from 'carbon-components-angular';\n * ```\n *\n * [See demo](../../?path=/story/components-inline-loading--basic)\n */\n@Component({\n\tselector: \"cds-inline-loading, ibm-inline-loading\",\n\ttemplate: `\n\t\t<div *ngIf=\"state !== InlineLoadingState.Hidden\"\n\t\t\tclass=\"cds--inline-loading__animation\">\n\t\t\t<div\n\t\t\t\t*ngIf=\"state === InlineLoadingState.Inactive || state === InlineLoadingState.Active\"\n\t\t\t\tclass=\"cds--loading cds--loading--small\"\n\t\t\t\t[ngClass]=\"{\n\t\t\t\t\t'cds--loading--stop': state === InlineLoadingState.Inactive\n\t\t\t\t}\">\n\t\t\t\t<svg class=\"cds--loading__svg\" viewBox=\"0 0 100 100\">\n\t\t\t\t\t<circle class=\"cds--loading__background\" cx=\"50%\" cy=\"50%\" r=\"44\" />\n\t\t\t\t\t<circle class=\"cds--loading__stroke\" cx=\"50%\" cy=\"50%\" r=\"44\" />\n\t\t\t\t</svg>\n\t\t\t</div>\n\t\t\t<svg\n\t\t\t\t*ngIf=\"state === InlineLoadingState.Finished\"\n\t\t\t\tcdsIcon=\"checkmark--filled\"\n\t\t\t\tsize=\"16\"\n\t\t\t\tclass=\"cds--inline-loading__checkmark-container\">\n\t\t\t</svg>\n\t\t\t<svg\n\t\t\t\t*ngIf=\"state === InlineLoadingState.Error\"\n\t\t\t\tcdsIcon=\"error--filled\"\n\t\t\t\tsize=\"16\"\n\t\t\t\tclass=\"cds--inline-loading--error\">\n\t\t\t</svg>\n\t\t</div>\n\t\t<p\n\t\t\t*ngIf=\"state === InlineLoadingState.Inactive || state === InlineLoadingState.Active\"\n\t\t\tclass=\"cds--inline-loading__text\">{{loadingText}}</p>\n\t\t<p *ngIf=\"state === InlineLoadingState.Finished\" class=\"cds--inline-loading__text\">{{successText}}</p>\n\t\t<p *ngIf=\"state === InlineLoadingState.Error\" class=\"cds--inline-loading__text\">{{errorText}}</p>\n\t`\n})\nexport class InlineLoading {\n\tInlineLoadingState = InlineLoadingState;\n\n\t/**\n\t * Specify the text description for the loading state.\n\t */\n\t@Input() state: InlineLoadingState | string = InlineLoadingState.Active;\n\t/**\n\t * Specify the text description for the loading state.\n\t */\n\t@Input() loadingText: string;\n\t/**\n\t * Specify the text description for the success state.\n\t */\n\t@Input() successText: string;\n\t/**\n\t * Provide a delay for the `setTimeout` for success.\n\t */\n\t@Input() successDelay = 1500;\n\t/**\n\t * Specify the text description for the error state.\n\t */\n\t@Input() errorText: string;\n\t/**\n\t * set to `false` to stop the loading animation\n\t */\n\t@Input() get isActive() {\n\t\treturn this.state === InlineLoadingState.Active;\n\t}\n\tset isActive(active: boolean) {\n\t\tthis.state = active ? InlineLoadingState.Active : InlineLoadingState.Inactive;\n\t}\n\n\t/**\n\t * Returns value `true` if the component is in the success state.\n\t */\n\t@Input() get success() {\n\t\treturn this.state === InlineLoadingState.Finished;\n\t}\n\t/**\n\t * Set the component's state to match the parameter and emits onSuccess if it exits.\n\t */\n\tset success(success: boolean) {\n\t\tthis.state = success ? InlineLoadingState.Finished : InlineLoadingState.Error;\n\t\tif (this.state === InlineLoadingState.Finished) {\n\t\t\tsetTimeout(() => {\n\t\t\t\tthis.onSuccess.emit();\n\t\t\t}, this.successDelay);\n\t\t}\n\t}\n\n\t/**\n\t * Emits event after the success state is active\n\t */\n\t@Output() onSuccess: EventEmitter<any> = new EventEmitter();\n\n\t@HostBinding(\"class.cds--inline-loading\") loadingClass = true;\n}\n","import { NgModule } from \"@angular/core\";\nimport { CommonModule } from \"@angular/common\";\n\nimport { InlineLoading } from \"./inline-loading.component\";\nimport { IconModule } from \"carbon-components-angular/icon\";\n\n@NgModule({\n\tdeclarations: [InlineLoading],\n\texports: [InlineLoading],\n\timports: [CommonModule, IconModule]\n})\nexport class InlineLoadingModule { }\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}