@leavittsoftware/web 2.18.0 → 2.19.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.
@@ -1,3 +1,4 @@
1
+ import { PropertyValues } from 'lit';
1
2
  import { Person } from '@leavittsoftware/lg-core-typescript';
2
3
  import { TitaniumSingleSelectBase } from '../../titanium/single-select-base/single-select-base';
3
4
  import '../profile-picture/profile-picture';
@@ -25,7 +26,15 @@ export declare class LeavittPersonSelect extends TitaniumSingleSelectBase<Partia
25
26
  * Odata parts for the Person API call
26
27
  */
27
28
  accessor odataParts: Array<string>;
29
+ /**
30
+ * Enables preloading of people for the default suggestion list. Only enable if you are searching a smaller subset of people.
31
+ */
32
+ accessor enablePeoplePreloading: boolean;
33
+ accessor people: Array<Partial<Person>>;
34
+ firstUpdated(): Promise<void>;
35
+ updated(changedProps: PropertyValues<this>): Promise<void>;
28
36
  searchTermToOData(searchTerm: string): string | null;
37
+ reloadPeople(): Promise<void>;
29
38
  protected onInputChanged(searchTerm: string): void;
30
39
  protected renderSelectedLeadingInputSlot(entity: Partial<Person>): import("lit-html").TemplateResult<1>;
31
40
  protected renderSuggestion(person: Partial<Person>): import("lit-html").TemplateResult<1>;
@@ -45,8 +45,27 @@ let LeavittPersonSelect = class LeavittPersonSelect extends TitaniumSingleSelect
45
45
  */
46
46
  get odataParts() { return this.#odataParts_accessor_storage; }
47
47
  set odataParts(value) { this.#odataParts_accessor_storage = value; }
48
+ #enablePeoplePreloading_accessor_storage = false;
49
+ /**
50
+ * Enables preloading of people for the default suggestion list. Only enable if you are searching a smaller subset of people.
51
+ */
52
+ get enablePeoplePreloading() { return this.#enablePeoplePreloading_accessor_storage; }
53
+ set enablePeoplePreloading(value) { this.#enablePeoplePreloading_accessor_storage = value; }
54
+ #people_accessor_storage = [];
55
+ get people() { return this.#people_accessor_storage; }
56
+ set people(value) { this.#people_accessor_storage = value; }
48
57
  #doSearchDebouncer = new Debouncer((searchTerm) => this.#doSearch(searchTerm));
49
58
  #abortController = new AbortController();
59
+ async firstUpdated() {
60
+ if (this.enablePeoplePreloading && !this.people.length && this.apiService) {
61
+ this.reloadPeople();
62
+ }
63
+ }
64
+ async updated(changedProps) {
65
+ if (changedProps.has('people') && this.people) {
66
+ this.defaultSuggestions = this.people;
67
+ }
68
+ }
50
69
  searchTermToOData(searchTerm) {
51
70
  const searchTokens = getSearchTokens(searchTerm);
52
71
  if (searchTokens.length < 1) {
@@ -54,6 +73,21 @@ let LeavittPersonSelect = class LeavittPersonSelect extends TitaniumSingleSelect
54
73
  }
55
74
  return searchTokens.map((token) => `contains(tolower(FullName), '${token.toLowerCase()}')`).join(' and ');
56
75
  }
76
+ async reloadPeople() {
77
+ this.people = await this.#getPeople();
78
+ }
79
+ async #getPeople() {
80
+ const odataParts = this.odataParts.filter((o) => !o.startsWith('top='));
81
+ try {
82
+ const get = this.apiService?.getAsync(`${this.apiControllerName}?${odataParts.join('&')}`);
83
+ const result = await get;
84
+ return result?.toList() ?? [];
85
+ }
86
+ catch (error) {
87
+ this.dispatchEvent(new ShowSnackbarEvent(error));
88
+ }
89
+ return [];
90
+ }
57
91
  async #doSearch(searchTerm) {
58
92
  if (!searchTerm) {
59
93
  return;
@@ -116,6 +150,12 @@ __decorate([
116
150
  __decorate([
117
151
  property({ type: Array })
118
152
  ], LeavittPersonSelect.prototype, "odataParts", null);
153
+ __decorate([
154
+ property({ type: Boolean, attribute: 'enable-people-preloading' })
155
+ ], LeavittPersonSelect.prototype, "enablePeoplePreloading", null);
156
+ __decorate([
157
+ property({ type: Array })
158
+ ], LeavittPersonSelect.prototype, "people", null);
119
159
  LeavittPersonSelect = __decorate([
120
160
  customElement('leavitt-person-select')
121
161
  ], LeavittPersonSelect);
@@ -1 +1 @@
1
- {"version":3,"file":"person-select.js","sourceRoot":"","sources":["person-select.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"person-select.js","sourceRoot":"","sources":["person-select.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@leavittsoftware/web",
3
- "version": "2.18.0",
3
+ "version": "2.19.0",
4
4
  "license": "Apache-2.0",
5
5
  "description": "",
6
6
  "files": [
@@ -40,5 +40,5 @@
40
40
  "url": "https://github.com/LeavittSoftware/titanium-elements/issues"
41
41
  },
42
42
  "homepage": "https://github.com/LeavittSoftware/titanium-elements/#readme",
43
- "gitHead": "d208f85d1f790e6a3389b3e81fd0a8a606ddba8f"
43
+ "gitHead": "e0871d1c340d87d9ffbc4e19a3e113de585a50bb"
44
44
  }