@genesislcap/foundation-ui 14.262.2 → 14.263.1-alpha-7b4a655.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -880,37 +880,6 @@
880
880
  }
881
881
  ]
882
882
  },
883
- {
884
- "kind": "javascript-module",
885
- "path": "src/_config/index.ts",
886
- "declarations": [],
887
- "exports": [
888
- {
889
- "kind": "js",
890
- "name": "*",
891
- "declaration": {
892
- "name": "*",
893
- "package": "./styles"
894
- }
895
- },
896
- {
897
- "kind": "js",
898
- "name": "*",
899
- "declaration": {
900
- "name": "*",
901
- "package": "./tokens"
902
- }
903
- },
904
- {
905
- "kind": "js",
906
- "name": "*",
907
- "declaration": {
908
- "name": "*",
909
- "package": "./values"
910
- }
911
- }
912
- ]
913
- },
914
883
  {
915
884
  "kind": "javascript-module",
916
885
  "path": "src/accordion-item/accordion-item.styles.ts",
@@ -1305,6 +1274,37 @@
1305
1274
  }
1306
1275
  ]
1307
1276
  },
1277
+ {
1278
+ "kind": "javascript-module",
1279
+ "path": "src/_config/index.ts",
1280
+ "declarations": [],
1281
+ "exports": [
1282
+ {
1283
+ "kind": "js",
1284
+ "name": "*",
1285
+ "declaration": {
1286
+ "name": "*",
1287
+ "package": "./styles"
1288
+ }
1289
+ },
1290
+ {
1291
+ "kind": "js",
1292
+ "name": "*",
1293
+ "declaration": {
1294
+ "name": "*",
1295
+ "package": "./tokens"
1296
+ }
1297
+ },
1298
+ {
1299
+ "kind": "js",
1300
+ "name": "*",
1301
+ "declaration": {
1302
+ "name": "*",
1303
+ "package": "./values"
1304
+ }
1305
+ }
1306
+ ]
1307
+ },
1308
1308
  {
1309
1309
  "kind": "javascript-module",
1310
1310
  "path": "src/actions-menu/actions-menu.styles.ts",
@@ -1864,188 +1864,6 @@
1864
1864
  }
1865
1865
  ]
1866
1866
  },
1867
- {
1868
- "kind": "javascript-module",
1869
- "path": "src/accordion/accordion.styles.ts",
1870
- "declarations": [
1871
- {
1872
- "kind": "function",
1873
- "name": "foundationAccordionStyles",
1874
- "return": {
1875
- "type": {
1876
- "text": "ElementStyles"
1877
- }
1878
- },
1879
- "parameters": [
1880
- {
1881
- "name": "context",
1882
- "type": {
1883
- "text": "ElementDefinitionContext"
1884
- }
1885
- },
1886
- {
1887
- "name": "definition",
1888
- "type": {
1889
- "text": "FoundationElementDefinition"
1890
- }
1891
- }
1892
- ]
1893
- }
1894
- ],
1895
- "exports": [
1896
- {
1897
- "kind": "js",
1898
- "name": "foundationAccordionStyles",
1899
- "declaration": {
1900
- "name": "foundationAccordionStyles",
1901
- "module": "src/accordion/accordion.styles.ts"
1902
- }
1903
- }
1904
- ]
1905
- },
1906
- {
1907
- "kind": "javascript-module",
1908
- "path": "src/accordion/accordion.template.ts",
1909
- "declarations": [
1910
- {
1911
- "kind": "function",
1912
- "name": "foundationAccordionTemplate",
1913
- "return": {
1914
- "type": {
1915
- "text": "ViewTemplate<Accordion>"
1916
- }
1917
- },
1918
- "parameters": [
1919
- {
1920
- "name": "context",
1921
- "type": {
1922
- "text": "ElementDefinitionContext"
1923
- }
1924
- },
1925
- {
1926
- "name": "definition",
1927
- "type": {
1928
- "text": "FoundationElementDefinition"
1929
- }
1930
- }
1931
- ]
1932
- }
1933
- ],
1934
- "exports": [
1935
- {
1936
- "kind": "js",
1937
- "name": "foundationAccordionTemplate",
1938
- "declaration": {
1939
- "name": "foundationAccordionTemplate",
1940
- "module": "src/accordion/accordion.template.ts"
1941
- }
1942
- }
1943
- ]
1944
- },
1945
- {
1946
- "kind": "javascript-module",
1947
- "path": "src/accordion/accordion.ts",
1948
- "declarations": [
1949
- {
1950
- "kind": "class",
1951
- "description": "",
1952
- "name": "Accordion",
1953
- "superclass": {
1954
- "name": "FASTAccordion",
1955
- "package": "@microsoft/fast-foundation"
1956
- },
1957
- "tagName": "%%prefix%%-accordion",
1958
- "customElement": true
1959
- },
1960
- {
1961
- "kind": "variable",
1962
- "name": "foundationAccordionShadowOptions",
1963
- "type": {
1964
- "text": "ShadowRootInit"
1965
- },
1966
- "default": "{\n delegatesFocus: true,\n mode: 'open',\n}"
1967
- },
1968
- {
1969
- "kind": "variable",
1970
- "name": "defaultAccordionConfig",
1971
- "type": {
1972
- "text": "object"
1973
- },
1974
- "default": "{}"
1975
- },
1976
- {
1977
- "kind": "variable",
1978
- "name": "foundationAccordion",
1979
- "description": "The Foundation Accordion",
1980
- "privacy": "public"
1981
- }
1982
- ],
1983
- "exports": [
1984
- {
1985
- "kind": "js",
1986
- "name": "Accordion",
1987
- "declaration": {
1988
- "name": "Accordion",
1989
- "module": "src/accordion/accordion.ts"
1990
- }
1991
- },
1992
- {
1993
- "kind": "js",
1994
- "name": "foundationAccordionShadowOptions",
1995
- "declaration": {
1996
- "name": "foundationAccordionShadowOptions",
1997
- "module": "src/accordion/accordion.ts"
1998
- }
1999
- },
2000
- {
2001
- "kind": "js",
2002
- "name": "defaultAccordionConfig",
2003
- "declaration": {
2004
- "name": "defaultAccordionConfig",
2005
- "module": "src/accordion/accordion.ts"
2006
- }
2007
- },
2008
- {
2009
- "kind": "js",
2010
- "name": "foundationAccordion",
2011
- "declaration": {
2012
- "name": "foundationAccordion",
2013
- "module": "src/accordion/accordion.ts"
2014
- }
2015
- }
2016
- ]
2017
- },
2018
- {
2019
- "kind": "javascript-module",
2020
- "path": "src/accordion/index.ts",
2021
- "declarations": [],
2022
- "exports": [
2023
- {
2024
- "kind": "js",
2025
- "name": "*",
2026
- "declaration": {
2027
- "name": "*",
2028
- "package": "./accordion.template"
2029
- }
2030
- },
2031
- {
2032
- "kind": "js",
2033
- "name": "*",
2034
- "declaration": {
2035
- "name": "*",
2036
- "package": "./accordion.styles"
2037
- }
2038
- },
2039
- {
2040
- "kind": "js",
2041
- "name": "*",
2042
- "declaration": {
2043
- "name": "*",
2044
- "package": "./accordion"
2045
- }
2046
- }
2047
- ]
2048
- },
2049
1867
  {
2050
1868
  "kind": "javascript-module",
2051
1869
  "path": "src/anchor/anchor.styles.ts",
@@ -4156,6 +3974,188 @@
4156
3974
  }
