@simplysm/sd-cli 7.3.4 → 10.0.21

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 (468) hide show
  1. package/.eslintrc.cjs +18 -0
  2. package/dist/SdLinter.d.ts +5 -0
  3. package/dist/SdLinter.js.map +1 -0
  4. package/dist/SdLinter.mjs +37 -0
  5. package/dist/SdTsIncrementalBuilder.d.ts +16 -0
  6. package/dist/SdTsIncrementalBuilder.js.map +1 -0
  7. package/dist/SdTsIncrementalBuilder.mjs +54 -0
  8. package/dist/build-cluster.js.map +1 -0
  9. package/dist/build-cluster.mjs +124 -0
  10. package/dist/builders/SdCliClientBuilder.d.ts +13 -0
  11. package/dist/builders/SdCliClientBuilder.js.map +1 -0
  12. package/dist/builders/SdCliClientBuilder.mjs +167 -0
  13. package/dist/builders/SdCliJsLibLinter.d.ts +14 -0
  14. package/dist/builders/SdCliJsLibLinter.js.map +1 -0
  15. package/dist/builders/SdCliJsLibLinter.mjs +60 -0
  16. package/dist/builders/SdCliServerBuilder.d.ts +14 -0
  17. package/dist/builders/SdCliServerBuilder.js.map +1 -0
  18. package/dist/builders/SdCliServerBuilder.mjs +171 -0
  19. package/dist/builders/SdCliTsLibBuilder.d.ts +13 -0
  20. package/dist/builders/SdCliTsLibBuilder.js.map +1 -0
  21. package/dist/builders/SdCliTsLibBuilder.mjs +75 -0
  22. package/dist/commons.d.ts +20 -110
  23. package/dist/commons.js.map +1 -0
  24. package/dist/commons.mjs +1 -1
  25. package/dist/entry/SdCliProject.d.ts +29 -0
  26. package/dist/entry/SdCliProject.js.map +1 -0
  27. package/dist/entry/SdCliProject.mjs +353 -0
  28. package/dist/sd-cli.js.map +1 -0
  29. package/dist/sd-cli.mjs +119 -0
  30. package/dist/sd-core-common/src/decorators/NotifyPropertyChange.d.ts +20 -0
  31. package/dist/sd-core-common/src/decorators/NotifyPropertyChange.js.map +1 -0
  32. package/dist/sd-core-common/src/decorators/NotifyPropertyChange.mjs +12 -0
  33. package/dist/sd-core-common/src/decorators/PropertyGetSetDecoratorBase.d.ts +43 -0
  34. package/dist/sd-core-common/src/decorators/PropertyGetSetDecoratorBase.js.map +1 -0
  35. package/dist/sd-core-common/src/decorators/PropertyGetSetDecoratorBase.mjs +54 -0
  36. package/dist/sd-core-common/src/decorators/PropertyValidate.d.ts +16 -0
  37. package/dist/sd-core-common/src/decorators/PropertyValidate.js.map +1 -0
  38. package/dist/sd-core-common/src/decorators/PropertyValidate.mjs +26 -0
  39. package/dist/sd-core-common/src/decorators/decorator-return-types.d.ts +14 -0
  40. package/dist/sd-core-common/src/decorators/decorator-return-types.js.map +1 -0
  41. package/dist/sd-core-common/src/decorators/decorator-return-types.mjs +2 -0
  42. package/dist/sd-core-common/src/errors/ArgumentError.d.ts +10 -0
  43. package/dist/sd-core-common/src/errors/ArgumentError.js.map +1 -0
  44. package/dist/sd-core-common/src/errors/ArgumentError.mjs +13 -0
  45. package/dist/sd-core-common/src/errors/NeverEntryError.d.ts +10 -0
  46. package/dist/sd-core-common/src/errors/NeverEntryError.js.map +1 -0
  47. package/dist/sd-core-common/src/errors/NeverEntryError.mjs +13 -0
  48. package/dist/sd-core-common/src/errors/NotImplementError.d.ts +10 -0
  49. package/dist/sd-core-common/src/errors/NotImplementError.js.map +1 -0
  50. package/dist/sd-core-common/src/errors/NotImplementError.mjs +13 -0
  51. package/dist/sd-core-common/src/errors/SdError.d.ts +23 -0
  52. package/dist/sd-core-common/src/errors/SdError.js.map +1 -0
  53. package/dist/sd-core-common/src/errors/SdError.mjs +40 -0
  54. package/dist/sd-core-common/src/errors/TimeoutError.d.ts +11 -0
  55. package/dist/sd-core-common/src/errors/TimeoutError.js.map +1 -0
  56. package/dist/sd-core-common/src/errors/TimeoutError.mjs +16 -0
  57. package/dist/sd-core-common/src/extensions/ArrayExtension.d.ts +147 -0
  58. package/dist/sd-core-common/src/extensions/ArrayExtension.js.map +1 -0
  59. package/dist/sd-core-common/src/extensions/ArrayExtension.mjs +448 -0
  60. package/dist/sd-core-common/src/extensions/MapExtension.d.ts +4 -0
  61. package/dist/sd-core-common/src/extensions/MapExtension.js.map +1 -0
  62. package/dist/sd-core-common/src/extensions/MapExtension.mjs +15 -0
  63. package/dist/sd-core-common/src/extensions/SetExtension.d.ts +3 -0
  64. package/dist/sd-core-common/src/extensions/SetExtension.js.map +1 -0
  65. package/dist/sd-core-common/src/extensions/SetExtension.mjs +10 -0
  66. package/dist/sd-core-common/src/index.d.ts +32 -0
  67. package/dist/sd-core-common/src/index.js.map +1 -0
  68. package/dist/sd-core-common/src/index.mjs +33 -0
  69. package/dist/sd-core-common/src/types/DateOnly.d.ts +135 -0
  70. package/dist/sd-core-common/src/types/DateOnly.js.map +1 -0
  71. package/dist/sd-core-common/src/types/DateOnly.mjs +220 -0
  72. package/dist/sd-core-common/src/types/DateTime.d.ts +42 -0
  73. package/dist/sd-core-common/src/types/DateTime.js.map +1 -0
  74. package/dist/sd-core-common/src/types/DateTime.mjs +156 -0
  75. package/dist/sd-core-common/src/types/DeepPartial.d.ts +3 -0
  76. package/dist/sd-core-common/src/types/DeepPartial.js.map +1 -0
  77. package/dist/sd-core-common/src/types/DeepPartial.mjs +2 -0
  78. package/dist/sd-core-common/src/types/ObjectSet.d.ts +4 -0
  79. package/dist/sd-core-common/src/types/ObjectSet.js.map +1 -0
  80. package/dist/sd-core-common/src/types/ObjectSet.mjs +18 -0
  81. package/dist/sd-core-common/src/types/Time.d.ts +27 -0
  82. package/dist/sd-core-common/src/types/Time.js.map +1 -0
  83. package/dist/sd-core-common/src/types/Time.mjs +108 -0
  84. package/dist/sd-core-common/src/types/Type.d.ts +7 -0
  85. package/dist/sd-core-common/src/types/Type.js.map +1 -0
  86. package/dist/sd-core-common/src/types/Type.mjs +2 -0
  87. package/dist/sd-core-common/src/types/UnwrappedType.d.ts +1 -0
  88. package/dist/sd-core-common/src/types/UnwrappedType.js.map +1 -0
  89. package/dist/sd-core-common/src/types/UnwrappedType.mjs +2 -0
  90. package/dist/sd-core-common/src/types/Uuid.d.ts +8 -0
  91. package/dist/sd-core-common/src/types/Uuid.js.map +1 -0
  92. package/dist/sd-core-common/src/types/Uuid.mjs +26 -0
  93. package/dist/sd-core-common/src/types/WrappedType.d.ts +1 -0
  94. package/dist/sd-core-common/src/types/WrappedType.js.map +1 -0
  95. package/dist/sd-core-common/src/types/WrappedType.mjs +2 -0
  96. package/dist/sd-core-common/src/utils/DateTimeFormatUtil.d.ts +12 -0
  97. package/dist/sd-core-common/src/utils/DateTimeFormatUtil.js.map +1 -0
  98. package/dist/sd-core-common/src/utils/DateTimeFormatUtil.mjs +67 -0
  99. package/dist/sd-core-common/src/utils/FunctionQueue.d.ts +8 -0
  100. package/dist/sd-core-common/src/utils/FunctionQueue.js.map +1 -0
  101. package/dist/sd-core-common/src/utils/FunctionQueue.mjs +46 -0
  102. package/dist/sd-core-common/src/utils/FunctionUtil.d.ts +6 -0
  103. package/dist/sd-core-common/src/utils/FunctionUtil.js.map +1 -0
  104. package/dist/sd-core-common/src/utils/FunctionUtil.mjs +31 -0
  105. package/dist/sd-core-common/src/utils/JsonConvert.d.ts +8 -0
  106. package/dist/sd-core-common/src/utils/JsonConvert.js.map +1 -0
  107. package/dist/sd-core-common/src/utils/JsonConvert.mjs +78 -0
  108. package/dist/sd-core-common/src/utils/MathUtil.d.ts +3 -0
  109. package/dist/sd-core-common/src/utils/MathUtil.js.map +1 -0
  110. package/dist/sd-core-common/src/utils/MathUtil.mjs +6 -0
  111. package/dist/sd-core-common/src/utils/NumberUtil.d.ts +6 -0
  112. package/dist/sd-core-common/src/utils/NumberUtil.js.map +1 -0
  113. package/dist/sd-core-common/src/utils/NumberUtil.mjs +32 -0
  114. package/dist/sd-core-common/src/utils/ObjectUtil.d.ts +80 -0
  115. package/dist/sd-core-common/src/utils/ObjectUtil.js.map +1 -0
  116. package/dist/sd-core-common/src/utils/ObjectUtil.mjs +452 -0
  117. package/dist/sd-core-common/src/utils/SdSyncEventEmitter.d.ts +6 -0
  118. package/dist/sd-core-common/src/utils/SdSyncEventEmitter.js.map +1 -0
  119. package/dist/sd-core-common/src/utils/SdSyncEventEmitter.mjs +27 -0
  120. package/dist/sd-core-common/src/utils/StringUtil.d.ts +8 -0
  121. package/dist/sd-core-common/src/utils/StringUtil.js.map +1 -0
  122. package/dist/sd-core-common/src/utils/StringUtil.mjs +77 -0
  123. package/dist/sd-core-common/src/utils/Wait.d.ts +4 -0
  124. package/dist/sd-core-common/src/utils/Wait.js.map +1 -0
  125. package/dist/sd-core-common/src/utils/Wait.mjs +23 -0
  126. package/dist/sd-core-node/src/index.d.ts +6 -0
  127. package/dist/sd-core-node/src/index.js.map +1 -0
  128. package/dist/sd-core-node/src/index.mjs +7 -0
  129. package/dist/sd-core-node/src/utils/FsUtil.d.ts +44 -0
  130. package/dist/sd-core-node/src/utils/FsUtil.js.map +1 -0
  131. package/dist/sd-core-node/src/utils/FsUtil.mjs +493 -0
  132. package/dist/sd-core-node/src/utils/Logger.d.ts +91 -0
  133. package/dist/sd-core-node/src/utils/Logger.js.map +1 -0
  134. package/dist/sd-core-node/src/utils/Logger.mjs +185 -0
  135. package/dist/sd-core-node/src/utils/PathUtil.d.ts +6 -0
  136. package/dist/sd-core-node/src/utils/PathUtil.js.map +1 -0
  137. package/dist/sd-core-node/src/utils/PathUtil.mjs +24 -0
  138. package/dist/sd-core-node/src/utils/SdFsWatcher.d.ts +15 -0
  139. package/dist/sd-core-node/src/utils/SdFsWatcher.js.map +1 -0
  140. package/dist/sd-core-node/src/utils/SdFsWatcher.mjs +43 -0
  141. package/dist/sd-core-node/src/utils/SdProcess.d.ts +5 -0
  142. package/dist/sd-core-node/src/utils/SdProcess.js.map +1 -0
  143. package/dist/sd-core-node/src/utils/SdProcess.mjs +36 -0
  144. package/dist/sd-orm-common/src/CaseQueryHelper.d.ts +12 -0
  145. package/dist/sd-orm-common/src/CaseQueryHelper.js.map +1 -0
  146. package/dist/sd-orm-common/src/CaseQueryHelper.mjs +19 -0
  147. package/dist/sd-orm-common/src/CaseWhenQueryHelper.d.ts +12 -0
  148. package/dist/sd-orm-common/src/CaseWhenQueryHelper.js.map +1 -0
  149. package/dist/sd-orm-common/src/CaseWhenQueryHelper.mjs +20 -0
  150. package/dist/sd-orm-common/src/DbContext.d.ts +81 -0
  151. package/dist/sd-orm-common/src/DbContext.js.map +1 -0
  152. package/dist/sd-orm-common/src/DbContext.mjs +635 -0
  153. package/dist/sd-orm-common/src/IDbConnection.d.ts +15 -0
  154. package/dist/sd-orm-common/src/IDbConnection.js.map +1 -0
  155. package/dist/sd-orm-common/src/IDbConnection.mjs +2 -0
  156. package/dist/sd-orm-common/src/IDbContextExecutor.d.ts +17 -0
  157. package/dist/sd-orm-common/src/IDbContextExecutor.js.map +1 -0
  158. package/dist/sd-orm-common/src/IDbContextExecutor.mjs +2 -0
  159. package/dist/sd-orm-common/src/IDbMigration.d.ts +4 -0
  160. package/dist/sd-orm-common/src/IDbMigration.js.map +1 -0
  161. package/dist/sd-orm-common/src/IDbMigration.mjs +2 -0
  162. package/dist/sd-orm-common/src/QueryBuilder.d.ts +48 -0
  163. package/dist/sd-orm-common/src/QueryBuilder.js.map +1 -0
  164. package/dist/sd-orm-common/src/QueryBuilder.mjs +1022 -0
  165. package/dist/sd-orm-common/src/QueryHelper.d.ts +75 -0
  166. package/dist/sd-orm-common/src/QueryHelper.js.map +1 -0
  167. package/dist/sd-orm-common/src/QueryHelper.mjs +627 -0
  168. package/dist/sd-orm-common/src/QueryUnit.d.ts +10 -0
  169. package/dist/sd-orm-common/src/QueryUnit.js.map +1 -0
  170. package/dist/sd-orm-common/src/QueryUnit.mjs +16 -0
  171. package/dist/sd-orm-common/src/Queryable.d.ts +105 -0
  172. package/dist/sd-orm-common/src/Queryable.js.map +1 -0
  173. package/dist/sd-orm-common/src/Queryable.mjs +1375 -0
  174. package/dist/sd-orm-common/src/SdOrmDataType.d.ts +21 -0
  175. package/dist/sd-orm-common/src/SdOrmDataType.js.map +1 -0
  176. package/dist/sd-orm-common/src/SdOrmDataType.mjs +2 -0
  177. package/dist/sd-orm-common/src/commons.d.ts +400 -0
  178. package/dist/sd-orm-common/src/commons.js.map +1 -0
  179. package/dist/sd-orm-common/src/commons.mjs +8 -0
  180. package/dist/sd-orm-common/src/decorators.d.ts +29 -0
  181. package/dist/sd-orm-common/src/decorators.js.map +1 -0
  182. package/dist/sd-orm-common/src/decorators.mjs +89 -0
  183. package/dist/sd-orm-common/src/index.d.ts +17 -0
  184. package/dist/sd-orm-common/src/index.js.map +1 -0
  185. package/dist/sd-orm-common/src/index.mjs +18 -0
  186. package/dist/sd-orm-common/src/models/SystemMigration.d.ts +3 -0
  187. package/dist/sd-orm-common/src/models/SystemMigration.js.map +1 -0
  188. package/dist/sd-orm-common/src/models/SystemMigration.mjs +13 -0
  189. package/dist/sd-orm-common/src/utils/DbDefinitionUtil.d.ts +14 -0
  190. package/dist/sd-orm-common/src/utils/DbDefinitionUtil.js.map +1 -0
  191. package/dist/sd-orm-common/src/utils/DbDefinitionUtil.mjs +66 -0
  192. package/dist/sd-orm-common/src/utils/SdOrmUtil.d.ts +8 -0
  193. package/dist/sd-orm-common/src/utils/SdOrmUtil.js.map +1 -0
  194. package/dist/sd-orm-common/src/utils/SdOrmUtil.mjs +248 -0
  195. package/dist/sd-orm-node/src/DbConnectionFactory.d.ts +4 -0
  196. package/dist/sd-orm-node/src/DbConnectionFactory.js.map +1 -0
  197. package/dist/sd-orm-node/src/DbConnectionFactory.mjs +17 -0
  198. package/dist/sd-orm-node/src/NodeDbContextExecutor.d.ts +19 -0
  199. package/dist/sd-orm-node/src/NodeDbContextExecutor.js.map +1 -0
  200. package/dist/sd-orm-node/src/NodeDbContextExecutor.mjs +71 -0
  201. package/dist/sd-orm-node/src/SdOrm.d.ts +10 -0
  202. package/dist/sd-orm-node/src/SdOrm.js.map +1 -0
  203. package/dist/sd-orm-node/src/SdOrm.mjs +25 -0
  204. package/dist/sd-orm-node/src/index.d.ts +4 -0
  205. package/dist/sd-orm-node/src/index.js.map +1 -0
  206. package/dist/sd-orm-node/src/index.mjs +5 -0
  207. package/dist/sd-orm-node-mssql/src/MssqlDbConnection.d.ts +25 -0
  208. package/dist/sd-orm-node-mssql/src/MssqlDbConnection.js.map +1 -0
  209. package/dist/sd-orm-node-mssql/src/MssqlDbConnection.mjs +321 -0
  210. package/dist/sd-orm-node-mssql/src/index.d.ts +2 -0
  211. package/dist/sd-orm-node-mssql/src/index.js.map +1 -0
  212. package/dist/sd-orm-node-mssql/src/index.mjs +3 -0
  213. package/dist/sd-orm-node-mysql/src/MysqlDbConnection.d.ts +22 -0
  214. package/dist/sd-orm-node-mysql/src/MysqlDbConnection.js.map +1 -0
  215. package/dist/sd-orm-node-mysql/src/MysqlDbConnection.mjs +200 -0
  216. package/dist/sd-orm-node-mysql/src/index.d.ts +2 -0
  217. package/dist/sd-orm-node-mysql/src/index.js.map +1 -0
  218. package/dist/sd-orm-node-mysql/src/index.mjs +3 -0
  219. package/dist/sd-orm-node-sqlite/src/SqliteDbConnection.d.ts +22 -0
  220. package/dist/sd-orm-node-sqlite/src/SqliteDbConnection.js.map +1 -0
  221. package/dist/sd-orm-node-sqlite/src/SqliteDbConnection.mjs +172 -0
  222. package/dist/sd-orm-node-sqlite/src/index.d.ts +2 -0
  223. package/dist/sd-orm-node-sqlite/src/index.js.map +1 -0
  224. package/dist/sd-orm-node-sqlite/src/index.mjs +3 -0
  225. package/dist/sd-service-common/src/commons-orm.d.ts +4 -0
  226. package/dist/sd-service-common/src/commons-orm.js.map +1 -0
  227. package/dist/sd-service-common/src/commons-orm.mjs +2 -0
  228. package/dist/sd-service-common/src/commons-smtp.d.ts +29 -0
  229. package/dist/sd-service-common/src/commons-smtp.js.map +1 -0
  230. package/dist/sd-service-common/src/commons-smtp.mjs +2 -0
  231. package/dist/sd-service-common/src/commons.d.ts +57 -0
  232. package/dist/sd-service-common/src/commons.js.map +1 -0
  233. package/dist/sd-service-common/src/commons.mjs +3 -0
  234. package/dist/sd-service-common/src/index.d.ts +3 -0
  235. package/dist/sd-service-common/src/index.js.map +1 -0
  236. package/dist/sd-service-common/src/index.mjs +4 -0
  237. package/dist/sd-service-server/src/ApiServiceError.d.ts +12 -0
  238. package/dist/sd-service-server/src/ApiServiceError.js.map +1 -0
  239. package/dist/sd-service-server/src/ApiServiceError.mjs +15 -0
  240. package/dist/sd-service-server/src/SdServiceServer.d.ts +39 -0
  241. package/dist/sd-service-server/src/SdServiceServer.js.map +1 -0
  242. package/dist/sd-service-server/src/SdServiceServer.mjs +513 -0
  243. package/dist/sd-service-server/src/commons.d.ts +23 -0
  244. package/dist/sd-service-server/src/commons.js.map +1 -0
  245. package/dist/sd-service-server/src/commons.mjs +3 -0
  246. package/dist/sd-service-server/src/index.d.ts +8 -0
  247. package/dist/sd-service-server/src/index.js.map +1 -0
  248. package/dist/sd-service-server/src/index.mjs +9 -0
  249. package/dist/sd-service-server/src/services/SdAutoUpdateService.d.ts +4 -0
  250. package/dist/sd-service-server/src/services/SdAutoUpdateService.js.map +1 -0
  251. package/dist/sd-service-server/src/services/SdAutoUpdateService.mjs +20 -0
  252. package/dist/sd-service-server/src/services/SdCryptoService.d.ts +7 -0
  253. package/dist/sd-service-server/src/services/SdCryptoService.js.map +1 -0
  254. package/dist/sd-service-server/src/services/SdCryptoService.mjs +39 -0
  255. package/dist/sd-service-server/src/services/SdOrmService.d.ts +22 -0
  256. package/dist/sd-service-server/src/services/SdOrmService.js.map +1 -0
  257. package/dist/sd-service-server/src/services/SdOrmService.mjs +115 -0
  258. package/dist/sd-service-server/src/services/SdSmtpClientService.d.ts +6 -0
  259. package/dist/sd-service-server/src/services/SdSmtpClientService.js.map +1 -0
  260. package/dist/sd-service-server/src/services/SdSmtpClientService.mjs +44 -0
  261. package/dist/sd-service-server/src/utils/SdServiceServerConfigUtil.d.ts +4 -0
  262. package/dist/sd-service-server/src/utils/SdServiceServerConfigUtil.js.map +1 -0
  263. package/dist/sd-service-server/src/utils/SdServiceServerConfigUtil.mjs +36 -0
  264. package/dist/server-worker.d.ts +1 -0
  265. package/dist/server-worker.js.map +1 -0
  266. package/dist/server-worker.mjs +36 -0
  267. package/dist/utils/SdCliBuildResultUtil.d.ts +1 -4
  268. package/dist/utils/SdCliBuildResultUtil.js.map +1 -0
  269. package/dist/utils/SdCliBuildResultUtil.mjs +3 -29
  270. package/dist/utils/SdCliConfigUtil.js.map +1 -0
  271. package/dist/utils/SdCliConfigUtil.mjs +1 -1
  272. package/package.json +14 -56
  273. package/src/SdLinter.ts +41 -0
  274. package/src/SdTsIncrementalBuilder.ts +75 -0
  275. package/src/build-cluster.ts +133 -0
  276. package/src/builders/SdCliClientBuilder.ts +189 -0
  277. package/src/builders/SdCliJsLibLinter.ts +72 -0
  278. package/src/builders/SdCliServerBuilder.ts +191 -0
  279. package/src/builders/SdCliTsLibBuilder.ts +96 -0
  280. package/src/commons.ts +21 -112
  281. package/src/entry/SdCliProject.ts +467 -0
  282. package/src/sd-cli.ts +136 -0
  283. package/src/server-worker.ts +45 -0
  284. package/src/utils/SdCliBuildResultUtil.ts +5 -38
  285. package/tsconfig.json +9 -0
  286. package/README.md +0 -105
  287. package/assets/client-files/assets/icons/icon-128x128.png +0 -0
  288. package/assets/client-files/assets/icons/icon-144x144.png +0 -0
  289. package/assets/client-files/assets/icons/icon-152x152.png +0 -0
  290. package/assets/client-files/assets/icons/icon-192x192.png +0 -0
  291. package/assets/client-files/assets/icons/icon-384x384.png +0 -0
  292. package/assets/client-files/assets/icons/icon-512x512.png +0 -0
  293. package/assets/client-files/assets/icons/icon-72x72.png +0 -0
  294. package/assets/client-files/assets/icons/icon-96x96.png +0 -0
  295. package/assets/client-files/favicon.ico +0 -0
  296. package/dist/SdCliBuildResultError.d.ts +0 -5
  297. package/dist/SdCliBuildResultError.mjs +0 -8
  298. package/dist/bin/sd-cli.d.ts +0 -2
  299. package/dist/bin/sd-cli.mjs +0 -410
  300. package/dist/build-tool/SdCliCacheCompilerHost.d.ts +0 -10
  301. package/dist/build-tool/SdCliCacheCompilerHost.mjs +0 -51
  302. package/dist/build-tool/SdCliCordova.d.ts +0 -16
  303. package/dist/build-tool/SdCliCordova.mjs +0 -212
  304. package/dist/build-tool/SdCliElectron.d.ts +0 -9
  305. package/dist/build-tool/SdCliElectron.mjs +0 -72
  306. package/dist/build-tool/SdCliGithubApi.d.ts +0 -13
  307. package/dist/build-tool/SdCliGithubApi.mjs +0 -92
  308. package/dist/build-tool/SdCliIndexFileGenerator.d.ts +0 -13
  309. package/dist/build-tool/SdCliIndexFileGenerator.mjs +0 -62
  310. package/dist/build-tool/SdCliNgCacheCompilerHost.d.ts +0 -12
  311. package/dist/build-tool/SdCliNgCacheCompilerHost.mjs +0 -43
  312. package/dist/build-tool/SdCliPackageLinter.d.ts +0 -8
  313. package/dist/build-tool/SdCliPackageLinter.mjs +0 -62
  314. package/dist/builder/SdCliClientBuilder.d.ts +0 -26
  315. package/dist/builder/SdCliClientBuilder.mjs +0 -769
  316. package/dist/builder/SdCliJsLibBuilder.d.ts +0 -14
  317. package/dist/builder/SdCliJsLibBuilder.mjs +0 -54
  318. package/dist/builder/SdCliServerBuilder.d.ts +0 -28
  319. package/dist/builder/SdCliServerBuilder.mjs +0 -482
  320. package/dist/builder/SdCliTsLibBuilder.d.ts +0 -35
  321. package/dist/builder/SdCliTsLibBuilder.mjs +0 -317
  322. package/dist/entry-points/SdCliFileCrypto.d.ts +0 -7
  323. package/dist/entry-points/SdCliFileCrypto.mjs +0 -72
  324. package/dist/entry-points/SdCliLocalUpdate.d.ts +0 -13
  325. package/dist/entry-points/SdCliLocalUpdate.mjs +0 -100
  326. package/dist/entry-points/SdCliPrepare.d.ts +0 -5
  327. package/dist/entry-points/SdCliPrepare.mjs +0 -86
  328. package/dist/entry-points/SdCliProject.d.ts +0 -34
  329. package/dist/entry-points/SdCliProject.mjs +0 -416
  330. package/dist/entry-points/SdCliProjectGenerator.d.ts +0 -44
  331. package/dist/entry-points/SdCliProjectGenerator.mjs +0 -326
  332. package/dist/entry-points/file/base/fc_package_eslintrc.d.ts +0 -3
  333. package/dist/entry-points/file/base/fc_package_eslintrc.mjs +0 -31
  334. package/dist/entry-points/file/base/fc_package_npmconfig.d.ts +0 -9
  335. package/dist/entry-points/file/base/fc_package_npmconfig.mjs +0 -32
  336. package/dist/entry-points/file/base/fc_package_tsconfig.d.ts +0 -5
  337. package/dist/entry-points/file/base/fc_package_tsconfig.mjs +0 -13
  338. package/dist/entry-points/file/client/fc_package_AppModule.d.ts +0 -1
  339. package/dist/entry-points/file/client/fc_package_AppModule.mjs +0 -37
  340. package/dist/entry-points/file/client/fc_package_AppPage.d.ts +0 -1
  341. package/dist/entry-points/file/client/fc_package_AppPage.mjs +0 -14
  342. package/dist/entry-points/file/client/fc_package_Page.d.ts +0 -4
  343. package/dist/entry-points/file/client/fc_package_Page.mjs +0 -19
  344. package/dist/entry-points/file/client/fc_package_client_main.d.ts +0 -1
  345. package/dist/entry-points/file/client/fc_package_client_main.mjs +0 -19
  346. package/dist/entry-points/file/client/fc_package_index.d.ts +0 -3
  347. package/dist/entry-points/file/client/fc_package_index.mjs +0 -88
  348. package/dist/entry-points/file/client/fc_package_manifest.d.ts +0 -5
  349. package/dist/entry-points/file/client/fc_package_manifest.mjs +0 -54
  350. package/dist/entry-points/file/client/fc_package_polyfills.d.ts +0 -1
  351. package/dist/entry-points/file/client/fc_package_polyfills.mjs +0 -11
  352. package/dist/entry-points/file/client/fc_package_styles.d.ts +0 -1
  353. package/dist/entry-points/file/client/fc_package_styles.mjs +0 -7
  354. package/dist/entry-points/file/db/fc_package_DbContext.d.ts +0 -3
  355. package/dist/entry-points/file/db/fc_package_DbContext.mjs +0 -14
  356. package/dist/entry-points/file/db/fc_package_DbModel.d.ts +0 -4
  357. package/dist/entry-points/file/db/fc_package_DbModel.mjs +0 -12
  358. package/dist/entry-points/file/project/fc_project_editor_config.d.ts +0 -1
  359. package/dist/entry-points/file/project/fc_project_editor_config.mjs +0 -22
  360. package/dist/entry-points/file/project/fc_project_eslintrc.d.ts +0 -1
  361. package/dist/entry-points/file/project/fc_project_eslintrc.mjs +0 -30
  362. package/dist/entry-points/file/project/fc_project_gitattributes.d.ts +0 -1
  363. package/dist/entry-points/file/project/fc_project_gitattributes.mjs +0 -6
  364. package/dist/entry-points/file/project/fc_project_gitignore.d.ts +0 -1
  365. package/dist/entry-points/file/project/fc_project_gitignore.mjs +0 -27
  366. package/dist/entry-points/file/project/fc_project_npmconfig.d.ts +0 -7
  367. package/dist/entry-points/file/project/fc_project_npmconfig.mjs +0 -37
  368. package/dist/entry-points/file/project/fc_project_readme.d.ts +0 -3
  369. package/dist/entry-points/file/project/fc_project_readme.mjs +0 -13
  370. package/dist/entry-points/file/project/fc_project_simplysm.d.ts +0 -1
  371. package/dist/entry-points/file/project/fc_project_simplysm.mjs +0 -2
  372. package/dist/entry-points/file/project/fc_project_tsconfig.d.ts +0 -1
  373. package/dist/entry-points/file/project/fc_project_tsconfig.mjs +0 -25
  374. package/dist/entry-points/file/server/fc_package_server_main.d.ts +0 -5
  375. package/dist/entry-points/file/server/fc_package_server_main.mjs +0 -60
  376. package/dist/index.d.ts +0 -54
  377. package/dist/index.mjs +0 -55
  378. package/dist/ng-tools/SdCliNgModuleGenerator.d.ts +0 -29
  379. package/dist/ng-tools/SdCliNgModuleGenerator.mjs +0 -502
  380. package/dist/ng-tools/babel/SdCliBbFileMetadata.d.ts +0 -25
  381. package/dist/ng-tools/babel/SdCliBbFileMetadata.mjs +0 -539
  382. package/dist/ng-tools/babel/SdCliBbRootMetadata.d.ts +0 -23
  383. package/dist/ng-tools/babel/SdCliBbRootMetadata.mjs +0 -247
  384. package/dist/ng-tools/babel/SdCliBbUtil.d.ts +0 -5
  385. package/dist/ng-tools/babel/SdCliBbUtil.mjs +0 -14
  386. package/dist/ng-tools/babel/TSdCliBbNgMetadata.d.ts +0 -42
  387. package/dist/ng-tools/babel/TSdCliBbNgMetadata.mjs +0 -216
  388. package/dist/ng-tools/babel/TSdCliBbTypeMetadata.d.ts +0 -55
  389. package/dist/ng-tools/babel/TSdCliBbTypeMetadata.mjs +0 -151
  390. package/dist/ng-tools/commons.d.ts +0 -9
  391. package/dist/ng-tools/commons.mjs +0 -2
  392. package/dist/ng-tools/typescript/SdCliTsFileMetadata.d.ts +0 -61
  393. package/dist/ng-tools/typescript/SdCliTsFileMetadata.mjs +0 -325
  394. package/dist/ng-tools/typescript/SdCliTsRootMetadata.d.ts +0 -8
  395. package/dist/ng-tools/typescript/SdCliTsRootMetadata.mjs +0 -28
  396. package/dist/ng-tools/typescript/SdCliTsUtil.d.ts +0 -5
  397. package/dist/ng-tools/typescript/SdCliTsUtil.mjs +0 -28
  398. package/dist/packages/SdCliPackage.d.ts +0 -22
  399. package/dist/packages/SdCliPackage.mjs +0 -206
  400. package/dist/utils/SdCliNpmConfigUtil.d.ts +0 -7
  401. package/dist/utils/SdCliNpmConfigUtil.mjs +0 -15
  402. package/dist/worker/build-worker.mjs +0 -67
  403. package/dist/worker/server-worker.mjs +0 -67
  404. package/docs/client-add-page.md +0 -8
  405. package/docs/client-router.md +0 -85
  406. package/docs/client-sw.md +0 -101
  407. package/docs/conf-orm.md +0 -81
  408. package/docs/conf-usage.md +0 -5
  409. package/docs/lib-local-update.md +0 -50
  410. package/docs/lib-ts-paths.md +0 -25
  411. package/lib/cordova-entry.js +0 -22
  412. package/src/SdCliBuildResultError.ts +0 -9
  413. package/src/bin/sd-cli.ts +0 -493
  414. package/src/build-tool/SdCliCacheCompilerHost.ts +0 -79
  415. package/src/build-tool/SdCliCordova.ts +0 -263
  416. package/src/build-tool/SdCliElectron.ts +0 -85
  417. package/src/build-tool/SdCliGithubApi.ts +0 -111
  418. package/src/build-tool/SdCliIndexFileGenerator.ts +0 -79
  419. package/src/build-tool/SdCliNgCacheCompilerHost.ts +0 -58
  420. package/src/build-tool/SdCliPackageLinter.ts +0 -74
  421. package/src/builder/SdCliClientBuilder.ts +0 -879
  422. package/src/builder/SdCliJsLibBuilder.ts +0 -70
  423. package/src/builder/SdCliServerBuilder.ts +0 -552
  424. package/src/builder/SdCliTsLibBuilder.ts +0 -450
  425. package/src/entry-points/SdCliFileCrypto.ts +0 -87
  426. package/src/entry-points/SdCliLocalUpdate.ts +0 -121
  427. package/src/entry-points/SdCliPrepare.ts +0 -86
  428. package/src/entry-points/SdCliProject.ts +0 -491
  429. package/src/entry-points/SdCliProjectGenerator.ts +0 -402
  430. package/src/entry-points/file/base/fc_package_eslintrc.ts +0 -30
  431. package/src/entry-points/file/base/fc_package_npmconfig.ts +0 -43
  432. package/src/entry-points/file/base/fc_package_tsconfig.ts +0 -12
  433. package/src/entry-points/file/client/fc_package_AppModule.ts +0 -36
  434. package/src/entry-points/file/client/fc_package_AppPage.ts +0 -13
  435. package/src/entry-points/file/client/fc_package_Page.ts +0 -19
  436. package/src/entry-points/file/client/fc_package_client_main.ts +0 -18
  437. package/src/entry-points/file/client/fc_package_index.ts +0 -87
  438. package/src/entry-points/file/client/fc_package_manifest.ts +0 -53
  439. package/src/entry-points/file/client/fc_package_polyfills.ts +0 -10
  440. package/src/entry-points/file/client/fc_package_styles.ts +0 -6
  441. package/src/entry-points/file/db/fc_package_DbContext.ts +0 -14
  442. package/src/entry-points/file/db/fc_package_DbModel.ts +0 -11
  443. package/src/entry-points/file/project/fc_project_editor_config.ts +0 -21
  444. package/src/entry-points/file/project/fc_project_eslintrc.ts +0 -29
  445. package/src/entry-points/file/project/fc_project_gitattributes.ts +0 -5
  446. package/src/entry-points/file/project/fc_project_gitignore.ts +0 -26
  447. package/src/entry-points/file/project/fc_project_npmconfig.ts +0 -36
  448. package/src/entry-points/file/project/fc_project_readme.ts +0 -12
  449. package/src/entry-points/file/project/fc_project_simplysm.ts +0 -1
  450. package/src/entry-points/file/project/fc_project_tsconfig.ts +0 -24
  451. package/src/entry-points/file/server/fc_package_server_main.ts +0 -62
  452. package/src/index.ts +0 -54
  453. package/src/ng-tools/SdCliNgModuleGenerator.ts +0 -672
  454. package/src/ng-tools/babel/SdCliBbFileMetadata.ts +0 -629
  455. package/src/ng-tools/babel/SdCliBbRootMetadata.ts +0 -292
  456. package/src/ng-tools/babel/SdCliBbUtil.ts +0 -15
  457. package/src/ng-tools/babel/TSdCliBbNgMetadata.ts +0 -251
  458. package/src/ng-tools/babel/TSdCliBbTypeMetadata.ts +0 -212
  459. package/src/ng-tools/commons.ts +0 -3
  460. package/src/ng-tools/typescript/SdCliTsFileMetadata.ts +0 -384
  461. package/src/ng-tools/typescript/SdCliTsRootMetadata.ts +0 -32
  462. package/src/ng-tools/typescript/SdCliTsUtil.ts +0 -29
  463. package/src/packages/SdCliPackage.ts +0 -259
  464. package/src/utils/SdCliNpmConfigUtil.ts +0 -16
  465. package/src/worker/build-worker.ts +0 -73
  466. package/src/worker/server-worker.ts +0 -72
  467. /package/dist/{worker/build-worker.d.ts → build-cluster.d.ts} +0 -0
  468. /package/dist/{worker/server-worker.d.ts → sd-cli.d.ts} +0 -0
