@esri/solutions-components 0.2.6 → 0.2.7

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 (314) hide show
  1. package/dist/cjs/deduct-calculator.cjs.entry.js +1 -1
  2. package/dist/cjs/pci-calculator.cjs.entry.js +1 -1
  3. package/dist/cjs/{pciUtils-6a806ba4.js → pciUtils-423cfc68.js} +25 -7
  4. package/dist/collection/demos/deduct-calculator.html +2 -5
  5. package/dist/collection/demos/new-public-notification.html +6 -4
  6. package/dist/collection/utils/pciUtils.js +25 -7
  7. package/dist/collection/utils/pciUtils.ts +30 -7
  8. package/dist/components/ExpandToggle.js +110 -0
  9. package/dist/components/Heading.js +22 -0
  10. package/dist/components/_commonjsHelpers.js +22 -0
  11. package/dist/components/action-bar.js +276 -0
  12. package/dist/components/action-group.js +149 -0
  13. package/dist/components/action-menu.js +356 -0
  14. package/dist/components/action.js +214 -0
  15. package/dist/components/add-record-modal.d.ts +11 -0
  16. package/dist/components/add-record-modal.js +171 -0
  17. package/dist/components/array.js +15 -0
  18. package/dist/components/block.js +272 -0
  19. package/dist/components/buffer-tools.d.ts +11 -0
  20. package/dist/components/buffer-tools.js +11 -0
  21. package/dist/components/buffer-tools2.js +262 -0
  22. package/dist/components/button.js +263 -0
  23. package/dist/components/calcite-accordion-item.js +244 -0
  24. package/dist/components/calcite-accordion.js +180 -0
  25. package/dist/components/calcite-action-bar.js +11 -0
  26. package/dist/components/calcite-action-group.js +11 -0
  27. package/dist/components/calcite-action-menu.js +11 -0
  28. package/dist/components/calcite-action-pad.js +197 -0
  29. package/dist/components/calcite-action.js +11 -0
  30. package/dist/components/calcite-alert.js +297 -0
  31. package/dist/components/calcite-avatar.js +182 -0
  32. package/dist/components/calcite-block-section.js +155 -0
  33. package/dist/components/calcite-block.js +11 -0
  34. package/dist/components/calcite-button.js +11 -0
  35. package/dist/components/calcite-card.js +187 -0
  36. package/dist/components/calcite-checkbox.js +11 -0
  37. package/dist/components/calcite-chip.js +11 -0
  38. package/dist/components/calcite-color-picker-hex-input.js +11 -0
  39. package/dist/components/calcite-color-picker-swatch.js +11 -0
  40. package/dist/components/calcite-color-picker.js +1036 -0
  41. package/dist/components/calcite-combobox-item-group.js +75 -0
  42. package/dist/components/calcite-combobox-item.js +11 -0
  43. package/dist/components/calcite-combobox.js +11 -0
  44. package/dist/components/calcite-date-picker-day.js +11 -0
  45. package/dist/components/calcite-date-picker-month-header.js +11 -0
  46. package/dist/components/calcite-date-picker-month.js +11 -0
  47. package/dist/components/calcite-date-picker.js +11 -0
  48. package/dist/components/calcite-dropdown-group.js +11 -0
  49. package/dist/components/calcite-dropdown-item.js +11 -0
  50. package/dist/components/calcite-dropdown.js +11 -0
  51. package/dist/components/calcite-fab.js +144 -0
  52. package/dist/components/calcite-filter.js +195 -0
  53. package/dist/components/calcite-flow-item.js +243 -0
  54. package/dist/components/calcite-flow.js +147 -0
  55. package/dist/components/calcite-graph.js +11 -0
  56. package/dist/components/calcite-handle.js +11 -0
  57. package/dist/components/calcite-icon.js +11 -0
  58. package/dist/components/calcite-inline-editable.js +294 -0
  59. package/dist/components/calcite-input-date-picker.js +713 -0
  60. package/dist/components/calcite-input-message.js +11 -0
  61. package/dist/components/calcite-input-number.js +637 -0
  62. package/dist/components/calcite-input-text.js +400 -0
  63. package/dist/components/calcite-input-time-picker.js +434 -0
  64. package/dist/components/calcite-input.js +11 -0
  65. package/dist/components/calcite-label.js +11 -0
  66. package/dist/components/calcite-link.js +11 -0
  67. package/dist/components/calcite-list-item-group.js +65 -0
  68. package/dist/components/calcite-list-item.js +11 -0
  69. package/dist/components/calcite-list.js +11 -0
  70. package/dist/components/calcite-loader.js +11 -0
  71. package/dist/components/calcite-modal.js +11 -0
  72. package/dist/components/calcite-notice.js +11 -0
  73. package/dist/components/calcite-option-group.js +64 -0
  74. package/dist/components/calcite-option.js +11 -0
  75. package/dist/components/calcite-pagination.js +258 -0
  76. package/dist/components/calcite-panel.js +11 -0
  77. package/dist/components/calcite-pick-list-group.js +74 -0
  78. package/dist/components/calcite-pick-list-item.js +11 -0
  79. package/dist/components/calcite-pick-list.js +11 -0
  80. package/dist/components/calcite-popover-manager.js +94 -0
  81. package/dist/components/calcite-popover.js +11 -0
  82. package/dist/components/calcite-progress.js +11 -0
  83. package/dist/components/calcite-radio-button-group.js +132 -0
  84. package/dist/components/calcite-radio-button.js +310 -0
  85. package/dist/components/calcite-radio-group-item.js +11 -0
  86. package/dist/components/calcite-radio-group.js +11 -0
  87. package/dist/components/calcite-rating.js +201 -0
  88. package/dist/components/calcite-scrim.js +11 -0
  89. package/dist/components/calcite-select.js +11 -0
  90. package/dist/components/calcite-shell-center-row.js +100 -0
  91. package/dist/components/calcite-shell-panel.js +11 -0
  92. package/dist/components/calcite-shell.js +11 -0
  93. package/dist/components/calcite-slider.js +11 -0
  94. package/dist/components/calcite-sortable-list.js +202 -0
  95. package/dist/components/calcite-split-button.js +11 -0
  96. package/dist/components/calcite-stepper-item.js +271 -0
  97. package/dist/components/calcite-stepper.js +256 -0
  98. package/dist/components/calcite-switch.js +11 -0
  99. package/dist/components/calcite-tab-nav.js +11 -0
  100. package/dist/components/calcite-tab-title.js +11 -0
  101. package/dist/components/calcite-tab.js +11 -0
  102. package/dist/components/calcite-tabs.js +11 -0
  103. package/dist/components/calcite-tile-select-group.js +65 -0
  104. package/dist/components/calcite-tile-select.js +266 -0
  105. package/dist/components/calcite-tile.js +11 -0
  106. package/dist/components/calcite-time-picker.js +11 -0
  107. package/dist/components/calcite-tip-group.js +41 -0
  108. package/dist/components/calcite-tip-manager.js +223 -0
  109. package/dist/components/calcite-tip.js +162 -0
  110. package/dist/components/calcite-tooltip-manager.js +57 -0
  111. package/dist/components/calcite-tooltip.js +11 -0
  112. package/dist/components/calcite-tree-item.js +11 -0
  113. package/dist/components/calcite-tree.js +11 -0
  114. package/dist/components/calcite-value-list-item.js +11 -0
  115. package/dist/components/calcite-value-list.js +11 -0
  116. package/dist/components/card-manager.d.ts +11 -0
  117. package/dist/components/card-manager.js +143 -0
  118. package/dist/components/check-list.d.ts +11 -0
  119. package/dist/components/check-list.js +11 -0
  120. package/dist/components/check-list2.js +131 -0
  121. package/dist/components/checkbox.js +165 -0
  122. package/dist/components/chip.js +170 -0
  123. package/dist/components/color-picker-hex-input.js +363 -0
  124. package/dist/components/color-picker-swatch.js +2034 -0
  125. package/dist/components/combobox-item.js +182 -0
  126. package/dist/components/combobox.js +912 -0
  127. package/dist/components/comment-card.d.ts +11 -0
  128. package/dist/components/comment-card.js +90 -0
  129. package/dist/components/conditionalSlot.js +50 -0
  130. package/dist/components/config-buffer-tools.d.ts +11 -0
  131. package/dist/components/config-buffer-tools.js +187 -0
  132. package/dist/components/config-draw-tools.d.ts +11 -0
  133. package/dist/components/config-draw-tools.js +121 -0
  134. package/dist/components/config-layer-picker.d.ts +11 -0
  135. package/dist/components/config-layer-picker.js +163 -0
  136. package/dist/components/config-pdf-download.d.ts +11 -0
  137. package/dist/components/config-pdf-download.js +154 -0
  138. package/dist/components/crowdsource-manager.d.ts +11 -0
  139. package/dist/components/crowdsource-manager.js +90 -0
  140. package/dist/components/crowdsource-reporter.d.ts +11 -0
  141. package/dist/components/crowdsource-reporter.js +90 -0
  142. package/dist/components/csvUtils.js +74 -0
  143. package/dist/components/date-picker-day.js +111 -0
  144. package/dist/components/date-picker-month-header.js +224 -0
  145. package/dist/components/date-picker-month.js +344 -0
  146. package/dist/components/date-picker.js +575 -0
  147. package/dist/components/date.js +180 -0
  148. package/dist/components/debounce.js +487 -0
  149. package/dist/components/deduct-calculator.d.ts +11 -0
  150. package/dist/components/deduct-calculator.js +11 -0
  151. package/dist/components/deduct-calculator2.js +1002 -0
  152. package/dist/components/dom.js +231 -0
  153. package/dist/components/dropdown-group.js +96 -0
  154. package/dist/components/dropdown-item.js +232 -0
  155. package/dist/components/dropdown.js +505 -0
  156. package/dist/components/edit-record-modal.d.ts +11 -0
  157. package/dist/components/edit-record-modal.js +11 -0
  158. package/dist/components/edit-record-modal2.js +161 -0
  159. package/dist/components/filter.js +763 -0
  160. package/dist/components/floating-ui.js +1768 -0
  161. package/dist/components/form.js +228 -0
  162. package/dist/components/graph.js +254 -0
  163. package/dist/components/guid.js +24 -0
  164. package/dist/components/handle.js +119 -0
  165. package/dist/components/icon.js +202 -0
  166. package/dist/components/index.d.ts +61 -0
  167. package/dist/components/index.js +196 -0
  168. package/dist/components/index2.js +199 -0
  169. package/dist/components/info-card.d.ts +11 -0
  170. package/dist/components/info-card.js +11 -0
  171. package/dist/components/info-card2.js +97 -0
  172. package/dist/components/input-message.js +101 -0
  173. package/dist/components/input.js +740 -0
  174. package/dist/components/interactive.js +51 -0
  175. package/dist/components/interfaces.js +19 -0
  176. package/dist/components/interfaces2.js +21 -0
  177. package/dist/components/interfaces3.js +80 -0
  178. package/dist/components/json-editor.d.ts +11 -0
  179. package/dist/components/json-editor.js +11 -0
  180. package/dist/components/json-editor2.js +441 -0
  181. package/dist/components/key.js +16 -0
  182. package/dist/components/label.js +106 -0
  183. package/dist/components/label2.js +131 -0
  184. package/dist/components/labelFormats.js +210 -0
  185. package/dist/components/layer-table.d.ts +11 -0
  186. package/dist/components/layer-table.js +453 -0
  187. package/dist/components/link.js +123 -0
  188. package/dist/components/list-item.d.ts +11 -0
  189. package/dist/components/list-item.js +90 -0
  190. package/dist/components/list-item2.js +149 -0
  191. package/dist/components/list.js +83 -0
  192. package/dist/components/loadModules.js +28 -0
  193. package/dist/components/loader.js +116 -0
  194. package/dist/components/locale.js +412 -0
  195. package/dist/components/locale2.js +413 -0
  196. package/dist/components/map-card.d.ts +11 -0
  197. package/dist/components/map-card.js +354 -0
  198. package/dist/components/map-draw-tools.d.ts +11 -0
  199. package/dist/components/map-draw-tools.js +11 -0
  200. package/dist/components/map-draw-tools2.js +228 -0
  201. package/dist/components/map-layer-picker.d.ts +11 -0
  202. package/dist/components/map-layer-picker.js +11 -0
  203. package/dist/components/map-layer-picker2.js +188 -0
  204. package/dist/components/map-search.d.ts +11 -0
  205. package/dist/components/map-search.js +155 -0
  206. package/dist/components/map-select-tools.d.ts +11 -0
  207. package/dist/components/map-select-tools.js +11 -0
  208. package/dist/components/map-select-tools2.js +588 -0
  209. package/dist/components/mapViewUtils.js +129 -0
  210. package/dist/components/math.js +24 -0
  211. package/dist/components/media-card.d.ts +11 -0
  212. package/dist/components/media-card.js +11 -0
  213. package/dist/components/media-card2.js +177 -0
  214. package/dist/components/modal.js +495 -0
  215. package/dist/components/nonChromiumPlatformUtils.js +503 -0
  216. package/dist/components/notice.js +192 -0
  217. package/dist/components/observers.js +56 -0
  218. package/dist/components/openCloseComponent.js +56 -0
  219. package/dist/components/option.js +109 -0
  220. package/dist/components/panel.js +459 -0
  221. package/dist/components/pci-calculator.d.ts +11 -0
  222. package/dist/components/pci-calculator.js +193 -0
  223. package/dist/components/pdf-download.d.ts +11 -0
  224. package/dist/components/pdf-download.js +11 -0
  225. package/dist/components/pdf-download2.js +189 -0
  226. package/dist/components/pick-list-item.js +255 -0
  227. package/dist/components/pick-list.js +170 -0
  228. package/dist/components/popover.js +500 -0
  229. package/dist/components/progress.js +60 -0
  230. package/dist/components/public-notification.d.ts +11 -0
  231. package/dist/components/public-notification.js +825 -0
  232. package/dist/components/publicNotificationStore.js +38 -0
  233. package/dist/components/queryUtils.js +187 -0
  234. package/dist/components/radio-group-item.js +101 -0
  235. package/dist/components/radio-group.js +235 -0
  236. package/dist/components/refine-selection-tools.d.ts +11 -0
  237. package/dist/components/refine-selection-tools.js +11 -0
  238. package/dist/components/refine-selection-tools2.js +492 -0
  239. package/dist/components/refine-selection.d.ts +11 -0
  240. package/dist/components/refine-selection.js +11 -0
  241. package/dist/components/refine-selection2.js +376 -0
  242. package/dist/components/resources.js +24 -0
  243. package/dist/components/resources2.js +21 -0
  244. package/dist/components/resources3.js +38 -0
  245. package/dist/components/scrim.js +83 -0
  246. package/dist/components/select.js +259 -0
  247. package/dist/components/shared-list-render.js +319 -0
  248. package/dist/components/shell-panel.js +281 -0
  249. package/dist/components/shell.js +121 -0
  250. package/dist/components/slider.js +896 -0
  251. package/dist/components/solution-configuration.d.ts +11 -0
  252. package/dist/components/solution-configuration.js +2233 -0
  253. package/dist/components/solution-contents.d.ts +11 -0
  254. package/dist/components/solution-contents.js +11 -0
  255. package/dist/components/solution-contents2.js +128 -0
  256. package/dist/components/solution-item-details.d.ts +11 -0
  257. package/dist/components/solution-item-details.js +11 -0
  258. package/dist/components/solution-item-details2.js +234 -0
  259. package/dist/components/solution-item-icon.d.ts +11 -0
  260. package/dist/components/solution-item-icon.js +11 -0
  261. package/dist/components/solution-item-icon2.js +342 -0
  262. package/dist/components/solution-item-sharing.d.ts +11 -0
  263. package/dist/components/solution-item-sharing.js +11 -0
  264. package/dist/components/solution-item-sharing2.js +167 -0
  265. package/dist/components/solution-item.d.ts +11 -0
  266. package/dist/components/solution-item.js +11 -0
  267. package/dist/components/solution-item2.js +315 -0
  268. package/dist/components/solution-organization-variables.d.ts +11 -0
  269. package/dist/components/solution-organization-variables.js +11 -0
  270. package/dist/components/solution-organization-variables2.js +132 -0
  271. package/dist/components/solution-resource-item.d.ts +11 -0
  272. package/dist/components/solution-resource-item.js +11 -0
  273. package/dist/components/solution-resource-item2.js +356 -0
  274. package/dist/components/solution-spatial-ref.d.ts +11 -0
  275. package/dist/components/solution-spatial-ref.js +11 -0
  276. package/dist/components/solution-spatial-ref2.js +21446 -0
  277. package/dist/components/solution-store.js +4092 -0
  278. package/dist/components/solution-template-data.d.ts +11 -0
  279. package/dist/components/solution-template-data.js +11 -0
  280. package/dist/components/solution-template-data2.js +233 -0
  281. package/dist/components/solution-variables.d.ts +11 -0
  282. package/dist/components/solution-variables.js +11 -0
  283. package/dist/components/solution-variables2.js +150 -0
  284. package/dist/components/sortable.esm.js +3026 -0
  285. package/dist/components/split-button.js +165 -0
  286. package/dist/components/store-manager.d.ts +11 -0
  287. package/dist/components/store-manager.js +83 -0
  288. package/dist/components/switch.js +139 -0
  289. package/dist/components/tab-nav.js +241 -0
  290. package/dist/components/tab-title.js +276 -0
  291. package/dist/components/tab.js +154 -0
  292. package/dist/components/tabs.js +188 -0
  293. package/dist/components/tile.js +129 -0
  294. package/dist/components/time-picker.js +943 -0
  295. package/dist/components/tooltip.js +399 -0
  296. package/dist/components/tree-item.js +294 -0
  297. package/dist/components/tree.js +327 -0
  298. package/dist/components/utils.js +119 -0
  299. package/dist/components/utils2.js +51 -0
  300. package/dist/components/value-list-item.js +204 -0
  301. package/dist/components/value-list.js +333 -0
  302. package/dist/esm/deduct-calculator.entry.js +1 -1
  303. package/dist/esm/pci-calculator.entry.js +1 -1
  304. package/dist/esm/{pciUtils-e3007a1c.js → pciUtils-ecda46e5.js} +25 -7
  305. package/dist/solutions-components/demos/deduct-calculator.html +2 -5
  306. package/dist/solutions-components/demos/new-public-notification.html +6 -4
  307. package/dist/solutions-components/{p-ff80ffbb.entry.js → p-0512635b.entry.js} +1 -1
  308. package/dist/solutions-components/{p-5ec407c2.entry.js → p-0c088725.entry.js} +1 -1
  309. package/dist/solutions-components/p-cc815aca.js +21 -0
  310. package/dist/solutions-components/solutions-components.esm.js +1 -1
  311. package/dist/solutions-components/utils/pciUtils.ts +30 -7
  312. package/dist/types/utils/pciUtils.d.ts +2 -1
  313. package/package.json +4 -3
  314. package/dist/solutions-components/p-647bbd18.js +0 -21
