@mathrunet/masamune 3.7.0 → 3.8.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 (267) hide show
  1. package/CHANGELOG.md +13 -0
  2. package/README.md +1 -1
  3. package/dist/functions/test.js +2 -2
  4. package/dist/functions/test.js.map +1 -1
  5. package/dist/functions.d.ts +2 -245
  6. package/dist/functions.js +2 -245
  7. package/dist/functions.js.map +1 -1
  8. package/dist/index.d.ts +4 -17
  9. package/dist/index.js +13 -15
  10. package/dist/index.js.map +1 -1
  11. package/package.json +10 -23
  12. package/.claude/settings.local.json +0 -12
  13. package/dist/functions/aggregate_model_firestore.d.ts +0 -1
  14. package/dist/functions/aggregate_model_firestore.js +0 -225
  15. package/dist/functions/aggregate_model_firestore.js.map +0 -1
  16. package/dist/functions/aggregation_model_firestore.d.ts +0 -1
  17. package/dist/functions/aggregation_model_firestore.js +0 -220
  18. package/dist/functions/aggregation_model_firestore.js.map +0 -1
  19. package/dist/functions/agora_cloud_recording.d.ts +0 -1
  20. package/dist/functions/agora_cloud_recording.js +0 -125
  21. package/dist/functions/agora_cloud_recording.js.map +0 -1
  22. package/dist/functions/agora_token.d.ts +0 -1
  23. package/dist/functions/agora_token.js +0 -144
  24. package/dist/functions/agora_token.js.map +0 -1
  25. package/dist/functions/algolia.d.ts +0 -1
  26. package/dist/functions/algolia.js +0 -145
  27. package/dist/functions/algolia.js.map +0 -1
  28. package/dist/functions/android_auth_code.d.ts +0 -1
  29. package/dist/functions/android_auth_code.js +0 -97
  30. package/dist/functions/android_auth_code.js.map +0 -1
  31. package/dist/functions/android_token.d.ts +0 -1
  32. package/dist/functions/android_token.js +0 -132
  33. package/dist/functions/android_token.js.map +0 -1
  34. package/dist/functions/collection_model_firestore.d.ts +0 -1
  35. package/dist/functions/collection_model_firestore.js +0 -222
  36. package/dist/functions/collection_model_firestore.js.map +0 -1
  37. package/dist/functions/conduct_broad_research.d.ts +0 -1
  38. package/dist/functions/conduct_broad_research.js +0 -162
  39. package/dist/functions/conduct_broad_research.js.map +0 -1
  40. package/dist/functions/conduct_detailed_research.d.ts +0 -1
  41. package/dist/functions/conduct_detailed_research.js +0 -162
  42. package/dist/functions/conduct_detailed_research.js.map +0 -1
  43. package/dist/functions/consumable_verify_android.d.ts +0 -1
  44. package/dist/functions/consumable_verify_android.js +0 -172
  45. package/dist/functions/consumable_verify_android.js.map +0 -1
  46. package/dist/functions/consumable_verify_ios.d.ts +0 -1
  47. package/dist/functions/consumable_verify_ios.js +0 -136
  48. package/dist/functions/consumable_verify_ios.js.map +0 -1
  49. package/dist/functions/delete_documents.d.ts +0 -1
  50. package/dist/functions/delete_documents.js +0 -91
  51. package/dist/functions/delete_documents.js.map +0 -1
  52. package/dist/functions/delete_user.d.ts +0 -1
  53. package/dist/functions/delete_user.js +0 -87
  54. package/dist/functions/delete_user.js.map +0 -1
  55. package/dist/functions/document_model_firestore.d.ts +0 -1
  56. package/dist/functions/document_model_firestore.js +0 -218
  57. package/dist/functions/document_model_firestore.js.map +0 -1
  58. package/dist/functions/geocoding.d.ts +0 -1
  59. package/dist/functions/geocoding.js +0 -93
  60. package/dist/functions/geocoding.js.map +0 -1
  61. package/dist/functions/gmail.d.ts +0 -1
  62. package/dist/functions/gmail.js +0 -117
  63. package/dist/functions/gmail.js.map +0 -1
  64. package/dist/functions/google_token.d.ts +0 -1
  65. package/dist/functions/google_token.js +0 -105
  66. package/dist/functions/google_token.js.map +0 -1
  67. package/dist/functions/hls.d.ts +0 -1
  68. package/dist/functions/hls.js +0 -169
  69. package/dist/functions/hls.js.map +0 -1
  70. package/dist/functions/nonconsumable_verify_android.d.ts +0 -1
  71. package/dist/functions/nonconsumable_verify_android.js +0 -166
  72. package/dist/functions/nonconsumable_verify_android.js.map +0 -1
  73. package/dist/functions/nonconsumable_verify_ios.d.ts +0 -1
  74. package/dist/functions/nonconsumable_verify_ios.js +0 -130
  75. package/dist/functions/nonconsumable_verify_ios.js.map +0 -1
  76. package/dist/functions/openai_chat_gpt.d.ts +0 -1
  77. package/dist/functions/openai_chat_gpt.js +0 -117
  78. package/dist/functions/openai_chat_gpt.js.map +0 -1
  79. package/dist/functions/purchase_webhook_android.d.ts +0 -1
  80. package/dist/functions/purchase_webhook_android.js +0 -306
  81. package/dist/functions/purchase_webhook_android.js.map +0 -1
  82. package/dist/functions/purchase_webhook_ios.d.ts +0 -1
  83. package/dist/functions/purchase_webhook_ios.js +0 -182
  84. package/dist/functions/purchase_webhook_ios.js.map +0 -1
  85. package/dist/functions/schedule_asset_creation.d.ts +0 -1
  86. package/dist/functions/schedule_asset_creation.js +0 -103
  87. package/dist/functions/schedule_asset_creation.js.map +0 -1
  88. package/dist/functions/scheduler.d.ts +0 -1
  89. package/dist/functions/scheduler.js +0 -144
  90. package/dist/functions/scheduler.js.map +0 -1
  91. package/dist/functions/send_grid.d.ts +0 -1
  92. package/dist/functions/send_grid.js +0 -111
  93. package/dist/functions/send_grid.js.map +0 -1
  94. package/dist/functions/send_notification.d.ts +0 -1
  95. package/dist/functions/send_notification.js +0 -207
  96. package/dist/functions/send_notification.js.map +0 -1
  97. package/dist/functions/start_asset_creation.d.ts +0 -1
  98. package/dist/functions/start_asset_creation.js +0 -106
  99. package/dist/functions/start_asset_creation.js.map +0 -1
  100. package/dist/functions/storage_firebase.d.ts +0 -1
  101. package/dist/functions/storage_firebase.js +0 -286
  102. package/dist/functions/storage_firebase.js.map +0 -1
  103. package/dist/functions/stripe.d.ts +0 -1
  104. package/dist/functions/stripe.js +0 -1243
  105. package/dist/functions/stripe.js.map +0 -1
  106. package/dist/functions/stripe_webhook.d.ts +0 -1
  107. package/dist/functions/stripe_webhook.js +0 -605
  108. package/dist/functions/stripe_webhook.js.map +0 -1
  109. package/dist/functions/stripe_webhook_connect.d.ts +0 -1
  110. package/dist/functions/stripe_webhook_connect.js +0 -173
  111. package/dist/functions/stripe_webhook_connect.js.map +0 -1
  112. package/dist/functions/stripe_webhook_secure.d.ts +0 -1
  113. package/dist/functions/stripe_webhook_secure.js +0 -182
  114. package/dist/functions/stripe_webhook_secure.js.map +0 -1
  115. package/dist/functions/subscription_verify_android.d.ts +0 -1
  116. package/dist/functions/subscription_verify_android.js +0 -195
  117. package/dist/functions/subscription_verify_android.js.map +0 -1
  118. package/dist/functions/subscription_verify_ios.d.ts +0 -1
  119. package/dist/functions/subscription_verify_ios.js +0 -170
  120. package/dist/functions/subscription_verify_ios.js.map +0 -1
  121. package/dist/lib/api.d.ts +0 -185
  122. package/dist/lib/api.js +0 -172
  123. package/dist/lib/api.js.map +0 -1
  124. package/dist/lib/exntensions/string.extension.d.ts +0 -214
  125. package/dist/lib/exntensions/string.extension.js +0 -226
  126. package/dist/lib/exntensions/string.extension.js.map +0 -1
  127. package/dist/lib/functions/delete_documents.d.ts +0 -32
  128. package/dist/lib/functions/delete_documents.js +0 -111
  129. package/dist/lib/functions/delete_documents.js.map +0 -1
  130. package/dist/lib/functions/firestore.d.ts +0 -114
  131. package/dist/lib/functions/firestore.js +0 -347
  132. package/dist/lib/functions/firestore.js.map +0 -1
  133. package/dist/lib/functions/gmail.d.ts +0 -39
  134. package/dist/lib/functions/gmail.js +0 -64
  135. package/dist/lib/functions/gmail.js.map +0 -1
  136. package/dist/lib/functions/send_grid.d.ts +0 -33
  137. package/dist/lib/functions/send_grid.js +0 -57
  138. package/dist/lib/functions/send_grid.js.map +0 -1
  139. package/dist/lib/functions/send_notification.d.ts +0 -109
  140. package/dist/lib/functions/send_notification.js +0 -386
  141. package/dist/lib/functions/send_notification.js.map +0 -1
  142. package/dist/lib/functions/update_subscription.d.ts +0 -84
  143. package/dist/lib/functions/update_subscription.js +0 -150
  144. package/dist/lib/functions/update_subscription.js.map +0 -1
  145. package/dist/lib/functions/update_unlock.d.ts +0 -28
  146. package/dist/lib/functions/update_unlock.js +0 -84
  147. package/dist/lib/functions/update_unlock.js.map +0 -1
  148. package/dist/lib/functions/update_wallet.d.ts +0 -34
  149. package/dist/lib/functions/update_wallet.js +0 -91
  150. package/dist/lib/functions/update_wallet.js.map +0 -1
  151. package/dist/lib/functions/verify_android.d.ts +0 -50
  152. package/dist/lib/functions/verify_android.js +0 -130
  153. package/dist/lib/functions/verify_android.js.map +0 -1
  154. package/dist/lib/functions/verify_ios.d.ts +0 -73
  155. package/dist/lib/functions/verify_ios.js +0 -227
  156. package/dist/lib/functions/verify_ios.js.map +0 -1
  157. package/dist/lib/model_field_value/converters/firestore_basic_converter.d.ts +0 -25
  158. package/dist/lib/model_field_value/converters/firestore_basic_converter.js +0 -28
  159. package/dist/lib/model_field_value/converters/firestore_basic_converter.js.map +0 -1
  160. package/dist/lib/model_field_value/converters/firestore_enum_converter.d.ts +0 -25
  161. package/dist/lib/model_field_value/converters/firestore_enum_converter.js +0 -28
  162. package/dist/lib/model_field_value/converters/firestore_enum_converter.js.map +0 -1
  163. package/dist/lib/model_field_value/converters/firestore_model_command_base_converter.d.ts +0 -25
  164. package/dist/lib/model_field_value/converters/firestore_model_command_base_converter.js +0 -58
  165. package/dist/lib/model_field_value/converters/firestore_model_command_base_converter.js.map +0 -1
  166. package/dist/lib/model_field_value/converters/firestore_model_counter_converter.d.ts +0 -25
  167. package/dist/lib/model_field_value/converters/firestore_model_counter_converter.js +0 -177
  168. package/dist/lib/model_field_value/converters/firestore_model_counter_converter.js.map +0 -1
  169. package/dist/lib/model_field_value/converters/firestore_model_date_converter.d.ts +0 -26
  170. package/dist/lib/model_field_value/converters/firestore_model_date_converter.js +0 -174
  171. package/dist/lib/model_field_value/converters/firestore_model_date_converter.js.map +0 -1
  172. package/dist/lib/model_field_value/converters/firestore_model_date_range_converter.d.ts +0 -25
  173. package/dist/lib/model_field_value/converters/firestore_model_date_range_converter.js +0 -183
  174. package/dist/lib/model_field_value/converters/firestore_model_date_range_converter.js.map +0 -1
  175. package/dist/lib/model_field_value/converters/firestore_model_geo_value_converter.d.ts +0 -25
  176. package/dist/lib/model_field_value/converters/firestore_model_geo_value_converter.js +0 -163
  177. package/dist/lib/model_field_value/converters/firestore_model_geo_value_converter.js.map +0 -1
  178. package/dist/lib/model_field_value/converters/firestore_model_image_uri_converter.d.ts +0 -25
  179. package/dist/lib/model_field_value/converters/firestore_model_image_uri_converter.js +0 -134
  180. package/dist/lib/model_field_value/converters/firestore_model_image_uri_converter.js.map +0 -1
  181. package/dist/lib/model_field_value/converters/firestore_model_locale_converter.d.ts +0 -25
  182. package/dist/lib/model_field_value/converters/firestore_model_locale_converter.js +0 -163
  183. package/dist/lib/model_field_value/converters/firestore_model_locale_converter.js.map +0 -1
  184. package/dist/lib/model_field_value/converters/firestore_model_localized_value_converter.d.ts +0 -25
  185. package/dist/lib/model_field_value/converters/firestore_model_localized_value_converter.js +0 -89
  186. package/dist/lib/model_field_value/converters/firestore_model_localized_value_converter.js.map +0 -1
  187. package/dist/lib/model_field_value/converters/firestore_model_ref_converter.d.ts +0 -25
  188. package/dist/lib/model_field_value/converters/firestore_model_ref_converter.js +0 -113
  189. package/dist/lib/model_field_value/converters/firestore_model_ref_converter.js.map +0 -1
  190. package/dist/lib/model_field_value/converters/firestore_model_search_converter.d.ts +0 -25
  191. package/dist/lib/model_field_value/converters/firestore_model_search_converter.js +0 -91
  192. package/dist/lib/model_field_value/converters/firestore_model_search_converter.js.map +0 -1
  193. package/dist/lib/model_field_value/converters/firestore_model_time_converter.d.ts +0 -26
  194. package/dist/lib/model_field_value/converters/firestore_model_time_converter.js +0 -191
  195. package/dist/lib/model_field_value/converters/firestore_model_time_converter.js.map +0 -1
  196. package/dist/lib/model_field_value/converters/firestore_model_time_range_converter.d.ts +0 -25
  197. package/dist/lib/model_field_value/converters/firestore_model_time_range_converter.js +0 -183
  198. package/dist/lib/model_field_value/converters/firestore_model_time_range_converter.js.map +0 -1
  199. package/dist/lib/model_field_value/converters/firestore_model_timestamp_converter.d.ts +0 -26
  200. package/dist/lib/model_field_value/converters/firestore_model_timestamp_converter.js +0 -246
  201. package/dist/lib/model_field_value/converters/firestore_model_timestamp_converter.js.map +0 -1
  202. package/dist/lib/model_field_value/converters/firestore_model_timestamp_range_converter.d.ts +0 -25
  203. package/dist/lib/model_field_value/converters/firestore_model_timestamp_range_converter.js +0 -183
  204. package/dist/lib/model_field_value/converters/firestore_model_timestamp_range_converter.js.map +0 -1
  205. package/dist/lib/model_field_value/converters/firestore_model_token_converter.d.ts +0 -25
  206. package/dist/lib/model_field_value/converters/firestore_model_token_converter.js +0 -91
  207. package/dist/lib/model_field_value/converters/firestore_model_token_converter.js.map +0 -1
  208. package/dist/lib/model_field_value/converters/firestore_model_uri_converter.d.ts +0 -25
  209. package/dist/lib/model_field_value/converters/firestore_model_uri_converter.js +0 -134
  210. package/dist/lib/model_field_value/converters/firestore_model_uri_converter.js.map +0 -1
  211. package/dist/lib/model_field_value/converters/firestore_model_vector_value_converter.d.ts +0 -25
  212. package/dist/lib/model_field_value/converters/firestore_model_vector_value_converter.js +0 -80
  213. package/dist/lib/model_field_value/converters/firestore_model_vector_value_converter.js.map +0 -1
  214. package/dist/lib/model_field_value/converters/firestore_model_video_uri_converter.d.ts +0 -25
  215. package/dist/lib/model_field_value/converters/firestore_model_video_uri_converter.js +0 -134
  216. package/dist/lib/model_field_value/converters/firestore_model_video_uri_converter.js.map +0 -1
  217. package/dist/lib/model_field_value/converters/firestore_null_converter.d.ts +0 -25
  218. package/dist/lib/model_field_value/converters/firestore_null_converter.js +0 -45
  219. package/dist/lib/model_field_value/converters/firestore_null_converter.js.map +0 -1
  220. package/dist/lib/model_field_value/default_firestore_model_field_value_converter.d.ts +0 -61
  221. package/dist/lib/model_field_value/default_firestore_model_field_value_converter.js +0 -140
  222. package/dist/lib/model_field_value/default_firestore_model_field_value_converter.js.map +0 -1
  223. package/dist/lib/model_field_value/firestore_model_field_value_converter.d.ts +0 -154
  224. package/dist/lib/model_field_value/firestore_model_field_value_converter.js +0 -127
  225. package/dist/lib/model_field_value/firestore_model_field_value_converter.js.map +0 -1
  226. package/dist/lib/model_field_value/model_field_value.d.ts +0 -264
  227. package/dist/lib/model_field_value/model_field_value.js +0 -314
  228. package/dist/lib/model_field_value/model_field_value.js.map +0 -1
  229. package/dist/lib/regions.d.ts +0 -6
  230. package/dist/lib/regions.js +0 -3
  231. package/dist/lib/regions.js.map +0 -1
  232. package/dist/lib/schedulers/copy_document.d.ts +0 -35
  233. package/dist/lib/schedulers/copy_document.js +0 -59
  234. package/dist/lib/schedulers/copy_document.js.map +0 -1
  235. package/dist/lib/schedulers/delete_documents.d.ts +0 -35
  236. package/dist/lib/schedulers/delete_documents.js +0 -86
  237. package/dist/lib/schedulers/delete_documents.js.map +0 -1
  238. package/dist/lib/schedulers/notification.d.ts +0 -35
  239. package/dist/lib/schedulers/notification.js +0 -78
  240. package/dist/lib/schedulers/notification.js.map +0 -1
  241. package/dist/lib/src/call_process_function_base.d.ts +0 -39
  242. package/dist/lib/src/call_process_function_base.js +0 -82
  243. package/dist/lib/src/call_process_function_base.js.map +0 -1
  244. package/dist/lib/src/firebase_loader.d.ts +0 -30
  245. package/dist/lib/src/firebase_loader.js +0 -77
  246. package/dist/lib/src/firebase_loader.js.map +0 -1
  247. package/dist/lib/src/firestore_triggered_process_function_base.d.ts +0 -40
  248. package/dist/lib/src/firestore_triggered_process_function_base.js +0 -82
  249. package/dist/lib/src/firestore_triggered_process_function_base.js.map +0 -1
  250. package/dist/lib/src/functions_base.d.ts +0 -327
  251. package/dist/lib/src/functions_base.js +0 -38
  252. package/dist/lib/src/functions_base.js.map +0 -1
  253. package/dist/lib/src/functions_data.d.ts +0 -10
  254. package/dist/lib/src/functions_data.js +0 -19
  255. package/dist/lib/src/functions_data.js.map +0 -1
  256. package/dist/lib/src/request_process_function_base.d.ts +0 -39
  257. package/dist/lib/src/request_process_function_base.js +0 -80
  258. package/dist/lib/src/request_process_function_base.js.map +0 -1
  259. package/dist/lib/src/schedule_process_function_base.d.ts +0 -33
  260. package/dist/lib/src/schedule_process_function_base.js +0 -81
  261. package/dist/lib/src/schedule_process_function_base.js.map +0 -1
  262. package/dist/lib/src/sql_api_base.d.ts +0 -185
  263. package/dist/lib/src/sql_api_base.js +0 -94
  264. package/dist/lib/src/sql_api_base.js.map +0 -1
  265. package/dist/lib/utils.d.ts +0 -82
  266. package/dist/lib/utils.js +0 -142
  267. package/dist/lib/utils.js.map +0 -1
