@provoly/dashboard 0.23.7 → 0.23.9

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.
@@ -0,0 +1,25 @@
1
+ <svg width="335" height="110" viewBox="0 0 335 110" fill="none" xmlns="http://www.w3.org/2000/svg">
2
+ <rect width="335" height="110" fill="#5982B0"/>
3
+ <rect x="118" y="13" width="100" height="83" rx="11" fill="#113B6E"/>
4
+ <g clip-path="url(#clip0_6691_19466)">
5
+ <path d="M159.65 54.9354C159.65 50.3111 163.405 46.5606 168.036 46.5606C168.036 41.7171 168.036 36.8706 168.036 32.027C167.098 31.946 166.175 32.0691 165.243 32.1802C160.194 32.7747 155.759 34.7926 152.186 38.3479C145.325 45.1733 143.412 53.353 146.299 62.5536C147.336 65.8597 149.149 68.8024 151.775 71.1656C155.22 67.7304 158.666 64.2952 162.112 60.86C160.591 59.3436 159.65 57.2476 159.65 54.9324V54.9354Z" fill="#9CCBB9"/>
6
+ <path d="M187.692 43.0143C183.128 35.8796 176.591 32.1141 168.036 32.027C168.036 36.8706 168.036 41.7171 168.036 46.5606C172.667 46.5606 176.419 50.3081 176.422 54.9325C181.276 54.9325 186.129 54.9325 190.979 54.9325C191.168 50.6054 189.993 46.6117 187.692 43.0143Z" fill="#F8A59A"/>
7
+ <path d="M190.979 54.9324C186.126 54.9324 181.273 54.9324 176.422 54.9324C176.422 54.9324 176.422 54.9324 176.422 54.9354C176.422 58.3857 174.333 61.3494 171.347 62.6316C173.256 67.1118 175.165 71.592 177.075 76.0722C180.635 74.7299 183.522 72.4568 185.876 69.5231C189.286 65.2711 191.159 60.4516 190.982 54.9324H190.979Z" fill="#A4C6F0"/>
8
+ <path d="M171.347 62.6316C170.33 63.067 169.212 63.3103 168.036 63.3103C165.724 63.3103 163.628 62.3764 162.112 60.863C158.667 64.2982 155.221 67.7334 151.775 71.1686C151.916 71.3398 152.039 71.5259 152.202 71.6791C156.381 75.5947 161.37 77.6817 167.059 77.97C170.52 78.1471 173.915 77.6246 177.078 76.0722C175.169 71.592 173.259 67.1118 171.35 62.6316H171.347Z" fill="#FFE5BA"/>
9
+ </g>
10
+ <rect x="13" y="13" width="100" height="83" rx="11" fill="#113B6E"/>
11
+ <path d="M72.8498 50.7837C60.9579 44.5293 46.719 51.0875 43.7329 64.1986C42.8738 67.9649 42.3132 68.4101 38.4418 68.4154C37.0693 68.4154 35.702 68.4206 34.3294 68.4154C30.9767 68.3944 29.5622 66.7653 30.1175 63.4496C30.9767 58.2952 32.8574 53.5495 35.8696 49.2594C47.0333 33.3563 69.586 30.2344 84.5531 42.5336C80.6502 45.2836 76.7526 48.0389 72.855 50.7889L72.8498 50.7837Z" fill="#9CCBB9"/>
12
+ <path d="M72.8497 50.7837C76.7474 48.0336 80.6502 45.2784 84.5478 42.5283C85.1084 42.2193 85.6846 41.9364 86.2242 41.6012C86.9943 41.1193 87.7591 40.8678 88.503 41.5907C89.1631 42.235 89.0007 42.9893 88.6445 43.7226C88.393 44.2412 88.1206 44.7545 87.8587 45.2679C85.3389 49.4218 82.819 53.5809 80.2992 57.7347C76.6793 62.8472 72.986 67.902 68.7321 72.5221C66.7414 74.6854 64.3683 75.6283 61.5184 74.8478C56.7459 73.5383 55.1743 68.033 58.459 63.9891C60.9736 60.8881 64.0435 58.3214 67.04 55.6971C68.9469 54.0261 70.9167 52.418 72.855 50.7837H72.8497Z" fill="white"/>
13
+ <path d="M80.2993 57.7347C82.8191 53.5809 85.339 49.4217 87.8588 45.2679C91.1749 49.2541 94.0824 53.4761 95.5388 58.5362C96.0993 60.4743 96.6965 62.4072 96.7384 64.4553C96.7908 67.0848 95.6331 68.3577 93.0451 68.4049C91.0858 68.4415 89.1266 68.4363 87.1673 68.4049C84.9775 68.3734 83.8616 67.4358 83.3535 65.2515C82.7301 62.5853 82.1067 59.919 80.2993 57.7295V57.7347Z" fill="#9CCBB9"/>
14
+ <path d="M282.952 68.3583C285.199 68.3583 287.452 68.3583 289.699 68.3583C291.899 68.3583 294.1 68.3635 296.3 68.3688C297.473 68.3792 298.652 68.3164 299.82 68.4159C301.984 68.6045 303.037 69.804 302.984 71.8522C302.932 73.8531 301.732 75.0422 299.59 75.0422C281.846 75.0579 264.108 75.0579 246.364 75.0422C244.237 75.0422 243.043 73.8269 243.001 71.8207C242.959 69.6993 244.164 68.4578 246.359 68.395C247.47 68.3635 248.575 68.3792 249.686 68.3792C251.875 68.3635 254.065 68.3478 256.255 68.3373C258.508 68.3478 260.755 68.3583 263.008 68.374C265.208 68.3688 267.403 68.3635 269.603 68.3583C271.856 68.3583 274.103 68.3635 276.356 68.3688C278.556 68.3688 280.757 68.3688 282.957 68.3688L282.952 68.3583Z" fill="white"/>
15
+ <rect x="223" y="13" width="100" height="83" rx="11" fill="#113B6E"/>
16
+ <path d="M269.603 68.3478C267.403 68.3531 265.208 68.3583 263.008 68.3636C262.987 58.521 262.961 48.6838 262.961 38.8413C262.961 36.395 264.113 35.0593 266.162 35.0017C268.268 34.9441 269.624 36.3688 269.624 38.8203C269.64 48.6628 269.614 58.5053 269.603 68.3478Z" fill="#FFE5BA"/>
17
+ <path d="M296.3 68.3635C294.1 68.3635 291.899 68.3583 289.699 68.3531C289.689 60.7106 289.657 53.0733 289.678 45.4309C289.683 43.0842 290.998 41.6856 293.031 41.6908C295.085 41.6908 296.337 43.058 296.337 45.4413C296.342 53.0838 296.316 60.7211 296.3 68.3635Z" fill="#F8A59A"/>
18
+ <path d="M282.952 68.3583C280.751 68.3583 278.551 68.3583 276.351 68.3583C276.34 61.7634 276.304 55.1686 276.325 48.579C276.33 46.468 277.802 44.9384 279.641 44.9542C281.516 44.9751 282.967 46.4628 282.973 48.5737C282.999 55.1686 282.962 61.7634 282.952 68.3583Z" fill="#A4C6F0"/>
19
+ <path d="M256.25 68.3321C254.06 68.3478 251.87 68.3635 249.681 68.374C249.654 62.832 249.597 57.2953 249.623 51.7533C249.633 49.6528 250.933 48.3904 252.871 48.3747C254.778 48.359 256.224 49.7681 256.266 51.9C256.334 55.42 256.292 58.9401 256.287 62.4654C256.287 64.4192 256.266 66.3783 256.255 68.3321H256.25Z" fill="#5DC19B"/>
20
+ <defs>
21
+ <clipPath id="clip0_6691_19466">
22
+ <rect width="46" height="46" fill="white" transform="translate(145 32)"/>
23
+ </clipPath>
24
+ </defs>
25
+ </svg>
@@ -1,6 +1,18 @@
1
- <svg width="58" height="58" viewBox="0 0 58 58" fill="none" xmlns="http://www.w3.org/2000/svg">
2
- <rect width="25.5882" height="32.4118" rx="2" fill="#7BCCAD" />
3
- <rect x="58" y="58" width="25.5882" height="32.4118" rx="2" transform="rotate(-180 58 58)" fill="#A7DDC8" />
4
- <rect y="39.2354" width="25.5882" height="18.7647" rx="2" fill="#7BCCAD" />
5
- <rect x="58" y="18.7646" width="25.5882" height="18.7647" rx="2" transform="rotate(-180 58 18.7646)" fill="#7BCCAD" />
1
+ <svg width="335" height="110" viewBox="0 0 335 110" fill="none" xmlns="http://www.w3.org/2000/svg">
2
+ <rect width="335" height="110" fill="#5982B0"/>
3
+ <g clip-path="url(#clip0_6691_19502)">
4
+ <path d="M76.7008 55.409C76.7008 48.8746 82.0077 43.575 88.5511 43.575C88.5511 36.7309 88.5511 29.8825 88.5511 23.0384C87.2254 22.9238 85.921 23.0978 84.6038 23.2548C77.4699 24.0949 71.2027 26.9463 66.155 31.9701C56.459 41.6147 53.7567 53.1729 57.8356 66.1737C59.3015 70.8454 61.8636 75.0036 65.5729 78.3429C70.4422 73.4888 75.3114 68.6347 80.1807 63.7806C78.0307 61.6378 76.7008 58.6762 76.7008 55.4047V55.409Z" fill="#9CCBB9"/>
5
+ <path d="M116.326 38.5637C109.876 28.4821 100.639 23.1613 88.551 23.0382C88.551 29.8823 88.551 36.7307 88.551 43.5748C95.0944 43.5748 100.397 48.8702 100.401 55.4046C107.259 55.4046 114.117 55.4046 120.97 55.4046C121.238 49.2903 119.577 43.6469 116.326 38.5637Z" fill="#F8A59A"/>
6
+ <path d="M120.97 55.4045C114.112 55.4045 107.255 55.4045 100.401 55.4045C100.401 55.4045 100.401 55.4045 100.401 55.4088C100.401 60.2841 97.4482 64.472 93.229 66.2838C95.9271 72.6145 98.6251 78.9452 101.323 85.2759C106.354 83.3793 110.433 80.1672 113.76 76.0217C118.578 70.0135 121.225 63.2034 120.974 55.4045H120.97Z" fill="#A4C6F0"/>
7
+ <path d="M93.229 66.2839C91.7929 66.8991 90.2123 67.2428 88.5509 67.2428C85.2835 67.2428 82.322 65.9232 80.1805 63.7847C75.3113 68.6388 70.442 73.4929 65.5728 78.347C65.7725 78.5888 65.9467 78.8519 66.1761 79.0683C72.0821 84.6013 79.1311 87.5502 87.17 87.9576C92.0605 88.2079 96.8576 87.4696 101.327 85.276C98.6294 78.9453 95.9313 72.6146 93.2332 66.2839H93.229Z" fill="#FFE5BA"/>
8
+ </g>
9
+ <rect x="153" y="34" width="94" height="6" rx="3" fill="#113B6E"/>
10
+ <rect x="153" y="46" width="94" height="6" rx="3" fill="#113B6E"/>
11
+ <rect x="153" y="58" width="94" height="6" rx="3" fill="#113B6E"/>
12
+ <rect x="153" y="70" width="94" height="6" rx="3" fill="#113B6E"/>
13
+ <defs>
14
+ <clipPath id="clip0_6691_19502">
15
+ <rect width="65" height="65" fill="white" transform="translate(56 23)"/>
16
+ </clipPath>
17
+ </defs>
6
18
  </svg>
@@ -1,28 +1,12 @@
1
- <?xml version="1.0" encoding="UTF-8"?>
2
- <svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="512px" height="512px"
3
- viewBox="0 0 512 512" version="1.1">
4
- <g id="surface1">
5
- <path style=" stroke:none;fill-rule:nonzero;fill:rgb(11.372549%,11.372549%,10.588235%);fill-opacity:1;"
6
- d="M 366.933594 83.199219 L 147.199219 83.199219 C 140.800781 83.199219 134.398438 76.800781 134.398438 70.398438 C 134.398438 64 140.800781 57.601562 147.199219 57.601562 L 366.933594 57.601562 C 373.332031 57.601562 379.734375 64 379.734375 70.398438 C 379.734375 76.800781 373.332031 83.199219 366.933594 83.199219 Z M 366.933594 83.199219 " />
7
- <path style=" stroke:none;fill-rule:nonzero;fill:rgb(11.372549%,11.372549%,10.588235%);fill-opacity:1;"
8
- d="M 366.933594 454.398438 L 145.066406 454.398438 C 138.667969 454.398438 132.265625 448 132.265625 441.601562 C 132.265625 435.199219 138.667969 428.800781 145.066406 428.800781 L 364.800781 428.800781 C 371.199219 428.800781 377.601562 435.199219 377.601562 441.601562 C 379.734375 450.132812 373.332031 454.398438 366.933594 454.398438 Z M 366.933594 454.398438 " />
9
- <path style=" stroke:none;fill-rule:nonzero;fill:rgb(11.372549%,11.372549%,10.588235%);fill-opacity:1;"
10
- d="M 454.398438 145.066406 L 454.398438 369.066406 C 454.398438 375.464844 448 381.867188 441.601562 381.867188 C 435.199219 381.867188 428.800781 375.464844 428.800781 369.066406 L 428.800781 145.066406 C 428.800781 138.667969 435.199219 132.265625 441.601562 132.265625 C 448 132.265625 454.398438 136.535156 454.398438 145.066406 Z M 454.398438 145.066406 " />
11
- <path style=" stroke:none;fill-rule:nonzero;fill:rgb(11.372549%,11.372549%,10.588235%);fill-opacity:1;"
12
- d="M 83.199219 145.066406 L 83.199219 369.066406 C 83.199219 375.464844 76.800781 381.867188 70.398438 381.867188 C 64 381.867188 57.601562 375.464844 57.601562 369.066406 L 57.601562 145.066406 C 57.601562 138.667969 64 132.265625 70.398438 132.265625 C 76.800781 132.265625 83.199219 136.535156 83.199219 145.066406 Z M 83.199219 145.066406 " />
13
- <path style=" stroke:none;fill-rule:nonzero;fill:rgb(11.372549%,11.372549%,10.588235%);fill-opacity:1;"
14
- d="M 91.734375 106.667969 L 49.066406 106.667969 C 40.535156 106.667969 34.132812 100.265625 34.132812 91.734375 L 34.132812 49.066406 C 34.132812 40.535156 40.535156 34.132812 49.066406 34.132812 L 93.867188 34.132812 C 100.265625 32 106.667969 40.535156 106.667969 49.066406 L 106.667969 93.867188 C 106.667969 100.265625 100.265625 106.667969 91.734375 106.667969 Z M 91.734375 106.667969 " />
15
- <path style=" stroke:none;fill-rule:nonzero;fill:rgb(11.372549%,11.372549%,10.588235%);fill-opacity:1;"
16
- d="M 462.933594 106.667969 L 418.132812 106.667969 C 411.734375 106.667969 405.332031 100.265625 405.332031 91.734375 L 405.332031 49.066406 C 405.332031 40.535156 411.734375 34.132812 420.265625 34.132812 L 465.066406 34.132812 C 473.601562 34.132812 480 40.535156 480 49.066406 L 480 93.867188 C 477.867188 100.265625 471.464844 106.667969 462.933594 106.667969 Z M 462.933594 106.667969 " />
17
- <path style=" stroke:none;fill-rule:nonzero;fill:rgb(11.372549%,11.372549%,10.588235%);fill-opacity:1;"
18
- d="M 462.933594 480 L 418.132812 480 C 409.601562 480 403.199219 473.601562 403.199219 465.066406 L 403.199219 420.265625 C 403.199219 411.734375 409.601562 405.332031 418.132812 405.332031 L 462.933594 405.332031 C 471.464844 405.332031 477.867188 411.734375 477.867188 420.265625 L 477.867188 465.066406 C 477.867188 471.464844 471.464844 480 462.933594 480 Z M 462.933594 480 " />
19
- <path style=" stroke:none;fill-rule:nonzero;fill:rgb(11.372549%,11.372549%,10.588235%);fill-opacity:1;"
20
- d="M 91.734375 480 L 49.066406 480 C 40.535156 480 34.132812 473.601562 34.132812 465.066406 L 34.132812 420.265625 C 34.132812 411.734375 40.535156 405.332031 49.066406 405.332031 L 93.867188 405.332031 C 100.265625 405.332031 106.667969 411.734375 106.667969 420.265625 L 106.667969 465.066406 C 106.667969 471.464844 100.265625 480 91.734375 480 Z M 91.734375 480 " />
21
- <path style=" stroke:none;fill-rule:nonzero;fill:rgb(11.372549%,11.372549%,10.588235%);fill-opacity:1;"
22
- d="M 168.535156 194.132812 L 256 243.199219 L 345.601562 194.132812 L 260.265625 145.066406 C 260.265625 145.066406 256 142.933594 251.734375 145.066406 C 247.464844 147.199219 168.535156 194.132812 168.535156 194.132812 Z M 168.535156 194.132812 " />
23
- <path style=" stroke:none;fill-rule:nonzero;fill:rgb(11.372549%,11.372549%,10.588235%);fill-opacity:1;"
24
- d="M 157.867188 217.601562 L 157.867188 307.199219 C 157.867188 307.199219 157.867188 313.601562 162.132812 315.734375 C 168.535156 320 243.199219 362.667969 243.199219 362.667969 L 243.199219 264.535156 Z M 157.867188 217.601562 " />
25
- <path style=" stroke:none;fill-rule:nonzero;fill:rgb(11.372549%,11.372549%,10.588235%);fill-opacity:1;"
26
- d="M 268.800781 264.535156 L 268.800781 362.667969 L 349.867188 315.734375 C 349.867188 315.734375 356.265625 311.464844 356.265625 307.199219 C 356.265625 302.933594 356.265625 217.601562 356.265625 217.601562 Z M 268.800781 264.535156 " />
27
- </g>
1
+ <svg width="25" height="25" viewBox="0 0 25 25" fill="none" xmlns="http://www.w3.org/2000/svg">
2
+ <g clip-path="url(#clip0_6691_19392)">
3
+ <path d="M25.0001 22.343V2.66035H25.0011C24.9007 2.33339 24.84 1.98411 24.6945 1.68169C24.1881 0.631608 23.3615 0.0736472 22.2554 0.0122715C21.8338 -0.0111628 21.4089 0.00669192 20.9862 0.00669192H2.97074C1.63661 0.00669192 0.566172 0.766635 0.166457 2.03432C0.0618192 2.36463 0.00740767 2.72954 0.00740767 3.07883C-0.000963334 9.36147 -0.000963334 15.6441 0.00217579 21.9267C0.00322217 23.6743 1.23481 24.9944 2.87343 24.9955C9.29294 25 15.7135 25 22.133 24.9955C23.576 24.9944 24.6956 23.9778 24.9582 22.4635C24.9656 22.4222 24.9854 22.3832 25.0001 22.343Z" fill="#113B6E"/>
4
+ <path d="M12.6967 22.208C9.90602 22.208 7.11638 22.208 4.3257 22.2057C4.14049 22.2057 3.94796 22.2013 3.77007 22.1544C3.34315 22.0406 3.14643 21.6734 3.2563 21.2215C3.29502 21.0641 3.35571 20.909 3.42477 20.764C4.93887 17.5613 6.45507 14.3597 7.97127 11.1581C8.10835 10.8691 8.25693 10.5879 8.56875 10.4729C8.86592 10.3636 9.11182 10.4819 9.32737 10.6916C9.42887 10.791 9.51467 10.9081 9.59943 11.0253C11.0978 13.1121 12.5962 15.1977 14.0894 17.2879C14.3992 17.7208 14.7706 18.0456 15.3043 17.9195C15.5659 17.857 15.8275 17.684 16.0336 17.4932C16.4009 17.1528 16.7252 16.76 17.0716 16.3929C17.7109 15.7144 18.4256 15.778 18.9457 16.5659C19.9 18.0121 20.8511 19.4617 21.8002 20.9124C21.9822 21.1914 22.1831 21.486 22.0189 21.8442C21.8462 22.2202 21.4925 22.208 21.1671 22.208C18.344 22.2113 15.5209 22.2102 12.6977 22.2102L12.6967 22.208Z" fill="#A7DDC8"/>
5
+ <path d="M19 8.0069C18.9965 9.65977 17.6508 11.0023 15.9971 11C14.3469 10.9977 12.9977 9.64598 13 7.9977C13.0023 6.35173 14.3618 4.99656 16.0063 5.00001C17.6543 5.00345 19.0023 6.35748 19 8.0069Z" fill="#A7DDC8"/>
6
+ </g>
7
+ <defs>
8
+ <clipPath id="clip0_6691_19392">
9
+ <rect width="25" height="25" fill="white"/>
10
+ </clipPath>
11
+ </defs>
28
12
  </svg>
@@ -83,11 +83,11 @@ export class ChipsSelectorComponent extends SubscriptionnerDirective {
83
83
  : this.usedItems$.getValue().find((usedItem) => this.areItemsEqual(usedItem, item));
84
84
  }
85
85
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.3", ngImport: i0, type: ChipsSelectorComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i1.PryI18nService }], target: i0.ɵɵFactoryTarget.Component }); }
86
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.1.3", type: ChipsSelectorComponent, selector: "pry-chips-selector", inputs: { bindValue: "bindValue", bindLabel: "bindLabel", translationStringBase: "translationStringBase", itemTranslationStringBase: "itemTranslationStringBase", showActionButtons: "showActionButtons", showSearchbar: "showSearchbar", items: "items", usedItems: "usedItems" }, outputs: { cancel: "cancel", validated: "validated", previousTab: "previousTab", nextTab: "nextTab", itemsChanged: "itemsChanged" }, usesInheritance: true, ngImport: i0, template: "<div class=\"o-chips-selector\" role=\"dialog\" aria-modal=\"true\" aria-labelledby=\"dialog_namedqueries\">\n <div *ngIf=\"showSearchbar\" class=\"o-widget__search\">\n <input\n id=\"catalog-search\"\n (keydown.shift.tab)=\"previousTab.emit()\"\n type=\"text\"\n class=\"a-form-field\"\n [placeholder]=\"'@pry.components.searchData' | i18n\"\n [ngModel]=\"search$ | async\"\n (ngModelChange)=\"search($event)\"\n />\n <pry-icon iconSvg=\"search\" [width]=\"17\" [height]=\"17\"></pry-icon>\n </div>\n <div *ngIf=\"((usedItems$ | async) ?? []).length > 0; else noItems\" class=\"o-chips-selector__selected-items\">\n <h4 class=\"a-h4\">{{ translationStringBase + 'selection' | i18n }}</h4>\n <div>\n <ul class=\"o-chips-selector__list o-chips-selector__list--selected\">\n <li *ngFor=\"let item of usedItems$ | async\" class=\"o-chips-selector__item\">\n <button class=\"a-chip -md o-chips-selector__chip\" (click)=\"toggleItemSelection(item)\" type=\"button\">\n <p>\n {{ getItemLabel(item) }}\n </p>\n <pry-icon *ngIf=\"isGeo(item)\" iconSvg=\"globe\" [width]=\"22\" [height]=\"22\"></pry-icon>\n <pry-icon [iconSvg]=\"'close'\" [width]=\"17\" [height]=\"17\"></pry-icon>\n </button>\n </li>\n </ul>\n </div>\n </div>\n <ng-template #noItems>\n <span class=\"-no-items\">{{ translationStringBase + 'noItemSelected' | i18n }}</span>\n </ng-template>\n <div class=\"o-chips-selector__unused-items\">\n <h4 class=\"a-h4\">{{ translationStringBase + 'select' | i18n }}</h4>\n <div class=\"o-chips-selector__main\">\n <ul class=\"o-chips-selector__list\">\n <li *ngFor=\"let item of unusedItems$ | async\" class=\"o-chips-selector__item\">\n <button class=\"a-chip a-chip--light -md o-chips-selector__chip\" (click)=\"toggleItemSelection(item)\">\n <span class=\"u-visually-hidden\">{{ translationStringBase + 'selectItem' | i18n }}</span>\n <p class=\"a-p\">{{ getItemLabel(item) }}</p>\n <pry-icon *ngIf=\"isGeo(item)\" iconSvg=\"globe\" [width]=\"22\" [height]=\"22\"></pry-icon>\n </button>\n </li>\n </ul>\n </div>\n </div>\n <div *ngIf=\"showActionButtons\" class=\"m-btn-group o-chips-selector__bottom\">\n <button type=\"button\" (click)=\"cancel.emit()\" class=\"a-btn a-btn--secondary\">\n {{ '@pry.toolbox.manifest.close' | i18n }}\n </button>\n <button\n type=\"button\"\n (click)=\"validated.emit()\"\n #validate\n (keydown.tab)=\"nextTab.emit()\"\n class=\"a-btn a-btn--primary\"\n >\n {{ '@pry.toolbox.manifest.validated' | i18n }}\n </button>\n </div>\n</div>\n", dependencies: [{ kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3.PryIconComponent, selector: "pry-icon", inputs: ["color", "iconSvg", "animation", "iconImage", "alt", "width", "height", "classes"] }, { kind: "directive", type: i4.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i4.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }, { kind: "pipe", type: i5.I18nPipe, name: "i18n" }] }); }
86
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.1.3", type: ChipsSelectorComponent, selector: "pry-chips-selector", inputs: { bindValue: "bindValue", bindLabel: "bindLabel", translationStringBase: "translationStringBase", itemTranslationStringBase: "itemTranslationStringBase", showActionButtons: "showActionButtons", showSearchbar: "showSearchbar", items: "items", usedItems: "usedItems" }, outputs: { cancel: "cancel", validated: "validated", previousTab: "previousTab", nextTab: "nextTab", itemsChanged: "itemsChanged" }, usesInheritance: true, ngImport: i0, template: "<div class=\"o-chips-selector\" role=\"dialog\" aria-modal=\"true\" aria-labelledby=\"dialog_namedqueries\">\n <div *ngIf=\"showSearchbar\" class=\"o-widget__search\">\n <input\n id=\"catalog-search\"\n (keydown.shift.tab)=\"previousTab.emit()\"\n type=\"text\"\n class=\"a-form-field\"\n [placeholder]=\"'@pry.components.searchData' | i18n\"\n [ngModel]=\"search$ | async\"\n (ngModelChange)=\"search($event)\"\n />\n <pry-icon iconSvg=\"search\" [width]=\"17\" [height]=\"17\"></pry-icon>\n </div>\n <div class=\"o-chips-selector__items\">\n <div *ngIf=\"((usedItems$ | async) ?? []).length > 0; else noItems\" class=\"o-chips-selector__used-items\">\n <h4 class=\"a-h4\">{{ translationStringBase + 'selection' | i18n }}</h4>\n <ul class=\"o-chips-selector__list\">\n <li *ngFor=\"let item of usedItems$ | async\" class=\"o-chips-selector__item\">\n <button class=\"a-chip -md o-chips-selector__chip\" (click)=\"toggleItemSelection(item)\" type=\"button\">\n <p>\n {{ getItemLabel(item) }}\n </p>\n <pry-icon *ngIf=\"isGeo(item)\" iconSvg=\"globe\" [width]=\"22\" [height]=\"22\"></pry-icon>\n <pry-icon [iconSvg]=\"'close'\" [width]=\"17\" [height]=\"17\"></pry-icon>\n </button>\n </li>\n </ul>\n </div>\n <ng-template #noItems>\n <span class=\"-no-items\">{{ translationStringBase + 'noItemSelected' | i18n }}</span>\n </ng-template>\n <div class=\"o-chips-selector__unused-items\">\n <h4 class=\"a-h4\">{{ translationStringBase + 'select' | i18n }}</h4>\n <ul class=\"o-chips-selector__list\">\n <li *ngFor=\"let item of unusedItems$ | async\" class=\"o-chips-selector__item\">\n <button class=\"a-chip a-chip--light -md o-chips-selector__chip\" (click)=\"toggleItemSelection(item)\">\n <span class=\"u-visually-hidden\">{{ translationStringBase + 'selectItem' | i18n }}</span>\n <p class=\"a-p\">{{ getItemLabel(item) }}</p>\n <pry-icon *ngIf=\"isGeo(item)\" iconSvg=\"globe\" [width]=\"22\" [height]=\"22\"></pry-icon>\n </button>\n </li>\n </ul>\n </div>\n </div>\n <div *ngIf=\"showActionButtons\" class=\"m-btn-group o-chips-selector__footer\">\n <button type=\"button\" (click)=\"cancel.emit()\" class=\"a-btn a-btn--secondary\">\n {{ '@pry.toolbox.manifest.close' | i18n }}\n </button>\n <button\n type=\"button\"\n (click)=\"validated.emit()\"\n #validate\n (keydown.tab)=\"nextTab.emit()\"\n class=\"a-btn a-btn--primary\"\n >\n {{ '@pry.toolbox.manifest.validated' | i18n }}\n </button>\n </div>\n</div>\n", dependencies: [{ kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3.PryIconComponent, selector: "pry-icon", inputs: ["color", "iconSvg", "animation", "iconImage", "alt", "width", "height", "classes"] }, { kind: "directive", type: i4.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i4.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }, { kind: "pipe", type: i5.I18nPipe, name: "i18n" }] }); }
87
87
  }
