create-leo-app 0.7.2 → 0.7.3

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 (379) hide show
  1. package/package.json +10 -2
  2. package/template-extension/README.md +4 -0
  3. package/template-extension/package.json +15 -0
  4. package/template-extension/rollup.config.js +21 -0
  5. package/template-extension/src/offscreen.js +1 -0
  6. package/template-extension/src/service_worker.js +20 -0
  7. package/template-extension/src/worker.js +34 -0
  8. package/template-extension/static/manifest.json +16 -0
  9. package/template-extension/static/offscreen.html +9 -0
  10. package/template-nextjs-ts/README.md +19 -0
  11. package/template-nextjs-ts/_gitignore +35 -0
  12. package/template-nextjs-ts/next-env.d.ts +5 -0
  13. package/template-nextjs-ts/next.config.js +32 -0
  14. package/template-nextjs-ts/node_modules/@types/node/LICENSE +21 -0
  15. package/template-nextjs-ts/node_modules/@types/node/README.md +15 -0
  16. package/template-nextjs-ts/node_modules/@types/node/assert/strict.d.ts +8 -0
  17. package/template-nextjs-ts/node_modules/@types/node/assert.d.ts +1040 -0
  18. package/template-nextjs-ts/node_modules/@types/node/async_hooks.d.ts +541 -0
  19. package/template-nextjs-ts/node_modules/@types/node/buffer.d.ts +2301 -0
  20. package/template-nextjs-ts/node_modules/@types/node/child_process.d.ts +1544 -0
  21. package/template-nextjs-ts/node_modules/@types/node/cluster.d.ts +578 -0
  22. package/template-nextjs-ts/node_modules/@types/node/console.d.ts +452 -0
  23. package/template-nextjs-ts/node_modules/@types/node/constants.d.ts +19 -0
  24. package/template-nextjs-ts/node_modules/@types/node/crypto.d.ts +4524 -0
  25. package/template-nextjs-ts/node_modules/@types/node/dgram.d.ts +596 -0
  26. package/template-nextjs-ts/node_modules/@types/node/diagnostics_channel.d.ts +554 -0
  27. package/template-nextjs-ts/node_modules/@types/node/dns/promises.d.ts +476 -0
  28. package/template-nextjs-ts/node_modules/@types/node/dns.d.ts +864 -0
  29. package/template-nextjs-ts/node_modules/@types/node/dom-events.d.ts +124 -0
  30. package/template-nextjs-ts/node_modules/@types/node/domain.d.ts +170 -0
  31. package/template-nextjs-ts/node_modules/@types/node/events.d.ts +931 -0
  32. package/template-nextjs-ts/node_modules/@types/node/fs/promises.d.ts +1245 -0
  33. package/template-nextjs-ts/node_modules/@types/node/fs.d.ts +4317 -0
  34. package/template-nextjs-ts/node_modules/@types/node/globals.d.ts +503 -0
  35. package/template-nextjs-ts/node_modules/@types/node/globals.global.d.ts +1 -0
  36. package/template-nextjs-ts/node_modules/@types/node/http.d.ts +1908 -0
  37. package/template-nextjs-ts/node_modules/@types/node/http2.d.ts +2418 -0
  38. package/template-nextjs-ts/node_modules/@types/node/https.d.ts +550 -0
  39. package/template-nextjs-ts/node_modules/@types/node/index.d.ts +89 -0
  40. package/template-nextjs-ts/node_modules/@types/node/inspector.d.ts +3696 -0
  41. package/template-nextjs-ts/node_modules/@types/node/module.d.ts +315 -0
  42. package/template-nextjs-ts/node_modules/@types/node/net.d.ts +999 -0
  43. package/template-nextjs-ts/node_modules/@types/node/os.d.ts +495 -0
  44. package/template-nextjs-ts/node_modules/@types/node/package.json +217 -0
  45. package/template-nextjs-ts/node_modules/@types/node/path.d.ts +191 -0
  46. package/template-nextjs-ts/node_modules/@types/node/perf_hooks.d.ts +934 -0
  47. package/template-nextjs-ts/node_modules/@types/node/process.d.ts +1879 -0
  48. package/template-nextjs-ts/node_modules/@types/node/punycode.d.ts +117 -0
  49. package/template-nextjs-ts/node_modules/@types/node/querystring.d.ts +153 -0
  50. package/template-nextjs-ts/node_modules/@types/node/readline/promises.d.ts +150 -0
  51. package/template-nextjs-ts/node_modules/@types/node/readline.d.ts +540 -0
  52. package/template-nextjs-ts/node_modules/@types/node/repl.d.ts +430 -0
  53. package/template-nextjs-ts/node_modules/@types/node/sea.d.ts +153 -0
  54. package/template-nextjs-ts/node_modules/@types/node/stream/consumers.d.ts +12 -0
  55. package/template-nextjs-ts/node_modules/@types/node/stream/promises.d.ts +83 -0
  56. package/template-nextjs-ts/node_modules/@types/node/stream/web.d.ts +521 -0
  57. package/template-nextjs-ts/node_modules/@types/node/stream.d.ts +1707 -0
  58. package/template-nextjs-ts/node_modules/@types/node/string_decoder.d.ts +67 -0
  59. package/template-nextjs-ts/node_modules/@types/node/test.d.ts +1874 -0
  60. package/template-nextjs-ts/node_modules/@types/node/timers/promises.d.ts +97 -0
  61. package/template-nextjs-ts/node_modules/@types/node/timers.d.ts +240 -0
  62. package/template-nextjs-ts/node_modules/@types/node/tls.d.ts +1217 -0
  63. package/template-nextjs-ts/node_modules/@types/node/trace_events.d.ts +197 -0
  64. package/template-nextjs-ts/node_modules/@types/node/tty.d.ts +208 -0
  65. package/template-nextjs-ts/node_modules/@types/node/url.d.ts +952 -0
  66. package/template-nextjs-ts/node_modules/@types/node/util.d.ts +2298 -0
  67. package/template-nextjs-ts/node_modules/@types/node/v8.d.ts +808 -0
  68. package/template-nextjs-ts/node_modules/@types/node/vm.d.ts +924 -0
  69. package/template-nextjs-ts/node_modules/@types/node/wasi.d.ts +181 -0
  70. package/template-nextjs-ts/node_modules/@types/node/worker_threads.d.ts +694 -0
  71. package/template-nextjs-ts/node_modules/@types/node/zlib.d.ts +539 -0
  72. package/template-nextjs-ts/package.json +24 -0
  73. package/template-nextjs-ts/public/aleo.svg +8 -0
  74. package/template-nextjs-ts/public/next.svg +1 -0
  75. package/template-nextjs-ts/src/app/favicon.ico +0 -0
  76. package/template-nextjs-ts/src/app/globals.css +126 -0
  77. package/template-nextjs-ts/src/app/layout.tsx +22 -0
  78. package/template-nextjs-ts/src/app/page.module.css +160 -0
  79. package/template-nextjs-ts/src/app/page.tsx +94 -0
  80. package/template-nextjs-ts/src/app/worker.ts +47 -0
  81. package/template-nextjs-ts/tsconfig.json +27 -0
  82. package/template-node/README.md +5 -0
  83. package/template-node/_gitignore +24 -0
  84. package/template-node/package.json +12 -0
  85. package/template-node-ts/README.md +5 -0
  86. package/template-node-ts/_gitignore +24 -0
  87. package/template-node-ts/package.json +19 -0
  88. package/template-node-ts/rollup.config.js +19 -0
  89. package/template-node-ts/src/index.ts +65 -0
  90. package/template-node-ts/tsconfig.json +15 -0
  91. package/template-offline-public-transaction-ts/README.md +52 -0
  92. package/template-offline-public-transaction-ts/_gitignore +24 -0
  93. package/template-offline-public-transaction-ts/package.json +19 -0
  94. package/template-offline-public-transaction-ts/rollup.config.js +19 -0
  95. package/template-offline-public-transaction-ts/src/helpers.ts +70 -0
  96. package/template-offline-public-transaction-ts/src/index.ts +171 -0
  97. package/template-offline-public-transaction-ts/tsconfig.json +15 -0
  98. package/template-react-leo/.babelrc +6 -0
  99. package/template-react-leo/.eslintrc.cjs +20 -0
  100. package/template-react-leo/README.md +90 -0
  101. package/template-react-leo/_gitignore +24 -0
  102. package/template-react-leo/_headers +3 -0
  103. package/template-react-leo/helloworld/.env.example +2 -0
  104. package/template-react-leo/helloworld/README.md +13 -0
  105. package/template-react-leo/helloworld/build/main.aleo +7 -0
  106. package/template-react-leo/helloworld/build/program.json +6 -0
  107. package/template-react-leo/helloworld/inputs/helloworld.in +4 -0
  108. package/template-react-leo/helloworld/program.json +6 -0
  109. package/template-react-leo/helloworld/src/main.leo +7 -0
  110. package/template-react-leo/index.html +88 -0
  111. package/template-react-leo/install.sh +30 -0
  112. package/template-react-leo/package.json +44 -0
  113. package/template-react-leo/public/favicon.ico +0 -0
  114. package/template-react-leo/src/App.css +42 -0
  115. package/template-react-leo/src/App.jsx +103 -0
  116. package/template-react-leo/src/assets/aleo.svg +5 -0
  117. package/template-react-leo/src/assets/react.svg +1 -0
  118. package/template-react-leo/src/index.css +69 -0
  119. package/template-react-leo/src/main.jsx +10 -0
  120. package/template-react-leo/src/workers/AleoWorker.js +20 -0
  121. package/template-react-leo/src/workers/worker.js +72 -0
  122. package/template-react-leo/vite.config.js +16 -0
  123. package/template-react-leo/webpack.config.js +102 -0
  124. package/template-react-managed-worker/.babelrc +6 -0
  125. package/template-react-managed-worker/.eslintrc.cjs +20 -0
  126. package/template-react-managed-worker/README.md +8 -0
  127. package/template-react-managed-worker/_gitignore +24 -0
  128. package/template-react-managed-worker/index.html +88 -0
  129. package/template-react-managed-worker/package.json +41 -0
  130. package/template-react-managed-worker/public/favicon.ico +0 -0
  131. package/template-react-managed-worker/src/App.css +42 -0
  132. package/template-react-managed-worker/src/App.jsx +78 -0
  133. package/template-react-managed-worker/src/assets/aleo.png +0 -0
  134. package/template-react-managed-worker/src/assets/react.svg +1 -0
  135. package/template-react-managed-worker/src/index.css +69 -0
  136. package/template-react-managed-worker/src/main.jsx +10 -0
  137. package/template-react-managed-worker/vite.config.js +20 -0
  138. package/template-react-managed-worker/webpack.config.js +90 -0
  139. package/template-react-ts/.babelrc +7 -0
  140. package/template-react-ts/.eslintrc.cjs +20 -0
  141. package/template-react-ts/README.md +90 -0
  142. package/template-react-ts/_gitignore +24 -0
  143. package/template-react-ts/_headers +3 -0
  144. package/template-react-ts/helloworld/.env.example +2 -0
  145. package/template-react-ts/helloworld/README.md +13 -0
  146. package/template-react-ts/helloworld/build/main.aleo +7 -0
  147. package/template-react-ts/helloworld/build/program.json +6 -0
  148. package/template-react-ts/helloworld/inputs/helloworld.in +4 -0
  149. package/template-react-ts/helloworld/program.json +6 -0
  150. package/template-react-ts/helloworld/src/main.leo +7 -0
  151. package/template-react-ts/index.html +88 -0
  152. package/template-react-ts/install.sh +30 -0
  153. package/template-react-ts/node_modules/@types/node/LICENSE +21 -0
  154. package/template-react-ts/node_modules/@types/node/README.md +15 -0
  155. package/template-react-ts/node_modules/@types/node/assert/strict.d.ts +8 -0
  156. package/template-react-ts/node_modules/@types/node/assert.d.ts +1040 -0
  157. package/template-react-ts/node_modules/@types/node/async_hooks.d.ts +541 -0
  158. package/template-react-ts/node_modules/@types/node/buffer.d.ts +2301 -0
  159. package/template-react-ts/node_modules/@types/node/child_process.d.ts +1544 -0
  160. package/template-react-ts/node_modules/@types/node/cluster.d.ts +578 -0
  161. package/template-react-ts/node_modules/@types/node/console.d.ts +452 -0
  162. package/template-react-ts/node_modules/@types/node/constants.d.ts +19 -0
  163. package/template-react-ts/node_modules/@types/node/crypto.d.ts +4524 -0
  164. package/template-react-ts/node_modules/@types/node/dgram.d.ts +596 -0
  165. package/template-react-ts/node_modules/@types/node/diagnostics_channel.d.ts +554 -0
  166. package/template-react-ts/node_modules/@types/node/dns/promises.d.ts +476 -0
  167. package/template-react-ts/node_modules/@types/node/dns.d.ts +864 -0
  168. package/template-react-ts/node_modules/@types/node/dom-events.d.ts +124 -0
  169. package/template-react-ts/node_modules/@types/node/domain.d.ts +170 -0
  170. package/template-react-ts/node_modules/@types/node/events.d.ts +931 -0
  171. package/template-react-ts/node_modules/@types/node/fs/promises.d.ts +1245 -0
  172. package/template-react-ts/node_modules/@types/node/fs.d.ts +4317 -0
  173. package/template-react-ts/node_modules/@types/node/globals.d.ts +503 -0
  174. package/template-react-ts/node_modules/@types/node/globals.global.d.ts +1 -0
  175. package/template-react-ts/node_modules/@types/node/http.d.ts +1908 -0
  176. package/template-react-ts/node_modules/@types/node/http2.d.ts +2418 -0
  177. package/template-react-ts/node_modules/@types/node/https.d.ts +550 -0
  178. package/template-react-ts/node_modules/@types/node/index.d.ts +89 -0
  179. package/template-react-ts/node_modules/@types/node/inspector.d.ts +3696 -0
  180. package/template-react-ts/node_modules/@types/node/module.d.ts +315 -0
  181. package/template-react-ts/node_modules/@types/node/net.d.ts +999 -0
  182. package/template-react-ts/node_modules/@types/node/os.d.ts +495 -0
  183. package/template-react-ts/node_modules/@types/node/package.json +217 -0
  184. package/template-react-ts/node_modules/@types/node/path.d.ts +191 -0
  185. package/template-react-ts/node_modules/@types/node/perf_hooks.d.ts +934 -0
  186. package/template-react-ts/node_modules/@types/node/process.d.ts +1879 -0
  187. package/template-react-ts/node_modules/@types/node/punycode.d.ts +117 -0
  188. package/template-react-ts/node_modules/@types/node/querystring.d.ts +153 -0
  189. package/template-react-ts/node_modules/@types/node/readline/promises.d.ts +150 -0
  190. package/template-react-ts/node_modules/@types/node/readline.d.ts +540 -0
  191. package/template-react-ts/node_modules/@types/node/repl.d.ts +430 -0
  192. package/template-react-ts/node_modules/@types/node/sea.d.ts +153 -0
  193. package/template-react-ts/node_modules/@types/node/stream/consumers.d.ts +12 -0
  194. package/template-react-ts/node_modules/@types/node/stream/promises.d.ts +83 -0
  195. package/template-react-ts/node_modules/@types/node/stream/web.d.ts +521 -0
  196. package/template-react-ts/node_modules/@types/node/stream.d.ts +1707 -0
  197. package/template-react-ts/node_modules/@types/node/string_decoder.d.ts +67 -0
  198. package/template-react-ts/node_modules/@types/node/test.d.ts +1874 -0
  199. package/template-react-ts/node_modules/@types/node/timers/promises.d.ts +97 -0
  200. package/template-react-ts/node_modules/@types/node/timers.d.ts +240 -0
  201. package/template-react-ts/node_modules/@types/node/tls.d.ts +1217 -0
  202. package/template-react-ts/node_modules/@types/node/trace_events.d.ts +197 -0
  203. package/template-react-ts/node_modules/@types/node/tty.d.ts +208 -0
  204. package/template-react-ts/node_modules/@types/node/url.d.ts +952 -0
  205. package/template-react-ts/node_modules/@types/node/util.d.ts +2298 -0
  206. package/template-react-ts/node_modules/@types/node/v8.d.ts +808 -0
  207. package/template-react-ts/node_modules/@types/node/vm.d.ts +924 -0
  208. package/template-react-ts/node_modules/@types/node/wasi.d.ts +181 -0
  209. package/template-react-ts/node_modules/@types/node/worker_threads.d.ts +694 -0
  210. package/template-react-ts/node_modules/@types/node/zlib.d.ts +539 -0
  211. package/template-react-ts/node_modules/diff/CONTRIBUTING.md +39 -0
  212. package/template-react-ts/node_modules/diff/LICENSE +31 -0
  213. package/template-react-ts/node_modules/diff/README.md +207 -0
  214. package/template-react-ts/node_modules/diff/dist/diff.js +1585 -0
  215. package/template-react-ts/node_modules/diff/dist/diff.min.js +38 -0
  216. package/template-react-ts/node_modules/diff/lib/convert/dmp.js +32 -0
  217. package/template-react-ts/node_modules/diff/lib/convert/xml.js +42 -0
  218. package/template-react-ts/node_modules/diff/lib/diff/array.js +45 -0
  219. package/template-react-ts/node_modules/diff/lib/diff/base.js +304 -0
  220. package/template-react-ts/node_modules/diff/lib/diff/character.js +37 -0
  221. package/template-react-ts/node_modules/diff/lib/diff/css.js +41 -0
  222. package/template-react-ts/node_modules/diff/lib/diff/json.js +163 -0
  223. package/template-react-ts/node_modules/diff/lib/diff/line.js +89 -0
  224. package/template-react-ts/node_modules/diff/lib/diff/sentence.js +41 -0
  225. package/template-react-ts/node_modules/diff/lib/diff/word.js +107 -0
  226. package/template-react-ts/node_modules/diff/lib/index.es6.js +1519 -0
  227. package/template-react-ts/node_modules/diff/lib/index.js +216 -0
  228. package/template-react-ts/node_modules/diff/lib/patch/apply.js +243 -0
  229. package/template-react-ts/node_modules/diff/lib/patch/create.js +247 -0
  230. package/template-react-ts/node_modules/diff/lib/patch/merge.js +609 -0
  231. package/template-react-ts/node_modules/diff/lib/patch/parse.js +156 -0
  232. package/template-react-ts/node_modules/diff/lib/util/array.js +32 -0
  233. package/template-react-ts/node_modules/diff/lib/util/distance-iterator.js +57 -0
  234. package/template-react-ts/node_modules/diff/lib/util/params.js +24 -0
  235. package/template-react-ts/node_modules/diff/package.json +73 -0
  236. package/template-react-ts/node_modules/diff/release-notes.md +261 -0
  237. package/template-react-ts/node_modules/diff/runtime.js +3 -0
  238. package/template-react-ts/node_modules/ts-node/LICENSE +21 -0
  239. package/template-react-ts/node_modules/ts-node/README.md +1442 -0
  240. package/template-react-ts/node_modules/ts-node/child-loader.mjs +8 -0
  241. package/template-react-ts/node_modules/ts-node/dist/bin-cwd.d.ts +2 -0
  242. package/template-react-ts/node_modules/ts-node/dist/bin-cwd.js +6 -0
  243. package/template-react-ts/node_modules/ts-node/dist/bin-cwd.js.map +1 -0
  244. package/template-react-ts/node_modules/ts-node/dist/bin-esm.d.ts +2 -0
  245. package/template-react-ts/node_modules/ts-node/dist/bin-esm.js +6 -0
  246. package/template-react-ts/node_modules/ts-node/dist/bin-esm.js.map +1 -0
  247. package/template-react-ts/node_modules/ts-node/dist/bin-script-deprecated.d.ts +2 -0
  248. package/template-react-ts/node_modules/ts-node/dist/bin-script-deprecated.js +7 -0
  249. package/template-react-ts/node_modules/ts-node/dist/bin-script-deprecated.js.map +1 -0
  250. package/template-react-ts/node_modules/ts-node/dist/bin-script.d.ts +2 -0
  251. package/template-react-ts/node_modules/ts-node/dist/bin-script.js +6 -0
  252. package/template-react-ts/node_modules/ts-node/dist/bin-script.js.map +1 -0
  253. package/template-react-ts/node_modules/ts-node/dist/bin-transpile.d.ts +2 -0
  254. package/template-react-ts/node_modules/ts-node/dist/bin-transpile.js +6 -0
  255. package/template-react-ts/node_modules/ts-node/dist/bin-transpile.js.map +1 -0
  256. package/template-react-ts/node_modules/ts-node/dist/bin.d.ts +11 -0
  257. package/template-react-ts/node_modules/ts-node/dist/bin.js +581 -0
  258. package/template-react-ts/node_modules/ts-node/dist/bin.js.map +1 -0
  259. package/template-react-ts/node_modules/ts-node/dist/child/argv-payload.d.ts +1 -0
  260. package/template-react-ts/node_modules/ts-node/dist/child/argv-payload.js +19 -0
  261. package/template-react-ts/node_modules/ts-node/dist/child/argv-payload.js.map +1 -0
  262. package/template-react-ts/node_modules/ts-node/dist/child/child-entrypoint.d.ts +1 -0
  263. package/template-react-ts/node_modules/ts-node/dist/child/child-entrypoint.js +24 -0
  264. package/template-react-ts/node_modules/ts-node/dist/child/child-entrypoint.js.map +1 -0
  265. package/template-react-ts/node_modules/ts-node/dist/child/child-loader.d.ts +1 -0
  266. package/template-react-ts/node_modules/ts-node/dist/child/child-loader.js +32 -0
  267. package/template-react-ts/node_modules/ts-node/dist/child/child-loader.js.map +1 -0
  268. package/template-react-ts/node_modules/ts-node/dist/child/child-require.d.ts +7 -0
  269. package/template-react-ts/node_modules/ts-node/dist/child/child-require.js +22 -0
  270. package/template-react-ts/node_modules/ts-node/dist/child/child-require.js.map +1 -0
  271. package/template-react-ts/node_modules/ts-node/dist/child/spawn-child.d.ts +1 -0
  272. package/template-react-ts/node_modules/ts-node/dist/child/spawn-child.js +49 -0
  273. package/template-react-ts/node_modules/ts-node/dist/child/spawn-child.js.map +1 -0
  274. package/template-react-ts/node_modules/ts-node/dist/cjs-resolve-hooks.d.ts +1 -0
  275. package/template-react-ts/node_modules/ts-node/dist/cjs-resolve-hooks.js +29 -0
  276. package/template-react-ts/node_modules/ts-node/dist/cjs-resolve-hooks.js.map +1 -0
  277. package/template-react-ts/node_modules/ts-node/dist/configuration.d.ts +1 -0
  278. package/template-react-ts/node_modules/ts-node/dist/configuration.js +308 -0
  279. package/template-react-ts/node_modules/ts-node/dist/configuration.js.map +1 -0
  280. package/template-react-ts/node_modules/ts-node/dist/esm.d.ts +53 -0
  281. package/template-react-ts/node_modules/ts-node/dist/esm.js +228 -0
  282. package/template-react-ts/node_modules/ts-node/dist/esm.js.map +1 -0
  283. package/template-react-ts/node_modules/ts-node/dist/file-extensions.d.ts +1 -0
  284. package/template-react-ts/node_modules/ts-node/dist/file-extensions.js +133 -0
  285. package/template-react-ts/node_modules/ts-node/dist/file-extensions.js.map +1 -0
  286. package/template-react-ts/node_modules/ts-node/dist/index.d.ts +332 -0
  287. package/template-react-ts/node_modules/ts-node/dist/index.js +953 -0
  288. package/template-react-ts/node_modules/ts-node/dist/index.js.map +1 -0
  289. package/template-react-ts/node_modules/ts-node/dist/module-type-classifier.d.ts +1 -0
  290. package/template-react-ts/node_modules/ts-node/dist/module-type-classifier.js +64 -0
  291. package/template-react-ts/node_modules/ts-node/dist/module-type-classifier.js.map +1 -0
  292. package/template-react-ts/node_modules/ts-node/dist/node-module-type-classifier.d.ts +1 -0
  293. package/template-react-ts/node_modules/ts-node/dist/node-module-type-classifier.js +39 -0
  294. package/template-react-ts/node_modules/ts-node/dist/node-module-type-classifier.js.map +1 -0
  295. package/template-react-ts/node_modules/ts-node/dist/repl.d.ts +78 -0
  296. package/template-react-ts/node_modules/ts-node/dist/repl.js +561 -0
  297. package/template-react-ts/node_modules/ts-node/dist/repl.js.map +1 -0
  298. package/template-react-ts/node_modules/ts-node/dist/resolver-functions.d.ts +1 -0
  299. package/template-react-ts/node_modules/ts-node/dist/resolver-functions.js +143 -0
  300. package/template-react-ts/node_modules/ts-node/dist/resolver-functions.js.map +1 -0
  301. package/template-react-ts/node_modules/ts-node/dist/transpilers/swc.d.ts +11 -0
  302. package/template-react-ts/node_modules/ts-node/dist/transpilers/swc.js +218 -0
  303. package/template-react-ts/node_modules/ts-node/dist/transpilers/swc.js.map +1 -0
  304. package/template-react-ts/node_modules/ts-node/dist/transpilers/types.d.ts +35 -0
  305. package/template-react-ts/node_modules/ts-node/dist/transpilers/types.js +3 -0
  306. package/template-react-ts/node_modules/ts-node/dist/transpilers/types.js.map +1 -0
  307. package/template-react-ts/node_modules/ts-node/dist/ts-compiler-types.d.ts +63 -0
  308. package/template-react-ts/node_modules/ts-node/dist/ts-compiler-types.js +3 -0
  309. package/template-react-ts/node_modules/ts-node/dist/ts-compiler-types.js.map +1 -0
  310. package/template-react-ts/node_modules/ts-node/dist/ts-internals.d.ts +6 -0
  311. package/template-react-ts/node_modules/ts-node/dist/ts-internals.js +321 -0
  312. package/template-react-ts/node_modules/ts-node/dist/ts-internals.js.map +1 -0
  313. package/template-react-ts/node_modules/ts-node/dist/ts-transpile-module.d.ts +1 -0
  314. package/template-react-ts/node_modules/ts-node/dist/ts-transpile-module.js +100 -0
  315. package/template-react-ts/node_modules/ts-node/dist/ts-transpile-module.js.map +1 -0
  316. package/template-react-ts/node_modules/ts-node/dist/tsconfig-schema.d.ts +13 -0
  317. package/template-react-ts/node_modules/ts-node/dist/tsconfig-schema.js +3 -0
  318. package/template-react-ts/node_modules/ts-node/dist/tsconfig-schema.js.map +1 -0
  319. package/template-react-ts/node_modules/ts-node/dist/tsconfigs.d.ts +1 -0
  320. package/template-react-ts/node_modules/ts-node/dist/tsconfigs.js +36 -0
  321. package/template-react-ts/node_modules/ts-node/dist/tsconfigs.js.map +1 -0
  322. package/template-react-ts/node_modules/ts-node/dist/util.d.ts +4 -0
  323. package/template-react-ts/node_modules/ts-node/dist/util.js +175 -0
  324. package/template-react-ts/node_modules/ts-node/dist/util.js.map +1 -0
  325. package/template-react-ts/node_modules/ts-node/dist-raw/NODE-LICENSE.md +24 -0
  326. package/template-react-ts/node_modules/ts-node/dist-raw/README.md +36 -0
  327. package/template-react-ts/node_modules/ts-node/dist-raw/node-internal-constants.js +4 -0
  328. package/template-react-ts/node_modules/ts-node/dist-raw/node-internal-errors.js +82 -0
  329. package/template-react-ts/node_modules/ts-node/dist-raw/node-internal-modules-cjs-helpers.js +89 -0
  330. package/template-react-ts/node_modules/ts-node/dist-raw/node-internal-modules-cjs-loader.js +593 -0
  331. package/template-react-ts/node_modules/ts-node/dist-raw/node-internal-modules-esm-get_format.js +106 -0
  332. package/template-react-ts/node_modules/ts-node/dist-raw/node-internal-modules-esm-resolve.js +962 -0
  333. package/template-react-ts/node_modules/ts-node/dist-raw/node-internal-modules-package_json_reader.js +44 -0
  334. package/template-react-ts/node_modules/ts-node/dist-raw/node-internal-repl-await.js +254 -0
  335. package/template-react-ts/node_modules/ts-node/dist-raw/node-internalBinding-fs.js +58 -0
  336. package/template-react-ts/node_modules/ts-node/dist-raw/node-nativemodule.js +9 -0
  337. package/template-react-ts/node_modules/ts-node/dist-raw/node-options.js +103 -0
  338. package/template-react-ts/node_modules/ts-node/dist-raw/node-primordials.js +37 -0
  339. package/template-react-ts/node_modules/ts-node/dist-raw/runmain-hack.js +9 -0
  340. package/template-react-ts/node_modules/ts-node/esm/transpile-only.mjs +8 -0
  341. package/template-react-ts/node_modules/ts-node/esm.mjs +8 -0
  342. package/template-react-ts/node_modules/ts-node/node10/tsconfig.json +3 -0
  343. package/template-react-ts/node_modules/ts-node/node12/tsconfig.json +3 -0
  344. package/template-react-ts/node_modules/ts-node/node14/tsconfig.json +3 -0
  345. package/template-react-ts/node_modules/ts-node/node16/tsconfig.json +3 -0
  346. package/template-react-ts/node_modules/ts-node/package.json +182 -0
  347. package/template-react-ts/node_modules/ts-node/register/files.js +3 -0
  348. package/template-react-ts/node_modules/ts-node/register/index.js +1 -0
  349. package/template-react-ts/node_modules/ts-node/register/transpile-only.js +3 -0
  350. package/template-react-ts/node_modules/ts-node/register/type-check.js +3 -0
  351. package/template-react-ts/node_modules/ts-node/transpilers/swc-experimental.js +1 -0
  352. package/template-react-ts/node_modules/ts-node/transpilers/swc.js +1 -0
  353. package/template-react-ts/node_modules/ts-node/tsconfig.schema.json +183 -0
  354. package/template-react-ts/node_modules/ts-node/tsconfig.schemastore-schema.json +1326 -0
  355. package/template-react-ts/package.json +49 -0
  356. package/template-react-ts/public/favicon.ico +0 -0
  357. package/template-react-ts/src/App.css +42 -0
  358. package/template-react-ts/src/App.tsx +103 -0
  359. package/template-react-ts/src/assets/aleo.svg +5 -0
  360. package/template-react-ts/src/assets/react.svg +1 -0
  361. package/template-react-ts/src/custom.d.ts +16 -0
  362. package/template-react-ts/src/index.css +69 -0
  363. package/template-react-ts/src/main.tsx +10 -0
  364. package/template-react-ts/src/workers/AleoWorker.ts +21 -0
  365. package/template-react-ts/src/workers/worker.ts +73 -0
  366. package/template-react-ts/tsconfig.json +16 -0
  367. package/template-react-ts/vite.config.ts +16 -0
  368. package/template-react-ts/webpack.config.ts +112 -0
  369. package/template-vanilla/_gitignore +24 -0
  370. package/template-vanilla/_headers +3 -0
  371. package/template-vanilla/index.html +13 -0
  372. package/template-vanilla/javascript.svg +1 -0
  373. package/template-vanilla/main.js +48 -0
  374. package/template-vanilla/package.json +16 -0
  375. package/template-vanilla/public/aleo.svg +76 -0
  376. package/template-vanilla/public/vite.svg +1 -0
  377. package/template-vanilla/style.css +97 -0
  378. package/template-vanilla/vite.config.js +12 -0
  379. package/template-vanilla/worker.js +95 -0
