@supersoniks/concorde 1.1.47 → 1.1.48

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.
Files changed (33) hide show
  1. package/concorde-core.bundle.js +16 -16
  2. package/concorde-core.es.js +254 -96
  3. package/core/components/functional/fetch/fetch.d.ts +4 -0
  4. package/core/components/functional/list/list.d.ts +4 -0
  5. package/core/components/functional/queue/queue.d.ts +2 -0
  6. package/core/components/functional/queue/queue.js +37 -11
  7. package/core/components/functional/sdui/sdui.d.ts +4 -0
  8. package/core/components/ui/badge/badge.js +3 -4
  9. package/core/components/ui/button/button.d.ts +4 -0
  10. package/core/components/ui/form/checkbox/checkbox.d.ts +8 -0
  11. package/core/components/ui/form/css/form-control.js +7 -5
  12. package/core/components/ui/form/form-layout/form-layout.js +3 -1
  13. package/core/components/ui/form/input/input.d.ts +8 -1
  14. package/core/components/ui/form/input/input.js +10 -3
  15. package/core/components/ui/form/input-autocomplete/input-autocomplete.d.ts +102 -13
  16. package/core/components/ui/form/input-autocomplete/input-autocomplete.js +212 -53
  17. package/core/components/ui/form/textarea/textarea.d.ts +4 -0
  18. package/core/components/ui/modal/modal.d.ts +2 -0
  19. package/core/components/ui/modal/modal.js +6 -3
  20. package/core/components/ui/pop/pop.js +17 -6
  21. package/core/decorators/Subscriber.d.ts +3 -0
  22. package/core/decorators/Subscriber.js +78 -0
  23. package/core/mixins/Fetcher.d.ts +7 -1
  24. package/core/mixins/FormCheckable.d.ts +4 -0
  25. package/core/mixins/FormElement.d.ts +1 -0
  26. package/core/mixins/FormElement.js +6 -2
  27. package/core/mixins/FormInput.d.ts +5 -4
  28. package/core/mixins/Subscriber.d.ts +4 -0
  29. package/core/mixins/Subscriber.js +30 -4
  30. package/mixins.d.ts +12 -0
  31. package/package.json +2 -2
  32. package/concorde-customer.bundle.js +0 -129
  33. package/concorde-customer.es.js +0 -22004
@@ -84,6 +84,10 @@ declare const List_base: {
84
84
  getAttribute(name: string): string;
85
85
  hasAttribute(attributeName: string): boolean;
86
86
  getBoundingClientRect(): DOMRect;
87
+ onConnected(callback: (component: any) => void): void;
88
+ offConnected(callback: (component: any) => void): void;
89
+ onDisconnected(callback: (component: any) => void): void;
90
+ offDisconnected(callback: (component: any) => void): void;
87
91
  };
88
92
  } & (new (...args: any[]) => import("@supersoniks/concorde/core/mixins/Subscriber").SubscriberInterface<import("../../../_types/types").CoreJSType>) & (new (...args: any[]) => import("@supersoniks/concorde/core/mixins/TemplatesContainer").TemplatesContainerInterface) & typeof LitElement;
