@winible/winible-typed 2.51.3 → 2.52.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 (212) hide show
  1. package/README.md +104 -104
  2. package/dist/event-collector-models/conversion-log.js +49 -0
  3. package/dist/event-collector-models/conversion-log.js.map +1 -0
  4. package/dist/event-collector-models/event-send-log.js +54 -0
  5. package/dist/event-collector-models/event-send-log.js.map +1 -0
  6. package/dist/event-collector-models/index.js +15 -0
  7. package/dist/event-collector-models/index.js.map +1 -0
  8. package/dist/event-collector-models/send-log.js +75 -0
  9. package/dist/event-collector-models/send-log.js.map +1 -0
  10. package/dist/event-collector-models/ts-sequelize.js +64 -0
  11. package/dist/event-collector-models/ts-sequelize.js.map +1 -0
  12. package/dist/index.js +19 -19
  13. package/dist/migrations/20230104055346-oddsjam.js +500 -500
  14. package/dist/migrations/20230104233909-markets.js +27 -27
  15. package/dist/migrations/20230105005418-sportsbook.js +23 -23
  16. package/dist/migrations/20230106044910-player-result.js +58 -58
  17. package/dist/migrations/20230206061925-stale.js +12 -12
  18. package/dist/migrations/20230313175015-league-user.js +28 -28
  19. package/dist/migrations/20230405141245-deprecate-agencies.js +8 -8
  20. package/dist/migrations/20230405142440-deprecate-unused-tables.js +22 -22
  21. package/dist/migrations/20230410144940-deprecate-consent-people.js +8 -8
  22. package/dist/migrations/20230410174328-deprecate-consent-people-table.js +8 -8
  23. package/dist/migrations/20230410181920-migrate-credit-payments-to-transactions.js +8 -8
  24. package/dist/migrations/20230410202433-migrate-credit-payments-fields.js +11 -11
  25. package/dist/migrations/20230410211059-deprecate-credit-purchases.js +8 -8
  26. package/dist/migrations/20230410212035-deprecate-dashboard_user_permissions.js +9 -9
  27. package/dist/migrations/20230410212324-deprecate-non-breaking-tables.js +33 -33
  28. package/dist/migrations/20230411054826-create-users-table.js +140 -140
  29. package/dist/migrations/20230411202848-migrate_transactions_table.js +23 -23
  30. package/dist/migrations/20230411203543-migrate_league_users.js +8 -8
  31. package/dist/migrations/20230411205324-migrate_league.js +12 -12
  32. package/dist/migrations/20230411221159-migrate_media.js +8 -8
  33. package/dist/migrations/20230411221327-migrate_media_asset.js +9 -9
  34. package/dist/migrations/20230411221842-migrate_media_asset_fields.js +9 -9
  35. package/dist/migrations/20230411222018-migrate_notifications.js +24 -24
  36. package/dist/migrations/20230412190423-migrate_purchased_contents.js +9 -9
  37. package/dist/migrations/20230412202031-migrate_other_fields.js +26 -26
  38. package/dist/migrations/20230412213952-deprecate_phone_users_and_phone_owners.js +26 -26
  39. package/dist/migrations/20241123184623-recurly-payment-monitoring-whitelist.js +33 -0
  40. package/dist/migrations/20241123184623-recurly-payment-monitoring-whitelist.js.map +1 -0
  41. package/dist/migrations/20241123184623-whitelist.js +36 -36
  42. package/dist/migrations/20241204220824-pumping-risk-score-monitoring-table.js +47 -47
  43. package/dist/migrations/20241205003230-failed-transactions.js +67 -67
  44. package/dist/migrations/20241216145328-password-tokens.js +33 -33
  45. package/dist/scripts/cleanupRecurlyPlans.js +49 -49
  46. package/dist/scripts/deleteMalformedImages.js +86 -86
  47. package/dist/scripts/test.js +17 -17
  48. package/dist/src/index.js +8 -8
  49. package/dist/src/recurlyInstance.js +32 -32
  50. package/dist/src/types.js +86 -86
  51. package/dist/support/index.js +18 -18
  52. package/dist/support/slack-client.js +50 -50
  53. package/dist/support/uploadcare.js +142 -142
  54. package/dist/support/utils.js +68 -68
  55. package/dist/typed-model/affiliate-code.js +97 -97
  56. package/dist/typed-model/affiliate-links-types.js +28 -28
  57. package/dist/typed-model/application.js +89 -89
  58. package/dist/typed-model/bet.js +111 -111
  59. package/dist/typed-model/campaign-message.js +75 -78
  60. package/dist/typed-model/campaign-message.js.map +1 -1
  61. package/dist/typed-model/campaign-template.js +62 -67
  62. package/dist/typed-model/campaign-template.js.map +1 -1
  63. package/dist/typed-model/campaign.js +80 -78
  64. package/dist/typed-model/campaign.js.map +1 -1
  65. package/dist/typed-model/cancellation_offer.js +70 -70
  66. package/dist/typed-model/cancellation_reason.js +98 -98
  67. package/dist/typed-model/content-like.js +69 -69
  68. package/dist/typed-model/coupon_redemptions.js +64 -64
  69. package/dist/typed-model/creator-service-fee.js +50 -50
  70. package/dist/typed-model/discord-integration-log.js +62 -62
  71. package/dist/typed-model/discord-integration.js +128 -128
  72. package/dist/typed-model/failed-transactions.js +95 -95
  73. package/dist/typed-model/featured-creator.js +51 -51
  74. package/dist/typed-model/free-subscription-plan.js +66 -66
  75. package/dist/typed-model/index.js +129 -139
  76. package/dist/typed-model/index.js.map +1 -1
  77. package/dist/typed-model/integration.js +58 -58
  78. package/dist/typed-model/league-on-users.js +59 -59
  79. package/dist/typed-model/league.js +34 -34
  80. package/dist/typed-model/limited-offer.js +58 -58
  81. package/dist/typed-model/media-asset.js +63 -63
  82. package/dist/typed-model/media.js +54 -54
  83. package/dist/typed-model/migration-token.js +52 -52
  84. package/dist/typed-model/notification-preference.js +58 -58
  85. package/dist/typed-model/notification.js +89 -89
  86. package/dist/typed-model/organization.js +57 -57
  87. package/dist/typed-model/password-tokens.js +36 -36
  88. package/dist/typed-model/pb-sequelize.js +43 -43
  89. package/dist/typed-model/permission.js +36 -36
  90. package/dist/typed-model/post.js +128 -128
  91. package/dist/typed-model/post_on_integrations.js +81 -81
  92. package/dist/typed-model/posts-on-users.js +92 -92
  93. package/dist/typed-model/private-feed-users.js +42 -42
  94. package/dist/typed-model/pumping-risk-score-monitoring.js +54 -54
  95. package/dist/typed-model/recurly-account.js +33 -33
  96. package/dist/typed-model/recurly-payment-monitoring-whitelist.js +45 -0
  97. package/dist/typed-model/recurly-payment-monitoring-whitelist.js.map +1 -0
  98. package/dist/typed-model/sample.js +24 -24
  99. package/dist/typed-model/segment.js +51 -52
  100. package/dist/typed-model/segment.js.map +1 -1
  101. package/dist/typed-model/sms-custom-message.js +46 -46
  102. package/dist/typed-model/sport-on-posts.js +58 -58
  103. package/dist/typed-model/sport.js +29 -29
  104. package/dist/typed-model/store.js +152 -152
  105. package/dist/typed-model/stores_on_organizations.js +55 -55
  106. package/dist/typed-model/subscriber-discord-integration.js +82 -82
  107. package/dist/typed-model/subscriber-telegram-integration.js +82 -82
  108. package/dist/typed-model/subscribers-on-creators.js +80 -80
  109. package/dist/typed-model/subscription-coupon.js +96 -96
  110. package/dist/typed-model/subscription-plan-on-post.js +54 -54
  111. package/dist/typed-model/subscription-plan-on-users.js +143 -143
  112. package/dist/typed-model/subscription-plan.js +121 -121
  113. package/dist/typed-model/subscription-pricing-option-on-coupons.js +54 -54
  114. package/dist/typed-model/subscription-pricing-option.js +77 -77
  115. package/dist/typed-model/telegram-integration-code.js +38 -38
  116. package/dist/typed-model/telegram-integration-invite-link.js +38 -38
  117. package/dist/typed-model/telegram-integration-log.js +62 -62
  118. package/dist/typed-model/telegram-integration.js +109 -109
  119. package/dist/typed-model/transaction.js +109 -109
  120. package/dist/typed-model/trigger.js +63 -65
  121. package/dist/typed-model/trigger.js.map +1 -1
  122. package/dist/typed-model/user-cookie-preference.js +53 -53
  123. package/dist/typed-model/user-review.js +66 -66
  124. package/dist/typed-model/user-transaction-location.js +89 -89
  125. package/dist/typed-model/user.js +210 -210
  126. package/dist/typed-model/users-on-permissions.js +71 -71
  127. package/dist/typed-model/users_on_creators.js +70 -70
  128. package/dist/typed-model/users_on_organizations.js +55 -55
  129. package/dist/typed-model/whitelist.js +48 -48
  130. package/dist/typed-model/withdrawal.js +32 -32
  131. package/dist/webhooks/index.js +47 -47
  132. package/dist/webhooks/payment/index.js +8 -8
  133. package/dist/webhooks/payment/refund.js +38 -38
  134. package/index.ts +3 -3
  135. package/package.json +78 -79
  136. package/src/index.ts +1 -1
  137. package/src/recurlyInstance.ts +6 -6
  138. package/src/types.ts +139 -139
  139. package/support/index.ts +2 -2
  140. package/support/slack-client.ts +43 -43
  141. package/support/uploadcare.ts +191 -191
  142. package/support/utils.ts +72 -72
  143. package/typed-model/affiliate-code.ts +133 -133
  144. package/typed-model/affiliate-links-types.ts +45 -45
  145. package/typed-model/application.ts +124 -124
  146. package/typed-model/bet.ts +149 -149
  147. package/typed-model/campaign-message.ts +112 -115
  148. package/typed-model/campaign-template.ts +83 -89
  149. package/typed-model/campaign.ts +119 -121
  150. package/typed-model/cancellation_offer.ts +94 -94
  151. package/typed-model/cancellation_reason.ts +135 -135
  152. package/typed-model/content-like.ts +95 -95
  153. package/typed-model/coupon_redemptions.ts +90 -90
  154. package/typed-model/creator-service-fee.ts +69 -69
  155. package/typed-model/discord-integration-log.ts +87 -87
  156. package/typed-model/discord-integration.ts +164 -164
  157. package/typed-model/failed-transactions.ts +123 -123
  158. package/typed-model/featured-creator.ts +75 -75
  159. package/typed-model/free-subscription-plan.ts +97 -97
  160. package/typed-model/index.ts +61 -67
  161. package/typed-model/integration.ts +83 -83
  162. package/typed-model/league-on-users.ts +81 -81
  163. package/typed-model/league.ts +53 -53
  164. package/typed-model/limited-offer.ts +80 -80
  165. package/typed-model/media-asset.ts +87 -87
  166. package/typed-model/media.ts +80 -80
  167. package/typed-model/migration-token.ts +75 -75
  168. package/typed-model/notification-preference.ts +85 -85
  169. package/typed-model/notification.ts +135 -135
  170. package/typed-model/organization.ts +80 -80
  171. package/typed-model/password-tokens.ts +55 -55
  172. package/typed-model/pb-sequelize.ts +44 -44
  173. package/typed-model/permission.ts +62 -62
  174. package/typed-model/post.ts +170 -170
  175. package/typed-model/post_on_integrations.ts +104 -104
  176. package/typed-model/posts-on-users.ts +122 -122
  177. package/typed-model/private-feed-users.ts +63 -63
  178. package/typed-model/pumping-risk-score-monitoring.ts +73 -73
  179. package/typed-model/recurly-account.ts +51 -51
  180. package/typed-model/sample.ts +41 -41
  181. package/typed-model/segment.ts +79 -80
  182. package/typed-model/sms-custom-message.ts +66 -66
  183. package/typed-model/sport-on-posts.ts +80 -80
  184. package/typed-model/sport.ts +46 -46
  185. package/typed-model/store.ts +203 -203
  186. package/typed-model/stores_on_organizations.ts +78 -78
  187. package/typed-model/subscriber-discord-integration.ts +109 -109
  188. package/typed-model/subscriber-telegram-integration.ts +109 -109
  189. package/typed-model/subscribers-on-creators.ts +107 -107
  190. package/typed-model/subscription-coupon.ts +133 -133
  191. package/typed-model/subscription-plan-on-post.ts +77 -77
  192. package/typed-model/subscription-plan-on-users.ts +201 -201
  193. package/typed-model/subscription-plan.ts +173 -173
  194. package/typed-model/subscription-pricing-option-on-coupons.ts +78 -78
  195. package/typed-model/subscription-pricing-option.ts +106 -106
  196. package/typed-model/telegram-integration-code.ts +60 -60
  197. package/typed-model/telegram-integration-invite-link.ts +59 -59
  198. package/typed-model/telegram-integration-log.ts +86 -86
  199. package/typed-model/telegram-integration.ts +141 -141
  200. package/typed-model/transaction.ts +159 -159
  201. package/typed-model/trigger.ts +93 -95
  202. package/typed-model/user-cookie-preference.ts +71 -71
  203. package/typed-model/user-review.ts +87 -87
  204. package/typed-model/user-transaction-location.ts +117 -117
  205. package/typed-model/user.ts +273 -273
  206. package/typed-model/users-on-permissions.ts +96 -96
  207. package/typed-model/users_on_creators.ts +95 -95
  208. package/typed-model/users_on_organizations.ts +78 -78
  209. package/typed-model/whitelist.ts +66 -66
  210. package/typed-model/withdrawal.ts +50 -50
  211. package/dist/scripts/testModels.js +0 -57
  212. package/dist/scripts/testModels.js.map +0 -1
