@limetech/lime-crm-building-blocks 1.129.0 → 1.130.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +7 -0
- package/dist/cjs/lime-crm-building-blocks.cjs.js +1 -1
- package/dist/cjs/limebb-rule-editor.cjs.entry.js +101 -9
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/collection/components/rule-editor/chip-picker-view.js +2 -2
- package/dist/collection/components/rule-editor/rule-editor.js +102 -10
- package/dist/collection/components/rule-editor/view-helpers.js +9 -0
- package/dist/components/limebb-rule-editor.js +1 -1
- package/dist/esm/lime-crm-building-blocks.js +1 -1
- package/dist/esm/limebb-rule-editor.entry.js +102 -10
- package/dist/esm/loader.js +1 -1
- package/dist/lime-crm-building-blocks/lime-crm-building-blocks.esm.js +1 -1
- package/dist/lime-crm-building-blocks/p-f1d9e133.entry.js +1 -0
- package/dist/types/components/rule-editor/rule-editor-views.d.ts +2 -1
- package/dist/types/components/rule-editor/rule-editor.d.ts +54 -3
- package/dist/types/components/rule-editor/view-helpers.d.ts +8 -1
- package/dist/types/components.d.ts +30 -2
- package/package.json +2 -2
- package/dist/lime-crm-building-blocks/p-bd6e12e6.entry.js +0 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,3 +1,10 @@
|
|
|
1
|
+
## [1.130.0](https://github.com/Lundalogik/lime-crm-building-blocks/compare/v1.129.0...v1.130.0) (2026-06-04)
|
|
2
|
+
|
|
3
|
+
### Features
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
* **rule-editor:** hide primitives whose read slots aren't reachable ([b1323da](https://github.com/Lundalogik/lime-crm-building-blocks/commit/b1323da93589b94762f4194d66978a561a3a01dc))
|
|
7
|
+
|
|
1
8
|
## [1.129.0](https://github.com/Lundalogik/lime-crm-building-blocks/compare/v1.128.0...v1.129.0) (2026-06-03)
|
|
2
9
|
|
|
3
10
|
### Features
|
|
@@ -19,7 +19,7 @@ var patchBrowser = () => {
|
|
|
19
19
|
|
|
20
20
|
patchBrowser().then(async (options) => {
|
|
21
21
|
await appGlobals.globalScripts();
|
|
22
|
-
return index.bootstrapLazy(JSON.parse("[[\"limebb-lime-query-builder.cjs\",[[1,\"limebb-lime-query-builder\",{\"platform\":[16],\"context\":[16],\"value\":[16],\"label\":[1],\"activeLimetype\":[1,\"active-limetype\"],\"limetypes\":[32],\"mode\":[32],\"codeValue\":[32],\"limetype\":[32],\"filter\":[32],\"internalResponseFormat\":[32],\"limit\":[32],\"orderBy\":[32],\"description\":[32]}]]],[\"limebb-rule-arg-filter-editor.cjs\",[[1,\"limebb-rule-arg-filter-editor\",{\"platform\":[16],\"context\":[16],\"value\":[16],\"resolvedContext\":[32]}]]],[\"limebb-feed.cjs\",[[1,\"limebb-feed\",{\"platform\":[16],\"context\":[16],\"items\":[16],\"emptyStateMessage\":[1,\"empty-state-message\"],\"heading\":[1],\"loading\":[4],\"minutesOfProximity\":[2,\"minutes-of-proximity\"],\"totalCount\":[2,\"total-count\"],\"direction\":[513],\"lastVisitedTimestamp\":[1,\"last-visited-timestamp\"],\"highlightedItemId\":[8,\"highlighted-item-id\"]},null,{\"highlightedItemId\":[{\"highlightedItemIdChanged\":0}]}]]],[\"limebb-kanban.cjs\",[[1,\"limebb-kanban\",{\"platform\":[16],\"context\":[16],\"groups\":[16]}]]],[\"limebb-chat-list.cjs\",[[1,\"limebb-chat-list\",{\"platform\":[16],\"context\":[16],\"items\":[16],\"loading\":[516],\"isTypingIndicatorVisible\":[516,\"is-typing-indicator-visible\"],\"lastVisitedTimestamp\":[513,\"last-visited-timestamp\"],\"order\":[513]},null,{\"items\":[{\"handleItemsChange\":0}],\"order\":[{\"handleItemsChange\":0}]}]]],[\"limebb-lime-query-response-format-builder.cjs\",[[1,\"limebb-lime-query-response-format-builder\",{\"platform\":[16],\"context\":[16],\"limetype\":[1],\"value\":[16],\"label\":[1],\"helperText\":[1,\"helper-text\"],\"limetypes\":[32],\"mode\":[32],\"codeValue\":[32],\"internalValue\":[32]}]]],[\"limebb-document-chips.cjs\",[[1,\"limebb-document-chips\",{\"accessibleLabel\":[513,\"accessible-label\"],\"files\":[16]},null,{\"files\":[{\"onFilesChanged\":0}]}]]],[\"limebb-limeobject-file-viewer.cjs\",[[1,\"limebb-limeobject-file-viewer\",{\"platform\":[16],\"context\":[16],\"property\":[1],\"fileTypes\":[16],\"limeobject\":[32],\"limetype\":[32]}]]],[\"limebb-text-editor.cjs\",[[17,\"limebb-text-editor\",{\"platform\":[16],\"context\":[16],\"allowMentioning\":[4,\"allow-mentioning\"],\"contentType\":[1,\"content-type\"],\"language\":[513],\"disabled\":[516],\"readonly\":[516],\"helperText\":[513,\"helper-text\"],\"placeholder\":[513],\"label\":[513],\"invalid\":[516],\"required\":[516],\"selectedContext\":[16],\"ui\":[513],\"allowResize\":[4,\"allow-resize\"],\"value\":[1],\"draftIdentifier\":[1,\"draft-identifier\"],\"triggerMap\":[16],\"customElements\":[16],\"allowInlineImages\":[4,\"allow-inline-images\"],\"items\":[32],\"highlightedItemIndex\":[32],\"editorPickerQuery\":[32],\"searchableLimetypes\":[32],\"isPickerOpen\":[32],\"isSearching\":[32]},null,{\"isPickerOpen\":[{\"watchOpen\":0}],\"editorPickerQuery\":[{\"watchQuery\":0}]}]]],[\"limebb-data-cells.cjs\",[[1,\"limebb-data-cells\",{\"platform\":[16],\"context\":[16],\"limeobject\":[8],\"items\":[16],\"image\":[16],\"relativeDates\":[4,\"relative-dates\"]}]]],[\"limebb-date-range.cjs\",[[1,\"limebb-date-range\",{\"platform\":[16],\"context\":[16],\"startTime\":[16],\"endTime\":[16],\"startTimeLabel\":[1,\"start-time-label\"],\"endTimeLabel\":[1,\"end-time-label\"],\"language\":[1],\"timeFormat\":[1,\"time-format\"],\"type\":[1]}]]],[\"limebb-document-picker.cjs\",[[1,\"limebb-document-picker\",{\"platform\":[16],\"context\":[16],\"items\":[16],\"label\":[513],\"helperText\":[513,\"helper-text\"],\"invalid\":[516],\"required\":[516],\"type\":[513]}]]],[\"limebb-info-tile-currency-format.cjs\",[[1,\"limebb-info-tile-currency-format\",{\"platform\":[16],\"context\":[16],\"value\":[16]}]]],[\"limebb-notification-list.cjs\",[[1,\"limebb-notification-list\",{\"platform\":[16],\"context\":[16],\"items\":[16],\"loading\":[4],\"lastVisitedTimestamp\":[1,\"last-visited-timestamp\"]},null,{\"items\":[{\"handleItemsChange\":0}]}]]],[\"limebb-rule-editor.cjs\",[[1,\"limebb-rule-editor\",{\"platform\":[16],\"context\":[16],\"value\":[16],\"availableContexts\":[16],\"required\":[516],\"readonly\":[516],\"disabled\":[516],\"label\":[513],\"helperText\":[1,\"helper-text\"],\"issues\":[32],\"openChipPath\":[32]},null,{\"value\":[{\"onValueChange\":0}],\"availableContexts\":[{\"onAvailableContextsChange\":0}]}]]],[\"limebb-alert-dialog.cjs\",[[257,\"limebb-alert-dialog\",{\"type\":[513],\"open\":[516],\"icon\":[513],\"heading\":[513],\"subheading\":[1]}]]],[\"limebb-browser.cjs\",[[17,\"limebb-browser\",{\"platform\":[16],\"context\":[16],\"items\":[16],\"layout\":[1],\"filter\":[32]}]]],[\"limebb-color-palette-picker.cjs\",[[1,\"limebb-color-palette-picker\",{\"value\":[513],\"required\":[516],\"readonly\":[516],\"invalid\":[516],\"disabled\":[516],\"label\":[513],\"helperText\":[1,\"helper-text\"]}]]],[\"limebb-color-palette-swatches.cjs\",[[1,\"limebb-color-palette-swatches\",{\"colors\":[16]}]]],[\"limebb-component-config.cjs\",[[1,\"limebb-component-config\",{\"platform\":[16],\"context\":[16],\"value\":[16],\"required\":[4],\"readonly\":[4],\"disabled\":[4],\"label\":[1],\"helperText\":[1,\"helper-text\"],\"formInfo\":[16],\"type\":[1],\"nameField\":[1,\"name-field\"],\"configComponent\":[32],\"configViewType\":[32]},null,{\"formInfo\":[{\"watchFormInfo\":0}],\"configComponent\":[{\"watchconfigComponent\":0}]}]]],[\"limebb-component-picker.cjs\",[[1,\"limebb-component-picker\",{\"platform\":[16],\"context\":[16],\"type\":[1],\"tags\":[16],\"value\":[1],\"copyLabel\":[1,\"copy-label\"],\"hideCopyButton\":[4,\"hide-copy-button\"],\"required\":[4],\"readonly\":[4],\"disabled\":[4],\"label\":[1],\"helperText\":[1,\"helper-text\"]}]]],[\"limebb-composer-toolbar.cjs\",[[257,\"limebb-composer-toolbar\",{\"platform\":[16],\"mentions\":[516],\"textSnippets\":[516,\"text-snippets\"],\"internalLinks\":[516,\"internal-links\"],\"richText\":[516,\"rich-text\"],\"fileInput\":[16]}]]],[\"limebb-dashboard-widget.cjs\",[[257,\"limebb-dashboard-widget\",{\"heading\":[513],\"subheading\":[513],\"supportingText\":[513,\"supporting-text\"],\"icon\":[513]}]]],[\"limebb-icon-picker.cjs\",[[1,\"limebb-icon-picker\",{\"value\":[1],\"required\":[4],\"readonly\":[4],\"invalid\":[4],\"disabled\":[4],\"label\":[1],\"helperText\":[1,\"helper-text\"]}]]],[\"limebb-info-tile.cjs\",[[1,\"limebb-info-tile\",{\"platform\":[16],\"context\":[16],\"filterId\":[513,\"filter-id\"],\"disabled\":[4],\"icon\":[513],\"label\":[1],\"prefix\":[1],\"suffix\":[1],\"propertyName\":[1,\"property-name\"],\"aggregateOperator\":[1,\"aggregate-operator\"],\"format\":[16],\"config\":[32],\"filters\":[32],\"value\":[32],\"loading\":[32],\"error\":[32],\"limetypes\":[32]},null,{\"filterId\":[{\"watchFilterId\":0}],\"propertyName\":[{\"watchPropertyName\":0}],\"aggregateOperator\":[{\"watchAggregateOperator\":0}]}]]],[\"limebb-info-tile-date-format.cjs\",[[1,\"limebb-info-tile-date-format\",{\"value\":[16]}]]],[\"limebb-info-tile-decimal-format.cjs\",[[1,\"limebb-info-tile-decimal-format\",{\"value\":[16]}]]],[\"limebb-info-tile-format.cjs\",[[1,\"limebb-info-tile-format\",{\"platform\":[16],\"context\":[16],\"type\":[1],\"value\":[16]}]]],[\"limebb-info-tile-relative-date-format.cjs\",[[1,\"limebb-info-tile-relative-date-format\",{\"value\":[16]}]]],[\"limebb-info-tile-unit-format.cjs\",[[1,\"limebb-info-tile-unit-format\",{\"value\":[16]}]]],[\"limebb-loader.cjs\",[[1,\"limebb-loader\",{\"platform\":[16],\"context\":[16]}]]],[\"limebb-locale-picker.cjs\",[[1,\"limebb-locale-picker\",{\"platform\":[16],\"context\":[16],\"value\":[1],\"required\":[4],\"disabled\":[4],\"label\":[1],\"helperText\":[1,\"helper-text\"],\"readonly\":[4],\"multipleChoice\":[4,\"multiple-choice\"],\"allLanguages\":[32]}]]],[\"limebb-mention.cjs\",[[257,\"limebb-mention\",{\"limetype\":[1],\"objectid\":[2],\"limeobject\":[32]}]]],[\"limebb-mention-group-counter.cjs\",[[1,\"limebb-mention-group-counter\",{\"count\":[2],\"limetype\":[16],\"helperLabel\":[1,\"helper-label\"]}]]],[\"limebb-object-chip.cjs\",[[1,\"limebb-object-chip\",{\"limetype\":[1],\"objectid\":[2],\"size\":[1],\"platform\":[16],\"data\":[32]},null,{\"limetype\":[{\"handlePropChange\":0}],\"objectid\":[{\"handlePropChange\":0}]}]]],[\"limebb-rule-gate.cjs\",[[257,\"limebb-rule-gate\",{\"platform\":[16],\"rule\":[16],\"scope\":[16],\"shouldRender\":[32]},null,{\"rule\":[{\"onRuleChange\":0}],\"scope\":[{\"onScopeChange\":0}]}]]],[\"limebb-trend-indicator.cjs\",[[1,\"limebb-trend-indicator\",{\"platform\":[16],\"context\":[16],\"value\":[520],\"formerValue\":[514,\"former-value\"],\"suffix\":[513],\"label\":[513],\"invalid\":[516],\"required\":[516],\"helperText\":[513,\"helper-text\"],\"reducePresence\":[516,\"reduce-presence\"]},null,{\"value\":[{\"valueChanged\":0}]}]]],[\"limebb-feed-item-thumbnail-file-info.cjs\",[[1,\"limebb-feed-item-thumbnail-file-info\",{\"description\":[1]}]]],[\"limebb-feed-timeline-item.cjs\",[[1,\"limebb-feed-timeline-item\",{\"platform\":[16],\"context\":[16],\"item\":[16],\"ui\":[513],\"helperText\":[1,\"helper-text\"],\"hasError\":[516,\"has-error\"],\"isBundled\":[516,\"is-bundled\"],\"headingCanExpand\":[32],\"isHeadingExpanded\":[32],\"showMore\":[32],\"isTall\":[32]}]]],[\"limebb-kanban-group.cjs\",[[1,\"limebb-kanban-group\",{\"platform\":[16],\"context\":[16],\"identifier\":[1],\"heading\":[513],\"help\":[1],\"items\":[16],\"summary\":[1],\"loading\":[516],\"totalCount\":[514,\"total-count\"]}]]],[\"limebb-document-item.cjs\",[[17,\"limebb-document-item\",{\"platform\":[16],\"context\":[16],\"item\":[16],\"type\":[513],\"fileTypes\":[16]}]]],[\"limebb-empty-state.cjs\",[[1,\"limebb-empty-state\",{\"heading\":[513],\"value\":[513],\"icon\":[16]}]]],[\"limebb-text-editor-picker.cjs\",[[1,\"limebb-text-editor-picker\",{\"items\":[16],\"open\":[516],\"isSearching\":[4,\"is-searching\"],\"emptyMessage\":[1,\"empty-message\"]},null,{\"open\":[{\"watchOpen\":0}]}]]],[\"limebb-currency-picker.cjs\",[[1,\"limebb-currency-picker\",{\"platform\":[16],\"context\":[16],\"label\":[513],\"currencies\":[16],\"helperText\":[513,\"helper-text\"],\"required\":[516],\"readonly\":[516],\"invalid\":[516],\"disabled\":[516],\"value\":[1]}]]],[\"limebb-date-picker.cjs\",[[1,\"limebb-date-picker\",{\"platform\":[16],\"context\":[16],\"disabled\":[516],\"readonly\":[516],\"invalid\":[516],\"label\":[513],\"placeholder\":[513],\"helperText\":[513,\"helper-text\"],\"required\":[516],\"value\":[1],\"type\":[513]}]]],[\"limebb-live-docs-info.cjs\",[[1,\"limebb-live-docs-info\"]]],[\"limebb-notification-item.cjs\",[[1,\"limebb-notification-item\",{\"platform\":[16],\"context\":[16],\"item\":[16]}]]],[\"limebb-percentage-visualizer.cjs\",[[1,\"limebb-percentage-visualizer\",{\"platform\":[16],\"context\":[16],\"value\":[520],\"rangeMax\":[514,\"range-max\"],\"rangeMin\":[514,\"range-min\"],\"multiplier\":[514],\"label\":[513],\"invalid\":[516],\"required\":[516],\"helperText\":[513,\"helper-text\"],\"reducePresence\":[516,\"reduce-presence\"],\"displayPercentageColors\":[516,\"display-percentage-colors\"]},null,{\"value\":[{\"valueChanged\":0}]}]]],[\"limebb-rule-chip-popover.cjs\",[[1,\"limebb-rule-chip-popover\",{\"platform\":[16],\"context\":[16],\"refNode\":[16],\"isNegated\":[4,\"is-negated\"],\"metadata\":[16],\"readonly\":[4],\"disabled\":[4],\"isMutable\":[4,\"is-mutable\"]}]]],[\"limebb-lime-query-filter-builder.cjs\",[[1,\"limebb-lime-query-filter-builder\",{\"platform\":[16],\"context\":[16],\"limetype\":[1],\"activeLimetype\":[1,\"active-limetype\"],\"expression\":[16]}]]],[\"limebb-kanban-item.cjs\",[[257,\"limebb-kanban-item\",{\"platform\":[16],\"context\":[16],\"item\":[16]}]]],[\"limebb-property-selector.cjs\",[[1,\"limebb-property-selector\",{\"platform\":[16],\"context\":[16],\"limetype\":[1],\"value\":[1],\"label\":[1],\"required\":[4],\"helperText\":[1,\"helper-text\"],\"limetypes\":[32],\"isOpen\":[32],\"navigationPath\":[32]}]]],[\"limebb-lime-query-order-by-item.cjs\",[[1,\"limebb-lime-query-order-by-item\",{\"platform\":[16],\"context\":[16],\"limetype\":[1],\"item\":[16]}]]],[\"limebb-lime-query-order-by-editor_2.cjs\",[[1,\"limebb-lime-query-order-by-editor\",{\"platform\":[16],\"context\":[16],\"limetype\":[1],\"value\":[16],\"label\":[1],\"items\":[32]},null,{\"value\":[{\"handleValueChange\":0}]}],[0,\"limebb-limetype-field\",{\"platform\":[16],\"context\":[16],\"label\":[513],\"required\":[516],\"readonly\":[516],\"disabled\":[516],\"value\":[513],\"helperText\":[513,\"helper-text\"],\"invalid\":[4],\"limetypes\":[16],\"propertyFields\":[16],\"fieldName\":[1,\"field-name\"],\"formInfo\":[16]}]]],[\"limebb-chat-icon-list_3.cjs\",[[1,\"limebb-chat-icon-list\",{\"item\":[16]}],[1,\"limebb-chat-item\",{\"platform\":[16],\"context\":[16],\"item\":[16],\"helperText\":[1,\"helper-text\"],\"hasError\":[516,\"has-error\"]}],[1,\"limebb-typing-indicator\"]]],[\"limebb-lime-query-response-format-editor_2.cjs\",[[1,\"limebb-lime-query-response-format-editor\",{\"platform\":[16],\"context\":[16],\"limetype\":[1],\"value\":[16],\"label\":[1],\"items\":[32]}],[1,\"limebb-lime-query-response-format-item\",{\"platform\":[16],\"context\":[16],\"limetype\":[1],\"item\":[16],\"showAliasInput\":[32],\"showDescriptionInput\":[32]}]]],[\"limebb-lime-query-filter-comparison_2.cjs\",[[1,\"limebb-lime-query-filter-expression\",{\"platform\":[16],\"context\":[16],\"label\":[1],\"limetype\":[1],\"activeLimetype\":[1,\"active-limetype\"],\"expression\":[16]}],[1,\"limebb-lime-query-filter-comparison\",{\"platform\":[16],\"context\":[16],\"label\":[513],\"limetype\":[1],\"activeLimetype\":[1,\"active-limetype\"],\"expression\":[16]}]]],[\"limebb-navigation-button_2.cjs\",[[257,\"limebb-summary-popover\",{\"triggerDelay\":[514,\"trigger-delay\"],\"heading\":[513],\"subheading\":[513],\"image\":[16],\"file\":[16],\"icon\":[513],\"value\":[1],\"openDirection\":[513,\"open-direction\"],\"popoverMaxWidth\":[513,\"popover-max-width\"],\"popoverMaxHeight\":[513,\"popover-max-height\"],\"actions\":[16],\"isPopoverOpen\":[32]}],[17,\"limebb-navigation-button\",{\"href\":[513],\"tooltipLabel\":[513,\"tooltip-label\"],\"tooltipHelperLabel\":[513,\"tooltip-helper-label\"],\"type\":[513]}]]],[\"limebb-lime-query-filter-group_3.cjs\",[[1,\"limebb-lime-query-value-input\",{\"platform\":[16],\"context\":[16],\"limetype\":[1],\"activeLimetype\":[1,\"active-limetype\"],\"propertyPath\":[1,\"property-path\"],\"operator\":[1],\"value\":[8],\"label\":[1],\"limetypes\":[32],\"inputMode\":[32]}],[1,\"limebb-lime-query-filter-group\",{\"platform\":[16],\"context\":[16],\"limetype\":[1],\"activeLimetype\":[1,\"active-limetype\"],\"expression\":[16],\"value\":[32]}],[1,\"limebb-lime-query-filter-not\",{\"platform\":[16],\"context\":[16],\"label\":[1],\"limetype\":[1],\"activeLimetype\":[1,\"active-limetype\"],\"expression\":[16]}]]]]"), options);
|
|
22
|
+
return index.bootstrapLazy(JSON.parse("[[\"limebb-lime-query-builder.cjs\",[[1,\"limebb-lime-query-builder\",{\"platform\":[16],\"context\":[16],\"value\":[16],\"label\":[1],\"activeLimetype\":[1,\"active-limetype\"],\"limetypes\":[32],\"mode\":[32],\"codeValue\":[32],\"limetype\":[32],\"filter\":[32],\"internalResponseFormat\":[32],\"limit\":[32],\"orderBy\":[32],\"description\":[32]}]]],[\"limebb-rule-arg-filter-editor.cjs\",[[1,\"limebb-rule-arg-filter-editor\",{\"platform\":[16],\"context\":[16],\"value\":[16],\"resolvedContext\":[32]}]]],[\"limebb-feed.cjs\",[[1,\"limebb-feed\",{\"platform\":[16],\"context\":[16],\"items\":[16],\"emptyStateMessage\":[1,\"empty-state-message\"],\"heading\":[1],\"loading\":[4],\"minutesOfProximity\":[2,\"minutes-of-proximity\"],\"totalCount\":[2,\"total-count\"],\"direction\":[513],\"lastVisitedTimestamp\":[1,\"last-visited-timestamp\"],\"highlightedItemId\":[8,\"highlighted-item-id\"]},null,{\"highlightedItemId\":[{\"highlightedItemIdChanged\":0}]}]]],[\"limebb-kanban.cjs\",[[1,\"limebb-kanban\",{\"platform\":[16],\"context\":[16],\"groups\":[16]}]]],[\"limebb-chat-list.cjs\",[[1,\"limebb-chat-list\",{\"platform\":[16],\"context\":[16],\"items\":[16],\"loading\":[516],\"isTypingIndicatorVisible\":[516,\"is-typing-indicator-visible\"],\"lastVisitedTimestamp\":[513,\"last-visited-timestamp\"],\"order\":[513]},null,{\"items\":[{\"handleItemsChange\":0}],\"order\":[{\"handleItemsChange\":0}]}]]],[\"limebb-lime-query-response-format-builder.cjs\",[[1,\"limebb-lime-query-response-format-builder\",{\"platform\":[16],\"context\":[16],\"limetype\":[1],\"value\":[16],\"label\":[1],\"helperText\":[1,\"helper-text\"],\"limetypes\":[32],\"mode\":[32],\"codeValue\":[32],\"internalValue\":[32]}]]],[\"limebb-document-chips.cjs\",[[1,\"limebb-document-chips\",{\"accessibleLabel\":[513,\"accessible-label\"],\"files\":[16]},null,{\"files\":[{\"onFilesChanged\":0}]}]]],[\"limebb-limeobject-file-viewer.cjs\",[[1,\"limebb-limeobject-file-viewer\",{\"platform\":[16],\"context\":[16],\"property\":[1],\"fileTypes\":[16],\"limeobject\":[32],\"limetype\":[32]}]]],[\"limebb-text-editor.cjs\",[[17,\"limebb-text-editor\",{\"platform\":[16],\"context\":[16],\"allowMentioning\":[4,\"allow-mentioning\"],\"contentType\":[1,\"content-type\"],\"language\":[513],\"disabled\":[516],\"readonly\":[516],\"helperText\":[513,\"helper-text\"],\"placeholder\":[513],\"label\":[513],\"invalid\":[516],\"required\":[516],\"selectedContext\":[16],\"ui\":[513],\"allowResize\":[4,\"allow-resize\"],\"value\":[1],\"draftIdentifier\":[1,\"draft-identifier\"],\"triggerMap\":[16],\"customElements\":[16],\"allowInlineImages\":[4,\"allow-inline-images\"],\"items\":[32],\"highlightedItemIndex\":[32],\"editorPickerQuery\":[32],\"searchableLimetypes\":[32],\"isPickerOpen\":[32],\"isSearching\":[32]},null,{\"isPickerOpen\":[{\"watchOpen\":0}],\"editorPickerQuery\":[{\"watchQuery\":0}]}]]],[\"limebb-data-cells.cjs\",[[1,\"limebb-data-cells\",{\"platform\":[16],\"context\":[16],\"limeobject\":[8],\"items\":[16],\"image\":[16],\"relativeDates\":[4,\"relative-dates\"]}]]],[\"limebb-date-range.cjs\",[[1,\"limebb-date-range\",{\"platform\":[16],\"context\":[16],\"startTime\":[16],\"endTime\":[16],\"startTimeLabel\":[1,\"start-time-label\"],\"endTimeLabel\":[1,\"end-time-label\"],\"language\":[1],\"timeFormat\":[1,\"time-format\"],\"type\":[1]}]]],[\"limebb-document-picker.cjs\",[[1,\"limebb-document-picker\",{\"platform\":[16],\"context\":[16],\"items\":[16],\"label\":[513],\"helperText\":[513,\"helper-text\"],\"invalid\":[516],\"required\":[516],\"type\":[513]}]]],[\"limebb-info-tile-currency-format.cjs\",[[1,\"limebb-info-tile-currency-format\",{\"platform\":[16],\"context\":[16],\"value\":[16]}]]],[\"limebb-notification-list.cjs\",[[1,\"limebb-notification-list\",{\"platform\":[16],\"context\":[16],\"items\":[16],\"loading\":[4],\"lastVisitedTimestamp\":[1,\"last-visited-timestamp\"]},null,{\"items\":[{\"handleItemsChange\":0}]}]]],[\"limebb-rule-editor.cjs\",[[1,\"limebb-rule-editor\",{\"platform\":[16],\"context\":[16],\"value\":[16],\"availableContexts\":[16],\"required\":[516],\"readonly\":[516],\"disabled\":[516],\"label\":[513],\"helperText\":[1,\"helper-text\"],\"issues\":[32],\"openChipPath\":[32],\"availablePrimitiveOptions\":[32]},null,{\"value\":[{\"onValueChange\":0}],\"availableContexts\":[{\"onAvailableContextsChange\":0}]}]]],[\"limebb-alert-dialog.cjs\",[[257,\"limebb-alert-dialog\",{\"type\":[513],\"open\":[516],\"icon\":[513],\"heading\":[513],\"subheading\":[1]}]]],[\"limebb-browser.cjs\",[[17,\"limebb-browser\",{\"platform\":[16],\"context\":[16],\"items\":[16],\"layout\":[1],\"filter\":[32]}]]],[\"limebb-color-palette-picker.cjs\",[[1,\"limebb-color-palette-picker\",{\"value\":[513],\"required\":[516],\"readonly\":[516],\"invalid\":[516],\"disabled\":[516],\"label\":[513],\"helperText\":[1,\"helper-text\"]}]]],[\"limebb-color-palette-swatches.cjs\",[[1,\"limebb-color-palette-swatches\",{\"colors\":[16]}]]],[\"limebb-component-config.cjs\",[[1,\"limebb-component-config\",{\"platform\":[16],\"context\":[16],\"value\":[16],\"required\":[4],\"readonly\":[4],\"disabled\":[4],\"label\":[1],\"helperText\":[1,\"helper-text\"],\"formInfo\":[16],\"type\":[1],\"nameField\":[1,\"name-field\"],\"configComponent\":[32],\"configViewType\":[32]},null,{\"formInfo\":[{\"watchFormInfo\":0}],\"configComponent\":[{\"watchconfigComponent\":0}]}]]],[\"limebb-component-picker.cjs\",[[1,\"limebb-component-picker\",{\"platform\":[16],\"context\":[16],\"type\":[1],\"tags\":[16],\"value\":[1],\"copyLabel\":[1,\"copy-label\"],\"hideCopyButton\":[4,\"hide-copy-button\"],\"required\":[4],\"readonly\":[4],\"disabled\":[4],\"label\":[1],\"helperText\":[1,\"helper-text\"]}]]],[\"limebb-composer-toolbar.cjs\",[[257,\"limebb-composer-toolbar\",{\"platform\":[16],\"mentions\":[516],\"textSnippets\":[516,\"text-snippets\"],\"internalLinks\":[516,\"internal-links\"],\"richText\":[516,\"rich-text\"],\"fileInput\":[16]}]]],[\"limebb-dashboard-widget.cjs\",[[257,\"limebb-dashboard-widget\",{\"heading\":[513],\"subheading\":[513],\"supportingText\":[513,\"supporting-text\"],\"icon\":[513]}]]],[\"limebb-icon-picker.cjs\",[[1,\"limebb-icon-picker\",{\"value\":[1],\"required\":[4],\"readonly\":[4],\"invalid\":[4],\"disabled\":[4],\"label\":[1],\"helperText\":[1,\"helper-text\"]}]]],[\"limebb-info-tile.cjs\",[[1,\"limebb-info-tile\",{\"platform\":[16],\"context\":[16],\"filterId\":[513,\"filter-id\"],\"disabled\":[4],\"icon\":[513],\"label\":[1],\"prefix\":[1],\"suffix\":[1],\"propertyName\":[1,\"property-name\"],\"aggregateOperator\":[1,\"aggregate-operator\"],\"format\":[16],\"config\":[32],\"filters\":[32],\"value\":[32],\"loading\":[32],\"error\":[32],\"limetypes\":[32]},null,{\"filterId\":[{\"watchFilterId\":0}],\"propertyName\":[{\"watchPropertyName\":0}],\"aggregateOperator\":[{\"watchAggregateOperator\":0}]}]]],[\"limebb-info-tile-date-format.cjs\",[[1,\"limebb-info-tile-date-format\",{\"value\":[16]}]]],[\"limebb-info-tile-decimal-format.cjs\",[[1,\"limebb-info-tile-decimal-format\",{\"value\":[16]}]]],[\"limebb-info-tile-format.cjs\",[[1,\"limebb-info-tile-format\",{\"platform\":[16],\"context\":[16],\"type\":[1],\"value\":[16]}]]],[\"limebb-info-tile-relative-date-format.cjs\",[[1,\"limebb-info-tile-relative-date-format\",{\"value\":[16]}]]],[\"limebb-info-tile-unit-format.cjs\",[[1,\"limebb-info-tile-unit-format\",{\"value\":[16]}]]],[\"limebb-loader.cjs\",[[1,\"limebb-loader\",{\"platform\":[16],\"context\":[16]}]]],[\"limebb-locale-picker.cjs\",[[1,\"limebb-locale-picker\",{\"platform\":[16],\"context\":[16],\"value\":[1],\"required\":[4],\"disabled\":[4],\"label\":[1],\"helperText\":[1,\"helper-text\"],\"readonly\":[4],\"multipleChoice\":[4,\"multiple-choice\"],\"allLanguages\":[32]}]]],[\"limebb-mention.cjs\",[[257,\"limebb-mention\",{\"limetype\":[1],\"objectid\":[2],\"limeobject\":[32]}]]],[\"limebb-mention-group-counter.cjs\",[[1,\"limebb-mention-group-counter\",{\"count\":[2],\"limetype\":[16],\"helperLabel\":[1,\"helper-label\"]}]]],[\"limebb-object-chip.cjs\",[[1,\"limebb-object-chip\",{\"limetype\":[1],\"objectid\":[2],\"size\":[1],\"platform\":[16],\"data\":[32]},null,{\"limetype\":[{\"handlePropChange\":0}],\"objectid\":[{\"handlePropChange\":0}]}]]],[\"limebb-rule-gate.cjs\",[[257,\"limebb-rule-gate\",{\"platform\":[16],\"rule\":[16],\"scope\":[16],\"shouldRender\":[32]},null,{\"rule\":[{\"onRuleChange\":0}],\"scope\":[{\"onScopeChange\":0}]}]]],[\"limebb-trend-indicator.cjs\",[[1,\"limebb-trend-indicator\",{\"platform\":[16],\"context\":[16],\"value\":[520],\"formerValue\":[514,\"former-value\"],\"suffix\":[513],\"label\":[513],\"invalid\":[516],\"required\":[516],\"helperText\":[513,\"helper-text\"],\"reducePresence\":[516,\"reduce-presence\"]},null,{\"value\":[{\"valueChanged\":0}]}]]],[\"limebb-feed-item-thumbnail-file-info.cjs\",[[1,\"limebb-feed-item-thumbnail-file-info\",{\"description\":[1]}]]],[\"limebb-feed-timeline-item.cjs\",[[1,\"limebb-feed-timeline-item\",{\"platform\":[16],\"context\":[16],\"item\":[16],\"ui\":[513],\"helperText\":[1,\"helper-text\"],\"hasError\":[516,\"has-error\"],\"isBundled\":[516,\"is-bundled\"],\"headingCanExpand\":[32],\"isHeadingExpanded\":[32],\"showMore\":[32],\"isTall\":[32]}]]],[\"limebb-kanban-group.cjs\",[[1,\"limebb-kanban-group\",{\"platform\":[16],\"context\":[16],\"identifier\":[1],\"heading\":[513],\"help\":[1],\"items\":[16],\"summary\":[1],\"loading\":[516],\"totalCount\":[514,\"total-count\"]}]]],[\"limebb-document-item.cjs\",[[17,\"limebb-document-item\",{\"platform\":[16],\"context\":[16],\"item\":[16],\"type\":[513],\"fileTypes\":[16]}]]],[\"limebb-empty-state.cjs\",[[1,\"limebb-empty-state\",{\"heading\":[513],\"value\":[513],\"icon\":[16]}]]],[\"limebb-text-editor-picker.cjs\",[[1,\"limebb-text-editor-picker\",{\"items\":[16],\"open\":[516],\"isSearching\":[4,\"is-searching\"],\"emptyMessage\":[1,\"empty-message\"]},null,{\"open\":[{\"watchOpen\":0}]}]]],[\"limebb-currency-picker.cjs\",[[1,\"limebb-currency-picker\",{\"platform\":[16],\"context\":[16],\"label\":[513],\"currencies\":[16],\"helperText\":[513,\"helper-text\"],\"required\":[516],\"readonly\":[516],\"invalid\":[516],\"disabled\":[516],\"value\":[1]}]]],[\"limebb-date-picker.cjs\",[[1,\"limebb-date-picker\",{\"platform\":[16],\"context\":[16],\"disabled\":[516],\"readonly\":[516],\"invalid\":[516],\"label\":[513],\"placeholder\":[513],\"helperText\":[513,\"helper-text\"],\"required\":[516],\"value\":[1],\"type\":[513]}]]],[\"limebb-live-docs-info.cjs\",[[1,\"limebb-live-docs-info\"]]],[\"limebb-notification-item.cjs\",[[1,\"limebb-notification-item\",{\"platform\":[16],\"context\":[16],\"item\":[16]}]]],[\"limebb-percentage-visualizer.cjs\",[[1,\"limebb-percentage-visualizer\",{\"platform\":[16],\"context\":[16],\"value\":[520],\"rangeMax\":[514,\"range-max\"],\"rangeMin\":[514,\"range-min\"],\"multiplier\":[514],\"label\":[513],\"invalid\":[516],\"required\":[516],\"helperText\":[513,\"helper-text\"],\"reducePresence\":[516,\"reduce-presence\"],\"displayPercentageColors\":[516,\"display-percentage-colors\"]},null,{\"value\":[{\"valueChanged\":0}]}]]],[\"limebb-rule-chip-popover.cjs\",[[1,\"limebb-rule-chip-popover\",{\"platform\":[16],\"context\":[16],\"refNode\":[16],\"isNegated\":[4,\"is-negated\"],\"metadata\":[16],\"readonly\":[4],\"disabled\":[4],\"isMutable\":[4,\"is-mutable\"]}]]],[\"limebb-lime-query-filter-builder.cjs\",[[1,\"limebb-lime-query-filter-builder\",{\"platform\":[16],\"context\":[16],\"limetype\":[1],\"activeLimetype\":[1,\"active-limetype\"],\"expression\":[16]}]]],[\"limebb-kanban-item.cjs\",[[257,\"limebb-kanban-item\",{\"platform\":[16],\"context\":[16],\"item\":[16]}]]],[\"limebb-property-selector.cjs\",[[1,\"limebb-property-selector\",{\"platform\":[16],\"context\":[16],\"limetype\":[1],\"value\":[1],\"label\":[1],\"required\":[4],\"helperText\":[1,\"helper-text\"],\"limetypes\":[32],\"isOpen\":[32],\"navigationPath\":[32]}]]],[\"limebb-lime-query-order-by-item.cjs\",[[1,\"limebb-lime-query-order-by-item\",{\"platform\":[16],\"context\":[16],\"limetype\":[1],\"item\":[16]}]]],[\"limebb-lime-query-order-by-editor_2.cjs\",[[1,\"limebb-lime-query-order-by-editor\",{\"platform\":[16],\"context\":[16],\"limetype\":[1],\"value\":[16],\"label\":[1],\"items\":[32]},null,{\"value\":[{\"handleValueChange\":0}]}],[0,\"limebb-limetype-field\",{\"platform\":[16],\"context\":[16],\"label\":[513],\"required\":[516],\"readonly\":[516],\"disabled\":[516],\"value\":[513],\"helperText\":[513,\"helper-text\"],\"invalid\":[4],\"limetypes\":[16],\"propertyFields\":[16],\"fieldName\":[1,\"field-name\"],\"formInfo\":[16]}]]],[\"limebb-chat-icon-list_3.cjs\",[[1,\"limebb-chat-icon-list\",{\"item\":[16]}],[1,\"limebb-chat-item\",{\"platform\":[16],\"context\":[16],\"item\":[16],\"helperText\":[1,\"helper-text\"],\"hasError\":[516,\"has-error\"]}],[1,\"limebb-typing-indicator\"]]],[\"limebb-lime-query-response-format-editor_2.cjs\",[[1,\"limebb-lime-query-response-format-editor\",{\"platform\":[16],\"context\":[16],\"limetype\":[1],\"value\":[16],\"label\":[1],\"items\":[32]}],[1,\"limebb-lime-query-response-format-item\",{\"platform\":[16],\"context\":[16],\"limetype\":[1],\"item\":[16],\"showAliasInput\":[32],\"showDescriptionInput\":[32]}]]],[\"limebb-lime-query-filter-comparison_2.cjs\",[[1,\"limebb-lime-query-filter-expression\",{\"platform\":[16],\"context\":[16],\"label\":[1],\"limetype\":[1],\"activeLimetype\":[1,\"active-limetype\"],\"expression\":[16]}],[1,\"limebb-lime-query-filter-comparison\",{\"platform\":[16],\"context\":[16],\"label\":[513],\"limetype\":[1],\"activeLimetype\":[1,\"active-limetype\"],\"expression\":[16]}]]],[\"limebb-navigation-button_2.cjs\",[[257,\"limebb-summary-popover\",{\"triggerDelay\":[514,\"trigger-delay\"],\"heading\":[513],\"subheading\":[513],\"image\":[16],\"file\":[16],\"icon\":[513],\"value\":[1],\"openDirection\":[513,\"open-direction\"],\"popoverMaxWidth\":[513,\"popover-max-width\"],\"popoverMaxHeight\":[513,\"popover-max-height\"],\"actions\":[16],\"isPopoverOpen\":[32]}],[17,\"limebb-navigation-button\",{\"href\":[513],\"tooltipLabel\":[513,\"tooltip-label\"],\"tooltipHelperLabel\":[513,\"tooltip-helper-label\"],\"type\":[513]}]]],[\"limebb-lime-query-filter-group_3.cjs\",[[1,\"limebb-lime-query-value-input\",{\"platform\":[16],\"context\":[16],\"limetype\":[1],\"activeLimetype\":[1,\"active-limetype\"],\"propertyPath\":[1,\"property-path\"],\"operator\":[1],\"value\":[8],\"label\":[1],\"limetypes\":[32],\"inputMode\":[32]}],[1,\"limebb-lime-query-filter-group\",{\"platform\":[16],\"context\":[16],\"limetype\":[1],\"activeLimetype\":[1,\"active-limetype\"],\"expression\":[16],\"value\":[32]}],[1,\"limebb-lime-query-filter-not\",{\"platform\":[16],\"context\":[16],\"label\":[1],\"limetype\":[1],\"activeLimetype\":[1,\"active-limetype\"],\"expression\":[16]}]]]]"), options);
|
|
23
23
|
});
|
|
24
24
|
|
|
25
25
|
exports.setNonce = index.setNonce;
|
|
@@ -174,6 +174,15 @@ function createPrimitiveOptions(metadataById, translator) {
|
|
|
174
174
|
}))
|
|
175
175
|
.sort((a, b) => a.text.localeCompare(b.text));
|
|
176
176
|
}
|
|
177
|
+
/**
|
|
178
|
+
* Whether every context key a primitive reads is in the reachable set.
|
|
179
|
+
* A primitive that reads nothing is always covered.
|
|
180
|
+
* @param meta
|
|
181
|
+
* @param reachable
|
|
182
|
+
*/
|
|
183
|
+
function primitiveReadsCovered(meta, reachable) {
|
|
184
|
+
return meta.reads.every((key) => reachable.has(key));
|
|
185
|
+
}
|
|
177
186
|
/**
|
|
178
187
|
* Find the picker item for `id`, falling back to a placeholder marked
|
|
179
188
|
* with the unknown-primitive icon when the id isn't in the registry.
|
|
@@ -245,10 +254,10 @@ const GroupChipsView = ({ groupNode, groupPath, chipChildren, ctx }) => {
|
|
|
245
254
|
const value = chipChildren.map((entry) => {
|
|
246
255
|
const token = chipTokenFor(entry.index);
|
|
247
256
|
chipsByToken.set(token, entry);
|
|
248
|
-
const base = resolveItem(ctx.
|
|
257
|
+
const base = resolveItem(ctx.allPrimitiveOptions, entry.ref.id);
|
|
249
258
|
return Object.assign(Object.assign({}, base), { text: entry.isNegated ? `¬ ${base.text}` : base.text, value: token });
|
|
250
259
|
});
|
|
251
|
-
const searcher = createSearcher(ctx.
|
|
260
|
+
const searcher = createSearcher(ctx.availablePrimitiveOptions);
|
|
252
261
|
const openChip = findOpenChip(chipChildren, groupPath, ctx.openChipPath);
|
|
253
262
|
const delimiter = groupNode.type === 'all' ? '&' : '|';
|
|
254
263
|
return (index.h("limel-popover", { class: "rule-node__chips-popover", open: openChip !== null, openDirection: "bottom-start", onClose: ctx.onPopoverClose }, index.h("div", { slot: "trigger", class: "rule-node__chips" }, index.h("limel-picker", { multiple: true, label: ctx.translator.get('webclient.rule-editor.rules-label'), value: value, searcher: searcher, delimiter: delimiter, readonly: ctx.readonly, disabled: ctx.disabled, onChange: chipsChangeHandler(groupNode, groupPath, chipsByToken, ctx), onInteract: chipInteractHandler(groupPath, chipsByToken, ctx) })), index.h("div", null, renderChipPopoverContent(openChip, groupPath, ctx))));
|
|
@@ -475,8 +484,11 @@ const RuleEditor = class {
|
|
|
475
484
|
this.issues = [];
|
|
476
485
|
this.openChipPath = null;
|
|
477
486
|
this.metadataById = new Map();
|
|
478
|
-
this.
|
|
487
|
+
this.allPrimitiveOptions = [];
|
|
488
|
+
this.availablePrimitiveOptions = [];
|
|
489
|
+
this.reachableSlots = new Set();
|
|
479
490
|
this.normalizedCache = null;
|
|
491
|
+
this.hasLoaded = false;
|
|
480
492
|
this.handleDelete = (path) => {
|
|
481
493
|
this.openChipPath = null;
|
|
482
494
|
this.emitIfChanged(deleteNode(this.normalizedValue, path));
|
|
@@ -495,10 +507,30 @@ const RuleEditor = class {
|
|
|
495
507
|
};
|
|
496
508
|
}
|
|
497
509
|
componentWillLoad() {
|
|
510
|
+
this.rebuildFromRegistries();
|
|
511
|
+
}
|
|
512
|
+
rebuildFromRegistries() {
|
|
513
|
+
this.computeReachableSlots();
|
|
498
514
|
this.indexMetadata();
|
|
515
|
+
this.rebuildAvailableOptions();
|
|
516
|
+
this.runValidation();
|
|
517
|
+
}
|
|
518
|
+
/**
|
|
519
|
+
* Re-walk reachable slots when the editor is re-attached to the DOM,
|
|
520
|
+
* e.g. moved between surfaces. The reachable set depends on the host's
|
|
521
|
+
* ancestors, so a move can change which primitives the palette offers.
|
|
522
|
+
* Skipped on the first connect — `componentWillLoad` covers that.
|
|
523
|
+
*/
|
|
524
|
+
connectedCallback() {
|
|
525
|
+
if (!this.hasLoaded) {
|
|
526
|
+
return;
|
|
527
|
+
}
|
|
528
|
+
this.computeReachableSlots();
|
|
529
|
+
this.rebuildAvailableOptions();
|
|
499
530
|
this.runValidation();
|
|
500
531
|
}
|
|
501
532
|
componentDidLoad() {
|
|
533
|
+
this.hasLoaded = true;
|
|
502
534
|
this.emitNormalization();
|
|
503
535
|
}
|
|
504
536
|
onValueChange() {
|
|
@@ -508,14 +540,14 @@ const RuleEditor = class {
|
|
|
508
540
|
this.runValidation();
|
|
509
541
|
}
|
|
510
542
|
onAvailableContextsChange() {
|
|
511
|
-
this.
|
|
543
|
+
this.rebuildFromRegistries();
|
|
512
544
|
}
|
|
513
545
|
render() {
|
|
514
546
|
const containerClasses = {
|
|
515
547
|
'rule-editor': true,
|
|
516
548
|
'rule-editor--disabled': this.disabled,
|
|
517
549
|
};
|
|
518
|
-
return (index.h("div", { key: '
|
|
550
|
+
return (index.h("div", { key: 'dfdc801d8c0d48b8276b9d4cff8a4a2c0754c52f', class: containerClasses }, this.renderLabel(), index.h(RuleNodeView, { key: '250d53eba7681872f181003c709303238971be2a', node: this.normalizedValue, path: [], ctx: this.createRenderContext() }), this.renderHelperText()));
|
|
519
551
|
}
|
|
520
552
|
renderLabel() {
|
|
521
553
|
if (!this.label) {
|
|
@@ -533,13 +565,14 @@ const RuleEditor = class {
|
|
|
533
565
|
return {
|
|
534
566
|
issues: this.issues,
|
|
535
567
|
metadataById: this.metadataById,
|
|
536
|
-
|
|
568
|
+
allPrimitiveOptions: this.allPrimitiveOptions,
|
|
569
|
+
availablePrimitiveOptions: this.availablePrimitiveOptions,
|
|
537
570
|
isMutable: !this.readonly && !this.disabled,
|
|
538
571
|
readonly: this.readonly,
|
|
539
572
|
disabled: this.disabled,
|
|
540
573
|
platform: this.platform,
|
|
541
574
|
context: this.context,
|
|
542
|
-
translator: this.
|
|
575
|
+
translator: this.translator,
|
|
543
576
|
openChipPath: this.openChipPath,
|
|
544
577
|
onDelete: this.handleDelete,
|
|
545
578
|
onUpdateArgs: this.handleUpdateArgs,
|
|
@@ -552,14 +585,66 @@ const RuleEditor = class {
|
|
|
552
585
|
var _a, _b, _c;
|
|
553
586
|
const metadata = (_c = (_b = (_a = this.ruleRegistry).listMetadata) === null || _b === void 0 ? void 0 : _b.call(_a)) !== null && _c !== void 0 ? _c : [];
|
|
554
587
|
this.metadataById = new Map(metadata.map((item) => [item.id, item]));
|
|
555
|
-
this.
|
|
588
|
+
this.allPrimitiveOptions = createPrimitiveOptions(this.metadataById, this.translator);
|
|
589
|
+
}
|
|
590
|
+
/**
|
|
591
|
+
* Recompute the cached add-palette options. The inputs — indexed
|
|
592
|
+
* metadata, the reachable slot set, and the translator — only change
|
|
593
|
+
* in `rebuildFromRegistries` and `connectedCallback`, so caching here
|
|
594
|
+
* keeps `render` from rebuilding and sorting the list every pass.
|
|
595
|
+
*/
|
|
596
|
+
rebuildAvailableOptions() {
|
|
597
|
+
this.availablePrimitiveOptions = createPrimitiveOptions(this.availablePrimitiveMetadata(), this.translator);
|
|
598
|
+
}
|
|
599
|
+
/**
|
|
600
|
+
* The subset of registered metadata offered for adding in the
|
|
601
|
+
* palette: primitives whose `reads` aren't fully covered by the
|
|
602
|
+
* reachable slots are dropped. Filtering only the palette — not the
|
|
603
|
+
* full `allPrimitiveOptions` — keeps already-placed chips resolving
|
|
604
|
+
* to their proper title even when their read slot isn't reachable.
|
|
605
|
+
*/
|
|
606
|
+
availablePrimitiveMetadata() {
|
|
607
|
+
const filtered = new Map();
|
|
608
|
+
for (const [id, meta] of this.metadataById) {
|
|
609
|
+
if (primitiveReadsCovered(meta, this.reachableSlots)) {
|
|
610
|
+
filtered.set(id, meta);
|
|
611
|
+
}
|
|
612
|
+
}
|
|
613
|
+
return filtered;
|
|
614
|
+
}
|
|
615
|
+
/**
|
|
616
|
+
* Recompute the context slots reachable from the editor's mount
|
|
617
|
+
* point, unioning two sources:
|
|
618
|
+
*
|
|
619
|
+
* - the registered keys the resolver answers for — it walks the DOM
|
|
620
|
+
* from the host (and the session-wide fallbacks) the same way the
|
|
621
|
+
* runtime scope does, so a key resolves only when an ancestor
|
|
622
|
+
* actually provides it;
|
|
623
|
+
* - `availableContexts`, a hardcoded hint for keys (notably
|
|
624
|
+
* `limeobject`) that have no session-wide fallback and are provided
|
|
625
|
+
* by a different application than the one hosting the editor, so the
|
|
626
|
+
* DOM walk can't discover them.
|
|
627
|
+
*/
|
|
628
|
+
computeReachableSlots() {
|
|
629
|
+
var _a;
|
|
630
|
+
const contextRegistry = this.contextRegistry;
|
|
631
|
+
const resolvable = contextRegistry
|
|
632
|
+
.list()
|
|
633
|
+
.map((metadata) => metadata.id)
|
|
634
|
+
.filter((key) => contextRegistry.get(key, this.host) !== undefined);
|
|
635
|
+
this.reachableSlots = new Set([
|
|
636
|
+
...resolvable,
|
|
637
|
+
...((_a = this.availableContexts) !== null && _a !== void 0 ? _a : []),
|
|
638
|
+
]);
|
|
556
639
|
}
|
|
557
640
|
runValidation() {
|
|
558
641
|
if (!this.value) {
|
|
559
642
|
this.issues = [];
|
|
560
643
|
return;
|
|
561
644
|
}
|
|
562
|
-
const result = this.ruleRegistry.validate(this.normalizedValue,
|
|
645
|
+
const result = this.ruleRegistry.validate(this.normalizedValue, [
|
|
646
|
+
...this.reachableSlots,
|
|
647
|
+
]);
|
|
563
648
|
this.issues = result.ok ? [] : result.issues;
|
|
564
649
|
}
|
|
565
650
|
emitIfChanged(next) {
|
|
@@ -610,6 +695,13 @@ const RuleEditor = class {
|
|
|
610
695
|
get ruleRegistry() {
|
|
611
696
|
return this.platform.get(index_esm.n.RuleRegistry);
|
|
612
697
|
}
|
|
698
|
+
get translator() {
|
|
699
|
+
return this.platform.get(index_esm.n.Translate);
|
|
700
|
+
}
|
|
701
|
+
get contextRegistry() {
|
|
702
|
+
return this.platform.get(index_esm.n.ContextRegistry);
|
|
703
|
+
}
|
|
704
|
+
get host() { return index.getElement(this); }
|
|
613
705
|
static get watchers() { return {
|
|
614
706
|
"value": [{
|
|
615
707
|
"onValueChange": 0
|
package/dist/cjs/loader.cjs.js
CHANGED
|
@@ -6,7 +6,7 @@ var appGlobals = require('./app-globals-V2Kpy_OQ.js');
|
|
|
6
6
|
const defineCustomElements = async (win, options) => {
|
|
7
7
|
if (typeof window === 'undefined') return undefined;
|
|
8
8
|
await appGlobals.globalScripts();
|
|
9
|
-
return index.bootstrapLazy(JSON.parse("[[\"limebb-lime-query-builder.cjs\",[[1,\"limebb-lime-query-builder\",{\"platform\":[16],\"context\":[16],\"value\":[16],\"label\":[1],\"activeLimetype\":[1,\"active-limetype\"],\"limetypes\":[32],\"mode\":[32],\"codeValue\":[32],\"limetype\":[32],\"filter\":[32],\"internalResponseFormat\":[32],\"limit\":[32],\"orderBy\":[32],\"description\":[32]}]]],[\"limebb-rule-arg-filter-editor.cjs\",[[1,\"limebb-rule-arg-filter-editor\",{\"platform\":[16],\"context\":[16],\"value\":[16],\"resolvedContext\":[32]}]]],[\"limebb-feed.cjs\",[[1,\"limebb-feed\",{\"platform\":[16],\"context\":[16],\"items\":[16],\"emptyStateMessage\":[1,\"empty-state-message\"],\"heading\":[1],\"loading\":[4],\"minutesOfProximity\":[2,\"minutes-of-proximity\"],\"totalCount\":[2,\"total-count\"],\"direction\":[513],\"lastVisitedTimestamp\":[1,\"last-visited-timestamp\"],\"highlightedItemId\":[8,\"highlighted-item-id\"]},null,{\"highlightedItemId\":[{\"highlightedItemIdChanged\":0}]}]]],[\"limebb-kanban.cjs\",[[1,\"limebb-kanban\",{\"platform\":[16],\"context\":[16],\"groups\":[16]}]]],[\"limebb-chat-list.cjs\",[[1,\"limebb-chat-list\",{\"platform\":[16],\"context\":[16],\"items\":[16],\"loading\":[516],\"isTypingIndicatorVisible\":[516,\"is-typing-indicator-visible\"],\"lastVisitedTimestamp\":[513,\"last-visited-timestamp\"],\"order\":[513]},null,{\"items\":[{\"handleItemsChange\":0}],\"order\":[{\"handleItemsChange\":0}]}]]],[\"limebb-lime-query-response-format-builder.cjs\",[[1,\"limebb-lime-query-response-format-builder\",{\"platform\":[16],\"context\":[16],\"limetype\":[1],\"value\":[16],\"label\":[1],\"helperText\":[1,\"helper-text\"],\"limetypes\":[32],\"mode\":[32],\"codeValue\":[32],\"internalValue\":[32]}]]],[\"limebb-document-chips.cjs\",[[1,\"limebb-document-chips\",{\"accessibleLabel\":[513,\"accessible-label\"],\"files\":[16]},null,{\"files\":[{\"onFilesChanged\":0}]}]]],[\"limebb-limeobject-file-viewer.cjs\",[[1,\"limebb-limeobject-file-viewer\",{\"platform\":[16],\"context\":[16],\"property\":[1],\"fileTypes\":[16],\"limeobject\":[32],\"limetype\":[32]}]]],[\"limebb-text-editor.cjs\",[[17,\"limebb-text-editor\",{\"platform\":[16],\"context\":[16],\"allowMentioning\":[4,\"allow-mentioning\"],\"contentType\":[1,\"content-type\"],\"language\":[513],\"disabled\":[516],\"readonly\":[516],\"helperText\":[513,\"helper-text\"],\"placeholder\":[513],\"label\":[513],\"invalid\":[516],\"required\":[516],\"selectedContext\":[16],\"ui\":[513],\"allowResize\":[4,\"allow-resize\"],\"value\":[1],\"draftIdentifier\":[1,\"draft-identifier\"],\"triggerMap\":[16],\"customElements\":[16],\"allowInlineImages\":[4,\"allow-inline-images\"],\"items\":[32],\"highlightedItemIndex\":[32],\"editorPickerQuery\":[32],\"searchableLimetypes\":[32],\"isPickerOpen\":[32],\"isSearching\":[32]},null,{\"isPickerOpen\":[{\"watchOpen\":0}],\"editorPickerQuery\":[{\"watchQuery\":0}]}]]],[\"limebb-data-cells.cjs\",[[1,\"limebb-data-cells\",{\"platform\":[16],\"context\":[16],\"limeobject\":[8],\"items\":[16],\"image\":[16],\"relativeDates\":[4,\"relative-dates\"]}]]],[\"limebb-date-range.cjs\",[[1,\"limebb-date-range\",{\"platform\":[16],\"context\":[16],\"startTime\":[16],\"endTime\":[16],\"startTimeLabel\":[1,\"start-time-label\"],\"endTimeLabel\":[1,\"end-time-label\"],\"language\":[1],\"timeFormat\":[1,\"time-format\"],\"type\":[1]}]]],[\"limebb-document-picker.cjs\",[[1,\"limebb-document-picker\",{\"platform\":[16],\"context\":[16],\"items\":[16],\"label\":[513],\"helperText\":[513,\"helper-text\"],\"invalid\":[516],\"required\":[516],\"type\":[513]}]]],[\"limebb-info-tile-currency-format.cjs\",[[1,\"limebb-info-tile-currency-format\",{\"platform\":[16],\"context\":[16],\"value\":[16]}]]],[\"limebb-notification-list.cjs\",[[1,\"limebb-notification-list\",{\"platform\":[16],\"context\":[16],\"items\":[16],\"loading\":[4],\"lastVisitedTimestamp\":[1,\"last-visited-timestamp\"]},null,{\"items\":[{\"handleItemsChange\":0}]}]]],[\"limebb-rule-editor.cjs\",[[1,\"limebb-rule-editor\",{\"platform\":[16],\"context\":[16],\"value\":[16],\"availableContexts\":[16],\"required\":[516],\"readonly\":[516],\"disabled\":[516],\"label\":[513],\"helperText\":[1,\"helper-text\"],\"issues\":[32],\"openChipPath\":[32]},null,{\"value\":[{\"onValueChange\":0}],\"availableContexts\":[{\"onAvailableContextsChange\":0}]}]]],[\"limebb-alert-dialog.cjs\",[[257,\"limebb-alert-dialog\",{\"type\":[513],\"open\":[516],\"icon\":[513],\"heading\":[513],\"subheading\":[1]}]]],[\"limebb-browser.cjs\",[[17,\"limebb-browser\",{\"platform\":[16],\"context\":[16],\"items\":[16],\"layout\":[1],\"filter\":[32]}]]],[\"limebb-color-palette-picker.cjs\",[[1,\"limebb-color-palette-picker\",{\"value\":[513],\"required\":[516],\"readonly\":[516],\"invalid\":[516],\"disabled\":[516],\"label\":[513],\"helperText\":[1,\"helper-text\"]}]]],[\"limebb-color-palette-swatches.cjs\",[[1,\"limebb-color-palette-swatches\",{\"colors\":[16]}]]],[\"limebb-component-config.cjs\",[[1,\"limebb-component-config\",{\"platform\":[16],\"context\":[16],\"value\":[16],\"required\":[4],\"readonly\":[4],\"disabled\":[4],\"label\":[1],\"helperText\":[1,\"helper-text\"],\"formInfo\":[16],\"type\":[1],\"nameField\":[1,\"name-field\"],\"configComponent\":[32],\"configViewType\":[32]},null,{\"formInfo\":[{\"watchFormInfo\":0}],\"configComponent\":[{\"watchconfigComponent\":0}]}]]],[\"limebb-component-picker.cjs\",[[1,\"limebb-component-picker\",{\"platform\":[16],\"context\":[16],\"type\":[1],\"tags\":[16],\"value\":[1],\"copyLabel\":[1,\"copy-label\"],\"hideCopyButton\":[4,\"hide-copy-button\"],\"required\":[4],\"readonly\":[4],\"disabled\":[4],\"label\":[1],\"helperText\":[1,\"helper-text\"]}]]],[\"limebb-composer-toolbar.cjs\",[[257,\"limebb-composer-toolbar\",{\"platform\":[16],\"mentions\":[516],\"textSnippets\":[516,\"text-snippets\"],\"internalLinks\":[516,\"internal-links\"],\"richText\":[516,\"rich-text\"],\"fileInput\":[16]}]]],[\"limebb-dashboard-widget.cjs\",[[257,\"limebb-dashboard-widget\",{\"heading\":[513],\"subheading\":[513],\"supportingText\":[513,\"supporting-text\"],\"icon\":[513]}]]],[\"limebb-icon-picker.cjs\",[[1,\"limebb-icon-picker\",{\"value\":[1],\"required\":[4],\"readonly\":[4],\"invalid\":[4],\"disabled\":[4],\"label\":[1],\"helperText\":[1,\"helper-text\"]}]]],[\"limebb-info-tile.cjs\",[[1,\"limebb-info-tile\",{\"platform\":[16],\"context\":[16],\"filterId\":[513,\"filter-id\"],\"disabled\":[4],\"icon\":[513],\"label\":[1],\"prefix\":[1],\"suffix\":[1],\"propertyName\":[1,\"property-name\"],\"aggregateOperator\":[1,\"aggregate-operator\"],\"format\":[16],\"config\":[32],\"filters\":[32],\"value\":[32],\"loading\":[32],\"error\":[32],\"limetypes\":[32]},null,{\"filterId\":[{\"watchFilterId\":0}],\"propertyName\":[{\"watchPropertyName\":0}],\"aggregateOperator\":[{\"watchAggregateOperator\":0}]}]]],[\"limebb-info-tile-date-format.cjs\",[[1,\"limebb-info-tile-date-format\",{\"value\":[16]}]]],[\"limebb-info-tile-decimal-format.cjs\",[[1,\"limebb-info-tile-decimal-format\",{\"value\":[16]}]]],[\"limebb-info-tile-format.cjs\",[[1,\"limebb-info-tile-format\",{\"platform\":[16],\"context\":[16],\"type\":[1],\"value\":[16]}]]],[\"limebb-info-tile-relative-date-format.cjs\",[[1,\"limebb-info-tile-relative-date-format\",{\"value\":[16]}]]],[\"limebb-info-tile-unit-format.cjs\",[[1,\"limebb-info-tile-unit-format\",{\"value\":[16]}]]],[\"limebb-loader.cjs\",[[1,\"limebb-loader\",{\"platform\":[16],\"context\":[16]}]]],[\"limebb-locale-picker.cjs\",[[1,\"limebb-locale-picker\",{\"platform\":[16],\"context\":[16],\"value\":[1],\"required\":[4],\"disabled\":[4],\"label\":[1],\"helperText\":[1,\"helper-text\"],\"readonly\":[4],\"multipleChoice\":[4,\"multiple-choice\"],\"allLanguages\":[32]}]]],[\"limebb-mention.cjs\",[[257,\"limebb-mention\",{\"limetype\":[1],\"objectid\":[2],\"limeobject\":[32]}]]],[\"limebb-mention-group-counter.cjs\",[[1,\"limebb-mention-group-counter\",{\"count\":[2],\"limetype\":[16],\"helperLabel\":[1,\"helper-label\"]}]]],[\"limebb-object-chip.cjs\",[[1,\"limebb-object-chip\",{\"limetype\":[1],\"objectid\":[2],\"size\":[1],\"platform\":[16],\"data\":[32]},null,{\"limetype\":[{\"handlePropChange\":0}],\"objectid\":[{\"handlePropChange\":0}]}]]],[\"limebb-rule-gate.cjs\",[[257,\"limebb-rule-gate\",{\"platform\":[16],\"rule\":[16],\"scope\":[16],\"shouldRender\":[32]},null,{\"rule\":[{\"onRuleChange\":0}],\"scope\":[{\"onScopeChange\":0}]}]]],[\"limebb-trend-indicator.cjs\",[[1,\"limebb-trend-indicator\",{\"platform\":[16],\"context\":[16],\"value\":[520],\"formerValue\":[514,\"former-value\"],\"suffix\":[513],\"label\":[513],\"invalid\":[516],\"required\":[516],\"helperText\":[513,\"helper-text\"],\"reducePresence\":[516,\"reduce-presence\"]},null,{\"value\":[{\"valueChanged\":0}]}]]],[\"limebb-feed-item-thumbnail-file-info.cjs\",[[1,\"limebb-feed-item-thumbnail-file-info\",{\"description\":[1]}]]],[\"limebb-feed-timeline-item.cjs\",[[1,\"limebb-feed-timeline-item\",{\"platform\":[16],\"context\":[16],\"item\":[16],\"ui\":[513],\"helperText\":[1,\"helper-text\"],\"hasError\":[516,\"has-error\"],\"isBundled\":[516,\"is-bundled\"],\"headingCanExpand\":[32],\"isHeadingExpanded\":[32],\"showMore\":[32],\"isTall\":[32]}]]],[\"limebb-kanban-group.cjs\",[[1,\"limebb-kanban-group\",{\"platform\":[16],\"context\":[16],\"identifier\":[1],\"heading\":[513],\"help\":[1],\"items\":[16],\"summary\":[1],\"loading\":[516],\"totalCount\":[514,\"total-count\"]}]]],[\"limebb-document-item.cjs\",[[17,\"limebb-document-item\",{\"platform\":[16],\"context\":[16],\"item\":[16],\"type\":[513],\"fileTypes\":[16]}]]],[\"limebb-empty-state.cjs\",[[1,\"limebb-empty-state\",{\"heading\":[513],\"value\":[513],\"icon\":[16]}]]],[\"limebb-text-editor-picker.cjs\",[[1,\"limebb-text-editor-picker\",{\"items\":[16],\"open\":[516],\"isSearching\":[4,\"is-searching\"],\"emptyMessage\":[1,\"empty-message\"]},null,{\"open\":[{\"watchOpen\":0}]}]]],[\"limebb-currency-picker.cjs\",[[1,\"limebb-currency-picker\",{\"platform\":[16],\"context\":[16],\"label\":[513],\"currencies\":[16],\"helperText\":[513,\"helper-text\"],\"required\":[516],\"readonly\":[516],\"invalid\":[516],\"disabled\":[516],\"value\":[1]}]]],[\"limebb-date-picker.cjs\",[[1,\"limebb-date-picker\",{\"platform\":[16],\"context\":[16],\"disabled\":[516],\"readonly\":[516],\"invalid\":[516],\"label\":[513],\"placeholder\":[513],\"helperText\":[513,\"helper-text\"],\"required\":[516],\"value\":[1],\"type\":[513]}]]],[\"limebb-live-docs-info.cjs\",[[1,\"limebb-live-docs-info\"]]],[\"limebb-notification-item.cjs\",[[1,\"limebb-notification-item\",{\"platform\":[16],\"context\":[16],\"item\":[16]}]]],[\"limebb-percentage-visualizer.cjs\",[[1,\"limebb-percentage-visualizer\",{\"platform\":[16],\"context\":[16],\"value\":[520],\"rangeMax\":[514,\"range-max\"],\"rangeMin\":[514,\"range-min\"],\"multiplier\":[514],\"label\":[513],\"invalid\":[516],\"required\":[516],\"helperText\":[513,\"helper-text\"],\"reducePresence\":[516,\"reduce-presence\"],\"displayPercentageColors\":[516,\"display-percentage-colors\"]},null,{\"value\":[{\"valueChanged\":0}]}]]],[\"limebb-rule-chip-popover.cjs\",[[1,\"limebb-rule-chip-popover\",{\"platform\":[16],\"context\":[16],\"refNode\":[16],\"isNegated\":[4,\"is-negated\"],\"metadata\":[16],\"readonly\":[4],\"disabled\":[4],\"isMutable\":[4,\"is-mutable\"]}]]],[\"limebb-lime-query-filter-builder.cjs\",[[1,\"limebb-lime-query-filter-builder\",{\"platform\":[16],\"context\":[16],\"limetype\":[1],\"activeLimetype\":[1,\"active-limetype\"],\"expression\":[16]}]]],[\"limebb-kanban-item.cjs\",[[257,\"limebb-kanban-item\",{\"platform\":[16],\"context\":[16],\"item\":[16]}]]],[\"limebb-property-selector.cjs\",[[1,\"limebb-property-selector\",{\"platform\":[16],\"context\":[16],\"limetype\":[1],\"value\":[1],\"label\":[1],\"required\":[4],\"helperText\":[1,\"helper-text\"],\"limetypes\":[32],\"isOpen\":[32],\"navigationPath\":[32]}]]],[\"limebb-lime-query-order-by-item.cjs\",[[1,\"limebb-lime-query-order-by-item\",{\"platform\":[16],\"context\":[16],\"limetype\":[1],\"item\":[16]}]]],[\"limebb-lime-query-order-by-editor_2.cjs\",[[1,\"limebb-lime-query-order-by-editor\",{\"platform\":[16],\"context\":[16],\"limetype\":[1],\"value\":[16],\"label\":[1],\"items\":[32]},null,{\"value\":[{\"handleValueChange\":0}]}],[0,\"limebb-limetype-field\",{\"platform\":[16],\"context\":[16],\"label\":[513],\"required\":[516],\"readonly\":[516],\"disabled\":[516],\"value\":[513],\"helperText\":[513,\"helper-text\"],\"invalid\":[4],\"limetypes\":[16],\"propertyFields\":[16],\"fieldName\":[1,\"field-name\"],\"formInfo\":[16]}]]],[\"limebb-chat-icon-list_3.cjs\",[[1,\"limebb-chat-icon-list\",{\"item\":[16]}],[1,\"limebb-chat-item\",{\"platform\":[16],\"context\":[16],\"item\":[16],\"helperText\":[1,\"helper-text\"],\"hasError\":[516,\"has-error\"]}],[1,\"limebb-typing-indicator\"]]],[\"limebb-lime-query-response-format-editor_2.cjs\",[[1,\"limebb-lime-query-response-format-editor\",{\"platform\":[16],\"context\":[16],\"limetype\":[1],\"value\":[16],\"label\":[1],\"items\":[32]}],[1,\"limebb-lime-query-response-format-item\",{\"platform\":[16],\"context\":[16],\"limetype\":[1],\"item\":[16],\"showAliasInput\":[32],\"showDescriptionInput\":[32]}]]],[\"limebb-lime-query-filter-comparison_2.cjs\",[[1,\"limebb-lime-query-filter-expression\",{\"platform\":[16],\"context\":[16],\"label\":[1],\"limetype\":[1],\"activeLimetype\":[1,\"active-limetype\"],\"expression\":[16]}],[1,\"limebb-lime-query-filter-comparison\",{\"platform\":[16],\"context\":[16],\"label\":[513],\"limetype\":[1],\"activeLimetype\":[1,\"active-limetype\"],\"expression\":[16]}]]],[\"limebb-navigation-button_2.cjs\",[[257,\"limebb-summary-popover\",{\"triggerDelay\":[514,\"trigger-delay\"],\"heading\":[513],\"subheading\":[513],\"image\":[16],\"file\":[16],\"icon\":[513],\"value\":[1],\"openDirection\":[513,\"open-direction\"],\"popoverMaxWidth\":[513,\"popover-max-width\"],\"popoverMaxHeight\":[513,\"popover-max-height\"],\"actions\":[16],\"isPopoverOpen\":[32]}],[17,\"limebb-navigation-button\",{\"href\":[513],\"tooltipLabel\":[513,\"tooltip-label\"],\"tooltipHelperLabel\":[513,\"tooltip-helper-label\"],\"type\":[513]}]]],[\"limebb-lime-query-filter-group_3.cjs\",[[1,\"limebb-lime-query-value-input\",{\"platform\":[16],\"context\":[16],\"limetype\":[1],\"activeLimetype\":[1,\"active-limetype\"],\"propertyPath\":[1,\"property-path\"],\"operator\":[1],\"value\":[8],\"label\":[1],\"limetypes\":[32],\"inputMode\":[32]}],[1,\"limebb-lime-query-filter-group\",{\"platform\":[16],\"context\":[16],\"limetype\":[1],\"activeLimetype\":[1,\"active-limetype\"],\"expression\":[16],\"value\":[32]}],[1,\"limebb-lime-query-filter-not\",{\"platform\":[16],\"context\":[16],\"label\":[1],\"limetype\":[1],\"activeLimetype\":[1,\"active-limetype\"],\"expression\":[16]}]]]]"), options);
|
|
9
|
+
return index.bootstrapLazy(JSON.parse("[[\"limebb-lime-query-builder.cjs\",[[1,\"limebb-lime-query-builder\",{\"platform\":[16],\"context\":[16],\"value\":[16],\"label\":[1],\"activeLimetype\":[1,\"active-limetype\"],\"limetypes\":[32],\"mode\":[32],\"codeValue\":[32],\"limetype\":[32],\"filter\":[32],\"internalResponseFormat\":[32],\"limit\":[32],\"orderBy\":[32],\"description\":[32]}]]],[\"limebb-rule-arg-filter-editor.cjs\",[[1,\"limebb-rule-arg-filter-editor\",{\"platform\":[16],\"context\":[16],\"value\":[16],\"resolvedContext\":[32]}]]],[\"limebb-feed.cjs\",[[1,\"limebb-feed\",{\"platform\":[16],\"context\":[16],\"items\":[16],\"emptyStateMessage\":[1,\"empty-state-message\"],\"heading\":[1],\"loading\":[4],\"minutesOfProximity\":[2,\"minutes-of-proximity\"],\"totalCount\":[2,\"total-count\"],\"direction\":[513],\"lastVisitedTimestamp\":[1,\"last-visited-timestamp\"],\"highlightedItemId\":[8,\"highlighted-item-id\"]},null,{\"highlightedItemId\":[{\"highlightedItemIdChanged\":0}]}]]],[\"limebb-kanban.cjs\",[[1,\"limebb-kanban\",{\"platform\":[16],\"context\":[16],\"groups\":[16]}]]],[\"limebb-chat-list.cjs\",[[1,\"limebb-chat-list\",{\"platform\":[16],\"context\":[16],\"items\":[16],\"loading\":[516],\"isTypingIndicatorVisible\":[516,\"is-typing-indicator-visible\"],\"lastVisitedTimestamp\":[513,\"last-visited-timestamp\"],\"order\":[513]},null,{\"items\":[{\"handleItemsChange\":0}],\"order\":[{\"handleItemsChange\":0}]}]]],[\"limebb-lime-query-response-format-builder.cjs\",[[1,\"limebb-lime-query-response-format-builder\",{\"platform\":[16],\"context\":[16],\"limetype\":[1],\"value\":[16],\"label\":[1],\"helperText\":[1,\"helper-text\"],\"limetypes\":[32],\"mode\":[32],\"codeValue\":[32],\"internalValue\":[32]}]]],[\"limebb-document-chips.cjs\",[[1,\"limebb-document-chips\",{\"accessibleLabel\":[513,\"accessible-label\"],\"files\":[16]},null,{\"files\":[{\"onFilesChanged\":0}]}]]],[\"limebb-limeobject-file-viewer.cjs\",[[1,\"limebb-limeobject-file-viewer\",{\"platform\":[16],\"context\":[16],\"property\":[1],\"fileTypes\":[16],\"limeobject\":[32],\"limetype\":[32]}]]],[\"limebb-text-editor.cjs\",[[17,\"limebb-text-editor\",{\"platform\":[16],\"context\":[16],\"allowMentioning\":[4,\"allow-mentioning\"],\"contentType\":[1,\"content-type\"],\"language\":[513],\"disabled\":[516],\"readonly\":[516],\"helperText\":[513,\"helper-text\"],\"placeholder\":[513],\"label\":[513],\"invalid\":[516],\"required\":[516],\"selectedContext\":[16],\"ui\":[513],\"allowResize\":[4,\"allow-resize\"],\"value\":[1],\"draftIdentifier\":[1,\"draft-identifier\"],\"triggerMap\":[16],\"customElements\":[16],\"allowInlineImages\":[4,\"allow-inline-images\"],\"items\":[32],\"highlightedItemIndex\":[32],\"editorPickerQuery\":[32],\"searchableLimetypes\":[32],\"isPickerOpen\":[32],\"isSearching\":[32]},null,{\"isPickerOpen\":[{\"watchOpen\":0}],\"editorPickerQuery\":[{\"watchQuery\":0}]}]]],[\"limebb-data-cells.cjs\",[[1,\"limebb-data-cells\",{\"platform\":[16],\"context\":[16],\"limeobject\":[8],\"items\":[16],\"image\":[16],\"relativeDates\":[4,\"relative-dates\"]}]]],[\"limebb-date-range.cjs\",[[1,\"limebb-date-range\",{\"platform\":[16],\"context\":[16],\"startTime\":[16],\"endTime\":[16],\"startTimeLabel\":[1,\"start-time-label\"],\"endTimeLabel\":[1,\"end-time-label\"],\"language\":[1],\"timeFormat\":[1,\"time-format\"],\"type\":[1]}]]],[\"limebb-document-picker.cjs\",[[1,\"limebb-document-picker\",{\"platform\":[16],\"context\":[16],\"items\":[16],\"label\":[513],\"helperText\":[513,\"helper-text\"],\"invalid\":[516],\"required\":[516],\"type\":[513]}]]],[\"limebb-info-tile-currency-format.cjs\",[[1,\"limebb-info-tile-currency-format\",{\"platform\":[16],\"context\":[16],\"value\":[16]}]]],[\"limebb-notification-list.cjs\",[[1,\"limebb-notification-list\",{\"platform\":[16],\"context\":[16],\"items\":[16],\"loading\":[4],\"lastVisitedTimestamp\":[1,\"last-visited-timestamp\"]},null,{\"items\":[{\"handleItemsChange\":0}]}]]],[\"limebb-rule-editor.cjs\",[[1,\"limebb-rule-editor\",{\"platform\":[16],\"context\":[16],\"value\":[16],\"availableContexts\":[16],\"required\":[516],\"readonly\":[516],\"disabled\":[516],\"label\":[513],\"helperText\":[1,\"helper-text\"],\"issues\":[32],\"openChipPath\":[32],\"availablePrimitiveOptions\":[32]},null,{\"value\":[{\"onValueChange\":0}],\"availableContexts\":[{\"onAvailableContextsChange\":0}]}]]],[\"limebb-alert-dialog.cjs\",[[257,\"limebb-alert-dialog\",{\"type\":[513],\"open\":[516],\"icon\":[513],\"heading\":[513],\"subheading\":[1]}]]],[\"limebb-browser.cjs\",[[17,\"limebb-browser\",{\"platform\":[16],\"context\":[16],\"items\":[16],\"layout\":[1],\"filter\":[32]}]]],[\"limebb-color-palette-picker.cjs\",[[1,\"limebb-color-palette-picker\",{\"value\":[513],\"required\":[516],\"readonly\":[516],\"invalid\":[516],\"disabled\":[516],\"label\":[513],\"helperText\":[1,\"helper-text\"]}]]],[\"limebb-color-palette-swatches.cjs\",[[1,\"limebb-color-palette-swatches\",{\"colors\":[16]}]]],[\"limebb-component-config.cjs\",[[1,\"limebb-component-config\",{\"platform\":[16],\"context\":[16],\"value\":[16],\"required\":[4],\"readonly\":[4],\"disabled\":[4],\"label\":[1],\"helperText\":[1,\"helper-text\"],\"formInfo\":[16],\"type\":[1],\"nameField\":[1,\"name-field\"],\"configComponent\":[32],\"configViewType\":[32]},null,{\"formInfo\":[{\"watchFormInfo\":0}],\"configComponent\":[{\"watchconfigComponent\":0}]}]]],[\"limebb-component-picker.cjs\",[[1,\"limebb-component-picker\",{\"platform\":[16],\"context\":[16],\"type\":[1],\"tags\":[16],\"value\":[1],\"copyLabel\":[1,\"copy-label\"],\"hideCopyButton\":[4,\"hide-copy-button\"],\"required\":[4],\"readonly\":[4],\"disabled\":[4],\"label\":[1],\"helperText\":[1,\"helper-text\"]}]]],[\"limebb-composer-toolbar.cjs\",[[257,\"limebb-composer-toolbar\",{\"platform\":[16],\"mentions\":[516],\"textSnippets\":[516,\"text-snippets\"],\"internalLinks\":[516,\"internal-links\"],\"richText\":[516,\"rich-text\"],\"fileInput\":[16]}]]],[\"limebb-dashboard-widget.cjs\",[[257,\"limebb-dashboard-widget\",{\"heading\":[513],\"subheading\":[513],\"supportingText\":[513,\"supporting-text\"],\"icon\":[513]}]]],[\"limebb-icon-picker.cjs\",[[1,\"limebb-icon-picker\",{\"value\":[1],\"required\":[4],\"readonly\":[4],\"invalid\":[4],\"disabled\":[4],\"label\":[1],\"helperText\":[1,\"helper-text\"]}]]],[\"limebb-info-tile.cjs\",[[1,\"limebb-info-tile\",{\"platform\":[16],\"context\":[16],\"filterId\":[513,\"filter-id\"],\"disabled\":[4],\"icon\":[513],\"label\":[1],\"prefix\":[1],\"suffix\":[1],\"propertyName\":[1,\"property-name\"],\"aggregateOperator\":[1,\"aggregate-operator\"],\"format\":[16],\"config\":[32],\"filters\":[32],\"value\":[32],\"loading\":[32],\"error\":[32],\"limetypes\":[32]},null,{\"filterId\":[{\"watchFilterId\":0}],\"propertyName\":[{\"watchPropertyName\":0}],\"aggregateOperator\":[{\"watchAggregateOperator\":0}]}]]],[\"limebb-info-tile-date-format.cjs\",[[1,\"limebb-info-tile-date-format\",{\"value\":[16]}]]],[\"limebb-info-tile-decimal-format.cjs\",[[1,\"limebb-info-tile-decimal-format\",{\"value\":[16]}]]],[\"limebb-info-tile-format.cjs\",[[1,\"limebb-info-tile-format\",{\"platform\":[16],\"context\":[16],\"type\":[1],\"value\":[16]}]]],[\"limebb-info-tile-relative-date-format.cjs\",[[1,\"limebb-info-tile-relative-date-format\",{\"value\":[16]}]]],[\"limebb-info-tile-unit-format.cjs\",[[1,\"limebb-info-tile-unit-format\",{\"value\":[16]}]]],[\"limebb-loader.cjs\",[[1,\"limebb-loader\",{\"platform\":[16],\"context\":[16]}]]],[\"limebb-locale-picker.cjs\",[[1,\"limebb-locale-picker\",{\"platform\":[16],\"context\":[16],\"value\":[1],\"required\":[4],\"disabled\":[4],\"label\":[1],\"helperText\":[1,\"helper-text\"],\"readonly\":[4],\"multipleChoice\":[4,\"multiple-choice\"],\"allLanguages\":[32]}]]],[\"limebb-mention.cjs\",[[257,\"limebb-mention\",{\"limetype\":[1],\"objectid\":[2],\"limeobject\":[32]}]]],[\"limebb-mention-group-counter.cjs\",[[1,\"limebb-mention-group-counter\",{\"count\":[2],\"limetype\":[16],\"helperLabel\":[1,\"helper-label\"]}]]],[\"limebb-object-chip.cjs\",[[1,\"limebb-object-chip\",{\"limetype\":[1],\"objectid\":[2],\"size\":[1],\"platform\":[16],\"data\":[32]},null,{\"limetype\":[{\"handlePropChange\":0}],\"objectid\":[{\"handlePropChange\":0}]}]]],[\"limebb-rule-gate.cjs\",[[257,\"limebb-rule-gate\",{\"platform\":[16],\"rule\":[16],\"scope\":[16],\"shouldRender\":[32]},null,{\"rule\":[{\"onRuleChange\":0}],\"scope\":[{\"onScopeChange\":0}]}]]],[\"limebb-trend-indicator.cjs\",[[1,\"limebb-trend-indicator\",{\"platform\":[16],\"context\":[16],\"value\":[520],\"formerValue\":[514,\"former-value\"],\"suffix\":[513],\"label\":[513],\"invalid\":[516],\"required\":[516],\"helperText\":[513,\"helper-text\"],\"reducePresence\":[516,\"reduce-presence\"]},null,{\"value\":[{\"valueChanged\":0}]}]]],[\"limebb-feed-item-thumbnail-file-info.cjs\",[[1,\"limebb-feed-item-thumbnail-file-info\",{\"description\":[1]}]]],[\"limebb-feed-timeline-item.cjs\",[[1,\"limebb-feed-timeline-item\",{\"platform\":[16],\"context\":[16],\"item\":[16],\"ui\":[513],\"helperText\":[1,\"helper-text\"],\"hasError\":[516,\"has-error\"],\"isBundled\":[516,\"is-bundled\"],\"headingCanExpand\":[32],\"isHeadingExpanded\":[32],\"showMore\":[32],\"isTall\":[32]}]]],[\"limebb-kanban-group.cjs\",[[1,\"limebb-kanban-group\",{\"platform\":[16],\"context\":[16],\"identifier\":[1],\"heading\":[513],\"help\":[1],\"items\":[16],\"summary\":[1],\"loading\":[516],\"totalCount\":[514,\"total-count\"]}]]],[\"limebb-document-item.cjs\",[[17,\"limebb-document-item\",{\"platform\":[16],\"context\":[16],\"item\":[16],\"type\":[513],\"fileTypes\":[16]}]]],[\"limebb-empty-state.cjs\",[[1,\"limebb-empty-state\",{\"heading\":[513],\"value\":[513],\"icon\":[16]}]]],[\"limebb-text-editor-picker.cjs\",[[1,\"limebb-text-editor-picker\",{\"items\":[16],\"open\":[516],\"isSearching\":[4,\"is-searching\"],\"emptyMessage\":[1,\"empty-message\"]},null,{\"open\":[{\"watchOpen\":0}]}]]],[\"limebb-currency-picker.cjs\",[[1,\"limebb-currency-picker\",{\"platform\":[16],\"context\":[16],\"label\":[513],\"currencies\":[16],\"helperText\":[513,\"helper-text\"],\"required\":[516],\"readonly\":[516],\"invalid\":[516],\"disabled\":[516],\"value\":[1]}]]],[\"limebb-date-picker.cjs\",[[1,\"limebb-date-picker\",{\"platform\":[16],\"context\":[16],\"disabled\":[516],\"readonly\":[516],\"invalid\":[516],\"label\":[513],\"placeholder\":[513],\"helperText\":[513,\"helper-text\"],\"required\":[516],\"value\":[1],\"type\":[513]}]]],[\"limebb-live-docs-info.cjs\",[[1,\"limebb-live-docs-info\"]]],[\"limebb-notification-item.cjs\",[[1,\"limebb-notification-item\",{\"platform\":[16],\"context\":[16],\"item\":[16]}]]],[\"limebb-percentage-visualizer.cjs\",[[1,\"limebb-percentage-visualizer\",{\"platform\":[16],\"context\":[16],\"value\":[520],\"rangeMax\":[514,\"range-max\"],\"rangeMin\":[514,\"range-min\"],\"multiplier\":[514],\"label\":[513],\"invalid\":[516],\"required\":[516],\"helperText\":[513,\"helper-text\"],\"reducePresence\":[516,\"reduce-presence\"],\"displayPercentageColors\":[516,\"display-percentage-colors\"]},null,{\"value\":[{\"valueChanged\":0}]}]]],[\"limebb-rule-chip-popover.cjs\",[[1,\"limebb-rule-chip-popover\",{\"platform\":[16],\"context\":[16],\"refNode\":[16],\"isNegated\":[4,\"is-negated\"],\"metadata\":[16],\"readonly\":[4],\"disabled\":[4],\"isMutable\":[4,\"is-mutable\"]}]]],[\"limebb-lime-query-filter-builder.cjs\",[[1,\"limebb-lime-query-filter-builder\",{\"platform\":[16],\"context\":[16],\"limetype\":[1],\"activeLimetype\":[1,\"active-limetype\"],\"expression\":[16]}]]],[\"limebb-kanban-item.cjs\",[[257,\"limebb-kanban-item\",{\"platform\":[16],\"context\":[16],\"item\":[16]}]]],[\"limebb-property-selector.cjs\",[[1,\"limebb-property-selector\",{\"platform\":[16],\"context\":[16],\"limetype\":[1],\"value\":[1],\"label\":[1],\"required\":[4],\"helperText\":[1,\"helper-text\"],\"limetypes\":[32],\"isOpen\":[32],\"navigationPath\":[32]}]]],[\"limebb-lime-query-order-by-item.cjs\",[[1,\"limebb-lime-query-order-by-item\",{\"platform\":[16],\"context\":[16],\"limetype\":[1],\"item\":[16]}]]],[\"limebb-lime-query-order-by-editor_2.cjs\",[[1,\"limebb-lime-query-order-by-editor\",{\"platform\":[16],\"context\":[16],\"limetype\":[1],\"value\":[16],\"label\":[1],\"items\":[32]},null,{\"value\":[{\"handleValueChange\":0}]}],[0,\"limebb-limetype-field\",{\"platform\":[16],\"context\":[16],\"label\":[513],\"required\":[516],\"readonly\":[516],\"disabled\":[516],\"value\":[513],\"helperText\":[513,\"helper-text\"],\"invalid\":[4],\"limetypes\":[16],\"propertyFields\":[16],\"fieldName\":[1,\"field-name\"],\"formInfo\":[16]}]]],[\"limebb-chat-icon-list_3.cjs\",[[1,\"limebb-chat-icon-list\",{\"item\":[16]}],[1,\"limebb-chat-item\",{\"platform\":[16],\"context\":[16],\"item\":[16],\"helperText\":[1,\"helper-text\"],\"hasError\":[516,\"has-error\"]}],[1,\"limebb-typing-indicator\"]]],[\"limebb-lime-query-response-format-editor_2.cjs\",[[1,\"limebb-lime-query-response-format-editor\",{\"platform\":[16],\"context\":[16],\"limetype\":[1],\"value\":[16],\"label\":[1],\"items\":[32]}],[1,\"limebb-lime-query-response-format-item\",{\"platform\":[16],\"context\":[16],\"limetype\":[1],\"item\":[16],\"showAliasInput\":[32],\"showDescriptionInput\":[32]}]]],[\"limebb-lime-query-filter-comparison_2.cjs\",[[1,\"limebb-lime-query-filter-expression\",{\"platform\":[16],\"context\":[16],\"label\":[1],\"limetype\":[1],\"activeLimetype\":[1,\"active-limetype\"],\"expression\":[16]}],[1,\"limebb-lime-query-filter-comparison\",{\"platform\":[16],\"context\":[16],\"label\":[513],\"limetype\":[1],\"activeLimetype\":[1,\"active-limetype\"],\"expression\":[16]}]]],[\"limebb-navigation-button_2.cjs\",[[257,\"limebb-summary-popover\",{\"triggerDelay\":[514,\"trigger-delay\"],\"heading\":[513],\"subheading\":[513],\"image\":[16],\"file\":[16],\"icon\":[513],\"value\":[1],\"openDirection\":[513,\"open-direction\"],\"popoverMaxWidth\":[513,\"popover-max-width\"],\"popoverMaxHeight\":[513,\"popover-max-height\"],\"actions\":[16],\"isPopoverOpen\":[32]}],[17,\"limebb-navigation-button\",{\"href\":[513],\"tooltipLabel\":[513,\"tooltip-label\"],\"tooltipHelperLabel\":[513,\"tooltip-helper-label\"],\"type\":[513]}]]],[\"limebb-lime-query-filter-group_3.cjs\",[[1,\"limebb-lime-query-value-input\",{\"platform\":[16],\"context\":[16],\"limetype\":[1],\"activeLimetype\":[1,\"active-limetype\"],\"propertyPath\":[1,\"property-path\"],\"operator\":[1],\"value\":[8],\"label\":[1],\"limetypes\":[32],\"inputMode\":[32]}],[1,\"limebb-lime-query-filter-group\",{\"platform\":[16],\"context\":[16],\"limetype\":[1],\"activeLimetype\":[1,\"active-limetype\"],\"expression\":[16],\"value\":[32]}],[1,\"limebb-lime-query-filter-not\",{\"platform\":[16],\"context\":[16],\"label\":[1],\"limetype\":[1],\"activeLimetype\":[1,\"active-limetype\"],\"expression\":[16]}]]]]"), options);
|
|
10
10
|
};
|
|
11
11
|
|
|
12
12
|
exports.setNonce = index.setNonce;
|
|
@@ -36,10 +36,10 @@ export const GroupChipsView = ({ groupNode, groupPath, chipChildren, ctx }) => {
|
|
|
36
36
|
const value = chipChildren.map((entry) => {
|
|
37
37
|
const token = chipTokenFor(entry.index);
|
|
38
38
|
chipsByToken.set(token, entry);
|
|
39
|
-
const base = resolveItem(ctx.
|
|
39
|
+
const base = resolveItem(ctx.allPrimitiveOptions, entry.ref.id);
|
|
40
40
|
return Object.assign(Object.assign({}, base), { text: entry.isNegated ? `¬ ${base.text}` : base.text, value: token });
|
|
41
41
|
});
|
|
42
|
-
const searcher = createSearcher(ctx.
|
|
42
|
+
const searcher = createSearcher(ctx.availablePrimitiveOptions);
|
|
43
43
|
const openChip = findOpenChip(chipChildren, groupPath, ctx.openChipPath);
|
|
44
44
|
const delimiter = groupNode.type === 'all' ? '&' : '|';
|
|
45
45
|
return (h("limel-popover", { class: "rule-node__chips-popover", open: openChip !== null, openDirection: "bottom-start", onClose: ctx.onPopoverClose }, h("div", { slot: "trigger", class: "rule-node__chips" }, h("limel-picker", { multiple: true, label: ctx.translator.get('webclient.rule-editor.rules-label'), value: value, searcher: searcher, delimiter: delimiter, readonly: ctx.readonly, disabled: ctx.disabled, onChange: chipsChangeHandler(groupNode, groupPath, chipsByToken, ctx), onInteract: chipInteractHandler(groupPath, chipsByToken, ctx) })), h("div", null, renderChipPopoverContent(openChip, groupPath, ctx))));
|
|
@@ -2,7 +2,7 @@ import { h, } from "@stencil/core";
|
|
|
2
2
|
import { PlatformServiceName, } from "@limetech/lime-web-components";
|
|
3
3
|
import { deleteNode, replaceNode, updateArgs, } from "./rule-operations";
|
|
4
4
|
import { extractGroup, RuleNodeView, } from "./rule-editor-views";
|
|
5
|
-
import { createPrimitiveOptions } from "./view-helpers";
|
|
5
|
+
import { createPrimitiveOptions, primitiveReadsCovered } from "./view-helpers";
|
|
6
6
|
/**
|
|
7
7
|
* Tree editor for {@link Rule}.
|
|
8
8
|
*
|
|
@@ -19,6 +19,14 @@ import { createPrimitiveOptions } from "./view-helpers";
|
|
|
19
19
|
* forwards it to `RuleRegistry.validate` so `missing-slot` diagnostics
|
|
20
20
|
* surface inline on the offending nodes.
|
|
21
21
|
*
|
|
22
|
+
* The palette is surface-aware. When the editor is mounted in the DOM,
|
|
23
|
+
* it walks its host's ancestors through the context registry and unions
|
|
24
|
+
* the result with `availableContexts` to determine which context slots
|
|
25
|
+
* are reachable where the rule runs. Primitives whose `reads` slots
|
|
26
|
+
* aren't all reachable are hidden from the add palette, so an author
|
|
27
|
+
* can't pick a primitive that would silently fail closed at evaluation
|
|
28
|
+
* time.
|
|
29
|
+
*
|
|
22
30
|
* @exampleComponent limebb-example-rule-editor
|
|
23
31
|
*
|
|
24
32
|
* @alpha
|
|
@@ -29,8 +37,11 @@ export class RuleEditor {
|
|
|
29
37
|
this.issues = [];
|
|
30
38
|
this.openChipPath = null;
|
|
31
39
|
this.metadataById = new Map();
|
|
32
|
-
this.
|
|
40
|
+
this.allPrimitiveOptions = [];
|
|
41
|
+
this.availablePrimitiveOptions = [];
|
|
42
|
+
this.reachableSlots = new Set();
|
|
33
43
|
this.normalizedCache = null;
|
|
44
|
+
this.hasLoaded = false;
|
|
34
45
|
this.handleDelete = (path) => {
|
|
35
46
|
this.openChipPath = null;
|
|
36
47
|
this.emitIfChanged(deleteNode(this.normalizedValue, path));
|
|
@@ -49,10 +60,30 @@ export class RuleEditor {
|
|
|
49
60
|
};
|
|
50
61
|
}
|
|
51
62
|
componentWillLoad() {
|
|
63
|
+
this.rebuildFromRegistries();
|
|
64
|
+
}
|
|
65
|
+
rebuildFromRegistries() {
|
|
66
|
+
this.computeReachableSlots();
|
|
52
67
|
this.indexMetadata();
|
|
68
|
+
this.rebuildAvailableOptions();
|
|
69
|
+
this.runValidation();
|
|
70
|
+
}
|
|
71
|
+
/**
|
|
72
|
+
* Re-walk reachable slots when the editor is re-attached to the DOM,
|
|
73
|
+
* e.g. moved between surfaces. The reachable set depends on the host's
|
|
74
|
+
* ancestors, so a move can change which primitives the palette offers.
|
|
75
|
+
* Skipped on the first connect — `componentWillLoad` covers that.
|
|
76
|
+
*/
|
|
77
|
+
connectedCallback() {
|
|
78
|
+
if (!this.hasLoaded) {
|
|
79
|
+
return;
|
|
80
|
+
}
|
|
81
|
+
this.computeReachableSlots();
|
|
82
|
+
this.rebuildAvailableOptions();
|
|
53
83
|
this.runValidation();
|
|
54
84
|
}
|
|
55
85
|
componentDidLoad() {
|
|
86
|
+
this.hasLoaded = true;
|
|
56
87
|
this.emitNormalization();
|
|
57
88
|
}
|
|
58
89
|
onValueChange() {
|
|
@@ -62,14 +93,14 @@ export class RuleEditor {
|
|
|
62
93
|
this.runValidation();
|
|
63
94
|
}
|
|
64
95
|
onAvailableContextsChange() {
|
|
65
|
-
this.
|
|
96
|
+
this.rebuildFromRegistries();
|
|
66
97
|
}
|
|
67
98
|
render() {
|
|
68
99
|
const containerClasses = {
|
|
69
100
|
'rule-editor': true,
|
|
70
101
|
'rule-editor--disabled': this.disabled,
|
|
71
102
|
};
|
|
72
|
-
return (h("div", { key: '
|
|
103
|
+
return (h("div", { key: 'dfdc801d8c0d48b8276b9d4cff8a4a2c0754c52f', class: containerClasses }, this.renderLabel(), h(RuleNodeView, { key: '250d53eba7681872f181003c709303238971be2a', node: this.normalizedValue, path: [], ctx: this.createRenderContext() }), this.renderHelperText()));
|
|
73
104
|
}
|
|
74
105
|
renderLabel() {
|
|
75
106
|
if (!this.label) {
|
|
@@ -87,13 +118,14 @@ export class RuleEditor {
|
|
|
87
118
|
return {
|
|
88
119
|
issues: this.issues,
|
|
89
120
|
metadataById: this.metadataById,
|
|
90
|
-
|
|
121
|
+
allPrimitiveOptions: this.allPrimitiveOptions,
|
|
122
|
+
availablePrimitiveOptions: this.availablePrimitiveOptions,
|
|
91
123
|
isMutable: !this.readonly && !this.disabled,
|
|
92
124
|
readonly: this.readonly,
|
|
93
125
|
disabled: this.disabled,
|
|
94
126
|
platform: this.platform,
|
|
95
127
|
context: this.context,
|
|
96
|
-
translator: this.
|
|
128
|
+
translator: this.translator,
|
|
97
129
|
openChipPath: this.openChipPath,
|
|
98
130
|
onDelete: this.handleDelete,
|
|
99
131
|
onUpdateArgs: this.handleUpdateArgs,
|
|
@@ -106,14 +138,66 @@ export class RuleEditor {
|
|
|
106
138
|
var _a, _b, _c;
|
|
107
139
|
const metadata = (_c = (_b = (_a = this.ruleRegistry).listMetadata) === null || _b === void 0 ? void 0 : _b.call(_a)) !== null && _c !== void 0 ? _c : [];
|
|
108
140
|
this.metadataById = new Map(metadata.map((item) => [item.id, item]));
|
|
109
|
-
this.
|
|
141
|
+
this.allPrimitiveOptions = createPrimitiveOptions(this.metadataById, this.translator);
|
|
142
|
+
}
|
|
143
|
+
/**
|
|
144
|
+
* Recompute the cached add-palette options. The inputs — indexed
|
|
145
|
+
* metadata, the reachable slot set, and the translator — only change
|
|
146
|
+
* in `rebuildFromRegistries` and `connectedCallback`, so caching here
|
|
147
|
+
* keeps `render` from rebuilding and sorting the list every pass.
|
|
148
|
+
*/
|
|
149
|
+
rebuildAvailableOptions() {
|
|
150
|
+
this.availablePrimitiveOptions = createPrimitiveOptions(this.availablePrimitiveMetadata(), this.translator);
|
|
151
|
+
}
|
|
152
|
+
/**
|
|
153
|
+
* The subset of registered metadata offered for adding in the
|
|
154
|
+
* palette: primitives whose `reads` aren't fully covered by the
|
|
155
|
+
* reachable slots are dropped. Filtering only the palette — not the
|
|
156
|
+
* full `allPrimitiveOptions` — keeps already-placed chips resolving
|
|
157
|
+
* to their proper title even when their read slot isn't reachable.
|
|
158
|
+
*/
|
|
159
|
+
availablePrimitiveMetadata() {
|
|
160
|
+
const filtered = new Map();
|
|
161
|
+
for (const [id, meta] of this.metadataById) {
|
|
162
|
+
if (primitiveReadsCovered(meta, this.reachableSlots)) {
|
|
163
|
+
filtered.set(id, meta);
|
|
164
|
+
}
|
|
165
|
+
}
|
|
166
|
+
return filtered;
|
|
167
|
+
}
|
|
168
|
+
/**
|
|
169
|
+
* Recompute the context slots reachable from the editor's mount
|
|
170
|
+
* point, unioning two sources:
|
|
171
|
+
*
|
|
172
|
+
* - the registered keys the resolver answers for — it walks the DOM
|
|
173
|
+
* from the host (and the session-wide fallbacks) the same way the
|
|
174
|
+
* runtime scope does, so a key resolves only when an ancestor
|
|
175
|
+
* actually provides it;
|
|
176
|
+
* - `availableContexts`, a hardcoded hint for keys (notably
|
|
177
|
+
* `limeobject`) that have no session-wide fallback and are provided
|
|
178
|
+
* by a different application than the one hosting the editor, so the
|
|
179
|
+
* DOM walk can't discover them.
|
|
180
|
+
*/
|
|
181
|
+
computeReachableSlots() {
|
|
182
|
+
var _a;
|
|
183
|
+
const contextRegistry = this.contextRegistry;
|
|
184
|
+
const resolvable = contextRegistry
|
|
185
|
+
.list()
|
|
186
|
+
.map((metadata) => metadata.id)
|
|
187
|
+
.filter((key) => contextRegistry.get(key, this.host) !== undefined);
|
|
188
|
+
this.reachableSlots = new Set([
|
|
189
|
+
...resolvable,
|
|
190
|
+
...((_a = this.availableContexts) !== null && _a !== void 0 ? _a : []),
|
|
191
|
+
]);
|
|
110
192
|
}
|
|
111
193
|
runValidation() {
|
|
112
194
|
if (!this.value) {
|
|
113
195
|
this.issues = [];
|
|
114
196
|
return;
|
|
115
197
|
}
|
|
116
|
-
const result = this.ruleRegistry.validate(this.normalizedValue,
|
|
198
|
+
const result = this.ruleRegistry.validate(this.normalizedValue, [
|
|
199
|
+
...this.reachableSlots,
|
|
200
|
+
]);
|
|
117
201
|
this.issues = result.ok ? [] : result.issues;
|
|
118
202
|
}
|
|
119
203
|
emitIfChanged(next) {
|
|
@@ -164,6 +248,12 @@ export class RuleEditor {
|
|
|
164
248
|
get ruleRegistry() {
|
|
165
249
|
return this.platform.get(PlatformServiceName.RuleRegistry);
|
|
166
250
|
}
|
|
251
|
+
get translator() {
|
|
252
|
+
return this.platform.get(PlatformServiceName.Translate);
|
|
253
|
+
}
|
|
254
|
+
get contextRegistry() {
|
|
255
|
+
return this.platform.get(PlatformServiceName.ContextRegistry);
|
|
256
|
+
}
|
|
167
257
|
static get is() { return "limebb-rule-editor"; }
|
|
168
258
|
static get encapsulation() { return "shadow"; }
|
|
169
259
|
static get originalStyleUrls() {
|
|
@@ -272,7 +362,7 @@ export class RuleEditor {
|
|
|
272
362
|
"optional": true,
|
|
273
363
|
"docs": {
|
|
274
364
|
"tags": [],
|
|
275
|
-
"text": "Context keys the caller knows will be available where the rule\nruns. Forwarded to the rule registry's `validate` method so\n`missing-slot` issues surface inline. Leave unset when the\nevaluation context is not known
|
|
365
|
+
"text": "Context keys the caller knows will be available where the rule\nruns. Forwarded to the rule registry's `validate` method so\n`missing-slot` issues surface inline. Leave unset when the\nevaluation context is not known \u2014 typical for editors that target\nthe saved-rule library."
|
|
276
366
|
},
|
|
277
367
|
"getter": false,
|
|
278
368
|
"setter": false
|
|
@@ -392,7 +482,8 @@ export class RuleEditor {
|
|
|
392
482
|
static get states() {
|
|
393
483
|
return {
|
|
394
484
|
"issues": {},
|
|
395
|
-
"openChipPath": {}
|
|
485
|
+
"openChipPath": {},
|
|
486
|
+
"availablePrimitiveOptions": {}
|
|
396
487
|
};
|
|
397
488
|
}
|
|
398
489
|
static get events() {
|
|
@@ -420,6 +511,7 @@ export class RuleEditor {
|
|
|
420
511
|
}
|
|
421
512
|
}];
|
|
422
513
|
}
|
|
514
|
+
static get elementRef() { return "host"; }
|
|
423
515
|
static get watchers() {
|
|
424
516
|
return [{
|
|
425
517
|
"propName": "value",
|