@segment/actions-core 3.87.0 → 3.89.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.
Files changed (39) hide show
  1. package/dist/cjs/create-test-integration.d.ts +4 -3
  2. package/dist/cjs/create-test-integration.js +4 -2
  3. package/dist/cjs/create-test-integration.js.map +1 -1
  4. package/dist/cjs/destination-kit/action.d.ts +42 -4
  5. package/dist/cjs/destination-kit/action.js +30 -1
  6. package/dist/cjs/destination-kit/action.js.map +1 -1
  7. package/dist/cjs/destination-kit/index.d.ts +12 -4
  8. package/dist/cjs/destination-kit/index.js +7 -3
  9. package/dist/cjs/destination-kit/index.js.map +1 -1
  10. package/dist/cjs/destination-kit/types.d.ts +10 -5
  11. package/dist/cjs/index.d.ts +2 -1
  12. package/dist/cjs/index.js +12 -1
  13. package/dist/cjs/index.js.map +1 -1
  14. package/dist/cjs/mapping-kit/index.d.ts +3 -2
  15. package/dist/cjs/mapping-kit/index.js.map +1 -1
  16. package/dist/cjs/mapping-kit/value-keys.d.ts +65 -0
  17. package/dist/cjs/mapping-kit/value-keys.js +123 -0
  18. package/dist/cjs/mapping-kit/value-keys.js.map +1 -0
  19. package/dist/esm/create-test-integration.d.ts +4 -3
  20. package/dist/esm/create-test-integration.js +4 -2
  21. package/dist/esm/create-test-integration.js.map +1 -1
  22. package/dist/esm/destination-kit/action.d.ts +42 -4
  23. package/dist/esm/destination-kit/action.js +29 -0
  24. package/dist/esm/destination-kit/action.js.map +1 -1
  25. package/dist/esm/destination-kit/index.d.ts +12 -4
  26. package/dist/esm/destination-kit/index.js +7 -3
  27. package/dist/esm/destination-kit/index.js.map +1 -1
  28. package/dist/esm/destination-kit/types.d.ts +10 -5
  29. package/dist/esm/index.d.ts +2 -1
  30. package/dist/esm/index.js +1 -0
  31. package/dist/esm/index.js.map +1 -1
  32. package/dist/esm/mapping-kit/index.d.ts +3 -2
  33. package/dist/esm/mapping-kit/index.js +3 -2
  34. package/dist/esm/mapping-kit/index.js.map +1 -1
  35. package/dist/esm/mapping-kit/value-keys.d.ts +65 -0
  36. package/dist/esm/mapping-kit/value-keys.js +105 -0
  37. package/dist/esm/mapping-kit/value-keys.js.map +1 -0
  38. package/dist/tsconfig.build.tsbuildinfo +1 -1
  39. package/package.json +2 -3
@@ -1,4 +1,4 @@
1
- import { StateContext, Logger, StatsContext, TransactionContext } from './index';
1
+ import { StateContext, Logger, StatsContext, TransactionContext, DataFeedCache, ActionHookType } from './index';
2
2
  import type { RequestOptions } from '../request-client';
3
3
  import type { JSONObject } from '../json-object';
4
4
  import { AuthTokens } from './parse-settings';
@@ -12,16 +12,19 @@ export interface Result {
12
12
  error?: JSONObject | null;
13
13
  data?: JSONObject | null;
14
14
  }
