@fernir2/saas-kit-cli 0.1.39 → 0.1.40
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/base-repo/app-constants/project-paths.cjs.js +1 -1
- package/base-repo/app-constants/project-paths.js +1 -1
- package/cli/bin/create.ts +5 -2
- package/cli/package-template.json +6 -9
- package/cli/src/app/f/(not-signed-in)/forgot-password/page.tsx +1 -1
- package/cli/src/app/f/(not-signed-in)/reset-password/page.tsx +1 -1
- package/cli/src/app/f/(not-signed-in)/sign-in/page.tsx +1 -1
- package/cli/src/app/f/(not-signed-in)/sign-up/page.tsx +1 -1
- package/cli/src/app/layout.tsx +7 -9
- package/cli/templates/.env-template +12 -0
- package/fd-toolbox/api/api-client.cjs.js +1 -1
- package/fd-toolbox/api/api-client.js +1 -1
- package/fd-toolbox/api/api-path-names.cjs.js +2 -2
- package/fd-toolbox/api/api-paths.cjs.js +1 -1
- package/fd-toolbox/api/api-paths.js +1 -1
- package/fd-toolbox/api/base-api.cjs.js +1 -1
- package/fd-toolbox/api/base-api.js +1 -1
- package/fd-toolbox/auth/login-states.cjs.js +1 -1
- package/fd-toolbox/auth/login-states.js +1 -1
- package/fd-toolbox/auth/session-storage.cjs.js +1 -1
- package/fd-toolbox/auth/session-storage.js +1 -1
- package/fd-toolbox/auth/tokens.cjs.js +1 -1
- package/fd-toolbox/auth/tokens.js +1 -1
- package/fd-toolbox/constants/constants.cjs.js +1 -1
- package/fd-toolbox/constants/constants.js +1 -1
- package/fd-toolbox/enums/enums.cjs.js +1 -1
- package/fd-toolbox/enums/enums.js +1 -1
- package/fd-toolbox/errors/error-handler.cjs.js +1 -1
- package/fd-toolbox/errors/error-handler.js +1 -1
- package/fd-toolbox/errors/errors.cjs.js +1 -1
- package/fd-toolbox/errors/errors.js +1 -1
- package/fd-toolbox/errors/problem-details.cjs.js +1 -1
- package/fd-toolbox/errors/problem-details.js +1 -1
- package/fd-toolbox/functions/value-checking-functions.cjs.js +1 -1
- package/fd-toolbox/functions/value-checking-functions.js +1 -1
- package/fd-toolbox/http/url/urls.cjs.js +1 -1
- package/fd-toolbox/http/url/urls.js +1 -1
- package/fd-toolbox/infra/env-config.cjs.js +2 -2
- package/fd-toolbox/infra/env-config.js +2 -2
- package/fd-toolbox/infra/env-functions.cjs.js +1 -1
- package/fd-toolbox/infra/env-functions.js +1 -1
- package/fd-toolbox/infra/env-schema.cjs.js +2 -2
- package/fd-toolbox/infra/env-schema.js +2 -2
- package/fd-toolbox/infra/env-store.cjs.js +1 -1
- package/fd-toolbox/infra/env-store.js +1 -1
- package/fd-toolbox/lib/environments.cjs.js +1 -1
- package/fd-toolbox/lib/environments.js +1 -1
- package/fd-toolbox/lib/utils.cjs.js +1 -1
- package/fd-toolbox/lib/utils.js +1 -1
- package/fd-toolbox/local-storage/local-storage.cjs.js +1 -1
- package/fd-toolbox/local-storage/local-storage.js +1 -1
- package/fd-toolbox/logging/loggers.cjs.js +1 -1
- package/fd-toolbox/logging/loggers.js +1 -1
- package/fd-toolbox/notifications.cjs.js +2 -2
- package/fd-toolbox/notifications.js +2 -2
- package/fd-toolbox/odata/odata-constants.cjs.js +1 -1
- package/fd-toolbox/odata/odata-constants.js +1 -1
- package/fd-toolbox/odata/odatas.cjs.js +1 -1
- package/fd-toolbox/odata/odatas.js +1 -1
- package/fd-toolbox/odata/services/odata-filters.cjs.js +1 -1
- package/fd-toolbox/odata/services/odata-filters.js +1 -1
- package/fd-toolbox/paths/paths-names.cjs.js +2 -2
- package/fd-toolbox/paths/paths-names.js +1 -1
- package/fd-toolbox/routing/login-routers.cjs.js +1 -1
- package/fd-toolbox/routing/login-routers.js +1 -1
- package/fd-toolbox/routing/paths.cjs.js +1 -1
- package/fd-toolbox/routing/paths.js +1 -1
- package/fd-toolbox/strings/strings-constants.cjs.js +1 -1
- package/fd-toolbox/strings/strings-constants.js +1 -1
- package/fd-toolbox/strings/strings.cjs.js +1 -1
- package/fd-toolbox/strings/strings.js +1 -1
- package/fd-toolbox/types/ensure-type.cjs.js +2 -1
- package/fd-toolbox/types/ensure-type.js +2 -2
- package/fd-toolbox-core/core/name-of.cjs.js +1 -1
- package/fd-toolbox-core/core/name-of.js +1 -1
- package/fd-toolbox-core/types/resource-with-id.cjs.js +1 -1
- package/fd-toolbox-core/types/resource-with-id.js +1 -1
- package/level2/cli/bin/index.cjs.js +1 -1
- package/level2/cli/bin/index.js +1 -1
- package/level2/cli/create/bin/create.cjs.js +4 -4
- package/level2/cli/create/bin/create.js +3 -3
- package/level2/npm-commands/build-npm/path.cjs.js +1 -1
- package/level2/npm-commands/build-npm/path.js +2 -2
- package/package.json +2 -3
|
@@ -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/fd-toolbox','@fd-toolbox-core':'./packages/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/fd-toolbox','@fd-toolbox-core':'./packages/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'](([_0x75502a,_0x40ba02])=>[_0x75502a+'/*',[_0x40ba02+'/*']]));
|
|
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/fd-toolbox','@fd-toolbox-core':'./packages/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/fd-toolbox','@fd-toolbox-core':'./packages/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'](([_0x75502a,_0x40ba02])=>[_0x75502a+'/*',[_0x40ba02+'/*']]));
|
|
3
3
|
|
|
4
4
|
export { aliasSymbols, modulePathAliases, typescriptAliases };
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
var aliasSymbols = require('./alias-symbols.cjs.js');
|
|
5
5
|
var packages = require('../constants/packages.cjs2.js');
|
|
6
6
|
|
|
7
|
-
const folders={'src':'src','baseRepo':'base-repo','cli':'cli','common':'common','docs':'docs','enricher':'enricher','fdAppToolbox':'fd-app-toolbox','fdComponentToolbox':'fd-component-toolbox','fdToolbox':'fd-toolbox','fdToolboxCore':'fd-toolbox-core','flint':'flint','infra':'infra','internalCli':'internal-cli','meta':'meta','npmCommands':'npm-commands','other':'other','server':'server','test':'test','tools':'tools','tools2':'tools2','client':'client','cluster':'cluster','generated':'generated','dist':'dist','lib':'lib','packages':'packages','package':'package','public':'public','build':'build','bin':'bin','buildNpm':'build-npm','genExports':'gen-exports','modules':'modules','generatedTests':'generated-tests','nodeModules':'node_modules','next':'.next','nodeCache':'.node_cache','nx':'.nx','vscode':'.vscode','git':'.git','playwrightReport':'playwright-report','testResults':'test-results','rollup':'rollup','replaceAliases':'replace-aliases','pages':'pages','deploy':'deploy','level2':'level2','monorepo':'monorepo','content':'content','components':'components','app':'app','framework':'framework','api':'api','ci':'ci','jobs':'jobs','web':'web','cliPackage':'cli-package','createSaasKitApp':'create','setup':'setup','husky':'.husky','constants':'constants','configs':'configs','db':'db','internal':'internal','undocumented':'undocumented','stringDuplication':'string-duplication'};const files={'route':'route.ts','metaJson':'meta.json','schema':'schema.ts','schemaDts':'schema.d.ts','schemaJs':'schema.js','crudHandlerMap':'crud-handler-map.ts','tsconfig':'tsconfig.json','tsconfigBase':'tsconfig.base.json','tsconfigResources':'tsconfig.resources.json','tsconfigLint':'tsconfig.lint.json','tsconfigCli':'tsconfig.cli.json','tsconfigServer':'tsconfig.server.json','tailwindConfig':'tailwind.config.ts','packageJson':'package.json','env':'.env','envExample':'.env.example','envStaging':'.env.staging','npmConfig':'.npmrc','nextEnv':'next-env.d.ts','license':'LICENSE','pnpmLock':'pnpm-lock.yaml','indexJs':'index.js','preCommitScript':'pre-commit-script.ts','preCommit':'pre-commit','commitMsg':'commit-msg','packageTemplate':'package-template.json','eslintConfigJs':'eslint.config.js','eslintConfigMjs':'eslint.config.mjs','layout':'layout.tsx','buildInitDb':'build-init-db.ts','duplicationsReportMd':'duplications-report.md'};const projectPaths={'root':'/','src':folders['src'],'app':folders['src']+'/'+folders['app'],'apiV1F':folders['src']+'/'+folders['app']+'/'+folders['api']+'/v1/(f)','lib':folders['lib'],'generated':folders['generated'],'srcComponents':folders['src']+'/'+folders['components'],'saasKitNodeModulesPath':folders['nodeModules']+'/'+packages.npmPackages['saasKit'],'f':folders['src']+'/'+folders['app']+'/f','public':folders['public'],'images':folders['public']+'/images','openApiJson':folders['public']+'/openapi.json','cliCreate':folders['packages']+'/'+folders['level2']+'/'+folders['cli']+'/'+folders['createSaasKitApp']};const nonRootProjectPaths={'currentDir':'./','currentDirRef':'.','parentDirRef':'..','clientFramework':folders['client']+'/'+folders['framework'],'serverFramework':folders['server']+'/'+folders['framework'],'apiHooks':folders['api']+'/hooks','npmCommands':folders['npmCommands'],'server':folders['server'],'serverContent':folders['server']+'/'+folders['content'],'package':folders['package'],'packageCli':folders['cliPackage'],'htmlTemplates':'html-templates','metaServer':folders['meta']+'/'+folders['server'],'toolsNpmCommands':folders['tools']+'/'+folders['npmCommands'],'tools':folders['tools'],'saasKitCliBin':folders['level2']+'/'+folders['cli']+'/'+folders['bin'],'buildPackage':folders['build']+'/'+folders['package'],'buildPackagesTypes':folders['build']+'/'+folders['package']+'/types','buildCliPackage':folders['build']+'/'+folders['cliPackage'],'buildPackagesTypesOutput':folders['build']+'/'+folders['package']+'/types-output','cliConstants':folders['cli']+'/'+folders['constants'],'cliConfigs':folders['cli']+'/'+folders['configs'],'tools2':folders['tools2']};const serverWeb=folders['server']+'/'+folders['web'];const packagesPath={'packagesBaseRepo':folders['packages']+'/'+folders['baseRepo']+'/','packagesCli':folders['packages']+'/'+folders['level2']+'/'+folders['cli']+'/','packagesCommon':folders['packages']+'/'+folders['level2']+'/'+folders['common']+'/','packagesDocs':folders['packages']+'/'+folders['docs']+'/','packagesFdAppToolbox':folders['packages']+'/'+folders['level2']+'/'+folders['fdAppToolbox']+'/','packagesFdComponentToolbox':folders['packages']+'/'+folders['level2']+'/'+folders['fdComponentToolbox']+'/','packagesFdToolbox':folders['packages']+'/'+folders['fdToolbox']+'/','packagesFdToolboxCore':folders['packages']+'/'+folders['fdToolboxCore']+'/','packagesFlint':folders['packages']+'/'+folders['flint']+'/','packagesInfra':folders['packages']+'/'+folders['infra']+'/','packagesInternalCli':folders['packages']+'/'+folders['internalCli']+'/','packagesMeta':folders['packages']+'/'+folders['level2']+'/'+folders['meta']+'/','packagesNpmCommands':folders['packages']+'/'+folders['level2']+'/'+folders['npmCommands']+'/','packagesOther':folders['packages']+'/'+folders['level2']+'/'+folders['other']+'/','packagesServer':folders['packages']+'/'+folders['level2']+'/'+folders['server']+'/','packagesTest':folders['packages']+'/'+folders['test']+'/','packagesClient':folders['packages']+'/'+folders['level2']+'/'+folders['client']+'/','packagesDb':folders['packages']+'/'+folders['level2']+'/'+folders['db']+'/','git':folders['packages']+'/'+folders['baseRepo']+'/'+folders['tools']+'/'+folders['git']+'/','buildNpm':folders['packages']+'/'+folders['level2']+'/'+folders['npmCommands']+'/'+folders['buildNpm']+'/','createSaasKitApp':folders['packages']+'/'+folders['level2']+'/'+folders['cli']+'/'+folders['createSaasKitApp']+'/','packagesEnricher':folders['packages']+'/'+folders['level2']+'/'+folders['enricher']+'/','packagesDocsContent':folders['packages']+'/'+folders['docs']+'/'+folders['content']+'/','apiResponses':folders['packages']+'/'+folders['level2']+'/'+folders['meta']+'/'+serverWeb+'/responses/','apiErrors':folders['packages']+'/'+folders['fdToolbox']+'/'+serverWeb+'/errors/','packagesTools':folders['packages']+'/'+folders['tools']+'/','packagesTools2':folders['packages']+'/'+folders['level2']+'/'+folders['tools2']+'/','packagesCluster':folders['packages']+'/'+folders['cluster']+'/'};const infraCiJobsBase=packagesPath['packagesInfra']+folders['ci']+'/'+folders['jobs'],infraCiSetupBase=packagesPath['packagesInfra']+folders['ci']+'/'+folders['setup'];const generatedPaths={'metaJson':folders['generated']+'/'+files['metaJson'],'tsconfigResources':folders['generated']+'/'+files['tsconfigResources'],'schema':folders['generated']+'/'+files['schema'],'schemaDts':folders['generated']+'/'+files['schemaDts'],'schemaJs':folders['generated']+'/'+files['schemaJs'],'crudHandlerMap':folders['generated']+'/'+files['crudHandlerMap']};const clientPaths={'styles':''+(packagesPath['packagesClient']+'styles'),'components':''+(packagesPath['packagesClient']+folders['components']),'pages':''+(packagesPath['packagesClient']+folders['pages']),'payments':''+(packagesPath['packagesClient']+'payments'),'products':''+(packagesPath['packagesClient']+'products'),'websiteScan':''+(packagesPath['packagesClient']+'website-scan')};const infraPaths={'lintJob':aliasSymbols.aliases['infra']+'/'+folders['ci']+'/'+folders['jobs']+'/lint','buildAndTestJob':aliasSymbols.aliases['infra']+'/'+folders['ci']+'/'+folders['jobs']+'/build-and-test','saasKitTestBuildAndTestJob':aliasSymbols.aliases['infra']+'/'+folders['ci']+'/'+folders['jobs']+'/saas-kit-test-build-and-test','createSaasKitAppTestJob':aliasSymbols.aliases['infra']+'/'+folders['ci']+'/'+folders['jobs']+'/create-saas-kit-app-test','manualCleanupJob':aliasSymbols.aliases['infra']+'/'+folders['ci']+'/'+folders['jobs']+'/manual-cleanup','cleanupScript':aliasSymbols.aliases['infra']+'/'+folders['ci']+'/'+folders['setup']+'/cleanup','setupScript':aliasSymbols.aliases['infra']+'/'+folders['ci']+'/'+folders['setup']+'/setup'};const globPatterns={'tsTsx':'**/*.{ts,tsx}','jsTsJsxTsx':'**/*.{js,ts,jsx,tsx}'};
|
|
7
|
+
const folders={'src':'src','baseRepo':'base-repo','cli':'cli','common':'common','docs':'docs','enricher':'enricher','fdAppToolbox':'fd-app-toolbox','fdComponentToolbox':'fd-component-toolbox','fdToolbox':'fd-toolbox','fdToolboxCore':'fd-toolbox-core','flint':'flint','infra':'infra','internalCli':'internal-cli','meta':'meta','npmCommands':'npm-commands','other':'other','server':'server','test':'test','tools':'tools','tools2':'tools2','client':'client','cluster':'cluster','generated':'generated','dist':'dist','lib':'lib','packages':'packages','package':'package','public':'public','build':'build','bin':'bin','buildNpm':'build-npm','genExports':'gen-exports','modules':'modules','generatedTests':'generated-tests','nodeModules':'node_modules','next':'.next','nodeCache':'.node_cache','nx':'.nx','vscode':'.vscode','git':'.git','playwrightReport':'playwright-report','testResults':'test-results','rollup':'rollup','replaceAliases':'replace-aliases','pages':'pages','deploy':'deploy','level2':'level2','monorepo':'monorepo','content':'content','components':'components','app':'app','framework':'framework','api':'api','ci':'ci','jobs':'jobs','web':'web','cliPackage':'cli-package','createSaasKitApp':'create','setup':'setup','husky':'.husky','constants':'constants','configs':'configs','db':'db','internal':'internal','undocumented':'undocumented','stringDuplication':'string-duplication','templates':'templates'};const files={'route':'route.ts','metaJson':'meta.json','schema':'schema.ts','schemaDts':'schema.d.ts','schemaJs':'schema.js','crudHandlerMap':'crud-handler-map.ts','tsconfig':'tsconfig.json','tsconfigBase':'tsconfig.base.json','tsconfigResources':'tsconfig.resources.json','tsconfigLint':'tsconfig.lint.json','tsconfigCli':'tsconfig.cli.json','tsconfigServer':'tsconfig.server.json','tailwindConfig':'tailwind.config.ts','packageJson':'package.json','env':'.env','envExample':'.env.example','envStaging':'.env.staging','npmConfig':'.npmrc','nextEnv':'next-env.d.ts','license':'LICENSE','pnpmLock':'pnpm-lock.yaml','indexJs':'index.js','preCommitScript':'pre-commit-script.ts','preCommit':'pre-commit','commitMsg':'commit-msg','packageTemplate':'package-template.json','eslintConfigJs':'eslint.config.js','eslintConfigMjs':'eslint.config.mjs','layout':'layout.tsx','buildInitDb':'build-init-db.ts','duplicationsReportMd':'duplications-report.md'};const projectPaths={'root':'/','src':folders['src'],'app':folders['src']+'/'+folders['app'],'apiV1F':folders['src']+'/'+folders['app']+'/'+folders['api']+'/v1/(f)','lib':folders['lib'],'generated':folders['generated'],'srcComponents':folders['src']+'/'+folders['components'],'saasKitNodeModulesPath':folders['nodeModules']+'/'+packages.npmPackages['saasKit'],'f':folders['src']+'/'+folders['app']+'/f','public':folders['public'],'images':folders['public']+'/images','openApiJson':folders['public']+'/openapi.json','cliCreate':folders['packages']+'/'+folders['level2']+'/'+folders['cli']+'/'+folders['createSaasKitApp']};const nonRootProjectPaths={'currentDir':'./','currentDirRef':'.','parentDirRef':'..','clientFramework':folders['client']+'/'+folders['framework'],'serverFramework':folders['server']+'/'+folders['framework'],'apiHooks':folders['api']+'/hooks','npmCommands':folders['npmCommands'],'server':folders['server'],'serverContent':folders['server']+'/'+folders['content'],'package':folders['package'],'packageCli':folders['cliPackage'],'htmlTemplates':'html-templates','metaServer':folders['meta']+'/'+folders['server'],'toolsNpmCommands':folders['tools']+'/'+folders['npmCommands'],'tools':folders['tools'],'saasKitCliBin':folders['level2']+'/'+folders['cli']+'/'+folders['bin'],'buildPackage':folders['build']+'/'+folders['package'],'buildPackagesTypes':folders['build']+'/'+folders['package']+'/types','buildCliPackage':folders['build']+'/'+folders['cliPackage'],'buildPackagesTypesOutput':folders['build']+'/'+folders['package']+'/types-output','cliConstants':folders['cli']+'/'+folders['constants'],'cliConfigs':folders['cli']+'/'+folders['configs'],'tools2':folders['tools2']};const serverWeb=folders['server']+'/'+folders['web'];const packagesPath={'packagesBaseRepo':folders['packages']+'/'+folders['baseRepo']+'/','packagesCli':folders['packages']+'/'+folders['level2']+'/'+folders['cli']+'/','packagesCommon':folders['packages']+'/'+folders['level2']+'/'+folders['common']+'/','packagesDocs':folders['packages']+'/'+folders['docs']+'/','packagesFdAppToolbox':folders['packages']+'/'+folders['level2']+'/'+folders['fdAppToolbox']+'/','packagesFdComponentToolbox':folders['packages']+'/'+folders['level2']+'/'+folders['fdComponentToolbox']+'/','packagesFdToolbox':folders['packages']+'/'+folders['fdToolbox']+'/','packagesFdToolboxCore':folders['packages']+'/'+folders['fdToolboxCore']+'/','packagesFlint':folders['packages']+'/'+folders['flint']+'/','packagesInfra':folders['packages']+'/'+folders['infra']+'/','packagesInternalCli':folders['packages']+'/'+folders['internalCli']+'/','packagesMeta':folders['packages']+'/'+folders['level2']+'/'+folders['meta']+'/','packagesNpmCommands':folders['packages']+'/'+folders['level2']+'/'+folders['npmCommands']+'/','packagesOther':folders['packages']+'/'+folders['level2']+'/'+folders['other']+'/','packagesServer':folders['packages']+'/'+folders['level2']+'/'+folders['server']+'/','packagesTest':folders['packages']+'/'+folders['test']+'/','packagesClient':folders['packages']+'/'+folders['level2']+'/'+folders['client']+'/','packagesDb':folders['packages']+'/'+folders['level2']+'/'+folders['db']+'/','git':folders['packages']+'/'+folders['baseRepo']+'/'+folders['tools']+'/'+folders['git']+'/','buildNpm':folders['packages']+'/'+folders['level2']+'/'+folders['npmCommands']+'/'+folders['buildNpm']+'/','createSaasKitApp':folders['packages']+'/'+folders['level2']+'/'+folders['cli']+'/'+folders['createSaasKitApp']+'/','packagesEnricher':folders['packages']+'/'+folders['level2']+'/'+folders['enricher']+'/','packagesDocsContent':folders['packages']+'/'+folders['docs']+'/'+folders['content']+'/','apiResponses':folders['packages']+'/'+folders['level2']+'/'+folders['meta']+'/'+serverWeb+'/responses/','apiErrors':folders['packages']+'/'+folders['fdToolbox']+'/'+serverWeb+'/errors/','packagesTools':folders['packages']+'/'+folders['tools']+'/','packagesTools2':folders['packages']+'/'+folders['level2']+'/'+folders['tools2']+'/','packagesCluster':folders['packages']+'/'+folders['cluster']+'/'};const infraCiJobsBase=packagesPath['packagesInfra']+folders['ci']+'/'+folders['jobs'],infraCiSetupBase=packagesPath['packagesInfra']+folders['ci']+'/'+folders['setup'];const generatedPaths={'metaJson':folders['generated']+'/'+files['metaJson'],'tsconfigResources':folders['generated']+'/'+files['tsconfigResources'],'schema':folders['generated']+'/'+files['schema'],'schemaDts':folders['generated']+'/'+files['schemaDts'],'schemaJs':folders['generated']+'/'+files['schemaJs'],'crudHandlerMap':folders['generated']+'/'+files['crudHandlerMap']};const clientPaths={'styles':''+(packagesPath['packagesClient']+'styles'),'components':''+(packagesPath['packagesClient']+folders['components']),'pages':''+(packagesPath['packagesClient']+folders['pages']),'payments':''+(packagesPath['packagesClient']+'payments'),'products':''+(packagesPath['packagesClient']+'products'),'websiteScan':''+(packagesPath['packagesClient']+'website-scan')};const infraPaths={'lintJob':aliasSymbols.aliases['infra']+'/'+folders['ci']+'/'+folders['jobs']+'/lint','buildAndTestJob':aliasSymbols.aliases['infra']+'/'+folders['ci']+'/'+folders['jobs']+'/build-and-test','saasKitTestBuildAndTestJob':aliasSymbols.aliases['infra']+'/'+folders['ci']+'/'+folders['jobs']+'/saas-kit-test-build-and-test','createSaasKitAppTestJob':aliasSymbols.aliases['infra']+'/'+folders['ci']+'/'+folders['jobs']+'/create-saas-kit-app-test','manualCleanupJob':aliasSymbols.aliases['infra']+'/'+folders['ci']+'/'+folders['jobs']+'/manual-cleanup','cleanupScript':aliasSymbols.aliases['infra']+'/'+folders['ci']+'/'+folders['setup']+'/cleanup','setupScript':aliasSymbols.aliases['infra']+'/'+folders['ci']+'/'+folders['setup']+'/setup'};const globPatterns={'tsTsx':'**/*.{ts,tsx}','jsTsJsxTsx':'**/*.{js,ts,jsx,tsx}'};
|
|
8
8
|
|
|
9
9
|
exports.clientPaths = clientPaths;
|
|
10
10
|
exports.files = files;
|
|
@@ -2,6 +2,6 @@
|
|
|
2
2
|
import { aliases } from './alias-symbols.js';
|
|
3
3
|
import { npmPackages } from '../constants/packages2.js';
|
|
4
4
|
|
|
5
|
-
const folders={'src':'src','baseRepo':'base-repo','cli':'cli','common':'common','docs':'docs','enricher':'enricher','fdAppToolbox':'fd-app-toolbox','fdComponentToolbox':'fd-component-toolbox','fdToolbox':'fd-toolbox','fdToolboxCore':'fd-toolbox-core','flint':'flint','infra':'infra','internalCli':'internal-cli','meta':'meta','npmCommands':'npm-commands','other':'other','server':'server','test':'test','tools':'tools','tools2':'tools2','client':'client','cluster':'cluster','generated':'generated','dist':'dist','lib':'lib','packages':'packages','package':'package','public':'public','build':'build','bin':'bin','buildNpm':'build-npm','genExports':'gen-exports','modules':'modules','generatedTests':'generated-tests','nodeModules':'node_modules','next':'.next','nodeCache':'.node_cache','nx':'.nx','vscode':'.vscode','git':'.git','playwrightReport':'playwright-report','testResults':'test-results','rollup':'rollup','replaceAliases':'replace-aliases','pages':'pages','deploy':'deploy','level2':'level2','monorepo':'monorepo','content':'content','components':'components','app':'app','framework':'framework','api':'api','ci':'ci','jobs':'jobs','web':'web','cliPackage':'cli-package','createSaasKitApp':'create','setup':'setup','husky':'.husky','constants':'constants','configs':'configs','db':'db','internal':'internal','undocumented':'undocumented','stringDuplication':'string-duplication'};const files={'route':'route.ts','metaJson':'meta.json','schema':'schema.ts','schemaDts':'schema.d.ts','schemaJs':'schema.js','crudHandlerMap':'crud-handler-map.ts','tsconfig':'tsconfig.json','tsconfigBase':'tsconfig.base.json','tsconfigResources':'tsconfig.resources.json','tsconfigLint':'tsconfig.lint.json','tsconfigCli':'tsconfig.cli.json','tsconfigServer':'tsconfig.server.json','tailwindConfig':'tailwind.config.ts','packageJson':'package.json','env':'.env','envExample':'.env.example','envStaging':'.env.staging','npmConfig':'.npmrc','nextEnv':'next-env.d.ts','license':'LICENSE','pnpmLock':'pnpm-lock.yaml','indexJs':'index.js','preCommitScript':'pre-commit-script.ts','preCommit':'pre-commit','commitMsg':'commit-msg','packageTemplate':'package-template.json','eslintConfigJs':'eslint.config.js','eslintConfigMjs':'eslint.config.mjs','layout':'layout.tsx','buildInitDb':'build-init-db.ts','duplicationsReportMd':'duplications-report.md'};const projectPaths={'root':'/','src':folders['src'],'app':folders['src']+'/'+folders['app'],'apiV1F':folders['src']+'/'+folders['app']+'/'+folders['api']+'/v1/(f)','lib':folders['lib'],'generated':folders['generated'],'srcComponents':folders['src']+'/'+folders['components'],'saasKitNodeModulesPath':folders['nodeModules']+'/'+npmPackages['saasKit'],'f':folders['src']+'/'+folders['app']+'/f','public':folders['public'],'images':folders['public']+'/images','openApiJson':folders['public']+'/openapi.json','cliCreate':folders['packages']+'/'+folders['level2']+'/'+folders['cli']+'/'+folders['createSaasKitApp']};const nonRootProjectPaths={'currentDir':'./','currentDirRef':'.','parentDirRef':'..','clientFramework':folders['client']+'/'+folders['framework'],'serverFramework':folders['server']+'/'+folders['framework'],'apiHooks':folders['api']+'/hooks','npmCommands':folders['npmCommands'],'server':folders['server'],'serverContent':folders['server']+'/'+folders['content'],'package':folders['package'],'packageCli':folders['cliPackage'],'htmlTemplates':'html-templates','metaServer':folders['meta']+'/'+folders['server'],'toolsNpmCommands':folders['tools']+'/'+folders['npmCommands'],'tools':folders['tools'],'saasKitCliBin':folders['level2']+'/'+folders['cli']+'/'+folders['bin'],'buildPackage':folders['build']+'/'+folders['package'],'buildPackagesTypes':folders['build']+'/'+folders['package']+'/types','buildCliPackage':folders['build']+'/'+folders['cliPackage'],'buildPackagesTypesOutput':folders['build']+'/'+folders['package']+'/types-output','cliConstants':folders['cli']+'/'+folders['constants'],'cliConfigs':folders['cli']+'/'+folders['configs'],'tools2':folders['tools2']};const serverWeb=folders['server']+'/'+folders['web'];const packagesPath={'packagesBaseRepo':folders['packages']+'/'+folders['baseRepo']+'/','packagesCli':folders['packages']+'/'+folders['level2']+'/'+folders['cli']+'/','packagesCommon':folders['packages']+'/'+folders['level2']+'/'+folders['common']+'/','packagesDocs':folders['packages']+'/'+folders['docs']+'/','packagesFdAppToolbox':folders['packages']+'/'+folders['level2']+'/'+folders['fdAppToolbox']+'/','packagesFdComponentToolbox':folders['packages']+'/'+folders['level2']+'/'+folders['fdComponentToolbox']+'/','packagesFdToolbox':folders['packages']+'/'+folders['fdToolbox']+'/','packagesFdToolboxCore':folders['packages']+'/'+folders['fdToolboxCore']+'/','packagesFlint':folders['packages']+'/'+folders['flint']+'/','packagesInfra':folders['packages']+'/'+folders['infra']+'/','packagesInternalCli':folders['packages']+'/'+folders['internalCli']+'/','packagesMeta':folders['packages']+'/'+folders['level2']+'/'+folders['meta']+'/','packagesNpmCommands':folders['packages']+'/'+folders['level2']+'/'+folders['npmCommands']+'/','packagesOther':folders['packages']+'/'+folders['level2']+'/'+folders['other']+'/','packagesServer':folders['packages']+'/'+folders['level2']+'/'+folders['server']+'/','packagesTest':folders['packages']+'/'+folders['test']+'/','packagesClient':folders['packages']+'/'+folders['level2']+'/'+folders['client']+'/','packagesDb':folders['packages']+'/'+folders['level2']+'/'+folders['db']+'/','git':folders['packages']+'/'+folders['baseRepo']+'/'+folders['tools']+'/'+folders['git']+'/','buildNpm':folders['packages']+'/'+folders['level2']+'/'+folders['npmCommands']+'/'+folders['buildNpm']+'/','createSaasKitApp':folders['packages']+'/'+folders['level2']+'/'+folders['cli']+'/'+folders['createSaasKitApp']+'/','packagesEnricher':folders['packages']+'/'+folders['level2']+'/'+folders['enricher']+'/','packagesDocsContent':folders['packages']+'/'+folders['docs']+'/'+folders['content']+'/','apiResponses':folders['packages']+'/'+folders['level2']+'/'+folders['meta']+'/'+serverWeb+'/responses/','apiErrors':folders['packages']+'/'+folders['fdToolbox']+'/'+serverWeb+'/errors/','packagesTools':folders['packages']+'/'+folders['tools']+'/','packagesTools2':folders['packages']+'/'+folders['level2']+'/'+folders['tools2']+'/','packagesCluster':folders['packages']+'/'+folders['cluster']+'/'};const infraCiJobsBase=packagesPath['packagesInfra']+folders['ci']+'/'+folders['jobs'],infraCiSetupBase=packagesPath['packagesInfra']+folders['ci']+'/'+folders['setup'];const generatedPaths={'metaJson':folders['generated']+'/'+files['metaJson'],'tsconfigResources':folders['generated']+'/'+files['tsconfigResources'],'schema':folders['generated']+'/'+files['schema'],'schemaDts':folders['generated']+'/'+files['schemaDts'],'schemaJs':folders['generated']+'/'+files['schemaJs'],'crudHandlerMap':folders['generated']+'/'+files['crudHandlerMap']};const clientPaths={'styles':''+(packagesPath['packagesClient']+'styles'),'components':''+(packagesPath['packagesClient']+folders['components']),'pages':''+(packagesPath['packagesClient']+folders['pages']),'payments':''+(packagesPath['packagesClient']+'payments'),'products':''+(packagesPath['packagesClient']+'products'),'websiteScan':''+(packagesPath['packagesClient']+'website-scan')};const infraPaths={'lintJob':aliases['infra']+'/'+folders['ci']+'/'+folders['jobs']+'/lint','buildAndTestJob':aliases['infra']+'/'+folders['ci']+'/'+folders['jobs']+'/build-and-test','saasKitTestBuildAndTestJob':aliases['infra']+'/'+folders['ci']+'/'+folders['jobs']+'/saas-kit-test-build-and-test','createSaasKitAppTestJob':aliases['infra']+'/'+folders['ci']+'/'+folders['jobs']+'/create-saas-kit-app-test','manualCleanupJob':aliases['infra']+'/'+folders['ci']+'/'+folders['jobs']+'/manual-cleanup','cleanupScript':aliases['infra']+'/'+folders['ci']+'/'+folders['setup']+'/cleanup','setupScript':aliases['infra']+'/'+folders['ci']+'/'+folders['setup']+'/setup'};const globPatterns={'tsTsx':'**/*.{ts,tsx}','jsTsJsxTsx':'**/*.{js,ts,jsx,tsx}'};
|
|
5
|
+
const folders={'src':'src','baseRepo':'base-repo','cli':'cli','common':'common','docs':'docs','enricher':'enricher','fdAppToolbox':'fd-app-toolbox','fdComponentToolbox':'fd-component-toolbox','fdToolbox':'fd-toolbox','fdToolboxCore':'fd-toolbox-core','flint':'flint','infra':'infra','internalCli':'internal-cli','meta':'meta','npmCommands':'npm-commands','other':'other','server':'server','test':'test','tools':'tools','tools2':'tools2','client':'client','cluster':'cluster','generated':'generated','dist':'dist','lib':'lib','packages':'packages','package':'package','public':'public','build':'build','bin':'bin','buildNpm':'build-npm','genExports':'gen-exports','modules':'modules','generatedTests':'generated-tests','nodeModules':'node_modules','next':'.next','nodeCache':'.node_cache','nx':'.nx','vscode':'.vscode','git':'.git','playwrightReport':'playwright-report','testResults':'test-results','rollup':'rollup','replaceAliases':'replace-aliases','pages':'pages','deploy':'deploy','level2':'level2','monorepo':'monorepo','content':'content','components':'components','app':'app','framework':'framework','api':'api','ci':'ci','jobs':'jobs','web':'web','cliPackage':'cli-package','createSaasKitApp':'create','setup':'setup','husky':'.husky','constants':'constants','configs':'configs','db':'db','internal':'internal','undocumented':'undocumented','stringDuplication':'string-duplication','templates':'templates'};const files={'route':'route.ts','metaJson':'meta.json','schema':'schema.ts','schemaDts':'schema.d.ts','schemaJs':'schema.js','crudHandlerMap':'crud-handler-map.ts','tsconfig':'tsconfig.json','tsconfigBase':'tsconfig.base.json','tsconfigResources':'tsconfig.resources.json','tsconfigLint':'tsconfig.lint.json','tsconfigCli':'tsconfig.cli.json','tsconfigServer':'tsconfig.server.json','tailwindConfig':'tailwind.config.ts','packageJson':'package.json','env':'.env','envExample':'.env.example','envStaging':'.env.staging','npmConfig':'.npmrc','nextEnv':'next-env.d.ts','license':'LICENSE','pnpmLock':'pnpm-lock.yaml','indexJs':'index.js','preCommitScript':'pre-commit-script.ts','preCommit':'pre-commit','commitMsg':'commit-msg','packageTemplate':'package-template.json','eslintConfigJs':'eslint.config.js','eslintConfigMjs':'eslint.config.mjs','layout':'layout.tsx','buildInitDb':'build-init-db.ts','duplicationsReportMd':'duplications-report.md'};const projectPaths={'root':'/','src':folders['src'],'app':folders['src']+'/'+folders['app'],'apiV1F':folders['src']+'/'+folders['app']+'/'+folders['api']+'/v1/(f)','lib':folders['lib'],'generated':folders['generated'],'srcComponents':folders['src']+'/'+folders['components'],'saasKitNodeModulesPath':folders['nodeModules']+'/'+npmPackages['saasKit'],'f':folders['src']+'/'+folders['app']+'/f','public':folders['public'],'images':folders['public']+'/images','openApiJson':folders['public']+'/openapi.json','cliCreate':folders['packages']+'/'+folders['level2']+'/'+folders['cli']+'/'+folders['createSaasKitApp']};const nonRootProjectPaths={'currentDir':'./','currentDirRef':'.','parentDirRef':'..','clientFramework':folders['client']+'/'+folders['framework'],'serverFramework':folders['server']+'/'+folders['framework'],'apiHooks':folders['api']+'/hooks','npmCommands':folders['npmCommands'],'server':folders['server'],'serverContent':folders['server']+'/'+folders['content'],'package':folders['package'],'packageCli':folders['cliPackage'],'htmlTemplates':'html-templates','metaServer':folders['meta']+'/'+folders['server'],'toolsNpmCommands':folders['tools']+'/'+folders['npmCommands'],'tools':folders['tools'],'saasKitCliBin':folders['level2']+'/'+folders['cli']+'/'+folders['bin'],'buildPackage':folders['build']+'/'+folders['package'],'buildPackagesTypes':folders['build']+'/'+folders['package']+'/types','buildCliPackage':folders['build']+'/'+folders['cliPackage'],'buildPackagesTypesOutput':folders['build']+'/'+folders['package']+'/types-output','cliConstants':folders['cli']+'/'+folders['constants'],'cliConfigs':folders['cli']+'/'+folders['configs'],'tools2':folders['tools2']};const serverWeb=folders['server']+'/'+folders['web'];const packagesPath={'packagesBaseRepo':folders['packages']+'/'+folders['baseRepo']+'/','packagesCli':folders['packages']+'/'+folders['level2']+'/'+folders['cli']+'/','packagesCommon':folders['packages']+'/'+folders['level2']+'/'+folders['common']+'/','packagesDocs':folders['packages']+'/'+folders['docs']+'/','packagesFdAppToolbox':folders['packages']+'/'+folders['level2']+'/'+folders['fdAppToolbox']+'/','packagesFdComponentToolbox':folders['packages']+'/'+folders['level2']+'/'+folders['fdComponentToolbox']+'/','packagesFdToolbox':folders['packages']+'/'+folders['fdToolbox']+'/','packagesFdToolboxCore':folders['packages']+'/'+folders['fdToolboxCore']+'/','packagesFlint':folders['packages']+'/'+folders['flint']+'/','packagesInfra':folders['packages']+'/'+folders['infra']+'/','packagesInternalCli':folders['packages']+'/'+folders['internalCli']+'/','packagesMeta':folders['packages']+'/'+folders['level2']+'/'+folders['meta']+'/','packagesNpmCommands':folders['packages']+'/'+folders['level2']+'/'+folders['npmCommands']+'/','packagesOther':folders['packages']+'/'+folders['level2']+'/'+folders['other']+'/','packagesServer':folders['packages']+'/'+folders['level2']+'/'+folders['server']+'/','packagesTest':folders['packages']+'/'+folders['test']+'/','packagesClient':folders['packages']+'/'+folders['level2']+'/'+folders['client']+'/','packagesDb':folders['packages']+'/'+folders['level2']+'/'+folders['db']+'/','git':folders['packages']+'/'+folders['baseRepo']+'/'+folders['tools']+'/'+folders['git']+'/','buildNpm':folders['packages']+'/'+folders['level2']+'/'+folders['npmCommands']+'/'+folders['buildNpm']+'/','createSaasKitApp':folders['packages']+'/'+folders['level2']+'/'+folders['cli']+'/'+folders['createSaasKitApp']+'/','packagesEnricher':folders['packages']+'/'+folders['level2']+'/'+folders['enricher']+'/','packagesDocsContent':folders['packages']+'/'+folders['docs']+'/'+folders['content']+'/','apiResponses':folders['packages']+'/'+folders['level2']+'/'+folders['meta']+'/'+serverWeb+'/responses/','apiErrors':folders['packages']+'/'+folders['fdToolbox']+'/'+serverWeb+'/errors/','packagesTools':folders['packages']+'/'+folders['tools']+'/','packagesTools2':folders['packages']+'/'+folders['level2']+'/'+folders['tools2']+'/','packagesCluster':folders['packages']+'/'+folders['cluster']+'/'};const infraCiJobsBase=packagesPath['packagesInfra']+folders['ci']+'/'+folders['jobs'],infraCiSetupBase=packagesPath['packagesInfra']+folders['ci']+'/'+folders['setup'];const generatedPaths={'metaJson':folders['generated']+'/'+files['metaJson'],'tsconfigResources':folders['generated']+'/'+files['tsconfigResources'],'schema':folders['generated']+'/'+files['schema'],'schemaDts':folders['generated']+'/'+files['schemaDts'],'schemaJs':folders['generated']+'/'+files['schemaJs'],'crudHandlerMap':folders['generated']+'/'+files['crudHandlerMap']};const clientPaths={'styles':''+(packagesPath['packagesClient']+'styles'),'components':''+(packagesPath['packagesClient']+folders['components']),'pages':''+(packagesPath['packagesClient']+folders['pages']),'payments':''+(packagesPath['packagesClient']+'payments'),'products':''+(packagesPath['packagesClient']+'products'),'websiteScan':''+(packagesPath['packagesClient']+'website-scan')};const infraPaths={'lintJob':aliases['infra']+'/'+folders['ci']+'/'+folders['jobs']+'/lint','buildAndTestJob':aliases['infra']+'/'+folders['ci']+'/'+folders['jobs']+'/build-and-test','saasKitTestBuildAndTestJob':aliases['infra']+'/'+folders['ci']+'/'+folders['jobs']+'/saas-kit-test-build-and-test','createSaasKitAppTestJob':aliases['infra']+'/'+folders['ci']+'/'+folders['jobs']+'/create-saas-kit-app-test','manualCleanupJob':aliases['infra']+'/'+folders['ci']+'/'+folders['jobs']+'/manual-cleanup','cleanupScript':aliases['infra']+'/'+folders['ci']+'/'+folders['setup']+'/cleanup','setupScript':aliases['infra']+'/'+folders['ci']+'/'+folders['setup']+'/setup'};const globPatterns={'tsTsx':'**/*.{ts,tsx}','jsTsJsxTsx':'**/*.{js,ts,jsx,tsx}'};
|
|
6
6
|
|
|
7
7
|
export { clientPaths, files, folders, generatedPaths, globPatterns, infraPaths, nonRootProjectPaths, packagesPath, projectPaths };
|
package/cli/bin/create.ts
CHANGED
|
@@ -424,11 +424,14 @@ export async function create(args: string[]) {
|
|
|
424
424
|
await enableRepoModeExtras(targetDir);
|
|
425
425
|
}
|
|
426
426
|
|
|
427
|
+
runCommand("git add .", targetDir);
|
|
428
|
+
runCommand("git commit -nm 'Initial commit'", targetDir);
|
|
429
|
+
logInfoRaw("Initial commit created!");
|
|
430
|
+
|
|
427
431
|
logInfoRaw(`\n${projectName} project "${folderName}" is ready!`);
|
|
428
432
|
logInfoRaw("Next steps:");
|
|
429
433
|
logInfoRaw(` cd ${folderName}`);
|
|
430
|
-
logInfoRaw(" npm run
|
|
431
|
-
logInfoRaw(" npm start");
|
|
434
|
+
logInfoRaw(" npm run start");
|
|
432
435
|
} catch (error) {
|
|
433
436
|
const errorMessage = error instanceof Error ? error.message : "Unknown error";
|
|
434
437
|
logStringError("Error:");
|
|
@@ -3,24 +3,21 @@
|
|
|
3
3
|
"private": true,
|
|
4
4
|
"type": "module",
|
|
5
5
|
"scripts": {
|
|
6
|
+
"start": "npm run setup && npm run build && npx tsx server.ts",
|
|
6
7
|
"dev": "next dev --turbo",
|
|
7
8
|
"build": "next build --turbo",
|
|
8
|
-
"start": "next start",
|
|
9
9
|
"lint": "eslint -c eslint.config.js",
|
|
10
|
+
"setup": "npm run gen-meta && npm run gen-schema && npm run init-db",
|
|
11
|
+
"init-db": "npm run migrate-db && npm run seed-db",
|
|
10
12
|
"gen-schema": "npx tsx npm-commands/gen-schema.ts",
|
|
11
13
|
"gen-meta": "npx tsx npm-commands/gen-meta.ts",
|
|
12
|
-
"init-db": "npm run migrate-db && npm run seed-db",
|
|
13
|
-
"setup": "npm run gen-meta && npm run gen-schema && npm run init-db",
|
|
14
|
-
"prod": "npm run setup && npm run build && npx tsx server.ts",
|
|
15
14
|
"migrate-db": "npx tsx npm-commands/migrate-db.ts",
|
|
16
15
|
"seed-db": "npx tsx npm-commands/seed-db.ts"
|
|
17
16
|
},
|
|
18
17
|
"dependencies": {
|
|
19
|
-
"@fernir2/saas-kit": "0.0.
|
|
20
|
-
"@node-rs/argon2": "2.0.2",
|
|
18
|
+
"@fernir2/saas-kit": "0.0.174",
|
|
21
19
|
"drizzle-orm": "0.36.4",
|
|
22
|
-
"
|
|
23
|
-
"next": "16.0.10",
|
|
20
|
+
"next": "16.1.1",
|
|
24
21
|
"quill": "2.0.3",
|
|
25
22
|
"react": "19.2.3",
|
|
26
23
|
"react-dom": "19.2.3",
|
|
@@ -38,7 +35,7 @@
|
|
|
38
35
|
"@typescript-eslint/parser": "8.43.0",
|
|
39
36
|
"drizzle-kit": "0.28.1",
|
|
40
37
|
"eslint": "9.35.0",
|
|
41
|
-
"eslint-config-next": "16.
|
|
38
|
+
"eslint-config-next": "16.1.1",
|
|
42
39
|
"eslint-config-prettier": "10.1.8",
|
|
43
40
|
"eslint-plugin-react": "7.37.5",
|
|
44
41
|
"eslint-plugin-react-compiler": "19.1.0-rc.2",
|
package/cli/src/app/layout.tsx
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { HtmlMetadataType } from "@meta/client/framework";
|
|
2
|
-
import {
|
|
2
|
+
import { Geist as createFontGeist } from "next/font/google";
|
|
3
3
|
import "@/app/globals.css";
|
|
4
4
|
import { cn } from "@fd-toolbox/lib/utils";
|
|
5
5
|
import Favicon from "src/app/favicon.ico";
|
|
@@ -20,18 +20,16 @@ export default async function RootLayout({ children }: { children: ReactNode })
|
|
|
20
20
|
|
|
21
21
|
return (
|
|
22
22
|
<html lang="en">
|
|
23
|
-
<body className={cn(
|
|
23
|
+
<body className={cn(geistFont.className, "h-screen text-sm")}>
|
|
24
24
|
<div className="flex h-full flex-col">
|
|
25
|
-
<Providers
|
|
26
|
-
globalConfig={{
|
|
27
|
-
...defaultGlobalConfig,
|
|
28
|
-
}}
|
|
29
|
-
>
|
|
30
|
-
{children}
|
|
31
|
-
</Providers>
|
|
25
|
+
<Providers globalConfig={{ ...defaultGlobalConfig }}>{children}</Providers>
|
|
32
26
|
</div>
|
|
33
27
|
<Toaster />
|
|
34
28
|
</body>
|
|
35
29
|
</html>
|
|
36
30
|
);
|
|
37
31
|
}
|
|
32
|
+
|
|
33
|
+
const geistFont = createFontGeist({
|
|
34
|
+
subsets: ["latin"],
|
|
35
|
+
});
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
FD_INTEGRATION_ENABLED=true
|
|
2
|
+
|
|
3
|
+
FD_DATABASE_CONNECTION_STRING="postgresql://postgres:root@localhost:5432/saas-kit"
|
|
4
|
+
|
|
5
|
+
NEXT_PUBLIC_FD_SEED_DEMO_RESOURCES=true
|
|
6
|
+
FD_SEED_DEV_RESOURCES=true
|
|
7
|
+
|
|
8
|
+
FD_SENDER_EMAIL=
|
|
9
|
+
FD_EMAIL_SERVICE_URL=
|
|
10
|
+
FD_EMAIL_SERVICE_KEY=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
|
|
11
|
+
|
|
12
|
+
NODE_OPTIONS="--import=tsx"
|
|
@@ -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=(_0x3ed8bd,_0x2e2b8)=>__defProp(_0x3ed8bd,'name',{'value':_0x2e2b8,'configurable':!![]});async function apiGet(_0x54aee0,_0x5ba0a5,_0x4c8f6b,_0x32a8b5){const _0x5f2d80=apiPaths.getApiPath(_0x54aee0,_0x5ba0a5,_0x4c8f6b);return baseApi.apiBaseGet(_0x5f2d80,getApiHeaders(_0x32a8b5));}__name(apiGet,'apiGet');async function apiGetBlob(_0x8b3505,_0x17717f,_0x1fe237,_0x45b56b){const _0x17e64f=apiPaths.getApiPath(_0x8b3505,_0x17717f,_0x1fe237);return baseApi.apiBaseGetBlob(_0x17e64f,getApiHeaders(_0x45b56b,!![]));}__name(apiGetBlob,'apiGetBlob');async function apiGetWithOData(_0x4e335c,_0x5913f5,_0x485e65){const _0x4ae7f6=odatas.getODataParams(_0x5913f5);return apiGet(_0x4e335c,_0x485e65,_0x4ae7f6);}__name(apiGetWithOData,'apiGetWithOData');async function apiPost(_0x1159ad,_0x12931f,_0x2cb5db){const _0x3896bd=apiPaths.getApiPath(_0x1159ad);return baseApi.postBaseApi(_0x3896bd,_0x12931f,getApiHeaders(_0x2cb5db));}__name(apiPost,'apiPost');async function apiPostFile(_0x6c348c,_0x158fd7,_0x9e476f){const _0x1a1f4d=apiPaths.getApiPath(_0x6c348c),_0x2351f7=await fetch(_0x1a1f4d,{'method':httpConstants.httpMethods['post'],'body':_0x158fd7,'headers':getApiHeaders(_0x9e476f,!![])});return baseApi.baseApiHandleResponse(_0x2351f7);}__name(apiPostFile,'apiPostFile');async function apiPut(_0x466342,_0x208eb7,_0x298c7b){const _0x59e086=apiPaths.getApiPath(_0x466342);return baseApi.putBaseApi(_0x59e086,_0x208eb7,getApiHeaders(_0x298c7b));}__name(apiPut,'apiPut');async function apiDelete(_0x53b172,_0x3969f6,_0x1ca35c){const _0x29f840=apiPaths.getApiPath(_0x53b172,_0x3969f6);return baseApi.deleteBaseApi(_0x29f840,getApiHeaders(_0x1ca35c));}__name(apiDelete,'apiDelete');function getApiHeaders(_0x2d2dc0,_0x4dac17=![]){const _0x118a69=_0x2d2dc0??new Headers(),_0x2a595f=tokens.getAuthToken();return (!_0x118a69['get'](headerNames.headerNames['authHeaderName'])||_0x118a69['get'](headerNames.headerNames['authHeaderName'])==='')&&_0x2a595f&&_0x118a69['set'](headerNames.headerNames['authHeaderName'],headerNames.headerNames['authHeaderValuePrefix']+_0x2a595f),!_0x4dac17&&!_0x118a69['get'](headerNames.httpContentTypes['contentTypeHeaderName'])&&_0x118a69['set'](headerNames.httpContentTypes['contentTypeHeaderName'],headerNames.httpContentTypes['contentTypeHeaderValue']),_0x118a69;}__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=(_0x3ed8bd,_0x2e2b8)=>__defProp(_0x3ed8bd,'name',{'value':_0x2e2b8,'configurable':!![]});async function apiGet(_0x54aee0,_0x5ba0a5,_0x4c8f6b,_0x32a8b5){const _0x5f2d80=getApiPath(_0x54aee0,_0x5ba0a5,_0x4c8f6b);return apiBaseGet(_0x5f2d80,getApiHeaders(_0x32a8b5));}__name(apiGet,'apiGet');async function apiGetBlob(_0x8b3505,_0x17717f,_0x1fe237,_0x45b56b){const _0x17e64f=getApiPath(_0x8b3505,_0x17717f,_0x1fe237);return apiBaseGetBlob(_0x17e64f,getApiHeaders(_0x45b56b,!![]));}__name(apiGetBlob,'apiGetBlob');async function apiGetWithOData(_0x4e335c,_0x5913f5,_0x485e65){const _0x4ae7f6=getODataParams(_0x5913f5);return apiGet(_0x4e335c,_0x485e65,_0x4ae7f6);}__name(apiGetWithOData,'apiGetWithOData');async function apiPost(_0x1159ad,_0x12931f,_0x2cb5db){const _0x3896bd=getApiPath(_0x1159ad);return postBaseApi(_0x3896bd,_0x12931f,getApiHeaders(_0x2cb5db));}__name(apiPost,'apiPost');async function apiPostFile(_0x6c348c,_0x158fd7,_0x9e476f){const _0x1a1f4d=getApiPath(_0x6c348c),_0x2351f7=await fetch(_0x1a1f4d,{'method':httpMethods['post'],'body':_0x158fd7,'headers':getApiHeaders(_0x9e476f,!![])});return baseApiHandleResponse(_0x2351f7);}__name(apiPostFile,'apiPostFile');async function apiPut(_0x466342,_0x208eb7,_0x298c7b){const _0x59e086=getApiPath(_0x466342);return putBaseApi(_0x59e086,_0x208eb7,getApiHeaders(_0x298c7b));}__name(apiPut,'apiPut');async function apiDelete(_0x53b172,_0x3969f6,_0x1ca35c){const _0x29f840=getApiPath(_0x53b172,_0x3969f6);return deleteBaseApi(_0x29f840,getApiHeaders(_0x1ca35c));}__name(apiDelete,'apiDelete');function getApiHeaders(_0x2d2dc0,_0x4dac17=![]){const _0x118a69=_0x2d2dc0??new Headers(),_0x2a595f=getAuthToken();return (!_0x118a69['get'](headerNames['authHeaderName'])||_0x118a69['get'](headerNames['authHeaderName'])==='')&&_0x2a595f&&_0x118a69['set'](headerNames['authHeaderName'],headerNames['authHeaderValuePrefix']+_0x2a595f),!_0x4dac17&&!_0x118a69['get'](httpContentTypes['contentTypeHeaderName'])&&_0x118a69['set'](httpContentTypes['contentTypeHeaderName'],httpContentTypes['contentTypeHeaderValue']),_0x118a69;}__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 _0x20c19a = 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':_0x20c19a.join(hint,'getone'),'user':'user','preLoad':'preload','userPermission':'user-permission','otherUser':'other-user','person':'person','friend':'friend','relation':'relation','log':'log','version':'version','markdownRender':'markdown/render','forgotPassword':'password/forgot-password','resetPassword':'password/reset-password','editPassword':'password/edit-password','payment':payment,'paymentVerifyFail':_0x20c19a.join(payment,'verify-fail'),'paymentVerifySuccess':_0x20c19a.join(payment,'verify-success'),'paymentMethod':_0x20c19a.join(payment,'method'),'subscription':subscription,'cancelSubscription':_0x20c19a.join(subscription,'cancel'),'updateSubscription':_0x20c19a.join(subscription,'update'),'createSubscription':_0x20c19a.join(subscription,'create'),'paymentPlan':'paymentplan','feature':'feature','paymentPlanFeature':'paymentplanfeature','markdown':'markdown','searchResult':'search-result','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;
|
|
@@ -4,6 +4,6 @@
|
|
|
4
4
|
var urls = require('../http/url/urls.cjs.js');
|
|
5
5
|
var paths = require('../routing/paths.cjs.js');
|
|
6
6
|
|
|
7
|
-
var __defProp=Object['defineProperty'],__name=(
|
|
7
|
+
var __defProp=Object['defineProperty'],__name=(_0x596bbf,_0x1ac308)=>__defProp(_0x596bbf,'name',{'value':_0x1ac308,'configurable':!![]});const apiPrefix='api';function getApiPath(_0x557dbc,_0x58f435,_0x5be9c3){let _0x46197b=urls.combineEndpointPath(apiPrefix,_0x557dbc);return _0x58f435&&(_0x46197b=urls.combineEndpointPath(_0x46197b,_0x58f435)),_0x46197b=paths.addQueryParamsToPath(_0x46197b,_0x5be9c3),new URL(_0x46197b,getBaseUrl())['href'];}__name(getApiPath,'getApiPath');function getBaseUrl(){return location['protocol']+'//'+location['hostname']+':'+location['port']+'/';}__name(getBaseUrl,'getBaseUrl');
|
|
8
8
|
|
|
9
9
|
exports.getApiPath = getApiPath;
|
|
@@ -2,6 +2,6 @@
|
|
|
2
2
|
import { combineEndpointPath } from '../http/url/urls.js';
|
|
3
3
|
import { addQueryParamsToPath } from '../routing/paths.js';
|
|
4
4
|
|
|
5
|
-
var __defProp=Object['defineProperty'],__name=(
|
|
5
|
+
var __defProp=Object['defineProperty'],__name=(_0x596bbf,_0x1ac308)=>__defProp(_0x596bbf,'name',{'value':_0x1ac308,'configurable':!![]});const apiPrefix='api';function getApiPath(_0x557dbc,_0x58f435,_0x5be9c3){let _0x46197b=combineEndpointPath(apiPrefix,_0x557dbc);return _0x58f435&&(_0x46197b=combineEndpointPath(_0x46197b,_0x58f435)),_0x46197b=addQueryParamsToPath(_0x46197b,_0x5be9c3),new URL(_0x46197b,getBaseUrl())['href'];}__name(getApiPath,'getApiPath');function getBaseUrl(){return location['protocol']+'//'+location['hostname']+':'+location['port']+'/';}__name(getBaseUrl,'getBaseUrl');
|
|
6
6
|
|
|
7
7
|
export { getApiPath };
|
|
@@ -10,7 +10,7 @@ var loginStates = require('../auth/login-states.cjs.js');
|
|
|
10
10
|
var environments = require('../lib/environments.cjs.js');
|
|
11
11
|
var utils = require('../lib/utils.cjs.js');
|
|
12
12
|
|
|
13
|
-
var __defProp=Object['defineProperty'],__name=(
|
|
13
|
+
var __defProp=Object['defineProperty'],__name=(_0x35b0ae,_0x3536e0)=>__defProp(_0x35b0ae,'name',{'value':_0x3536e0,'configurable':!![]});async function apiBaseGet(_0x3658c6,_0x4220a1){const _0x14d2b9=await fetch(_0x3658c6,{'method':httpConstants.httpMethods['get'],'headers':_0x4220a1});return baseApiHandleResponse(_0x14d2b9);}__name(apiBaseGet,'apiBaseGet');async function apiBaseGetBlob(_0x2a3715,_0x5bbaa2){const _0x161e03=await fetch(_0x2a3715,{'method':httpConstants.httpMethods['get'],'headers':_0x5bbaa2});return baseApiHandleBlobResponse(_0x161e03);}__name(apiBaseGetBlob,'apiBaseGetBlob');async function postBaseApi(_0x11bd31,_0x425e92,_0x1c73f2){const _0x368618=await fetch(_0x11bd31,{'method':httpConstants.httpMethods['post'],'headers':_0x1c73f2,'body':_0x425e92 instanceof URLSearchParams?_0x425e92:JSON['stringify'](_0x425e92)});return baseApiHandleResponse(_0x368618);}__name(postBaseApi,'postBaseApi');async function putBaseApi(_0x4dbf02,_0x5cd2bc,_0x4a89ee){const _0x921a32=await fetch(_0x4dbf02,{'method':httpConstants.httpMethods['put'],'headers':_0x4a89ee,'body':JSON['stringify'](_0x5cd2bc)});return baseApiHandleResponse(_0x921a32);}__name(putBaseApi,'putBaseApi');async function deleteBaseApi(_0x538028,_0x4083bf){const _0x461b03=await fetch(_0x538028,{'method':httpConstants.httpMethods['delete'],'headers':_0x4083bf});if(!_0x461b03['ok'])handleErrorResponse(_0x461b03);}__name(deleteBaseApi,'deleteBaseApi');async function baseApiHandleResponse(_0x281cd0){const _0x4358e6=_0x281cd0['headers']['get']('content-type'),_0x239587=_0x4358e6?.['includes']('application/json');isUnauthorizedError(_0x281cd0['status'])&&(loginStates.removeLoginState(),loginRouters.goToLogin());if(!_0x281cd0['ok'])return handleErrorResponse(_0x281cd0);if(_0x281cd0['status']===httpStatusCodes.httpStatusCodes['noContent']||!_0x239587)return null;return utils.getJsonFromResponse(_0x281cd0);}__name(baseApiHandleResponse,'baseApiHandleResponse');async function baseApiHandleBlobResponse(_0x3585e5){isUnauthorizedError(_0x3585e5['status'])&&loginRouters.goToLogin();if(!_0x3585e5['ok']){const _0x45f075=await handleErrorResponse(_0x3585e5);return _0x45f075;}if(_0x3585e5['status']===httpStatusCodes.httpStatusCodes['noContent'])return null;const _0x29479a=await _0x3585e5['blob']();return _0x29479a;}__name(baseApiHandleBlobResponse,'baseApiHandleBlobResponse');async function handleErrorResponse(_0x3f2449){const _0x2ff6c5=_0x3f2449['headers']['get']('content-type'),_0xc769dd=_0x2ff6c5?.['includes']('application/json');let _0x3a7372='',_0x3507ec='';if(_0xc769dd){const _0x15bf03=await utils.getJsonFromResponse(_0x3f2449);_0x3a7372=_0x15bf03?.['message'],_0x3507ec=_0x15bf03?.['description']||'';}_0x3a7372=_0x3a7372?_0x3a7372:_0x3f2449['statusText'];const _0x99a928={'status':_0x3f2449['status'],'message':_0x3a7372},_0x51b219={'originalUrl':_0x3f2449['url']};return _0x3f2449['status']!==httpStatusCodes.httpStatusCodes['unauthorized']&&errorHandler.logAndNotify(new Error(_0x3a7372)),problemDetails.getProblemDetails(_0x99a928,_0x51b219,_0x3507ec);}__name(handleErrorResponse,'handleErrorResponse');function isUnauthorizedError(_0x3378d7){return _0x3378d7===httpStatusCodes.httpStatusCodes['unauthorized']&&environments.isBrowser()&&window['location']['pathname']!==loginRouters.getRelativeLoginUrl();}__name(isUnauthorizedError,'isUnauthorizedError');
|
|
14
14
|
|
|
15
15
|
exports.apiBaseGet = apiBaseGet;
|
|
16
16
|
exports.apiBaseGetBlob = apiBaseGetBlob;
|
|
@@ -8,6 +8,6 @@ import { removeLoginState } from '../auth/login-states.js';
|
|
|
8
8
|
import { isBrowser } from '../lib/environments.js';
|
|
9
9
|
import { getJsonFromResponse } from '../lib/utils.js';
|
|
10
10
|
|
|
11
|
-
var __defProp=Object['defineProperty'],__name=(
|
|
11
|
+
var __defProp=Object['defineProperty'],__name=(_0x35b0ae,_0x3536e0)=>__defProp(_0x35b0ae,'name',{'value':_0x3536e0,'configurable':!![]});async function apiBaseGet(_0x3658c6,_0x4220a1){const _0x14d2b9=await fetch(_0x3658c6,{'method':httpMethods['get'],'headers':_0x4220a1});return baseApiHandleResponse(_0x14d2b9);}__name(apiBaseGet,'apiBaseGet');async function apiBaseGetBlob(_0x2a3715,_0x5bbaa2){const _0x161e03=await fetch(_0x2a3715,{'method':httpMethods['get'],'headers':_0x5bbaa2});return baseApiHandleBlobResponse(_0x161e03);}__name(apiBaseGetBlob,'apiBaseGetBlob');async function postBaseApi(_0x11bd31,_0x425e92,_0x1c73f2){const _0x368618=await fetch(_0x11bd31,{'method':httpMethods['post'],'headers':_0x1c73f2,'body':_0x425e92 instanceof URLSearchParams?_0x425e92:JSON['stringify'](_0x425e92)});return baseApiHandleResponse(_0x368618);}__name(postBaseApi,'postBaseApi');async function putBaseApi(_0x4dbf02,_0x5cd2bc,_0x4a89ee){const _0x921a32=await fetch(_0x4dbf02,{'method':httpMethods['put'],'headers':_0x4a89ee,'body':JSON['stringify'](_0x5cd2bc)});return baseApiHandleResponse(_0x921a32);}__name(putBaseApi,'putBaseApi');async function deleteBaseApi(_0x538028,_0x4083bf){const _0x461b03=await fetch(_0x538028,{'method':httpMethods['delete'],'headers':_0x4083bf});if(!_0x461b03['ok'])handleErrorResponse(_0x461b03);}__name(deleteBaseApi,'deleteBaseApi');async function baseApiHandleResponse(_0x281cd0){const _0x4358e6=_0x281cd0['headers']['get']('content-type'),_0x239587=_0x4358e6?.['includes']('application/json');isUnauthorizedError(_0x281cd0['status'])&&(removeLoginState(),goToLogin());if(!_0x281cd0['ok'])return handleErrorResponse(_0x281cd0);if(_0x281cd0['status']===httpStatusCodes['noContent']||!_0x239587)return null;return getJsonFromResponse(_0x281cd0);}__name(baseApiHandleResponse,'baseApiHandleResponse');async function baseApiHandleBlobResponse(_0x3585e5){isUnauthorizedError(_0x3585e5['status'])&&goToLogin();if(!_0x3585e5['ok']){const _0x45f075=await handleErrorResponse(_0x3585e5);return _0x45f075;}if(_0x3585e5['status']===httpStatusCodes['noContent'])return null;const _0x29479a=await _0x3585e5['blob']();return _0x29479a;}__name(baseApiHandleBlobResponse,'baseApiHandleBlobResponse');async function handleErrorResponse(_0x3f2449){const _0x2ff6c5=_0x3f2449['headers']['get']('content-type'),_0xc769dd=_0x2ff6c5?.['includes']('application/json');let _0x3a7372='',_0x3507ec='';if(_0xc769dd){const _0x15bf03=await getJsonFromResponse(_0x3f2449);_0x3a7372=_0x15bf03?.['message'],_0x3507ec=_0x15bf03?.['description']||'';}_0x3a7372=_0x3a7372?_0x3a7372:_0x3f2449['statusText'];const _0x99a928={'status':_0x3f2449['status'],'message':_0x3a7372},_0x51b219={'originalUrl':_0x3f2449['url']};return _0x3f2449['status']!==httpStatusCodes['unauthorized']&&logAndNotify(new Error(_0x3a7372)),getProblemDetails(_0x99a928,_0x51b219,_0x3507ec);}__name(handleErrorResponse,'handleErrorResponse');function isUnauthorizedError(_0x3378d7){return _0x3378d7===httpStatusCodes['unauthorized']&&isBrowser()&&window['location']['pathname']!==getRelativeLoginUrl();}__name(isUnauthorizedError,'isUnauthorizedError');
|
|
12
12
|
|
|
13
13
|
export { apiBaseGet, apiBaseGetBlob, baseApiHandleBlobResponse, baseApiHandleResponse, deleteBaseApi, handleErrorResponse, postBaseApi, putBaseApi };
|
|
@@ -7,7 +7,7 @@ var publicFiles = require('../constants/public-files.cjs.js');
|
|
|
7
7
|
var extensions = require('../constants/extensions.cjs.js');
|
|
8
8
|
var sessionStorage = require('./session-storage.cjs.js');
|
|
9
9
|
|
|
10
|
-
var __defProp=Object['defineProperty'],__name=(
|
|
10
|
+
var __defProp=Object['defineProperty'],__name=(_0x356974,_0x108eac)=>__defProp(_0x356974,'name',{'value':_0x108eac,'configurable':!![]});const loginStateKey='LoginState',afterLoginRedirectUrlKey='AfterLoginRedirectUrl';function isLoggedIn(){return getLoginState()['loggedIn'];}__name(isLoggedIn,'isLoggedIn');function setLoginState(_0x4e0b5c){localStorage.setLocalStorage(loginStateKey,_0x4e0b5c);}__name(setLoginState,'setLoginState');function getLoginState(){return localStorage.getLocalStorage(loginStateKey)??getEmptyLoginState();}__name(getLoginState,'getLoginState');function removeLoginState(){localStorage.removeLocalStorage(loginStateKey);}__name(removeLoginState,'removeLoginState');function getAfterLoginRedirectUrl(){return sessionStorage.getSessionStorage(afterLoginRedirectUrlKey);}__name(getAfterLoginRedirectUrl,'getAfterLoginRedirectUrl');function setAfterLoginRedirectUrl(){const _0x4a76a1=(window['location']['pathname']+window['location']['search'])['slice'](-0x1*-0x14d4+0x76d*0x3+-0x4ca*0x9);sessionStorage.setSessionStorage(afterLoginRedirectUrlKey,_0x4a76a1);}__name(setAfterLoginRedirectUrl,'setAfterLoginRedirectUrl');function removeAfterLoginRedirectUrl(){sessionStorage.removeSessionStorage(afterLoginRedirectUrlKey);}__name(removeAfterLoginRedirectUrl,'removeAfterLoginRedirectUrl');function getEmptyLoginState(){const _0x4bad9e={'email':'','loggedIn':![],'displayName':'','userId':constants.emptyGuid,'imageUrl':'/'+publicFiles.publicImages['user']+'/'+constants.emptyGuid+'.'+extensions.extensions['webp']};return _0x4bad9e;}__name(getEmptyLoginState,'getEmptyLoginState');
|
|
11
11
|
|
|
12
12
|
exports.getAfterLoginRedirectUrl = getAfterLoginRedirectUrl;
|
|
13
13
|
exports.getLoginState = getLoginState;
|
|
@@ -5,6 +5,6 @@ import { publicImages } from '../constants/public-files.js';
|
|
|
5
5
|
import { extensions } from '../constants/extensions.js';
|
|
6
6
|
import { getSessionStorage, setSessionStorage, removeSessionStorage } from './session-storage.js';
|
|
7
7
|
|
|
8
|
-
var __defProp=Object['defineProperty'],__name=(
|
|
8
|
+
var __defProp=Object['defineProperty'],__name=(_0x356974,_0x108eac)=>__defProp(_0x356974,'name',{'value':_0x108eac,'configurable':!![]});const loginStateKey='LoginState',afterLoginRedirectUrlKey='AfterLoginRedirectUrl';function isLoggedIn(){return getLoginState()['loggedIn'];}__name(isLoggedIn,'isLoggedIn');function setLoginState(_0x4e0b5c){setLocalStorage(loginStateKey,_0x4e0b5c);}__name(setLoginState,'setLoginState');function getLoginState(){return getLocalStorage(loginStateKey)??getEmptyLoginState();}__name(getLoginState,'getLoginState');function removeLoginState(){removeLocalStorage(loginStateKey);}__name(removeLoginState,'removeLoginState');function getAfterLoginRedirectUrl(){return getSessionStorage(afterLoginRedirectUrlKey);}__name(getAfterLoginRedirectUrl,'getAfterLoginRedirectUrl');function setAfterLoginRedirectUrl(){const _0x4a76a1=(window['location']['pathname']+window['location']['search'])['slice'](-0x1*-0x14d4+0x76d*0x3+-0x4ca*0x9);setSessionStorage(afterLoginRedirectUrlKey,_0x4a76a1);}__name(setAfterLoginRedirectUrl,'setAfterLoginRedirectUrl');function removeAfterLoginRedirectUrl(){removeSessionStorage(afterLoginRedirectUrlKey);}__name(removeAfterLoginRedirectUrl,'removeAfterLoginRedirectUrl');function getEmptyLoginState(){const _0x4bad9e={'email':'','loggedIn':![],'displayName':'','userId':emptyGuid,'imageUrl':'/'+publicImages['user']+'/'+emptyGuid+'.'+extensions['webp']};return _0x4bad9e;}__name(getEmptyLoginState,'getEmptyLoginState');
|
|
9
9
|
|
|
10
10
|
export { getAfterLoginRedirectUrl, getLoginState, isLoggedIn, removeAfterLoginRedirectUrl, removeLoginState, setAfterLoginRedirectUrl, setLoginState };
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
var environments = require('../lib/environments.cjs.js');
|
|
5
5
|
var utils = require('../lib/utils.cjs.js');
|
|
6
6
|
|
|
7
|
-
var __defProp=Object['defineProperty'],__name=(
|
|
7
|
+
var __defProp=Object['defineProperty'],__name=(_0x310855,_0x311c83)=>__defProp(_0x310855,'name',{'value':_0x311c83,'configurable':!![]});function sessionStorageGetAsString(_0x550587){if(environments.isBrowser()){const _0x254b45=sessionStorage['getItem'](_0x550587);return _0x254b45??void(0x25ab+0xa2*-0x9+-0x1*0x1ff9);}return void(-0x948+-0xe1+-0x1*-0xa29);}__name(sessionStorageGetAsString,'sessionStorageGetAsString');function getSessionStorage(_0x2f3bac){const _0x1a52ea=sessionStorageGetAsString(_0x2f3bac);return _0x1a52ea?utils.parseJson(_0x1a52ea):void(-0xb*0x2bb+0x5ce*-0x1+0x23d7);}__name(getSessionStorage,'getSessionStorage');function setSessionStorage(_0x241c87,_0x3543f7){if(_0x3543f7===void(0x1*-0x2429+0x14e2+-0xf47*-0x1))return;sessionStorage['setItem'](_0x241c87,JSON['stringify'](_0x3543f7));}__name(setSessionStorage,'setSessionStorage');function removeSessionStorage(_0x3fd7ab){sessionStorage['removeItem'](_0x3fd7ab);}__name(removeSessionStorage,'removeSessionStorage');
|
|
8
8
|
|
|
9
9
|
exports.getSessionStorage = getSessionStorage;
|
|
10
10
|
exports.removeSessionStorage = removeSessionStorage;
|
|
@@ -2,6 +2,6 @@
|
|
|
2
2
|
import { isBrowser } from '../lib/environments.js';
|
|
3
3
|
import { parseJson } from '../lib/utils.js';
|
|
4
4
|
|
|
5
|
-
var __defProp=Object['defineProperty'],__name=(
|
|
5
|
+
var __defProp=Object['defineProperty'],__name=(_0x310855,_0x311c83)=>__defProp(_0x310855,'name',{'value':_0x311c83,'configurable':!![]});function sessionStorageGetAsString(_0x550587){if(isBrowser()){const _0x254b45=sessionStorage['getItem'](_0x550587);return _0x254b45??void(0x25ab+0xa2*-0x9+-0x1*0x1ff9);}return void(-0x948+-0xe1+-0x1*-0xa29);}__name(sessionStorageGetAsString,'sessionStorageGetAsString');function getSessionStorage(_0x2f3bac){const _0x1a52ea=sessionStorageGetAsString(_0x2f3bac);return _0x1a52ea?parseJson(_0x1a52ea):void(-0xb*0x2bb+0x5ce*-0x1+0x23d7);}__name(getSessionStorage,'getSessionStorage');function setSessionStorage(_0x241c87,_0x3543f7){if(_0x3543f7===void(0x1*-0x2429+0x14e2+-0xf47*-0x1))return;sessionStorage['setItem'](_0x241c87,JSON['stringify'](_0x3543f7));}__name(setSessionStorage,'setSessionStorage');function removeSessionStorage(_0x3fd7ab){sessionStorage['removeItem'](_0x3fd7ab);}__name(removeSessionStorage,'removeSessionStorage');
|
|
6
6
|
|
|
7
7
|
export { getSessionStorage, removeSessionStorage, sessionStorageGetAsString, setSessionStorage };
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
|
|
4
4
|
var localStorage = require('../local-storage/local-storage.cjs.js');
|
|
5
5
|
|
|
6
|
-
var __defProp=Object['defineProperty'],__name=(
|
|
6
|
+
var __defProp=Object['defineProperty'],__name=(_0x2920c5,_0x2b855f)=>__defProp(_0x2920c5,'name',{'value':_0x2b855f,'configurable':!![]});const tokenKey='token';function getAuthToken(){return localStorage.getLocalStorage(tokenKey);}__name(getAuthToken,'getAuthToken');function rememberAuthToken(_0x289adb){localStorage.setLocalStorage(tokenKey,_0x289adb);}__name(rememberAuthToken,'rememberAuthToken');function forgetAuthToken(){localStorage.removeLocalStorage(tokenKey);}__name(forgetAuthToken,'forgetAuthToken');
|
|
7
7
|
|
|
8
8
|
exports.forgetAuthToken = forgetAuthToken;
|
|
9
9
|
exports.getAuthToken = getAuthToken;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
import { getLocalStorage, setLocalStorage, removeLocalStorage } from '../local-storage/local-storage.js';
|
|
3
3
|
|
|
4
|
-
var __defProp=Object['defineProperty'],__name=(
|
|
4
|
+
var __defProp=Object['defineProperty'],__name=(_0x2920c5,_0x2b855f)=>__defProp(_0x2920c5,'name',{'value':_0x2b855f,'configurable':!![]});const tokenKey='token';function getAuthToken(){return getLocalStorage(tokenKey);}__name(getAuthToken,'getAuthToken');function rememberAuthToken(_0x289adb){setLocalStorage(tokenKey,_0x289adb);}__name(rememberAuthToken,'rememberAuthToken');function forgetAuthToken(){removeLocalStorage(tokenKey);}__name(forgetAuthToken,'forgetAuthToken');
|
|
5
5
|
|
|
6
6
|
export { forgetAuthToken, getAuthToken, rememberAuthToken, tokenKey };
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
'use strict';
|
|
3
3
|
|
|
4
|
-
const emptyGuid='00000000-0000-0000-0000-000000000000';const minHintPriorityValue
|
|
4
|
+
const emptyGuid='00000000-0000-0000-0000-000000000000';const minHintPriorityValue=-0x8*-0x35+0x25ba+0x2761*-0x1;const englishLanguageCode='en-US';const emptySelectValue='empty';const emptySelectIndex=0xff*-0x6+-0x3db*-0x7+-0x3*0x701;const fieldValuesSeparator=',\x20';const noName='No\x20name';const projectName='SaaS\x20Kit';
|
|
5
5
|
|
|
6
6
|
exports.emptyGuid = emptyGuid;
|
|
7
7
|
exports.emptySelectIndex = emptySelectIndex;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
'use strict';
|
|
2
|
-
const emptyGuid='00000000-0000-0000-0000-000000000000';const minHintPriorityValue
|
|
2
|
+
const emptyGuid='00000000-0000-0000-0000-000000000000';const minHintPriorityValue=-0x8*-0x35+0x25ba+0x2761*-0x1;const englishLanguageCode='en-US';const emptySelectValue='empty';const emptySelectIndex=0xff*-0x6+-0x3db*-0x7+-0x3*0x701;const fieldValuesSeparator=',\x20';const noName='No\x20name';const projectName='SaaS\x20Kit';
|
|
3
3
|
|
|
4
4
|
export { emptyGuid, emptySelectIndex, emptySelectValue, englishLanguageCode, fieldValuesSeparator, minHintPriorityValue, noName, projectName };
|