@wix/auto_sdk_ecom_discount-rules 1.0.19 → 1.0.21

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,3 +1,5 @@
1
+ import { NonNullablePaths } from '@wix/sdk-types';
2
+
1
3
  interface DiscountRule {
2
4
  /**
3
5
  * Discount rule ID.
@@ -840,6 +842,38 @@ declare enum WebhookIdentityType {
840
842
  }
841
843
  /** @enumType */
842
844
  type WebhookIdentityTypeWithLiterals = WebhookIdentityType | 'UNKNOWN' | 'ANONYMOUS_VISITOR' | 'MEMBER' | 'WIX_USER' | 'APP';
845
+ type CreateDiscountRuleApplicationErrors = {
846
+ code?: 'MAX_DISCOUNT_RULES_REACHED';
847
+ description?: string;
848
+ data?: Record<string, any>;
849
+ };
850
+ type CreateDiscountRuleValidationErrors = {
851
+ ruleName?: 'INVALID_ACTIVE_TIME_RANGE';
852
+ } | {
853
+ ruleName?: 'INVALID_EMPTY_DISCOUNT';
854
+ } | {
855
+ ruleName?: 'INVALID_DISCOUNT_TYPE';
856
+ } | {
857
+ ruleName?: 'MISSING_SUBTOTAL_RANGE';
858
+ } | {
859
+ ruleName?: 'MISSING_ITEM_QUANTITY_RANGE';
860
+ } | {
861
+ ruleName?: 'INVALID_SUBTOTAL_RANGE';
862
+ } | {
863
+ ruleName?: 'INVALID_ITEM_QUANTITY_RANGE';
864
+ } | {
865
+ ruleName?: 'INVALID_TARGET_TYPE_FIELD';
866
+ } | {
867
+ ruleName?: 'OPERATOR_TOO_DEEPLY_NESTED';
868
+ } | {
869
+ ruleName?: 'INVALID_SCOPE_TYPE';
870
+ } | {
871
+ ruleName?: 'INVALID_TRIGGER_TYPE';
872
+ } | {
873
+ ruleName?: 'INVALID_SETTINGS_SUBJECT_TYPE';
874
+ } | {
875
+ ruleName?: 'INVALID_CUSTOMER_BUY_CONDITION';
876
+ };
843
877
  interface BaseEventMetadata {
844
878
  /**
845
879
  * App instance ID.
@@ -888,13 +922,130 @@ interface DiscountRuleCreatedEnvelope {
888
922
  entity: DiscountRule;
889
923
  metadata: EventMetadata;
890
924
  }
925
+ /**
926
+ * Triggered when a discount rule is created.
927
+ * @permissionScope Manage Stores - all permissions
928
+ * @permissionScopeId SCOPE.DC-STORES-MEGA.MANAGE-STORES
929
+ * @permissionScope Manage Stores
930
+ * @permissionScopeId SCOPE.STORES.MANAGE-STORES
931
+ * @permissionScope Read eCommerce - all read permissions
932
+ * @permissionScopeId SCOPE.DC-ECOM-MEGA.READ-ECOM
933
+ * @permissionScope Read Stores - all read permissions
934
+ * @permissionScopeId SCOPE.DC-STORES-MEGA.READ-STORES
935
+ * @permissionScope Manage Restaurants - all permissions
936
+ * @permissionScopeId SCOPE.RESTAURANTS.MEGA-SCOPES
937
+ * @permissionScope Manage eCommerce - all permissions
938
+ * @permissionScopeId SCOPE.DC-ECOM-MEGA.MANAGE-ECOM
939
+ * @permissionId ECOM.DISCOUNT_RULES_READ
940
+ * @webhook
941
+ * @eventType wix.ecom.discounts.v1.discount_rule_created
942
+ * @serviceIdentifier com.wix.ecom.discounts.DiscountRuleService
943
+ * @slug created
944
+ */
945
+ declare function onDiscountRuleCreated(handler: (event: DiscountRuleCreatedEnvelope) => void | Promise<void>): void;
891
946
  interface DiscountRuleDeletedEnvelope {
892
947
  metadata: EventMetadata;
893
948
  }
949
+ /**
950
+ * Triggered when a discount rule is deleted.
951
+ * @permissionScope Manage Stores - all permissions
952
+ * @permissionScopeId SCOPE.DC-STORES-MEGA.MANAGE-STORES
953
+ * @permissionScope Manage Stores
954
+ * @permissionScopeId SCOPE.STORES.MANAGE-STORES
955
+ * @permissionScope Read eCommerce - all read permissions
956
+ * @permissionScopeId SCOPE.DC-ECOM-MEGA.READ-ECOM
957
+ * @permissionScope Read Stores - all read permissions
958
+ * @permissionScopeId SCOPE.DC-STORES-MEGA.READ-STORES
959
+ * @permissionScope Manage Restaurants - all permissions
960
+ * @permissionScopeId SCOPE.RESTAURANTS.MEGA-SCOPES
961
+ * @permissionScope Manage eCommerce - all permissions
962
+ * @permissionScopeId SCOPE.DC-ECOM-MEGA.MANAGE-ECOM
963
+ * @permissionId ECOM.DISCOUNT_RULES_READ
964
+ * @webhook
965
+ * @eventType wix.ecom.discounts.v1.discount_rule_deleted
966
+ * @serviceIdentifier com.wix.ecom.discounts.DiscountRuleService
967
+ * @slug deleted
968
+ */
969
+ declare function onDiscountRuleDeleted(handler: (event: DiscountRuleDeletedEnvelope) => void | Promise<void>): void;
894
970
  interface DiscountRuleUpdatedEnvelope {
895
971
  entity: DiscountRule;
896
972
  metadata: EventMetadata;
897
973
  }
974
+ /**
975
+ * Triggered when a discount rule is updated.
976
+ * @permissionScope Manage Stores - all permissions
977
+ * @permissionScopeId SCOPE.DC-STORES-MEGA.MANAGE-STORES
978
+ * @permissionScope Manage Stores
979
+ * @permissionScopeId SCOPE.STORES.MANAGE-STORES
980
+ * @permissionScope Read eCommerce - all read permissions
981
+ * @permissionScopeId SCOPE.DC-ECOM-MEGA.READ-ECOM
982
+ * @permissionScope Read Stores - all read permissions
983
+ * @permissionScopeId SCOPE.DC-STORES-MEGA.READ-STORES
984
+ * @permissionScope Manage Restaurants - all permissions
985
+ * @permissionScopeId SCOPE.RESTAURANTS.MEGA-SCOPES
986
+ * @permissionScope Manage eCommerce - all permissions
987
+ * @permissionScopeId SCOPE.DC-ECOM-MEGA.MANAGE-ECOM
988
+ * @permissionId ECOM.DISCOUNT_RULES_READ
989
+ * @webhook
990
+ * @eventType wix.ecom.discounts.v1.discount_rule_updated
991
+ * @serviceIdentifier com.wix.ecom.discounts.DiscountRuleService
992
+ * @slug updated
993
+ */
994
+ declare function onDiscountRuleUpdated(handler: (event: DiscountRuleUpdatedEnvelope) => void | Promise<void>): void;
995
+ type DiscountRuleNonNullablePaths = `trigger.and.triggers` | `trigger.or.triggers` | `trigger.customTrigger._id` | `trigger.customTrigger.appId` | `trigger.subtotalRange.scopes` | `trigger.subtotalRange.scopes.${number}.catalogItemFilter.catalogAppId` | `trigger.subtotalRange.scopes.${number}.customFilter.appId` | `trigger.subtotalRange.scopes.${number}._id` | `trigger.subtotalRange.scopes.${number}.type` | `trigger.itemQuantityRange.scopes` | `trigger.triggerType` | `discounts.values` | `discounts.values.${number}.percentage` | `discounts.values.${number}.fixedAmount` | `discounts.values.${number}.fixedPrice` | `discounts.values.${number}.targetType` | `discounts.values.${number}.discountType` | `status` | `usageCount`;
996
+ /**
997
+ * Creates a new discount rule.
998
+ *
999
+ *
1000
+ * The `createDiscountRule()` function returns a Promise that resolves to the new discount rule when it's created.
1001
+ * @param discountRule - Discount rule info.
1002
+ * @public
1003
+ * @requiredField discountRule
1004
+ * @requiredField discountRule.discounts
1005
+ * @requiredField discountRule.name
1006
+ * @permissionId ECOM.DISCOUNT_RULES_CREATE
1007
+ * @applicableIdentity APP
1008
+ * @returns Discount rule.
1009
+ * @fqn com.wix.ecom.discounts.DiscountRuleService.CreateDiscountRule
1010
+ */
1011
+ declare function createDiscountRule(discountRule: NonNullablePaths<DiscountRule, `discounts` | `name`>): Promise<NonNullablePaths<DiscountRule, DiscountRuleNonNullablePaths> & {
1012
+ __applicationErrorsType?: CreateDiscountRuleApplicationErrors;
1013
+ __validationErrorsType?: CreateDiscountRuleValidationErrors;
1014
+ }>;
1015
+ /**
1016
+ * Retrieves a discount rule.
1017
+ *
1018
+ *
1019
+ * The `getDiscountRule()` function returns a Promise that resolves when the specified discount rule is retrieved.
1020
+ * @param discountRuleId - ID of the discount rule to retrieve.
1021
+ * @public
1022
+ * @requiredField discountRuleId
1023
+ * @permissionId ECOM.DISCOUNT_RULES_READ
1024
+ * @applicableIdentity APP
1025
+ * @returns The requested discount rule.
1026
+ * @fqn com.wix.ecom.discounts.DiscountRuleService.GetDiscountRule
1027
+ */
1028
+ declare function getDiscountRule(discountRuleId: string): Promise<NonNullablePaths<DiscountRule, DiscountRuleNonNullablePaths>>;
1029
+ /**
1030
+ * Updates a discount rule's properties.
1031
+ *
1032
+ *
1033
+ * The `updateDiscountRule()` function returns a Promise that resolves when the specified discount rule's properties are updated.
1034
+ *
1035
+ * Each time the discount rule is updated, `revision` increments by 1. The existing `revision` must be included when updating the discount rule. This ensures you're working with the latest discount rule information, and it prevents unintended overwrites.
1036
+ * @param _id - Discount rule ID.
1037
+ * @public
1038
+ * @requiredField _id
1039
+ * @requiredField discountRule
1040
+ * @requiredField discountRule.revision
1041
+ * @param discountRule - Discount rule info.
1042
+ * @param options - Discount rule info.
1043
+ * @permissionId ECOM.DISCOUNT_RULES_UPDATE
1044
+ * @applicableIdentity APP
1045
+ * @returns Updated discount rule.
1046
+ * @fqn com.wix.ecom.discounts.DiscountRuleService.UpdateDiscountRule
1047
+ */
1048
+ declare function updateDiscountRule(_id: string, discountRule: NonNullablePaths<UpdateDiscountRule, `revision`>): Promise<NonNullablePaths<DiscountRule, DiscountRuleNonNullablePaths>>;
898
1049
  interface UpdateDiscountRule {
899
1050
  /**
900
1051
  * Discount rule ID.
@@ -960,6 +1111,40 @@ interface UpdateDiscountRule {
960
1111
  */
961
1112
  usageCount?: number;
962
1113
  }
1114
+ /**
1115
+ * Deletes a discount rule.
1116
+ *
1117
+ *
1118
+ * The `deleteDiscountRule()` function returns a Promise that resolves when the specified discount rule is deleted.
1119
+ * @param discountRuleId - ID of the discount rule to delete.
1120
+ * @public
1121
+ * @requiredField discountRuleId
1122
+ * @permissionId ECOM.DISCOUNT_RULES_DELETE
1123
+ * @applicableIdentity APP
1124
+ * @fqn com.wix.ecom.discounts.DiscountRuleService.DeleteDiscountRule
1125
+ */
1126
+ declare function deleteDiscountRule(discountRuleId: string): Promise<void>;
1127
+ /**
1128
+ * Creates a query to retrieve a list of discount rules.
1129
+ *
1130
+ *
1131
+ * The `queryDiscountRules()` function builds a query to retrieve a list of up to 100 discount rules, and returns a [`DiscountRulesQueryBuilder`](#discountrulesquerybuilder) object.
1132
+ *
1133
+ * The returned object contains the query definition which is typically used to run the query using the [`find()`](/discount-rules/discount-rules-query-builder/find) function.
1134
+ *
1135
+ * You can refine the query by chaining `DiscountRulesQueryBuilder` functions onto the query. `DiscountRulesQueryBuilder` functions enable you to sort, filter, and control the results queryDiscountRules() returns.
1136
+ *
1137
+ * By default, `queryDiscountRules()` sorts results by [`ascending("_id")`](/discount-rules/discount-rules-query-builder/ascending) by default. This can be overridden.
1138
+ *
1139
+ * To learn how to query posts, refer to the table below.
1140
+ *
1141
+ * The following `DiscountRulesQueryBuilder` functions are supported for the `queryDiscountRules()` function. For a full description of the discount rule object, see the object returned for the [`items`](/discount-rules/discount-rules-query-result/items) property in the `DiscountRulesQueryResult`.
1142
+ * @public
1143
+ * @permissionId ECOM.DISCOUNT_RULES_READ
1144
+ * @applicableIdentity APP
1145
+ * @fqn com.wix.ecom.discounts.DiscountRuleService.QueryDiscountRules
1146
+ */
1147
+ declare function queryDiscountRules(): DiscountRulesQueryBuilder;
963
1148
  interface QueryCursorResult {
964
1149
  cursors: Cursors;
965
1150
  hasNext: () => boolean;
@@ -1019,4 +1204,4 @@ interface DiscountRulesQueryBuilder {
1019
1204
  find: () => Promise<DiscountRulesQueryResult>;
1020
1205
  }
1021
1206
 
1022
- export { type GetAppliedDiscountsRequest as $, AppliedSubjectType as A, type BuyXGetYInfo as B, type CatalogItemFilter as C, type DiscountRule as D, type ExtendedFields as E, type CreateDiscountRuleResponse as F, type GetDiscountRuleRequest as G, type GetDiscountRuleResponse as H, type ItemQuantityRange as I, type UpdateDiscountRuleRequest as J, type UpdateDiscountRuleResponse as K, type DeleteDiscountRuleRequest as L, type DeleteDiscountRuleResponse as M, type PlatformQueryPagingMethodOneOf as N, type Or as O, type PlatformQuery as P, type QueryDiscountRulesRequest as Q, type Sorting as R, ScopeType as S, TriggerType as T, type UpdateDiscountRule as U, type PlatformPaging as V, WebhookIdentityType as W, type CursorPaging as X, type QueryDiscountRulesResponse as Y, type PlatformPagingMetadata as Z, type Cursors as _, type DiscountRulesQueryBuilder as a, type LineItem as a0, type CatalogReference as a1, type GetAppliedDiscountsResponse as a2, type AppliedDiscount as a3, type AppliedDiscountRule as a4, type DiscountRuleName as a5, type MultiCurrencyPrice as a6, type DomainEvent as a7, type DomainEventBodyOneOf as a8, type EntityCreatedEvent as a9, type RestoreInfo as aa, type EntityUpdatedEvent as ab, type EntityDeletedEvent as ac, type ActionEvent as ad, type Empty as ae, type DiscountRuleUsageLimitReached as af, type MessageEnvelope as ag, type IdentificationData as ah, type IdentificationDataIdOneOf as ai, type BaseEventMetadata as aj, type EventMetadata as ak, type DiscountRulesQueryResult as al, type DiscountRuleCreatedEnvelope as b, type DiscountRuleDeletedEnvelope as c, type DiscountRuleUpdatedEnvelope as d, Type as e, DiscountType as f, Status as g, SortOrder as h, type DiscountTrigger as i, type DiscountTriggerTriggerOneOf as j, type Scope as k, type ScopeScopeItemsOneOf as l, type CustomFilter as m, type And as n, type Custom as o, type SubtotalRange as p, type ActiveTimeInfo as q, type Discounts as r, type Discount as s, type DiscountDiscountOneOf as t, type SpecificItemsInfo as u, type CustomerBuy as v, type CustomerBuyConditionOneOf as w, type CustomerGet as x, type DiscountSettings as y, type CreateDiscountRuleRequest as z };
1207
+ export { type ActionEvent, type ActiveTimeInfo, type And, type AppliedDiscount, type AppliedDiscountRule, AppliedSubjectType, type AppliedSubjectTypeWithLiterals, type BaseEventMetadata, type BuyXGetYInfo, type CatalogItemFilter, type CatalogReference, type CreateDiscountRuleApplicationErrors, type CreateDiscountRuleRequest, type CreateDiscountRuleResponse, type CreateDiscountRuleValidationErrors, type CursorPaging, type Cursors, type Custom, type CustomFilter, type CustomerBuy, type CustomerBuyConditionOneOf, type CustomerGet, type DeleteDiscountRuleRequest, type DeleteDiscountRuleResponse, type Discount, type DiscountDiscountOneOf, type DiscountRule, type DiscountRuleCreatedEnvelope, type DiscountRuleDeletedEnvelope, type DiscountRuleName, type DiscountRuleUpdatedEnvelope, type DiscountRuleUsageLimitReached, type DiscountRulesQueryBuilder, type DiscountRulesQueryResult, type DiscountSettings, type DiscountTrigger, type DiscountTriggerTriggerOneOf, DiscountType, type DiscountTypeWithLiterals, type Discounts, type DomainEvent, type DomainEventBodyOneOf, type Empty, type EntityCreatedEvent, type EntityDeletedEvent, type EntityUpdatedEvent, type EventMetadata, type ExtendedFields, type GetAppliedDiscountsRequest, type GetAppliedDiscountsResponse, type GetDiscountRuleRequest, type GetDiscountRuleResponse, type IdentificationData, type IdentificationDataIdOneOf, type ItemQuantityRange, type LineItem, type MessageEnvelope, type MultiCurrencyPrice, type Or, type PlatformPaging, type PlatformPagingMetadata, type PlatformQuery, type PlatformQueryPagingMethodOneOf, type QueryDiscountRulesRequest, type QueryDiscountRulesResponse, type RestoreInfo, type Scope, type ScopeScopeItemsOneOf, ScopeType, type ScopeTypeWithLiterals, SortOrder, type SortOrderWithLiterals, type Sorting, type SpecificItemsInfo, Status, type StatusWithLiterals, type SubtotalRange, TriggerType, type TriggerTypeWithLiterals, Type, type TypeWithLiterals, type UpdateDiscountRule, type UpdateDiscountRuleRequest, type UpdateDiscountRuleResponse, WebhookIdentityType, type WebhookIdentityTypeWithLiterals, createDiscountRule, deleteDiscountRule, getDiscountRule, onDiscountRuleCreated, onDiscountRuleDeleted, onDiscountRuleUpdated, queryDiscountRules, updateDiscountRule };
@@ -0,0 +1,445 @@
1
+ // src/ecom-discounts-v1-discount-rule-discount-rules.universal.ts
2
+ import { transformError as sdkTransformError } from "@wix/sdk-runtime/transform-error";
3
+ import { queryBuilder } from "@wix/sdk-runtime/query-builder";
4
+ import {
5
+ renameKeysFromSDKRequestToRESTRequest,
6
+ renameKeysFromRESTResponseToSDKResponse
7
+ } from "@wix/sdk-runtime/rename-all-nested-keys";
8
+
9
+ // src/ecom-discounts-v1-discount-rule-discount-rules.http.ts
10
+ import { toURLSearchParams } from "@wix/sdk-runtime/rest-modules";
11
+ import { transformSDKFloatToRESTFloat } from "@wix/sdk-runtime/transformations/float";
12
+ import { transformRESTFloatToSDKFloat } from "@wix/sdk-runtime/transformations/float";
13
+ import { transformSDKTimestampToRESTTimestamp } from "@wix/sdk-runtime/transformations/timestamp";
14
+ import { transformRESTTimestampToSDKTimestamp } from "@wix/sdk-runtime/transformations/timestamp";
15
+ import { transformSDKFieldMaskToRESTFieldMask } from "@wix/sdk-runtime/transformations/field-mask";
16
+ import { transformPaths } from "@wix/sdk-runtime/transformations/transform-paths";
17
+ import { resolveUrl } from "@wix/sdk-runtime/rest-modules";
18
+ function resolveComWixEcomDiscountsDiscountRuleServiceUrl(opts) {
19
+ const domainToMappings = {
20
+ "api._api_base_domain_": [
21
+ {
22
+ srcPath: "/discount-rules-service",
23
+ destPath: ""
24
+ }
25
+ ],
26
+ "www.wixapis.com": [
27
+ {
28
+ srcPath: "/ecom/v1/discount-rules",
29
+ destPath: "/v1/discount-rules"
30
+ }
31
+ ],
32
+ "manage._base_domain_": [
33
+ {
34
+ srcPath: "/ecom/v1/discount-rules",
35
+ destPath: "/v1/discount-rules"
36
+ },
37
+ {
38
+ srcPath: "/v1/discount-rules",
39
+ destPath: "/v1/discount-rules"
40
+ }
41
+ ]
42
+ };
43
+ return resolveUrl(Object.assign(opts, { domainToMappings }));
44
+ }
45
+ var PACKAGE_NAME = "@wix/auto_sdk_ecom_discount-rules";
46
+ function createDiscountRule(payload) {
47
+ function __createDiscountRule({ host }) {
48
+ const serializedData = transformPaths(payload, [
49
+ {
50
+ transformFn: transformSDKTimestampToRESTTimestamp,
51
+ paths: [
52
+ { path: "discountRule.createdDate" },
53
+ { path: "discountRule.updatedDate" },
54
+ { path: "discountRule.activeTimeInfo.start" },
55
+ { path: "discountRule.activeTimeInfo.end" }
56
+ ]
57
+ },
58
+ {
59
+ transformFn: transformSDKFloatToRESTFloat,
60
+ paths: [{ path: "discountRule.discounts.values.percentage" }]
61
+ }
62
+ ]);
63
+ const metadata = {
64
+ entityFqdn: "wix.ecom.discounts.v1.discount_rule",
65
+ method: "POST",
66
+ methodFqn: "com.wix.ecom.discounts.DiscountRuleService.CreateDiscountRule",
67
+ packageName: PACKAGE_NAME,
68
+ url: resolveComWixEcomDiscountsDiscountRuleServiceUrl({
69
+ protoPath: "/v1/discount-rules",
70
+ data: serializedData,
71
+ host
72
+ }),
73
+ data: serializedData,
74
+ transformResponse: (payload2) => transformPaths(payload2, [
75
+ {
76
+ transformFn: transformRESTTimestampToSDKTimestamp,
77
+ paths: [
78
+ { path: "discountRule.createdDate" },
79
+ { path: "discountRule.updatedDate" },
80
+ { path: "discountRule.activeTimeInfo.start" },
81
+ { path: "discountRule.activeTimeInfo.end" }
82
+ ]
83
+ },
84
+ {
85
+ transformFn: transformRESTFloatToSDKFloat,
86
+ paths: [{ path: "discountRule.discounts.values.percentage" }]
87
+ }
88
+ ])
89
+ };
90
+ return metadata;
91
+ }
92
+ return __createDiscountRule;
93
+ }
94
+ function getDiscountRule(payload) {
95
+ function __getDiscountRule({ host }) {
96
+ const metadata = {
97
+ entityFqdn: "wix.ecom.discounts.v1.discount_rule",
98
+ method: "GET",
99
+ methodFqn: "com.wix.ecom.discounts.DiscountRuleService.GetDiscountRule",
100
+ packageName: PACKAGE_NAME,
101
+ url: resolveComWixEcomDiscountsDiscountRuleServiceUrl({
102
+ protoPath: "/v1/discount-rules/{discountRuleId}",
103
+ data: payload,
104
+ host
105
+ }),
106
+ params: toURLSearchParams(payload),
107
+ transformResponse: (payload2) => transformPaths(payload2, [
108
+ {
109
+ transformFn: transformRESTTimestampToSDKTimestamp,
110
+ paths: [
111
+ { path: "discountRule.createdDate" },
112
+ { path: "discountRule.updatedDate" },
113
+ { path: "discountRule.activeTimeInfo.start" },
114
+ { path: "discountRule.activeTimeInfo.end" }
115
+ ]
116
+ },
117
+ {
118
+ transformFn: transformRESTFloatToSDKFloat,
119
+ paths: [{ path: "discountRule.discounts.values.percentage" }]
120
+ }
121
+ ])
122
+ };
123
+ return metadata;
124
+ }
125
+ return __getDiscountRule;
126
+ }
127
+ function updateDiscountRule(payload) {
128
+ function __updateDiscountRule({ host }) {
129
+ const serializedData = transformPaths(payload, [
130
+ {
131
+ transformFn: transformSDKFieldMaskToRESTFieldMask,
132
+ paths: [{ path: "mask" }]
133
+ },
134
+ {
135
+ transformFn: transformSDKTimestampToRESTTimestamp,
136
+ paths: [
137
+ { path: "discountRule.createdDate" },
138
+ { path: "discountRule.updatedDate" },
139
+ { path: "discountRule.activeTimeInfo.start" },
140
+ { path: "discountRule.activeTimeInfo.end" }
141
+ ]
142
+ },
143
+ {
144
+ transformFn: transformSDKFloatToRESTFloat,
145
+ paths: [{ path: "discountRule.discounts.values.percentage" }]
146
+ }
147
+ ]);
148
+ const metadata = {
149
+ entityFqdn: "wix.ecom.discounts.v1.discount_rule",
150
+ method: "PATCH",
151
+ methodFqn: "com.wix.ecom.discounts.DiscountRuleService.UpdateDiscountRule",
152
+ packageName: PACKAGE_NAME,
153
+ url: resolveComWixEcomDiscountsDiscountRuleServiceUrl({
154
+ protoPath: "/v1/discount-rules/{discountRule.id}",
155
+ data: serializedData,
156
+ host
157
+ }),
158
+ data: serializedData,
159
+ transformResponse: (payload2) => transformPaths(payload2, [
160
+ {
161
+ transformFn: transformRESTTimestampToSDKTimestamp,
162
+ paths: [
163
+ { path: "discountRule.createdDate" },
164
+ { path: "discountRule.updatedDate" },
165
+ { path: "discountRule.activeTimeInfo.start" },
166
+ { path: "discountRule.activeTimeInfo.end" }
167
+ ]
168
+ },
169
+ {
170
+ transformFn: transformRESTFloatToSDKFloat,
171
+ paths: [{ path: "discountRule.discounts.values.percentage" }]
172
+ }
173
+ ])
174
+ };
175
+ return metadata;
176
+ }
177
+ return __updateDiscountRule;
178
+ }
179
+ function deleteDiscountRule(payload) {
180
+ function __deleteDiscountRule({ host }) {
181
+ const metadata = {
182
+ entityFqdn: "wix.ecom.discounts.v1.discount_rule",
183
+ method: "DELETE",
184
+ methodFqn: "com.wix.ecom.discounts.DiscountRuleService.DeleteDiscountRule",
185
+ packageName: PACKAGE_NAME,
186
+ url: resolveComWixEcomDiscountsDiscountRuleServiceUrl({
187
+ protoPath: "/v1/discount-rules/{discountRuleId}",
188
+ data: payload,
189
+ host
190
+ }),
191
+ params: toURLSearchParams(payload)
192
+ };
193
+ return metadata;
194
+ }
195
+ return __deleteDiscountRule;
196
+ }
197
+ function queryDiscountRules(payload) {
198
+ function __queryDiscountRules({ host }) {
199
+ const metadata = {
200
+ entityFqdn: "wix.ecom.discounts.v1.discount_rule",
201
+ method: "POST",
202
+ methodFqn: "com.wix.ecom.discounts.DiscountRuleService.QueryDiscountRules",
203
+ packageName: PACKAGE_NAME,
204
+ url: resolveComWixEcomDiscountsDiscountRuleServiceUrl({
205
+ protoPath: "/v1/discount-rules/query",
206
+ data: payload,
207
+ host
208
+ }),
209
+ data: payload,
210
+ transformResponse: (payload2) => transformPaths(payload2, [
211
+ {
212
+ transformFn: transformRESTTimestampToSDKTimestamp,
213
+ paths: [
214
+ { path: "discountRules.createdDate" },
215
+ { path: "discountRules.updatedDate" },
216
+ { path: "discountRules.activeTimeInfo.start" },
217
+ { path: "discountRules.activeTimeInfo.end" }
218
+ ]
219
+ },
220
+ {
221
+ transformFn: transformRESTFloatToSDKFloat,
222
+ paths: [{ path: "discountRules.discounts.values.percentage" }]
223
+ }
224
+ ])
225
+ };
226
+ return metadata;
227
+ }
228
+ return __queryDiscountRules;
229
+ }
230
+
231
+ // src/ecom-discounts-v1-discount-rule-discount-rules.universal.ts
232
+ import { transformPaths as transformPaths2 } from "@wix/sdk-runtime/transformations/transform-paths";
233
+ var ScopeType = /* @__PURE__ */ ((ScopeType2) => {
234
+ ScopeType2["UNDEFINED_SCOPE"] = "UNDEFINED_SCOPE";
235
+ ScopeType2["CATALOG_ITEM"] = "CATALOG_ITEM";
236
+ ScopeType2["CUSTOM_FILTER"] = "CUSTOM_FILTER";
237
+ return ScopeType2;
238
+ })(ScopeType || {});
239
+ var TriggerType = /* @__PURE__ */ ((TriggerType2) => {
240
+ TriggerType2["UNDEFINED"] = "UNDEFINED";
241
+ TriggerType2["AND"] = "AND";
242
+ TriggerType2["SUBTOTAL_RANGE"] = "SUBTOTAL_RANGE";
243
+ TriggerType2["ITEM_QUANTITY_RANGE"] = "ITEM_QUANTITY_RANGE";
244
+ TriggerType2["CUSTOM"] = "CUSTOM";
245
+ TriggerType2["OR"] = "OR";
246
+ return TriggerType2;
247
+ })(TriggerType || {});
248
+ var Type = /* @__PURE__ */ ((Type2) => {
249
+ Type2["UNDEFINED"] = "UNDEFINED";
250
+ Type2["SPECIFIC_ITEMS"] = "SPECIFIC_ITEMS";
251
+ return Type2;
252
+ })(Type || {});
253
+ var DiscountType = /* @__PURE__ */ ((DiscountType2) => {
254
+ DiscountType2["UNDEFINED"] = "UNDEFINED";
255
+ DiscountType2["PERCENTAGE"] = "PERCENTAGE";
256
+ DiscountType2["FIXED_AMOUNT"] = "FIXED_AMOUNT";
257
+ DiscountType2["FIXED_PRICE"] = "FIXED_PRICE";
258
+ return DiscountType2;
259
+ })(DiscountType || {});
260
+ var Status = /* @__PURE__ */ ((Status2) => {
261
+ Status2["UNDEFINED"] = "UNDEFINED";
262
+ Status2["LIVE"] = "LIVE";
263
+ Status2["EXPIRED"] = "EXPIRED";
264
+ Status2["PENDING"] = "PENDING";
265
+ return Status2;
266
+ })(Status || {});
267
+ var AppliedSubjectType = /* @__PURE__ */ ((AppliedSubjectType2) => {
268
+ AppliedSubjectType2["UNDEFINED"] = "UNDEFINED";
269
+ AppliedSubjectType2["ALL_ITEMS"] = "ALL_ITEMS";
270
+ AppliedSubjectType2["LOWEST_PRICED_ITEM"] = "LOWEST_PRICED_ITEM";
271
+ return AppliedSubjectType2;
272
+ })(AppliedSubjectType || {});
273
+ var SortOrder = /* @__PURE__ */ ((SortOrder2) => {
274
+ SortOrder2["ASC"] = "ASC";
275
+ SortOrder2["DESC"] = "DESC";
276
+ return SortOrder2;
277
+ })(SortOrder || {});
278
+ var WebhookIdentityType = /* @__PURE__ */ ((WebhookIdentityType2) => {
279
+ WebhookIdentityType2["UNKNOWN"] = "UNKNOWN";
280
+ WebhookIdentityType2["ANONYMOUS_VISITOR"] = "ANONYMOUS_VISITOR";
281
+ WebhookIdentityType2["MEMBER"] = "MEMBER";
282
+ WebhookIdentityType2["WIX_USER"] = "WIX_USER";
283
+ WebhookIdentityType2["APP"] = "APP";
284
+ return WebhookIdentityType2;
285
+ })(WebhookIdentityType || {});
286
+ async function createDiscountRule2(discountRule) {
287
+ const { httpClient, sideEffects } = arguments[1];
288
+ const payload = renameKeysFromSDKRequestToRESTRequest({
289
+ discountRule
290
+ });
291
+ const reqOpts = createDiscountRule(payload);
292
+ sideEffects?.onSiteCall?.();
293
+ try {
294
+ const result = await httpClient.request(reqOpts);
295
+ sideEffects?.onSuccess?.(result);
296
+ return renameKeysFromRESTResponseToSDKResponse(result.data)?.discountRule;
297
+ } catch (err) {
298
+ const transformedError = sdkTransformError(
299
+ err,
300
+ {
301
+ spreadPathsToArguments: {},
302
+ explicitPathsToArguments: { discountRule: "$[0]" },
303
+ singleArgumentUnchanged: false
304
+ },
305
+ ["discountRule"]
306
+ );
307
+ sideEffects?.onError?.(err);
308
+ throw transformedError;
309
+ }
310
+ }
311
+ async function getDiscountRule2(discountRuleId) {
312
+ const { httpClient, sideEffects } = arguments[1];
313
+ const payload = renameKeysFromSDKRequestToRESTRequest({
314
+ discountRuleId
315
+ });
316
+ const reqOpts = getDiscountRule(payload);
317
+ sideEffects?.onSiteCall?.();
318
+ try {
319
+ const result = await httpClient.request(reqOpts);
320
+ sideEffects?.onSuccess?.(result);
321
+ return renameKeysFromRESTResponseToSDKResponse(result.data)?.discountRule;
322
+ } catch (err) {
323
+ const transformedError = sdkTransformError(
324
+ err,
325
+ {
326
+ spreadPathsToArguments: {},
327
+ explicitPathsToArguments: { discountRuleId: "$[0]" },
328
+ singleArgumentUnchanged: false
329
+ },
330
+ ["discountRuleId"]
331
+ );
332
+ sideEffects?.onError?.(err);
333
+ throw transformedError;
334
+ }
335
+ }
336
+ async function updateDiscountRule2(_id, discountRule) {
337
+ const { httpClient, sideEffects } = arguments[2];
338
+ const payload = renameKeysFromSDKRequestToRESTRequest({
339
+ discountRule: { ...discountRule, id: _id }
340
+ });
341
+ const reqOpts = updateDiscountRule(payload);
342
+ sideEffects?.onSiteCall?.();
343
+ try {
344
+ const result = await httpClient.request(reqOpts);
345
+ sideEffects?.onSuccess?.(result);
346
+ return renameKeysFromRESTResponseToSDKResponse(result.data)?.discountRule;
347
+ } catch (err) {
348
+ const transformedError = sdkTransformError(
349
+ err,
350
+ {
351
+ spreadPathsToArguments: { discountRule: "$[1]" },
352
+ explicitPathsToArguments: { "discountRule.id": "$[0]" },
353
+ singleArgumentUnchanged: false
354
+ },
355
+ ["_id", "discountRule"]
356
+ );
357
+ sideEffects?.onError?.(err);
358
+ throw transformedError;
359
+ }
360
+ }
361
+ async function deleteDiscountRule2(discountRuleId) {
362
+ const { httpClient, sideEffects } = arguments[1];
363
+ const payload = renameKeysFromSDKRequestToRESTRequest({
364
+ discountRuleId
365
+ });
366
+ const reqOpts = deleteDiscountRule(payload);
367
+ sideEffects?.onSiteCall?.();
368
+ try {
369
+ const result = await httpClient.request(reqOpts);
370
+ sideEffects?.onSuccess?.(result);
371
+ } catch (err) {
372
+ const transformedError = sdkTransformError(
373
+ err,
374
+ {
375
+ spreadPathsToArguments: {},
376
+ explicitPathsToArguments: { discountRuleId: "$[0]" },
377
+ singleArgumentUnchanged: false
378
+ },
379
+ ["discountRuleId"]
380
+ );
381
+ sideEffects?.onError?.(err);
382
+ throw transformedError;
383
+ }
384
+ }
385
+ function queryDiscountRules2() {
386
+ const { httpClient, sideEffects } = arguments[0];
387
+ return queryBuilder({
388
+ func: async (payload) => {
389
+ const reqOpts = queryDiscountRules(payload);
390
+ sideEffects?.onSiteCall?.();
391
+ try {
392
+ const result = await httpClient.request(reqOpts);
393
+ sideEffects?.onSuccess?.(result);
394
+ return result;
395
+ } catch (err) {
396
+ sideEffects?.onError?.(err);
397
+ throw err;
398
+ }
399
+ },
400
+ requestTransformer: (query) => {
401
+ const args = [query, {}];
402
+ return renameKeysFromSDKRequestToRESTRequest({
403
+ ...args?.[1],
404
+ query: args?.[0]
405
+ });
406
+ },
407
+ responseTransformer: ({
408
+ data
409
+ }) => {
410
+ const transformedData = renameKeysFromRESTResponseToSDKResponse(
411
+ transformPaths2(data, [])
412
+ );
413
+ return {
414
+ items: transformedData?.discountRules,
415
+ pagingMetadata: transformedData?.pagingMetadata
416
+ };
417
+ },
418
+ errorTransformer: (err) => {
419
+ const transformedError = sdkTransformError(err, {
420
+ spreadPathsToArguments: {},
421
+ explicitPathsToArguments: { query: "$[0]" },
422
+ singleArgumentUnchanged: false
423
+ });
424
+ throw transformedError;
425
+ },
426
+ pagingMethod: "CURSOR",
427
+ transformationPaths: {}
428
+ });
429
+ }
430
+ export {
431
+ AppliedSubjectType,
432
+ DiscountType,
433
+ ScopeType,
434
+ SortOrder,
435
+ Status,
436
+ TriggerType,
437
+ Type,
438
+ WebhookIdentityType,
439
+ createDiscountRule2 as createDiscountRule,
440
+ deleteDiscountRule2 as deleteDiscountRule,
441
+ getDiscountRule2 as getDiscountRule,
442
+ queryDiscountRules2 as queryDiscountRules,
443
+ updateDiscountRule2 as updateDiscountRule
444
+ };
445
+ //# sourceMappingURL=index.typings.mjs.map