4157
3975
  ]
4158
3976
  },
3977
+ {
3978
+ "kind": "javascript-module",
3979
+ "path": "src/accordion/accordion.styles.ts",
3980
+ "declarations": [
3981
+ {
3982
+ "kind": "function",
3983
+ "name": "foundationAccordionStyles",
3984
+ "return": {
3985
+ "type": {
3986
+ "text": "ElementStyles"
3987
+ }
3988
+ },
3989
+ "parameters": [
3990
+ {
3991
+ "name": "context",
3992
+ "type": {
3993
+ "text": "ElementDefinitionContext"
3994
+ }
3995
+ },
3996
+ {
3997
+ "name": "definition",
3998
+ "type": {
3999
+ "text": "FoundationElementDefinition"
4000
+ }
4001
+ }
4002
+ ]
4003
+ }
4004
+ ],
4005
+ "exports": [
4006
+ {
4007
+ "kind": "js",
4008
+ "name": "foundationAccordionStyles",
4009
+ "declaration": {
4010
+ "name": "foundationAccordionStyles",
4011
+ "module": "src/accordion/accordion.styles.ts"
4012
+ }
4013
+ }
4014
+ ]
4015
+ },
4016
+ {
4017
+ "kind": "javascript-module",
4018
+ "path": "src/accordion/accordion.template.ts",
4019
+ "declarations": [
4020
+ {
4021
+ "kind": "function",
4022
+ "name": "foundationAccordionTemplate",
4023
+ "return": {
4024
+ "type": {
4025
+ "text": "ViewTemplate<Accordion>"
4026
+ }
4027
+ },
4028
+ "parameters": [
4029
+ {
4030
+ "name": "context",
4031
+ "type": {
4032
+ "text": "ElementDefinitionContext"
4033
+ }
4034
+ },
4035
+ {
4036
+ "name": "definition",
4037
+ "type": {
4038
+ "text": "FoundationElementDefinition"
4039
+ }
4040
+ }
4041
+ ]
4042
+ }
4043
+ ],
4044
+ "exports": [
4045
+ {
4046
+ "kind": "js",
4047
+ "name": "foundationAccordionTemplate",
4048
+ "declaration": {
4049
+ "name": "foundationAccordionTemplate",
4050
+ "module": "src/accordion/accordion.template.ts"
4051
+ }
4052
+ }
4053
+ ]
4054
+ },
4055
+ {
4056
+ "kind": "javascript-module",
4057
+ "path": "src/accordion/accordion.ts",
4058
+ "declarations": [
4059
+ {
4060
+ "kind": "class",
4061
+ "description": "",
4062
+ "name": "Accordion",
4063
+ "superclass": {
4064
+ "name": "FASTAccordion",
4065
+ "package": "@microsoft/fast-foundation"
4066
+ },
4067
+ "tagName": "%%prefix%%-accordion",
4068
+ "customElement": true
4069
+ },
4070
+ {
4071
+ "kind": "variable",
4072
+ "name": "foundationAccordionShadowOptions",
4073
+ "type": {
4074
+ "text": "ShadowRootInit"
4075
+ },
4076
+ "default": "{\n delegatesFocus: true,\n mode: 'open',\n}"
4077
+ },
4078
+ {
4079
+ "kind": "variable",
4080
+ "name": "defaultAccordionConfig",
4081
+ "type": {
4082
+ "text": "object"
4083
+ },
4084
+ "default": "{}"
4085
+ },
4086
+ {
4087
+ "kind": "variable",
4088
+ "name": "foundationAccordion",
4089
+ "description": "The Foundation Accordion",
4090
+ "privacy": "public"
4091
+ }
4092
+ ],
4093
+ "exports": [
4094
+ {
4095
+ "kind": "js",
4096
+ "name": "Accordion",
4097
+ "declaration": {
4098
+ "name": "Accordion",
4099
+ "module": "src/accordion/accordion.ts"
4100
+ }
4101
+ },
4102
+ {
4103
+ "kind": "js",
4104
+ "name": "foundationAccordionShadowOptions",
4105
+ "declaration": {
4106
+ "name": "foundationAccordionShadowOptions",
4107
+ "module": "src/accordion/accordion.ts"
4108
+ }
4109
+ },
4110
+ {
4111
+ "kind": "js",
4112
+ "name": "defaultAccordionConfig",
4113
+ "declaration": {
4114
+ "name": "defaultAccordionConfig",
4115
+ "module": "src/accordion/accordion.ts"
4116
+ }
4117
+ },
4118
+ {
4119
+ "kind": "js",
4120
+ "name": "foundationAccordion",
4121
+ "declaration": {
4122
+ "name": "foundationAccordion",
4123
+ "module": "src/accordion/accordion.ts"
4124
+ }
4125
+ }
4126
+ ]
4127
+ },
4128
+ {
4129
+ "kind": "javascript-module",
4130
+ "path": "src/accordion/index.ts",
4131
+ "declarations": [],
4132
+ "exports": [
4133
+ {
4134
+ "kind": "js",
4135
+ "name": "*",
4136
+ "declaration": {
4137
+ "name": "*",
4138
+ "package": "./accordion.template"
4139
+ }
4140
+ },
4141
+ {
4142
+ "kind": "js",
4143
+ "name": "*",
4144
+ "declaration": {
4145
+ "name": "*",
4146
+ "package": "./accordion.styles"
4147
+ }
4148
+ },
4149
+ {
4150
+ "kind": "js",
4151
+ "name": "*",
4152
+ "declaration": {
4153
+ "name": "*",
4154
+ "package": "./accordion"
4155
+ }
4156
+ }
4157
+ ]
4158
+ },
4159
4159
  {
4160
4160
  "kind": "javascript-module",
4161
4161
  "path": "src/avatar/avatar.styles.ts",
@@ -25801,7 +25801,7 @@
25801
25801
  {
25802
25802
  "kind": "variable",
25803
25803
  "name": "multiselectStyles",
25804
- "default": "css`\n :host {\n --scrollbar-width: 12px;\n --scrollbar-thumb-width: 8px;\n }\n\n .root {\n position: relative;\n width: inherit;\n min-width: 250px;\n }\n\n .control {\n cursor: pointer;\n position: relative;\n display: flex;\n align-items: center;\n width: 100%;\n border-radius: calc(var(--control-corner-radius) * 1px);\n }\n\n #display-field {\n width: 100%;\n cursor: pointer;\n color: rgb(241 241 241);\n min-height: 40px;\n padding: 0 calc(var(--design-unit) * 2.25px);\n border-width: 0;\n background-color: var(--neutral-fill-input-rest);\n border-radius: calc(var(--control-corner-radius) * 1px);\n }\n\n #display-field[disabled] {\n cursor: not-allowed;\n opacity: 30%;\n }\n\n #display-field:focus {\n outline: 1px solid var(--accent-fill-rest);\n background: var(--neutral-fill-input-rest);\n border-style: none;\n box-shadow: none;\n }\n\n #display-field:hover:not(:focus):not([disabled]) {\n outline: 1px solid rgb(231 232 232);\n }\n\n button {\n pointer-events: none;\n }\n\n .indicator {\n position: absolute;\n left: calc(100% - 26px);\n padding: 0;\n cursor: pointer;\n }\n\n #arrow-icon {\n width: 16px;\n fill: white;\n transform: rotate(0deg);\n transition: transform 0.2s linear 0s;\n }\n\n #arrow-icon.flipped {\n transform: rotate(180deg);\n }\n\n .disabled-svg {\n pointer-events: none;\n opacity: 30%;\n }\n\n .options {\n display: flex;\n flex-direction: column;\n position: absolute;\n height: max-content;\n overflow-y: hidden;\n margin-top: calc(var(--design-unit) * 1px);\n border: calc(var(--stroke-width) * 1px) solid var(--neutral-layer-2);\n border-radius: 4px;\n background: var(--neutral-fill-input-rest);\n width: 100%;\n max-height: 0;\n visibility: hidden;\n transition:\n max-height 0.4s ease 0s,\n visibility 0.4s ease 0s;\n z-index: 999;\n }\n\n .position-above {\n bottom: 100%;\n }\n\n ::-webkit-scrollbar {\n width: var(--scrollbar-width);\n }\n\n ::-webkit-scrollbar-track {\n background: var(--neutral-layer-4);\n }\n\n ::-webkit-scrollbar-thumb {\n width: var(--scrollbar-thumb-width);\n border-radius: 10px;\n box-shadow: inset 0 0 6px rgba(0 0 0 / 30%);\n background-color: var(--neutral-layer-2);\n border: 3px solid var(--neutral-layer-4);\n }\n\n ::-webkit-scrollbar-corner {\n background: var(--neutral-layer-4);\n }\n\n .checkbox-container {\n display: flex;\n flex-direction: column;\n overflow-y: scroll;\n list-style: none;\n }\n\n .checkbox-container zero-checkbox {\n min-width: fit-content;\n }\n\n .checkbox-container zero-checkbox[disabled],\n .checkbox-container foundation-checkbox[disabled] {\n cursor: not-allowed;\n }\n\n .visible {\n visibility: visible;\n max-height: ${maxheight.toString()}px;\n }\n\n ::slotted(foundation-checkbox),\n foundation-checkbox {\n border-bottom: 1px solid var(--neutral-layer-4);\n padding: 5px 0 5px 5px;\n margin: 0;\n }\n\n ::slotted(foundation-checkbox:hover),\n foundation-checkbox:hover {\n background-color: var(--neutral-layer-3);\n cursor: pointer;\n }\n\n ::slotted(foundation-checkbox)::part(label),\n foundation-checkbox::part(label) {\n overflow-x: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n }\n\n .label {\n display: block;\n cursor: pointer;\n font-size: var(--type-ramp-base-font-size);\n line-height: var(--type-ramp-base-line-height);\n font-style: normal;\n margin: calc(var(--design-unit) * 2px) 0;\n }\n\n .label-hidden {\n display: none;\n }\n\n ol,\n li {\n margin: 0;\n padding: 0;\n }\n\n .checkbox {\n width: 100%;\n }\n\n .select-all {\n width: 100%;\n }\n\n .display-value {\n position: absolute;\n right: 40px;\n color: var(--neutral-foreground-rest);\n font-size: var(--type-ramp-base-font-size);\n line-height: var(--type-ramp-base-line-height);\n font-family: var(--body-font);\n }\n`"
25804
+ "default": "css`\n :host {\n --scrollbar-width: 12px;\n --scrollbar-thumb-width: 8px;\n }\n\n .root {\n position: relative;\n width: inherit;\n min-width: 250px;\n }\n\n .control {\n cursor: pointer;\n position: relative;\n display: flex;\n align-items: center;\n width: 100%;\n border-radius: calc(var(--control-corner-radius) * 1px);\n }\n\n #display-field {\n width: 100%;\n cursor: pointer;\n color: rgb(241 241 241);\n min-height: 40px;\n padding: 0 calc(var(--design-unit) * 2.25px);\n border-width: 0;\n background-color: var(--neutral-fill-input-rest);\n border-radius: calc(var(--control-corner-radius) * 1px);\n }\n\n #display-field[disabled] {\n cursor: not-allowed;\n opacity: 30%;\n }\n\n #display-field:focus {\n outline: 1px solid var(--accent-fill-rest);\n background: var(--neutral-fill-input-rest);\n border-style: none;\n box-shadow: none;\n }\n\n #display-field:hover:not(:focus):not([disabled]) {\n outline: 1px solid rgb(231 232 232);\n }\n\n button {\n pointer-events: none;\n }\n\n .indicator {\n position: absolute;\n left: calc(100% - 26px);\n padding: 0;\n cursor: pointer;\n }\n\n #arrow-icon {\n width: 16px;\n fill: white;\n transform: rotate(0deg);\n transition: transform 0.2s linear 0s;\n }\n\n #arrow-icon.flipped {\n transform: rotate(180deg);\n }\n\n .disabled-svg {\n pointer-events: none;\n opacity: 30%;\n }\n\n .options {\n display: flex;\n flex-direction: column;\n position: absolute;\n height: max-content;\n overflow-y: hidden;\n margin-top: calc(var(--design-unit) * 1px);\n border: calc(var(--stroke-width) * 1px) solid var(--neutral-layer-2);\n border-radius: 4px;\n background: var(--neutral-fill-input-rest);\n width: 100%;\n max-height: 0;\n visibility: hidden;\n transition:\n max-height 0.4s ease 0s,\n visibility 0.4s ease 0s;\n z-index: 999;\n }\n\n .position-above {\n bottom: 100%;\n }\n\n ::-webkit-scrollbar {\n width: var(--scrollbar-width);\n }\n\n ::-webkit-scrollbar-track {\n background: var(--neutral-layer-4);\n }\n\n ::-webkit-scrollbar-thumb {\n width: var(--scrollbar-thumb-width);\n border-radius: 10px;\n box-shadow: inset 0 0 6px rgba(0 0 0 / 30%);\n background-color: var(--neutral-layer-2);\n border: 3px solid var(--neutral-layer-4);\n }\n\n ::-webkit-scrollbar-corner {\n background: var(--neutral-layer-4);\n }\n\n .checkbox-container {\n display: flex;\n flex-direction: column;\n overflow-y: scroll;\n list-style: none;\n }\n\n .checkbox-container zero-checkbox {\n min-width: fit-content;\n }\n\n .checkbox-container zero-checkbox[disabled],\n .checkbox-container foundation-checkbox[disabled] {\n cursor: not-allowed;\n }\n\n .visible {\n visibility: visible;\n max-height: ${maxheight.toString()}px;\n }\n\n ::slotted(foundation-checkbox),\n foundation-checkbox {\n border-bottom: 1px solid var(--neutral-layer-4);\n padding: 5px 0 5px 5px;\n margin: 0;\n }\n\n ::slotted(foundation-checkbox:hover),\n foundation-checkbox:hover {\n background-color: var(--neutral-layer-3);\n cursor: pointer;\n }\n\n ::slotted(foundation-checkbox)::part(label),\n foundation-checkbox::part(label) {\n overflow-x: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n }\n\n .label {\n display: block;\n cursor: pointer;\n font-size: var(--type-ramp-base-font-size);\n line-height: var(--type-ramp-base-line-height);\n font-style: normal;\n margin: calc(var(--design-unit) * 2px) 0;\n }\n\n .label-hidden {\n display: none;\n }\n\n ol,\n li {\n margin: 0;\n padding: 0;\n }\n\n .checkbox {\n width: 100%;\n }\n\n .select-all {\n width: 100%;\n }\n\n .display-value {\n position: absolute;\n right: 40px;\n color: var(--neutral-foreground-rest);\n font-size: var(--type-ramp-base-font-size);\n line-height: var(--type-ramp-base-line-height);\n font-family: var(--body-font);\n }\n\n .options-header-item-hidden {\n display: none;\n }\n`"
25805
25805
  }
25806
25806
  ],
