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,199 @@
1
+ [hotstaq](../README.md) / [Modules](../modules.md) / MySQLSchema
2
+
3
+ # Class: MySQLSchema
4
+
5
+ The MySQL schema.
6
+
7
+ ## Hierarchy
8
+
9
+ - [`HotDBSchema`](HotDBSchema.md)
10
+
11
+ ↳ **`MySQLSchema`**
12
+
13
+ ## Table of contents
14
+
15
+ ### Constructors
16
+
17
+ - [constructor](MySQLSchema.md#constructor)
18
+
19
+ ### Properties
20
+
21
+ - [name](MySQLSchema.md#name)
22
+ - [tables](MySQLSchema.md#tables)
23
+
24
+ ### Methods
25
+
26
+ - [addFieldToTable](MySQLSchema.md#addfieldtotable)
27
+ - [addFieldsToTable](MySQLSchema.md#addfieldstotable)
28
+ - [addTable](MySQLSchema.md#addtable)
29
+ - [generateStructure](MySQLSchema.md#generatestructure)
30
+ - [generateTableStructure](MySQLSchema.md#generatetablestructure)
31
+
32
+ ## Constructors
33
+
34
+ ### constructor
35
+
36
+ • **new MySQLSchema**(`name`)
37
+
38
+ #### Parameters
39
+
40
+ | Name | Type |
41
+ | :------ | :------ |
42
+ | `name` | `string` |
43
+
44
+ #### Overrides
45
+
46
+ [HotDBSchema](HotDBSchema.md).[constructor](HotDBSchema.md#constructor)
47
+
48
+ #### Defined in
49
+
50
+ [schemas/mysql/MySQLSchema.ts:16](https://github.com/OurFreeLight/HotStaq/blob/b031357/src/schemas/mysql/MySQLSchema.ts#L16)
51
+
52
+ ## Properties
53
+
54
+ ### name
55
+
56
+ • **name**: `string`
57
+
58
+ The name of this schema.
59
+
60
+ #### Inherited from
61
+
62
+ [HotDBSchema](HotDBSchema.md).[name](HotDBSchema.md#name)
63
+
64
+ #### Defined in
65
+
66
+ [schemas/HotDBSchema.ts:15](https://github.com/OurFreeLight/HotStaq/blob/b031357/src/schemas/HotDBSchema.ts#L15)
67
+
68
+ ___
69
+
70
+ ### tables
71
+
72
+ • **tables**: `Object`
73
+
74
+ The tables in this schema.
75
+
76
+ #### Index signature
77
+
78
+ ▪ [name: `string`]: [`MySQLSchemaTable`](MySQLSchemaTable.md)
79
+
80
+ #### Defined in
81
+
82
+ [schemas/mysql/MySQLSchema.ts:14](https://github.com/OurFreeLight/HotStaq/blob/b031357/src/schemas/mysql/MySQLSchema.ts#L14)
83
+
84
+ ## Methods
85
+
86
+ ### addFieldToTable
87
+
88
+ ▸ **addFieldToTable**(`tableName`, `field`): `void`
89
+
90
+ Add a field to a table.
91
+
92
+ #### Parameters
93
+
94
+ | Name | Type |
95
+ | :------ | :------ |
96
+ | `tableName` | `string` |
97
+ | `field` | [`MySQLSchemaField`](MySQLSchemaField.md) |
98
+
99
+ #### Returns
100
+
101
+ `void`
102
+
103
+ #### Defined in
104
+
105
+ [schemas/mysql/MySQLSchema.ts:34](https://github.com/OurFreeLight/HotStaq/blob/b031357/src/schemas/mysql/MySQLSchema.ts#L34)
106
+
107
+ ___
108
+
109
+ ### addFieldsToTable
110
+
111
+ ▸ **addFieldsToTable**(`tableName`, `fields`): `void`
112
+
113
+ Add a field to a table.
114
+
115
+ #### Parameters
116
+
117
+ | Name | Type |
118
+ | :------ | :------ |
119
+ | `tableName` | `string` |
120
+ | `fields` | [`MySQLSchemaField`](MySQLSchemaField.md)[] |
121
+
122
+ #### Returns
123
+
124
+ `void`
125
+
126
+ #### Defined in
127
+
128
+ [schemas/mysql/MySQLSchema.ts:45](https://github.com/OurFreeLight/HotStaq/blob/b031357/src/schemas/mysql/MySQLSchema.ts#L45)
129
+
130
+ ___
131
+
132
+ ### addTable
133
+
134
+ ▸ **addTable**(`table`): `void`
135
+
136
+ Add a table to this schema.
137
+
138
+ #### Parameters
139
+
140
+ | Name | Type |
141
+ | :------ | :------ |
142
+ | `table` | [`MySQLSchemaTable`](MySQLSchemaTable.md) |
143
+
144
+ #### Returns
145
+
146
+ `void`
147
+
148
+ #### Defined in
149
+
150
+ [schemas/mysql/MySQLSchema.ts:26](https://github.com/OurFreeLight/HotStaq/blob/b031357/src/schemas/mysql/MySQLSchema.ts#L26)
151
+
152
+ ___
153
+
154
+ ### generateStructure
155
+
156
+ ▸ **generateStructure**(`type?`, `db?`): `Promise`<`string`[][]\>
157
+
158
+ Generate the entire db structure. If type is set to modify, you must pass a db with an
159
+ active connection.
160
+
161
+ #### Parameters
162
+
163
+ | Name | Type | Default value |
164
+ | :------ | :------ | :------ |
165
+ | `type` | [`HotDBGenerationType`](../enums/HotDBGenerationType.md) | `HotDBGenerationType.Create` |
166
+ | `db` | [`HotDBMySQL`](HotDBMySQL.md) | `null` |
167
+
168
+ #### Returns
169
+
170
+ `Promise`<`string`[][]\>
171
+
172
+ #### Defined in
173
+
174
+ [schemas/mysql/MySQLSchema.ts:77](https://github.com/OurFreeLight/HotStaq/blob/b031357/src/schemas/mysql/MySQLSchema.ts#L77)
175
+
176
+ ___
177
+
178
+ ### generateTableStructure
179
+
180
+ ▸ **generateTableStructure**(`tableName`, `type?`, `db?`): `Promise`<`string`[]\>
181
+
182
+ Generate a table's structure. If type is set to modify, you must pass a db with an
183
+ active connection.
184
+
185
+ #### Parameters
186
+
187
+ | Name | Type | Default value |
188
+ | :------ | :------ | :------ |
189
+ | `tableName` | `string` | `undefined` |
190
+ | `type` | [`HotDBGenerationType`](../enums/HotDBGenerationType.md) | `HotDBGenerationType.Create` |
191
+ | `db` | [`HotDBMySQL`](HotDBMySQL.md) | `null` |
192
+
193
+ #### Returns
194
+
195
+ `Promise`<`string`[]\>
196
+
197
+ #### Defined in
198
+
199
+ [schemas/mysql/MySQLSchema.ts:61](https://github.com/OurFreeLight/HotStaq/blob/b031357/src/schemas/mysql/MySQLSchema.ts#L61)
@@ -0,0 +1,330 @@
1
+ [hotstaq](../README.md) / [Modules](../modules.md) / MySQLSchemaField
2
+
3
+ # Class: MySQLSchemaField
4
+
5
+ The database field.
6
+
7
+ ## Implements
8
+
9
+ - `IMySQLSchemaField`
10
+
11
+ ## Table of contents
12
+
13
+ ### Constructors
14
+
15
+ - [constructor](MySQLSchemaField.md#constructor)
16
+
17
+ ### Properties
18
+
19
+ - [autoIncrement](MySQLSchemaField.md#autoincrement)
20
+ - [binaryColumn](MySQLSchemaField.md#binarycolumn)
21
+ - [dataType](MySQLSchemaField.md#datatype)
22
+ - [defaultValue](MySQLSchemaField.md#defaultvalue)
23
+ - [fillZeroes](MySQLSchemaField.md#fillzeroes)
24
+ - [generatedColumn](MySQLSchemaField.md#generatedcolumn)
25
+ - [name](MySQLSchemaField.md#name)
26
+ - [notNull](MySQLSchemaField.md#notnull)
27
+ - [primaryKey](MySQLSchemaField.md#primarykey)
28
+ - [strAroundDefaultValue](MySQLSchemaField.md#strarounddefaultvalue)
29
+ - [uniqueIndex](MySQLSchemaField.md#uniqueindex)
30
+ - [unsignedDataType](MySQLSchemaField.md#unsigneddatatype)
31
+
32
+ ### Methods
33
+
34
+ - [generate](MySQLSchemaField.md#generate)
35
+ - [compare](MySQLSchemaField.md#compare)
36
+ - [parse](MySQLSchemaField.md#parse)
37
+
38
+ ## Constructors
39
+
40
+ ### constructor
41
+
42
+ • **new MySQLSchemaField**(`name`, `dataType?`, `defaultValue?`, `primaryKey?`, `notNull?`, `uniqueIndex?`, `binaryColumn?`, `unsignedDataType?`, `fillZeroes?`, `autoIncrement?`, `generatedColumn?`, `strAroundDefaultValue?`)
43
+
44
+ #### Parameters
45
+
46
+ | Name | Type | Default value |
47
+ | :------ | :------ | :------ |
48
+ | `name` | `string` \| `IMySQLSchemaField` | `undefined` |
49
+ | `dataType` | `string` | `""` |
50
+ | `defaultValue` | `string` | `""` |
51
+ | `primaryKey` | `boolean` | `false` |
52
+ | `notNull` | `boolean` | `true` |
53
+ | `uniqueIndex` | `boolean` | `false` |
54
+ | `binaryColumn` | `boolean` | `false` |
55
+ | `unsignedDataType` | `boolean` | `false` |
56
+ | `fillZeroes` | `boolean` | `false` |
57
+ | `autoIncrement` | `boolean` | `false` |
58
+ | `generatedColumn` | `boolean` | `false` |
59
+ | `strAroundDefaultValue` | `string` | `"'"` |
60
+
61
+ #### Defined in
62
+
63
+ [schemas/mysql/MySQLSchemaField.ts:145](https://github.com/OurFreeLight/HotStaq/blob/b031357/src/schemas/mysql/MySQLSchemaField.ts#L145)
64
+
65
+ ## Properties
66
+
67
+ ### autoIncrement
68
+
69
+ • **autoIncrement**: `boolean`
70
+
71
+ Set as an auto incrementing column.
72
+
73
+ #### Implementation of
74
+
75
+ IMySQLSchemaField.autoIncrement
76
+
77
+ #### Defined in
78
+
79
+ [schemas/mysql/MySQLSchemaField.ts:129](https://github.com/OurFreeLight/HotStaq/blob/b031357/src/schemas/mysql/MySQLSchemaField.ts#L129)
80
+
81
+ ___
82
+
83
+ ### binaryColumn
84
+
85
+ • **binaryColumn**: `boolean`
86
+
87
+ Set as a binary column.
88
+
89
+ #### Implementation of
90
+
91
+ IMySQLSchemaField.binaryColumn
92
+
93
+ #### Defined in
94
+
95
+ [schemas/mysql/MySQLSchemaField.ts:117](https://github.com/OurFreeLight/HotStaq/blob/b031357/src/schemas/mysql/MySQLSchemaField.ts#L117)
96
+
97
+ ___
98
+
99
+ ### dataType
100
+
101
+ • **dataType**: `string`
102
+
103
+ The data type, be sure to include the length of the
104
+ data type here as well.
105
+
106
+ #### Implementation of
107
+
108
+ IMySQLSchemaField.dataType
109
+
110
+ #### Defined in
111
+
112
+ [schemas/mysql/MySQLSchemaField.ts:101](https://github.com/OurFreeLight/HotStaq/blob/b031357/src/schemas/mysql/MySQLSchemaField.ts#L101)
113
+
114
+ ___
115
+
116
+ ### defaultValue
117
+
118
+ • **defaultValue**: `string`
119
+
120
+ Set the default value. If this is set to null, a
121
+ MySQL NULL value will be used.
122
+
123
+ #### Implementation of
124
+
125
+ IMySQLSchemaField.defaultValue
126
+
127
+ #### Defined in
128
+
129
+ [schemas/mysql/MySQLSchemaField.ts:138](https://github.com/OurFreeLight/HotStaq/blob/b031357/src/schemas/mysql/MySQLSchemaField.ts#L138)
130
+
131
+ ___
132
+
133
+ ### fillZeroes
134
+
135
+ • **fillZeroes**: `boolean`
136
+
137
+ If this column is a number, fill with zeroes.
138
+
139
+ #### Implementation of
140
+
141
+ IMySQLSchemaField.fillZeroes
142
+
143
+ #### Defined in
144
+
145
+ [schemas/mysql/MySQLSchemaField.ts:125](https://github.com/OurFreeLight/HotStaq/blob/b031357/src/schemas/mysql/MySQLSchemaField.ts#L125)
146
+
147
+ ___
148
+
149
+ ### generatedColumn
150
+
151
+ • **generatedColumn**: `boolean`
152
+
153
+ Set as a generated column.
154
+
155
+ #### Implementation of
156
+
157
+ IMySQLSchemaField.generatedColumn
158
+
159
+ #### Defined in
160
+
161
+ [schemas/mysql/MySQLSchemaField.ts:133](https://github.com/OurFreeLight/HotStaq/blob/b031357/src/schemas/mysql/MySQLSchemaField.ts#L133)
162
+
163
+ ___
164
+
165
+ ### name
166
+
167
+ • **name**: `string`
168
+
169
+ The name of the field.
170
+
171
+ #### Implementation of
172
+
173
+ IMySQLSchemaField.name
174
+
175
+ #### Defined in
176
+
177
+ [schemas/mysql/MySQLSchemaField.ts:96](https://github.com/OurFreeLight/HotStaq/blob/b031357/src/schemas/mysql/MySQLSchemaField.ts#L96)
178
+
179
+ ___
180
+
181
+ ### notNull
182
+
183
+ • **notNull**: `boolean`
184
+
185
+ Set as a not null.
186
+
187
+ #### Implementation of
188
+
189
+ IMySQLSchemaField.notNull
190
+
191
+ #### Defined in
192
+
193
+ [schemas/mysql/MySQLSchemaField.ts:109](https://github.com/OurFreeLight/HotStaq/blob/b031357/src/schemas/mysql/MySQLSchemaField.ts#L109)
194
+
195
+ ___
196
+
197
+ ### primaryKey
198
+
199
+ • **primaryKey**: `boolean`
200
+
201
+ Set as a primary key.
202
+
203
+ #### Implementation of
204
+
205
+ IMySQLSchemaField.primaryKey
206
+
207
+ #### Defined in
208
+
209
+ [schemas/mysql/MySQLSchemaField.ts:105](https://github.com/OurFreeLight/HotStaq/blob/b031357/src/schemas/mysql/MySQLSchemaField.ts#L105)
210
+
211
+ ___
212
+
213
+ ### strAroundDefaultValue
214
+
215
+ • **strAroundDefaultValue**: `string`
216
+
217
+ Set the string to be used when setting the default
218
+ value. The default is: '
219
+
220
+ #### Implementation of
221
+
222
+ IMySQLSchemaField.strAroundDefaultValue
223
+
224
+ #### Defined in
225
+
226
+ [schemas/mysql/MySQLSchemaField.ts:143](https://github.com/OurFreeLight/HotStaq/blob/b031357/src/schemas/mysql/MySQLSchemaField.ts#L143)
227
+
228
+ ___
229
+
230
+ ### uniqueIndex
231
+
232
+ • **uniqueIndex**: `boolean`
233
+
234
+ Set as a unique index.
235
+
236
+ #### Implementation of
237
+
238
+ IMySQLSchemaField.uniqueIndex
239
+
240
+ #### Defined in
241
+
242
+ [schemas/mysql/MySQLSchemaField.ts:113](https://github.com/OurFreeLight/HotStaq/blob/b031357/src/schemas/mysql/MySQLSchemaField.ts#L113)
243
+
244
+ ___
245
+
246
+ ### unsignedDataType
247
+
248
+ • **unsignedDataType**: `boolean`
249
+
250
+ Set as an unsigned data type.
251
+
252
+ #### Implementation of
253
+
254
+ IMySQLSchemaField.unsignedDataType
255
+
256
+ #### Defined in
257
+
258
+ [schemas/mysql/MySQLSchemaField.ts:121](https://github.com/OurFreeLight/HotStaq/blob/b031357/src/schemas/mysql/MySQLSchemaField.ts#L121)
259
+
260
+ ## Methods
261
+
262
+ ### generate
263
+
264
+ ▸ **generate**(): `Promise`<[`MySQLSchemaFieldResult`](../interfaces/MySQLSchemaFieldResult.md)\>
265
+
266
+ Generate the db command.
267
+
268
+ #### Returns
269
+
270
+ `Promise`<[`MySQLSchemaFieldResult`](../interfaces/MySQLSchemaFieldResult.md)\>
271
+
272
+ #### Defined in
273
+
274
+ [schemas/mysql/MySQLSchemaField.ts:326](https://github.com/OurFreeLight/HotStaq/blob/b031357/src/schemas/mysql/MySQLSchemaField.ts#L326)
275
+
276
+ ___
277
+
278
+ ### compare
279
+
280
+ ▸ `Static` **compare**(`field1`, `field2`, `onlyKeys?`, `stringFilter?`): `boolean`
281
+
282
+ Compare two different fields. This will iterate through all keys in each field. Any
283
+ string values found will have stringFilter applied to it, removing everything that
284
+ is in that stringFilter regex. Additionally for any empty strings found it will
285
+ compare to any undefined/null on the other side, and treat them as the same.
286
+
287
+ #### Parameters
288
+
289
+ | Name | Type | Default value | Description |
290
+ | :------ | :------ | :------ | :------ |
291
+ | `field1` | [`MySQLSchemaField`](MySQLSchemaField.md) | `undefined` | The first field to compare. |
292
+ | `field2` | [`MySQLSchemaField`](MySQLSchemaField.md) | `undefined` | The second field to compare. |
293
+ | `onlyKeys` | `string`[] | `null` | Only compare using the provided keys. If set to null, this will compare using all of the keys in these objects. |
294
+ | `stringFilter` | `RegExp` | `undefined` | The regex to be used to help make any filters on any detected strings. The default regex provided will remove any whitespaces, single/doube quotes, back ticks, and parenthesis. If this is set to null, it will not be used. |
295
+
296
+ #### Returns
297
+
298
+ `boolean`
299
+
300
+ #### Defined in
301
+
302
+ [schemas/mysql/MySQLSchemaField.ts:201](https://github.com/OurFreeLight/HotStaq/blob/b031357/src/schemas/mysql/MySQLSchemaField.ts#L201)
303
+
304
+ ___
305
+
306
+ ### parse
307
+
308
+ ▸ `Static` **parse**(`json`): [`MySQLSchemaField`](MySQLSchemaField.md)
309
+
310
+ Parse a JSON object and get a MySQLSchemaField object from it.
311
+ Warning! This is only partially implemented. This will not check
312
+ the following fields:
313
+ * Binary column
314
+ * unique
315
+ * zero-filled
316
+ * generated column
317
+
318
+ #### Parameters
319
+
320
+ | Name | Type |
321
+ | :------ | :------ |
322
+ | `json` | `any` |
323
+
324
+ #### Returns
325
+
326
+ [`MySQLSchemaField`](MySQLSchemaField.md)
327
+
328
+ #### Defined in
329
+
330
+ [schemas/mysql/MySQLSchemaField.ts:266](https://github.com/OurFreeLight/HotStaq/blob/b031357/src/schemas/mysql/MySQLSchemaField.ts#L266)
@@ -0,0 +1,176 @@
1
+ [hotstaq](../README.md) / [Modules](../modules.md) / MySQLSchemaTable
2
+
3
+ # Class: MySQLSchemaTable
4
+
5
+ The database table.
6
+
7
+ ## Table of contents
8
+
9
+ ### Constructors
10
+
11
+ - [constructor](MySQLSchemaTable.md#constructor)
12
+
13
+ ### Properties
14
+
15
+ - [charset](MySQLSchemaTable.md#charset)
16
+ - [description](MySQLSchemaTable.md#description)
17
+ - [engine](MySQLSchemaTable.md#engine)
18
+ - [fields](MySQLSchemaTable.md#fields)
19
+ - [name](MySQLSchemaTable.md#name)
20
+
21
+ ### Methods
22
+
23
+ - [addField](MySQLSchemaTable.md#addfield)
24
+ - [addFields](MySQLSchemaTable.md#addfields)
25
+ - [generate](MySQLSchemaTable.md#generate)
26
+
27
+ ## Constructors
28
+
29
+ ### constructor
30
+
31
+ • **new MySQLSchemaTable**(`name?`, `fields?`)
32
+
33
+ #### Parameters
34
+
35
+ | Name | Type | Default value |
36
+ | :------ | :------ | :------ |
37
+ | `name` | `string` | `""` |
38
+ | `fields` | [`MySQLSchemaField`](MySQLSchemaField.md)[] | `[]` |
39
+
40
+ #### Defined in
41
+
42
+ [schemas/mysql/MySQLSchemaTable.ts:31](https://github.com/OurFreeLight/HotStaq/blob/b031357/src/schemas/mysql/MySQLSchemaTable.ts#L31)
43
+
44
+ ## Properties
45
+
46
+ ### charset
47
+
48
+ • **charset**: `string`
49
+
50
+ The table's charset to use.
51
+
52
+ #### Defined in
53
+
54
+ [schemas/mysql/MySQLSchemaTable.ts:29](https://github.com/OurFreeLight/HotStaq/blob/b031357/src/schemas/mysql/MySQLSchemaTable.ts#L29)
55
+
56
+ ___
57
+
58
+ ### description
59
+
60
+ • **description**: `string`
61
+
62
+ The table's description.
63
+
64
+ #### Defined in
65
+
66
+ [schemas/mysql/MySQLSchemaTable.ts:17](https://github.com/OurFreeLight/HotStaq/blob/b031357/src/schemas/mysql/MySQLSchemaTable.ts#L17)
67
+
68
+ ___
69
+
70
+ ### engine
71
+
72
+ • **engine**: `string`
73
+
74
+ The table's engine to use.
75
+
76
+ #### Defined in
77
+
78
+ [schemas/mysql/MySQLSchemaTable.ts:25](https://github.com/OurFreeLight/HotStaq/blob/b031357/src/schemas/mysql/MySQLSchemaTable.ts#L25)
79
+
80
+ ___
81
+
82
+ ### fields
83
+
84
+ • **fields**: [`MySQLSchemaField`](MySQLSchemaField.md)[]
85
+
86
+ The fields in the table.
87
+
88
+ #### Defined in
89
+
90
+ [schemas/mysql/MySQLSchemaTable.ts:21](https://github.com/OurFreeLight/HotStaq/blob/b031357/src/schemas/mysql/MySQLSchemaTable.ts#L21)
91
+
92
+ ___
93
+
94
+ ### name
95
+
96
+ • **name**: `string`
97
+
98
+ The name of the table.
99
+
100
+ #### Defined in
101
+
102
+ [schemas/mysql/MySQLSchemaTable.ts:13](https://github.com/OurFreeLight/HotStaq/blob/b031357/src/schemas/mysql/MySQLSchemaTable.ts#L13)
103
+
104
+ ## Methods
105
+
106
+ ### addField
107
+
108
+ ▸ **addField**(`field`): `void`
109
+
110
+ Add a field.
111
+
112
+ #### Parameters
113
+
114
+ | Name | Type |
115
+ | :------ | :------ |
116
+ | `field` | [`MySQLSchemaField`](MySQLSchemaField.md) |
117
+
118
+ #### Returns
119
+
120
+ `void`
121
+
122
+ #### Defined in
123
+
124
+ [schemas/mysql/MySQLSchemaTable.ts:43](https://github.com/OurFreeLight/HotStaq/blob/b031357/src/schemas/mysql/MySQLSchemaTable.ts#L43)
125
+
126
+ ___
127
+
128
+ ### addFields
129
+
130
+ ▸ **addFields**(`fields`): `void`
131
+
132
+ Add a field.
133
+
134
+ #### Parameters
135
+
136
+ | Name | Type |
137
+ | :------ | :------ |
138
+ | `fields` | [`MySQLSchemaField`](MySQLSchemaField.md)[] |
139
+
140
+ #### Returns
141
+
142
+ `void`
143
+
144
+ #### Defined in
145
+
146
+ [schemas/mysql/MySQLSchemaTable.ts:51](https://github.com/OurFreeLight/HotStaq/blob/b031357/src/schemas/mysql/MySQLSchemaTable.ts#L51)
147
+
148
+ ___
149
+
150
+ ### generate
151
+
152
+ ▸ **generate**(`type?`, `db?`): `Promise`<`string`[]\>
153
+
154
+ Generate the db command. If type is set to modify, you must pass a db with an
155
+ active connection. Since field parsing isn't completely implemented yet, not all
156
+ fields will be modified correctly. Use modifiying with caution. This will
157
+ skip checking for:
158
+ * Binary columnexistingFields
159
+ * unique
160
+ * zero-filled
161
+ * generated column
162
+
163
+ #### Parameters
164
+
165
+ | Name | Type | Default value |
166
+ | :------ | :------ | :------ |
167
+ | `type` | [`HotDBGenerationType`](../enums/HotDBGenerationType.md) | `HotDBGenerationType.Create` |
168
+ | `db` | [`HotDBMySQL`](HotDBMySQL.md) | `null` |
169
+
170
+ #### Returns
171
+
172
+ `Promise`<`string`[]\>
173
+
174
+ #### Defined in
175
+
176
+ [schemas/mysql/MySQLSchemaTable.ts:70](https://github.com/OurFreeLight/HotStaq/blob/b031357/src/schemas/mysql/MySQLSchemaTable.ts#L70)