@nestjs-dash/core 0.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +81 -0
- package/dist/actions/handlers.d.ts +16 -0
- package/dist/actions/handlers.d.ts.map +1 -0
- package/dist/actions/handlers.js +12 -0
- package/dist/actions/handlers.js.map +1 -0
- package/dist/actions/index.d.ts +101 -0
- package/dist/actions/index.d.ts.map +1 -0
- package/dist/actions/index.js +232 -0
- package/dist/actions/index.js.map +1 -0
- package/dist/charts/index.d.ts +65 -0
- package/dist/charts/index.d.ts.map +1 -0
- package/dist/charts/index.js +143 -0
- package/dist/charts/index.js.map +1 -0
- package/dist/forms/index.d.ts +146 -0
- package/dist/forms/index.d.ts.map +1 -0
- package/dist/forms/index.js +291 -0
- package/dist/forms/index.js.map +1 -0
- package/dist/forms/json-fields.d.ts +7 -0
- package/dist/forms/json-fields.d.ts.map +1 -0
- package/dist/forms/json-fields.js +124 -0
- package/dist/forms/json-fields.js.map +1 -0
- package/dist/forms/validation.d.ts +10 -0
- package/dist/forms/validation.d.ts.map +1 -0
- package/dist/forms/validation.js +42 -0
- package/dist/forms/validation.js.map +1 -0
- package/dist/index.d.ts +353 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +588 -0
- package/dist/index.js.map +1 -0
- package/dist/schemas/index.d.ts +54 -0
- package/dist/schemas/index.d.ts.map +1 -0
- package/dist/schemas/index.js +126 -0
- package/dist/schemas/index.js.map +1 -0
- package/dist/tables/index.d.ts +117 -0
- package/dist/tables/index.d.ts.map +1 -0
- package/dist/tables/index.js +283 -0
- package/dist/tables/index.js.map +1 -0
- package/dist/tables/list-query-config.d.ts +6 -0
- package/dist/tables/list-query-config.d.ts.map +1 -0
- package/dist/tables/list-query-config.js +86 -0
- package/dist/tables/list-query-config.js.map +1 -0
- package/dist/theme/index.d.ts +44 -0
- package/dist/theme/index.d.ts.map +1 -0
- package/dist/theme/index.js +2 -0
- package/dist/theme/index.js.map +1 -0
- package/package.json +62 -0
|
@@ -0,0 +1,143 @@
|
|
|
1
|
+
import { escapeHtml } from '@nestjs-dash/support';
|
|
2
|
+
class ChartWidgetBuilder {
|
|
3
|
+
kind;
|
|
4
|
+
slot = 'main';
|
|
5
|
+
categoryKeyValue = 'category';
|
|
6
|
+
seriesValue = [];
|
|
7
|
+
dataInput = [];
|
|
8
|
+
titleValue;
|
|
9
|
+
descriptionValue;
|
|
10
|
+
heightValue = 240;
|
|
11
|
+
legendValue;
|
|
12
|
+
emptyLabelValue;
|
|
13
|
+
accessPredicate;
|
|
14
|
+
constructor(kind) {
|
|
15
|
+
this.kind = kind;
|
|
16
|
+
}
|
|
17
|
+
side() {
|
|
18
|
+
this.slot = 'side';
|
|
19
|
+
return this;
|
|
20
|
+
}
|
|
21
|
+
title(value) {
|
|
22
|
+
this.titleValue = value;
|
|
23
|
+
return this;
|
|
24
|
+
}
|
|
25
|
+
description(value) {
|
|
26
|
+
this.descriptionValue = value;
|
|
27
|
+
return this;
|
|
28
|
+
}
|
|
29
|
+
height(value) {
|
|
30
|
+
this.heightValue = value;
|
|
31
|
+
return this;
|
|
32
|
+
}
|
|
33
|
+
legend(value = true) {
|
|
34
|
+
this.legendValue = value;
|
|
35
|
+
return this;
|
|
36
|
+
}
|
|
37
|
+
emptyLabel(value) {
|
|
38
|
+
this.emptyLabelValue = value;
|
|
39
|
+
return this;
|
|
40
|
+
}
|
|
41
|
+
category(key) {
|
|
42
|
+
this.categoryKeyValue = key;
|
|
43
|
+
return this;
|
|
44
|
+
}
|
|
45
|
+
series(series) {
|
|
46
|
+
this.seriesValue = series;
|
|
47
|
+
return this;
|
|
48
|
+
}
|
|
49
|
+
data(input) {
|
|
50
|
+
this.dataInput = input;
|
|
51
|
+
return this;
|
|
52
|
+
}
|
|
53
|
+
visibleWhen(predicate) {
|
|
54
|
+
this.accessPredicate = predicate;
|
|
55
|
+
return this;
|
|
56
|
+
}
|
|
57
|
+
async canAccess(ctx) {
|
|
58
|
+
return this.accessPredicate ? await this.accessPredicate(ctx) : true;
|
|
59
|
+
}
|
|
60
|
+
async chart(ctx) {
|
|
61
|
+
const data = typeof this.dataInput === 'function' ? await this.dataInput(ctx) : this.dataInput;
|
|
62
|
+
return {
|
|
63
|
+
kind: this.kind,
|
|
64
|
+
data,
|
|
65
|
+
categoryKey: this.categoryKeyValue,
|
|
66
|
+
series: this.seriesValue,
|
|
67
|
+
title: this.titleValue,
|
|
68
|
+
description: this.descriptionValue,
|
|
69
|
+
height: this.heightValue,
|
|
70
|
+
legend: this.legendValue,
|
|
71
|
+
emptyLabel: this.emptyLabelValue,
|
|
72
|
+
};
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
export class BarChart extends ChartWidgetBuilder {
|
|
76
|
+
constructor() {
|
|
77
|
+
super('bar');
|
|
78
|
+
}
|
|
79
|
+
static make() {
|
|
80
|
+
return new BarChart();
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
export class LineChart extends ChartWidgetBuilder {
|
|
84
|
+
constructor() {
|
|
85
|
+
super('line');
|
|
86
|
+
}
|
|
87
|
+
static make() {
|
|
88
|
+
return new LineChart();
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
export class PieChart extends ChartWidgetBuilder {
|
|
92
|
+
constructor() {
|
|
93
|
+
super('pie');
|
|
94
|
+
}
|
|
95
|
+
static make() {
|
|
96
|
+
return new PieChart();
|
|
97
|
+
}
|
|
98
|
+
}
|
|
99
|
+
export class StatCard {
|
|
100
|
+
labelValue;
|
|
101
|
+
slot = 'main';
|
|
102
|
+
valueInput = '';
|
|
103
|
+
trendInput;
|
|
104
|
+
accessPredicate;
|
|
105
|
+
constructor(labelValue) {
|
|
106
|
+
this.labelValue = labelValue;
|
|
107
|
+
}
|
|
108
|
+
static make(label) {
|
|
109
|
+
return new StatCard(label);
|
|
110
|
+
}
|
|
111
|
+
value(input) {
|
|
112
|
+
this.valueInput = input;
|
|
113
|
+
return this;
|
|
114
|
+
}
|
|
115
|
+
trend(input) {
|
|
116
|
+
this.trendInput = input;
|
|
117
|
+
return this;
|
|
118
|
+
}
|
|
119
|
+
side() {
|
|
120
|
+
this.slot = 'side';
|
|
121
|
+
return this;
|
|
122
|
+
}
|
|
123
|
+
visibleWhen(predicate) {
|
|
124
|
+
this.accessPredicate = predicate;
|
|
125
|
+
return this;
|
|
126
|
+
}
|
|
127
|
+
async canAccess(ctx) {
|
|
128
|
+
return this.accessPredicate ? await this.accessPredicate(ctx) : true;
|
|
129
|
+
}
|
|
130
|
+
async render(ctx) {
|
|
131
|
+
const value = typeof this.valueInput === 'function' ? await this.valueInput(ctx) : this.valueInput;
|
|
132
|
+
const trend = typeof this.trendInput === 'function' ? await this.trendInput(ctx) : this.trendInput;
|
|
133
|
+
const trendHtml = trend
|
|
134
|
+
? `<span style="color:${trend.direction === 'up' ? 'var(--chart-2)' : 'var(--destructive)'};font-size:0.85rem;">${trend.direction === 'up' ? '▲' : '▼'} ${escapeHtml(trend.label)}</span>`
|
|
135
|
+
: '';
|
|
136
|
+
return `<div style="border:1px solid var(--border);border-radius:0.5rem;padding:1rem;">
|
|
137
|
+
<div style="font-size:0.8rem;color:var(--muted-foreground);margin-bottom:0.35rem;">${escapeHtml(this.labelValue)}</div>
|
|
138
|
+
<div style="font-size:1.75rem;font-weight:600;">${escapeHtml(String(value))}</div>
|
|
139
|
+
${trendHtml}
|
|
140
|
+
</div>`;
|
|
141
|
+
}
|
|
142
|
+
}
|
|
143
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/charts/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,146 @@
|
|
|
1
|
+
import type { ZodType } from 'zod';
|
|
2
|
+
import { ComponentBuilder } from '../schemas/index.js';
|
|
3
|
+
export type SelectOption = {
|
|
4
|
+
label: string;
|
|
5
|
+
value: string | number | boolean;
|
|
6
|
+
};
|
|
7
|
+
declare abstract class FieldBuilder extends ComponentBuilder {
|
|
8
|
+
constructor(name: string);
|
|
9
|
+
label(value: string): this;
|
|
10
|
+
required(value?: boolean): this;
|
|
11
|
+
disabled(value?: boolean): this;
|
|
12
|
+
helperText(value: string): this;
|
|
13
|
+
defaultValue(value: string | number | boolean | null): this;
|
|
14
|
+
icon(name: string, position?: 'start' | 'end'): this;
|
|
15
|
+
prefix(value: string): this;
|
|
16
|
+
suffix(value: string): this;
|
|
17
|
+
rule(schema: ZodType): this;
|
|
18
|
+
toSchema(): {
|
|
19
|
+
kind: import("@nestjs-dash/support").ComponentKind;
|
|
20
|
+
props: import("@nestjs-dash/support").JsonObject;
|
|
21
|
+
children?: import("@nestjs-dash/support").SchemaNode[];
|
|
22
|
+
name: string;
|
|
23
|
+
};
|
|
24
|
+
}
|
|
25
|
+
export declare class TextInput extends FieldBuilder {
|
|
26
|
+
readonly kind: 'text-input';
|
|
27
|
+
static make(name: string): TextInput;
|
|
28
|
+
email(): this;
|
|
29
|
+
password(): this;
|
|
30
|
+
placeholder(value: string): this;
|
|
31
|
+
}
|
|
32
|
+
export declare class Textarea extends FieldBuilder {
|
|
33
|
+
readonly kind: 'textarea';
|
|
34
|
+
static make(name: string): Textarea;
|
|
35
|
+
rows(value: number): this;
|
|
36
|
+
json(property?: string): this;
|
|
37
|
+
}
|
|
38
|
+
export interface RelationshipSelectConfig {
|
|
39
|
+
resource: string;
|
|
40
|
+
titleAttribute: string;
|
|
41
|
+
searchBy?: string[];
|
|
42
|
+
preload?: boolean;
|
|
43
|
+
}
|
|
44
|
+
export declare class Select extends FieldBuilder {
|
|
45
|
+
readonly kind: 'select';
|
|
46
|
+
static make(name: string): Select;
|
|
47
|
+
options(options: SelectOption[] | Record<string, string | number>): this;
|
|
48
|
+
relationship(config: RelationshipSelectConfig): this;
|
|
49
|
+
multiple(value?: boolean): this;
|
|
50
|
+
}
|
|
51
|
+
export declare class Checkbox extends FieldBuilder {
|
|
52
|
+
readonly kind: 'checkbox';
|
|
53
|
+
static make(name: string): Checkbox;
|
|
54
|
+
}
|
|
55
|
+
export declare class Toggle extends FieldBuilder {
|
|
56
|
+
readonly kind: 'toggle';
|
|
57
|
+
static make(name: string): Toggle;
|
|
58
|
+
}
|
|
59
|
+
export declare class Radio extends FieldBuilder {
|
|
60
|
+
readonly kind: 'radio';
|
|
61
|
+
static make(name: string): Radio;
|
|
62
|
+
options(options: SelectOption[] | Record<string, string | number>): this;
|
|
63
|
+
}
|
|
64
|
+
export declare class DatePicker extends FieldBuilder {
|
|
65
|
+
readonly kind: 'date-picker';
|
|
66
|
+
static make(name: string): DatePicker;
|
|
67
|
+
minDate(value: string): this;
|
|
68
|
+
maxDate(value: string): this;
|
|
69
|
+
}
|
|
70
|
+
export declare class DateTimePicker extends FieldBuilder {
|
|
71
|
+
readonly kind: 'date-time-picker';
|
|
72
|
+
static make(name: string): DateTimePicker;
|
|
73
|
+
minDate(value: string): this;
|
|
74
|
+
maxDate(value: string): this;
|
|
75
|
+
}
|
|
76
|
+
export declare class ColorPicker extends FieldBuilder {
|
|
77
|
+
readonly kind: 'color-picker';
|
|
78
|
+
static make(name: string): ColorPicker;
|
|
79
|
+
}
|
|
80
|
+
export declare class CodeEditor extends FieldBuilder {
|
|
81
|
+
readonly kind: 'code-editor';
|
|
82
|
+
static make(name: string): CodeEditor;
|
|
83
|
+
language(value: string): this;
|
|
84
|
+
rows(value: number): this;
|
|
85
|
+
}
|
|
86
|
+
export declare class TagsInput extends FieldBuilder {
|
|
87
|
+
readonly kind: 'tags-input';
|
|
88
|
+
static make(name: string): TagsInput;
|
|
89
|
+
placeholder(value: string): this;
|
|
90
|
+
maxTags(value: number): this;
|
|
91
|
+
}
|
|
92
|
+
export declare class RichEditor extends FieldBuilder {
|
|
93
|
+
readonly kind: 'rich-editor';
|
|
94
|
+
static make(name: string): RichEditor;
|
|
95
|
+
rows(value: number): this;
|
|
96
|
+
}
|
|
97
|
+
export type RichBoxTheme = 'snow' | 'bubble';
|
|
98
|
+
export type RichBoxToolbarItem = string | Record<string, unknown>;
|
|
99
|
+
export type RichBoxToolbarConfig = RichBoxToolbarItem[][] | false;
|
|
100
|
+
export declare class RichBox extends FieldBuilder {
|
|
101
|
+
readonly kind: 'rich-box';
|
|
102
|
+
static make(name: string): RichBox;
|
|
103
|
+
json(property?: string): this;
|
|
104
|
+
theme(value: RichBoxTheme): this;
|
|
105
|
+
height(value: number | string): this;
|
|
106
|
+
placeholder(value: string): this;
|
|
107
|
+
toolbar(config: RichBoxToolbarConfig): this;
|
|
108
|
+
formats(list: string[]): this;
|
|
109
|
+
readOnly(value?: boolean): this;
|
|
110
|
+
modules(config: Record<string, unknown>): this;
|
|
111
|
+
}
|
|
112
|
+
export type UploadVisibility = 'public' | 'private';
|
|
113
|
+
declare abstract class UploadFieldBuilder extends FieldBuilder {
|
|
114
|
+
disk(name: string): this;
|
|
115
|
+
directory(path: string): this;
|
|
116
|
+
visibility(value: UploadVisibility): this;
|
|
117
|
+
multiple(value?: boolean): this;
|
|
118
|
+
maxFiles(value: number): this;
|
|
119
|
+
acceptedFileTypes(types: string[]): this;
|
|
120
|
+
maxSize(kilobytes: number): this;
|
|
121
|
+
}
|
|
122
|
+
export type ImageShape = 'circle' | 'square';
|
|
123
|
+
export type ImageVisibility = UploadVisibility;
|
|
124
|
+
export declare class ImageUpload extends UploadFieldBuilder {
|
|
125
|
+
readonly kind: 'image-upload';
|
|
126
|
+
static make(name: string): ImageUpload;
|
|
127
|
+
collection(name: string): this;
|
|
128
|
+
shape(value: ImageShape): this;
|
|
129
|
+
croppable(value?: boolean): this;
|
|
130
|
+
aspectRatio(value: number): this;
|
|
131
|
+
}
|
|
132
|
+
export declare class FileUpload extends UploadFieldBuilder {
|
|
133
|
+
readonly kind: 'file-upload';
|
|
134
|
+
static make(name: string): FileUpload;
|
|
135
|
+
}
|
|
136
|
+
export declare class Repeater extends FieldBuilder {
|
|
137
|
+
readonly kind: 'repeater';
|
|
138
|
+
static make(name: string): Repeater;
|
|
139
|
+
schema(fields: Array<TextInput | Textarea | Select | Checkbox | Toggle>): this;
|
|
140
|
+
minItems(value: number): this;
|
|
141
|
+
maxItems(value: number): this;
|
|
142
|
+
addActionLabel(value: string): this;
|
|
143
|
+
}
|
|
144
|
+
export { validateFormPayload } from './validation.js';
|
|
145
|
+
export { collectJsonArrayFields, collectJsonTextareaFields, parseJsonArrayFields, parseJsonTextareaFields, stringifyJsonTextareaFields, } from './json-fields.js';
|
|
146
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/forms/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,291 @@
|
|
|
1
|
+
import { ComponentBuilder } from '../schemas/index.js';
|
|
2
|
+
import { registerFieldValidation } from './validation.js';
|
|
3
|
+
class FieldBuilder extends ComponentBuilder {
|
|
4
|
+
constructor(name) {
|
|
5
|
+
super();
|
|
6
|
+
this.setProp('name', name);
|
|
7
|
+
}
|
|
8
|
+
label(value) {
|
|
9
|
+
return this.setProp('label', value);
|
|
10
|
+
}
|
|
11
|
+
required(value = true) {
|
|
12
|
+
return this.setProp('required', value);
|
|
13
|
+
}
|
|
14
|
+
disabled(value = true) {
|
|
15
|
+
return this.setProp('disabled', value);
|
|
16
|
+
}
|
|
17
|
+
helperText(value) {
|
|
18
|
+
return this.setProp('helperText', value);
|
|
19
|
+
}
|
|
20
|
+
defaultValue(value) {
|
|
21
|
+
return this.setProp('defaultValue', value);
|
|
22
|
+
}
|
|
23
|
+
icon(name, position = 'start') {
|
|
24
|
+
return this.setProp('icon', name).setProp('iconPosition', position);
|
|
25
|
+
}
|
|
26
|
+
prefix(value) {
|
|
27
|
+
return this.setProp('prefix', value);
|
|
28
|
+
}
|
|
29
|
+
suffix(value) {
|
|
30
|
+
return this.setProp('suffix', value);
|
|
31
|
+
}
|
|
32
|
+
rule(schema) {
|
|
33
|
+
return this.setProp('validationKey', registerFieldValidation(schema));
|
|
34
|
+
}
|
|
35
|
+
toSchema() {
|
|
36
|
+
const schema = super.toSchema();
|
|
37
|
+
return { ...schema, name: String(this.props.name) };
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
export class TextInput extends FieldBuilder {
|
|
41
|
+
kind = 'text-input';
|
|
42
|
+
static make(name) {
|
|
43
|
+
return new TextInput(name);
|
|
44
|
+
}
|
|
45
|
+
email() {
|
|
46
|
+
return this.setProp('type', 'email');
|
|
47
|
+
}
|
|
48
|
+
password() {
|
|
49
|
+
return this.setProp('type', 'password');
|
|
50
|
+
}
|
|
51
|
+
placeholder(value) {
|
|
52
|
+
return this.setProp('placeholder', value);
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
export class Textarea extends FieldBuilder {
|
|
56
|
+
kind = 'textarea';
|
|
57
|
+
static make(name) {
|
|
58
|
+
return new Textarea(name);
|
|
59
|
+
}
|
|
60
|
+
rows(value) {
|
|
61
|
+
return this.setProp('rows', value);
|
|
62
|
+
}
|
|
63
|
+
json(property) {
|
|
64
|
+
this.setProp('json', true);
|
|
65
|
+
if (property != null)
|
|
66
|
+
this.setProp('jsonProperty', property);
|
|
67
|
+
return this;
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
export class Select extends FieldBuilder {
|
|
71
|
+
kind = 'select';
|
|
72
|
+
static make(name) {
|
|
73
|
+
return new Select(name);
|
|
74
|
+
}
|
|
75
|
+
options(options) {
|
|
76
|
+
if (Array.isArray(options)) {
|
|
77
|
+
return this.setProp('options', options);
|
|
78
|
+
}
|
|
79
|
+
return this.setProp('options', Object.entries(options).map(([value, label]) => ({
|
|
80
|
+
label: String(label),
|
|
81
|
+
value,
|
|
82
|
+
})));
|
|
83
|
+
}
|
|
84
|
+
relationship(config) {
|
|
85
|
+
return this.setProp('relationship', {
|
|
86
|
+
resource: config.resource,
|
|
87
|
+
titleAttribute: config.titleAttribute,
|
|
88
|
+
searchBy: config.searchBy ?? [config.titleAttribute],
|
|
89
|
+
preload: config.preload !== false,
|
|
90
|
+
});
|
|
91
|
+
}
|
|
92
|
+
multiple(value = true) {
|
|
93
|
+
return this.setProp('multiple', value);
|
|
94
|
+
}
|
|
95
|
+
}
|
|
96
|
+
export class Checkbox extends FieldBuilder {
|
|
97
|
+
kind = 'checkbox';
|
|
98
|
+
static make(name) {
|
|
99
|
+
return new Checkbox(name);
|
|
100
|
+
}
|
|
101
|
+
}
|
|
102
|
+
export class Toggle extends FieldBuilder {
|
|
103
|
+
kind = 'toggle';
|
|
104
|
+
static make(name) {
|
|
105
|
+
return new Toggle(name);
|
|
106
|
+
}
|
|
107
|
+
}
|
|
108
|
+
export class Radio extends FieldBuilder {
|
|
109
|
+
kind = 'radio';
|
|
110
|
+
static make(name) {
|
|
111
|
+
return new Radio(name);
|
|
112
|
+
}
|
|
113
|
+
options(options) {
|
|
114
|
+
if (Array.isArray(options)) {
|
|
115
|
+
return this.setProp('options', options);
|
|
116
|
+
}
|
|
117
|
+
return this.setProp('options', Object.entries(options).map(([value, label]) => ({
|
|
118
|
+
label: String(label),
|
|
119
|
+
value,
|
|
120
|
+
})));
|
|
121
|
+
}
|
|
122
|
+
}
|
|
123
|
+
export class DatePicker extends FieldBuilder {
|
|
124
|
+
kind = 'date-picker';
|
|
125
|
+
static make(name) {
|
|
126
|
+
return new DatePicker(name);
|
|
127
|
+
}
|
|
128
|
+
minDate(value) {
|
|
129
|
+
return this.setProp('minDate', value);
|
|
130
|
+
}
|
|
131
|
+
maxDate(value) {
|
|
132
|
+
return this.setProp('maxDate', value);
|
|
133
|
+
}
|
|
134
|
+
}
|
|
135
|
+
export class DateTimePicker extends FieldBuilder {
|
|
136
|
+
kind = 'date-time-picker';
|
|
137
|
+
static make(name) {
|
|
138
|
+
return new DateTimePicker(name);
|
|
139
|
+
}
|
|
140
|
+
minDate(value) {
|
|
141
|
+
return this.setProp('minDate', value);
|
|
142
|
+
}
|
|
143
|
+
maxDate(value) {
|
|
144
|
+
return this.setProp('maxDate', value);
|
|
145
|
+
}
|
|
146
|
+
}
|
|
147
|
+
export class ColorPicker extends FieldBuilder {
|
|
148
|
+
kind = 'color-picker';
|
|
149
|
+
static make(name) {
|
|
150
|
+
return new ColorPicker(name);
|
|
151
|
+
}
|
|
152
|
+
}
|
|
153
|
+
export class CodeEditor extends FieldBuilder {
|
|
154
|
+
kind = 'code-editor';
|
|
155
|
+
static make(name) {
|
|
156
|
+
return new CodeEditor(name);
|
|
157
|
+
}
|
|
158
|
+
language(value) {
|
|
159
|
+
return this.setProp('language', value);
|
|
160
|
+
}
|
|
161
|
+
rows(value) {
|
|
162
|
+
return this.setProp('rows', value);
|
|
163
|
+
}
|
|
164
|
+
}
|
|
165
|
+
export class TagsInput extends FieldBuilder {
|
|
166
|
+
kind = 'tags-input';
|
|
167
|
+
static make(name) {
|
|
168
|
+
return new TagsInput(name);
|
|
169
|
+
}
|
|
170
|
+
placeholder(value) {
|
|
171
|
+
return this.setProp('placeholder', value);
|
|
172
|
+
}
|
|
173
|
+
maxTags(value) {
|
|
174
|
+
return this.setProp('maxTags', value);
|
|
175
|
+
}
|
|
176
|
+
}
|
|
177
|
+
export class RichEditor extends FieldBuilder {
|
|
178
|
+
kind = 'rich-editor';
|
|
179
|
+
static make(name) {
|
|
180
|
+
return new RichEditor(name);
|
|
181
|
+
}
|
|
182
|
+
rows(value) {
|
|
183
|
+
return this.setProp('rows', value);
|
|
184
|
+
}
|
|
185
|
+
}
|
|
186
|
+
export class RichBox extends FieldBuilder {
|
|
187
|
+
kind = 'rich-box';
|
|
188
|
+
static make(name) {
|
|
189
|
+
const dot = name.indexOf('.');
|
|
190
|
+
const instance = new RichBox(dot === -1 ? name : name.slice(0, dot));
|
|
191
|
+
if (dot !== -1)
|
|
192
|
+
instance.json(name.slice(dot + 1));
|
|
193
|
+
return instance;
|
|
194
|
+
}
|
|
195
|
+
json(property) {
|
|
196
|
+
this.setProp('json', true);
|
|
197
|
+
if (property != null)
|
|
198
|
+
this.setProp('jsonProperty', property);
|
|
199
|
+
return this;
|
|
200
|
+
}
|
|
201
|
+
theme(value) {
|
|
202
|
+
return this.setProp('theme', value);
|
|
203
|
+
}
|
|
204
|
+
height(value) {
|
|
205
|
+
return this.setProp('height', typeof value === 'number' ? `${value}px` : value);
|
|
206
|
+
}
|
|
207
|
+
placeholder(value) {
|
|
208
|
+
return this.setProp('placeholder', value);
|
|
209
|
+
}
|
|
210
|
+
toolbar(config) {
|
|
211
|
+
return this.setProp('toolbar', config);
|
|
212
|
+
}
|
|
213
|
+
formats(list) {
|
|
214
|
+
return this.setProp('formats', list);
|
|
215
|
+
}
|
|
216
|
+
readOnly(value = true) {
|
|
217
|
+
return this.setProp('readOnly', value);
|
|
218
|
+
}
|
|
219
|
+
modules(config) {
|
|
220
|
+
return this.setProp('modules', config);
|
|
221
|
+
}
|
|
222
|
+
}
|
|
223
|
+
class UploadFieldBuilder extends FieldBuilder {
|
|
224
|
+
disk(name) {
|
|
225
|
+
return this.setProp('disk', name);
|
|
226
|
+
}
|
|
227
|
+
directory(path) {
|
|
228
|
+
return this.setProp('directory', path);
|
|
229
|
+
}
|
|
230
|
+
visibility(value) {
|
|
231
|
+
return this.setProp('visibility', value);
|
|
232
|
+
}
|
|
233
|
+
multiple(value = true) {
|
|
234
|
+
return this.setProp('multiple', value);
|
|
235
|
+
}
|
|
236
|
+
maxFiles(value) {
|
|
237
|
+
return this.setProp('maxFiles', value);
|
|
238
|
+
}
|
|
239
|
+
acceptedFileTypes(types) {
|
|
240
|
+
return this.setProp('acceptedFileTypes', types);
|
|
241
|
+
}
|
|
242
|
+
maxSize(kilobytes) {
|
|
243
|
+
return this.setProp('maxSize', kilobytes);
|
|
244
|
+
}
|
|
245
|
+
}
|
|
246
|
+
export class ImageUpload extends UploadFieldBuilder {
|
|
247
|
+
kind = 'image-upload';
|
|
248
|
+
static make(name) {
|
|
249
|
+
return new ImageUpload(name);
|
|
250
|
+
}
|
|
251
|
+
collection(name) {
|
|
252
|
+
return this.setProp('collection', name);
|
|
253
|
+
}
|
|
254
|
+
shape(value) {
|
|
255
|
+
return this.setProp('shape', value);
|
|
256
|
+
}
|
|
257
|
+
croppable(value = true) {
|
|
258
|
+
return this.setProp('croppable', value);
|
|
259
|
+
}
|
|
260
|
+
aspectRatio(value) {
|
|
261
|
+
return this.setProp('aspectRatio', value);
|
|
262
|
+
}
|
|
263
|
+
}
|
|
264
|
+
export class FileUpload extends UploadFieldBuilder {
|
|
265
|
+
kind = 'file-upload';
|
|
266
|
+
static make(name) {
|
|
267
|
+
return new FileUpload(name);
|
|
268
|
+
}
|
|
269
|
+
}
|
|
270
|
+
export class Repeater extends FieldBuilder {
|
|
271
|
+
kind = 'repeater';
|
|
272
|
+
static make(name) {
|
|
273
|
+
return new Repeater(name);
|
|
274
|
+
}
|
|
275
|
+
schema(fields) {
|
|
276
|
+
this.children = fields.map((field) => field.toSchema());
|
|
277
|
+
return this;
|
|
278
|
+
}
|
|
279
|
+
minItems(value) {
|
|
280
|
+
return this.setProp('minItems', value);
|
|
281
|
+
}
|
|
282
|
+
maxItems(value) {
|
|
283
|
+
return this.setProp('maxItems', value);
|
|
284
|
+
}
|
|
285
|
+
addActionLabel(value) {
|
|
286
|
+
return this.setProp('addActionLabel', value);
|
|
287
|
+
}
|
|
288
|
+
}
|
|
289
|
+
export { validateFormPayload } from './validation.js';
|
|
290
|
+
export { collectJsonArrayFields, collectJsonTextareaFields, parseJsonArrayFields, parseJsonTextareaFields, stringifyJsonTextareaFields, } from './json-fields.js';
|
|
291
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/forms/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { type SchemaNode } from '@nestjs-dash/support';
|
|
2
|
+
export declare function collectJsonArrayFields(node: SchemaNode | undefined | null): SchemaNode[];
|
|
3
|
+
export declare function parseJsonArrayFields(body: Record<string, unknown>, form: SchemaNode | undefined | null): Record<string, unknown>;
|
|
4
|
+
export declare function collectJsonTextareaFields(node: SchemaNode | undefined | null): SchemaNode[];
|
|
5
|
+
export declare function parseJsonTextareaFields(body: Record<string, unknown>, form: SchemaNode | undefined | null, existingRecord?: Record<string, unknown> | null): Record<string, unknown>;
|
|
6
|
+
export declare function stringifyJsonTextareaFields(values: Record<string, unknown>, form: SchemaNode | undefined | null): Record<string, unknown>;
|
|
7
|
+
//# sourceMappingURL=json-fields.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"json-fields.d.ts","sourceRoot":"","sources":["../../src/forms/json-fields.ts"],"names":[],"mappings":"AAAA,OAAO,EAAwB,KAAK,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAK7E,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,UAAU,GAAG,SAAS,GAAG,IAAI,GAAG,UAAU,EAAE,CAUxF;AAkBD,wBAAgB,oBAAoB,CAClC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC7B,IAAI,EAAE,UAAU,GAAG,SAAS,GAAG,IAAI,GAClC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAWzB;AAKD,wBAAgB,yBAAyB,CAAC,IAAI,EAAE,UAAU,GAAG,SAAS,GAAG,IAAI,GAAG,UAAU,EAAE,CAU3F;AA8BD,wBAAgB,uBAAuB,CACrC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC7B,IAAI,EAAE,UAAU,GAAG,SAAS,GAAG,IAAI,EACnC,cAAc,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,GAC9C,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CA6BzB;AAYD,wBAAgB,2BAA2B,CACzC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC/B,IAAI,EAAE,UAAU,GAAG,SAAS,GAAG,IAAI,GAClC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAqBzB"}
|