@arclux/arc-ui-angular 1.0.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.
Files changed (204) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +56 -0
  3. package/package.json +71 -0
  4. package/src/application/AppShell.ts +14 -0
  5. package/src/application/AuthShell.ts +14 -0
  6. package/src/application/Breadcrumb.ts +15 -0
  7. package/src/application/BreadcrumbItem.ts +14 -0
  8. package/src/application/Container.ts +14 -0
  9. package/src/application/DashboardGrid.ts +16 -0
  10. package/src/application/Footer.ts +15 -0
  11. package/src/application/NavItem.ts +16 -0
  12. package/src/application/NavigationMenu.ts +15 -0
  13. package/src/application/NotificationPanel.ts +18 -0
  14. package/src/application/PageHeader.ts +15 -0
  15. package/src/application/PageLayout.ts +16 -0
  16. package/src/application/Resizable.ts +19 -0
  17. package/src/application/ScrollSpy.ts +18 -0
  18. package/src/application/Section.ts +14 -0
  19. package/src/application/SettingsLayout.ts +14 -0
  20. package/src/application/Sidebar.ts +18 -0
  21. package/src/application/SidebarLink.ts +15 -0
  22. package/src/application/SidebarSection.ts +17 -0
  23. package/src/application/SplitPane.ts +18 -0
  24. package/src/application/SpyLink.ts +14 -0
  25. package/src/application/StatusBar.ts +14 -0
  26. package/src/application/Toolbar.ts +16 -0
  27. package/src/application/TopBar.ts +17 -0
  28. package/src/application/index.ts +23 -0
  29. package/src/content/Accordion.ts +15 -0
  30. package/src/content/AccordionItem.ts +14 -0
  31. package/src/content/AnimatedNumber.ts +20 -0
  32. package/src/content/AspectRatio.ts +14 -0
  33. package/src/content/Avatar.ts +16 -0
  34. package/src/content/AvatarGroup.ts +15 -0
  35. package/src/content/Badge.ts +14 -0
  36. package/src/content/Callout.ts +14 -0
  37. package/src/content/Card.ts +14 -0
  38. package/src/content/Carousel.ts +21 -0
  39. package/src/content/CodeBlock.ts +17 -0
  40. package/src/content/Collapsible.ts +16 -0
  41. package/src/content/ColorSwatch.ts +16 -0
  42. package/src/content/Column.ts +17 -0
  43. package/src/content/DataTable.ts +23 -0
  44. package/src/content/Divider.ts +16 -0
  45. package/src/content/EmptyState.ts +15 -0
  46. package/src/content/FeatureCard.ts +17 -0
  47. package/src/content/Highlight.ts +16 -0
  48. package/src/content/Icon.ts +16 -0
  49. package/src/content/InfiniteScroll.ts +18 -0
  50. package/src/content/Kbd.ts +13 -0
  51. package/src/content/Link.ts +17 -0
  52. package/src/content/Markdown.ts +14 -0
  53. package/src/content/Marquee.ts +17 -0
  54. package/src/content/Meter.ts +20 -0
  55. package/src/content/ScrollArea.ts +15 -0
  56. package/src/content/Skeleton.ts +16 -0
  57. package/src/content/Spinner.ts +15 -0
  58. package/src/content/Stack.ts +18 -0
  59. package/src/content/Stat.ts +15 -0
  60. package/src/content/Step.ts +14 -0
  61. package/src/content/Stepper.ts +15 -0
  62. package/src/content/Table.ts +17 -0
  63. package/src/content/Tag.ts +17 -0
  64. package/src/content/Text.ts +15 -0
  65. package/src/content/Timeline.ts +14 -0
  66. package/src/content/TimelineItem.ts +15 -0
  67. package/src/content/Truncate.ts +16 -0
  68. package/src/content/ValueCard.ts +16 -0
  69. package/src/content/index.ts +37 -0
  70. package/src/feedback/Alert.ts +17 -0
  71. package/src/feedback/CommandItem.ts +15 -0
  72. package/src/feedback/CommandPalette.ts +20 -0
  73. package/src/feedback/ContextMenu.ts +21 -0
  74. package/src/feedback/Dialog.ts +19 -0
  75. package/src/feedback/DropdownMenu.ts +18 -0
  76. package/src/feedback/HoverCard.ts +19 -0
  77. package/src/feedback/Modal.ts +19 -0
  78. package/src/feedback/NotificationPanel.ts +18 -0
  79. package/src/feedback/Popover.ts +17 -0
  80. package/src/feedback/Progress.ts +18 -0
  81. package/src/feedback/Sheet.ts +18 -0
  82. package/src/feedback/Toast.ts +17 -0
  83. package/src/feedback/Tooltip.ts +17 -0
  84. package/src/index.ts +116 -0
  85. package/src/input/Button.ts +18 -0
  86. package/src/input/Calendar.ts +21 -0
  87. package/src/input/Checkbox.ts +20 -0
  88. package/src/input/Chip.ts +17 -0
  89. package/src/input/ColorPicker.ts +24 -0
  90. package/src/input/Combobox.ts +22 -0
  91. package/src/input/CopyButton.ts +17 -0
  92. package/src/input/DatePicker.ts +24 -0
  93. package/src/input/FileUpload.ts +22 -0
  94. package/src/input/Form.ts +18 -0
  95. package/src/input/IconButton.ts +21 -0
  96. package/src/input/Input.ts +24 -0
  97. package/src/input/MultiSelect.ts +22 -0
  98. package/src/input/NumberInput.ts +20 -0
  99. package/src/input/OtpInput.ts +18 -0
  100. package/src/input/PinInput.ts +22 -0
  101. package/src/input/Radio.ts +15 -0
  102. package/src/input/RadioGroup.ts +19 -0
  103. package/src/input/Rating.ts +18 -0
  104. package/src/input/Search.ts +25 -0
  105. package/src/input/SegmentedControl.ts +17 -0
  106. package/src/input/Select.ts +21 -0
  107. package/src/input/Slider.ts +21 -0
  108. package/src/input/SortableList.ts +20 -0
  109. package/src/input/Suggestion.ts +14 -0
  110. package/src/input/Textarea.ts +24 -0
  111. package/src/input/ThemeToggle.ts +17 -0
  112. package/src/input/Toggle.ts +18 -0
  113. package/src/layout/AppShell.ts +17 -0
  114. package/src/layout/AuthShell.ts +14 -0
  115. package/src/layout/Container.ts +14 -0
  116. package/src/layout/DashboardGrid.ts +16 -0
  117. package/src/layout/PageHeader.ts +15 -0
  118. package/src/layout/PageLayout.ts +16 -0
  119. package/src/layout/Resizable.ts +19 -0
  120. package/src/layout/Section.ts +14 -0
  121. package/src/layout/SettingsLayout.ts +14 -0
  122. package/src/layout/SplitPane.ts +18 -0
  123. package/src/layout/StatusBar.ts +14 -0
  124. package/src/layout/Toolbar.ts +16 -0
  125. package/src/navigation/Breadcrumb.ts +15 -0
  126. package/src/navigation/BreadcrumbItem.ts +14 -0
  127. package/src/navigation/Drawer.ts +17 -0
  128. package/src/navigation/Footer.ts +15 -0
  129. package/src/navigation/Link.ts +17 -0
  130. package/src/navigation/NavItem.ts +16 -0
  131. package/src/navigation/NavigationMenu.ts +19 -0
  132. package/src/navigation/Pagination.ts +17 -0
  133. package/src/navigation/ScrollSpy.ts +18 -0
  134. package/src/navigation/ScrollToTop.ts +18 -0
  135. package/src/navigation/Sidebar.ts +18 -0
  136. package/src/navigation/SidebarLink.ts +15 -0
  137. package/src/navigation/SidebarSection.ts +17 -0
  138. package/src/navigation/SpyLink.ts +14 -0
  139. package/src/navigation/Tab.ts +14 -0
  140. package/src/navigation/Tabs.ts +17 -0
  141. package/src/navigation/TopBar.ts +18 -0
  142. package/src/navigation/TreeItem.ts +16 -0
  143. package/src/navigation/TreeView.ts +17 -0
  144. package/src/reactive/Accordion.ts +15 -0
  145. package/src/reactive/AccordionItem.ts +14 -0
  146. package/src/reactive/Alert.ts +17 -0
  147. package/src/reactive/Button.ts +18 -0
  148. package/src/reactive/Calendar.ts +21 -0
  149. package/src/reactive/Carousel.ts +21 -0
  150. package/src/reactive/Checkbox.ts +20 -0
  151. package/src/reactive/Chip.ts +17 -0
  152. package/src/reactive/Collapsible.ts +16 -0
  153. package/src/reactive/ColorPicker.ts +24 -0
  154. package/src/reactive/Column.ts +17 -0
  155. package/src/reactive/Combobox.ts +22 -0
  156. package/src/reactive/CommandItem.ts +15 -0
  157. package/src/reactive/CommandPalette.ts +20 -0
  158. package/src/reactive/ContextMenu.ts +21 -0
  159. package/src/reactive/CopyButton.ts +17 -0
  160. package/src/reactive/DataTable.ts +23 -0
  161. package/src/reactive/DatePicker.ts +24 -0
  162. package/src/reactive/Dialog.ts +19 -0
  163. package/src/reactive/Drawer.ts +17 -0
  164. package/src/reactive/DropdownMenu.ts +18 -0
  165. package/src/reactive/FileUpload.ts +22 -0
  166. package/src/reactive/Form.ts +18 -0
  167. package/src/reactive/HoverCard.ts +19 -0
  168. package/src/reactive/IconButton.ts +21 -0
  169. package/src/reactive/InfiniteScroll.ts +18 -0
  170. package/src/reactive/Input.ts +24 -0
  171. package/src/reactive/Modal.ts +19 -0
  172. package/src/reactive/MultiSelect.ts +22 -0
  173. package/src/reactive/NumberInput.ts +20 -0
  174. package/src/reactive/OtpInput.ts +18 -0
  175. package/src/reactive/Pagination.ts +17 -0
  176. package/src/reactive/PinInput.ts +22 -0
  177. package/src/reactive/Popover.ts +17 -0
  178. package/src/reactive/Progress.ts +18 -0
  179. package/src/reactive/Radio.ts +15 -0
  180. package/src/reactive/RadioGroup.ts +19 -0
  181. package/src/reactive/Rating.ts +18 -0
  182. package/src/reactive/ScrollToTop.ts +18 -0
  183. package/src/reactive/Search.ts +25 -0
  184. package/src/reactive/SegmentedControl.ts +17 -0
  185. package/src/reactive/Select.ts +21 -0
  186. package/src/reactive/Sheet.ts +18 -0
  187. package/src/reactive/Slider.ts +21 -0
  188. package/src/reactive/SortableList.ts +20 -0
  189. package/src/reactive/Suggestion.ts +14 -0
  190. package/src/reactive/Tab.ts +14 -0
  191. package/src/reactive/Tabs.ts +17 -0
  192. package/src/reactive/Tag.ts +17 -0
  193. package/src/reactive/Textarea.ts +24 -0
  194. package/src/reactive/ThemeToggle.ts +17 -0
  195. package/src/reactive/Toast.ts +17 -0
  196. package/src/reactive/Toggle.ts +18 -0
  197. package/src/reactive/Tooltip.ts +17 -0
  198. package/src/reactive/TreeItem.ts +16 -0
  199. package/src/reactive/TreeView.ts +17 -0
  200. package/src/reactive/Truncate.ts +16 -0
  201. package/src/reactive/index.ts +53 -0
  202. package/src/shared/MenuDivider.ts +13 -0
  203. package/src/shared/MenuItem.ts +16 -0
  204. package/src/shared/Option.ts +16 -0
