@viasat/beam-web-components-angular 2.17.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/README.md +304 -0
- package/fesm2022/viasat-beam-web-components-angular-src-lib-accordion-group.mjs +41 -0
- package/fesm2022/viasat-beam-web-components-angular-src-lib-accordion-group.mjs.map +1 -0
- package/fesm2022/viasat-beam-web-components-angular-src-lib-accordion.mjs +64 -0
- package/fesm2022/viasat-beam-web-components-angular-src-lib-accordion.mjs.map +1 -0
- package/fesm2022/viasat-beam-web-components-angular-src-lib-alert.mjs +93 -0
- package/fesm2022/viasat-beam-web-components-angular-src-lib-alert.mjs.map +1 -0
- package/fesm2022/viasat-beam-web-components-angular-src-lib-avatar-group.mjs +51 -0
- package/fesm2022/viasat-beam-web-components-angular-src-lib-avatar-group.mjs.map +1 -0
- package/fesm2022/viasat-beam-web-components-angular-src-lib-avatar.mjs +77 -0
- package/fesm2022/viasat-beam-web-components-angular-src-lib-avatar.mjs.map +1 -0
- package/fesm2022/viasat-beam-web-components-angular-src-lib-badge-dot.mjs +49 -0
- package/fesm2022/viasat-beam-web-components-angular-src-lib-badge-dot.mjs.map +1 -0
- package/fesm2022/viasat-beam-web-components-angular-src-lib-badge.mjs +55 -0
- package/fesm2022/viasat-beam-web-components-angular-src-lib-badge.mjs.map +1 -0
- package/fesm2022/viasat-beam-web-components-angular-src-lib-box.mjs +111 -0
- package/fesm2022/viasat-beam-web-components-angular-src-lib-box.mjs.map +1 -0
- package/fesm2022/viasat-beam-web-components-angular-src-lib-breadcrumbs-item.mjs +54 -0
- package/fesm2022/viasat-beam-web-components-angular-src-lib-breadcrumbs-item.mjs.map +1 -0
- package/fesm2022/viasat-beam-web-components-angular-src-lib-breadcrumbs.mjs +50 -0
- package/fesm2022/viasat-beam-web-components-angular-src-lib-breadcrumbs.mjs.map +1 -0
- package/fesm2022/viasat-beam-web-components-angular-src-lib-button.mjs +78 -0
- package/fesm2022/viasat-beam-web-components-angular-src-lib-button.mjs.map +1 -0
- package/fesm2022/viasat-beam-web-components-angular-src-lib-checkbox.mjs +69 -0
- package/fesm2022/viasat-beam-web-components-angular-src-lib-checkbox.mjs.map +1 -0
- package/fesm2022/viasat-beam-web-components-angular-src-lib-close-button.mjs +39 -0
- package/fesm2022/viasat-beam-web-components-angular-src-lib-close-button.mjs.map +1 -0
- package/fesm2022/viasat-beam-web-components-angular-src-lib-divider.mjs +63 -0
- package/fesm2022/viasat-beam-web-components-angular-src-lib-divider.mjs.map +1 -0
- package/fesm2022/viasat-beam-web-components-angular-src-lib-empty-state.mjs +50 -0
- package/fesm2022/viasat-beam-web-components-angular-src-lib-empty-state.mjs.map +1 -0
- package/fesm2022/viasat-beam-web-components-angular-src-lib-helper-text.mjs +60 -0
- package/fesm2022/viasat-beam-web-components-angular-src-lib-helper-text.mjs.map +1 -0
- package/fesm2022/viasat-beam-web-components-angular-src-lib-icon.mjs +48 -0
- package/fesm2022/viasat-beam-web-components-angular-src-lib-icon.mjs.map +1 -0
- package/fesm2022/viasat-beam-web-components-angular-src-lib-link.mjs +67 -0
- package/fesm2022/viasat-beam-web-components-angular-src-lib-link.mjs.map +1 -0
- package/fesm2022/viasat-beam-web-components-angular-src-lib-list-item.mjs +32 -0
- package/fesm2022/viasat-beam-web-components-angular-src-lib-list-item.mjs.map +1 -0
- package/fesm2022/viasat-beam-web-components-angular-src-lib-list.mjs +52 -0
- package/fesm2022/viasat-beam-web-components-angular-src-lib-list.mjs.map +1 -0
- package/fesm2022/viasat-beam-web-components-angular-src-lib-progress-bar.mjs +64 -0
- package/fesm2022/viasat-beam-web-components-angular-src-lib-progress-bar.mjs.map +1 -0
- package/fesm2022/viasat-beam-web-components-angular-src-lib-segmented-control-item.mjs +49 -0
- package/fesm2022/viasat-beam-web-components-angular-src-lib-segmented-control-item.mjs.map +1 -0
- package/fesm2022/viasat-beam-web-components-angular-src-lib-segmented-control-list.mjs +38 -0
- package/fesm2022/viasat-beam-web-components-angular-src-lib-segmented-control-list.mjs.map +1 -0
- package/fesm2022/viasat-beam-web-components-angular-src-lib-segmented-control-panel.mjs +36 -0
- package/fesm2022/viasat-beam-web-components-angular-src-lib-segmented-control-panel.mjs.map +1 -0
- package/fesm2022/viasat-beam-web-components-angular-src-lib-segmented-control.mjs +55 -0
- package/fesm2022/viasat-beam-web-components-angular-src-lib-segmented-control.mjs.map +1 -0
- package/fesm2022/viasat-beam-web-components-angular-src-lib-spinner.mjs +57 -0
- package/fesm2022/viasat-beam-web-components-angular-src-lib-spinner.mjs.map +1 -0
- package/fesm2022/viasat-beam-web-components-angular-src-lib-text.mjs +91 -0
- package/fesm2022/viasat-beam-web-components-angular-src-lib-text.mjs.map +1 -0
- package/fesm2022/viasat-beam-web-components-angular-src-lib-tooltip.mjs +122 -0
- package/fesm2022/viasat-beam-web-components-angular-src-lib-tooltip.mjs.map +1 -0
- package/fesm2022/viasat-beam-web-components-angular.mjs +43 -0
- package/fesm2022/viasat-beam-web-components-angular.mjs.map +1 -0
- package/index.d.ts +39 -0
- package/package.json +161 -0
- package/src/lib/accordion/accordion.component.d.ts +35 -0
- package/src/lib/accordion/index.d.ts +1 -0
- package/src/lib/accordion-group/accordion-group.component.d.ts +16 -0
- package/src/lib/accordion-group/index.d.ts +1 -0
- package/src/lib/alert/alert.component.d.ts +63 -0
- package/src/lib/alert/index.d.ts +1 -0
- package/src/lib/avatar/avatar.component.d.ts +52 -0
- package/src/lib/avatar/index.d.ts +1 -0
- package/src/lib/avatar-group/avatar-group.component.d.ts +26 -0
- package/src/lib/avatar-group/index.d.ts +1 -0
- package/src/lib/badge/badge.component.d.ts +29 -0
- package/src/lib/badge/index.d.ts +1 -0
- package/src/lib/badge-dot/badge-dot.component.d.ts +24 -0
- package/src/lib/badge-dot/index.d.ts +1 -0
- package/src/lib/box/box.component.d.ts +86 -0
- package/src/lib/box/index.d.ts +1 -0
- package/src/lib/breadcrumbs/breadcrumbs.component.d.ts +25 -0
- package/src/lib/breadcrumbs/index.d.ts +1 -0
- package/src/lib/breadcrumbs-item/breadcrumbs-item.component.d.ts +28 -0
- package/src/lib/breadcrumbs-item/index.d.ts +1 -0
- package/src/lib/button/button.component.d.ts +51 -0
- package/src/lib/button/index.d.ts +1 -0
- package/src/lib/checkbox/checkbox.component.d.ts +46 -0
- package/src/lib/checkbox/index.d.ts +1 -0
- package/src/lib/close-button/close-button.component.d.ts +16 -0
- package/src/lib/close-button/index.d.ts +1 -0
- package/src/lib/divider/divider.component.d.ts +37 -0
- package/src/lib/divider/index.d.ts +1 -0
- package/src/lib/empty-state/empty-state.component.d.ts +22 -0
- package/src/lib/empty-state/index.d.ts +1 -0
- package/src/lib/helper-text/helper-text.component.d.ts +34 -0
- package/src/lib/helper-text/index.d.ts +1 -0
- package/src/lib/icon/icon.component.d.ts +23 -0
- package/src/lib/icon/index.d.ts +1 -0
- package/src/lib/link/index.d.ts +1 -0
- package/src/lib/link/link.component.d.ts +40 -0
- package/src/lib/list/index.d.ts +1 -0
- package/src/lib/list/list.component.d.ts +27 -0
- package/src/lib/list-item/index.d.ts +1 -0
- package/src/lib/list-item/list-item.component.d.ts +6 -0
- package/src/lib/progress-bar/index.d.ts +1 -0
- package/src/lib/progress-bar/progress-bar.component.d.ts +41 -0
- package/src/lib/segmented-control/index.d.ts +1 -0
- package/src/lib/segmented-control/segmented-control.component.d.ts +30 -0
- package/src/lib/segmented-control-item/index.d.ts +1 -0
- package/src/lib/segmented-control-item/segmented-control-item.component.d.ts +21 -0
- package/src/lib/segmented-control-list/index.d.ts +1 -0
- package/src/lib/segmented-control-list/segmented-control-list.component.d.ts +11 -0
- package/src/lib/segmented-control-panel/index.d.ts +1 -0
- package/src/lib/segmented-control-panel/segmented-control-panel.component.d.ts +11 -0
- package/src/lib/spinner/index.d.ts +1 -0
- package/src/lib/spinner/spinner.component.d.ts +31 -0
- package/src/lib/text/index.d.ts +1 -0
- package/src/lib/text/text.component.d.ts +66 -0
- package/src/lib/tooltip/index.d.ts +1 -0
- package/src/lib/tooltip/tooltip.component.d.ts +129 -0
package/README.md
ADDED
|
@@ -0,0 +1,304 @@
|
|
|
1
|
+
# 🅰️ Beam Web Components Angular
|
|
2
|
+
|
|
3
|
+
Angular wrapper components for the Beam Design System web components. These wrappers provide type-safe Angular bindings with signal-based inputs/outputs, `OnPush` change detection, and full support for content projection.
|
|
4
|
+
|
|
5
|
+
<br />
|
|
6
|
+
|
|
7
|
+
## 🔖 Table of Contents
|
|
8
|
+
|
|
9
|
+
1. [✨ Features](#features)
|
|
10
|
+
2. [💻 Installation](#installation)
|
|
11
|
+
3. [🚀 Quick Start](#quick-start)
|
|
12
|
+
4. [🛠️ Usage](#usage)
|
|
13
|
+
5. [🌳 Tree-Shaking & Optimization](#tree-shaking--optimization)
|
|
14
|
+
6. [🔧 Troubleshooting](#troubleshooting)
|
|
15
|
+
7. [📚 Documentation](#documentation)
|
|
16
|
+
8. [🤝 Contributing](#contributing)
|
|
17
|
+
9. [📄 License](#license)
|
|
18
|
+
|
|
19
|
+
## Features
|
|
20
|
+
|
|
21
|
+
- **Type Safety** - Full TypeScript support with properly typed signal inputs and outputs
|
|
22
|
+
- **Signal-Based API** - Built with Angular's modern `input()` and `output()` signal APIs
|
|
23
|
+
- **OnPush Compatible** - All components use `ChangeDetectionStrategy.OnPush` for optimal performance
|
|
24
|
+
- **Standalone Components** - Modern Angular standalone components, no `NgModule` required
|
|
25
|
+
- **Tree-Shakable** - Secondary entry points ensure you only bundle what you use
|
|
26
|
+
- **Content Projection** - Seamless slot-to-`<ng-content>` mapping for flexible composition
|
|
27
|
+
- **Boolean Attribute Handling** - Automatic `booleanAttribute` transforms for boolean props
|
|
28
|
+
- **Angular 17+** - Built for modern Angular applications
|
|
29
|
+
|
|
30
|
+
## Installation
|
|
31
|
+
|
|
32
|
+
```bash
|
|
33
|
+
npm install @viasat/beam-web-components-angular
|
|
34
|
+
```
|
|
35
|
+
|
|
36
|
+
```bash
|
|
37
|
+
yarn add @viasat/beam-web-components-angular
|
|
38
|
+
```
|
|
39
|
+
|
|
40
|
+
```bash
|
|
41
|
+
pnpm add @viasat/beam-web-components-angular
|
|
42
|
+
```
|
|
43
|
+
|
|
44
|
+
> 💡 **Note**: This package requires `@angular/core` >= 17.3.0, `@viasat/beam-web-components`, `@viasat/beam-shared`, and `@floating-ui/dom` as peer dependencies.
|
|
45
|
+
|
|
46
|
+
## Quick Start
|
|
47
|
+
|
|
48
|
+
### 1. Import Required Styles
|
|
49
|
+
|
|
50
|
+
Import the base tokens and fonts at the root of your application:
|
|
51
|
+
|
|
52
|
+
```typescript
|
|
53
|
+
// styles.scss or main.ts
|
|
54
|
+
import '@viasat/beam-tokens/styles.css';
|
|
55
|
+
import '@viasat/beam-fonts/styles.css';
|
|
56
|
+
```
|
|
57
|
+
|
|
58
|
+
### 2. Use Components
|
|
59
|
+
|
|
60
|
+
```typescript
|
|
61
|
+
import { Component } from '@angular/core';
|
|
62
|
+
import { AlertComponent } from '@viasat/beam-web-components-angular/alert';
|
|
63
|
+
|
|
64
|
+
@Component({
|
|
65
|
+
selector: 'app-my-component',
|
|
66
|
+
standalone: true,
|
|
67
|
+
imports: [AlertComponent],
|
|
68
|
+
template: `
|
|
69
|
+
<bm-ng-alert
|
|
70
|
+
heading="Welcome!"
|
|
71
|
+
body="This is a Beam alert in Angular."
|
|
72
|
+
appearance="positive"
|
|
73
|
+
[dismissible]="true"
|
|
74
|
+
(bmDismiss)="onDismiss($event)"
|
|
75
|
+
/>
|
|
76
|
+
`,
|
|
77
|
+
})
|
|
78
|
+
export class MyComponent {
|
|
79
|
+
onDismiss(event: CustomEvent): void {
|
|
80
|
+
console.log('Alert dismissed');
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
```
|
|
84
|
+
|
|
85
|
+
> 💡 **Note**: Components are imported from **secondary entry points** (e.g. `@viasat/beam-web-components-angular/alert`), not from the package root. This enables optimal tree-shaking.
|
|
86
|
+
|
|
87
|
+
## Usage
|
|
88
|
+
|
|
89
|
+
### Importing Components
|
|
90
|
+
|
|
91
|
+
Each component is available from its own secondary entry point:
|
|
92
|
+
|
|
93
|
+
```typescript
|
|
94
|
+
// ✅ Import from secondary entry points
|
|
95
|
+
import { AlertComponent } from '@viasat/beam-web-components-angular/alert';
|
|
96
|
+
import { ButtonComponent } from '@viasat/beam-web-components-angular/button';
|
|
97
|
+
import { AccordionComponent } from '@viasat/beam-web-components-angular/accordion';
|
|
98
|
+
```
|
|
99
|
+
|
|
100
|
+
### Property Binding
|
|
101
|
+
|
|
102
|
+
Properties use Angular's signal-based `input()` API. Bind to them like any Angular input:
|
|
103
|
+
|
|
104
|
+
```typescript
|
|
105
|
+
import { Component } from '@angular/core';
|
|
106
|
+
import { ButtonComponent } from '@viasat/beam-web-components-angular/button';
|
|
107
|
+
|
|
108
|
+
@Component({
|
|
109
|
+
selector: 'app-button-demo',
|
|
110
|
+
standalone: true,
|
|
111
|
+
imports: [ButtonComponent],
|
|
112
|
+
template: `
|
|
113
|
+
<bm-ng-button appearance="primary" size="lg" [disabled]="isDisabled">
|
|
114
|
+
Click me
|
|
115
|
+
</bm-ng-button>
|
|
116
|
+
`,
|
|
117
|
+
})
|
|
118
|
+
export class ButtonDemoComponent {
|
|
119
|
+
isDisabled = false;
|
|
120
|
+
}
|
|
121
|
+
```
|
|
122
|
+
|
|
123
|
+
### Event Binding
|
|
124
|
+
|
|
125
|
+
Events are exposed as Angular `output()` signals. All custom events are prefixed with `bm`:
|
|
126
|
+
|
|
127
|
+
```typescript
|
|
128
|
+
import { Component } from '@angular/core';
|
|
129
|
+
import { AlertComponent } from '@viasat/beam-web-components-angular/alert';
|
|
130
|
+
|
|
131
|
+
@Component({
|
|
132
|
+
selector: 'app-alert-demo',
|
|
133
|
+
standalone: true,
|
|
134
|
+
imports: [AlertComponent],
|
|
135
|
+
template: `
|
|
136
|
+
<bm-ng-alert
|
|
137
|
+
heading="Dismissible Alert"
|
|
138
|
+
appearance="warning"
|
|
139
|
+
[dismissible]="true"
|
|
140
|
+
(bmDismiss)="onDismiss($event)"
|
|
141
|
+
>
|
|
142
|
+
This alert can be dismissed.
|
|
143
|
+
</bm-ng-alert>
|
|
144
|
+
`,
|
|
145
|
+
})
|
|
146
|
+
export class AlertDemoComponent {
|
|
147
|
+
onDismiss(event: CustomEvent): void {
|
|
148
|
+
console.log('Alert dismissed', event);
|
|
149
|
+
}
|
|
150
|
+
}
|
|
151
|
+
```
|
|
152
|
+
|
|
153
|
+
### Boolean Attributes
|
|
154
|
+
|
|
155
|
+
Boolean properties automatically use Angular's `booleanAttribute` transform, so you can set them as HTML attributes or bind them:
|
|
156
|
+
|
|
157
|
+
```html
|
|
158
|
+
<!-- As an attribute (sets to true) -->
|
|
159
|
+
<bm-ng-alert dismissible heading="Alert" />
|
|
160
|
+
|
|
161
|
+
<!-- As a binding -->
|
|
162
|
+
<bm-ng-alert [dismissible]="isDismissible" heading="Alert" />
|
|
163
|
+
```
|
|
164
|
+
|
|
165
|
+
### Using Slots
|
|
166
|
+
|
|
167
|
+
Web component slots work seamlessly with Angular content projection:
|
|
168
|
+
|
|
169
|
+
```typescript
|
|
170
|
+
@Component({
|
|
171
|
+
template: `
|
|
172
|
+
<bm-ng-alert appearance="infoPrimary" [dismissible]="true">
|
|
173
|
+
<span slot="heading">Custom Heading</span>
|
|
174
|
+
<span slot="actions">
|
|
175
|
+
<button>Take Action</button>
|
|
176
|
+
</span>
|
|
177
|
+
</bm-ng-alert>
|
|
178
|
+
`,
|
|
179
|
+
})
|
|
180
|
+
```
|
|
181
|
+
|
|
182
|
+
### Composing Components
|
|
183
|
+
|
|
184
|
+
```typescript
|
|
185
|
+
import { Component } from '@angular/core';
|
|
186
|
+
import { AccordionGroupComponent } from '@viasat/beam-web-components-angular/accordion-group';
|
|
187
|
+
import { AccordionComponent } from '@viasat/beam-web-components-angular/accordion';
|
|
188
|
+
|
|
189
|
+
@Component({
|
|
190
|
+
selector: 'app-accordion-demo',
|
|
191
|
+
standalone: true,
|
|
192
|
+
imports: [AccordionGroupComponent, AccordionComponent],
|
|
193
|
+
template: `
|
|
194
|
+
<bm-ng-accordion-group [singleExpand]="true">
|
|
195
|
+
<bm-ng-accordion heading="Section 1" [defaultOpen]="true">
|
|
196
|
+
Content for section 1
|
|
197
|
+
</bm-ng-accordion>
|
|
198
|
+
<bm-ng-accordion heading="Section 2">
|
|
199
|
+
Content for section 2
|
|
200
|
+
</bm-ng-accordion>
|
|
201
|
+
</bm-ng-accordion-group>
|
|
202
|
+
`,
|
|
203
|
+
})
|
|
204
|
+
export class AccordionDemoComponent {}
|
|
205
|
+
```
|
|
206
|
+
|
|
207
|
+
## Tree-Shaking & Optimization
|
|
208
|
+
|
|
209
|
+
### How It Works
|
|
210
|
+
|
|
211
|
+
Each component is published as a **secondary entry point** via `ng-packagr`. This means Angular's build system only includes the components you actually import, unused components are completely excluded from your bundle.
|
|
212
|
+
|
|
213
|
+
- **Secondary Entry Points** - Each component has its own `ng-package.json`, enabling per-component bundling
|
|
214
|
+
- **Side-Effect Imports** - Only the underlying web component JS for imported wrappers is included
|
|
215
|
+
- **Zero Config** - Angular CLI, Webpack, and esbuild all respect entry point boundaries automatically
|
|
216
|
+
|
|
217
|
+
```typescript
|
|
218
|
+
// ✅ Recommended: Import from secondary entry points
|
|
219
|
+
import { AlertComponent } from '@viasat/beam-web-components-angular/alert';
|
|
220
|
+
import { ButtonComponent } from '@viasat/beam-web-components-angular/button';
|
|
221
|
+
```
|
|
222
|
+
|
|
223
|
+
> ⚠️ **Note**: The primary entry point (`@viasat/beam-web-components-angular`) does not re-export components. Always import from secondary entry points.
|
|
224
|
+
|
|
225
|
+
## Troubleshooting
|
|
226
|
+
|
|
227
|
+
### Components not rendering
|
|
228
|
+
|
|
229
|
+
Make sure you've imported the required base styles at the root of your application:
|
|
230
|
+
|
|
231
|
+
```typescript
|
|
232
|
+
import '@viasat/beam-tokens/styles.css';
|
|
233
|
+
import '@viasat/beam-fonts/styles.css';
|
|
234
|
+
```
|
|
235
|
+
|
|
236
|
+
### `'bm-ng-*' is not a known element`
|
|
237
|
+
|
|
238
|
+
Add `CUSTOM_ELEMENTS_SCHEMA` to your component's `schemas` if you're using the raw web components alongside the wrappers. The wrapper components already include this schema, this error typically means you're referencing a web component tag that doesn't have a corresponding wrapper import.
|
|
239
|
+
|
|
240
|
+
```typescript
|
|
241
|
+
import { CUSTOM_ELEMENTS_SCHEMA, Component } from '@angular/core';
|
|
242
|
+
|
|
243
|
+
@Component({
|
|
244
|
+
schemas: [CUSTOM_ELEMENTS_SCHEMA],
|
|
245
|
+
// ...
|
|
246
|
+
})
|
|
247
|
+
```
|
|
248
|
+
|
|
249
|
+
### Boolean attributes not working as expected
|
|
250
|
+
|
|
251
|
+
Boolean props use Angular's `booleanAttribute` transform. Pass `true`/`false` via binding, or use the attribute name without a value to set it to `true`:
|
|
252
|
+
|
|
253
|
+
```html
|
|
254
|
+
<!-- These are equivalent -->
|
|
255
|
+
<bm-ng-alert [dismissible]="true" />
|
|
256
|
+
<bm-ng-alert dismissible />
|
|
257
|
+
```
|
|
258
|
+
|
|
259
|
+
If you encounter a bug, please file an issue in the Beam Design System issue tracker with your Angular version, package version, and steps to reproduce.
|
|
260
|
+
|
|
261
|
+
## Documentation
|
|
262
|
+
|
|
263
|
+
### Storybook
|
|
264
|
+
|
|
265
|
+
Explore component examples and API documentation:
|
|
266
|
+
|
|
267
|
+
**📖 [Beam Web Components Storybook](https://web-components.beam.viasat.com/)**
|
|
268
|
+
|
|
269
|
+
The [Angular Guide](https://web-components.beam.viasat.com/?path=/docs/concepts-angular--docs) provides comprehensive documentation on:
|
|
270
|
+
|
|
271
|
+
- Using pre-built Angular wrappers
|
|
272
|
+
- Direct web component usage in Angular
|
|
273
|
+
- Creating custom wrappers
|
|
274
|
+
- Best practices and patterns
|
|
275
|
+
|
|
276
|
+
### Additional Resources
|
|
277
|
+
|
|
278
|
+
- **Web Components** - [@viasat/beam-web-components](https://www.npmjs.com/package/@viasat/beam-web-components)
|
|
279
|
+
- **Design Tokens** - [@viasat/beam-tokens](https://www.npmjs.com/package/@viasat/beam-tokens)
|
|
280
|
+
- **Icon Library** - [@viasat/beam-icons](https://www.npmjs.com/package/@viasat/beam-icons)
|
|
281
|
+
- **Typography** - [@viasat/beam-fonts](https://www.npmjs.com/package/@viasat/beam-fonts)
|
|
282
|
+
|
|
283
|
+
## Contributing
|
|
284
|
+
|
|
285
|
+
This package is part of the Beam Design System monorepo. For contribution guidelines, please refer to the main repository documentation.
|
|
286
|
+
|
|
287
|
+
### Regenerating Wrappers
|
|
288
|
+
|
|
289
|
+
The Angular wrappers are auto-generated from the web components' Custom Elements Manifest. To regenerate after web component changes:
|
|
290
|
+
|
|
291
|
+
```bash
|
|
292
|
+
npx nx run web-components-angular:generate
|
|
293
|
+
```
|
|
294
|
+
|
|
295
|
+
### Adding New Components
|
|
296
|
+
|
|
297
|
+
1. Ensure the web component has `customElement: true` in its Custom Elements Manifest
|
|
298
|
+
2. Verify the component is **not** in the `EXCLUDE_COMPONENTS` list in `scripts/config.ts`
|
|
299
|
+
3. Run the generator: `npx nx run web-components-angular:generate`
|
|
300
|
+
4. Review the generated files in `src/lib/<component-name>/`
|
|
301
|
+
|
|
302
|
+
## License
|
|
303
|
+
|
|
304
|
+
MIT © Viasat
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import * as i0 from '@angular/core';
|
|
2
|
+
import { input, booleanAttribute, CUSTOM_ELEMENTS_SCHEMA, ChangeDetectionStrategy, Component } from '@angular/core';
|
|
3
|
+
import '@viasat/beam-web-components/Accordion';
|
|
4
|
+
|
|
5
|
+
/**
|
|
6
|
+
* AUTO-GENERATED - DO NOT EDIT MANUALLY
|
|
7
|
+
*
|
|
8
|
+
* Angular wrapper for <bm-accordion-group>
|
|
9
|
+
* Generated from: libs/web-components/src/lib/Accordion/AccordionGroup.ts
|
|
10
|
+
*
|
|
11
|
+
* Re-generate: npx nx run web-components-angular:generate
|
|
12
|
+
*
|
|
13
|
+
* @slot default - Specify which Accordions are in the AccordionGroup
|
|
14
|
+
*/
|
|
15
|
+
class AccordionGroupComponent {
|
|
16
|
+
/**
|
|
17
|
+
* Specify the size of the AccordionGroup
|
|
18
|
+
* @default 'md'
|
|
19
|
+
*/
|
|
20
|
+
size = input('md');
|
|
21
|
+
/**
|
|
22
|
+
* Specify if only one row item can be expanded at a time
|
|
23
|
+
* @default false
|
|
24
|
+
*/
|
|
25
|
+
singleExpand = input(false, { transform: booleanAttribute });
|
|
26
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: AccordionGroupComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
27
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "19.2.18", type: AccordionGroupComponent, isStandalone: true, selector: "bm-ng-accordion-group", inputs: { size: { classPropertyName: "size", publicName: "size", isSignal: true, isRequired: false, transformFunction: null }, singleExpand: { classPropertyName: "singleExpand", publicName: "singleExpand", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: "<bm-accordion-group\n [size]=\"size()\"\n [attr.singleExpand]=\"singleExpand() ? '' : null\"\n>\n <ng-content></ng-content>\n</bm-accordion-group>\n", styles: [":host{display:block}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
28
|
+
}
|
|
29
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: AccordionGroupComponent, decorators: [{
|
|
30
|
+
type: Component,
|
|
31
|
+
args: [{ selector: 'bm-ng-accordion-group', standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, schemas: [CUSTOM_ELEMENTS_SCHEMA], template: "<bm-accordion-group\n [size]=\"size()\"\n [attr.singleExpand]=\"singleExpand() ? '' : null\"\n>\n <ng-content></ng-content>\n</bm-accordion-group>\n", styles: [":host{display:block}\n"] }]
|
|
32
|
+
}] });
|
|
33
|
+
|
|
34
|
+
// AUTO-GENERATED
|
|
35
|
+
|
|
36
|
+
/**
|
|
37
|
+
* Generated bundle index. Do not edit.
|
|
38
|
+
*/
|
|
39
|
+
|
|
40
|
+
export { AccordionGroupComponent };
|
|
41
|
+
//# sourceMappingURL=viasat-beam-web-components-angular-src-lib-accordion-group.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"viasat-beam-web-components-angular-src-lib-accordion-group.mjs","sources":["../../../../libs/web-components-angular/src/lib/accordion-group/accordion-group.component.ts","../../../../libs/web-components-angular/src/lib/accordion-group/accordion-group.component.html","../../../../libs/web-components-angular/src/lib/accordion-group/index.ts","../../../../libs/web-components-angular/src/lib/accordion-group/viasat-beam-web-components-angular-src-lib-accordion-group.ts"],"sourcesContent":["/**\n * AUTO-GENERATED - DO NOT EDIT MANUALLY\n *\n * Angular wrapper for <bm-accordion-group>\n * Generated from: libs/web-components/src/lib/Accordion/AccordionGroup.ts\n *\n * Re-generate: npx nx run web-components-angular:generate\n * \n * @slot default - Specify which Accordions are in the AccordionGroup\n */\n\nimport {\n CUSTOM_ELEMENTS_SCHEMA,\n ChangeDetectionStrategy,\n Component,\n booleanAttribute,\n input,\n} from '@angular/core';\n\nimport '@viasat/beam-web-components/Accordion';\n\n@Component({\n selector: 'bm-ng-accordion-group',\n standalone: true,\n templateUrl: './accordion-group.component.html',\n styleUrl: './accordion-group.component.scss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n})\nexport class AccordionGroupComponent {\n /**\n * Specify the size of the AccordionGroup\n * @default 'md'\n */\n size = input<'sm' | 'md' | 'lg'>('md');\n\n /**\n * Specify if only one row item can be expanded at a time\n * @default false\n */\n singleExpand = input(false, { transform: booleanAttribute });\n\n\n}\n","<bm-accordion-group\n [size]=\"size()\"\n [attr.singleExpand]=\"singleExpand() ? '' : null\"\n>\n <ng-content></ng-content>\n</bm-accordion-group>\n","// AUTO-GENERATED\nexport * from './accordion-group.component';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;AAAA;;;;;;;;;AASG;MAoBU,uBAAuB,CAAA;AAClC;;;AAGG;AACH,IAAA,IAAI,GAAG,KAAK,CAAqB,IAAI,CAAC;AAEtC;;;AAGG;IACH,YAAY,GAAG,KAAK,CAAC,KAAK,EAAE,EAAE,SAAS,EAAE,gBAAgB,EAAE,CAAC;wGAXjD,uBAAuB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;AAAvB,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,uBAAuB,+VC7BpC,yJAMA,EAAA,MAAA,EAAA,CAAA,wBAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA;;4FDuBa,uBAAuB,EAAA,UAAA,EAAA,CAAA;kBARnC,SAAS;+BACE,uBAAuB,EAAA,UAAA,EACrB,IAAI,EAAA,eAAA,EAGC,uBAAuB,CAAC,MAAM,EAAA,OAAA,EACtC,CAAC,sBAAsB,CAAC,EAAA,QAAA,EAAA,yJAAA,EAAA,MAAA,EAAA,CAAA,wBAAA,CAAA,EAAA;;;AE3BnC;;ACAA;;AAEG;;;;"}
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
import * as i0 from '@angular/core';
|
|
2
|
+
import { input, booleanAttribute, output, CUSTOM_ELEMENTS_SCHEMA, ChangeDetectionStrategy, Component } from '@angular/core';
|
|
3
|
+
import '@viasat/beam-web-components/Accordion';
|
|
4
|
+
|
|
5
|
+
/**
|
|
6
|
+
* AUTO-GENERATED - DO NOT EDIT MANUALLY
|
|
7
|
+
*
|
|
8
|
+
* Angular wrapper for <bm-accordion>
|
|
9
|
+
* Generated from: libs/web-components/src/lib/Accordion/Accordion.ts
|
|
10
|
+
*
|
|
11
|
+
* Re-generate: npx nx run web-components-angular:generate
|
|
12
|
+
*
|
|
13
|
+
* @slot default - Specify body content for the Accordion
|
|
14
|
+
* @slot icon - Display an icon before the Accordion heading
|
|
15
|
+
* @slot heading - Specify heading content for the Accordion
|
|
16
|
+
*/
|
|
17
|
+
class AccordionComponent {
|
|
18
|
+
/**
|
|
19
|
+
* Specify size of an Accordion
|
|
20
|
+
* @default 'md'
|
|
21
|
+
*/
|
|
22
|
+
size = input('md');
|
|
23
|
+
/**
|
|
24
|
+
* Specify heading content for the Accordion
|
|
25
|
+
*/
|
|
26
|
+
heading = input();
|
|
27
|
+
/**
|
|
28
|
+
* Specify if an Accordion is open.
|
|
29
|
+
If this is specified, the component becomes controlled
|
|
30
|
+
* @default false
|
|
31
|
+
*/
|
|
32
|
+
open = input(false, { transform: booleanAttribute });
|
|
33
|
+
/**
|
|
34
|
+
* Specify if an Accordion is open by default
|
|
35
|
+
* @default false
|
|
36
|
+
*/
|
|
37
|
+
defaultOpen = input(false, { transform: booleanAttribute });
|
|
38
|
+
/**
|
|
39
|
+
* Unique identifier of Accordion
|
|
40
|
+
*/
|
|
41
|
+
id = input();
|
|
42
|
+
/**
|
|
43
|
+
* Dispatched when the Accordion is toggled
|
|
44
|
+
*/
|
|
45
|
+
bmToggle = output();
|
|
46
|
+
onBmToggle(event) {
|
|
47
|
+
this.bmToggle.emit(event);
|
|
48
|
+
}
|
|
49
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: AccordionComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
50
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "19.2.18", type: AccordionComponent, isStandalone: true, selector: "bm-ng-accordion", inputs: { size: { classPropertyName: "size", publicName: "size", isSignal: true, isRequired: false, transformFunction: null }, heading: { classPropertyName: "heading", publicName: "heading", isSignal: true, isRequired: false, transformFunction: null }, open: { classPropertyName: "open", publicName: "open", isSignal: true, isRequired: false, transformFunction: null }, defaultOpen: { classPropertyName: "defaultOpen", publicName: "defaultOpen", isSignal: true, isRequired: false, transformFunction: null }, id: { classPropertyName: "id", publicName: "id", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { bmToggle: "bmToggle" }, ngImport: i0, template: "<bm-accordion\n [size]=\"size()\"\n [heading]=\"heading()\"\n [attr.open]=\"open() ? '' : null\"\n [attr.defaultOpen]=\"defaultOpen() ? '' : null\"\n [id]=\"id()\"\n (bm-toggle)=\"onBmToggle($event)\"\n>\n <ng-content></ng-content>\n</bm-accordion>\n", styles: [":host{display:block}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
51
|
+
}
|
|
52
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: AccordionComponent, decorators: [{
|
|
53
|
+
type: Component,
|
|
54
|
+
args: [{ selector: 'bm-ng-accordion', standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, schemas: [CUSTOM_ELEMENTS_SCHEMA], template: "<bm-accordion\n [size]=\"size()\"\n [heading]=\"heading()\"\n [attr.open]=\"open() ? '' : null\"\n [attr.defaultOpen]=\"defaultOpen() ? '' : null\"\n [id]=\"id()\"\n (bm-toggle)=\"onBmToggle($event)\"\n>\n <ng-content></ng-content>\n</bm-accordion>\n", styles: [":host{display:block}\n"] }]
|
|
55
|
+
}] });
|
|
56
|
+
|
|
57
|
+
// AUTO-GENERATED
|
|
58
|
+
|
|
59
|
+
/**
|
|
60
|
+
* Generated bundle index. Do not edit.
|
|
61
|
+
*/
|
|
62
|
+
|
|
63
|
+
export { AccordionComponent };
|
|
64
|
+
//# sourceMappingURL=viasat-beam-web-components-angular-src-lib-accordion.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"viasat-beam-web-components-angular-src-lib-accordion.mjs","sources":["../../../../libs/web-components-angular/src/lib/accordion/accordion.component.ts","../../../../libs/web-components-angular/src/lib/accordion/accordion.component.html","../../../../libs/web-components-angular/src/lib/accordion/index.ts","../../../../libs/web-components-angular/src/lib/accordion/viasat-beam-web-components-angular-src-lib-accordion.ts"],"sourcesContent":["/**\n * AUTO-GENERATED - DO NOT EDIT MANUALLY\n *\n * Angular wrapper for <bm-accordion>\n * Generated from: libs/web-components/src/lib/Accordion/Accordion.ts\n *\n * Re-generate: npx nx run web-components-angular:generate\n * \n * @slot default - Specify body content for the Accordion\n * @slot icon - Display an icon before the Accordion heading\n * @slot heading - Specify heading content for the Accordion\n */\n\nimport {\n CUSTOM_ELEMENTS_SCHEMA,\n ChangeDetectionStrategy,\n Component,\n booleanAttribute,\n input,\n output,\n} from '@angular/core';\n\nimport '@viasat/beam-web-components/Accordion';\n\n@Component({\n selector: 'bm-ng-accordion',\n standalone: true,\n templateUrl: './accordion.component.html',\n styleUrl: './accordion.component.scss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n})\nexport class AccordionComponent {\n /**\n * Specify size of an Accordion\n * @default 'md'\n */\n size = input<'sm' | 'md' | 'lg' | undefined>('md');\n\n /**\n * Specify heading content for the Accordion\n */\n heading = input<string>();\n\n /**\n * Specify if an Accordion is open.\nIf this is specified, the component becomes controlled\n * @default false\n */\n open = input(false, { transform: booleanAttribute });\n\n /**\n * Specify if an Accordion is open by default\n * @default false\n */\n defaultOpen = input(false, { transform: booleanAttribute });\n\n /**\n * Unique identifier of Accordion\n */\n id = input<string>();\n\n /**\n * Dispatched when the Accordion is toggled\n */\n bmToggle = output<CustomEvent>();\n\n onBmToggle(event: CustomEvent): void {\n this.bmToggle.emit(event);\n }\n}\n","<bm-accordion\n [size]=\"size()\"\n [heading]=\"heading()\"\n [attr.open]=\"open() ? '' : null\"\n [attr.defaultOpen]=\"defaultOpen() ? '' : null\"\n [id]=\"id()\"\n (bm-toggle)=\"onBmToggle($event)\"\n>\n <ng-content></ng-content>\n</bm-accordion>\n","// AUTO-GENERATED\nexport * from './accordion.component';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;AAAA;;;;;;;;;;;AAWG;MAqBU,kBAAkB,CAAA;AAC7B;;;AAGG;AACH,IAAA,IAAI,GAAG,KAAK,CAAiC,IAAI,CAAC;AAElD;;AAEG;IACH,OAAO,GAAG,KAAK,EAAU;AAEzB;;;;AAIG;IACH,IAAI,GAAG,KAAK,CAAC,KAAK,EAAE,EAAE,SAAS,EAAE,gBAAgB,EAAE,CAAC;AAEpD;;;AAGG;IACH,WAAW,GAAG,KAAK,CAAC,KAAK,EAAE,EAAE,SAAS,EAAE,gBAAgB,EAAE,CAAC;AAE3D;;AAEG;IACH,EAAE,GAAG,KAAK,EAAU;AAEpB;;AAEG;IACH,QAAQ,GAAG,MAAM,EAAe;AAEhC,IAAA,UAAU,CAAC,KAAkB,EAAA;AAC3B,QAAA,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC;IAC3B;wGArCW,kBAAkB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;AAAlB,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,kBAAkB,2tBChC/B,mQAUA,EAAA,MAAA,EAAA,CAAA,wBAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA;;4FDsBa,kBAAkB,EAAA,UAAA,EAAA,CAAA;kBAR9B,SAAS;+BACE,iBAAiB,EAAA,UAAA,EACf,IAAI,EAAA,eAAA,EAGC,uBAAuB,CAAC,MAAM,EAAA,OAAA,EACtC,CAAC,sBAAsB,CAAC,EAAA,QAAA,EAAA,mQAAA,EAAA,MAAA,EAAA,CAAA,wBAAA,CAAA,EAAA;;;AE9BnC;;ACAA;;AAEG;;;;"}
|
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
import * as i0 from '@angular/core';
|
|
2
|
+
import { input, booleanAttribute, output, CUSTOM_ELEMENTS_SCHEMA, ChangeDetectionStrategy, Component } from '@angular/core';
|
|
3
|
+
import '@viasat/beam-web-components/Alert';
|
|
4
|
+
|
|
5
|
+
/**
|
|
6
|
+
* AUTO-GENERATED - DO NOT EDIT MANUALLY
|
|
7
|
+
*
|
|
8
|
+
* Angular wrapper for <bm-alert>
|
|
9
|
+
* Generated from: libs/web-components/src/lib/Alert/Alert.ts
|
|
10
|
+
*
|
|
11
|
+
* Re-generate: npx nx run web-components-angular:generate
|
|
12
|
+
*
|
|
13
|
+
* @slot icon - Specify a different icon for the Alert
|
|
14
|
+
* @slot heading - Specify the heading text for Alert or pass the `heading` attribute to set the heading
|
|
15
|
+
* @slot body - Specify the body text for Alert or pass the `body` attribute to set the body
|
|
16
|
+
* @slot actions - Specify if actions display on the Alert
|
|
17
|
+
*/
|
|
18
|
+
class AlertComponent {
|
|
19
|
+
/**
|
|
20
|
+
* Specify the heading text for Alert
|
|
21
|
+
*/
|
|
22
|
+
heading = input();
|
|
23
|
+
/**
|
|
24
|
+
* Specify the body text for Alert
|
|
25
|
+
*/
|
|
26
|
+
body = input();
|
|
27
|
+
/**
|
|
28
|
+
* Specify the size of the Alert
|
|
29
|
+
* @default 'sm'
|
|
30
|
+
*/
|
|
31
|
+
size = input('sm');
|
|
32
|
+
/**
|
|
33
|
+
* Specify if the Alert has no border radius
|
|
34
|
+
* @default false
|
|
35
|
+
*/
|
|
36
|
+
fullWidth = input(false, { transform: booleanAttribute });
|
|
37
|
+
/**
|
|
38
|
+
* Specify the theme of the Alert. By default it inherits the theme from the parent
|
|
39
|
+
*/
|
|
40
|
+
theme = input();
|
|
41
|
+
/**
|
|
42
|
+
* Specify the appearance of the Alert
|
|
43
|
+
* @default 'infoPrimary'
|
|
44
|
+
*/
|
|
45
|
+
appearance = input('infoPrimary');
|
|
46
|
+
/**
|
|
47
|
+
* Specify if the Alert is hidden
|
|
48
|
+
* @default false
|
|
49
|
+
*/
|
|
50
|
+
hidden = input(false, { transform: booleanAttribute });
|
|
51
|
+
/**
|
|
52
|
+
* Specify if the icon displays on the Alert
|
|
53
|
+
* @default false
|
|
54
|
+
*/
|
|
55
|
+
hideIcon = input(false, { transform: booleanAttribute });
|
|
56
|
+
/**
|
|
57
|
+
* Specify if the Alert can be dismissed
|
|
58
|
+
* @default false
|
|
59
|
+
*/
|
|
60
|
+
dismissible = input(false, { transform: booleanAttribute });
|
|
61
|
+
/**
|
|
62
|
+
* Prevent autofocus on show
|
|
63
|
+
* @default false
|
|
64
|
+
*/
|
|
65
|
+
disableAutoFocus = input(false, { transform: booleanAttribute });
|
|
66
|
+
/**
|
|
67
|
+
* Prevent Escape from closing
|
|
68
|
+
* @default false
|
|
69
|
+
*/
|
|
70
|
+
disableCloseOnEscape = input(false, { transform: booleanAttribute });
|
|
71
|
+
/**
|
|
72
|
+
* Dispatched when the Alert has been dismissed
|
|
73
|
+
*/
|
|
74
|
+
bmDismiss = output();
|
|
75
|
+
onBmDismiss(event) {
|
|
76
|
+
this.bmDismiss.emit(event);
|
|
77
|
+
}
|
|
78
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: AlertComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
79
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "19.2.18", type: AlertComponent, isStandalone: true, selector: "bm-ng-alert", inputs: { heading: { classPropertyName: "heading", publicName: "heading", isSignal: true, isRequired: false, transformFunction: null }, body: { classPropertyName: "body", publicName: "body", isSignal: true, isRequired: false, transformFunction: null }, size: { classPropertyName: "size", publicName: "size", isSignal: true, isRequired: false, transformFunction: null }, fullWidth: { classPropertyName: "fullWidth", publicName: "fullWidth", isSignal: true, isRequired: false, transformFunction: null }, theme: { classPropertyName: "theme", publicName: "theme", isSignal: true, isRequired: false, transformFunction: null }, appearance: { classPropertyName: "appearance", publicName: "appearance", isSignal: true, isRequired: false, transformFunction: null }, hidden: { classPropertyName: "hidden", publicName: "hidden", isSignal: true, isRequired: false, transformFunction: null }, hideIcon: { classPropertyName: "hideIcon", publicName: "hideIcon", isSignal: true, isRequired: false, transformFunction: null }, dismissible: { classPropertyName: "dismissible", publicName: "dismissible", isSignal: true, isRequired: false, transformFunction: null }, disableAutoFocus: { classPropertyName: "disableAutoFocus", publicName: "disableAutoFocus", isSignal: true, isRequired: false, transformFunction: null }, disableCloseOnEscape: { classPropertyName: "disableCloseOnEscape", publicName: "disableCloseOnEscape", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { bmDismiss: "bmDismiss" }, ngImport: i0, template: "<bm-alert\n [heading]=\"heading()\"\n [body]=\"body()\"\n [size]=\"size()\"\n [attr.fullWidth]=\"fullWidth() ? '' : null\"\n [theme]=\"theme()\"\n [appearance]=\"appearance()\"\n [attr.hidden]=\"hidden() ? '' : null\"\n [attr.hideIcon]=\"hideIcon() ? '' : null\"\n [attr.dismissible]=\"dismissible() ? '' : null\"\n [attr.disableAutoFocus]=\"disableAutoFocus() ? '' : null\"\n [attr.disableCloseOnEscape]=\"disableCloseOnEscape() ? '' : null\"\n (bm-dismiss)=\"onBmDismiss($event)\"\n>\n <ng-content></ng-content>\n</bm-alert>\n", styles: [":host{display:block}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
80
|
+
}
|
|
81
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: AlertComponent, decorators: [{
|
|
82
|
+
type: Component,
|
|
83
|
+
args: [{ selector: 'bm-ng-alert', standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, schemas: [CUSTOM_ELEMENTS_SCHEMA], template: "<bm-alert\n [heading]=\"heading()\"\n [body]=\"body()\"\n [size]=\"size()\"\n [attr.fullWidth]=\"fullWidth() ? '' : null\"\n [theme]=\"theme()\"\n [appearance]=\"appearance()\"\n [attr.hidden]=\"hidden() ? '' : null\"\n [attr.hideIcon]=\"hideIcon() ? '' : null\"\n [attr.dismissible]=\"dismissible() ? '' : null\"\n [attr.disableAutoFocus]=\"disableAutoFocus() ? '' : null\"\n [attr.disableCloseOnEscape]=\"disableCloseOnEscape() ? '' : null\"\n (bm-dismiss)=\"onBmDismiss($event)\"\n>\n <ng-content></ng-content>\n</bm-alert>\n", styles: [":host{display:block}\n"] }]
|
|
84
|
+
}] });
|
|
85
|
+
|
|
86
|
+
// AUTO-GENERATED
|
|
87
|
+
|
|
88
|
+
/**
|
|
89
|
+
* Generated bundle index. Do not edit.
|
|
90
|
+
*/
|
|
91
|
+
|
|
92
|
+
export { AlertComponent };
|
|
93
|
+
//# sourceMappingURL=viasat-beam-web-components-angular-src-lib-alert.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"viasat-beam-web-components-angular-src-lib-alert.mjs","sources":["../../../../libs/web-components-angular/src/lib/alert/alert.component.ts","../../../../libs/web-components-angular/src/lib/alert/alert.component.html","../../../../libs/web-components-angular/src/lib/alert/index.ts","../../../../libs/web-components-angular/src/lib/alert/viasat-beam-web-components-angular-src-lib-alert.ts"],"sourcesContent":["/**\n * AUTO-GENERATED - DO NOT EDIT MANUALLY\n *\n * Angular wrapper for <bm-alert>\n * Generated from: libs/web-components/src/lib/Alert/Alert.ts\n *\n * Re-generate: npx nx run web-components-angular:generate\n * \n * @slot icon - Specify a different icon for the Alert\n * @slot heading - Specify the heading text for Alert or pass the `heading` attribute to set the heading\n * @slot body - Specify the body text for Alert or pass the `body` attribute to set the body\n * @slot actions - Specify if actions display on the Alert\n */\n\nimport {\n CUSTOM_ELEMENTS_SCHEMA,\n ChangeDetectionStrategy,\n Component,\n booleanAttribute,\n input,\n output,\n} from '@angular/core';\n\nimport '@viasat/beam-web-components/Alert';\n\n@Component({\n selector: 'bm-ng-alert',\n standalone: true,\n templateUrl: './alert.component.html',\n styleUrl: './alert.component.scss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n})\nexport class AlertComponent {\n /**\n * Specify the heading text for Alert\n */\n heading = input<string>();\n\n /**\n * Specify the body text for Alert\n */\n body = input<string>();\n\n /**\n * Specify the size of the Alert\n * @default 'sm'\n */\n size = input<'sm' | 'md'>('sm');\n\n /**\n * Specify if the Alert has no border radius\n * @default false\n */\n fullWidth = input(false, { transform: booleanAttribute });\n\n /**\n * Specify the theme of the Alert. By default it inherits the theme from the parent\n */\n theme = input<'light' | 'dark'>();\n\n /**\n * Specify the appearance of the Alert\n * @default 'infoPrimary'\n */\n appearance = input<'infoPrimary' | 'infoSecondary' | 'positive' | 'warning' | 'negative'>('infoPrimary');\n\n /**\n * Specify if the Alert is hidden\n * @default false\n */\n hidden = input(false, { transform: booleanAttribute });\n\n /**\n * Specify if the icon displays on the Alert\n * @default false\n */\n hideIcon = input(false, { transform: booleanAttribute });\n\n /**\n * Specify if the Alert can be dismissed\n * @default false\n */\n dismissible = input(false, { transform: booleanAttribute });\n\n /**\n * Prevent autofocus on show\n * @default false\n */\n disableAutoFocus = input(false, { transform: booleanAttribute });\n\n /**\n * Prevent Escape from closing\n * @default false\n */\n disableCloseOnEscape = input(false, { transform: booleanAttribute });\n\n /**\n * Dispatched when the Alert has been dismissed\n */\n bmDismiss = output<CustomEvent>();\n\n onBmDismiss(event: CustomEvent): void {\n this.bmDismiss.emit(event);\n }\n}\n","<bm-alert\n [heading]=\"heading()\"\n [body]=\"body()\"\n [size]=\"size()\"\n [attr.fullWidth]=\"fullWidth() ? '' : null\"\n [theme]=\"theme()\"\n [appearance]=\"appearance()\"\n [attr.hidden]=\"hidden() ? '' : null\"\n [attr.hideIcon]=\"hideIcon() ? '' : null\"\n [attr.dismissible]=\"dismissible() ? '' : null\"\n [attr.disableAutoFocus]=\"disableAutoFocus() ? '' : null\"\n [attr.disableCloseOnEscape]=\"disableCloseOnEscape() ? '' : null\"\n (bm-dismiss)=\"onBmDismiss($event)\"\n>\n <ng-content></ng-content>\n</bm-alert>\n","// AUTO-GENERATED\nexport * from './alert.component';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;AAAA;;;;;;;;;;;;AAYG;MAqBU,cAAc,CAAA;AACzB;;AAEG;IACH,OAAO,GAAG,KAAK,EAAU;AAEzB;;AAEG;IACH,IAAI,GAAG,KAAK,EAAU;AAEtB;;;AAGG;AACH,IAAA,IAAI,GAAG,KAAK,CAAc,IAAI,CAAC;AAE/B;;;AAGG;IACH,SAAS,GAAG,KAAK,CAAC,KAAK,EAAE,EAAE,SAAS,EAAE,gBAAgB,EAAE,CAAC;AAEzD;;AAEG;IACH,KAAK,GAAG,KAAK,EAAoB;AAEjC;;;AAGG;AACH,IAAA,UAAU,GAAG,KAAK,CAAwE,aAAa,CAAC;AAExG;;;AAGG;IACH,MAAM,GAAG,KAAK,CAAC,KAAK,EAAE,EAAE,SAAS,EAAE,gBAAgB,EAAE,CAAC;AAEtD;;;AAGG;IACH,QAAQ,GAAG,KAAK,CAAC,KAAK,EAAE,EAAE,SAAS,EAAE,gBAAgB,EAAE,CAAC;AAExD;;;AAGG;IACH,WAAW,GAAG,KAAK,CAAC,KAAK,EAAE,EAAE,SAAS,EAAE,gBAAgB,EAAE,CAAC;AAE3D;;;AAGG;IACH,gBAAgB,GAAG,KAAK,CAAC,KAAK,EAAE,EAAE,SAAS,EAAE,gBAAgB,EAAE,CAAC;AAEhE;;;AAGG;IACH,oBAAoB,GAAG,KAAK,CAAC,KAAK,EAAE,EAAE,SAAS,EAAE,gBAAgB,EAAE,CAAC;AAEpE;;AAEG;IACH,SAAS,GAAG,MAAM,EAAe;AAEjC,IAAA,WAAW,CAAC,KAAkB,EAAA;AAC5B,QAAA,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC;IAC5B;wGAvEW,cAAc,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;AAAd,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,cAAc,uiDCjC3B,+hBAgBA,EAAA,MAAA,EAAA,CAAA,wBAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA;;4FDiBa,cAAc,EAAA,UAAA,EAAA,CAAA;kBAR1B,SAAS;+BACE,aAAa,EAAA,UAAA,EACX,IAAI,EAAA,eAAA,EAGC,uBAAuB,CAAC,MAAM,EAAA,OAAA,EACtC,CAAC,sBAAsB,CAAC,EAAA,QAAA,EAAA,+hBAAA,EAAA,MAAA,EAAA,CAAA,wBAAA,CAAA,EAAA;;;AE/BnC;;ACAA;;AAEG;;;;"}
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
import * as i0 from '@angular/core';
|
|
2
|
+
import { input, booleanAttribute, CUSTOM_ELEMENTS_SCHEMA, ChangeDetectionStrategy, Component } from '@angular/core';
|
|
3
|
+
import '@viasat/beam-web-components/Avatar';
|
|
4
|
+
|
|
5
|
+
/**
|
|
6
|
+
* AUTO-GENERATED - DO NOT EDIT MANUALLY
|
|
7
|
+
*
|
|
8
|
+
* Angular wrapper for <bm-avatar-group>
|
|
9
|
+
* Generated from: libs/web-components/src/lib/Avatar/AvatarGroup.ts
|
|
10
|
+
*
|
|
11
|
+
* Re-generate: npx nx run web-components-angular:generate
|
|
12
|
+
*
|
|
13
|
+
* @slot default - Add Avatars to create a group
|
|
14
|
+
*/
|
|
15
|
+
class AvatarGroupComponent {
|
|
16
|
+
/**
|
|
17
|
+
* Specify if the AvatarGroup wraps
|
|
18
|
+
* @default false
|
|
19
|
+
*/
|
|
20
|
+
wrapping = input(false, { transform: booleanAttribute });
|
|
21
|
+
/**
|
|
22
|
+
* Specify the max number of avatars displayed in the group.
|
|
23
|
+
* @default 5
|
|
24
|
+
*/
|
|
25
|
+
maxCount = input(5);
|
|
26
|
+
/**
|
|
27
|
+
* Specify the size of all Avatars
|
|
28
|
+
* @default 'md'
|
|
29
|
+
*/
|
|
30
|
+
size = input('md');
|
|
31
|
+
/**
|
|
32
|
+
* Specify the kind of the group.
|
|
33
|
+
* @default 'stacked'
|
|
34
|
+
*/
|
|
35
|
+
layout = input('stacked');
|
|
36
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: AvatarGroupComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
37
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "19.2.18", type: AvatarGroupComponent, isStandalone: true, selector: "bm-ng-avatar-group", inputs: { wrapping: { classPropertyName: "wrapping", publicName: "wrapping", isSignal: true, isRequired: false, transformFunction: null }, maxCount: { classPropertyName: "maxCount", publicName: "maxCount", isSignal: true, isRequired: false, transformFunction: null }, size: { classPropertyName: "size", publicName: "size", isSignal: true, isRequired: false, transformFunction: null }, layout: { classPropertyName: "layout", publicName: "layout", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: "<bm-avatar-group\n [attr.wrapping]=\"wrapping() ? '' : null\"\n [maxCount]=\"maxCount()\"\n [size]=\"size()\"\n [layout]=\"layout()\"\n>\n <ng-content></ng-content>\n</bm-avatar-group>\n", styles: [":host{display:block}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
38
|
+
}
|
|
39
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.18", ngImport: i0, type: AvatarGroupComponent, decorators: [{
|
|
40
|
+
type: Component,
|
|
41
|
+
args: [{ selector: 'bm-ng-avatar-group', standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, schemas: [CUSTOM_ELEMENTS_SCHEMA], template: "<bm-avatar-group\n [attr.wrapping]=\"wrapping() ? '' : null\"\n [maxCount]=\"maxCount()\"\n [size]=\"size()\"\n [layout]=\"layout()\"\n>\n <ng-content></ng-content>\n</bm-avatar-group>\n", styles: [":host{display:block}\n"] }]
|
|
42
|
+
}] });
|
|
43
|
+
|
|
44
|
+
// AUTO-GENERATED
|
|
45
|
+
|
|
46
|
+
/**
|
|
47
|
+
* Generated bundle index. Do not edit.
|
|
48
|
+
*/
|
|
49
|
+
|
|
50
|
+
export { AvatarGroupComponent };
|
|
51
|
+
//# sourceMappingURL=viasat-beam-web-components-angular-src-lib-avatar-group.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"viasat-beam-web-components-angular-src-lib-avatar-group.mjs","sources":["../../../../libs/web-components-angular/src/lib/avatar-group/avatar-group.component.ts","../../../../libs/web-components-angular/src/lib/avatar-group/avatar-group.component.html","../../../../libs/web-components-angular/src/lib/avatar-group/index.ts","../../../../libs/web-components-angular/src/lib/avatar-group/viasat-beam-web-components-angular-src-lib-avatar-group.ts"],"sourcesContent":["/**\n * AUTO-GENERATED - DO NOT EDIT MANUALLY\n *\n * Angular wrapper for <bm-avatar-group>\n * Generated from: libs/web-components/src/lib/Avatar/AvatarGroup.ts\n *\n * Re-generate: npx nx run web-components-angular:generate\n * \n * @slot default - Add Avatars to create a group\n */\n\nimport {\n CUSTOM_ELEMENTS_SCHEMA,\n ChangeDetectionStrategy,\n Component,\n booleanAttribute,\n input,\n} from '@angular/core';\n\nimport '@viasat/beam-web-components/Avatar';\n\n@Component({\n selector: 'bm-ng-avatar-group',\n standalone: true,\n templateUrl: './avatar-group.component.html',\n styleUrl: './avatar-group.component.scss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n})\nexport class AvatarGroupComponent {\n /**\n * Specify if the AvatarGroup wraps\n * @default false\n */\n wrapping = input(false, { transform: booleanAttribute });\n\n /**\n * Specify the max number of avatars displayed in the group.\n * @default 5\n */\n maxCount = input(5);\n\n /**\n * Specify the size of all Avatars\n * @default 'md'\n */\n size = input<'xs' | 'sm' | 'md' | 'lg' | 'xl'>('md');\n\n /**\n * Specify the kind of the group.\n * @default 'stacked'\n */\n layout = input<'stacked' | 'spaced' | undefined>('stacked');\n\n\n}\n","<bm-avatar-group\n [attr.wrapping]=\"wrapping() ? '' : null\"\n [maxCount]=\"maxCount()\"\n [size]=\"size()\"\n [layout]=\"layout()\"\n>\n <ng-content></ng-content>\n</bm-avatar-group>\n","// AUTO-GENERATED\nexport * from './avatar-group.component';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;AAAA;;;;;;;;;AASG;MAoBU,oBAAoB,CAAA;AAC/B;;;AAGG;IACH,QAAQ,GAAG,KAAK,CAAC,KAAK,EAAE,EAAE,SAAS,EAAE,gBAAgB,EAAE,CAAC;AAExD;;;AAGG;AACH,IAAA,QAAQ,GAAG,KAAK,CAAC,CAAC,CAAC;AAEnB;;;AAGG;AACH,IAAA,IAAI,GAAG,KAAK,CAAmC,IAAI,CAAC;AAEpD;;;AAGG;AACH,IAAA,MAAM,GAAG,KAAK,CAAmC,SAAS,CAAC;wGAvBhD,oBAAoB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;AAApB,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,oBAAoB,4kBC7BjC,iMAQA,EAAA,MAAA,EAAA,CAAA,wBAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA;;4FDqBa,oBAAoB,EAAA,UAAA,EAAA,CAAA;kBARhC,SAAS;+BACE,oBAAoB,EAAA,UAAA,EAClB,IAAI,EAAA,eAAA,EAGC,uBAAuB,CAAC,MAAM,EAAA,OAAA,EACtC,CAAC,sBAAsB,CAAC,EAAA,QAAA,EAAA,iMAAA,EAAA,MAAA,EAAA,CAAA,wBAAA,CAAA,EAAA;;;AE3BnC;;ACAA;;AAEG;;;;"}
|