89
93
  export declare class List extends List_base {
@@ -3,6 +3,7 @@ import "@supersoniks/concorde/core/components/functional/list/list";
3
3
  import { PublisherProxy } from "@supersoniks/concorde/core/utils/PublisherProxy";
4
4
  type QueueItem = {
5
5
  id: string;
6
+ endPoint: string;
6
7
  dataProvider: string;
7
8
  offset: number;
8
9
  limit: number;
@@ -37,6 +38,7 @@ export default class Queue extends Queue_base {
37
38
  filteredFields: string;
38
39
  disconnectedCallback(): void;
39
40
  static instanceCounter: number;
41
+ instanceId: number;
40
42
  localStorage: string;
41
43
  connectedCallback(): Promise<void>;
42
44
  filterPublisher: PublisherProxy | null;
@@ -52,6 +52,7 @@ let Queue = Queue_1 = class Queue extends Subscriber(LitElement, {}) {
52
52
  this.resultCount = 0;
53
53
  this.noLazyload = false;
54
54
  this.filteredFields = "";
55
+ this.instanceId = 0;
55
56
  this.localStorage = "disabled";
56
57
  this.filterPublisher = null;
57
58
  this.searchHash = "";
@@ -81,6 +82,7 @@ let Queue = Queue_1 = class Queue extends Subscriber(LitElement, {}) {
81
82
  connectedCallback: { get: () => super.connectedCallback }
82
83
  });
83
84
  return __awaiter(this, void 0, void 0, function* () {
85
+ this.instanceId = Queue_1.instanceCounter++;
84
86
  this.localStorage = this.getAttribute("localStorage") || this.localStorage;
85
87
  this.removeAttribute("localStorage");
86
88
  this.noShadowDom = "";
@@ -89,9 +91,14 @@ let Queue = Queue_1 = class Queue extends Subscriber(LitElement, {}) {
89
91
  if (!this.dataProvider)
90
92
  this.dataProvider =
91
93
  this.dataProviderExpression ||
92
- "sonic-queue-" + Queue_1.instanceCounter++ + "-" + Math.random().toString(36).substring(7);
94
+ "sonic-queue-" +
95
+ this.instanceId +
96
+ "-" +
97
+ Math.random().toString(36).substring(7);
93
98
  if (!this.dataProviderExpression) {
94
- this.dataProviderExpression = HTML.getAncestorAttributeValue(this.parentElement, "dataProvider") || "";
99
+ this.dataProviderExpression =
100
+ HTML.getAncestorAttributeValue(this.parentElement, "dataProvider") ||
101
+ "";
95
102
  }
96
103
  _super.connectedCallback.call(this);
97
104
  this.key = this.getAttribute("key");
@@ -109,7 +116,8 @@ let Queue = Queue_1 = class Queue extends Subscriber(LitElement, {}) {
109
116
  this.next();
110
117
  return;
111
118
  }
112
- this.filterPublisher = PublisherManager.getInstance().get(dataFilterProvider);
119
+ this.filterPublisher =
120
+ PublisherManager.getInstance().get(dataFilterProvider);
113
121
  (_a = this.filterPublisher) === null || _a === void 0 ? void 0 : _a.onInternalMutation(() => {
114
122
  this.updateFilteredContent();
115
123
  });
@@ -129,7 +137,9 @@ let Queue = Queue_1 = class Queue extends Subscriber(LitElement, {}) {
129
137
  let value = filterData[f];
130
138
  if (Array.isArray(value))
131
139
  value = value.filter((v) => v !== null);
132
- if ((this.filteredFields && !filteredFieldsArray.includes(f)) || value == null || value.toString() === "")
140
+ if ((this.filteredFields && !filteredFieldsArray.includes(f)) ||
141
+ value == null ||
142
+ value.toString() === "")
133
143
  continue;
134
144
  searchParams.set(f, filterData[f].toString());
135
145
  }
@@ -169,6 +179,7 @@ let Queue = Queue_1 = class Queue extends Subscriber(LitElement, {}) {
169
179
  * Un ne repasse donc à 0 qu'à partir du premier chargement.
170
180
  * */
171
181
  if (!this.nextHadEvent && e) {
182
+ this.publisher.resultCount = 0;
172
183
  this.resultCount = 0;
173
184
  }
174
185
  this.nextHadEvent = !!e;
@@ -176,7 +187,9 @@ let Queue = Queue_1 = class Queue extends Subscriber(LitElement, {}) {
176
187
  if (e.detail.requestId < this.requestId)
177
188
  return;
178
189
  this.resultCount += e.detail.props.length;
179
- if (!e.detail.isFirstLoad || !e.detail.props.length || this.dataProviderExpression.indexOf("$offset") == -1) {
190
+ if (!e.detail.isFirstLoad ||
191
+ !e.detail.props.length ||
192
+ this.dataProviderExpression.indexOf("$offset") == -1) {
180
193
  this.publisher.resultCount = this.resultCount;
181
194
  return;
182
195
  }
@@ -189,7 +202,8 @@ let Queue = Queue_1 = class Queue extends Subscriber(LitElement, {}) {
189
202
  else {
190
203
  const props = this.props;
191
204
  const item = props[props.length - 1];
192
- offset = parseInt(item.offset.toString()) + parseInt(item.limit.toString());
205
+ offset =
206
+ parseInt(item.offset.toString()) + parseInt(item.limit.toString());
193
207
  }
194
208
  if (requestDuration > 0 && e && !this.localStorage)
195
209
  this.limit = Math.round((this.limit / requestDuration) * this.targetRequestDuration);
@@ -197,14 +211,18 @@ let Queue = Queue_1 = class Queue extends Subscriber(LitElement, {}) {
197
211
  this.limit = 1;
198
212
  if (this.limit > 15)
199
213
  this.limit = 15;
200
- let dataProvider = this.dataProviderExpression.replace("$offset", offset + "").replace("$limit", this.limit + "");
214
+ let dataProvider = this.dataProviderExpression
215
+ .replace("$offset", offset + "")
216
+ .replace("$limit", this.limit + "");
201
217
  const split = dataProvider.split("?");
202
218
  const endpoint = split.shift();
203
219
  const searchParams = new URLSearchParams(split.join("?"));
204
220
  const filterData = (_a = this.filterPublisher) === null || _a === void 0 ? void 0 : _a.get();
205
221
  const filteredFieldsArray = this.filteredFields.split(" ");
206
222
  for (const f in filterData) {
207
- if ((this.filteredFields && !filteredFieldsArray.includes(f)) || filterData[f] == null)
223
+ if ((this.filteredFields && filteredFieldsArray.includes(f)) ||
224
+ filterData[f] == null ||
225
+ filterData[f] == "")
208
226
  continue;
209
227
  searchParams.set(f, filterData[f]);
210
228
  }
@@ -217,7 +235,8 @@ let Queue = Queue_1 = class Queue extends Subscriber(LitElement, {}) {
217
235
  ...this.props,
218
236
  {
219
237
  id: searchParams.toString() + "/" + this.props.length,
220
- dataProvider: dataProvider,
238
+ dataProvider: dataProvider + "_item_from_queue_" + this.instanceId,
239
+ endPoint: dataProvider,
221
240
  offset: offset,
222
241
  limit: this.limit,
223
242
  },
@@ -239,17 +258,23 @@ let Queue = Queue_1 = class Queue extends Subscriber(LitElement, {}) {
239
258
  // }
240
259
  if (!Array.isArray(this.props))
241
260
  return nothing;
261
+ let lazyload = !this.noLazyload;
262
+ if (this.props.length == 1) {
263
+ lazyload = false;
264
+ }
242
265
  return html `
243
266
  ${map(this.props, (item, index) => {
244
267
  var _a;
245
- const templates = index == 0 ? this.templates : (_a = this.templates) === null || _a === void 0 ? void 0 : _a.filter((elt) => elt.getAttribute("data-value") != "no-item");
268
+ const templates = index == 0
269
+ ? this.templates
270
+ : (_a = this.templates) === null || _a === void 0 ? void 0 : _a.filter((elt) => elt.getAttribute("data-value") != "no-item");
246
271
  return html `
247
272
  <sonic-list
248
273
  fetch
249
274
  cache=${this.cache}
250
275
  displayContents
251
276
  lazyBoundsRatio=${this.lazyBoundsRatio}
252
- ?lazyload=${!this.noLazyload}
277
+ ?lazyload=${lazyload}
253
278
  localStorage=${this.localStorage}
254
279
  requestId=${this.requestId}
255
280
  .itemPropertyMap=${this.itemPropertyMap}
@@ -258,6 +283,7 @@ let Queue = Queue_1 = class Queue extends Subscriber(LitElement, {}) {
258
283
  key=${this.key}
259
284
  @loading=${this.resetDuration}
260
285
  dataProvider="${item.dataProvider}"
286
+ endPoint="${item.endPoint}"
261
287
  idKey=${this.idKey}
262
288
  .templates=${templates}
263
289
  >
@@ -47,6 +47,10 @@ declare const SonicSDUI_base: {
47
47
  getAttribute(name: string): string;
48
48
  hasAttribute(attributeName: string): boolean;
49
49
  getBoundingClientRect(): DOMRect;
50
+ onConnected(callback: (component: any) => void): void;
51
+ offConnected(callback: (component: any) => void): void;
52
+ onDisconnected(callback: (component: any) => void): void;
53
+ offDisconnected(callback: (component: any) => void): void;
50
54
  };
51
55
  } & (new (...args: any[]) => import("../../../mixins/Subscriber").SubscriberInterface<import("../../../_types/types").CoreJSType>) & typeof LitElement;
52
56
  /**
@@ -6,7 +6,7 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
6
6
  };
7
7
  import { html, LitElement, css } from "lit";
8
8
  import { customElement, property } from "lit/decorators.js";
9
- import { fontSize, } from "@supersoniks/concorde/core/components/ui/_css/size";
9
+ import { fontSize } from "@supersoniks/concorde/core/components/ui/_css/size";
10
10
  const tagName = "sonic-badge";
11
11
  /**
12
12
  * Un badge simple avec deux slots, un nommé prefix et un nomé suffix de manière à pouvoir mettre (par exemple) une icone avant ou après le contenu.
@@ -46,12 +46,11 @@ Badge.styles = [
46
46
  --sc-fs: 1rem;
47
47
 
48
48
  --sc-badge-color: var(--sc-base-content, #1f2937);
49
- --sc-badge-bg: var(--sc-base-200, #e5e7eb);
49
+ --sc-badge-bg: var(--sc-base-100, #e5e7eb);
50
50
 
51
51
  --sc-badge-border-with: var(--sc-form-border-width, 0.1rem);
52
52
  --sc-badge-border-color: transparent;
53
- --sc-badge-border: var(--sc-badge-border-with) solid
54
- var(--sc-badge-border-color);
53
+ --sc-badge-border: var(--sc-badge-border-with) solid var(--sc-badge-border-color);
55
54
 
56
55
  --sc-badge-rounded: 0.85em;
57
56
  --sc-badge-fw: var(--sc-font-weight-base);
@@ -59,6 +59,10 @@ declare const Button_base: {
59
59
  getAttribute(name: string): string;
60
60
  hasAttribute(attributeName: string): boolean;
61
61
  getBoundingClientRect(): DOMRect;
62
+ onConnected(callback: (component: any) => void): void;
63
+ offConnected(callback: (component: any) => void): void;
64
+ onDisconnected(callback: (component: any) => void): void;
65
+ offDisconnected(callback: (component: any) => void): void;
62
66
  };
63
67
  } & (new (...args: any[]) => import("@supersoniks/concorde/core/mixins/FormElement").FormElementInterface) & (new (...args: any[]) => import("@supersoniks/concorde/core/mixins/Subscriber").SubscriberInterface<import("../../../_types/types").CoreJSType>) & typeof LitElement;
64
68
  /**
@@ -60,6 +60,10 @@ declare const Checkbox_base: {
60
60
  getAttribute(name: string): string;
61
61
  hasAttribute(attributeName: string): boolean;
62
62
  getBoundingClientRect(): DOMRect;
63
+ onConnected(callback: (component: any) => void): void;
64
+ offConnected(callback: (component: any) => void): void;
65
+ onDisconnected(callback: (component: any) => void): void;
66
+ offDisconnected(callback: (component: any) => void): void;
63
67
  };
64
68
  } & {
65
69
  new (...args: any[]): {
@@ -138,6 +142,10 @@ declare const Checkbox_base: {
138
142
  hasAttribute(attributeName: string): boolean;
139
143
  disconnectedCallback(): void;
140
144
  getBoundingClientRect(): DOMRect;
145
+ onConnected(callback: (component: any) => void): void;
146
+ offConnected(callback: (component: any) => void): void;
147
+ onDisconnected(callback: (component: any) => void): void;
148
+ offDisconnected(callback: (component: any) => void): void;
141
149
  };
142
150
  } & (new (...args: any[]) => import("@supersoniks/concorde/core/mixins/FormElement").FormElementInterface) & (new (...args: any[]) => import("@supersoniks/concorde/core/mixins/Subscriber").SubscriberInterface<import("../../../../_types/types").CoreJSType>) & typeof LitElement;
143
151
  /**
@@ -67,12 +67,13 @@ export const formControl = css `
67
67
 
68
68
  line-height: 1.1;
69
69
  color: var(--sc-input-c);
70
- border-radius: var(--sc-item-rounded-tl) var(--sc-item-rounded-tr) var(--sc-item-rounded-br)
71
- var(--sc-item-rounded-bl);
70
+ border-radius: var(--sc-item-rounded-tl) var(--sc-item-rounded-tr)
71
+ var(--sc-item-rounded-br) var(--sc-item-rounded-bl);
72
72
 
73
73
  font-family: var(--sc-input-ff);
74
74
  background-color: var(--sc-input-background);
75
- border: var(--sc-input-b-width) solid var(--sc-input-b-color, var(--sc-base-300, #aaa));
75
+ border: var(--sc-input-b-width) solid
76
+ var(--sc-input-b-color, var(--sc-base-300, #aaa));
76
77
  width: 100%;
77
78
  font-size: var(--sc-input-fs);
78
79
 
@@ -167,6 +168,7 @@ export const formControl = css `
167
168
  flex: 0 0 auto;
168
169
  max-width: 100%;
169
170
  max-width: 100%;
171
+ white-space: nowrap;
170
172
  }
171
173
 
172
174
  :host([inlineContent]) .has-suffix slot[name="suffix"] {
@@ -289,8 +291,8 @@ export const formControl = css `
289
291
  }
290
292
  input[type="color"]::-webkit-color-swatch {
291
293
  border: none;
292
- border-radius: var(--sc-item-rounded-tl) var(--sc-item-rounded-tr) var(--sc-item-rounded-br)
293
- var(--sc-item-rounded-bl);
294
+ border-radius: var(--sc-item-rounded-tl) var(--sc-item-rounded-tr)
295
+ var(--sc-item-rounded-br) var(--sc-item-rounded-bl);
294
296
  }
295
297
 
296
298
  /*Input Image*/
@@ -59,7 +59,9 @@ FormLayout.styles = [
59
59
  ::slotted(sonic-textarea) {
60
60
  grid-column: 1 / -1;
61
61
  }*/
62
-
62
+ ::slotted(sonic-submit) {
63
+ display: contents;
64
+ }
63
65
  ::slotted(:not(sonic-input):not(sonic-select):not(sonic-input-autocomplete):not(.form-item-container)) {
64
66
  grid-column: 1 / -1;
65
67
  }
@@ -54,8 +54,14 @@ declare const Input_base: {
54
54
  requestUpdate(): void;
55
55
  getAttribute(name: string): string;
56
56
  hasAttribute(attributeName: string): boolean;
57
- disconnectedCallback(): void;
57
+ disconnectedCallback(): void; /**
58
+ * Taille du composant, implique notamment des modifications de typo et de marge interne
59
+ */
58
60
  getBoundingClientRect(): DOMRect;
61
+ onConnected(callback: (component: any) => void): void;
62
+ offConnected(callback: (component: any) => void): void;
63
+ onDisconnected(callback: (component: any) => void): void;
64
+ offDisconnected(callback: (component: any) => void): void;
59
65
  };
60
66
  } & (new (...args: any[]) => import("@supersoniks/concorde/core/mixins/FormElement").FormElementInterface) & (new (...args: any[]) => import("@supersoniks/concorde/core/mixins/Subscriber").SubscriberInterface<import("../../../../_types/types").CoreJSType>) & typeof LitElement;
61
67
  export declare class Input extends Input_base {
@@ -92,6 +98,7 @@ export declare class Input extends Input_base {
92
98
  connectedCallback(): void;
93
99
  disconnectedCallback(): void;
94
100
  willUpdate(changedProperties: PropertyValues): void;
101
+ setSelectionRange(start: number, end: number): void;
95
102
  hasSlotOrProps(): void;
96
103
  inlineContentFocus(): void;
97
104
  changeTimeoutId?: ReturnType<typeof setTimeout>;
@@ -5,7 +5,7 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
5
5
  return c > 3 && r && Object.defineProperty(target, key, r), r;
6
6
  };
7
7
  import { html, LitElement, css } from "lit";
8
- import { customElement, property, queryAssignedNodes, state } from "lit/decorators.js";
8
+ import { customElement, property, queryAssignedNodes, state, } from "lit/decorators.js";
9
9
  import { query } from "lit/decorators/query.js";
10
10
  import { ifDefined } from "lit/directives/if-defined.js";
11
11
  import { formControl, label, description, passwordToggle, } from "@supersoniks/concorde/core/components/ui/form/css/form-control";
@@ -69,10 +69,14 @@ let Input = class Input extends FormInput(FormElement(Subscriber(LitElement))) {
69
69
  this.hasSlotOrProps();
70
70
  super.willUpdate(changedProperties);
71
71
  }
72
+ setSelectionRange(start, end) {
73
+ this.input.setSelectionRange(start, end);
74
+ }
72
75
  hasSlotOrProps() {
73
76
  var _a, _b, _c, _d;
74
77
  this.hasLabel = this.label || ((_a = this.slotLabelNodes) === null || _a === void 0 ? void 0 : _a.length) ? true : false;
75
- this.hasDescription = this.description || ((_b = this.slotDescriptionNodes) === null || _b === void 0 ? void 0 : _b.length) ? true : false;
78
+ this.hasDescription =
79
+ this.description || ((_b = this.slotDescriptionNodes) === null || _b === void 0 ? void 0 : _b.length) ? true : false;
76
80
  this.hasSuffix = ((_c = this.slotSuffixNodes) === null || _c === void 0 ? void 0 : _c.length) ? true : false;
77
81
  this.hasPrefix = ((_d = this.slotPrefixNodes) === null || _d === void 0 ? void 0 : _d.length) ? true : false;
78
82
  }
@@ -152,7 +156,10 @@ let Input = class Input extends FormInput(FormElement(Subscriber(LitElement))) {
152
156
  aria-label="Toggle password visibility"
153
157
  variant="unstyled"
154
158
  >
155
- <sonic-icon library="heroicons" name=${this.isPassword ? "eye" : "eye-slash"}></sonic-icon>
159
+ <sonic-icon
160
+ library="heroicons"
161
+ name=${this.isPassword ? "eye" : "eye-slash"}
162
+ ></sonic-icon>
156
163
  </sonic-button>`
157
164
  : ""}
158
165
  <slot name="suffix" @slotchange=${this.hasSlotOrProps}></slot>
@@ -3,7 +3,72 @@ import "@supersoniks/concorde/core/components/ui/form/input/input";
3
3
  import "@supersoniks/concorde/core/components/ui/pop/pop";
4
4
  import "@supersoniks/concorde/core/components/functional/queue/queue";
5
5
  import "@supersoniks/concorde/core/components/ui/menu/menu-item";
6
- declare const InputAutocomplete_base: (new (...args: any[]) => import("../../../../mixins/TemplatesContainer").TemplatesContainerInterface) & (new (...args: any[]) => import("../../../../mixins/Subscriber").SubscriberInterface<import("../../../../_types/types").CoreJSType>) & typeof LitElement;
6
+ import { Size } from "../../_css/size";
7
+ import { ResizeController } from "@lit-labs/observers/resize_controller.js";
8
+ type ListItem = Record<string, string>;
9
+ declare const InputAutocomplete_base: (new (...args: any[]) => import("../../../../mixins/TemplatesContainer").TemplatesContainerInterface) & {
10
+ new (...args: any[]): {
11
+ validateFormElement(): void;
12
+ forceAutoFill: boolean;
13
+ _type: "number" | "search" | "file" | "button" | "url" | "color" | "hidden" | "time" | "image" | "text" | "reset" | "submit" | "month" | "week" | "checkbox" | "radio" | "range" | "tel" | "email" | "date" | "datetime-local" | "password";
14
+ type: "number" | "search" | "file" | "button" | "url" | "color" | "hidden" | "time" | "image" | "text" | "reset" | "submit" | "month" | "week" | "checkbox" | "radio" | "range" | "tel" | "email" | "date" | "datetime-local" | "password";
15
+ _description?: string | undefined;
16
+ description: string | undefined;
17
+ _label?: string | undefined;
18
+ label: string | undefined;
19
+ tabindex?: number | undefined;
20
+ autocomplete?: "url" | "name" | "language" | "on" | "tel" | "email" | "honorific-prefix" | "given-name" | "additional-name" | "family-name" | "honorific-suffix" | "nickname" | "username" | "new-password" | "current-password" | "one-time-code" | "organization-title" | "organization" | "street-address" | "address-line1" | "address-line2" | "address-line3" | "address-level4" | "address-level3" | "address-level2" | "address-level1" | "country" | "country-name" | "postal-code" | "cc-name" | "cc-given-name" | "cc-additional-name" | "cc-family-name" | "cc-number" | "cc-exp" | "cc-exp-month" | "cc-exp-year" | "cc-csc" | "cc-type" | "transaction-currency" | "transaction-amount" | "bday" | "bday-day" | "bday-month" | "bday-year" | "sex" | "tel-country-code" | "tel-national" | "tel-area-code" | "tel-local" | "tel-extension" | "impp" | "photo" | undefined;
21
+ getFormPublisher(): any;
22
+ updateDataValue(): void;
23
+ handleChange(e?: Event | undefined): void;
24
+ handleBlur(e?: Event | undefined): void;
25
+ getValueForFormPublisher(): string | object | string[] | null | undefined;
26
+ focus?: (() => void) | undefined;
27
+ shadowRoot?: ShadowRoot | undefined;
28
+ error: boolean;
29
+ autofocus: boolean;
30
+ required: boolean;
31
+ disabled: true | null;
32
+ formDataProvider: string;
33
+ ariaLabelledby?: string | undefined;
34
+ ariaLabel?: string | undefined;
35
+ _value: string | object | string[] | null | undefined;
36
+ value: string | object | string[] | null | undefined;
37
+ _name: string;
38
+ name: string;
39
+ props: import("../../../../_types/types").CoreJSType;
40
+ propertyMap: object;
41
+ isConnected: boolean;
42
+ children: HTMLCollection;
43
+ appendChild(node: Node): Node;
44
+ getAncestorAttributeValue(attributeName: string): string;
45
+ hasAncestorAttribute(attributeName: string): boolean;
46
+ querySelectorAll(selector: string): NodeListOf<Element>;
47
+ publisher: any;
48
+ dataProvider: string | null;
49
+ noShadowDom: string | null;
50
+ debug: HTMLElement | null;
51
+ defferedDebug: boolean | null;
52
+ displayContents: boolean;
53
+ dispatchEvent(event: Event): void;
54
+ setAttribute(name: string, value: string): void;
55
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions | undefined): void;
56
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions | undefined): void;
57
+ removeAttribute(name: string): void;
58
+ initPublisher(): void;
59
+ getApiConfiguration(): import("../../../../utils/api").APIConfiguration;
60
+ connectedCallback(): void;
61
+ requestUpdate(): void;
62
+ getAttribute(name: string): string;
63
+ hasAttribute(attributeName: string): boolean;
64
+ disconnectedCallback(): void;
65
+ getBoundingClientRect(): DOMRect;
66
+ onConnected(callback: (component: any) => void): void;
67
+ offConnected(callback: (component: any) => void): void;
68
+ onDisconnected(callback: (component: any) => void): void;
69
+ offDisconnected(callback: (component: any) => void): void;
70
+ };
71
+ } & (new (...args: any[]) => import("../../../../mixins/FormElement").FormElementInterface) & (new (...args: any[]) => import("../../../../mixins/Subscriber").SubscriberInterface<import("../../../../_types/types").CoreJSType>) & typeof LitElement;
7
72
  /**
8
73
  * Input avec autocomplete. Propose des valeurs à partir d'un sonic-queue.
9
74
  * L'input permet de filtrer les choix de valeurs dans le sonic-pop.
@@ -11,24 +76,48 @@ declare const InputAutocomplete_base: (new (...args: any[]) => import("../../../
11
76
  */
12
77
  export declare class InputAutocomplete extends InputAutocomplete_base {
13
78
  static styles: import("lit").CSSResult[];
14
- _name: string;
15
- get name(): string;
16
- set name(value: string);
17
- forceAutoFill: boolean;
18
- _description?: string;
19
- get description(): string | undefined;
20
- set description(value: string | undefined);
21
- _label?: string;
22
- get label(): string | undefined;
23
- set label(value: string | undefined);
79
+ /**
80
+ * Possibles mutualisation avec text
81
+ */
82
+ size: Size;
24
83
  placeholder: string;
25
84
  filteredFields: string;
26
85
  readonly: boolean | null;
27
86
  dataProviderExpression: string;
87
+ select?: boolean;
28
88
  key: string;
29
- value: string;
89
+ searchParameter: string;
90
+ slotInputPrefixNodes: Array<Node>;
91
+ hasInputPrefix: boolean;
92
+ _resizeController: ResizeController<unknown>;
93
+ /**
94
+ * Les dataProviders
95
+ */
96
+ private searchDataProvider;
97
+ private initSearchDataProvider;
98
+ private queueDataProvider;
99
+ private initQueueDataProvider;
100
+ private lastValidSearch;
101
+ private searchPublisher?;
102
+ private countPublisher?;
103
+ private initCountPublisher?;
104
+ private formValuePublisher?;
105
+ /**
106
+ * Les fonctions de gestion
107
+ */
108
+ hasSlotOrProps(): void;
109
+ private updateSearchParameter;
110
+ private initSearchParameter;
111
+ private selectListItem;
112
+ private findSearchedItem;
113
+ private findSelection;
114
+ private setSearchFromSelection;
115
+ private updateActiveSelection;
30
116
  connectedCallback(): void;
31
- formDataProvider: string;
117
+ disconnectedCallback(): void;
118
+ queryQueueListItem(queueDataProvider: string, itemFinder: (listItem: ListItem) => boolean, itemMutator: (listItem: ListItem) => void): void;
119
+ setSelectionRange(start: number, end: number): void;
120
+ handleHide(): void;
32
121
  render(): import("lit-html").TemplateResult<1>;
33
122
  }
34
123
  export {};