@breadstone-infrastructure/utilities 0.0.12-beta.0

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 (374) hide show
  1. package/Cli/Abstracts/ProgramCommandBase.d.ts +60 -0
  2. package/Cli/Abstracts/ProgramCommandBase.d.ts.map +1 -0
  3. package/Cli/Abstracts/ProgramCommandBase.js +64 -0
  4. package/Cli/Abstracts/ProgramCommandBase.js.map +1 -0
  5. package/Cli/Builders/ProgramBuilder.d.ts +39 -0
  6. package/Cli/Builders/ProgramBuilder.d.ts.map +1 -0
  7. package/Cli/Builders/ProgramBuilder.js +73 -0
  8. package/Cli/Builders/ProgramBuilder.js.map +1 -0
  9. package/Cli/Builders/ProgramCommandBuilder.d.ts +78 -0
  10. package/Cli/Builders/ProgramCommandBuilder.d.ts.map +1 -0
  11. package/Cli/Builders/ProgramCommandBuilder.js +147 -0
  12. package/Cli/Builders/ProgramCommandBuilder.js.map +1 -0
  13. package/Cli/Interfaces/IProgramArg.d.ts +11 -0
  14. package/Cli/Interfaces/IProgramArg.d.ts.map +1 -0
  15. package/Cli/Interfaces/IProgramArg.js +4 -0
  16. package/Cli/Interfaces/IProgramArg.js.map +1 -0
  17. package/Cli/Interfaces/IProgramArgOptions.d.ts +9 -0
  18. package/Cli/Interfaces/IProgramArgOptions.d.ts.map +1 -0
  19. package/Cli/Interfaces/IProgramArgOptions.js +4 -0
  20. package/Cli/Interfaces/IProgramArgOptions.js.map +1 -0
  21. package/Cli/Interfaces/IProgramArgs.d.ts +27 -0
  22. package/Cli/Interfaces/IProgramArgs.d.ts.map +1 -0
  23. package/Cli/Interfaces/IProgramArgs.js +4 -0
  24. package/Cli/Interfaces/IProgramArgs.js.map +1 -0
  25. package/Cli/Interfaces/IProgramCommand.d.ts +53 -0
  26. package/Cli/Interfaces/IProgramCommand.d.ts.map +1 -0
  27. package/Cli/Interfaces/IProgramCommand.js +4 -0
  28. package/Cli/Interfaces/IProgramCommand.js.map +1 -0
  29. package/Cli/Interfaces/IProgramCommands.d.ts +47 -0
  30. package/Cli/Interfaces/IProgramCommands.d.ts.map +1 -0
  31. package/Cli/Interfaces/IProgramCommands.js +4 -0
  32. package/Cli/Interfaces/IProgramCommands.js.map +1 -0
  33. package/Cli/Interfaces/IProgramConfig.d.ts +10 -0
  34. package/Cli/Interfaces/IProgramConfig.d.ts.map +1 -0
  35. package/Cli/Interfaces/IProgramConfig.js +3 -0
  36. package/Cli/Interfaces/IProgramConfig.js.map +1 -0
  37. package/Cli/Interfaces/IProgramInit.d.ts +14 -0
  38. package/Cli/Interfaces/IProgramInit.d.ts.map +1 -0
  39. package/Cli/Interfaces/IProgramInit.js +3 -0
  40. package/Cli/Interfaces/IProgramInit.js.map +1 -0
  41. package/Cli/Program.d.ts +97 -0
  42. package/Cli/Program.d.ts.map +1 -0
  43. package/Cli/Program.js +217 -0
  44. package/Cli/Program.js.map +1 -0
  45. package/Cli/ProgramArgs.d.ts +39 -0
  46. package/Cli/ProgramArgs.d.ts.map +1 -0
  47. package/Cli/ProgramArgs.js +83 -0
  48. package/Cli/ProgramArgs.js.map +1 -0
  49. package/Cli/ProgramCommandResult.d.ts +13 -0
  50. package/Cli/ProgramCommandResult.d.ts.map +1 -0
  51. package/Cli/ProgramCommandResult.js +3 -0
  52. package/Cli/ProgramCommandResult.js.map +1 -0
  53. package/Cli/ProgramCommands.d.ts +66 -0
  54. package/Cli/ProgramCommands.d.ts.map +1 -0
  55. package/Cli/ProgramCommands.js +173 -0
  56. package/Cli/ProgramCommands.js.map +1 -0
  57. package/Cli/ProgramConfig.d.ts +24 -0
  58. package/Cli/ProgramConfig.d.ts.map +1 -0
  59. package/Cli/ProgramConfig.js +51 -0
  60. package/Cli/ProgramConfig.js.map +1 -0
  61. package/Cli/ProgramDoneFn.d.ts +5 -0
  62. package/Cli/ProgramDoneFn.d.ts.map +1 -0
  63. package/Cli/ProgramDoneFn.js +3 -0
  64. package/Cli/ProgramDoneFn.js.map +1 -0
  65. package/Compiler/TypeScript.d.ts +19 -0
  66. package/Compiler/TypeScript.d.ts.map +1 -0
  67. package/Compiler/TypeScript.js +166 -0
  68. package/Compiler/TypeScript.js.map +1 -0
  69. package/DI/Container.d.ts +73 -0
  70. package/DI/Container.d.ts.map +1 -0
  71. package/DI/Container.js +143 -0
  72. package/DI/Container.js.map +1 -0
  73. package/DI/Inject.d.ts +11 -0
  74. package/DI/Inject.d.ts.map +1 -0
  75. package/DI/Inject.js +18 -0
  76. package/DI/Inject.js.map +1 -0
  77. package/Decorators/EnumerableDecorator.d.ts +6 -0
  78. package/Decorators/EnumerableDecorator.d.ts.map +1 -0
  79. package/Decorators/EnumerableDecorator.js +18 -0
  80. package/Decorators/EnumerableDecorator.js.map +1 -0
  81. package/Events/AsyncEventEmitter.d.ts +8 -0
  82. package/Events/AsyncEventEmitter.d.ts.map +1 -0
  83. package/Events/AsyncEventEmitter.js +37 -0
  84. package/Events/AsyncEventEmitter.js.map +1 -0
  85. package/IO/CustomElementManifest.d.ts +254 -0
  86. package/IO/CustomElementManifest.d.ts.map +1 -0
  87. package/IO/CustomElementManifest.js +56 -0
  88. package/IO/CustomElementManifest.js.map +1 -0
  89. package/IO/Directory.d.ts +78 -0
  90. package/IO/Directory.d.ts.map +1 -0
  91. package/IO/Directory.js +184 -0
  92. package/IO/Directory.js.map +1 -0
  93. package/IO/Encoding.d.ts +2 -0
  94. package/IO/Encoding.d.ts.map +1 -0
  95. package/IO/Encoding.js +3 -0
  96. package/IO/Encoding.js.map +1 -0
  97. package/IO/File.d.ts +148 -0
  98. package/IO/File.d.ts.map +1 -0
  99. package/IO/File.js +314 -0
  100. package/IO/File.js.map +1 -0
  101. package/IO/FileSystemInfo.d.ts +46 -0
  102. package/IO/FileSystemInfo.d.ts.map +1 -0
  103. package/IO/FileSystemInfo.js +129 -0
  104. package/IO/FileSystemInfo.js.map +1 -0
  105. package/IO/FileSystemWatcher.d.ts +49 -0
  106. package/IO/FileSystemWatcher.d.ts.map +1 -0
  107. package/IO/FileSystemWatcher.js +93 -0
  108. package/IO/FileSystemWatcher.js.map +1 -0
  109. package/IO/Glob.d.ts +35 -0
  110. package/IO/Glob.d.ts.map +1 -0
  111. package/IO/Glob.js +152 -0
  112. package/IO/Glob.js.map +1 -0
  113. package/IO/Json.d.ts +84 -0
  114. package/IO/Json.d.ts.map +1 -0
  115. package/IO/Json.js +114 -0
  116. package/IO/Json.js.map +1 -0
  117. package/IO/Path.d.ts +125 -0
  118. package/IO/Path.d.ts.map +1 -0
  119. package/IO/Path.js +283 -0
  120. package/IO/Path.js.map +1 -0
  121. package/IO/PcfControlManifest.d.ts +79 -0
  122. package/IO/PcfControlManifest.d.ts.map +1 -0
  123. package/IO/PcfControlManifest.js +93 -0
  124. package/IO/PcfControlManifest.js.map +1 -0
  125. package/IO/Reader/Interfaces/IFileReader.d.ts +30 -0
  126. package/IO/Reader/Interfaces/IFileReader.d.ts.map +1 -0
  127. package/IO/Reader/Interfaces/IFileReader.js +3 -0
  128. package/IO/Reader/Interfaces/IFileReader.js.map +1 -0
  129. package/IO/Reader/TextFileReader.d.ts +53 -0
  130. package/IO/Reader/TextFileReader.d.ts.map +1 -0
  131. package/IO/Reader/TextFileReader.js +167 -0
  132. package/IO/Reader/TextFileReader.js.map +1 -0
  133. package/IO/Resx.d.ts +49 -0
  134. package/IO/Resx.d.ts.map +1 -0
  135. package/IO/Resx.js +95 -0
  136. package/IO/Resx.js.map +1 -0
  137. package/IO/SymbolikLink.d.ts +6 -0
  138. package/IO/SymbolikLink.d.ts.map +1 -0
  139. package/IO/SymbolikLink.js +10 -0
  140. package/IO/SymbolikLink.js.map +1 -0
  141. package/IO/Template.d.ts +41 -0
  142. package/IO/Template.d.ts.map +1 -0
  143. package/IO/Template.js +71 -0
  144. package/IO/Template.js.map +1 -0
  145. package/IO/TemporaryDirectory.d.ts +28 -0
  146. package/IO/TemporaryDirectory.d.ts.map +1 -0
  147. package/IO/TemporaryDirectory.js +76 -0
  148. package/IO/TemporaryDirectory.js.map +1 -0
  149. package/IO/TemporaryFile.d.ts +28 -0
  150. package/IO/TemporaryFile.d.ts.map +1 -0
  151. package/IO/TemporaryFile.js +77 -0
  152. package/IO/TemporaryFile.js.map +1 -0
  153. package/IO/Writer/Interfaces/IFileWriter.d.ts +31 -0
  154. package/IO/Writer/Interfaces/IFileWriter.d.ts.map +1 -0
  155. package/IO/Writer/Interfaces/IFileWriter.js +4 -0
  156. package/IO/Writer/Interfaces/IFileWriter.js.map +1 -0
  157. package/IO/Writer/TextFileWriter.d.ts +56 -0
  158. package/IO/Writer/TextFileWriter.d.ts.map +1 -0
  159. package/IO/Writer/TextFileWriter.js +129 -0
  160. package/IO/Writer/TextFileWriter.js.map +1 -0
  161. package/IO/vNext/FileCache.d.ts +46 -0
  162. package/IO/vNext/FileCache.d.ts.map +1 -0
  163. package/IO/vNext/FileCache.js +94 -0
  164. package/IO/vNext/FileCache.js.map +1 -0
  165. package/IO/vNext/FileSystem.d.ts +107 -0
  166. package/IO/vNext/FileSystem.d.ts.map +1 -0
  167. package/IO/vNext/FileSystem.js +148 -0
  168. package/IO/vNext/FileSystem.js.map +1 -0
  169. package/IO/vNext/Interfaces/IFileCache.d.ts +56 -0
  170. package/IO/vNext/Interfaces/IFileCache.d.ts.map +1 -0
  171. package/IO/vNext/Interfaces/IFileCache.js +3 -0
  172. package/IO/vNext/Interfaces/IFileCache.js.map +1 -0
  173. package/IO/vNext/Interfaces/IFileSystem.d.ts +102 -0
  174. package/IO/vNext/Interfaces/IFileSystem.d.ts.map +1 -0
  175. package/IO/vNext/Interfaces/IFileSystem.js +4 -0
  176. package/IO/vNext/Interfaces/IFileSystem.js.map +1 -0
  177. package/Index.d.ts +62 -0
  178. package/Index.d.ts.map +1 -0
  179. package/Index.js +132 -0
  180. package/Index.js.map +1 -0
  181. package/Intl/Languages.d.ts +12 -0
  182. package/Intl/Languages.d.ts.map +1 -0
  183. package/Intl/Languages.js +865 -0
  184. package/Intl/Languages.js.map +1 -0
  185. package/LICENSE +21 -0
  186. package/Logging/Appenders/Abstracts/Appender.d.ts +21 -0
  187. package/Logging/Appenders/Abstracts/Appender.d.ts.map +1 -0
  188. package/Logging/Appenders/Abstracts/Appender.js +78 -0
  189. package/Logging/Appenders/Abstracts/Appender.js.map +1 -0
  190. package/Logging/Appenders/Interfaces/IAppender.d.ts +13 -0
  191. package/Logging/Appenders/Interfaces/IAppender.d.ts.map +1 -0
  192. package/Logging/Appenders/Interfaces/IAppender.js +4 -0
  193. package/Logging/Appenders/Interfaces/IAppender.js.map +1 -0
  194. package/Logging/Appenders/Interfaces/IAppenderConfig.d.ts +9 -0
  195. package/Logging/Appenders/Interfaces/IAppenderConfig.d.ts.map +1 -0
  196. package/Logging/Appenders/Interfaces/IAppenderConfig.js +3 -0
  197. package/Logging/Appenders/Interfaces/IAppenderConfig.js.map +1 -0
  198. package/Logging/Appenders/LogLevelAppender.d.ts +29 -0
  199. package/Logging/Appenders/LogLevelAppender.d.ts.map +1 -0
  200. package/Logging/Appenders/LogLevelAppender.js +102 -0
  201. package/Logging/Appenders/LogLevelAppender.js.map +1 -0
  202. package/Logging/Appenders/MessageAppender.d.ts +26 -0
  203. package/Logging/Appenders/MessageAppender.d.ts.map +1 -0
  204. package/Logging/Appenders/MessageAppender.js +91 -0
  205. package/Logging/Appenders/MessageAppender.js.map +1 -0
  206. package/Logging/Appenders/Styles/AppenderTerminalColors.d.ts +20 -0
  207. package/Logging/Appenders/Styles/AppenderTerminalColors.d.ts.map +1 -0
  208. package/Logging/Appenders/Styles/AppenderTerminalColors.js +4 -0
  209. package/Logging/Appenders/Styles/AppenderTerminalColors.js.map +1 -0
  210. package/Logging/Appenders/Styles/LogLevelAppenderStyle.d.ts +5 -0
  211. package/Logging/Appenders/Styles/LogLevelAppenderStyle.d.ts.map +1 -0
  212. package/Logging/Appenders/Styles/LogLevelAppenderStyle.js +3 -0
  213. package/Logging/Appenders/Styles/LogLevelAppenderStyle.js.map +1 -0
  214. package/Logging/Appenders/TagAppender.d.ts +25 -0
  215. package/Logging/Appenders/TagAppender.d.ts.map +1 -0
  216. package/Logging/Appenders/TagAppender.js +49 -0
  217. package/Logging/Appenders/TagAppender.js.map +1 -0
  218. package/Logging/Appenders/TimeStampAppender.d.ts +22 -0
  219. package/Logging/Appenders/TimeStampAppender.d.ts.map +1 -0
  220. package/Logging/Appenders/TimeStampAppender.js +44 -0
  221. package/Logging/Appenders/TimeStampAppender.js.map +1 -0
  222. package/Logging/Interfaces/ILogEntry.d.ts +13 -0
  223. package/Logging/Interfaces/ILogEntry.d.ts.map +1 -0
  224. package/Logging/Interfaces/ILogEntry.js +4 -0
  225. package/Logging/Interfaces/ILogEntry.js.map +1 -0
  226. package/Logging/Interfaces/ILogOptions.d.ts +17 -0
  227. package/Logging/Interfaces/ILogOptions.d.ts.map +1 -0
  228. package/Logging/Interfaces/ILogOptions.js +4 -0
  229. package/Logging/Interfaces/ILogOptions.js.map +1 -0
  230. package/Logging/Interfaces/ILoggerScope.d.ts +7 -0
  231. package/Logging/Interfaces/ILoggerScope.d.ts.map +1 -0
  232. package/Logging/Interfaces/ILoggerScope.js +3 -0
  233. package/Logging/Interfaces/ILoggerScope.js.map +1 -0
  234. package/Logging/Interfaces/ILoggerScopeConfig.d.ts +9 -0
  235. package/Logging/Interfaces/ILoggerScopeConfig.d.ts.map +1 -0
  236. package/Logging/Interfaces/ILoggerScopeConfig.js +4 -0
  237. package/Logging/Interfaces/ILoggerScopeConfig.js.map +1 -0
  238. package/Logging/LogLevel.d.ts +5 -0
  239. package/Logging/LogLevel.d.ts.map +1 -0
  240. package/Logging/LogLevel.js +3 -0
  241. package/Logging/LogLevel.js.map +1 -0
  242. package/Logging/Logger.d.ts +148 -0
  243. package/Logging/Logger.d.ts.map +1 -0
  244. package/Logging/Logger.js +326 -0
  245. package/Logging/Logger.js.map +1 -0
  246. package/Logging/LoggerConfig.d.ts +45 -0
  247. package/Logging/LoggerConfig.d.ts.map +1 -0
  248. package/Logging/LoggerConfig.js +83 -0
  249. package/Logging/LoggerConfig.js.map +1 -0
  250. package/Logging/LoggerScope.d.ts +16 -0
  251. package/Logging/LoggerScope.d.ts.map +1 -0
  252. package/Logging/LoggerScope.js +81 -0
  253. package/Logging/LoggerScope.js.map +1 -0
  254. package/Logging/LoggerSuppressor.d.ts +10 -0
  255. package/Logging/LoggerSuppressor.d.ts.map +1 -0
  256. package/Logging/LoggerSuppressor.js +43 -0
  257. package/Logging/LoggerSuppressor.js.map +1 -0
  258. package/Logging/LoggerUtils.d.ts +47 -0
  259. package/Logging/LoggerUtils.d.ts.map +1 -0
  260. package/Logging/LoggerUtils.js +102 -0
  261. package/Logging/LoggerUtils.js.map +1 -0
  262. package/Logging/vNext/ConsoleLogger.d.ts +56 -0
  263. package/Logging/vNext/ConsoleLogger.d.ts.map +1 -0
  264. package/Logging/vNext/ConsoleLogger.js +76 -0
  265. package/Logging/vNext/ConsoleLogger.js.map +1 -0
  266. package/Logging/vNext/Interfaces/ILogger.d.ts +38 -0
  267. package/Logging/vNext/Interfaces/ILogger.d.ts.map +1 -0
  268. package/Logging/vNext/Interfaces/ILogger.js +3 -0
  269. package/Logging/vNext/Interfaces/ILogger.js.map +1 -0
  270. package/Logging/vNext/LoggerExtensions.d.ts +79 -0
  271. package/Logging/vNext/LoggerExtensions.d.ts.map +1 -0
  272. package/Logging/vNext/LoggerExtensions.js +175 -0
  273. package/Logging/vNext/LoggerExtensions.js.map +1 -0
  274. package/Logging/vNext/Styles/Style.d.ts +9 -0
  275. package/Logging/vNext/Styles/Style.d.ts.map +1 -0
  276. package/Logging/vNext/Styles/Style.js +17 -0
  277. package/Logging/vNext/Styles/Style.js.map +1 -0
  278. package/Logging/vNext/Styles/StyleDirectives.d.ts +61 -0
  279. package/Logging/vNext/Styles/StyleDirectives.d.ts.map +1 -0
  280. package/Logging/vNext/Styles/StyleDirectives.js +118 -0
  281. package/Logging/vNext/Styles/StyleDirectives.js.map +1 -0
  282. package/System/Args.d.ts +20 -0
  283. package/System/Args.d.ts.map +1 -0
  284. package/System/Args.js +45 -0
  285. package/System/Args.js.map +1 -0
  286. package/System/Array.d.ts +41 -0
  287. package/System/Array.d.ts.map +1 -0
  288. package/System/Array.js +91 -0
  289. package/System/Array.js.map +1 -0
  290. package/System/Assign.d.ts +12 -0
  291. package/System/Assign.d.ts.map +1 -0
  292. package/System/Assign.js +40 -0
  293. package/System/Assign.js.map +1 -0
  294. package/System/Boolean.d.ts +20 -0
  295. package/System/Boolean.d.ts.map +1 -0
  296. package/System/Boolean.js +52 -0
  297. package/System/Boolean.js.map +1 -0
  298. package/System/Error.d.ts +9 -0
  299. package/System/Error.d.ts.map +1 -0
  300. package/System/Error.js +20 -0
  301. package/System/Error.js.map +1 -0
  302. package/System/Errors.d.ts +7 -0
  303. package/System/Errors.d.ts.map +1 -0
  304. package/System/Errors.js +18 -0
  305. package/System/Errors.js.map +1 -0
  306. package/System/Formatter.d.ts +4 -0
  307. package/System/Formatter.d.ts.map +1 -0
  308. package/System/Formatter.js +17 -0
  309. package/System/Formatter.js.map +1 -0
  310. package/System/Guard.d.ts +5 -0
  311. package/System/Guard.d.ts.map +1 -0
  312. package/System/Guard.js +29 -0
  313. package/System/Guard.js.map +1 -0
  314. package/System/Interfaces/IType.d.ts +7 -0
  315. package/System/Interfaces/IType.d.ts.map +1 -0
  316. package/System/Interfaces/IType.js +3 -0
  317. package/System/Interfaces/IType.js.map +1 -0
  318. package/System/Interfaces/IUnknown.d.ts +7 -0
  319. package/System/Interfaces/IUnknown.d.ts.map +1 -0
  320. package/System/Interfaces/IUnknown.js +3 -0
  321. package/System/Interfaces/IUnknown.js.map +1 -0
  322. package/System/List.d.ts +27 -0
  323. package/System/List.d.ts.map +1 -0
  324. package/System/List.js +84 -0
  325. package/System/List.js.map +1 -0
  326. package/System/Number.d.ts +10 -0
  327. package/System/Number.d.ts.map +1 -0
  328. package/System/Number.js +28 -0
  329. package/System/Number.js.map +1 -0
  330. package/System/Process.d.ts +30 -0
  331. package/System/Process.d.ts.map +1 -0
  332. package/System/Process.js +167 -0
  333. package/System/Process.js.map +1 -0
  334. package/System/Require.d.ts +8 -0
  335. package/System/Require.d.ts.map +1 -0
  336. package/System/Require.js +20 -0
  337. package/System/Require.js.map +1 -0
  338. package/System/Stopwatch.d.ts +19 -0
  339. package/System/Stopwatch.d.ts.map +1 -0
  340. package/System/Stopwatch.js +73 -0
  341. package/System/Stopwatch.js.map +1 -0
  342. package/System/String.d.ts +19 -0
  343. package/System/String.d.ts.map +1 -0
  344. package/System/String.js +177 -0
  345. package/System/String.js.map +1 -0
  346. package/System/Time.d.ts +7 -0
  347. package/System/Time.d.ts.map +1 -0
  348. package/System/Time.js +16 -0
  349. package/System/Time.js.map +1 -0
  350. package/System/Version.d.ts +20 -0
  351. package/System/Version.d.ts.map +1 -0
  352. package/System/Version.js +135 -0
  353. package/System/Version.js.map +1 -0
  354. package/Terminal/Terminal.d.ts +7 -0
  355. package/Terminal/Terminal.d.ts.map +1 -0
  356. package/Terminal/Terminal.js +21 -0
  357. package/Terminal/Terminal.js.map +1 -0
  358. package/Terminal/TerminalColorType.d.ts +2 -0
  359. package/Terminal/TerminalColorType.d.ts.map +1 -0
  360. package/Terminal/TerminalColorType.js +3 -0
  361. package/Terminal/TerminalColorType.js.map +1 -0
  362. package/Terminal/TerminalColors.d.ts +38 -0
  363. package/Terminal/TerminalColors.d.ts.map +1 -0
  364. package/Terminal/TerminalColors.js +151 -0
  365. package/Terminal/TerminalColors.js.map +1 -0
  366. package/Terminal/TerminalSymbolType.d.ts +2 -0
  367. package/Terminal/TerminalSymbolType.d.ts.map +1 -0
  368. package/Terminal/TerminalSymbolType.js +3 -0
  369. package/Terminal/TerminalSymbolType.js.map +1 -0
  370. package/Terminal/TerminalSymbols.d.ts +7 -0
  371. package/Terminal/TerminalSymbols.d.ts.map +1 -0
  372. package/Terminal/TerminalSymbols.js +30 -0
  373. package/Terminal/TerminalSymbols.js.map +1 -0
  374. package/package.json +26 -0
