flexi-button
Version:
A highly customizable button component for Angular
1 lines • 6.15 kB
Source Map (JSON)
{"version":3,"file":"flexi-button.mjs","sources":["../../../library/src/lib/flexi-button.component.ts","../../../library/src/lib/flexi-button.component.html","../../../library/src/flexi-button.ts"],"sourcesContent":["import { CommonModule } from '@angular/common';\r\nimport { ChangeDetectionStrategy, Component, input, Input, ViewEncapsulation } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'flexi-button:not(p)',\r\n imports: [CommonModule],\r\n templateUrl: \"./flexi-button.component.html\",\r\n styleUrl: './flexi-button.component.css',\r\n host: { '[attr.data-instance-id]': 'instanceId' },\r\n encapsulation: ViewEncapsulation.None,\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class FlexiButtonComponent {\r\n readonly btnIcon = input<string | undefined>(undefined);\r\n readonly btnColor = input<FlexiButtonColorType>('light');\r\n readonly btnSize = input<FlexiButtonSizeType>('medium');\r\n readonly btnText = input<string | undefined>(undefined);\r\n readonly btnType = input<FlexiButtonType>(\"button\");\r\n readonly btnDisabled = input<boolean>(false);\r\n readonly firstText = input<boolean>(false);\r\n readonly btnRounded = input<boolean>(false);\r\n readonly loading = input<boolean>(false);\r\n readonly btnFloat = input<boolean>(false);\r\n readonly loadingText = input<string | undefined>(undefined);\r\n readonly btnWidth = input<string | undefined>(undefined);\r\n}\r\n\r\nexport type FlexiButtonColorType = \"light\" | \"primary\" | \"success\" | \"danger\" | \"warning\" | \"info\" | \"dark\" | \"indigo\" | \"purple\" | \"pink\" | \"teal\" | \"yellow\" | \"secondary\" | \"black\" | \"white\";\r\nexport type FlexiButtonSizeType = \"x-small\" | \"small\" | \"medium\" | \"large\"\r\nexport type FlexiButtonType = \"button\" | \"submit\"","<button\r\n class=\"flexi-button flexi-button-{{ btnColor() }} flexi-button-size-{{ btnSize() }}\"\r\n [class.flexi-button-rounded]=\"btnRounded()\"\r\n [class.flexi-button-float]=\"btnFloat()\"\r\n [type]=\"btnType()\"\r\n [disabled]=\"btnDisabled() || loading()\"\r\n [style.width]=\"btnWidth()\"\r\n>\r\n @if(loading()){\r\n <span class=\"flexi-button-spinner flexi-button-spinner-{{btnSize()}} flexi-button-spinner-{{btnColor()}}\"></span>\r\n @if(loadingText()){\r\n <span class=\"flexi-button-text\">{{loadingText()}}</span>\r\n }\r\n }@else {\r\n @if(btnText() && btnIcon()){\r\n @if(firstText()){\r\n <span class=\"flexi-button-text\">{{ btnText() }}</span>\r\n <span class=\"material-symbols-outlined\">\r\n {{ btnIcon() }}\r\n </span>\r\n }@else{\r\n <span class=\"material-symbols-outlined\">\r\n {{ btnIcon() }}\r\n </span>\r\n <span class=\"flexi-button-text\">{{ btnText() }}</span>\r\n }\r\n }@else if(btnIcon()){\r\n <span class=\"material-symbols-outlined\">\r\n {{ btnIcon() }}\r\n </span>\r\n }@else if(btnText() !== undefined){\r\n <span class=\"flexi-button-text\">{{ btnText() }}</span>\r\n }@else {\r\n <ng-content />\r\n }\r\n }\r\n</button>","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}