88
88
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.3", ngImport: i0, type: ChipsSelectorComponent, decorators: [{
89
89
  type: Component,
90
- args: [{ selector: 'pry-chips-selector', template: "<div class=\"o-chips-selector\" role=\"dialog\" aria-modal=\"true\" aria-labelledby=\"dialog_namedqueries\">\n <div *ngIf=\"showSearchbar\" class=\"o-widget__search\">\n <input\n id=\"catalog-search\"\n (keydown.shift.tab)=\"previousTab.emit()\"\n type=\"text\"\n class=\"a-form-field\"\n [placeholder]=\"'@pry.components.searchData' | i18n\"\n [ngModel]=\"search$ | async\"\n (ngModelChange)=\"search($event)\"\n />\n <pry-icon iconSvg=\"search\" [width]=\"17\" [height]=\"17\"></pry-icon>\n </div>\n <div *ngIf=\"((usedItems$ | async) ?? []).length > 0; else noItems\" class=\"o-chips-selector__selected-items\">\n <h4 class=\"a-h4\">{{ translationStringBase + 'selection' | i18n }}</h4>\n <div>\n <ul class=\"o-chips-selector__list o-chips-selector__list--selected\">\n <li *ngFor=\"let item of usedItems$ | async\" class=\"o-chips-selector__item\">\n <button class=\"a-chip -md o-chips-selector__chip\" (click)=\"toggleItemSelection(item)\" type=\"button\">\n <p>\n {{ getItemLabel(item) }}\n </p>\n <pry-icon *ngIf=\"isGeo(item)\" iconSvg=\"globe\" [width]=\"22\" [height]=\"22\"></pry-icon>\n <pry-icon [iconSvg]=\"'close'\" [width]=\"17\" [height]=\"17\"></pry-icon>\n </button>\n </li>\n </ul>\n </div>\n </div>\n <ng-template #noItems>\n <span class=\"-no-items\">{{ translationStringBase + 'noItemSelected' | i18n }}</span>\n </ng-template>\n <div class=\"o-chips-selector__unused-items\">\n <h4 class=\"a-h4\">{{ translationStringBase + 'select' | i18n }}</h4>\n <div class=\"o-chips-selector__main\">\n <ul class=\"o-chips-selector__list\">\n <li *ngFor=\"let item of unusedItems$ | async\" class=\"o-chips-selector__item\">\n <button class=\"a-chip a-chip--light -md o-chips-selector__chip\" (click)=\"toggleItemSelection(item)\">\n <span class=\"u-visually-hidden\">{{ translationStringBase + 'selectItem' | i18n }}</span>\n <p class=\"a-p\">{{ getItemLabel(item) }}</p>\n <pry-icon *ngIf=\"isGeo(item)\" iconSvg=\"globe\" [width]=\"22\" [height]=\"22\"></pry-icon>\n </button>\n </li>\n </ul>\n </div>\n </div>\n <div *ngIf=\"showActionButtons\" class=\"m-btn-group o-chips-selector__bottom\">\n <button type=\"button\" (click)=\"cancel.emit()\" class=\"a-btn a-btn--secondary\">\n {{ '@pry.toolbox.manifest.close' | i18n }}\n </button>\n <button\n type=\"button\"\n (click)=\"validated.emit()\"\n #validate\n (keydown.tab)=\"nextTab.emit()\"\n class=\"a-btn a-btn--primary\"\n >\n {{ '@pry.toolbox.manifest.validated' | i18n }}\n </button>\n </div>\n</div>\n" }]
90
+ args: [{ selector: 'pry-chips-selector', template: "<div class=\"o-chips-selector\" role=\"dialog\" aria-modal=\"true\" aria-labelledby=\"dialog_namedqueries\">\n <div *ngIf=\"showSearchbar\" class=\"o-widget__search\">\n <input\n id=\"catalog-search\"\n (keydown.shift.tab)=\"previousTab.emit()\"\n type=\"text\"\n class=\"a-form-field\"\n [placeholder]=\"'@pry.components.searchData' | i18n\"\n [ngModel]=\"search$ | async\"\n (ngModelChange)=\"search($event)\"\n />\n <pry-icon iconSvg=\"search\" [width]=\"17\" [height]=\"17\"></pry-icon>\n </div>\n <div class=\"o-chips-selector__items\">\n <div *ngIf=\"((usedItems$ | async) ?? []).length > 0; else noItems\" class=\"o-chips-selector__used-items\">\n <h4 class=\"a-h4\">{{ translationStringBase + 'selection' | i18n }}</h4>\n <ul class=\"o-chips-selector__list\">\n <li *ngFor=\"let item of usedItems$ | async\" class=\"o-chips-selector__item\">\n <button class=\"a-chip -md o-chips-selector__chip\" (click)=\"toggleItemSelection(item)\" type=\"button\">\n <p>\n {{ getItemLabel(item) }}\n </p>\n <pry-icon *ngIf=\"isGeo(item)\" iconSvg=\"globe\" [width]=\"22\" [height]=\"22\"></pry-icon>\n <pry-icon [iconSvg]=\"'close'\" [width]=\"17\" [height]=\"17\"></pry-icon>\n </button>\n </li>\n </ul>\n </div>\n <ng-template #noItems>\n <span class=\"-no-items\">{{ translationStringBase + 'noItemSelected' | i18n }}</span>\n </ng-template>\n <div class=\"o-chips-selector__unused-items\">\n <h4 class=\"a-h4\">{{ translationStringBase + 'select' | i18n }}</h4>\n <ul class=\"o-chips-selector__list\">\n <li *ngFor=\"let item of unusedItems$ | async\" class=\"o-chips-selector__item\">\n <button class=\"a-chip a-chip--light -md o-chips-selector__chip\" (click)=\"toggleItemSelection(item)\">\n <span class=\"u-visually-hidden\">{{ translationStringBase + 'selectItem' | i18n }}</span>\n <p class=\"a-p\">{{ getItemLabel(item) }}</p>\n <pry-icon *ngIf=\"isGeo(item)\" iconSvg=\"globe\" [width]=\"22\" [height]=\"22\"></pry-icon>\n </button>\n </li>\n </ul>\n </div>\n </div>\n <div *ngIf=\"showActionButtons\" class=\"m-btn-group o-chips-selector__footer\">\n <button type=\"button\" (click)=\"cancel.emit()\" class=\"a-btn a-btn--secondary\">\n {{ '@pry.toolbox.manifest.close' | i18n }}\n </button>\n <button\n type=\"button\"\n (click)=\"validated.emit()\"\n #validate\n (keydown.tab)=\"nextTab.emit()\"\n class=\"a-btn a-btn--primary\"\n >\n {{ '@pry.toolbox.manifest.validated' | i18n }}\n </button>\n </div>\n</div>\n" }]
91
91
  }], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i1.PryI18nService }], propDecorators: { bindValue: [{
92
92
  type: Input
93
93
  }], bindLabel: [{
@@ -115,4 +115,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.3", ngImpor
115
115
  }], itemsChanged: [{
116
116
  type: Output
117
117
  }] } });
