@mathrunet/masamune 3.7.0 → 3.8.1

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 (268) hide show
  1. package/CHANGELOG.md +15 -0
  2. package/README.md +1 -1
  3. package/dist/functions/test.d.ts +1 -1
  4. package/dist/functions/test.js +2 -3
  5. package/dist/functions/test.js.map +1 -1
  6. package/dist/functions.d.ts +2 -245
  7. package/dist/functions.js +2 -245
  8. package/dist/functions.js.map +1 -1
  9. package/dist/index.d.ts +4 -17
  10. package/dist/index.js +13 -15
  11. package/dist/index.js.map +1 -1
  12. package/package.json +10 -23
  13. package/.claude/settings.local.json +0 -12
  14. package/dist/functions/aggregate_model_firestore.d.ts +0 -1
  15. package/dist/functions/aggregate_model_firestore.js +0 -225
  16. package/dist/functions/aggregate_model_firestore.js.map +0 -1
  17. package/dist/functions/aggregation_model_firestore.d.ts +0 -1
  18. package/dist/functions/aggregation_model_firestore.js +0 -220
  19. package/dist/functions/aggregation_model_firestore.js.map +0 -1
  20. package/dist/functions/agora_cloud_recording.d.ts +0 -1
  21. package/dist/functions/agora_cloud_recording.js +0 -125
  22. package/dist/functions/agora_cloud_recording.js.map +0 -1
  23. package/dist/functions/agora_token.d.ts +0 -1
  24. package/dist/functions/agora_token.js +0 -144
  25. package/dist/functions/agora_token.js.map +0 -1
  26. package/dist/functions/algolia.d.ts +0 -1
  27. package/dist/functions/algolia.js +0 -145
  28. package/dist/functions/algolia.js.map +0 -1
  29. package/dist/functions/android_auth_code.d.ts +0 -1
  30. package/dist/functions/android_auth_code.js +0 -97
  31. package/dist/functions/android_auth_code.js.map +0 -1
  32. package/dist/functions/android_token.d.ts +0 -1
  33. package/dist/functions/android_token.js +0 -132
  34. package/dist/functions/android_token.js.map +0 -1
  35. package/dist/functions/collection_model_firestore.d.ts +0 -1
  36. package/dist/functions/collection_model_firestore.js +0 -222
  37. package/dist/functions/collection_model_firestore.js.map +0 -1
  38. package/dist/functions/conduct_broad_research.d.ts +0 -1
  39. package/dist/functions/conduct_broad_research.js +0 -162
  40. package/dist/functions/conduct_broad_research.js.map +0 -1
  41. package/dist/functions/conduct_detailed_research.d.ts +0 -1
  42. package/dist/functions/conduct_detailed_research.js +0 -162
  43. package/dist/functions/conduct_detailed_research.js.map +0 -1
  44. package/dist/functions/consumable_verify_android.d.ts +0 -1
  45. package/dist/functions/consumable_verify_android.js +0 -172
  46. package/dist/functions/consumable_verify_android.js.map +0 -1
  47. package/dist/functions/consumable_verify_ios.d.ts +0 -1
  48. package/dist/functions/consumable_verify_ios.js +0 -136
  49. package/dist/functions/consumable_verify_ios.js.map +0 -1
  50. package/dist/functions/delete_documents.d.ts +0 -1
  51. package/dist/functions/delete_documents.js +0 -91
  52. package/dist/functions/delete_documents.js.map +0 -1
  53. package/dist/functions/delete_user.d.ts +0 -1
  54. package/dist/functions/delete_user.js +0 -87
  55. package/dist/functions/delete_user.js.map +0 -1
  56. package/dist/functions/document_model_firestore.d.ts +0 -1
  57. package/dist/functions/document_model_firestore.js +0 -218
  58. package/dist/functions/document_model_firestore.js.map +0 -1
  59. package/dist/functions/geocoding.d.ts +0 -1
  60. package/dist/functions/geocoding.js +0 -93
  61. package/dist/functions/geocoding.js.map +0 -1
  62. package/dist/functions/gmail.d.ts +0 -1
  63. package/dist/functions/gmail.js +0 -117
  64. package/dist/functions/gmail.js.map +0 -1
  65. package/dist/functions/google_token.d.ts +0 -1
  66. package/dist/functions/google_token.js +0 -105
  67. package/dist/functions/google_token.js.map +0 -1
  68. package/dist/functions/hls.d.ts +0 -1
  69. package/dist/functions/hls.js +0 -169
  70. package/dist/functions/hls.js.map +0 -1
  71. package/dist/functions/nonconsumable_verify_android.d.ts +0 -1
  72. package/dist/functions/nonconsumable_verify_android.js +0 -166
  73. package/dist/functions/nonconsumable_verify_android.js.map +0 -1
  74. package/dist/functions/nonconsumable_verify_ios.d.ts +0 -1
  75. package/dist/functions/nonconsumable_verify_ios.js +0 -130
  76. package/dist/functions/nonconsumable_verify_ios.js.map +0 -1
  77. package/dist/functions/openai_chat_gpt.d.ts +0 -1
  78. package/dist/functions/openai_chat_gpt.js +0 -117
  79. package/dist/functions/openai_chat_gpt.js.map +0 -1
  80. package/dist/functions/purchase_webhook_android.d.ts +0 -1
  81. package/dist/functions/purchase_webhook_android.js +0 -306
  82. package/dist/functions/purchase_webhook_android.js.map +0 -1
  83. package/dist/functions/purchase_webhook_ios.d.ts +0 -1
  84. package/dist/functions/purchase_webhook_ios.js +0 -182
  85. package/dist/functions/purchase_webhook_ios.js.map +0 -1
  86. package/dist/functions/schedule_asset_creation.d.ts +0 -1
  87. package/dist/functions/schedule_asset_creation.js +0 -103
  88. package/dist/functions/schedule_asset_creation.js.map +0 -1
  89. package/dist/functions/scheduler.d.ts +0 -1
  90. package/dist/functions/scheduler.js +0 -144
  91. package/dist/functions/scheduler.js.map +0 -1
  92. package/dist/functions/send_grid.d.ts +0 -1
  93. package/dist/functions/send_grid.js +0 -111
  94. package/dist/functions/send_grid.js.map +0 -1
  95. package/dist/functions/send_notification.d.ts +0 -1
  96. package/dist/functions/send_notification.js +0 -207
  97. package/dist/functions/send_notification.js.map +0 -1
  98. package/dist/functions/start_asset_creation.d.ts +0 -1
  99. package/dist/functions/start_asset_creation.js +0 -106
  100. package/dist/functions/start_asset_creation.js.map +0 -1
  101. package/dist/functions/storage_firebase.d.ts +0 -1
  102. package/dist/functions/storage_firebase.js +0 -286
  103. package/dist/functions/storage_firebase.js.map +0 -1
  104. package/dist/functions/stripe.d.ts +0 -1
  105. package/dist/functions/stripe.js +0 -1243
  106. package/dist/functions/stripe.js.map +0 -1
  107. package/dist/functions/stripe_webhook.d.ts +0 -1
  108. package/dist/functions/stripe_webhook.js +0 -605
  109. package/dist/functions/stripe_webhook.js.map +0 -1
  110. package/dist/functions/stripe_webhook_connect.d.ts +0 -1
  111. package/dist/functions/stripe_webhook_connect.js +0 -173
  112. package/dist/functions/stripe_webhook_connect.js.map +0 -1
  113. package/dist/functions/stripe_webhook_secure.d.ts +0 -1
  114. package/dist/functions/stripe_webhook_secure.js +0 -182
  115. package/dist/functions/stripe_webhook_secure.js.map +0 -1
  116. package/dist/functions/subscription_verify_android.d.ts +0 -1
  117. package/dist/functions/subscription_verify_android.js +0 -195
  118. package/dist/functions/subscription_verify_android.js.map +0 -1
  119. package/dist/functions/subscription_verify_ios.d.ts +0 -1
  120. package/dist/functions/subscription_verify_ios.js +0 -170
  121. package/dist/functions/subscription_verify_ios.js.map +0 -1
  122. package/dist/lib/api.d.ts +0 -185
  123. package/dist/lib/api.js +0 -172
  124. package/dist/lib/api.js.map +0 -1
  125. package/dist/lib/exntensions/string.extension.d.ts +0 -214
  126. package/dist/lib/exntensions/string.extension.js +0 -226
  127. package/dist/lib/exntensions/string.extension.js.map +0 -1
  128. package/dist/lib/functions/delete_documents.d.ts +0 -32
  129. package/dist/lib/functions/delete_documents.js +0 -111
  130. package/dist/lib/functions/delete_documents.js.map +0 -1
  131. package/dist/lib/functions/firestore.d.ts +0 -114
  132. package/dist/lib/functions/firestore.js +0 -347
  133. package/dist/lib/functions/firestore.js.map +0 -1
  134. package/dist/lib/functions/gmail.d.ts +0 -39
  135. package/dist/lib/functions/gmail.js +0 -64
  136. package/dist/lib/functions/gmail.js.map +0 -1
  137. package/dist/lib/functions/send_grid.d.ts +0 -33
  138. package/dist/lib/functions/send_grid.js +0 -57
  139. package/dist/lib/functions/send_grid.js.map +0 -1
  140. package/dist/lib/functions/send_notification.d.ts +0 -109
  141. package/dist/lib/functions/send_notification.js +0 -386
  142. package/dist/lib/functions/send_notification.js.map +0 -1
  143. package/dist/lib/functions/update_subscription.d.ts +0 -84
  144. package/dist/lib/functions/update_subscription.js +0 -150
  145. package/dist/lib/functions/update_subscription.js.map +0 -1
  146. package/dist/lib/functions/update_unlock.d.ts +0 -28
  147. package/dist/lib/functions/update_unlock.js +0 -84
  148. package/dist/lib/functions/update_unlock.js.map +0 -1
  149. package/dist/lib/functions/update_wallet.d.ts +0 -34
  150. package/dist/lib/functions/update_wallet.js +0 -91
  151. package/dist/lib/functions/update_wallet.js.map +0 -1
  152. package/dist/lib/functions/verify_android.d.ts +0 -50
  153. package/dist/lib/functions/verify_android.js +0 -130
  154. package/dist/lib/functions/verify_android.js.map +0 -1
  155. package/dist/lib/functions/verify_ios.d.ts +0 -73
  156. package/dist/lib/functions/verify_ios.js +0 -227
  157. package/dist/lib/functions/verify_ios.js.map +0 -1
  158. package/dist/lib/model_field_value/converters/firestore_basic_converter.d.ts +0 -25
  159. package/dist/lib/model_field_value/converters/firestore_basic_converter.js +0 -28
  160. package/dist/lib/model_field_value/converters/firestore_basic_converter.js.map +0 -1
  161. package/dist/lib/model_field_value/converters/firestore_enum_converter.d.ts +0 -25
  162. package/dist/lib/model_field_value/converters/firestore_enum_converter.js +0 -28
  163. package/dist/lib/model_field_value/converters/firestore_enum_converter.js.map +0 -1
  164. package/dist/lib/model_field_value/converters/firestore_model_command_base_converter.d.ts +0 -25
  165. package/dist/lib/model_field_value/converters/firestore_model_command_base_converter.js +0 -58
  166. package/dist/lib/model_field_value/converters/firestore_model_command_base_converter.js.map +0 -1
  167. package/dist/lib/model_field_value/converters/firestore_model_counter_converter.d.ts +0 -25
  168. package/dist/lib/model_field_value/converters/firestore_model_counter_converter.js +0 -177
  169. package/dist/lib/model_field_value/converters/firestore_model_counter_converter.js.map +0 -1
  170. package/dist/lib/model_field_value/converters/firestore_model_date_converter.d.ts +0 -26
  171. package/dist/lib/model_field_value/converters/firestore_model_date_converter.js +0 -174
  172. package/dist/lib/model_field_value/converters/firestore_model_date_converter.js.map +0 -1
  173. package/dist/lib/model_field_value/converters/firestore_model_date_range_converter.d.ts +0 -25
  174. package/dist/lib/model_field_value/converters/firestore_model_date_range_converter.js +0 -183
  175. package/dist/lib/model_field_value/converters/firestore_model_date_range_converter.js.map +0 -1
  176. package/dist/lib/model_field_value/converters/firestore_model_geo_value_converter.d.ts +0 -25
  177. package/dist/lib/model_field_value/converters/firestore_model_geo_value_converter.js +0 -163
  178. package/dist/lib/model_field_value/converters/firestore_model_geo_value_converter.js.map +0 -1
  179. package/dist/lib/model_field_value/converters/firestore_model_image_uri_converter.d.ts +0 -25
  180. package/dist/lib/model_field_value/converters/firestore_model_image_uri_converter.js +0 -134
  181. package/dist/lib/model_field_value/converters/firestore_model_image_uri_converter.js.map +0 -1
  182. package/dist/lib/model_field_value/converters/firestore_model_locale_converter.d.ts +0 -25
  183. package/dist/lib/model_field_value/converters/firestore_model_locale_converter.js +0 -163
  184. package/dist/lib/model_field_value/converters/firestore_model_locale_converter.js.map +0 -1
  185. package/dist/lib/model_field_value/converters/firestore_model_localized_value_converter.d.ts +0 -25
  186. package/dist/lib/model_field_value/converters/firestore_model_localized_value_converter.js +0 -89
  187. package/dist/lib/model_field_value/converters/firestore_model_localized_value_converter.js.map +0 -1
  188. package/dist/lib/model_field_value/converters/firestore_model_ref_converter.d.ts +0 -25
  189. package/dist/lib/model_field_value/converters/firestore_model_ref_converter.js +0 -113
  190. package/dist/lib/model_field_value/converters/firestore_model_ref_converter.js.map +0 -1
  191. package/dist/lib/model_field_value/converters/firestore_model_search_converter.d.ts +0 -25
  192. package/dist/lib/model_field_value/converters/firestore_model_search_converter.js +0 -91
  193. package/dist/lib/model_field_value/converters/firestore_model_search_converter.js.map +0 -1
  194. package/dist/lib/model_field_value/converters/firestore_model_time_converter.d.ts +0 -26
  195. package/dist/lib/model_field_value/converters/firestore_model_time_converter.js +0 -191
  196. package/dist/lib/model_field_value/converters/firestore_model_time_converter.js.map +0 -1
  197. package/dist/lib/model_field_value/converters/firestore_model_time_range_converter.d.ts +0 -25
  198. package/dist/lib/model_field_value/converters/firestore_model_time_range_converter.js +0 -183
  199. package/dist/lib/model_field_value/converters/firestore_model_time_range_converter.js.map +0 -1
  200. package/dist/lib/model_field_value/converters/firestore_model_timestamp_converter.d.ts +0 -26
  201. package/dist/lib/model_field_value/converters/firestore_model_timestamp_converter.js +0 -246
  202. package/dist/lib/model_field_value/converters/firestore_model_timestamp_converter.js.map +0 -1
  203. package/dist/lib/model_field_value/converters/firestore_model_timestamp_range_converter.d.ts +0 -25
  204. package/dist/lib/model_field_value/converters/firestore_model_timestamp_range_converter.js +0 -183
  205. package/dist/lib/model_field_value/converters/firestore_model_timestamp_range_converter.js.map +0 -1
  206. package/dist/lib/model_field_value/converters/firestore_model_token_converter.d.ts +0 -25
  207. package/dist/lib/model_field_value/converters/firestore_model_token_converter.js +0 -91
  208. package/dist/lib/model_field_value/converters/firestore_model_token_converter.js.map +0 -1
  209. package/dist/lib/model_field_value/converters/firestore_model_uri_converter.d.ts +0 -25
  210. package/dist/lib/model_field_value/converters/firestore_model_uri_converter.js +0 -134
  211. package/dist/lib/model_field_value/converters/firestore_model_uri_converter.js.map +0 -1
  212. package/dist/lib/model_field_value/converters/firestore_model_vector_value_converter.d.ts +0 -25
  213. package/dist/lib/model_field_value/converters/firestore_model_vector_value_converter.js +0 -80
  214. package/dist/lib/model_field_value/converters/firestore_model_vector_value_converter.js.map +0 -1
  215. package/dist/lib/model_field_value/converters/firestore_model_video_uri_converter.d.ts +0 -25
  216. package/dist/lib/model_field_value/converters/firestore_model_video_uri_converter.js +0 -134
  217. package/dist/lib/model_field_value/converters/firestore_model_video_uri_converter.js.map +0 -1
  218. package/dist/lib/model_field_value/converters/firestore_null_converter.d.ts +0 -25
  219. package/dist/lib/model_field_value/converters/firestore_null_converter.js +0 -45
  220. package/dist/lib/model_field_value/converters/firestore_null_converter.js.map +0 -1
  221. package/dist/lib/model_field_value/default_firestore_model_field_value_converter.d.ts +0 -61
  222. package/dist/lib/model_field_value/default_firestore_model_field_value_converter.js +0 -140
  223. package/dist/lib/model_field_value/default_firestore_model_field_value_converter.js.map +0 -1
  224. package/dist/lib/model_field_value/firestore_model_field_value_converter.d.ts +0 -154
  225. package/dist/lib/model_field_value/firestore_model_field_value_converter.js +0 -127
  226. package/dist/lib/model_field_value/firestore_model_field_value_converter.js.map +0 -1
  227. package/dist/lib/model_field_value/model_field_value.d.ts +0 -264
  228. package/dist/lib/model_field_value/model_field_value.js +0 -314
  229. package/dist/lib/model_field_value/model_field_value.js.map +0 -1
  230. package/dist/lib/regions.d.ts +0 -6
  231. package/dist/lib/regions.js +0 -3
  232. package/dist/lib/regions.js.map +0 -1
  233. package/dist/lib/schedulers/copy_document.d.ts +0 -35
  234. package/dist/lib/schedulers/copy_document.js +0 -59
  235. package/dist/lib/schedulers/copy_document.js.map +0 -1
  236. package/dist/lib/schedulers/delete_documents.d.ts +0 -35
  237. package/dist/lib/schedulers/delete_documents.js +0 -86
  238. package/dist/lib/schedulers/delete_documents.js.map +0 -1
  239. package/dist/lib/schedulers/notification.d.ts +0 -35
  240. package/dist/lib/schedulers/notification.js +0 -78
  241. package/dist/lib/schedulers/notification.js.map +0 -1
  242. package/dist/lib/src/call_process_function_base.d.ts +0 -39
  243. package/dist/lib/src/call_process_function_base.js +0 -82
  244. package/dist/lib/src/call_process_function_base.js.map +0 -1
  245. package/dist/lib/src/firebase_loader.d.ts +0 -30
  246. package/dist/lib/src/firebase_loader.js +0 -77
  247. package/dist/lib/src/firebase_loader.js.map +0 -1
  248. package/dist/lib/src/firestore_triggered_process_function_base.d.ts +0 -40
  249. package/dist/lib/src/firestore_triggered_process_function_base.js +0 -82
  250. package/dist/lib/src/firestore_triggered_process_function_base.js.map +0 -1
  251. package/dist/lib/src/functions_base.d.ts +0 -327
  252. package/dist/lib/src/functions_base.js +0 -38
  253. package/dist/lib/src/functions_base.js.map +0 -1
  254. package/dist/lib/src/functions_data.d.ts +0 -10
  255. package/dist/lib/src/functions_data.js +0 -19
  256. package/dist/lib/src/functions_data.js.map +0 -1
  257. package/dist/lib/src/request_process_function_base.d.ts +0 -39
  258. package/dist/lib/src/request_process_function_base.js +0 -80
  259. package/dist/lib/src/request_process_function_base.js.map +0 -1
  260. package/dist/lib/src/schedule_process_function_base.d.ts +0 -33
  261. package/dist/lib/src/schedule_process_function_base.js +0 -81
  262. package/dist/lib/src/schedule_process_function_base.js.map +0 -1
  263. package/dist/lib/src/sql_api_base.d.ts +0 -185
  264. package/dist/lib/src/sql_api_base.js +0 -94
  265. package/dist/lib/src/sql_api_base.js.map +0 -1
  266. package/dist/lib/utils.d.ts +0 -82
  267. package/dist/lib/utils.js +0 -142
  268. package/dist/lib/utils.js.map +0 -1
