@limetech/lime-crm-building-blocks 1.135.1 → 1.136.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/filter-condition-icons-HypsDn6x.js +207 -0
- package/dist/cjs/{filter-group-logic-Dp9o1iOJ.js → filter-group-logic-BoF3Z5_P.js} +1 -1
- package/dist/cjs/{index-dBY184XR.js → index-B9Bi9dpZ.js} +90 -2
- package/dist/cjs/index.cjs.js +6 -0
- package/dist/cjs/{index.esm-Dgkx-Syd.js → index.esm-8LHVbTD0.js} +2 -2
- package/dist/cjs/lime-crm-building-blocks.cjs.js +2 -2
- package/dist/cjs/{lime-query-validation-BszGOirf.js → lime-query-validation-q-sH7XSs.js} +1 -1
- package/dist/cjs/limebb-alert-dialog.cjs.entry.js +2 -2
- package/dist/cjs/limebb-browser.cjs.entry.js +4 -4
- package/dist/cjs/limebb-chat-icon-list_3.cjs.entry.js +6 -6
- package/dist/cjs/limebb-chat-list.cjs.entry.js +3 -3
- package/dist/cjs/limebb-color-palette-picker.cjs.entry.js +2 -2
- package/dist/cjs/limebb-color-palette-swatches.cjs.entry.js +2 -2
- package/dist/cjs/limebb-component-config.cjs.entry.js +3 -3
- package/dist/cjs/limebb-component-picker.cjs.entry.js +2 -2
- package/dist/cjs/limebb-composer-toolbar.cjs.entry.js +4 -4
- package/dist/cjs/limebb-currency-picker.cjs.entry.js +3 -3
- package/dist/cjs/limebb-dashboard-widget.cjs.entry.js +2 -2
- package/dist/cjs/limebb-data-cells.cjs.entry.js +2 -2
- package/dist/cjs/limebb-date-picker.cjs.entry.js +3 -3
- package/dist/cjs/limebb-date-range.cjs.entry.js +2 -2
- package/dist/cjs/limebb-document-chips.cjs.entry.js +2 -2
- package/dist/cjs/limebb-document-item.cjs.entry.js +3 -3
- package/dist/cjs/limebb-document-picker.cjs.entry.js +2 -2
- package/dist/cjs/limebb-empty-state.cjs.entry.js +1 -1
- package/dist/cjs/limebb-feed-item-thumbnail-file-info.cjs.entry.js +2 -2
- package/dist/cjs/limebb-feed-timeline-item.cjs.entry.js +3 -3
- package/dist/cjs/limebb-feed.cjs.entry.js +3 -3
- package/dist/cjs/{limebb-lime-query-filter-comparison-editor_4.cjs.entry.js → limebb-filter-chip_5.cjs.entry.js} +360 -121
- package/dist/cjs/limebb-icon-picker.cjs.entry.js +2 -2
- package/dist/cjs/limebb-info-tile-currency-format.cjs.entry.js +1 -1
- package/dist/cjs/limebb-info-tile-date-format.cjs.entry.js +1 -1
- package/dist/cjs/limebb-info-tile-decimal-format.cjs.entry.js +1 -1
- package/dist/cjs/limebb-info-tile-format.cjs.entry.js +2 -2
- package/dist/cjs/limebb-info-tile-relative-date-format.cjs.entry.js +1 -1
- package/dist/cjs/limebb-info-tile-unit-format.cjs.entry.js +1 -1
- package/dist/cjs/limebb-info-tile.cjs.entry.js +4 -4
- package/dist/cjs/limebb-kanban-group.cjs.entry.js +3 -3
- package/dist/cjs/limebb-kanban-item.cjs.entry.js +3 -3
- package/dist/cjs/limebb-kanban.cjs.entry.js +1 -1
- package/dist/cjs/limebb-lime-query-builder.cjs.entry.js +4 -4
- package/dist/cjs/limebb-lime-query-filter-builder.cjs.entry.js +3 -3
- package/dist/cjs/limebb-lime-query-filter-comparison_2.cjs.entry.js +61 -45
- package/dist/cjs/limebb-lime-query-order-by-editor_2.cjs.entry.js +5 -5
- package/dist/cjs/limebb-lime-query-order-by-item.cjs.entry.js +3 -3
- package/dist/cjs/limebb-lime-query-response-format-builder.cjs.entry.js +4 -4
- package/dist/cjs/limebb-lime-query-response-format-editor_2.cjs.entry.js +2 -2
- package/dist/cjs/limebb-limeobject-file-viewer.cjs.entry.js +2 -2
- package/dist/cjs/limebb-live-docs-info.cjs.entry.js +3 -3
- package/dist/cjs/limebb-loader.cjs.entry.js +2 -2
- package/dist/cjs/limebb-locale-picker.cjs.entry.js +3 -3
- package/dist/cjs/limebb-mention-group-counter.cjs.entry.js +3 -3
- package/dist/cjs/limebb-mention.cjs.entry.js +2 -2
- package/dist/cjs/limebb-navigation-button_2.cjs.entry.js +3 -3
- package/dist/cjs/limebb-notification-item.cjs.entry.js +3 -3
- package/dist/cjs/limebb-notification-list.cjs.entry.js +2 -2
- package/dist/cjs/limebb-object-chip.cjs.entry.js +3 -3
- package/dist/cjs/limebb-percentage-visualizer.cjs.entry.js +4 -4
- package/dist/cjs/limebb-property-selector.cjs.entry.js +3 -3
- package/dist/cjs/limebb-rule-arg-filter-editor.cjs.entry.js +2 -2
- package/dist/cjs/limebb-rule-chip-popover.cjs.entry.js +4 -4
- package/dist/cjs/limebb-rule-editor.cjs.entry.js +3 -3
- package/dist/cjs/limebb-rule-gate.cjs.entry.js +3 -3
- package/dist/cjs/limebb-text-editor-picker.cjs.entry.js +1 -1
- package/dist/cjs/limebb-text-editor.cjs.entry.js +4 -4
- package/dist/cjs/limebb-trend-indicator.cjs.entry.js +3 -3
- package/dist/cjs/limebb-value-comparison-editor.cjs.entry.js +3 -3
- package/dist/cjs/{limetype-BayDf-QY.js → limetype-CK5MVyW0.js} +1 -1
- package/dist/cjs/loader.cjs.js +2 -2
- package/dist/cjs/type-resolution-CvlsQvQD.js +113 -0
- package/dist/cjs/{web-component-template-CZ0lPHIg.js → web-component-template-7B9wK2bO.js} +1 -1
- package/dist/collection/collection-manifest.json +1 -0
- 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/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.css +341 -0
- package/dist/collection/components/filter-chip/filter-chip.js +672 -0
- package/dist/collection/components/filter-chip/filter-chip.types.js +1 -0
- package/dist/collection/components/filter-chip/filter-condition-icons.js +199 -0
- 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 +64 -48
- package/dist/collection/components/lime-query-builder/expressions/lime-query-filter-group.css +5 -0
- 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/rule-chip-popover/rule-chip-popover.js +1 -1
- package/dist/collection/components/rule-editor/rule-editor.js +1 -1
- 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/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 -0
- package/dist/components/filter-condition-icons.js +1 -0
- 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-builder.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/lime-query-value-input.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-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-filter-chip.d.ts +11 -0
- package/dist/components/limebb-filter-chip.js +1 -0
- 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-arg-filter-editor.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/summary-popover.js +1 -1
- package/dist/components/typing-indicator.js +1 -1
- package/dist/esm/filter-condition-icons-D8CJOcfs.js +201 -0
- package/dist/esm/{filter-group-logic-1aucZQgy.js → filter-group-logic-CRznE2g-.js} +1 -1
- package/dist/esm/{index-DYpn0EkA.js → index-LEJjPpY0.js} +90 -2
- package/dist/esm/{index.esm-B1KM7sH7.js → index.esm-B7wJLMmp.js} +1 -1
- package/dist/esm/index.js +1 -0
- package/dist/esm/lime-crm-building-blocks.js +3 -3
- package/dist/esm/{lime-query-validation-CiIEITCJ.js → lime-query-validation-Dds_iPHd.js} +1 -1
- package/dist/esm/limebb-alert-dialog.entry.js +2 -2
- package/dist/esm/limebb-browser.entry.js +4 -4
- package/dist/esm/limebb-chat-icon-list_3.entry.js +6 -6
- package/dist/esm/limebb-chat-list.entry.js +3 -3
- package/dist/esm/limebb-color-palette-picker.entry.js +2 -2
- package/dist/esm/limebb-color-palette-swatches.entry.js +2 -2
- package/dist/esm/limebb-component-config.entry.js +3 -3
- package/dist/esm/limebb-component-picker.entry.js +2 -2
- package/dist/esm/limebb-composer-toolbar.entry.js +4 -4
- package/dist/esm/limebb-currency-picker.entry.js +3 -3
- package/dist/esm/limebb-dashboard-widget.entry.js +2 -2
- package/dist/esm/limebb-data-cells.entry.js +2 -2
- package/dist/esm/limebb-date-picker.entry.js +3 -3
- package/dist/esm/limebb-date-range.entry.js +2 -2
- package/dist/esm/limebb-document-chips.entry.js +2 -2
- package/dist/esm/limebb-document-item.entry.js +3 -3
- package/dist/esm/limebb-document-picker.entry.js +2 -2
- package/dist/esm/limebb-empty-state.entry.js +1 -1
- package/dist/esm/limebb-feed-item-thumbnail-file-info.entry.js +2 -2
- package/dist/esm/limebb-feed-timeline-item.entry.js +3 -3
- package/dist/esm/limebb-feed.entry.js +3 -3
- package/dist/esm/{limebb-lime-query-filter-comparison-editor_4.entry.js → limebb-filter-chip_5.entry.js} +357 -119
- package/dist/esm/limebb-icon-picker.entry.js +2 -2
- package/dist/esm/limebb-info-tile-currency-format.entry.js +1 -1
- package/dist/esm/limebb-info-tile-date-format.entry.js +1 -1
- package/dist/esm/limebb-info-tile-decimal-format.entry.js +1 -1
- package/dist/esm/limebb-info-tile-format.entry.js +2 -2
- package/dist/esm/limebb-info-tile-relative-date-format.entry.js +1 -1
- package/dist/esm/limebb-info-tile-unit-format.entry.js +1 -1
- package/dist/esm/limebb-info-tile.entry.js +4 -4
- package/dist/esm/limebb-kanban-group.entry.js +3 -3
- package/dist/esm/limebb-kanban-item.entry.js +3 -3
- package/dist/esm/limebb-kanban.entry.js +1 -1
- package/dist/esm/limebb-lime-query-builder.entry.js +4 -4
- package/dist/esm/limebb-lime-query-filter-builder.entry.js +3 -3
- package/dist/esm/limebb-lime-query-filter-comparison_2.entry.js +61 -45
- package/dist/esm/limebb-lime-query-order-by-editor_2.entry.js +5 -5
- package/dist/esm/limebb-lime-query-order-by-item.entry.js +3 -3
- package/dist/esm/limebb-lime-query-response-format-builder.entry.js +4 -4
- package/dist/esm/limebb-lime-query-response-format-editor_2.entry.js +2 -2
- package/dist/esm/limebb-limeobject-file-viewer.entry.js +2 -2
- package/dist/esm/limebb-live-docs-info.entry.js +3 -3
- package/dist/esm/limebb-loader.entry.js +2 -2
- package/dist/esm/limebb-locale-picker.entry.js +3 -3
- package/dist/esm/limebb-mention-group-counter.entry.js +3 -3
- package/dist/esm/limebb-mention.entry.js +2 -2
- package/dist/esm/limebb-navigation-button_2.entry.js +3 -3
- package/dist/esm/limebb-notification-item.entry.js +3 -3
- package/dist/esm/limebb-notification-list.entry.js +2 -2
- package/dist/esm/limebb-object-chip.entry.js +3 -3
- package/dist/esm/limebb-percentage-visualizer.entry.js +4 -4
- package/dist/esm/limebb-property-selector.entry.js +3 -3
- package/dist/esm/limebb-rule-arg-filter-editor.entry.js +2 -2
- package/dist/esm/limebb-rule-chip-popover.entry.js +4 -4
- package/dist/esm/limebb-rule-editor.entry.js +3 -3
- package/dist/esm/limebb-rule-gate.entry.js +3 -3
- package/dist/esm/limebb-text-editor-picker.entry.js +1 -1
- package/dist/esm/limebb-text-editor.entry.js +4 -4
- package/dist/esm/limebb-trend-indicator.entry.js +3 -3
- package/dist/esm/limebb-value-comparison-editor.entry.js +3 -3
- package/dist/esm/{limetype-CIkoDD1B.js → limetype-DH77rgZZ.js} +1 -1
- package/dist/esm/loader.js +3 -3
- package/dist/esm/type-resolution-CVEd2QZ8.js +110 -0
- package/dist/esm/{web-component-template-D6zkEjKN.js → web-component-template-CXFK-BYa.js} +1 -1
- 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-b264b37d.entry.js → p-00860497.entry.js} +1 -1
- package/dist/lime-crm-building-blocks/{p-c7dbd961.entry.js → p-00be69ac.entry.js} +1 -1
- package/dist/lime-crm-building-blocks/p-01ddcb14.entry.js +1 -0
- package/dist/lime-crm-building-blocks/{p-16fad0a8.entry.js → p-0bdfd7ab.entry.js} +1 -1
- package/dist/lime-crm-building-blocks/{p-6f0a5401.entry.js → p-15bb23c9.entry.js} +1 -1
- package/dist/lime-crm-building-blocks/{p-e174dccd.entry.js → p-1c67e198.entry.js} +1 -1
- package/dist/lime-crm-building-blocks/{p-26e25dbd.entry.js → p-2091d4c8.entry.js} +1 -1
- package/dist/lime-crm-building-blocks/{p-46225433.entry.js → p-23556cb1.entry.js} +1 -1
- package/dist/lime-crm-building-blocks/{p-fac7ff61.entry.js → p-2caee700.entry.js} +1 -1
- package/dist/lime-crm-building-blocks/{p-f22e2539.entry.js → p-31580e01.entry.js} +1 -1
- package/dist/lime-crm-building-blocks/{p-6299c46b.entry.js → p-342aae30.entry.js} +1 -1
- package/dist/lime-crm-building-blocks/{p-b424f55f.entry.js → p-37fbd50d.entry.js} +1 -1
- package/dist/lime-crm-building-blocks/{p-f011673a.entry.js → p-382ab76b.entry.js} +1 -1
- package/dist/lime-crm-building-blocks/{p-ff686a4e.entry.js → p-3a41d8ae.entry.js} +1 -1
- package/dist/lime-crm-building-blocks/{p-991783f8.entry.js → p-3c25e289.entry.js} +1 -1
- package/dist/lime-crm-building-blocks/{p-c8cf6e4d.entry.js → p-46cc4edb.entry.js} +1 -1
- package/dist/lime-crm-building-blocks/{p-0d6d8b72.entry.js → p-4e66111a.entry.js} +1 -1
- package/dist/lime-crm-building-blocks/{p-a2c8e1af.entry.js → p-4e7b8559.entry.js} +1 -1
- package/dist/lime-crm-building-blocks/{p-58e63c29.entry.js → p-4f398108.entry.js} +1 -1
- package/dist/lime-crm-building-blocks/{p-8c3970ed.entry.js → p-4fcb97ea.entry.js} +1 -1
- package/dist/lime-crm-building-blocks/{p-29dd2424.entry.js → p-5095a168.entry.js} +1 -1
- package/dist/lime-crm-building-blocks/p-50f5380d.entry.js +1 -0
- package/dist/lime-crm-building-blocks/p-52f39097.entry.js +1 -0
- package/dist/lime-crm-building-blocks/{p-191e4dcd.entry.js → p-5960143c.entry.js} +1 -1
- package/dist/lime-crm-building-blocks/p-5d2d0f4d.entry.js +1 -0
- package/dist/lime-crm-building-blocks/{p-4cd99453.entry.js → p-5e4c9115.entry.js} +1 -1
- package/dist/lime-crm-building-blocks/p-5f940ea8.entry.js +1 -0
- package/dist/lime-crm-building-blocks/{p-3f2f1826.entry.js → p-61ee03f9.entry.js} +1 -1
- package/dist/lime-crm-building-blocks/{p-6ee28dfc.entry.js → p-639032ba.entry.js} +1 -1
- package/dist/lime-crm-building-blocks/{p-9909b0bf.entry.js → p-6cfebec1.entry.js} +1 -1
- package/dist/lime-crm-building-blocks/{p-d8835b8c.entry.js → p-6db41866.entry.js} +1 -1
- package/dist/lime-crm-building-blocks/p-73fab4a9.entry.js +1 -0
- package/dist/lime-crm-building-blocks/{p-3bff70d2.entry.js → p-7597eb85.entry.js} +1 -1
- package/dist/lime-crm-building-blocks/{p-1a076d37.entry.js → p-7b119566.entry.js} +1 -1
- package/dist/lime-crm-building-blocks/{p-b7d917ed.entry.js → p-7dedd057.entry.js} +1 -1
- package/dist/lime-crm-building-blocks/{p-a21d6f7e.entry.js → p-840b817b.entry.js} +1 -1
- package/dist/lime-crm-building-blocks/{p-69cf07ba.entry.js → p-88bdf554.entry.js} +1 -1
- package/dist/lime-crm-building-blocks/{p-c72d3231.entry.js → p-8d41a7f8.entry.js} +1 -1
- package/dist/lime-crm-building-blocks/{p-ec22438d.entry.js → p-90f3e299.entry.js} +1 -1
- package/dist/lime-crm-building-blocks/p-9ad269dd.entry.js +1 -0
- package/dist/lime-crm-building-blocks/p-Bb18Bgig.js +1 -0
- package/dist/lime-crm-building-blocks/{p-BKtEmDNs.js → p-BxpMk4Zk.js} +1 -1
- package/dist/lime-crm-building-blocks/p-CVEd2QZ8.js +1 -0
- package/dist/lime-crm-building-blocks/p-D8CJOcfs.js +1 -0
- package/dist/lime-crm-building-blocks/{p-B5QzrGTX.js → p-DM0fyjo-.js} +1 -1
- package/dist/lime-crm-building-blocks/{p-BVxuJgRM.js → p-Dtg8KAQt.js} +1 -1
- package/dist/lime-crm-building-blocks/p-LEJjPpY0.js +2 -0
- package/dist/lime-crm-building-blocks/p-a201e304.entry.js +1 -0
- package/dist/lime-crm-building-blocks/{p-71e1c5f0.entry.js → p-b2b595cc.entry.js} +1 -1
- package/dist/lime-crm-building-blocks/{p-571777c3.entry.js → p-b6a8ad7a.entry.js} +1 -1
- package/dist/lime-crm-building-blocks/{p-7aaf805d.entry.js → p-b8e4a0d1.entry.js} +1 -1
- package/dist/lime-crm-building-blocks/{p-30f6d7ea.entry.js → p-b9c4df08.entry.js} +1 -1
- package/dist/lime-crm-building-blocks/{p-6c4521a0.entry.js → p-bb825e68.entry.js} +1 -1
- package/dist/lime-crm-building-blocks/{p-661e4700.entry.js → p-bec2bcef.entry.js} +1 -1
- package/dist/lime-crm-building-blocks/{p-041f1094.entry.js → p-c84136ae.entry.js} +1 -1
- package/dist/lime-crm-building-blocks/{p-b4b103c1.entry.js → p-c85e44a9.entry.js} +1 -1
- package/dist/lime-crm-building-blocks/{p-201498a9.entry.js → p-cf687fcd.entry.js} +1 -1
- package/dist/lime-crm-building-blocks/{p-c6cc1438.entry.js → p-cfc3f16b.entry.js} +1 -1
- package/dist/lime-crm-building-blocks/p-d7462e93.entry.js +1 -0
- package/dist/lime-crm-building-blocks/{p-52d8f7c2.entry.js → p-d8d30ec3.entry.js} +1 -1
- package/dist/lime-crm-building-blocks/{p-92014310.entry.js → p-db9ed6ed.entry.js} +1 -1
- package/dist/lime-crm-building-blocks/{p-b431df3c.entry.js → p-e0107a69.entry.js} +1 -1
- package/dist/lime-crm-building-blocks/{p-5573a867.entry.js → p-e2503bad.entry.js} +1 -1
- package/dist/lime-crm-building-blocks/p-e3d8fd1b.entry.js +1 -0
- package/dist/lime-crm-building-blocks/p-f382f2fa.entry.js +1 -0
- package/dist/lime-crm-building-blocks/{p-340250da.entry.js → p-f3d3ff7e.entry.js} +1 -1
- package/dist/lime-crm-building-blocks/{p-fb23df8e.entry.js → p-f5c44de2.entry.js} +1 -1
- package/dist/lime-crm-building-blocks/{p-DjwVpKf5.js → p-xIXgZHrE.js} +1 -1
- package/dist/types/components/filter-chip/filter-chip.d.ts +173 -0
- package/dist/types/components/filter-chip/filter-chip.types.d.ts +32 -0
- package/dist/types/components/filter-chip/filter-condition-icons.d.ts +64 -0
- package/dist/types/components/lime-query-builder/expressions/lime-query-filter-comparison.d.ts +16 -9
- package/dist/types/components.d.ts +280 -22
- package/dist/types/index.d.ts +2 -0
- package/dist/types/interface.d.ts +1 -0
- package/package.json +2 -2
- package/dist/cjs/lime-query-operators-B6PujuTH.js +0 -65
- package/dist/esm/lime-query-operators-DvI2OyJI.js +0 -63
- package/dist/lime-crm-building-blocks/p-096ea04d.entry.js +0 -1
- package/dist/lime-crm-building-blocks/p-555da984.entry.js +0 -1
- package/dist/lime-crm-building-blocks/p-759d0fc2.entry.js +0 -1
- package/dist/lime-crm-building-blocks/p-BneXZK-Q.js +0 -1
- package/dist/lime-crm-building-blocks/p-DK4A47Sj.js +0 -1
- package/dist/lime-crm-building-blocks/p-DYpn0EkA.js +0 -2
- package/dist/lime-crm-building-blocks/p-a8684418.entry.js +0 -1
- package/dist/lime-crm-building-blocks/p-c0d39ae4.entry.js +0 -1
- package/dist/lime-crm-building-blocks/p-c4c3f054.entry.js +0 -1
- package/dist/lime-crm-building-blocks/p-cea4fe16.entry.js +0 -1
- package/dist/lime-crm-building-blocks/p-d6ac6cd3.entry.js +0 -1
- package/dist/lime-crm-building-blocks/p-e1223704.entry.js +0 -1
- package/dist/lime-crm-building-blocks/p-efd62913.entry.js +0 -1
- package/dist/lime-crm-building-blocks/p-f58d25e5.entry.js +0 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,199 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Icon shown when a condition is unknown or not provided.
|
|
3
|
+
*/
|
|
4
|
+
export const FALLBACK_CONDITION_ICON = 'question';
|
|
5
|
+
/**
|
|
6
|
+
* Maps each {@link FilterCondition} to the icon name that visualizes it.
|
|
7
|
+
*
|
|
8
|
+
* The icons are filenames in the shared `lime-icons8` set and are resolved
|
|
9
|
+
* at runtime by `limel-icon` from the host application's configured
|
|
10
|
+
* `iconPath`, so nothing needs to be bundled here.
|
|
11
|
+
*
|
|
12
|
+
* Some comparison conditions take a different icon for date properties; those
|
|
13
|
+
* variants are resolved by {@link getFilterConditionIcon} and live in
|
|
14
|
+
* {@link DATE_CONDITION_PRESENTATION} rather than here.
|
|
15
|
+
*/
|
|
16
|
+
export const FILTER_CONDITION_ICONS = {
|
|
17
|
+
equals: '-lime-filter-equal',
|
|
18
|
+
'not-equals': '-lime-filter-equal-not',
|
|
19
|
+
'greater-than': '-lime-filter-greater',
|
|
20
|
+
'greater-than-or-equal': '-lime-filter-greater-equal',
|
|
21
|
+
'less-than': '-lime-filter-less',
|
|
22
|
+
'less-than-or-equal': '-lime-filter-less-equal',
|
|
23
|
+
between: '-lime-filter-between',
|
|
24
|
+
'not-between': '-lime-filter-between-not',
|
|
25
|
+
contains: '-lime-filter-contain',
|
|
26
|
+
'not-contains': '-lime-filter-contain-not',
|
|
27
|
+
'begins-with': '-lime-filter-starts-with',
|
|
28
|
+
'not-begins-with': '-lime-filter-starts-with-not',
|
|
29
|
+
'ends-with': '-lime-filter-ends-with',
|
|
30
|
+
'not-ends-with': '-lime-filter-ends-with-not',
|
|
31
|
+
empty: '-lime-filter-empty',
|
|
32
|
+
'not-empty': '-lime-filter-empty-not',
|
|
33
|
+
previous: '-lime-filter-previous',
|
|
34
|
+
current: '-lime-filter-current',
|
|
35
|
+
next: '-lime-filter-next',
|
|
36
|
+
'connected-to': '-lime-filter-connected-to',
|
|
37
|
+
'not-connected-to': '-lime-filter-connected-to-not',
|
|
38
|
+
'in-filter-set': '-lime-filter-set-included',
|
|
39
|
+
'not-in-filter-set': '-lime-filter-set-included-not',
|
|
40
|
+
matches: 'source_code',
|
|
41
|
+
};
|
|
42
|
+
/**
|
|
43
|
+
* Property types whose comparison conditions read as dates, so that
|
|
44
|
+
* `greater-than` shows as "After" (▶), `less-than` as "Before" (◀), and
|
|
45
|
+
* `equals` as "On".
|
|
46
|
+
*
|
|
47
|
+
* Derived from the platform's {@link DateTimePropertyType} via an exhaustive
|
|
48
|
+
* map, so a date type added upstream is a compile error here rather than a
|
|
49
|
+
* silent fall-through to the generic wording.
|
|
50
|
+
*/
|
|
51
|
+
const DATE_PROPERTY_TYPE_FLAGS = {
|
|
52
|
+
date: true,
|
|
53
|
+
year: true,
|
|
54
|
+
quarter: true,
|
|
55
|
+
month: true,
|
|
56
|
+
time: true,
|
|
57
|
+
timeofday: true,
|
|
58
|
+
};
|
|
59
|
+
const DATE_PROPERTY_TYPES = new Set(Object.keys(DATE_PROPERTY_TYPE_FLAGS));
|
|
60
|
+
/**
|
|
61
|
+
* Property types whose equality reads as "Is" / "Is not" (text, options and
|
|
62
|
+
* yes/no) rather than "Equals" / "Not equals". Numbers keep "Equals", and
|
|
63
|
+
* dates use "On" (resolved via {@link DATE_CONDITION_PRESENTATION}).
|
|
64
|
+
*/
|
|
65
|
+
const IS_PROPERTY_TYPES = new Set([
|
|
66
|
+
'string',
|
|
67
|
+
'text',
|
|
68
|
+
'phone',
|
|
69
|
+
'link',
|
|
70
|
+
'option',
|
|
71
|
+
'set',
|
|
72
|
+
'yesno',
|
|
73
|
+
]);
|
|
74
|
+
/**
|
|
75
|
+
* Date-specific presentation for the comparison conditions. Icon and wording
|
|
76
|
+
* are paired here so they cannot drift apart: `greater-than` reads "After",
|
|
77
|
+
* `less-than` "Before", and `equals` "On".
|
|
78
|
+
*/
|
|
79
|
+
const DATE_CONDITION_PRESENTATION = {
|
|
80
|
+
'greater-than': {
|
|
81
|
+
icon: '-lime-filter-after',
|
|
82
|
+
labelKey: 'webclient.operator.after',
|
|
83
|
+
},
|
|
84
|
+
'less-than': {
|
|
85
|
+
icon: '-lime-filter-before',
|
|
86
|
+
labelKey: 'webclient.operator.before',
|
|
87
|
+
},
|
|
88
|
+
equals: { icon: '-lime-filter-on', labelKey: 'webclient.operator.on-date' },
|
|
89
|
+
};
|
|
90
|
+
function isDateProperty(propertyType) {
|
|
91
|
+
return !!propertyType && DATE_PROPERTY_TYPES.has(propertyType);
|
|
92
|
+
}
|
|
93
|
+
function isOptionLikeProperty(propertyType) {
|
|
94
|
+
return !!propertyType && IS_PROPERTY_TYPES.has(propertyType);
|
|
95
|
+
}
|
|
96
|
+
/**
|
|
97
|
+
* Resolve the icon name for a filter condition.
|
|
98
|
+
*
|
|
99
|
+
* Useful anywhere a condition needs a consistent icon — not only in the
|
|
100
|
+
* filter chip (e.g. operator dropdowns or condition editors). When a
|
|
101
|
+
* `propertyType` is given, the type-specific variant is used; for example a
|
|
102
|
+
* `greater-than` on a date resolves to the "After" icon rather than `>`.
|
|
103
|
+
*
|
|
104
|
+
* @param condition - the condition to get an icon for
|
|
105
|
+
* @param propertyType - the data type of the filtered property, used to pick
|
|
106
|
+
* the type-specific variant (e.g. date comparisons)
|
|
107
|
+
* @returns the matching icon name, or the fallback icon when the condition
|
|
108
|
+
* is unknown or undefined
|
|
109
|
+
*/
|
|
110
|
+
export function getFilterConditionIcon(condition, propertyType) {
|
|
111
|
+
if (!condition) {
|
|
112
|
+
return FALLBACK_CONDITION_ICON;
|
|
113
|
+
}
|
|
114
|
+
const dateVariant = DATE_CONDITION_PRESENTATION[condition];
|
|
115
|
+
if (isDateProperty(propertyType) && dateVariant) {
|
|
116
|
+
return dateVariant.icon;
|
|
117
|
+
}
|
|
118
|
+
if (condition in FILTER_CONDITION_ICONS) {
|
|
119
|
+
return FILTER_CONDITION_ICONS[condition];
|
|
120
|
+
}
|
|
121
|
+
return FALLBACK_CONDITION_ICON;
|
|
122
|
+
}
|
|
123
|
+
/**
|
|
124
|
+
* Maps each {@link FilterCondition} to the translation key that names it.
|
|
125
|
+
*
|
|
126
|
+
* These are the same `webclient.operator.*` keys (plus `webclient.empty` /
|
|
127
|
+
* `webclient.not-empty`) used across Lime CRM — the wording shown beside each
|
|
128
|
+
* icon in the condition dropdown. Reusing them keeps the chip's tooltip and
|
|
129
|
+
* accessible name consistent with the rest of the product, in every language.
|
|
130
|
+
*
|
|
131
|
+
* Some conditions take different wording depending on the property type (e.g.
|
|
132
|
+
* "After" for a date `greater-than`, or "Is" for an option `equals`); those
|
|
133
|
+
* variants are resolved by {@link getFilterConditionLabelKey}.
|
|
134
|
+
*/
|
|
135
|
+
export const FILTER_CONDITION_LABEL_KEYS = {
|
|
136
|
+
equals: 'webclient.operator.equals',
|
|
137
|
+
'not-equals': 'webclient.operator.not-equals',
|
|
138
|
+
'greater-than': 'webclient.operator.greater-than',
|
|
139
|
+
'greater-than-or-equal': 'webclient.operator.greater-than-or-equal-to',
|
|
140
|
+
'less-than': 'webclient.operator.less-than',
|
|
141
|
+
'less-than-or-equal': 'webclient.operator.less-than-or-equal-to',
|
|
142
|
+
between: 'webclient.operator.between',
|
|
143
|
+
'not-between': 'webclient.operator.not-between',
|
|
144
|
+
contains: 'webclient.operator.contains',
|
|
145
|
+
'not-contains': 'webclient.operator.does-not-contain',
|
|
146
|
+
'begins-with': 'webclient.operator.begins-with',
|
|
147
|
+
'not-begins-with': 'webclient.operator.does-not-begin-with',
|
|
148
|
+
'ends-with': 'webclient.operator.ends-with',
|
|
149
|
+
'not-ends-with': 'webclient.operator.not-ends-with',
|
|
150
|
+
empty: 'webclient.empty',
|
|
151
|
+
'not-empty': 'webclient.not-empty',
|
|
152
|
+
previous: 'webclient.operator.previous',
|
|
153
|
+
current: 'webclient.operator.current',
|
|
154
|
+
next: 'webclient.operator.next',
|
|
155
|
+
'connected-to': 'webclient.operator.is',
|
|
156
|
+
'not-connected-to': 'webclient.operator.is_not',
|
|
157
|
+
'in-filter-set': 'webclient.operator.in-filter',
|
|
158
|
+
'not-in-filter-set': 'webclient.operator.not-in-filter',
|
|
159
|
+
matches: 'webclient.operator.matches',
|
|
160
|
+
};
|
|
161
|
+
/**
|
|
162
|
+
* "Is" / "Is not" wording for equality on option-like properties.
|
|
163
|
+
*/
|
|
164
|
+
const IS_CONDITION_LABEL_KEYS = {
|
|
165
|
+
equals: 'webclient.operator.is',
|
|
166
|
+
'not-equals': 'webclient.operator.is_not',
|
|
167
|
+
};
|
|
168
|
+
/**
|
|
169
|
+
* Resolve the translation key that names a filter condition.
|
|
170
|
+
*
|
|
171
|
+
* Useful anywhere a condition needs a consistent, localized name — not only
|
|
172
|
+
* in the filter chip's tooltip (e.g. operator dropdowns or condition editors).
|
|
173
|
+
* When a `propertyType` is given, the type-specific wording is used; for
|
|
174
|
+
* example a `greater-than` on a date resolves to "After", and `equals` on an
|
|
175
|
+
* option resolves to "Is".
|
|
176
|
+
*
|
|
177
|
+
* @param condition - the condition to get a label key for
|
|
178
|
+
* @param propertyType - the data type of the filtered property, used to pick
|
|
179
|
+
* the type-specific wording
|
|
180
|
+
* @returns the matching translation key, or `undefined` when the condition is
|
|
181
|
+
* unknown or undefined
|
|
182
|
+
*/
|
|
183
|
+
export function getFilterConditionLabelKey(condition, propertyType) {
|
|
184
|
+
if (!condition) {
|
|
185
|
+
return undefined;
|
|
186
|
+
}
|
|
187
|
+
const dateVariant = DATE_CONDITION_PRESENTATION[condition];
|
|
188
|
+
if (isDateProperty(propertyType) && dateVariant) {
|
|
189
|
+
return dateVariant.labelKey;
|
|
190
|
+
}
|
|
191
|
+
if (isOptionLikeProperty(propertyType) &&
|
|
192
|
+
condition in IS_CONDITION_LABEL_KEYS) {
|
|
193
|
+
return IS_CONDITION_LABEL_KEYS[condition];
|
|
194
|
+
}
|
|
195
|
+
if (condition in FILTER_CONDITION_LABEL_KEYS) {
|
|
196
|
+
return FILTER_CONDITION_LABEL_KEYS[condition];
|
|
197
|
+
}
|
|
198
|
+
return undefined;
|
|
199
|
+
}
|
|
@@ -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: '58a9bd28e37319269073af5d9ba36f0c21869c3d', 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: 'debf3f6ad79541e353ce3757608d1f5d5b021207', 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: '82a39b67ae1c9ce8c314de62102366c566f98b0a', 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: '185d524c12f6558fd01699202fbbe47217473a61' }, 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: '7289ca1991cbec0024c09d35e2dfa5222a9079db', 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: {
|
|
@@ -48,7 +48,7 @@ export class LimeQueryFilterComparisonEditorComponent {
|
|
|
48
48
|
(_a = this.propertySelectorEl) === null || _a === void 0 ? void 0 : _a.focus();
|
|
49
49
|
}
|
|
50
50
|
render() {
|
|
51
|
-
return (h(Host, { key: '
|
|
51
|
+
return (h(Host, { key: '1023d86ccd0f21843868432418aa089b683eadce' }, this.renderPropertySelector(), this.renderOperator(), this.renderValueInput()));
|
|
52
52
|
}
|
|
53
53
|
renderPropertySelector() {
|
|
54
54
|
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
|
@@ -1,7 +1,26 @@
|
|
|
1
|
-
import { PlatformServiceName, } from "@limetech/lime-web-components";
|
|
1
|
+
import { Operator, PlatformServiceName, } from "@limetech/lime-web-components";
|
|
2
2
|
import { Host, h, } from "@stencil/core";
|
|
3
|
-
import { LIME_QUERY_OPERATORS, } from "./lime-query-operators";
|
|
4
3
|
import { getNormalizedProperties } from "../property-resolution";
|
|
4
|
+
import { getActualPropertyType } from "../type-resolution";
|
|
5
|
+
/**
|
|
6
|
+
* Maps each query-builder comparison operator onto the shared, UI-agnostic
|
|
7
|
+
* `FilterCondition` vocabulary. The shared `limebb-filter-chip` resolves the
|
|
8
|
+
* icon and the wording from the condition (refined by the property type), so
|
|
9
|
+
* the query builder shows the same glyphs and operator names as every other
|
|
10
|
+
* filter UI.
|
|
11
|
+
*/
|
|
12
|
+
const OPERATOR_TO_CONDITION = {
|
|
13
|
+
[Operator.EQUALS]: 'equals',
|
|
14
|
+
[Operator.NOT_EQUALS]: 'not-equals',
|
|
15
|
+
[Operator.GREATER]: 'greater-than',
|
|
16
|
+
[Operator.GREATER_OR_EQUAL]: 'greater-than-or-equal',
|
|
17
|
+
[Operator.LESS]: 'less-than',
|
|
18
|
+
[Operator.LESS_OR_EQUAL]: 'less-than-or-equal',
|
|
19
|
+
[Operator.IN]: 'in-filter-set',
|
|
20
|
+
[Operator.LIKE]: 'contains',
|
|
21
|
+
[Operator.BEGINS]: 'begins-with',
|
|
22
|
+
[Operator.ENDS]: 'ends-with',
|
|
23
|
+
};
|
|
5
24
|
/**
|
|
6
25
|
* Lime Query Filter Comparison Component
|
|
7
26
|
*
|
|
@@ -16,11 +35,11 @@ import { getNormalizedProperties } from "../property-resolution";
|
|
|
16
35
|
* - name ? "Big" (contains "Big")
|
|
17
36
|
* - dealstatus IN ["won", "tender"]
|
|
18
37
|
*
|
|
19
|
-
* The
|
|
20
|
-
*
|
|
21
|
-
*
|
|
22
|
-
*
|
|
23
|
-
*
|
|
38
|
+
* The comparison is shown as the shared, presentational `limebb-filter-chip`
|
|
39
|
+
* (slotted as the trigger of the edit popover): this component resolves the
|
|
40
|
+
* property label, maps the operator to a `FilterCondition`, resolves the
|
|
41
|
+
* property type, and formats the value — and lets the chip render the icon,
|
|
42
|
+
* wording, tooltip, and remove button.
|
|
24
43
|
*
|
|
25
44
|
* @private
|
|
26
45
|
*/
|
|
@@ -48,55 +67,56 @@ export class LimeQueryFilterComparisonComponent {
|
|
|
48
67
|
}
|
|
49
68
|
}
|
|
50
69
|
render() {
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
const value = this.formatValue(this.expression.exp);
|
|
62
|
-
return `${propertyLabel} ${opLabel} ${value}`.trim();
|
|
70
|
+
var _a, _b;
|
|
71
|
+
const hasKey = !!((_a = this.expression) === null || _a === void 0 ? void 0 : _a.key);
|
|
72
|
+
const isList = Array.isArray((_b = this.expression) === null || _b === void 0 ? void 0 : _b.exp);
|
|
73
|
+
return (h(Host, { key: '834f43b0c83c27dc96a93eac52b57710066e05df' }, this.renderHeader(), h("limel-popover", { key: 'a01339788bcd4557adf47681023a9f3d4208bb7f', open: this.isOpen, openDirection: "bottom-start", onClose: this.handleClose }, h("limebb-filter-chip", { key: '82bee98f634cdcaf8f71fdfeed87641bed6c2454', slot: "trigger", platform: this.platform, label: hasKey
|
|
74
|
+
? this.getPropertyLabel(this.expression.key)
|
|
75
|
+
: undefined, condition: hasKey
|
|
76
|
+
? OPERATOR_TO_CONDITION[this.expression.op]
|
|
77
|
+
: undefined, propertyType: hasKey
|
|
78
|
+
? this.getPropertyType(this.expression.key)
|
|
79
|
+
: undefined, 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: '7e92d55e45deda78e181adaef28ef361cd8ab613', platform: this.platform, context: this.context, limetype: this.limetype, activeLimetype: this.activeLimetype, expression: this.expression, onExpressionChange: this.handleEditorChange }))));
|
|
63
80
|
}
|
|
64
81
|
getPropertyLabel(key) {
|
|
82
|
+
return this.resolveProperty(key).labels.join(' › ');
|
|
83
|
+
}
|
|
84
|
+
getPropertyType(key) {
|
|
85
|
+
const { property } = this.resolveProperty(key);
|
|
86
|
+
return property ? getActualPropertyType(property) : undefined;
|
|
87
|
+
}
|
|
88
|
+
/**
|
|
89
|
+
* Walk a (possibly nested) property path like `company.name`, descending
|
|
90
|
+
* through relations one segment at a time. Returns the leaf property (for
|
|
91
|
+
* type resolution) and the localized label of each segment (joined into
|
|
92
|
+
* the chip label). A segment that cannot be resolved falls back to its
|
|
93
|
+
* raw name so the label still reads sensibly.
|
|
94
|
+
* @param key
|
|
95
|
+
*/
|
|
96
|
+
resolveProperty(key) {
|
|
65
97
|
var _a, _b;
|
|
66
98
|
const repository = (_a = this.platform) === null || _a === void 0 ? void 0 : _a.get(PlatformServiceName.LimeTypeRepository);
|
|
67
99
|
if (!repository || !this.limetype) {
|
|
68
|
-
return key;
|
|
100
|
+
return { labels: [key] };
|
|
69
101
|
}
|
|
70
|
-
const parts = key.split('.');
|
|
71
102
|
const labels = [];
|
|
72
103
|
let currentType = repository.getLimeType(this.limetype);
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
const property = getNormalizedProperties(currentType)[part];
|
|
104
|
+
let property;
|
|
105
|
+
for (const part of key.split('.')) {
|
|
106
|
+
property = currentType
|
|
107
|
+
? getNormalizedProperties(currentType)[part]
|
|
108
|
+
: undefined;
|
|
79
109
|
labels.push((property === null || property === void 0 ? void 0 : property.localname) || part);
|
|
80
110
|
currentType = (_b = property === null || property === void 0 ? void 0 : property.relation) === null || _b === void 0 ? void 0 : _b.getLimetype();
|
|
81
111
|
}
|
|
82
|
-
return labels
|
|
112
|
+
return { labels, property };
|
|
83
113
|
}
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
if (
|
|
87
|
-
return
|
|
114
|
+
chipValue() {
|
|
115
|
+
const value = this.expression.exp;
|
|
116
|
+
if (Array.isArray(value)) {
|
|
117
|
+
return value.map((item) => this.formatValue(item));
|
|
88
118
|
}
|
|
89
|
-
|
|
90
|
-
return meta === null || meta === void 0 ? void 0 : meta.icon;
|
|
91
|
-
}
|
|
92
|
-
getOperatorLabel(op) {
|
|
93
|
-
var _a, _b;
|
|
94
|
-
if (!op)
|
|
95
|
-
return '';
|
|
96
|
-
const meta = LIME_QUERY_OPERATORS.find((m) => m.value === op);
|
|
97
|
-
if (!meta)
|
|
98
|
-
return '';
|
|
99
|
-
return (_b = (_a = this.translator) === null || _a === void 0 ? void 0 : _a.get(meta.label)) !== null && _b !== void 0 ? _b : meta.label;
|
|
119
|
+
return this.formatValue(value);
|
|
100
120
|
}
|
|
101
121
|
formatValue(value) {
|
|
102
122
|
if (value === undefined || value === null || value === '') {
|
|
@@ -106,7 +126,7 @@ export class LimeQueryFilterComparisonComponent {
|
|
|
106
126
|
return value.map((v) => this.formatValue(v)).join(', ');
|
|
107
127
|
}
|
|
108
128
|
if (typeof value === 'string') {
|
|
109
|
-
return
|
|
129
|
+
return value;
|
|
110
130
|
}
|
|
111
131
|
return String(value);
|
|
112
132
|
}
|
|
@@ -116,10 +136,6 @@ export class LimeQueryFilterComparisonComponent {
|
|
|
116
136
|
}
|
|
117
137
|
return h("limel-header", { subheading: this.label });
|
|
118
138
|
}
|
|
119
|
-
get translator() {
|
|
120
|
-
var _a;
|
|
121
|
-
return (_a = this.platform) === null || _a === void 0 ? void 0 : _a.get(PlatformServiceName.Translate);
|
|
122
|
-
}
|
|
123
139
|
static get is() { return "limebb-lime-query-filter-comparison"; }
|
|
124
140
|
static get encapsulation() { return "shadow"; }
|
|
125
141
|
static get originalStyleUrls() {
|
package/dist/collection/components/lime-query-builder/expressions/lime-query-filter-group.css
CHANGED
|
@@ -119,6 +119,7 @@ li.row + li.row:before {
|
|
|
119
119
|
color: var(--limebb-query-filter-group-color-code);
|
|
120
120
|
font-size: 0.75rem;
|
|
121
121
|
font-weight: 600;
|
|
122
|
+
line-height: normal;
|
|
122
123
|
}
|
|
123
124
|
li.row + li.row:has(> limebb-lime-query-filter-expression > limebb-lime-query-filter-group):before {
|
|
124
125
|
position: absolute;
|
|
@@ -126,6 +127,10 @@ li.row + li.row:has(> limebb-lime-query-filter-expression > limebb-lime-query-fi
|
|
|
126
127
|
top: 0;
|
|
127
128
|
transform: translate(-50%, -50%);
|
|
128
129
|
}
|
|
130
|
+
li.row + li.row:not(:has(> limebb-lime-query-filter-expression > limebb-lime-query-filter-group)) {
|
|
131
|
+
display: inline-flex;
|
|
132
|
+
align-items: center;
|
|
133
|
+
}
|
|
129
134
|
li.row + li.row:not(:has(> limebb-lime-query-filter-expression > limebb-lime-query-filter-group)):before {
|
|
130
135
|
margin-right: 0.5rem;
|
|
131
136
|
}
|
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: 'bb7aff22fe070aa44b0d0a723abc5df16ed71cb4', "data-op": combinator, style: {
|
|
94
94
|
'--limebb-query-filter-group-color-code': OP_STYLE[combinator].color,
|
|
95
|
-
} }, h("div", { key: '
|
|
95
|
+
} }, h("div", { key: '562e42e8a3ef37553abdca09df0f6acbd5aff0db', class: "group" }, h("div", { key: '6235b10b2460258a77fceee16c564471fadbe905', class: "group-header" }, h("limel-select", { key: '93277a50432aaa70c6a2ef42201251e2e154d224', class: "combinator", label: "Match", value: selected, options: COMBINATOR_OPTIONS, onChange: this.handleCombinatorChange }), h("limel-icon-button", { key: 'fdafa33ae14aa5ef47bc416894155b3e56a08ce0', class: "delete-group", icon: "trash", label: "Delete this group", onClick: this.handleDeleteGroup })), h("ul", { key: '027804ac82604440ee91712f08b115f688aa4d6f', class: "rows" }, inner.exp.map(this.renderChildExpression), h("limel-chip", { key: 'd7985bb579b0e85ac237f0235de5ab4ecd747a07', role: "listitem", class: "add-condition", text: "Condition", icon: { name: 'plus_math', title: 'Add' }, onClick: this.handleAddChildExpression })), h("limel-chip", { key: '0c75dffd8906496b6f058641ef5face8dda8dc5f', 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: '985a54dec5d1fe5ca72a50dd63d178d277d03fdf', class: "expression" }, this.label && h("limel-header", { key: 'd04363a1d7a3b44ec94480253e06f648cbdf5e65', heading: this.label }), h("limebb-lime-query-filter-expression", { key: 'd9be640e4398dc5303dd7cc8c8850ef3819a19e9', 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: '14d9e9854387175cd60564ff405930ca01da2a50' }, 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: '5450e80863e61f981df7c0a94bbddb113e6ef679', class: "response-format-builder" }, this.label && h("h1", { key: '5d9cdb66e5dc33375be40735fbf2ff9884fe1359', class: "builder-label" }, this.label), this.helperText && (h("p", { key: '4eb9d3f05db49092b4e855415ecf65993a06fa76', class: "builder-helper-text" }, this.helperText)), this.visualModeEnabled && (h("div", { key: '8a7879d025cf28c6b26cbfbe45d57209e34b8836', 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: '53d14fd956c5762249f3027456733f6d9fe1a98a', 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: '80d8a3366d87715e62ba62205b1c0111e358daa5' }, 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: '3d546bbd06326fdf84b97cbf8002e61bf4d65bf9' }, h("limebb-property-selector", { key: '908dd26127731052d920fc3b738977f49738aefc', platform: this.platform, context: this.context, limetype: this.limetype, label: "Property", value: propertyPath, required: true, onChange: this.handlePathChange }), h("div", { key: '5a451c6124141537e40e4b38811428072c93d3fc', class: "control-buttons" }, h("limel-icon-button", { key: 'dae62d712d7225dc20b91b5d2c78cc346355ce52', 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: 'a75604a6baff7dabd131364ca110984bd31787ac', 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: '06809c3ef5e4ee2dbbfceadf21bf9ad62efe4d69', class: "property-controls" }, h("div", { key: 'da5275346d5895eaafa1d0cd1b872ae384313c19', class: "property-path" }, h("limebb-property-selector", { key: 'e7fdee44a0baa487ef31b1e9ae50d6902efb789e', platform: this.platform, context: this.context, limetype: this.limetype, label: "Property", value: this.item.path, required: true, onChange: this.handlePathChange }), h("div", { key: '874a5182ceecc35a4ef5017d84e8c934b596a653', class: "input-grid" }, this.renderAliasInput()), h("div", { key: '2ec93a1a3c33472bd319dd6eb8ba7b78c6c25716', class: "input-grid" }, this.renderDescriptionInput()), h("div", { key: '9728a5b115293684c2102dae3a25eb071b1d47c0', class: "button-group" }, this.renderAliasButton(), this.renderDescriptionButton())), h("limel-icon-button", { key: '96f26604fd4b8893ffc6d9f22a98d22234e8b415', 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: 'f81bc7b988839c66b858bd6ac361067d7be94b6d', class: "header" }, h("limel-icon", { key: 'b7304f72bb145945db981eb93b1ee4d14114edfa', name: "not_showing_video_frames" }), h("h2", { key: '0331b8264505e135f9bb865e67a31292b1ed35f4' }, "Viewing this file type requires ", h("em", { key: 'bd7049ae2fe5c9b66255d71dc1157dbcac1e34bf' }, "Live Docs"))),
|
|
9
|
+
h("p", { key: 'b34ef63df0f29d319c0993adeb5360ad9961834e' }, h("em", { key: 'ff6e076d06abb21efb6ca9aba4343e56339a5adb' }, "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: '6abd8c066d30ed815e58febf40abf65560a15b0b', 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: '231a49f12d52d8dcd0374dbc50a625c9dc5c9680', 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: '70aa4b0d5b07a56b414585422771813cacac8d04', 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: '8fb1abf25655577aa6310c53da7380742a7751c9', 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: '8f936a2aef75ca6656b60cf57a31dc49260b9530', 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: '6c9fd8738d41a3419bb211345bc8ffe16a615026', slot: "content" }, this.renderVisualization())), this.renderHelperLine()));
|
|
116
116
|
}
|
|
117
117
|
renderVisualization() {
|
|
118
118
|
if (this.reducePresence && (this.numValue === 0 || !this.hasValue())) {
|
|
@@ -45,7 +45,7 @@ export class RuleChipPopover {
|
|
|
45
45
|
};
|
|
46
46
|
}
|
|
47
47
|
render() {
|
|
48
|
-
return (h("div", { key: '
|
|
48
|
+
return (h("div", { key: '9577a4da5cb41e51ab83f2ed602781c13d7af503', class: "popover" }, this.renderHeader(), this.renderBody()));
|
|
49
49
|
}
|
|
50
50
|
renderHeader() {
|
|
51
51
|
var _a, _b, _c, _d;
|
|
@@ -126,7 +126,7 @@ export class RuleEditor {
|
|
|
126
126
|
'rule-editor': true,
|
|
127
127
|
'rule-editor--disabled': this.disabled,
|
|
128
128
|
};
|
|
129
|
-
return (h("div", { key: '
|
|
129
|
+
return (h("div", { key: '2c1a7d0162a9145de148c55d3d349edb21c26b34', class: containerClasses }, this.renderLabel(), h(RuleNodeView, { key: 'bfcadccfef5f55ba8325454fa11ee4e27faa1adc', node: this.normalizedValue, path: [], ctx: this.createRenderContext() }), this.renderHelperText()));
|
|
130
130
|
}
|
|
131
131
|
renderLabel() {
|
|
132
132
|
if (!this.label) {
|