over-zero 0.0.60 → 0.0.62
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/cjs/index.cjs +876 -34
- package/dist/cjs/index.cjs.map +1 -0
- package/dist/cjs/index.native.cjs +884 -0
- package/dist/cjs/index.native.cjs.map +1 -0
- package/dist/cjs/server.cjs +531 -11
- package/dist/cjs/server.cjs.map +1 -0
- package/dist/esm/chunk-H7ZB7VXX.mjs +852 -0
- package/dist/esm/chunk-H7ZB7VXX.mjs.map +1 -0
- package/dist/esm/index.cjs +884 -0
- package/dist/esm/index.cjs.map +1 -0
- package/dist/esm/index.d.cts +205 -0
- package/dist/esm/index.d.ts +205 -0
- package/dist/esm/index.mjs +43 -17
- package/dist/esm/index.mjs.map +1 -1
- package/dist/esm/index.native.cjs +884 -0
- package/dist/esm/index.native.cjs.map +1 -0
- package/dist/esm/index.native.d.cts +6 -0
- package/dist/esm/index.native.d.ts +6 -0
- package/dist/esm/index.native.mjs +43 -0
- package/dist/esm/index.native.mjs.map +1 -0
- package/{types/createZeroServer.d.ts → dist/esm/server.d.ts} +83 -16
- package/dist/esm/server.mjs +511 -2
- package/dist/esm/server.mjs.map +1 -1
- package/package.json +45 -24
- package/src/cli.ts +2 -2
- package/src/helpers/createMutators.ts +2 -1
- package/src/where.ts +2 -1
- package/dist/cjs/cli.cjs +0 -405
- package/dist/cjs/cli.js +0 -397
- package/dist/cjs/cli.js.map +0 -6
- package/dist/cjs/cli.native.js +0 -505
- package/dist/cjs/cli.native.js.map +0 -1
- package/dist/cjs/createPermissions.cjs +0 -82
- package/dist/cjs/createPermissions.js +0 -77
- package/dist/cjs/createPermissions.js.map +0 -6
- package/dist/cjs/createPermissions.native.js +0 -107
- package/dist/cjs/createPermissions.native.js.map +0 -1
- package/dist/cjs/createUseQuery.cjs +0 -59
- package/dist/cjs/createUseQuery.js +0 -34
- package/dist/cjs/createUseQuery.js.map +0 -6
- package/dist/cjs/createUseQuery.native.js +0 -70
- package/dist/cjs/createUseQuery.native.js.map +0 -1
- package/dist/cjs/createZeroClient.cjs +0 -162
- package/dist/cjs/createZeroClient.js +0 -126
- package/dist/cjs/createZeroClient.js.map +0 -6
- package/dist/cjs/createZeroClient.native.js +0 -214
- package/dist/cjs/createZeroClient.native.js.map +0 -1
- package/dist/cjs/createZeroServer.cjs +0 -148
- package/dist/cjs/createZeroServer.js +0 -126
- package/dist/cjs/createZeroServer.js.map +0 -6
- package/dist/cjs/createZeroServer.native.js +0 -170
- package/dist/cjs/createZeroServer.native.js.map +0 -1
- package/dist/cjs/helpers/batchQuery.cjs +0 -49
- package/dist/cjs/helpers/batchQuery.js +0 -38
- package/dist/cjs/helpers/batchQuery.js.map +0 -6
- package/dist/cjs/helpers/batchQuery.native.js +0 -49
- package/dist/cjs/helpers/batchQuery.native.js.map +0 -1
- package/dist/cjs/helpers/createMutators.cjs +0 -89
- package/dist/cjs/helpers/createMutators.js +0 -85
- package/dist/cjs/helpers/createMutators.js.map +0 -6
- package/dist/cjs/helpers/createMutators.native.js +0 -131
- package/dist/cjs/helpers/createMutators.native.js.map +0 -1
- package/dist/cjs/helpers/didRunPermissionCheck.cjs +0 -30
- package/dist/cjs/helpers/didRunPermissionCheck.js +0 -26
- package/dist/cjs/helpers/didRunPermissionCheck.js.map +0 -6
- package/dist/cjs/helpers/didRunPermissionCheck.native.js +0 -39
- package/dist/cjs/helpers/didRunPermissionCheck.native.js.map +0 -1
- package/dist/cjs/helpers/ensureLoggedIn.cjs +0 -33
- package/dist/cjs/helpers/ensureLoggedIn.js +0 -25
- package/dist/cjs/helpers/ensureLoggedIn.js.map +0 -6
- package/dist/cjs/helpers/ensureLoggedIn.native.js +0 -36
- package/dist/cjs/helpers/ensureLoggedIn.native.js.map +0 -1
- package/dist/cjs/helpers/getQueryOrMutatorAuthData.cjs +0 -30
- package/dist/cjs/helpers/getQueryOrMutatorAuthData.js +0 -24
- package/dist/cjs/helpers/getQueryOrMutatorAuthData.js.map +0 -6
- package/dist/cjs/helpers/getQueryOrMutatorAuthData.native.js +0 -33
- package/dist/cjs/helpers/getQueryOrMutatorAuthData.native.js.map +0 -1
- package/dist/cjs/helpers/mutatorContext.cjs +0 -40
- package/dist/cjs/helpers/mutatorContext.js +0 -36
- package/dist/cjs/helpers/mutatorContext.js.map +0 -6
- package/dist/cjs/helpers/mutatorContext.native.js +0 -43
- package/dist/cjs/helpers/mutatorContext.native.js.map +0 -1
- package/dist/cjs/helpers/prettyFormatZeroQuery.cjs +0 -107
- package/dist/cjs/helpers/prettyFormatZeroQuery.js +0 -92
- package/dist/cjs/helpers/prettyFormatZeroQuery.js.map +0 -6
- package/dist/cjs/helpers/prettyFormatZeroQuery.native.js +0 -119
- package/dist/cjs/helpers/prettyFormatZeroQuery.native.js.map +0 -1
- package/dist/cjs/helpers/useZeroDebug.cjs +0 -68
- package/dist/cjs/helpers/useZeroDebug.js +0 -49
- package/dist/cjs/helpers/useZeroDebug.js.map +0 -6
- package/dist/cjs/helpers/useZeroDebug.native.js +0 -81
- package/dist/cjs/helpers/useZeroDebug.native.js.map +0 -1
- package/dist/cjs/index.js +0 -35
- package/dist/cjs/index.js.map +0 -6
- package/dist/cjs/index.native.js +0 -45
- package/dist/cjs/index.native.js.map +0 -1
- package/dist/cjs/mutations.cjs +0 -51
- package/dist/cjs/mutations.js +0 -44
- package/dist/cjs/mutations.js.map +0 -6
- package/dist/cjs/mutations.native.js +0 -56
- package/dist/cjs/mutations.native.js.map +0 -1
- package/dist/cjs/queryRegistry.cjs +0 -33
- package/dist/cjs/queryRegistry.js +0 -28
- package/dist/cjs/queryRegistry.js.map +0 -6
- package/dist/cjs/queryRegistry.native.js +0 -36
- package/dist/cjs/queryRegistry.native.js.map +0 -1
- package/dist/cjs/resolveQuery.cjs +0 -41
- package/dist/cjs/resolveQuery.js +0 -40
- package/dist/cjs/resolveQuery.js.map +0 -6
- package/dist/cjs/resolveQuery.native.js +0 -46
- package/dist/cjs/resolveQuery.native.js.map +0 -1
- package/dist/cjs/run.cjs +0 -48
- package/dist/cjs/run.js +0 -37
- package/dist/cjs/run.js.map +0 -6
- package/dist/cjs/run.native.js +0 -52
- package/dist/cjs/run.native.js.map +0 -1
- package/dist/cjs/server.js +0 -15
- package/dist/cjs/server.js.map +0 -6
- package/dist/cjs/server.native.js +0 -21
- package/dist/cjs/server.native.js.map +0 -1
- package/dist/cjs/serverWhere.cjs +0 -29
- package/dist/cjs/serverWhere.js +0 -24
- package/dist/cjs/serverWhere.js.map +0 -6
- package/dist/cjs/serverWhere.native.js +0 -32
- package/dist/cjs/serverWhere.native.js.map +0 -1
- package/dist/cjs/state.cjs +0 -49
- package/dist/cjs/state.js +0 -37
- package/dist/cjs/state.js.map +0 -6
- package/dist/cjs/state.native.js +0 -54
- package/dist/cjs/state.native.js.map +0 -1
- package/dist/cjs/types.cjs +0 -16
- package/dist/cjs/types.js +0 -14
- package/dist/cjs/types.js.map +0 -6
- package/dist/cjs/types.native.js +0 -19
- package/dist/cjs/types.native.js.map +0 -1
- package/dist/cjs/where.cjs +0 -41
- package/dist/cjs/where.js +0 -38
- package/dist/cjs/where.js.map +0 -6
- package/dist/cjs/where.native.js +0 -48
- package/dist/cjs/where.native.js.map +0 -1
- package/dist/cjs/zeroRunner.cjs +0 -34
- package/dist/cjs/zeroRunner.js +0 -32
- package/dist/cjs/zeroRunner.js.map +0 -6
- package/dist/cjs/zeroRunner.native.js +0 -37
- package/dist/cjs/zeroRunner.native.js.map +0 -1
- package/dist/cjs/zql.cjs +0 -31
- package/dist/cjs/zql.js +0 -26
- package/dist/cjs/zql.js.map +0 -6
- package/dist/cjs/zql.native.js +0 -35
- package/dist/cjs/zql.native.js.map +0 -1
- package/dist/esm/cli.js +0 -383
- package/dist/esm/cli.js.map +0 -6
- package/dist/esm/cli.mjs +0 -384
- package/dist/esm/cli.mjs.map +0 -1
- package/dist/esm/cli.native.js +0 -481
- package/dist/esm/cli.native.js.map +0 -1
- package/dist/esm/createPermissions.js +0 -66
- package/dist/esm/createPermissions.js.map +0 -6
- package/dist/esm/createPermissions.mjs +0 -59
- package/dist/esm/createPermissions.mjs.map +0 -1
- package/dist/esm/createPermissions.native.js +0 -81
- package/dist/esm/createPermissions.native.js.map +0 -1
- package/dist/esm/createUseQuery.js +0 -21
- package/dist/esm/createUseQuery.js.map +0 -6
- package/dist/esm/createUseQuery.mjs +0 -36
- package/dist/esm/createUseQuery.mjs.map +0 -1
- package/dist/esm/createUseQuery.native.js +0 -44
- package/dist/esm/createUseQuery.native.js.map +0 -1
- package/dist/esm/createZeroClient.js +0 -135
- package/dist/esm/createZeroClient.js.map +0 -6
- package/dist/esm/createZeroClient.mjs +0 -139
- package/dist/esm/createZeroClient.mjs.map +0 -1
- package/dist/esm/createZeroClient.native.js +0 -188
- package/dist/esm/createZeroClient.native.js.map +0 -1
- package/dist/esm/createZeroServer.js +0 -121
- package/dist/esm/createZeroServer.js.map +0 -6
- package/dist/esm/createZeroServer.mjs +0 -125
- package/dist/esm/createZeroServer.mjs.map +0 -1
- package/dist/esm/createZeroServer.native.js +0 -144
- package/dist/esm/createZeroServer.native.js.map +0 -1
- package/dist/esm/helpers/batchQuery.js +0 -22
- package/dist/esm/helpers/batchQuery.js.map +0 -6
- package/dist/esm/helpers/batchQuery.mjs +0 -26
- package/dist/esm/helpers/batchQuery.mjs.map +0 -1
- package/dist/esm/helpers/batchQuery.native.js +0 -23
- package/dist/esm/helpers/batchQuery.native.js.map +0 -1
- package/dist/esm/helpers/createMutators.js +0 -70
- package/dist/esm/helpers/createMutators.js.map +0 -6
- package/dist/esm/helpers/createMutators.mjs +0 -66
- package/dist/esm/helpers/createMutators.mjs.map +0 -1
- package/dist/esm/helpers/createMutators.native.js +0 -105
- package/dist/esm/helpers/createMutators.native.js.map +0 -1
- package/dist/esm/helpers/didRunPermissionCheck.js +0 -10
- package/dist/esm/helpers/didRunPermissionCheck.js.map +0 -6
- package/dist/esm/helpers/didRunPermissionCheck.mjs +0 -6
- package/dist/esm/helpers/didRunPermissionCheck.mjs.map +0 -1
- package/dist/esm/helpers/didRunPermissionCheck.native.js +0 -12
- package/dist/esm/helpers/didRunPermissionCheck.native.js.map +0 -1
- package/dist/esm/helpers/ensureLoggedIn.js +0 -10
- package/dist/esm/helpers/ensureLoggedIn.js.map +0 -6
- package/dist/esm/helpers/ensureLoggedIn.mjs +0 -10
- package/dist/esm/helpers/ensureLoggedIn.mjs.map +0 -1
- package/dist/esm/helpers/ensureLoggedIn.native.js +0 -10
- package/dist/esm/helpers/ensureLoggedIn.native.js.map +0 -1
- package/dist/esm/helpers/getQueryOrMutatorAuthData.js +0 -9
- package/dist/esm/helpers/getQueryOrMutatorAuthData.js.map +0 -6
- package/dist/esm/helpers/getQueryOrMutatorAuthData.mjs +0 -7
- package/dist/esm/helpers/getQueryOrMutatorAuthData.mjs.map +0 -1
- package/dist/esm/helpers/getQueryOrMutatorAuthData.native.js +0 -7
- package/dist/esm/helpers/getQueryOrMutatorAuthData.native.js.map +0 -1
- package/dist/esm/helpers/mutatorContext.js +0 -20
- package/dist/esm/helpers/mutatorContext.js.map +0 -6
- package/dist/esm/helpers/mutatorContext.mjs +0 -15
- package/dist/esm/helpers/mutatorContext.mjs.map +0 -1
- package/dist/esm/helpers/mutatorContext.native.js +0 -15
- package/dist/esm/helpers/mutatorContext.native.js.map +0 -1
- package/dist/esm/helpers/prettyFormatZeroQuery.js +0 -76
- package/dist/esm/helpers/prettyFormatZeroQuery.js.map +0 -6
- package/dist/esm/helpers/prettyFormatZeroQuery.mjs +0 -84
- package/dist/esm/helpers/prettyFormatZeroQuery.mjs.map +0 -1
- package/dist/esm/helpers/prettyFormatZeroQuery.native.js +0 -93
- package/dist/esm/helpers/prettyFormatZeroQuery.native.js.map +0 -1
- package/dist/esm/helpers/useZeroDebug.js +0 -35
- package/dist/esm/helpers/useZeroDebug.js.map +0 -6
- package/dist/esm/helpers/useZeroDebug.mjs +0 -45
- package/dist/esm/helpers/useZeroDebug.mjs.map +0 -1
- package/dist/esm/helpers/useZeroDebug.native.js +0 -55
- package/dist/esm/helpers/useZeroDebug.native.js.map +0 -1
- package/dist/esm/index.js +0 -20
- package/dist/esm/index.js.map +0 -6
- package/dist/esm/index.native.js +0 -17
- package/dist/esm/index.native.js.map +0 -1
- package/dist/esm/mutations.js +0 -28
- package/dist/esm/mutations.js.map +0 -6
- package/dist/esm/mutations.mjs +0 -28
- package/dist/esm/mutations.mjs.map +0 -1
- package/dist/esm/mutations.native.js +0 -30
- package/dist/esm/mutations.native.js.map +0 -1
- package/dist/esm/queryRegistry.js +0 -12
- package/dist/esm/queryRegistry.js.map +0 -6
- package/dist/esm/queryRegistry.mjs +0 -9
- package/dist/esm/queryRegistry.mjs.map +0 -1
- package/dist/esm/queryRegistry.native.js +0 -9
- package/dist/esm/queryRegistry.native.js.map +0 -1
- package/dist/esm/resolveQuery.js +0 -24
- package/dist/esm/resolveQuery.js.map +0 -6
- package/dist/esm/resolveQuery.mjs +0 -18
- package/dist/esm/resolveQuery.mjs.map +0 -1
- package/dist/esm/resolveQuery.native.js +0 -20
- package/dist/esm/resolveQuery.native.js.map +0 -1
- package/dist/esm/run.js +0 -22
- package/dist/esm/run.js.map +0 -6
- package/dist/esm/run.mjs +0 -24
- package/dist/esm/run.mjs.map +0 -1
- package/dist/esm/run.native.js +0 -25
- package/dist/esm/run.native.js.map +0 -1
- package/dist/esm/server.js +0 -2
- package/dist/esm/server.js.map +0 -6
- package/dist/esm/server.native.js +0 -2
- package/dist/esm/server.native.js.map +0 -1
- package/dist/esm/serverWhere.js +0 -8
- package/dist/esm/serverWhere.js.map +0 -6
- package/dist/esm/serverWhere.mjs +0 -6
- package/dist/esm/serverWhere.mjs.map +0 -1
- package/dist/esm/serverWhere.native.js +0 -6
- package/dist/esm/serverWhere.native.js.map +0 -1
- package/dist/esm/state.js +0 -21
- package/dist/esm/state.js.map +0 -6
- package/dist/esm/state.mjs +0 -22
- package/dist/esm/state.mjs.map +0 -1
- package/dist/esm/state.native.js +0 -24
- package/dist/esm/state.native.js.map +0 -1
- package/dist/esm/types.js +0 -1
- package/dist/esm/types.js.map +0 -6
- package/dist/esm/types.mjs +0 -2
- package/dist/esm/types.mjs.map +0 -1
- package/dist/esm/types.native.js +0 -2
- package/dist/esm/types.native.js.map +0 -1
- package/dist/esm/where.js +0 -23
- package/dist/esm/where.js.map +0 -6
- package/dist/esm/where.mjs +0 -17
- package/dist/esm/where.mjs.map +0 -1
- package/dist/esm/where.native.js +0 -21
- package/dist/esm/where.native.js.map +0 -1
- package/dist/esm/zeroRunner.js +0 -16
- package/dist/esm/zeroRunner.js.map +0 -6
- package/dist/esm/zeroRunner.mjs +0 -10
- package/dist/esm/zeroRunner.mjs.map +0 -1
- package/dist/esm/zeroRunner.native.js +0 -10
- package/dist/esm/zeroRunner.native.js.map +0 -1
- package/dist/esm/zql.js +0 -10
- package/dist/esm/zql.js.map +0 -6
- package/dist/esm/zql.mjs +0 -8
- package/dist/esm/zql.mjs.map +0 -1
- package/dist/esm/zql.native.js +0 -9
- package/dist/esm/zql.native.js.map +0 -1
- package/types/cli.d.ts +0 -3
- package/types/cli.d.ts.map +0 -1
- package/types/createPermissions.d.ts +0 -10
- package/types/createPermissions.d.ts.map +0 -1
- package/types/createUseQuery.d.ts +0 -20
- package/types/createUseQuery.d.ts.map +0 -1
- package/types/createZeroClient.d.ts +0 -35
- package/types/createZeroClient.d.ts.map +0 -1
- package/types/createZeroServer.d.ts.map +0 -1
- package/types/helpers/batchQuery.d.ts +0 -7
- package/types/helpers/batchQuery.d.ts.map +0 -1
- package/types/helpers/createMutators.d.ts +0 -10
- package/types/helpers/createMutators.d.ts.map +0 -1
- package/types/helpers/didRunPermissionCheck.d.ts +0 -4
- package/types/helpers/didRunPermissionCheck.d.ts.map +0 -1
- package/types/helpers/ensureLoggedIn.d.ts +0 -3
- package/types/helpers/ensureLoggedIn.d.ts.map +0 -1
- package/types/helpers/getQueryOrMutatorAuthData.d.ts +0 -3
- package/types/helpers/getQueryOrMutatorAuthData.d.ts.map +0 -1
- package/types/helpers/mutatorContext.d.ts +0 -5
- package/types/helpers/mutatorContext.d.ts.map +0 -1
- package/types/helpers/prettyFormatZeroQuery.d.ts +0 -3
- package/types/helpers/prettyFormatZeroQuery.d.ts.map +0 -1
- package/types/helpers/useZeroDebug.d.ts +0 -3
- package/types/helpers/useZeroDebug.d.ts.map +0 -1
- package/types/index.d.ts +0 -17
- package/types/index.d.ts.map +0 -1
- package/types/mutations.d.ts +0 -20
- package/types/mutations.d.ts.map +0 -1
- package/types/queryRegistry.d.ts +0 -3
- package/types/queryRegistry.d.ts.map +0 -1
- package/types/resolveQuery.d.ts +0 -11
- package/types/resolveQuery.d.ts.map +0 -1
- package/types/run.d.ts +0 -7
- package/types/run.d.ts.map +0 -1
- package/types/server.d.ts +0 -2
- package/types/server.d.ts.map +0 -1
- package/types/serverWhere.d.ts +0 -5
- package/types/serverWhere.d.ts.map +0 -1
- package/types/state.d.ts +0 -8
- package/types/state.d.ts.map +0 -1
- package/types/types.d.ts +0 -78
- package/types/types.d.ts.map +0 -1
- package/types/where.d.ts +0 -6
- package/types/where.d.ts.map +0 -1
- package/types/zeroRunner.d.ts +0 -6
- package/types/zeroRunner.d.ts.map +0 -1
- package/types/zql.d.ts +0 -3
- package/types/zql.d.ts.map +0 -1
|
@@ -1,77 +0,0 @@
|
|
|
1
|
-
var __defProp = Object.defineProperty;
|
|
2
|
-
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
3
|
-
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
4
|
-
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
5
|
-
var __export = (target, all) => {
|
|
6
|
-
for (var name in all)
|
|
7
|
-
__defProp(target, name, { get: all[name], enumerable: !0 });
|
|
8
|
-
}, __copyProps = (to, from, except, desc) => {
|
|
9
|
-
if (from && typeof from == "object" || typeof from == "function")
|
|
10
|
-
for (let key of __getOwnPropNames(from))
|
|
11
|
-
!__hasOwnProp.call(to, key) && key !== except && __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
12
|
-
return to;
|
|
13
|
-
};
|
|
14
|
-
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: !0 }), mod);
|
|
15
|
-
var createPermissions_exports = {};
|
|
16
|
-
__export(createPermissions_exports, {
|
|
17
|
-
createPermissions: () => createPermissions
|
|
18
|
-
});
|
|
19
|
-
module.exports = __toCommonJS(createPermissions_exports);
|
|
20
|
-
var import_helpers = require("@take-out/helpers"), import_didRunPermissionCheck = require("./helpers/didRunPermissionCheck"), import_mutatorContext = require("./helpers/mutatorContext"), import_prettyFormatZeroQuery = require("./helpers/prettyFormatZeroQuery"), import_state = require("./state"), import_where = require("./where");
|
|
21
|
-
function createPermissions({
|
|
22
|
-
environment,
|
|
23
|
-
schema
|
|
24
|
-
}) {
|
|
25
|
-
function buildPermissionQuery(authData, eb, permissionWhere, objOrId) {
|
|
26
|
-
const tableName = (0, import_where.getWhereTableName)(permissionWhere);
|
|
27
|
-
if (!tableName)
|
|
28
|
-
throw new Error("Must use PermissionWhere for buildPermissionQuery");
|
|
29
|
-
const tableSchema = schema.tables[tableName];
|
|
30
|
-
if (!tableSchema)
|
|
31
|
-
throw new Error("No schema?");
|
|
32
|
-
const primaryKeys = tableSchema.primaryKey, permissionReturn = permissionWhere(eb, authData);
|
|
33
|
-
if (permissionReturn == null)
|
|
34
|
-
throw new Error(`No permission defined for ${tableName}`);
|
|
35
|
-
if (permissionReturn === !0)
|
|
36
|
-
return eb.cmpLit(!0, "=", !0);
|
|
37
|
-
if (permissionReturn === !1)
|
|
38
|
-
return eb.cmpLit(!0, "=", !1);
|
|
39
|
-
const primaryKeyWheres = [];
|
|
40
|
-
for (const key of primaryKeys) {
|
|
41
|
-
const value = typeof objOrId == "string" ? objOrId : objOrId[key];
|
|
42
|
-
primaryKeyWheres.push(eb.cmp(key, value));
|
|
43
|
-
}
|
|
44
|
-
return eb.and(permissionReturn, ...primaryKeyWheres);
|
|
45
|
-
}
|
|
46
|
-
const can = async (where, obj) => {
|
|
47
|
-
if (environment === "server") {
|
|
48
|
-
const ctx = (0, import_mutatorContext.mutatorContext)(), tableName = (0, import_where.getWhereTableName)(where);
|
|
49
|
-
if (!tableName)
|
|
50
|
-
throw new Error("Must use where('table') style where to pass to can()");
|
|
51
|
-
await ensurePermission(ctx.tx, ctx.authData, tableName, where, obj), (0, import_didRunPermissionCheck.setDidRunPermissionCheck)(ctx);
|
|
52
|
-
}
|
|
53
|
-
};
|
|
54
|
-
async function ensurePermission(tx, authData, tableName, where, obj) {
|
|
55
|
-
if (authData?.role === "admin")
|
|
56
|
-
return;
|
|
57
|
-
const queryBase = (0, import_state.getZQL)()[tableName];
|
|
58
|
-
let query = null;
|
|
59
|
-
try {
|
|
60
|
-
query = queryBase.where((eb) => buildPermissionQuery(authData, eb, where, obj)).one(), (0, import_helpers.ensure)(await tx.run(query));
|
|
61
|
-
} catch (err) {
|
|
62
|
-
const errorTitle = `${tableName} with auth id: ${authData?.id}`;
|
|
63
|
-
if (err instanceof import_helpers.EnsureError) {
|
|
64
|
-
let msg = `[permission] \u{1F6AB} Not Allowed: ${errorTitle}`;
|
|
65
|
-
throw process.env.NODE_ENV === "development" && query && (msg += `
|
|
66
|
-
${(0, import_prettyFormatZeroQuery.prettyFormatZeroQuery)(query)}`), new Error(msg);
|
|
67
|
-
}
|
|
68
|
-
throw new Error(`Error running permission ${errorTitle}
|
|
69
|
-
${err}`);
|
|
70
|
-
}
|
|
71
|
-
}
|
|
72
|
-
return {
|
|
73
|
-
can,
|
|
74
|
-
buildPermissionQuery
|
|
75
|
-
};
|
|
76
|
-
}
|
|
77
|
-
//# sourceMappingURL=createPermissions.js.map
|
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../../src/createPermissions.ts"],
|
|
4
|
-
"mappings": ";;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,qBAAoC,8BAEpC,+BAAyC,4CACzC,wBAA+B,qCAC/B,+BAAsC,4CACtC,eAAuB,oBACvB,eAAkC;AAU3B,SAAS,kBAA6C;AAAA,EAC3D;AAAA,EACA;AACF,GAGG;AAQD,WAAS,qBACP,UACA,IACA,iBAEA,SACA;AACA,UAAM,gBAAY,gCAAkB,eAAe;AAEnD,QAAI,CAAC;AACH,YAAM,IAAI,MAAM,mDAAmD;AAGrE,UAAM,cAAc,OAAO,OAAO,SAAS;AAE3C,QAAI,CAAC;AACH,YAAM,IAAI,MAAM,YAAY;AAG9B,UAAM,cAAc,YAAY,YAC1B,mBAAmB,gBAAgB,IAAI,QAAQ;AAErD,QAAI,oBAAoB;AACtB,YAAM,IAAI,MAAM,6BAA6B,SAAS,EAAE;AAG1D,QAAI,qBAAqB;AACvB,aAAO,GAAG,OAAO,IAAM,KAAK,EAAI;AAGlC,QAAI,qBAAqB;AACvB,aAAO,GAAG,OAAO,IAAM,KAAK,EAAK;AAGnC,UAAM,mBAAgC,CAAC;AAEvC,eAAW,OAAO,aAAa;AAC7B,YAAM,QAAQ,OAAO,WAAY,WAAW,UAAU,QAAQ,GAAG;AACjE,uBAAiB,KAAK,GAAG,IAAI,KAAY,KAAK,CAAC;AAAA,IACjD;AAEA,WAAO,GAAG,IAAI,kBAAkB,GAAG,gBAAgB;AAAA,EACrD;AAEA,QAAM,MAAW,OAAO,OAAO,QAAQ;AAErC,QAAI,gBAAgB,UAAU;AAC5B,YAAM,UAAM,sCAAe,GACrB,gBAAY,gCAAkB,KAAK;AACzC,UAAI,CAAC;AACH,cAAM,IAAI,MAAM,sDAAsD;AAExE,YAAM,iBAAiB,IAAI,IAAI,IAAI,UAAU,WAAW,OAAO,GAAG,OAClE,uDAAyB,GAAG;AAAA,IAC9B;AAAA,EACF;AAEA,iBAAe,iBACb,IACA,UACA,WACA,OACA,KACe;AACf,QAAI,UAAU,SAAS;AAErB;AAIF,UAAM,gBADa,qBAAO,EACG,SAAS;AACtC,QAAI,QAAqC;AAEzC,QAAI;AACF,cAAQ,UACL,MAAM,CAAC,OACC,qBAAqB,UAAU,IAAI,OAAO,GAAG,CACrD,EACA,IAAI,OAEP,uBAAO,MAAM,GAAG,IAAI,KAAK,CAAC;AAAA,IAC5B,SAAS,KAAK;AACZ,YAAM,aAAa,GAAG,SAAS,kBAAkB,UAAU,EAAE;AAE7D,UAAI,eAAe,4BAAa;AAC9B,YAAI,MAAM,uCAAgC,UAAU;AACpD,cAAI,QAAQ,IAAI,aAAa,iBAAiB,UAC5C,OAAO;AAAA,OAAM,oDAAsB,KAAK,CAAC,KAErC,IAAI,MAAM,GAAG;AAAA,MACrB;AAEA,YAAM,IAAI,MAAM,4BAA4B,UAAU;AAAA,EAAK,GAAG,EAAE;AAAA,IAClE;AAAA,EACF;AAEA,SAAO;AAAA,IACL;AAAA,IACA;AAAA,EACF;AACF;",
|
|
5
|
-
"names": []
|
|
6
|
-
}
|
|
@@ -1,107 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
var __defProp = Object.defineProperty;
|
|
4
|
-
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
5
|
-
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
6
|
-
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
7
|
-
var __export = (target, all) => {
|
|
8
|
-
for (var name in all) __defProp(target, name, {
|
|
9
|
-
get: all[name],
|
|
10
|
-
enumerable: !0
|
|
11
|
-
});
|
|
12
|
-
},
|
|
13
|
-
__copyProps = (to, from, except, desc) => {
|
|
14
|
-
if (from && typeof from == "object" || typeof from == "function") for (let key of __getOwnPropNames(from)) !__hasOwnProp.call(to, key) && key !== except && __defProp(to, key, {
|
|
15
|
-
get: () => from[key],
|
|
16
|
-
enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
|
|
17
|
-
});
|
|
18
|
-
return to;
|
|
19
|
-
};
|
|
20
|
-
var __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
|
|
21
|
-
value: !0
|
|
22
|
-
}), mod);
|
|
23
|
-
var createPermissions_exports = {};
|
|
24
|
-
__export(createPermissions_exports, {
|
|
25
|
-
createPermissions: () => createPermissions
|
|
26
|
-
});
|
|
27
|
-
module.exports = __toCommonJS(createPermissions_exports);
|
|
28
|
-
var import_helpers = require("@take-out/helpers"),
|
|
29
|
-
import_didRunPermissionCheck = require("./helpers/didRunPermissionCheck.native.js"),
|
|
30
|
-
import_mutatorContext = require("./helpers/mutatorContext.native.js"),
|
|
31
|
-
import_prettyFormatZeroQuery = require("./helpers/prettyFormatZeroQuery.native.js"),
|
|
32
|
-
import_state = require("./state.native.js"),
|
|
33
|
-
import_where = require("./where.native.js");
|
|
34
|
-
function _instanceof(left, right) {
|
|
35
|
-
return right != null && typeof Symbol < "u" && right[Symbol.hasInstance] ? !!right[Symbol.hasInstance](left) : left instanceof right;
|
|
36
|
-
}
|
|
37
|
-
function createPermissions(param) {
|
|
38
|
-
var {
|
|
39
|
-
environment,
|
|
40
|
-
schema
|
|
41
|
-
} = param;
|
|
42
|
-
function buildPermissionQuery(authData, eb, permissionWhere, objOrId) {
|
|
43
|
-
var tableName = (0, import_where.getWhereTableName)(permissionWhere);
|
|
44
|
-
if (!tableName) throw new Error("Must use PermissionWhere for buildPermissionQuery");
|
|
45
|
-
var tableSchema = schema.tables[tableName];
|
|
46
|
-
if (!tableSchema) throw new Error("No schema?");
|
|
47
|
-
var primaryKeys = tableSchema.primaryKey,
|
|
48
|
-
permissionReturn = permissionWhere(eb, authData);
|
|
49
|
-
if (permissionReturn == null) throw new Error(`No permission defined for ${tableName}`);
|
|
50
|
-
if (permissionReturn === !0) return eb.cmpLit(!0, "=", !0);
|
|
51
|
-
if (permissionReturn === !1) return eb.cmpLit(!0, "=", !1);
|
|
52
|
-
var primaryKeyWheres = [],
|
|
53
|
-
_iteratorNormalCompletion = !0,
|
|
54
|
-
_didIteratorError = !1,
|
|
55
|
-
_iteratorError = void 0;
|
|
56
|
-
try {
|
|
57
|
-
for (var _iterator = primaryKeys[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = !0) {
|
|
58
|
-
var key = _step.value,
|
|
59
|
-
value = typeof objOrId == "string" ? objOrId : objOrId[key];
|
|
60
|
-
primaryKeyWheres.push(eb.cmp(key, value));
|
|
61
|
-
}
|
|
62
|
-
} catch (err) {
|
|
63
|
-
_didIteratorError = !0, _iteratorError = err;
|
|
64
|
-
} finally {
|
|
65
|
-
try {
|
|
66
|
-
!_iteratorNormalCompletion && _iterator.return != null && _iterator.return();
|
|
67
|
-
} finally {
|
|
68
|
-
if (_didIteratorError) throw _iteratorError;
|
|
69
|
-
}
|
|
70
|
-
}
|
|
71
|
-
return eb.and(permissionReturn, ...primaryKeyWheres);
|
|
72
|
-
}
|
|
73
|
-
var can = async function (where, obj) {
|
|
74
|
-
if (environment === "server") {
|
|
75
|
-
var ctx = (0, import_mutatorContext.mutatorContext)(),
|
|
76
|
-
tableName = (0, import_where.getWhereTableName)(where);
|
|
77
|
-
if (!tableName) throw new Error("Must use where('table') style where to pass to can()");
|
|
78
|
-
await ensurePermission(ctx.tx, ctx.authData, tableName, where, obj), (0, import_didRunPermissionCheck.setDidRunPermissionCheck)(ctx);
|
|
79
|
-
}
|
|
80
|
-
};
|
|
81
|
-
async function ensurePermission(tx, authData, tableName, where, obj) {
|
|
82
|
-
if (authData?.role !== "admin") {
|
|
83
|
-
var zqlBuilder = (0, import_state.getZQL)(),
|
|
84
|
-
queryBase = zqlBuilder[tableName],
|
|
85
|
-
query = null;
|
|
86
|
-
try {
|
|
87
|
-
query = queryBase.where(function (eb) {
|
|
88
|
-
return buildPermissionQuery(authData, eb, where, obj);
|
|
89
|
-
}).one(), (0, import_helpers.ensure)(await tx.run(query));
|
|
90
|
-
} catch (err) {
|
|
91
|
-
var errorTitle = `${tableName} with auth id: ${authData?.id}`;
|
|
92
|
-
if (_instanceof(err, import_helpers.EnsureError)) {
|
|
93
|
-
var msg = `[permission] \u{1F6AB} Not Allowed: ${errorTitle}`;
|
|
94
|
-
throw process.env.NODE_ENV === "development" && query && (msg += `
|
|
95
|
-
${(0, import_prettyFormatZeroQuery.prettyFormatZeroQuery)(query)}`), new Error(msg);
|
|
96
|
-
}
|
|
97
|
-
throw new Error(`Error running permission ${errorTitle}
|
|
98
|
-
${err}`);
|
|
99
|
-
}
|
|
100
|
-
}
|
|
101
|
-
}
|
|
102
|
-
return {
|
|
103
|
-
can,
|
|
104
|
-
buildPermissionQuery
|
|
105
|
-
};
|
|
106
|
-
}
|
|
107
|
-
//# sourceMappingURL=createPermissions.native.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"names":["__toCommonJS","mod","__copyProps","__defProp","value","createPermissions_exports","__export","createPermissions","module","exports","import_helpers","require","import_didRunPermissionCheck","import_mutatorContext","import_prettyFormatZeroQuery","import_state","import_where","_instanceof","left","right","Symbol","hasInstance","param","environment","schema","buildPermissionQuery","authData","eb","permissionWhere","objOrId","tableName","getWhereTableName","Error","tableSchema","tables","primaryKeys","primaryKey","permissionReturn","cmpLit","primaryKeyWheres","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_iterator","iterator","_step","next","done","key","push","cmp","err","return","and","can","where","obj","ctx","mutatorContext","ensurePermission","tx","setDidRunPermissionCheck","role","zqlBuilder","getZQL","queryBase","query","one","ensure","run","errorTitle","id","EnsureError"],"sources":["../../src/createPermissions.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -1,59 +0,0 @@
|
|
|
1
|
-
var __defProp = Object.defineProperty;
|
|
2
|
-
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
3
|
-
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
4
|
-
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
5
|
-
var __export = (target, all) => {
|
|
6
|
-
for (var name in all) __defProp(target, name, {
|
|
7
|
-
get: all[name],
|
|
8
|
-
enumerable: !0
|
|
9
|
-
});
|
|
10
|
-
},
|
|
11
|
-
__copyProps = (to, from, except, desc) => {
|
|
12
|
-
if (from && typeof from == "object" || typeof from == "function") for (let key of __getOwnPropNames(from)) !__hasOwnProp.call(to, key) && key !== except && __defProp(to, key, {
|
|
13
|
-
get: () => from[key],
|
|
14
|
-
enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
|
|
15
|
-
});
|
|
16
|
-
return to;
|
|
17
|
-
};
|
|
18
|
-
var __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
|
|
19
|
-
value: !0
|
|
20
|
-
}), mod);
|
|
21
|
-
var createUseQuery_exports = {};
|
|
22
|
-
__export(createUseQuery_exports, {
|
|
23
|
-
createUseQuery: () => createUseQuery
|
|
24
|
-
});
|
|
25
|
-
module.exports = __toCommonJS(createUseQuery_exports);
|
|
26
|
-
var import_react = require("@rocicorp/zero/react"),
|
|
27
|
-
import_react2 = require("react"),
|
|
28
|
-
import_useZeroDebug = require("./helpers/useZeroDebug.cjs"),
|
|
29
|
-
import_resolveQuery = require("./resolveQuery.cjs");
|
|
30
|
-
function createUseQuery({
|
|
31
|
-
DisabledContext,
|
|
32
|
-
customQueries
|
|
33
|
-
}) {
|
|
34
|
-
function useQuery(...args) {
|
|
35
|
-
const disabled = (0, import_react2.use)(DisabledContext),
|
|
36
|
-
[fn, paramsOrOptions, optionsArg] = args,
|
|
37
|
-
{
|
|
38
|
-
queryRequest,
|
|
39
|
-
options
|
|
40
|
-
} = (0, import_react2.useMemo)(() => {
|
|
41
|
-
const hasParams = optionsArg !== void 0 || paramsOrOptions && typeof paramsOrOptions == "object" && !("enabled" in paramsOrOptions) && !("ttl" in paramsOrOptions),
|
|
42
|
-
params = hasParams ? paramsOrOptions : void 0,
|
|
43
|
-
opts = hasParams ? optionsArg : paramsOrOptions;
|
|
44
|
-
return {
|
|
45
|
-
queryRequest: (0, import_resolveQuery.resolveQuery)({
|
|
46
|
-
customQueries,
|
|
47
|
-
fn,
|
|
48
|
-
params
|
|
49
|
-
}),
|
|
50
|
-
options: opts
|
|
51
|
-
};
|
|
52
|
-
}, [fn, paramsOrOptions, optionsArg]),
|
|
53
|
-
out = (0, import_react.useQuery)(queryRequest, options);
|
|
54
|
-
return process.env.NODE_ENV === "development" && (0, import_useZeroDebug.useZeroDebug)(queryRequest, options, out), disabled ? [null, {
|
|
55
|
-
type: "unknown"
|
|
56
|
-
}] : out;
|
|
57
|
-
}
|
|
58
|
-
return useQuery;
|
|
59
|
-
}
|
|
@@ -1,34 +0,0 @@
|
|
|
1
|
-
var __defProp = Object.defineProperty;
|
|
2
|
-
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
3
|
-
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
4
|
-
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
5
|
-
var __export = (target, all) => {
|
|
6
|
-
for (var name in all)
|
|
7
|
-
__defProp(target, name, { get: all[name], enumerable: !0 });
|
|
8
|
-
}, __copyProps = (to, from, except, desc) => {
|
|
9
|
-
if (from && typeof from == "object" || typeof from == "function")
|
|
10
|
-
for (let key of __getOwnPropNames(from))
|
|
11
|
-
!__hasOwnProp.call(to, key) && key !== except && __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
12
|
-
return to;
|
|
13
|
-
};
|
|
14
|
-
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: !0 }), mod);
|
|
15
|
-
var createUseQuery_exports = {};
|
|
16
|
-
__export(createUseQuery_exports, {
|
|
17
|
-
createUseQuery: () => createUseQuery
|
|
18
|
-
});
|
|
19
|
-
module.exports = __toCommonJS(createUseQuery_exports);
|
|
20
|
-
var import_react = require("@rocicorp/zero/react"), import_react2 = require("react"), import_useZeroDebug = require("./helpers/useZeroDebug"), import_resolveQuery = require("./resolveQuery");
|
|
21
|
-
function createUseQuery({
|
|
22
|
-
DisabledContext,
|
|
23
|
-
customQueries
|
|
24
|
-
}) {
|
|
25
|
-
function useQuery(...args) {
|
|
26
|
-
const disabled = (0, import_react2.use)(DisabledContext), [fn, paramsOrOptions, optionsArg] = args, { queryRequest, options } = (0, import_react2.useMemo)(() => {
|
|
27
|
-
const hasParams = optionsArg !== void 0 || paramsOrOptions && typeof paramsOrOptions == "object" && !("enabled" in paramsOrOptions) && !("ttl" in paramsOrOptions), params = hasParams ? paramsOrOptions : void 0, opts = hasParams ? optionsArg : paramsOrOptions;
|
|
28
|
-
return { queryRequest: (0, import_resolveQuery.resolveQuery)({ customQueries, fn, params }), options: opts };
|
|
29
|
-
}, [fn, paramsOrOptions, optionsArg]), out = (0, import_react.useQuery)(queryRequest, options);
|
|
30
|
-
return process.env.NODE_ENV === "development" && (0, import_useZeroDebug.useZeroDebug)(queryRequest, options, out), disabled ? [null, { type: "unknown" }] : out;
|
|
31
|
-
}
|
|
32
|
-
return useQuery;
|
|
33
|
-
}
|
|
34
|
-
//# sourceMappingURL=createUseQuery.js.map
|
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../../src/createUseQuery.tsx"],
|
|
4
|
-
"mappings": ";;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,mBAAyC,iCACzCA,gBAA2C,kBAE3C,sBAA6B,mCAC7B,sBAAgD;AAkCzC,SAAS,eAA0C;AAAA,EACxD;AAAA,EACA;AACF,GAGyB;AACvB,WAAS,YAAY,MAAkB;AACrC,UAAM,eAAW,mBAAI,eAAe,GAC9B,CAAC,IAAI,iBAAiB,UAAU,IAAI,MAEpC,EAAE,cAAc,QAAQ,QAAI,uBAAQ,MAAM;AAE9C,YAAM,YACJ,eAAe,UACd,mBACC,OAAO,mBAAoB,YAC3B,EAAE,aAAa,oBACf,EAAE,SAAS,kBAET,SAAS,YAAY,kBAAkB,QACvC,OAAO,YAAY,aAAa;AAItC,aAAO,EAAE,kBAFY,kCAAa,EAAE,eAAe,IAAI,OAAO,CAAC,GAExC,SAAS,KAAK;AAAA,IACvC,GAAG,CAAC,IAAI,iBAAiB,UAAU,CAAC,GAE9B,UAAM,aAAAC,UAAa,cAAqB,OAAO;AAOrD,WALI,QAAQ,IAAI,aAAa,qBAE3B,kCAAa,cAAqB,SAAS,GAAG,GAG5C,WACK,CAAC,MAAM,EAAE,MAAM,UAAU,CAAC,IAG5B;AAAA,EACT;AAEA,SAAO;AACT;",
|
|
5
|
-
"names": ["import_react", "zeroUseQuery"]
|
|
6
|
-
}
|
|
@@ -1,70 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
var __defProp = Object.defineProperty;
|
|
4
|
-
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
5
|
-
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
6
|
-
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
7
|
-
var __export = (target, all) => {
|
|
8
|
-
for (var name in all) __defProp(target, name, {
|
|
9
|
-
get: all[name],
|
|
10
|
-
enumerable: !0
|
|
11
|
-
});
|
|
12
|
-
},
|
|
13
|
-
__copyProps = (to, from, except, desc) => {
|
|
14
|
-
if (from && typeof from == "object" || typeof from == "function") for (let key of __getOwnPropNames(from)) !__hasOwnProp.call(to, key) && key !== except && __defProp(to, key, {
|
|
15
|
-
get: () => from[key],
|
|
16
|
-
enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
|
|
17
|
-
});
|
|
18
|
-
return to;
|
|
19
|
-
};
|
|
20
|
-
var __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
|
|
21
|
-
value: !0
|
|
22
|
-
}), mod);
|
|
23
|
-
var createUseQuery_exports = {};
|
|
24
|
-
__export(createUseQuery_exports, {
|
|
25
|
-
createUseQuery: () => createUseQuery
|
|
26
|
-
});
|
|
27
|
-
module.exports = __toCommonJS(createUseQuery_exports);
|
|
28
|
-
var import_react = require("@rocicorp/zero/react"),
|
|
29
|
-
import_react2 = require("react"),
|
|
30
|
-
import_useZeroDebug = require("./helpers/useZeroDebug.native.js"),
|
|
31
|
-
import_resolveQuery = require("./resolveQuery.native.js");
|
|
32
|
-
function _type_of(obj) {
|
|
33
|
-
"@swc/helpers - typeof";
|
|
34
|
-
|
|
35
|
-
return obj && typeof Symbol < "u" && obj.constructor === Symbol ? "symbol" : typeof obj;
|
|
36
|
-
}
|
|
37
|
-
function createUseQuery(param) {
|
|
38
|
-
var {
|
|
39
|
-
DisabledContext,
|
|
40
|
-
customQueries
|
|
41
|
-
} = param;
|
|
42
|
-
function useQuery() {
|
|
43
|
-
for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) args[_key] = arguments[_key];
|
|
44
|
-
var disabled = (0, import_react2.use)(DisabledContext),
|
|
45
|
-
[fn, paramsOrOptions, optionsArg] = args,
|
|
46
|
-
{
|
|
47
|
-
queryRequest,
|
|
48
|
-
options
|
|
49
|
-
} = (0, import_react2.useMemo)(function () {
|
|
50
|
-
var hasParams = optionsArg !== void 0 || paramsOrOptions && (typeof paramsOrOptions > "u" ? "undefined" : _type_of(paramsOrOptions)) === "object" && !("enabled" in paramsOrOptions) && !("ttl" in paramsOrOptions),
|
|
51
|
-
params = hasParams ? paramsOrOptions : void 0,
|
|
52
|
-
opts = hasParams ? optionsArg : paramsOrOptions,
|
|
53
|
-
queryRequest2 = (0, import_resolveQuery.resolveQuery)({
|
|
54
|
-
customQueries,
|
|
55
|
-
fn,
|
|
56
|
-
params
|
|
57
|
-
});
|
|
58
|
-
return {
|
|
59
|
-
queryRequest: queryRequest2,
|
|
60
|
-
options: opts
|
|
61
|
-
};
|
|
62
|
-
}, [fn, paramsOrOptions, optionsArg]),
|
|
63
|
-
out = (0, import_react.useQuery)(queryRequest, options);
|
|
64
|
-
return process.env.NODE_ENV === "development" && (0, import_useZeroDebug.useZeroDebug)(queryRequest, options, out), disabled ? [null, {
|
|
65
|
-
type: "unknown"
|
|
66
|
-
}] : out;
|
|
67
|
-
}
|
|
68
|
-
return useQuery;
|
|
69
|
-
}
|
|
70
|
-
//# sourceMappingURL=createUseQuery.native.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"names":["__toCommonJS","mod","__copyProps","__defProp","value","createUseQuery_exports","__export","createUseQuery","module","exports","import_react","require","import_react2","import_useZeroDebug","import_resolveQuery","_type_of","obj","Symbol","constructor","param","DisabledContext","customQueries","useQuery","_len","arguments","length","args","Array","_key","disabled","use","fn","paramsOrOptions","optionsArg","queryRequest","options","useMemo","hasParams","params","opts","queryRequest2","resolveQuery"],"sources":["../../src/createUseQuery.tsx"],"sourcesContent":[null],"mappings":";;;;;;;;;;;;;;;;;;;AAAA,IAAAA,YAAA,GAAAC,GAAA,IAAAC,WAAA,CAAAC,SAAA;EAAAC,KAAA;AAAA,IAAAH,GAAA;AAAA,IAAAI,sBAAA;AAAAC,QAAA,CAAAD,sBAAA;EAAAE,cAAA,EAAAA,CAAA,KAAAA;AAAA;AAAAC,MAAA,CAAAC,OAAA,GAAAT,YAAyC,CAAAK,sBACzC;AAqCO,IAAAK,YAAS,GAAAC,OAA0C;EAAAC,aAAA,GAAAD,OAAA;EAAAE,mBAAA,GAAAF,OAAA;EAAAG,mBAAA,GAAAH,OAAA;AAAA,SACxDI,SAAAC,GAAA;EACA;;EACF,OAGyBA,GAAA,WAAAC,MAAA,UAAAD,GAAA,CAAAE,WAAA,KAAAD,MAAA,qBAAAD,GAAA;AACvB;AACE,SAAAT,cAAMA,CAAAY,KAAW;EAKf;IAAAC,eAAM;IACJC;EAAe,IAAAF,KAAA;EAWjB,SAAAG,QAASA,CAAA;IACX,KAAI,IAAIC,IAAA,GAAAC,SAAiB,CAAAC,MAAA,EAAAC,IAAW,GAE9B,IAAAC,KAAM,CAAAJ,IAAA,GAAAK,IAAA,MAAAA,IAAa,GAAAL,IAAA,EAAAK,IAAA,EAAqB,EAO9CF,IAAA,CALIE,IAAA,IAAQJ,SAAI,CAAAI,IAAA;IAUlB,IAAAC,QAAA,OAAAjB,aAAA,CAAAkB,GAAA,EAAAV,eAAA;MAAA,CAAAW,EAAA,EAAAC,eAAA,EAAAC,UAAA,IAAAP,IAAA;MAAA;QAAAQ,YAAA;QAAAC;MAAA,QAAAvB,aAAA,CAAAwB,OAAA;QAEA,IAAOC,SAAA,GAAAJ,UAAA,eAAAD,eAAA,YAAAA,eAAA,uBAAAjB,QAAA,CAAAiB,eAAA,kCAAAA,eAAA,gBAAAA,eAAA;UAAAM,MAAA,GAAAD,SAAA,GAAAL,eAAA;UAAAO,IAAA,GAAAF,SAAA,GAAAJ,UAAA,GAAAD,eAAA;UAAAQ,aAAA,OAAA1B,mBAAA,CAAA2B,YAAA;YACTpB,aAAA","ignoreList":[]}
|
|
@@ -1,162 +0,0 @@
|
|
|
1
|
-
var __defProp = Object.defineProperty;
|
|
2
|
-
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
3
|
-
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
4
|
-
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
5
|
-
var __export = (target, all) => {
|
|
6
|
-
for (var name in all) __defProp(target, name, {
|
|
7
|
-
get: all[name],
|
|
8
|
-
enumerable: !0
|
|
9
|
-
});
|
|
10
|
-
},
|
|
11
|
-
__copyProps = (to, from, except, desc) => {
|
|
12
|
-
if (from && typeof from == "object" || typeof from == "function") for (let key of __getOwnPropNames(from)) !__hasOwnProp.call(to, key) && key !== except && __defProp(to, key, {
|
|
13
|
-
get: () => from[key],
|
|
14
|
-
enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
|
|
15
|
-
});
|
|
16
|
-
return to;
|
|
17
|
-
};
|
|
18
|
-
var __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
|
|
19
|
-
value: !0
|
|
20
|
-
}), mod);
|
|
21
|
-
var createZeroClient_exports = {};
|
|
22
|
-
__export(createZeroClient_exports, {
|
|
23
|
-
createZeroClient: () => createZeroClient
|
|
24
|
-
});
|
|
25
|
-
module.exports = __toCommonJS(createZeroClient_exports);
|
|
26
|
-
var import_zero = require("@rocicorp/zero"),
|
|
27
|
-
import_react = require("@rocicorp/zero/react"),
|
|
28
|
-
import_helpers = require("@take-out/helpers"),
|
|
29
|
-
import_react2 = require("react"),
|
|
30
|
-
import_createPermissions = require("./createPermissions.cjs"),
|
|
31
|
-
import_createUseQuery = require("./createUseQuery.cjs"),
|
|
32
|
-
import_createMutators = require("./helpers/createMutators.cjs"),
|
|
33
|
-
import_prettyFormatZeroQuery = require("./helpers/prettyFormatZeroQuery.cjs"),
|
|
34
|
-
import_queryRegistry = require("./queryRegistry.cjs"),
|
|
35
|
-
import_resolveQuery = require("./resolveQuery.cjs"),
|
|
36
|
-
import_run = require("./run.cjs"),
|
|
37
|
-
import_state = require("./state.cjs"),
|
|
38
|
-
import_zeroRunner = require("./zeroRunner.cjs"),
|
|
39
|
-
import_jsx_runtime = require("react/jsx-runtime");
|
|
40
|
-
function createZeroClient({
|
|
41
|
-
schema,
|
|
42
|
-
models,
|
|
43
|
-
groupedQueries
|
|
44
|
-
}) {
|
|
45
|
-
(0, import_state.setSchema)(schema);
|
|
46
|
-
const wrappedNamespaces = {};
|
|
47
|
-
for (const [namespace, queries] of Object.entries(groupedQueries)) {
|
|
48
|
-
wrappedNamespaces[namespace] = {};
|
|
49
|
-
for (const [name, fn] of Object.entries(queries)) (0, import_queryRegistry.registerQuery)(fn, `${namespace}.${name}`), wrappedNamespaces[namespace][name] = (0, import_zero.defineQuery)(({
|
|
50
|
-
args
|
|
51
|
-
}) => fn(args));
|
|
52
|
-
}
|
|
53
|
-
const customQueries = (0, import_zero.defineQueries)(wrappedNamespaces);
|
|
54
|
-
(0, import_run.setCustomQueries)(customQueries);
|
|
55
|
-
const DisabledContext = (0, import_react2.createContext)(!1),
|
|
56
|
-
modelWritePermissions = (0, import_helpers.mapObject)(models, val => val.permissions);
|
|
57
|
-
let latestZeroInstance = null;
|
|
58
|
-
const zero = new Proxy({}, {
|
|
59
|
-
get(_, key) {
|
|
60
|
-
if (latestZeroInstance === null) throw new Error("Zero instance not initialized. Ensure ZeroProvider is mounted before accessing 'zero'.");
|
|
61
|
-
return Reflect.get(latestZeroInstance, key, latestZeroInstance);
|
|
62
|
-
}
|
|
63
|
-
}),
|
|
64
|
-
permissionsHelpers = (0, import_createPermissions.createPermissions)({
|
|
65
|
-
schema,
|
|
66
|
-
environment: "client"
|
|
67
|
-
}),
|
|
68
|
-
zeroEvents = (0, import_helpers.createEmitter)("zero", null),
|
|
69
|
-
AuthDataContext = (0, import_react2.createContext)({}),
|
|
70
|
-
useAuthData = () => (0, import_react2.use)(AuthDataContext),
|
|
71
|
-
useQuery = (0, import_createUseQuery.createUseQuery)({
|
|
72
|
-
DisabledContext,
|
|
73
|
-
customQueries
|
|
74
|
-
});
|
|
75
|
-
function usePermission(table, objOrId, enabled = typeof objOrId < "u", debug = !1) {
|
|
76
|
-
const disabled = (0, import_react2.use)(DisabledContext),
|
|
77
|
-
authData = useAuthData(),
|
|
78
|
-
permission = modelWritePermissions[table],
|
|
79
|
-
query = (() => {
|
|
80
|
-
let baseQuery = zero.query[table].one();
|
|
81
|
-
return disabled || !enabled || !permission ? baseQuery : baseQuery.where(eb => permissionsHelpers.buildPermissionQuery(authData, eb, permission, objOrId));
|
|
82
|
-
})(),
|
|
83
|
-
[data, status] = (0, import_react.useQuery)(query, {
|
|
84
|
-
enabled: !!(enabled && permission && authData && objOrId)
|
|
85
|
-
});
|
|
86
|
-
debug && console.info("usePermission()", {
|
|
87
|
-
data,
|
|
88
|
-
status,
|
|
89
|
-
authData,
|
|
90
|
-
permission
|
|
91
|
-
}, (0, import_prettyFormatZeroQuery.prettyFormatZeroQuery)(query));
|
|
92
|
-
const allowed = !!data;
|
|
93
|
-
return objOrId ? allowed : !1;
|
|
94
|
-
}
|
|
95
|
-
const ProvideZero = ({
|
|
96
|
-
children,
|
|
97
|
-
authData: authDataIn,
|
|
98
|
-
disable,
|
|
99
|
-
...props
|
|
100
|
-
}) => {
|
|
101
|
-
const authData = authDataIn ?? null,
|
|
102
|
-
mutators = (0, import_react2.useMemo)(() => ((0, import_state.setAuthData)(authData), (0, import_createMutators.createMutators)({
|
|
103
|
-
models,
|
|
104
|
-
environment: "client",
|
|
105
|
-
authData,
|
|
106
|
-
can: permissionsHelpers.can
|
|
107
|
-
})), [authData]);
|
|
108
|
-
return disable ? children : /* @__PURE__ */(0, import_jsx_runtime.jsx)(AuthDataContext.Provider, {
|
|
109
|
-
value: authData,
|
|
110
|
-
children: /* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_react.ZeroProvider, {
|
|
111
|
-
schema,
|
|
112
|
-
kvStore: "mem",
|
|
113
|
-
mutators,
|
|
114
|
-
...props,
|
|
115
|
-
children: [/* @__PURE__ */(0, import_jsx_runtime.jsx)(SetZeroInstance, {}), /* @__PURE__ */(0, import_jsx_runtime.jsx)(ConnectionMonitor, {
|
|
116
|
-
zeroEvents
|
|
117
|
-
}), children]
|
|
118
|
-
})
|
|
119
|
-
});
|
|
120
|
-
},
|
|
121
|
-
SetZeroInstance = () => {
|
|
122
|
-
const zeroInstance = (0, import_react.useZero)();
|
|
123
|
-
return zeroInstance !== latestZeroInstance && (latestZeroInstance = zeroInstance, (0, import_zeroRunner.setRunner)((query, options) => zeroInstance.run(query, options))), null;
|
|
124
|
-
},
|
|
125
|
-
ConnectionMonitor = (0, import_react2.memo)(({
|
|
126
|
-
zeroEvents: zeroEvents2
|
|
127
|
-
}) => {
|
|
128
|
-
const state = (0, import_react.useConnectionState)(),
|
|
129
|
-
prevState = (0, import_react2.useRef)(state.name);
|
|
130
|
-
return (0, import_react2.useEffect)(() => {
|
|
131
|
-
if (state.name !== prevState.current) {
|
|
132
|
-
const reason = "reason" in state ? state.reason : "";
|
|
133
|
-
if (prevState.current = state.name, state.name === "error" || state.name === "needs-auth") {
|
|
134
|
-
const message = typeof reason == "string" ? reason : state.name;
|
|
135
|
-
zeroEvents2.emit({
|
|
136
|
-
type: "error",
|
|
137
|
-
message
|
|
138
|
-
});
|
|
139
|
-
}
|
|
140
|
-
}
|
|
141
|
-
}, [state, zeroEvents2]), null;
|
|
142
|
-
});
|
|
143
|
-
function preload(fnArg, paramsOrOptions, optionsArg) {
|
|
144
|
-
const hasParams = optionsArg !== void 0 || paramsOrOptions && !("ttl" in paramsOrOptions),
|
|
145
|
-
params = hasParams ? paramsOrOptions : void 0,
|
|
146
|
-
options = hasParams ? optionsArg : paramsOrOptions,
|
|
147
|
-
queryRequest = (0, import_resolveQuery.resolveQuery)({
|
|
148
|
-
customQueries,
|
|
149
|
-
fn: fnArg,
|
|
150
|
-
params
|
|
151
|
-
});
|
|
152
|
-
return zero.preload(queryRequest, options);
|
|
153
|
-
}
|
|
154
|
-
return {
|
|
155
|
-
zeroEvents,
|
|
156
|
-
ProvideZero,
|
|
157
|
-
useQuery,
|
|
158
|
-
usePermission,
|
|
159
|
-
zero,
|
|
160
|
-
preload
|
|
161
|
-
};
|
|
162
|
-
}
|