@marktrue/dsh-mobile-remote 3.2.4-alpha.2 → 3.2.4-alpha.3-app

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 (352) hide show
  1. package/DSH-Remote-v3.2.4.apk +4 -0
  2. package/README.md +6 -254
  3. package/manifest.json +21 -0
  4. package/package.json +12 -65
  5. package/CHANGELOG.md +0 -1427
  6. package/CONTRIBUTING.md +0 -59
  7. package/FAQ.md +0 -111
  8. package/cordis.patch.yml +0 -14
  9. package/docs/00-/345/274/200/345/217/221/346/200/273/347/272/262.md +0 -125
  10. package/docs/01-PRD.md +0 -148
  11. package/docs/02-architecture.md +0 -249
  12. package/docs/03-api.md +0 -1154
  13. package/docs/04-security.md +0 -100
  14. package/docs/05-test-cases.md +0 -405
  15. package/docs/06-install-run.md +0 -372
  16. package/docs/07-user-manual.md +0 -70
  17. package/docs/08-/346/211/251/345/261/225/345/274/200/345/217/221/346/214/207/345/215/227.md +0 -86
  18. package/docs/09-compatibility.md +0 -227
  19. package/docs/10-release.md +0 -1067
  20. package/docs/screenshots/01-home.png +0 -0
  21. package/docs/screenshots/02-notifications.png +0 -0
  22. package/docs/screenshots/03-sessions.png +0 -0
  23. package/docs/screenshots/04-chat.png +0 -0
  24. package/docs/screenshots/05-settings.png +0 -0
  25. package/docs/screenshots/06-new-session.png +0 -0
  26. package/docs/screenshots/pgy-appstore.jpg +0 -0
  27. package/docs/screenshots/pgy-mobile-app.jpg +0 -0
  28. package/docs/screenshots/pgy-pc-client.jpg +0 -0
  29. package/lib/account-usage.js +0 -145
  30. package/lib/app-alignment.js +0 -112
  31. package/lib/app-carrier-store.js +0 -1972
  32. package/lib/app-carrier.js +0 -609
  33. package/lib/client.js +0 -1174
  34. package/lib/desktop-form.js +0 -738
  35. package/lib/endpoint-registry.js +0 -167
  36. package/lib/git-read-bundled-provider.js +0 -450
  37. package/lib/git-read-service.js +0 -601
  38. package/lib/index.js +0 -9622
  39. package/lib/npm-update-source.js +0 -226
  40. package/lib/plugin-content-digest.js +0 -80
  41. package/lib/plugin-self-update.js +0 -997
  42. package/lib/plugin-update-controller.js +0 -274
  43. package/lib/plugin-update-log.js +0 -164
  44. package/lib/plugin-update-transaction.js +0 -322
  45. package/lib/plugin-update.js +0 -309
  46. package/lib/runtime-dependency-snapshot.js +0 -345
  47. package/lib/session-title-cache.js +0 -123
  48. package/lib/session-title-refresh.js +0 -261
  49. package/lib/tool-process.js +0 -20
  50. package/lib/update-fetch.js +0 -24
  51. package/lib/update-lock-arbiter.js +0 -170
  52. package/lib/update-supervisor.js +0 -346
  53. package/node_modules/ansi-regex/index.d.ts +0 -37
  54. package/node_modules/ansi-regex/index.js +0 -10
  55. package/node_modules/ansi-regex/license +0 -9
  56. package/node_modules/ansi-regex/package.json +0 -55
  57. package/node_modules/ansi-regex/readme.md +0 -78
  58. package/node_modules/ansi-styles/index.d.ts +0 -345
  59. package/node_modules/ansi-styles/index.js +0 -163
  60. package/node_modules/ansi-styles/license +0 -9
  61. package/node_modules/ansi-styles/package.json +0 -56
  62. package/node_modules/ansi-styles/readme.md +0 -152
  63. package/node_modules/camelcase/index.d.ts +0 -63
  64. package/node_modules/camelcase/index.js +0 -76
  65. package/node_modules/camelcase/license +0 -9
  66. package/node_modules/camelcase/package.json +0 -43
  67. package/node_modules/camelcase/readme.md +0 -99
  68. package/node_modules/cliui/CHANGELOG.md +0 -76
  69. package/node_modules/cliui/LICENSE.txt +0 -14
  70. package/node_modules/cliui/README.md +0 -115
  71. package/node_modules/cliui/index.js +0 -354
  72. package/node_modules/cliui/package.json +0 -65
  73. package/node_modules/color-convert/CHANGELOG.md +0 -54
  74. package/node_modules/color-convert/LICENSE +0 -21
  75. package/node_modules/color-convert/README.md +0 -68
  76. package/node_modules/color-convert/conversions.js +0 -839
  77. package/node_modules/color-convert/index.js +0 -81
  78. package/node_modules/color-convert/package.json +0 -48
  79. package/node_modules/color-convert/route.js +0 -97
  80. package/node_modules/color-name/LICENSE +0 -8
  81. package/node_modules/color-name/README.md +0 -11
  82. package/node_modules/color-name/index.js +0 -152
  83. package/node_modules/color-name/package.json +0 -28
  84. package/node_modules/decamelize/index.js +0 -13
  85. package/node_modules/decamelize/license +0 -21
  86. package/node_modules/decamelize/package.json +0 -38
  87. package/node_modules/decamelize/readme.md +0 -48
  88. package/node_modules/dijkstrajs/.travis.yml +0 -4
  89. package/node_modules/dijkstrajs/CONTRIBUTING.md +0 -8
  90. package/node_modules/dijkstrajs/LICENSE.md +0 -19
  91. package/node_modules/dijkstrajs/README.md +0 -18
  92. package/node_modules/dijkstrajs/dijkstra.js +0 -165
  93. package/node_modules/dijkstrajs/package.json +0 -60
  94. package/node_modules/dijkstrajs/test/dijkstra.test.js +0 -96
  95. package/node_modules/emoji-regex/LICENSE-MIT.txt +0 -20
  96. package/node_modules/emoji-regex/README.md +0 -73
  97. package/node_modules/emoji-regex/es2015/index.js +0 -6
  98. package/node_modules/emoji-regex/es2015/text.js +0 -6
  99. package/node_modules/emoji-regex/index.d.ts +0 -23
  100. package/node_modules/emoji-regex/index.js +0 -6
  101. package/node_modules/emoji-regex/package.json +0 -50
  102. package/node_modules/emoji-regex/text.js +0 -6
  103. package/node_modules/find-up/index.d.ts +0 -137
  104. package/node_modules/find-up/index.js +0 -89
  105. package/node_modules/find-up/license +0 -9
  106. package/node_modules/find-up/package.json +0 -53
  107. package/node_modules/find-up/readme.md +0 -156
  108. package/node_modules/get-caller-file/LICENSE.md +0 -6
  109. package/node_modules/get-caller-file/README.md +0 -41
  110. package/node_modules/get-caller-file/index.d.ts +0 -2
  111. package/node_modules/get-caller-file/index.js +0 -22
  112. package/node_modules/get-caller-file/index.js.map +0 -1
  113. package/node_modules/get-caller-file/package.json +0 -42
  114. package/node_modules/is-fullwidth-code-point/index.d.ts +0 -17
  115. package/node_modules/is-fullwidth-code-point/index.js +0 -50
  116. package/node_modules/is-fullwidth-code-point/license +0 -9
  117. package/node_modules/is-fullwidth-code-point/package.json +0 -42
  118. package/node_modules/is-fullwidth-code-point/readme.md +0 -39
  119. package/node_modules/locate-path/index.d.ts +0 -83
  120. package/node_modules/locate-path/index.js +0 -65
  121. package/node_modules/locate-path/license +0 -9
  122. package/node_modules/locate-path/package.json +0 -45
  123. package/node_modules/locate-path/readme.md +0 -122
  124. package/node_modules/p-limit/index.d.ts +0 -38
  125. package/node_modules/p-limit/index.js +0 -57
  126. package/node_modules/p-limit/license +0 -9
  127. package/node_modules/p-limit/package.json +0 -52
  128. package/node_modules/p-limit/readme.md +0 -101
  129. package/node_modules/p-locate/index.d.ts +0 -64
  130. package/node_modules/p-locate/index.js +0 -52
  131. package/node_modules/p-locate/license +0 -9
  132. package/node_modules/p-locate/package.json +0 -53
  133. package/node_modules/p-locate/readme.md +0 -90
  134. package/node_modules/p-try/index.d.ts +0 -39
  135. package/node_modules/p-try/index.js +0 -9
  136. package/node_modules/p-try/license +0 -9
  137. package/node_modules/p-try/package.json +0 -42
  138. package/node_modules/p-try/readme.md +0 -58
  139. package/node_modules/path-exists/index.d.ts +0 -28
  140. package/node_modules/path-exists/index.js +0 -23
  141. package/node_modules/path-exists/license +0 -9
  142. package/node_modules/path-exists/package.json +0 -39
  143. package/node_modules/path-exists/readme.md +0 -52
  144. package/node_modules/pngjs/.eslintignore +0 -2
  145. package/node_modules/pngjs/.eslintrc.json +0 -19
  146. package/node_modules/pngjs/.prettierignore +0 -3
  147. package/node_modules/pngjs/LICENSE +0 -20
  148. package/node_modules/pngjs/README.md +0 -429
  149. package/node_modules/pngjs/browser.js +0 -16096
  150. package/node_modules/pngjs/coverage/lcov-report/base.css +0 -354
  151. package/node_modules/pngjs/coverage/lcov-report/bitmapper.js.html +0 -881
  152. package/node_modules/pngjs/coverage/lcov-report/bitpacker.js.html +0 -554
  153. package/node_modules/pngjs/coverage/lcov-report/block-navigation.js +0 -77
  154. package/node_modules/pngjs/coverage/lcov-report/chunkstream.js.html +0 -647
  155. package/node_modules/pngjs/coverage/lcov-report/constants.js.html +0 -176
  156. package/node_modules/pngjs/coverage/lcov-report/crc.js.html +0 -200
  157. package/node_modules/pngjs/coverage/lcov-report/favicon.png +0 -0
  158. package/node_modules/pngjs/coverage/lcov-report/filter-pack.js.html +0 -593
  159. package/node_modules/pngjs/coverage/lcov-report/filter-parse-async.js.html +0 -152
  160. package/node_modules/pngjs/coverage/lcov-report/filter-parse-sync.js.html +0 -143
  161. package/node_modules/pngjs/coverage/lcov-report/filter-parse.js.html +0 -611
  162. package/node_modules/pngjs/coverage/lcov-report/format-normaliser.js.html +0 -359
  163. package/node_modules/pngjs/coverage/lcov-report/index.html +0 -426
  164. package/node_modules/pngjs/coverage/lcov-report/interlace.js.html +0 -365
  165. package/node_modules/pngjs/coverage/lcov-report/packer-async.js.html +0 -230
  166. package/node_modules/pngjs/coverage/lcov-report/packer-sync.js.html +0 -248
  167. package/node_modules/pngjs/coverage/lcov-report/packer.js.html +0 -467
  168. package/node_modules/pngjs/coverage/lcov-report/paeth-predictor.js.html +0 -128
  169. package/node_modules/pngjs/coverage/lcov-report/parser-async.js.html +0 -575
  170. package/node_modules/pngjs/coverage/lcov-report/parser-sync.js.html +0 -404
  171. package/node_modules/pngjs/coverage/lcov-report/parser.js.html +0 -950
  172. package/node_modules/pngjs/coverage/lcov-report/png-sync.js.html +0 -116
  173. package/node_modules/pngjs/coverage/lcov-report/png.js.html +0 -662
  174. package/node_modules/pngjs/coverage/lcov-report/prettify.css +0 -101
  175. package/node_modules/pngjs/coverage/lcov-report/prettify.js +0 -1007
  176. package/node_modules/pngjs/coverage/lcov-report/sort-arrow-sprite.png +0 -0
  177. package/node_modules/pngjs/coverage/lcov-report/sorter.js +0 -169
  178. package/node_modules/pngjs/coverage/lcov-report/sync-inflate.js.html +0 -584
  179. package/node_modules/pngjs/coverage/lcov-report/sync-reader.js.html +0 -215
  180. package/node_modules/pngjs/coverage/lcov.info +0 -2177
  181. package/node_modules/pngjs/lib/bitmapper.js +0 -267
  182. package/node_modules/pngjs/lib/bitpacker.js +0 -158
  183. package/node_modules/pngjs/lib/chunkstream.js +0 -189
  184. package/node_modules/pngjs/lib/constants.js +0 -32
  185. package/node_modules/pngjs/lib/crc.js +0 -40
  186. package/node_modules/pngjs/lib/filter-pack.js +0 -171
  187. package/node_modules/pngjs/lib/filter-parse-async.js +0 -24
  188. package/node_modules/pngjs/lib/filter-parse-sync.js +0 -21
  189. package/node_modules/pngjs/lib/filter-parse.js +0 -177
  190. package/node_modules/pngjs/lib/format-normaliser.js +0 -93
  191. package/node_modules/pngjs/lib/interlace.js +0 -95
  192. package/node_modules/pngjs/lib/packer-async.js +0 -50
  193. package/node_modules/pngjs/lib/packer-sync.js +0 -56
  194. package/node_modules/pngjs/lib/packer.js +0 -129
  195. package/node_modules/pngjs/lib/paeth-predictor.js +0 -16
  196. package/node_modules/pngjs/lib/parser-async.js +0 -165
  197. package/node_modules/pngjs/lib/parser-sync.js +0 -108
  198. package/node_modules/pngjs/lib/parser.js +0 -290
  199. package/node_modules/pngjs/lib/png-sync.js +0 -12
  200. package/node_modules/pngjs/lib/png.js +0 -194
  201. package/node_modules/pngjs/lib/sync-inflate.js +0 -168
  202. package/node_modules/pngjs/lib/sync-reader.js +0 -45
  203. package/node_modules/pngjs/package.json +0 -73
  204. package/node_modules/qrcode/README.md +0 -770
  205. package/node_modules/qrcode/bin/qrcode +0 -159
  206. package/node_modules/qrcode/helper/to-sjis-browser.js +0 -2
  207. package/node_modules/qrcode/helper/to-sjis.js +0 -105
  208. package/node_modules/qrcode/lib/browser.js +0 -76
  209. package/node_modules/qrcode/lib/can-promise.js +0 -7
  210. package/node_modules/qrcode/lib/core/alignment-pattern.js +0 -83
  211. package/node_modules/qrcode/lib/core/alphanumeric-data.js +0 -59
  212. package/node_modules/qrcode/lib/core/bit-buffer.js +0 -37
  213. package/node_modules/qrcode/lib/core/bit-matrix.js +0 -65
  214. package/node_modules/qrcode/lib/core/byte-data.js +0 -30
  215. package/node_modules/qrcode/lib/core/error-correction-code.js +0 -135
  216. package/node_modules/qrcode/lib/core/error-correction-level.js +0 -50
  217. package/node_modules/qrcode/lib/core/finder-pattern.js +0 -22
  218. package/node_modules/qrcode/lib/core/format-info.js +0 -29
  219. package/node_modules/qrcode/lib/core/galois-field.js +0 -69
  220. package/node_modules/qrcode/lib/core/kanji-data.js +0 -54
  221. package/node_modules/qrcode/lib/core/mask-pattern.js +0 -234
  222. package/node_modules/qrcode/lib/core/mode.js +0 -167
  223. package/node_modules/qrcode/lib/core/numeric-data.js +0 -43
  224. package/node_modules/qrcode/lib/core/polynomial.js +0 -62
  225. package/node_modules/qrcode/lib/core/qrcode.js +0 -495
  226. package/node_modules/qrcode/lib/core/reed-solomon-encoder.js +0 -56
  227. package/node_modules/qrcode/lib/core/regex.js +0 -31
  228. package/node_modules/qrcode/lib/core/segments.js +0 -330
  229. package/node_modules/qrcode/lib/core/utils.js +0 -63
  230. package/node_modules/qrcode/lib/core/version-check.js +0 -9
  231. package/node_modules/qrcode/lib/core/version.js +0 -163
  232. package/node_modules/qrcode/lib/index.js +0 -12
  233. package/node_modules/qrcode/lib/renderer/canvas.js +0 -63
  234. package/node_modules/qrcode/lib/renderer/png.js +0 -78
  235. package/node_modules/qrcode/lib/renderer/svg-tag.js +0 -81
  236. package/node_modules/qrcode/lib/renderer/svg.js +0 -19
  237. package/node_modules/qrcode/lib/renderer/terminal/terminal-small.js +0 -85
  238. package/node_modules/qrcode/lib/renderer/terminal/terminal.js +0 -49
  239. package/node_modules/qrcode/lib/renderer/terminal.js +0 -9
  240. package/node_modules/qrcode/lib/renderer/utf8.js +0 -71
  241. package/node_modules/qrcode/lib/renderer/utils.js +0 -99
  242. package/node_modules/qrcode/lib/server.js +0 -138
  243. package/node_modules/qrcode/license +0 -10
  244. package/node_modules/qrcode/package.json +0 -77
  245. package/node_modules/require-directory/.jshintrc +0 -67
  246. package/node_modules/require-directory/.npmignore +0 -1
  247. package/node_modules/require-directory/.travis.yml +0 -3
  248. package/node_modules/require-directory/LICENSE +0 -22
  249. package/node_modules/require-directory/README.markdown +0 -184
  250. package/node_modules/require-directory/index.js +0 -86
  251. package/node_modules/require-directory/package.json +0 -40
  252. package/node_modules/require-main-filename/CHANGELOG.md +0 -26
  253. package/node_modules/require-main-filename/LICENSE.txt +0 -14
  254. package/node_modules/require-main-filename/README.md +0 -26
  255. package/node_modules/require-main-filename/index.js +0 -18
  256. package/node_modules/require-main-filename/package.json +0 -35
  257. package/node_modules/set-blocking/CHANGELOG.md +0 -26
  258. package/node_modules/set-blocking/LICENSE.txt +0 -14
  259. package/node_modules/set-blocking/README.md +0 -31
  260. package/node_modules/set-blocking/index.js +0 -7
  261. package/node_modules/set-blocking/package.json +0 -42
  262. package/node_modules/string-width/index.d.ts +0 -29
  263. package/node_modules/string-width/index.js +0 -47
  264. package/node_modules/string-width/license +0 -9
  265. package/node_modules/string-width/package.json +0 -56
  266. package/node_modules/string-width/readme.md +0 -50
  267. package/node_modules/strip-ansi/index.d.ts +0 -17
  268. package/node_modules/strip-ansi/index.js +0 -4
  269. package/node_modules/strip-ansi/license +0 -9
  270. package/node_modules/strip-ansi/package.json +0 -54
  271. package/node_modules/strip-ansi/readme.md +0 -46
  272. package/node_modules/which-module/LICENSE +0 -13
  273. package/node_modules/which-module/README.md +0 -58
  274. package/node_modules/which-module/index.js +0 -9
  275. package/node_modules/which-module/package.json +0 -41
  276. package/node_modules/wrap-ansi/index.js +0 -186
  277. package/node_modules/wrap-ansi/license +0 -9
  278. package/node_modules/wrap-ansi/package.json +0 -61
  279. package/node_modules/wrap-ansi/readme.md +0 -97
  280. package/node_modules/y18n/CHANGELOG.md +0 -35
  281. package/node_modules/y18n/LICENSE +0 -13
  282. package/node_modules/y18n/README.md +0 -109
  283. package/node_modules/y18n/index.js +0 -188
  284. package/node_modules/y18n/package.json +0 -39
  285. package/node_modules/yargs/CHANGELOG.md +0 -420
  286. package/node_modules/yargs/LICENSE +0 -21
  287. package/node_modules/yargs/README.md +0 -140
  288. package/node_modules/yargs/build/lib/apply-extends.d.ts +0 -2
  289. package/node_modules/yargs/build/lib/apply-extends.js +0 -65
  290. package/node_modules/yargs/build/lib/argsert.d.ts +0 -2
  291. package/node_modules/yargs/build/lib/argsert.js +0 -65
  292. package/node_modules/yargs/build/lib/command.d.ts +0 -64
  293. package/node_modules/yargs/build/lib/command.js +0 -416
  294. package/node_modules/yargs/build/lib/common-types.d.ts +0 -36
  295. package/node_modules/yargs/build/lib/common-types.js +0 -25
  296. package/node_modules/yargs/build/lib/completion-templates.d.ts +0 -2
  297. package/node_modules/yargs/build/lib/completion-templates.js +0 -50
  298. package/node_modules/yargs/build/lib/completion.d.ts +0 -21
  299. package/node_modules/yargs/build/lib/completion.js +0 -135
  300. package/node_modules/yargs/build/lib/is-promise.d.ts +0 -1
  301. package/node_modules/yargs/build/lib/is-promise.js +0 -9
  302. package/node_modules/yargs/build/lib/levenshtein.d.ts +0 -1
  303. package/node_modules/yargs/build/lib/levenshtein.js +0 -58
  304. package/node_modules/yargs/build/lib/middleware.d.ts +0 -10
  305. package/node_modules/yargs/build/lib/middleware.js +0 -57
  306. package/node_modules/yargs/build/lib/obj-filter.d.ts +0 -1
  307. package/node_modules/yargs/build/lib/obj-filter.js +0 -14
  308. package/node_modules/yargs/build/lib/parse-command.d.ts +0 -11
  309. package/node_modules/yargs/build/lib/parse-command.js +0 -36
  310. package/node_modules/yargs/build/lib/process-argv.d.ts +0 -2
  311. package/node_modules/yargs/build/lib/process-argv.js +0 -31
  312. package/node_modules/yargs/build/lib/usage.d.ts +0 -49
  313. package/node_modules/yargs/build/lib/usage.js +0 -540
  314. package/node_modules/yargs/build/lib/validation.d.ts +0 -34
  315. package/node_modules/yargs/build/lib/validation.js +0 -330
  316. package/node_modules/yargs/build/lib/yargs.d.ts +0 -274
  317. package/node_modules/yargs/build/lib/yargs.js +0 -1190
  318. package/node_modules/yargs/build/lib/yerror.d.ts +0 -4
  319. package/node_modules/yargs/build/lib/yerror.js +0 -11
  320. package/node_modules/yargs/index.js +0 -40
  321. package/node_modules/yargs/locales/be.json +0 -46
  322. package/node_modules/yargs/locales/de.json +0 -46
  323. package/node_modules/yargs/locales/en.json +0 -51
  324. package/node_modules/yargs/locales/es.json +0 -46
  325. package/node_modules/yargs/locales/fi.json +0 -49
  326. package/node_modules/yargs/locales/fr.json +0 -53
  327. package/node_modules/yargs/locales/hi.json +0 -49
  328. package/node_modules/yargs/locales/hu.json +0 -46
  329. package/node_modules/yargs/locales/id.json +0 -50
  330. package/node_modules/yargs/locales/it.json +0 -46
  331. package/node_modules/yargs/locales/ja.json +0 -51
  332. package/node_modules/yargs/locales/ko.json +0 -49
  333. package/node_modules/yargs/locales/nb.json +0 -44
  334. package/node_modules/yargs/locales/nl.json +0 -49
  335. package/node_modules/yargs/locales/nn.json +0 -44
  336. package/node_modules/yargs/locales/pirate.json +0 -13
  337. package/node_modules/yargs/locales/pl.json +0 -49
  338. package/node_modules/yargs/locales/pt.json +0 -45
  339. package/node_modules/yargs/locales/pt_BR.json +0 -48
  340. package/node_modules/yargs/locales/ru.json +0 -46
  341. package/node_modules/yargs/locales/th.json +0 -46
  342. package/node_modules/yargs/locales/tr.json +0 -48
  343. package/node_modules/yargs/locales/zh_CN.json +0 -48
  344. package/node_modules/yargs/locales/zh_TW.json +0 -47
  345. package/node_modules/yargs/package.json +0 -92
  346. package/node_modules/yargs/yargs.js +0 -14
  347. package/node_modules/yargs-parser/CHANGELOG.md +0 -601
  348. package/node_modules/yargs-parser/LICENSE.txt +0 -14
  349. package/node_modules/yargs-parser/README.md +0 -449
  350. package/node_modules/yargs-parser/index.js +0 -1032
  351. package/node_modules/yargs-parser/lib/tokenize-arg-string.js +0 -40
  352. package/node_modules/yargs-parser/package.json +0 -46