@@ -1,173 +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 stripe = __importStar(require("stripe"));
47
- const firebase_loader_1 = require("../lib/src/firebase_loader");
48
- /**
49
- * Receive and process webhooks for Stripe Connect.
50
- * If you do not use Stripe Connect, do not configure it as a Webhook.
51
- * Please register the URL when you deploy this in your Stripe webhook settings.
52
- * Firestore integration is a must; please make Firestore available as well.
53
- *
54
- * Stripe Connect用のWebhookを受信して処理します。
55
- * Stripe Connectを利用しない場合はWebhookとして設定しないでください。
56
- * こちらをデプロイした際のURLをStripeのWebhook設定に登録してください。
57
- * Firestoreとの連携が必須です。Firestoreも利用可能にしてください。
58
- *
59
- * @param {string} process.env.PURCHASE_STRIPE_SECRETKEY
60
- * API key (secret key) to connect to Stripe.
61
- * Log in to the following URL and create a project.
62
- * After the project is created, the secret key can be copied.
63
- *
64
- * Stripeへ接続するためのAPIキー(シークレットキー)。
65
- * 下記URLにログインし、プロジェクトを作成します。
66
- * プロジェクト作成後、シークレットキーをコピーすることができます。
67
- *
68
- * Production environment
69
- * https://dashboard.stripe.com/apikeys
70
- * Development enveironment
71
- * https://dashboard.stripe.com/test/apikeys
72
- *
73
- * @param {string} process.env.PURCHASE_STRIPE_USERPATH
74
- * Stripe user (customer) pass.
75
- * Stripeのユーザー(カスタマー)用パス。
76
- *
77
- * @param {string} process.env.PURCHASE_STRIPE_WEBHOOKCONNECTSECRET
78
- * Specify the **Signature Secret** after setting it up as a webhook.
79
- * Webhookとして設定したあとの**署名シークレット**を指定します。
80
- *
81
- */
82
- module.exports = (regions, options, data) => {
83
- var _a, _b;
84
- return functions.https.onRequest({
85
- region: (_a = options.region) !== null && _a !== void 0 ? _a : regions,
86
- timeoutSeconds: options.timeoutSeconds,
87
- memory: options.memory,
88
- minInstances: options.minInstances,
89
- concurrency: options.concurrency,
90
- maxInstances: options.maxInstances,
91
- serviceAccount: (_b = options.serviceAccount) !== null && _b !== void 0 ? _b : undefined,
92
- }, (req, res) => __awaiter(void 0, void 0, void 0, function* () {
93
- var _a, _b, _c, _d;
94
- try {
95
- let error = null;
96
- const firestoreDatabaseIds = (_a = options.firestoreDatabaseIds) !== null && _a !== void 0 ? _a : [""];
97
- for (const databaseId of firestoreDatabaseIds) {
98
- try {
99
- const apiKey = (_b = process.env.PURCHASE_STRIPE_SECRETKEY) !== null && _b !== void 0 ? _b : "";
100
- const stripeUserPath = (_c = process.env.PURCHASE_STRIPE_USERPATH) !== null && _c !== void 0 ? _c : "plugins/stripe/user";
101
- const stripeWebhookConnectSecret = (_d = process.env.PURCHASE_STRIPE_WEBHOOKCONNECTSECRET) !== null && _d !== void 0 ? _d : "";
102
- const firestoreInstance = (0, firebase_loader_1.firestoreLoader)(databaseId);
103
- const stripeClient = new stripe.Stripe(apiKey, {
104
- apiVersion: "2025-01-27.acacia",
105
- });
106
- const signature = req.headers["stripe-signature"];
107
- if (!signature) {
108
- res.status(403).send(JSON.stringify({
109
- "error": "Access denied.",
110
- }));
111
- return;
112
- }
113
- const event = stripeClient.webhooks.constructEvent(req.rawBody, signature, stripeWebhookConnectSecret);
114
- switch (event.type) {
115
- case "account.updated": {
116
- const account = event.data.object;
117
- const id = account["id"];
118
- if (!id) {
119
- res.status(404).send(JSON.stringify({
120
- "error": "The account id is not found.",
121
- }));
122
- return;
123
- }
124
- const col = yield firestoreInstance.collection(`${stripeUserPath}`).where("account", "==", id).get();
125
- if (col.empty) {
126
- res.status(404).send(JSON.stringify({
127
- "error": "The account data is not found.",
128
- }));
129
- return;
130
- }
131
- const update = {};
132
- if (account["capabilities"]) {
133
- const capability = {};
134
- if (account["capabilities"]["card_payments"]) {
135
- capability["card_payments"] = true;
136
- }
137
- if (account["capabilities"]["transfers"]) {
138
- capability["transfers"] = true;
139
- }
140
- update["capability"] = capability;
141
- }
142
- yield col.docs[0].ref.set(update, {
143
- merge: true,
144
- });
145
- res.status(200).send(JSON.stringify({
146
- "success": true,
147
- }));
148
- return;
149
- }
150
- default: {
151
- res.status(404).send(JSON.stringify({
152
- "error": `Event ${event.type} is not found.`,
153
- }));
154
- return;
155
- }
156
- }
157
- }
158
- catch (err) {
159
- error = err;
160
- }
161
- }
162
- if (error) {
163
- console.error(error);
164
- throw new functions.https.HttpsError("unknown", "Unknown error.");
165
- }
166
- }
167
- catch (err) {
168
- console.error(err);
169
- throw err;
170
- }
171
- }));
172
- };
173
- //# sourceMappingURL=stripe_webhook_connect.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"stripe_webhook_connect.js","sourceRoot":"","sources":["../../src/functions/stripe_webhook_connect.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- import "../lib/exntensions/string.extension";
@@ -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 stripe = __importStar(require("stripe"));
47
- require("../lib/exntensions/string.extension");
48
- const firebase_loader_1 = require("../lib/src/firebase_loader");
49
- /**
50
- * Webhook for proper redirection when 3D Secure authentication is required.
51
- * Please set here for [returnUrl].
52
- *
53
- * 3Dセキュア認証が必要な場合、適切なリダイレクトを行うためのWebhookです。
54
- * [returnUrl]にこちらを設定してください。
55
- *
56
- * @param {string} process.env.PURCHASE_STRIPE_SECRETKEY
57
- * API key (secret key) to connect to Stripe.
58
- * Log in to the following URL and create a project.
59
- * After the project is created, the secret key can be copied.
60
- *
61
- * Stripeへ接続するためのAPIキー(シークレットキー)。
62
- * 下記URLにログインし、プロジェクトを作成します。
63
- * プロジェクト作成後、シークレットキーをコピーすることができます。
64
- *
65
- * Production environment
66
- * https://dashboard.stripe.com/apikeys
67
- * Development enveironment
68
- * https://dashboard.stripe.com/test/apikeys
69
- *
70
- * @param {string} process.env.PURCHASE_STRIPE_USERPATH
71
- * Stripe user (customer) pass.
72
- * Stripeのユーザー(カスタマー)用パス。
73
- *
74
- * @param {string} process.env.PURCHASE_STRIPE_PURCHASEPATH
75
- * Path for purchase information to be placed under [process.env.PURCHASE_STRIPE_USERPATH].
76
- * [process.env.PURCHASE_STRIPE_USERPATH]の下に配置する購入情報用パス。
77
- *
78
- * @param {string} userId
79
- * [required]
80
- * Specify the purchaser's user ID.
81
- * 購入者のユーザーIDを指定します。
82
- *
83
- * @param {string} orderId
84
- * [required]
85
- * Specify the order ID. This will be the database key.
86
- * 注文IDを指定します。これがデータベースのキーとなります。
87
- *
88
- * @param {string} successUrl
89
- * [required]
90
- * Specify the URL to redirect to upon success due to browser settings, etc.
91
- * ブラウザの設定等による成功時のリダイレクト先URLを指定します。
92
- *
93
- * @param {string} failureUrl
94
- * [required]
95
- * Specify the URL to redirect to upon failure due to browser settings, etc.
96
- * ブラウザの設定等による失敗時のリダイレクト先URLを指定します。
97
- *
98
- */
99
- module.exports = (regions, options, data) => {
100
- var _a, _b;
101
- return functions.https.onRequest({
102
- region: (_a = options.region) !== null && _a !== void 0 ? _a : regions,
103
- timeoutSeconds: options.timeoutSeconds,
104
- memory: options.memory,
105
- minInstances: options.minInstances,
106
- concurrency: options.concurrency,
107
- maxInstances: options.maxInstances,
108
- serviceAccount: (_b = options.serviceAccount) !== null && _b !== void 0 ? _b : undefined,
109
- }, (req, res) => __awaiter(void 0, void 0, void 0, function* () {
110
- var _a, _b, _c, _d;
111
- try {
112
- let error = null;
113
- const firestoreDatabaseIds = (_a = options.firestoreDatabaseIds) !== null && _a !== void 0 ? _a : [""];
114
- for (const databaseId of firestoreDatabaseIds) {
115
- try {
116
- const apiKey = (_b = process.env.PURCHASE_STRIPE_SECRETKEY) !== null && _b !== void 0 ? _b : "";
117
- const stripeUserPath = (_c = process.env.PURCHASE_STRIPE_USERPATH) !== null && _c !== void 0 ? _c : "plugins/stripe/user";
118
- const stripePurchasePath = (_d = process.env.PURCHASE_STRIPE_PURCHASEPATH) !== null && _d !== void 0 ? _d : "purchase";
119
- const firestoreInstance = (0, firebase_loader_1.firestoreLoader)(databaseId);
120
- const stripeClient = new stripe.Stripe(apiKey, {
121
- apiVersion: "2025-01-27.acacia",
122
- });
123
- const token = req.query.token;
124
- if (!token || typeof token !== "string") {
125
- res.status(403).send(JSON.stringify({
126
- "error": "Invalid parameters",
127
- }));
128
- return;
129
- }
130
- const param = JSON.parse(token.decrypt({
131
- key: apiKey.slice(0, 32),
132
- ivKey: apiKey.slice(-16),
133
- }));
134
- if (!param["userId"] || !param["orderId"] || !param["successUrl"] || !param["failureUrl"]) {
135
- res.status(403).send(JSON.stringify({
136
- "error": "Invalid parameters",
137
- }));
138
- return;
139
- }
140
- const userId = param["userId"];
141
- const orderId = param["orderId"];
142
- const successUrl = param["successUrl"];
143
- const failureUrl = param["failureUrl"];
144
- const doc = yield firestoreInstance.doc(`${stripeUserPath}/${userId}/${stripePurchasePath}/${orderId}`).get();
145
- const data = doc.data();
146
- if (!data || !data["paymentId"]) {
147
- res.status(404).send(JSON.stringify({
148
- "error": "The purchase data is not found.",
149
- }));
150
- return;
151
- }
152
- const purchase = yield stripeClient.paymentIntents.retrieve(data["paymentId"]);
153
- if (!purchase) {
154
- res.status(404).send(JSON.stringify({
155
- "error": "The purchase data is not found.",
156
- }));
157
- return;
158
- }
159
- const status = purchase.status;
160
- if (status === "requires_capture" || status === "succeeded" || status === "processing") {
161
- res.redirect(successUrl);
162
- }
163
- else {
164
- res.redirect(failureUrl);
165
- }
166
- }
167
- catch (err) {
168
- error = err;
169
- }
170
- }
171
- if (error) {
172
- console.error(error);
173
- throw new functions.https.HttpsError("unknown", "Unknown error.");
174
- }
175
- }
176
- catch (err) {
177
- console.error(err);
178
- throw err;
179
- }
180
- }));
181
- };
182
- //# sourceMappingURL=stripe_webhook_secure.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"stripe_webhook_secure.js","sourceRoot":"","sources":["../../src/functions/stripe_webhook_secure.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- export {};
@@ -1,195 +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 subscriber = __importStar(require("../lib/functions/update_subscription"));
48
- const firebase_loader_1 = require("../lib/src/firebase_loader");
49
- /**
50
- * Verify subscriptions and add data.
51
- *
52
- * サブスクリプションの検証とデータの追加を行います。
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
- * @param purchaseId
90
- * Subscription purchase ID.
91
- *
92
- * サブスクリプションの購入ID。
93
- *
94
- * @param packageName
95
- * Application package name.
96
- *
97
- * アプリケーションのパッケージ名。
98
- *
99
- * @param productId
100
- * Item ID issued by Google Play.
101
- *
102
- * GooglePlayで発行されたアイテムID。
103
- *
104
- * @param purchaseToken
105
- * The purchase token issued at the time of purchase.
106
- *
107
- * 購入したときに発行された購入トークン。
108
- *
109
- * @param data
110
- * Document data to be updated.
111
- *
112
- * 更新するドキュメントデータ。
113
- *
114
- * @param userId
115
- * ID of the user who purchased the subscription.
116
- *
117
- * サブスクリプションを購入したユーザーのID。
118
- */
119
- module.exports = (regions, options, data) => {
120
- var _a, _b, _c, _d;
121
- return functions.https.onCall({
122
- region: (_a = options.region) !== null && _a !== void 0 ? _a : regions,
123
- timeoutSeconds: options.timeoutSeconds,
124
- memory: options.memory,
125
- minInstances: options.minInstances,
126
- concurrency: options.concurrency,
127
- maxInstances: options.maxInstances,
128
- serviceAccount: (_b = options === null || options === void 0 ? void 0 : options.serviceAccount) !== null && _b !== void 0 ? _b : undefined,
129
- enforceAppCheck: (_c = options.enforceAppCheck) !== null && _c !== void 0 ? _c : undefined,
130
- consumeAppCheckToken: (_d = options.consumeAppCheckToken) !== null && _d !== void 0 ? _d : undefined,
131
- }, (query) => __awaiter(void 0, void 0, void 0, function* () {
132
- var _a, _b, _c, _d;
133
- try {
134
- /* ==== Android検証ここから ==== */
135
- if (!query.data.userId) {
136
- throw new functions.https.HttpsError("invalid-argument", "User is empty.");
137
- }
138
- const res = yield verifier.verifyAndroid({
139
- type: "subscriptions",
140
- serviceAccountEmail: (_a = process.env.PURCHASE_ANDROID_SERVICEACCOUNT_EMAIL) !== null && _a !== void 0 ? _a : "",
141
- serviceAccountPrivateKey: (_b = process.env.PURCHASE_ANDROID_SERVICEACCOUNT_PRIVATE_KEY) !== null && _b !== void 0 ? _b : "",
142
- packageName: query.data.packageName,
143
- productId: query.data.productId,
144
- purchaseToken: query.data.purchaseToken,
145
- });
146
- const time = new Date().getTime();
147
- const startTimeMillis = parseInt(res["startTimeMillis"]);
148
- const expiryTimeMillis = parseInt(res["expiryTimeMillis"]);
149
- if (res === null || isNaN(startTimeMillis) || isNaN(expiryTimeMillis) || startTimeMillis <= 0) {
150
- throw new functions.https.HttpsError("not-found", "Illegal receipt.");
151
- }
152
- if (expiryTimeMillis <= time) {
153
- res["expired"] = true;
154
- }
155
- /* ==== ここまでAndroid検証 ==== */
156
- /* ==== Firestoreの更新ここから ==== */
157
- let error = null;
158
- const firestoreDatabaseIds = (_c = options.firestoreDatabaseIds) !== null && _c !== void 0 ? _c : [""];
159
- for (const databaseId of firestoreDatabaseIds) {
160
- try {
161
- const firestoreInstance = (0, firebase_loader_1.firestoreLoader)(databaseId);
162
- yield subscriber.updateSubscription({
163
- targetCollectionPath: (_d = query.data.path) !== null && _d !== void 0 ? _d : process.env.PURCHASE_SUBSCRIPTIONPATH,
164
- targetDocumentId: query.data.purchaseToken,
165
- data: res,
166
- additionalData: query.data,
167
- userId: query.data.userId,
168
- platform: "Android",
169
- orderId: res["orderId"],
170
- productId: query.data.productId,
171
- purchaseId: query.data.purchaseId,
172
- packageName: query.data.packageName,
173
- token: query.data.purchaseToken,
174
- expiryDate: expiryTimeMillis,
175
- firestoreInstance: firestoreInstance,
176
- });
177
- }
178
- catch (err) {
179
- error = err;
180
- }
181
- }
182
- if (error) {
183
- console.error(error);
184
- throw new functions.https.HttpsError("unknown", "Unknown error.");
185
- }
186
- /* ==== ここまでFirestoreの更新 ==== */
187
- return res;
188
- }
189
- catch (err) {
190
- console.error(err);
191
- throw new functions.https.HttpsError("unknown", "Unknown error.");
192
- }
193
- }));
194
- };
195
- //# sourceMappingURL=subscription_verify_android.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"subscription_verify_android.js","sourceRoot":"","sources":["../../src/functions/subscription_verify_android.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- export {};