@prismatic-io/spectral 5.1.0 → 5.3.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/dist/clients/soap/types.d.ts +24 -20
- package/dist/clients/soap/types.js +10 -0
- package/dist/clients/soap/utils.d.ts +3 -4
- package/dist/clients/soap/utils.js +54 -28
- package/dist/index.js +23 -1
- package/dist/types/InputFieldType.d.ts +1 -0
- package/dist/types/InputFieldType.js +11 -0
- package/dist/types/Inputs.d.ts +18 -5
- package/dist/types/server-types.d.ts +4 -4
- package/package.json +1 -1
|
@@ -1,32 +1,31 @@
|
|
|
1
1
|
import { Connection } from "../../index";
|
|
2
|
-
import {
|
|
2
|
+
import { IMTOMAttachments } from "soap";
|
|
3
|
+
/**
|
|
4
|
+
* SOAPConnection takes standard connection fields, and adds an optional `wsdlDefinitionUrl` field.
|
|
5
|
+
*/
|
|
3
6
|
export interface SOAPConnection extends Connection {
|
|
4
7
|
fields: {
|
|
5
8
|
[key: string]: unknown;
|
|
6
9
|
wsdlDefinitionUrl?: string;
|
|
7
10
|
};
|
|
8
11
|
}
|
|
12
|
+
/**
|
|
13
|
+
* This function determines if the object presented is a SOAP connection with a `wsdlDefinitionUrl` field.
|
|
14
|
+
* @param connection The connection to test
|
|
15
|
+
* @returns This function returns true if the connection is a SOAPConnection, and false otherwise.
|
|
16
|
+
*/
|
|
9
17
|
export declare const isSOAPConnection: (connection: unknown) => connection is SOAPConnection;
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
18
|
+
/**
|
|
19
|
+
* SOAP requests return a 4-tuple or 5-tuple with the response first, the XML response second, headers third, and the XML request fourth, and optional message attachments fifth.
|
|
20
|
+
*/
|
|
21
|
+
export declare type SOAPResponse = [any, any, any, any, IMTOMAttachments?];
|
|
22
|
+
/**
|
|
23
|
+
* Overload the `soapRequest` function to take a variety of types of arguments.
|
|
24
|
+
*/
|
|
14
25
|
export interface SOAPRequest {
|
|
15
|
-
(params: RequestParams): Promise<
|
|
16
|
-
(params: RequestParams, methodParams: Record<string, unknown>): Promise<
|
|
17
|
-
|
|
18
|
-
any,
|
|
19
|
-
any,
|
|
20
|
-
any,
|
|
21
|
-
IMTOMAttachments?
|
|
22
|
-
]>;
|
|
23
|
-
(params: RequestParams, methodParams: undefined): Promise<[
|
|
24
|
-
any,
|
|
25
|
-
any,
|
|
26
|
-
any,
|
|
27
|
-
any,
|
|
28
|
-
IMTOMAttachments?
|
|
29
|
-
]>;
|
|
26
|
+
(params: RequestParams): Promise<SOAPResponse>;
|
|
27
|
+
(params: RequestParams, methodParams: Record<string, unknown>): Promise<SOAPResponse>;
|
|
28
|
+
(params: RequestParams, methodParams: undefined): Promise<SOAPResponse>;
|
|
30
29
|
}
|
|
31
30
|
export interface RequestParams {
|
|
32
31
|
wsdlParam: SOAPConnection | string;
|
|
@@ -56,6 +55,11 @@ export interface BasicAuthConnection extends Connection {
|
|
|
56
55
|
loginMethod: unknown;
|
|
57
56
|
};
|
|
58
57
|
}
|
|
58
|
+
/**
|
|
59
|
+
* This function determines if the object presented is a Basic Auth connection with `username`, `password`, and `loginMethod` fields.
|
|
60
|
+
* @param connection The connection to test
|
|
61
|
+
* @returns This function returns true if the connection is a SOAPConnection, and false otherwise.
|
|
62
|
+
*/
|
|
59
63
|
export declare const isBasicAuthConnection: (connection: Connection) => connection is BasicAuthConnection;
|
|
60
64
|
export interface SOAPAuth {
|
|
61
65
|
(connection: BasicAuthConnection, wsdlDefinition: string): Promise<any>;
|
|
@@ -1,6 +1,11 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.isBasicAuthConnection = exports.isSOAPConnection = void 0;
|
|
4
|
+
/**
|
|
5
|
+
* This function determines if the object presented is a SOAP connection with a `wsdlDefinitionUrl` field.
|
|
6
|
+
* @param connection The connection to test
|
|
7
|
+
* @returns This function returns true if the connection is a SOAPConnection, and false otherwise.
|
|
8
|
+
*/
|
|
4
9
|
const isSOAPConnection = (connection) => {
|
|
5
10
|
var _a;
|
|
6
11
|
if (typeof connection === "object" && connection !== null)
|
|
@@ -8,6 +13,11 @@ const isSOAPConnection = (connection) => {
|
|
|
8
13
|
return false;
|
|
9
14
|
};
|
|
10
15
|
exports.isSOAPConnection = isSOAPConnection;
|
|
16
|
+
/**
|
|
17
|
+
* This function determines if the object presented is a Basic Auth connection with `username`, `password`, and `loginMethod` fields.
|
|
18
|
+
* @param connection The connection to test
|
|
19
|
+
* @returns This function returns true if the connection is a SOAPConnection, and false otherwise.
|
|
20
|
+
*/
|
|
11
21
|
const isBasicAuthConnection = (connection) => {
|
|
12
22
|
const { fields } = connection;
|
|
13
23
|
return ("username" in fields && "password" in fields && "loginMethod" in fields);
|
|
@@ -1,13 +1,12 @@
|
|
|
1
|
-
import { ClientOverrides, GenerateHeader,
|
|
1
|
+
import { ClientOverrides, GenerateHeader, SOAPAuth, SOAPConnection, SOAPRequest, DescribeWSDL } from "./types";
|
|
2
2
|
import { Client } from "soap";
|
|
3
|
-
export declare const describeWSDL: DescribeWSDL;
|
|
4
3
|
declare const _default: {
|
|
4
|
+
describeWSDL: DescribeWSDL;
|
|
5
5
|
generateHeader: GenerateHeader;
|
|
6
|
-
getSOAPClient: GetClient;
|
|
7
6
|
getSOAPAuth: SOAPAuth;
|
|
7
|
+
getSOAPClient: <T extends string | SOAPConnection = string | SOAPConnection>(wsdlParam: T) => Promise<Client>;
|
|
8
8
|
getWSDL: (wsdlDefinitionURL: string) => Promise<string>;
|
|
9
9
|
overrideClientDefaults: (client: Client, overrides: ClientOverrides) => void;
|
|
10
10
|
soapRequest: SOAPRequest;
|
|
11
|
-
describeWSDL: DescribeWSDL;
|
|
12
11
|
};
|
|
13
12
|
export default _default;
|
|
@@ -12,10 +12,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
12
12
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
13
13
|
};
|
|
14
14
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
|
-
exports.describeWSDL = void 0;
|
|
16
15
|
/* eslint-disable @typescript-eslint/no-unsafe-return */
|
|
17
|
-
/* eslint-disable @typescript-eslint/no-unsafe-member-access */
|
|
18
|
-
/* eslint-disable @typescript-eslint/no-unsafe-call */
|
|
19
16
|
/* eslint-disable @typescript-eslint/no-unsafe-assignment */
|
|
20
17
|
const types_1 = require("./types");
|
|
21
18
|
const index_1 = require("../../index");
|
|
@@ -23,18 +20,25 @@ const soap_1 = require("soap");
|
|
|
23
20
|
const axios_1 = __importDefault(require("axios"));
|
|
24
21
|
const promises_1 = require("fs/promises");
|
|
25
22
|
const uuid_1 = require("uuid");
|
|
23
|
+
const os_1 = __importDefault(require("os"));
|
|
24
|
+
const path_1 = __importDefault(require("path"));
|
|
25
|
+
/**
|
|
26
|
+
* Optionally log out SOAP requests and responses for debugging purposes
|
|
27
|
+
*
|
|
28
|
+
* @param client A SOAP client that generates requests and responses
|
|
29
|
+
*/
|
|
26
30
|
const debugRequest = (client) => {
|
|
27
31
|
console.debug(client.lastRequest);
|
|
28
32
|
console.debug(client.lastResponse);
|
|
29
33
|
};
|
|
34
|
+
/**
|
|
35
|
+
* This function takes either the URL of a WSDL or the XML defining a WSDL, and returns an object describing the methods and attributes defined in the WSDL.
|
|
36
|
+
*
|
|
37
|
+
* @param wsdlParam Either the URL where a WSDL is stored, or the XML defining a WSDL.
|
|
38
|
+
* @returns An object containing the methods and attributes defined in a WSDL
|
|
39
|
+
*/
|
|
30
40
|
const describeWSDL = (wsdlParam) => __awaiter(void 0, void 0, void 0, function* () {
|
|
31
|
-
|
|
32
|
-
if (types_1.isSOAPConnection(wsdlParam)) {
|
|
33
|
-
client = yield getSOAPClient(wsdlParam);
|
|
34
|
-
}
|
|
35
|
-
else {
|
|
36
|
-
client = yield getSOAPClient(index_1.util.types.toString(wsdlParam));
|
|
37
|
-
}
|
|
41
|
+
const client = yield getSOAPClient(types_1.isSOAPConnection(wsdlParam) ? wsdlParam : index_1.util.types.toString(wsdlParam));
|
|
38
42
|
try {
|
|
39
43
|
const result = client.describe();
|
|
40
44
|
return result;
|
|
@@ -43,7 +47,11 @@ const describeWSDL = (wsdlParam) => __awaiter(void 0, void 0, void 0, function*
|
|
|
43
47
|
throw new Error("Unable to parse WSDL Services due to circular references");
|
|
44
48
|
}
|
|
45
49
|
});
|
|
46
|
-
|
|
50
|
+
/**
|
|
51
|
+
* Fetch a WSDL from a URL
|
|
52
|
+
* @param wsdlDefinitionURL The URL where the WSDL is stored
|
|
53
|
+
* @returns The WSDL's raw XML
|
|
54
|
+
*/
|
|
47
55
|
const getWSDL = (wsdlDefinitionURL) => __awaiter(void 0, void 0, void 0, function* () {
|
|
48
56
|
const httpClient = axios_1.default.create({
|
|
49
57
|
baseURL: wsdlDefinitionURL,
|
|
@@ -52,10 +60,15 @@ const getWSDL = (wsdlDefinitionURL) => __awaiter(void 0, void 0, void 0, functio
|
|
|
52
60
|
const { data } = yield httpClient.get("");
|
|
53
61
|
return index_1.util.types.toString(data);
|
|
54
62
|
});
|
|
63
|
+
/**
|
|
64
|
+
* Create a SOAP client given a WSDL or SOAPConnection
|
|
65
|
+
* @param wsdlParam a SOAPConnection or XML defining a WSDL
|
|
66
|
+
* @returns An HTTP client configured to query a SOAP-based API
|
|
67
|
+
*/
|
|
55
68
|
const getSOAPClient = (wsdlParam) => __awaiter(void 0, void 0, void 0, function* () {
|
|
56
69
|
if (typeof wsdlParam === "string") {
|
|
57
70
|
const wsdl = index_1.util.types.toString(wsdlParam);
|
|
58
|
-
const filePath =
|
|
71
|
+
const filePath = path_1.default.join(os_1.default.tmpdir(), `${uuid_1.v4()}.wsdl`);
|
|
59
72
|
yield promises_1.writeFile(filePath, wsdl);
|
|
60
73
|
const client = yield soap_1.createClientAsync(filePath);
|
|
61
74
|
yield promises_1.rm(filePath);
|
|
@@ -74,6 +87,11 @@ const getSOAPClient = (wsdlParam) => __awaiter(void 0, void 0, void 0, function*
|
|
|
74
87
|
throw new Error("WSDL Definition or the Connection field 'wsdlDefinitionURL' must be supplied.");
|
|
75
88
|
}
|
|
76
89
|
});
|
|
90
|
+
/**
|
|
91
|
+
* Override some HTTP client defaults
|
|
92
|
+
* @param client The client to override
|
|
93
|
+
* @param overrides An endpoint URL or SOAP headers to override
|
|
94
|
+
*/
|
|
77
95
|
const overrideClientDefaults = (client, overrides) => {
|
|
78
96
|
const { endpointURL, soapHeaders } = overrides;
|
|
79
97
|
if (endpointURL) {
|
|
@@ -85,14 +103,14 @@ const overrideClientDefaults = (client, overrides) => {
|
|
|
85
103
|
});
|
|
86
104
|
}
|
|
87
105
|
};
|
|
106
|
+
/**
|
|
107
|
+
* Make a request to a SOAP-based API
|
|
108
|
+
* @param param0
|
|
109
|
+
* @param methodParams Parameters to pass to the specified SOAP method
|
|
110
|
+
* @returns The results from the SOAP request, including the full XML of the request and response
|
|
111
|
+
*/
|
|
88
112
|
const soapRequest = ({ wsdlParam, method, overrides, debug }, methodParams) => __awaiter(void 0, void 0, void 0, function* () {
|
|
89
|
-
|
|
90
|
-
if (types_1.isSOAPConnection(wsdlParam)) {
|
|
91
|
-
client = yield getSOAPClient(wsdlParam);
|
|
92
|
-
}
|
|
93
|
-
else {
|
|
94
|
-
client = yield getSOAPClient(wsdlParam);
|
|
95
|
-
}
|
|
113
|
+
const client = yield getSOAPClient(types_1.isSOAPConnection(wsdlParam) ? wsdlParam : index_1.util.types.toString(wsdlParam));
|
|
96
114
|
if (overrides) {
|
|
97
115
|
overrideClientDefaults(client, overrides);
|
|
98
116
|
}
|
|
@@ -114,17 +132,19 @@ const soapRequest = ({ wsdlParam, method, overrides, debug }, methodParams) => _
|
|
|
114
132
|
if (index_1.util.types.isBool(debug) && debug) {
|
|
115
133
|
debugRequest(client);
|
|
116
134
|
}
|
|
135
|
+
console.warn("Please verify that the method you specified exists in the WSDL specification.");
|
|
117
136
|
throw error;
|
|
118
137
|
}
|
|
119
138
|
});
|
|
139
|
+
/**
|
|
140
|
+
* Create a SOAP header
|
|
141
|
+
* @param wsdlParam A SOAPConnection or XML definition of a WSDL
|
|
142
|
+
* @param headerPayload The contents of a header XML node
|
|
143
|
+
* @param headerOptions Attributes for a header XML node, like namespace or xmlns
|
|
144
|
+
* @returns
|
|
145
|
+
*/
|
|
120
146
|
const generateHeader = (wsdlParam, headerPayload, headerOptions) => __awaiter(void 0, void 0, void 0, function* () {
|
|
121
|
-
|
|
122
|
-
if (types_1.isSOAPConnection(wsdlParam)) {
|
|
123
|
-
client = yield getSOAPClient(wsdlParam);
|
|
124
|
-
}
|
|
125
|
-
else {
|
|
126
|
-
client = yield getSOAPClient(wsdlParam);
|
|
127
|
-
}
|
|
147
|
+
const client = yield getSOAPClient(types_1.isSOAPConnection(wsdlParam) ? wsdlParam : index_1.util.types.toString(wsdlParam));
|
|
128
148
|
let options = [];
|
|
129
149
|
if (headerOptions) {
|
|
130
150
|
options = Object.values(headerOptions);
|
|
@@ -132,6 +152,12 @@ const generateHeader = (wsdlParam, headerPayload, headerOptions) => __awaiter(vo
|
|
|
132
152
|
const index = client.addSoapHeader(headerPayload, "", ...options);
|
|
133
153
|
return client.getSoapHeaders()[index];
|
|
134
154
|
});
|
|
155
|
+
/**
|
|
156
|
+
* Fetch authentication information for a SOAPConnection
|
|
157
|
+
* @param connection The SOAPConnection
|
|
158
|
+
* @param wsdlDefinition The XML WSDL definition
|
|
159
|
+
* @returns
|
|
160
|
+
*/
|
|
135
161
|
const getSOAPAuth = (connection, wsdlDefinition) => __awaiter(void 0, void 0, void 0, function* () {
|
|
136
162
|
if (types_1.isBasicAuthConnection(connection) && wsdlDefinition) {
|
|
137
163
|
const { fields: { username, password, loginMethod }, } = connection;
|
|
@@ -155,11 +181,11 @@ const getSOAPAuth = (connection, wsdlDefinition) => __awaiter(void 0, void 0, vo
|
|
|
155
181
|
}
|
|
156
182
|
});
|
|
157
183
|
exports.default = {
|
|
184
|
+
describeWSDL,
|
|
158
185
|
generateHeader,
|
|
159
|
-
getSOAPClient,
|
|
160
186
|
getSOAPAuth,
|
|
187
|
+
getSOAPClient,
|
|
161
188
|
getWSDL,
|
|
162
189
|
overrideClientDefaults,
|
|
163
190
|
soapRequest,
|
|
164
|
-
describeWSDL: exports.describeWSDL,
|
|
165
191
|
};
|
package/dist/index.js
CHANGED
|
@@ -14,12 +14,34 @@ var __createBinding = (this && this.__createBinding) || (Object.create ? (functi
|
|
|
14
14
|
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
15
15
|
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
16
16
|
};
|
|
17
|
+
var __rest = (this && this.__rest) || function (s, e) {
|
|
18
|
+
var t = {};
|
|
19
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
|
|
20
|
+
t[p] = s[p];
|
|
21
|
+
if (s != null && typeof Object.getOwnPropertySymbols === "function")
|
|
22
|
+
for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
|
|
23
|
+
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
|
|
24
|
+
t[p[i]] = s[p[i]];
|
|
25
|
+
}
|
|
26
|
+
return t;
|
|
27
|
+
};
|
|
17
28
|
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
18
29
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
19
30
|
};
|
|
20
31
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
21
32
|
exports.testing = exports.util = exports.oauth2Connection = exports.connection = exports.input = exports.trigger = exports.action = exports.component = void 0;
|
|
22
|
-
|
|
33
|
+
/**
|
|
34
|
+
* Both component author-facing types and server types that
|
|
35
|
+
* the Prismatic API expects are imported here.
|
|
36
|
+
*/
|
|
37
|
+
const types_1 = require("./types");
|
|
38
|
+
const convertInput = (key, _a) => {
|
|
39
|
+
var { default: defaultValue, type, label, collection } = _a, rest = __rest(_a, ["default", "type", "label", "collection"]);
|
|
40
|
+
return (Object.assign(Object.assign({}, rest), { key,
|
|
41
|
+
type, default: defaultValue !== null && defaultValue !== void 0 ? defaultValue : types_1.InputFieldDefaultMap[type], collection, label: typeof label === "string" ? label : label.value, keyLabel: collection === "keyvaluelist" && typeof label === "object"
|
|
42
|
+
? label.key
|
|
43
|
+
: undefined }));
|
|
44
|
+
};
|
|
23
45
|
/**
|
|
24
46
|
* This is a helper function for component() to convert an
|
|
25
47
|
* action defined in TypeScript into an action object that
|
|
@@ -1,2 +1,13 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.InputFieldDefaultMap = void 0;
|
|
4
|
+
exports.InputFieldDefaultMap = {
|
|
5
|
+
string: "",
|
|
6
|
+
data: "",
|
|
7
|
+
text: "",
|
|
8
|
+
password: "",
|
|
9
|
+
boolean: "false",
|
|
10
|
+
code: "",
|
|
11
|
+
conditional: undefined,
|
|
12
|
+
connection: undefined,
|
|
13
|
+
};
|
package/dist/types/Inputs.d.ts
CHANGED
|
@@ -1,18 +1,23 @@
|
|
|
1
|
-
import { InputFieldType } from ".";
|
|
1
|
+
import { InputFieldDefaultMap, InputFieldType } from ".";
|
|
2
2
|
export declare type Inputs = Record<string, InputFieldDefinition>;
|
|
3
3
|
export declare type ConnectionInput = DefaultInputFieldDefinition & {
|
|
4
4
|
shown?: boolean;
|
|
5
5
|
};
|
|
6
|
-
export declare type InputFieldDefinition = DefaultInputFieldDefinition | CodeInputFieldDefinition;
|
|
6
|
+
export declare type InputFieldDefinition = DefaultInputFieldDefinition | CodeInputFieldDefinition | ConditionalInputField | ConnectionInputField;
|
|
7
7
|
interface BaseInputFieldDefinition {
|
|
8
|
+
/** Data type the InputField will collect. */
|
|
9
|
+
type: InputFieldType;
|
|
8
10
|
/** Interface label of the InputField. */
|
|
9
|
-
label:
|
|
11
|
+
label: {
|
|
12
|
+
key: string;
|
|
13
|
+
value: string;
|
|
14
|
+
} | string;
|
|
10
15
|
/** Collection type of the InputField */
|
|
11
16
|
collection?: InputFieldCollection;
|
|
12
17
|
/** Text to show as the InputField placeholder. */
|
|
13
18
|
placeholder?: string;
|
|
14
19
|
/** Default value for this field. */
|
|
15
|
-
default?:
|
|
20
|
+
default?: typeof InputFieldDefaultMap[this["type"]];
|
|
16
21
|
/** Additional text to give guidance to the user configuring the InputField. */
|
|
17
22
|
comments?: string;
|
|
18
23
|
/** Example valid input for this InputField. */
|
|
@@ -24,13 +29,21 @@ interface BaseInputFieldDefinition {
|
|
|
24
29
|
}
|
|
25
30
|
/** Defines attributes of a InputField. */
|
|
26
31
|
export interface DefaultInputFieldDefinition extends BaseInputFieldDefinition {
|
|
27
|
-
type: Exclude<InputFieldType, "code">;
|
|
32
|
+
type: Exclude<InputFieldType, "code" | "conditional" | "connection">;
|
|
28
33
|
}
|
|
29
34
|
/** Defines attributes of a CodeInputField. */
|
|
30
35
|
export interface CodeInputFieldDefinition extends BaseInputFieldDefinition {
|
|
31
36
|
type: Extract<InputFieldType, "code">;
|
|
32
37
|
language?: string;
|
|
33
38
|
}
|
|
39
|
+
/** Defines attributes of a ConditionalInputField. */
|
|
40
|
+
export interface ConditionalInputField extends BaseInputFieldDefinition {
|
|
41
|
+
type: Extract<InputFieldType, "conditional">;
|
|
42
|
+
}
|
|
43
|
+
/** Defines attributes of a ConnectionInputField. */
|
|
44
|
+
export interface ConnectionInputField extends BaseInputFieldDefinition {
|
|
45
|
+
type: Extract<InputFieldType, "connection">;
|
|
46
|
+
}
|
|
34
47
|
export interface Connection {
|
|
35
48
|
/** Key of the Connection type. */
|
|
36
49
|
key: string;
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
*/
|
|
7
7
|
/// <reference types="node" />
|
|
8
8
|
/** Import shared types from types/ */
|
|
9
|
-
import { OAuth2Type } from ".";
|
|
9
|
+
import { OAuth2Type, InputFieldType, InputFieldDefaultMap } from ".";
|
|
10
10
|
import { ActionContext } from "./ActionPerformFunction";
|
|
11
11
|
import { ActionDisplayDefinition, ComponentDisplayDefinition } from "./DisplayDefinition";
|
|
12
12
|
import { InputFieldChoice, InputFieldCollection } from "./Inputs";
|
|
@@ -139,6 +139,8 @@ interface DefaultInputField {
|
|
|
139
139
|
key: string;
|
|
140
140
|
/** Interface label of the InputField. */
|
|
141
141
|
label: string;
|
|
142
|
+
/** Interface label of the Key if the InputField is a 'keyvaluelist'. */
|
|
143
|
+
keyLabel?: string;
|
|
142
144
|
/** Data type the InputField will collect. */
|
|
143
145
|
type: InputFieldType;
|
|
144
146
|
/** Collection type of the InputField */
|
|
@@ -146,7 +148,7 @@ interface DefaultInputField {
|
|
|
146
148
|
/** Text to show as the InputField placeholder. */
|
|
147
149
|
placeholder?: string;
|
|
148
150
|
/** Default value for this field. */
|
|
149
|
-
default?:
|
|
151
|
+
default?: typeof InputFieldDefaultMap[this["type"]];
|
|
150
152
|
/** Additional text to give guidance to the user configuring the InputField. */
|
|
151
153
|
comments?: string;
|
|
152
154
|
/** Example valid input for this InputField. */
|
|
@@ -160,8 +162,6 @@ interface CodeInputField extends DefaultInputField {
|
|
|
160
162
|
type: "code";
|
|
161
163
|
language?: string;
|
|
162
164
|
}
|
|
163
|
-
/** InputField type enumeration. */
|
|
164
|
-
export declare type InputFieldType = "string" | "text" | "password" | "boolean" | "code" | "data" | "conditional" | "connection";
|
|
165
165
|
/** Binary data payload */
|
|
166
166
|
export interface DataPayload {
|
|
167
167
|
/** Raw binary data as a Buffer */
|