@@ -1,143 +1,143 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- const http_1 = __importDefault(require("http"));
7
- const https_1 = __importDefault(require("https"));
8
- const crypto_1 = __importDefault(require("crypto"));
9
- function setup_response_handler(res, callback) {
10
- if (typeof callback !== "function") {
11
- return;
12
- }
13
- var response = "";
14
- res.setEncoding("utf8");
15
- res.on("data", function (chunk) {
16
- response += chunk;
17
- });
18
- res.on("end", function () {
19
- var err;
20
- if (res.statusCode > 201) {
21
- err = new Error("Unexpected status " + res.statusCode + " from uploadcare.com");
22
- }
23
- try {
24
- response = JSON.parse(response);
25
- }
26
- catch (e) {
27
- return callback(new Error("Invalid JSON from uploadcare.com"), undefined);
28
- }
29
- callback(err, response);
30
- });
31
- }
32
- function default_1(public_key, private_key, options) {
33
- var defaults = options || {};
34
- function _request(method, path, options, callback) {
35
- var request_data = JSON.stringify(options.data);
36
- if (!options.data) {
37
- request_data = "";
38
- }
39
- var ssl = options.ssl !== false;
40
- //Prepare headers
41
- var content_type = "application/json",
42
- //Hash private key
43
- content_hash = crypto_1.default
44
- .createHash("md5")
45
- .update(request_data)
46
- .digest("hex"), date = new Date().toUTCString(), sign_string = [method, content_hash, content_type, date, path].join("\n"), sign = crypto_1.default
47
- .createHmac("sha1", private_key)
48
- .update(sign_string)
49
- .digest("hex"), request_options = {
50
- host: "api.uploadcare.com",
51
- port: ssl ? 443 : 80,
52
- path: path,
53
- method: method,
54
- headers: {
55
- Authentication: "UploadCare " + public_key + ":" + sign,
56
- "X-Uploadcare-Date": date,
57
- "Content-Type": content_type,
58
- "Content-Length": request_data.length,
59
- },
60
- };
61
- var req = ssl
62
- ? https_1.default.request(request_options)
63
- : http_1.default.request(request_options);
64
- req.on("response", function (res) {
65
- setup_response_handler(res, callback);
66
- });
67
- req.write(request_data);
68
- req.end();
69
- }
70
- function _submit(path, form, callback) {
71
- form.submit({
72
- host: "upload.uploadcare.com",
73
- port: "443",
74
- path: path,
75
- protocol: "https:",
76
- }, function (err, res) {
77
- if (err) {
78
- callback(err);
79
- }
80
- else {
81
- setup_response_handler(res, callback);
82
- }
83
- });
84
- }
85
- function post(path, options, callback) {
86
- if (options.form) {
87
- _submit(path, options.data, callback);
88
- }
89
- else {
90
- _request("POST", path, options, callback);
91
- }
92
- }
93
- function put(path, options, callback) {
94
- _request("PUT", path, options, callback);
95
- }
96
- function get(path, callback) {
97
- _request("GET", path, {}, callback);
98
- }
99
- //
100
- // this is a special case when uploading image from URL
101
- // you have to check status until you receive a success
102
- function upload_fromurl_get_status(token, callback) {
103
- var path = "/from_url/status/?token=" + token + "&_=" + Date.now();
104
- https_1.default.get("https://upload.uploadcare.com" + path, function (res) {
105
- setup_response_handler(res, callback);
106
- });
107
- }
108
- function remove(path, callback) {
109
- _request("DELETE", path, {}, callback);
110
- }
111
- var api = {
112
- files: {
113
- store: function (fileId, callback) {
114
- post("/files/" + fileId + "/storage/", {}, callback);
115
- },
116
- storeCustom: function (fileId, target, callback) {
117
- post("/files/", { data: { source: fileId, target: target } }, callback);
118
- },
119
- info: function (fileId, callback) {
120
- get("/files/" + fileId + "/", callback);
121
- },
122
- remove: function (fileId, callback) {
123
- remove("/files/" + fileId + "/", callback);
124
- },
125
- removeMultiple: function (fileIds, callback) {
126
- _request("DELETE", "/files/storage/", { data: fileIds }, callback);
127
- },
128
- },
129
- videos: {
130
- convert: function (fileId, callback) {
131
- post("/convert/video/", {
132
- data: {
133
- store: 1,
134
- paths: [`${fileId}/video/-/format/mp4/`],
135
- },
136
- }, callback);
137
- },
138
- },
139
- };
140
- return api;
141
- }
142
- exports.default = default_1;
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const http_1 = __importDefault(require("http"));
7
+ const https_1 = __importDefault(require("https"));
8
+ const crypto_1 = __importDefault(require("crypto"));
9
+ function setup_response_handler(res, callback) {
10
+ if (typeof callback !== "function") {
11
+ return;
12
+ }
13
+ var response = "";
14
+ res.setEncoding("utf8");
15
+ res.on("data", function (chunk) {
16
+ response += chunk;
17
+ });
18
+ res.on("end", function () {
19
+ var err;
20
+ if (res.statusCode > 201) {
21
+ err = new Error("Unexpected status " + res.statusCode + " from uploadcare.com");
22
+ }
23
+ try {
24
+ response = JSON.parse(response);
25
+ }
26
+ catch (e) {
27
+ return callback(new Error("Invalid JSON from uploadcare.com"), undefined);
28
+ }
29
+ callback(err, response);
30
+ });
31
+ }
32
+ function default_1(public_key, private_key, options) {
33
+ var defaults = options || {};
34
+ function _request(method, path, options, callback) {
35
+ var request_data = JSON.stringify(options.data);
36
+ if (!options.data) {
37
+ request_data = "";
38
+ }
39
+ var ssl = options.ssl !== false;
40
+ //Prepare headers
41
+ var content_type = "application/json",
42
+ //Hash private key
43
+ content_hash = crypto_1.default
44
+ .createHash("md5")
45
+ .update(request_data)
46
+ .digest("hex"), date = new Date().toUTCString(), sign_string = [method, content_hash, content_type, date, path].join("\n"), sign = crypto_1.default
47
+ .createHmac("sha1", private_key)
48
+ .update(sign_string)
49
+ .digest("hex"), request_options = {
50
+ host: "api.uploadcare.com",
51
+ port: ssl ? 443 : 80,
52
+ path: path,
53
+ method: method,
54
+ headers: {
55
+ Authentication: "UploadCare " + public_key + ":" + sign,
56
+ "X-Uploadcare-Date": date,
57
+ "Content-Type": content_type,
58
+ "Content-Length": request_data.length,
59
+ },
60
+ };
61
+ var req = ssl
62
+ ? https_1.default.request(request_options)
63
+ : http_1.default.request(request_options);
64
+ req.on("response", function (res) {
65
+ setup_response_handler(res, callback);
66
+ });
67
+ req.write(request_data);
68
+ req.end();
69
+ }
70
+ function _submit(path, form, callback) {
71
+ form.submit({
72
+ host: "upload.uploadcare.com",
73
+ port: "443",
74
+ path: path,
75
+ protocol: "https:",
76
+ }, function (err, res) {
77
+ if (err) {
78
+ callback(err);
79
+ }
80
+ else {
81
+ setup_response_handler(res, callback);
82
+ }
83
+ });
84
+ }
85
+ function post(path, options, callback) {
86
+ if (options.form) {
87
+ _submit(path, options.data, callback);
88
+ }
89
+ else {
90
+ _request("POST", path, options, callback);
91
+ }
92
+ }
93
+ function put(path, options, callback) {
94
+ _request("PUT", path, options, callback);
95
+ }
96
+ function get(path, callback) {
97
+ _request("GET", path, {}, callback);
98
+ }
99
+ //
100
+ // this is a special case when uploading image from URL
101
+ // you have to check status until you receive a success
102
+ function upload_fromurl_get_status(token, callback) {
103
+ var path = "/from_url/status/?token=" + token + "&_=" + Date.now();
104
+ https_1.default.get("https://upload.uploadcare.com" + path, function (res) {
105
+ setup_response_handler(res, callback);
106
+ });
107
+ }
108
+ function remove(path, callback) {
109
+ _request("DELETE", path, {}, callback);
110
+ }
111
+ var api = {
112
+ files: {
113
+ store: function (fileId, callback) {
114
+ post("/files/" + fileId + "/storage/", {}, callback);
115
+ },
116
+ storeCustom: function (fileId, target, callback) {
117
+ post("/files/", { data: { source: fileId, target: target } }, callback);
118
+ },
119
+ info: function (fileId, callback) {
120
+ get("/files/" + fileId + "/", callback);
121
+ },
122
+ remove: function (fileId, callback) {
123
+ remove("/files/" + fileId + "/", callback);
124
+ },
125
+ removeMultiple: function (fileIds, callback) {
126
+ _request("DELETE", "/files/storage/", { data: fileIds }, callback);
127
+ },
128
+ },
129
+ videos: {
130
+ convert: function (fileId, callback) {
131
+ post("/convert/video/", {
132
+ data: {
133
+ store: 1,
134
+ paths: [`${fileId}/video/-/format/mp4/`],
135
+ },
136
+ }, callback);
137
+ },
138
+ },
139
+ };
140
+ return api;
141
+ }
142
+ exports.default = default_1;
143
143
  //# sourceMappingURL=uploadcare.js.map
