@limetech/lime-crm-building-blocks 2.0.4 → 2.2.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 +19 -0
- package/dist/cjs/condition-tree-translate-B_qIQz9s.js +27 -0
- package/dist/cjs/index.cjs.js +6 -0
- package/dist/cjs/lime-crm-building-blocks.cjs.js +1 -1
- package/dist/cjs/limebb-alert-dialog.cjs.entry.js +1 -1
- package/dist/cjs/limebb-browser.cjs.entry.js +2 -2
- package/dist/cjs/limebb-chat-icon-list_3.cjs.entry.js +4 -4
- package/dist/cjs/limebb-chat-list.cjs.entry.js +1 -1
- package/dist/cjs/limebb-color-palette-picker.cjs.entry.js +1 -1
- package/dist/cjs/limebb-color-palette-swatches.cjs.entry.js +1 -1
- package/dist/cjs/limebb-composer-toolbar.cjs.entry.js +2 -2
- package/dist/cjs/limebb-condition-tree-editor.cjs.entry.js +90 -0
- package/dist/cjs/limebb-condition-tree.cjs.entry.js +882 -0
- package/dist/cjs/limebb-currency-picker.cjs.entry.js +1 -1
- package/dist/cjs/limebb-dashboard-widget.cjs.entry.js +1 -1
- package/dist/cjs/limebb-date-picker.cjs.entry.js +1 -1
- package/dist/cjs/limebb-date-range.cjs.entry.js +1 -1
- package/dist/cjs/limebb-document-chips.cjs.entry.js +1 -1
- package/dist/cjs/limebb-document-item.cjs.entry.js +2 -2
- package/dist/cjs/limebb-document-picker.cjs.entry.js +1 -1
- package/dist/cjs/limebb-feed-item-thumbnail-file-info.cjs.entry.js +1 -1
- package/dist/cjs/limebb-feed-timeline-item.cjs.entry.js +1 -1
- package/dist/cjs/limebb-feed.cjs.entry.js +1 -1
- package/dist/cjs/limebb-filter-chip_6.cjs.entry.js +7 -7
- package/dist/cjs/limebb-icon-picker.cjs.entry.js +1 -1
- package/dist/cjs/limebb-info-tile-format.cjs.entry.js +1 -1
- package/dist/cjs/limebb-info-tile.cjs.entry.js +1 -1
- package/dist/cjs/limebb-kanban-group.cjs.entry.js +1 -1
- package/dist/cjs/limebb-kanban-item.cjs.entry.js +1 -1
- package/dist/cjs/limebb-lime-query-builder.cjs.entry.js +1 -1
- package/dist/cjs/limebb-lime-query-filter-comparison_2.cjs.entry.js +2 -2
- package/dist/cjs/limebb-lime-query-order-by-editor_2.cjs.entry.js +2 -2
- package/dist/cjs/limebb-lime-query-order-by-item.cjs.entry.js +2 -2
- package/dist/cjs/limebb-lime-query-response-format-builder.cjs.entry.js +1 -1
- package/dist/cjs/limebb-lime-query-response-format-editor_2.cjs.entry.js +1 -1
- package/dist/cjs/limebb-live-docs-info.cjs.entry.js +2 -2
- package/dist/cjs/limebb-locale-picker.cjs.entry.js +1 -1
- package/dist/cjs/limebb-mention-group-counter.cjs.entry.js +2 -2
- package/dist/cjs/limebb-navigation-button_2.cjs.entry.js +2 -2
- package/dist/cjs/limebb-notification-item.cjs.entry.js +1 -1
- package/dist/cjs/limebb-percentage-visualizer.cjs.entry.js +2 -2
- package/dist/cjs/limebb-rule-chip-popover.cjs.entry.js +2 -2
- package/dist/cjs/limebb-rule-editor.cjs.entry.js +162 -22
- package/dist/cjs/limebb-rule-gate.cjs.entry.js +1 -1
- package/dist/cjs/limebb-text-editor.cjs.entry.js +1 -1
- package/dist/cjs/limebb-trend-indicator.cjs.entry.js +1 -1
- package/dist/cjs/limebb-value-comparison-editor.cjs.entry.js +1 -1
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/cjs/rule-editor-modes-Dc6rnwD2.js +76 -0
- package/dist/collection/collection-manifest.json +3 -1
- package/dist/collection/components/alert-dialog/alert-dialog.js +1 -1
- package/dist/collection/components/browser/browser.js +2 -2
- package/dist/collection/components/chat-list/chat-icon-list/chat-icon-list.js +1 -1
- package/dist/collection/components/chat-list/chat-item/chat-item.js +2 -2
- package/dist/collection/components/chat-list/chat-list.js +1 -1
- package/dist/collection/components/chat-list/typing-indicator/typing-indicator.js +1 -1
- package/dist/collection/components/color-palette-picker/color-palette-picker.js +1 -1
- package/dist/collection/components/color-palette-picker/color-palette-swatches/color-palette-swatches.js +1 -1
- package/dist/collection/components/composer-toolbar/composer-toolbar.js +2 -2
- package/dist/collection/components/condition-tree/condition-tree-combinators.js +78 -0
- package/dist/collection/components/condition-tree/condition-tree-editor/condition-tree-editor.css +17 -0
- package/dist/collection/components/condition-tree/condition-tree-editor/condition-tree-editor.js +333 -0
- package/dist/collection/components/condition-tree/condition-tree-nodes.js +218 -0
- package/dist/collection/components/condition-tree/condition-tree-open-state.js +127 -0
- package/dist/collection/components/condition-tree/condition-tree-translate.js +22 -0
- package/dist/collection/components/condition-tree/condition-tree-view-context.js +22 -0
- package/dist/collection/components/condition-tree/condition-tree.css +132 -0
- package/dist/collection/components/condition-tree/condition-tree.js +461 -0
- package/dist/collection/components/condition-tree/condition-tree.types.js +1 -0
- package/dist/collection/components/condition-tree/group-node-view.js +153 -0
- package/dist/collection/components/condition-tree/leaf-node-view.js +74 -0
- package/dist/collection/components/currency-picker/currency-picker.js +1 -1
- package/dist/collection/components/dashboard-widget/dashboard-widget.js +1 -1
- package/dist/collection/components/date-picker/date-picker.js +1 -1
- package/dist/collection/components/date-range/date-range.js +1 -1
- package/dist/collection/components/document-chips/document-chips.js +1 -1
- package/dist/collection/components/document-picker/document-item/document-item.js +2 -2
- package/dist/collection/components/document-picker/document-picker.js +1 -1
- package/dist/collection/components/feed/feed-item/feed-timeline-item.js +1 -1
- package/dist/collection/components/feed/feed-item-thumbnail-file-info/feed-item-thumbnail-file-info.js +1 -1
- package/dist/collection/components/feed/feed.js +1 -1
- package/dist/collection/components/filter-chip/filter-chip.js +2 -2
- package/dist/collection/components/filter-condition-picker/filter-condition-picker.js +1 -1
- package/dist/collection/components/icon-picker/icon-picker.js +1 -1
- package/dist/collection/components/info-tile/format/config/info-tile-format.js +1 -1
- package/dist/collection/components/info-tile/info-tile.js +1 -1
- package/dist/collection/components/kanban/kanban-group/kanban-group.js +1 -1
- package/dist/collection/components/kanban/kanban-item/kanban-item.js +1 -1
- package/dist/collection/components/lime-query-builder/expressions/lime-query-filter-comparison-editor.js +1 -1
- package/dist/collection/components/lime-query-builder/expressions/lime-query-filter-comparison.js +2 -2
- package/dist/collection/components/lime-query-builder/expressions/lime-query-filter-group.js +2 -2
- package/dist/collection/components/lime-query-builder/expressions/lime-query-filter-not.js +1 -1
- package/dist/collection/components/lime-query-builder/lime-query-builder.js +1 -1
- package/dist/collection/components/lime-query-builder/lime-query-response-format-builder.js +1 -1
- package/dist/collection/components/lime-query-builder/limetype-field/limetype-field.js +1 -1
- package/dist/collection/components/lime-query-builder/order-by/order-by-editor.js +1 -1
- package/dist/collection/components/lime-query-builder/order-by/order-by-item.js +2 -2
- package/dist/collection/components/lime-query-builder/response-format/response-format-item.js +1 -1
- package/dist/collection/components/limeobject/file-viewer/live-docs-info.js +2 -2
- package/dist/collection/components/locale-picker/locale-picker.js +1 -1
- package/dist/collection/components/notification-list/notification-item/notification-item.js +1 -1
- package/dist/collection/components/percentage-visualizer/percentage-visualizer.js +2 -2
- package/dist/collection/components/rule-editor/group-node-view.js +3 -3
- package/dist/collection/components/rule-editor/rule-chip-popover/rule-chip-popover.js +2 -2
- package/dist/collection/components/rule-editor/rule-editor-mode-view.js +32 -0
- package/dist/collection/components/rule-editor/rule-editor-modes.js +68 -0
- package/dist/collection/components/rule-editor/rule-editor.css +153 -12
- package/dist/collection/components/rule-editor/rule-editor.js +201 -19
- package/dist/collection/components/rule-editor/rule-editor.types.js +1 -0
- package/dist/collection/components/rule-editor/value-comparison-editor/value-comparison-editor.js +1 -1
- package/dist/collection/components/rule-gate/rule-gate.js +1 -1
- package/dist/collection/components/summary-popover/summary-popover.js +2 -2
- package/dist/collection/components/text-editor/mention-group-counter.js +2 -2
- package/dist/collection/components/text-editor/text-editor.js +1 -1
- package/dist/collection/components/trend-indicator/trend-indicator.js +1 -1
- package/dist/collection/index.js +2 -0
- package/dist/components/chat-icon-list.js +1 -1
- package/dist/components/chat-item.js +1 -1
- package/dist/components/condition-tree-editor.js +1 -0
- package/dist/components/currency-picker.js +1 -1
- package/dist/components/date-picker.js +1 -1
- package/dist/components/document-item.js +1 -1
- package/dist/components/feed-item-thumbnail-file-info.js +1 -1
- package/dist/components/feed-timeline-item.js +1 -1
- package/dist/components/filter-chip.js +1 -1
- package/dist/components/filter-condition-picker.js +1 -1
- package/dist/components/index.js +1 -1
- package/dist/components/kanban-group.js +1 -1
- package/dist/components/kanban-item.js +1 -1
- package/dist/components/lime-query-filter-comparison-editor.js +1 -1
- package/dist/components/lime-query-filter-comparison.js +1 -1
- package/dist/components/lime-query-filter-expression.js +1 -1
- package/dist/components/limebb-alert-dialog.js +1 -1
- package/dist/components/limebb-browser.js +1 -1
- package/dist/components/limebb-chat-list.js +1 -1
- package/dist/components/limebb-color-palette-picker.js +1 -1
- package/dist/components/limebb-color-palette-swatches.js +1 -1
- package/dist/components/limebb-composer-toolbar.js +1 -1
- package/dist/components/limebb-condition-tree-editor.d.ts +11 -0
- package/dist/components/limebb-condition-tree-editor.js +1 -0
- package/dist/components/limebb-condition-tree.d.ts +11 -0
- package/dist/components/limebb-condition-tree.js +1 -0
- package/dist/components/limebb-dashboard-widget.js +1 -1
- package/dist/components/limebb-date-range.js +1 -1
- package/dist/components/limebb-document-chips.js +1 -1
- package/dist/components/limebb-document-picker.js +1 -1
- package/dist/components/limebb-feed.js +1 -1
- package/dist/components/limebb-icon-picker.js +1 -1
- package/dist/components/limebb-info-tile-format.js +1 -1
- package/dist/components/limebb-info-tile.js +1 -1
- package/dist/components/limebb-lime-query-builder.js +1 -1
- package/dist/components/limebb-lime-query-response-format-builder.js +1 -1
- package/dist/components/limebb-locale-picker.js +1 -1
- package/dist/components/limebb-mention-group-counter.js +1 -1
- package/dist/components/limebb-rule-editor.js +1 -1
- package/dist/components/limebb-rule-gate.js +1 -1
- package/dist/components/limebb-text-editor.js +1 -1
- package/dist/components/limebb-trend-indicator.js +1 -1
- package/dist/components/limebb-value-comparison-editor.js +1 -1
- package/dist/components/limetype-field.js +1 -1
- package/dist/components/live-docs-info.js +1 -1
- package/dist/components/notification-item.js +1 -1
- package/dist/components/order-by-editor.js +1 -1
- package/dist/components/order-by-item.js +1 -1
- package/dist/components/percentage-visualizer.js +1 -1
- package/dist/components/response-format-item.js +1 -1
- package/dist/components/rule-chip-popover.js +1 -1
- package/dist/components/rule-editor-modes.js +1 -0
- package/dist/components/summary-popover.js +1 -1
- package/dist/components/typing-indicator.js +1 -1
- package/dist/esm/condition-tree-translate-CBeXbZ_z.js +25 -0
- package/dist/esm/index.js +1 -0
- package/dist/esm/lime-crm-building-blocks.js +1 -1
- package/dist/esm/limebb-alert-dialog.entry.js +1 -1
- package/dist/esm/limebb-browser.entry.js +2 -2
- package/dist/esm/limebb-chat-icon-list_3.entry.js +4 -4
- package/dist/esm/limebb-chat-list.entry.js +1 -1
- package/dist/esm/limebb-color-palette-picker.entry.js +1 -1
- package/dist/esm/limebb-color-palette-swatches.entry.js +1 -1
- package/dist/esm/limebb-composer-toolbar.entry.js +2 -2
- package/dist/esm/limebb-condition-tree-editor.entry.js +88 -0
- package/dist/esm/limebb-condition-tree.entry.js +880 -0
- package/dist/esm/limebb-currency-picker.entry.js +1 -1
- package/dist/esm/limebb-dashboard-widget.entry.js +1 -1
- package/dist/esm/limebb-date-picker.entry.js +1 -1
- package/dist/esm/limebb-date-range.entry.js +1 -1
- package/dist/esm/limebb-document-chips.entry.js +1 -1
- package/dist/esm/limebb-document-item.entry.js +2 -2
- package/dist/esm/limebb-document-picker.entry.js +1 -1
- package/dist/esm/limebb-feed-item-thumbnail-file-info.entry.js +1 -1
- package/dist/esm/limebb-feed-timeline-item.entry.js +1 -1
- package/dist/esm/limebb-feed.entry.js +1 -1
- package/dist/esm/limebb-filter-chip_6.entry.js +7 -7
- package/dist/esm/limebb-icon-picker.entry.js +1 -1
- package/dist/esm/limebb-info-tile-format.entry.js +1 -1
- package/dist/esm/limebb-info-tile.entry.js +1 -1
- package/dist/esm/limebb-kanban-group.entry.js +1 -1
- package/dist/esm/limebb-kanban-item.entry.js +1 -1
- package/dist/esm/limebb-lime-query-builder.entry.js +1 -1
- package/dist/esm/limebb-lime-query-filter-comparison_2.entry.js +2 -2
- package/dist/esm/limebb-lime-query-order-by-editor_2.entry.js +2 -2
- package/dist/esm/limebb-lime-query-order-by-item.entry.js +2 -2
- package/dist/esm/limebb-lime-query-response-format-builder.entry.js +1 -1
- package/dist/esm/limebb-lime-query-response-format-editor_2.entry.js +1 -1
- package/dist/esm/limebb-live-docs-info.entry.js +2 -2
- package/dist/esm/limebb-locale-picker.entry.js +1 -1
- package/dist/esm/limebb-mention-group-counter.entry.js +2 -2
- package/dist/esm/limebb-navigation-button_2.entry.js +2 -2
- package/dist/esm/limebb-notification-item.entry.js +1 -1
- package/dist/esm/limebb-percentage-visualizer.entry.js +2 -2
- package/dist/esm/limebb-rule-chip-popover.entry.js +2 -2
- package/dist/esm/limebb-rule-editor.entry.js +163 -23
- package/dist/esm/limebb-rule-gate.entry.js +1 -1
- package/dist/esm/limebb-text-editor.entry.js +1 -1
- package/dist/esm/limebb-trend-indicator.entry.js +1 -1
- package/dist/esm/limebb-value-comparison-editor.entry.js +1 -1
- package/dist/esm/loader.js +1 -1
- package/dist/esm/rule-editor-modes-BCglve2Z.js +70 -0
- package/dist/lime-crm-building-blocks/index.esm.js +1 -1
- package/dist/lime-crm-building-blocks/lime-crm-building-blocks.esm.js +1 -1
- package/dist/lime-crm-building-blocks/{p-2f8540ab.entry.js → p-02fba38e.entry.js} +1 -1
- package/dist/lime-crm-building-blocks/{p-76151fce.entry.js → p-0445035f.entry.js} +1 -1
- package/dist/lime-crm-building-blocks/{p-4f0a4893.entry.js → p-0a05b3e9.entry.js} +1 -1
- package/dist/lime-crm-building-blocks/p-0dd64440.entry.js +1 -0
- package/dist/lime-crm-building-blocks/p-1578c8f0.entry.js +1 -0
- package/dist/lime-crm-building-blocks/{p-76064593.entry.js → p-170ab4be.entry.js} +1 -1
- package/dist/lime-crm-building-blocks/{p-542047c4.entry.js → p-27b9c824.entry.js} +1 -1
- package/dist/lime-crm-building-blocks/{p-2628fe8e.entry.js → p-2d1c7b6f.entry.js} +1 -1
- package/dist/lime-crm-building-blocks/{p-c2c181f1.entry.js → p-3fd84800.entry.js} +1 -1
- package/dist/lime-crm-building-blocks/{p-c7daffb6.entry.js → p-45dd8663.entry.js} +1 -1
- package/dist/lime-crm-building-blocks/{p-cede8095.entry.js → p-4e4d096c.entry.js} +1 -1
- package/dist/lime-crm-building-blocks/{p-51eb53ee.entry.js → p-54735042.entry.js} +1 -1
- package/dist/lime-crm-building-blocks/{p-c2899d68.entry.js → p-568c4e76.entry.js} +1 -1
- package/dist/lime-crm-building-blocks/{p-9907deb1.entry.js → p-584a48e4.entry.js} +1 -1
- package/dist/lime-crm-building-blocks/{p-ac4bddfc.entry.js → p-5b97d4f4.entry.js} +1 -1
- package/dist/lime-crm-building-blocks/p-615770be.entry.js +1 -0
- package/dist/lime-crm-building-blocks/{p-edfaf566.entry.js → p-6d8efe87.entry.js} +1 -1
- package/dist/lime-crm-building-blocks/p-705c53c0.entry.js +1 -0
- package/dist/lime-crm-building-blocks/{p-031b1648.entry.js → p-73f23d08.entry.js} +1 -1
- package/dist/lime-crm-building-blocks/{p-2baab674.entry.js → p-7c5ecffe.entry.js} +1 -1
- package/dist/lime-crm-building-blocks/{p-1fac8130.entry.js → p-7cd8dffd.entry.js} +1 -1
- package/dist/lime-crm-building-blocks/p-93af3e81.entry.js +1 -0
- package/dist/lime-crm-building-blocks/{p-247fcace.entry.js → p-97e2e5c9.entry.js} +1 -1
- package/dist/lime-crm-building-blocks/p-BCglve2Z.js +1 -0
- package/dist/lime-crm-building-blocks/p-BxCq236x.js +1 -0
- package/dist/lime-crm-building-blocks/p-a2b9c410.entry.js +1 -0
- package/dist/lime-crm-building-blocks/{p-f9f7020f.entry.js → p-a716b3a8.entry.js} +1 -1
- package/dist/lime-crm-building-blocks/p-b3529254.entry.js +1 -0
- package/dist/lime-crm-building-blocks/{p-2bfd351d.entry.js → p-b48d7d23.entry.js} +1 -1
- package/dist/lime-crm-building-blocks/{p-b373c60f.entry.js → p-b6807166.entry.js} +1 -1
- package/dist/lime-crm-building-blocks/{p-318369ae.entry.js → p-b6c2d93b.entry.js} +1 -1
- package/dist/lime-crm-building-blocks/{p-d82a2424.entry.js → p-c46802cd.entry.js} +1 -1
- package/dist/lime-crm-building-blocks/{p-9099b440.entry.js → p-c635f826.entry.js} +1 -1
- package/dist/lime-crm-building-blocks/{p-fec173db.entry.js → p-d816fcc8.entry.js} +1 -1
- package/dist/lime-crm-building-blocks/{p-4594c2b1.entry.js → p-d8ce3497.entry.js} +1 -1
- package/dist/lime-crm-building-blocks/{p-0f74d662.entry.js → p-d8d32cb1.entry.js} +1 -1
- package/dist/lime-crm-building-blocks/{p-99556fc0.entry.js → p-de7724f0.entry.js} +1 -1
- package/dist/lime-crm-building-blocks/{p-92403251.entry.js → p-e910963c.entry.js} +1 -1
- package/dist/lime-crm-building-blocks/{p-4274cbe3.entry.js → p-ea6ab8b0.entry.js} +1 -1
- package/dist/lime-crm-building-blocks/{p-eedbf69a.entry.js → p-ee7bd504.entry.js} +1 -1
- package/dist/lime-crm-building-blocks/{p-e1f35866.entry.js → p-f024c185.entry.js} +1 -1
- package/dist/lime-crm-building-blocks/{p-7bb2788b.entry.js → p-f102f169.entry.js} +1 -1
- package/dist/lime-crm-building-blocks/{p-2984005d.entry.js → p-f1060c88.entry.js} +1 -1
- package/dist/lime-crm-building-blocks/{p-17588c29.entry.js → p-f3905fa2.entry.js} +1 -1
- package/dist/lime-crm-building-blocks/{p-ac97c7cc.entry.js → p-fc372344.entry.js} +1 -1
- package/dist/types/components/condition-tree/condition-tree-combinators.d.ts +47 -0
- package/dist/types/components/condition-tree/condition-tree-editor/condition-tree-editor.d.ts +84 -0
- package/dist/types/components/condition-tree/condition-tree-nodes.d.ts +130 -0
- package/dist/types/components/condition-tree/condition-tree-open-state.d.ts +76 -0
- package/dist/types/components/condition-tree/condition-tree-translate.d.ts +11 -0
- package/dist/types/components/condition-tree/condition-tree-view-context.d.ts +48 -0
- package/dist/types/components/condition-tree/condition-tree.d.ts +177 -0
- package/dist/types/components/condition-tree/condition-tree.types.d.ts +323 -0
- package/dist/types/components/condition-tree/group-node-view.d.ts +30 -0
- package/dist/types/components/condition-tree/leaf-node-view.d.ts +21 -0
- package/dist/types/components/rule-editor/rule-editor-mode-view.d.ts +22 -0
- package/dist/types/components/rule-editor/rule-editor-modes.d.ts +43 -0
- package/dist/types/components/rule-editor/rule-editor.d.ts +129 -5
- package/dist/types/components/rule-editor/rule-editor.types.d.ts +16 -0
- package/dist/types/components.d.ts +412 -4
- package/dist/types/index.d.ts +2 -0
- package/dist/types/interface.d.ts +2 -0
- package/package.json +3 -3
- package/dist/lime-crm-building-blocks/p-1e83a491.entry.js +0 -1
- package/dist/lime-crm-building-blocks/p-73f79d42.entry.js +0 -1
- package/dist/lime-crm-building-blocks/p-761deada.entry.js +0 -1
- package/dist/lime-crm-building-blocks/p-b8d74591.entry.js +0 -1
- package/dist/lime-crm-building-blocks/p-e8a7a94c.entry.js +0 -1
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
import { h } from "@stencil/core";
|
|
2
|
+
import { pathKey } from "./condition-tree-nodes";
|
|
3
|
+
import { handleDelete, IssuesView, } from "./condition-tree-view-context";
|
|
4
|
+
/**
|
|
5
|
+
* One condition: a chip that summarizes it, and the editor it opens.
|
|
6
|
+
* @param props
|
|
7
|
+
*/
|
|
8
|
+
export const LeafView = (props) => {
|
|
9
|
+
const { node, description, path, ctx } = props;
|
|
10
|
+
const isOpen = ctx.openNode === node;
|
|
11
|
+
return [
|
|
12
|
+
h("limel-popover", { class: "leaf", key: pathKey(path), open: isOpen, openDirection: "bottom-start", onClose: handleClose(ctx) }, h(ChipView, { node: node, description: description, path: path, ctx: ctx }), h("limebb-condition-tree-editor", { platform: ctx.platform, context: ctx.context, open: isOpen, editor: description.editor, value: node, heading: description.chip.label, negated: ctx.negatable ? description.negated : undefined, readonly: ctx.readonly, disabled: ctx.disabled, onNegateChange: handleNegate(path, ctx), onConditionChange: handleConditionChange(path, ctx) })),
|
|
13
|
+
h(IssuesView, { issues: description.issues }),
|
|
14
|
+
];
|
|
15
|
+
};
|
|
16
|
+
/**
|
|
17
|
+
* The chip that summarizes a condition: `limebb-filter-chip` unless the
|
|
18
|
+
* condition named another component, and either way the control the tree
|
|
19
|
+
* drives — it selects, locks and removes it the same way.
|
|
20
|
+
*
|
|
21
|
+
* The built-in chip is written out as itself rather than reached through the
|
|
22
|
+
* same tag name as the rest, so that the build sees it: a tag that only ever
|
|
23
|
+
* appears as a string is not counted as a dependency, and the chip would then
|
|
24
|
+
* never be defined for a consumer importing one component at a time.
|
|
25
|
+
* @param props
|
|
26
|
+
*/
|
|
27
|
+
const ChipView = (props) => {
|
|
28
|
+
const { component } = props.description.chip;
|
|
29
|
+
if (!component) {
|
|
30
|
+
return h("limebb-filter-chip", Object.assign({}, drivenProps(props)));
|
|
31
|
+
}
|
|
32
|
+
const Chip = component.name;
|
|
33
|
+
return h(Chip, Object.assign({}, component.props, drivenProps(props)));
|
|
34
|
+
};
|
|
35
|
+
/**
|
|
36
|
+
* What the tree tells a chip, whichever chip it is. Spread after the
|
|
37
|
+
* descriptor's own props, so that a chip cannot opt out of the tree's state.
|
|
38
|
+
* @param props
|
|
39
|
+
*/
|
|
40
|
+
function drivenProps(props) {
|
|
41
|
+
const { node, description, path, ctx } = props;
|
|
42
|
+
const { chip } = description;
|
|
43
|
+
return {
|
|
44
|
+
slot: 'trigger',
|
|
45
|
+
platform: ctx.platform,
|
|
46
|
+
label: chip.label,
|
|
47
|
+
value: chip.value,
|
|
48
|
+
icon: chip.icon,
|
|
49
|
+
invalid: chip.invalid,
|
|
50
|
+
selected: ctx.openNode === node,
|
|
51
|
+
readonly: ctx.readonly,
|
|
52
|
+
disabled: ctx.disabled,
|
|
53
|
+
removable: !ctx.readonly,
|
|
54
|
+
onClick: handleOpen(node, description, ctx),
|
|
55
|
+
onRemove: handleDelete(path, ctx),
|
|
56
|
+
};
|
|
57
|
+
}
|
|
58
|
+
const handleOpen = (node, description, ctx) => () => {
|
|
59
|
+
if (description.editor && !ctx.disabled) {
|
|
60
|
+
ctx.onOpen(node);
|
|
61
|
+
}
|
|
62
|
+
};
|
|
63
|
+
const handleClose = (ctx) => (event) => {
|
|
64
|
+
event.stopPropagation();
|
|
65
|
+
ctx.onOpen(null);
|
|
66
|
+
};
|
|
67
|
+
const handleNegate = (path, ctx) => (event) => {
|
|
68
|
+
event.stopPropagation();
|
|
69
|
+
ctx.onNegate(path, event.detail);
|
|
70
|
+
};
|
|
71
|
+
const handleConditionChange = (path, ctx) => (event) => {
|
|
72
|
+
event.stopPropagation();
|
|
73
|
+
ctx.onConditionChange(path, event.detail);
|
|
74
|
+
};
|
|
@@ -84,7 +84,7 @@ export class CurrencyPicker {
|
|
|
84
84
|
};
|
|
85
85
|
}
|
|
86
86
|
render() {
|
|
87
|
-
return (h("limel-picker", { key: '
|
|
87
|
+
return (h("limel-picker", { key: 'e1c19958d4a1e01b3e4457df228f3385afc7c2dc', label: this.label || this.defaultLabel, value: this.createListItem(this.value), helperText: this.helperText, onChange: this.handleChange, badgeIcons: false, disabled: this.disabled, required: this.required, readonly: this.readonly, invalid: this.readonly, searcher: this.search }));
|
|
88
88
|
}
|
|
89
89
|
getCurrencyName(code) {
|
|
90
90
|
var _a;
|
|
@@ -17,7 +17,7 @@ export class DashboardComponent {
|
|
|
17
17
|
};
|
|
18
18
|
}
|
|
19
19
|
render() {
|
|
20
|
-
return [this.renderHeader(), h("slot", { key: '
|
|
20
|
+
return [this.renderHeader(), h("slot", { key: 'ba53d5b138de483e0e00338af99323ae0985be08', name: "content" })];
|
|
21
21
|
}
|
|
22
22
|
static get is() { return "limebb-dashboard-widget"; }
|
|
23
23
|
static get encapsulation() { return "shadow"; }
|
|
@@ -66,7 +66,7 @@ export class DatePicker {
|
|
|
66
66
|
if (this.value) {
|
|
67
67
|
this.shouldEmitValueAsString = typeof this.value === 'string';
|
|
68
68
|
}
|
|
69
|
-
return (h("limel-date-picker", { key: '
|
|
69
|
+
return (h("limel-date-picker", { key: 'f7862d367f9cbf03a57d5da9e668daddc782d09f', disabled: this.disabled, readonly: this.readonly, invalid: this.invalid, label: this.label, placeholder: this.placeholder, helperText: this.helperText, required: this.required, value: this.parseDateValue(), type: this.type, language: this.language, formatter: this.formatter, onChange: this.handleChange }));
|
|
70
70
|
}
|
|
71
71
|
parseDateValue() {
|
|
72
72
|
const value = this.value;
|
|
@@ -33,7 +33,7 @@ export class DateRange {
|
|
|
33
33
|
this.originalEndTime = this.endTime;
|
|
34
34
|
}
|
|
35
35
|
render() {
|
|
36
|
-
return (h("div", { key: '
|
|
36
|
+
return (h("div", { key: '164c0dd19a89356dcd9186768033d7974006dcb5', class: "date-pickers" }, this.renderStartDatePicker(), this.renderEndDatePicker()));
|
|
37
37
|
}
|
|
38
38
|
renderStartDatePicker() {
|
|
39
39
|
if (!this.originalStartTime) {
|
|
@@ -44,7 +44,7 @@ export class DocumentChips {
|
|
|
44
44
|
this.revokeAllBlobUrls();
|
|
45
45
|
}
|
|
46
46
|
render() {
|
|
47
|
-
return (h(Host, { key: '
|
|
47
|
+
return (h(Host, { key: '2e28ebeac60bd5da2ee8123d3b9d842184574cf4', role: "list", "aria-label": this.accessibleLabel }, this.files.map((file) => this.renderFile(file))));
|
|
48
48
|
}
|
|
49
49
|
renderFile(file) {
|
|
50
50
|
const isReady = !file.uploadState || file.uploadState === 'done';
|
|
@@ -78,10 +78,10 @@ export class DocumentItemComponent {
|
|
|
78
78
|
render() {
|
|
79
79
|
const isUnavailable = this.isUnavailable();
|
|
80
80
|
const image = this.getImage();
|
|
81
|
-
return (h(Host, { key: '
|
|
81
|
+
return (h(Host, { key: '2dc84cd76b18d18e88773d95360fce70fd3f889e', id: String(this.item.file.id), class: {
|
|
82
82
|
'has-image': !!image,
|
|
83
83
|
'has-error': !!this.item.hasError,
|
|
84
|
-
}, role: this.type === 'radio' ? 'radio' : 'checkbox', "aria-checked": this.item.selected ? 'true' : 'false', "aria-disabled": isUnavailable ? 'true' : 'false', tabIndex: isUnavailable ? -1 : 0 }, h("limel-card", { key: '
|
|
84
|
+
}, role: this.type === 'radio' ? 'radio' : 'checkbox', "aria-checked": this.item.selected ? 'true' : 'false', "aria-disabled": isUnavailable ? 'true' : 'false', tabIndex: isUnavailable ? -1 : 0 }, h("limel-card", { key: '07cb1a3f10d57810f818d7391052f81a0d37a0a5', image: image, clickable: isUnavailable ? false : true, onClick: this.handleDocumentItemClick, onKeyDown: this.handleKeyDown }, h("div", { key: 'bded9a7c6cd9427125286dbce6b5e4b24153cae1', slot: "component" }, this.renderFileSize(), this.renderBooleanInput())), this.renderHelp()));
|
|
85
85
|
}
|
|
86
86
|
renderBooleanInput() {
|
|
87
87
|
const id = this.getControlId();
|
|
@@ -76,7 +76,7 @@ export class DocumentPicker {
|
|
|
76
76
|
this.labelId = createRandomString();
|
|
77
77
|
}
|
|
78
78
|
render() {
|
|
79
|
-
return (h(Host, { key: '
|
|
79
|
+
return (h(Host, { key: '8138e0b7f0293f202538badd54b36cd8aae6b803' }, h("limel-notched-outline", { key: '78d990077f20983a0b650e5fb09b0d6e464b4af9', labelId: this.labelId, label: this.label, required: this.required, invalid: this.invalid, hasFloatingLabel: true }, h("limel-masonry-layout", { key: 'ba2cac65bb707cd2b81a434ced3e00f440d84e58', slot: "content", role: this.type === 'radio' ? 'radiogroup' : 'group', "aria-labelledby": this.label ? this.labelId : undefined, "aria-describedby": this.helperText ? this.helperTextId : undefined }, this.renderItems())), this.renderHelperLine()));
|
|
80
80
|
}
|
|
81
81
|
renderItems() {
|
|
82
82
|
return this.items.map((item) => (h("limebb-document-item", { platform: this.platform, context: this.context, item: item, key: item.file.id, type: this.type, onInteract: this.handleItemInteract })));
|
|
@@ -217,7 +217,7 @@ export class FeedTimelineItem {
|
|
|
217
217
|
render() {
|
|
218
218
|
var _a, _b;
|
|
219
219
|
const helperTextId = `helper-text-${this.item.id}`;
|
|
220
|
-
return (h(Host, { key: '
|
|
220
|
+
return (h(Host, { key: '8348e3e4331d6e82b450f018901cc7de3b599954', id: this.item.id, class: {
|
|
221
221
|
'has-unpromoted-actions': !!((_a = this.item.unpromotedActions) === null || _a === void 0 ? void 0 : _a.length),
|
|
222
222
|
'has-author-picture': !!((_b = this.item.author) === null || _b === void 0 ? void 0 : _b.picture),
|
|
223
223
|
'shows-less': !this.showMore,
|
|
@@ -8,7 +8,7 @@ import { h } from "@stencil/core";
|
|
|
8
8
|
*/
|
|
9
9
|
export class FeedItemThumbnailFileInfo {
|
|
10
10
|
render() {
|
|
11
|
-
return h("span", { key: '
|
|
11
|
+
return h("span", { key: '7290a59bad25cf3b5a0859438745867bb62837cc' }, this.description);
|
|
12
12
|
}
|
|
13
13
|
static get is() { return "limebb-feed-item-thumbnail-file-info"; }
|
|
14
14
|
static get encapsulation() { return "shadow"; }
|
|
@@ -103,7 +103,7 @@ export class Feed {
|
|
|
103
103
|
this.highlighter.unregisterFeed(this.feedItemElement);
|
|
104
104
|
}
|
|
105
105
|
render() {
|
|
106
|
-
return (h(Host, { key: '
|
|
106
|
+
return (h(Host, { key: '67cdc2679d56efee3433fbfa23f434fa284163fa', role: "log", "aria-busy": this.loading ? 'true' : 'false', style: {
|
|
107
107
|
'--limebb-feed-highlight-duration': `${ITEM_HIGHLIGHT_DURATION}ms`,
|
|
108
108
|
} }, this.renderLoadMore(), this.renderEmptyFeedMessage(), this.renderSpinner(), this.renderFeedItems()));
|
|
109
109
|
}
|
|
@@ -102,8 +102,8 @@ export class FilterChip {
|
|
|
102
102
|
const items = this.getDisplayItems();
|
|
103
103
|
const conjunction = this.getConjunctionText();
|
|
104
104
|
const helperLabel = this.getHelperLabel(items, conjunction);
|
|
105
|
-
return (h(Host, { key: '
|
|
106
|
-
this.getFilterLabel(), "aria-pressed": this.getAriaPressed(), onKeyDown: this.handleKeyDown, disabled: this.disabled }, this.renderIcon(), this.renderValue(items, conjunction)), this.renderRemoveButton(chipId), h("limel-tooltip", { key: '
|
|
105
|
+
return (h(Host, { key: '1528a86d1e7f7f1749cc895787bca1e77c8678aa' }, this.renderLabel(), h("button", { key: '07dc7184d0a53472ed0d595a07941077aabaa5c0', class: { chip: true }, type: "button", id: chipId, "aria-label": [this.label, helperLabel].filter(Boolean).join(', ') ||
|
|
106
|
+
this.getFilterLabel(), "aria-pressed": this.getAriaPressed(), onKeyDown: this.handleKeyDown, disabled: this.disabled }, this.renderIcon(), this.renderValue(items, conjunction)), this.renderRemoveButton(chipId), h("limel-tooltip", { key: '665f0b32f7ccdc27b72a56bee9d39e83fb3945b7', elementId: chipId, label: this.label || this.getFilterLabel(), helperLabel: helperLabel })));
|
|
107
107
|
}
|
|
108
108
|
/**
|
|
109
109
|
* `aria-pressed` only makes sense for an interactive toggle. A readonly
|
|
@@ -43,7 +43,7 @@ export class FilterConditionPicker {
|
|
|
43
43
|
render() {
|
|
44
44
|
const items = this.buildItems();
|
|
45
45
|
const selected = this.selectedOption(items);
|
|
46
|
-
return (h(Host, { key: '
|
|
46
|
+
return (h(Host, { key: 'ca926963d368460db20fa8961f49825d19ae2c07' }, h("limel-select", { key: '5571b580b7da63d1a95fef6cb9b204ed3b32cf75', class: "condition", label: this.accessibleLabel, disabled: this.disabled, options: items, value: selected, onChange: this.handleChange })));
|
|
47
47
|
}
|
|
48
48
|
buildItems() {
|
|
49
49
|
var _a;
|
|
@@ -35,7 +35,7 @@ export class IconPicker {
|
|
|
35
35
|
icon: this.value,
|
|
36
36
|
};
|
|
37
37
|
}
|
|
38
|
-
return (h("limel-picker", { key: '
|
|
38
|
+
return (h("limel-picker", { key: 'bf6b76bbcea838150261e9e0037b1d7ca1ee08d1', label: this.label, helperText: this.helperText, disabled: this.disabled, readonly: this.readonly, invalid: this.invalid, required: this.required, value: value, searcher: this.search, onChange: this.handleChange, badgeIcons: false, leadingIcon: "search", searchLabel: "Start typing to find the right icon" }));
|
|
39
39
|
}
|
|
40
40
|
static get is() { return "limebb-icon-picker"; }
|
|
41
41
|
static get encapsulation() { return "shadow"; }
|
|
@@ -92,7 +92,7 @@ export class InfoTileAdminConfig {
|
|
|
92
92
|
},
|
|
93
93
|
];
|
|
94
94
|
return [
|
|
95
|
-
h("limel-button-group", { key: '
|
|
95
|
+
h("limel-button-group", { key: '68999f607fd66a5a451929d6720200734c6505ea', value: buttons.filter(this.isValidButton), onChange: this.handleChangeType }),
|
|
96
96
|
this.renderFormatConfig(),
|
|
97
97
|
];
|
|
98
98
|
}
|
|
@@ -116,7 +116,7 @@ export class InfoTile {
|
|
|
116
116
|
const errorProps = Object.assign(Object.assign({}, baseProps), { icon: 'error', prefix: 'ERROR', loading: true, label: this.getLabel(filter) });
|
|
117
117
|
const normalProps = Object.assign(Object.assign({}, baseProps), { label: this.getLabel(filter), link: this.getLink(filter), loading: this.loading, value: value === null || value === void 0 ? void 0 : value.value.trim() });
|
|
118
118
|
const props = !filter || this.error ? errorProps : normalProps;
|
|
119
|
-
return (h("limel-info-tile", Object.assign({ key: '
|
|
119
|
+
return (h("limel-info-tile", Object.assign({ key: '802c93fade2b3aff10e53c1a970798b994bff2d2', class: { error: !filter || this.error } }, props)));
|
|
120
120
|
}
|
|
121
121
|
/**
|
|
122
122
|
* Effective `reducedPresence` for this render. The boolean prop
|
|
@@ -27,7 +27,7 @@ export class KanbanGroup {
|
|
|
27
27
|
};
|
|
28
28
|
}
|
|
29
29
|
render() {
|
|
30
|
-
return (h(Host, { key: '
|
|
30
|
+
return (h(Host, { key: 'b00741bf0f2c617453ce53ce2e6ec852472f20dc' }, this.renderHelp(), this.renderGroupHeading(), this.renderGroupSummary(), this.renderItems()));
|
|
31
31
|
}
|
|
32
32
|
renderGroupSummary() {
|
|
33
33
|
if (!this.summary || !this.totalCount) {
|
|
@@ -55,7 +55,7 @@ export class KanbanItemComponent {
|
|
|
55
55
|
}
|
|
56
56
|
render() {
|
|
57
57
|
var _a, _b;
|
|
58
|
-
return (h(Host, { key: '
|
|
58
|
+
return (h(Host, { key: 'cc405f1c7ffd4e8a72158f53863b604e38df882e', id: this.item.id.toString(), class: {
|
|
59
59
|
'has-unpromoted-actions': !!((_a = this.item.unpromotedActions) === null || _a === void 0 ? void 0 : _a.length),
|
|
60
60
|
'is-selected': !!((_b = this.item) === null || _b === void 0 ? void 0 : _b.selected),
|
|
61
61
|
}, style: {
|
|
@@ -52,7 +52,7 @@ export class LimeQueryFilterComparisonEditorComponent {
|
|
|
52
52
|
(_a = this.propertySelectorEl) === null || _a === void 0 ? void 0 : _a.focus();
|
|
53
53
|
}
|
|
54
54
|
render() {
|
|
55
|
-
return (h(Host, { key: '
|
|
55
|
+
return (h(Host, { key: '98144a439c21e88ba452732933dd155afa7f90d8' }, this.renderPropertySelector(), this.renderConditionPicker(), this.renderValueInput()));
|
|
56
56
|
}
|
|
57
57
|
renderPropertySelector() {
|
|
58
58
|
return (h("limebb-property-selector", { ref: (el) => (this.propertySelectorEl = el), class: "property", label: "Property", platform: this.platform, context: this.context, limetype: this.limetype, value: this.expression.key, required: true, onChange: this.handlePropertyChange }));
|
package/dist/collection/components/lime-query-builder/expressions/lime-query-filter-comparison.js
CHANGED
|
@@ -55,11 +55,11 @@ export class LimeQueryFilterComparisonComponent {
|
|
|
55
55
|
const propertyType = hasKey
|
|
56
56
|
? this.getPropertyType(this.expression.key)
|
|
57
57
|
: undefined;
|
|
58
|
-
return (h(Host, { key: '
|
|
58
|
+
return (h(Host, { key: 'ebffd40bd7fe14023be8081b21a164fba7ff7d78' }, this.renderHeader(), h("limel-popover", { key: '1e6b11ad372ae6fe98d69d3da739f0f61c2e2015', open: this.isOpen, openDirection: "bottom-start", onClose: this.handleClose }, h("limebb-filter-chip", { key: '1017d1ff6512104d073430d7d233b3bfe14c1edd', slot: "trigger", platform: this.platform, label: hasKey
|
|
59
59
|
? this.getPropertyLabel(this.expression.key)
|
|
60
60
|
: undefined, condition: hasKey
|
|
61
61
|
? operatorToCondition(this.expression.op)
|
|
62
|
-
: undefined, propertyType: propertyType, value: hasKey ? this.chipValue() : 'New condition', conjunction: isList ? 'or' : undefined, selected: this.isOpen, removable: true, onClick: this.handleOpen, onRemove: this.removeExpression }), h("limebb-lime-query-filter-comparison-editor", { key: '
|
|
62
|
+
: undefined, propertyType: propertyType, value: hasKey ? this.chipValue() : 'New condition', conjunction: isList ? 'or' : undefined, selected: this.isOpen, removable: true, onClick: this.handleOpen, onRemove: this.removeExpression }), h("limebb-lime-query-filter-comparison-editor", { key: '802cd50b41afc9a3155d50cf8a28d7544cd673c1', platform: this.platform, context: this.context, limetype: this.limetype, activeLimetype: this.activeLimetype, expression: this.expression, propertyType: propertyType, onExpressionChange: this.handleEditorChange }))));
|
|
63
63
|
}
|
|
64
64
|
getPropertyLabel(key) {
|
|
65
65
|
return this.resolveProperty(key).labels.join(' › ');
|
package/dist/collection/components/lime-query-builder/expressions/lime-query-filter-group.js
CHANGED
|
@@ -90,9 +90,9 @@ export class LimeQueryFilterGroupComponent {
|
|
|
90
90
|
const combinator = getCombinator(this.expression);
|
|
91
91
|
const inner = getInnerAndOr(this.expression);
|
|
92
92
|
const selected = COMBINATOR_OPTIONS.find((o) => o.value === combinator);
|
|
93
|
-
return (h(Host, { key: '
|
|
93
|
+
return (h(Host, { key: 'f41c27e721c5241f03ebc380fc0bee1bc6488ba8', "data-op": combinator, style: {
|
|
94
94
|
'--limebb-query-filter-group-color-code': OP_STYLE[combinator].color,
|
|
95
|
-
} }, h("div", { key: '
|
|
95
|
+
} }, h("div", { key: '6dee3189e64ff49cc6b4234fcacabbcc592c56a7', class: "group" }, h("div", { key: 'c92e073de445fcefa48e8d90eeaa0357f2fbc9ea', class: "group-header" }, h("limel-select", { key: 'd0de8053b240e5d40b2f9d1de2defdb5257383b6', class: "combinator", label: "Match", value: selected, options: COMBINATOR_OPTIONS, onChange: this.handleCombinatorChange }), h("limel-icon-button", { key: '44b099283399ab33a906f0e7acc940dc39041b10', class: "delete-group", icon: "trash", label: "Delete this group", onClick: this.handleDeleteGroup })), h("ul", { key: 'a8d06013ab21aa149ea1dcf2293ffbb5d0d13e61', class: "rows" }, inner.exp.map(this.renderChildExpression), h("limel-chip", { key: 'f2866e974c93a0633b487d9943e63b929d67a7be', role: "listitem", class: "add-condition", text: "Condition", icon: { name: 'plus_math', title: 'Add' }, onClick: this.handleAddChildExpression })), h("limel-chip", { key: 'defd0ab0875920887391c2114139b92a63d10650', class: "add-group", size: "small", text: "Group", icon: {
|
|
96
96
|
name: 'plus_math',
|
|
97
97
|
title: 'Add',
|
|
98
98
|
color: 'var(--group-rail-color)',
|
|
@@ -35,7 +35,7 @@ export class LimeQueryFilterNotComponent {
|
|
|
35
35
|
};
|
|
36
36
|
}
|
|
37
37
|
render() {
|
|
38
|
-
return (h("div", { key: '
|
|
38
|
+
return (h("div", { key: '7e9bac8c51b903d1a569d1272167870701412729', class: "expression" }, this.label && h("limel-header", { key: 'aa5d7a0d55a5b2754e02c58dc5c08614b8a0808b', heading: this.label }), h("limebb-lime-query-filter-expression", { key: '573b8435f73b10bf1eb04ced205af5c4b295a01d', platform: this.platform, context: this.context, label: "Not", limetype: this.limetype, activeLimetype: this.activeLimetype, expression: this.expression.exp, onExpressionChange: this.handleExpressionChange })));
|
|
39
39
|
}
|
|
40
40
|
static get is() { return "limebb-lime-query-filter-not"; }
|
|
41
41
|
static get encapsulation() { return "shadow"; }
|
|
@@ -172,7 +172,7 @@ export class LimeQueryBuilder {
|
|
|
172
172
|
}
|
|
173
173
|
}
|
|
174
174
|
render() {
|
|
175
|
-
return (h(Host, { key: '
|
|
175
|
+
return (h(Host, { key: '0f28a00b055f7e9094dd26cf733acba1158dda45' }, this.renderHeader(), this.renderContent()));
|
|
176
176
|
}
|
|
177
177
|
renderContent() {
|
|
178
178
|
const visualModeSupported = this.checkVisualModeSupport();
|
|
@@ -154,7 +154,7 @@ export class LimeQueryResponseFormatBuilder {
|
|
|
154
154
|
}
|
|
155
155
|
render() {
|
|
156
156
|
const visualModeSupported = this.checkVisualModeSupport();
|
|
157
|
-
return (h("div", { key: '
|
|
157
|
+
return (h("div", { key: '4c041be9c674f687bb3d03c3b8c1377a1d2ec6ee', class: "response-format-builder" }, this.label && h("h1", { key: 'ba7ea3457146bae1e97f252ac041aba21a02c27f', class: "builder-label" }, this.label), this.helperText && (h("p", { key: '9c6d9c8a355f24fa89aadd7eb8f138997bc790c0', class: "builder-helper-text" }, this.helperText)), this.visualModeEnabled && (h("div", { key: '9b62a2ab35e98ac15b53af561a51262495689392', class: "mode-controls" }, this.renderModeSwitch(visualModeSupported))), !this.visualModeEnabled || this.mode === 'code' ? (h("div", { class: "code-mode" }, this.renderCodeEditor(visualModeSupported))) : (h("div", { class: "visual-mode" }, this.renderVisualMode()))));
|
|
158
158
|
}
|
|
159
159
|
renderModeSwitch(support) {
|
|
160
160
|
const visualDisabled = !support.visualModeSupported;
|
|
@@ -78,7 +78,7 @@ export class LimetypeField {
|
|
|
78
78
|
value: '',
|
|
79
79
|
};
|
|
80
80
|
options.unshift(emptyOption);
|
|
81
|
-
return (h("limel-select", { key: '
|
|
81
|
+
return (h("limel-select", { key: 'c649a9e99ec7af2055df7f1cd82cdd87f19ddde7', label: this.label, options: options, value: selectedOption, required: this.required, helperText: this.helperText, invalid: invalid, disabled: this.disabled || this.readonly, onChange: this.handleChange }));
|
|
82
82
|
}
|
|
83
83
|
componentWillRender() {
|
|
84
84
|
this.updatePropertyFields(this.value || '');
|
|
@@ -69,7 +69,7 @@ export class OrderByEditor {
|
|
|
69
69
|
}
|
|
70
70
|
}
|
|
71
71
|
render() {
|
|
72
|
-
return (h(Host, { key: '
|
|
72
|
+
return (h(Host, { key: 'f5426a11ccbc3f0e4159b50dea245f8da07f669c' }, this.renderEmptyState(), this.renderOrderByEditor()));
|
|
73
73
|
}
|
|
74
74
|
renderEmptyState() {
|
|
75
75
|
if (this.limetype) {
|
|
@@ -38,9 +38,9 @@ export class OrderByItemComponent {
|
|
|
38
38
|
render() {
|
|
39
39
|
const propertyPath = Object.keys(this.item)[0] || '';
|
|
40
40
|
const direction = this.item[propertyPath] || 'ASC';
|
|
41
|
-
return (h(Host, { key: '
|
|
41
|
+
return (h(Host, { key: 'f3c2d3fa47d0e5e11ff2c9d8372ff5a625814462' }, h("limebb-property-selector", { key: 'f6290981aa40a2807722d82e23a893c8511e7892', platform: this.platform, context: this.context, limetype: this.limetype, label: "Property", value: propertyPath, required: true, onChange: this.handlePathChange }), h("div", { key: '365c64b46f428ff6e97cd2682688991bde32ce60', class: "control-buttons" }, h("limel-icon-button", { key: 'b3a8eb5d27dee271a4b989c57d925dc4023b88c0', icon: direction === 'ASC'
|
|
42
42
|
? 'sort_ascending'
|
|
43
|
-
: 'sort_descending', label: direction === 'ASC' ? 'Ascending' : 'Descending', onClick: this.handleToggleDirection }), h("limel-icon-button", { key: '
|
|
43
|
+
: 'sort_descending', label: direction === 'ASC' ? 'Ascending' : 'Descending', onClick: this.handleToggleDirection }), h("limel-icon-button", { key: '12ce082489ae86a246b84a7a8091ce382bf2acbd', icon: "trash", label: "Remove", onClick: this.handleRemove }))));
|
|
44
44
|
}
|
|
45
45
|
static get is() { return "limebb-lime-query-order-by-item"; }
|
|
46
46
|
static get encapsulation() { return "shadow"; }
|
package/dist/collection/components/lime-query-builder/response-format/response-format-item.js
CHANGED
|
@@ -66,7 +66,7 @@ export class ResponseFormatItem {
|
|
|
66
66
|
}
|
|
67
67
|
render() {
|
|
68
68
|
return [
|
|
69
|
-
h("div", { key: '
|
|
69
|
+
h("div", { key: '313244ac97300ccce92dae6a4df928543546352e', class: "property-controls" }, h("div", { key: '3173914b62fe297a78d61b2caa0c556b25763e21', class: "property-path" }, h("limebb-property-selector", { key: 'ab640577df46b04c03ccd85bb8aafa902a3cd15f', platform: this.platform, context: this.context, limetype: this.limetype, label: "Property", value: this.item.path, required: true, onChange: this.handlePathChange }), h("div", { key: '69ca13975174e89a52991b6c023779a19041c355', class: "input-grid" }, this.renderAliasInput()), h("div", { key: 'd2cdec55803d8bdb08977193c94a773509ac29b3', class: "input-grid" }, this.renderDescriptionInput()), h("div", { key: '32cdad6b755992ad207dd8bf7bfb3dc99a289663', class: "button-group" }, this.renderAliasButton(), this.renderDescriptionButton())), h("limel-icon-button", { key: 'cfb3aaea2911a34842f3f8ab652e4cdd5a0bedb6', icon: "trash", label: "Remove property", onClick: this.handleRemove })),
|
|
70
70
|
];
|
|
71
71
|
}
|
|
72
72
|
renderAliasButton() {
|
|
@@ -5,8 +5,8 @@ import { h } from "@stencil/core";
|
|
|
5
5
|
export class LiveDocsInfo {
|
|
6
6
|
render() {
|
|
7
7
|
return [
|
|
8
|
-
h("div", { key: '
|
|
9
|
-
h("p", { key: '
|
|
8
|
+
h("div", { key: '189796d67448366e2af26362a29463afff7079a1', class: "header" }, h("limel-icon", { key: 'ffcee585bc30f862066e8dce49ad3330bca13afd', name: "not_showing_video_frames" }), h("h2", { key: '90c5c00930a425a39a144aec4232b76517184b2a' }, "Viewing this file type requires ", h("em", { key: 'c05d9ed5568c1a6cd393aa95e654ea19bf5c133a' }, "Live Docs"))),
|
|
9
|
+
h("p", { key: '09d96468c886fa0dcfe8b9b9a3df79c3f5c87f78' }, h("em", { key: 'c232fdf6277bbe910d23cebf18afadcd2118f43d' }, "Live Docs"), " not only enables you to view many file formats such as Microsoft Office documents, but it also empowers you to edit them right in the CRM. No need to download anything on your device!", h("a", { key: 'dbb74111b5995c013235ea585fa56fd41049540a', target: "_blank", href: "https://www.lime-technologies.com/en/lime-crm/live-docs/" }, "Learn more")),
|
|
10
10
|
];
|
|
11
11
|
}
|
|
12
12
|
static get is() { return "limebb-live-docs-info"; }
|
|
@@ -53,7 +53,7 @@ export class LocalePicker {
|
|
|
53
53
|
const value = this.value;
|
|
54
54
|
selectedOptions = options.find((option) => option.value === value);
|
|
55
55
|
}
|
|
56
|
-
return (h("limel-select", { key: '
|
|
56
|
+
return (h("limel-select", { key: 'a5dddeb9a8703c4c3f49d2aa8f6ca177765f9620', value: selectedOptions, options: sortBy(options, 'text'), helperText: this.helperText, label: this.label, required: this.required, disabled: this.disabled, readonly: this.readonly, onChange: this.handleChange, multiple: this.multipleChoice }));
|
|
57
57
|
}
|
|
58
58
|
static get is() { return "limebb-locale-picker"; }
|
|
59
59
|
static get encapsulation() { return "shadow"; }
|
|
@@ -56,7 +56,7 @@ export class NotificationListItem {
|
|
|
56
56
|
}
|
|
57
57
|
render() {
|
|
58
58
|
var _a, _b;
|
|
59
|
-
return (h(Host, { key: '
|
|
59
|
+
return (h(Host, { key: '112cc269de3b604b8ab58f407fe450c86c5f0c98', id: this.item.id, class: {
|
|
60
60
|
'is-clickable': this.isItemClickable(),
|
|
61
61
|
'is-read': !!((_a = this.item) === null || _a === void 0 ? void 0 : _a.read),
|
|
62
62
|
'is-selected': !!((_b = this.item) === null || _b === void 0 ? void 0 : _b.selected),
|
|
@@ -108,11 +108,11 @@ export class PercentageVisualizer {
|
|
|
108
108
|
render() {
|
|
109
109
|
const normalizedValue = this.getNormalizedValue();
|
|
110
110
|
const zeroPoint = this.getZeroPointPosition();
|
|
111
|
-
return (h(Host, { key: '
|
|
111
|
+
return (h(Host, { key: 'd98b9a92c8e20ee71c9cd4b0004cc92e71e3d681', class: this.getContainerClassList(), style: {
|
|
112
112
|
'--limebb-percentage-visualizer-zero-point-position': `${zeroPoint}%`,
|
|
113
113
|
'--limebb-percentage-visualizer-width': `${Math.abs(normalizedValue)}%`,
|
|
114
114
|
'--limebb-percentage-visualizer-rotate': `${normalizedValue >= 0 ? '0deg' : '180deg'}`,
|
|
115
|
-
} }, h("limel-notched-outline", { key: '
|
|
115
|
+
} }, h("limel-notched-outline", { key: '777218ebb6358304826eda6e09e797bddb70b03c', tabIndex: 0, role: "meter", "aria-valuemin": this.rangeMin, "aria-valuemax": this.rangeMax, "aria-valuenow": this.numValue, "aria-labelledby": this.labelId, "aria-describedby": this.helperTextId, label: this.label, labelId: this.labelId, invalid: this.invalid, required: this.required, hasValue: true, hasFloatingLabel: true, "aria-controls": this.helperTextId }, h("div", { key: '7b454018e8b772564797b31031584dc20e8bc05b', slot: "content" }, this.renderVisualization())), this.renderHelperLine()));
|
|
116
116
|
}
|
|
117
117
|
renderVisualization() {
|
|
118
118
|
if (this.reducePresence && (this.numValue === 0 || !this.hasValue())) {
|
|
@@ -33,11 +33,11 @@ function combinatorOptions(ctx) {
|
|
|
33
33
|
return [
|
|
34
34
|
{
|
|
35
35
|
value: 'all',
|
|
36
|
-
text: ctx.translator.get('webclient.
|
|
36
|
+
text: ctx.translator.get('webclient.combinator.all'),
|
|
37
37
|
},
|
|
38
38
|
{
|
|
39
39
|
value: 'any',
|
|
40
|
-
text: ctx.translator.get('webclient.
|
|
40
|
+
text: ctx.translator.get('webclient.combinator.any'),
|
|
41
41
|
},
|
|
42
42
|
];
|
|
43
43
|
}
|
|
@@ -45,7 +45,7 @@ function renderMutableGroupActions(node, path, isNegated, ctx) {
|
|
|
45
45
|
if (!ctx.isMutable) {
|
|
46
46
|
return null;
|
|
47
47
|
}
|
|
48
|
-
return (h("div", { class: "rule-node__header-actions" }, h("limel-switch", { class: "rule-node__negate-switch", label: ctx.translator.get('webclient.
|
|
48
|
+
return (h("div", { class: "rule-node__header-actions" }, h("limel-switch", { class: "rule-node__negate-switch", label: ctx.translator.get('webclient.negate'), value: isNegated, onChange: negateGroupHandler(node, path, ctx) }), h("limel-icon-button", { icon: "trash", label: ctx.translator.get('webclient.rule-editor.delete'), onClick: () => ctx.onDelete(path) })));
|
|
49
49
|
}
|
|
50
50
|
function renderNestedGroups(nestedGroups, groupBasePath, ctx) {
|
|
51
51
|
if (nestedGroups.length === 0) {
|
|
@@ -45,7 +45,7 @@ export class RuleChipPopover {
|
|
|
45
45
|
};
|
|
46
46
|
}
|
|
47
47
|
render() {
|
|
48
|
-
return (h("div", { key: '
|
|
48
|
+
return (h("div", { key: 'abb754c8d327cc82b5d4e7e44154e937c3aeb0d2', class: "popover" }, this.renderHeader(), this.renderBody()));
|
|
49
49
|
}
|
|
50
50
|
renderHeader() {
|
|
51
51
|
var _a, _b, _c, _d;
|
|
@@ -58,7 +58,7 @@ export class RuleChipPopover {
|
|
|
58
58
|
if (!this.isMutable) {
|
|
59
59
|
return null;
|
|
60
60
|
}
|
|
61
|
-
return (h("div", { slot: "actions", class: "popover__header-actions" }, h("limel-switch", { class: "popover__negate-switch", label: this.translator.get('webclient.
|
|
61
|
+
return (h("div", { slot: "actions", class: "popover__header-actions" }, h("limel-switch", { class: "popover__negate-switch", label: this.translator.get('webclient.negate'), value: this.isNegated, onChange: this.handleNegateChange }), h("limel-icon-button", { class: "popover__delete-button", icon: "trash", label: this.translator.get('webclient.rule-editor.delete'), onClick: this.handleDelete })));
|
|
62
62
|
}
|
|
63
63
|
get translator() {
|
|
64
64
|
return this.platform.get(PlatformServiceName.Translate);
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import { h } from "@stencil/core";
|
|
2
|
+
/**
|
|
3
|
+
* The shared string each mode is labelled from. Adverbs answering "when
|
|
4
|
+
* does this apply?", so they carry no rule-editor namespace and are
|
|
5
|
+
* spelled out here rather than built from the mode id — a key a
|
|
6
|
+
* translation extractor can find, and a human can grep for.
|
|
7
|
+
*/
|
|
8
|
+
const MODE_LABEL_KEYS = {
|
|
9
|
+
never: 'webclient.never',
|
|
10
|
+
always: 'webclient.always',
|
|
11
|
+
conditional: 'webclient.conditionally',
|
|
12
|
+
};
|
|
13
|
+
/**
|
|
14
|
+
* The segmented control that picks how the rule is written.
|
|
15
|
+
*
|
|
16
|
+
* `limel-button-group` renders radio inputs in one group, so at most
|
|
17
|
+
* one mode is ever selected. None is selected when `selected` is a mode
|
|
18
|
+
* the caller does not offer — a stored condition tree under a setting
|
|
19
|
+
* that offers only the unconditional modes.
|
|
20
|
+
* @param props
|
|
21
|
+
*/
|
|
22
|
+
export const RuleModeView = (props) => {
|
|
23
|
+
const { modes, selected, disabled, translator, onModeChange } = props;
|
|
24
|
+
return (h("limel-button-group", { value: modes.map((mode) => ({
|
|
25
|
+
id: mode,
|
|
26
|
+
title: translator.get(MODE_LABEL_KEYS[mode]),
|
|
27
|
+
selected: mode === selected,
|
|
28
|
+
})), disabled: disabled, onChange: (event) => {
|
|
29
|
+
event.stopPropagation();
|
|
30
|
+
onModeChange(event.detail.id);
|
|
31
|
+
} }));
|
|
32
|
+
};
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The id of the platform's "no condition" rule primitive. It reads
|
|
3
|
+
* nothing and always holds, which makes it the literal the
|
|
4
|
+
* unconditional modes are written with. Build those through
|
|
5
|
+
* {@link RULE_ALWAYS} and {@link RULE_NEVER} rather than from the id.
|
|
6
|
+
*
|
|
7
|
+
* @internal
|
|
8
|
+
*/
|
|
9
|
+
export const ALWAYS_PRIMITIVE_ID = 'limetech.always';
|
|
10
|
+
/**
|
|
11
|
+
* The rule that always holds.
|
|
12
|
+
*
|
|
13
|
+
* @alpha
|
|
14
|
+
*/
|
|
15
|
+
export const RULE_ALWAYS = Object.freeze({
|
|
16
|
+
type: 'ref',
|
|
17
|
+
id: ALWAYS_PRIMITIVE_ID,
|
|
18
|
+
});
|
|
19
|
+
/**
|
|
20
|
+
* The rule that never holds.
|
|
21
|
+
*
|
|
22
|
+
* @alpha
|
|
23
|
+
*/
|
|
24
|
+
export const RULE_NEVER = Object.freeze({
|
|
25
|
+
type: 'not',
|
|
26
|
+
rule: RULE_ALWAYS,
|
|
27
|
+
});
|
|
28
|
+
/**
|
|
29
|
+
* The rule a mode writes. `conditional` writes no rule of its own —
|
|
30
|
+
* its rule is whatever tree the author builds.
|
|
31
|
+
* @param mode
|
|
32
|
+
* @alpha
|
|
33
|
+
*/
|
|
34
|
+
export function ruleForMode(mode) {
|
|
35
|
+
if (mode === 'always') {
|
|
36
|
+
return RULE_ALWAYS;
|
|
37
|
+
}
|
|
38
|
+
if (mode === 'never') {
|
|
39
|
+
return RULE_NEVER;
|
|
40
|
+
}
|
|
41
|
+
return undefined;
|
|
42
|
+
}
|
|
43
|
+
/**
|
|
44
|
+
* The mode a rule reads back as, or `undefined` when there is no rule.
|
|
45
|
+
*
|
|
46
|
+
* The match is structural: only the two sentinels read back as an
|
|
47
|
+
* unconditional mode, and everything else — a group, a ref, a negation
|
|
48
|
+
* of anything but the always primitive — reads back as `conditional`.
|
|
49
|
+
* So a rule authored elsewhere as `all(always)` is `conditional` with
|
|
50
|
+
* one condition in it, even though it holds just as unconditionally.
|
|
51
|
+
* @param rule
|
|
52
|
+
* @alpha
|
|
53
|
+
*/
|
|
54
|
+
export function ruleMode(rule) {
|
|
55
|
+
if (!rule) {
|
|
56
|
+
return undefined;
|
|
57
|
+
}
|
|
58
|
+
if (isAlways(rule)) {
|
|
59
|
+
return 'always';
|
|
60
|
+
}
|
|
61
|
+
if (rule.type === 'not' && isAlways(rule.rule)) {
|
|
62
|
+
return 'never';
|
|
63
|
+
}
|
|
64
|
+
return 'conditional';
|
|
65
|
+
}
|
|
66
|
+
function isAlways(rule) {
|
|
67
|
+
return rule.type === 'ref' && rule.id === ALWAYS_PRIMITIVE_ID;
|
|
68
|
+
}
|