@halix/action-sdk 1.0.21 → 1.0.23

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.
@@ -1,4 +1,5 @@
1
1
  import { Observable } from 'rxjs';
2
+ import { FilterExpression } from './filter-expressions';
2
3
  /**
3
4
  * SortField is an interface for specifying sort fields.
4
5
  */
@@ -22,23 +23,14 @@ export interface DataSortField {
22
23
  descending?: boolean;
23
24
  }
24
25
  /**
25
- * ListDataRequest is an interface defining the properties of a list data request.
26
- * This request is used to retrieve list data from the Halix platform.
26
+ * BaseListDataRequest defines the core properties for list data requests.
27
+ * This is used to define the scope and filtering of records without pagination.
27
28
  */
28
- export interface ListDataRequest {
29
+ export interface BaseListDataRequest {
29
30
  /**
30
31
  * The ID of the root data element to retrieve.
31
32
  */
32
33
  dataElementId: string;
33
- /**
34
- * The 1-based page number to retrieve. Works with pageSize.
35
- * Alternatively, you can use traditional offset/limit pagination.
36
- */
37
- pageNumber?: number;
38
- /**
39
- * The number of records per page. Works with pageNumber.
40
- */
41
- pageSize?: number;
42
34
  /**
43
35
  * Sort configuration - list of sort fields in priority order.
44
36
  * Each field can include relationship paths (e.g., "customer.lastName").
@@ -68,9 +60,9 @@ export interface ListDataRequest {
68
60
  childKeysField?: string;
69
61
  /**
70
62
  * Filter expression to limit results. Evaluated within the parent key scope.
71
- * Uses `dataexpr` format.
63
+ * @see {@link FilterExpression} for filter syntax and examples
72
64
  */
73
- filter?: string;
65
+ filter?: FilterExpression;
74
66
  /**
75
67
  * List of fields being displayed on the list. Only these fields are populated in
76
68
  * returned objects to reduce payload size. If fields include relationship paths,
@@ -82,6 +74,20 @@ export interface ListDataRequest {
82
74
  */
83
75
  additionalFieldsToFetch?: string[];
84
76
  }
77
+ /**
78
+ * PagedListDataRequest extends BaseListDataRequest with pagination properties.
79
+ * This is used for paginated list data retrieval.
80
+ */
81
+ export interface PagedListDataRequest extends BaseListDataRequest {
82
+ /**
83
+ * The 1-based page number to retrieve. Works with pageSize.
84
+ */
85
+ pageNumber?: number;
86
+ /**
87
+ * The number of records per page. Works with pageNumber.
88
+ */
89
+ pageSize?: number;
90
+ }
85
91
  /**
86
92
  * ListDataResponse wraps a data provider response to a list data request.
87
93
  */
@@ -127,6 +133,73 @@ export interface ListDataOptions {
127
133
  */
128
134
  search?: ListDataSearchOptions;
129
135
  }
136
+ /**
137
+ * MassEditValueType specifies how the value should be interpreted for mass edit operations.
138
+ * - 'literal': The value is a literal value to set
139
+ * - 'property': The value is a property ID to copy from
140
+ */
141
+ export type MassEditValueType = 'literal' | 'property';
142
+ /**
143
+ * MassEditRequest defines a request to update multiple records at once.
144
+ *
145
+ * The keys array must contain object keys that are a subset of the records covered by
146
+ * the dataRequest. The dataRequest serves as a security scoping mechanism - only records
147
+ * that would be returned by the dataRequest (ignoring pagination) can be updated. This
148
+ * ensures efficient security checks without requiring individual permission checks per record.
149
+ */
150
+ export interface MassEditRequest {
151
+ /**
152
+ * Array of object keys to update. Must be a subset of records covered by dataRequest.
153
+ */
154
+ keys: string[];
155
+ /**
156
+ * List data request defining the security scope of records that can be updated.
157
+ * Pagination fields (pageNumber, pageSize) are ignored.
158
+ */
159
+ dataRequest: BaseListDataRequest;
160
+ /** The data element ID of the objects to update */
161
+ dataElementId: string;
162
+ /** The property/attribute ID to update */
163
+ property: string;
164
+ /** How to interpret the value ('literal' or 'property') */
165
+ valueType: MassEditValueType;
166
+ /** The value to set (interpretation depends on valueType) */
167
+ value?: any;
168
+ }
169
+ /**
170
+ * MassDeleteRequest defines a request to delete multiple records at once.
171
+ *
172
+ * The keys array must contain object keys that are a subset of the records covered by
173
+ * the dataRequest. The dataRequest serves as a security scoping mechanism - only records
174
+ * that would be returned by the dataRequest (ignoring pagination) can be deleted. This
175
+ * ensures efficient security checks without requiring individual permission checks per record.
176
+ */
177
+ export interface MassDeleteRequest {
178
+ /**
179
+ * Array of object keys to delete. Must be a subset of records covered by dataRequest.
180
+ */
181
+ keys: string[];
182
+ /**
183
+ * List data request defining the security scope of records that can be deleted.
184
+ * Pagination fields are not applicable.
185
+ */
186
+ dataRequest: BaseListDataRequest;
187
+ /** The data element ID of the objects to delete */
188
+ dataElementId: string;
189
+ /** If true, delete all objects returned by dataRequest (ignores keys) */
190
+ emptyList?: boolean;
191
+ }
192
+ /**
193
+ * MassChangeResponse contains the results of a mass edit or mass delete operation.
194
+ */
195
+ export interface MassChangeResponse {
196
+ /** Number of records attempted */
197
+ tried: number;
198
+ /** Number of records successfully updated/deleted */
199
+ succeeded: number;
200
+ /** Number of records that failed */
201
+ failed: number;
202
+ }
130
203
  /**
131
204
  * getListData retrieves list data from the Halix platform. This function can operate in four
132
205
  * different modes based on the provided options:
@@ -184,7 +257,7 @@ export interface ListDataOptions {
184
257
  * });
185
258
  * console.log('Selected row index:', searchData.selectedRow);
186
259
  */
187
- export declare function getListData(request: ListDataRequest, options?: ListDataOptions): Promise<ListDataResponse>;
260
+ export declare function getListData(request: PagedListDataRequest, options?: ListDataOptions): Promise<ListDataResponse>;
188
261
  /**
189
262
  * getListDataAsObservable retrieves list data from the Halix platform as an Observable. This
190
263
  * function operates in the same four modes as getListData.
@@ -208,5 +281,145 @@ export declare function getListData(request: ListDataRequest, options?: ListData
208
281
  * console.log('Data:', response.data);
209
282
  * });
210
283
  */
211
- export declare function getListDataAsObservable(request: ListDataRequest, options?: ListDataOptions): Observable<ListDataResponse>;
284
+ export declare function getListDataAsObservable(request: PagedListDataRequest, options?: ListDataOptions): Observable<ListDataResponse>;
285
+ /**
286
+ * massEdit performs a bulk update operation on multiple records. This function allows you to
287
+ * update a specific property on multiple objects in a single request.
288
+ *
289
+ * **Security Scoping**: The dataRequest serves as a security boundary. Only records that would
290
+ * be returned by the dataRequest can be updated. The keys array must reference records within
291
+ * this scope. This allows efficient security validation without checking each record individually.
292
+ *
293
+ * The value can be set in two ways based on valueType:
294
+ * - 'literal': Set the property to a literal value
295
+ * - 'property': Copy the value from another property on the same object
296
+ *
297
+ * @param request - The mass edit request specifying what to update and how
298
+ *
299
+ * @returns Promise resolving to statistics about the operation
300
+ *
301
+ * @example
302
+ * // Update the status of multiple orders to 'shipped'
303
+ * const result = await massEdit({
304
+ * keys: ['order-123', 'order-456', 'order-789'],
305
+ * dataRequest: {
306
+ * dataElementId: 'order',
307
+ * parentDataElementId: 'company',
308
+ * parentKey: orgProxyKey
309
+ * },
310
+ * dataElementId: 'order',
311
+ * property: 'status',
312
+ * valueType: 'literal',
313
+ * value: 'shipped'
314
+ * });
315
+ * console.log(`Updated ${result.succeeded} of ${result.tried} orders`);
316
+ *
317
+ * @example
318
+ * // Copy shipping address to billing address for multiple customers
319
+ * const result = await massEdit({
320
+ * keys: selectedCustomerKeys,
321
+ * dataRequest: {
322
+ * dataElementId: 'customer',
323
+ * parentDataElementId: 'company',
324
+ * parentKey: orgProxyKey
325
+ * },
326
+ * dataElementId: 'customer',
327
+ * property: 'billingAddress',
328
+ * valueType: 'property',
329
+ * value: 'shippingAddress'
330
+ * });
331
+ */
332
+ export declare function massEdit(request: MassEditRequest): Promise<MassChangeResponse>;
333
+ /**
334
+ * massEditAsObservable performs a bulk update operation on multiple records, returning an Observable.
335
+ * See massEdit for detailed documentation.
336
+ *
337
+ * @param request - The mass edit request specifying what to update and how
338
+ *
339
+ * @returns Observable resolving to statistics about the operation
340
+ *
341
+ * @example
342
+ * massEditAsObservable({
343
+ * keys: ['order-123', 'order-456'],
344
+ * dataRequest: {
345
+ * dataElementId: 'order',
346
+ * parentDataElementId: 'company',
347
+ * parentKey: orgProxyKey
348
+ * },
349
+ * dataElementId: 'order',
350
+ * property: 'status',
351
+ * valueType: 'literal',
352
+ * value: 'shipped'
353
+ * }).subscribe(result => {
354
+ * console.log(`Updated ${result.succeeded} of ${result.tried} orders`);
355
+ * });
356
+ */
357
+ export declare function massEditAsObservable(request: MassEditRequest): Observable<MassChangeResponse>;
358
+ /**
359
+ * massDelete performs a bulk delete operation on multiple records. This function allows you to
360
+ * soft-delete multiple objects in a single request.
361
+ *
362
+ * **Security Scoping**: The dataRequest serves as a security boundary. Only records that would
363
+ * be returned by the dataRequest can be deleted. The keys array must reference records within
364
+ * this scope. This allows efficient security validation without checking each record individually.
365
+ *
366
+ * If emptyList is set to true, all records returned by the dataRequest will be deleted,
367
+ * ignoring the keys array.
368
+ *
369
+ * @param request - The mass delete request specifying what to delete
370
+ *
371
+ * @returns Promise resolving to statistics about the operation
372
+ *
373
+ * @example
374
+ * // Delete specific orders
375
+ * const result = await massDelete({
376
+ * keys: ['order-123', 'order-456', 'order-789'],
377
+ * dataRequest: {
378
+ * dataElementId: 'order',
379
+ * parentDataElementId: 'company',
380
+ * parentKey: orgProxyKey,
381
+ * filter: { field: 'status', operator: '==', value: 'cancelled' }
382
+ * },
383
+ * dataElementId: 'order'
384
+ * });
385
+ * console.log(`Deleted ${result.succeeded} of ${result.tried} orders`);
386
+ *
387
+ * @example
388
+ * // Delete all records matching the filter
389
+ * const result = await massDelete({
390
+ * keys: [],
391
+ * dataRequest: {
392
+ * dataElementId: 'tempRecord',
393
+ * parentDataElementId: 'company',
394
+ * parentKey: orgProxyKey,
395
+ * filter: { field: 'createdDate', operator: '<', value: '2023-01-01' }
396
+ * },
397
+ * dataElementId: 'tempRecord',
398
+ * emptyList: true
399
+ * });
400
+ * console.log(`Deleted ${result.succeeded} old records`);
401
+ */
402
+ export declare function massDelete(request: MassDeleteRequest): Promise<MassChangeResponse>;
403
+ /**
404
+ * massDeleteAsObservable performs a bulk delete operation on multiple records, returning an Observable.
405
+ * See massDelete for detailed documentation.
406
+ *
407
+ * @param request - The mass delete request specifying what to delete
408
+ *
409
+ * @returns Observable resolving to statistics about the operation
410
+ *
411
+ * @example
412
+ * massDeleteAsObservable({
413
+ * keys: ['order-123', 'order-456'],
414
+ * dataRequest: {
415
+ * dataElementId: 'order',
416
+ * parentDataElementId: 'company',
417
+ * parentKey: orgProxyKey
418
+ * },
419
+ * dataElementId: 'order'
420
+ * }).subscribe(result => {
421
+ * console.log(`Deleted ${result.succeeded} of ${result.tried} orders`);
422
+ * });
423
+ */
424
+ export declare function massDeleteAsObservable(request: MassDeleteRequest): Observable<MassChangeResponse>;
212
425
  //# sourceMappingURL=lists.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"lists.d.ts","sourceRoot":"","sources":["../../../src/lists.ts"],"names":[],"mappings":"AAwBA,OAAO,EAAQ,UAAU,EAAiB,MAAM,MAAM,CAAC;AAOvD;;GAEG;AACH,MAAM,WAAW,SAAS;IACtB,kCAAkC;IAClC,WAAW,EAAE,MAAM,CAAC;IACpB,0CAA0C;IAC1C,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,qDAAqD;IACrD,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,qCAAqC;IACrC,YAAY,CAAC,EAAE,OAAO,CAAC;CAC1B;AAED;;GAEG;AACH,MAAM,WAAW,aAAa;IAC1B,8GAA8G;IAC9G,WAAW,EAAE,MAAM,CAAC;IACpB,qFAAqF;IACrF,UAAU,CAAC,EAAE,OAAO,CAAC;CACxB;AAED;;;GAGG;AACH,MAAM,WAAW,eAAe;IAC5B;;OAEG;IACH,aAAa,EAAE,MAAM,CAAC;IAEtB;;;OAGG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB;;;OAGG;IACH,IAAI,CAAC,EAAE,aAAa,EAAE,CAAC;IAEvB;;;;;OAKG;IACH,mBAAmB,EAAE,MAAM,CAAC;IAE5B;;;OAGG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB;;;OAGG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;IAExB;;;OAGG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;IAExB;;;OAGG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB;;;;OAIG;IACH,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;IAEzB;;OAEG;IACH,uBAAuB,CAAC,EAAE,MAAM,EAAE,CAAC;CACtC;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC7B;;;OAGG;IACH,IAAI,EAAE,GAAG,EAAE,CAAC;IAEZ,mDAAmD;IACnD,KAAK,EAAE,MAAM,CAAC;IAEd;;;OAGG;IACH,WAAW,EAAE,MAAM,CAAC;IAEpB,wDAAwD;IACxD,UAAU,EAAE,MAAM,CAAC;CACtB;AAED;;GAEG;AACH,MAAM,WAAW,qBAAqB;IAClC,oCAAoC;IACpC,WAAW,EAAE,MAAM,CAAC;IACpB,8BAA8B;IAC9B,KAAK,EAAE,MAAM,CAAC;IACd,4CAA4C;IAC5C,KAAK,EAAE,MAAM,CAAC;CACjB;AAED;;GAEG;AACH,MAAM,WAAW,eAAe;IAC5B,yEAAyE;IACzE,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,gEAAgE;IAChE,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB;;;;OAIG;IACH,MAAM,CAAC,EAAE,qBAAqB,CAAC;CAClC;AAMD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAwDG;AACH,wBAAsB,WAAW,CAAC,OAAO,EAAE,eAAe,EAAE,OAAO,CAAC,EAAE,eAAe,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAkDhH;AAED;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,eAAe,EAAE,OAAO,CAAC,EAAE,eAAe,GAAG,UAAU,CAAC,gBAAgB,CAAC,CAEzH"}
1
+ {"version":3,"file":"lists.d.ts","sourceRoot":"","sources":["../../../src/lists.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,110 @@
1
+ import { Observable } from 'rxjs';
2
+ /**
3
+ * MessageMethod represents the delivery method for a message.
4
+ */
5
+ export declare enum MessageMethod {
6
+ /** Send as email */
7
+ Email = "email",
8
+ /** Send as text/SMS */
9
+ Text = "text",
10
+ /** Send as both email and text */
11
+ EmailAndText = "email,text"
12
+ }
13
+ /**
14
+ * MessageRequest represents the structure for sending a message through the notification service.
15
+ *
16
+ * Messages can be sent to:
17
+ * - **userProxyKeys**: The email address/phone number on file for each user proxy will be used
18
+ * - **directEmailAddresses**: Emails sent directly to the specified addresses
19
+ * - **Both**: You can combine both types of recipients
20
+ *
21
+ * At least one of userProxyKeys or directEmailAddresses must be provided.
22
+ */
23
+ export interface MessageRequest {
24
+ /** Subject line for email messages */
25
+ subject: string;
26
+ /** HTML body content of the message */
27
+ body: string;
28
+ /** Array of user proxy keys to send the message to (email addresses/phone numbers on file will be used) */
29
+ userProxyKeys?: string[];
30
+ /** Array of email addresses to send directly to */
31
+ directEmailAddresses?: string[];
32
+ /** The delivery method for the message (defaults to email if not provided) */
33
+ sentAs?: MessageMethod | string;
34
+ /** Email address to use for replies (optional) */
35
+ replyToEmail?: string;
36
+ /** Array of content resource keys to attach to the message (optional) */
37
+ resourceKeys?: string[];
38
+ }
39
+ /**
40
+ * sendMessage sends a message (email and/or text) to recipients through the Halix notification
41
+ * service. The message is sent asynchronously - this function returns immediately after the
42
+ * message is queued for sending.
43
+ *
44
+ * @param orgProxyElementId - The ID of the organization proxy element (e.g., "business", "school")
45
+ * @param orgProxyKey - The key of the organization proxy object
46
+ * @param message - The message request object containing recipients, content, and delivery options
47
+ *
48
+ * @returns Promise that resolves when the message has been queued for sending
49
+ *
50
+ * @example
51
+ * ```typescript
52
+ * // Send an email to customers (sentAs defaults to email)
53
+ * await sendMessage('business', businessKey, {
54
+ * userProxyKeys: [customerKey1, customerKey2, customerKey3],
55
+ * subject: 'Important Announcement',
56
+ * body: '<p>This is an important announcement.</p>',
57
+ * replyToEmail: 'sender@example.com'
58
+ * });
59
+ * ```
60
+ *
61
+ * @example
62
+ * ```typescript
63
+ * // Send to user proxies and direct email addresses
64
+ * await sendMessage('business', businessKey, {
65
+ * userProxyKeys: [clientKey1, clientKey2],
66
+ * directEmailAddresses: ['manager@example.com'],
67
+ * sentAs: MessageMethod.EmailAndText,
68
+ * subject: 'Project Reminder',
69
+ * body: '<p>Don\'t forget about the deadline.</p>',
70
+ * resourceKeys: [attachmentKey]
71
+ * });
72
+ * ```
73
+ *
74
+ * @example
75
+ * ```typescript
76
+ * // Send email to direct addresses only (no user proxies)
77
+ * await sendMessage('business', businessKey, {
78
+ * directEmailAddresses: ['partner@example.com', 'vendor@example.com'],
79
+ * subject: 'External Notification',
80
+ * body: '<p>Important information for external stakeholders.</p>'
81
+ * });
82
+ * ```
83
+ */
84
+ export declare function sendMessage(orgProxyElementId: string, orgProxyKey: string, message: MessageRequest): Promise<void>;
85
+ /**
86
+ * sendMessageAsObservable sends a message (email and/or text) to recipients through the Halix
87
+ * notification service. The message is sent asynchronously - this observable completes immediately
88
+ * after the message is queued for sending.
89
+ *
90
+ * @param orgProxyElementId - The ID of the organization proxy element (e.g., "business", "school")
91
+ * @param orgProxyKey - The key of the organization proxy object
92
+ * @param message - The message request object containing recipients, content, and delivery options
93
+ *
94
+ * @returns Observable that completes when the message has been queued for sending
95
+ *
96
+ * @example
97
+ * ```typescript
98
+ * sendMessageAsObservable('business', businessKey, {
99
+ * userProxyKeys: [customerKey1, customerKey2],
100
+ * directEmailAddresses: ['admin@example.com'],
101
+ * subject: 'Monthly Newsletter',
102
+ * body: '<p>Newsletter content here...</p>'
103
+ * }).subscribe({
104
+ * next: () => console.log('Message queued for sending'),
105
+ * error: (err) => console.error('Failed to send message:', err)
106
+ * });
107
+ * ```
108
+ */
109
+ export declare function sendMessageAsObservable(orgProxyElementId: string, orgProxyKey: string, message: MessageRequest): Observable<void>;
110
+ //# sourceMappingURL=messaging.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"messaging.d.ts","sourceRoot":"","sources":["../../../src/messaging.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAQ,UAAU,EAAiB,MAAM,MAAM,CAAC;AAOvD;;GAEG;AACH,oBAAY,aAAa;IACrB,oBAAoB;IACpB,KAAK,UAAU;IACf,uBAAuB;IACvB,IAAI,SAAS;IACb,kCAAkC;IAClC,YAAY,eAAe;CAC9B;AAMD;;;;;;;;;GASG;AACH,MAAM,WAAW,cAAc;IAC3B,sCAAsC;IACtC,OAAO,EAAE,MAAM,CAAC;IAChB,uCAAuC;IACvC,IAAI,EAAE,MAAM,CAAC;IACb,2GAA2G;IAC3G,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;IACzB,mDAAmD;IACnD,oBAAoB,CAAC,EAAE,MAAM,EAAE,CAAC;IAChC,8EAA8E;IAC9E,MAAM,CAAC,EAAE,aAAa,GAAG,MAAM,CAAC;IAChC,kDAAkD;IAClD,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,yEAAyE;IACzE,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;CAC3B;AAqCD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4CG;AACH,wBAAsB,WAAW,CAAC,iBAAiB,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC,CA+BxH;AAED;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,wBAAgB,uBAAuB,CAAC,iBAAiB,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,cAAc,GAAG,UAAU,CAAC,IAAI,CAAC,CAEjI"}
@@ -86,6 +86,8 @@ export function getObjectAsObservable(dataElementId, key, fetchedRelationships)
86
86
  * objects will include the specified related objects as nested objects
87
87
  *
88
88
  * @returns Promise resolving to an array of objects
89
+ *
90
+ * @see {@link FilterExpression} for filter syntax and examples
89
91
  */
90
92
  export async function getRelatedObjects(parentElementId, parentKey, elementId, filter, fetchedRelationships) {
91
93
  let params;
@@ -130,6 +132,8 @@ export async function getRelatedObjects(parentElementId, parentKey, elementId, f
130
132
  * objects will include the specified related objects as nested objects
131
133
  *
132
134
  * @returns Observable resolving to an array of objects
135
+ *
136
+ * @see {@link FilterExpression} for filter syntax and examples
133
137
  */
134
138
  export function getRelatedObjectsAsObservable(parentElementId, parentKey, elementId, filter, fetchedRelationships) {
135
139
  return from(getRelatedObjects(parentElementId, parentKey, elementId, filter, fetchedRelationships));
@@ -1 +1 @@
1
- {"version":3,"file":"data-crud.js","sourceRoot":"","sources":["../../src/data-crud.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"data-crud.js","sourceRoot":"","sources":["../../src/data-crud.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,10 @@
1
+ // Halix SDK License v1.0
2
+ // Copyright (c) 2025 halix.io LLC.
3
+ //
4
+ // This source code is licensed for use **only** within applications
5
+ // running on the Halix platform, in accordance with Halix SDK guidelines.
6
+ //
7
+ // Unauthorized use outside the Halix platform is prohibited.
8
+ // Full license terms available in the LICENSE file.
9
+ export {};
10
+ //# sourceMappingURL=filter-expressions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"filter-expressions.js","sourceRoot":"","sources":["../../src/filter-expressions.ts"],"names":[],"mappings":"AAAA,yBAAyB;AACzB,mCAAmC;AACnC,EAAE;AACF,oEAAoE;AACpE,0EAA0E;AAC1E,EAAE;AACF,6DAA6D;AAC7D,oDAAoD"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,yBAAyB;AACzB,mCAAmC;AACnC,EAAE;AACF,oEAAoE;AACpE,0EAA0E;AAC1E,EAAE;AACF,6DAA6D;AAC7D,oDAAoD;AAEpD;;;;GAIG;AAEH,mFAAmF;AACnF,sDAAsD;AACtD,mFAAmF;AAEnF,OAAO;AACH,UAAU;AACV,YAAY,EACZ,UAAU,EACV,cAAc,EACd,aAAa,EACb,WAAW,EACX,MAAM,EACN,OAAO;AAEP,iBAAiB;AACjB,UAAU;AAkBV,mBAAmB;AACnB,sBAAsB,EACtB,oBAAoB,EACvB,MAAM,eAAe,CAAC;AAEvB,mFAAmF;AACnF,sBAAsB;AACtB,mFAAmF;AAEnF,OAAO;AAIH,iBAAiB;AACjB,SAAS,EACT,qBAAqB,EACrB,iBAAiB,EACjB,6BAA6B;AAE7B,YAAY;AACZ,iBAAiB,EACjB,6BAA6B;AAE7B,cAAc;AACd,mBAAmB,EACnB,+BAA+B,EAC/B,oBAAoB,EACpB,gCAAgC,EACnC,MAAM,aAAa,CAAC;AAErB,mFAAmF;AACnF,oBAAoB;AACpB,mFAAmF;AAEnF,OAAO;AAIH,oBAAoB;AACpB,mBAAmB,EACnB,+BAA+B,EAC/B,YAAY,EACZ,wBAAwB,EACxB,gBAAgB,EAChB,4BAA4B,EAC5B,sBAAsB,EACtB,kCAAkC,EACrC,MAAM,WAAW,CAAC;AAEnB,mFAAmF;AACnF,sBAAsB;AACtB,mFAAmF;AAEnF,OAAO;AASH,YAAY;AACZ,WAAW,EACX,uBAAuB,EAC1B,MAAM,SAAS,CAAC;AAEjB,mFAAmF;AACnF,oBAAoB;AACpB,mFAAmF;AAEnF,OAAO,EACH,eAAe,EACf,aAAa,EACb,kBAAkB,EAClB,UAAU,EACb,MAAM,aAAa,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,yBAAyB;AACzB,mCAAmC;AACnC,EAAE;AACF,oEAAoE;AACpE,0EAA0E;AAC1E,EAAE;AACF,6DAA6D;AAC7D,oDAAoD;AAEpD;;;;GAIG;AAEH,mFAAmF;AACnF,sDAAsD;AACtD,mFAAmF;AAEnF,OAAO;AACH,UAAU;AACV,YAAY,EACZ,UAAU,EACV,cAAc,EACd,aAAa,EACb,WAAW,EACX,MAAM,EACN,OAAO;AAEP,iBAAiB;AACjB,UAAU;AAkBV,mBAAmB;AACnB,sBAAsB,EACtB,oBAAoB,EACvB,MAAM,eAAe,CAAC;AAEvB,mFAAmF;AACnF,sBAAsB;AACtB,mFAAmF;AAEnF,OAAO;AAIH,iBAAiB;AACjB,SAAS,EACT,qBAAqB,EACrB,iBAAiB,EACjB,6BAA6B;AAE7B,YAAY;AACZ,iBAAiB,EACjB,6BAA6B;AAE7B,cAAc;AACd,mBAAmB,EACnB,+BAA+B,EAC/B,oBAAoB,EACpB,gCAAgC,EACnC,MAAM,aAAa,CAAC;AAErB,mFAAmF;AACnF,oBAAoB;AACpB,mFAAmF;AAEnF,OAAO;AAIH,oBAAoB;AACpB,mBAAmB,EACnB,+BAA+B,EAC/B,YAAY,EACZ,wBAAwB,EACxB,gBAAgB,EAChB,4BAA4B,EAC5B,sBAAsB,EACtB,kCAAkC,EACrC,MAAM,WAAW,CAAC;AAEnB,mFAAmF;AACnF,sBAAsB;AACtB,mFAAmF;AAEnF,OAAO;AACH,kBAAkB;AAClB,aAAa;AAKb,sBAAsB;AACtB,WAAW,EACX,uBAAuB,EAC1B,MAAM,aAAa,CAAC;AAUrB,mFAAmF;AACnF,sBAAsB;AACtB,mFAAmF;AAEnF,OAAO;AAcH,YAAY;AACZ,WAAW,EACX,uBAAuB,EACvB,QAAQ,EACR,oBAAoB,EACpB,UAAU,EACV,sBAAsB,EACzB,MAAM,SAAS,CAAC;AAEjB,mFAAmF;AACnF,oBAAoB;AACpB,mFAAmF;AAEnF,OAAO,EACH,eAAe,EACf,aAAa,EACb,kBAAkB,EAClB,UAAU,EACb,MAAM,aAAa,CAAC"}
package/lib/esm/index.mjs CHANGED
@@ -38,11 +38,19 @@ export {
38
38
  // Content Functions
39
39
  getOrCreateResource, getOrCreateResourceAsObservable, saveResource, saveResourceAsObservable, sendFileContents, sendFileContentsAsObservable, createOrUpdateResource, createOrUpdateResourceAsObservable } from './content';
40
40
  // ================================================================================
41
+ // MESSAGING FUNCTIONS
42
+ // ================================================================================
43
+ export {
44
+ // Messaging Enums
45
+ MessageMethod,
46
+ // Messaging Functions
47
+ sendMessage, sendMessageAsObservable } from './messaging';
48
+ // ================================================================================
41
49
  // LIST DATA FUNCTIONS
42
50
  // ================================================================================
43
51
  export {
44
52
  // Functions
45
- getListData, getListDataAsObservable } from './lists';
53
+ getListData, getListDataAsObservable, massEdit, massEditAsObservable, massDelete, massDeleteAsObservable } from './lists';
46
54
  // ================================================================================
47
55
  // UTILITY FUNCTIONS
48
56
  // ================================================================================