@@ -1,69 +1,69 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.convertImageUrlToImageKit = exports.convertVideoToMp4 = void 0;
7
- const dotenv_1 = __importDefault(require("dotenv"));
8
- const uploadcare_1 = __importDefault(require("../support/uploadcare"));
9
- dotenv_1.default.config();
10
- const uploadcare = (0, uploadcare_1.default)("3d93f73d90b8efffadd7", "8fd6cd1136eb7a500164", {});
11
- const convertVideoToMp4 = async (url) => {
12
- try {
13
- let uuid = url.split("https://ucarecdn.com/")[1];
14
- if (!uuid) {
15
- console.log("Couldn't parse UUID");
16
- return url;
17
- }
18
- uuid = uuid.split("/")[0];
19
- let fileInfo = await new Promise((resolve, reject) => {
20
- uploadcare.files.info(uuid, (err, res) => {
21
- resolve(res);
22
- });
23
- });
24
- let { mime_type } = fileInfo;
25
- if (mime_type !== "video/quicktime") {
26
- console.log("Not quicktime");
27
- return url;
28
- }
29
- let convertResponse = await new Promise((resolve, reject) => {
30
- uploadcare.videos.convert(uuid, (err, res) => {
31
- resolve(res);
32
- });
33
- });
34
- let newUUID = convertResponse &&
35
- convertResponse.result &&
36
- convertResponse.result[0] &&
37
- convertResponse.result[0].uuid;
38
- if (!newUUID) {
39
- return url;
40
- }
41
- return `https://ucarecdn.com/${newUUID}/`;
42
- }
43
- catch (err) {
44
- console.log(err);
45
- return url;
46
- }
47
- };
48
- exports.convertVideoToMp4 = convertVideoToMp4;
49
- const convertImageUrlToImageKit = (url, transformation) => {
50
- if (!url || url.length == 0) {
51
- return "";
52
- }
53
- const rootMappings = {
54
- "https://paychat-images.s3.amazonaws.com/": "https://ik.imagekit.io/jzv0ymnoihm/paychat-images/",
55
- "https://paychat-media.s3.amazonaws.com/": "https://ik.imagekit.io/jzv0ymnoihm/media/",
56
- "https://paychat-images.s3.us-west-1.amazonaws.com/": "https://ik.imagekit.io/jzv0ymnoihm/paychat-images/",
57
- "https://paychat-media.s3.us-west-1.amazonaws.com/": "https://ik.imagekit.io/jzv0ymnoihm/media/",
58
- };
59
- let finalUrl = url;
60
- for (let key of Object.keys(rootMappings)) {
61
- finalUrl = finalUrl.replace(key, rootMappings[key]);
62
- }
63
- if (transformation) {
64
- finalUrl = finalUrl + `?tr=${transformation}`;
65
- }
66
- return finalUrl;
67
- };
68
- exports.convertImageUrlToImageKit = convertImageUrlToImageKit;
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.convertImageUrlToImageKit = exports.convertVideoToMp4 = void 0;
7
+ const dotenv_1 = __importDefault(require("dotenv"));
8
+ const uploadcare_1 = __importDefault(require("../support/uploadcare"));
9
+ dotenv_1.default.config();
10
+ const uploadcare = (0, uploadcare_1.default)("3d93f73d90b8efffadd7", "8fd6cd1136eb7a500164", {});
11
+ const convertVideoToMp4 = async (url) => {
12
+ try {
13
+ let uuid = url.split("https://ucarecdn.com/")[1];
14
+ if (!uuid) {
15
+ console.log("Couldn't parse UUID");
16
+ return url;
17
+ }
18
+ uuid = uuid.split("/")[0];
19
+ let fileInfo = await new Promise((resolve, reject) => {
20
+ uploadcare.files.info(uuid, (err, res) => {
21
+ resolve(res);
22
+ });
23
+ });
24
+ let { mime_type } = fileInfo;
25
+ if (mime_type !== "video/quicktime") {
26
+ console.log("Not quicktime");
27
+ return url;
28
+ }
29
+ let convertResponse = await new Promise((resolve, reject) => {
30
+ uploadcare.videos.convert(uuid, (err, res) => {
31
+ resolve(res);
32
+ });
33
+ });
34
+ let newUUID = convertResponse &&
35
+ convertResponse.result &&
36
+ convertResponse.result[0] &&
37
+ convertResponse.result[0].uuid;
38
+ if (!newUUID) {
39
+ return url;
40
+ }
41
+ return `https://ucarecdn.com/${newUUID}/`;
42
+ }
43
+ catch (err) {
44
+ console.log(err);
45
+ return url;
46
+ }
47
+ };
48
+ exports.convertVideoToMp4 = convertVideoToMp4;
49
+ const convertImageUrlToImageKit = (url, transformation) => {
50
+ if (!url || url.length == 0) {
51
+ return "";
52
+ }
53
+ const rootMappings = {
54
+ "https://paychat-images.s3.amazonaws.com/": "https://ik.imagekit.io/jzv0ymnoihm/paychat-images/",
55
+ "https://paychat-media.s3.amazonaws.com/": "https://ik.imagekit.io/jzv0ymnoihm/media/",
56
+ "https://paychat-images.s3.us-west-1.amazonaws.com/": "https://ik.imagekit.io/jzv0ymnoihm/paychat-images/",
57
+ "https://paychat-media.s3.us-west-1.amazonaws.com/": "https://ik.imagekit.io/jzv0ymnoihm/media/",
58
+ };
59
+ let finalUrl = url;
60
+ for (let key of Object.keys(rootMappings)) {
61
+ finalUrl = finalUrl.replace(key, rootMappings[key]);
62
+ }
63
+ if (transformation) {
64
+ finalUrl = finalUrl + `?tr=${transformation}`;
65
+ }
66
+ return finalUrl;
67
+ };
68
+ exports.convertImageUrlToImageKit = convertImageUrlToImageKit;
69
69
  //# sourceMappingURL=utils.js.map
