@segment/actions-core 2.0.3-next.0 → 2.1.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.
- package/dist/cjs/create-request-client.d.ts +0 -3
- package/dist/cjs/create-request-client.js +0 -7
- package/dist/cjs/create-request-client.js.map +1 -1
- package/dist/cjs/create-test-event.js +1 -1
- package/dist/cjs/create-test-event.js.map +1 -1
- package/dist/cjs/create-test-integration.d.ts +0 -19
- package/dist/cjs/create-test-integration.js +0 -1
- package/dist/cjs/create-test-integration.js.map +1 -1
- package/dist/cjs/destination-kit/action.d.ts +7 -37
- package/dist/cjs/destination-kit/action.js +28 -52
- package/dist/cjs/destination-kit/action.js.map +1 -1
- package/dist/cjs/destination-kit/fields-to-jsonschema.js +80 -12
- package/dist/cjs/destination-kit/fields-to-jsonschema.js.map +1 -1
- package/dist/cjs/destination-kit/index.d.ts +0 -10
- package/dist/cjs/destination-kit/index.js +13 -8
- package/dist/cjs/destination-kit/index.js.map +1 -1
- package/dist/cjs/destination-kit/step.d.ts +0 -12
- package/dist/cjs/destination-kit/step.js +0 -7
- package/dist/cjs/destination-kit/step.js.map +1 -1
- package/dist/cjs/destination-kit/types.d.ts +31 -9
- package/dist/cjs/errors.d.ts +15 -5
- package/dist/cjs/errors.js +22 -8
- package/dist/cjs/errors.js.map +1 -1
- package/dist/cjs/fetch.js +0 -1
- package/dist/cjs/fetch.js.map +1 -1
- package/dist/cjs/get.d.ts +0 -4
- package/dist/cjs/get.js +1 -11
- package/dist/cjs/get.js.map +1 -1
- package/dist/cjs/index.d.ts +2 -2
- package/dist/cjs/index.js +4 -2
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/map-values.d.ts +1 -5
- package/dist/cjs/map-values.js +0 -5
- package/dist/cjs/map-values.js.map +1 -1
- package/dist/cjs/mapping-kit/index.d.ts +0 -6
- package/dist/cjs/mapping-kit/index.js +0 -87
- package/dist/cjs/mapping-kit/index.js.map +1 -1
- package/dist/cjs/mapping-kit/is-directive.js +0 -1
- package/dist/cjs/mapping-kit/is-directive.js.map +1 -1
- package/dist/cjs/mapping-kit/placeholders.d.ts +0 -3
- package/dist/cjs/mapping-kit/placeholders.js +0 -8
- package/dist/cjs/mapping-kit/placeholders.js.map +1 -1
- package/dist/cjs/mapping-kit/validate.js +0 -84
- package/dist/cjs/mapping-kit/validate.js.map +1 -1
- package/dist/cjs/middleware/after-response/prepare-headers.js +0 -3
- package/dist/cjs/middleware/after-response/prepare-headers.js.map +1 -1
- package/dist/cjs/middleware/after-response/prepare-response.js +0 -4
- package/dist/cjs/middleware/after-response/prepare-response.js.map +1 -1
- package/dist/cjs/omit.d.ts +0 -3
- package/dist/cjs/omit.js +0 -3
- package/dist/cjs/omit.js.map +1 -1
- package/dist/cjs/real-type-of.d.ts +0 -5
- package/dist/cjs/real-type-of.js +0 -5
- package/dist/cjs/real-type-of.js.map +1 -1
- package/dist/cjs/request-client.d.ts +0 -53
- package/dist/cjs/request-client.js +4 -48
- package/dist/cjs/request-client.js.map +1 -1
- package/dist/cjs/segment-event.d.ts +0 -40
- package/dist/cjs/time.d.ts +0 -6
- package/dist/cjs/time.js +0 -6
- package/dist/cjs/time.js.map +1 -1
- package/dist/cjs/types.d.ts +0 -4
- package/dist/esm/create-request-client.d.ts +0 -3
- package/dist/esm/create-request-client.js +0 -7
- package/dist/esm/create-request-client.js.map +1 -1
- package/dist/esm/create-test-event.js +1 -1
- package/dist/esm/create-test-event.js.map +1 -1
- package/dist/esm/create-test-integration.d.ts +0 -19
- package/dist/esm/create-test-integration.js +0 -1
- package/dist/esm/create-test-integration.js.map +1 -1
- package/dist/esm/destination-kit/action.d.ts +7 -37
- package/dist/esm/destination-kit/action.js +28 -52
- package/dist/esm/destination-kit/action.js.map +1 -1
- package/dist/esm/destination-kit/fields-to-jsonschema.js +80 -12
- package/dist/esm/destination-kit/fields-to-jsonschema.js.map +1 -1
- package/dist/esm/destination-kit/index.d.ts +0 -10
- package/dist/esm/destination-kit/index.js +12 -7
- package/dist/esm/destination-kit/index.js.map +1 -1
- package/dist/esm/destination-kit/step.d.ts +0 -12
- package/dist/esm/destination-kit/step.js +0 -7
- package/dist/esm/destination-kit/step.js.map +1 -1
- package/dist/esm/destination-kit/types.d.ts +31 -9
- package/dist/esm/errors.d.ts +15 -5
- package/dist/esm/errors.js +18 -6
- package/dist/esm/errors.js.map +1 -1
- package/dist/esm/fetch.js +0 -1
- package/dist/esm/fetch.js.map +1 -1
- package/dist/esm/get.d.ts +0 -4
- package/dist/esm/get.js +1 -11
- package/dist/esm/get.js.map +1 -1
- package/dist/esm/index.d.ts +2 -2
- package/dist/esm/index.js +1 -1
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/map-values.d.ts +1 -5
- package/dist/esm/map-values.js +0 -5
- package/dist/esm/map-values.js.map +1 -1
- package/dist/esm/mapping-kit/index.d.ts +0 -6
- package/dist/esm/mapping-kit/index.js +1 -88
- package/dist/esm/mapping-kit/index.js.map +1 -1
- package/dist/esm/mapping-kit/is-directive.js +0 -1
- package/dist/esm/mapping-kit/is-directive.js.map +1 -1
- package/dist/esm/mapping-kit/placeholders.d.ts +0 -3
- package/dist/esm/mapping-kit/placeholders.js +0 -8
- package/dist/esm/mapping-kit/placeholders.js.map +1 -1
- package/dist/esm/mapping-kit/validate.js +0 -84
- package/dist/esm/mapping-kit/validate.js.map +1 -1
- package/dist/esm/middleware/after-response/prepare-headers.js +0 -3
- package/dist/esm/middleware/after-response/prepare-headers.js.map +1 -1
- package/dist/esm/middleware/after-response/prepare-response.js +0 -4
- package/dist/esm/middleware/after-response/prepare-response.js.map +1 -1
- package/dist/esm/omit.d.ts +0 -3
- package/dist/esm/omit.js +0 -3
- package/dist/esm/omit.js.map +1 -1
- package/dist/esm/real-type-of.d.ts +0 -5
- package/dist/esm/real-type-of.js +0 -5
- package/dist/esm/real-type-of.js.map +1 -1
- package/dist/esm/request-client.d.ts +0 -53
- package/dist/esm/request-client.js +4 -48
- package/dist/esm/request-client.js.map +1 -1
- package/dist/esm/segment-event.d.ts +0 -40
- package/dist/esm/time.d.ts +0 -6
- package/dist/esm/time.js +0 -6
- package/dist/esm/time.js.map +1 -1
- package/dist/esm/types.d.ts +0 -4
- package/package.json +16 -11
- package/dist/cjs/dayjs.d.ts +0 -2
- package/dist/cjs/dayjs.js +0 -10
- package/dist/cjs/dayjs.js.map +0 -1
- package/dist/esm/dayjs.d.ts +0 -2
- package/dist/esm/dayjs.js +0 -5
- package/dist/esm/dayjs.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/destination-kit/index.ts"],"names":[],"mappings":";;;;;;AAAA,oEAAgE;AAEhE,qCAAwE;AAExE,kCAAwC;AAGxC,iEAA+E;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/destination-kit/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -6,30 +6,18 @@ export interface StepResult {
|
|
|
6
6
|
error?: JSONObject | null;
|
|
7
7
|
}
|
|
8
8
|
export interface ExecuteInput<Settings, Payload> {
|
|
9
|
-
/** The subscription mapping definition */
|
|
10
9
|
readonly mapping?: JSONObject;
|
|
11
|
-
/** The global destination settings */
|
|
12
10
|
readonly settings: Settings;
|
|
13
|
-
/** The transformed input data, based on `mapping` + `event` */
|
|
14
11
|
payload: Payload;
|
|
15
|
-
/** The ids from cached requests */
|
|
16
12
|
cachedFields: {
|
|
17
13
|
[key: string]: string | null | undefined;
|
|
18
14
|
};
|
|
19
|
-
/** The page used in autocomplete */
|
|
20
15
|
page?: string;
|
|
21
16
|
}
|
|
22
|
-
/**
|
|
23
|
-
* Step is the base class for all discrete execution steps. It handles executing the step, logging,
|
|
24
|
-
* catching errors, and returning a result object.
|
|
25
|
-
*/
|
|
26
17
|
export declare class Step<Settings, Payload> extends EventEmitter {
|
|
27
18
|
executeStep?(data: ExecuteInput<Settings, Payload>): Promise<JSONObject | string | null | undefined>;
|
|
28
19
|
execute(data: ExecuteInput<Settings, Payload>): Promise<StepResult>;
|
|
29
20
|
}
|
|
30
|
-
/**
|
|
31
|
-
* Steps is a list of one or more Step instances that can be executed in-order.
|
|
32
|
-
*/
|
|
33
21
|
export declare class Steps<Settings, Payload> {
|
|
34
22
|
steps: Step<Settings, Payload>[];
|
|
35
23
|
constructor();
|
|
@@ -2,10 +2,6 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.Steps = exports.Step = void 0;
|
|
4
4
|
const events_1 = require("events");
|
|
5
|
-
/**
|
|
6
|
-
* Step is the base class for all discrete execution steps. It handles executing the step, logging,
|
|
7
|
-
* catching errors, and returning a result object.
|
|
8
|
-
*/
|
|
9
5
|
class Step extends events_1.EventEmitter {
|
|
10
6
|
async execute(data) {
|
|
11
7
|
const result = {
|
|
@@ -25,9 +21,6 @@ class Step extends events_1.EventEmitter {
|
|
|
25
21
|
}
|
|
26
22
|
}
|
|
27
23
|
exports.Step = Step;
|
|
28
|
-
/**
|
|
29
|
-
* Steps is a list of one or more Step instances that can be executed in-order.
|
|
30
|
-
*/
|
|
31
24
|
class Steps {
|
|
32
25
|
constructor() {
|
|
33
26
|
this.steps = [];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"step.js","sourceRoot":"","sources":["../../../src/destination-kit/step.ts"],"names":[],"mappings":";;;AAAA,mCAAqC;
|
|
1
|
+
{"version":3,"file":"step.js","sourceRoot":"","sources":["../../../src/destination-kit/step.ts"],"names":[],"mappings":";;;AAAA,mCAAqC;AAyBrC,MAAa,IAAwB,SAAQ,qBAAY;IAGvD,KAAK,CAAC,OAAO,CAAC,IAAqC;QACjD,MAAM,MAAM,GAAe;YACzB,MAAM,EAAE,IAAI;YACZ,KAAK,EAAE,IAAI;SACZ,CAAA;QAED,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE;YACrB,OAAO,MAAM,CAAA;SACd;QAED,IAAI;YACF,MAAM,CAAC,MAAM,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAA;SAC7C;QAAC,OAAO,CAAC,EAAE;YACV,MAAM,CAAC,KAAK,GAAG,CAAC,CAAA;SACjB;QAED,OAAO,MAAM,CAAA;IACf,CAAC;CACF;AArBD,oBAqBC;AAKD,MAAa,KAAK;IAGhB;QACE,IAAI,CAAC,KAAK,GAAG,EAAE,CAAA;IACjB,CAAC;IAED,IAAI,CAAC,IAA6B;QAChC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IACvB,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,IAAqC;QACjD,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE;YAC3B,MAAM,IAAI,KAAK,CAAC,kBAAkB,CAAC,CAAA;SACpC;QAED,MAAM,OAAO,GAAiB,EAAE,CAAA;QAEhC,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,KAAK,EAAE;YAC7B,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;YAEvC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;YAEpB,IAAI,MAAM,CAAC,KAAK,EAAE;gBAChB,MAAK;aACN;SACF;QAED,OAAO,OAAO,CAAA;IAChB,CAAC;CACF;AA9BD,sBA8BC"}
|
|
@@ -1,23 +1,45 @@
|
|
|
1
1
|
import type { RequestOptions } from '../request-client';
|
|
2
|
-
import type { JSONSchema4 } from 'json-schema';
|
|
3
2
|
import type { ExecuteInput } from './step';
|
|
4
|
-
export interface
|
|
3
|
+
export interface DynamicFieldResponse {
|
|
5
4
|
body: {
|
|
6
|
-
data:
|
|
5
|
+
data: DynamicFieldItem[];
|
|
7
6
|
pagination: {
|
|
8
7
|
nextPage?: string;
|
|
9
8
|
};
|
|
10
9
|
};
|
|
11
10
|
}
|
|
12
|
-
export interface
|
|
11
|
+
export interface DynamicFieldItem {
|
|
13
12
|
label: string;
|
|
14
13
|
value: string;
|
|
15
14
|
}
|
|
16
|
-
export
|
|
15
|
+
export declare type FieldTypeName = 'string' | 'text' | 'number' | 'integer' | 'datetime' | 'boolean' | 'password' | 'object';
|
|
16
|
+
export interface InputField {
|
|
17
|
+
label: string;
|
|
18
|
+
description: string;
|
|
19
|
+
type: FieldTypeName;
|
|
20
|
+
allowNull?: boolean;
|
|
21
|
+
multiple?: boolean;
|
|
22
|
+
default?: FieldValue;
|
|
23
|
+
placeholder?: string;
|
|
24
|
+
dynamic?: boolean;
|
|
17
25
|
required?: boolean;
|
|
26
|
+
properties?: Record<string, InputField>;
|
|
27
|
+
format?: 'date' | 'time' | 'date-time' | 'uri' | 'uri-reference' | 'uri-template' | 'email' | 'hostname' | 'ipv4' | 'ipv6' | 'regex' | 'uuid' | 'password' | 'text';
|
|
28
|
+
}
|
|
29
|
+
export declare type FieldValue = string | number | boolean | object | Directive;
|
|
30
|
+
export interface IfDirective {
|
|
31
|
+
'@if': {
|
|
32
|
+
exists?: FieldValue;
|
|
33
|
+
true?: FieldValue;
|
|
34
|
+
then: FieldValue;
|
|
35
|
+
else?: FieldValue;
|
|
36
|
+
};
|
|
37
|
+
}
|
|
38
|
+
export interface TemplateDirective {
|
|
39
|
+
'@template': string;
|
|
40
|
+
}
|
|
41
|
+
export interface PathDirective {
|
|
42
|
+
'@path': string;
|
|
18
43
|
}
|
|
19
|
-
|
|
20
|
-
* A function to configure a request client instance with options
|
|
21
|
-
* that will be applied to every request made by that instance
|
|
22
|
-
*/
|
|
44
|
+
export declare type Directive = IfDirective | TemplateDirective | PathDirective;
|
|
23
45
|
export declare type RequestExtension<Settings, Payload = unknown> = (data: ExecuteInput<Settings, Payload>) => RequestOptions;
|
package/dist/cjs/errors.d.ts
CHANGED
|
@@ -1,7 +1,17 @@
|
|
|
1
1
|
import { CustomError } from 'ts-custom-error';
|
|
2
|
-
export declare class
|
|
3
|
-
|
|
4
|
-
status:
|
|
5
|
-
|
|
6
|
-
constructor(action: string);
|
|
2
|
+
export declare class IntegrationError extends CustomError {
|
|
3
|
+
code: string | undefined;
|
|
4
|
+
status: number | undefined;
|
|
5
|
+
constructor(message?: string, code?: string, status?: number);
|
|
7
6
|
}
|
|
7
|
+
declare type RetryableStatusCodes = 408 | 423 | 429 | 500 | 502 | 503 | 504 | 505 | 506 | 507 | 508 | 509 | 510 | 511 | 598 | 599;
|
|
8
|
+
export declare class RetryableError extends CustomError {
|
|
9
|
+
status: RetryableStatusCodes;
|
|
10
|
+
constructor(message?: string, status?: RetryableStatusCodes);
|
|
11
|
+
}
|
|
12
|
+
export declare class InvalidAuthenticationError extends CustomError {
|
|
13
|
+
status: number;
|
|
14
|
+
code: string;
|
|
15
|
+
constructor(message?: string);
|
|
16
|
+
}
|
|
17
|
+
export {};
|
package/dist/cjs/errors.js
CHANGED
|
@@ -1,14 +1,28 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
3
|
+
exports.InvalidAuthenticationError = exports.RetryableError = exports.IntegrationError = void 0;
|
|
4
4
|
const ts_custom_error_1 = require("ts-custom-error");
|
|
5
|
-
class
|
|
6
|
-
constructor(
|
|
7
|
-
super(
|
|
8
|
-
this.
|
|
9
|
-
this.
|
|
10
|
-
this.retry = false;
|
|
5
|
+
class IntegrationError extends ts_custom_error_1.CustomError {
|
|
6
|
+
constructor(message = '', code, status) {
|
|
7
|
+
super(message);
|
|
8
|
+
this.status = status;
|
|
9
|
+
this.code = code;
|
|
11
10
|
}
|
|
12
11
|
}
|
|
13
|
-
exports.
|
|
12
|
+
exports.IntegrationError = IntegrationError;
|
|
13
|
+
class RetryableError extends ts_custom_error_1.CustomError {
|
|
14
|
+
constructor(message = '', status = 500) {
|
|
15
|
+
super(message);
|
|
16
|
+
this.status = status;
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
exports.RetryableError = RetryableError;
|
|
20
|
+
class InvalidAuthenticationError extends ts_custom_error_1.CustomError {
|
|
21
|
+
constructor(message = '') {
|
|
22
|
+
super(message);
|
|
23
|
+
this.status = 401;
|
|
24
|
+
this.code = 'invalid_authentication';
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
exports.InvalidAuthenticationError = InvalidAuthenticationError;
|
|
14
28
|
//# sourceMappingURL=errors.js.map
|
package/dist/cjs/errors.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"errors.js","sourceRoot":"","sources":["../../src/errors.ts"],"names":[],"mappings":";;;AAAA,qDAA6C;
|
|
1
|
+
{"version":3,"file":"errors.js","sourceRoot":"","sources":["../../src/errors.ts"],"names":[],"mappings":";;;AAAA,qDAA6C;AAQ7C,MAAa,gBAAiB,SAAQ,6BAAW;IAS/C,YAAY,OAAO,GAAG,EAAE,EAAE,IAAa,EAAE,MAAe;QACtD,KAAK,CAAC,OAAO,CAAC,CAAA;QACd,IAAI,CAAC,MAAM,GAAG,MAAM,CAAA;QACpB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAA;IAClB,CAAC;CACF;AAdD,4CAcC;AAwBD,MAAa,cAAe,SAAQ,6BAAW;IAG7C,YAAY,OAAO,GAAG,EAAE,EAAE,SAA+B,GAAG;QAC1D,KAAK,CAAC,OAAO,CAAC,CAAA;QACd,IAAI,CAAC,MAAM,GAAG,MAAM,CAAA;IACtB,CAAC;CACF;AAPD,wCAOC;AASD,MAAa,0BAA2B,SAAQ,6BAAW;IAIzD,YAAY,OAAO,GAAG,EAAE;QACtB,KAAK,CAAC,OAAO,CAAC,CAAA;QAJhB,WAAM,GAAG,GAAG,CAAA;QACZ,SAAI,GAAG,wBAAwB,CAAA;IAI/B,CAAC;CACF;AAPD,gEAOC"}
|
package/dist/cjs/fetch.js
CHANGED
|
@@ -20,7 +20,6 @@ var __importStar = (this && this.__importStar) || function (mod) {
|
|
|
20
20
|
};
|
|
21
21
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
22
22
|
exports.Response = exports.Request = exports.Headers = void 0;
|
|
23
|
-
// import fetch ponyfill
|
|
24
23
|
const cross_fetch_1 = __importStar(require("cross-fetch"));
|
|
25
24
|
Object.defineProperty(exports, "Headers", { enumerable: true, get: function () { return cross_fetch_1.Headers; } });
|
|
26
25
|
Object.defineProperty(exports, "Request", { enumerable: true, get: function () { return cross_fetch_1.Request; } });
|
package/dist/cjs/fetch.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fetch.js","sourceRoot":"","sources":["../../src/fetch.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"fetch.js","sourceRoot":"","sources":["../../src/fetch.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;AACA,2DAA+D;AAEtD,wFAFO,qBAAO,OAEP;AAAE,wFAFO,qBAAO,OAEP;AAAE,yFAFO,sBAAQ,OAEP;AACnC,kBAAe,qBAAK,CAAA"}
|
package/dist/cjs/get.d.ts
CHANGED
|
@@ -1,5 +1 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Lightweight alternative to lodash.get with similar coverage
|
|
3
|
-
* Supports basic path lookup via dot notation `'foo.bar[0].baz'` or an array ['foo', 'bar', '0', 'baz']
|
|
4
|
-
*/
|
|
5
1
|
export declare function get<T = unknown, Default = undefined>(obj: any, path: string | string[], defValue?: Default): T | Default | undefined;
|
package/dist/cjs/get.js
CHANGED
|
@@ -1,20 +1,10 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.get = void 0;
|
|
4
|
-
|
|
5
|
-
* Lightweight alternative to lodash.get with similar coverage
|
|
6
|
-
* Supports basic path lookup via dot notation `'foo.bar[0].baz'` or an array ['foo', 'bar', '0', 'baz']
|
|
7
|
-
*/
|
|
8
|
-
function get(
|
|
9
|
-
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
10
|
-
obj, path, defValue) {
|
|
11
|
-
// If path is not defined or it has false value
|
|
4
|
+
function get(obj, path, defValue) {
|
|
12
5
|
if (!path)
|
|
13
6
|
return defValue;
|
|
14
|
-
// Check if path is string or array. Regex : ensure that we do not have '.' and brackets.
|
|
15
|
-
// Regex explained: https://regexr.com/58j0k
|
|
16
7
|
const pathArray = Array.isArray(path) ? path : path.match(/([^[.\]])+/g);
|
|
17
|
-
// Find value if exist return otherwise return undefined value
|
|
18
8
|
const value = pathArray.reduce((prevObj, key) => prevObj && prevObj[key], obj);
|
|
19
9
|
return typeof value !== 'undefined' ? value : defValue;
|
|
20
10
|
}
|
package/dist/cjs/get.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"get.js","sourceRoot":"","sources":["../../src/get.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"get.js","sourceRoot":"","sources":["../../src/get.ts"],"names":[],"mappings":";;;AAIA,SAAgB,GAAG,CAEjB,GAAQ,EACR,IAAuB,EACvB,QAAkB;IAGlB,IAAI,CAAC,IAAI;QAAE,OAAO,QAAQ,CAAA;IAI1B,MAAM,SAAS,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAE,IAAI,CAAC,KAAK,CAAC,aAAa,CAAc,CAAA;IAGtF,MAAM,KAAK,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC,OAAO,EAAE,GAAG,EAAE,EAAE,CAAC,OAAO,IAAI,OAAO,CAAC,GAAG,CAAC,EAAE,GAAG,CAAC,CAAA;IAC9E,OAAO,OAAO,KAAK,KAAK,WAAW,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAA;AACxD,CAAC;AAhBD,kBAgBC"}
|
package/dist/cjs/index.d.ts
CHANGED
|
@@ -3,7 +3,7 @@ export { transform } from './mapping-kit';
|
|
|
3
3
|
export { createTestEvent } from './create-test-event';
|
|
4
4
|
export { createTestIntegration } from './create-test-integration';
|
|
5
5
|
export { defaultValues } from './defaults';
|
|
6
|
-
export {
|
|
6
|
+
export { IntegrationError, InvalidAuthenticationError, RetryableError } from './errors';
|
|
7
7
|
export { get } from './get';
|
|
8
8
|
export { omit } from './omit';
|
|
9
9
|
export { removeUndefined } from './remove-undefined';
|
|
@@ -12,6 +12,6 @@ export { realTypeOf, isObject, isArray, isString } from './real-type-of';
|
|
|
12
12
|
export type { RequestOptions } from './request-client';
|
|
13
13
|
export { default as fetch, Request, Response, Headers } from './fetch';
|
|
14
14
|
export type { ActionDefinition, DestinationDefinition, ExecuteInput, Subscription, SubscriptionStats, AuthenticationScheme, BasicAuthentication, CustomAuthentication, RequestFn, DecoratedResponse } from './destination-kit';
|
|
15
|
-
export type {
|
|
15
|
+
export type { DynamicFieldResponse, DynamicFieldItem, InputField, RequestExtension } from './destination-kit/types';
|
|
16
16
|
export type { JSONPrimitive, JSONValue, JSONObject, JSONArray, JSONLike, JSONLikeObject } from './json-object';
|
|
17
17
|
export type { SegmentEvent } from './segment-event';
|
package/dist/cjs/index.js
CHANGED
|
@@ -3,7 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.Headers = exports.Response = exports.Request = exports.fetch = exports.isString = exports.isArray = exports.isObject = exports.realTypeOf = exports.duration = exports.time = exports.removeUndefined = exports.omit = exports.get = exports.
|
|
6
|
+
exports.Headers = exports.Response = exports.Request = exports.fetch = exports.isString = exports.isArray = exports.isObject = exports.realTypeOf = exports.duration = exports.time = exports.removeUndefined = exports.omit = exports.get = exports.RetryableError = exports.InvalidAuthenticationError = exports.IntegrationError = exports.defaultValues = exports.createTestIntegration = exports.createTestEvent = exports.transform = exports.jsonSchemaToFields = exports.fieldsToJsonSchema = exports.Destination = void 0;
|
|
7
7
|
var destination_kit_1 = require("./destination-kit");
|
|
8
8
|
Object.defineProperty(exports, "Destination", { enumerable: true, get: function () { return destination_kit_1.Destination; } });
|
|
9
9
|
Object.defineProperty(exports, "fieldsToJsonSchema", { enumerable: true, get: function () { return destination_kit_1.fieldsToJsonSchema; } });
|
|
@@ -17,7 +17,9 @@ Object.defineProperty(exports, "createTestIntegration", { enumerable: true, get:
|
|
|
17
17
|
var defaults_1 = require("./defaults");
|
|
18
18
|
Object.defineProperty(exports, "defaultValues", { enumerable: true, get: function () { return defaults_1.defaultValues; } });
|
|
19
19
|
var errors_1 = require("./errors");
|
|
20
|
-
Object.defineProperty(exports, "
|
|
20
|
+
Object.defineProperty(exports, "IntegrationError", { enumerable: true, get: function () { return errors_1.IntegrationError; } });
|
|
21
|
+
Object.defineProperty(exports, "InvalidAuthenticationError", { enumerable: true, get: function () { return errors_1.InvalidAuthenticationError; } });
|
|
22
|
+
Object.defineProperty(exports, "RetryableError", { enumerable: true, get: function () { return errors_1.RetryableError; } });
|
|
21
23
|
var get_1 = require("./get");
|
|
22
24
|
Object.defineProperty(exports, "get", { enumerable: true, get: function () { return get_1.get; } });
|
|
23
25
|
var omit_1 = require("./omit");
|
package/dist/cjs/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;;;;AAAA,qDAAuF;AAA9E,8GAAA,WAAW,OAAA;AAAE,qHAAA,kBAAkB,OAAA;AAAE,qHAAA,kBAAkB,OAAA;AAC5D,6CAAyC;AAAhC,wGAAA,SAAS,OAAA;AAClB,yDAAqD;AAA5C,oHAAA,eAAe,OAAA;AACxB,qEAAiE;AAAxD,gIAAA,qBAAqB,OAAA;AAC9B,uCAA0C;AAAjC,yGAAA,aAAa,OAAA;AACtB,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;;;;AAAA,qDAAuF;AAA9E,8GAAA,WAAW,OAAA;AAAE,qHAAA,kBAAkB,OAAA;AAAE,qHAAA,kBAAkB,OAAA;AAC5D,6CAAyC;AAAhC,wGAAA,SAAS,OAAA;AAClB,yDAAqD;AAA5C,oHAAA,eAAe,OAAA;AACxB,qEAAiE;AAAxD,gIAAA,qBAAqB,OAAA;AAC9B,uCAA0C;AAAjC,yGAAA,aAAa,OAAA;AACtB,mCAAuF;AAA9E,0GAAA,gBAAgB,OAAA;AAAE,oHAAA,0BAA0B,OAAA;AAAE,wGAAA,cAAc,OAAA;AACrE,6BAA2B;AAAlB,0FAAA,GAAG,OAAA;AACZ,+BAA6B;AAApB,4FAAA,IAAI,OAAA;AACb,uDAAoD;AAA3C,mHAAA,eAAe,OAAA;AACxB,+BAAuC;AAA9B,4FAAA,IAAI,OAAA;AAAE,gGAAA,QAAQ,OAAA;AAEvB,+CAAwE;AAA/D,0GAAA,UAAU,OAAA;AAAE,wGAAA,QAAQ,OAAA;AAAE,uGAAA,OAAO,OAAA;AAAE,wGAAA,QAAQ,OAAA;AAGhD,iCAAsE;AAA7D,+GAAA,OAAO,OAAS;AAAE,gGAAA,OAAO,OAAA;AAAE,iGAAA,QAAQ,OAAA;AAAE,gGAAA,OAAO,OAAA"}
|
package/dist/cjs/map-values.d.ts
CHANGED
|
@@ -1,7 +1,3 @@
|
|
|
1
|
-
|
|
2
|
-
* Lightweight alternative to lodash.mapValues
|
|
3
|
-
* Creates an object with the same keys as the input object
|
|
4
|
-
*/
|
|
5
|
-
export declare function mapValues<Values extends Record<string, unknown>, Obj extends Record<string, Values>, ValueKey extends keyof Values>(obj: Obj, key: ValueKey): {
|
|
1
|
+
export declare function mapValues<Values extends Record<string, any>, Obj extends Record<string, Values>, ValueKey extends keyof Values>(obj: Obj, key: ValueKey): {
|
|
6
2
|
[K in keyof Obj]: Obj[K][ValueKey];
|
|
7
3
|
};
|
package/dist/cjs/map-values.js
CHANGED
|
@@ -1,13 +1,8 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.mapValues = void 0;
|
|
4
|
-
/**
|
|
5
|
-
* Lightweight alternative to lodash.mapValues
|
|
6
|
-
* Creates an object with the same keys as the input object
|
|
7
|
-
*/
|
|
8
4
|
function mapValues(obj, key) {
|
|
9
5
|
return Object.entries(obj).reduce((agg, [name, value]) => {
|
|
10
|
-
// @ts-ignore this is a pretty complex type, skipping for now
|
|
11
6
|
agg[name] = value[key];
|
|
12
7
|
return agg;
|
|
13
8
|
}, {});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"map-values.js","sourceRoot":"","sources":["../../src/map-values.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"map-values.js","sourceRoot":"","sources":["../../src/map-values.ts"],"names":[],"mappings":";;;AAIA,SAAgB,SAAS,CAKvB,GAAQ,EAAE,GAAa;IACvB,OAAO,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,EAAE;QAEvD,GAAG,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,CAAA;QACtB,OAAO,GAAG,CAAA;IACZ,CAAC,EAAE,EAA4C,CAAC,CAAA;AAClD,CAAC;AAXD,8BAWC"}
|
|
@@ -1,8 +1,2 @@
|
|
|
1
1
|
import { JSONObject, JSONLikeObject } from '../json-object';
|
|
2
|
-
/**
|
|
3
|
-
* Validates and transforms a mapping by applying the input payload
|
|
4
|
-
* based on the directives and raw values defined in the mapping object
|
|
5
|
-
* @param mapping - the directives and raw values
|
|
6
|
-
* @param payload - the input data to apply to directives
|
|
7
|
-
*/
|
|
8
2
|
export declare function transform(mapping: JSONLikeObject, payload?: JSONObject): JSONObject;
|
|
@@ -4,8 +4,6 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
exports.transform = void 0;
|
|
7
|
-
const uuid_1 = require("uuid");
|
|
8
|
-
const dayjs_1 = __importDefault(require("../dayjs"));
|
|
9
7
|
const get_1 = require("../get");
|
|
10
8
|
const is_directive_1 = require("./is-directive");
|
|
11
9
|
const placeholders_1 = require("./placeholders");
|
|
@@ -38,9 +36,6 @@ function runDirective(obj, payload) {
|
|
|
38
36
|
}
|
|
39
37
|
return directiveFn(value, payload);
|
|
40
38
|
}
|
|
41
|
-
registerStringDirective('@base64', (str, _payload) => {
|
|
42
|
-
return Buffer.from(str).toString('base64');
|
|
43
|
-
});
|
|
44
39
|
registerDirective('@if', (opts, payload) => {
|
|
45
40
|
let condition = false;
|
|
46
41
|
if (!real_type_of_1.isObject(opts)) {
|
|
@@ -64,86 +59,12 @@ registerDirective('@if', (opts, payload) => {
|
|
|
64
59
|
return resolve(opts.else, payload);
|
|
65
60
|
}
|
|
66
61
|
});
|
|
67
|
-
registerDirective('@json', (value, payload) => {
|
|
68
|
-
return JSON.stringify(resolve(value, payload));
|
|
69
|
-
});
|
|
70
|
-
registerStringDirective('@lowercase', (str, _payload) => {
|
|
71
|
-
return str.toLowerCase();
|
|
72
|
-
});
|
|
73
|
-
registerDirective('@merge', (arr, payload) => {
|
|
74
|
-
if (!Array.isArray(arr)) {
|
|
75
|
-
throw new Error(`@merge: expected array, got ${real_type_of_1.realTypeOf(arr)}`);
|
|
76
|
-
}
|
|
77
|
-
const objects = arr.map((v) => resolve(v, payload));
|
|
78
|
-
return Object.assign({}, ...objects);
|
|
79
|
-
});
|
|
80
|
-
function resolveObjectAndFields(directive, opts, payload) {
|
|
81
|
-
if (!real_type_of_1.isObject(opts)) {
|
|
82
|
-
throw new Error(`${directive}: expected object, got ${real_type_of_1.realTypeOf(opts)}`);
|
|
83
|
-
}
|
|
84
|
-
const obj = resolve(opts.object, payload);
|
|
85
|
-
if (!real_type_of_1.isObject(obj)) {
|
|
86
|
-
throw new Error(`${directive}: expected object, got ${real_type_of_1.realTypeOf(obj)}`);
|
|
87
|
-
}
|
|
88
|
-
const fields = resolve(opts.fields, payload);
|
|
89
|
-
if (!Array.isArray(fields)) {
|
|
90
|
-
throw new Error(`${directive}: expected fields as array, got ${real_type_of_1.realTypeOf(fields)}`);
|
|
91
|
-
}
|
|
92
|
-
return [obj, fields];
|
|
93
|
-
}
|
|
94
|
-
registerDirective('@omit', (opts, payload) => {
|
|
95
|
-
const [obj, fields] = resolveObjectAndFields('@omit', opts, payload);
|
|
96
|
-
const clonedObj = JSON.parse(JSON.stringify(obj));
|
|
97
|
-
fields.forEach((f) => delete clonedObj[f]);
|
|
98
|
-
return clonedObj;
|
|
99
|
-
});
|
|
100
62
|
registerStringDirective('@path', (path, payload) => {
|
|
101
63
|
return get_1.get(payload, path.replace('$.', ''));
|
|
102
64
|
});
|
|
103
|
-
registerDirective('@pick', (opts, payload) => {
|
|
104
|
-
const [obj, fields] = resolveObjectAndFields('@pick', opts, payload);
|
|
105
|
-
const clean = {};
|
|
106
|
-
fields.forEach((f) => {
|
|
107
|
-
if (Object.prototype.hasOwnProperty.call(obj, f)) {
|
|
108
|
-
clean[f] = obj[f];
|
|
109
|
-
}
|
|
110
|
-
});
|
|
111
|
-
return clean;
|
|
112
|
-
});
|
|
113
|
-
registerDirective('@root', (_, payload) => payload);
|
|
114
65
|
registerStringDirective('@template', (template, payload) => {
|
|
115
66
|
return placeholders_1.render(template, payload);
|
|
116
67
|
});
|
|
117
|
-
registerDirective('@timestamp', (opts, payload) => {
|
|
118
|
-
if (!real_type_of_1.isObject(opts)) {
|
|
119
|
-
throw new Error(`@timestamp: requires an object, got ${real_type_of_1.realTypeOf(opts)}`);
|
|
120
|
-
}
|
|
121
|
-
const ts = resolve(opts.timestamp, payload);
|
|
122
|
-
if (!real_type_of_1.isString(ts)) {
|
|
123
|
-
throw new Error(`@timestamp: timestamp must be a string, got ${real_type_of_1.realTypeOf(ts)}`);
|
|
124
|
-
}
|
|
125
|
-
const format = resolve(opts.format, payload);
|
|
126
|
-
if (!real_type_of_1.isString(format)) {
|
|
127
|
-
throw new Error(`@timestamp: format must be a string, got ${real_type_of_1.realTypeOf(format)}`);
|
|
128
|
-
}
|
|
129
|
-
const inputFormat = resolve(opts.inputFormat, payload);
|
|
130
|
-
if (inputFormat !== undefined && !real_type_of_1.isString(inputFormat)) {
|
|
131
|
-
throw new Error(`@timestamp: inputFormat must be a string, got ${real_type_of_1.realTypeOf(inputFormat)}`);
|
|
132
|
-
}
|
|
133
|
-
const dayjsTs = dayjs_1.default.utc(ts, inputFormat);
|
|
134
|
-
if (format === 'json') {
|
|
135
|
-
return dayjsTs.toJSON();
|
|
136
|
-
}
|
|
137
|
-
return dayjsTs.format(format);
|
|
138
|
-
});
|
|
139
|
-
registerDirective('@uuid', (_, _payload) => uuid_1.v4());
|
|
140
|
-
/**
|
|
141
|
-
* Resolves a mapping value/object by applying the input payload based on directives
|
|
142
|
-
* *WARNING* This function mutates `mapping` when an object
|
|
143
|
-
* @param mapping - the mapping directives or raw values to resolve
|
|
144
|
-
* @param payload - the input data to apply to the mapping directives
|
|
145
|
-
* @todo support arrays or array directives?
|
|
146
|
-
*/
|
|
147
68
|
function resolve(mapping, payload) {
|
|
148
69
|
if (!real_type_of_1.isObject(mapping) && !real_type_of_1.isArray(mapping)) {
|
|
149
70
|
return mapping;
|
|
@@ -160,22 +81,14 @@ function resolve(mapping, payload) {
|
|
|
160
81
|
}
|
|
161
82
|
return mapping;
|
|
162
83
|
}
|
|
163
|
-
/**
|
|
164
|
-
* Validates and transforms a mapping by applying the input payload
|
|
165
|
-
* based on the directives and raw values defined in the mapping object
|
|
166
|
-
* @param mapping - the directives and raw values
|
|
167
|
-
* @param payload - the input data to apply to directives
|
|
168
|
-
*/
|
|
169
84
|
function transform(mapping, payload = {}) {
|
|
170
85
|
const payloadType = real_type_of_1.realTypeOf(payload);
|
|
171
86
|
if (payloadType !== 'object') {
|
|
172
87
|
throw new Error(`payload must be an object, got ${payloadType}`);
|
|
173
88
|
}
|
|
174
|
-
// throws if the mapping config is invalid
|
|
175
89
|
validate_1.default(mapping);
|
|
176
90
|
let resolved = resolve(mapping, payload);
|
|
177
91
|
resolved = remove_undefined_1.removeUndefined(resolved);
|
|
178
|
-
// Cast because we know there are no `undefined` values anymore
|
|
179
92
|
return resolved;
|
|
180
93
|
}
|
|
181
94
|
exports.transform = transform;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/mapping-kit/index.ts"],"names":[],"mappings":";;;;;;AAAA
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/mapping-kit/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -11,7 +11,6 @@ function isDirective(obj) {
|
|
|
11
11
|
if (!hasDirectivePrefix) {
|
|
12
12
|
return false;
|
|
13
13
|
}
|
|
14
|
-
// Ensure there aren't any other keys besides `@directive` or `_metadata`
|
|
15
14
|
const otherKeys = keys.filter((key) => !key.startsWith('@') && key !== '_metadata');
|
|
16
15
|
if (otherKeys.length === 0) {
|
|
17
16
|
return true;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"is-directive.js","sourceRoot":"","sources":["../../../src/mapping-kit/is-directive.ts"],"names":[],"mappings":";;;AACA,kDAA0C;AAE1C,SAAgB,WAAW,CAAC,GAAY;IACtC,IAAI,CAAC,uBAAQ,CAAC,GAAG,CAAC,EAAE;QAClB,OAAO,KAAK,CAAA;KACb;IAED,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;IAC7B,MAAM,kBAAkB,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAA;IAClE,IAAI,CAAC,kBAAkB,EAAE;QACvB,OAAO,KAAK,CAAA;KACb;
|
|
1
|
+
{"version":3,"file":"is-directive.js","sourceRoot":"","sources":["../../../src/mapping-kit/is-directive.ts"],"names":[],"mappings":";;;AACA,kDAA0C;AAE1C,SAAgB,WAAW,CAAC,GAAY;IACtC,IAAI,CAAC,uBAAQ,CAAC,GAAG,CAAC,EAAE;QAClB,OAAO,KAAK,CAAA;KACb;IAED,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;IAC7B,MAAM,kBAAkB,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAA;IAClE,IAAI,CAAC,kBAAkB,EAAE;QACvB,OAAO,KAAK,CAAA;KACb;IAGD,MAAM,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,GAAG,KAAK,WAAW,CAAC,CAAA;IACnF,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE;QAC1B,OAAO,IAAI,CAAA;KACZ;IAED,OAAO,KAAK,CAAA;AACd,CAAC;AAlBD,kCAkBC"}
|
|
@@ -20,9 +20,6 @@ function escapeHtml(value) {
|
|
|
20
20
|
return entityMap[match];
|
|
21
21
|
});
|
|
22
22
|
}
|
|
23
|
-
/**
|
|
24
|
-
* Replaces curly brace placeholders in a template with real content
|
|
25
|
-
*/
|
|
26
23
|
function render(template, data = {}) {
|
|
27
24
|
if (typeof template !== 'string') {
|
|
28
25
|
throw new TypeError(`Invalid template! Template should be a "string" but ${real_type_of_1.realTypeOf(template)} was given.`);
|
|
@@ -30,11 +27,8 @@ function render(template, data = {}) {
|
|
|
30
27
|
function replacer(chars, escape) {
|
|
31
28
|
return (match) => {
|
|
32
29
|
var _a;
|
|
33
|
-
// Remove the wrapping curly braces
|
|
34
30
|
match = match.slice(chars, -chars).trim();
|
|
35
|
-
// Grab the value from data, if it exists
|
|
36
31
|
const value = get_1.get(data, match);
|
|
37
|
-
// Replace with the value (or empty string)
|
|
38
32
|
if (escape) {
|
|
39
33
|
return String((_a = escapeHtml(value)) !== null && _a !== void 0 ? _a : '');
|
|
40
34
|
}
|
|
@@ -42,9 +36,7 @@ function render(template, data = {}) {
|
|
|
42
36
|
};
|
|
43
37
|
}
|
|
44
38
|
return (template
|
|
45
|
-
// Replace unescaped content
|
|
46
39
|
.replace(/\{\{\{([^}]+)\}\}\}/g, replacer(3, false))
|
|
47
|
-
// Replace escaped content
|
|
48
40
|
.replace(/\{\{([^}]+)\}\}/g, replacer(2, true)));
|
|
49
41
|
}
|
|
50
42
|
exports.render = render;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"placeholders.js","sourceRoot":"","sources":["../../../src/mapping-kit/placeholders.ts"],"names":[],"mappings":";;;AAAA,gCAA4B;AAC5B,kDAA4C;AAE5C,MAAM,SAAS,GAA2B;IACxC,GAAG,EAAE,OAAO;IACZ,GAAG,EAAE,MAAM;IACX,GAAG,EAAE,MAAM;IACX,GAAG,EAAE,QAAQ;IACb,GAAG,EAAE,OAAO;IACZ,GAAG,EAAE,QAAQ;IACb,GAAG,EAAE,QAAQ;IACb,GAAG,EAAE,QAAQ;CACd,CAAA;AAED,SAAS,UAAU,CAAC,KAAc;IAChC,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAA;IAE3C,OAAO,KAAK,CAAC,OAAO,CAAC,aAAa,EAAE,CAAC,KAAK,EAAE,EAAE;QAC5C,OAAO,SAAS,CAAC,KAAK,CAAC,CAAA;IACzB,CAAC,CAAC,CAAA;AACJ,CAAC;
|
|
1
|
+
{"version":3,"file":"placeholders.js","sourceRoot":"","sources":["../../../src/mapping-kit/placeholders.ts"],"names":[],"mappings":";;;AAAA,gCAA4B;AAC5B,kDAA4C;AAE5C,MAAM,SAAS,GAA2B;IACxC,GAAG,EAAE,OAAO;IACZ,GAAG,EAAE,MAAM;IACX,GAAG,EAAE,MAAM;IACX,GAAG,EAAE,QAAQ;IACb,GAAG,EAAE,OAAO;IACZ,GAAG,EAAE,QAAQ;IACb,GAAG,EAAE,QAAQ;IACb,GAAG,EAAE,QAAQ;CACd,CAAA;AAED,SAAS,UAAU,CAAC,KAAc;IAChC,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAA;IAE3C,OAAO,KAAK,CAAC,OAAO,CAAC,aAAa,EAAE,CAAC,KAAK,EAAE,EAAE;QAC5C,OAAO,SAAS,CAAC,KAAK,CAAC,CAAA;IACzB,CAAC,CAAC,CAAA;AACJ,CAAC;AAKD,SAAgB,MAAM,CAAC,QAAgB,EAAE,OAAgB,EAAE;IACzD,IAAI,OAAO,QAAQ,KAAK,QAAQ,EAAE;QAChC,MAAM,IAAI,SAAS,CAAC,uDAAuD,yBAAU,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAA;KAC9G;IAED,SAAS,QAAQ,CAAC,KAAa,EAAE,MAAe;QAC9C,OAAO,CAAC,KAAa,EAAU,EAAE;;YAE/B,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,CAAA;YAGzC,MAAM,KAAK,GAAG,SAAG,CAAC,IAAI,EAAE,KAAK,CAAC,CAAA;YAG9B,IAAI,MAAM,EAAE;gBACV,OAAO,MAAM,CAAC,MAAA,UAAU,CAAC,KAAK,CAAC,mCAAI,EAAE,CAAC,CAAA;aACvC;YAED,OAAO,CAAC,KAAK,aAAL,KAAK,cAAL,KAAK,GAAI,EAAE,CAAW,CAAA;QAChC,CAAC,CAAA;IACH,CAAC;IAED,OAAO,CACL,QAAQ;SAEL,OAAO,CAAC,sBAAsB,EAAE,QAAQ,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;SAEnD,OAAO,CAAC,kBAAkB,EAAE,QAAQ,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAClD,CAAA;AACH,CAAC;AA7BD,wBA6BC"}
|