@arcgis/common-components 4.29.0-beta.42 → 4.29.0-beta.44

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 (128) hide show
  1. package/dist/arcgis-common-components/arcgis-common-components.esm.js +1 -1
  2. package/dist/arcgis-common-components/assets/field-info/t9n/field-info.t9n.ar.json +78 -0
  3. package/dist/arcgis-common-components/assets/field-info/t9n/field-info.t9n.bg.json +78 -0
  4. package/dist/arcgis-common-components/assets/field-info/t9n/field-info.t9n.bs.json +78 -0
  5. package/dist/arcgis-common-components/assets/field-info/t9n/field-info.t9n.ca.json +78 -0
  6. package/dist/arcgis-common-components/assets/field-info/t9n/field-info.t9n.cs.json +78 -0
  7. package/dist/arcgis-common-components/assets/field-info/t9n/field-info.t9n.da.json +78 -0
  8. package/dist/arcgis-common-components/assets/field-info/t9n/field-info.t9n.de.json +78 -0
  9. package/dist/arcgis-common-components/assets/field-info/t9n/field-info.t9n.el.json +78 -0
  10. package/dist/arcgis-common-components/assets/field-info/t9n/field-info.t9n.en.json +78 -0
  11. package/dist/arcgis-common-components/assets/field-info/t9n/field-info.t9n.es.json +78 -0
  12. package/dist/arcgis-common-components/assets/field-info/t9n/field-info.t9n.et.json +78 -0
  13. package/dist/arcgis-common-components/assets/field-info/t9n/field-info.t9n.fi.json +78 -0
  14. package/dist/arcgis-common-components/assets/field-info/t9n/field-info.t9n.fr.json +78 -0
  15. package/dist/arcgis-common-components/assets/field-info/t9n/field-info.t9n.he.json +78 -0
  16. package/dist/arcgis-common-components/assets/field-info/t9n/field-info.t9n.hr.json +78 -0
  17. package/dist/arcgis-common-components/assets/field-info/t9n/field-info.t9n.hu.json +78 -0
  18. package/dist/arcgis-common-components/assets/field-info/t9n/field-info.t9n.id.json +78 -0
  19. package/dist/arcgis-common-components/assets/field-info/t9n/field-info.t9n.it.json +78 -0
  20. package/dist/arcgis-common-components/assets/field-info/t9n/field-info.t9n.ja.json +78 -0
  21. package/dist/arcgis-common-components/assets/field-info/t9n/field-info.t9n.ko.json +78 -0
  22. package/dist/arcgis-common-components/assets/field-info/t9n/field-info.t9n.lt.json +78 -0
  23. package/dist/arcgis-common-components/assets/field-info/t9n/field-info.t9n.lv.json +78 -0
  24. package/dist/arcgis-common-components/assets/field-info/t9n/field-info.t9n.nb.json +78 -0
  25. package/dist/arcgis-common-components/assets/field-info/t9n/field-info.t9n.nl.json +78 -0
  26. package/dist/arcgis-common-components/assets/field-info/t9n/field-info.t9n.pl.json +78 -0
  27. package/dist/arcgis-common-components/assets/field-info/t9n/field-info.t9n.pt-BR.json +78 -0
  28. package/dist/arcgis-common-components/assets/field-info/t9n/field-info.t9n.pt-PT.json +78 -0
  29. package/dist/arcgis-common-components/assets/field-info/t9n/field-info.t9n.ro.json +78 -0
  30. package/dist/arcgis-common-components/assets/field-info/t9n/field-info.t9n.ru.json +78 -0
  31. package/dist/arcgis-common-components/assets/field-info/t9n/field-info.t9n.sk.json +78 -0
  32. package/dist/arcgis-common-components/assets/field-info/t9n/field-info.t9n.sl.json +78 -0
  33. package/dist/arcgis-common-components/assets/field-info/t9n/field-info.t9n.sr.json +78 -0
  34. package/dist/arcgis-common-components/assets/field-info/t9n/field-info.t9n.sv.json +78 -0
  35. package/dist/arcgis-common-components/assets/field-info/t9n/field-info.t9n.th.json +78 -0
  36. package/dist/arcgis-common-components/assets/field-info/t9n/field-info.t9n.tr.json +78 -0
  37. package/dist/arcgis-common-components/assets/field-info/t9n/field-info.t9n.uk.json +78 -0
  38. package/dist/arcgis-common-components/assets/field-info/t9n/field-info.t9n.vi.json +78 -0
  39. package/dist/arcgis-common-components/assets/field-info/t9n/field-info.t9n.zh-CN.json +78 -0
  40. package/dist/arcgis-common-components/assets/field-info/t9n/field-info.t9n.zh-HK.json +78 -0
  41. package/dist/arcgis-common-components/assets/field-info/t9n/field-info.t9n.zh-TW.json +78 -0
  42. package/dist/arcgis-common-components/assets/field-pick-list/t9n/field-pick-list.t9n.ar.json +17 -0
  43. package/dist/arcgis-common-components/assets/field-pick-list/t9n/field-pick-list.t9n.bg.json +17 -0
  44. package/dist/arcgis-common-components/assets/field-pick-list/t9n/field-pick-list.t9n.bs.json +17 -0
  45. package/dist/arcgis-common-components/assets/field-pick-list/t9n/field-pick-list.t9n.ca.json +17 -0
  46. package/dist/arcgis-common-components/assets/field-pick-list/t9n/field-pick-list.t9n.cs.json +17 -0
  47. package/dist/arcgis-common-components/assets/field-pick-list/t9n/field-pick-list.t9n.da.json +17 -0
  48. package/dist/arcgis-common-components/assets/field-pick-list/t9n/field-pick-list.t9n.de.json +17 -0
  49. package/dist/arcgis-common-components/assets/field-pick-list/t9n/field-pick-list.t9n.el.json +17 -0
  50. package/dist/arcgis-common-components/assets/field-pick-list/t9n/field-pick-list.t9n.en.json +17 -0
  51. package/dist/arcgis-common-components/assets/field-pick-list/t9n/field-pick-list.t9n.es.json +17 -0
  52. package/dist/arcgis-common-components/assets/field-pick-list/t9n/field-pick-list.t9n.et.json +17 -0
  53. package/dist/arcgis-common-components/assets/field-pick-list/t9n/field-pick-list.t9n.fi.json +17 -0
  54. package/dist/arcgis-common-components/assets/field-pick-list/t9n/field-pick-list.t9n.fr.json +17 -0
  55. package/dist/arcgis-common-components/assets/field-pick-list/t9n/field-pick-list.t9n.he.json +17 -0
  56. package/dist/arcgis-common-components/assets/field-pick-list/t9n/field-pick-list.t9n.hr.json +17 -0
  57. package/dist/arcgis-common-components/assets/field-pick-list/t9n/field-pick-list.t9n.hu.json +17 -0
  58. package/dist/arcgis-common-components/assets/field-pick-list/t9n/field-pick-list.t9n.id.json +17 -0
  59. package/dist/arcgis-common-components/assets/field-pick-list/t9n/field-pick-list.t9n.it.json +17 -0
  60. package/dist/arcgis-common-components/assets/field-pick-list/t9n/field-pick-list.t9n.ja.json +17 -0
  61. package/dist/arcgis-common-components/assets/field-pick-list/t9n/field-pick-list.t9n.ko.json +17 -0
  62. package/dist/arcgis-common-components/assets/field-pick-list/t9n/field-pick-list.t9n.lt.json +17 -0
  63. package/dist/arcgis-common-components/assets/field-pick-list/t9n/field-pick-list.t9n.lv.json +17 -0
  64. package/dist/arcgis-common-components/assets/field-pick-list/t9n/field-pick-list.t9n.nb.json +17 -0
  65. package/dist/arcgis-common-components/assets/field-pick-list/t9n/field-pick-list.t9n.nl.json +17 -0
  66. package/dist/arcgis-common-components/assets/field-pick-list/t9n/field-pick-list.t9n.pl.json +17 -0
  67. package/dist/arcgis-common-components/assets/field-pick-list/t9n/field-pick-list.t9n.pt-BR.json +17 -0
  68. package/dist/arcgis-common-components/assets/field-pick-list/t9n/field-pick-list.t9n.pt-PT.json +17 -0
  69. package/dist/arcgis-common-components/assets/field-pick-list/t9n/field-pick-list.t9n.ro.json +17 -0
  70. package/dist/arcgis-common-components/assets/field-pick-list/t9n/field-pick-list.t9n.ru.json +17 -0
  71. package/dist/arcgis-common-components/assets/field-pick-list/t9n/field-pick-list.t9n.sk.json +17 -0
  72. package/dist/arcgis-common-components/assets/field-pick-list/t9n/field-pick-list.t9n.sl.json +17 -0
  73. package/dist/arcgis-common-components/assets/field-pick-list/t9n/field-pick-list.t9n.sr.json +17 -0
  74. package/dist/arcgis-common-components/assets/field-pick-list/t9n/field-pick-list.t9n.sv.json +17 -0
  75. package/dist/arcgis-common-components/assets/field-pick-list/t9n/field-pick-list.t9n.th.json +17 -0
  76. package/dist/arcgis-common-components/assets/field-pick-list/t9n/field-pick-list.t9n.tr.json +17 -0
  77. package/dist/arcgis-common-components/assets/field-pick-list/t9n/field-pick-list.t9n.uk.json +17 -0
  78. package/dist/arcgis-common-components/assets/field-pick-list/t9n/field-pick-list.t9n.vi.json +17 -0
  79. package/dist/arcgis-common-components/assets/field-pick-list/t9n/field-pick-list.t9n.zh-CN.json +17 -0
  80. package/dist/arcgis-common-components/assets/field-pick-list/t9n/field-pick-list.t9n.zh-HK.json +17 -0
  81. package/dist/arcgis-common-components/assets/field-pick-list/t9n/field-pick-list.t9n.zh-TW.json +17 -0
  82. package/dist/arcgis-common-components/p-0a9f9233.entry.js +1 -0
  83. package/dist/arcgis-common-components/p-19ebc914.js +1 -0
  84. package/dist/arcgis-common-components/p-20e63d91.entry.js +1 -0
  85. package/dist/arcgis-common-components/p-b23318c8.js +1 -0
  86. package/dist/arcgis-common-components/{p-d868f293.entry.js → p-b98229f1.entry.js} +1 -1
  87. package/dist/arcgis-common-components/p-bc099d11.entry.js +1 -0
  88. package/dist/arcgis-common-components/p-f27af39c.js +2 -0
  89. package/dist/cjs/arcgis-api-key.cjs.entry.js +2 -2
  90. package/dist/cjs/arcgis-common-components.cjs.js +2 -2
  91. package/dist/cjs/arcgis-field-info.cjs.entry.js +1021 -0
  92. package/dist/cjs/arcgis-field-pick-list.cjs.entry.js +258 -0
  93. package/dist/cjs/arcgis-identity.cjs.entry.js +2 -2
  94. package/dist/cjs/{index-9962d715.js → index-81d57760.js} +40 -0
  95. package/dist/cjs/{index-693a0aa8.js → index-ab5f2576.js} +870 -4
  96. package/dist/cjs/index-f8bf4df6.js +7 -0
  97. package/dist/cjs/loader.cjs.js +2 -2
  98. package/dist/components/arcgis-field-info.d.ts +11 -0
  99. package/dist/components/arcgis-field-info.js +6 -0
  100. package/dist/components/arcgis-field-pick-list.d.ts +11 -0
  101. package/dist/components/arcgis-field-pick-list.js +314 -0
  102. package/dist/components/arcgis-identity.js +1 -1
  103. package/dist/components/field-info.js +1048 -0
  104. package/dist/components/index2.js +36 -1
  105. package/dist/esm/arcgis-api-key.entry.js +2 -2
  106. package/dist/esm/arcgis-common-components.js +3 -3
  107. package/dist/esm/arcgis-field-info.entry.js +1017 -0
  108. package/dist/esm/arcgis-field-pick-list.entry.js +254 -0
  109. package/dist/esm/arcgis-identity.entry.js +2 -2
  110. package/dist/esm/{index-00709df9.js → index-74897166.js} +867 -5
  111. package/dist/esm/index-877e3851.js +75 -0
  112. package/dist/esm/index-e7244815.js +3 -0
  113. package/dist/esm/loader.js +3 -3
  114. package/dist/types/components/field-info/field-info.d.ts +68 -0
  115. package/dist/types/components/field-info/t9n-types.d.ts +82 -0
  116. package/dist/types/components/field-info/utils/basic.d.ts +44 -0
  117. package/dist/types/components/field-info/utils/feature.d.ts +17 -0
  118. package/dist/types/components/field-info/utils/field.d.ts +25 -0
  119. package/dist/types/components/field-info/utils/index.d.ts +3 -0
  120. package/dist/types/components/field-pick-list/field-pick-list.d.ts +122 -0
  121. package/dist/types/components/field-pick-list/t9n-types.d.ts +17 -0
  122. package/dist/types/components/field-pick-list/utils/types.d.ts +25 -0
  123. package/dist/types/components.d.ts +270 -0
  124. package/package.json +9 -9
  125. package/dist/arcgis-common-components/p-02d347bb.entry.js +0 -1
  126. package/dist/arcgis-common-components/p-2a7fe37a.js +0 -2
  127. package/dist/arcgis-common-components/p-5d6c7dd8.js +0 -1
  128. package/dist/esm/index-2ba2e62a.js +0 -40