@@ -1,306 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __importStar = (this && this.__importStar) || (function () {
19
- var ownKeys = function(o) {
20
- ownKeys = Object.getOwnPropertyNames || function (o) {
21
- var ar = [];
22
- for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
- return ar;
24
- };
25
- return ownKeys(o);
26
- };
27
- return function (mod) {
28
- if (mod && mod.__esModule) return mod;
29
- var result = {};
30
- if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
- __setModuleDefault(result, mod);
32
- return result;
33
- };
34
- })();
35
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
36
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
37
- return new (P || (P = Promise))(function (resolve, reject) {
38
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
39
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
40
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
41
- step((generator = generator.apply(thisArg, _arguments || [])).next());
42
- });
43
- };
44
- Object.defineProperty(exports, "__esModule", { value: true });
45
- const functions = __importStar(require("firebase-functions/v2"));
46
- const verifier = __importStar(require("../lib/functions/verify_android"));
47
- const utils = __importStar(require("../lib/utils"));
48
- const firebase_loader_1 = require("../lib/src/firebase_loader");
49
- /**
50
- * This is a webhook endpoint for Android. you can create a `purchasing` topic in GCP's pub/sub and set the principal to "google-play-developer-notifications@system.gserviceaccount.com" to receive notifications.
51
- *
52
- * Android用のWebhookのエンドポイントです。GCPのpub/subに`purchasing`のトピックを作成しプリンシパルに「google-play-developer-notifications@system.gserviceaccount.com」を設定することで通知を受け取ることができるようになります。
53
- *
54
- * @param process.env.PURCHASE_ANDROID_SERVICEACCOUNT_EMAIL
55
- * The email address of your Google service account.
56
- * Create an OAuth consent screen from the URL below.
57
- * https://console.cloud.google.com/apis/credentials/consent
58
- * It is then created from the service account.
59
- * https://console.cloud.google.com/iam-admin/serviceaccounts
60
- *
61
- * Googleのサービスアカウントのメールアドレス。
62
- * 下記のURLからOAuthの同意画面を作成します。
63
- * https://console.cloud.google.com/apis/credentials/consent
64
- * その後、サービスアカウントから作成します。
65
- * https://console.cloud.google.com/iam-admin/serviceaccounts
66
- *
67
- * @param process.env.PURCHASE_ANDROID_SERVICEACCOUNT_PRIVATE_KEY
68
- * A private key for your Google service account.
69
- * Create an OAuth consent screen from the URL below.
70
- * https://console.cloud.google.com/apis/credentials/consent
71
- * It is then created from the service account.
72
- * https://console.cloud.google.com/iam-admin/serviceaccounts
73
- * After creating a service account, create a key in Json format from the Key tab.
74
- * The private key is described there.
75
- *
76
- * Googleのサービスアカウントのプライベートキー。
77
- * 下記のURLからOAuthの同意画面を作成します。
78
- * https://console.cloud.google.com/apis/credentials/consent
79
- * その後、サービスアカウントから作成します。
80
- * https://console.cloud.google.com/iam-admin/serviceaccounts
81
- * サービスアカウント作成後、キーのタブからJson形式でキーを作成します。
82
- * プライベートキーはそこに記述されています。
83
- *
84
- * @param process.env.PURCHASE_SUBSCRIPTIONPATH
85
- * Describes the path to the collection of subscriptions.
86
- *
87
- * サブスクリプションのコレクションのパスを記述します。
88
- */
89
- module.exports = (regions, options, data) => {
90
- var _a, _b, _c;
91
- return functions.pubsub.onMessagePublished({
92
- topic: (_a = options.topic) !== null && _a !== void 0 ? _a : "purchasing",
93
- region: (_b = options.region) !== null && _b !== void 0 ? _b : regions[0],
94
- timeoutSeconds: options.timeoutSeconds,
95
- memory: options.memory,
96
- minInstances: options.minInstances,
97
- concurrency: options.concurrency,
98
- maxInstances: options.maxInstances,
99
- serviceAccount: (_c = options.serviceAccount) !== null && _c !== void 0 ? _c : undefined,
100
- }, (message) => __awaiter(void 0, void 0, void 0, function* () {
101
- var _a;
102
- try {
103
- const messageBody = message.data.message.data ?
104
- JSON.parse(Buffer.from(message.data.message.data, "base64").toString()) :
105
- null;
106
- if (messageBody) {
107
- let error = null;
108
- const firestoreDatabaseIds = (_a = options.firestoreDatabaseIds) !== null && _a !== void 0 ? _a : [""];
109
- for (const databaseId of firestoreDatabaseIds) {
110
- try {
111
- const firestoreInstance = (0, firebase_loader_1.firestoreLoader)(databaseId);
112
- const targetPath = process.env.PURCHASE_SUBSCRIPTIONPATH;
113
- const androidServiceAccountEmail = process.env.PURCHASE_ANDROID_SERVICEACCOUNT_EMAIL;
114
- const androidServiceAccountPrivateKey = process.env.PURCHASE_ANDROID_SERVICEACCOUNT_PRIVATE_KEY;
115
- if (!androidServiceAccountEmail || !androidServiceAccountPrivateKey || !targetPath) {
116
- throw new Error("The data is invalid.");
117
- }
118
- const { subscriptionNotification, packageName, } = messageBody;
119
- if (subscriptionNotification) {
120
- const { notificationType, purchaseToken, subscriptionId, } = subscriptionNotification;
121
- if (!purchaseToken || !packageName || !subscriptionId) {
122
- throw new Error("The data is invalid.");
123
- }
124
- const res = yield verifier.verifyAndroid({
125
- type: "subscriptions",
126
- serviceAccountEmail: androidServiceAccountEmail,
127
- serviceAccountPrivateKey: androidServiceAccountPrivateKey,
128
- packageName: packageName,
129
- productId: subscriptionId,
130
- purchaseToken: purchaseToken,
131
- });
132
- const search = yield firestoreInstance.collection(targetPath).where("token", "==", purchaseToken).get();
133
- if (search.empty) {
134
- console.error("The purchased data is not found.");
135
- return;
136
- }
137
- const doc = search.docs[0];
138
- const data = doc === null || doc === void 0 ? void 0 : doc.data();
139
- const path = doc === null || doc === void 0 ? void 0 : doc.ref.path;
140
- if (!data) {
141
- console.error("The purchased data is not found.");
142
- return;
143
- }
144
- const user = data["userId"];
145
- console.log(`notificationType: ${notificationType}`);
146
- switch (notificationType) {
147
- case SubscriptionNotificationTypes.SUBSCRIPTION_RECOVERED:
148
- case SubscriptionNotificationTypes.SUBSCRIPTION_RESTARTED:
149
- case SubscriptionNotificationTypes.SUBSCRIPTION_RENEWED:
150
- case SubscriptionNotificationTypes.SUBSCRIPTION_IN_GRACE_PERIOD: {
151
- for (const key in res) {
152
- if (!data[key]) {
153
- continue;
154
- }
155
- data[key] = utils.parse(res[key]);
156
- }
157
- data["expired"] = false;
158
- data["paused"] = false;
159
- data["expiredTime"] = parseInt(res["expiryTimeMillis"]);
160
- data["orderId"] = res["orderId"];
161
- data["@time"] = new Date();
162
- yield firestoreInstance.doc(path).set(data);
163
- console.log(`Updated subscription: ${data["productId"]}:${user}`);
164
- break;
165
- }
166
- case SubscriptionNotificationTypes.SUBSCRIPTION_DEFERRED:
167
- case SubscriptionNotificationTypes.SUBSCRIPTION_PRICE_CHANGE_CONFIRMED:
168
- case SubscriptionNotificationTypes.SUBSCRIPTION_PAUSE_SCHEDULE_CHANGED: {
169
- for (const key in res) {
170
- if (!data[key]) {
171
- continue;
172
- }
173
- data[key] = utils.parse(res[key]);
174
- }
175
- data["expiredTime"] = parseInt(res["expiryTimeMillis"]);
176
- data["orderId"] = res["orderId"];
177
- data["@time"] = new Date();
178
- yield firestoreInstance.doc(path).set(data);
179
- console.log(`Updated subscription: ${data["productId"]}:${user}`);
180
- break;
181
- }
182
- case SubscriptionNotificationTypes.SUBSCRIPTION_CANCELED: {
183
- for (const key in res) {
184
- if (!data[key]) {
185
- continue;
186
- }
187
- data[key] = utils.parse(res[key]);
188
- }
189
- const time = new Date().getTime();
190
- const expiryTimeMillis = data["expiredTime"] = parseInt(res["expiryTimeMillis"]);
191
- data["orderId"] = res["orderId"];
192
- data["@time"] = new Date();
193
- if (expiryTimeMillis <= time) {
194
- data["expired"] = true;
195
- data["paused"] = false;
196
- yield firestoreInstance.doc(path).set(data);
197
- console.log(`Expired subscription: ${data["productId"]}:${user}`);
198
- }
199
- else {
200
- data["expired"] = false;
201
- data["paused"] = false;
202
- yield firestoreInstance.doc(path).set(data);
203
- console.log(`Updated subscription: ${data["productId"]}:${user}`);
204
- }
205
- break;
206
- }
207
- case SubscriptionNotificationTypes.SUBSCRIPTION_REVOKED:
208
- case SubscriptionNotificationTypes.SUBSCRIPTION_EXPIRED:
209
- case SubscriptionNotificationTypes.SUBSCRIPTION_PAUSED:
210
- case SubscriptionNotificationTypes.SUBSCRIPTION_ON_HOLD: {
211
- for (const key in res) {
212
- if (!data[key]) {
213
- continue;
214
- }
215
- data[key] = utils.parse(res[key]);
216
- }
217
- data["expired"] = true;
218
- if (notificationType === SubscriptionNotificationTypes.SUBSCRIPTION_PAUSED || notificationType === SubscriptionNotificationTypes.SUBSCRIPTION_ON_HOLD) {
219
- data["paused"] = true;
220
- yield firestoreInstance.doc(path).set(data);
221
- console.log(`Paused subscription: ${data["productId"]}:${user}`);
222
- }
223
- else {
224
- data["paused"] = false;
225
- yield firestoreInstance.doc(path).set(data);
226
- console.log(`Expired subscription: ${data["productId"]}:${user}`);
227
- }
228
- break;
229
- }
230
- default:
231
- break;
232
- }
233
- if (res["linkedPurchaseToken"]) {
234
- const linkedPurchaseToken = res["linkedPurchaseToken"];
235
- const search = yield firestoreInstance.collection(targetPath).where("token", "==", linkedPurchaseToken).get();
236
- if (search.empty) {
237
- return;
238
- }
239
- const doc = search.docs[0];
240
- const data = doc === null || doc === void 0 ? void 0 : doc.data();
241
- const path = doc === null || doc === void 0 ? void 0 : doc.ref.path;
242
- if (!data) {
243
- throw new Error("The purchased data is not found.");
244
- }
245
- const user = data["userId"];
246
- data["expired"] = true;
247
- data["paused"] = false;
248
- data["@time"] = new Date();
249
- yield firestoreInstance.doc(path).set(data);
250
- console.log(`Expired subscription: ${data["productId"]}:${user}`);
251
- }
252
- }
253
- }
254
- catch (err) {
255
- error = err;
256
- }
257
- }
258
- if (error) {
259
- console.error(error);
260
- throw new functions.https.HttpsError("unknown", "Unknown error.");
261
- }
262
- }
263
- }
264
- catch (err) {
265
- console.error(err);
266
- throw new functions.https.HttpsError("unknown", "Unknown error.");
267
- }
268
- }));
269
- };
270
- /**
271
- * Notification Type.
272
- *
273
- * 通知タイプ。
274
- */
275
- var SubscriptionNotificationTypes;
276
- (function (SubscriptionNotificationTypes) {
277
- // 定期購入がアカウントの一時停止から復帰した。
278
- SubscriptionNotificationTypes[SubscriptionNotificationTypes["SUBSCRIPTION_RECOVERED"] = 1] = "SUBSCRIPTION_RECOVERED";
279
- // アクティブな定期購入が更新された。
280
- SubscriptionNotificationTypes[SubscriptionNotificationTypes["SUBSCRIPTION_RENEWED"] = 2] = "SUBSCRIPTION_RENEWED";
281
- // 定期購入が自発的または非自発的にキャンセルされた。
282
- // 自発的なキャンセルの場合、ユーザーがキャンセルしたときに送信されます。
283
- SubscriptionNotificationTypes[SubscriptionNotificationTypes["SUBSCRIPTION_CANCELED"] = 3] = "SUBSCRIPTION_CANCELED";
284
- // 新しい定期購入が購入された。
285
- SubscriptionNotificationTypes[SubscriptionNotificationTypes["SUBSCRIPTION_PURCHASED"] = 4] = "SUBSCRIPTION_PURCHASED";
286
- // 定期購入でアカウントが一時停止された(有効な場合)。
287
- SubscriptionNotificationTypes[SubscriptionNotificationTypes["SUBSCRIPTION_ON_HOLD"] = 5] = "SUBSCRIPTION_ON_HOLD";
288
- // 定期購入が猶予期間に入った(有効な場合)。
289
- SubscriptionNotificationTypes[SubscriptionNotificationTypes["SUBSCRIPTION_IN_GRACE_PERIOD"] = 6] = "SUBSCRIPTION_IN_GRACE_PERIOD";
290
- // ユーザーが [Play] > [アカウント] > [定期購入] から
291
- // 定期購入を再有効化した(定期購入の再開にはオプトインが必要)。
292
- SubscriptionNotificationTypes[SubscriptionNotificationTypes["SUBSCRIPTION_RESTARTED"] = 7] = "SUBSCRIPTION_RESTARTED";
293
- // 定期購入の料金変更がユーザーによって確認された。
294
- SubscriptionNotificationTypes[SubscriptionNotificationTypes["SUBSCRIPTION_PRICE_CHANGE_CONFIRMED"] = 8] = "SUBSCRIPTION_PRICE_CHANGE_CONFIRMED";
295
- // 定期購入の契約期間が延長された。
296
- SubscriptionNotificationTypes[SubscriptionNotificationTypes["SUBSCRIPTION_DEFERRED"] = 9] = "SUBSCRIPTION_DEFERRED";
297
- // 定期購入が一時停止された。
298
- SubscriptionNotificationTypes[SubscriptionNotificationTypes["SUBSCRIPTION_PAUSED"] = 10] = "SUBSCRIPTION_PAUSED";
299
- // 定期購入の一時停止スケジュールが変更された。
300
- SubscriptionNotificationTypes[SubscriptionNotificationTypes["SUBSCRIPTION_PAUSE_SCHEDULE_CHANGED"] = 11] = "SUBSCRIPTION_PAUSE_SCHEDULE_CHANGED";
301
- // 有効期限前にユーザーが定期購入を取り消した。
302
- SubscriptionNotificationTypes[SubscriptionNotificationTypes["SUBSCRIPTION_REVOKED"] = 12] = "SUBSCRIPTION_REVOKED";
303
- // 定期購入が期限切れになった。
304
- SubscriptionNotificationTypes[SubscriptionNotificationTypes["SUBSCRIPTION_EXPIRED"] = 13] = "SUBSCRIPTION_EXPIRED";
305
- })(SubscriptionNotificationTypes || (SubscriptionNotificationTypes = {}));
306
- //# sourceMappingURL=purchase_webhook_android.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"purchase_webhook_android.js","sourceRoot":"","sources":["../../src/functions/purchase_webhook_android.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- export {};
@@ -1,182 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __importStar = (this && this.__importStar) || (function () {
19
- var ownKeys = function(o) {
20
- ownKeys = Object.getOwnPropertyNames || function (o) {
21
- var ar = [];
22
- for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
- return ar;
24
- };
25
- return ownKeys(o);
26
- };
27
- return function (mod) {
28
- if (mod && mod.__esModule) return mod;
29
- var result = {};
30
- if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
- __setModuleDefault(result, mod);
32
- return result;
33
- };
34
- })();
35
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
36
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
37
- return new (P || (P = Promise))(function (resolve, reject) {
38
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
39
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
40
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
41
- step((generator = generator.apply(thisArg, _arguments || [])).next());
42
- });
43
- };
44
- Object.defineProperty(exports, "__esModule", { value: true });
45
- const functions = __importStar(require("firebase-functions/v2"));
46
- const utils = __importStar(require("../lib/utils"));
47
- const firebase_loader_1 = require("../lib/src/firebase_loader");
48
- /**
49
- * Webhook endpoint for IOS, which allows you to receive notifications by setting the endpoint in AppStoreConnect's [App]->[App Information]->[App Store Server Notification].
50
- *
51
- * IOS用のWebhookのエンドポイントです。AppStoreConnectの[App]->[App情報]->[App Storeサーバ通知]にエンドポイントを設定することで通知を受け取ることができるようになります。
52
- *
53
- * @param process.env.PURCHASE_IOS_SHAREDSECRET
54
- * SharedSecret for AppStore, obtained from [Apps]->[App Info]->[Shared Secret for App] in the AppStore.
55
- *
56
- * AppStoreのSharedSecret。AppStoreの[アプリ]->[App情報]->[App用共有シークレット]から取得します。
57
- *
58
- * @param process.env.PURCHASE_SUBSCRIPTIONPATH
59
- * Describes the path to the collection of subscriptions.
60
- *
61
- * サブスクリプションのコレクションのパスを記述します。
62
- */
63
- module.exports = (regions, options, data) => {
64
- var _a, _b;
65
- return functions.https.onRequest({
66
- region: (_a = options.region) !== null && _a !== void 0 ? _a : regions,
67
- timeoutSeconds: options.timeoutSeconds,
68
- memory: options.memory,
69
- minInstances: options.minInstances,
70
- concurrency: options.concurrency,
71
- maxInstances: options.maxInstances,
72
- serviceAccount: (_b = options.serviceAccount) !== null && _b !== void 0 ? _b : undefined,
73
- }, (req, res) => __awaiter(void 0, void 0, void 0, function* () {
74
- var _a;
75
- try {
76
- const message = req.body;
77
- const signedPayload = message.signedPayload;
78
- if (signedPayload) {
79
- const signedPayloadBody = signedPayload.replace(/-/g, "+").replace(/_/g, "/").split(".")[1];
80
- const messageBody = JSON.parse(Buffer.from(signedPayloadBody, "base64").toString());
81
- if (messageBody) {
82
- const { notificationType, data, } = messageBody;
83
- const { signedTransactionInfo, } = data;
84
- const signedTransactionInfoBody = signedTransactionInfo.replace(/-/g, "+").replace(/_/g, "/").split(".")[1];
85
- const transactionInfo = JSON.parse(Buffer.from(signedTransactionInfoBody, "base64").toString());
86
- let error = null;
87
- const firestoreDatabaseIds = (_a = options.firestoreDatabaseIds) !== null && _a !== void 0 ? _a : [""];
88
- for (const databaseId of firestoreDatabaseIds) {
89
- try {
90
- const firestoreInstance = (0, firebase_loader_1.firestoreLoader)(databaseId);
91
- const targetPath = process.env.PURCHASE_SUBSCRIPTIONPATH;
92
- if (transactionInfo) {
93
- const transactionId = transactionInfo.originalTransactionId;
94
- const doc = yield firestoreInstance.doc(`${targetPath}/${transactionId}`).get();
95
- const data = doc === null || doc === void 0 ? void 0 : doc.data();
96
- const path = doc === null || doc === void 0 ? void 0 : doc.ref.path;
97
- if (!data) {
98
- throw new Error("The purchased data is not found.");
99
- }
100
- const user = data["userId"];
101
- console.log(`notificationType: ${notificationType}`);
102
- switch (notificationType) {
103
- case "CONSUMPTION_REQUEST":
104
- case "DID_CHANGE_RENEWAL_STATUS":
105
- case "DID_FAIL_TO_RENEW":
106
- case "PRICE_INCREASE":
107
- case "REFUND_DECLINED": {
108
- for (const key in transactionInfo) {
109
- if (!data[key]) {
110
- continue;
111
- }
112
- data[key] = utils.parse(transactionInfo[key]);
113
- }
114
- data["expiredTime"] = parseInt(transactionInfo["expiresDate"]);
115
- data["productId"] = data["product_id"] = transactionInfo["productId"];
116
- data["orderId"] = transactionInfo["transactionId"];
117
- yield firestoreInstance.doc(path).set(data);
118
- console.log(`Updated subscription: ${data["productId"]}:${user}`);
119
- break;
120
- }
121
- case "SUBSCRIBED":
122
- case "DID_CHANGE_RENEWAL_PREF":
123
- case "DID_RENEW":
124
- case "OFFER_REDEEMED":
125
- case "RENEWAL_EXTENDED": {
126
- for (const key in transactionInfo) {
127
- if (!data[key]) {
128
- continue;
129
- }
130
- data[key] = utils.parse(transactionInfo[key]);
131
- }
132
- data["expired"] = false;
133
- data["paused"] = false;
134
- data["expiredTime"] = parseInt(transactionInfo["expiresDate"]);
135
- data["productId"] = data["product_id"] = transactionInfo["productId"];
136
- data["orderId"] = transactionInfo["transactionId"];
137
- yield firestoreInstance.doc(path).set(data);
138
- console.log(`Updated subscription: ${data["productId"]}:${user}`);
139
- break;
140
- }
141
- case "EXPIRED":
142
- case "REVOKE":
143
- case "GRACE_PERIOD_EXPIRED":
144
- case "REFUND": {
145
- for (const key in transactionInfo) {
146
- if (!data[key]) {
147
- continue;
148
- }
149
- data[key] = utils.parse(transactionInfo[key]);
150
- }
151
- data["expired"] = true;
152
- data["paused"] = false;
153
- data["productId"] = data["product_id"] = transactionInfo["productId"];
154
- data["orderId"] = transactionInfo["transactionId"];
155
- yield firestoreInstance.doc(path).set(data);
156
- console.log(`Expired subscription: ${data["productId"]}:${user}`);
157
- break;
158
- }
159
- default:
160
- break;
161
- }
162
- }
163
- }
164
- catch (err) {
165
- error = err;
166
- }
167
- }
168
- if (error) {
169
- console.error(error);
170
- throw new functions.https.HttpsError("unknown", "Unknown error.");
171
- }
172
- }
173
- }
174
- res.send({ "status": 1 });
175
- }
176
- catch (err) {
177
- console.error(err);
178
- res.end();
179
- }
180
- }));
181
- };
182
- //# sourceMappingURL=purchase_webhook_ios.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"purchase_webhook_ios.js","sourceRoot":"","sources":["../../src/functions/purchase_webhook_ios.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- export {};
@@ -1,103 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __importStar = (this && this.__importStar) || (function () {
19
- var ownKeys = function(o) {
20
- ownKeys = Object.getOwnPropertyNames || function (o) {
21
- var ar = [];
22
- for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
- return ar;
24
- };
25
- return ownKeys(o);
26
- };
27
- return function (mod) {
28
- if (mod && mod.__esModule) return mod;
29
- var result = {};
30
- if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
- __setModuleDefault(result, mod);
32
- return result;
33
- };
34
- })();
35
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
36
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
37
- return new (P || (P = Promise))(function (resolve, reject) {
38
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
39
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
40
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
41
- step((generator = generator.apply(thisArg, _arguments || [])).next());
42
- });
43
- };
44
- Object.defineProperty(exports, "__esModule", { value: true });
45
- const functions = __importStar(require("firebase-functions/v2"));
46
- const firebase_loader_1 = require("../lib/src/firebase_loader");
47
- const admin = __importStar(require("firebase-admin"));
48
- /**
49
- * Periodically check and start asset creation.
50
- *
51
- * 定期的にアセット作成をチェックし開始します。
52
- */
53
- module.exports = (regions, options, data) => {
54
- var _a, _b, _c;
55
- return functions.scheduler.onSchedule({
56
- schedule: (_a = options.schedule) !== null && _a !== void 0 ? _a : "every 1 hours",
57
- region: (_b = options.region) !== null && _b !== void 0 ? _b : regions[0],
58
- timeoutSeconds: options.timeoutSeconds,
59
- memory: options.memory,
60
- minInstances: options.minInstances,
61
- concurrency: options.concurrency,
62
- maxInstances: options.maxInstances,
63
- serviceAccount: (_c = options.serviceAccount) !== null && _c !== void 0 ? _c : undefined,
64
- }, (event) => __awaiter(void 0, void 0, void 0, function* () {
65
- var _a;
66
- try {
67
- const firestoreDatabaseIds = (_a = options.firestoreDatabaseIds) !== null && _a !== void 0 ? _a : ["(default)"];
68
- for (const databaseId of firestoreDatabaseIds) {
69
- try {
70
- const firestoreInstance = (0, firebase_loader_1.firestoreLoader)(databaseId);
71
- // Example logic: Find channels that haven't had assets created in a while
72
- // This is a placeholder implementation.
73
- // In a real scenario, you would query a 'channels' collection.
74
- console.log(`Checking for asset creation tasks in database: ${databaseId || "(default)"}`);
75
- // Placeholder: Query for pending requests that might have been missed
76
- const requestsRef = firestoreInstance.collection("plugins/asset/request");
77
- const snapshot = yield requestsRef.where("status", "==", "pending").limit(10).get();
78
- if (snapshot.empty) {
79
- console.log("No pending asset creation requests found.");
80
- continue;
81
- }
82
- for (const doc of snapshot.docs) {
83
- console.log(`Processing pending request: ${doc.id}`);
84
- // TODO: Trigger the broad research function here
85
- // Mark as processing to avoid double processing
86
- yield doc.ref.update({
87
- status: "processing",
88
- updatedAt: admin.firestore.FieldValue.serverTimestamp(),
89
- });
90
- }
91
- }
92
- catch (err) {
93
- console.error(`Error processing database ${databaseId}:`, err);
94
- }
95
- }
96
- }
97
- catch (err) {
98
- console.error(err);
99
- throw err;
100
- }
101
- }));
102
- };
103
- //# sourceMappingURL=schedule_asset_creation.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"schedule_asset_creation.js","sourceRoot":"","sources":["../../src/functions/schedule_asset_creation.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,iEAAmD;AAEnD,gEAA6D;AAC7D,sDAAwC;AAExC;;;;GAIG;AACH,MAAM,CAAC,OAAO,GAAG,CACb,OAAiB,EACjB,OAAkC,EAClC,IAA4B,EAC9B,EAAE;;IAAC,OAAA,SAAS,CAAC,SAAS,CAAC,UAAU,CAC/B;QACI,QAAQ,EAAE,MAAA,OAAO,CAAC,QAAQ,mCAAI,eAAe;QAC7C,MAAM,EAAE,MAAA,OAAO,CAAC,MAAM,mCAAI,OAAO,CAAC,CAAC,CAAC;QACpC,cAAc,EAAE,OAAO,CAAC,cAAc;QACtC,MAAM,EAAE,OAAO,CAAC,MAAM;QACtB,YAAY,EAAE,OAAO,CAAC,YAAY;QAClC,WAAW,EAAE,OAAO,CAAC,WAAW;QAChC,YAAY,EAAE,OAAO,CAAC,YAAY;QAClC,cAAc,EAAE,MAAA,OAAO,CAAC,cAAc,mCAAI,SAAS;KACtD,EACD,CAAO,KAAK,EAAE,EAAE;;QACZ,IAAI,CAAC;YACD,MAAM,oBAAoB,GAAG,MAAA,OAAO,CAAC,oBAAoB,mCAAI,CAAC,WAAW,CAAC,CAAC;YAC3E,KAAK,MAAM,UAAU,IAAI,oBAAoB,EAAE,CAAC;gBAC5C,IAAI,CAAC;oBACD,MAAM,iBAAiB,GAAG,IAAA,iCAAe,EAAC,UAAU,CAAC,CAAC;oBACtD,0EAA0E;oBAC1E,wCAAwC;oBACxC,+DAA+D;oBAE/D,OAAO,CAAC,GAAG,CAAC,kDAAkD,UAAU,IAAI,WAAW,EAAE,CAAC,CAAC;oBAE3F,sEAAsE;oBACtE,MAAM,WAAW,GAAG,iBAAiB,CAAC,UAAU,CAAC,uBAAuB,CAAC,CAAC;oBAC1E,MAAM,QAAQ,GAAG,MAAM,WAAW,CAAC,KAAK,CAAC,QAAQ,EAAE,IAAI,EAAE,SAAS,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,GAAG,EAAE,CAAC;oBAEpF,IAAI,QAAQ,CAAC,KAAK,EAAE,CAAC;wBACjB,OAAO,CAAC,GAAG,CAAC,2CAA2C,CAAC,CAAC;wBACzD,SAAS;oBACb,CAAC;oBAED,KAAK,MAAM,GAAG,IAAI,QAAQ,CAAC,IAAI,EAAE,CAAC;wBAC9B,OAAO,CAAC,GAAG,CAAC,+BAA+B,GAAG,CAAC,EAAE,EAAE,CAAC,CAAC;wBACrD,iDAAiD;wBAEjD,gDAAgD;wBAChD,MAAM,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC;4BACjB,MAAM,EAAE,YAAY;4BACpB,SAAS,EAAE,KAAK,CAAC,SAAS,CAAC,UAAU,CAAC,eAAe,EAAE;yBAC1D,CAAC,CAAC;oBACP,CAAC;gBAEL,CAAC;gBAAC,OAAO,GAAG,EAAE,CAAC;oBACX,OAAO,CAAC,KAAK,CAAC,6BAA6B,UAAU,GAAG,EAAE,GAAG,CAAC,CAAC;gBACnE,CAAC;YACL,CAAC;QACL,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACX,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YACnB,MAAM,GAAG,CAAC;QACd,CAAC;IACL,CAAC,CAAA,CACJ,CAAA;CAAA,CAAC"}
@@ -1 +0,0 @@
1
- export {};