ext_yarn 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (618) hide show
  1. checksums.yaml +7 -0
  2. data/.gitignore +125 -0
  3. data/.ruby-version +1 -0
  4. data/Gemfile +21 -0
  5. data/Gemfile.lock +78 -0
  6. data/MIT-LICENSE +20 -0
  7. data/README.md +3 -0
  8. data/bin/yarn +12 -0
  9. data/ext_yarn.gemspec +23 -0
  10. data/lib/ext_yarn/engine.rb +21 -0
  11. data/lib/ext_yarn/version.rb +3 -0
  12. data/lib/ext_yarn.rb +5 -0
  13. data/node_modules/.yarn-integrity +64 -0
  14. data/node_modules/bootstrap-sass/LICENSE +22 -0
  15. data/node_modules/bootstrap-sass/assets/javascripts/bootstrap/affix.js +162 -0
  16. data/node_modules/bootstrap-sass/assets/javascripts/bootstrap/alert.js +94 -0
  17. data/node_modules/bootstrap-sass/assets/javascripts/bootstrap/button.js +125 -0
  18. data/node_modules/bootstrap-sass/assets/javascripts/bootstrap/carousel.js +237 -0
  19. data/node_modules/bootstrap-sass/assets/javascripts/bootstrap/collapse.js +212 -0
  20. data/node_modules/bootstrap-sass/assets/javascripts/bootstrap/dropdown.js +165 -0
  21. data/node_modules/bootstrap-sass/assets/javascripts/bootstrap/modal.js +339 -0
  22. data/node_modules/bootstrap-sass/assets/javascripts/bootstrap/popover.js +108 -0
  23. data/node_modules/bootstrap-sass/assets/javascripts/bootstrap/scrollspy.js +172 -0
  24. data/node_modules/bootstrap-sass/assets/javascripts/bootstrap/tab.js +155 -0
  25. data/node_modules/bootstrap-sass/assets/javascripts/bootstrap/tooltip.js +520 -0
  26. data/node_modules/bootstrap-sass/assets/javascripts/bootstrap/transition.js +59 -0
  27. data/node_modules/bootstrap-sass/assets/javascripts/bootstrap-sprockets.js +12 -0
  28. data/node_modules/bootstrap-sass/assets/javascripts/bootstrap.js +2377 -0
  29. data/node_modules/bootstrap-sass/assets/stylesheets/_bootstrap-compass.scss +9 -0
  30. data/node_modules/bootstrap-sass/assets/stylesheets/_bootstrap-mincer.scss +19 -0
  31. data/node_modules/bootstrap-sass/assets/stylesheets/_bootstrap-sprockets.scss +9 -0
  32. data/node_modules/bootstrap-sass/assets/stylesheets/_bootstrap.scss +56 -0
  33. data/node_modules/bootstrap-sass/assets/stylesheets/bootstrap/_alerts.scss +73 -0
  34. data/node_modules/bootstrap-sass/assets/stylesheets/bootstrap/_badges.scss +68 -0
  35. data/node_modules/bootstrap-sass/assets/stylesheets/bootstrap/_breadcrumbs.scss +28 -0
  36. data/node_modules/bootstrap-sass/assets/stylesheets/bootstrap/_button-groups.scss +244 -0
  37. data/node_modules/bootstrap-sass/assets/stylesheets/bootstrap/_buttons.scss +168 -0
  38. data/node_modules/bootstrap-sass/assets/stylesheets/bootstrap/_carousel.scss +270 -0
  39. data/node_modules/bootstrap-sass/assets/stylesheets/bootstrap/_close.scss +36 -0
  40. data/node_modules/bootstrap-sass/assets/stylesheets/bootstrap/_code.scss +69 -0
  41. data/node_modules/bootstrap-sass/assets/stylesheets/bootstrap/_component-animations.scss +37 -0
  42. data/node_modules/bootstrap-sass/assets/stylesheets/bootstrap/_dropdowns.scss +216 -0
  43. data/node_modules/bootstrap-sass/assets/stylesheets/bootstrap/_forms.scss +617 -0
  44. data/node_modules/bootstrap-sass/assets/stylesheets/bootstrap/_glyphicons.scss +307 -0
  45. data/node_modules/bootstrap-sass/assets/stylesheets/bootstrap/_grid.scss +84 -0
  46. data/node_modules/bootstrap-sass/assets/stylesheets/bootstrap/_input-groups.scss +171 -0
  47. data/node_modules/bootstrap-sass/assets/stylesheets/bootstrap/_jumbotron.scss +54 -0
  48. data/node_modules/bootstrap-sass/assets/stylesheets/bootstrap/_labels.scss +66 -0
  49. data/node_modules/bootstrap-sass/assets/stylesheets/bootstrap/_list-group.scss +130 -0
  50. data/node_modules/bootstrap-sass/assets/stylesheets/bootstrap/_media.scss +66 -0
  51. data/node_modules/bootstrap-sass/assets/stylesheets/bootstrap/_mixins.scss +40 -0
  52. data/node_modules/bootstrap-sass/assets/stylesheets/bootstrap/_modals.scss +150 -0
  53. data/node_modules/bootstrap-sass/assets/stylesheets/bootstrap/_navbar.scss +662 -0
  54. data/node_modules/bootstrap-sass/assets/stylesheets/bootstrap/_navs.scss +242 -0
  55. data/node_modules/bootstrap-sass/assets/stylesheets/bootstrap/_normalize.scss +424 -0
  56. data/node_modules/bootstrap-sass/assets/stylesheets/bootstrap/_pager.scss +54 -0
  57. data/node_modules/bootstrap-sass/assets/stylesheets/bootstrap/_pagination.scss +89 -0
  58. data/node_modules/bootstrap-sass/assets/stylesheets/bootstrap/_panels.scss +271 -0
  59. data/node_modules/bootstrap-sass/assets/stylesheets/bootstrap/_popovers.scss +131 -0
  60. data/node_modules/bootstrap-sass/assets/stylesheets/bootstrap/_print.scss +101 -0
  61. data/node_modules/bootstrap-sass/assets/stylesheets/bootstrap/_progress-bars.scss +87 -0
  62. data/node_modules/bootstrap-sass/assets/stylesheets/bootstrap/_responsive-embed.scss +35 -0
  63. data/node_modules/bootstrap-sass/assets/stylesheets/bootstrap/_responsive-utilities.scss +179 -0
  64. data/node_modules/bootstrap-sass/assets/stylesheets/bootstrap/_scaffolding.scss +161 -0
  65. data/node_modules/bootstrap-sass/assets/stylesheets/bootstrap/_tables.scss +234 -0
  66. data/node_modules/bootstrap-sass/assets/stylesheets/bootstrap/_theme.scss +291 -0
  67. data/node_modules/bootstrap-sass/assets/stylesheets/bootstrap/_thumbnails.scss +38 -0
  68. data/node_modules/bootstrap-sass/assets/stylesheets/bootstrap/_tooltip.scss +101 -0
  69. data/node_modules/bootstrap-sass/assets/stylesheets/bootstrap/_type.scss +298 -0
  70. data/node_modules/bootstrap-sass/assets/stylesheets/bootstrap/_utilities.scss +55 -0
  71. data/node_modules/bootstrap-sass/assets/stylesheets/bootstrap/_variables.scss +874 -0
  72. data/node_modules/bootstrap-sass/assets/stylesheets/bootstrap/_wells.scss +29 -0
  73. data/node_modules/bootstrap-sass/assets/stylesheets/bootstrap/mixins/_alerts.scss +14 -0
  74. data/node_modules/bootstrap-sass/assets/stylesheets/bootstrap/mixins/_background-variant.scss +12 -0
  75. data/node_modules/bootstrap-sass/assets/stylesheets/bootstrap/mixins/_border-radius.scss +18 -0
  76. data/node_modules/bootstrap-sass/assets/stylesheets/bootstrap/mixins/_buttons.scss +65 -0
  77. data/node_modules/bootstrap-sass/assets/stylesheets/bootstrap/mixins/_center-block.scss +7 -0
  78. data/node_modules/bootstrap-sass/assets/stylesheets/bootstrap/mixins/_clearfix.scss +22 -0
  79. data/node_modules/bootstrap-sass/assets/stylesheets/bootstrap/mixins/_forms.scss +88 -0
  80. data/node_modules/bootstrap-sass/assets/stylesheets/bootstrap/mixins/_gradients.scss +58 -0
  81. data/node_modules/bootstrap-sass/assets/stylesheets/bootstrap/mixins/_grid-framework.scss +81 -0
  82. data/node_modules/bootstrap-sass/assets/stylesheets/bootstrap/mixins/_grid.scss +122 -0
  83. data/node_modules/bootstrap-sass/assets/stylesheets/bootstrap/mixins/_hide-text.scss +21 -0
  84. data/node_modules/bootstrap-sass/assets/stylesheets/bootstrap/mixins/_image.scss +33 -0
  85. data/node_modules/bootstrap-sass/assets/stylesheets/bootstrap/mixins/_labels.scss +12 -0
  86. data/node_modules/bootstrap-sass/assets/stylesheets/bootstrap/mixins/_list-group.scss +32 -0
  87. data/node_modules/bootstrap-sass/assets/stylesheets/bootstrap/mixins/_nav-divider.scss +10 -0
  88. data/node_modules/bootstrap-sass/assets/stylesheets/bootstrap/mixins/_nav-vertical-align.scss +9 -0
  89. data/node_modules/bootstrap-sass/assets/stylesheets/bootstrap/mixins/_opacity.scss +8 -0
  90. data/node_modules/bootstrap-sass/assets/stylesheets/bootstrap/mixins/_pagination.scss +24 -0
  91. data/node_modules/bootstrap-sass/assets/stylesheets/bootstrap/mixins/_panels.scss +24 -0
  92. data/node_modules/bootstrap-sass/assets/stylesheets/bootstrap/mixins/_progress-bar.scss +10 -0
  93. data/node_modules/bootstrap-sass/assets/stylesheets/bootstrap/mixins/_reset-filter.scss +8 -0
  94. data/node_modules/bootstrap-sass/assets/stylesheets/bootstrap/mixins/_reset-text.scss +18 -0
  95. data/node_modules/bootstrap-sass/assets/stylesheets/bootstrap/mixins/_resize.scss +6 -0
  96. data/node_modules/bootstrap-sass/assets/stylesheets/bootstrap/mixins/_responsive-visibility.scss +21 -0
  97. data/node_modules/bootstrap-sass/assets/stylesheets/bootstrap/mixins/_size.scss +10 -0
  98. data/node_modules/bootstrap-sass/assets/stylesheets/bootstrap/mixins/_tab-focus.scss +9 -0
  99. data/node_modules/bootstrap-sass/assets/stylesheets/bootstrap/mixins/_table-row.scss +28 -0
  100. data/node_modules/bootstrap-sass/assets/stylesheets/bootstrap/mixins/_text-emphasis.scss +12 -0
  101. data/node_modules/bootstrap-sass/assets/stylesheets/bootstrap/mixins/_text-overflow.scss +8 -0
  102. data/node_modules/bootstrap-sass/assets/stylesheets/bootstrap/mixins/_vendor-prefixes.scss +222 -0
  103. data/node_modules/bootstrap-sass/package.json +44 -0
  104. data/node_modules/bootswatch/cerulean/_bootswatch.scss +131 -0
  105. data/node_modules/bootswatch/cerulean/_variables.scss +870 -0
  106. data/node_modules/bootswatch/cosmo/_bootswatch.scss +262 -0
  107. data/node_modules/bootswatch/cosmo/_variables.scss +870 -0
  108. data/node_modules/bootswatch/cyborg/_bootswatch.scss +243 -0
  109. data/node_modules/bootswatch/cyborg/_variables.scss +870 -0
  110. data/node_modules/bootswatch/darkly/_bootswatch.scss +351 -0
  111. data/node_modules/bootswatch/darkly/_variables.scss +870 -0
  112. data/node_modules/bootswatch/flatly/_bootswatch.scss +330 -0
  113. data/node_modules/bootswatch/flatly/_variables.scss +870 -0
  114. data/node_modules/bootswatch/journal/_bootswatch.scss +145 -0
  115. data/node_modules/bootswatch/journal/_variables.scss +870 -0
  116. data/node_modules/bootswatch/lumen/_bootswatch.scss +523 -0
  117. data/node_modules/bootswatch/lumen/_variables.scss +870 -0
  118. data/node_modules/bootswatch/package.json +26 -0
  119. data/node_modules/bootswatch/paper/_bootswatch.scss +620 -0
  120. data/node_modules/bootswatch/paper/_variables.scss +870 -0
  121. data/node_modules/bootswatch/readable/_bootswatch.scss +183 -0
  122. data/node_modules/bootswatch/readable/_variables.scss +870 -0
  123. data/node_modules/bootswatch/sandstone/_bootswatch.scss +196 -0
  124. data/node_modules/bootswatch/sandstone/_variables.scss +870 -0
  125. data/node_modules/bootswatch/simplex/_bootswatch.scss +170 -0
  126. data/node_modules/bootswatch/simplex/_variables.scss +870 -0
  127. data/node_modules/bootswatch/slate/_bootswatch.scss +448 -0
  128. data/node_modules/bootswatch/slate/_variables.scss +870 -0
  129. data/node_modules/bootswatch/spacelab/_bootswatch.scss +142 -0
  130. data/node_modules/bootswatch/spacelab/_variables.scss +870 -0
  131. data/node_modules/bootswatch/superhero/_bootswatch.scss +360 -0
  132. data/node_modules/bootswatch/superhero/_variables.scss +870 -0
  133. data/node_modules/bootswatch/united/_bootswatch.scss +56 -0
  134. data/node_modules/bootswatch/united/_variables.scss +870 -0
  135. data/node_modules/bootswatch/yeti/_bootswatch.scss +445 -0
  136. data/node_modules/bootswatch/yeti/_variables.scss +870 -0
  137. data/node_modules/chart.js/dist/Chart.bundle.js +18919 -0
  138. data/node_modules/chart.js/dist/Chart.js +14384 -0
  139. data/node_modules/chart.js/package.json +57 -0
  140. data/node_modules/chartkick/chartkick.js +1853 -0
  141. data/node_modules/chartkick/package.json +25 -0
  142. data/node_modules/eonasdan-bootstrap-datetimepicker/package.json +51 -0
  143. data/node_modules/eonasdan-bootstrap-datetimepicker/src/js/bootstrap-datetimepicker.js +2636 -0
  144. data/node_modules/eonasdan-bootstrap-datetimepicker/src/sass/_bootstrap-datetimepicker.scss +344 -0
  145. data/node_modules/eonasdan-bootstrap-datetimepicker/src/sass/bootstrap-datetimepicker-build.scss +16 -0
  146. data/node_modules/file-saver/FileSaver.js +188 -0
  147. data/node_modules/file-saver/package.json +28 -0
  148. data/node_modules/font-awesome-sass/LICENSE.txt +22 -0
  149. data/node_modules/font-awesome-sass/assets/fonts/font-awesome/fontawesome-webfont.eot +0 -0
  150. data/node_modules/font-awesome-sass/assets/fonts/font-awesome/fontawesome-webfont.svg +2671 -0
  151. data/node_modules/font-awesome-sass/assets/fonts/font-awesome/fontawesome-webfont.ttf +0 -0
  152. data/node_modules/font-awesome-sass/assets/fonts/font-awesome/fontawesome-webfont.woff +0 -0
  153. data/node_modules/font-awesome-sass/assets/fonts/font-awesome/fontawesome-webfont.woff2 +0 -0
  154. data/node_modules/font-awesome-sass/assets/stylesheets/_font-awesome-compass.scss +5 -0
  155. data/node_modules/font-awesome-sass/assets/stylesheets/_font-awesome-sprockets.scss +5 -0
  156. data/node_modules/font-awesome-sass/assets/stylesheets/_font-awesome.scss +18 -0
  157. data/node_modules/font-awesome-sass/assets/stylesheets/font-awesome/_animated.scss +34 -0
  158. data/node_modules/font-awesome-sass/assets/stylesheets/font-awesome/_bordered-pulled.scss +25 -0
  159. data/node_modules/font-awesome-sass/assets/stylesheets/font-awesome/_core.scss +12 -0
  160. data/node_modules/font-awesome-sass/assets/stylesheets/font-awesome/_fixed-width.scss +6 -0
  161. data/node_modules/font-awesome-sass/assets/stylesheets/font-awesome/_icons.scss +789 -0
  162. data/node_modules/font-awesome-sass/assets/stylesheets/font-awesome/_larger.scss +13 -0
  163. data/node_modules/font-awesome-sass/assets/stylesheets/font-awesome/_list.scss +19 -0
  164. data/node_modules/font-awesome-sass/assets/stylesheets/font-awesome/_mixins.scss +60 -0
  165. data/node_modules/font-awesome-sass/assets/stylesheets/font-awesome/_path.scss +14 -0
  166. data/node_modules/font-awesome-sass/assets/stylesheets/font-awesome/_rotated-flipped.scss +20 -0
  167. data/node_modules/font-awesome-sass/assets/stylesheets/font-awesome/_screen-reader.scss +5 -0
  168. data/node_modules/font-awesome-sass/assets/stylesheets/font-awesome/_stacked.scss +20 -0
  169. data/node_modules/font-awesome-sass/assets/stylesheets/font-awesome/_variables.scss +802 -0
  170. data/node_modules/font-awesome-sass/package.json +19 -0
  171. data/node_modules/jquery/dist/jquery.js +10253 -0
  172. data/node_modules/jquery/dist/jquery.slim.js +8160 -0
  173. data/node_modules/jquery/package.json +97 -0
  174. data/node_modules/jquery-pjax/jquery.pjax.js +903 -0
  175. data/node_modules/jquery-pjax/package.json +18 -0
  176. data/node_modules/jquery-ui/package.json +74 -0
  177. data/node_modules/jquery-ui/themes/base/accordion.css +23 -0
  178. data/node_modules/jquery-ui/themes/base/all.css +12 -0
  179. data/node_modules/jquery-ui/themes/base/autocomplete.css +16 -0
  180. data/node_modules/jquery-ui/themes/base/base.css +30 -0
  181. data/node_modules/jquery-ui/themes/base/button.css +82 -0
  182. data/node_modules/jquery-ui/themes/base/checkboxradio.css +34 -0
  183. data/node_modules/jquery-ui/themes/base/controlgroup.css +65 -0
  184. data/node_modules/jquery-ui/themes/base/core.css +97 -0
  185. data/node_modules/jquery-ui/themes/base/datepicker.css +185 -0
  186. data/node_modules/jquery-ui/themes/base/dialog.css +101 -0
  187. data/node_modules/jquery-ui/themes/base/draggable.css +12 -0
  188. data/node_modules/jquery-ui/themes/base/images/ui-bg_flat_0_aaaaaa_40x100.png +0 -0
  189. data/node_modules/jquery-ui/themes/base/images/ui-icons_444444_256x240.png +0 -0
  190. data/node_modules/jquery-ui/themes/base/images/ui-icons_555555_256x240.png +0 -0
  191. data/node_modules/jquery-ui/themes/base/images/ui-icons_777620_256x240.png +0 -0
  192. data/node_modules/jquery-ui/themes/base/images/ui-icons_777777_256x240.png +0 -0
  193. data/node_modules/jquery-ui/themes/base/images/ui-icons_cc0000_256x240.png +0 -0
  194. data/node_modules/jquery-ui/themes/base/images/ui-icons_ffffff_256x240.png +0 -0
  195. data/node_modules/jquery-ui/themes/base/menu.css +64 -0
  196. data/node_modules/jquery-ui/themes/base/progressbar.css +28 -0
  197. data/node_modules/jquery-ui/themes/base/resizable.css +78 -0
  198. data/node_modules/jquery-ui/themes/base/selectable.css +17 -0
  199. data/node_modules/jquery-ui/themes/base/selectmenu.css +50 -0
  200. data/node_modules/jquery-ui/themes/base/slider.css +75 -0
  201. data/node_modules/jquery-ui/themes/base/sortable.css +12 -0
  202. data/node_modules/jquery-ui/themes/base/spinner.css +52 -0
  203. data/node_modules/jquery-ui/themes/base/tabs.css +51 -0
  204. data/node_modules/jquery-ui/themes/base/theme.css +443 -0
  205. data/node_modules/jquery-ui/themes/base/tooltip.css +19 -0
  206. data/node_modules/jquery-ui/ui/core.js +21 -0
  207. data/node_modules/jquery-ui/ui/data.js +39 -0
  208. data/node_modules/jquery-ui/ui/disable-selection.js +46 -0
  209. data/node_modules/jquery-ui/ui/effect.js +1635 -0
  210. data/node_modules/jquery-ui/ui/effects/effect-blind.js +70 -0
  211. data/node_modules/jquery-ui/ui/effects/effect-bounce.js +110 -0
  212. data/node_modules/jquery-ui/ui/effects/effect-clip.js +65 -0
  213. data/node_modules/jquery-ui/ui/effects/effect-drop.js +69 -0
  214. data/node_modules/jquery-ui/ui/effects/effect-explode.js +111 -0
  215. data/node_modules/jquery-ui/ui/effects/effect-fade.js +47 -0
  216. data/node_modules/jquery-ui/ui/effects/effect-fold.js +89 -0
  217. data/node_modules/jquery-ui/ui/effects/effect-highlight.js +57 -0
  218. data/node_modules/jquery-ui/ui/effects/effect-puff.js +42 -0
  219. data/node_modules/jquery-ui/ui/effects/effect-pulsate.js +64 -0
  220. data/node_modules/jquery-ui/ui/effects/effect-scale.js +56 -0
  221. data/node_modules/jquery-ui/ui/effects/effect-shake.js +74 -0
  222. data/node_modules/jquery-ui/ui/effects/effect-size.js +191 -0
  223. data/node_modules/jquery-ui/ui/effects/effect-slide.js +76 -0
  224. data/node_modules/jquery-ui/ui/effects/effect-transfer.js +40 -0
  225. data/node_modules/jquery-ui/ui/escape-selector.js +21 -0
  226. data/node_modules/jquery-ui/ui/focusable.js +84 -0
  227. data/node_modules/jquery-ui/ui/form-reset-mixin.js +77 -0
  228. data/node_modules/jquery-ui/ui/form.js +20 -0
  229. data/node_modules/jquery-ui/ui/i18n/datepicker-af.js +37 -0
  230. data/node_modules/jquery-ui/ui/i18n/datepicker-ar-DZ.js +39 -0
  231. data/node_modules/jquery-ui/ui/i18n/datepicker-ar.js +39 -0
  232. data/node_modules/jquery-ui/ui/i18n/datepicker-az.js +37 -0
  233. data/node_modules/jquery-ui/ui/i18n/datepicker-be.js +37 -0
  234. data/node_modules/jquery-ui/ui/i18n/datepicker-bg.js +38 -0
  235. data/node_modules/jquery-ui/ui/i18n/datepicker-bs.js +37 -0
  236. data/node_modules/jquery-ui/ui/i18n/datepicker-ca.js +37 -0
  237. data/node_modules/jquery-ui/ui/i18n/datepicker-cs.js +37 -0
  238. data/node_modules/jquery-ui/ui/i18n/datepicker-cy-GB.js +45 -0
  239. data/node_modules/jquery-ui/ui/i18n/datepicker-da.js +37 -0
  240. data/node_modules/jquery-ui/ui/i18n/datepicker-de.js +37 -0
  241. data/node_modules/jquery-ui/ui/i18n/datepicker-el.js +37 -0
  242. data/node_modules/jquery-ui/ui/i18n/datepicker-en-AU.js +37 -0
  243. data/node_modules/jquery-ui/ui/i18n/datepicker-en-GB.js +37 -0
  244. data/node_modules/jquery-ui/ui/i18n/datepicker-en-NZ.js +37 -0
  245. data/node_modules/jquery-ui/ui/i18n/datepicker-eo.js +37 -0
  246. data/node_modules/jquery-ui/ui/i18n/datepicker-es.js +37 -0
  247. data/node_modules/jquery-ui/ui/i18n/datepicker-et.js +45 -0
  248. data/node_modules/jquery-ui/ui/i18n/datepicker-eu.js +36 -0
  249. data/node_modules/jquery-ui/ui/i18n/datepicker-fa.js +73 -0
  250. data/node_modules/jquery-ui/ui/i18n/datepicker-fi.js +37 -0
  251. data/node_modules/jquery-ui/ui/i18n/datepicker-fo.js +45 -0
  252. data/node_modules/jquery-ui/ui/i18n/datepicker-fr-CA.js +37 -0
  253. data/node_modules/jquery-ui/ui/i18n/datepicker-fr-CH.js +37 -0
  254. data/node_modules/jquery-ui/ui/i18n/datepicker-fr.js +39 -0
  255. data/node_modules/jquery-ui/ui/i18n/datepicker-gl.js +37 -0
  256. data/node_modules/jquery-ui/ui/i18n/datepicker-he.js +37 -0
  257. data/node_modules/jquery-ui/ui/i18n/datepicker-hi.js +37 -0
  258. data/node_modules/jquery-ui/ui/i18n/datepicker-hr.js +37 -0
  259. data/node_modules/jquery-ui/ui/i18n/datepicker-hu.js +36 -0
  260. data/node_modules/jquery-ui/ui/i18n/datepicker-hy.js +37 -0
  261. data/node_modules/jquery-ui/ui/i18n/datepicker-id.js +37 -0
  262. data/node_modules/jquery-ui/ui/i18n/datepicker-is.js +45 -0
  263. data/node_modules/jquery-ui/ui/i18n/datepicker-it-CH.js +37 -0
  264. data/node_modules/jquery-ui/ui/i18n/datepicker-it.js +37 -0
  265. data/node_modules/jquery-ui/ui/i18n/datepicker-ja.js +37 -0
  266. data/node_modules/jquery-ui/ui/i18n/datepicker-ka.js +48 -0
  267. data/node_modules/jquery-ui/ui/i18n/datepicker-kk.js +37 -0
  268. data/node_modules/jquery-ui/ui/i18n/datepicker-km.js +37 -0
  269. data/node_modules/jquery-ui/ui/i18n/datepicker-ko.js +37 -0
  270. data/node_modules/jquery-ui/ui/i18n/datepicker-ky.js +38 -0
  271. data/node_modules/jquery-ui/ui/i18n/datepicker-lb.js +45 -0
  272. data/node_modules/jquery-ui/ui/i18n/datepicker-lt.js +45 -0
  273. data/node_modules/jquery-ui/ui/i18n/datepicker-lv.js +45 -0
  274. data/node_modules/jquery-ui/ui/i18n/datepicker-mk.js +37 -0
  275. data/node_modules/jquery-ui/ui/i18n/datepicker-ml.js +37 -0
  276. data/node_modules/jquery-ui/ui/i18n/datepicker-ms.js +37 -0
  277. data/node_modules/jquery-ui/ui/i18n/datepicker-nb.js +49 -0
  278. data/node_modules/jquery-ui/ui/i18n/datepicker-nl-BE.js +37 -0
  279. data/node_modules/jquery-ui/ui/i18n/datepicker-nl.js +37 -0
  280. data/node_modules/jquery-ui/ui/i18n/datepicker-nn.js +49 -0
  281. data/node_modules/jquery-ui/ui/i18n/datepicker-no.js +50 -0
  282. data/node_modules/jquery-ui/ui/i18n/datepicker-pl.js +37 -0
  283. data/node_modules/jquery-ui/ui/i18n/datepicker-pt-BR.js +45 -0
  284. data/node_modules/jquery-ui/ui/i18n/datepicker-pt.js +44 -0
  285. data/node_modules/jquery-ui/ui/i18n/datepicker-rm.js +61 -0
  286. data/node_modules/jquery-ui/ui/i18n/datepicker-ro.js +40 -0
  287. data/node_modules/jquery-ui/ui/i18n/datepicker-ru.js +37 -0
  288. data/node_modules/jquery-ui/ui/i18n/datepicker-sk.js +37 -0
  289. data/node_modules/jquery-ui/ui/i18n/datepicker-sl.js +38 -0
  290. data/node_modules/jquery-ui/ui/i18n/datepicker-sq.js +37 -0
  291. data/node_modules/jquery-ui/ui/i18n/datepicker-sr-SR.js +37 -0
  292. data/node_modules/jquery-ui/ui/i18n/datepicker-sr.js +37 -0
  293. data/node_modules/jquery-ui/ui/i18n/datepicker-sv.js +37 -0
  294. data/node_modules/jquery-ui/ui/i18n/datepicker-ta.js +53 -0
  295. data/node_modules/jquery-ui/ui/i18n/datepicker-th.js +37 -0
  296. data/node_modules/jquery-ui/ui/i18n/datepicker-tj.js +37 -0
  297. data/node_modules/jquery-ui/ui/i18n/datepicker-tr.js +37 -0
  298. data/node_modules/jquery-ui/ui/i18n/datepicker-uk.js +38 -0
  299. data/node_modules/jquery-ui/ui/i18n/datepicker-vi.js +37 -0
  300. data/node_modules/jquery-ui/ui/i18n/datepicker-zh-CN.js +37 -0
  301. data/node_modules/jquery-ui/ui/i18n/datepicker-zh-HK.js +37 -0
  302. data/node_modules/jquery-ui/ui/i18n/datepicker-zh-TW.js +37 -0
  303. data/node_modules/jquery-ui/ui/ie.js +15 -0
  304. data/node_modules/jquery-ui/ui/jquery-1-7.js +89 -0
  305. data/node_modules/jquery-ui/ui/keycode.js +45 -0
  306. data/node_modules/jquery-ui/ui/labels.js +62 -0
  307. data/node_modules/jquery-ui/ui/plugin.js +44 -0
  308. data/node_modules/jquery-ui/ui/position.js +498 -0
  309. data/node_modules/jquery-ui/ui/safe-active-element.js +40 -0
  310. data/node_modules/jquery-ui/ui/safe-blur.js +21 -0
  311. data/node_modules/jquery-ui/ui/scroll-parent.js +45 -0
  312. data/node_modules/jquery-ui/ui/tabbable.js +35 -0
  313. data/node_modules/jquery-ui/ui/unique-id.js +49 -0
  314. data/node_modules/jquery-ui/ui/version.js +17 -0
  315. data/node_modules/jquery-ui/ui/widget.js +733 -0
  316. data/node_modules/jquery-ui/ui/widgets/accordion.js +613 -0
  317. data/node_modules/jquery-ui/ui/widgets/autocomplete.js +682 -0
  318. data/node_modules/jquery-ui/ui/widgets/button.js +386 -0
  319. data/node_modules/jquery-ui/ui/widgets/checkboxradio.js +286 -0
  320. data/node_modules/jquery-ui/ui/widgets/controlgroup.js +298 -0
  321. data/node_modules/jquery-ui/ui/widgets/datepicker.js +2120 -0
  322. data/node_modules/jquery-ui/ui/widgets/dialog.js +940 -0
  323. data/node_modules/jquery-ui/ui/widgets/draggable.js +1250 -0
  324. data/node_modules/jquery-ui/ui/widgets/droppable.js +497 -0
  325. data/node_modules/jquery-ui/ui/widgets/menu.js +673 -0
  326. data/node_modules/jquery-ui/ui/widgets/mouse.js +226 -0
  327. data/node_modules/jquery-ui/ui/widgets/progressbar.js +178 -0
  328. data/node_modules/jquery-ui/ui/widgets/resizable.js +1201 -0
  329. data/node_modules/jquery-ui/ui/widgets/selectable.js +310 -0
  330. data/node_modules/jquery-ui/ui/widgets/selectmenu.js +687 -0
  331. data/node_modules/jquery-ui/ui/widgets/slider.js +752 -0
  332. data/node_modules/jquery-ui/ui/widgets/sortable.js +1554 -0
  333. data/node_modules/jquery-ui/ui/widgets/spinner.js +575 -0
  334. data/node_modules/jquery-ui/ui/widgets/tabs.js +924 -0
  335. data/node_modules/jquery-ui/ui/widgets/tooltip.js +520 -0
  336. data/node_modules/jquery-ujs/package.json +26 -0
  337. data/node_modules/jquery-ujs/src/rails.js +555 -0
  338. data/node_modules/js-cookie/package.json +49 -0
  339. data/node_modules/js-cookie/src/js.cookie.js +165 -0
  340. data/node_modules/jstz/dist/jstz.js +1428 -0
  341. data/node_modules/jstz/package.json +57 -0
  342. data/node_modules/lodash/core.js +3836 -0
  343. data/node_modules/lodash/lodash.js +17084 -0
  344. data/node_modules/lodash/package.json +17 -0
  345. data/node_modules/moment/locale/af.js +74 -0
  346. data/node_modules/moment/locale/ar-dz.js +60 -0
  347. data/node_modules/moment/locale/ar-kw.js +60 -0
  348. data/node_modules/moment/locale/ar-ly.js +127 -0
  349. data/node_modules/moment/locale/ar-ma.js +61 -0
  350. data/node_modules/moment/locale/ar-sa.js +106 -0
  351. data/node_modules/moment/locale/ar-tn.js +60 -0
  352. data/node_modules/moment/locale/ar.js +143 -0
  353. data/node_modules/moment/locale/az.js +106 -0
  354. data/node_modules/moment/locale/be.js +135 -0
  355. data/node_modules/moment/locale/bg.js +91 -0
  356. data/node_modules/moment/locale/bm.js +60 -0
  357. data/node_modules/moment/locale/bn.js +120 -0
  358. data/node_modules/moment/locale/bo.js +120 -0
  359. data/node_modules/moment/locale/br.js +109 -0
  360. data/node_modules/moment/locale/bs.js +153 -0
  361. data/node_modules/moment/locale/ca.js +89 -0
  362. data/node_modules/moment/locale/cs.js +180 -0
  363. data/node_modules/moment/locale/cv.js +64 -0
  364. data/node_modules/moment/locale/cy.js +82 -0
  365. data/node_modules/moment/locale/da.js +61 -0
  366. data/node_modules/moment/locale/de-at.js +80 -0
  367. data/node_modules/moment/locale/de-ch.js +79 -0
  368. data/node_modules/moment/locale/de.js +79 -0
  369. data/node_modules/moment/locale/dv.js +101 -0
  370. data/node_modules/moment/locale/el.js +101 -0
  371. data/node_modules/moment/locale/en-au.js +68 -0
  372. data/node_modules/moment/locale/en-ca.js +64 -0
  373. data/node_modules/moment/locale/en-gb.js +68 -0
  374. data/node_modules/moment/locale/en-ie.js +68 -0
  375. data/node_modules/moment/locale/en-nz.js +68 -0
  376. data/node_modules/moment/locale/eo.js +74 -0
  377. data/node_modules/moment/locale/es-do.js +92 -0
  378. data/node_modules/moment/locale/es-us.js +84 -0
  379. data/node_modules/moment/locale/es.js +93 -0
  380. data/node_modules/moment/locale/et.js +82 -0
  381. data/node_modules/moment/locale/eu.js +67 -0
  382. data/node_modules/moment/locale/fa.js +108 -0
  383. data/node_modules/moment/locale/fi.js +110 -0
  384. data/node_modules/moment/locale/fo.js +61 -0
  385. data/node_modules/moment/locale/fr-ca.js +75 -0
  386. data/node_modules/moment/locale/fr-ch.js +79 -0
  387. data/node_modules/moment/locale/fr.js +84 -0
  388. data/node_modules/moment/locale/fy.js +76 -0
  389. data/node_modules/moment/locale/gd.js +77 -0
  390. data/node_modules/moment/locale/gl.js +78 -0
  391. data/node_modules/moment/locale/gom-latn.js +124 -0
  392. data/node_modules/moment/locale/gu.js +125 -0
  393. data/node_modules/moment/locale/he.js +100 -0
  394. data/node_modules/moment/locale/hi.js +125 -0
  395. data/node_modules/moment/locale/hr.js +155 -0
  396. data/node_modules/moment/locale/hu.js +111 -0
  397. data/node_modules/moment/locale/hy-am.js +96 -0
  398. data/node_modules/moment/locale/id.js +84 -0
  399. data/node_modules/moment/locale/is.js +133 -0
  400. data/node_modules/moment/locale/it.js +71 -0
  401. data/node_modules/moment/locale/ja.js +81 -0
  402. data/node_modules/moment/locale/jv.js +84 -0
  403. data/node_modules/moment/locale/ka.js +90 -0
  404. data/node_modules/moment/locale/kk.js +88 -0
  405. data/node_modules/moment/locale/km.js +59 -0
  406. data/node_modules/moment/locale/kn.js +127 -0
  407. data/node_modules/moment/locale/ko.js +83 -0
  408. data/node_modules/moment/locale/ky.js +89 -0
  409. data/node_modules/moment/locale/lb.js +138 -0
  410. data/node_modules/moment/locale/lo.js +71 -0
  411. data/node_modules/moment/locale/lt.js +119 -0
  412. data/node_modules/moment/locale/lv.js +99 -0
  413. data/node_modules/moment/locale/me.js +113 -0
  414. data/node_modules/moment/locale/mi.js +65 -0
  415. data/node_modules/moment/locale/mk.js +91 -0
  416. data/node_modules/moment/locale/ml.js +82 -0
  417. data/node_modules/moment/locale/mr.js +162 -0
  418. data/node_modules/moment/locale/ms-my.js +84 -0
  419. data/node_modules/moment/locale/ms.js +83 -0
  420. data/node_modules/moment/locale/mt.js +61 -0
  421. data/node_modules/moment/locale/my.js +97 -0
  422. data/node_modules/moment/locale/nb.js +64 -0
  423. data/node_modules/moment/locale/ne.js +124 -0
  424. data/node_modules/moment/locale/nl-be.js +89 -0
  425. data/node_modules/moment/locale/nl.js +89 -0
  426. data/node_modules/moment/locale/nn.js +61 -0
  427. data/node_modules/moment/locale/pa-in.js +125 -0
  428. data/node_modules/moment/locale/pl.js +127 -0
  429. data/node_modules/moment/locale/pt-br.js +62 -0
  430. data/node_modules/moment/locale/pt.js +66 -0
  431. data/node_modules/moment/locale/ro.js +77 -0
  432. data/node_modules/moment/locale/ru.js +185 -0
  433. data/node_modules/moment/locale/sd.js +99 -0
  434. data/node_modules/moment/locale/se.js +62 -0
  435. data/node_modules/moment/locale/si.js +72 -0
  436. data/node_modules/moment/locale/sk.js +158 -0
  437. data/node_modules/moment/locale/sl.js +174 -0
  438. data/node_modules/moment/locale/sq.js +71 -0
  439. data/node_modules/moment/locale/sr-cyrl.js +112 -0
  440. data/node_modules/moment/locale/sr.js +112 -0
  441. data/node_modules/moment/locale/ss.js +90 -0
  442. data/node_modules/moment/locale/sv.js +70 -0
  443. data/node_modules/moment/locale/sw.js +60 -0
  444. data/node_modules/moment/locale/ta.js +131 -0
  445. data/node_modules/moment/locale/te.js +90 -0
  446. data/node_modules/moment/locale/tet.js +69 -0
  447. data/node_modules/moment/locale/th.js +68 -0
  448. data/node_modules/moment/locale/tl-ph.js +63 -0
  449. data/node_modules/moment/locale/tlh.js +123 -0
  450. data/node_modules/moment/locale/tr.js +91 -0
  451. data/node_modules/moment/locale/tzl.js +93 -0
  452. data/node_modules/moment/locale/tzm-latn.js +59 -0
  453. data/node_modules/moment/locale/tzm.js +59 -0
  454. data/node_modules/moment/locale/uk.js +153 -0
  455. data/node_modules/moment/locale/ur.js +100 -0
  456. data/node_modules/moment/locale/uz-latn.js +59 -0
  457. data/node_modules/moment/locale/uz.js +59 -0
  458. data/node_modules/moment/locale/vi.js +80 -0
  459. data/node_modules/moment/locale/x-pseudo.js +69 -0
  460. data/node_modules/moment/locale/yo.js +61 -0
  461. data/node_modules/moment/locale/zh-cn.js +112 -0
  462. data/node_modules/moment/locale/zh-hk.js +106 -0
  463. data/node_modules/moment/locale/zh-tw.js +105 -0
  464. data/node_modules/moment/min/locales.js +9769 -0
  465. data/node_modules/moment/min/moment-with-locales.js +14289 -0
  466. data/node_modules/moment/moment.js +4535 -0
  467. data/node_modules/moment/package.json +99 -0
  468. data/node_modules/moment-timezone/builds/moment-timezone-with-data-2012-2022.js +1204 -0
  469. data/node_modules/moment-timezone/builds/moment-timezone-with-data.js +1204 -0
  470. data/node_modules/moment-timezone/moment-timezone-utils.js +316 -0
  471. data/node_modules/moment-timezone/moment-timezone.js +605 -0
  472. data/node_modules/moment-timezone/package.json +50 -0
  473. data/node_modules/nprogress/nprogress.css +74 -0
  474. data/node_modules/nprogress/nprogress.js +480 -0
  475. data/node_modules/nprogress/package.json +47 -0
  476. data/node_modules/nprogress/support/extras.css +4 -0
  477. data/node_modules/roboto-fontface/css/mixins.scss +36 -0
  478. data/node_modules/roboto-fontface/css/roboto/sass/roboto-fontface-black-italic.scss +3 -0
  479. data/node_modules/roboto-fontface/css/roboto/sass/roboto-fontface-black.scss +3 -0
  480. data/node_modules/roboto-fontface/css/roboto/sass/roboto-fontface-bold-italic.scss +3 -0
  481. data/node_modules/roboto-fontface/css/roboto/sass/roboto-fontface-bold.scss +3 -0
  482. data/node_modules/roboto-fontface/css/roboto/sass/roboto-fontface-light-italic.scss +3 -0
  483. data/node_modules/roboto-fontface/css/roboto/sass/roboto-fontface-light.scss +3 -0
  484. data/node_modules/roboto-fontface/css/roboto/sass/roboto-fontface-medium-italic.scss +3 -0
  485. data/node_modules/roboto-fontface/css/roboto/sass/roboto-fontface-medium.scss +3 -0
  486. data/node_modules/roboto-fontface/css/roboto/sass/roboto-fontface-regular-italic.scss +3 -0
  487. data/node_modules/roboto-fontface/css/roboto/sass/roboto-fontface-regular.scss +3 -0
  488. data/node_modules/roboto-fontface/css/roboto/sass/roboto-fontface-thin-italic.scss +3 -0
  489. data/node_modules/roboto-fontface/css/roboto/sass/roboto-fontface-thin.scss +3 -0
  490. data/node_modules/roboto-fontface/css/roboto/sass/roboto-fontface.scss +12 -0
  491. data/node_modules/roboto-fontface/css/roboto-condensed/sass/roboto-condensed-fontface-bold-italic.scss +3 -0
  492. data/node_modules/roboto-fontface/css/roboto-condensed/sass/roboto-condensed-fontface-bold.scss +3 -0
  493. data/node_modules/roboto-fontface/css/roboto-condensed/sass/roboto-condensed-fontface-light-italic.scss +3 -0
  494. data/node_modules/roboto-fontface/css/roboto-condensed/sass/roboto-condensed-fontface-light.scss +3 -0
  495. data/node_modules/roboto-fontface/css/roboto-condensed/sass/roboto-condensed-fontface-regular-italic.scss +3 -0
  496. data/node_modules/roboto-fontface/css/roboto-condensed/sass/roboto-condensed-fontface-regular.scss +3 -0
  497. data/node_modules/roboto-fontface/css/roboto-condensed/sass/roboto-condensed-fontface.scss +6 -0
  498. data/node_modules/roboto-fontface/css/roboto-slab/sass/roboto-slab-fontface-bold.scss +3 -0
  499. data/node_modules/roboto-fontface/css/roboto-slab/sass/roboto-slab-fontface-light.scss +3 -0
  500. data/node_modules/roboto-fontface/css/roboto-slab/sass/roboto-slab-fontface-regular.scss +3 -0
  501. data/node_modules/roboto-fontface/css/roboto-slab/sass/roboto-slab-fontface-thin.scss +3 -0
  502. data/node_modules/roboto-fontface/css/roboto-slab/sass/roboto-slab-fontface.scss +4 -0
  503. data/node_modules/roboto-fontface/fonts/roboto/Roboto-Black.eot +0 -0
  504. data/node_modules/roboto-fontface/fonts/roboto/Roboto-Black.svg +10968 -0
  505. data/node_modules/roboto-fontface/fonts/roboto/Roboto-Black.ttf +0 -0
  506. data/node_modules/roboto-fontface/fonts/roboto/Roboto-Black.woff +0 -0
  507. data/node_modules/roboto-fontface/fonts/roboto/Roboto-Black.woff2 +0 -0
  508. data/node_modules/roboto-fontface/fonts/roboto/Roboto-BlackItalic.eot +0 -0
  509. data/node_modules/roboto-fontface/fonts/roboto/Roboto-BlackItalic.svg +11086 -0
  510. data/node_modules/roboto-fontface/fonts/roboto/Roboto-BlackItalic.ttf +0 -0
  511. data/node_modules/roboto-fontface/fonts/roboto/Roboto-BlackItalic.woff +0 -0
  512. data/node_modules/roboto-fontface/fonts/roboto/Roboto-BlackItalic.woff2 +0 -0
  513. data/node_modules/roboto-fontface/fonts/roboto/Roboto-Bold.eot +0 -0
  514. data/node_modules/roboto-fontface/fonts/roboto/Roboto-Bold.svg +11010 -0
  515. data/node_modules/roboto-fontface/fonts/roboto/Roboto-Bold.ttf +0 -0
  516. data/node_modules/roboto-fontface/fonts/roboto/Roboto-Bold.woff +0 -0
  517. data/node_modules/roboto-fontface/fonts/roboto/Roboto-Bold.woff2 +0 -0
  518. data/node_modules/roboto-fontface/fonts/roboto/Roboto-BoldItalic.eot +0 -0
  519. data/node_modules/roboto-fontface/fonts/roboto/Roboto-BoldItalic.svg +11096 -0
  520. data/node_modules/roboto-fontface/fonts/roboto/Roboto-BoldItalic.ttf +0 -0
  521. data/node_modules/roboto-fontface/fonts/roboto/Roboto-BoldItalic.woff +0 -0
  522. data/node_modules/roboto-fontface/fonts/roboto/Roboto-BoldItalic.woff2 +0 -0
  523. data/node_modules/roboto-fontface/fonts/roboto/Roboto-Light.eot +0 -0
  524. data/node_modules/roboto-fontface/fonts/roboto/Roboto-Light.svg +10564 -0
  525. data/node_modules/roboto-fontface/fonts/roboto/Roboto-Light.ttf +0 -0
  526. data/node_modules/roboto-fontface/fonts/roboto/Roboto-Light.woff +0 -0
  527. data/node_modules/roboto-fontface/fonts/roboto/Roboto-Light.woff2 +0 -0
  528. data/node_modules/roboto-fontface/fonts/roboto/Roboto-LightItalic.eot +0 -0
  529. data/node_modules/roboto-fontface/fonts/roboto/Roboto-LightItalic.svg +10646 -0
  530. data/node_modules/roboto-fontface/fonts/roboto/Roboto-LightItalic.ttf +0 -0
  531. data/node_modules/roboto-fontface/fonts/roboto/Roboto-LightItalic.woff +0 -0
  532. data/node_modules/roboto-fontface/fonts/roboto/Roboto-LightItalic.woff2 +0 -0
  533. data/node_modules/roboto-fontface/fonts/roboto/Roboto-Medium.eot +0 -0
  534. data/node_modules/roboto-fontface/fonts/roboto/Roboto-Medium.svg +10999 -0
  535. data/node_modules/roboto-fontface/fonts/roboto/Roboto-Medium.ttf +0 -0
  536. data/node_modules/roboto-fontface/fonts/roboto/Roboto-Medium.woff +0 -0
  537. data/node_modules/roboto-fontface/fonts/roboto/Roboto-Medium.woff2 +0 -0
  538. data/node_modules/roboto-fontface/fonts/roboto/Roboto-MediumItalic.eot +0 -0
  539. data/node_modules/roboto-fontface/fonts/roboto/Roboto-MediumItalic.svg +11100 -0
  540. data/node_modules/roboto-fontface/fonts/roboto/Roboto-MediumItalic.ttf +0 -0
  541. data/node_modules/roboto-fontface/fonts/roboto/Roboto-MediumItalic.woff +0 -0
  542. data/node_modules/roboto-fontface/fonts/roboto/Roboto-MediumItalic.woff2 +0 -0
  543. data/node_modules/roboto-fontface/fonts/roboto/Roboto-Regular.eot +0 -0
  544. data/node_modules/roboto-fontface/fonts/roboto/Roboto-Regular.svg +10520 -0
  545. data/node_modules/roboto-fontface/fonts/roboto/Roboto-Regular.ttf +0 -0
  546. data/node_modules/roboto-fontface/fonts/roboto/Roboto-Regular.woff +0 -0
  547. data/node_modules/roboto-fontface/fonts/roboto/Roboto-Regular.woff2 +0 -0
  548. data/node_modules/roboto-fontface/fonts/roboto/Roboto-RegularItalic.eot +0 -0
  549. data/node_modules/roboto-fontface/fonts/roboto/Roboto-RegularItalic.svg +10629 -0
  550. data/node_modules/roboto-fontface/fonts/roboto/Roboto-RegularItalic.ttf +0 -0
  551. data/node_modules/roboto-fontface/fonts/roboto/Roboto-RegularItalic.woff +0 -0
  552. data/node_modules/roboto-fontface/fonts/roboto/Roboto-RegularItalic.woff2 +0 -0
  553. data/node_modules/roboto-fontface/fonts/roboto/Roboto-Thin.eot +0 -0
  554. data/node_modules/roboto-fontface/fonts/roboto/Roboto-Thin.svg +10617 -0
  555. data/node_modules/roboto-fontface/fonts/roboto/Roboto-Thin.ttf +0 -0
  556. data/node_modules/roboto-fontface/fonts/roboto/Roboto-Thin.woff +0 -0
  557. data/node_modules/roboto-fontface/fonts/roboto/Roboto-Thin.woff2 +0 -0
  558. data/node_modules/roboto-fontface/fonts/roboto/Roboto-ThinItalic.eot +0 -0
  559. data/node_modules/roboto-fontface/fonts/roboto/Roboto-ThinItalic.svg +10726 -0
  560. data/node_modules/roboto-fontface/fonts/roboto/Roboto-ThinItalic.ttf +0 -0
  561. data/node_modules/roboto-fontface/fonts/roboto/Roboto-ThinItalic.woff +0 -0
  562. data/node_modules/roboto-fontface/fonts/roboto/Roboto-ThinItalic.woff2 +0 -0
  563. data/node_modules/roboto-fontface/fonts/roboto-condensed/Roboto-Condensed-Bold.eot +0 -0
  564. data/node_modules/roboto-fontface/fonts/roboto-condensed/Roboto-Condensed-Bold.svg +643 -0
  565. data/node_modules/roboto-fontface/fonts/roboto-condensed/Roboto-Condensed-Bold.ttf +0 -0
  566. data/node_modules/roboto-fontface/fonts/roboto-condensed/Roboto-Condensed-Bold.woff +0 -0
  567. data/node_modules/roboto-fontface/fonts/roboto-condensed/Roboto-Condensed-Bold.woff2 +0 -0
  568. data/node_modules/roboto-fontface/fonts/roboto-condensed/Roboto-Condensed-BoldItalic.eot +0 -0
  569. data/node_modules/roboto-fontface/fonts/roboto-condensed/Roboto-Condensed-BoldItalic.svg +643 -0
  570. data/node_modules/roboto-fontface/fonts/roboto-condensed/Roboto-Condensed-BoldItalic.ttf +0 -0
  571. data/node_modules/roboto-fontface/fonts/roboto-condensed/Roboto-Condensed-BoldItalic.woff +0 -0
  572. data/node_modules/roboto-fontface/fonts/roboto-condensed/Roboto-Condensed-BoldItalic.woff2 +0 -0
  573. data/node_modules/roboto-fontface/fonts/roboto-condensed/Roboto-Condensed-Light.eot +0 -0
  574. data/node_modules/roboto-fontface/fonts/roboto-condensed/Roboto-Condensed-Light.svg +643 -0
  575. data/node_modules/roboto-fontface/fonts/roboto-condensed/Roboto-Condensed-Light.ttf +0 -0
  576. data/node_modules/roboto-fontface/fonts/roboto-condensed/Roboto-Condensed-Light.woff +0 -0
  577. data/node_modules/roboto-fontface/fonts/roboto-condensed/Roboto-Condensed-Light.woff2 +0 -0
  578. data/node_modules/roboto-fontface/fonts/roboto-condensed/Roboto-Condensed-LightItalic.eot +0 -0
  579. data/node_modules/roboto-fontface/fonts/roboto-condensed/Roboto-Condensed-LightItalic.svg +643 -0
  580. data/node_modules/roboto-fontface/fonts/roboto-condensed/Roboto-Condensed-LightItalic.ttf +0 -0
  581. data/node_modules/roboto-fontface/fonts/roboto-condensed/Roboto-Condensed-LightItalic.woff +0 -0
  582. data/node_modules/roboto-fontface/fonts/roboto-condensed/Roboto-Condensed-LightItalic.woff2 +0 -0
  583. data/node_modules/roboto-fontface/fonts/roboto-condensed/Roboto-Condensed-Regular.eot +0 -0
  584. data/node_modules/roboto-fontface/fonts/roboto-condensed/Roboto-Condensed-Regular.svg +644 -0
  585. data/node_modules/roboto-fontface/fonts/roboto-condensed/Roboto-Condensed-Regular.ttf +0 -0
  586. data/node_modules/roboto-fontface/fonts/roboto-condensed/Roboto-Condensed-Regular.woff +0 -0
  587. data/node_modules/roboto-fontface/fonts/roboto-condensed/Roboto-Condensed-Regular.woff2 +0 -0
  588. data/node_modules/roboto-fontface/fonts/roboto-condensed/Roboto-Condensed-RegularItalic.eot +0 -0
  589. data/node_modules/roboto-fontface/fonts/roboto-condensed/Roboto-Condensed-RegularItalic.svg +644 -0
  590. data/node_modules/roboto-fontface/fonts/roboto-condensed/Roboto-Condensed-RegularItalic.ttf +0 -0
  591. data/node_modules/roboto-fontface/fonts/roboto-condensed/Roboto-Condensed-RegularItalic.woff +0 -0
  592. data/node_modules/roboto-fontface/fonts/roboto-condensed/Roboto-Condensed-RegularItalic.woff2 +0 -0
  593. data/node_modules/roboto-fontface/fonts/roboto-slab/Roboto-Slab-Bold.eot +0 -0
  594. data/node_modules/roboto-fontface/fonts/roboto-slab/Roboto-Slab-Bold.svg +679 -0
  595. data/node_modules/roboto-fontface/fonts/roboto-slab/Roboto-Slab-Bold.ttf +0 -0
  596. data/node_modules/roboto-fontface/fonts/roboto-slab/Roboto-Slab-Bold.woff +0 -0
  597. data/node_modules/roboto-fontface/fonts/roboto-slab/Roboto-Slab-Bold.woff2 +0 -0
  598. data/node_modules/roboto-fontface/fonts/roboto-slab/Roboto-Slab-Light.eot +0 -0
  599. data/node_modules/roboto-fontface/fonts/roboto-slab/Roboto-Slab-Light.svg +678 -0
  600. data/node_modules/roboto-fontface/fonts/roboto-slab/Roboto-Slab-Light.ttf +0 -0
  601. data/node_modules/roboto-fontface/fonts/roboto-slab/Roboto-Slab-Light.woff +0 -0
  602. data/node_modules/roboto-fontface/fonts/roboto-slab/Roboto-Slab-Light.woff2 +0 -0
  603. data/node_modules/roboto-fontface/fonts/roboto-slab/Roboto-Slab-Regular.eot +0 -0
  604. data/node_modules/roboto-fontface/fonts/roboto-slab/Roboto-Slab-Regular.svg +678 -0
  605. data/node_modules/roboto-fontface/fonts/roboto-slab/Roboto-Slab-Regular.ttf +0 -0
  606. data/node_modules/roboto-fontface/fonts/roboto-slab/Roboto-Slab-Regular.woff +0 -0
  607. data/node_modules/roboto-fontface/fonts/roboto-slab/Roboto-Slab-Regular.woff2 +0 -0
  608. data/node_modules/roboto-fontface/fonts/roboto-slab/Roboto-Slab-Thin.eot +0 -0
  609. data/node_modules/roboto-fontface/fonts/roboto-slab/Roboto-Slab-Thin.svg +678 -0
  610. data/node_modules/roboto-fontface/fonts/roboto-slab/Roboto-Slab-Thin.ttf +0 -0
  611. data/node_modules/roboto-fontface/fonts/roboto-slab/Roboto-Slab-Thin.woff +0 -0
  612. data/node_modules/roboto-fontface/fonts/roboto-slab/Roboto-Slab-Thin.woff2 +0 -0
  613. data/node_modules/roboto-fontface/package.json +28 -0
  614. data/node_modules/signature_pad/dist/signature_pad.js +610 -0
  615. data/node_modules/signature_pad/package.json +41 -0
  616. data/package.json +25 -0
  617. data/yarn.lock +126 -0
  618. metadata +708 -0
