hotstaq 0.5.3

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 (318) hide show
  1. package/.dockerignore +123 -0
  2. package/.eslintignore +17 -0
  3. package/.eslintrc.js +11 -0
  4. package/.vscode/launch.json +201 -0
  5. package/.vscode/settings.json +2 -0
  6. package/.vscode/tasks.json +88 -0
  7. package/CONTRIBUTING.md +157 -0
  8. package/LICENSE +21 -0
  9. package/README.md +128 -0
  10. package/bin/hotstaq +3 -0
  11. package/bin/hotstaq.cmd +1 -0
  12. package/build/src/Hot.d.ts +167 -0
  13. package/build/src/Hot.d.ts.map +1 -0
  14. package/build/src/Hot.js +365 -0
  15. package/build/src/Hot.js.map +1 -0
  16. package/build/src/HotAPI.d.ts +137 -0
  17. package/build/src/HotAPI.d.ts.map +1 -0
  18. package/build/src/HotAPI.js +353 -0
  19. package/build/src/HotAPI.js.map +1 -0
  20. package/build/src/HotAgentAPI.d.ts +22 -0
  21. package/build/src/HotAgentAPI.d.ts.map +1 -0
  22. package/build/src/HotAgentAPI.js +85 -0
  23. package/build/src/HotAgentAPI.js.map +1 -0
  24. package/build/src/HotAgentRoute.d.ts +17 -0
  25. package/build/src/HotAgentRoute.d.ts.map +1 -0
  26. package/build/src/HotAgentRoute.js +109 -0
  27. package/build/src/HotAgentRoute.js.map +1 -0
  28. package/build/src/HotBuilder.d.ts +52 -0
  29. package/build/src/HotBuilder.d.ts.map +1 -0
  30. package/build/src/HotBuilder.js +242 -0
  31. package/build/src/HotBuilder.js.map +1 -0
  32. package/build/src/HotClient.d.ts +31 -0
  33. package/build/src/HotClient.d.ts.map +1 -0
  34. package/build/src/HotClient.js +19 -0
  35. package/build/src/HotClient.js.map +1 -0
  36. package/build/src/HotComponent.d.ts +118 -0
  37. package/build/src/HotComponent.d.ts.map +1 -0
  38. package/build/src/HotComponent.js +89 -0
  39. package/build/src/HotComponent.js.map +1 -0
  40. package/build/src/HotCreator.d.ts +88 -0
  41. package/build/src/HotCreator.d.ts.map +1 -0
  42. package/build/src/HotCreator.js +445 -0
  43. package/build/src/HotCreator.js.map +1 -0
  44. package/build/src/HotDB.d.ts +69 -0
  45. package/build/src/HotDB.d.ts.map +1 -0
  46. package/build/src/HotDB.js +29 -0
  47. package/build/src/HotDB.js.map +1 -0
  48. package/build/src/HotDBConnectionInterface.d.ts +40 -0
  49. package/build/src/HotDBConnectionInterface.d.ts.map +1 -0
  50. package/build/src/HotDBConnectionInterface.js +3 -0
  51. package/build/src/HotDBConnectionInterface.js.map +1 -0
  52. package/build/src/HotFile.d.ts +134 -0
  53. package/build/src/HotFile.d.ts.map +1 -0
  54. package/build/src/HotFile.js +454 -0
  55. package/build/src/HotFile.js.map +1 -0
  56. package/build/src/HotGenerator.d.ts +80 -0
  57. package/build/src/HotGenerator.d.ts.map +1 -0
  58. package/build/src/HotGenerator.js +342 -0
  59. package/build/src/HotGenerator.js.map +1 -0
  60. package/build/src/HotHTTPServer.d.ts +162 -0
  61. package/build/src/HotHTTPServer.d.ts.map +1 -0
  62. package/build/src/HotHTTPServer.js +863 -0
  63. package/build/src/HotHTTPServer.js.map +1 -0
  64. package/build/src/HotIO.d.ts +47 -0
  65. package/build/src/HotIO.d.ts.map +1 -0
  66. package/build/src/HotIO.js +232 -0
  67. package/build/src/HotIO.js.map +1 -0
  68. package/build/src/HotLog.d.ts +60 -0
  69. package/build/src/HotLog.d.ts.map +1 -0
  70. package/build/src/HotLog.js +126 -0
  71. package/build/src/HotLog.js.map +1 -0
  72. package/build/src/HotPage.d.ts +125 -0
  73. package/build/src/HotPage.d.ts.map +1 -0
  74. package/build/src/HotPage.js +178 -0
  75. package/build/src/HotPage.js.map +1 -0
  76. package/build/src/HotRoute.d.ts +82 -0
  77. package/build/src/HotRoute.d.ts.map +1 -0
  78. package/build/src/HotRoute.js +83 -0
  79. package/build/src/HotRoute.js.map +1 -0
  80. package/build/src/HotRouteMethod.d.ts +129 -0
  81. package/build/src/HotRouteMethod.d.ts.map +1 -0
  82. package/build/src/HotRouteMethod.js +84 -0
  83. package/build/src/HotRouteMethod.js.map +1 -0
  84. package/build/src/HotServer.d.ts +152 -0
  85. package/build/src/HotServer.d.ts.map +1 -0
  86. package/build/src/HotServer.js +109 -0
  87. package/build/src/HotServer.js.map +1 -0
  88. package/build/src/HotSetAsWeb.d.ts +2 -0
  89. package/build/src/HotSetAsWeb.d.ts.map +1 -0
  90. package/build/src/HotSetAsWeb.js +5 -0
  91. package/build/src/HotSetAsWeb.js.map +1 -0
  92. package/build/src/HotStaq.d.ts +603 -0
  93. package/build/src/HotStaq.d.ts.map +1 -0
  94. package/build/src/HotStaq.js +1260 -0
  95. package/build/src/HotStaq.js.map +1 -0
  96. package/build/src/HotStaqWeb.d.ts +18 -0
  97. package/build/src/HotStaqWeb.d.ts.map +1 -0
  98. package/build/src/HotStaqWeb.js +44 -0
  99. package/build/src/HotStaqWeb.js.map +1 -0
  100. package/build/src/HotTestDriver.d.ts +63 -0
  101. package/build/src/HotTestDriver.d.ts.map +1 -0
  102. package/build/src/HotTestDriver.js +187 -0
  103. package/build/src/HotTestDriver.js.map +1 -0
  104. package/build/src/HotTestElement.d.ts +71 -0
  105. package/build/src/HotTestElement.d.ts.map +1 -0
  106. package/build/src/HotTestElement.js +37 -0
  107. package/build/src/HotTestElement.js.map +1 -0
  108. package/build/src/HotTestMap.d.ts +83 -0
  109. package/build/src/HotTestMap.d.ts.map +1 -0
  110. package/build/src/HotTestMap.js +58 -0
  111. package/build/src/HotTestMap.js.map +1 -0
  112. package/build/src/HotTestSeleniumDriver.d.ts +86 -0
  113. package/build/src/HotTestSeleniumDriver.d.ts.map +1 -0
  114. package/build/src/HotTestSeleniumDriver.js +400 -0
  115. package/build/src/HotTestSeleniumDriver.js.map +1 -0
  116. package/build/src/HotTester.d.ts +188 -0
  117. package/build/src/HotTester.d.ts.map +1 -0
  118. package/build/src/HotTester.js +622 -0
  119. package/build/src/HotTester.js.map +1 -0
  120. package/build/src/HotTesterAPI.d.ts +15 -0
  121. package/build/src/HotTesterAPI.d.ts.map +1 -0
  122. package/build/src/HotTesterAPI.js +161 -0
  123. package/build/src/HotTesterAPI.js.map +1 -0
  124. package/build/src/HotTesterMocha.d.ts +50 -0
  125. package/build/src/HotTesterMocha.d.ts.map +1 -0
  126. package/build/src/HotTesterMocha.js +205 -0
  127. package/build/src/HotTesterMocha.js.map +1 -0
  128. package/build/src/HotTesterMochaSelenium.d.ts +70 -0
  129. package/build/src/HotTesterMochaSelenium.d.ts.map +1 -0
  130. package/build/src/HotTesterMochaSelenium.js +257 -0
  131. package/build/src/HotTesterMochaSelenium.js.map +1 -0
  132. package/build/src/HotTesterServer.d.ts +114 -0
  133. package/build/src/HotTesterServer.d.ts.map +1 -0
  134. package/build/src/HotTesterServer.js +575 -0
  135. package/build/src/HotTesterServer.js.map +1 -0
  136. package/build/src/api copy.d.ts +2 -0
  137. package/build/src/api copy.d.ts.map +1 -0
  138. package/build/src/api copy.js +153 -0
  139. package/build/src/api copy.js.map +1 -0
  140. package/build/src/api-web.d.ts +2 -0
  141. package/build/src/api-web.d.ts.map +1 -0
  142. package/build/src/api-web.js +45 -0
  143. package/build/src/api-web.js.map +1 -0
  144. package/build/src/api.d.ts +33 -0
  145. package/build/src/api.d.ts.map +1 -0
  146. package/build/src/api.js +78 -0
  147. package/build/src/api.js.map +1 -0
  148. package/build/src/cli.d.ts +2 -0
  149. package/build/src/cli.d.ts.map +1 -0
  150. package/build/src/cli.js +1040 -0
  151. package/build/src/cli.js.map +1 -0
  152. package/build/src/schemas/HotDBInflux.d.ts +63 -0
  153. package/build/src/schemas/HotDBInflux.d.ts.map +1 -0
  154. package/build/src/schemas/HotDBInflux.js +239 -0
  155. package/build/src/schemas/HotDBInflux.js.map +1 -0
  156. package/build/src/schemas/HotDBMigration.d.ts +19 -0
  157. package/build/src/schemas/HotDBMigration.d.ts.map +1 -0
  158. package/build/src/schemas/HotDBMigration.js +15 -0
  159. package/build/src/schemas/HotDBMigration.js.map +1 -0
  160. package/build/src/schemas/HotDBMySQL.d.ts +65 -0
  161. package/build/src/schemas/HotDBMySQL.d.ts.map +1 -0
  162. package/build/src/schemas/HotDBMySQL.js +387 -0
  163. package/build/src/schemas/HotDBMySQL.js.map +1 -0
  164. package/build/src/schemas/HotDBSchema.d.ts +15 -0
  165. package/build/src/schemas/HotDBSchema.d.ts.map +1 -0
  166. package/build/src/schemas/HotDBSchema.js +19 -0
  167. package/build/src/schemas/HotDBSchema.js.map +1 -0
  168. package/build/src/schemas/influx/InfluxSchema.d.ts +14 -0
  169. package/build/src/schemas/influx/InfluxSchema.d.ts.map +1 -0
  170. package/build/src/schemas/influx/InfluxSchema.js +33 -0
  171. package/build/src/schemas/influx/InfluxSchema.js.map +1 -0
  172. package/build/src/schemas/mysql/MySQLSchema.d.ts +39 -0
  173. package/build/src/schemas/mysql/MySQLSchema.d.ts.map +1 -0
  174. package/build/src/schemas/mysql/MySQLSchema.js +151 -0
  175. package/build/src/schemas/mysql/MySQLSchema.js.map +1 -0
  176. package/build/src/schemas/mysql/MySQLSchemaField.d.ts +168 -0
  177. package/build/src/schemas/mysql/MySQLSchemaField.d.ts.map +1 -0
  178. package/build/src/schemas/mysql/MySQLSchemaField.js +260 -0
  179. package/build/src/schemas/mysql/MySQLSchemaField.js.map +1 -0
  180. package/build/src/schemas/mysql/MySQLSchemaTable.d.ts +49 -0
  181. package/build/src/schemas/mysql/MySQLSchemaTable.d.ts.map +1 -0
  182. package/build/src/schemas/mysql/MySQLSchemaTable.js +310 -0
  183. package/build/src/schemas/mysql/MySQLSchemaTable.js.map +1 -0
  184. package/build-web/HotStaq.js +2 -0
  185. package/build-web/HotStaq.min.js +119 -0
  186. package/build-web/HotStaqTests_HelloWorldAPI.js +133 -0
  187. package/builder/docker/Dockerfile.linux.gen +42 -0
  188. package/builder/docker/README.md +36 -0
  189. package/builder/docker/app/start.sh +8 -0
  190. package/builder/docker/dockerignore +3 -0
  191. package/builder/docker/scripts/build.bat +11 -0
  192. package/builder/docker/scripts/build.sh +11 -0
  193. package/builder/docker/scripts/start-app.bat +7 -0
  194. package/builder/docker/scripts/start-app.sh +7 -0
  195. package/builder/docker/scripts/stop-app.bat +5 -0
  196. package/builder/docker/scripts/stop-app.sh +5 -0
  197. package/builder/docker-compose/docker-compose.gen.yaml +41 -0
  198. package/builder/docker-compose/env-skeleton +4 -0
  199. package/creator/project/.vscode/launch.json +59 -0
  200. package/creator/project/README.md +20 -0
  201. package/creator/project/gitignore +118 -0
  202. package/creator/project/npmignore +118 -0
  203. package/creator/public/api-test.hott +28 -0
  204. package/creator/public/index.hott +12 -0
  205. package/creator/ts/src/AppAPI.ts +30 -0
  206. package/creator/ts/src/HelloWorld.ts +39 -0
  207. package/creator/ts/src/WebExport.ts +7 -0
  208. package/creator/ts/tsconfig-web.json +73 -0
  209. package/creator/ts/tsconfig.json +73 -0
  210. package/creator/ts/webpack-api.config.js +57 -0
  211. package/dbstart.sh +19 -0
  212. package/dbstop.sh +4 -0
  213. package/docs/.nojekyll +1 -0
  214. package/docs/README.md +130 -0
  215. package/docs/classes/Hot.md +477 -0
  216. package/docs/classes/HotAPI.md +369 -0
  217. package/docs/classes/HotClient.md +95 -0
  218. package/docs/classes/HotComponent.md +279 -0
  219. package/docs/classes/HotDB.md +247 -0
  220. package/docs/classes/HotDBInflux.md +404 -0
  221. package/docs/classes/HotDBMigration.md +80 -0
  222. package/docs/classes/HotDBMySQL.md +310 -0
  223. package/docs/classes/HotDBSchema.md +51 -0
  224. package/docs/classes/HotFile.md +353 -0
  225. package/docs/classes/HotHTTPServer.md +700 -0
  226. package/docs/classes/HotLog.md +162 -0
  227. package/docs/classes/HotPage.md +357 -0
  228. package/docs/classes/HotRoute.md +312 -0
  229. package/docs/classes/HotRouteMethod.md +271 -0
  230. package/docs/classes/HotServer.md +311 -0
  231. package/docs/classes/HotStaq.md +1155 -0
  232. package/docs/classes/HotTestDestination.md +58 -0
  233. package/docs/classes/HotTestDriver.md +332 -0
  234. package/docs/classes/HotTestElement.md +88 -0
  235. package/docs/classes/HotTestElementOptions.md +71 -0
  236. package/docs/classes/HotTestMap.md +92 -0
  237. package/docs/classes/HotTestSeleniumDriver.md +542 -0
  238. package/docs/classes/HotTester.md +653 -0
  239. package/docs/classes/HotTesterAPI.md +493 -0
  240. package/docs/classes/HotTesterMocha.md +843 -0
  241. package/docs/classes/HotTesterMochaSelenium.md +896 -0
  242. package/docs/classes/HotTesterServer.md +633 -0
  243. package/docs/classes/InfluxSchema.md +74 -0
  244. package/docs/classes/MySQLSchema.md +199 -0
  245. package/docs/classes/MySQLSchemaField.md +330 -0
  246. package/docs/classes/MySQLSchemaTable.md +176 -0
  247. package/docs/enums/ConnectionStatus.md +43 -0
  248. package/docs/enums/DeveloperMode.md +38 -0
  249. package/docs/enums/EventExecutionType.md +43 -0
  250. package/docs/enums/HTTPMethod.md +32 -0
  251. package/docs/enums/HotDBGenerationType.md +30 -0
  252. package/docs/enums/HotLogLevel.md +88 -0
  253. package/docs/interfaces/HotDBConnectionInterface.md +116 -0
  254. package/docs/interfaces/HotDestination.md +62 -0
  255. package/docs/interfaces/HotSite.md +187 -0
  256. package/docs/interfaces/HotSiteMapPath.md +37 -0
  257. package/docs/interfaces/HotSiteRoute.md +79 -0
  258. package/docs/interfaces/HotStartOptions.md +115 -0
  259. package/docs/interfaces/HotTestPage.md +44 -0
  260. package/docs/interfaces/HotTestStop.md +62 -0
  261. package/docs/interfaces/IHotComponent.md +135 -0
  262. package/docs/interfaces/IHotStaq.md +118 -0
  263. package/docs/interfaces/IHotTestElement.md +54 -0
  264. package/docs/interfaces/IHotTestElementOptions.md +43 -0
  265. package/docs/interfaces/MySQLResults.md +43 -0
  266. package/docs/interfaces/MySQLSchemaFieldResult.md +75 -0
  267. package/docs/modules.md +182 -0
  268. package/package.json +65 -0
  269. package/selenium-start.sh +7 -0
  270. package/selenium-stop.sh +3 -0
  271. package/src/Hot.ts +319 -0
  272. package/src/HotAPI.ts +386 -0
  273. package/src/HotAgentAPI.ts +43 -0
  274. package/src/HotAgentRoute.ts +44 -0
  275. package/src/HotBuilder.ts +221 -0
  276. package/src/HotClient.ts +40 -0
  277. package/src/HotComponent.ts +158 -0
  278. package/src/HotCreator.ts +470 -0
  279. package/src/HotDB.ts +79 -0
  280. package/src/HotDBConnectionInterface.ts +40 -0
  281. package/src/HotFile.ts +617 -0
  282. package/src/HotGenerator.ts +446 -0
  283. package/src/HotHTTPServer.ts +954 -0
  284. package/src/HotIO.ts +160 -0
  285. package/src/HotLog.ts +158 -0
  286. package/src/HotPage.ts +206 -0
  287. package/src/HotRoute.ts +137 -0
  288. package/src/HotRouteMethod.ts +216 -0
  289. package/src/HotServer.ts +211 -0
  290. package/src/HotSetAsWeb.ts +3 -0
  291. package/src/HotStaq.ts +1881 -0
  292. package/src/HotTestDriver.ts +171 -0
  293. package/src/HotTestElement.ts +97 -0
  294. package/src/HotTestMap.ts +130 -0
  295. package/src/HotTestSeleniumDriver.ts +381 -0
  296. package/src/HotTester.ts +696 -0
  297. package/src/HotTesterAPI.ts +126 -0
  298. package/src/HotTesterMocha.ts +133 -0
  299. package/src/HotTesterMochaSelenium.ts +189 -0
  300. package/src/HotTesterServer.ts +551 -0
  301. package/src/api-web.ts +48 -0
  302. package/src/api.ts +103 -0
  303. package/src/cli.ts +1225 -0
  304. package/src/schemas/HotDBInflux.ts +211 -0
  305. package/src/schemas/HotDBMigration.ts +24 -0
  306. package/src/schemas/HotDBMySQL.ts +312 -0
  307. package/src/schemas/HotDBSchema.ts +21 -0
  308. package/src/schemas/influx/InfluxSchema.ts +19 -0
  309. package/src/schemas/mysql/MySQLSchema.ts +90 -0
  310. package/src/schemas/mysql/MySQLSchemaField.ts +408 -0
  311. package/src/schemas/mysql/MySQLSchemaTable.ts +353 -0
  312. package/temp/HotStaqWeb.ts +59 -0
  313. package/tsconfig-generator.json +17 -0
  314. package/tsconfig-web.json +74 -0
  315. package/tsconfig.json +73 -0
  316. package/webpack.config.generator.js +41 -0
  317. package/webpack.config.js +53 -0
  318. package/webpack.config.tests.js +56 -0
