@ng-formworks/daisyui 17.5.8 → 17.6.2
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/esm2022/lib/daisyui-cssframework.mjs +232 -0
- package/esm2022/lib/daisyui-framework.component.mjs +2 -2
- package/esm2022/lib/daisyui-framework.module.mjs +10 -3
- package/esm2022/lib/daisyui-framework.prefixed.component.mjs +2 -2
- package/esm2022/lib/daisyui.framework.mjs +4 -2
- package/esm2022/lib/widgets/daisyui-one-of.component.mjs +115 -0
- package/esm2022/lib/widgets/daisyui-tabs.component.mjs +68 -32
- package/esm2022/public-api.mjs +2 -1
- package/fesm2022/ng-formworks-daisyui.mjs +223 -60
- package/fesm2022/ng-formworks-daisyui.mjs.map +1 -1
- package/lib/daisyui-framework.module.d.ts +6 -4
- package/lib/widgets/daisyui-one-of.component.d.ts +21 -0
- package/lib/widgets/daisyui-tabs.component.d.ts +1 -1
- package/package.json +3 -3
- package/public-api.d.ts +1 -0
- package/esm2022/lib/daisui-cssframework.mjs +0 -223
- /package/lib/{daisui-cssframework.d.ts → daisyui-cssframework.d.ts} +0 -0
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
import { Inject, Injectable, Optional, inject } from '@angular/core';
|
|
2
2
|
import { CssFramework, CssframeworkService } from '@ng-formworks/cssframework';
|
|
3
|
-
import { cssFrameworkCfgDaisyUI, getCssFrameworkCfgPrefixed } from './
|
|
3
|
+
import { cssFrameworkCfgDaisyUI, getCssFrameworkCfgPrefixed } from './daisyui-cssframework';
|
|
4
4
|
import { DaisyUIFrameworkComponent } from './daisyui-framework.component';
|
|
5
5
|
import { DaisyUIFrameworkComponentPrefixed } from './daisyui-framework.prefixed.component';
|
|
6
6
|
import { DUIOPTIONS } from './tokens.defs';
|
|
7
|
+
import { DaisyUIOneOfComponent } from './widgets/daisyui-one-of.component';
|
|
7
8
|
import { DaisyUITabsComponent } from './widgets/daisyui-tabs.component';
|
|
8
9
|
import * as i0 from "@angular/core";
|
|
9
10
|
export class DaisyUIFramework extends CssFramework {
|
|
@@ -28,6 +29,7 @@ export class DaisyUIFramework extends CssFramework {
|
|
|
28
29
|
}
|
|
29
30
|
this.widgets = {
|
|
30
31
|
'tabs': DaisyUITabsComponent,
|
|
32
|
+
'one-of': DaisyUIOneOfComponent
|
|
31
33
|
};
|
|
32
34
|
}
|
|
33
35
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: DaisyUIFramework, deps: [{ token: DUIOPTIONS, optional: true }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
@@ -41,4 +43,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
41
43
|
}, {
|
|
42
44
|
type: Optional
|
|
43
45
|
}] }] });
|
|
44
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
46
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGFpc3l1aS5mcmFtZXdvcmsuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZy1mb3Jtd29ya3MtZGFpc3l1aS9zcmMvbGliL2RhaXN5dWkuZnJhbWV3b3JrLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDckUsT0FBTyxFQUFFLFlBQVksRUFBRSxtQkFBbUIsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQy9FLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSwwQkFBMEIsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQzVGLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQzFFLE9BQU8sRUFBRSxpQ0FBaUMsRUFBRSxNQUFNLHdDQUF3QyxDQUFDO0FBQzNGLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFDM0UsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sa0NBQWtDLENBQUM7O0FBSXhFLE1BQU0sT0FBTyxnQkFBaUIsU0FBUSxZQUFZO0lBTWhEO0lBQ0UsMENBQTBDO0lBS3hCLGFBQWUsRUFBQyxXQUFXLEVBQUMsSUFBSSxFQUFDO1FBRW5ELE1BQU0sWUFBWSxHQUFHLE1BQU0sQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDO1FBRWpELElBQUksT0FBTyxHQUFLLFVBQVUsS0FBRyxJQUFJLENBQUEsQ0FBQyxDQUFBLEVBQUMsV0FBVyxFQUFDLElBQUksRUFBQyxDQUFBLENBQUMsQ0FBQSxVQUFVLENBQUM7UUFDL0QsSUFBSSxlQUFlLEdBQUMsc0JBQXNCLENBQUM7UUFDNUMsSUFBRyxPQUFPLEVBQUUsV0FBVyxFQUFFLEVBQUMsMkJBQTJCO1lBQ25ELGVBQWUsR0FBQywwQkFBMEIsQ0FBQyxzQkFBc0IsQ0FBQyxDQUFBO1NBQ25FO1FBQ0Qsc0NBQXNDO1FBQ3RDLEtBQUssQ0FBQyxlQUFlLENBQUMsQ0FBQztRQVZMLGVBQVUsR0FBVixVQUFVLENBQXVCO1FBVnZELHVGQUF1RjtRQUd2RixjQUFTLEdBQUMseUJBQXlCLENBQUM7UUFrQmhDLElBQUksQ0FBQyxZQUFZLEdBQUcsWUFBWSxDQUFDO1FBQ2pDLHFDQUFxQztRQUVyQyxJQUFHLE9BQU8sRUFBRSxXQUFXLEVBQUM7WUFDdEIsSUFBSSxDQUFDLFNBQVMsR0FBQyxpQ0FBaUMsQ0FBQztTQUNsRDtRQUNELElBQUksQ0FBQyxPQUFPLEdBQUU7WUFFWixNQUFNLEVBQUUsb0JBQW9CO1lBQzVCLFFBQVEsRUFBQyxxQkFBcUI7U0FFL0IsQ0FBQztJQUNKLENBQUM7K0dBbkNVLGdCQUFnQixrQkFRakIsVUFBVTttSEFSVCxnQkFBZ0I7OzRGQUFoQixnQkFBZ0I7a0JBRDVCLFVBQVU7OzBCQVNOLE1BQU07MkJBQUMsVUFBVTs7MEJBSW5CLFFBQVEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3QsIEluamVjdGFibGUsIE9wdGlvbmFsLCBpbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQ3NzRnJhbWV3b3JrLCBDc3NmcmFtZXdvcmtTZXJ2aWNlIH0gZnJvbSAnQG5nLWZvcm13b3Jrcy9jc3NmcmFtZXdvcmsnO1xyXG5pbXBvcnQgeyBjc3NGcmFtZXdvcmtDZmdEYWlzeVVJLCBnZXRDc3NGcmFtZXdvcmtDZmdQcmVmaXhlZCB9IGZyb20gJy4vZGFpc3l1aS1jc3NmcmFtZXdvcmsnO1xyXG5pbXBvcnQgeyBEYWlzeVVJRnJhbWV3b3JrQ29tcG9uZW50IH0gZnJvbSAnLi9kYWlzeXVpLWZyYW1ld29yay5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBEYWlzeVVJRnJhbWV3b3JrQ29tcG9uZW50UHJlZml4ZWQgfSBmcm9tICcuL2RhaXN5dWktZnJhbWV3b3JrLnByZWZpeGVkLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IERVSU9QVElPTlMgfSBmcm9tICcuL3Rva2Vucy5kZWZzJztcclxuaW1wb3J0IHsgRGFpc3lVSU9uZU9mQ29tcG9uZW50IH0gZnJvbSAnLi93aWRnZXRzL2RhaXN5dWktb25lLW9mLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IERhaXN5VUlUYWJzQ29tcG9uZW50IH0gZnJvbSAnLi93aWRnZXRzL2RhaXN5dWktdGFicy5jb21wb25lbnQnO1xyXG5cclxuXHJcbkBJbmplY3RhYmxlKClcclxuZXhwb3J0IGNsYXNzIERhaXN5VUlGcmFtZXdvcmsgZXh0ZW5kcyBDc3NGcmFtZXdvcmsge1xyXG5jc3NGV1NlcnZpY2U6IENzc2ZyYW1ld29ya1NlcnZpY2U7XHJcbi8vcHJpdmF0ZSBkdWlPcHRpb25zID0gaW5qZWN0KERVSU9QVElPTlMsIHsgb3B0aW9uYWw6IHRydWUgfSkgPz8geyBjbGFzc1ByZWZpeDogdHJ1ZSB9O1xyXG5cclxuXHJcbmZyYW1ld29yaz1EYWlzeVVJRnJhbWV3b3JrQ29tcG9uZW50O1xyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgLy9wdWJsaWMgY3NzRldTZXJ2aWNlOkNzc2ZyYW1ld29ya1NlcnZpY2UsXHJcbiAgICBASW5qZWN0KERVSU9QVElPTlMpIFxyXG4gIC8vdXNlIGNsYXNzIHByZWZpeCBieSBkZWZhdWx0LWRvZXNuJ3Qgc2VlbSB0byB3b3JrIGFuZ3VsYXIgd2lsbCBpbmplY3QgbnVsbFxyXG4gIC8vZm9yIFRTIHRvIHVzZSBkZWZhdWx0IHZhbHVlLCBtdXN0IGJlIHVuZGVmaW5lZFxyXG4gIC8vLXNlZSBodHRwczovL2dpdGh1Yi5jb20vYW5ndWxhci9hbmd1bGFyL2lzc3Vlcy8zNzMwNlxyXG4gIEBPcHRpb25hbCgpIHByaXZhdGUgZHVpT3B0aW9uczphbnk9e2NsYXNzUHJlZml4OnRydWV9XHJcbiAgKXtcclxuICAgIGNvbnN0IGNzc0ZXU2VydmljZSA9IGluamVjdChDc3NmcmFtZXdvcmtTZXJ2aWNlKTtcclxuXHJcbiAgICBsZXQgZHVpT3B0czphbnk9ZHVpT3B0aW9ucz09PW51bGw/e2NsYXNzUHJlZml4OnRydWV9OmR1aU9wdGlvbnM7XHJcbiAgICAgbGV0IGNzc0ZyYW1ld29ya0NmZz1jc3NGcmFtZXdvcmtDZmdEYWlzeVVJO1xyXG4gICAgaWYoZHVpT3B0cz8uY2xhc3NQcmVmaXggKXsvL2FkZGVkIG51bGwsc2VlIG5vdGUgYWJvdmVcclxuICAgICAgY3NzRnJhbWV3b3JrQ2ZnPWdldENzc0ZyYW1ld29ya0NmZ1ByZWZpeGVkKGNzc0ZyYW1ld29ya0NmZ0RhaXN5VUkpXHJcbiAgICB9XHJcbiAgICAvL3N1cGVyKGNzc0ZyYW1ld29ya0NmZyxjc3NGV1NlcnZpY2UpO1xyXG4gICAgc3VwZXIoY3NzRnJhbWV3b3JrQ2ZnKTtcclxuICAgIHRoaXMuY3NzRldTZXJ2aWNlID0gY3NzRldTZXJ2aWNlO1xyXG4gICAgLy9jb25zdCBkdWlPcHRpb25zID0gdGhpcy5kdWlPcHRpb25zO1xyXG5cclxuICAgIGlmKGR1aU9wdHM/LmNsYXNzUHJlZml4KXtcclxuICAgICAgdGhpcy5mcmFtZXdvcms9RGFpc3lVSUZyYW1ld29ya0NvbXBvbmVudFByZWZpeGVkO1xyXG4gICAgfVxyXG4gICAgdGhpcy53aWRnZXRzPSB7XHJcblxyXG4gICAgICAndGFicyc6IERhaXN5VUlUYWJzQ29tcG9uZW50LFxyXG4gICAgICAnb25lLW9mJzpEYWlzeVVJT25lT2ZDb21wb25lbnRcclxuICAgIFxyXG4gICAgfTtcclxuICB9XHJcblxyXG59XHJcbiJdfQ==
|
|
@@ -0,0 +1,115 @@
|
|
|
1
|
+
import { Component, inject, input } from '@angular/core';
|
|
2
|
+
import { hasNonNullValue, hasOwn, JsonPointer, JsonSchemaFormService, path2ControlKey } from '@ng-formworks/core';
|
|
3
|
+
import { isEqual, isObject, pick } from 'lodash';
|
|
4
|
+
import * as i0 from "@angular/core";
|
|
5
|
+
import * as i1 from "./daisyui-tabs.component";
|
|
6
|
+
// TODO: Add this control
|
|
7
|
+
export class DaisyUIOneOfComponent {
|
|
8
|
+
constructor() {
|
|
9
|
+
this.jsf = inject(JsonSchemaFormService);
|
|
10
|
+
this.controlDisabled = false;
|
|
11
|
+
this.boundControl = false;
|
|
12
|
+
this.layoutNode = input(undefined);
|
|
13
|
+
this.layoutIndex = input(undefined);
|
|
14
|
+
this.dataIndex = input(undefined);
|
|
15
|
+
}
|
|
16
|
+
ngOnInit() {
|
|
17
|
+
this.options = this.layoutNode().options || {};
|
|
18
|
+
this.options.tabMode = "oneOfMode";
|
|
19
|
+
this.options.selectedTab = this.findSelectedTab();
|
|
20
|
+
//this.options.description=this.options.description||"choose one of";
|
|
21
|
+
this.jsf.initializeControl(this);
|
|
22
|
+
}
|
|
23
|
+
findSelectedTab() {
|
|
24
|
+
//TODO test- this.jsf.formValues seems to be the initial data supplied to the form
|
|
25
|
+
//while the jsf.formGroup value is derived from the actual controls
|
|
26
|
+
//let formValue=this.jsf.getFormControlValue(this);
|
|
27
|
+
let foundInd = -1;
|
|
28
|
+
//seach for non null value
|
|
29
|
+
if (this.layoutNode().items) {
|
|
30
|
+
this.layoutNode().items.forEach((layoutItem, ind) => {
|
|
31
|
+
let formValue = JsonPointer.get(this.jsf.formValues, layoutItem.dataPointer);
|
|
32
|
+
if (layoutItem.oneOfPointer) {
|
|
33
|
+
let controlKey = path2ControlKey(layoutItem.oneOfPointer);
|
|
34
|
+
let fname = layoutItem.name;
|
|
35
|
+
if (hasOwn(this.jsf.formGroup.controls, controlKey) &&
|
|
36
|
+
(formValue || hasNonNullValue(this.jsf.formGroup.controls[controlKey].value))
|
|
37
|
+
//hasOwn(formValue,fname) && hasOwn(this.jsf.formGroup.controls,controlKey)
|
|
38
|
+
// && (formValue[fname] || this.jsf.formGroup.controls[controlKey].value)
|
|
39
|
+
//&&isEqual(formValue[fname],this.jsf.formGroup.controls[controlKey].value)
|
|
40
|
+
) {
|
|
41
|
+
foundInd = ind;
|
|
42
|
+
}
|
|
43
|
+
//foundInd=formValue[controlKey]!=null?ind:foundInd;
|
|
44
|
+
//if no exact match found, then search in descendant values
|
|
45
|
+
//to see which one of item matches
|
|
46
|
+
if (foundInd == -1) {
|
|
47
|
+
//find all descendant oneof paths
|
|
48
|
+
let descendantOneOfControlNames = Object.keys(this.jsf.formGroup.controls).filter(controlName => {
|
|
49
|
+
return controlName.startsWith(controlKey);
|
|
50
|
+
});
|
|
51
|
+
descendantOneOfControlNames.forEach(controlName => {
|
|
52
|
+
let parts = controlName.split('$');
|
|
53
|
+
let fieldName = parts[parts.length - 1];
|
|
54
|
+
let controlValue = this.jsf.formGroup.controls[controlName].value;
|
|
55
|
+
let controlSchema = JsonPointer.get(this.jsf.schema, parts.join("/"));
|
|
56
|
+
let schemaPointer = parts.join("/");
|
|
57
|
+
let dPointer = schemaPointer.replace(/(anyOf|allOf|oneOf|none)\/[\d]+\//g, '')
|
|
58
|
+
.replace(/(if|then|else|properties)\//g, '');
|
|
59
|
+
//JsonPointer.toDataPointer(parts.join("/"),this.jsf.schema);
|
|
60
|
+
let dVal = JsonPointer.get(this.jsf.formValues, dPointer);
|
|
61
|
+
let compareVal = dVal; //formValue;
|
|
62
|
+
//compare only values that are in the subschema properties
|
|
63
|
+
if (controlSchema && controlSchema.properties) {
|
|
64
|
+
compareVal = isObject(dVal) && hasOwn(dVal, fieldName) ?
|
|
65
|
+
pick(dVal[fieldName], Object.keys(controlSchema.properties))
|
|
66
|
+
: pick(dVal, Object.keys(controlSchema.properties));
|
|
67
|
+
}
|
|
68
|
+
/*
|
|
69
|
+
if(isObject(compareVal) && hasOwn(compareVal,fieldName) &&
|
|
70
|
+
isEqual(compareVal[fieldName],controlValue)
|
|
71
|
+
){
|
|
72
|
+
foundInd=ind;
|
|
73
|
+
}else //if(formValue || controlValue){
|
|
74
|
+
if(isEqual(compareVal,controlValue)){
|
|
75
|
+
foundInd=ind;
|
|
76
|
+
}
|
|
77
|
+
*/
|
|
78
|
+
if (isEqual(compareVal, controlValue)) {
|
|
79
|
+
foundInd = ind;
|
|
80
|
+
}
|
|
81
|
+
});
|
|
82
|
+
//now need to compare values
|
|
83
|
+
}
|
|
84
|
+
}
|
|
85
|
+
});
|
|
86
|
+
}
|
|
87
|
+
return Math.max(foundInd, 0);
|
|
88
|
+
}
|
|
89
|
+
updateValue(event) {
|
|
90
|
+
this.jsf.updateValue(this, event.target.value);
|
|
91
|
+
}
|
|
92
|
+
ngOnDestroy() {
|
|
93
|
+
//this.jsf.updateValue(this, null);
|
|
94
|
+
}
|
|
95
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: DaisyUIOneOfComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
96
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "17.3.12", type: DaisyUIOneOfComponent, selector: "daisyui-one-of-widget", inputs: { layoutNode: { classPropertyName: "layoutNode", publicName: "layoutNode", isSignal: true, isRequired: false, transformFunction: null }, layoutIndex: { classPropertyName: "layoutIndex", publicName: "layoutIndex", isSignal: true, isRequired: false, transformFunction: null }, dataIndex: { classPropertyName: "dataIndex", publicName: "dataIndex", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: `<h4>{{this.options?.description}}</h4>
|
|
97
|
+
<daisyui-tabs-widget #tabs [layoutNode]="layoutNode()"
|
|
98
|
+
[layoutIndex]="layoutIndex()"
|
|
99
|
+
[dataIndex]="dataIndex()" >
|
|
100
|
+
</daisyui-tabs-widget>`, isInline: true, dependencies: [{ kind: "component", type: i1.DaisyUITabsComponent, selector: "daisyui-tabs-widget", inputs: ["layoutNode", "layoutIndex", "dataIndex"] }] }); }
|
|
101
|
+
}
|
|
102
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: DaisyUIOneOfComponent, decorators: [{
|
|
103
|
+
type: Component,
|
|
104
|
+
args: [{
|
|
105
|
+
// tslint:disable-next-line:component-selector
|
|
106
|
+
selector: 'daisyui-one-of-widget',
|
|
107
|
+
template: `<h4>{{this.options?.description}}</h4>
|
|
108
|
+
<daisyui-tabs-widget #tabs [layoutNode]="layoutNode()"
|
|
109
|
+
[layoutIndex]="layoutIndex()"
|
|
110
|
+
[dataIndex]="dataIndex()" >
|
|
111
|
+
</daisyui-tabs-widget>`,
|
|
112
|
+
standalone: false
|
|
113
|
+
}]
|
|
114
|
+
}] });
|
|
115
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGFpc3l1aS1vbmUtb2YuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmctZm9ybXdvcmtzLWRhaXN5dWkvc3JjL2xpYi93aWRnZXRzL2RhaXN5dWktb25lLW9mLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQXFCLE1BQU0sZUFBZSxDQUFDO0FBRTVFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxFQUFFLFdBQVcsRUFBRSxxQkFBcUIsRUFBRSxlQUFlLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUNsSCxPQUFPLEVBQUUsT0FBTyxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsTUFBTSxRQUFRLENBQUM7OztBQUlqRCx5QkFBeUI7QUFZekIsTUFBTSxPQUFPLHFCQUFxQjtJQVZsQztRQVdVLFFBQUcsR0FBRyxNQUFNLENBQUMscUJBQXFCLENBQUMsQ0FBQztRQUs1QyxvQkFBZSxHQUFHLEtBQUssQ0FBQztRQUN4QixpQkFBWSxHQUFHLEtBQUssQ0FBQztRQUVaLGVBQVUsR0FBRyxLQUFLLENBQU0sU0FBUyxDQUFDLENBQUM7UUFDbkMsZ0JBQVcsR0FBRyxLQUFLLENBQVcsU0FBUyxDQUFDLENBQUM7UUFDekMsY0FBUyxHQUFHLEtBQUssQ0FBVyxTQUFTLENBQUMsQ0FBQztLQW9GakQ7SUFsRkMsUUFBUTtRQUNOLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDLE9BQU8sSUFBSSxFQUFFLENBQUM7UUFDL0MsSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLEdBQUMsV0FBVyxDQUFDO1FBQ2pDLElBQUksQ0FBQyxPQUFPLENBQUMsV0FBVyxHQUFDLElBQUksQ0FBQyxlQUFlLEVBQUUsQ0FBQztRQUNoRCxxRUFBcUU7UUFDckUsSUFBSSxDQUFDLEdBQUcsQ0FBQyxp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LElBQUksRUFBQyxTQUFTLENBQUMsQ0FBQSxDQUFDO29DQUNwRCxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxFQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLFVBQVUsQ0FBQyxDQUFDO29DQUMzRCxDQUFDLENBQUEsSUFBSSxDQUFDLElBQUksRUFBQyxNQUFNLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFBOzZCQUNsRDs0QkFDRDs7Ozs7Ozs7OzhCQVNFOzRCQUNGLElBQUcsT0FBTyxDQUFDLFVBQVUsRUFBQyxZQUFZLENBQUMsRUFBQztnQ0FDbEMsUUFBUSxHQUFDLEdBQUcsQ0FBQzs2QkFDZDt3QkFDSCxDQUFDLENBQUMsQ0FBQTt3QkFDRiw0QkFBNEI7cUJBQzdCO2lCQUNGO1lBQ0wsQ0FBQyxDQUFDLENBQUE7U0FDSDtRQUNELE9BQU8sSUFBSSxDQUFDLEdBQUcsQ0FBQyxRQUFRLEVBQUMsQ0FBQyxDQUFDLENBQUM7SUFDOUIsQ0FBQztJQUVQLFdBQVcsQ0FBQyxLQUFLO1FBQ2YsSUFBSSxDQUFDLEdBQUcsQ0FBQyxXQUFXLENBQUMsSUFBSSxFQUFFLEtBQUssQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDakQsQ0FBQztJQUVELFdBQVc7UUFDVCxtQ0FBbUM7SUFDckMsQ0FBQzsrR0E5RlUscUJBQXFCO21HQUFyQixxQkFBcUIsOGRBUHBCOzs7OzJCQUlhOzs0RkFHZCxxQkFBcUI7a0JBVmpDLFNBQVM7bUJBQUM7b0JBQ1AsOENBQThDO29CQUM5QyxRQUFRLEVBQUUsdUJBQXVCO29CQUNqQyxRQUFRLEVBQUU7Ozs7MkJBSWE7b0JBQ3ZCLFVBQVUsRUFBRSxLQUFLO2lCQUNwQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgaW5qZWN0LCBpbnB1dCwgT25EZXN0cm95LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQWJzdHJhY3RDb250cm9sIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgeyBoYXNOb25OdWxsVmFsdWUsIGhhc093biwgSnNvblBvaW50ZXIsIEpzb25TY2hlbWFGb3JtU2VydmljZSwgcGF0aDJDb250cm9sS2V5IH0gZnJvbSAnQG5nLWZvcm13b3Jrcy9jb3JlJztcclxuaW1wb3J0IHsgaXNFcXVhbCwgaXNPYmplY3QsIHBpY2sgfSBmcm9tICdsb2Rhc2gnO1xyXG5cclxuXHJcblxyXG4vLyBUT0RPOiBBZGQgdGhpcyBjb250cm9sXHJcblxyXG5AQ29tcG9uZW50KHtcclxuICAgIC8vIHRzbGludDpkaXNhYmxlLW5leHQtbGluZTpjb21wb25lbnQtc2VsZWN0b3JcclxuICAgIHNlbGVjdG9yOiAnZGFpc3l1aS1vbmUtb2Ytd2lkZ2V0JyxcclxuICAgIHRlbXBsYXRlOiBgPGg0Pnt7dGhpcy5vcHRpb25zPy5kZXNjcmlwdGlvbn19PC9oND5cclxuICAgIDxkYWlzeXVpLXRhYnMtd2lkZ2V0ICN0YWJzIFtsYXlvdXROb2RlXT1cImxheW91dE5vZGUoKVwiIFxyXG4gICAgW2xheW91dEluZGV4XT1cImxheW91dEluZGV4KClcIiBcclxuICAgIFtkYXRhSW5kZXhdPVwiZGF0YUluZGV4KClcIiA+XHJcbiAgICA8L2RhaXN5dWktdGFicy13aWRnZXQ+YCxcclxuICAgIHN0YW5kYWxvbmU6IGZhbHNlXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBEYWlzeVVJT25lT2ZDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsT25EZXN0cm95IHtcclxuICBwcml2YXRlIGpzZiA9IGluamVjdChKc29uU2NoZW1hRm9ybVNlcnZpY2UpO1xyXG5cclxuICBmb3JtQ29udHJvbDogQWJzdHJhY3RDb250cm9sO1xyXG4gIGNvbnRyb2xOYW1lOiBzdHJpbmc7XHJcbiAgY29udHJvbFZhbHVlOiBhbnk7XHJcbiAgY29udHJvbERpc2FibGVkID0gZmFsc2U7XHJcbiAgYm91bmRDb250cm9sID0gZmFsc2U7XHJcbiAgb3B0aW9uczogYW55O1xyXG4gIHJlYWRvbmx5IGxheW91dE5vZGUgPSBpbnB1dDxhbnk+KHVuZGVmaW5lZCk7XHJcbiAgcmVhZG9ubHkgbGF5b3V0SW5kZXggPSBpbnB1dDxudW1iZXJbXT4odW5kZWZpbmVkKTtcclxuICByZWFkb25seSBkYXRhSW5kZXggPSBpbnB1dDxudW1iZXJbXT4odW5kZWZpbmVkKTtcclxuXHJcbiAgbmdPbkluaXQoKSB7XHJcbiAgICB0aGlzLm9wdGlvbnMgPSB0aGlzLmxheW91dE5vZGUoKS5vcHRpb25zIHx8IHt9O1xyXG4gICAgdGhpcy5vcHRpb25zLnRhYk1vZGU9XCJvbmVPZk1vZGVcIjtcclxuICAgIHRoaXMub3B0aW9ucy5zZWxlY3RlZFRhYj10aGlzLmZpbmRTZWxlY3RlZFRhYigpO1xyXG4gICAgLy90aGlzLm9wdGlvbnMuZGVzY3JpcHRpb249dGhpcy5vcHRpb25zLmRlc2NyaXB0aW9ufHxcImNob29zZSBvbmUgb2ZcIjtcclxuICAgIHRoaXMuanNmLmluaXRpYWxpemVDb250cm9sKHRoaXMpO1xyXG4gIH1cclxuXHJcbiAgICAgIGZpbmRTZWxlY3RlZFRhYigpe1xyXG4gICAgICAgICAgLy9UT0RPIHRlc3QtIHRoaXMuanNmLmZvcm1WYWx1ZXMgc2VlbXMgdG8gYmUgdGhlIGluaXRpYWwgZGF0YSBzdXBwbGllZCB0byB0aGUgZm9ybVxyXG4gICAgICAgICAgLy93aGlsZSB0aGUganNmLmZvcm1Hcm91cCB2YWx1ZSBpcyBkZXJpdmVkIGZyb20gdGhlIGFjdHVhbCBjb250cm9sc1xyXG4gICAgICAgICAgLy9sZXQgZm9ybVZhbHVlPXRoaXMuanNmLmdldEZvcm1Db250cm9sVmFsdWUodGhpcyk7XHJcbiAgICAgICAgICBsZXQgZm91bmRJbmQ9LTE7XHJcbiAgICAgICAgICAvL3NlYWNoIGZvciBub24gbnVsbCB2YWx1ZVxyXG4gICAgICAgICAgaWYodGhpcy5sYXlvdXROb2RlKCkuaXRlbXMpe1xyXG4gICAgICAgICAgICB0aGlzLmxheW91dE5vZGUoKS5pdGVtcy5mb3JFYWNoKChsYXlvdXRJdGVtLGluZCk9PntcclxuICAgICAgICAgICAgICBsZXQgZm9ybVZhbHVlPUpzb25Qb2ludGVyLmdldCh0aGlzLmpzZi5mb3JtVmFsdWVzLGxheW91dEl0ZW0uZGF0YVBvaW50ZXIpO1xyXG4gICAgICAgICAgICAgICAgaWYobGF5b3V0SXRlbS5vbmVPZlBvaW50ZXIpe1xyXG4gICAgICAgICAgICAgICAgICBsZXQgY29udHJvbEtleT1wYXRoMkNvbnRyb2xLZXkobGF5b3V0SXRlbS5vbmVPZlBvaW50ZXIpO1xyXG4gICAgICAgICAgICAgICAgICBsZXQgZm5hbWU9bGF5b3V0SXRlbS5uYW1lO1xyXG4gICAgICAgICAgICAgICAgICBpZihoYXNPd24odGhpcy5qc2YuZm9ybUdyb3VwLmNvbnRyb2xzLGNvbnRyb2xLZXkpJiZcclxuICAgICAgICAgICAgICAgICAgICAoZm9ybVZhbHVlIHx8IGhhc05vbk51bGxWYWx1ZSh0aGlzLmpzZi5mb3JtR3JvdXAuY29udHJvbHNbY29udHJvbEtleV0udmFsdWUpKVxyXG4gICAgICAgICAgICAgICAgICAgIC8vaGFzT3duKGZvcm1WYWx1ZSxmbmFtZSkgJiYgaGFzT3duKHRoaXMuanNmLmZvcm1Hcm91cC5jb250cm9scyxjb250cm9sS2V5KSBcclxuICAgICAgICAgICAgICAgICAgLy8gJiYgKGZvcm1WYWx1ZVtmbmFtZV0gfHwgdGhpcy5qc2YuZm9ybUdyb3VwLmNvbnRyb2xzW2NvbnRyb2xLZXldLnZhbHVlKVxyXG4gICAgICAgICAgICAgICAgICAgIC8vJiZpc0VxdWFsKGZvcm1WYWx1ZVtmbmFtZV0sdGhpcy5qc2YuZm9ybUdyb3VwLmNvbnRyb2xzW2NvbnRyb2xLZXldLnZhbHVlKVxyXG4gICAgICAgICAgICAgICAgICApe1xyXG4gICAgICAgICAgICAgICAgICAgICAgZm91bmRJbmQ9aW5kO1xyXG4gICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgIC8vZm91bmRJbmQ9Zm9ybVZhbHVlW2NvbnRyb2xLZXldIT1udWxsP2luZDpmb3VuZEluZDtcclxuICAgICAgICAgICAgICAgICAgLy9pZiBubyBleGFjdCBtYXRjaCBmb3VuZCwgdGhlbiBzZWFyY2ggaW4gZGVzY2VuZGFudCB2YWx1ZXNcclxuICAgICAgICAgICAgICAgICAgLy90byBzZWUgd2hpY2ggb25lIG9mIGl0ZW0gbWF0Y2hlc1xyXG4gICAgICAgICAgICAgICAgICBpZihmb3VuZEluZD09LTEpe1xyXG4gICAgICAgICAgICAgICAgICAgIC8vZmluZCBhbGwgZGVzY2VuZGFudCBvbmVvZiBwYXRoc1xyXG4gICAgICAgICAgICAgICAgICAgIGxldCBkZXNjZW5kYW50T25lT2ZDb250cm9sTmFtZXM9T2JqZWN0LmtleXModGhpcy5qc2YuZm9ybUdyb3VwLmNvbnRyb2xzKS5maWx0ZXIoY29udHJvbE5hbWU9PntcclxuICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBjb250cm9sTmFtZS5zdGFydHNXaXRoKGNvbnRyb2xLZXkpO1xyXG4gICAgICAgICAgICAgICAgICAgIH0pXHJcbiAgICAgICAgICAgICAgICAgICAgZGVzY2VuZGFudE9uZU9mQ29udHJvbE5hbWVzLmZvckVhY2goY29udHJvbE5hbWU9PntcclxuICAgICAgICAgICAgICAgICAgICAgIGxldCBwYXJ0cz1jb250cm9sTmFtZS5zcGxpdCgnJCcpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgbGV0IGZpZWxkTmFtZT1wYXJ0c1twYXJ0cy5sZW5ndGgtMV07XHJcbiAgICAgICAgICAgICAgICAgICAgICBsZXQgY29udHJvbFZhbHVlPXRoaXMuanNmLmZvcm1Hcm91cC5jb250cm9sc1tjb250cm9sTmFtZV0udmFsdWU7XHJcbiAgICAgICAgICAgICAgICAgICAgICBsZXQgY29udHJvbFNjaGVtYT1Kc29uUG9pbnRlci5nZXQodGhpcy5qc2Yuc2NoZW1hLHBhcnRzLmpvaW4oXCIvXCIpKTtcclxuICAgICAgICAgICAgICAgICAgICAgIGxldCBzY2hlbWFQb2ludGVyPXBhcnRzLmpvaW4oXCIvXCIpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgbGV0IGRQb2ludGVyPXNjaGVtYVBvaW50ZXIucmVwbGFjZSgvKGFueU9mfGFsbE9mfG9uZU9mfG5vbmUpXFwvW1xcZF0rXFwvL2csICcnKVxyXG4gICAgICAgICAgICAgICAgICAgICAgLnJlcGxhY2UoLyhpZnx0aGVufGVsc2V8cHJvcGVydGllcylcXC8vZywgJycpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgLy9Kc29uUG9pbnRlci50b0RhdGFQb2ludGVyKHBhcnRzLmpvaW4oXCIvXCIpLHRoaXMuanNmLnNjaGVtYSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICBsZXQgZFZhbD1Kc29uUG9pbnRlci5nZXQodGhpcy5qc2YuZm9ybVZhbHVlcyxkUG9pbnRlcik7XHJcbiAgICAgICAgICAgICAgICAgICAgICBsZXQgY29tcGFyZVZhbD1kVmFsOy8vZm9ybVZhbHVlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgLy9jb21wYXJlIG9ubHkgdmFsdWVzIHRoYXQgYXJlIGluIHRoZSBzdWJzY2hlbWEgcHJvcGVydGllc1xyXG4gICAgICAgICAgICAgICAgICAgICAgaWYoY29udHJvbFNjaGVtYSAmJiBjb250cm9sU2NoZW1hLnByb3BlcnRpZXMpe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBjb21wYXJlVmFsPWlzT2JqZWN0KGRWYWwpICYmIGhhc093bihkVmFsLGZpZWxkTmFtZSk/XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHBpY2soZFZhbFtmaWVsZE5hbWVdLE9iamVjdC5rZXlzKGNvbnRyb2xTY2hlbWEucHJvcGVydGllcykpXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDpwaWNrKGRWYWwsT2JqZWN0LmtleXMoY29udHJvbFNjaGVtYS5wcm9wZXJ0aWVzKSlcclxuICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgIC8qXHJcbiAgICAgICAgICAgICAgICAgICAgICBpZihpc09iamVjdChjb21wYXJlVmFsKSAmJiBoYXNPd24oY29tcGFyZVZhbCxmaWVsZE5hbWUpICYmIFxyXG4gICAgICAgICAgICAgICAgICAgICAgaXNFcXVhbChjb21wYXJlVmFsW2ZpZWxkTmFtZV0sY29udHJvbFZhbHVlKVxyXG4gICAgICAgICAgICAgICAgICAgICl7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvdW5kSW5kPWluZDtcclxuICAgICAgICAgICAgICAgICAgICAgIH1lbHNlIC8vaWYoZm9ybVZhbHVlIHx8IGNvbnRyb2xWYWx1ZSl7XHJcbiAgICAgICAgICAgICAgICAgICAgICBpZihpc0VxdWFsKGNvbXBhcmVWYWwsY29udHJvbFZhbHVlKSl7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvdW5kSW5kPWluZDtcclxuICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICovXHJcbiAgICAgICAgICAgICAgICAgICAgICBpZihpc0VxdWFsKGNvbXBhcmVWYWwsY29udHJvbFZhbHVlKSl7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvdW5kSW5kPWluZDtcclxuICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9KVxyXG4gICAgICAgICAgICAgICAgICAgIC8vbm93IG5lZWQgdG8gY29tcGFyZSB2YWx1ZXNcclxuICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9KVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgcmV0dXJuIE1hdGgubWF4KGZvdW5kSW5kLDApO1xyXG4gICAgICAgIH1cclxuXHJcbiAgdXBkYXRlVmFsdWUoZXZlbnQpIHtcclxuICAgIHRoaXMuanNmLnVwZGF0ZVZhbHVlKHRoaXMsIGV2ZW50LnRhcmdldC52YWx1ZSk7XHJcbiAgfVxyXG5cclxuICBuZ09uRGVzdHJveSAoKSB7XHJcbiAgICAvL3RoaXMuanNmLnVwZGF0ZVZhbHVlKHRoaXMsIG51bGwpO1xyXG4gIH1cclxufVxyXG4iXX0=
|
|
@@ -1,8 +1,9 @@
|
|
|
1
|
-
import { Component, input, signal
|
|
1
|
+
import { Component, inject, input, signal } from '@angular/core';
|
|
2
2
|
import { JsonSchemaFormService } from '@ng-formworks/core';
|
|
3
3
|
import * as i0 from "@angular/core";
|
|
4
4
|
import * as i1 from "@ng-formworks/core";
|
|
5
5
|
import * as i2 from "@angular/common";
|
|
6
|
+
import * as i3 from "@angular/forms";
|
|
6
7
|
export class DaisyUITabsComponent {
|
|
7
8
|
constructor() {
|
|
8
9
|
this.jsf = inject(JsonSchemaFormService);
|
|
@@ -14,6 +15,9 @@ export class DaisyUITabsComponent {
|
|
|
14
15
|
}
|
|
15
16
|
ngOnInit() {
|
|
16
17
|
this.options = this.layoutNode().options || {};
|
|
18
|
+
if (this.options.selectedTab) {
|
|
19
|
+
this.selectedItem = this.options.selectedTab;
|
|
20
|
+
}
|
|
17
21
|
this.itemCount = this.layoutNode().items.length - 1;
|
|
18
22
|
this.updateControl();
|
|
19
23
|
}
|
|
@@ -41,19 +45,26 @@ export class DaisyUITabsComponent {
|
|
|
41
45
|
return this.jsf.setArrayItemTitle(this, item, index);
|
|
42
46
|
}
|
|
43
47
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: DaisyUITabsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
44
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "17.3.12", type: DaisyUITabsComponent, selector: "tabs-widget", inputs: { layoutNode: { classPropertyName: "layoutNode", publicName: "layoutNode", isSignal: true, isRequired: false, transformFunction: null }, layoutIndex: { classPropertyName: "layoutIndex", publicName: "layoutIndex", isSignal: true, isRequired: false, transformFunction: null }, dataIndex: { classPropertyName: "dataIndex", publicName: "dataIndex", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: `
|
|
48
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "17.3.12", type: DaisyUITabsComponent, selector: "daisyui-tabs-widget", inputs: { layoutNode: { classPropertyName: "layoutNode", publicName: "layoutNode", isSignal: true, isRequired: false, transformFunction: null }, layoutIndex: { classPropertyName: "layoutIndex", publicName: "layoutIndex", isSignal: true, isRequired: false, transformFunction: null }, dataIndex: { classPropertyName: "dataIndex", publicName: "dataIndex", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: `
|
|
45
49
|
<div
|
|
46
50
|
[class]="options?.labelHtmlClass || ''">
|
|
47
51
|
<a *ngFor="let item of layoutNode()?.items; let i = index"
|
|
48
52
|
[class]="(options?.itemLabelHtmlClass || '') + (selectedItem === i ?
|
|
49
53
|
(' ' + (options?.activeClass || '') + ' ' + (options?.style?.selected || '')) :
|
|
50
54
|
(' ' + options?.style?.unselected))"
|
|
55
|
+
(click)="select(i)"
|
|
51
56
|
>
|
|
57
|
+
<input type="radio" [value]="i" *ngIf="options?.tabMode=='oneOfMode'"
|
|
58
|
+
name="tabSelection"
|
|
59
|
+
[(ngModel)]="selectedItem"
|
|
60
|
+
[class]="(options?.widget_radioClass || '')"
|
|
61
|
+
[value]="i"
|
|
62
|
+
(change)="select(i)"
|
|
63
|
+
/>
|
|
52
64
|
<span *ngIf="showAddTab || item.type !== '$ref'"
|
|
53
65
|
[class]="(selectedItem === i ? (' ' + options?.activeClass + ' ' + options?.style?.selected) :
|
|
54
|
-
(' ' + options?.style?.unselected))"
|
|
55
|
-
|
|
56
|
-
(click)="select(i)"></span>
|
|
66
|
+
(' ' + options?.style?.unselected))">{{setTabTitle(item, i)}}</span>
|
|
67
|
+
|
|
57
68
|
</a>
|
|
58
69
|
|
|
59
70
|
</div>
|
|
@@ -67,33 +78,49 @@ export class DaisyUITabsComponent {
|
|
|
67
78
|
-->
|
|
68
79
|
|
|
69
80
|
<div *ngFor="let layoutItem of layoutNode()?.items; let i = index"
|
|
70
|
-
[class]="options?.htmlClass || ''">
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
+
[class]="(options?.htmlClass || '') + (selectedItem != i?' ngf-hidden':'')">
|
|
82
|
+
<ng-container *ngIf="options?.tabMode=='oneOfMode'">
|
|
83
|
+
<select-framework-widget *ngIf="selectedItem === i"
|
|
84
|
+
[class]="(options?.fieldHtmlClass || '') +
|
|
85
|
+
' ' + (options?.activeClass || '') +
|
|
86
|
+
' ' + (options?.style?.selected || '')"
|
|
87
|
+
[dataIndex]="layoutNode()?.dataType === 'array' ? (dataIndex() || []).concat(i) : dataIndex()"
|
|
88
|
+
[layoutIndex]="(layoutIndex() || []).concat(i)"
|
|
89
|
+
[layoutNode]="layoutItem"></select-framework-widget>
|
|
90
|
+
</ng-container>
|
|
91
|
+
<ng-container *ngIf="options?.tabMode != 'oneOfMode'">
|
|
92
|
+
<select-framework-widget
|
|
93
|
+
[class]="(options?.fieldHtmlClass || '') +
|
|
94
|
+
' ' + (options?.activeClass || '') +
|
|
95
|
+
' ' + (options?.style?.selected || '')"
|
|
96
|
+
[dataIndex]="layoutNode()?.dataType === 'array' ? (dataIndex() || []).concat(i) : dataIndex()"
|
|
97
|
+
[layoutIndex]="(layoutIndex() || []).concat(i)"
|
|
98
|
+
[layoutNode]="layoutItem"></select-framework-widget>
|
|
99
|
+
</ng-container>
|
|
100
|
+
</div>`, isInline: true, styles: ["a{cursor:pointer}.ngf-hidden{display:none}\n"], dependencies: [{ kind: "component", type: i1.SelectFrameworkComponent, selector: "select-framework-widget", inputs: ["layoutNode", "layoutIndex", "dataIndex"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i3.RadioControlValueAccessor, selector: "input[type=radio][formControlName],input[type=radio][formControl],input[type=radio][ngModel]", inputs: ["name", "formControlName", "value"] }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }] }); }
|
|
81
101
|
}
|
|
82
102
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: DaisyUITabsComponent, decorators: [{
|
|
83
103
|
type: Component,
|
|
84
|
-
args: [{ selector: 'tabs-widget', template: `
|
|
104
|
+
args: [{ selector: 'daisyui-tabs-widget', template: `
|
|
85
105
|
<div
|
|
86
106
|
[class]="options?.labelHtmlClass || ''">
|
|
87
107
|
<a *ngFor="let item of layoutNode()?.items; let i = index"
|
|
88
108
|
[class]="(options?.itemLabelHtmlClass || '') + (selectedItem === i ?
|
|
89
109
|
(' ' + (options?.activeClass || '') + ' ' + (options?.style?.selected || '')) :
|
|
90
110
|
(' ' + options?.style?.unselected))"
|
|
111
|
+
(click)="select(i)"
|
|
91
112
|
>
|
|
113
|
+
<input type="radio" [value]="i" *ngIf="options?.tabMode=='oneOfMode'"
|
|
114
|
+
name="tabSelection"
|
|
115
|
+
[(ngModel)]="selectedItem"
|
|
116
|
+
[class]="(options?.widget_radioClass || '')"
|
|
117
|
+
[value]="i"
|
|
118
|
+
(change)="select(i)"
|
|
119
|
+
/>
|
|
92
120
|
<span *ngIf="showAddTab || item.type !== '$ref'"
|
|
93
121
|
[class]="(selectedItem === i ? (' ' + options?.activeClass + ' ' + options?.style?.selected) :
|
|
94
|
-
(' ' + options?.style?.unselected))"
|
|
95
|
-
|
|
96
|
-
(click)="select(i)"></span>
|
|
122
|
+
(' ' + options?.style?.unselected))">{{setTabTitle(item, i)}}</span>
|
|
123
|
+
|
|
97
124
|
</a>
|
|
98
125
|
|
|
99
126
|
</div>
|
|
@@ -107,16 +134,25 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
107
134
|
-->
|
|
108
135
|
|
|
109
136
|
<div *ngFor="let layoutItem of layoutNode()?.items; let i = index"
|
|
110
|
-
[class]="options?.htmlClass || ''">
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
137
|
+
[class]="(options?.htmlClass || '') + (selectedItem != i?' ngf-hidden':'')">
|
|
138
|
+
<ng-container *ngIf="options?.tabMode=='oneOfMode'">
|
|
139
|
+
<select-framework-widget *ngIf="selectedItem === i"
|
|
140
|
+
[class]="(options?.fieldHtmlClass || '') +
|
|
141
|
+
' ' + (options?.activeClass || '') +
|
|
142
|
+
' ' + (options?.style?.selected || '')"
|
|
143
|
+
[dataIndex]="layoutNode()?.dataType === 'array' ? (dataIndex() || []).concat(i) : dataIndex()"
|
|
144
|
+
[layoutIndex]="(layoutIndex() || []).concat(i)"
|
|
145
|
+
[layoutNode]="layoutItem"></select-framework-widget>
|
|
146
|
+
</ng-container>
|
|
147
|
+
<ng-container *ngIf="options?.tabMode != 'oneOfMode'">
|
|
148
|
+
<select-framework-widget
|
|
149
|
+
[class]="(options?.fieldHtmlClass || '') +
|
|
150
|
+
' ' + (options?.activeClass || '') +
|
|
151
|
+
' ' + (options?.style?.selected || '')"
|
|
152
|
+
[dataIndex]="layoutNode()?.dataType === 'array' ? (dataIndex() || []).concat(i) : dataIndex()"
|
|
153
|
+
[layoutIndex]="(layoutIndex() || []).concat(i)"
|
|
154
|
+
[layoutNode]="layoutItem"></select-framework-widget>
|
|
155
|
+
</ng-container>
|
|
156
|
+
</div>`, standalone: false, styles: ["a{cursor:pointer}.ngf-hidden{display:none}\n"] }]
|
|
121
157
|
}] });
|
|
122
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
158
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGFpc3l1aS10YWJzLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25nLWZvcm13b3Jrcy1kYWlzeXVpL3NyYy9saWIvd2lkZ2V0cy9kYWlzeXVpLXRhYnMuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQVUsTUFBTSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekUsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sb0JBQW9CLENBQUM7Ozs7O0FBaUUzRCxNQUFNLE9BQU8sb0JBQW9CO0lBN0RqQztRQThEVSxRQUFHLEdBQUcsTUFBTSxDQUFDLHFCQUFxQixDQUFDLENBQUM7UUFJNUMsaUJBQVksR0FBRyxDQUFDLENBQUM7UUFDakIsZUFBVSxHQUFHLElBQUksQ0FBQztRQUNULGVBQVUsR0FBRyxLQUFLLENBQU0sU0FBUyxDQUFDLENBQUM7UUFDbkMsZ0JBQVcsR0FBRyxLQUFLLENBQVcsU0FBUyxDQUFDLENBQUM7UUFDekMsY0FBUyxHQUFHLEtBQUssQ0FBVyxTQUFTLENBQUMsQ0FBQztLQXFDakQ7SUFuQ0MsUUFBUTtRQUNOLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDLE9BQU8sSUFBSSxFQUFFLENBQUM7UUFDL0MsSUFBRyxJQUFJLENBQUMsT0FBTyxDQUFDLFdBQVcsRUFBQztZQUMxQixJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsV0FBVyxDQUFDO1NBQzlDO1FBQ0QsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUMsS0FBSyxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUM7UUFDcEQsSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDO0lBQ3ZCLENBQUM7SUFFRCxNQUFNLENBQUMsS0FBSztRQUNWLE1BQU0sVUFBVSxHQUFHLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQztRQUNyQyxJQUFJLFVBQVUsQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUMsSUFBSSxLQUFLLE1BQU0sRUFBRTtZQUMzQyxJQUFJLENBQUMsU0FBUyxHQUFHLFVBQVUsQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDO1lBQ3pDLElBQUksQ0FBQyxHQUFHLENBQUMsT0FBTyxDQUFDO2dCQUNmLFVBQVUsRUFBRSxNQUFNLENBQUMsVUFBVSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQztnQkFDM0MsV0FBVyxFQUFFLE1BQU0sQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDO2dCQUNyRCxTQUFTLEVBQUUsTUFBTSxDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUM7YUFDbEQsQ0FBQyxDQUFDO1lBQ0gsSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDO1NBQ3RCO1FBQ0QsSUFBSSxDQUFDLFlBQVksR0FBRyxLQUFLLENBQUM7SUFDNUIsQ0FBQztJQUVELGFBQWE7UUFDWCxNQUFNLFFBQVEsR0FBRyxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQyxLQUFLLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxDQUFDO1FBQzdFLElBQUksUUFBUSxDQUFDLElBQUksS0FBSyxNQUFNO1lBQzFCLElBQUksQ0FBQyxTQUFTLElBQUksQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLFFBQVEsSUFBSSxJQUFJLENBQUMsRUFDckQ7WUFDQSxJQUFJLENBQUMsVUFBVSxHQUFHLEtBQUssQ0FBQztTQUN6QjtJQUNILENBQUM7SUFFRCxXQUFXLENBQUMsSUFBUyxFQUFFLEtBQWE7UUFDbEMsT0FBTyxJQUFJLENBQUMsR0FBRyxDQUFDLGlCQUFpQixDQUFDLElBQUksRUFBRSxJQUFJLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFDdkQsQ0FBQzsrR0E3Q1Usb0JBQW9CO21HQUFwQixvQkFBb0IsNGRBMURuQjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztXQW9ESDs7NEZBTUUsb0JBQW9CO2tCQTdEaEMsU0FBUzsrQkFFSSxxQkFBcUIsWUFDckI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7V0FvREgsY0FJSyxLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBPbkluaXQsIGluamVjdCwgaW5wdXQsIHNpZ25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBKc29uU2NoZW1hRm9ybVNlcnZpY2UgfSBmcm9tICdAbmctZm9ybXdvcmtzL2NvcmUnO1xyXG5cclxuXHJcblxyXG5AQ29tcG9uZW50KHtcclxuICAgIC8vIHRzbGludDpkaXNhYmxlLW5leHQtbGluZTpjb21wb25lbnQtc2VsZWN0b3JcclxuICAgIHNlbGVjdG9yOiAnZGFpc3l1aS10YWJzLXdpZGdldCcsXHJcbiAgICB0ZW1wbGF0ZTogYFxyXG4gICAgPGRpdlxyXG4gICAgICBbY2xhc3NdPVwib3B0aW9ucz8ubGFiZWxIdG1sQ2xhc3MgfHwgJydcIj5cclxuICAgICAgPGEgKm5nRm9yPVwibGV0IGl0ZW0gb2YgbGF5b3V0Tm9kZSgpPy5pdGVtczsgbGV0IGkgPSBpbmRleFwiXHJcbiAgICAgICAgW2NsYXNzXT1cIihvcHRpb25zPy5pdGVtTGFiZWxIdG1sQ2xhc3MgfHwgJycpICsgKHNlbGVjdGVkSXRlbSA9PT0gaSA/XHJcbiAgICAgICAgICAoJyAnICsgKG9wdGlvbnM/LmFjdGl2ZUNsYXNzIHx8ICcnKSArICcgJyArIChvcHRpb25zPy5zdHlsZT8uc2VsZWN0ZWQgfHwgJycpKSA6XHJcbiAgICAgICAgICAoJyAnICsgb3B0aW9ucz8uc3R5bGU/LnVuc2VsZWN0ZWQpKVwiXHJcbiAgICAgICAgICAoY2xpY2spPVwic2VsZWN0KGkpXCJcclxuICAgICAgICA+XHJcbiAgICAgICAgICA8aW5wdXQgdHlwZT1cInJhZGlvXCIgW3ZhbHVlXT1cImlcIiAqbmdJZj1cIm9wdGlvbnM/LnRhYk1vZGU9PSdvbmVPZk1vZGUnXCIgXHJcbiAgICAgICAgICAgbmFtZT1cInRhYlNlbGVjdGlvblwiIFxyXG4gICAgICAgICAgIFsobmdNb2RlbCldPVwic2VsZWN0ZWRJdGVtXCJcclxuICAgICAgICAgICBbY2xhc3NdPVwiKG9wdGlvbnM/LndpZGdldF9yYWRpb0NsYXNzIHx8ICcnKVwiXHJcbiAgICAgICAgICAgW3ZhbHVlXT1cImlcIiBcclxuICAgICAgICAgICAoY2hhbmdlKT1cInNlbGVjdChpKVwiXHJcbiAgICAgICAgICAvPlxyXG4gICAgICAgIDxzcGFuICpuZ0lmPVwic2hvd0FkZFRhYiB8fCBpdGVtLnR5cGUgIT09ICckcmVmJ1wiXHJcbiAgICAgICAgW2NsYXNzXT1cIihzZWxlY3RlZEl0ZW0gPT09IGkgPyAoJyAnICsgb3B0aW9ucz8uYWN0aXZlQ2xhc3MgKyAnICcgKyBvcHRpb25zPy5zdHlsZT8uc2VsZWN0ZWQpIDpcclxuICAgICAgICAoJyAnICsgb3B0aW9ucz8uc3R5bGU/LnVuc2VsZWN0ZWQpKVwiPnt7c2V0VGFiVGl0bGUoaXRlbSwgaSl9fTwvc3Bhbj5cclxuICAgICAgICAgIFxyXG4gICAgICA8L2E+XHJcblxyXG4gICAgPC9kaXY+XHJcblxyXG4gICAgPCEtLVxyXG4gICAgPGRpdiBjbGFzcz1cInRhYnMgdGFicy1ib3hlZFwiPlxyXG4gIDxhIGNsYXNzPVwidGFiXCI+VGFiIDE8L2E+IFxyXG4gIDxhIGNsYXNzPVwidGFiIHRhYi1hY3RpdmVcIj5UYWIgMjwvYT4gXHJcbiAgPGEgY2xhc3M9XCJ0YWJcIj5UYWIgMzwvYT5cclxuPC9kaXY+XHJcbi0tPlxyXG5cclxuICAgIDxkaXYgKm5nRm9yPVwibGV0IGxheW91dEl0ZW0gb2YgbGF5b3V0Tm9kZSgpPy5pdGVtczsgbGV0IGkgPSBpbmRleFwiXHJcbiAgICAgIFtjbGFzc109XCIob3B0aW9ucz8uaHRtbENsYXNzIHx8ICcnKSArIChzZWxlY3RlZEl0ZW0gIT0gaT8nIG5nZi1oaWRkZW4nOicnKVwiPlxyXG4gICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwib3B0aW9ucz8udGFiTW9kZT09J29uZU9mTW9kZSdcIj5cclxuICAgICAgICA8c2VsZWN0LWZyYW1ld29yay13aWRnZXQgKm5nSWY9XCJzZWxlY3RlZEl0ZW0gPT09IGlcIlxyXG4gICAgICAgICAgW2NsYXNzXT1cIihvcHRpb25zPy5maWVsZEh0bWxDbGFzcyB8fCAnJykgK1xyXG4gICAgICAgICAgICAnICcgKyAob3B0aW9ucz8uYWN0aXZlQ2xhc3MgfHwgJycpICtcclxuICAgICAgICAgICAgJyAnICsgKG9wdGlvbnM/LnN0eWxlPy5zZWxlY3RlZCB8fCAnJylcIlxyXG4gICAgICAgICAgW2RhdGFJbmRleF09XCJsYXlvdXROb2RlKCk/LmRhdGFUeXBlID09PSAnYXJyYXknID8gKGRhdGFJbmRleCgpIHx8IFtdKS5jb25jYXQoaSkgOiBkYXRhSW5kZXgoKVwiXHJcbiAgICAgICAgICBbbGF5b3V0SW5kZXhdPVwiKGxheW91dEluZGV4KCkgfHwgW10pLmNvbmNhdChpKVwiXHJcbiAgICAgICAgICBbbGF5b3V0Tm9kZV09XCJsYXlvdXRJdGVtXCI+PC9zZWxlY3QtZnJhbWV3b3JrLXdpZGdldD5cclxuICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJvcHRpb25zPy50YWJNb2RlICE9ICdvbmVPZk1vZGUnXCI+XHJcbiAgICAgICAgPHNlbGVjdC1mcmFtZXdvcmstd2lkZ2V0IFxyXG4gICAgICAgICAgW2NsYXNzXT1cIihvcHRpb25zPy5maWVsZEh0bWxDbGFzcyB8fCAnJykgK1xyXG4gICAgICAgICAgICAnICcgKyAob3B0aW9ucz8uYWN0aXZlQ2xhc3MgfHwgJycpICtcclxuICAgICAgICAgICAgJyAnICsgKG9wdGlvbnM/LnN0eWxlPy5zZWxlY3RlZCB8fCAnJylcIlxyXG4gICAgICAgICAgW2RhdGFJbmRleF09XCJsYXlvdXROb2RlKCk/LmRhdGFUeXBlID09PSAnYXJyYXknID8gKGRhdGFJbmRleCgpIHx8IFtdKS5jb25jYXQoaSkgOiBkYXRhSW5kZXgoKVwiXHJcbiAgICAgICAgICBbbGF5b3V0SW5kZXhdPVwiKGxheW91dEluZGV4KCkgfHwgW10pLmNvbmNhdChpKVwiXHJcbiAgICAgICAgICBbbGF5b3V0Tm9kZV09XCJsYXlvdXRJdGVtXCI+PC9zZWxlY3QtZnJhbWV3b3JrLXdpZGdldD5cclxuICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICA8L2Rpdj5gLFxyXG4gICAgc3R5bGVzOiBbYCBhIHsgY3Vyc29yOiBwb2ludGVyOyB9XHJcbiAgICAgIC5uZ2YtaGlkZGVue2Rpc3BsYXk6bm9uZX1cclxuICAgICAgIGBdLFxyXG4gICAgc3RhbmRhbG9uZTogZmFsc2VcclxufSlcclxuZXhwb3J0IGNsYXNzIERhaXN5VUlUYWJzQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcclxuICBwcml2YXRlIGpzZiA9IGluamVjdChKc29uU2NoZW1hRm9ybVNlcnZpY2UpO1xyXG5cclxuICBvcHRpb25zOiBhbnk7XHJcbiAgaXRlbUNvdW50OiBudW1iZXI7XHJcbiAgc2VsZWN0ZWRJdGVtID0gMDtcclxuICBzaG93QWRkVGFiID0gdHJ1ZTtcclxuICByZWFkb25seSBsYXlvdXROb2RlID0gaW5wdXQ8YW55Pih1bmRlZmluZWQpO1xyXG4gIHJlYWRvbmx5IGxheW91dEluZGV4ID0gaW5wdXQ8bnVtYmVyW10+KHVuZGVmaW5lZCk7XHJcbiAgcmVhZG9ubHkgZGF0YUluZGV4ID0gaW5wdXQ8bnVtYmVyW10+KHVuZGVmaW5lZCk7XHJcblxyXG4gIG5nT25Jbml0KCkge1xyXG4gICAgdGhpcy5vcHRpb25zID0gdGhpcy5sYXlvdXROb2RlKCkub3B0aW9ucyB8fCB7fTtcclxuICAgIGlmKHRoaXMub3B0aW9ucy5zZWxlY3RlZFRhYil7XHJcbiAgICAgIHRoaXMuc2VsZWN0ZWRJdGVtID0gdGhpcy5vcHRpb25zLnNlbGVjdGVkVGFiO1xyXG4gICAgfVxyXG4gICAgdGhpcy5pdGVtQ291bnQgPSB0aGlzLmxheW91dE5vZGUoKS5pdGVtcy5sZW5ndGggLSAxO1xyXG4gICAgdGhpcy51cGRhdGVDb250cm9sKCk7XHJcbiAgfVxyXG5cclxuICBzZWxlY3QoaW5kZXgpIHtcclxuICAgIGNvbnN0IGxheW91dE5vZGUgPSB0aGlzLmxheW91dE5vZGUoKTtcclxuICAgIGlmIChsYXlvdXROb2RlLml0ZW1zW2luZGV4XS50eXBlID09PSAnJHJlZicpIHtcclxuICAgICAgdGhpcy5pdGVtQ291bnQgPSBsYXlvdXROb2RlLml0ZW1zLmxlbmd0aDtcclxuICAgICAgdGhpcy5qc2YuYWRkSXRlbSh7XHJcbiAgICAgICAgbGF5b3V0Tm9kZTogc2lnbmFsKGxheW91dE5vZGUuaXRlbXNbaW5kZXhdKSxcclxuICAgICAgICBsYXlvdXRJbmRleDogc2lnbmFsKHRoaXMubGF5b3V0SW5kZXgoKS5jb25jYXQoaW5kZXgpKSxcclxuICAgICAgICBkYXRhSW5kZXg6IHNpZ25hbCh0aGlzLmRhdGFJbmRleCgpLmNvbmNhdChpbmRleCkpXHJcbiAgICAgIH0pO1xyXG4gICAgICB0aGlzLnVwZGF0ZUNvbnRyb2woKTtcclxuICAgIH1cclxuICAgIHRoaXMuc2VsZWN0ZWRJdGVtID0gaW5kZXg7XHJcbiAgfVxyXG5cclxuICB1cGRhdGVDb250cm9sKCkge1xyXG4gICAgY29uc3QgbGFzdEl0ZW0gPSB0aGlzLmxheW91dE5vZGUoKS5pdGVtc1t0aGlzLmxheW91dE5vZGUoKS5pdGVtcy5sZW5ndGggLSAxXTtcclxuICAgIGlmIChsYXN0SXRlbS50eXBlID09PSAnJHJlZicgJiZcclxuICAgICAgdGhpcy5pdGVtQ291bnQgPj0gKGxhc3RJdGVtLm9wdGlvbnMubWF4SXRlbXMgfHwgMTAwMClcclxuICAgICkge1xyXG4gICAgICB0aGlzLnNob3dBZGRUYWIgPSBmYWxzZTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHNldFRhYlRpdGxlKGl0ZW06IGFueSwgaW5kZXg6IG51bWJlcik6IHN0cmluZyB7XHJcbiAgICByZXR1cm4gdGhpcy5qc2Yuc2V0QXJyYXlJdGVtVGl0bGUodGhpcywgaXRlbSwgaW5kZXgpO1xyXG4gIH1cclxufVxyXG4iXX0=
|
package/esm2022/public-api.mjs
CHANGED
|
@@ -7,5 +7,6 @@ export * from './lib/daisyui-framework.prefixed.component';
|
|
|
7
7
|
export * from './lib/daisyui-framework.service';
|
|
8
8
|
export * from './lib/daisyui.framework';
|
|
9
9
|
export * from './lib/tokens.defs';
|
|
10
|
+
export { DaisyUIOneOfComponent } from './lib/widgets/daisyui-one-of.component';
|
|
10
11
|
export { DaisyUITabsComponent } from './lib/widgets/daisyui-tabs.component';
|
|
11
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
12
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL25nLWZvcm13b3Jrcy1kYWlzeXVpL3NyYy9wdWJsaWMtYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsY0FBYyxtQ0FBbUMsQ0FBQztBQUNsRCxjQUFjLGdDQUFnQyxDQUFDO0FBQy9DLGNBQWMsNENBQTRDLENBQUM7QUFDM0QsY0FBYyxpQ0FBaUMsQ0FBQztBQUNoRCxjQUFjLHlCQUF5QixDQUFDO0FBQ3hDLGNBQWMsbUJBQW1CLENBQUM7QUFDbEMsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sd0NBQXdDLENBQUM7QUFDL0UsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sc0NBQXNDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxyXG4gKiBQdWJsaWMgQVBJIFN1cmZhY2Ugb2YgQG5nLWZvcm13b3Jrcy9kYWlzeXVpXHJcbiAqL1xyXG5cclxuZXhwb3J0ICogZnJvbSAnLi9saWIvZGFpc3l1aS1mcmFtZXdvcmsuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvZGFpc3l1aS1mcmFtZXdvcmsubW9kdWxlJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvZGFpc3l1aS1mcmFtZXdvcmsucHJlZml4ZWQuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvZGFpc3l1aS1mcmFtZXdvcmsuc2VydmljZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2RhaXN5dWkuZnJhbWV3b3JrJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvdG9rZW5zLmRlZnMnO1xyXG5leHBvcnQgeyBEYWlzeVVJT25lT2ZDb21wb25lbnQgfSBmcm9tICcuL2xpYi93aWRnZXRzL2RhaXN5dWktb25lLW9mLmNvbXBvbmVudCc7XHJcbmV4cG9ydCB7IERhaXN5VUlUYWJzQ29tcG9uZW50IH0gZnJvbSAnLi9saWIvd2lkZ2V0cy9kYWlzeXVpLXRhYnMuY29tcG9uZW50JztcclxuXHJcbiJdfQ==
|