118
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hpcHMtc2VsZWN0b3IuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvcHJvdm9seS9kYXNoYm9hcmQvbGliL2NvcmUvY29tcG9uZW50cy9jaGlwcy1zZWxlY3Rvci9jaGlwcy1zZWxlY3Rvci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9wcm92b2x5L2Rhc2hib2FyZC9saWIvY29yZS9jb21wb25lbnRzL2NoaXBzLXNlbGVjdG9yL2NoaXBzLXNlbGVjdG9yLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBcUIsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzFGLE9BQU8sRUFBRSxlQUFlLEVBQUUsYUFBYSxFQUFFLEdBQUcsRUFBYyxNQUFNLE1BQU0sQ0FBQztBQUV2RSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sMENBQTBDLENBQUM7QUFDM0UsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0seURBQXlELENBQUM7Ozs7Ozs7QUFPbkcsTUFBTSxPQUFPLHNCQUF1QixTQUFRLHdCQUF3QjtJQVFsRSxJQUFhLEtBQUssQ0FBQyxLQUFZO1FBQzdCLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzFCLENBQUM7SUFFRCxJQUFhLFNBQVMsQ0FBQyxLQUFZO1FBQ2pDLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzlCLENBQUM7SUFjRCxZQUFvQixHQUFzQixFQUFVLElBQW9CO1FBQ3RFLEtBQUssRUFBRSxDQUFDO1FBRFUsUUFBRyxHQUFILEdBQUcsQ0FBbUI7UUFBVSxTQUFJLEdBQUosSUFBSSxDQUFnQjtRQTNCL0QsY0FBUyxHQUFHLEVBQUUsQ0FBQztRQUNmLGNBQVMsR0FBRyxFQUFFLENBQUM7UUFDZiwwQkFBcUIsR0FBRyxFQUFFLENBQUM7UUFDM0IsOEJBQXlCLEdBQUcsRUFBRSxDQUFDO1FBQy9CLHNCQUFpQixHQUFHLElBQUksQ0FBQztRQUN6QixrQkFBYSxHQUFHLElBQUksQ0FBQztRQVVwQixXQUFNLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUM1QixjQUFTLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUMvQixnQkFBVyxHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7UUFDakMsWUFBTyxHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7UUFDN0IsaUJBQVksR0FBRyxJQUFJLFlBQVksRUFBUyxDQUFDO1FBRW5ELFdBQU0sR0FBRyxJQUFJLGVBQWUsQ0FBZSxJQUFJLENBQUMsQ0FBQztRQUNqRCxlQUFVLEdBQUcsSUFBSSxlQUFlLENBQVEsRUFBRSxDQUFDLENBQUM7UUFFNUMsWUFBTyxHQUFHLElBQUksZUFBZSxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBQ2xDLGNBQVMsR0FBeUMsRUFBRSxDQUFDO1FBS25ELElBQUksQ0FBQyxZQUFZLEdBQUcsYUFBYSxDQUFDLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxJQUFJLENBQUMsVUFBVSxFQUFFLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FDbEYsR0FBRyxDQUFDLENBQUMsQ0FBQyxLQUFLLEVBQUUsU0FBUyxFQUFFLE1BQU0sQ0FBQyxFQUFFLEVBQUU7WUFDakMsT0FBTyxDQUNMLEtBQUssRUFBRSxNQUFNLENBQ1gsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUNQLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLEVBQUUsU0FBUyxDQUFDLElBQUksSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsQ0FBQyxXQUFXLEVBQUUsQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLFdBQVcsRUFBRSxDQUFDLENBQzVHLElBQUksRUFBRSxDQUNSLENBQUM7UUFDSixDQUFDLENBQUMsQ0FDSCxDQUFDO1FBQ0YsSUFBSSxDQUFDLGFBQWEsQ0FBQyxHQUFHLENBQ3BCLElBQUksQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FDOUIsS0FBSyxFQUFFLE9BQU8sQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FDOUYsQ0FDRixDQUFDO1FBRUYsSUFBSSxDQUFDLGFBQWEsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxTQUFTLENBQUMsQ0FBQyxTQUFTLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLFNBQVMsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDNUcsQ0FBQztJQUVELG1CQUFtQixDQUFDLElBQVM7UUFDM0IsSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQztZQUMzQixJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxDQUFDLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxRQUFRLEVBQUUsRUFBRSxJQUFJLENBQUMsQ0FBQyxDQUFDO1FBQzlELENBQUM7YUFBTSxDQUFDO1lBQ04sSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxRQUFRLEVBQUUsQ0FBQyxNQUFNLENBQUMsQ0FBQyxRQUFRLEVBQUUsRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxRQUFRLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQzdHLENBQUM7UUFDRCxJQUFJLENBQUMsR0FBRyxDQUFDLGFBQWEsRUFBRSxDQUFDO0lBQzNCLENBQUM7SUFFRCxLQUFLLENBQUMsSUFBUztRQUNiLE9BQU8sT0FBTyxJQUFJLEtBQUssUUFBUTtZQUM3QixDQUFDLENBQUMsVUFBVSxJQUFJLElBQUk7Z0JBQ2xCLENBQUMsQ0FBQyxlQUFlLENBQUMsS0FBSyxDQUFDLElBQTRCLENBQUM7Z0JBQ3JELENBQUMsQ0FBQyxLQUFLO1lBQ1QsQ0FBQyxDQUFDLEtBQUssQ0FBQztJQUNaLENBQUM7SUFFRCxNQUFNLENBQUMsTUFBVztRQUNoQixJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUMxQixJQUFJLENBQUMsR0FBRyxDQUFDLGFBQWEsRUFBRSxDQUFDO0lBQzNCLENBQUM7SUFFRCxZQUFZLENBQUMsSUFBUztRQUNwQixPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQztJQUN0RCxDQUFDO0lBRUQsWUFBWSxDQUFDLElBQVM7UUFDcEIsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDO1FBQzNELE1BQU0sZUFBZSxHQUFHLElBQUksQ0FBQyx5QkFBeUI7WUFDcEQsQ0FBQyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyx5QkFBeUIsR0FBRyxLQUFLLENBQUM7WUFDM0QsQ0FBQyxDQUFDLEtBQUssQ0FBQztRQUNWLE9BQU8sT0FBTyxlQUFlLEtBQUssUUFBUTtZQUN4QyxDQUFDLENBQUMsZUFBZSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMseUJBQXlCLENBQUM7Z0JBQzFELENBQUMsQ0FBQyxLQUFLO2dCQUNQLENBQUMsQ0FBQyxlQUFlO1lBQ25CLENBQUMsQ0FBQyxZQUFZLENBQUM7SUFDbkIsQ0FBQztJQUVELGFBQWEsQ0FBQyxLQUFVLEVBQUUsS0FBVTtRQUNsQyxPQUFPLElBQUksQ0FBQyxZQUFZLENBQUMsS0FBSyxDQUFDLEtBQUssSUFBSSxDQUFDLFlBQVksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUMvRCxDQUFDO0lBRUQsVUFBVSxDQUFDLElBQVMsRUFBRSxTQUFpQjtRQUNyQyxPQUFPLFNBQVM7WUFDZCxDQUFDLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxDQUFDLFFBQVEsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxRQUFRLEVBQUUsSUFBSSxDQUFDLENBQUM7WUFDbEUsQ0FBQyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsUUFBUSxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUMsUUFBUSxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLFFBQVEsRUFBRSxJQUFJLENBQUMsQ0FBQyxDQUFDO0lBQ3hGLENBQUM7OEdBaEdVLHNCQUFzQjtrR0FBdEIsc0JBQXNCLDBlQ1huQyx1dEZBNkRBOzsyRkRsRGEsc0JBQXNCO2tCQUpsQyxTQUFTOytCQUNFLG9CQUFvQjttSEFJckIsU0FBUztzQkFBakIsS0FBSztnQkFDRyxTQUFTO3NCQUFqQixLQUFLO2dCQUNHLHFCQUFxQjtzQkFBN0IsS0FBSztnQkFDRyx5QkFBeUI7c0JBQWpDLEtBQUs7Z0JBQ0csaUJBQWlCO3NCQUF6QixLQUFLO2dCQUNHLGFBQWE7c0JBQXJCLEtBQUs7Z0JBRU8sS0FBSztzQkFBakIsS0FBSztnQkFJTyxTQUFTO3NCQUFyQixLQUFLO2dCQUlJLE1BQU07c0JBQWYsTUFBTTtnQkFDRyxTQUFTO3NCQUFsQixNQUFNO2dCQUNHLFdBQVc7c0JBQXBCLE1BQU07Z0JBQ0csT0FBTztzQkFBaEIsTUFBTTtnQkFDRyxZQUFZO3NCQUFyQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0b3JSZWYsIENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIGNvbWJpbmVMYXRlc3QsIG1hcCwgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgRGF0YXNldCwgTmFtZWRRdWVyeSB9IGZyb20gJy4uLy4uL3N0b3JlL2RhdGEtc291cmNlL2RhdGEtc291cmNlLm1vZGVsJztcbmltcG9ydCB7IERhdGFzb3VyY2VVdGlscyB9IGZyb20gJy4uLy4uL3N0b3JlL2RhdGEtc291cmNlL2RhdGFzb3VyY2UtdXRpbHMnO1xuaW1wb3J0IHsgU3Vic2NyaXB0aW9ubmVyRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vLi4vZGFzaGJvYXJkL2NvbXBvbmVudHMvc3Vic2NyaXB0aW9ubmVyLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBQcnlJMThuU2VydmljZSB9IGZyb20gJy4uLy4uL2kxOG4vaTE4bi5zZXJ2aWNlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAncHJ5LWNoaXBzLXNlbGVjdG9yJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2NoaXBzLXNlbGVjdG9yLmNvbXBvbmVudC5odG1sJ1xufSlcbmV4cG9ydCBjbGFzcyBDaGlwc1NlbGVjdG9yQ29tcG9uZW50IGV4dGVuZHMgU3Vic2NyaXB0aW9ubmVyRGlyZWN0aXZlIHtcbiAgQElucHV0KCkgYmluZFZhbHVlID0gJyc7XG4gIEBJbnB1dCgpIGJpbmRMYWJlbCA9ICcnO1xuICBASW5wdXQoKSB0cmFuc2xhdGlvblN0cmluZ0Jhc2UgPSAnJztcbiAgQElucHV0KCkgaXRlbVRyYW5zbGF0aW9uU3RyaW5nQmFzZSA9ICcnO1xuICBASW5wdXQoKSBzaG93QWN0aW9uQnV0dG9ucyA9IHRydWU7XG4gIEBJbnB1dCgpIHNob3dTZWFyY2hiYXIgPSB0cnVlO1xuXG4gIEBJbnB1dCgpIHNldCBpdGVtcyhpdGVtczogYW55W10pIHtcbiAgICB0aGlzLml0ZW1zJC5uZXh0KGl0ZW1zKTtcbiAgfVxuXG4gIEBJbnB1dCgpIHNldCB1c2VkSXRlbXMoaXRlbXM6IGFueVtdKSB7XG4gICAgdGhpcy51c2VkSXRlbXMkLm5leHQoaXRlbXMpO1xuICB9XG5cbiAgQE91dHB1dCgpIGNhbmNlbCA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcbiAgQE91dHB1dCgpIHZhbGlkYXRlZCA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcbiAgQE91dHB1dCgpIHByZXZpb3VzVGFiID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuICBAT3V0cHV0KCkgbmV4dFRhYiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcbiAgQE91dHB1dCgpIGl0ZW1zQ2hhbmdlZCA9IG5ldyBFdmVudEVtaXR0ZXI8YW55W10+KCk7XG5cbiAgaXRlbXMkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxhbnlbXSB8IG51bGw+KG51bGwpO1xuICB1c2VkSXRlbXMkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxhbnlbXT4oW10pO1xuICB1bnVzZWRJdGVtcyQ6IE9ic2VydmFibGU8YW55W10gfCBudWxsPjtcbiAgc2VhcmNoJCA9IG5ldyBCZWhhdmlvclN1YmplY3QoJycpO1xuICBpZFRvTGFiZWw6IHsgW2lkOiBzdHJpbmddOiBzdHJpbmcgfCB1bmRlZmluZWQgfSA9IHt9O1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgY2RyOiBDaGFuZ2VEZXRlY3RvclJlZiwgcHJpdmF0ZSBpMThuOiBQcnlJMThuU2VydmljZSkge1xuICAgIHN1cGVyKCk7XG5cbiAgICB0aGlzLnVudXNlZEl0ZW1zJCA9IGNvbWJpbmVMYXRlc3QoW3RoaXMuaXRlbXMkLCB0aGlzLnVzZWRJdGVtcyQsIHRoaXMuc2VhcmNoJF0pLnBpcGUoXG4gICAgICBtYXAoKFtpdGVtcywgdXNlZEl0ZW1zLCBzZWFyY2hdKSA9PiB7XG4gICAgICAgIHJldHVybiAoXG4gICAgICAgICAgaXRlbXM/LmZpbHRlcihcbiAgICAgICAgICAgIChpdGVtKSA9PlxuICAgICAgICAgICAgICAhdGhpcy5pc0l0ZW1Vc2VkKGl0ZW0sIHVzZWRJdGVtcykgJiYgdGhpcy5nZXRJdGVtTGFiZWwoaXRlbSkudG9Mb3dlckNhc2UoKS5pbmNsdWRlcyhzZWFyY2gudG9Mb3dlckNhc2UoKSlcbiAgICAgICAgICApID8/IFtdXG4gICAgICAgICk7XG4gICAgICB9KVxuICAgICk7XG4gICAgdGhpcy5zdWJzY3JpcHRpb25zLmFkZChcbiAgICAgIHRoaXMuaXRlbXMkLnN1YnNjcmliZSgoaXRlbXMpID0+XG4gICAgICAgIGl0ZW1zPy5mb3JFYWNoKChpdGVtKSA9PiAodGhpcy5pZFRvTGFiZWxbdGhpcy5nZXRJdGVtVmFsdWUoaXRlbSldID0gdGhpcy5nZXRJdGVtTGFiZWwoaXRlbSkpKVxuICAgICAgKVxuICAgICk7XG5cbiAgICB0aGlzLnN1YnNjcmlwdGlvbnMuYWRkKHRoaXMudXNlZEl0ZW1zJC5zdWJzY3JpYmUoKHVzZWRJdGVtcykgPT4gdGhpcy5pdGVtc0NoYW5nZWQuZW1pdCh1c2VkSXRlbXMgPz8gW10pKSk7XG4gIH1cblxuICB0b2dnbGVJdGVtU2VsZWN0aW9uKGl0ZW06IGFueSkge1xuICAgIGlmICghdGhpcy5pc0l0ZW1Vc2VkKGl0ZW0pKSB7XG4gICAgICB0aGlzLnVzZWRJdGVtcyQubmV4dChbLi4udGhpcy51c2VkSXRlbXMkLmdldFZhbHVlKCksIGl0ZW1dKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy51c2VkSXRlbXMkLm5leHQodGhpcy51c2VkSXRlbXMkLmdldFZhbHVlKCkuZmlsdGVyKCh1c2VkSXRlbSkgPT4gIXRoaXMuYXJlSXRlbXNFcXVhbCh1c2VkSXRlbSwgaXRlbSkpKTtcbiAgICB9XG4gICAgdGhpcy5jZHIuZGV0ZWN0Q2hhbmdlcygpO1xuICB9XG5cbiAgaXNHZW8oaXRlbTogYW55KSB7XG4gICAgcmV0dXJuIHR5cGVvZiBpdGVtID09PSAnb2JqZWN0J1xuICAgICAgPyAnbWV0YWRhdGEnIGluIGl0ZW1cbiAgICAgICAgPyBEYXRhc291cmNlVXRpbHMuaXNHZW8oaXRlbSBhcyBOYW1lZFF1ZXJ5IHwgRGF0YXNldClcbiAgICAgICAgOiBmYWxzZVxuICAgICAgOiBmYWxzZTtcbiAgfVxuXG4gIHNlYXJjaCgkZXZlbnQ6IGFueSkge1xuICAgIHRoaXMuc2VhcmNoJC5uZXh0KCRldmVudCk7XG4gICAgdGhpcy5jZHIuZGV0ZWN0Q2hhbmdlcygpO1xuICB9XG5cbiAgZ2V0SXRlbVZhbHVlKGl0ZW06IGFueSkge1xuICAgIHJldHVybiB0aGlzLmJpbmRWYWx1ZSA/IGl0ZW1bdGhpcy5iaW5kVmFsdWVdIDogaXRlbTtcbiAgfVxuXG4gIGdldEl0ZW1MYWJlbChpdGVtOiBhbnkpIHtcbiAgICBjb25zdCBsYWJlbCA9IHRoaXMuYmluZExhYmVsID8gaXRlbVt0aGlzLmJpbmRMYWJlbF0gOiBpdGVtO1xuICAgIGNvbnN0IGxhYmVsVHJhbnNsYXRlZCA9IHRoaXMuaXRlbVRyYW5zbGF0aW9uU3RyaW5nQmFzZVxuICAgICAgPyB0aGlzLmkxOG4uaW5zdGFudCh0aGlzLml0ZW1UcmFuc2xhdGlvblN0cmluZ0Jhc2UgKyBsYWJlbClcbiAgICAgIDogbGFiZWw7XG4gICAgcmV0dXJuIHR5cGVvZiBsYWJlbFRyYW5zbGF0ZWQgPT09ICdzdHJpbmcnXG4gICAgICA/IGxhYmVsVHJhbnNsYXRlZC5zdGFydHNXaXRoKHRoaXMuaXRlbVRyYW5zbGF0aW9uU3RyaW5nQmFzZSlcbiAgICAgICAgPyBsYWJlbFxuICAgICAgICA6IGxhYmVsVHJhbnNsYXRlZFxuICAgICAgOiAnLS1vYmplY3QtLSc7XG4gIH1cblxuICBhcmVJdGVtc0VxdWFsKGl0ZW0xOiBhbnksIGl0ZW0yOiBhbnkpIHtcbiAgICByZXR1cm4gdGhpcy5nZXRJdGVtVmFsdWUoaXRlbTEpID09PSB0aGlzLmdldEl0ZW1WYWx1ZShpdGVtMik7XG4gIH1cblxuICBpc0l0ZW1Vc2VkKGl0ZW06IGFueSwgdXNlZEl0ZW1zPzogYW55W10pIHtcbiAgICByZXR1cm4gdXNlZEl0ZW1zXG4gICAgICA/IHVzZWRJdGVtcy5maW5kKCh1c2VkSXRlbSkgPT4gdGhpcy5hcmVJdGVtc0VxdWFsKHVzZWRJdGVtLCBpdGVtKSlcbiAgICAgIDogdGhpcy51c2VkSXRlbXMkLmdldFZhbHVlKCkuZmluZCgodXNlZEl0ZW0pID0+IHRoaXMuYXJlSXRlbXNFcXVhbCh1c2VkSXRlbSwgaXRlbSkpO1xuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwiby1jaGlwcy1zZWxlY3RvclwiIHJvbGU9XCJkaWFsb2dcIiBhcmlhLW1vZGFsPVwidHJ1ZVwiIGFyaWEtbGFiZWxsZWRieT1cImRpYWxvZ19uYW1lZHF1ZXJpZXNcIj5cbiAgPGRpdiAqbmdJZj1cInNob3dTZWFyY2hiYXJcIiBjbGFzcz1cIm8td2lkZ2V0X19zZWFyY2hcIj5cbiAgICA8aW5wdXRcbiAgICAgIGlkPVwiY2F0YWxvZy1zZWFyY2hcIlxuICAgICAgKGtleWRvd24uc2hpZnQudGFiKT1cInByZXZpb3VzVGFiLmVtaXQoKVwiXG4gICAgICB0eXBlPVwidGV4dFwiXG4gICAgICBjbGFzcz1cImEtZm9ybS1maWVsZFwiXG4gICAgICBbcGxhY2Vob2xkZXJdPVwiJ0BwcnkuY29tcG9uZW50cy5zZWFyY2hEYXRhJyB8IGkxOG5cIlxuICAgICAgW25nTW9kZWxdPVwic2VhcmNoJCB8IGFzeW5jXCJcbiAgICAgIChuZ01vZGVsQ2hhbmdlKT1cInNlYXJjaCgkZXZlbnQpXCJcbiAgICAvPlxuICAgIDxwcnktaWNvbiBpY29uU3ZnPVwic2VhcmNoXCIgW3dpZHRoXT1cIjE3XCIgW2hlaWdodF09XCIxN1wiPjwvcHJ5LWljb24+XG4gIDwvZGl2PlxuICA8ZGl2ICpuZ0lmPVwiKCh1c2VkSXRlbXMkIHwgYXN5bmMpID8/IFtdKS5sZW5ndGggPiAwOyBlbHNlIG5vSXRlbXNcIiBjbGFzcz1cIm8tY2hpcHMtc2VsZWN0b3JfX3NlbGVjdGVkLWl0ZW1zXCI+XG4gICAgPGg0IGNsYXNzPVwiYS1oNFwiPnt7IHRyYW5zbGF0aW9uU3RyaW5nQmFzZSArICdzZWxlY3Rpb24nIHwgaTE4biB9fTwvaDQ+XG4gICAgPGRpdj5cbiAgICAgIDx1bCBjbGFzcz1cIm8tY2hpcHMtc2VsZWN0b3JfX2xpc3Qgby1jaGlwcy1zZWxlY3Rvcl9fbGlzdC0tc2VsZWN0ZWRcIj5cbiAgICAgICAgPGxpICpuZ0Zvcj1cImxldCBpdGVtIG9mIHVzZWRJdGVtcyQgfCBhc3luY1wiIGNsYXNzPVwiby1jaGlwcy1zZWxlY3Rvcl9faXRlbVwiPlxuICAgICAgICAgIDxidXR0b24gY2xhc3M9XCJhLWNoaXAgLW1kIG8tY2hpcHMtc2VsZWN0b3JfX2NoaXBcIiAoY2xpY2spPVwidG9nZ2xlSXRlbVNlbGVjdGlvbihpdGVtKVwiIHR5cGU9XCJidXR0b25cIj5cbiAgICAgICAgICAgIDxwPlxuICAgICAgICAgICAgICB7eyBnZXRJdGVtTGFiZWwoaXRlbSkgfX1cbiAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgIDxwcnktaWNvbiAqbmdJZj1cImlzR2VvKGl0ZW0pXCIgaWNvblN2Zz1cImdsb2JlXCIgW3dpZHRoXT1cIjIyXCIgW2hlaWdodF09XCIyMlwiPjwvcHJ5LWljb24+XG4gICAgICAgICAgICA8cHJ5LWljb24gW2ljb25TdmddPVwiJ2Nsb3NlJ1wiIFt3aWR0aF09XCIxN1wiIFtoZWlnaHRdPVwiMTdcIj48L3ByeS1pY29uPlxuICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICA8L2xpPlxuICAgICAgPC91bD5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG4gIDxuZy10ZW1wbGF0ZSAjbm9JdGVtcz5cbiAgICA8c3BhbiBjbGFzcz1cIi1uby1pdGVtc1wiPnt7IHRyYW5zbGF0aW9uU3RyaW5nQmFzZSArICdub0l0ZW1TZWxlY3RlZCcgfCBpMThuIH19PC9zcGFuPlxuICA8L25nLXRlbXBsYXRlPlxuICA8ZGl2IGNsYXNzPVwiby1jaGlwcy1zZWxlY3Rvcl9fdW51c2VkLWl0ZW1zXCI+XG4gICAgPGg0IGNsYXNzPVwiYS1oNFwiPnt7IHRyYW5zbGF0aW9uU3RyaW5nQmFzZSArICdzZWxlY3QnIHwgaTE4biB9fTwvaDQ+XG4gICAgPGRpdiBjbGFzcz1cIm8tY2hpcHMtc2VsZWN0b3JfX21haW5cIj5cbiAgICAgIDx1bCBjbGFzcz1cIm8tY2hpcHMtc2VsZWN0b3JfX2xpc3RcIj5cbiAgICAgICAgPGxpICpuZ0Zvcj1cImxldCBpdGVtIG9mIHVudXNlZEl0ZW1zJCB8IGFzeW5jXCIgY2xhc3M9XCJvLWNoaXBzLXNlbGVjdG9yX19pdGVtXCI+XG4gICAgICAgICAgPGJ1dHRvbiBjbGFzcz1cImEtY2hpcCBhLWNoaXAtLWxpZ2h0IC1tZCBvLWNoaXBzLXNlbGVjdG9yX19jaGlwXCIgKGNsaWNrKT1cInRvZ2dsZUl0ZW1TZWxlY3Rpb24oaXRlbSlcIj5cbiAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidS12aXN1YWxseS1oaWRkZW5cIj57eyB0cmFuc2xhdGlvblN0cmluZ0Jhc2UgKyAnc2VsZWN0SXRlbScgfCBpMThuIH19PC9zcGFuPlxuICAgICAgICAgICAgPHAgY2xhc3M9XCJhLXBcIj57eyBnZXRJdGVtTGFiZWwoaXRlbSkgfX08L3A+XG4gICAgICAgICAgICA8cHJ5LWljb24gKm5nSWY9XCJpc0dlbyhpdGVtKVwiIGljb25Tdmc9XCJnbG9iZVwiIFt3aWR0aF09XCIyMlwiIFtoZWlnaHRdPVwiMjJcIj48L3ByeS1pY29uPlxuICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICA8L2xpPlxuICAgICAgPC91bD5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG4gIDxkaXYgKm5nSWY9XCJzaG93QWN0aW9uQnV0dG9uc1wiIGNsYXNzPVwibS1idG4tZ3JvdXAgby1jaGlwcy1zZWxlY3Rvcl9fYm90dG9tXCI+XG4gICAgPGJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgKGNsaWNrKT1cImNhbmNlbC5lbWl0KClcIiBjbGFzcz1cImEtYnRuIGEtYnRuLS1zZWNvbmRhcnlcIj5cbiAgICAgIHt7ICdAcHJ5LnRvb2xib3gubWFuaWZlc3QuY2xvc2UnIHwgaTE4biB9fVxuICAgIDwvYnV0dG9uPlxuICAgIDxidXR0b25cbiAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgKGNsaWNrKT1cInZhbGlkYXRlZC5lbWl0KClcIlxuICAgICAgI3ZhbGlkYXRlXG4gICAgICAoa2V5ZG93bi50YWIpPVwibmV4dFRhYi5lbWl0KClcIlxuICAgICAgY2xhc3M9XCJhLWJ0biBhLWJ0bi0tcHJpbWFyeVwiXG4gICAgPlxuICAgICAge3sgJ0BwcnkudG9vbGJveC5tYW5pZmVzdC52YWxpZGF0ZWQnIHwgaTE4biB9fVxuICAgIDwvYnV0dG9uPlxuICA8L2Rpdj5cbjwvZGl2PlxuIl19
118
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hpcHMtc2VsZWN0b3IuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvcHJvdm9seS9kYXNoYm9hcmQvbGliL2NvcmUvY29tcG9uZW50cy9jaGlwcy1zZWxlY3Rvci9jaGlwcy1zZWxlY3Rvci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9wcm92b2x5L2Rhc2hib2FyZC9saWIvY29yZS9jb21wb25lbnRzL2NoaXBzLXNlbGVjdG9yL2NoaXBzLXNlbGVjdG9yLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBcUIsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzFGLE9BQU8sRUFBRSxlQUFlLEVBQUUsYUFBYSxFQUFFLEdBQUcsRUFBYyxNQUFNLE1BQU0sQ0FBQztBQUV2RSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sMENBQTBDLENBQUM7QUFDM0UsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0seURBQXlELENBQUM7Ozs7Ozs7QUFPbkcsTUFBTSxPQUFPLHNCQUF1QixTQUFRLHdCQUF3QjtJQVFsRSxJQUFhLEtBQUssQ0FBQyxLQUFZO1FBQzdCLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzFCLENBQUM7SUFFRCxJQUFhLFNBQVMsQ0FBQyxLQUFZO1FBQ2pDLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzlCLENBQUM7SUFjRCxZQUFvQixHQUFzQixFQUFVLElBQW9CO1FBQ3RFLEtBQUssRUFBRSxDQUFDO1FBRFUsUUFBRyxHQUFILEdBQUcsQ0FBbUI7UUFBVSxTQUFJLEdBQUosSUFBSSxDQUFnQjtRQTNCL0QsY0FBUyxHQUFHLEVBQUUsQ0FBQztRQUNmLGNBQVMsR0FBRyxFQUFFLENBQUM7UUFDZiwwQkFBcUIsR0FBRyxFQUFFLENBQUM7UUFDM0IsOEJBQXlCLEdBQUcsRUFBRSxDQUFDO1FBQy9CLHNCQUFpQixHQUFHLElBQUksQ0FBQztRQUN6QixrQkFBYSxHQUFHLElBQUksQ0FBQztRQVVwQixXQUFNLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUM1QixjQUFTLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUMvQixnQkFBVyxHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7UUFDakMsWUFBTyxHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7UUFDN0IsaUJBQVksR0FBRyxJQUFJLFlBQVksRUFBUyxDQUFDO1FBRW5ELFdBQU0sR0FBRyxJQUFJLGVBQWUsQ0FBZSxJQUFJLENBQUMsQ0FBQztRQUNqRCxlQUFVLEdBQUcsSUFBSSxlQUFlLENBQVEsRUFBRSxDQUFDLENBQUM7UUFFNUMsWUFBTyxHQUFHLElBQUksZUFBZSxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBQ2xDLGNBQVMsR0FBeUMsRUFBRSxDQUFDO1FBS25ELElBQUksQ0FBQyxZQUFZLEdBQUcsYUFBYSxDQUFDLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxJQUFJLENBQUMsVUFBVSxFQUFFLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FDbEYsR0FBRyxDQUFDLENBQUMsQ0FBQyxLQUFLLEVBQUUsU0FBUyxFQUFFLE1BQU0sQ0FBQyxFQUFFLEVBQUU7WUFDakMsT0FBTyxDQUNMLEtBQUssRUFBRSxNQUFNLENBQ1gsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUNQLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLEVBQUUsU0FBUyxDQUFDLElBQUksSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsQ0FBQyxXQUFXLEVBQUUsQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLFdBQVcsRUFBRSxDQUFDLENBQzVHLElBQUksRUFBRSxDQUNSLENBQUM7UUFDSixDQUFDLENBQUMsQ0FDSCxDQUFDO1FBQ0YsSUFBSSxDQUFDLGFBQWEsQ0FBQyxHQUFHLENBQ3BCLElBQUksQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FDOUIsS0FBSyxFQUFFLE9BQU8sQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FDOUYsQ0FDRixDQUFDO1FBRUYsSUFBSSxDQUFDLGFBQWEsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxTQUFTLENBQUMsQ0FBQyxTQUFTLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLFNBQVMsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDNUcsQ0FBQztJQUVELG1CQUFtQixDQUFDLElBQVM7UUFDM0IsSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQztZQUMzQixJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxDQUFDLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxRQUFRLEVBQUUsRUFBRSxJQUFJLENBQUMsQ0FBQyxDQUFDO1FBQzlELENBQUM7YUFBTSxDQUFDO1lBQ04sSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxRQUFRLEVBQUUsQ0FBQyxNQUFNLENBQUMsQ0FBQyxRQUFRLEVBQUUsRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxRQUFRLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQzdHLENBQUM7UUFDRCxJQUFJLENBQUMsR0FBRyxDQUFDLGFBQWEsRUFBRSxDQUFDO0lBQzNCLENBQUM7SUFFRCxLQUFLLENBQUMsSUFBUztRQUNiLE9BQU8sT0FBTyxJQUFJLEtBQUssUUFBUTtZQUM3QixDQUFDLENBQUMsVUFBVSxJQUFJLElBQUk7Z0JBQ2xCLENBQUMsQ0FBQyxlQUFlLENBQUMsS0FBSyxDQUFDLElBQTRCLENBQUM7Z0JBQ3JELENBQUMsQ0FBQyxLQUFLO1lBQ1QsQ0FBQyxDQUFDLEtBQUssQ0FBQztJQUNaLENBQUM7SUFFRCxNQUFNLENBQUMsTUFBVztRQUNoQixJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUMxQixJQUFJLENBQUMsR0FBRyxDQUFDLGFBQWEsRUFBRSxDQUFDO0lBQzNCLENBQUM7SUFFRCxZQUFZLENBQUMsSUFBUztRQUNwQixPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQztJQUN0RCxDQUFDO0lBRUQsWUFBWSxDQUFDLElBQVM7UUFDcEIsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDO1FBQzNELE1BQU0sZUFBZSxHQUFHLElBQUksQ0FBQyx5QkFBeUI7WUFDcEQsQ0FBQyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyx5QkFBeUIsR0FBRyxLQUFLLENBQUM7WUFDM0QsQ0FBQyxDQUFDLEtBQUssQ0FBQztRQUNWLE9BQU8sT0FBTyxlQUFlLEtBQUssUUFBUTtZQUN4QyxDQUFDLENBQUMsZUFBZSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMseUJBQXlCLENBQUM7Z0JBQzFELENBQUMsQ0FBQyxLQUFLO2dCQUNQLENBQUMsQ0FBQyxlQUFlO1lBQ25CLENBQUMsQ0FBQyxZQUFZLENBQUM7SUFDbkIsQ0FBQztJQUVELGFBQWEsQ0FBQyxLQUFVLEVBQUUsS0FBVTtRQUNsQyxPQUFPLElBQUksQ0FBQyxZQUFZLENBQUMsS0FBSyxDQUFDLEtBQUssSUFBSSxDQUFDLFlBQVksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUMvRCxDQUFDO0lBRUQsVUFBVSxDQUFDLElBQVMsRUFBRSxTQUFpQjtRQUNyQyxPQUFPLFNBQVM7WUFDZCxDQUFDLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxDQUFDLFFBQVEsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxRQUFRLEVBQUUsSUFBSSxDQUFDLENBQUM7WUFDbEUsQ0FBQyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsUUFBUSxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUMsUUFBUSxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLFFBQVEsRUFBRSxJQUFJLENBQUMsQ0FBQyxDQUFDO0lBQ3hGLENBQUM7OEdBaEdVLHNCQUFzQjtrR0FBdEIsc0JBQXNCLDBlQ1huQywwcUZBMkRBOzsyRkRoRGEsc0JBQXNCO2tCQUpsQyxTQUFTOytCQUNFLG9CQUFvQjttSEFJckIsU0FBUztzQkFBakIsS0FBSztnQkFDRyxTQUFTO3NCQUFqQixLQUFLO2dCQUNHLHFCQUFxQjtzQkFBN0IsS0FBSztnQkFDRyx5QkFBeUI7c0JBQWpDLEtBQUs7Z0JBQ0csaUJBQWlCO3NCQUF6QixLQUFLO2dCQUNHLGFBQWE7c0JBQXJCLEtBQUs7Z0JBRU8sS0FBSztzQkFBakIsS0FBSztnQkFJTyxTQUFTO3NCQUFyQixLQUFLO2dCQUlJLE1BQU07c0JBQWYsTUFBTTtnQkFDRyxTQUFTO3NCQUFsQixNQUFNO2dCQUNHLFdBQVc7c0JBQXBCLE1BQU07Z0JBQ0csT0FBTztzQkFBaEIsTUFBTTtnQkFDRyxZQUFZO3NCQUFyQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0b3JSZWYsIENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIGNvbWJpbmVMYXRlc3QsIG1hcCwgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgRGF0YXNldCwgTmFtZWRRdWVyeSB9IGZyb20gJy4uLy4uL3N0b3JlL2RhdGEtc291cmNlL2RhdGEtc291cmNlLm1vZGVsJztcbmltcG9ydCB7IERhdGFzb3VyY2VVdGlscyB9IGZyb20gJy4uLy4uL3N0b3JlL2RhdGEtc291cmNlL2RhdGFzb3VyY2UtdXRpbHMnO1xuaW1wb3J0IHsgU3Vic2NyaXB0aW9ubmVyRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vLi4vZGFzaGJvYXJkL2NvbXBvbmVudHMvc3Vic2NyaXB0aW9ubmVyLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBQcnlJMThuU2VydmljZSB9IGZyb20gJy4uLy4uL2kxOG4vaTE4bi5zZXJ2aWNlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAncHJ5LWNoaXBzLXNlbGVjdG9yJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2NoaXBzLXNlbGVjdG9yLmNvbXBvbmVudC5odG1sJ1xufSlcbmV4cG9ydCBjbGFzcyBDaGlwc1NlbGVjdG9yQ29tcG9uZW50IGV4dGVuZHMgU3Vic2NyaXB0aW9ubmVyRGlyZWN0aXZlIHtcbiAgQElucHV0KCkgYmluZFZhbHVlID0gJyc7XG4gIEBJbnB1dCgpIGJpbmRMYWJlbCA9ICcnO1xuICBASW5wdXQoKSB0cmFuc2xhdGlvblN0cmluZ0Jhc2UgPSAnJztcbiAgQElucHV0KCkgaXRlbVRyYW5zbGF0aW9uU3RyaW5nQmFzZSA9ICcnO1xuICBASW5wdXQoKSBzaG93QWN0aW9uQnV0dG9ucyA9IHRydWU7XG4gIEBJbnB1dCgpIHNob3dTZWFyY2hiYXIgPSB0cnVlO1xuXG4gIEBJbnB1dCgpIHNldCBpdGVtcyhpdGVtczogYW55W10pIHtcbiAgICB0aGlzLml0ZW1zJC5uZXh0KGl0ZW1zKTtcbiAgfVxuXG4gIEBJbnB1dCgpIHNldCB1c2VkSXRlbXMoaXRlbXM6IGFueVtdKSB7XG4gICAgdGhpcy51c2VkSXRlbXMkLm5leHQoaXRlbXMpO1xuICB9XG5cbiAgQE91dHB1dCgpIGNhbmNlbCA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcbiAgQE91dHB1dCgpIHZhbGlkYXRlZCA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcbiAgQE91dHB1dCgpIHByZXZpb3VzVGFiID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuICBAT3V0cHV0KCkgbmV4dFRhYiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcbiAgQE91dHB1dCgpIGl0ZW1zQ2hhbmdlZCA9IG5ldyBFdmVudEVtaXR0ZXI8YW55W10+KCk7XG5cbiAgaXRlbXMkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxhbnlbXSB8IG51bGw+KG51bGwpO1xuICB1c2VkSXRlbXMkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxhbnlbXT4oW10pO1xuICB1bnVzZWRJdGVtcyQ6IE9ic2VydmFibGU8YW55W10gfCBudWxsPjtcbiAgc2VhcmNoJCA9IG5ldyBCZWhhdmlvclN1YmplY3QoJycpO1xuICBpZFRvTGFiZWw6IHsgW2lkOiBzdHJpbmddOiBzdHJpbmcgfCB1bmRlZmluZWQgfSA9IHt9O1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgY2RyOiBDaGFuZ2VEZXRlY3RvclJlZiwgcHJpdmF0ZSBpMThuOiBQcnlJMThuU2VydmljZSkge1xuICAgIHN1cGVyKCk7XG5cbiAgICB0aGlzLnVudXNlZEl0ZW1zJCA9IGNvbWJpbmVMYXRlc3QoW3RoaXMuaXRlbXMkLCB0aGlzLnVzZWRJdGVtcyQsIHRoaXMuc2VhcmNoJF0pLnBpcGUoXG4gICAgICBtYXAoKFtpdGVtcywgdXNlZEl0ZW1zLCBzZWFyY2hdKSA9PiB7XG4gICAgICAgIHJldHVybiAoXG4gICAgICAgICAgaXRlbXM/LmZpbHRlcihcbiAgICAgICAgICAgIChpdGVtKSA9PlxuICAgICAgICAgICAgICAhdGhpcy5pc0l0ZW1Vc2VkKGl0ZW0sIHVzZWRJdGVtcykgJiYgdGhpcy5nZXRJdGVtTGFiZWwoaXRlbSkudG9Mb3dlckNhc2UoKS5pbmNsdWRlcyhzZWFyY2gudG9Mb3dlckNhc2UoKSlcbiAgICAgICAgICApID8/IFtdXG4gICAgICAgICk7XG4gICAgICB9KVxuICAgICk7XG4gICAgdGhpcy5zdWJzY3JpcHRpb25zLmFkZChcbiAgICAgIHRoaXMuaXRlbXMkLnN1YnNjcmliZSgoaXRlbXMpID0+XG4gICAgICAgIGl0ZW1zPy5mb3JFYWNoKChpdGVtKSA9PiAodGhpcy5pZFRvTGFiZWxbdGhpcy5nZXRJdGVtVmFsdWUoaXRlbSldID0gdGhpcy5nZXRJdGVtTGFiZWwoaXRlbSkpKVxuICAgICAgKVxuICAgICk7XG5cbiAgICB0aGlzLnN1YnNjcmlwdGlvbnMuYWRkKHRoaXMudXNlZEl0ZW1zJC5zdWJzY3JpYmUoKHVzZWRJdGVtcykgPT4gdGhpcy5pdGVtc0NoYW5nZWQuZW1pdCh1c2VkSXRlbXMgPz8gW10pKSk7XG4gIH1cblxuICB0b2dnbGVJdGVtU2VsZWN0aW9uKGl0ZW06IGFueSkge1xuICAgIGlmICghdGhpcy5pc0l0ZW1Vc2VkKGl0ZW0pKSB7XG4gICAgICB0aGlzLnVzZWRJdGVtcyQubmV4dChbLi4udGhpcy51c2VkSXRlbXMkLmdldFZhbHVlKCksIGl0ZW1dKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy51c2VkSXRlbXMkLm5leHQodGhpcy51c2VkSXRlbXMkLmdldFZhbHVlKCkuZmlsdGVyKCh1c2VkSXRlbSkgPT4gIXRoaXMuYXJlSXRlbXNFcXVhbCh1c2VkSXRlbSwgaXRlbSkpKTtcbiAgICB9XG4gICAgdGhpcy5jZHIuZGV0ZWN0Q2hhbmdlcygpO1xuICB9XG5cbiAgaXNHZW8oaXRlbTogYW55KSB7XG4gICAgcmV0dXJuIHR5cGVvZiBpdGVtID09PSAnb2JqZWN0J1xuICAgICAgPyAnbWV0YWRhdGEnIGluIGl0ZW1cbiAgICAgICAgPyBEYXRhc291cmNlVXRpbHMuaXNHZW8oaXRlbSBhcyBOYW1lZFF1ZXJ5IHwgRGF0YXNldClcbiAgICAgICAgOiBmYWxzZVxuICAgICAgOiBmYWxzZTtcbiAgfVxuXG4gIHNlYXJjaCgkZXZlbnQ6IGFueSkge1xuICAgIHRoaXMuc2VhcmNoJC5uZXh0KCRldmVudCk7XG4gICAgdGhpcy5jZHIuZGV0ZWN0Q2hhbmdlcygpO1xuICB9XG5cbiAgZ2V0SXRlbVZhbHVlKGl0ZW06IGFueSkge1xuICAgIHJldHVybiB0aGlzLmJpbmRWYWx1ZSA/IGl0ZW1bdGhpcy5iaW5kVmFsdWVdIDogaXRlbTtcbiAgfVxuXG4gIGdldEl0ZW1MYWJlbChpdGVtOiBhbnkpIHtcbiAgICBjb25zdCBsYWJlbCA9IHRoaXMuYmluZExhYmVsID8gaXRlbVt0aGlzLmJpbmRMYWJlbF0gOiBpdGVtO1xuICAgIGNvbnN0IGxhYmVsVHJhbnNsYXRlZCA9IHRoaXMuaXRlbVRyYW5zbGF0aW9uU3RyaW5nQmFzZVxuICAgICAgPyB0aGlzLmkxOG4uaW5zdGFudCh0aGlzLml0ZW1UcmFuc2xhdGlvblN0cmluZ0Jhc2UgKyBsYWJlbClcbiAgICAgIDogbGFiZWw7XG4gICAgcmV0dXJuIHR5cGVvZiBsYWJlbFRyYW5zbGF0ZWQgPT09ICdzdHJpbmcnXG4gICAgICA/IGxhYmVsVHJhbnNsYXRlZC5zdGFydHNXaXRoKHRoaXMuaXRlbVRyYW5zbGF0aW9uU3RyaW5nQmFzZSlcbiAgICAgICAgPyBsYWJlbFxuICAgICAgICA6IGxhYmVsVHJhbnNsYXRlZFxuICAgICAgOiAnLS1vYmplY3QtLSc7XG4gIH1cblxuICBhcmVJdGVtc0VxdWFsKGl0ZW0xOiBhbnksIGl0ZW0yOiBhbnkpIHtcbiAgICByZXR1cm4gdGhpcy5nZXRJdGVtVmFsdWUoaXRlbTEpID09PSB0aGlzLmdldEl0ZW1WYWx1ZShpdGVtMik7XG4gIH1cblxuICBpc0l0ZW1Vc2VkKGl0ZW06IGFueSwgdXNlZEl0ZW1zPzogYW55W10pIHtcbiAgICByZXR1cm4gdXNlZEl0ZW1zXG4gICAgICA/IHVzZWRJdGVtcy5maW5kKCh1c2VkSXRlbSkgPT4gdGhpcy5hcmVJdGVtc0VxdWFsKHVzZWRJdGVtLCBpdGVtKSlcbiAgICAgIDogdGhpcy51c2VkSXRlbXMkLmdldFZhbHVlKCkuZmluZCgodXNlZEl0ZW0pID0+IHRoaXMuYXJlSXRlbXNFcXVhbCh1c2VkSXRlbSwgaXRlbSkpO1xuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwiby1jaGlwcy1zZWxlY3RvclwiIHJvbGU9XCJkaWFsb2dcIiBhcmlhLW1vZGFsPVwidHJ1ZVwiIGFyaWEtbGFiZWxsZWRieT1cImRpYWxvZ19uYW1lZHF1ZXJpZXNcIj5cbiAgPGRpdiAqbmdJZj1cInNob3dTZWFyY2hiYXJcIiBjbGFzcz1cIm8td2lkZ2V0X19zZWFyY2hcIj5cbiAgICA8aW5wdXRcbiAgICAgIGlkPVwiY2F0YWxvZy1zZWFyY2hcIlxuICAgICAgKGtleWRvd24uc2hpZnQudGFiKT1cInByZXZpb3VzVGFiLmVtaXQoKVwiXG4gICAgICB0eXBlPVwidGV4dFwiXG4gICAgICBjbGFzcz1cImEtZm9ybS1maWVsZFwiXG4gICAgICBbcGxhY2Vob2xkZXJdPVwiJ0BwcnkuY29tcG9uZW50cy5zZWFyY2hEYXRhJyB8IGkxOG5cIlxuICAgICAgW25nTW9kZWxdPVwic2VhcmNoJCB8IGFzeW5jXCJcbiAgICAgIChuZ01vZGVsQ2hhbmdlKT1cInNlYXJjaCgkZXZlbnQpXCJcbiAgICAvPlxuICAgIDxwcnktaWNvbiBpY29uU3ZnPVwic2VhcmNoXCIgW3dpZHRoXT1cIjE3XCIgW2hlaWdodF09XCIxN1wiPjwvcHJ5LWljb24+XG4gIDwvZGl2PlxuICA8ZGl2IGNsYXNzPVwiby1jaGlwcy1zZWxlY3Rvcl9faXRlbXNcIj5cbiAgICA8ZGl2ICpuZ0lmPVwiKCh1c2VkSXRlbXMkIHwgYXN5bmMpID8/IFtdKS5sZW5ndGggPiAwOyBlbHNlIG5vSXRlbXNcIiBjbGFzcz1cIm8tY2hpcHMtc2VsZWN0b3JfX3VzZWQtaXRlbXNcIj5cbiAgICAgIDxoNCBjbGFzcz1cImEtaDRcIj57eyB0cmFuc2xhdGlvblN0cmluZ0Jhc2UgKyAnc2VsZWN0aW9uJyB8IGkxOG4gfX08L2g0PlxuICAgICAgPHVsIGNsYXNzPVwiby1jaGlwcy1zZWxlY3Rvcl9fbGlzdFwiPlxuICAgICAgICA8bGkgKm5nRm9yPVwibGV0IGl0ZW0gb2YgdXNlZEl0ZW1zJCB8IGFzeW5jXCIgY2xhc3M9XCJvLWNoaXBzLXNlbGVjdG9yX19pdGVtXCI+XG4gICAgICAgICAgPGJ1dHRvbiBjbGFzcz1cImEtY2hpcCAtbWQgby1jaGlwcy1zZWxlY3Rvcl9fY2hpcFwiIChjbGljayk9XCJ0b2dnbGVJdGVtU2VsZWN0aW9uKGl0ZW0pXCIgdHlwZT1cImJ1dHRvblwiPlxuICAgICAgICAgICAgPHA+XG4gICAgICAgICAgICAgIHt7IGdldEl0ZW1MYWJlbChpdGVtKSB9fVxuICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgPHByeS1pY29uICpuZ0lmPVwiaXNHZW8oaXRlbSlcIiBpY29uU3ZnPVwiZ2xvYmVcIiBbd2lkdGhdPVwiMjJcIiBbaGVpZ2h0XT1cIjIyXCI+PC9wcnktaWNvbj5cbiAgICAgICAgICAgIDxwcnktaWNvbiBbaWNvblN2Z109XCInY2xvc2UnXCIgW3dpZHRoXT1cIjE3XCIgW2hlaWdodF09XCIxN1wiPjwvcHJ5LWljb24+XG4gICAgICAgICAgPC9idXR0b24+XG4gICAgICAgIDwvbGk+XG4gICAgICA8L3VsPlxuICAgIDwvZGl2PlxuICAgIDxuZy10ZW1wbGF0ZSAjbm9JdGVtcz5cbiAgICAgIDxzcGFuIGNsYXNzPVwiLW5vLWl0ZW1zXCI+e3sgdHJhbnNsYXRpb25TdHJpbmdCYXNlICsgJ25vSXRlbVNlbGVjdGVkJyB8IGkxOG4gfX08L3NwYW4+XG4gICAgPC9uZy10ZW1wbGF0ZT5cbiAgICA8ZGl2IGNsYXNzPVwiby1jaGlwcy1zZWxlY3Rvcl9fdW51c2VkLWl0ZW1zXCI+XG4gICAgICA8aDQgY2xhc3M9XCJhLWg0XCI+e3sgdHJhbnNsYXRpb25TdHJpbmdCYXNlICsgJ3NlbGVjdCcgfCBpMThuIH19PC9oND5cbiAgICAgIDx1bCBjbGFzcz1cIm8tY2hpcHMtc2VsZWN0b3JfX2xpc3RcIj5cbiAgICAgICAgPGxpICpuZ0Zvcj1cImxldCBpdGVtIG9mIHVudXNlZEl0ZW1zJCB8IGFzeW5jXCIgY2xhc3M9XCJvLWNoaXBzLXNlbGVjdG9yX19pdGVtXCI+XG4gICAgICAgICAgPGJ1dHRvbiBjbGFzcz1cImEtY2hpcCBhLWNoaXAtLWxpZ2h0IC1tZCBvLWNoaXBzLXNlbGVjdG9yX19jaGlwXCIgKGNsaWNrKT1cInRvZ2dsZUl0ZW1TZWxlY3Rpb24oaXRlbSlcIj5cbiAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidS12aXN1YWxseS1oaWRkZW5cIj57eyB0cmFuc2xhdGlvblN0cmluZ0Jhc2UgKyAnc2VsZWN0SXRlbScgfCBpMThuIH19PC9zcGFuPlxuICAgICAgICAgICAgPHAgY2xhc3M9XCJhLXBcIj57eyBnZXRJdGVtTGFiZWwoaXRlbSkgfX08L3A+XG4gICAgICAgICAgICA8cHJ5LWljb24gKm5nSWY9XCJpc0dlbyhpdGVtKVwiIGljb25Tdmc9XCJnbG9iZVwiIFt3aWR0aF09XCIyMlwiIFtoZWlnaHRdPVwiMjJcIj48L3ByeS1pY29uPlxuICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICA8L2xpPlxuICAgICAgPC91bD5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG4gIDxkaXYgKm5nSWY9XCJzaG93QWN0aW9uQnV0dG9uc1wiIGNsYXNzPVwibS1idG4tZ3JvdXAgby1jaGlwcy1zZWxlY3Rvcl9fZm9vdGVyXCI+XG4gICAgPGJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgKGNsaWNrKT1cImNhbmNlbC5lbWl0KClcIiBjbGFzcz1cImEtYnRuIGEtYnRuLS1zZWNvbmRhcnlcIj5cbiAgICAgIHt7ICdAcHJ5LnRvb2xib3gubWFuaWZlc3QuY2xvc2UnIHwgaTE4biB9fVxuICAgIDwvYnV0dG9uPlxuICAgIDxidXR0b25cbiAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgKGNsaWNrKT1cInZhbGlkYXRlZC5lbWl0KClcIlxuICAgICAgI3ZhbGlkYXRlXG4gICAgICAoa2V5ZG93bi50YWIpPVwibmV4dFRhYi5lbWl0KClcIlxuICAgICAgY2xhc3M9XCJhLWJ0biBhLWJ0bi0tcHJpbWFyeVwiXG4gICAgPlxuICAgICAge3sgJ0BwcnkudG9vbGJveC5tYW5pZmVzdC52YWxpZGF0ZWQnIHwgaTE4biB9fVxuICAgIDwvYnV0dG9uPlxuICA8L2Rpdj5cbjwvZGl2PlxuIl19
@@ -1,5 +1,6 @@
1
1
  export const DEFAULT_ICON_URL = '/assets/svgs/default.svg';
