@activepieces/piece-katana 0.1.4 → 0.1.6

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 +0,0 @@
1
- export * from './create-customer';
2
- export * from './create-sales-order';
3
- export * from './find-customer';
@@ -1,7 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const tslib_1 = require("tslib");
4
- tslib_1.__exportStar(require("./create-customer"), exports);
5
- tslib_1.__exportStar(require("./create-sales-order"), exports);
6
- tslib_1.__exportStar(require("./find-customer"), exports);
7
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../../../packages/pieces/community/katana/src/lib/actions/index.ts"],"names":[],"mappings":";;;AAAA,4DAAkC;AAClC,+DAAqC;AACrC,0DAAgC"}
@@ -1 +0,0 @@
1
- export declare const katanaAuth: import("@activepieces/pieces-framework").SecretTextProperty<true>;
@@ -1,41 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.katanaAuth = void 0;
4
- const tslib_1 = require("tslib");
5
- const pieces_framework_1 = require("@activepieces/pieces-framework");
6
- const pieces_common_1 = require("@activepieces/pieces-common");
7
- const constants_1 = require("./constants");
8
- exports.katanaAuth = pieces_framework_1.PieceAuth.SecretText({
9
- displayName: 'API Key',
10
- required: true,
11
- description: `
12
- To generate your API key:
13
-
14
- 1. Log in to your Katana account
15
- 2. Go to **Settings > API**
16
- 3. Select **Add new API key**
17
- 4. Copy and paste the key here
18
- `,
19
- validate: (_a) => tslib_1.__awaiter(void 0, [_a], void 0, function* ({ auth }) {
20
- try {
21
- yield pieces_common_1.httpClient.sendRequest({
22
- method: pieces_common_1.HttpMethod.GET,
23
- url: `${constants_1.BASE_URL}/products`,
24
- authentication: {
25
- type: pieces_common_1.AuthenticationType.BEARER_TOKEN,
26
- token: auth,
27
- },
28
- });
29
- return {
30
- valid: true,
31
- };
32
- }
33
- catch (_b) {
34
- return {
35
- valid: false,
36
- error: 'Invalid API Key',
37
- };
38
- }
39
- }),
40
- });
41
- //# sourceMappingURL=auth.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"auth.js","sourceRoot":"","sources":["../../../../../../../../packages/pieces/community/katana/src/lib/common/auth.ts"],"names":[],"mappings":";;;;AAAA,qEAA2D;AAC3D,+DAIqC;AACrC,2CAAuC;AAE1B,QAAA,UAAU,GAAG,4BAAS,CAAC,UAAU,CAAC;IAC7C,WAAW,EAAE,SAAS;IACtB,QAAQ,EAAE,IAAI;IACd,WAAW,EAAE;;;;;;;CAOd;IACC,QAAQ,EAAE,KAAiB,EAAE,oDAAZ,EAAE,IAAI,EAAE;QACvB,IAAI,CAAC;YACH,MAAM,0BAAU,CAAC,WAAW,CAAC;gBAC3B,MAAM,EAAE,0BAAU,CAAC,GAAG;gBACtB,GAAG,EAAE,GAAG,oBAAQ,WAAW;gBAC3B,cAAc,EAAE;oBACd,IAAI,EAAE,kCAAkB,CAAC,YAAY;oBACrC,KAAK,EAAE,IAAI;iBACZ;aACF,CAAC,CAAC;YAEH,OAAO;gBACL,KAAK,EAAE,IAAI;aACZ,CAAC;QACJ,CAAC;QAAC,WAAM,CAAC;YACP,OAAO;gBACL,KAAK,EAAE,KAAK;gBACZ,KAAK,EAAE,iBAAiB;aACzB,CAAC;QACJ,CAAC;IACH,CAAC,CAAA;CACF,CAAC,CAAC"}
@@ -1,2 +0,0 @@
1
- import { HttpMethod } from '@activepieces/pieces-common';
2
- export declare function katanaApiCall<T>(auth: string, method: HttpMethod, endpoint: string, body?: unknown, queryParams?: Record<string, string>): Promise<T>;
@@ -1,22 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.katanaApiCall = katanaApiCall;
4
- const tslib_1 = require("tslib");
5
- const pieces_common_1 = require("@activepieces/pieces-common");
6
- const constants_1 = require("./constants");
7
- function katanaApiCall(auth, method, endpoint, body, queryParams) {
8
- return tslib_1.__awaiter(this, void 0, void 0, function* () {
9
- const response = yield pieces_common_1.httpClient.sendRequest({
10
- method,
11
- url: `${constants_1.BASE_URL}${endpoint}`,
12
- authentication: {
13
- type: pieces_common_1.AuthenticationType.BEARER_TOKEN,
14
- token: auth,
15
- },
16
- body,
17
- queryParams,
18
- });
19
- return response.body;
20
- });
21
- }
22
- //# sourceMappingURL=client.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"client.js","sourceRoot":"","sources":["../../../../../../../../packages/pieces/community/katana/src/lib/common/client.ts"],"names":[],"mappings":";;AAOA,sCAmBC;;AA1BD,+DAIqC;AACrC,2CAAuC;AAEvC,SAAsB,aAAa,CACjC,IAAY,EACZ,MAAkB,EAClB,QAAgB,EAChB,IAAc,EACd,WAAoC;;QAEpC,MAAM,QAAQ,GAAG,MAAM,0BAAU,CAAC,WAAW,CAAI;YAC/C,MAAM;YACN,GAAG,EAAE,GAAG,oBAAQ,GAAG,QAAQ,EAAE;YAC7B,cAAc,EAAE;gBACd,IAAI,EAAE,kCAAkB,CAAC,YAAY;gBACrC,KAAK,EAAE,IAAI;aACZ;YACD,IAAI;YACJ,WAAW;SACZ,CAAC,CAAC;QAEH,OAAO,QAAQ,CAAC,IAAI,CAAC;IACvB,CAAC;CAAA"}
@@ -1 +0,0 @@
1
- export declare const BASE_URL = "https://api.katanamrp.com/v1";
@@ -1,5 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.BASE_URL = void 0;
4
- exports.BASE_URL = 'https://api.katanamrp.com/v1';
5
- //# sourceMappingURL=constants.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../../../../../../packages/pieces/community/katana/src/lib/common/constants.ts"],"names":[],"mappings":";;;AAAa,QAAA,QAAQ,GAAG,8BAA8B,CAAC"}
@@ -1,4 +0,0 @@
1
- export * from './auth';
2
- export * from './constants';
3
- export * from './client';
4
- export * from './props';
@@ -1,8 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const tslib_1 = require("tslib");
4
- tslib_1.__exportStar(require("./auth"), exports);
5
- tslib_1.__exportStar(require("./constants"), exports);
6
- tslib_1.__exportStar(require("./client"), exports);
7
- tslib_1.__exportStar(require("./props"), exports);
8
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../../../packages/pieces/community/katana/src/lib/common/index.ts"],"names":[],"mappings":";;;AAAA,iDAAuB;AACvB,sDAA4B;AAC5B,mDAAyB;AACzB,kDAAwB"}
@@ -1,5 +0,0 @@
1
- export declare const customerDropdown: import("@activepieces/pieces-framework").DropdownProperty<number, true, import("@activepieces/pieces-framework").SecretTextProperty<true>>;
2
- export declare const variantDropdown: import("@activepieces/pieces-framework").DropdownProperty<number, true, import("@activepieces/pieces-framework").SecretTextProperty<true>>;
3
- export declare const taxRateDropdown: import("@activepieces/pieces-framework").DropdownProperty<number, false, import("@activepieces/pieces-framework").SecretTextProperty<true>>;
4
- export declare const locationDropdown: import("@activepieces/pieces-framework").DropdownProperty<number, false, import("@activepieces/pieces-framework").SecretTextProperty<true>>;
5
- export declare const locationDropdownRequired: import("@activepieces/pieces-framework").DropdownProperty<number, true, import("@activepieces/pieces-framework").SecretTextProperty<true>>;
@@ -1,212 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.locationDropdownRequired = exports.locationDropdown = exports.taxRateDropdown = exports.variantDropdown = exports.customerDropdown = void 0;
4
- const tslib_1 = require("tslib");
5
- const pieces_framework_1 = require("@activepieces/pieces-framework");
6
- const pieces_common_1 = require("@activepieces/pieces-common");
7
- const auth_1 = require("./auth");
8
- const constants_1 = require("./constants");
9
- exports.customerDropdown = pieces_framework_1.Property.Dropdown({
10
- displayName: 'Customer',
11
- description: 'Select the customer.',
12
- required: true,
13
- refreshers: [],
14
- auth: auth_1.katanaAuth,
15
- options: (_a) => tslib_1.__awaiter(void 0, [_a], void 0, function* ({ auth }) {
16
- if (!auth) {
17
- return {
18
- disabled: true,
19
- placeholder: 'Connect your account first',
20
- options: [],
21
- };
22
- }
23
- try {
24
- const response = yield pieces_common_1.httpClient.sendRequest({
25
- method: pieces_common_1.HttpMethod.GET,
26
- url: `${constants_1.BASE_URL}/customers`,
27
- authentication: {
28
- type: pieces_common_1.AuthenticationType.BEARER_TOKEN,
29
- token: auth.secret_text,
30
- },
31
- });
32
- const customers = Array.isArray(response.body) ? response.body : [];
33
- return {
34
- disabled: false,
35
- options: customers.map((customer) => ({
36
- label: customer.name,
37
- value: customer.id,
38
- })),
39
- };
40
- }
41
- catch (_b) {
42
- return {
43
- disabled: true,
44
- placeholder: 'Failed to load customers',
45
- options: [],
46
- };
47
- }
48
- }),
49
- });
50
- exports.variantDropdown = pieces_framework_1.Property.Dropdown({
51
- displayName: 'Product Variant',
52
- description: 'Select the product variant.',
53
- required: true,
54
- refreshers: [],
55
- auth: auth_1.katanaAuth,
56
- options: (_a) => tslib_1.__awaiter(void 0, [_a], void 0, function* ({ auth }) {
57
- if (!auth) {
58
- return {
59
- disabled: true,
60
- placeholder: 'Connect your account first',
61
- options: [],
62
- };
63
- }
64
- try {
65
- const response = yield pieces_common_1.httpClient.sendRequest({
66
- method: pieces_common_1.HttpMethod.GET,
67
- url: `${constants_1.BASE_URL}/variants`,
68
- authentication: {
69
- type: pieces_common_1.AuthenticationType.BEARER_TOKEN,
70
- token: auth.secret_text,
71
- },
72
- });
73
- const variants = Array.isArray(response.body) ? response.body : [];
74
- return {
75
- disabled: false,
76
- options: variants.map((variant) => ({
77
- label: variant.sku || variant.name || `Variant ${variant.id}`,
78
- value: variant.id,
79
- })),
80
- };
81
- }
82
- catch (_b) {
83
- return {
84
- disabled: true,
85
- placeholder: 'Failed to load variants',
86
- options: [],
87
- };
88
- }
89
- }),
90
- });
91
- exports.taxRateDropdown = pieces_framework_1.Property.Dropdown({
92
- displayName: 'Tax Rate',
93
- required: false,
94
- refreshers: [],
95
- auth: auth_1.katanaAuth,
96
- options: (_a) => tslib_1.__awaiter(void 0, [_a], void 0, function* ({ auth }) {
97
- if (!auth) {
98
- return {
99
- disabled: true,
100
- placeholder: 'Connect your account first',
101
- options: [],
102
- };
103
- }
104
- try {
105
- const response = yield pieces_common_1.httpClient.sendRequest({
106
- method: pieces_common_1.HttpMethod.GET,
107
- url: `${constants_1.BASE_URL}/tax_rates`,
108
- authentication: {
109
- type: pieces_common_1.AuthenticationType.BEARER_TOKEN,
110
- token: auth.secret_text,
111
- },
112
- });
113
- const taxRates = Array.isArray(response.body) ? response.body : [];
114
- return {
115
- disabled: false,
116
- options: taxRates.map((rate) => ({
117
- label: `${rate.name} (${rate.percentage}%)`,
118
- value: rate.id,
119
- })),
120
- };
121
- }
122
- catch (_b) {
123
- return {
124
- disabled: false,
125
- placeholder: 'No tax rates available',
126
- options: [],
127
- };
128
- }
129
- }),
130
- });
131
- exports.locationDropdown = pieces_framework_1.Property.Dropdown({
132
- displayName: 'Location',
133
- required: false,
134
- refreshers: [],
135
- auth: auth_1.katanaAuth,
136
- options: (_a) => tslib_1.__awaiter(void 0, [_a], void 0, function* ({ auth }) {
137
- if (!auth) {
138
- return {
139
- disabled: true,
140
- placeholder: 'Connect your account first',
141
- options: [],
142
- };
143
- }
144
- try {
145
- const response = yield pieces_common_1.httpClient.sendRequest({
146
- method: pieces_common_1.HttpMethod.GET,
147
- url: `${constants_1.BASE_URL}/locations`,
148
- authentication: {
149
- type: pieces_common_1.AuthenticationType.BEARER_TOKEN,
150
- token: auth.secret_text,
151
- },
152
- });
153
- const locations = Array.isArray(response.body) ? response.body : [];
154
- return {
155
- disabled: false,
156
- options: locations.map((location) => ({
157
- label: location.name,
158
- value: location.id,
159
- })),
160
- };
161
- }
162
- catch (_b) {
163
- return {
164
- disabled: false,
165
- placeholder: 'No locations available',
166
- options: [],
167
- };
168
- }
169
- }),
170
- });
171
- exports.locationDropdownRequired = pieces_framework_1.Property.Dropdown({
172
- displayName: 'Default Location',
173
- description: 'Default location for the order.',
174
- required: true,
175
- refreshers: [],
176
- auth: auth_1.katanaAuth,
177
- options: (_a) => tslib_1.__awaiter(void 0, [_a], void 0, function* ({ auth }) {
178
- if (!auth) {
179
- return {
180
- disabled: true,
181
- placeholder: 'Connect your account first',
182
- options: [],
183
- };
184
- }
185
- try {
186
- const response = yield pieces_common_1.httpClient.sendRequest({
187
- method: pieces_common_1.HttpMethod.GET,
188
- url: `${constants_1.BASE_URL}/locations`,
189
- authentication: {
190
- type: pieces_common_1.AuthenticationType.BEARER_TOKEN,
191
- token: auth.secret_text,
192
- },
193
- });
194
- const locations = Array.isArray(response.body) ? response.body : [];
195
- return {
196
- disabled: false,
197
- options: locations.map((location) => ({
198
- label: location.name,
199
- value: location.id,
200
- })),
201
- };
202
- }
203
- catch (_b) {
204
- return {
205
- disabled: false,
206
- placeholder: 'No locations available',
207
- options: [],
208
- };
209
- }
210
- }),
211
- });
212
- //# sourceMappingURL=props.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"props.js","sourceRoot":"","sources":["../../../../../../../../packages/pieces/community/katana/src/lib/common/props.ts"],"names":[],"mappings":"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"}