@stoker-platform/cli 0.5.66 → 0.5.68
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/init-files/src/collections/Inbox.ts +6 -6
- package/init-files/src/collections/Outbox.ts +1 -1
- package/init-files/src/main.ts +3 -3
- package/lib/package.json +4 -4
- package/lib/src/deploy/cloud-functions/getFunctionsData.js +1 -1
- package/lib/src/deploy/schema/generateSchema.js +3 -3
- package/lib/src/lint/lintSchema.js +1 -1
- package/lib/src/lint/securityReport.js +2 -2
- package/lib/src/project/getSome.js +1 -1
- package/package.json +4 -4
|
@@ -16,7 +16,7 @@ import { parseDate } from "@stoker-platform/utils"
|
|
|
16
16
|
|
|
17
17
|
const toasted: string[] = []
|
|
18
18
|
|
|
19
|
-
const Inbox: GenerateSchema = (sdk, utils, context): CollectionSchema => {
|
|
19
|
+
const Inbox: GenerateSchema = ({ sdk, utils, context }): CollectionSchema => {
|
|
20
20
|
const { toast } = (context || {}) as {
|
|
21
21
|
toast: ({
|
|
22
22
|
title,
|
|
@@ -69,13 +69,13 @@ const Inbox: GenerateSchema = (sdk, utils, context): CollectionSchema => {
|
|
|
69
69
|
retentionPeriod: 7,
|
|
70
70
|
},
|
|
71
71
|
custom: {
|
|
72
|
-
async postRead({
|
|
72
|
+
async postRead({ record }) {
|
|
73
73
|
if (sdk === "web") {
|
|
74
|
-
if (
|
|
75
|
-
toasted.push(
|
|
74
|
+
if (record && record.Status === "Unread" && !record.Notified && !toasted.includes(record.id)) {
|
|
75
|
+
toasted.push(record.id)
|
|
76
76
|
const { updateRecord } = await import("@stoker-platform/web-client")
|
|
77
|
-
toast({ title: "New Message", description:
|
|
78
|
-
updateRecord(["Inbox"],
|
|
77
|
+
toast({ title: "New Message", description: record.Subject, duration: 10000000 })
|
|
78
|
+
updateRecord(["Inbox"], record.id, {
|
|
79
79
|
Notified: true,
|
|
80
80
|
})
|
|
81
81
|
}
|
|
@@ -3,7 +3,7 @@ import { MessageCircle, Send, SquarePen, Timer, TrendingUp, Users } from "lucide
|
|
|
3
3
|
import { blueField, greenField, redField } from "../utils.js"
|
|
4
4
|
import { parseDate } from "@stoker-platform/utils"
|
|
5
5
|
|
|
6
|
-
const Outbox: GenerateSchema = (sdk
|
|
6
|
+
const Outbox: GenerateSchema = ({ sdk }): CollectionSchema => {
|
|
7
7
|
return {
|
|
8
8
|
labels: {
|
|
9
9
|
collection: "Outbox",
|
package/init-files/src/main.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { DialogContent, GenerateGlobalConfig, GlobalConfig, WebUtilities } from "@stoker-platform/types"
|
|
2
2
|
|
|
3
|
-
const globalConfig: GenerateGlobalConfig = (sdk, utils, context): GlobalConfig => {
|
|
3
|
+
const globalConfig: GenerateGlobalConfig = ({ sdk, utils, context }): GlobalConfig => {
|
|
4
4
|
const { setDialogContent, setConnectionStatus } = (context || {}) as {
|
|
5
5
|
setDialogContent: (dialogContent: DialogContent | null) => void
|
|
6
6
|
setConnectionStatus: (connectionStatus: "online" | "offline") => void
|
|
@@ -163,7 +163,7 @@ const globalConfig: GenerateGlobalConfig = (sdk, utils, context): GlobalConfig =
|
|
|
163
163
|
}
|
|
164
164
|
},
|
|
165
165
|
},
|
|
166
|
-
async postWriteError({ operation,
|
|
166
|
+
async postWriteError({ operation, recordId, context, error }) {
|
|
167
167
|
if (sdk === "web") {
|
|
168
168
|
const { sendAdminEmail } = await import("@stoker-platform/web-client")
|
|
169
169
|
const { getAuth } = await import("firebase/auth")
|
|
@@ -171,7 +171,7 @@ const globalConfig: GenerateGlobalConfig = (sdk, utils, context): GlobalConfig =
|
|
|
171
171
|
if (!currentUser?.uid) throw new Error("Error sending Firestore write operation failure email")
|
|
172
172
|
await sendAdminEmail(
|
|
173
173
|
`Stoker Operation Failure`,
|
|
174
|
-
`Operation Type: ${operation}\n\nUser: ${currentUser.displayName}\n\nUser ID: ${currentUser.uid}\n\nCollection: ${context.collection}\n\nDocument ID: ${
|
|
174
|
+
`Operation Type: ${operation}\n\nUser: ${currentUser.displayName}\n\nUser ID: ${currentUser.uid}\n\nCollection: ${context.collection}\n\nDocument ID: ${recordId}\n\nError Details:\n\n${JSON.stringify(error)}`,
|
|
175
175
|
).catch(() => {
|
|
176
176
|
throw new Error("Error sending Firestore write operation failure email")
|
|
177
177
|
})
|
package/lib/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@stoker-platform/cli",
|
|
3
|
-
"version": "0.5.
|
|
3
|
+
"version": "0.5.67",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"license": "SEE LICENSE IN LICENSE.md",
|
|
6
6
|
"main": "./lib/src/main.js",
|
|
@@ -24,9 +24,9 @@
|
|
|
24
24
|
"@google-cloud/secret-manager": "^6.1.1",
|
|
25
25
|
"@google-cloud/storage": "^7.19.0",
|
|
26
26
|
"@inquirer/prompts": "^8.4.2",
|
|
27
|
-
"@stoker-platform/node-client": "0.5.
|
|
28
|
-
"@stoker-platform/types": "0.5.
|
|
29
|
-
"@stoker-platform/utils": "0.5.
|
|
27
|
+
"@stoker-platform/node-client": "0.5.48",
|
|
28
|
+
"@stoker-platform/types": "0.5.31",
|
|
29
|
+
"@stoker-platform/utils": "0.5.40",
|
|
30
30
|
"algoliasearch": "^5.51.0",
|
|
31
31
|
"commander": "^14.0.0",
|
|
32
32
|
"cross-spawn": "^7.0.6",
|
|
@@ -9,7 +9,7 @@ export const getFunctionsData = async () => {
|
|
|
9
9
|
const url = pathToFileURL(path).href;
|
|
10
10
|
const globalConfigFile = await import(/* @vite-ignore */ url);
|
|
11
11
|
const config = globalConfigFile.default;
|
|
12
|
-
const globalConfig = config("node");
|
|
12
|
+
const globalConfig = config({ sdk: "node" });
|
|
13
13
|
const timezone = await tryPromise(globalConfig.timezone);
|
|
14
14
|
const schema = await generateSchema();
|
|
15
15
|
const filePath = join(process.cwd(), "functions", "project-data.json");
|
|
@@ -10,7 +10,7 @@ export const generateSchema = async (includeComputedFields = false) => {
|
|
|
10
10
|
const path = join(process.cwd(), "lib", "main.js");
|
|
11
11
|
const url = pathToFileURL(path).href;
|
|
12
12
|
const globalConfigFile = await import(url);
|
|
13
|
-
const globalConfig = globalConfigFile.default("node");
|
|
13
|
+
const globalConfig = globalConfigFile.default({ sdk: "node" });
|
|
14
14
|
const projectData = await readFile(join(process.cwd(), "project-data.json"), "utf8");
|
|
15
15
|
const projectDataJson = JSON.parse(projectData);
|
|
16
16
|
const version = projectDataJson.version || 1;
|
|
@@ -36,7 +36,7 @@ export const generateSchema = async (includeComputedFields = false) => {
|
|
|
36
36
|
const path = join(process.cwd(), "lib", "collections", collection);
|
|
37
37
|
const url = pathToFileURL(path).href;
|
|
38
38
|
const schema = await import(url);
|
|
39
|
-
fullSchema.push(schema.default("node"));
|
|
39
|
+
fullSchema.push(schema.default({ sdk: "node" }));
|
|
40
40
|
}
|
|
41
41
|
newSchema.collections = {};
|
|
42
42
|
for (const collection of collections) {
|
|
@@ -45,7 +45,7 @@ export const generateSchema = async (includeComputedFields = false) => {
|
|
|
45
45
|
const path = join(process.cwd(), "lib", "collections", collection);
|
|
46
46
|
const url = pathToFileURL(path).href;
|
|
47
47
|
const schema = await import(url);
|
|
48
|
-
const persistSchema = schema.default("node");
|
|
48
|
+
const persistSchema = schema.default({ sdk: "node" });
|
|
49
49
|
const { labels, access, preloadCache, admin } = persistSchema;
|
|
50
50
|
const { serverReadOnly } = access;
|
|
51
51
|
if (!includeComputedFields) {
|
|
@@ -7,7 +7,7 @@ export const lintSchema = async (noLog = false) => {
|
|
|
7
7
|
const path = join(process.cwd(), "lib", "main.js");
|
|
8
8
|
const url = pathToFileURL(path).href;
|
|
9
9
|
const globalConfigFile = await import(url);
|
|
10
|
-
const globalConfig = globalConfigFile.default("node");
|
|
10
|
+
const globalConfig = globalConfigFile.default({ sdk: "node" });
|
|
11
11
|
const schema = await generateSchema(true);
|
|
12
12
|
const customizationFiles = await getCustomizationFiles(join(process.cwd(), "lib", "collections"), Object.keys(schema.collections));
|
|
13
13
|
const customizationModules = getCustomization(Object.keys(schema.collections), customizationFiles, "node");
|
|
@@ -13,7 +13,7 @@ export const securityReport = async () => {
|
|
|
13
13
|
const path = join(process.cwd(), "lib", "main.js");
|
|
14
14
|
const url = pathToFileURL(path).href;
|
|
15
15
|
const globalConfigFile = await import(url);
|
|
16
|
-
const globalConfig = globalConfigFile.default("node");
|
|
16
|
+
const globalConfig = globalConfigFile.default({ sdk: "node" });
|
|
17
17
|
for (const [collectionName, collectionSchema] of Object.entries(schema.collections)) {
|
|
18
18
|
const { auth, fields, access } = collectionSchema;
|
|
19
19
|
const { serverWriteOnly } = access;
|
|
@@ -66,7 +66,7 @@ export const securityReport = async () => {
|
|
|
66
66
|
const path = join(process.cwd(), "lib", "collections", `${collectionName}.js`);
|
|
67
67
|
const url = pathToFileURL(path).href;
|
|
68
68
|
const customizationFile = await import(url);
|
|
69
|
-
const customization = customizationFile.default("node");
|
|
69
|
+
const customization = customizationFile.default({ sdk: "node" });
|
|
70
70
|
if (isRelationField(field)) {
|
|
71
71
|
const relationCollection = schema.collections[field.collection];
|
|
72
72
|
const relationAccess = relationCollection.access;
|
|
@@ -22,6 +22,6 @@ export const getSome = async (options) => {
|
|
|
22
22
|
getSomeOptions.userId = options.user;
|
|
23
23
|
}
|
|
24
24
|
const result = await getSomeStoker(path, getSomeOptions);
|
|
25
|
-
console.log(JSON.stringify(result.
|
|
25
|
+
console.log(JSON.stringify(result.records, null, 2));
|
|
26
26
|
process.exit();
|
|
27
27
|
};
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@stoker-platform/cli",
|
|
3
|
-
"version": "0.5.
|
|
3
|
+
"version": "0.5.68",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"license": "SEE LICENSE IN LICENSE.md",
|
|
6
6
|
"main": "./lib/src/main.js",
|
|
@@ -24,9 +24,9 @@
|
|
|
24
24
|
"@google-cloud/secret-manager": "^6.1.1",
|
|
25
25
|
"@google-cloud/storage": "^7.19.0",
|
|
26
26
|
"@inquirer/prompts": "^8.4.2",
|
|
27
|
-
"@stoker-platform/node-client": "0.5.
|
|
28
|
-
"@stoker-platform/types": "0.5.
|
|
29
|
-
"@stoker-platform/utils": "0.5.
|
|
27
|
+
"@stoker-platform/node-client": "0.5.48",
|
|
28
|
+
"@stoker-platform/types": "0.5.31",
|
|
29
|
+
"@stoker-platform/utils": "0.5.40",
|
|
30
30
|
"algoliasearch": "^5.51.0",
|
|
31
31
|
"commander": "^14.0.0",
|
|
32
32
|
"cross-spawn": "^7.0.6",
|