@microwiseai/snapshot 0.3.6 → 0.3.27

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 (312) hide show
  1. package/dist/commands/install.d.ts +13 -0
  2. package/dist/commands/install.d.ts.map +1 -1
  3. package/dist/commands/install.js +526 -49
  4. package/dist/commands/install.js.map +1 -1
  5. package/dist/commands/license.d.ts +21 -0
  6. package/dist/commands/license.d.ts.map +1 -0
  7. package/dist/commands/license.js +120 -0
  8. package/dist/commands/license.js.map +1 -0
  9. package/dist/index.js +46 -6
  10. package/dist/index.js.map +1 -1
  11. package/dist/lib/config.d.ts +32 -0
  12. package/dist/lib/config.d.ts.map +1 -1
  13. package/dist/lib/config.js +89 -0
  14. package/dist/lib/config.js.map +1 -1
  15. package/dist/lib/gitlab.d.ts +26 -20
  16. package/dist/lib/gitlab.d.ts.map +1 -1
  17. package/dist/lib/gitlab.js +100 -153
  18. package/dist/lib/gitlab.js.map +1 -1
  19. package/dist/lib/package-resolver.d.ts +48 -0
  20. package/dist/lib/package-resolver.d.ts.map +1 -0
  21. package/dist/lib/package-resolver.js +178 -0
  22. package/dist/lib/package-resolver.js.map +1 -0
  23. package/dist/lib/skit-adapter.d.ts +56 -0
  24. package/dist/lib/skit-adapter.d.ts.map +1 -0
  25. package/dist/lib/skit-adapter.js +166 -0
  26. package/dist/lib/skit-adapter.js.map +1 -0
  27. package/dist/lib/transitive-resolver.d.ts +86 -0
  28. package/dist/lib/transitive-resolver.d.ts.map +1 -0
  29. package/dist/lib/transitive-resolver.js +431 -0
  30. package/dist/lib/transitive-resolver.js.map +1 -0
  31. package/dist/lib/types.d.ts +6 -0
  32. package/dist/lib/types.d.ts.map +1 -1
  33. package/dist/lib.d.ts +59 -0
  34. package/dist/lib.d.ts.map +1 -0
  35. package/dist/lib.js +134 -0
  36. package/dist/lib.js.map +1 -0
  37. package/dist/tools/snapshot-to-license.d.ts +13 -0
  38. package/dist/tools/snapshot-to-license.d.ts.map +1 -0
  39. package/dist/tools/snapshot-to-license.js +105 -0
  40. package/dist/tools/snapshot-to-license.js.map +1 -0
  41. package/node_modules/@microwiseai/cache/README.md +143 -0
  42. package/node_modules/@microwiseai/cache/dist/file.d.ts +97 -0
  43. package/node_modules/@microwiseai/cache/dist/file.d.ts.map +1 -0
  44. package/node_modules/@microwiseai/cache/dist/file.js +256 -0
  45. package/node_modules/@microwiseai/cache/dist/file.js.map +1 -0
  46. package/node_modules/@microwiseai/cache/dist/index.d.ts +10 -0
  47. package/node_modules/@microwiseai/cache/dist/index.d.ts.map +1 -0
  48. package/node_modules/@microwiseai/cache/dist/index.js +11 -0
  49. package/node_modules/@microwiseai/cache/dist/index.js.map +1 -0
  50. package/node_modules/@microwiseai/cache/dist/memory.d.ts +69 -0
  51. package/node_modules/@microwiseai/cache/dist/memory.d.ts.map +1 -0
  52. package/node_modules/@microwiseai/cache/dist/memory.js +152 -0
  53. package/node_modules/@microwiseai/cache/dist/memory.js.map +1 -0
  54. package/node_modules/@microwiseai/cache/dist/types.d.ts +76 -0
  55. package/node_modules/@microwiseai/cache/dist/types.d.ts.map +1 -0
  56. package/node_modules/@microwiseai/cache/dist/types.js +5 -0
  57. package/node_modules/@microwiseai/cache/dist/types.js.map +1 -0
  58. package/node_modules/@microwiseai/cache/package.json +40 -0
  59. package/node_modules/@microwiseai/import-telemetry/dist/__tests__/detector.test.d.ts +7 -0
  60. package/node_modules/@microwiseai/import-telemetry/dist/__tests__/detector.test.d.ts.map +1 -0
  61. package/node_modules/@microwiseai/import-telemetry/dist/__tests__/detector.test.js +139 -0
  62. package/node_modules/@microwiseai/import-telemetry/dist/__tests__/detector.test.js.map +1 -0
  63. package/node_modules/@microwiseai/import-telemetry/dist/__tests__/reporter.test.d.ts +8 -0
  64. package/node_modules/@microwiseai/import-telemetry/dist/__tests__/reporter.test.d.ts.map +1 -0
  65. package/node_modules/@microwiseai/import-telemetry/dist/__tests__/reporter.test.js +195 -0
  66. package/node_modules/@microwiseai/import-telemetry/dist/__tests__/reporter.test.js.map +1 -0
  67. package/node_modules/@microwiseai/import-telemetry/dist/__tests__/types.test.d.ts +8 -0
  68. package/node_modules/@microwiseai/import-telemetry/dist/__tests__/types.test.d.ts.map +1 -0
  69. package/node_modules/@microwiseai/import-telemetry/dist/__tests__/types.test.js +97 -0
  70. package/node_modules/@microwiseai/import-telemetry/dist/__tests__/types.test.js.map +1 -0
  71. package/node_modules/@microwiseai/import-telemetry/dist/detector.d.ts +16 -0
  72. package/node_modules/@microwiseai/import-telemetry/dist/detector.d.ts.map +1 -0
  73. package/node_modules/@microwiseai/import-telemetry/dist/detector.js +103 -0
  74. package/node_modules/@microwiseai/import-telemetry/dist/detector.js.map +1 -0
  75. package/node_modules/@microwiseai/import-telemetry/dist/index.d.ts +48 -0
  76. package/node_modules/@microwiseai/import-telemetry/dist/index.d.ts.map +1 -0
  77. package/node_modules/@microwiseai/import-telemetry/dist/index.js +56 -0
  78. package/node_modules/@microwiseai/import-telemetry/dist/index.js.map +1 -0
  79. package/node_modules/@microwiseai/import-telemetry/dist/reporter.d.ts +16 -0
  80. package/node_modules/@microwiseai/import-telemetry/dist/reporter.d.ts.map +1 -0
  81. package/node_modules/@microwiseai/import-telemetry/dist/reporter.js +147 -0
  82. package/node_modules/@microwiseai/import-telemetry/dist/reporter.js.map +1 -0
  83. package/node_modules/@microwiseai/import-telemetry/dist/types.d.ts +75 -0
  84. package/node_modules/@microwiseai/import-telemetry/dist/types.d.ts.map +1 -0
  85. package/node_modules/@microwiseai/import-telemetry/dist/types.js +23 -0
  86. package/node_modules/@microwiseai/import-telemetry/dist/types.js.map +1 -0
  87. package/node_modules/@microwiseai/import-telemetry/package.json +40 -0
  88. package/node_modules/@microwiseai/license/README.md +157 -0
  89. package/node_modules/@microwiseai/license/dist/api/client.d.ts +37 -0
  90. package/node_modules/@microwiseai/license/dist/api/client.d.ts.map +1 -0
  91. package/node_modules/@microwiseai/license/dist/api/client.js +95 -0
  92. package/node_modules/@microwiseai/license/dist/api/client.js.map +1 -0
  93. package/node_modules/@microwiseai/license/dist/api/endpoints.d.ts +25 -0
  94. package/node_modules/@microwiseai/license/dist/api/endpoints.d.ts.map +1 -0
  95. package/node_modules/@microwiseai/license/dist/api/endpoints.js +101 -0
  96. package/node_modules/@microwiseai/license/dist/api/endpoints.js.map +1 -0
  97. package/node_modules/@microwiseai/license/dist/api/index.d.ts +7 -0
  98. package/node_modules/@microwiseai/license/dist/api/index.d.ts.map +1 -0
  99. package/node_modules/@microwiseai/license/dist/api/index.js +8 -0
  100. package/node_modules/@microwiseai/license/dist/api/index.js.map +1 -0
  101. package/node_modules/@microwiseai/license/dist/cache/file.d.ts +38 -0
  102. package/node_modules/@microwiseai/license/dist/cache/file.d.ts.map +1 -0
  103. package/node_modules/@microwiseai/license/dist/cache/file.js +140 -0
  104. package/node_modules/@microwiseai/license/dist/cache/file.js.map +1 -0
  105. package/node_modules/@microwiseai/license/dist/cache/index.d.ts +7 -0
  106. package/node_modules/@microwiseai/license/dist/cache/index.d.ts.map +1 -0
  107. package/node_modules/@microwiseai/license/dist/cache/index.js +10 -0
  108. package/node_modules/@microwiseai/license/dist/cache/index.js.map +1 -0
  109. package/node_modules/@microwiseai/license/dist/cache/memory.d.ts +35 -0
  110. package/node_modules/@microwiseai/license/dist/cache/memory.d.ts.map +1 -0
  111. package/node_modules/@microwiseai/license/dist/cache/memory.js +77 -0
  112. package/node_modules/@microwiseai/license/dist/cache/memory.js.map +1 -0
  113. package/node_modules/@microwiseai/license/dist/cache/offline.d.ts +29 -0
  114. package/node_modules/@microwiseai/license/dist/cache/offline.d.ts.map +1 -0
  115. package/node_modules/@microwiseai/license/dist/cache/offline.js +58 -0
  116. package/node_modules/@microwiseai/license/dist/cache/offline.js.map +1 -0
  117. package/node_modules/@microwiseai/license/dist/client.d.ts +42 -0
  118. package/node_modules/@microwiseai/license/dist/client.d.ts.map +1 -0
  119. package/node_modules/@microwiseai/license/dist/client.js +83 -0
  120. package/node_modules/@microwiseai/license/dist/client.js.map +1 -0
  121. package/node_modules/@microwiseai/license/dist/config.d.ts +27 -0
  122. package/node_modules/@microwiseai/license/dist/config.d.ts.map +1 -0
  123. package/node_modules/@microwiseai/license/dist/config.js +52 -0
  124. package/node_modules/@microwiseai/license/dist/config.js.map +1 -0
  125. package/node_modules/@microwiseai/license/dist/core/activate.d.ts +21 -0
  126. package/node_modules/@microwiseai/license/dist/core/activate.d.ts.map +1 -0
  127. package/node_modules/@microwiseai/license/dist/core/activate.js +72 -0
  128. package/node_modules/@microwiseai/license/dist/core/activate.js.map +1 -0
  129. package/node_modules/@microwiseai/license/dist/core/check.d.ts +19 -0
  130. package/node_modules/@microwiseai/license/dist/core/check.d.ts.map +1 -0
  131. package/node_modules/@microwiseai/license/dist/core/check.js +244 -0
  132. package/node_modules/@microwiseai/license/dist/core/check.js.map +1 -0
  133. package/node_modules/@microwiseai/license/dist/core/index.d.ts +7 -0
  134. package/node_modules/@microwiseai/license/dist/core/index.d.ts.map +1 -0
  135. package/node_modules/@microwiseai/license/dist/core/index.js +10 -0
  136. package/node_modules/@microwiseai/license/dist/core/index.js.map +1 -0
  137. package/node_modules/@microwiseai/license/dist/core/verify.d.ts +39 -0
  138. package/node_modules/@microwiseai/license/dist/core/verify.d.ts.map +1 -0
  139. package/node_modules/@microwiseai/license/dist/core/verify.js +188 -0
  140. package/node_modules/@microwiseai/license/dist/core/verify.js.map +1 -0
  141. package/node_modules/@microwiseai/license/dist/env.d.ts +33 -0
  142. package/node_modules/@microwiseai/license/dist/env.d.ts.map +1 -0
  143. package/node_modules/@microwiseai/license/dist/env.js +69 -0
  144. package/node_modules/@microwiseai/license/dist/env.js.map +1 -0
  145. package/node_modules/@microwiseai/license/dist/helpers/cache.d.ts +97 -0
  146. package/node_modules/@microwiseai/license/dist/helpers/cache.d.ts.map +1 -0
  147. package/node_modules/@microwiseai/license/dist/helpers/cache.js +198 -0
  148. package/node_modules/@microwiseai/license/dist/helpers/cache.js.map +1 -0
  149. package/node_modules/@microwiseai/license/dist/helpers/index.d.ts +7 -0
  150. package/node_modules/@microwiseai/license/dist/helpers/index.d.ts.map +1 -0
  151. package/node_modules/@microwiseai/license/dist/helpers/index.js +9 -0
  152. package/node_modules/@microwiseai/license/dist/helpers/index.js.map +1 -0
  153. package/node_modules/@microwiseai/license/dist/helpers/telemetry.d.ts +68 -0
  154. package/node_modules/@microwiseai/license/dist/helpers/telemetry.d.ts.map +1 -0
  155. package/node_modules/@microwiseai/license/dist/helpers/telemetry.js +119 -0
  156. package/node_modules/@microwiseai/license/dist/helpers/telemetry.js.map +1 -0
  157. package/node_modules/@microwiseai/license/dist/index.d.ts +34 -0
  158. package/node_modules/@microwiseai/license/dist/index.d.ts.map +1 -0
  159. package/node_modules/@microwiseai/license/dist/index.js +48 -0
  160. package/node_modules/@microwiseai/license/dist/index.js.map +1 -0
  161. package/node_modules/@microwiseai/license/dist/machine/id.d.ts +19 -0
  162. package/node_modules/@microwiseai/license/dist/machine/id.d.ts.map +1 -0
  163. package/node_modules/@microwiseai/license/dist/machine/id.js +83 -0
  164. package/node_modules/@microwiseai/license/dist/machine/id.js.map +1 -0
  165. package/node_modules/@microwiseai/license/dist/machine/index.d.ts +6 -0
  166. package/node_modules/@microwiseai/license/dist/machine/index.d.ts.map +1 -0
  167. package/node_modules/@microwiseai/license/dist/machine/index.js +6 -0
  168. package/node_modules/@microwiseai/license/dist/machine/index.js.map +1 -0
  169. package/node_modules/@microwiseai/license/dist/machine/instance.d.ts +23 -0
  170. package/node_modules/@microwiseai/license/dist/machine/instance.d.ts.map +1 -0
  171. package/node_modules/@microwiseai/license/dist/machine/instance.js +52 -0
  172. package/node_modules/@microwiseai/license/dist/machine/instance.js.map +1 -0
  173. package/node_modules/@microwiseai/license/dist/telemetry/index.d.ts +6 -0
  174. package/node_modules/@microwiseai/license/dist/telemetry/index.d.ts.map +1 -0
  175. package/node_modules/@microwiseai/license/dist/telemetry/index.js +6 -0
  176. package/node_modules/@microwiseai/license/dist/telemetry/index.js.map +1 -0
  177. package/node_modules/@microwiseai/license/dist/telemetry/manager.d.ts +53 -0
  178. package/node_modules/@microwiseai/license/dist/telemetry/manager.d.ts.map +1 -0
  179. package/node_modules/@microwiseai/license/dist/telemetry/manager.js +125 -0
  180. package/node_modules/@microwiseai/license/dist/telemetry/manager.js.map +1 -0
  181. package/node_modules/@microwiseai/license/dist/telemetry/payload.d.ts +17 -0
  182. package/node_modules/@microwiseai/license/dist/telemetry/payload.d.ts.map +1 -0
  183. package/node_modules/@microwiseai/license/dist/telemetry/payload.js +65 -0
  184. package/node_modules/@microwiseai/license/dist/telemetry/payload.js.map +1 -0
  185. package/node_modules/@microwiseai/license/dist/types/api.d.ts +120 -0
  186. package/node_modules/@microwiseai/license/dist/types/api.d.ts.map +1 -0
  187. package/node_modules/@microwiseai/license/dist/types/api.js +5 -0
  188. package/node_modules/@microwiseai/license/dist/types/api.js.map +1 -0
  189. package/node_modules/@microwiseai/license/dist/types/config.d.ts +80 -0
  190. package/node_modules/@microwiseai/license/dist/types/config.d.ts.map +1 -0
  191. package/node_modules/@microwiseai/license/dist/types/config.js +12 -0
  192. package/node_modules/@microwiseai/license/dist/types/config.js.map +1 -0
  193. package/node_modules/@microwiseai/license/dist/types/errors.d.ts +93 -0
  194. package/node_modules/@microwiseai/license/dist/types/errors.d.ts.map +1 -0
  195. package/node_modules/@microwiseai/license/dist/types/errors.js +144 -0
  196. package/node_modules/@microwiseai/license/dist/types/errors.js.map +1 -0
  197. package/node_modules/@microwiseai/license/dist/types/index.d.ts +10 -0
  198. package/node_modules/@microwiseai/license/dist/types/index.d.ts.map +1 -0
  199. package/node_modules/@microwiseai/license/dist/types/index.js +6 -0
  200. package/node_modules/@microwiseai/license/dist/types/index.js.map +1 -0
  201. package/node_modules/@microwiseai/license/dist/types/license.d.ts +113 -0
  202. package/node_modules/@microwiseai/license/dist/types/license.d.ts.map +1 -0
  203. package/node_modules/@microwiseai/license/dist/types/license.js +5 -0
  204. package/node_modules/@microwiseai/license/dist/types/license.js.map +1 -0
  205. package/node_modules/@microwiseai/license/dist/utils/date.d.ts +45 -0
  206. package/node_modules/@microwiseai/license/dist/utils/date.d.ts.map +1 -0
  207. package/node_modules/@microwiseai/license/dist/utils/date.js +95 -0
  208. package/node_modules/@microwiseai/license/dist/utils/date.js.map +1 -0
  209. package/node_modules/@microwiseai/license/dist/utils/env.d.ts +41 -0
  210. package/node_modules/@microwiseai/license/dist/utils/env.d.ts.map +1 -0
  211. package/node_modules/@microwiseai/license/dist/utils/env.js +80 -0
  212. package/node_modules/@microwiseai/license/dist/utils/env.js.map +1 -0
  213. package/node_modules/@microwiseai/license/dist/utils/index.d.ts +7 -0
  214. package/node_modules/@microwiseai/license/dist/utils/index.d.ts.map +1 -0
  215. package/node_modules/@microwiseai/license/dist/utils/index.js +7 -0
  216. package/node_modules/@microwiseai/license/dist/utils/index.js.map +1 -0
  217. package/node_modules/@microwiseai/license/dist/utils/mask.d.ts +27 -0
  218. package/node_modules/@microwiseai/license/dist/utils/mask.d.ts.map +1 -0
  219. package/node_modules/@microwiseai/license/dist/utils/mask.js +67 -0
  220. package/node_modules/@microwiseai/license/dist/utils/mask.js.map +1 -0
  221. package/node_modules/@microwiseai/license/package.json +52 -0
  222. package/node_modules/@microwiseai/license-types/README.md +84 -0
  223. package/node_modules/@microwiseai/license-types/dist/api.d.ts +120 -0
  224. package/node_modules/@microwiseai/license-types/dist/api.d.ts.map +1 -0
  225. package/node_modules/@microwiseai/license-types/dist/api.js +5 -0
  226. package/node_modules/@microwiseai/license-types/dist/api.js.map +1 -0
  227. package/node_modules/@microwiseai/license-types/dist/config.d.ts +80 -0
  228. package/node_modules/@microwiseai/license-types/dist/config.d.ts.map +1 -0
  229. package/node_modules/@microwiseai/license-types/dist/config.js +12 -0
  230. package/node_modules/@microwiseai/license-types/dist/config.js.map +1 -0
  231. package/node_modules/@microwiseai/license-types/dist/errors.d.ts +93 -0
  232. package/node_modules/@microwiseai/license-types/dist/errors.d.ts.map +1 -0
  233. package/node_modules/@microwiseai/license-types/dist/errors.js +144 -0
  234. package/node_modules/@microwiseai/license-types/dist/errors.js.map +1 -0
  235. package/node_modules/@microwiseai/license-types/dist/index.d.ts +10 -0
  236. package/node_modules/@microwiseai/license-types/dist/index.d.ts.map +1 -0
  237. package/node_modules/@microwiseai/license-types/dist/index.js +6 -0
  238. package/node_modules/@microwiseai/license-types/dist/index.js.map +1 -0
  239. package/node_modules/@microwiseai/license-types/dist/license.d.ts +113 -0
  240. package/node_modules/@microwiseai/license-types/dist/license.d.ts.map +1 -0
  241. package/node_modules/@microwiseai/license-types/dist/license.js +5 -0
  242. package/node_modules/@microwiseai/license-types/dist/license.js.map +1 -0
  243. package/node_modules/@microwiseai/license-types/package.json +38 -0
  244. package/node_modules/@microwiseai/license-utils/README.md +82 -0
  245. package/node_modules/@microwiseai/license-utils/dist/__tests__/machine.test.d.ts +2 -0
  246. package/node_modules/@microwiseai/license-utils/dist/__tests__/machine.test.d.ts.map +1 -0
  247. package/node_modules/@microwiseai/license-utils/dist/__tests__/machine.test.js +124 -0
  248. package/node_modules/@microwiseai/license-utils/dist/__tests__/machine.test.js.map +1 -0
  249. package/node_modules/@microwiseai/license-utils/dist/index.d.ts +7 -0
  250. package/node_modules/@microwiseai/license-utils/dist/index.d.ts.map +1 -0
  251. package/node_modules/@microwiseai/license-utils/dist/index.js +15 -0
  252. package/node_modules/@microwiseai/license-utils/dist/index.js.map +1 -0
  253. package/node_modules/@microwiseai/license-utils/dist/machine/id.d.ts +19 -0
  254. package/node_modules/@microwiseai/license-utils/dist/machine/id.d.ts.map +1 -0
  255. package/node_modules/@microwiseai/license-utils/dist/machine/id.js +83 -0
  256. package/node_modules/@microwiseai/license-utils/dist/machine/id.js.map +1 -0
  257. package/node_modules/@microwiseai/license-utils/dist/machine/index.d.ts +6 -0
  258. package/node_modules/@microwiseai/license-utils/dist/machine/index.d.ts.map +1 -0
  259. package/node_modules/@microwiseai/license-utils/dist/machine/index.js +6 -0
  260. package/node_modules/@microwiseai/license-utils/dist/machine/index.js.map +1 -0
  261. package/node_modules/@microwiseai/license-utils/dist/machine/instance.d.ts +23 -0
  262. package/node_modules/@microwiseai/license-utils/dist/machine/instance.d.ts.map +1 -0
  263. package/node_modules/@microwiseai/license-utils/dist/machine/instance.js +52 -0
  264. package/node_modules/@microwiseai/license-utils/dist/machine/instance.js.map +1 -0
  265. package/node_modules/@microwiseai/license-utils/dist/utils/date.d.ts +45 -0
  266. package/node_modules/@microwiseai/license-utils/dist/utils/date.d.ts.map +1 -0
  267. package/node_modules/@microwiseai/license-utils/dist/utils/date.js +95 -0
  268. package/node_modules/@microwiseai/license-utils/dist/utils/date.js.map +1 -0
  269. package/node_modules/@microwiseai/license-utils/dist/utils/env.d.ts +16 -0
  270. package/node_modules/@microwiseai/license-utils/dist/utils/env.d.ts.map +1 -0
  271. package/node_modules/@microwiseai/license-utils/dist/utils/env.js +22 -0
  272. package/node_modules/@microwiseai/license-utils/dist/utils/env.js.map +1 -0
  273. package/node_modules/@microwiseai/license-utils/dist/utils/index.d.ts +7 -0
  274. package/node_modules/@microwiseai/license-utils/dist/utils/index.d.ts.map +1 -0
  275. package/node_modules/@microwiseai/license-utils/dist/utils/index.js +7 -0
  276. package/node_modules/@microwiseai/license-utils/dist/utils/index.js.map +1 -0
  277. package/node_modules/@microwiseai/license-utils/dist/utils/mask.d.ts +27 -0
  278. package/node_modules/@microwiseai/license-utils/dist/utils/mask.d.ts.map +1 -0
  279. package/node_modules/@microwiseai/license-utils/dist/utils/mask.js +67 -0
  280. package/node_modules/@microwiseai/license-utils/dist/utils/mask.js.map +1 -0
  281. package/node_modules/@microwiseai/license-utils/package.json +45 -0
  282. package/node_modules/@microwiseai/telemetry/README.md +86 -0
  283. package/node_modules/@microwiseai/telemetry/dist/index.d.ts +9 -0
  284. package/node_modules/@microwiseai/telemetry/dist/index.d.ts.map +1 -0
  285. package/node_modules/@microwiseai/telemetry/dist/index.js +10 -0
  286. package/node_modules/@microwiseai/telemetry/dist/index.js.map +1 -0
  287. package/node_modules/@microwiseai/telemetry/dist/manager.d.ts +71 -0
  288. package/node_modules/@microwiseai/telemetry/dist/manager.d.ts.map +1 -0
  289. package/node_modules/@microwiseai/telemetry/dist/manager.js +171 -0
  290. package/node_modules/@microwiseai/telemetry/dist/manager.js.map +1 -0
  291. package/node_modules/@microwiseai/telemetry/dist/payload.d.ts +13 -0
  292. package/node_modules/@microwiseai/telemetry/dist/payload.d.ts.map +1 -0
  293. package/node_modules/@microwiseai/telemetry/dist/payload.js +35 -0
  294. package/node_modules/@microwiseai/telemetry/dist/payload.js.map +1 -0
  295. package/node_modules/@microwiseai/telemetry/dist/types.d.ts +76 -0
  296. package/node_modules/@microwiseai/telemetry/dist/types.d.ts.map +1 -0
  297. package/node_modules/@microwiseai/telemetry/dist/types.js +13 -0
  298. package/node_modules/@microwiseai/telemetry/dist/types.js.map +1 -0
  299. package/node_modules/@microwiseai/telemetry/package.json +43 -0
  300. package/node_modules/chalk/license +9 -0
  301. package/node_modules/chalk/package.json +83 -0
  302. package/node_modules/chalk/readme.md +297 -0
  303. package/node_modules/chalk/source/index.d.ts +325 -0
  304. package/node_modules/chalk/source/index.js +225 -0
  305. package/node_modules/chalk/source/utilities.js +33 -0
  306. package/node_modules/chalk/source/vendor/ansi-styles/index.d.ts +236 -0
  307. package/node_modules/chalk/source/vendor/ansi-styles/index.js +223 -0
  308. package/node_modules/chalk/source/vendor/supports-color/browser.d.ts +1 -0
  309. package/node_modules/chalk/source/vendor/supports-color/browser.js +34 -0
  310. package/node_modules/chalk/source/vendor/supports-color/index.d.ts +55 -0
  311. package/node_modules/chalk/source/vendor/supports-color/index.js +190 -0
  312. package/package.json +26 -2
