@sbb-esta/lyne-elements-dev 4.12.0-dev.1777358825 → 4.12.0-dev.1777455695
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.
- package/core/overlay/position.js +4 -4
- package/custom-elements.json +247 -247
- package/development/core/overlay/position.d.ts.map +1 -1
- package/development/core/overlay/position.js +4 -2
- package/development/popover/popover.component.d.ts +1 -1
- package/development/popover/popover.component.d.ts.map +1 -1
- package/development/popover/popover.component.js +1 -1
- package/development/popover.component-EgOs-wsR.js +572 -0
- package/development/popover.js +1 -1
- package/development/popover.pure.js +1 -1
- package/package.json +2 -2
- package/popover/popover.component.js +1 -1
- package/{popover.component-DAgwBcBW.js → popover.component-CnOrQaaa.js} +78 -58
- package/popover.js +1 -1
- package/popover.pure.js +1 -1
- package/development/popover.component-rZb6B9uW.js +0 -546
package/core/overlay/position.js
CHANGED
|
@@ -31,10 +31,10 @@ function n(t, n, r, i) {
|
|
|
31
31
|
vertical: "below"
|
|
32
32
|
}, y = `${m - a}px`;
|
|
33
33
|
i?.centered && u - 16 + c.width / 2 > l.offsetWidth / 2 && f - 16 > _ / 2 && (h -= _ /= 2, v.horizontal = "center"), f < _ && u > _ && (h -= _, v.horizontal = "end"), o && v.horizontal !== "center" && c.width / 2 < o && (h += o * (v.horizontal === "start" ? -1 : 1)), (u < _ && f < _ || document.documentElement.clientWidth < l.offsetWidth) && (h = document.documentElement.clientWidth / 2 - l.offsetWidth / 2);
|
|
34
|
-
let b = m - a
|
|
35
|
-
!i?.forceBelow && (i?.forceAbove ||
|
|
36
|
-
let
|
|
37
|
-
return
|
|
34
|
+
let b = m - a >= l.scrollHeight, x = p - a >= (s ? l.clientHeight : l.scrollHeight), S = !b && (x || p > m);
|
|
35
|
+
!i?.forceBelow && (i?.forceAbove || S) && (g = p < l.scrollHeight ? g - c.height - p - a : d - l.clientHeight - a, y = `${p - a}px`, v.vertical = "above");
|
|
36
|
+
let C = r.getBoundingClientRect();
|
|
37
|
+
return C.left < 0 && (h -= C.left), C.top < 0 && (g -= C.top), {
|
|
38
38
|
top: g,
|
|
39
39
|
left: h,
|
|
40
40
|
maxHeight: y,
|
package/custom-elements.json
CHANGED
|
@@ -94658,6 +94658,253 @@
|
|
|
94658
94658
|
}
|
|
94659
94659
|
]
|
|
94660
94660
|
},
|
|
94661
|
+
{
|
|
94662
|
+
"kind": "javascript-module",
|
|
94663
|
+
"path": "form-field/form-field-text-counter/form-field-text-counter.component.js",
|
|
94664
|
+
"declarations": [
|
|
94665
|
+
{
|
|
94666
|
+
"kind": "class",
|
|
94667
|
+
"description": "It displays the remaining characters count for input/textarea elements with a configured\nmaxlength property in the `sbb-form-field`.\nThe component automatically uses the form field's inputElement and displays the remaining character count.\nIf the input is disabled, readonly or an `sbb-error` is present, the output is suppressed.",
|
|
94668
|
+
"name": "SbbFormFieldTextCounterElement",
|
|
94669
|
+
"slots": [
|
|
94670
|
+
{
|
|
94671
|
+
"description": "Use the unnamed slot to display a custom description text after the counter.",
|
|
94672
|
+
"name": "",
|
|
94673
|
+
"inheritedFrom": {
|
|
94674
|
+
"name": "SbbHintElement",
|
|
94675
|
+
"module": "form-field/hint/hint.component.js"
|
|
94676
|
+
}
|
|
94677
|
+
}
|
|
94678
|
+
],
|
|
94679
|
+
"members": [
|
|
94680
|
+
{
|
|
94681
|
+
"kind": "field",
|
|
94682
|
+
"name": "elementName",
|
|
94683
|
+
"type": {
|
|
94684
|
+
"text": "string"
|
|
94685
|
+
},
|
|
94686
|
+
"privacy": "public",
|
|
94687
|
+
"static": true,
|
|
94688
|
+
"readonly": true,
|
|
94689
|
+
"default": "'sbb-form-field-text-counter'",
|
|
94690
|
+
"inheritedFrom": {
|
|
94691
|
+
"name": "SbbElement",
|
|
94692
|
+
"module": "core/base-elements/element.js"
|
|
94693
|
+
}
|
|
94694
|
+
},
|
|
94695
|
+
{
|
|
94696
|
+
"kind": "field",
|
|
94697
|
+
"name": "_remainingCharacters",
|
|
94698
|
+
"type": {
|
|
94699
|
+
"text": "number"
|
|
94700
|
+
},
|
|
94701
|
+
"privacy": "private",
|
|
94702
|
+
"default": "0"
|
|
94703
|
+
},
|
|
94704
|
+
{
|
|
94705
|
+
"kind": "field",
|
|
94706
|
+
"name": "_language",
|
|
94707
|
+
"privacy": "private",
|
|
94708
|
+
"default": "new SbbLanguageController(this)"
|
|
94709
|
+
},
|
|
94710
|
+
{
|
|
94711
|
+
"kind": "field",
|
|
94712
|
+
"name": "_abortController",
|
|
94713
|
+
"type": {
|
|
94714
|
+
"text": "AbortController | null"
|
|
94715
|
+
},
|
|
94716
|
+
"privacy": "private",
|
|
94717
|
+
"default": "null"
|
|
94718
|
+
},
|
|
94719
|
+
{
|
|
94720
|
+
"kind": "method",
|
|
94721
|
+
"name": "_onInputUpdate",
|
|
94722
|
+
"privacy": "private",
|
|
94723
|
+
"return": {
|
|
94724
|
+
"type": {
|
|
94725
|
+
"text": "void"
|
|
94726
|
+
}
|
|
94727
|
+
}
|
|
94728
|
+
},
|
|
94729
|
+
{
|
|
94730
|
+
"kind": "method",
|
|
94731
|
+
"name": "_infoText",
|
|
94732
|
+
"privacy": "private",
|
|
94733
|
+
"return": {
|
|
94734
|
+
"type": {
|
|
94735
|
+
"text": "string"
|
|
94736
|
+
}
|
|
94737
|
+
}
|
|
94738
|
+
},
|
|
94739
|
+
{
|
|
94740
|
+
"kind": "field",
|
|
94741
|
+
"name": "negative",
|
|
94742
|
+
"type": {
|
|
94743
|
+
"text": "boolean"
|
|
94744
|
+
},
|
|
94745
|
+
"privacy": "public",
|
|
94746
|
+
"default": "false",
|
|
94747
|
+
"description": "Negative coloring variant flag.",
|
|
94748
|
+
"attribute": "negative",
|
|
94749
|
+
"reflects": true,
|
|
94750
|
+
"inheritedFrom": {
|
|
94751
|
+
"name": "SbbNegativeMixin",
|
|
94752
|
+
"module": "core/mixins/negative-mixin.js"
|
|
94753
|
+
}
|
|
94754
|
+
},
|
|
94755
|
+
{
|
|
94756
|
+
"kind": "field",
|
|
94757
|
+
"name": "formField",
|
|
94758
|
+
"type": {
|
|
94759
|
+
"text": "SbbFormFieldElement | null"
|
|
94760
|
+
},
|
|
94761
|
+
"privacy": "protected",
|
|
94762
|
+
"default": "null",
|
|
94763
|
+
"inheritedFrom": {
|
|
94764
|
+
"name": "SbbHintElement",
|
|
94765
|
+
"module": "form-field/hint/hint.component.js"
|
|
94766
|
+
}
|
|
94767
|
+
},
|
|
94768
|
+
{
|
|
94769
|
+
"kind": "field",
|
|
94770
|
+
"name": "_hydrationRequired",
|
|
94771
|
+
"type": {
|
|
94772
|
+
"text": "boolean"
|
|
94773
|
+
},
|
|
94774
|
+
"privacy": "private",
|
|
94775
|
+
"default": "!!this.shadowRoot",
|
|
94776
|
+
"inheritedFrom": {
|
|
94777
|
+
"name": "SbbElement",
|
|
94778
|
+
"module": "core/base-elements/element.js"
|
|
94779
|
+
}
|
|
94780
|
+
},
|
|
94781
|
+
{
|
|
94782
|
+
"kind": "field",
|
|
94783
|
+
"name": "_hydrationComplete",
|
|
94784
|
+
"privacy": "private",
|
|
94785
|
+
"default": "new Promise<boolean>( (resolve) => (this._resolveHydration = resolve), )",
|
|
94786
|
+
"inheritedFrom": {
|
|
94787
|
+
"name": "SbbElement",
|
|
94788
|
+
"module": "core/base-elements/element.js"
|
|
94789
|
+
}
|
|
94790
|
+
},
|
|
94791
|
+
{
|
|
94792
|
+
"kind": "field",
|
|
94793
|
+
"name": "_resolveHydration",
|
|
94794
|
+
"type": {
|
|
94795
|
+
"text": "(hydrationRequired: boolean) => void"
|
|
94796
|
+
},
|
|
94797
|
+
"privacy": "private",
|
|
94798
|
+
"inheritedFrom": {
|
|
94799
|
+
"name": "SbbElement",
|
|
94800
|
+
"module": "core/base-elements/element.js"
|
|
94801
|
+
}
|
|
94802
|
+
},
|
|
94803
|
+
{
|
|
94804
|
+
"kind": "field",
|
|
94805
|
+
"name": "hydrationRequired",
|
|
94806
|
+
"type": {
|
|
94807
|
+
"text": "boolean"
|
|
94808
|
+
},
|
|
94809
|
+
"privacy": "protected",
|
|
94810
|
+
"description": "Returns whether hydration is required and not completed.",
|
|
94811
|
+
"readonly": true,
|
|
94812
|
+
"inheritedFrom": {
|
|
94813
|
+
"name": "SbbElement",
|
|
94814
|
+
"module": "core/base-elements/element.js"
|
|
94815
|
+
},
|
|
94816
|
+
"default": "!!this.shadowRoot"
|
|
94817
|
+
},
|
|
94818
|
+
{
|
|
94819
|
+
"kind": "method",
|
|
94820
|
+
"name": "toggleState",
|
|
94821
|
+
"privacy": "protected",
|
|
94822
|
+
"return": {
|
|
94823
|
+
"type": {
|
|
94824
|
+
"text": "void"
|
|
94825
|
+
}
|
|
94826
|
+
},
|
|
94827
|
+
"parameters": [
|
|
94828
|
+
{
|
|
94829
|
+
"name": "value",
|
|
94830
|
+
"type": {
|
|
94831
|
+
"text": "string"
|
|
94832
|
+
}
|
|
94833
|
+
},
|
|
94834
|
+
{
|
|
94835
|
+
"name": "force",
|
|
94836
|
+
"optional": true,
|
|
94837
|
+
"type": {
|
|
94838
|
+
"text": "boolean"
|
|
94839
|
+
}
|
|
94840
|
+
}
|
|
94841
|
+
],
|
|
94842
|
+
"inheritedFrom": {
|
|
94843
|
+
"name": "SbbElement",
|
|
94844
|
+
"module": "core/base-elements/element.js"
|
|
94845
|
+
}
|
|
94846
|
+
},
|
|
94847
|
+
{
|
|
94848
|
+
"kind": "field",
|
|
94849
|
+
"name": "['_$sbbElement$']",
|
|
94850
|
+
"type": {
|
|
94851
|
+
"text": "boolean"
|
|
94852
|
+
},
|
|
94853
|
+
"privacy": "public",
|
|
94854
|
+
"static": true,
|
|
94855
|
+
"default": "true",
|
|
94856
|
+
"inheritedFrom": {
|
|
94857
|
+
"name": "SbbElement",
|
|
94858
|
+
"module": "core/base-elements/element.js"
|
|
94859
|
+
}
|
|
94860
|
+
},
|
|
94861
|
+
{
|
|
94862
|
+
"kind": "field",
|
|
94863
|
+
"name": "_controllers",
|
|
94864
|
+
"type": {
|
|
94865
|
+
"text": "Set<SbbReactiveController> | undefined"
|
|
94866
|
+
},
|
|
94867
|
+
"privacy": "private",
|
|
94868
|
+
"inheritedFrom": {
|
|
94869
|
+
"name": "SbbElement",
|
|
94870
|
+
"module": "core/base-elements/element.js"
|
|
94871
|
+
}
|
|
94872
|
+
}
|
|
94873
|
+
],
|
|
94874
|
+
"superclass": {
|
|
94875
|
+
"name": "SbbHintElement",
|
|
94876
|
+
"module": "form-field/hint/hint.component.js"
|
|
94877
|
+
},
|
|
94878
|
+
"tagName": "sbb-form-field-text-counter",
|
|
94879
|
+
"customElement": true,
|
|
94880
|
+
"attributes": [
|
|
94881
|
+
{
|
|
94882
|
+
"name": "negative",
|
|
94883
|
+
"type": {
|
|
94884
|
+
"text": "boolean"
|
|
94885
|
+
},
|
|
94886
|
+
"default": "false",
|
|
94887
|
+
"description": "Negative coloring variant flag.",
|
|
94888
|
+
"fieldName": "negative",
|
|
94889
|
+
"inheritedFrom": {
|
|
94890
|
+
"name": "SbbNegativeMixin",
|
|
94891
|
+
"module": "core/mixins/negative-mixin.js"
|
|
94892
|
+
}
|
|
94893
|
+
}
|
|
94894
|
+
]
|
|
94895
|
+
}
|
|
94896
|
+
],
|
|
94897
|
+
"exports": [
|
|
94898
|
+
{
|
|
94899
|
+
"kind": "js",
|
|
94900
|
+
"name": "SbbFormFieldTextCounterElement",
|
|
94901
|
+
"declaration": {
|
|
94902
|
+
"name": "SbbFormFieldTextCounterElement",
|
|
94903
|
+
"module": "form-field/form-field-text-counter/form-field-text-counter.component.js"
|
|
94904
|
+
}
|
|
94905
|
+
}
|
|
94906
|
+
]
|
|
94907
|
+
},
|
|
94661
94908
|
{
|
|
94662
94909
|
"kind": "javascript-module",
|
|
94663
94910
|
"path": "form-field/form-field-clear/form-field-clear.component.js",
|
|
@@ -95466,253 +95713,6 @@
|
|
|
95466
95713
|
}
|
|
95467
95714
|
]
|
|
95468
95715
|
},
|
|
95469
|
-
{
|
|
95470
|
-
"kind": "javascript-module",
|
|
95471
|
-
"path": "form-field/form-field-text-counter/form-field-text-counter.component.js",
|
|
95472
|
-
"declarations": [
|
|
95473
|
-
{
|
|
95474
|
-
"kind": "class",
|
|
95475
|
-
"description": "It displays the remaining characters count for input/textarea elements with a configured\nmaxlength property in the `sbb-form-field`.\nThe component automatically uses the form field's inputElement and displays the remaining character count.\nIf the input is disabled, readonly or an `sbb-error` is present, the output is suppressed.",
|
|
95476
|
-
"name": "SbbFormFieldTextCounterElement",
|
|
95477
|
-
"slots": [
|
|
95478
|
-
{
|
|
95479
|
-
"description": "Use the unnamed slot to display a custom description text after the counter.",
|
|
95480
|
-
"name": "",
|
|
95481
|
-
"inheritedFrom": {
|
|
95482
|
-
"name": "SbbHintElement",
|
|
95483
|
-
"module": "form-field/hint/hint.component.js"
|
|
95484
|
-
}
|
|
95485
|
-
}
|
|
95486
|
-
],
|
|
95487
|
-
"members": [
|
|
95488
|
-
{
|
|
95489
|
-
"kind": "field",
|
|
95490
|
-
"name": "elementName",
|
|
95491
|
-
"type": {
|
|
95492
|
-
"text": "string"
|
|
95493
|
-
},
|
|
95494
|
-
"privacy": "public",
|
|
95495
|
-
"static": true,
|
|
95496
|
-
"readonly": true,
|
|
95497
|
-
"default": "'sbb-form-field-text-counter'",
|
|
95498
|
-
"inheritedFrom": {
|
|
95499
|
-
"name": "SbbElement",
|
|
95500
|
-
"module": "core/base-elements/element.js"
|
|
95501
|
-
}
|
|
95502
|
-
},
|
|
95503
|
-
{
|
|
95504
|
-
"kind": "field",
|
|
95505
|
-
"name": "_remainingCharacters",
|
|
95506
|
-
"type": {
|
|
95507
|
-
"text": "number"
|
|
95508
|
-
},
|
|
95509
|
-
"privacy": "private",
|
|
95510
|
-
"default": "0"
|
|
95511
|
-
},
|
|
95512
|
-
{
|
|
95513
|
-
"kind": "field",
|
|
95514
|
-
"name": "_language",
|
|
95515
|
-
"privacy": "private",
|
|
95516
|
-
"default": "new SbbLanguageController(this)"
|
|
95517
|
-
},
|
|
95518
|
-
{
|
|
95519
|
-
"kind": "field",
|
|
95520
|
-
"name": "_abortController",
|
|
95521
|
-
"type": {
|
|
95522
|
-
"text": "AbortController | null"
|
|
95523
|
-
},
|
|
95524
|
-
"privacy": "private",
|
|
95525
|
-
"default": "null"
|
|
95526
|
-
},
|
|
95527
|
-
{
|
|
95528
|
-
"kind": "method",
|
|
95529
|
-
"name": "_onInputUpdate",
|
|
95530
|
-
"privacy": "private",
|
|
95531
|
-
"return": {
|
|
95532
|
-
"type": {
|
|
95533
|
-
"text": "void"
|
|
95534
|
-
}
|
|
95535
|
-
}
|
|
95536
|
-
},
|
|
95537
|
-
{
|
|
95538
|
-
"kind": "method",
|
|
95539
|
-
"name": "_infoText",
|
|
95540
|
-
"privacy": "private",
|
|
95541
|
-
"return": {
|
|
95542
|
-
"type": {
|
|
95543
|
-
"text": "string"
|
|
95544
|
-
}
|
|
95545
|
-
}
|
|
95546
|
-
},
|
|
95547
|
-
{
|
|
95548
|
-
"kind": "field",
|
|
95549
|
-
"name": "negative",
|
|
95550
|
-
"type": {
|
|
95551
|
-
"text": "boolean"
|
|
95552
|
-
},
|
|
95553
|
-
"privacy": "public",
|
|
95554
|
-
"default": "false",
|
|
95555
|
-
"description": "Negative coloring variant flag.",
|
|
95556
|
-
"attribute": "negative",
|
|
95557
|
-
"reflects": true,
|
|
95558
|
-
"inheritedFrom": {
|
|
95559
|
-
"name": "SbbNegativeMixin",
|
|
95560
|
-
"module": "core/mixins/negative-mixin.js"
|
|
95561
|
-
}
|
|
95562
|
-
},
|
|
95563
|
-
{
|
|
95564
|
-
"kind": "field",
|
|
95565
|
-
"name": "formField",
|
|
95566
|
-
"type": {
|
|
95567
|
-
"text": "SbbFormFieldElement | null"
|
|
95568
|
-
},
|
|
95569
|
-
"privacy": "protected",
|
|
95570
|
-
"default": "null",
|
|
95571
|
-
"inheritedFrom": {
|
|
95572
|
-
"name": "SbbHintElement",
|
|
95573
|
-
"module": "form-field/hint/hint.component.js"
|
|
95574
|
-
}
|
|
95575
|
-
},
|
|
95576
|
-
{
|
|
95577
|
-
"kind": "field",
|
|
95578
|
-
"name": "_hydrationRequired",
|
|
95579
|
-
"type": {
|
|
95580
|
-
"text": "boolean"
|
|
95581
|
-
},
|
|
95582
|
-
"privacy": "private",
|
|
95583
|
-
"default": "!!this.shadowRoot",
|
|
95584
|
-
"inheritedFrom": {
|
|
95585
|
-
"name": "SbbElement",
|
|
95586
|
-
"module": "core/base-elements/element.js"
|
|
95587
|
-
}
|
|
95588
|
-
},
|
|
95589
|
-
{
|
|
95590
|
-
"kind": "field",
|
|
95591
|
-
"name": "_hydrationComplete",
|
|
95592
|
-
"privacy": "private",
|
|
95593
|
-
"default": "new Promise<boolean>( (resolve) => (this._resolveHydration = resolve), )",
|
|
95594
|
-
"inheritedFrom": {
|
|
95595
|
-
"name": "SbbElement",
|
|
95596
|
-
"module": "core/base-elements/element.js"
|
|
95597
|
-
}
|
|
95598
|
-
},
|
|
95599
|
-
{
|
|
95600
|
-
"kind": "field",
|
|
95601
|
-
"name": "_resolveHydration",
|
|
95602
|
-
"type": {
|
|
95603
|
-
"text": "(hydrationRequired: boolean) => void"
|
|
95604
|
-
},
|
|
95605
|
-
"privacy": "private",
|
|
95606
|
-
"inheritedFrom": {
|
|
95607
|
-
"name": "SbbElement",
|
|
95608
|
-
"module": "core/base-elements/element.js"
|
|
95609
|
-
}
|
|
95610
|
-
},
|
|
95611
|
-
{
|
|
95612
|
-
"kind": "field",
|
|
95613
|
-
"name": "hydrationRequired",
|
|
95614
|
-
"type": {
|
|
95615
|
-
"text": "boolean"
|
|
95616
|
-
},
|
|
95617
|
-
"privacy": "protected",
|
|
95618
|
-
"description": "Returns whether hydration is required and not completed.",
|
|
95619
|
-
"readonly": true,
|
|
95620
|
-
"inheritedFrom": {
|
|
95621
|
-
"name": "SbbElement",
|
|
95622
|
-
"module": "core/base-elements/element.js"
|
|
95623
|
-
},
|
|
95624
|
-
"default": "!!this.shadowRoot"
|
|
95625
|
-
},
|
|
95626
|
-
{
|
|
95627
|
-
"kind": "method",
|
|
95628
|
-
"name": "toggleState",
|
|
95629
|
-
"privacy": "protected",
|
|
95630
|
-
"return": {
|
|
95631
|
-
"type": {
|
|
95632
|
-
"text": "void"
|
|
95633
|
-
}
|
|
95634
|
-
},
|
|
95635
|
-
"parameters": [
|
|
95636
|
-
{
|
|
95637
|
-
"name": "value",
|
|
95638
|
-
"type": {
|
|
95639
|
-
"text": "string"
|
|
95640
|
-
}
|
|
95641
|
-
},
|
|
95642
|
-
{
|
|
95643
|
-
"name": "force",
|
|
95644
|
-
"optional": true,
|
|
95645
|
-
"type": {
|
|
95646
|
-
"text": "boolean"
|
|
95647
|
-
}
|
|
95648
|
-
}
|
|
95649
|
-
],
|
|
95650
|
-
"inheritedFrom": {
|
|
95651
|
-
"name": "SbbElement",
|
|
95652
|
-
"module": "core/base-elements/element.js"
|
|
95653
|
-
}
|
|
95654
|
-
},
|
|
95655
|
-
{
|
|
95656
|
-
"kind": "field",
|
|
95657
|
-
"name": "['_$sbbElement$']",
|
|
95658
|
-
"type": {
|
|
95659
|
-
"text": "boolean"
|
|
95660
|
-
},
|
|
95661
|
-
"privacy": "public",
|
|
95662
|
-
"static": true,
|
|
95663
|
-
"default": "true",
|
|
95664
|
-
"inheritedFrom": {
|
|
95665
|
-
"name": "SbbElement",
|
|
95666
|
-
"module": "core/base-elements/element.js"
|
|
95667
|
-
}
|
|
95668
|
-
},
|
|
95669
|
-
{
|
|
95670
|
-
"kind": "field",
|
|
95671
|
-
"name": "_controllers",
|
|
95672
|
-
"type": {
|
|
95673
|
-
"text": "Set<SbbReactiveController> | undefined"
|
|
95674
|
-
},
|
|
95675
|
-
"privacy": "private",
|
|
95676
|
-
"inheritedFrom": {
|
|
95677
|
-
"name": "SbbElement",
|
|
95678
|
-
"module": "core/base-elements/element.js"
|
|
95679
|
-
}
|
|
95680
|
-
}
|
|
95681
|
-
],
|
|
95682
|
-
"superclass": {
|
|
95683
|
-
"name": "SbbHintElement",
|
|
95684
|
-
"module": "form-field/hint/hint.component.js"
|
|
95685
|
-
},
|
|
95686
|
-
"tagName": "sbb-form-field-text-counter",
|
|
95687
|
-
"customElement": true,
|
|
95688
|
-
"attributes": [
|
|
95689
|
-
{
|
|
95690
|
-
"name": "negative",
|
|
95691
|
-
"type": {
|
|
95692
|
-
"text": "boolean"
|
|
95693
|
-
},
|
|
95694
|
-
"default": "false",
|
|
95695
|
-
"description": "Negative coloring variant flag.",
|
|
95696
|
-
"fieldName": "negative",
|
|
95697
|
-
"inheritedFrom": {
|
|
95698
|
-
"name": "SbbNegativeMixin",
|
|
95699
|
-
"module": "core/mixins/negative-mixin.js"
|
|
95700
|
-
}
|
|
95701
|
-
}
|
|
95702
|
-
]
|
|
95703
|
-
}
|
|
95704
|
-
],
|
|
95705
|
-
"exports": [
|
|
95706
|
-
{
|
|
95707
|
-
"kind": "js",
|
|
95708
|
-
"name": "SbbFormFieldTextCounterElement",
|
|
95709
|
-
"declaration": {
|
|
95710
|
-
"name": "SbbFormFieldTextCounterElement",
|
|
95711
|
-
"module": "form-field/form-field-text-counter/form-field-text-counter.component.js"
|
|
95712
|
-
}
|
|
95713
|
-
}
|
|
95714
|
-
]
|
|
95715
|
-
},
|
|
95716
95716
|
{
|
|
95717
95717
|
"kind": "javascript-module",
|
|
95718
95718
|
"path": "form-field/hint/hint.component.js",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"position.d.ts","sourceRoot":"","sources":["../../../../../src/elements/core/overlay/position.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,gBAAgB,GAAG,IAAI,CACjC,WAAW,EACX,cAAc,GAAG,cAAc,GAAG,cAAc,GAAG,aAAa,GAAG,aAAa,GAAG,aAAa,CACjG,CAAC;AAEF,MAAM,WAAW,YAAY;IAC3B,UAAU,EAAE,OAAO,GAAG,QAAQ,GAAG,KAAK,CAAC;IACvC,QAAQ,EAAE,OAAO,GAAG,OAAO,CAAC;CAC7B;AAED,MAAM,WAAW,uBAAuB;IACtC,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,YAAY,CAAC;CACzB;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,EAAE,EAAE,WAAW,GAAG,gBAAgB,CAoCrE;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAC9B,OAAO,EAAE,WAAW,GAAG,IAAI,EAC3B,KAAK,EAAE,UAAU,GAAG,YAAY,GAC/B,OAAO,CAYT;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,kBAAkB,CAChC,OAAO,EAAE,WAAW,EACpB,OAAO,EAAE,WAAW,EACpB,SAAS,EAAE,WAAW,EACtB,UAAU,CAAC,EAAE;IACX,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB,GACA,uBAAuB,
|
|
1
|
+
{"version":3,"file":"position.d.ts","sourceRoot":"","sources":["../../../../../src/elements/core/overlay/position.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,gBAAgB,GAAG,IAAI,CACjC,WAAW,EACX,cAAc,GAAG,cAAc,GAAG,cAAc,GAAG,aAAa,GAAG,aAAa,GAAG,aAAa,CACjG,CAAC;AAEF,MAAM,WAAW,YAAY;IAC3B,UAAU,EAAE,OAAO,GAAG,QAAQ,GAAG,KAAK,CAAC;IACvC,QAAQ,EAAE,OAAO,GAAG,OAAO,CAAC;CAC7B;AAED,MAAM,WAAW,uBAAuB;IACtC,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,YAAY,CAAC;CACzB;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,EAAE,EAAE,WAAW,GAAG,gBAAgB,CAoCrE;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAC9B,OAAO,EAAE,WAAW,GAAG,IAAI,EAC3B,KAAK,EAAE,UAAU,GAAG,YAAY,GAC/B,OAAO,CAYT;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,kBAAkB,CAChC,OAAO,EAAE,WAAW,EACpB,OAAO,EAAE,WAAW,EACpB,SAAS,EAAE,WAAW,EACtB,UAAU,CAAC,EAAE;IACX,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB,GACA,uBAAuB,CAuGzB;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,4BAA4B,CAC1C,OAAO,EAAE,WAAW,EACpB,OAAO,EAAE,WAAW,EACpB,SAAS,EAAE,WAAW,EACtB,UAAU,CAAC,EAAE;IACX,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B,GACA,uBAAuB,CAgEzB"}
|
|
@@ -81,7 +81,9 @@ function getElementPosition(element, trigger, container, properties) {
|
|
|
81
81
|
}
|
|
82
82
|
if (horizontalOffset && alignment.horizontal !== "center" && triggerRec.width / 2 < horizontalOffset) elementXPosition += horizontalOffset * (alignment.horizontal === "start" ? -1 : 1);
|
|
83
83
|
if (triggerLeft < elementXOverflow && availableSpaceRight < elementXOverflow || document.documentElement.clientWidth < elementRec.offsetWidth) elementXPosition = document.documentElement.clientWidth / 2 - elementRec.offsetWidth / 2;
|
|
84
|
-
const
|
|
84
|
+
const fitsBelow = availableSpaceBelow - verticalOffset >= elementRec.scrollHeight;
|
|
85
|
+
const fitsAbove = availableSpaceAbove - verticalOffset >= (responsiveHeight ? elementRec.clientHeight : elementRec.scrollHeight);
|
|
86
|
+
const shouldOpenAbove = !fitsBelow && (fitsAbove || availableSpaceAbove > availableSpaceBelow);
|
|
85
87
|
if (!properties?.forceBelow && (properties?.forceAbove || shouldOpenAbove)) {
|
|
86
88
|
elementYPosition = availableSpaceAbove < elementRec.scrollHeight ? elementYPosition - triggerRec.height - availableSpaceAbove - verticalOffset : triggerTop - elementRec.clientHeight - verticalOffset;
|
|
87
89
|
elementMaxHeight = `${availableSpaceAbove - verticalOffset}px`;
|
|
@@ -148,4 +150,4 @@ function getElementPositionHorizontal(element, trigger, container, properties) {
|
|
|
148
150
|
//#endregion
|
|
149
151
|
export { getElementPosition, getElementPositionHorizontal, getElementRectangle, isEventOnElement };
|
|
150
152
|
|
|
151
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9zaXRpb24uanMiLCJuYW1lcyI6W10sInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2VsZW1lbnRzL2NvcmUvb3ZlcmxheS9wb3NpdGlvbi50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgdHlwZSBFbGVtZW50UmVjdGFuZ2xlID0gUGljazxcbiAgSFRNTEVsZW1lbnQsXG4gICdzY3JvbGxIZWlnaHQnIHwgJ2NsaWVudEhlaWdodCcgfCAnb2Zmc2V0SGVpZ2h0JyB8ICdzY3JvbGxXaWR0aCcgfCAnY2xpZW50V2lkdGgnIHwgJ29mZnNldFdpZHRoJ1xuPjtcblxuZXhwb3J0IGludGVyZmFjZSBTYmJBbGlnbm1lbnQge1xuICBob3Jpem9udGFsOiAnc3RhcnQnIHwgJ2NlbnRlcicgfCAnZW5kJztcbiAgdmVydGljYWw6ICdhYm92ZScgfCAnYmVsb3cnO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFNiYkVsZW1lbnRQb3NpdGlvbkluZm9zIHtcbiAgdG9wOiBudW1iZXI7XG4gIGxlZnQ6IG51bWJlcjtcbiAgbWF4SGVpZ2h0OiBzdHJpbmc7XG4gIGFsaWdubWVudDogU2JiQWxpZ25tZW50O1xufVxuXG4vKipcbiAqIEdldHMgaGVpZ2h0IGFuZCB3aWR0aCBvZiBhbiBlbGVtZW50IGV2ZW4gaWYgaXQncyBoaWRkZW4gKGBkaXNwbGF5OiBub25lYCkuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBnZXRFbGVtZW50UmVjdGFuZ2xlKGVsOiBIVE1MRWxlbWVudCk6IEVsZW1lbnRSZWN0YW5nbGUge1xuICBjb25zdCBlbGVtZW50U3R5bGUgPSB3aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZShlbCksXG4gICAgZWxlbWVudERpc3BsYXkgPSBlbGVtZW50U3R5bGUuZGlzcGxheSxcbiAgICBlbGVtZW50TWF4SGVpZ2h0ID0gcGFyc2VJbnQoZWxlbWVudFN0eWxlLm1heEhlaWdodCwgMTApLnRvU3RyaW5nKCk7XG5cbiAgLy8gSWYgaXQgaXMgbm90IGhpZGRlbiB3ZSBqdXN0IHJldHVybiBub3JtYWwgaGVpZ2h0XG4gIGlmIChlbGVtZW50RGlzcGxheSAhPT0gJ25vbmUnICYmIGVsZW1lbnRNYXhIZWlnaHQgIT09ICcwJykge1xuICAgIHJldHVybiB7XG4gICAgICBzY3JvbGxIZWlnaHQ6IGVsLnNjcm9sbEhlaWdodCxcbiAgICAgIGNsaWVudEhlaWdodDogZWwuY2xpZW50SGVpZ2h0LFxuICAgICAgb2Zmc2V0SGVpZ2h0OiBlbC5vZmZzZXRIZWlnaHQsXG4gICAgICBzY3JvbGxXaWR0aDogZWwuc2Nyb2xsV2lkdGgsXG4gICAgICBjbGllbnRXaWR0aDogZWwuY2xpZW50V2lkdGgsXG4gICAgICBvZmZzZXRXaWR0aDogZWwub2Zmc2V0V2lkdGgsXG4gICAgfTtcbiAgfVxuXG4gIC8vIFRoZSBlbGVtZW50IGlzIGhpZGRlbiBzbzpcbiAgLy8gbWFrZSB0aGUgZWwgYmxvY2sgaW4gb3JkZXIgdG8gbWVhc3VyZSBpdHMgaGVpZ2h0IGJ1dCBzdGlsbCBiZSBoaWRkZW5cbiAgZWwuc3R5bGUucG9zaXRpb24gPSAnYWJzb2x1dGUnO1xuICBlbC5zdHlsZS52aXNpYmlsaXR5ID0gJ2hpZGRlbic7XG4gIGVsLnN0eWxlLmRpc3BsYXkgPSAnYmxvY2snO1xuXG4gIGNvbnN0IHNjcm9sbEhlaWdodCA9IGVsLnNjcm9sbEhlaWdodCxcbiAgICBjbGllbnRIZWlnaHQgPSBlbC5jbGllbnRIZWlnaHQsXG4gICAgb2Zmc2V0SGVpZ2h0ID0gZWwub2Zmc2V0SGVpZ2h0LFxuICAgIHNjcm9sbFdpZHRoID0gZWwuc2Nyb2xsV2lkdGgsXG4gICAgY2xpZW50V2lkdGggPSBlbC5jbGllbnRXaWR0aCxcbiAgICBvZmZzZXRXaWR0aCA9IGVsLm9mZnNldFdpZHRoO1xuXG4gIC8vIFJldmVydGluZyB0byB0aGUgb3JpZ2luYWwgdmFsdWVzXG4gIGVsLnN0eWxlLmRpc3BsYXkgPSAnJztcbiAgZWwuc3R5bGUucG9zaXRpb24gPSAnJztcbiAgZWwuc3R5bGUudmlzaWJpbGl0eSA9ICcnO1xuXG4gIHJldHVybiB7IHNjcm9sbEhlaWdodCwgY2xpZW50SGVpZ2h0LCBvZmZzZXRIZWlnaHQsIHNjcm9sbFdpZHRoLCBjbGllbnRXaWR0aCwgb2Zmc2V0V2lkdGggfTtcbn1cblxuLyoqXG4gKiBEZXRlcm1pbmVzIHdoZXRoZXIgYW4gZXZlbnQgaXMgZmlyZWQgb24gYSBzcGVjaWZpYyBlbGVtZW50LlxuICovXG5leHBvcnQgZnVuY3Rpb24gaXNFdmVudE9uRWxlbWVudChcbiAgZWxlbWVudDogSFRNTEVsZW1lbnQgfCBudWxsLFxuICBldmVudDogTW91c2VFdmVudCB8IFBvaW50ZXJFdmVudCxcbik6IGJvb2xlYW4ge1xuICBpZiAoIWVsZW1lbnQgfHwgIWV2ZW50KSB7XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG5cbiAgY29uc3QgcmVjdCA9IGVsZW1lbnQuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7XG4gIHJldHVybiAoXG4gICAgcmVjdC50b3AgPD0gZXZlbnQuY2xpZW50WSAmJlxuICAgIGV2ZW50LmNsaWVudFkgPD0gcmVjdC50b3AgKyByZWN0LmhlaWdodCAmJlxuICAgIHJlY3QubGVmdCA8PSBldmVudC5jbGllbnRYICYmXG4gICAgZXZlbnQuY2xpZW50WCA8PSByZWN0LmxlZnQgKyByZWN0LndpZHRoXG4gICk7XG59XG5cbi8qKlxuICogRGV0ZXJtaW5lcyB0aGUgcG9zaXRpb24gb2YgYW4gZWxlbWVudCByZWxhdGl2ZSB0byBhIHRyaWdnZXIgZWxlbWVudCBieSBldmFsdWF0aW5nXG4gKiB0aGUgb3B0aW1hbCBwb3NpdGlvbiBiYXNlZCBvbiB0aGUgYXZhaWxhYmxlIHNwYWNlLlxuICpcbiAqIEBwYXJhbSBlbGVtZW50IFRoZSBlbGVtZW50IG9mIHdoaWNoIHRvIGNhbGN1bGF0ZSB0aGUgcG9zaXRpb24uXG4gKiBAcGFyYW0gdHJpZ2dlciBUaGUgZWxlbWVudCByZWxhdGl2ZSB0byB3aGljaCB0byBjYWxjdWxhdGUgdGhlIHBvc2l0aW9uLlxuICogQHBhcmFtIGNvbnRhaW5lciBUaGUgZWxlbWVudCB3aGljaCBoYXMgdGhlIHBvc2l0aW9uOmZpeGVkIGFwcGxpZWQuXG4gKiBAcGFyYW0gcHJvcGVydGllcyBQcm9wZXJ0aWVzIHRvIHRha2UgaW50byBhY2NvdW50IGluIGNhbGN1bGF0aW9ucyAob3B0aW9uYWwpLlxuICogQHBhcmFtIHByb3BlcnRpZXMudmVydGljYWxPZmZzZXQgVGhlIGRpc3RhbmNlIHRvIGJlIGFkZGVkIGJldHdlZW4gdGhlIGVsZW1lbnQgYW5kIHRoZSB0cmlnZ2VyIChvcHRpb25hbCkuXG4gKiBAcGFyYW0gcHJvcGVydGllcy5ob3Jpem9udGFsT2Zmc2V0IFRoZSBob3Jpem9udGFsIG9mZnNldCB0byBiZSBhcHBsaWVkIHRvIHRoZSBlbGVtZW50IChvcHRpb25hbCkuXG4gKiBAcGFyYW0gcHJvcGVydGllcy5jZW50ZXJlZCBXaGV0aGVyIHRoZSBlbGVtZW50IHNob3VsZCBiZSBwbGFjZWQgaW4gdGhlIGNlbnRlciBieSBkZWZhdWx0IChvcHRpb25hbCkuXG4gKiBAcGFyYW0gcHJvcGVydGllcy5yZXNwb25zaXZlSGVpZ2h0IFdoZXRoZXIgdGhlIGVsZW1lbnQgY2FsY3VsYXRlcyBpdHMgaGVpZ2h0IGJhc2VkIG9uIGl0cyBjb250ZW50IChvcHRpb25hbCkuXG4gKiBAcmV0dXJucyBSZXR1cm5zIGFuIG9iamVjdCBjb250YWluaW5nIHRoZSBsZWZ0IHBvc2l0aW9uLCB0aGUgdG9wIHBvc2l0aW9uLCB0aGUgbWF4aW11bSBoZWlnaHRcbiAqIG9mIHRoZSBlbGVtZW50IGFuZCB0aGUgY3VycmVudCBhbGlnbm1lbnQgb2JqZWN0LlxuICovXG5leHBvcnQgZnVuY3Rpb24gZ2V0RWxlbWVudFBvc2l0aW9uKFxuICBlbGVtZW50OiBIVE1MRWxlbWVudCxcbiAgdHJpZ2dlcjogSFRNTEVsZW1lbnQsXG4gIGNvbnRhaW5lcjogSFRNTEVsZW1lbnQsXG4gIHByb3BlcnRpZXM/OiB7XG4gICAgdmVydGljYWxPZmZzZXQ/OiBudW1iZXI7XG4gICAgaG9yaXpvbnRhbE9mZnNldD86IG51bWJlcjtcbiAgICBjZW50ZXJlZD86IGJvb2xlYW47XG4gICAgcmVzcG9uc2l2ZUhlaWdodD86IGJvb2xlYW47XG4gICAgZm9yY2VBYm92ZT86IGJvb2xlYW47XG4gICAgZm9yY2VCZWxvdz86IGJvb2xlYW47XG4gIH0sXG4pOiBTYmJFbGVtZW50UG9zaXRpb25JbmZvcyB7XG4gIGNvbnN0IG1heFdpZHRoT2Zmc2V0ID0gMTY7XG4gIGNvbnN0IHZlcnRpY2FsT2Zmc2V0ID0gcHJvcGVydGllcz8udmVydGljYWxPZmZzZXQgfHwgMDtcbiAgY29uc3QgaG9yaXpvbnRhbE9mZnNldCA9IHByb3BlcnRpZXM/Lmhvcml6b250YWxPZmZzZXQgfHwgMDtcbiAgY29uc3QgcmVzcG9uc2l2ZUhlaWdodCA9IHByb3BlcnRpZXM/LnJlc3BvbnNpdmVIZWlnaHQgfHwgZmFsc2U7XG5cbiAgY29uc3QgdHJpZ2dlclJlYyA9IHRyaWdnZXIuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7XG4gIGNvbnN0IGVsZW1lbnRSZWMgPSBnZXRFbGVtZW50UmVjdGFuZ2xlKGVsZW1lbnQpO1xuXG4gIGNvbnN0IHRyaWdnZXJMZWZ0ID0gdHJpZ2dlclJlYy5sZWZ0O1xuICBjb25zdCB0cmlnZ2VyVG9wID0gdHJpZ2dlclJlYy50b3A7XG5cbiAgY29uc3QgYXZhaWxhYmxlU3BhY2VSaWdodCA9XG4gICAgZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LmNsaWVudFdpZHRoIC0gKHRyaWdnZXJMZWZ0ICsgdHJpZ2dlclJlYy53aWR0aCk7XG4gIGNvbnN0IGF2YWlsYWJsZVNwYWNlQWJvdmUgPSB0cmlnZ2VyVG9wIC0gdmVydGljYWxPZmZzZXQ7XG4gIGNvbnN0IGF2YWlsYWJsZVNwYWNlQmVsb3cgPVxuICAgIGRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5jbGllbnRIZWlnaHQgLSAodHJpZ2dlclRvcCArIHRyaWdnZXJSZWMuaGVpZ2h0ICsgdmVydGljYWxPZmZzZXQpO1xuXG4gIC8vIERlZmF1bHQgZWxlbWVudCBhbGlnbm1lbnQgaXMgXCJzdGFydC9iZWxvd1wiXG4gIGxldCBlbGVtZW50WFBvc2l0aW9uID0gdHJpZ2dlckxlZnQ7XG4gIGxldCBlbGVtZW50WVBvc2l0aW9uID0gdHJpZ2dlclRvcCArIHRyaWdnZXJSZWMuaGVpZ2h0ICsgdmVydGljYWxPZmZzZXQ7XG4gIGxldCBlbGVtZW50WE92ZXJmbG93ID0gZWxlbWVudFJlYy5vZmZzZXRXaWR0aCAtIHRyaWdnZXJSZWMud2lkdGg7XG4gIGNvbnN0IGFsaWdubWVudDogU2JiQWxpZ25tZW50ID0geyBob3Jpem9udGFsOiAnc3RhcnQnLCB2ZXJ0aWNhbDogJ2JlbG93JyB9O1xuXG4gIC8vIENhbGN1bGF0ZSBlbGVtZW50IG1heC1oZWlnaHRcbiAgbGV0IGVsZW1lbnRNYXhIZWlnaHQgPSBgJHthdmFpbGFibGVTcGFjZUJlbG93IC0gdmVydGljYWxPZmZzZXR9cHhgO1xuXG4gIC8vIENoZWNrIGlmIGhvcml6b250YWwgYWxpZ25tZW50IG5lZWRzIHRvIGJlIGNoYW5nZWQgdG8gXCJjZW50ZXJcIlxuICBpZiAoXG4gICAgcHJvcGVydGllcz8uY2VudGVyZWQgJiZcbiAgICB0cmlnZ2VyTGVmdCAtIG1heFdpZHRoT2Zmc2V0ICsgdHJpZ2dlclJlYy53aWR0aCAvIDIgPiBlbGVtZW50UmVjLm9mZnNldFdpZHRoIC8gMiAmJlxuICAgIGF2YWlsYWJsZVNwYWNlUmlnaHQgLSBtYXhXaWR0aE9mZnNldCA+IGVsZW1lbnRYT3ZlcmZsb3cgLyAyXG4gICkge1xuICAgIGVsZW1lbnRYUG9zaXRpb24gLT0gZWxlbWVudFhPdmVyZmxvdyAvPSAyO1xuICAgIGFsaWdubWVudC5ob3Jpem9udGFsID0gJ2NlbnRlcic7XG4gIH1cblxuICAvLyBDaGVjayBpZiBob3Jpem9udGFsIGFsaWdubWVudCBuZWVkcyB0byBiZSBjaGFuZ2VkIHRvIFwiZW5kXCJcbiAgaWYgKGF2YWlsYWJsZVNwYWNlUmlnaHQgPCBlbGVtZW50WE92ZXJmbG93ICYmIHRyaWdnZXJMZWZ0ID4gZWxlbWVudFhPdmVyZmxvdykge1xuICAgIGVsZW1lbnRYUG9zaXRpb24gPSBlbGVtZW50WFBvc2l0aW9uIC0gZWxlbWVudFhPdmVyZmxvdztcbiAgICBhbGlnbm1lbnQuaG9yaXpvbnRhbCA9ICdlbmQnO1xuICB9XG5cbiAgLy8gQWRkIGhvcml6b250YWwgb2Zmc2V0XG4gIGlmIChcbiAgICBob3Jpem9udGFsT2Zmc2V0ICYmXG4gICAgYWxpZ25tZW50Lmhvcml6b250YWwgIT09ICdjZW50ZXInICYmXG4gICAgdHJpZ2dlclJlYy53aWR0aCAvIDIgPCBob3Jpem9udGFsT2Zmc2V0XG4gICkge1xuICAgIGVsZW1lbnRYUG9zaXRpb24gKz0gaG9yaXpvbnRhbE9mZnNldCAqIChhbGlnbm1lbnQuaG9yaXpvbnRhbCA9PT0gJ3N0YXJ0JyA/IC0xIDogMSk7XG4gIH1cblxuICAvLyBDaGVjayB3aGV0aGVyIHRoZXJlIGlzIGluc3VmZmljaWVudCBzcGFjZSBvbiBib3RoIHNpZGVzXG4gIGlmIChcbiAgICAodHJpZ2dlckxlZnQgPCBlbGVtZW50WE92ZXJmbG93ICYmIGF2YWlsYWJsZVNwYWNlUmlnaHQgPCBlbGVtZW50WE92ZXJmbG93KSB8fFxuICAgIGRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5jbGllbnRXaWR0aCA8IGVsZW1lbnRSZWMub2Zmc2V0V2lkdGhcbiAgKSB7XG4gICAgZWxlbWVudFhQb3NpdGlvbiA9IGRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5jbGllbnRXaWR0aCAvIDIgLSBlbGVtZW50UmVjLm9mZnNldFdpZHRoIC8gMjtcbiAgfVxuXG4gIC8vIENoZWNrIGlmIHZlcnRpY2FsIGFsaWdubWVudCBuZWVkcyB0byBiZSBjaGFuZ2VkIHRvIFwiYWJvdmVcIjpcbiAgY29uc3Qgc2hvdWxkT3BlbkFib3ZlID1cbiAgICAoYXZhaWxhYmxlU3BhY2VCZWxvdyAtIHZlcnRpY2FsT2Zmc2V0IDwgZWxlbWVudFJlYy5zY3JvbGxIZWlnaHQgJiZcbiAgICAgIGF2YWlsYWJsZVNwYWNlQWJvdmUgLSB2ZXJ0aWNhbE9mZnNldCA+XG4gICAgICAgIChyZXNwb25zaXZlSGVpZ2h0ID8gZWxlbWVudFJlYy5jbGllbnRIZWlnaHQgOiBlbGVtZW50UmVjLnNjcm9sbEhlaWdodCkpIHx8XG4gICAgKGF2YWlsYWJsZVNwYWNlQWJvdmUgPiBhdmFpbGFibGVTcGFjZUJlbG93ICYmXG4gICAgICBhdmFpbGFibGVTcGFjZUJlbG93IC0gdmVydGljYWxPZmZzZXQgPCBlbGVtZW50UmVjLmNsaWVudEhlaWdodCAmJlxuICAgICAgIXJlc3BvbnNpdmVIZWlnaHQpO1xuXG4gIGlmICghcHJvcGVydGllcz8uZm9yY2VCZWxvdyAmJiAocHJvcGVydGllcz8uZm9yY2VBYm92ZSB8fCBzaG91bGRPcGVuQWJvdmUpKSB7XG4gICAgZWxlbWVudFlQb3NpdGlvbiA9XG4gICAgICBhdmFpbGFibGVTcGFjZUFib3ZlIDwgZWxlbWVudFJlYy5zY3JvbGxIZWlnaHRcbiAgICAgICAgPyBlbGVtZW50WVBvc2l0aW9uIC0gdHJpZ2dlclJlYy5oZWlnaHQgLSBhdmFpbGFibGVTcGFjZUFib3ZlIC0gdmVydGljYWxPZmZzZXRcbiAgICAgICAgOiB0cmlnZ2VyVG9wIC0gZWxlbWVudFJlYy5jbGllbnRIZWlnaHQgLSB2ZXJ0aWNhbE9mZnNldDtcblxuICAgIGVsZW1lbnRNYXhIZWlnaHQgPSBgJHthdmFpbGFibGVTcGFjZUFib3ZlIC0gdmVydGljYWxPZmZzZXR9cHhgO1xuICAgIGFsaWdubWVudC52ZXJ0aWNhbCA9ICdhYm92ZSc7XG4gIH1cblxuICBjb25zdCBjb250YWluZXJSZWN0ID0gY29udGFpbmVyLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO1xuXG4gIC8vIFdoZW4gem9vbWluZyBpbiBTYWZhcmkgdGhlIGNvbnRhaW5lciByZWN0YW5nbGUgY29udGFpbnMgbmVnYXRpdmUgdmFsdWVzIGZvciB0aGUgcG9zaXRpb24sXG4gIC8vIGFuZCB3ZSBuZWVkIHRvIHJlLWFkZCB0aGVtIHRvIHRoZSBjYWxjdWxhdGVkIGNvb3JkaW5hdGVzLlxuICBpZiAoY29udGFpbmVyUmVjdC5sZWZ0IDwgMCkge1xuICAgIGVsZW1lbnRYUG9zaXRpb24gLT0gY29udGFpbmVyUmVjdC5sZWZ0O1xuICB9XG5cbiAgLy8gTm9ybWFsbHkgdGhlIGNvbnRhaW5lclJlY3QncyB0b3AgdmFsdWUgd291bGQgYmUgemVybywgaG93ZXZlciB3aGVuIHRoZSBvdmVybGF5IGlzIGF0dGFjaGVkIHRvIGFuIGlucHV0XG4gIC8vIChlLmcuIGluIGFuIGF1dG9jb21wbGV0ZSksIG1vYmlsZSBicm93c2VycyB3aWxsIHNoaWZ0IGV2ZXJ5dGhpbmcgaW4gb3JkZXIgdG8gcHV0IHRoZSBpbnB1dCBpbiB0aGUgbWlkZGxlXG4gIC8vIG9mIHRoZSBzY3JlZW4gYW5kIHRvIG1ha2Ugc3BhY2UgZm9yIHRoZSB2aXJ0dWFsIGtleWJvYXJkLiBXZSBuZWVkIHRvIGFjY291bnQgZm9yIHRoaXMgb2Zmc2V0LFxuICAvLyBvdGhlcndpc2Ugb3VyIHBvc2l0aW9uaW5nIHdpbGwgYmUgdGhyb3duIG9mZi5cbiAgLy8gQWRkaXRpb25hbGx5LCB3aGVuIHpvb21pbmcgaW4gU2FmYXJpIHRoaXMgZml4ZXMgdGhlIHZlcnRpY2FsIHBvc2l0aW9uLlxuICBpZiAoY29udGFpbmVyUmVjdC50b3AgPCAwKSB7XG4gICAgZWxlbWVudFlQb3NpdGlvbiAtPSBjb250YWluZXJSZWN0LnRvcDtcbiAgfVxuXG4gIHJldHVybiB7XG4gICAgdG9wOiBlbGVtZW50WVBvc2l0aW9uLFxuICAgIGxlZnQ6IGVsZW1lbnRYUG9zaXRpb24sXG4gICAgbWF4SGVpZ2h0OiBlbGVtZW50TWF4SGVpZ2h0LFxuICAgIGFsaWdubWVudDogYWxpZ25tZW50LFxuICB9O1xufVxuXG4vKipcbiAqIERldGVybWluZXMgdGhlIHBvc2l0aW9uIG9mIGFuIGVsZW1lbnQgcmVsYXRpdmUgdG8gYSB0cmlnZ2VyIGVsZW1lbnQgYnkgZXZhbHVhdGluZ1xuICogdGhlIG9wdGltYWwgcG9zaXRpb24gYmFzZWQgb24gdGhlIGF2YWlsYWJsZSBzcGFjZS5cbiAqXG4gKiBAcGFyYW0gZWxlbWVudCBUaGUgZWxlbWVudCBvZiB3aGljaCB0byBjYWxjdWxhdGUgdGhlIHBvc2l0aW9uLlxuICogQHBhcmFtIHRyaWdnZXIgVGhlIGVsZW1lbnQgcmVsYXRpdmUgdG8gd2hpY2ggdG8gY2FsY3VsYXRlIHRoZSBwb3NpdGlvbi5cbiAqIEBwYXJhbSBjb250YWluZXIgVGhlIGVsZW1lbnQgd2hpY2ggaGFzIHRoZSBwb3NpdGlvbjpmaXhlZCBhcHBsaWVkLlxuICogQHBhcmFtIHByb3BlcnRpZXMgUHJvcGVydGllcyB0byB0YWtlIGludG8gYWNjb3VudCBpbiBjYWxjdWxhdGlvbnMgKG9wdGlvbmFsKS5cbiAqIEBwYXJhbSBwcm9wZXJ0aWVzLnZlcnRpY2FsT2Zmc2V0IFRoZSBkaXN0YW5jZSB0byBiZSBhZGRlZCBiZXR3ZWVuIHRoZSBlbGVtZW50IGFuZCB0aGUgdHJpZ2dlciAob3B0aW9uYWwpLlxuICogQHBhcmFtIHByb3BlcnRpZXMuaG9yaXpvbnRhbE9mZnNldCBUaGUgaG9yaXpvbnRhbCBvZmZzZXQgdG8gYmUgYXBwbGllZCB0byB0aGUgZWxlbWVudCAob3B0aW9uYWwpLlxuICogQHBhcmFtIHByb3BlcnRpZXMucmVzcG9uc2l2ZUhlaWdodCBXaGV0aGVyIHRoZSBlbGVtZW50IGNhbGN1bGF0ZXMgaXRzIGhlaWdodCBiYXNlZCBvbiBpdHMgY29udGVudCAob3B0aW9uYWwpLlxuICogQHJldHVybnMgUmV0dXJucyBhbiBvYmplY3QgY29udGFpbmluZyB0aGUgbGVmdCBwb3NpdGlvbiwgdGhlIHRvcCBwb3NpdGlvbiwgdGhlIG1heGltdW0gaGVpZ2h0XG4gKiBvZiB0aGUgZWxlbWVudCBhbmQgdGhlIGN1cnJlbnQgYWxpZ25tZW50IG9iamVjdC5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGdldEVsZW1lbnRQb3NpdGlvbkhvcml6b250YWwoXG4gIGVsZW1lbnQ6IEhUTUxFbGVtZW50LFxuICB0cmlnZ2VyOiBIVE1MRWxlbWVudCxcbiAgY29udGFpbmVyOiBIVE1MRWxlbWVudCxcbiAgcHJvcGVydGllcz86IHtcbiAgICB2ZXJ0aWNhbE9mZnNldD86IG51bWJlcjtcbiAgICBob3Jpem9udGFsT2Zmc2V0PzogbnVtYmVyO1xuICAgIHJlc3BvbnNpdmVIZWlnaHQ/OiBib29sZWFuO1xuICAgIGNvbnRlbnRTZWxlY3Rvcj86IHN0cmluZztcbiAgfSxcbik6IFNiYkVsZW1lbnRQb3NpdGlvbkluZm9zIHtcbiAgY29uc3QgbWF4SGVpZ2h0T2Zmc2V0ID0gMTY7XG5cbiAgY29uc3QgdmVydGljYWxPZmZzZXQgPSBwcm9wZXJ0aWVzPy52ZXJ0aWNhbE9mZnNldCB8fCAwO1xuICBjb25zdCBob3Jpem9udGFsT2Zmc2V0ID0gcHJvcGVydGllcz8uaG9yaXpvbnRhbE9mZnNldCB8fCAwO1xuXG4gIGNvbnN0IHRyaWdnZXJSZWMgPSB0cmlnZ2VyLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO1xuICBjb25zdCBlbGVtZW50UmVjID0gZ2V0RWxlbWVudFJlY3RhbmdsZShlbGVtZW50KTtcbiAgY29uc3QgdHJpZ2dlclBhcmVudFJlYyA9IHRyaWdnZXJcbiAgICAucGFyZW50RWxlbWVudCEuc2hhZG93Um9vdCEucXVlcnlTZWxlY3RvcihcbiAgICAgIHByb3BlcnRpZXM/LmNvbnRlbnRTZWxlY3RvciA/PyBgLiR7ZWxlbWVudC5jbGFzc05hbWV9YCxcbiAgICApIVxuICAgIC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtcbiAgY29uc3QgY29udGFpbmVyUmVjdCA9IGNvbnRhaW5lci5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtcblxuICBjb25zdCBhdmFpbGFibGVTcGFjZVJpZ2h0ID0gZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LmNsaWVudFdpZHRoIC0gdHJpZ2dlclBhcmVudFJlYy5yaWdodDtcbiAgY29uc3QgYXZhaWxhYmxlU3BhY2VCZWxvdyA9XG4gICAgZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LmNsaWVudEhlaWdodCAtICh0cmlnZ2VyUmVjLnRvcCAtIHZlcnRpY2FsT2Zmc2V0KTtcbiAgY29uc3QgYXZhaWxhYmxlVmVydGljYWxTcGFjZSA9IGRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5jbGllbnRIZWlnaHQ7XG4gIGNvbnN0IGVsZW1lbnRNYXhIZWlnaHQgPSBgJHthdmFpbGFibGVWZXJ0aWNhbFNwYWNlIC0gbWF4SGVpZ2h0T2Zmc2V0ICogMn1weGA7XG4gIGNvbnN0IGFsaWdubWVudDogU2JiQWxpZ25tZW50ID0geyBob3Jpem9udGFsOiAnZW5kJywgdmVydGljYWw6ICdhYm92ZScgfTtcbiAgY29uc3QgZWxlbWVudFhPdmVyZmxvdyA9IGVsZW1lbnRSZWMub2Zmc2V0V2lkdGggKyBob3Jpem9udGFsT2Zmc2V0O1xuXG4gIC8vIERlZmF1bHQgZWxlbWVudCBhbGlnbm1lbnQgaXMgXCJlbmQvYWJvdmVcIlxuICBsZXQgZWxlbWVudFhQb3NpdGlvbiA9IHRyaWdnZXJQYXJlbnRSZWMucmlnaHQ7XG4gIGxldCBlbGVtZW50WVBvc2l0aW9uID0gdHJpZ2dlclJlYy50b3AgKyB2ZXJ0aWNhbE9mZnNldDtcblxuICAvLyBDaGVjayBpZiBob3Jpem9udGFsIGFsaWdubWVudCBuZWVkcyB0byBiZSBjaGFuZ2VkIHRvIFwic3RhcnRcIlxuICBpZiAoYXZhaWxhYmxlU3BhY2VSaWdodCA8IGVsZW1lbnRYT3ZlcmZsb3cgJiYgdHJpZ2dlclJlYy5sZWZ0ID4gZWxlbWVudFhPdmVyZmxvdykge1xuICAgIGVsZW1lbnRYUG9zaXRpb24gPSBlbGVtZW50WFBvc2l0aW9uIC0gdHJpZ2dlclBhcmVudFJlYy53aWR0aCAtIGVsZW1lbnRSZWMub2Zmc2V0V2lkdGg7XG4gICAgYWxpZ25tZW50Lmhvcml6b250YWwgPSAnc3RhcnQnO1xuICB9XG5cbiAgLy8gQWRkIGhvcml6b250YWwgb2Zmc2V0XG4gIGlmIChob3Jpem9udGFsT2Zmc2V0ICYmIGFsaWdubWVudC5ob3Jpem9udGFsICE9PSAnY2VudGVyJykge1xuICAgIGVsZW1lbnRYUG9zaXRpb24gKz0gaG9yaXpvbnRhbE9mZnNldCAqIChhbGlnbm1lbnQuaG9yaXpvbnRhbCA9PT0gJ3N0YXJ0JyA/IC0xIDogMSk7XG4gIH1cblxuICAvLyBDaGVjayBpZiB2ZXJ0aWNhbCBhbGlnbm1lbnQgbmVlZHMgdG8gYmUgY2hhbmdlZCB0byBcImFib3ZlXCI6XG4gIGlmIChhdmFpbGFibGVTcGFjZUJlbG93IDwgZWxlbWVudFJlYy5zY3JvbGxIZWlnaHQpIHtcbiAgICBlbGVtZW50WVBvc2l0aW9uID0gYXZhaWxhYmxlVmVydGljYWxTcGFjZSAtIGVsZW1lbnRSZWMuY2xpZW50SGVpZ2h0IC0gbWF4SGVpZ2h0T2Zmc2V0O1xuICB9XG5cbiAgLy8gV2hlbiB6b29taW5nIGluIFNhZmFyaSB0aGUgY29udGFpbmVyIHJlY3RhbmdsZSBjb250YWlucyBuZWdhdGl2ZSB2YWx1ZXMgZm9yIHRoZSBwb3NpdGlvbixcbiAgLy8gYW5kIHdlIG5lZWQgdG8gcmUtYWRkIHRoZW0gdG8gdGhlIGNhbGN1bGF0ZWQgY29vcmRpbmF0ZXMuXG4gIGlmIChjb250YWluZXJSZWN0LmxlZnQgPCAwKSB7XG4gICAgZWxlbWVudFhQb3NpdGlvbiAtPSBjb250YWluZXJSZWN0LmxlZnQ7XG4gIH1cblxuICAvLyBOb3JtYWxseSB0aGUgY29udGFpbmVyUmVjdCdzIHRvcCB2YWx1ZSB3b3VsZCBiZSB6ZXJvLCBob3dldmVyIHdoZW4gdGhlIG92ZXJsYXkgaXMgYXR0YWNoZWQgdG8gYW4gaW5wdXRcbiAgLy8gKGUuZy4gaW4gYW4gYXV0b2NvbXBsZXRlKSwgbW9iaWxlIGJyb3dzZXJzIHdpbGwgc2hpZnQgZXZlcnl0aGluZyBpbiBvcmRlciB0byBwdXQgdGhlIGlucHV0IGluIHRoZSBtaWRkbGVcbiAgLy8gb2YgdGhlIHNjcmVlbiBhbmQgdG8gbWFrZSBzcGFjZSBmb3IgdGhlIHZpcnR1YWwga2V5Ym9hcmQuIFdlIG5lZWQgdG8gYWNjb3VudCBmb3IgdGhpcyBvZmZzZXQsXG4gIC8vIG90aGVyd2lzZSBvdXIgcG9zaXRpb25pbmcgd2lsbCBiZSB0aHJvd24gb2ZmLlxuICAvLyBBZGRpdGlvbmFsbHksIHdoZW4gem9vbWluZyBpbiBTYWZhcmkgdGhpcyBmaXhlcyB0aGUgdmVydGljYWwgcG9zaXRpb24uXG4gIGlmIChjb250YWluZXJSZWN0LnRvcCA8IDApIHtcbiAgICBlbGVtZW50WVBvc2l0aW9uIC09IGNvbnRhaW5lclJlY3QudG9wO1xuICB9XG5cbiAgcmV0dXJuIHtcbiAgICB0b3A6IGVsZW1lbnRZUG9zaXRpb24sXG4gICAgbGVmdDogZWxlbWVudFhQb3NpdGlvbixcbiAgICBtYXhIZWlnaHQ6IGVsZW1lbnRNYXhIZWlnaHQsXG4gICAgYWxpZ25tZW50OiBhbGlnbm1lbnQsXG4gIH07XG59XG4iXSwibWFwcGluZ3MiOiI7Ozs7QUFvQkEsU0FBZ0Isb0JBQW9CLElBQWU7Q0FDakQsTUFBTSxlQUFlLE9BQU8saUJBQWlCLEdBQUcsRUFDOUMsaUJBQWlCLGFBQWEsU0FDOUIsbUJBQW1CLFNBQVMsYUFBYSxXQUFXLEdBQUcsQ0FBQyxVQUFVO0FBR3BFLEtBQUksbUJBQW1CLFVBQVUscUJBQXFCLElBQ3BELFFBQU87RUFDTCxjQUFjLEdBQUc7RUFDakIsY0FBYyxHQUFHO0VBQ2pCLGNBQWMsR0FBRztFQUNqQixhQUFhLEdBQUc7RUFDaEIsYUFBYSxHQUFHO0VBQ2hCLGFBQWEsR0FBRztFQUNqQjtBQUtILElBQUcsTUFBTSxXQUFXO0FBQ3BCLElBQUcsTUFBTSxhQUFhO0FBQ3RCLElBQUcsTUFBTSxVQUFVO0NBRW5CLE1BQU0sZUFBZSxHQUFHLGNBQ3RCLGVBQWUsR0FBRyxjQUNsQixlQUFlLEdBQUcsY0FDbEIsY0FBYyxHQUFHLGFBQ2pCLGNBQWMsR0FBRyxhQUNqQixjQUFjLEdBQUc7QUFHbkIsSUFBRyxNQUFNLFVBQVU7QUFDbkIsSUFBRyxNQUFNLFdBQVc7QUFDcEIsSUFBRyxNQUFNLGFBQWE7QUFFdEIsUUFBTztFQUFFO0VBQWM7RUFBYztFQUFjO0VBQWE7RUFBYTtFQUFhOzs7OztBQU01RixTQUFnQixpQkFDZCxTQUNBLE9BQWdDO0FBRWhDLEtBQUksQ0FBQyxXQUFXLENBQUMsTUFDZixRQUFPO0NBR1QsTUFBTSxPQUFPLFFB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
|
|
153
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9zaXRpb24uanMiLCJuYW1lcyI6W10sInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2VsZW1lbnRzL2NvcmUvb3ZlcmxheS9wb3NpdGlvbi50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgdHlwZSBFbGVtZW50UmVjdGFuZ2xlID0gUGljazxcbiAgSFRNTEVsZW1lbnQsXG4gICdzY3JvbGxIZWlnaHQnIHwgJ2NsaWVudEhlaWdodCcgfCAnb2Zmc2V0SGVpZ2h0JyB8ICdzY3JvbGxXaWR0aCcgfCAnY2xpZW50V2lkdGgnIHwgJ29mZnNldFdpZHRoJ1xuPjtcblxuZXhwb3J0IGludGVyZmFjZSBTYmJBbGlnbm1lbnQge1xuICBob3Jpem9udGFsOiAnc3RhcnQnIHwgJ2NlbnRlcicgfCAnZW5kJztcbiAgdmVydGljYWw6ICdhYm92ZScgfCAnYmVsb3cnO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFNiYkVsZW1lbnRQb3NpdGlvbkluZm9zIHtcbiAgdG9wOiBudW1iZXI7XG4gIGxlZnQ6IG51bWJlcjtcbiAgbWF4SGVpZ2h0OiBzdHJpbmc7XG4gIGFsaWdubWVudDogU2JiQWxpZ25tZW50O1xufVxuXG4vKipcbiAqIEdldHMgaGVpZ2h0IGFuZCB3aWR0aCBvZiBhbiBlbGVtZW50IGV2ZW4gaWYgaXQncyBoaWRkZW4gKGBkaXNwbGF5OiBub25lYCkuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBnZXRFbGVtZW50UmVjdGFuZ2xlKGVsOiBIVE1MRWxlbWVudCk6IEVsZW1lbnRSZWN0YW5nbGUge1xuICBjb25zdCBlbGVtZW50U3R5bGUgPSB3aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZShlbCksXG4gICAgZWxlbWVudERpc3BsYXkgPSBlbGVtZW50U3R5bGUuZGlzcGxheSxcbiAgICBlbGVtZW50TWF4SGVpZ2h0ID0gcGFyc2VJbnQoZWxlbWVudFN0eWxlLm1heEhlaWdodCwgMTApLnRvU3RyaW5nKCk7XG5cbiAgLy8gSWYgaXQgaXMgbm90IGhpZGRlbiB3ZSBqdXN0IHJldHVybiBub3JtYWwgaGVpZ2h0XG4gIGlmIChlbGVtZW50RGlzcGxheSAhPT0gJ25vbmUnICYmIGVsZW1lbnRNYXhIZWlnaHQgIT09ICcwJykge1xuICAgIHJldHVybiB7XG4gICAgICBzY3JvbGxIZWlnaHQ6IGVsLnNjcm9sbEhlaWdodCxcbiAgICAgIGNsaWVudEhlaWdodDogZWwuY2xpZW50SGVpZ2h0LFxuICAgICAgb2Zmc2V0SGVpZ2h0OiBlbC5vZmZzZXRIZWlnaHQsXG4gICAgICBzY3JvbGxXaWR0aDogZWwuc2Nyb2xsV2lkdGgsXG4gICAgICBjbGllbnRXaWR0aDogZWwuY2xpZW50V2lkdGgsXG4gICAgICBvZmZzZXRXaWR0aDogZWwub2Zmc2V0V2lkdGgsXG4gICAgfTtcbiAgfVxuXG4gIC8vIFRoZSBlbGVtZW50IGlzIGhpZGRlbiBzbzpcbiAgLy8gbWFrZSB0aGUgZWwgYmxvY2sgaW4gb3JkZXIgdG8gbWVhc3VyZSBpdHMgaGVpZ2h0IGJ1dCBzdGlsbCBiZSBoaWRkZW5cbiAgZWwuc3R5bGUucG9zaXRpb24gPSAnYWJzb2x1dGUnO1xuICBlbC5zdHlsZS52aXNpYmlsaXR5ID0gJ2hpZGRlbic7XG4gIGVsLnN0eWxlLmRpc3BsYXkgPSAnYmxvY2snO1xuXG4gIGNvbnN0IHNjcm9sbEhlaWdodCA9IGVsLnNjcm9sbEhlaWdodCxcbiAgICBjbGllbnRIZWlnaHQgPSBlbC5jbGllbnRIZWlnaHQsXG4gICAgb2Zmc2V0SGVpZ2h0ID0gZWwub2Zmc2V0SGVpZ2h0LFxuICAgIHNjcm9sbFdpZHRoID0gZWwuc2Nyb2xsV2lkdGgsXG4gICAgY2xpZW50V2lkdGggPSBlbC5jbGllbnRXaWR0aCxcbiAgICBvZmZzZXRXaWR0aCA9IGVsLm9mZnNldFdpZHRoO1xuXG4gIC8vIFJldmVydGluZyB0byB0aGUgb3JpZ2luYWwgdmFsdWVzXG4gIGVsLnN0eWxlLmRpc3BsYXkgPSAnJztcbiAgZWwuc3R5bGUucG9zaXRpb24gPSAnJztcbiAgZWwuc3R5bGUudmlzaWJpbGl0eSA9ICcnO1xuXG4gIHJldHVybiB7IHNjcm9sbEhlaWdodCwgY2xpZW50SGVpZ2h0LCBvZmZzZXRIZWlnaHQsIHNjcm9sbFdpZHRoLCBjbGllbnRXaWR0aCwgb2Zmc2V0V2lkdGggfTtcbn1cblxuLyoqXG4gKiBEZXRlcm1pbmVzIHdoZXRoZXIgYW4gZXZlbnQgaXMgZmlyZWQgb24gYSBzcGVjaWZpYyBlbGVtZW50LlxuICovXG5leHBvcnQgZnVuY3Rpb24gaXNFdmVudE9uRWxlbWVudChcbiAgZWxlbWVudDogSFRNTEVsZW1lbnQgfCBudWxsLFxuICBldmVudDogTW91c2VFdmVudCB8IFBvaW50ZXJFdmVudCxcbik6IGJvb2xlYW4ge1xuICBpZiAoIWVsZW1lbnQgfHwgIWV2ZW50KSB7XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG5cbiAgY29uc3QgcmVjdCA9IGVsZW1lbnQuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7XG4gIHJldHVybiAoXG4gICAgcmVjdC50b3AgPD0gZXZlbnQuY2xpZW50WSAmJlxuICAgIGV2ZW50LmNsaWVudFkgPD0gcmVjdC50b3AgKyByZWN0LmhlaWdodCAmJlxuICAgIHJlY3QubGVmdCA8PSBldmVudC5jbGllbnRYICYmXG4gICAgZXZlbnQuY2xpZW50WCA8PSByZWN0LmxlZnQgKyByZWN0LndpZHRoXG4gICk7XG59XG5cbi8qKlxuICogRGV0ZXJtaW5lcyB0aGUgcG9zaXRpb24gb2YgYW4gZWxlbWVudCByZWxhdGl2ZSB0byBhIHRyaWdnZXIgZWxlbWVudCBieSBldmFsdWF0aW5nXG4gKiB0aGUgb3B0aW1hbCBwb3NpdGlvbiBiYXNlZCBvbiB0aGUgYXZhaWxhYmxlIHNwYWNlLlxuICpcbiAqIEBwYXJhbSBlbGVtZW50IFRoZSBlbGVtZW50IG9mIHdoaWNoIHRvIGNhbGN1bGF0ZSB0aGUgcG9zaXRpb24uXG4gKiBAcGFyYW0gdHJpZ2dlciBUaGUgZWxlbWVudCByZWxhdGl2ZSB0byB3aGljaCB0byBjYWxjdWxhdGUgdGhlIHBvc2l0aW9uLlxuICogQHBhcmFtIGNvbnRhaW5lciBUaGUgZWxlbWVudCB3aGljaCBoYXMgdGhlIHBvc2l0aW9uOmZpeGVkIGFwcGxpZWQuXG4gKiBAcGFyYW0gcHJvcGVydGllcyBQcm9wZXJ0aWVzIHRvIHRha2UgaW50byBhY2NvdW50IGluIGNhbGN1bGF0aW9ucyAob3B0aW9uYWwpLlxuICogQHBhcmFtIHByb3BlcnRpZXMudmVydGljYWxPZmZzZXQgVGhlIGRpc3RhbmNlIHRvIGJlIGFkZGVkIGJldHdlZW4gdGhlIGVsZW1lbnQgYW5kIHRoZSB0cmlnZ2VyIChvcHRpb25hbCkuXG4gKiBAcGFyYW0gcHJvcGVydGllcy5ob3Jpem9udGFsT2Zmc2V0IFRoZSBob3Jpem9udGFsIG9mZnNldCB0byBiZSBhcHBsaWVkIHRvIHRoZSBlbGVtZW50IChvcHRpb25hbCkuXG4gKiBAcGFyYW0gcHJvcGVydGllcy5jZW50ZXJlZCBXaGV0aGVyIHRoZSBlbGVtZW50IHNob3VsZCBiZSBwbGFjZWQgaW4gdGhlIGNlbnRlciBieSBkZWZhdWx0IChvcHRpb25hbCkuXG4gKiBAcGFyYW0gcHJvcGVydGllcy5yZXNwb25zaXZlSGVpZ2h0IFdoZXRoZXIgdGhlIGVsZW1lbnQgY2FsY3VsYXRlcyBpdHMgaGVpZ2h0IGJhc2VkIG9uIGl0cyBjb250ZW50IChvcHRpb25hbCkuXG4gKiBAcmV0dXJucyBSZXR1cm5zIGFuIG9iamVjdCBjb250YWluaW5nIHRoZSBsZWZ0IHBvc2l0aW9uLCB0aGUgdG9wIHBvc2l0aW9uLCB0aGUgbWF4aW11bSBoZWlnaHRcbiAqIG9mIHRoZSBlbGVtZW50IGFuZCB0aGUgY3VycmVudCBhbGlnbm1lbnQgb2JqZWN0LlxuICovXG5leHBvcnQgZnVuY3Rpb24gZ2V0RWxlbWVudFBvc2l0aW9uKFxuICBlbGVtZW50OiBIVE1MRWxlbWVudCxcbiAgdHJpZ2dlcjogSFRNTEVsZW1lbnQsXG4gIGNvbnRhaW5lcjogSFRNTEVsZW1lbnQsXG4gIHByb3BlcnRpZXM/OiB7XG4gICAgdmVydGljYWxPZmZzZXQ/OiBudW1iZXI7XG4gICAgaG9yaXpvbnRhbE9mZnNldD86IG51bWJlcjtcbiAgICBjZW50ZXJlZD86IGJvb2xlYW47XG4gICAgcmVzcG9uc2l2ZUhlaWdodD86IGJvb2xlYW47XG4gICAgZm9yY2VBYm92ZT86IGJvb2xlYW47XG4gICAgZm9yY2VCZWxvdz86IGJvb2xlYW47XG4gIH0sXG4pOiBTYmJFbGVtZW50UG9zaXRpb25JbmZvcyB7XG4gIGNvbnN0IG1heFdpZHRoT2Zmc2V0ID0gMTY7XG4gIGNvbnN0IHZlcnRpY2FsT2Zmc2V0ID0gcHJvcGVydGllcz8udmVydGljYWxPZmZzZXQgfHwgMDtcbiAgY29uc3QgaG9yaXpvbnRhbE9mZnNldCA9IHByb3BlcnRpZXM/Lmhvcml6b250YWxPZmZzZXQgfHwgMDtcbiAgY29uc3QgcmVzcG9uc2l2ZUhlaWdodCA9IHByb3BlcnRpZXM/LnJlc3BvbnNpdmVIZWlnaHQgfHwgZmFsc2U7XG5cbiAgY29uc3QgdHJpZ2dlclJlYyA9IHRyaWdnZXIuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7XG4gIGNvbnN0IGVsZW1lbnRSZWMgPSBnZXRFbGVtZW50UmVjdGFuZ2xlKGVsZW1lbnQpO1xuXG4gIGNvbnN0IHRyaWdnZXJMZWZ0ID0gdHJpZ2dlclJlYy5sZWZ0O1xuICBjb25zdCB0cmlnZ2VyVG9wID0gdHJpZ2dlclJlYy50b3A7XG5cbiAgY29uc3QgYXZhaWxhYmxlU3BhY2VSaWdodCA9XG4gICAgZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LmNsaWVudFdpZHRoIC0gKHRyaWdnZXJMZWZ0ICsgdHJpZ2dlclJlYy53aWR0aCk7XG4gIGNvbnN0IGF2YWlsYWJsZVNwYWNlQWJvdmUgPSB0cmlnZ2VyVG9wIC0gdmVydGljYWxPZmZzZXQ7XG4gIGNvbnN0IGF2YWlsYWJsZVNwYWNlQmVsb3cgPVxuICAgIGRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5jbGllbnRIZWlnaHQgLSAodHJpZ2dlclRvcCArIHRyaWdnZXJSZWMuaGVpZ2h0ICsgdmVydGljYWxPZmZzZXQpO1xuXG4gIC8vIERlZmF1bHQgZWxlbWVudCBhbGlnbm1lbnQgaXMgXCJzdGFydC9iZWxvd1wiXG4gIGxldCBlbGVtZW50WFBvc2l0aW9uID0gdHJpZ2dlckxlZnQ7XG4gIGxldCBlbGVtZW50WVBvc2l0aW9uID0gdHJpZ2dlclRvcCArIHRyaWdnZXJSZWMuaGVpZ2h0ICsgdmVydGljYWxPZmZzZXQ7XG4gIGxldCBlbGVtZW50WE92ZXJmbG93ID0gZWxlbWVudFJlYy5vZmZzZXRXaWR0aCAtIHRyaWdnZXJSZWMud2lkdGg7XG4gIGNvbnN0IGFsaWdubWVudDogU2JiQWxpZ25tZW50ID0geyBob3Jpem9udGFsOiAnc3RhcnQnLCB2ZXJ0aWNhbDogJ2JlbG93JyB9O1xuXG4gIC8vIENhbGN1bGF0ZSBlbGVtZW50IG1heC1oZWlnaHRcbiAgbGV0IGVsZW1lbnRNYXhIZWlnaHQgPSBgJHthdmFpbGFibGVTcGFjZUJlbG93IC0gdmVydGljYWxPZmZzZXR9cHhgO1xuXG4gIC8vIENoZWNrIGlmIGhvcml6b250YWwgYWxpZ25tZW50IG5lZWRzIHRvIGJlIGNoYW5nZWQgdG8gXCJjZW50ZXJcIlxuICBpZiAoXG4gICAgcHJvcGVydGllcz8uY2VudGVyZWQgJiZcbiAgICB0cmlnZ2VyTGVmdCAtIG1heFdpZHRoT2Zmc2V0ICsgdHJpZ2dlclJlYy53aWR0aCAvIDIgPiBlbGVtZW50UmVjLm9mZnNldFdpZHRoIC8gMiAmJlxuICAgIGF2YWlsYWJsZVNwYWNlUmlnaHQgLSBtYXhXaWR0aE9mZnNldCA+IGVsZW1lbnRYT3ZlcmZsb3cgLyAyXG4gICkge1xuICAgIGVsZW1lbnRYUG9zaXRpb24gLT0gZWxlbWVudFhPdmVyZmxvdyAvPSAyO1xuICAgIGFsaWdubWVudC5ob3Jpem9udGFsID0gJ2NlbnRlcic7XG4gIH1cblxuICAvLyBDaGVjayBpZiBob3Jpem9udGFsIGFsaWdubWVudCBuZWVkcyB0byBiZSBjaGFuZ2VkIHRvIFwiZW5kXCJcbiAgaWYgKGF2YWlsYWJsZVNwYWNlUmlnaHQgPCBlbGVtZW50WE92ZXJmbG93ICYmIHRyaWdnZXJMZWZ0ID4gZWxlbWVudFhPdmVyZmxvdykge1xuICAgIGVsZW1lbnRYUG9zaXRpb24gPSBlbGVtZW50WFBvc2l0aW9uIC0gZWxlbWVudFhPdmVyZmxvdztcbiAgICBhbGlnbm1lbnQuaG9yaXpvbnRhbCA9ICdlbmQnO1xuICB9XG5cbiAgLy8gQWRkIGhvcml6b250YWwgb2Zmc2V0XG4gIGlmIChcbiAgICBob3Jpem9udGFsT2Zmc2V0ICYmXG4gICAgYWxpZ25tZW50Lmhvcml6b250YWwgIT09ICdjZW50ZXInICYmXG4gICAgdHJpZ2dlclJlYy53aWR0aCAvIDIgPCBob3Jpem9udGFsT2Zmc2V0XG4gICkge1xuICAgIGVsZW1lbnRYUG9zaXRpb24gKz0gaG9yaXpvbnRhbE9mZnNldCAqIChhbGlnbm1lbnQuaG9yaXpvbnRhbCA9PT0gJ3N0YXJ0JyA/IC0xIDogMSk7XG4gIH1cblxuICAvLyBDaGVjayB3aGV0aGVyIHRoZXJlIGlzIGluc3VmZmljaWVudCBzcGFjZSBvbiBib3RoIHNpZGVzXG4gIGlmIChcbiAgICAodHJpZ2dlckxlZnQgPCBlbGVtZW50WE92ZXJmbG93ICYmIGF2YWlsYWJsZVNwYWNlUmlnaHQgPCBlbGVtZW50WE92ZXJmbG93KSB8fFxuICAgIGRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5jbGllbnRXaWR0aCA8IGVsZW1lbnRSZWMub2Zmc2V0V2lkdGhcbiAgKSB7XG4gICAgZWxlbWVudFhQb3NpdGlvbiA9IGRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5jbGllbnRXaWR0aCAvIDIgLSBlbGVtZW50UmVjLm9mZnNldFdpZHRoIC8gMjtcbiAgfVxuXG4gIC8vIENoZWNrIGlmIHZlcnRpY2FsIGFsaWdubWVudCBuZWVkcyB0byBiZSBjaGFuZ2VkIHRvIFwiYWJvdmVcIi5cbiAgLy8gV2hlbiB0aGUgZWxlbWVudCBkb2Vzbid0IGZpdCBpbiBlaXRoZXIgZGlyZWN0aW9uLCBwcmVmZXIgdGhlIHNpZGUgd2l0aCBtb3JlIHNwYWNlXG4gIC8vIHRvIGF2b2lkIGFuIGluZmluaXRlIHJlcG9zaXRpb25pbmcgbG9vcCAoYWJvdmUg4oaUIGJlbG93KS5cbiAgY29uc3QgZml0c0JlbG93ID0gYXZhaWxhYmxlU3BhY2VCZWxvdyAtIHZlcnRpY2FsT2Zmc2V0ID49IGVsZW1lbnRSZWMuc2Nyb2xsSGVpZ2h0O1xuICBjb25zdCBmaXRzQWJvdmUgPVxuICAgIGF2YWlsYWJsZVNwYWNlQWJvdmUgLSB2ZXJ0aWNhbE9mZnNldCA+PVxuICAgIChyZXNwb25zaXZlSGVpZ2h0ID8gZWxlbWVudFJlYy5jbGllbnRIZWlnaHQgOiBlbGVtZW50UmVjLnNjcm9sbEhlaWdodCk7XG4gIGNvbnN0IG1vcmVTcGFjZUFib3ZlID0gYXZhaWxhYmxlU3BhY2VBYm92ZSA+IGF2YWlsYWJsZVNwYWNlQmVsb3c7XG4gIGNvbnN0IHNob3VsZE9wZW5BYm92ZSA9ICFmaXRzQmVsb3cgJiYgKGZpdHNBYm92ZSB8fCBtb3JlU3BhY2VBYm92ZSk7XG5cbiAgaWYgKCFwcm9wZXJ0aWVzPy5mb3JjZUJlbG93ICYmIChwcm9wZXJ0aWVzPy5mb3JjZUFib3ZlIHx8IHNob3VsZE9wZW5BYm92ZSkpIHtcbiAgICBlbGVtZW50WVBvc2l0aW9uID1cbiAgICAgIGF2YWlsYWJsZVNwYWNlQWJvdmUgPCBlbGVtZW50UmVjLnNjcm9sbEhlaWdodFxuICAgICAgICA/IGVsZW1lbnRZUG9zaXRpb24gLSB0cmlnZ2VyUmVjLmhlaWdodCAtIGF2YWlsYWJsZVNwYWNlQWJvdmUgLSB2ZXJ0aWNhbE9mZnNldFxuICAgICAgICA6IHRyaWdnZXJUb3AgLSBlbGVtZW50UmVjLmNsaWVudEhlaWdodCAtIHZlcnRpY2FsT2Zmc2V0O1xuXG4gICAgZWxlbWVudE1heEhlaWdodCA9IGAke2F2YWlsYWJsZVNwYWNlQWJvdmUgLSB2ZXJ0aWNhbE9mZnNldH1weGA7XG4gICAgYWxpZ25tZW50LnZlcnRpY2FsID0gJ2Fib3ZlJztcbiAgfVxuXG4gIGNvbnN0IGNvbnRhaW5lclJlY3QgPSBjb250YWluZXIuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7XG5cbiAgLy8gV2hlbiB6b29taW5nIGluIFNhZmFyaSB0aGUgY29udGFpbmVyIHJlY3RhbmdsZSBjb250YWlucyBuZWdhdGl2ZSB2YWx1ZXMgZm9yIHRoZSBwb3NpdGlvbixcbiAgLy8gYW5kIHdlIG5lZWQgdG8gcmUtYWRkIHRoZW0gdG8gdGhlIGNhbGN1bGF0ZWQgY29vcmRpbmF0ZXMuXG4gIGlmIChjb250YWluZXJSZWN0LmxlZnQgPCAwKSB7XG4gICAgZWxlbWVudFhQb3NpdGlvbiAtPSBjb250YWluZXJSZWN0LmxlZnQ7XG4gIH1cblxuICAvLyBOb3JtYWxseSB0aGUgY29udGFpbmVyUmVjdCdzIHRvcCB2YWx1ZSB3b3VsZCBiZSB6ZXJvLCBob3dldmVyIHdoZW4gdGhlIG92ZXJsYXkgaXMgYXR0YWNoZWQgdG8gYW4gaW5wdXRcbiAgLy8gKGUuZy4gaW4gYW4gYXV0b2NvbXBsZXRlKSwgbW9iaWxlIGJyb3dzZXJzIHdpbGwgc2hpZnQgZXZlcnl0aGluZyBpbiBvcmRlciB0byBwdXQgdGhlIGlucHV0IGluIHRoZSBtaWRkbGVcbiAgLy8gb2YgdGhlIHNjcmVlbiBhbmQgdG8gbWFrZSBzcGFjZSBmb3IgdGhlIHZpcnR1YWwga2V5Ym9hcmQuIFdlIG5lZWQgdG8gYWNjb3VudCBmb3IgdGhpcyBvZmZzZXQsXG4gIC8vIG90aGVyd2lzZSBvdXIgcG9zaXRpb25pbmcgd2lsbCBiZSB0aHJvd24gb2ZmLlxuICAvLyBBZGRpdGlvbmFsbHksIHdoZW4gem9vbWluZyBpbiBTYWZhcmkgdGhpcyBmaXhlcyB0aGUgdmVydGljYWwgcG9zaXRpb24uXG4gIGlmIChjb250YWluZXJSZWN0LnRvcCA8IDApIHtcbiAgICBlbGVtZW50WVBvc2l0aW9uIC09IGNvbnRhaW5lclJlY3QudG9wO1xuICB9XG5cbiAgcmV0dXJuIHtcbiAgICB0b3A6IGVsZW1lbnRZUG9zaXRpb24sXG4gICAgbGVmdDogZWxlbWVudFhQb3NpdGlvbixcbiAgICBtYXhIZWlnaHQ6IGVsZW1lbnRNYXhIZWlnaHQsXG4gICAgYWxpZ25tZW50OiBhbGlnbm1lbnQsXG4gIH07XG59XG5cbi8qKlxuICogRGV0ZXJtaW5lcyB0aGUgcG9zaXRpb24gb2YgYW4gZWxlbWVudCByZWxhdGl2ZSB0byBhIHRyaWdnZXIgZWxlbWVudCBieSBldmFsdWF0aW5nXG4gKiB0aGUgb3B0aW1hbCBwb3NpdGlvbiBiYXNlZCBvbiB0aGUgYXZhaWxhYmxlIHNwYWNlLlxuICpcbiAqIEBwYXJhbSBlbGVtZW50IFRoZSBlbGVtZW50IG9mIHdoaWNoIHRvIGNhbGN1bGF0ZSB0aGUgcG9zaXRpb24uXG4gKiBAcGFyYW0gdHJpZ2dlciBUaGUgZWxlbWVudCByZWxhdGl2ZSB0byB3aGljaCB0byBjYWxjdWxhdGUgdGhlIHBvc2l0aW9uLlxuICogQHBhcmFtIGNvbnRhaW5lciBUaGUgZWxlbWVudCB3aGljaCBoYXMgdGhlIHBvc2l0aW9uOmZpeGVkIGFwcGxpZWQuXG4gKiBAcGFyYW0gcHJvcGVydGllcyBQcm9wZXJ0aWVzIHRvIHRha2UgaW50byBhY2NvdW50IGluIGNhbGN1bGF0aW9ucyAob3B0aW9uYWwpLlxuICogQHBhcmFtIHByb3BlcnRpZXMudmVydGljYWxPZmZzZXQgVGhlIGRpc3RhbmNlIHRvIGJlIGFkZGVkIGJldHdlZW4gdGhlIGVsZW1lbnQgYW5kIHRoZSB0cmlnZ2VyIChvcHRpb25hbCkuXG4gKiBAcGFyYW0gcHJvcGVydGllcy5ob3Jpem9udGFsT2Zmc2V0IFRoZSBob3Jpem9udGFsIG9mZnNldCB0byBiZSBhcHBsaWVkIHRvIHRoZSBlbGVtZW50IChvcHRpb25hbCkuXG4gKiBAcGFyYW0gcHJvcGVydGllcy5yZXNwb25zaXZlSGVpZ2h0IFdoZXRoZXIgdGhlIGVsZW1lbnQgY2FsY3VsYXRlcyBpdHMgaGVpZ2h0IGJhc2VkIG9uIGl0cyBjb250ZW50IChvcHRpb25hbCkuXG4gKiBAcmV0dXJucyBSZXR1cm5zIGFuIG9iamVjdCBjb250YWluaW5nIHRoZSBsZWZ0IHBvc2l0aW9uLCB0aGUgdG9wIHBvc2l0aW9uLCB0aGUgbWF4aW11bSBoZWlnaHRcbiAqIG9mIHRoZSBlbGVtZW50IGFuZCB0aGUgY3VycmVudCBhbGlnbm1lbnQgb2JqZWN0LlxuICovXG5leHBvcnQgZnVuY3Rpb24gZ2V0RWxlbWVudFBvc2l0aW9uSG9yaXpvbnRhbChcbiAgZWxlbWVudDogSFRNTEVsZW1lbnQsXG4gIHRyaWdnZXI6IEhUTUxFbGVtZW50LFxuICBjb250YWluZXI6IEhUTUxFbGVtZW50LFxuICBwcm9wZXJ0aWVzPzoge1xuICAgIHZlcnRpY2FsT2Zmc2V0PzogbnVtYmVyO1xuICAgIGhvcml6b250YWxPZmZzZXQ/OiBudW1iZXI7XG4gICAgcmVzcG9uc2l2ZUhlaWdodD86IGJvb2xlYW47XG4gICAgY29udGVudFNlbGVjdG9yPzogc3RyaW5nO1xuICB9LFxuKTogU2JiRWxlbWVudFBvc2l0aW9uSW5mb3Mge1xuICBjb25zdCBtYXhIZWlnaHRPZmZzZXQgPSAxNjtcblxuICBjb25zdCB2ZXJ0aWNhbE9mZnNldCA9IHByb3BlcnRpZXM/LnZlcnRpY2FsT2Zmc2V0IHx8IDA7XG4gIGNvbnN0IGhvcml6b250YWxPZmZzZXQgPSBwcm9wZXJ0aWVzPy5ob3Jpem9udGFsT2Zmc2V0IHx8IDA7XG5cbiAgY29uc3QgdHJpZ2dlclJlYyA9IHRyaWdnZXIuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7XG4gIGNvbnN0IGVsZW1lbnRSZWMgPSBnZXRFbGVtZW50UmVjdGFuZ2xlKGVsZW1lbnQpO1xuICBjb25zdCB0cmlnZ2VyUGFyZW50UmVjID0gdHJpZ2dlclxuICAgIC5wYXJlbnRFbGVtZW50IS5zaGFkb3dSb290IS5xdWVyeVNlbGVjdG9yKFxuICAgICAgcHJvcGVydGllcz8uY29udGVudFNlbGVjdG9yID8/IGAuJHtlbGVtZW50LmNsYXNzTmFtZX1gLFxuICAgICkhXG4gICAgLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO1xuICBjb25zdCBjb250YWluZXJSZWN0ID0gY29udGFpbmVyLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO1xuXG4gIGNvbnN0IGF2YWlsYWJsZVNwYWNlUmlnaHQgPSBkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuY2xpZW50V2lkdGggLSB0cmlnZ2VyUGFyZW50UmVjLnJpZ2h0O1xuICBjb25zdCBhdmFpbGFibGVTcGFjZUJlbG93ID1cbiAgICBkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuY2xpZW50SGVpZ2h0IC0gKHRyaWdnZXJSZWMudG9wIC0gdmVydGljYWxPZmZzZXQpO1xuICBjb25zdCBhdmFpbGFibGVWZXJ0aWNhbFNwYWNlID0gZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LmNsaWVudEhlaWdodDtcbiAgY29uc3QgZWxlbWVudE1heEhlaWdodCA9IGAke2F2YWlsYWJsZVZlcnRpY2FsU3BhY2UgLSBtYXhIZWlnaHRPZmZzZXQgKiAyfXB4YDtcbiAgY29uc3QgYWxpZ25tZW50OiBTYmJBbGlnbm1lbnQgPSB7IGhvcml6b250YWw6ICdlbmQnLCB2ZXJ0aWNhbDogJ2Fib3ZlJyB9O1xuICBjb25zdCBlbGVtZW50WE92ZXJmbG93ID0gZWxlbWVudFJlYy5vZmZzZXRXaWR0aCArIGhvcml6b250YWxPZmZzZXQ7XG5cbiAgLy8gRGVmYXVsdCBlbGVtZW50IGFsaWdubWVudCBpcyBcImVuZC9hYm92ZVwiXG4gIGxldCBlbGVtZW50WFBvc2l0aW9uID0gdHJpZ2dlclBhcmVudFJlYy5yaWdodDtcbiAgbGV0IGVsZW1lbnRZUG9zaXRpb24gPSB0cmlnZ2VyUmVjLnRvcCArIHZlcnRpY2FsT2Zmc2V0O1xuXG4gIC8vIENoZWNrIGlmIGhvcml6b250YWwgYWxpZ25tZW50IG5lZWRzIHRvIGJlIGNoYW5nZWQgdG8gXCJzdGFydFwiXG4gIGlmIChhdmFpbGFibGVTcGFjZVJpZ2h0IDwgZWxlbWVudFhPdmVyZmxvdyAmJiB0cmlnZ2VyUmVjLmxlZnQgPiBlbGVtZW50WE92ZXJmbG93KSB7XG4gICAgZWxlbWVudFhQb3NpdGlvbiA9IGVsZW1lbnRYUG9zaXRpb24gLSB0cmlnZ2VyUGFyZW50UmVjLndpZHRoIC0gZWxlbWVudFJlYy5vZmZzZXRXaWR0aDtcbiAgICBhbGlnbm1lbnQuaG9yaXpvbnRhbCA9ICdzdGFydCc7XG4gIH1cblxuICAvLyBBZGQgaG9yaXpvbnRhbCBvZmZzZXRcbiAgaWYgKGhvcml6b250YWxPZmZzZXQgJiYgYWxpZ25tZW50Lmhvcml6b250YWwgIT09ICdjZW50ZXInKSB7XG4gICAgZWxlbWVudFhQb3NpdGlvbiArPSBob3Jpem9udGFsT2Zmc2V0ICogKGFsaWdubWVudC5ob3Jpem9udGFsID09PSAnc3RhcnQnID8gLTEgOiAxKTtcbiAgfVxuXG4gIC8vIENoZWNrIGlmIHZlcnRpY2FsIGFsaWdubWVudCBuZWVkcyB0byBiZSBjaGFuZ2VkIHRvIFwiYWJvdmVcIjpcbiAgaWYgKGF2YWlsYWJsZVNwYWNlQmVsb3cgPCBlbGVtZW50UmVjLnNjcm9sbEhlaWdodCkge1xuICAgIGVsZW1lbnRZUG9zaXRpb24gPSBhdmFpbGFibGVWZXJ0aWNhbFNwYWNlIC0gZWxlbWVudFJlYy5jbGllbnRIZWlnaHQgLSBtYXhIZWlnaHRPZmZzZXQ7XG4gIH1cblxuICAvLyBXaGVuIHpvb21pbmcgaW4gU2FmYXJpIHRoZSBjb250YWluZXIgcmVjdGFuZ2xlIGNvbnRhaW5zIG5lZ2F0aXZlIHZhbHVlcyBmb3IgdGhlIHBvc2l0aW9uLFxuICAvLyBhbmQgd2UgbmVlZCB0byByZS1hZGQgdGhlbSB0byB0aGUgY2FsY3VsYXRlZCBjb29yZGluYXRlcy5cbiAgaWYgKGNvbnRhaW5lclJlY3QubGVmdCA8IDApIHtcbiAgICBlbGVtZW50WFBvc2l0aW9uIC09IGNvbnRhaW5lclJlY3QubGVmdDtcbiAgfVxuXG4gIC8vIE5vcm1hbGx5IHRoZSBjb250YWluZXJSZWN0J3MgdG9wIHZhbHVlIHdvdWxkIGJlIHplcm8sIGhvd2V2ZXIgd2hlbiB0aGUgb3ZlcmxheSBpcyBhdHRhY2hlZCB0byBhbiBpbnB1dFxuICAvLyAoZS5nLiBpbiBhbiBhdXRvY29tcGxldGUpLCBtb2JpbGUgYnJvd3NlcnMgd2lsbCBzaGlmdCBldmVyeXRoaW5nIGluIG9yZGVyIHRvIHB1dCB0aGUgaW5wdXQgaW4gdGhlIG1pZGRsZVxuICAvLyBvZiB0aGUgc2NyZWVuIGFuZCB0byBtYWtlIHNwYWNlIGZvciB0aGUgdmlydHVhbCBrZXlib2FyZC4gV2UgbmVlZCB0byBhY2NvdW50IGZvciB0aGlzIG9mZnNldCxcbiAgLy8gb3RoZXJ3aXNlIG91ciBwb3NpdGlvbmluZyB3aWxsIGJlIHRocm93biBvZmYuXG4gIC8vIEFkZGl0aW9uYWxseSwgd2hlbiB6b29taW5nIGluIFNhZmFyaSB0aGlzIGZpeGVzIHRoZSB2ZXJ0aWNhbCBwb3NpdGlvbi5cbiAgaWYgKGNvbnRhaW5lclJlY3QudG9wIDwgMCkge1xuICAgIGVsZW1lbnRZUG9zaXRpb24gLT0gY29udGFpbmVyUmVjdC50b3A7XG4gIH1cblxuICByZXR1cm4ge1xuICAgIHRvcDogZWxlbWVudFlQb3NpdGlvbixcbiAgICBsZWZ0OiBlbGVtZW50WFBvc2l0aW9uLFxuICAgIG1heEhlaWdodDogZWxlbWVudE1heEhlaWdodCxcbiAgICBhbGlnbm1lbnQ6IGFsaWdubWVudCxcbiAgfTtcbn1cbiJdLCJtYXBwaW5ncyI6Ijs7OztBQW9CQSxTQUFnQixvQkFBb0IsSUFBZTtDQUNqRCxNQUFNLGVBQWUsT0FBTyxpQkFBaUIsR0FBRyxFQUM5QyxpQkFBaUIsYUFBYSxTQUM5QixtQkFBbUIsU0FBUyxhQUFhLFdBQVcsR0FBRyxDQUFDLFVBQVU7QUFHcEUsS0FBSSxtQkFBbUIsVUFBVSxxQkFBcUIsSUFDcEQsUUFBTztFQUNMLGNBQWMsR0FBRztFQUNqQixjQUFjLEdBQUc7RUFDakIsY0FBYyxHQUFHO0VBQ2pCLGFBQWEsR0FBRztFQUNoQixhQUFhLEdBQUc7RUFDaEIsYUFBYSxHQUFHO0VBQ2pCO0FBS0gsSUFBRyxNQUFNLFdBQVc7QUFDcEIsSUFBRyxNQUFNLGFBQWE7QUFDdEIsSUFBRyxNQUFNLFVBQVU7Q0FFbkIsTUFBTSxlQUFlLEdBQUcsY0FDdEIsZUFBZSxHQUFHLGNBQ2xCLGVBQWUsR0FBRyxjQUNsQixjQUFjLEdBQUcsYUFDakIsY0FBYyxHQUFHLGFBQ2pCLGNBQWMsR0FBRztBQUduQixJQUFHLE1BQU0sVUFBVTtBQUNuQixJQUFHLE1BQU0sV0FBVztBQUNwQixJQUFH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
|
|
@@ -85,7 +85,7 @@ export declare class SbbPopoverElement extends SbbPopoverBaseElement {
|
|
|
85
85
|
private _closeDelay?;
|
|
86
86
|
/** This will be forwarded as aria-label to the close button element. */
|
|
87
87
|
accessor accessibilityCloseLabel: string;
|
|
88
|
-
private _hoverTrigger;
|
|
88
|
+
private accessor _hoverTrigger;
|
|
89
89
|
private _openTimeout?;
|
|
90
90
|
private _language;
|
|
91
91
|
private _overlayAbortController;
|