@@ -0,0 +1,254 @@
1
+ import { r as registerInstance, c as createEvent, h, a as getAssetPath, H as Host, g as getElement } from './index-74897166.js';
2
+ import { a as importIntl } from './index-877e3851.js';
3
+ import { F, U, C } from './index-e7244815.js';
4
+
5
+ const fieldPickListScss = ".popover{z-index:100}.panel{min-height:300px}.content{max-height:60vh}.selection-button-div{padding:4px 10px}";
6
+
7
+ var FieldInfoPrefix;
8
+ (function (FieldInfoPrefix) {
9
+ FieldInfoPrefix["expression"] = "expression/";
10
+ FieldInfoPrefix["relationship"] = "relationships/";
11
+ FieldInfoPrefix["raster"] = "Raster.";
12
+ })(FieldInfoPrefix || (FieldInfoPrefix = {}));
13
+ var LastSortyBy;
14
+ (function (LastSortyBy) {
15
+ LastSortyBy["default"] = "default";
16
+ LastSortyBy["display"] = "display";
17
+ LastSortyBy["type"] = "type";
18
+ LastSortyBy["field"] = "field";
19
+ })(LastSortyBy || (LastSortyBy = {}));
20
+ const ArcgisFieldPickList = class {
21
+ constructor(hostRef) {
22
+ registerInstance(this, hostRef);
23
+ this.arcgisFieldPickListDismissed = createEvent(this, "arcgisFieldPickListDismissed", 7);
24
+ this.arcgisFieldPickListChange = createEvent(this, "arcgisFieldPickListChange", 7);
25
+ this.arcgisFieldPickListSortByChange = createEvent(this, "arcgisFieldPickListSortByChange", 7);
26
+ this.calciteValueList = (field) => (h("calcite-pick-list-item", { key: field.name, label: field.alias || field.name, description: (() => {
27
+ if (this.showFieldName) {
28
+ return `{${field.name}}`;
29
+ }
30
+ if (this.showDescription && field.description) {
31
+ return field.description;
32
+ }
33
+ return null;
34
+ })(), value: field.name, selected: (!this.multiple && field.name === this.selectedFields[0]) ||
35
+ (this.multiple && this.selectedFields.indexOf(field.name) > -1), metadata: {
36
+ label: field.alias,
37
+ fieldName: field.name
38
+ } }, this.showFieldInfoCheck(field) && (h("calcite-action", { slot: "actions-end", text: this._t9nStrings.info, title: this._t9nStrings.info, scale: "s", icon: "information", onClick: (event) => {
39
+ event.stopPropagation();
40
+ const action = event.target;
41
+ const fieldInfoFlowItem = document.createElement("calcite-flow-item");
42
+ fieldInfoFlowItem.heading = field.alias ?? field.name;
43
+ fieldInfoFlowItem.description = field.name;
44
+ fieldInfoFlowItem.className = "panel";
45
+ const fieldInfo = document.createElement("arcgis-field-info");
46
+ fieldInfo.lang = this._lang;
47
+ fieldInfo.fieldName = field.name;
48
+ fieldInfo.layer = this.layer;
49
+ fieldInfo.view = this.mapView;
50
+ fieldInfo.classList.add("content");
51
+ fieldInfoFlowItem.appendChild(fieldInfo);
52
+ fieldInfoFlowItem.addEventListener("calciteFlowItemBack", () => setTimeout(() => requestAnimationFrame(() => action.setFocus()), 200));
53
+ this.flowElement.appendChild(fieldInfoFlowItem);
54
+ setTimeout(() => requestAnimationFrame(() => fieldInfoFlowItem.setFocus()), 200);
55
+ } }))));
56
+ this.selectedFields = [];
57
+ this.fields = undefined;
58
+ this.popoverProps = undefined;
59
+ this.layer = undefined;
60
+ this.mapView = undefined;
61
+ this.showFieldInfo = false;
62
+ this.showFieldName = false;
63
+ this.showDescription = false;
64
+ this.showSelectionAll = false;
65
+ this.showCancel = true;
66
+ this.showSort = true;
67
+ this.showFilterLength = 10;
68
+ this.multiple = false;
69
+ this.heading = undefined;
70
+ this.okBtnText = undefined;
71
+ this.filterPlaceholderText = undefined;
72
+ this.sortBy = undefined;
73
+ this.lastSortyBy = LastSortyBy.default;
74
+ this.filterFields = null;
75
+ this._lang = "";
76
+ this._t9nLocale = "";
77
+ this._t9nStrings = undefined;
78
+ }
79
+ // --------------------------------------------------------------------------
80
+ //
81
+ // Lifecycle
82
+ //
83
+ // --------------------------------------------------------------------------
84
+ async componentWillLoad() {
85
+ await F(this, getAssetPath("./assets"));
86
+ // in case more than 1 selected field and multiple is set to false
87
+ if (!this.multiple && this.selectedFields.length > 1) {
88
+ this.selectedFields = [this.selectedFields[0]];
89
+ }
90
+ this.lastSortyBy = this.sortBy || this.lastSortyBy;
91
+ }
92
+ async componentDidLoad() {
93
+ const intl = await importIntl();
94
+ intl.setLocale(this._lang);
95
+ this.setUpObserver();
96
+ this.popoverNode.open = true;
97
+ // need timeout because of re-render
98
+ setTimeout(() => requestAnimationFrame(() => this.panelElement.setFocus()), 200);
99
+ }
100
+ disconnectedCallback() {
101
+ U(this);
102
+ this.observer?.disconnect();
103
+ }
104
+ // --------------------------------------------------------------------------
105
+ //
106
+ // Public Methods
107
+ //
108
+ // --------------------------------------------------------------------------
109
+ async setFocus() {
110
+ setTimeout(() => requestAnimationFrame(() => this.panelElement.setFocus()), 1);
111
+ }
112
+ async reposition() {
113
+ this.popoverNode?.reposition();
114
+ }
115
+ // --------------------------------------------------------------------------
116
+ //
117
+ // Private Methods
118
+ //
119
+ // --------------------------------------------------------------------------
120
+ getSortedList() {
121
+ const tempSorted = [...this.fields];
122
+ if (this.lastSortyBy === LastSortyBy.display) {
123
+ tempSorted.sort((a, b) => a.alias.localeCompare(b.alias));
124
+ }
125
+ else if (this.lastSortyBy === LastSortyBy.field) {
126
+ tempSorted.sort((a, b) => a.name.localeCompare(b.name));
127
+ }
128
+ else if (this.lastSortyBy === LastSortyBy.type) {
129
+ tempSorted.sort((a, b) => a.type.localeCompare(b.type));
130
+ }
131
+ return tempSorted;
132
+ }
133
+ showFieldInfoCheck(field) {
134
+ if (this.showFieldInfo) {
135
+ // dont want info for arcade and relation fields
136
+ if (field.name.includes(FieldInfoPrefix.expression) || field.name.includes(FieldInfoPrefix.relationship)) {
137
+ return false;
138
+ }
139
+ else {
140
+ return true;
141
+ }
142
+ }
143
+ else {
144
+ return false;
145
+ }
146
+ }
147
+ // return true for deselect all, false for select all
148
+ selectDeselect() {
149
+ return this.filterFields?.length ? this.filterContainsAll() : this.selectedFields.length === this.fields.length;
150
+ }
151
+ // check if filter has all current field info
152
+ filterContainsAll() {
153
+ return !!this.filterFields?.every((filter) => {
154
+ return this.selectedFields.some((curr) => {
155
+ return curr === filter;
156
+ });
157
+ });
158
+ }
159
+ // --------------------------------------------------------------------------
160
+ //
161
+ // Rendor Methods
162
+ //
163
+ // --------------------------------------------------------------------------
164
+ render() {
165
+ const addBtn = (h("calcite-button", { slot: "footer", appearance: this.showCancel ? "solid" : "outline-fill", width: this.showCancel ? "half" : "full", scale: "m", onClick: () => {
166
+ this.arcgisFieldPickListDismissed.emit({ selectedFields: this.selectedFields });
167
+ } }, this.okBtnText || (this.multiple ? this._t9nStrings.done : this._t9nStrings.ok)));
168
+ const cancelBtn = (h("calcite-button", { slot: "footer", appearance: "outline-fill", width: this.multiple ? "half" : "full", scale: "m", onClick: () => this.arcgisFieldPickListDismissed.emit() }, this._t9nStrings.cancel));
169
+ const hasType = this.fields.every((field) => !!field.type);
170
+ const sort = (h("calcite-dropdown", { slot: "menu-actions", placement: "bottom-end", overlayPositioning: "fixed", ref: (node) => (this.dropdownNode = node), onCalciteDropdownOpen: () => {
171
+ this.observer?.disconnect();
172
+ this.observer?.observe(this.popoverNode, { attributes: true });
173
+ }, onCalciteDropdownClose: () => this.observer?.disconnect() }, h("calcite-action", { slot: "trigger", text: this._t9nStrings.sort, title: this._t9nStrings.sort }, h("calcite-icon", { scale: "s", icon: "sortDescending" })), h("calcite-dropdown-group", null, h("calcite-dropdown-item", { selected: this.lastSortyBy === LastSortyBy.default, onClick: () => {
174
+ this.lastSortyBy = LastSortyBy.default;
175
+ this.arcgisFieldPickListSortByChange.emit(this.lastSortyBy);
176
+ } }, this._t9nStrings.default), h("calcite-dropdown-item", { selected: this.lastSortyBy === LastSortyBy.display, onClick: () => {
177
+ this.lastSortyBy = LastSortyBy.display;
178
+ this.arcgisFieldPickListSortByChange.emit(this.lastSortyBy);
179
+ } }, this._t9nStrings.displayName), hasType && (h("calcite-dropdown-item", { selected: this.lastSortyBy === LastSortyBy.type, onClick: () => {
180
+ this.lastSortyBy = LastSortyBy.type;
181
+ this.arcgisFieldPickListSortByChange.emit(this.lastSortyBy);
182
+ } }, this._t9nStrings.type)), h("calcite-dropdown-item", { selected: this.lastSortyBy === LastSortyBy.field, onClick: () => {
183
+ this.lastSortyBy = LastSortyBy.field;
184
+ this.arcgisFieldPickListSortByChange.emit(this.lastSortyBy);
185
+ } }, this._t9nStrings.fieldName))));
186
+ const selectionBtn = (h("div", { class: "selection-button-div" }, h("calcite-button", { appearance: "transparent", scale: "s", width: "full", onClick: () => {
187
+ if (this.selectDeselect()) {
188
+ //deselect all
189
+ this.selectedFields = this.filterFields?.length
190
+ ? this.selectedFields.filter((item) => !this.filterFields?.includes(item))
191
+ : [];
192
+ }
193
+ else {
194
+ //select all
195
+ this.selectedFields = this.filterFields?.length
196
+ ? [...new Set([...this.selectedFields, ...this.filterFields])]
197
+ : this.fields.map((field) => {
198
+ return field.name;
199
+ });
200
+ }
201
+ } }, this.selectDeselect() ? this._t9nStrings.deselectAll : this._t9nStrings.selectAll)));
202
+ return (h(Host, { class: "js-app-flyout" }, h("calcite-popover", { dir: C(this._hostElement), class: "popover", placement: this.popoverProps.placement || "leading-start", open: false, pointerDisabled: true, referenceElement: this.popoverProps.refElement, offsetDistance: this.popoverProps.offsetDistance || -Math.round(this.popoverProps.refElement.getBoundingClientRect().width), offsetSkidding: this.popoverProps.offsetSkidding || 0, overlayPositioning: this.popoverProps.overlayPositioning, triggerDisabled: this.popoverProps.triggerDisabled, autoClose: this.popoverProps.autoClose, label: this.heading || (this.multiple ? this._t9nStrings.headerSelect : this._t9nStrings.header), onCalcitePopoverClose: () => this.arcgisFieldPickListDismissed.emit(), ref: (node) => (this.popoverNode = node) }, h("calcite-flow", { ref: (node) => {
203
+ this.flowElement = node;
204
+ }, style: {
205
+ width: `${this.popoverProps.popoverWidth || this.popoverProps.refElement.getBoundingClientRect().width}px`
206
+ } }, h("calcite-flow-item", { ref: (el) => (this.panelElement = el), class: "panel", heading: this.heading || (this.multiple ? this._t9nStrings.headerSelect : this._t9nStrings.header), closable: true, onCalciteFlowItemClose: () => this.arcgisFieldPickListDismissed.emit() }, this.multiple && addBtn, this.showCancel && cancelBtn, h("calcite-pick-list", { multiple: this.multiple, ref: (node) => {
207
+ this.pickListNode = node;
208
+ }, class: "content", filterEnabled: this.fields.length >= this.showFilterLength ? true : false, filterPlaceholder: this.filterPlaceholderText ?? this._t9nStrings.filter, onCalciteListChange: async () => {
209
+ // keep original order. Add addional values at the end
210
+ const tempSelectedFields = await this.pickListNode.getSelectedItems();
211
+ this.selectedFields = [
212
+ ...new Set([
213
+ ...this.selectedFields.filter((item) => {
214
+ return tempSelectedFields.has(item);
215
+ }),
216
+ ...tempSelectedFields.keys()
217
+ ])
218
+ ];
219
+ this.arcgisFieldPickListChange.emit({ selectedFields: this.selectedFields });
220
+ if (!this.multiple) {
221
+ this.arcgisFieldPickListDismissed.emit({ selectedFields: this.selectedFields });
222
+ }
223
+ }, onCalciteListFilter: (event) => {
224
+ event.stopPropagation();
225
+ const node = event.target;
226
+ this.filterFields = node.filteredItems?.map((item) => {
227
+ return item.value;
228
+ });
229
+ } }, this.fields.length >= this.showFilterLength && this.showSort && sort, this.multiple && this.showSelectionAll && selectionBtn, [...this.getSortedList()].map((field) => {
230
+ return this.calciteValueList(field);
231
+ })))))));
232
+ }
233
+ // --------------------------------------------------------------------------
234
+ //
235
+ // Private Methods
236
+ //
237
+ // --------------------------------------------------------------------------
238
+ setUpObserver() {
239
+ this.observer = new MutationObserver((mutationList /* , observer */) => {
240
+ for (const mutation of mutationList) {
241
+ if (mutation.attributeName === "style") {
242
+ if (this.popoverNode.style.visibility === "hidden") {
243
+ this.dropdownNode.open = false;
244
+ }
245
+ }
246
+ }
247
+ });
248
+ }
249
+ static get assetsDirs() { return ["assets"]; }
250
+ get _hostElement() { return getElement(this); }
251
+ };
252
+ ArcgisFieldPickList.style = fieldPickListScss;
253
+
254
+ export { ArcgisFieldPickList as arcgis_field_pick_list };
@@ -1,5 +1,5 @@
1
- import { r as registerInstance, c as createEvent, g as getElement } from './index-00709df9.js';
2
- import { a as importCoreReactiveUtils, n as newIdentityOAuthInfo, b as importIdentityIdentityManager } from './index-2ba2e62a.js';
1
+ import { r as registerInstance, c as createEvent, g as getElement } from './index-74897166.js';
2
+ import { b as importCoreReactiveUtils, n as newIdentityOAuthInfo, c as importIdentityIdentityManager } from './index-877e3851.js';
3
3
 
4
4
  const identityCss = ":host{display:none}arcgis-identity{display:none}";
5
5