@budibase/backend-core 2.6.14 → 2.6.16-alpha.0

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@budibase/backend-core",
3
- "version": "2.6.14",
3
+ "version": "2.6.16-alpha.0",
4
4
  "description": "Budibase backend core libraries used in server and worker",
5
5
  "main": "dist/src/index.js",
6
6
  "types": "dist/src/index.d.ts",
@@ -15,8 +15,6 @@
15
15
  "prebuild": "rimraf dist/",
16
16
  "prepack": "cp package.json dist",
17
17
  "build": "tsc -p tsconfig.build.json",
18
- "build:pro": "../../scripts/pro/build.sh",
19
- "postbuild": "yarn run build:pro",
20
18
  "build:dev": "yarn prebuild && tsc --build --watch --preserveWatchOutput",
21
19
  "test": "bash scripts/test.sh",
22
20
  "test:watch": "jest --watchAll"
@@ -24,7 +22,7 @@
24
22
  "dependencies": {
25
23
  "@budibase/nano": "10.1.2",
26
24
  "@budibase/pouchdb-replication-stream": "1.2.10",
27
- "@budibase/types": "^2.6.14",
25
+ "@budibase/types": "2.6.16-alpha.0",
28
26
  "@shopify/jest-koa-mocks": "5.0.1",
29
27
  "@techpass/passport-openidconnect": "0.3.2",
30
28
  "aws-cloudfront-sign": "2.2.0",
@@ -90,5 +88,5 @@
90
88
  "tsconfig-paths": "4.0.0",
91
89
  "typescript": "4.7.3"
92
90
  },
93
- "gitHead": "c3e1ca7a2b83c899ef9a7683013ee87c49636125"
91
+ "gitHead": "f593465257b0321ebf907403b35a71a7df72d64f"
94
92
  }
@@ -19,7 +19,7 @@ export declare enum ViewName {
19
19
  AUTOMATION_LOGS = "automation_logs",
20
20
  ACCOUNT_BY_EMAIL = "account_by_email",
21
21
  PLATFORM_USERS_LOWERCASE = "platform_users_lowercase",
22
- USER_BY_GROUP = "by_group_user",
22
+ USER_BY_GROUP = "user_by_group",
23
23
  APP_BACKUP_BY_TRIGGER = "by_trigger"
24
24
  }
25
25
  export declare const DeprecatedViews: {
@@ -24,7 +24,7 @@ var ViewName;
24
24
  ViewName["AUTOMATION_LOGS"] = "automation_logs";
25
25
  ViewName["ACCOUNT_BY_EMAIL"] = "account_by_email";
26
26
  ViewName["PLATFORM_USERS_LOWERCASE"] = "platform_users_lowercase";
27
- ViewName["USER_BY_GROUP"] = "by_group_user";
27
+ ViewName["USER_BY_GROUP"] = "user_by_group";
28
28
  ViewName["APP_BACKUP_BY_TRIGGER"] = "by_trigger";
29
29
  })(ViewName = exports.ViewName || (exports.ViewName = {}));
30
30
  exports.DeprecatedViews = {
@@ -1,6 +1,9 @@
1
1
  import { Ctx, Event } from "@budibase/types";
2
2
  export declare function resolveAppUrl(ctx: Ctx): Promise<string | undefined>;
3
3
  export declare function isServingApp(ctx: Ctx): boolean;
4
+ export declare function isServingBuilder(ctx: Ctx): boolean;
5
+ export declare function isServingBuilderPreview(ctx: Ctx): boolean;
6
+ export declare function isPublicApiRequest(ctx: Ctx): boolean;
4
7
  /**
5
8
  * Given a request tries to find the appId, which can be located in various places
6
9
  * @param {object} ctx The main request body to look through.
@@ -35,7 +35,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
35
35
  return (mod && mod.__esModule) ? mod : { "default": mod };
36
36
  };
37
37
  Object.defineProperty(exports, "__esModule", { value: true });
38
- exports.isAudited = exports.timeout = exports.isClient = exports.clearCookie = exports.setCookie = exports.getCookie = exports.isValidInternalAPIKey = exports.openJwt = exports.getAppIdFromCtx = exports.isServingApp = exports.resolveAppUrl = void 0;
38
+ exports.isAudited = exports.timeout = exports.isClient = exports.clearCookie = exports.setCookie = exports.getCookie = exports.isValidInternalAPIKey = exports.openJwt = exports.getAppIdFromCtx = exports.isPublicApiRequest = exports.isServingBuilderPreview = exports.isServingBuilder = exports.isServingApp = exports.resolveAppUrl = void 0;
39
39
  const db_1 = require("../db");
40
40
  const constants_1 = require("../constants");
41
41
  const environment_1 = __importDefault(require("../environment"));
@@ -46,7 +46,9 @@ const jwt = require("jsonwebtoken");
46
46
  const APP_PREFIX = constants_1.DocumentType.APP + constants_1.SEPARATOR;
47
47
  const PROD_APP_PREFIX = "/app/";
48
48
  const BUILDER_PREVIEW_PATH = "/app/preview";
49
- const BUILDER_REFERER_PREFIX = "/builder/app/";
49
+ const BUILDER_PREFIX = "/builder";
50
+ const BUILDER_APP_PREFIX = `${BUILDER_PREFIX}/app/`;
51
+ const PUBLIC_API_PREFIX = "/api/public/v";
50
52
  function confirmAppId(possibleAppId) {
51
53
  return possibleAppId && possibleAppId.startsWith(APP_PREFIX)
52
54
  ? possibleAppId
@@ -84,6 +86,18 @@ function isServingApp(ctx) {
84
86
  return false;
85
87
  }
86
88
  exports.isServingApp = isServingApp;
89
+ function isServingBuilder(ctx) {
90
+ return ctx.path.startsWith(BUILDER_APP_PREFIX);
91
+ }
92
+ exports.isServingBuilder = isServingBuilder;
93
+ function isServingBuilderPreview(ctx) {
94
+ return ctx.path.startsWith(BUILDER_PREVIEW_PATH);
95
+ }
96
+ exports.isServingBuilderPreview = isServingBuilderPreview;
97
+ function isPublicApiRequest(ctx) {
98
+ return ctx.path.startsWith(PUBLIC_API_PREFIX);
99
+ }
100
+ exports.isPublicApiRequest = isPublicApiRequest;
87
101
  /**
88
102
  * Given a request tries to find the appId, which can be located in various places
89
103
  * @param {object} ctx The main request body to look through.
@@ -121,7 +135,7 @@ function getAppIdFromCtx(ctx) {
121
135
  // make sure this is performed after prod app url resolution, in case the
122
136
  // referer header is present from a builder redirect
123
137
  const referer = ctx.request.headers.referer;
124
- if (!appId && (referer === null || referer === void 0 ? void 0 : referer.includes(BUILDER_REFERER_PREFIX))) {
138
+ if (!appId && (referer === null || referer === void 0 ? void 0 : referer.includes(BUILDER_APP_PREFIX))) {
125
139
  const refererId = parseAppIdFromUrl(ctx.request.headers.referer);
126
140
  appId = confirmAppId(refererId);
127
141
  }
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../src/utils/utils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../src/utils/utils.ts"],"names":[],"mappings":"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"}