25807
25807
  "exports": [
@@ -26097,6 +26097,13 @@
26097
26097
  "text": "(allSelected: boolean) => void"
26098
26098
  }
26099
26099
  },
26100
+ {
26101
+ "kind": "field",
26102
+ "name": "itemRenderer",
26103
+ "type": {
26104
+ "text": "(\n option: MultiselectOption,\n parent: Multiselect,\n prefix: string,\n ) => any"
26105
+ }
26106
+ },
26100
26107
  {
26101
26108
  "kind": "field",
26102
26109
  "name": "initialisedOptions",
@@ -26120,6 +26127,30 @@
26120
26127
  "text": "HTMLElement"
26121
26128
  }
26122
26129
  },
26130
+ {
26131
+ "kind": "method",
26132
+ "name": "defaultItemRenderer",
26133
+ "parameters": [
26134
+ {
26135
+ "name": "option",
26136
+ "type": {
26137
+ "text": "MultiselectOption"
26138
+ }
26139
+ },
26140
+ {
26141
+ "name": "parent",
26142
+ "type": {
26143
+ "text": "Multiselect"
26144
+ }
26145
+ },
26146
+ {
26147
+ "name": "prefix",
26148
+ "type": {
26149
+ "text": "string"
26150
+ }
26151
+ }
26152
+ ]
26153
+ },
26123
26154
  {
26124
26155
  "kind": "method",
26125
26156
  "name": "toggle"
@@ -26140,7 +26171,19 @@
26140
26171
  },
