@marktrue/dsh-mobile-remote 3.2.2-alpha.1 → 3.2.2-rc.1-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 (353) hide show
  1. package/DSH-Remote-v3.2.2.apk +4 -0
  2. package/README.md +6 -253
  3. package/manifest.json +21 -0
  4. package/package.json +12 -65
  5. package/CHANGELOG.md +0 -1223
  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 -930
  13. package/docs/04-security.md +0 -100
  14. package/docs/05-test-cases.md +0 -366
  15. package/docs/06-install-run.md +0 -372
  16. package/docs/07-user-manual.md +0 -66
  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 -223
  19. package/docs/10-release.md +0 -929
  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/docs/spec-app-auto-update.md +0 -143
  30. package/lib/account-usage.js +0 -145
  31. package/lib/app-alignment.js +0 -112
  32. package/lib/app-carrier-store.js +0 -1972
  33. package/lib/app-carrier.js +0 -609
  34. package/lib/client.js +0 -1174
  35. package/lib/desktop-form.js +0 -738
  36. package/lib/endpoint-registry.js +0 -165
  37. package/lib/git-read-bundled-provider.js +0 -255
  38. package/lib/git-read-service.js +0 -322
  39. package/lib/index.js +0 -9467
  40. package/lib/npm-update-source.js +0 -226
  41. package/lib/plugin-content-digest.js +0 -80
  42. package/lib/plugin-self-update.js +0 -997
  43. package/lib/plugin-update-controller.js +0 -274
  44. package/lib/plugin-update-log.js +0 -164
  45. package/lib/plugin-update-transaction.js +0 -322
  46. package/lib/plugin-update.js +0 -309
  47. package/lib/runtime-dependency-snapshot.js +0 -345
  48. package/lib/session-title-cache.js +0 -123
  49. package/lib/session-title-refresh.js +0 -261
  50. package/lib/tool-process.js +0 -20
  51. package/lib/update-fetch.js +0 -24
  52. package/lib/update-lock-arbiter.js +0 -170
  53. package/lib/update-supervisor.js +0 -346
  54. package/node_modules/ansi-regex/index.d.ts +0 -37
  55. package/node_modules/ansi-regex/index.js +0 -10
  56. package/node_modules/ansi-regex/license +0 -9
  57. package/node_modules/ansi-regex/package.json +0 -55
  58. package/node_modules/ansi-regex/readme.md +0 -78
  59. package/node_modules/ansi-styles/index.d.ts +0 -345
  60. package/node_modules/ansi-styles/index.js +0 -163
  61. package/node_modules/ansi-styles/license +0 -9
  62. package/node_modules/ansi-styles/package.json +0 -56
  63. package/node_modules/ansi-styles/readme.md +0 -152
  64. package/node_modules/camelcase/index.d.ts +0 -63
  65. package/node_modules/camelcase/index.js +0 -76
  66. package/node_modules/camelcase/license +0 -9
  67. package/node_modules/camelcase/package.json +0 -43
  68. package/node_modules/camelcase/readme.md +0 -99
  69. package/node_modules/cliui/CHANGELOG.md +0 -76
  70. package/node_modules/cliui/LICENSE.txt +0 -14
  71. package/node_modules/cliui/README.md +0 -115
  72. package/node_modules/cliui/index.js +0 -354
  73. package/node_modules/cliui/package.json +0 -65
  74. package/node_modules/color-convert/CHANGELOG.md +0 -54
  75. package/node_modules/color-convert/LICENSE +0 -21
  76. package/node_modules/color-convert/README.md +0 -68
  77. package/node_modules/color-convert/conversions.js +0 -839
  78. package/node_modules/color-convert/index.js +0 -81
  79. package/node_modules/color-convert/package.json +0 -48
  80. package/node_modules/color-convert/route.js +0 -97
  81. package/node_modules/color-name/LICENSE +0 -8
  82. package/node_modules/color-name/README.md +0 -11
  83. package/node_modules/color-name/index.js +0 -152
  84. package/node_modules/color-name/package.json +0 -28
  85. package/node_modules/decamelize/index.js +0 -13
  86. package/node_modules/decamelize/license +0 -21
  87. package/node_modules/decamelize/package.json +0 -38
  88. package/node_modules/decamelize/readme.md +0 -48
  89. package/node_modules/dijkstrajs/.travis.yml +0 -4
  90. package/node_modules/dijkstrajs/CONTRIBUTING.md +0 -8
  91. package/node_modules/dijkstrajs/LICENSE.md +0 -19
  92. package/node_modules/dijkstrajs/README.md +0 -18
  93. package/node_modules/dijkstrajs/dijkstra.js +0 -165
  94. package/node_modules/dijkstrajs/package.json +0 -60
  95. package/node_modules/dijkstrajs/test/dijkstra.test.js +0 -96
  96. package/node_modules/emoji-regex/LICENSE-MIT.txt +0 -20
  97. package/node_modules/emoji-regex/README.md +0 -73
  98. package/node_modules/emoji-regex/es2015/index.js +0 -6
  99. package/node_modules/emoji-regex/es2015/text.js +0 -6
  100. package/node_modules/emoji-regex/index.d.ts +0 -23
  101. package/node_modules/emoji-regex/index.js +0 -6
  102. package/node_modules/emoji-regex/package.json +0 -50
  103. package/node_modules/emoji-regex/text.js +0 -6
  104. package/node_modules/find-up/index.d.ts +0 -137
  105. package/node_modules/find-up/index.js +0 -89
  106. package/node_modules/find-up/license +0 -9
  107. package/node_modules/find-up/package.json +0 -53
  108. package/node_modules/find-up/readme.md +0 -156
  109. package/node_modules/get-caller-file/LICENSE.md +0 -6
  110. package/node_modules/get-caller-file/README.md +0 -41
  111. package/node_modules/get-caller-file/index.d.ts +0 -2
  112. package/node_modules/get-caller-file/index.js +0 -22
  113. package/node_modules/get-caller-file/index.js.map +0 -1
  114. package/node_modules/get-caller-file/package.json +0 -42
  115. package/node_modules/is-fullwidth-code-point/index.d.ts +0 -17
  116. package/node_modules/is-fullwidth-code-point/index.js +0 -50
  117. package/node_modules/is-fullwidth-code-point/license +0 -9
  118. package/node_modules/is-fullwidth-code-point/package.json +0 -42
  119. package/node_modules/is-fullwidth-code-point/readme.md +0 -39
  120. package/node_modules/locate-path/index.d.ts +0 -83
  121. package/node_modules/locate-path/index.js +0 -65
  122. package/node_modules/locate-path/license +0 -9
  123. package/node_modules/locate-path/package.json +0 -45
  124. package/node_modules/locate-path/readme.md +0 -122
  125. package/node_modules/p-limit/index.d.ts +0 -38
  126. package/node_modules/p-limit/index.js +0 -57
  127. package/node_modules/p-limit/license +0 -9
  128. package/node_modules/p-limit/package.json +0 -52
  129. package/node_modules/p-limit/readme.md +0 -101
  130. package/node_modules/p-locate/index.d.ts +0 -64
  131. package/node_modules/p-locate/index.js +0 -52
  132. package/node_modules/p-locate/license +0 -9
  133. package/node_modules/p-locate/package.json +0 -53
  134. package/node_modules/p-locate/readme.md +0 -90
  135. package/node_modules/p-try/index.d.ts +0 -39
  136. package/node_modules/p-try/index.js +0 -9
  137. package/node_modules/p-try/license +0 -9
  138. package/node_modules/p-try/package.json +0 -42
  139. package/node_modules/p-try/readme.md +0 -58
  140. package/node_modules/path-exists/index.d.ts +0 -28
  141. package/node_modules/path-exists/index.js +0 -23
  142. package/node_modules/path-exists/license +0 -9
  143. package/node_modules/path-exists/package.json +0 -39
  144. package/node_modules/path-exists/readme.md +0 -52
  145. package/node_modules/pngjs/.eslintignore +0 -2
  146. package/node_modules/pngjs/.eslintrc.json +0 -19
  147. package/node_modules/pngjs/.prettierignore +0 -3
  148. package/node_modules/pngjs/LICENSE +0 -20
  149. package/node_modules/pngjs/README.md +0 -429
  150. package/node_modules/pngjs/browser.js +0 -16096
  151. package/node_modules/pngjs/coverage/lcov-report/base.css +0 -354
  152. package/node_modules/pngjs/coverage/lcov-report/bitmapper.js.html +0 -881
  153. package/node_modules/pngjs/coverage/lcov-report/bitpacker.js.html +0 -554
  154. package/node_modules/pngjs/coverage/lcov-report/block-navigation.js +0 -77
  155. package/node_modules/pngjs/coverage/lcov-report/chunkstream.js.html +0 -647
  156. package/node_modules/pngjs/coverage/lcov-report/constants.js.html +0 -176
  157. package/node_modules/pngjs/coverage/lcov-report/crc.js.html +0 -200
  158. package/node_modules/pngjs/coverage/lcov-report/favicon.png +0 -0
  159. package/node_modules/pngjs/coverage/lcov-report/filter-pack.js.html +0 -593
  160. package/node_modules/pngjs/coverage/lcov-report/filter-parse-async.js.html +0 -152
  161. package/node_modules/pngjs/coverage/lcov-report/filter-parse-sync.js.html +0 -143
  162. package/node_modules/pngjs/coverage/lcov-report/filter-parse.js.html +0 -611
  163. package/node_modules/pngjs/coverage/lcov-report/format-normaliser.js.html +0 -359
  164. package/node_modules/pngjs/coverage/lcov-report/index.html +0 -426
  165. package/node_modules/pngjs/coverage/lcov-report/interlace.js.html +0 -365
  166. package/node_modules/pngjs/coverage/lcov-report/packer-async.js.html +0 -230
  167. package/node_modules/pngjs/coverage/lcov-report/packer-sync.js.html +0 -248
  168. package/node_modules/pngjs/coverage/lcov-report/packer.js.html +0 -467
  169. package/node_modules/pngjs/coverage/lcov-report/paeth-predictor.js.html +0 -128
  170. package/node_modules/pngjs/coverage/lcov-report/parser-async.js.html +0 -575
  171. package/node_modules/pngjs/coverage/lcov-report/parser-sync.js.html +0 -404
  172. package/node_modules/pngjs/coverage/lcov-report/parser.js.html +0 -950
  173. package/node_modules/pngjs/coverage/lcov-report/png-sync.js.html +0 -116
  174. package/node_modules/pngjs/coverage/lcov-report/png.js.html +0 -662
  175. package/node_modules/pngjs/coverage/lcov-report/prettify.css +0 -101
  176. package/node_modules/pngjs/coverage/lcov-report/prettify.js +0 -1007
  177. package/node_modules/pngjs/coverage/lcov-report/sort-arrow-sprite.png +0 -0
  178. package/node_modules/pngjs/coverage/lcov-report/sorter.js +0 -169
  179. package/node_modules/pngjs/coverage/lcov-report/sync-inflate.js.html +0 -584
  180. package/node_modules/pngjs/coverage/lcov-report/sync-reader.js.html +0 -215
  181. package/node_modules/pngjs/coverage/lcov.info +0 -2177
  182. package/node_modules/pngjs/lib/bitmapper.js +0 -267
  183. package/node_modules/pngjs/lib/bitpacker.js +0 -158
  184. package/node_modules/pngjs/lib/chunkstream.js +0 -189
  185. package/node_modules/pngjs/lib/constants.js +0 -32
  186. package/node_modules/pngjs/lib/crc.js +0 -40
  187. package/node_modules/pngjs/lib/filter-pack.js +0 -171
  188. package/node_modules/pngjs/lib/filter-parse-async.js +0 -24
  189. package/node_modules/pngjs/lib/filter-parse-sync.js +0 -21
  190. package/node_modules/pngjs/lib/filter-parse.js +0 -177
  191. package/node_modules/pngjs/lib/format-normaliser.js +0 -93
  192. package/node_modules/pngjs/lib/interlace.js +0 -95
  193. package/node_modules/pngjs/lib/packer-async.js +0 -50
  194. package/node_modules/pngjs/lib/packer-sync.js +0 -56
  195. package/node_modules/pngjs/lib/packer.js +0 -129
  196. package/node_modules/pngjs/lib/paeth-predictor.js +0 -16
  197. package/node_modules/pngjs/lib/parser-async.js +0 -165
  198. package/node_modules/pngjs/lib/parser-sync.js +0 -108
  199. package/node_modules/pngjs/lib/parser.js +0 -290
  200. package/node_modules/pngjs/lib/png-sync.js +0 -12
  201. package/node_modules/pngjs/lib/png.js +0 -194
  202. package/node_modules/pngjs/lib/sync-inflate.js +0 -168
  203. package/node_modules/pngjs/lib/sync-reader.js +0 -45
  204. package/node_modules/pngjs/package.json +0 -73
  205. package/node_modules/qrcode/README.md +0 -770
  206. package/node_modules/qrcode/bin/qrcode +0 -159
  207. package/node_modules/qrcode/helper/to-sjis-browser.js +0 -2
  208. package/node_modules/qrcode/helper/to-sjis.js +0 -105
  209. package/node_modules/qrcode/lib/browser.js +0 -76
  210. package/node_modules/qrcode/lib/can-promise.js +0 -7
  211. package/node_modules/qrcode/lib/core/alignment-pattern.js +0 -83
  212. package/node_modules/qrcode/lib/core/alphanumeric-data.js +0 -59
  213. package/node_modules/qrcode/lib/core/bit-buffer.js +0 -37
  214. package/node_modules/qrcode/lib/core/bit-matrix.js +0 -65
  215. package/node_modules/qrcode/lib/core/byte-data.js +0 -30
  216. package/node_modules/qrcode/lib/core/error-correction-code.js +0 -135
  217. package/node_modules/qrcode/lib/core/error-correction-level.js +0 -50
  218. package/node_modules/qrcode/lib/core/finder-pattern.js +0 -22
  219. package/node_modules/qrcode/lib/core/format-info.js +0 -29
  220. package/node_modules/qrcode/lib/core/galois-field.js +0 -69
  221. package/node_modules/qrcode/lib/core/kanji-data.js +0 -54
  222. package/node_modules/qrcode/lib/core/mask-pattern.js +0 -234
  223. package/node_modules/qrcode/lib/core/mode.js +0 -167
  224. package/node_modules/qrcode/lib/core/numeric-data.js +0 -43
  225. package/node_modules/qrcode/lib/core/polynomial.js +0 -62
  226. package/node_modules/qrcode/lib/core/qrcode.js +0 -495
  227. package/node_modules/qrcode/lib/core/reed-solomon-encoder.js +0 -56
  228. package/node_modules/qrcode/lib/core/regex.js +0 -31
  229. package/node_modules/qrcode/lib/core/segments.js +0 -330
  230. package/node_modules/qrcode/lib/core/utils.js +0 -63
  231. package/node_modules/qrcode/lib/core/version-check.js +0 -9
  232. package/node_modules/qrcode/lib/core/version.js +0 -163
  233. package/node_modules/qrcode/lib/index.js +0 -12
  234. package/node_modules/qrcode/lib/renderer/canvas.js +0 -63
  235. package/node_modules/qrcode/lib/renderer/png.js +0 -78
  236. package/node_modules/qrcode/lib/renderer/svg-tag.js +0 -81
  237. package/node_modules/qrcode/lib/renderer/svg.js +0 -19
  238. package/node_modules/qrcode/lib/renderer/terminal/terminal-small.js +0 -85
  239. package/node_modules/qrcode/lib/renderer/terminal/terminal.js +0 -49
  240. package/node_modules/qrcode/lib/renderer/terminal.js +0 -9
  241. package/node_modules/qrcode/lib/renderer/utf8.js +0 -71
  242. package/node_modules/qrcode/lib/renderer/utils.js +0 -99
  243. package/node_modules/qrcode/lib/server.js +0 -138
  244. package/node_modules/qrcode/license +0 -10
  245. package/node_modules/qrcode/package.json +0 -77
  246. package/node_modules/require-directory/.jshintrc +0 -67
  247. package/node_modules/require-directory/.npmignore +0 -1
  248. package/node_modules/require-directory/.travis.yml +0 -3
  249. package/node_modules/require-directory/LICENSE +0 -22
  250. package/node_modules/require-directory/README.markdown +0 -184
  251. package/node_modules/require-directory/index.js +0 -86
  252. package/node_modules/require-directory/package.json +0 -40
  253. package/node_modules/require-main-filename/CHANGELOG.md +0 -26
  254. package/node_modules/require-main-filename/LICENSE.txt +0 -14
  255. package/node_modules/require-main-filename/README.md +0 -26
  256. package/node_modules/require-main-filename/index.js +0 -18
  257. package/node_modules/require-main-filename/package.json +0 -35
  258. package/node_modules/set-blocking/CHANGELOG.md +0 -26
  259. package/node_modules/set-blocking/LICENSE.txt +0 -14
  260. package/node_modules/set-blocking/README.md +0 -31
  261. package/node_modules/set-blocking/index.js +0 -7
  262. package/node_modules/set-blocking/package.json +0 -42
  263. package/node_modules/string-width/index.d.ts +0 -29
  264. package/node_modules/string-width/index.js +0 -47
  265. package/node_modules/string-width/license +0 -9
  266. package/node_modules/string-width/package.json +0 -56
  267. package/node_modules/string-width/readme.md +0 -50
  268. package/node_modules/strip-ansi/index.d.ts +0 -17
  269. package/node_modules/strip-ansi/index.js +0 -4
  270. package/node_modules/strip-ansi/license +0 -9
  271. package/node_modules/strip-ansi/package.json +0 -54
  272. package/node_modules/strip-ansi/readme.md +0 -46
  273. package/node_modules/which-module/LICENSE +0 -13
  274. package/node_modules/which-module/README.md +0 -58
  275. package/node_modules/which-module/index.js +0 -9
  276. package/node_modules/which-module/package.json +0 -41
  277. package/node_modules/wrap-ansi/index.js +0 -186
  278. package/node_modules/wrap-ansi/license +0 -9
  279. package/node_modules/wrap-ansi/package.json +0 -61
  280. package/node_modules/wrap-ansi/readme.md +0 -97
  281. package/node_modules/y18n/CHANGELOG.md +0 -35
  282. package/node_modules/y18n/LICENSE +0 -13
  283. package/node_modules/y18n/README.md +0 -109
  284. package/node_modules/y18n/index.js +0 -188
  285. package/node_modules/y18n/package.json +0 -39
  286. package/node_modules/yargs/CHANGELOG.md +0 -420
  287. package/node_modules/yargs/LICENSE +0 -21
  288. package/node_modules/yargs/README.md +0 -140
  289. package/node_modules/yargs/build/lib/apply-extends.d.ts +0 -2
  290. package/node_modules/yargs/build/lib/apply-extends.js +0 -65
  291. package/node_modules/yargs/build/lib/argsert.d.ts +0 -2
  292. package/node_modules/yargs/build/lib/argsert.js +0 -65
  293. package/node_modules/yargs/build/lib/command.d.ts +0 -64
  294. package/node_modules/yargs/build/lib/command.js +0 -416
  295. package/node_modules/yargs/build/lib/common-types.d.ts +0 -36
  296. package/node_modules/yargs/build/lib/common-types.js +0 -25
  297. package/node_modules/yargs/build/lib/completion-templates.d.ts +0 -2
  298. package/node_modules/yargs/build/lib/completion-templates.js +0 -50
  299. package/node_modules/yargs/build/lib/completion.d.ts +0 -21
  300. package/node_modules/yargs/build/lib/completion.js +0 -135
  301. package/node_modules/yargs/build/lib/is-promise.d.ts +0 -1
  302. package/node_modules/yargs/build/lib/is-promise.js +0 -9
  303. package/node_modules/yargs/build/lib/levenshtein.d.ts +0 -1
  304. package/node_modules/yargs/build/lib/levenshtein.js +0 -58
  305. package/node_modules/yargs/build/lib/middleware.d.ts +0 -10
  306. package/node_modules/yargs/build/lib/middleware.js +0 -57
  307. package/node_modules/yargs/build/lib/obj-filter.d.ts +0 -1
  308. package/node_modules/yargs/build/lib/obj-filter.js +0 -14
  309. package/node_modules/yargs/build/lib/parse-command.d.ts +0 -11
  310. package/node_modules/yargs/build/lib/parse-command.js +0 -36
  311. package/node_modules/yargs/build/lib/process-argv.d.ts +0 -2
  312. package/node_modules/yargs/build/lib/process-argv.js +0 -31
  313. package/node_modules/yargs/build/lib/usage.d.ts +0 -49
  314. package/node_modules/yargs/build/lib/usage.js +0 -540
  315. package/node_modules/yargs/build/lib/validation.d.ts +0 -34
  316. package/node_modules/yargs/build/lib/validation.js +0 -330
  317. package/node_modules/yargs/build/lib/yargs.d.ts +0 -274
  318. package/node_modules/yargs/build/lib/yargs.js +0 -1190
  319. package/node_modules/yargs/build/lib/yerror.d.ts +0 -4
  320. package/node_modules/yargs/build/lib/yerror.js +0 -11
  321. package/node_modules/yargs/index.js +0 -40
  322. package/node_modules/yargs/locales/be.json +0 -46
  323. package/node_modules/yargs/locales/de.json +0 -46
  324. package/node_modules/yargs/locales/en.json +0 -51
  325. package/node_modules/yargs/locales/es.json +0 -46
  326. package/node_modules/yargs/locales/fi.json +0 -49
  327. package/node_modules/yargs/locales/fr.json +0 -53
  328. package/node_modules/yargs/locales/hi.json +0 -49
  329. package/node_modules/yargs/locales/hu.json +0 -46
  330. package/node_modules/yargs/locales/id.json +0 -50
  331. package/node_modules/yargs/locales/it.json +0 -46
  332. package/node_modules/yargs/locales/ja.json +0 -51
  333. package/node_modules/yargs/locales/ko.json +0 -49
  334. package/node_modules/yargs/locales/nb.json +0 -44
  335. package/node_modules/yargs/locales/nl.json +0 -49
  336. package/node_modules/yargs/locales/nn.json +0 -44
  337. package/node_modules/yargs/locales/pirate.json +0 -13
  338. package/node_modules/yargs/locales/pl.json +0 -49
  339. package/node_modules/yargs/locales/pt.json +0 -45
  340. package/node_modules/yargs/locales/pt_BR.json +0 -48
  341. package/node_modules/yargs/locales/ru.json +0 -46
  342. package/node_modules/yargs/locales/th.json +0 -46
  343. package/node_modules/yargs/locales/tr.json +0 -48
  344. package/node_modules/yargs/locales/zh_CN.json +0 -48
  345. package/node_modules/yargs/locales/zh_TW.json +0 -47
  346. package/node_modules/yargs/package.json +0 -92
  347. package/node_modules/yargs/yargs.js +0 -14
  348. package/node_modules/yargs-parser/CHANGELOG.md +0 -601
  349. package/node_modules/yargs-parser/LICENSE.txt +0 -14
  350. package/node_modules/yargs-parser/README.md +0 -449
  351. package/node_modules/yargs-parser/index.js +0 -1032
  352. package/node_modules/yargs-parser/lib/tokenize-arg-string.js +0 -40
  353. 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).