@wirekyt/angular 0.0.23 → 0.0.24
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/dist/fesm2022/wirekyt-angular-tabs.mjs +390 -0
- package/dist/fesm2022/wirekyt-angular-tabs.mjs.map +1 -0
- package/dist/package.json +5 -1
- package/dist/types/wirekyt-angular-checkbox.d.ts +1 -1
- package/dist/types/wirekyt-angular-color-picker.d.ts +1 -1
- package/dist/types/wirekyt-angular-combobox.d.ts +1 -1
- package/dist/types/wirekyt-angular-date-picker.d.ts +1 -1
- package/dist/types/wirekyt-angular-tabs.d.ts +123 -0
- package/dist/types/wirekyt-angular-tabs.d.ts.map +1 -0
- package/package.json +6 -2
|
@@ -0,0 +1,390 @@
|
|
|
1
|
+
import * as tabs from '@wirekyt/dom/machines/tabs';
|
|
2
|
+
export { anatomy as tabsAnatomy } from '@wirekyt/dom/machines/tabs';
|
|
3
|
+
import * as i0 from '@angular/core';
|
|
4
|
+
import { InjectionToken, inject, booleanAttribute, input, model, output, EnvironmentInjector, Injector, DestroyRef, Renderer2, ElementRef, forwardRef, Directive, computed, TemplateRef, ViewContainerRef, effect, untracked } from '@angular/core';
|
|
5
|
+
import { injectLocale, injectEnvironment, createId, useMachine, buildRootCarrier, bindProps } from '@wirekyt/angular';
|
|
6
|
+
import { usePresence, PRESENCE_CONTEXT } from '@wirekyt/angular/presence';
|
|
7
|
+
|
|
8
|
+
const TABS_CONTEXT = new InjectionToken("WIREKYT.TABS_CONTEXT");
|
|
9
|
+
function injectTabsContext() {
|
|
10
|
+
return inject(TABS_CONTEXT);
|
|
11
|
+
}
|
|
12
|
+
const TABS_CONTEXT_CARRIER = new InjectionToken("WIREKYT.TABS_CONTEXT_CARRIER");
|
|
13
|
+
function injectTabsContextCarrier() {
|
|
14
|
+
return inject(TABS_CONTEXT_CARRIER);
|
|
15
|
+
}
|
|
16
|
+
const TABS_RENDER_STRATEGY_CONTEXT = new InjectionToken("WIREKYT.TABS_RENDER_STRATEGY_CONTEXT");
|
|
17
|
+
function injectTabsRenderStrategyContext() {
|
|
18
|
+
return inject(TABS_RENDER_STRATEGY_CONTEXT);
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
function useTabs(options) {
|
|
22
|
+
const locale = injectLocale();
|
|
23
|
+
const environment = injectEnvironment();
|
|
24
|
+
const fallbackId = createId();
|
|
25
|
+
return useMachine({
|
|
26
|
+
machine: tabs.machine,
|
|
27
|
+
context: () => {
|
|
28
|
+
const props = options.context();
|
|
29
|
+
return {
|
|
30
|
+
...props,
|
|
31
|
+
dir: locale.dir,
|
|
32
|
+
getRootNode: environment.getRootNode,
|
|
33
|
+
id: props.id ?? fallbackId,
|
|
34
|
+
};
|
|
35
|
+
},
|
|
36
|
+
connect: (service, normalize) => tabs.connect(service, normalize),
|
|
37
|
+
});
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
const optionalBooleanAttribute = (value) => value === undefined || value === null ? undefined : booleanAttribute(value);
|
|
41
|
+
class TabsRoot {
|
|
42
|
+
id = input(undefined, /* @ts-ignore */
|
|
43
|
+
...(ngDevMode ? [{ debugName: "id" }] : /* istanbul ignore next */ []));
|
|
44
|
+
ids = input(undefined, /* @ts-ignore */
|
|
45
|
+
...(ngDevMode ? [{ debugName: "ids" }] : /* istanbul ignore next */ []));
|
|
46
|
+
value = model(undefined, /* @ts-ignore */
|
|
47
|
+
...(ngDevMode ? [{ debugName: "value" }] : /* istanbul ignore next */ []));
|
|
48
|
+
defaultValue = input(undefined, /* @ts-ignore */
|
|
49
|
+
...(ngDevMode ? [{ debugName: "defaultValue" }] : /* istanbul ignore next */ []));
|
|
50
|
+
orientation = input(undefined, /* @ts-ignore */
|
|
51
|
+
...(ngDevMode ? [{ debugName: "orientation" }] : /* istanbul ignore next */ []));
|
|
52
|
+
activationMode = input(undefined, /* @ts-ignore */
|
|
53
|
+
...(ngDevMode ? [{ debugName: "activationMode" }] : /* istanbul ignore next */ []));
|
|
54
|
+
loopFocus = input(undefined, { ...(ngDevMode ? { debugName: "loopFocus" } : /* istanbul ignore next */ {}), transform: optionalBooleanAttribute });
|
|
55
|
+
composite = input(undefined, { ...(ngDevMode ? { debugName: "composite" } : /* istanbul ignore next */ {}), transform: optionalBooleanAttribute });
|
|
56
|
+
deselectable = input(undefined, { ...(ngDevMode ? { debugName: "deselectable" } : /* istanbul ignore next */ {}), transform: optionalBooleanAttribute });
|
|
57
|
+
lazyMount = input(false, { ...(ngDevMode ? { debugName: "lazyMount" } : /* istanbul ignore next */ {}), transform: booleanAttribute });
|
|
58
|
+
unmountOnExit = input(false, { ...(ngDevMode ? { debugName: "unmountOnExit" } : /* istanbul ignore next */ {}), transform: booleanAttribute });
|
|
59
|
+
navigate = input(undefined, /* @ts-ignore */
|
|
60
|
+
...(ngDevMode ? [{ debugName: "navigate" }] : /* istanbul ignore next */ []));
|
|
61
|
+
translations = input(undefined, /* @ts-ignore */
|
|
62
|
+
...(ngDevMode ? [{ debugName: "translations" }] : /* istanbul ignore next */ []));
|
|
63
|
+
focusChange = output();
|
|
64
|
+
valueDetailsChange = output();
|
|
65
|
+
navigateChange = output();
|
|
66
|
+
machine = useTabs({
|
|
67
|
+
context: () => ({
|
|
68
|
+
id: this.id(),
|
|
69
|
+
ids: this.ids(),
|
|
70
|
+
value: this.value(),
|
|
71
|
+
defaultValue: this.defaultValue(),
|
|
72
|
+
orientation: this.orientation(),
|
|
73
|
+
activationMode: this.activationMode(),
|
|
74
|
+
loopFocus: this.loopFocus(),
|
|
75
|
+
composite: this.composite(),
|
|
76
|
+
deselectable: this.deselectable(),
|
|
77
|
+
navigate: (details) => {
|
|
78
|
+
this.navigate()?.(details);
|
|
79
|
+
this.navigateChange.emit(details);
|
|
80
|
+
},
|
|
81
|
+
translations: this.translations(),
|
|
82
|
+
onValueChange: (details) => {
|
|
83
|
+
if (this.value() !== details.value)
|
|
84
|
+
this.value.set(details.value);
|
|
85
|
+
this.valueDetailsChange.emit(details);
|
|
86
|
+
},
|
|
87
|
+
onFocusChange: (details) => {
|
|
88
|
+
this.focusChange.emit(details);
|
|
89
|
+
},
|
|
90
|
+
}),
|
|
91
|
+
});
|
|
92
|
+
state = this.machine.state;
|
|
93
|
+
api = this.machine.api;
|
|
94
|
+
service = this.machine.service;
|
|
95
|
+
send = this.machine.send;
|
|
96
|
+
contextCarrier = buildRootCarrier({
|
|
97
|
+
providers: [{ provide: TABS_RENDER_STRATEGY_CONTEXT, useValue: this }],
|
|
98
|
+
root: this,
|
|
99
|
+
rootToken: TABS_CONTEXT,
|
|
100
|
+
originInjector: inject(Injector),
|
|
101
|
+
environmentInjector: inject(EnvironmentInjector),
|
|
102
|
+
});
|
|
103
|
+
constructor() {
|
|
104
|
+
bindProps({
|
|
105
|
+
elementRef: inject(ElementRef),
|
|
106
|
+
renderer: inject(Renderer2),
|
|
107
|
+
destroyRef: inject(DestroyRef),
|
|
108
|
+
props: () => this.api().getRootProps(),
|
|
109
|
+
});
|
|
110
|
+
}
|
|
111
|
+
getContextCarrier() {
|
|
112
|
+
return this.contextCarrier;
|
|
113
|
+
}
|
|
114
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.3", ngImport: i0, type: TabsRoot, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
115
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "22.1.3", type: TabsRoot, isStandalone: true, selector: "[tabs-root]", inputs: { id: { classPropertyName: "id", publicName: "id", isSignal: true, isRequired: false, transformFunction: null }, ids: { classPropertyName: "ids", publicName: "ids", isSignal: true, isRequired: false, transformFunction: null }, value: { classPropertyName: "value", publicName: "value", isSignal: true, isRequired: false, transformFunction: null }, defaultValue: { classPropertyName: "defaultValue", publicName: "defaultValue", isSignal: true, isRequired: false, transformFunction: null }, orientation: { classPropertyName: "orientation", publicName: "orientation", isSignal: true, isRequired: false, transformFunction: null }, activationMode: { classPropertyName: "activationMode", publicName: "activationMode", isSignal: true, isRequired: false, transformFunction: null }, loopFocus: { classPropertyName: "loopFocus", publicName: "loopFocus", isSignal: true, isRequired: false, transformFunction: null }, composite: { classPropertyName: "composite", publicName: "composite", isSignal: true, isRequired: false, transformFunction: null }, deselectable: { classPropertyName: "deselectable", publicName: "deselectable", isSignal: true, isRequired: false, transformFunction: null }, lazyMount: { classPropertyName: "lazyMount", publicName: "lazyMount", isSignal: true, isRequired: false, transformFunction: null }, unmountOnExit: { classPropertyName: "unmountOnExit", publicName: "unmountOnExit", isSignal: true, isRequired: false, transformFunction: null }, navigate: { classPropertyName: "navigate", publicName: "navigate", isSignal: true, isRequired: false, transformFunction: null }, translations: { classPropertyName: "translations", publicName: "translations", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { value: "valueChange", focusChange: "focusChange", valueDetailsChange: "valueDetailsChange", navigateChange: "navigateChange" }, providers: [
|
|
116
|
+
{ provide: TABS_CONTEXT, useExisting: forwardRef(() => TabsRoot) },
|
|
117
|
+
{ provide: TABS_RENDER_STRATEGY_CONTEXT, useExisting: forwardRef(() => TabsRoot) },
|
|
118
|
+
{
|
|
119
|
+
provide: TABS_CONTEXT_CARRIER,
|
|
120
|
+
useFactory: (root) => root.getContextCarrier(),
|
|
121
|
+
deps: [forwardRef(() => TabsRoot)],
|
|
122
|
+
},
|
|
123
|
+
], exportAs: ["tabsRoot"], ngImport: i0 });
|
|
124
|
+
}
|
|
125
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.3", ngImport: i0, type: TabsRoot, decorators: [{
|
|
126
|
+
type: Directive,
|
|
127
|
+
args: [{
|
|
128
|
+
selector: "[tabs-root]",
|
|
129
|
+
standalone: true,
|
|
130
|
+
exportAs: "tabsRoot",
|
|
131
|
+
providers: [
|
|
132
|
+
{ provide: TABS_CONTEXT, useExisting: forwardRef(() => TabsRoot) },
|
|
133
|
+
{ provide: TABS_RENDER_STRATEGY_CONTEXT, useExisting: forwardRef(() => TabsRoot) },
|
|
134
|
+
{
|
|
135
|
+
provide: TABS_CONTEXT_CARRIER,
|
|
136
|
+
useFactory: (root) => root.getContextCarrier(),
|
|
137
|
+
deps: [forwardRef(() => TabsRoot)],
|
|
138
|
+
},
|
|
139
|
+
],
|
|
140
|
+
}]
|
|
141
|
+
}], ctorParameters: () => [], propDecorators: { id: [{ type: i0.Input, args: [{ isSignal: true, alias: "id", required: false }] }], ids: [{ type: i0.Input, args: [{ isSignal: true, alias: "ids", required: false }] }], value: [{ type: i0.Input, args: [{ isSignal: true, alias: "value", required: false }] }, { type: i0.Output, args: ["valueChange"] }], defaultValue: [{ type: i0.Input, args: [{ isSignal: true, alias: "defaultValue", required: false }] }], orientation: [{ type: i0.Input, args: [{ isSignal: true, alias: "orientation", required: false }] }], activationMode: [{ type: i0.Input, args: [{ isSignal: true, alias: "activationMode", required: false }] }], loopFocus: [{ type: i0.Input, args: [{ isSignal: true, alias: "loopFocus", required: false }] }], composite: [{ type: i0.Input, args: [{ isSignal: true, alias: "composite", required: false }] }], deselectable: [{ type: i0.Input, args: [{ isSignal: true, alias: "deselectable", required: false }] }], lazyMount: [{ type: i0.Input, args: [{ isSignal: true, alias: "lazyMount", required: false }] }], unmountOnExit: [{ type: i0.Input, args: [{ isSignal: true, alias: "unmountOnExit", required: false }] }], navigate: [{ type: i0.Input, args: [{ isSignal: true, alias: "navigate", required: false }] }], translations: [{ type: i0.Input, args: [{ isSignal: true, alias: "translations", required: false }] }], focusChange: [{ type: i0.Output, args: ["focusChange"] }], valueDetailsChange: [{ type: i0.Output, args: ["valueDetailsChange"] }], navigateChange: [{ type: i0.Output, args: ["navigateChange"] }] } });
|
|
142
|
+
|
|
143
|
+
class TabsRootProvider {
|
|
144
|
+
value = input.required(/* @ts-ignore */
|
|
145
|
+
...(ngDevMode ? [{ debugName: "value" }] : /* istanbul ignore next */ []));
|
|
146
|
+
lazyMount = input(false, { ...(ngDevMode ? { debugName: "lazyMount" } : /* istanbul ignore next */ {}), transform: booleanAttribute });
|
|
147
|
+
unmountOnExit = input(false, { ...(ngDevMode ? { debugName: "unmountOnExit" } : /* istanbul ignore next */ {}), transform: booleanAttribute });
|
|
148
|
+
state = computed(() => this.value().state(), /* @ts-ignore */
|
|
149
|
+
...(ngDevMode ? [{ debugName: "state" }] : /* istanbul ignore next */ []));
|
|
150
|
+
api = computed(() => this.value().api(), /* @ts-ignore */
|
|
151
|
+
...(ngDevMode ? [{ debugName: "api" }] : /* istanbul ignore next */ []));
|
|
152
|
+
send = (event) => this.value().send(event);
|
|
153
|
+
get service() {
|
|
154
|
+
return this.value().service;
|
|
155
|
+
}
|
|
156
|
+
contextCarrier = buildRootCarrier({
|
|
157
|
+
providers: [{ provide: TABS_RENDER_STRATEGY_CONTEXT, useValue: this }],
|
|
158
|
+
root: this,
|
|
159
|
+
rootToken: TABS_CONTEXT,
|
|
160
|
+
originInjector: inject(Injector),
|
|
161
|
+
environmentInjector: inject(EnvironmentInjector),
|
|
162
|
+
});
|
|
163
|
+
constructor() {
|
|
164
|
+
bindProps({
|
|
165
|
+
elementRef: inject(ElementRef),
|
|
166
|
+
renderer: inject(Renderer2),
|
|
167
|
+
destroyRef: inject(DestroyRef),
|
|
168
|
+
props: () => this.api().getRootProps(),
|
|
169
|
+
});
|
|
170
|
+
}
|
|
171
|
+
getContextCarrier() {
|
|
172
|
+
return this.contextCarrier;
|
|
173
|
+
}
|
|
174
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.3", ngImport: i0, type: TabsRootProvider, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
175
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "22.1.3", type: TabsRootProvider, isStandalone: true, selector: "[tabs-root-provider]", inputs: { value: { classPropertyName: "value", publicName: "value", isSignal: true, isRequired: true, transformFunction: null }, lazyMount: { classPropertyName: "lazyMount", publicName: "lazyMount", isSignal: true, isRequired: false, transformFunction: null }, unmountOnExit: { classPropertyName: "unmountOnExit", publicName: "unmountOnExit", isSignal: true, isRequired: false, transformFunction: null } }, providers: [
|
|
176
|
+
{ provide: TABS_CONTEXT, useExisting: forwardRef(() => TabsRootProvider) },
|
|
177
|
+
{
|
|
178
|
+
provide: TABS_RENDER_STRATEGY_CONTEXT,
|
|
179
|
+
useExisting: forwardRef(() => TabsRootProvider),
|
|
180
|
+
},
|
|
181
|
+
{
|
|
182
|
+
provide: TABS_CONTEXT_CARRIER,
|
|
183
|
+
useFactory: (provider) => provider.getContextCarrier(),
|
|
184
|
+
deps: [forwardRef(() => TabsRootProvider)],
|
|
185
|
+
},
|
|
186
|
+
], exportAs: ["tabsRootProvider"], ngImport: i0 });
|
|
187
|
+
}
|
|
188
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.3", ngImport: i0, type: TabsRootProvider, decorators: [{
|
|
189
|
+
type: Directive,
|
|
190
|
+
args: [{
|
|
191
|
+
selector: "[tabs-root-provider]",
|
|
192
|
+
standalone: true,
|
|
193
|
+
exportAs: "tabsRootProvider",
|
|
194
|
+
providers: [
|
|
195
|
+
{ provide: TABS_CONTEXT, useExisting: forwardRef(() => TabsRootProvider) },
|
|
196
|
+
{
|
|
197
|
+
provide: TABS_RENDER_STRATEGY_CONTEXT,
|
|
198
|
+
useExisting: forwardRef(() => TabsRootProvider),
|
|
199
|
+
},
|
|
200
|
+
{
|
|
201
|
+
provide: TABS_CONTEXT_CARRIER,
|
|
202
|
+
useFactory: (provider) => provider.getContextCarrier(),
|
|
203
|
+
deps: [forwardRef(() => TabsRootProvider)],
|
|
204
|
+
},
|
|
205
|
+
],
|
|
206
|
+
}]
|
|
207
|
+
}], ctorParameters: () => [], propDecorators: { value: [{ type: i0.Input, args: [{ isSignal: true, alias: "value", required: true }] }], lazyMount: [{ type: i0.Input, args: [{ isSignal: true, alias: "lazyMount", required: false }] }], unmountOnExit: [{ type: i0.Input, args: [{ isSignal: true, alias: "unmountOnExit", required: false }] }] } });
|
|
208
|
+
|
|
209
|
+
class TabsList {
|
|
210
|
+
constructor() {
|
|
211
|
+
const context = injectTabsContext();
|
|
212
|
+
bindProps({
|
|
213
|
+
elementRef: inject(ElementRef),
|
|
214
|
+
renderer: inject(Renderer2),
|
|
215
|
+
destroyRef: inject(DestroyRef),
|
|
216
|
+
props: () => context.api().getListProps(),
|
|
217
|
+
});
|
|
218
|
+
}
|
|
219
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.3", ngImport: i0, type: TabsList, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
220
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "22.1.3", type: TabsList, isStandalone: true, selector: "[tabs-list]", exportAs: ["tabsList"], ngImport: i0 });
|
|
221
|
+
}
|
|
222
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.3", ngImport: i0, type: TabsList, decorators: [{
|
|
223
|
+
type: Directive,
|
|
224
|
+
args: [{
|
|
225
|
+
selector: "[tabs-list]",
|
|
226
|
+
standalone: true,
|
|
227
|
+
exportAs: "tabsList",
|
|
228
|
+
}]
|
|
229
|
+
}], ctorParameters: () => [] });
|
|
230
|
+
|
|
231
|
+
class TabsTrigger {
|
|
232
|
+
value = input.required(/* @ts-ignore */
|
|
233
|
+
...(ngDevMode ? [{ debugName: "value" }] : /* istanbul ignore next */ []));
|
|
234
|
+
disabled = input(false, { ...(ngDevMode ? { debugName: "disabled" } : /* istanbul ignore next */ {}), transform: booleanAttribute });
|
|
235
|
+
constructor() {
|
|
236
|
+
const context = injectTabsContext();
|
|
237
|
+
bindProps({
|
|
238
|
+
elementRef: inject(ElementRef),
|
|
239
|
+
renderer: inject(Renderer2),
|
|
240
|
+
destroyRef: inject(DestroyRef),
|
|
241
|
+
props: () => context.api().getTriggerProps({
|
|
242
|
+
value: this.value(),
|
|
243
|
+
disabled: this.disabled(),
|
|
244
|
+
}),
|
|
245
|
+
});
|
|
246
|
+
}
|
|
247
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.3", ngImport: i0, type: TabsTrigger, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
248
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "22.1.3", type: TabsTrigger, isStandalone: true, selector: "[tabs-trigger]", inputs: { value: { classPropertyName: "value", publicName: "value", isSignal: true, isRequired: true, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null } }, exportAs: ["tabsTrigger"], ngImport: i0 });
|
|
249
|
+
}
|
|
250
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.3", ngImport: i0, type: TabsTrigger, decorators: [{
|
|
251
|
+
type: Directive,
|
|
252
|
+
args: [{
|
|
253
|
+
selector: "[tabs-trigger]",
|
|
254
|
+
standalone: true,
|
|
255
|
+
exportAs: "tabsTrigger",
|
|
256
|
+
}]
|
|
257
|
+
}], ctorParameters: () => [], propDecorators: { value: [{ type: i0.Input, args: [{ isSignal: true, alias: "value", required: true }] }], disabled: [{ type: i0.Input, args: [{ isSignal: true, alias: "disabled", required: false }] }] } });
|
|
258
|
+
|
|
259
|
+
class TabsContent {
|
|
260
|
+
value = input.required(/* @ts-ignore */
|
|
261
|
+
...(ngDevMode ? [{ debugName: "value" }] : /* istanbul ignore next */ []));
|
|
262
|
+
context = injectTabsContext();
|
|
263
|
+
renderStrategy = injectTabsRenderStrategyContext();
|
|
264
|
+
presence = usePresence({
|
|
265
|
+
context: () => ({
|
|
266
|
+
present: this.context.api().value === this.value(),
|
|
267
|
+
immediate: true,
|
|
268
|
+
lazyMount: this.renderStrategy.lazyMount(),
|
|
269
|
+
unmountOnExit: this.renderStrategy.unmountOnExit(),
|
|
270
|
+
}),
|
|
271
|
+
});
|
|
272
|
+
constructor() {
|
|
273
|
+
const template = inject((TemplateRef), { optional: true });
|
|
274
|
+
const container = inject(ViewContainerRef);
|
|
275
|
+
const host = inject(ElementRef);
|
|
276
|
+
const elementRef = template ? { nativeElement: null } : host;
|
|
277
|
+
let view;
|
|
278
|
+
effect(() => {
|
|
279
|
+
const unmounted = this.presence.unmounted();
|
|
280
|
+
if (template) {
|
|
281
|
+
if (unmounted) {
|
|
282
|
+
elementRef.nativeElement = null;
|
|
283
|
+
container.clear();
|
|
284
|
+
view = undefined;
|
|
285
|
+
}
|
|
286
|
+
else if (!view) {
|
|
287
|
+
view = container.createEmbeddedView(template);
|
|
288
|
+
elementRef.nativeElement =
|
|
289
|
+
view.rootNodes.find((node) => node.nodeType === 1) ?? null;
|
|
290
|
+
}
|
|
291
|
+
}
|
|
292
|
+
untracked(() => this.presence.setNode(elementRef.nativeElement));
|
|
293
|
+
});
|
|
294
|
+
bindProps({
|
|
295
|
+
elementRef,
|
|
296
|
+
renderer: inject(Renderer2),
|
|
297
|
+
destroyRef: inject(DestroyRef),
|
|
298
|
+
props: () => {
|
|
299
|
+
this.presence.unmounted();
|
|
300
|
+
return {
|
|
301
|
+
...this.context.api().getContentProps({ value: this.value() }),
|
|
302
|
+
...this.presence.getPresenceProps(),
|
|
303
|
+
};
|
|
304
|
+
},
|
|
305
|
+
});
|
|
306
|
+
}
|
|
307
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.3", ngImport: i0, type: TabsContent, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
308
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "22.1.3", type: TabsContent, isStandalone: true, selector: "[tabs-content]", inputs: { value: { classPropertyName: "value", publicName: "value", isSignal: true, isRequired: true, transformFunction: null } }, providers: [
|
|
309
|
+
{
|
|
310
|
+
provide: PRESENCE_CONTEXT,
|
|
311
|
+
useFactory: (content) => content.presence,
|
|
312
|
+
deps: [forwardRef(() => TabsContent)],
|
|
313
|
+
},
|
|
314
|
+
], exportAs: ["tabsContent"], ngImport: i0 });
|
|
315
|
+
}
|
|
316
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.3", ngImport: i0, type: TabsContent, decorators: [{
|
|
317
|
+
type: Directive,
|
|
318
|
+
args: [{
|
|
319
|
+
selector: "[tabs-content]",
|
|
320
|
+
standalone: true,
|
|
321
|
+
exportAs: "tabsContent",
|
|
322
|
+
providers: [
|
|
323
|
+
{
|
|
324
|
+
provide: PRESENCE_CONTEXT,
|
|
325
|
+
useFactory: (content) => content.presence,
|
|
326
|
+
deps: [forwardRef(() => TabsContent)],
|
|
327
|
+
},
|
|
328
|
+
],
|
|
329
|
+
}]
|
|
330
|
+
}], ctorParameters: () => [], propDecorators: { value: [{ type: i0.Input, args: [{ isSignal: true, alias: "value", required: true }] }] } });
|
|
331
|
+
|
|
332
|
+
class TabsIndicator {
|
|
333
|
+
constructor() {
|
|
334
|
+
const context = injectTabsContext();
|
|
335
|
+
bindProps({
|
|
336
|
+
elementRef: inject(ElementRef),
|
|
337
|
+
renderer: inject(Renderer2),
|
|
338
|
+
destroyRef: inject(DestroyRef),
|
|
339
|
+
props: () => context.api().getIndicatorProps(),
|
|
340
|
+
});
|
|
341
|
+
}
|
|
342
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.3", ngImport: i0, type: TabsIndicator, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
343
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "22.1.3", type: TabsIndicator, isStandalone: true, selector: "[tabs-indicator]", exportAs: ["tabsIndicator"], ngImport: i0 });
|
|
344
|
+
}
|
|
345
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.3", ngImport: i0, type: TabsIndicator, decorators: [{
|
|
346
|
+
type: Directive,
|
|
347
|
+
args: [{
|
|
348
|
+
selector: "[tabs-indicator]",
|
|
349
|
+
standalone: true,
|
|
350
|
+
exportAs: "tabsIndicator",
|
|
351
|
+
}]
|
|
352
|
+
}], ctorParameters: () => [] });
|
|
353
|
+
|
|
354
|
+
class TabsContext {
|
|
355
|
+
static ngTemplateContextGuard(_directive, context) {
|
|
356
|
+
void context;
|
|
357
|
+
return true;
|
|
358
|
+
}
|
|
359
|
+
tabs = injectTabsContext();
|
|
360
|
+
templateRef = inject(TemplateRef);
|
|
361
|
+
viewContainer = inject(ViewContainerRef);
|
|
362
|
+
constructor() {
|
|
363
|
+
const view = this.viewContainer.createEmbeddedView(this.templateRef, {
|
|
364
|
+
$implicit: this.tabs.api,
|
|
365
|
+
api: this.tabs.api,
|
|
366
|
+
});
|
|
367
|
+
effect(() => {
|
|
368
|
+
this.tabs.api();
|
|
369
|
+
view.detectChanges();
|
|
370
|
+
});
|
|
371
|
+
inject(DestroyRef).onDestroy(() => view.destroy());
|
|
372
|
+
}
|
|
373
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.3", ngImport: i0, type: TabsContext, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
374
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "22.1.3", type: TabsContext, isStandalone: true, selector: "[tabs-context]", exportAs: ["tabsContext"], ngImport: i0 });
|
|
375
|
+
}
|
|
376
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.3", ngImport: i0, type: TabsContext, decorators: [{
|
|
377
|
+
type: Directive,
|
|
378
|
+
args: [{
|
|
379
|
+
selector: "[tabs-context]",
|
|
380
|
+
standalone: true,
|
|
381
|
+
exportAs: "tabsContext",
|
|
382
|
+
}]
|
|
383
|
+
}], ctorParameters: () => [] });
|
|
384
|
+
|
|
385
|
+
/**
|
|
386
|
+
* Generated bundle index. Do not edit.
|
|
387
|
+
*/
|
|
388
|
+
|
|
389
|
+
export { TABS_CONTEXT, TABS_CONTEXT_CARRIER, TABS_RENDER_STRATEGY_CONTEXT, TabsContent, TabsContext, TabsIndicator, TabsList, TabsRoot, TabsRootProvider, TabsTrigger, injectTabsContext, injectTabsContextCarrier, injectTabsRenderStrategyContext, useTabs };
|
|
390
|
+
//# sourceMappingURL=wirekyt-angular-tabs.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"wirekyt-angular-tabs.mjs","sources":["../../src/components/tabs/use-context.ts","../../src/components/tabs/use.ts","../../src/components/tabs/root.ts","../../src/components/tabs/root-provider.ts","../../src/components/tabs/list.ts","../../src/components/tabs/trigger.ts","../../src/components/tabs/content.ts","../../src/components/tabs/indicator.ts","../../src/components/tabs/context.ts","../../src/components/tabs/wirekyt-angular-tabs.ts"],"sourcesContent":["import type { ContextCarrier } from \"@wirekyt/angular\";\n\nimport { InjectionToken, inject, type Signal } from \"@angular/core\";\n\nimport type { UseTabsReturn } from \"./use\";\n\nexport const TABS_CONTEXT = new InjectionToken<UseTabsReturn>(\"WIREKYT.TABS_CONTEXT\");\n\nexport function injectTabsContext(): UseTabsReturn {\n return inject(TABS_CONTEXT);\n}\n\nexport const TABS_CONTEXT_CARRIER = new InjectionToken<ContextCarrier<UseTabsReturn>>(\n \"WIREKYT.TABS_CONTEXT_CARRIER\",\n);\n\nexport function injectTabsContextCarrier(): ContextCarrier<UseTabsReturn> {\n return inject(TABS_CONTEXT_CARRIER);\n}\n\nexport interface TabsRenderStrategyContext {\n readonly lazyMount: Signal<boolean>;\n readonly unmountOnExit: Signal<boolean>;\n}\n\nexport const TABS_RENDER_STRATEGY_CONTEXT = new InjectionToken<TabsRenderStrategyContext>(\n \"WIREKYT.TABS_RENDER_STRATEGY_CONTEXT\",\n);\n\nexport function injectTabsRenderStrategyContext(): TabsRenderStrategyContext {\n return inject(TABS_RENDER_STRATEGY_CONTEXT);\n}\n","import type { Machine } from \"@wirekyt/dom\";\n\nimport {\n createId,\n injectEnvironment,\n injectLocale,\n useMachine,\n type UseMachineReturn,\n} from \"@wirekyt/angular\";\nimport * as tabs from \"@wirekyt/dom/machines/tabs\";\n\ntype OptionalId<T extends { id: string }> = Omit<T, \"id\"> & { id?: string };\n\nexport interface UseTabsProps extends OptionalId<Omit<tabs.Props, \"dir\" | \"getRootNode\">> {}\n\nexport type UseTabsReturn = UseMachineReturn<tabs.Service[\"state\"], tabs.Api, tabs.Service>;\n\nexport interface UseTabsOptions {\n context: () => UseTabsProps;\n}\n\ntype TabsContext = Record<string, unknown>;\ntype TabsSchema = tabs.Machine extends Machine<infer TSchema> ? TSchema : never;\n\nexport function useTabs(options: UseTabsOptions): UseTabsReturn {\n const locale = injectLocale();\n const environment = injectEnvironment();\n const fallbackId = createId();\n\n return useMachine<TabsSchema, tabs.Api>({\n machine: tabs.machine,\n context: () => {\n const props = options.context();\n return {\n ...props,\n dir: locale.dir,\n getRootNode: environment.getRootNode,\n id: props.id ?? fallbackId,\n } as TabsContext;\n },\n connect: (service, normalize) => tabs.connect(service, normalize),\n });\n}\n","import type { ContextCarrier } from \"@wirekyt/angular\";\nimport type * as tabs from \"@wirekyt/dom/machines/tabs\";\n\nimport {\n DestroyRef,\n Directive,\n ElementRef,\n EnvironmentInjector,\n Injector,\n Renderer2,\n type OutputEmitterRef,\n type ProviderToken,\n booleanAttribute,\n forwardRef,\n inject,\n input,\n model,\n output,\n type InputSignal,\n type InputSignalWithTransform,\n type ModelSignal,\n type Signal,\n} from \"@angular/core\";\nimport { bindProps, buildRootCarrier } from \"@wirekyt/angular\";\n\nimport type {\n TabsElementIds,\n TabsFocusChangeDetails,\n TabsIntlTranslations,\n TabsNavigateDetails,\n TabsValueChangeDetails,\n} from \"./types\";\n\nimport { useTabs, type UseTabsReturn } from \"./use\";\nimport { TABS_CONTEXT, TABS_CONTEXT_CARRIER, TABS_RENDER_STRATEGY_CONTEXT } from \"./use-context\";\n\nconst optionalBooleanAttribute = (value: unknown): boolean | undefined =>\n value === undefined || value === null ? undefined : booleanAttribute(value);\n\n@Directive({\n selector: \"[tabs-root]\",\n standalone: true,\n exportAs: \"tabsRoot\",\n providers: [\n { provide: TABS_CONTEXT, useExisting: forwardRef(() => TabsRoot) },\n { provide: TABS_RENDER_STRATEGY_CONTEXT, useExisting: forwardRef(() => TabsRoot) },\n {\n provide: TABS_CONTEXT_CARRIER,\n useFactory: (root: TabsRoot) => root.getContextCarrier(),\n deps: [forwardRef(() => TabsRoot)],\n },\n ],\n})\nexport class TabsRoot implements UseTabsReturn {\n readonly id: InputSignal<string | undefined> = input<string | undefined>(undefined);\n readonly ids: InputSignal<Partial<TabsElementIds> | undefined> = input<\n Partial<TabsElementIds> | undefined\n >(undefined);\n readonly value: ModelSignal<string | null | undefined> = model<string | null | undefined>(\n undefined,\n );\n readonly defaultValue: InputSignal<string | null | undefined> = input<string | null | undefined>(\n undefined,\n );\n readonly orientation: InputSignal<tabs.Props[\"orientation\"]> =\n input<tabs.Props[\"orientation\"]>(undefined);\n readonly activationMode: InputSignal<tabs.Props[\"activationMode\"]> =\n input<tabs.Props[\"activationMode\"]>(undefined);\n readonly loopFocus: InputSignalWithTransform<boolean | undefined, unknown> = input<\n boolean | undefined,\n unknown\n >(undefined, { transform: optionalBooleanAttribute });\n readonly composite: InputSignalWithTransform<boolean | undefined, unknown> = input<\n boolean | undefined,\n unknown\n >(undefined, { transform: optionalBooleanAttribute });\n readonly deselectable: InputSignalWithTransform<boolean | undefined, unknown> = input<\n boolean | undefined,\n unknown\n >(undefined, { transform: optionalBooleanAttribute });\n readonly lazyMount: InputSignalWithTransform<boolean, unknown> = input(false, {\n transform: booleanAttribute,\n });\n readonly unmountOnExit: InputSignalWithTransform<boolean, unknown> = input(false, {\n transform: booleanAttribute,\n });\n readonly navigate: InputSignal<tabs.Props[\"navigate\"]> = input<tabs.Props[\"navigate\"]>(undefined);\n readonly translations: InputSignal<TabsIntlTranslations | undefined> = input<\n TabsIntlTranslations | undefined\n >(undefined);\n\n readonly focusChange: OutputEmitterRef<TabsFocusChangeDetails> = output<TabsFocusChangeDetails>();\n readonly valueDetailsChange: OutputEmitterRef<TabsValueChangeDetails> =\n output<TabsValueChangeDetails>();\n readonly navigateChange: OutputEmitterRef<TabsNavigateDetails> = output<TabsNavigateDetails>();\n\n private readonly machine = useTabs({\n context: () => ({\n id: this.id(),\n ids: this.ids(),\n value: this.value(),\n defaultValue: this.defaultValue(),\n orientation: this.orientation(),\n activationMode: this.activationMode(),\n loopFocus: this.loopFocus(),\n composite: this.composite(),\n deselectable: this.deselectable(),\n navigate: (details) => {\n this.navigate()?.(details);\n this.navigateChange.emit(details);\n },\n translations: this.translations(),\n onValueChange: (details) => {\n if (this.value() !== details.value) this.value.set(details.value);\n this.valueDetailsChange.emit(details);\n },\n onFocusChange: (details) => {\n this.focusChange.emit(details);\n },\n }),\n });\n\n readonly state: Signal<tabs.Service[\"state\"]> = this.machine.state;\n readonly api: Signal<tabs.Api> = this.machine.api;\n readonly service: tabs.Service = this.machine.service;\n readonly send: tabs.Service[\"send\"] = this.machine.send;\n\n protected readonly contextCarrier: ContextCarrier<TabsRoot> = buildRootCarrier<TabsRoot>({\n providers: [{ provide: TABS_RENDER_STRATEGY_CONTEXT, useValue: this }],\n root: this,\n rootToken: TABS_CONTEXT as ProviderToken<TabsRoot>,\n originInjector: inject(Injector),\n environmentInjector: inject(EnvironmentInjector),\n });\n\n constructor() {\n bindProps({\n elementRef: inject(ElementRef),\n renderer: inject(Renderer2),\n destroyRef: inject(DestroyRef),\n props: () => this.api().getRootProps(),\n });\n }\n\n getContextCarrier(): ContextCarrier<TabsRoot> {\n return this.contextCarrier;\n }\n}\n","import type { ContextCarrier } from \"@wirekyt/angular\";\nimport type * as tabs from \"@wirekyt/dom/machines/tabs\";\n\nimport {\n DestroyRef,\n Directive,\n ElementRef,\n EnvironmentInjector,\n Injector,\n Renderer2,\n booleanAttribute,\n computed,\n forwardRef,\n inject,\n input,\n type InputSignal,\n type InputSignalWithTransform,\n type ProviderToken,\n type Signal,\n} from \"@angular/core\";\nimport { bindProps, buildRootCarrier } from \"@wirekyt/angular\";\n\nimport type { UseTabsReturn } from \"./use\";\n\nimport { TABS_CONTEXT, TABS_CONTEXT_CARRIER, TABS_RENDER_STRATEGY_CONTEXT } from \"./use-context\";\n\n@Directive({\n selector: \"[tabs-root-provider]\",\n standalone: true,\n exportAs: \"tabsRootProvider\",\n providers: [\n { provide: TABS_CONTEXT, useExisting: forwardRef(() => TabsRootProvider) },\n {\n provide: TABS_RENDER_STRATEGY_CONTEXT,\n useExisting: forwardRef(() => TabsRootProvider),\n },\n {\n provide: TABS_CONTEXT_CARRIER,\n useFactory: (provider: TabsRootProvider) => provider.getContextCarrier(),\n deps: [forwardRef(() => TabsRootProvider)],\n },\n ],\n})\nexport class TabsRootProvider implements UseTabsReturn {\n readonly value: InputSignal<UseTabsReturn> = input.required<UseTabsReturn>();\n readonly lazyMount: InputSignalWithTransform<boolean, unknown> = input(false, {\n transform: booleanAttribute,\n });\n readonly unmountOnExit: InputSignalWithTransform<boolean, unknown> = input(false, {\n transform: booleanAttribute,\n });\n readonly state: Signal<tabs.Service[\"state\"]> = computed(() => this.value().state());\n readonly api: Signal<tabs.Api> = computed(() => this.value().api());\n readonly send: tabs.Service[\"send\"] = (event) => this.value().send(event);\n\n get service(): tabs.Service {\n return this.value().service;\n }\n\n protected readonly contextCarrier: ContextCarrier<TabsRootProvider> =\n buildRootCarrier<TabsRootProvider>({\n providers: [{ provide: TABS_RENDER_STRATEGY_CONTEXT, useValue: this }],\n root: this,\n rootToken: TABS_CONTEXT as ProviderToken<TabsRootProvider>,\n originInjector: inject(Injector),\n environmentInjector: inject(EnvironmentInjector),\n });\n\n constructor() {\n bindProps({\n elementRef: inject(ElementRef),\n renderer: inject(Renderer2),\n destroyRef: inject(DestroyRef),\n props: () => this.api().getRootProps(),\n });\n }\n\n getContextCarrier(): ContextCarrier<TabsRootProvider> {\n return this.contextCarrier;\n }\n}\n","import { DestroyRef, Directive, ElementRef, Renderer2, inject } from \"@angular/core\";\nimport { bindProps } from \"@wirekyt/angular\";\n\nimport { injectTabsContext } from \"./use-context\";\n\n@Directive({\n selector: \"[tabs-list]\",\n standalone: true,\n exportAs: \"tabsList\",\n})\nexport class TabsList {\n constructor() {\n const context = injectTabsContext();\n bindProps({\n elementRef: inject(ElementRef),\n renderer: inject(Renderer2),\n destroyRef: inject(DestroyRef),\n props: () => context.api().getListProps(),\n });\n }\n}\n","import {\n DestroyRef,\n Directive,\n ElementRef,\n Renderer2,\n booleanAttribute,\n inject,\n input,\n type InputSignal,\n type InputSignalWithTransform,\n} from \"@angular/core\";\nimport { bindProps } from \"@wirekyt/angular\";\n\nimport { injectTabsContext } from \"./use-context\";\n\n@Directive({\n selector: \"[tabs-trigger]\",\n standalone: true,\n exportAs: \"tabsTrigger\",\n})\nexport class TabsTrigger {\n readonly value: InputSignal<string> = input.required<string>();\n readonly disabled: InputSignalWithTransform<boolean, unknown> = input(false, {\n transform: booleanAttribute,\n });\n\n constructor() {\n const context = injectTabsContext();\n bindProps({\n elementRef: inject(ElementRef),\n renderer: inject(Renderer2),\n destroyRef: inject(DestroyRef),\n props: () =>\n context.api().getTriggerProps({\n value: this.value(),\n disabled: this.disabled(),\n }),\n });\n }\n}\n","import {\n DestroyRef,\n Directive,\n ElementRef,\n EmbeddedViewRef,\n Renderer2,\n TemplateRef,\n ViewContainerRef,\n effect,\n forwardRef,\n inject,\n input,\n untracked,\n type InputSignal,\n} from \"@angular/core\";\nimport { bindProps } from \"@wirekyt/angular\";\nimport { PRESENCE_CONTEXT, usePresence } from \"@wirekyt/angular/presence\";\n\nimport { injectTabsContext, injectTabsRenderStrategyContext } from \"./use-context\";\n\n@Directive({\n selector: \"[tabs-content]\",\n standalone: true,\n exportAs: \"tabsContent\",\n providers: [\n {\n provide: PRESENCE_CONTEXT,\n useFactory: (content: TabsContent) => content.presence,\n deps: [forwardRef(() => TabsContent)],\n },\n ],\n})\nexport class TabsContent {\n readonly value: InputSignal<string> = input.required<string>();\n private readonly context = injectTabsContext();\n private readonly renderStrategy = injectTabsRenderStrategyContext();\n readonly presence = usePresence({\n context: () => ({\n present: this.context.api().value === this.value(),\n immediate: true,\n lazyMount: this.renderStrategy.lazyMount(),\n unmountOnExit: this.renderStrategy.unmountOnExit(),\n }),\n });\n\n constructor() {\n const template = inject(TemplateRef<unknown>, { optional: true });\n const container = inject(ViewContainerRef);\n const host = inject(ElementRef);\n const elementRef = template ? { nativeElement: null as HTMLElement | null } : host;\n let view: EmbeddedViewRef<unknown> | undefined;\n\n effect(() => {\n const unmounted = this.presence.unmounted();\n if (template) {\n if (unmounted) {\n elementRef.nativeElement = null;\n container.clear();\n view = undefined;\n } else if (!view) {\n view = container.createEmbeddedView(template);\n elementRef.nativeElement =\n view.rootNodes.find((node: Node) => node.nodeType === 1) ?? null;\n }\n }\n untracked(() => this.presence.setNode(elementRef.nativeElement));\n });\n\n bindProps({\n elementRef,\n renderer: inject(Renderer2),\n destroyRef: inject(DestroyRef),\n props: () => {\n this.presence.unmounted();\n return {\n ...this.context.api().getContentProps({ value: this.value() }),\n ...this.presence.getPresenceProps(),\n };\n },\n });\n }\n}\n","import { DestroyRef, Directive, ElementRef, Renderer2, inject } from \"@angular/core\";\nimport { bindProps } from \"@wirekyt/angular\";\n\nimport { injectTabsContext } from \"./use-context\";\n\n@Directive({\n selector: \"[tabs-indicator]\",\n standalone: true,\n exportAs: \"tabsIndicator\",\n})\nexport class TabsIndicator {\n constructor() {\n const context = injectTabsContext();\n bindProps({\n elementRef: inject(ElementRef),\n renderer: inject(Renderer2),\n destroyRef: inject(DestroyRef),\n props: () => context.api().getIndicatorProps(),\n });\n }\n}\n","import {\n DestroyRef,\n Directive,\n TemplateRef,\n ViewContainerRef,\n effect,\n inject,\n} from \"@angular/core\";\n\nimport type { UseTabsReturn } from \"./use\";\n\nimport { injectTabsContext } from \"./use-context\";\n\nexport interface TabsContextTemplate {\n $implicit: UseTabsReturn[\"api\"];\n api: UseTabsReturn[\"api\"];\n}\n\n@Directive({\n selector: \"[tabs-context]\",\n standalone: true,\n exportAs: \"tabsContext\",\n})\nexport class TabsContext {\n static ngTemplateContextGuard(\n _directive: TabsContext,\n context: unknown,\n ): context is TabsContextTemplate {\n void context;\n return true;\n }\n\n private readonly tabs = injectTabsContext();\n private readonly templateRef = inject<TemplateRef<TabsContextTemplate>>(TemplateRef);\n private readonly viewContainer = inject(ViewContainerRef);\n\n constructor() {\n const view = this.viewContainer.createEmbeddedView(this.templateRef, {\n $implicit: this.tabs.api,\n api: this.tabs.api,\n });\n\n effect(() => {\n this.tabs.api();\n view.detectChanges();\n });\n\n inject(DestroyRef).onDestroy(() => view.destroy());\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
package/dist/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@wirekyt/angular",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.24",
|
|
4
4
|
"description": "Angular adapter for Wirekyt",
|
|
5
5
|
"files": [
|
|
6
6
|
"dist",
|
|
@@ -111,6 +111,10 @@
|
|
|
111
111
|
"types": "./types/wirekyt-angular-presence.d.ts",
|
|
112
112
|
"default": "./fesm2022/wirekyt-angular-presence.mjs"
|
|
113
113
|
},
|
|
114
|
+
"./tabs": {
|
|
115
|
+
"types": "./types/wirekyt-angular-tabs.d.ts",
|
|
116
|
+
"default": "./fesm2022/wirekyt-angular-tabs.mjs"
|
|
117
|
+
},
|
|
114
118
|
"./toast": {
|
|
115
119
|
"types": "./types/wirekyt-angular-toast.d.ts",
|
|
116
120
|
"default": "./fesm2022/wirekyt-angular-toast.mjs"
|
|
@@ -7,7 +7,7 @@ import * as i0 from '@angular/core';
|
|
|
7
7
|
import { Signal, InputSignal, ModelSignal, InputSignalWithTransform, OutputEmitterRef, InjectionToken } from '@angular/core';
|
|
8
8
|
import { ControlValueAccessor } from '@angular/forms';
|
|
9
9
|
|
|
10
|
-
declare const checkboxAnatomy: _wirekyt_dom_anatomy.AnatomyInstance<"root" | "
|
|
10
|
+
declare const checkboxAnatomy: _wirekyt_dom_anatomy.AnatomyInstance<"root" | "label" | "control" | "indicator" | "group">;
|
|
11
11
|
|
|
12
12
|
type OptionalId<T extends {
|
|
13
13
|
id: string;
|
|
@@ -9,7 +9,7 @@ import { PresenceBase } from '@wirekyt/angular/presence';
|
|
|
9
9
|
import { ControlValueAccessor } from '@angular/forms';
|
|
10
10
|
import { ColorStringFormat } from '@wirekyt/dom/color-utils';
|
|
11
11
|
|
|
12
|
-
declare const colorPickerAnatomy: _wirekyt_dom_anatomy.Anatomy<"root" | "
|
|
12
|
+
declare const colorPickerAnatomy: _wirekyt_dom_anatomy.Anatomy<"root" | "label" | "control" | "trigger" | "content" | "positioner" | "area" | "valueText" | "formatSelect" | "areaThumb" | "channelInput" | "channelSliderTrack" | "channelSliderThumb" | "areaBackground" | "channelSlider" | "channelSliderLabel" | "channelSliderValueText" | "transparencyGrid" | "swatchGroup" | "swatchTrigger" | "swatchIndicator" | "swatch" | "eyeDropperTrigger" | "formatTrigger">;
|
|
13
13
|
|
|
14
14
|
declare class ColorPickerArea {
|
|
15
15
|
readonly xChannel: InputSignal<colorPicker.ColorChannel | undefined>;
|
|
@@ -13,7 +13,7 @@ import { PresenceBase } from '@wirekyt/angular/presence';
|
|
|
13
13
|
import { ControlValueAccessor } from '@angular/forms';
|
|
14
14
|
import * as _wirekyt_angular_combobox from '@wirekyt/angular/combobox';
|
|
15
15
|
|
|
16
|
-
declare const comboboxAnatomy: _wirekyt_dom_anatomy.AnatomyInstance<"root" | "
|
|
16
|
+
declare const comboboxAnatomy: _wirekyt_dom_anatomy.AnatomyInstance<"root" | "label" | "item" | "control" | "trigger" | "content" | "positioner" | "input" | "list" | "itemText" | "itemIndicator" | "clearTrigger" | "itemGroup" | "itemGroupLabel" | "empty">;
|
|
17
17
|
|
|
18
18
|
type ComboboxSchema<T extends CollectionItem = CollectionItem> = Machine<T> extends Machine$1<infer S> ? S : never;
|
|
19
19
|
|
|
@@ -9,7 +9,7 @@ import * as _wirekyt_angular_presence from '@wirekyt/angular/presence';
|
|
|
9
9
|
import { PresenceBase } from '@wirekyt/angular/presence';
|
|
10
10
|
import { ControlValueAccessor } from '@angular/forms';
|
|
11
11
|
|
|
12
|
-
declare const datePickerAnatomy: _wirekyt_dom_anatomy.AnatomyInstance<"root" | "
|
|
12
|
+
declare const datePickerAnatomy: _wirekyt_dom_anatomy.AnatomyInstance<"root" | "label" | "control" | "trigger" | "content" | "positioner" | "input" | "table" | "view" | "nextTrigger" | "prevTrigger" | "clearTrigger" | "monthSelect" | "presetTrigger" | "rangeText" | "tableBody" | "tableCell" | "tableCellTrigger" | "tableHead" | "tableHeader" | "tableRow" | "viewControl" | "viewTrigger" | "yearSelect" | "valueText">;
|
|
13
13
|
|
|
14
14
|
type OptionalId<T extends {
|
|
15
15
|
id?: string | undefined;
|
|
@@ -0,0 +1,123 @@
|
|
|
1
|
+
import * as tabs from '@wirekyt/dom/machines/tabs';
|
|
2
|
+
import { ElementIds, IntlTranslations, FocusChangeDetails, ValueChangeDetails, NavigateDetails } from '@wirekyt/dom/machines/tabs';
|
|
3
|
+
export { Api as TabsApi, ContentProps as TabsContentProps, ElementIds as TabsElementIds, FocusChangeDetails as TabsFocusChangeDetails, IntlTranslations as TabsIntlTranslations, Machine as TabsMachine, Props as TabsMachineProps, NavigateDetails as TabsNavigateDetails, Service as TabsService, TriggerProps as TabsTriggerProps, TriggerState as TabsTriggerState, ValueChangeDetails as TabsValueChangeDetails, anatomy as tabsAnatomy } from '@wirekyt/dom/machines/tabs';
|
|
4
|
+
import { UseMachineReturn, ContextCarrier } from '@wirekyt/angular';
|
|
5
|
+
import * as i0 from '@angular/core';
|
|
6
|
+
import { InjectionToken, Signal, InputSignal, ModelSignal, InputSignalWithTransform, OutputEmitterRef } from '@angular/core';
|
|
7
|
+
import * as _wirekyt_angular_presence from '@wirekyt/angular/presence';
|
|
8
|
+
|
|
9
|
+
type OptionalId<T extends {
|
|
10
|
+
id: string;
|
|
11
|
+
}> = Omit<T, "id"> & {
|
|
12
|
+
id?: string;
|
|
13
|
+
};
|
|
14
|
+
interface UseTabsProps extends OptionalId<Omit<tabs.Props, "dir" | "getRootNode">> {
|
|
15
|
+
}
|
|
16
|
+
type UseTabsReturn = UseMachineReturn<tabs.Service["state"], tabs.Api, tabs.Service>;
|
|
17
|
+
interface UseTabsOptions {
|
|
18
|
+
context: () => UseTabsProps;
|
|
19
|
+
}
|
|
20
|
+
declare function useTabs(options: UseTabsOptions): UseTabsReturn;
|
|
21
|
+
|
|
22
|
+
declare const TABS_CONTEXT: InjectionToken<UseTabsReturn>;
|
|
23
|
+
declare function injectTabsContext(): UseTabsReturn;
|
|
24
|
+
declare const TABS_CONTEXT_CARRIER: InjectionToken<ContextCarrier<UseTabsReturn>>;
|
|
25
|
+
declare function injectTabsContextCarrier(): ContextCarrier<UseTabsReturn>;
|
|
26
|
+
interface TabsRenderStrategyContext {
|
|
27
|
+
readonly lazyMount: Signal<boolean>;
|
|
28
|
+
readonly unmountOnExit: Signal<boolean>;
|
|
29
|
+
}
|
|
30
|
+
declare const TABS_RENDER_STRATEGY_CONTEXT: InjectionToken<TabsRenderStrategyContext>;
|
|
31
|
+
declare function injectTabsRenderStrategyContext(): TabsRenderStrategyContext;
|
|
32
|
+
|
|
33
|
+
declare class TabsRoot implements UseTabsReturn {
|
|
34
|
+
readonly id: InputSignal<string | undefined>;
|
|
35
|
+
readonly ids: InputSignal<Partial<ElementIds> | undefined>;
|
|
36
|
+
readonly value: ModelSignal<string | null | undefined>;
|
|
37
|
+
readonly defaultValue: InputSignal<string | null | undefined>;
|
|
38
|
+
readonly orientation: InputSignal<tabs.Props["orientation"]>;
|
|
39
|
+
readonly activationMode: InputSignal<tabs.Props["activationMode"]>;
|
|
40
|
+
readonly loopFocus: InputSignalWithTransform<boolean | undefined, unknown>;
|
|
41
|
+
readonly composite: InputSignalWithTransform<boolean | undefined, unknown>;
|
|
42
|
+
readonly deselectable: InputSignalWithTransform<boolean | undefined, unknown>;
|
|
43
|
+
readonly lazyMount: InputSignalWithTransform<boolean, unknown>;
|
|
44
|
+
readonly unmountOnExit: InputSignalWithTransform<boolean, unknown>;
|
|
45
|
+
readonly navigate: InputSignal<tabs.Props["navigate"]>;
|
|
46
|
+
readonly translations: InputSignal<IntlTranslations | undefined>;
|
|
47
|
+
readonly focusChange: OutputEmitterRef<FocusChangeDetails>;
|
|
48
|
+
readonly valueDetailsChange: OutputEmitterRef<ValueChangeDetails>;
|
|
49
|
+
readonly navigateChange: OutputEmitterRef<NavigateDetails>;
|
|
50
|
+
private readonly machine;
|
|
51
|
+
readonly state: Signal<tabs.Service["state"]>;
|
|
52
|
+
readonly api: Signal<tabs.Api>;
|
|
53
|
+
readonly service: tabs.Service;
|
|
54
|
+
readonly send: tabs.Service["send"];
|
|
55
|
+
protected readonly contextCarrier: ContextCarrier<TabsRoot>;
|
|
56
|
+
constructor();
|
|
57
|
+
getContextCarrier(): ContextCarrier<TabsRoot>;
|
|
58
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<TabsRoot, never>;
|
|
59
|
+
static ɵdir: i0.ɵɵDirectiveDeclaration<TabsRoot, "[tabs-root]", ["tabsRoot"], { "id": { "alias": "id"; "required": false; "isSignal": true; }; "ids": { "alias": "ids"; "required": false; "isSignal": true; }; "value": { "alias": "value"; "required": false; "isSignal": true; }; "defaultValue": { "alias": "defaultValue"; "required": false; "isSignal": true; }; "orientation": { "alias": "orientation"; "required": false; "isSignal": true; }; "activationMode": { "alias": "activationMode"; "required": false; "isSignal": true; }; "loopFocus": { "alias": "loopFocus"; "required": false; "isSignal": true; }; "composite": { "alias": "composite"; "required": false; "isSignal": true; }; "deselectable": { "alias": "deselectable"; "required": false; "isSignal": true; }; "lazyMount": { "alias": "lazyMount"; "required": false; "isSignal": true; }; "unmountOnExit": { "alias": "unmountOnExit"; "required": false; "isSignal": true; }; "navigate": { "alias": "navigate"; "required": false; "isSignal": true; }; "translations": { "alias": "translations"; "required": false; "isSignal": true; }; }, { "value": "valueChange"; "focusChange": "focusChange"; "valueDetailsChange": "valueDetailsChange"; "navigateChange": "navigateChange"; }, never, never, true, never>;
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
declare class TabsRootProvider implements UseTabsReturn {
|
|
63
|
+
readonly value: InputSignal<UseTabsReturn>;
|
|
64
|
+
readonly lazyMount: InputSignalWithTransform<boolean, unknown>;
|
|
65
|
+
readonly unmountOnExit: InputSignalWithTransform<boolean, unknown>;
|
|
66
|
+
readonly state: Signal<tabs.Service["state"]>;
|
|
67
|
+
readonly api: Signal<tabs.Api>;
|
|
68
|
+
readonly send: tabs.Service["send"];
|
|
69
|
+
get service(): tabs.Service;
|
|
70
|
+
protected readonly contextCarrier: ContextCarrier<TabsRootProvider>;
|
|
71
|
+
constructor();
|
|
72
|
+
getContextCarrier(): ContextCarrier<TabsRootProvider>;
|
|
73
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<TabsRootProvider, never>;
|
|
74
|
+
static ɵdir: i0.ɵɵDirectiveDeclaration<TabsRootProvider, "[tabs-root-provider]", ["tabsRootProvider"], { "value": { "alias": "value"; "required": true; "isSignal": true; }; "lazyMount": { "alias": "lazyMount"; "required": false; "isSignal": true; }; "unmountOnExit": { "alias": "unmountOnExit"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
75
|
+
}
|
|
76
|
+
|
|
77
|
+
declare class TabsList {
|
|
78
|
+
constructor();
|
|
79
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<TabsList, never>;
|
|
80
|
+
static ɵdir: i0.ɵɵDirectiveDeclaration<TabsList, "[tabs-list]", ["tabsList"], {}, {}, never, never, true, never>;
|
|
81
|
+
}
|
|
82
|
+
|
|
83
|
+
declare class TabsTrigger {
|
|
84
|
+
readonly value: InputSignal<string>;
|
|
85
|
+
readonly disabled: InputSignalWithTransform<boolean, unknown>;
|
|
86
|
+
constructor();
|
|
87
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<TabsTrigger, never>;
|
|
88
|
+
static ɵdir: i0.ɵɵDirectiveDeclaration<TabsTrigger, "[tabs-trigger]", ["tabsTrigger"], { "value": { "alias": "value"; "required": true; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
89
|
+
}
|
|
90
|
+
|
|
91
|
+
declare class TabsContent {
|
|
92
|
+
readonly value: InputSignal<string>;
|
|
93
|
+
private readonly context;
|
|
94
|
+
private readonly renderStrategy;
|
|
95
|
+
readonly presence: _wirekyt_angular_presence.UsePresenceReturn;
|
|
96
|
+
constructor();
|
|
97
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<TabsContent, never>;
|
|
98
|
+
static ɵdir: i0.ɵɵDirectiveDeclaration<TabsContent, "[tabs-content]", ["tabsContent"], { "value": { "alias": "value"; "required": true; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
99
|
+
}
|
|
100
|
+
|
|
101
|
+
declare class TabsIndicator {
|
|
102
|
+
constructor();
|
|
103
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<TabsIndicator, never>;
|
|
104
|
+
static ɵdir: i0.ɵɵDirectiveDeclaration<TabsIndicator, "[tabs-indicator]", ["tabsIndicator"], {}, {}, never, never, true, never>;
|
|
105
|
+
}
|
|
106
|
+
|
|
107
|
+
interface TabsContextTemplate {
|
|
108
|
+
$implicit: UseTabsReturn["api"];
|
|
109
|
+
api: UseTabsReturn["api"];
|
|
110
|
+
}
|
|
111
|
+
declare class TabsContext {
|
|
112
|
+
static ngTemplateContextGuard(_directive: TabsContext, context: unknown): context is TabsContextTemplate;
|
|
113
|
+
private readonly tabs;
|
|
114
|
+
private readonly templateRef;
|
|
115
|
+
private readonly viewContainer;
|
|
116
|
+
constructor();
|
|
117
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<TabsContext, never>;
|
|
118
|
+
static ɵdir: i0.ɵɵDirectiveDeclaration<TabsContext, "[tabs-context]", ["tabsContext"], {}, {}, never, never, true, never>;
|
|
119
|
+
}
|
|
120
|
+
|
|
121
|
+
export { TABS_CONTEXT, TABS_CONTEXT_CARRIER, TABS_RENDER_STRATEGY_CONTEXT, TabsContent, TabsContext, TabsIndicator, TabsList, TabsRoot, TabsRootProvider, TabsTrigger, injectTabsContext, injectTabsContextCarrier, injectTabsRenderStrategyContext, useTabs };
|
|
122
|
+
export type { TabsContextTemplate, TabsRenderStrategyContext, UseTabsOptions, UseTabsProps, UseTabsReturn };
|
|
123
|
+
//# sourceMappingURL=wirekyt-angular-tabs.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"wirekyt-angular-tabs.d.ts","sources":["../../src/components/tabs/use.ts","../../src/components/tabs/use-context.ts","../../src/components/tabs/root.ts","../../src/components/tabs/root-provider.ts","../../src/components/tabs/list.ts","../../src/components/tabs/trigger.ts","../../src/components/tabs/content.ts","../../src/components/tabs/indicator.ts","../../src/components/tabs/context.ts"],"mappings":";;;;;;;;AAWA,KAAK,UAAU;;AAAyB,KAAI,IAAI;;;AAE1C,UAAW,YAAa,SAAQ,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK;AAA4B;AAEtF,KAAM,aAAa,GAAG,gBAAgB,CAAC,IAAI,CAAC,OAAO,WAAW,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,OAAO;UAEzE,cAAc;mBACd,YAAY;AAC5B;AAKD,iBAAgB,OAAO,UAAU,cAAc,GAAG,aAAa;;AClB/D,cAAa,YAAY,EAAA,cAAA,CAAA,aAAA;AAEzB,iBAAgB,iBAAiB,IAAI,aAAa;AAIlD,cAAa,oBAAoB,EAAA,cAAA,CAAA,cAAA,CAAA,aAAA;AAIjC,iBAAgB,wBAAwB,IAAI,cAAc,CAAC,aAAa;UAIvD,yBAAyB;AACxC,wBAAoB,MAAM;AAC1B,4BAAwB,MAAM;AAC/B;AAED,cAAa,4BAA4B,EAAA,cAAA,CAAA,yBAAA;AAIzC,iBAAgB,+BAA+B,IAAI,yBAAyB;;ACU5E,cAca,QAAS,YAAW,aAAa;iBAC/B,WAAW;AACxB,kBAAc,WAAW,CAAC,OAAO,CAACA,UAAc;oBAGhC,WAAW;2BAGJ,WAAW;AAGlC,0BAAsB,WAAW,CAAC,IAAI,CAAC,KAAK;AAE5C,6BAAyB,WAAW,CAAC,IAAI,CAAC,KAAK;wBAE3B,wBAAwB;wBAIxB,wBAAwB;2BAIrB,wBAAwB;wBAI3B,wBAAwB;4BAGpB,wBAAwB;AAGhD,uBAAmB,WAAW,CAAC,IAAI,CAAC,KAAK;2BAClB,WAAW,CAACC,gBAAoB;AAIvD,0BAAsB,gBAAgB,CAACC,kBAAsB;AAC7D,iCAA6B,gBAAgB,CAACC,kBAAsB;AAEpE,6BAAyB,gBAAgB,CAACC,eAAmB;AAE7D;AA0BA,oBAAgB,MAAM,CAAC,IAAI,CAAC,OAAO;kBACrB,MAAM,CAAC,IAAI,CAAC,GAAG;AAC7B,sBAAkB,IAAI,CAAC,OAAO;mBACf,IAAI,CAAC,OAAO;uCAEQ,cAAc,CAAC,QAAQ;;AAiB1D,yBAAqB,cAAc,CAAC,QAAQ;yCA3FjC,QAAQ;2CAAR,QAAQ;AA8FpB;;ACzHD,cAiBa,gBAAiB,YAAW,aAAa;AACpD,oBAAgB,WAAW,CAAC,aAAa;wBACrB,wBAAwB;4BAGpB,wBAAwB;AAGhD,oBAAgB,MAAM,CAAC,IAAI,CAAC,OAAO;kBACrB,MAAM,CAAC,IAAI,CAAC,GAAG;mBACd,IAAI,CAAC,OAAO;AAE3B,mBAAe,IAAI,CAAC,OAAO;uCAIQ,cAAc,CAAC,gBAAgB;;AAkBlE,yBAAqB,cAAc,CAAC,gBAAgB;yCAlCzC,gBAAgB;2CAAhB,gBAAgB;AAqC5B;;AC3ED,cAKa,QAAQ;;yCAAR,QAAQ;2CAAR,QAAQ;AAUpB;;ACLD,cAKa,WAAW;AACtB,oBAAgB,WAAW;uBACR,wBAAwB;;yCAFhC,WAAW;2CAAX,WAAW;AAmBvB;;ACnBD,cAYa,WAAW;AACtB,oBAAgB,WAAW;AAC3B;AACA;uBACiB,yBAAA,CAAA,iBAAA;;yCAJN,WAAW;2CAAX,WAAW;AAiDvB;;AC5ED,cAKa,aAAa;;yCAAb,aAAa;2CAAb,aAAa;AAUzB;;UCPgB,mBAAmB;AAClC,eAAW,aAAa;AACxB,SAAK,aAAa;AACnB;AAED,cAKa,WAAW;AACtB,8CACc,WAAW,gCAEX,mBAAmB;AAKjC;AACA;AACA;;yCAXW,WAAW;2CAAX,WAAW;AA0BvB;;;;","names":["TabsElementIds","TabsIntlTranslations","TabsFocusChangeDetails","TabsValueChangeDetails","TabsNavigateDetails"]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@wirekyt/angular",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.24",
|
|
4
4
|
"description": "Angular adapter for Wirekyt",
|
|
5
5
|
"files": [
|
|
6
6
|
"dist",
|
|
@@ -111,6 +111,10 @@
|
|
|
111
111
|
"types": "./dist/types/wirekyt-angular-presence.d.ts",
|
|
112
112
|
"default": "./dist/fesm2022/wirekyt-angular-presence.mjs"
|
|
113
113
|
},
|
|
114
|
+
"./tabs": {
|
|
115
|
+
"types": "./dist/types/wirekyt-angular-tabs.d.ts",
|
|
116
|
+
"default": "./dist/fesm2022/wirekyt-angular-tabs.mjs"
|
|
117
|
+
},
|
|
114
118
|
"./toast": {
|
|
115
119
|
"types": "./dist/types/wirekyt-angular-toast.d.ts",
|
|
116
120
|
"default": "./dist/fesm2022/wirekyt-angular-toast.mjs"
|
|
@@ -124,7 +128,7 @@
|
|
|
124
128
|
"dependencies": {
|
|
125
129
|
"@internationalized/date": "^3.12.3",
|
|
126
130
|
"@internationalized/number": "^3.6.7",
|
|
127
|
-
"@wirekyt/dom": "0.0.
|
|
131
|
+
"@wirekyt/dom": "0.0.24",
|
|
128
132
|
"tslib": "^2.8.1"
|
|
129
133
|
},
|
|
130
134
|
"peerDependencies": {
|