@salutejs/plasma-new-hope 0.149.0-canary.1445.10942800137.0 → 0.149.0-dev.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (218) hide show
  1. package/cjs/components/Chip/Chip.js +1 -1
  2. package/cjs/components/Chip/Chip.js.map +1 -1
  3. package/cjs/components/Chip/Chip.tokens.js +1 -2
  4. package/cjs/components/Chip/Chip.tokens.js.map +1 -1
  5. package/cjs/components/Mask/Mask.js +45 -0
  6. package/cjs/components/Mask/Mask.js.map +1 -0
  7. package/cjs/components/TextField/TextField.js +3 -1
  8. package/cjs/components/TextField/TextField.js.map +1 -1
  9. package/cjs/index.css +0 -8
  10. package/cjs/index.js +2 -7
  11. package/cjs/index.js.map +1 -1
  12. package/emotion/cjs/components/Chip/Chip.js +1 -1
  13. package/emotion/cjs/components/Chip/Chip.tokens.js +1 -2
  14. package/emotion/cjs/components/Chip/index.js +0 -6
  15. package/emotion/cjs/components/Mask/Mask.js +55 -0
  16. package/emotion/cjs/components/Mask/Mask.template-doc.mdx +125 -0
  17. package/emotion/cjs/components/Mask/index.js +12 -0
  18. package/emotion/cjs/components/TextField/TextField.js +4 -2
  19. package/emotion/cjs/examples/plasma_b2c/components/Mask/Mask.js +9 -0
  20. package/emotion/cjs/examples/plasma_b2c/components/Mask/Mask.stories.tsx +127 -0
  21. package/emotion/cjs/examples/plasma_web/components/Mask/Mask.js +9 -0
  22. package/emotion/cjs/examples/plasma_web/components/Mask/Mask.stories.tsx +125 -0
  23. package/emotion/cjs/index.js +11 -11
  24. package/emotion/es/components/Chip/Chip.js +1 -1
  25. package/emotion/es/components/Chip/Chip.tokens.js +1 -2
  26. package/emotion/es/components/Chip/index.js +1 -1
  27. package/emotion/es/components/Mask/Mask.js +45 -0
  28. package/emotion/es/components/Mask/Mask.template-doc.mdx +125 -0
  29. package/emotion/es/components/Mask/index.js +1 -0
  30. package/emotion/es/components/TextField/TextField.js +4 -2
  31. package/emotion/es/examples/plasma_b2c/components/Mask/Mask.js +3 -0
  32. package/emotion/es/examples/plasma_b2c/components/Mask/Mask.stories.tsx +127 -0
  33. package/emotion/es/examples/plasma_web/components/Mask/Mask.js +3 -0
  34. package/emotion/es/examples/plasma_web/components/Mask/Mask.stories.tsx +125 -0
  35. package/emotion/es/index.js +2 -2
  36. package/es/components/Chip/Chip.js +1 -1
  37. package/es/components/Chip/Chip.js.map +1 -1
  38. package/es/components/Chip/Chip.tokens.js +1 -2
  39. package/es/components/Chip/Chip.tokens.js.map +1 -1
  40. package/es/components/Mask/Mask.js +41 -0
  41. package/es/components/Mask/Mask.js.map +1 -0
  42. package/es/components/TextField/TextField.js +3 -1
  43. package/es/components/TextField/TextField.js.map +1 -1
  44. package/es/index.css +0 -8
  45. package/es/index.js +2 -3
  46. package/es/index.js.map +1 -1
  47. package/package.json +4 -2
  48. package/styled-components/cjs/components/Chip/Chip.js +1 -1
  49. package/styled-components/cjs/components/Chip/Chip.tokens.js +1 -2
  50. package/styled-components/cjs/components/Chip/index.js +0 -6
  51. package/styled-components/cjs/components/Mask/Mask.js +55 -0
  52. package/styled-components/cjs/components/Mask/Mask.template-doc.mdx +125 -0
  53. package/styled-components/cjs/components/Mask/index.js +12 -0
  54. package/styled-components/cjs/components/TextField/TextField.js +3 -1
  55. package/styled-components/cjs/examples/plasma_b2c/components/Mask/Mask.js +9 -0
  56. package/styled-components/cjs/examples/plasma_b2c/components/Mask/Mask.stories.tsx +127 -0
  57. package/styled-components/cjs/examples/plasma_web/components/Mask/Mask.js +9 -0
  58. package/styled-components/cjs/examples/plasma_web/components/Mask/Mask.stories.tsx +125 -0
  59. package/styled-components/cjs/index.js +11 -11
  60. package/styled-components/es/components/Chip/Chip.js +1 -1
  61. package/styled-components/es/components/Chip/Chip.tokens.js +1 -2
  62. package/styled-components/es/components/Chip/index.js +1 -1
  63. package/styled-components/es/components/Mask/Mask.js +45 -0
  64. package/styled-components/es/components/Mask/Mask.template-doc.mdx +125 -0
  65. package/styled-components/es/components/Mask/index.js +1 -0
  66. package/styled-components/es/components/TextField/TextField.js +3 -1
  67. package/styled-components/es/examples/plasma_b2c/components/Mask/Mask.js +3 -0
  68. package/styled-components/es/examples/plasma_b2c/components/Mask/Mask.stories.tsx +127 -0
  69. package/styled-components/es/examples/plasma_web/components/Mask/Mask.js +3 -0
  70. package/styled-components/es/examples/plasma_web/components/Mask/Mask.stories.tsx +125 -0
  71. package/styled-components/es/index.js +2 -2
  72. package/types/components/Chip/Chip.tokens.d.ts +0 -1
  73. package/types/components/Chip/Chip.tokens.d.ts.map +1 -1
  74. package/types/components/Chip/index.d.ts +1 -1
  75. package/types/components/Chip/index.d.ts.map +1 -1
  76. package/types/components/Mask/Mask.d.ts +5 -0
  77. package/types/components/Mask/Mask.d.ts.map +1 -0
  78. package/types/components/Mask/Mask.types.d.ts +62 -0
  79. package/types/components/Mask/Mask.types.d.ts.map +1 -0
  80. package/types/components/Mask/index.d.ts +2 -0
  81. package/types/components/Mask/index.d.ts.map +1 -0
  82. package/types/components/TextField/TextField.d.ts.map +1 -1
  83. package/types/examples/plasma_b2c/components/Mask/Mask.d.ts +191 -0
  84. package/types/examples/plasma_b2c/components/Mask/Mask.d.ts.map +1 -0
  85. package/types/examples/plasma_web/components/Mask/Mask.d.ts +191 -0
  86. package/types/examples/plasma_web/components/Mask/Mask.d.ts.map +1 -0
  87. package/types/index.d.ts +1 -1
  88. package/types/index.d.ts.map +1 -1
  89. package/cjs/components/ChipGroup/ChipGroup.css +0 -7
  90. package/cjs/components/ChipGroup/ChipGroup.js +0 -63
  91. package/cjs/components/ChipGroup/ChipGroup.js.map +0 -1
  92. package/cjs/components/ChipGroup/ChipGroup.styles.js +0 -9
  93. package/cjs/components/ChipGroup/ChipGroup.styles.js.map +0 -1
  94. package/cjs/components/ChipGroup/ChipGroup.styles_1l3nd6v.css +0 -1
  95. package/cjs/components/ChipGroup/ChipGroup.tokens.js +0 -50
  96. package/cjs/components/ChipGroup/ChipGroup.tokens.js.map +0 -1
  97. package/cjs/components/ChipGroup/variations/_gap/base.js +0 -9
  98. package/cjs/components/ChipGroup/variations/_gap/base.js.map +0 -1
  99. package/cjs/components/ChipGroup/variations/_gap/base_vhoe9f.css +0 -1
  100. package/cjs/components/ChipGroup/variations/_size/base.js +0 -9
  101. package/cjs/components/ChipGroup/variations/_size/base.js.map +0 -1
  102. package/cjs/components/ChipGroup/variations/_size/base_eu60ye.css +0 -1
  103. package/cjs/components/ChipGroup/variations/_view/base.js +0 -9
  104. package/cjs/components/ChipGroup/variations/_view/base.js.map +0 -1
  105. package/cjs/components/ChipGroup/variations/_view/base_122089q.css +0 -1
  106. package/emotion/cjs/components/ChipGroup/ChipGroup.js +0 -65
  107. package/emotion/cjs/components/ChipGroup/ChipGroup.styles.js +0 -9
  108. package/emotion/cjs/components/ChipGroup/ChipGroup.template-doc.mdx +0 -93
  109. package/emotion/cjs/components/ChipGroup/ChipGroup.tokens.js +0 -48
  110. package/emotion/cjs/components/ChipGroup/index.js +0 -31
  111. package/emotion/cjs/components/ChipGroup/variations/_gap/base.js +0 -9
  112. package/emotion/cjs/components/ChipGroup/variations/_gap/tokens.json +0 -1
  113. package/emotion/cjs/components/ChipGroup/variations/_size/base.js +0 -10
  114. package/emotion/cjs/components/ChipGroup/variations/_size/tokens.json +0 -22
  115. package/emotion/cjs/components/ChipGroup/variations/_view/base.js +0 -10
  116. package/emotion/cjs/components/ChipGroup/variations/_view/tokens.json +0 -15
  117. package/emotion/cjs/examples/plasma_b2c/components/ChipGroup /ChipGroup.config.js +0 -33
  118. package/emotion/cjs/examples/plasma_b2c/components/ChipGroup /ChipGroup.js +0 -11
  119. package/emotion/cjs/examples/plasma_b2c/components/ChipGroup /ChipGroup.stories.tsx +0 -95
  120. package/emotion/cjs/examples/plasma_web/components/ChipGroup /ChipGroup.config.js +0 -33
  121. package/emotion/cjs/examples/plasma_web/components/ChipGroup /ChipGroup.js +0 -11
  122. package/emotion/cjs/examples/plasma_web/components/ChipGroup /ChipGroup.stories.tsx +0 -95
  123. package/emotion/es/components/ChipGroup/ChipGroup.js +0 -56
  124. package/emotion/es/components/ChipGroup/ChipGroup.styles.js +0 -3
  125. package/emotion/es/components/ChipGroup/ChipGroup.template-doc.mdx +0 -93
  126. package/emotion/es/components/ChipGroup/ChipGroup.tokens.js +0 -42
  127. package/emotion/es/components/ChipGroup/index.js +0 -2
  128. package/emotion/es/components/ChipGroup/variations/_gap/base.js +0 -3
  129. package/emotion/es/components/ChipGroup/variations/_gap/tokens.json +0 -1
  130. package/emotion/es/components/ChipGroup/variations/_size/base.js +0 -4
  131. package/emotion/es/components/ChipGroup/variations/_size/tokens.json +0 -22
  132. package/emotion/es/components/ChipGroup/variations/_view/base.js +0 -4
  133. package/emotion/es/components/ChipGroup/variations/_view/tokens.json +0 -15
  134. package/emotion/es/examples/plasma_b2c/components/ChipGroup /ChipGroup.config.js +0 -27
  135. package/emotion/es/examples/plasma_b2c/components/ChipGroup /ChipGroup.js +0 -5
  136. package/emotion/es/examples/plasma_b2c/components/ChipGroup /ChipGroup.stories.tsx +0 -95
  137. package/emotion/es/examples/plasma_web/components/ChipGroup /ChipGroup.config.js +0 -27
  138. package/emotion/es/examples/plasma_web/components/ChipGroup /ChipGroup.js +0 -5
  139. package/emotion/es/examples/plasma_web/components/ChipGroup /ChipGroup.stories.tsx +0 -95
  140. package/es/components/ChipGroup/ChipGroup.css +0 -7
  141. package/es/components/ChipGroup/ChipGroup.js +0 -58
  142. package/es/components/ChipGroup/ChipGroup.js.map +0 -1
  143. package/es/components/ChipGroup/ChipGroup.styles.js +0 -5
  144. package/es/components/ChipGroup/ChipGroup.styles.js.map +0 -1
  145. package/es/components/ChipGroup/ChipGroup.styles_1l3nd6v.css +0 -1
  146. package/es/components/ChipGroup/ChipGroup.tokens.js +0 -45
  147. package/es/components/ChipGroup/ChipGroup.tokens.js.map +0 -1
  148. package/es/components/ChipGroup/variations/_gap/base.js +0 -5
  149. package/es/components/ChipGroup/variations/_gap/base.js.map +0 -1
  150. package/es/components/ChipGroup/variations/_gap/base_vhoe9f.css +0 -1
  151. package/es/components/ChipGroup/variations/_size/base.js +0 -5
  152. package/es/components/ChipGroup/variations/_size/base.js.map +0 -1
  153. package/es/components/ChipGroup/variations/_size/base_eu60ye.css +0 -1
  154. package/es/components/ChipGroup/variations/_view/base.js +0 -5
  155. package/es/components/ChipGroup/variations/_view/base.js.map +0 -1
  156. package/es/components/ChipGroup/variations/_view/base_122089q.css +0 -1
  157. package/styled-components/cjs/components/ChipGroup/ChipGroup.js +0 -65
  158. package/styled-components/cjs/components/ChipGroup/ChipGroup.styles.js +0 -9
  159. package/styled-components/cjs/components/ChipGroup/ChipGroup.template-doc.mdx +0 -93
  160. package/styled-components/cjs/components/ChipGroup/ChipGroup.tokens.js +0 -48
  161. package/styled-components/cjs/components/ChipGroup/index.js +0 -31
  162. package/styled-components/cjs/components/ChipGroup/variations/_gap/base.js +0 -9
  163. package/styled-components/cjs/components/ChipGroup/variations/_gap/tokens.json +0 -1
  164. package/styled-components/cjs/components/ChipGroup/variations/_size/base.js +0 -10
  165. package/styled-components/cjs/components/ChipGroup/variations/_size/tokens.json +0 -22
  166. package/styled-components/cjs/components/ChipGroup/variations/_view/base.js +0 -10
  167. package/styled-components/cjs/components/ChipGroup/variations/_view/tokens.json +0 -15
  168. package/styled-components/cjs/examples/plasma_b2c/components/ChipGroup /ChipGroup.config.js +0 -33
  169. package/styled-components/cjs/examples/plasma_b2c/components/ChipGroup /ChipGroup.js +0 -11
  170. package/styled-components/cjs/examples/plasma_b2c/components/ChipGroup /ChipGroup.stories.tsx +0 -95
  171. package/styled-components/cjs/examples/plasma_web/components/ChipGroup /ChipGroup.config.js +0 -33
  172. package/styled-components/cjs/examples/plasma_web/components/ChipGroup /ChipGroup.js +0 -11
  173. package/styled-components/cjs/examples/plasma_web/components/ChipGroup /ChipGroup.stories.tsx +0 -95
  174. package/styled-components/es/components/ChipGroup/ChipGroup.js +0 -56
  175. package/styled-components/es/components/ChipGroup/ChipGroup.styles.js +0 -3
  176. package/styled-components/es/components/ChipGroup/ChipGroup.template-doc.mdx +0 -93
  177. package/styled-components/es/components/ChipGroup/ChipGroup.tokens.js +0 -42
  178. package/styled-components/es/components/ChipGroup/index.js +0 -2
  179. package/styled-components/es/components/ChipGroup/variations/_gap/base.js +0 -3
  180. package/styled-components/es/components/ChipGroup/variations/_gap/tokens.json +0 -1
  181. package/styled-components/es/components/ChipGroup/variations/_size/base.js +0 -4
  182. package/styled-components/es/components/ChipGroup/variations/_size/tokens.json +0 -22
  183. package/styled-components/es/components/ChipGroup/variations/_view/base.js +0 -4
  184. package/styled-components/es/components/ChipGroup/variations/_view/tokens.json +0 -15
  185. package/styled-components/es/examples/plasma_b2c/components/ChipGroup /ChipGroup.config.js +0 -27
  186. package/styled-components/es/examples/plasma_b2c/components/ChipGroup /ChipGroup.js +0 -5
  187. package/styled-components/es/examples/plasma_b2c/components/ChipGroup /ChipGroup.stories.tsx +0 -95
  188. package/styled-components/es/examples/plasma_web/components/ChipGroup /ChipGroup.config.js +0 -27
  189. package/styled-components/es/examples/plasma_web/components/ChipGroup /ChipGroup.js +0 -5
  190. package/styled-components/es/examples/plasma_web/components/ChipGroup /ChipGroup.stories.tsx +0 -95
  191. package/types/components/ChipGroup/ChipGroup.d.ts +0 -27
  192. package/types/components/ChipGroup/ChipGroup.d.ts.map +0 -1
  193. package/types/components/ChipGroup/ChipGroup.styles.d.ts +0 -2
  194. package/types/components/ChipGroup/ChipGroup.styles.d.ts.map +0 -1
  195. package/types/components/ChipGroup/ChipGroup.tokens.d.ts +0 -43
  196. package/types/components/ChipGroup/ChipGroup.tokens.d.ts.map +0 -1
  197. package/types/components/ChipGroup/ChipGroup.types.d.ts +0 -42
  198. package/types/components/ChipGroup/ChipGroup.types.d.ts.map +0 -1
  199. package/types/components/ChipGroup/index.d.ts +0 -3
  200. package/types/components/ChipGroup/index.d.ts.map +0 -1
  201. package/types/components/ChipGroup/variations/_gap/base.d.ts +0 -2
  202. package/types/components/ChipGroup/variations/_gap/base.d.ts.map +0 -1
  203. package/types/components/ChipGroup/variations/_size/base.d.ts +0 -2
  204. package/types/components/ChipGroup/variations/_size/base.d.ts.map +0 -1
  205. package/types/components/ChipGroup/variations/_view/base.d.ts +0 -2
  206. package/types/components/ChipGroup/variations/_view/base.d.ts.map +0 -1
  207. package/types/examples/plasma_b2c/components/ChipGroup /ChipGroup.config.d.ts +0 -24
  208. package/types/examples/plasma_b2c/components/ChipGroup /ChipGroup.config.d.ts.map +0 -1
  209. package/types/examples/plasma_b2c/components/ChipGroup /ChipGroup.d.ts +0 -19
  210. package/types/examples/plasma_b2c/components/ChipGroup /ChipGroup.d.ts.map +0 -1
  211. package/types/examples/plasma_web/components/ChipGroup /ChipGroup.config.d.ts +0 -24
  212. package/types/examples/plasma_web/components/ChipGroup /ChipGroup.config.d.ts.map +0 -1
  213. package/types/examples/plasma_web/components/ChipGroup /ChipGroup.d.ts +0 -19
  214. package/types/examples/plasma_web/components/ChipGroup /ChipGroup.d.ts.map +0 -1
  215. /package/emotion/cjs/components/{ChipGroup/ChipGroup.types.js → Mask/Mask.types.js} +0 -0
  216. /package/emotion/es/components/{ChipGroup/ChipGroup.types.js → Mask/Mask.types.js} +0 -0
  217. /package/styled-components/cjs/components/{ChipGroup/ChipGroup.types.js → Mask/Mask.types.js} +0 -0
  218. /package/styled-components/es/components/{ChipGroup/ChipGroup.types.js → Mask/Mask.types.js} +0 -0
