@rotki/ui-library 2.8.1 → 2.8.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 (465) hide show
  1. package/dist/README.md +276 -0
  2. package/dist/_virtual/_plugin-vue_export-helper.js +11 -0
  3. package/dist/_virtual/_plugin-vue_export-helper.js.map +1 -0
  4. package/dist/components/accordions/accordion/RuiAccordion.vue.js +11 -0
  5. package/dist/components/accordions/accordion/RuiAccordion.vue.js.map +1 -0
  6. package/dist/components/accordions/accordion/RuiAccordion.vue2.js +66 -0
  7. package/dist/components/accordions/accordion/RuiAccordion.vue2.js.map +1 -0
  8. package/dist/components/accordions/accordion/RuiAccordion.vue3.js +18 -0
  9. package/dist/components/accordions/accordion/RuiAccordion.vue3.js.map +1 -0
  10. package/dist/components/accordions/accordions/RuiAccordions.vue.js +78 -0
  11. package/dist/components/accordions/accordions/RuiAccordions.vue.js.map +1 -0
  12. package/dist/components/accordions/accordions/RuiAccordions.vue2.js +5 -0
  13. package/dist/components/accordions/accordions/RuiAccordions.vue2.js.map +1 -0
  14. package/dist/components/alerts/RuiAlert.vue.d.ts +2 -2
  15. package/dist/components/alerts/RuiAlert.vue.js +11 -0
  16. package/dist/components/alerts/RuiAlert.vue.js.map +1 -0
  17. package/dist/components/alerts/RuiAlert.vue2.js +123 -0
  18. package/dist/components/alerts/RuiAlert.vue2.js.map +1 -0
  19. package/dist/components/alerts/RuiAlert.vue3.js +50 -0
  20. package/dist/components/alerts/RuiAlert.vue3.js.map +1 -0
  21. package/dist/components/buttons/button/RuiButton.vue.d.ts +1 -1
  22. package/dist/components/buttons/button/RuiButton.vue.js +11 -0
  23. package/dist/components/buttons/button/RuiButton.vue.js.map +1 -0
  24. package/dist/components/buttons/button/RuiButton.vue2.js +94 -0
  25. package/dist/components/buttons/button/RuiButton.vue2.js.map +1 -0
  26. package/dist/components/buttons/button/RuiButton.vue3.js +74 -0
  27. package/dist/components/buttons/button/RuiButton.vue3.js.map +1 -0
  28. package/dist/components/buttons/button-group/RuiButtonGroup.vue.d.ts +1 -1
  29. package/dist/components/buttons/button-group/RuiButtonGroup.vue.js +11 -0
  30. package/dist/components/buttons/button-group/RuiButtonGroup.vue.js.map +1 -0
  31. package/dist/components/buttons/button-group/RuiButtonGroup.vue2.js +112 -0
  32. package/dist/components/buttons/button-group/RuiButtonGroup.vue2.js.map +1 -0
  33. package/dist/components/buttons/button-group/RuiButtonGroup.vue3.js +58 -0
  34. package/dist/components/buttons/button-group/RuiButtonGroup.vue3.js.map +1 -0
  35. package/dist/components/calendar/RuiCalendar.vue.js +128 -0
  36. package/dist/components/calendar/RuiCalendar.vue.js.map +1 -0
  37. package/dist/components/calendar/RuiCalendar.vue3.js +6 -0
  38. package/dist/components/calendar/RuiCalendar.vue3.js.map +1 -0
  39. package/dist/components/calendar/RuiCalendarGrid.vue.js +8 -0
  40. package/dist/components/calendar/RuiCalendarGrid.vue.js.map +1 -0
  41. package/dist/components/calendar/RuiCalendarGrid.vue2.js +149 -0
  42. package/dist/components/calendar/RuiCalendarGrid.vue2.js.map +1 -0
  43. package/dist/components/calendar/RuiCalendarHeader.vue.d.ts +1 -1
  44. package/dist/components/calendar/RuiCalendarHeader.vue.js +8 -0
  45. package/dist/components/calendar/RuiCalendarHeader.vue.js.map +1 -0
  46. package/dist/components/calendar/RuiCalendarHeader.vue2.js +112 -0
  47. package/dist/components/calendar/RuiCalendarHeader.vue2.js.map +1 -0
  48. package/dist/components/calendar/RuiCalendarMenu.vue.d.ts +1 -1
  49. package/dist/components/calendar/RuiCalendarMenu.vue.js +8 -0
  50. package/dist/components/calendar/RuiCalendarMenu.vue.js.map +1 -0
  51. package/dist/components/calendar/RuiCalendarMenu.vue2.js +261 -0
  52. package/dist/components/calendar/RuiCalendarMenu.vue2.js.map +1 -0
  53. package/dist/components/calendar/state.js +25 -0
  54. package/dist/components/calendar/state.js.map +1 -0
  55. package/dist/components/cards/RuiCard.vue.js +11 -0
  56. package/dist/components/cards/RuiCard.vue.js.map +1 -0
  57. package/dist/components/cards/RuiCard.vue2.js +88 -0
  58. package/dist/components/cards/RuiCard.vue2.js.map +1 -0
  59. package/dist/components/cards/RuiCard.vue3.js +40 -0
  60. package/dist/components/cards/RuiCard.vue3.js.map +1 -0
  61. package/dist/components/cards/RuiCardHeader.vue.js +11 -0
  62. package/dist/components/cards/RuiCardHeader.vue.js.map +1 -0
  63. package/dist/components/cards/RuiCardHeader.vue2.js +51 -0
  64. package/dist/components/cards/RuiCardHeader.vue2.js.map +1 -0
  65. package/dist/components/cards/RuiCardHeader.vue3.js +27 -0
  66. package/dist/components/cards/RuiCardHeader.vue3.js.map +1 -0
  67. package/dist/components/chips/RuiChip.vue.d.ts +2 -2
  68. package/dist/components/chips/RuiChip.vue.js +11 -0
  69. package/dist/components/chips/RuiChip.vue.js.map +1 -0
  70. package/dist/components/chips/RuiChip.vue2.js +95 -0
  71. package/dist/components/chips/RuiChip.vue2.js.map +1 -0
  72. package/dist/components/chips/RuiChip.vue3.js +88 -0
  73. package/dist/components/chips/RuiChip.vue3.js.map +1 -0
  74. package/dist/components/color-picker/RuiColorBoard.vue.d.ts +1 -1
  75. package/dist/components/color-picker/RuiColorBoard.vue.js +11 -0
  76. package/dist/components/color-picker/RuiColorBoard.vue.js.map +1 -0
  77. package/dist/components/color-picker/RuiColorBoard.vue2.js +102 -0
  78. package/dist/components/color-picker/RuiColorBoard.vue2.js.map +1 -0
  79. package/dist/components/color-picker/RuiColorBoard.vue3.js +18 -0
  80. package/dist/components/color-picker/RuiColorBoard.vue3.js.map +1 -0
  81. package/dist/components/color-picker/RuiColorDisplay.vue.js +49 -0
  82. package/dist/components/color-picker/RuiColorDisplay.vue.js.map +1 -0
  83. package/dist/components/color-picker/RuiColorDisplay.vue2.js +5 -0
  84. package/dist/components/color-picker/RuiColorDisplay.vue2.js.map +1 -0
  85. package/dist/components/color-picker/RuiColorHue.vue.js +11 -0
  86. package/dist/components/color-picker/RuiColorHue.vue.js.map +1 -0
  87. package/dist/components/color-picker/RuiColorHue.vue2.js +89 -0
  88. package/dist/components/color-picker/RuiColorHue.vue2.js.map +1 -0
  89. package/dist/components/color-picker/RuiColorHue.vue3.js +12 -0
  90. package/dist/components/color-picker/RuiColorHue.vue3.js.map +1 -0
  91. package/dist/components/color-picker/RuiColorInput.vue.d.ts +1 -1
  92. package/dist/components/color-picker/RuiColorInput.vue.js +139 -0
  93. package/dist/components/color-picker/RuiColorInput.vue.js.map +1 -0
  94. package/dist/components/color-picker/RuiColorInput.vue2.js +5 -0
  95. package/dist/components/color-picker/RuiColorInput.vue2.js.map +1 -0
  96. package/dist/components/color-picker/RuiColorPicker.vue.js +72 -0
  97. package/dist/components/color-picker/RuiColorPicker.vue.js.map +1 -0
  98. package/dist/components/color-picker/RuiColorPicker.vue2.js +5 -0
  99. package/dist/components/color-picker/RuiColorPicker.vue2.js.map +1 -0
  100. package/dist/components/color-picker/utils.js +182 -0
  101. package/dist/components/color-picker/utils.js.map +1 -0
  102. package/dist/components/date-time-picker/RuiDateTimePicker.vue.d.ts +1 -1
  103. package/dist/components/date-time-picker/RuiDateTimePicker.vue.js +11 -0
  104. package/dist/components/date-time-picker/RuiDateTimePicker.vue.js.map +1 -0
  105. package/dist/components/date-time-picker/RuiDateTimePicker.vue2.js +570 -0
  106. package/dist/components/date-time-picker/RuiDateTimePicker.vue2.js.map +1 -0
  107. package/dist/components/date-time-picker/RuiDateTimePicker.vue3.js +66 -0
  108. package/dist/components/date-time-picker/RuiDateTimePicker.vue3.js.map +1 -0
  109. package/dist/components/date-time-picker/RuiDateTimePickerMenu.vue.d.ts +2 -2
  110. package/dist/components/date-time-picker/RuiDateTimePickerMenu.vue.js +120 -0
  111. package/dist/components/date-time-picker/RuiDateTimePickerMenu.vue.js.map +1 -0
  112. package/dist/components/date-time-picker/RuiDateTimePickerMenu.vue2.js +5 -0
  113. package/dist/components/date-time-picker/RuiDateTimePickerMenu.vue2.js.map +1 -0
  114. package/dist/components/date-time-picker/timezones.js +601 -0
  115. package/dist/components/date-time-picker/timezones.js.map +1 -0
  116. package/dist/components/date-time-picker/types.js +17 -0
  117. package/dist/components/date-time-picker/types.js.map +1 -0
  118. package/dist/components/date-time-picker/use-input-handler.d.ts +2 -2
  119. package/dist/components/date-time-picker/use-input-handler.js +31 -0
  120. package/dist/components/date-time-picker/use-input-handler.js.map +1 -0
  121. package/dist/components/date-time-picker/use-keyboard-handler.d.ts +2 -2
  122. package/dist/components/date-time-picker/use-keyboard-handler.js +308 -0
  123. package/dist/components/date-time-picker/use-keyboard-handler.js.map +1 -0
  124. package/dist/components/date-time-picker/utils.d.ts +1 -1
  125. package/dist/components/date-time-picker/utils.js +19 -0
  126. package/dist/components/date-time-picker/utils.js.map +1 -0
  127. package/dist/components/divider/RuiDivider.vue.js +22 -0
  128. package/dist/components/divider/RuiDivider.vue.js.map +1 -0
  129. package/dist/components/divider/RuiDivider.vue2.js +5 -0
  130. package/dist/components/divider/RuiDivider.vue2.js.map +1 -0
  131. package/dist/components/forms/auto-complete/RuiAutoComplete.vue.d.ts +2 -2
  132. package/dist/components/forms/auto-complete/RuiAutoComplete.vue.js +11 -0
  133. package/dist/components/forms/auto-complete/RuiAutoComplete.vue.js.map +1 -0
  134. package/dist/components/forms/auto-complete/RuiAutoComplete.vue2.js +585 -0
  135. package/dist/components/forms/auto-complete/RuiAutoComplete.vue2.js.map +1 -0
  136. package/dist/components/forms/auto-complete/RuiAutoComplete.vue3.js +60 -0
  137. package/dist/components/forms/auto-complete/RuiAutoComplete.vue3.js.map +1 -0
  138. package/dist/components/forms/checkbox/RuiCheckbox.vue.d.ts +1 -1
  139. package/dist/components/forms/checkbox/RuiCheckbox.vue.js +11 -0
  140. package/dist/components/forms/checkbox/RuiCheckbox.vue.js.map +1 -0
  141. package/dist/components/forms/checkbox/RuiCheckbox.vue2.js +137 -0
  142. package/dist/components/forms/checkbox/RuiCheckbox.vue2.js.map +1 -0
  143. package/dist/components/forms/checkbox/RuiCheckbox.vue3.js +54 -0
  144. package/dist/components/forms/checkbox/RuiCheckbox.vue3.js.map +1 -0
  145. package/dist/components/forms/radio-button/radio/RuiRadio.vue.d.ts +1 -1
  146. package/dist/components/forms/radio-button/radio/RuiRadio.vue.js +11 -0
  147. package/dist/components/forms/radio-button/radio/RuiRadio.vue.js.map +1 -0
  148. package/dist/components/forms/radio-button/radio/RuiRadio.vue2.js +115 -0
  149. package/dist/components/forms/radio-button/radio/RuiRadio.vue2.js.map +1 -0
  150. package/dist/components/forms/radio-button/radio/RuiRadio.vue3.js +54 -0
  151. package/dist/components/forms/radio-button/radio/RuiRadio.vue3.js.map +1 -0
  152. package/dist/components/forms/radio-button/radio-group/RuiRadioGroup.vue.d.ts +1 -1
  153. package/dist/components/forms/radio-button/radio-group/RuiRadioGroup.vue.js +11 -0
  154. package/dist/components/forms/radio-button/radio-group/RuiRadioGroup.vue.js.map +1 -0
  155. package/dist/components/forms/radio-button/radio-group/RuiRadioGroup.vue2.js +78 -0
  156. package/dist/components/forms/radio-button/radio-group/RuiRadioGroup.vue2.js.map +1 -0
  157. package/dist/components/forms/radio-button/radio-group/RuiRadioGroup.vue3.js +9 -0
  158. package/dist/components/forms/radio-button/radio-group/RuiRadioGroup.vue3.js.map +1 -0
  159. package/dist/components/forms/revealable-text-field/RuiRevealableTextField.vue.d.ts +5 -5
  160. package/dist/components/forms/revealable-text-field/RuiRevealableTextField.vue.js +82 -0
  161. package/dist/components/forms/revealable-text-field/RuiRevealableTextField.vue.js.map +1 -0
  162. package/dist/components/forms/revealable-text-field/RuiRevealableTextField.vue2.js +5 -0
  163. package/dist/components/forms/revealable-text-field/RuiRevealableTextField.vue2.js.map +1 -0
  164. package/dist/components/forms/select/RuiMenuSelect.vue.d.ts +2 -2
  165. package/dist/components/forms/select/RuiMenuSelect.vue.js +11 -0
  166. package/dist/components/forms/select/RuiMenuSelect.vue.js.map +1 -0
  167. package/dist/components/forms/select/RuiMenuSelect.vue2.js +297 -0
  168. package/dist/components/forms/select/RuiMenuSelect.vue2.js.map +1 -0
  169. package/dist/components/forms/select/RuiMenuSelect.vue3.js +60 -0
  170. package/dist/components/forms/select/RuiMenuSelect.vue3.js.map +1 -0
  171. package/dist/components/forms/select/RuiSimpleSelect.vue.js +11 -0
  172. package/dist/components/forms/select/RuiSimpleSelect.vue.js.map +1 -0
  173. package/dist/components/forms/select/RuiSimpleSelect.vue2.js +67 -0
  174. package/dist/components/forms/select/RuiSimpleSelect.vue2.js.map +1 -0
  175. package/dist/components/forms/select/RuiSimpleSelect.vue3.js +21 -0
  176. package/dist/components/forms/select/RuiSimpleSelect.vue3.js.map +1 -0
  177. package/dist/components/forms/slider/RuiSlider.vue.d.ts +1 -1
  178. package/dist/components/forms/slider/RuiSlider.vue.js +11 -0
  179. package/dist/components/forms/slider/RuiSlider.vue.js.map +1 -0
  180. package/dist/components/forms/slider/RuiSlider.vue2.js +165 -0
  181. package/dist/components/forms/slider/RuiSlider.vue2.js.map +1 -0
  182. package/dist/components/forms/slider/RuiSlider.vue3.js +80 -0
  183. package/dist/components/forms/slider/RuiSlider.vue3.js.map +1 -0
  184. package/dist/components/forms/switch/RuiSwitch.vue.d.ts +1 -1
  185. package/dist/components/forms/switch/RuiSwitch.vue.js +11 -0
  186. package/dist/components/forms/switch/RuiSwitch.vue.js.map +1 -0
  187. package/dist/components/forms/switch/RuiSwitch.vue2.js +89 -0
  188. package/dist/components/forms/switch/RuiSwitch.vue2.js.map +1 -0
  189. package/dist/components/forms/switch/RuiSwitch.vue3.js +54 -0
  190. package/dist/components/forms/switch/RuiSwitch.vue3.js.map +1 -0
  191. package/dist/components/forms/text-area/RuiTextArea.vue.d.ts +2 -2
  192. package/dist/components/forms/text-area/RuiTextArea.vue.js +11 -0
  193. package/dist/components/forms/text-area/RuiTextArea.vue.js.map +1 -0
  194. package/dist/components/forms/text-area/RuiTextArea.vue2.js +252 -0
  195. package/dist/components/forms/text-area/RuiTextArea.vue2.js.map +1 -0
  196. package/dist/components/forms/text-area/RuiTextArea.vue3.js +92 -0
  197. package/dist/components/forms/text-area/RuiTextArea.vue3.js.map +1 -0
  198. package/dist/components/forms/text-field/RuiTextField.vue.d.ts +2 -2
  199. package/dist/components/forms/text-field/RuiTextField.vue.js +11 -0
  200. package/dist/components/forms/text-field/RuiTextField.vue.js.map +1 -0
  201. package/dist/components/forms/text-field/RuiTextField.vue2.js +220 -0
  202. package/dist/components/forms/text-field/RuiTextField.vue2.js.map +1 -0
  203. package/dist/components/forms/text-field/RuiTextField.vue3.js +89 -0
  204. package/dist/components/forms/text-field/RuiTextField.vue3.js.map +1 -0
  205. package/dist/components/helpers/RuiFormTextDetail.vue.js +54 -0
  206. package/dist/components/helpers/RuiFormTextDetail.vue.js.map +1 -0
  207. package/dist/components/helpers/RuiFormTextDetail.vue2.js +5 -0
  208. package/dist/components/helpers/RuiFormTextDetail.vue2.js.map +1 -0
  209. package/dist/components/icons/RuiIcon.vue.d.ts +2 -2
  210. package/dist/components/icons/RuiIcon.vue.js +11 -0
  211. package/dist/components/icons/RuiIcon.vue.js.map +1 -0
  212. package/dist/components/icons/RuiIcon.vue2.js +60 -0
  213. package/dist/components/icons/RuiIcon.vue2.js.map +1 -0
  214. package/dist/components/icons/RuiIcon.vue3.js +29 -0
  215. package/dist/components/icons/RuiIcon.vue3.js.map +1 -0
  216. package/dist/components/index.d.ts +45 -45
  217. package/dist/components/index.js +92 -0
  218. package/dist/components/index.js.map +1 -0
  219. package/dist/components/loaders/RuiSkeletonBase.vue.js +11 -0
  220. package/dist/components/loaders/RuiSkeletonBase.vue.js.map +1 -0
  221. package/dist/components/loaders/RuiSkeletonBase.vue2.js +22 -0
  222. package/dist/components/loaders/RuiSkeletonBase.vue2.js.map +1 -0
  223. package/dist/components/loaders/RuiSkeletonBase.vue3.js +12 -0
  224. package/dist/components/loaders/RuiSkeletonBase.vue3.js.map +1 -0
  225. package/dist/components/loaders/RuiSkeletonLoader.vue.d.ts +1 -1
  226. package/dist/components/loaders/RuiSkeletonLoader.vue.js +11 -0
  227. package/dist/components/loaders/RuiSkeletonLoader.vue.js.map +1 -0
  228. package/dist/components/loaders/RuiSkeletonLoader.vue2.js +47 -0
  229. package/dist/components/loaders/RuiSkeletonLoader.vue2.js.map +1 -0
  230. package/dist/components/loaders/RuiSkeletonLoader.vue3.js +33 -0
  231. package/dist/components/loaders/RuiSkeletonLoader.vue3.js.map +1 -0
  232. package/dist/components/logos/RuiLogo.vue.js +114 -0
  233. package/dist/components/logos/RuiLogo.vue.js.map +1 -0
  234. package/dist/components/logos/RuiLogo.vue2.js +5 -0
  235. package/dist/components/logos/RuiLogo.vue2.js.map +1 -0
  236. package/dist/components/logos/logo.svg.js +5 -0
  237. package/dist/components/logos/logo.svg.js.map +1 -0
  238. package/dist/components/overlays/badge/RuiBadge.vue.d.ts +2 -2
  239. package/dist/components/overlays/badge/RuiBadge.vue.js +11 -0
  240. package/dist/components/overlays/badge/RuiBadge.vue.js.map +1 -0
  241. package/dist/components/overlays/badge/RuiBadge.vue2.js +95 -0
  242. package/dist/components/overlays/badge/RuiBadge.vue2.js.map +1 -0
  243. package/dist/components/overlays/badge/RuiBadge.vue3.js +77 -0
  244. package/dist/components/overlays/badge/RuiBadge.vue3.js.map +1 -0
  245. package/dist/components/overlays/bottom-sheet/RuiBottomSheet.vue.js +34 -0
  246. package/dist/components/overlays/bottom-sheet/RuiBottomSheet.vue.js.map +1 -0
  247. package/dist/components/overlays/bottom-sheet/RuiBottomSheet.vue2.js +5 -0
  248. package/dist/components/overlays/bottom-sheet/RuiBottomSheet.vue2.js.map +1 -0
  249. package/dist/components/overlays/dialog/RuiDialog.vue.js +11 -0
  250. package/dist/components/overlays/dialog/RuiDialog.vue.js.map +1 -0
  251. package/dist/components/overlays/dialog/RuiDialog.vue2.js +172 -0
  252. package/dist/components/overlays/dialog/RuiDialog.vue2.js.map +1 -0
  253. package/dist/components/overlays/dialog/RuiDialog.vue3.js +18 -0
  254. package/dist/components/overlays/dialog/RuiDialog.vue3.js.map +1 -0
  255. package/dist/components/overlays/menu/RuiMenu.vue.d.ts +1 -1
  256. package/dist/components/overlays/menu/RuiMenu.vue.js +11 -0
  257. package/dist/components/overlays/menu/RuiMenu.vue.js.map +1 -0
  258. package/dist/components/overlays/menu/RuiMenu.vue2.js +221 -0
  259. package/dist/components/overlays/menu/RuiMenu.vue2.js.map +1 -0
  260. package/dist/components/overlays/menu/RuiMenu.vue3.js +21 -0
  261. package/dist/components/overlays/menu/RuiMenu.vue3.js.map +1 -0
  262. package/dist/components/overlays/navigation-drawer/RuiNavigationDrawer.vue.js +11 -0
  263. package/dist/components/overlays/navigation-drawer/RuiNavigationDrawer.vue.js.map +1 -0
  264. package/dist/components/overlays/navigation-drawer/RuiNavigationDrawer.vue2.js +112 -0
  265. package/dist/components/overlays/navigation-drawer/RuiNavigationDrawer.vue2.js.map +1 -0
  266. package/dist/components/overlays/navigation-drawer/RuiNavigationDrawer.vue3.js +28 -0
  267. package/dist/components/overlays/navigation-drawer/RuiNavigationDrawer.vue3.js.map +1 -0
  268. package/dist/components/overlays/notification/RuiNotification.vue.js +74 -0
  269. package/dist/components/overlays/notification/RuiNotification.vue.js.map +1 -0
  270. package/dist/components/overlays/notification/RuiNotification.vue2.js +5 -0
  271. package/dist/components/overlays/notification/RuiNotification.vue2.js.map +1 -0
  272. package/dist/components/overlays/tooltip/RuiTooltip.vue.d.ts +1 -1
  273. package/dist/components/overlays/tooltip/RuiTooltip.vue.js +11 -0
  274. package/dist/components/overlays/tooltip/RuiTooltip.vue.js.map +1 -0
  275. package/dist/components/overlays/tooltip/RuiTooltip.vue2.js +105 -0
  276. package/dist/components/overlays/tooltip/RuiTooltip.vue2.js.map +1 -0
  277. package/dist/components/overlays/tooltip/RuiTooltip.vue3.js +27 -0
  278. package/dist/components/overlays/tooltip/RuiTooltip.vue3.js.map +1 -0
  279. package/dist/components/progress/RuiProgress.vue.d.ts +1 -1
  280. package/dist/components/progress/RuiProgress.vue.js +11 -0
  281. package/dist/components/progress/RuiProgress.vue.js.map +1 -0
  282. package/dist/components/progress/RuiProgress.vue2.js +98 -0
  283. package/dist/components/progress/RuiProgress.vue2.js.map +1 -0
  284. package/dist/components/progress/RuiProgress.vue3.js +48 -0
  285. package/dist/components/progress/RuiProgress.vue3.js.map +1 -0
  286. package/dist/components/steppers/RuiFooterStepper.vue.js +11 -0
  287. package/dist/components/steppers/RuiFooterStepper.vue.js.map +1 -0
  288. package/dist/components/steppers/RuiFooterStepper.vue2.js +143 -0
  289. package/dist/components/steppers/RuiFooterStepper.vue2.js.map +1 -0
  290. package/dist/components/steppers/RuiFooterStepper.vue3.js +31 -0
  291. package/dist/components/steppers/RuiFooterStepper.vue3.js.map +1 -0
  292. package/dist/components/steppers/RuiStepper.vue.d.ts +1 -1
  293. package/dist/components/steppers/RuiStepper.vue.js +11 -0
  294. package/dist/components/steppers/RuiStepper.vue.js.map +1 -0
  295. package/dist/components/steppers/RuiStepper.vue2.js +130 -0
  296. package/dist/components/steppers/RuiStepper.vue2.js.map +1 -0
  297. package/dist/components/steppers/RuiStepper.vue3.js +58 -0
  298. package/dist/components/steppers/RuiStepper.vue3.js.map +1 -0
  299. package/dist/components/steppers/RuiStepperCustomIcon.vue.d.ts +1 -1
  300. package/dist/components/steppers/RuiStepperCustomIcon.vue.js +11 -0
  301. package/dist/components/steppers/RuiStepperCustomIcon.vue.js.map +1 -0
  302. package/dist/components/steppers/RuiStepperCustomIcon.vue2.js +38 -0
  303. package/dist/components/steppers/RuiStepperCustomIcon.vue2.js.map +1 -0
  304. package/dist/components/steppers/RuiStepperCustomIcon.vue3.js +15 -0
  305. package/dist/components/steppers/RuiStepperCustomIcon.vue3.js.map +1 -0
  306. package/dist/components/steppers/RuiStepperIcon.vue.d.ts +1 -1
  307. package/dist/components/steppers/RuiStepperIcon.vue.js +11 -0
  308. package/dist/components/steppers/RuiStepperIcon.vue.js.map +1 -0
  309. package/dist/components/steppers/RuiStepperIcon.vue2.js +43 -0
  310. package/dist/components/steppers/RuiStepperIcon.vue2.js.map +1 -0
  311. package/dist/components/steppers/RuiStepperIcon.vue3.js +21 -0
  312. package/dist/components/steppers/RuiStepperIcon.vue3.js.map +1 -0
  313. package/dist/components/tables/RuiDataTable.vue.d.ts +2 -2
  314. package/dist/components/tables/RuiDataTable.vue.js +11 -0
  315. package/dist/components/tables/RuiDataTable.vue.js.map +1 -0
  316. package/dist/components/tables/RuiDataTable.vue2.js +943 -0
  317. package/dist/components/tables/RuiDataTable.vue2.js.map +1 -0
  318. package/dist/components/tables/RuiDataTable.vue3.js +79 -0
  319. package/dist/components/tables/RuiDataTable.vue3.js.map +1 -0
  320. package/dist/components/tables/RuiExpandButton.vue.d.ts +1 -1
  321. package/dist/components/tables/RuiExpandButton.vue.js +11 -0
  322. package/dist/components/tables/RuiExpandButton.vue.js.map +1 -0
  323. package/dist/components/tables/RuiExpandButton.vue2.js +42 -0
  324. package/dist/components/tables/RuiExpandButton.vue2.js.map +1 -0
  325. package/dist/components/tables/RuiExpandButton.vue3.js +15 -0
  326. package/dist/components/tables/RuiExpandButton.vue3.js.map +1 -0
  327. package/dist/components/tables/RuiTableHead.vue.js +11 -0
  328. package/dist/components/tables/RuiTableHead.vue.js.map +1 -0
  329. package/dist/components/tables/RuiTableHead.vue2.js +195 -0
  330. package/dist/components/tables/RuiTableHead.vue2.js.map +1 -0
  331. package/dist/components/tables/RuiTableHead.vue3.js +69 -0
  332. package/dist/components/tables/RuiTableHead.vue3.js.map +1 -0
  333. package/dist/components/tables/RuiTablePagination.vue.js +11 -0
  334. package/dist/components/tables/RuiTablePagination.vue.js.map +1 -0
  335. package/dist/components/tables/RuiTablePagination.vue2.js +196 -0
  336. package/dist/components/tables/RuiTablePagination.vue2.js.map +1 -0
  337. package/dist/components/tables/RuiTablePagination.vue3.js +28 -0
  338. package/dist/components/tables/RuiTablePagination.vue3.js.map +1 -0
  339. package/dist/components/tables/table_no_data_placeholder.svg.js +5 -0
  340. package/dist/components/tables/table_no_data_placeholder.svg.js.map +1 -0
  341. package/dist/components/tables/table_no_data_placeholder_dark.svg.js +5 -0
  342. package/dist/components/tables/table_no_data_placeholder_dark.svg.js.map +1 -0
  343. package/dist/components/tabs/tab/RuiTab.vue.d.ts +1 -1
  344. package/dist/components/tabs/tab/RuiTab.vue.js +11 -0
  345. package/dist/components/tabs/tab/RuiTab.vue.js.map +1 -0
  346. package/dist/components/tabs/tab/RuiTab.vue2.js +135 -0
  347. package/dist/components/tabs/tab/RuiTab.vue2.js.map +1 -0
  348. package/dist/components/tabs/tab/RuiTab.vue3.js +17 -0
  349. package/dist/components/tabs/tab/RuiTab.vue3.js.map +1 -0
  350. package/dist/components/tabs/tab-item/RuiTabItem.vue.js +11 -0
  351. package/dist/components/tabs/tab-item/RuiTabItem.vue.js.map +1 -0
  352. package/dist/components/tabs/tab-item/RuiTabItem.vue2.js +51 -0
  353. package/dist/components/tabs/tab-item/RuiTabItem.vue2.js.map +1 -0
  354. package/dist/components/tabs/tab-item/RuiTabItem.vue3.js +9 -0
  355. package/dist/components/tabs/tab-item/RuiTabItem.vue3.js.map +1 -0
  356. package/dist/components/tabs/tab-items/RuiTabItems.vue.js +11 -0
  357. package/dist/components/tabs/tab-items/RuiTabItems.vue.js.map +1 -0
  358. package/dist/components/tabs/tab-items/RuiTabItems.vue2.js +90 -0
  359. package/dist/components/tabs/tab-items/RuiTabItems.vue2.js.map +1 -0
  360. package/dist/components/tabs/tab-items/RuiTabItems.vue3.js +9 -0
  361. package/dist/components/tabs/tab-items/RuiTabItems.vue3.js.map +1 -0
  362. package/dist/components/tabs/tabs/RuiTabs.vue.d.ts +1 -1
  363. package/dist/components/tabs/tabs/RuiTabs.vue.js +11 -0
  364. package/dist/components/tabs/tabs/RuiTabs.vue.js.map +1 -0
  365. package/dist/components/tabs/tabs/RuiTabs.vue2.js +281 -0
  366. package/dist/components/tabs/tabs/RuiTabs.vue2.js.map +1 -0
  367. package/dist/components/tabs/tabs/RuiTabs.vue3.js +20 -0
  368. package/dist/components/tabs/tabs/RuiTabs.vue3.js.map +1 -0
  369. package/dist/components/time-picker/RuiTimePicker.vue.d.ts +1 -1
  370. package/dist/components/time-picker/RuiTimePicker.vue.js +11 -0
  371. package/dist/components/time-picker/RuiTimePicker.vue.js.map +1 -0
  372. package/dist/components/time-picker/RuiTimePicker.vue2.js +414 -0
  373. package/dist/components/time-picker/RuiTimePicker.vue2.js.map +1 -0
  374. package/dist/components/time-picker/RuiTimePicker.vue3.js +21 -0
  375. package/dist/components/time-picker/RuiTimePicker.vue3.js.map +1 -0
  376. package/dist/composables/breakpoint.js +49 -0
  377. package/dist/composables/breakpoint.js.map +1 -0
  378. package/dist/composables/defaults/table.js +23 -0
  379. package/dist/composables/defaults/table.js.map +1 -0
  380. package/dist/composables/dropdown-menu.js +218 -0
  381. package/dist/composables/dropdown-menu.js.map +1 -0
  382. package/dist/composables/forms/auto-complete/focus.js +71 -0
  383. package/dist/composables/forms/auto-complete/focus.js.map +1 -0
  384. package/dist/composables/forms/auto-complete/index.d.ts +4 -4
  385. package/dist/composables/forms/auto-complete/keyboard-navigation.js +133 -0
  386. package/dist/composables/forms/auto-complete/keyboard-navigation.js.map +1 -0
  387. package/dist/composables/forms/auto-complete/search.js +93 -0
  388. package/dist/composables/forms/auto-complete/search.js.map +1 -0
  389. package/dist/composables/forms/auto-complete/value.js +129 -0
  390. package/dist/composables/forms/auto-complete/value.js.map +1 -0
  391. package/dist/composables/icons.js +60 -0
  392. package/dist/composables/icons.js.map +1 -0
  393. package/dist/composables/index.d.ts +3 -3
  394. package/dist/composables/index.js +9 -0
  395. package/dist/composables/index.js.map +1 -0
  396. package/dist/composables/popper.js +164 -0
  397. package/dist/composables/popper.js.map +1 -0
  398. package/dist/composables/sticky-header.js +105 -0
  399. package/dist/composables/sticky-header.js.map +1 -0
  400. package/dist/composables/theme.d.ts +1 -1
  401. package/dist/composables/theme.js +75 -0
  402. package/dist/composables/theme.js.map +1 -0
  403. package/dist/composables/timeout-manager.js +21 -0
  404. package/dist/composables/timeout-manager.js.map +1 -0
  405. package/dist/composables/use-rui-i18n.js +24 -0
  406. package/dist/composables/use-rui-i18n.js.map +1 -0
  407. package/dist/consts/colors.js +50 -0
  408. package/dist/consts/colors.js.map +1 -0
  409. package/dist/consts/time-accuracy.js +9 -0
  410. package/dist/consts/time-accuracy.js.map +1 -0
  411. package/dist/i18n/keys.js +20 -0
  412. package/dist/i18n/keys.js.map +1 -0
  413. package/dist/icons/icons_1.js +2503 -0
  414. package/dist/icons/icons_1.js.map +1 -0
  415. package/dist/icons/icons_2.js +2503 -0
  416. package/dist/icons/icons_2.js.map +1 -0
  417. package/dist/icons/icons_3.js +2503 -0
  418. package/dist/icons/icons_3.js.map +1 -0
  419. package/dist/icons/icons_4.js +923 -0
  420. package/dist/icons/icons_4.js.map +1 -0
  421. package/dist/icons/index.d.ts +4 -4
  422. package/dist/icons/index.js +9 -0
  423. package/dist/icons/index.js.map +1 -0
  424. package/dist/index.d.ts +11 -11
  425. package/dist/index.js +1852 -0
  426. package/dist/index.js.map +1 -0
  427. package/dist/style.css +12852 -1
  428. package/dist/theme/index.js +185 -0
  429. package/dist/theme/index.js.map +1 -0
  430. package/dist/types/stepper.js +17 -0
  431. package/dist/types/stepper.js.map +1 -0
  432. package/dist/types/theme.js +27 -0
  433. package/dist/types/theme.js.map +1 -0
  434. package/dist/utils/assert.js +14 -0
  435. package/dist/utils/assert.js.map +1 -0
  436. package/dist/utils/blockie.js +79 -0
  437. package/dist/utils/blockie.js.map +1 -0
  438. package/dist/utils/form-text-detail.js +31 -0
  439. package/dist/utils/form-text-detail.js.map +1 -0
  440. package/dist/utils/generate-id.js +21 -0
  441. package/dist/utils/generate-id.js.map +1 -0
  442. package/dist/utils/helpers.js +51 -0
  443. package/dist/utils/helpers.js.map +1 -0
  444. package/dist/utils/is-equal.js +33 -0
  445. package/dist/utils/is-equal.js.map +1 -0
  446. package/dist/web-types.json +1 -1
  447. package/package.json +16 -14
  448. package/dist/components/index.es.js +0 -8030
  449. package/dist/composables/index-CC7A7CEh.js +0 -737
  450. package/dist/composables/index.es.js +0 -7
  451. package/dist/consts/colors-D563Ic3q.js +0 -48
  452. package/dist/consts/forms/auto-complete/index-l0sNRNKZ.js +0 -2
  453. package/dist/consts/time-accuracy-BnKA5GyT.js +0 -9
  454. package/dist/i18n/keys-CNGXWOJX.js +0 -20
  455. package/dist/icons/icons_1.es.js +0 -2004
  456. package/dist/icons/icons_2.es.js +0 -2004
  457. package/dist/icons/icons_3.es.js +0 -2004
  458. package/dist/icons/icons_4.es.js +0 -740
  459. package/dist/icons/index.es.js +0 -1697
  460. package/dist/index-D7l4d7N2.js +0 -54
  461. package/dist/index.es.js +0 -1757
  462. package/dist/theme/index.es.js +0 -177
  463. package/dist/types/index-CN6Ip1GL.js +0 -39
  464. package/dist/utils/index-DJ-ueLCs.js +0 -158
  465. package/dist/vendor-Hqbg5uCG.js +0 -1931
