@tremho/mist-lift 1.1.4 → 1.1.6-pre-release.1

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.
Files changed (169) hide show
  1. package/LICENSE +21 -21
  2. package/README.md +70 -66
  3. package/build/commands/actions/initQuestions.js.map +1 -0
  4. package/build/commands/actions/makePackageJson.js.map +1 -0
  5. package/build/commands/actions/setupPackageJson.js.map +1 -0
  6. package/build/commands/build.js.map +1 -0
  7. package/build/{src/commands → commands}/builtin/ApiDocMaker.js +0 -1
  8. package/build/commands/builtin/ApiDocMaker.js.map +1 -0
  9. package/build/commands/builtin/BuiltInHandler.js.map +1 -0
  10. package/build/commands/builtin/DeployBuiltInZip.js.map +1 -0
  11. package/build/commands/builtin/StageWebrootZip.js.map +1 -0
  12. package/build/commands/create.js.map +1 -0
  13. package/build/commands/deploy.js.map +1 -0
  14. package/build/{src/commands → commands}/doctor.js +12 -1
  15. package/build/commands/doctor.js.map +1 -0
  16. package/build/commands/help.js.map +1 -0
  17. package/build/commands/info.js.map +1 -0
  18. package/build/{src/commands → commands}/init.js +1 -2
  19. package/build/commands/init.js.map +1 -0
  20. package/build/commands/package.js.map +1 -0
  21. package/build/commands/publish.js.map +1 -0
  22. package/build/commands/settings.js.map +1 -0
  23. package/build/commands/start.js.map +1 -0
  24. package/build/commands/test.js.map +1 -0
  25. package/build/commands/user.js.map +1 -0
  26. package/build/expressRoutes/all.js.map +1 -0
  27. package/build/expressRoutes/api.js.map +1 -0
  28. package/build/expressRoutes/functionBinder.js.map +1 -0
  29. package/build/integration-tests/quickstart-scenario.test.js.map +1 -0
  30. package/build/lib/CaseUtils.js.map +1 -0
  31. package/build/lib/DirectoryUtils.js.map +1 -0
  32. package/build/lib/LiftConfig.js.map +1 -0
  33. package/build/{src/lib → lib}/LiftVersion.js +1 -1
  34. package/build/lib/LiftVersion.js.map +1 -0
  35. package/build/lib/Tests/fileCompare.test.js.map +1 -0
  36. package/build/lib/askQuestion.js.map +1 -0
  37. package/build/lib/executeCommand.js.map +1 -0
  38. package/build/lib/fileCompare.js.map +1 -0
  39. package/build/lib/openAPI/ApiBuildCollector.js.map +1 -0
  40. package/build/lib/openAPI/WebrootFileSupport.js.map +1 -0
  41. package/build/lib/openAPI/openApiConstruction.js.map +1 -0
  42. package/build/lib/pathResolve.js.map +1 -0
  43. package/build/lib/utils.js.map +1 -0
  44. package/build/{src/lift.js → lift.js} +0 -0
  45. package/build/lift.js.map +1 -0
  46. package/package.json +78 -79
  47. package/src/commands/actions/initQuestions.ts +133 -133
  48. package/src/commands/actions/setupPackageJson.ts +32 -32
  49. package/src/commands/build.ts +173 -173
  50. package/src/commands/builtin/ApiDocMaker.ts +105 -106
  51. package/src/commands/builtin/BuiltInHandler.ts +47 -47
  52. package/src/commands/builtin/DeployBuiltInZip.ts +25 -25
  53. package/src/commands/builtin/StageWebrootZip.ts +36 -36
  54. package/src/commands/create.ts +52 -52
  55. package/src/commands/deploy.ts +161 -161
  56. package/src/commands/doctor.ts +118 -107
  57. package/src/commands/help.ts +178 -178
  58. package/src/commands/info.ts +42 -42
  59. package/src/commands/init.ts +60 -61
  60. package/src/commands/package.ts +234 -234
  61. package/src/commands/publish.ts +330 -330
  62. package/src/commands/settings.ts +73 -73
  63. package/src/commands/start.ts +43 -43
  64. package/src/commands/test.ts +37 -37
  65. package/src/commands/user.ts +20 -20
  66. package/src/expressRoutes/all.ts +99 -99
  67. package/src/expressRoutes/api.ts +22 -22
  68. package/src/expressRoutes/functionBinder.ts +155 -155
  69. package/src/integration-tests/quickstart-scenario.test.ts +76 -76
  70. package/src/lib/CaseUtils.ts +63 -63
  71. package/src/lib/DirectoryUtils.ts +34 -34
  72. package/src/lib/LiftConfig.ts +74 -74
  73. package/src/lib/LiftVersion.ts +87 -87
  74. package/src/lib/Tests/fileCompare.test.ts +35 -35
  75. package/src/lib/askQuestion.ts +17 -17
  76. package/src/lib/executeCommand.ts +45 -45
  77. package/src/lib/fileCompare.ts +55 -55
  78. package/src/lib/openAPI/ApiBuildCollector.ts +47 -47
  79. package/src/lib/openAPI/WebrootFileSupport.ts +19 -19
  80. package/src/lib/openAPI/openApiConstruction.ts +196 -196
  81. package/src/lib/pathResolve.ts +26 -26
  82. package/src/lib/utils.ts +43 -43
  83. package/src/lift.ts +87 -87
  84. package/templateData/function-definition-template +20 -20
  85. package/templateData/function-local-ts +16 -16
  86. package/templateData/function-main-ts +16 -16
  87. package/templateData/function-runmain-mjs +6 -6
  88. package/templateData/function-test-template +11 -11
  89. package/templateData/swagger-ui-bundle.js +2 -2
  90. package/templateData/swagger-ui-standalone-preset.js +2 -2
  91. package/templateData/swagger-ui.css +2 -2
  92. package/tsconfig.json +28 -28
  93. package/build/QSTest/functions/IntegrationTest/integrationTest-tests/Sanity.test.js +0 -14
  94. package/build/QSTest/functions/IntegrationTest/integrationTest-tests/Sanity.test.js.map +0 -1
  95. package/build/QSTest/functions/IntegrationTest/src/local.js +0 -33
  96. package/build/QSTest/functions/IntegrationTest/src/local.js.map +0 -1
  97. package/build/QSTest/functions/IntegrationTest/src/main.js +0 -29
  98. package/build/QSTest/functions/IntegrationTest/src/main.js.map +0 -1
  99. package/build/src/commands/actions/initQuestions.js.map +0 -1
  100. package/build/src/commands/actions/makePackageJson.js.map +0 -1
  101. package/build/src/commands/actions/setupPackageJson.js.map +0 -1
  102. package/build/src/commands/build.js.map +0 -1
  103. package/build/src/commands/builtin/ApiDocMaker.js.map +0 -1
  104. package/build/src/commands/builtin/BuiltInHandler.js.map +0 -1
  105. package/build/src/commands/builtin/DeployBuiltInZip.js.map +0 -1
  106. package/build/src/commands/builtin/StageWebrootZip.js.map +0 -1
  107. package/build/src/commands/create.js.map +0 -1
  108. package/build/src/commands/deploy.js.map +0 -1
  109. package/build/src/commands/doctor.js.map +0 -1
  110. package/build/src/commands/help.js.map +0 -1
  111. package/build/src/commands/info.js.map +0 -1
  112. package/build/src/commands/init.js.map +0 -1
  113. package/build/src/commands/package.js.map +0 -1
  114. package/build/src/commands/publish.js.map +0 -1
  115. package/build/src/commands/settings.js.map +0 -1
  116. package/build/src/commands/start.js.map +0 -1
  117. package/build/src/commands/test.js.map +0 -1
  118. package/build/src/commands/user.js.map +0 -1
  119. package/build/src/expressRoutes/all.js.map +0 -1
  120. package/build/src/expressRoutes/api.js.map +0 -1
  121. package/build/src/expressRoutes/functionBinder.js.map +0 -1
  122. package/build/src/integration-tests/quickstart-scenario.test.js.map +0 -1
  123. package/build/src/lib/CaseUtils.js.map +0 -1
  124. package/build/src/lib/DirectoryUtils.js.map +0 -1
  125. package/build/src/lib/LiftConfig.js.map +0 -1
  126. package/build/src/lib/LiftVersion.js.map +0 -1
  127. package/build/src/lib/Tests/fileCompare.test.js.map +0 -1
  128. package/build/src/lib/askQuestion.js.map +0 -1
  129. package/build/src/lib/executeCommand.js.map +0 -1
  130. package/build/src/lib/fileCompare.js.map +0 -1
  131. package/build/src/lib/openAPI/ApiBuildCollector.js.map +0 -1
  132. package/build/src/lib/openAPI/WebrootFileSupport.js.map +0 -1
  133. package/build/src/lib/openAPI/openApiConstruction.js.map +0 -1
  134. package/build/src/lib/pathResolve.js.map +0 -1
  135. package/build/src/lib/utils.js.map +0 -1
  136. package/build/src/lift.js.map +0 -1
  137. /package/build/{src/commands → commands}/actions/initQuestions.js +0 -0
  138. /package/build/{src/commands → commands}/actions/makePackageJson.js +0 -0
  139. /package/build/{src/commands → commands}/actions/setupPackageJson.js +0 -0
  140. /package/build/{src/commands → commands}/build.js +0 -0
  141. /package/build/{src/commands → commands}/builtin/BuiltInHandler.js +0 -0
  142. /package/build/{src/commands → commands}/builtin/DeployBuiltInZip.js +0 -0
  143. /package/build/{src/commands → commands}/builtin/StageWebrootZip.js +0 -0
  144. /package/build/{src/commands → commands}/create.js +0 -0
  145. /package/build/{src/commands → commands}/deploy.js +0 -0
  146. /package/build/{src/commands → commands}/help.js +0 -0
  147. /package/build/{src/commands → commands}/info.js +0 -0
  148. /package/build/{src/commands → commands}/package.js +0 -0
  149. /package/build/{src/commands → commands}/publish.js +0 -0
  150. /package/build/{src/commands → commands}/settings.js +0 -0
  151. /package/build/{src/commands → commands}/start.js +0 -0
  152. /package/build/{src/commands → commands}/test.js +0 -0
  153. /package/build/{src/commands → commands}/user.js +0 -0
  154. /package/build/{src/expressRoutes → expressRoutes}/all.js +0 -0
  155. /package/build/{src/expressRoutes → expressRoutes}/api.js +0 -0
  156. /package/build/{src/expressRoutes → expressRoutes}/functionBinder.js +0 -0
  157. /package/build/{src/integration-tests → integration-tests}/quickstart-scenario.test.js +0 -0
  158. /package/build/{src/lib → lib}/CaseUtils.js +0 -0
  159. /package/build/{src/lib → lib}/DirectoryUtils.js +0 -0
  160. /package/build/{src/lib → lib}/LiftConfig.js +0 -0
  161. /package/build/{src/lib → lib}/Tests/fileCompare.test.js +0 -0
  162. /package/build/{src/lib → lib}/askQuestion.js +0 -0
  163. /package/build/{src/lib → lib}/executeCommand.js +0 -0
  164. /package/build/{src/lib → lib}/fileCompare.js +0 -0
  165. /package/build/{src/lib → lib}/openAPI/ApiBuildCollector.js +0 -0
  166. /package/build/{src/lib → lib}/openAPI/WebrootFileSupport.js +0 -0
  167. /package/build/{src/lib → lib}/openAPI/openApiConstruction.js +0 -0
  168. /package/build/{src/lib → lib}/pathResolve.js +0 -0
  169. /package/build/{src/lib → lib}/utils.js +0 -0