2
2
  export const DEFAULT_RESTITUTION_ICON_URL = '/assets/svgs/default-restitution.svg';
3
+ export const DEFAULT_DASHBOARD_ICON_URL = '/assets/svgs/default-dashboard.svg';
3
4
  export var IconPosition;
4
5
  (function (IconPosition) {
5
6
  IconPosition["FULL"] = "FULL";
@@ -16,4 +17,4 @@ export const compareOperationFunctions = {
16
17
  LOWER_OR_EQUAL: (a, b) => parseInt(a, 10) <= parseInt(b, 10),
17
18
  CONTAINS: (a, b) => (a + '').localeCompare(b + '') === 0
18
19
  };
19
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWNvbi1kZWZpbml0aW9ucy5pbnRlcmZhY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9wcm92b2x5L2Rhc2hib2FyZC9saWIvY29yZS9zdG9yZS9jb25maWcvaWNvbi1kZWZpbml0aW9ucy5pbnRlcmZhY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBY0EsTUFBTSxDQUFDLE1BQU0sZ0JBQWdCLEdBQUcsMEJBQTBCLENBQUM7QUFDM0QsTUFBTSxDQUFDLE1BQU0sNEJBQTRCLEdBQUcsc0NBQXNDLENBQUM7QUFFbkYsTUFBTSxDQUFOLElBQVksWUFNWDtBQU5ELFdBQVksWUFBWTtJQUN0Qiw2QkFBYSxDQUFBO0lBQ2IscUNBQXFCLENBQUE7SUFDckIsdUNBQXVCLENBQUE7SUFDdkIsMkNBQTJCLENBQUE7SUFDM0IsNkNBQTZCLENBQUE7QUFDL0IsQ0FBQyxFQU5XLFlBQVksS0FBWixZQUFZLFFBTXZCO0FBRUQsTUFBTSxDQUFDLE1BQU0seUJBQXlCLEdBQUc7SUFDdkMsTUFBTSxFQUFFLENBQUMsQ0FBTSxFQUFFLENBQU0sRUFBRSxFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUM7SUFDbkMsT0FBTyxFQUFFLENBQUMsQ0FBTSxFQUFFLENBQU0sRUFBRSxFQUFFLENBQUMsUUFBUSxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsR0FBRyxRQUFRLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQztJQUM5RCxnQkFBZ0IsRUFBRSxDQUFDLENBQU0sRUFBRSxDQUFNLEVBQUUsRUFBRSxDQUFDLFFBQVEsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLElBQUksUUFBUSxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUM7SUFDeEUsS0FBSyxFQUFFLENBQUMsQ0FBTSxFQUFFLENBQU0sRUFBRSxFQUFFLENBQUMsUUFBUSxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsR0FBRyxRQUFRLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQztJQUM1RCxjQUFjLEVBQUUsQ0FBQyxDQUFNLEVBQUUsQ0FBTSxFQUFFLEVBQUUsQ0FBQyxRQUFRLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxJQUFJLFFBQVEsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDO0lBQ3RFLFFBQVEsRUFBRSxDQUFDLENBQU0sRUFBRSxDQUFNLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDLGFBQWEsQ0FBQyxDQUFDLEdBQUcsRUFBRSxDQUFDLEtBQUssQ0FBQztDQUNuRSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgVmFsdWVUeXBlIH0gZnJvbSAnLi4vLi4vbW9kZWwvaXRlbS5pbnRlcmZhY2UnO1xuXG5leHBvcnQgaW50ZXJmYWNlIEljb25PcHRpb25zIHtcbiAgaWNvblVybDogc3RyaW5nO1xuICBpY29uU2l6ZTogW251bWJlciwgbnVtYmVyXTtcbiAgcnVsZT86IEljb25SdWxlO1xuICBwb3NpdGlvbj86IEljb25Qb3NpdGlvbjtcbiAgaXNEZWZhdWx0PzogYm9vbGVhbjtcbn1cblxuZXhwb3J0IHR5cGUgSWNvbkRlZmluaXRpb25zID0ge1xuICBbY2w6IHN0cmluZ106IEljb25PcHRpb25zW107XG59O1xuXG5leHBvcnQgY29uc3QgREVGQVVMVF9JQ09OX1VSTCA9ICcvYXNzZXRzL3N2Z3MvZGVmYXVsdC5zdmcnO1xuZXhwb3J0IGNvbnN0IERFRkFVTFRfUkVTVElUVVRJT05fSUNPTl9VUkwgPSAnL2Fzc2V0cy9zdmdzL2RlZmF1bHQtcmVzdGl0dXRpb24uc3ZnJztcblxuZXhwb3J0IGVudW0gSWNvblBvc2l0aW9uIHtcbiAgRlVMTCA9ICdGVUxMJyxcbiAgVE9QX0xFRlQgPSAnVE9QX0xFRlQnLFxuICBUT1BfUklHSFQgPSAnVE9QX1JJR0hUJyxcbiAgQk9UVE9NX0xFRlQgPSAnQk9UVE9NX0xFRlQnLFxuICBCT1RUT01fUklHSFQgPSAnQk9UVE9NX1JJR0hUJ1xufVxuXG5leHBvcnQgY29uc3QgY29tcGFyZU9wZXJhdGlvbkZ1bmN0aW9ucyA9IHtcbiAgRVFVQUxTOiAoYTogYW55LCBiOiBhbnkpID0+IGEgPT09IGIsXG4gIEdSRUFURVI6IChhOiBhbnksIGI6IGFueSkgPT4gcGFyc2VJbnQoYSwgMTApID4gcGFyc2VJbnQoYiwgMTApLFxuICBHUkVBVEVSX09SX0VRVUFMOiAoYTogYW55LCBiOiBhbnkpID0+IHBhcnNlSW50KGEsIDEwKSA+PSBwYXJzZUludChiLCAxMCksXG4gIExPV0VSOiAoYTogYW55LCBiOiBhbnkpID0+IHBhcnNlSW50KGEsIDEwKSA8IHBhcnNlSW50KGIsIDEwKSxcbiAgTE9XRVJfT1JfRVFVQUw6IChhOiBhbnksIGI6IGFueSkgPT4gcGFyc2VJbnQoYSwgMTApIDw9IHBhcnNlSW50KGIsIDEwKSxcbiAgQ09OVEFJTlM6IChhOiBhbnksIGI6IGFueSkgPT4gKGEgKyAnJykubG9jYWxlQ29tcGFyZShiICsgJycpID09PSAwXG59O1xuXG5leHBvcnQgdHlwZSBDb21wYXJlT3BlcmF0aW9uID0ga2V5b2YgdHlwZW9mIGNvbXBhcmVPcGVyYXRpb25GdW5jdGlvbnM7XG5cbmV4cG9ydCBpbnRlcmZhY2UgSWNvblJ1bGUge1xuICBhdHRyaWJ1dGVOYW1lOiBzdHJpbmc7XG4gIHZhbHVlOiBWYWx1ZVR5cGU7XG4gIG9wZXJhdGlvbjogQ29tcGFyZU9wZXJhdGlvbjtcbn1cbiJdfQ==
20
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWNvbi1kZWZpbml0aW9ucy5pbnRlcmZhY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9wcm92b2x5L2Rhc2hib2FyZC9saWIvY29yZS9zdG9yZS9jb25maWcvaWNvbi1kZWZpbml0aW9ucy5pbnRlcmZhY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBY0EsTUFBTSxDQUFDLE1BQU0sZ0JBQWdCLEdBQUcsMEJBQTBCLENBQUM7QUFDM0QsTUFBTSxDQUFDLE1BQU0sNEJBQTRCLEdBQUcsc0NBQXNDLENBQUM7QUFDbkYsTUFBTSxDQUFDLE1BQU0sMEJBQTBCLEdBQUcsb0NBQW9DLENBQUM7QUFFL0UsTUFBTSxDQUFOLElBQVksWUFNWDtBQU5ELFdBQVksWUFBWTtJQUN0Qiw2QkFBYSxDQUFBO0lBQ2IscUNBQXFCLENBQUE7SUFDckIsdUNBQXVCLENBQUE7SUFDdkIsMkNBQTJCLENBQUE7SUFDM0IsNkNBQTZCLENBQUE7QUFDL0IsQ0FBQyxFQU5XLFlBQVksS0FBWixZQUFZLFFBTXZCO0FBRUQsTUFBTSxDQUFDLE1BQU0seUJBQXlCLEdBQUc7SUFDdkMsTUFBTSxFQUFFLENBQUMsQ0FBTSxFQUFFLENBQU0sRUFBRSxFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUM7SUFDbkMsT0FBTyxFQUFFLENBQUMsQ0FBTSxFQUFFLENBQU0sRUFBRSxFQUFFLENBQUMsUUFBUSxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsR0FBRyxRQUFRLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQztJQUM5RCxnQkFBZ0IsRUFBRSxDQUFDLENBQU0sRUFBRSxDQUFNLEVBQUUsRUFBRSxDQUFDLFFBQVEsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLElBQUksUUFBUSxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUM7SUFDeEUsS0FBSyxFQUFFLENBQUMsQ0FBTSxFQUFFLENBQU0sRUFBRSxFQUFFLENBQUMsUUFBUSxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsR0FBRyxRQUFRLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQztJQUM1RCxjQUFjLEVBQUUsQ0FBQyxDQUFNLEVBQUUsQ0FBTSxFQUFFLEVBQUUsQ0FBQyxRQUFRLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxJQUFJLFFBQVEsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDO0lBQ3RFLFFBQVEsRUFBRSxDQUFDLENBQU0sRUFBRSxDQUFNLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDLGFBQWEsQ0FBQyxDQUFDLEdBQUcsRUFBRSxDQUFDLEtBQUssQ0FBQztDQUNuRSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgVmFsdWVUeXBlIH0gZnJvbSAnLi4vLi4vbW9kZWwvaXRlbS5pbnRlcmZhY2UnO1xuXG5leHBvcnQgaW50ZXJmYWNlIEljb25PcHRpb25zIHtcbiAgaWNvblVybDogc3RyaW5nO1xuICBpY29uU2l6ZTogW251bWJlciwgbnVtYmVyXTtcbiAgcnVsZT86IEljb25SdWxlO1xuICBwb3NpdGlvbj86IEljb25Qb3NpdGlvbjtcbiAgaXNEZWZhdWx0PzogYm9vbGVhbjtcbn1cblxuZXhwb3J0IHR5cGUgSWNvbkRlZmluaXRpb25zID0ge1xuICBbY2w6IHN0cmluZ106IEljb25PcHRpb25zW107XG59O1xuXG5leHBvcnQgY29uc3QgREVGQVVMVF9JQ09OX1VSTCA9ICcvYXNzZXRzL3N2Z3MvZGVmYXVsdC5zdmcnO1xuZXhwb3J0IGNvbnN0IERFRkFVTFRfUkVTVElUVVRJT05fSUNPTl9VUkwgPSAnL2Fzc2V0cy9zdmdzL2RlZmF1bHQtcmVzdGl0dXRpb24uc3ZnJztcbmV4cG9ydCBjb25zdCBERUZBVUxUX0RBU0hCT0FSRF9JQ09OX1VSTCA9ICcvYXNzZXRzL3N2Z3MvZGVmYXVsdC1kYXNoYm9hcmQuc3ZnJztcblxuZXhwb3J0IGVudW0gSWNvblBvc2l0aW9uIHtcbiAgRlVMTCA9ICdGVUxMJyxcbiAgVE9QX0xFRlQgPSAnVE9QX0xFRlQnLFxuICBUT1BfUklHSFQgPSAnVE9QX1JJR0hUJyxcbiAgQk9UVE9NX0xFRlQgPSAnQk9UVE9NX0xFRlQnLFxuICBCT1RUT01fUklHSFQgPSAnQk9UVE9NX1JJR0hUJ1xufVxuXG5leHBvcnQgY29uc3QgY29tcGFyZU9wZXJhdGlvbkZ1bmN0aW9ucyA9IHtcbiAgRVFVQUxTOiAoYTogYW55LCBiOiBhbnkpID0+IGEgPT09IGIsXG4gIEdSRUFURVI6IChhOiBhbnksIGI6IGFueSkgPT4gcGFyc2VJbnQoYSwgMTApID4gcGFyc2VJbnQoYiwgMTApLFxuICBHUkVBVEVSX09SX0VRVUFMOiAoYTogYW55LCBiOiBhbnkpID0+IHBhcnNlSW50KGEsIDEwKSA+PSBwYXJzZUludChiLCAxMCksXG4gIExPV0VSOiAoYTogYW55LCBiOiBhbnkpID0+IHBhcnNlSW50KGEsIDEwKSA8IHBhcnNlSW50KGIsIDEwKSxcbiAgTE9XRVJfT1JfRVFVQUw6IChhOiBhbnksIGI6IGFueSkgPT4gcGFyc2VJbnQoYSwgMTApIDw9IHBhcnNlSW50KGIsIDEwKSxcbiAgQ09OVEFJTlM6IChhOiBhbnksIGI6IGFueSkgPT4gKGEgKyAnJykubG9jYWxlQ29tcGFyZShiICsgJycpID09PSAwXG59O1xuXG5leHBvcnQgdHlwZSBDb21wYXJlT3BlcmF0aW9uID0ga2V5b2YgdHlwZW9mIGNvbXBhcmVPcGVyYXRpb25GdW5jdGlvbnM7XG5cbmV4cG9ydCBpbnRlcmZhY2UgSWNvblJ1bGUge1xuICBhdHRyaWJ1dGVOYW1lOiBzdHJpbmc7XG4gIHZhbHVlOiBWYWx1ZVR5cGU7XG4gIG9wZXJhdGlvbjogQ29tcGFyZU9wZXJhdGlvbjtcbn1cbiJdfQ==
@@ -52,14 +52,14 @@ export class DatasourceSelectorComponent extends ChipsSelectorComponent {
52
52
  }));
53
53
  }
54
54
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.3", ngImport: i0, type: DatasourceSelectorComponent, deps: [{ token: i1.Store }, { token: i0.ChangeDetectorRef }, { token: i2.PryI18nService }], target: i0.ɵɵFactoryTarget.Component }); }
55
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.1.3", type: DatasourceSelectorComponent, selector: "pry-datasource-selector", inputs: { usedItems: "usedItems", manifest: "manifest" }, usesInheritance: true, ngImport: i0, template: "<div class=\"o-chips-selector\" role=\"dialog\" aria-modal=\"true\" aria-labelledby=\"dialog_namedqueries\">\n <div *ngIf=\"showSearchbar\" class=\"o-widget__search\">\n <input\n id=\"catalog-search\"\n (keydown.shift.tab)=\"previousTab.emit()\"\n type=\"text\"\n class=\"a-form-field\"\n [placeholder]=\"'@pry.components.searchData' | i18n\"\n [ngModel]=\"search$ | async\"\n (ngModelChange)=\"search($event)\"\n />\n <pry-icon iconSvg=\"search\" [width]=\"17\" [height]=\"17\"></pry-icon>\n </div>\n <div *ngIf=\"((usedItems$ | async) ?? []).length > 0; else noItems\" class=\"o-chips-selector__selected-items\">\n <h4 class=\"a-h4\">{{ translationStringBase + 'selection' | i18n }}</h4>\n <div>\n <ul class=\"o-chips-selector__list o-chips-selector__list--selected\">\n <li *ngFor=\"let item of usedItems$ | async\" class=\"o-chips-selector__item\">\n <button class=\"a-chip -md o-chips-selector__chip\" (click)=\"toggleItemSelection(item)\" type=\"button\">\n <p>\n {{ getItemLabel(item) }}\n </p>\n <pry-icon *ngIf=\"isGeo(item)\" iconSvg=\"globe\" [width]=\"22\" [height]=\"22\"></pry-icon>\n <pry-icon [iconSvg]=\"'close'\" [width]=\"17\" [height]=\"17\"></pry-icon>\n </button>\n </li>\n </ul>\n </div>\n </div>\n <ng-template #noItems>\n <span class=\"-no-items\">{{ translationStringBase + 'noItemSelected' | i18n }}</span>\n </ng-template>\n <div class=\"o-chips-selector__unused-items\">\n <h4 class=\"a-h4\">{{ translationStringBase + 'select' | i18n }}</h4>\n <div class=\"o-chips-selector__main\">\n <ul class=\"o-chips-selector__list\">\n <li *ngFor=\"let item of unusedItems$ | async\" class=\"o-chips-selector__item\">\n <button class=\"a-chip a-chip--light -md o-chips-selector__chip\" (click)=\"toggleItemSelection(item)\">\n <span class=\"u-visually-hidden\">{{ translationStringBase + 'selectItem' | i18n }}</span>\n <p class=\"a-p\">{{ getItemLabel(item) }}</p>\n <pry-icon *ngIf=\"isGeo(item)\" iconSvg=\"globe\" [width]=\"22\" [height]=\"22\"></pry-icon>\n </button>\n </li>\n </ul>\n </div>\n </div>\n <div *ngIf=\"showActionButtons\" class=\"m-btn-group o-chips-selector__bottom\">\n <button type=\"button\" (click)=\"cancel.emit()\" class=\"a-btn a-btn--secondary\">\n {{ '@pry.toolbox.manifest.close' | i18n }}\n </button>\n <button\n type=\"button\"\n (click)=\"validated.emit()\"\n #validate\n (keydown.tab)=\"nextTab.emit()\"\n class=\"a-btn a-btn--primary\"\n >\n {{ '@pry.toolbox.manifest.validated' | i18n }}\n </button>\n </div>\n</div>\n", dependencies: [{ kind: "directive", type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i4.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i4.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i5.PryIconComponent, selector: "pry-icon", inputs: ["color", "iconSvg", "animation", "iconImage", "alt", "width", "height", "classes"] }, { kind: "pipe", type: i3.AsyncPipe, name: "async" }, { kind: "pipe", type: i6.I18nPipe, name: "i18n" }] }); }
55
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.1.3", type: DatasourceSelectorComponent, selector: "pry-datasource-selector", inputs: { usedItems: "usedItems", manifest: "manifest" }, usesInheritance: true, ngImport: i0, template: "<div class=\"o-chips-selector\" role=\"dialog\" aria-modal=\"true\" aria-labelledby=\"dialog_namedqueries\">\n <div *ngIf=\"showSearchbar\" class=\"o-widget__search\">\n <input\n id=\"catalog-search\"\n (keydown.shift.tab)=\"previousTab.emit()\"\n type=\"text\"\n class=\"a-form-field\"\n [placeholder]=\"'@pry.components.searchData' | i18n\"\n [ngModel]=\"search$ | async\"\n (ngModelChange)=\"search($event)\"\n />\n <pry-icon iconSvg=\"search\" [width]=\"17\" [height]=\"17\"></pry-icon>\n </div>\n <div class=\"o-chips-selector__items\">\n <div *ngIf=\"((usedItems$ | async) ?? []).length > 0; else noItems\" class=\"o-chips-selector__used-items\">\n <h4 class=\"a-h4\">{{ translationStringBase + 'selection' | i18n }}</h4>\n <ul class=\"o-chips-selector__list\">\n <li *ngFor=\"let item of usedItems$ | async\" class=\"o-chips-selector__item\">\n <button class=\"a-chip -md o-chips-selector__chip\" (click)=\"toggleItemSelection(item)\" type=\"button\">\n <p>\n {{ getItemLabel(item) }}\n </p>\n <pry-icon *ngIf=\"isGeo(item)\" iconSvg=\"globe\" [width]=\"22\" [height]=\"22\"></pry-icon>\n <pry-icon [iconSvg]=\"'close'\" [width]=\"17\" [height]=\"17\"></pry-icon>\n </button>\n </li>\n </ul>\n </div>\n <ng-template #noItems>\n <span class=\"-no-items\">{{ translationStringBase + 'noItemSelected' | i18n }}</span>\n </ng-template>\n <div class=\"o-chips-selector__unused-items\">\n <h4 class=\"a-h4\">{{ translationStringBase + 'select' | i18n }}</h4>\n <ul class=\"o-chips-selector__list\">\n <li *ngFor=\"let item of unusedItems$ | async\" class=\"o-chips-selector__item\">\n <button class=\"a-chip a-chip--light -md o-chips-selector__chip\" (click)=\"toggleItemSelection(item)\">\n <span class=\"u-visually-hidden\">{{ translationStringBase + 'selectItem' | i18n }}</span>\n <p class=\"a-p\">{{ getItemLabel(item) }}</p>\n <pry-icon *ngIf=\"isGeo(item)\" iconSvg=\"globe\" [width]=\"22\" [height]=\"22\"></pry-icon>\n </button>\n </li>\n </ul>\n </div>\n </div>\n <div *ngIf=\"showActionButtons\" class=\"m-btn-group o-chips-selector__footer\">\n <button type=\"button\" (click)=\"cancel.emit()\" class=\"a-btn a-btn--secondary\">\n {{ '@pry.toolbox.manifest.close' | i18n }}\n </button>\n <button\n type=\"button\"\n (click)=\"validated.emit()\"\n #validate\n (keydown.tab)=\"nextTab.emit()\"\n class=\"a-btn a-btn--primary\"\n >\n {{ '@pry.toolbox.manifest.validated' | i18n }}\n </button>\n </div>\n</div>\n", dependencies: [{ kind: "directive", type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i4.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i4.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i5.PryIconComponent, selector: "pry-icon", inputs: ["color", "iconSvg", "animation", "iconImage", "alt", "width", "height", "classes"] }, { kind: "pipe", type: i3.AsyncPipe, name: "async" }, { kind: "pipe", type: i6.I18nPipe, name: "i18n" }] }); }
56
56
  }
57
57
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.3", ngImport: i0, type: DatasourceSelectorComponent, decorators: [{
58
58
  type: Component,
59
- args: [{ selector: 'pry-datasource-selector', template: "<div class=\"o-chips-selector\" role=\"dialog\" aria-modal=\"true\" aria-labelledby=\"dialog_namedqueries\">\n <div *ngIf=\"showSearchbar\" class=\"o-widget__search\">\n <input\n id=\"catalog-search\"\n (keydown.shift.tab)=\"previousTab.emit()\"\n type=\"text\"\n class=\"a-form-field\"\n [placeholder]=\"'@pry.components.searchData' | i18n\"\n [ngModel]=\"search$ | async\"\n (ngModelChange)=\"search($event)\"\n />\n <pry-icon iconSvg=\"search\" [width]=\"17\" [height]=\"17\"></pry-icon>\n </div>\n <div *ngIf=\"((usedItems$ | async) ?? []).length > 0; else noItems\" class=\"o-chips-selector__selected-items\">\n <h4 class=\"a-h4\">{{ translationStringBase + 'selection' | i18n }}</h4>\n <div>\n <ul class=\"o-chips-selector__list o-chips-selector__list--selected\">\n <li *ngFor=\"let item of usedItems$ | async\" class=\"o-chips-selector__item\">\n <button class=\"a-chip -md o-chips-selector__chip\" (click)=\"toggleItemSelection(item)\" type=\"button\">\n <p>\n {{ getItemLabel(item) }}\n </p>\n <pry-icon *ngIf=\"isGeo(item)\" iconSvg=\"globe\" [width]=\"22\" [height]=\"22\"></pry-icon>\n <pry-icon [iconSvg]=\"'close'\" [width]=\"17\" [height]=\"17\"></pry-icon>\n </button>\n </li>\n </ul>\n </div>\n </div>\n <ng-template #noItems>\n <span class=\"-no-items\">{{ translationStringBase + 'noItemSelected' | i18n }}</span>\n </ng-template>\n <div class=\"o-chips-selector__unused-items\">\n <h4 class=\"a-h4\">{{ translationStringBase + 'select' | i18n }}</h4>\n <div class=\"o-chips-selector__main\">\n <ul class=\"o-chips-selector__list\">\n <li *ngFor=\"let item of unusedItems$ | async\" class=\"o-chips-selector__item\">\n <button class=\"a-chip a-chip--light -md o-chips-selector__chip\" (click)=\"toggleItemSelection(item)\">\n <span class=\"u-visually-hidden\">{{ translationStringBase + 'selectItem' | i18n }}</span>\n <p class=\"a-p\">{{ getItemLabel(item) }}</p>\n <pry-icon *ngIf=\"isGeo(item)\" iconSvg=\"globe\" [width]=\"22\" [height]=\"22\"></pry-icon>\n </button>\n </li>\n </ul>\n </div>\n </div>\n <div *ngIf=\"showActionButtons\" class=\"m-btn-group o-chips-selector__bottom\">\n <button type=\"button\" (click)=\"cancel.emit()\" class=\"a-btn a-btn--secondary\">\n {{ '@pry.toolbox.manifest.close' | i18n }}\n </button>\n <button\n type=\"button\"\n (click)=\"validated.emit()\"\n #validate\n (keydown.tab)=\"nextTab.emit()\"\n class=\"a-btn a-btn--primary\"\n >\n {{ '@pry.toolbox.manifest.validated' | i18n }}\n </button>\n </div>\n</div>\n" }]
59
+ args: [{ selector: 'pry-datasource-selector', template: "<div class=\"o-chips-selector\" role=\"dialog\" aria-modal=\"true\" aria-labelledby=\"dialog_namedqueries\">\n <div *ngIf=\"showSearchbar\" class=\"o-widget__search\">\n <input\n id=\"catalog-search\"\n (keydown.shift.tab)=\"previousTab.emit()\"\n type=\"text\"\n class=\"a-form-field\"\n [placeholder]=\"'@pry.components.searchData' | i18n\"\n [ngModel]=\"search$ | async\"\n (ngModelChange)=\"search($event)\"\n />\n <pry-icon iconSvg=\"search\" [width]=\"17\" [height]=\"17\"></pry-icon>\n </div>\n <div class=\"o-chips-selector__items\">\n <div *ngIf=\"((usedItems$ | async) ?? []).length > 0; else noItems\" class=\"o-chips-selector__used-items\">\n <h4 class=\"a-h4\">{{ translationStringBase + 'selection' | i18n }}</h4>\n <ul class=\"o-chips-selector__list\">\n <li *ngFor=\"let item of usedItems$ | async\" class=\"o-chips-selector__item\">\n <button class=\"a-chip -md o-chips-selector__chip\" (click)=\"toggleItemSelection(item)\" type=\"button\">\n <p>\n {{ getItemLabel(item) }}\n </p>\n <pry-icon *ngIf=\"isGeo(item)\" iconSvg=\"globe\" [width]=\"22\" [height]=\"22\"></pry-icon>\n <pry-icon [iconSvg]=\"'close'\" [width]=\"17\" [height]=\"17\"></pry-icon>\n </button>\n </li>\n </ul>\n </div>\n <ng-template #noItems>\n <span class=\"-no-items\">{{ translationStringBase + 'noItemSelected' | i18n }}</span>\n </ng-template>\n <div class=\"o-chips-selector__unused-items\">\n <h4 class=\"a-h4\">{{ translationStringBase + 'select' | i18n }}</h4>\n <ul class=\"o-chips-selector__list\">\n <li *ngFor=\"let item of unusedItems$ | async\" class=\"o-chips-selector__item\">\n <button class=\"a-chip a-chip--light -md o-chips-selector__chip\" (click)=\"toggleItemSelection(item)\">\n <span class=\"u-visually-hidden\">{{ translationStringBase + 'selectItem' | i18n }}</span>\n <p class=\"a-p\">{{ getItemLabel(item) }}</p>\n <pry-icon *ngIf=\"isGeo(item)\" iconSvg=\"globe\" [width]=\"22\" [height]=\"22\"></pry-icon>\n </button>\n </li>\n </ul>\n </div>\n </div>\n <div *ngIf=\"showActionButtons\" class=\"m-btn-group o-chips-selector__footer\">\n <button type=\"button\" (click)=\"cancel.emit()\" class=\"a-btn a-btn--secondary\">\n {{ '@pry.toolbox.manifest.close' | i18n }}\n </button>\n <button\n type=\"button\"\n (click)=\"validated.emit()\"\n #validate\n (keydown.tab)=\"nextTab.emit()\"\n class=\"a-btn a-btn--primary\"\n >\n {{ '@pry.toolbox.manifest.validated' | i18n }}\n </button>\n </div>\n</div>\n" }]
60
60
  }], ctorParameters: () => [{ type: i1.Store }, { type: i0.ChangeDetectorRef }, { type: i2.PryI18nService }], propDecorators: { usedItems: [{
61
61
  type: Input
62
62
  }], manifest: [{
63
63
  type: Input
64
64
  }] } });
