@emuanalytics/flow-rdf-ui 0.0.50 → 0.0.52

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/dist/index.d.ts CHANGED
@@ -1893,482 +1893,6 @@ interface ColorMapperValue {
1893
1893
  colorStops: ColorStopValue[];
1894
1894
  }
1895
1895
 
1896
- interface FormControlControllerOptions {
1897
- /** A function that returns the form containing the form control. */
1898
- form: (input: FlowRdfFormControl) => HTMLFormElement | null;
1899
- /** A function that returns the form control's name, which will be submitted with the form data. */
1900
- name: (input: FlowRdfFormControl) => string;
1901
- /** A function that returns the form control's current value. */
1902
- value: (input: FlowRdfFormControl) => unknown | unknown[];
1903
- /** A function that returns the form control's default value. */
1904
- defaultValue: (input: FlowRdfFormControl) => unknown | unknown[];
1905
- /** A function that returns the form control's current disabled state. If disabled, the value won't be submitted. */
1906
- disabled: (input: FlowRdfFormControl) => boolean;
1907
- /**
1908
- * A function that maps to the form control's reportValidity() function. When the control is invalid, this will
1909
- * prevent submission and trigger the browser's constraint violation warning.
1910
- */
1911
- reportValidity: (input: FlowRdfFormControl) => boolean;
1912
- /** A function that sets the form control's value */
1913
- setValue: (input: FlowRdfFormControl, value: unknown) => void;
1914
- /**
1915
- * An array of event names to listen to. When all events in the list are emitted, the control will receive validity
1916
- * states such as user-valid and user-invalid.user interacted validity states. */
1917
- assumeInteractionOn: string[];
1918
- }
1919
- /** A reactive controller to allow form controls to participate in form submission, validation, etc. */
1920
- declare class FormControlController implements ReactiveController {
1921
- host: FlowRdfFormControl & ReactiveControllerHost;
1922
- form?: HTMLFormElement | null;
1923
- options: FormControlControllerOptions;
1924
- constructor(host: ReactiveControllerHost & FlowRdfFormControl, options?: Partial<FormControlControllerOptions>);
1925
- hostConnected(): void;
1926
- hostDisconnected(): void;
1927
- hostUpdated(): void;
1928
- private attachForm;
1929
- private detachForm;
1930
- private handleFormData;
1931
- private handleFormSubmit;
1932
- private handleFormReset;
1933
- private handleInteraction;
1934
- private reportFormValidity;
1935
- private setUserInteracted;
1936
- private doAction;
1937
- /** Returns the associated `<form>` element, if one exists. */
1938
- getForm(): HTMLFormElement | null;
1939
- /** Resets the form, restoring all the control to their default value */
1940
- reset(submitter?: HTMLInputElement | FlowButton): void;
1941
- /** Submits the form, triggering validation and form data injection. */
1942
- submit(submitter?: HTMLInputElement | FlowButton): void;
1943
- /**
1944
- * Synchronously sets the form control's validity. Call this when you know the future validity but need to update
1945
- * the host element immediately, i.e. before Lit updates the component in the next update.
1946
- */
1947
- setValidity(isValid: boolean): void;
1948
- /**
1949
- * Updates the form control's validity based on the current value of `host.validity.valid`. Call this when anything
1950
- * that affects constraint validation changes so the component receives the correct validity states.
1951
- */
1952
- updateValidity(): void;
1953
- /**
1954
- * Dispatches a non-bubbling, cancelable custom event of type `flow-ui-invalid`.
1955
- * If the `flow-ui-invalid` event will be cancelled then the original `invalid`
1956
- * event (which may have been passed as argument) will also be cancelled.
1957
- * If no original `invalid` event has been passed then the `flow-ui-invalid`
1958
- * event will be cancelled before being dispatched.
1959
- */
1960
- emitInvalidEvent(originalInvalidEvent?: Event): void;
1961
- }
1962
-
1963
- /**
1964
- * @tagname flow-ui-radio-group
1965
- * @summary Radio groups are used to group multiple [radios](/components/radio) or [radio buttons](/components/radio-button) so they function as a single form control.
1966
- *
1967
- * @dependency flow-ui-button-group
1968
- *
1969
- * @slot - The default slot where `<flow-ui-radio>` or `<flow-ui-tool-button>` elements are placed.
1970
- * @slot label - The radio group's label. Required for proper accessibility. Alternatively, you can use the `label`
1971
- * attribute.
1972
- *
1973
- * @event flow-ui-change - Emitted when the radio group's selected value changes.
1974
- * @event flow-ui-input - Emitted when the radio group receives user input.
1975
- * @event flow-ui-invalid - Emitted when the form control has been checked for validity and its constraints aren't satisfied.
1976
- *
1977
- * @csspart form-control - The form control that wraps the label, input, and help text.
1978
- * @csspart form-control-label - The label's wrapper.
1979
- * @csspart form-control-input - The input's wrapper.
1980
- * @csspart form-control-help-text - The help text's wrapper.
1981
- * @csspart button-group - The button group that wraps radio buttons.
1982
- * @csspart button-group__base - The button group's `base` part.
1983
- */
1984
- declare class FlowRadioGroup extends FlowRdfElement implements FlowRdfFormControl {
1985
- static styles: CSSResultGroup;
1986
- protected readonly formControlController: FormControlController;
1987
- private readonly hasSlotController;
1988
- private customValidityMessage;
1989
- private validationTimeout;
1990
- defaultSlot: HTMLSlotElement;
1991
- validationInput: HTMLInputElement;
1992
- private errorMessage;
1993
- defaultValue: string;
1994
- /**
1995
- * The radio group's label. Required for proper accessibility. If you need to display HTML, use the `label` slot
1996
- * instead.
1997
- */
1998
- label: string;
1999
- /** The radio groups's help text. If you need to display HTML, use the `help-text` slot instead. */
2000
- helpText: string;
2001
- /** The name of the radio group, submitted as a name/value pair with form data. */
2002
- name: string;
2003
- /** The current value of the radio group, submitted as a name/value pair with form data. */
2004
- value: string;
2005
- /** The radio group's size. This size will be applied to all child radios and radio buttons. */
2006
- size: 'small' | 'medium' | 'large';
2007
- /**
2008
- * By default, form controls are associated with the nearest containing `<form>` element. This attribute allows you
2009
- * to place the form control outside of a form and associate it with the form that has this `id`. The form must be in
2010
- * the same document or shadow root for this to work.
2011
- */
2012
- form: string;
2013
- /** Ensures a child radio is checked before allowing the containing form to submit. */
2014
- required: boolean;
2015
- /**
2016
- * Use vertical layout for the radio group.
2017
- */
2018
- vertical: boolean;
2019
- /** Gets the validity state object */
2020
- get validity(): ValidityState;
2021
- /** Gets the validation message */
2022
- get validationMessage(): string;
2023
- connectedCallback(): void;
2024
- firstUpdated(): void;
2025
- private getAllRadios;
2026
- private handleRadioClick;
2027
- private handleKeyDown;
2028
- private handleLabelClick;
2029
- private handleInvalid;
2030
- private syncRadios;
2031
- private updateCheckedRadio;
2032
- handleSizeChange(): void;
2033
- handleValueChange(): void;
2034
- /** Checks for validity but does not show a validation message. Returns `true` when valid and `false` when invalid. */
2035
- checkValidity(): boolean;
2036
- /** Gets the associated form, if one exists. */
2037
- getForm(): HTMLFormElement | null;
2038
- /** Checks for validity and shows the browser's validation message if the control is invalid. */
2039
- reportValidity(): boolean;
2040
- /** Sets a custom validation message. Pass an empty string to restore validity. */
2041
- setCustomValidity(message?: string): void;
2042
- render(): lit.TemplateResult<1>;
2043
- }
2044
-
2045
- declare global {
2046
- interface HTMLElementTagNameMap {
2047
- 'flow-ui-radio-group': FlowRadioGroup;
2048
- }
2049
- }
2050
-
2051
- /**
2052
- *
2053
- * @tagname flow-ui-radio
2054
- * @summary Radios allow the user to select a single option from a group.
2055
- *
2056
- * @dependency flow-ui-icon
2057
- *
2058
- * @slot - The radio's label.
2059
- *
2060
- * @event flow-ui-blur - Emitted when the control loses focus.
2061
- * @event flow-ui-focus - Emitted when the control gains focus.
2062
- *
2063
- * @csspart base - The component's base wrapper.
2064
- * @csspart control - The circular container that wraps the radio's checked state.
2065
- * @csspart control--checked - The radio control when the radio is checked.
2066
- * @csspart checked-icon - The checked icon, an `<flow-ui-icon>` element.
2067
- * @csspart label - The container that wraps the radio's label.
2068
- */
2069
- declare class FlowRadio extends FlowRdfElement {
2070
- static styles: CSSResultGroup;
2071
- checked: boolean;
2072
- protected hasFocus: boolean;
2073
- /** The radio's value. When selected, the radio group will receive this value. */
2074
- value: string;
2075
- /**
2076
- * The radio's size. When used inside a radio group, the size will be determined by the radio group's size so this
2077
- * attribute can typically be omitted.
2078
- */
2079
- size: 'small' | 'medium' | 'large';
2080
- /** Disables the radio. */
2081
- disabled: boolean;
2082
- connectedCallback(): void;
2083
- disconnectedCallback(): void;
2084
- private addEventListeners;
2085
- private removeEventListeners;
2086
- private handleBlur;
2087
- private handleClick;
2088
- private handleFocus;
2089
- private setInitialAttributes;
2090
- handleCheckedChange(): void;
2091
- handleDisabledChange(): void;
2092
- render(): lit.TemplateResult<1>;
2093
- }
2094
-
2095
- declare global {
2096
- interface HTMLElementTagNameMap {
2097
- 'flow-ui-radio': FlowRadio;
2098
- }
2099
- }
2100
-
2101
- /**
2102
- * @tagname flow-ui-option
2103
- * @summary Options define the selectable items within various form controls such as [select](/components/select).
2104
- *
2105
- * @dependency flow-ui-icon
2106
- *
2107
- * @slot - The option's label.
2108
- * @slot prefix - Used to prepend an icon or similar element to the menu item.
2109
- * @slot suffix - Used to append an icon or similar element to the menu item.
2110
- *
2111
- * @csspart checked-icon - The checked icon, a `<flow-ui-icon>` element.
2112
- * @csspart base - The component's base wrapper.
2113
- * @csspart label - The option's label.
2114
- * @csspart prefix - The container that wraps the prefix.
2115
- * @csspart suffix - The container that wraps the suffix.
2116
- */
2117
- declare class FlowOption extends FlowRdfElement {
2118
- static styles: CSSResultGroup;
2119
- static dependencies: {
2120
- 'flow-ui-icon': typeof FlowIcon;
2121
- };
2122
- private cachedTextLabel;
2123
- private readonly localize;
2124
- defaultSlot: HTMLSlotElement;
2125
- current: boolean;
2126
- selected: boolean;
2127
- hasHover: boolean;
2128
- /**
2129
- * The option's value. When selected, the containing form control will receive this value. The value must be unique
2130
- * from other options in the same group. Values may not contain spaces, as spaces are used as delimiters when listing
2131
- * multiple values.
2132
- */
2133
- value: string;
2134
- /** Draws the option in a disabled state, preventing selection. */
2135
- disabled: boolean;
2136
- connectedCallback(): void;
2137
- private handleDefaultSlotChange;
2138
- private handleMouseEnter;
2139
- private handleMouseLeave;
2140
- handleDisabledChange(): void;
2141
- handleSelectedChange(): void;
2142
- handleValueChange(): void;
2143
- /** Returns a plain text label based on the option's content. */
2144
- getTextLabel(): string;
2145
- render(): lit.TemplateResult<1>;
2146
- }
2147
-
2148
- /**
2149
- * @summary Tags are used as labels to organize things or to indicate a selection.
2150
- * @documentation https://developer.emu-analytics.net/docs/flow-ui-rdf/components/tag
2151
- * @status stable
2152
- * @since 2.0
2153
- *
2154
- * @dependency flow-ui-icon-button
2155
- *
2156
- * @slot - The tag's content.
2157
- *
2158
- * @event flow-ui-remove - Emitted when the remove button is activated.
2159
- *
2160
- * @csspart base - The component's base wrapper.
2161
- * @csspart content - The tag's content.
2162
- * @csspart remove-button - The tag's remove button, an `<flow-ui-icon-button>`.
2163
- * @csspart remove-button__base - The remove button's exported `base` part.
2164
- */
2165
- declare class FlowTag extends FlowRdfElement {
2166
- static styles: CSSResultGroup;
2167
- static dependencies: {
2168
- 'flow-icon-button': typeof FlowIconButton;
2169
- };
2170
- private readonly localize;
2171
- /** The tag's theme variant. */
2172
- variant: 'primary' | 'success' | 'neutral' | 'warning' | 'danger' | 'text';
2173
- /** The tag's size. */
2174
- size: 'small' | 'medium' | 'large';
2175
- /** Draws a pill-style tag with rounded edges. */
2176
- pill: boolean;
2177
- /** Makes the tag removable and shows a remove button. */
2178
- removable: boolean;
2179
- private handleRemoveClick;
2180
- render(): lit.TemplateResult<1>;
2181
- }
2182
-
2183
- /**
2184
- * @summary Selects allow you to choose items from a menu of predefined options.
2185
- * @documentation https://shoelace.style/components/select
2186
- * @status stable
2187
- * @since 2.0
2188
- *
2189
- * @dependency flow-icon
2190
- * @dependency flow-popup
2191
- * @dependency flow-tag
2192
- *
2193
- * @slot - The listbox options. Must be `<flow-option>` elements. You can use `<flow-divider>` to group items visually.
2194
- * @slot label - The input's label. Alternatively, you can use the `label` attribute.
2195
- * @slot prefix - Used to prepend a presentational icon or similar element to the combobox.
2196
- * @slot suffix - Used to append a presentational icon or similar element to the combobox.
2197
- * @slot clear-icon - An icon to use in lieu of the default clear icon.
2198
- * @slot expand-icon - The icon to show when the control is expanded and collapsed. Rotates on open and close.
2199
- * @slot help-text - Text that describes how to use the input. Alternatively, you can use the `help-text` attribute.
2200
- *
2201
- * @event flow-ui-change - Emitted when the control's value changes.
2202
- * @event flow-ui-clear - Emitted when the control's value is cleared.
2203
- * @event flow-ui-input - Emitted when the control receives input.
2204
- * @event flow-ui-focus - Emitted when the control gains focus.
2205
- * @event flow-ui-blur - Emitted when the control loses focus.
2206
- * @event flow-ui-show - Emitted when the select's menu opens.
2207
- * @event flow-ui-after-show - Emitted after the select's menu opens and all animations are complete.
2208
- * @event flow-ui-hide - Emitted when the select's menu closes.
2209
- * @event flow-ui-after-hide - Emitted after the select's menu closes and all animations are complete.
2210
- * @event flow-ui-invalid - Emitted when the form control has been checked for validity and its constraints aren't satisfied.
2211
- *
2212
- * @csspart form-control - The form control that wraps the label, input, and help text.
2213
- * @csspart form-control-label - The label's wrapper.
2214
- * @csspart form-control-input - The select's wrapper.
2215
- * @csspart form-control-help-text - The help text's wrapper.
2216
- * @csspart combobox - The container the wraps the prefix, suffix, combobox, clear icon, and expand button.
2217
- * @csspart prefix - The container that wraps the prefix slot.
2218
- * @csspart suffix - The container that wraps the suffix slot.
2219
- * @csspart display-input - The element that displays the selected option's label, an `<input>` element.
2220
- * @csspart listbox - The listbox container where options are slotted.
2221
- * @csspart tags - The container that houses option tags when `multiselect` is used.
2222
- * @csspart tag - The individual tags that represent each multiselect option.
2223
- * @csspart tag__base - The tag's base part.
2224
- * @csspart tag__content - The tag's content part.
2225
- * @csspart tag__remove-button - The tag's remove button.
2226
- * @csspart tag__remove-button__base - The tag's remove button base part.
2227
- * @csspart clear-button - The clear button.
2228
- * @csspart expand-icon - The container that wraps the expand icon.
2229
- */
2230
- declare class FlowSelect extends FlowRdfElement implements FlowRdfFormControl {
2231
- static styles: CSSResultGroup;
2232
- static dependencies: {
2233
- 'flow-icon': typeof FlowIcon;
2234
- 'flow-popup': typeof SlPopup;
2235
- 'flow-tag': typeof FlowTag;
2236
- };
2237
- private readonly formControlController;
2238
- private readonly hasSlotController;
2239
- private readonly localize;
2240
- private typeToSelectString;
2241
- private typeToSelectTimeout;
2242
- private closeWatcher;
2243
- private mutationObserver;
2244
- popup: SlPopup;
2245
- combobox: HTMLSlotElement;
2246
- displayInput: HTMLInputElement;
2247
- valueInput: HTMLInputElement;
2248
- listbox: HTMLSlotElement;
2249
- private hasFocus;
2250
- displayLabel: string;
2251
- currentOption: FlowOption;
2252
- selectedOptions: FlowOption[];
2253
- /** The name of the select, submitted as a name/value pair with form data. */
2254
- name: string;
2255
- /**
2256
- * The current value of the select, submitted as a name/value pair with form data. When `multiple` is enabled, the
2257
- * value attribute will be a space-delimited list of values based on the options selected, and the value property will
2258
- * be an array. **For this reason, values must not contain spaces.**
2259
- */
2260
- value: string | string[];
2261
- /** The default value of the form control. Primarily used for resetting the form control. */
2262
- defaultValue: string | string[];
2263
- /** The select's size. */
2264
- size: 'small' | 'medium' | 'large';
2265
- /** Placeholder text to show as a hint when the select is empty. */
2266
- placeholder: string;
2267
- /** Allows more than one option to be selected. */
2268
- multiple: boolean;
2269
- /**
2270
- * The maximum number of selected options to show when `multiple` is true. After the maximum, "+n" will be shown to
2271
- * indicate the number of additional items that are selected. Set to 0 to remove the limit.
2272
- */
2273
- maxOptionsVisible: number;
2274
- /** Disables the select control. */
2275
- disabled: boolean;
2276
- /** Adds a clear button when the select is not empty. */
2277
- clearable: boolean;
2278
- /**
2279
- * Indicates whether or not the select is open. You can toggle this attribute to show and hide the menu, or you can
2280
- * use the `show()` and `hide()` methods and this attribute will reflect the select's open state.
2281
- */
2282
- open: boolean;
2283
- /**
2284
- * Enable this option to prevent the listbox from being clipped when the component is placed inside a container with
2285
- * `overflow: auto|scroll`. Hoisting uses a fixed positioning strategy that works in many, but not all, scenarios.
2286
- */
2287
- hoist: boolean;
2288
- /** Draws a filled select. */
2289
- filled: boolean;
2290
- /** Draws a pill-style select with rounded edges. */
2291
- pill: boolean;
2292
- /** The select's label. If you need to display HTML, use the `label` slot instead. */
2293
- label: string;
2294
- /**
2295
- * The preferred placement of the select's menu. Note that the actual placement may vary as needed to keep the listbox
2296
- * inside of the viewport.
2297
- */
2298
- placement: 'top' | 'bottom';
2299
- /** The select's help text. If you need to display HTML, use the `help-text` slot instead. */
2300
- helpText: string;
2301
- /**
2302
- * By default, form controls are associated with the nearest containing `<form>` element. This attribute allows you
2303
- * to place the form control outside of a form and associate it with the form that has this `id`. The form must be in
2304
- * the same document or shadow root for this to work.
2305
- */
2306
- form: string;
2307
- /** The select's required attribute. */
2308
- required: boolean;
2309
- /**
2310
- * A function that customizes the tags to be rendered when multiple=true. The first argument is the option, the second
2311
- * is the current tag's index. The function should return either a Lit TemplateResult or a string containing trusted HTML of the symbol to render at
2312
- * the specified value.
2313
- */
2314
- getTag: (option: FlowOption, index: number) => TemplateResult | string | HTMLElement;
2315
- /** Gets the validity state object */
2316
- get validity(): ValidityState;
2317
- /** Gets the validation message */
2318
- get validationMessage(): string;
2319
- connectedCallback(): void;
2320
- disconnectedCallback(): void;
2321
- private addOpenListeners;
2322
- private removeOpenListeners;
2323
- private handleFocus;
2324
- private handleBlur;
2325
- private handleDocumentFocusIn;
2326
- private handleDocumentKeyDown;
2327
- private handleDocumentMouseDown;
2328
- private handleLabelClick;
2329
- private handleComboboxMouseDown;
2330
- private handleComboboxKeyDown;
2331
- private handleClearClick;
2332
- private handleClearMouseDown;
2333
- private handleOptionClick;
2334
- private handleDefaultSlotChange;
2335
- private handleTagRemove;
2336
- private getAllOptions;
2337
- private getFirstOption;
2338
- private setCurrentOption;
2339
- private setSelectedOptions;
2340
- private toggleOptionSelection;
2341
- private selectionChanged;
2342
- protected get tags(): TemplateResult<1>[];
2343
- private handleInvalid;
2344
- handleDisabledChange(): void;
2345
- handleValueChange(): void;
2346
- handleOpenChange(): Promise<void>;
2347
- /** Shows the listbox. */
2348
- show(): Promise<void>;
2349
- /** Hides the listbox. */
2350
- hide(): Promise<void>;
2351
- /** Checks for validity but does not show a validation message. Returns `true` when valid and `false` when invalid. */
2352
- checkValidity(): boolean;
2353
- /** Gets the associated form, if one exists. */
2354
- getForm(): HTMLFormElement | null;
2355
- /** Checks for validity and shows the browser's validation message if the control is invalid. */
2356
- reportValidity(): boolean;
2357
- /** Sets a custom validation message. Pass an empty string to restore validity. */
2358
- setCustomValidity(message: string): void;
2359
- /** Sets focus on the control. */
2360
- focus(options?: FocusOptions): void;
2361
- /** Removes focus from the control. */
2362
- blur(): void;
2363
- render(): TemplateResult<1>;
2364
- }
2365
-
2366
- declare global {
2367
- interface HTMLElementTagNameMap {
2368
- 'flow-ui-select': FlowSelect;
2369
- }
2370
- }
2371
-
2372
1896
  /**
2373
1897
  * @tagname flow-ui-color-mapper
2374
1898
  * @summary A component for defining mappings between data values and colors.
@@ -2461,12 +1985,47 @@ declare class FlowColorStopComponent extends FlowRdfElement implements FlowRdfFo
2461
1985
  render(): lit.TemplateResult<1>;
2462
1986
  }
2463
1987
 
2464
- declare global {
2465
- interface HTMLElementTagNameMap {
2466
- 'flow-ui-color-stop': FlowColorStopComponent;
2467
- }
2468
- }
2469
-
1988
+ declare global {
1989
+ interface HTMLElementTagNameMap {
1990
+ 'flow-ui-color-stop': FlowColorStopComponent;
1991
+ }
1992
+ }
1993
+
1994
+ /**
1995
+ * @summary Tags are used as labels to organize things or to indicate a selection.
1996
+ * @documentation https://developer.emu-analytics.net/docs/flow-ui-rdf/components/tag
1997
+ * @status stable
1998
+ * @since 2.0
1999
+ *
2000
+ * @dependency flow-ui-icon-button
2001
+ *
2002
+ * @slot - The tag's content.
2003
+ *
2004
+ * @event flow-ui-remove - Emitted when the remove button is activated.
2005
+ *
2006
+ * @csspart base - The component's base wrapper.
2007
+ * @csspart content - The tag's content.
2008
+ * @csspart remove-button - The tag's remove button, an `<flow-ui-icon-button>`.
2009
+ * @csspart remove-button__base - The remove button's exported `base` part.
2010
+ */
2011
+ declare class FlowTag extends FlowRdfElement {
2012
+ static styles: CSSResultGroup;
2013
+ static dependencies: {
2014
+ 'flow-icon-button': typeof FlowIconButton;
2015
+ };
2016
+ private readonly localize;
2017
+ /** The tag's theme variant. */
2018
+ variant: 'primary' | 'success' | 'neutral' | 'warning' | 'danger' | 'text';
2019
+ /** The tag's size. */
2020
+ size: 'small' | 'medium' | 'large';
2021
+ /** Draws a pill-style tag with rounded edges. */
2022
+ pill: boolean;
2023
+ /** Makes the tag removable and shows a remove button. */
2024
+ removable: boolean;
2025
+ private handleRemoveClick;
2026
+ render(): lit.TemplateResult<1>;
2027
+ }
2028
+
2470
2029
  declare global {
2471
2030
  interface HTMLElementTagNameMap {
2472
2031
  'flow-ui-tag': FlowTag;
@@ -2974,6 +2533,7 @@ declare class FlowUiMap extends FlowRdfElement {
2974
2533
  * is loading data.
2975
2534
  */
2976
2535
  busy: boolean;
2536
+ fixed: boolean;
2977
2537
  /**
2978
2538
  * The underlying core FlowMap instance. Note that this is
2979
2539
  * `undefined` until the map has been initialized.
@@ -3064,6 +2624,53 @@ declare global {
3064
2624
  }
3065
2625
  }
3066
2626
 
2627
+ /**
2628
+ * @tagname flow-ui-option
2629
+ * @summary Options define the selectable items within various form controls such as [select](/components/select).
2630
+ *
2631
+ * @dependency flow-ui-icon
2632
+ *
2633
+ * @slot - The option's label.
2634
+ * @slot prefix - Used to prepend an icon or similar element to the menu item.
2635
+ * @slot suffix - Used to append an icon or similar element to the menu item.
2636
+ *
2637
+ * @csspart checked-icon - The checked icon, a `<flow-ui-icon>` element.
2638
+ * @csspart base - The component's base wrapper.
2639
+ * @csspart label - The option's label.
2640
+ * @csspart prefix - The container that wraps the prefix.
2641
+ * @csspart suffix - The container that wraps the suffix.
2642
+ */
2643
+ declare class FlowOption extends FlowRdfElement {
2644
+ static styles: CSSResultGroup;
2645
+ static dependencies: {
2646
+ 'flow-ui-icon': typeof FlowIcon;
2647
+ };
2648
+ private cachedTextLabel;
2649
+ private readonly localize;
2650
+ defaultSlot: HTMLSlotElement;
2651
+ current: boolean;
2652
+ selected: boolean;
2653
+ hasHover: boolean;
2654
+ /**
2655
+ * The option's value. When selected, the containing form control will receive this value. The value must be unique
2656
+ * from other options in the same group. Values may not contain spaces, as spaces are used as delimiters when listing
2657
+ * multiple values.
2658
+ */
2659
+ value: string;
2660
+ /** Draws the option in a disabled state, preventing selection. */
2661
+ disabled: boolean;
2662
+ connectedCallback(): void;
2663
+ private handleDefaultSlotChange;
2664
+ private handleMouseEnter;
2665
+ private handleMouseLeave;
2666
+ handleDisabledChange(): void;
2667
+ handleSelectedChange(): void;
2668
+ handleValueChange(): void;
2669
+ /** Returns a plain text label based on the option's content. */
2670
+ getTextLabel(): string;
2671
+ render(): lit.TemplateResult<1>;
2672
+ }
2673
+
3067
2674
  declare global {
3068
2675
  interface HTMLElementTagNameMap {
3069
2676
  'flow-ui-option': FlowOption;
@@ -3412,26 +3019,231 @@ declare class FlowQueryBuilder extends FlowRdfElement {
3412
3019
  * @param ev
3413
3020
  * @param index
3414
3021
  */
3415
- private handleRemoveRule;
3416
- private handleSubQueryValueChange;
3417
- private handleFieldChanged;
3418
- private handleOperatorChanged;
3419
- private handleEnabledChanged;
3420
- private handleConditionChange;
3421
- private emitValueChange;
3422
- private operatorsForField;
3423
- private defaultOperatorsForFieldType;
3424
- private toolbarTemplate;
3425
- private ruleTemplate;
3426
- private ruleValueTemplate;
3427
- private subQueryBuilderTemplate;
3428
- private emptyRulesetTemplate;
3022
+ private handleRemoveRule;
3023
+ private handleSubQueryValueChange;
3024
+ private handleFieldChanged;
3025
+ private handleOperatorChanged;
3026
+ private handleEnabledChanged;
3027
+ private handleConditionChange;
3028
+ private emitValueChange;
3029
+ private operatorsForField;
3030
+ private defaultOperatorsForFieldType;
3031
+ private toolbarTemplate;
3032
+ private ruleTemplate;
3033
+ private ruleValueTemplate;
3034
+ private subQueryBuilderTemplate;
3035
+ private emptyRulesetTemplate;
3036
+ render(): lit.TemplateResult<1>;
3037
+ }
3038
+
3039
+ declare global {
3040
+ interface HTMLElementTagNameMap {
3041
+ 'flow-ui-query-builder': FlowQueryBuilder;
3042
+ }
3043
+ }
3044
+
3045
+ interface FormControlControllerOptions {
3046
+ /** A function that returns the form containing the form control. */
3047
+ form: (input: FlowRdfFormControl) => HTMLFormElement | null;
3048
+ /** A function that returns the form control's name, which will be submitted with the form data. */
3049
+ name: (input: FlowRdfFormControl) => string;
3050
+ /** A function that returns the form control's current value. */
3051
+ value: (input: FlowRdfFormControl) => unknown | unknown[];
3052
+ /** A function that returns the form control's default value. */
3053
+ defaultValue: (input: FlowRdfFormControl) => unknown | unknown[];
3054
+ /** A function that returns the form control's current disabled state. If disabled, the value won't be submitted. */
3055
+ disabled: (input: FlowRdfFormControl) => boolean;
3056
+ /**
3057
+ * A function that maps to the form control's reportValidity() function. When the control is invalid, this will
3058
+ * prevent submission and trigger the browser's constraint violation warning.
3059
+ */
3060
+ reportValidity: (input: FlowRdfFormControl) => boolean;
3061
+ /** A function that sets the form control's value */
3062
+ setValue: (input: FlowRdfFormControl, value: unknown) => void;
3063
+ /**
3064
+ * An array of event names to listen to. When all events in the list are emitted, the control will receive validity
3065
+ * states such as user-valid and user-invalid.user interacted validity states. */
3066
+ assumeInteractionOn: string[];
3067
+ }
3068
+ /** A reactive controller to allow form controls to participate in form submission, validation, etc. */
3069
+ declare class FormControlController implements ReactiveController {
3070
+ host: FlowRdfFormControl & ReactiveControllerHost;
3071
+ form?: HTMLFormElement | null;
3072
+ options: FormControlControllerOptions;
3073
+ constructor(host: ReactiveControllerHost & FlowRdfFormControl, options?: Partial<FormControlControllerOptions>);
3074
+ hostConnected(): void;
3075
+ hostDisconnected(): void;
3076
+ hostUpdated(): void;
3077
+ private attachForm;
3078
+ private detachForm;
3079
+ private handleFormData;
3080
+ private handleFormSubmit;
3081
+ private handleFormReset;
3082
+ private handleInteraction;
3083
+ private reportFormValidity;
3084
+ private setUserInteracted;
3085
+ private doAction;
3086
+ /** Returns the associated `<form>` element, if one exists. */
3087
+ getForm(): HTMLFormElement | null;
3088
+ /** Resets the form, restoring all the control to their default value */
3089
+ reset(submitter?: HTMLInputElement | FlowButton): void;
3090
+ /** Submits the form, triggering validation and form data injection. */
3091
+ submit(submitter?: HTMLInputElement | FlowButton): void;
3092
+ /**
3093
+ * Synchronously sets the form control's validity. Call this when you know the future validity but need to update
3094
+ * the host element immediately, i.e. before Lit updates the component in the next update.
3095
+ */
3096
+ setValidity(isValid: boolean): void;
3097
+ /**
3098
+ * Updates the form control's validity based on the current value of `host.validity.valid`. Call this when anything
3099
+ * that affects constraint validation changes so the component receives the correct validity states.
3100
+ */
3101
+ updateValidity(): void;
3102
+ /**
3103
+ * Dispatches a non-bubbling, cancelable custom event of type `flow-ui-invalid`.
3104
+ * If the `flow-ui-invalid` event will be cancelled then the original `invalid`
3105
+ * event (which may have been passed as argument) will also be cancelled.
3106
+ * If no original `invalid` event has been passed then the `flow-ui-invalid`
3107
+ * event will be cancelled before being dispatched.
3108
+ */
3109
+ emitInvalidEvent(originalInvalidEvent?: Event): void;
3110
+ }
3111
+
3112
+ /**
3113
+ * @tagname flow-ui-radio-group
3114
+ * @summary Radio groups are used to group multiple [radios](/components/radio) or [radio buttons](/components/radio-button) so they function as a single form control.
3115
+ *
3116
+ * @dependency flow-ui-button-group
3117
+ *
3118
+ * @slot - The default slot where `<flow-ui-radio>` or `<flow-ui-tool-button>` elements are placed.
3119
+ * @slot label - The radio group's label. Required for proper accessibility. Alternatively, you can use the `label`
3120
+ * attribute.
3121
+ *
3122
+ * @event flow-ui-change - Emitted when the radio group's selected value changes.
3123
+ * @event flow-ui-input - Emitted when the radio group receives user input.
3124
+ * @event flow-ui-invalid - Emitted when the form control has been checked for validity and its constraints aren't satisfied.
3125
+ *
3126
+ * @csspart form-control - The form control that wraps the label, input, and help text.
3127
+ * @csspart form-control-label - The label's wrapper.
3128
+ * @csspart form-control-input - The input's wrapper.
3129
+ * @csspart form-control-help-text - The help text's wrapper.
3130
+ * @csspart button-group - The button group that wraps radio buttons.
3131
+ * @csspart button-group__base - The button group's `base` part.
3132
+ */
3133
+ declare class FlowRadioGroup extends FlowRdfElement implements FlowRdfFormControl {
3134
+ static styles: CSSResultGroup;
3135
+ protected readonly formControlController: FormControlController;
3136
+ private readonly hasSlotController;
3137
+ private customValidityMessage;
3138
+ private validationTimeout;
3139
+ defaultSlot: HTMLSlotElement;
3140
+ validationInput: HTMLInputElement;
3141
+ private errorMessage;
3142
+ defaultValue: string;
3143
+ /**
3144
+ * The radio group's label. Required for proper accessibility. If you need to display HTML, use the `label` slot
3145
+ * instead.
3146
+ */
3147
+ label: string;
3148
+ /** The radio groups's help text. If you need to display HTML, use the `help-text` slot instead. */
3149
+ helpText: string;
3150
+ /** The name of the radio group, submitted as a name/value pair with form data. */
3151
+ name: string;
3152
+ /** The current value of the radio group, submitted as a name/value pair with form data. */
3153
+ value: string;
3154
+ /** The radio group's size. This size will be applied to all child radios and radio buttons. */
3155
+ size: 'small' | 'medium' | 'large';
3156
+ /**
3157
+ * By default, form controls are associated with the nearest containing `<form>` element. This attribute allows you
3158
+ * to place the form control outside of a form and associate it with the form that has this `id`. The form must be in
3159
+ * the same document or shadow root for this to work.
3160
+ */
3161
+ form: string;
3162
+ /** Ensures a child radio is checked before allowing the containing form to submit. */
3163
+ required: boolean;
3164
+ /**
3165
+ * Use vertical layout for the radio group.
3166
+ */
3167
+ vertical: boolean;
3168
+ /** Gets the validity state object */
3169
+ get validity(): ValidityState;
3170
+ /** Gets the validation message */
3171
+ get validationMessage(): string;
3172
+ connectedCallback(): void;
3173
+ firstUpdated(): void;
3174
+ private getAllRadios;
3175
+ private handleRadioClick;
3176
+ private handleKeyDown;
3177
+ private handleLabelClick;
3178
+ private handleInvalid;
3179
+ private syncRadios;
3180
+ private updateCheckedRadio;
3181
+ handleSizeChange(): void;
3182
+ handleValueChange(): void;
3183
+ /** Checks for validity but does not show a validation message. Returns `true` when valid and `false` when invalid. */
3184
+ checkValidity(): boolean;
3185
+ /** Gets the associated form, if one exists. */
3186
+ getForm(): HTMLFormElement | null;
3187
+ /** Checks for validity and shows the browser's validation message if the control is invalid. */
3188
+ reportValidity(): boolean;
3189
+ /** Sets a custom validation message. Pass an empty string to restore validity. */
3190
+ setCustomValidity(message?: string): void;
3191
+ render(): lit.TemplateResult<1>;
3192
+ }
3193
+
3194
+ declare global {
3195
+ interface HTMLElementTagNameMap {
3196
+ 'flow-ui-radio-group': FlowRadioGroup;
3197
+ }
3198
+ }
3199
+
3200
+ /**
3201
+ *
3202
+ * @tagname flow-ui-radio
3203
+ * @summary Radios allow the user to select a single option from a group.
3204
+ *
3205
+ * @dependency flow-ui-icon
3206
+ *
3207
+ * @slot - The radio's label.
3208
+ *
3209
+ * @event flow-ui-blur - Emitted when the control loses focus.
3210
+ * @event flow-ui-focus - Emitted when the control gains focus.
3211
+ *
3212
+ * @csspart base - The component's base wrapper.
3213
+ * @csspart control - The circular container that wraps the radio's checked state.
3214
+ * @csspart control--checked - The radio control when the radio is checked.
3215
+ * @csspart checked-icon - The checked icon, an `<flow-ui-icon>` element.
3216
+ * @csspart label - The container that wraps the radio's label.
3217
+ */
3218
+ declare class FlowRadio extends FlowRdfElement {
3219
+ static styles: CSSResultGroup;
3220
+ checked: boolean;
3221
+ protected hasFocus: boolean;
3222
+ /** The radio's value. When selected, the radio group will receive this value. */
3223
+ value: string;
3224
+ /**
3225
+ * The radio's size. When used inside a radio group, the size will be determined by the radio group's size so this
3226
+ * attribute can typically be omitted.
3227
+ */
3228
+ size: 'small' | 'medium' | 'large';
3229
+ /** Disables the radio. */
3230
+ disabled: boolean;
3231
+ connectedCallback(): void;
3232
+ disconnectedCallback(): void;
3233
+ private addEventListeners;
3234
+ private removeEventListeners;
3235
+ private handleBlur;
3236
+ private handleClick;
3237
+ private handleFocus;
3238
+ private setInitialAttributes;
3239
+ handleCheckedChange(): void;
3240
+ handleDisabledChange(): void;
3429
3241
  render(): lit.TemplateResult<1>;
3430
3242
  }
3431
3243
 
3432
3244
  declare global {
3433
3245
  interface HTMLElementTagNameMap {
3434
- 'flow-ui-query-builder': FlowQueryBuilder;
3246
+ 'flow-ui-radio': FlowRadio;
3435
3247
  }
3436
3248
  }
3437
3249
 
@@ -3612,6 +3424,195 @@ declare global {
3612
3424
  }
3613
3425
  }
3614
3426
 
3427
+ /**
3428
+ * @summary Selects allow you to choose items from a menu of predefined options.
3429
+ * @documentation https://shoelace.style/components/select
3430
+ * @status stable
3431
+ * @since 2.0
3432
+ *
3433
+ * @dependency flow-icon
3434
+ * @dependency flow-popup
3435
+ * @dependency flow-tag
3436
+ *
3437
+ * @slot - The listbox options. Must be `<flow-option>` elements. You can use `<flow-divider>` to group items visually.
3438
+ * @slot label - The input's label. Alternatively, you can use the `label` attribute.
3439
+ * @slot prefix - Used to prepend a presentational icon or similar element to the combobox.
3440
+ * @slot suffix - Used to append a presentational icon or similar element to the combobox.
3441
+ * @slot clear-icon - An icon to use in lieu of the default clear icon.
3442
+ * @slot expand-icon - The icon to show when the control is expanded and collapsed. Rotates on open and close.
3443
+ * @slot help-text - Text that describes how to use the input. Alternatively, you can use the `help-text` attribute.
3444
+ *
3445
+ * @event flow-ui-change - Emitted when the control's value changes.
3446
+ * @event flow-ui-clear - Emitted when the control's value is cleared.
3447
+ * @event flow-ui-input - Emitted when the control receives input.
3448
+ * @event flow-ui-focus - Emitted when the control gains focus.
3449
+ * @event flow-ui-blur - Emitted when the control loses focus.
3450
+ * @event flow-ui-show - Emitted when the select's menu opens.
3451
+ * @event flow-ui-after-show - Emitted after the select's menu opens and all animations are complete.
3452
+ * @event flow-ui-hide - Emitted when the select's menu closes.
3453
+ * @event flow-ui-after-hide - Emitted after the select's menu closes and all animations are complete.
3454
+ * @event flow-ui-invalid - Emitted when the form control has been checked for validity and its constraints aren't satisfied.
3455
+ *
3456
+ * @csspart form-control - The form control that wraps the label, input, and help text.
3457
+ * @csspart form-control-label - The label's wrapper.
3458
+ * @csspart form-control-input - The select's wrapper.
3459
+ * @csspart form-control-help-text - The help text's wrapper.
3460
+ * @csspart combobox - The container the wraps the prefix, suffix, combobox, clear icon, and expand button.
3461
+ * @csspart prefix - The container that wraps the prefix slot.
3462
+ * @csspart suffix - The container that wraps the suffix slot.
3463
+ * @csspart display-input - The element that displays the selected option's label, an `<input>` element.
3464
+ * @csspart listbox - The listbox container where options are slotted.
3465
+ * @csspart tags - The container that houses option tags when `multiselect` is used.
3466
+ * @csspart tag - The individual tags that represent each multiselect option.
3467
+ * @csspart tag__base - The tag's base part.
3468
+ * @csspart tag__content - The tag's content part.
3469
+ * @csspart tag__remove-button - The tag's remove button.
3470
+ * @csspart tag__remove-button__base - The tag's remove button base part.
3471
+ * @csspart clear-button - The clear button.
3472
+ * @csspart expand-icon - The container that wraps the expand icon.
3473
+ */
3474
+ declare class FlowSelect extends FlowRdfElement implements FlowRdfFormControl {
3475
+ static styles: CSSResultGroup;
3476
+ static dependencies: {
3477
+ 'flow-icon': typeof FlowIcon;
3478
+ 'flow-popup': typeof SlPopup;
3479
+ 'flow-tag': typeof FlowTag;
3480
+ };
3481
+ private readonly formControlController;
3482
+ private readonly hasSlotController;
3483
+ private readonly localize;
3484
+ private typeToSelectString;
3485
+ private typeToSelectTimeout;
3486
+ private closeWatcher;
3487
+ private mutationObserver;
3488
+ popup: SlPopup;
3489
+ combobox: HTMLSlotElement;
3490
+ displayInput: HTMLInputElement;
3491
+ valueInput: HTMLInputElement;
3492
+ listbox: HTMLSlotElement;
3493
+ private hasFocus;
3494
+ displayLabel: string;
3495
+ currentOption: FlowOption;
3496
+ selectedOptions: FlowOption[];
3497
+ /** The name of the select, submitted as a name/value pair with form data. */
3498
+ name: string;
3499
+ /**
3500
+ * The current value of the select, submitted as a name/value pair with form data. When `multiple` is enabled, the
3501
+ * value attribute will be a space-delimited list of values based on the options selected, and the value property will
3502
+ * be an array. **For this reason, values must not contain spaces.**
3503
+ */
3504
+ value: string | string[];
3505
+ /** The default value of the form control. Primarily used for resetting the form control. */
3506
+ defaultValue: string | string[];
3507
+ /** The select's size. */
3508
+ size: 'small' | 'medium' | 'large';
3509
+ /** Placeholder text to show as a hint when the select is empty. */
3510
+ placeholder: string;
3511
+ /** Allows more than one option to be selected. */
3512
+ multiple: boolean;
3513
+ /**
3514
+ * The maximum number of selected options to show when `multiple` is true. After the maximum, "+n" will be shown to
3515
+ * indicate the number of additional items that are selected. Set to 0 to remove the limit.
3516
+ */
3517
+ maxOptionsVisible: number;
3518
+ /** Disables the select control. */
3519
+ disabled: boolean;
3520
+ /** Adds a clear button when the select is not empty. */
3521
+ clearable: boolean;
3522
+ /**
3523
+ * Indicates whether or not the select is open. You can toggle this attribute to show and hide the menu, or you can
3524
+ * use the `show()` and `hide()` methods and this attribute will reflect the select's open state.
3525
+ */
3526
+ open: boolean;
3527
+ /**
3528
+ * Enable this option to prevent the listbox from being clipped when the component is placed inside a container with
3529
+ * `overflow: auto|scroll`. Hoisting uses a fixed positioning strategy that works in many, but not all, scenarios.
3530
+ */
3531
+ hoist: boolean;
3532
+ /** Draws a filled select. */
3533
+ filled: boolean;
3534
+ /** Draws a pill-style select with rounded edges. */
3535
+ pill: boolean;
3536
+ /** The select's label. If you need to display HTML, use the `label` slot instead. */
3537
+ label: string;
3538
+ /**
3539
+ * The preferred placement of the select's menu. Note that the actual placement may vary as needed to keep the listbox
3540
+ * inside of the viewport.
3541
+ */
3542
+ placement: 'top' | 'bottom';
3543
+ /** The select's help text. If you need to display HTML, use the `help-text` slot instead. */
3544
+ helpText: string;
3545
+ /**
3546
+ * By default, form controls are associated with the nearest containing `<form>` element. This attribute allows you
3547
+ * to place the form control outside of a form and associate it with the form that has this `id`. The form must be in
3548
+ * the same document or shadow root for this to work.
3549
+ */
3550
+ form: string;
3551
+ /** The select's required attribute. */
3552
+ required: boolean;
3553
+ /**
3554
+ * A function that customizes the tags to be rendered when multiple=true. The first argument is the option, the second
3555
+ * is the current tag's index. The function should return either a Lit TemplateResult or a string containing trusted HTML of the symbol to render at
3556
+ * the specified value.
3557
+ */
3558
+ getTag: (option: FlowOption, index: number) => TemplateResult | string | HTMLElement;
3559
+ /** Gets the validity state object */
3560
+ get validity(): ValidityState;
3561
+ /** Gets the validation message */
3562
+ get validationMessage(): string;
3563
+ connectedCallback(): void;
3564
+ disconnectedCallback(): void;
3565
+ private addOpenListeners;
3566
+ private removeOpenListeners;
3567
+ private handleFocus;
3568
+ private handleBlur;
3569
+ private handleDocumentFocusIn;
3570
+ private handleDocumentKeyDown;
3571
+ private handleDocumentMouseDown;
3572
+ private handleLabelClick;
3573
+ private handleComboboxMouseDown;
3574
+ private handleComboboxKeyDown;
3575
+ private handleClearClick;
3576
+ private handleClearMouseDown;
3577
+ private handleOptionClick;
3578
+ private handleDefaultSlotChange;
3579
+ private handleTagRemove;
3580
+ private getAllOptions;
3581
+ private getFirstOption;
3582
+ private setCurrentOption;
3583
+ private setSelectedOptions;
3584
+ private toggleOptionSelection;
3585
+ private selectionChanged;
3586
+ protected get tags(): TemplateResult<1>[];
3587
+ private handleInvalid;
3588
+ handleDisabledChange(): void;
3589
+ handleValueChange(): void;
3590
+ handleOpenChange(): Promise<void>;
3591
+ /** Shows the listbox. */
3592
+ show(): Promise<void>;
3593
+ /** Hides the listbox. */
3594
+ hide(): Promise<void>;
3595
+ /** Checks for validity but does not show a validation message. Returns `true` when valid and `false` when invalid. */
3596
+ checkValidity(): boolean;
3597
+ /** Gets the associated form, if one exists. */
3598
+ getForm(): HTMLFormElement | null;
3599
+ /** Checks for validity and shows the browser's validation message if the control is invalid. */
3600
+ reportValidity(): boolean;
3601
+ /** Sets a custom validation message. Pass an empty string to restore validity. */
3602
+ setCustomValidity(message: string): void;
3603
+ /** Sets focus on the control. */
3604
+ focus(options?: FocusOptions): void;
3605
+ /** Removes focus from the control. */
3606
+ blur(): void;
3607
+ render(): TemplateResult<1>;
3608
+ }
3609
+
3610
+ declare global {
3611
+ interface HTMLElementTagNameMap {
3612
+ 'flow-ui-select': FlowSelect;
3613
+ }
3614
+ }
3615
+
3615
3616
  /**
3616
3617
  * @tagname flow-ui-split-view-divider
3617
3618
  * @summary Split-view dividers are used internally by split-views to create resizable areas.
@@ -4669,10 +4670,13 @@ declare global {
4669
4670
  }
4670
4671
  }
4671
4672
 
4672
- type FlowDragStartEvent = CustomEvent<Record<PropertyKey, never>>;
4673
+ type FlowDragEvent = CustomEvent<{
4674
+ x: number;
4675
+ y: number;
4676
+ }>;
4673
4677
  declare global {
4674
4678
  interface GlobalEventHandlersEventMap {
4675
- 'flow-ui-drag-start': FlowDragStartEvent;
4679
+ 'flow-ui-drag': FlowDragEvent;
4676
4680
  }
4677
4681
  }
4678
4682
 
@@ -4683,13 +4687,10 @@ declare global {
4683
4687
  }
4684
4688
  }
4685
4689
 
4686
- type FlowDragEvent = CustomEvent<{
4687
- x: number;
4688
- y: number;
4689
- }>;
4690
+ type FlowDragStartEvent = CustomEvent<Record<PropertyKey, never>>;
4690
4691
  declare global {
4691
4692
  interface GlobalEventHandlersEventMap {
4692
- 'flow-ui-drag': FlowDragEvent;
4693
+ 'flow-ui-drag-start': FlowDragStartEvent;
4693
4694
  }
4694
4695
  }
4695
4696
 
@@ -4782,6 +4783,15 @@ declare global {
4782
4783
  }
4783
4784
  }
4784
4785
 
4786
+ type FlowMapLoadEvent = CustomEvent<{
4787
+ map: FlowMap;
4788
+ }>;
4789
+ declare global {
4790
+ interface GlobalEventHandlersEventMap {
4791
+ 'flow-ui-map-load': FlowMapLoadEvent;
4792
+ }
4793
+ }
4794
+
4785
4795
  type FlowMutationEvent = CustomEvent<{
4786
4796
  mutationList: MutationRecord[];
4787
4797
  }>;
@@ -4791,6 +4801,13 @@ declare global {
4791
4801
  }
4792
4802
  }
4793
4803
 
4804
+ type FlowPanelToggleEvent = CustomEvent<Record<PropertyKey, never>>;
4805
+ declare global {
4806
+ interface GlobalEventHandlersEventMap {
4807
+ 'flow-ui-panel-toggle': FlowPanelToggleEvent;
4808
+ }
4809
+ }
4810
+
4794
4811
  type FlowRemoveEvent = CustomEvent<Record<PropertyKey, never>>;
4795
4812
  declare global {
4796
4813
  interface GlobalEventHandlersEventMap {
@@ -4883,13 +4900,6 @@ declare global {
4883
4900
  }
4884
4901
  }
4885
4902
 
4886
- type FlowPanelToggleEvent = CustomEvent<Record<PropertyKey, never>>;
4887
- declare global {
4888
- interface GlobalEventHandlersEventMap {
4889
- 'flow-ui-panel-toggle': FlowPanelToggleEvent;
4890
- }
4891
- }
4892
-
4893
4903
  /** Gets a list of all supported animation names. */
4894
4904
  declare function getAnimationNames(): string[];
4895
4905
  /** Gets a list of all supported easing function names. */
@@ -4972,4 +4982,4 @@ declare const isRuleOrRuleset: (r: unknown) => r is FlowQueryBuilderRuleSet | Fl
4972
4982
 
4973
4983
  declare const converter: FlowQueryBuilderConverter;
4974
4984
 
4975
- export { FlowAfterCollapseEvent, FlowAfterExpandEvent, FlowAfterHideEvent, FlowAfterShowEvent, FlowAlert, SlAnimation as FlowAnimation, FlowAvatar, FlowBadge, FlowBlurEvent, FlowBreadcrumb, FlowBreadcrumbItem, FlowButton, FlowButtonGroup, FlowCalendar, FlowCancelEvent, FlowCard, FlowCarousel, FlowCarouselItem, FlowChangeEvent, FlowChart, FlowCheckbox, FlowClearEvent, FlowCloseEvent, FlowCollapseEvent, FlowColorMapper, FlowColorPicker, FlowColorStopComponent as FlowColorStop, FlowDatetimePicker as FlowDateTimePicker, FlowDetails, FlowDialog, FlowDivider, FlowDragEndEvent, FlowDragEvent, FlowDragStartEvent, FlowDrawer, SlDropdown as FlowDropdown, FlowErrorEvent, FlowExpandEvent, FlowFinishEvent, FlowFocusEvent, FlowGauge, FlowHideEvent, FlowHoverEvent, FlowIcon, FlowIconButton, FlowInitialFocusEvent, FlowInput, FlowInputEvent, FlowInvalidEvent, FlowLazyChangeEvent, FlowLazyLoadEvent, FlowLoadEvent, FlowUiMap as FlowMap, FlowMenu, FlowMenuItem, FlowMenuLabel, FlowMutationEvent, FlowMutationObserver, FlowOption, FlowPanel, FlowPanelHeader, FlowPanelToggleEvent, SlPopup as FlowPopup, FlowProgressBar, FlowProgressRing, FlowQueryBuilder, FlowQueryBuilderConfig, FlowQueryBuilderConverter, FlowQueryBuilderConverterOptions, FlowQueryBuilderDateField, FlowQueryBuilderDateTimeField, FlowQueryBuilderDateTimeFieldBase, FlowQueryBuilderField, FlowQueryBuilderFieldBase, FlowQueryBuilderFieldDefinition, FlowQueryBuilderFieldMap, FlowQueryBuilderFieldType, FlowQueryBuilderFieldTypeMap, FlowQueryBuilderMultiSelectField, FlowQueryBuilderNumberField, FlowQueryBuilderOption, FlowQueryBuilderRule, FlowQueryBuilderRuleSet, FlowQueryBuilderSelectField, FlowQueryBuilderStringField, FlowQueryBuilderTemplateFn, FlowQueryBuilderTimeField, FlowRadio, FlowRadioGroup, FlowRange, FlowRemoveEvent, FlowRepositionEvent, FlowRequestCloseEvent, FlowResizeEvent, FlowResizeObserver, FlowScrollView, FlowSelect, FlowSelectEvent, FlowSelectionChangeEvent, FlowShowEvent, FlowSlideChange, FlowSpinner, FlowSplitView, FlowPanelDivider as FlowSplitViewDivider, FlowSplitViewPane, FlowSplitViewToggleButton, FlowStartEvent, FlowStepper, FlowStepperPanel, FlowSwitch, FlowTab, FlowTabGroup, FlowTabHideEvent, FlowTabPanel, FlowTabShowEvent, FlowTag, FlowTextarea, FlowTimer, FlowToolButton, FlowToolButtonGroup, FlowTooltip, FlowTree, FlowTreeItem, addIcons, filterRuleSet, converter as flowQueryConverter, getAnimationNames, getBasePath, getEasingNames, initializeChartJs, isRule, isRuleOrRuleset, isRuleSet, registerChartComponent, registerIconLibrary, renameRuleSetFields, setBasePath, setDefaultLocale, setDefaultTimeZone, transformRuleSet, unregisterIconLibrary };
4985
+ export { FlowQueryBuilderConfig, FlowQueryBuilderConverter, FlowQueryBuilderConverterOptions, FlowQueryBuilderDateField, FlowQueryBuilderDateTimeField, FlowQueryBuilderDateTimeFieldBase, FlowQueryBuilderField, FlowQueryBuilderFieldBase, FlowQueryBuilderFieldDefinition, FlowQueryBuilderFieldMap, FlowQueryBuilderFieldType, FlowQueryBuilderFieldTypeMap, FlowQueryBuilderMultiSelectField, FlowQueryBuilderNumberField, FlowQueryBuilderOption, FlowQueryBuilderRule, FlowQueryBuilderRuleSet, FlowQueryBuilderSelectField, FlowQueryBuilderStringField, FlowQueryBuilderTemplateFn, FlowQueryBuilderTimeField, FlowAfterCollapseEvent as FlowUiAfterCollapseEvent, FlowAfterExpandEvent as FlowUiAfterExpandEvent, FlowAfterHideEvent as FlowUiAfterHideEvent, FlowAfterShowEvent as FlowUiAfterShowEvent, FlowAlert as FlowUiAlert, SlAnimation as FlowUiAnimation, FlowAvatar as FlowUiAvatar, FlowBadge as FlowUiBadge, FlowBlurEvent as FlowUiBlurEvent, FlowBreadcrumb as FlowUiBreadcrumb, FlowBreadcrumbItem as FlowUiBreadcrumbItem, FlowButton as FlowUiButton, FlowButtonGroup as FlowUiButtonGroup, FlowCalendar as FlowUiCalendar, FlowCancelEvent as FlowUiCancelEvent, FlowCard as FlowUiCard, FlowCarousel as FlowUiCarousel, FlowCarouselItem as FlowUiCarouselItem, FlowChangeEvent as FlowUiChangeEvent, FlowChart as FlowUiChart, FlowCheckbox as FlowUiCheckbox, FlowClearEvent as FlowUiClearEvent, FlowCloseEvent as FlowUiCloseEvent, FlowCollapseEvent as FlowUiCollapseEvent, FlowColorMapper as FlowUiColorMapper, FlowColorPicker as FlowUiColorPicker, FlowColorStopComponent as FlowUiColorStop, FlowDatetimePicker as FlowUiDateTimePicker, FlowDetails as FlowUiDetails, FlowDialog as FlowUiDialog, FlowDivider as FlowUiDivider, FlowDragEvent as FlowUiDragEvent, FlowDragStartEvent as FlowUiDragStartEvent, FlowDrawer as FlowUiDrawer, SlDropdown as FlowUiDropdown, FlowErrorEvent as FlowUiErrorEvent, FlowExpandEvent as FlowUiExpandEvent, FlowFinishEvent as FlowUiFinishEvent, FlowFocusEvent as FlowUiFocusEvent, FlowGauge as FlowUiGauge, FlowHideEvent as FlowUiHideEvent, FlowHoverEvent as FlowUiHoverEvent, FlowIcon as FlowUiIcon, FlowIconButton as FlowUiIconButton, FlowInitialFocusEvent as FlowUiInitialFocusEvent, FlowInput as FlowUiInput, FlowInputEvent as FlowUiInputEvent, FlowInvalidEvent as FlowUiInvalidEvent, FlowLazyChangeEvent as FlowUiLazyChangeEvent, FlowLazyLoadEvent as FlowUiLazyLoadEvent, FlowLoadEvent as FlowUiLoadEvent, FlowUiMap, FlowMapLoadEvent as FlowUiMapLoadEvent, FlowMenu as FlowUiMenu, FlowMenuItem as FlowUiMenuItem, FlowMenuLabel as FlowUiMenuLabel, FlowMutationEvent as FlowUiMutationEvent, FlowMutationObserver as FlowUiMutationObserver, FlowOption as FlowUiOption, FlowPanel as FlowUiPanel, FlowPanelHeader as FlowUiPanelHeader, FlowPanelToggleEvent as FlowUiPanelToggleEvent, SlPopup as FlowUiPopup, FlowProgressBar as FlowUiProgressBar, FlowProgressRing as FlowUiProgressRing, FlowQueryBuilder as FlowUiQueryBuilder, FlowRadio as FlowUiRadio, FlowRadioGroup as FlowUiRadioGroup, FlowRange as FlowUiRange, FlowRemoveEvent as FlowUiRemoveEvent, FlowRepositionEvent as FlowUiRepositionEvent, FlowRequestCloseEvent as FlowUiRequestCloseEvent, FlowResizeEvent as FlowUiResizeEvent, FlowResizeObserver as FlowUiResizeObserver, FlowScrollView as FlowUiScrollView, FlowSelect as FlowUiSelect, FlowSelectEvent as FlowUiSelectEvent, FlowSelectionChangeEvent as FlowUiSelectionChangeEvent, FlowShowEvent as FlowUiShowEvent, FlowSlideChange as FlowUiSlideChange, FlowSpinner as FlowUiSpinner, FlowSplitView as FlowUiSplitView, FlowPanelDivider as FlowUiSplitViewDivider, FlowSplitViewPane as FlowUiSplitViewPane, FlowSplitViewToggleButton as FlowUiSplitViewToggleButton, FlowStartEvent as FlowUiStartEvent, FlowStepper as FlowUiStepper, FlowStepperPanel as FlowUiStepperPanel, FlowSwitch as FlowUiSwitch, FlowTab as FlowUiTab, FlowTabGroup as FlowUiTabGroup, FlowTabHideEvent as FlowUiTabHideEvent, FlowTabPanel as FlowUiTabPanel, FlowTabShowEvent as FlowUiTabShowEvent, FlowTag as FlowUiTag, FlowTextarea as FlowUiTextarea, FlowTimer as FlowUiTimer, FlowToolButton as FlowUiToolButton, FlowToolButtonGroup as FlowUiToolButtonGroup, FlowTooltip as FlowUiTooltip, FlowTree as FlowUiTree, FlowTreeItem as FlowUiTreeItem, FlowDragEndEvent as FlowUiUiDragEndEvent, addIcons, filterRuleSet, converter as flowQueryConverter, getAnimationNames, getBasePath, getEasingNames, initializeChartJs, isRule, isRuleOrRuleset, isRuleSet, registerChartComponent, registerIconLibrary, renameRuleSetFields, setBasePath, setDefaultLocale, setDefaultTimeZone, transformRuleSet, unregisterIconLibrary };