@@ -1,42 +1,42 @@
1
- import * as fs from 'fs'
2
- import * as path from 'path'
3
- import * as ac from 'ansi-colors'
4
- import { resolvePaths } from '../lib/pathResolve'
5
- import { getProjectName } from '../lib/LiftVersion'
6
-
7
- /// Info command
8
- export function doInfo (
9
- ): void {
10
- const projectName = getProjectName()
11
- const projectPaths = resolvePaths()
12
-
13
- const publishedFile = path.join(projectPaths.basePath, '.published')
14
- let publishedInfo = { url: '', time: 0 }
15
- try {
16
- if (fs.existsSync(publishedFile)) {
17
- publishedInfo = JSON.parse(fs.readFileSync(publishedFile).toString())
18
- }
19
- } catch (e) {
20
- }
21
- const deployedFile = path.join(projectPaths.basePath, '.deployed')
22
- let deployedInfo: any = {}
23
- try {
24
- if (fs.existsSync(deployedFile)) {
25
- deployedInfo = JSON.parse(fs.readFileSync(deployedFile).toString())
26
- }
27
- } catch (e) {
28
- }
29
- if (publishedInfo.url === '') {
30
- console.log(ac.bold.magenta(`${projectName} is not yet published`))
31
- } else {
32
- const publishedUrl = publishedInfo.url
33
- const when = new Date(publishedInfo.time)
34
- console.log(ac.green.bold(`${projectName} Last published to ${publishedUrl} at ${when.toString()}`))
35
- for (const depName of Object.getOwnPropertyNames(deployedInfo)) {
36
- const depTime = deployedInfo[depName] ?? 0
37
- if (depTime > 0 && depTime < publishedInfo.time) {
38
- console.log(' ' + ac.blue.bold(depName))
39
- }
40
- }
41
- }
42
- }
1
+ import * as fs from 'fs'
2
+ import * as path from 'path'
3
+ import * as ac from 'ansi-colors'
4
+ import { resolvePaths } from '../lib/pathResolve'
5
+ import { getProjectName } from '../lib/LiftVersion'
6
+
7
+ /// Info command
8
+ export function doInfo (
9
+ ): void {
10
+ const projectName = getProjectName()
11
+ const projectPaths = resolvePaths()
12
+
13
+ const publishedFile = path.join(projectPaths.basePath, '.published')
14
+ let publishedInfo = { url: '', time: 0 }
15
+ try {
16
+ if (fs.existsSync(publishedFile)) {
17
+ publishedInfo = JSON.parse(fs.readFileSync(publishedFile).toString())
18
+ }
19
+ } catch (e) {
20
+ }
21
+ const deployedFile = path.join(projectPaths.basePath, '.deployed')
22
+ let deployedInfo: any = {}
23
+ try {
24
+ if (fs.existsSync(deployedFile)) {
25
+ deployedInfo = JSON.parse(fs.readFileSync(deployedFile).toString())
26
+ }
27
+ } catch (e) {
28
+ }
29
+ if (publishedInfo.url === '') {
30
+ console.log(ac.bold.magenta(`${projectName} is not yet published`))
31
+ } else {
32
+ const publishedUrl = publishedInfo.url
33
+ const when = new Date(publishedInfo.time)
34
+ console.log(ac.green.bold(`${projectName} Last published to ${publishedUrl} at ${when.toString()}`))
35
+ for (const depName of Object.getOwnPropertyNames(deployedInfo)) {
36
+ const depTime = deployedInfo[depName] ?? 0
37
+ if (depTime > 0 && depTime < publishedInfo.time) {
38
+ console.log(' ' + ac.blue.bold(depName))
39
+ }
40
+ }
41
+ }
42
+ }
@@ -1,61 +1,60 @@
1
- /** Handles the init command to set up a new project space
2
- *
3
- * necessary inputs:
4
- * - path to project folder
5
- *
6
- * create folder if not exist
7
- * populate with directory structure
8
- * build
9
- * functions
10
- * tsccoinfig
11
- * package.json
12
- *
13
- * npm i
14
- * npm run build
15
- */
16
-
17
- import * as path from 'path'
18
- import * as fs from 'fs'
19
- import { helpInit } from './help'
20
- import { interrogateUserForPackageJsonSettings } from './actions/initQuestions'
21
- import { addPackageScripts, installPackage, installDevPackage } from './actions/setupPackageJson'
22
-
23
- export async function doInit (
24
- folder?: string,
25
- defaults?: boolean
26
- ): Promise<void> {
27
- if (folder === undefined || folder === '') {
28
- helpInit()
29
- return
30
- }
31
- const cwd = process.cwd()
32
- const refPath = path.isAbsolute(folder) ? path.normalize(folder) : path.normalize(path.join(cwd, folder))
33
- console.log(refPath)
34
- if (!fs.existsSync(refPath)) {
35
- fs.mkdirSync(refPath, { recursive: true })
36
- }
37
-
38
- const funcDir = path.join(refPath, 'functions')
39
- if (!fs.existsSync(funcDir)) {
40
- fs.mkdirSync(funcDir)
41
- }
42
-
43
- // make webroot with docs folder and placeholder yaml
44
- const webrootDocs = path.join(refPath, 'webroot', 'docs')
45
- if (!fs.existsSync(webrootDocs)) {
46
- fs.mkdirSync(webrootDocs, { recursive: true })
47
- const yaml = path.join(webrootDocs, 'apidoc.yaml')
48
- fs.writeFileSync(yaml, '')
49
- const swaggerSrcDir = path.join(__dirname, '..', '..', 'templateData')
50
- fs.copyFileSync(path.join(swaggerSrcDir, 'swagger-ui.css'), path.join(webrootDocs, 'swagger-ui.css'))
51
- fs.copyFileSync(path.join(swaggerSrcDir, 'swagger-ui-bundle.js'), path.join(webrootDocs, 'swagger-ui-bundle.js'))
52
- fs.copyFileSync(path.join(swaggerSrcDir, 'swagger-ui-standalone-preset.js'), path.join(webrootDocs, 'swagger-ui-standalone-preset.js'))
53
- }
54
-
55
- await interrogateUserForPackageJsonSettings(refPath, defaults)
56
- await addPackageScripts(refPath)
57
- await installDevPackage(refPath, '@types/node')
58
- await installDevPackage(refPath, 'typescript')
59
- await installDevPackage(refPath, 'tap')
60
- await installPackage(refPath, '@tremho/inverse-y')
61
- }
1
+ /** Handles the init command to set up a new project space
2
+ *
3
+ * necessary inputs:
4
+ * - path to project folder
5
+ *
6
+ * create folder if not exist
7
+ * populate with directory structure
8
+ * build
9
+ * functions
10
+ * tsccoinfig
11
+ * package.json
12
+ *
13
+ * npm i
14
+ * npm run build
15
+ */
16
+
17
+ import * as path from 'path'
18
+ import * as fs from 'fs'
19
+ import { helpInit } from './help'
20
+ import { interrogateUserForPackageJsonSettings } from './actions/initQuestions'
21
+ import { addPackageScripts, installPackage, installDevPackage } from './actions/setupPackageJson'
22
+
23
+ export async function doInit (
24
+ folder?: string,
25
+ defaults?: boolean
26
+ ): Promise<void> {
27
+ if (folder === undefined || folder === '') {
28
+ helpInit()
29
+ return
30
+ }
31
+ const cwd = process.cwd()
32
+ const refPath = path.isAbsolute(folder) ? path.normalize(folder) : path.normalize(path.join(cwd, folder))
33
+ if (!fs.existsSync(refPath)) {
34
+ fs.mkdirSync(refPath, { recursive: true })
35
+ }
36
+
37
+ const funcDir = path.join(refPath, 'functions')
38
+ if (!fs.existsSync(funcDir)) {
39
+ fs.mkdirSync(funcDir)
40
+ }
41
+
42
+ // make webroot with docs folder and placeholder yaml
43
+ const webrootDocs = path.join(refPath, 'webroot', 'docs')
44
+ if (!fs.existsSync(webrootDocs)) {
45
+ fs.mkdirSync(webrootDocs, { recursive: true })
46
+ const yaml = path.join(webrootDocs, 'apidoc.yaml')
47
+ fs.writeFileSync(yaml, '')
48
+ const swaggerSrcDir = path.join(__dirname, '..', '..', '..', 'templateData')
49
+ fs.copyFileSync(path.join(swaggerSrcDir, 'swagger-ui.css'), path.join(webrootDocs, 'swagger-ui.css'))
50
+ fs.copyFileSync(path.join(swaggerSrcDir, 'swagger-ui-bundle.js'), path.join(webrootDocs, 'swagger-ui-bundle.js'))
51
+ fs.copyFileSync(path.join(swaggerSrcDir, 'swagger-ui-standalone-preset.js'), path.join(webrootDocs, 'swagger-ui-standalone-preset.js'))
52
+ }
53
+
54
+ await interrogateUserForPackageJsonSettings(refPath, defaults)
55
+ await addPackageScripts(refPath)
56
+ await installDevPackage(refPath, '@types/node')
57
+ await installDevPackage(refPath, 'typescript')
58
+ await installDevPackage(refPath, 'tap')
59
+ await installPackage(refPath, '@tremho/inverse-y')
60
+ }