@@ -1,354 +0,0 @@
1
- 'use strict'
2
-
3
- const stringWidth = require('string-width')
4
- const stripAnsi = require('strip-ansi')
5
- const wrap = require('wrap-ansi')
6
-
7
- const align = {
8
- right: alignRight,
9
- center: alignCenter
10
- }
11
- const top = 0
12
- const right = 1
13
- const bottom = 2
14
- const left = 3
15
-
16
- class UI {
17
- constructor (opts) {
18
- this.width = opts.width
19
- this.wrap = opts.wrap
20
- this.rows = []
21
- }
22
-
23
- span (...args) {
24
- const cols = this.div(...args)
25
- cols.span = true
26
- }
27
-
28
- resetOutput () {
29
- this.rows = []
30
- }
31
-
32
- div (...args) {
33
- if (args.length === 0) {
34
- this.div('')
35
- }
36
-
37
- if (this.wrap && this._shouldApplyLayoutDSL(...args)) {
38
- return this._applyLayoutDSL(args[0])
39
- }
40
-
41
- const cols = args.map(arg => {
42
- if (typeof arg === 'string') {
43
- return this._colFromString(arg)
44
- }
45
-
46
- return arg
47
- })
48
-
49
- this.rows.push(cols)
50
- return cols
51
- }
52
-
53
- _shouldApplyLayoutDSL (...args) {
54
- return args.length === 1 && typeof args[0] === 'string' &&
55
- /[\t\n]/.test(args[0])
56
- }
57
-
58
- _applyLayoutDSL (str) {
59
- const rows = str.split('\n').map(row => row.split('\t'))
60
- let leftColumnWidth = 0
61
-
62
- // simple heuristic for layout, make sure the
63
- // second column lines up along the left-hand.
64
- // don't allow the first column to take up more
65
- // than 50% of the screen.
66
- rows.forEach(columns => {
67
- if (columns.length > 1 && stringWidth(columns[0]) > leftColumnWidth) {
68
- leftColumnWidth = Math.min(
69
- Math.floor(this.width * 0.5),
70
- stringWidth(columns[0])
71
- )
72
- }
73
- })
74
-
75
- // generate a table:
76
- // replacing ' ' with padding calculations.
77
- // using the algorithmically generated width.
78
- rows.forEach(columns => {
79
- this.div(...columns.map((r, i) => {
80
- return {
81
- text: r.trim(),
82
- padding: this._measurePadding(r),
83
- width: (i === 0 && columns.length > 1) ? leftColumnWidth : undefined
84
- }
85
- }))
86
- })
87
-
88
- return this.rows[this.rows.length - 1]
89
- }
90
-
91
- _colFromString (text) {
92
- return {
93
- text,
94
- padding: this._measurePadding(text)
95
- }
96
- }
97
-
98
- _measurePadding (str) {
99
- // measure padding without ansi escape codes
100
- const noAnsi = stripAnsi(str)
101
- return [0, noAnsi.match(/\s*$/)[0].length, 0, noAnsi.match(/^\s*/)[0].length]
102
- }
103
-
104
- toString () {
105
- const lines = []
106
-
107
- this.rows.forEach(row => {
108
- this.rowToString(row, lines)
109
- })
110
-
111
- // don't display any lines with the
112
- // hidden flag set.
113
- return lines
114
- .filter(line => !line.hidden)
115
- .map(line => line.text)
116
- .join('\n')
117
- }
118
-
119
- rowToString (row, lines) {
120
- this._rasterize(row).forEach((rrow, r) => {
121
- let str = ''
122
- rrow.forEach((col, c) => {
123
- const { width } = row[c] // the width with padding.
124
- const wrapWidth = this._negatePadding(row[c]) // the width without padding.
125
-
126
- let ts = col // temporary string used during alignment/padding.
127
-
128
- if (wrapWidth > stringWidth(col)) {
129
- ts += ' '.repeat(wrapWidth - stringWidth(col))
130
- }
131
-
132
- // align the string within its column.
133
- if (row[c].align && row[c].align !== 'left' && this.wrap) {
134
- ts = align[row[c].align](ts, wrapWidth)
135
- if (stringWidth(ts) < wrapWidth) {
136
- ts += ' '.repeat(width - stringWidth(ts) - 1)
137
- }
138
- }
139
-
140
- // apply border and padding to string.
141
- const padding = row[c].padding || [0, 0, 0, 0]
142
- if (padding[left]) {
143
- str += ' '.repeat(padding[left])
144
- }
145
-
146
- str += addBorder(row[c], ts, '| ')
147
- str += ts
148
- str += addBorder(row[c], ts, ' |')
149
- if (padding[right]) {
150
- str += ' '.repeat(padding[right])
151
- }
152
-
153
- // if prior row is span, try to render the
154
- // current row on the prior line.
155
- if (r === 0 && lines.length > 0) {
156
- str = this._renderInline(str, lines[lines.length - 1])
157
- }
158
- })
159
-
160
- // remove trailing whitespace.
161
- lines.push({
162
- text: str.replace(/ +$/, ''),
163
- span: row.span
164
- })
165
- })
166
-
167
- return lines
168
- }
169
-
170
- // if the full 'source' can render in
171
- // the target line, do so.
172
- _renderInline (source, previousLine) {
173
- const leadingWhitespace = source.match(/^ */)[0].length
174
- const target = previousLine.text
175
- const targetTextWidth = stringWidth(target.trimRight())
176
-
177
- if (!previousLine.span) {
178
- return source
179
- }
180
-
181
- // if we're not applying wrapping logic,
182
- // just always append to the span.
183
- if (!this.wrap) {
184
- previousLine.hidden = true
185
- return target + source
186
- }
187
-
188
- if (leadingWhitespace < targetTextWidth) {
189
- return source
190
- }
191
-
192
- previousLine.hidden = true
193
-
194
- return target.trimRight() + ' '.repeat(leadingWhitespace - targetTextWidth) + source.trimLeft()
195
- }
196
-
197
- _rasterize (row) {
198
- const rrows = []
199
- const widths = this._columnWidths(row)
200
- let wrapped
201
-
202
- // word wrap all columns, and create
203
- // a data-structure that is easy to rasterize.
204
- row.forEach((col, c) => {
205
- // leave room for left and right padding.
206
- col.width = widths[c]
207
- if (this.wrap) {
208
- wrapped = wrap(col.text, this._negatePadding(col), { hard: true }).split('\n')
209
- } else {
210
- wrapped = col.text.split('\n')
211
- }
212
-
213
- if (col.border) {
214
- wrapped.unshift('.' + '-'.repeat(this._negatePadding(col) + 2) + '.')
215
- wrapped.push("'" + '-'.repeat(this._negatePadding(col) + 2) + "'")
216
- }
217
-
218
- // add top and bottom padding.
219
- if (col.padding) {
220
- wrapped.unshift(...new Array(col.padding[top] || 0).fill(''))
221
- wrapped.push(...new Array(col.padding[bottom] || 0).fill(''))
222
- }
223
-
224
- wrapped.forEach((str, r) => {
225
- if (!rrows[r]) {
226
- rrows.push([])
227
- }
228
-
229
- const rrow = rrows[r]
230
-
231
- for (let i = 0; i < c; i++) {
232
- if (rrow[i] === undefined) {
233
- rrow.push('')
234
- }
235
- }
236
-
237
- rrow.push(str)
238
- })
239
- })
240
-
241
- return rrows
242
- }
243
-
244
- _negatePadding (col) {
245
- let wrapWidth = col.width
246
- if (col.padding) {
247
- wrapWidth -= (col.padding[left] || 0) + (col.padding[right] || 0)
248
- }
249
-
250
- if (col.border) {
251
- wrapWidth -= 4
252
- }
253
-
254
- return wrapWidth
255
- }
256
-
257
- _columnWidths (row) {
258
- if (!this.wrap) {
259
- return row.map(col => {
260
- return col.width || stringWidth(col.text)
261
- })
262
- }
263
-
264
- let unset = row.length
265
- let remainingWidth = this.width
266
-
267
- // column widths can be set in config.
268
- const widths = row.map(col => {
269
- if (col.width) {
270
- unset--
271
- remainingWidth -= col.width
272
- return col.width
273
- }
274
-
275
- return undefined
276
- })
277
-
278
- // any unset widths should be calculated.
279
- const unsetWidth = unset ? Math.floor(remainingWidth / unset) : 0
280
-
281
- return widths.map((w, i) => {
282
- if (w === undefined) {
283
- return Math.max(unsetWidth, _minWidth(row[i]))
284
- }
285
-
286
- return w
287
- })
288
- }
289
- }
290
-
291
- function addBorder (col, ts, style) {
292
- if (col.border) {
293
- if (/[.']-+[.']/.test(ts)) {
294
- return ''
295
- }
296
-
297
- if (ts.trim().length !== 0) {
298
- return style
299
- }
300
-
301
- return ' '
302
- }
303
-
304
- return ''
305
- }
306
-
307
- // calculates the minimum width of
308
- // a column, based on padding preferences.
309
- function _minWidth (col) {
310
- const padding = col.padding || []
311
- const minWidth = 1 + (padding[left] || 0) + (padding[right] || 0)
312
- if (col.border) {
313
- return minWidth + 4
314
- }
315
-
316
- return minWidth
317
- }
318
-
319
- function getWindowWidth () {
320
- /* istanbul ignore next: depends on terminal */
321
- if (typeof process === 'object' && process.stdout && process.stdout.columns) {
322
- return process.stdout.columns
323
- }
324
- }
325
-
326
- function alignRight (str, width) {
327
- str = str.trim()
328
- const strWidth = stringWidth(str)
329
-
330
- if (strWidth < width) {
331
- return ' '.repeat(width - strWidth) + str
332
- }
333
-
334
- return str
335
- }
336
-
337
- function alignCenter (str, width) {
338
- str = str.trim()
339
- const strWidth = stringWidth(str)
340
-
341
- /* istanbul ignore next */
342
- if (strWidth >= width) {
343
- return str
344
- }
345
-
346
- return ' '.repeat((width - strWidth) >> 1) + str
347
- }
348
-
349
- module.exports = function (opts = {}) {
350
- return new UI({
351
- width: opts.width || getWindowWidth() || /* istanbul ignore next */ 80,
352
- wrap: opts.wrap !== false
353
- })
354
- }
@@ -1,65 +0,0 @@
1
- {
2
- "name": "cliui",
3
- "version": "6.0.0",
4
- "description": "easily create complex multi-column command-line-interfaces",
5
- "main": "index.js",
6
- "scripts": {
7
- "pretest": "standard",
8
- "test": "nyc mocha",
9
- "coverage": "nyc --reporter=text-lcov mocha | coveralls"
10
- },
11
- "repository": {
12
- "type": "git",
13
- "url": "http://github.com/yargs/cliui.git"
14
- },
15
- "config": {
16
- "blanket": {
17
- "pattern": [
18
- "index.js"
19
- ],
20
- "data-cover-never": [
21
- "node_modules",
22
- "test"
23
- ],
24
- "output-reporter": "spec"
25
- }
26
- },
27
- "standard": {
28
- "ignore": [
29
- "**/example/**"
30
- ],
31
- "globals": [
32
- "it"
33
- ]
34
- },
35
- "keywords": [
36
- "cli",
37
- "command-line",
38
- "layout",
39
- "design",
40
- "console",
41
- "wrap",
42
- "table"
43
- ],
44
- "author": "Ben Coe <ben@npmjs.com>",
45
- "license": "ISC",
46
- "dependencies": {
47
- "string-width": "^4.2.0",
48
- "strip-ansi": "^6.0.0",
49
- "wrap-ansi": "^6.2.0"
50
- },
51
- "devDependencies": {
52
- "chai": "^4.2.0",
53
- "chalk": "^3.0.0",
54
- "coveralls": "^3.0.3",
55
- "mocha": "^6.2.2",
56
- "nyc": "^14.1.1",
57
- "standard": "^12.0.1"
58
- },
59
- "files": [
60
- "index.js"
61
- ],
62
- "engine": {
63
- "node": ">=8"
64
- }
65
- }
@@ -1,54 +0,0 @@
1
- # 1.0.0 - 2016-01-07
2
-
3
- - Removed: unused speed test
4
- - Added: Automatic routing between previously unsupported conversions
5
- ([#27](https://github.com/Qix-/color-convert/pull/27))
6
- - Removed: `xxx2xxx()` and `xxx2xxxRaw()` functions
7
- ([#27](https://github.com/Qix-/color-convert/pull/27))
8
- - Removed: `convert()` class
9
- ([#27](https://github.com/Qix-/color-convert/pull/27))
10
- - Changed: all functions to lookup dictionary
11
- ([#27](https://github.com/Qix-/color-convert/pull/27))
12
- - Changed: `ansi` to `ansi256`
13
- ([#27](https://github.com/Qix-/color-convert/pull/27))
14
- - Fixed: argument grouping for functions requiring only one argument
15
- ([#27](https://github.com/Qix-/color-convert/pull/27))
16
-
17
- # 0.6.0 - 2015-07-23
18
-
19
- - Added: methods to handle
20
- [ANSI](https://en.wikipedia.org/wiki/ANSI_escape_code#Colors) 16/256 colors:
21
- - rgb2ansi16
22
- - rgb2ansi
23
- - hsl2ansi16
24
- - hsl2ansi
25
- - hsv2ansi16
26
- - hsv2ansi
27
- - hwb2ansi16
28
- - hwb2ansi
29
- - cmyk2ansi16
30
- - cmyk2ansi
31
- - keyword2ansi16
32
- - keyword2ansi
33
- - ansi162rgb
34
- - ansi162hsl
35
- - ansi162hsv
36
- - ansi162hwb
37
- - ansi162cmyk
38
- - ansi162keyword
39
- - ansi2rgb
40
- - ansi2hsl
41
- - ansi2hsv
42
- - ansi2hwb
43
- - ansi2cmyk
44
- - ansi2keyword
45
- ([#18](https://github.com/harthur/color-convert/pull/18))
46
-
47
- # 0.5.3 - 2015-06-02
48
-
49
- - Fixed: hsl2hsv does not return `NaN` anymore when using `[0,0,0]`
50
- ([#15](https://github.com/harthur/color-convert/issues/15))
51
-
52
- ---
53
-
54
- Check out commit logs for older releases
@@ -1,21 +0,0 @@
1
- Copyright (c) 2011-2016 Heather Arthur <fayearthur@gmail.com>
2
-
3
- Permission is hereby granted, free of charge, to any person obtaining
4
- a copy of this software and associated documentation files (the
5
- "Software"), to deal in the Software without restriction, including
6
- without limitation the rights to use, copy, modify, merge, publish,
7
- distribute, sublicense, and/or sell copies of the Software, and to
8
- permit persons to whom the Software is furnished to do so, subject to
9
- the following conditions:
10
-
11
- The above copyright notice and this permission notice shall be
12
- included in all copies or substantial portions of the Software.
13
-
14
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
15
- EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
16
- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
17
- NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
18
- LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
19
- OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
20
- WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
21
-
@@ -1,68 +0,0 @@
1
- # color-convert
2
-
3
- [![Build Status](https://travis-ci.org/Qix-/color-convert.svg?branch=master)](https://travis-ci.org/Qix-/color-convert)
4
-
5
- Color-convert is a color conversion library for JavaScript and node.
6
- It converts all ways between `rgb`, `hsl`, `hsv`, `hwb`, `cmyk`, `ansi`, `ansi16`, `hex` strings, and CSS `keyword`s (will round to closest):
7
-
8
- ```js
9
- var convert = require('color-convert');
10
-
11
- convert.rgb.hsl(140, 200, 100); // [96, 48, 59]
12
- convert.keyword.rgb('blue'); // [0, 0, 255]
13
-
14
- var rgbChannels = convert.rgb.channels; // 3
15
- var cmykChannels = convert.cmyk.channels; // 4
16
- var ansiChannels = convert.ansi16.channels; // 1
17
- ```
18
-
19
- # Install
20
-
21
- ```console
22
- $ npm install color-convert
23
- ```
24
-
25
- # API
26
-
27
- Simply get the property of the _from_ and _to_ conversion that you're looking for.
28
-
29
- All functions have a rounded and unrounded variant. By default, return values are rounded. To get the unrounded (raw) results, simply tack on `.raw` to the function.
30
-
31
- All 'from' functions have a hidden property called `.channels` that indicates the number of channels the function expects (not including alpha).
32
-
33
- ```js
34
- var convert = require('color-convert');
35
-
36
- // Hex to LAB
37
- convert.hex.lab('DEADBF'); // [ 76, 21, -2 ]
38
- convert.hex.lab.raw('DEADBF'); // [ 75.56213190997677, 20.653827952644754, -2.290532499330533 ]
39
-
40
- // RGB to CMYK
41
- convert.rgb.cmyk(167, 255, 4); // [ 35, 0, 98, 0 ]
42
- convert.rgb.cmyk.raw(167, 255, 4); // [ 34.509803921568626, 0, 98.43137254901961, 0 ]
43
- ```
44
-
45
- ### Arrays
46
- All functions that accept multiple arguments also support passing an array.
47
-
48
- Note that this does **not** apply to functions that convert from a color that only requires one value (e.g. `keyword`, `ansi256`, `hex`, etc.)
49
-
50
- ```js
51
- var convert = require('color-convert');
52
-
53
- convert.rgb.hex(123, 45, 67); // '7B2D43'
54
- convert.rgb.hex([123, 45, 67]); // '7B2D43'
55
- ```
56
-
57
- ## Routing
58
-
59
- Conversions that don't have an _explicitly_ defined conversion (in [conversions.js](conversions.js)), but can be converted by means of sub-conversions (e.g. XYZ -> **RGB** -> CMYK), are automatically routed together. This allows just about any color model supported by `color-convert` to be converted to any other model, so long as a sub-conversion path exists. This is also true for conversions requiring more than one step in between (e.g. LCH -> **LAB** -> **XYZ** -> **RGB** -> Hex).
60
-
61
- Keep in mind that extensive conversions _may_ result in a loss of precision, and exist only to be complete. For a list of "direct" (single-step) conversions, see [conversions.js](conversions.js).
62
-
63
- # Contribute
64
-
65
- If there is a new model you would like to support, or want to add a direct conversion between two existing models, please send us a pull request.
66
-
67
- # License
68
- Copyright &copy; 2011-2016, Heather Arthur and Josh Junon. Licensed under the [MIT License](LICENSE).