@@ -29,7 +29,7 @@ export var base = process.env.NODE_ENV === "production" ? {
29
29
  } : {
30
30
  name: "121o0v2-plasma-new-hope__base",
31
31
  styles: "display:block;label:plasma-new-hope__base;",
32
- map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy1lbW90aW9uL2NvbXBvbmVudHMvVGV4dEZpZWxkL1RleHRGaWVsZC50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBb0N1QiIsImZpbGUiOiIuLi8uLi8uLi8uLi9zcmMtZW1vdGlvbi9jb21wb25lbnRzL1RleHRGaWVsZC9UZXh0RmllbGQudHN4Iiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0LCB7IGZvcndhcmRSZWYsIHVzZUVmZmVjdCwgdXNlUmVmLCB1c2VTdGF0ZSB9IGZyb20gJ3JlYWN0JztcbmltcG9ydCB0eXBlIHsgRm9ybUV2ZW50SGFuZGxlciwgQ2hhbmdlRXZlbnRIYW5kbGVyLCBLZXlib2FyZEV2ZW50LCBDaGFuZ2VFdmVudCB9IGZyb20gJ3JlYWN0JztcbmltcG9ydCB7IHNhZmVVc2VJZCwgdXNlRm9ya1JlZiB9IGZyb20gJ0BzYWx1dGVqcy9wbGFzbWEtY29yZSc7XG5pbXBvcnQgeyBjc3MgfSBmcm9tICdAZW1vdGlvbi9yZWFjdCc7XG5cbmltcG9ydCB0eXBlIHsgUm9vdFByb3BzIH0gZnJvbSAnLi4vLi4vZW5naW5lcyc7XG5pbXBvcnQgeyBjeCB9IGZyb20gJy4uLy4uL3V0aWxzJztcblxuaW1wb3J0IHR5cGUgeyBDaGlwVmFsdWVzLCBUZXh0RmllbGRQcmltaXRpdmVWYWx1ZSwgVGV4dEZpZWxkUHJvcHMgfSBmcm9tICcuL1RleHRGaWVsZC50eXBlcyc7XG5pbXBvcnQgeyBiYXNlIGFzIHNpemVDU1MgfSBmcm9tICcuL3ZhcmlhdGlvbnMvX3NpemUvYmFzZSc7XG5pbXBvcnQgeyBiYXNlIGFzIHZpZXdDU1MgfSBmcm9tICcuL3ZhcmlhdGlvbnMvX3ZpZXcvYmFzZSc7XG5pbXBvcnQgeyBiYXNlIGFzIGRpc2FibGVkQ1NTIH0gZnJvbSAnLi92YXJpYXRpb25zL19kaXNhYmxlZC9iYXNlJztcbmltcG9ydCB7IGJhc2UgYXMgcmVhZE9ubHlDU1MgfSBmcm9tICcuL3ZhcmlhdGlvbnMvX3JlYWQtb25seS9iYXNlJztcbmltcG9ydCB7IGJhc2UgYXMgbGFiZWxQbGFjZW1lbnRDU1MgfSBmcm9tICcuL3ZhcmlhdGlvbnMvX2xhYmVsLXBsYWNlbWVudC9iYXNlJztcbmltcG9ydCB7XG4gICAgSW5wdXQsXG4gICAgSW5wdXRDb250YWluZXIsXG4gICAgTGVmdEhlbHBlcixcbiAgICBMYWJlbCxcbiAgICBJbnB1dFdyYXBwZXIsXG4gICAgSW5wdXRMYWJlbFdyYXBwZXIsXG4gICAgU3R5bGVkQ29udGVudExlZnQsXG4gICAgU3R5bGVkQ29udGVudFJpZ2h0LFxuICAgIFN0eWxlZENoaXBzLFxuICAgIFN0eWxlZFRleHRCZWZvcmUsXG4gICAgU3R5bGVkVGV4dEFmdGVyLFxuICAgIFN0eWxlZEluZGljYXRvcixcbiAgICBTdHlsZWRPcHRpb25hbFRleHQsXG4gICAgSW5wdXRQbGFjZWhvbGRlcixcbn0gZnJvbSAnLi9UZXh0RmllbGQuc3R5bGVzJztcbmltcG9ydCB7IGNsYXNzZXMgfSBmcm9tICcuL1RleHRGaWVsZC50b2tlbnMnO1xuaW1wb3J0IHsgVGV4dEZpZWxkQ2hpcCB9IGZyb20gJy4vdWknO1xuaW1wb3J0IHsgdXNlS2V5TmF2aWdhdGlvbiB9IGZyb20gJy4vaG9va3MnO1xuXG5jb25zdCBvcHRpb25hbFRleHQgPSAnb3B0aW9uYWwnO1xuXG5leHBvcnQgY29uc3QgYmFzZSA9IGNzc2BcbiAgICAvKiBOT1RFOiBXZWJraXQg0L3QtSDQv9GA0LjQvNC10L3Rj9C10YIgb3BhY2l0eSDQuiBpbmxpbmUg0YLQtdCz0LDQvCAqL1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuYDtcblxuZXhwb3J0IGNvbnN0IHRleHRGaWVsZFJvb3QgPSAoUm9vdDogUm9vdFByb3BzPEhUTUxEaXZFbGVtZW50LCBUZXh0RmllbGRQcm9wcz4pID0+XG4gICAgZm9yd2FyZFJlZjxIVE1MSW5wdXRFbGVtZW50LCBUZXh0RmllbGRQcm9wcz4oXG4gICAgICAgIChcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBpZCxcbiAgICAgICAgICAgICAgICBjbGFzc05hbWUsXG4gICAgICAgICAgICAgICAgc3R5bGUsXG5cbiAgICAgICAgICAgICAgICAvLyBsYXlvdXRcbiAgICAgICAgICAgICAgICBjb250ZW50TGVmdCxcbiAgICAgICAgICAgICAgICBjb250ZW50UmlnaHQsXG4gICAgICAgICAgICAgICAgbGFiZWwsXG4gICAgICAgICAgICAgICAgbGFiZWxQbGFjZW1lbnQsXG4gICAgICAgICAgICAgICAgdGV4dEJlZm9yZSxcbiAgICAgICAgICAgICAgICB0ZXh0QWZ0ZXIsXG4gICAgICAgICAgICAgICAgcGxhY2Vob2xkZXIsXG4gICAgICAgICAgICAgICAgbGVmdEhlbHBlcixcbiAgICAgICAgICAgICAgICBlbnVtZXJhdGlvblR5cGUgPSAncGxhaW4nLFxuICAgICAgICAgICAgICAgIHJlcXVpcmVkUGxhY2VtZW50ID0gJ3JpZ2h0JyxcblxuICAgICAgICAgICAgICAgIC8vIHZhcmlhdGlvbnNcbiAgICAgICAgICAgICAgICB2aWV3LFxuICAgICAgICAgICAgICAgIHNpemUsXG4gICAgICAgICAgICAgICAgcmVhZE9ubHkgPSBmYWxzZSxcbiAgICAgICAgICAgICAgICBkaXNhYmxlZCA9IGZhbHNlLFxuICAgICAgICAgICAgICAgIHJlcXVpcmVkID0gZmFsc2UsXG4gICAgICAgICAgICAgICAgb3B0aW9uYWwsXG5cbiAgICAgICAgICAgICAgICAvLyBjb250cm9sbGVkXG4gICAgICAgICAgICAgICAgdmFsdWU6IG91dGVyVmFsdWUsXG4gICAgICAgICAgICAgICAgY2hpcHM6IHZhbHVlcyxcblxuICAgICAgICAgICAgICAgIC8vIGV2ZW50c1xuICAgICAgICAgICAgICAgIG9uQ2hhbmdlLFxuICAgICAgICAgICAgICAgIG9uQ2hhbmdlQ2hpcHMsXG4gICAgICAgICAgICAgICAgb25TZWFyY2gsXG4gICAgICAgICAgICAgICAgb25LZXlEb3duLFxuXG4gICAgICAgICAgICAgICAgLi4ucmVzdFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHJlZixcbiAgICAgICAgKSA9PiB7XG4gICAgICAgICAgICBjb25zdCBjb250ZW50UmVmID0gdXNlUmVmPEhUTUxEaXZFbGVtZW50PihudWxsKTtcbiAgICAgICAgICAgIGNvbnN0IGlucHV0UmVmID0gdXNlUmVmPEhUTUxJbnB1dEVsZW1lbnQ+KG51bGwpO1xuICAgICAgICAgICAgY29uc3QgaW5wdXRGb3JrUmVmID0gdXNlRm9ya1JlZihpbnB1dFJlZiwgcmVmKTtcbiAgICAgICAgICAgIGNvbnN0IGNoaXBzUmVmcyA9IHVzZVJlZjxBcnJheTxIVE1MQnV0dG9uRWxlbWVudD4+KFtdKTtcblxuICAgICAgICAgICAgY29uc3QgY29udHJvbGxlZFJlZnMgPSB7IGNvbnRlbnRSZWYsIGlucHV0UmVmLCBjaGlwc1JlZnMgfTtcblxuICAgICAgICAgICAgY29uc3QgW2hhc1ZhbHVlLCBzZXRIYXNWYWx1ZV0gPSB1c2VTdGF0ZShcbiAgICAgICAgICAgICAgICBCb29sZWFuKG91dGVyVmFsdWUpIHx8IEJvb2xlYW4oaW5wdXRSZWY/LmN1cnJlbnQ/LnZhbHVlKSB8fCBCb29sZWFuKHJlc3Q/LmRlZmF1bHRWYWx1ZSksXG4gICAgICAgICAgICApO1xuICAgICAgICAgICAgY29uc3QgW2NoaXBzLCBzZXRDaGlwc10gPSB1c2VTdGF0ZTxBcnJheTxDaGlwVmFsdWVzPj4oW10pO1xuXG4gICAgICAgICAgICBjb25zdCB1bmlxSWQgPSBzYWZlVXNlSWQoKTtcbiAgICAgICAgICAgIGNvbnN0IGlubmVySWQgPSBpZCB8fCB1bmlxSWQ7XG4gICAgICAgICAgICBjb25zdCBsYWJlbElkID0gc2FmZVVzZUlkKCk7XG4gICAgICAgICAgICBjb25zdCBoZWxwZXJUZXh0SWQgPSBzYWZlVXNlSWQoKTtcblxuICAgICAgICAgICAgY29uc3QgaXNDaGlwRW51bWVyYXRpb24gPSBlbnVtZXJhdGlvblR5cGUgPT09ICdjaGlwJztcbiAgICAgICAgICAgIGNvbnN0IGlzQ2hpcHNWaXNpYmxlID0gaXNDaGlwRW51bWVyYXRpb24gJiYgQm9vbGVhbihjaGlwcz8ubGVuZ3RoKTtcbiAgICAgICAgICAgIGNvbnN0IHdpdGhIYXNDaGlwcyA9IGlzQ2hpcHNWaXNpYmxlID8gY2xhc3Nlcy5oYXNDaGlwcyA6IHVuZGVmaW5lZDtcblxuICAgICAgICAgICAgY29uc3QgaGFzTGFiZWxWYWx1ZSA9IEJvb2xlYW4obGFiZWwpO1xuICAgICAgICAgICAgY29uc3QgaGFzSW5uZXJMYWJlbCA9IHNpemUgIT09ICd4cycgJiYgbGFiZWxQbGFjZW1lbnQgPT09ICdpbm5lcicgJiYgIWlzQ2hpcHNWaXNpYmxlICYmIGhhc0xhYmVsVmFsdWU7XG4gICAgICAgICAgICBjb25zdCBoYXNPdXRlckxhYmVsID0gbGFiZWxQbGFjZW1lbnQgPT09ICdvdXRlcicgJiYgaGFzTGFiZWxWYWx1ZTtcbiAgICAgICAgICAgIGNvbnN0IGhhc1BsYWNlaG9sZGVyID0gQm9vbGVhbihwbGFjZWhvbGRlcikgJiYgIWhhc0lubmVyTGFiZWw7XG5cbiAgICAgICAgICAgIGNvbnN0IGlubmVyTGFiZWxWYWx1ZSA9IGhhc0lubmVyTGFiZWwgfHwgaGFzT3V0ZXJMYWJlbCA/IGxhYmVsIDogdW5kZWZpbmVkO1xuICAgICAgICAgICAgY29uc3QgaW5uZXJMYWJlbFBsYWNlbWVudFZhbHVlID0gbGFiZWxQbGFjZW1lbnQgPT09ICdpbm5lcicgJiYgIWhhc0lubmVyTGFiZWwgPyB1bmRlZmluZWQgOiBsYWJlbFBsYWNlbWVudDtcblxuICAgICAgICAgICAgY29uc3QgaW5uZXJQbGFjZWhvbGRlclZhbHVlID0gaGFzUGxhY2Vob2xkZXIgPyBwbGFjZWhvbGRlciA6IHVuZGVmaW5lZDtcbiAgICAgICAgICAgIGNvbnN0IHBsYWNlaG9sZGVyU2hvd24gPSBCb29sZWFuKGlubmVyUGxhY2Vob2xkZXJWYWx1ZSkgJiYgIWhhc1ZhbHVlO1xuXG4gICAgICAgICAgICBjb25zdCByZXF1aXJlZFBsYWNlbWVudENsYXNzID0gcmVxdWlyZWRQbGFjZW1lbnQgPT09ICdyaWdodCcgPyAnYWxpZ24tcmlnaHQgJyA6IHVuZGVmaW5lZDtcbiAgICAgICAgICAgIGNvbnN0IGxhYmVsUGxhY2VtZW50Q2xhc3MgPSBpbm5lckxhYmVsUGxhY2VtZW50VmFsdWVcbiAgICAgICAgICAgICAgICA/IGNsYXNzZXNbYCR7aW5uZXJMYWJlbFBsYWNlbWVudFZhbHVlfUxhYmVsUGxhY2VtZW50YCBhcyBrZXlvZiB0eXBlb2YgY2xhc3Nlc11cbiAgICAgICAgICAgICAgICA6IHVuZGVmaW5lZDtcbiAgICAgICAgICAgIGNvbnN0IGhhc1ZhbHVlQ2xhc3MgPSBoYXNWYWx1ZSA/IGNsYXNzZXMuaGFzVmFsdWUgOiB1bmRlZmluZWQ7XG5cbiAgICAgICAgICAgIGNvbnN0IHdyYXBwZXJXaXRob3V0TGVmdENvbnRlbnQgPSAhY29udGVudExlZnQgJiYgaXNDaGlwc1Zpc2libGUgPyBjbGFzc2VzLmhhc0VtcHR5Q29udGVudExlZnQgOiB1bmRlZmluZWQ7XG4gICAgICAgICAgICBjb25zdCB3cmFwcGVyV2l0aG91dFJpZ2h0Q29udGVudCA9XG4gICAgICAgICAgICAgICAgIWNvbnRlbnRSaWdodCAmJiBpc0NoaXBzVmlzaWJsZSA/IGNsYXNzZXMuaGFzRW1wdHlDb250ZW50UmlnaHQgOiB1bmRlZmluZWQ7XG5cbiAgICAgICAgICAgIGNvbnN0IGhhbmRsZUlucHV0OiBGb3JtRXZlbnRIYW5kbGVyPEhUTUxJbnB1dEVsZW1lbnQ+ID0gKGV2ZW50KSA9PiB7XG4gICAgICAgICAgICAgICAgc2V0SGFzVmFsdWUoQm9vbGVhbigoZXZlbnQudGFyZ2V0IGFzIEhUTUxJbnB1dEVsZW1lbnQpLnZhbHVlKSk7XG4gICAgICAgICAgICB9O1xuXG4gICAgICAgICAgICBjb25zdCBoYW5kbGVDaGFuZ2U6IENoYW5nZUV2ZW50SGFuZGxlcjxIVE1MSW5wdXRFbGVtZW50PiA9IChldmVudCkgPT4ge1xuICAgICAgICAgICAgICAgIGlmIChkaXNhYmxlZCB8fCByZWFkT25seSkge1xuICAgICAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgY29uc3QgeyBtYXhMZW5ndGgsIHZhbHVlIH0gPSBldmVudC50YXJnZXQ7XG5cbiAgICAgICAgICAgICAgICBpZiAobWF4TGVuZ3RoICE9PSAtMSAmJiB2YWx1ZS5sZW5ndGggPiBtYXhMZW5ndGgpIHtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIG9uQ2hhbmdlPy4oZXZlbnQpO1xuICAgICAgICAgICAgfTtcblxuICAgICAgICAgICAgY29uc3QgdXBkYXRlQ2hpcHMgPSAobmV3Q2hpcHM6IEFycmF5PENoaXBWYWx1ZXM+LCBuZXdWYWx1ZXM6IEFycmF5PFRleHRGaWVsZFByaW1pdGl2ZVZhbHVlPikgPT4ge1xuICAgICAgICAgICAgICAgIHNldENoaXBzKG5ld0NoaXBzKTtcbiAgICAgICAgICAgICAgICBvbkNoYW5nZUNoaXBzPy4obmV3VmFsdWVzKTtcbiAgICAgICAgICAgIH07XG5cbiAgICAgICAgICAgIGNvbnN0IHsgaGFuZGxlSW5wdXRLZXlkb3duLCBoYW5kbGVDaGlwS2V5RG93biwgb25DaGlwQ2xlYXIsIGhhbmRsZUNvbnRlbnRLZXlEb3duIH0gPSB1c2VLZXlOYXZpZ2F0aW9uKHtcbiAgICAgICAgICAgICAgICBjb250cm9sbGVkUmVmcyxcbiAgICAgICAgICAgICAgICBkaXNhYmxlZCxcbiAgICAgICAgICAgICAgICByZWFkT25seSxcbiAgICAgICAgICAgICAgICBjaGlwcyxcbiAgICAgICAgICAgICAgICBlbnVtZXJhdGlvblR5cGUsXG4gICAgICAgICAgICAgICAgdXBkYXRlQ2hpcHMsXG4gICAgICAgICAgICAgICAgb25TZWFyY2gsXG4gICAgICAgICAgICAgICAgb25DaGFuZ2UsXG4gICAgICAgICAgICAgICAgb25FbnRlckRpc2FibGVkOiAocmVzdCBhcyBhbnkpLm9uRW50ZXJEaXNhYmxlZCxcbiAgICAgICAgICAgIH0pO1xuXG4gICAgICAgICAgICBjb25zdCBvbkNoaXBDbGljayA9IChldmVudDogUmVhY3QuTW91c2VFdmVudDxIVE1MQnV0dG9uRWxlbWVudD4pID0+IGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuXG4gICAgICAgICAgICBjb25zdCBoYW5kbGVJbnB1dEZvY3VzID0gKCkgPT4ge1xuICAgICAgICAgICAgICAgIGlmIChyZWFkT25seSB8fCBkaXNhYmxlZCB8fCAhaW5wdXRSZWY/LmN1cnJlbnQpIHtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIGlucHV0UmVmLmN1cnJlbnQuc2Nyb2xsVG8oe1xuICAgICAgICAgICAgICAgICAgICB0b3A6IDAsXG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IGlucHV0UmVmLmN1cnJlbnQub2Zmc2V0TGVmdCxcbiAgICAgICAgICAgICAgICAgICAgYmVoYXZpb3I6ICdzbW9vdGgnLFxuICAgICAgICAgICAgICAgIH0pO1xuXG4gICAgICAgICAgICAgICAgaW5wdXRSZWYuY3VycmVudC5mb2N1cygpO1xuICAgICAgICAgICAgfTtcblxuICAgICAgICAgICAgY29uc3QgZ2V0UmVmID0gKGVsZW1lbnQ6IEhUTUxCdXR0b25FbGVtZW50IHwgbnVsbCwgaW5kZXg6IG51bWJlcikgPT4ge1xuICAgICAgICAgICAgICAgIGlmIChlbGVtZW50ICYmIGNoaXBzUmVmcz8uY3VycmVudCkge1xuICAgICAgICAgICAgICAgICAgICBjaGlwc1JlZnMuY3VycmVudFtpbmRleF0gPSBlbGVtZW50O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH07XG5cbiAgICAgICAgICAgIGNvbnN0IGhhbmRsZU9uS2V5RG93biA9IChldmVudDogQ2hhbmdlRXZlbnQ8SFRNTElucHV0RWxlbWVudD4gJiBLZXlib2FyZEV2ZW50PEhUTUxJbnB1dEVsZW1lbnQ+KSA9PiB7XG4gICAgICAgICAgICAgICAgaGFuZGxlSW5wdXRLZXlkb3duKGV2ZW50KTtcbiAgICAgICAgICAgICAgICBvbktleURvd24gJiYgb25LZXlEb3duKGV2ZW50KTtcbiAgICAgICAgICAgIH07XG5cbiAgICAgICAgICAgIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgICAgICAgICAgICAgaWYgKCFpc0NoaXBFbnVtZXJhdGlvbiAmJiAhdmFsdWVzPy5sZW5ndGgpIHtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIGNvbnN0IG5ld0NoaXBzID1cbiAgICAgICAgICAgICAgICAgICAgdmFsdWVzPy5tYXAoKHZhbHVlLCBpbmRleCkgPT4gKHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGlkOiBgJHtpbmRleH1fJHt2YWx1ZX1gLFxuICAgICAgICAgICAgICAgICAgICAgICAgdGV4dDogdmFsdWUsXG4gICAgICAgICAgICAgICAgICAgIH0pKSB8fCBbXTtcblxuICAgICAgICAgICAgICAgIHNldENoaXBzKG5ld0NoaXBzKTtcbiAgICAgICAgICAgIH0sIFtpc0NoaXBFbnVtZXJhdGlvbiwgdmFsdWVzXSk7XG5cbiAgICAgICAgICAgIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgICAgICAgICAgICAgc2V0SGFzVmFsdWUoQm9vbGVhbihyZXN0Py5kZWZhdWx0VmFsdWUpKTtcbiAgICAgICAgICAgIH0sIFtyZXN0LmRlZmF1bHRWYWx1ZV0pO1xuXG4gICAgICAgICAgICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgICAgICAgICAgICAgIHNldEhhc1ZhbHVlKEJvb2xlYW4ob3V0ZXJWYWx1ZSkgfHwgQm9vbGVhbihpbnB1dFJlZj8uY3VycmVudD8udmFsdWUpKTtcbiAgICAgICAgICAgIH0sIFtvdXRlclZhbHVlLCBpbnB1dFJlZj8uY3VycmVudD8udmFsdWVdKTtcblxuICAgICAgICAgICAgY29uc3QgaW5uZXJPcHRpb25hbCA9IEJvb2xlYW4ocmVxdWlyZWQgPyBmYWxzZSA6IG9wdGlvbmFsKTtcbiAgICAgICAgICAgIGNvbnN0IGhhc1BsYWNlaG9sZGVyT3B0aW9uYWwgPSBpbm5lck9wdGlvbmFsICYmICFpbm5lckxhYmVsVmFsdWUgJiYgIWhhc091dGVyTGFiZWw7XG4gICAgICAgICAgICBjb25zdCBvcHRpb25hbFRleHROb2RlID0gaW5uZXJPcHRpb25hbCA/IChcbiAgICAgICAgICAgICAgICA8U3R5bGVkT3B0aW9uYWxUZXh0PlxuICAgICAgICAgICAgICAgICAgICB7Qm9vbGVhbihoYXNQbGFjZWhvbGRlck9wdGlvbmFsID8gaW5uZXJQbGFjZWhvbGRlclZhbHVlIDogaW5uZXJMYWJlbFZhbHVlKSAmJiAnXFx4YTAnfVxuICAgICAgICAgICAgICAgICAgICB7b3B0aW9uYWxUZXh0fVxuICAgICAgICAgICAgICAgIDwvU3R5bGVkT3B0aW9uYWxUZXh0PlxuICAgICAgICAgICAgKSA6IG51bGw7XG5cbiAgICAgICAgICAgIHJldHVybiAoXG4gICAgICAgICAgICAgICAgPFJvb3RcbiAgICAgICAgICAgICAgICAgICAgdmlldz17dmlld31cbiAgICAgICAgICAgICAgICAgICAgc2l6ZT17c2l6ZX1cbiAgICAgICAgICAgICAgICAgICAgZGlzYWJsZWQ9e2Rpc2FibGVkfVxuICAgICAgICAgICAgICAgICAgICByZWFkT25seT17IWRpc2FibGVkICYmIHJlYWRPbmx5fVxuICAgICAgICAgICAgICAgICAgICBsYWJlbFBsYWNlbWVudD17aW5uZXJMYWJlbFBsYWNlbWVudFZhbHVlfVxuICAgICAgICAgICAgICAgICAgICBvbkNsaWNrPXtoYW5kbGVJbnB1dEZvY3VzfVxuICAgICAgICAgICAgICAgICAgICBjbGFzc05hbWU9e2N4KGxhYmVsUGxhY2VtZW50Q2xhc3MsIGNsYXNzZXMudGV4dEZpZWxkR3JvdXBJdGVtLCBjbGFzc05hbWUpfVxuICAgICAgICAgICAgICAgICAgICBzdHlsZT17c3R5bGV9XG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICB7aGFzT3V0ZXJMYWJlbCAmJiAoXG4gICAgICAgICAgICAgICAgICAgICAgICA8TGFiZWwgaWQ9e2xhYmVsSWR9IGh0bWxGb3I9e2lkfT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7cmVxdWlyZWQgJiYgKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8U3R5bGVkSW5kaWNhdG9yIGNsYXNzTmFtZT17Y3goY2xhc3Nlcy5vdXRlckxhYmVsUGxhY2VtZW50LCByZXF1aXJlZFBsYWNlbWVudENsYXNzKX0gLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtpbm5lckxhYmVsVmFsdWV9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAge29wdGlvbmFsVGV4dE5vZGV9XG4gICAgICAgICAgICAgICAgICAgICAgICA8L0xhYmVsPlxuICAgICAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICAgICAgICA8SW5wdXRXcmFwcGVyXG4gICAgICAgICAgICAgICAgICAgICAgICAvLyBSZWYg0LTQu9GPINCy0L3Rg9GC0YDQtdC90L3QtdCz0L4g0LjRgdC/0L7Qu9GM0LfQvtCy0LDQvdC40Y8uINCd0LUg0L7RgtC00LDQtdGC0YHRjyDQvdCw0YDRg9C20YMuXG4gICAgICAgICAgICAgICAgICAgICAgICByZWY9eyhyZXN0IGFzIGFueSkuaW5wdXRXcmFwcGVyUmVmfVxuICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3NOYW1lPXtjeCh3aXRoSGFzQ2hpcHMsIHdyYXBwZXJXaXRob3V0TGVmdENvbnRlbnQsIHdyYXBwZXJXaXRob3V0UmlnaHRDb250ZW50KX1cbiAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAgeyFoYXNPdXRlckxhYmVsICYmIHJlcXVpcmVkICYmIChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8U3R5bGVkSW5kaWNhdG9yIGNsYXNzTmFtZT17Y3goY2xhc3Nlcy5pbm5lckxhYmVsUGxhY2VtZW50LCByZXF1aXJlZFBsYWNlbWVudENsYXNzKX0gLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgICAgICAgICAgICB7Y29udGVudExlZnQgJiYgPFN0eWxlZENvbnRlbnRMZWZ0Pntjb250ZW50TGVmdH08L1N0eWxlZENvbnRlbnRMZWZ0Pn1cbiAgICAgICAgICAgICAgICAgICAgICAgIDxJbnB1dExhYmVsV3JhcHBlclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRhYkluZGV4PXstMX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZWY9e2NvbnRlbnRSZWZ9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgb25LZXlEb3duPXtoYW5kbGVDb250ZW50S2V5RG93bn1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzc05hbWU9e3dpdGhIYXNDaGlwc31cbiAgICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7dGV4dEJlZm9yZSAmJiA8U3R5bGVkVGV4dEJlZm9yZT57dGV4dEJlZm9yZX08L1N0eWxlZFRleHRCZWZvcmU+fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtpc0NoaXBFbnVtZXJhdGlvbiAmJiBCb29sZWFuKGNoaXBzPy5sZW5ndGgpICYmIChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPFN0eWxlZENoaXBzPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge2NoaXBzPy5tYXAoKHsgaWQ6IGNoaXBJZCwgdGV4dCB9LCBpbmRleCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxUZXh0RmllbGRDaGlwXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZD17Y2hpcElkfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVmPXsoZWxlbWVudCkgPT4gZ2V0UmVmKGVsZW1lbnQsIGluZGV4KX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGtleT17YCR7Y2hpcElkfV8ke2luZGV4fWB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNhYmxlZD17ZGlzYWJsZWR9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZWFkT25seT17cmVhZE9ubHl9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YWx1ZT17dGV4dH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRleHQ9e3RleHR9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvbktleURvd249eyhldmVudCkgPT4gaGFuZGxlQ2hpcEtleURvd24oZXZlbnQsIGNoaXBJZCwgaW5kZXgpfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb25DbGVhcj17KCkgPT4gb25DaGlwQ2xlYXIoY2hpcElkLCBpbmRleCl9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvbkNsaWNrPXtvbkNoaXBDbGlja31cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSl9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvU3R5bGVkQ2hpcHM+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8SW5wdXRDb250YWluZXI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxJbnB1dFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVmPXtpbnB1dEZvcmtSZWZ9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZD17aW5uZXJJZH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlPXtvdXRlclZhbHVlfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXJpYS1sYWJlbGxlZGJ5PXtsYWJlbElkfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXJpYS1kZXNjcmliZWRieT17aGVscGVyVGV4dElkfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGxhY2Vob2xkZXI9e2lubmVyUGxhY2Vob2xkZXJWYWx1ZX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzTmFtZT17Y3goaGFzVmFsdWVDbGFzcyl9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNhYmxlZD17ZGlzYWJsZWR9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZWFkT25seT17IWRpc2FibGVkICYmIHJlYWRPbmx5fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb25JbnB1dD17aGFuZGxlSW5wdXR9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvbkNoYW5nZT17aGFuZGxlQ2hhbmdlfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb25LZXlEb3duPXtoYW5kbGVPbktleURvd259XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7Li4ucmVzdH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge2hhc0lubmVyTGFiZWwgJiYgKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPExhYmVsIGlkPXtsYWJlbElkfSBodG1sRm9yPXtpbm5lcklkfT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7aW5uZXJMYWJlbFZhbHVlfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtvcHRpb25hbFRleHROb2RlfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9MYWJlbD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge3BsYWNlaG9sZGVyU2hvd24gJiYgIWhhc1ZhbHVlICYmIChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxJbnB1dFBsYWNlaG9sZGVyPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtpbm5lclBsYWNlaG9sZGVyVmFsdWV9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge2hhc1BsYWNlaG9sZGVyT3B0aW9uYWwgJiYgb3B0aW9uYWxUZXh0Tm9kZX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvSW5wdXRQbGFjZWhvbGRlcj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L0lucHV0Q29udGFpbmVyPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt0ZXh0QWZ0ZXIgJiYgPFN0eWxlZFRleHRBZnRlcj57dGV4dEFmdGVyfTwvU3R5bGVkVGV4dEFmdGVyPn1cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvSW5wdXRMYWJlbFdyYXBwZXI+XG4gICAgICAgICAgICAgICAgICAgICAgICB7Y29udGVudFJpZ2h0ICYmIDxTdHlsZWRDb250ZW50UmlnaHQ+e2NvbnRlbnRSaWdodH08L1N0eWxlZENvbnRlbnRSaWdodD59XG4gICAgICAgICAgICAgICAgICAgIDwvSW5wdXRXcmFwcGVyPlxuICAgICAgICAgICAgICAgICAgICB7bGVmdEhlbHBlciAmJiA8TGVmdEhlbHBlciBpZD17aGVscGVyVGV4dElkfT57bGVmdEhlbHBlcn08L0xlZnRIZWxwZXI+fVxuICAgICAgICAgICAgICAgIDwvUm9vdD5cbiAgICAgICAgICAgICk7XG4gICAgICAgIH0sXG4gICAgKTtcblxuZXhwb3J0IGNvbnN0IHRleHRGaWVsZENvbmZpZyA9IHtcbiAgICBuYW1lOiAnVGV4dEZpZWxkJyxcbiAgICB0YWc6ICdkaXYnLFxuICAgIGxheW91dDogdGV4dEZpZWxkUm9vdCxcbiAgICBiYXNlLFxuICAgIHZhcmlhdGlvbnM6IHtcbiAgICAgICAgdmlldzoge1xuICAgICAgICAgICAgY3NzOiB2aWV3Q1NTLFxuICAgICAgICB9LFxuICAgICAgICBzaXplOiB7XG4gICAgICAgICAgICBjc3M6IHNpemVDU1MsXG4gICAgICAgIH0sXG4gICAgICAgIGRpc2FibGVkOiB7XG4gICAgICAgICAgICBjc3M6IGRpc2FibGVkQ1NTLFxuICAgICAgICAgICAgYXR0cnM6IHRydWUsXG4gICAgICAgIH0sXG4gICAgICAgIHJlYWRPbmx5OiB7XG4gICAgICAgICAgICBjc3M6IHJlYWRPbmx5Q1NTLFxuICAgICAgICAgICAgYXR0cnM6IHRydWUsXG4gICAgICAgIH0sXG4gICAgICAgIGxhYmVsUGxhY2VtZW50OiB7XG4gICAgICAgICAgICBjc3M6IGxhYmVsUGxhY2VtZW50Q1NTLFxuICAgICAgICB9LFxuICAgIH0sXG4gICAgZGVmYXVsdHM6IHtcbiAgICAgICAgc2l6ZTogJ20nLFxuICAgICAgICB2aWV3OiAnZGVmYXVsdCcsXG4gICAgfSxcbn07XG4iXX0= */",
32
+ map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy1lbW90aW9uL2NvbXBvbmVudHMvVGV4dEZpZWxkL1RleHRGaWVsZC50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBb0N1QiIsImZpbGUiOiIuLi8uLi8uLi8uLi9zcmMtZW1vdGlvbi9jb21wb25lbnRzL1RleHRGaWVsZC9UZXh0RmllbGQudHN4Iiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0LCB7IGZvcndhcmRSZWYsIHVzZUVmZmVjdCwgdXNlUmVmLCB1c2VTdGF0ZSB9IGZyb20gJ3JlYWN0JztcbmltcG9ydCB0eXBlIHsgRm9ybUV2ZW50SGFuZGxlciwgQ2hhbmdlRXZlbnRIYW5kbGVyLCBLZXlib2FyZEV2ZW50LCBDaGFuZ2VFdmVudCB9IGZyb20gJ3JlYWN0JztcbmltcG9ydCB7IHNhZmVVc2VJZCwgdXNlRm9ya1JlZiB9IGZyb20gJ0BzYWx1dGVqcy9wbGFzbWEtY29yZSc7XG5pbXBvcnQgeyBjc3MgfSBmcm9tICdAZW1vdGlvbi9yZWFjdCc7XG5cbmltcG9ydCB0eXBlIHsgUm9vdFByb3BzIH0gZnJvbSAnLi4vLi4vZW5naW5lcyc7XG5pbXBvcnQgeyBjeCB9IGZyb20gJy4uLy4uL3V0aWxzJztcblxuaW1wb3J0IHR5cGUgeyBDaGlwVmFsdWVzLCBUZXh0RmllbGRQcmltaXRpdmVWYWx1ZSwgVGV4dEZpZWxkUHJvcHMgfSBmcm9tICcuL1RleHRGaWVsZC50eXBlcyc7XG5pbXBvcnQgeyBiYXNlIGFzIHNpemVDU1MgfSBmcm9tICcuL3ZhcmlhdGlvbnMvX3NpemUvYmFzZSc7XG5pbXBvcnQgeyBiYXNlIGFzIHZpZXdDU1MgfSBmcm9tICcuL3ZhcmlhdGlvbnMvX3ZpZXcvYmFzZSc7XG5pbXBvcnQgeyBiYXNlIGFzIGRpc2FibGVkQ1NTIH0gZnJvbSAnLi92YXJpYXRpb25zL19kaXNhYmxlZC9iYXNlJztcbmltcG9ydCB7IGJhc2UgYXMgcmVhZE9ubHlDU1MgfSBmcm9tICcuL3ZhcmlhdGlvbnMvX3JlYWQtb25seS9iYXNlJztcbmltcG9ydCB7IGJhc2UgYXMgbGFiZWxQbGFjZW1lbnRDU1MgfSBmcm9tICcuL3ZhcmlhdGlvbnMvX2xhYmVsLXBsYWNlbWVudC9iYXNlJztcbmltcG9ydCB7XG4gICAgSW5wdXQsXG4gICAgSW5wdXRDb250YWluZXIsXG4gICAgTGVmdEhlbHBlcixcbiAgICBMYWJlbCxcbiAgICBJbnB1dFdyYXBwZXIsXG4gICAgSW5wdXRMYWJlbFdyYXBwZXIsXG4gICAgU3R5bGVkQ29udGVudExlZnQsXG4gICAgU3R5bGVkQ29udGVudFJpZ2h0LFxuICAgIFN0eWxlZENoaXBzLFxuICAgIFN0eWxlZFRleHRCZWZvcmUsXG4gICAgU3R5bGVkVGV4dEFmdGVyLFxuICAgIFN0eWxlZEluZGljYXRvcixcbiAgICBTdHlsZWRPcHRpb25hbFRleHQsXG4gICAgSW5wdXRQbGFjZWhvbGRlcixcbn0gZnJvbSAnLi9UZXh0RmllbGQuc3R5bGVzJztcbmltcG9ydCB7IGNsYXNzZXMgfSBmcm9tICcuL1RleHRGaWVsZC50b2tlbnMnO1xuaW1wb3J0IHsgVGV4dEZpZWxkQ2hpcCB9IGZyb20gJy4vdWknO1xuaW1wb3J0IHsgdXNlS2V5TmF2aWdhdGlvbiB9IGZyb20gJy4vaG9va3MnO1xuXG5jb25zdCBvcHRpb25hbFRleHQgPSAnb3B0aW9uYWwnO1xuXG5leHBvcnQgY29uc3QgYmFzZSA9IGNzc2BcbiAgICAvKiBOT1RFOiBXZWJraXQg0L3QtSDQv9GA0LjQvNC10L3Rj9C10YIgb3BhY2l0eSDQuiBpbmxpbmUg0YLQtdCz0LDQvCAqL1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuYDtcblxuZXhwb3J0IGNvbnN0IHRleHRGaWVsZFJvb3QgPSAoUm9vdDogUm9vdFByb3BzPEhUTUxEaXZFbGVtZW50LCBUZXh0RmllbGRQcm9wcz4pID0+XG4gICAgZm9yd2FyZFJlZjxIVE1MSW5wdXRFbGVtZW50LCBUZXh0RmllbGRQcm9wcz4oXG4gICAgICAgIChcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBpZCxcbiAgICAgICAgICAgICAgICBjbGFzc05hbWUsXG4gICAgICAgICAgICAgICAgc3R5bGUsXG5cbiAgICAgICAgICAgICAgICAvLyBsYXlvdXRcbiAgICAgICAgICAgICAgICBjb250ZW50TGVmdCxcbiAgICAgICAgICAgICAgICBjb250ZW50UmlnaHQsXG4gICAgICAgICAgICAgICAgbGFiZWwsXG4gICAgICAgICAgICAgICAgbGFiZWxQbGFjZW1lbnQsXG4gICAgICAgICAgICAgICAgdGV4dEJlZm9yZSxcbiAgICAgICAgICAgICAgICB0ZXh0QWZ0ZXIsXG4gICAgICAgICAgICAgICAgcGxhY2Vob2xkZXIsXG4gICAgICAgICAgICAgICAgbGVmdEhlbHBlcixcbiAgICAgICAgICAgICAgICBlbnVtZXJhdGlvblR5cGUgPSAncGxhaW4nLFxuICAgICAgICAgICAgICAgIHJlcXVpcmVkUGxhY2VtZW50ID0gJ3JpZ2h0JyxcblxuICAgICAgICAgICAgICAgIC8vIHZhcmlhdGlvbnNcbiAgICAgICAgICAgICAgICB2aWV3LFxuICAgICAgICAgICAgICAgIHNpemUsXG4gICAgICAgICAgICAgICAgcmVhZE9ubHkgPSBmYWxzZSxcbiAgICAgICAgICAgICAgICBkaXNhYmxlZCA9IGZhbHNlLFxuICAgICAgICAgICAgICAgIHJlcXVpcmVkID0gZmFsc2UsXG4gICAgICAgICAgICAgICAgb3B0aW9uYWwsXG5cbiAgICAgICAgICAgICAgICAvLyBjb250cm9sbGVkXG4gICAgICAgICAgICAgICAgdmFsdWU6IG91dGVyVmFsdWUsXG4gICAgICAgICAgICAgICAgY2hpcHM6IHZhbHVlcyxcblxuICAgICAgICAgICAgICAgIC8vIGV2ZW50c1xuICAgICAgICAgICAgICAgIG9uQ2hhbmdlLFxuICAgICAgICAgICAgICAgIG9uQ2hhbmdlQ2hpcHMsXG4gICAgICAgICAgICAgICAgb25TZWFyY2gsXG4gICAgICAgICAgICAgICAgb25LZXlEb3duLFxuXG4gICAgICAgICAgICAgICAgLi4ucmVzdFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHJlZixcbiAgICAgICAgKSA9PiB7XG4gICAgICAgICAgICBjb25zdCBjb250ZW50UmVmID0gdXNlUmVmPEhUTUxEaXZFbGVtZW50PihudWxsKTtcbiAgICAgICAgICAgIGNvbnN0IGlucHV0UmVmID0gdXNlUmVmPEhUTUxJbnB1dEVsZW1lbnQ+KG51bGwpO1xuICAgICAgICAgICAgY29uc3QgaW5wdXRGb3JrUmVmID0gdXNlRm9ya1JlZihpbnB1dFJlZiwgcmVmKTtcbiAgICAgICAgICAgIGNvbnN0IGNoaXBzUmVmcyA9IHVzZVJlZjxBcnJheTxIVE1MQnV0dG9uRWxlbWVudD4+KFtdKTtcblxuICAgICAgICAgICAgY29uc3QgY29udHJvbGxlZFJlZnMgPSB7IGNvbnRlbnRSZWYsIGlucHV0UmVmLCBjaGlwc1JlZnMgfTtcblxuICAgICAgICAgICAgY29uc3QgW2hhc1ZhbHVlLCBzZXRIYXNWYWx1ZV0gPSB1c2VTdGF0ZShcbiAgICAgICAgICAgICAgICBCb29sZWFuKG91dGVyVmFsdWUpIHx8IEJvb2xlYW4oaW5wdXRSZWY/LmN1cnJlbnQ/LnZhbHVlKSB8fCBCb29sZWFuKHJlc3Q/LmRlZmF1bHRWYWx1ZSksXG4gICAgICAgICAgICApO1xuICAgICAgICAgICAgY29uc3QgW2NoaXBzLCBzZXRDaGlwc10gPSB1c2VTdGF0ZTxBcnJheTxDaGlwVmFsdWVzPj4oW10pO1xuXG4gICAgICAgICAgICBjb25zdCB1bmlxSWQgPSBzYWZlVXNlSWQoKTtcbiAgICAgICAgICAgIGNvbnN0IGlubmVySWQgPSBpZCB8fCB1bmlxSWQ7XG4gICAgICAgICAgICBjb25zdCBsYWJlbElkID0gc2FmZVVzZUlkKCk7XG4gICAgICAgICAgICBjb25zdCBoZWxwZXJUZXh0SWQgPSBzYWZlVXNlSWQoKTtcblxuICAgICAgICAgICAgY29uc3QgaXNDaGlwRW51bWVyYXRpb24gPSBlbnVtZXJhdGlvblR5cGUgPT09ICdjaGlwJztcbiAgICAgICAgICAgIGNvbnN0IGlzQ2hpcHNWaXNpYmxlID0gaXNDaGlwRW51bWVyYXRpb24gJiYgQm9vbGVhbihjaGlwcz8ubGVuZ3RoKTtcbiAgICAgICAgICAgIGNvbnN0IHdpdGhIYXNDaGlwcyA9IGlzQ2hpcHNWaXNpYmxlID8gY2xhc3Nlcy5oYXNDaGlwcyA6IHVuZGVmaW5lZDtcblxuICAgICAgICAgICAgY29uc3QgaGFzTGFiZWxWYWx1ZSA9IEJvb2xlYW4obGFiZWwpO1xuICAgICAgICAgICAgY29uc3QgaGFzSW5uZXJMYWJlbCA9IHNpemUgIT09ICd4cycgJiYgbGFiZWxQbGFjZW1lbnQgPT09ICdpbm5lcicgJiYgIWlzQ2hpcHNWaXNpYmxlICYmIGhhc0xhYmVsVmFsdWU7XG4gICAgICAgICAgICBjb25zdCBoYXNPdXRlckxhYmVsID0gbGFiZWxQbGFjZW1lbnQgPT09ICdvdXRlcicgJiYgaGFzTGFiZWxWYWx1ZTtcbiAgICAgICAgICAgIGNvbnN0IGhhc1BsYWNlaG9sZGVyID0gQm9vbGVhbihwbGFjZWhvbGRlcikgJiYgIWhhc0lubmVyTGFiZWw7XG5cbiAgICAgICAgICAgIGNvbnN0IGlubmVyTGFiZWxWYWx1ZSA9IGhhc0lubmVyTGFiZWwgfHwgaGFzT3V0ZXJMYWJlbCA/IGxhYmVsIDogdW5kZWZpbmVkO1xuICAgICAgICAgICAgY29uc3QgaW5uZXJMYWJlbFBsYWNlbWVudFZhbHVlID0gbGFiZWxQbGFjZW1lbnQgPT09ICdpbm5lcicgJiYgIWhhc0lubmVyTGFiZWwgPyB1bmRlZmluZWQgOiBsYWJlbFBsYWNlbWVudDtcblxuICAgICAgICAgICAgY29uc3QgaW5uZXJQbGFjZWhvbGRlclZhbHVlID0gaGFzUGxhY2Vob2xkZXIgPyBwbGFjZWhvbGRlciA6IHVuZGVmaW5lZDtcbiAgICAgICAgICAgIGNvbnN0IHBsYWNlaG9sZGVyU2hvd24gPSBCb29sZWFuKGlubmVyUGxhY2Vob2xkZXJWYWx1ZSkgJiYgIWhhc1ZhbHVlO1xuXG4gICAgICAgICAgICBjb25zdCByZXF1aXJlZFBsYWNlbWVudENsYXNzID0gcmVxdWlyZWRQbGFjZW1lbnQgPT09ICdyaWdodCcgPyAnYWxpZ24tcmlnaHQgJyA6IHVuZGVmaW5lZDtcbiAgICAgICAgICAgIGNvbnN0IGxhYmVsUGxhY2VtZW50Q2xhc3MgPSBpbm5lckxhYmVsUGxhY2VtZW50VmFsdWVcbiAgICAgICAgICAgICAgICA/IGNsYXNzZXNbYCR7aW5uZXJMYWJlbFBsYWNlbWVudFZhbHVlfUxhYmVsUGxhY2VtZW50YCBhcyBrZXlvZiB0eXBlb2YgY2xhc3Nlc11cbiAgICAgICAgICAgICAgICA6IHVuZGVmaW5lZDtcbiAgICAgICAgICAgIGNvbnN0IGhhc1ZhbHVlQ2xhc3MgPSBoYXNWYWx1ZSA/IGNsYXNzZXMuaGFzVmFsdWUgOiB1bmRlZmluZWQ7XG5cbiAgICAgICAgICAgIGNvbnN0IHdyYXBwZXJXaXRob3V0TGVmdENvbnRlbnQgPSAhY29udGVudExlZnQgJiYgaXNDaGlwc1Zpc2libGUgPyBjbGFzc2VzLmhhc0VtcHR5Q29udGVudExlZnQgOiB1bmRlZmluZWQ7XG4gICAgICAgICAgICBjb25zdCB3cmFwcGVyV2l0aG91dFJpZ2h0Q29udGVudCA9XG4gICAgICAgICAgICAgICAgIWNvbnRlbnRSaWdodCAmJiBpc0NoaXBzVmlzaWJsZSA/IGNsYXNzZXMuaGFzRW1wdHlDb250ZW50UmlnaHQgOiB1bmRlZmluZWQ7XG5cbiAgICAgICAgICAgIGNvbnN0IGhhbmRsZUlucHV0OiBGb3JtRXZlbnRIYW5kbGVyPEhUTUxJbnB1dEVsZW1lbnQ+ID0gKGV2ZW50KSA9PiB7XG4gICAgICAgICAgICAgICAgc2V0SGFzVmFsdWUoQm9vbGVhbigoZXZlbnQudGFyZ2V0IGFzIEhUTUxJbnB1dEVsZW1lbnQpLnZhbHVlKSk7XG4gICAgICAgICAgICB9O1xuXG4gICAgICAgICAgICBjb25zdCBoYW5kbGVDaGFuZ2U6IENoYW5nZUV2ZW50SGFuZGxlcjxIVE1MSW5wdXRFbGVtZW50PiA9IChldmVudCkgPT4ge1xuICAgICAgICAgICAgICAgIGlmIChkaXNhYmxlZCB8fCByZWFkT25seSkge1xuICAgICAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgY29uc3QgeyBtYXhMZW5ndGgsIHZhbHVlIH0gPSBldmVudC50YXJnZXQ7XG5cbiAgICAgICAgICAgICAgICBpZiAobWF4TGVuZ3RoICE9PSAtMSAmJiB2YWx1ZS5sZW5ndGggPiBtYXhMZW5ndGgpIHtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIG9uQ2hhbmdlPy4oZXZlbnQpO1xuICAgICAgICAgICAgfTtcblxuICAgICAgICAgICAgY29uc3QgdXBkYXRlQ2hpcHMgPSAobmV3Q2hpcHM6IEFycmF5PENoaXBWYWx1ZXM+LCBuZXdWYWx1ZXM6IEFycmF5PFRleHRGaWVsZFByaW1pdGl2ZVZhbHVlPikgPT4ge1xuICAgICAgICAgICAgICAgIHNldENoaXBzKG5ld0NoaXBzKTtcbiAgICAgICAgICAgICAgICBvbkNoYW5nZUNoaXBzPy4obmV3VmFsdWVzKTtcbiAgICAgICAgICAgIH07XG5cbiAgICAgICAgICAgIGNvbnN0IHsgaGFuZGxlSW5wdXRLZXlkb3duLCBoYW5kbGVDaGlwS2V5RG93biwgb25DaGlwQ2xlYXIsIGhhbmRsZUNvbnRlbnRLZXlEb3duIH0gPSB1c2VLZXlOYXZpZ2F0aW9uKHtcbiAgICAgICAgICAgICAgICBjb250cm9sbGVkUmVmcyxcbiAgICAgICAgICAgICAgICBkaXNhYmxlZCxcbiAgICAgICAgICAgICAgICByZWFkT25seSxcbiAgICAgICAgICAgICAgICBjaGlwcyxcbiAgICAgICAgICAgICAgICBlbnVtZXJhdGlvblR5cGUsXG4gICAgICAgICAgICAgICAgdXBkYXRlQ2hpcHMsXG4gICAgICAgICAgICAgICAgb25TZWFyY2gsXG4gICAgICAgICAgICAgICAgb25DaGFuZ2UsXG4gICAgICAgICAgICAgICAgb25FbnRlckRpc2FibGVkOiAocmVzdCBhcyBhbnkpLm9uRW50ZXJEaXNhYmxlZCxcbiAgICAgICAgICAgIH0pO1xuXG4gICAgICAgICAgICBjb25zdCBvbkNoaXBDbGljayA9IChldmVudDogUmVhY3QuTW91c2VFdmVudDxIVE1MQnV0dG9uRWxlbWVudD4pID0+IGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuXG4gICAgICAgICAgICBjb25zdCBoYW5kbGVJbnB1dEZvY3VzID0gKCkgPT4ge1xuICAgICAgICAgICAgICAgIGlmIChyZWFkT25seSB8fCBkaXNhYmxlZCB8fCAhaW5wdXRSZWY/LmN1cnJlbnQpIHtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIGlucHV0UmVmLmN1cnJlbnQuc2Nyb2xsVG8oe1xuICAgICAgICAgICAgICAgICAgICB0b3A6IDAsXG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IGlucHV0UmVmLmN1cnJlbnQub2Zmc2V0TGVmdCxcbiAgICAgICAgICAgICAgICAgICAgYmVoYXZpb3I6ICdzbW9vdGgnLFxuICAgICAgICAgICAgICAgIH0pO1xuXG4gICAgICAgICAgICAgICAgaW5wdXRSZWYuY3VycmVudC5mb2N1cygpO1xuICAgICAgICAgICAgfTtcblxuICAgICAgICAgICAgY29uc3QgZ2V0UmVmID0gKGVsZW1lbnQ6IEhUTUxCdXR0b25FbGVtZW50IHwgbnVsbCwgaW5kZXg6IG51bWJlcikgPT4ge1xuICAgICAgICAgICAgICAgIGlmIChlbGVtZW50ICYmIGNoaXBzUmVmcz8uY3VycmVudCkge1xuICAgICAgICAgICAgICAgICAgICBjaGlwc1JlZnMuY3VycmVudFtpbmRleF0gPSBlbGVtZW50O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH07XG5cbiAgICAgICAgICAgIGNvbnN0IGhhbmRsZU9uS2V5RG93biA9IChldmVudDogQ2hhbmdlRXZlbnQ8SFRNTElucHV0RWxlbWVudD4gJiBLZXlib2FyZEV2ZW50PEhUTUxJbnB1dEVsZW1lbnQ+KSA9PiB7XG4gICAgICAgICAgICAgICAgaGFuZGxlSW5wdXRLZXlkb3duKGV2ZW50KTtcblxuICAgICAgICAgICAgICAgIGlmIChvbktleURvd24pIHtcbiAgICAgICAgICAgICAgICAgICAgb25LZXlEb3duKGV2ZW50KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9O1xuXG4gICAgICAgICAgICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgICAgICAgICAgICAgIGlmICghaXNDaGlwRW51bWVyYXRpb24gJiYgIXZhbHVlcz8ubGVuZ3RoKSB7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBjb25zdCBuZXdDaGlwcyA9XG4gICAgICAgICAgICAgICAgICAgIHZhbHVlcz8ubWFwKCh2YWx1ZSwgaW5kZXgpID0+ICh7XG4gICAgICAgICAgICAgICAgICAgICAgICBpZDogYCR7aW5kZXh9XyR7dmFsdWV9YCxcbiAgICAgICAgICAgICAgICAgICAgICAgIHRleHQ6IHZhbHVlLFxuICAgICAgICAgICAgICAgICAgICB9KSkgfHwgW107XG5cbiAgICAgICAgICAgICAgICBzZXRDaGlwcyhuZXdDaGlwcyk7XG4gICAgICAgICAgICB9LCBbaXNDaGlwRW51bWVyYXRpb24sIHZhbHVlc10pO1xuXG4gICAgICAgICAgICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgICAgICAgICAgICAgIHNldEhhc1ZhbHVlKEJvb2xlYW4ocmVzdD8uZGVmYXVsdFZhbHVlKSk7XG4gICAgICAgICAgICB9LCBbcmVzdC5kZWZhdWx0VmFsdWVdKTtcblxuICAgICAgICAgICAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICAgICAgICAgICAgICBzZXRIYXNWYWx1ZShCb29sZWFuKG91dGVyVmFsdWUpIHx8IEJvb2xlYW4oaW5wdXRSZWY/LmN1cnJlbnQ/LnZhbHVlKSk7XG4gICAgICAgICAgICB9LCBbb3V0ZXJWYWx1ZSwgaW5wdXRSZWY/LmN1cnJlbnQ/LnZhbHVlXSk7XG5cbiAgICAgICAgICAgIGNvbnN0IGlubmVyT3B0aW9uYWwgPSBCb29sZWFuKHJlcXVpcmVkID8gZmFsc2UgOiBvcHRpb25hbCk7XG4gICAgICAgICAgICBjb25zdCBoYXNQbGFjZWhvbGRlck9wdGlvbmFsID0gaW5uZXJPcHRpb25hbCAmJiAhaW5uZXJMYWJlbFZhbHVlICYmICFoYXNPdXRlckxhYmVsO1xuICAgICAgICAgICAgY29uc3Qgb3B0aW9uYWxUZXh0Tm9kZSA9IGlubmVyT3B0aW9uYWwgPyAoXG4gICAgICAgICAgICAgICAgPFN0eWxlZE9wdGlvbmFsVGV4dD5cbiAgICAgICAgICAgICAgICAgICAge0Jvb2xlYW4oaGFzUGxhY2Vob2xkZXJPcHRpb25hbCA/IGlubmVyUGxhY2Vob2xkZXJWYWx1ZSA6IGlubmVyTGFiZWxWYWx1ZSkgJiYgJ1xceGEwJ31cbiAgICAgICAgICAgICAgICAgICAge29wdGlvbmFsVGV4dH1cbiAgICAgICAgICAgICAgICA8L1N0eWxlZE9wdGlvbmFsVGV4dD5cbiAgICAgICAgICAgICkgOiBudWxsO1xuXG4gICAgICAgICAgICByZXR1cm4gKFxuICAgICAgICAgICAgICAgIDxSb290XG4gICAgICAgICAgICAgICAgICAgIHZpZXc9e3ZpZXd9XG4gICAgICAgICAgICAgICAgICAgIHNpemU9e3NpemV9XG4gICAgICAgICAgICAgICAgICAgIGRpc2FibGVkPXtkaXNhYmxlZH1cbiAgICAgICAgICAgICAgICAgICAgcmVhZE9ubHk9eyFkaXNhYmxlZCAmJiByZWFkT25seX1cbiAgICAgICAgICAgICAgICAgICAgbGFiZWxQbGFjZW1lbnQ9e2lubmVyTGFiZWxQbGFjZW1lbnRWYWx1ZX1cbiAgICAgICAgICAgICAgICAgICAgb25DbGljaz17aGFuZGxlSW5wdXRGb2N1c31cbiAgICAgICAgICAgICAgICAgICAgY2xhc3NOYW1lPXtjeChsYWJlbFBsYWNlbWVudENsYXNzLCBjbGFzc2VzLnRleHRGaWVsZEdyb3VwSXRlbSwgY2xhc3NOYW1lKX1cbiAgICAgICAgICAgICAgICAgICAgc3R5bGU9e3N0eWxlfVxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAge2hhc091dGVyTGFiZWwgJiYgKFxuICAgICAgICAgICAgICAgICAgICAgICAgPExhYmVsIGlkPXtsYWJlbElkfSBodG1sRm9yPXtpZH0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAge3JlcXVpcmVkICYmIChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPFN0eWxlZEluZGljYXRvciBjbGFzc05hbWU9e2N4KGNsYXNzZXMub3V0ZXJMYWJlbFBsYWNlbWVudCwgcmVxdWlyZWRQbGFjZW1lbnRDbGFzcyl9IC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7aW5uZXJMYWJlbFZhbHVlfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtvcHRpb25hbFRleHROb2RlfVxuICAgICAgICAgICAgICAgICAgICAgICAgPC9MYWJlbD5cbiAgICAgICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgICAgICAgPElucHV0V3JhcHBlclxuICAgICAgICAgICAgICAgICAgICAgICAgLy8gUmVmINC00LvRjyDQstC90YPRgtGA0LXQvdC90LXQs9C+INC40YHQv9C+0LvRjNC30L7QstCw0L3QuNGPLiDQndC1INC+0YLQtNCw0LXRgtGB0Y8g0L3QsNGA0YPQttGDLlxuICAgICAgICAgICAgICAgICAgICAgICAgcmVmPXsocmVzdCBhcyBhbnkpLmlucHV0V3JhcHBlclJlZn1cbiAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzTmFtZT17Y3god2l0aEhhc0NoaXBzLCB3cmFwcGVyV2l0aG91dExlZnRDb250ZW50LCB3cmFwcGVyV2l0aG91dFJpZ2h0Q29udGVudCl9XG4gICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgIHshaGFzT3V0ZXJMYWJlbCAmJiByZXF1aXJlZCAmJiAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPFN0eWxlZEluZGljYXRvciBjbGFzc05hbWU9e2N4KGNsYXNzZXMuaW5uZXJMYWJlbFBsYWNlbWVudCwgcmVxdWlyZWRQbGFjZW1lbnRDbGFzcyl9IC8+XG4gICAgICAgICAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICAgICAgICAgICAge2NvbnRlbnRMZWZ0ICYmIDxTdHlsZWRDb250ZW50TGVmdD57Y29udGVudExlZnR9PC9TdHlsZWRDb250ZW50TGVmdD59XG4gICAgICAgICAgICAgICAgICAgICAgICA8SW5wdXRMYWJlbFdyYXBwZXJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0YWJJbmRleD17LTF9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVmPXtjb250ZW50UmVmfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9uS2V5RG93bj17aGFuZGxlQ29udGVudEtleURvd259XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3NOYW1lPXt3aXRoSGFzQ2hpcHN9XG4gICAgICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAge3RleHRCZWZvcmUgJiYgPFN0eWxlZFRleHRCZWZvcmU+e3RleHRCZWZvcmV9PC9TdHlsZWRUZXh0QmVmb3JlPn1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7aXNDaGlwRW51bWVyYXRpb24gJiYgQm9vbGVhbihjaGlwcz8ubGVuZ3RoKSAmJiAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxTdHlsZWRDaGlwcz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtjaGlwcz8ubWFwKCh7IGlkOiBjaGlwSWQsIHRleHQgfSwgaW5kZXgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8VGV4dEZpZWxkQ2hpcFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWQ9e2NoaXBJZH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlZj17KGVsZW1lbnQpID0+IGdldFJlZihlbGVtZW50LCBpbmRleCl9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBrZXk9e2Ake2NoaXBJZH1fJHtpbmRleH1gfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzYWJsZWQ9e2Rpc2FibGVkfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVhZE9ubHk9e3JlYWRPbmx5fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFsdWU9e3RleHR9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0ZXh0PXt0ZXh0fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb25LZXlEb3duPXsoZXZlbnQpID0+IGhhbmRsZUNoaXBLZXlEb3duKGV2ZW50LCBjaGlwSWQsIGluZGV4KX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9uQ2xlYXI9eygpID0+IG9uQ2hpcENsZWFyKGNoaXBJZCwgaW5kZXgpfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb25DbGljaz17b25DaGlwQ2xpY2t9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L1N0eWxlZENoaXBzPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPElucHV0Q29udGFpbmVyPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8SW5wdXRcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlZj17aW5wdXRGb3JrUmVmfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWQ9e2lubmVySWR9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YWx1ZT17b3V0ZXJWYWx1ZX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFyaWEtbGFiZWxsZWRieT17bGFiZWxJZH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFyaWEtZGVzY3JpYmVkYnk9e2hlbHBlclRleHRJZH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBsYWNlaG9sZGVyPXtpbm5lclBsYWNlaG9sZGVyVmFsdWV9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzc05hbWU9e2N4KGhhc1ZhbHVlQ2xhc3MpfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzYWJsZWQ9e2Rpc2FibGVkfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVhZE9ubHk9eyFkaXNhYmxlZCAmJiByZWFkT25seX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9uSW5wdXQ9e2hhbmRsZUlucHV0fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb25DaGFuZ2U9e2hhbmRsZUNoYW5nZX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9uS2V5RG93bj17aGFuZGxlT25LZXlEb3dufVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgey4uLnJlc3R9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtoYXNJbm5lckxhYmVsICYmIChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxMYWJlbCBpZD17bGFiZWxJZH0gaHRtbEZvcj17aW5uZXJJZH0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge2lubmVyTGFiZWxWYWx1ZX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7b3B0aW9uYWxUZXh0Tm9kZX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvTGFiZWw+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtwbGFjZWhvbGRlclNob3duICYmICFoYXNWYWx1ZSAmJiAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8SW5wdXRQbGFjZWhvbGRlcj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7aW5uZXJQbGFjZWhvbGRlclZhbHVlfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtoYXNQbGFjZWhvbGRlck9wdGlvbmFsICYmIG9wdGlvbmFsVGV4dE5vZGV9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L0lucHV0UGxhY2Vob2xkZXI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9JbnB1dENvbnRhaW5lcj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7dGV4dEFmdGVyICYmIDxTdHlsZWRUZXh0QWZ0ZXI+e3RleHRBZnRlcn08L1N0eWxlZFRleHRBZnRlcj59XG4gICAgICAgICAgICAgICAgICAgICAgICA8L0lucHV0TGFiZWxXcmFwcGVyPlxuICAgICAgICAgICAgICAgICAgICAgICAge2NvbnRlbnRSaWdodCAmJiA8U3R5bGVkQ29udGVudFJpZ2h0Pntjb250ZW50UmlnaHR9PC9TdHlsZWRDb250ZW50UmlnaHQ+fVxuICAgICAgICAgICAgICAgICAgICA8L0lucHV0V3JhcHBlcj5cbiAgICAgICAgICAgICAgICAgICAge2xlZnRIZWxwZXIgJiYgPExlZnRIZWxwZXIgaWQ9e2hlbHBlclRleHRJZH0+e2xlZnRIZWxwZXJ9PC9MZWZ0SGVscGVyPn1cbiAgICAgICAgICAgICAgICA8L1Jvb3Q+XG4gICAgICAgICAgICApO1xuICAgICAgICB9LFxuICAgICk7XG5cbmV4cG9ydCBjb25zdCB0ZXh0RmllbGRDb25maWcgPSB7XG4gICAgbmFtZTogJ1RleHRGaWVsZCcsXG4gICAgdGFnOiAnZGl2JyxcbiAgICBsYXlvdXQ6IHRleHRGaWVsZFJvb3QsXG4gICAgYmFzZSxcbiAgICB2YXJpYXRpb25zOiB7XG4gICAgICAgIHZpZXc6IHtcbiAgICAgICAgICAgIGNzczogdmlld0NTUyxcbiAgICAgICAgfSxcbiAgICAgICAgc2l6ZToge1xuICAgICAgICAgICAgY3NzOiBzaXplQ1NTLFxuICAgICAgICB9LFxuICAgICAgICBkaXNhYmxlZDoge1xuICAgICAgICAgICAgY3NzOiBkaXNhYmxlZENTUyxcbiAgICAgICAgICAgIGF0dHJzOiB0cnVlLFxuICAgICAgICB9LFxuICAgICAgICByZWFkT25seToge1xuICAgICAgICAgICAgY3NzOiByZWFkT25seUNTUyxcbiAgICAgICAgICAgIGF0dHJzOiB0cnVlLFxuICAgICAgICB9LFxuICAgICAgICBsYWJlbFBsYWNlbWVudDoge1xuICAgICAgICAgICAgY3NzOiBsYWJlbFBsYWNlbWVudENTUyxcbiAgICAgICAgfSxcbiAgICB9LFxuICAgIGRlZmF1bHRzOiB7XG4gICAgICAgIHNpemU6ICdtJyxcbiAgICAgICAgdmlldzogJ2RlZmF1bHQnLFxuICAgIH0sXG59O1xuIl19 */",
33
33
  toString: _EMOTION_STRINGIFIED_CSS_ERROR__
34
34
  };