@@ -1,177 +0,0 @@
1
- import s from "tailwindcss/plugin";
2
- import { b as d, a as h, c as t } from "../consts/colors-D563Ic3q.js";
3
- const u = Object.fromEntries(
4
- d.map((r) => [
5
- r,
6
- Object.fromEntries(
7
- h.map((a) => [
8
- a,
9
- `rgba(var(--rui-${r}-${a}), <alpha-value>)`
10
- ])
11
- )
12
- ])
13
- ), p = Object.fromEntries(
14
- ["light", "dark"].map((r) => [
15
- r,
16
- Object.fromEntries(
17
- t.map((a) => [
18
- a,
19
- {
20
- darker: `rgba(var(--rui-${r}-${a}-darker), <alpha-value>)`,
21
- DEFAULT: `rgba(var(--rui-${r}-${a}-main), <alpha-value>)`,
22
- lighter: `rgba(var(--rui-${r}-${a}-lighter), <alpha-value>)`,
23
- shade: `color-mix(in srgb, black calc(<alpha-value> * 100%), rgb(var(--rui-${r}-${a}-main)))`,
24
- tint: `color-mix(in srgb, white calc(<alpha-value> * 100%), rgb(var(--rui-${r}-${a}-main)))`
25
- }
26
- ])
27
- )
28
- ])
29
- ), v = Object.fromEntries(
30
- t.map((r) => [
31
- r,
32
- {
33
- darker: `rgba(var(--rui-${r}-darker), <alpha-value>)`,
34
- DEFAULT: `rgba(var(--rui-${r}-main), <alpha-value>)`,
35
- lighter: `rgba(var(--rui-${r}-lighter), <alpha-value>)`,
36
- shade: `color-mix(in srgb, black calc(<alpha-value> * 100%), rgb(var(--rui-${r}-main)))`,
37
- tint: `color-mix(in srgb, white calc(<alpha-value> * 100%), rgb(var(--rui-${r}-main)))`
38
- }
39
- ])
40
- ), x = Object.fromEntries(
41
- ["light", "dark"].map((r) => [
42
- r,
43
- {
44
- text: {
45
- DEFAULT: `var(--rui-${r}-text-primary)`,
46
- disabled: `var(--rui-${r}-text-disabled)`,
47
- secondary: `var(--rui-${r}-text-secondary)`
48
- }
49
- }
50
- ])
51
- ), y = {
52
- text: {
53
- DEFAULT: "var(--rui-text-primary)",
54
- disabled: "var(--rui-text-disabled)",
55
- secondary: "var(--rui-text-secondary)"
56
- }
57
- }, w = s(
58
- ({ addUtilities: r, addVariant: a, matchUtilities: e }) => {
59
- r({
60
- ".border-default": {
61
- "border-color": "rgb(var(--rui-grey-200))"
62
- },
63
- ".dark .border-default": {
64
- "border-color": "rgb(var(--rui-grey-800))"
65
- }
66
- }), r({
67
- ".text-body-1": {
68
- "@apply text-base": {}
69
- },
70
- ".text-body-2": {
71
- "@apply text-sm": {}
72
- },
73
- ".text-caption": {
74
- "@apply text-xs": {},
75
- "line-height": "1.25rem"
76
- },
77
- ".text-h1": {
78
- "@apply text-8xl font-light": {},
79
- "line-height": "7rem"
80
- },
81
- ".text-h2": {
82
- "@apply text-6xl font-light": {},
83
- "line-height": "4.5rem"
84
- },
85
- ".text-h3": {
86
- "@apply text-5xl": {},
87
- "line-height": "3.5rem"
88
- },
89
- ".text-h4": {
90
- "@apply text-4xl font-semibold": {},
91
- "line-height": "2.625rem"
92
- },
93
- ".text-h5": {
94
- "@apply text-2xl": {},
95
- "line-height": "2rem"
96
- },
97
- ".text-h6": {
98
- "@apply text-xl font-medium": {},
99
- "line-height": "2rem"
100
- },
101
- ".text-overline": {
102
- "@apply text-xs uppercase": {},
103
- "line-height": "2rem"
104
- },
105
- ".text-subtitle-1": {
106
- "@apply text-base": {},
107
- "line-height": "1.75rem"
108
- },
109
- ".text-subtitle-2": {
110
- "@apply text-sm font-medium": {},
111
- "line-height": "1.25rem"
112
- }
113
- }), e(
114
- Object.fromEntries(
115
- ["bg-tint", "bg-shade", "text-tint", "text-shade"].map((i) => [
116
- i,
117
- (o) => ({
118
- animation: `${i} 1s calc(${o} * -1s) linear forwards paused`
119
- })
120
- ])
121
- )
122
- ), a("color-mix-supported", "@supports (color-mix())");
123
- },
124
- {
125
- theme: {
126
- extend: {
127
- boxShadow: {
128
- 1: "0px 2px 1px -1px var(--rui-shadow-primary), 0px 1px 1px var(--rui-shadow-secondary), 0px 1px 3px var(--rui-shadow-tertiary)",
129
- 10: "0px 6px 6px -3px var(--rui-shadow-primary), 0px 10px 14px 1px var(--rui-shadow-secondary), 0px 4px 18px 3px var(--rui-shadow-tertiary)",
130
- 11: "0px 6px 7px -4px var(--rui-shadow-primary), 0px 11px 15px 1px var(--rui-shadow-secondary), 0px 4px 20px 3px var(--rui-shadow-tertiary)",
131
- 12: "0px 7px 8px -4px var(--rui-shadow-primary), 0px 12px 17px 2px var(--rui-shadow-secondary), 0px 5px 22px 4px var(--rui-shadow-tertiary)",
132
- 13: "0px 7px 8px -4px var(--rui-shadow-primary), 0px 13px 19px 2px var(--rui-shadow-secondary), 0px 5px 24px 4px var(--rui-shadow-tertiary)",
133
- 14: "0px 7px 9px -4px var(--rui-shadow-primary), 0px 14px 21px 2px var(--rui-shadow-secondary), 0px 5px 26px 4px var(--rui-shadow-tertiary)",
134
- 15: "0px 8px 9px -5px var(--rui-shadow-primary), 0px 15px 22px 2px var(--rui-shadow-secondary), 0px 6px 28px 5px var(--rui-shadow-tertiary)",
135
- 16: "0px 8px 10px -5px var(--rui-shadow-primary), 0px 16px 24px 2px var(--rui-shadow-secondary), 0px 6px 30px 5px var(--rui-shadow-tertiary)",
136
- 17: "0px 8px 11px -5px var(--rui-shadow-primary), 0px 17px 26px 2px var(--rui-shadow-secondary), 0px 6px 32px 5px var(--rui-shadow-tertiary)",
137
- 18: "0px 9px 11px -5px var(--rui-shadow-primary), 0px 18px 28px 2px var(--rui-shadow-secondary), 0px 7px 34px 6px var(--rui-shadow-tertiary)",
138
- 19: "0px 9px 12px -6px var(--rui-shadow-primary), 0px 19px 29px 2px var(--rui-shadow-secondary), 0px 7px 36px 6px var(--rui-shadow-tertiary)",
139
- 2: "0px 3px 1px -2px var(--rui-shadow-primary), 0px 2px 2px var(--rui-shadow-secondary), 0px 1px 5px var(--rui-shadow-tertiary)",
140
- 20: "0px 10px 13px -6px var(--rui-shadow-primary), 0px 20px 31px 3px var(--rui-shadow-secondary), 0px 8px 38px 7px var(--rui-shadow-tertiary)",
141
- 21: "0px 10px 13px -6px var(--rui-shadow-primary), 0px 21px 33px 3px var(--rui-shadow-secondary), 0px 8px 40px 7px var(--rui-shadow-tertiary)",
142
- 22: "0px 10px 14px -6px var(--rui-shadow-primary), 0px 22px 35px 3px var(--rui-shadow-secondary), 0px 8px 42px 7px var(--rui-shadow-tertiary)",
143
- 23: "0px 11px 14px -7px var(--rui-shadow-primary), 0px 23px 36px 3px var(--rui-shadow-secondary), 0px 9px 44px 8px var(--rui-shadow-tertiary)",
144
- 24: "0px 11px 15px -7px var(--rui-shadow-primary), 0px 24px 38px 3px var(--rui-shadow-secondary), 0px 9px 46px 8px var(--rui-shadow-tertiary)",
145
- 3: "0px 3px 3px -2px var(--rui-shadow-primary), 0px 3px 4px var(--rui-shadow-secondary), 0px 1px 8px var(--rui-shadow-tertiary)",
146
- 4: "0px 2px 4px -1px var(--rui-shadow-primary), 0px 4px 5px var(--rui-shadow-secondary), 0px 1px 10px var(--rui-shadow-tertiary)",
147
- 5: "0px 3px 5px -1px var(--rui-shadow-primary), 0px 5px 8px var(--rui-shadow-secondary), 0px 1px 14px var(--rui-shadow-tertiary)",
148
- 6: "0px 3px 5px -1px var(--rui-shadow-primary), 0px 6px 10px var(--rui-shadow-secondary), 0px 1px 18px var(--rui-shadow-tertiary)",
149
- 7: "0px 4px 5px -2px var(--rui-shadow-primary), 0px 7px 10px 1px var(--rui-shadow-secondary), 0px 2px 16px 1px var(--rui-shadow-tertiary)",
150
- 8: "0px 5px 5px -3px var(--rui-shadow-primary), 0px 8px 10px 1px var(--rui-shadow-secondary), 0px 3px 14px 2px var(--rui-shadow-tertiary)",
151
- 9: "0px 5px 6px -3px var(--rui-shadow-primary), 0px 9px 12px 1px var(--rui-shadow-secondary), 0px 3px 16px 2px var(--rui-shadow-tertiary)"
152
- },
153
- colors: {
154
- rui: {
155
- ...u,
156
- ...p,
157
- ...x,
158
- dark: {
159
- ...p.dark,
160
- ...x.dark
161
- },
162
- light: {
163
- ...p.light,
164
- ...x.light
165
- },
166
- ...v,
167
- ...y
168
- }
169
- }
170
- }
171
- }
172
- }
173
- );
174
- export {
175
- w as default
176
- };
177
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguZXMuanMiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy90aGVtZS9pbmRleC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgcGx1Z2luIGZyb20gJ3RhaWx3aW5kY3NzL3BsdWdpbic7XG5pbXBvcnQge1xuICBiYXNlQ29sb3JzLFxuICBiYXNlQ29sb3JzSW50ZW5zaXRpZXMsXG4gIGNvbnRleHRDb2xvcnMsXG59IGZyb20gJy4uL2NvbnN0cy9jb2xvcnMnO1xuXG5jb25zdCBiYXNlQ29sb3JzQ29tYmluYXRpb24gPSBPYmplY3QuZnJvbUVudHJpZXMoXG4gIGJhc2VDb2xvcnMubWFwKChjb2xvcjogc3RyaW5nKSA9PiBbXG4gICAgY29sb3IsXG4gICAgT2JqZWN0LmZyb21FbnRyaWVzKFxuICAgICAgYmFzZUNvbG9yc0ludGVuc2l0aWVzLm1hcCgoaW50ZW5zaXR5OiBzdHJpbmcpID0+IFtcbiAgICAgICAgaW50ZW5zaXR5LFxuICAgICAgICBgcmdiYSh2YXIoLS1ydWktJHtjb2xvcn0tJHtpbnRlbnNpdHl9KSwgPGFscGhhLXZhbHVlPilgLFxuICAgICAgXSksXG4gICAgKSxcbiAgXSksXG4pO1xuXG5jb25zdCBjb250ZXh0Q29sb3JzQ29tYmluYXRpb24gPSBPYmplY3QuZnJvbUVudHJpZXMoXG4gIFsnbGlnaHQnLCAnZGFyayddLm1hcCh0aGVtZSA9PiBbXG4gICAgdGhlbWUsXG4gICAgT2JqZWN0LmZyb21FbnRyaWVzKFxuICAgICAgY29udGV4dENvbG9ycy5tYXAoY29sb3IgPT4gW1xuICAgICAgICBjb2xvcixcbiAgICAgICAge1xuICAgICAgICAgIGRhcmtlcjogYHJnYmEodmFyKC0tcnVpLSR7dGhlbWV9LSR7Y29sb3J9LWRhcmtlciksIDxhbHBoYS12YWx1ZT4pYCxcbiAgICAgICAgICBERUZBVUxUOiBgcmdiYSh2YXIoLS1ydWktJHt0aGVtZX0tJHtjb2xvcn0tbWFpbiksIDxhbHBoYS12YWx1ZT4pYCxcbiAgICAgICAgICBsaWdodGVyOiBgcmdiYSh2YXIoLS1ydWktJHt0aGVtZX0tJHtjb2xvcn0tbGlnaHRlciksIDxhbHBoYS12YWx1ZT4pYCxcbiAgICAgICAgICBzaGFkZTogYGNvbG9yLW1peChpbiBzcmdiLCBibGFjayBjYWxjKDxhbHBoYS12YWx1ZT4gKiAxMDAlKSwgcmdiKHZhcigtLXJ1aS0ke3RoZW1lfS0ke2NvbG9yfS1tYWluKSkpYCxcbiAgICAgICAgICB0aW50OiBgY29sb3ItbWl4KGluIHNyZ2IsIHdoaXRlIGNhbGMoPGFscGhhLXZhbHVlPiAqIDEwMCUpLCByZ2IodmFyKC0tcnVpLSR7dGhlbWV9LSR7Y29sb3J9LW1haW4pKSlgLFxuICAgICAgICB9LFxuICAgICAgXSksXG4gICAgKSxcbiAgXSksXG4pO1xuXG5jb25zdCBhZGFwdGl2ZUNvbnRleHRDb2xvckNvbWJpbmF0aW9uID0gT2JqZWN0LmZyb21FbnRyaWVzKFxuICBjb250ZXh0Q29sb3JzLm1hcChjb2xvciA9PiBbXG4gICAgY29sb3IsXG4gICAge1xuICAgICAgZGFya2VyOiBgcmdiYSh2YXIoLS1ydWktJHtjb2xvcn0tZGFya2VyKSwgPGFscGhhLXZhbHVlPilgLFxuICAgICAgREVGQVVMVDogYHJnYmEodmFyKC0tcnVpLSR7Y29sb3J9LW1haW4pLCA8YWxwaGEtdmFsdWU+KWAsXG4gICAgICBsaWdodGVyOiBgcmdiYSh2YXIoLS1ydWktJHtjb2xvcn0tbGlnaHRlciksIDxhbHBoYS12YWx1ZT4pYCxcbiAgICAgIHNoYWRlOiBgY29sb3ItbWl4KGluIHNyZ2IsIGJsYWNrIGNhbGMoPGFscGhhLXZhbHVlPiAqIDEwMCUpLCByZ2IodmFyKC0tcnVpLSR7Y29sb3J9LW1haW4pKSlgLFxuICAgICAgdGludDogYGNvbG9yLW1peChpbiBzcmdiLCB3aGl0ZSBjYWxjKDxhbHBoYS12YWx1ZT4gKiAxMDAlKSwgcmdiKHZhcigtLXJ1aS0ke2NvbG9yfS1tYWluKSkpYCxcbiAgICB9LFxuICBdKSxcbik7XG5cbmNvbnN0IHRleHRDb2xvcnNDb21iaW5hdGlvbiA9IE9iamVjdC5mcm9tRW50cmllcyhcbiAgWydsaWdodCcsICdkYXJrJ10ubWFwKHRoZW1lID0+IFtcbiAgICB0aGVtZSxcbiAgICB7XG4gICAgICB0ZXh0OiB7XG4gICAgICAgIERFRkFVTFQ6IGB2YXIoLS1ydWktJHt0aGVtZX0tdGV4dC1wcmltYXJ5KWAsXG4gICAgICAgIGRpc2FibGVkOiBgdmFyKC0tcnVpLSR7dGhlbWV9LXRleHQtZGlzYWJsZWQpYCxcbiAgICAgICAgc2Vjb25kYXJ5OiBgdmFyKC0tcnVpLSR7dGhlbWV9LXRleHQtc2Vjb25kYXJ5KWAsXG4gICAgICB9LFxuICAgIH0sXG4gIF0pLFxuKTtcblxuY29uc3QgYWRhcHRpdmVUZXh0Q29sb3JzQ29tYmluYXRpb24gPSB7XG4gIHRleHQ6IHtcbiAgICBERUZBVUxUOiBgdmFyKC0tcnVpLXRleHQtcHJpbWFyeSlgLFxuICAgIGRpc2FibGVkOiBgdmFyKC0tcnVpLXRleHQtZGlzYWJsZWQpYCxcbiAgICBzZWNvbmRhcnk6IGB2YXIoLS1ydWktdGV4dC1zZWNvbmRhcnkpYCxcbiAgfSxcbn07XG5cbmNvbnN0IHRoZW1lUGx1Z2luID0gcGx1Z2luKFxuICAoeyBhZGRVdGlsaXRpZXMsIGFkZFZhcmlhbnQsIG1hdGNoVXRpbGl0aWVzIH0pID0+IHtcbiAgICAvLyBCb3JkZXIgdXRpbGl0aWVzXG4gICAgYWRkVXRpbGl0aWVzKHtcbiAgICAgICcuYm9yZGVyLWRlZmF1bHQnOiB7XG4gICAgICAgICdib3JkZXItY29sb3InOiAncmdiKHZhcigtLXJ1aS1ncmV5LTIwMCkpJyxcbiAgICAgIH0sXG4gICAgICAnLmRhcmsgLmJvcmRlci1kZWZhdWx0Jzoge1xuICAgICAgICAnYm9yZGVyLWNvbG9yJzogJ3JnYih2YXIoLS1ydWktZ3JleS04MDApKScsXG4gICAgICB9LFxuICAgIH0pO1xuXG4gICAgLy8gVHlwb2dyYXBoeVxuICAgIGFkZFV0aWxpdGllcyh7XG4gICAgICAnLnRleHQtYm9keS0xJzoge1xuICAgICAgICAnQGFwcGx5IHRleHQtYmFzZSc6IHt9LFxuICAgICAgfSxcbiAgICAgICcudGV4dC1ib2R5LTInOiB7XG4gICAgICAgICdAYXBwbHkgdGV4dC1zbSc6IHt9LFxuICAgICAgfSxcbiAgICAgICcudGV4dC1jYXB0aW9uJzoge1xuICAgICAgICAnQGFwcGx5IHRleHQteHMnOiB7fSxcbiAgICAgICAgJ2xpbmUtaGVpZ2h0JzogJzEuMjVyZW0nLFxuICAgICAgfSxcbiAgICAgICcudGV4dC1oMSc6IHtcbiAgICAgICAgJ0BhcHBseSB0ZXh0LTh4bCBmb250LWxpZ2h0Jzoge30sXG4gICAgICAgICdsaW5lLWhlaWdodCc6ICc3cmVtJyxcbiAgICAgIH0sXG4gICAgICAnLnRleHQtaDInOiB7XG4gICAgICAgICdAYXBwbHkgdGV4dC02eGwgZm9udC1saWdodCc6IHt9LFxuICAgICAgICAnbGluZS1oZWlnaHQnOiAnNC41cmVtJyxcbiAgICAgIH0sXG4gICAgICAnLnRleHQtaDMnOiB7XG4gICAgICAgICdAYXBwbHkgdGV4dC01eGwnOiB7fSxcbiAgICAgICAgJ2xpbmUtaGVpZ2h0JzogJzMuNXJlbScsXG4gICAgICB9LFxuICAgICAgJy50ZXh0LWg0Jzoge1xuICAgICAgICAnQGFwcGx5IHRleHQtNHhsIGZvbnQtc2VtaWJvbGQnOiB7fSxcbiAgICAgICAgJ2xpbmUtaGVpZ2h0JzogJzIuNjI1cmVtJyxcbiAgICAgIH0sXG4gICAgICAnLnRleHQtaDUnOiB7XG4gICAgICAgICdAYXBwbHkgdGV4dC0yeGwnOiB7fSxcbiAgICAgICAgJ2xpbmUtaGVpZ2h0JzogJzJyZW0nLFxuICAgICAgfSxcbiAgICAgICcudGV4dC1oNic6IHtcbiAgICAgICAgJ0BhcHBseSB0ZXh0LXhsIGZvbnQtbWVkaXVtJzoge30sXG4gICAgICAgICdsaW5lLWhlaWdodCc6ICcycmVtJyxcbiAgICAgIH0sXG4gICAgICAnLnRleHQtb3ZlcmxpbmUnOiB7XG4gICAgICAgICdAYXBwbHkgdGV4dC14cyB1cHBlcmNhc2UnOiB7fSxcbiAgICAgICAgJ2xpbmUtaGVpZ2h0JzogJzJyZW0nLFxuICAgICAgfSxcbiAgICAgICcudGV4dC1zdWJ0aXRsZS0xJzoge1xuICAgICAgICAnQGFwcGx5IHRleHQtYmFzZSc6IHt9LFxuICAgICAgICAnbGluZS1oZWlnaHQnOiAnMS43NXJlbScsXG4gICAgICB9LFxuICAgICAgJy50ZXh0LXN1YnRpdGxlLTInOiB7XG4gICAgICAgICdAYXBwbHkgdGV4dC1zbSBmb250LW1lZGl1bSc6IHt9LFxuICAgICAgICAnbGluZS1oZWlnaHQnOiAnMS4yNXJlbScsXG4gICAgICB9LFxuICAgIH0pO1xuXG4gICAgLy8gVGludCBhbmQgU2hhZGUgQ29sb3JzXG4gICAgbWF0Y2hVdGlsaXRpZXMoXG4gICAgICBPYmplY3QuZnJvbUVudHJpZXMoXG4gICAgICAgIFsnYmctdGludCcsICdiZy1zaGFkZScsICd0ZXh0LXRpbnQnLCAndGV4dC1zaGFkZSddLm1hcChpdGVtID0+IFtcbiAgICAgICAgICBpdGVtLFxuICAgICAgICAgIHZhbHVlID0+ICh7XG4gICAgICAgICAgICBhbmltYXRpb246IGAke2l0ZW19IDFzIGNhbGMoJHt2YWx1ZX0gKiAtMXMpIGxpbmVhciBmb3J3YXJkcyBwYXVzZWRgLFxuICAgICAgICAgIH0pLFxuICAgICAgICBdKSxcbiAgICAgICksXG4gICAgKTtcbiAgICBhZGRWYXJpYW50KCdjb2xvci1taXgtc3VwcG9ydGVkJywgJ0BzdXBwb3J0cyAoY29sb3ItbWl4KCkpJyk7XG4gIH0sXG4gIHtcbiAgICB0aGVtZToge1xuICAgICAgZXh0ZW5kOiB7XG4gICAgICAgIGJveFNoYWRvdzoge1xuICAgICAgICAgIDE6ICcwcHggMnB4IDFweCAtMXB4IHZhcigtLXJ1aS1zaGFkb3ctcHJpbWFyeSksIDBweCAxcHggMXB4IHZhcigtLXJ1aS1zaGFkb3ctc2Vjb25kYXJ5KSwgMHB4IDFweCAzcHggdmFyKC0tcnVpLXNoYWRvdy10ZXJ0aWFyeSknLFxuICAgICAgICAgIDEwOiAnMHB4IDZweCA2cHggLTNweCB2YXIoLS1ydWktc2hhZG93LXByaW1hcnkpLCAwcHggMTBweCAxNHB4IDFweCB2YXIoLS1ydWktc2hhZG93LXNlY29uZGFyeSksIDBweCA0cHggMThweCAzcHggdmFyKC0tcnVpLXNoYWRvdy10ZXJ0aWFyeSknLFxuICAgICAgICAgIDExOiAnMHB4IDZweCA3cHggLTRweCB2YXIoLS1ydWktc2hhZG93LXByaW1hcnkpLCAwcHggMTFweCAxNXB4IDFweCB2YXIoLS1ydWktc2hhZG93LXNlY29uZGFyeSksIDBweCA0cHggMjBweCAzcHggdmFyKC0tcnVpLXNoYWRvdy10ZXJ0aWFyeSknLFxuICAgICAgICAgIDEyOiAnMHB4IDdweCA4cHggLTRweCB2YXIoLS1ydWktc2hhZG93LXByaW1hcnkpLCAwcHggMTJweCAxN3B4IDJweCB2YXIoLS1ydWktc2hhZG93LXNlY29uZGFyeSksIDBweCA1cHggMjJweCA0cHggdmFyKC0tcnVpLXNoYWRvdy10ZXJ0aWFyeSknLFxuICAgICAgICAgIDEzOiAnMHB4IDdweCA4cHggLTRweCB2YXIoLS1ydWktc2hhZG93LXByaW1hcnkpLCAwcHggMTNweCAxOXB4IDJweCB2YXIoLS1ydWktc2hhZG93LXNlY29uZGFyeSksIDBweCA1cHggMjRweCA0cHggdmFyKC0tcnVpLXNoYWRvdy10ZXJ0aWFyeSknLFxuICAgICAgICAgIDE0OiAnMHB4IDdweCA5cHggLTRweCB2YXIoLS1ydWktc2hhZG93LXByaW1hcnkpLCAwcHggMTRweCAyMXB4IDJweCB2YXIoLS1ydWktc2hhZG93LXNlY29uZGFyeSksIDBweCA1cHggMjZweCA0cHggdmFyKC0tcnVpLXNoYWRvdy10ZXJ0aWFyeSknLFxuICAgICAgICAgIDE1OiAnMHB4IDhweCA5cHggLTVweCB2YXIoLS1ydWktc2hhZG93LXByaW1hcnkpLCAwcHggMTVweCAyMnB4IDJweCB2YXIoLS1ydWktc2hhZG93LXNlY29uZGFyeSksIDBweCA2cHggMjhweCA1cHggdmFyKC0tcnVpLXNoYWRvdy10ZXJ0aWFyeSknLFxuICAgICAgICAgIDE2OiAnMHB4IDhweCAxMHB4IC01cHggdmFyKC0tcnVpLXNoYWRvdy1wcmltYXJ5KSwgMHB4IDE2cHggMjRweCAycHggdmFyKC0tcnVpLXNoYWRvdy1zZWNvbmRhcnkpLCAwcHggNnB4IDMwcHggNXB4IHZhcigtLXJ1aS1zaGFkb3ctdGVydGlhcnkpJyxcbiAgICAgICAgICAxNzogJzBweCA4cHggMTFweCAtNXB4IHZhcigtLXJ1aS1zaGFkb3ctcHJpbWFyeSksIDBweCAxN3B4IDI2cHggMnB4IHZhcigtLXJ1aS1zaGFkb3ctc2Vjb25kYXJ5KSwgMHB4IDZweCAzMnB4IDVweCB2YXIoLS1ydWktc2hhZG93LXRlcnRpYXJ5KScsXG4gICAgICAgICAgMTg6ICcwcHggOXB4IDExcHggLTVweCB2YXIoLS1ydWktc2hhZG93LXByaW1hcnkpLCAwcHggMThweCAyOHB4IDJweCB2YXIoLS1ydWktc2hhZG93LXNlY29uZGFyeSksIDBweCA3cHggMzRweCA2cHggdmFyKC0tcnVpLXNoYWRvdy10ZXJ0aWFyeSknLFxuICAgICAgICAgIDE5OiAnMHB4IDlweCAxMnB4IC02cHggdmFyKC0tcnVpLXNoYWRvdy1wcmltYXJ5KSwgMHB4IDE5cHggMjlweCAycHggdmFyKC0tcnVpLXNoYWRvdy1zZWNvbmRhcnkpLCAwcHggN3B4IDM2cHggNnB4IHZhcigtLXJ1aS1zaGFkb3ctdGVydGlhcnkpJyxcbiAgICAgICAgICAyOiAnMHB4IDNweCAxcHggLTJweCB2YXIoLS1ydWktc2hhZG93LXByaW1hcnkpLCAwcHggMnB4IDJweCB2YXIoLS1ydWktc2hhZG93LXNlY29uZGFyeSksIDBweCAxcHggNXB4IHZhcigtLXJ1aS1zaGFkb3ctdGVydGlhcnkpJyxcbiAgICAgICAgICAyMDogJzBweCAxMHB4IDEzcHggLTZweCB2YXIoLS1ydWktc2hhZG93LXByaW1hcnkpLCAwcHggMjBweCAzMXB4IDNweCB2YXIoLS1ydWktc2hhZG93LXNlY29uZGFyeSksIDBweCA4cHggMzhweCA3cHggdmFyKC0tcnVpLXNoYWRvdy10ZXJ0aWFyeSknLFxuICAgICAgICAgIDIxOiAnMHB4IDEwcHggMTNweCAtNnB4IHZhcigtLXJ1aS1zaGFkb3ctcHJpbWFyeSksIDBweCAyMXB4IDMzcHggM3B4IHZhcigtLXJ1aS1zaGFkb3ctc2Vjb25kYXJ5KSwgMHB4IDhweCA0MHB4IDdweCB2YXIoLS1ydWktc2hhZG93LXRlcnRpYXJ5KScsXG4gICAgICAgICAgMjI6ICcwcHggMTBweCAxNHB4IC02cHggdmFyKC0tcnVpLXNoYWRvdy1wcmltYXJ5KSwgMHB4IDIycHggMzVweCAzcHggdmFyKC0tcnVpLXNoYWRvdy1zZWNvbmRhcnkpLCAwcHggOHB4IDQycHggN3B4IHZhcigtLXJ1aS1zaGFkb3ctdGVydGlhcnkpJyxcbiAgICAgICAgICAyMzogJzBweCAxMXB4IDE0cHggLTdweCB2YXIoLS1ydWktc2hhZG93LXByaW1hcnkpLCAwcHggMjNweCAzNnB4IDNweCB2YXIoLS1ydWktc2hhZG93LXNlY29uZGFyeSksIDBweCA5cHggNDRweCA4cHggdmFyKC0tcnVpLXNoYWRvdy10ZXJ0aWFyeSknLFxuICAgICAgICAgIDI0OiAnMHB4IDExcHggMTVweCAtN3B4IHZhcigtLXJ1aS1zaGFkb3ctcHJpbWFyeSksIDBweCAyNHB4IDM4cHggM3B4IHZhcigtLXJ1aS1zaGFkb3ctc2Vjb25kYXJ5KSwgMHB4IDlweCA0NnB4IDhweCB2YXIoLS1ydWktc2hhZG93LXRlcnRpYXJ5KScsXG4gICAgICAgICAgMzogJzBweCAzcHggM3B4IC0ycHggdmFyKC0tcnVpLXNoYWRvdy1wcmltYXJ5KSwgMHB4IDNweCA0cHggdmFyKC0tcnVpLXNoYWRvdy1zZWNvbmRhcnkpLCAwcHggMXB4IDhweCB2YXIoLS1ydWktc2hhZG93LXRlcnRpYXJ5KScsXG4gICAgICAgICAgNDogJzBweCAycHggNHB4IC0xcHggdmFyKC0tcnVpLXNoYWRvdy1wcmltYXJ5KSwgMHB4IDRweCA1cHggdmFyKC0tcnVpLXNoYWRvdy1zZWNvbmRhcnkpLCAwcHggMXB4IDEwcHggdmFyKC0tcnVpLXNoYWRvdy10ZXJ0aWFyeSknLFxuICAgICAgICAgIDU6ICcwcHggM3B4IDVweCAtMXB4IHZhcigtLXJ1aS1zaGFkb3ctcHJpbWFyeSksIDBweCA1cHggOHB4IHZhcigtLXJ1aS1zaGFkb3ctc2Vjb25kYXJ5KSwgMHB4IDFweCAxNHB4IHZhcigtLXJ1aS1zaGFkb3ctdGVydGlhcnkpJyxcbiAgICAgICAgICA2OiAnMHB4IDNweCA1cHggLTFweCB2YXIoLS1ydWktc2hhZG93LXByaW1hcnkpLCAwcHggNnB4IDEwcHggdmFyKC0tcnVpLXNoYWRvdy1zZWNvbmRhcnkpLCAwcHggMXB4IDE4cHggdmFyKC0tcnVpLXNoYWRvdy10ZXJ0aWFyeSknLFxuICAgICAgICAgIDc6ICcwcHggNHB4IDVweCAtMnB4IHZhcigtLXJ1aS1zaGFkb3ctcHJpbWFyeSksIDBweCA3cHggMTBweCAxcHggdmFyKC0tcnVpLXNoYWRvdy1zZWNvbmRhcnkpLCAwcHggMnB4IDE2cHggMXB4IHZhcigtLXJ1aS1zaGFkb3ctdGVydGlhcnkpJyxcbiAgICAgICAgICA4OiAnMHB4IDVweCA1cHggLTNweCB2YXIoLS1ydWktc2hhZG93LXByaW1hcnkpLCAwcHggOHB4IDEwcHggMXB4IHZhcigtLXJ1aS1zaGFkb3ctc2Vjb25kYXJ5KSwgMHB4IDNweCAxNHB4IDJweCB2YXIoLS1ydWktc2hhZG93LXRlcnRpYXJ5KScsXG4gICAgICAgICAgOTogJzBweCA1cHggNnB4IC0zcHggdmFyKC0tcnVpLXNoYWRvdy1wcmltYXJ5KSwgMHB4IDlweCAxMnB4IDFweCB2YXIoLS1ydWktc2hhZG93LXNlY29uZGFyeSksIDBweCAzcHggMTZweCAycHggdmFyKC0tcnVpLXNoYWRvdy10ZXJ0aWFyeSknLFxuICAgICAgICB9LFxuICAgICAgICBjb2xvcnM6IHtcbiAgICAgICAgICBydWk6IHtcbiAgICAgICAgICAgIC4uLmJhc2VDb2xvcnNDb21iaW5hdGlvbixcbiAgICAgICAgICAgIC4uLmNvbnRleHRDb2xvcnNDb21iaW5hdGlvbixcbiAgICAgICAgICAgIC4uLnRleHRDb2xvcnNDb21iaW5hdGlvbixcbiAgICAgICAgICAgIGRhcms6IHtcbiAgICAgICAgICAgICAgLi4uY29udGV4dENvbG9yc0NvbWJpbmF0aW9uLmRhcmssXG4gICAgICAgICAgICAgIC4uLnRleHRDb2xvcnNDb21iaW5hdGlvbi5kYXJrLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIGxpZ2h0OiB7XG4gICAgICAgICAgICAgIC4uLmNvbnRleHRDb2xvcnNDb21iaW5hdGlvbi5saWdodCxcbiAgICAgICAgICAgICAgLi4udGV4dENvbG9yc0NvbWJpbmF0aW9uLmxpZ2h0LFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIC4uLmFkYXB0aXZlQ29udGV4dENvbG9yQ29tYmluYXRpb24sXG4gICAgICAgICAgICAuLi5hZGFwdGl2ZVRleHRDb2xvcnNDb21iaW5hdGlvbixcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgfSxcbiAgICB9LFxuICB9LFxuKTtcblxuZXhwb3J0IGRlZmF1bHQgdGhlbWVQbHVnaW47XG4iXSwibmFtZXMiOlsiYmFzZUNvbG9yc0NvbWJpbmF0aW9uIiwiYmFzZUNvbG9ycyIsImNvbG9yIiwiYmFzZUNvbG9yc0ludGVuc2l0aWVzIiwiaW50ZW5zaXR5IiwiY29udGV4dENvbG9yc0NvbWJpbmF0aW9uIiwidGhlbWUiLCJjb250ZXh0Q29sb3JzIiwiYWRhcHRpdmVDb250ZXh0Q29sb3JDb21iaW5hdGlvbiIsInRleHRDb2xvcnNDb21iaW5hdGlvbiIsImFkYXB0aXZlVGV4dENvbG9yc0NvbWJpbmF0aW9uIiwidGhlbWVQbHVnaW4iLCJwbHVnaW4iLCJhZGRVdGlsaXRpZXMiLCJhZGRWYXJpYW50IiwibWF0Y2hVdGlsaXRpZXMiLCJpdGVtIiwidmFsdWUiXSwibWFwcGluZ3MiOiI7O0FBT0EsTUFBTUEsSUFBd0IsT0FBTztBQUFBLEVBQ25DQyxFQUFXLElBQUksQ0FBQ0MsTUFBa0I7QUFBQSxJQUNoQ0E7QUFBQSxJQUNBLE9BQU87QUFBQSxNQUNMQyxFQUFzQixJQUFJLENBQUNDLE1BQXNCO0FBQUEsUUFDL0NBO0FBQUEs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
@@ -1,39 +0,0 @@
1
- import { c as e } from "../consts/colors-D563Ic3q.js";
2
- const n = {
3
- auto: "auto",
4
- dark: "dark",
5
- light: "light"
6
- };
7
- function a(t) {
8
- return Object.fromEntries(
9
- e.map((r) => [
10
- r,
11
- {
12
- darker: `var(--rui-${t}-${r}-darker)`,
13
- DEFAULT: `var(--rui-${t}-${r}-main)`,
14
- lighter: `var(--rui-${t}-${r}-lighter)`
15
- }
16
- ])
17
- );
18
- }
19
- const o = {
20
- dark: a("dark"),
21
- light: a("light")
22
- }, s = {
23
- active: "active",
24
- done: "done",
25
- error: "error",
26
- inactive: "inactive",
27
- info: "info",
28
- success: "success",
29
- warning: "warning"
30
- }, c = {
31
- horizontal: "horizontal"
32
- };
33
- export {
34
- s as S,
35
- n as T,
36
- c as a,
37
- o as d
38
- };
39
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXgtQ042SXAxR0wuanMiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy90eXBlcy90aGVtZS50cyIsIi4uLy4uL3NyYy90eXBlcy9zdGVwcGVyLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgQmFzaWNDb2xvclNjaGVtYSB9IGZyb20gJ0B2dWV1c2UvY29yZSc7XG5pbXBvcnQgdHlwZSB7IENvbXB1dGVkUmVmLCBSZWYgfSBmcm9tICd2dWUnO1xuaW1wb3J0IHR5cGUgeyBHZW5lcmF0ZWRJY29uIH0gZnJvbSAnQC90eXBlcy9pY29ucyc7XG5pbXBvcnQgeyBjb250ZXh0Q29sb3JzIH0gZnJvbSAnQC9jb25zdHMvY29sb3JzJztcblxuZXhwb3J0IGNvbnN0IFRoZW1lTW9kZSA9IHtcbiAgYXV0bzogJ2F1dG8nLFxuICBkYXJrOiAnZGFyaycsXG4gIGxpZ2h0OiAnbGlnaHQnLFxufSBhcyBjb25zdDtcblxuZXhwb3J0IHR5cGUgVGhlbWVNb2RlID0gKHR5cGVvZiBUaGVtZU1vZGUpW2tleW9mIHR5cGVvZiBUaGVtZU1vZGVdO1xuXG5leHBvcnQgaW50ZXJmYWNlIENvbG9ySW50ZW5zaXR5IHtcbiAgREVGQVVMVDogc3RyaW5nO1xuICBsaWdodGVyOiBzdHJpbmc7XG4gIGRhcmtlcjogc3RyaW5nO1xufVxuXG5leHBvcnQgdHlwZSBUaGVtZURhdGEgPSB7XG4gIFtrZXkgaW4gc3RyaW5nXTogQ29sb3JJbnRlbnNpdHk7XG59O1xuXG5leHBvcnQgaW50ZXJmYWNlIFRoZW1lQ29uZmlnIHtcbiAgbGlnaHQ6IFRoZW1lRGF0YTtcbiAgZGFyazogVGhlbWVEYXRhO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEluaXRUaGVtZU9wdGlvbnMge1xuICBtb2RlPzogVGhlbWVNb2RlO1xuICBjb25maWc/OiBUaGVtZUNvbmZpZztcbiAgaWNvbnM/OiBHZW5lcmF0ZWRJY29uW107XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgVGhlbWVDb250ZW50IHtcbiAgdGhlbWU6IFJlZjxUaGVtZURhdGEgfCB1bmRlZmluZWQ+O1xuICBzdG9yZTogUmVmPFRoZW1lTW9kZSB8IEJhc2ljQ29sb3JTY2hlbWE+O1xuICBzdGF0ZTogQ29tcHV0ZWRSZWY8VGhlbWVNb2RlIHwgQmFzaWNDb2xvclNjaGVtYT47XG4gIGNvbmZpZzogUmVmPFRoZW1lQ29uZmlnIHwgdW5kZWZpbmVkPjtcbiAgaXNBdXRvQ29udHJvbGxlZDogQ29tcHV0ZWRSZWY8Ym9vbGVhbj47XG4gIGlzRGFyazogQ29tcHV0ZWRSZWY8Ym9vbGVhbj47XG4gIGlzTGlnaHQ6IENvbXB1dGVkUmVmPGJvb2xlYW4+O1xuICBpbml0OiAob3B0aW9uczogSW5pdFRoZW1lT3B0aW9ucykgPT4gdm9pZDtcbiAgc3dpdGNoVGhlbWVTY2hlbWU6IChtb2RlOiBUaGVtZU1vZGUpID0+IHZvaWQ7XG4gIHRvZ2dsZVRoZW1lTW9kZTogKCkgPT4gdm9pZDtcbiAgc2V0VGhlbWVDb25maWc6IChuZXdDb25maWc6IFRoZW1lQ29uZmlnKSA9PiB2b2lkO1xufVxuXG5mdW5jdGlvbiBjcmVhdGVEZWZhdWx0VGhlbWUodGhlbWU6ICdsaWdodCcgfCAnZGFyaycpIHtcbiAgcmV0dXJuIE9iamVjdC5mcm9tRW50cmllcyhcbiAgICBjb250ZXh0Q29sb3JzLm1hcChjb2xvciA9PiBbXG4gICAgICBjb2xvcixcbiAgICAgIHtcbiAgICAgICAgZGFya2VyOiBgdmFyKC0tcnVpLSR7dGhlbWV9LSR7Y29sb3J9LWRhcmtlcilgLFxuICAgICAgICBERUZBVUxUOiBgdmFyKC0tcnVpLSR7dGhlbWV9LSR7Y29sb3J9LW1haW4pYCxcbiAgICAgICAgbGlnaHRlcjogYHZhcigtLXJ1aS0ke3RoZW1lfS0ke2NvbG9yfS1saWdodGVyKWAsXG4gICAgICB9LFxuICAgIF0pLFxuICApO1xufVxuXG5leHBvcnQgY29uc3QgZGVmYXVsdFRoZW1lOiBUaGVtZUNvbmZpZyA9IHtcbiAgZGFyazogY3JlYXRlRGVmYXVsdFRoZW1lKCdkYXJrJyksXG4gIGxpZ2h0OiBjcmVhdGVEZWZhdWx0VGhlbWUoJ2xpZ2h0JyksXG59O1xuIiwiZXhwb3J0IGNvbnN0IFN0ZXBwZXJTdGF0ZSA9IHtcbiAgYWN0aXZlOiAnYWN0aXZlJyxcbiAgZG9uZTogJ2RvbmUnLFxuICBlcnJvcjogJ2Vycm9yJyxcbiAgaW5hY3RpdmU6ICdpbmFjdGl2ZScsXG4gIGluZm86ICdpbmZvJyxcbiAgc3VjY2VzczogJ3N1Y2Nlc3MnLFxuICB3YXJuaW5nOiAnd2FybmluZycsXG59IGFzIGNvbnN0O1xuXG5leHBvcnQgdHlwZSBTdGVwcGVyU3RhdGUgPSAodHlwZW9mIFN0ZXBwZXJTdGF0ZSlba2V5b2YgdHlwZW9mIFN0ZXBwZXJTdGF0ZV07XG5cbmV4cG9ydCBpbnRlcmZhY2UgU3RlcHBlclN0ZXAge1xuICB0aXRsZT86IHN0cmluZztcbiAgZGVzY3JpcHRpb24/OiBzdHJpbmc7XG4gIHN0YXRlPzogU3RlcHBlclN0YXRlO1xuICBsb2FkaW5nPzogYm9vbGVhbjtcbn1cblxuZXhwb3J0IGNvbnN0IFN0ZXBwZXJPcmllbnRhdGlvbiA9IHtcbiAgaG9yaXpvbnRhbDogJ2hvcml6b250YWwnLFxuICB2ZXJ0aWNhbDogJ3ZlcnRpY2FsJyxcbn0gYXMgY29uc3Q7XG5cbmV4cG9ydCB0eXBlIFN0ZXBwZXJPcmllbnRhdGlvbiA9XG4gICh0eXBlb2YgU3RlcHBlck9yaWVudGF0aW9uKVtrZXlvZiB0eXBlb2YgU3RlcHBlck9yaWVudGF0aW9uXTtcbiJdLCJuYW1lcyI6WyJUaGVtZU1vZGUiLCJjcmVhdGVEZWZhdWx0VGhlbWUiLCJ0aGVtZSIsImNvbnRleHRDb2xvcnMiLCJjb2xvciIsImRlZmF1bHRUaGVtZSIsIlN0ZXBwZXJTdGF0ZSIsIlN0ZXBwZXJPcmllbnRhdGlvbiJdLCJtYXBwaW5ncyI6IjtBQUtPLE1BQU1BLElBQVk7QUFBQSxFQUN2QixNQUFNO0FBQUEsRUFDTixNQUFNO0FBQUEsRUFDTixPQUFPO0FBQ1Q7QUF1Q0EsU0FBU0MsRUFBbUJDLEdBQXlCO0FBQ25ELFNBQU8sT0FBTztBQUFBLElBQ1pDLEVBQWMsSUFBSSxDQUFBQyxNQUFTO0FBQUEsTUFDekJBO0FBQUEsTUFDQTtBQUFBLFFBQ0UsUUFBUSxhQUFhRixDQUFLLElBQUlFLENBQUs7QUFBQSxRQUNuQyxTQUFTLGFBQWFGLENBQUssSUFBSUUsQ0FBSztBQUFBLFFBQ3BDLFNBQVMsYUFBYUYsQ0FBSyxJQUFJRSxDQUFLO0FBQUEsTUFBQTtBQUFBLElBQ3RDLENBQ0Q7QUFBQSxFQUFBO0FBRUw7QUFFTyxNQUFNQyxJQUE0QjtBQUFBLEVBQ3ZDLE1BQU1KLEVBQW1CLE1BQU07QUFBQSxFQUMvQixPQUFPQSxFQUFtQixPQUFPO0FBQ25DLEdDaEVhSyxJQUFlO0FBQUEsRUFDMUIsUUFBUTtBQUFBLEVBQ1IsTUFBTTtBQUFBLEVBQ04sT0FBTztBQUFBLEVBQ1AsVUFBVTtBQUFBLEVBQ1YsTUFBTTtBQUFBLEVBQ04sU0FBUztBQUFBLEVBQ1QsU0FBUztBQUNYLEdBV2FDLElBQXFCO0FBQUEsRUFDaEMsWUFBWTtBQUVkOyJ9
@@ -1,158 +0,0 @@
1
- import { logicOr as p } from "@vueuse/math";
2
- import { computed as m, ref as b } from "vue";
3
- import { get as g, objectPick as w, objectOmit as M, set as x } from "@vueuse/shared";
4
- import { c as A } from "../vendor-Hqbg5uCG.js";
5
- import { createGlobalState as C } from "@vueuse/core";
6
- class I extends Error {
7
- constructor(e) {
8
- super(e ?? "AssertionError"), this.name = "AssertionError";
9
- }
10
- }
11
- function K(t, e) {
12
- if (!t)
13
- throw new I(e);
14
- }
15
- function T(t, e) {
16
- const r = m(() => {
17
- let o = g(t);
18
- return typeof o == "string" && (o = [o]), o.filter((f) => !!f);
19
- }), s = m(() => {
20
- let o = g(e);
21
- return typeof o == "string" && (o = [o]), o.filter((f) => !!f);
22
- }), i = m(() => g(r).length > 0), c = m(() => g(s).length > 0), a = p(i, c);
23
- return {
24
- formattedErrorMessages: r,
25
- formattedSuccessMessages: s,
26
- hasError: i,
27
- hasMessages: a,
28
- hasSuccess: c
29
- };
30
- }
31
- function O(t, { fractionDigits: e = 2 }) {
32
- return new Intl.NumberFormat(void 0, {
33
- maximumFractionDigits: e,
34
- minimumFractionDigits: e
35
- }).format(Number(t));
36
- }
37
- function V(t) {
38
- return O(t, { fractionDigits: 0 });
39
- }
40
- function y(t) {
41
- return Object.keys(t).filter(
42
- (e) => e.startsWith("data-")
43
- );
44
- }
45
- function W(t, e = ["class"]) {
46
- return w(t, [...y(t), ...e]);
47
- }
48
- function q(t, e = ["class"]) {
49
- return M(t, [...y(t), ...e]);
50
- }
51
- function G(t, e) {
52
- return t && Object.keys(t).reduce((r, s) => (r[A(s)] = t[s], r), {});
53
- }
54
- function L(t) {
55
- return t ? t.toString().toLowerCase().replace(/[^\da-z]/gi, "") : "";
56
- }
57
- function P(t) {
58
- return t === void 0 || typeof t == "string" && isNaN(Number(t)) ? t : `${t}px`;
59
- }
60
- function h(t, e) {
61
- if (t === e)
62
- return !0;
63
- if (t == null || e == null)
64
- return t === e;
65
- if (typeof t != typeof e)
66
- return !1;
67
- if (Array.isArray(t)) {
68
- if (!Array.isArray(e) || t.length !== e.length)
69
- return !1;
70
- for (const [r, s] of t.entries())
71
- if (!h(s, e[r]))
72
- return !1;
73
- return !0;
74
- }
75
- if (typeof t == "object") {
76
- const r = Object.keys(t), s = Object.keys(e);
77
- if (r.length !== s.length)
78
- return !1;
79
- for (const i of r)
80
- if (!h(t[i], e[i]))
81
- return !1;
82
- return !0;
83
- }
84
- return !1;
85
- }
86
- const S = C(() => {
87
- const t = b(0);
88
- return { count: t, nextId: () => {
89
- const r = g(t) + 1;
90
- return x(t, r), r;
91
- } };
92
- });
93
- function U(t = "") {
94
- const { nextId: e } = S();
95
- return `${t}-${e()}`;
96
- }
97
- const n = new Array(4);
98
- function j(t) {
99
- for (let e = 0; e < n.length; e++) n[e] = 0;
100
- for (let e = 0; e < t.length; e++)
101
- n[e % 4] = (n[e % 4] << 5) - n[e % 4] + t.charCodeAt(e);
102
- }
103
- function u() {
104
- const t = n[0] ^ n[0] << 11;
105
- return n[0] = n[1], n[1] = n[2], n[2] = n[3], n[3] = n[3] ^ n[3] >> 19 ^ t ^ t >> 8, (n[3] >>> 0) / (1 << 31 >>> 0);
106
- }
107
- function d() {
108
- const t = Math.floor(u() * 360), e = `${u() * 60 + 40}%`, r = `${(u() + u() + u() + u()) * 25}%`;
109
- return `hsl(${t},${e},${r})`;
110
- }
111
- function k(t) {
112
- const e = t, r = t, s = Math.ceil(e / 2), i = e - s, c = [];
113
- for (let a = 0; a < r; a++) {
114
- let o = [];
115
- for (let l = 0; l < s; l++)
116
- o[l] = Math.floor(u() * 2.3);
117
- const f = o.slice(0, i);
118
- f.reverse(), o = o.concat(f);
119
- for (const l of o) c.push(l);
120
- }
121
- return c;
122
- }
123
- function E(t) {
124
- const e = {};
125
- return e.seed = t.seed || Math.floor(Math.random() * 10 ** 16).toString(16), j(e.seed), e.size = t.size || 8, e.scale = t.scale || 8, e.color = t.color || d(), e.bgcolor = t.bgcolor || d(), e.spotColor = t.spotColor || d(), e;
126
- }
127
- function $(t, e) {
128
- const r = E(t || {}), s = k(r.size), i = Math.sqrt(s.length);
129
- e.width = e.height = r.size * r.scale;
130
- const c = e.getContext("2d");
131
- if (c) {
132
- c.fillStyle = r.bgcolor, c.fillRect(0, 0, e.width, e.height), c.fillStyle = r.color;
133
- for (const [a, o] of s.entries())
134
- if (o) {
135
- const f = Math.floor(a / i), l = a % i;
136
- c.fillStyle = o === 1 ? r.color : r.spotColor, c.fillRect(l * r.scale, f * r.scale, r.scale, r.scale);
137
- }
138
- }
139
- return e;
140
- }
141
- function B(t) {
142
- const e = document.createElement("canvas");
143
- return $(t, e), e.toDataURL("image/jpeg");
144
- }
145
- export {
146
- K as a,
147
- q as b,
148
- L as c,
149
- U as d,
150
- P as e,
151
- V as f,
152
- W as g,
153
- B as h,
154
- h as i,
155
- G as t,
156
- T as u
157
- };
158
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXgtREotdWVMQ3MuanMiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlscy9hc3NlcnQudHMiLCIuLi8uLi9zcmMvdXRpbHMvZm9ybS10ZXh0LWRldGFpbC50cyIsIi4uLy4uL3NyYy91dGlscy9oZWxwZXJzLnRzIiwiLi4vLi4vc3JjL3V0aWxzL2lzLWVxdWFsLnRzIiwiLi4vLi4vc3JjL3V0aWxzL2dlbmVyYXRlLWlkLnRzIiwiLi4vLi4vc3JjL3V0aWxzL2Jsb2NraWUudHMiXSwic291cmNlc0NvbnRlbnQiOlsiY2xhc3MgQXNzZXJ0aW9uRXJyb3IgZXh0ZW5kcyBFcnJvciB7XG4gIGNvbnN0cnVjdG9yKG1zZz86IHN0cmluZykge1xuICAgIHN1cGVyKG1zZyA/PyAnQXNzZXJ0aW9uRXJyb3InKTtcbiAgICB0aGlzLm5hbWUgPSAnQXNzZXJ0aW9uRXJyb3InO1xuICB9XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBhc3NlcnQoY29uZGl0aW9uOiBhbnksIG1zZz86IHN0cmluZyk6IGFzc2VydHMgY29uZGl0aW9uIHtcbiAgaWYgKCFjb25kaXRpb24pXG4gICAgdGhyb3cgbmV3IEFzc2VydGlvbkVycm9yKG1zZyk7XG59XG4iLCJpbXBvcnQgdHlwZSB7IE1heWJlUmVmIH0gZnJvbSAndnVlJztcbmltcG9ydCB7IGxvZ2ljT3IgfSBmcm9tICdAdnVldXNlL21hdGgnO1xuXG5leHBvcnQgZnVuY3Rpb24gdXNlRm9ybVRleHREZXRhaWwoZXJyb3JNZXNzYWdlczogTWF5YmVSZWY8c3RyaW5nIHwgc3RyaW5nW10+LCBzdWNjZXNzTWVzc2FnZXM6IE1heWJlUmVmPHN0cmluZyB8IHN0cmluZ1tdPikge1xuICBjb25zdCBmb3JtYXR0ZWRFcnJvck1lc3NhZ2VzID0gY29tcHV0ZWQoKCkgPT4ge1xuICAgIGxldCBlcnJvck1lc3NhZ2VzVmFsID0gZ2V0KGVycm9yTWVzc2FnZXMpO1xuICAgIGlmICh0eXBlb2YgZXJyb3JNZXNzYWdlc1ZhbCA9PT0gJ3N0cmluZycpXG4gICAgICBlcnJvck1lc3NhZ2VzVmFsID0gW2Vycm9yTWVzc2FnZXNWYWxdO1xuXG4gICAgcmV0dXJuIGVycm9yTWVzc2FnZXNWYWwuZmlsdGVyKGl0ZW0gPT4gISFpdGVtKTtcbiAgfSk7XG5cbiAgY29uc3QgZm9ybWF0dGVkU3VjY2Vzc01lc3NhZ2VzID0gY29tcHV0ZWQoKCkgPT4ge1xuICAgIGxldCBzdWNjZXNzTWVzc2FnZXNWYWwgPSBnZXQoc3VjY2Vzc01lc3NhZ2VzKTtcbiAgICBpZiAodHlwZW9mIHN1Y2Nlc3NNZXNzYWdlc1ZhbCA9PT0gJ3N0cmluZycpXG4gICAgICBzdWNjZXNzTWVzc2FnZXNWYWwgPSBbc3VjY2Vzc01lc3NhZ2VzVmFsXTtcblxuICAgIHJldHVybiBzdWNjZXNzTWVzc2FnZXNWYWwuZmlsdGVyKGl0ZW0gPT4gISFpdGVtKTtcbiAgfSk7XG5cbiAgY29uc3QgaGFzRXJyb3IgPSBjb21wdXRlZCgoKSA9PiBnZXQoZm9ybWF0dGVkRXJyb3JNZXNzYWdlcykubGVuZ3RoID4gMCk7XG5cbiAgY29uc3QgaGFzU3VjY2VzcyA9IGNvbXB1dGVkKCgpID0+IGdldChmb3JtYXR0ZWRTdWNjZXNzTWVzc2FnZXMpLmxlbmd0aCA+IDApO1xuICBjb25zdCBoYXNNZXNzYWdlcyA9IGxvZ2ljT3IoaGFzRXJyb3IsIGhhc1N1Y2Nlc3MpO1xuXG4gIHJldHVybiB7XG4gICAgZm9ybWF0dGVkRXJyb3JNZXNzYWdlcyxcbiAgICBmb3JtYXR0ZWRTdWNjZXNzTWVzc2FnZXMsXG4gICAgaGFzRXJyb3IsXG4gICAgaGFzTWVzc2FnZXMsXG4gICAgaGFzU3VjY2VzcyxcbiAgfTtcbn1cbiIsImltcG9ydCB0eXBlIHsgU2V0dXBDb250ZXh0IH0gZnJvbSAndnVlJztcbmltcG9ydCB7IG9iamVjdE9taXQsIG9iamVjdFBpY2sgfSBmcm9tICdAdnVldXNlL3NoYXJlZCc7XG5pbXBvcnQgeyBjYW1lbENhc2UsIHNuYWtlQ2FzZSB9IGZyb20gJ3NjdWxlJztcblxuaW50ZXJmYWNlIEN1cnJlbmN5T3B0aW9ucyB7XG4gIGN1cnJlbmN5Pzogc3RyaW5nO1xuICBsb2NhbGU/OiBzdHJpbmc7XG4gIHN0eWxlPzogSW50bC5OdW1iZXJGb3JtYXRPcHRpb25zU3R5bGU7XG4gIGZyYWN0aW9uRGlnaXRzPzogbnVtYmVyO1xufVxuXG50eXBlIFNldHVwQ29udGV4dEF0dHJzID0gU2V0dXBDb250ZXh0WydhdHRycyddO1xuXG50eXBlIFNldHVwQ29udGV4dEF0dHJzS2V5cyA9IChrZXlvZiBTZXR1cENvbnRleHRBdHRycylbXTtcblxuLyoqXG4gKiBGb3JtYXQgbnVtYmVyIHZhbHVlIHRvIHNwZWNpZmllZCBjdXJyZW5jeSBmb3JtYXRcbiAqIEBwYXJhbSB7bnVtYmVyfSBhbW91bnRcbiAqIEBwYXJhbSB7Q3VycmVuY3lPcHRpb25zfSBvcHRpb25zXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBmb3JtYXRDdXJyZW5jeShhbW91bnQ6IG51bWJlciB8IHN0cmluZywge1xuICBjdXJyZW5jeSA9ICdFVVInLFxuICBmcmFjdGlvbkRpZ2l0cyA9IDIsXG4gIGxvY2FsZSA9ICdkZS1EZScsXG4gIHN0eWxlID0gJ2N1cnJlbmN5Jyxcbn06IEN1cnJlbmN5T3B0aW9ucykge1xuICByZXR1cm4gbmV3IEludGwuTnVtYmVyRm9ybWF0KGxvY2FsZSwge1xuICAgIGN1cnJlbmN5LFxuICAgIG1heGltdW1GcmFjdGlvbkRpZ2l0czogZnJhY3Rpb25EaWdpdHMsXG4gICAgbWluaW11bUZyYWN0aW9uRGlnaXRzOiBmcmFjdGlvbkRpZ2l0cyxcbiAgICBzdHlsZSxcbiAgfSkuZm9ybWF0KE51bWJlcihhbW91bnQpKTtcbn1cblxuLyoqXG4gKiBGb3JtYXQgbnVtYmVyIHZhbHVlXG4gKiBAcGFyYW0ge251bWJlcn0gYW1vdW50XG4gKiBAcGFyYW0ge0N1cnJlbmN5T3B0aW9uc30gb3B0aW9uc1xuICovXG5leHBvcnQgZnVuY3Rpb24gZm9ybWF0TnVtYmVyKGFtb3VudDogbnVtYmVyIHwgc3RyaW5nLCB7IGZyYWN0aW9uRGlnaXRzID0gMiB9OiBDdXJyZW5jeU9wdGlvbnMpIHtcbiAgcmV0dXJuIG5ldyBJbnRsLk51bWJlckZvcm1hdCh1bmRlZmluZWQsIHtcbiAgICBtYXhpbXVtRnJhY3Rpb25EaWdpdHM6IGZyYWN0aW9uRGlnaXRzLFxuICAgIG1pbmltdW1GcmFjdGlvbkRpZ2l0czogZnJhY3Rpb25EaWdpdHMsXG4gIH0pLmZvcm1hdChOdW1iZXIoYW1vdW50KSk7XG59XG5cbi8qKlxuICogRm9ybWF0IG51bWJlciB2YWx1ZSB3aXRob3V0IGZyYWN0aW9uXG4gKiBAcGFyYW0ge251bWJlcn0gYW1vdW50XG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBmb3JtYXRJbnRlZ2VyKGFtb3VudDogbnVtYmVyIHwgc3RyaW5nKSB7XG4gIHJldHVybiBmb3JtYXROdW1iZXIoYW1vdW50LCB7IGZyYWN0aW9uRGlnaXRzOiAwIH0pO1xufVxuXG4vKipcbiAqIEdlbmVyYXRlcyBhbmQgcmV0dXJucyB0aGUgYXJyYXkgb2Ygcm9vdCBhbGxvd2VkIGF0dHJpYnV0ZXNcbiAqIEBwYXJhbSB7U2V0dXBDb250ZXh0QXR0cnN9IGRhdGFcbiAqIEByZXR1cm5zIHtTZXR1cENvbnRleHRBdHRyc0tleXN9XG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBnZXRSb290S2V5cyhkYXRhOiBTZXR1cENvbnRleHRBdHRycykge1xuICByZXR1cm4gT2JqZWN0LmtleXMoZGF0YSkuZmlsdGVyKGtleSA9PlxuICAgIGtleS5zdGFydHNXaXRoKCdkYXRhLScpLFxuICApIGFzIFNldHVwQ29udGV4dEF0dHJzS2V5cztcbn1cblxuLyoqXG4gKiBQaWNrcyBvbmx5IHJlcXVpcmVkIGF0dHJpYnV0ZXMgZm9yIHJvb3QgZWxlbWVudFxuICogQHBhcmFtIHtTZXR1cENvbnRleHRBdHRyc30gZGF0YVxuICogQHBhcmFtIHtTZXR1cENvbnRleHRBdHRyc0tleXN9IGluY2x1ZGVcbiAqIEByZXR1cm5zIHtQaWNrPFNldHVwQ29udGV4dEF0dHJzLCBhbnk+fVxuICovXG5leHBvcnQgZnVuY3Rpb24gZ2V0Um9vdEF0dHJzKGRhdGE6IFNldHVwQ29udGV4dEF0dHJzLCBpbmNsdWRlOiBTZXR1cENvbnRleHRBdHRyc0tleXMgPSBbJ2NsYXNzJ10pIHtcbiAgcmV0dXJuIG9iamVjdFBpY2soZGF0YSwgWy4uLmdldFJvb3RLZXlzKGRhdGEpLCAuLi5pbmNsdWRlXSk7XG59XG5cbi8qKlxuICogT21pdHMgcm9vdCBhdHRyaWJ1dGVzIGZyb20gY29tcG9uZW50J3MgYXR0cmlidXRlc1xuICogQHBhcmFtIHtTZXR1cENvbnRleHRBdHRyc30gZGF0YVxuICogQHBhcmFtIHtTZXR1cENvbnRleHRBdHRyc0tleXN9IGV4Y2x1ZGVcbiAqIEByZXR1cm5zIHtPbWl0PFNldHVwQ29udGV4dEF0dHJzLCBhbnk+fVxuICovXG5leHBvcnQgZnVuY3Rpb24gZ2V0Tm9uUm9vdEF0dHJzKGRhdGE6IFNldHVwQ29udGV4dEF0dHJzLCBleGNsdWRlOiBTZXR1cENvbnRleHRBdHRyc0tleXMgPSBbJ2NsYXNzJ10pIHtcbiAgcmV0dXJuIG9iamVjdE9taXQoZGF0YSwgWy4uLmdldFJvb3RLZXlzKGRhdGEpLCAuLi5leGNsdWRlXSk7XG59XG5cbi8qKlxuICogVHJhbnNmb3JtcyB0aGUga2V5cyBvZiBhbiBvYmplY3QgdG8gZWl0aGVyIGNhbWVsQ2FzZSBvciBzbmFrZV9jYXNlXG4gKiBAcGFyYW0ge1R9IGl0ZW1cbiAqIEBwYXJhbSB7XCJjYW1lbENhc2VcIiB8IFwic25ha2VfY2FzZVwifSB0b1xuICogQHJldHVybnMge1JlY29yZDxzdHJpbmcsIGFueT59XG4gKi9cbmV4cG9ydCBmdW5jdGlvbiB0cmFuc2Zvcm1DYXNlPFQgZXh0ZW5kcyBvYmplY3Q+KGl0ZW06IFQsIHRvOiAnY2FtZWxDYXNlJyB8ICdzbmFrZV9jYXNlJykge1xuICBpZiAoIWl0ZW0pXG4gICAgcmV0dXJuIGl0ZW07XG5cbiAgcmV0dXJuIE9iamVjdC5rZXlzKGl0ZW0pLnJlZHVjZSgoYWNjLCBjdXJyKSA9PiB7XG4gICAgaWYgKHRvID09PSAnY2FtZWxDYXNlJylcbiAgICAgIGFjY1tjYW1lbENhc2UoY3VycildID0gaXRlbVtjdXJyIGFzIGtleW9mIFRdO1xuICAgIGVsc2VcbiAgICAgIGFjY1tzbmFrZUNhc2UoY3VycildID0gaXRlbVtjdXJyIGFzIGtleW9mIFRdO1xuXG4gICAgcmV0dXJuIGFjYztcbiAgfSwge30gYXMgUmVjb3JkPHN0cmluZywgYW55Pik7XG59XG5cbi8qKlxuICpcbiAqIEBwYXJhbSB7c3RyaW5nfSBzdHJpbmcgLSBTdHJpbmcgdG8gY29udmVydFxuICogQHJldHVybiB7c3RyaW5nfSAtIFN0cmluZyBjb252ZXJ0ZWQgdG8gdGV4dCB0b2tlbiwgbW9zdGx5IHVzZWQgdG8gbWF0Y2hpbmcga2V5d29yZFxuICogQGV4YW1wbGVcbiAqIGdldFRleHRUb2tlbigndGhpcyBpcyBhIHNlbnRlbmNlJyk7IC8vIHRoaXNpc2FzZW50ZW5jZVxuICovXG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRUZXh0VG9rZW4oc3RyaW5nOiBhbnkpOiBzdHJpbmcge1xuICBpZiAoIXN0cmluZylcbiAgICByZXR1cm4gJyc7XG5cbiAgcmV0dXJuIHN0cmluZy50b1N0cmluZygpLnRvTG93ZXJDYXNlKCkucmVwbGFjZSgvW15cXGRhLXpdL2dpLCAnJyk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiB0cmFuc2Zvcm1Qcm9wc1VuaXQodmFsdWU/OiBzdHJpbmcgfCBudW1iZXIpOiBzdHJpbmcgfCB1bmRlZmluZWQge1xuICBpZiAodmFsdWUgPT09IHVuZGVmaW5lZCB8fCAodHlwZW9mIHZhbHVlID09PSAnc3RyaW5nJyAmJiBpc05hTihOdW1iZXIodmFsdWUpKSkpXG4gICAgcmV0dXJuIHZhbHVlO1xuICByZXR1cm4gYCR7dmFsdWV9cHhgO1xufVxuIiwiZXhwb3J0IGZ1bmN0aW9uIGlzRXF1YWwodmFsdWU6IGFueSwgb3RoZXI6IGFueSkge1xuICAvLyBDaGVjayBpZiB0aGUgdmFsdWVzIGFyZSBpZGVudGljYWwgKGNvdmVycyBwcmltaXRpdmVzIGFuZCBmdW5jdGlvbnMpXG4gIGlmICh2YWx1ZSA9PT0gb3RoZXIpXG4gICAgcmV0dXJuIHRydWU7XG5cbiAgLy8gQ2hlY2sgaWYgdGhlIHZhbHVlcyBhcmUgbnVsbCBvciB1bmRlZmluZWRcbiAgaWYgKHZhbHVlID09IG51bGwgfHwgb3RoZXIgPT0gbnVsbClcbiAgICByZXR1cm4gdmFsdWUgPT09IG90aGVyO1xuXG4gIC8vIENoZWNrIGlmIHRoZSB2YWx1ZXMgYXJlIG9mIGRpZmZlcmVudCB0eXBlc1xuICBpZiAodHlwZW9mIHZhbHVlICE9PSB0eXBlb2Ygb3RoZXIpXG4gICAgcmV0dXJuIGZhbHNlO1xuXG4gIC8vIENvbXBhcmUgYXJyYXlzXG4gIGlmIChBcnJheS5pc0FycmF5KHZhbHVlKSkge1xuICAgIGlmICghQXJyYXkuaXNBcnJheShvdGhlcikgfHwgdmFsdWUubGVuZ3RoICE9PSBvdGhlci5sZW5ndGgpXG4gICAgICByZXR1cm4gZmFsc2U7XG5cbiAgICBmb3IgKGNvbnN0IFtpLCBlbGVtZW50XSBvZiB2YWx1ZS5lbnRyaWVzKCkpIHtcbiAgICAgIGlmICghaXNFcXVhbChlbGVtZW50LCBvdGhlcltpXSkpXG4gICAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG4gICAgcmV0dXJuIHRydWU7XG4gIH1cblxuICAvLyBDb21wYXJlIG9iamVjdHNcbiAgaWYgKHR5cGVvZiB2YWx1ZSA9PT0gJ29iamVjdCcpIHtcbiAgICBjb25zdCB2YWx1ZUtleXMgPSBPYmplY3Qua2V5cyh2YWx1ZSk7XG4gICAgY29uc3Qgb3RoZXJLZXlzID0gT2JqZWN0LmtleXMob3RoZXIpO1xuXG4gICAgaWYgKHZhbHVlS2V5cy5sZW5ndGggIT09IG90aGVyS2V5cy5sZW5ndGgpXG4gICAgICByZXR1cm4gZmFsc2U7XG5cbiAgICBmb3IgKGNvbnN0IGtleSBvZiB2YWx1ZUtleXMpIHtcbiAgICAgIGlmICghaXNFcXVhbCh2YWx1ZVtrZXldLCBvdGhlcltrZXldKSlcbiAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cbiAgICByZXR1cm4gdHJ1ZTtcbiAgfVxuXG4gIC8vIElmIHRoZSB2YWx1ZXMgYXJlIG5laXRoZXIgcHJpbWl0aXZlcywgYXJyYXlzLCBub3Igb2JqZWN0cywgcmV0dXJuIGZhbHNlXG4gIHJldHVybiBmYWxzZTtcbn1cbiIsImV4cG9ydCBjb25zdCB1c2VHbG9iYWxJZCA9IGNyZWF0ZUdsb2JhbFN0YXRlKCgpID0+IHtcbiAgY29uc3QgY291bnQgPSByZWYoMCk7XG5cbiAgY29uc3QgbmV4dElkID0gKCkgPT4ge1xuICAgIGNvbnN0IGNvdW50VmFsID0gZ2V0KGNvdW50KSArIDE7XG4gICAgc2V0KGNvdW50LCBjb3VudFZhbCk7XG5cbiAgICByZXR1cm4gY291bnRWYWw7XG4gIH07XG5cbiAgcmV0dXJuIHsgY291bnQsIG5leHRJZCB9O1xufSk7XG5cbmV4cG9ydCBmdW5jdGlvbiBnZW5lcmF0ZUlkKHByZWZpeCA9ICcnKSB7XG4gIGNvbnN0IHsgbmV4dElkIH0gPSB1c2VHbG9iYWxJZCgpO1xuXG4gIHJldHVybiBgJHtwcmVmaXh9LSR7bmV4dElkKCl9YDtcbn1cbiIsIi8vIFNvdXJjZTogaHR0cHM6Ly9naXRodWIuY29tL2V0aGVyZXVtL2Jsb2NraWVzXG4vLyBUaGUgcmFuZG9tIG51bWJlciBpcyBhIGpzIGltcGxlbWVudGF0aW9uIG9mIHRoZSBYb3JzaGlmdCBQUk5HXG5pbnRlcmZhY2UgQmxvY2tpZU9wdGlvbnMge1xuICAvKiogc2VlZCB1c2VkIHRvIGdlbmVyYXRlIGljb24gZGF0YSwgZGVmYXVsdDogcmFuZG9tICovXG4gIHNlZWQ6IHN0cmluZztcbiAgLyoqIHRvIG1hbnVhbGx5IHNwZWNpZnkgdGhlIGljb24gY29sb3IsIGRlZmF1bHQ6IHJhbmRvbSAqL1xuICBjb2xvcjogc3RyaW5nO1xuICAvKiogY2hvb3NlIGEgZGlmZmVyZW50IGJhY2tncm91bmQgY29sb3IsIGRlZmF1bHQ6IHJhbmRvbSAqL1xuICBiZ2NvbG9yOiBzdHJpbmc7XG4gIC8qKiB3aWR0aC9oZWlnaHQgb2YgdGhlIGljb24gaW4gYmxvY2tzLCBkZWZhdWx0OiA4ICovXG4gIHNpemU6IG51bWJlcjtcbiAgLyoqIHdpZHRoL2hlaWdodCBvZiBlYWNoIGJsb2NrIGluIHBpeGVscywgZGVmYXVsdDogNCAqL1xuICBzY2FsZTogbnVtYmVyO1xuICAvKipcbiAgICogZWFjaCBwaXhlbCBoYXMgYSAxMyUgY2hhbmNlIG9mIGJlaW5nIG9mIGEgdGhpcmQgY29sb3IsIGRlZmF1bHQ6IHJhbmRvbS5cbiAgICpcbiAgICogU2V0IHRvIC0xIHRvIGRpc2FibGUgaXQuXG4gICAqXG4gICAqIFRoZXNlIFwic3BvdHNcIiBjcmVhdGUgc3RydWN0dXJlcyB0aGF0IGxvb2sgbGlrZSBleWVzLCBtb3V0aHMgYW5kIG5vc2VzLlxuICAgKi9cbiAgc3BvdENvbG9yOiBzdHJpbmc7XG59XG5cbmNvbnN0IHJhbmRTZWVkID0gbmV3IEFycmF5KDQpOyAvLyBYb3JzaGlmdDogW3gsIHksIHosIHddIDMyIGJpdCB2YWx1ZXNcblxuZnVuY3Rpb24gc2VlZFJhbmQoc2VlZDogc3RyaW5nKTogdm9pZCB7XG4gIGZvciAobGV0IGkgPSAwOyBpIDwgcmFuZFNlZWQubGVuZ3RoOyBpKyspIHJhbmRTZWVkW2ldID0gMDtcblxuICBmb3IgKGxldCBpID0gMDsgaSA8IHNlZWQubGVuZ3RoOyBpKyspXG4gICAgcmFuZFNlZWRbaSAlIDRdID0gKHJhbmRTZWVkW2kgJSA0XSA8PCA1KSAtIHJhbmRTZWVkW2kgJSA0XSArIHNlZWQuY2hhckNvZGVBdChpKTtcbn1cblxuZnVuY3Rpb24gcmFuZCgpOiBudW1iZXIge1xuICAvLyBiYXNlZCBvbiBKYXZhJ3MgU3RyaW5nLmhhc2hDb2RlKCksIGV4cGFuZGVkIHRvIDQgMzJiaXQgdmFsdWVzXG4gIGNvbnN0IHQgPSByYW5kU2VlZFswXSBeIChyYW5kU2VlZFswXSA8PCAxMSk7XG5cbiAgcmFuZFNlZWRbMF0gPSByYW5kU2VlZFsxXTtcbiAgcmFuZFNlZWRbMV0gPSByYW5kU2VlZFsyXTtcbiAgcmFuZFNlZWRbMl0gPSByYW5kU2VlZFszXTtcbiAgcmFuZFNlZWRbM10gPSByYW5kU2VlZFszXSBeIChyYW5kU2VlZFszXSA+PiAxOSkgXiB0IF4gKHQgPj4gOCk7XG5cbiAgcmV0dXJuIChyYW5kU2VlZFszXSA+Pj4gMCkgLyAoKDEgPDwgMzEpID4+PiAwKTtcbn1cblxuZnVuY3Rpb24gY3JlYXRlQ29sb3IoKTogc3RyaW5nIHtcbiAgLy8gc2F0dXJhdGlvbiBpcyB0aGUgd2hvbGUgY29sb3Igc3BlY3RydW1cbiAgY29uc3QgaCA9IE1hdGguZmxvb3IocmFuZCgpICogMzYwKTtcbiAgLy8gc2F0dXJhdGlvbiBnb2VzIGZyb20gNDAgdG8gMTAwLCBpdCBhdm9pZHMgZ3JleWlzaCBjb2xvcnNcbiAgY29uc3QgcyA9IGAke3JhbmQoKSAqIDYwICsgNDB9JWA7XG4gIC8vIGxpZ2h0bmVzcyBjYW4gYmUgYW55dGhpbmcgZnJvbSAwIHRvIDEwMCwgYnV0IHByb2JhYmlsaXRpZXMgYXJlIGEgYmVsbCBjdXJ2ZSBhcm91bmQgNTAlXG4gIGNvbnN0IGwgPSBgJHsocmFuZCgpICsgcmFuZCgpICsgcmFuZCgpICsgcmFuZCgpKSAqIDI1fSVgO1xuXG4gIHJldHVybiBgaHNsKCR7aH0sJHtzfSwke2x9KWA7XG59XG5cbmZ1bmN0aW9uIGNyZWF0ZUltYWdlRGF0YShzaXplOiBudW1iZXIpOiBudW1iZXJbXSB7XG4gIGNvbnN0IHdpZHRoID0gc2l6ZTsgLy8gT25seSBzdXBwb3J0IHNxdWFyZSBpY29ucyBmb3Igbm93XG4gIGNvbnN0IGhlaWdodCA9IHNpemU7XG5cbiAgY29uc3QgZGF0YVdpZHRoID0gTWF0aC5jZWlsKHdpZHRoIC8gMik7XG4gIGNvbnN0IG1pcnJvcldpZHRoID0gd2lkdGggLSBkYXRhV2lkdGg7XG5cbiAgY29uc3QgZGF0YSA9IFtdO1xuICBmb3IgKGxldCB5ID0gMDsgeSA8IGhlaWdodDsgeSsrKSB7XG4gICAgbGV0IHJvdyA9IFtdO1xuICAgIGZvciAobGV0IHggPSAwOyB4IDwgZGF0YVdpZHRoOyB4KyspIHtcbiAgICAgIC8vIHRoaXMgbWFrZXMgZm9yZWdyb3VuZCBhbmQgYmFja2dyb3VuZCBjb2xvciB0byBoYXZlIGEgNDMlICgxLzIuMykgcHJvYmFiaWxpdHlcbiAgICAgIC8vIHNwb3QgY29sb3IgaGFzIDEzJSBjaGFuY2VcbiAgICAgIHJvd1t4XSA9IE1hdGguZmxvb3IocmFuZCgpICogMi4zKTtcbiAgICB9XG4gICAgY29uc3QgciA9IHJvdy5zbGljZSgwLCBtaXJyb3JXaWR0aCk7XG4gICAgci5yZXZlcnNlKCk7XG4gICAgcm93ID0gcm93LmNvbmNhdChyKTtcblxuICAgIGZvciAoY29uc3QgZWxlbWVudCBvZiByb3cpIGRhdGEucHVzaChlbGVtZW50KTtcbiAgfVxuXG4gIHJldHVybiBkYXRhO1xufVxuXG5mdW5jdGlvbiBidWlsZE9wdHMob3B0czogUGFydGlhbDxCbG9ja2llT3B0aW9ucz4pOiBCbG9ja2llT3B0aW9ucyB7XG4gIGNvbnN0IG5ld09wdHM6IFBhcnRpYWw8QmxvY2tpZU9wdGlvbnM+ID0ge307XG5cbiAgbmV3T3B0cy5zZWVkID0gb3B0cy5zZWVkIHx8IE1hdGguZmxvb3IoTWF0aC5yYW5kb20oKSAqIDEwICoqIDE2KS50b1N0cmluZygxNik7XG5cbiAgc2VlZFJhbmQobmV3T3B0cy5zZWVkKTtcblxuICBuZXdPcHRzLnNpemUgPSBvcHRzLnNpemUgfHwgODtcbiAgbmV3T3B0cy5zY2FsZSA9IG9wdHMuc2NhbGUgfHwgODtcbiAgbmV3T3B0cy5jb2xvciA9IG9wdHMuY29sb3IgfHwgY3JlYXRlQ29sb3IoKTtcbiAgbmV3T3B0cy5iZ2NvbG9yID0gb3B0cy5iZ2NvbG9yIHx8IGNyZWF0ZUNvbG9yKCk7XG4gIG5ld09wdHMuc3BvdENvbG9yID0gb3B0cy5zcG90Q29sb3IgfHwgY3JlYXRlQ29sb3IoKTtcblxuICByZXR1cm4gbmV3T3B0cyBhcyBCbG9ja2llT3B0aW9ucztcbn1cblxuZnVuY3Rpb24gcmVuZGVySWNvbihvcHRzOiBQYXJ0aWFsPEJsb2NraWVPcHRpb25zPiwgY2FudmFzOiBIVE1MQ2FudmFzRWxlbWVudCk6IEhUTUxDYW52YXNFbGVtZW50IHtcbiAgY29uc3QgbmV3T3B0czogQmxvY2tpZU9wdGlvbnMgPSBidWlsZE9wdHMob3B0cyB8fCB7fSk7XG4gIGNvbnN0IGltYWdlRGF0YSA9IGNyZWF0ZUltYWdlRGF0YShuZXdPcHRzLnNpemUpO1xuICBjb25zdCB3aWR0aCA9IE1hdGguc3FydChpbWFnZURhdGEubGVuZ3RoKTtcblxuICBjYW52YXMud2lkdGggPSBjYW52YXMuaGVpZ2h0ID0gbmV3T3B0cy5zaXplICogbmV3T3B0cy5zY2FsZTtcblxuICBjb25zdCBjYyA9IGNhbnZhcy5nZXRDb250ZXh0KCcyZCcpIGFzIENhbnZhc1JlbmRlcmluZ0NvbnRleHQyRDtcbiAgaWYgKGNjKSB7XG4gICAgY2MuZmlsbFN0eWxlID0gbmV3T3B0cy5iZ2NvbG9yO1xuICAgIGNjLmZpbGxSZWN0KDAsIDAsIGNhbnZhcy53aWR0aCwgY2FudmFzLmhlaWdodCk7XG4gICAgY2MuZmlsbFN0eWxlID0gbmV3T3B0cy5jb2xvcjtcblxuICAgIGZvciAoY29uc3QgW2ksIGltYWdlRGF0dW1dIG9mIGltYWdlRGF0YS5lbnRyaWVzKCkpIHtcbiAgICAgIC8vIGlmIGRhdGEgaXMgMCwgbGVhdmUgdGhlIGJhY2tncm91bmRcbiAgICAgIGlmIChpbWFnZURhdHVtKSB7XG4gICAgICAgIGNvbnN0IHJvdyA9IE1hdGguZmxvb3IoaSAvIHdpZHRoKTtcbiAgICAgICAgY29uc3QgY29sID0gaSAlIHdpZHRoO1xuXG4gICAgICAgIC8vIGlmIGRhdGEgaXMgMiwgY2hvb3NlIHNwb3QgY29sb3IsIGlmIDEgY2hvb3NlIGZvcmVncm91bmRcbiAgICAgICAgY2MuZmlsbFN0eWxlID0gaW1hZ2VEYXR1bSA9PT0gMSA/IG5ld09wdHMuY29sb3IgOiBuZXdPcHRzLnNwb3RDb2xvcjtcblxuICAgICAgICBjYy5maWxsUmVjdChjb2wgKiBuZXdPcHRzLnNjYWxlLCByb3cgKiBuZXdPcHRzLnNjYWxlLCBuZXdPcHRzLnNjYWxlLCBuZXdPcHRzLnNjYWxlKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICByZXR1cm4gY2FudmFzO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gY3JlYXRlQmxvY2tpZShvcHRzOiBQYXJ0aWFsPEJsb2NraWVPcHRpb25zPik6IHN0cmluZyB7XG4gIGNvbnN0IGNhbnZhcyA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2NhbnZhcycpO1xuXG4gIHJlbmRlckljb24ob3B0cywgY2FudmFzKTtcblxuICByZXR1cm4gY2FudmFzLnRvRGF0YVVSTCgnaW1hZ2UvanBlZycpO1xufVxuIl0sIm5hbWVzIjpbIkFzc2VydGlvbkVycm9yIiwibXNnIiwiYXNzZXJ0IiwiY29uZGl0aW9uIiwidXNlRm9ybVRleHREZXRhaWwiLCJlcnJvck1lc3NhZ2VzIiwic3VjY2Vzc01lc3NhZ2VzIiwiZm9ybWF0dGVkRXJyb3JNZXNzYWdlcyIsImNvbXB1dGVkIiwiZXJyb3JNZXNzYWdlc1ZhbCIsImdldCIsIml0ZW0iLCJmb3JtYXR0ZWRTdWNjZXNzTWVzc2FnZXMiLCJzdWNjZXNzTWVzc2FnZXNWYWwiLCJoYXNFcnJvciIsImhhc1N1Y2Nlc3MiLCJoYXNNZXNzYWdlcyIsImxvZ2ljT3IiLCJmb3JtYXROdW1iZXIiLCJhbW91bnQiLCJmcmFjdGlvbkRpZ2l0cyIsImZvcm1hdEludGVnZXIiLCJnZXRSb290S2V5cyIsImRhdGEiLCJrZXkiLCJnZXRSb290QXR0cnMiLCJpbmNsdWRlIiwib2JqZWN0UGljayIsImdldE5vblJvb3RBdHRycyIsImV4Y2x1ZGUiLCJvYmplY3RPbWl0IiwidHJhbnNmb3JtQ2FzZSIsInRvIiwiYWNjIiwiY3VyciIsImNhbWVsQ2FzZSIsImdldFRleHRUb2tlbiIsInN0cmluZyIsInRyYW5zZm9ybVByb3BzVW5pdCIsInZhbHVlIiwiaXNFcXVhbCIsIm90aGVyIiwiaSIsImVsZW1lbnQiLCJ2YWx1ZUtleXMiLCJvdGhlcktleXMiLCJ1c2VHbG9iYWxJZCIsImNyZWF0ZUdsb2JhbFN0YXRlIiwiY291bnQiLCJyZWYiLCJjb3VudFZhbCIsInNldCIsImdlbmVyYXRlSWQiLCJwcmVmaXgiLCJuZXh0SWQiLCJyYW5kU2VlZCIsInNlZWRSYW5kIiwic2VlZCIsInJhbmQiLCJjcmVhdGVDb2xvciIsImgiLCJzIiwibCIsImNyZWF0ZUltYWdlRGF0YSIsInNpemUiLCJ3aWR0aCIsImhlaWdodCIsImRhdGFXaWR0aCIsIm1pcnJvcldpZHRoIiwieSIsInJvdyIsIngiLCJyIiwiYnVpbGRPcHRzIiwib3B0cyIsIm5ld09wdHMiLCJyZW5kZXJJY29uIiwiY2FudmFzIiwiaW1hZ2VEYXRhIiwiY2MiLCJpbWFnZURhdHVtIiwiY29sIiwiY3JlYXRlQmxvY2tpZSJdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSxNQUFNQSxVQUF1QixNQUFNO0FBQUEsRUFDakMsWUFBWUMsR0FBYztBQUN4QixVQUFNQSxLQUFPLGdCQUFnQixHQUM3QixLQUFLLE9BQU87QUFBQSxFQUNkO0FBQ0Y7QUFFTyxTQUFTQyxFQUFPQyxHQUFnQkYsR0FBaUM7QUFDdEUsTUFBSSxDQUFDRTtBQUNILFVBQU0sSUFBSUgsRUFBZUMsQ0FBRztBQUNoQztBQ1BPLFNBQVNHLEVBQWtCQyxHQUE0Q0MsR0FBOEM7QUFDMUgsUUFBTUMsSUFBeUJDLEVBQVMsTUFBTTtBQUM1QyxRQUFJQyxJQUFtQkMsRUFBSUwsQ0FBYTtBQUN4QyxXQUFJLE9BQU9JLEtBQXFCLGFBQzlCQSxJQUFtQixDQUFDQSxDQUFnQixJQUUvQkEsRUFBaUIsT0FBTyxDQUFBRSxNQUFRLENBQUMsQ0FBQ0EsQ0FBSTtBQUFBLEVBQy9DLENBQUMsR0FFS0MsSUFBMkJKLEVBQVMsTUFBTTtBQUM5QyxRQUFJSyxJQUFxQkgsRUFBSUosQ0FBZTtBQUM1QyxXQUFJLE9BQU9PLEtBQXVCLGFBQ2hDQSxJQUFxQixDQUFDQSxDQUFrQixJQUVuQ0EsRUFBbUIsT0FBTyxDQUFBRixNQUFRLENBQUMsQ0FBQ0EsQ0FBSTtBQUFBLEVBQ2pELENBQUMsR0FFS0csSUFBV04sRUFBUyxNQUFNRSxFQUFJSCxDQUFzQixFQUFFLFNBQVMsQ0FBQyxHQUVoRVEsSUFBYVAs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