@@ -0,0 +1,603 @@
1
+ import { HotPage } from "./HotPage";
2
+ import { HotFile } from "./HotFile";
3
+ import { HotComponent } from "./HotComponent";
4
+ import { HotLog } from "./HotLog";
5
+ import { HotAPI } from "./HotAPI";
6
+ import { DeveloperMode } from "./Hot";
7
+ import { HotTester } from "./HotTester";
8
+ /**
9
+ * A map path for testing.
10
+ */
11
+ export interface HotSiteMapPath {
12
+ /**
13
+ * If set to true, this will start automatically when tests start.
14
+ * The default is true.
15
+ */
16
+ autoStart?: boolean;
17
+ /**
18
+ * The path to the
19
+ */
20
+ path?: string;
21
+ }
22
+ /**
23
+ * A route used in a HotSite.
24
+ */
25
+ export interface HotSiteRoute {
26
+ /**
27
+ * The name of the route. Will appear in the title.
28
+ */
29
+ name: string;
30
+ /**
31
+ * The url to the file to load.
32
+ */
33
+ url: string;
34
+ /**
35
+ * The name of the API to interface with.
36
+ */
37
+ api?: string;
38
+ /**
39
+ * The order in which destinations are supposed to execute. This is
40
+ * ignored if the destinations are an array.
41
+ */
42
+ destinationOrder?: string[];
43
+ /**
44
+ * The HotTesterMap to use. This can be the name of an
45
+ * existing one attached to the selected tester, or
46
+ * can be an array of destinations that will be used to
47
+ * create a new map.
48
+ */
49
+ map?: string | string[] | {
50
+ [name: string]: string | HotSiteMapPath;
51
+ } | HotSiteMapPath[];
52
+ }
53
+ /**
54
+ * A HotSite to load. This SHOULD NOT contain any private secret keys, passwords,
55
+ * or database connection information related to the server. As such, future
56
+ * versions of the HotSite interface should not contain any database related
57
+ * connection info.
58
+ */
59
+ export interface HotSite {
60
+ /**
61
+ * The name of this HotSite.
62
+ */
63
+ name: string;
64
+ /**
65
+ * The path to the current HotSite. This is filled in during parsing.
66
+ */
67
+ hotsitePath?: string;
68
+ /**
69
+ * Additional web server configuration.
70
+ */
71
+ server?: {
72
+ /**
73
+ * The default name for a served Hott file.
74
+ */
75
+ name?: string;
76
+ /**
77
+ * Serve hott files when requested.
78
+ */
79
+ serveHottFiles?: boolean;
80
+ /**
81
+ * The name of the API to interface with across all pages.
82
+ */
83
+ globalApi?: string;
84
+ /**
85
+ * The base url for the server.
86
+ */
87
+ url?: string;
88
+ /**
89
+ * The JavaScript source path.
90
+ */
91
+ jsSrcPath?: string;
92
+ /**
93
+ * The ports to use.
94
+ */
95
+ ports?: {
96
+ /**
97
+ * The HTTP port to serve on.
98
+ */
99
+ http?: number;
100
+ /**
101
+ * The HTTPS port to serve on.
102
+ */
103
+ https?: number;
104
+ /**
105
+ * If set to true, this will redirect from HTTP to HTTPS.
106
+ */
107
+ redirectHTTPtoHTTPS?: boolean;
108
+ };
109
+ /**
110
+ * The list of directory to serve to the client from the server.
111
+ */
112
+ serveDirectories?: {
113
+ /**
114
+ * The web route to take.
115
+ */
116
+ route: string;
117
+ /**
118
+ * The local filesystem path to serve pages from.
119
+ */
120
+ localPath: string;
121
+ }[];
122
+ };
123
+ /**
124
+ * Testing related functionality.
125
+ */
126
+ testing?: {
127
+ web?: {
128
+ /**
129
+ * The tester class to use. EX: HotTesterMochaSelenium
130
+ */
131
+ tester?: string;
132
+ /**
133
+ * The name of the tester to use.
134
+ */
135
+ testerName?: string;
136
+ /**
137
+ * If set to true, this will create a new tester.
138
+ * Default Value: true
139
+ */
140
+ createNewTester?: boolean;
141
+ /**
142
+ * The url that connects to the tester api server.
143
+ */
144
+ testerAPIUrl?: string;
145
+ /**
146
+ * The name of the test driver to use.
147
+ */
148
+ driver?: string;
149
+ /**
150
+ * The url to the html that loads the hott files.
151
+ */
152
+ launchpadUrl?: string;
153
+ /**
154
+ * The maps to test in order.
155
+ */
156
+ maps?: string[];
157
+ };
158
+ api?: {
159
+ /**
160
+ * The tester class to use. EX: HotTesterMocha
161
+ */
162
+ tester?: string;
163
+ /**
164
+ * The name of the tester to use.
165
+ */
166
+ testerName?: string;
167
+ /**
168
+ * If set to true, this will create a new tester.
169
+ * Default Value: true
170
+ */
171
+ createNewTester?: boolean;
172
+ /**
173
+ * The url that connects to the tester api server.
174
+ */
175
+ testerAPIUrl?: string;
176
+ /**
177
+ * The name of the test driver to use.
178
+ */
179
+ driver?: string;
180
+ /**
181
+ * The url to the html that loads the hott files.
182
+ */
183
+ launchpadUrl?: string;
184
+ /**
185
+ * The maps to test in order.
186
+ */
187
+ maps?: string[];
188
+ };
189
+ };
190
+ /**
191
+ * The routes to load.
192
+ */
193
+ routes?: {
194
+ [routeName: string]: HotSiteRoute;
195
+ };
196
+ /**
197
+ * The available APIs on the server. The server must already have these
198
+ * loaded.
199
+ */
200
+ apis?: {
201
+ [name: string]: {
202
+ /**
203
+ * The JS API file to load.
204
+ */
205
+ jsapi?: string;
206
+ /**
207
+ * The exported JS library name to use.
208
+ */
209
+ libraryName?: string;
210
+ /**
211
+ * The name of the api to use.
212
+ */
213
+ apiName?: string;
214
+ /**
215
+ * The port to use.
216
+ */
217
+ port?: number;
218
+ /**
219
+ * The public base url for the api.
220
+ */
221
+ url?: string;
222
+ /**
223
+ * The server-side filepath for the api.
224
+ */
225
+ filepath?: string;
226
+ /**
227
+ * The maps to test in order.
228
+ */
229
+ map?: string[];
230
+ };
231
+ };
232
+ /**
233
+ * Secrets that can be publicly embedded into the page.
234
+ */
235
+ publicSecrets?: {
236
+ [name: string]: string | {
237
+ /**
238
+ * The key of an API secret to pass to the site to
239
+ * be used publicly.
240
+ */
241
+ passSecretFromAPI?: string;
242
+ /**
243
+ * Get the public secret from an environment variable.
244
+ */
245
+ env?: string;
246
+ };
247
+ };
248
+ /**
249
+ * The components to load and register.
250
+ */
251
+ components?: {
252
+ [name: string]: {
253
+ /**
254
+ * The url to the component to load and register.
255
+ */
256
+ url: string;
257
+ };
258
+ };
259
+ /**
260
+ * The files to load and save in memory.
261
+ */
262
+ files?: {
263
+ [name: string]: {
264
+ /**
265
+ * The url to the file to load.
266
+ */
267
+ url: string;
268
+ };
269
+ };
270
+ }
271
+ /**
272
+ * The options to use when starting a page.
273
+ */
274
+ export interface HotStartOptions {
275
+ /**
276
+ * The Hott site to load.
277
+ */
278
+ url: string;
279
+ /**
280
+ * The name of the page to load.
281
+ */
282
+ name?: string;
283
+ /**
284
+ * The processor to use to load the page.
285
+ */
286
+ processor?: HotStaq;
287
+ /**
288
+ * Any arguments to pass to the new page.
289
+ */
290
+ args?: any;
291
+ /**
292
+ * The name of the tester to use.
293
+ */
294
+ testerName?: string;
295
+ /**
296
+ * The name of the tester map to use.
297
+ */
298
+ testerMap?: string;
299
+ /**
300
+ * The base url for the tester api.
301
+ */
302
+ testerAPIBaseUrl?: string;
303
+ /**
304
+ * The url to the html that loads the hott file that's
305
+ * pointed at the url above.
306
+ */
307
+ testerLaunchpadUrl?: string;
308
+ }
309
+ /**
310
+ * The main class that handles all HTML preprocessing, then outputs the
311
+ * results.
312
+ */
313
+ export interface IHotStaq {
314
+ /**
315
+ * The api that's used to communicate with.
316
+ */
317
+ api?: HotAPI;
318
+ /**
319
+ * The tester api that's used to communicate with.
320
+ */
321
+ testerAPI?: HotAPI;
322
+ /**
323
+ * Indicates what type of execution this is.
324
+ */
325
+ mode?: DeveloperMode;
326
+ /**
327
+ * The pages that can be constructed.
328
+ */
329
+ pages?: {
330
+ [name: string]: HotPage;
331
+ };
332
+ /**
333
+ * The components that can be constructed.
334
+ */
335
+ components?: {
336
+ [name: string]: HotComponent;
337
+ };
338
+ /**
339
+ * The files that can be stored for later use.
340
+ */
341
+ files?: {
342
+ [name: string]: HotFile;
343
+ };
344
+ /**
345
+ * The loaded hotsite.
346
+ */
347
+ hotSite?: HotSite;
348
+ }
349
+ /**
350
+ * The main class that handles all HTML preprocessing, then outputs the
351
+ * results.
352
+ */
353
+ export declare class HotStaq implements IHotStaq {
354
+ /**
355
+ * Indicates if this is a web build.
356
+ */
357
+ static isWeb: boolean;
358
+ /**
359
+ * Indicates if this is ready for testing.
360
+ */
361
+ static isReadyForTesting: boolean;
362
+ /**
363
+ * Executes this event when this page is ready for testing.
364
+ */
365
+ static onReadyForTesting: () => Promise<void>;
366
+ /**
367
+ * Indicates what type of execution this is.
368
+ */
369
+ mode: DeveloperMode;
370
+ /**
371
+ * The api that's used to communicate with.
372
+ */
373
+ api: HotAPI;
374
+ /**
375
+ * The tester api that's used to communicate with.
376
+ */
377
+ testerAPI: HotAPI;
378
+ /**
379
+ * The pages that can be constructed.
380
+ */
381
+ pages: {
382
+ [name: string]: HotPage;
383
+ };
384
+ /**
385
+ * The components that can be constructed.
386
+ */
387
+ components: {
388
+ [name: string]: HotComponent;
389
+ };
390
+ /**
391
+ * The files that can be stored for later use.
392
+ */
393
+ files: {
394
+ [name: string]: HotFile;
395
+ };
396
+ /**
397
+ * The loaded hotsite.
398
+ */
399
+ hotSite: HotSite;
400
+ /**
401
+ * The api content to use when about to load HotStaq.
402
+ */
403
+ apiContent: string;
404
+ /**
405
+ * The tester api content to use when about to load HotStaq.
406
+ */
407
+ testerApiContent: string;
408
+ /**
409
+ * The page content to use when about to load HotStaq.
410
+ */
411
+ pageContent: string;
412
+ /**
413
+ * The logger.
414
+ */
415
+ logger: HotLog;
416
+ /**
417
+ * The secrets that can be exposed publicly.
418
+ */
419
+ publicSecrets: any;
420
+ /**
421
+ * The secrets that can be exposed publicly.
422
+ */
423
+ testers: {
424
+ [name: string]: HotTester;
425
+ };
426
+ constructor(copy?: IHotStaq);
427
+ /**
428
+ * Parse a boolean value.
429
+ */
430
+ static parseBoolean(value: string): boolean;
431
+ /**
432
+ * Check if a required parameter exists inside an object. If it exists, return the value.
433
+ */
434
+ static getParam(name: string, objWithParam: any, required?: boolean, throwException?: boolean): any;
435
+ /**
436
+ * Check if a required parameter exists inside an object. If it exists, return the value.
437
+ * If it does not exist, return a default value instead.
438
+ */
439
+ static getParamDefault(name: string, objWithParam: any, defaultValue: any): any;
440
+ /**
441
+ * Wait for a number of milliseconds.
442
+ */
443
+ static wait(numMilliseconds: number): Promise<void>;
444
+ /**
445
+ * Add a page.
446
+ */
447
+ addPage(page: HotPage): void;
448
+ /**
449
+ * Get a page to process.
450
+ */
451
+ getPage(pageName: string): HotPage;
452
+ /**
453
+ * Add a file.
454
+ */
455
+ addFile(file: HotFile): void;
456
+ /**
457
+ * Get a file.
458
+ */
459
+ getFile(name: string): HotFile;
460
+ /**
461
+ * Add and register a component.
462
+ */
463
+ addComponent(component: HotComponent): void;
464
+ /**
465
+ * Register a component for use as a HTML tag.
466
+ */
467
+ registerComponent(component: HotComponent): void;
468
+ /**
469
+ * Get a component to process.
470
+ */
471
+ getComponent(name: string): HotComponent;
472
+ /**
473
+ * Add a new HTML element(s) to the current document.
474
+ */
475
+ static addHtml(parent: string | HTMLElement, html: string | HTMLElement): HTMLElement | HTMLElement[];
476
+ /**
477
+ * Check if a HotSite's name is valid.
478
+ */
479
+ static checkHotSiteName(hotsiteName: string, throwException?: boolean): boolean;
480
+ /**
481
+ * In the supplied content, replace a key in a ${KEY} with a value.
482
+ *
483
+ * @returns The content with the correct values.
484
+ */
485
+ static replaceKey(content: string, key: string, value: string): string;
486
+ /**
487
+ * Get a value from a HotSite object.
488
+ *
489
+ * @returns Returns the value from the hotsite object. Returns null if it doesn't exist.
490
+ */
491
+ static getValueFromHotSiteObj(hotsite: HotSite, params: string[]): any;
492
+ /**
493
+ * Load from a HotSite.json file. Be sure to load and attach any testers before
494
+ * loading a HotSite.
495
+ */
496
+ loadHotSite(path: string): Promise<void>;
497
+ /**
498
+ * Load an array of files. If a file already has content, it will not be reloaded
499
+ * unless forceContentLoading is set to true.
500
+ */
501
+ loadHotFiles(files: {
502
+ [name: string]: {
503
+ url?: string;
504
+ localFile?: string;
505
+ content?: string;
506
+ };
507
+ }, forceContentLoading?: boolean): Promise<void>;
508
+ /**
509
+ * Generate the content to send to a client.
510
+ */
511
+ generateContent(routeKey: string, name?: string, url?: string, jsSrcPath?: string, passArgs?: boolean, args?: any): string;
512
+ /**
513
+ * Create the Express routes from the given pages. Be sure to load the
514
+ * pages first before doing this. This method is meant to be used for
515
+ * customized Express applications. If you wish to use the loaded routes
516
+ * from this HotStaq object with HotHTTPServer, be sure to use
517
+ * the loadHotSite method in HotHTTPServer.
518
+ */
519
+ createExpressRoutes(expressApp: any, jsSrcPath?: string): void;
520
+ /**
521
+ * Add a tester for use later.
522
+ */
523
+ addTester(tester: HotTester): void;
524
+ /**
525
+ * Get the list of maps for testing from the HotSite.
526
+ */
527
+ getWebTestingMaps(): string[];
528
+ /**
529
+ * Get the list of maps for testing from the HotSite.
530
+ */
531
+ getAPITestingMaps(): string[];
532
+ /**
533
+ * Get a route's key from a route's name.
534
+ */
535
+ getRouteKeyFromName(name: string): string;
536
+ /**
537
+ * Get a route from a route's name.
538
+ */
539
+ getRouteFromName(name: string): HotSiteRoute;
540
+ /**
541
+ * Execute tests.
542
+ *
543
+ * @param testerName The tester to use to execute tests.
544
+ * @param mapName The map or maps to use to navigate through tests.
545
+ */
546
+ executeTests(testerName: string, mapName: string): Promise<void>;
547
+ /**
548
+ * Execute all web tests from the HotSite testing web object.
549
+ *
550
+ * @param testerName The tester to use to execute tests.
551
+ */
552
+ executeAllWebTests(testerName: string): Promise<void>;
553
+ /**
554
+ * Execute all api tests from the HotSite testing api object.
555
+ *
556
+ * @param testerName The tester to use to execute tests.
557
+ */
558
+ executeAllAPITests(testerName: string): Promise<void>;
559
+ /**
560
+ * Process a page and get the result.
561
+ */
562
+ process(pageName: string, args?: any): Promise<string>;
563
+ /**
564
+ * Process a local file and get the result.
565
+ */
566
+ static processLocalFile(localFilepath: string, name?: string, args?: any): Promise<string>;
567
+ /**
568
+ * Process a url and get the result.
569
+ */
570
+ static processUrl(options: HotStartOptions): Promise<string>;
571
+ /**
572
+ * Process content and get the result.
573
+ */
574
+ static processContent(processor: HotStaq, content: string, name: string, args?: any): Promise<string>;
575
+ /**
576
+ * When the window has finished loading, execute the function.
577
+ * This is meant for web browser use only.
578
+ */
579
+ static onReady(readyFunc: () => void): void;
580
+ /**
581
+ * Replace the current HTML page with the output.
582
+ * This is meant for web browser use only.
583
+ */
584
+ static useOutput(output: string): void;
585
+ /**
586
+ * Wait for testers to load.
587
+ *
588
+ * @fixme This does not wait for ALL testers to finish loading. Only
589
+ * the first one.
590
+ */
591
+ static waitForTesters(): Promise<void>;
592
+ /**
593
+ * Process and replace the current HTML page with the hott script from the given url.
594
+ * This is meant for web browser use only.
595
+ */
596
+ static displayUrl(url: string | HotStartOptions, name?: string, processor?: HotStaq, args?: any): Promise<HotStaq>;
597
+ /**
598
+ * Process and replace the current HTML page with the hott script.
599
+ * This is meant for web browser use only.
600
+ */
601
+ static displayContent(content: string, name: string, processor?: HotStaq): Promise<HotStaq>;
602
+ }
603
+ //# sourceMappingURL=HotStaq.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"HotStaq.d.ts","sourceRoot":"","sources":["../../src/HotStaq.ts"],"names":[],"mappings":"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"}