@ghentcdh/crouton-api 0.0.1-alpha.58 → 0.0.1-alpha.59
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/dist/index.cjs +75 -12
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +15 -1
- package/dist/index.d.ts +15 -1
- package/dist/index.js +76 -15
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
package/dist/index.cjs
CHANGED
|
@@ -44,6 +44,8 @@ __export(index_exports, {
|
|
|
44
44
|
ResourceHooksSchema: () => ResourceHooksSchema,
|
|
45
45
|
SecurityGuardRegistry: () => SecurityGuardRegistry,
|
|
46
46
|
WriteOpSchema: () => WriteOpSchema,
|
|
47
|
+
applyAfterFindAll: () => applyAfterFindAll,
|
|
48
|
+
applyBeforeFindAll: () => applyBeforeFindAll,
|
|
47
49
|
buildFilterWhere: () => buildFilterWhere,
|
|
48
50
|
buildViews: () => buildViews,
|
|
49
51
|
decorateRow: () => decorateRow,
|
|
@@ -5011,7 +5013,9 @@ var ReadOpSchema = import_zod39.z.enum([
|
|
|
5011
5013
|
var ResourceHooksSchema = import_zod39.z.object({
|
|
5012
5014
|
beforeWrite: import_zod39.z.custom().optional(),
|
|
5013
5015
|
afterWrite: import_zod39.z.custom().optional(),
|
|
5014
|
-
afterRead: import_zod39.z.custom().optional()
|
|
5016
|
+
afterRead: import_zod39.z.custom().optional(),
|
|
5017
|
+
beforeFindAll: import_zod39.z.custom().optional(),
|
|
5018
|
+
afterFindAll: import_zod39.z.custom().optional()
|
|
5015
5019
|
});
|
|
5016
5020
|
|
|
5017
5021
|
// src/lib/crud/hooks/hooks.loader.ts
|
|
@@ -5069,6 +5073,14 @@ var prepareWrite = /* @__PURE__ */ __name(async (data, op, target, adapter, id,
|
|
|
5069
5073
|
const hook = target.hooks?.beforeWrite;
|
|
5070
5074
|
return hook ? hook(normalized, hookCtxWrite(adapter, op, id, request, parent)) : normalized;
|
|
5071
5075
|
}, "prepareWrite");
|
|
5076
|
+
var applyBeforeFindAll = /* @__PURE__ */ __name(async (params, target, adapter, request, parent) => {
|
|
5077
|
+
const hook = target.hooks?.beforeFindAll;
|
|
5078
|
+
return hook ? hook(params, hookCtxRead(adapter, "findAll", request, parent)) : params;
|
|
5079
|
+
}, "applyBeforeFindAll");
|
|
5080
|
+
var applyAfterFindAll = /* @__PURE__ */ __name(async (rows, target, adapter, request, parent) => {
|
|
5081
|
+
const hook = target.hooks?.afterFindAll;
|
|
5082
|
+
return hook ? hook(rows, hookCtxRead(adapter, "findAll", request, parent)) : rows;
|
|
5083
|
+
}, "applyAfterFindAll");
|
|
5072
5084
|
var postWrite = /* @__PURE__ */ __name(async (result, op, target, adapter, id, request, parent) => {
|
|
5073
5085
|
const hook = target.hooks?.afterWrite;
|
|
5074
5086
|
return hook ? hook(result, hookCtxWrite(adapter, op, id, request, parent)) : result;
|
|
@@ -5367,9 +5379,11 @@ function createCrudRepository(prisma, config, dataSources, configRegistry) {
|
|
|
5367
5379
|
hooks: config.hooks,
|
|
5368
5380
|
valueLabelColumns: vlCols
|
|
5369
5381
|
};
|
|
5370
|
-
|
|
5382
|
+
const decorated = await decorateRows(rows, "findAll", target, adapter2, request);
|
|
5383
|
+
return applyAfterFindAll(decorated, config, adapter2, request);
|
|
5371
5384
|
}, "mkDecorateFindAll");
|
|
5372
5385
|
const decorateFindAll2 = mkDecorateFindAll(resolvedAdapter);
|
|
5386
|
+
const applyBefore = /* @__PURE__ */ __name((params, request) => applyBeforeFindAll(params, config, resolvedAdapter, request), "applyBefore");
|
|
5373
5387
|
const decorateFindOne2 = /* @__PURE__ */ __name((row, request) => decorateRow(row, "findOne", config, resolvedAdapter, request), "decorateFindOne");
|
|
5374
5388
|
const prepareData2 = /* @__PURE__ */ __name((data, op, id, request) => prepareWrite(data, op, config, resolvedAdapter, id, request), "prepareData");
|
|
5375
5389
|
const postData2 = /* @__PURE__ */ __name((result, op, id, request) => postWrite(result, op, config, resolvedAdapter, id, request), "postData");
|
|
@@ -5401,9 +5415,10 @@ function createCrudRepository(prisma, config, dataSources, configRegistry) {
|
|
|
5401
5415
|
return {
|
|
5402
5416
|
prisma,
|
|
5403
5417
|
findAllWithCount: /* @__PURE__ */ __name(async (params, request) => {
|
|
5404
|
-
const
|
|
5418
|
+
const effectiveParams = await applyBefore(params, request);
|
|
5419
|
+
const { data, count } = await resolvedAdapter.findAll(adapterModelKey, effectiveParams, {
|
|
5405
5420
|
...ctx(request, "findAll"),
|
|
5406
|
-
offset: offsetOf(
|
|
5421
|
+
offset: offsetOf(effectiveParams)
|
|
5407
5422
|
});
|
|
5408
5423
|
return {
|
|
5409
5424
|
data: await decorateFindAll2(data, request),
|
|
@@ -5411,9 +5426,10 @@ function createCrudRepository(prisma, config, dataSources, configRegistry) {
|
|
|
5411
5426
|
};
|
|
5412
5427
|
}, "findAllWithCount"),
|
|
5413
5428
|
findAll: /* @__PURE__ */ __name(async (params, request) => {
|
|
5414
|
-
const
|
|
5429
|
+
const effectiveParams = await applyBefore(params, request);
|
|
5430
|
+
const { data } = await resolvedAdapter.findAll(adapterModelKey, effectiveParams, {
|
|
5415
5431
|
...ctx(request, "findAll"),
|
|
5416
|
-
offset: offsetOf(
|
|
5432
|
+
offset: offsetOf(effectiveParams)
|
|
5417
5433
|
});
|
|
5418
5434
|
return decorateFindAll2(data, request);
|
|
5419
5435
|
}, "findAll"),
|
|
@@ -5475,7 +5491,8 @@ function createCrudRepository(prisma, config, dataSources, configRegistry) {
|
|
|
5475
5491
|
hooks: config.hooks,
|
|
5476
5492
|
valueLabelColumns: vlCols
|
|
5477
5493
|
};
|
|
5478
|
-
|
|
5494
|
+
const decorated = await decorateRows(rows, "findAll", target, adapter, request);
|
|
5495
|
+
return applyAfterFindAll(decorated, config, adapter, request);
|
|
5479
5496
|
}, "decorateFindAll");
|
|
5480
5497
|
const decorateFindOne = /* @__PURE__ */ __name((row, request) => decorateRow(row, "findOne", config, adapter, request), "decorateFindOne");
|
|
5481
5498
|
const prepareData = /* @__PURE__ */ __name((data, op, id, request) => prepareWrite(data, op, config, adapter, id, request), "prepareData");
|
|
@@ -5483,7 +5500,10 @@ function createCrudRepository(prisma, config, dataSources, configRegistry) {
|
|
|
5483
5500
|
const toId = /* @__PURE__ */ __name((id) => (config.idType ?? "string") === "number" ? +id : String(id), "toId");
|
|
5484
5501
|
return {
|
|
5485
5502
|
prisma,
|
|
5486
|
-
findAll: /* @__PURE__ */ __name(async (params, request) =>
|
|
5503
|
+
findAll: /* @__PURE__ */ __name(async (params, request) => {
|
|
5504
|
+
const effectiveParams = await applyBeforeFindAll(params, config, adapter, request);
|
|
5505
|
+
return decorateFindAll(await reader.findAll(effectiveParams, request), request);
|
|
5506
|
+
}, "findAll"),
|
|
5487
5507
|
count: reader.count.bind(reader),
|
|
5488
5508
|
findOne: /* @__PURE__ */ __name(async (id, request) => decorateFindOne(await reader.findOne(id, request), request), "findOne"),
|
|
5489
5509
|
findAllByParent: reader.findAllByParent.bind(reader),
|
|
@@ -7920,6 +7940,44 @@ var import_node_fs7 = require("fs");
|
|
|
7920
7940
|
var import_promises7 = require("fs/promises");
|
|
7921
7941
|
var import_node_module2 = require("module");
|
|
7922
7942
|
var import_node_path15 = require("path");
|
|
7943
|
+
var loadDotenv = /* @__PURE__ */ __name((dir) => {
|
|
7944
|
+
try {
|
|
7945
|
+
const _require2 = (0, import_node_module2.createRequire)(importMetaUrl);
|
|
7946
|
+
const dotenv = _require2("dotenv");
|
|
7947
|
+
let d = dir;
|
|
7948
|
+
for (let i = 0; i < 6; i++) {
|
|
7949
|
+
if ((0, import_node_fs7.readdirSync)(d).includes(".env")) {
|
|
7950
|
+
dotenv.config({
|
|
7951
|
+
path: (0, import_node_path15.join)(d, ".env")
|
|
7952
|
+
});
|
|
7953
|
+
return;
|
|
7954
|
+
}
|
|
7955
|
+
const parent = (0, import_node_path15.dirname)(d);
|
|
7956
|
+
if (parent === d) break;
|
|
7957
|
+
d = parent;
|
|
7958
|
+
}
|
|
7959
|
+
} catch {
|
|
7960
|
+
}
|
|
7961
|
+
}, "loadDotenv");
|
|
7962
|
+
var resolveBin = /* @__PURE__ */ __name((name, cwd) => {
|
|
7963
|
+
let d = cwd;
|
|
7964
|
+
for (let i = 0; i < 6; i++) {
|
|
7965
|
+
const bin = (0, import_node_path15.join)(d, "node_modules", ".bin", name);
|
|
7966
|
+
if ((0, import_node_fs7.existsSync)(bin)) return [
|
|
7967
|
+
bin,
|
|
7968
|
+
[]
|
|
7969
|
+
];
|
|
7970
|
+
const parent = (0, import_node_path15.dirname)(d);
|
|
7971
|
+
if (parent === d) break;
|
|
7972
|
+
d = parent;
|
|
7973
|
+
}
|
|
7974
|
+
return [
|
|
7975
|
+
"npx",
|
|
7976
|
+
[
|
|
7977
|
+
name
|
|
7978
|
+
]
|
|
7979
|
+
];
|
|
7980
|
+
}, "resolveBin");
|
|
7923
7981
|
var run = /* @__PURE__ */ __name((cmd, args, cwd) => new Promise((resolve7) => {
|
|
7924
7982
|
const child = (0, import_node_child_process.spawn)(cmd, args, {
|
|
7925
7983
|
cwd,
|
|
@@ -7956,8 +8014,9 @@ var backupSchema = /* @__PURE__ */ __name(async (schemaPath) => {
|
|
|
7956
8014
|
return dest;
|
|
7957
8015
|
}, "backupSchema");
|
|
7958
8016
|
var prismaDbPull = /* @__PURE__ */ __name(async (cwd, prismaConfig) => {
|
|
7959
|
-
const
|
|
7960
|
-
|
|
8017
|
+
const [bin, prefix] = resolveBin("prisma", cwd);
|
|
8018
|
+
const { code, stdout, stderr } = await run(bin, [
|
|
8019
|
+
...prefix,
|
|
7961
8020
|
"db",
|
|
7962
8021
|
"pull",
|
|
7963
8022
|
"--config",
|
|
@@ -7999,8 +8058,9 @@ ${stderr}`.trim()
|
|
|
7999
8058
|
};
|
|
8000
8059
|
}, "prismaCaseFormat");
|
|
8001
8060
|
var prismaGenerate = /* @__PURE__ */ __name(async (cwd, prismaConfig) => {
|
|
8002
|
-
const
|
|
8003
|
-
|
|
8061
|
+
const [bin, prefix] = resolveBin("prisma", cwd);
|
|
8062
|
+
const { code, stdout, stderr } = await run(bin, [
|
|
8063
|
+
...prefix,
|
|
8004
8064
|
"generate",
|
|
8005
8065
|
"--config",
|
|
8006
8066
|
prismaConfig
|
|
@@ -8041,6 +8101,7 @@ ${src}`, "utf-8");
|
|
|
8041
8101
|
}, "fixZodImports");
|
|
8042
8102
|
var pullAndGenerate = /* @__PURE__ */ __name(async (input) => {
|
|
8043
8103
|
const { root, prismaConfigPath, schemaPath, zodOutputDir } = input;
|
|
8104
|
+
loadDotenv(root);
|
|
8044
8105
|
const backupPath = await backupSchema(schemaPath);
|
|
8045
8106
|
const dbPull = await prismaDbPull(root, prismaConfigPath);
|
|
8046
8107
|
if (!dbPull.ok) {
|
|
@@ -10012,6 +10073,8 @@ var parseSchema = /* @__PURE__ */ __name((input, appConfig, view = "schemas") =>
|
|
|
10012
10073
|
ResourceHooksSchema,
|
|
10013
10074
|
SecurityGuardRegistry,
|
|
10014
10075
|
WriteOpSchema,
|
|
10076
|
+
applyAfterFindAll,
|
|
10077
|
+
applyBeforeFindAll,
|
|
10015
10078
|
buildFilterWhere,
|
|
10016
10079
|
buildViews,
|
|
10017
10080
|
decorateRow,
|