@mathrunet/masamune 3.6.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 (255) hide show
  1. package/CHANGELOG.md +22 -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 -231
  6. package/dist/functions.js +2 -231
  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 -21
  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/consumable_verify_android.d.ts +0 -1
  38. package/dist/functions/consumable_verify_android.js +0 -172
  39. package/dist/functions/consumable_verify_android.js.map +0 -1
  40. package/dist/functions/consumable_verify_ios.d.ts +0 -1
  41. package/dist/functions/consumable_verify_ios.js +0 -136
  42. package/dist/functions/consumable_verify_ios.js.map +0 -1
  43. package/dist/functions/delete_documents.d.ts +0 -1
  44. package/dist/functions/delete_documents.js +0 -91
  45. package/dist/functions/delete_documents.js.map +0 -1
  46. package/dist/functions/delete_user.d.ts +0 -1
  47. package/dist/functions/delete_user.js +0 -87
  48. package/dist/functions/delete_user.js.map +0 -1
  49. package/dist/functions/document_model_firestore.d.ts +0 -1
  50. package/dist/functions/document_model_firestore.js +0 -218
  51. package/dist/functions/document_model_firestore.js.map +0 -1
  52. package/dist/functions/geocoding.d.ts +0 -1
  53. package/dist/functions/geocoding.js +0 -93
  54. package/dist/functions/geocoding.js.map +0 -1
  55. package/dist/functions/gmail.d.ts +0 -1
  56. package/dist/functions/gmail.js +0 -117
  57. package/dist/functions/gmail.js.map +0 -1
  58. package/dist/functions/google_token.d.ts +0 -1
  59. package/dist/functions/google_token.js +0 -100
  60. package/dist/functions/google_token.js.map +0 -1
  61. package/dist/functions/hls.d.ts +0 -1
  62. package/dist/functions/hls.js +0 -169
  63. package/dist/functions/hls.js.map +0 -1
  64. package/dist/functions/nonconsumable_verify_android.d.ts +0 -1
  65. package/dist/functions/nonconsumable_verify_android.js +0 -166
  66. package/dist/functions/nonconsumable_verify_android.js.map +0 -1
  67. package/dist/functions/nonconsumable_verify_ios.d.ts +0 -1
  68. package/dist/functions/nonconsumable_verify_ios.js +0 -130
  69. package/dist/functions/nonconsumable_verify_ios.js.map +0 -1
  70. package/dist/functions/openai_chat_gpt.d.ts +0 -1
  71. package/dist/functions/openai_chat_gpt.js +0 -117
  72. package/dist/functions/openai_chat_gpt.js.map +0 -1
  73. package/dist/functions/purchase_webhook_android.d.ts +0 -1
  74. package/dist/functions/purchase_webhook_android.js +0 -306
  75. package/dist/functions/purchase_webhook_android.js.map +0 -1
  76. package/dist/functions/purchase_webhook_ios.d.ts +0 -1
  77. package/dist/functions/purchase_webhook_ios.js +0 -182
  78. package/dist/functions/purchase_webhook_ios.js.map +0 -1
  79. package/dist/functions/scheduler.d.ts +0 -1
  80. package/dist/functions/scheduler.js +0 -144
  81. package/dist/functions/scheduler.js.map +0 -1
  82. package/dist/functions/send_grid.d.ts +0 -1
  83. package/dist/functions/send_grid.js +0 -111
  84. package/dist/functions/send_grid.js.map +0 -1
  85. package/dist/functions/send_notification.d.ts +0 -1
  86. package/dist/functions/send_notification.js +0 -207
  87. package/dist/functions/send_notification.js.map +0 -1
  88. package/dist/functions/storage_firebase.d.ts +0 -1
  89. package/dist/functions/storage_firebase.js +0 -286
  90. package/dist/functions/storage_firebase.js.map +0 -1
  91. package/dist/functions/stripe.d.ts +0 -1
  92. package/dist/functions/stripe.js +0 -1243
  93. package/dist/functions/stripe.js.map +0 -1
  94. package/dist/functions/stripe_webhook.d.ts +0 -1
  95. package/dist/functions/stripe_webhook.js +0 -605
  96. package/dist/functions/stripe_webhook.js.map +0 -1
  97. package/dist/functions/stripe_webhook_connect.d.ts +0 -1
  98. package/dist/functions/stripe_webhook_connect.js +0 -173
  99. package/dist/functions/stripe_webhook_connect.js.map +0 -1
  100. package/dist/functions/stripe_webhook_secure.d.ts +0 -1
  101. package/dist/functions/stripe_webhook_secure.js +0 -182
  102. package/dist/functions/stripe_webhook_secure.js.map +0 -1
  103. package/dist/functions/subscription_verify_android.d.ts +0 -1
  104. package/dist/functions/subscription_verify_android.js +0 -195
  105. package/dist/functions/subscription_verify_android.js.map +0 -1
  106. package/dist/functions/subscription_verify_ios.d.ts +0 -1
  107. package/dist/functions/subscription_verify_ios.js +0 -170
  108. package/dist/functions/subscription_verify_ios.js.map +0 -1
  109. package/dist/lib/api.d.ts +0 -185
  110. package/dist/lib/api.js +0 -172
  111. package/dist/lib/api.js.map +0 -1
  112. package/dist/lib/exntensions/string.extension.d.ts +0 -214
  113. package/dist/lib/exntensions/string.extension.js +0 -226
  114. package/dist/lib/exntensions/string.extension.js.map +0 -1
  115. package/dist/lib/functions/delete_documents.d.ts +0 -32
  116. package/dist/lib/functions/delete_documents.js +0 -111
  117. package/dist/lib/functions/delete_documents.js.map +0 -1
  118. package/dist/lib/functions/firestore.d.ts +0 -114
  119. package/dist/lib/functions/firestore.js +0 -347
  120. package/dist/lib/functions/firestore.js.map +0 -1
  121. package/dist/lib/functions/gmail.d.ts +0 -39
  122. package/dist/lib/functions/gmail.js +0 -64
  123. package/dist/lib/functions/gmail.js.map +0 -1
  124. package/dist/lib/functions/send_grid.d.ts +0 -33
  125. package/dist/lib/functions/send_grid.js +0 -57
  126. package/dist/lib/functions/send_grid.js.map +0 -1
  127. package/dist/lib/functions/send_notification.d.ts +0 -109
  128. package/dist/lib/functions/send_notification.js +0 -386
  129. package/dist/lib/functions/send_notification.js.map +0 -1
  130. package/dist/lib/functions/update_subscription.d.ts +0 -84
  131. package/dist/lib/functions/update_subscription.js +0 -150
  132. package/dist/lib/functions/update_subscription.js.map +0 -1
  133. package/dist/lib/functions/update_unlock.d.ts +0 -28
  134. package/dist/lib/functions/update_unlock.js +0 -84
  135. package/dist/lib/functions/update_unlock.js.map +0 -1
  136. package/dist/lib/functions/update_wallet.d.ts +0 -34
  137. package/dist/lib/functions/update_wallet.js +0 -91
  138. package/dist/lib/functions/update_wallet.js.map +0 -1
  139. package/dist/lib/functions/verify_android.d.ts +0 -50
  140. package/dist/lib/functions/verify_android.js +0 -130
  141. package/dist/lib/functions/verify_android.js.map +0 -1
  142. package/dist/lib/functions/verify_ios.d.ts +0 -73
  143. package/dist/lib/functions/verify_ios.js +0 -227
  144. package/dist/lib/functions/verify_ios.js.map +0 -1
  145. package/dist/lib/model_field_value/converters/firestore_basic_converter.d.ts +0 -25
  146. package/dist/lib/model_field_value/converters/firestore_basic_converter.js +0 -28
  147. package/dist/lib/model_field_value/converters/firestore_basic_converter.js.map +0 -1
  148. package/dist/lib/model_field_value/converters/firestore_enum_converter.d.ts +0 -25
  149. package/dist/lib/model_field_value/converters/firestore_enum_converter.js +0 -28
  150. package/dist/lib/model_field_value/converters/firestore_enum_converter.js.map +0 -1
  151. package/dist/lib/model_field_value/converters/firestore_model_command_base_converter.d.ts +0 -25
  152. package/dist/lib/model_field_value/converters/firestore_model_command_base_converter.js +0 -58
  153. package/dist/lib/model_field_value/converters/firestore_model_command_base_converter.js.map +0 -1
  154. package/dist/lib/model_field_value/converters/firestore_model_counter_converter.d.ts +0 -25
  155. package/dist/lib/model_field_value/converters/firestore_model_counter_converter.js +0 -177
  156. package/dist/lib/model_field_value/converters/firestore_model_counter_converter.js.map +0 -1
  157. package/dist/lib/model_field_value/converters/firestore_model_date_converter.d.ts +0 -26
  158. package/dist/lib/model_field_value/converters/firestore_model_date_converter.js +0 -174
  159. package/dist/lib/model_field_value/converters/firestore_model_date_converter.js.map +0 -1
  160. package/dist/lib/model_field_value/converters/firestore_model_date_range_converter.d.ts +0 -25
  161. package/dist/lib/model_field_value/converters/firestore_model_date_range_converter.js +0 -183
  162. package/dist/lib/model_field_value/converters/firestore_model_date_range_converter.js.map +0 -1
  163. package/dist/lib/model_field_value/converters/firestore_model_geo_value_converter.d.ts +0 -25
  164. package/dist/lib/model_field_value/converters/firestore_model_geo_value_converter.js +0 -163
  165. package/dist/lib/model_field_value/converters/firestore_model_geo_value_converter.js.map +0 -1
  166. package/dist/lib/model_field_value/converters/firestore_model_image_uri_converter.d.ts +0 -25
  167. package/dist/lib/model_field_value/converters/firestore_model_image_uri_converter.js +0 -134
  168. package/dist/lib/model_field_value/converters/firestore_model_image_uri_converter.js.map +0 -1
  169. package/dist/lib/model_field_value/converters/firestore_model_locale_converter.d.ts +0 -25
  170. package/dist/lib/model_field_value/converters/firestore_model_locale_converter.js +0 -163
  171. package/dist/lib/model_field_value/converters/firestore_model_locale_converter.js.map +0 -1
  172. package/dist/lib/model_field_value/converters/firestore_model_localized_value_converter.d.ts +0 -25
  173. package/dist/lib/model_field_value/converters/firestore_model_localized_value_converter.js +0 -89
  174. package/dist/lib/model_field_value/converters/firestore_model_localized_value_converter.js.map +0 -1
  175. package/dist/lib/model_field_value/converters/firestore_model_ref_converter.d.ts +0 -25
  176. package/dist/lib/model_field_value/converters/firestore_model_ref_converter.js +0 -113
  177. package/dist/lib/model_field_value/converters/firestore_model_ref_converter.js.map +0 -1
  178. package/dist/lib/model_field_value/converters/firestore_model_search_converter.d.ts +0 -25
  179. package/dist/lib/model_field_value/converters/firestore_model_search_converter.js +0 -91
  180. package/dist/lib/model_field_value/converters/firestore_model_search_converter.js.map +0 -1
  181. package/dist/lib/model_field_value/converters/firestore_model_time_converter.d.ts +0 -26
  182. package/dist/lib/model_field_value/converters/firestore_model_time_converter.js +0 -191
  183. package/dist/lib/model_field_value/converters/firestore_model_time_converter.js.map +0 -1
  184. package/dist/lib/model_field_value/converters/firestore_model_time_range_converter.d.ts +0 -25
  185. package/dist/lib/model_field_value/converters/firestore_model_time_range_converter.js +0 -183
  186. package/dist/lib/model_field_value/converters/firestore_model_time_range_converter.js.map +0 -1
  187. package/dist/lib/model_field_value/converters/firestore_model_timestamp_converter.d.ts +0 -26
  188. package/dist/lib/model_field_value/converters/firestore_model_timestamp_converter.js +0 -246
  189. package/dist/lib/model_field_value/converters/firestore_model_timestamp_converter.js.map +0 -1
  190. package/dist/lib/model_field_value/converters/firestore_model_timestamp_range_converter.d.ts +0 -25
  191. package/dist/lib/model_field_value/converters/firestore_model_timestamp_range_converter.js +0 -183
  192. package/dist/lib/model_field_value/converters/firestore_model_timestamp_range_converter.js.map +0 -1
  193. package/dist/lib/model_field_value/converters/firestore_model_token_converter.d.ts +0 -25
  194. package/dist/lib/model_field_value/converters/firestore_model_token_converter.js +0 -91
  195. package/dist/lib/model_field_value/converters/firestore_model_token_converter.js.map +0 -1
  196. package/dist/lib/model_field_value/converters/firestore_model_uri_converter.d.ts +0 -25
  197. package/dist/lib/model_field_value/converters/firestore_model_uri_converter.js +0 -134
  198. package/dist/lib/model_field_value/converters/firestore_model_uri_converter.js.map +0 -1
  199. package/dist/lib/model_field_value/converters/firestore_model_vector_value_converter.d.ts +0 -25
  200. package/dist/lib/model_field_value/converters/firestore_model_vector_value_converter.js +0 -80
  201. package/dist/lib/model_field_value/converters/firestore_model_vector_value_converter.js.map +0 -1
  202. package/dist/lib/model_field_value/converters/firestore_model_video_uri_converter.d.ts +0 -25
  203. package/dist/lib/model_field_value/converters/firestore_model_video_uri_converter.js +0 -134
  204. package/dist/lib/model_field_value/converters/firestore_model_video_uri_converter.js.map +0 -1
  205. package/dist/lib/model_field_value/converters/firestore_null_converter.d.ts +0 -25
  206. package/dist/lib/model_field_value/converters/firestore_null_converter.js +0 -45
  207. package/dist/lib/model_field_value/converters/firestore_null_converter.js.map +0 -1
  208. package/dist/lib/model_field_value/default_firestore_model_field_value_converter.d.ts +0 -61
  209. package/dist/lib/model_field_value/default_firestore_model_field_value_converter.js +0 -140
  210. package/dist/lib/model_field_value/default_firestore_model_field_value_converter.js.map +0 -1
  211. package/dist/lib/model_field_value/firestore_model_field_value_converter.d.ts +0 -154
  212. package/dist/lib/model_field_value/firestore_model_field_value_converter.js +0 -127
  213. package/dist/lib/model_field_value/firestore_model_field_value_converter.js.map +0 -1
  214. package/dist/lib/model_field_value/model_field_value.d.ts +0 -264
  215. package/dist/lib/model_field_value/model_field_value.js +0 -314
  216. package/dist/lib/model_field_value/model_field_value.js.map +0 -1
  217. package/dist/lib/regions.d.ts +0 -6
  218. package/dist/lib/regions.js +0 -3
  219. package/dist/lib/regions.js.map +0 -1
  220. package/dist/lib/schedulers/copy_document.d.ts +0 -35
  221. package/dist/lib/schedulers/copy_document.js +0 -59
  222. package/dist/lib/schedulers/copy_document.js.map +0 -1
  223. package/dist/lib/schedulers/delete_documents.d.ts +0 -35
  224. package/dist/lib/schedulers/delete_documents.js +0 -86
  225. package/dist/lib/schedulers/delete_documents.js.map +0 -1
  226. package/dist/lib/schedulers/notification.d.ts +0 -35
  227. package/dist/lib/schedulers/notification.js +0 -78
  228. package/dist/lib/schedulers/notification.js.map +0 -1
  229. package/dist/lib/src/call_process_function_base.d.ts +0 -39
  230. package/dist/lib/src/call_process_function_base.js +0 -82
  231. package/dist/lib/src/call_process_function_base.js.map +0 -1
  232. package/dist/lib/src/firebase_loader.d.ts +0 -30
  233. package/dist/lib/src/firebase_loader.js +0 -77
  234. package/dist/lib/src/firebase_loader.js.map +0 -1
  235. package/dist/lib/src/firestore_triggered_process_function_base.d.ts +0 -40
  236. package/dist/lib/src/firestore_triggered_process_function_base.js +0 -82
  237. package/dist/lib/src/firestore_triggered_process_function_base.js.map +0 -1
  238. package/dist/lib/src/functions_base.d.ts +0 -327
  239. package/dist/lib/src/functions_base.js +0 -38
  240. package/dist/lib/src/functions_base.js.map +0 -1
  241. package/dist/lib/src/functions_data.d.ts +0 -10
  242. package/dist/lib/src/functions_data.js +0 -19
  243. package/dist/lib/src/functions_data.js.map +0 -1
  244. package/dist/lib/src/request_process_function_base.d.ts +0 -39
  245. package/dist/lib/src/request_process_function_base.js +0 -80
  246. package/dist/lib/src/request_process_function_base.js.map +0 -1
  247. package/dist/lib/src/schedule_process_function_base.d.ts +0 -33
  248. package/dist/lib/src/schedule_process_function_base.js +0 -81
  249. package/dist/lib/src/schedule_process_function_base.js.map +0 -1
  250. package/dist/lib/src/sql_api_base.d.ts +0 -185
  251. package/dist/lib/src/sql_api_base.js +0 -94
  252. package/dist/lib/src/sql_api_base.js.map +0 -1
  253. package/dist/lib/utils.d.ts +0 -82
  254. package/dist/lib/utils.js +0 -142
  255. 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 {};