@@ -0,0 +1,143 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Container = void 0;
4
+ require("reflect-metadata");
5
+ /**
6
+ * Represents a dependency injection container.
7
+ *
8
+ * @public
9
+ */
10
+ class Container {
11
+ // #region Fields
12
+ static _instance;
13
+ _registry;
14
+ // #endregion
15
+ // #region Ctor
16
+ /**
17
+ * Constructs a new instance of the `Container` class.
18
+ *
19
+ * @protected
20
+ */
21
+ constructor() {
22
+ this._registry = new Map();
23
+ }
24
+ // #endregion
25
+ // #region Properties
26
+ /**
27
+ * Gets the singleton instance of the `Container` class.
28
+ *
29
+ * @public
30
+ * @static
31
+ * @readonly
32
+ */
33
+ static get instance() {
34
+ // eslint-disable-next-line @typescript-eslint/no-unnecessary-condition
35
+ if (!Container._instance) {
36
+ Container._instance = new Container();
37
+ }
38
+ return Container._instance;
39
+ }
40
+ // #endregion
41
+ // #region Methods
42
+ /**
43
+ * Registers a class for the specified token.
44
+ *
45
+ * @public
46
+ * @param token - The token to register. Can be a `Function` or `string`.
47
+ * @param clazz - The class to associate with the token. If not provided, the token itself will be used as the class.
48
+ */
49
+ provide(token, clazz) {
50
+ const actualClass = clazz ?? token;
51
+ if (typeof actualClass === 'function') {
52
+ if (!actualClass.prototype.constructor.length) {
53
+ throw new Error(`${actualClass.name} is not instantiable.`);
54
+ }
55
+ }
56
+ this._registry.set(token, {
57
+ token: actualClass
58
+ });
59
+ return this;
60
+ }
61
+ /**
62
+ * Registers a factory function for the specified token.
63
+ *
64
+ * @public
65
+ * @param token - The token to register. Can be a `Function` or `string`.
66
+ * @param factory - The factory function to produce the instance.
67
+ */
68
+ provideFactory(token, factory) {
69
+ this._registry.set(token, {
70
+ token,
71
+ factory
72
+ });
73
+ return this;
74
+ }
75
+ /**
76
+ * Registers a static value or object for the specified token.
77
+ *
78
+ * @public
79
+ * @param token - The token to register. Can be a `Function` or `string`.
80
+ * @param value - The static value or object to register.
81
+ */
82
+ provideValue(token, value) {
83
+ this._registry.set(token, {
84
+ token,
85
+ value
86
+ });
87
+ return this;
88
+ }
89
+ /**
90
+ * Resolves an instance for the specified token.
91
+ *
92
+ * @public
93
+ * @param token - The token to resolve. Can be a `Function` or `string`.
94
+ * @returns The resolved instance.
95
+ * @throws Error if no instance is found for the token.
96
+ */
97
+ get(token) {
98
+ const item = this._registry.get(token);
99
+ if (!item) {
100
+ throw new Error(`Nothing found for token '${typeof token === 'string' ? token : token.name}'`);
101
+ }
102
+ if (!item.instance) {
103
+ if (item.value !== undefined) {
104
+ // Use the registered static value
105
+ return item.value;
106
+ }
107
+ else if (item.factory) {
108
+ // Use the factory function to create the instance
109
+ item.instance = item.factory(this);
110
+ }
111
+ else if (typeof item.token === 'function') {
112
+ // Automatically create an instance using the constructor
113
+ const params = this.getInjectedParams(item.token);
114
+ const newInstance = Reflect.construct(item.token, params);
115
+ item.instance = newInstance;
116
+ }
117
+ else {
118
+ throw new Error(`Token '${String(token)}' is a string and does not support automatic instantiation.`);
119
+ }
120
+ }
121
+ if (item.instance) {
122
+ return item.instance;
123
+ }
124
+ throw new Error(`Instance for token '${typeof token === 'string' ? token : token.name}' is not of type ${String(token)}`);
125
+ }
126
+ /**
127
+ * Reads type information from metadata and resolves dependencies.
128
+ *
129
+ * @private
130
+ * @param clazz - The class to resolve constructor parameters for.
131
+ */
132
+ getInjectedParams(clazz) {
133
+ const argTypes = Reflect.getMetadata('design:paramtypes', clazz) || [];
134
+ return argTypes.map((token) => {
135
+ if (typeof token === 'function' || typeof token === 'string') {
136
+ return this.get(token);
137
+ }
138
+ throw new Error(`Invalid token type: ${typeof token}`);
139
+ });
140
+ }
141
+ }
142
+ exports.Container = Container;
143
+ //# sourceMappingURL=Container.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Container.js","sourceRoot":"","sources":["../../src/DI/Container.ts"],"names":[],"mappings":"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"}
package/DI/Inject.d.ts ADDED
@@ -0,0 +1,11 @@
1
+ import { type Token } from './Container';
2
+ /**
3
+ * Injects a dependency from the container.
4
+ *
5
+ * @param token - The token of the dependency to inject.
6
+ * @returns The instance of the dependency.
7
+ *
8
+ * @public
9
+ */
10
+ export declare function inject<T = any>(token: Token<T>): T;
11
+ //# sourceMappingURL=Inject.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Inject.d.ts","sourceRoot":"","sources":["../../src/DI/Inject.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,KAAK,EAAa,MAAM,aAAa,CAAC;AAIpD;;;;;;;GAOG;AACH,wBAAgB,MAAM,CAAC,CAAC,GAAG,GAAG,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,CAElD"}
package/DI/Inject.js ADDED
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ // #region Imports
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ exports.inject = inject;
5
+ const Container_1 = require("./Container");
6
+ // #endregion
7
+ /**
8
+ * Injects a dependency from the container.
9
+ *
10
+ * @param token - The token of the dependency to inject.
11
+ * @returns The instance of the dependency.
12
+ *
13
+ * @public
14
+ */
15
+ function inject(token) {
16
+ return Container_1.Container.instance.get(token);
17
+ }
18
+ //# sourceMappingURL=Inject.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Inject.js","sourceRoot":"","sources":["../../src/DI/Inject.ts"],"names":[],"mappings":";AAAA,kBAAkB;;AAclB,wBAEC;AAdD,2CAAoD;AAEpD,aAAa;AAEb;;;;;;;GAOG;AACH,SAAgB,MAAM,CAAU,KAAe;IAC3C,OAAO,qBAAS,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;AACzC,CAAC"}
@@ -0,0 +1,6 @@
1
+ /**
2
+ * @enumerable decorator that sets the enumerable property of a class field to false.
3
+ * @param value true|false
4
+ */
5
+ export declare function Enumerable(value: boolean): any;
6
+ //# sourceMappingURL=EnumerableDecorator.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EnumerableDecorator.d.ts","sourceRoot":"","sources":["../../src/Decorators/EnumerableDecorator.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,wBAAgB,UAAU,CAAC,KAAK,EAAE,OAAO,GAAG,GAAG,CAS9C"}
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Enumerable = Enumerable;
4
+ /**
5
+ * @enumerable decorator that sets the enumerable property of a class field to false.
6
+ * @param value true|false
7
+ */
8
+ function Enumerable(value) {
9
+ return function (target, propertyKey) {
10
+ const descriptor = Object.getOwnPropertyDescriptor(target, propertyKey) ?? {};
11
+ if (descriptor.enumerable !== value) {
12
+ descriptor.enumerable = value;
13
+ descriptor.writable = true;
14
+ Object.defineProperty(target, propertyKey, descriptor);
15
+ }
16
+ };
17
+ }
18
+ //# sourceMappingURL=EnumerableDecorator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EnumerableDecorator.js","sourceRoot":"","sources":["../../src/Decorators/EnumerableDecorator.ts"],"names":[],"mappings":";;AAIA,gCASC;AAbD;;;GAGG;AACH,SAAgB,UAAU,CAAC,KAAc;IACrC,OAAO,UAAS,MAAW,EAAE,WAAmB;QAC5C,MAAM,UAAU,GAAG,MAAM,CAAC,wBAAwB,CAAC,MAAM,EAAE,WAAW,CAAC,IAAI,EAAE,CAAC;QAC9E,IAAI,UAAU,CAAC,UAAU,KAAK,KAAK,EAAE,CAAC;YAClC,UAAU,CAAC,UAAU,GAAG,KAAK,CAAC;YAC9B,UAAU,CAAC,QAAQ,GAAG,IAAI,CAAC;YAC3B,MAAM,CAAC,cAAc,CAAC,MAAM,EAAE,WAAW,EAAE,UAAU,CAAC,CAAC;QAC3D,CAAC;IACL,CAAC,CAAC;AACN,CAAC"}
@@ -0,0 +1,8 @@
1
+ import { EventEmitter } from 'events';
2
+ /**
3
+ * @public
4
+ */
5
+ export declare class AsyncEventEmitter extends EventEmitter {
6
+ emitAsync(event: string | symbol, ...args: Array<any>): Promise<boolean>;
7
+ }
8
+ //# sourceMappingURL=AsyncEventEmitter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AsyncEventEmitter.d.ts","sourceRoot":"","sources":["../../src/Events/AsyncEventEmitter.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AAMtC;;GAEG;AACH,qBAAa,iBAAkB,SAAQ,YAAY;IAIlC,SAAS,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,IAAI,EAAE,KAAK,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC;CA2BxF"}
@@ -0,0 +1,37 @@
1
+ "use strict";
2
+ /* eslint-disable @typescript-eslint/no-explicit-any */
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ exports.AsyncEventEmitter = void 0;
5
+ // #region Imports
6
+ const events_1 = require("events");
7
+ const es_toolkit_1 = require("es-toolkit");
8
+ const compat_1 = require("es-toolkit/compat");
9
+ // #endregion
10
+ /**
11
+ * @public
12
+ */
13
+ class AsyncEventEmitter extends events_1.EventEmitter {
14
+ // #region Methods
15
+ async emitAsync(event, ...args) {
16
+ const evts = this._events;
17
+ const handler = (0, compat_1.get)(evts, event);
18
+ if ((0, compat_1.isEmpty)(handler) && !(0, es_toolkit_1.isFunction)(handler)) {
19
+ return false;
20
+ }
21
+ const promises = [];
22
+ if (typeof handler === 'function') {
23
+ promises.push(Reflect.apply(handler, this, args));
24
+ }
25
+ else {
26
+ const len = handler.length;
27
+ const listeners = (0, es_toolkit_1.clone)(handler);
28
+ for (let i = 0; i < len; i += 1) {
29
+ promises.push(Reflect.apply(listeners[i], this, args));
30
+ }
31
+ }
32
+ await Promise.all(promises);
33
+ return true;
34
+ }
35
+ }
36
+ exports.AsyncEventEmitter = AsyncEventEmitter;
37
+ //# sourceMappingURL=AsyncEventEmitter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AsyncEventEmitter.js","sourceRoot":"","sources":["../../src/Events/AsyncEventEmitter.ts"],"names":[],"mappings":";AAAA,uDAAuD;;;AAEvD,kBAAkB;AAElB,mCAAsC;AACtC,2CAA+C;AAC/C,8CAAiD;AAEjD,aAAa;AAEb;;GAEG;AACH,MAAa,iBAAkB,SAAQ,qBAAY;IAE/C,kBAAkB;IAEX,KAAK,CAAC,SAAS,CAAC,KAAsB,EAAE,GAAG,IAAgB;QAC9D,MAAM,IAAI,GAAI,IAAY,CAAC,OAAO,CAAC;QACnC,MAAM,OAAO,GAAG,IAAA,YAAG,EAAC,IAAI,EAAE,KAAK,CAAe,CAAC;QAE/C,IAAI,IAAA,gBAAO,EAAC,OAAO,CAAC,IAAI,CAAC,IAAA,uBAAU,EAAC,OAAO,CAAC,EAAE,CAAC;YAC3C,OAAO,KAAK,CAAC;QACjB,CAAC;QAED,MAAM,QAAQ,GAAG,EAAE,CAAC;QAEpB,IAAI,OAAO,OAAO,KAAK,UAAU,EAAE,CAAC;YAChC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC;QACtD,CAAC;aAAM,CAAC;YACJ,MAAM,GAAG,GAAG,OAAO,CAAC,MAAM,CAAC;YAC3B,MAAM,SAAS,GAAG,IAAA,kBAAK,EAAC,OAAO,CAAC,CAAC;YACjC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;gBAC9B,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC;YAC3D,CAAC;QACL,CAAC;QAED,MAAM,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QAE5B,OAAO,IAAI,CAAC;IAChB,CAAC;CAIJ;AA/BD,8CA+BC"}
@@ -0,0 +1,254 @@
1
+ export declare namespace CustomElementManifest {
2
+ interface PackageDoc {
3
+ version: string;
4
+ /**
5
+ * An array of the modules this package contains.
6
+ */
7
+ modules: Array<ModuleDoc>;
8
+ }
9
+ interface ModuleDoc {
10
+ path: string;
11
+ /**
12
+ * A markdown summary suitable for display in a listing.
13
+ */
14
+ summary?: string;
15
+ /**
16
+ * A markdown description of the module.
17
+ */
18
+ description?: string;
19
+ exports?: Array<ExportDoc>;
20
+ }
21
+ type ExportDoc = ClassDoc | FunctionDoc | VariableDoc | CustomElementDefinitionDoc;
22
+ /**
23
+ * A reference to an export of a module.
24
+ *
25
+ * All references are required to be publically accessible, so the canonical
26
+ * representation of a refernce it the export it's available from.
27
+ */
28
+ interface Reference {
29
+ name: string;
30
+ package?: string;
31
+ module?: string;
32
+ }
33
+ interface CustomElementDoc extends ClassDoc {
34
+ tagName: string;
35
+ /**
36
+ * The attributes that this element is known to understand.
37
+ */
38
+ attributes?: Array<AttributeDoc>;
39
+ /** The events that this element fires. */
40
+ events?: Array<EventDoc>;
41
+ /**
42
+ * The shadow dom content slots that this element accepts.
43
+ */
44
+ slots?: Array<SlotDoc>;
45
+ cssProperties?: Array<CSSPropertyDoc>;
46
+ cssParts?: Array<CSSPartDoc>;
47
+ demos?: Array<Demo>;
48
+ }
49
+ interface CustomElementDefinitionDoc {
50
+ kind: 'definition';
51
+ name: string;
52
+ declaration: Reference;
53
+ }
54
+ interface AttributeDoc {
55
+ name: string;
56
+ /**
57
+ * A markdown description for the attribute.
58
+ */
59
+ description?: string;
60
+ /**
61
+ * The type that the attribute will be serialized/deserialized as.
62
+ */
63
+ type?: string;
64
+ /**
65
+ * The default value of the attribute, if any.
66
+ *
67
+ * As attributes are always strings, this is the actual value, not a human
68
+ * readable description.
69
+ */
70
+ defaultValue?: string;
71
+ /**
72
+ * The name of the field this attribute is associated with, if any.
73
+ */
74
+ fieldName?: string;
75
+ /**
76
+ * A reference to the class or mixin that declared this property.
77
+ */
78
+ inheritedFrom?: Reference;
79
+ }
80
+ interface EventDoc {
81
+ name: string;
82
+ /**
83
+ * A markdown description of the event.
84
+ */
85
+ description?: string;
86
+ /**
87
+ * The type of the event object that's fired.
88
+ *
89
+ * If the event type is built-in, this is a string, e.g. `Event`,
90
+ * `CustomEvent`, `KeyboardEvent`. If the event type is an event class defined
91
+ * in a module, the reference to it.
92
+ */
93
+ type?: Reference | string;
94
+ /**
95
+ * If the event is a CustomEvent, the type of `detail` field.
96
+ */
97
+ detailType?: string;
98
+ /**
99
+ * A reference to the class or mixin that declared this property.
100
+ */
101
+ inheritedFrom?: Reference;
102
+ }
103
+ interface SlotDoc {
104
+ /**
105
+ * The slot name, or the empty string for an unnamed slot.
106
+ */
107
+ name: string;
108
+ /**
109
+ * A markdown description of the slot.
110
+ */
111
+ description?: string;
112
+ /**
113
+ * A reference to the class or mixin that declared this property.
114
+ */
115
+ inheritedFrom?: Reference;
116
+ }
117
+ interface CSSPropertyDoc {
118
+ name: string;
119
+ description?: string;
120
+ type?: string;
121
+ default?: string;
122
+ /**
123
+ * A reference to the class or mixin that declared this property.
124
+ */
125
+ inheritedFrom?: Reference;
126
+ }
127
+ interface CSSPartDoc {
128
+ name: string;
129
+ description?: string;
130
+ /**
131
+ * A reference to the class or mixin that declared this property.
132
+ */
133
+ inheritedFrom?: Reference;
134
+ }
135
+ interface ClassDoc {
136
+ kind: 'class';
137
+ /**
138
+ * The class name, or `undefined` if the class is anonymous.
139
+ */
140
+ name?: string;
141
+ /**
142
+ * A markdown summary suitable for display in a listing.
143
+ * TODO: restrictions on markdown/markup. ie, no headings, only inline
144
+ * formatting?
145
+ */
146
+ summary?: string;
147
+ /**
148
+ * A markdown description of the class.
149
+ */
150
+ description?: string;
151
+ superclass?: Reference;
152
+ mixins?: Array<Reference>;
153
+ members?: Array<ClassMember>;
154
+ }
155
+ type ClassMember = FieldDoc | MethodDoc;
156
+ interface FieldDoc {
157
+ kind: 'field';
158
+ name: string;
159
+ static?: boolean;
160
+ /**
161
+ * A markdown summary suitable for display in a listing.
162
+ * TODO: restrictions on markdown/markup. ie, no headings, only inline
163
+ * formatting?
164
+ */
165
+ summary?: string;
166
+ /**
167
+ * A markdown description of the field.
168
+ */
169
+ description?: string;
170
+ default?: string;
171
+ privacy?: Privacy;
172
+ type?: string;
173
+ /**
174
+ * A reference to the class or mixin that declared this property.
175
+ */
176
+ inheritedFrom?: Reference;
177
+ }
178
+ interface MethodDoc extends FunctionLike {
179
+ kind: 'method';
180
+ static?: boolean;
181
+ /**
182
+ * A reference to the class or mixin that declared this property.
183
+ */
184
+ inheritedFrom?: Reference;
185
+ }
186
+ /**
187
+ * TODO: tighter definition of mixin:
188
+ * - Should it only accept a single argument?
189
+ * - Should it not extend ClassDoc so it doesn't has a superclass?
190
+ * - What's TypeScript's exact definition?
191
+ */
192
+ interface MixinDoc extends ClassDoc {
193
+ }
194
+ interface VariableDoc {
195
+ kind: 'variable';
196
+ name: string;
197
+ /**
198
+ * A markdown summary suitable for display in a listing.
199
+ */
200
+ summary?: string;
201
+ /**
202
+ * A markdown description of the class.
203
+ */
204
+ description?: string;
205
+ type?: string;
206
+ }
207
+ interface FunctionDoc extends FunctionLike {
208
+ kind: 'function';
209
+ }
210
+ interface Parameter {
211
+ name: string;
212
+ type?: string;
213
+ description?: string;
214
+ }
215
+ interface FunctionLike {
216
+ name: string;
217
+ /**
218
+ * A markdown summary suitable for display in a listing.
219
+ */
220
+ summary?: string;
221
+ /**
222
+ * A markdown description of the class.
223
+ */
224
+ description?: string;
225
+ parameters?: Array<Parameter>;
226
+ return?: {
227
+ type?: string;
228
+ description?: string;
229
+ };
230
+ privacy?: Privacy;
231
+ type?: string;
232
+ }
233
+ type Privacy = 'public' | 'private' | 'protected';
234
+ interface Demo {
235
+ /**
236
+ * A markdown description of the demo.
237
+ */
238
+ description?: string;
239
+ /**
240
+ * Relative URL of the demo if it's published with the package. Absolute URL
241
+ * if it's hosted.
242
+ */
243
+ url: string;
244
+ }
245
+ function readProperties(pkg: PackageDoc): Array<FieldDoc>;
246
+ function readMethods(pkg: PackageDoc): Array<MethodDoc>;
247
+ function readEvents(pkg: PackageDoc): Array<EventDoc>;
248
+ function readSlots(pkg: PackageDoc): Array<SlotDoc>;
249
+ function readAttributes(pkg: PackageDoc): Array<AttributeDoc>;
250
+ function readCSSProperties(pkg: PackageDoc): Array<CSSPropertyDoc>;
251
+ function readCSSParts(pkg: PackageDoc): Array<CSSPartDoc>;
252
+ function readDefinition(pkg: PackageDoc): CustomElementDefinitionDoc;
253
+ }
254
+ //# sourceMappingURL=CustomElementManifest.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CustomElementManifest.d.ts","sourceRoot":"","sources":["../../src/IO/CustomElementManifest.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,56 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.CustomElementManifest = void 0;
4
+ var CustomElementManifest;
5
+ (function (CustomElementManifest) {
6
+ function readProperties(pkg) {
7
+ const doc = pkg.modules.flatMap((m) => m.exports?.filter((d) => d.kind === 'class') ?? [])[0];
8
+ let properties = doc.members?.filter((m) => m.kind === 'field' && m.privacy === 'public') ?? [];
9
+ // Diry hack to remove properties that are also events
10
+ properties = properties.filter((p) => !doc.events?.some((e) => e.name === p.name));
11
+ return properties;
12
+ }
13
+ CustomElementManifest.readProperties = readProperties;
14
+ function readMethods(pkg) {
15
+ const doc = pkg.modules.flatMap((m) => m.exports?.filter((d) => d.kind === 'class') ?? [])[0];
16
+ const methods = doc.members?.filter((m) => m.kind === 'method' && m.privacy === 'public') ?? [];
17
+ return methods;
18
+ }
19
+ CustomElementManifest.readMethods = readMethods;
20
+ function readEvents(pkg) {
21
+ const doc = pkg.modules.flatMap((m) => m.exports?.filter((d) => d.kind === 'class') ?? [])[0];
22
+ const events = doc.events ?? [];
23
+ return events;
24
+ }
25
+ CustomElementManifest.readEvents = readEvents;
26
+ function readSlots(pkg) {
27
+ const doc = pkg.modules.flatMap((m) => m.exports?.filter((d) => d.kind === 'class') ?? [])[0];
28
+ const slots = doc.slots ?? [];
29
+ return slots;
30
+ }
31
+ CustomElementManifest.readSlots = readSlots;
32
+ function readAttributes(pkg) {
33
+ const doc = pkg.modules.flatMap((m) => m.exports?.filter((d) => d.kind === 'class') ?? [])[0];
34
+ const attributes = doc.attributes ?? [];
35
+ return attributes;
36
+ }
37
+ CustomElementManifest.readAttributes = readAttributes;
38
+ function readCSSProperties(pkg) {
39
+ const doc = pkg.modules.flatMap((m) => m.exports?.filter((d) => d.kind === 'class') ?? [])[0];
40
+ const cssProperties = doc.cssProperties ?? [];
41
+ return cssProperties;
42
+ }
43
+ CustomElementManifest.readCSSProperties = readCSSProperties;
44
+ function readCSSParts(pkg) {
45
+ const doc = pkg.modules.flatMap((m) => m.exports?.filter((d) => d.kind === 'class') ?? [])[0];
46
+ const cssParts = doc.cssParts ?? [];
47
+ return cssParts;
48
+ }
49
+ CustomElementManifest.readCSSParts = readCSSParts;
50
+ function readDefinition(pkg) {
51
+ const doc = pkg.modules.flatMap((m) => m.exports?.filter((d) => d.kind === 'definition') ?? [])[0];
52
+ return doc;
53
+ }
54
+ CustomElementManifest.readDefinition = readDefinition;
55
+ })(CustomElementManifest || (exports.CustomElementManifest = CustomElementManifest = {}));
56
+ //# sourceMappingURL=CustomElementManifest.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CustomElementManifest.js","sourceRoot":"","sources":["../../src/IO/CustomElementManifest.ts"],"names":[],"mappings":"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"}