Skip to content

Commit

Permalink
Merge pull request #12388 from Budibase/fix/build-references
Browse files Browse the repository at this point in the history
Removing references to budibase packages usages without barrel imports
  • Loading branch information
adrinr authored Nov 17, 2023
2 parents 7412fd5 + 27ba888 commit f7d3efb
Show file tree
Hide file tree
Showing 16 changed files with 469 additions and 66 deletions.
15 changes: 12 additions & 3 deletions .eslintrc.json
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,7 @@
"bundle.js"
],
"extends": ["eslint:recommended"],
"plugins": ["import", "eslint-plugin-local-rules"],
"overrides": [
{
"files": ["**/*.svelte"],
Expand All @@ -30,7 +31,6 @@
"sourceType": "module",
"allowImportExportEverywhere": true
}

},
{
"files": ["**/*.ts"],
Expand All @@ -42,13 +42,22 @@
"no-case-declarations": "off",
"no-useless-escape": "off",
"no-undef": "off",
"no-prototype-builtins": "off"
"no-prototype-builtins": "off",
"local-rules/no-budibase-imports": "error"
}
}
],
"rules": {
"no-self-assign": "off",
"no-unused-vars": ["error", { "varsIgnorePattern": "^_", "argsIgnorePattern": "^_", "destructuredArrayIgnorePattern": "^_" }]
"no-unused-vars": [
"error",
{
"varsIgnorePattern": "^_",
"argsIgnorePattern": "^_",
"destructuredArrayIgnorePattern": "^_"
}
],
"import/no-relative-packages": "error"
},
"globals": {
"GeolocationPositionError": true
Expand Down
21 changes: 21 additions & 0 deletions eslint-local-rules/index.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
module.exports = {
"no-budibase-imports": {
create: function (context) {
return {
ImportDeclaration(node) {
const importPath = node.source.value

if (
/^@budibase\/[^/]+\/.*$/.test(importPath) &&
importPath !== "@budibase/backend-core/tests"
) {
context.report({
node,
message: `Importing from @budibase is not allowed, except for @budibase/backend-core/tests.`,
})
}
},
}
},
},
}
14 changes: 8 additions & 6 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -2,11 +2,17 @@
"name": "root",
"private": true,
"devDependencies": {
"@babel/core": "^7.22.5",
"@babel/eslint-parser": "^7.22.5",
"@babel/preset-env": "^7.22.5",
"@esbuild-plugins/tsconfig-paths": "^0.1.2",
"@typescript-eslint/parser": "6.7.2",
"esbuild": "^0.18.17",
"esbuild-node-externals": "^1.8.0",
"eslint": "^8.44.0",
"eslint-plugin-import": "^2.29.0",
"eslint-plugin-local-rules": "^2.0.0",
"eslint-plugin-svelte": "^2.32.2",
"husky": "^8.0.3",
"kill-port": "^1.6.1",
"lerna": "7.1.1",
Expand All @@ -17,12 +23,8 @@
"prettier": "2.8.8",
"prettier-plugin-svelte": "^2.3.0",
"svelte": "3.49.0",
"typescript": "5.2.2",
"@babel/core": "^7.22.5",
"@babel/eslint-parser": "^7.22.5",
"@babel/preset-env": "^7.22.5",
"eslint-plugin-svelte": "^2.32.2",
"svelte-eslint-parser": "^0.32.0"
"svelte-eslint-parser": "^0.32.0",
"typescript": "5.2.2"
},
"scripts": {
"preinstall": "node scripts/syncProPackage.js",
Expand Down
1 change: 1 addition & 0 deletions packages/backend-core/src/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -32,6 +32,7 @@ export * as blacklist from "./blacklist"
export * as docUpdates from "./docUpdates"
export * from "./utils/Duration"
export { SearchParams } from "./db"
export * as docIds from "./docIds"
// Add context to tenancy for backwards compatibility
// only do this for external usages to prevent internal
// circular dependencies
Expand Down
12 changes: 0 additions & 12 deletions packages/cli/.eslintrc

This file was deleted.

5 changes: 2 additions & 3 deletions packages/client/src/components/app/forms/S3Upload.svelte
Original file line number Diff line number Diff line change
@@ -1,8 +1,7 @@
<script>
import Field from "./Field.svelte"
import { CoreDropzone, ProgressCircle } from "@budibase/bbui"
import { CoreDropzone, ProgressCircle, Helpers } from "@budibase/bbui"
import { getContext, onMount, onDestroy } from "svelte"
import { cloneDeep } from "../../../../../bbui/src/helpers"
export let datasourceId
export let bucket
Expand Down Expand Up @@ -100,7 +99,7 @@
const handleChange = e => {
localFiles = e.detail
let files = cloneDeep(e.detail) || []
let files = Helpers.cloneDeep(e.detail) || []
// remove URL as it contains the full base64 image data
files.forEach(file => {
if (file.type?.startsWith("image")) {
Expand Down
2 changes: 1 addition & 1 deletion packages/pro
Submodule pro updated from e202f4 to 2cf6f2
8 changes: 4 additions & 4 deletions packages/server/src/sdk/app/links/links.ts
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import { context } from "@budibase/backend-core"
import { isTableId } from "@budibase/backend-core/src/docIds"
import { context, docIds } from "@budibase/backend-core"

import {
DatabaseQueryOpts,
LinkDocument,
Expand All @@ -8,7 +8,7 @@ import {
import { ViewName, getQueryIndex } from "../../../../src/db/utils"

export async function fetch(tableId: string): Promise<LinkDocumentValue[]> {
if (!isTableId(tableId)) {
if (!docIds.isTableId(tableId)) {
throw new Error(`Invalid tableId: ${tableId}`)
}

Expand All @@ -24,7 +24,7 @@ export async function fetch(tableId: string): Promise<LinkDocumentValue[]> {
export async function fetchWithDocument(
tableId: string
): Promise<LinkDocument[]> {
if (!isTableId(tableId)) {
if (!docIds.isTableId(tableId)) {
throw new Error(`Invalid tableId: ${tableId}`)
}

Expand Down
3 changes: 1 addition & 2 deletions packages/server/src/sdk/app/tables/migration.ts
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,6 @@ import sdk from "../../../sdk"
import { isExternalTableID } from "../../../integrations/utils"
import { EventType, updateLinks } from "../../../db/linkedRows"
import { cloneDeep } from "lodash"
import { isInternalColumnName } from "@budibase/backend-core/src/db"

export interface MigrationResult {
tablesUpdated: Table[]
Expand All @@ -36,7 +35,7 @@ export async function migrate(
throw new BadRequestError(`Column name cannot be empty`)
}

if (isInternalColumnName(newColumn.name)) {
if (dbCore.isInternalColumnName(newColumn.name)) {
throw new BadRequestError(`Column name cannot be a reserved column name`)
}

Expand Down
12 changes: 0 additions & 12 deletions packages/string-templates/.eslintrc

This file was deleted.

6 changes: 1 addition & 5 deletions qa-core/src/public-api/api/apis/RowAPI.ts
Original file line number Diff line number Diff line change
@@ -1,8 +1,4 @@
import {
CreateRowParams,
Row,
SearchInputParams,
} from "@budibase/server/api/controllers/public/mapping/types"
import { CreateRowParams, Row, SearchInputParams } from "../../../types"
import { HeadersInit, Response } from "node-fetch"
import BudibasePublicAPIClient from "../BudibasePublicAPIClient"
import * as fixtures from "../../fixtures"
Expand Down
6 changes: 1 addition & 5 deletions qa-core/src/public-api/api/apis/TableAPI.ts
Original file line number Diff line number Diff line change
@@ -1,8 +1,4 @@
import {
Table,
SearchInputParams,
CreateTableParams,
} from "@budibase/server/api/controllers/public/mapping/types"
import { Table, SearchInputParams, CreateTableParams } from "../../../types"
import { HeadersInit, Response } from "node-fetch"
import { generateTable } from "../../fixtures/tables"
import BudibasePublicAPIClient from "../BudibasePublicAPIClient"
Expand Down
6 changes: 1 addition & 5 deletions qa-core/src/public-api/api/apis/UserAPI.ts
Original file line number Diff line number Diff line change
@@ -1,8 +1,4 @@
import {
CreateUserParams,
SearchInputParams,
User,
} from "@budibase/server/api/controllers/public/mapping/types"
import { CreateUserParams, SearchInputParams, User } from "../../../types"
import { Response } from "node-fetch"
import BudibasePublicAPIClient from "../BudibasePublicAPIClient"
import * as fixtures from "../../fixtures"
Expand Down
5 changes: 1 addition & 4 deletions qa-core/src/public-api/fixtures/users.ts
Original file line number Diff line number Diff line change
@@ -1,7 +1,4 @@
import {
CreateUserParams,
User,
} from "@budibase/server/api/controllers/public/mapping/types"
import { CreateUserParams, User } from "../../types"
import { generator } from "../../shared"

export const generateUser = (
Expand Down
2 changes: 1 addition & 1 deletion qa-core/src/types/appPackage.ts
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import { Application } from "@budibase/server/api/controllers/public/mapping/types"
import { Application } from "../types"
import { Layout } from "@budibase/types"
import { Screen } from "@budibase/types"
// Create type for getAppPackage response
Expand Down
Loading

0 comments on commit f7d3efb

Please sign in to comment.