@limetech/lime-crm-building-blocks 1.139.1 → 2.0.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 +22 -0
- package/dist/cjs/file-contents-url-CIoCVl85.js +14 -0
- package/dist/cjs/{filter-condition-icons-HypsDn6x.js → filter-condition-icons-QK5stWj6.js} +142 -0
- package/dist/cjs/{filter-group-logic-BPpM2NqX.js → filter-group-logic-EDLGrkTt.js} +12 -12
- package/dist/cjs/filter-operators-CVCyCZ7Q.js +61 -0
- package/dist/cjs/index.cjs.js +8 -1
- package/dist/cjs/{index.esm-Se3EtD3m.js → index.esm-CcYbS__E.js} +210 -181
- package/dist/cjs/lime-crm-building-blocks.cjs.js +1 -1
- package/dist/cjs/{lime-query-validation-CJC3mtnT.js → lime-query-validation-B0oYW7Z6.js} +7 -7
- package/dist/cjs/limebb-alert-dialog.cjs.entry.js +1 -1
- package/dist/cjs/limebb-browser.cjs.entry.js +3 -3
- package/dist/cjs/limebb-chat-icon-list_3.cjs.entry.js +5 -5
- package/dist/cjs/limebb-chat-list.cjs.entry.js +2 -2
- 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-component-config.cjs.entry.js +1 -1
- package/dist/cjs/limebb-component-picker.cjs.entry.js +1 -1
- package/dist/cjs/limebb-composer-toolbar.cjs.entry.js +3 -3
- package/dist/cjs/limebb-currency-picker.cjs.entry.js +2 -2
- package/dist/cjs/limebb-dashboard-widget.cjs.entry.js +1 -1
- package/dist/cjs/limebb-data-cells.cjs.entry.js +1 -1
- package/dist/cjs/limebb-date-picker.cjs.entry.js +2 -2
- 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 +6 -2
- package/dist/cjs/limebb-feed.cjs.entry.js +2 -2
- package/dist/cjs/{limebb-filter-chip_5.cjs.entry.js → limebb-filter-chip_6.cjs.entry.js} +126 -92
- 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 +11 -10
- package/dist/cjs/limebb-inline-image.cjs.entry.js +49 -0
- package/dist/cjs/limebb-kanban-group.cjs.entry.js +3 -3
- package/dist/cjs/limebb-kanban-item.cjs.entry.js +2 -2
- package/dist/cjs/limebb-lime-query-builder.cjs.entry.js +4 -4
- package/dist/cjs/limebb-lime-query-filter-builder.cjs.entry.js +5 -5
- package/dist/cjs/limebb-lime-query-filter-comparison_2.cjs.entry.js +10 -27
- package/dist/cjs/limebb-lime-query-order-by-editor_2.cjs.entry.js +4 -4
- 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 +4 -4
- package/dist/cjs/limebb-lime-query-response-format-editor_2.cjs.entry.js +1 -1
- package/dist/cjs/limebb-limeobject-file-viewer.cjs.entry.js +3 -3
- package/dist/cjs/limebb-live-docs-info.cjs.entry.js +2 -2
- package/dist/cjs/limebb-loader.cjs.entry.js +2 -2
- package/dist/cjs/limebb-locale-picker.cjs.entry.js +2 -2
- package/dist/cjs/limebb-mention-group-counter.cjs.entry.js +2 -2
- package/dist/cjs/limebb-mention.cjs.entry.js +1 -1
- package/dist/cjs/limebb-navigation-button_2.cjs.entry.js +2 -2
- package/dist/cjs/limebb-notification-item.cjs.entry.js +2 -2
- package/dist/cjs/limebb-notification-list.cjs.entry.js +1 -1
- package/dist/cjs/limebb-object-chip.cjs.entry.js +3 -3
- package/dist/cjs/limebb-percentage-visualizer.cjs.entry.js +3 -3
- 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 +3 -3
- package/dist/cjs/limebb-rule-editor.cjs.entry.js +3 -3
- package/dist/cjs/limebb-rule-gate.cjs.entry.js +2 -2
- package/dist/cjs/limebb-text-editor.cjs.entry.js +51 -144
- package/dist/cjs/limebb-trend-indicator.cjs.entry.js +2 -2
- package/dist/cjs/limebb-value-comparison-editor.cjs.entry.js +38 -36
- package/dist/cjs/{limetype-CmgP0nbZ.js → limetype-C-fVThrI.js} +1 -1
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/collection/collection-manifest.json +2 -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 +5 -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-chip/filter-condition-icons.js +141 -0
- package/dist/collection/components/filter-chip/filter-operators.js +54 -0
- package/dist/collection/components/filter-condition-picker/filter-condition-picker.css +7 -0
- package/dist/collection/components/filter-condition-picker/filter-condition-picker.js +256 -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 +2 -2
- package/dist/collection/components/info-tile/loader.js +2 -1
- package/dist/collection/components/inline-image/inline-image.css +12 -0
- package/dist/collection/components/inline-image/inline-image.js +146 -0
- 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/compound-leaf.js +6 -6
- package/dist/collection/components/lime-query-builder/expressions/lime-query-filter-comparison-editor.js +37 -20
- package/dist/collection/components/lime-query-builder/expressions/lime-query-filter-comparison.js +8 -25
- 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/expressions/lime-query-operators.js +23 -57
- 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 +62 -36
- 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 +57 -45
- package/dist/collection/components/trend-indicator/trend-indicator.js +1 -1
- package/dist/collection/index.js +1 -0
- package/dist/collection/util/file-contents-url.js +10 -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/file-contents-url.js +1 -0
- package/dist/components/filter-chip.js +1 -1
- package/dist/components/filter-condition-icons.js +1 -1
- package/dist/components/filter-condition-picker.js +1 -0
- package/dist/components/filter-operators.js +1 -0
- package/dist/components/index.esm.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-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-validation.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-component-config.js +1 -1
- package/dist/components/limebb-component-picker.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-data-cells.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-condition-picker.d.ts +11 -0
- package/dist/components/limebb-filter-condition-picker.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-inline-image.d.ts +11 -0
- package/dist/components/limebb-inline-image.js +1 -0
- 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-limeobject-file-viewer.js +1 -1
- package/dist/components/limebb-loader.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-mention.js +1 -1
- package/dist/components/limebb-notification-list.js +1 -1
- package/dist/components/limebb-object-chip.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/property-selector.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/file-contents-url-Oswz9F3I.js +12 -0
- package/dist/esm/{filter-condition-icons-D8CJOcfs.js → filter-condition-icons-C_y3-T4Q.js} +142 -1
- package/dist/esm/{filter-group-logic-BMY_GEsX.js → filter-group-logic-DS1inQTh.js} +12 -12
- package/dist/esm/filter-operators-CsZi5iCV.js +57 -0
- package/dist/esm/{index.esm-C-L5fkQs.js → index.esm-BjIhvFKX.js} +200 -172
- package/dist/esm/index.js +4 -1
- package/dist/esm/lime-crm-building-blocks.js +1 -1
- package/dist/esm/{lime-query-validation-BwvluehW.js → lime-query-validation-CVV7mrLj.js} +7 -7
- package/dist/esm/limebb-alert-dialog.entry.js +1 -1
- package/dist/esm/limebb-browser.entry.js +3 -3
- package/dist/esm/limebb-chat-icon-list_3.entry.js +5 -5
- package/dist/esm/limebb-chat-list.entry.js +2 -2
- 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-component-config.entry.js +1 -1
- package/dist/esm/limebb-component-picker.entry.js +1 -1
- package/dist/esm/limebb-composer-toolbar.entry.js +3 -3
- package/dist/esm/limebb-currency-picker.entry.js +2 -2
- package/dist/esm/limebb-dashboard-widget.entry.js +1 -1
- package/dist/esm/limebb-data-cells.entry.js +1 -1
- package/dist/esm/limebb-date-picker.entry.js +2 -2
- 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 +6 -2
- package/dist/esm/limebb-feed.entry.js +2 -2
- package/dist/esm/{limebb-filter-chip_5.entry.js → limebb-filter-chip_6.entry.js} +126 -93
- 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 +11 -10
- package/dist/esm/limebb-inline-image.entry.js +47 -0
- package/dist/esm/limebb-kanban-group.entry.js +3 -3
- package/dist/esm/limebb-kanban-item.entry.js +2 -2
- package/dist/esm/limebb-lime-query-builder.entry.js +4 -4
- package/dist/esm/limebb-lime-query-filter-builder.entry.js +5 -5
- package/dist/esm/limebb-lime-query-filter-comparison_2.entry.js +10 -27
- package/dist/esm/limebb-lime-query-order-by-editor_2.entry.js +4 -4
- package/dist/esm/limebb-lime-query-order-by-item.entry.js +2 -2
- 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 +1 -1
- package/dist/esm/limebb-limeobject-file-viewer.entry.js +3 -3
- package/dist/esm/limebb-live-docs-info.entry.js +2 -2
- package/dist/esm/limebb-loader.entry.js +2 -2
- package/dist/esm/limebb-locale-picker.entry.js +2 -2
- package/dist/esm/limebb-mention-group-counter.entry.js +2 -2
- package/dist/esm/limebb-mention.entry.js +1 -1
- package/dist/esm/limebb-navigation-button_2.entry.js +2 -2
- package/dist/esm/limebb-notification-item.entry.js +2 -2
- package/dist/esm/limebb-notification-list.entry.js +1 -1
- package/dist/esm/limebb-object-chip.entry.js +3 -3
- package/dist/esm/limebb-percentage-visualizer.entry.js +3 -3
- 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 +3 -3
- package/dist/esm/limebb-rule-editor.entry.js +3 -3
- package/dist/esm/limebb-rule-gate.entry.js +2 -2
- package/dist/esm/limebb-text-editor.entry.js +51 -144
- package/dist/esm/limebb-trend-indicator.entry.js +2 -2
- package/dist/esm/limebb-value-comparison-editor.entry.js +38 -36
- package/dist/esm/{limetype-D4ZaWZ-3.js → limetype-BbMRN-SU.js} +1 -1
- package/dist/esm/loader.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-135ba2ee.entry.js +1 -0
- package/dist/lime-crm-building-blocks/{p-e4cef02f.entry.js → p-19dc7242.entry.js} +1 -1
- package/dist/lime-crm-building-blocks/p-1c6e5402.entry.js +1 -0
- package/dist/lime-crm-building-blocks/{p-96ea4550.entry.js → p-1f97e235.entry.js} +1 -1
- package/dist/lime-crm-building-blocks/{p-0f821315.entry.js → p-22e68812.entry.js} +1 -1
- package/dist/lime-crm-building-blocks/{p-fd38bf57.entry.js → p-240cbd82.entry.js} +1 -1
- package/dist/lime-crm-building-blocks/{p-3fc9866a.entry.js → p-251aca46.entry.js} +1 -1
- package/dist/lime-crm-building-blocks/p-25984c90.entry.js +1 -0
- package/dist/lime-crm-building-blocks/{p-80e04b27.entry.js → p-397a6191.entry.js} +1 -1
- package/dist/lime-crm-building-blocks/{p-46dc34a6.entry.js → p-3f537135.entry.js} +1 -1
- package/dist/lime-crm-building-blocks/{p-a6e9cefe.entry.js → p-52a92d89.entry.js} +1 -1
- package/dist/lime-crm-building-blocks/p-585f6cfe.entry.js +1 -0
- package/dist/lime-crm-building-blocks/{p-0579d006.entry.js → p-59fb624c.entry.js} +1 -1
- package/dist/lime-crm-building-blocks/{p-fb8d854b.entry.js → p-5beb508a.entry.js} +1 -1
- package/dist/lime-crm-building-blocks/{p-5b1ccfe1.entry.js → p-662fb8b6.entry.js} +1 -1
- package/dist/lime-crm-building-blocks/{p-00ca6522.entry.js → p-673226a6.entry.js} +1 -1
- package/dist/lime-crm-building-blocks/{p-9033acb5.entry.js → p-69b08896.entry.js} +1 -1
- package/dist/lime-crm-building-blocks/{p-01f84b0c.entry.js → p-6c2e25d9.entry.js} +1 -1
- package/dist/lime-crm-building-blocks/{p-bf4b2a91.entry.js → p-7033d408.entry.js} +1 -1
- package/dist/lime-crm-building-blocks/{p-fce1a282.entry.js → p-73b71080.entry.js} +1 -1
- package/dist/lime-crm-building-blocks/{p-3bf316f9.entry.js → p-742926a3.entry.js} +1 -1
- package/dist/lime-crm-building-blocks/p-78d362b4.entry.js +1 -0
- package/dist/lime-crm-building-blocks/p-79c492b2.entry.js +1 -0
- package/dist/lime-crm-building-blocks/{p-994296b0.entry.js → p-7a5c2dda.entry.js} +1 -1
- package/dist/lime-crm-building-blocks/{p-de785fee.entry.js → p-7b6c9cbf.entry.js} +1 -1
- package/dist/lime-crm-building-blocks/{p-354257f4.entry.js → p-7ce967b6.entry.js} +1 -1
- package/dist/lime-crm-building-blocks/{p-1cd148e2.entry.js → p-896e77b9.entry.js} +1 -1
- package/dist/lime-crm-building-blocks/{p-bde3e779.entry.js → p-906b4eca.entry.js} +1 -1
- package/dist/lime-crm-building-blocks/{p-41ddbdde.entry.js → p-964b066d.entry.js} +1 -1
- package/dist/lime-crm-building-blocks/p-CE43qjk3.js +1 -0
- package/dist/lime-crm-building-blocks/{p-D8CJOcfs.js → p-C_y3-T4Q.js} +1 -1
- package/dist/lime-crm-building-blocks/p-Cw4kdMw3.js +1 -0
- package/dist/lime-crm-building-blocks/p-DLehg4hi.js +1 -0
- package/dist/lime-crm-building-blocks/{p-CI6VHE0w.js → p-Dhyy9Td7.js} +1 -1
- package/dist/lime-crm-building-blocks/p-Oswz9F3I.js +1 -0
- package/dist/lime-crm-building-blocks/p-a157233b.entry.js +1 -0
- package/dist/lime-crm-building-blocks/p-a3058b72.entry.js +1 -0
- package/dist/lime-crm-building-blocks/{p-13a35953.entry.js → p-a4e676a6.entry.js} +1 -1
- package/dist/lime-crm-building-blocks/{p-b0ec4121.entry.js → p-aafead4e.entry.js} +1 -1
- package/dist/lime-crm-building-blocks/p-b78ub0mY.js +1 -0
- package/dist/lime-crm-building-blocks/{p-0f9a680c.entry.js → p-bc297cf4.entry.js} +1 -1
- package/dist/lime-crm-building-blocks/p-bcd8c767.entry.js +1 -0
- package/dist/lime-crm-building-blocks/p-c4e5e589.entry.js +1 -0
- package/dist/lime-crm-building-blocks/{p-dacd1df3.entry.js → p-d014ec57.entry.js} +1 -1
- package/dist/lime-crm-building-blocks/p-d20404ec.entry.js +1 -0
- package/dist/lime-crm-building-blocks/{p-e2420cde.entry.js → p-d2e85be2.entry.js} +1 -1
- package/dist/lime-crm-building-blocks/{p-69a3038b.entry.js → p-d3fe25a7.entry.js} +1 -1
- package/dist/lime-crm-building-blocks/{p-bd0a30d7.entry.js → p-d43cf8d1.entry.js} +1 -1
- package/dist/lime-crm-building-blocks/{p-e618ccd3.entry.js → p-d78370be.entry.js} +1 -1
- package/dist/lime-crm-building-blocks/{p-f73e3da0.entry.js → p-dd7aec09.entry.js} +1 -1
- package/dist/lime-crm-building-blocks/{p-5bc41701.entry.js → p-e29c27b8.entry.js} +1 -1
- package/dist/lime-crm-building-blocks/{p-b7e5a10e.entry.js → p-e2e1358d.entry.js} +1 -1
- package/dist/lime-crm-building-blocks/{p-8d592755.entry.js → p-e4a21ebe.entry.js} +1 -1
- package/dist/lime-crm-building-blocks/p-e581d0b7.entry.js +1 -0
- package/dist/lime-crm-building-blocks/{p-be5c43bb.entry.js → p-e6a85c26.entry.js} +1 -1
- package/dist/lime-crm-building-blocks/p-e8b2df7c.entry.js +1 -0
- package/dist/lime-crm-building-blocks/{p-302e6e3e.entry.js → p-ef890206.entry.js} +1 -1
- package/dist/lime-crm-building-blocks/{p-558915e4.entry.js → p-f4214745.entry.js} +1 -1
- package/dist/lime-crm-building-blocks/{p-6cdefdc9.entry.js → p-f6377fa5.entry.js} +1 -1
- package/dist/lime-crm-building-blocks/p-f9e9d18e.entry.js +1 -0
- package/dist/test/setup.js +1 -0
- package/dist/types/components/filter-chip/filter-condition-icons.d.ts +8 -0
- package/dist/types/components/filter-chip/filter-operators.d.ts +22 -0
- package/dist/types/components/filter-condition-picker/filter-condition-picker.d.ts +60 -0
- package/dist/types/components/inline-image/inline-image.d.ts +32 -0
- package/dist/types/components/lime-query-builder/expressions/lime-query-filter-comparison-editor.d.ts +8 -4
- package/dist/types/components/lime-query-builder/expressions/lime-query-operators.d.ts +16 -9
- package/dist/types/components/rule-editor/value-comparison-editor/value-comparison-editor.d.ts +7 -2
- package/dist/types/components/text-editor/text-editor.d.ts +17 -11
- package/dist/types/components.d.ts +257 -14
- package/dist/types/index.d.ts +1 -0
- package/dist/types/interface.d.ts +0 -5
- package/dist/types/util/file-contents-url.d.ts +9 -0
- package/package.json +14 -15
- package/dist/collection/components/text-editor/uploader/building-blocks-upload-handler.js +0 -112
- package/dist/lime-crm-building-blocks/p-0843b50b.entry.js +0 -1
- package/dist/lime-crm-building-blocks/p-29758303.entry.js +0 -1
- package/dist/lime-crm-building-blocks/p-39009b47.entry.js +0 -1
- package/dist/lime-crm-building-blocks/p-5b819d10.entry.js +0 -1
- package/dist/lime-crm-building-blocks/p-752742f8.entry.js +0 -1
- package/dist/lime-crm-building-blocks/p-7a158104.entry.js +0 -1
- package/dist/lime-crm-building-blocks/p-817e2952.entry.js +0 -1
- package/dist/lime-crm-building-blocks/p-92679e20.entry.js +0 -1
- package/dist/lime-crm-building-blocks/p-927e446d.entry.js +0 -1
- package/dist/lime-crm-building-blocks/p-B-WBKAaa.js +0 -1
- package/dist/lime-crm-building-blocks/p-BjXRsiQr.js +0 -1
- package/dist/lime-crm-building-blocks/p-Bkno2RtN.js +0 -1
- package/dist/lime-crm-building-blocks/p-c891125e.entry.js +0 -1
- package/dist/lime-crm-building-blocks/p-d7d6d21b.entry.js +0 -1
- package/dist/lime-crm-building-blocks/p-d95f66c8.entry.js +0 -1
- package/dist/lime-crm-building-blocks/p-ec1e079e.entry.js +0 -1
- package/dist/types/components/text-editor/uploader/building-blocks-upload-handler.d.ts +0 -62
|
@@ -0,0 +1,256 @@
|
|
|
1
|
+
import { Host, h } from "@stencil/core";
|
|
2
|
+
import { PlatformServiceName, } from "@limetech/lime-web-components";
|
|
3
|
+
import { getConditionsForPropertyType, getFilterConditionIcon, getFilterConditionLabelKey, } from "../filter-chip/filter-condition-icons";
|
|
4
|
+
/**
|
|
5
|
+
* Accessible label for the control: set for screen readers but hidden visually
|
|
6
|
+
* (see the stylesheet). Reuses the shared, localized "Operator" label.
|
|
7
|
+
*/
|
|
8
|
+
const LABEL_KEY = 'webclient.operator';
|
|
9
|
+
/**
|
|
10
|
+
* Filter condition picker
|
|
11
|
+
*
|
|
12
|
+
* A dropdown for choosing a single filter condition, such as Is / Is not /
|
|
13
|
+
* Greater than / Contains / Between / After / Empty / …
|
|
14
|
+
*
|
|
15
|
+
* It is presentational and speaks the shared filter vocabulary: give it a
|
|
16
|
+
* `propertyType` and it lists the right conditions for that data type, each with
|
|
17
|
+
* the correct icon and localized wording (e.g. `greater-than` reads "Greater
|
|
18
|
+
* than" for a number but "After" for a date, and `equals` reads "Is" for an
|
|
19
|
+
* option).
|
|
20
|
+
*
|
|
21
|
+
* A consumer that supports only a subset of conditions passes its own
|
|
22
|
+
* list via `conditions`; the consumer maps its domain operators to and from the
|
|
23
|
+
* `FilterCondition` values itself.
|
|
24
|
+
*
|
|
25
|
+
* @exampleComponent limebb-example-filter-condition-picker-basic
|
|
26
|
+
* @exampleComponent limebb-example-filter-condition-picker-property-types
|
|
27
|
+
* @exampleComponent limebb-example-filter-condition-picker-boolean
|
|
28
|
+
* @exampleComponent limebb-example-filter-condition-picker-custom
|
|
29
|
+
*/
|
|
30
|
+
export class FilterConditionPicker {
|
|
31
|
+
constructor() {
|
|
32
|
+
/**
|
|
33
|
+
* Whether the picker is disabled.
|
|
34
|
+
*/
|
|
35
|
+
this.disabled = false;
|
|
36
|
+
this.handleChange = (event) => {
|
|
37
|
+
event.stopPropagation();
|
|
38
|
+
if (event.detail) {
|
|
39
|
+
this.change.emit(event.detail.value);
|
|
40
|
+
}
|
|
41
|
+
};
|
|
42
|
+
}
|
|
43
|
+
render() {
|
|
44
|
+
const items = this.buildItems();
|
|
45
|
+
const selected = this.selectedOption(items);
|
|
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
|
+
}
|
|
48
|
+
buildItems() {
|
|
49
|
+
var _a;
|
|
50
|
+
const conditions = (_a = this.conditions) !== null && _a !== void 0 ? _a : getConditionsForPropertyType(this.propertyType);
|
|
51
|
+
// Divider before the empty / not-empty group and before "matches".
|
|
52
|
+
const emptyGroupStart = conditions.findIndex((condition) => condition === 'empty' || condition === 'not-empty');
|
|
53
|
+
const matchesIndex = conditions.indexOf('matches');
|
|
54
|
+
const items = [];
|
|
55
|
+
for (const [index, condition] of conditions.entries()) {
|
|
56
|
+
if (index > 0 &&
|
|
57
|
+
(index === emptyGroupStart || index === matchesIndex)) {
|
|
58
|
+
items.push({ separator: true });
|
|
59
|
+
}
|
|
60
|
+
items.push({
|
|
61
|
+
value: condition,
|
|
62
|
+
text: this.conditionLabel(condition),
|
|
63
|
+
icon: getFilterConditionIcon(condition, this.propertyType),
|
|
64
|
+
});
|
|
65
|
+
}
|
|
66
|
+
return items;
|
|
67
|
+
}
|
|
68
|
+
selectedOption(items) {
|
|
69
|
+
const options = items.filter((item) => !('separator' in item));
|
|
70
|
+
return options.find((option) => option.value === this.value);
|
|
71
|
+
}
|
|
72
|
+
get accessibleLabel() {
|
|
73
|
+
var _a;
|
|
74
|
+
return (_a = this.translate(LABEL_KEY)) !== null && _a !== void 0 ? _a : 'Operator';
|
|
75
|
+
}
|
|
76
|
+
conditionLabel(condition) {
|
|
77
|
+
var _a;
|
|
78
|
+
const key = getFilterConditionLabelKey(condition, this.propertyType);
|
|
79
|
+
return (_a = (key ? this.translate(key) : undefined)) !== null && _a !== void 0 ? _a : condition;
|
|
80
|
+
}
|
|
81
|
+
translate(key) {
|
|
82
|
+
var _a;
|
|
83
|
+
const translated = (_a = this.translator) === null || _a === void 0 ? void 0 : _a.get(key);
|
|
84
|
+
return translated && translated !== key ? translated : undefined;
|
|
85
|
+
}
|
|
86
|
+
get translator() {
|
|
87
|
+
var _a;
|
|
88
|
+
try {
|
|
89
|
+
return (_a = this.platform) === null || _a === void 0 ? void 0 : _a.get(PlatformServiceName.Translate);
|
|
90
|
+
}
|
|
91
|
+
catch (_b) {
|
|
92
|
+
return;
|
|
93
|
+
}
|
|
94
|
+
}
|
|
95
|
+
static get is() { return "limebb-filter-condition-picker"; }
|
|
96
|
+
static get encapsulation() { return "shadow"; }
|
|
97
|
+
static get originalStyleUrls() {
|
|
98
|
+
return {
|
|
99
|
+
"$": ["filter-condition-picker.scss"]
|
|
100
|
+
};
|
|
101
|
+
}
|
|
102
|
+
static get styleUrls() {
|
|
103
|
+
return {
|
|
104
|
+
"$": ["filter-condition-picker.css"]
|
|
105
|
+
};
|
|
106
|
+
}
|
|
107
|
+
static get properties() {
|
|
108
|
+
return {
|
|
109
|
+
"platform": {
|
|
110
|
+
"type": "unknown",
|
|
111
|
+
"mutable": false,
|
|
112
|
+
"complexType": {
|
|
113
|
+
"original": "LimeWebComponentPlatform",
|
|
114
|
+
"resolved": "LimeWebComponentPlatform | undefined",
|
|
115
|
+
"references": {
|
|
116
|
+
"LimeWebComponentPlatform": {
|
|
117
|
+
"location": "import",
|
|
118
|
+
"path": "@limetech/lime-web-components",
|
|
119
|
+
"id": "node_modules::LimeWebComponentPlatform",
|
|
120
|
+
"referenceLocation": "LimeWebComponentPlatform"
|
|
121
|
+
}
|
|
122
|
+
}
|
|
123
|
+
},
|
|
124
|
+
"required": false,
|
|
125
|
+
"optional": true,
|
|
126
|
+
"docs": {
|
|
127
|
+
"tags": [],
|
|
128
|
+
"text": "Platform service provider"
|
|
129
|
+
},
|
|
130
|
+
"getter": false,
|
|
131
|
+
"setter": false
|
|
132
|
+
},
|
|
133
|
+
"value": {
|
|
134
|
+
"type": "string",
|
|
135
|
+
"mutable": false,
|
|
136
|
+
"complexType": {
|
|
137
|
+
"original": "FilterCondition",
|
|
138
|
+
"resolved": "\"begins-with\" | \"between\" | \"connected-to\" | \"contains\" | \"current\" | \"empty\" | \"ends-with\" | \"equals\" | \"greater-than\" | \"greater-than-or-equal\" | \"in-filter-set\" | \"less-than\" | \"less-than-or-equal\" | \"matches\" | \"next\" | \"not-begins-with\" | \"not-between\" | \"not-connected-to\" | \"not-contains\" | \"not-empty\" | \"not-ends-with\" | \"not-equals\" | \"not-in-filter-set\" | \"previous\" | undefined",
|
|
139
|
+
"references": {
|
|
140
|
+
"FilterCondition": {
|
|
141
|
+
"location": "import",
|
|
142
|
+
"path": "../filter-chip/filter-chip.types",
|
|
143
|
+
"id": "src/components/filter-chip/filter-chip.types.ts::FilterCondition",
|
|
144
|
+
"referenceLocation": "FilterCondition"
|
|
145
|
+
}
|
|
146
|
+
}
|
|
147
|
+
},
|
|
148
|
+
"required": false,
|
|
149
|
+
"optional": true,
|
|
150
|
+
"docs": {
|
|
151
|
+
"tags": [],
|
|
152
|
+
"text": "The currently selected condition."
|
|
153
|
+
},
|
|
154
|
+
"getter": false,
|
|
155
|
+
"setter": false,
|
|
156
|
+
"reflect": false,
|
|
157
|
+
"attribute": "value"
|
|
158
|
+
},
|
|
159
|
+
"propertyType": {
|
|
160
|
+
"type": "string",
|
|
161
|
+
"mutable": false,
|
|
162
|
+
"complexType": {
|
|
163
|
+
"original": "PropertyType",
|
|
164
|
+
"resolved": "\"belongsto\" | \"date\" | \"decimal\" | \"file\" | \"hasandbelongstomany\" | \"hasmany\" | \"hasone\" | \"integer\" | \"link\" | \"month\" | \"option\" | \"percent\" | \"phone\" | \"quarter\" | \"set\" | \"string\" | \"system\" | \"text\" | \"time\" | \"timeofday\" | \"user\" | \"xml\" | \"year\" | \"yesno\" | undefined",
|
|
165
|
+
"references": {
|
|
166
|
+
"PropertyType": {
|
|
167
|
+
"location": "import",
|
|
168
|
+
"path": "@limetech/lime-web-components",
|
|
169
|
+
"id": "node_modules::PropertyType",
|
|
170
|
+
"referenceLocation": "PropertyType"
|
|
171
|
+
}
|
|
172
|
+
}
|
|
173
|
+
},
|
|
174
|
+
"required": false,
|
|
175
|
+
"optional": true,
|
|
176
|
+
"docs": {
|
|
177
|
+
"tags": [],
|
|
178
|
+
"text": "Data type of the filtered property; selects which conditions are listed\nand their type-specific wording and icons."
|
|
179
|
+
},
|
|
180
|
+
"getter": false,
|
|
181
|
+
"setter": false,
|
|
182
|
+
"reflect": false,
|
|
183
|
+
"attribute": "property-type"
|
|
184
|
+
},
|
|
185
|
+
"conditions": {
|
|
186
|
+
"type": "unknown",
|
|
187
|
+
"mutable": false,
|
|
188
|
+
"complexType": {
|
|
189
|
+
"original": "FilterCondition[]",
|
|
190
|
+
"resolved": "FilterCondition[] | undefined",
|
|
191
|
+
"references": {
|
|
192
|
+
"FilterCondition": {
|
|
193
|
+
"location": "import",
|
|
194
|
+
"path": "../filter-chip/filter-chip.types",
|
|
195
|
+
"id": "src/components/filter-chip/filter-chip.types.ts::FilterCondition",
|
|
196
|
+
"referenceLocation": "FilterCondition"
|
|
197
|
+
}
|
|
198
|
+
}
|
|
199
|
+
},
|
|
200
|
+
"required": false,
|
|
201
|
+
"optional": true,
|
|
202
|
+
"docs": {
|
|
203
|
+
"tags": [],
|
|
204
|
+
"text": "Explicit conditions to offer, overriding the per-type catalog."
|
|
205
|
+
},
|
|
206
|
+
"getter": false,
|
|
207
|
+
"setter": false
|
|
208
|
+
},
|
|
209
|
+
"disabled": {
|
|
210
|
+
"type": "boolean",
|
|
211
|
+
"mutable": false,
|
|
212
|
+
"complexType": {
|
|
213
|
+
"original": "boolean",
|
|
214
|
+
"resolved": "boolean",
|
|
215
|
+
"references": {}
|
|
216
|
+
},
|
|
217
|
+
"required": false,
|
|
218
|
+
"optional": false,
|
|
219
|
+
"docs": {
|
|
220
|
+
"tags": [],
|
|
221
|
+
"text": "Whether the picker is disabled."
|
|
222
|
+
},
|
|
223
|
+
"getter": false,
|
|
224
|
+
"setter": false,
|
|
225
|
+
"reflect": true,
|
|
226
|
+
"attribute": "disabled",
|
|
227
|
+
"defaultValue": "false"
|
|
228
|
+
}
|
|
229
|
+
};
|
|
230
|
+
}
|
|
231
|
+
static get events() {
|
|
232
|
+
return [{
|
|
233
|
+
"method": "change",
|
|
234
|
+
"name": "change",
|
|
235
|
+
"bubbles": true,
|
|
236
|
+
"cancelable": true,
|
|
237
|
+
"composed": true,
|
|
238
|
+
"docs": {
|
|
239
|
+
"tags": [],
|
|
240
|
+
"text": "Emitted when the user selects a condition."
|
|
241
|
+
},
|
|
242
|
+
"complexType": {
|
|
243
|
+
"original": "FilterCondition",
|
|
244
|
+
"resolved": "\"begins-with\" | \"between\" | \"connected-to\" | \"contains\" | \"current\" | \"empty\" | \"ends-with\" | \"equals\" | \"greater-than\" | \"greater-than-or-equal\" | \"in-filter-set\" | \"less-than\" | \"less-than-or-equal\" | \"matches\" | \"next\" | \"not-begins-with\" | \"not-between\" | \"not-connected-to\" | \"not-contains\" | \"not-empty\" | \"not-ends-with\" | \"not-equals\" | \"not-in-filter-set\" | \"previous\"",
|
|
245
|
+
"references": {
|
|
246
|
+
"FilterCondition": {
|
|
247
|
+
"location": "import",
|
|
248
|
+
"path": "../filter-chip/filter-chip.types",
|
|
249
|
+
"id": "src/components/filter-chip/filter-chip.types.ts::FilterCondition",
|
|
250
|
+
"referenceLocation": "FilterCondition"
|
|
251
|
+
}
|
|
252
|
+
}
|
|
253
|
+
}
|
|
254
|
+
}];
|
|
255
|
+
}
|
|
256
|
+
}
|
|
@@ -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
|
|
@@ -443,7 +443,7 @@ export class InfoTile {
|
|
|
443
443
|
"mutable": false,
|
|
444
444
|
"complexType": {
|
|
445
445
|
"original": "AggregateOperator",
|
|
446
|
-
"resolved": "\"AVG\" | \"COUNT\" | \"MAX\" | \"MIN\" | \"SUM\"",
|
|
446
|
+
"resolved": "\"AVG\" | \"COUNT\" | \"GROUP\" | \"MAX\" | \"MIN\" | \"SUM\"",
|
|
447
447
|
"references": {
|
|
448
448
|
"AggregateOperator": {
|
|
449
449
|
"location": "import",
|
|
@@ -15,6 +15,7 @@ export class InfoTileLoader {
|
|
|
15
15
|
return value;
|
|
16
16
|
}
|
|
17
17
|
async loadBasicInfoTile(aggregator) {
|
|
18
|
+
var _a;
|
|
18
19
|
const filter = this.getFilter(aggregator.filter);
|
|
19
20
|
if (!filter) {
|
|
20
21
|
throw new Error(`Filter "${aggregator.filter}" not found`);
|
|
@@ -33,7 +34,7 @@ export class InfoTileLoader {
|
|
|
33
34
|
},
|
|
34
35
|
filter: filter.filter,
|
|
35
36
|
});
|
|
36
|
-
return result.aggregates.infotiles[0].value;
|
|
37
|
+
return (_a = result.aggregates.infotiles[0].value) !== null && _a !== void 0 ? _a : 0;
|
|
37
38
|
}
|
|
38
39
|
async loadLimeObjectInfoTile(aggregator, identifier) {
|
|
39
40
|
await this.objectRepository.loadObject(identifier.limetype, identifier.id, {
|
|
@@ -0,0 +1,146 @@
|
|
|
1
|
+
import { getElement, h } from "@stencil/core";
|
|
2
|
+
import { PlatformServiceName, } from "@limetech/lime-web-components";
|
|
3
|
+
import { findParentElement } from "../../util/dom";
|
|
4
|
+
import { getFileContentsUrl } from "../../util/file-contents-url";
|
|
5
|
+
/**
|
|
6
|
+
* An inline image, referenced only by its file id so stored content stays
|
|
7
|
+
* portable. The contents URL is resolved at render time. Used for read-only
|
|
8
|
+
* rendering via `limel-markdown`; inside the editor the same tag is handled by
|
|
9
|
+
* `limel-text-editor`.
|
|
10
|
+
*
|
|
11
|
+
* @private
|
|
12
|
+
*/
|
|
13
|
+
export class InlineImage {
|
|
14
|
+
constructor() {
|
|
15
|
+
/**
|
|
16
|
+
* Alternative text for the image.
|
|
17
|
+
*/
|
|
18
|
+
this.alt = '';
|
|
19
|
+
this.appName = '';
|
|
20
|
+
}
|
|
21
|
+
connectedCallback() {
|
|
22
|
+
var _a;
|
|
23
|
+
const host = findParentElement(getElement(this), this.hasPlatform);
|
|
24
|
+
this.appName =
|
|
25
|
+
(_a = host === null || host === void 0 ? void 0 : host.platform.get(PlatformServiceName.Application).getApplicationName()) !== null && _a !== void 0 ? _a : '';
|
|
26
|
+
}
|
|
27
|
+
render() {
|
|
28
|
+
if (!this.imageId || !this.appName) {
|
|
29
|
+
return;
|
|
30
|
+
}
|
|
31
|
+
return (h("img", { src: getFileContentsUrl(this.appName, this.imageId), alt: this.alt, style: {
|
|
32
|
+
width: this.toCssSize(this.width),
|
|
33
|
+
height: this.toCssSize(this.height),
|
|
34
|
+
maxWidth: '100%',
|
|
35
|
+
} }));
|
|
36
|
+
}
|
|
37
|
+
hasPlatform(element) {
|
|
38
|
+
return ('platform' in element &&
|
|
39
|
+
!!element.platform &&
|
|
40
|
+
typeof element.platform === 'object');
|
|
41
|
+
}
|
|
42
|
+
toCssSize(value) {
|
|
43
|
+
if (!value) {
|
|
44
|
+
return undefined;
|
|
45
|
+
}
|
|
46
|
+
return /^\d+$/.test(value) ? `${value}px` : value;
|
|
47
|
+
}
|
|
48
|
+
static get is() { return "limebb-inline-image"; }
|
|
49
|
+
static get encapsulation() { return "shadow"; }
|
|
50
|
+
static get originalStyleUrls() {
|
|
51
|
+
return {
|
|
52
|
+
"$": ["inline-image.scss"]
|
|
53
|
+
};
|
|
54
|
+
}
|
|
55
|
+
static get styleUrls() {
|
|
56
|
+
return {
|
|
57
|
+
"$": ["inline-image.css"]
|
|
58
|
+
};
|
|
59
|
+
}
|
|
60
|
+
static get properties() {
|
|
61
|
+
return {
|
|
62
|
+
"imageId": {
|
|
63
|
+
"type": "string",
|
|
64
|
+
"mutable": false,
|
|
65
|
+
"complexType": {
|
|
66
|
+
"original": "string",
|
|
67
|
+
"resolved": "string",
|
|
68
|
+
"references": {}
|
|
69
|
+
},
|
|
70
|
+
"required": false,
|
|
71
|
+
"optional": false,
|
|
72
|
+
"docs": {
|
|
73
|
+
"tags": [],
|
|
74
|
+
"text": "Id of the file backing this image. Maps to the `image-id` attribute."
|
|
75
|
+
},
|
|
76
|
+
"getter": false,
|
|
77
|
+
"setter": false,
|
|
78
|
+
"reflect": false,
|
|
79
|
+
"attribute": "image-id"
|
|
80
|
+
},
|
|
81
|
+
"alt": {
|
|
82
|
+
"type": "string",
|
|
83
|
+
"mutable": false,
|
|
84
|
+
"complexType": {
|
|
85
|
+
"original": "string",
|
|
86
|
+
"resolved": "string",
|
|
87
|
+
"references": {}
|
|
88
|
+
},
|
|
89
|
+
"required": false,
|
|
90
|
+
"optional": false,
|
|
91
|
+
"docs": {
|
|
92
|
+
"tags": [],
|
|
93
|
+
"text": "Alternative text for the image."
|
|
94
|
+
},
|
|
95
|
+
"getter": false,
|
|
96
|
+
"setter": false,
|
|
97
|
+
"reflect": false,
|
|
98
|
+
"attribute": "alt",
|
|
99
|
+
"defaultValue": "''"
|
|
100
|
+
},
|
|
101
|
+
"width": {
|
|
102
|
+
"type": "string",
|
|
103
|
+
"mutable": false,
|
|
104
|
+
"complexType": {
|
|
105
|
+
"original": "string",
|
|
106
|
+
"resolved": "string | undefined",
|
|
107
|
+
"references": {}
|
|
108
|
+
},
|
|
109
|
+
"required": false,
|
|
110
|
+
"optional": true,
|
|
111
|
+
"docs": {
|
|
112
|
+
"tags": [],
|
|
113
|
+
"text": "Rendered width (e.g. `400` or `400px`)."
|
|
114
|
+
},
|
|
115
|
+
"getter": false,
|
|
116
|
+
"setter": false,
|
|
117
|
+
"reflect": false,
|
|
118
|
+
"attribute": "width"
|
|
119
|
+
},
|
|
120
|
+
"height": {
|
|
121
|
+
"type": "string",
|
|
122
|
+
"mutable": false,
|
|
123
|
+
"complexType": {
|
|
124
|
+
"original": "string",
|
|
125
|
+
"resolved": "string | undefined",
|
|
126
|
+
"references": {}
|
|
127
|
+
},
|
|
128
|
+
"required": false,
|
|
129
|
+
"optional": true,
|
|
130
|
+
"docs": {
|
|
131
|
+
"tags": [],
|
|
132
|
+
"text": "Rendered height (e.g. `300` or `300px`)."
|
|
133
|
+
},
|
|
134
|
+
"getter": false,
|
|
135
|
+
"setter": false,
|
|
136
|
+
"reflect": false,
|
|
137
|
+
"attribute": "height"
|
|
138
|
+
}
|
|
139
|
+
};
|
|
140
|
+
}
|
|
141
|
+
static get states() {
|
|
142
|
+
return {
|
|
143
|
+
"appName": {}
|
|
144
|
+
};
|
|
145
|
+
}
|
|
146
|
+
}
|
|
@@ -27,7 +27,7 @@ export class KanbanGroup {
|
|
|
27
27
|
};
|
|
28
28
|
}
|
|
29
29
|
render() {
|
|
30
|
-
return (h(Host, { key: '
|
|
30
|
+
return (h(Host, { key: '5c0675c4edff236ac8b4d90c93d418e3b0c18a9c' }, 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: '282342e6a11234154e4cbcc8df113aafd5cd9cd2', 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: {
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import { Operator, } from "@limetech/lime-web-components";
|
|
2
|
-
// Intentionally diverges from the
|
|
3
|
-
//
|
|
4
|
-
//
|
|
5
|
-
//
|
|
6
|
-
//
|
|
7
|
-
//
|
|
2
|
+
// Intentionally diverges from the write-side map in `filter-operators.ts` (the
|
|
3
|
+
// operator vocabulary the query builder and rule editor author with): that map
|
|
4
|
+
// has no `NOT` entry and maps `IN` to `'in-filter-set'`, whereas here a keyed
|
|
5
|
+
// bare `NOT` reads as `not-equals` and a bare `IN` set reads as `equals` (see
|
|
6
|
+
// `describeKeyed`). They are deliberately not the same table — do not reconcile
|
|
7
|
+
// them into one.
|
|
8
8
|
// Prototype-free (`Object.create(null)`): a junk `op` such as `'__proto__'` or
|
|
9
9
|
// `'constructor'` resolves to `undefined` rather than an inherited
|
|
10
10
|
// `Object.prototype` member, so a malformed expression falls through to "stays
|
|
@@ -1,6 +1,7 @@
|
|
|
1
|
-
import { Operator,
|
|
1
|
+
import { Operator, } from "@limetech/lime-web-components";
|
|
2
2
|
import { Host, h } from "@stencil/core";
|
|
3
|
-
import {
|
|
3
|
+
import { conditionToOperator, operatorToCondition, } from "../../filter-chip/filter-operators";
|
|
4
|
+
import { LIME_QUERY_CONDITIONS, } from "./lime-query-operators";
|
|
4
5
|
/**
|
|
5
6
|
* Inline editor for a single comparison expression. `shadow: true` so
|
|
6
7
|
* its stylesheet travels with the host when `limel-popover` portals it
|
|
@@ -14,9 +15,12 @@ export class LimeQueryFilterComparisonEditorComponent {
|
|
|
14
15
|
event.stopPropagation();
|
|
15
16
|
this.expressionChange.emit(Object.assign(Object.assign({}, this.expression), { key: event.detail }));
|
|
16
17
|
};
|
|
17
|
-
this.
|
|
18
|
+
this.handleConditionChange = (event) => {
|
|
18
19
|
event.stopPropagation();
|
|
19
|
-
const newOperator = event.detail
|
|
20
|
+
const newOperator = conditionToOperator(event.detail);
|
|
21
|
+
if (!newOperator) {
|
|
22
|
+
return;
|
|
23
|
+
}
|
|
20
24
|
const oldOperator = this.expression.op;
|
|
21
25
|
let convertedValue = this.expression.exp;
|
|
22
26
|
// IN expects an array; other operators expect a single value.
|
|
@@ -48,23 +52,14 @@ export class LimeQueryFilterComparisonEditorComponent {
|
|
|
48
52
|
(_a = this.propertySelectorEl) === null || _a === void 0 ? void 0 : _a.focus();
|
|
49
53
|
}
|
|
50
54
|
render() {
|
|
51
|
-
return (h(Host, { key: '
|
|
55
|
+
return (h(Host, { key: '528f313843bb6e8e779fc3a5603c10769cbd183b' }, this.renderPropertySelector(), this.renderConditionPicker(), this.renderValueInput()));
|
|
52
56
|
}
|
|
53
57
|
renderPropertySelector() {
|
|
54
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 }));
|
|
55
59
|
}
|
|
56
|
-
|
|
60
|
+
renderConditionPicker() {
|
|
57
61
|
const operatorHasBeenSet = !!this.expression.op;
|
|
58
|
-
|
|
59
|
-
var _a, _b;
|
|
60
|
-
return ({
|
|
61
|
-
text: (_b = (_a = this.translator) === null || _a === void 0 ? void 0 : _a.get(op.label)) !== null && _b !== void 0 ? _b : op.label,
|
|
62
|
-
value: op.value,
|
|
63
|
-
icon: op.icon ? { name: op.icon } : undefined,
|
|
64
|
-
});
|
|
65
|
-
});
|
|
66
|
-
const selectedOption = options.find((o) => o.value === this.expression.op);
|
|
67
|
-
return (h("limel-select", { class: "operator", label: "Operator", value: selectedOption, options: options, disabled: !operatorHasBeenSet && !this.expression.key, onChange: this.handleOperatorChange }));
|
|
62
|
+
return (h("limebb-filter-condition-picker", { class: "operator", platform: this.platform, propertyType: this.propertyType, conditions: LIME_QUERY_CONDITIONS, value: operatorToCondition(this.expression.op), disabled: !operatorHasBeenSet && !this.expression.key, onChange: this.handleConditionChange }));
|
|
68
63
|
}
|
|
69
64
|
renderValueInput() {
|
|
70
65
|
if (!this.expression.op) {
|
|
@@ -72,10 +67,6 @@ export class LimeQueryFilterComparisonEditorComponent {
|
|
|
72
67
|
}
|
|
73
68
|
return (h("limebb-lime-query-value-input", { class: "value", label: "Value", platform: this.platform, context: this.context, limetype: this.limetype, activeLimetype: this.activeLimetype, propertyPath: this.expression.key, operator: this.expression.op, value: this.expression.exp, onChange: this.handleValueChange }));
|
|
74
69
|
}
|
|
75
|
-
get translator() {
|
|
76
|
-
var _a;
|
|
77
|
-
return (_a = this.platform) === null || _a === void 0 ? void 0 : _a.get(PlatformServiceName.Translate);
|
|
78
|
-
}
|
|
79
70
|
static get is() { return "limebb-lime-query-filter-comparison-editor"; }
|
|
80
71
|
static get encapsulation() { return "shadow"; }
|
|
81
72
|
static get delegatesFocus() { return true; }
|
|
@@ -200,6 +191,32 @@ export class LimeQueryFilterComparisonEditorComponent {
|
|
|
200
191
|
},
|
|
201
192
|
"getter": false,
|
|
202
193
|
"setter": false
|
|
194
|
+
},
|
|
195
|
+
"propertyType": {
|
|
196
|
+
"type": "string",
|
|
197
|
+
"mutable": false,
|
|
198
|
+
"complexType": {
|
|
199
|
+
"original": "PropertyType",
|
|
200
|
+
"resolved": "\"belongsto\" | \"date\" | \"decimal\" | \"file\" | \"hasandbelongstomany\" | \"hasmany\" | \"hasone\" | \"integer\" | \"link\" | \"month\" | \"option\" | \"percent\" | \"phone\" | \"quarter\" | \"set\" | \"string\" | \"system\" | \"text\" | \"time\" | \"timeofday\" | \"user\" | \"xml\" | \"year\" | \"yesno\" | undefined",
|
|
201
|
+
"references": {
|
|
202
|
+
"PropertyType": {
|
|
203
|
+
"location": "import",
|
|
204
|
+
"path": "@limetech/lime-web-components",
|
|
205
|
+
"id": "node_modules::PropertyType",
|
|
206
|
+
"referenceLocation": "PropertyType"
|
|
207
|
+
}
|
|
208
|
+
}
|
|
209
|
+
},
|
|
210
|
+
"required": false,
|
|
211
|
+
"optional": true,
|
|
212
|
+
"docs": {
|
|
213
|
+
"tags": [],
|
|
214
|
+
"text": "Data type of the selected property; lets the picker pick type-specific\nwording and icons."
|
|
215
|
+
},
|
|
216
|
+
"getter": false,
|
|
217
|
+
"setter": false,
|
|
218
|
+
"reflect": false,
|
|
219
|
+
"attribute": "property-type"
|
|
203
220
|
}
|
|
204
221
|
};
|
|
205
222
|
}
|
package/dist/collection/components/lime-query-builder/expressions/lime-query-filter-comparison.js
CHANGED
|
@@ -1,26 +1,8 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { PlatformServiceName, } from "@limetech/lime-web-components";
|
|
2
2
|
import { Host, h, } from "@stencil/core";
|
|
3
|
+
import { operatorToCondition } from "../../filter-chip/filter-operators";
|
|
3
4
|
import { getNormalizedProperties } from "../property-resolution";
|
|
4
5
|
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
|
-
};
|
|
24
6
|
/**
|
|
25
7
|
* Lime Query Filter Comparison Component
|
|
26
8
|
*
|
|
@@ -70,13 +52,14 @@ export class LimeQueryFilterComparisonComponent {
|
|
|
70
52
|
var _a, _b;
|
|
71
53
|
const hasKey = !!((_a = this.expression) === null || _a === void 0 ? void 0 : _a.key);
|
|
72
54
|
const isList = Array.isArray((_b = this.expression) === null || _b === void 0 ? void 0 : _b.exp);
|
|
73
|
-
|
|
55
|
+
const propertyType = hasKey
|
|
56
|
+
? this.getPropertyType(this.expression.key)
|
|
57
|
+
: undefined;
|
|
58
|
+
return (h(Host, { key: '3e312a0124577ab70c6ab46074f7a34e0b87decc' }, this.renderHeader(), h("limel-popover", { key: '37b5e3b58ef4a20950b1f6fc24075388b4bdc932', open: this.isOpen, openDirection: "bottom-start", onClose: this.handleClose }, h("limebb-filter-chip", { key: 'd34fc11734714a8b83ef7c014fd9468522e8ffbf', slot: "trigger", platform: this.platform, label: hasKey
|
|
74
59
|
? this.getPropertyLabel(this.expression.key)
|
|
75
60
|
: undefined, condition: hasKey
|
|
76
|
-
?
|
|
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: '0d56cccd56078eac4d988d757cae85897b8a48c7', platform: this.platform, context: this.context, limetype: this.limetype, activeLimetype: this.activeLimetype, expression: this.expression, onExpressionChange: this.handleEditorChange }))));
|
|
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: 'abaa2fbbdf8ab350f1da21412b82405d02f1546f', platform: this.platform, context: this.context, limetype: this.limetype, activeLimetype: this.activeLimetype, expression: this.expression, propertyType: propertyType, onExpressionChange: this.handleEditorChange }))));
|
|
80
63
|
}
|
|
81
64
|
getPropertyLabel(key) {
|
|
82
65
|
return this.resolveProperty(key).labels.join(' › ');
|