@@ -0,0 +1,48 @@
1
+ /**
2
+ * @microwiseai/import-telemetry
3
+ *
4
+ * Import-time telemetry for license tracking and bypass detection.
5
+ * Sends telemetry when a package is imported, regardless of license validation.
6
+ *
7
+ * @example
8
+ * ```typescript
9
+ * // In your package's entry point (index.ts)
10
+ * import { reportImport, markLicenseChecked } from '@microwiseai/import-telemetry';
11
+ *
12
+ * // Fire-and-forget: sends telemetry immediately on import
13
+ * reportImport({
14
+ * vendorName: 'microwiseai',
15
+ * packageName: '@microwiseai/snapshot',
16
+ * packageVersion: '1.0.0',
17
+ * apiUrl: 'https://api.microwiseai.com',
18
+ * });
19
+ *
20
+ * // In your license check function, mark as checked:
21
+ * // This prevents false "bypassed" detection
22
+ * markLicenseChecked('@microwiseai/snapshot');
23
+ *
24
+ * // Export your package's public API
25
+ * export { createSnapshot } from './snapshot.js';
26
+ * ```
27
+ *
28
+ * @example
29
+ * ```typescript
30
+ * // Using factory pattern for pre-configured reporter
31
+ * import { createImportReporter } from '@microwiseai/import-telemetry';
32
+ *
33
+ * const reporter = createImportReporter({
34
+ * vendorName: 'microwiseai',
35
+ * packageName: '@microwiseai/snapshot',
36
+ * packageVersion: '1.0.0',
37
+ * apiUrl: 'https://api.microwiseai.com',
38
+ * });
39
+ *
40
+ * // Call to report (can be conditionally enabled)
41
+ * reporter(); // or reporter(false) to disable
42
+ * ```
43
+ */
44
+ export type { ImportLicenseStatus, ImportTelemetryConfig, ImportTelemetryPayload, ImportTrackingState, } from './types.js';
45
+ export { importRegistry, markLicenseChecked, isLicenseChecked, } from './types.js';
46
+ export { detectLicenseStatus, detectBypass, } from './detector.js';
47
+ export { reportImport, createImportReporter, } from './reporter.js';
48
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA0CG;AAMH,YAAY,EACV,mBAAmB,EACnB,qBAAqB,EACrB,sBAAsB,EACtB,mBAAmB,GACpB,MAAM,YAAY,CAAC;AAMpB,OAAO,EACL,cAAc,EACd,kBAAkB,EAClB,gBAAgB,GACjB,MAAM,YAAY,CAAC;AAMpB,OAAO,EACL,mBAAmB,EACnB,YAAY,GACb,MAAM,eAAe,CAAC;AAMvB,OAAO,EACL,YAAY,EACZ,oBAAoB,GACrB,MAAM,eAAe,CAAC"}
@@ -0,0 +1,56 @@
1
+ /**
2
+ * @microwiseai/import-telemetry
3
+ *
4
+ * Import-time telemetry for license tracking and bypass detection.
5
+ * Sends telemetry when a package is imported, regardless of license validation.
6
+ *
7
+ * @example
8
+ * ```typescript
9
+ * // In your package's entry point (index.ts)
10
+ * import { reportImport, markLicenseChecked } from '@microwiseai/import-telemetry';
11
+ *
12
+ * // Fire-and-forget: sends telemetry immediately on import
13
+ * reportImport({
14
+ * vendorName: 'microwiseai',
15
+ * packageName: '@microwiseai/snapshot',
16
+ * packageVersion: '1.0.0',
17
+ * apiUrl: 'https://api.microwiseai.com',
18
+ * });
19
+ *
20
+ * // In your license check function, mark as checked:
21
+ * // This prevents false "bypassed" detection
22
+ * markLicenseChecked('@microwiseai/snapshot');
23
+ *
24
+ * // Export your package's public API
25
+ * export { createSnapshot } from './snapshot.js';
26
+ * ```
27
+ *
28
+ * @example
29
+ * ```typescript
30
+ * // Using factory pattern for pre-configured reporter
31
+ * import { createImportReporter } from '@microwiseai/import-telemetry';
32
+ *
33
+ * const reporter = createImportReporter({
34
+ * vendorName: 'microwiseai',
35
+ * packageName: '@microwiseai/snapshot',
36
+ * packageVersion: '1.0.0',
37
+ * apiUrl: 'https://api.microwiseai.com',
38
+ * });
39
+ *
40
+ * // Call to report (can be conditionally enabled)
41
+ * reporter(); // or reporter(false) to disable
42
+ * ```
43
+ */
44
+ // ============================================================
45
+ // Registry functions (for integration with license package)
46
+ // ============================================================
47
+ export { importRegistry, markLicenseChecked, isLicenseChecked, } from './types.js';
48
+ // ============================================================
49
+ // Detection
50
+ // ============================================================
51
+ export { detectLicenseStatus, detectBypass, } from './detector.js';
52
+ // ============================================================
53
+ // Reporter (primary API)
54
+ // ============================================================
55
+ export { reportImport, createImportReporter, } from './reporter.js';
56
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA0CG;AAaH,+DAA+D;AAC/D,4DAA4D;AAC5D,+DAA+D;AAE/D,OAAO,EACL,cAAc,EACd,kBAAkB,EAClB,gBAAgB,GACjB,MAAM,YAAY,CAAC;AAEpB,+DAA+D;AAC/D,YAAY;AACZ,+DAA+D;AAE/D,OAAO,EACL,mBAAmB,EACnB,YAAY,GACb,MAAM,eAAe,CAAC;AAEvB,+DAA+D;AAC/D,yBAAyB;AACzB,+DAA+D;AAE/D,OAAO,EACL,YAAY,EACZ,oBAAoB,GACrB,MAAM,eAAe,CAAC"}
@@ -0,0 +1,16 @@
1
+ /**
2
+ * Import-time telemetry reporter
3
+ * Fire-and-forget telemetry at import time
4
+ */
5
+ import type { ImportTelemetryConfig } from './types.js';
6
+ /**
7
+ * Report import-time telemetry
8
+ * This function is fire-and-forget - never blocks or throws
9
+ */
10
+ export declare function reportImport(config: ImportTelemetryConfig): void;
11
+ /**
12
+ * Create a configured reporter function
13
+ * Use this to create a pre-configured reporter for a specific package
14
+ */
15
+ export declare function createImportReporter(config: Omit<ImportTelemetryConfig, 'enabled'>): (enabled?: boolean) => void;
16
+ //# sourceMappingURL=reporter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"reporter.d.ts","sourceRoot":"","sources":["../src/reporter.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,KAAK,EACV,qBAAqB,EAItB,MAAM,YAAY,CAAC;AAWpB;;;GAGG;AACH,wBAAgB,YAAY,CAAC,MAAM,EAAE,qBAAqB,GAAG,IAAI,CAwBhE;AA0HD;;;GAGG;AACH,wBAAgB,oBAAoB,CAClC,MAAM,EAAE,IAAI,CAAC,qBAAqB,EAAE,SAAS,CAAC,GAC7C,CAAC,OAAO,CAAC,EAAE,OAAO,KAAK,IAAI,CAI7B"}
@@ -0,0 +1,147 @@
1
+ /**
2
+ * Import-time telemetry reporter
3
+ * Fire-and-forget telemetry at import time
4
+ */
5
+ import * as os from 'os';
6
+ import { importRegistry, isLicenseChecked } from './types.js';
7
+ import { detectLicenseStatus, detectBypass } from './detector.js';
8
+ import { getMachineId } from '@microwiseai/license-utils';
9
+ /** Default timeout for telemetry requests */
10
+ const DEFAULT_TIMEOUT = 5000;
11
+ /** Delay before sending bypass detection report (ms) */
12
+ const BYPASS_DETECTION_DELAY = 30000; // 30 seconds
13
+ /**
14
+ * Report import-time telemetry
15
+ * This function is fire-and-forget - never blocks or throws
16
+ */
17
+ export function reportImport(config) {
18
+ // Skip if disabled
19
+ if (config.enabled === false) {
20
+ return;
21
+ }
22
+ // Track import in registry
23
+ const trackingState = {
24
+ importedAt: Date.now(),
25
+ licenseChecked: false,
26
+ packageName: config.packageName,
27
+ };
28
+ importRegistry.set(config.packageName, trackingState);
29
+ // Detect initial license status
30
+ const initialStatus = detectLicenseStatus(config.vendorName);
31
+ // Send immediate import telemetry
32
+ sendTelemetry(config, initialStatus).catch(() => {
33
+ // Silent fail
34
+ });
35
+ // Schedule bypass detection
36
+ schedulBypassDetection(config, initialStatus);
37
+ }
38
+ /**
39
+ * Schedule bypass detection after delay
40
+ */
41
+ function schedulBypassDetection(config, initialStatus) {
42
+ // Use setImmediate + setTimeout to avoid blocking
43
+ setImmediate(() => {
44
+ setTimeout(() => {
45
+ const licenseChecked = isLicenseChecked(config.packageName);
46
+ const finalStatus = detectBypass(config.packageName, licenseChecked, initialStatus);
47
+ // Only send if bypass detected
48
+ if (finalStatus === 'bypassed') {
49
+ sendBypassTelemetry(config, initialStatus).catch(() => {
50
+ // Silent fail
51
+ });
52
+ }
53
+ // Cleanup registry
54
+ importRegistry.delete(config.packageName);
55
+ }, BYPASS_DETECTION_DELAY);
56
+ });
57
+ }
58
+ /**
59
+ * Send telemetry to server
60
+ */
61
+ async function sendTelemetry(config, status) {
62
+ const payload = buildPayload(config, status);
63
+ const endpoint = buildEndpoint(config.apiUrl);
64
+ const timeout = config.timeout ?? DEFAULT_TIMEOUT;
65
+ try {
66
+ await fetch(endpoint, {
67
+ method: 'POST',
68
+ headers: {
69
+ 'Content-Type': 'application/json',
70
+ },
71
+ body: JSON.stringify(payload),
72
+ signal: AbortSignal.timeout(timeout),
73
+ });
74
+ }
75
+ catch {
76
+ // Silent fail - never throw
77
+ }
78
+ }
79
+ /**
80
+ * Send bypass detection telemetry
81
+ */
82
+ async function sendBypassTelemetry(config, originalStatus) {
83
+ const payload = {
84
+ ...buildPayload(config, 'bypassed'),
85
+ originalStatus,
86
+ };
87
+ const endpoint = buildEndpoint(config.apiUrl);
88
+ const timeout = config.timeout ?? DEFAULT_TIMEOUT;
89
+ try {
90
+ await fetch(endpoint, {
91
+ method: 'POST',
92
+ headers: {
93
+ 'Content-Type': 'application/json',
94
+ },
95
+ body: JSON.stringify(payload),
96
+ signal: AbortSignal.timeout(timeout),
97
+ });
98
+ }
99
+ catch {
100
+ // Silent fail - never throw
101
+ }
102
+ }
103
+ /**
104
+ * Build telemetry payload
105
+ */
106
+ function buildPayload(config, status) {
107
+ let machineId;
108
+ try {
109
+ machineId = getMachineId(config.vendorName);
110
+ }
111
+ catch {
112
+ machineId = 'unknown';
113
+ }
114
+ return {
115
+ machineId,
116
+ timestamp: new Date().toISOString(),
117
+ licenseStatus: status,
118
+ packageName: config.packageName,
119
+ packageVersion: config.packageVersion,
120
+ vendorName: config.vendorName,
121
+ platform: os.platform(),
122
+ nodeVersion: process.version,
123
+ event: 'import',
124
+ };
125
+ }
126
+ /**
127
+ * Build telemetry endpoint URL
128
+ */
129
+ function buildEndpoint(apiUrl) {
130
+ // If apiUrl already ends with /telemetry, use as-is
131
+ if (apiUrl.endsWith('/telemetry')) {
132
+ return apiUrl;
133
+ }
134
+ // Otherwise append /telemetry
135
+ const baseUrl = apiUrl.endsWith('/') ? apiUrl.slice(0, -1) : apiUrl;
136
+ return `${baseUrl}/telemetry`;
137
+ }
138
+ /**
139
+ * Create a configured reporter function
140
+ * Use this to create a pre-configured reporter for a specific package
141
+ */
142
+ export function createImportReporter(config) {
143
+ return (enabled = true) => {
144
+ reportImport({ ...config, enabled });
145
+ };
146
+ }
147
+ //# sourceMappingURL=reporter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"reporter.js","sourceRoot":"","sources":["../src/reporter.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,75 @@
1
+ /**
2
+ * Import-time telemetry type definitions
3
+ */
4
+ /**
5
+ * License status at import time
6
+ * - 'valid': License file exists and appears valid
7
+ * - 'invalid': License file exists but is invalid/expired
8
+ * - 'none': No license file found
9
+ * - 'bypassed': License check was not called but features are being used
10
+ */
11
+ export type ImportLicenseStatus = 'valid' | 'invalid' | 'none' | 'bypassed';
12
+ /**
13
+ * Configuration for import-time telemetry
14
+ */
15
+ export interface ImportTelemetryConfig {
16
+ /** Vendor name (used for storage directory) */
17
+ vendorName: string;
18
+ /** Package name being imported */
19
+ packageName: string;
20
+ /** Package version */
21
+ packageVersion: string;
22
+ /** Telemetry API endpoint */
23
+ apiUrl: string;
24
+ /** Request timeout in ms (default: 5000) */
25
+ timeout?: number;
26
+ /** Whether telemetry is enabled (default: true) */
27
+ enabled?: boolean;
28
+ }
29
+ /**
30
+ * Telemetry payload sent to server
31
+ */
32
+ export interface ImportTelemetryPayload {
33
+ /** Unique machine identifier */
34
+ machineId: string;
35
+ /** Timestamp of import */
36
+ timestamp: string;
37
+ /** License status at import time */
38
+ licenseStatus: ImportLicenseStatus;
39
+ /** Package name */
40
+ packageName: string;
41
+ /** Package version */
42
+ packageVersion: string;
43
+ /** Vendor name */
44
+ vendorName: string;
45
+ /** Platform (os) */
46
+ platform: string;
47
+ /** Node.js version */
48
+ nodeVersion: string;
49
+ /** Event type */
50
+ event: 'import';
51
+ }
52
+ /**
53
+ * Internal state for bypass detection
54
+ */
55
+ export interface ImportTrackingState {
56
+ /** Time of import */
57
+ importedAt: number;
58
+ /** Whether checkLicense was called */
59
+ licenseChecked: boolean;
60
+ /** Package name */
61
+ packageName: string;
62
+ }
63
+ /**
64
+ * Global registry for tracking imports
65
+ */
66
+ export declare const importRegistry: Map<string, ImportTrackingState>;
67
+ /**
68
+ * Mark a package as having its license checked
69
+ */
70
+ export declare function markLicenseChecked(packageName: string): void;
71
+ /**
72
+ * Check if a package has had its license checked
73
+ */
74
+ export declare function isLicenseChecked(packageName: string): boolean;
75
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH;;;;;;GAMG;AACH,MAAM,MAAM,mBAAmB,GAAG,OAAO,GAAG,SAAS,GAAG,MAAM,GAAG,UAAU,CAAC;AAE5E;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACpC,+CAA+C;IAC/C,UAAU,EAAE,MAAM,CAAC;IACnB,kCAAkC;IAClC,WAAW,EAAE,MAAM,CAAC;IACpB,sBAAsB;IACtB,cAAc,EAAE,MAAM,CAAC;IACvB,6BAA6B;IAC7B,MAAM,EAAE,MAAM,CAAC;IACf,4CAA4C;IAC5C,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,mDAAmD;IACnD,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACrC,gCAAgC;IAChC,SAAS,EAAE,MAAM,CAAC;IAClB,0BAA0B;IAC1B,SAAS,EAAE,MAAM,CAAC;IAClB,oCAAoC;IACpC,aAAa,EAAE,mBAAmB,CAAC;IACnC,mBAAmB;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,sBAAsB;IACtB,cAAc,EAAE,MAAM,CAAC;IACvB,kBAAkB;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,oBAAoB;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,sBAAsB;IACtB,WAAW,EAAE,MAAM,CAAC;IACpB,iBAAiB;IACjB,KAAK,EAAE,QAAQ,CAAC;CACjB;AAED;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC,qBAAqB;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,sCAAsC;IACtC,cAAc,EAAE,OAAO,CAAC;IACxB,mBAAmB;IACnB,WAAW,EAAE,MAAM,CAAC;CACrB;AAED;;GAEG;AACH,eAAO,MAAM,cAAc,kCAAyC,CAAC;AAErE;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI,CAK5D;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAE7D"}
@@ -0,0 +1,23 @@
1
+ /**
2
+ * Import-time telemetry type definitions
3
+ */
4
+ /**
5
+ * Global registry for tracking imports
6
+ */
7
+ export const importRegistry = new Map();
8
+ /**
9
+ * Mark a package as having its license checked
10
+ */
11
+ export function markLicenseChecked(packageName) {
12
+ const state = importRegistry.get(packageName);
13
+ if (state) {
14
+ state.licenseChecked = true;
15
+ }
16
+ }
17
+ /**
18
+ * Check if a package has had its license checked
19
+ */
20
+ export function isLicenseChecked(packageName) {
21
+ return importRegistry.get(packageName)?.licenseChecked ?? false;
22
+ }
23
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAiEH;;GAEG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG,IAAI,GAAG,EAA+B,CAAC;AAErE;;GAEG;AACH,MAAM,UAAU,kBAAkB,CAAC,WAAmB;IACpD,MAAM,KAAK,GAAG,cAAc,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;IAC9C,IAAI,KAAK,EAAE,CAAC;QACV,KAAK,CAAC,cAAc,GAAG,IAAI,CAAC;IAC9B,CAAC;AACH,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,gBAAgB,CAAC,WAAmB;IAClD,OAAO,cAAc,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE,cAAc,IAAI,KAAK,CAAC;AAClE,CAAC"}
@@ -0,0 +1,40 @@
1
+ {
2
+ "name": "@microwiseai/import-telemetry",
3
+ "version": "0.1.0",
4
+ "description": "Import-time telemetry for license tracking",
5
+ "type": "module",
6
+ "exports": {
7
+ ".": {
8
+ "import": "./dist/index.js",
9
+ "types": "./dist/index.d.ts"
10
+ }
11
+ },
12
+ "main": "./dist/index.js",
13
+ "types": "./dist/index.d.ts",
14
+ "files": [
15
+ "dist"
16
+ ],
17
+ "scripts": {
18
+ "build": "tsc",
19
+ "clean": "rm -rf dist",
20
+ "typecheck": "tsc --noEmit",
21
+ "test": "vitest run",
22
+ "test:watch": "vitest",
23
+ "test:coverage": "vitest run --coverage"
24
+ },
25
+ "dependencies": {
26
+ "@microwiseai/license-utils": "^0.1.0"
27
+ },
28
+ "devDependencies": {
29
+ "@types/node": "^20.11.0",
30
+ "typescript": "^5.3.3",
31
+ "vitest": "^2.0.0"
32
+ },
33
+ "engines": {
34
+ "node": ">=18"
35
+ },
36
+ "publishConfig": {
37
+ "access": "public"
38
+ },
39
+ "license": "MIT"
40
+ }
@@ -0,0 +1,157 @@
1
+ # @microwiseai/license
2
+
3
+ 범용 라이선스 검증 라이브러리
4
+
5
+ ## 설치
6
+
7
+ ```bash
8
+ npm install @microwiseai/license
9
+ ```
10
+
11
+ ## 기본 사용법
12
+
13
+ ```typescript
14
+ import { createLicenseClient } from '@microwiseai/license';
15
+
16
+ const license = createLicenseClient({
17
+ vendorName: 'myapp',
18
+ apiUrl: 'https://api.myapp.com',
19
+ cliCommand: 'myapp license',
20
+ storeUrl: 'https://myapp.com/pricing',
21
+ });
22
+
23
+ // 검증 (결과 반환)
24
+ const result = await license.checkLicense();
25
+ if (!result.valid) {
26
+ console.log(result.reason);
27
+ }
28
+
29
+ // 검증 (실패 시 throw)
30
+ await license.requireLicense();
31
+
32
+ // 활성화
33
+ await license.activateLicense('XXXX-YYYY-ZZZZ-WWWW');
34
+
35
+ // 비활성화
36
+ await license.deactivateLicense();
37
+ ```
38
+
39
+ ## 설정 옵션
40
+
41
+ ```typescript
42
+ interface LicenseConfig {
43
+ // 필수
44
+ vendorName: string; // 벤더명 (스토리지: ~/.{vendorName}/)
45
+ apiUrl: string; // API 서버 URL
46
+
47
+ // 선택
48
+ telemetryUrl?: string; // 텔레메트리 URL (없으면 비활성화)
49
+ envPrefix?: string; // 환경변수 prefix (기본: VENDORNAME)
50
+ cliCommand?: string; // CLI 명령어 (에러 메시지용)
51
+ storeUrl?: string; // 구매 페이지 URL
52
+ cacheTTL?: number; // 캐시 TTL (초, 기본: 86400)
53
+ offlineGraceDays?: number; // 오프라인 허용 기간 (일, 기본: 7)
54
+ autoTelemetry?: boolean; // 자동 텔레메트리 (기본: false)
55
+ }
56
+ ```
57
+
58
+ ## 검증 옵션
59
+
60
+ ```typescript
61
+ await license.checkLicense({
62
+ productId: 'my-product', // 특정 상품 체크
63
+ productIds: ['a', 'b'], // 복수 상품 허용
64
+ silent: true, // 에러 메시지 숨김
65
+ forceVerify: true, // 캐시 무시
66
+ });
67
+ ```
68
+
69
+ ## 라이선스 타입
70
+
71
+ | 타입 | 설명 |
72
+ |------|------|
73
+ | `perpetual` | 영구 라이선스 (만료 없음) |
74
+ | `subscription` | 구독형 (기간제) |
75
+ | `trial` | 체험판 |
76
+
77
+ ```typescript
78
+ const result = await license.checkLicense();
79
+
80
+ if (result.license?.type === 'trial') {
81
+ console.log(`Trial: ${result.license.trialDaysRemaining} days left`);
82
+ }
83
+
84
+ if (result.license?.type === 'perpetual') {
85
+ // 영구 라이선스 - 만료 없음
86
+ }
87
+ ```
88
+
89
+ ## 오프라인 지원
90
+
91
+ - **캐시 TTL**: 24시간 (마지막 검증 후)
92
+ - **오프라인 Grace**: 7일 (네트워크 실패 시)
93
+
94
+ ```typescript
95
+ const result = await license.checkLicense();
96
+
97
+ if (result.offlineMode) {
98
+ console.log(`Offline: ${result.license?.offlineDaysRemaining} days remaining`);
99
+ }
100
+ ```
101
+
102
+ ## 환경변수
103
+
104
+ `envPrefix` 설정에 따라 환경변수로 설정 오버라이드 가능:
105
+
106
+ ```bash
107
+ # envPrefix: 'MYAPP' (기본: vendorName.toUpperCase())
108
+ MYAPP_API_URL=https://api.myapp.com
109
+ MYAPP_TELEMETRY=false
110
+ MYAPP_CACHE_TTL=3600
111
+ MYAPP_OFFLINE_GRACE=14
112
+ ```
113
+
114
+ ## 에러 처리
115
+
116
+ ```typescript
117
+ import { LicenseError } from '@microwiseai/license';
118
+
119
+ try {
120
+ await license.requireLicense();
121
+ } catch (err) {
122
+ if (err instanceof LicenseError) {
123
+ console.log(err.code); // 'NO_LICENSE', 'EXPIRED', etc.
124
+ console.log(err.message);
125
+ console.log(err.getSuggestion());
126
+
127
+ if (err.isRecoverable()) {
128
+ // 사용자가 해결 가능한 에러
129
+ }
130
+ }
131
+ }
132
+ ```
133
+
134
+ ## 스토리지 구조
135
+
136
+ ```
137
+ ~/.{vendorName}/
138
+ ├── license.json # 라이선스 데이터
139
+ ├── license-cache.json # 캐시 메타데이터
140
+ └── .machine-id # 머신 ID
141
+ ```
142
+
143
+ ## API
144
+
145
+ | 메서드 | 설명 |
146
+ |--------|------|
147
+ | `checkLicense()` | 검증 (결과 반환) |
148
+ | `requireLicense()` | 검증 (실패 시 throw) |
149
+ | `activateLicense(key)` | 활성화 |
150
+ | `deactivateLicense()` | 비활성화 |
151
+ | `getLicenseInfo()` | 로컬 라이선스 정보 |
152
+ | `getMachineId()` | 머신 ID |
153
+ | `clearCache()` | 캐시 삭제 |
154
+
155
+ ## License
156
+
157
+ MIT
@@ -0,0 +1,37 @@
1
+ /**
2
+ * HTTP client for license API calls
3
+ * Uses Node.js 18+ built-in fetch
4
+ */
5
+ import type { LicenseConfig } from '@microwiseai/license-types';
6
+ /**
7
+ * API client options
8
+ */
9
+ export interface ApiClientOptions {
10
+ timeout?: number;
11
+ }
12
+ /**
13
+ * API response wrapper
14
+ */
15
+ export interface ApiResponse<T> {
16
+ ok: boolean;
17
+ status: number;
18
+ data?: T;
19
+ error?: string;
20
+ }
21
+ /**
22
+ * Make a POST request to the API
23
+ */
24
+ export declare function post<TRequest, TResponse>(config: LicenseConfig, endpoint: string, body: TRequest, options?: ApiClientOptions): Promise<ApiResponse<TResponse>>;
25
+ /**
26
+ * Check if error is a network error (for offline handling)
27
+ */
28
+ export declare function isNetworkError(response: ApiResponse<unknown>): boolean;
29
+ /**
30
+ * Check if response indicates server error
31
+ */
32
+ export declare function isServerError(response: ApiResponse<unknown>): boolean;
33
+ /**
34
+ * Check if response indicates client error
35
+ */
36
+ export declare function isClientError(response: ApiResponse<unknown>): boolean;
37
+ //# sourceMappingURL=client.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/api/client.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAKhE;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED;;GAEG;AACH,MAAM,WAAW,WAAW,CAAC,CAAC;IAC5B,EAAE,EAAE,OAAO,CAAC;IACZ,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,CAAC,CAAC;IACT,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;GAEG;AACH,wBAAsB,IAAI,CAAC,QAAQ,EAAE,SAAS,EAC5C,MAAM,EAAE,aAAa,EACrB,QAAQ,EAAE,MAAM,EAChB,IAAI,EAAE,QAAQ,EACd,OAAO,CAAC,EAAE,gBAAgB,GACzB,OAAO,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC,CAoEjC;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,QAAQ,EAAE,WAAW,CAAC,OAAO,CAAC,GAAG,OAAO,CAEtE;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,QAAQ,EAAE,WAAW,CAAC,OAAO,CAAC,GAAG,OAAO,CAErE;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,QAAQ,EAAE,WAAW,CAAC,OAAO,CAAC,GAAG,OAAO,CAErE"}