@limetech/lime-crm-building-blocks 1.101.0 → 1.102.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +7 -0
- package/dist/cjs/lime-crm-building-blocks.cjs.js +1 -1
- package/dist/cjs/lime-query-validation-6be10fa7.js +558 -0
- package/dist/cjs/limebb-lime-query-builder.cjs.entry.js +4 -514
- package/dist/cjs/{limebb-lime-query-filter-builder_4.cjs.entry.js → limebb-lime-query-filter-builder_3.cjs.entry.js} +1 -243
- package/dist/cjs/limebb-lime-query-filter-comparison_2.cjs.entry.js +1 -1
- package/dist/cjs/limebb-lime-query-filter-group_3.cjs.entry.js +2 -2
- package/dist/cjs/limebb-lime-query-order-by-item.cjs.entry.js +2 -2
- package/dist/cjs/limebb-lime-query-response-format-builder.cjs.entry.js +242 -0
- package/dist/cjs/limebb-lime-query-response-format-editor_2.cjs.entry.js +322 -0
- package/dist/cjs/limebb-live-docs-info.cjs.entry.js +2 -2
- package/dist/cjs/limebb-locale-picker.cjs.entry.js +1 -1
- package/dist/cjs/limebb-mention-group-counter.cjs.entry.js +2 -2
- package/dist/cjs/limebb-navigation-button_2.cjs.entry.js +3 -3
- package/dist/cjs/limebb-notification-item.cjs.entry.js +1 -1
- package/dist/cjs/limebb-percentage-visualizer.cjs.entry.js +2 -2
- package/dist/cjs/limebb-text-editor.cjs.entry.js +1 -1
- package/dist/cjs/limebb-trend-indicator.cjs.entry.js +1 -1
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/collection/collection-manifest.json +3 -2
- package/dist/collection/components/lime-query-builder/expressions/lime-query-filter-comparison.js +1 -1
- package/dist/collection/components/lime-query-builder/expressions/lime-query-filter-group.js +1 -1
- 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.css +91 -0
- package/dist/collection/components/lime-query-builder/lime-query-response-format-builder.js +355 -0
- package/dist/collection/components/lime-query-builder/lime-query-validation.js +40 -0
- 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-item.js +2 -2
- package/dist/collection/components/lime-query-builder/{response-format-editor.css → response-format/response-format-editor.css} +1 -1
- package/dist/collection/components/lime-query-builder/{response-format-editor.js → response-format/response-format-editor.js} +5 -5
- package/dist/collection/components/lime-query-builder/response-format/response-format-helpers.js +92 -0
- package/dist/collection/components/lime-query-builder/{response-format-item.css → response-format/response-format-item.css} +1 -1
- package/dist/collection/components/lime-query-builder/{response-format-item.js → response-format/response-format-item.js} +6 -6
- 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/summary-popover/summary-popover.js +3 -3
- 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/components/lime-query-filter-comparison.js +1 -1
- package/dist/components/lime-query-filter-expression.js +2 -2
- package/dist/components/lime-query-validation.js +555 -0
- package/dist/components/limebb-lime-query-builder.js +14 -524
- package/dist/components/limebb-lime-query-response-format-builder.d.ts +11 -0
- package/dist/components/limebb-lime-query-response-format-builder.js +283 -0
- package/dist/components/limebb-lime-query-response-format-editor.d.ts +11 -0
- package/dist/components/{limebb-response-format-editor.js → limebb-lime-query-response-format-editor.js} +2 -2
- package/dist/components/limebb-lime-query-response-format-item.d.ts +11 -0
- package/dist/components/{limebb-response-format-item.js → limebb-lime-query-response-format-item.js} +2 -2
- package/dist/components/limebb-locale-picker.js +1 -1
- package/dist/components/limebb-mention-group-counter.js +2 -2
- package/dist/components/limebb-percentage-visualizer.js +2 -2
- package/dist/components/limebb-text-editor.js +1 -1
- package/dist/components/limebb-trend-indicator.js +1 -1
- package/dist/components/limetype-field.js +1 -1
- package/dist/components/live-docs-info.js +2 -2
- package/dist/components/notification-item.js +1 -1
- package/dist/components/order-by-item.js +2 -2
- package/dist/components/response-format-editor.js +11 -11
- package/dist/components/response-format-item.js +9 -9
- package/dist/components/summary-popover.js +3 -3
- package/dist/esm/lime-crm-building-blocks.js +1 -1
- package/dist/esm/lime-query-validation-573223a5.js +555 -0
- package/dist/esm/limebb-lime-query-builder.entry.js +4 -514
- package/dist/esm/{limebb-lime-query-filter-builder_4.entry.js → limebb-lime-query-filter-builder_3.entry.js} +2 -243
- package/dist/esm/limebb-lime-query-filter-comparison_2.entry.js +1 -1
- package/dist/esm/limebb-lime-query-filter-group_3.entry.js +2 -2
- package/dist/esm/limebb-lime-query-order-by-item.entry.js +2 -2
- package/dist/esm/limebb-lime-query-response-format-builder.entry.js +238 -0
- package/dist/esm/limebb-lime-query-response-format-editor_2.entry.js +317 -0
- package/dist/esm/limebb-live-docs-info.entry.js +2 -2
- package/dist/esm/limebb-locale-picker.entry.js +1 -1
- package/dist/esm/limebb-mention-group-counter.entry.js +2 -2
- package/dist/esm/limebb-navigation-button_2.entry.js +3 -3
- package/dist/esm/limebb-notification-item.entry.js +1 -1
- package/dist/esm/limebb-percentage-visualizer.entry.js +2 -2
- package/dist/esm/limebb-text-editor.entry.js +1 -1
- package/dist/esm/limebb-trend-indicator.entry.js +1 -1
- package/dist/esm/loader.js +1 -1
- package/dist/lime-crm-building-blocks/lime-crm-building-blocks.esm.js +1 -1
- package/dist/lime-crm-building-blocks/{p-5cf4898d.entry.js → p-0de79b7f.entry.js} +1 -1
- package/dist/lime-crm-building-blocks/{p-8c2fb1c9.entry.js → p-0f7135ff.entry.js} +1 -1
- package/dist/lime-crm-building-blocks/{p-6aa216ec.entry.js → p-186e9f1a.entry.js} +1 -1
- package/dist/lime-crm-building-blocks/p-289ce8b9.entry.js +1 -0
- package/dist/lime-crm-building-blocks/p-3351395b.entry.js +1 -0
- package/dist/lime-crm-building-blocks/p-33e6d0ec.entry.js +1 -0
- package/dist/lime-crm-building-blocks/{p-a1ee8990.entry.js → p-3d1be1c9.entry.js} +1 -1
- package/dist/lime-crm-building-blocks/{p-92dfc5f8.entry.js → p-577d8909.entry.js} +1 -1
- package/dist/lime-crm-building-blocks/{p-ccf34631.entry.js → p-6579412e.entry.js} +1 -1
- package/dist/lime-crm-building-blocks/{p-d84874dc.entry.js → p-6f6fed59.entry.js} +1 -1
- package/dist/lime-crm-building-blocks/{p-0cd036ed.entry.js → p-7e5528f6.entry.js} +1 -1
- package/dist/lime-crm-building-blocks/{p-8601eab5.entry.js → p-a9ac501f.entry.js} +1 -1
- package/dist/lime-crm-building-blocks/p-be845252.entry.js +1 -0
- package/dist/lime-crm-building-blocks/{p-2725671e.entry.js → p-cb338753.entry.js} +1 -1
- package/dist/lime-crm-building-blocks/{p-425eaba2.entry.js → p-d0721b22.entry.js} +1 -1
- package/dist/lime-crm-building-blocks/p-fa2da6bc.js +1 -0
- package/dist/types/components/lime-query-builder/lime-query-response-format-builder.d.ts +102 -0
- package/dist/types/components/lime-query-builder/lime-query-validation.d.ts +13 -0
- package/dist/types/components/lime-query-builder/{response-format-editor.d.ts → response-format/response-format-editor.d.ts} +2 -2
- package/dist/types/components/lime-query-builder/response-format/response-format-helpers.d.ts +42 -0
- package/dist/types/components/lime-query-builder/{response-format-item.d.ts → response-format/response-format-item.d.ts} +2 -2
- package/dist/types/components.d.ts +394 -222
- package/package.json +1 -1
- package/dist/cjs/limebb-response-format-item.cjs.entry.js +0 -80
- package/dist/components/limebb-response-format-editor.d.ts +0 -11
- package/dist/components/limebb-response-format-item.d.ts +0 -11
- package/dist/esm/limebb-response-format-item.entry.js +0 -76
- package/dist/lime-crm-building-blocks/p-244ee55b.entry.js +0 -1
- package/dist/lime-crm-building-blocks/p-67c174d0.entry.js +0 -1
- package/dist/lime-crm-building-blocks/p-f9efca1d.entry.js +0 -1
|
@@ -0,0 +1,283 @@
|
|
|
1
|
+
import { proxyCustomElement, HTMLElement, createEvent, h } from '@stencil/core/internal/client';
|
|
2
|
+
import { T as Te } from './index.esm.js';
|
|
3
|
+
import { v as validateResponseFormatOnly } from './lime-query-validation.js';
|
|
4
|
+
import { d as defineCustomElement$4 } from './response-format-editor.js';
|
|
5
|
+
import { d as defineCustomElement$3 } from './response-format-item.js';
|
|
6
|
+
import { d as defineCustomElement$2 } from './property-selector.js';
|
|
7
|
+
|
|
8
|
+
/**
|
|
9
|
+
* Helper functions for working with ResponseFormat objects
|
|
10
|
+
*
|
|
11
|
+
* These utilities handle parsing, stringifying, and default values
|
|
12
|
+
* for ResponseFormat in isolation (without full LimeQuery wrapper)
|
|
13
|
+
*/
|
|
14
|
+
/**
|
|
15
|
+
* Parse JSON string to ResponseFormat
|
|
16
|
+
*
|
|
17
|
+
* @param json - JSON string to parse
|
|
18
|
+
* @returns Parsed ResponseFormat object
|
|
19
|
+
* @throws Error if JSON is invalid or not a ResponseFormat
|
|
20
|
+
*/
|
|
21
|
+
function parseResponseFormat(json) {
|
|
22
|
+
let parsed;
|
|
23
|
+
try {
|
|
24
|
+
parsed = JSON.parse(json);
|
|
25
|
+
}
|
|
26
|
+
catch (error) {
|
|
27
|
+
throw new Error(`Invalid JSON: ${error.message}`);
|
|
28
|
+
}
|
|
29
|
+
if (parsed === null || typeof parsed !== 'object') {
|
|
30
|
+
throw new Error('Response format must be an object');
|
|
31
|
+
}
|
|
32
|
+
// Validate structure
|
|
33
|
+
const validKeys = new Set(['object', 'aggregates']);
|
|
34
|
+
const keys = Object.keys(parsed);
|
|
35
|
+
// Check for unexpected keys
|
|
36
|
+
const unexpectedKeys = keys.filter((key) => !validKeys.has(key));
|
|
37
|
+
if (unexpectedKeys.length > 0) {
|
|
38
|
+
throw new Error(`Unexpected properties in response format: ${unexpectedKeys.join(', ')}. ` +
|
|
39
|
+
`Only 'object' and 'aggregates' are allowed.`);
|
|
40
|
+
}
|
|
41
|
+
// Must have at least one of object or aggregates
|
|
42
|
+
if (!parsed.object && !parsed.aggregates) {
|
|
43
|
+
throw new Error('Response format must contain at least one of: object, aggregates');
|
|
44
|
+
}
|
|
45
|
+
return parsed;
|
|
46
|
+
}
|
|
47
|
+
/**
|
|
48
|
+
* Stringify ResponseFormat to JSON
|
|
49
|
+
*
|
|
50
|
+
* @param format - ResponseFormat object to stringify
|
|
51
|
+
* @returns Pretty-printed JSON string
|
|
52
|
+
*/
|
|
53
|
+
function stringifyResponseFormat(format) {
|
|
54
|
+
return JSON.stringify(format, null, 2);
|
|
55
|
+
}
|
|
56
|
+
/**
|
|
57
|
+
* Get default ResponseFormat (just _id)
|
|
58
|
+
*
|
|
59
|
+
* @returns Default ResponseFormat with only _id selected
|
|
60
|
+
*/
|
|
61
|
+
function getDefaultResponseFormat() {
|
|
62
|
+
return {
|
|
63
|
+
object: {
|
|
64
|
+
_id: null,
|
|
65
|
+
},
|
|
66
|
+
};
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
const limeQueryResponseFormatBuilderCss = ":host(limebb-lime-query-response-format-builder){display:block;width:100%}.response-format-builder{display:flex;flex-direction:column;gap:1.5rem}.builder-label{margin:0;font-size:1.25rem;font-weight:600;color:rgb(var(--contrast-1100))}.mode-controls{display:flex;align-items:center;gap:0.5rem;padding:0.5rem}.mode-switch{display:flex;align-items:center;gap:0.5rem}.mode-switch limel-button{min-width:5rem}.gui-mode,.code-mode{display:block}.code-editor-container{--code-editor-max-height:70vh;display:flex;flex-direction:column;gap:1rem}.code-editor-container .validation-errors{padding:0.75rem 1rem;color:rgb(var(--color-red-default));background-color:rgb(var(--color-red-lighter));border-left:0.25rem solid rgb(var(--color-red-default));border-radius:0.25rem;font-size:0.875rem}.code-editor-container .validation-errors strong{display:block;margin-bottom:0.5rem;font-weight:600}.code-editor-container .validation-errors ul{margin:0;padding-left:1.5rem}.code-editor-container .validation-errors li{margin:0.25rem 0}.code-editor-container .gui-limitations{padding:0.75rem 1rem;color:rgb(var(--color-blue-dark));background-color:rgb(var(--color-blue-lighter));border-left:0.25rem solid rgb(var(--color-blue-default));border-radius:0.25rem;font-size:0.875rem}.code-editor-container .gui-limitations strong{display:block;margin-bottom:0.5rem;font-weight:600}.code-editor-container .gui-limitations ul{margin:0;padding-left:1.5rem}.code-editor-container .gui-limitations li{margin:0.25rem 0}@media (max-width: 768px){.response-format-builder{gap:1rem}}";
|
|
70
|
+
const LimebbLimeQueryResponseFormatBuilderStyle0 = limeQueryResponseFormatBuilderCss;
|
|
71
|
+
|
|
72
|
+
var __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
|
|
73
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
74
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function")
|
|
75
|
+
r = Reflect.decorate(decorators, target, key, desc);
|
|
76
|
+
else
|
|
77
|
+
for (var i = decorators.length - 1; i >= 0; i--)
|
|
78
|
+
if (d = decorators[i])
|
|
79
|
+
r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
80
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
81
|
+
};
|
|
82
|
+
const LimeQueryResponseFormatBuilder = /*@__PURE__*/ proxyCustomElement(class LimeQueryResponseFormatBuilder extends HTMLElement {
|
|
83
|
+
constructor() {
|
|
84
|
+
super();
|
|
85
|
+
this.__registerHost();
|
|
86
|
+
this.__attachShadow();
|
|
87
|
+
this.change = createEvent(this, "change", 7);
|
|
88
|
+
/**
|
|
89
|
+
* Optional label for the builder
|
|
90
|
+
*/
|
|
91
|
+
this.label = 'Response Format';
|
|
92
|
+
this.mode = 'gui';
|
|
93
|
+
this.codeValue = '';
|
|
94
|
+
/**
|
|
95
|
+
* Switch from code mode to GUI mode
|
|
96
|
+
*/
|
|
97
|
+
this.switchToGui = () => {
|
|
98
|
+
// Validate JSON before switching
|
|
99
|
+
try {
|
|
100
|
+
const parsed = parseResponseFormat(this.codeValue);
|
|
101
|
+
// Check if it's supported in GUI
|
|
102
|
+
const support = validateResponseFormatOnly(parsed, this.limetypes, this.limetype, this.guiModeEnabled);
|
|
103
|
+
if (!support.guiSupported) {
|
|
104
|
+
// Don't switch if GUI can't render this response format
|
|
105
|
+
return;
|
|
106
|
+
}
|
|
107
|
+
// Update internal state from parsed value
|
|
108
|
+
this.internalValue = parsed;
|
|
109
|
+
this.mode = 'gui';
|
|
110
|
+
this.change.emit(parsed);
|
|
111
|
+
}
|
|
112
|
+
catch (_a) {
|
|
113
|
+
// Don't switch if JSON is invalid (linter will show the error)
|
|
114
|
+
}
|
|
115
|
+
};
|
|
116
|
+
/**
|
|
117
|
+
* Switch from GUI mode to code mode
|
|
118
|
+
*/
|
|
119
|
+
this.switchToCode = () => {
|
|
120
|
+
this.updateCodeValue();
|
|
121
|
+
this.mode = 'code';
|
|
122
|
+
};
|
|
123
|
+
/**
|
|
124
|
+
* Handle code editor changes
|
|
125
|
+
* @param event
|
|
126
|
+
*/
|
|
127
|
+
this.handleCodeChange = (event) => {
|
|
128
|
+
event.stopPropagation();
|
|
129
|
+
this.codeValue = event.detail;
|
|
130
|
+
// Try to parse and emit if valid
|
|
131
|
+
try {
|
|
132
|
+
const parsed = parseResponseFormat(this.codeValue);
|
|
133
|
+
this.internalValue = parsed;
|
|
134
|
+
this.change.emit(parsed);
|
|
135
|
+
}
|
|
136
|
+
catch (_a) {
|
|
137
|
+
// Invalid JSON - don't emit change
|
|
138
|
+
// Validation errors will be shown by checkGuiSupport()
|
|
139
|
+
}
|
|
140
|
+
};
|
|
141
|
+
/**
|
|
142
|
+
* Handle GUI mode changes
|
|
143
|
+
* @param event
|
|
144
|
+
*/
|
|
145
|
+
this.handleGuiChange = (event) => {
|
|
146
|
+
event.stopPropagation();
|
|
147
|
+
this.internalValue = event.detail;
|
|
148
|
+
this.updateCodeValue();
|
|
149
|
+
this.change.emit(event.detail);
|
|
150
|
+
};
|
|
151
|
+
}
|
|
152
|
+
/**
|
|
153
|
+
* Check if GUI mode is enabled via feature flag
|
|
154
|
+
*/
|
|
155
|
+
get guiModeEnabled() {
|
|
156
|
+
var _a, _b, _c;
|
|
157
|
+
return ((_c = (_b = (_a = this.platform) === null || _a === void 0 ? void 0 : _a.isFeatureEnabled) === null || _b === void 0 ? void 0 : _b.call(_a, 'useLimeQueryBuilderGuiMode')) !== null && _c !== void 0 ? _c : false);
|
|
158
|
+
}
|
|
159
|
+
componentWillLoad() {
|
|
160
|
+
// Initialize internal value
|
|
161
|
+
this.internalValue = this.value || getDefaultResponseFormat();
|
|
162
|
+
// Update code value from internal value
|
|
163
|
+
this.updateCodeValue();
|
|
164
|
+
// Force code mode if GUI is disabled
|
|
165
|
+
if (!this.guiModeEnabled) {
|
|
166
|
+
this.mode = 'code';
|
|
167
|
+
return;
|
|
168
|
+
}
|
|
169
|
+
// Check if GUI mode is supported for current value
|
|
170
|
+
const support = this.checkGuiSupport();
|
|
171
|
+
if (!support.guiSupported) {
|
|
172
|
+
this.mode = 'code';
|
|
173
|
+
}
|
|
174
|
+
}
|
|
175
|
+
componentWillUpdate() {
|
|
176
|
+
// Sync internal value when prop changes externally
|
|
177
|
+
if (this.value && this.mode === 'gui') {
|
|
178
|
+
this.internalValue = this.value;
|
|
179
|
+
}
|
|
180
|
+
}
|
|
181
|
+
render() {
|
|
182
|
+
const guiSupported = this.checkGuiSupport();
|
|
183
|
+
return (h("div", { key: '2b5e4ee360d6997a176d24e5a7aa36158461ad4a', class: "response-format-builder" }, this.label && h("h3", { key: 'b81f58824e4cf3114efd4d2978c833f7f06f2004', class: "builder-label" }, this.label), this.guiModeEnabled && (h("div", { key: '1b2ec0cd39909568732be94707a9dcadaa4a1223', class: "mode-controls" }, this.renderModeSwitch(guiSupported))), !this.guiModeEnabled || this.mode === 'code' ? (h("div", { class: "code-mode" }, this.renderCodeEditor(guiSupported))) : (h("div", { class: "gui-mode" }, this.renderGuiMode()))));
|
|
184
|
+
}
|
|
185
|
+
renderModeSwitch(support) {
|
|
186
|
+
const guiDisabled = !support.guiSupported;
|
|
187
|
+
return (h("div", { class: "mode-switch" }, h("limel-button", { label: "GUI", primary: this.mode === 'gui', disabled: guiDisabled, onClick: this.switchToGui }), h("limel-button", { label: "Code", primary: this.mode === 'code', onClick: this.switchToCode })));
|
|
188
|
+
}
|
|
189
|
+
renderCodeEditor(support) {
|
|
190
|
+
return (h("div", { class: "code-editor-container" }, h("limel-code-editor", { value: this.codeValue, language: "json", lineNumbers: true, fold: true, lint: true, onChange: this.handleCodeChange }), !support.valid && support.validationErrors.length > 0 && (h("div", { class: "validation-errors" }, h("strong", null, "Invalid Response Format:"), h("ul", null, support.validationErrors.map((error) => (h("li", null, error)))))), this.guiModeEnabled &&
|
|
191
|
+
support.valid &&
|
|
192
|
+
!support.guiSupported &&
|
|
193
|
+
support.guiLimitations.length > 0 && (h("div", { class: "gui-limitations" }, h("strong", null, "Cannot switch to GUI mode:"), h("ul", null, support.guiLimitations.map((limitation) => (h("li", null, limitation))))))));
|
|
194
|
+
}
|
|
195
|
+
renderGuiMode() {
|
|
196
|
+
return (h("limebb-lime-query-response-format-editor", { platform: this.platform, context: this.context, limetype: this.limetype, value: this.internalValue, onChange: this.handleGuiChange }));
|
|
197
|
+
}
|
|
198
|
+
/**
|
|
199
|
+
* Check if current value can be rendered in GUI mode
|
|
200
|
+
*/
|
|
201
|
+
checkGuiSupport() {
|
|
202
|
+
if (!this.limetypes) {
|
|
203
|
+
return {
|
|
204
|
+
valid: false,
|
|
205
|
+
guiSupported: false,
|
|
206
|
+
validationErrors: ['Limetypes not loaded'],
|
|
207
|
+
guiLimitations: [],
|
|
208
|
+
};
|
|
209
|
+
}
|
|
210
|
+
// Try to parse code value if in code mode
|
|
211
|
+
let valueToCheck;
|
|
212
|
+
if (this.mode === 'code') {
|
|
213
|
+
try {
|
|
214
|
+
valueToCheck = parseResponseFormat(this.codeValue);
|
|
215
|
+
}
|
|
216
|
+
catch (error) {
|
|
217
|
+
return {
|
|
218
|
+
valid: false,
|
|
219
|
+
guiSupported: false,
|
|
220
|
+
validationErrors: [error.message],
|
|
221
|
+
guiLimitations: [],
|
|
222
|
+
};
|
|
223
|
+
}
|
|
224
|
+
}
|
|
225
|
+
else {
|
|
226
|
+
valueToCheck = this.internalValue;
|
|
227
|
+
}
|
|
228
|
+
return validateResponseFormatOnly(valueToCheck, this.limetypes, this.limetype, this.guiModeEnabled);
|
|
229
|
+
}
|
|
230
|
+
/**
|
|
231
|
+
* Update code value from internal state
|
|
232
|
+
*/
|
|
233
|
+
updateCodeValue() {
|
|
234
|
+
this.codeValue = stringifyResponseFormat(this.internalValue);
|
|
235
|
+
}
|
|
236
|
+
static get style() { return LimebbLimeQueryResponseFormatBuilderStyle0; }
|
|
237
|
+
}, [1, "limebb-lime-query-response-format-builder", {
|
|
238
|
+
"platform": [16],
|
|
239
|
+
"context": [16],
|
|
240
|
+
"limetype": [1],
|
|
241
|
+
"value": [16],
|
|
242
|
+
"label": [1],
|
|
243
|
+
"limetypes": [32],
|
|
244
|
+
"mode": [32],
|
|
245
|
+
"codeValue": [32],
|
|
246
|
+
"internalValue": [32]
|
|
247
|
+
}]);
|
|
248
|
+
__decorate([
|
|
249
|
+
Te()
|
|
250
|
+
], LimeQueryResponseFormatBuilder.prototype, "limetypes", void 0);
|
|
251
|
+
function defineCustomElement$1() {
|
|
252
|
+
if (typeof customElements === "undefined") {
|
|
253
|
+
return;
|
|
254
|
+
}
|
|
255
|
+
const components = ["limebb-lime-query-response-format-builder", "limebb-lime-query-response-format-editor", "limebb-lime-query-response-format-item", "limebb-property-selector"];
|
|
256
|
+
components.forEach(tagName => { switch (tagName) {
|
|
257
|
+
case "limebb-lime-query-response-format-builder":
|
|
258
|
+
if (!customElements.get(tagName)) {
|
|
259
|
+
customElements.define(tagName, LimeQueryResponseFormatBuilder);
|
|
260
|
+
}
|
|
261
|
+
break;
|
|
262
|
+
case "limebb-lime-query-response-format-editor":
|
|
263
|
+
if (!customElements.get(tagName)) {
|
|
264
|
+
defineCustomElement$4();
|
|
265
|
+
}
|
|
266
|
+
break;
|
|
267
|
+
case "limebb-lime-query-response-format-item":
|
|
268
|
+
if (!customElements.get(tagName)) {
|
|
269
|
+
defineCustomElement$3();
|
|
270
|
+
}
|
|
271
|
+
break;
|
|
272
|
+
case "limebb-property-selector":
|
|
273
|
+
if (!customElements.get(tagName)) {
|
|
274
|
+
defineCustomElement$2();
|
|
275
|
+
}
|
|
276
|
+
break;
|
|
277
|
+
} });
|
|
278
|
+
}
|
|
279
|
+
|
|
280
|
+
const LimebbLimeQueryResponseFormatBuilder = LimeQueryResponseFormatBuilder;
|
|
281
|
+
const defineCustomElement = defineCustomElement$1;
|
|
282
|
+
|
|
283
|
+
export { LimebbLimeQueryResponseFormatBuilder, defineCustomElement };
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { Components, JSX } from "../types/components";
|
|
2
|
+
|
|
3
|
+
interface LimebbLimeQueryResponseFormatEditor extends Components.LimebbLimeQueryResponseFormatEditor, HTMLElement {}
|
|
4
|
+
export const LimebbLimeQueryResponseFormatEditor: {
|
|
5
|
+
prototype: LimebbLimeQueryResponseFormatEditor;
|
|
6
|
+
new (): LimebbLimeQueryResponseFormatEditor;
|
|
7
|
+
};
|
|
8
|
+
/**
|
|
9
|
+
* Used to define this component and all nested components recursively.
|
|
10
|
+
*/
|
|
11
|
+
export const defineCustomElement: () => void;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { R as ResponseFormatEditor, d as defineCustomElement$1 } from './response-format-editor.js';
|
|
2
2
|
|
|
3
|
-
const
|
|
3
|
+
const LimebbLimeQueryResponseFormatEditor = ResponseFormatEditor;
|
|
4
4
|
const defineCustomElement = defineCustomElement$1;
|
|
5
5
|
|
|
6
|
-
export {
|
|
6
|
+
export { LimebbLimeQueryResponseFormatEditor, defineCustomElement };
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { Components, JSX } from "../types/components";
|
|
2
|
+
|
|
3
|
+
interface LimebbLimeQueryResponseFormatItem extends Components.LimebbLimeQueryResponseFormatItem, HTMLElement {}
|
|
4
|
+
export const LimebbLimeQueryResponseFormatItem: {
|
|
5
|
+
prototype: LimebbLimeQueryResponseFormatItem;
|
|
6
|
+
new (): LimebbLimeQueryResponseFormatItem;
|
|
7
|
+
};
|
|
8
|
+
/**
|
|
9
|
+
* Used to define this component and all nested components recursively.
|
|
10
|
+
*/
|
|
11
|
+
export const defineCustomElement: () => void;
|
package/dist/components/{limebb-response-format-item.js → limebb-lime-query-response-format-item.js}
RENAMED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { R as ResponseFormatItem, d as defineCustomElement$1 } from './response-format-item.js';
|
|
2
2
|
|
|
3
|
-
const
|
|
3
|
+
const LimebbLimeQueryResponseFormatItem = ResponseFormatItem;
|
|
4
4
|
const defineCustomElement = defineCustomElement$1;
|
|
5
5
|
|
|
6
|
-
export {
|
|
6
|
+
export { LimebbLimeQueryResponseFormatItem, defineCustomElement };
|
|
@@ -1131,7 +1131,7 @@ const LocalePicker = /*@__PURE__*/ proxyCustomElement(class LocalePicker extends
|
|
|
1131
1131
|
const value = this.value;
|
|
1132
1132
|
selectedOptions = options.find((option) => option.value === value);
|
|
1133
1133
|
}
|
|
1134
|
-
return (h("limel-select", { key: '
|
|
1134
|
+
return (h("limel-select", { key: '59ee26c288bf08161708bf6bcc6b304ebf1b456f', value: selectedOptions, options: sortBy$1(options, 'text'), helperText: this.helperText, label: this.label, required: this.required, disabled: this.disabled, readonly: this.readonly, onChange: this.handleChange, multiple: this.multipleChoice }));
|
|
1135
1135
|
}
|
|
1136
1136
|
}, [1, "limebb-locale-picker", {
|
|
1137
1137
|
"platform": [16],
|
|
@@ -13,8 +13,8 @@ const MentionGroupCounter = /*@__PURE__*/ proxyCustomElement(class MentionGroupC
|
|
|
13
13
|
render() {
|
|
14
14
|
const label = this.getLabel();
|
|
15
15
|
return [
|
|
16
|
-
h("span", { key: '
|
|
17
|
-
h("limel-tooltip", { key: '
|
|
16
|
+
h("span", { key: '2ed8fb232e05342565947976d2af9f212cc82331', id: this.tooltipId }, label),
|
|
17
|
+
h("limel-tooltip", { key: '404fcd53eec16a0b0b32a4358125354dd148e339', elementId: this.tooltipId, label: label, helperLabel: this.helperLabel }),
|
|
18
18
|
];
|
|
19
19
|
}
|
|
20
20
|
getLabel() {
|
|
@@ -76,11 +76,11 @@ const PercentageVisualizer = /*@__PURE__*/ proxyCustomElement(class PercentageVi
|
|
|
76
76
|
render() {
|
|
77
77
|
const normalizedValue = this.getNormalizedValue();
|
|
78
78
|
const zeroPoint = this.getZeroPointPosition();
|
|
79
|
-
return (h(Host, { key: '
|
|
79
|
+
return (h(Host, { key: 'be67c53d5eb98d9f1f76dfce49242f73c1a1f1ed', class: this.getContainerClassList(), style: {
|
|
80
80
|
'--limebb-percentage-visualizer-zero-point-position': `${zeroPoint}%`,
|
|
81
81
|
'--limebb-percentage-visualizer-width': `${Math.abs(normalizedValue)}%`,
|
|
82
82
|
'--limebb-percentage-visualizer-rotate': `${normalizedValue >= 0 ? '0deg' : '180deg'}`,
|
|
83
|
-
} }, h("limel-notched-outline", { key: '
|
|
83
|
+
} }, h("limel-notched-outline", { key: '839756a72aaccd97a5f6f2973d5110d1e6ff2aaf', 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: '02d00150e43a13e1be31e90f09599c067c09cf81', slot: "content" }, this.renderVisualization())), this.renderHelperLine()));
|
|
84
84
|
}
|
|
85
85
|
renderVisualization() {
|
|
86
86
|
if (this.reducePresence && (this.numValue === 0 || !this.hasValue())) {
|
|
@@ -1774,7 +1774,7 @@ const LimeBBTextEditor = /*@__PURE__*/ proxyCustomElement(class LimeBBTextEditor
|
|
|
1774
1774
|
}
|
|
1775
1775
|
render() {
|
|
1776
1776
|
return [
|
|
1777
|
-
h("limel-text-editor", { key: '
|
|
1777
|
+
h("limel-text-editor", { key: 'b866f4d7a1feabc9a7f04aa9333ec93a0dbb1c60', ref: (el) => (this.textEditor = el), tabindex: this.disabled ? -1 : 0, value: this.value, contentType: this.contentType, customElements: this.registeredCustomElements, "aria-disabled": this.disabled, language: this.language, triggers: this.registeredTriggers, onTriggerStart: this.handleTriggerStart, onTriggerStop: this.handleTriggerStop, onTriggerChange: this.handleTriggerChange, onImagePasted: this.handleImagePasted, onMetadataChange: this.handleMetadataChange, ui: this.ui, allowResize: this.allowResize, required: this.required, disabled: this.disabled, readonly: this.readonly, helperText: this.helperText, placeholder: this.placeholder, label: this.label, invalid: this.invalid }),
|
|
1778
1778
|
this.renderPicker(),
|
|
1779
1779
|
];
|
|
1780
1780
|
}
|
|
@@ -37,7 +37,7 @@ const TrendIndicator = /*@__PURE__*/ proxyCustomElement(class TrendIndicator ext
|
|
|
37
37
|
this.numValue = this.parseValue(this.value);
|
|
38
38
|
}
|
|
39
39
|
render() {
|
|
40
|
-
return (h(Host, { key: '
|
|
40
|
+
return (h(Host, { key: '3718dda17d853d44caaf253480ac0e05017c4696', class: this.getContainerClassList() }, h("limel-notched-outline", { key: '146e3aa3041ade932be6f13766703e2989c24660', id: this.tooltipId, label: this.label, labelId: this.labelId, invalid: this.invalid, required: this.required, hasValue: true, hasFloatingLabel: true, "aria-labelledby": this.labelId, "aria-describedby": this.helperTextId, "aria-controls": this.helperTextId }, h("div", { key: '57eb7eaf1e3a11ba69cf4ef4af9852541abd7902', slot: "content", tabIndex: 0 }, this.renderVisualization())), this.renderHelperLine(), this.renderTooltip()));
|
|
41
41
|
}
|
|
42
42
|
renderVisualization() {
|
|
43
43
|
if (this.reducePresence && (this.numValue === 0 || !this.hasValue())) {
|
|
@@ -148,7 +148,7 @@ const LimetypeField = /*@__PURE__*/ proxyCustomElement(class LimetypeField exten
|
|
|
148
148
|
value: '',
|
|
149
149
|
};
|
|
150
150
|
options.unshift(emptyOption);
|
|
151
|
-
return (h("limel-select", { key: '
|
|
151
|
+
return (h("limel-select", { key: 'ee9fdc46424c9e6dc5897260cb16bcbedd43413a', label: this.label, options: options, value: selectedOption, required: this.required, helperText: this.helperText, invalid: invalid, disabled: this.disabled || this.readonly, onChange: this.handleChange }));
|
|
152
152
|
}
|
|
153
153
|
componentWillRender() {
|
|
154
154
|
this.updatePropertyFields(this.value || '');
|
|
@@ -11,8 +11,8 @@ const LiveDocsInfo = /*@__PURE__*/ proxyCustomElement(class LiveDocsInfo extends
|
|
|
11
11
|
}
|
|
12
12
|
render() {
|
|
13
13
|
return [
|
|
14
|
-
h("div", { key: '
|
|
15
|
-
h("p", { key: '
|
|
14
|
+
h("div", { key: '719c7b607dc66882cb8cee2275dc670c9ad53b73', class: "header" }, h("limel-icon", { key: 'a50b72a8266bf58feba9e92a8da2061ecc4fe855', name: "not_showing_video_frames" }), h("h2", { key: 'fad26ca7f04886af8e63c4bfbcf736459ce49906' }, "Viewing this file type requires ", h("em", { key: 'f99708d544005e572f7efebe5b352017f69abdf9' }, "Live Docs"))),
|
|
15
|
+
h("p", { key: 'd8433cc57b251319bc2d34e115df2a1d7d617ae3' }, h("em", { key: '559862e1cb8631a3209eedd2e2354ab53ec74a96' }, "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: '367bccba15d2b591c267870bd7610cc86fe7fb5b', target: "_blank", href: "https://www.lime-technologies.com/en/lime-crm/live-docs/" }, "Learn more")),
|
|
16
16
|
];
|
|
17
17
|
}
|
|
18
18
|
static get style() { return LimebbLiveDocsInfoStyle0; }
|
|
@@ -58,7 +58,7 @@ const NotificationListItem = /*@__PURE__*/ proxyCustomElement(class Notification
|
|
|
58
58
|
}
|
|
59
59
|
render() {
|
|
60
60
|
var _a, _b;
|
|
61
|
-
return (h(Host, { key: '
|
|
61
|
+
return (h(Host, { key: '48b4679d731d3f42abbdd12935fef881b29f1638', id: this.item.id, class: {
|
|
62
62
|
'is-clickable': this.isItemClickable(),
|
|
63
63
|
'is-read': !!((_a = this.item) === null || _a === void 0 ? void 0 : _a.read),
|
|
64
64
|
'is-selected': !!((_b = this.item) === null || _b === void 0 ? void 0 : _b.selected),
|
|
@@ -40,9 +40,9 @@ const OrderByItemComponent = /*@__PURE__*/ proxyCustomElement(class OrderByItemC
|
|
|
40
40
|
render() {
|
|
41
41
|
const propertyPath = Object.keys(this.item)[0] || '';
|
|
42
42
|
const direction = this.item[propertyPath] || 'ASC';
|
|
43
|
-
return (h("div", { key: '
|
|
43
|
+
return (h("div", { key: '1587617d84be8905a858059ea966b7a9e0d6df78', class: "order-by-controls" }, h("div", { key: '8d4f47423c56cad20e91142f82a5726a7325233b', class: "property-path" }, h("limebb-property-selector", { key: '42c54528d2d2ee72e5b3f6ca4b31eb7bbcb9b325', platform: this.platform, context: this.context, limetype: this.limetype, label: "Property", value: propertyPath, required: true, onChange: this.handlePathChange })), h("div", { key: '1011a34f626c94608a926567e464d380faded349', class: "control-buttons" }, h("limel-icon-button", { key: '510a7c333397792a66f3e17a3501f2af96183db9', icon: direction === 'ASC'
|
|
44
44
|
? 'sort_ascending'
|
|
45
|
-
: 'sort_descending', label: direction === 'ASC' ? 'Ascending' : 'Descending', onClick: this.handleToggleDirection }), h("limel-icon-button", { key: '
|
|
45
|
+
: 'sort_descending', label: direction === 'ASC' ? 'Ascending' : 'Descending', onClick: this.handleToggleDirection }), h("limel-icon-button", { key: '5bc160b38c565e30cca03a88d6f2d181284cefdd', icon: "trash", label: "Remove", onClick: this.handleRemove }))));
|
|
46
46
|
}
|
|
47
47
|
static get style() { return LimebbLimeQueryOrderByItemStyle0; }
|
|
48
48
|
}, [1, "limebb-lime-query-order-by-item", {
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { proxyCustomElement, HTMLElement, createEvent, h } from '@stencil/core/internal/client';
|
|
2
|
-
import { d as defineCustomElement$2 } from './
|
|
3
|
-
import { d as defineCustomElement$1 } from './
|
|
2
|
+
import { d as defineCustomElement$2 } from './response-format-item.js';
|
|
3
|
+
import { d as defineCustomElement$1 } from './property-selector.js';
|
|
4
4
|
|
|
5
5
|
/**
|
|
6
6
|
* Process a single property value and add to items array
|
|
@@ -161,8 +161,8 @@ function itemsToPropertySelection(items) {
|
|
|
161
161
|
return result;
|
|
162
162
|
}
|
|
163
163
|
|
|
164
|
-
const responseFormatEditorCss = ":host(limebb-response-format-editor){display:block;width:100%}.response-format-editor{display:flex;flex-direction:column;gap:1rem;padding:1rem}.header{display:flex;justify-content:space-between;align-items:center;gap:1rem}.header h4{margin:0;font-size:1rem;font-weight:600;color:rgb(var(--contrast-1000))}.property-list{display:flex;flex-direction:column;gap:1rem;padding:0.5rem;border:1px solid rgb(var(--contrast-300));border-radius:0.25rem;background-color:rgb(var(--contrast-50));min-height:4rem}.property-item{padding:0.5rem;border-radius:0.25rem;transition:background-color 0.2s}.property-item:hover{background-color:rgb(var(--contrast-100))}.actions{display:flex;justify-content:flex-start}.summary{display:flex;justify-content:space-between;align-items:center;padding-top:0.5rem;border-top:1px solid rgb(var(--contrast-300))}.summary .count{font-size:0.875rem;font-weight:500;color:rgb(var(--contrast-900))}.empty-state{padding:2rem;text-align:center;color:rgb(var(--contrast-700));font-style:italic}.empty-state p{margin:0}";
|
|
165
|
-
const
|
|
164
|
+
const responseFormatEditorCss = ":host(limebb-lime-query-response-format-editor){display:block;width:100%}.response-format-editor{display:flex;flex-direction:column;gap:1rem;padding:1rem}.header{display:flex;justify-content:space-between;align-items:center;gap:1rem}.header h4{margin:0;font-size:1rem;font-weight:600;color:rgb(var(--contrast-1000))}.property-list{display:flex;flex-direction:column;gap:1rem;padding:0.5rem;border:1px solid rgb(var(--contrast-300));border-radius:0.25rem;background-color:rgb(var(--contrast-50));min-height:4rem}.property-item{padding:0.5rem;border-radius:0.25rem;transition:background-color 0.2s}.property-item:hover{background-color:rgb(var(--contrast-100))}.actions{display:flex;justify-content:flex-start}.summary{display:flex;justify-content:space-between;align-items:center;padding-top:0.5rem;border-top:1px solid rgb(var(--contrast-300))}.summary .count{font-size:0.875rem;font-weight:500;color:rgb(var(--contrast-900))}.empty-state{padding:2rem;text-align:center;color:rgb(var(--contrast-700));font-style:italic}.empty-state p{margin:0}";
|
|
165
|
+
const LimebbLimeQueryResponseFormatEditorStyle0 = responseFormatEditorCss;
|
|
166
166
|
|
|
167
167
|
const ResponseFormatEditor = /*@__PURE__*/ proxyCustomElement(class ResponseFormatEditor extends HTMLElement {
|
|
168
168
|
constructor() {
|
|
@@ -233,7 +233,7 @@ const ResponseFormatEditor = /*@__PURE__*/ proxyCustomElement(class ResponseForm
|
|
|
233
233
|
return (h("div", { class: "response-format-editor" }, h("div", { class: "header" }, h("h4", null, this.label)), h("div", { class: "property-list" }, this.items.map((item, index) => this.renderItem(item, index))), h("div", { class: "actions" }, h("limel-button", { label: "Add Property", icon: "plus_math", onClick: this.handleAddProperty })), h("div", { class: "summary" }, h("span", { class: "count" }, this.items.length, ' ', this.items.length === 1 ? 'property' : 'properties', ' ', "selected"))));
|
|
234
234
|
}
|
|
235
235
|
renderItem(item, index) {
|
|
236
|
-
return (h("limebb-response-format-item", { key: `${item.path}-${index}`, class: "property-item", platform: this.platform, context: this.context, limetype: this.limetype, item: item, onItemChange: this.handleItemChange(index) }));
|
|
236
|
+
return (h("limebb-lime-query-response-format-item", { key: `${item.path}-${index}`, class: "property-item", platform: this.platform, context: this.context, limetype: this.limetype, item: item, onItemChange: this.handleItemChange(index) }));
|
|
237
237
|
}
|
|
238
238
|
emitChange() {
|
|
239
239
|
const propertySelection = itemsToPropertySelection(this.items);
|
|
@@ -242,8 +242,8 @@ const ResponseFormatEditor = /*@__PURE__*/ proxyCustomElement(class ResponseForm
|
|
|
242
242
|
};
|
|
243
243
|
this.change.emit(responseFormat);
|
|
244
244
|
}
|
|
245
|
-
static get style() { return
|
|
246
|
-
}, [1, "limebb-response-format-editor", {
|
|
245
|
+
static get style() { return LimebbLimeQueryResponseFormatEditorStyle0; }
|
|
246
|
+
}, [1, "limebb-lime-query-response-format-editor", {
|
|
247
247
|
"platform": [16],
|
|
248
248
|
"context": [16],
|
|
249
249
|
"limetype": [1],
|
|
@@ -255,19 +255,19 @@ function defineCustomElement() {
|
|
|
255
255
|
if (typeof customElements === "undefined") {
|
|
256
256
|
return;
|
|
257
257
|
}
|
|
258
|
-
const components = ["limebb-response-format-editor", "limebb-
|
|
258
|
+
const components = ["limebb-lime-query-response-format-editor", "limebb-lime-query-response-format-item", "limebb-property-selector"];
|
|
259
259
|
components.forEach(tagName => { switch (tagName) {
|
|
260
|
-
case "limebb-response-format-editor":
|
|
260
|
+
case "limebb-lime-query-response-format-editor":
|
|
261
261
|
if (!customElements.get(tagName)) {
|
|
262
262
|
customElements.define(tagName, ResponseFormatEditor);
|
|
263
263
|
}
|
|
264
264
|
break;
|
|
265
|
-
case "limebb-
|
|
265
|
+
case "limebb-lime-query-response-format-item":
|
|
266
266
|
if (!customElements.get(tagName)) {
|
|
267
267
|
defineCustomElement$2();
|
|
268
268
|
}
|
|
269
269
|
break;
|
|
270
|
-
case "limebb-
|
|
270
|
+
case "limebb-property-selector":
|
|
271
271
|
if (!customElements.get(tagName)) {
|
|
272
272
|
defineCustomElement$1();
|
|
273
273
|
}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { proxyCustomElement, HTMLElement, createEvent, h } from '@stencil/core/internal/client';
|
|
2
2
|
import { d as defineCustomElement$1 } from './property-selector.js';
|
|
3
3
|
|
|
4
|
-
const responseFormatItemCss = ":host(limebb-response-format-item){display:flex;flex-direction:column;gap:0.5rem;width:100%}.property-controls{display:flex;flex-direction:row;align-items:flex-start;gap:0.5rem;width:100%}.property-path{flex-grow:1;min-width:min(20rem, 100%)}.control-buttons{flex-shrink:0;display:flex;flex-direction:row;gap:0.25rem;align-items:center;padding-top:0.5rem}.control-buttons limel-icon-button{opacity:0.6;transition:opacity 0.2s ease}.control-buttons limel-icon-button:hover{opacity:1}.control-buttons limel-icon-button.has-value{opacity:1;color:rgb(var(--color-blue-default))}.alias,.description{padding-left:1.5rem;width:calc(100% - 1.5rem);max-width:40rem}@media (max-width: 768px){.property-controls{flex-direction:column;gap:0.5rem}.control-buttons{padding-top:0}.alias,.description{padding-left:0;width:100%}}";
|
|
5
|
-
const
|
|
4
|
+
const responseFormatItemCss = ":host(limebb-lime-query-response-format-item){display:flex;flex-direction:column;gap:0.5rem;width:100%}.property-controls{display:flex;flex-direction:row;align-items:flex-start;gap:0.5rem;width:100%}.property-path{flex-grow:1;min-width:min(20rem, 100%)}.control-buttons{flex-shrink:0;display:flex;flex-direction:row;gap:0.25rem;align-items:center;padding-top:0.5rem}.control-buttons limel-icon-button{opacity:0.6;transition:opacity 0.2s ease}.control-buttons limel-icon-button:hover{opacity:1}.control-buttons limel-icon-button.has-value{opacity:1;color:rgb(var(--color-blue-default))}.alias,.description{padding-left:1.5rem;width:calc(100% - 1.5rem);max-width:40rem}@media (max-width: 768px){.property-controls{flex-direction:column;gap:0.5rem}.control-buttons{padding-top:0}.alias,.description{padding-left:0;width:100%}}";
|
|
5
|
+
const LimebbLimeQueryResponseFormatItemStyle0 = responseFormatItemCss;
|
|
6
6
|
|
|
7
7
|
const ResponseFormatItem = /*@__PURE__*/ proxyCustomElement(class ResponseFormatItem extends HTMLElement {
|
|
8
8
|
constructor() {
|
|
@@ -68,13 +68,13 @@ const ResponseFormatItem = /*@__PURE__*/ proxyCustomElement(class ResponseFormat
|
|
|
68
68
|
}
|
|
69
69
|
render() {
|
|
70
70
|
return [
|
|
71
|
-
h("div", { key: '
|
|
72
|
-
this.showAliasInput && (h("div", { key: '
|
|
73
|
-
this.showDescriptionInput && (h("div", { key: '
|
|
71
|
+
h("div", { key: 'e804c4feb61b44aeb2f141c5b5d3269a76ac9320', class: "property-controls" }, h("div", { key: 'becbf35e823b8b16df5366c099b98ce6566d514a', class: "property-path" }, h("limebb-property-selector", { key: '2b35ccefecb9dbd4d2c418566482d9903a1c0d02', platform: this.platform, context: this.context, limetype: this.limetype, label: "Property", value: this.item.path, required: true, onChange: this.handlePathChange })), h("div", { key: '1e598bbbb6df1c5e93bd4ae5f6b112a745a68df9', class: "control-buttons" }, h("limel-icon-button", { key: 'da7ec3bf553900c96149f2d762c2d40ab97d2fbd', icon: "add_tag", label: "Add alias", class: this.item.alias ? 'has-value' : '', onClick: this.toggleAliasInput }), h("limel-icon-button", { key: '3936855dd72388fc581770f561be809b4ebc0267', icon: "comments", label: "Add description", class: this.item.description ? 'has-value' : '', onClick: this.toggleDescriptionInput }), h("limel-icon-button", { key: '221a2f7399c7c781a583bc344c273f03ae181efb', icon: "trash", label: "Remove property", onClick: this.handleRemove }))),
|
|
72
|
+
this.showAliasInput && (h("div", { key: 'ddd9a21a4a83a3e8fd7d41b13c293746cf5467ae', class: "alias" }, h("limel-input-field", { key: '1c2ec668aa6d864897a57f8aebaf8b60012addb5', label: "Alias", value: this.item.alias || '', placeholder: "Custom property name...", onChange: this.handleAliasChange, onBlur: this.handleAliasBlur }))),
|
|
73
|
+
this.showDescriptionInput && (h("div", { key: 'e989a6293fb50b760e6e7e46a650f27cd44722ba', class: "description" }, h("limel-input-field", { key: '201e61a233a14d832fe450322e782d947ff7187a', label: "Description", value: this.item.description || '', placeholder: "Describe this property for AI...", onChange: this.handleDescriptionChange, onBlur: this.handleDescriptionBlur }))),
|
|
74
74
|
];
|
|
75
75
|
}
|
|
76
|
-
static get style() { return
|
|
77
|
-
}, [1, "limebb-response-format-item", {
|
|
76
|
+
static get style() { return LimebbLimeQueryResponseFormatItemStyle0; }
|
|
77
|
+
}, [1, "limebb-lime-query-response-format-item", {
|
|
78
78
|
"platform": [16],
|
|
79
79
|
"context": [16],
|
|
80
80
|
"limetype": [1],
|
|
@@ -86,9 +86,9 @@ function defineCustomElement() {
|
|
|
86
86
|
if (typeof customElements === "undefined") {
|
|
87
87
|
return;
|
|
88
88
|
}
|
|
89
|
-
const components = ["limebb-response-format-item", "limebb-property-selector"];
|
|
89
|
+
const components = ["limebb-lime-query-response-format-item", "limebb-property-selector"];
|
|
90
90
|
components.forEach(tagName => { switch (tagName) {
|
|
91
|
-
case "limebb-response-format-item":
|
|
91
|
+
case "limebb-lime-query-response-format-item":
|
|
92
92
|
if (!customElements.get(tagName)) {
|
|
93
93
|
customElements.define(tagName, ResponseFormatItem);
|
|
94
94
|
}
|
|
@@ -72,14 +72,14 @@ const SummaryPopover = /*@__PURE__*/ proxyCustomElement(class SummaryPopover ext
|
|
|
72
72
|
top: '0.125rem',
|
|
73
73
|
right: '0.125rem',
|
|
74
74
|
};
|
|
75
|
-
return (h("limel-popover", { key: '
|
|
75
|
+
return (h("limel-popover", { key: '0d6f2ed3dddd353ee8228b84337e2924fc652088', style: {
|
|
76
76
|
'--limebb-summary-popover-timeout': `${this.triggerDelay}ms`,
|
|
77
|
-
}, open: this.isPopoverOpen, onClose: this.onPopoverClose, openDirection: this.openDirection }, h("div", { key: '
|
|
77
|
+
}, open: this.isPopoverOpen, onClose: this.onPopoverClose, openDirection: this.openDirection }, h("div", { key: 'f644db3e5d485ace1a2748b4000aca49f3948a35', slot: "trigger", tabIndex: 0, onMouseEnter: this.openPopoverWithDelay, onMouseLeave: this.resetTimeout, onFocus: this.openPopoverWithDelay }, h("slot", { key: '0b5836a870f32b220496c0ddc0abc35a01dc86d8', name: "trigger" }), h("div", { key: '2ffe89c63ef52df0047e6329a21c460faa628c34', class: "opening-countdown-indicator" })), h("limel-card", { key: '786fc57e1de0a6a7e62f6dd844386e9c92045539', style: {
|
|
78
78
|
'max-width': this.popoverMaxWidth,
|
|
79
79
|
'max-height': this.popoverMaxHeight,
|
|
80
80
|
'min-width': '7rem',
|
|
81
81
|
'min-height': '3rem',
|
|
82
|
-
}, orientation: "landscape", heading: this.heading, subheading: this.subheading, icon: this.icon, value: this.value, image: this.image, actions: this.actions, onActionSelected: this.handleSelected }, h("limebb-navigation-button", { key: '
|
|
82
|
+
}, orientation: "landscape", heading: this.heading, subheading: this.subheading, icon: this.icon, value: this.value, image: this.image, actions: this.actions, onActionSelected: this.handleSelected }, h("limebb-navigation-button", { key: '3aae488dfb00e682400e2f169f98125db9eccd01', slot: "component", type: "close", style: closeButtonStyle, tooltipLabel: "Close", tooltipHelperLabel: "Esc", onClick: this.handleCloseClick }))));
|
|
83
83
|
}
|
|
84
84
|
static get style() { return LimebbSummaryPopoverStyle0; }
|
|
85
85
|
}, [1, "limebb-summary-popover", {
|