@@ -1,98 +1,98 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- const sequelize_1 = require("sequelize");
7
- const pb_sequelize_1 = __importDefault(require("./pb-sequelize"));
8
- const types_1 = require("../src/types");
9
- const user_1 = __importDefault(require("./user"));
10
- // order of InferAttributes & InferCreationAttributes is important.
11
- class AffiliateCode extends sequelize_1.Model {
12
- }
13
- AffiliateCode.init({
14
- id: {
15
- type: sequelize_1.DataTypes.BIGINT,
16
- primaryKey: true,
17
- allowNull: false,
18
- defaultValue: pb_sequelize_1.default.fn("next_id"),
19
- },
20
- affiliateCode: {
21
- type: sequelize_1.DataTypes.STRING,
22
- field: "affiliate_code",
23
- allowNull: false,
24
- },
25
- userId: {
26
- type: sequelize_1.DataTypes.BIGINT,
27
- field: "user_id",
28
- defaultValue: null,
29
- references: {
30
- model: user_1.default,
31
- },
32
- },
33
- creatorId: {
34
- type: sequelize_1.DataTypes.BIGINT,
35
- allowNull: false,
36
- field: "creator_id",
37
- references: {
38
- model: user_1.default,
39
- },
40
- },
41
- emailInvite: {
42
- type: sequelize_1.DataTypes.STRING,
43
- allowNull: false,
44
- field: "email_invite",
45
- },
46
- pageViews: {
47
- type: sequelize_1.DataTypes.INTEGER,
48
- allowNull: false,
49
- field: "page_views",
50
- defaultValue: 0,
51
- },
52
- rewardFrequency: {
53
- type: sequelize_1.DataTypes.ENUM(...Object.values(types_1.RewardFrequency)),
54
- field: "reward_frequency",
55
- },
56
- rewardType: {
57
- type: sequelize_1.DataTypes.ENUM(...Object.values(types_1.RewardType)),
58
- field: "reward_type",
59
- },
60
- rewardAmountInCents: {
61
- type: sequelize_1.DataTypes.INTEGER,
62
- field: "reward_amount_in_cents",
63
- },
64
- rewardAmountInPercent: {
65
- type: sequelize_1.DataTypes.FLOAT,
66
- field: "reward_amount_in_percent",
67
- },
68
- allPlansEligible: {
69
- type: sequelize_1.DataTypes.STRING,
70
- field: "all_plans_eligible",
71
- },
72
- allPostsEligible: {
73
- type: sequelize_1.DataTypes.STRING,
74
- field: "all_posts_eligible",
75
- },
76
- pricingOptionIdsEligible: {
77
- type: sequelize_1.DataTypes.ARRAY(sequelize_1.DataTypes.BIGINT),
78
- field: "pricing_option_ids_eligible",
79
- defaultValue: [],
80
- },
81
- createdAt: sequelize_1.DataTypes.DATE,
82
- updatedAt: sequelize_1.DataTypes.DATE,
83
- }, {
84
- tableName: "affiliate_codes",
85
- sequelize: pb_sequelize_1.default,
86
- });
87
- AffiliateCode.belongsTo(user_1.default, {
88
- foreignKey: "userId",
89
- as: "User",
90
- targetKey: "id",
91
- });
92
- AffiliateCode.belongsTo(user_1.default, {
93
- foreignKey: "creatorId",
94
- as: "Creator",
95
- targetKey: "id",
96
- });
97
- exports.default = AffiliateCode;
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const sequelize_1 = require("sequelize");
7
+ const pb_sequelize_1 = __importDefault(require("./pb-sequelize"));
8
+ const types_1 = require("../src/types");
9
+ const user_1 = __importDefault(require("./user"));
10
+ // order of InferAttributes & InferCreationAttributes is important.
11
+ class AffiliateCode extends sequelize_1.Model {
12
+ }
13
+ AffiliateCode.init({
14
+ id: {
15
+ type: sequelize_1.DataTypes.BIGINT,
16
+ primaryKey: true,
17
+ allowNull: false,
18
+ defaultValue: pb_sequelize_1.default.fn("next_id"),
19
+ },
20
+ affiliateCode: {
21
+ type: sequelize_1.DataTypes.STRING,
22
+ field: "affiliate_code",
23
+ allowNull: false,
24
+ },
25
+ userId: {
26
+ type: sequelize_1.DataTypes.BIGINT,
27
+ field: "user_id",
28
+ defaultValue: null,
29
+ references: {
30
+ model: user_1.default,
31
+ },
32
+ },
33
+ creatorId: {
34
+ type: sequelize_1.DataTypes.BIGINT,
35
+ allowNull: false,
36
+ field: "creator_id",
37
+ references: {
38
+ model: user_1.default,
39
+ },
40
+ },
41
+ emailInvite: {
42
+ type: sequelize_1.DataTypes.STRING,
43
+ allowNull: false,
44
+ field: "email_invite",
45
+ },
46
+ pageViews: {
47
+ type: sequelize_1.DataTypes.INTEGER,
48
+ allowNull: false,
49
+ field: "page_views",
50
+ defaultValue: 0,
51
+ },
52
+ rewardFrequency: {
53
+ type: sequelize_1.DataTypes.ENUM(...Object.values(types_1.RewardFrequency)),
54
+ field: "reward_frequency",
55
+ },
56
+ rewardType: {
57
+ type: sequelize_1.DataTypes.ENUM(...Object.values(types_1.RewardType)),
58
+ field: "reward_type",
59
+ },
60
+ rewardAmountInCents: {
61
+ type: sequelize_1.DataTypes.INTEGER,
62
+ field: "reward_amount_in_cents",
63
+ },
64
+ rewardAmountInPercent: {
65
+ type: sequelize_1.DataTypes.FLOAT,
66
+ field: "reward_amount_in_percent",
67
+ },
68
+ allPlansEligible: {
69
+ type: sequelize_1.DataTypes.STRING,
70
+ field: "all_plans_eligible",
71
+ },
72
+ allPostsEligible: {
73
+ type: sequelize_1.DataTypes.STRING,
74
+ field: "all_posts_eligible",
75
+ },
76
+ pricingOptionIdsEligible: {
77
+ type: sequelize_1.DataTypes.ARRAY(sequelize_1.DataTypes.BIGINT),
78
+ field: "pricing_option_ids_eligible",
79
+ defaultValue: [],
80
+ },
81
+ createdAt: sequelize_1.DataTypes.DATE,
82
+ updatedAt: sequelize_1.DataTypes.DATE,
83
+ }, {
84
+ tableName: "affiliate_codes",
85
+ sequelize: pb_sequelize_1.default,
86
+ });
87
+ AffiliateCode.belongsTo(user_1.default, {
88
+ foreignKey: "userId",
89
+ as: "User",
90
+ targetKey: "id",
91
+ });
92
+ AffiliateCode.belongsTo(user_1.default, {
93
+ foreignKey: "creatorId",
94
+ as: "Creator",
95
+ targetKey: "id",
96
+ });
97
+ exports.default = AffiliateCode;
98
98
  //# sourceMappingURL=affiliate-code.js.map