@@ -0,0 +1,38 @@
1
+ /*!
2
+
3
+ diff v4.0.1
4
+
5
+ Software License Agreement (BSD License)
6
+
7
+ Copyright (c) 2009-2015, Kevin Decker <kpdecker@gmail.com>
8
+
9
+ All rights reserved.
10
+
11
+ Redistribution and use of this software in source and binary forms, with or without modification,
12
+ are permitted provided that the following conditions are met:
13
+
14
+ * Redistributions of source code must retain the above
15
+ copyright notice, this list of conditions and the
16
+ following disclaimer.
17
+
18
+ * Redistributions in binary form must reproduce the above
19
+ copyright notice, this list of conditions and the
20
+ following disclaimer in the documentation and/or other
21
+ materials provided with the distribution.
22
+
23
+ * Neither the name of Kevin Decker nor the names of its
24
+ contributors may be used to endorse or promote products
25
+ derived from this software without specific prior
26
+ written permission.
27
+
28
+ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR
29
+ IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
30
+ FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
31
+ CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
32
+ DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
33
+ DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER
34
+ IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
35
+ OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
36
+ @license
37
+ */
38
+ !function(e,n){"object"==typeof exports&&"undefined"!=typeof module?n(exports):"function"==typeof define&&define.amd?define(["exports"],n):n((e=e||self).Diff={})}(this,function(e){"use strict";function t(){}function g(e,n,t,r,i){for(var o=0,s=n.length,l=0,a=0;o<s;o++){var u=n[o];if(u.removed){if(u.value=e.join(r.slice(a,a+u.count)),a+=u.count,o&&n[o-1].added){var f=n[o-1];n[o-1]=n[o],n[o]=f}}else{if(!u.added&&i){var d=t.slice(l,l+u.count);d=d.map(function(e,n){var t=r[a+n];return t.length>e.length?t:e}),u.value=e.join(d)}else u.value=e.join(t.slice(l,l+u.count));l+=u.count,u.added||(a+=u.count)}}var c=n[s-1];return 1<s&&"string"==typeof c.value&&(c.added||c.removed)&&e.equals("",c.value)&&(n[s-2].value+=c.value,n.pop()),n}t.prototype={diff:function(a,u){var e=2<arguments.length&&void 0!==arguments[2]?arguments[2]:{},n=e.callback;"function"==typeof e&&(n=e,e={}),this.options=e;var f=this;function d(e){return n?(setTimeout(function(){n(void 0,e)},0),!0):e}a=this.castInput(a),u=this.castInput(u),a=this.removeEmpty(this.tokenize(a));var c=(u=this.removeEmpty(this.tokenize(u))).length,h=a.length,p=1,t=c+h,v=[{newPos:-1,components:[]}],r=this.extractCommon(v[0],u,a,0);if(v[0].newPos+1>=c&&h<=r+1)return d([{value:this.join(u),count:u.length}]);function i(){for(var e=-1*p;e<=p;e+=2){var n=void 0,t=v[e-1],r=v[e+1],i=(r?r.newPos:0)-e;t&&(v[e-1]=void 0);var o=t&&t.newPos+1<c,s=r&&0<=i&&i<h;if(o||s){if(!o||s&&t.newPos<r.newPos?(n={newPos:(l=r).newPos,components:l.components.slice(0)},f.pushComponent(n.components,void 0,!0)):((n=t).newPos++,f.pushComponent(n.components,!0,void 0)),i=f.extractCommon(n,u,a,e),n.newPos+1>=c&&h<=i+1)return d(g(f,n.components,u,a,f.useLongestToken));v[e]=n}else v[e]=void 0}var l;p++}if(n)!function e(){setTimeout(function(){if(t<p)return n();i()||e()},0)}();else for(;p<=t;){var o=i();if(o)return o}},pushComponent:function(e,n,t){var r=e[e.length-1];r&&r.added===n&&r.removed===t?e[e.length-1]={count:r.count+1,added:n,removed:t}:e.push({count:1,added:n,removed:t})},extractCommon:function(e,n,t,r){for(var i=n.length,o=t.length,s=e.newPos,l=s-r,a=0;s+1<i&&l+1<o&&this.equals(n[s+1],t[l+1]);)s++,l++,a++;return a&&e.components.push({count:a}),e.newPos=s,l},equals:function(e,n){return this.options.comparator?this.options.comparator(e,n):e===n||this.options.ignoreCase&&e.toLowerCase()===n.toLowerCase()},removeEmpty:function(e){for(var n=[],t=0;t<e.length;t++)e[t]&&n.push(e[t]);return n},castInput:function(e){return e},tokenize:function(e){return e.split("")},join:function(e){return e.join("")}};var r=new t;function i(e,n){if("function"==typeof e)n.callback=e;else if(e)for(var t in e)e.hasOwnProperty(t)&&(n[t]=e[t]);return n}var o=/^[A-Za-z\xC0-\u02C6\u02C8-\u02D7\u02DE-\u02FF\u1E00-\u1EFF]+$/,s=/\S/,l=new t;l.equals=function(e,n){return this.options.ignoreCase&&(e=e.toLowerCase(),n=n.toLowerCase()),e===n||this.options.ignoreWhitespace&&!s.test(e)&&!s.test(n)},l.tokenize=function(e){for(var n=e.split(/(\s+|[()[\]{}'"]|\b)/),t=0;t<n.length-1;t++)!n[t+1]&&n[t+2]&&o.test(n[t])&&o.test(n[t+2])&&(n[t]+=n[t+2],n.splice(t+1,2),t--);return n};var a=new t;function u(e,n,t){return a.diff(e,n,t)}a.tokenize=function(e){var n=[],t=e.split(/(\n|\r\n)/);t[t.length-1]||t.pop();for(var r=0;r<t.length;r++){var i=t[r];r%2&&!this.options.newlineIsToken?n[n.length-1]+=i:(this.options.ignoreWhitespace&&(i=i.trim()),n.push(i))}return n};var f=new t;f.tokenize=function(e){return e.split(/(\S.+?[.!?])(?=\s+|$)/)};var d=new t;function c(e){return(c="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function k(e){return function(e){if(Array.isArray(e)){for(var n=0,t=new Array(e.length);n<e.length;n++)t[n]=e[n];return t}}(e)||function(e){if(Symbol.iterator in Object(e)||"[object Arguments]"===Object.prototype.toString.call(e))return Array.from(e)}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance")}()}d.tokenize=function(e){return e.split(/([{}:;,]|\s+)/)};var h=Object.prototype.toString,p=new t;function v(e,n,t,r,i){var o,s;for(n=n||[],t=t||[],r&&(e=r(i,e)),o=0;o<n.length;o+=1)if(n[o]===e)return t[o];if("[object Array]"===h.call(e)){for(n.push(e),s=new Array(e.length),t.push(s),o=0;o<e.length;o+=1)s[o]=v(e[o],n,t,r,i);return n.pop(),t.pop(),s}if(e&&e.toJSON&&(e=e.toJSON()),"object"===c(e)&&null!==e){n.push(e),s={},t.push(s);var l,a=[];for(l in e)e.hasOwnProperty(l)&&a.push(l);for(a.sort(),o=0;o<a.length;o+=1)s[l=a[o]]=v(e[l],n,t,r,l);n.pop(),t.pop()}else s=e;return s}p.useLongestToken=!0,p.tokenize=a.tokenize,p.castInput=function(e){var n=this.options,t=n.undefinedReplacement,r=n.stringifyReplacer,i=void 0===r?function(e,n){return void 0===n?t:n}:r;return"string"==typeof e?e:JSON.stringify(v(e,null,null,i),i," ")},p.equals=function(e,n){return t.prototype.equals.call(p,e.replace(/,([\r\n])/g,"$1"),n.replace(/,([\r\n])/g,"$1"))};var m=new t;function z(e){var s=1<arguments.length&&void 0!==arguments[1]?arguments[1]:{},l=e.split(/\r\n|[\n\v\f\r\x85]/),a=e.match(/\r\n|[\n\v\f\r\x85]/g)||[],i=[],u=0;function n(){var e={};for(i.push(e);u<l.length;){var n=l[u];if(/^(\-\-\-|\+\+\+|@@)\s/.test(n))break;var t=/^(?:Index:|diff(?: -r \w+)+)\s+(.+?)\s*$/.exec(n);t&&(e.index=t[1]),u++}for(o(e),o(e),e.hunks=[];u<l.length;){var r=l[u];if(/^(Index:|diff|\-\-\-|\+\+\+)\s/.test(r))break;if(/^@@/.test(r))e.hunks.push(f());else{if(r&&s.strict)throw new Error("Unknown line "+(u+1)+" "+JSON.stringify(r));u++}}}function o(e){var n=/^(---|\+\+\+)\s+(.*)$/.exec(l[u]);if(n){var t="---"===n[1]?"old":"new",r=n[2].split("\t",2),i=r[0].replace(/\\\\/g,"\\");/^".*"$/.test(i)&&(i=i.substr(1,i.length-2)),e[t+"FileName"]=i,e[t+"Header"]=(r[1]||"").trim(),u++}}function f(){for(var e=u,n=l[u++].split(/@@ -(\d+)(?:,(\d+))? \+(\d+)(?:,(\d+))? @@/),t={oldStart:+n[1],oldLines:+n[2]||1,newStart:+n[3],newLines:+n[4]||1,lines:[],linedelimiters:[]},r=0,i=0;u<l.length&&!(0===l[u].indexOf("--- ")&&u+2<l.length&&0===l[u+1].indexOf("+++ ")&&0===l[u+2].indexOf("@@"));u++){var o=0==l[u].length&&u!=l.length-1?" ":l[u][0];if("+"!==o&&"-"!==o&&" "!==o&&"\\"!==o)break;t.lines.push(l[u]),t.linedelimiters.push(a[u]||"\n"),"+"===o?r++:"-"===o?i++:" "===o&&(r++,i++)}if(r||1!==t.newLines||(t.newLines=0),i||1!==t.oldLines||(t.oldLines=0),s.strict){if(r!==t.newLines)throw new Error("Added line count did not match for hunk at line "+(e+1));if(i!==t.oldLines)throw new Error("Removed line count did not match for hunk at line "+(e+1))}return t}for(;u<l.length;)n();return i}function E(n,t,r){var i=!0,o=!1,s=!1,l=1;return function e(){if(i&&!s){if(o?l++:i=!1,n+l<=r)return l;s=!0}if(!o)return s||(i=!0),t<=n-l?-l++:(o=!0,e())}}function w(e,n){var t=2<arguments.length&&void 0!==arguments[2]?arguments[2]:{};if("string"==typeof n&&(n=z(n)),Array.isArray(n)){if(1<n.length)throw new Error("applyPatch only works with a single input.");n=n[0]}var r,i,s=e.split(/\r\n|[\n\v\f\r\x85]/),o=e.match(/\r\n|[\n\v\f\r\x85]/g)||[],l=n.hunks,a=t.compareLine||function(e,n,t,r){return n===r},u=0,f=t.fuzzFactor||0,d=0,c=0;function h(e,n){for(var t=0;t<e.lines.length;t++){var r=e.lines[t],i=0<r.length?r[0]:" ",o=0<r.length?r.substr(1):r;if(" "===i||"-"===i){if(!a(n+1,s[n],i,o)&&f<++u)return!1;n++}}return!0}for(var p=0;p<l.length;p++){for(var v=l[p],g=s.length-v.oldLines,m=0,w=c+v.oldStart-1,y=E(w,d,g);void 0!==m;m=y())if(h(v,w+m)){v.offset=c+=m;break}if(void 0===m)return!1;d=v.offset+v.oldStart+v.oldLines}for(var x=0,L=0;L<l.length;L++){var S=l[L],k=S.oldStart+S.offset+x-1;x+=S.newLines-S.oldLines,k<0&&(k=0);for(var b=0;b<S.lines.length;b++){var F=S.lines[b],N=0<F.length?F[0]:" ",H=0<F.length?F.substr(1):F,P=S.linedelimiters[b];if(" "===N)k++;else if("-"===N)s.splice(k,1),o.splice(k,1);else if("+"===N)s.splice(k,0,H),o.splice(k,0,P),k++;else if("\\"===N){var C=S.lines[b-1]?S.lines[b-1][0]:null;"+"===C?r=!0:"-"===C&&(i=!0)}}}if(r)for(;!s[s.length-1];)s.pop(),o.pop();else i&&(s.push(""),o.push("\n"));for(var j=0;j<s.length-1;j++)s[j]=s[j]+o[j];return s.join("")}function y(e,n,c,h,t,r,p){p||(p={}),void 0===p.context&&(p.context=4);var v=u(c,h,p);function g(e){return e.map(function(e){return" "+e})}v.push({value:"",lines:[]});for(var m=[],w=0,y=0,x=[],L=1,S=1,i=function(e){var n=v[e],t=n.lines||n.value.replace(/\n$/,"").split("\n");if(n.lines=t,n.added||n.removed){var r;if(!w){var i=v[e-1];w=L,y=S,i&&(x=0<p.context?g(i.lines.slice(-p.context)):[],w-=x.length,y-=x.length)}(r=x).push.apply(r,k(t.map(function(e){return(n.added?"+":"-")+e}))),n.added?S+=t.length:L+=t.length}else{if(w)if(t.length<=2*p.context&&e<v.length-2){var o;(o=x).push.apply(o,k(g(t)))}else{var s,l=Math.min(t.length,p.context);(s=x).push.apply(s,k(g(t.slice(0,l))));var a={oldStart:w,oldLines:L-w+l,newStart:y,newLines:S-y+l,lines:x};if(e>=v.length-2&&t.length<=p.context){var u=/\n$/.test(c),f=/\n$/.test(h),d=0==t.length&&x.length>a.oldLines;!u&&d&&x.splice(a.oldLines,0,"\"),(u||d)&&f||x.push("\")}m.push(a),y=w=0,x=[]}L+=t.length,S+=t.length}},o=0;o<v.length;o++)i(o);return{oldFileName:e,newFileName:n,oldHeader:t,newHeader:r,hunks:m}}function x(e,n,t,r,i,o,s){var l=y(e,n,t,r,i,o,s),a=[];e==n&&a.push("Index: "+e),a.push("==================================================================="),a.push("--- "+l.oldFileName+(void 0===l.oldHeader?"":"\t"+l.oldHeader)),a.push("+++ "+l.newFileName+(void 0===l.newHeader?"":"\t"+l.newHeader));for(var u=0;u<l.hunks.length;u++){var f=l.hunks[u];a.push("@@ -"+f.oldStart+","+f.oldLines+" +"+f.newStart+","+f.newLines+" @@"),a.push.apply(a,f.lines)}return a.join("\n")+"\n"}function L(e,n){if(n.length>e.length)return!1;for(var t=0;t<n.length;t++)if(n[t]!==e[t])return!1;return!0}function S(e){var n=function r(e){var i=0;var o=0;e.forEach(function(e){if("string"!=typeof e){var n=r(e.mine),t=r(e.theirs);void 0!==i&&(n.oldLines===t.oldLines?i+=n.oldLines:i=void 0),void 0!==o&&(n.newLines===t.newLines?o+=n.newLines:o=void 0)}else void 0===o||"+"!==e[0]&&" "!==e[0]||o++,void 0===i||"-"!==e[0]&&" "!==e[0]||i++});return{oldLines:i,newLines:o}}(e.lines),t=n.oldLines,r=n.newLines;void 0!==t?e.oldLines=t:delete e.oldLines,void 0!==r?e.newLines=r:delete e.newLines}function b(e,n){if("string"!=typeof e)return e;if(/^@@/m.test(e)||/^Index:/m.test(e))return z(e)[0];if(!n)throw new Error("Must provide a base reference or pass in a patch");return y(void 0,void 0,n,e)}function F(e){return e.newFileName&&e.newFileName!==e.oldFileName}function N(e,n,t){return n===t?n:(e.conflict=!0,{mine:n,theirs:t})}function H(e,n){return e.oldStart<n.oldStart&&e.oldStart+e.oldLines<n.oldStart}function P(e,n){return{oldStart:e.oldStart,oldLines:e.oldLines,newStart:e.newStart+n,newLines:e.newLines,lines:e.lines}}function C(e,n,t,r,i){var o={offset:n,lines:t,index:0},s={offset:r,lines:i,index:0};for(I(e,o,s),I(e,s,o);o.index<o.lines.length&&s.index<s.lines.length;){var l=o.lines[o.index],a=s.lines[s.index];if("-"!==l[0]&&"+"!==l[0]||"-"!==a[0]&&"+"!==a[0])if("+"===l[0]&&" "===a[0]){var u;(u=e.lines).push.apply(u,k($(o)))}else if("+"===a[0]&&" "===l[0]){var f;(f=e.lines).push.apply(f,k($(s)))}else"-"===l[0]&&" "===a[0]?O(e,o,s):"-"===a[0]&&" "===l[0]?O(e,s,o,!0):l===a?(e.lines.push(l),o.index++,s.index++):A(e,$(o),$(s));else j(e,o,s)}T(e,o),T(e,s),S(e)}function j(e,n,t){var r,i,o=$(n),s=$(t);if(q(o)&&q(s)){var l,a;if(L(o,s)&&M(t,o,o.length-s.length))return void(l=e.lines).push.apply(l,k(o));if(L(s,o)&&M(n,s,s.length-o.length))return void(a=e.lines).push.apply(a,k(s))}else if(i=s,(r=o).length===i.length&&L(r,i)){var u;return void(u=e.lines).push.apply(u,k(o))}A(e,o,s)}function O(e,n,t,r){var i,o=$(n),s=function(e,n){var t=[],r=[],i=0,o=!1,s=!1;for(;i<n.length&&e.index<e.lines.length;){var l=e.lines[e.index],a=n[i];if("+"===a[0])break;if(o=o||" "!==l[0],r.push(a),i++,"+"===l[0])for(s=!0;"+"===l[0];)t.push(l),l=e.lines[++e.index];a.substr(1)===l.substr(1)?(t.push(l),e.index++):s=!0}"+"===(n[i]||"")[0]&&o&&(s=!0);if(s)return t;for(;i<n.length;)r.push(n[i++]);return{merged:r,changes:t}}(t,o);s.merged?(i=e.lines).push.apply(i,k(s.merged)):A(e,r?s:o,r?o:s)}function A(e,n,t){e.conflict=!0,e.lines.push({conflict:!0,mine:n,theirs:t})}function I(e,n,t){for(;n.offset<t.offset&&n.index<n.lines.length;){var r=n.lines[n.index++];e.lines.push(r),n.offset++}}function T(e,n){for(;n.index<n.lines.length;){var t=n.lines[n.index++];e.lines.push(t)}}function $(e){for(var n=[],t=e.lines[e.index][0];e.index<e.lines.length;){var r=e.lines[e.index];if("-"===t&&"+"===r[0]&&(t="+"),t!==r[0])break;n.push(r),e.index++}return n}function q(e){return e.reduce(function(e,n){return e&&"-"===n[0]},!0)}function M(e,n,t){for(var r=0;r<t;r++){var i=n[n.length-t+r].substr(1);if(e.lines[e.index+r]!==" "+i)return!1}return e.index+=t,!0}m.tokenize=function(e){return e.slice()},m.join=m.removeEmpty=function(e){return e},e.Diff=t,e.diffChars=function(e,n,t){return r.diff(e,n,t)},e.diffWords=function(e,n,t){return t=i(t,{ignoreWhitespace:!0}),l.diff(e,n,t)},e.diffWordsWithSpace=function(e,n,t){return l.diff(e,n,t)},e.diffLines=u,e.diffTrimmedLines=function(e,n,t){var r=i(t,{ignoreWhitespace:!0});return a.diff(e,n,r)},e.diffSentences=function(e,n,t){return f.diff(e,n,t)},e.diffCss=function(e,n,t){return d.diff(e,n,t)},e.diffJson=function(e,n,t){return p.diff(e,n,t)},e.diffArrays=function(e,n,t){return m.diff(e,n,t)},e.structuredPatch=y,e.createTwoFilesPatch=x,e.createPatch=function(e,n,t,r,i,o){return x(e,e,n,t,r,i,o)},e.applyPatch=w,e.applyPatches=function(e,o){"string"==typeof e&&(e=z(e));var n=0;!function r(){var i=e[n++];if(!i)return o.complete();o.loadFile(i,function(e,n){if(e)return o.complete(e);var t=w(n,i,o);o.patched(i,t,function(e){if(e)return o.complete(e);r()})})}()},e.parsePatch=z,e.merge=function(e,n,t){e=b(e,t),n=b(n,t);var r={};(e.index||n.index)&&(r.index=e.index||n.index),(e.newFileName||n.newFileName)&&(F(e)?F(n)?(r.oldFileName=N(r,e.oldFileName,n.oldFileName),r.newFileName=N(r,e.newFileName,n.newFileName),r.oldHeader=N(r,e.oldHeader,n.oldHeader),r.newHeader=N(r,e.newHeader,n.newHeader)):(r.oldFileName=e.oldFileName,r.newFileName=e.newFileName,r.oldHeader=e.oldHeader,r.newHeader=e.newHeader):(r.oldFileName=n.oldFileName||e.oldFileName,r.newFileName=n.newFileName||e.newFileName,r.oldHeader=n.oldHeader||e.oldHeader,r.newHeader=n.newHeader||e.newHeader)),r.hunks=[];for(var i=0,o=0,s=0,l=0;i<e.hunks.length||o<n.hunks.length;){var a=e.hunks[i]||{oldStart:1/0},u=n.hunks[o]||{oldStart:1/0};if(H(a,u))r.hunks.push(P(a,s)),i++,l+=a.newLines-a.oldLines;else if(H(u,a))r.hunks.push(P(u,l)),o++,s+=u.newLines-u.oldLines;else{var f={oldStart:Math.min(a.oldStart,u.oldStart),oldLines:0,newStart:Math.min(a.newStart+s,u.oldStart+l),newLines:0,lines:[]};C(f,a.oldStart,a.lines,u.oldStart,u.lines),o++,i++,r.hunks.push(f)}}return r},e.convertChangesToDMP=function(e){for(var n,t,r=[],i=0;i<e.length;i++)t=(n=e[i]).added?1:n.removed?-1:0,r.push([t,n.value]);return r},e.convertChangesToXML=function(e){for(var n=[],t=0;t<e.length;t++){var r=e[t];r.added?n.push("<ins>"):r.removed&&n.push("<del>"),n.push((i=r.value,void 0,i.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;"))),r.added?n.push("</ins>"):r.removed&&n.push("</del>")}var i;return n.join("")},e.canonicalize=v,Object.defineProperty(e,"__esModule",{value:!0})});
@@ -0,0 +1,32 @@
1
+ /*istanbul ignore start*/
2
+ "use strict";
3
+
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.convertChangesToDMP = convertChangesToDMP;
8
+
9
+ /*istanbul ignore end*/
10
+ // See: http://code.google.com/p/google-diff-match-patch/wiki/API
11
+ function convertChangesToDMP(changes) {
12
+ var ret = [],
13
+ change,
14
+ operation;
15
+
16
+ for (var i = 0; i < changes.length; i++) {
17
+ change = changes[i];
18
+
19
+ if (change.added) {
20
+ operation = 1;
21
+ } else if (change.removed) {
22
+ operation = -1;
23
+ } else {
24
+ operation = 0;
25
+ }
26
+
27
+ ret.push([operation, change.value]);
28
+ }
29
+
30
+ return ret;
31
+ }
32
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jb252ZXJ0L2RtcC5qcyJdLCJuYW1lcyI6WyJjb252ZXJ0Q2hhbmdlc1RvRE1QIiwiY2hhbmdlcyIsInJldCIsImNoYW5nZSIsIm9wZXJhdGlvbiIsImkiLCJsZW5ndGgiLCJhZGRlZCIsInJlbW92ZWQiLCJwdXNoIiwidmFsdWUiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7OztBQUFBO0FBQ08sU0FBU0EsbUJBQVQsQ0FBNkJDLE9BQTdCLEVBQXNDO0FBQzNDLE1BQUlDLEdBQUcsR0FBRyxFQUFWO0FBQUEsTUFDSUMsTUFESjtBQUFBLE1BRUlDLFNBRko7O0FBR0EsT0FBSyxJQUFJQyxDQUFDLEdBQUcsQ0FBYixFQUFnQkEsQ0FBQyxHQUFHSixPQUFPLENBQUNLLE1BQTVCLEVBQW9DRCxDQUFDLEVBQXJDLEVBQXlDO0FBQ3ZDRixJQUFBQSxNQUFNLEdBQUdGLE9BQU8sQ0FBQ0ksQ0FBRCxDQUFoQjs7QUFDQSxRQUFJRixNQUFNLENBQUNJLEtBQVgsRUFBa0I7QUFDaEJILE1BQUFBLFNBQVMsR0FBRyxDQUFaO0FBQ0QsS0FGRCxNQUVPLElBQUlELE1BQU0sQ0FBQ0ssT0FBWCxFQUFvQjtBQUN6QkosTUFBQUEsU0FBUyxHQUFHLENBQUMsQ0FBYjtBQUNELEtBRk0sTUFFQTtBQUNMQSxNQUFBQSxTQUFTLEdBQUcsQ0FBWjtBQUNEOztBQUVERixJQUFBQSxHQUFHLENBQUNPLElBQUosQ0FBUyxDQUFDTCxTQUFELEVBQVlELE1BQU0sQ0FBQ08sS0FBbkIsQ0FBVDtBQUNEOztBQUNELFNBQU9SLEdBQVA7QUFDRCIsInNvdXJjZXNDb250ZW50IjpbIi8vIFNlZTogaHR0cDovL2NvZGUuZ29vZ2xlLmNvbS9wL2dvb2dsZS1kaWZmLW1hdGNoLXBhdGNoL3dpa2kvQVBJXG5leHBvcnQgZnVuY3Rpb24gY29udmVydENoYW5nZXNUb0RNUChjaGFuZ2VzKSB7XG4gIGxldCByZXQgPSBbXSxcbiAgICAgIGNoYW5nZSxcbiAgICAgIG9wZXJhdGlvbjtcbiAgZm9yIChsZXQgaSA9IDA7IGkgPCBjaGFuZ2VzLmxlbmd0aDsgaSsrKSB7XG4gICAgY2hhbmdlID0gY2hhbmdlc1tpXTtcbiAgICBpZiAoY2hhbmdlLmFkZGVkKSB7XG4gICAgICBvcGVyYXRpb24gPSAxO1xuICAgIH0gZWxzZSBpZiAoY2hhbmdlLnJlbW92ZWQpIHtcbiAgICAgIG9wZXJhdGlvbiA9IC0xO1xuICAgIH0gZWxzZSB7XG4gICAgICBvcGVyYXRpb24gPSAwO1xuICAgIH1cblxuICAgIHJldC5wdXNoKFtvcGVyYXRpb24sIGNoYW5nZS52YWx1ZV0pO1xuICB9XG4gIHJldHVybiByZXQ7XG59XG4iXX0=
@@ -0,0 +1,42 @@
1
+ /*istanbul ignore start*/
2
+ "use strict";
3
+
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.convertChangesToXML = convertChangesToXML;
8
+
9
+ /*istanbul ignore end*/
10
+ function convertChangesToXML(changes) {
11
+ var ret = [];
12
+
13
+ for (var i = 0; i < changes.length; i++) {
14
+ var change = changes[i];
15
+
16
+ if (change.added) {
17
+ ret.push('<ins>');
18
+ } else if (change.removed) {
19
+ ret.push('<del>');
20
+ }
21
+
22
+ ret.push(escapeHTML(change.value));
23
+
24
+ if (change.added) {
25
+ ret.push('</ins>');
26
+ } else if (change.removed) {
27
+ ret.push('</del>');
28
+ }
29
+ }
30
+
31
+ return ret.join('');
32
+ }
33
+
34
+ function escapeHTML(s) {
35
+ var n = s;
36
+ n = n.replace(/&/g, '&amp;');
37
+ n = n.replace(/</g, '&lt;');
38
+ n = n.replace(/>/g, '&gt;');
39
+ n = n.replace(/"/g, '&quot;');
40
+ return n;
41
+ }
42
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jb252ZXJ0L3htbC5qcyJdLCJuYW1lcyI6WyJjb252ZXJ0Q2hhbmdlc1RvWE1MIiwiY2hhbmdlcyIsInJldCIsImkiLCJsZW5ndGgiLCJjaGFuZ2UiLCJhZGRlZCIsInB1c2giLCJyZW1vdmVkIiwiZXNjYXBlSFRNTCIsInZhbHVlIiwiam9pbiIsInMiLCJuIiwicmVwbGFjZSJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7O0FBQU8sU0FBU0EsbUJBQVQsQ0FBNkJDLE9BQTdCLEVBQXNDO0FBQzNDLE1BQUlDLEdBQUcsR0FBRyxFQUFWOztBQUNBLE9BQUssSUFBSUMsQ0FBQyxHQUFHLENBQWIsRUFBZ0JBLENBQUMsR0FBR0YsT0FBTyxDQUFDRyxNQUE1QixFQUFvQ0QsQ0FBQyxFQUFyQyxFQUF5QztBQUN2QyxRQUFJRSxNQUFNLEdBQUdKLE9BQU8sQ0FBQ0UsQ0FBRCxDQUFwQjs7QUFDQSxRQUFJRSxNQUFNLENBQUNDLEtBQVgsRUFBa0I7QUFDaEJKLE1BQUFBLEdBQUcsQ0FBQ0ssSUFBSixDQUFTLE9BQVQ7QUFDRCxLQUZELE1BRU8sSUFBSUYsTUFBTSxDQUFDRyxPQUFYLEVBQW9CO0FBQ3pCTixNQUFBQSxHQUFHLENBQUNLLElBQUosQ0FBUyxPQUFUO0FBQ0Q7O0FBRURMLElBQUFBLEdBQUcsQ0FBQ0ssSUFBSixDQUFTRSxVQUFVLENBQUNKLE1BQU0sQ0FBQ0ssS0FBUixDQUFuQjs7QUFFQSxRQUFJTCxNQUFNLENBQUNDLEtBQVgsRUFBa0I7QUFDaEJKLE1BQUFBLEdBQUcsQ0FBQ0ssSUFBSixDQUFTLFFBQVQ7QUFDRCxLQUZELE1BRU8sSUFBSUYsTUFBTSxDQUFDRyxPQUFYLEVBQW9CO0FBQ3pCTixNQUFBQSxHQUFHLENBQUNLLElBQUosQ0FBUyxRQUFUO0FBQ0Q7QUFDRjs7QUFDRCxTQUFPTCxHQUFHLENBQUNTLElBQUosQ0FBUyxFQUFULENBQVA7QUFDRDs7QUFFRCxTQUFTRixVQUFULENBQW9CRyxDQUFwQixFQUF1QjtBQUNyQixNQUFJQyxDQUFDLEdBQUdELENBQVI7QUFDQUMsRUFBQUEsQ0FBQyxHQUFHQSxDQUFDLENBQUNDLE9BQUYsQ0FBVSxJQUFWLEVBQWdCLE9BQWhCLENBQUo7QUFDQUQsRUFBQUEsQ0FBQyxHQUFHQSxDQUFDLENBQUNDLE9BQUYsQ0FBVSxJQUFWLEVBQWdCLE1BQWhCLENBQUo7QUFDQUQsRUFBQUEsQ0FBQyxHQUFHQSxDQUFDLENBQUNDLE9BQUYsQ0FBVSxJQUFWLEVBQWdCLE1BQWhCLENBQUo7QUFDQUQsRUFBQUEsQ0FBQyxHQUFHQSxDQUFDLENBQUNDLE9BQUYsQ0FBVSxJQUFWLEVBQWdCLFFBQWhCLENBQUo7QUFFQSxTQUFPRCxDQUFQO0FBQ0QiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgZnVuY3Rpb24gY29udmVydENoYW5nZXNUb1hNTChjaGFuZ2VzKSB7XG4gIGxldCByZXQgPSBbXTtcbiAgZm9yIChsZXQgaSA9IDA7IGkgPCBjaGFuZ2VzLmxlbmd0aDsgaSsrKSB7XG4gICAgbGV0IGNoYW5nZSA9IGNoYW5nZXNbaV07XG4gICAgaWYgKGNoYW5nZS5hZGRlZCkge1xuICAgICAgcmV0LnB1c2goJzxpbnM+Jyk7XG4gICAgfSBlbHNlIGlmIChjaGFuZ2UucmVtb3ZlZCkge1xuICAgICAgcmV0LnB1c2goJzxkZWw+Jyk7XG4gICAgfVxuXG4gICAgcmV0LnB1c2goZXNjYXBlSFRNTChjaGFuZ2UudmFsdWUpKTtcblxuICAgIGlmIChjaGFuZ2UuYWRkZWQpIHtcbiAgICAgIHJldC5wdXNoKCc8L2lucz4nKTtcbiAgICB9IGVsc2UgaWYgKGNoYW5nZS5yZW1vdmVkKSB7XG4gICAgICByZXQucHVzaCgnPC9kZWw+Jyk7XG4gICAgfVxuICB9XG4gIHJldHVybiByZXQuam9pbignJyk7XG59XG5cbmZ1bmN0aW9uIGVzY2FwZUhUTUwocykge1xuICBsZXQgbiA9IHM7XG4gIG4gPSBuLnJlcGxhY2UoLyYvZywgJyZhbXA7Jyk7XG4gIG4gPSBuLnJlcGxhY2UoLzwvZywgJyZsdDsnKTtcbiAgbiA9IG4ucmVwbGFjZSgvPi9nLCAnJmd0OycpO1xuICBuID0gbi5yZXBsYWNlKC9cIi9nLCAnJnF1b3Q7Jyk7XG5cbiAgcmV0dXJuIG47XG59XG4iXX0=
@@ -0,0 +1,45 @@
1
+ /*istanbul ignore start*/
2
+ "use strict";
3
+
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.diffArrays = diffArrays;
8
+ exports.arrayDiff = void 0;
9
+
10
+ /*istanbul ignore end*/
11
+ var
12
+ /*istanbul ignore start*/
13
+ _base = _interopRequireDefault(require("./base"))
14
+ /*istanbul ignore end*/
15
+ ;
16
+
17
+ /*istanbul ignore start*/ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
18
+
19
+ /*istanbul ignore end*/
20
+ var arrayDiff = new
21
+ /*istanbul ignore start*/
22
+ _base
23
+ /*istanbul ignore end*/
24
+ .
25
+ /*istanbul ignore start*/
26
+ default
27
+ /*istanbul ignore end*/
28
+ ();
29
+
30
+ /*istanbul ignore start*/
31
+ exports.arrayDiff = arrayDiff;
32
+
33
+ /*istanbul ignore end*/
34
+ arrayDiff.tokenize = function (value) {
35
+ return value.slice();
36
+ };
37
+
38
+ arrayDiff.join = arrayDiff.removeEmpty = function (value) {
39
+ return value;
40
+ };
41
+
42
+ function diffArrays(oldArr, newArr, callback) {
43
+ return arrayDiff.diff(oldArr, newArr, callback);
44
+ }
45
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9kaWZmL2FycmF5LmpzIl0sIm5hbWVzIjpbImFycmF5RGlmZiIsIkRpZmYiLCJ0b2tlbml6ZSIsInZhbHVlIiwic2xpY2UiLCJqb2luIiwicmVtb3ZlRW1wdHkiLCJkaWZmQXJyYXlzIiwib2xkQXJyIiwibmV3QXJyIiwiY2FsbGJhY2siLCJkaWZmIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7O0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTs7Ozs7QUFFTyxJQUFNQSxTQUFTLEdBQUc7QUFBSUM7QUFBQUE7QUFBQUE7QUFBQUE7QUFBQUE7QUFBQUE7QUFBSjtBQUFBLEVBQWxCOzs7Ozs7QUFDUEQsU0FBUyxDQUFDRSxRQUFWLEdBQXFCLFVBQVNDLEtBQVQsRUFBZ0I7QUFDbkMsU0FBT0EsS0FBSyxDQUFDQyxLQUFOLEVBQVA7QUFDRCxDQUZEOztBQUdBSixTQUFTLENBQUNLLElBQVYsR0FBaUJMLFNBQVMsQ0FBQ00sV0FBVixHQUF3QixVQUFTSCxLQUFULEVBQWdCO0FBQ3ZELFNBQU9BLEtBQVA7QUFDRCxDQUZEOztBQUlPLFNBQVNJLFVBQVQsQ0FBb0JDLE1BQXBCLEVBQTRCQyxNQUE1QixFQUFvQ0MsUUFBcEMsRUFBOEM7QUFBRSxTQUFPVixTQUFTLENBQUNXLElBQVYsQ0FBZUgsTUFBZixFQUF1QkMsTUFBdkIsRUFBK0JDLFFBQS9CLENBQVA7QUFBa0QiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgRGlmZiBmcm9tICcuL2Jhc2UnO1xuXG5leHBvcnQgY29uc3QgYXJyYXlEaWZmID0gbmV3IERpZmYoKTtcbmFycmF5RGlmZi50b2tlbml6ZSA9IGZ1bmN0aW9uKHZhbHVlKSB7XG4gIHJldHVybiB2YWx1ZS5zbGljZSgpO1xufTtcbmFycmF5RGlmZi5qb2luID0gYXJyYXlEaWZmLnJlbW92ZUVtcHR5ID0gZnVuY3Rpb24odmFsdWUpIHtcbiAgcmV0dXJuIHZhbHVlO1xufTtcblxuZXhwb3J0IGZ1bmN0aW9uIGRpZmZBcnJheXMob2xkQXJyLCBuZXdBcnIsIGNhbGxiYWNrKSB7IHJldHVybiBhcnJheURpZmYuZGlmZihvbGRBcnIsIG5ld0FyciwgY2FsbGJhY2spOyB9XG4iXX0=
@@ -0,0 +1,304 @@
1
+ /*istanbul ignore start*/
2
+ "use strict";
3
+
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.default = Diff;
8
+
9
+ /*istanbul ignore end*/
10
+ function Diff() {}
11
+
12
+ Diff.prototype = {
13
+ /*istanbul ignore start*/
14
+
15
+ /*istanbul ignore end*/
16
+ diff: function diff(oldString, newString) {
17
+ /*istanbul ignore start*/
18
+ var
19
+ /*istanbul ignore end*/
20
+ options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
21
+ var callback = options.callback;
22
+
23
+ if (typeof options === 'function') {
24
+ callback = options;
25
+ options = {};
26
+ }
27
+
28
+ this.options = options;
29
+ var self = this;
30
+
31
+ function done(value) {
32
+ if (callback) {
33
+ setTimeout(function () {
34
+ callback(undefined, value);
35
+ }, 0);
36
+ return true;
37
+ } else {
38
+ return value;
39
+ }
40
+ } // Allow subclasses to massage the input prior to running
41
+
42
+
43
+ oldString = this.castInput(oldString);
44
+ newString = this.castInput(newString);
45
+ oldString = this.removeEmpty(this.tokenize(oldString));
46
+ newString = this.removeEmpty(this.tokenize(newString));
47
+ var newLen = newString.length,
48
+ oldLen = oldString.length;
49
+ var editLength = 1;
50
+ var maxEditLength = newLen + oldLen;
51
+ var bestPath = [{
52
+ newPos: -1,
53
+ components: []
54
+ }]; // Seed editLength = 0, i.e. the content starts with the same values
55
+
56
+ var oldPos = this.extractCommon(bestPath[0], newString, oldString, 0);
57
+
58
+ if (bestPath[0].newPos + 1 >= newLen && oldPos + 1 >= oldLen) {
59
+ // Identity per the equality and tokenizer
60
+ return done([{
61
+ value: this.join(newString),
62
+ count: newString.length
63
+ }]);
64
+ } // Main worker method. checks all permutations of a given edit length for acceptance.
65
+
66
+
67
+ function execEditLength() {
68
+ for (var diagonalPath = -1 * editLength; diagonalPath <= editLength; diagonalPath += 2) {
69
+ var basePath =
70
+ /*istanbul ignore start*/
71
+ void 0
72
+ /*istanbul ignore end*/
73
+ ;
74
+
75
+ var addPath = bestPath[diagonalPath - 1],
76
+ removePath = bestPath[diagonalPath + 1],
77
+ _oldPos = (removePath ? removePath.newPos : 0) - diagonalPath;
78
+
79
+ if (addPath) {
80
+ // No one else is going to attempt to use this value, clear it
81
+ bestPath[diagonalPath - 1] = undefined;
82
+ }
83
+
84
+ var canAdd = addPath && addPath.newPos + 1 < newLen,
85
+ canRemove = removePath && 0 <= _oldPos && _oldPos < oldLen;
86
+
87
+ if (!canAdd && !canRemove) {
88
+ // If this path is a terminal then prune
89
+ bestPath[diagonalPath] = undefined;
90
+ continue;
91
+ } // Select the diagonal that we want to branch from. We select the prior
92
+ // path whose position in the new string is the farthest from the origin
93
+ // and does not pass the bounds of the diff graph
94
+
95
+
96
+ if (!canAdd || canRemove && addPath.newPos < removePath.newPos) {
97
+ basePath = clonePath(removePath);
98
+ self.pushComponent(basePath.components, undefined, true);
99
+ } else {
100
+ basePath = addPath; // No need to clone, we've pulled it from the list
101
+
102
+ basePath.newPos++;
103
+ self.pushComponent(basePath.components, true, undefined);
104
+ }
105
+
106
+ _oldPos = self.extractCommon(basePath, newString, oldString, diagonalPath); // If we have hit the end of both strings, then we are done
107
+
108
+ if (basePath.newPos + 1 >= newLen && _oldPos + 1 >= oldLen) {
109
+ return done(buildValues(self, basePath.components, newString, oldString, self.useLongestToken));
110
+ } else {
111
+ // Otherwise track this path as a potential candidate and continue.
112
+ bestPath[diagonalPath] = basePath;
113
+ }
114
+ }
115
+
116
+ editLength++;
117
+ } // Performs the length of edit iteration. Is a bit fugly as this has to support the
118
+ // sync and async mode which is never fun. Loops over execEditLength until a value
119
+ // is produced.
120
+
121
+
122
+ if (callback) {
123
+ (function exec() {
124
+ setTimeout(function () {
125
+ // This should not happen, but we want to be safe.
126
+
127
+ /* istanbul ignore next */
128
+ if (editLength > maxEditLength) {
129
+ return callback();
130
+ }
131
+
132
+ if (!execEditLength()) {
133
+ exec();
134
+ }
135
+ }, 0);
136
+ })();
137
+ } else {
138
+ while (editLength <= maxEditLength) {
139
+ var ret = execEditLength();
140
+
141
+ if (ret) {
142
+ return ret;
143
+ }
144
+ }
145
+ }
146
+ },
147
+
148
+ /*istanbul ignore start*/
149
+
150
+ /*istanbul ignore end*/
151
+ pushComponent: function pushComponent(components, added, removed) {
152
+ var last = components[components.length - 1];
153
+
154
+ if (last && last.added === added && last.removed === removed) {
155
+ // We need to clone here as the component clone operation is just
156
+ // as shallow array clone
157
+ components[components.length - 1] = {
158
+ count: last.count + 1,
159
+ added: added,
160
+ removed: removed
161
+ };
162
+ } else {
163
+ components.push({
164
+ count: 1,
165
+ added: added,
166
+ removed: removed
167
+ });
168
+ }
169
+ },
170
+
171
+ /*istanbul ignore start*/
172
+
173
+ /*istanbul ignore end*/
174
+ extractCommon: function extractCommon(basePath, newString, oldString, diagonalPath) {
175
+ var newLen = newString.length,
176
+ oldLen = oldString.length,
177
+ newPos = basePath.newPos,
178
+ oldPos = newPos - diagonalPath,
179
+ commonCount = 0;
180
+
181
+ while (newPos + 1 < newLen && oldPos + 1 < oldLen && this.equals(newString[newPos + 1], oldString[oldPos + 1])) {
182
+ newPos++;
183
+ oldPos++;
184
+ commonCount++;
185
+ }
186
+
187
+ if (commonCount) {
188
+ basePath.components.push({
189
+ count: commonCount
190
+ });
191
+ }
192
+
193
+ basePath.newPos = newPos;
194
+ return oldPos;
195
+ },
196
+
197
+ /*istanbul ignore start*/
198
+
199
+ /*istanbul ignore end*/
200
+ equals: function equals(left, right) {
201
+ if (this.options.comparator) {
202
+ return this.options.comparator(left, right);
203
+ } else {
204
+ return left === right || this.options.ignoreCase && left.toLowerCase() === right.toLowerCase();
205
+ }
206
+ },
207
+
208
+ /*istanbul ignore start*/
209
+
210
+ /*istanbul ignore end*/
211
+ removeEmpty: function removeEmpty(array) {
212
+ var ret = [];
213
+
214
+ for (var i = 0; i < array.length; i++) {
215
+ if (array[i]) {
216
+ ret.push(array[i]);
217
+ }
218
+ }
219
+
220
+ return ret;
221
+ },
222
+
223
+ /*istanbul ignore start*/
224
+
225
+ /*istanbul ignore end*/
226
+ castInput: function castInput(value) {
227
+ return value;
228
+ },
229
+
230
+ /*istanbul ignore start*/
231
+
232
+ /*istanbul ignore end*/
233
+ tokenize: function tokenize(value) {
234
+ return value.split('');
235
+ },
236
+
237
+ /*istanbul ignore start*/
238
+
239
+ /*istanbul ignore end*/
240
+ join: function join(chars) {
241
+ return chars.join('');
242
+ }
243
+ };
244
+
245
+ function buildValues(diff, components, newString, oldString, useLongestToken) {
246
+ var componentPos = 0,
247
+ componentLen = components.length,
248
+ newPos = 0,
249
+ oldPos = 0;
250
+
251
+ for (; componentPos < componentLen; componentPos++) {
252
+ var component = components[componentPos];
253
+
254
+ if (!component.removed) {
255
+ if (!component.added && useLongestToken) {
256
+ var value = newString.slice(newPos, newPos + component.count);
257
+ value = value.map(function (value, i) {
258
+ var oldValue = oldString[oldPos + i];
259
+ return oldValue.length > value.length ? oldValue : value;
260
+ });
261
+ component.value = diff.join(value);
262
+ } else {
263
+ component.value = diff.join(newString.slice(newPos, newPos + component.count));
264
+ }
265
+
266
+ newPos += component.count; // Common case
267
+
268
+ if (!component.added) {
269
+ oldPos += component.count;
270
+ }
271
+ } else {
272
+ component.value = diff.join(oldString.slice(oldPos, oldPos + component.count));
273
+ oldPos += component.count; // Reverse add and remove so removes are output first to match common convention
274
+ // The diffing algorithm is tied to add then remove output and this is the simplest
275
+ // route to get the desired output with minimal overhead.
276
+
277
+ if (componentPos && components[componentPos - 1].added) {
278
+ var tmp = components[componentPos - 1];
279
+ components[componentPos - 1] = components[componentPos];
280
+ components[componentPos] = tmp;
281
+ }
282
+ }
283
+ } // Special case handle for when one terminal is ignored (i.e. whitespace).
284
+ // For this case we merge the terminal into the prior string and drop the change.
285
+ // This is only available for string mode.
286
+
287
+
288
+ var lastComponent = components[componentLen - 1];
289
+
290
+ if (componentLen > 1 && typeof lastComponent.value === 'string' && (lastComponent.added || lastComponent.removed) && diff.equals('', lastComponent.value)) {
291
+ components[componentLen - 2].value += lastComponent.value;
292
+ components.pop();
293
+ }
294
+
295
+ return components;
296
+ }
297
+
298
+ function clonePath(path) {
299
+ return {
300
+ newPos: path.newPos,
301
+ components: path.components.slice(0)
302
+ };
303
+ }
304
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9kaWZmL2Jhc2UuanMiXSwibmFtZXMiOlsiRGlmZiIsInByb3RvdHlwZSIsImRpZmYiLCJvbGRTdHJpbmciLCJuZXdTdHJpbmciLCJvcHRpb25zIiwiY2FsbGJhY2siLCJzZWxmIiwiZG9uZSIsInZhbHVlIiwic2V0VGltZW91dCIsInVuZGVmaW5lZCIsImNhc3RJbnB1dCIsInJlbW92ZUVtcHR5IiwidG9rZW5pemUiLCJuZXdMZW4iLCJsZW5ndGgiLCJvbGRMZW4iLCJlZGl0TGVuZ3RoIiwibWF4RWRpdExlbmd0aCIsImJlc3RQYXRoIiwibmV3UG9zIiwiY29tcG9uZW50cyIsIm9sZFBvcyIsImV4dHJhY3RDb21tb24iLCJqb2luIiwiY291bnQiLCJleGVjRWRpdExlbmd0aCIsImRpYWdvbmFsUGF0aCIsImJhc2VQYXRoIiwiYWRkUGF0aCIsInJlbW92ZVBhdGgiLCJjYW5BZGQiLCJjYW5SZW1vdmUiLCJjbG9uZVBhdGgiLCJwdXNoQ29tcG9uZW50IiwiYnVpbGRWYWx1ZXMiLCJ1c2VMb25nZXN0VG9rZW4iLCJleGVjIiwicmV0IiwiYWRkZWQiLCJyZW1vdmVkIiwibGFzdCIsInB1c2giLCJjb21tb25Db3VudCIsImVxdWFscyIsImxlZnQiLCJyaWdodCIsImNvbXBhcmF0b3IiLCJpZ25vcmVDYXNlIiwidG9Mb3dlckNhc2UiLCJhcnJheSIsImkiLCJzcGxpdCIsImNoYXJzIiwiY29tcG9uZW50UG9zIiwiY29tcG9uZW50TGVuIiwiY29tcG9uZW50Iiwic2xpY2UiLCJtYXAiLCJvbGRWYWx1ZSIsInRtcCIsImxhc3RDb21wb25lbnQiLCJwb3AiLCJwYXRoIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7QUFBZSxTQUFTQSxJQUFULEdBQWdCLENBQUU7O0FBRWpDQSxJQUFJLENBQUNDLFNBQUwsR0FBaUI7QUFBQTs7QUFBQTtBQUNmQyxFQUFBQSxJQURlLGdCQUNWQyxTQURVLEVBQ0NDLFNBREQsRUFDMEI7QUFBQTtBQUFBO0FBQUE7QUFBZEMs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QUcsQ0FBZixJQUNHLE9BQU9NLGFBQWEsQ0FBQ3JELEtBQXJCLEtBQStCLFFBRGxDLEtBRUlxRCxhQUFhLENBQUN0QixLQUFkLElBQXVCc0IsYUFBYSxDQUFDckIsT0FGekMsS0FHR3ZDLElBQUksQ0FBQzJDLE1BQUwsQ0FBWSxFQUFaLEVBQWdCaUIsYUFBYSxDQUFDckQsS0FBOUIsQ0FIUCxFQUc2QztBQUMzQ2EsSUFBQUEsVUFBVSxDQUFDa0MsWUFBWSxHQUFHLENBQWhCLENBQVYsQ0FBNkIvQyxLQUE3QixJQUFzQ3FELGFBQWEsQ0FBQ3JELEtBQXBEO0FBQ0FhLElBQUFBLFVBQVUsQ0FBQ3lDLEdBQVg7QUFDRDs7QUFFRCxTQUFPekMsVUFBUDtBQUNEOztBQUVELFNBQVNZLFNBQVQsQ0FBbUI4QixJQUFuQixFQUF5QjtBQUN2QixTQUFPO0FBQUUzQyxJQUFBQSxNQUFNLEVBQUUyQyxJQUFJLENBQUMzQyxNQUFmO0FBQXVCQyxJQUFBQSxVQUFVLEVBQUUwQyxJQUFJLENBQUMxQyxVQUFMLENBQWdCb0MsS0FBaEIsQ0FBc0IsQ0FBdEI7QUFBbkMsR0FBUDtBQUNEIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gRGlmZigpIHt9XG5cbkRpZmYucHJvdG90eXBlID0ge1xuICBkaWZmKG9sZFN0cmluZywgbmV3U3RyaW5nLCBvcHRpb25zID0ge30pIHtcbiAgICBsZXQgY2FsbGJhY2sgPSBvcHRpb25zLmNhbGxiYWNrO1xuICAgIGlmICh0eXBlb2Ygb3B0aW9ucyA9PT0gJ2Z1bmN0aW9uJykge1xuICAgICAgY2FsbGJhY2sgPSBvcHRpb25zO1xuICAgICAgb3B0aW9ucyA9IHt9O1xuICAgIH1cbiAgICB0aGlzLm9wdGlvbnMgPSBvcHRpb25zO1xuXG4gICAgbGV0IHNlbGYgPSB0aGlzO1xuXG4gICAgZnVuY3Rpb24gZG9uZSh2YWx1ZSkge1xuICAgICAgaWYgKGNhbGxiYWNrKSB7XG4gICAgICAgIHNldFRpbWVvdXQoZnVuY3Rpb24oKSB7IGNhbGxiYWNrKHVuZGVmaW5lZCwgdmFsdWUpOyB9LCAwKTtcbiAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICByZXR1cm4gdmFsdWU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gQWxsb3cgc3ViY2xhc3NlcyB0byBtYXNzYWdlIHRoZSBpbnB1dCBwcmlvciB0byBydW5uaW5nXG4gICAgb2xkU3RyaW5nID0gdGhpcy5jYXN0SW5wdXQob2xkU3RyaW5nKTtcbiAgICBuZXdTdHJpbmcgPSB0aGlzLmNhc3RJbnB1dChuZXdTdHJpbmcpO1xuXG4gICAgb2xkU3RyaW5nID0gdGhpcy5yZW1vdmVFbXB0eSh0aGlzLnRva2VuaXplKG9sZFN0cmluZykpO1xuICAgIG5ld1N0cmluZyA9IHRoaXMucmVtb3ZlRW1wdHkodGhpcy50b2tlbml6ZShuZXdTdHJpbmcpKTtcblxuICAgIGxldCBuZXdMZW4gPSBuZXdTdHJpbmcubGVuZ3RoLCBvbGRMZW4gPSBvbGRTdHJpbmcubGVuZ3RoO1xuICAgIGxldCBlZGl0TGVuZ3RoID0gMTtcbiAgICBsZXQgbWF4RWRpdExlbmd0aCA9IG5ld0xlbiArIG9sZExlbjtcbiAgICBsZXQgYmVzdFBhdGggPSBbeyBuZXdQb3M6IC0xLCBjb21wb25lbnRzOiBbXSB9XTtcblxuICAgIC8vIFNlZWQgZWRpdExlbmd0aCA9IDAsIGkuZS4gdGhlIGNvbnRlbnQgc3RhcnRzIHdpdGggdGhlIHNhbWUgdmFsdWVzXG4gICAgbGV0IG9sZFBvcyA9IHRoaXMuZXh0cmFjdENvbW1vbihiZXN0UGF0aFswXSwgbmV3U3RyaW5nLCBvbGRTdHJpbmcsIDApO1xuICAgIGlmIChiZXN0UGF0aFswXS5uZXdQb3MgKyAxID49IG5ld0xlbiAmJiBvbGRQb3MgKyAxID49IG9sZExlbikge1xuICAgICAgLy8gSWRlbnRpdHkgcGVyIHRoZSBlcXVhbGl0eSBhbmQgdG9rZW5pemVyXG4gICAgICByZXR1cm4gZG9uZShbe3ZhbHVlOiB0aGlzLmpvaW4obmV3U3RyaW5nKSwgY291bnQ6IG5ld1N0cmluZy5sZW5ndGh9XSk7XG4gICAgfVxuXG4gICAgLy8gTWFpbiB3b3JrZXIgbWV0aG9kLiBjaGVja3MgYWxsIHBlcm11dGF0aW9ucyBvZiBhIGdpdmVuIGVkaXQgbGVuZ3RoIGZvciBhY2NlcHRhbmNlLlxuICAgIGZ1bmN0aW9uIGV4ZWNFZGl0TGVuZ3RoKCkge1xuICAgICAgZm9yIChsZXQgZGlhZ29uYWxQYXRoID0gLTEgKiBlZGl0TGVuZ3RoOyBkaWFnb25hbFBhdGggPD0gZWRpdExlbmd0aDsgZGlhZ29uYWxQYXRoICs9IDIpIHtcbiAgICAgICAgbGV0IGJhc2VQYXRoO1xuICAgICAgICBsZXQgYWRkUGF0aCA9IGJlc3RQYXRoW2RpYWdvbmFsUGF0aCAtIDFdLFxuICAgICAgICAgICAgcmVtb3ZlUGF0aCA9IGJlc3RQYXRoW2RpYWdvbmFsUGF0aCArIDFdLFxuICAgICAgICAgICAgb2xkUG9zID0gKHJlbW92ZVBhdGggPyByZW1vdmVQYXRoLm5ld1BvcyA6IDApIC0gZGlhZ29uYWxQYXRoO1xuICAgICAgICBpZiAoYWRkUGF0aCkge1xuICAgICAgICAgIC8vIE5vIG9uZSBlbHNlIGlzIGdvaW5nIHRvIGF0dGVtcHQgdG8gdXNlIHRoaXMgdmFsdWUsIGNsZWFyIGl0XG4gICAgICAgICAgYmVzdFBhdGhbZGlhZ29uYWxQYXRoIC0gMV0gPSB1bmRlZmluZWQ7XG4gICAgICAgIH1cblxuICAgICAgICBsZXQgY2FuQWRkID0gYWRkUGF0aCAmJiBhZGRQYXRoLm5ld1BvcyArIDEgPCBuZXdMZW4sXG4gICAgICAgICAgICBjYW5SZW1vdmUgPSByZW1vdmVQYXRoICYmIDAgPD0gb2xkUG9zICYmIG9sZFBvcyA8IG9sZExlbjtcbiAgICAgICAgaWYgKCFjYW5BZGQgJiYgIWNhblJlbW92ZSkge1xuICAgICAgICAgIC8vIElmIHRoaXMgcGF0aCBpcyBhIHRlcm1pbmFsIHRoZW4gcHJ1bmVcbiAgICAgICAgICBiZXN0UGF0aFtkaWFnb25hbFBhdGhdID0gdW5kZWZpbmVkO1xuICAgICAgICAgIGNvbnRpbnVlO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gU2VsZWN0IHRoZSBkaWFnb25hbCB0aGF0IHdlIHdhbnQgdG8gYnJhbmNoIGZyb20uIFdlIHNlbGVjdCB0aGUgcHJpb3JcbiAgICAgICAgLy8gcGF0aCB3aG9zZSBwb3NpdGlvbiBpbiB0aGUgbmV3IHN0cmluZyBpcyB0aGUgZmFydGhlc3QgZnJvbSB0aGUgb3JpZ2luXG4gICAgICAgIC8vIGFuZCBkb2VzIG5vdCBwYXNzIHRoZSBib3VuZHMgb2YgdGhlIGRpZmYgZ3JhcGhcbiAgICAgICAgaWYgKCFjYW5BZGQgfHwgKGNhblJlbW92ZSAmJiBhZGRQYXRoLm5ld1BvcyA8IHJlbW92ZVBhdGgubmV3UG9zKSkge1xuICAgICAgICAgIGJhc2VQYXRoID0gY2xvbmVQYXRoKHJlbW92ZVBhdGgpO1xuICAgICAgICAgIHNlbGYucHVzaENvbXBvbmVudChiYXNlUGF0aC5jb21wb25lbnRzLCB1bmRlZmluZWQsIHRydWUpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIGJhc2VQYXRoID0gYWRkUGF0aDsgLy8gTm8gbmVlZCB0byBjbG9uZSwgd2UndmUgcHVsbGVkIGl0IGZyb20gdGhlIGxpc3RcbiAgICAgICAgICBiYXNlUGF0aC5uZXdQb3MrKztcbiAgICAgICAgICBzZWxmLnB1c2hDb21wb25lbnQoYmFzZVBhdGguY29tcG9uZW50cywgdHJ1ZSwgdW5kZWZpbmVkKTtcbiAgICAgICAgfVxuXG4gICAgICAgIG9sZFBvcyA9IHNlbGYuZXh0cmFjdENvbW1vbihiYXNlUGF0aCwgbmV3U3RyaW5nLCBvbGRTdHJpbmcsIGRpYWdvbmFsUGF0aCk7XG5cbiAgICAgICAgLy8gSWYgd2UgaGF2ZSBoaXQgdGhlIGVuZCBvZiBib3RoIHN0cmluZ3MsIHRoZW4gd2UgYXJlIGRvbmVcbiAgICAgICAgaWYgKGJhc2VQYXRoLm5ld1BvcyArIDEgPj0gbmV3TGVuICYmIG9sZFBvcyArIDEgPj0gb2xkTGVuKSB7XG4gICAgICAgICAgcmV0dXJuIGRvbmUoYnVpbGRWYWx1ZXMoc2VsZiwgYmFzZVBhdGguY29tcG9uZW50cywgbmV3U3RyaW5nLCBvbGRTdHJpbmcsIHNlbGYudXNlTG9uZ2VzdFRva2VuKSk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgLy8gT3RoZXJ3aXNlIHRyYWNrIHRoaXMgcGF0aCBhcyBhIHBvdGVudGlhbCBjYW5kaWRhdGUgYW5kIGNvbnRpbnVlLlxuICAgICAgICAgIGJlc3RQYXRoW2RpYWdvbmFsUGF0aF0gPSBiYXNlUGF0aDtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBlZGl0TGVuZ3RoKys7XG4gICAgfVxuXG4gICAgLy8gUGVyZm9ybXMgdGhlIGxlbmd0aCBvZiBlZGl0IGl0ZXJhdGlvbi4gSXMgYSBiaXQgZnVnbHkgYXMgdGhpcyBoYXMgdG8gc3VwcG9ydCB0aGVcbiAgICAvLyBzeW5jIGFuZCBhc3luYyBtb2RlIHdoaWNoIGlzIG5ldmVyIGZ1bi4gTG9vcHMgb3ZlciBleGVjRWRpdExlbmd0aCB1bnRpbCBhIHZhbHVlXG4gICAgLy8gaXMgcHJvZHVjZWQuXG4gICAgaWYgKGNhbGxiYWNrKSB7XG4gICAgICAoZnVuY3Rpb24gZXhlYygpIHtcbiAgICAgICAgc2V0VGltZW91dChmdW5jdGlvbigpIHtcbiAgICAgICAgICAvLyBUaGlzIHNob3VsZCBub3QgaGFwcGVuLCBidXQgd2Ugd2FudCB0byBiZSBzYWZlLlxuICAgICAgICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0ICovXG4gICAgICAgICAgaWYgKGVkaXRMZW5ndGggPiBtYXhFZGl0TGVuZ3RoKSB7XG4gICAgICAgICAgICByZXR1cm4gY2FsbGJhY2soKTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBpZiAoIWV4ZWNFZGl0TGVuZ3RoKCkpIHtcbiAgICAgICAgICAgIGV4ZWMoKTtcbiAgICAgICAgICB9XG4gICAgICAgIH0sIDApO1xuICAgICAgfSgpKTtcbiAgICB9IGVsc2Uge1xuICAgICAgd2hpbGUgKGVkaXRMZW5ndGggPD0gbWF4RWRpdExlbmd0aCkge1xuICAgICAgICBsZXQgcmV0ID0gZXhlY0VkaXRMZW5ndGgoKTtcbiAgICAgICAgaWYgKHJldCkge1xuICAgICAgICAgIHJldHVybiByZXQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH0sXG5cbiAgcHVzaENvbXBvbmVudChjb21wb25lbnRzLCBhZGRlZCwgcmVtb3ZlZCkge1xuICAgIGxldCBsYXN0ID0gY29tcG9uZW50c1tjb21wb25lbnRzLmxlbmd0aCAtIDFdO1xuICAgIGlmIChsYXN0ICYmIGxhc3QuYWRkZWQgPT09IGFkZGVkICYmIGxhc3QucmVtb3ZlZCA9PT0gcmVtb3ZlZCkge1xuICAgICAgLy8gV2UgbmVlZCB0byBjbG9uZSBoZXJlIGFzIHRoZSBjb21wb25lbnQgY2xvbmUgb3BlcmF0aW9uIGlzIGp1c3RcbiAgICAgIC8vIGFzIHNoYWxsb3cgYXJyYXkgY2xvbmVcbiAgICAgIGNvbXBvbmVudHNbY29tcG9uZW50cy5sZW5ndGggLSAxXSA9IHtjb3VudDogbGFzdC5jb3VudCArIDEsIGFkZGVkOiBhZGRlZCwgcmVtb3ZlZDogcmVtb3ZlZCB9O1xuICAgIH0gZWxzZSB7XG4gICAgICBjb21wb25lbnRzLnB1c2goe2NvdW50OiAxLCBhZGRlZDogYWRkZWQsIHJlbW92ZWQ6IHJlbW92ZWQgfSk7XG4gICAgfVxuICB9LFxuICBleHRyYWN0Q29tbW9uKGJhc2VQYXRoLCBuZXdTdHJpbmcsIG9sZFN0cmluZywgZGlhZ29uYWxQYXRoKSB7XG4gICAgbGV0IG5ld0xlbiA9IG5ld1N0cmluZy5sZW5ndGgsXG4gICAgICAgIG9sZExlbiA9IG9sZFN0cmluZy5sZW5ndGgsXG4gICAgICAgIG5ld1BvcyA9IGJhc2VQYXRoLm5ld1BvcyxcbiAgICAgICAgb2xkUG9zID0gbmV3UG9zIC0gZGlhZ29uYWxQYXRoLFxuXG4gICAgICAgIGNvbW1vbkNvdW50ID0gMDtcbiAgICB3aGlsZSAobmV3UG9zICsgMSA8IG5ld0xlbiAmJiBvbGRQb3MgKyAxIDwgb2xkTGVuICYmIHRoaXMuZXF1YWxzKG5ld1N0cmluZ1tuZXdQb3MgKyAxXSwgb2xkU3RyaW5nW29sZFBvcyArIDFdKSkge1xuICAgICAgbmV3UG9zKys7XG4gICAgICBvbGRQb3MrKztcbiAgICAgIGNvbW1vbkNvdW50Kys7XG4gICAgfVxuXG4gICAgaWYgKGNvbW1vbkNvdW50KSB7XG4gICAgICBiYXNlUGF0aC5jb21wb25lbnRzLnB1c2goe2NvdW50OiBjb21tb25Db3VudH0pO1xuICAgIH1cblxuICAgIGJhc2VQYXRoLm5ld1BvcyA9IG5ld1BvcztcbiAgICByZXR1cm4gb2xkUG9zO1xuICB9LFxuXG4gIGVxdWFscyhsZWZ0LCByaWdodCkge1xuICAgIGlmICh0aGlzLm9wdGlvbnMuY29tcGFyYXRvcikge1xuICAgICAgcmV0dXJuIHRoaXMub3B0aW9ucy5jb21wYXJhdG9yKGxlZnQsIHJpZ2h0KTtcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIGxlZnQgPT09IHJpZ2h0XG4gICAgICAgIHx8ICh0aGlzLm9wdGlvbnMuaWdub3JlQ2FzZSAmJiBsZWZ0LnRvTG93ZXJDYXNlKCkgPT09IHJpZ2h0LnRvTG93ZXJDYXNlKCkpO1xuICAgIH1cbiAgfSxcbiAgcmVtb3ZlRW1wdHkoYXJyYXkpIHtcbiAgICBsZXQgcmV0ID0gW107XG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCBhcnJheS5sZW5ndGg7IGkrKykge1xuICAgICAgaWYgKGFycmF5W2ldKSB7XG4gICAgICAgIHJldC5wdXNoKGFycmF5W2ldKTtcbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIHJldDtcbiAgfSxcbiAgY2FzdElucHV0KHZhbHVlKSB7XG4gICAgcmV0dXJuIHZhbHVlO1xuICB9LFxuICB0b2tlbml6ZSh2YWx1ZSkge1xuICAgIHJldHVybiB2YWx1ZS5zcGxpdCgnJyk7XG4gIH0sXG4gIGpvaW4oY2hhcnMpIHtcbiAgICByZXR1cm4gY2hhcnMuam9pbignJyk7XG4gIH1cbn07XG5cbmZ1bmN0aW9uIGJ1aWxkVmFsdWVzKGRpZmYsIGNvbXBvbmVudHMsIG5ld1N0cmluZywgb2xkU3RyaW5nLCB1c2VMb25nZXN0VG9rZW4pIHtcbiAgbGV0IGNvbXBvbmVudFBvcyA9IDAsXG4gICAgICBjb21wb25lbnRMZW4gPSBjb21wb25lbnRzLmxlbmd0aCxcbiAgICAgIG5ld1BvcyA9IDAsXG4gICAgICBvbGRQb3MgPSAwO1xuXG4gIGZvciAoOyBjb21wb25lbnRQb3MgPCBjb21wb25lbnRMZW47IGNvbXBvbmVudFBvcysrKSB7XG4gICAgbGV0IGNvbXBvbmVudCA9IGNvbXBvbmVudHNbY29tcG9uZW50UG9zXTtcbiAgICBpZiAoIWNvbXBvbmVudC5yZW1vdmVkKSB7XG4gICAgICBpZiAoIWNvbXBvbmVudC5hZGRlZCAmJiB1c2VMb25nZXN0VG9rZW4pIHtcbiAgICAgICAgbGV0IHZhbHVlID0gbmV3U3RyaW5nLnNsaWNlKG5ld1BvcywgbmV3UG9zICsgY29tcG9uZW50LmNvdW50KTtcbiAgICAgICAgdmFsdWUgPSB2YWx1ZS5tYXAoZnVuY3Rpb24odmFsdWUsIGkpIHtcbiAgICAgICAgICBsZXQgb2xkVmFsdWUgPSBvbGRTdHJpbmdbb2xkUG9zICsgaV07XG4gICAgICAgICAgcmV0dXJuIG9sZFZhbHVlLmxlbmd0aCA+IHZhbHVlLmxlbmd0aCA/IG9sZFZhbHVlIDogdmFsdWU7XG4gICAgICAgIH0pO1xuXG4gICAgICAgIGNvbXBvbmVudC52YWx1ZSA9IGRpZmYuam9pbih2YWx1ZSk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBjb21wb25lbnQudmFsdWUgPSBkaWZmLmpvaW4obmV3U3RyaW5nLnNsaWNlKG5ld1BvcywgbmV3UG9zICsgY29tcG9uZW50LmNvdW50KSk7XG4gICAgICB9XG4gICAgICBuZXdQb3MgKz0gY29tcG9uZW50LmNvdW50O1xuXG4gICAgICAvLyBDb21tb24gY2FzZVxuICAgICAgaWYgKCFjb21wb25lbnQuYWRkZWQpIHtcbiAgICAgICAgb2xkUG9zICs9IGNvbXBvbmVudC5jb3VudDtcbiAgICAgIH1cbiAgICB9IGVsc2Uge1xuICAgICAgY29tcG9uZW50LnZhbHVlID0gZGlmZi5qb2luKG9sZFN0cmluZy5zbGljZShvbGRQb3MsIG9sZFBvcyArIGNvbXBvbmVudC5jb3VudCkpO1xuICAgICAgb2xkUG9zICs9IGNvbXBvbmVudC5jb3VudDtcblxuICAgICAgLy8gUmV2ZXJzZSBhZGQgYW5kIHJlbW92ZSBzbyByZW1vdmVzIGFyZSBvdXRwdXQgZmlyc3QgdG8gbWF0Y2ggY29tbW9uIGNvbnZlbnRpb25cbiAgICAgIC8vIFRoZSBkaWZmaW5nIGFsZ29yaXRobSBpcyB0aWVkIHRvIGFkZCB0aGVuIHJlbW92ZSBvdXRwdXQgYW5kIHRoaXMgaXMgdGhlIHNpbXBsZXN0XG4gICAgICAvLyByb3V0ZSB0byBnZXQgdGhlIGRlc2lyZWQgb3V0cHV0IHdpdGggbWluaW1hbCBvdmVyaGVhZC5cbiAgICAgIGlmIChjb21wb25lbnRQb3MgJiYgY29tcG9uZW50c1tjb21wb25lbnRQb3MgLSAxXS5hZGRlZCkge1xuICAgICAgICBsZXQgdG1wID0gY29tcG9uZW50c1tjb21wb25lbnRQb3MgLSAxXTtcbiAgICAgICAgY29tcG9uZW50c1tjb21wb25lbnRQb3MgLSAxXSA9IGNvbXBvbmVudHNbY29tcG9uZW50UG9zXTtcbiAgICAgICAgY29tcG9uZW50c1tjb21wb25lbnRQb3NdID0gdG1wO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIFNwZWNpYWwgY2FzZSBoYW5kbGUgZm9yIHdoZW4gb25lIHRlcm1pbmFsIGlzIGlnbm9yZWQgKGkuZS4gd2hpdGVzcGFjZSkuXG4gIC8vIEZvciB0aGlzIGNhc2Ugd2UgbWVyZ2UgdGhlIHRlcm1pbmFsIGludG8gdGhlIHByaW9yIHN0cmluZyBhbmQgZHJvcCB0aGUgY2hhbmdlLlxuICAvLyBUaGlzIGlzIG9ubHkgYXZhaWxhYmxlIGZvciBzdHJpbmcgbW9kZS5cbiAgbGV0IGxhc3RDb21wb25lbnQgPSBjb21wb25lbnRzW2NvbXBvbmVudExlbiAtIDFdO1xuICBpZiAoY29tcG9uZW50TGVuID4gMVxuICAgICAgJiYgdHlwZW9mIGxhc3RDb21wb25lbnQudmFsdWUgPT09ICdzdHJpbmcnXG4gICAgICAmJiAobGFzdENvbXBvbmVudC5hZGRlZCB8fCBsYXN0Q29tcG9uZW50LnJlbW92ZWQpXG4gICAgICAmJiBkaWZmLmVxdWFscygnJywgbGFzdENvbXBvbmVudC52YWx1ZSkpIHtcbiAgICBjb21wb25lbnRzW2NvbXBvbmVudExlbiAtIDJdLnZhbHVlICs9IGxhc3RDb21wb25lbnQudmFsdWU7XG4gICAgY29tcG9uZW50cy5wb3AoKTtcbiAgfVxuXG4gIHJldHVybiBjb21wb25lbnRzO1xufVxuXG5mdW5jdGlvbiBjbG9uZVBhdGgocGF0aCkge1xuICByZXR1cm4geyBuZXdQb3M6IHBhdGgubmV3UG9zLCBjb21wb25lbnRzOiBwYXRoLmNvbXBvbmVudHMuc2xpY2UoMCkgfTtcbn1cbiJdfQ==
@@ -0,0 +1,37 @@
1
+ /*istanbul ignore start*/
2
+ "use strict";
3
+
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.diffChars = diffChars;
8
+ exports.characterDiff = void 0;
9
+
10
+ /*istanbul ignore end*/
11
+ var
12
+ /*istanbul ignore start*/
13
+ _base = _interopRequireDefault(require("./base"))
14
+ /*istanbul ignore end*/
15
+ ;
16
+
17
+ /*istanbul ignore start*/ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
18
+
19
+ /*istanbul ignore end*/
20
+ var characterDiff = new
21
+ /*istanbul ignore start*/
22
+ _base
23
+ /*istanbul ignore end*/
24
+ .
25
+ /*istanbul ignore start*/
26
+ default
27
+ /*istanbul ignore end*/
28
+ ();
29
+
30
+ /*istanbul ignore start*/
31
+ exports.characterDiff = characterDiff;
32
+
33
+ /*istanbul ignore end*/
34
+ function diffChars(oldStr, newStr, options) {
35
+ return characterDiff.diff(oldStr, newStr, options);
36
+ }
37
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9kaWZmL2NoYXJhY3Rlci5qcyJdLCJuYW1lcyI6WyJjaGFyYWN0ZXJEaWZmIiwiRGlmZiIsImRpZmZDaGFycyIsIm9sZFN0ciIsIm5ld1N0ciIsIm9wdGlvbnMiLCJkaWZmIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7O0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTs7Ozs7QUFFTyxJQUFNQSxhQUFhLEdBQUc7QUFBSUM7QUFBQUE7QUFBQUE7QUFBQUE7QUFBQUE7QUFBQUE7QUFBSjtBQUFBLEVBQXRCOzs7Ozs7QUFDQSxTQUFTQyxTQUFULENBQW1CQyxNQUFuQixFQUEyQkMsTUFBM0IsRUFBbUNDLE9BQW5DLEVBQTRDO0FBQUUsU0FBT0wsYUFBYSxDQUFDTSxJQUFkLENBQW1CSCxNQUFuQixFQUEyQkMsTUFBM0IsRUFBbUNDLE9BQW5DLENBQVA7QUFBcUQiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgRGlmZiBmcm9tICcuL2Jhc2UnO1xuXG5leHBvcnQgY29uc3QgY2hhcmFjdGVyRGlmZiA9IG5ldyBEaWZmKCk7XG5leHBvcnQgZnVuY3Rpb24gZGlmZkNoYXJzKG9sZFN0ciwgbmV3U3RyLCBvcHRpb25zKSB7IHJldHVybiBjaGFyYWN0ZXJEaWZmLmRpZmYob2xkU3RyLCBuZXdTdHIsIG9wdGlvbnMpOyB9XG4iXX0=
@@ -0,0 +1,41 @@
1
+ /*istanbul ignore start*/
2
+ "use strict";
3
+
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.diffCss = diffCss;
8
+ exports.cssDiff = void 0;
9
+
10
+ /*istanbul ignore end*/
11
+ var
12
+ /*istanbul ignore start*/
13
+ _base = _interopRequireDefault(require("./base"))
14
+ /*istanbul ignore end*/
15
+ ;
16
+
17
+ /*istanbul ignore start*/ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
18
+
19
+ /*istanbul ignore end*/
20
+ var cssDiff = new
21
+ /*istanbul ignore start*/
22
+ _base
23
+ /*istanbul ignore end*/
24
+ .
25
+ /*istanbul ignore start*/
26
+ default
27
+ /*istanbul ignore end*/
28
+ ();
29
+
30
+ /*istanbul ignore start*/
31
+ exports.cssDiff = cssDiff;
32
+
33
+ /*istanbul ignore end*/
34
+ cssDiff.tokenize = function (value) {
35
+ return value.split(/([{}:;,]|\s+)/);
36
+ };
37
+
38
+ function diffCss(oldStr, newStr, callback) {
39
+ return cssDiff.diff(oldStr, newStr, callback);
40
+ }
41
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9kaWZmL2Nzcy5qcyJdLCJuYW1lcyI6WyJjc3NEaWZmIiwiRGlmZiIsInRva2VuaXplIiwidmFsdWUiLCJzcGxpdCIsImRpZmZDc3MiLCJvbGRTdHIiLCJuZXdTdHIiLCJjYWxsYmFjayIsImRpZmYiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBOzs7OztBQUVPLElBQU1BLE9BQU8sR0FBRztBQUFJQztBQUFBQTtBQUFBQTtBQUFBQTtBQUFBQTtBQUFBQTtBQUFKO0FBQUEsRUFBaEI7Ozs7OztBQUNQRCxPQUFPLENBQUNFLFFBQVIsR0FBbUIsVUFBU0MsS0FBVCxFQUFnQjtBQUNqQyxTQUFPQSxLQUFLLENBQUNDLEtBQU4sQ0FBWSxlQUFaLENBQVA7QUFDRCxDQUZEOztBQUlPLFNBQVNDLE9BQVQsQ0FBaUJDLE1BQWpCLEVBQXlCQyxNQUF6QixFQUFpQ0MsUUFBakMsRUFBMkM7QUFBRSxTQUFPUixPQUFPLENBQUNTLElBQVIsQ0FBYUgsTUFBYixFQUFxQkMsTUFBckIsRUFBNkJDLFFBQTdCLENBQVA7QUFBZ0QiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgRGlmZiBmcm9tICcuL2Jhc2UnO1xuXG5leHBvcnQgY29uc3QgY3NzRGlmZiA9IG5ldyBEaWZmKCk7XG5jc3NEaWZmLnRva2VuaXplID0gZnVuY3Rpb24odmFsdWUpIHtcbiAgcmV0dXJuIHZhbHVlLnNwbGl0KC8oW3t9OjssXXxcXHMrKS8pO1xufTtcblxuZXhwb3J0IGZ1bmN0aW9uIGRpZmZDc3Mob2xkU3RyLCBuZXdTdHIsIGNhbGxiYWNrKSB7IHJldHVybiBjc3NEaWZmLmRpZmYob2xkU3RyLCBuZXdTdHIsIGNhbGxiYWNrKTsgfVxuIl19