@@ -1,629 +0,0 @@
1
- import {
2
- Declaration,
3
- Expression,
4
- File,
5
- isArrayExpression,
6
- isAssignmentExpression,
7
- isCallExpression,
8
- isClassDeclaration,
9
- isConditionalExpression,
10
- isExportDeclaration,
11
- isExportDefaultDeclaration,
12
- isExportNamedDeclaration,
13
- isExportSpecifier,
14
- isExpressionStatement,
15
- isFunctionDeclaration,
16
- isIdentifier,
17
- isImportDeclaration,
18
- isImportDefaultSpecifier,
19
- isImportNamespaceSpecifier,
20
- isImportSpecifier,
21
- isMemberExpression,
22
- isObjectExpression,
23
- isSpreadElement,
24
- isStringLiteral,
25
- isVariableDeclaration,
26
- PatternLike,
27
- SpreadElement,
28
- Statement,
29
- traverseFast
30
- } from "@babel/types";
31
- import babelParser, { ParseError } from "@babel/parser";
32
- import { FsUtil } from "@simplysm/sd-core-node";
33
- import path from "path";
34
- import { TSdCliBbMetadata } from "./SdCliBbRootMetadata";
35
- import {
36
- SdCliBbArrayMetadata,
37
- SdCliBbClassMetadata,
38
- SdCliBbConditionMetadata,
39
- SdCliBbFunctionMetadata,
40
- SdCliBbObjectMetadata,
41
- SdCliBbVariableMetadata
42
- } from "./TSdCliBbTypeMetadata";
43
- import { SdCliBbUtil } from "./SdCliBbUtil";
44
- import { NeverEntryError } from "@simplysm/sd-core-common";
45
-
46
- export class SdCliBbFileMetadata {
47
- public readonly ast: File & { errors: ParseError[] };
48
- public readonly rawMetas: Statement[];
49
-
50
- public constructor(public readonly filePath: string) {
51
- let realFilePath: string | undefined;
52
- for (const ext of ["", ".mjs", ".cjs", ".js"/*, "/index.mjs", "/index.cjs", "/index.js"*/]) {
53
- if (FsUtil.exists(filePath + ext) && !FsUtil.stat(filePath + ext).isDirectory()) {
54
- realFilePath = filePath + ext;
55
- break;
56
- }
57
- }
58
- if (realFilePath === undefined) {
59
- throw SdCliBbUtil.error("파일을 찾을 수 없습니다.", filePath);
60
- }
61
-
62
- const fileContent = FsUtil.readFile(realFilePath);
63
- try {
64
- this.ast = babelParser.parse(fileContent, { sourceType: "module" });
65
- }
66
- catch (err) {
67
- throw SdCliBbUtil.error(err.message, this.filePath, err.loc);
68
- }
69
- this.rawMetas = this.ast.program.body;
70
- }
71
-
72
- private _exportsCache?: { exportedName: string; target: TSdCliBbMetadata }[];
73
-
74
- public get exports(): { exportedName: string; target: TSdCliBbMetadata }[] {
75
- if (this._exportsCache) return this._exportsCache;
76
-
77
- const result: { exportedName: string; target: TSdCliBbMetadata }[] = [];
78
- for (const rawMeta of this.rawMetas) {
79
- if (!isExportDeclaration(rawMeta)) continue;
80
-
81
- if (isExportNamedDeclaration(rawMeta)) {
82
- if (rawMeta.declaration) {
83
- if (isVariableDeclaration(rawMeta.declaration)) {
84
- for (const decl of rawMeta.declaration.declarations) {
85
- if (isIdentifier(decl.id)) {
86
- result.push({
87
- exportedName: decl.id.name,
88
- target: new SdCliBbVariableMetadata(this, decl)
89
- });
90
- }
91
- else {
92
- throw SdCliBbUtil.error("예상치 못한 방식의 코드가 발견되었습니다.", this.filePath, rawMeta);
93
- }
94
- }
95
- }
96
- else if (isClassDeclaration(rawMeta.declaration)) {
97
- result.push({
98
- exportedName: rawMeta.declaration.id.name,
99
- target: new SdCliBbClassMetadata(this, rawMeta.declaration)
100
- });
101
- }
102
- else if (isFunctionDeclaration(rawMeta.declaration)) {
103
- if (rawMeta.declaration.id) {
104
- result.push({
105
- exportedName: rawMeta.declaration.id.name,
106
- target: new SdCliBbFunctionMetadata(this, rawMeta.declaration)
107
- });
108
- }
109
- else {
110
- throw SdCliBbUtil.error("예상치 못한 방식의 코드가 발견되었습니다.", this.filePath, rawMeta);
111
- }
112
- }
113
- else {
114
- throw SdCliBbUtil.error("예상치 못한 방식의 코드가 발견되었습니다.", this.filePath, rawMeta);
115
- }
116
- }
117
- else {
118
- for (const specifier of rawMeta.specifiers) {
119
- if (isExportSpecifier(specifier)) {
120
- const exportedName = isIdentifier(specifier.exported) ? specifier.exported.name : undefined;
121
- if (exportedName === undefined) {
122
- throw SdCliBbUtil.error("예상치 못한 방식의 코드가 발견되었습니다.", this.filePath, rawMeta);
123
- }
124
-
125
- if (rawMeta.source) {
126
- if (rawMeta.source.value.startsWith(".")) {
127
- const moduleFilePath = path.resolve(path.dirname(this.filePath), rawMeta.source.value);
128
- result.push({
129
- exportedName,
130
- target: {
131
- filePath: moduleFilePath,
132
- name: specifier.local.name,
133
- __TSdCliMetaRef__: "__TSdCliMetaRef__"
134
- }
135
- });
136
- }
137
- else {
138
- const moduleName = rawMeta.source.value;
139
- result.push({
140
- exportedName,
141
- target: { moduleName, name: specifier.local.name, __TSdCliMetaRef__: "__TSdCliMetaRef__" }
142
- });
143
- }
144
- }
145
- else {
146
- result.push({
147
- exportedName,
148
- target: this.findMetaFromInside(specifier.local.name)
149
- });
150
- }
151
- }
152
- else {
153
- throw SdCliBbUtil.error("예상치 못한 방식의 코드가 발견되었습니다.", this.filePath, rawMeta);
154
- }
155
- }
156
- }
157
- }
158
- else if (isExportDefaultDeclaration(rawMeta)) {
159
- result.push({
160
- exportedName: "default",
161
- target: this.getMetaFromRaw(rawMeta.declaration)
162
- });
163
- }
164
- else {
165
- if (rawMeta.source.value.startsWith(".")) {
166
- const moduleFilePath = path.resolve(path.dirname(this.filePath), rawMeta.source.value);
167
- result.push({
168
- exportedName: "*",
169
- target: {
170
- filePath: moduleFilePath,
171
- name: "*",
172
- __TSdCliMetaRef__: "__TSdCliMetaRef__"
173
- }
174
- });
175
- }
176
- else {
177
- const moduleName = rawMeta.source.value;
178
- result.push({
179
- exportedName: "*",
180
- target: { moduleName, name: "*", __TSdCliMetaRef__: "__TSdCliMetaRef__" }
181
- });
182
- }
183
- }
184
- }
185
-
186
- this._exportsCache = result;
187
- return result;
188
- }
189
-
190
- private readonly _findMetaFromOutsideCache = new Map<string, TSdCliBbMetadata>();
191
-
192
- public findMetaFromOutside(name: string): TSdCliBbMetadata | undefined {
193
- const cache = this._findMetaFromOutsideCache.get(name);
194
- if (cache !== undefined) return cache;
195
-
196
- for (const rawMeta of this.rawMetas) {
197
- if (isExportNamedDeclaration(rawMeta)) {
198
- if (rawMeta.declaration) {
199
- if (isVariableDeclaration(rawMeta.declaration)) {
200
- for (const decl of rawMeta.declaration.declarations) {
201
- if (isIdentifier(decl.id)) {
202
- if (decl.id.name === name) {
203
- const result = new SdCliBbVariableMetadata(this, decl);
204
- this._findMetaFromOutsideCache.set(name, result);
205
- return result;
206
- }
207
- }
208
- else {
209
- throw SdCliBbUtil.error("예상치 못한 방식의 코드가 발견되었습니다.", this.filePath, rawMeta);
210
- }
211
- }
212
- }
213
- else if (isClassDeclaration(rawMeta.declaration)) {
214
- if (rawMeta.declaration.id.name === name) {
215
- const result = new SdCliBbClassMetadata(this, rawMeta.declaration);
216
- this._findMetaFromOutsideCache.set(name, result);
217
- return result;
218
- }
219
- }
220
- else if (isFunctionDeclaration(rawMeta.declaration)) {
221
- if (rawMeta.declaration.id) {
222
- if (rawMeta.declaration.id.name === name) {
223
- const result = new SdCliBbFunctionMetadata(this, rawMeta.declaration);
224
- this._findMetaFromOutsideCache.set(name, result);
225
- return result;
226
- }
227
- }
228
- else {
229
- throw SdCliBbUtil.error("예상치 못한 방식의 코드가 발견되었습니다.", this.filePath, rawMeta);
230
- }
231
- }
232
- else {
233
- throw SdCliBbUtil.error("예상치 못한 방식의 코드가 발견되었습니다.", this.filePath, rawMeta);
234
- }
235
- }
236
- else {
237
- for (const specifier of rawMeta.specifiers) {
238
- if (isExportSpecifier(specifier)) {
239
- const exportedName = isIdentifier(specifier.exported) ? specifier.exported.name : undefined;
240
- if (exportedName === undefined) {
241
- throw SdCliBbUtil.error("예상치 못한 방식의 코드가 발견되었습니다.", this.filePath, rawMeta);
242
- }
243
- else if (exportedName === name) {
244
- if (rawMeta.source) {
245
- if (rawMeta.source.value.startsWith(".")) {
246
- const moduleFilePath = path.resolve(path.dirname(this.filePath), rawMeta.source.value);
247
- const result = {
248
- filePath: moduleFilePath,
249
- name: specifier.local.name,
250
- __TSdCliMetaRef__: "__TSdCliMetaRef__" as const
251
- };
252
- this._findMetaFromOutsideCache.set(name, result);
253
- return result;
254
- }
255
- else {
256
- const moduleName = rawMeta.source.value;
257
- const result = {
258
- moduleName,
259
- name: specifier.local.name,
260
- __TSdCliMetaRef__: "__TSdCliMetaRef__" as const
261
- };
262
- this._findMetaFromOutsideCache.set(name, result);
263
- return result;
264
- }
265
- }
266
- else {
267
- const result = this.findMetaFromInside(specifier.local.name);
268
- this._findMetaFromOutsideCache.set(name, result);
269
- return result;
270
- }
271
- }
272
- }
273
- }
274
- }
275
- }
276
- else if (isExportDefaultDeclaration(rawMeta) && name === "default") {
277
- const result = this.getMetaFromRaw(rawMeta.declaration);
278
- if (Array.isArray(result)) {
279
- throw SdCliBbUtil.error("예상치 못한 방식의 코드가 발견되었습니다.", this.filePath, rawMeta);
280
- }
281
- this._findMetaFromOutsideCache.set(name, result);
282
- return result;
283
- }
284
- }
285
-
286
- // throw SdCliBbUtil.error(`'${name}'에 대한 선언을 찾을 수 없습니다.`, this.filePath);
287
- return undefined;
288
- }
289
-
290
- private readonly _findMetaFromInsideCache = new Map<string, TSdCliBbMetadata>();
291
-
292
- public findMetaFromInside(localName: string, excludeExport?: boolean): TSdCliBbMetadata {
293
- const cache = this._findMetaFromInsideCache.get(localName);
294
- if (cache !== undefined) return cache;
295
-
296
- for (const rawMeta of this.rawMetas) {
297
- if (isClassDeclaration(rawMeta) && rawMeta.id.name === localName) {
298
- return new SdCliBbClassMetadata(this, rawMeta);
299
- }
300
- else if (!excludeExport && isExportNamedDeclaration(rawMeta)) {
301
- for (const specifier of rawMeta.specifiers) {
302
- if (isExportSpecifier(specifier)) {
303
- const exportedName = isIdentifier(specifier.exported) ? specifier.exported.name : undefined;
304
- if (exportedName === undefined) {
305
- throw SdCliBbUtil.error("예상치 못한 방식의 코드가 발견되었습니다.", this.filePath, rawMeta);
306
- }
307
- else if (exportedName === localName) {
308
- if (rawMeta.source) {
309
- if (rawMeta.source.value.startsWith(".")) {
310
- const moduleFilePath = path.resolve(path.dirname(this.filePath), rawMeta.source.value);
311
- const result = {
312
- filePath: moduleFilePath,
313
- name: specifier.local.name,
314
- __TSdCliMetaRef__: "__TSdCliMetaRef__" as const
315
- };
316
- this._findMetaFromInsideCache.set(localName, result);
317
- return result;
318
- }
319
- else {
320
- const moduleName = rawMeta.source.value;
321
- const result = {
322
- moduleName,
323
- name: specifier.local.name,
324
- __TSdCliMetaRef__: "__TSdCliMetaRef__" as const
325
- };
326
- this._findMetaFromInsideCache.set(localName, result);
327
- return result;
328
- }
329
- }
330
- else {
331
- const localImportName = isIdentifier(specifier.local) ? specifier.local.name : undefined;
332
-
333
- if (localImportName === undefined) {
334
- throw SdCliBbUtil.error("예상치 못한 방식의 코드가 발견되었습니다.", this.filePath, rawMeta);
335
- }
336
- else if (exportedName !== localImportName) {
337
- const result = this.findMetaFromInside(localImportName);
338
- this._findMetaFromInsideCache.set(localImportName, result);
339
- return result;
340
- }
341
- else {
342
- const result = this.findMetaFromInside(localImportName, true);
343
- this._findMetaFromInsideCache.set(localImportName, result);
344
- return result;
345
- }
346
- }
347
- }
348
- }
349
- }
350
- }
351
- // else if (!excludeExport && isExportDefaultDeclaration(rawMeta) && localName === "default") {
352
- // const result = this.getMetaFromRaw(rawMeta.declaration);
353
- // if (Array.isArray(result)) {
354
- // throw new NeverEntryError();
355
- // }
356
- // this._findMetaFromInsideCache.set(localName, result);
357
- // return result;
358
- // }
359
- else if (isImportDeclaration(rawMeta)) {
360
- for (const specifier of rawMeta.specifiers) {
361
- if (isImportSpecifier(specifier)) {
362
- const impLocalName = isIdentifier(specifier.local) ? specifier.local.name : undefined;
363
- if (impLocalName === undefined) {
364
- throw SdCliBbUtil.error("예상치 못한 방식의 코드가 발견되었습니다.", this.filePath, rawMeta);
365
- }
366
- else if (impLocalName === localName) {
367
- if (isIdentifier(specifier.imported)) {
368
- if (rawMeta.source.value.startsWith(".")) {
369
- const moduleFilePath = path.resolve(path.dirname(this.filePath), rawMeta.source.value);
370
- const result = {
371
- filePath: moduleFilePath,
372
- name: specifier.imported.name,
373
- __TSdCliMetaRef__: "__TSdCliMetaRef__" as const
374
- };
375
- this._findMetaFromInsideCache.set(localName, result);
376
- return result;
377
- }
378
- else {
379
- const moduleName = rawMeta.source.value;
380
- const result = {
381
- moduleName,
382
- name: specifier.imported.name,
383
- __TSdCliMetaRef__: "__TSdCliMetaRef__" as const
384
- };
385
- this._findMetaFromInsideCache.set(localName, result);
386
- return result;
387
- }
388
- }
389
- else {
390
- throw SdCliBbUtil.error("예상치 못한 방식의 코드가 발견되었습니다.", this.filePath, rawMeta);
391
- }
392
- }
393
- }
394
- else if (isImportDefaultSpecifier(specifier)) {
395
- if (specifier.local.name === localName) {
396
- if (rawMeta.source.value.startsWith(".")) {
397
- const moduleFilePath = path.resolve(path.dirname(this.filePath), rawMeta.source.value);
398
- const result = {
399
- filePath: moduleFilePath,
400
- name: "default",
401
- __TSdCliMetaRef__: "__TSdCliMetaRef__" as const
402
- };
403
- this._findMetaFromInsideCache.set(localName, result);
404
- return result;
405
- }
406
- else {
407
- const moduleName = rawMeta.source.value;
408
- const result = {
409
- moduleName,
410
- name: "default",
411
- __TSdCliMetaRef__: "__TSdCliMetaRef__" as const
412
- };
413
- this._findMetaFromInsideCache.set(localName, result);
414
- return result;
415
- }
416
- }
417
- }
418
- else if (isImportNamespaceSpecifier(specifier)) {
419
- if (specifier.local.name === localName) {
420
- if (rawMeta.source.value.startsWith(".")) {
421
- const moduleFilePath = path.resolve(path.dirname(this.filePath), rawMeta.source.value);
422
- const result = {
423
- filePath: moduleFilePath,
424
- name: "*",
425
- __TSdCliMetaRef__: "__TSdCliMetaRef__" as const
426
- };
427
- this._findMetaFromInsideCache.set(localName, result);
428
- return result;
429
- }
430
- else {
431
- const moduleName = rawMeta.source.value;
432
- const result = {
433
- moduleName,
434
- name: "*",
435
- __TSdCliMetaRef__: "__TSdCliMetaRef__" as const
436
- };
437
- this._findMetaFromInsideCache.set(localName, result);
438
- return result;
439
- // throw SdCliBbUtil.error("예상치 못한 방식의 코드가 발견되었습니다.", this.filePath, rawMeta);
440
- }
441
- }
442
- }
443
- }
444
- }
445
- else if (isVariableDeclaration(rawMeta)) {
446
- for (const decl of rawMeta.declarations) {
447
- if (isIdentifier(decl.id)) {
448
- if (decl.id.name === localName) {
449
- const result = new SdCliBbVariableMetadata(this, decl);
450
- this._findMetaFromInsideCache.set(localName, result);
451
- return result;
452
- }
453
- }
454
- else {
455
- throw SdCliBbUtil.error("예상치 못한 방식의 코드가 발견되었습니다.", this.filePath, rawMeta);
456
- }
457
- }
458
- }
459
- else if (isFunctionDeclaration(rawMeta)) {
460
- if (rawMeta.id) {
461
- if (rawMeta.id.name === localName) {
462
- const result = new SdCliBbFunctionMetadata(this, rawMeta);
463
- this._findMetaFromInsideCache.set(localName, result);
464
- return result;
465
- }
466
- }
467
- else {
468
- throw SdCliBbUtil.error("예상치 못한 방식의 코드가 발견되었습니다.", this.filePath, rawMeta);
469
- }
470
- }
471
- }
472
-
473
- throw SdCliBbUtil.error(`'${localName}'에 대한 내부선언을 찾을 수 없습니다.`, this.filePath);
474
- }
475
-
476
- public getMetaFromRaw(rawMeta: Declaration | Expression | PatternLike | SpreadElement): TSdCliBbMetadata {
477
- if (isIdentifier(rawMeta)) {
478
- return this.findMetaFromInside(rawMeta.name);
479
- }
480
- else if (isClassDeclaration(rawMeta)) {
481
- return new SdCliBbClassMetadata(this, rawMeta);
482
- }
483
- else if (isFunctionDeclaration(rawMeta)) {
484
- return new SdCliBbFunctionMetadata(this, rawMeta);
485
- }
486
- else if (isArrayExpression(rawMeta)) {
487
- return new SdCliBbArrayMetadata(this, rawMeta);
488
- }
489
- else if (isObjectExpression(rawMeta)) {
490
- return new SdCliBbObjectMetadata(this, rawMeta);
491
- }
492
- else if (isStringLiteral(rawMeta)) {
493
- return rawMeta.value;
494
- }
495
- else if (isSpreadElement(rawMeta)) {
496
- return this.getMetaFromRaw(rawMeta.argument);
497
- }
498
- else if (isConditionalExpression(rawMeta)) {
499
- return new SdCliBbConditionMetadata(this, rawMeta);
500
- }
501
-
502
- throw SdCliBbUtil.error("예상치 못한 방식의 코드가 발견되었습니다.", this.filePath, rawMeta);
503
- }
504
-
505
- private readonly _getNgDecoArgCache = new Map<string, SdCliBbObjectMetadata | undefined>();
506
-
507
- public getNgDecoArg(className: string): SdCliBbObjectMetadata | undefined {
508
- if (this._getNgDecoArgCache.has(className)) {
509
- return this._getNgDecoArgCache.get(className)!;
510
- }
511
-
512
- for (const meta of this.rawMetas) {
513
- // 'compilationMode: partial' 일때
514
- if (
515
- isExpressionStatement(meta) &&
516
- isCallExpression(meta.expression) &&
517
- (
518
- (
519
- isMemberExpression(meta.expression.callee) &&
520
- isIdentifier(meta.expression.callee.property) &&
521
- meta.expression.callee.property.name === "ɵɵngDeclareClassMetadata"
522
- ) ||
523
- (
524
- isIdentifier(meta.expression.callee) &&
525
- meta.expression.callee.name === "ngDeclareClassMetadata"
526
- )
527
- ) &&
528
- isObjectExpression(meta.expression.arguments[0])
529
- ) {
530
- const objMeta = new SdCliBbObjectMetadata(this, meta.expression.arguments[0]);
531
- const typePropVal = objMeta.getPropValue("type");
532
- if (
533
- typePropVal instanceof SdCliBbClassMetadata &&
534
- typePropVal.name === className
535
- ) {
536
- const decos = objMeta.getPropValue("decorators");
537
- if (
538
- decos instanceof SdCliBbArrayMetadata &&
539
- decos.value[0] instanceof SdCliBbObjectMetadata
540
- ) {
541
- const args = decos.value[0].getPropValue("args");
542
- if (
543
- args instanceof SdCliBbArrayMetadata &&
544
- args.value[0] instanceof SdCliBbObjectMetadata
545
- ) {
546
- this._getNgDecoArgCache.set(className, args.value[0]);
547
- return args.value[0];
548
- }
549
- }
550
- else {
551
- throw new NeverEntryError();
552
- }
553
- }
554
- }
555
- }
556
-
557
- // 'compilationMode: full' 일때
558
- let result: SdCliBbObjectMetadata | undefined;
559
- traverseFast(this.ast, (node) => {
560
- if (
561
- isCallExpression(node) &&
562
- (
563
- (
564
- isMemberExpression(node.callee) &&
565
- isIdentifier(node.callee.property) &&
566
- node.callee.property.name === "ɵsetClassMetadata"
567
- ) ||
568
- (
569
- isIdentifier(node.callee) &&
570
- node.callee.name === "setClassMetadata"
571
- )
572
- ) &&
573
- isIdentifier(node.arguments[0]) &&
574
- node.arguments[0].name === className &&
575
- isArrayExpression(node.arguments[1])
576
- ) {
577
- const decos = new SdCliBbArrayMetadata(this, node.arguments[1]);
578
- if (decos.value[0] instanceof SdCliBbObjectMetadata) {
579
- const args = decos.value[0].getPropValue("args");
580
- if (
581
- args instanceof SdCliBbArrayMetadata &&
582
- args.value[0] instanceof SdCliBbObjectMetadata
583
- ) {
584
- result = args.value[0];
585
- }
586
- }
587
- else {
588
- throw new NeverEntryError();
589
- }
590
- }
591
- });
592
-
593
- // if (result === undefined) {
594
- // throw new NeverEntryError(this.filePath + "," + className);
595
- // }
596
-
597
- this._getNgDecoArgCache.set(className, result);
598
- return result;
599
- }
600
-
601
- public getNgDecoPropValue(className: string, decoName: string, propName: string): TSdCliBbMetadata | undefined {
602
- for (const meta of this.rawMetas) {
603
- if (
604
- isExpressionStatement(meta) &&
605
- isAssignmentExpression(meta.expression) &&
606
- isMemberExpression(meta.expression.left) &&
607
- isIdentifier(meta.expression.left.object) &&
608
- meta.expression.left.object.name === className &&
609
- isIdentifier(meta.expression.left.property)
610
- ) {
611
- if (meta.expression.left.property.name === decoName) {
612
- if (
613
- isCallExpression(meta.expression.right) &&
614
- meta.expression.right.arguments.length > 0 &&
615
- isObjectExpression(meta.expression.right.arguments[0])
616
- ) {
617
- const dirObjMeta = new SdCliBbObjectMetadata(this, meta.expression.right.arguments[0]);
618
- return dirObjMeta.getPropValue(propName);
619
- }
620
- else {
621
- throw new NeverEntryError();
622
- }
623
- }
624
- }
625
- }
626
-
627
- throw new NeverEntryError();
628
- }
629
- }