@@ -0,0 +1,23 @@
1
+ // Auto-generated by @arclux/prism — do not edit manually
2
+
3
+ import { Component, CUSTOM_ELEMENTS_SCHEMA, Input, Output, EventEmitter } from '@angular/core';
4
+ import '@arclux/arc-ui';
5
+
6
+ @Component({
7
+ selector: 'arc-data-table',
8
+ standalone: true,
9
+ schemas: [CUSTOM_ELEMENTS_SCHEMA],
10
+ template: `<arc-data-table [attr.rows]="rows" [sortable]="sortable" [selectable]="selectable" [attr.sortColumn]="sortColumn" [attr.sortDirection]="sortDirection" [attr._columns]="_columns" [attr._selectedRows]="_selectedRows" (arc-sort)="arcSort.emit($event)" (arc-select-all)="arcSelectAll.emit($event)" (arc-row-select)="arcRowSelect.emit($event)"><ng-content /></arc-data-table>`,
11
+ })
12
+ export class DataTable {
13
+ @Input() rows: unknown[] = [];
14
+ @Input() sortable: boolean = false;
15
+ @Input() selectable: boolean = false;
16
+ @Input() sortColumn: string = '';
17
+ @Input() sortDirection: string = 'asc';
18
+ @Input() _columns: string = [];
19
+ @Input() _selectedRows: string = 'new Set()';
20
+ @Output() arcSort = new EventEmitter<CustomEvent>();
21
+ @Output() arcSelectAll = new EventEmitter<CustomEvent>();
22
+ @Output() arcRowSelect = new EventEmitter<CustomEvent>();
23
+ }
@@ -0,0 +1,24 @@
1
+ // Auto-generated by @arclux/prism — do not edit manually
2
+
3
+ import { Component, CUSTOM_ELEMENTS_SCHEMA, Input, Output, EventEmitter } from '@angular/core';
4
+ import '@arclux/arc-ui';
5
+
6
+ @Component({
7
+ selector: 'arc-date-picker',
8
+ standalone: true,
9
+ schemas: [CUSTOM_ELEMENTS_SCHEMA],
10
+ template: `<arc-date-picker [attr.value]="value" [attr.min]="min" [attr.max]="max" [attr.placeholder]="placeholder" [disabled]="disabled" [attr.label]="label" [attr._open]="_open" [attr._viewMonth]="_viewMonth" [attr._viewYear]="_viewYear" [attr._mode]="_mode" (arc-change)="arcChange.emit($event)"><ng-content /></arc-date-picker>`,
11
+ })
12
+ export class DatePicker {
13
+ @Input() value: string = '';
14
+ @Input() min: string = '';
15
+ @Input() max: string = '';
16
+ @Input() placeholder: string = 'Select date';
17
+ @Input() disabled: boolean = false;
18
+ @Input() label: string = '';
19
+ @Input() _open: string = false;
20
+ @Input() _viewMonth: string = 'today.getMonth()';
21
+ @Input() _viewYear: string = 'today.getFullYear()';
22
+ @Input() _mode: string = 'days';
23
+ @Output() arcChange = new EventEmitter<CustomEvent>();
24
+ }
@@ -0,0 +1,19 @@
1
+ // Auto-generated by @arclux/prism — do not edit manually
2
+
3
+ import { Component, CUSTOM_ELEMENTS_SCHEMA, Input, Output, EventEmitter } from '@angular/core';
4
+ import '@arclux/arc-ui';
5
+
6
+ @Component({
7
+ selector: 'arc-dialog',
8
+ standalone: true,
9
+ schemas: [CUSTOM_ELEMENTS_SCHEMA],
10
+ template: `<arc-dialog [open]="open" [attr.heading]="heading" [attr.message]="message" [attr.variant]="variant" (arc-confirm)="arcConfirm.emit($event)" (arc-cancel)="arcCancel.emit($event)"><ng-content /></arc-dialog>`,
11
+ })
12
+ export class Dialog {
13
+ @Input() open: boolean = false;
14
+ @Input() heading: string = '';
15
+ @Input() message: string = '';
16
+ @Input() variant: 'danger' = 'default';
17
+ @Output() arcConfirm = new EventEmitter<CustomEvent>();
18
+ @Output() arcCancel = new EventEmitter<CustomEvent>();
19
+ }
@@ -0,0 +1,17 @@
1
+ // Auto-generated by @arclux/prism — do not edit manually
2
+
3
+ import { Component, CUSTOM_ELEMENTS_SCHEMA, Input, Output, EventEmitter } from '@angular/core';
4
+ import '@arclux/arc-ui';
5
+
6
+ @Component({
7
+ selector: 'arc-drawer',
8
+ standalone: true,
9
+ schemas: [CUSTOM_ELEMENTS_SCHEMA],
10
+ template: `<arc-drawer [open]="open" [attr.position]="position" [attr.heading]="heading" (arc-close)="arcClose.emit($event)"><ng-content /></arc-drawer>`,
11
+ })
12
+ export class Drawer {
13
+ @Input() open: boolean = false;
14
+ @Input() position: 'left' | 'right' = 'left';
15
+ @Input() heading: string = '';
16
+ @Output() arcClose = new EventEmitter<CustomEvent>();
17
+ }
@@ -0,0 +1,18 @@
1
+ // Auto-generated by @arclux/prism — do not edit manually
2
+
3
+ import { Component, CUSTOM_ELEMENTS_SCHEMA, Input, Output, EventEmitter } from '@angular/core';
4
+ import '@arclux/arc-ui';
5
+
6
+ @Component({
7
+ selector: 'arc-dropdown-menu',
8
+ standalone: true,
9
+ schemas: [CUSTOM_ELEMENTS_SCHEMA],
10
+ template: `<arc-dropdown-menu [open]="open" [attr._focusedIndex]="_focusedIndex" [attr._children]="_children" (arc-close)="arcClose.emit($event)" (arc-select)="arcSelect.emit($event)"><ng-content /></arc-dropdown-menu>`,
11
+ })
12
+ export class DropdownMenu {
13
+ @Input() open: boolean = false;
14
+ @Input() _focusedIndex: string = -1;
15
+ @Input() _children: string = [];
16
+ @Output() arcClose = new EventEmitter<CustomEvent>();
17
+ @Output() arcSelect = new EventEmitter<CustomEvent>();
18
+ }
@@ -0,0 +1,22 @@
1
+ // Auto-generated by @arclux/prism — do not edit manually
2
+
3
+ import { Component, CUSTOM_ELEMENTS_SCHEMA, Input, Output, EventEmitter } from '@angular/core';
4
+ import '@arclux/arc-ui';
5
+
6
+ @Component({
7
+ selector: 'arc-file-upload',
8
+ standalone: true,
9
+ schemas: [CUSTOM_ELEMENTS_SCHEMA],
10
+ template: `<arc-file-upload [attr.accept]="accept" [multiple]="multiple" [attr.maxSize]="maxSize" [disabled]="disabled" [attr._files]="_files" [attr._dragOver]="_dragOver" [attr._error]="_error" (arc-change)="arcChange.emit($event)" (arc-remove)="arcRemove.emit($event)"><ng-content /></arc-file-upload>`,
11
+ })
12
+ export class FileUpload {
13
+ @Input() accept: string = '';
14
+ @Input() multiple: boolean = false;
15
+ @Input() maxSize: number = 0;
16
+ @Input() disabled: boolean = false;
17
+ @Input() _files: string = [];
18
+ @Input() _dragOver: string = false;
19
+ @Input() _error: string = '';
20
+ @Output() arcChange = new EventEmitter<CustomEvent>();
21
+ @Output() arcRemove = new EventEmitter<CustomEvent>();
22
+ }
@@ -0,0 +1,18 @@
1
+ // Auto-generated by @arclux/prism — do not edit manually
2
+
3
+ import { Component, CUSTOM_ELEMENTS_SCHEMA, Input, Output, EventEmitter } from '@angular/core';
4
+ import '@arclux/arc-ui';
5
+
6
+ @Component({
7
+ selector: 'arc-form',
8
+ standalone: true,
9
+ schemas: [CUSTOM_ELEMENTS_SCHEMA],
10
+ template: `<arc-form [attr.action]="action" [attr.method]="method" [novalidate]="novalidate" (arc-invalid)="arcInvalid.emit($event)" (arc-submit)="arcSubmit.emit($event)"><ng-content /></arc-form>`,
11
+ })
12
+ export class Form {
13
+ @Input() action: string = '';
14
+ @Input() method: string = '';
15
+ @Input() novalidate: boolean = false;
16
+ @Output() arcInvalid = new EventEmitter<CustomEvent>();
17
+ @Output() arcSubmit = new EventEmitter<CustomEvent>();
18
+ }
@@ -0,0 +1,19 @@
1
+ // Auto-generated by @arclux/prism — do not edit manually
2
+
3
+ import { Component, CUSTOM_ELEMENTS_SCHEMA, Input, Output, EventEmitter } from '@angular/core';
4
+ import '@arclux/arc-ui';
5
+
6
+ @Component({
7
+ selector: 'arc-hover-card',
8
+ standalone: true,
9
+ schemas: [CUSTOM_ELEMENTS_SCHEMA],
10
+ template: `<arc-hover-card [attr.position]="position" [attr.openDelay]="openDelay" [attr.closeDelay]="closeDelay" [attr._visible]="_visible" (arc-open)="arcOpen.emit($event)" (arc-close)="arcClose.emit($event)"><ng-content /></arc-hover-card>`,
11
+ })
12
+ export class HoverCard {
13
+ @Input() position: 'bottom' | 'top' | 'left' | 'right' = 'bottom';
14
+ @Input() openDelay: number = 400;
15
+ @Input() closeDelay: number = 300;
16
+ @Input() _visible: string = false;
17
+ @Output() arcOpen = new EventEmitter<CustomEvent>();
18
+ @Output() arcClose = new EventEmitter<CustomEvent>();
19
+ }
@@ -0,0 +1,21 @@
1
+ // Auto-generated by @arclux/prism — do not edit manually
2
+
3
+ import { Component, CUSTOM_ELEMENTS_SCHEMA, Input } from '@angular/core';
4
+ import '@arclux/arc-ui';
5
+
6
+ @Component({
7
+ selector: 'arc-icon-button',
8
+ standalone: true,
9
+ schemas: [CUSTOM_ELEMENTS_SCHEMA],
10
+ template: `<arc-icon-button [attr.name]="name" [attr.text]="text" [attr.variant]="variant" [attr.size]="size" [attr.label]="label" [attr.href]="href" [disabled]="disabled" [attr.type]="type"><ng-content /></arc-icon-button>`,
11
+ })
12
+ export class IconButton {
13
+ @Input() name: string = '';
14
+ @Input() text: string = '';
15
+ @Input() variant: 'ghost' | 'secondary' | 'primary' = 'ghost';
16
+ @Input() size: 'xs' | 'sm' | 'md' | 'lg' = 'md';
17
+ @Input() label: string = '';
18
+ @Input() href: string = '';
19
+ @Input() disabled: boolean = false;
20
+ @Input() type: string = 'button';
21
+ }
@@ -0,0 +1,18 @@
1
+ // Auto-generated by @arclux/prism — do not edit manually
2
+
3
+ import { Component, CUSTOM_ELEMENTS_SCHEMA, Input, Output, EventEmitter } from '@angular/core';
4
+ import '@arclux/arc-ui';
5
+
6
+ @Component({
7
+ selector: 'arc-infinite-scroll',
8
+ standalone: true,
9
+ schemas: [CUSTOM_ELEMENTS_SCHEMA],
10
+ template: `<arc-infinite-scroll [attr.threshold]="threshold" [loading]="loading" [finished]="finished" [disabled]="disabled" (arc-load-more)="arcLoadMore.emit($event)"><ng-content /></arc-infinite-scroll>`,
11
+ })
12
+ export class InfiniteScroll {
13
+ @Input() threshold: number = 200;
14
+ @Input() loading: boolean = false;
15
+ @Input() finished: boolean = false;
16
+ @Input() disabled: boolean = false;
17
+ @Output() arcLoadMore = new EventEmitter<CustomEvent>();
18
+ }
@@ -0,0 +1,24 @@
1
+ // Auto-generated by @arclux/prism — do not edit manually
2
+
3
+ import { Component, CUSTOM_ELEMENTS_SCHEMA, Input, Output, EventEmitter } from '@angular/core';
4
+ import '@arclux/arc-ui';
5
+
6
+ @Component({
7
+ selector: 'arc-input',
8
+ standalone: true,
9
+ schemas: [CUSTOM_ELEMENTS_SCHEMA],
10
+ template: `<arc-input [attr.type]="type" [attr.name]="name" [attr.label]="label" [attr.placeholder]="placeholder" [attr.value]="value" [disabled]="disabled" [required]="required" [multiline]="multiline" [attr.rows]="rows" (arc-input)="arcInput.emit($event)" (arc-change)="arcChange.emit($event)"><ng-content /></arc-input>`,
11
+ })
12
+ export class Input {
13
+ @Input() type: string = 'text';
14
+ @Input() name: string = '';
15
+ @Input() label: string = '';
16
+ @Input() placeholder: string = '';
17
+ @Input() value: string = '';
18
+ @Input() disabled: boolean = false;
19
+ @Input() required: boolean = false;
20
+ @Input() multiline: boolean = false;
21
+ @Input() rows: number = 5;
22
+ @Output() arcInput = new EventEmitter<CustomEvent>();
23
+ @Output() arcChange = new EventEmitter<CustomEvent>();
24
+ }
@@ -0,0 +1,19 @@
1
+ // Auto-generated by @arclux/prism — do not edit manually
2
+
3
+ import { Component, CUSTOM_ELEMENTS_SCHEMA, Input, Output, EventEmitter } from '@angular/core';
4
+ import '@arclux/arc-ui';
5
+
6
+ @Component({
7
+ selector: 'arc-modal',
8
+ standalone: true,
9
+ schemas: [CUSTOM_ELEMENTS_SCHEMA],
10
+ template: `<arc-modal [open]="open" [attr.heading]="heading" [attr.size]="size" [closable]="closable" (arc-close)="arcClose.emit($event)" (arc-open)="arcOpen.emit($event)"><ng-content /></arc-modal>`,
11
+ })
12
+ export class Modal {
13
+ @Input() open: boolean = false;
14
+ @Input() heading: string = '';
15
+ @Input() size: 'sm' | 'md' | 'lg' = 'md';
16
+ @Input() closable: boolean = true;
17
+ @Output() arcClose = new EventEmitter<CustomEvent>();
18
+ @Output() arcOpen = new EventEmitter<CustomEvent>();
19
+ }
@@ -0,0 +1,22 @@
1
+ // Auto-generated by @arclux/prism — do not edit manually
2
+
3
+ import { Component, CUSTOM_ELEMENTS_SCHEMA, Input, Output, EventEmitter } from '@angular/core';
4
+ import '@arclux/arc-ui';
5
+
6
+ @Component({
7
+ selector: 'arc-multi-select',
8
+ standalone: true,
9
+ schemas: [CUSTOM_ELEMENTS_SCHEMA],
10
+ template: `<arc-multi-select [attr.value]="value" [attr.placeholder]="placeholder" [attr.label]="label" [disabled]="disabled" [attr._query]="_query" [attr._open]="_open" [attr._activeIndex]="_activeIndex" [attr._options]="_options" (arc-change)="arcChange.emit($event)"><ng-content /></arc-multi-select>`,
11
+ })
12
+ export class MultiSelect {
13
+ @Input() value: unknown[] = [];
14
+ @Input() placeholder: string = '';
15
+ @Input() label: string = '';
16
+ @Input() disabled: boolean = false;
17
+ @Input() _query: string = '';
18
+ @Input() _open: string = false;
19
+ @Input() _activeIndex: string = -1;
20
+ @Input() _options: string = [];
21
+ @Output() arcChange = new EventEmitter<CustomEvent>();
22
+ }
@@ -0,0 +1,20 @@
1
+ // Auto-generated by @arclux/prism — do not edit manually
2
+
3
+ import { Component, CUSTOM_ELEMENTS_SCHEMA, Input, Output, EventEmitter } from '@angular/core';
4
+ import '@arclux/arc-ui';
5
+
6
+ @Component({
7
+ selector: 'arc-number-input',
8
+ standalone: true,
9
+ schemas: [CUSTOM_ELEMENTS_SCHEMA],
10
+ template: `<arc-number-input [attr.value]="value" [attr.min]="min" [attr.max]="max" [attr.step]="step" [attr.label]="label" [disabled]="disabled" (arc-change)="arcChange.emit($event)"><ng-content /></arc-number-input>`,
11
+ })
12
+ export class NumberInput {
13
+ @Input() value: number = 0;
14
+ @Input() min: number = 'undefined';
15
+ @Input() max: number = 'undefined';
16
+ @Input() step: number = 1;
17
+ @Input() label: string = '';
18
+ @Input() disabled: boolean = false;
19
+ @Output() arcChange = new EventEmitter<CustomEvent>();
20
+ }
@@ -0,0 +1,18 @@
1
+ // Auto-generated by @arclux/prism — do not edit manually
2
+
3
+ import { Component, CUSTOM_ELEMENTS_SCHEMA, Input, Output, EventEmitter } from '@angular/core';
4
+ import '@arclux/arc-ui';
5
+
6
+ @Component({
7
+ selector: 'arc-otp-input',
8
+ standalone: true,
9
+ schemas: [CUSTOM_ELEMENTS_SCHEMA],
10
+ template: `<arc-otp-input [attr.length]="length" [attr.value]="value" [disabled]="disabled" [attr.type]="type" (arc-change)="arcChange.emit($event)"><ng-content /></arc-otp-input>`,
11
+ })
12
+ export class OtpInput {
13
+ @Input() length: number = 6;
14
+ @Input() value: string = '';
15
+ @Input() disabled: boolean = false;
16
+ @Input() type: string = 'number';
17
+ @Output() arcChange = new EventEmitter<CustomEvent>();
18
+ }
@@ -0,0 +1,17 @@
1
+ // Auto-generated by @arclux/prism — do not edit manually
2
+
3
+ import { Component, CUSTOM_ELEMENTS_SCHEMA, Input, Output, EventEmitter } from '@angular/core';
4
+ import '@arclux/arc-ui';
5
+
6
+ @Component({
7
+ selector: 'arc-pagination',
8
+ standalone: true,
9
+ schemas: [CUSTOM_ELEMENTS_SCHEMA],
10
+ template: `<arc-pagination [attr.total]="total" [attr.current]="current" [attr.siblings]="siblings" (arc-change)="arcChange.emit($event)"><ng-content /></arc-pagination>`,
11
+ })
12
+ export class Pagination {
13
+ @Input() total: number = 1;
14
+ @Input() current: number = 1;
15
+ @Input() siblings: number = 1;
16
+ @Output() arcChange = new EventEmitter<CustomEvent>();
17
+ }
@@ -0,0 +1,22 @@
1
+ // Auto-generated by @arclux/prism — do not edit manually
2
+
3
+ import { Component, CUSTOM_ELEMENTS_SCHEMA, Input, Output, EventEmitter } from '@angular/core';
4
+ import '@arclux/arc-ui';
5
+
6
+ @Component({
7
+ selector: 'arc-pin-input',
8
+ standalone: true,
9
+ schemas: [CUSTOM_ELEMENTS_SCHEMA],
10
+ template: `<arc-pin-input [attr.length]="length" [attr.value]="value" [disabled]="disabled" [mask]="mask" [attr.type]="type" [attr.separator]="separator" [attr.label]="label" (arc-change)="arcChange.emit($event)" (arc-complete)="arcComplete.emit($event)"><ng-content /></arc-pin-input>`,
11
+ })
12
+ export class PinInput {
13
+ @Input() length: number = 4;
14
+ @Input() value: string = '';
15
+ @Input() disabled: boolean = false;
16
+ @Input() mask: boolean = false;
17
+ @Input() type: string = 'number';
18
+ @Input() separator: number = 0;
19
+ @Input() label: string = '';
20
+ @Output() arcChange = new EventEmitter<CustomEvent>();
21
+ @Output() arcComplete = new EventEmitter<CustomEvent>();
22
+ }
@@ -0,0 +1,17 @@
1
+ // Auto-generated by @arclux/prism — do not edit manually
2
+
3
+ import { Component, CUSTOM_ELEMENTS_SCHEMA, Input, Output, EventEmitter } from '@angular/core';
4
+ import '@arclux/arc-ui';
5
+
6
+ @Component({
7
+ selector: 'arc-popover',
8
+ standalone: true,
9
+ schemas: [CUSTOM_ELEMENTS_SCHEMA],
10
+ template: `<arc-popover [open]="open" [attr.position]="position" [attr.trigger]="trigger" (arc-close)="arcClose.emit($event)"><ng-content /></arc-popover>`,
11
+ })
12
+ export class Popover {
13
+ @Input() open: boolean = false;
14
+ @Input() position: 'bottom' | 'top' | 'left' | 'right' = 'bottom';
15
+ @Input() trigger: string = '';
16
+ @Output() arcClose = new EventEmitter<CustomEvent>();
17
+ }
@@ -0,0 +1,18 @@
1
+ // Auto-generated by @arclux/prism — do not edit manually
2
+
3
+ import { Component, CUSTOM_ELEMENTS_SCHEMA, Input } from '@angular/core';
4
+ import '@arclux/arc-ui';
5
+
6
+ @Component({
7
+ selector: 'arc-progress',
8
+ standalone: true,
9
+ schemas: [CUSTOM_ELEMENTS_SCHEMA],
10
+ template: `<arc-progress [attr.value]="value" [attr.variant]="variant" [attr.size]="size" [indeterminate]="indeterminate" [attr.label]="label"><ng-content /></arc-progress>`,
11
+ })
12
+ export class Progress {
13
+ @Input() value: number = 0;
14
+ @Input() variant: string = 'bar';
15
+ @Input() size: 'sm' | 'md' | 'lg' = 'md';
16
+ @Input() indeterminate: boolean = false;
17
+ @Input() label: string = '';
18
+ }
@@ -0,0 +1,15 @@
1
+ // Auto-generated by @arclux/prism — do not edit manually
2
+
3
+ import { Component, CUSTOM_ELEMENTS_SCHEMA, Input } from '@angular/core';
4
+ import '@arclux/arc-ui';
5
+
6
+ @Component({
7
+ selector: 'arc-radio',
8
+ standalone: true,
9
+ schemas: [CUSTOM_ELEMENTS_SCHEMA],
10
+ template: `<arc-radio [attr.value]="value" [disabled]="disabled"><ng-content /></arc-radio>`,
11
+ })
12
+ export class Radio {
13
+ @Input() value: string = '';
14
+ @Input() disabled: boolean = false;
15
+ }
@@ -0,0 +1,19 @@
1
+ // Auto-generated by @arclux/prism — do not edit manually
2
+
3
+ import { Component, CUSTOM_ELEMENTS_SCHEMA, Input, Output, EventEmitter } from '@angular/core';
4
+ import '@arclux/arc-ui';
5
+
6
+ @Component({
7
+ selector: 'arc-radio-group',
8
+ standalone: true,
9
+ schemas: [CUSTOM_ELEMENTS_SCHEMA],
10
+ template: `<arc-radio-group [attr.value]="value" [attr.name]="name" [disabled]="disabled" [attr.orientation]="orientation" [attr._radios]="_radios" (arc-change)="arcChange.emit($event)"><ng-content /></arc-radio-group>`,
11
+ })
12
+ export class RadioGroup {
13
+ @Input() value: string = '';
14
+ @Input() name: string = '';
15
+ @Input() disabled: boolean = false;
16
+ @Input() orientation: 'horizontal' = 'vertical';
17
+ @Input() _radios: string = [];
18
+ @Output() arcChange = new EventEmitter<CustomEvent>();
19
+ }
@@ -0,0 +1,18 @@
1
+ // Auto-generated by @arclux/prism — do not edit manually
2
+
3
+ import { Component, CUSTOM_ELEMENTS_SCHEMA, Input, Output, EventEmitter } from '@angular/core';
4
+ import '@arclux/arc-ui';
5
+
6
+ @Component({
7
+ selector: 'arc-rating',
8
+ standalone: true,
9
+ schemas: [CUSTOM_ELEMENTS_SCHEMA],
10
+ template: `<arc-rating [attr.value]="value" [attr.max]="max" [disabled]="disabled" [readonly]="readonly" (arc-change)="arcChange.emit($event)"><ng-content /></arc-rating>`,
11
+ })
12
+ export class Rating {
13
+ @Input() value: number = 0;
14
+ @Input() max: number = 5;
15
+ @Input() disabled: boolean = false;
16
+ @Input() readonly: boolean = false;
17
+ @Output() arcChange = new EventEmitter<CustomEvent>();
18
+ }
@@ -0,0 +1,18 @@
1
+ // Auto-generated by @arclux/prism — do not edit manually
2
+
3
+ import { Component, CUSTOM_ELEMENTS_SCHEMA, Input } from '@angular/core';
4
+ import '@arclux/arc-ui';
5
+
6
+ @Component({
7
+ selector: 'arc-scroll-to-top',
8
+ standalone: true,
9
+ schemas: [CUSTOM_ELEMENTS_SCHEMA],
10
+ template: `<arc-scroll-to-top [attr.threshold]="threshold" [smooth]="smooth" [attr.position]="position" [attr.offset]="offset" [attr._visible]="_visible"><ng-content /></arc-scroll-to-top>`,
11
+ })
12
+ export class ScrollToTop {
13
+ @Input() threshold: number = 300;
14
+ @Input() smooth: boolean = true;
15
+ @Input() position: 'bottom-right' | 'bottom-left' = 'bottom-right';
16
+ @Input() offset: string = 'var(--space-lg)';
17
+ @Input() _visible: string = false;
18
+ }
@@ -0,0 +1,25 @@
1
+ // Auto-generated by @arclux/prism — do not edit manually
2
+
3
+ import { Component, CUSTOM_ELEMENTS_SCHEMA, Input, Output, EventEmitter } from '@angular/core';
4
+ import '@arclux/arc-ui';
5
+
6
+ @Component({
7
+ selector: 'arc-search',
8
+ standalone: true,
9
+ schemas: [CUSTOM_ELEMENTS_SCHEMA],
10
+ template: `<arc-search [attr.value]="value" [attr.placeholder]="placeholder" [attr.label]="label" [disabled]="disabled" [loading]="loading" [attr._open]="_open" [attr._activeIndex]="_activeIndex" [attr._suggestions]="_suggestions" (arc-input)="arcInput.emit($event)" (arc-clear)="arcClear.emit($event)" (arc-change)="arcChange.emit($event)" (arc-select)="arcSelect.emit($event)"><ng-content /></arc-search>`,
11
+ })
12
+ export class Search {
13
+ @Input() value: string = '';
14
+ @Input() placeholder: string = 'Search...';
15
+ @Input() label: string = '';
16
+ @Input() disabled: boolean = false;
17
+ @Input() loading: boolean = false;
18
+ @Input() _open: string = false;
19
+ @Input() _activeIndex: string = -1;
20
+ @Input() _suggestions: string = [];
21
+ @Output() arcInput = new EventEmitter<CustomEvent>();
22
+ @Output() arcClear = new EventEmitter<CustomEvent>();
23
+ @Output() arcChange = new EventEmitter<CustomEvent>();
24
+ @Output() arcSelect = new EventEmitter<CustomEvent>();
25
+ }
@@ -0,0 +1,17 @@
1
+ // Auto-generated by @arclux/prism — do not edit manually
2
+
3
+ import { Component, CUSTOM_ELEMENTS_SCHEMA, Input, Output, EventEmitter } from '@angular/core';
4
+ import '@arclux/arc-ui';
5
+
6
+ @Component({
7
+ selector: 'arc-segmented-control',
8
+ standalone: true,
9
+ schemas: [CUSTOM_ELEMENTS_SCHEMA],
10
+ template: `<arc-segmented-control [attr.value]="value" [disabled]="disabled" [attr._options]="_options" (arc-change)="arcChange.emit($event)"><ng-content /></arc-segmented-control>`,
11
+ })
12
+ export class SegmentedControl {
13
+ @Input() value: string = '';
14
+ @Input() disabled: boolean = false;
15
+ @Input() _options: string = [];
16
+ @Output() arcChange = new EventEmitter<CustomEvent>();
17
+ }
@@ -0,0 +1,21 @@
1
+ // Auto-generated by @arclux/prism — do not edit manually
2
+
3
+ import { Component, CUSTOM_ELEMENTS_SCHEMA, Input, Output, EventEmitter } from '@angular/core';
4
+ import '@arclux/arc-ui';
5
+
6
+ @Component({
7
+ selector: 'arc-select',
8
+ standalone: true,
9
+ schemas: [CUSTOM_ELEMENTS_SCHEMA],
10
+ template: `<arc-select [attr.value]="value" [attr.placeholder]="placeholder" [attr.label]="label" [attr.name]="name" [disabled]="disabled" [open]="open" [attr._options]="_options" (arc-change)="arcChange.emit($event)"><ng-content /></arc-select>`,
11
+ })
12
+ export class Select {
13
+ @Input() value: string = '';
14
+ @Input() placeholder: string = 'Select...';
15
+ @Input() label: string = '';
16
+ @Input() name: string = '';
17
+ @Input() disabled: boolean = false;
18
+ @Input() open: boolean = false;
19
+ @Input() _options: string = [];
20
+ @Output() arcChange = new EventEmitter<CustomEvent>();
21
+ }
@@ -0,0 +1,18 @@
1
+ // Auto-generated by @arclux/prism — do not edit manually
2
+
3
+ import { Component, CUSTOM_ELEMENTS_SCHEMA, Input, Output, EventEmitter } from '@angular/core';
4
+ import '@arclux/arc-ui';
5
+
6
+ @Component({
7
+ selector: 'arc-sheet',
8
+ standalone: true,
9
+ schemas: [CUSTOM_ELEMENTS_SCHEMA],
10
+ template: `<arc-sheet [open]="open" [attr.side]="side" [attr.heading]="heading" (arc-close)="arcClose.emit($event)" (arc-open)="arcOpen.emit($event)"><ng-content /></arc-sheet>`,
11
+ })
12
+ export class Sheet {
13
+ @Input() open: boolean = false;
14
+ @Input() side: 'bottom' | 'right' = 'bottom';
15
+ @Input() heading: string = '';
16
+ @Output() arcClose = new EventEmitter<CustomEvent>();
17
+ @Output() arcOpen = new EventEmitter<CustomEvent>();
18
+ }
@@ -0,0 +1,21 @@
1
+ // Auto-generated by @arclux/prism — do not edit manually
2
+
3
+ import { Component, CUSTOM_ELEMENTS_SCHEMA, Input, Output, EventEmitter } from '@angular/core';
4
+ import '@arclux/arc-ui';
5
+
6
+ @Component({
7
+ selector: 'arc-slider',
8
+ standalone: true,
9
+ schemas: [CUSTOM_ELEMENTS_SCHEMA],
10
+ template: `<arc-slider [attr.value]="value" [attr.min]="min" [attr.max]="max" [attr.step]="step" [disabled]="disabled" [attr.label]="label" (arc-input)="arcInput.emit($event)" (arc-change)="arcChange.emit($event)"><ng-content /></arc-slider>`,
11
+ })
12
+ export class Slider {
13
+ @Input() value: number = 0;
14
+ @Input() min: number = 0;
15
+ @Input() max: number = 100;
16
+ @Input() step: number = 1;
17
+ @Input() disabled: boolean = false;
18
+ @Input() label: string = '';
19
+ @Output() arcInput = new EventEmitter<CustomEvent>();
20
+ @Output() arcChange = new EventEmitter<CustomEvent>();
21
+ }
@@ -0,0 +1,20 @@
1
+ // Auto-generated by @arclux/prism — do not edit manually
2
+
3
+ import { Component, CUSTOM_ELEMENTS_SCHEMA, Input, Output, EventEmitter } from '@angular/core';
4
+ import '@arclux/arc-ui';
5
+
6
+ @Component({
7
+ selector: 'arc-sortable-list',
8
+ standalone: true,
9
+ schemas: [CUSTOM_ELEMENTS_SCHEMA],
10
+ template: `<arc-sortable-list [disabled]="disabled" [attr._items]="_items" [attr._dragIndex]="_dragIndex" [attr._overIndex]="_overIndex" [attr._kbSelected]="_kbSelected" [attr._kbMoving]="_kbMoving" (arc-change)="arcChange.emit($event)"><ng-content /></arc-sortable-list>`,
11
+ })
12
+ export class SortableList {
13
+ @Input() disabled: boolean = false;
14
+ @Input() _items: string = [];
15
+ @Input() _dragIndex: string = -1;
16
+ @Input() _overIndex: string = -1;
17
+ @Input() _kbSelected: string = -1;
18
+ @Input() _kbMoving: string = false;
19
+ @Output() arcChange = new EventEmitter<CustomEvent>();
20
+ }
@@ -0,0 +1,14 @@
1
+ // Auto-generated by @arclux/prism — do not edit manually
2
+
3
+ import { Component, CUSTOM_ELEMENTS_SCHEMA, Input } from '@angular/core';
4
+ import '@arclux/arc-ui';
5
+
6
+ @Component({
7
+ selector: 'arc-suggestion',
8
+ standalone: true,
9
+ schemas: [CUSTOM_ELEMENTS_SCHEMA],
10
+ template: `<arc-suggestion [attr.value]="value"><ng-content /></arc-suggestion>`,
11
+ })
12
+ export class Suggestion {
13
+ @Input() value: string = '';
14
+ }
@@ -0,0 +1,14 @@
1
+ // Auto-generated by @arclux/prism — do not edit manually
2
+
3
+ import { Component, CUSTOM_ELEMENTS_SCHEMA, Input } from '@angular/core';
4
+ import '@arclux/arc-ui';
5
+
6
+ @Component({
7
+ selector: 'arc-tab',
8
+ standalone: true,
9
+ schemas: [CUSTOM_ELEMENTS_SCHEMA],
10
+ template: `<arc-tab [attr.label]="label"><ng-content /></arc-tab>`,
11
+ })
12
+ export class Tab {
13
+ @Input() label: string = '';
14
+ }