65
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YXNvdXJjZS1zZWxlY3Rvci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9wcm92b2x5L2Rhc2hib2FyZC9saWIvZGFzaGJvYXJkL2NvbXBvbmVudHMvd2lkZ2V0cy9kYXRhc291cmNlLXNlbGVjdG9yL2RhdGFzb3VyY2Utc2VsZWN0b3IuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvcHJvdm9seS9kYXNoYm9hcmQvbGliL2NvcmUvY29tcG9uZW50cy9jaGlwcy1zZWxlY3Rvci9jaGlwcy1zZWxlY3Rvci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQXFCLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFcEUsT0FBTyxFQUFFLGVBQWUsRUFBRSxhQUFhLEVBQUUsR0FBRyxFQUFjLE1BQU0sTUFBTSxDQUFDO0FBQ3ZFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDREQUE0RCxDQUFDO0FBRWhHLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLDBEQUEwRCxDQUFDO0FBQy9GLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLHFFQUFxRSxDQUFDOzs7Ozs7OztBQVM3RyxNQUFNLE9BQU8sMkJBQTRCLFNBQVEsc0JBQXNCO0lBSXJFLElBQXNCLFNBQVMsQ0FBQyxLQUFZO1FBQzFDLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQy9CLENBQUM7SUFFRCxJQUFhLFFBQVEsQ0FBQyxRQUErQjtRQUNuRCxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUNoQyxDQUFDO0lBSUQsWUFBb0IsS0FBWSxFQUFFLEdBQXNCLEVBQUUsSUFBb0I7UUFDNUUsS0FBSyxDQUFDLEdBQUcsRUFBRSxJ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TyxRQUFRO3NCQUFwQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0b3JSZWYsIENvbXBvbmVudCwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFN0b3JlIH0gZnJvbSAnQG5ncngvc3RvcmUnO1xuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBjb21iaW5lTGF0ZXN0LCBtYXAsIE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IFVOS05PV05fREFUQVNPVVJDRSB9IGZyb20gJy4uLy4uLy4uLy4uL2NvcmUvY29tcG9uZW50cy90cmFuc2xhdGUtaWQvdHJhbnNsYXRlLWlkLnBpcGUnO1xuaW1wb3J0IHsgTmFtZWRRdWVyeSB9IGZyb20gJy4uLy4uLy4uLy4uL2NvcmUvc3RvcmUvZGF0YS1zb3VyY2UvZGF0YS1zb3VyY2UubW9kZWwnO1xuaW1wb3J0IHsgRGF0YVNvdXJjZVNlbGVjdG9ycyB9IGZyb20gJy4uLy4uLy4uLy4uL2NvcmUvc3RvcmUvZGF0YS1zb3VyY2UvZGF0YS1zb3VyY2Uuc2VsZWN0b3JzJztcbmltcG9ydCB7IENoaXBzU2VsZWN0b3JDb21wb25lbnQgfSBmcm9tICcuLi8uLi8uLi8uLi9jb3JlL2NvbXBvbmVudHMvY2hpcHMtc2VsZWN0b3IvY2hpcHMtc2VsZWN0b3IuY29tcG9uZW50JztcbmltcG9ydCB7IFdpZGdldE1hbmlmZXN0IH0gZnJvbSAnLi4vLi4vLi4vLi4vY29yZS9tb2RlbC9tYW5pZmVzdC5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgU3Vic2NyaXB0aW9ubmVyRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vc3Vic2NyaXB0aW9ubmVyLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBQcnlJMThuU2VydmljZSB9IGZyb20gJy4uLy4uLy4uLy4uL2NvcmUvaTE4bi9pMThuLnNlcnZpY2UnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdwcnktZGF0YXNvdXJjZS1zZWxlY3RvcicsXG4gIHRlbXBsYXRlVXJsOiAnLi4vLi4vLi4vLi4vY29yZS9jb21wb25lbnRzL2NoaXBzLXNlbGVjdG9yL2NoaXBzLXNlbGVjdG9yLmNvbXBvbmVudC5odG1sJ1xufSlcbmV4cG9ydCBjbGFzcyBEYXRhc291cmNlU2VsZWN0b3JDb21wb25lbnQgZXh0ZW5kcyBDaGlwc1NlbGVjdG9yQ29tcG9uZW50IGltcGxlbWVudHMgU3Vic2NyaXB0aW9ubmVyRGlyZWN0aXZlIHtcbiAgX3VzZWRJdGVtcyQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0KFtdIGFzIGFueVtdKTtcbiAgdXNlZERhdGFzb3VyY2VzJDogT2JzZXJ2YWJsZTxOYW1lZFF1ZXJ5W10+O1xuXG4gIEBJbnB1dCgpIG92ZXJyaWRlIHNldCB1c2VkSXRlbXMoaXRlbXM6IGFueVtdKSB7XG4gICAgdGhpcy5fdXNlZEl0ZW1zJC5uZXh0KGl0ZW1zKTtcbiAgfVxuXG4gIEBJbnB1dCgpIHNldCBtYW5pZmVzdChtYW5pZmVzdDogV2lkZ2V0TWFuaWZlc3QgfCBudWxsKSB7XG4gICAgdGhpcy5tYW5pZmVzdCQubmV4dChtYW5pZmVzdCk7XG4gIH1cblxuICBtYW5pZmVzdCQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PFdpZGdldE1hbmlmZXN0IHwgbnVsbD4obnVsbCk7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBzdG9yZTogU3RvcmUsIGNkcjogQ2hhbmdlRGV0ZWN0b3JSZWYsIGkxOG46IFByeUkxOG5TZXJ2aWNlKSB7XG4gICAgc3VwZXIoY2RyLCBpMThuKTtcbiAgICB0aGlzLnN1YnNjcmlwdGlvbnMuYWRkKFxuICAgICAgY29tYmluZUxhdGVzdChbdGhpcy5tYW5pZmVzdCQsIHRoaXMuc3RvcmUuc2VsZWN0KERhdGFTb3VyY2VTZWxlY3RvcnMuZ2V0RGF0YVNvdXJjZXNTb3J0ZWQpXSlcbiAgICAgICAgLnBpcGUoXG4gICAgICAgICAgbWFwKChbbWFuaWZlc3QsIGFsbE5hbWVkUXVlcmllc10pID0+IHtcbiAgICAgICAgICAgIGxldCBkc3MgPSBbLi4uYWxsTmFtZWRRdWVyaWVzXTtcbiAgICAgICAgICAgIGlmICghIW1hbmlmZXN0KSB7XG4gICAgICAgICAgICAgIGNvbnN0IG1hbmlmZXN0TmFtZWRRdWVyaWVzID0gQXJyYXkuaXNBcnJheShtYW5pZmVzdC5kYXRhc291cmNlKVxuICAgICAgICAgICAgICAgID8gbWFuaWZlc3QuZGF0YXNvdXJjZVxuICAgICAgICAgICAgICAgIDogW21hbmlmZXN0LmRhdGFzb3VyY2VdO1xuICAgICAgICAgICAgICBtYW5pZmVzdE5hbWVkUXVlcmllcy5mb3JFYWNoKChtYW5pZmVzdE5hbWVkUXVlcnkpID0+IHtcbiAgICAgICAgICAgICAgICBjb25zdCBhbHJlYWR5UHJlc2VudCA9ICEhYWxsTmFtZWRRdWVyaWVzLmZpbmQoKG5xKSA9PiBucS5pZCA9PT0gbWFuaWZlc3ROYW1lZFF1ZXJ5KTtcbiAgICAgICAgICAgICAgICBpZiAoIWFscmVhZHlQcmVzZW50KSB7XG4gICAgICAgICAgICAgICAgICBkc3MucHVzaChVTktOT1dOX0RBVEFTT1VSQ0UobWFuaWZlc3ROYW1lZFF1ZXJ5ID8/ICcnKSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHJldHVybiBkc3M7XG4gICAgICAgICAgfSlcbiAgICAgICAgKVxuICAgICAgICAuc3Vic2NyaWJlKChkYXRhc291cmNlcykgPT4ge1xuICAgICAgICAgIHRoaXMuaXRlbXMkLm5leHQoZGF0YXNvdXJjZXMpO1xuICAgICAgICB9KVxuICAgICk7XG5cbiAgICB0aGlzLnVzZWREYXRhc291cmNlcyQgPSBjb21iaW5lTGF0ZXN0KFtcbiAgICAgIHRoaXMuX3VzZWRJdGVtcyQsXG4gICAgICB0aGlzLnN0b3JlLnNlbGVjdChEYXRhU291cmNlU2VsZWN0b3JzLmdldERhdGFTb3VyY2VzKVxuICAgIF0pLnBpcGUoXG4gICAgICBtYXAoXG4gICAgICAgIChbdXNlZERhdGFzb3VyY2VzLCBkYXRhc291cmNlc10pID0+XG4gICAgICAgICAgdXNlZERhdGFzb3VyY2VzXG4gICAgICAgICAgICAubWFwKCh1c2VkRGF0YXNvdXJjZSkgPT4gZGF0YXNvdXJjZXMuZmluZCgoZHMpID0+IGRzLmlkID09PSB1c2VkRGF0YXNvdXJjZS5pZCkgPz8gdXNlZERhdGFzb3VyY2UpXG4gICAgICAgICAgICAubWFwKChucSkgPT4gKHR5cGVvZiBucSAhPT0gJ3N0cmluZycgPyBucSA6IFVOS05PV05fREFUQVNPVVJDRShucSkpKSBhcyBOYW1lZFF1ZXJ5W11cbiAgICAgIClcbiAgICApO1xuXG4gICAgdGhpcy5zdWJzY3JpcHRpb25zLmFkZChcbiAgICAgIHRoaXMudXNlZERhdGFzb3VyY2VzJC5zdWJzY3JpYmUoKHVzZWREYXRhc291cmNlcykgPT4ge1xuICAgICAgICB0aGlzLnVzZWRJdGVtcyQubmV4dCh1c2VkRGF0YXNvdXJjZXMpO1xuICAgICAgfSlcbiAgICApO1xuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwiby1jaGlwcy1zZWxlY3RvclwiIHJvbGU9XCJkaWFsb2dcIiBhcmlhLW1vZGFsPVwidHJ1ZVwiIGFyaWEtbGFiZWxsZWRieT1cImRpYWxvZ19uYW1lZHF1ZXJpZXNcIj5cbiAgPGRpdiAqbmdJZj1cInNob3dTZWFyY2hiYXJcIiBjbGFzcz1cIm8td2lkZ2V0X19zZWFyY2hcIj5cbiAgICA8aW5wdXRcbiAgICAgIGlkPVwiY2F0YWxvZy1zZWFyY2hcIlxuICAgICAgKGtleWRvd24uc2hpZnQudGFiKT1cInByZXZpb3VzVGFiLmVtaXQoKVwiXG4gICAgICB0eXBlPVwidGV4dFwiXG4gICAgICBjbGFzcz1cImEtZm9ybS1maWVsZFwiXG4gICAgICBbcGxhY2Vob2xkZXJdPVwiJ0BwcnkuY29tcG9uZW50cy5zZWFyY2hEYXRhJyB8IGkxOG5cIlxuICAgICAgW25nTW9kZWxdPVwic2VhcmNoJCB8IGFzeW5jXCJcbiAgICAgIChuZ01vZGVsQ2hhbmdlKT1cInNlYXJjaCgkZXZlbnQpXCJcbiAgICAvPlxuICAgIDxwcnktaWNvbiBpY29uU3ZnPVwic2VhcmNoXCIgW3dpZHRoXT1cIjE3XCIgW2hlaWdodF09XCIxN1wiPjwvcHJ5LWljb24+XG4gIDwvZGl2PlxuICA8ZGl2ICpuZ0lmPVwiKCh1c2VkSXRlbXMkIHwgYXN5bmMpID8/IFtdKS5sZW5ndGggPiAwOyBlbHNlIG5vSXRlbXNcIiBjbGFzcz1cIm8tY2hpcHMtc2VsZWN0b3JfX3NlbGVjdGVkLWl0ZW1zXCI+XG4gICAgPGg0IGNsYXNzPVwiYS1oNFwiPnt7IHRyYW5zbGF0aW9uU3RyaW5nQmFzZSArICdzZWxlY3Rpb24nIHwgaTE4biB9fTwvaDQ+XG4gICAgPGRpdj5cbiAgICAgIDx1bCBjbGFzcz1cIm8tY2hpcHMtc2VsZWN0b3JfX2xpc3Qgby1jaGlwcy1zZWxlY3Rvcl9fbGlzdC0tc2VsZWN0ZWRcIj5cbiAgICAgICAgPGxpICpuZ0Zvcj1cImxldCBpdGVtIG9mIHVzZWRJdGVtcyQgfCBhc3luY1wiIGNsYXNzPVwiby1jaGlwcy1zZWxlY3Rvcl9faXRlbVwiPlxuICAgICAgICAgIDxidXR0b24gY2xhc3M9XCJhLWNoaXAgLW1kIG8tY2hpcHMtc2VsZWN0b3JfX2NoaXBcIiAoY2xpY2spPVwidG9nZ2xlSXRlbVNlbGVjdGlvbihpdGVtKVwiIHR5cGU9XCJidXR0b25cIj5cbiAgICAgICAgICAgIDxwPlxuICAgICAgICAgICAgICB7eyBnZXRJdGVtTGFiZWwoaXRlbSkgfX1cbiAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgIDxwcnktaWNvbiAqbmdJZj1cImlzR2VvKGl0ZW0pXCIgaWNvblN2Zz1cImdsb2JlXCIgW3dpZHRoXT1cIjIyXCIgW2hlaWdodF09XCIyMlwiPjwvcHJ5LWljb24+XG4gICAgICAgICAgICA8cHJ5LWljb24gW2ljb25TdmddPVwiJ2Nsb3NlJ1wiIFt3aWR0aF09XCIxN1wiIFtoZWlnaHRdPVwiMTdcIj48L3ByeS1pY29uPlxuICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICA8L2xpPlxuICAgICAgPC91bD5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG4gIDxuZy10ZW1wbGF0ZSAjbm9JdGVtcz5cbiAgICA8c3BhbiBjbGFzcz1cIi1uby1pdGVtc1wiPnt7IHRyYW5zbGF0aW9uU3RyaW5nQmFzZSArICdub0l0ZW1TZWxlY3RlZCcgfCBpMThuIH19PC9zcGFuPlxuICA8L25nLXRlbXBsYXRlPlxuICA8ZGl2IGNsYXNzPVwiby1jaGlwcy1zZWxlY3Rvcl9fdW51c2VkLWl0ZW1zXCI+XG4gICAgPGg0IGNsYXNzPVwiYS1oNFwiPnt7IHRyYW5zbGF0aW9uU3RyaW5nQmFzZSArICdzZWxlY3QnIHwgaTE4biB9fTwvaDQ+XG4gICAgPGRpdiBjbGFzcz1cIm8tY2hpcHMtc2VsZWN0b3JfX21haW5cIj5cbiAgICAgIDx1bCBjbGFzcz1cIm8tY2hpcHMtc2VsZWN0b3JfX2xpc3RcIj5cbiAgICAgICAgPGxpICpuZ0Zvcj1cImxldCBpdGVtIG9mIHVudXNlZEl0ZW1zJCB8IGFzeW5jXCIgY2xhc3M9XCJvLWNoaXBzLXNlbGVjdG9yX19pdGVtXCI+XG4gICAgICAgICAgPGJ1dHRvbiBjbGFzcz1cImEtY2hpcCBhLWNoaXAtLWxpZ2h0IC1tZCBvLWNoaXBzLXNlbGVjdG9yX19jaGlwXCIgKGNsaWNrKT1cInRvZ2dsZUl0ZW1TZWxlY3Rpb24oaXRlbSlcIj5cbiAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidS12aXN1YWxseS1oaWRkZW5cIj57eyB0cmFuc2xhdGlvblN0cmluZ0Jhc2UgKyAnc2VsZWN0SXRlbScgfCBpMThuIH19PC9zcGFuPlxuICAgICAgICAgICAgPHAgY2xhc3M9XCJhLXBcIj57eyBnZXRJdGVtTGFiZWwoaXRlbSkgfX08L3A+XG4gICAgICAgICAgICA8cHJ5LWljb24gKm5nSWY9XCJpc0dlbyhpdGVtKVwiIGljb25Tdmc9XCJnbG9iZVwiIFt3aWR0aF09XCIyMlwiIFtoZWlnaHRdPVwiMjJcIj48L3ByeS1pY29uPlxuICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICA8L2xpPlxuICAgICAgPC91bD5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG4gIDxkaXYgKm5nSWY9XCJzaG93QWN0aW9uQnV0dG9uc1wiIGNsYXNzPVwibS1idG4tZ3JvdXAgby1jaGlwcy1zZWxlY3Rvcl9fYm90dG9tXCI+XG4gICAgPGJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgKGNsaWNrKT1cImNhbmNlbC5lbWl0KClcIiBjbGFzcz1cImEtYnRuIGEtYnRuLS1zZWNvbmRhcnlcIj5cbiAgICAgIHt7ICdAcHJ5LnRvb2xib3gubWFuaWZlc3QuY2xvc2UnIHwgaTE4biB9fVxuICAgIDwvYnV0dG9uPlxuICAgIDxidXR0b25cbiAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgKGNsaWNrKT1cInZhbGlkYXRlZC5lbWl0KClcIlxuICAgICAgI3ZhbGlkYXRlXG4gICAgICAoa2V5ZG93bi50YWIpPVwibmV4dFRhYi5lbWl0KClcIlxuICAgICAgY2xhc3M9XCJhLWJ0biBhLWJ0bi0tcHJpbWFyeVwiXG4gICAgPlxuICAgICAge3sgJ0BwcnkudG9vbGJveC5tYW5pZmVzdC52YWxpZGF0ZWQnIHwgaTE4biB9fVxuICAgIDwvYnV0dG9uPlxuICA8L2Rpdj5cbjwvZGl2PlxuIl19
65
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YXNvdXJjZS1zZWxlY3Rvci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9wcm92b2x5L2Rhc2hib2FyZC9saWIvZGFzaGJvYXJkL2NvbXBvbmVudHMvd2lkZ2V0cy9kYXRhc291cmNlLXNlbGVjdG9yL2RhdGFzb3VyY2Utc2VsZWN0b3IuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvcHJvdm9seS9kYXNoYm9hcmQvbGliL2NvcmUvY29tcG9uZW50cy9jaGlwcy1zZWxlY3Rvci9jaGlwcy1zZWxlY3Rvci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQXFCLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFcEUsT0FBTyxFQUFFLGVBQWUsRUFBRSxhQUFhLEVBQUUsR0FBRyxFQUFjLE1BQU0sTUFBTSxDQUFDO0FBQ3ZFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDREQUE0RCxDQUFDO0FBRWhHLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLDBEQUEwRCxDQUFDO0FBQy9GLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLHFFQUFxRSxDQUFDOzs7Ozs7OztBQVM3RyxNQUFNLE9BQU8sMkJBQTRCLFNBQVEsc0JBQXNCO0lBSXJFLElBQXNCLFNBQVMsQ0FBQyxLQUFZO1FBQzFDLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQy9CLENBQUM7SUFFRCxJQUFhLFFBQVEsQ0FBQyxRQUErQjtRQUNuRCxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUNoQyxDQUFDO0lBSUQsWUFBb0IsS0FBWSxFQUFFLEdBQXNCLEVBQUUsSUFBb0I7UUFDNUUsS0FBSyxDQUFDLEdBQUcsRUFBRSxJ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TyxRQUFRO3NCQUFwQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0b3JSZWYsIENvbXBvbmVudCwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFN0b3JlIH0gZnJvbSAnQG5ncngvc3RvcmUnO1xuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBjb21iaW5lTGF0ZXN0LCBtYXAsIE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IFVOS05PV05fREFUQVNPVVJDRSB9IGZyb20gJy4uLy4uLy4uLy4uL2NvcmUvY29tcG9uZW50cy90cmFuc2xhdGUtaWQvdHJhbnNsYXRlLWlkLnBpcGUnO1xuaW1wb3J0IHsgTmFtZWRRdWVyeSB9IGZyb20gJy4uLy4uLy4uLy4uL2NvcmUvc3RvcmUvZGF0YS1zb3VyY2UvZGF0YS1zb3VyY2UubW9kZWwnO1xuaW1wb3J0IHsgRGF0YVNvdXJjZVNlbGVjdG9ycyB9IGZyb20gJy4uLy4uLy4uLy4uL2NvcmUvc3RvcmUvZGF0YS1zb3VyY2UvZGF0YS1zb3VyY2Uuc2VsZWN0b3JzJztcbmltcG9ydCB7IENoaXBzU2VsZWN0b3JDb21wb25lbnQgfSBmcm9tICcuLi8uLi8uLi8uLi9jb3JlL2NvbXBvbmVudHMvY2hpcHMtc2VsZWN0b3IvY2hpcHMtc2VsZWN0b3IuY29tcG9uZW50JztcbmltcG9ydCB7IFdpZGdldE1hbmlmZXN0IH0gZnJvbSAnLi4vLi4vLi4vLi4vY29yZS9tb2RlbC9tYW5pZmVzdC5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgU3Vic2NyaXB0aW9ubmVyRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vc3Vic2NyaXB0aW9ubmVyLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBQcnlJMThuU2VydmljZSB9IGZyb20gJy4uLy4uLy4uLy4uL2NvcmUvaTE4bi9pMThuLnNlcnZpY2UnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdwcnktZGF0YXNvdXJjZS1zZWxlY3RvcicsXG4gIHRlbXBsYXRlVXJsOiAnLi4vLi4vLi4vLi4vY29yZS9jb21wb25lbnRzL2NoaXBzLXNlbGVjdG9yL2NoaXBzLXNlbGVjdG9yLmNvbXBvbmVudC5odG1sJ1xufSlcbmV4cG9ydCBjbGFzcyBEYXRhc291cmNlU2VsZWN0b3JDb21wb25lbnQgZXh0ZW5kcyBDaGlwc1NlbGVjdG9yQ29tcG9uZW50IGltcGxlbWVudHMgU3Vic2NyaXB0aW9ubmVyRGlyZWN0aXZlIHtcbiAgX3VzZWRJdGVtcyQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0KFtdIGFzIGFueVtdKTtcbiAgdXNlZERhdGFzb3VyY2VzJDogT2JzZXJ2YWJsZTxOYW1lZFF1ZXJ5W10+O1xuXG4gIEBJbnB1dCgpIG92ZXJyaWRlIHNldCB1c2VkSXRlbXMoaXRlbXM6IGFueVtdKSB7XG4gICAgdGhpcy5fdXNlZEl0ZW1zJC5uZXh0KGl0ZW1zKTtcbiAgfVxuXG4gIEBJbnB1dCgpIHNldCBtYW5pZmVzdChtYW5pZmVzdDogV2lkZ2V0TWFuaWZlc3QgfCBudWxsKSB7XG4gICAgdGhpcy5tYW5pZmVzdCQubmV4dChtYW5pZmVzdCk7XG4gIH1cblxuICBtYW5pZmVzdCQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PFdpZGdldE1hbmlmZXN0IHwgbnVsbD4obnVsbCk7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBzdG9yZTogU3RvcmUsIGNkcjogQ2hhbmdlRGV0ZWN0b3JSZWYsIGkxOG46IFByeUkxOG5TZXJ2aWNlKSB7XG4gICAgc3VwZXIoY2RyLCBpMThuKTtcbiAgICB0aGlzLnN1YnNjcmlwdGlvbnMuYWRkKFxuICAgICAgY29tYmluZUxhdGVzdChbdGhpcy5tYW5pZmVzdCQsIHRoaXMuc3RvcmUuc2VsZWN0KERhdGFTb3VyY2VTZWxlY3RvcnMuZ2V0RGF0YVNvdXJjZXNTb3J0ZWQpXSlcbiAgICAgICAgLnBpcGUoXG4gICAgICAgICAgbWFwKChbbWFuaWZlc3QsIGFsbE5hbWVkUXVlcmllc10pID0+IHtcbiAgICAgICAgICAgIGxldCBkc3MgPSBbLi4uYWxsTmFtZWRRdWVyaWVzXTtcbiAgICAgICAgICAgIGlmICghIW1hbmlmZXN0KSB7XG4gICAgICAgICAgICAgIGNvbnN0IG1hbmlmZXN0TmFtZWRRdWVyaWVzID0gQXJyYXkuaXNBcnJheShtYW5pZmVzdC5kYXRhc291cmNlKVxuICAgICAgICAgICAgICAgID8gbWFuaWZlc3QuZGF0YXNvdXJjZVxuICAgICAgICAgICAgICAgIDogW21hbmlmZXN0LmRhdGFzb3VyY2VdO1xuICAgICAgICAgICAgICBtYW5pZmVzdE5hbWVkUXVlcmllcy5mb3JFYWNoKChtYW5pZmVzdE5hbWVkUXVlcnkpID0+IHtcbiAgICAgICAgICAgICAgICBjb25zdCBhbHJlYWR5UHJlc2VudCA9ICEhYWxsTmFtZWRRdWVyaWVzLmZpbmQoKG5xKSA9PiBucS5pZCA9PT0gbWFuaWZlc3ROYW1lZFF1ZXJ5KTtcbiAgICAgICAgICAgICAgICBpZiAoIWFscmVhZHlQcmVzZW50KSB7XG4gICAgICAgICAgICAgICAgICBkc3MucHVzaChVTktOT1dOX0RBVEFTT1VSQ0UobWFuaWZlc3ROYW1lZFF1ZXJ5ID8/ICcnKSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHJldHVybiBkc3M7XG4gICAgICAgICAgfSlcbiAgICAgICAgKVxuICAgICAgICAuc3Vic2NyaWJlKChkYXRhc291cmNlcykgPT4ge1xuICAgICAgICAgIHRoaXMuaXRlbXMkLm5leHQoZGF0YXNvdXJjZXMpO1xuICAgICAgICB9KVxuICAgICk7XG5cbiAgICB0aGlzLnVzZWREYXRhc291cmNlcyQgPSBjb21iaW5lTGF0ZXN0KFtcbiAgICAgIHRoaXMuX3VzZWRJdGVtcyQsXG4gICAgICB0aGlzLnN0b3JlLnNlbGVjdChEYXRhU291cmNlU2VsZWN0b3JzLmdldERhdGFTb3VyY2VzKVxuICAgIF0pLnBpcGUoXG4gICAgICBtYXAoXG4gICAgICAgIChbdXNlZERhdGFzb3VyY2VzLCBkYXRhc291cmNlc10pID0+XG4gICAgICAgICAgdXNlZERhdGFzb3VyY2VzXG4gICAgICAgICAgICAubWFwKCh1c2VkRGF0YXNvdXJjZSkgPT4gZGF0YXNvdXJjZXMuZmluZCgoZHMpID0+IGRzLmlkID09PSB1c2VkRGF0YXNvdXJjZS5pZCkgPz8gdXNlZERhdGFzb3VyY2UpXG4gICAgICAgICAgICAubWFwKChucSkgPT4gKHR5cGVvZiBucSAhPT0gJ3N0cmluZycgPyBucSA6IFVOS05PV05fREFUQVNPVVJDRShucSkpKSBhcyBOYW1lZFF1ZXJ5W11cbiAgICAgIClcbiAgICApO1xuXG4gICAgdGhpcy5zdWJzY3JpcHRpb25zLmFkZChcbiAgICAgIHRoaXMudXNlZERhdGFzb3VyY2VzJC5zdWJzY3JpYmUoKHVzZWREYXRhc291cmNlcykgPT4ge1xuICAgICAgICB0aGlzLnVzZWRJdGVtcyQubmV4dCh1c2VkRGF0YXNvdXJjZXMpO1xuICAgICAgfSlcbiAgICApO1xuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwiby1jaGlwcy1zZWxlY3RvclwiIHJvbGU9XCJkaWFsb2dcIiBhcmlhLW1vZGFsPVwidHJ1ZVwiIGFyaWEtbGFiZWxsZWRieT1cImRpYWxvZ19uYW1lZHF1ZXJpZXNcIj5cbiAgPGRpdiAqbmdJZj1cInNob3dTZWFyY2hiYXJcIiBjbGFzcz1cIm8td2lkZ2V0X19zZWFyY2hcIj5cbiAgICA8aW5wdXRcbiAgICAgIGlkPVwiY2F0YWxvZy1zZWFyY2hcIlxuICAgICAgKGtleWRvd24uc2hpZnQudGFiKT1cInByZXZpb3VzVGFiLmVtaXQoKVwiXG4gICAgICB0eXBlPVwidGV4dFwiXG4gICAgICBjbGFzcz1cImEtZm9ybS1maWVsZFwiXG4gICAgICBbcGxhY2Vob2xkZXJdPVwiJ0BwcnkuY29tcG9uZW50cy5zZWFyY2hEYXRhJyB8IGkxOG5cIlxuICAgICAgW25nTW9kZWxdPVwic2VhcmNoJCB8IGFzeW5jXCJcbiAgICAgIChuZ01vZGVsQ2hhbmdlKT1cInNlYXJjaCgkZXZlbnQpXCJcbiAgICAvPlxuICAgIDxwcnktaWNvbiBpY29uU3ZnPVwic2VhcmNoXCIgW3dpZHRoXT1cIjE3XCIgW2hlaWdodF09XCIxN1wiPjwvcHJ5LWljb24+XG4gIDwvZGl2PlxuICA8ZGl2IGNsYXNzPVwiby1jaGlwcy1zZWxlY3Rvcl9faXRlbXNcIj5cbiAgICA8ZGl2ICpuZ0lmPVwiKCh1c2VkSXRlbXMkIHwgYXN5bmMpID8/IFtdKS5sZW5ndGggPiAwOyBlbHNlIG5vSXRlbXNcIiBjbGFzcz1cIm8tY2hpcHMtc2VsZWN0b3JfX3VzZWQtaXRlbXNcIj5cbiAgICAgIDxoNCBjbGFzcz1cImEtaDRcIj57eyB0cmFuc2xhdGlvblN0cmluZ0Jhc2UgKyAnc2VsZWN0aW9uJyB8IGkxOG4gfX08L2g0PlxuICAgICAgPHVsIGNsYXNzPVwiby1jaGlwcy1zZWxlY3Rvcl9fbGlzdFwiPlxuICAgICAgICA8bGkgKm5nRm9yPVwibGV0IGl0ZW0gb2YgdXNlZEl0ZW1zJCB8IGFzeW5jXCIgY2xhc3M9XCJvLWNoaXBzLXNlbGVjdG9yX19pdGVtXCI+XG4gICAgICAgICAgPGJ1dHRvbiBjbGFzcz1cImEtY2hpcCAtbWQgby1jaGlwcy1zZWxlY3Rvcl9fY2hpcFwiIChjbGljayk9XCJ0b2dnbGVJdGVtU2VsZWN0aW9uKGl0ZW0pXCIgdHlwZT1cImJ1dHRvblwiPlxuICAgICAgICAgICAgPHA+XG4gICAgICAgICAgICAgIHt7IGdldEl0ZW1MYWJlbChpdGVtKSB9fVxuICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgPHByeS1pY29uICpuZ0lmPVwiaXNHZW8oaXRlbSlcIiBpY29uU3ZnPVwiZ2xvYmVcIiBbd2lkdGhdPVwiMjJcIiBbaGVpZ2h0XT1cIjIyXCI+PC9wcnktaWNvbj5cbiAgICAgICAgICAgIDxwcnktaWNvbiBbaWNvblN2Z109XCInY2xvc2UnXCIgW3dpZHRoXT1cIjE3XCIgW2hlaWdodF09XCIxN1wiPjwvcHJ5LWljb24+XG4gICAgICAgICAgPC9idXR0b24+XG4gICAgICAgIDwvbGk+XG4gICAgICA8L3VsPlxuICAgIDwvZGl2PlxuICAgIDxuZy10ZW1wbGF0ZSAjbm9JdGVtcz5cbiAgICAgIDxzcGFuIGNsYXNzPVwiLW5vLWl0ZW1zXCI+e3sgdHJhbnNsYXRpb25TdHJpbmdCYXNlICsgJ25vSXRlbVNlbGVjdGVkJyB8IGkxOG4gfX08L3NwYW4+XG4gICAgPC9uZy10ZW1wbGF0ZT5cbiAgICA8ZGl2IGNsYXNzPVwiby1jaGlwcy1zZWxlY3Rvcl9fdW51c2VkLWl0ZW1zXCI+XG4gICAgICA8aDQgY2xhc3M9XCJhLWg0XCI+e3sgdHJhbnNsYXRpb25TdHJpbmdCYXNlICsgJ3NlbGVjdCcgfCBpMThuIH19PC9oND5cbiAgICAgIDx1bCBjbGFzcz1cIm8tY2hpcHMtc2VsZWN0b3JfX2xpc3RcIj5cbiAgICAgICAgPGxpICpuZ0Zvcj1cImxldCBpdGVtIG9mIHVudXNlZEl0ZW1zJCB8IGFzeW5jXCIgY2xhc3M9XCJvLWNoaXBzLXNlbGVjdG9yX19pdGVtXCI+XG4gICAgICAgICAgPGJ1dHRvbiBjbGFzcz1cImEtY2hpcCBhLWNoaXAtLWxpZ2h0IC1tZCBvLWNoaXBzLXNlbGVjdG9yX19jaGlwXCIgKGNsaWNrKT1cInRvZ2dsZUl0ZW1TZWxlY3Rpb24oaXRlbSlcIj5cbiAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidS12aXN1YWxseS1oaWRkZW5cIj57eyB0cmFuc2xhdGlvblN0cmluZ0Jhc2UgKyAnc2VsZWN0SXRlbScgfCBpMThuIH19PC9zcGFuPlxuICAgICAgICAgICAgPHAgY2xhc3M9XCJhLXBcIj57eyBnZXRJdGVtTGFiZWwoaXRlbSkgfX08L3A+XG4gICAgICAgICAgICA8cHJ5LWljb24gKm5nSWY9XCJpc0dlbyhpdGVtKVwiIGljb25Tdmc9XCJnbG9iZVwiIFt3aWR0aF09XCIyMlwiIFtoZWlnaHRdPVwiMjJcIj48L3ByeS1pY29uPlxuICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICA8L2xpPlxuICAgICAgPC91bD5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG4gIDxkaXYgKm5nSWY9XCJzaG93QWN0aW9uQnV0dG9uc1wiIGNsYXNzPVwibS1idG4tZ3JvdXAgby1jaGlwcy1zZWxlY3Rvcl9fZm9vdGVyXCI+XG4gICAgPGJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgKGNsaWNrKT1cImNhbmNlbC5lbWl0KClcIiBjbGFzcz1cImEtYnRuIGEtYnRuLS1zZWNvbmRhcnlcIj5cbiAgICAgIHt7ICdAcHJ5LnRvb2xib3gubWFuaWZlc3QuY2xvc2UnIHwgaTE4biB9fVxuICAgIDwvYnV0dG9uPlxuICAgIDxidXR0b25cbiAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgKGNsaWNrKT1cInZhbGlkYXRlZC5lbWl0KClcIlxuICAgICAgI3ZhbGlkYXRlXG4gICAgICAoa2V5ZG93bi50YWIpPVwibmV4dFRhYi5lbWl0KClcIlxuICAgICAgY2xhc3M9XCJhLWJ0biBhLWJ0bi0tcHJpbWFyeVwiXG4gICAgPlxuICAgICAge3sgJ0BwcnkudG9vbGJveC5tYW5pZmVzdC52YWxpZGF0ZWQnIHwgaTE4biB9fVxuICAgIDwvYnV0dG9uPlxuICA8L2Rpdj5cbjwvZGl2PlxuIl19
@@ -1,6 +1,6 @@
1
1
  import { Component, EventEmitter, Input, Optional, Output } from '@angular/core';
