@mathrunet/masamune 2.1.0 → 2.1.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +9 -0
- package/dist/functions/algolia.js +48 -51
- package/dist/functions/algolia.js.map +1 -1
- package/package.json +3 -3
package/CHANGELOG.md
CHANGED
|
@@ -1,3 +1,12 @@
|
|
|
1
|
+
## [2.1.1](https://github.com/mathrunet/node_masamune/compare/v2.1.0...v2.1.1) (2024-01-18)
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
### fix
|
|
5
|
+
|
|
6
|
+
* Apply Algolia to firestore. ([77157c4](https://github.com/mathrunet/node_masamune/commit/77157c41fa320bb624779e9d18ef5a0cab3ecf04))
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
|
|
1
10
|
# [2.1.0](https://github.com/mathrunet/node_masamune/compare/v2.0.1...v2.1.0) (2024-01-18)
|
|
2
11
|
|
|
3
12
|
|
|
@@ -57,59 +57,56 @@ const algolia = __importStar(require("algoliasearch"));
|
|
|
57
57
|
* 2. 「All API Key」の画面を開き「New API Key」から新しくAPIキーを作成する。
|
|
58
58
|
* - 「ACL」に「AddObject」「DeleteObject」を追加しておくこと。
|
|
59
59
|
*/
|
|
60
|
-
module.exports = (regions, options, data) => {
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
if (!key || !data) {
|
|
82
|
-
return;
|
|
83
|
-
}
|
|
84
|
-
const algoliaObject = Object.assign(Object.assign({}, data), { "@uid": key, objectID: key });
|
|
85
|
-
const index = client.initIndex(indexName);
|
|
86
|
-
yield index.saveObject(algoliaObject);
|
|
87
|
-
// update
|
|
60
|
+
module.exports = (regions, options, data) => functions.firestore.onDocumentWritten({
|
|
61
|
+
document: `${options.path}/{docId}`,
|
|
62
|
+
region: regions[0],
|
|
63
|
+
timeoutSeconds: options.timeoutSeconds,
|
|
64
|
+
memory: options.memory,
|
|
65
|
+
minInstances: options.minInstances,
|
|
66
|
+
concurrency: options.concurrency,
|
|
67
|
+
maxInstances: options.maxInstances,
|
|
68
|
+
}, (event) => __awaiter(void 0, void 0, void 0, function* () {
|
|
69
|
+
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o;
|
|
70
|
+
try {
|
|
71
|
+
const afterExists = (_b = (_a = event.data) === null || _a === void 0 ? void 0 : _a.after.exists) !== null && _b !== void 0 ? _b : false;
|
|
72
|
+
const beforeExists = (_d = (_c = event.data) === null || _c === void 0 ? void 0 : _c.before.exists) !== null && _d !== void 0 ? _d : false;
|
|
73
|
+
const indexName = (_f = (_e = options.path) === null || _e === void 0 ? void 0 : _e.split("/").pop()) !== null && _f !== void 0 ? _f : "";
|
|
74
|
+
const client = algolia.default((_g = process.env.ALGOLIA_APPID) !== null && _g !== void 0 ? _g : "", (_h = process.env.ALGOLIA_APIKEY) !== null && _h !== void 0 ? _h : "");
|
|
75
|
+
// create
|
|
76
|
+
if (!beforeExists && afterExists) {
|
|
77
|
+
const data = (_j = event.data) === null || _j === void 0 ? void 0 : _j.after.data();
|
|
78
|
+
const key = (_k = event.data) === null || _k === void 0 ? void 0 : _k.after.id;
|
|
79
|
+
if (!key || !data) {
|
|
80
|
+
return;
|
|
88
81
|
}
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
}
|
|
100
|
-
else if (before.exists() && !after.exists()) {
|
|
101
|
-
const key = before.key;
|
|
102
|
-
if (!key) {
|
|
103
|
-
return;
|
|
104
|
-
}
|
|
105
|
-
const index = client.initIndex(indexName);
|
|
106
|
-
yield index.deleteObject(key);
|
|
82
|
+
const algoliaObject = Object.assign(Object.assign({}, data), { "@uid": key, objectID: key });
|
|
83
|
+
const index = client.initIndex(indexName);
|
|
84
|
+
yield index.saveObject(algoliaObject);
|
|
85
|
+
// update
|
|
86
|
+
}
|
|
87
|
+
else if (beforeExists && afterExists) {
|
|
88
|
+
const data = (_l = event.data) === null || _l === void 0 ? void 0 : _l.after.data();
|
|
89
|
+
const key = (_m = event.data) === null || _m === void 0 ? void 0 : _m.after.id;
|
|
90
|
+
if (!key || !data) {
|
|
91
|
+
return;
|
|
107
92
|
}
|
|
93
|
+
const algoliaObject = Object.assign(Object.assign({}, data), { "@uid": key, objectID: key });
|
|
94
|
+
const index = client.initIndex(indexName);
|
|
95
|
+
yield index.saveObject(algoliaObject);
|
|
96
|
+
// delete
|
|
108
97
|
}
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
98
|
+
else if (beforeExists && !afterExists) {
|
|
99
|
+
const key = (_o = event.data) === null || _o === void 0 ? void 0 : _o.after.id;
|
|
100
|
+
if (!key) {
|
|
101
|
+
return;
|
|
102
|
+
}
|
|
103
|
+
const index = client.initIndex(indexName);
|
|
104
|
+
yield index.deleteObject(key);
|
|
112
105
|
}
|
|
113
|
-
}
|
|
114
|
-
|
|
106
|
+
}
|
|
107
|
+
catch (err) {
|
|
108
|
+
console.log(err);
|
|
109
|
+
throw err;
|
|
110
|
+
}
|
|
111
|
+
}));
|
|
115
112
|
//# sourceMappingURL=algolia.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"algolia.js","sourceRoot":"","sources":["../../src/functions/algolia.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,iEAAmD;
|
|
1
|
+
{"version":3,"file":"algolia.js","sourceRoot":"","sources":["../../src/functions/algolia.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,iEAAmD;AAEnD,uDAAyC;AAGzC;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,MAAM,CAAC,OAAO,GAAG,CACb,OAAiB,EACjB,OAA6B,EAC7B,IAA+B,EACjC,EAAE,CAAC,SAAS,CAAC,SAAS,CAAC,iBAAiB,CACtC;IACI,QAAQ,EAAE,GAAG,OAAO,CAAC,IAAI,UAAU;IACnC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;IAClB,cAAc,EAAE,OAAO,CAAC,cAAc;IACtC,MAAM,EAAE,OAAO,CAAC,MAAM;IACtB,YAAY,EAAE,OAAO,CAAC,YAAY;IAClC,WAAW,EAAE,OAAO,CAAC,WAAW;IAChC,YAAY,EAAE,OAAO,CAAC,YAAY;CACrC,EACD,CAAO,KAAK,EAAE,EAAE;;IACZ,IAAI;QACA,MAAM,WAAW,GAAG,MAAA,MAAA,KAAK,CAAC,IAAI,0CAAE,KAAK,CAAC,MAAM,mCAAI,KAAK,CAAC;QACtD,MAAM,YAAY,GAAG,MAAA,MAAA,KAAK,CAAC,IAAI,0CAAE,MAAM,CAAC,MAAM,mCAAI,KAAK,CAAC;QACxD,MAAM,SAAS,GAAG,MAAA,MAAA,OAAO,CAAC,IAAI,0CAAE,KAAK,CAAC,GAAG,EAAE,GAAG,EAAE,mCAAI,EAAE,CAAC;QACvD,MAAM,MAAM,GAAG,OAAO,CAAC,OAAO,CAC1B,MAAA,OAAO,CAAC,GAAG,CAAC,aAAa,mCAAI,EAAE,EAC/B,MAAA,OAAO,CAAC,GAAG,CAAC,cAAc,mCAAI,EAAE,CACnC,CAAC;QACF,SAAS;QACT,IAAI,CAAC,YAAY,IAAI,WAAW,EAAE;YAC9B,MAAM,IAAI,GAAG,MAAA,KAAK,CAAC,IAAI,0CAAE,KAAK,CAAC,IAAI,EAAE,CAAC;YACtC,MAAM,GAAG,GAAG,MAAA,KAAK,CAAC,IAAI,0CAAE,KAAK,CAAC,EAAE,CAAC;YACjC,IAAI,CAAC,GAAG,IAAI,CAAC,IAAI,EAAE;gBACf,OAAO;aACV;YACD,MAAM,aAAa,mCACZ,IAAI,KACP,MAAM,EAAE,GAAG,EACX,QAAQ,EAAE,GAAG,GAChB,CAAC;YACF,MAAM,KAAK,GAAG,MAAM,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;YAC1C,MAAM,KAAK,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC;YAC1C,SAAS;SACR;aAAM,IAAI,YAAY,IAAI,WAAW,EAAE;YACpC,MAAM,IAAI,GAAG,MAAA,KAAK,CAAC,IAAI,0CAAE,KAAK,CAAC,IAAI,EAAE,CAAC;YACtC,MAAM,GAAG,GAAG,MAAA,KAAK,CAAC,IAAI,0CAAE,KAAK,CAAC,EAAE,CAAC;YACjC,IAAI,CAAC,GAAG,IAAI,CAAC,IAAI,EAAE;gBACf,OAAO;aACV;YACD,MAAM,aAAa,mCACZ,IAAI,KACP,MAAM,EAAE,GAAG,EACX,QAAQ,EAAE,GAAG,GAChB,CAAC;YACF,MAAM,KAAK,GAAG,MAAM,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;YAC1C,MAAM,KAAK,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC;YAC1C,SAAS;SACR;aAAM,IAAI,YAAY,IAAI,CAAC,WAAW,EAAE;YACrC,MAAM,GAAG,GAAG,MAAA,KAAK,CAAC,IAAI,0CAAE,KAAK,CAAC,EAAE,CAAC;YACjC,IAAI,CAAC,GAAG,EAAE;gBACN,OAAO;aACV;YACD,MAAM,KAAK,GAAG,MAAM,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;YAC1C,MAAM,KAAK,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC;SACjC;KACJ;IAAC,OAAO,GAAG,EAAE;QACV,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QACjB,MAAM,GAAG,CAAC;KACb;AACL,CAAC,CAAA,CACJ,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@mathrunet/masamune",
|
|
3
|
-
"version": "2.1.
|
|
3
|
+
"version": "2.1.1",
|
|
4
4
|
"description": "Manages packages for the server portion (NodeJS) of the Masamune framework.",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|
|
@@ -38,8 +38,8 @@
|
|
|
38
38
|
"agora-token": "^2.0.2",
|
|
39
39
|
"algoliasearch": "^4.22.1",
|
|
40
40
|
"crypto": "^1.0.1",
|
|
41
|
-
"firebase-admin": "^11.
|
|
42
|
-
"firebase-functions": "^4.
|
|
41
|
+
"firebase-admin": "^11.11.1",
|
|
42
|
+
"firebase-functions": "^4.6.0",
|
|
43
43
|
"form-data": "^4.0.0",
|
|
44
44
|
"node-fetch": "^2.6.9",
|
|
45
45
|
"nodemailer": "^6.9.2",
|