@emuanalytics/flow-rdf-ui 4.1.0-preview.24 → 4.1.0-preview.26

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.
@@ -185,7 +185,6 @@ class FlowUiInput extends FlowRdfFormControl {
185
185
  }
186
186
  });
187
187
  }
188
- event.stopPropagation();
189
188
  }
190
189
  handlePasswordToggle() {
191
190
  this.passwordVisible = !this.passwordVisible;
@@ -71,9 +71,11 @@ function predicateFromRule(rule, config, options) {
71
71
  const caseInsensitive = isStringType(fieldConfig) && !!fieldConfig.caseInsensitive;
72
72
  switch (rule.operator) {
73
73
  case "=":
74
+ value = caseInsensitive ? String(value).toLowerCase() : value;
74
75
  operator = "==";
75
76
  break;
76
77
  case "!=":
78
+ value = caseInsensitive ? String(value).toLowerCase() : value;
77
79
  operator = "!=";
78
80
  break;
79
81
  case "<":
@@ -48,9 +48,11 @@ function predicateFromRule(rule, config, options) {
48
48
  const caseInsensitive = isStringType(fieldConfig) && fieldConfig.caseInsensitive;
49
49
  switch (rule.operator) {
50
50
  case "=":
51
+ field = caseInsensitive ? `downcase(${field})` : field;
51
52
  operator = "==";
52
53
  break;
53
54
  case "!=":
55
+ field = caseInsensitive ? `downcase(${field})` : field;
54
56
  operator = "!=";
55
57
  break;
56
58
  case "<":
@@ -26,6 +26,8 @@ const _FlowUiQueryBuilder = class _FlowUiQueryBuilder extends FlowRdfElement {
26
26
  constructor() {
27
27
  super(...arguments);
28
28
  this._value = { condition: "and", rules: [{ field: "", operator: "=", enabled: true }] };
29
+ // Track the last value control that had focus when the enter key was pressed
30
+ this.enterKeyElement = null;
29
31
  this.hasSlotController = new HasSlotController(
30
32
  this,
31
33
  "help-text",
@@ -176,6 +178,19 @@ const _FlowUiQueryBuilder = class _FlowUiQueryBuilder extends FlowRdfElement {
176
178
  this.emitValueChange();
177
179
  });
178
180
  }
181
+ handleValueKeyDown(ev) {
182
+ const hasModifier = ev.metaKey || ev.ctrlKey || ev.shiftKey || ev.altKey;
183
+ if (ev.key === "Enter" && !hasModifier) {
184
+ if (ev.target === this.enterKeyElement) {
185
+ this.enterKeyElement = null;
186
+ this.emit("flow-ui-apply");
187
+ } else {
188
+ this.enterKeyElement = ev.target;
189
+ }
190
+ } else {
191
+ this.enterKeyElement = null;
192
+ }
193
+ }
179
194
  handleToolbarMenuSelect(ev) {
180
195
  const menuItem = ev.detail.item;
181
196
  const emptyRuleSet = {
@@ -349,6 +364,7 @@ const _FlowUiQueryBuilder = class _FlowUiQueryBuilder extends FlowRdfElement {
349
364
  return html`
350
365
  <div
351
366
  class="query-builder__rule-value-wrapper"
367
+ @keydown=${this.handleValueKeyDown}
352
368
  @flow-ui-change=${(ev) => ev.stopPropagation()}
353
369
  @flow-ui-input=${(ev) => ev.stopPropagation()}
354
370
  >
@@ -1129,6 +1129,129 @@
1129
1129
  }
1130
1130
  ]
1131
1131
  },
1132
+ {
1133
+ "kind": "javascript-module",
1134
+ "path": "components/breadcrumb/breadcrumb.component.js",
1135
+ "declarations": [
1136
+ {
1137
+ "kind": "class",
1138
+ "description": "",
1139
+ "name": "FlowUiBreadcrumb",
1140
+ "cssParts": [
1141
+ {
1142
+ "description": "The component's base wrapper.",
1143
+ "name": "base"
1144
+ }
1145
+ ],
1146
+ "slots": [
1147
+ {
1148
+ "description": "One or more breadcrumb items to display.",
1149
+ "name": ""
1150
+ },
1151
+ {
1152
+ "description": "The separator to use between breadcrumb items. Works best with `<flow-ui-icon>`.",
1153
+ "name": "separator"
1154
+ }
1155
+ ],
1156
+ "members": [
1157
+ {
1158
+ "kind": "field",
1159
+ "name": "localize",
1160
+ "privacy": "private",
1161
+ "readonly": true,
1162
+ "default": "new LocalizeController(this)"
1163
+ },
1164
+ {
1165
+ "kind": "field",
1166
+ "name": "separatorDir",
1167
+ "privacy": "private"
1168
+ },
1169
+ {
1170
+ "kind": "field",
1171
+ "name": "defaultSlot",
1172
+ "type": {
1173
+ "text": "HTMLSlotElement"
1174
+ },
1175
+ "privacy": "private"
1176
+ },
1177
+ {
1178
+ "kind": "field",
1179
+ "name": "separatorSlot",
1180
+ "type": {
1181
+ "text": "HTMLSlotElement"
1182
+ },
1183
+ "privacy": "private"
1184
+ },
1185
+ {
1186
+ "kind": "field",
1187
+ "name": "label",
1188
+ "type": {
1189
+ "text": "string"
1190
+ },
1191
+ "default": "''",
1192
+ "description": "The label to use for the breadcrumb control. This will not be shown on the screen, but it will be announced by\nscreen readers and other assistive devices to provide more context for users.",
1193
+ "attribute": "label"
1194
+ },
1195
+ {
1196
+ "kind": "method",
1197
+ "name": "getSeparator",
1198
+ "privacy": "private"
1199
+ },
1200
+ {
1201
+ "kind": "method",
1202
+ "name": "handleSlotChange",
1203
+ "privacy": "private"
1204
+ }
1205
+ ],
1206
+ "attributes": [
1207
+ {
1208
+ "name": "label",
1209
+ "type": {
1210
+ "text": "string"
1211
+ },
1212
+ "default": "''",
1213
+ "description": "The label to use for the breadcrumb control. This will not be shown on the screen, but it will be announced by\nscreen readers and other assistive devices to provide more context for users.",
1214
+ "fieldName": "label"
1215
+ }
1216
+ ],
1217
+ "superclass": {
1218
+ "name": "FlowRdfElement",
1219
+ "module": "/src/internal/flow-ui-rdf-element"
1220
+ },
1221
+ "tagName": "flow-ui-breadcrumb",
1222
+ "summary": "Breadcrumbs provide a group of links so users can easily navigate a website's hierarchy.",
1223
+ "dependencies": [
1224
+ "flow-ui-icon"
1225
+ ],
1226
+ "customElement": true
1227
+ }
1228
+ ],
1229
+ "exports": [
1230
+ {
1231
+ "kind": "js",
1232
+ "name": "default",
1233
+ "declaration": {
1234
+ "name": "FlowUiBreadcrumb",
1235
+ "module": "components/breadcrumb/breadcrumb.component.js"
1236
+ }
1237
+ }
1238
+ ]
1239
+ },
1240
+ {
1241
+ "kind": "javascript-module",
1242
+ "path": "components/breadcrumb/breadcrumb.js",
1243
+ "declarations": [],
1244
+ "exports": [
1245
+ {
1246
+ "kind": "js",
1247
+ "name": "default",
1248
+ "declaration": {
1249
+ "name": "FlowUiBreadcrumb",
1250
+ "module": "components/breadcrumb/breadcrumb.js"
1251
+ }
1252
+ }
1253
+ ]
1254
+ },
1132
1255
  {
1133
1256
  "kind": "javascript-module",
1134
1257
  "path": "components/avatar/avatar.component.js",
@@ -1314,129 +1437,6 @@
1314
1437
  }
1315
1438
  ]
1316
1439
  },
1317
- {
1318
- "kind": "javascript-module",
1319
- "path": "components/breadcrumb/breadcrumb.component.js",
1320
- "declarations": [
1321
- {
1322
- "kind": "class",
1323
- "description": "",
1324
- "name": "FlowUiBreadcrumb",
1325
- "cssParts": [
1326
- {
1327
- "description": "The component's base wrapper.",
1328
- "name": "base"
1329
- }
1330
- ],
1331
- "slots": [
1332
- {
1333
- "description": "One or more breadcrumb items to display.",
1334
- "name": ""
1335
- },
1336
- {
1337
- "description": "The separator to use between breadcrumb items. Works best with `<flow-ui-icon>`.",
1338
- "name": "separator"
1339
- }
1340
- ],
1341
- "members": [
1342
- {
1343
- "kind": "field",
1344
- "name": "localize",
1345
- "privacy": "private",
1346
- "readonly": true,
1347
- "default": "new LocalizeController(this)"
1348
- },
1349
- {
1350
- "kind": "field",
1351
- "name": "separatorDir",
1352
- "privacy": "private"
1353
- },
1354
- {
1355
- "kind": "field",
1356
- "name": "defaultSlot",
1357
- "type": {
1358
- "text": "HTMLSlotElement"
1359
- },
1360
- "privacy": "private"
1361
- },
1362
- {
1363
- "kind": "field",
1364
- "name": "separatorSlot",
1365
- "type": {
1366
- "text": "HTMLSlotElement"
1367
- },
1368
- "privacy": "private"
1369
- },
1370
- {
1371
- "kind": "field",
1372
- "name": "label",
1373
- "type": {
1374
- "text": "string"
1375
- },
1376
- "default": "''",
1377
- "description": "The label to use for the breadcrumb control. This will not be shown on the screen, but it will be announced by\nscreen readers and other assistive devices to provide more context for users.",
1378
- "attribute": "label"
1379
- },
1380
- {
1381
- "kind": "method",
1382
- "name": "getSeparator",
1383
- "privacy": "private"
1384
- },
1385
- {
1386
- "kind": "method",
1387
- "name": "handleSlotChange",
1388
- "privacy": "private"
1389
- }
1390
- ],
1391
- "attributes": [
1392
- {
1393
- "name": "label",
1394
- "type": {
1395
- "text": "string"
1396
- },
1397
- "default": "''",
1398
- "description": "The label to use for the breadcrumb control. This will not be shown on the screen, but it will be announced by\nscreen readers and other assistive devices to provide more context for users.",
1399
- "fieldName": "label"
1400
- }
1401
- ],
1402
- "superclass": {
1403
- "name": "FlowRdfElement",
1404
- "module": "/src/internal/flow-ui-rdf-element"
1405
- },
1406
- "tagName": "flow-ui-breadcrumb",
1407
- "summary": "Breadcrumbs provide a group of links so users can easily navigate a website's hierarchy.",
1408
- "dependencies": [
1409
- "flow-ui-icon"
1410
- ],
1411
- "customElement": true
1412
- }
1413
- ],
1414
- "exports": [
1415
- {
1416
- "kind": "js",
1417
- "name": "default",
1418
- "declaration": {
1419
- "name": "FlowUiBreadcrumb",
1420
- "module": "components/breadcrumb/breadcrumb.component.js"
1421
- }
1422
- }
1423
- ]
1424
- },
1425
- {
1426
- "kind": "javascript-module",
1427
- "path": "components/breadcrumb/breadcrumb.js",
1428
- "declarations": [],
1429
- "exports": [
1430
- {
1431
- "kind": "js",
1432
- "name": "default",
1433
- "declaration": {
1434
- "name": "FlowUiBreadcrumb",
1435
- "module": "components/breadcrumb/breadcrumb.js"
1436
- }
1437
- }
1438
- ]
1439
- },
1440
1440
  {
1441
1441
  "kind": "javascript-module",
1442
1442
  "path": "components/badge/badge.component.js",
@@ -15181,6 +15181,15 @@
15181
15181
  "privacy": "private",
15182
15182
  "default": "{ condition: 'and', rules: [{ field: '', operator: '=', enabled: true }] }"
15183
15183
  },
15184
+ {
15185
+ "kind": "field",
15186
+ "name": "enterKeyElement",
15187
+ "type": {
15188
+ "text": "HTMLElement | null"
15189
+ },
15190
+ "privacy": "private",
15191
+ "default": "null"
15192
+ },
15184
15193
  {
15185
15194
  "kind": "method",
15186
15195
  "name": "registerFieldDefinition",
@@ -15455,6 +15464,18 @@
15455
15464
  }
15456
15465
  ]
15457
15466
  },
15467
+ {
15468
+ "kind": "method",
15469
+ "name": "handleValueKeyDown",
15470
+ "parameters": [
15471
+ {
15472
+ "name": "ev",
15473
+ "type": {
15474
+ "text": "KeyboardEvent"
15475
+ }
15476
+ }
15477
+ ]
15478
+ },
15458
15479
  {
15459
15480
  "kind": "method",
15460
15481
  "name": "handleToolbarMenuSelect",
@@ -15616,6 +15637,11 @@
15616
15637
  "description": "Emitted when the user clears all rules from the tool menu.",
15617
15638
  "name": "flow-ui-clear",
15618
15639
  "reactName": "onFlowUiClear"
15640
+ },
15641
+ {
15642
+ "description": "Emitted when the user presses 'Enter' twice in the same value input control.",
15643
+ "name": "flow-ui-apply",
15644
+ "reactName": "onFlowUiApply"
15619
15645
  }
15620
15646
  ],
15621
15647
  "attributes": [
@@ -24811,6 +24837,6 @@
24811
24837
  ],
24812
24838
  "package": {
24813
24839
  "name": "@emuanalytics/flow-rdf-ui",
24814
- "version": "4.1.0-preview.24"
24840
+ "version": "4.1.0-preview.26"
24815
24841
  }
24816
24842
  }
package/dist/index.d.mts CHANGED
@@ -35,6 +35,13 @@ declare global {
35
35
  }
36
36
  }
37
37
 
38
+ type FlowApplyEvent = CustomEvent<Record<PropertyKey, never>>;
39
+ declare global {
40
+ interface GlobalEventHandlersEventMap {
41
+ 'flow-ui-apply': FlowApplyEvent;
42
+ }
43
+ }
44
+
38
45
  type FlowBlurEvent = CustomEvent<Record<PropertyKey, never>>;
39
46
  declare global {
40
47
  interface GlobalEventHandlersEventMap {
@@ -1215,6 +1222,8 @@ type NoUnion<T, U = T> = T extends U ? ([U] extends [T] ? T : never) : never;
1215
1222
  * @event flow-ui-select - Emitted when a custom menu item is selected.
1216
1223
  * @event flow-ui-remove - Emitted when the user attempts to remove a rule or ruleset. Calling `event.preventDefault()` will cancel the removal.
1217
1224
  * @event flow-ui-clear - Emitted when the user clears all rules from the tool menu.
1225
+ * @event flow-ui-apply - Emitted when the user presses 'Enter' twice in the same value input control.
1226
+ *
1218
1227
  * @slot label - The component's label. Alternatively, you can use the `label` attribute.
1219
1228
  * @slot help-text - Text that describes how to use the component. Alternatively, you can use the `help-text` attribute.
1220
1229
  */
@@ -1222,6 +1231,7 @@ declare class FlowUiQueryBuilder extends FlowRdfElement {
1222
1231
  static styles: CSSResultGroup;
1223
1232
  private static fieldDefinitions;
1224
1233
  private _value;
1234
+ private enterKeyElement;
1225
1235
  /**
1226
1236
  * Register a custom field definition.
1227
1237
  *
@@ -1276,6 +1286,7 @@ declare class FlowUiQueryBuilder extends FlowRdfElement {
1276
1286
  private handleOperatorChanged;
1277
1287
  private handleConditionChange;
1278
1288
  private handleRuleMenuSelect;
1289
+ handleValueKeyDown(ev: KeyboardEvent): void;
1279
1290
  private handleToolbarMenuSelect;
1280
1291
  private emitValueChange;
1281
1292
  private operatorsForField;
@@ -6461,4 +6472,4 @@ declare global {
6461
6472
  }
6462
6473
  }
6463
6474
 
6464
- export { type BaseColorMapperField, type BaseColorStopOptions, type ColorMapperField, type ColorMapperOptions, type ColorMapperValue, type ColorStopOptions, type ColorStopValue, type FlowQueryBuilderConfig, type FlowQueryBuilderConverter, type FlowQueryBuilderConverterOptions, type FlowQueryBuilderDateField, type FlowQueryBuilderDateTimeField, type FlowQueryBuilderDateTimeFieldBase, type FlowQueryBuilderField, type FlowQueryBuilderFieldBase, type FlowQueryBuilderFieldDefinition, type FlowQueryBuilderFieldMap, type FlowQueryBuilderFieldType, type FlowQueryBuilderFieldTypeMap, type FlowQueryBuilderNumberField, type FlowQueryBuilderOption, type FlowQueryBuilderRule, type FlowQueryBuilderRuleSet, type FlowQueryBuilderSelectField, type FlowQueryBuilderStringField, type FlowQueryBuilderTemplateFn, type FlowQueryBuilderTimeField, type FlowAfterCollapseEvent as FlowUiAfterCollapseEvent, type FlowAfterExpandEvent as FlowUiAfterExpandEvent, type FlowAfterHideEvent as FlowUiAfterHideEvent, type FlowAfterShowEvent as FlowUiAfterShowEvent, FlowUiAlert, FlowUiAnimation, FlowUiAvatar, FlowUiBadge, FlowUiBaseControl, type FlowBlurEvent as FlowUiBlurEvent, FlowUiBreadcrumb, FlowUiBreadcrumbItem, FlowUiButton, FlowUiButtonGroup, FlowUiCalendar, type FlowCancelEvent as FlowUiCancelEvent, FlowUiCard, FlowUiCarousel, FlowUiCarouselItem, type FlowChangeEvent as FlowUiChangeEvent, FlowUiChart, FlowUiCheckbox, FlowUiCheckboxGroup, type FlowClearEvent as FlowUiClearEvent, type FlowCloseEvent as FlowUiCloseEvent, type FlowCollapseEvent as FlowUiCollapseEvent, type FlowCollapseTreeEvent as FlowUiCollapseSplitViewEvent, FlowUiColorMapper, FlowUiColorPicker, FlowUiColorStop, FlowUiDateTimePicker, FlowUiDetails, FlowUiDialog, FlowUiDivider, type FlowDragDropEvent as FlowUiDragDrop, type FlowDragEndEvent as FlowUiDragEndEvent, type FlowDragEvent as FlowUiDragEvent, type FlowDragOverEvent as FlowUiDragOverEvent, type FlowDragStartEvent as FlowUiDragStartEvent, FlowUiDrawer, FlowUiDropdown, type FlowErrorEvent as FlowUiErrorEvent, type FlowExpandEvent as FlowUiExpandEvent, type FlowExpandTreeEvent as FlowUiExpandSplitViewEvent, type FlowFinishEvent as FlowUiFinishEvent, type FlowFocusEvent as FlowUiFocusEvent, FlowUiFormGroup, FlowUiGauge, type FlowHideEvent as FlowUiHideEvent, type FlowHoverEvent as FlowUiHoverEvent, FlowUiIcon, FlowUiIconButton, type FlowInitialFocusEvent as FlowUiInitialFocusEvent, FlowUiInput, type FlowInputEvent as FlowUiInputEvent, type FlowInvalidEvent as FlowUiInvalidEvent, type FlowLazyChangeEvent as FlowUiLazyChangeEvent, type FlowLazyLoadEvent as FlowUiLazyLoadEvent, FlowUiList, FlowUiListItem, type FlowLoadEvent as FlowUiLoadEvent, FlowUiMap, type FlowMapLoadEvent as FlowUiMapLoadEvent, FlowUiMenu, FlowUiMenuItem, FlowUiMenuLabel, type FlowMutationEvent as FlowUiMutationEvent, FlowUiMutationObserver, FlowUiOption, FlowUiPanel, FlowUiPanelHeader, type FlowPanelToggleEvent as FlowUiPanelToggleEvent, FlowUiPopup, FlowUiProgressBar, FlowUiProgressRing, FlowUiQueryBuilder, FlowUiRadio, FlowUiRadioGroup, FlowUiRange, type FlowRemoveEvent as FlowUiRemoveEvent, type FlowRepositionEvent as FlowUiRepositionEvent, type FlowRequestCloseEvent as FlowUiRequestCloseEvent, type FlowResizeEvent as FlowUiResizeEvent, FlowUiResizeObserver, FlowUiScrollView, FlowUiSelect, type FlowSelectEvent as FlowUiSelectEvent, type FlowShowEvent as FlowUiShowEvent, type FlowSlideChange as FlowUiSlideChange, FlowUiSpinner, FlowUiSplitView, FlowUiSplitViewDivider, FlowUiSplitViewPane, FlowUiSplitViewToggleButton, type FlowStartEvent as FlowUiStartEvent, FlowUiStepper, FlowUiStepperPanel, FlowUiSwitch, FlowUiTab, FlowUiTabGroup, type FlowTabHideEvent as FlowUiTabHideEvent, FlowUiTabPanel, type FlowTabShowEvent as FlowUiTabShowEvent, FlowUiTag, FlowUiTextarea, FlowUiTimer, FlowUiToolButton, FlowUiToolButtonGroup, FlowUiTooltip, FlowUiTree, FlowUiTreeItem, FlowUiVisuallyHidden, JavaScriptFilterError, type JavaScriptFilterFn, LocalizeController, type NumberColorMapperField, type NumberColorStopOptions, type SelectColorMapperField, type SelectColorStopOptions, type StringColorMapperField, type StringColorStopOptions, type Translation, addIcons, colorMapperValueToMaplibreExpression, countRuleSet, escapeMaplibreString, filterRuleSet, converter$2 as flowQueryConverter, getAnimationNames, getEasingNames, initialize, initializeChartJs, isRule, isRuleOrRuleset, isRuleSet, converter$1 as javascriptFilterConverter, converter as mapLayerFilterConverter, registerChartComponent, registerComponents, registerIconLibrary, registerTranslation, renameRuleSetFields, setDefaultLocale, setDefaultTimeZone, transformRuleSet, unregisterIconLibrary };
6475
+ export { type BaseColorMapperField, type BaseColorStopOptions, type ColorMapperField, type ColorMapperOptions, type ColorMapperValue, type ColorStopOptions, type ColorStopValue, type FlowQueryBuilderConfig, type FlowQueryBuilderConverter, type FlowQueryBuilderConverterOptions, type FlowQueryBuilderDateField, type FlowQueryBuilderDateTimeField, type FlowQueryBuilderDateTimeFieldBase, type FlowQueryBuilderField, type FlowQueryBuilderFieldBase, type FlowQueryBuilderFieldDefinition, type FlowQueryBuilderFieldMap, type FlowQueryBuilderFieldType, type FlowQueryBuilderFieldTypeMap, type FlowQueryBuilderNumberField, type FlowQueryBuilderOption, type FlowQueryBuilderRule, type FlowQueryBuilderRuleSet, type FlowQueryBuilderSelectField, type FlowQueryBuilderStringField, type FlowQueryBuilderTemplateFn, type FlowQueryBuilderTimeField, type FlowAfterCollapseEvent as FlowUiAfterCollapseEvent, type FlowAfterExpandEvent as FlowUiAfterExpandEvent, type FlowAfterHideEvent as FlowUiAfterHideEvent, type FlowAfterShowEvent as FlowUiAfterShowEvent, FlowUiAlert, FlowUiAnimation, type FlowApplyEvent as FlowUiApplyEvent, FlowUiAvatar, FlowUiBadge, FlowUiBaseControl, type FlowBlurEvent as FlowUiBlurEvent, FlowUiBreadcrumb, FlowUiBreadcrumbItem, FlowUiButton, FlowUiButtonGroup, FlowUiCalendar, type FlowCancelEvent as FlowUiCancelEvent, FlowUiCard, FlowUiCarousel, FlowUiCarouselItem, type FlowChangeEvent as FlowUiChangeEvent, FlowUiChart, FlowUiCheckbox, FlowUiCheckboxGroup, type FlowClearEvent as FlowUiClearEvent, type FlowCloseEvent as FlowUiCloseEvent, type FlowCollapseEvent as FlowUiCollapseEvent, type FlowCollapseTreeEvent as FlowUiCollapseSplitViewEvent, FlowUiColorMapper, FlowUiColorPicker, FlowUiColorStop, FlowUiDateTimePicker, FlowUiDetails, FlowUiDialog, FlowUiDivider, type FlowDragDropEvent as FlowUiDragDrop, type FlowDragEndEvent as FlowUiDragEndEvent, type FlowDragEvent as FlowUiDragEvent, type FlowDragOverEvent as FlowUiDragOverEvent, type FlowDragStartEvent as FlowUiDragStartEvent, FlowUiDrawer, FlowUiDropdown, type FlowErrorEvent as FlowUiErrorEvent, type FlowExpandEvent as FlowUiExpandEvent, type FlowExpandTreeEvent as FlowUiExpandSplitViewEvent, type FlowFinishEvent as FlowUiFinishEvent, type FlowFocusEvent as FlowUiFocusEvent, FlowUiFormGroup, FlowUiGauge, type FlowHideEvent as FlowUiHideEvent, type FlowHoverEvent as FlowUiHoverEvent, FlowUiIcon, FlowUiIconButton, type FlowInitialFocusEvent as FlowUiInitialFocusEvent, FlowUiInput, type FlowInputEvent as FlowUiInputEvent, type FlowInvalidEvent as FlowUiInvalidEvent, type FlowLazyChangeEvent as FlowUiLazyChangeEvent, type FlowLazyLoadEvent as FlowUiLazyLoadEvent, FlowUiList, FlowUiListItem, type FlowLoadEvent as FlowUiLoadEvent, FlowUiMap, type FlowMapLoadEvent as FlowUiMapLoadEvent, FlowUiMenu, FlowUiMenuItem, FlowUiMenuLabel, type FlowMutationEvent as FlowUiMutationEvent, FlowUiMutationObserver, FlowUiOption, FlowUiPanel, FlowUiPanelHeader, type FlowPanelToggleEvent as FlowUiPanelToggleEvent, FlowUiPopup, FlowUiProgressBar, FlowUiProgressRing, FlowUiQueryBuilder, FlowUiRadio, FlowUiRadioGroup, FlowUiRange, type FlowRemoveEvent as FlowUiRemoveEvent, type FlowRepositionEvent as FlowUiRepositionEvent, type FlowRequestCloseEvent as FlowUiRequestCloseEvent, type FlowResizeEvent as FlowUiResizeEvent, FlowUiResizeObserver, FlowUiScrollView, FlowUiSelect, type FlowSelectEvent as FlowUiSelectEvent, type FlowShowEvent as FlowUiShowEvent, type FlowSlideChange as FlowUiSlideChange, FlowUiSpinner, FlowUiSplitView, FlowUiSplitViewDivider, FlowUiSplitViewPane, FlowUiSplitViewToggleButton, type FlowStartEvent as FlowUiStartEvent, FlowUiStepper, FlowUiStepperPanel, FlowUiSwitch, FlowUiTab, FlowUiTabGroup, type FlowTabHideEvent as FlowUiTabHideEvent, FlowUiTabPanel, type FlowTabShowEvent as FlowUiTabShowEvent, FlowUiTag, FlowUiTextarea, FlowUiTimer, FlowUiToolButton, FlowUiToolButtonGroup, FlowUiTooltip, FlowUiTree, FlowUiTreeItem, FlowUiVisuallyHidden, JavaScriptFilterError, type JavaScriptFilterFn, LocalizeController, type NumberColorMapperField, type NumberColorStopOptions, type SelectColorMapperField, type SelectColorStopOptions, type StringColorMapperField, type StringColorStopOptions, type Translation, addIcons, colorMapperValueToMaplibreExpression, countRuleSet, escapeMaplibreString, filterRuleSet, converter$2 as flowQueryConverter, getAnimationNames, getEasingNames, initialize, initializeChartJs, isRule, isRuleOrRuleset, isRuleSet, converter$1 as javascriptFilterConverter, converter as mapLayerFilterConverter, registerChartComponent, registerComponents, registerIconLibrary, registerTranslation, renameRuleSetFields, setDefaultLocale, setDefaultTimeZone, transformRuleSet, unregisterIconLibrary };
package/dist/index.d.ts CHANGED
@@ -35,6 +35,13 @@ declare global {
35
35
  }
36
36
  }
37
37
 
38
+ type FlowApplyEvent = CustomEvent<Record<PropertyKey, never>>;
39
+ declare global {
40
+ interface GlobalEventHandlersEventMap {
41
+ 'flow-ui-apply': FlowApplyEvent;
42
+ }
43
+ }
44
+
38
45
  type FlowBlurEvent = CustomEvent<Record<PropertyKey, never>>;
39
46
  declare global {
40
47
  interface GlobalEventHandlersEventMap {
@@ -1215,6 +1222,8 @@ type NoUnion<T, U = T> = T extends U ? ([U] extends [T] ? T : never) : never;
1215
1222
  * @event flow-ui-select - Emitted when a custom menu item is selected.
1216
1223
  * @event flow-ui-remove - Emitted when the user attempts to remove a rule or ruleset. Calling `event.preventDefault()` will cancel the removal.
1217
1224
  * @event flow-ui-clear - Emitted when the user clears all rules from the tool menu.
1225
+ * @event flow-ui-apply - Emitted when the user presses 'Enter' twice in the same value input control.
1226
+ *
1218
1227
  * @slot label - The component's label. Alternatively, you can use the `label` attribute.
1219
1228
  * @slot help-text - Text that describes how to use the component. Alternatively, you can use the `help-text` attribute.
1220
1229
  */
@@ -1222,6 +1231,7 @@ declare class FlowUiQueryBuilder extends FlowRdfElement {
1222
1231
  static styles: CSSResultGroup;
1223
1232
  private static fieldDefinitions;
1224
1233
  private _value;
1234
+ private enterKeyElement;
1225
1235
  /**
1226
1236
  * Register a custom field definition.
1227
1237
  *
@@ -1276,6 +1286,7 @@ declare class FlowUiQueryBuilder extends FlowRdfElement {
1276
1286
  private handleOperatorChanged;
1277
1287
  private handleConditionChange;
1278
1288
  private handleRuleMenuSelect;
1289
+ handleValueKeyDown(ev: KeyboardEvent): void;
1279
1290
  private handleToolbarMenuSelect;
1280
1291
  private emitValueChange;
1281
1292
  private operatorsForField;
@@ -6461,4 +6472,4 @@ declare global {
6461
6472
  }
6462
6473
  }
6463
6474
 
6464
- export { type BaseColorMapperField, type BaseColorStopOptions, type ColorMapperField, type ColorMapperOptions, type ColorMapperValue, type ColorStopOptions, type ColorStopValue, type FlowQueryBuilderConfig, type FlowQueryBuilderConverter, type FlowQueryBuilderConverterOptions, type FlowQueryBuilderDateField, type FlowQueryBuilderDateTimeField, type FlowQueryBuilderDateTimeFieldBase, type FlowQueryBuilderField, type FlowQueryBuilderFieldBase, type FlowQueryBuilderFieldDefinition, type FlowQueryBuilderFieldMap, type FlowQueryBuilderFieldType, type FlowQueryBuilderFieldTypeMap, type FlowQueryBuilderNumberField, type FlowQueryBuilderOption, type FlowQueryBuilderRule, type FlowQueryBuilderRuleSet, type FlowQueryBuilderSelectField, type FlowQueryBuilderStringField, type FlowQueryBuilderTemplateFn, type FlowQueryBuilderTimeField, type FlowAfterCollapseEvent as FlowUiAfterCollapseEvent, type FlowAfterExpandEvent as FlowUiAfterExpandEvent, type FlowAfterHideEvent as FlowUiAfterHideEvent, type FlowAfterShowEvent as FlowUiAfterShowEvent, FlowUiAlert, FlowUiAnimation, FlowUiAvatar, FlowUiBadge, FlowUiBaseControl, type FlowBlurEvent as FlowUiBlurEvent, FlowUiBreadcrumb, FlowUiBreadcrumbItem, FlowUiButton, FlowUiButtonGroup, FlowUiCalendar, type FlowCancelEvent as FlowUiCancelEvent, FlowUiCard, FlowUiCarousel, FlowUiCarouselItem, type FlowChangeEvent as FlowUiChangeEvent, FlowUiChart, FlowUiCheckbox, FlowUiCheckboxGroup, type FlowClearEvent as FlowUiClearEvent, type FlowCloseEvent as FlowUiCloseEvent, type FlowCollapseEvent as FlowUiCollapseEvent, type FlowCollapseTreeEvent as FlowUiCollapseSplitViewEvent, FlowUiColorMapper, FlowUiColorPicker, FlowUiColorStop, FlowUiDateTimePicker, FlowUiDetails, FlowUiDialog, FlowUiDivider, type FlowDragDropEvent as FlowUiDragDrop, type FlowDragEndEvent as FlowUiDragEndEvent, type FlowDragEvent as FlowUiDragEvent, type FlowDragOverEvent as FlowUiDragOverEvent, type FlowDragStartEvent as FlowUiDragStartEvent, FlowUiDrawer, FlowUiDropdown, type FlowErrorEvent as FlowUiErrorEvent, type FlowExpandEvent as FlowUiExpandEvent, type FlowExpandTreeEvent as FlowUiExpandSplitViewEvent, type FlowFinishEvent as FlowUiFinishEvent, type FlowFocusEvent as FlowUiFocusEvent, FlowUiFormGroup, FlowUiGauge, type FlowHideEvent as FlowUiHideEvent, type FlowHoverEvent as FlowUiHoverEvent, FlowUiIcon, FlowUiIconButton, type FlowInitialFocusEvent as FlowUiInitialFocusEvent, FlowUiInput, type FlowInputEvent as FlowUiInputEvent, type FlowInvalidEvent as FlowUiInvalidEvent, type FlowLazyChangeEvent as FlowUiLazyChangeEvent, type FlowLazyLoadEvent as FlowUiLazyLoadEvent, FlowUiList, FlowUiListItem, type FlowLoadEvent as FlowUiLoadEvent, FlowUiMap, type FlowMapLoadEvent as FlowUiMapLoadEvent, FlowUiMenu, FlowUiMenuItem, FlowUiMenuLabel, type FlowMutationEvent as FlowUiMutationEvent, FlowUiMutationObserver, FlowUiOption, FlowUiPanel, FlowUiPanelHeader, type FlowPanelToggleEvent as FlowUiPanelToggleEvent, FlowUiPopup, FlowUiProgressBar, FlowUiProgressRing, FlowUiQueryBuilder, FlowUiRadio, FlowUiRadioGroup, FlowUiRange, type FlowRemoveEvent as FlowUiRemoveEvent, type FlowRepositionEvent as FlowUiRepositionEvent, type FlowRequestCloseEvent as FlowUiRequestCloseEvent, type FlowResizeEvent as FlowUiResizeEvent, FlowUiResizeObserver, FlowUiScrollView, FlowUiSelect, type FlowSelectEvent as FlowUiSelectEvent, type FlowShowEvent as FlowUiShowEvent, type FlowSlideChange as FlowUiSlideChange, FlowUiSpinner, FlowUiSplitView, FlowUiSplitViewDivider, FlowUiSplitViewPane, FlowUiSplitViewToggleButton, type FlowStartEvent as FlowUiStartEvent, FlowUiStepper, FlowUiStepperPanel, FlowUiSwitch, FlowUiTab, FlowUiTabGroup, type FlowTabHideEvent as FlowUiTabHideEvent, FlowUiTabPanel, type FlowTabShowEvent as FlowUiTabShowEvent, FlowUiTag, FlowUiTextarea, FlowUiTimer, FlowUiToolButton, FlowUiToolButtonGroup, FlowUiTooltip, FlowUiTree, FlowUiTreeItem, FlowUiVisuallyHidden, JavaScriptFilterError, type JavaScriptFilterFn, LocalizeController, type NumberColorMapperField, type NumberColorStopOptions, type SelectColorMapperField, type SelectColorStopOptions, type StringColorMapperField, type StringColorStopOptions, type Translation, addIcons, colorMapperValueToMaplibreExpression, countRuleSet, escapeMaplibreString, filterRuleSet, converter$2 as flowQueryConverter, getAnimationNames, getEasingNames, initialize, initializeChartJs, isRule, isRuleOrRuleset, isRuleSet, converter$1 as javascriptFilterConverter, converter as mapLayerFilterConverter, registerChartComponent, registerComponents, registerIconLibrary, registerTranslation, renameRuleSetFields, setDefaultLocale, setDefaultTimeZone, transformRuleSet, unregisterIconLibrary };
6475
+ export { type BaseColorMapperField, type BaseColorStopOptions, type ColorMapperField, type ColorMapperOptions, type ColorMapperValue, type ColorStopOptions, type ColorStopValue, type FlowQueryBuilderConfig, type FlowQueryBuilderConverter, type FlowQueryBuilderConverterOptions, type FlowQueryBuilderDateField, type FlowQueryBuilderDateTimeField, type FlowQueryBuilderDateTimeFieldBase, type FlowQueryBuilderField, type FlowQueryBuilderFieldBase, type FlowQueryBuilderFieldDefinition, type FlowQueryBuilderFieldMap, type FlowQueryBuilderFieldType, type FlowQueryBuilderFieldTypeMap, type FlowQueryBuilderNumberField, type FlowQueryBuilderOption, type FlowQueryBuilderRule, type FlowQueryBuilderRuleSet, type FlowQueryBuilderSelectField, type FlowQueryBuilderStringField, type FlowQueryBuilderTemplateFn, type FlowQueryBuilderTimeField, type FlowAfterCollapseEvent as FlowUiAfterCollapseEvent, type FlowAfterExpandEvent as FlowUiAfterExpandEvent, type FlowAfterHideEvent as FlowUiAfterHideEvent, type FlowAfterShowEvent as FlowUiAfterShowEvent, FlowUiAlert, FlowUiAnimation, type FlowApplyEvent as FlowUiApplyEvent, FlowUiAvatar, FlowUiBadge, FlowUiBaseControl, type FlowBlurEvent as FlowUiBlurEvent, FlowUiBreadcrumb, FlowUiBreadcrumbItem, FlowUiButton, FlowUiButtonGroup, FlowUiCalendar, type FlowCancelEvent as FlowUiCancelEvent, FlowUiCard, FlowUiCarousel, FlowUiCarouselItem, type FlowChangeEvent as FlowUiChangeEvent, FlowUiChart, FlowUiCheckbox, FlowUiCheckboxGroup, type FlowClearEvent as FlowUiClearEvent, type FlowCloseEvent as FlowUiCloseEvent, type FlowCollapseEvent as FlowUiCollapseEvent, type FlowCollapseTreeEvent as FlowUiCollapseSplitViewEvent, FlowUiColorMapper, FlowUiColorPicker, FlowUiColorStop, FlowUiDateTimePicker, FlowUiDetails, FlowUiDialog, FlowUiDivider, type FlowDragDropEvent as FlowUiDragDrop, type FlowDragEndEvent as FlowUiDragEndEvent, type FlowDragEvent as FlowUiDragEvent, type FlowDragOverEvent as FlowUiDragOverEvent, type FlowDragStartEvent as FlowUiDragStartEvent, FlowUiDrawer, FlowUiDropdown, type FlowErrorEvent as FlowUiErrorEvent, type FlowExpandEvent as FlowUiExpandEvent, type FlowExpandTreeEvent as FlowUiExpandSplitViewEvent, type FlowFinishEvent as FlowUiFinishEvent, type FlowFocusEvent as FlowUiFocusEvent, FlowUiFormGroup, FlowUiGauge, type FlowHideEvent as FlowUiHideEvent, type FlowHoverEvent as FlowUiHoverEvent, FlowUiIcon, FlowUiIconButton, type FlowInitialFocusEvent as FlowUiInitialFocusEvent, FlowUiInput, type FlowInputEvent as FlowUiInputEvent, type FlowInvalidEvent as FlowUiInvalidEvent, type FlowLazyChangeEvent as FlowUiLazyChangeEvent, type FlowLazyLoadEvent as FlowUiLazyLoadEvent, FlowUiList, FlowUiListItem, type FlowLoadEvent as FlowUiLoadEvent, FlowUiMap, type FlowMapLoadEvent as FlowUiMapLoadEvent, FlowUiMenu, FlowUiMenuItem, FlowUiMenuLabel, type FlowMutationEvent as FlowUiMutationEvent, FlowUiMutationObserver, FlowUiOption, FlowUiPanel, FlowUiPanelHeader, type FlowPanelToggleEvent as FlowUiPanelToggleEvent, FlowUiPopup, FlowUiProgressBar, FlowUiProgressRing, FlowUiQueryBuilder, FlowUiRadio, FlowUiRadioGroup, FlowUiRange, type FlowRemoveEvent as FlowUiRemoveEvent, type FlowRepositionEvent as FlowUiRepositionEvent, type FlowRequestCloseEvent as FlowUiRequestCloseEvent, type FlowResizeEvent as FlowUiResizeEvent, FlowUiResizeObserver, FlowUiScrollView, FlowUiSelect, type FlowSelectEvent as FlowUiSelectEvent, type FlowShowEvent as FlowUiShowEvent, type FlowSlideChange as FlowUiSlideChange, FlowUiSpinner, FlowUiSplitView, FlowUiSplitViewDivider, FlowUiSplitViewPane, FlowUiSplitViewToggleButton, type FlowStartEvent as FlowUiStartEvent, FlowUiStepper, FlowUiStepperPanel, FlowUiSwitch, FlowUiTab, FlowUiTabGroup, type FlowTabHideEvent as FlowUiTabHideEvent, FlowUiTabPanel, type FlowTabShowEvent as FlowUiTabShowEvent, FlowUiTag, FlowUiTextarea, FlowUiTimer, FlowUiToolButton, FlowUiToolButtonGroup, FlowUiTooltip, FlowUiTree, FlowUiTreeItem, FlowUiVisuallyHidden, JavaScriptFilterError, type JavaScriptFilterFn, LocalizeController, type NumberColorMapperField, type NumberColorStopOptions, type SelectColorMapperField, type SelectColorStopOptions, type StringColorMapperField, type StringColorStopOptions, type Translation, addIcons, colorMapperValueToMaplibreExpression, countRuleSet, escapeMaplibreString, filterRuleSet, converter$2 as flowQueryConverter, getAnimationNames, getEasingNames, initialize, initializeChartJs, isRule, isRuleOrRuleset, isRuleSet, converter$1 as javascriptFilterConverter, converter as mapLayerFilterConverter, registerChartComponent, registerComponents, registerIconLibrary, registerTranslation, renameRuleSetFields, setDefaultLocale, setDefaultTimeZone, transformRuleSet, unregisterIconLibrary };
@@ -1,3 +1,3 @@
1
- const version = "4.1.0-preview.24";
1
+ const version = "4.1.0-preview.26";
2
2
 
3
3
  export { version };
@@ -158,6 +158,18 @@
158
158
  ],
159
159
  "references": []
160
160
  },
161
+ {
162
+ "name": "flow-ui-breadcrumb",
163
+ "description": "Breadcrumbs provide a group of links so users can easily navigate a website's hierarchy.\n\n\n---\n\n\n\n\n### **Slots:**\n - _default_ - One or more breadcrumb items to display.\n- **separator** - The separator to use between breadcrumb items. Works best with `<flow-ui-icon>`.\n\n### **CSS Parts:**\n - **base** - The component's base wrapper.",
164
+ "attributes": [
165
+ {
166
+ "name": "label",
167
+ "description": "The label to use for the breadcrumb control. This will not be shown on the screen, but it will be announced by\nscreen readers and other assistive devices to provide more context for users.",
168
+ "values": []
169
+ }
170
+ ],
171
+ "references": []
172
+ },
161
173
  {
162
174
  "name": "flow-ui-avatar",
163
175
  "description": "Avatars are used to represent a person or object.\n\n\n---\n\n\n\n\n### **Slots:**\n - **icon** - The default icon to use when no image or initials are present. Works best with `<flow-ui-icon>`.\n\n### **CSS Properties:**\n - **--size** - The size of the avatar. _(default: undefined)_\n\n### **CSS Parts:**\n - **base** - The component's base wrapper.\n- **icon** - The container that wraps the avatar's icon.\n- **initials** - The container that wraps the avatar's initials.\n- **image** - The avatar image. Only shown when the `image` attribute is set.",
@@ -194,18 +206,6 @@
194
206
  ],
195
207
  "references": []
196
208
  },
197
- {
198
- "name": "flow-ui-breadcrumb",
199
- "description": "Breadcrumbs provide a group of links so users can easily navigate a website's hierarchy.\n\n\n---\n\n\n\n\n### **Slots:**\n - _default_ - One or more breadcrumb items to display.\n- **separator** - The separator to use between breadcrumb items. Works best with `<flow-ui-icon>`.\n\n### **CSS Parts:**\n - **base** - The component's base wrapper.",
200
- "attributes": [
201
- {
202
- "name": "label",
203
- "description": "The label to use for the breadcrumb control. This will not be shown on the screen, but it will be announced by\nscreen readers and other assistive devices to provide more context for users.",
204
- "values": []
205
- }
206
- ],
207
- "references": []
208
- },
209
209
  {
210
210
  "name": "flow-ui-badge",
211
211
  "description": "Badges are used to draw attention and display statuses or counts.\n\n\n---\n\n\n\n\n### **Slots:**\n - _default_ - The badge's content.\n\n### **CSS Parts:**\n - **base** - The component's base wrapper.",
@@ -2053,7 +2053,7 @@
2053
2053
  },
2054
2054
  {
2055
2055
  "name": "flow-ui-query-builder",
2056
- "description": "Query builder component\n\n\n---\n\n\n\n\n### **Events:**\n - **flow-ui-input** - Emitted when the control's value changes.\n- **flow-ui-change** - Emitted when the control's value changes.\n- **flow-ui-select** - Emitted when a custom menu item is selected.\n- **flow-ui-remove** - Emitted when the user attempts to remove a rule or ruleset. Calling `event.preventDefault()` will cancel the removal.\n- **flow-ui-clear** - Emitted when the user clears all rules from the tool menu.\n\n### **Methods:**\n - **registerFieldDefinition(type: _T_, fieldDefinition: _FlowQueryBuilderFieldDefinition<NoUnion<T>>_)** - Register a custom field definition.\n\nA field definition is used to add support for a custom field type. A field type comprises:\n\n- a field `type` string\n- a `template` function that returns the template for the field's value control\n- an array of `operators` that are valid for the field\n\n### **Slots:**\n - **label** - The component's label. Alternatively, you can use the `label` attribute.\n- **help-text** - Text that describes how to use the component. Alternatively, you can use the `help-text` attribute.",
2056
+ "description": "Query builder component\n\n\n---\n\n\n\n\n### **Events:**\n - **flow-ui-input** - Emitted when the control's value changes.\n- **flow-ui-change** - Emitted when the control's value changes.\n- **flow-ui-select** - Emitted when a custom menu item is selected.\n- **flow-ui-remove** - Emitted when the user attempts to remove a rule or ruleset. Calling `event.preventDefault()` will cancel the removal.\n- **flow-ui-clear** - Emitted when the user clears all rules from the tool menu.\n- **flow-ui-apply** - Emitted when the user presses 'Enter' twice in the same value input control.\n\n### **Methods:**\n - **registerFieldDefinition(type: _T_, fieldDefinition: _FlowQueryBuilderFieldDefinition<NoUnion<T>>_)** - Register a custom field definition.\n\nA field definition is used to add support for a custom field type. A field type comprises:\n\n- a field `type` string\n- a `template` function that returns the template for the field's value control\n- an array of `operators` that are valid for the field\n\n### **Slots:**\n - **label** - The component's label. Alternatively, you can use the `label` attribute.\n- **help-text** - Text that describes how to use the component. Alternatively, you can use the `help-text` attribute.",
2057
2057
  "attributes": [
2058
2058
  {
2059
2059
  "name": "size",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@emuanalytics/flow-rdf-ui",
3
- "version": "4.1.0-preview.24",
3
+ "version": "4.1.0-preview.26",
4
4
  "type": "module",
5
5
  "module": "dist/index.mjs",
6
6
  "types": "dist/index.d.ts",