35
35
  export var textFieldRoot = function textFieldRoot(Root) {
@@ -158,7 +158,9 @@ export var textFieldRoot = function textFieldRoot(Root) {
158
158
  };
159
159
  var handleOnKeyDown = function handleOnKeyDown(event) {
160
160
  handleInputKeydown(event);
161
- onKeyDown && onKeyDown(event);
161
+ if (onKeyDown) {
162
+ onKeyDown(event);
163
+ }
162
164
  };
163
165
  useEffect(function () {
164
166
  if (!isChipEnumeration && !(values !== null && values !== void 0 && values.length)) {
@@ -0,0 +1,3 @@
1
+ import { composeMask } from '../../../../components/Mask';
2
+ import { TextField } from '../TextField/TextField';
3
+ export var Mask = /*#__PURE__*/composeMask(TextField);
@@ -0,0 +1,127 @@
1
+ import React, { useEffect, useRef } from 'react';
2
+ import type { ComponentProps } from 'react';
3
+ import type { StoryObj, Meta } from '@storybook/react';
4
+ import { action } from '@storybook/addon-actions';
5
+
6
+ import { WithTheme } from '../../../_helpers';
7
+
8
+ import { Mask } from './Mask';
9
+
10
+ const onChange = action('onChange');
11
+
12
+ const sizes = ['l', 'm', 's', 'xs'];
13
+ const views = ['default', 'positive', 'warning', 'negative'];
14
+
15
+ const meta: Meta<typeof Mask> = {
16
+ title: 'plasma_b2c/Mask',
17
+ component: Mask,
18
+ decorators: [WithTheme],
19
+ argTypes: {
20
+ view: {
21
+ options: views,
22
+ control: {
23
+ type: 'select',
24
+ },
25
+ },
26
+ size: {
27
+ options: sizes,
28
+ control: {
29
+ type: 'inline-radio',
30
+ },
31
+ },
32
+ },
33
+ };
34
+
35
+ export default meta;
36
+
37
+ type StoryPropsDefault = Omit<
38
+ ComponentProps<typeof Mask>,
39
+ | 'helperBlock'
40
+ | 'contentLeft'
41
+ | 'htmlSize'
42
+ | 'contentRight'
43
+ | 'type'
44
+ | 'name'
45
+ | 'onFocus'
46
+ | 'onBlur'
47
+ | 'onChange'
48
+ | 'value'
49
+ | 'checked'
50
+ | 'maxLength'
51
+ | 'minLength'
52
+ | 'required'
53
+ | 'enumerationType'
54
+ | 'chips'
55
+ | 'onChangeChips'
56
+ >;
57
+
58
+ const StoryDemo = ({ view, ...rest }: StoryPropsDefault) => {
59
+ return (
60
+ <div style={{ display: 'flex', flexDirection: 'column', gap: '2rem', width: '50%' }}>
61
+ <Mask
62
+ label="Маска телефона"
63
+ mask="+7 (000) 000 - 00 - 00"
64
+ maskChar="_"
65
+ showStartChars={false}
66
+ view={view}
67
+ onChange={onChange}
68
+ {...rest}
69
+ />
70
+
71
+ <Mask
72
+ label="Маска телефона: отображается всегда"
73
+ mask="+7 (000) 000 - 00 - 00"
74
+ maskChar="_"
75
+ view={view}
76
+ alwaysShowMask
77
+ onChange={onChange}
78
+ {...rest}
79
+ value="+79123"
80
+ name="example"
81
+ />
82
+
83
+ <Mask
84
+ label="Маска даты"
85
+ mask="00/00/0000"
86
+ maskString="DD/MM/YYYY"
87
+ alwaysShowMask
88
+ view={view}
89
+ onChange={onChange}
90
+ {...rest}
91
+ />
92
+
93
+ <Mask
94
+ label="Маска даты: значения по умолчанию"
95
+ // eslint-disable-next-line no-octal-escape
96
+ mask="12.\04.0000"
97
+ maskChar="_"
98
+ alwaysShowMask
99
+ view={view}
100
+ onChange={onChange}
101
+ {...rest}
102
+ />
103
+
104
+ <Mask
105
+ label="Маска времени"
106
+ mask="00:00"
107
+ maskChar="_"
108
+ alwaysShowMask
109
+ view={view}
110
+ onChange={onChange}
111
+ {...rest}
112
+ />
113
+ </div>
114
+ );
115
+ };
116
+
117
+ export const Default: StoryObj<StoryPropsDefault> = {
118
+ args: {
119
+ size: 'l',
120
+ view: 'default',
121
+ labelPlacement: 'outer',
122
+ placeholder: 'Заполните поле',
123
+ disabled: false,
124
+ readOnly: false,
125
+ },
126
+ render: (args) => <StoryDemo {...args} />,
127
+ };
@@ -0,0 +1,3 @@
1
+ import { composeMask } from '../../../../components/Mask';
2
+ import { TextField } from '../TextField/TextField';
3
+ export var Mask = /*#__PURE__*/composeMask(TextField);
@@ -0,0 +1,125 @@
1
+ import React from 'react';
2
+ import type { ComponentProps } from 'react';
3
+ import type { StoryObj, Meta } from '@storybook/react';
4
+ import { action } from '@storybook/addon-actions';
5
+
6
+ import { WithTheme } from '../../../_helpers';
7
+
8
+ import { Mask } from './Mask';
9
+
10
+ const onChange = action('onChange');
11
+
12
+ const sizes = ['l', 'm', 's', 'xs'];
13
+ const views = ['default', 'positive', 'warning', 'negative'];
14
+
15
+ const meta: Meta<typeof Mask> = {
16
+ title: 'plasma_web/Mask',
17
+ component: Mask,
18
+ decorators: [WithTheme],
19
+ argTypes: {
20
+ view: {
21
+ options: views,
22
+ control: {
23
+ type: 'select',
24
+ },
25
+ },
26
+ size: {
27
+ options: sizes,
28
+ control: {
29
+ type: 'inline-radio',
30
+ },
31
+ },
32
+ },
33
+ };
34
+
35
+ export default meta;
36
+
37
+ type StoryPropsDefault = Omit<
38
+ ComponentProps<typeof Mask>,
39
+ | 'helperBlock'
40
+ | 'contentLeft'
41
+ | 'htmlSize'
42
+ | 'contentRight'
43
+ | 'type'
44
+ | 'name'
45
+ | 'onFocus'
46
+ | 'onBlur'
47
+ | 'onChange'
48
+ | 'value'
49
+ | 'checked'
50
+ | 'maxLength'
51
+ | 'minLength'
52
+ | 'required'
53
+ | 'enumerationType'
54
+ | 'chips'
55
+ | 'onChangeChips'
56
+ >;
57
+
58
+ const StoryDemo = ({ view, ...rest }: StoryPropsDefault) => {
59
+ return (
60
+ <div style={{ display: 'flex', flexDirection: 'column', gap: '2rem', width: '50%' }}>
61
+ <Mask
62
+ label="Маска телефона"
63
+ mask="+7 (000) 000 - 00 - 00"
64
+ maskChar="_"
65
+ showStartChars={false}
66
+ view={view}
67
+ onChange={onChange}
68
+ {...rest}
69
+ />
70
+
71
+ <Mask
72
+ label="Маска телефона: отображается всегда"
73
+ mask="+7 (000) 000 - 00 - 00"
74
+ maskChar="_"
75
+ view={view}
76
+ alwaysShowMask
77
+ onChange={onChange}
78
+ {...rest}
79
+ />
80
+
81
+ <Mask
82
+ label="Маска даты"
83
+ mask="00/00/0000"
84
+ maskString="DD/MM/YYYY"
85
+ alwaysShowMask
86
+ view={view}
87
+ onChange={onChange}
88
+ {...rest}
89
+ />
90
+
91
+ <Mask
92
+ label="Маска даты: значения по умолчанию"
93
+ // eslint-disable-next-line no-octal-escape
94
+ mask="12.\04.0000"
95
+ maskChar="_"
96
+ alwaysShowMask
97
+ view={view}
98
+ onChange={onChange}
99
+ {...rest}
100
+ />
101
+
102
+ <Mask
103
+ label="Маска времени"
104
+ mask="00:00"
105
+ maskChar="_"
106
+ alwaysShowMask
107
+ view={view}
108
+ onChange={onChange}
109
+ {...rest}
110
+ />
111
+ </div>
112
+ );
113
+ };
114
+
115
+ export const Default: StoryObj<StoryPropsDefault> = {
116
+ args: {
117
+ size: 'l',
118
+ view: 'default',
119
+ labelPlacement: 'outer',
120
+ placeholder: 'Заполните поле',
121
+ disabled: false,
122
+ readOnly: false,
123
+ },
124
+ render: (args) => <StoryDemo {...args} />,
125
+ };
@@ -9,7 +9,6 @@ export * from './components/IconButton';
9
9
  export * from './components/ButtonGroup';
10
10
  export * from './components/Breadcrumbs';
11
11
  export * from './components/Chip';
12
- export * from './components/ChipGroup';
13
12
  export * from './components/Cell';
14
13
  export * from './components/Link';
15
14
  export * from './components/Spinner';
@@ -57,4 +56,5 @@ export * from './components/Portal';
57
56
  export * from './components/Price';
58
57
  export * from './components/Autocomplete';
59
58
  export * from './components/EmptyState';
60
- export * from './components/Editable';
59
+ export * from './components/Editable';
60
+ export * from './components/Mask';
@@ -50,7 +50,7 @@ var chipRoot = function chipRoot(Root) {
50
50
  return /*#__PURE__*/React.createElement(Root, _extends({
51
51
  type: "button",
52
52
  ref: ref,
53
- className: cx(pilledClass, classes.chipItem, className),
53
+ className: cx(pilledClass, className),
54
54
  tabIndex: readOnly ? -1 : 0,
55
55
  onClick: handleClick,
56
56
  disabled: disabled,
@@ -1 +1 @@
1
- {"version":3,"file":"Chip.js","sources":["../../../src/components/Chip/Chip.tsx"],"sourcesContent":["import React, { forwardRef, useMemo } from 'react';\n\nimport type { RootProps } from '../../engines';\nimport { IconClose } from '../_Icon/Icons/IconClose';\nimport { cx } from '../../utils';\n\nimport { base as viewCSS } from './variations/_view/base';\nimport { base as sizeCSS } from './variations/_size/base';\nimport { base as disabledCSS } from './variations/_disabled/base';\nimport { base as readonlyCSS } from './variations/_readonly/base';\nimport { base as focusedCSS } from './variations/_focused/base';\nimport { base as pilledCSS } from './variations/_pilled/base';\nimport type { ChipProps } from './Chip.types';\nimport { StyledContentClear, StyledContentLeft, StyledContentMain, StyledContentRight, base } from './Chip.styles';\nimport { classes, tokens } from './Chip.tokens';\n\nexport const chipRoot = (Root: RootProps<HTMLButtonElement, ChipProps>) =>\n forwardRef<HTMLButtonElement, ChipProps>((props, ref) => {\n const {\n children,\n text,\n contentLeft,\n contentRight,\n contentClearButton,\n hasClear = true,\n size,\n className,\n onClear,\n onClick,\n pilled = false,\n readOnly = false,\n disabled = false,\n ...rest\n } = props;\n\n const txt = !text && typeof children === 'string' ? children : text;\n const pilledClass = pilled ? classes.pilled : undefined;\n\n const handleClick = (event: React.MouseEvent<HTMLButtonElement>) => {\n if (disabled || readOnly) {\n return;\n }\n\n onClick?.(event);\n onClear?.();\n };\n\n const ClearContent = useMemo(() => {\n return (\n contentClearButton || (\n <StyledContentClear>\n <IconClose sizeCustomProperty={tokens.closeIconSize} color=\"inherit\" />\n </StyledContentClear>\n )\n );\n }, [contentClearButton, tokens.closeIconSize]);\n\n return (\n <Root\n type=\"button\"\n ref={ref}\n className={cx(pilledClass, classes.chipItem, className)}\n tabIndex={readOnly ? -1 : 0}\n onClick={handleClick}\n disabled={disabled}\n pilled={pilled}\n readOnly={!disabled && readOnly}\n size={size}\n {...rest}\n >\n {contentLeft && <StyledContentLeft>{contentLeft}</StyledContentLeft>}\n {txt ? <StyledContentMain>{txt}</StyledContentMain> : children}\n {contentRight && <StyledContentRight>{contentRight}</StyledContentRight>}\n {hasClear && ClearContent}\n </Root>\n );\n });\n\nexport const chipConfig = {\n name: 'Chip',\n tag: 'button',\n layout: chipRoot,\n base,\n variations: {\n view: {\n css: viewCSS,\n },\n size: {\n css: sizeCSS,\n },\n disabled: {\n css: disabledCSS,\n attrs: true,\n },\n readOnly: {\n css: readonlyCSS,\n attrs: true,\n },\n focused: {\n css: focusedCSS,\n },\n pilled: {\n css: pilledCSS,\n attrs: true,\n },\n },\n defaults: {\n view: 'default',\n size: 'm',\n },\n};\n"],"names":["chipRoot","Root","forwardRef","props","ref","children","text","contentLeft","contentRight","contentClearButton","_props$hasClear","hasClear","size","className","onClear","onClick","_props$pilled","pilled","_props$readOnly","readOnly","_props$disabled","disabled","rest","_objectWithoutProperties","_excluded","txt","pilledClass","classes","undefined","handleClick","event","ClearContent","useMemo","React","createElement","StyledContentClear","IconClose","sizeCustomProperty","tokens","closeIconSize","color","_extends","type","cx","chipItem","tabIndex","StyledContentLeft","StyledContentMain","StyledContentRight","chipConfig","name","tag","layout","base","variations","view","css","viewCSS","sizeCSS","disabledCSS","attrs","readonlyCSS","focused","focusedCSS","pilledCSS","defaults"],"mappings":"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"}
1
+ {"version":3,"file":"Chip.js","sources":["../../../src/components/Chip/Chip.tsx"],"sourcesContent":["import React, { forwardRef, useMemo } from 'react';\n\nimport type { RootProps } from '../../engines';\nimport { IconClose } from '../_Icon/Icons/IconClose';\nimport { cx } from '../../utils';\n\nimport { base as viewCSS } from './variations/_view/base';\nimport { base as sizeCSS } from './variations/_size/base';\nimport { base as disabledCSS } from './variations/_disabled/base';\nimport { base as readonlyCSS } from './variations/_readonly/base';\nimport { base as focusedCSS } from './variations/_focused/base';\nimport { base as pilledCSS } from './variations/_pilled/base';\nimport type { ChipProps } from './Chip.types';\nimport { StyledContentClear, StyledContentLeft, StyledContentMain, StyledContentRight, base } from './Chip.styles';\nimport { classes, tokens } from './Chip.tokens';\n\nexport const chipRoot = (Root: RootProps<HTMLButtonElement, ChipProps>) =>\n forwardRef<HTMLButtonElement, ChipProps>((props, ref) => {\n const {\n children,\n text,\n contentLeft,\n contentRight,\n contentClearButton,\n hasClear = true,\n size,\n className,\n onClear,\n onClick,\n pilled = false,\n readOnly = false,\n disabled = false,\n ...rest\n } = props;\n\n const txt = !text && typeof children === 'string' ? children : text;\n const pilledClass = pilled ? classes.pilled : undefined;\n\n const handleClick = (event: React.MouseEvent<HTMLButtonElement>) => {\n if (disabled || readOnly) {\n return;\n }\n\n onClick?.(event);\n onClear?.();\n };\n\n const ClearContent = useMemo(() => {\n return (\n contentClearButton || (\n <StyledContentClear>\n <IconClose sizeCustomProperty={tokens.closeIconSize} color=\"inherit\" />\n </StyledContentClear>\n )\n );\n }, [contentClearButton, tokens.closeIconSize]);\n\n return (\n <Root\n type=\"button\"\n ref={ref}\n className={cx(pilledClass, className)}\n tabIndex={readOnly ? -1 : 0}\n onClick={handleClick}\n disabled={disabled}\n pilled={pilled}\n readOnly={!disabled && readOnly}\n size={size}\n {...rest}\n >\n {contentLeft && <StyledContentLeft>{contentLeft}</StyledContentLeft>}\n {txt ? <StyledContentMain>{txt}</StyledContentMain> : children}\n {contentRight && <StyledContentRight>{contentRight}</StyledContentRight>}\n {hasClear && ClearContent}\n </Root>\n );\n });\n\nexport const chipConfig = {\n name: 'Chip',\n tag: 'button',\n layout: chipRoot,\n base,\n variations: {\n view: {\n css: viewCSS,\n },\n size: {\n css: sizeCSS,\n },\n disabled: {\n css: disabledCSS,\n attrs: true,\n },\n readOnly: {\n css: readonlyCSS,\n attrs: true,\n },\n focused: {\n css: focusedCSS,\n },\n pilled: {\n css: pilledCSS,\n attrs: true,\n },\n },\n defaults: {\n view: 'default',\n size: 'm',\n },\n};\n"],"names":["chipRoot","Root","forwardRef","props","ref","children","text","contentLeft","contentRight","contentClearButton","_props$hasClear","hasClear","size","className","onClear","onClick","_props$pilled","pilled","_props$readOnly","readOnly","_props$disabled","disabled","rest","_objectWithoutProperties","_excluded","txt","pilledClass","classes","undefined","handleClick","event","ClearContent","useMemo","React","createElement","StyledContentClear","IconClose","sizeCustomProperty","tokens","closeIconSize","color","_extends","type","cx","tabIndex","StyledContentLeft","StyledContentMain","StyledContentRight","chipConfig","name","tag","layout","base","variations","view","css","viewCSS","sizeCSS","disabledCSS","attrs","readonlyCSS","focused","focusedCSS","pilledCSS","defaults"],"mappings":"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"}
@@ -1,6 +1,5 @@
1
1
  var classes = {
2
- pilled: 'chip-pilled',
3
- chipItem: 'chip-item'
2
+ pilled: 'chip-pilled'
4
3
  };
5
4
  var tokens = {
6
5
  background: '--plasma-chip-background',
@@ -1 +1 @@
1
- {"version":3,"file":"Chip.tokens.js","sources":["../../../src/components/Chip/Chip.tokens.ts"],"sourcesContent":["export const classes = {\n pilled: 'chip-pilled',\n chipItem: 'chip-item',\n};\n\nexport const tokens = {\n background: '--plasma-chip-background',\n color: '--plasma-chip-color',\n backgroundHover: '--plasma-chip-background-hover',\n colorHover: '--plasma-chip-color-hover',\n scaleHover: '--plasma-chip-scale-hover',\n backgroundReadOnly: '--plasma-chip-background-readonly',\n colorReadOnly: '--plasma-chip-color-readonly',\n backgroundReadOnlyHover: '--plasma-chip-background-readonly-hover',\n colorReadOnlyHover: '--plasma-chip-color-readonly-hover',\n backgroundActive: '--plasma-chip-background-active',\n colorActive: '--plasma-chip-color-active',\n scaleActive: '--plasma-chip-scale-active',\n focusColor: '--plasma-chip-focus-color',\n outlineSize: '--plasma-chip-outline-size',\n closeIconColor: '--plasma-chip-close-icon-color',\n closeIconColorHover: '--plasma-chip-close-icon-color-hover',\n closeIconColorActive: '--plasma-chip-close-icon-color-active',\n\n borderRadius: '--plasma-chip-border-radius',\n pilledBorderRadius: '--plasma-chip-pilled-border-radius',\n width: '--plasma-chip-width',\n height: '--plasma-chip-height',\n paddingTop: '--plasma-chip-padding-top',\n paddingRight: '--plasma-chip-padding-right',\n paddingBottom: '--plasma-chip-padding-bottom',\n paddingLeft: '--plasma-chip-padding-left',\n closeIconSize: '--plasma-chip-close-icon-size',\n\n disabledOpacity: '--plasma-chip-disabled-opacity',\n\n fontFamily: '--plasma-chip-font-family',\n fontSize: '--plasma-chip-font-size',\n fontStyle: '--plasma-chip-font-style',\n fontWeight: '--plasma-chip-font-weight',\n letterSpacing: '--plasma-chip-letter-spacing',\n lineHeight: '--plasma-chip-lineheight',\n\n leftContentMarginLeft: '--plasma-chip-left-content-margin-left',\n leftContentMarginRight: '--plasma-chip-left-content-margin-right',\n rightContentMarginLeft: '--plasma-chip-right-content-margin-left',\n rightContentMarginRight: '--plasma-chip-right-content-margin-right',\n clearContentMarginLeft: '--plasma-chip-clear-content-margin-left',\n clearContentMarginRight: '--plasma-chip-clear-content-margin-right',\n};\n"],"names":["classes","pilled","chipItem","tokens","background","color","backgroundHover","colorHover","scaleHover","backgroundReadOnly","colorReadOnly","backgroundReadOnlyHover","colorReadOnlyHover","backgroundActive","colorActive","scaleActive","focusColor","outlineSize","closeIconColor","closeIconColorHover","closeIconColorActive","borderRadius","pilledBorderRadius","width","height","paddingTop","paddingRight","paddingBottom","paddingLeft","closeIconSize","disabledOpacity","fontFamily","fontSize","fontStyle","fontWeight","letterSpacing","lineHeight","leftContentMarginLeft","leftContentMarginRight","rightContentMarginLeft","rightContentMarginRight","clearContentMarginLeft","clearContentMarginRight"],"mappings":"AAAO,IAAMA,OAAO,GAAG;AACnBC,EAAAA,MAAM,EAAE,aAAa;AACrBC,EAAAA,QAAQ,EAAE,WAAA;AACd,EAAC;AAEM,IAAMC,MAAM,GAAG;AAClBC,EAAAA,UAAU,EAAE,0BAA0B;AACtCC,EAAAA,KAAK,EAAE,qBAAqB;AAC5BC,EAAAA,eAAe,EAAE,gCAAgC;AACjDC,EAAAA,UAAU,EAAE,2BAA2B;AACvCC,EAAAA,UAAU,EAAE,2BAA2B;AACvCC,EAAAA,kBAAkB,EAAE,mCAAmC;AACvDC,EAAAA,aAAa,EAAE,8BAA8B;AAC7CC,EAAAA,uBAAuB,EAAE,yCAAyC;AAClEC,EAAAA,kBAAkB,EAAE,oCAAoC;AACxDC,EAAAA,gBAAgB,EAAE,iCAAiC;AACnDC,EAAAA,WAAW,EAAE,4BAA4B;AACzCC,EAAAA,WAAW,EAAE,4BAA4B;AACzCC,EAAAA,UAAU,EAAE,2BAA2B;AACvCC,EAAAA,WAAW,EAAE,4BAA4B;AACzCC,EAAAA,cAAc,EAAE,gCAAgC;AAChDC,EAAAA,mBAAmB,EAAE,sCAAsC;AAC3DC,EAAAA,oBAAoB,EAAE,uCAAuC;AAE7DC,EAAAA,YAAY,EAAE,6BAA6B;AAC3CC,EAAAA,kBAAkB,EAAE,oCAAoC;AACxDC,EAAAA,KAAK,EAAE,qBAAqB;AAC5BC,EAAAA,MAAM,EAAE,sBAAsB;AAC9BC,EAAAA,UAAU,EAAE,2BAA2B;AACvCC,EAAAA,YAAY,EAAE,6BAA6B;AAC3CC,EAAAA,aAAa,EAAE,8BAA8B;AAC7CC,EAAAA,WAAW,EAAE,4BAA4B;AACzCC,EAAAA,aAAa,EAAE,+BAA+B;AAE9CC,EAAAA,eAAe,EAAE,gCAAgC;AAEjDC,EAAAA,UAAU,EAAE,2BAA2B;AACvCC,EAAAA,QAAQ,EAAE,yBAAyB;AACnCC,EAAAA,SAAS,EAAE,0BAA0B;AACrCC,EAAAA,UAAU,EAAE,2BAA2B;AACvCC,EAAAA,aAAa,EAAE,8BAA8B;AAC7CC,EAAAA,UAAU,EAAE,0BAA0B;AAEtCC,EAAAA,qBAAqB,EAAE,wCAAwC;AAC/DC,EAAAA,sBAAsB,EAAE,yCAAyC;AACjEC,EAAAA,sBAAsB,EAAE,yCAAyC;AACjEC,EAAAA,uBAAuB,EAAE,0CAA0C;AACnEC,EAAAA,sBAAsB,EAAE,yCAAyC;AACjEC,EAAAA,uBAAuB,EAAE,0CAAA;AAC7B;;;;"}
1
+ {"version":3,"file":"Chip.tokens.js","sources":["../../../src/components/Chip/Chip.tokens.ts"],"sourcesContent":["export const classes = {\n pilled: 'chip-pilled',\n};\n\nexport const tokens = {\n background: '--plasma-chip-background',\n color: '--plasma-chip-color',\n backgroundHover: '--plasma-chip-background-hover',\n colorHover: '--plasma-chip-color-hover',\n scaleHover: '--plasma-chip-scale-hover',\n backgroundReadOnly: '--plasma-chip-background-readonly',\n colorReadOnly: '--plasma-chip-color-readonly',\n backgroundReadOnlyHover: '--plasma-chip-background-readonly-hover',\n colorReadOnlyHover: '--plasma-chip-color-readonly-hover',\n backgroundActive: '--plasma-chip-background-active',\n colorActive: '--plasma-chip-color-active',\n scaleActive: '--plasma-chip-scale-active',\n focusColor: '--plasma-chip-focus-color',\n outlineSize: '--plasma-chip-outline-size',\n closeIconColor: '--plasma-chip-close-icon-color',\n closeIconColorHover: '--plasma-chip-close-icon-color-hover',\n closeIconColorActive: '--plasma-chip-close-icon-color-active',\n\n borderRadius: '--plasma-chip-border-radius',\n pilledBorderRadius: '--plasma-chip-pilled-border-radius',\n width: '--plasma-chip-width',\n height: '--plasma-chip-height',\n paddingTop: '--plasma-chip-padding-top',\n paddingRight: '--plasma-chip-padding-right',\n paddingBottom: '--plasma-chip-padding-bottom',\n paddingLeft: '--plasma-chip-padding-left',\n closeIconSize: '--plasma-chip-close-icon-size',\n\n disabledOpacity: '--plasma-chip-disabled-opacity',\n\n fontFamily: '--plasma-chip-font-family',\n fontSize: '--plasma-chip-font-size',\n fontStyle: '--plasma-chip-font-style',\n fontWeight: '--plasma-chip-font-weight',\n letterSpacing: '--plasma-chip-letter-spacing',\n lineHeight: '--plasma-chip-lineheight',\n\n leftContentMarginLeft: '--plasma-chip-left-content-margin-left',\n leftContentMarginRight: '--plasma-chip-left-content-margin-right',\n rightContentMarginLeft: '--plasma-chip-right-content-margin-left',\n rightContentMarginRight: '--plasma-chip-right-content-margin-right',\n clearContentMarginLeft: '--plasma-chip-clear-content-margin-left',\n clearContentMarginRight: '--plasma-chip-clear-content-margin-right',\n};\n"],"names":["classes","pilled","tokens","background","color","backgroundHover","colorHover","scaleHover","backgroundReadOnly","colorReadOnly","backgroundReadOnlyHover","colorReadOnlyHover","backgroundActive","colorActive","scaleActive","focusColor","outlineSize","closeIconColor","closeIconColorHover","closeIconColorActive","borderRadius","pilledBorderRadius","width","height","paddingTop","paddingRight","paddingBottom","paddingLeft","closeIconSize","disabledOpacity","fontFamily","fontSize","fontStyle","fontWeight","letterSpacing","lineHeight","leftContentMarginLeft","leftContentMarginRight","rightContentMarginLeft","rightContentMarginRight","clearContentMarginLeft","clearContentMarginRight"],"mappings":"AAAO,IAAMA,OAAO,GAAG;AACnBC,EAAAA,MAAM,EAAE,aAAA;AACZ,EAAC;AAEM,IAAMC,MAAM,GAAG;AAClBC,EAAAA,UAAU,EAAE,0BAA0B;AACtCC,EAAAA,KAAK,EAAE,qBAAqB;AAC5BC,EAAAA,eAAe,EAAE,gCAAgC;AACjDC,EAAAA,UAAU,EAAE,2BAA2B;AACvCC,EAAAA,UAAU,EAAE,2BAA2B;AACvCC,EAAAA,kBAAkB,EAAE,mCAAmC;AACvDC,EAAAA,aAAa,EAAE,8BAA8B;AAC7CC,EAAAA,uBAAuB,EAAE,yCAAyC;AAClEC,EAAAA,kBAAkB,EAAE,oCAAoC;AACxDC,EAAAA,gBAAgB,EAAE,iCAAiC;AACnDC,EAAAA,WAAW,EAAE,4BAA4B;AACzCC,EAAAA,WAAW,EAAE,4BAA4B;AACzCC,EAAAA,UAAU,EAAE,2BAA2B;AACvCC,EAAAA,WAAW,EAAE,4BAA4B;AACzCC,EAAAA,cAAc,EAAE,gCAAgC;AAChDC,EAAAA,mBAAmB,EAAE,sCAAsC;AAC3DC,EAAAA,oBAAoB,EAAE,uCAAuC;AAE7DC,EAAAA,YAAY,EAAE,6BAA6B;AAC3CC,EAAAA,kBAAkB,EAAE,oCAAoC;AACxDC,EAAAA,KAAK,EAAE,qBAAqB;AAC5BC,EAAAA,MAAM,EAAE,sBAAsB;AAC9BC,EAAAA,UAAU,EAAE,2BAA2B;AACvCC,EAAAA,YAAY,EAAE,6BAA6B;AAC3CC,EAAAA,aAAa,EAAE,8BAA8B;AAC7CC,EAAAA,WAAW,EAAE,4BAA4B;AACzCC,EAAAA,aAAa,EAAE,+BAA+B;AAE9CC,EAAAA,eAAe,EAAE,gCAAgC;AAEjDC,EAAAA,UAAU,EAAE,2BAA2B;AACvCC,EAAAA,QAAQ,EAAE,yBAAyB;AACnCC,EAAAA,SAAS,EAAE,0BAA0B;AACrCC,EAAAA,UAAU,EAAE,2BAA2B;AACvCC,EAAAA,aAAa,EAAE,8BAA8B;AAC7CC,EAAAA,UAAU,EAAE,0BAA0B;AAEtCC,EAAAA,qBAAqB,EAAE,wCAAwC;AAC/DC,EAAAA,sBAAsB,EAAE,yCAAyC;AACjEC,EAAAA,sBAAsB,EAAE,yCAAyC;AACjEC,EAAAA,uBAAuB,EAAE,0CAA0C;AACnEC,EAAAA,sBAAsB,EAAE,yCAAyC;AACjEC,EAAAA,uBAAuB,EAAE,0CAAA;AAC7B;;;;"}
@@ -0,0 +1,41 @@
1
+ import { objectWithoutProperties as _objectWithoutProperties, slicedToArray as _slicedToArray, extends as _extends } from '../../_virtual/_rollupPluginBabelHelpers.js';
2
+ import React, { forwardRef, useState, useImperativeHandle } from 'react';
3
+ import maskInputCompose from '@salutejs/react-maskinput';
4
+
5
+ var _excluded = ["maskFormat"];
6
+ var defaultFormatChars = [{
7
+ str: '0',
8
+ regexp: /[0-9]/
9
+ }, {
10
+ str: '*',
11
+ regexp: /./
12
+ }, {
13
+ str: 'a',
14
+ regexp: /[a-zA-Z]/
15
+ }, {
16
+ str: 'я',
17
+ regexp: /[а-яА-ЯёЁ]/
18
+ }];
19
+ var composeMask = function composeMask(InputComponent) {
20
+ var MaskedInput = maskInputCompose(InputComponent);
21
+ return /*#__PURE__*/forwardRef(function (_ref, outerRef) {
22
+ var _ref$maskFormat = _ref.maskFormat,
23
+ maskFormat = _ref$maskFormat === void 0 ? defaultFormatChars : _ref$maskFormat,
24
+ rest = _objectWithoutProperties(_ref, _excluded);
25
+ // TODO: replace inside react-maskinput 'getReference' on 'forwardRef'
26
+ var _useState = useState(null),
27
+ _useState2 = _slicedToArray(_useState, 2),
28
+ ref = _useState2[0],
29
+ setRef = _useState2[1];
30
+ useImperativeHandle(outerRef, function () {
31
+ return ref;
32
+ }, [ref]);
33
+ return /*#__PURE__*/React.createElement(MaskedInput, _extends({
34
+ getReference: setRef,
35
+ maskFormat: maskFormat
36
+ }, rest));
37
+ });
38
+ };
39
+
40
+ export { composeMask };
41
+ //# sourceMappingURL=Mask.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Mask.js","sources":["../../../src/components/Mask/Mask.tsx"],"sourcesContent":["import React, { forwardRef, useImperativeHandle, useState } from 'react';\nimport type { FC } from 'react';\nimport maskInputCompose from '@salutejs/react-maskinput';\n\nimport type { CustomInputProps, MaskProps } from './Mask.types';\n\nconst defaultFormatChars = [\n {\n str: '0',\n regexp: /[0-9]/,\n },\n {\n str: '*',\n regexp: /./,\n },\n {\n str: 'a',\n regexp: /[a-zA-Z]/,\n },\n {\n str: 'я',\n regexp: /[а-яА-ЯёЁ]/,\n },\n];\n\nexport const composeMask = <T extends CustomInputProps>(InputComponent: FC<T>) => {\n const MaskedInput = maskInputCompose(InputComponent);\n\n return forwardRef<HTMLInputElement, T & MaskProps>(({ maskFormat = defaultFormatChars, ...rest }, outerRef) => {\n // TODO: replace inside react-maskinput 'getReference' on 'forwardRef'\n const [ref, setRef] = useState<HTMLInputElement | null>(null);\n\n useImperativeHandle(outerRef, () => ref as HTMLInputElement, [ref]);\n\n return <MaskedInput getReference={setRef} maskFormat={maskFormat} {...(rest as T)} />;\n });\n};\n"],"names":["defaultFormatChars","str","regexp","composeMask","InputComponent","MaskedInput","maskInputCompose","forwardRef","_ref","outerRef","_ref$maskFormat","maskFormat","rest","_objectWithoutProperties","_excluded","_useState","useState","_useState2","_slicedToArray","ref","setRef","useImperativeHandle","React","createElement","_extends","getReference"],"mappings":";;;;;AAMA,IAAMA,kBAAkB,GAAG,CACvB;AACIC,EAAAA,GAAG,EAAE,GAAG;AACRC,EAAAA,MAAM,EAAE,OAAA;AACZ,CAAC,EACD;AACID,EAAAA,GAAG,EAAE,GAAG;AACRC,EAAAA,MAAM,EAAE,GAAA;AACZ,CAAC,EACD;AACID,EAAAA,GAAG,EAAE,GAAG;AACRC,EAAAA,MAAM,EAAE,UAAA;AACZ,CAAC,EACD;AACID,EAAAA,GAAG,EAAE,GAAG;AACRC,EAAAA,MAAM,EAAE,YAAA;AACZ,CAAC,CACJ,CAAA;IAEYC,WAAW,GAAG,SAAdA,WAAWA,CAAgCC,cAAqB,EAAK;AAC9E,EAAA,IAAMC,WAAW,GAAGC,gBAAgB,CAACF,cAAc,CAAC,CAAA;AAEpD,EAAA,oBAAOG,UAAU,CAAkC,UAAAC,IAAA,EAA+CC,QAAQ,EAAK;AAAA,IAAA,IAAAC,eAAA,GAAAF,IAAA,CAAzDG,UAAU;AAAVA,MAAAA,UAAU,GAAAD,eAAA,KAAGV,KAAAA,CAAAA,GAAAA,kBAAkB,GAAAU,eAAA;AAAKE,MAAAA,IAAI,GAAAC,wBAAA,CAAAL,IAAA,EAAAM,SAAA,CAAA,CAAA;AAC1F;AACA,IAAA,IAAAC,SAAA,GAAsBC,QAAQ,CAA0B,IAAI,CAAC;MAAAC,UAAA,GAAAC,cAAA,CAAAH,SAAA,EAAA,CAAA,CAAA;AAAtDI,MAAAA,GAAG,GAAAF,UAAA,CAAA,CAAA,CAAA;AAAEG,MAAAA,MAAM,GAAAH,UAAA,CAAA,CAAA,CAAA,CAAA;IAElBI,mBAAmB,CAACZ,QAAQ,EAAE,YAAA;AAAA,MAAA,OAAMU,GAAG,CAAA;AAAA,KAAoB,EAAE,CAACA,GAAG,CAAC,CAAC,CAAA;AAEnE,IAAA,oBAAOG,KAAA,CAAAC,aAAA,CAAClB,WAAW,EAAAmB,QAAA,CAAA;AAACC,MAAAA,YAAY,EAAEL,MAAO;AAACT,MAAAA,UAAU,EAAEA,UAAAA;KAAiBC,EAAAA,IAAI,CAAS,CAAC,CAAA;AACzF,GAAC,CAAC,CAAA;AACN;;;;"}
@@ -142,7 +142,9 @@ var textFieldRoot = function textFieldRoot(Root) {
142
142
  };
143
143
  var handleOnKeyDown = function handleOnKeyDown(event) {
144
144
  handleInputKeydown(event);
145
- onKeyDown && onKeyDown(event);
145
+ if (onKeyDown) {
146
+ onKeyDown(event);
147
+ }
146
148
  };
147
149
  useEffect(function () {
148
150
  if (!isChipEnumeration && !(values !== null && values !== void 0 && values.length)) {