26141
26172
  {
26142
26173
  "kind": "method",
26143
- "name": "optionGetter",
26174
+ "name": "optionValueGetter",
26175
+ "parameters": [
26176
+ {
26177
+ "name": "option",
26178
+ "type": {
26179
+ "text": "MultiselectOption"
26180
+ }
26181
+ }
26182
+ ]
26183
+ },
26184
+ {
26185
+ "kind": "method",
26186
+ "name": "optionLabelGetter",
26144
26187
  "parameters": [
26145
26188
  {
26146
26189
  "name": "option",
@@ -26311,6 +26354,13 @@
26311
26354
  }
26312
26355
  ]
26313
26356
  },
26357
+ {
26358
+ "kind": "field",
26359
+ "name": "optionsHeaderSlottedNodes",
26360
+ "type": {
26361
+ "text": "Node[]"
26362
+ }
26363
+ },
26314
26364
  {
26315
26365
  "kind": "field",
26316
26366
  "name": "_presentation",
@@ -3,8 +3,8 @@ export declare enum Position {
3
3
  ABOVE = "above"
4
4
  }
5
5
  export type MultiselectOption = {
6
- value: string;
7
- label: string;
6
+ value: string | string[];
7
+ label: string | string[];
8
8
  disabled?: boolean;
9
9
  labelStyle?: string;
10
10
  optionLabelText?: string;
@@ -1 +1 @@
1
- {"version":3,"file":"multiselect-consts.d.ts","sourceRoot":"","sources":["../../../src/multiselect/multiselect-consts.ts"],"names":[],"mappings":"AAAA,oBAAY,QAAQ;IAClB,KAAK,UAAU;IACf,KAAK,UAAU;CAChB;AAED,MAAM,MAAM,iBAAiB,GACzB;IACE,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B,GACD,MAAM,CAAC"}
1
+ {"version":3,"file":"multiselect-consts.d.ts","sourceRoot":"","sources":["../../../src/multiselect/multiselect-consts.ts"],"names":[],"mappings":"AAAA,oBAAY,QAAQ;IAClB,KAAK,UAAU;IACf,KAAK,UAAU;CAChB;AAED,MAAM,MAAM,iBAAiB,GACzB;IACE,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;IACzB,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;IACzB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B,GACD,MAAM,CAAC"}
@@ -39,11 +39,13 @@ export declare class Multiselect extends FoundationElement {
39
39
  */
40
40
  position: Position;
41
41
  onAllSelectedCallback: (allSelected: boolean) => void;
42
+ itemRenderer: (option: MultiselectOption, parent: Multiselect, prefix: string) => any;
42
43
  private initialisedOptions;
43
44
  arrowIcon: SVGElement;
44
45
  optionsElement: HTMLElement;
45
46
  connectedCallback(): void;
46
47
  disconnectedCallback(): void;
48
+ defaultItemRenderer(option: MultiselectOption, parent: Multiselect, prefix: string): import("@microsoft/fast-element").ViewTemplate<Event, any>;
47
49
  toggle(): void;
48
50
  optionsChanged(): void;
49
51
  selectedOptionsChanged(): void;
@@ -56,7 +58,8 @@ export declare class Multiselect extends FoundationElement {
56
58
  * @private
57
59
  */
58
60
  private setDropdownPosition;
59
- optionGetter(option: MultiselectOption): string;
61
+ optionValueGetter(option: MultiselectOption): string;
62
+ optionLabelGetter(option: MultiselectOption): string;
60
63
  getItemLabel(option: MultiselectOption): any;
61
64
  isOptionDisabled(option: MultiselectOption): boolean;
62
65
  get getDisplayValue(): string;
@@ -76,6 +79,7 @@ export declare class Multiselect extends FoundationElement {
76
79
  changeHandler(event: Event): void;
77
80
  private handleClickOutside;
78
81
  keydownHandler(e: Event & KeyboardEvent): boolean | void;
82
+ optionsHeaderSlottedNodes: Node[];
79
83
  }
80
84
  export declare const foundationMultiselect: (overrideDefinition?: import("@microsoft/fast-foundation").OverrideFoundationElementDefinition<{
81
85
  baseName: string;
@@ -1 +1 @@
1
- {"version":3,"file":"multiselect.d.ts","sourceRoot":"","sources":["../../../src/multiselect/multiselect.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAE/D,OAAO,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAC;AAO9D,OAAO,EAAE,iBAAiB,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAMnE,eAAO,MAAM,kCAAkC,EAAE,cAA0B,CAAC;AAE5E,eAAO,MAAM,wBAAwB,IAAK,CAAC;AAE3C;;GAEG;AACH,qBAAa,WAAY,SAAQ,iBAAiB;IAC1C,IAAI,SAAM;IACuC,YAAY,EAAE,OAAO,CAAQ;IACzD,GAAG,UAAQ;IACX,WAAW,UAAS;IACpB,MAAM,UAAQ;IACd,QAAQ,UAAS;IACjB,SAAS,UAAS;IAClB,KAAK,UAAS;IACnC,QAAQ,EAAE,MAAM,CAAiB;IAEvC,2FAA2F;IAC/B,gBAAgB,UAAS;IAErF,eAAe,CAAC,QAAQ,KAAA,EAAE,QAAQ,EAAE,MAAM;IAG1C,qBAAqB,MAAC;IACV,mBAAmB,EAAE,IAAI,EAAE,CAAC;IAC5B,iBAAiB,EAAE,qBAAqB,EAAE,CAAC;IAC3C,cAAc,MAAC;IACf,OAAO,EAAE,OAAO,CAAC;IACjB,iBAAiB,EAAE,MAAM,CAAM;IAC3C,OAAO,CAAC,YAAY,CAAiD;IACzD,IAAI,UAAS;IACzB,WAAW,CAAC,QAAQ,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO;IAYhC,OAAO,EAAE,iBAAiB,EAAE,CAAM;IAClC,eAAe,EAAE,MAAM,EAAE,CAAM;IAC/B,wBAAwB,EAAE,iBAAiB,EAAE,CAAqB;IAClE,eAAe,EAAE,WAAW,CAAC;IAEzC;;;;OAIG;IACG,QAAQ,EAAE,QAAQ,CAAkB;IAE9B,qBAAqB,EAAE,CAAC,WAAW,EAAE,OAAO,KAAK,IAAI,CAAC;IAElE,OAAO,CAAC,kBAAkB,CAAkB;IAE5C,SAAS,EAAE,UAAU,CAAC;IACtB,cAAc,EAAE,WAAW,CAAC;IAE5B,iBAAiB;IAOjB,oBAAoB;IAKpB,MAAM;IAON,cAAc;IAQd,sBAAsB;IAOtB;;;;;;;OAOG;IACH,OAAO,CAAC,mBAAmB;IAoB3B,YAAY,CAAC,MAAM,EAAE,iBAAiB;IAOtC,YAAY,CAAC,MAAM,EAAE,iBAAiB;IAetC,gBAAgB,CAAC,MAAM,EAAE,iBAAiB;IAQ1C,IACI,eAAe,WAyBlB;IAED,IACI,cAAc,WAEjB;IAED,IACI,oBAAoB,YAEvB;IAED,IACI,aAAa,YAMhB;IAED,gBAAgB,CAAC,gBAAgB,EAAE,iBAAiB,GAAG,OAAO;IAI9D,iBAAiB,CAAC,gBAAgB,EAAE,iBAAiB;IAarD,eAAe,CAAC,gBAAgB,EAAE,iBAAiB,EAAE,KAAK,EAAE,aAAa;IAQzE,sBAAsB;IAItB,iBAAiB;IAajB,YAAY;IAcZ,qBAAqB;IAQrB,SAAS;IAcT,SAAS;IAST,cAAc;IAkBd,aAAa,CAAC,KAAK,EAAE,KAAK;IAK1B,OAAO,CAAC,kBAAkB;IAM1B,cAAc,CAAC,CAAC,EAAE,KAAK,GAAG,aAAa,GAAG,OAAO,GAAG,IAAI;CAgCzD;AAED,eAAO,MAAM,qBAAqB;;;;;;;;;;sBAMhC,CAAC"}
1
+ {"version":3,"file":"multiselect.d.ts","sourceRoot":"","sources":["../../../src/multiselect/multiselect.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAE/D,OAAO,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAC;AAO9D,OAAO,EAAE,iBAAiB,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAMnE,eAAO,MAAM,kCAAkC,EAAE,cAA0B,CAAC;AAE5E,eAAO,MAAM,wBAAwB,IAAK,CAAC;AAE3C;;GAEG;AACH,qBAAa,WAAY,SAAQ,iBAAiB;IAC1C,IAAI,SAAM;IACuC,YAAY,EAAE,OAAO,CAAQ;IACzD,GAAG,UAAQ;IACX,WAAW,UAAS;IACpB,MAAM,UAAQ;IACd,QAAQ,UAAS;IACjB,SAAS,UAAS;IAClB,KAAK,UAAS;IACnC,QAAQ,EAAE,MAAM,CAAiB;IAEvC,2FAA2F;IAC/B,gBAAgB,UAAS;IAErF,eAAe,CAAC,QAAQ,KAAA,EAAE,QAAQ,EAAE,MAAM;IAG1C,qBAAqB,MAAC;IACV,mBAAmB,EAAE,IAAI,EAAE,CAAC;IAC5B,iBAAiB,EAAE,qBAAqB,EAAE,CAAC;IAC3C,cAAc,MAAC;IACf,OAAO,EAAE,OAAO,CAAC;IACjB,iBAAiB,EAAE,MAAM,CAAM;IAC3C,OAAO,CAAC,YAAY,CAAiD;IACzD,IAAI,UAAS;IACzB,WAAW,CAAC,QAAQ,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO;IAYhC,OAAO,EAAE,iBAAiB,EAAE,CAAM;IAClC,eAAe,EAAE,MAAM,EAAE,CAAM;IAC/B,wBAAwB,EAAE,iBAAiB,EAAE,CAAqB;IAClE,eAAe,EAAE,WAAW,CAAC;IAEzC;;;;OAIG;IACG,QAAQ,EAAE,QAAQ,CAAkB;IAE9B,qBAAqB,EAAE,CAAC,WAAW,EAAE,OAAO,KAAK,IAAI,CAAC;IAEtD,YAAY,EAAE,CACxB,MAAM,EAAE,iBAAiB,EACzB,MAAM,EAAE,WAAW,EACnB,MAAM,EAAE,MAAM,KACX,GAAG,CAA4B;IAEpC,OAAO,CAAC,kBAAkB,CAAkB;IAE5C,SAAS,EAAE,UAAU,CAAC;IACtB,cAAc,EAAE,WAAW,CAAC;IAE5B,iBAAiB;IAOjB,oBAAoB;IAKpB,mBAAmB,CAAC,MAAM,EAAE,iBAAiB,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM;IA8BlF,MAAM;IAON,cAAc;IAQd,sBAAsB;IAOtB;;;;;;;OAOG;IACH,OAAO,CAAC,mBAAmB;IAoB3B,iBAAiB,CAAC,MAAM,EAAE,iBAAiB;IAY3C,iBAAiB,CAAC,MAAM,EAAE,iBAAiB;IAY3C,YAAY,CAAC,MAAM,EAAE,iBAAiB;IAetC,gBAAgB,CAAC,MAAM,EAAE,iBAAiB;IAQ1C,IACI,eAAe,WAyBlB;IAED,IACI,cAAc,WAEjB;IAED,IACI,oBAAoB,YAEvB;IAED,IACI,aAAa,YAMhB;IAED,gBAAgB,CAAC,gBAAgB,EAAE,iBAAiB,GAAG,OAAO;IAK9D,iBAAiB,CAAC,gBAAgB,EAAE,iBAAiB;IAYrD,eAAe,CAAC,gBAAgB,EAAE,iBAAiB,EAAE,KAAK,EAAE,aAAa;IAQzE,sBAAsB;IAItB,iBAAiB;IAajB,YAAY;IAcZ,qBAAqB;IAWrB,SAAS;IAyBT,SAAS;IAST,cAAc;IAkBd,aAAa,CAAC,KAAK,EAAE,KAAK;IAK1B,OAAO,CAAC,kBAAkB;IAM1B,cAAc,CAAC,CAAC,EAAE,KAAK,GAAG,aAAa,GAAG,OAAO,GAAG,IAAI;IAiC5C,yBAAyB,EAAE,IAAI,EAAE,CAAC;CAC/C;AAED,eAAO,MAAM,qBAAqB;;;;;;;;;;sBAMhC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"multiselect.styles.d.ts","sourceRoot":"","sources":["../../../src/multiselect/multiselect.styles.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,SAAS,MAAM,CAAC;AAE7B,eAAO,MAAM,iBAAiB,iDAkM7B,CAAC"}
1
+ {"version":3,"file":"multiselect.styles.d.ts","sourceRoot":"","sources":["../../../src/multiselect/multiselect.styles.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,SAAS,MAAM,CAAC;AAE7B,eAAO,MAAM,iBAAiB,iDAsM7B,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"multiselect.template.d.ts","sourceRoot":"","sources":["../../../src/multiselect/multiselect.template.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAMjD,eAAO,MAAM,sBAAsB,uFAwHlC,CAAC;AAEF,eAAO,MAAM,mBAAmB,kEAE/B,CAAC"}
1
+ {"version":3,"file":"multiselect.template.d.ts","sourceRoot":"","sources":["../../../src/multiselect/multiselect.template.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAMjD,eAAO,MAAM,sBAAsB,uFAgHlC,CAAC;AAEF,eAAO,MAAM,mBAAmB,kEAE/B,CAAC"}
@@ -1,6 +1,6 @@
1
1
  import { __decorate } from "tslib";
2
2
  import { ResourceType } from '@genesislcap/foundation-comms';
3
- import { attr, observable, volatile } from '@microsoft/fast-element';
3
+ import { attr, html, observable, volatile } from '@microsoft/fast-element';
4
4
  import { FoundationElement } from '@microsoft/fast-foundation';
5
5
  import debounce from 'lodash.debounce';
6
6
  import { dataserverCriteriaBuilder, logger, requestServerCriteriaBuilder, wasClickOutsideElement, } from '../utils';
@@ -39,6 +39,7 @@ export class Multiselect extends FoundationElement {
39
39
  * - Position.BELOW: Forces the dropdown to always open below the input field.
40
40
  */
41
41
  this.position = Position.BELOW;
42
+ this.itemRenderer = this.defaultItemRenderer;
42
43
  this.initialisedOptions = false;
43
44
  }
44
45
  debounceChanged(oldValue, newValue) {
@@ -68,6 +69,33 @@ export class Multiselect extends FoundationElement {
68
69
  super.disconnectedCallback();
69
70
  document.removeEventListener('mousedown', this.clickOutside);
70
71
  }
72
+ defaultItemRenderer(option, parent, prefix) {
73
+ return html `
74
+ <${prefix}-checkbox
75
+ part="checkbox"
76
+ class="checkbox"
77
+ @keydown=${(e) => parent.checkboxKeyDown(option, e)}
78
+ @click=${() => parent.selectCheckboxOne(option)}
79
+ @change=${(e) => parent.changeHandler(e)}
80
+ ?current-checked="${() => parent.isOptionSelected(option)}"
81
+ ?disabled="${() => parent.isOptionDisabled(option)}"
82
+ >
83
+ ${typeof option === 'string'
84
+ ? html `
85
+ <span part="option-label">${() => parent.getItemLabel(option)}</span>
86
+ `
87
+ : html `
88
+ <span
89
+ data-option-label-text=${() => option.optionLabelText}
90
+ style=${() => option.labelStyle}
91
+ part="option-label"
92
+ >
93
+ ${() => parent.getItemLabel(option)}
94
+ </span>
95
+ `}
96
+ </${prefix}-checkbox>
97
+ `;
98
+ }
71
99
  toggle() {
72
100
  if (!this.open) {
73
101
  this.setDropdownPosition();
@@ -76,7 +104,7 @@ export class Multiselect extends FoundationElement {
76
104
  }
77
105
  optionsChanged() {
78
106
  if (this.allSelected && !this.initialisedOptions) {
79
- this.selectedOptions = this.options.map((option) => this.optionGetter(option));
107
+ this.selectedOptions = this.options.map((option) => this.optionValueGetter(option));
80
108
  }
81
109
  this.filteredAvailableOptions = [...this.options];
82
110
  }
@@ -111,11 +139,23 @@ export class Multiselect extends FoundationElement {
111
139
  this.optionsElement.classList.toggle('position-above', calculatedPosition === Position.ABOVE);
112
140
  this.optionsElement.classList.toggle('position-below', calculatedPosition === Position.BELOW);
113
141
  }
114
- optionGetter(option) {
115
- if (typeof option != 'string') {
116
- return option.value;
142
+ optionValueGetter(option) {
143
+ if (typeof option === 'string') {
144
+ return option;
145
+ }
146
+ if (Array.isArray(option.value)) {
147
+ return option.value.join(',');
148
+ }
149
+ return option.value;
150
+ }
151
+ optionLabelGetter(option) {
152
+ if (typeof option === 'string') {
153
+ return option;
154
+ }
155
+ if (Array.isArray(option.label)) {
156
+ return option.label.join(', ');
117
157
  }
118
- return option;
158
+ return option.label;
119
159
  }
120
160
  getItemLabel(option) {
121
161
  let value;
@@ -126,7 +166,7 @@ export class Multiselect extends FoundationElement {
126
166
  value = option;
127
167
  }
128
168
  else {
129
- value = option.label || option.value || '';
169
+ value = this.optionLabelGetter(option) || this.optionValueGetter(option) || '';
130
170
  }
131
171
  return this.valueFormatter ? this.valueFormatter(value) : value;
132
172
  }
@@ -144,7 +184,7 @@ export class Multiselect extends FoundationElement {
144
184
  break;
145
185
  }
146
186
  case 1: {
147
- const selectedOption = this.options.find((option) => this.optionGetter(option) === this.selectedOptions[0]);
187
+ const selectedOption = this.options.find((option) => this.optionValueGetter(option) === this.selectedOptions[0]);
148
188
  displayText = this.getItemLabel(selectedOption);
149
189
  break;
150
190
  }
@@ -170,17 +210,17 @@ export class Multiselect extends FoundationElement {
170
210
  this.findExactMatchOptions().length === 0);
171
211
  }
172
212
  isOptionSelected(normalizedOption) {
173
- return this.selectedOptions.includes(this.optionGetter(normalizedOption));
213
+ const value = this.optionValueGetter(normalizedOption);
214
+ return this.selectedOptions.includes(value);
174
215
  }
175
216
  selectCheckboxOne(normalizedOption) {
176
- const option = this.optionGetter(normalizedOption);
217
+ const option = this.optionValueGetter(normalizedOption);
177
218
  const isIncluded = this.selectedOptions.includes(option);
178
219
  if (!isIncluded) {
179
220
  this.selectedOptions = [...this.selectedOptions, option];
180
221
  }
181
222
  else {
182
- this.selectedOptions = [...this.selectedOptions];
183
- this.selectedOptions.splice(this.selectedOptions.indexOf(option), 1);
223
+ this.selectedOptions = this.selectedOptions.filter((x) => x !== option);
184
224
  }
185
225
  this.$emit('selectionChange', this.selectedOptions);
186
226
  }
@@ -200,7 +240,7 @@ export class Multiselect extends FoundationElement {
200
240
  ? []
201
241
  : this.options
202
242
  .filter((opt) => !this.isOptionDisabled(opt))
203
- .map((option) => this.optionGetter(option));
243
+ .map((option) => this.optionValueGetter(option));
204
244
  if (this.onAllSelectedCallback) {
205
245
  this.onAllSelectedCallback(!prevAllChecked);
206
246
  }
@@ -223,21 +263,29 @@ export class Multiselect extends FoundationElement {
223
263
  const filterSearchValueLower = this.filterSearchValue.toLowerCase();
224
264
  return this.filteredAvailableOptions.filter((option) => {
225
265
  var _a, _b;
226
- const optionValue = typeof option === 'string' ? option : (_a = option.label) !== null && _a !== void 0 ? _a : option.value;
266
+ const optionValue = typeof option === 'string'
267
+ ? option
268
+ : (_a = this.optionLabelGetter(option)) !== null && _a !== void 0 ? _a : this.optionValueGetter(option);
227
269
  return ((_b = optionValue === null || optionValue === void 0 ? void 0 : optionValue.toLowerCase()) !== null && _b !== void 0 ? _b : '') === filterSearchValueLower;
228
270
  });
229
271
  }
230
272
  setFilter() {
231
- this.filteredAvailableOptions = [
232
- ...this.options.filter((option) => {
233
- var _a;
234
- const optionValue = (typeof option == 'string' ? option : (_a = option.label) !== null && _a !== void 0 ? _a : option.value).toLowerCase();
235
- const searchValue = this.filterSearchValue.toLowerCase();
236
- return this.filterByContains
237
- ? optionValue.indexOf(searchValue) >= 0
238
- : optionValue.startsWith(searchValue);
239
- }),
240
- ];
273
+ debugger;
274
+ const searchValue = this.filterSearchValue.toLowerCase();
275
+ this.filteredAvailableOptions = this.options.filter((option) => {
276
+ const rawLabel = typeof option === 'string' ? option : option.label;
277
+ const rawValue = typeof option === 'string' ? option : option.value;
278
+ const checkMatch = (val) => this.filterByContains
279
+ ? val.toLowerCase().includes(searchValue)
280
+ : val.toLowerCase().startsWith(searchValue);
281
+ const matchLabel = Array.isArray(rawLabel)
282
+ ? rawLabel.some((val) => checkMatch(val))
283
+ : rawLabel && checkMatch(rawLabel);
284
+ const matchValue = Array.isArray(rawValue)
285
+ ? rawValue.some((val) => checkMatch(val))
286
+ : rawValue && checkMatch(rawValue);
287
+ return matchLabel || matchValue;
288
+ });
241
289
  }
242
290
  addOption() {
243
291
  this.options = [
@@ -364,6 +412,9 @@ __decorate([
364
412
  __decorate([
365
413
  observable
366
414
  ], Multiselect.prototype, "onAllSelectedCallback", void 0);
415
+ __decorate([
416
+ observable
417
+ ], Multiselect.prototype, "itemRenderer", void 0);
367
418
  __decorate([
368
419
  volatile
369
420
  ], Multiselect.prototype, "getDisplayValue", null);
@@ -376,5 +427,8 @@ __decorate([
376
427
  __decorate([
377
428
  volatile
378
429
  ], Multiselect.prototype, "showCreatable", null);
430
+ __decorate([
431
+ observable
432
+ ], Multiselect.prototype, "optionsHeaderSlottedNodes", void 0);
379
433
  export const foundationMultiselect = Multiselect.compose(Object.assign({ baseName: 'multiselect', template,
380
434
  styles, shadowOptions: foundationMultiselectShadowOptions }, defaultMultiselectConfig));
@@ -194,4 +194,8 @@ export const multiselectStyles = css `
194
194
  line-height: var(--type-ramp-base-line-height);
195
195
  font-family: var(--body-font);
196
196
  }
197
+
198
+ .options-header-item-hidden {
199
+ display: none;
200
+ }
197
201
  `;
@@ -1,5 +1,5 @@
1
- import { sync, whenElse } from '@genesislcap/foundation-utils';
2
- import { html, repeat, ref, when, slotted } from '@microsoft/fast-element';
1
+ import { sync } from '@genesislcap/foundation-utils';
2
+ import { html, ref, repeat, slotted, when } from '@microsoft/fast-element';
3
3
  import { whitespaceFilter } from '@microsoft/fast-foundation';
4
4
  import { classNames } from '@microsoft/fast-web-utilities';
5
5
  import { MultiselectDatasource } from '../options-datasource';
@@ -69,29 +69,27 @@ export const getPrefixedMultiselect = (prefix = 'foundation') => html `
69
69
  Select All ${(x) => x.name}
70
70
  </${prefix}-button>
71
71
  `)}
72
+ <li
73
+ part="options-header-item"
74
+ class=${(x) => {
75
+ var _a;
76
+ return classNames('options-header-item', [
77
+ 'options-header-item-hidden',
78
+ !((_a = x.optionsHeaderSlottedNodes) === null || _a === void 0 ? void 0 : _a.length),
79
+ ]);
80
+ }}
81
+ >
82
+ <slot
83
+ name="options-header"
84
+ ${slotted({
85
+ property: 'optionsHeaderSlottedNodes',
86
+ filter: whitespaceFilter,
87
+ })}
88
+ ></slot>
89
+ </li>
72
90
  ${repeat((x) => x.filteredAvailableOptions, html `
73
91
  <li role="option" value=${(x, ctx) => ctx.parent.getItemLabel(x)}>
74
- <${prefix}-checkbox
75
- part="checkbox"
76
- class="checkbox"
77
- @keydown=${(x, c) => c.parent.checkboxKeyDown(x, c.event)}
78
- @click=${(x, c) => c.parent.selectCheckboxOne(x)}
79
- @change=${(x, c) => c.parent.changeHandler(c.event)}
80
- ?current-checked="${(x, c) => c.parent.isOptionSelected(x)}"
81
- ?disabled="${(x, c) => c.parent.isOptionDisabled(x)}"
82
- >
83
- ${whenElse((x) => typeof x === 'string', html `
84
- <span part="option-label">${(x, ctx) => ctx.parent.getItemLabel(x)}</span>
85
- `, html `
86
- <span
87
- data-option-label-text=${(x) => x.optionLabelText}
88
- style=${(x) => x.labelStyle}
89
- part="option-label"
90
- >
91
- ${(x, ctx) => ctx.parent.getItemLabel(x)}
92
- </span>
93
- `)}
94
- </${prefix}-checkbox>
92
+ ${(x, ctx) => { var _a, _b; return (_b = (_a = ctx.parent) === null || _a === void 0 ? void 0 : _a.itemRenderer) === null || _b === void 0 ? void 0 : _b.call(_a, x, ctx.parent, prefix); }}
95
93
  </li>
96
94
  `)}
97
95
  ${when((x) => x.showCreatable, html `
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@genesislcap/foundation-ui",
3
3
  "description": "Genesis Foundation UI",
4
- "version": "14.262.2",
4
+ "version": "14.263.1-alpha-7b4a655.0",
5
5
  "sideEffects": false,
6
6
  "license": "SEE LICENSE IN license.txt",
7
7
  "main": "dist/esm/index.js",
@@ -83,13 +83,13 @@
83
83
  }
84
84
  },
85
85
  "devDependencies": {
86
- "@genesislcap/foundation-testing": "14.262.2",
87
- "@genesislcap/genx": "14.262.2",
88
- "@genesislcap/rollup-builder": "14.262.2",
89
- "@genesislcap/ts-builder": "14.262.2",
90
- "@genesislcap/uvu-playwright-builder": "14.262.2",
91
- "@genesislcap/vite-builder": "14.262.2",
92
- "@genesislcap/webpack-builder": "14.262.2",
86
+ "@genesislcap/foundation-testing": "14.263.1-alpha-7b4a655.0",
87
+ "@genesislcap/genx": "14.263.1-alpha-7b4a655.0",
88
+ "@genesislcap/rollup-builder": "14.263.1-alpha-7b4a655.0",
89
+ "@genesislcap/ts-builder": "14.263.1-alpha-7b4a655.0",
90
+ "@genesislcap/uvu-playwright-builder": "14.263.1-alpha-7b4a655.0",
91
+ "@genesislcap/vite-builder": "14.263.1-alpha-7b4a655.0",
92
+ "@genesislcap/webpack-builder": "14.263.1-alpha-7b4a655.0",
93
93
  "copyfiles": "^2.4.1",
94
94
  "rimraf": "^5.0.0",
95
95
  "rxjs": "^7.5.4"
@@ -100,15 +100,15 @@
100
100
  "@fortawesome/free-regular-svg-icons": "^6.2.1",
101
101
  "@fortawesome/free-solid-svg-icons": "^6.2.1",
102
102
  "@genesiscommunitysuccess/analyzer-import-alias-plugin": "^5.0.3",
103
- "@genesislcap/expression-builder": "14.262.2",
104
- "@genesislcap/foundation-comms": "14.262.2",
105
- "@genesislcap/foundation-criteria": "14.262.2",
106
- "@genesislcap/foundation-errors": "14.262.2",
107
- "@genesislcap/foundation-events": "14.262.2",
108
- "@genesislcap/foundation-logger": "14.262.2",
109
- "@genesislcap/foundation-notifications": "14.262.2",
110
- "@genesislcap/foundation-user": "14.262.2",
111
- "@genesislcap/foundation-utils": "14.262.2",
103
+ "@genesislcap/expression-builder": "14.263.1-alpha-7b4a655.0",
104
+ "@genesislcap/foundation-comms": "14.263.1-alpha-7b4a655.0",
105
+ "@genesislcap/foundation-criteria": "14.263.1-alpha-7b4a655.0",
106
+ "@genesislcap/foundation-errors": "14.263.1-alpha-7b4a655.0",
107
+ "@genesislcap/foundation-events": "14.263.1-alpha-7b4a655.0",
108
+ "@genesislcap/foundation-logger": "14.263.1-alpha-7b4a655.0",
109
+ "@genesislcap/foundation-notifications": "14.263.1-alpha-7b4a655.0",
110
+ "@genesislcap/foundation-user": "14.263.1-alpha-7b4a655.0",
111
+ "@genesislcap/foundation-utils": "14.263.1-alpha-7b4a655.0",
112
112
  "@microsoft/fast-colors": "5.3.1",
113
113
  "@microsoft/fast-components": "2.30.6",
114
114
  "@microsoft/fast-element": "1.14.0",
@@ -130,5 +130,5 @@
130
130
  "access": "public"
131
131
  },
132
132
  "customElements": "dist/custom-elements.json",
133
- "gitHead": "d4c7eaf9af2757646daf831ea8f2ce0c075832c0"
133
+ "gitHead": "c3609b826cbe1478c1e5d3bb308cdac9f2a3aa31"
134
134
  }