15
- export interface ExecuteInput<Settings, Payload, AudienceSettings = unknown> {
15
+ export interface ExecuteInput<Settings, Payload, AudienceSettings = unknown, ActionHookInputs = any, ActionHookOutputs = any> {
16
16
  readonly mapping?: JSONObject;
17
17
  readonly settings: Settings;
18
18
  readonly audienceSettings?: AudienceSettings;
19
19
  payload: Payload;
20
+ hookInputs?: ActionHookInputs;
21
+ hookOutputs?: Record<ActionHookType, ActionHookOutputs>;
20
22
  page?: string;
21
23
  readonly auth?: AuthTokens;
22
24
  readonly features?: Features;
23
25
  readonly statsContext?: StatsContext;
24
26
  readonly logger?: Logger;
27
+ readonly dataFeedCache?: DataFeedCache;
25
28
  readonly transactionContext?: TransactionContext;
26
29
  readonly stateContext?: StateContext;
27
30
  }
@@ -53,7 +56,7 @@ export interface GlobalSetting {
53
56
  format?: InputField['format'];
54
57
  }
55
58
  export declare type FieldTypeName = 'string' | 'text' | 'number' | 'integer' | 'datetime' | 'boolean' | 'password' | 'object';
56
- export interface InputField {
59
+ export interface InputFieldJSONSchema {
57
60
  label: string;
58
61
  description: string;
59
62
  type: FieldTypeName;
@@ -61,8 +64,6 @@ export interface InputField {
61
64
  multiple?: boolean;
62
65
  additionalProperties?: boolean;
63
66
  default?: FieldValue;
64
- placeholder?: string;
65
- dynamic?: boolean;
66
67
  choices?: Array<string> | Array<{
67
68
  value: string | number;
68
69
  label: string;
@@ -70,6 +71,10 @@ export interface InputField {
70
71
  required?: boolean;
71
72
  properties?: Record<string, Optional<InputField, 'description'>>;
72
73
  format?: 'date' | 'time' | 'date-time' | 'uri' | 'uri-reference' | 'uri-template' | 'email' | 'hostname' | 'ipv4' | 'ipv6' | 'regex' | 'uuid' | 'password' | 'text';
74
+ }
75
+ export interface InputField extends InputFieldJSONSchema {
76
+ placeholder?: string;
77
+ dynamic?: boolean;
73
78
  defaultObjectUI?: 'keyvalue' | 'object' | 'keyvalue:only' | 'object:only';
74
79
  unsafe_hidden?: boolean;
75
80
  readOnly?: boolean;
@@ -1,6 +1,7 @@
1
1
  export { Destination, fieldsToJsonSchema } from './destination-kit';
2
2
  export { getAuthData } from './destination-kit/parse-settings';
3
3
  export { transform } from './mapping-kit';
4
+ export { ArrayPathDirective, CaseDirective, Directive, DirectiveMetadata, FieldValue, IfDirective, LiteralDirective, PathDirective, PrimitiveValue, ReplaceDirective, TemplateDirective, getFieldValue, getFieldValueKeys, isArrayPathDirective, isCaseDirective, isDirective, isIfDirective, isLiteralDirective, isPathDirective, isReplaceDirective, isTemplateDirective } from './mapping-kit/value-keys';
4
5
  export { createTestEvent } from './create-test-event';
5
6
  export { createTestIntegration } from './create-test-integration';
6
7
  export { default as createInstance } from './request-client';
@@ -15,7 +16,7 @@ export type { RequestOptions } from './request-client';
15
16
  export { HTTPError, DEFAULT_REQUEST_TIMEOUT } from './request-client';
16
17
  export { ModifiedResponse } from './types';
17
18
  export { default as fetch, Request, Response, Headers } from './fetch';
18
- export type { BaseActionDefinition, ActionDefinition, BaseDefinition, DestinationDefinition, AudienceDestinationDefinition, ExecuteInput, Subscription, SubscriptionStats, AuthenticationScheme, BasicAuthentication, CustomAuthentication, OAuth2Authentication, OAuthManagedAuthentication, OAuth2ClientCredentials, RefreshAccessTokenResult, RequestFn, DecoratedResponse, MinimalInputField, StateContext, StatsContext, Preset } from './destination-kit';
19
+ export type { BaseActionDefinition, ActionDefinition, ActionHookResponse, BaseDefinition, DestinationDefinition, AudienceDestinationDefinition, ExecuteInput, Subscription, SubscriptionStats, AuthenticationScheme, BasicAuthentication, CustomAuthentication, OAuth2Authentication, OAuthManagedAuthentication, OAuth2ClientCredentials, RefreshAccessTokenResult, RequestFn, DecoratedResponse, MinimalInputField, StateContext, StatsContext, Preset } from './destination-kit';
19
20
  export type { DynamicFieldResponse, DynamicFieldError, DynamicFieldItem, InputField, GlobalSetting, RequestExtension } from './destination-kit/types';
20
21
  export type { JSONPrimitive, JSONValue, JSONObject, JSONArray, JSONLike, JSONLikeObject } from './json-object';
21
22
  export type { SegmentEvent } from './segment-event';
package/dist/esm/index.js CHANGED
@@ -1,6 +1,7 @@
1
1
  export { Destination, fieldsToJsonSchema } from './destination-kit';
2
2
  export { getAuthData } from './destination-kit/parse-settings';
3
3
  export { transform } from './mapping-kit';
4
+ export { getFieldValue, getFieldValueKeys, isArrayPathDirective, isCaseDirective, isDirective, isIfDirective, isLiteralDirective, isPathDirective, isReplaceDirective, isTemplateDirective } from './mapping-kit/value-keys';
4
5
  export { createTestEvent } from './create-test-event';
5
6
  export { createTestIntegration } from './create-test-integration';
6
7
  export { default as createInstance } from './request-client';
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAA;AACnE,OAAO,EAAE,WAAW,EAAE,MAAM,kCAAkC,CAAA;AAC9D,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAA;AACzC,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAA;AACrD,OAAO,EAAE,qBAAqB,EAAE,MAAM,2BAA2B,CAAA;AACjE,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,kBAAkB,CAAA;AAC5D,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAA;AAC1C,OAAO,EACL,gBAAgB,EAChB,0BAA0B,EAC1B,cAAc,EACd,sBAAsB,EACtB,gBAAgB,EAChB,QAAQ,EACR,UAAU,EACX,MAAM,UAAU,CAAA;AACjB,OAAO,EAAE,GAAG,EAAE,MAAM,OAAO,CAAA;AAC3B,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAA;AAC7B,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAA;AACpD,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAA;AAEvC,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AAGxE,OAAO,EAAE,SAAS,EAAE,uBAAuB,EAAE,MAAM,kBAAkB,CAAA;AAErE,OAAO,EAAE,OAAO,IAAI,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,SAAS,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAA;AACnE,OAAO,EAAE,WAAW,EAAE,MAAM,kCAAkC,CAAA;AAC9D,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAA;AACzC,OAAO,EAYL,aAAa,EACb,iBAAiB,EACjB,oBAAoB,EACpB,eAAe,EACf,WAAW,EACX,aAAa,EACb,kBAAkB,EAClB,eAAe,EACf,kBAAkB,EAClB,mBAAmB,EACpB,MAAM,0BAA0B,CAAA;AACjC,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAA;AACrD,OAAO,EAAE,qBAAqB,EAAE,MAAM,2BAA2B,CAAA;AACjE,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,kBAAkB,CAAA;AAC5D,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAA;AAC1C,OAAO,EACL,gBAAgB,EAChB,0BAA0B,EAC1B,cAAc,EACd,sBAAsB,EACtB,gBAAgB,EAChB,QAAQ,EACR,UAAU,EACX,MAAM,UAAU,CAAA;AACjB,OAAO,EAAE,GAAG,EAAE,MAAM,OAAO,CAAA;AAC3B,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAA;AAC7B,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAA;AACpD,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAA;AAEvC,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AAGxE,OAAO,EAAE,SAAS,EAAE,uBAAuB,EAAE,MAAM,kBAAkB,CAAA;AAErE,OAAO,EAAE,OAAO,IAAI,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,SAAS,CAAA"}
@@ -7,5 +7,6 @@ export declare type Features = {
7
7
  };
8
8
  export declare const MAX_PATTERN_LENGTH = 10;
9
9
  export declare const MAX_REPLACEMENT_LENGTH = 10;
10
- export declare function transform(mapping: JSONLikeObject, data?: InputData | undefined): JSONObject;
11
- export declare function transformBatch(mapping: JSONLikeObject, data?: Array<InputData> | undefined): JSONObject[];
10
+ declare function transform(mapping: JSONLikeObject, data?: InputData | undefined): JSONObject;
11
+ declare function transformBatch(mapping: JSONLikeObject, data?: Array<InputData> | undefined): JSONObject[];
12
+ export { transform, transformBatch };
@@ -162,7 +162,7 @@ function resolve(mapping, payload) {
162
162
  }
163
163
  return resolved;
164
164
  }
165
- export function transform(mapping, data = {}) {
165
+ function transform(mapping, data = {}) {
166
166
  const realType = realTypeOf(data);
167
167
  if (realType !== 'object') {
168
168
  throw new Error(`data must be an object, got ${realType}`);
@@ -172,7 +172,7 @@ export function transform(mapping, data = {}) {
172
172
  const cleaned = removeUndefined(resolved);
173
173
  return cleaned;
174
174
  }
175
- export function transformBatch(mapping, data = []) {
175
+ function transformBatch(mapping, data = []) {
176
176
  const realType = realTypeOf(data);
177
177
  if (!isArray(data)) {
178
178
  throw new Error(`data must be an array, got ${realType}`);
@@ -181,4 +181,5 @@ export function transformBatch(mapping, data = []) {
181
181
  const resolved = data.map((d) => resolve(mapping, d));
182
182
  return removeUndefined(resolved);
183
183
  }
184
+ export { transform, transformBatch };
184
185
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/mapping-kit/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,QAAQ,CAAA;AAE5B,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAA;AAC5C,OAAO,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAA;AACvC,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAA;AAC/D,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAA;AACrD,OAAO,QAAQ,MAAM,YAAY,CAAA;AACjC,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAA;AAWlC,MAAM,UAAU,GAAe,EAAE,CAAA;AACjC,MAAM,eAAe,GAAG,sBAAsB,CAAA;AAE9C,SAAS,iBAAiB,CAAC,IAAY,EAAE,EAAa;IACpD,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;QAC/B,MAAM,IAAI,KAAK,CAAC,IAAI,IAAI,gCAAgC,CAAC,CAAA;KAC1D;IAED,UAAU,CAAC,IAAI,CAAC,GAAG,EAAE,CAAA;AACvB,CAAC;AAED,SAAS,uBAAuB,CAAC,IAAY,EAAE,EAAmB;IAChE,iBAAiB,CAAC,IAAI,EAAE,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE;QACzC,MAAM,GAAG,GAAG,OAAO,CAAC,KAAK,EAAE,OAAO,CAAC,CAAA;QACnC,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE;YAC3B,MAAM,IAAI,KAAK,CAAC,GAAG,IAAI,0BAA0B,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;SACpE;QAED,OAAO,EAAE,CAAC,GAAG,EAAE,OAAO,CAAC,CAAA;IACzB,CAAC,CAAC,CAAA;AACJ,CAAC;AAED,SAAS,YAAY,CAAC,GAAe,EAAE,OAAmB;IACxD,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,CAAW,CAAA;IAC1E,MAAM,WAAW,GAAG,UAAU,CAAC,IAAI,CAAC,CAAA;IACpC,MAAM,KAAK,GAAG,GAAG,CAAC,IAAI,CAAC,CAAA;IAEvB,IAAI,OAAO,WAAW,KAAK,UAAU,EAAE;QACrC,MAAM,IAAI,KAAK,CAAC,GAAG,IAAI,kCAAkC,UAAU,CAAC,WAAW,CAAC,EAAE,CAAC,CAAA;KACpF;IAED,OAAO,WAAW,CAAC,KAAK,EAAE,OAAO,CAAC,CAAA;AACpC,CAAC;AAED,iBAAiB,CAAC,KAAK,EAAE,CAAC,IAAI,EAAE,OAAO,EAAE,EAAE;IACzC,IAAI,SAAS,GAAG,KAAK,CAAA;IAErB,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE;QACnB,MAAM,IAAI,KAAK,CAAC,6CAA6C,CAAC,CAAA;KAC/D;IAED,IAAI,CAAC,IAAI,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE;QAC/B,MAAM,IAAI,KAAK,CAAC,+CAA+C,CAAC,CAAA;KACjE;SAAM,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS,EAAE;QACpC,MAAM,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;QAC3C,SAAS,GAAG,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,IAAI,CAAA;KAClD;SAAM,IAAI,IAAI,CAAC,KAAK,KAAK,SAAS,EAAE;QACnC,MAAM,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC,KAAK,EAAE,OAAO,CAAC,CAAA;QAC1C,SAAS,GAAG,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,IAAI,EAAE,CAAA;KACjE;IAED,IAAI,SAAS,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS,EAAE;QACxC,OAAO,OAAO,CAAC,IAAI,CAAC,IAAI,EAAE,OAAO,CAAC,CAAA;KACnC;SAAM,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,IAAI,EAAE;QAClC,OAAO,OAAO,CAAC,IAAI,CAAC,IAAI,EAAE,OAAO,CAAC,CAAA;KACnC;AACH,CAAC,CAAC,CAAA;AAEF,iBAAiB,CAAC,OAAO,EAAE,CAAC,IAAI,EAAE,OAAO,EAAE,EAAE;IAC3C,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE;QACnB,MAAM,IAAI,KAAK,CAAC,gDAAgD,CAAC,CAAA;KAClE;IAED,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE;QAClB,MAAM,IAAI,KAAK,CAAC,iCAAiC,CAAC,CAAA;KACnD;IAED,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAA;IAC9B,IAAI,IAAI,CAAC,KAAK,EAAE;QACd,MAAM,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC,KAAK,EAAE,OAAO,CAAC,CAAA;QAC1C,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE;YAC7B,QAAQ,QAAQ,EAAE;gBAChB,KAAK,OAAO;oBACV,OAAO,KAAK,CAAC,WAAW,EAAE,CAAA;gBAC5B,KAAK,OAAO;oBACV,OAAO,KAAK,CAAC,WAAW,EAAE,CAAA;gBAC5B;oBACE,MAAM,IAAI,KAAK,CAAC,wDAAwD,CAAC,CAAA;aAC5E;SACF;QACD,OAAO,KAAK,CAAA;KACb;AACH,CAAC,CAAC,CAAA;AAEF,MAAM,CAAC,MAAM,kBAAkB,GAAG,EAAE,CAAA;AACpC,MAAM,CAAC,MAAM,sBAAsB,GAAG,EAAE,CAAA;AACxC,iBAAiB,CAAC,UAAU,EAAE,CAAC,IAAI,EAAE,OAAO,EAAE,EAAE;IAC9C,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE;QACnB,MAAM,IAAI,KAAK,CAAC,kDAAkD,CAAC,CAAA;KACpE;IAED,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE;QACjB,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAA;KACrD;IAGD,IAAI,IAAI,CAAC,WAAW,IAAI,IAAI,EAAE;QAE5B,IAAI,CAAC,WAAW,GAAG,EAAE,CAAA;KACtB;IAGD,IAAI,IAAI,CAAC,UAAU,IAAI,IAAI,EAAE;QAC3B,IAAI,CAAC,UAAU,GAAG,KAAK,CAAA;KACxB;IAGD,IAAI,IAAI,CAAC,MAAM,IAAI,IAAI,EAAE;QACvB,IAAI,CAAC,MAAM,GAAG,IAAI,CAAA;KACnB;IAED,IAAI,OAAO,GAAG,IAAI,CAAC,OAAO,CAAA;IAC1B,MAAM,WAAW,GAAG,IAAI,CAAC,WAAW,CAAA;IACpC,MAAM,UAAU,GAAG,IAAI,CAAC,UAAU,CAAA;IAClC,MAAM,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAA;IAC5B,IAAI,IAAI,CAAC,KAAK,EAAE;QACd,MAAM,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC,KAAK,EAAE,OAAO,CAAC,CAAA;QAC1C,IACE,OAAO,KAAK,KAAK,QAAQ;YACzB,OAAO,OAAO,KAAK,QAAQ;YAC3B,OAAO,WAAW,KAAK,QAAQ;YAC/B,OAAO,UAAU,KAAK,SAAS;YAC/B,OAAO,QAAQ,KAAK,SAAS,EAC7B;YACA,IAAI,OAAO,CAAC,MAAM,GAAG,kBAAkB,EAAE;gBACvC,MAAM,IAAI,KAAK,CAAC,2CAA2C,kBAAkB,aAAa,CAAC,CAAA;aAC5F;YAED,IAAI,WAAW,CAAC,MAAM,GAAG,sBAAsB,EAAE;gBAC/C,MAAM,IAAI,KAAK,CAAC,+CAA+C,sBAAsB,aAAa,CAAC,CAAA;aACpG;YAID,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,0BAA0B,EAAE,MAAM,CAAC,CAAA;YAC7D,IAAI,KAAK,GAAG,EAAE,CAAA;YACd,IAAI,QAAQ,EAAE;gBACZ,KAAK,IAAI,GAAG,CAAA;aACb;YACD,IAAI,UAAU,EAAE;gBACd,KAAK,IAAI,GAAG,CAAA;aACb;YACD,OAAO,KAAK,CAAC,OAAO,CAAC,IAAI,MAAM,CAAC,OAAO,EAAE,KAAK,CAAC,EAAE,WAAW,CAAC,CAAA;SAC9D;KACF;AACH,CAAC,CAAC,CAAA;AAEF,iBAAiB,CAAC,YAAY,EAAE,CAAC,IAAI,EAAE,OAAO,EAAE,EAAE;IAChD,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;QACxB,MAAM,IAAI,KAAK,CAAC,kCAAkC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;KACtE;IAED,MAAM,CAAC,IAAI,EAAE,SAAS,CAAC,GAAG,IAAwC,CAAA;IAClE,MAAM,IAAI,GAAG,OAAO,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAE,GAAG,CAAC,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAc,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,CAAA;IAGnH,IACE,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;QAC9C,UAAU,CAAC,SAAS,CAAC,KAAK,QAAQ;QAClC,MAAM,CAAC,IAAI,CAAC,SAAuB,CAAC,CAAC,MAAM,GAAG,CAAC,EAC/C;QACA,OAAO,MAAM,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,OAAO,CAAC,SAAS,EAAE,IAAkB,CAAC,CAAC,CAAA;KAC1E;IAED,OAAO,IAAI,CAAA;AACb,CAAC,CAAC,CAAA;AAEF,uBAAuB,CAAC,OAAO,EAAE,CAAC,IAAI,EAAE,OAAO,EAAE,EAAE;IACjD,OAAO,GAAG,CAAC,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,CAAA;AAC7C,CAAC,CAAC,CAAA;AAEF,uBAAuB,CAAC,WAAW,EAAE,CAAC,QAAgB,EAAE,OAAO,EAAE,EAAE;IACjE,OAAO,MAAM,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAA;AAClC,CAAC,CAAC,CAAA;AAGF,iBAAiB,CAAC,UAAU,EAAE,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE;IAC/C,OAAO,OAAO,CAAC,KAAK,EAAE,OAAO,CAAC,CAAA;AAChC,CAAC,CAAC,CAAA;AAQF,SAAS,OAAO,CAAC,OAAiB,EAAE,OAAmB;IACrD,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE;QAC3C,OAAO,OAAO,CAAA;KACf;IAED,IAAI,WAAW,CAAC,OAAO,CAAC,EAAE;QACxB,OAAO,YAAY,CAAC,OAAO,EAAE,OAAO,CAAC,CAAA;KACtC;IAED,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE;QAC1B,OAAO,OAAO,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC,CAAA;KACvD;IAED,MAAM,QAAQ,GAAmB,EAAE,CAAA;IAEnC,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE;QACtC,QAAQ,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,OAAO,CAAC,CAAA;KAC/C;IAED,OAAO,QAAQ,CAAA;AACjB,CAAC;AAQD,MAAM,UAAU,SAAS,CAAC,OAAuB,EAAE,OAA8B,EAAE;IACjF,MAAM,QAAQ,GAAG,UAAU,CAAC,IAAI,CAAC,CAAA;IACjC,IAAI,QAAQ,KAAK,QAAQ,EAAE;QACzB,MAAM,IAAI,KAAK,CAAC,+BAA+B,QAAQ,EAAE,CAAC,CAAA;KAC3D;IAGD,QAAQ,CAAC,OAAO,CAAC,CAAA;IAEjB,MAAM,QAAQ,GAAG,OAAO,CAAC,OAAO,EAAE,IAAkB,CAAC,CAAA;IACrD,MAAM,OAAO,GAAG,eAAe,CAAC,QAAQ,CAAC,CAAA;IAGzC,OAAO,OAAqB,CAAA;AAC9B,CAAC;AAOD,MAAM,UAAU,cAAc,CAAC,OAAuB,EAAE,OAAqC,EAAE;IAC7F,MAAM,QAAQ,GAAG,UAAU,CAAC,IAAI,CAAC,CAAA;IACjC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;QAClB,MAAM,IAAI,KAAK,CAAC,8BAA8B,QAAQ,EAAE,CAAC,CAAA;KAC1D;IAGD,QAAQ,CAAC,OAAO,CAAC,CAAA;IAEjB,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,OAAO,EAAE,CAAe,CAAC,CAAC,CAAA;IAGnE,OAAO,eAAe,CAAC,QAAQ,CAAiB,CAAA;AAClD,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/mapping-kit/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,65 @@
1
+ declare type ValueType = 'enrichment' | 'function' | 'literal' | 'variable';
2
+ export interface DirectiveMetadata {
3
+ _metadata?: {
4
+ label?: string;
5
+ type: ValueType;
6
+ };
7
+ }
8
+ export declare function isDirective(value: FieldValue): value is Directive;
9
+ export interface LiteralDirective extends DirectiveMetadata {
10
+ '@literal': PrimitiveValue | Record<string, FieldValue>;
11
+ }
12
+ export declare function isLiteralDirective(value: FieldValue): value is LiteralDirective;
13
+ export interface TemplateDirective extends DirectiveMetadata {
14
+ '@template': string;
15
+ }
16
+ export declare function isTemplateDirective(value: FieldValue): value is TemplateDirective;
17
+ export declare function getFieldValue(value: FieldValue): any;
18
+ export interface PathDirective extends DirectiveMetadata {
19
+ '@path': string;
20
+ }
21
+ export declare function isPathDirective(value: FieldValue): value is PathDirective;
22
+ declare type RequireOnlyOne<T, Keys extends keyof T = keyof T> = {
23
+ [K in Keys]-?: Partial<Record<Exclude<Keys, K>, undefined>> & Required<Pick<T, K>>;
24
+ }[Keys] & Pick<T, Exclude<keyof T, Keys>>;
25
+ export interface IfDirective extends DirectiveMetadata {
26
+ '@if': RequireOnlyOne<{
27
+ blank?: FieldValue;
28
+ else?: FieldValue;
29
+ exists?: FieldValue;
30
+ then: FieldValue;
31
+ }, 'blank' | 'exists'>;
32
+ }
33
+ export declare function isIfDirective(value: FieldValue): value is IfDirective;
34
+ export interface ArrayPathDirective extends DirectiveMetadata {
35
+ '@arrayPath': [Directive | string, {
36
+ [key: string]: FieldValue;
37
+ } | undefined] | [Directive | string];
38
+ }
39
+ export declare function isArrayPathDirective(value: FieldValue): value is ArrayPathDirective;
40
+ export interface CaseDirective extends DirectiveMetadata {
41
+ '@case': {
42
+ operator: string;
43
+ value?: FieldValue;
44
+ };
45
+ }
46
+ export declare function isCaseDirective(value: FieldValue): value is CaseDirective;
47
+ export interface ReplaceDirective extends DirectiveMetadata {
48
+ '@replace': {
49
+ global: PrimitiveValue;
50
+ ignorecase: PrimitiveValue;
51
+ pattern: string;
52
+ replacement: string;
53
+ value?: FieldValue;
54
+ };
55
+ }
56
+ export declare function isReplaceDirective(value: FieldValue): value is ReplaceDirective;
57
+ export declare type Directive = ArrayPathDirective | CaseDirective | IfDirective | LiteralDirective | PathDirective | ReplaceDirective | TemplateDirective;
58
+ export declare type PrimitiveValue = boolean | number | string | null;
59
+ export declare type FieldValue = Directive | PrimitiveValue | {
60
+ [key: string]: FieldValue;
61
+ } | FieldValue[] | undefined;
62
+ export declare function getFieldValueKeys(value: FieldValue): string[];
63
+ export declare function getRawKeys(input: FieldValue): string[];
64
+ export declare function getTemplateKeys(input: string): string[];
65
+ export {};
@@ -0,0 +1,105 @@
1
+ import _ from 'lodash';
2
+ export function isDirective(value) {
3
+ return (value !== null &&
4
+ typeof value === 'object' &&
5
+ Object.keys(value).some((key) => ['@if', '@path', '@template', '@literal', '@arrayPath', '@case', '@replace'].includes(key)));
6
+ }
7
+ export function isLiteralDirective(value) {
8
+ return isDirective(value) && '@literal' in value;
9
+ }
10
+ export function isTemplateDirective(value) {
11
+ return isDirective(value) && '@template' in value;
12
+ }
13
+ export function getFieldValue(value) {
14
+ if (isTemplateDirective(value)) {
15
+ return value['@template'];
16
+ }
17
+ return value;
18
+ }
19
+ export function isPathDirective(value) {
20
+ return isDirective(value) && '@path' in value;
21
+ }
22
+ export function isIfDirective(value) {
23
+ return (isDirective(value) &&
24
+ '@if' in value &&
25
+ value['@if'] !== null &&
26
+ typeof value['@if'] === 'object' &&
27
+ ('exists' in value['@if'] || 'blank' in value['@if']));
28
+ }
29
+ export function isArrayPathDirective(value) {
30
+ return isDirective(value) && '@arrayPath' in value && Array.isArray(value['@arrayPath']);
31
+ }
32
+ export function isCaseDirective(value) {
33
+ return (isDirective(value) &&
34
+ '@case' in value &&
35
+ value['@case'] !== null &&
36
+ typeof value['@case'] === 'object' &&
37
+ 'operator' in value['@case']);
38
+ }
39
+ export function isReplaceDirective(value) {
40
+ return (isDirective(value) &&
41
+ '@replace' in value &&
42
+ value['@replace'] !== null &&
43
+ typeof value['@replace'] === 'object' &&
44
+ 'pattern' in value['@replace']);
45
+ }
46
+ function directiveType(directive, checker) {
47
+ if (isArrayPathDirective(directive)) {
48
+ return checker['@arrayPath'](directive);
49
+ }
50
+ if (isCaseDirective(directive)) {
51
+ return checker['@case'](directive);
52
+ }
53
+ if (isIfDirective(directive)) {
54
+ return checker['@if'](directive);
55
+ }
56
+ if (isLiteralDirective(directive)) {
57
+ return checker['@literal'](directive);
58
+ }
59
+ if (isPathDirective(directive)) {
60
+ return checker['@path'](directive);
61
+ }
62
+ if (isReplaceDirective(directive)) {
63
+ return checker['@replace'](directive);
64
+ }
65
+ if (isTemplateDirective(directive)) {
66
+ return checker['@template'](directive);
67
+ }
68
+ return null;
69
+ }
70
+ export function getFieldValueKeys(value) {
71
+ if (isDirective(value)) {
72
+ return (directiveType(value, {
73
+ '@arrayPath': (input) => input['@arrayPath'].flatMap(getRawKeys),
74
+ '@case': (input) => getRawKeys(input['@case'].value),
75
+ '@if': (input) => [
76
+ ...getRawKeys(input['@if'].blank),
77
+ ...getRawKeys(input['@if'].exists),
78
+ ...getRawKeys(input['@if'].then),
79
+ ...getRawKeys(input['@if'].else)
80
+ ],
81
+ '@literal': (_) => [''],
82
+ '@path': (input) => [input['@path']],
83
+ '@replace': (input) => getRawKeys(input['@replace'].value),
84
+ '@template': (input) => getTemplateKeys(input['@template'])
85
+ })?.filter((k) => k) ?? []);
86
+ }
87
+ else if (_.isObject(value)) {
88
+ return Object.values(value).flatMap(getFieldValueKeys);
89
+ }
90
+ return [];
91
+ }
92
+ export function getRawKeys(input) {
93
+ if (isDirective(input)) {
94
+ return getFieldValueKeys(input);
95
+ }
96
+ else if (_.isObject(input)) {
97
+ return Object.values(input).flatMap(getFieldValueKeys);
98
+ }
99
+ return [];
100
+ }
101
+ export function getTemplateKeys(input) {
102
+ const regex = /{{(.*?)}}/g;
103
+ return Array.from(input.matchAll(regex), (m) => m[1]);
104
+ }
105
+ //# sourceMappingURL=value-keys.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"value-keys.js","sourceRoot":"","sources":["../../../src/mapping-kit/value-keys.ts"],"names":[],"mappings":"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"}