Skip to content

Commit

Permalink
Merge pull request #661 from quoid/refactor/unify-version-numbers
Browse files Browse the repository at this point in the history
refactor: unify version numbers and versioned documentation
  • Loading branch information
ACTCD authored May 28, 2024
2 parents 03f69a6 + f19e570 commit 4b55e7b
Show file tree
Hide file tree
Showing 18 changed files with 207 additions and 186 deletions.
15 changes: 2 additions & 13 deletions scripts/build-app.js
Original file line number Diff line number Diff line change
Expand Up @@ -8,24 +8,13 @@

import { build } from "vite";
import { svelte } from "@sveltejs/vite-plugin-svelte";

/**
* Define default vite config options
* Disable auto resolving {@link vite.config.js}
* @see {@link https://vitejs.dev/config/ Config}
* @see {@link https://vitejs.dev/guide/api-javascript.html#inlineconfig configFile}
* @type {import("vite").InlineConfig}
*/
const defineConfig = {
base: "./",
configFile: false,
};
import { baseConfig } from "./utils.js";

/**
* Build App-Shared WebView resources to xcode dist
*/
build({
...defineConfig,
...baseConfig,
plugins: [svelte()],
build: {
outDir: "xcode/App-Shared/Resources/dist/",
Expand Down
30 changes: 9 additions & 21 deletions scripts/build-ext-demo.js
Original file line number Diff line number Diff line change
Expand Up @@ -5,28 +5,16 @@

import { build } from "vite";
import { svelte } from "@sveltejs/vite-plugin-svelte";
import { cp, emptyBuildDir, rootDir } from "./utils.js";
import * as Utils from "./utils.js";

/**
* Define default vite config options
* Disable auto resolving {@link vite.config.js}
* @see {@link https://vitejs.dev/config/ Config}
* @see {@link https://vitejs.dev/guide/api-javascript.html#inlineconfig InlineConfig}
* @type {import("vite").InlineConfig}
*/
const defineConfig = {
configFile: false,
envFile: false,
root: await rootDir(),
base: "./",
/** @type {import("vite").InlineConfig} */
const sharedConfig = {
...Utils.baseConfig,
mode: "development",

define: {
"import.meta.env.BROWSER": JSON.stringify("Safari"),
"import.meta.env.NATIVE_APP": JSON.stringify("app"),
...Utils.baseConfig.define,
"import.meta.env.SAFARI_VERSION": JSON.stringify(15),
"import.meta.env.SAFARI_PLATFORM": JSON.stringify(
process.env.SAFARI_PLATFORM,
),
"import.meta.env.EXT_DEMO_BUILD": JSON.stringify(true),
},
};
Expand All @@ -35,12 +23,12 @@ const defineConfig = {
* Empty resources directory
* Copy public static assets
*/
await emptyBuildDir("dist");
cp("public/ext/shared", "dist");
await Utils.emptyBuildDir("dist");
Utils.cp("public/ext/shared", "dist");

/** Build shared modules */
build({
...defineConfig,
...sharedConfig,
plugins: [svelte()],
publicDir: "public/ext/vendor/",
build: {
Expand Down
41 changes: 14 additions & 27 deletions scripts/build-ext-safari-15.js
Original file line number Diff line number Diff line change
Expand Up @@ -16,27 +16,14 @@

import { build } from "vite";
import { svelte } from "@sveltejs/vite-plugin-svelte";
import { cp, emptyBuildDir, rootDir, SAFARI_EXT_RESOURCES } from "./utils.js";
import * as Utils from "./utils.js";

/**
* Define default vite config options
* Disable auto resolving {@link vite.config.js}
* @see {@link https://vitejs.dev/config/ Config}
* @see {@link https://vitejs.dev/guide/api-javascript.html#inlineconfig InlineConfig}
* @type {import("vite").InlineConfig}
*/
const defineConfig = {
configFile: false,
envFile: false,
root: await rootDir(),
base: "./",
/** @type {import("vite").InlineConfig} */
const sharedConfig = {
...Utils.baseConfig,
define: {
"import.meta.env.BROWSER": JSON.stringify("Safari"),
"import.meta.env.NATIVE_APP": JSON.stringify("app"),
...Utils.baseConfig.define,
"import.meta.env.SAFARI_VERSION": JSON.stringify(15),
"import.meta.env.SAFARI_PLATFORM": JSON.stringify(
process.env.SAFARI_PLATFORM,
),
},
};
const sourcemap = process.env.BETA ? true : false;
Expand All @@ -45,9 +32,9 @@ const sourcemap = process.env.BETA ? true : false;
* Empty resources directory
* Copy public static assets
*/
await emptyBuildDir(SAFARI_EXT_RESOURCES);
cp("public/ext/shared", SAFARI_EXT_RESOURCES);
cp("public/ext/safari-15", SAFARI_EXT_RESOURCES);
await Utils.emptyBuildDir(Utils.SAFARI_EXT_RESOURCES);
Utils.cp("public/ext/shared", Utils.SAFARI_EXT_RESOURCES);
Utils.cp("public/ext/safari-15", Utils.SAFARI_EXT_RESOURCES);

/** Build content scripts */
[
Expand All @@ -56,9 +43,9 @@ cp("public/ext/safari-15", SAFARI_EXT_RESOURCES);
{ "script-market": "src/ext/content-scripts/entry-script-market.js" },
].forEach((input) => {
build({
...defineConfig,
...sharedConfig,
build: {
outDir: `${SAFARI_EXT_RESOURCES}/dist/content-scripts/`,
outDir: `${Utils.SAFARI_EXT_RESOURCES}/dist/content-scripts/`,
emptyOutDir: false,
copyPublicDir: false,
sourcemap,
Expand All @@ -72,9 +59,9 @@ cp("public/ext/safari-15", SAFARI_EXT_RESOURCES);

/** Build background scripts */
build({
...defineConfig,
...sharedConfig,
build: {
outDir: `${SAFARI_EXT_RESOURCES}/dist/`,
outDir: `${Utils.SAFARI_EXT_RESOURCES}/dist/`,
emptyOutDir: false,
copyPublicDir: false,
sourcemap,
Expand All @@ -87,11 +74,11 @@ build({

/** Build shared modules */
build({
...defineConfig,
...sharedConfig,
plugins: [svelte()],
publicDir: "public/ext/vendor/",
build: {
outDir: `${SAFARI_EXT_RESOURCES}/dist/`,
outDir: `${Utils.SAFARI_EXT_RESOURCES}/dist/`,
emptyOutDir: false,
sourcemap,
rollupOptions: {
Expand Down
41 changes: 14 additions & 27 deletions scripts/build-ext-safari-16.4.js
Original file line number Diff line number Diff line change
Expand Up @@ -15,27 +15,14 @@

import { build } from "vite";
import { svelte } from "@sveltejs/vite-plugin-svelte";
import { cp, emptyBuildDir, rootDir, SAFARI_EXT_RESOURCES } from "./utils.js";
import * as Utils from "./utils.js";

/**
* Define default vite config options
* Disable auto resolving {@link vite.config.js}
* @see {@link https://vitejs.dev/config/ Config}
* @see {@link https://vitejs.dev/guide/api-javascript.html#inlineconfig configFile}
* @type {import("vite").InlineConfig}
*/
const defineConfig = {
configFile: false,
envFile: false,
root: await rootDir(),
base: "./",
/** @type {import("vite").InlineConfig} */
const sharedConfig = {
...Utils.baseConfig,
define: {
"import.meta.env.BROWSER": JSON.stringify("Safari"),
"import.meta.env.NATIVE_APP": JSON.stringify("app"),
...Utils.baseConfig.define,
"import.meta.env.SAFARI_VERSION": JSON.stringify(16.4),
"import.meta.env.SAFARI_PLATFORM": JSON.stringify(
process.env.SAFARI_PLATFORM,
),
},
};
const sourcemap = process.env.BETA ? true : false;
Expand All @@ -44,9 +31,9 @@ const sourcemap = process.env.BETA ? true : false;
* Empty resources directory
* Copy public static assets
*/
await emptyBuildDir(SAFARI_EXT_RESOURCES);
cp("public/ext/shared", SAFARI_EXT_RESOURCES);
cp("public/ext/safari-16.4", SAFARI_EXT_RESOURCES);
await Utils.emptyBuildDir(Utils.SAFARI_EXT_RESOURCES);
Utils.cp("public/ext/shared", Utils.SAFARI_EXT_RESOURCES);
Utils.cp("public/ext/safari-16.4", Utils.SAFARI_EXT_RESOURCES);

/** Build content scripts */
[
Expand All @@ -55,9 +42,9 @@ cp("public/ext/safari-16.4", SAFARI_EXT_RESOURCES);
{ "script-market": "src/ext/content-scripts/entry-script-market.js" },
].forEach((input) => {
build({
...defineConfig,
...sharedConfig,
build: {
outDir: `${SAFARI_EXT_RESOURCES}/dist/content-scripts/`,
outDir: `${Utils.SAFARI_EXT_RESOURCES}/dist/content-scripts/`,
emptyOutDir: false,
copyPublicDir: false,
sourcemap,
Expand All @@ -75,9 +62,9 @@ cp("public/ext/safari-16.4", SAFARI_EXT_RESOURCES);
* Currently build classic script separately to avoid this error
*/
build({
...defineConfig,
...sharedConfig,
build: {
outDir: `${SAFARI_EXT_RESOURCES}/dist/`,
outDir: `${Utils.SAFARI_EXT_RESOURCES}/dist/`,
emptyOutDir: false,
copyPublicDir: false,
sourcemap,
Expand All @@ -90,11 +77,11 @@ build({

/** Build shared modules */
build({
...defineConfig,
...sharedConfig,
plugins: [svelte()],
publicDir: "public/ext/vendor/",
build: {
outDir: `${SAFARI_EXT_RESOURCES}/dist/`,
outDir: `${Utils.SAFARI_EXT_RESOURCES}/dist/`,
emptyOutDir: false,
sourcemap,
rollupOptions: {
Expand Down
59 changes: 20 additions & 39 deletions scripts/dev-ext-safari.js
Original file line number Diff line number Diff line change
Expand Up @@ -9,35 +9,16 @@

import { build, createServer } from "vite";
import { svelte } from "@sveltejs/vite-plugin-svelte";
import {
cp,
emptyBuildDir,
sharedServerOptions,
rootDir,
SAFARI_EXT_RESOURCES,
} from "./utils.js";
import * as Utils from "./utils.js";
import https from "node:https";

/**
* Define default vite config options
* Disable auto resolving {@link vite.config.js}
* @see {@link https://vitejs.dev/config/ Config}
* @see {@link https://vitejs.dev/guide/api-javascript.html#inlineconfig configFile}
* @type {import("vite").InlineConfig}
*/
const defineConfig = {
configFile: false,
envFile: false,
root: await rootDir(),
base: "./",
/** @type {import("vite").InlineConfig} */
const sharedConfig = {
...Utils.baseConfig,
mode: "development",
define: {
"import.meta.env.BROWSER": JSON.stringify("Safari"),
"import.meta.env.NATIVE_APP": JSON.stringify("app"),
...Utils.baseConfig.define,
"import.meta.env.SAFARI_VERSION": JSON.stringify(16.4),
"import.meta.env.SAFARI_PLATFORM": JSON.stringify(
process.env.SAFARI_PLATFORM,
),
},
};

Expand All @@ -51,19 +32,19 @@ async function buildResources(server, origin) {
* empty resources directory
* copy public static assets
*/
await emptyBuildDir("dist");
await emptyBuildDir(SAFARI_EXT_RESOURCES);
cp("public/ext/shared", SAFARI_EXT_RESOURCES);
cp("public/ext/shared-dev", SAFARI_EXT_RESOURCES);
await Utils.emptyBuildDir("dist");
await Utils.emptyBuildDir(Utils.SAFARI_EXT_RESOURCES);
Utils.cp("public/ext/shared", Utils.SAFARI_EXT_RESOURCES);
Utils.cp("public/ext/shared-dev", Utils.SAFARI_EXT_RESOURCES);
if (process.env.SAFARI_PLATFORM === "ios") {
cp(
Utils.cp(
"public/ext/safari-dev/manifest-ios.json",
`${SAFARI_EXT_RESOURCES}/manifest.json`,
`${Utils.SAFARI_EXT_RESOURCES}/manifest.json`,
);
} else {
cp(
Utils.cp(
"public/ext/safari-dev/manifest-mac.json",
`${SAFARI_EXT_RESOURCES}/manifest.json`,
`${Utils.SAFARI_EXT_RESOURCES}/manifest.json`,
);
}

Expand All @@ -75,7 +56,7 @@ async function buildResources(server, origin) {
].forEach((input) => {
/** build proxy content scripts replace actual code */
build({
...defineConfig,
...sharedConfig,
plugins: [
{
name: "generate-content-proxy",
Expand All @@ -100,7 +81,7 @@ async function buildResources(server, origin) {
},
],
build: {
outDir: `${SAFARI_EXT_RESOURCES}/dist/content-scripts/`,
outDir: `${Utils.SAFARI_EXT_RESOURCES}/dist/content-scripts/`,
emptyOutDir: false,
copyPublicDir: false,
rollupOptions: {
Expand All @@ -111,7 +92,7 @@ async function buildResources(server, origin) {
});
/** build content scripts for dev server and watch changes */
build({
...defineConfig,
...sharedConfig,
build: {
outDir: `dist/content-scripts/`,
emptyOutDir: false,
Expand All @@ -128,7 +109,7 @@ async function buildResources(server, origin) {

/** generate entrance dist */
build({
...defineConfig,
...sharedConfig,
publicDir: "public/ext/vendor/",
plugins: [
/**
Expand All @@ -147,7 +128,7 @@ async function buildResources(server, origin) {
},
],
build: {
outDir: `${SAFARI_EXT_RESOURCES}/dist/`,
outDir: `${Utils.SAFARI_EXT_RESOURCES}/dist/`,
emptyOutDir: false,
rollupOptions: {
input: {
Expand All @@ -170,7 +151,7 @@ async function buildResources(server, origin) {
* @see {@link https://developer.mozilla.org/en-US/docs/Mozilla/Add-ons/WebExtensions/Content_Security_Policy}
* @see {@link https://developer.mozilla.org/en-US/docs/Mozilla/Add-ons/WebExtensions/manifest.json/content_security_policy}
*/
const serverOptions = await sharedServerOptions();
const serverOptions = await Utils.sharedServerOptions();
const SERVER_PORT = 55173;
const SERVER_ORIGIN = `https://userscripts.test:${SERVER_PORT}`;

Expand Down Expand Up @@ -204,7 +185,7 @@ async function serverCheck(url) {
(async () => {
/** run development server */
const server = await createServer({
...defineConfig,
...sharedConfig,
plugins: [svelte()],
server: {
host: true,
Expand Down
Loading

0 comments on commit 4b55e7b

Please sign in to comment.