@mathrunet/masamune 0.0.3 → 0.0.5
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.
- package/CHANGELOG.md +24 -0
- package/dist/functions/notification.d.ts +1 -0
- package/dist/functions/notification.js +111 -0
- package/dist/functions/notification.js.map +1 -0
- package/dist/functions.d.ts +14 -0
- package/{__tests__/export.test.js → dist/functions.js} +16 -8
- package/dist/functions.js.map +1 -0
- package/dist/index.d.ts +13 -0
- package/dist/index.js +51 -0
- package/dist/index.js.map +1 -0
- package/dist/lib/functions_data.d.ts +25 -0
- package/dist/lib/functions_data.js +31 -0
- package/dist/lib/functions_data.js.map +1 -0
- package/dist/src/functions/notification.d.ts +1 -0
- package/dist/src/functions/notification.js +111 -0
- package/dist/src/functions/notification.js.map +1 -0
- package/dist/src/functions.d.ts +14 -0
- package/dist/src/functions.js +41 -0
- package/dist/src/functions.js.map +1 -0
- package/dist/src/index.d.ts +13 -0
- package/dist/src/index.js +51 -0
- package/dist/src/index.js.map +1 -0
- package/dist/src/lib/functions_data.d.ts +25 -0
- package/dist/src/lib/functions_data.js +31 -0
- package/dist/src/lib/functions_data.js.map +1 -0
- package/package.json +3 -3
- package/.github/images/icon.png +0 -0
- package/__tests__/export.test.ts +0 -9
- package/jest.config.json +0 -14
package/CHANGELOG.md
CHANGED
|
@@ -1,3 +1,27 @@
|
|
|
1
|
+
## [0.0.5](https://github.com/mathrunet/node_masamune/compare/v0.0.4...v0.0.5) (2023-01-09)
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
### fix
|
|
5
|
+
|
|
6
|
+
* Fix npmignore. ([5e4bd1e](https://github.com/mathrunet/node_masamune/commit/5e4bd1e25d2e930354f0621f167f9ff692f30689))
|
|
7
|
+
* test maintenance. ([998743a](https://github.com/mathrunet/node_masamune/commit/998743a290d04545c4266e70ceb517c0727f71cc))
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
## [0.0.4](https://github.com/mathrunet/node_masamune/compare/v0.0.3...v0.0.4) (2023-01-09)
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
### chore
|
|
15
|
+
|
|
16
|
+
* Change the placement of JS. ([d29b7cf](https://github.com/mathrunet/node_masamune/commit/d29b7cfbe95ddc10d1bd99df9cf372a9ba024920))
|
|
17
|
+
* Changed package name. ([5acd023](https://github.com/mathrunet/node_masamune/commit/5acd0235504eb7b2d9760f2a0a9971e69cc52f2b))
|
|
18
|
+
|
|
19
|
+
### fix
|
|
20
|
+
|
|
21
|
+
* Changed the position of the JS definition. ([1aadcb7](https://github.com/mathrunet/node_masamune/commit/1aadcb7e975060e8e15ff80139757bc552edee2e))
|
|
22
|
+
|
|
23
|
+
|
|
24
|
+
|
|
1
25
|
## [0.0.3](https://github.com/mathrunet/node_masamune/compare/v0.0.2...v0.0.3) (2023-01-09)
|
|
2
26
|
|
|
3
27
|
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,111 @@
|
|
|
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 (mod) {
|
|
19
|
+
if (mod && mod.__esModule) return mod;
|
|
20
|
+
var result = {};
|
|
21
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
+
__setModuleDefault(result, mod);
|
|
23
|
+
return result;
|
|
24
|
+
};
|
|
25
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
26
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
27
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
28
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
29
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
30
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
31
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
32
|
+
});
|
|
33
|
+
};
|
|
34
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
35
|
+
const functions = __importStar(require("firebase-functions"));
|
|
36
|
+
const admin = __importStar(require("firebase-admin"));
|
|
37
|
+
/**
|
|
38
|
+
* Define the process for PUSH notification.
|
|
39
|
+
*
|
|
40
|
+
* PUSH通知を行うための処理を定義します。
|
|
41
|
+
*
|
|
42
|
+
* @param title
|
|
43
|
+
* The title of the notice should be listed.
|
|
44
|
+
*
|
|
45
|
+
* 通知タイトルを記載します。
|
|
46
|
+
*
|
|
47
|
+
* @param body
|
|
48
|
+
* The contents of the notice will be described.
|
|
49
|
+
*
|
|
50
|
+
* 通知内容を記載します。
|
|
51
|
+
*
|
|
52
|
+
* @param channel_id
|
|
53
|
+
* Describe ChannelId for Android.
|
|
54
|
+
*
|
|
55
|
+
* Android向けのChannelIdを記載します。
|
|
56
|
+
*
|
|
57
|
+
* @param data
|
|
58
|
+
* Specify the data to be placed on the notification.
|
|
59
|
+
*
|
|
60
|
+
* 通知に乗せるデータを指定します。
|
|
61
|
+
*
|
|
62
|
+
* @param token
|
|
63
|
+
* Specifies the FCM token.
|
|
64
|
+
*
|
|
65
|
+
* FCMトークンを指定します。
|
|
66
|
+
*
|
|
67
|
+
* @param topic
|
|
68
|
+
* Specifies the topic of the FCM.
|
|
69
|
+
*
|
|
70
|
+
* FCMのトピックを指定します。
|
|
71
|
+
*/
|
|
72
|
+
module.exports = functions.region("asia-northeast1").https.onCall((query) => __awaiter(void 0, void 0, void 0, function* () {
|
|
73
|
+
try {
|
|
74
|
+
const title = query.title;
|
|
75
|
+
const body = query.body;
|
|
76
|
+
const channelId = query.channel_id;
|
|
77
|
+
const data = query.data;
|
|
78
|
+
const token = query.token;
|
|
79
|
+
const topic = query.topic;
|
|
80
|
+
if (token === undefined || topic === undefined) {
|
|
81
|
+
throw new functions.https.HttpsError("invalid-argument", "Either [token] or [topic] must be specified.");
|
|
82
|
+
}
|
|
83
|
+
const res = yield admin.messaging().send({
|
|
84
|
+
notification: {
|
|
85
|
+
title: title,
|
|
86
|
+
body: body,
|
|
87
|
+
},
|
|
88
|
+
android: {
|
|
89
|
+
priority: "high",
|
|
90
|
+
notification: {
|
|
91
|
+
title: title,
|
|
92
|
+
body: body,
|
|
93
|
+
clickAction: "FLUTTER_NOTIFICATION_CLICK",
|
|
94
|
+
channelId: channelId,
|
|
95
|
+
},
|
|
96
|
+
},
|
|
97
|
+
data: data,
|
|
98
|
+
token: token,
|
|
99
|
+
topic: topic,
|
|
100
|
+
});
|
|
101
|
+
return {
|
|
102
|
+
success: true,
|
|
103
|
+
message_id: res,
|
|
104
|
+
};
|
|
105
|
+
}
|
|
106
|
+
catch (err) {
|
|
107
|
+
console.log(err);
|
|
108
|
+
throw err;
|
|
109
|
+
}
|
|
110
|
+
}));
|
|
111
|
+
//# sourceMappingURL=notification.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"notification.js","sourceRoot":"","sources":["../../src/functions/notification.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,8DAAgD;AAChD,sDAAwC;AAExC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkCG;AACH,MAAM,CAAC,OAAO,GAAG,SAAS,CAAC,MAAM,CAAC,iBAAiB,CAAC,CAAC,KAAK,CAAC,MAAM,CAC7D,CAAO,KAAK,EAAE,EAAE;IACZ,IAAI;QACA,MAAM,KAAK,GAAG,KAAK,CAAC,KAAe,CAAC;QACpC,MAAM,IAAI,GAAG,KAAK,CAAC,IAAc,CAAC;QAClC,MAAM,SAAS,GAAG,KAAK,CAAC,UAAgC,CAAC;QACzD,MAAM,IAAI,GAAG,KAAK,CAAC,IAA6C,CAAC;QACjE,MAAM,KAAK,GAAG,KAAK,CAAC,KAA2B,CAAC;QAChD,MAAM,KAAK,GAAG,KAAK,CAAC,KAA2B,CAAC;QAChD,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,SAAS,EAAE;YAC5C,MAAM,IAAI,SAAS,CAAC,KAAK,CAAC,UAAU,CAAC,kBAAkB,EAAE,8CAA8C,CAAC,CAAC;SAC5G;QACD,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,SAAS,EAAE,CAAC,IAAI,CACpC;YACI,YAAY,EAAE;gBACV,KAAK,EAAE,KAAK;gBACZ,IAAI,EAAE,IAAI;aACb;YACD,OAAO,EAAE;gBACL,QAAQ,EAAE,MAAM;gBAChB,YAAY,EAAE;oBACV,KAAK,EAAE,KAAK;oBACZ,IAAI,EAAE,IAAI;oBACV,WAAW,EAAE,4BAA4B;oBACzC,SAAS,EAAE,SAAS;iBACvB;aACJ;YACD,IAAI,EAAE,IAAI;YACV,KAAK,EAAE,KAAK;YACZ,KAAK,EAAE,KAAK;SACf,CACJ,CAAC;QACF,OAAO;YACH,OAAO,EAAE,IAAI;YACb,UAAU,EAAE,GAAG;SAClB,CAAC;KACL;IAAC,OAAO,GAAG,EAAE;QACV,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QACjB,MAAM,GAAG,CAAC;KACb;AACL,CAAC,CAAA,CACJ,CAAC"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import * as data from "./lib/functions_data";
|
|
2
|
+
/**
|
|
3
|
+
* Define a list of applicable Functions for FirebaseFunctions.
|
|
4
|
+
*
|
|
5
|
+
* FirebaseFunctions用の適用可能なFunctionの一覧を定義します。
|
|
6
|
+
*/
|
|
7
|
+
export declare const Functions: {
|
|
8
|
+
/**
|
|
9
|
+
* Function for sending PUSH notifications.
|
|
10
|
+
*
|
|
11
|
+
* PUSH通知を送信するためのFunction。
|
|
12
|
+
*/
|
|
13
|
+
readonly notification: data.FunctionsData;
|
|
14
|
+
};
|
|
@@ -23,11 +23,19 @@ var __importStar = (this && this.__importStar) || function (mod) {
|
|
|
23
23
|
return result;
|
|
24
24
|
};
|
|
25
25
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
26
|
+
exports.Functions = void 0;
|
|
27
|
+
const data = __importStar(require("./lib/functions_data"));
|
|
28
|
+
/**
|
|
29
|
+
* Define a list of applicable Functions for FirebaseFunctions.
|
|
30
|
+
*
|
|
31
|
+
* FirebaseFunctions用の適用可能なFunctionの一覧を定義します。
|
|
32
|
+
*/
|
|
33
|
+
exports.Functions = {
|
|
34
|
+
/**
|
|
35
|
+
* Function for sending PUSH notifications.
|
|
36
|
+
*
|
|
37
|
+
* PUSH通知を送信するためのFunction。
|
|
38
|
+
*/
|
|
39
|
+
notification: new data.FunctionsData("notification", require("./functions/notification")),
|
|
40
|
+
};
|
|
41
|
+
//# sourceMappingURL=functions.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"functions.js","sourceRoot":"","sources":["../src/functions.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,2DAA6C;AAE7C;;;;GAIG;AACU,QAAA,SAAS,GAAG;IACvB;;;;OAIG;IACH,YAAY,EAAE,IAAI,IAAI,CAAC,aAAa,CAAC,cAAc,EAAE,OAAO,CAAC,0BAA0B,CAAC,CAAC;CACjF,CAAC"}
|
package/dist/index.d.ts
ADDED
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import * as data from "./lib/functions_data";
|
|
2
|
+
export * from "./functions";
|
|
3
|
+
/**
|
|
4
|
+
* Methods for deploying to Firebase Functions.
|
|
5
|
+
*
|
|
6
|
+
* Firebase Functionsにデプロイするためのメソッドです。
|
|
7
|
+
*
|
|
8
|
+
* @param deployFunctions
|
|
9
|
+
* The elements defined in [Functions] are passed as an array.
|
|
10
|
+
*
|
|
11
|
+
* The passed method is deployed. [Functions]で定義された要素を配列として渡します。渡されたメソッドがデプロイされます。
|
|
12
|
+
*/
|
|
13
|
+
export declare function deploy(deployFunctions: [data.FunctionsData]): void;
|
package/dist/index.js
ADDED
|
@@ -0,0 +1,51 @@
|
|
|
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 (mod) {
|
|
19
|
+
if (mod && mod.__esModule) return mod;
|
|
20
|
+
var result = {};
|
|
21
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
+
__setModuleDefault(result, mod);
|
|
23
|
+
return result;
|
|
24
|
+
};
|
|
25
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
26
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
27
|
+
};
|
|
28
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
29
|
+
exports.deploy = void 0;
|
|
30
|
+
const admin = __importStar(require("firebase-admin"));
|
|
31
|
+
__exportStar(require("./functions"), exports);
|
|
32
|
+
/**
|
|
33
|
+
* Methods for deploying to Firebase Functions.
|
|
34
|
+
*
|
|
35
|
+
* Firebase Functionsにデプロイするためのメソッドです。
|
|
36
|
+
*
|
|
37
|
+
* @param deployFunctions
|
|
38
|
+
* The elements defined in [Functions] are passed as an array.
|
|
39
|
+
*
|
|
40
|
+
* The passed method is deployed. [Functions]で定義された要素を配列として渡します。渡されたメソッドがデプロイされます。
|
|
41
|
+
*/
|
|
42
|
+
function deploy(deployFunctions) {
|
|
43
|
+
admin.initializeApp();
|
|
44
|
+
for (const data of deployFunctions) {
|
|
45
|
+
if (!process.env.FUNCTION_NAME || process.env.FUNCTION_NAME === data.id) {
|
|
46
|
+
exports[data.id] = data.func;
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
exports.deploy = deploy;
|
|
51
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,sDAAwC;AACxC,8CAA4B;AAE5B;;;;;;;;;GASG;AACH,SAAgB,MAAM,CAAC,eAAqC;IACxD,KAAK,CAAC,aAAa,EAAE,CAAC;IACtB,KAAK,MAAM,IAAI,IAAI,eAAe,EAAE;QAChC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,aAAa,IAAI,OAAO,CAAC,GAAG,CAAC,aAAa,KAAK,IAAI,CAAC,EAAE,EAAE;YACrE,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC;SAChC;KACJ;AACL,CAAC;AAPD,wBAOC"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Define Function data for FirebaseFunctions.
|
|
3
|
+
*
|
|
4
|
+
* FirebaseFunctions用のFunctionのデータを定義します。
|
|
5
|
+
*/
|
|
6
|
+
export declare class FunctionsData {
|
|
7
|
+
readonly id: string;
|
|
8
|
+
readonly func: Function;
|
|
9
|
+
/**
|
|
10
|
+
* Define Function data for FirebaseFunctions.
|
|
11
|
+
*
|
|
12
|
+
* FirebaseFunctions用のFunctionのデータを定義します。
|
|
13
|
+
*
|
|
14
|
+
* @param id
|
|
15
|
+
* Describe the method names used in Functions.
|
|
16
|
+
*
|
|
17
|
+
* Functionsで利用されるメソッド名を記述します。
|
|
18
|
+
*
|
|
19
|
+
* @param func
|
|
20
|
+
* Specify the actual contents of the process.
|
|
21
|
+
*
|
|
22
|
+
* 実際の処理の中身を指定します。
|
|
23
|
+
*/
|
|
24
|
+
constructor(id: string, func: Function);
|
|
25
|
+
}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.FunctionsData = void 0;
|
|
4
|
+
/**
|
|
5
|
+
* Define Function data for FirebaseFunctions.
|
|
6
|
+
*
|
|
7
|
+
* FirebaseFunctions用のFunctionのデータを定義します。
|
|
8
|
+
*/
|
|
9
|
+
class FunctionsData {
|
|
10
|
+
/**
|
|
11
|
+
* Define Function data for FirebaseFunctions.
|
|
12
|
+
*
|
|
13
|
+
* FirebaseFunctions用のFunctionのデータを定義します。
|
|
14
|
+
*
|
|
15
|
+
* @param id
|
|
16
|
+
* Describe the method names used in Functions.
|
|
17
|
+
*
|
|
18
|
+
* Functionsで利用されるメソッド名を記述します。
|
|
19
|
+
*
|
|
20
|
+
* @param func
|
|
21
|
+
* Specify the actual contents of the process.
|
|
22
|
+
*
|
|
23
|
+
* 実際の処理の中身を指定します。
|
|
24
|
+
*/
|
|
25
|
+
constructor(id, func) {
|
|
26
|
+
this.id = id;
|
|
27
|
+
this.func = func;
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
exports.FunctionsData = FunctionsData;
|
|
31
|
+
//# sourceMappingURL=functions_data.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"functions_data.js","sourceRoot":"","sources":["../../src/lib/functions_data.ts"],"names":[],"mappings":";;;AAAA;;;;GAIG;AACH,MAAa,aAAa;IACxB;;;;;;;;;;;;;;OAcG;IACH,YAAqB,EAAU,EAAW,IAAc;QAAnC,OAAE,GAAF,EAAE,CAAQ;QAAW,SAAI,GAAJ,IAAI,CAAU;IAAG,CAAC;CAC7D;AAjBD,sCAiBC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,111 @@
|
|
|
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 (mod) {
|
|
19
|
+
if (mod && mod.__esModule) return mod;
|
|
20
|
+
var result = {};
|
|
21
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
+
__setModuleDefault(result, mod);
|
|
23
|
+
return result;
|
|
24
|
+
};
|
|
25
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
26
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
27
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
28
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
29
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
30
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
31
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
32
|
+
});
|
|
33
|
+
};
|
|
34
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
35
|
+
const functions = __importStar(require("firebase-functions"));
|
|
36
|
+
const admin = __importStar(require("firebase-admin"));
|
|
37
|
+
/**
|
|
38
|
+
* Define the process for PUSH notification.
|
|
39
|
+
*
|
|
40
|
+
* PUSH通知を行うための処理を定義します。
|
|
41
|
+
*
|
|
42
|
+
* @param title
|
|
43
|
+
* The title of the notice should be listed.
|
|
44
|
+
*
|
|
45
|
+
* 通知タイトルを記載します。
|
|
46
|
+
*
|
|
47
|
+
* @param body
|
|
48
|
+
* The contents of the notice will be described.
|
|
49
|
+
*
|
|
50
|
+
* 通知内容を記載します。
|
|
51
|
+
*
|
|
52
|
+
* @param channel_id
|
|
53
|
+
* Describe ChannelId for Android.
|
|
54
|
+
*
|
|
55
|
+
* Android向けのChannelIdを記載します。
|
|
56
|
+
*
|
|
57
|
+
* @param data
|
|
58
|
+
* Specify the data to be placed on the notification.
|
|
59
|
+
*
|
|
60
|
+
* 通知に乗せるデータを指定します。
|
|
61
|
+
*
|
|
62
|
+
* @param token
|
|
63
|
+
* Specifies the FCM token.
|
|
64
|
+
*
|
|
65
|
+
* FCMトークンを指定します。
|
|
66
|
+
*
|
|
67
|
+
* @param topic
|
|
68
|
+
* Specifies the topic of the FCM.
|
|
69
|
+
*
|
|
70
|
+
* FCMのトピックを指定します。
|
|
71
|
+
*/
|
|
72
|
+
module.exports = functions.region("asia-northeast1").https.onCall((query) => __awaiter(void 0, void 0, void 0, function* () {
|
|
73
|
+
try {
|
|
74
|
+
const title = query.title;
|
|
75
|
+
const body = query.body;
|
|
76
|
+
const channelId = query.channel_id;
|
|
77
|
+
const data = query.data;
|
|
78
|
+
const token = query.token;
|
|
79
|
+
const topic = query.topic;
|
|
80
|
+
if (token === undefined || topic === undefined) {
|
|
81
|
+
throw new functions.https.HttpsError("invalid-argument", "Either [token] or [topic] must be specified.");
|
|
82
|
+
}
|
|
83
|
+
const res = yield admin.messaging().send({
|
|
84
|
+
notification: {
|
|
85
|
+
title: title,
|
|
86
|
+
body: body,
|
|
87
|
+
},
|
|
88
|
+
android: {
|
|
89
|
+
priority: "high",
|
|
90
|
+
notification: {
|
|
91
|
+
title: title,
|
|
92
|
+
body: body,
|
|
93
|
+
clickAction: "FLUTTER_NOTIFICATION_CLICK",
|
|
94
|
+
channelId: channelId,
|
|
95
|
+
},
|
|
96
|
+
},
|
|
97
|
+
data: data,
|
|
98
|
+
token: token,
|
|
99
|
+
topic: topic,
|
|
100
|
+
});
|
|
101
|
+
return {
|
|
102
|
+
success: true,
|
|
103
|
+
message_id: res,
|
|
104
|
+
};
|
|
105
|
+
}
|
|
106
|
+
catch (err) {
|
|
107
|
+
console.log(err);
|
|
108
|
+
throw err;
|
|
109
|
+
}
|
|
110
|
+
}));
|
|
111
|
+
//# sourceMappingURL=notification.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"notification.js","sourceRoot":"","sources":["../../../src/functions/notification.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,8DAAgD;AAChD,sDAAwC;AAExC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkCG;AACH,MAAM,CAAC,OAAO,GAAG,SAAS,CAAC,MAAM,CAAC,iBAAiB,CAAC,CAAC,KAAK,CAAC,MAAM,CAC7D,CAAO,KAAK,EAAE,EAAE;IACZ,IAAI;QACA,MAAM,KAAK,GAAG,KAAK,CAAC,KAAe,CAAC;QACpC,MAAM,IAAI,GAAG,KAAK,CAAC,IAAc,CAAC;QAClC,MAAM,SAAS,GAAG,KAAK,CAAC,UAAgC,CAAC;QACzD,MAAM,IAAI,GAAG,KAAK,CAAC,IAA6C,CAAC;QACjE,MAAM,KAAK,GAAG,KAAK,CAAC,KAA2B,CAAC;QAChD,MAAM,KAAK,GAAG,KAAK,CAAC,KAA2B,CAAC;QAChD,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,SAAS,EAAE;YAC5C,MAAM,IAAI,SAAS,CAAC,KAAK,CAAC,UAAU,CAAC,kBAAkB,EAAE,8CAA8C,CAAC,CAAC;SAC5G;QACD,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,SAAS,EAAE,CAAC,IAAI,CACpC;YACI,YAAY,EAAE;gBACV,KAAK,EAAE,KAAK;gBACZ,IAAI,EAAE,IAAI;aACb;YACD,OAAO,EAAE;gBACL,QAAQ,EAAE,MAAM;gBAChB,YAAY,EAAE;oBACV,KAAK,EAAE,KAAK;oBACZ,IAAI,EAAE,IAAI;oBACV,WAAW,EAAE,4BAA4B;oBACzC,SAAS,EAAE,SAAS;iBACvB;aACJ;YACD,IAAI,EAAE,IAAI;YACV,KAAK,EAAE,KAAK;YACZ,KAAK,EAAE,KAAK;SACf,CACJ,CAAC;QACF,OAAO;YACH,OAAO,EAAE,IAAI;YACb,UAAU,EAAE,GAAG;SAClB,CAAC;KACL;IAAC,OAAO,GAAG,EAAE;QACV,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QACjB,MAAM,GAAG,CAAC;KACb;AACL,CAAC,CAAA,CACJ,CAAC"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import * as data from "./lib/functions_data";
|
|
2
|
+
/**
|
|
3
|
+
* Define a list of applicable Functions for FirebaseFunctions.
|
|
4
|
+
*
|
|
5
|
+
* FirebaseFunctions用の適用可能なFunctionの一覧を定義します。
|
|
6
|
+
*/
|
|
7
|
+
export declare const Functions: {
|
|
8
|
+
/**
|
|
9
|
+
* Function for sending PUSH notifications.
|
|
10
|
+
*
|
|
11
|
+
* PUSH通知を送信するためのFunction。
|
|
12
|
+
*/
|
|
13
|
+
readonly notification: data.FunctionsData;
|
|
14
|
+
};
|
|
@@ -0,0 +1,41 @@
|
|
|
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 (mod) {
|
|
19
|
+
if (mod && mod.__esModule) return mod;
|
|
20
|
+
var result = {};
|
|
21
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
+
__setModuleDefault(result, mod);
|
|
23
|
+
return result;
|
|
24
|
+
};
|
|
25
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
26
|
+
exports.Functions = void 0;
|
|
27
|
+
const data = __importStar(require("./lib/functions_data"));
|
|
28
|
+
/**
|
|
29
|
+
* Define a list of applicable Functions for FirebaseFunctions.
|
|
30
|
+
*
|
|
31
|
+
* FirebaseFunctions用の適用可能なFunctionの一覧を定義します。
|
|
32
|
+
*/
|
|
33
|
+
exports.Functions = {
|
|
34
|
+
/**
|
|
35
|
+
* Function for sending PUSH notifications.
|
|
36
|
+
*
|
|
37
|
+
* PUSH通知を送信するためのFunction。
|
|
38
|
+
*/
|
|
39
|
+
notification: new data.FunctionsData("notification", require("./functions/notification")),
|
|
40
|
+
};
|
|
41
|
+
//# sourceMappingURL=functions.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"functions.js","sourceRoot":"","sources":["../../src/functions.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,2DAA6C;AAE7C;;;;GAIG;AACU,QAAA,SAAS,GAAG;IACvB;;;;OAIG;IACH,YAAY,EAAE,IAAI,IAAI,CAAC,aAAa,CAAC,cAAc,EAAE,OAAO,CAAC,0BAA0B,CAAC,CAAC;CACjF,CAAC"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import * as data from "./lib/functions_data";
|
|
2
|
+
export * from "./functions";
|
|
3
|
+
/**
|
|
4
|
+
* Methods for deploying to Firebase Functions.
|
|
5
|
+
*
|
|
6
|
+
* Firebase Functionsにデプロイするためのメソッドです。
|
|
7
|
+
*
|
|
8
|
+
* @param deployFunctions
|
|
9
|
+
* The elements defined in [Functions] are passed as an array.
|
|
10
|
+
*
|
|
11
|
+
* The passed method is deployed. [Functions]で定義された要素を配列として渡します。渡されたメソッドがデプロイされます。
|
|
12
|
+
*/
|
|
13
|
+
export declare function deploy(deployFunctions: [data.FunctionsData]): void;
|
|
@@ -0,0 +1,51 @@
|
|
|
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 (mod) {
|
|
19
|
+
if (mod && mod.__esModule) return mod;
|
|
20
|
+
var result = {};
|
|
21
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
+
__setModuleDefault(result, mod);
|
|
23
|
+
return result;
|
|
24
|
+
};
|
|
25
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
26
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
27
|
+
};
|
|
28
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
29
|
+
exports.deploy = void 0;
|
|
30
|
+
const admin = __importStar(require("firebase-admin"));
|
|
31
|
+
__exportStar(require("./functions"), exports);
|
|
32
|
+
/**
|
|
33
|
+
* Methods for deploying to Firebase Functions.
|
|
34
|
+
*
|
|
35
|
+
* Firebase Functionsにデプロイするためのメソッドです。
|
|
36
|
+
*
|
|
37
|
+
* @param deployFunctions
|
|
38
|
+
* The elements defined in [Functions] are passed as an array.
|
|
39
|
+
*
|
|
40
|
+
* The passed method is deployed. [Functions]で定義された要素を配列として渡します。渡されたメソッドがデプロイされます。
|
|
41
|
+
*/
|
|
42
|
+
function deploy(deployFunctions) {
|
|
43
|
+
admin.initializeApp();
|
|
44
|
+
for (const data of deployFunctions) {
|
|
45
|
+
if (!process.env.FUNCTION_NAME || process.env.FUNCTION_NAME === data.id) {
|
|
46
|
+
exports[data.id] = data.func;
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
exports.deploy = deploy;
|
|
51
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,sDAAwC;AACxC,8CAA4B;AAE5B;;;;;;;;;GASG;AACH,SAAgB,MAAM,CAAC,eAAqC;IACxD,KAAK,CAAC,aAAa,EAAE,CAAC;IACtB,KAAK,MAAM,IAAI,IAAI,eAAe,EAAE;QAChC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,aAAa,IAAI,OAAO,CAAC,GAAG,CAAC,aAAa,KAAK,IAAI,CAAC,EAAE,EAAE;YACrE,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC;SAChC;KACJ;AACL,CAAC;AAPD,wBAOC"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Define Function data for FirebaseFunctions.
|
|
3
|
+
*
|
|
4
|
+
* FirebaseFunctions用のFunctionのデータを定義します。
|
|
5
|
+
*/
|
|
6
|
+
export declare class FunctionsData {
|
|
7
|
+
readonly id: string;
|
|
8
|
+
readonly func: Function;
|
|
9
|
+
/**
|
|
10
|
+
* Define Function data for FirebaseFunctions.
|
|
11
|
+
*
|
|
12
|
+
* FirebaseFunctions用のFunctionのデータを定義します。
|
|
13
|
+
*
|
|
14
|
+
* @param id
|
|
15
|
+
* Describe the method names used in Functions.
|
|
16
|
+
*
|
|
17
|
+
* Functionsで利用されるメソッド名を記述します。
|
|
18
|
+
*
|
|
19
|
+
* @param func
|
|
20
|
+
* Specify the actual contents of the process.
|
|
21
|
+
*
|
|
22
|
+
* 実際の処理の中身を指定します。
|
|
23
|
+
*/
|
|
24
|
+
constructor(id: string, func: Function);
|
|
25
|
+
}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.FunctionsData = void 0;
|
|
4
|
+
/**
|
|
5
|
+
* Define Function data for FirebaseFunctions.
|
|
6
|
+
*
|
|
7
|
+
* FirebaseFunctions用のFunctionのデータを定義します。
|
|
8
|
+
*/
|
|
9
|
+
class FunctionsData {
|
|
10
|
+
/**
|
|
11
|
+
* Define Function data for FirebaseFunctions.
|
|
12
|
+
*
|
|
13
|
+
* FirebaseFunctions用のFunctionのデータを定義します。
|
|
14
|
+
*
|
|
15
|
+
* @param id
|
|
16
|
+
* Describe the method names used in Functions.
|
|
17
|
+
*
|
|
18
|
+
* Functionsで利用されるメソッド名を記述します。
|
|
19
|
+
*
|
|
20
|
+
* @param func
|
|
21
|
+
* Specify the actual contents of the process.
|
|
22
|
+
*
|
|
23
|
+
* 実際の処理の中身を指定します。
|
|
24
|
+
*/
|
|
25
|
+
constructor(id, func) {
|
|
26
|
+
this.id = id;
|
|
27
|
+
this.func = func;
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
exports.FunctionsData = FunctionsData;
|
|
31
|
+
//# sourceMappingURL=functions_data.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"functions_data.js","sourceRoot":"","sources":["../../../src/lib/functions_data.ts"],"names":[],"mappings":";;;AAAA;;;;GAIG;AACH,MAAa,aAAa;IACxB;;;;;;;;;;;;;;OAcG;IACH,YAAqB,EAAU,EAAW,IAAc;QAAnC,OAAE,GAAF,EAAE,CAAQ;QAAW,SAAI,GAAJ,IAAI,CAAU;IAAG,CAAC;CAC7D;AAjBD,sCAiBC"}
|
package/package.json
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@mathrunet/masamune",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.5",
|
|
4
4
|
"description": "Manages packages for the server portion (NodeJS) of the Masamune framework.",
|
|
5
|
-
"main": "index.js",
|
|
6
|
-
"types": "index.d.ts",
|
|
5
|
+
"main": "dist/index.js",
|
|
6
|
+
"types": "dist/index.d.ts",
|
|
7
7
|
"scripts": {
|
|
8
8
|
"build": "tsc",
|
|
9
9
|
"prepare": "npm run build",
|
package/.github/images/icon.png
DELETED
|
Binary file
|
package/__tests__/export.test.ts
DELETED