2
2
  import { FormControl, FormGroup, Validators } from '@angular/forms';
3
- import { DashboardActions, DashboardGridLayout, DashboardSelectors, DEFAULT_RESTITUTION_ICON_URL, LibraryTypes, SubscriptionnerDirective, ViewMode, WidgetPlacementUtils } from '@provoly/dashboard';
3
+ import { DashboardActions, DashboardGridLayout, DashboardSelectors, DEFAULT_DASHBOARD_ICON_URL, LibraryTypes, SubscriptionnerDirective, ViewMode, WidgetPlacementUtils } from '@provoly/dashboard';
4
4
  import { BehaviorSubject, combineLatest, take } from 'rxjs';
5
5
  import { MetadataActions, MetadataSelectors } from '@provoly/dashboard/components/metadata-editor';
6
6
  import { v4 as uuidv4 } from 'uuid';
@@ -23,7 +23,7 @@ export class PryAddEditPresentationComponent extends SubscriptionnerDirective {
23
23
  this.selectedPresentation$ = new BehaviorSubject(null);
24
24
  this.edition = false;
25
25
  this.editionStartUrl = '/';
26
- this.image = DEFAULT_RESTITUTION_ICON_URL;
26
+ this.image = DEFAULT_DASHBOARD_ICON_URL;
27
27
  this.goBack = new EventEmitter();
28
28
  this.type = LibraryTypes.ILLUSTRATION;
29
29
  this.chosenLayout = DashboardGridLayout.FULL;
@@ -53,7 +53,7 @@ export class PryAddEditPresentationComponent extends SubscriptionnerDirective {
53
53
  description: new FormControl(undefined, [Validators.maxLength(200)]),
54
54
  theme: new FormControl('')
55
55
  });