@@ -0,0 +1,11 @@
1
+ /*!
2
+ * Copyright 2022 Esri
3
+ * Licensed under the Apache License, Version 2.0
4
+ * http://www.apache.org/licenses/LICENSE-2.0
5
+ */
6
+ import { P as PdfDownload$1, d as defineCustomElement$1 } from './pdf-download2.js';
7
+
8
+ const PdfDownload = PdfDownload$1;
9
+ const defineCustomElement = defineCustomElement$1;
10
+
11
+ export { PdfDownload, defineCustomElement };
@@ -0,0 +1,189 @@
1
+ /*!
2
+ * Copyright 2022 Esri
3
+ * Licensed under the Apache License, Version 2.0
4
+ * http://www.apache.org/licenses/LICENSE-2.0
5
+ */
6
+ import { proxyCustomElement, HTMLElement, h, Host } from '@stencil/core/internal/client';
7
+ import { p as pdfUtils } from './labelFormats.js';
8
+ import { g as getLocaleComponentStrings } from './locale.js';
9
+ import { e as exportCSV } from './csvUtils.js';
10
+ import { d as defineCustomElement$3 } from './icon.js';
11
+ import { d as defineCustomElement$2 } from './option.js';
12
+ import { d as defineCustomElement$1 } from './select.js';
13
+
14
+ const pdfDownloadCss = ":host{display:block}";
15
+
16
+ const PdfDownload = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
17
+ constructor() {
18
+ super();
19
+ this.__registerHost();
20
+ this.__attachShadow();
21
+ this.disabled = true;
22
+ this.layerView = undefined;
23
+ this._translations = undefined;
24
+ }
25
+ //--------------------------------------------------------------------------
26
+ //
27
+ // Watch handlers
28
+ //
29
+ //--------------------------------------------------------------------------
30
+ //--------------------------------------------------------------------------
31
+ //
32
+ // Methods (public)
33
+ //
34
+ //--------------------------------------------------------------------------
35
+ /**
36
+ * Downloads pdf of mailing labels for the provided list of ids
37
+ *
38
+ * @param ids List of ids to download
39
+ * @param removeDuplicates When true a single label is generated when multiple featues have a shared address value
40
+ * @returns Promise resolving when function is done
41
+ */
42
+ async downloadPDF(ids, removeDuplicates) {
43
+ return this._downloadPDF(ids, removeDuplicates);
44
+ }
45
+ /**
46
+ * Downloads csv of mailing labels for the provided list of ids
47
+ *
48
+ * @param ids List of ids to download
49
+ * @param removeDuplicates When true a single label is generated when multiple featues have a shared address value
50
+ * @returns Promise resolving when function is done
51
+ */
52
+ async downloadCSV(ids, removeDuplicates) {
53
+ return this._downloadCSV(ids, removeDuplicates);
54
+ }
55
+ //--------------------------------------------------------------------------
56
+ //
57
+ // Events (public)
58
+ //
59
+ //--------------------------------------------------------------------------
60
+ //--------------------------------------------------------------------------
61
+ //
62
+ // Functions (lifecycle)
63
+ //
64
+ //--------------------------------------------------------------------------
65
+ /**
66
+ * StencilJS: Called once just after the component is first connected to the DOM.
67
+ */
68
+ async componentWillLoad() {
69
+ await this._getTranslations();
70
+ }
71
+ /**
72
+ * Renders the component.
73
+ */
74
+ render() {
75
+ return (h(Host, null, h("calcite-select", { disabled: this.disabled, label: "", ref: (el) => { this._labelInfoElement = el; } }, this._renderItems())));
76
+ }
77
+ //--------------------------------------------------------------------------
78
+ //
79
+ // Functions (protected)
80
+ //
81
+ //--------------------------------------------------------------------------
82
+ /**
83
+ * Renders the pdf export size options
84
+ *
85
+ * @returns Node array of size options
86
+ *
87
+ * @protected
88
+ */
89
+ _renderItems() {
90
+ const s = pdfUtils;
91
+ const sortedPdfIndo = (s.default || s).sort((a, b) => {
92
+ const _a = parseInt(a.descriptionPDF.labelsPerPageDisplay, 10);
93
+ const _b = parseInt(b.descriptionPDF.labelsPerPageDisplay, 10);
94
+ return _a < _b ? -1 : _a > _b ? 1 : 0;
95
+ });
96
+ return sortedPdfIndo.map((l) => {
97
+ return (h("calcite-option", { value: l }, this._getLabelSizeText(l)));
98
+ });
99
+ }
100
+ /**
101
+ * Downloads pdf of mailing labels for the provided list of ids
102
+ *
103
+ * @param ids List of ids to download
104
+ * @param removeDuplicates When true a single label is generated when multiple featues have a shared address value
105
+ *
106
+ * @returns Promise resolving when function is done
107
+ * @protected
108
+ */
109
+ async _downloadPDF(ids, removeDuplicates) {
110
+ const l = this._labelInfoElement.selectedOption.value;
111
+ alert(`PDF download: (${this._getLabelSizeText(l)}) (remove dups: ${removeDuplicates}) ${ids.join(", ")}`);
112
+ }
113
+ /**
114
+ * Downloads csv of mailing labels for the provided list of ids
115
+ *
116
+ * @param ids List of ids to download
117
+ * @param removeDuplicates When true a single label is generated when multiple featues have a shared address value
118
+ * @returns Promise resolving when function is done
119
+ *
120
+ * @returns Promise that will resolve when the download is complete
121
+ * @protected
122
+ */
123
+ async _downloadCSV(ids, removeDuplicates) {
124
+ // TODO this will be leveraged when we do the real implementation of this
125
+ console.log(removeDuplicates);
126
+ await exportCSV(this.layerView, ids);
127
+ }
128
+ /**
129
+ * Gets the formatted pdf export size text
130
+ *
131
+ * @param labelInfo current user selected label info
132
+ *
133
+ * @returns the pdf label as a string
134
+ * @protected
135
+ */
136
+ _getLabelSizeText(labelInfo) {
137
+ const lNum = labelInfo.descriptionPDF.labelsPerPageDisplay;
138
+ const lSize = `${labelInfo.descriptionPDF.labelWidthDisplay} x ${labelInfo.descriptionPDF.labelHeightDisplay}`;
139
+ return this._translations.pdfLabel.replace("{{n}}", lNum).replace("{{labelSize}}", lSize);
140
+ }
141
+ /**
142
+ * Fetches the component's translations
143
+ *
144
+ * @protected
145
+ */
146
+ async _getTranslations() {
147
+ const translations = await getLocaleComponentStrings(this.el);
148
+ this._translations = translations[0];
149
+ }
150
+ get el() { return this; }
151
+ static get style() { return pdfDownloadCss; }
152
+ }, [1, "pdf-download", {
153
+ "disabled": [4],
154
+ "layerView": [16],
155
+ "_translations": [32],
156
+ "downloadPDF": [64],
157
+ "downloadCSV": [64]
158
+ }]);
159
+ function defineCustomElement() {
160
+ if (typeof customElements === "undefined") {
161
+ return;
162
+ }
163
+ const components = ["pdf-download", "calcite-icon", "calcite-option", "calcite-select"];
164
+ components.forEach(tagName => { switch (tagName) {
165
+ case "pdf-download":
166
+ if (!customElements.get(tagName)) {
167
+ customElements.define(tagName, PdfDownload);
168
+ }
169
+ break;
170
+ case "calcite-icon":
171
+ if (!customElements.get(tagName)) {
172
+ defineCustomElement$3();
173
+ }
174
+ break;
175
+ case "calcite-option":
176
+ if (!customElements.get(tagName)) {
177
+ defineCustomElement$2();
178
+ }
179
+ break;
180
+ case "calcite-select":
181
+ if (!customElements.get(tagName)) {
182
+ defineCustomElement$1();
183
+ }
184
+ break;
185
+ } });
186
+ }
187
+ defineCustomElement();
188
+
189
+ export { PdfDownload as P, defineCustomElement as d };
@@ -0,0 +1,255 @@
1
+ /*!
2
+ * Copyright 2022 Esri
3
+ * Licensed under the Apache License, Version 2.0
4
+ * http://www.apache.org/licenses/LICENSE-2.0
5
+ */
6
+ import { proxyCustomElement, HTMLElement, createEvent, h, Fragment } from '@stencil/core/internal/client';
7
+ import { I as ICON_TYPES } from './resources.js';
8
+ import { b as getSlotted, t as toAriaBoolean } from './dom.js';
9
+ import { c as connectConditionalSlotComponent, d as disconnectConditionalSlotComponent } from './conditionalSlot.js';
10
+ import { u as updateHostInteraction } from './interactive.js';
11
+ import { d as defineCustomElement$3 } from './action.js';
12
+ import { d as defineCustomElement$2 } from './icon.js';
13
+ import { d as defineCustomElement$1 } from './loader.js';
14
+
15
+ /*!
16
+ * All material copyright ESRI, All Rights Reserved, unless otherwise specified.
17
+ * See https://github.com/Esri/calcite-components/blob/master/LICENSE.md for details.
18
+ * v1.0.0-beta.97
19
+ */
20
+ const CSS = {
21
+ actions: "actions",
22
+ actionsEnd: "actions--end",
23
+ actionsStart: "actions--start",
24
+ description: "description",
25
+ handle: "handle",
26
+ handleActivated: "handle--activated",
27
+ highlight: "highlight",
28
+ icon: "icon",
29
+ iconDot: "icon-dot",
30
+ label: "label",
31
+ remove: "remove",
32
+ title: "title",
33
+ textContainer: "text-container"
34
+ };
35
+ const ICONS = {
36
+ checked: "check",
37
+ remove: "x"
38
+ };
39
+ const SLOTS = {
40
+ actionsEnd: "actions-end",
41
+ actionsStart: "actions-start"
42
+ };
43
+ const TEXT = {
44
+ remove: "Remove"
45
+ };
46
+
47
+ const pickListItemCss = "@charset \"UTF-8\";@keyframes in{0%{opacity:0}100%{opacity:1}}@keyframes in-down{0%{opacity:0;transform:translate3D(0, -5px, 0)}100%{opacity:1;transform:translate3D(0, 0, 0)}}@keyframes in-up{0%{opacity:0;transform:translate3D(0, 5px, 0)}100%{opacity:1;transform:translate3D(0, 0, 0)}}@keyframes in-scale{0%{opacity:0;transform:scale3D(0.95, 0.95, 1)}100%{opacity:1;transform:scale3D(1, 1, 1)}}:root{--calcite-animation-timing:calc(150ms * var(--calcite-internal-duration-factor));--calcite-internal-duration-factor:var(--calcite-duration-factor, 1);--calcite-internal-animation-timing-fast:calc(100ms * var(--calcite-internal-duration-factor));--calcite-internal-animation-timing-medium:calc(200ms * var(--calcite-internal-duration-factor));--calcite-internal-animation-timing-slow:calc(300ms * var(--calcite-internal-duration-factor))}.calcite-animate{opacity:0;animation-fill-mode:both;animation-duration:var(--calcite-animation-timing)}.calcite-animate__in{animation-name:in}.calcite-animate__in-down{animation-name:in-down}.calcite-animate__in-up{animation-name:in-up}.calcite-animate__in-scale{animation-name:in-scale}@media (prefers-reduced-motion: reduce){:root{--calcite-internal-duration-factor:0.01}}:root{--calcite-floating-ui-transition:var(--calcite-animation-timing)}:host([hidden]){display:none}:host([disabled]){pointer-events:none;cursor:default;-webkit-user-select:none;-moz-user-select:none;user-select:none;opacity:var(--calcite-ui-opacity-disabled)}:host{margin:0px;-webkit-margin-after:1px;margin-block-end:1px;box-sizing:border-box;display:flex;align-items:stretch;background-color:var(--calcite-ui-foreground-1);font-size:var(--calcite-font-size--1);line-height:1rem;color:var(--calcite-ui-text-1);--tw-shadow:0 1px 0 var(--calcite-ui-border-3);--tw-shadow-colored:0 1px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);transition:background-color var(--calcite-animation-timing);animation:calcite-fade-in var(--calcite-animation-timing)}:host *{box-sizing:border-box}.label{display:flex;flex:1 1 auto;cursor:pointer;align-items:center;background-color:transparent;outline-color:transparent}.label:focus{outline:2px solid var(--calcite-ui-brand);outline-offset:-2px}.label:hover{background-color:var(--calcite-ui-foreground-2)}:host([non-interactive]:hover){background-color:var(--calcite-ui-foreground-1)}:host([non-interactive]) .label,:host([non-interactive]) .icon{pointer-events:none}.icon{margin-block:0px;display:flex;cursor:pointer;align-items:center;padding:0.25rem;color:var(--calcite-ui-brand);flex:0 0 auto;line-height:0}.icon:hover{background-color:var(--calcite-ui-foreground-2)}.icon-dot{display:flex;inline-size:1.5rem;align-items:center;padding:0.5rem}.icon-dot:before{opacity:0;content:\"•\"}.icon calcite-icon{opacity:0}:host([selected]) .icon-dot:before,:host([selected]) .icon calcite-icon{transition:opacity var(--calcite-animation-timing);opacity:1}.text-container{pointer-events:none;display:flex;flex-direction:column;flex-wrap:nowrap;overflow:hidden;padding-block:0.5rem;padding-inline:0.75rem;font-size:var(--calcite-font-size--2);line-height:1.375;word-wrap:break-word;word-break:break-word}.title{font-weight:var(--calcite-font-weight-normal);color:var(--calcite-ui-text-1)}.description{-webkit-margin-before:0.125rem;margin-block-start:0.125rem;font-weight:var(--calcite-font-weight-normal);color:var(--calcite-ui-text-3)}.actions{margin:0px;display:flex;flex:0 1 auto;align-items:stretch;justify-content:flex-end}.actions--start~.label{-webkit-padding-start:0.25rem;padding-inline-start:0.25rem}:host([disabled]) ::slotted([calcite-hydrated][disabled]),:host([disabled]) [calcite-hydrated][disabled]{opacity:1}";
48
+
49
+ const PickListItem = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
50
+ constructor() {
51
+ super();
52
+ this.__registerHost();
53
+ this.__attachShadow();
54
+ this.calciteListItemChange = createEvent(this, "calciteListItemChange", 6);
55
+ this.calciteListItemRemove = createEvent(this, "calciteListItemRemove", 7);
56
+ this.calciteInternalListItemPropsChange = createEvent(this, "calciteInternalListItemPropsChange", 6);
57
+ this.calciteInternalListItemValueChange = createEvent(this, "calciteInternalListItemValueChange", 6);
58
+ /**
59
+ * When `true`, interaction is prevented and the component is displayed with lower opacity.
60
+ */
61
+ this.disabled = false;
62
+ /**
63
+ * When `false`, the component cannot be deselected by user interaction.
64
+ */
65
+ this.disableDeselect = false;
66
+ /**
67
+ * @internal
68
+ */
69
+ this.nonInteractive = false;
70
+ /**
71
+ * Determines the icon SVG symbol that will be shown. Options are `"circle"`, `"square"`, `"grip"` or `null`.
72
+ *
73
+ * @see [ICON_TYPES](https://github.com/Esri/calcite-components/blob/master/src/components/pick-list/resources.ts#L5)
74
+ */
75
+ this.icon = null;
76
+ /**
77
+ * When `true`, displays a remove action that removes the item from the list.
78
+ */
79
+ this.removable = false;
80
+ /**
81
+ * When `true`, selects an item. Toggles when an item is checked/unchecked.
82
+ */
83
+ this.selected = false;
84
+ /**
85
+ * When `removable` is `true`, the accessible name for the component's remove button.
86
+ *
87
+ * @default "Remove"
88
+ */
89
+ this.intlRemove = TEXT.remove;
90
+ // --------------------------------------------------------------------------
91
+ //
92
+ // Private Methods
93
+ //
94
+ // --------------------------------------------------------------------------
95
+ this.pickListClickHandler = (event) => {
96
+ if (this.disabled || (this.disableDeselect && this.selected) || this.nonInteractive) {
97
+ return;
98
+ }
99
+ this.shiftPressed = event.shiftKey;
100
+ this.selected = !this.selected;
101
+ };
102
+ this.pickListKeyDownHandler = (event) => {
103
+ if (event.key === " ") {
104
+ event.preventDefault();
105
+ if ((this.disableDeselect && this.selected) || this.nonInteractive) {
106
+ return;
107
+ }
108
+ this.selected = !this.selected;
109
+ }
110
+ };
111
+ this.removeClickHandler = () => {
112
+ this.calciteListItemRemove.emit();
113
+ };
114
+ }
115
+ descriptionWatchHandler() {
116
+ this.calciteInternalListItemPropsChange.emit();
117
+ }
118
+ labelWatchHandler() {
119
+ this.calciteInternalListItemPropsChange.emit();
120
+ }
121
+ metadataWatchHandler() {
122
+ this.calciteInternalListItemPropsChange.emit();
123
+ }
124
+ selectedWatchHandler() {
125
+ this.calciteListItemChange.emit({
126
+ item: this.el,
127
+ value: this.value,
128
+ selected: this.selected,
129
+ shiftPressed: this.shiftPressed
130
+ });
131
+ this.shiftPressed = false;
132
+ }
133
+ valueWatchHandler(newValue, oldValue) {
134
+ this.calciteInternalListItemValueChange.emit({ oldValue, newValue });
135
+ }
136
+ // --------------------------------------------------------------------------
137
+ //
138
+ // Lifecycle
139
+ //
140
+ // --------------------------------------------------------------------------
141
+ connectedCallback() {
142
+ connectConditionalSlotComponent(this);
143
+ }
144
+ disconnectedCallback() {
145
+ disconnectConditionalSlotComponent(this);
146
+ }
147
+ componentDidRender() {
148
+ updateHostInteraction(this, this.el.closest("calcite-pick-list") ? "managed" : false);
149
+ }
150
+ // --------------------------------------------------------------------------
151
+ //
152
+ // Public Methods
153
+ //
154
+ // --------------------------------------------------------------------------
155
+ /**
156
+ * Toggles the selection state. By default this won't trigger an event.
157
+ * The first argument allows the value to be coerced, rather than swapping values.
158
+ *
159
+ * @param coerce
160
+ */
161
+ async toggleSelected(coerce) {
162
+ this.selected = typeof coerce === "boolean" ? coerce : !this.selected;
163
+ }
164
+ /** Sets focus on the component. */
165
+ async setFocus() {
166
+ var _a;
167
+ (_a = this.focusEl) === null || _a === void 0 ? void 0 : _a.focus();
168
+ }
169
+ // --------------------------------------------------------------------------
170
+ //
171
+ // Render Methods
172
+ //
173
+ // --------------------------------------------------------------------------
174
+ renderIcon() {
175
+ const { icon } = this;
176
+ if (!icon) {
177
+ return null;
178
+ }
179
+ return (h("span", { class: {
180
+ [CSS.icon]: true,
181
+ [CSS.iconDot]: icon === ICON_TYPES.circle
182
+ }, onClick: this.pickListClickHandler }, icon === ICON_TYPES.square ? h("calcite-icon", { icon: ICONS.checked, scale: "s" }) : null));
183
+ }
184
+ renderRemoveAction() {
185
+ return this.removable ? (h("calcite-action", { class: CSS.remove, icon: ICONS.remove, onCalciteActionClick: this.removeClickHandler, slot: SLOTS.actionsEnd, text: this.intlRemove })) : null;
186
+ }
187
+ renderActionsStart() {
188
+ const { el } = this;
189
+ const hasActionsStart = getSlotted(el, SLOTS.actionsStart);
190
+ return hasActionsStart ? (h("div", { class: { [CSS.actions]: true, [CSS.actionsStart]: true } }, h("slot", { name: SLOTS.actionsStart }))) : null;
191
+ }
192
+ renderActionsEnd() {
193
+ const { el, removable } = this;
194
+ const hasActionsEnd = getSlotted(el, SLOTS.actionsEnd);
195
+ return hasActionsEnd || removable ? (h("div", { class: { [CSS.actions]: true, [CSS.actionsEnd]: true } }, h("slot", { name: SLOTS.actionsEnd }), this.renderRemoveAction())) : null;
196
+ }
197
+ render() {
198
+ const { description, label } = this;
199
+ return (h(Fragment, null, this.renderIcon(), this.renderActionsStart(), h("label", { "aria-label": label, class: CSS.label, onClick: this.pickListClickHandler, onKeyDown: this.pickListKeyDownHandler, ref: (focusEl) => (this.focusEl = focusEl), tabIndex: 0 }, h("div", { "aria-checked": toAriaBoolean(this.selected), class: CSS.textContainer, role: "menuitemcheckbox" }, h("span", { class: CSS.title }, label), description ? h("span", { class: CSS.description }, description) : null)), this.renderActionsEnd()));
200
+ }
201
+ get el() { return this; }
202
+ static get watchers() { return {
203
+ "description": ["descriptionWatchHandler"],
204
+ "label": ["labelWatchHandler"],
205
+ "metadata": ["metadataWatchHandler"],
206
+ "selected": ["selectedWatchHandler"],
207
+ "value": ["valueWatchHandler"]
208
+ }; }
209
+ static get style() { return pickListItemCss; }
210
+ }, [1, "calcite-pick-list-item", {
211
+ "description": [513],
212
+ "disabled": [516],
213
+ "disableDeselect": [516, "disable-deselect"],
214
+ "nonInteractive": [516, "non-interactive"],
215
+ "icon": [513],
216
+ "label": [513],
217
+ "metadata": [16],
218
+ "removable": [516],
219
+ "selected": [1540],
220
+ "intlRemove": [513, "intl-remove"],
221
+ "value": [8],
222
+ "toggleSelected": [64],
223
+ "setFocus": [64]
224
+ }]);
225
+ function defineCustomElement() {
226
+ if (typeof customElements === "undefined") {
227
+ return;
228
+ }
229
+ const components = ["calcite-pick-list-item", "calcite-action", "calcite-icon", "calcite-loader"];
230
+ components.forEach(tagName => { switch (tagName) {
231
+ case "calcite-pick-list-item":
232
+ if (!customElements.get(tagName)) {
233
+ customElements.define(tagName, PickListItem);
234
+ }
235
+ break;
236
+ case "calcite-action":
237
+ if (!customElements.get(tagName)) {
238
+ defineCustomElement$3();
239
+ }
240
+ break;
241
+ case "calcite-icon":
242
+ if (!customElements.get(tagName)) {
243
+ defineCustomElement$2();
244
+ }
245
+ break;
246
+ case "calcite-loader":
247
+ if (!customElements.get(tagName)) {
248
+ defineCustomElement$1();
249
+ }
250
+ break;
251
+ } });
252
+ }
253
+ defineCustomElement();
254
+
255
+ export { CSS as C, PickListItem as P, SLOTS as S, defineCustomElement as d };
@@ -0,0 +1,170 @@
1
+ /*!
2
+ * Copyright 2022 Esri
3
+ * Licensed under the Apache License, Version 2.0
4
+ * http://www.apache.org/licenses/LICENSE-2.0
5
+ */
6
+ import { proxyCustomElement, HTMLElement, createEvent, h } from '@stencil/core/internal/client';
7
+ import { I as ICON_TYPES } from './resources.js';
8
+ import { m as mutationObserverCallback, d as deselectRemovedItems, a as deselectSiblingItems, s as selectSiblings, h as handleFilter, g as getItemData, k as keyDownHandler, i as initialize, b as initializeObserver, c as cleanUpObserver, r as removeItem, e as calciteListItemChangeHandler, f as calciteInternalListItemValueChangeHandler, j as calciteListFocusOutHandler, l as setUpItems, n as setFocus, L as List } from './shared-list-render.js';
9
+ import { c as createObserver } from './observers.js';
10
+ import { u as updateHostInteraction } from './interactive.js';
11
+
12
+ const pickListCss = "@keyframes in{0%{opacity:0}100%{opacity:1}}@keyframes in-down{0%{opacity:0;transform:translate3D(0, -5px, 0)}100%{opacity:1;transform:translate3D(0, 0, 0)}}@keyframes in-up{0%{opacity:0;transform:translate3D(0, 5px, 0)}100%{opacity:1;transform:translate3D(0, 0, 0)}}@keyframes in-scale{0%{opacity:0;transform:scale3D(0.95, 0.95, 1)}100%{opacity:1;transform:scale3D(1, 1, 1)}}:root{--calcite-animation-timing:calc(150ms * var(--calcite-internal-duration-factor));--calcite-internal-duration-factor:var(--calcite-duration-factor, 1);--calcite-internal-animation-timing-fast:calc(100ms * var(--calcite-internal-duration-factor));--calcite-internal-animation-timing-medium:calc(200ms * var(--calcite-internal-duration-factor));--calcite-internal-animation-timing-slow:calc(300ms * var(--calcite-internal-duration-factor))}.calcite-animate{opacity:0;animation-fill-mode:both;animation-duration:var(--calcite-animation-timing)}.calcite-animate__in{animation-name:in}.calcite-animate__in-down{animation-name:in-down}.calcite-animate__in-up{animation-name:in-up}.calcite-animate__in-scale{animation-name:in-scale}@media (prefers-reduced-motion: reduce){:root{--calcite-internal-duration-factor:0.01}}:root{--calcite-floating-ui-transition:var(--calcite-animation-timing)}:host([hidden]){display:none}:host([disabled]){pointer-events:none;cursor:default;-webkit-user-select:none;-moz-user-select:none;user-select:none;opacity:var(--calcite-ui-opacity-disabled)}:host{position:relative;box-sizing:border-box;display:flex;flex-shrink:0;flex-grow:1;flex-direction:column;align-items:stretch;background-color:transparent;font-size:var(--calcite-font-size--1);line-height:1rem;color:var(--calcite-ui-text-2)}:host *{box-sizing:border-box}:host([disabled]) ::slotted([calcite-hydrated][disabled]),:host([disabled]) [calcite-hydrated][disabled]{opacity:1}:host([filter-enabled]) header{-webkit-margin-after:0.25rem;margin-block-end:0.25rem;display:flex;align-items:stretch;justify-content:flex-end;background-color:var(--calcite-ui-foreground-1);--tw-shadow:0 1px 0 var(--calcite-ui-border-3);--tw-shadow-colored:0 1px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow)}:host([filter-enabled]) header.sticky-pos{position:sticky;inset-block-start:0px;z-index:1}calcite-filter{-webkit-margin-after:0px;margin-block-end:0px}:host([loading][disabled]){min-block-size:2rem}";
13
+
14
+ const PickList = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
15
+ constructor() {
16
+ super();
17
+ this.__registerHost();
18
+ this.__attachShadow();
19
+ this.calciteListChange = createEvent(this, "calciteListChange", 6);
20
+ // --------------------------------------------------------------------------
21
+ //
22
+ // Properties
23
+ //
24
+ // --------------------------------------------------------------------------
25
+ /**
26
+ * When `true`, interaction is prevented and the component is displayed with lower opacity.
27
+ */
28
+ this.disabled = false;
29
+ /**
30
+ * When `true`, an input appears at the top of the list that can be used by end users to filter items in the list.
31
+ */
32
+ this.filterEnabled = false;
33
+ /**
34
+ * When `true`, a busy indicator is displayed.
35
+ */
36
+ this.loading = false;
37
+ /**
38
+ * Similar to standard radio buttons and checkboxes.
39
+ * When `true`, a user can select multiple `calcite-pick-list-item`s at a time.
40
+ * When `false`, only a single `calcite-pick-list-item` can be selected at a time,
41
+ * and a new selection will deselect previous selections.
42
+ */
43
+ this.multiple = false;
44
+ /**
45
+ * When `true` and single selection is enabled, the selection changes when navigating `calcite-pick-list-item`s via keyboard.
46
+ */
47
+ this.selectionFollowsFocus = false;
48
+ // --------------------------------------------------------------------------
49
+ //
50
+ // Private Properties
51
+ //
52
+ // --------------------------------------------------------------------------
53
+ this.selectedValues = new Map();
54
+ this.dataForFilter = [];
55
+ this.lastSelectedItem = null;
56
+ this.mutationObserver = createObserver("mutation", mutationObserverCallback.bind(this));
57
+ this.setFilterEl = (el) => {
58
+ this.filterEl = el;
59
+ };
60
+ this.deselectRemovedItems = deselectRemovedItems.bind(this);
61
+ this.deselectSiblingItems = deselectSiblingItems.bind(this);
62
+ this.selectSiblings = selectSiblings.bind(this);
63
+ this.handleFilter = handleFilter.bind(this);
64
+ this.getItemData = getItemData.bind(this);
65
+ this.keyDownHandler = keyDownHandler.bind(this);
66
+ }
67
+ // --------------------------------------------------------------------------
68
+ //
69
+ // Lifecycle
70
+ //
71
+ // --------------------------------------------------------------------------
72
+ connectedCallback() {
73
+ initialize.call(this);
74
+ initializeObserver.call(this);
75
+ }
76
+ disconnectedCallback() {
77
+ cleanUpObserver.call(this);
78
+ }
79
+ componentDidRender() {
80
+ updateHostInteraction(this);
81
+ }
82
+ calciteListItemRemoveHandler(event) {
83
+ removeItem.call(this, event);
84
+ }
85
+ calciteListItemChangeHandler(event) {
86
+ calciteListItemChangeHandler.call(this, event);
87
+ }
88
+ calciteInternalListItemPropsChangeHandler(event) {
89
+ event.stopPropagation();
90
+ this.setUpFilter();
91
+ }
92
+ calciteInternalListItemValueChangeHandler(event) {
93
+ calciteInternalListItemValueChangeHandler.call(this, event);
94
+ event.stopPropagation();
95
+ }
96
+ calciteListFocusOutHandler(event) {
97
+ calciteListFocusOutHandler.call(this, event);
98
+ }
99
+ // --------------------------------------------------------------------------
100
+ //
101
+ // Private Methods
102
+ //
103
+ // --------------------------------------------------------------------------
104
+ setUpItems() {
105
+ setUpItems.call(this, "calcite-pick-list-item");
106
+ }
107
+ setUpFilter() {
108
+ if (this.filterEnabled) {
109
+ this.dataForFilter = this.getItemData();
110
+ }
111
+ }
112
+ // --------------------------------------------------------------------------
113
+ //
114
+ // Public Methods
115
+ //
116
+ // --------------------------------------------------------------------------
117
+ /** Returns the component's selected `calcite-pick-list-item`s. */
118
+ async getSelectedItems() {
119
+ return this.selectedValues;
120
+ }
121
+ /**
122
+ * Sets focus on the component.
123
+ *
124
+ * @param focusId
125
+ */
126
+ async setFocus(focusId) {
127
+ return setFocus.call(this, focusId);
128
+ }
129
+ // --------------------------------------------------------------------------
130
+ //
131
+ // Render Methods
132
+ //
133
+ // --------------------------------------------------------------------------
134
+ getIconType() {
135
+ return this.multiple ? ICON_TYPES.square : ICON_TYPES.circle;
136
+ }
137
+ render() {
138
+ return h(List, { onKeyDown: this.keyDownHandler, props: this });
139
+ }
140
+ get el() { return this; }
141
+ static get style() { return pickListCss; }
142
+ }, [1, "calcite-pick-list", {
143
+ "disabled": [516],
144
+ "filterEnabled": [516, "filter-enabled"],
145
+ "filterPlaceholder": [513, "filter-placeholder"],
146
+ "headingLevel": [514, "heading-level"],
147
+ "loading": [516],
148
+ "multiple": [516],
149
+ "selectionFollowsFocus": [516, "selection-follows-focus"],
150
+ "selectedValues": [32],
151
+ "dataForFilter": [32],
152
+ "getSelectedItems": [64],
153
+ "setFocus": [64]
154
+ }, [[0, "calciteListItemRemove", "calciteListItemRemoveHandler"], [0, "calciteListItemChange", "calciteListItemChangeHandler"], [0, "calciteInternalListItemPropsChange", "calciteInternalListItemPropsChangeHandler"], [0, "calciteInternalListItemValueChange", "calciteInternalListItemValueChangeHandler"], [0, "focusout", "calciteListFocusOutHandler"]]]);
155
+ function defineCustomElement() {
156
+ if (typeof customElements === "undefined") {
157
+ return;
158
+ }
159
+ const components = ["calcite-pick-list"];
160
+ components.forEach(tagName => { switch (tagName) {
161
+ case "calcite-pick-list":
162
+ if (!customElements.get(tagName)) {
163
+ customElements.define(tagName, PickList);
164
+ }
165
+ break;
166
+ } });
167
+ }
168
+ defineCustomElement();
169
+
170
+ export { PickList as P, defineCustomElement as d };