@xui/label 2.0.0-alpha.7 → 2.0.0-alpha.8
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 +33 -23
- package/fesm2022/xui-label.mjs +3 -3
- package/fesm2022/xui-label.mjs.map +1 -1
- package/index.d.ts +28 -1
- package/package.json +4 -4
- package/lib/label.directive.d.ts +0 -23
package/README.md
CHANGED
|
@@ -4,17 +4,13 @@
|
|
|
4
4
|
|
|
5
5
|
---
|
|
6
6
|
|
|
7
|
-

|
|
8
8
|
[](https://xuijs.org/)
|
|
9
|
-
[](https://www.npmjs.com/org/xui)
|
|
11
|
-
[](https://www.npmjs.com/org/xui)
|
|
12
|
-
[](https://bundlephobia.com/result?p=xui)
|
|
9
|
+
[](https://www.npmjs.com/org/xui)
|
|
13
10
|
[](/LICENSE)
|
|
14
|
-
[](https://discord.gg/aPkZsFcu)
|
|
15
11
|
[](https://app.netlify.com/sites/xui/deploys)
|
|
16
12
|
|
|
17
|
-
xUI is a customizable Angular
|
|
13
|
+
xUI is a customizable Angular 20 UI Library with full support of TailwindCSS styling based on popular React library ShardCN and its Angular alternative SpartanUI.
|
|
18
14
|
|
|
19
15
|
## Features
|
|
20
16
|
|
|
@@ -31,9 +27,31 @@ xUI is a customizable Angular 19 UI Library with full support of TailwindCSS sty
|
|
|
31
27
|
- [StackBlitz Demo](https://stackblitz.com/fork/xui)
|
|
32
28
|
- [Documentation](https://xuijs.org)
|
|
33
29
|
- [Live Demo](https://cord.dj/r)
|
|
30
|
+
- [Packages](#packages)
|
|
34
31
|
- [Installation](#installation)
|
|
35
|
-
|
|
36
|
-
|
|
32
|
+
- [Browser Support](#browser-support)
|
|
33
|
+
- [Development](#development)
|
|
34
|
+
- [Issues](#issues)
|
|
35
|
+
- [Roadmap](#roadmap)
|
|
36
|
+
|
|
37
|
+
## Packages
|
|
38
|
+
|
|
39
|
+
| Package | Usage | Description |
|
|
40
|
+
| ------------ | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------- |
|
|
41
|
+
| Core | [](https://www.npmjs.com/package/%40xui/core)<br />[](https://www.npmjs.com/package/%40xui/core)<br />[](https://bundlephobia.com/result?p=%40xui/core) | Core package required by all other packages |
|
|
42
|
+
| Badge | [](https://www.npmjs.com/package/%40xui/badge)<br />[](https://www.npmjs.com/package/%40xui/badge)<br />[](https://bundlephobia.com/result?p=%40xui/badge) | Badge component |
|
|
43
|
+
| Breadcrumb | [](https://www.npmjs.com/package/%40xui/breadcrumb)<br />[](https://www.npmjs.com/package/%40xui/breadcrumb)<br />[](https://bundlephobia.com/result?p=%40xui/breadcrumb) | Breadcrumb component |
|
|
44
|
+
| Button | [](https://www.npmjs.com/package/%40xui/button)<br />[](https://www.npmjs.com/package/%40xui/button)<br />[](https://bundlephobia.com/result?p=%40xui/button) | Button component |
|
|
45
|
+
| Button Group | [](https://www.npmjs.com/package/%40xui/button-group)<br />[](https://www.npmjs.com/package/%40xui/button-group)<br />[](https://bundlephobia.com/result?p=%40xui/button-group) | Button Group component |
|
|
46
|
+
| Checkbox | [](https://www.npmjs.com/package/%40xui/checkbox)<br />[](https://www.npmjs.com/package/%40xui/checkbox)<br />[](https://bundlephobia.com/result?p=%40xui/checkbox) | Checkbox component |
|
|
47
|
+
| Form Field | [](https://www.npmjs.com/package/%40xui/form-field)<br />[](https://www.npmjs.com/package/%40xui/form-field)<br />[](https://bundlephobia.com/result?p=%40xui/form-field) | Form Field component |
|
|
48
|
+
| Icon | [](https://www.npmjs.com/package/%40xui/icon)<br />[](https://www.npmjs.com/package/%40xui/icon)<br />[](https://bundlephobia.com/result?p=%40xui/icon) | Icon component |
|
|
49
|
+
| Input | [](https://www.npmjs.com/package/%40xui/input)<br />[](https://www.npmjs.com/package/%40xui/input)<br />[](https://bundlephobia.com/result?p=%40xui/input) | Input component |
|
|
50
|
+
| Label | [](https://www.npmjs.com/package/%40xui/label)<br />[](https://www.npmjs.com/package/%40xui/label)<br />[](https://bundlephobia.com/result?p=%40xui/label) | Label component |
|
|
51
|
+
| Skeleton | [](https://www.npmjs.com/package/%40xui/skeleton)<br />[](https://www.npmjs.com/package/%40xui/skeleton)<br />[](https://bundlephobia.com/result?p=%40xui/skeleton) | Skeleton component |
|
|
52
|
+
| Sonner | [](https://www.npmjs.com/package/%40xui/sonner)<br />[](https://www.npmjs.com/package/%40xui/sonner)<br />[](https://bundlephobia.com/result?p=%40xui/sonner) | Sonner component |
|
|
53
|
+
| Status | [](https://www.npmjs.com/package/%40xui/status)<br />[](https://www.npmjs.com/package/%40xui/status)<br />[](https://bundlephobia.com/result?p=%40xui/status) | Status component |
|
|
54
|
+
| Table | [](https://www.npmjs.com/package/%40xui/table)<br />[](https://www.npmjs.com/package/%40xui/table)<br />[](https://bundlephobia.com/result?p=%40xui/table) | Table component |
|
|
37
55
|
|
|
38
56
|
## Installation
|
|
39
57
|
|
|
@@ -67,31 +85,22 @@ pnpm storybook
|
|
|
67
85
|
|
|
68
86
|
If you find any issues in the library or have and idea for an improvement feel free to open an [issue](https://github.com/Rikarin/xui/issues).
|
|
69
87
|
|
|
70
|
-
## Roadmap
|
|
88
|
+
## Roadmap
|
|
71
89
|
|
|
72
90
|
- [ ] Accordion
|
|
73
91
|
- [ ] Alert
|
|
74
92
|
- [ ] Alert Dialog
|
|
75
93
|
- [ ] Avatar
|
|
76
|
-
- [x] Badge
|
|
77
|
-
- [x] Breadcrumb
|
|
78
|
-
- [x] Button
|
|
79
|
-
- [x] Button Group
|
|
80
94
|
- [ ] Calendar
|
|
81
95
|
- [ ] Card
|
|
82
96
|
- [ ] Carousel
|
|
83
|
-
- [x] Checkbox
|
|
84
97
|
- [ ] Collapsible
|
|
85
98
|
- [ ] Combobox
|
|
86
99
|
- [ ] Command
|
|
87
100
|
- [ ] Date Picker
|
|
88
101
|
- [ ] Date Range Picker
|
|
89
102
|
- [ ] Dialog
|
|
90
|
-
- [x] Form Field
|
|
91
103
|
- [ ] Hover Card
|
|
92
|
-
- [x] Icon
|
|
93
|
-
- [x] Input
|
|
94
|
-
- [x] Label
|
|
95
104
|
- [ ] Menu
|
|
96
105
|
- [ ] Pagination
|
|
97
106
|
- [ ] Popover
|
|
@@ -101,17 +110,15 @@ If you find any issues in the library or have and idea for an improvement feel f
|
|
|
101
110
|
- [ ] Select
|
|
102
111
|
- [ ] Separator
|
|
103
112
|
- [ ] Sheet
|
|
104
|
-
- [x] Skeleton
|
|
105
113
|
- [ ] Slider
|
|
106
|
-
- [x] Sonner
|
|
107
114
|
- [ ] Spinner
|
|
108
|
-
- [x] Status
|
|
109
115
|
- [ ] Switch
|
|
110
|
-
- [ ] Table
|
|
111
116
|
- [ ] Tabs
|
|
112
117
|
- [ ] Toggle
|
|
113
118
|
- [ ] Tooltip
|
|
114
119
|
- [ ] Typography
|
|
120
|
+
- [ ] Input OTP
|
|
121
|
+
- [ ] Toggle Group
|
|
115
122
|
|
|
116
123
|
### Additional
|
|
117
124
|
|
|
@@ -149,4 +156,7 @@ Make cli to install the components
|
|
|
149
156
|
- data driven component
|
|
150
157
|
|
|
151
158
|
- Sonner
|
|
159
|
+
|
|
152
160
|
- Colors
|
|
161
|
+
|
|
162
|
+
- adjust generator to generate stories into the apps/storybook
|
package/fesm2022/xui-label.mjs
CHANGED
|
@@ -46,10 +46,10 @@ class XuiLabelDirective {
|
|
|
46
46
|
setError(error) {
|
|
47
47
|
this.state().error.set(error);
|
|
48
48
|
}
|
|
49
|
-
/** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
50
|
-
/** @nocollapse */ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "
|
|
49
|
+
/** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.3", ngImport: i0, type: XuiLabelDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
50
|
+
/** @nocollapse */ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "20.0.3", type: XuiLabelDirective, isStandalone: true, selector: "[xuiLabel]", inputs: { class: { classPropertyName: "class", publicName: "class", isSignal: true, isRequired: false, transformFunction: null }, variant: { classPropertyName: "variant", publicName: "variant", isSignal: true, isRequired: false, transformFunction: null }, error: { classPropertyName: "error", publicName: "error", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "class": "computedClass()" } }, hostDirectives: [{ directive: i1.XLabelDirective, inputs: ["id", "id"] }], ngImport: i0 });
|
|
51
51
|
}
|
|
52
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
52
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.3", ngImport: i0, type: XuiLabelDirective, decorators: [{
|
|
53
53
|
type: Directive,
|
|
54
54
|
args: [{
|
|
55
55
|
selector: '[xuiLabel]',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"xui-label.mjs","sources":["../../../../../../libs/ui/label/xui/src/lib/label.directive.ts","../../../../../../libs/ui/label/xui/src/xui-label.ts"],"sourcesContent":["import { Directive, computed, inject, input, signal } from '@angular/core';\nimport { xui } from '@xui/core';\nimport { XLabelDirective } from '@xui/core/label';\nimport { type VariantProps, cva } from 'class-variance-authority';\nimport type { ClassValue } from 'clsx';\n\n// TODO: theme - disabled, etc.\nexport const labelVariants = cva(\n [\n 'text-sm font-medium leading-none',\n '[&.ng-invalid.ng-touched]:text-error',\n '[&>[xuiInput]]:my-1 [&:has([xuiInput]:disabled)]:cursor-not-allowed [&:has([xuiInput]:disabled)]:opacity-70'\n ],\n {\n variants: {\n variant: {\n default: ''\n },\n error: {\n auto: '[&:has([xuiInput].ng-invalid.ng-touched)]:text-error',\n true: 'text-error'\n },\n disabled: {\n auto: '[&:has([xuiInput]:disabled)]:opacity-70',\n true: 'opacity-70',\n false: ''\n }\n },\n defaultVariants: {\n variant: 'default',\n error: 'auto'\n }\n }\n);\nexport type LabelVariants = VariantProps<typeof labelVariants>;\n\n@Directive({\n selector: '[xuiLabel]',\n hostDirectives: [\n {\n directive: XLabelDirective,\n inputs: ['id']\n }\n ],\n host: {\n '[class]': 'computedClass()'\n }\n})\nexport class XuiLabelDirective {\n private readonly xLabel = inject(XLabelDirective, { host: true });\n\n readonly class = input<ClassValue>('');\n readonly variant = input<LabelVariants['variant']>('default');\n readonly error = input<LabelVariants['error']>('auto');\n\n protected readonly state = computed(() => ({\n error: signal(this.error())\n }));\n\n protected readonly computedClass = computed(() =>\n xui(\n labelVariants({\n variant: this.variant(),\n error: this.state().error(),\n disabled: this.xLabel?.dataDisabled() ?? 'auto'\n }),\n this.class()\n )\n );\n\n setError(error: LabelVariants['error']): void {\n this.state().error.set(error);\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"xui-label.mjs","sources":["../tmp-esm2022/lib/label.directive.js","../tmp-esm2022/xui-label.js"],"sourcesContent":["import { Directive, computed, inject, input, signal } from '@angular/core';\nimport { xui } from '@xui/core';\nimport { XLabelDirective } from '@xui/core/label';\nimport { cva } from 'class-variance-authority';\nimport * as i0 from \"@angular/core\";\nimport * as i1 from \"@xui/core/label\";\n// TODO: theme - disabled, etc.\nexport const labelVariants = cva([\n 'text-sm font-medium leading-none',\n '[&.ng-invalid.ng-touched]:text-error',\n '[&>[xuiInput]]:my-1 [&:has([xuiInput]:disabled)]:cursor-not-allowed [&:has([xuiInput]:disabled)]:opacity-70'\n], {\n variants: {\n variant: {\n default: ''\n },\n error: {\n auto: '[&:has([xuiInput].ng-invalid.ng-touched)]:text-error',\n true: 'text-error'\n },\n disabled: {\n auto: '[&:has([xuiInput]:disabled)]:opacity-70',\n true: 'opacity-70',\n false: ''\n }\n },\n defaultVariants: {\n variant: 'default',\n error: 'auto'\n }\n});\nexport class XuiLabelDirective {\n xLabel = inject(XLabelDirective, { host: true });\n class = input('');\n variant = input('default');\n error = input('auto');\n state = computed(() => ({\n error: signal(this.error())\n }));\n computedClass = computed(() => xui(labelVariants({\n variant: this.variant(),\n error: this.state().error(),\n disabled: this.xLabel?.dataDisabled() ?? 'auto'\n }), this.class()));\n setError(error) {\n this.state().error.set(error);\n }\n /** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.0.3\", ngImport: i0, type: XuiLabelDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });\n /** @nocollapse */ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"17.1.0\", version: \"20.0.3\", type: XuiLabelDirective, isStandalone: true, selector: \"[xuiLabel]\", inputs: { class: { classPropertyName: \"class\", publicName: \"class\", isSignal: true, isRequired: false, transformFunction: null }, variant: { classPropertyName: \"variant\", publicName: \"variant\", isSignal: true, isRequired: false, transformFunction: null }, error: { classPropertyName: \"error\", publicName: \"error\", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { \"class\": \"computedClass()\" } }, hostDirectives: [{ directive: i1.XLabelDirective, inputs: [\"id\", \"id\"] }], ngImport: i0 });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.0.3\", ngImport: i0, type: XuiLabelDirective, decorators: [{\n type: Directive,\n args: [{\n selector: '[xuiLabel]',\n hostDirectives: [\n {\n directive: XLabelDirective,\n inputs: ['id']\n }\n ],\n host: {\n '[class]': 'computedClass()'\n }\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGFiZWwuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy91aS9sYWJlbC94dWkvc3JjL2xpYi9sYWJlbC5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxRQUFRLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0UsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUNoQyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDbEQsT0FBTyxFQUFxQixHQUFHLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQzs7O0FBR2xFLCtCQUErQjtBQUMvQixNQUFNLENBQUMsTUFBTSxhQUFhLEdBQUcsR0FBRyxDQUM5QjtJQUNFLGtDQUFrQztJQUNsQyxzQ0FBc0M7SUFDdEMsNkdBQTZHO0NBQzlHLEVBQ0Q7SUFDRSxRQUFRLEVBQUU7UUFDUixPQUFPLEVBQUU7WUFDUCxPQUFPLEVBQUUsRUFBRTtTQUNaO1FBQ0QsS0FBSyxFQUFFO1lBQ0wsSUFBSSxFQUFFLHNEQUFzRDtZQUM1RCxJQUFJLEVBQUUsWUFBWTtTQUNuQjtRQUNELFFBQVEsRUFBRTtZQUNSLElBQUksRUFBRSx5Q0FBeUM7WUFDL0MsSUFBSSxFQUFFLFlBQVk7WUFDbEIsS0FBSyxFQUFFLEVBQUU7U0FDVjtLQUNGO0lBQ0QsZUFBZSxFQUFFO1FBQ2YsT0FBTyxFQUFFLFNBQVM7UUFDbEIsS0FBSyxFQUFFLE1BQU07S0FDZDtDQUNGLENBQ0YsQ0FBQztBQWVGLE1BQU0sT0FBTyxpQkFBaUI7SUFDWCxNQUFNLEdBQUcsTUFBTSxDQUFDLGVBQWUsRUFBRSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDO0lBRXpELEtBQUssR0FBRyxLQUFLLENBQWEsRUFBRSxDQUFDLENBQUM7SUFDOUIsT0FBTyxHQUFHLEtBQUssQ0FBMkIsU0FBUyxDQUFDLENBQUM7SUFDckQsS0FBSyxHQUFHLEtBQUssQ0FBeUIsTUFBTSxDQUFDLENBQUM7SUFFcEMsS0FBSyxHQUFHLFFBQVEsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDO1FBQ3pDLEtBQUssRUFBRSxNQUFNLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDO0tBQzVCLENBQUMsQ0FBQyxDQUFDO0lBRWUsYUFBYSxHQUFHLFFBQVEsQ0FBQyxHQUFHLEVBQUUsQ0FDL0MsR0FBRyxDQUNELGFBQWEsQ0FBQztRQUNaLE9BQU8sRUFBRSxJQUFJLENBQUMsT0FBTyxFQUFFO1FBQ3ZCLEtBQUssRUFBRSxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUMsS0FBSyxFQUFFO1FBQzNCLFFBQVEsRUFBRSxJQUFJLENBQUMsTUFBTSxFQUFFLFlBQVksRUFBRSxJQUFJLE1BQU07S0FDaEQsQ0FBQyxFQUNGLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FDYixDQUNGLENBQUM7SUFFRixRQUFRLENBQUMsS0FBNkI7UUFDcEMsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDaEMsQ0FBQzswSEF4QlUsaUJBQWlCOzhHQUFqQixpQkFBaUI7OzJGQUFqQixpQkFBaUI7a0JBWjdCLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLFlBQVk7b0JBQ3RCLGNBQWMsRUFBRTt3QkFDZDs0QkFDRSxTQUFTLEVBQUUsZUFBZTs0QkFDMUIsTUFBTSxFQUFFLENBQUMsSUFBSSxDQUFDO3lCQUNmO3FCQUNGO29CQUNELElBQUksRUFBRTt3QkFDSixTQUFTLEVBQUUsaUJBQWlCO3FCQUM3QjtpQkFDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgY29tcHV0ZWQsIGluamVjdCwgaW5wdXQsIHNpZ25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgeHVpIH0gZnJvbSAnQHh1aS9jb3JlJztcbmltcG9ydCB7IFhMYWJlbERpcmVjdGl2ZSB9IGZyb20gJ0B4dWkvY29yZS9sYWJlbCc7XG5pbXBvcnQgeyB0eXBlIFZhcmlhbnRQcm9wcywgY3ZhIH0gZnJvbSAnY2xhc3MtdmFyaWFuY2UtYXV0aG9yaXR5JztcbmltcG9ydCB0eXBlIHsgQ2xhc3NWYWx1ZSB9IGZyb20gJ2Nsc3gnO1xuXG4vLyBUT0RPOiB0aGVtZSAtIGRpc2FibGVkLCBldGMuXG5leHBvcnQgY29uc3QgbGFiZWxWYXJpYW50cyA9IGN2YShcbiAgW1xuICAgICd0ZXh0LXNtIGZvbnQtbWVkaXVtIGxlYWRpbmctbm9uZScsXG4gICAgJ1smLm5nLWludmFsaWQubmctdG91Y2hlZF06dGV4dC1lcnJvcicsXG4gICAgJ1smPlt4dWlJbnB1dF1dOm15LTEgWyY6aGFzKFt4dWlJbnB1dF06ZGlzYWJsZWQpXTpjdXJzb3Itbm90LWFsbG93ZWQgWyY6aGFzKFt4dWlJbnB1dF06ZGlzYWJsZWQpXTpvcGFjaXR5LTcwJ1xuICBdLFxuICB7XG4gICAgdmFyaWFudHM6IHtcbiAgICAgIHZhcmlhbnQ6IHtcbiAgICAgICAgZGVmYXVsdDogJydcbiAgICAgIH0sXG4gICAgICBlcnJvcjoge1xuICAgICAgICBhdXRvOiAnWyY6aGFzKFt4dWlJbnB1dF0ubmctaW52YWxpZC5uZy10b3VjaGVkKV06dGV4dC1lcnJvcicsXG4gICAgICAgIHRydWU6ICd0ZXh0LWVycm9yJ1xuICAgICAgfSxcbiAgICAgIGRpc2FibGVkOiB7XG4gICAgICAgIGF1dG86ICdbJjpoYXMoW3h1aUlucHV0XTpkaXNhYmxlZCldOm9wYWNpdHktNzAnLFxuICAgICAgICB0cnVlOiAnb3BhY2l0eS03MCcsXG4gICAgICAgIGZhbHNlOiAnJ1xuICAgICAgfVxuICAgIH0sXG4gICAgZGVmYXVsdFZhcmlhbnRzOiB7XG4gICAgICB2YXJpYW50OiAnZGVmYXVsdCcsXG4gICAgICBlcnJvcjogJ2F1dG8nXG4gICAgfVxuICB9XG4pO1xuZXhwb3J0IHR5cGUgTGFiZWxWYXJpYW50cyA9IFZhcmlhbnRQcm9wczx0eXBlb2YgbGFiZWxWYXJpYW50cz47XG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ1t4dWlMYWJlbF0nLFxuICBob3N0RGlyZWN0aXZlczogW1xuICAgIHtcbiAgICAgIGRpcmVjdGl2ZTogWExhYmVsRGlyZWN0aXZlLFxuICAgICAgaW5wdXRzOiBbJ2lkJ11cbiAgICB9XG4gIF0sXG4gIGhvc3Q6IHtcbiAgICAnW2NsYXNzXSc6ICdjb21wdXRlZENsYXNzKCknXG4gIH1cbn0pXG5leHBvcnQgY2xhc3MgWHVpTGFiZWxEaXJlY3RpdmUge1xuICBwcml2YXRlIHJlYWRvbmx5IHhMYWJlbCA9IGluamVjdChYTGFiZWxEaXJlY3RpdmUsIHsgaG9zdDogdHJ1ZSB9KTtcblxuICByZWFkb25seSBjbGFzcyA9IGlucHV0PENsYXNzVmFsdWU+KCcnKTtcbiAgcmVhZG9ubHkgdmFyaWFudCA9IGlucHV0PExhYmVsVmFyaWFudHNbJ3ZhcmlhbnQnXT4oJ2RlZmF1bHQnKTtcbiAgcmVhZG9ubHkgZXJyb3IgPSBpbnB1dDxMYWJlbFZhcmlhbnRzWydlcnJvciddPignYXV0bycpO1xuXG4gIHByb3RlY3RlZCByZWFkb25seSBzdGF0ZSA9IGNvbXB1dGVkKCgpID0+ICh7XG4gICAgZXJyb3I6IHNpZ25hbCh0aGlzLmVycm9yKCkpXG4gIH0pKTtcblxuICBwcm90ZWN0ZWQgcmVhZG9ubHkgY29tcHV0ZWRDbGFzcyA9IGNvbXB1dGVkKCgpID0+XG4gICAgeHVpKFxuICAgICAgbGFiZWxWYXJpYW50cyh7XG4gICAgICAgIHZhcmlhbnQ6IHRoaXMudmFyaWFudCgpLFxuICAgICAgICBlcnJvcjogdGhpcy5zdGF0ZSgpLmVycm9yKCksXG4gICAgICAgIGRpc2FibGVkOiB0aGlzLnhMYWJlbD8uZGF0YURpc2FibGVkKCkgPz8gJ2F1dG8nXG4gICAgICB9KSxcbiAgICAgIHRoaXMuY2xhc3MoKVxuICAgIClcbiAgKTtcblxuICBzZXRFcnJvcihlcnJvcjogTGFiZWxWYXJpYW50c1snZXJyb3InXSk6IHZvaWQge1xuICAgIHRoaXMuc3RhdGUoKS5lcnJvci5zZXQoZXJyb3IpO1xuICB9XG59XG4iXX0=","/**\n * Generated bundle index. Do not edit.\n */\nexport * from './index';\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoieHVpLWxhYmVsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy91aS9sYWJlbC94dWkvc3JjL3h1aS1sYWJlbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsU0FBUyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL2luZGV4JztcbiJdfQ=="],"names":[],"mappings":"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"}
|
package/index.d.ts
CHANGED
|
@@ -1 +1,28 @@
|
|
|
1
|
-
|
|
1
|
+
import * as _angular_core from '@angular/core';
|
|
2
|
+
import * as class_variance_authority_dist_types from 'class-variance-authority/dist/types';
|
|
3
|
+
import { VariantProps } from 'class-variance-authority';
|
|
4
|
+
import { ClassValue } from 'clsx';
|
|
5
|
+
import * as i1 from '@xui/core/label';
|
|
6
|
+
|
|
7
|
+
declare const labelVariants: (props?: ({
|
|
8
|
+
variant?: "default" | null | undefined;
|
|
9
|
+
error?: boolean | "auto" | null | undefined;
|
|
10
|
+
disabled?: boolean | "auto" | null | undefined;
|
|
11
|
+
} & class_variance_authority_dist_types.ClassProp) | undefined) => string;
|
|
12
|
+
type LabelVariants = VariantProps<typeof labelVariants>;
|
|
13
|
+
declare class XuiLabelDirective {
|
|
14
|
+
private readonly xLabel;
|
|
15
|
+
readonly class: _angular_core.InputSignal<ClassValue>;
|
|
16
|
+
readonly variant: _angular_core.InputSignal<"default" | null | undefined>;
|
|
17
|
+
readonly error: _angular_core.InputSignal<boolean | "auto" | null | undefined>;
|
|
18
|
+
protected readonly state: _angular_core.Signal<{
|
|
19
|
+
error: _angular_core.WritableSignal<boolean | "auto" | null | undefined>;
|
|
20
|
+
}>;
|
|
21
|
+
protected readonly computedClass: _angular_core.Signal<string>;
|
|
22
|
+
setError(error: LabelVariants['error']): void;
|
|
23
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<XuiLabelDirective, never>;
|
|
24
|
+
static ɵdir: _angular_core.ɵɵDirectiveDeclaration<XuiLabelDirective, "[xuiLabel]", never, { "class": { "alias": "class"; "required": false; "isSignal": true; }; "variant": { "alias": "variant"; "required": false; "isSignal": true; }; "error": { "alias": "error"; "required": false; "isSignal": true; }; }, {}, never, never, true, [{ directive: typeof i1.XLabelDirective; inputs: { "id": "id"; }; outputs: {}; }]>;
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
export { XuiLabelDirective, labelVariants };
|
|
28
|
+
export type { LabelVariants };
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@xui/label",
|
|
3
|
-
"version": "2.0.0-alpha.
|
|
4
|
-
"description": "Modern Angular
|
|
3
|
+
"version": "2.0.0-alpha.8",
|
|
4
|
+
"description": "Modern Angular 20 UI Library based on TailwindCSS",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"angular",
|
|
7
7
|
"ui",
|
|
@@ -20,8 +20,8 @@
|
|
|
20
20
|
],
|
|
21
21
|
"sideEffects": false,
|
|
22
22
|
"peerDependencies": {
|
|
23
|
-
"@angular/core": "
|
|
24
|
-
"@xui/core": "2",
|
|
23
|
+
"@angular/core": "20",
|
|
24
|
+
"@xui/core": "2.0.0-alpha.8",
|
|
25
25
|
"class-variance-authority": "^0.7.1",
|
|
26
26
|
"clsx": "^2.1.1"
|
|
27
27
|
},
|
package/lib/label.directive.d.ts
DELETED
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
import { type VariantProps } from 'class-variance-authority';
|
|
2
|
-
import type { ClassValue } from 'clsx';
|
|
3
|
-
import * as i0 from "@angular/core";
|
|
4
|
-
import * as i1 from "@xui/core/label";
|
|
5
|
-
export declare const labelVariants: (props?: ({
|
|
6
|
-
variant?: "default" | null | undefined;
|
|
7
|
-
error?: boolean | "auto" | null | undefined;
|
|
8
|
-
disabled?: boolean | "auto" | null | undefined;
|
|
9
|
-
} & import("class-variance-authority/dist/types").ClassProp) | undefined) => string;
|
|
10
|
-
export type LabelVariants = VariantProps<typeof labelVariants>;
|
|
11
|
-
export declare class XuiLabelDirective {
|
|
12
|
-
private readonly xLabel;
|
|
13
|
-
readonly class: import("@angular/core").InputSignal<ClassValue>;
|
|
14
|
-
readonly variant: import("@angular/core").InputSignal<"default" | null | undefined>;
|
|
15
|
-
readonly error: import("@angular/core").InputSignal<boolean | "auto" | null | undefined>;
|
|
16
|
-
protected readonly state: import("@angular/core").Signal<{
|
|
17
|
-
error: import("@angular/core").WritableSignal<boolean | "auto" | null | undefined>;
|
|
18
|
-
}>;
|
|
19
|
-
protected readonly computedClass: import("@angular/core").Signal<string>;
|
|
20
|
-
setError(error: LabelVariants['error']): void;
|
|
21
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<XuiLabelDirective, never>;
|
|
22
|
-
static ɵdir: i0.ɵɵDirectiveDeclaration<XuiLabelDirective, "[xuiLabel]", never, { "class": { "alias": "class"; "required": false; "isSignal": true; }; "variant": { "alias": "variant"; "required": false; "isSignal": true; }; "error": { "alias": "error"; "required": false; "isSignal": true; }; }, {}, never, never, true, [{ directive: typeof i1.XLabelDirective; inputs: { "id": "id"; }; outputs: {}; }]>;
|
|
23
|
-
}
|