56
- this.image = this.selectedPresentation$.value?.image ?? DEFAULT_RESTITUTION_ICON_URL;
56
+ this.image = this.selectedPresentation$.value?.image ?? DEFAULT_DASHBOARD_ICON_URL;
57
57
  this.subscriptions.add(this.selectedPresentation$.subscribe((presentation) => {
58
58
  const theme = presentation?.metadata?.find((metadata) => metadata.metadataDef.name === '_theme')?.value;
59
59
  if (!!theme)
@@ -82,7 +82,7 @@ export class PryAddEditPresentationComponent extends SubscriptionnerDirective {
82
82
  id: this.selectedPresentation$.value?.id || uuidv4(),
83
83
  name: this.form.value.name ?? '',
84
84
  description: this.form.value.description ?? undefined,
85
- image: this.image ?? DEFAULT_RESTITUTION_ICON_URL,
85
+ image: this.image ?? DEFAULT_DASHBOARD_ICON_URL,
86
86
  metadata: this.metadata()
87
87
  };
88
88
  this.subscriptions.add(this.staticManifest$.pipe(take(1)).subscribe((staticManifest) => {
@@ -105,7 +105,7 @@ export class PryAddEditPresentationComponent extends SubscriptionnerDirective {
105
105
  ...this.selectedPresentation$.value,
106
106
  name: this.form.value.name ?? '',
107
107
  description: this.form.value.description,
108
- image: this.image ?? DEFAULT_RESTITUTION_ICON_URL,
108
+ image: this.image ?? DEFAULT_DASHBOARD_ICON_URL,
109
109
  metadata: this.metadata()
110
110
  };
111
111
  if (!this.edition) {
@@ -188,4 +188,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.3", ngImpor
188
188
  }], mode: [{
189
189
  type: Input
190
190
  }] } });
191
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWRkLWVkaXQtcHJlc2VudGF0aW9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3Byb3ZvbHkvZGFzaGJvYXJkL3ByZXNlbnRhdGlvbi9jb21wb25lbnRzL2FkZC1lZGl0LXByZXNlbnRhdGlvbi9hZGQtZWRpdC1wcmVzZW50YXRpb24uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvcHJvdm9seS9kYXNoYm9hcmQvcHJlc2VudGF0aW9uL2NvbXBvbmVudHMvYWRkLWVkaXQtcHJlc2VudGF0aW9uL2FkZC1lZGl0LXByZXNlbnRhdGlvbi5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQWlCLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFVLFFBQVEsRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDeEcsT0FBTyxFQUFFLFdBQVcsRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFHcEUsT0FBTyxFQUNMLGdCQUFnQixFQUNoQixtQkFBbUIsRUFDbkIsa0JBQWtCLEVBQ2xCLDRCQUE0QixFQUc1QixZQUFZLEVBRVosd0JBQXdCLEVBQ3hCLFFBQVEsRUFDUixvQkFBb0IsRUFDckIsTUFBTSxvQkFBb0IsQ0FBQztBQUM1QixPQUFPLEVBQUUsZUFBZSxFQUFFLGFBQWEsRUFBYyxJQUFJLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDeEUsT0FBTyxFQUFFLGVBQWUsRUFBRSxpQkFBaUIsRUFBaUIsTUFBTSwrQ0FBK0MsQ0FBQztBQUNsSCxPQUFPLEVBQUUsRUFBRSxJQUFJLE1BQU0sRUFBRSxNQUFNLE1BQU0sQ0FBQzs7Ozs7Ozs7O0FBTXBDLE1BQU0sT0FBTywrQkFBZ0MsU0FBUSx3QkFBd0I7SUFjM0UsSUFBYSxvQkFBb0IsQ0FBQyxZQUF3QztRQUN4RSxJQUFJLENB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LE9BQU8sSUFBSSxDQUFDLElBQUksS0FBSyxPQUFPO1lBQzFCLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLEtBQUssRUFBRTtnQkFDdEQsQ0FBQyxDQUFDLEVBQUU7Z0JBQ0osQ0FBQyxDQUFDO29CQUNFO3dCQUNFLFdBQVcsRUFBRSxJQUFJLENBQUMsWUFBYSxDQUFDLElBQUksQ0FBQyxDQUFDLFFBQVEsRUFBRSxFQUFFLENBQUMsUUFBUSxDQUFDLEVBQUUsS0FBSyxJQUFJLENBQUMsZUFBZSxDQUFFO3dCQUN6RixLQUFLLEVBQUUsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxJQUFJLEVBQUU7cUJBQ25DO2lCQUNGO1lBQ0wsQ0FBQyxDQUFDLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxLQUFLLEVBQUUsUUFBUSxJQUFJLEVBQUUsQ0FBQztJQUN2RCxDQUFDOzhHQWpNVSwrQkFBK0I7a0dBQS9CLCtCQUErQix1UEN6QjVDLDZqSkE2R0E7OzJGRHBGYSwrQkFBK0I7a0JBSjNDLFNBQVM7K0JBQ0UsMkJBQTJCOzswQkF1QkEsUUFBUTt5Q0FqQnBDLE9BQU87c0JBQWYsS0FBSztnQkFDRyxlQUFlO3NCQUF2QixLQUFLO2dCQUdJLE1BQU07c0JBQWYsTUFBTTtnQkFPTSxvQkFBb0I7c0JBQWhDLEtBQUs7Z0JBSUcsSUFBSTtzQkFBWixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQWZ0ZXJWaWV3SW5pdCwgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPbkluaXQsIE9wdGlvbmFsLCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZvcm1Db250cm9sLCBGb3JtR3JvdXAsIFZhbGlkYXRvcnMgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBSb3V0ZXIgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgU3RvcmUgfSBmcm9tICdAbmdyeC9zdG9yZSc7XG5pbXBvcnQge1xuICBEYXNoYm9hcmRBY3Rpb25zLFxuICBEYXNoYm9hcmRHcmlkTGF5b3V0LFxuICBEYXNoYm9hcmRTZWxlY3RvcnMsXG4gIERFRkFVTFRfUkVTVElUVVRJT05fSUNPTl9VUkwsXG4gIEdsb2JhbE1hbmlmZXN0LFxuICBJTWV0YWRhdGEsXG4gIExpYnJhcnlUeXBlcyxcbiAgTWFuaWZlc3REZXNjcmlwdGlvbixcbiAgU3Vic2NyaXB0aW9ubmVyRGlyZWN0aXZlLFxuICBWaWV3TW9kZSxcbiAgV2lkZ2V0UGxhY2VtZW50VXRpbHNcbn0gZnJvbSAnQHByb3ZvbHkvZGFzaGJvYXJkJztcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgY29tYmluZUxhdGVzdCwgT2JzZXJ2YWJsZSwgdGFrZSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgTWV0YWRhdGFBY3Rpb25zLCBNZXRhZGF0YVNlbGVjdG9ycywgTWV0YUV2ZW50VHlwZSB9IGZyb20gJ0Bwcm92b2x5L2Rhc2hib2FyZC9jb21wb25lbnRzL21ldGFkYXRhLWVkaXRvcic7XG5pbXBvcnQgeyB2NCBhcyB1dWlkdjQgfSBmcm9tICd1dWlkJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAncHJ5LWFkZC1lZGl0LXByZXNlbnRhdGlvbicsXG4gIHRlbXBsYXRlVXJsOiAnLi9hZGQtZWRpdC1wcmVzZW50YXRpb24uY29tcG9uZW50Lmh0bWwnXG59KVxuZXhwb3J0IGNsYXNzIFByeUFkZEVkaXRQcmVzZW50YXRpb25Db21wb25lbnQgZXh0ZW5kcyBTdWJzY3JpcHRpb25uZXJEaXJlY3RpdmUgaW1wbGVtZW50cyBPbkluaXQsIEFmdGVyVmlld0luaXQge1xuICBzdGF0aWNNYW5pZmVzdCQ6IE9ic2VydmFibGU8R2xvYmFsTWFuaWZlc3Q+O1xuICBzZWxlY3RlZFByZXNlbnRhdGlvbiQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PE1hbmlmZXN0RGVzY3JpcHRpb24gfCBudWxsPihudWxsKTtcbiAgQElucHV0KCkgZWRpdGlvbjogYm9vbGVhbiA9IGZhbHNlO1xuICBASW5wdXQoKSBlZGl0aW9uU3RhcnRVcmw6IHN0cmluZyA9ICcvJztcbiAgZm9ybSE6IEZvcm1Hcm91cDtcbiAgaW1hZ2U6IHN0cmluZyA9IERFRkFVTFRfUkVTVElUVVRJT05fSUNPTl9VUkw7XG4gIEBPdXRwdXQoKSBnb0JhY2sgPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XG4gIHR5cGU6IExpYnJhcnlUeXBlcyA9IExpYnJhcnlUeXBlcy5JTExVU1RSQVRJT047XG4gIGNob3NlbkxheW91dDogc3RyaW5nID0gRGFzaGJvYXJkR3JpZExheW91dC5GVUxMO1xuICBwb3NzaWJsZVRoZW1lczogc3RyaW5nW10gPSBbXTtcbiAgbWV0YWRhdGFEZWZzOiBJTWV0YWRhdGFbXSB8IHVuZGVmaW5lZDtcbiAgbWV0YWRhdGFUaGVtZUlkOiBzdHJpbmcgPSAnJztcblxuICBASW5wdXQoKSBzZXQgc2VsZWN0ZWRQcmVzZW50YXRpb24ocHJlc2VudGF0aW9uOiBNYW5pZmVzdERlc2NyaXB0aW9uIHwgbnVsbCkge1xuICAgIHRoaXMuc2VsZWN0ZWRQcmVzZW50YXRpb24kLm5leHQocHJlc2VudGF0aW9uKTtcbiAgfVxuXG4gIEBJbnB1dCgpIG1vZGU6ICd0aGVtZScgfCAnbWV0YScgPSAnbWV0YSc7XG5cbiAgY29uc3RydWN0b3IocHJvdGVjdGVkIHN0b3JlOiBTdG9yZSwgQE9wdGlvbmFsKCkgcHJvdGVjdGVkIHJvdXRlcjogUm91dGVyKSB7XG4gICAgc3VwZXIoKTtcbiAgICB0aGlzLnN0b3JlLmRpc3BhdGNoKE1ldGFkYXRhQWN0aW9ucy5sb2FkTWV0YWRhdGEoKSk7XG4gICAgdGhpcy5zdGF0aWNNYW5pZmVzdCQgPSB0aGlzLnN0b3JlLnNlbGVjdChEYXNoYm9hcmRTZWxlY3RvcnMuc3RhdGljTWFuaWZlc3QpO1xuICAgIGNvbWJpbmVMYXRlc3QoW3RoaXMuc3RhdGljTWFuaWZlc3QkLCB0aGlzLnN0b3JlLnNlbGVjdChEYXNoYm9hcmRTZWxlY3RvcnMuZ3JpZExheW91dCldKS5zdWJzY3JpYmUoXG4gICAgICAoW3N0YXRpY01hbmlmZXN0LCBncmlkTGF5b3V0XSkgPT4ge1xuICAgICAgICB0aGlzLmNob3NlbkxheW91dCA9XG4gICAgICAgICAgdGhpcy5lZGl0aW9uICYmIHN0YXRpY01hbmlmZXN0LndpbmRvd3NbMF0/LmdyaWQ/LmxheW91dCAhPT0gdW5kZWZpbmVkXG4gICAgICAgICAgICA/IHN0YXRpY01hbmlmZXN0LndpbmRvd3NbMF0/LmdyaWQ/LmxheW91dFxuICAgICAgICAgICAgOiBncmlkTGF5b3V0O1xuICAgICAgfVxuICAgICk7XG4gICAgdGhpcy5zdWJzY3JpcHRpb25zLmFkZChcbiAgICAgIHRoaXMuc3RvcmUuc2VsZWN0KE1ldGFkYXRhU2VsZWN0b3JzLm1ldGFkYXRhKS5zdWJzY3JpYmUoKG1ldGFkYXRhKSA9PiB7XG4gICAgICAgIHRoaXMubWV0YWRhdGFEZWZzID0gbWV0YWRhdGE7XG4gICAgICAgIGNvbnN0IG1ldGFkYXRhVGhlbWUgPSBtZXRhZGF0YT8uZmluZCgobWV0YSkgPT4gbWV0YS5uYW1lID09PSAnX3RoZW1lJyk7XG4gICAgICAgIGlmIChtZXRhZGF0YVRoZW1lKSB7XG4gICAgICAgICAgdGhpcy5tZXRhZGF0YVRoZW1lSWQgPSBtZXRhZGF0YVRoZW1lPy5pZCA/PyAnJztcbiAgICAgICAgICB0aGlzLnBvc3NpYmxlVGhlbWVzID0gbWV0YWRhdGFUaGVtZT8uYWxsb3dlZFZhbHVlcyA/PyBbXTtcbiAgICAgICAgfVxuICAgICAgfSlcbiAgICApO1xuICB9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5mb3JtID0gbmV3IEZvcm1Hcm91cCh7XG4gICAgICBuYW1lOiBuZXcgRm9ybUNvbnRyb2wobnVsbCwgW1ZhbGlkYXRvcnMucmVxdWlyZWQsIFZhbGlkYXRvcnMubWF4TGVuZ3RoKDUwKV0pLFxuICAgICAgZGVzY3JpcHRpb246IG5ldyBGb3JtQ29udHJvbCh1bmRlZmluZWQsIFtWYWxpZGF0b3JzLm1heExlbmd0aCgyMDApXSksXG4gICAgICB0aGVtZTogbmV3IEZvcm1Db250cm9sKCcnKVxuICAgIH0pO1xuICAgIHRoaXMuaW1hZ2UgPSB0aGlzLnNlbGVjdGVkUHJlc2VudGF0aW9uJC52YWx1ZT8uaW1hZ2UgPz8gREVGQVVMVF9SRVNUSVRVVElPTl9JQ09OX1VSTDtcbiAgICB0aGlzLnN1YnNjcmlwdGlvbnMuYWRkKFxuICAgICAgdGhpcy5zZWxlY3RlZFByZXNlbnRhdGlvbiQuc3Vic2NyaWJlKChwcmVzZW50YXRpb24pID0+IHtcbiAgICAgICAgY29uc3QgdGhlbWUgPSBwcmVzZW50YXRpb24/Lm1ldGFkYXRhPy5maW5kKChtZXRhZGF0YSkgPT4gbWV0YWRhdGEubWV0YWRhdGFEZWYubmFtZSA9PT0gJ190aGVtZScpPy52YWx1ZTtcbiAgICAgICAgaWYgKCEhdGhlbWUpIHRoaXMuZm9ybS5wYXRjaFZhbHVlKHsgdGhlbWUgfSk7XG4gICAgICB9KVxuICAgICk7XG4gIH1cblxuICBuZ0FmdGVyVmlld0luaXQoKSB7XG4gICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICBpZiAodGhpcy5zZWxlY3RlZFByZXNlbnRhdGlvbiQudmFsdWUpIHRoaXMuZm9ybS5wYXRjaFZhbHVlKHRoaXMuc2VsZWN0ZWRQcmVzZW50YXRpb24kLnZhbHVlKTtcbiAgICB9KTtcbiAgfVxuXG4gIHNhdmUoKSB7XG4gICAgaWYgKCF0aGlzLmVkaXRpb24pIHtcbiAgICAgIHRoaXMuc3RvcmUuZGlzcGF0Y2goRGFzaGJvYXJkQWN0aW9ucy51cGRhdGVTdGF0aWNNYW5pZmVzdCh7IHN0YXRpY01hbmlmZXN0OiB7IHdpbmRvd3M6IFtdIH0gfSkpO1xuICAgIH1cbiAgICBjb25zdCBwcmVzZW50YXRpb24gPSB0aGlzLmRpc3BhdGNoU2F2ZSgpO1xuICAgIHRoaXMuc3RvcmUuZGlzcGF0Y2goXG4gICAgICBEYXNoYm9hcmRBY3Rpb25zLnNlbGVjdFByZXNlbnRhdGlvbih7XG4gICAgICAgIHByZXNlbnRhdGlvbixcbiAgICAgICAgdmlld01vZGU6IFZpZXdNb2RlLkVESVRJT05cbiAgICAgIH0pXG4gICAgKTtcbiAgfVxuXG4gIGRpc3BhdGNoU2F2ZSgpOiBNYW5pZmVzdERlc2NyaXB0aW9uIHtcbiAgICBjb25zdCBwcmVzZW50YXRpb24gPSB7XG4gICAgICAuLi50aGlzLnNlbGVjdGVkUHJlc2VudGF0aW9uJC52YWx1ZSEsXG4gICAgICBpZDogdGhpcy5zZWxlY3RlZFByZXNlbnRhdGlvbiQudmFsdWU/LmlkIHx8IHV1aWR2NCgpLFxuICAgICAgbmFtZTogdGhpcy5mb3JtLnZhbHVlLm5hbWUgPz8gJycsXG4gICAgICBkZXNjcmlwdGlvbjogdGhpcy5mb3JtLnZhbHVlLmRlc2NyaXB0aW9uID8/IHVuZGVmaW5lZCxcbiAgICAgIGltYWdlOiB0aGlzLmltYWdlID8/IERFRkFVTFRfUkVTVElUVVRJT05fSUNPTl9VUkwsXG4gICAgICBtZXRhZGF0YTogdGhpcy5tZXRhZGF0YSgpXG4gICAgfTtcblxuICAgIHRoaXMuc3Vic2NyaXB0aW9ucy5hZGQoXG4gICAgICB0aGlzLnN0YXRpY01hbmlmZXN0JC5waXBlKHRha2UoMSkpLnN1YnNjcmliZSgoc3RhdGljTWFuaWZlc3QpID0+IHtcbiAgICAgICAgdGhpcy5zdG9yZS5kaXNwYXRjaChcbiAgICAgICAgICBEYXNoYm9hcmRBY3Rpb25zLnNhdmVNYW5pZmVzdCh7XG4gICAgICAgICAgICAuLi5wcmVzZW50YXRpb24sXG4gICAgICAgICAgICBtZXRhZGF0YTogcHJlc2VudGF0aW9uLm1ldGFkYXRhPy5tYXAoKG1ldGFkYXRhKSA9PiAoe1xuICAgICAgICAgICAgICBtZXRhZGF0YURlZklkOiBtZXRhZGF0YS5tZXRhZGF0YURlZi5pZCxcbiAgICAgICAgICAgICAgdmFsdWU6IG1ldGFkYXRhLnZhbHVlXG4gICAgICAgICAgICB9KSksXG4gICAgICAgICAgICBtYW5pZmVzdDogc3RhdGljTWFuaWZlc3RcbiAgICAgICAgICB9KVxuICAgICAgICApO1xuICAgICAgfSlcbiAgICApO1xuICAgIHJldHVybiBwcmVzZW50YXRpb247XG4gIH1cblxuICBjb25maWd1cmVEYXNoYm9hcmQoc2VsZWN0ZWRQcmVzZW50YXRpb246IE1hbmlmZXN0RGVzY3JpcHRpb24pIHtcbiAgICBpZiAodGhpcy5mb3JtLnZhbGlkKSB7XG4gICAgICB0aGlzLmRpc3BhdGNoU2F2ZSgpO1xuICAgIH1cblxuICAgIGNvbnN0IHByZXNlbnRhdGlvbiA9IHtcbiAgICAgIC4uLnRoaXMuc2VsZWN0ZWRQcmVzZW50YXRpb24kLnZhbHVlISxcbiAgICAgIG5hbWU6IHRoaXMuZm9ybS52YWx1ZS5uYW1lID8/ICcnLFxuICAgICAgZGVzY3JpcHRpb246IHRoaXMuZm9ybS52YWx1ZS5kZXNjcmlwdGlvbixcbiAgICAgIGltYWdlOiB0aGlzLmltYWdlID8/IERFRkFVTFRfUkVTVElUVVRJT05fSUNPTl9VUkwsXG4gICAgICBtZXRhZGF0YTogdGhpcy5tZXRhZGF0YSgpXG4gICAgfTtcblxuICAgIGlmICghdGhpcy5lZGl0aW9uKSB7XG4gICAgICB0aGlzLnN0b3JlLmRpc3BhdGNoKFxuICAgICAgICBEYXNoYm9hcmRBY3Rpb25zLnVwZGF0ZU1hbmlmZXN0KHtcbiAgICAgICAgICBtYW5pZmVzdDoge1xuICAgICAgICAgICAgd2luZG93czogW1xuICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgd2lkZ2V0czogW10sXG4gICAgICAgICAgICAgICAgZ3JpZDoge1xuICAgICAgICAgICAgICAgICAgbGF5b3V0OiB0aGlzLmNob3NlbkxheW91dCxcbiAgICAgICAgICAgICAgICAgIGNvbHVtbnM6IFdpZGdldFBsYWNlbWVudFV0aWxzLmdldExheW91dCh0aGlzLmNob3NlbkxheW91dCk/LmNvbHVtbnMsXG4gICAgICAgICAgICAgICAgICByb3dzOiBXaWRnZXRQbGFjZW1lbnRVdGlscy5nZXRMYXlvdXQodGhpcy5jaG9zZW5MYXlvdXQpPy5yb3dzXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICBdXG4gICAgICAgICAgfSxcbiAgICAgICAgICBzZWxlY3RlZElkczogW10sXG4gICAgICAgICAgbWFuaWZlc3RJZDogc2VsZWN0ZWRQcmVzZW50YXRpb24uaWRcbiAgICAgICAgfSlcbiAgICAgICk7XG4gICAgICB0aGlzLnN0b3JlLmRpc3BhdGNoKFxuICAgICAgICBEYXNoYm9hcmRBY3Rpb25zLnNldEluaXRpYWxQcmVzZW50YXRpb24oe1xuICAgICAgICAgIGluaXRpYWw6IHsgd2luZG93czogW3sgd2lkZ2V0czogW10sIGdyaWQ6IHsgbGF5b3V0OiB0aGlzLmNob3NlbkxheW91dCBhcyBEYXNoYm9hcmRHcmlkTGF5b3V0IH0gfV0gfVxuICAgICAgICB9KVxuICAgICAgKTtcbiAgICAgIHRoaXMuc3RvcmUuZGlzcGF0Y2goXG4gICAgICAgIERhc2hib2FyZEFjdGlvbnMuc2VsZWN0UHJlc2VudGF0aW9uKHtcbiAgICAgICAgICBwcmVzZW50YXRpb24sXG4gICAgICAgICAgdmlld01vZGU6IFZpZXdNb2RlLkNSRUFUSU9OXG4gICAgICAgIH0pXG4gICAgICApO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLnN0b3JlLmRpc3BhdGNoKFxuICAgICAgICBEYXNoYm9hcmRBY3Rpb25zLmxvYWRQcmVzZW50YXRpb24oe1xuICAgICAgICAgIHByZXNlbnRhdGlvbixcbiAgICAgICAgICB2aWV3TW9kZTogVmlld01vZGUuRURJVElPTlxuICAgICAgICB9KVxuICAgICAgKTtcbiAgICB9XG4gICAgdGhpcy5yb3V0ZXI/Lm5hdmlnYXRlQnlVcmwodGhpcy5lZGl0aW9uU3RhcnRVcmwpO1xuICB9XG5cbiAgYWRkTWV0YWRhdGEobWV0YWRhdGE6IE1ldGFFdmVudFR5cGUpIHtcbiAgICB0aGlzLnN0b3JlLmRpc3BhdGNoKFxuICAgICAgRGFzaGJvYXJkQWN0aW9ucy5hZGRNYW5pZmVzdE1ldGFkYXRhKHtcbiAgICAgICAgcHJlc2VudGF0aW9uSWQ6IHRoaXMuc2VsZWN0ZWRQcmVzZW50YXRpb24kLnZhbHVlPy5pZCEsXG4gICAgICAgIG1ldGFkYXRhSWQ6IG1ldGFkYXRhLm1ldGFkYXRhSWQsXG4gICAgICAgIHZhbHVlOiBtZXRhZGF0YS52YWx1ZSA/PyAnJ1xuICAgICAgfSlcbiAgICApO1xuICB9XG5cbiAgcmVtb3ZlTWV0YWRhdGEobWV0YWRhdGE6IE1ldGFFdmVudFR5cGUpIHtcbiAgICB0aGlzLnN0b3JlLmRpc3BhdGNoKFxuICAgICAgRGFzaGJvYXJkQWN0aW9ucy5kZWxldGVNYW5pZmVzdE1ldGFkYXRhKHtcbiAgICAgICAgcHJlc2VudGF0aW9uSWQ6IHRoaXMuc2VsZWN0ZWRQcmVzZW50YXRpb24kLnZhbHVlPy5pZCEsXG4gICAgICAgIG1ldGFkYXRhSWQ6IG1ldGFkYXRhLm1ldGFkYXRhSWRcbiAgICAgIH0pXG4gICAgKTtcbiAgfVxuXG4gIGNsb3NlKCkge1xuICAgIHRoaXMuZ29CYWNrLmVtaXQoKTtcbiAgfVxuXG4gIG1ldGFkYXRhKCkge1xuICAgIHJldHVybiB0aGlzLm1vZGUgPT09ICd0aGVtZSdcbiAgICAgID8gIXRoaXMuZm9ybS52YWx1ZS50aGVtZSB8fCB0aGlzLmZvcm0udmFsdWUudGhlbWUgPT09ICcnXG4gICAgICAgID8gW11cbiAgICAgICAgOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIG1ldGFkYXRhRGVmOiB0aGlzLm1ldGFkYXRhRGVmcyEuZmluZCgobWV0YWRhdGEpID0+IG1ldGFkYXRhLmlkID09PSB0aGlzLm1ldGFkYXRhVGhlbWVJZCkhLFxuICAgICAgICAgICAgICB2YWx1ZTogdGhpcy5mb3JtLnZhbHVlLnRoZW1lID8/ICcnXG4gICAgICAgICAgICB9XG4gICAgICAgICAgXVxuICAgICAgOiB0aGlzLnNlbGVjdGVkUHJlc2VudGF0aW9uJC52YWx1ZT8ubWV0YWRhdGEgPz8gW107XG4gIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJvLW1hbmlmZXN0LWxheW91dFwiPlxuICA8ZGl2IGNsYXNzPVwiby1tYW5pZmVzdC1sYXlvdXRfX3Rvb2xib3hcIj5cbiAgICA8YnV0dG9uIGNsYXNzPVwiYS1idG4gYS1idG4tLXNlY29uZGFyeVwiIHR5cGU9XCJidXR0b25cIiAoY2xpY2spPVwiY2xvc2UoKVwiPlxuICAgICAge3sgJ0BwcnkudG9vbGJveC5tYW5pZmVzdC5jbG9zZScgfCBpMThuIH19XG4gICAgPC9idXR0b24+XG4gICAgPGJ1dHRvbiBjbGFzcz1cImEtYnRuIGEtYnRuLS1wcmltYXJ5XCIgdHlwZT1cImJ1dHRvblwiIChjbGljayk9XCJzYXZlKClcIiBbZGlzYWJsZWRdPVwiZm9ybS5pbnZhbGlkXCI+XG4gICAgICB7eyAnQHByeS50b29sYm94Lm1hbmlmZXN0LmNoZWNrJyB8IGkxOG4gfX1cbiAgICA8L2J1dHRvbj5cbiAgPC9kaXY+XG4gIDxkaXYgY2xhc3M9XCJvLW1hbmlmZXN0LWxheW91dF9fY29udGVudC0tcHJlc2VudGF0aW9uXCI+XG4gICAgPGgxIGNsYXNzPVwiYS1oMVwiPnt7ICdAcHJ5LnByZXNlbnRhdGlvbi5hZGQnICsgJy5wYWdlVGl0bGUnIHwgaTE4biB9fTwvaDE+XG4gICAgPGRpdiBjbGFzcz1cIm8tcHJlc2VudGF0aW9uLWZvcm0td3JhcHBlclwiPlxuICAgICAgPGZvcm0gW2Zvcm1Hcm91cF09XCJmb3JtXCIgY2xhc3M9XCJvLXByZXNlbnRhdGlvbi1mb3JtXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJtLWZvcm0tbGFiZWwtZmllbGQgLXdpZHRoLWZ1bGxcIj5cbiAgICAgICAgICA8bGFiZWwgY2xhc3M9XCJhLWxhYmVsXCIgZm9yPVwicHJlc2VudGF0aW9uX25hbWVcIj57eyAnQHByeS5wcmVzZW50YXRpb24uZm9ybS5uYW1lJyB8IGkxOG4gfX08L2xhYmVsPlxuICAgICAgICAgIDxpbnB1dFxuICAgICAgICAgICAgdHlwZT1cInRleHRcIlxuICAgICAgICAgICAgaWQ9XCJwcmVzZW50YXRpb25fbmFtZVwiXG4gICAgICAgICAgICBmb3JtQ29udHJvbE5hbWU9XCJuYW1lXCJcbiAgICAgICAgICAgIHBsYWNlaG9sZGVyPVwie3sgJ0BwcnkucHJlc2VudGF0aW9uLmZvcm0ubmFtZScgfCBpMThuIH19XCJcbiAgICAgICAgICAgIGNsYXNzPVwiYS1mb3JtLWZpZWxkXCJcbiAgICAgICAgICAgIG1heGxlbmd0aD1cIjUwXCJcbiAgICAgICAgICAgIHJlcXVpcmVkXG4gICAgICAgICAgLz5cbiAgICAgICAgICA8bGFiZWxcbiAgICAgICAgICAgIGZvcj1cInByZXNlbnRhdGlvbl9uYW1lXCJcbiAgICAgICAgICAgICpuZ0lmPVwiZm9ybS5nZXQoJ25hbWUnKT8udG91Y2hlZCAmJiBmb3JtLmdldCgnbmFtZScpPy5oYXNFcnJvcigncmVxdWlyZWQnKVwiXG4gICAgICAgICAgICBjbGFzcz1cImEtbGFiZWwgYS1sYWJlbC0taGVscCAtZXJyb3JcIlxuICAgICAgICAgID5cbiAgICAgICAgICAgIHt7ICdAcHJ5LnByZXNlbnRhdGlvbi5yZXF1aXJlZCcgfCBpMThuIH19XG4gICAgICAgICAgPC9sYWJlbD5cbiAgICAgICAgICA8bGFiZWxcbiAgICAgICAgICAgIGZvcj1cInByZXNlbnRhdGlvbl9uYW1lXCJcbiAgICAgICAgICAgICpuZ0lmPVwiZm9ybS5nZXQoJ25hbWUnKT8uaGFzRXJyb3IoJ21heGxlbmd0aCcpXCJcbiAgICAgICAgICAgIGNsYXNzPVwiYS1sYWJlbCBhLWxhYmVsLS1oZWxwIC1lcnJvclwiXG4gICAgICAgICAgPlxuICAgICAgICAgICAge3sgJ0BwcnkucHJlc2VudGF0aW9uLm1heExlbmd0aCcgfCBpMThuIDogeyBsZW46ICc1MCcgfSB9fVxuICAgICAgICAgIDwvbGFiZWw+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwibS1mb3JtLWxhYmVsLWZpZWxkIC13aWR0aC1mdWxsXCI+XG4gICAgICAgICAgPGxhYmVsIGNsYXNzPVwiYS1sYWJlbFwiIGZvcj1cInByZXNlbnRhdGlvbl9kZXNjcmlwdGlvblwiPnt7XG4gICAgICAgICAgICAnQHByeS5wcmVzZW50YXRpb24uZm9ybS5kZXNjcmlwdGlvbicgfCBpMThuXG4gICAgICAgICAgfX08L2xhYmVsPlxuICAgICAgICAgIDx0ZXh0YXJlYVxuICAgICAgICAgICAgZm9ybUNvbnRyb2xOYW1lPVwiZGVzY3JpcHRpb25cIlxuICAgICAgICAgICAgaWQ9XCJwcmVzZW50YXRpb25fZGVzY3JpcHRpb25cIlxuICAgICAgICAgICAgbmFtZT1cImRlc2NyaXB0aW9uXCJcbiAgICAgICAgICAgIGNvbHM9XCIzMFwiXG4gICAgICAgICAgICByb3dzPVwiNVwiXG4gICAgICAgICAgICBtYXhsZW5ndGg9XCIyMDBcIlxuICAgICAgICAgICAgcGxhY2Vob2xkZXI9XCJ7eyAnQHByeS5wcmVzZW50YXRpb24uZm9ybS5kZXNjcmlwdGlvbicgfCBpMThuIH19XCJcbiAgICAgICAgICAgIGNsYXNzPVwiYS1mb3JtLWZpZWxkXCJcbiAgICAgICAgICA+PC90ZXh0YXJlYT5cbiAgICAgICAgICA8bGFiZWxcbiAgICAgICAgICAgIGZvcj1cInByZXNlbnRhdGlvbl9kZXNjcmlwdGlvblwiXG4gICAgICAgICAgICAqbmdJZj1cImZvcm0uZ2V0KCdkZXNjcmlwdGlvbicpPy5oYXNFcnJvcignbWF4bGVuZ3RoJylcIlxuICAgICAgICAgICAgY2xhc3M9XCJhLWxhYmVsIGEtbGFiZWwtLWhlbHAgLWVycm9yXCJcbiAgICAgICAgICA+XG4gICAgICAgICAgICB7eyAnQHByeS5wcmVzZW50YXRpb24ubWF4TGVuZ3RoJyB8IGkxOG4gOiB7IGxlbjogJzIwMCcgfSB9fVxuICAgICAgICAgIDwvbGFiZWw+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwibS1mb3JtLWxhYmVsLWZpZWxkIC13aWR0aC1mdWxsXCIgKm5nSWY9XCJtb2RlID09PSAndGhlbWUnXCI+XG4gICAgICAgICAgPGxhYmVsIGNsYXNzPVwiYS1sYWJlbFwiIGZvcj1cInByZXNlbnRhdGlvbl90aGVtZVwiPnt7ICdAcHJ5LnByZXNlbnRhdGlvbi5mb3JtLnRoZW1lJyB8IGkxOG4gfX08L2xhYmVsPlxuICAgICAgICAgIDxwcnktc2VsZWN0XG4gICAgICAgICAgICBpZD1cInByZXNlbnRhdGlvbl90aGVtZVwiXG4gICAgICAgICAgICBbaXRlbXNdPVwicG9zc2libGVUaGVtZXNcIlxuICAgICAgICAgICAgZm9ybUNvbnRyb2xOYW1lPVwidGhlbWVcIlxuICAgICAgICAgICAgW2NsZWFyYWJsZV09XCJ0cnVlXCJcbiAgICAgICAgICA+PC9wcnktc2VsZWN0PlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cIm0tZm9ybS1sYWJlbC1maWVsZCAtd2lkdGgtZnVsbFwiPlxuICAgICAgICAgIDxsYWJlbCBjbGFzcz1cImEtbGFiZWxcIiBmb3I9XCJwcmVzZW50YXRpb25faW1hZ2VcIj57eyAnQHByeS5wcmVzZW50YXRpb24uZm9ybS5pbWFnZScgfCBpMThuIH19PC9sYWJlbD5cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiby1maWxlLWlucHV0XCI+XG4gICAgICAgICAgICA8cHJ5LXNlbGVjdC1pbWFnZVxuICAgICAgICAgICAgICBpZD1cInByZXNlbnRhdGlvbl9pbWFnZVwiXG4gICAgICAgICAgICAgIChjaGFuZ2VkKT1cImltYWdlID0gJGV2ZW50XCJcbiAgICAgICAgICAgICAgW2ljb25VcmxdPVwiaW1hZ2VcIlxuICAgICAgICAgICAgICBbbW9kZV09XCJ0eXBlXCJcbiAgICAgICAgICAgID48L3ByeS1zZWxlY3QtaW1hZ2U+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwibS1mb3JtLWxhYmVsLWZpZWxkIC13aWR0aC1mdWxsIG0tZm9ybS1sYWJlbC1maWVsZC0taW5saW5lXCI+XG4gICAgICAgICAgPGxhYmVsIGNsYXNzPVwiYS1sYWJlbFwiPnt7ICdAcHJ5LnByZXNlbnRhdGlvbi5mb3JtLmdyaWQnIHwgaTE4biB9fTwvbGFiZWw+XG4gICAgICAgICAgPHNwYW4gY2xhc3M9XCJhLWxhYmVsXCI+e3sgJ0BwcnkudG9vbGJveC5sYXlvdXQuJyArIHRoaXMuY2hvc2VuTGF5b3V0IHwgaTE4biB9fTwvc3Bhbj5cbiAgICAgICAgICA8cHJ5LXNlbGVjdC1ncmlkLWxheW91dCAqbmdJZj1cIiFlZGl0aW9uXCI+PC9wcnktc2VsZWN0LWdyaWQtbGF5b3V0PlxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvZm9ybT5cbiAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJtb2RlID09PSAnbWV0YSdcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cIm8tcHJlc2VudGF0aW9uX19tZXRhZGF0YS1lZGl0b3JcIiAqbmdJZj1cInNlbGVjdGVkUHJlc2VudGF0aW9uJCB8IGFzeW5jIGFzIHNlbGVjdGVkUHJlc2VudGF0aW9uXCI+XG4gICAgICAgICAgPHByeS1tZXRhZGF0YS1lZGl0b3JcbiAgICAgICAgICAgIFt0YXJnZXRJZF09XCJzZWxlY3RlZFByZXNlbnRhdGlvbi5pZFwiXG4gICAgICAgICAgICBbaXNNb2RpZmljYXRpb25dPVwidHJ1ZVwiXG4gICAgICAgICAgICBbbWV0YWRhdGFdPVwic2VsZWN0ZWRQcmVzZW50YXRpb24ubWV0YWRhdGEgPz8gW11cIlxuICAgICAgICAgICAgKHJlbW92ZU1ldGEpPVwicmVtb3ZlTWV0YWRhdGEoJGV2ZW50KVwiXG4gICAgICAgICAgICAoYWRkTWV0YSk9XCJhZGRNZXRhZGF0YSgkZXZlbnQpXCJcbiAgICAgICAgICAgIFt0eXBlXT1cIidtZXRhJ1wiXG4gICAgICAgICAgPjwvcHJ5LW1ldGFkYXRhLWVkaXRvcj5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICA8L2Rpdj5cbiAgICA8YnV0dG9uXG4gICAgICBjbGFzcz1cImEtYnRuIGEtYnRuLS1wcmltYXJ5XCJcbiAgICAgIChjbGljayk9XCJjb25maWd1cmVEYXNoYm9hcmQoc2VsZWN0ZWRQcmVzZW50YXRpb24kLnZhbHVlISlcIlxuICAgICAgW2Rpc2FibGVkXT1cImZvcm0uaW52YWxpZFwiXG4gICAgPlxuICAgICAge3sgJ0BwcnkucHJlc2VudGF0aW9uLmNvbmZpZ3VyYXRpb24nIHwgaTE4biB9fVxuICAgIDwvYnV0dG9uPlxuICA8L2Rpdj5cbjwvZGl2PlxuIl19
191
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWRkLWVkaXQtcHJlc2VudGF0aW9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3Byb3ZvbHkvZGFzaGJvYXJkL3ByZXNlbnRhdGlvbi9jb21wb25lbnRzL2FkZC1lZGl0LXByZXNlbnRhdGlvbi9hZGQtZWRpdC1wcmVzZW50YXRpb24uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvcHJvdm9seS9kYXNoYm9hcmQvcHJlc2VudGF0aW9uL2NvbXBvbmVudHMvYWRkLWVkaXQtcHJlc2VudGF0aW9uL2FkZC1lZGl0LXByZXNlbnRhdGlvbi5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQWlCLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFVLFFBQVEsRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDeEcsT0FBTyxFQUFFLFdBQVcsRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFHcEUsT0FBTyxFQUNMLGdCQUFnQixFQUNoQixtQkFBbUIsRUFDbkIsa0JBQWtCLEVBQUUsMEJBQTBCLEVBRzlDLFlBQVksRUFFWix3QkFBd0IsRUFDeEIsUUFBUSxFQUNSLG9CQUFvQixFQUNyQixNQUFNLG9CQUFvQixDQUFDO0FBQzVCLE9BQU8sRUFBRSxlQUFlLEVBQUUsYUFBYSxFQUFjLElBQUksRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUN4RSxPQUFPLEVBQUUsZUFBZSxFQUFFLGlCQUFpQixFQUFpQixNQUFNLCtDQUErQyxDQUFDO0FBQ2xILE9BQU8sRUFBRSxFQUFFLElBQUksTUFBTSxFQUFFLE1BQU0sTUFBTSxDQUFDOzs7Ozs7Ozs7QUFNcEMsTUFBTSxPQUFPLCtCQUFnQyxTQUFRLHdCQUF3QjtJQWMzRSxJQUFhLG9CQUFvQixDQUFDLFlBQXdDO1FBQ3hFLElBQUksQ0FB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T0FBTyxJQUFJLENBQUMsSUFBSSxLQUFLLE9BQU87WUFDMUIsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssS0FBSyxFQUFFO2dCQUN0RCxDQUFDLENBQUMsRUFBRTtnQkFDSixDQUFDLENBQUM7b0JBQ0U7d0JBQ0UsV0FBVyxFQUFFLElBQUksQ0FBQyxZQUFhLENBQUMsSUFBSSxDQUFDLENBQUMsUUFBUSxFQUFFLEVBQUUsQ0FBQyxRQUFRLENBQUMsRUFBRSxLQUFLLElBQUksQ0FBQyxlQUFlLENBQUU7d0JBQ3pGLEtBQUssRUFBRSxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLElBQUksRUFBRTtxQkFDbkM7aUJBQ0Y7WUFDTCxDQUFDLENBQUMsSUFBSSxDQUFDLHFCQUFxQixDQUFDLEtBQUssRUFBRSxRQUFRLElBQUksRUFBRSxDQUFDO0lBQ3ZELENBQUM7OEdBak1VLCtCQUErQjtrR0FBL0IsK0JBQStCLHVQQ3hCNUMsNmpKQTZHQTs7MkZEckZhLCtCQUErQjtrQkFKM0MsU0FBUzsrQkFDRSwyQkFBMkI7OzBCQXVCQSxRQUFRO3lDQWpCcEMsT0FBTztzQkFBZixLQUFLO2dCQUNHLGVBQWU7c0JBQXZCLEtBQUs7Z0JBR0ksTUFBTTtzQkFBZixNQUFNO2dCQU9NLG9CQUFvQjtzQkFBaEMsS0FBSztnQkFJRyxJQUFJO3NCQUFaLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBZnRlclZpZXdJbml0LCBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE9uSW5pdCwgT3B0aW9uYWwsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRm9ybUNvbnRyb2wsIEZvcm1Hcm91cCwgVmFsaWRhdG9ycyB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IFJvdXRlciB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQgeyBTdG9yZSB9IGZyb20gJ0BuZ3J4L3N0b3JlJztcbmltcG9ydCB7XG4gIERhc2hib2FyZEFjdGlvbnMsXG4gIERhc2hib2FyZEdyaWRMYXlvdXQsXG4gIERhc2hib2FyZFNlbGVjdG9ycywgREVGQVVMVF9EQVNIQk9BUkRfSUNPTl9VUkwsXG4gIEdsb2JhbE1hbmlmZXN0LFxuICBJTWV0YWRhdGEsXG4gIExpYnJhcnlUeXBlcyxcbiAgTWFuaWZlc3REZXNjcmlwdGlvbixcbiAgU3Vic2NyaXB0aW9ubmVyRGlyZWN0aXZlLFxuICBWaWV3TW9kZSxcbiAgV2lkZ2V0UGxhY2VtZW50VXRpbHNcbn0gZnJvbSAnQHByb3ZvbHkvZGFzaGJvYXJkJztcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgY29tYmluZUxhdGVzdCwgT2JzZXJ2YWJsZSwgdGFrZSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgTWV0YWRhdGFBY3Rpb25zLCBNZXRhZGF0YVNlbGVjdG9ycywgTWV0YUV2ZW50VHlwZSB9IGZyb20gJ0Bwcm92b2x5L2Rhc2hib2FyZC9jb21wb25lbnRzL21ldGFkYXRhLWVkaXRvcic7XG5pbXBvcnQgeyB2NCBhcyB1dWlkdjQgfSBmcm9tICd1dWlkJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAncHJ5LWFkZC1lZGl0LXByZXNlbnRhdGlvbicsXG4gIHRlbXBsYXRlVXJsOiAnLi9hZGQtZWRpdC1wcmVzZW50YXRpb24uY29tcG9uZW50Lmh0bWwnXG59KVxuZXhwb3J0IGNsYXNzIFByeUFkZEVkaXRQcmVzZW50YXRpb25Db21wb25lbnQgZXh0ZW5kcyBTdWJzY3JpcHRpb25uZXJEaXJlY3RpdmUgaW1wbGVtZW50cyBPbkluaXQsIEFmdGVyVmlld0luaXQge1xuICBzdGF0aWNNYW5pZmVzdCQ6IE9ic2VydmFibGU8R2xvYmFsTWFuaWZlc3Q+O1xuICBzZWxlY3RlZFByZXNlbnRhdGlvbiQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PE1hbmlmZXN0RGVzY3JpcHRpb24gfCBudWxsPihudWxsKTtcbiAgQElucHV0KCkgZWRpdGlvbjogYm9vbGVhbiA9IGZhbHNlO1xuICBASW5wdXQoKSBlZGl0aW9uU3RhcnRVcmw6IHN0cmluZyA9ICcvJztcbiAgZm9ybSE6IEZvcm1Hcm91cDtcbiAgaW1hZ2U6IHN0cmluZyA9IERFRkFVTFRfREFTSEJPQVJEX0lDT05fVVJMO1xuICBAT3V0cHV0KCkgZ29CYWNrID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xuICB0eXBlOiBMaWJyYXJ5VHlwZXMgPSBMaWJyYXJ5VHlwZXMuSUxMVVNUUkFUSU9OO1xuICBjaG9zZW5MYXlvdXQ6IHN0cmluZyA9IERhc2hib2FyZEdyaWRMYXlvdXQuRlVMTDtcbiAgcG9zc2libGVUaGVtZXM6IHN0cmluZ1tdID0gW107XG4gIG1ldGFkYXRhRGVmczogSU1ldGFkYXRhW10gfCB1bmRlZmluZWQ7XG4gIG1ldGFkYXRhVGhlbWVJZDogc3RyaW5nID0gJyc7XG5cbiAgQElucHV0KCkgc2V0IHNlbGVjdGVkUHJlc2VudGF0aW9uKHByZXNlbnRhdGlvbjogTWFuaWZlc3REZXNjcmlwdGlvbiB8IG51bGwpIHtcbiAgICB0aGlzLnNlbGVjdGVkUHJlc2VudGF0aW9uJC5uZXh0KHByZXNlbnRhdGlvbik7XG4gIH1cblxuICBASW5wdXQoKSBtb2RlOiAndGhlbWUnIHwgJ21ldGEnID0gJ21ldGEnO1xuXG4gIGNvbnN0cnVjdG9yKHByb3RlY3RlZCBzdG9yZTogU3RvcmUsIEBPcHRpb25hbCgpIHByb3RlY3RlZCByb3V0ZXI6IFJvdXRlcikge1xuICAgIHN1cGVyKCk7XG4gICAgdGhpcy5zdG9yZS5kaXNwYXRjaChNZXRhZGF0YUFjdGlvbnMubG9hZE1ldGFkYXRhKCkpO1xuICAgIHRoaXMuc3RhdGljTWFuaWZlc3QkID0gdGhpcy5zdG9yZS5zZWxlY3QoRGFzaGJvYXJkU2VsZWN0b3JzLnN0YXRpY01hbmlmZXN0KTtcbiAgICBjb21iaW5lTGF0ZXN0KFt0aGlzLnN0YXRpY01hbmlmZXN0JCwgdGhpcy5zdG9yZS5zZWxlY3QoRGFzaGJvYXJkU2VsZWN0b3JzLmdyaWRMYXlvdXQpXSkuc3Vic2NyaWJlKFxuICAgICAgKFtzdGF0aWNNYW5pZmVzdCwgZ3JpZExheW91dF0pID0+IHtcbiAgICAgICAgdGhpcy5jaG9zZW5MYXlvdXQgPVxuICAgICAgICAgIHRoaXMuZWRpdGlvbiAmJiBzdGF0aWNNYW5pZmVzdC53aW5kb3dzWzBdPy5ncmlkPy5sYXlvdXQgIT09IHVuZGVmaW5lZFxuICAgICAgICAgICAgPyBzdGF0aWNNYW5pZmVzdC53aW5kb3dzWzBdPy5ncmlkPy5sYXlvdXRcbiAgICAgICAgICAgIDogZ3JpZExheW91dDtcbiAgICAgIH1cbiAgICApO1xuICAgIHRoaXMuc3Vic2NyaXB0aW9ucy5hZGQoXG4gICAgICB0aGlzLnN0b3JlLnNlbGVjdChNZXRhZGF0YVNlbGVjdG9ycy5tZXRhZGF0YSkuc3Vic2NyaWJlKChtZXRhZGF0YSkgPT4ge1xuICAgICAgICB0aGlzLm1ldGFkYXRhRGVmcyA9IG1ldGFkYXRhO1xuICAgICAgICBjb25zdCBtZXRhZGF0YVRoZW1lID0gbWV0YWRhdGE/LmZpbmQoKG1ldGEpID0+IG1ldGEubmFtZSA9PT0gJ190aGVtZScpO1xuICAgICAgICBpZiAobWV0YWRhdGFUaGVtZSkge1xuICAgICAgICAgIHRoaXMubWV0YWRhdGFUaGVtZUlkID0gbWV0YWRhdGFUaGVtZT8uaWQgPz8gJyc7XG4gICAgICAgICAgdGhpcy5wb3NzaWJsZVRoZW1lcyA9IG1ldGFkYXRhVGhlbWU/LmFsbG93ZWRWYWx1ZXMgPz8gW107XG4gICAgICAgIH1cbiAgICAgIH0pXG4gICAgKTtcbiAgfVxuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuZm9ybSA9IG5ldyBGb3JtR3JvdXAoe1xuICAgICAgbmFtZTogbmV3IEZvcm1Db250cm9sKG51bGwsIFtWYWxpZGF0b3JzLnJlcXVpcmVkLCBWYWxpZGF0b3JzLm1heExlbmd0aCg1MCldKSxcbiAgICAgIGRlc2NyaXB0aW9uOiBuZXcgRm9ybUNvbnRyb2wodW5kZWZpbmVkLCBbVmFsaWRhdG9ycy5tYXhMZW5ndGgoMjAwKV0pLFxuICAgICAgdGhlbWU6IG5ldyBGb3JtQ29udHJvbCgnJylcbiAgICB9KTtcbiAgICB0aGlzLmltYWdlID0gdGhpcy5zZWxlY3RlZFByZXNlbnRhdGlvbiQudmFsdWU/LmltYWdlID8/IERFRkFVTFRfREFTSEJPQVJEX0lDT05fVVJMO1xuICAgIHRoaXMuc3Vic2NyaXB0aW9ucy5hZGQoXG4gICAgICB0aGlzLnNlbGVjdGVkUHJlc2VudGF0aW9uJC5zdWJzY3JpYmUoKHByZXNlbnRhdGlvbikgPT4ge1xuICAgICAgICBjb25zdCB0aGVtZSA9IHByZXNlbnRhdGlvbj8ubWV0YWRhdGE/LmZpbmQoKG1ldGFkYXRhKSA9PiBtZXRhZGF0YS5tZXRhZGF0YURlZi5uYW1lID09PSAnX3RoZW1lJyk/LnZhbHVlO1xuICAgICAgICBpZiAoISF0aGVtZSkgdGhpcy5mb3JtLnBhdGNoVmFsdWUoeyB0aGVtZSB9KTtcbiAgICAgIH0pXG4gICAgKTtcbiAgfVxuXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgIGlmICh0aGlzLnNlbGVjdGVkUHJlc2VudGF0aW9uJC52YWx1ZSkgdGhpcy5mb3JtLnBhdGNoVmFsdWUodGhpcy5zZWxlY3RlZFByZXNlbnRhdGlvbiQudmFsdWUpO1xuICAgIH0pO1xuICB9XG5cbiAgc2F2ZSgpIHtcbiAgICBpZiAoIXRoaXMuZWRpdGlvbikge1xuICAgICAgdGhpcy5zdG9yZS5kaXNwYXRjaChEYXNoYm9hcmRBY3Rpb25zLnVwZGF0ZVN0YXRpY01hbmlmZXN0KHsgc3RhdGljTWFuaWZlc3Q6IHsgd2luZG93czogW10gfSB9KSk7XG4gICAgfVxuICAgIGNvbnN0IHByZXNlbnRhdGlvbiA9IHRoaXMuZGlzcGF0Y2hTYXZlKCk7XG4gICAgdGhpcy5zdG9yZS5kaXNwYXRjaChcbiAgICAgIERhc2hib2FyZEFjdGlvbnMuc2VsZWN0UHJlc2VudGF0aW9uKHtcbiAgICAgICAgcHJlc2VudGF0aW9uLFxuICAgICAgICB2aWV3TW9kZTogVmlld01vZGUuRURJVElPTlxuICAgICAgfSlcbiAgICApO1xuICB9XG5cbiAgZGlzcGF0Y2hTYXZlKCk6IE1hbmlmZXN0RGVzY3JpcHRpb24ge1xuICAgIGNvbnN0IHByZXNlbnRhdGlvbiA9IHtcbiAgICAgIC4uLnRoaXMuc2VsZWN0ZWRQcmVzZW50YXRpb24kLnZhbHVlISxcbiAgICAgIGlkOiB0aGlzLnNlbGVjdGVkUHJlc2VudGF0aW9uJC52YWx1ZT8uaWQgfHwgdXVpZHY0KCksXG4gICAgICBuYW1lOiB0aGlzLmZvcm0udmFsdWUubmFtZSA/PyAnJyxcbiAgICAgIGRlc2NyaXB0aW9uOiB0aGlzLmZvcm0udmFsdWUuZGVzY3JpcHRpb24gPz8gdW5kZWZpbmVkLFxuICAgICAgaW1hZ2U6IHRoaXMuaW1hZ2UgPz8gREVGQVVMVF9EQVNIQk9BUkRfSUNPTl9VUkwsXG4gICAgICBtZXRhZGF0YTogdGhpcy5tZXRhZGF0YSgpXG4gICAgfTtcblxuICAgIHRoaXMuc3Vic2NyaXB0aW9ucy5hZGQoXG4gICAgICB0aGlzLnN0YXRpY01hbmlmZXN0JC5waXBlKHRha2UoMSkpLnN1YnNjcmliZSgoc3RhdGljTWFuaWZlc3QpID0+IHtcbiAgICAgICAgdGhpcy5zdG9yZS5kaXNwYXRjaChcbiAgICAgICAgICBEYXNoYm9hcmRBY3Rpb25zLnNhdmVNYW5pZmVzdCh7XG4gICAgICAgICAgICAuLi5wcmVzZW50YXRpb24sXG4gICAgICAgICAgICBtZXRhZGF0YTogcHJlc2VudGF0aW9uLm1ldGFkYXRhPy5tYXAoKG1ldGFkYXRhKSA9PiAoe1xuICAgICAgICAgICAgICBtZXRhZGF0YURlZklkOiBtZXRhZGF0YS5tZXRhZGF0YURlZi5pZCxcbiAgICAgICAgICAgICAgdmFsdWU6IG1ldGFkYXRhLnZhbHVlXG4gICAgICAgICAgICB9KSksXG4gICAgICAgICAgICBtYW5pZmVzdDogc3RhdGljTWFuaWZlc3RcbiAgICAgICAgICB9KVxuICAgICAgICApO1xuICAgICAgfSlcbiAgICApO1xuICAgIHJldHVybiBwcmVzZW50YXRpb247XG4gIH1cblxuICBjb25maWd1cmVEYXNoYm9hcmQoc2VsZWN0ZWRQcmVzZW50YXRpb246IE1hbmlmZXN0RGVzY3JpcHRpb24pIHtcbiAgICBpZiAodGhpcy5mb3JtLnZhbGlkKSB7XG4gICAgICB0aGlzLmRpc3BhdGNoU2F2ZSgpO1xuICAgIH1cblxuICAgIGNvbnN0IHByZXNlbnRhdGlvbiA9IHtcbiAgICAgIC4uLnRoaXMuc2VsZWN0ZWRQcmVzZW50YXRpb24kLnZhbHVlISxcbiAgICAgIG5hbWU6IHRoaXMuZm9ybS52YWx1ZS5uYW1lID8/ICcnLFxuICAgICAgZGVzY3JpcHRpb246IHRoaXMuZm9ybS52YWx1ZS5kZXNjcmlwdGlvbixcbiAgICAgIGltYWdlOiB0aGlzLmltYWdlID8/IERFRkFVTFRfREFTSEJPQVJEX0lDT05fVVJMLFxuICAgICAgbWV0YWRhdGE6IHRoaXMubWV0YWRhdGEoKVxuICAgIH07XG5cbiAgICBpZiAoIXRoaXMuZWRpdGlvbikge1xuICAgICAgdGhpcy5zdG9yZS5kaXNwYXRjaChcbiAgICAgICAgRGFzaGJvYXJkQWN0aW9ucy51cGRhdGVNYW5pZmVzdCh7XG4gICAgICAgICAgbWFuaWZlc3Q6IHtcbiAgICAgICAgICAgIHdpbmRvd3M6IFtcbiAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIHdpZGdldHM6IFtdLFxuICAgICAgICAgICAgICAgIGdyaWQ6IHtcbiAgICAgICAgICAgICAgICAgIGxheW91dDogdGhpcy5jaG9zZW5MYXlvdXQsXG4gICAgICAgICAgICAgICAgICBjb2x1bW5zOiBXaWRnZXRQbGFjZW1lbnRVdGlscy5nZXRMYXlvdXQodGhpcy5jaG9zZW5MYXlvdXQpPy5jb2x1bW5zLFxuICAgICAgICAgICAgICAgICAgcm93czogV2lkZ2V0UGxhY2VtZW50VXRpbHMuZ2V0TGF5b3V0KHRoaXMuY2hvc2VuTGF5b3V0KT8ucm93c1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgXVxuICAgICAgICAgIH0sXG4gICAgICAgICAgc2VsZWN0ZWRJZHM6IFtdLFxuICAgICAgICAgIG1hbmlmZXN0SWQ6IHNlbGVjdGVkUHJlc2VudGF0aW9uLmlkXG4gICAgICAgIH0pXG4gICAgICApO1xuICAgICAgdGhpcy5zdG9yZS5kaXNwYXRjaChcbiAgICAgICAgRGFzaGJvYXJkQWN0aW9ucy5zZXRJbml0aWFsUHJlc2VudGF0aW9uKHtcbiAgICAgICAgICBpbml0aWFsOiB7IHdpbmRvd3M6IFt7IHdpZGdldHM6IFtdLCBncmlkOiB7IGxheW91dDogdGhpcy5jaG9zZW5MYXlvdXQgYXMgRGFzaGJvYXJkR3JpZExheW91dCB9IH1dIH1cbiAgICAgICAgfSlcbiAgICAgICk7XG4gICAgICB0aGlzLnN0b3JlLmRpc3BhdGNoKFxuICAgICAgICBEYXNoYm9hcmRBY3Rpb25zLnNlbGVjdFByZXNlbnRhdGlvbih7XG4gICAgICAgICAgcHJlc2VudGF0aW9uLFxuICAgICAgICAgIHZpZXdNb2RlOiBWaWV3TW9kZS5DUkVBVElPTlxuICAgICAgICB9KVxuICAgICAgKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5zdG9yZS5kaXNwYXRjaChcbiAgICAgICAgRGFzaGJvYXJkQWN0aW9ucy5sb2FkUHJlc2VudGF0aW9uKHtcbiAgICAgICAgICBwcmVzZW50YXRpb24sXG4gICAgICAgICAgdmlld01vZGU6IFZpZXdNb2RlLkVESVRJT05cbiAgICAgICAgfSlcbiAgICAgICk7XG4gICAgfVxuICAgIHRoaXMucm91dGVyPy5uYXZpZ2F0ZUJ5VXJsKHRoaXMuZWRpdGlvblN0YXJ0VXJsKTtcbiAgfVxuXG4gIGFkZE1ldGFkYXRhKG1ldGFkYXRhOiBNZXRhRXZlbnRUeXBlKSB7XG4gICAgdGhpcy5zdG9yZS5kaXNwYXRjaChcbiAgICAgIERhc2hib2FyZEFjdGlvbnMuYWRkTWFuaWZlc3RNZXRhZGF0YSh7XG4gICAgICAgIHByZXNlbnRhdGlvbklkOiB0aGlzLnNlbGVjdGVkUHJlc2VudGF0aW9uJC52YWx1ZT8uaWQhLFxuICAgICAgICBtZXRhZGF0YUlkOiBtZXRhZGF0YS5tZXRhZGF0YUlkLFxuICAgICAgICB2YWx1ZTogbWV0YWRhdGEudmFsdWUgPz8gJydcbiAgICAgIH0pXG4gICAgKTtcbiAgfVxuXG4gIHJlbW92ZU1ldGFkYXRhKG1ldGFkYXRhOiBNZXRhRXZlbnRUeXBlKSB7XG4gICAgdGhpcy5zdG9yZS5kaXNwYXRjaChcbiAgICAgIERhc2hib2FyZEFjdGlvbnMuZGVsZXRlTWFuaWZlc3RNZXRhZGF0YSh7XG4gICAgICAgIHByZXNlbnRhdGlvbklkOiB0aGlzLnNlbGVjdGVkUHJlc2VudGF0aW9uJC52YWx1ZT8uaWQhLFxuICAgICAgICBtZXRhZGF0YUlkOiBtZXRhZGF0YS5tZXRhZGF0YUlkXG4gICAgICB9KVxuICAgICk7XG4gIH1cblxuICBjbG9zZSgpIHtcbiAgICB0aGlzLmdvQmFjay5lbWl0KCk7XG4gIH1cblxuICBtZXRhZGF0YSgpIHtcbiAgICByZXR1cm4gdGhpcy5tb2RlID09PSAndGhlbWUnXG4gICAgICA/ICF0aGlzLmZvcm0udmFsdWUudGhlbWUgfHwgdGhpcy5mb3JtLnZhbHVlLnRoZW1lID09PSAnJ1xuICAgICAgICA/IFtdXG4gICAgICAgIDogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBtZXRhZGF0YURlZjogdGhpcy5tZXRhZGF0YURlZnMhLmZpbmQoKG1ldGFkYXRhKSA9PiBtZXRhZGF0YS5pZCA9PT0gdGhpcy5tZXRhZGF0YVRoZW1lSWQpISxcbiAgICAgICAgICAgICAgdmFsdWU6IHRoaXMuZm9ybS52YWx1ZS50aGVtZSA/PyAnJ1xuICAgICAgICAgICAgfVxuICAgICAgICAgIF1cbiAgICAgIDogdGhpcy5zZWxlY3RlZFByZXNlbnRhdGlvbiQudmFsdWU/Lm1ldGFkYXRhID8/IFtdO1xuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwiby1tYW5pZmVzdC1sYXlvdXRcIj5cbiAgPGRpdiBjbGFzcz1cIm8tbWFuaWZlc3QtbGF5b3V0X190b29sYm94XCI+XG4gICAgPGJ1dHRvbiBjbGFzcz1cImEtYnRuIGEtYnRuLS1zZWNvbmRhcnlcIiB0eXBlPVwiYnV0dG9uXCIgKGNsaWNrKT1cImNsb3NlKClcIj5cbiAgICAgIHt7ICdAcHJ5LnRvb2xib3gubWFuaWZlc3QuY2xvc2UnIHwgaTE4biB9fVxuICAgIDwvYnV0dG9uPlxuICAgIDxidXR0b24gY2xhc3M9XCJhLWJ0biBhLWJ0bi0tcHJpbWFyeVwiIHR5cGU9XCJidXR0b25cIiAoY2xpY2spPVwic2F2ZSgpXCIgW2Rpc2FibGVkXT1cImZvcm0uaW52YWxpZFwiPlxuICAgICAge3sgJ0BwcnkudG9vbGJveC5tYW5pZmVzdC5jaGVjaycgfCBpMThuIH19XG4gICAgPC9idXR0b24+XG4gIDwvZGl2PlxuICA8ZGl2IGNsYXNzPVwiby1tYW5pZmVzdC1sYXlvdXRfX2NvbnRlbnQtLXByZXNlbnRhdGlvblwiPlxuICAgIDxoMSBjbGFzcz1cImEtaDFcIj57eyAnQHByeS5wcmVzZW50YXRpb24uYWRkJyArICcucGFnZVRpdGxlJyB8IGkxOG4gfX08L2gxPlxuICAgIDxkaXYgY2xhc3M9XCJvLXByZXNlbnRhdGlvbi1mb3JtLXdyYXBwZXJcIj5cbiAgICAgIDxmb3JtIFtmb3JtR3JvdXBdPVwiZm9ybVwiIGNsYXNzPVwiby1wcmVzZW50YXRpb24tZm9ybVwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwibS1mb3JtLWxhYmVsLWZpZWxkIC13aWR0aC1mdWxsXCI+XG4gICAgICAgICAgPGxhYmVsIGNsYXNzPVwiYS1sYWJlbFwiIGZvcj1cInByZXNlbnRhdGlvbl9uYW1lXCI+e3sgJ0BwcnkucHJlc2VudGF0aW9uLmZvcm0ubmFtZScgfCBpMThuIH19PC9sYWJlbD5cbiAgICAgICAgICA8aW5wdXRcbiAgICAgICAgICAgIHR5cGU9XCJ0ZXh0XCJcbiAgICAgICAgICAgIGlkPVwicHJlc2VudGF0aW9uX25hbWVcIlxuICAgICAgICAgICAgZm9ybUNvbnRyb2xOYW1lPVwibmFtZVwiXG4gICAgICAgICAgICBwbGFjZWhvbGRlcj1cInt7ICdAcHJ5LnByZXNlbnRhdGlvbi5mb3JtLm5hbWUnIHwgaTE4biB9fVwiXG4gICAgICAgICAgICBjbGFzcz1cImEtZm9ybS1maWVsZFwiXG4gICAgICAgICAgICBtYXhsZW5ndGg9XCI1MFwiXG4gICAgICAgICAgICByZXF1aXJlZFxuICAgICAgICAgIC8+XG4gICAgICAgICAgPGxhYmVsXG4gICAgICAgICAgICBmb3I9XCJwcmVzZW50YXRpb25fbmFtZVwiXG4gICAgICAgICAgICAqbmdJZj1cImZvcm0uZ2V0KCduYW1lJyk/LnRvdWNoZWQgJiYgZm9ybS5nZXQoJ25hbWUnKT8uaGFzRXJyb3IoJ3JlcXVpcmVkJylcIlxuICAgICAgICAgICAgY2xhc3M9XCJhLWxhYmVsIGEtbGFiZWwtLWhlbHAgLWVycm9yXCJcbiAgICAgICAgICA+XG4gICAgICAgICAgICB7eyAnQHByeS5wcmVzZW50YXRpb24ucmVxdWlyZWQnIHwgaTE4biB9fVxuICAgICAgICAgIDwvbGFiZWw+XG4gICAgICAgICAgPGxhYmVsXG4gICAgICAgICAgICBmb3I9XCJwcmVzZW50YXRpb25fbmFtZVwiXG4gICAgICAgICAgICAqbmdJZj1cImZvcm0uZ2V0KCduYW1lJyk/Lmhhc0Vycm9yKCdtYXhsZW5ndGgnKVwiXG4gICAgICAgICAgICBjbGFzcz1cImEtbGFiZWwgYS1sYWJlbC0taGVscCAtZXJyb3JcIlxuICAgICAgICAgID5cbiAgICAgICAgICAgIHt7ICdAcHJ5LnByZXNlbnRhdGlvbi5tYXhMZW5ndGgnIHwgaTE4biA6IHsgbGVuOiAnNTAnIH0gfX1cbiAgICAgICAgICA8L2xhYmVsPlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cIm0tZm9ybS1sYWJlbC1maWVsZCAtd2lkdGgtZnVsbFwiPlxuICAgICAgICAgIDxsYWJlbCBjbGFzcz1cImEtbGFiZWxcIiBmb3I9XCJwcmVzZW50YXRpb25fZGVzY3JpcHRpb25cIj57e1xuICAgICAgICAgICAgJ0BwcnkucHJlc2VudGF0aW9uLmZvcm0uZGVzY3JpcHRpb24nIHwgaTE4blxuICAgICAgICAgIH19PC9sYWJlbD5cbiAgICAgICAgICA8dGV4dGFyZWFcbiAgICAgICAgICAgIGZvcm1Db250cm9sTmFtZT1cImRlc2NyaXB0aW9uXCJcbiAgICAgICAgICAgIGlkPVwicHJlc2VudGF0aW9uX2Rlc2NyaXB0aW9uXCJcbiAgICAgICAgICAgIG5hbWU9XCJkZXNjcmlwdGlvblwiXG4gICAgICAgICAgICBjb2xzPVwiMzBcIlxuICAgICAgICAgICAgcm93cz1cIjVcIlxuICAgICAgICAgICAgbWF4bGVuZ3RoPVwiMjAwXCJcbiAgICAgICAgICAgIHBsYWNlaG9sZGVyPVwie3sgJ0BwcnkucHJlc2VudGF0aW9uLmZvcm0uZGVzY3JpcHRpb24nIHwgaTE4biB9fVwiXG4gICAgICAgICAgICBjbGFzcz1cImEtZm9ybS1maWVsZFwiXG4gICAgICAgICAgPjwvdGV4dGFyZWE+XG4gICAgICAgICAgPGxhYmVsXG4gICAgICAgICAgICBmb3I9XCJwcmVzZW50YXRpb25fZGVzY3JpcHRpb25cIlxuICAgICAgICAgICAgKm5nSWY9XCJmb3JtLmdldCgnZGVzY3JpcHRpb24nKT8uaGFzRXJyb3IoJ21heGxlbmd0aCcpXCJcbiAgICAgICAgICAgIGNsYXNzPVwiYS1sYWJlbCBhLWxhYmVsLS1oZWxwIC1lcnJvclwiXG4gICAgICAgICAgPlxuICAgICAgICAgICAge3sgJ0BwcnkucHJlc2VudGF0aW9uLm1heExlbmd0aCcgfCBpMThuIDogeyBsZW46ICcyMDAnIH0gfX1cbiAgICAgICAgICA8L2xhYmVsPlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cIm0tZm9ybS1sYWJlbC1maWVsZCAtd2lkdGgtZnVsbFwiICpuZ0lmPVwibW9kZSA9PT0gJ3RoZW1lJ1wiPlxuICAgICAgICAgIDxsYWJlbCBjbGFzcz1cImEtbGFiZWxcIiBmb3I9XCJwcmVzZW50YXRpb25fdGhlbWVcIj57eyAnQHByeS5wcmVzZW50YXRpb24uZm9ybS50aGVtZScgfCBpMThuIH19PC9sYWJlbD5cbiAgICAgICAgICA8cHJ5LXNlbGVjdFxuICAgICAgICAgICAgaWQ9XCJwcmVzZW50YXRpb25fdGhlbWVcIlxuICAgICAgICAgICAgW2l0ZW1zXT1cInBvc3NpYmxlVGhlbWVzXCJcbiAgICAgICAgICAgIGZvcm1Db250cm9sTmFtZT1cInRoZW1lXCJcbiAgICAgICAgICAgIFtjbGVhcmFibGVdPVwidHJ1ZVwiXG4gICAgICAgICAgPjwvcHJ5LXNlbGVjdD5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJtLWZvcm0tbGFiZWwtZmllbGQgLXdpZHRoLWZ1bGxcIj5cbiAgICAgICAgICA8bGFiZWwgY2xhc3M9XCJhLWxhYmVsXCIgZm9yPVwicHJlc2VudGF0aW9uX2ltYWdlXCI+e3sgJ0BwcnkucHJlc2VudGF0aW9uLmZvcm0uaW1hZ2UnIHwgaTE4biB9fTwvbGFiZWw+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cIm8tZmlsZS1pbnB1dFwiPlxuICAgICAgICAgICAgPHByeS1zZWxlY3QtaW1hZ2VcbiAgICAgICAgICAgICAgaWQ9XCJwcmVzZW50YXRpb25faW1hZ2VcIlxuICAgICAgICAgICAgICAoY2hhbmdlZCk9XCJpbWFnZSA9ICRldmVudFwiXG4gICAgICAgICAgICAgIFtpY29uVXJsXT1cImltYWdlXCJcbiAgICAgICAgICAgICAgW21vZGVdPVwidHlwZVwiXG4gICAgICAgICAgICA+PC9wcnktc2VsZWN0LWltYWdlPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cIm0tZm9ybS1sYWJlbC1maWVsZCAtd2lkdGgtZnVsbCBtLWZvcm0tbGFiZWwtZmllbGQtLWlubGluZVwiPlxuICAgICAgICAgIDxsYWJlbCBjbGFzcz1cImEtbGFiZWxcIj57eyAnQHByeS5wcmVzZW50YXRpb24uZm9ybS5ncmlkJyB8IGkxOG4gfX08L2xhYmVsPlxuICAgICAgICAgIDxzcGFuIGNsYXNzPVwiYS1sYWJlbFwiPnt7ICdAcHJ5LnRvb2xib3gubGF5b3V0LicgKyB0aGlzLmNob3NlbkxheW91dCB8IGkxOG4gfX08L3NwYW4+XG4gICAgICAgICAgPHByeS1zZWxlY3QtZ3JpZC1sYXlvdXQgKm5nSWY9XCIhZWRpdGlvblwiPjwvcHJ5LXNlbGVjdC1ncmlkLWxheW91dD5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2Zvcm0+XG4gICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwibW9kZSA9PT0gJ21ldGEnXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJvLXByZXNlbnRhdGlvbl9fbWV0YWRhdGEtZWRpdG9yXCIgKm5nSWY9XCJzZWxlY3RlZFByZXNlbnRhdGlvbiQgfCBhc3luYyBhcyBzZWxlY3RlZFByZXNlbnRhdGlvblwiPlxuICAgICAgICAgIDxwcnktbWV0YWRhdGEtZWRpdG9yXG4gICAgICAgICAgICBbdGFyZ2V0SWRdPVwic2VsZWN0ZWRQcmVzZW50YXRpb24uaWRcIlxuICAgICAgICAgICAgW2lzTW9kaWZpY2F0aW9uXT1cInRydWVcIlxuICAgICAgICAgICAgW21ldGFkYXRhXT1cInNlbGVjdGVkUHJlc2VudGF0aW9uLm1ldGFkYXRhID8/IFtdXCJcbiAgICAgICAgICAgIChyZW1vdmVNZXRhKT1cInJlbW92ZU1ldGFkYXRhKCRldmVudClcIlxuICAgICAgICAgICAgKGFkZE1ldGEpPVwiYWRkTWV0YWRhdGEoJGV2ZW50KVwiXG4gICAgICAgICAgICBbdHlwZV09XCInbWV0YSdcIlxuICAgICAgICAgID48L3ByeS1tZXRhZGF0YS1lZGl0b3I+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgPC9kaXY+XG4gICAgPGJ1dHRvblxuICAgICAgY2xhc3M9XCJhLWJ0biBhLWJ0bi0tcHJpbWFyeVwiXG4gICAgICAoY2xpY2spPVwiY29uZmlndXJlRGFzaGJvYXJkKHNlbGVjdGVkUHJlc2VudGF0aW9uJC52YWx1ZSEpXCJcbiAgICAgIFtkaXNhYmxlZF09XCJmb3JtLmludmFsaWRcIlxuICAgID5cbiAgICAgIHt7ICdAcHJ5LnByZXNlbnRhdGlvbi5jb25maWd1cmF0aW9uJyB8IGkxOG4gfX1cbiAgICA8L2J1dHRvbj5cbiAgPC9kaXY+XG48L2Rpdj5cbiJdfQ==