@fernir2/saas-kit-cli 0.1.30 → 0.1.31
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/base-repo/app-constants/aliases.cjs.js +1 -1
- package/base-repo/app-constants/aliases.js +1 -1
- package/cli/.gitlab-ci.yml +15 -0
- package/cli/.husky/commit-msg +1 -0
- package/cli/.husky/pre-commit +1 -0
- package/cli/server.ts +41 -0
- package/cli/src/app/favicon.ico +0 -0
- package/cli/src/app/layout.tsx +44 -0
- package/cli/src/app/page.tsx +9 -0
- package/cli/src/app/styles/common.css +74 -0
- package/cli/src/app/styles/rich-text-editor.css +130 -0
- package/cli/tsconfig.declaration.json +48 -0
- package/level2/cli/create-saas-kit-app/bin/index.cjs.js +4 -4
- package/level2/cli/create-saas-kit-app/bin/index.js +3 -3
- package/level2/fd-toolbox/api/api-client.cjs.js +1 -1
- package/level2/fd-toolbox/api/api-client.js +1 -1
- package/level2/fd-toolbox/api/api-path-names.cjs.js +2 -2
- package/level2/fd-toolbox/api/api-paths.cjs.js +1 -1
- package/level2/fd-toolbox/api/api-paths.js +1 -1
- package/level2/fd-toolbox/api/base-api.cjs.js +1 -1
- package/level2/fd-toolbox/api/base-api.js +1 -1
- package/level2/fd-toolbox/auth/login-states.cjs.js +1 -1
- package/level2/fd-toolbox/auth/login-states.js +1 -1
- package/level2/fd-toolbox/auth/session-storage.cjs.js +1 -1
- package/level2/fd-toolbox/auth/session-storage.js +1 -1
- package/level2/fd-toolbox/auth/tokens.cjs.js +1 -1
- package/level2/fd-toolbox/auth/tokens.js +1 -1
- package/level2/fd-toolbox/constants/constants.cjs.js +1 -1
- package/level2/fd-toolbox/constants/constants.js +1 -1
- package/level2/fd-toolbox/enums/enums.cjs.js +1 -1
- package/level2/fd-toolbox/enums/enums.js +1 -1
- package/level2/fd-toolbox/errors/error-handler.cjs.js +1 -1
- package/level2/fd-toolbox/errors/error-handler.js +1 -1
- package/level2/fd-toolbox/errors/errors.cjs.js +1 -1
- package/level2/fd-toolbox/errors/errors.js +1 -1
- package/level2/fd-toolbox/errors/problem-details.cjs.js +1 -1
- package/level2/fd-toolbox/errors/problem-details.js +1 -1
- package/level2/fd-toolbox/functions/value-checking-functions.cjs.js +1 -1
- package/level2/fd-toolbox/functions/value-checking-functions.js +1 -1
- package/level2/fd-toolbox/http/url/urls.cjs.js +1 -1
- package/level2/fd-toolbox/http/url/urls.js +1 -1
- package/level2/fd-toolbox/infra/env-config.cjs.js +2 -2
- package/level2/fd-toolbox/infra/env-config.js +2 -2
- package/level2/fd-toolbox/infra/env-functions.cjs.js +1 -1
- package/level2/fd-toolbox/infra/env-functions.js +1 -1
- package/level2/fd-toolbox/infra/env-schema.cjs.js +2 -2
- package/level2/fd-toolbox/infra/env-schema.js +2 -2
- package/level2/fd-toolbox/infra/env-store.cjs.js +1 -1
- package/level2/fd-toolbox/infra/env-store.js +1 -1
- package/level2/fd-toolbox/lib/environments.cjs.js +1 -1
- package/level2/fd-toolbox/lib/environments.js +1 -1
- package/level2/fd-toolbox/lib/utils.cjs.js +1 -1
- package/level2/fd-toolbox/lib/utils.js +1 -1
- package/level2/fd-toolbox/local-storage/local-storage.cjs.js +1 -1
- package/level2/fd-toolbox/local-storage/local-storage.js +1 -1
- package/level2/fd-toolbox/logging/loggers.cjs.js +1 -1
- package/level2/fd-toolbox/logging/loggers.js +1 -1
- package/level2/fd-toolbox/notifications.cjs.js +2 -2
- package/level2/fd-toolbox/notifications.js +2 -2
- package/level2/fd-toolbox/odata/odata-constants.cjs.js +1 -1
- package/level2/fd-toolbox/odata/odata-constants.js +1 -1
- package/level2/fd-toolbox/odata/odatas.cjs.js +1 -1
- package/level2/fd-toolbox/odata/odatas.js +1 -1
- package/level2/fd-toolbox/odata/services/odata-filters.cjs.js +1 -1
- package/level2/fd-toolbox/odata/services/odata-filters.js +1 -1
- package/level2/fd-toolbox/paths/paths-names.cjs.js +2 -2
- package/level2/fd-toolbox/paths/paths-names.js +1 -1
- package/level2/fd-toolbox/routing/login-routers.cjs.js +1 -1
- package/level2/fd-toolbox/routing/login-routers.js +1 -1
- package/level2/fd-toolbox/routing/paths.cjs.js +1 -1
- package/level2/fd-toolbox/routing/paths.js +1 -1
- package/level2/fd-toolbox/strings/strings-constants.cjs.js +1 -1
- package/level2/fd-toolbox/strings/strings-constants.js +1 -1
- package/level2/fd-toolbox/strings/strings.cjs.js +1 -1
- package/level2/fd-toolbox/strings/strings.js +1 -1
- package/level2/fd-toolbox/types/ensure-type.cjs.js +1 -1
- package/level2/fd-toolbox/types/ensure-type.js +1 -1
- package/level2/fd-toolbox-core/core/name-of.cjs.js +1 -1
- package/level2/fd-toolbox-core/core/name-of.js +1 -1
- package/level2/fd-toolbox-core/types/resource-with-id.cjs.js +1 -1
- package/level2/fd-toolbox-core/types/resource-with-id.js +1 -1
- package/package.json +1 -1
- package/cli/.env +0 -55
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
'use strict';
|
|
3
3
|
|
|
4
|
-
const aliasSymbols={'atSign':'@','rootAlias':'@root/'};const typescriptAliases={'@':'./src','@cli':'./packages/level2/cli','@server':'./packages/level2/server','@schemas':'./generated','@npm-commands':'./packages/level2/npm-commands','@root':'.','@enricher':'./packages/level2/enricher','@packages':'./packages','@common':'./packages/level2/common','@meta':'./packages/level2/meta','@fd-toolbox':'./packages/level2/fd-toolbox','@fd-toolbox-core':'./packages/level2/fd-toolbox-core','@fd-component-toolbox':'./packages/level2/fd-component-toolbox','@fd-app-toolbox':'./packages/level2/fd-app-toolbox','@client':'./packages/level2/client'};const modulePathAliases=Object['fromEntries'](Object['entries'](typescriptAliases)['map'](([
|
|
4
|
+
const aliasSymbols={'atSign':'@','rootAlias':'@root/'};const typescriptAliases={'@':'./src','@cli':'./packages/level2/cli','@server':'./packages/level2/server','@schemas':'./generated','@npm-commands':'./packages/level2/npm-commands','@root':'.','@enricher':'./packages/level2/enricher','@packages':'./packages','@common':'./packages/level2/common','@meta':'./packages/level2/meta','@fd-toolbox':'./packages/level2/fd-toolbox','@fd-toolbox-core':'./packages/level2/fd-toolbox-core','@fd-component-toolbox':'./packages/level2/fd-component-toolbox','@fd-app-toolbox':'./packages/level2/fd-app-toolbox','@client':'./packages/level2/client'};const modulePathAliases=Object['fromEntries'](Object['entries'](typescriptAliases)['map'](([_0x10cb80,_0x7a5991])=>[_0x10cb80+'/*',[_0x7a5991+'/*']]));
|
|
5
5
|
|
|
6
6
|
exports.aliasSymbols = aliasSymbols;
|
|
7
7
|
exports.modulePathAliases = modulePathAliases;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
'use strict';
|
|
2
|
-
const aliasSymbols={'atSign':'@','rootAlias':'@root/'};const typescriptAliases={'@':'./src','@cli':'./packages/level2/cli','@server':'./packages/level2/server','@schemas':'./generated','@npm-commands':'./packages/level2/npm-commands','@root':'.','@enricher':'./packages/level2/enricher','@packages':'./packages','@common':'./packages/level2/common','@meta':'./packages/level2/meta','@fd-toolbox':'./packages/level2/fd-toolbox','@fd-toolbox-core':'./packages/level2/fd-toolbox-core','@fd-component-toolbox':'./packages/level2/fd-component-toolbox','@fd-app-toolbox':'./packages/level2/fd-app-toolbox','@client':'./packages/level2/client'};const modulePathAliases=Object['fromEntries'](Object['entries'](typescriptAliases)['map'](([
|
|
2
|
+
const aliasSymbols={'atSign':'@','rootAlias':'@root/'};const typescriptAliases={'@':'./src','@cli':'./packages/level2/cli','@server':'./packages/level2/server','@schemas':'./generated','@npm-commands':'./packages/level2/npm-commands','@root':'.','@enricher':'./packages/level2/enricher','@packages':'./packages','@common':'./packages/level2/common','@meta':'./packages/level2/meta','@fd-toolbox':'./packages/level2/fd-toolbox','@fd-toolbox-core':'./packages/level2/fd-toolbox-core','@fd-component-toolbox':'./packages/level2/fd-component-toolbox','@fd-app-toolbox':'./packages/level2/fd-app-toolbox','@client':'./packages/level2/client'};const modulePathAliases=Object['fromEntries'](Object['entries'](typescriptAliases)['map'](([_0x10cb80,_0x7a5991])=>[_0x10cb80+'/*',[_0x7a5991+'/*']]));
|
|
3
3
|
|
|
4
4
|
export { aliasSymbols, modulePathAliases, typescriptAliases };
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
include:
|
|
2
|
+
- "packages/infra/ci/templates/ci-variables.yml"
|
|
3
|
+
- "packages/infra/ci/templates/base-template.yml"
|
|
4
|
+
|
|
5
|
+
- "packages/infra/ci/templates/build-package.yml"
|
|
6
|
+
- "packages/infra/ci/templates/lint.yml"
|
|
7
|
+
- "packages/infra/ci/templates/build-and-test.yml"
|
|
8
|
+
- "packages/infra/ci/templates/saas-kit-test-build-and-test.yml"
|
|
9
|
+
- "packages/infra/ci/templates/create-saas-kit-app-test.yml"
|
|
10
|
+
|
|
11
|
+
- "packages/infra/ci/templates/manual-cleanup.yml"
|
|
12
|
+
- "packages/infra/ci/templates/update-submodules.yml"
|
|
13
|
+
- "packages/infra/ci/templates/deploy-to-vercel.yml"
|
|
14
|
+
- "packages/infra/ci/templates/clear-nx-cache.yml"
|
|
15
|
+
- "packages/infra/ci/templates/drop-all-db.yml"
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
npx tsx packages/base-repo/tools/git/commit-msg-script.ts "$1"
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
pnpm run-precommit
|
package/cli/server.ts
ADDED
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import { createServer } from "node:http";
|
|
2
|
+
import { parse } from "url";
|
|
3
|
+
import next from "next";
|
|
4
|
+
import {
|
|
5
|
+
checkAndHandleWebSocketRequest,
|
|
6
|
+
initSocket,
|
|
7
|
+
initializeInternalMetaCache,
|
|
8
|
+
} from "@fernir2/saas-kit/server";
|
|
9
|
+
import { envSettingKeys, getNumberEnvSetting, isDev } from "@fernir2/saas-kit";
|
|
10
|
+
|
|
11
|
+
const dev = isDev();
|
|
12
|
+
const port = getNumberEnvSetting(envSettingKeys.fdPort) ?? 3000;
|
|
13
|
+
|
|
14
|
+
const app = next({ dev, port });
|
|
15
|
+
const nextRequestHandler = app.getRequestHandler();
|
|
16
|
+
|
|
17
|
+
async function run() {
|
|
18
|
+
await app.prepare();
|
|
19
|
+
|
|
20
|
+
const httpServer = createServer((req, res) => {
|
|
21
|
+
checkAndHandleWebSocketRequest(req, res);
|
|
22
|
+
|
|
23
|
+
const parsedUrl = parse(req.url!, true);
|
|
24
|
+
nextRequestHandler(req, res, parsedUrl);
|
|
25
|
+
});
|
|
26
|
+
|
|
27
|
+
initSocket(httpServer);
|
|
28
|
+
|
|
29
|
+
httpServer
|
|
30
|
+
.once("error", (err) => {
|
|
31
|
+
console.error(err);
|
|
32
|
+
process.exit(1);
|
|
33
|
+
})
|
|
34
|
+
.listen(port, () => {
|
|
35
|
+
console.log(`> Ready on http://localhost:${port}`);
|
|
36
|
+
});
|
|
37
|
+
|
|
38
|
+
await initializeInternalMetaCache();
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
run();
|
|
Binary file
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
import { FdHtmlMetadata } from "@meta/client/framework";
|
|
2
|
+
import { GeistSans } from "geist/font/sans";
|
|
3
|
+
import "src/app/globals.css";
|
|
4
|
+
import { cn } from "@fd-toolbox/lib/utils";
|
|
5
|
+
import Favicon from "src/app/favicon.ico";
|
|
6
|
+
import { FdToaster } from "@fd-component-toolbox/toaster/FdToaster";
|
|
7
|
+
import { ReactNode } from "react";
|
|
8
|
+
import { FdProviders } from "@client/components/providers/FdProviders";
|
|
9
|
+
import { setSidebarResourceNames } from "@fd-app-toolbox/layout/sidebar/sidebar-resource-names-cache";
|
|
10
|
+
import { defaultGlobalConfig } from "@meta/providers/global-provider/default-config";
|
|
11
|
+
import { setMultiListEditResourceConfigs } from "@/app/config/multi-list-config";
|
|
12
|
+
import { setResourceListConfigs } from "@packages/level2/client/pages/view-page/resource-list-configs";
|
|
13
|
+
import { setEditResourceConfigs } from "@packages/level2/meta/edit-resource/config/fd-edit-resource-configs";
|
|
14
|
+
|
|
15
|
+
export const metadata: FdHtmlMetadata = {
|
|
16
|
+
title: "SaaS Kit",
|
|
17
|
+
icons: [{ rel: "icon", url: Favicon.src }],
|
|
18
|
+
};
|
|
19
|
+
|
|
20
|
+
export default async function RootLayout({ children }: { children: ReactNode }) {
|
|
21
|
+
const sidebarResourceNames: string[] = [];
|
|
22
|
+
|
|
23
|
+
setSidebarResourceNames(sidebarResourceNames);
|
|
24
|
+
await setMultiListEditResourceConfigs();
|
|
25
|
+
await setResourceListConfigs();
|
|
26
|
+
setEditResourceConfigs();
|
|
27
|
+
|
|
28
|
+
return (
|
|
29
|
+
<html lang="en">
|
|
30
|
+
<body className={cn(GeistSans.className, "h-screen text-sm")}>
|
|
31
|
+
<div className="flex h-full flex-col">
|
|
32
|
+
<FdProviders
|
|
33
|
+
globalConfig={{
|
|
34
|
+
...defaultGlobalConfig,
|
|
35
|
+
}}
|
|
36
|
+
>
|
|
37
|
+
{children}
|
|
38
|
+
</FdProviders>
|
|
39
|
+
</div>
|
|
40
|
+
<FdToaster />
|
|
41
|
+
</body>
|
|
42
|
+
</html>
|
|
43
|
+
);
|
|
44
|
+
}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { fdRedirect } from "@fd-toolbox/server/framework";
|
|
2
|
+
import { getResourceListUrl } from "@meta/services/meta-navigations";
|
|
3
|
+
import { resourceNames } from "@fd-toolbox/resources/resource-names";
|
|
4
|
+
|
|
5
|
+
export default function Home() {
|
|
6
|
+
const afterLoginUrl = getResourceListUrl(resourceNames.contact);
|
|
7
|
+
|
|
8
|
+
fdRedirect(afterLoginUrl);
|
|
9
|
+
}
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
@tailwind base;
|
|
2
|
+
@tailwind components;
|
|
3
|
+
@tailwind utilities;
|
|
4
|
+
|
|
5
|
+
@layer base {
|
|
6
|
+
* {
|
|
7
|
+
@apply border-border;
|
|
8
|
+
}
|
|
9
|
+
body {
|
|
10
|
+
@apply bg-background text-foreground;
|
|
11
|
+
}
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
@supports not (-webkit-appearance: none) {
|
|
15
|
+
* {
|
|
16
|
+
scrollbar-width: thin;
|
|
17
|
+
scrollbar-color: hsl(var(--fd-toolbar)) hsl(var(--background));
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
@supports (-webkit-appearance: none) {
|
|
22
|
+
*::-webkit-scrollbar {
|
|
23
|
+
width: 15px;
|
|
24
|
+
height: 15px;
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
*::-webkit-scrollbar-track {
|
|
28
|
+
background: hsl(var(--background));
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
*::-webkit-scrollbar-thumb {
|
|
32
|
+
width: 9px;
|
|
33
|
+
height: 9px;
|
|
34
|
+
background: hsl(var(--fd-toolbar));
|
|
35
|
+
border-radius: var(--radius);
|
|
36
|
+
border: 3px solid hsl(var(--background));
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
*::-webkit-scrollbar-thumb:hover {
|
|
40
|
+
background: hsl(var(--fd-toolbar-hover));
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
*::-webkit-scrollbar-button {
|
|
44
|
+
display: none;
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
.scrollbar-hidden {
|
|
49
|
+
-ms-overflow-style: none;
|
|
50
|
+
scrollbar-width: none;
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
@media (max-width: 426px) {
|
|
54
|
+
html,
|
|
55
|
+
body {
|
|
56
|
+
overflow: auto;
|
|
57
|
+
-ms-overflow-style: none;
|
|
58
|
+
scrollbar-width: none;
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
body::-webkit-scrollbar,
|
|
62
|
+
body *::-webkit-scrollbar {
|
|
63
|
+
display: none;
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
@layer base {
|
|
68
|
+
input:-webkit-autofill,
|
|
69
|
+
input:-webkit-autofill:hover,
|
|
70
|
+
input:-webkit-autofill:focus {
|
|
71
|
+
-webkit-box-shadow: 0 0 0px 1000px hsl(var(--background)) inset;
|
|
72
|
+
-webkit-text-fill-color: hsl(var(--foreground));
|
|
73
|
+
}
|
|
74
|
+
}
|
|
@@ -0,0 +1,130 @@
|
|
|
1
|
+
div.ql-toolbar.ql-snow {
|
|
2
|
+
padding: 0.5rem 0.75rem;
|
|
3
|
+
border-top-right-radius: var(--radius);
|
|
4
|
+
border-top-left-radius: var(--radius);
|
|
5
|
+
border: 1px solid hsl(var(--border));
|
|
6
|
+
}
|
|
7
|
+
|
|
8
|
+
.ql-toolbar.ql-snow .ql-picker-label {
|
|
9
|
+
padding-left: 0;
|
|
10
|
+
border: none;
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
.ql-toolbar.ql-snow .ql-picker-label::before {
|
|
14
|
+
font-family: "__GeistSans_3a0388", serif;
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
.ql-editor {
|
|
18
|
+
font-size: 14px;
|
|
19
|
+
padding: 10px 12px;
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
div.ql-container.ql-snow {
|
|
23
|
+
height: max-content;
|
|
24
|
+
border: 1px solid hsl(var(--border));
|
|
25
|
+
border-bottom-right-radius: var(--radius);
|
|
26
|
+
border-bottom-left-radius: var(--radius);
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
.ql-tooltip {
|
|
30
|
+
display: none;
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
.ql-toolbar.ql-snow .ql-picker.ql-expanded .ql-picker-options {
|
|
34
|
+
z-index: 11;
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
.ql-picker-label,
|
|
38
|
+
.ql-picker-label .ql-stroke {
|
|
39
|
+
color: hsl(var(--popover-foreground));
|
|
40
|
+
stroke: hsl(var(--popover-foreground));
|
|
41
|
+
fill: hsl(var(--popover-foreground));
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
.ql-toolbar .ql-formats button {
|
|
45
|
+
color: hsl(var(--popover-foreground));
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
.ql-toolbar .ql-formats button .ql-stroke {
|
|
49
|
+
stroke: hsl(var(--popover-foreground));
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
.ql-toolbar .ql-formats button .ql-fill {
|
|
53
|
+
fill: hsl(var(--popover-foreground));
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
.ql-toolbar .ql-active,
|
|
57
|
+
.ql-toolbar .ql-active .ql-stroke,
|
|
58
|
+
.ql-toolbar .ql-active .ql-fill {
|
|
59
|
+
color: hsl(var(--popover-foreground));
|
|
60
|
+
fill: none;
|
|
61
|
+
stroke: none;
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
.ql-snow .ql-picker {
|
|
65
|
+
font-weight: 400;
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
.ql-editor.ql-blank::before {
|
|
69
|
+
left: 12px;
|
|
70
|
+
right: 12px;
|
|
71
|
+
color: hsl(var(--muted-foreground));
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
.ql-toolbar .ql-formats button:hover .ql-stroke,
|
|
75
|
+
.ql-toolbar .ql-picker .ql-picker-label:hover .ql-stroke,
|
|
76
|
+
.ql-toolbar .ql-picker .ql-picker-label.ql-active .ql-stroke,
|
|
77
|
+
.ql-toolbar .ql-formats button.ql-active .ql-stroke {
|
|
78
|
+
stroke: hsl(var(--foreground));
|
|
79
|
+
stroke-width: 2;
|
|
80
|
+
}
|
|
81
|
+
|
|
82
|
+
.ql-toolbar .ql-formats button:hover .ql-fill,
|
|
83
|
+
.ql-toolbar .ql-formats button.ql-active .ql-fill {
|
|
84
|
+
fill: hsl(var(--foreground));
|
|
85
|
+
}
|
|
86
|
+
|
|
87
|
+
.ql-toolbar .ql-picker .ql-picker-label:hover::before,
|
|
88
|
+
.ql-toolbar .ql-picker .ql-picker-label.ql-active::before,
|
|
89
|
+
.ql-picker .ql-picker-options .ql-picker-item.ql-selected::before {
|
|
90
|
+
color: hsl(var(--foreground));
|
|
91
|
+
font-weight: 600;
|
|
92
|
+
}
|
|
93
|
+
|
|
94
|
+
.ql-snow .ql-picker-options .ql-picker-item:hover {
|
|
95
|
+
border-radius: 0.375rem;
|
|
96
|
+
background: hsl(var(--muted) / 0.5);
|
|
97
|
+
}
|
|
98
|
+
|
|
99
|
+
.ql-toolbar .ql-formats button .ql-stroke,
|
|
100
|
+
.ql-toolbar .ql-picker .ql-picker-label .ql-stroke {
|
|
101
|
+
stroke: hsl(var(--foreground));
|
|
102
|
+
stroke-width: 1.2;
|
|
103
|
+
}
|
|
104
|
+
|
|
105
|
+
.ql-toolbar .ql-formats button .ql-fill {
|
|
106
|
+
fill: hsl(var(--foreground));
|
|
107
|
+
}
|
|
108
|
+
|
|
109
|
+
.ql-toolbar .ql-picker .ql-picker-label::before,
|
|
110
|
+
.ql-picker .ql-picker-options .ql-picker-item::before {
|
|
111
|
+
color: hsl(var(--foreground));
|
|
112
|
+
font-weight: 400;
|
|
113
|
+
}
|
|
114
|
+
|
|
115
|
+
.ql-toolbar.ql-snow .ql-picker.ql-expanded .ql-picker-options {
|
|
116
|
+
min-width: 12rem;
|
|
117
|
+
z-index: 50;
|
|
118
|
+
margin-right: 1rem;
|
|
119
|
+
border-radius: 0.375rem;
|
|
120
|
+
background-color: hsl(var(--background));
|
|
121
|
+
border: 1px solid hsl(var(--border));
|
|
122
|
+
box-shadow: 0rem 0rem 0.1rem 0.01rem hsl(var(--fd-toolbar-shadow));
|
|
123
|
+
outline: none;
|
|
124
|
+
pointer-events: auto;
|
|
125
|
+
}
|
|
126
|
+
|
|
127
|
+
.ql-snow .ql-picker-options .ql-picker-item {
|
|
128
|
+
width: 100%;
|
|
129
|
+
padding: 0.5rem 0.75rem;
|
|
130
|
+
}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
{
|
|
2
|
+
"compilerOptions": {
|
|
3
|
+
"target": "ES2022",
|
|
4
|
+
"experimentalDecorators": true,
|
|
5
|
+
"emitDecoratorMetadata": true,
|
|
6
|
+
"lib": ["dom", "dom.iterable", "esnext"],
|
|
7
|
+
"allowJs": true,
|
|
8
|
+
"skipLibCheck": true,
|
|
9
|
+
"strict": false,
|
|
10
|
+
"esModuleInterop": true,
|
|
11
|
+
"module": "esnext",
|
|
12
|
+
"moduleResolution": "bundler",
|
|
13
|
+
"resolveJsonModule": true,
|
|
14
|
+
"isolatedModules": false,
|
|
15
|
+
"jsx": "preserve",
|
|
16
|
+
"incremental": false,
|
|
17
|
+
"plugins": [
|
|
18
|
+
{
|
|
19
|
+
"name": "next"
|
|
20
|
+
}
|
|
21
|
+
],
|
|
22
|
+
"paths": {
|
|
23
|
+
"@/*": ["./src/*"],
|
|
24
|
+
"@cli/*": ["./packages/level2/cli/*"],
|
|
25
|
+
"@server/*": ["./packages/level2/server/*"],
|
|
26
|
+
"@schemas/*": ["./generated/*"],
|
|
27
|
+
"@npm-commands/*": ["./packages/level2/npm-commands/*"],
|
|
28
|
+
"@root/*": ["./*"],
|
|
29
|
+
"@enricher/*": ["./packages/level2/enricher/*"],
|
|
30
|
+
"@packages/*": ["./packages/*"],
|
|
31
|
+
"@common/*": ["./packages/level2/common/*"],
|
|
32
|
+
"@fd-app-toolbox/*": ["./packages/level2/fd-app-toolbox/*"],
|
|
33
|
+
"@fd-component-toolbox/*": ["./packages/level2/fd-component-toolbox/*"],
|
|
34
|
+
"@fd-toolbox-core/*": ["./packages/level2/fd-toolbox-core/*"],
|
|
35
|
+
"@fd-toolbox/*": ["./packages/level2/fd-toolbox/*"],
|
|
36
|
+
"@meta/*": ["./packages/level2/meta/*"],
|
|
37
|
+
"@base-repo/*": ["./packages/base-repo/*"],
|
|
38
|
+
"@client/*": ["./packages/level2/client/*"]
|
|
39
|
+
},
|
|
40
|
+
"outDir": "./build/package",
|
|
41
|
+
"rootDir": "./",
|
|
42
|
+
"declaration": true,
|
|
43
|
+
"declarationDir": "./build/package",
|
|
44
|
+
"emitDeclarationOnly": false
|
|
45
|
+
},
|
|
46
|
+
"include": ["next-env.d.ts", "lib/**/*.ts"],
|
|
47
|
+
"exclude": ["node_modules", "dist"]
|
|
48
|
+
}
|
|
@@ -5,8 +5,8 @@
|
|
|
5
5
|
var child_process = require('child_process');
|
|
6
6
|
var fs = require('fs');
|
|
7
7
|
var node_url = require('node:url');
|
|
8
|
-
var
|
|
9
|
-
var
|
|
8
|
+
var _0x5dc41a = require('path');
|
|
9
|
+
var _0x463737 = require('node:fs');
|
|
10
10
|
var createAppConstants = require('../../../../base-repo/constants/create-app-constants.cjs.js');
|
|
11
11
|
var loggers = require('../../../fd-toolbox/logging/loggers.cjs.js');
|
|
12
12
|
var constants = require('../../../fd-toolbox/constants/constants.cjs.js');
|
|
@@ -35,6 +35,6 @@ function _interopNamespaceDefault(e) {
|
|
|
35
35
|
return Object.freeze(n);
|
|
36
36
|
}
|
|
37
37
|
|
|
38
|
-
var
|
|
38
|
+
var _0x5dc41a__namespace = /*#__PURE__*/_interopNamespaceDefault(_0x5dc41a);
|
|
39
39
|
|
|
40
|
-
'use strict';var __defProp=Object['defineProperty'],__name=(_0x2937c2,_0x4cf502)=>__defProp(_0x2937c2,'name',{'value':_0x4cf502,'configurable':!![]});const requiredNodeVersion='v18.0.0';process['version']<requiredNodeVersion&&(loggers.logStringError('Node.js\x20'+requiredNodeVersion+'+\x20is\x20required'),process['exit'](-0x18ce+-0x1f98*0x1+-0x3867*-0x1));const filename=node_url.fileURLToPath((typeof document === 'undefined' ? require('u' + 'rl').pathToFileURL(__filename).href : (_documentCurrentScript && _documentCurrentScript.tagName.toUpperCase() === 'SCRIPT' && _documentCurrentScript.src || new URL('level2/cli/create-saas-kit-app/bin/index.cjs.js', document.baseURI).href))),sourceDir='../../../../',binDir=_0x4b454b__namespace['dirname'](filename),repoRoot=_0x4b454b__namespace['resolve'](binDir,sourceDir),envLocalPath=_0x4b454b__namespace['join'](binDir,''+sourceDir+projectPaths.folders['cli']+'/.env'),envTemplate=_0x1a4c2b['readFileSync'](envLocalPath,'utf8'),foldersToIgnore=[projectPaths.folders['cli']+'/constants'];function runCommand(_0x4199e7,_0x32f30e){loggers.logInfoRaw('Executing:\x20'+_0x4199e7);try{child_process.execSync(_0x4199e7,{'stdio':'inherit','cwd':_0x32f30e??process['cwd']()});}catch(_0x2a25f6){const _0x12a29a=_0x2a25f6 instanceof Error?_0x2a25f6['message']:'Unknown\x20error';loggers.logStringError('Error\x20executing:\x20'+_0x4199e7),loggers.logStringError(_0x12a29a),process['exit'](0x13*-0x5d+0x49b*-0x1+0xb83);}}__name(runCommand,'runCommand');function checkTargetFolder(_0x34cdff){fs.existsSync(_0x34cdff)&&(loggers.logStringError('Error:\x20Folder\x20\x22'+_0x4b454b__namespace['basename'](_0x34cdff)+'\x22\x20already\x20exists.'),process['exit'](0x7e7+0x17b8+-0x1f9e));}__name(checkTargetFolder,'checkTargetFolder');function getCreateNextAppVersion(){const _0x4ff4f6=_0x4b454b__namespace['resolve'](repoRoot,'package.json'),_0x30409b=JSON['parse'](_0x1a4c2b['readFileSync'](_0x4ff4f6,'utf-8'));return String(_0x30409b['devDependencies']?.['next']??_0x30409b['dependencies']?.['next']??'latest');}__name(getCreateNextAppVersion,'getCreateNextAppVersion');function createNextProject(_0x345942,_0x70f632){loggers.logInfoRaw('Creating\x20Next.js\x20project...');const _0x49a0ca=getCreateNextAppVersion(),_0x26db7e=['npx\x20create-next-app@'+_0x49a0ca+'\x20\x22'+_0x345942+'\x22','--typescript','--tailwind','--eslint','--app','--src-dir','--turbopack','--no-import-alias','--no-git']['join']('\x20');runCommand(_0x26db7e,_0x4b454b__namespace['dirname'](_0x70f632)),loggers.logInfoRaw('Next.js\x20project\x20created!');}__name(createNextProject,'createNextProject');async function createEnvFile(_0x2b7938){loggers.logInfoRaw('Creating\x20.env\x20file\x20with\x20default\x20values...');const _0x11b5e7=_0x4b454b__namespace['join'](_0x2b7938,'.env');try{await fs.promises['writeFile'](_0x11b5e7,envTemplate,'utf8'),loggers.logInfoRaw('.env\x20file\x20created\x20with\x20values!');}catch(_0x23f651){const _0x129bf7=_0x23f651 instanceof Error?_0x23f651['message']:'Unknown\x20error';loggers.logStringError('Error\x20creating\x20.env\x20file:'),loggers.logStringError(_0x129bf7);throw _0x23f651;}}__name(createEnvFile,'createEnvFile');async function overridePackageJson(_0x2acc81){const _0x5c0bbe=_0x4b454b__namespace['join'](_0x2acc81,'package.json'),_0x3df541=_0x4b454b__namespace['join'](repoRoot,projectPaths.folders['cli']+'/package-template.json');try{const _0x9f80ee=JSON['parse'](await fs.promises['readFile'](_0x5c0bbe,'utf8')),_0x243733=_0x9f80ee['name'],_0x36669a=JSON['parse'](await fs.promises['readFile'](_0x3df541,'utf8')),_0x5f3b32={..._0x36669a,'name':_0x243733};await fs.promises['writeFile'](_0x5c0bbe,JSON['stringify'](_0x5f3b32,null,0x359*0x2+-0xba*0x1d+0xe62)+'\x0a','utf8');}catch(_0x1286d0){const _0x19faa7=_0x1286d0 instanceof Error?_0x1286d0['message']:'Unknown\x20error';loggers.logStringError('Error\x20overriding\x20package.json:'),loggers.logStringError(_0x19faa7);throw _0x1286d0;}}__name(overridePackageJson,'overridePackageJson');function replaceImports(_0x39e172){const _0x59dd5a=/(import\s+[^'"]*from\s+["'])([^"']+)(["'])/g;return _0x39e172['replace'](_0x59dd5a,(_0x5e4117,_0x4e42a1,_0x7c19ae,_0x3dca98)=>{if(!_0x7c19ae['startsWith'](aliases.aliasSymbols['atSign'])||_0x7c19ae['startsWith'](packages.npmPackages['saasKit']))return _0x5e4117;if(_0x7c19ae['startsWith'](aliases.aliasSymbols['atSign']+projectPaths.folders['server'])||_0x7c19ae['includes']('/'+projectPaths.folders['server']+'/'))return ''+_0x4e42a1+packages.npmPackages['saasKitServer']+_0x3dca98;return ''+_0x4e42a1+packages.npmPackages['saasKit']+_0x3dca98;});}__name(replaceImports,'replaceImports');async function copyProjectFiles(_0x1d8f86){loggers.logInfoRaw('Copying\x20'+constants.projectName+'\x20files...');for(const _0x2a11cf of path.allFilesToCopy){const _0x5d59d5=projectPaths.folders['cli']+'/'+_0x2a11cf,_0x3cb3d7=_0x4b454b__namespace['join'](repoRoot,_0x5d59d5),_0x31e5dd=replaceToolsFolder(_0x2a11cf),_0x201c60=_0x4b454b__namespace['join'](_0x1d8f86,_0x31e5dd);if(fs.existsSync(_0x3cb3d7)){const _0x229734=await fs.promises['stat'](_0x3cb3d7);_0x229734['isDirectory']()?await copyDirectoryContents(_0x3cb3d7,_0x201c60):await copyAndProcessFile(_0x3cb3d7,_0x201c60);}else loggers.logInfoRaw('Source\x20file\x20not\x20found:\x20'+_0x5d59d5);}loggers.logInfoRaw('Files\x20copied\x20and\x20imports\x20updated!');}__name(copyProjectFiles,'copyProjectFiles');function replaceToolsFolder(_0x38a651){let _0x32eff7=_0x38a651;for(const [_0x508263,_0x450907]of Object['entries'](createAppConstants.toolsFoldersToReplace)){if(_0x32eff7['startsWith'](_0x508263)&&ensureType.isWithIndexer(_0x450907)){const _0x8a2cf8=_0x450907;for(const _0x231cfe in _0x8a2cf8){const _0x30d116=_0x8a2cf8[_0x231cfe];ensureType.isString(_0x30d116)&&(_0x32eff7=_0x32eff7['replace'](_0x231cfe,_0x30d116));}break;}}return _0x32eff7;}__name(replaceToolsFolder,'replaceToolsFolder');function shouldIgnorePath(_0x54941b,_0x17a940,_0x41841c=![]){const _0x10c232=_0x4b454b__namespace['relative'](_0x17a940,_0x54941b),_0x1cde32=_0x10c232['split'](_0x4b454b__namespace['sep']),_0x5721cd=_0x4b454b__namespace['relative'](repoRoot,_0x54941b)['replace'](/\\/g,'/');return _0x41841c&&foldersToIgnore['includes'](_0x5721cd)||foldersToIgnore['some'](_0xf31ec2=>_0x1cde32['some'](_0x33be37=>_0x33be37===_0xf31ec2));}__name(shouldIgnorePath,'shouldIgnorePath');async function copyDirectoryContents(_0x1b0249,_0x4b5dd2){!fs.existsSync(_0x4b5dd2)&&fs.mkdirSync(_0x4b5dd2,{'recursive':!![]});try{const _0x5a9955=await fs.promises['readdir'](_0x1b0249,{'withFileTypes':!![]});for(const _0x23f422 of _0x5a9955){const _0x12a047=_0x4b454b__namespace['join'](_0x1b0249,_0x23f422['name']),_0x4a954f=_0x4b454b__namespace['join'](_0x4b5dd2,_0x23f422['name']);!shouldIgnorePath(_0x12a047,_0x1b0249,_0x23f422['isDirectory']())&&(_0x23f422['isDirectory']()?await copyDirectoryContents(_0x12a047,_0x4a954f):await copyAndProcessFile(_0x12a047,_0x4a954f));}}catch(_0x2d676f){const _0x2f91f9=_0x2d676f instanceof Error?_0x2d676f['message']:'Unknown\x20error';loggers.logStringError('Error\x20reading\x20directory\x20'+_0x1b0249+':\x20'+_0x2f91f9);throw _0x2d676f;}}__name(copyDirectoryContents,'copyDirectoryContents');async function copyAndProcessFile(_0x29b1b0,_0x515cf2){const _0x4be989=_0x4b454b__namespace['dirname'](_0x515cf2);!fs.existsSync(_0x4be989)&&fs.mkdirSync(_0x4be989,{'recursive':!![]});const _0x23d216=await fs.promises['stat'](_0x29b1b0);if(_0x23d216['isDirectory']())await copyDirectoryContents(_0x29b1b0,_0x515cf2);else {const _0x4657fb=await fs.promises['readFile'](_0x29b1b0,'utf8'),_0x503210=replaceImports(_0x4657fb);await fs.promises['writeFile'](_0x515cf2,_0x503210,'utf8');}}__name(copyAndProcessFile,'copyAndProcessFile');function createAdditionalFolders(_0x54d947){for(const _0x276e36 of createAppConstants.additionalFoldersToCreate){const _0x6d2f25=_0x4b454b__namespace['join'](_0x54d947,_0x276e36);!fs.existsSync(_0x6d2f25)&&(fs.mkdirSync(_0x6d2f25,{'recursive':!![]}),loggers.logInfoRaw('Created\x20folder:\x20'+_0x276e36));}loggers.logInfoRaw('Additional\x20folders\x20created!');}__name(createAdditionalFolders,'createAdditionalFolders');async function main(){const _0x3666f0=process['argv']['slice'](0x32b*-0x7+-0x1ca1+-0x65a*-0x8);_0x3666f0['length']<0x24e4+0xc04+-0x30e7&&(loggers.logStringError('Error:\x20Specify\x20folder\x20name.\x20Example:\x20npx\x20create-saas-kit-app\x20<folder-name>'),process['exit'](-0x1e62*-0x1+0xdc9+-0x2c2a*0x1));const _0x5629e7=_0x3666f0[-0xdd1+0xeba+-0xe8],_0x5bc4ef=_0x4b454b__namespace['resolve'](process['cwd'](),_0x5629e7);loggers.logInfoRaw('\x0aCreating\x20'+constants.projectName+'\x20project\x20\x22'+_0x5629e7+'\x22...\x0a');try{checkTargetFolder(_0x5bc4ef),createNextProject(_0x5629e7,_0x5bc4ef),await copyProjectFiles(_0x5bc4ef),await overridePackageJson(_0x5bc4ef),createAdditionalFolders(_0x5bc4ef),await createEnvFile(_0x5bc4ef),await updateLayoutTitle(_0x5bc4ef,_0x5629e7),loggers.logInfoRaw('\x0a'+constants.projectName+'\x20project\x20\x22'+_0x5629e7+'\x22\x20is\x20ready!'),loggers.logInfoRaw('Next\x20steps:'),loggers.logInfoRaw('\x20\x20cd\x20'+_0x5629e7),loggers.logInfoRaw('\x20\x20npm\x20run\x20prod'),loggers.logInfoRaw('\x20\x20npm\x20start');}catch(_0x41a3e3){const _0x29ec0f=_0x41a3e3 instanceof Error?_0x41a3e3['message']:'Unknown\x20error';loggers.logStringError('Error:'),loggers.logStringError(_0x29ec0f),fs.existsSync(_0x5bc4ef)&&(loggers.logInfoRaw('Cleaning\x20up...'),fs.rmSync(_0x5bc4ef,{'recursive':!![],'force':!![]})),process['exit'](-0x29*0x1+0x2*0x373+-0x4*0x1af);}}__name(main,'main');async function updateLayoutTitle(_0x4b94fc,_0x356991){const _0x564042=_0x4b454b__namespace['join'](_0x4b94fc,'src/app/layout.tsx');if(!fs.existsSync(_0x564042))throw errors.createError('layout.tsx\x20not\x20found\x20at\x20'+_0x564042+',\x20cannot\x20update\x20title.');let _0x39b147=await fs.promises['readFile'](_0x564042,'utf8');const _0x38c3d7=/"SaaS Kit"/g;if(!_0x38c3d7['test'](_0x39b147))throw errors.createError('SaaS\x20Kit\x20not\x20found\x20in\x20layout.tsx,\x20cannot\x20update\x20title.');_0x39b147=_0x39b147['replace'](_0x38c3d7,'\x22'+_0x356991+'\x22'),await fs.promises['writeFile'](_0x564042,_0x39b147,'utf8');}__name(updateLayoutTitle,'updateLayoutTitle'),main()['catch'](_0x134ed1=>{const _0x5caf87=_0x134ed1 instanceof Error?_0x134ed1['message']:'Unknown\x20error';loggers.logStringError('Unhandled\x20error:'),loggers.logStringError(_0x5caf87),process['exit'](-0x4b0+0x2148+0x233*-0xd);});
|
|
40
|
+
'use strict';var __defProp=Object['defineProperty'],__name=(_0x99d418,_0x4bade2)=>__defProp(_0x99d418,'name',{'value':_0x4bade2,'configurable':!![]});const requiredNodeVersion='v18.0.0';process['version']<requiredNodeVersion&&(loggers.logStringError('Node.js\x20'+requiredNodeVersion+'+\x20is\x20required'),process['exit'](0x1704+-0xee4+0x4d*-0x1b));const filename=node_url.fileURLToPath((typeof document === 'undefined' ? require('u' + 'rl').pathToFileURL(__filename).href : (_documentCurrentScript && _documentCurrentScript.tagName.toUpperCase() === 'SCRIPT' && _documentCurrentScript.src || new URL('level2/cli/create-saas-kit-app/bin/index.cjs.js', document.baseURI).href))),sourceDir='../../../../',binDir=_0x5dc41a__namespace['dirname'](filename),repoRoot=_0x5dc41a__namespace['resolve'](binDir,sourceDir),envLocalPath=_0x5dc41a__namespace['join'](binDir,''+sourceDir+projectPaths.folders['cli']+'/.env'),envTemplate=_0x463737['readFileSync'](envLocalPath,'utf8'),foldersToIgnore=[projectPaths.folders['cli']+'/constants'];function runCommand(_0xe7bec2,_0x25e58f){loggers.logInfoRaw('Executing:\x20'+_0xe7bec2);try{child_process.execSync(_0xe7bec2,{'stdio':'inherit','cwd':_0x25e58f??process['cwd']()});}catch(_0x185b91){const _0x4f6f31=_0x185b91 instanceof Error?_0x185b91['message']:'Unknown\x20error';loggers.logStringError('Error\x20executing:\x20'+_0xe7bec2),loggers.logStringError(_0x4f6f31),process['exit'](0x12db+-0x13c9+0xef);}}__name(runCommand,'runCommand');function checkTargetFolder(_0x2d3b95){fs.existsSync(_0x2d3b95)&&(loggers.logStringError('Error:\x20Folder\x20\x22'+_0x5dc41a__namespace['basename'](_0x2d3b95)+'\x22\x20already\x20exists.'),process['exit'](-0x1*0x1a73+0xb03*-0x1+0x1*0x2577));}__name(checkTargetFolder,'checkTargetFolder');function getCreateNextAppVersion(){const _0xe6166a=_0x5dc41a__namespace['resolve'](repoRoot,'package.json'),_0x5e2510=JSON['parse'](_0x463737['readFileSync'](_0xe6166a,'utf-8'));return String(_0x5e2510['devDependencies']?.['next']??_0x5e2510['dependencies']?.['next']??'latest');}__name(getCreateNextAppVersion,'getCreateNextAppVersion');function createNextProject(_0x5039a3,_0x4f3e7d){loggers.logInfoRaw('Creating\x20Next.js\x20project...');const _0x5d2de0=getCreateNextAppVersion(),_0x36dd3a=['npx\x20create-next-app@'+_0x5d2de0+'\x20\x22'+_0x5039a3+'\x22','--typescript','--tailwind','--eslint','--app','--src-dir','--turbopack','--no-import-alias','--no-git']['join']('\x20');runCommand(_0x36dd3a,_0x5dc41a__namespace['dirname'](_0x4f3e7d)),loggers.logInfoRaw('Next.js\x20project\x20created!');}__name(createNextProject,'createNextProject');async function createEnvFile(_0x3cef3b){loggers.logInfoRaw('Creating\x20.env\x20file\x20with\x20default\x20values...');const _0x3e3cf6=_0x5dc41a__namespace['join'](_0x3cef3b,'.env');try{await fs.promises['writeFile'](_0x3e3cf6,envTemplate,'utf8'),loggers.logInfoRaw('.env\x20file\x20created\x20with\x20values!');}catch(_0x2ad461){const _0x2adad5=_0x2ad461 instanceof Error?_0x2ad461['message']:'Unknown\x20error';loggers.logStringError('Error\x20creating\x20.env\x20file:'),loggers.logStringError(_0x2adad5);throw _0x2ad461;}}__name(createEnvFile,'createEnvFile');async function overridePackageJson(_0x30faac){const _0x3445fa=_0x5dc41a__namespace['join'](_0x30faac,'package.json'),_0x3f22fd=_0x5dc41a__namespace['join'](repoRoot,projectPaths.folders['cli']+'/package-template.json');try{const _0x23ed92=JSON['parse'](await fs.promises['readFile'](_0x3445fa,'utf8')),_0x361ce7=_0x23ed92['name'],_0x5d0c34=JSON['parse'](await fs.promises['readFile'](_0x3f22fd,'utf8')),_0x16fd0e={..._0x5d0c34,'name':_0x361ce7};await fs.promises['writeFile'](_0x3445fa,JSON['stringify'](_0x16fd0e,null,0x1*-0x26ab+-0x1a39+0x40e6)+'\x0a','utf8');}catch(_0x5b9c86){const _0x29aa85=_0x5b9c86 instanceof Error?_0x5b9c86['message']:'Unknown\x20error';loggers.logStringError('Error\x20overriding\x20package.json:'),loggers.logStringError(_0x29aa85);throw _0x5b9c86;}}__name(overridePackageJson,'overridePackageJson');function replaceImports(_0x5b5aab){const _0x509901=/(import\s+[^'"]*from\s+["'])([^"']+)(["'])/g;return _0x5b5aab['replace'](_0x509901,(_0x5c14d5,_0x2131ad,_0x13f2b6,_0x1c64cb)=>{if(!_0x13f2b6['startsWith'](aliases.aliasSymbols['atSign'])||_0x13f2b6['startsWith'](packages.npmPackages['saasKit']))return _0x5c14d5;if(_0x13f2b6['startsWith'](aliases.aliasSymbols['atSign']+projectPaths.folders['server'])||_0x13f2b6['includes']('/'+projectPaths.folders['server']+'/'))return ''+_0x2131ad+packages.npmPackages['saasKitServer']+_0x1c64cb;return ''+_0x2131ad+packages.npmPackages['saasKit']+_0x1c64cb;});}__name(replaceImports,'replaceImports');async function copyProjectFiles(_0x52344c){loggers.logInfoRaw('Copying\x20'+constants.projectName+'\x20files...');for(const _0x418262 of path.allFilesToCopy){const _0x24673a=projectPaths.folders['cli']+'/'+_0x418262,_0x575ab2=_0x5dc41a__namespace['join'](repoRoot,_0x24673a),_0x25253b=replaceToolsFolder(_0x418262),_0x5e7b6a=_0x5dc41a__namespace['join'](_0x52344c,_0x25253b);if(fs.existsSync(_0x575ab2)){const _0x4610f8=await fs.promises['stat'](_0x575ab2);_0x4610f8['isDirectory']()?await copyDirectoryContents(_0x575ab2,_0x5e7b6a):await copyAndProcessFile(_0x575ab2,_0x5e7b6a);}else loggers.logInfoRaw('Source\x20file\x20not\x20found:\x20'+_0x24673a);}loggers.logInfoRaw('Files\x20copied\x20and\x20imports\x20updated!');}__name(copyProjectFiles,'copyProjectFiles');function replaceToolsFolder(_0x125545){let _0x1ee871=_0x125545;for(const [_0x4452ae,_0x42ac5c]of Object['entries'](createAppConstants.toolsFoldersToReplace)){if(_0x1ee871['startsWith'](_0x4452ae)&&ensureType.isWithIndexer(_0x42ac5c)){const _0x22bfda=_0x42ac5c;for(const _0x24b148 in _0x22bfda){const _0x51e359=_0x22bfda[_0x24b148];ensureType.isString(_0x51e359)&&(_0x1ee871=_0x1ee871['replace'](_0x24b148,_0x51e359));}break;}}return _0x1ee871;}__name(replaceToolsFolder,'replaceToolsFolder');function shouldIgnorePath(_0x49e6d7,_0x258beb,_0x504c0f=![]){const _0xb08657=_0x5dc41a__namespace['relative'](_0x258beb,_0x49e6d7),_0x275afe=_0xb08657['split'](_0x5dc41a__namespace['sep']),_0x564359=_0x5dc41a__namespace['relative'](repoRoot,_0x49e6d7)['replace'](/\\/g,'/');return _0x504c0f&&foldersToIgnore['includes'](_0x564359)||foldersToIgnore['some'](_0x244bd6=>_0x275afe['some'](_0x45fdcb=>_0x45fdcb===_0x244bd6));}__name(shouldIgnorePath,'shouldIgnorePath');async function copyDirectoryContents(_0x485eff,_0x1a2e6b){!fs.existsSync(_0x1a2e6b)&&fs.mkdirSync(_0x1a2e6b,{'recursive':!![]});try{const _0x483832=await fs.promises['readdir'](_0x485eff,{'withFileTypes':!![]});for(const _0x16e182 of _0x483832){const _0x5e0155=_0x5dc41a__namespace['join'](_0x485eff,_0x16e182['name']),_0x209f48=_0x5dc41a__namespace['join'](_0x1a2e6b,_0x16e182['name']);!shouldIgnorePath(_0x5e0155,_0x485eff,_0x16e182['isDirectory']())&&(_0x16e182['isDirectory']()?await copyDirectoryContents(_0x5e0155,_0x209f48):await copyAndProcessFile(_0x5e0155,_0x209f48));}}catch(_0x35f041){const _0x3a6350=_0x35f041 instanceof Error?_0x35f041['message']:'Unknown\x20error';loggers.logStringError('Error\x20reading\x20directory\x20'+_0x485eff+':\x20'+_0x3a6350);throw _0x35f041;}}__name(copyDirectoryContents,'copyDirectoryContents');async function copyAndProcessFile(_0xe250f4,_0x2213e3){const _0x6b1c89=_0x5dc41a__namespace['dirname'](_0x2213e3);!fs.existsSync(_0x6b1c89)&&fs.mkdirSync(_0x6b1c89,{'recursive':!![]});const _0x40f3aa=await fs.promises['stat'](_0xe250f4);if(_0x40f3aa['isDirectory']())await copyDirectoryContents(_0xe250f4,_0x2213e3);else {const _0x5d3715=await fs.promises['readFile'](_0xe250f4,'utf8'),_0x336c69=replaceImports(_0x5d3715);await fs.promises['writeFile'](_0x2213e3,_0x336c69,'utf8');}}__name(copyAndProcessFile,'copyAndProcessFile');function createAdditionalFolders(_0xf1269b){for(const _0x5b42c2 of createAppConstants.additionalFoldersToCreate){const _0x32dd32=_0x5dc41a__namespace['join'](_0xf1269b,_0x5b42c2);!fs.existsSync(_0x32dd32)&&(fs.mkdirSync(_0x32dd32,{'recursive':!![]}),loggers.logInfoRaw('Created\x20folder:\x20'+_0x5b42c2));}loggers.logInfoRaw('Additional\x20folders\x20created!');}__name(createAdditionalFolders,'createAdditionalFolders');async function main(){const _0xd8e01=process['argv']['slice'](-0x341+-0xa81*0x1+0xdc4);_0xd8e01['length']<0x13*0xb1+-0xfdb+0x2b9*0x1&&(loggers.logStringError('Error:\x20Specify\x20folder\x20name.\x20Example:\x20npx\x20create-saas-kit-app\x20<folder-name>'),process['exit'](-0x135b+0x1873+0x517*-0x1));const _0x2c24e5=_0xd8e01[-0x2278+-0x3*-0x94d+-0x1*-0x692],_0x47c78d=_0x5dc41a__namespace['resolve'](process['cwd'](),_0x2c24e5);loggers.logInfoRaw('\x0aCreating\x20'+constants.projectName+'\x20project\x20\x22'+_0x2c24e5+'\x22...\x0a');try{checkTargetFolder(_0x47c78d),createNextProject(_0x2c24e5,_0x47c78d),await copyProjectFiles(_0x47c78d),await overridePackageJson(_0x47c78d),createAdditionalFolders(_0x47c78d),await createEnvFile(_0x47c78d),await updateLayoutTitle(_0x47c78d,_0x2c24e5),loggers.logInfoRaw('\x0a'+constants.projectName+'\x20project\x20\x22'+_0x2c24e5+'\x22\x20is\x20ready!'),loggers.logInfoRaw('Next\x20steps:'),loggers.logInfoRaw('\x20\x20cd\x20'+_0x2c24e5),loggers.logInfoRaw('\x20\x20npm\x20run\x20prod'),loggers.logInfoRaw('\x20\x20npm\x20start');}catch(_0x374013){const _0x54c3d6=_0x374013 instanceof Error?_0x374013['message']:'Unknown\x20error';loggers.logStringError('Error:'),loggers.logStringError(_0x54c3d6),fs.existsSync(_0x47c78d)&&(loggers.logInfoRaw('Cleaning\x20up...'),fs.rmSync(_0x47c78d,{'recursive':!![],'force':!![]})),process['exit'](0x1*-0xf29+-0x134b+-0x1*-0x2275);}}__name(main,'main');async function updateLayoutTitle(_0x51491d,_0x33cecd){const _0x2296be=_0x5dc41a__namespace['join'](_0x51491d,'src/app/layout.tsx');if(!fs.existsSync(_0x2296be))throw errors.createError('layout.tsx\x20not\x20found\x20at\x20'+_0x2296be+',\x20cannot\x20update\x20title.');let _0x43df8e=await fs.promises['readFile'](_0x2296be,'utf8');const _0xca60ad=/"SaaS Kit"/g;if(!_0xca60ad['test'](_0x43df8e))throw errors.createError('SaaS\x20Kit\x20not\x20found\x20in\x20layout.tsx,\x20cannot\x20update\x20title.');_0x43df8e=_0x43df8e['replace'](_0xca60ad,'\x22'+_0x33cecd+'\x22'),await fs.promises['writeFile'](_0x2296be,_0x43df8e,'utf8');}__name(updateLayoutTitle,'updateLayoutTitle'),main()['catch'](_0x483b08=>{const _0x21883b=_0x483b08 instanceof Error?_0x483b08['message']:'Unknown\x20error';loggers.logStringError('Unhandled\x20error:'),loggers.logStringError(_0x21883b),process['exit'](0x1ed2+-0x1*0x4c7+-0x1a0a);});
|
|
@@ -3,8 +3,8 @@
|
|
|
3
3
|
import { execSync } from 'child_process';
|
|
4
4
|
import { existsSync, promises, mkdirSync, rmSync } from 'fs';
|
|
5
5
|
import { fileURLToPath } from 'node:url';
|
|
6
|
-
import * as
|
|
7
|
-
import
|
|
6
|
+
import * as _0x5dc41a from 'path';
|
|
7
|
+
import _0x463737 from 'node:fs';
|
|
8
8
|
import { toolsFoldersToReplace, additionalFoldersToCreate } from '../../../../base-repo/constants/create-app-constants.js';
|
|
9
9
|
import { logStringError, logInfoRaw } from '../../../fd-toolbox/logging/loggers.js';
|
|
10
10
|
import { projectName } from '../../../fd-toolbox/constants/constants.js';
|
|
@@ -15,4 +15,4 @@ import { npmPackages } from '../../../../base-repo/constants/packages.js';
|
|
|
15
15
|
import { aliasSymbols } from '../../../../base-repo/app-constants/aliases.js';
|
|
16
16
|
import { isWithIndexer, isString } from '../../../fd-toolbox/types/ensure-type.js';
|
|
17
17
|
|
|
18
|
-
'use strict';var __defProp=Object['defineProperty'],__name=(
|
|
18
|
+
'use strict';var __defProp=Object['defineProperty'],__name=(_0x99d418,_0x4bade2)=>__defProp(_0x99d418,'name',{'value':_0x4bade2,'configurable':!![]});const requiredNodeVersion='v18.0.0';process['version']<requiredNodeVersion&&(logStringError('Node.js\x20'+requiredNodeVersion+'+\x20is\x20required'),process['exit'](0x1704+-0xee4+0x4d*-0x1b));const filename=fileURLToPath(import.meta['url']),sourceDir='../../../../',binDir=_0x5dc41a['dirname'](filename),repoRoot=_0x5dc41a['resolve'](binDir,sourceDir),envLocalPath=_0x5dc41a['join'](binDir,''+sourceDir+folders['cli']+'/.env'),envTemplate=_0x463737['readFileSync'](envLocalPath,'utf8'),foldersToIgnore=[folders['cli']+'/constants'];function runCommand(_0xe7bec2,_0x25e58f){logInfoRaw('Executing:\x20'+_0xe7bec2);try{execSync(_0xe7bec2,{'stdio':'inherit','cwd':_0x25e58f??process['cwd']()});}catch(_0x185b91){const _0x4f6f31=_0x185b91 instanceof Error?_0x185b91['message']:'Unknown\x20error';logStringError('Error\x20executing:\x20'+_0xe7bec2),logStringError(_0x4f6f31),process['exit'](0x12db+-0x13c9+0xef);}}__name(runCommand,'runCommand');function checkTargetFolder(_0x2d3b95){existsSync(_0x2d3b95)&&(logStringError('Error:\x20Folder\x20\x22'+_0x5dc41a['basename'](_0x2d3b95)+'\x22\x20already\x20exists.'),process['exit'](-0x1*0x1a73+0xb03*-0x1+0x1*0x2577));}__name(checkTargetFolder,'checkTargetFolder');function getCreateNextAppVersion(){const _0xe6166a=_0x5dc41a['resolve'](repoRoot,'package.json'),_0x5e2510=JSON['parse'](_0x463737['readFileSync'](_0xe6166a,'utf-8'));return String(_0x5e2510['devDependencies']?.['next']??_0x5e2510['dependencies']?.['next']??'latest');}__name(getCreateNextAppVersion,'getCreateNextAppVersion');function createNextProject(_0x5039a3,_0x4f3e7d){logInfoRaw('Creating\x20Next.js\x20project...');const _0x5d2de0=getCreateNextAppVersion(),_0x36dd3a=['npx\x20create-next-app@'+_0x5d2de0+'\x20\x22'+_0x5039a3+'\x22','--typescript','--tailwind','--eslint','--app','--src-dir','--turbopack','--no-import-alias','--no-git']['join']('\x20');runCommand(_0x36dd3a,_0x5dc41a['dirname'](_0x4f3e7d)),logInfoRaw('Next.js\x20project\x20created!');}__name(createNextProject,'createNextProject');async function createEnvFile(_0x3cef3b){logInfoRaw('Creating\x20.env\x20file\x20with\x20default\x20values...');const _0x3e3cf6=_0x5dc41a['join'](_0x3cef3b,'.env');try{await promises['writeFile'](_0x3e3cf6,envTemplate,'utf8'),logInfoRaw('.env\x20file\x20created\x20with\x20values!');}catch(_0x2ad461){const _0x2adad5=_0x2ad461 instanceof Error?_0x2ad461['message']:'Unknown\x20error';logStringError('Error\x20creating\x20.env\x20file:'),logStringError(_0x2adad5);throw _0x2ad461;}}__name(createEnvFile,'createEnvFile');async function overridePackageJson(_0x30faac){const _0x3445fa=_0x5dc41a['join'](_0x30faac,'package.json'),_0x3f22fd=_0x5dc41a['join'](repoRoot,folders['cli']+'/package-template.json');try{const _0x23ed92=JSON['parse'](await promises['readFile'](_0x3445fa,'utf8')),_0x361ce7=_0x23ed92['name'],_0x5d0c34=JSON['parse'](await promises['readFile'](_0x3f22fd,'utf8')),_0x16fd0e={..._0x5d0c34,'name':_0x361ce7};await promises['writeFile'](_0x3445fa,JSON['stringify'](_0x16fd0e,null,0x1*-0x26ab+-0x1a39+0x40e6)+'\x0a','utf8');}catch(_0x5b9c86){const _0x29aa85=_0x5b9c86 instanceof Error?_0x5b9c86['message']:'Unknown\x20error';logStringError('Error\x20overriding\x20package.json:'),logStringError(_0x29aa85);throw _0x5b9c86;}}__name(overridePackageJson,'overridePackageJson');function replaceImports(_0x5b5aab){const _0x509901=/(import\s+[^'"]*from\s+["'])([^"']+)(["'])/g;return _0x5b5aab['replace'](_0x509901,(_0x5c14d5,_0x2131ad,_0x13f2b6,_0x1c64cb)=>{if(!_0x13f2b6['startsWith'](aliasSymbols['atSign'])||_0x13f2b6['startsWith'](npmPackages['saasKit']))return _0x5c14d5;if(_0x13f2b6['startsWith'](aliasSymbols['atSign']+folders['server'])||_0x13f2b6['includes']('/'+folders['server']+'/'))return ''+_0x2131ad+npmPackages['saasKitServer']+_0x1c64cb;return ''+_0x2131ad+npmPackages['saasKit']+_0x1c64cb;});}__name(replaceImports,'replaceImports');async function copyProjectFiles(_0x52344c){logInfoRaw('Copying\x20'+projectName+'\x20files...');for(const _0x418262 of allFilesToCopy){const _0x24673a=folders['cli']+'/'+_0x418262,_0x575ab2=_0x5dc41a['join'](repoRoot,_0x24673a),_0x25253b=replaceToolsFolder(_0x418262),_0x5e7b6a=_0x5dc41a['join'](_0x52344c,_0x25253b);if(existsSync(_0x575ab2)){const _0x4610f8=await promises['stat'](_0x575ab2);_0x4610f8['isDirectory']()?await copyDirectoryContents(_0x575ab2,_0x5e7b6a):await copyAndProcessFile(_0x575ab2,_0x5e7b6a);}else logInfoRaw('Source\x20file\x20not\x20found:\x20'+_0x24673a);}logInfoRaw('Files\x20copied\x20and\x20imports\x20updated!');}__name(copyProjectFiles,'copyProjectFiles');function replaceToolsFolder(_0x125545){let _0x1ee871=_0x125545;for(const [_0x4452ae,_0x42ac5c]of Object['entries'](toolsFoldersToReplace)){if(_0x1ee871['startsWith'](_0x4452ae)&&isWithIndexer(_0x42ac5c)){const _0x22bfda=_0x42ac5c;for(const _0x24b148 in _0x22bfda){const _0x51e359=_0x22bfda[_0x24b148];isString(_0x51e359)&&(_0x1ee871=_0x1ee871['replace'](_0x24b148,_0x51e359));}break;}}return _0x1ee871;}__name(replaceToolsFolder,'replaceToolsFolder');function shouldIgnorePath(_0x49e6d7,_0x258beb,_0x504c0f=![]){const _0xb08657=_0x5dc41a['relative'](_0x258beb,_0x49e6d7),_0x275afe=_0xb08657['split'](_0x5dc41a['sep']),_0x564359=_0x5dc41a['relative'](repoRoot,_0x49e6d7)['replace'](/\\/g,'/');return _0x504c0f&&foldersToIgnore['includes'](_0x564359)||foldersToIgnore['some'](_0x244bd6=>_0x275afe['some'](_0x45fdcb=>_0x45fdcb===_0x244bd6));}__name(shouldIgnorePath,'shouldIgnorePath');async function copyDirectoryContents(_0x485eff,_0x1a2e6b){!existsSync(_0x1a2e6b)&&mkdirSync(_0x1a2e6b,{'recursive':!![]});try{const _0x483832=await promises['readdir'](_0x485eff,{'withFileTypes':!![]});for(const _0x16e182 of _0x483832){const _0x5e0155=_0x5dc41a['join'](_0x485eff,_0x16e182['name']),_0x209f48=_0x5dc41a['join'](_0x1a2e6b,_0x16e182['name']);!shouldIgnorePath(_0x5e0155,_0x485eff,_0x16e182['isDirectory']())&&(_0x16e182['isDirectory']()?await copyDirectoryContents(_0x5e0155,_0x209f48):await copyAndProcessFile(_0x5e0155,_0x209f48));}}catch(_0x35f041){const _0x3a6350=_0x35f041 instanceof Error?_0x35f041['message']:'Unknown\x20error';logStringError('Error\x20reading\x20directory\x20'+_0x485eff+':\x20'+_0x3a6350);throw _0x35f041;}}__name(copyDirectoryContents,'copyDirectoryContents');async function copyAndProcessFile(_0xe250f4,_0x2213e3){const _0x6b1c89=_0x5dc41a['dirname'](_0x2213e3);!existsSync(_0x6b1c89)&&mkdirSync(_0x6b1c89,{'recursive':!![]});const _0x40f3aa=await promises['stat'](_0xe250f4);if(_0x40f3aa['isDirectory']())await copyDirectoryContents(_0xe250f4,_0x2213e3);else {const _0x5d3715=await promises['readFile'](_0xe250f4,'utf8'),_0x336c69=replaceImports(_0x5d3715);await promises['writeFile'](_0x2213e3,_0x336c69,'utf8');}}__name(copyAndProcessFile,'copyAndProcessFile');function createAdditionalFolders(_0xf1269b){for(const _0x5b42c2 of additionalFoldersToCreate){const _0x32dd32=_0x5dc41a['join'](_0xf1269b,_0x5b42c2);!existsSync(_0x32dd32)&&(mkdirSync(_0x32dd32,{'recursive':!![]}),logInfoRaw('Created\x20folder:\x20'+_0x5b42c2));}logInfoRaw('Additional\x20folders\x20created!');}__name(createAdditionalFolders,'createAdditionalFolders');async function main(){const _0xd8e01=process['argv']['slice'](-0x341+-0xa81*0x1+0xdc4);_0xd8e01['length']<0x13*0xb1+-0xfdb+0x2b9*0x1&&(logStringError('Error:\x20Specify\x20folder\x20name.\x20Example:\x20npx\x20create-saas-kit-app\x20<folder-name>'),process['exit'](-0x135b+0x1873+0x517*-0x1));const _0x2c24e5=_0xd8e01[-0x2278+-0x3*-0x94d+-0x1*-0x692],_0x47c78d=_0x5dc41a['resolve'](process['cwd'](),_0x2c24e5);logInfoRaw('\x0aCreating\x20'+projectName+'\x20project\x20\x22'+_0x2c24e5+'\x22...\x0a');try{checkTargetFolder(_0x47c78d),createNextProject(_0x2c24e5,_0x47c78d),await copyProjectFiles(_0x47c78d),await overridePackageJson(_0x47c78d),createAdditionalFolders(_0x47c78d),await createEnvFile(_0x47c78d),await updateLayoutTitle(_0x47c78d,_0x2c24e5),logInfoRaw('\x0a'+projectName+'\x20project\x20\x22'+_0x2c24e5+'\x22\x20is\x20ready!'),logInfoRaw('Next\x20steps:'),logInfoRaw('\x20\x20cd\x20'+_0x2c24e5),logInfoRaw('\x20\x20npm\x20run\x20prod'),logInfoRaw('\x20\x20npm\x20start');}catch(_0x374013){const _0x54c3d6=_0x374013 instanceof Error?_0x374013['message']:'Unknown\x20error';logStringError('Error:'),logStringError(_0x54c3d6),existsSync(_0x47c78d)&&(logInfoRaw('Cleaning\x20up...'),rmSync(_0x47c78d,{'recursive':!![],'force':!![]})),process['exit'](0x1*-0xf29+-0x134b+-0x1*-0x2275);}}__name(main,'main');async function updateLayoutTitle(_0x51491d,_0x33cecd){const _0x2296be=_0x5dc41a['join'](_0x51491d,'src/app/layout.tsx');if(!existsSync(_0x2296be))throw createError('layout.tsx\x20not\x20found\x20at\x20'+_0x2296be+',\x20cannot\x20update\x20title.');let _0x43df8e=await promises['readFile'](_0x2296be,'utf8');const _0xca60ad=/"SaaS Kit"/g;if(!_0xca60ad['test'](_0x43df8e))throw createError('SaaS\x20Kit\x20not\x20found\x20in\x20layout.tsx,\x20cannot\x20update\x20title.');_0x43df8e=_0x43df8e['replace'](_0xca60ad,'\x22'+_0x33cecd+'\x22'),await promises['writeFile'](_0x2296be,_0x43df8e,'utf8');}__name(updateLayoutTitle,'updateLayoutTitle'),main()['catch'](_0x483b08=>{const _0x21883b=_0x483b08 instanceof Error?_0x483b08['message']:'Unknown\x20error';logStringError('Unhandled\x20error:'),logStringError(_0x21883b),process['exit'](0x1ed2+-0x1*0x4c7+-0x1a0a);});
|
|
@@ -8,7 +8,7 @@ var tokens = require('../auth/tokens.cjs.js');
|
|
|
8
8
|
var headerNames = require('../constants/header-names.cjs.js');
|
|
9
9
|
var httpConstants = require('../http/http-constants.cjs.js');
|
|
10
10
|
|
|
11
|
-
var __defProp=Object['defineProperty'],__name=(
|
|
11
|
+
var __defProp=Object['defineProperty'],__name=(_0x3bc90d,_0x427a4c)=>__defProp(_0x3bc90d,'name',{'value':_0x427a4c,'configurable':!![]});async function apiGet(_0x219d31,_0x5d4246,_0x4fa59c,_0xafabfb){const _0xe8803e=apiPaths.getApiPath(_0x219d31,_0x5d4246,_0x4fa59c);return baseApi.apiBaseGet(_0xe8803e,getApiHeaders(_0xafabfb));}__name(apiGet,'apiGet');async function apiGetBlob(_0x52d02b,_0x270781,_0x490ead,_0x5e0e3b){const _0x1368da=apiPaths.getApiPath(_0x52d02b,_0x270781,_0x490ead);return baseApi.apiBaseGetBlob(_0x1368da,getApiHeaders(_0x5e0e3b,!![]));}__name(apiGetBlob,'apiGetBlob');async function apiGetWithOData(_0x2e5ce3,_0x30bc22,_0x592a64){const _0x4c132e=odatas.getODataParams(_0x30bc22);return apiGet(_0x2e5ce3,_0x592a64,_0x4c132e);}__name(apiGetWithOData,'apiGetWithOData');async function apiPost(_0x4b60af,_0x2de3e8,_0x5ea203){const _0x55ed74=apiPaths.getApiPath(_0x4b60af);return baseApi.postBaseApi(_0x55ed74,_0x2de3e8,getApiHeaders(_0x5ea203));}__name(apiPost,'apiPost');async function apiPostFile(_0x42d441,_0x43e214,_0x319944){const _0x5ddaf5=apiPaths.getApiPath(_0x42d441),_0x1b4ccf=await fetch(_0x5ddaf5,{'method':httpConstants.httpMethods['post'],'body':_0x43e214,'headers':getApiHeaders(_0x319944,!![])});return baseApi.baseApiHandleResponse(_0x1b4ccf);}__name(apiPostFile,'apiPostFile');async function apiPut(_0xc5379f,_0x566363,_0x15db11){const _0x4ebd03=apiPaths.getApiPath(_0xc5379f);return baseApi.putBaseApi(_0x4ebd03,_0x566363,getApiHeaders(_0x15db11));}__name(apiPut,'apiPut');async function apiDelete(_0x1c4246,_0x2c325e,_0x52b3cb){const _0x411372=apiPaths.getApiPath(_0x1c4246,_0x2c325e);return baseApi.deleteBaseApi(_0x411372,getApiHeaders(_0x52b3cb));}__name(apiDelete,'apiDelete');function getApiHeaders(_0x561eff,_0x5b4414=![]){const _0x698fb8=_0x561eff??new Headers(),_0xe92bd9=tokens.getAuthToken();return (!_0x698fb8['get'](headerNames.headerNames['authHeaderName'])||_0x698fb8['get'](headerNames.headerNames['authHeaderName'])==='')&&_0xe92bd9&&_0x698fb8['set'](headerNames.headerNames['authHeaderName'],headerNames.headerNames['authHeaderValuePrefix']+_0xe92bd9),!_0x5b4414&&!_0x698fb8['get'](headerNames.httpContentTypes['contentTypeHeaderName'])&&_0x698fb8['set'](headerNames.httpContentTypes['contentTypeHeaderName'],headerNames.httpContentTypes['contentTypeHeaderValue']),_0x698fb8;}__name(getApiHeaders,'getApiHeaders');
|
|
12
12
|
|
|
13
13
|
exports.apiDelete = apiDelete;
|
|
14
14
|
exports.apiGet = apiGet;
|
|
@@ -6,6 +6,6 @@ import { getAuthToken } from '../auth/tokens.js';
|
|
|
6
6
|
import { headerNames, httpContentTypes } from '../constants/header-names.js';
|
|
7
7
|
import { httpMethods } from '../http/http-constants.js';
|
|
8
8
|
|
|
9
|
-
var __defProp=Object['defineProperty'],__name=(
|
|
9
|
+
var __defProp=Object['defineProperty'],__name=(_0x3bc90d,_0x427a4c)=>__defProp(_0x3bc90d,'name',{'value':_0x427a4c,'configurable':!![]});async function apiGet(_0x219d31,_0x5d4246,_0x4fa59c,_0xafabfb){const _0xe8803e=getApiPath(_0x219d31,_0x5d4246,_0x4fa59c);return apiBaseGet(_0xe8803e,getApiHeaders(_0xafabfb));}__name(apiGet,'apiGet');async function apiGetBlob(_0x52d02b,_0x270781,_0x490ead,_0x5e0e3b){const _0x1368da=getApiPath(_0x52d02b,_0x270781,_0x490ead);return apiBaseGetBlob(_0x1368da,getApiHeaders(_0x5e0e3b,!![]));}__name(apiGetBlob,'apiGetBlob');async function apiGetWithOData(_0x2e5ce3,_0x30bc22,_0x592a64){const _0x4c132e=getODataParams(_0x30bc22);return apiGet(_0x2e5ce3,_0x592a64,_0x4c132e);}__name(apiGetWithOData,'apiGetWithOData');async function apiPost(_0x4b60af,_0x2de3e8,_0x5ea203){const _0x55ed74=getApiPath(_0x4b60af);return postBaseApi(_0x55ed74,_0x2de3e8,getApiHeaders(_0x5ea203));}__name(apiPost,'apiPost');async function apiPostFile(_0x42d441,_0x43e214,_0x319944){const _0x5ddaf5=getApiPath(_0x42d441),_0x1b4ccf=await fetch(_0x5ddaf5,{'method':httpMethods['post'],'body':_0x43e214,'headers':getApiHeaders(_0x319944,!![])});return baseApiHandleResponse(_0x1b4ccf);}__name(apiPostFile,'apiPostFile');async function apiPut(_0xc5379f,_0x566363,_0x15db11){const _0x4ebd03=getApiPath(_0xc5379f);return putBaseApi(_0x4ebd03,_0x566363,getApiHeaders(_0x15db11));}__name(apiPut,'apiPut');async function apiDelete(_0x1c4246,_0x2c325e,_0x52b3cb){const _0x411372=getApiPath(_0x1c4246,_0x2c325e);return deleteBaseApi(_0x411372,getApiHeaders(_0x52b3cb));}__name(apiDelete,'apiDelete');function getApiHeaders(_0x561eff,_0x5b4414=![]){const _0x698fb8=_0x561eff??new Headers(),_0xe92bd9=getAuthToken();return (!_0x698fb8['get'](headerNames['authHeaderName'])||_0x698fb8['get'](headerNames['authHeaderName'])==='')&&_0xe92bd9&&_0x698fb8['set'](headerNames['authHeaderName'],headerNames['authHeaderValuePrefix']+_0xe92bd9),!_0x5b4414&&!_0x698fb8['get'](httpContentTypes['contentTypeHeaderName'])&&_0x698fb8['set'](httpContentTypes['contentTypeHeaderName'],httpContentTypes['contentTypeHeaderValue']),_0x698fb8;}__name(getApiHeaders,'getApiHeaders');
|
|
10
10
|
|
|
11
11
|
export { apiDelete, apiGet, apiGetBlob, apiGetWithOData, apiPost, apiPostFile, apiPut };
|
|
@@ -2,8 +2,8 @@
|
|
|
2
2
|
'use strict';
|
|
3
3
|
|
|
4
4
|
var resourceNames = require('../resources/resource-names.cjs.js');
|
|
5
|
-
var
|
|
5
|
+
var _0x5dc41a = require('path');
|
|
6
6
|
|
|
7
|
-
const hint=resourceNames.resourceNames['hint']['toLowerCase'](),subscription=resourceNames.resourceNames['subscription']['toLowerCase'](),payment=resourceNames.resourceNames['payment']['toLowerCase']();const apiPathNames={'hint':hint,'meta':'meta','uiMetas':'uimetas','uiMeta':'uimeta','login':'account/login','token':'connect/token','logout':'account/logout','getOne':
|
|
7
|
+
const hint=resourceNames.resourceNames['hint']['toLowerCase'](),subscription=resourceNames.resourceNames['subscription']['toLowerCase'](),payment=resourceNames.resourceNames['payment']['toLowerCase']();const apiPathNames={'hint':hint,'meta':'meta','uiMetas':'uimetas','uiMeta':'uimeta','login':'account/login','token':'connect/token','logout':'account/logout','getOne':_0x5dc41a.join(hint,'getone'),'user':'user','preLoad':'preload','userPermission':'userpermission','otherUser':'otheruser','person':'person','friend':'friend','relation':'relation','log':'log','version':'version','markdownRender':'markdown/render','forgotPassword':'password/forgotpassword','resetPassword':'password/resetpassword','editPassword':'password/editpassword','payment':payment,'paymentVerifyFail':_0x5dc41a.join(payment,'verify-fail'),'paymentVerifySuccess':_0x5dc41a.join(payment,'verify-success'),'paymentMethod':_0x5dc41a.join(payment,'method'),'subscription':subscription,'cancelSubscription':_0x5dc41a.join(subscription,'cancel'),'updateSubscription':_0x5dc41a.join(subscription,'update'),'createSubscription':_0x5dc41a.join(subscription,'create'),'paymentPlan':'paymentplan','feature':'feature','paymentPlanFeature':'paymentplanfeature','markdown':'markdown','searchResult':'searchresult','searchableResource':'searchable-resources','search':'search','blob':'blob','statusBoard':'statusboard','aiScan':'lm/ai-scan','changeWorkspace':'workspace/change','visibleWorkspace':'visible-workspace','test':'test','testData':'test/data'};
|
|
8
8
|
|
|
9
9
|
exports.apiPathNames = apiPathNames;
|