@@ -0,0 +1,28 @@
1
+ {
2
+ "name": "roboto-fontface",
3
+ "version": "0.8.0",
4
+ "description": "A simple package providing the Roboto fontface.",
5
+ "main": "css/roboto/roboto-fontface.css",
6
+ "scripts": {
7
+ "test": "./test.sh"
8
+ },
9
+ "repository": {
10
+ "type": "git",
11
+ "url": "https://github.com/choffmeister/roboto-fontface-bower.git"
12
+ },
13
+ "keywords": [
14
+ "roboto",
15
+ "font",
16
+ "fontface"
17
+ ],
18
+ "author": "Christian Hoffmeister <mail@choffmeister.de> (http://choffmeister.de/)",
19
+ "license": "Apache-2.0",
20
+ "bugs": {
21
+ "url": "https://github.com/choffmeister/roboto-fontface-bower/issues"
22
+ },
23
+ "homepage": "https://github.com/choffmeister/roboto-fontface-bower",
24
+ "devDependencies": {
25
+ "less": "2.7.1",
26
+ "node-sass": "3.8.0"
27
+ }
28
+ }
@@ -0,0 +1,610 @@
1
+ /*!
2
+ * Signature Pad v2.3.2
3
+ * https://github.com/szimek/signature_pad
4
+ *
5
+ * Copyright 2017 Szymon Nowak
6
+ * Released under the MIT license
7
+ *
8
+ * The main idea and some parts of the code (e.g. drawing variable width Bézier curve) are taken from:
9
+ * http://corner.squareup.com/2012/07/smoother-signatures.html
10
+ *
11
+ * Implementation of interpolation using cubic Bézier curves is taken from:
12
+ * http://benknowscode.wordpress.com/2012/09/14/path-interpolation-using-cubic-bezier-and-control-point-estimation-in-javascript
13
+ *
14
+ * Algorithm for approximated length of a Bézier curve is taken from:
15
+ * http://www.lemoda.net/maths/bezier-length/index.html
16
+ *
17
+ */
18
+
19
+ (function (global, factory) {
20
+ typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() :
21
+ typeof define === 'function' && define.amd ? define(factory) :
22
+ (global.SignaturePad = factory());
23
+ }(this, (function () { 'use strict';
24
+
25
+ function Point(x, y, time) {
26
+ this.x = x;
27
+ this.y = y;
28
+ this.time = time || new Date().getTime();
29
+ }
30
+
31
+ Point.prototype.velocityFrom = function (start) {
32
+ return this.time !== start.time ? this.distanceTo(start) / (this.time - start.time) : 1;
33
+ };
34
+
35
+ Point.prototype.distanceTo = function (start) {
36
+ return Math.sqrt(Math.pow(this.x - start.x, 2) + Math.pow(this.y - start.y, 2));
37
+ };
38
+
39
+ Point.prototype.equals = function (other) {
40
+ return this.x === other.x && this.y === other.y && this.time === other.time;
41
+ };
42
+
43
+ function Bezier(startPoint, control1, control2, endPoint) {
44
+ this.startPoint = startPoint;
45
+ this.control1 = control1;
46
+ this.control2 = control2;
47
+ this.endPoint = endPoint;
48
+ }
49
+
50
+ // Returns approximated length.
51
+ Bezier.prototype.length = function () {
52
+ var steps = 10;
53
+ var length = 0;
54
+ var px = void 0;
55
+ var py = void 0;
56
+
57
+ for (var i = 0; i <= steps; i += 1) {
58
+ var t = i / steps;
59
+ var cx = this._point(t, this.startPoint.x, this.control1.x, this.control2.x, this.endPoint.x);
60
+ var cy = this._point(t, this.startPoint.y, this.control1.y, this.control2.y, this.endPoint.y);
61
+ if (i > 0) {
62
+ var xdiff = cx - px;
63
+ var ydiff = cy - py;
64
+ length += Math.sqrt(xdiff * xdiff + ydiff * ydiff);
65
+ }
66
+ px = cx;
67
+ py = cy;
68
+ }
69
+
70
+ return length;
71
+ };
72
+
73
+ /* eslint-disable no-multi-spaces, space-in-parens */
74
+ Bezier.prototype._point = function (t, start, c1, c2, end) {
75
+ return start * (1.0 - t) * (1.0 - t) * (1.0 - t) + 3.0 * c1 * (1.0 - t) * (1.0 - t) * t + 3.0 * c2 * (1.0 - t) * t * t + end * t * t * t;
76
+ };
77
+
78
+ /* eslint-disable */
79
+
80
+ // http://stackoverflow.com/a/27078401/815507
81
+ function throttle(func, wait, options) {
82
+ var context, args, result;
83
+ var timeout = null;
84
+ var previous = 0;
85
+ if (!options) options = {};
86
+ var later = function later() {
87
+ previous = options.leading === false ? 0 : Date.now();
88
+ timeout = null;
89
+ result = func.apply(context, args);
90
+ if (!timeout) context = args = null;
91
+ };
92
+ return function () {
93
+ var now = Date.now();
94
+ if (!previous && options.leading === false) previous = now;
95
+ var remaining = wait - (now - previous);
96
+ context = this;
97
+ args = arguments;
98
+ if (remaining <= 0 || remaining > wait) {
99
+ if (timeout) {
100
+ clearTimeout(timeout);
101
+ timeout = null;
102
+ }
103
+ previous = now;
104
+ result = func.apply(context, args);
105
+ if (!timeout) context = args = null;
106
+ } else if (!timeout && options.trailing !== false) {
107
+ timeout = setTimeout(later, remaining);
108
+ }
109
+ return result;
110
+ };
111
+ }
112
+
113
+ function SignaturePad(canvas, options) {
114
+ var self = this;
115
+ var opts = options || {};
116
+
117
+ this.velocityFilterWeight = opts.velocityFilterWeight || 0.7;
118
+ this.minWidth = opts.minWidth || 0.5;
119
+ this.maxWidth = opts.maxWidth || 2.5;
120
+ this.throttle = 'throttle' in opts ? opts.throttle : 16; // in miliseconds
121
+ this.minDistance = 'minDistance' in opts ? opts.minDistance : 5;
122
+
123
+ if (this.throttle) {
124
+ this._strokeMoveUpdate = throttle(SignaturePad.prototype._strokeUpdate, this.throttle);
125
+ } else {
126
+ this._strokeMoveUpdate = SignaturePad.prototype._strokeUpdate;
127
+ }
128
+
129
+ this.dotSize = opts.dotSize || function () {
130
+ return (this.minWidth + this.maxWidth) / 2;
131
+ };
132
+ this.penColor = opts.penColor || 'black';
133
+ this.backgroundColor = opts.backgroundColor || 'rgba(0,0,0,0)';
134
+ this.onBegin = opts.onBegin;
135
+ this.onEnd = opts.onEnd;
136
+
137
+ this._canvas = canvas;
138
+ this._ctx = canvas.getContext('2d');
139
+ this.clear();
140
+
141
+ // We need add these inline so they are available to unbind while still having
142
+ // access to 'self' we could use _.bind but it's not worth adding a dependency.
143
+ this._handleMouseDown = function (event) {
144
+ if (event.which === 1) {
145
+ self._mouseButtonDown = true;
146
+ self._strokeBegin(event);
147
+ }
148
+ };
149
+
150
+ this._handleMouseMove = function (event) {
151
+ if (self._mouseButtonDown) {
152
+ self._strokeMoveUpdate(event);
153
+ }
154
+ };
155
+
156
+ this._handleMouseUp = function (event) {
157
+ if (event.which === 1 && self._mouseButtonDown) {
158
+ self._mouseButtonDown = false;
159
+ self._strokeEnd(event);
160
+ }
161
+ };
162
+
163
+ this._handleTouchStart = function (event) {
164
+ if (event.targetTouches.length === 1) {
165
+ var touch = event.changedTouches[0];
166
+ self._strokeBegin(touch);
167
+ }
168
+ };
169
+
170
+ this._handleTouchMove = function (event) {
171
+ // Prevent scrolling.
172
+ event.preventDefault();
173
+
174
+ var touch = event.targetTouches[0];
175
+ self._strokeMoveUpdate(touch);
176
+ };
177
+
178
+ this._handleTouchEnd = function (event) {
179
+ var wasCanvasTouched = event.target === self._canvas;
180
+ if (wasCanvasTouched) {
181
+ event.preventDefault();
182
+ self._strokeEnd(event);
183
+ }
184
+ };
185
+
186
+ // Enable mouse and touch event handlers
187
+ this.on();
188
+ }
189
+
190
+ // Public methods
191
+ SignaturePad.prototype.clear = function () {
192
+ var ctx = this._ctx;
193
+ var canvas = this._canvas;
194
+
195
+ ctx.fillStyle = this.backgroundColor;
196
+ ctx.clearRect(0, 0, canvas.width, canvas.height);
197
+ ctx.fillRect(0, 0, canvas.width, canvas.height);
198
+
199
+ this._data = [];
200
+ this._reset();
201
+ this._isEmpty = true;
202
+ };
203
+
204
+ SignaturePad.prototype.fromDataURL = function (dataUrl) {
205
+ var _this = this;
206
+
207
+ var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
208
+
209
+ var image = new Image();
210
+ var ratio = options.ratio || window.devicePixelRatio || 1;
211
+ var width = options.width || this._canvas.width / ratio;
212
+ var height = options.height || this._canvas.height / ratio;
213
+
214
+ this._reset();
215
+ image.src = dataUrl;
216
+ image.onload = function () {
217
+ _this._ctx.drawImage(image, 0, 0, width, height);
218
+ };
219
+ this._isEmpty = false;
220
+ };
221
+
222
+ SignaturePad.prototype.toDataURL = function (type) {
223
+ var _canvas;
224
+
225
+ switch (type) {
226
+ case 'image/svg+xml':
227
+ return this._toSVG();
228
+ default:
229
+ for (var _len = arguments.length, options = Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {
230
+ options[_key - 1] = arguments[_key];
231
+ }
232
+
233
+ return (_canvas = this._canvas).toDataURL.apply(_canvas, [type].concat(options));
234
+ }
235
+ };
236
+
237
+ SignaturePad.prototype.on = function () {
238
+ this._handleMouseEvents();
239
+ this._handleTouchEvents();
240
+ };
241
+
242
+ SignaturePad.prototype.off = function () {
243
+ this._canvas.removeEventListener('mousedown', this._handleMouseDown);
244
+ this._canvas.removeEventListener('mousemove', this._handleMouseMove);
245
+ document.removeEventListener('mouseup', this._handleMouseUp);
246
+
247
+ this._canvas.removeEventListener('touchstart', this._handleTouchStart);
248
+ this._canvas.removeEventListener('touchmove', this._handleTouchMove);
249
+ this._canvas.removeEventListener('touchend', this._handleTouchEnd);
250
+ };
251
+
252
+ SignaturePad.prototype.isEmpty = function () {
253
+ return this._isEmpty;
254
+ };
255
+
256
+ // Private methods
257
+ SignaturePad.prototype._strokeBegin = function (event) {
258
+ this._data.push([]);
259
+ this._reset();
260
+ this._strokeUpdate(event);
261
+
262
+ if (typeof this.onBegin === 'function') {
263
+ this.onBegin(event);
264
+ }
265
+ };
266
+
267
+ SignaturePad.prototype._strokeUpdate = function (event) {
268
+ var x = event.clientX;
269
+ var y = event.clientY;
270
+
271
+ var point = this._createPoint(x, y);
272
+ var lastPointGroup = this._data[this._data.length - 1];
273
+ var lastPoint = lastPointGroup && lastPointGroup[lastPointGroup.length - 1];
274
+ var isLastPointTooClose = lastPoint && point.distanceTo(lastPoint) < this.minDistance;
275
+
276
+ // Skip this point if it's too close to the previous one
277
+ if (!(lastPoint && isLastPointTooClose)) {
278
+ var _addPoint = this._addPoint(point),
279
+ curve = _addPoint.curve,
280
+ widths = _addPoint.widths;
281
+
282
+ if (curve && widths) {
283
+ this._drawCurve(curve, widths.start, widths.end);
284
+ }
285
+
286
+ this._data[this._data.length - 1].push({
287
+ x: point.x,
288
+ y: point.y,
289
+ time: point.time,
290
+ color: this.penColor
291
+ });
292
+ }
293
+ };
294
+
295
+ SignaturePad.prototype._strokeEnd = function (event) {
296
+ var canDrawCurve = this.points.length > 2;
297
+ var point = this.points[0]; // Point instance
298
+
299
+ if (!canDrawCurve && point) {
300
+ this._drawDot(point);
301
+ }
302
+
303
+ if (point) {
304
+ var lastPointGroup = this._data[this._data.length - 1];
305
+ var lastPoint = lastPointGroup[lastPointGroup.length - 1]; // plain object
306
+
307
+ // When drawing a dot, there's only one point in a group, so without this check
308
+ // such group would end up with exactly the same 2 points.
309
+ if (!point.equals(lastPoint)) {
310
+ lastPointGroup.push({
311
+ x: point.x,
312
+ y: point.y,
313
+ time: point.time,
314
+ color: this.penColor
315
+ });
316
+ }
317
+ }
318
+
319
+ if (typeof this.onEnd === 'function') {
320
+ this.onEnd(event);
321
+ }
322
+ };
323
+
324
+ SignaturePad.prototype._handleMouseEvents = function () {
325
+ this._mouseButtonDown = false;
326
+
327
+ this._canvas.addEventListener('mousedown', this._handleMouseDown);
328
+ this._canvas.addEventListener('mousemove', this._handleMouseMove);
329
+ document.addEventListener('mouseup', this._handleMouseUp);
330
+ };
331
+
332
+ SignaturePad.prototype._handleTouchEvents = function () {
333
+ // Pass touch events to canvas element on mobile IE11 and Edge.
334
+ this._canvas.style.msTouchAction = 'none';
335
+ this._canvas.style.touchAction = 'none';
336
+
337
+ this._canvas.addEventListener('touchstart', this._handleTouchStart);
338
+ this._canvas.addEventListener('touchmove', this._handleTouchMove);
339
+ this._canvas.addEventListener('touchend', this._handleTouchEnd);
340
+ };
341
+
342
+ SignaturePad.prototype._reset = function () {
343
+ this.points = [];
344
+ this._lastVelocity = 0;
345
+ this._lastWidth = (this.minWidth + this.maxWidth) / 2;
346
+ this._ctx.fillStyle = this.penColor;
347
+ };
348
+
349
+ SignaturePad.prototype._createPoint = function (x, y, time) {
350
+ var rect = this._canvas.getBoundingClientRect();
351
+
352
+ return new Point(x - rect.left, y - rect.top, time || new Date().getTime());
353
+ };
354
+
355
+ SignaturePad.prototype._addPoint = function (point) {
356
+ var points = this.points;
357
+ var tmp = void 0;
358
+
359
+ points.push(point);
360
+
361
+ if (points.length > 2) {
362
+ // To reduce the initial lag make it work with 3 points
363
+ // by copying the first point to the beginning.
364
+ if (points.length === 3) points.unshift(points[0]);
365
+
366
+ tmp = this._calculateCurveControlPoints(points[0], points[1], points[2]);
367
+ var c2 = tmp.c2;
368
+ tmp = this._calculateCurveControlPoints(points[1], points[2], points[3]);
369
+ var c3 = tmp.c1;
370
+ var curve = new Bezier(points[1], c2, c3, points[2]);
371
+ var widths = this._calculateCurveWidths(curve);
372
+
373
+ // Remove the first element from the list,
374
+ // so that we always have no more than 4 points in points array.
375
+ points.shift();
376
+
377
+ return { curve: curve, widths: widths };
378
+ }
379
+
380
+ return {};
381
+ };
382
+
383
+ SignaturePad.prototype._calculateCurveControlPoints = function (s1, s2, s3) {
384
+ var dx1 = s1.x - s2.x;
385
+ var dy1 = s1.y - s2.y;
386
+ var dx2 = s2.x - s3.x;
387
+ var dy2 = s2.y - s3.y;
388
+
389
+ var m1 = { x: (s1.x + s2.x) / 2.0, y: (s1.y + s2.y) / 2.0 };
390
+ var m2 = { x: (s2.x + s3.x) / 2.0, y: (s2.y + s3.y) / 2.0 };
391
+
392
+ var l1 = Math.sqrt(dx1 * dx1 + dy1 * dy1);
393
+ var l2 = Math.sqrt(dx2 * dx2 + dy2 * dy2);
394
+
395
+ var dxm = m1.x - m2.x;
396
+ var dym = m1.y - m2.y;
397
+
398
+ var k = l2 / (l1 + l2);
399
+ var cm = { x: m2.x + dxm * k, y: m2.y + dym * k };
400
+
401
+ var tx = s2.x - cm.x;
402
+ var ty = s2.y - cm.y;
403
+
404
+ return {
405
+ c1: new Point(m1.x + tx, m1.y + ty),
406
+ c2: new Point(m2.x + tx, m2.y + ty)
407
+ };
408
+ };
409
+
410
+ SignaturePad.prototype._calculateCurveWidths = function (curve) {
411
+ var startPoint = curve.startPoint;
412
+ var endPoint = curve.endPoint;
413
+ var widths = { start: null, end: null };
414
+
415
+ var velocity = this.velocityFilterWeight * endPoint.velocityFrom(startPoint) + (1 - this.velocityFilterWeight) * this._lastVelocity;
416
+
417
+ var newWidth = this._strokeWidth(velocity);
418
+
419
+ widths.start = this._lastWidth;
420
+ widths.end = newWidth;
421
+
422
+ this._lastVelocity = velocity;
423
+ this._lastWidth = newWidth;
424
+
425
+ return widths;
426
+ };
427
+
428
+ SignaturePad.prototype._strokeWidth = function (velocity) {
429
+ return Math.max(this.maxWidth / (velocity + 1), this.minWidth);
430
+ };
431
+
432
+ SignaturePad.prototype._drawPoint = function (x, y, size) {
433
+ var ctx = this._ctx;
434
+
435
+ ctx.moveTo(x, y);
436
+ ctx.arc(x, y, size, 0, 2 * Math.PI, false);
437
+ this._isEmpty = false;
438
+ };
439
+
440
+ SignaturePad.prototype._drawCurve = function (curve, startWidth, endWidth) {
441
+ var ctx = this._ctx;
442
+ var widthDelta = endWidth - startWidth;
443
+ var drawSteps = Math.floor(curve.length());
444
+
445
+ ctx.beginPath();
446
+
447
+ for (var i = 0; i < drawSteps; i += 1) {
448
+ // Calculate the Bezier (x, y) coordinate for this step.
449
+ var t = i / drawSteps;
450
+ var tt = t * t;
451
+ var ttt = tt * t;
452
+ var u = 1 - t;
453
+ var uu = u * u;
454
+ var uuu = uu * u;
455
+
456
+ var x = uuu * curve.startPoint.x;
457
+ x += 3 * uu * t * curve.control1.x;
458
+ x += 3 * u * tt * curve.control2.x;
459
+ x += ttt * curve.endPoint.x;
460
+
461
+ var y = uuu * curve.startPoint.y;
462
+ y += 3 * uu * t * curve.control1.y;
463
+ y += 3 * u * tt * curve.control2.y;
464
+ y += ttt * curve.endPoint.y;
465
+
466
+ var width = startWidth + ttt * widthDelta;
467
+ this._drawPoint(x, y, width);
468
+ }
469
+
470
+ ctx.closePath();
471
+ ctx.fill();
472
+ };
473
+
474
+ SignaturePad.prototype._drawDot = function (point) {
475
+ var ctx = this._ctx;
476
+ var width = typeof this.dotSize === 'function' ? this.dotSize() : this.dotSize;
477
+
478
+ ctx.beginPath();
479
+ this._drawPoint(point.x, point.y, width);
480
+ ctx.closePath();
481
+ ctx.fill();
482
+ };
483
+
484
+ SignaturePad.prototype._fromData = function (pointGroups, drawCurve, drawDot) {
485
+ for (var i = 0; i < pointGroups.length; i += 1) {
486
+ var group = pointGroups[i];
487
+
488
+ if (group.length > 1) {
489
+ for (var j = 0; j < group.length; j += 1) {
490
+ var rawPoint = group[j];
491
+ var point = new Point(rawPoint.x, rawPoint.y, rawPoint.time);
492
+ var color = rawPoint.color;
493
+
494
+ if (j === 0) {
495
+ // First point in a group. Nothing to draw yet.
496
+
497
+ // All points in the group have the same color, so it's enough to set
498
+ // penColor just at the beginning.
499
+ this.penColor = color;
500
+ this._reset();
501
+
502
+ this._addPoint(point);
503
+ } else if (j !== group.length - 1) {
504
+ // Middle point in a group.
505
+ var _addPoint2 = this._addPoint(point),
506
+ curve = _addPoint2.curve,
507
+ widths = _addPoint2.widths;
508
+
509
+ if (curve && widths) {
510
+ drawCurve(curve, widths, color);
511
+ }
512
+ } else {
513
+ // Last point in a group. Do nothing.
514
+ }
515
+ }
516
+ } else {
517
+ this._reset();
518
+ var _rawPoint = group[0];
519
+ drawDot(_rawPoint);
520
+ }
521
+ }
522
+ };
523
+
524
+ SignaturePad.prototype._toSVG = function () {
525
+ var _this2 = this;
526
+
527
+ var pointGroups = this._data;
528
+ var canvas = this._canvas;
529
+ var ratio = Math.max(window.devicePixelRatio || 1, 1);
530
+ var minX = 0;
531
+ var minY = 0;
532
+ var maxX = canvas.width / ratio;
533
+ var maxY = canvas.height / ratio;
534
+ var svg = document.createElementNS('http://www.w3.org/2000/svg', 'svg');
535
+
536
+ svg.setAttributeNS(null, 'width', canvas.width);
537
+ svg.setAttributeNS(null, 'height', canvas.height);
538
+
539
+ this._fromData(pointGroups, function (curve, widths, color) {
540
+ var path = document.createElement('path');
541
+
542
+ // Need to check curve for NaN values, these pop up when drawing
543
+ // lines on the canvas that are not continuous. E.g. Sharp corners
544
+ // or stopping mid-stroke and than continuing without lifting mouse.
545
+ if (!isNaN(curve.control1.x) && !isNaN(curve.control1.y) && !isNaN(curve.control2.x) && !isNaN(curve.control2.y)) {
546
+ var attr = 'M ' + curve.startPoint.x.toFixed(3) + ',' + curve.startPoint.y.toFixed(3) + ' ' + ('C ' + curve.control1.x.toFixed(3) + ',' + curve.control1.y.toFixed(3) + ' ') + (curve.control2.x.toFixed(3) + ',' + curve.control2.y.toFixed(3) + ' ') + (curve.endPoint.x.toFixed(3) + ',' + curve.endPoint.y.toFixed(3));
547
+
548
+ path.setAttribute('d', attr);
549
+ path.setAttribute('stroke-width', (widths.end * 2.25).toFixed(3));
550
+ path.setAttribute('stroke', color);
551
+ path.setAttribute('fill', 'none');
552
+ path.setAttribute('stroke-linecap', 'round');
553
+
554
+ svg.appendChild(path);
555
+ }
556
+ }, function (rawPoint) {
557
+ var circle = document.createElement('circle');
558
+ var dotSize = typeof _this2.dotSize === 'function' ? _this2.dotSize() : _this2.dotSize;
559
+ circle.setAttribute('r', dotSize);
560
+ circle.setAttribute('cx', rawPoint.x);
561
+ circle.setAttribute('cy', rawPoint.y);
562
+ circle.setAttribute('fill', rawPoint.color);
563
+
564
+ svg.appendChild(circle);
565
+ });
566
+
567
+ var prefix = 'data:image/svg+xml;base64,';
568
+ var header = '<svg' + ' xmlns="http://www.w3.org/2000/svg"' + ' xmlns:xlink="http://www.w3.org/1999/xlink"' + (' viewBox="' + minX + ' ' + minY + ' ' + maxX + ' ' + maxY + '"') + (' width="' + maxX + '"') + (' height="' + maxY + '"') + '>';
569
+ var body = svg.innerHTML;
570
+
571
+ // IE hack for missing innerHTML property on SVGElement
572
+ if (body === undefined) {
573
+ var dummy = document.createElement('dummy');
574
+ var nodes = svg.childNodes;
575
+ dummy.innerHTML = '';
576
+
577
+ for (var i = 0; i < nodes.length; i += 1) {
578
+ dummy.appendChild(nodes[i].cloneNode(true));
579
+ }
580
+
581
+ body = dummy.innerHTML;
582
+ }
583
+
584
+ var footer = '</svg>';
585
+ var data = header + body + footer;
586
+
587
+ return prefix + btoa(data);
588
+ };
589
+
590
+ SignaturePad.prototype.fromData = function (pointGroups) {
591
+ var _this3 = this;
592
+
593
+ this.clear();
594
+
595
+ this._fromData(pointGroups, function (curve, widths) {
596
+ return _this3._drawCurve(curve, widths.start, widths.end);
597
+ }, function (rawPoint) {
598
+ return _this3._drawDot(rawPoint);
599
+ });
600
+
601
+ this._data = pointGroups;
602
+ };
603
+
604
+ SignaturePad.prototype.toData = function () {
605
+ return this._data;
606
+ };
607
+
608
+ return SignaturePad;
609
+
610
+ })));
@@ -0,0 +1,41 @@
1
+ {
2
+ "name": "signature_pad",
3
+ "description": "Library for drawing smooth signatures.",
4
+ "version": "2.3.2",
5
+ "homepage": "https://github.com/szimek/signature_pad",
6
+ "author": {
7
+ "name": "Szymon Nowak",
8
+ "email": "szimek@gmail.com",
9
+ "url": "https://github.com/szimek"
10
+ },
11
+ "license": "MIT",
12
+ "main": "dist/signature_pad.js",
13
+ "module": "dist/signature_pad.mjs",
14
+ "scripts": {
15
+ "build": "gulp",
16
+ "watch": "gulp watch",
17
+ "prepublishOnly": "npm run build"
18
+ },
19
+ "repository": {
20
+ "type": "git",
21
+ "url": "https://github.com/szimek/signature_pad.git"
22
+ },
23
+ "files": [
24
+ "src",
25
+ "dist",
26
+ "example"
27
+ ],
28
+ "devDependencies": {
29
+ "babel-plugin-transform-es2015-modules-umd": "^6.18.0",
30
+ "babel-preset-es2015": "^6.18.0",
31
+ "del": "^2.2.2",
32
+ "eslint": "^3.13.1",
33
+ "eslint-config-airbnb-base": "^11.0.1",
34
+ "eslint-plugin-import": "^2.2.0",
35
+ "gulp": "^3.9.1",
36
+ "rollup": "^0.41.4",
37
+ "rollup-plugin-babel": "^2.7.1",
38
+ "rollup-plugin-eslint": "^3.0.0",
39
+ "rollup-plugin-uglify": "^1.0.1"
40
+ }
41
+ }