@prismatic-io/spectral 7.9.0 → 7.10.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { Inputs } from ".";
|
|
2
2
|
import { ConditionalExpression } from "./conditional-logic";
|
|
3
|
-
import { InputFieldCollection, InputCleanFunction, Connection } from "./Inputs";
|
|
3
|
+
import { InputFieldCollection, InputCleanFunction, Connection, KeyValuePair } from "./Inputs";
|
|
4
4
|
/**
|
|
5
5
|
* Collection of input parameters.
|
|
6
6
|
* Inputs can be static values, references to config variables, or
|
|
@@ -10,16 +10,3 @@ export declare type ActionInputParameters<TInputs extends Inputs> = {
|
|
|
10
10
|
[Property in keyof TInputs]: TInputs[Property]["clean"] extends InputCleanFunction<any> ? ReturnType<TInputs[Property]["clean"]> : TInputs[Property]["type"] extends "connection" ? ExtractValue<Connection, TInputs[Property]["collection"]> : TInputs[Property]["type"] extends "conditional" ? ExtractValue<ConditionalExpression, TInputs[Property]["collection"]> : ExtractValue<TInputs[Property]["default"], TInputs[Property]["collection"]>;
|
|
11
11
|
};
|
|
12
12
|
export declare type ExtractValue<TType, TCollection extends InputFieldCollection | undefined> = TCollection extends "keyvaluelist" ? KeyValuePair<TType>[] : TCollection extends "valuelist" ? TType[] : TType;
|
|
13
|
-
/**
|
|
14
|
-
* KeyValuePair input parameter type.
|
|
15
|
-
* This allows users to input multiple keys / values as an input.
|
|
16
|
-
* To see an example of how this can be used, see the `tagging` input
|
|
17
|
-
* of the `putObject` action of the AWS S3 component:
|
|
18
|
-
* https://github.com/prismatic-io/examples/blob/main/components/aws-s3/src/actions.ts
|
|
19
|
-
*/
|
|
20
|
-
export interface KeyValuePair<V = unknown> {
|
|
21
|
-
/** Key of the KeyValuePair */
|
|
22
|
-
key: string;
|
|
23
|
-
/** Value of the KeyValuePair */
|
|
24
|
-
value: V;
|
|
25
|
-
}
|
package/dist/types/Inputs.d.ts
CHANGED
|
@@ -1,5 +1,18 @@
|
|
|
1
1
|
import { ConditionalExpression } from "./conditional-logic";
|
|
2
2
|
import { JsonSchema, UISchemaElement } from "@jsonforms/core";
|
|
3
|
+
/**
|
|
4
|
+
* KeyValuePair input parameter type.
|
|
5
|
+
* This allows users to input multiple keys / values as an input.
|
|
6
|
+
* To see an example of how this can be used, see the `tagging` input
|
|
7
|
+
* of the `putObject` action of the AWS S3 component:
|
|
8
|
+
* https://github.com/prismatic-io/examples/blob/main/components/aws-s3/src/actions.ts
|
|
9
|
+
*/
|
|
10
|
+
export interface KeyValuePair<V = unknown> {
|
|
11
|
+
/** Key of the KeyValuePair */
|
|
12
|
+
key: string;
|
|
13
|
+
/** Value of the KeyValuePair */
|
|
14
|
+
value: V;
|
|
15
|
+
}
|
|
3
16
|
export declare type Element = {
|
|
4
17
|
key: string;
|
|
5
18
|
label?: string;
|
|
@@ -66,81 +79,76 @@ interface BaseInputField {
|
|
|
66
79
|
/** Indicate if this InputField is required. */
|
|
67
80
|
required?: boolean;
|
|
68
81
|
}
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
type: "string";
|
|
82
|
+
declare type CollectionOptions<T> = SingleValue<T> | ValueListCollection<T> | KeyValueListCollection<T>;
|
|
83
|
+
interface SingleValue<T> {
|
|
72
84
|
/** Collection type of the InputField */
|
|
73
|
-
collection?:
|
|
85
|
+
collection?: undefined;
|
|
74
86
|
/** Default value for this field. */
|
|
75
|
-
default?:
|
|
87
|
+
default?: T;
|
|
88
|
+
}
|
|
89
|
+
interface ValueListCollection<T> {
|
|
90
|
+
/** Collection type of the InputField */
|
|
91
|
+
collection: "valuelist";
|
|
92
|
+
/** Default value for this field. */
|
|
93
|
+
default?: T[];
|
|
94
|
+
}
|
|
95
|
+
interface KeyValueListCollection<T> {
|
|
96
|
+
/** Collection type of the InputField */
|
|
97
|
+
collection: "keyvaluelist";
|
|
98
|
+
/** Default value for this field. */
|
|
99
|
+
default?: KeyValuePair<T>[];
|
|
100
|
+
}
|
|
101
|
+
export declare type StringInputField = BaseInputField & CollectionOptions<string> & {
|
|
102
|
+
/** Data type the InputField will collect. */
|
|
103
|
+
type: "string";
|
|
76
104
|
/** Dictates possible choices for the input. */
|
|
77
105
|
model?: InputFieldChoice[];
|
|
78
106
|
/** Clean function */
|
|
79
|
-
clean?: InputCleanFunction<
|
|
80
|
-
}
|
|
81
|
-
export
|
|
107
|
+
clean?: InputCleanFunction<unknown>;
|
|
108
|
+
};
|
|
109
|
+
export declare type DataInputField = BaseInputField & CollectionOptions<string> & {
|
|
82
110
|
/** Data type the InputField will collect. */
|
|
83
111
|
type: "data";
|
|
84
|
-
/** Collection type of the InputField */
|
|
85
|
-
collection?: InputFieldCollection;
|
|
86
|
-
/** Default value for this field. */
|
|
87
|
-
default?: unknown;
|
|
88
112
|
/** Dictates possible choices for the input. */
|
|
89
113
|
model?: InputFieldChoice[];
|
|
90
114
|
/** Clean function */
|
|
91
|
-
clean?: InputCleanFunction<
|
|
92
|
-
}
|
|
93
|
-
export
|
|
115
|
+
clean?: InputCleanFunction<unknown>;
|
|
116
|
+
};
|
|
117
|
+
export declare type TextInputField = BaseInputField & CollectionOptions<string> & {
|
|
94
118
|
/** Data type the InputField will collect. */
|
|
95
119
|
type: "text";
|
|
96
|
-
/** Collection type of the InputField */
|
|
97
|
-
collection?: InputFieldCollection;
|
|
98
|
-
/** Default value for this field. */
|
|
99
|
-
default?: unknown;
|
|
100
120
|
/** Dictates possible choices for the input. */
|
|
101
121
|
model?: InputFieldChoice[];
|
|
102
122
|
/** Clean function */
|
|
103
|
-
clean?: InputCleanFunction<
|
|
104
|
-
}
|
|
105
|
-
export
|
|
123
|
+
clean?: InputCleanFunction<unknown>;
|
|
124
|
+
};
|
|
125
|
+
export declare type PasswordInputField = BaseInputField & CollectionOptions<string> & {
|
|
106
126
|
/** Data type the InputField will collect. */
|
|
107
127
|
type: "password";
|
|
108
|
-
/** Collection type of the InputField */
|
|
109
|
-
collection?: InputFieldCollection;
|
|
110
|
-
/** Default value for this field. */
|
|
111
|
-
default?: unknown;
|
|
112
128
|
/** Dictates possible choices for the input. */
|
|
113
129
|
model?: InputFieldChoice[];
|
|
114
130
|
/** Clean function */
|
|
115
|
-
clean?: InputCleanFunction<
|
|
116
|
-
}
|
|
117
|
-
export
|
|
131
|
+
clean?: InputCleanFunction<unknown>;
|
|
132
|
+
};
|
|
133
|
+
export declare type BooleanInputField = BaseInputField & CollectionOptions<string> & {
|
|
118
134
|
/** Data type the InputField will collect. */
|
|
119
135
|
type: "boolean";
|
|
120
|
-
/** Collection type of the InputField */
|
|
121
|
-
collection?: InputFieldCollection;
|
|
122
|
-
/** Default value for this field. */
|
|
123
|
-
default?: unknown;
|
|
124
136
|
/** Dictates possible choices for the input. */
|
|
125
137
|
model?: InputFieldChoice[];
|
|
126
138
|
/** Clean function */
|
|
127
|
-
clean?: InputCleanFunction<
|
|
128
|
-
}
|
|
139
|
+
clean?: InputCleanFunction<unknown>;
|
|
140
|
+
};
|
|
129
141
|
/** Defines attributes of a CodeInputField. */
|
|
130
|
-
export
|
|
142
|
+
export declare type CodeInputField = BaseInputField & CollectionOptions<string> & {
|
|
131
143
|
/** Data type the InputField will collect. */
|
|
132
144
|
type: "code";
|
|
133
|
-
/** Collection type of the InputField */
|
|
134
|
-
collection?: InputFieldCollection;
|
|
135
|
-
/** Default value for this field. */
|
|
136
|
-
default?: unknown;
|
|
137
145
|
/** Code language for syntax highlighting. For no syntax highlighting, choose "plaintext" */
|
|
138
146
|
language: "css" | "graphql" | "handlebars" | "hcl" | "html" | "javascript" | "json" | "liquid" | "markdown" | "mysql" | "pgsql" | "plaintext" | "sql" | "typescript" | "xml" | "yaml";
|
|
139
147
|
/** Dictates possible choices for the input. */
|
|
140
148
|
model?: InputFieldChoice[];
|
|
141
149
|
/** Clean function */
|
|
142
|
-
clean?: InputCleanFunction<
|
|
143
|
-
}
|
|
150
|
+
clean?: InputCleanFunction<unknown>;
|
|
151
|
+
};
|
|
144
152
|
/** Defines attributes of a ConditionalInputField. */
|
|
145
153
|
export interface ConditionalInputField extends BaseInputField {
|
|
146
154
|
/** Data type the InputField will collect. */
|