@ccrpc/webmapgl 0.18.6 → 0.18.8
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.
- package/dist/cjs/app-globals-62694daf.js.map +1 -1
- package/dist/cjs/gl-address-search_52.cjs.entry.js +31 -30
- package/dist/cjs/gl-address-search_52.cjs.entry.js.map +1 -1
- package/dist/cjs/gl-draw-toolbar.cjs.entry.js +3 -3
- package/dist/cjs/gl-draw-toolbar.cjs.entry.js.map +1 -1
- package/dist/cjs/gl-facet_5.cjs.entry.js +1 -1
- package/dist/cjs/gl-facet_5.cjs.entry.js.map +1 -1
- package/dist/cjs/gl-like-button.cjs.entry.js +5 -5
- package/dist/cjs/gl-like-button.cjs.entry.js.map +1 -1
- package/dist/cjs/index.cjs.js +11 -0
- package/dist/cjs/index.cjs.js.map +1 -1
- package/dist/collection/components/address-search/address-search.js +4 -4
- package/dist/collection/components/address-search/address-search.js.map +1 -1
- package/dist/collection/components/app/app.js +1 -1
- package/dist/collection/components/app/app.js.map +1 -1
- package/dist/collection/components/attribute-values/attribute-values.js +1 -1
- package/dist/collection/components/basemaps/basemaps.js +2 -2
- package/dist/collection/components/basemaps/basemaps.js.map +1 -1
- package/dist/collection/components/download-button/download-button.js +3 -3
- package/dist/collection/components/download-button/download-button.js.map +1 -1
- package/dist/collection/components/download-list/download-list.js +2 -1
- package/dist/collection/components/download-list/download-list.js.map +1 -1
- package/dist/collection/components/draw-toolbar/draw-toolbar.js +4 -4
- package/dist/collection/components/draw-toolbar/draw-toolbar.js.map +1 -1
- package/dist/collection/components/drawer/drawer.js +4 -4
- package/dist/collection/components/drawer/drawer.js.map +1 -1
- package/dist/collection/components/drawer-toggle/drawer-toggle.js +1 -1
- package/dist/collection/components/drawer-toggle/drawer-toggle.js.map +1 -1
- package/dist/collection/components/feature-list/feature-list.js +1 -1
- package/dist/collection/components/form-page/form-page.js +2 -2
- package/dist/collection/components/form-page/form-page.js.map +1 -1
- package/dist/collection/components/fullscreen/fullscreen.js +1 -1
- package/dist/collection/components/fullscreen/fullscreen.js.map +1 -1
- package/dist/collection/components/legend-item/legend-item.js +2 -2
- package/dist/collection/components/legend-item/legend-item.js.map +1 -1
- package/dist/collection/components/like-button/like-button.js +6 -6
- package/dist/collection/components/like-button/like-button.js.map +1 -1
- package/dist/collection/components/share/share.js +3 -3
- package/dist/collection/components/share/share.js.map +1 -1
- package/dist/collection/components/share-button/share-button.js +2 -2
- package/dist/collection/components/share-button/share-button.js.map +1 -1
- package/dist/collection/components/story-button/story-button.js +4 -4
- package/dist/collection/components/story-button/story-button.js.map +1 -1
- package/dist/collection/components/style/style.js +3 -3
- package/dist/collection/components/table-column-visibility/table-column-visibility.js +1 -1
- package/dist/collection/components/table-column-visibility/table-column-visibility.js.map +1 -1
- package/dist/collection/components/table-column-visibility-button/table-column-visibility-button.js +3 -3
- package/dist/collection/components/table-column-visibility-button/table-column-visibility-button.js.map +1 -1
- package/dist/collection/components/table-export-button/table-export-button.js +1 -1
- package/dist/collection/components/table-export-button/table-export-button.js.map +1 -1
- package/dist/collection/global/webmapgl.js +1 -0
- package/dist/collection/global/webmapgl.js.map +1 -1
- package/dist/collection/index.js +2 -0
- package/dist/collection/index.js.map +1 -0
- package/dist/esm/app-globals-755c21e9.js.map +1 -1
- package/dist/esm/gl-address-search_52.entry.js +32 -31
- package/dist/esm/gl-address-search_52.entry.js.map +1 -1
- package/dist/esm/gl-draw-controller.entry.js +1 -1
- package/dist/esm/gl-draw-toolbar.entry.js +3 -3
- package/dist/esm/gl-draw-toolbar.entry.js.map +1 -1
- package/dist/esm/gl-facet_5.entry.js +2 -2
- package/dist/esm/gl-facet_5.entry.js.map +1 -1
- package/dist/esm/gl-feature-list.entry.js +1 -1
- package/dist/esm/gl-like-button.entry.js +6 -6
- package/dist/esm/gl-like-button.entry.js.map +1 -1
- package/dist/esm/gl-table-export-controller.entry.js +1 -1
- package/dist/esm/index.js +2 -1
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/polyfills/core-js.js +0 -0
- package/dist/esm/polyfills/dom.js +0 -0
- package/dist/esm/polyfills/es5-html-element.js +0 -0
- package/dist/esm/polyfills/index.js +0 -0
- package/dist/esm/polyfills/system.js +0 -0
- package/dist/esm/{utils-0af5fee1.js → utils-e86257fd.js} +2 -2
- package/dist/esm/{utils-0af5fee1.js.map → utils-e86257fd.js.map} +1 -1
- package/dist/node_modules/@ionic/core/dist/collection/components/accordion/accordion.ios.css +83 -0
- package/dist/node_modules/@ionic/core/dist/collection/components/accordion/accordion.md.css +80 -0
- package/dist/node_modules/@ionic/core/dist/collection/components/accordion-group/accordion-group.ios.css +17 -0
- package/dist/node_modules/@ionic/core/dist/collection/components/accordion-group/accordion-group.md.css +64 -0
- package/dist/node_modules/@ionic/core/dist/collection/components/action-sheet/action-sheet.ios.css +319 -0
- package/dist/node_modules/@ionic/core/dist/collection/components/action-sheet/action-sheet.md.css +259 -0
- package/dist/node_modules/@ionic/core/dist/collection/components/alert/alert.ios.css +503 -0
- package/dist/node_modules/@ionic/core/dist/collection/components/alert/alert.md.css +531 -0
- package/dist/node_modules/@ionic/core/dist/collection/components/app/app.css +17 -0
- package/dist/node_modules/@ionic/core/dist/collection/components/avatar/avatar.ios.css +22 -0
- package/dist/node_modules/@ionic/core/dist/collection/components/avatar/avatar.md.css +22 -0
- package/dist/node_modules/@ionic/core/dist/collection/components/back-button/back-button.ios.css +246 -0
- package/dist/node_modules/@ionic/core/dist/collection/components/back-button/back-button.md.css +269 -0
- package/dist/node_modules/@ionic/core/dist/collection/components/backdrop/backdrop.ios.css +26 -0
- package/dist/node_modules/@ionic/core/dist/collection/components/backdrop/backdrop.md.css +26 -0
- package/dist/node_modules/@ionic/core/dist/collection/components/badge/badge.ios.css +50 -0
- package/dist/node_modules/@ionic/core/dist/collection/components/badge/badge.md.css +54 -0
- package/dist/node_modules/@ionic/core/dist/collection/components/breadcrumb/breadcrumb.ios.css +205 -0
- package/dist/node_modules/@ionic/core/dist/collection/components/breadcrumb/breadcrumb.md.css +200 -0
- package/dist/node_modules/@ionic/core/dist/collection/components/breadcrumbs/breadcrumbs.ios.css +26 -0
- package/dist/node_modules/@ionic/core/dist/collection/components/breadcrumbs/breadcrumbs.md.css +25 -0
- package/dist/node_modules/@ionic/core/dist/collection/components/button/button.ios.css +431 -0
- package/dist/node_modules/@ionic/core/dist/collection/components/button/button.md.css +408 -0
- package/dist/node_modules/@ionic/core/dist/collection/components/buttons/buttons.ios.css +114 -0
- package/dist/node_modules/@ionic/core/dist/collection/components/buttons/buttons.md.css +134 -0
- package/dist/node_modules/@ionic/core/dist/collection/components/card/card.ios.css +93 -0
- package/dist/node_modules/@ionic/core/dist/collection/components/card/card.md.css +88 -0
- package/dist/node_modules/@ionic/core/dist/collection/components/card-content/card-content.ios.css +53 -0
- package/dist/node_modules/@ionic/core/dist/collection/components/card-content/card-content.md.css +55 -0
- package/dist/node_modules/@ionic/core/dist/collection/components/card-header/card-header.ios.css +31 -0
- package/dist/node_modules/@ionic/core/dist/collection/components/card-header/card-header.md.css +28 -0
- package/dist/node_modules/@ionic/core/dist/collection/components/card-subtitle/card-subtitle.ios.css +28 -0
- package/dist/node_modules/@ionic/core/dist/collection/components/card-subtitle/card-subtitle.md.css +26 -0
- package/dist/node_modules/@ionic/core/dist/collection/components/card-title/card-title.ios.css +27 -0
- package/dist/node_modules/@ionic/core/dist/collection/components/card-title/card-title.md.css +27 -0
- package/dist/node_modules/@ionic/core/dist/collection/components/checkbox/checkbox.ios.css +310 -0
- package/dist/node_modules/@ionic/core/dist/collection/components/checkbox/checkbox.md.css +326 -0
- package/dist/node_modules/@ionic/core/dist/collection/components/chip/chip.css +149 -0
- package/dist/node_modules/@ionic/core/dist/collection/components/col/col.css +68 -0
- package/dist/node_modules/@ionic/core/dist/collection/components/content/content.css +227 -0
- package/dist/node_modules/@ionic/core/dist/collection/components/datetime/datetime.ios.css +589 -0
- package/dist/node_modules/@ionic/core/dist/collection/components/datetime/datetime.md.css +561 -0
- package/dist/node_modules/@ionic/core/dist/collection/components/datetime-button/datetime-button.css +44 -0
- package/dist/node_modules/@ionic/core/dist/collection/components/fab/fab.css +98 -0
- package/dist/node_modules/@ionic/core/dist/collection/components/fab-button/fab-button.ios.css +312 -0
- package/dist/node_modules/@ionic/core/dist/collection/components/fab-button/fab-button.md.css +283 -0
- package/dist/node_modules/@ionic/core/dist/collection/components/fab-list/fab-list.css +123 -0
- package/dist/node_modules/@ionic/core/dist/collection/components/footer/footer.ios.css +36 -0
- package/dist/node_modules/@ionic/core/dist/collection/components/footer/footer.md.css +19 -0
- package/dist/node_modules/@ionic/core/dist/collection/components/grid/grid.css +103 -0
- package/dist/node_modules/@ionic/core/dist/collection/components/header/header.ios.css +106 -0
- package/dist/node_modules/@ionic/core/dist/collection/components/header/header.md.css +23 -0
- package/dist/node_modules/@ionic/core/dist/collection/components/img/img.css +12 -0
- package/dist/node_modules/@ionic/core/dist/collection/components/infinite-scroll/infinite-scroll.css +8 -0
- package/dist/node_modules/@ionic/core/dist/collection/components/infinite-scroll-content/infinite-scroll-content.ios.css +46 -0
- package/dist/node_modules/@ionic/core/dist/collection/components/infinite-scroll-content/infinite-scroll-content.md.css +46 -0
- package/dist/node_modules/@ionic/core/dist/collection/components/input/input.ios.css +635 -0
- package/dist/node_modules/@ionic/core/dist/collection/components/input/input.md.css +1077 -0
- package/dist/node_modules/@ionic/core/dist/collection/components/item/item.ios.css +646 -0
- package/dist/node_modules/@ionic/core/dist/collection/components/item/item.md.css +908 -0
- package/dist/node_modules/@ionic/core/dist/collection/components/item-divider/item-divider.ios.css +166 -0
- package/dist/node_modules/@ionic/core/dist/collection/components/item-divider/item-divider.md.css +232 -0
- package/dist/node_modules/@ionic/core/dist/collection/components/item-group/item-group.ios.css +3 -0
- package/dist/node_modules/@ionic/core/dist/collection/components/item-group/item-group.md.css +3 -0
- package/dist/node_modules/@ionic/core/dist/collection/components/item-option/item-option.ios.css +142 -0
- package/dist/node_modules/@ionic/core/dist/collection/components/item-option/item-option.md.css +136 -0
- package/dist/node_modules/@ionic/core/dist/collection/components/item-options/item-options.ios.css +121 -0
- package/dist/node_modules/@ionic/core/dist/collection/components/item-options/item-options.md.css +118 -0
- package/dist/node_modules/@ionic/core/dist/collection/components/item-sliding/item-sliding.css +66 -0
- package/dist/node_modules/@ionic/core/dist/collection/components/label/label.ios.css +164 -0
- package/dist/node_modules/@ionic/core/dist/collection/components/label/label.md.css +251 -0
- package/dist/node_modules/@ionic/core/dist/collection/components/list/list.ios.css +63 -0
- package/dist/node_modules/@ionic/core/dist/collection/components/list/list.md.css +104 -0
- package/dist/node_modules/@ionic/core/dist/collection/components/list-header/list-header.ios.css +107 -0
- package/dist/node_modules/@ionic/core/dist/collection/components/list-header/list-header.md.css +88 -0
- package/dist/node_modules/@ionic/core/dist/collection/components/loading/loading.ios.css +95 -0
- package/dist/node_modules/@ionic/core/dist/collection/components/loading/loading.md.css +86 -0
- package/dist/node_modules/@ionic/core/dist/collection/components/menu/menu.ios.css +167 -0
- package/dist/node_modules/@ionic/core/dist/collection/components/menu/menu.md.css +163 -0
- package/dist/node_modules/@ionic/core/dist/collection/components/menu-button/menu-button.ios.css +167 -0
- package/dist/node_modules/@ionic/core/dist/collection/components/menu-button/menu-button.md.css +170 -0
- package/dist/node_modules/@ionic/core/dist/collection/components/menu-toggle/menu-toggle.css +3 -0
- package/dist/node_modules/@ionic/core/dist/collection/components/modal/modal.ios.css +247 -0
- package/dist/node_modules/@ionic/core/dist/collection/components/modal/modal.md.css +162 -0
- package/dist/node_modules/@ionic/core/dist/collection/components/nav/nav.css +10 -0
- package/dist/node_modules/@ionic/core/dist/collection/components/note/note.ios.css +16 -0
- package/dist/node_modules/@ionic/core/dist/collection/components/note/note.md.css +17 -0
- package/dist/node_modules/@ionic/core/dist/collection/components/picker/picker.ios.css +257 -0
- package/dist/node_modules/@ionic/core/dist/collection/components/picker/picker.md.css +244 -0
- package/dist/node_modules/@ionic/core/dist/collection/components/picker-column/picker-column.ios.css +145 -0
- package/dist/node_modules/@ionic/core/dist/collection/components/picker-column/picker-column.md.css +136 -0
- package/dist/node_modules/@ionic/core/dist/collection/components/picker-column-internal/picker-column-internal.ios.css +75 -0
- package/dist/node_modules/@ionic/core/dist/collection/components/picker-column-internal/picker-column-internal.md.css +78 -0
- package/dist/node_modules/@ionic/core/dist/collection/components/picker-internal/picker-internal.ios.css +152 -0
- package/dist/node_modules/@ionic/core/dist/collection/components/picker-internal/picker-internal.md.css +148 -0
- package/dist/node_modules/@ionic/core/dist/collection/components/popover/popover.ios.css +250 -0
- package/dist/node_modules/@ionic/core/dist/collection/components/popover/popover.md.css +157 -0
- package/dist/node_modules/@ionic/core/dist/collection/components/progress-bar/progress-bar.ios.css +206 -0
- package/dist/node_modules/@ionic/core/dist/collection/components/progress-bar/progress-bar.md.css +206 -0
- package/dist/node_modules/@ionic/core/dist/collection/components/radio/radio.ios.css +331 -0
- package/dist/node_modules/@ionic/core/dist/collection/components/radio/radio.md.css +354 -0
- package/dist/node_modules/@ionic/core/dist/collection/components/range/range.ios.css +469 -0
- package/dist/node_modules/@ionic/core/dist/collection/components/range/range.md.css +614 -0
- package/dist/node_modules/@ionic/core/dist/collection/components/refresher/refresher.ios.css +211 -0
- package/dist/node_modules/@ionic/core/dist/collection/components/refresher/refresher.md.css +206 -0
- package/dist/node_modules/@ionic/core/dist/collection/components/reorder/reorder.ios.css +15 -0
- package/dist/node_modules/@ionic/core/dist/collection/components/reorder/reorder.md.css +15 -0
- package/dist/node_modules/@ionic/core/dist/collection/components/reorder-group/reorder-group.css +34 -0
- package/dist/node_modules/@ionic/core/dist/collection/components/ripple-effect/ripple-effect.css +58 -0
- package/dist/node_modules/@ionic/core/dist/collection/components/router-link/router-link.css +29 -0
- package/dist/node_modules/@ionic/core/dist/collection/components/router-outlet/route-outlet.css +10 -0
- package/dist/node_modules/@ionic/core/dist/collection/components/row/row.css +4 -0
- package/dist/node_modules/@ionic/core/dist/collection/components/searchbar/searchbar.ios.css +354 -0
- package/dist/node_modules/@ionic/core/dist/collection/components/searchbar/searchbar.md.css +339 -0
- package/dist/node_modules/@ionic/core/dist/collection/components/segment/segment.ios.css +59 -0
- package/dist/node_modules/@ionic/core/dist/collection/components/segment/segment.md.css +49 -0
- package/dist/node_modules/@ionic/core/dist/collection/components/segment-button/segment-button.ios.css +410 -0
- package/dist/node_modules/@ionic/core/dist/collection/components/segment-button/segment-button.md.css +396 -0
- package/dist/node_modules/@ionic/core/dist/collection/components/select/select.ios.css +552 -0
- package/dist/node_modules/@ionic/core/dist/collection/components/select/select.md.css +1025 -0
- package/dist/node_modules/@ionic/core/dist/collection/components/select-option/select-option.css +3 -0
- package/dist/node_modules/@ionic/core/dist/collection/components/select-popover/select-popover.ios.css +14 -0
- package/dist/node_modules/@ionic/core/dist/collection/components/select-popover/select-popover.md.css +37 -0
- package/dist/node_modules/@ionic/core/dist/collection/components/skeleton-text/skeleton-text.css +53 -0
- package/dist/node_modules/@ionic/core/dist/collection/components/spinner/spinner.css +177 -0
- package/dist/node_modules/@ionic/core/dist/collection/components/split-pane/split-pane.ios.css +92 -0
- package/dist/node_modules/@ionic/core/dist/collection/components/split-pane/split-pane.md.css +92 -0
- package/dist/node_modules/@ionic/core/dist/collection/components/tab/tab.css +4 -0
- package/dist/node_modules/@ionic/core/dist/collection/components/tab-bar/tab-bar.ios.css +87 -0
- package/dist/node_modules/@ionic/core/dist/collection/components/tab-bar/tab-bar.md.css +74 -0
- package/dist/node_modules/@ionic/core/dist/collection/components/tab-button/tab-button.ios.css +367 -0
- package/dist/node_modules/@ionic/core/dist/collection/components/tab-button/tab-button.md.css +391 -0
- package/dist/node_modules/@ionic/core/dist/collection/components/tabs/tabs.css +19 -0
- package/dist/node_modules/@ionic/core/dist/collection/components/text/text.css +3 -0
- package/dist/node_modules/@ionic/core/dist/collection/components/textarea/textarea.ios.css +693 -0
- package/dist/node_modules/@ionic/core/dist/collection/components/textarea/textarea.md.css +1142 -0
- package/dist/node_modules/@ionic/core/dist/collection/components/thumbnail/thumbnail.css +21 -0
- package/dist/node_modules/@ionic/core/dist/collection/components/title/title.ios.css +119 -0
- package/dist/node_modules/@ionic/core/dist/collection/components/title/title.md.css +47 -0
- package/dist/node_modules/@ionic/core/dist/collection/components/toast/toast.ios.css +284 -0
- package/dist/node_modules/@ionic/core/dist/collection/components/toast/toast.md.css +305 -0
- package/dist/node_modules/@ionic/core/dist/collection/components/toggle/toggle.ios.css +455 -0
- package/dist/node_modules/@ionic/core/dist/collection/components/toggle/toggle.md.css +400 -0
- package/dist/node_modules/@ionic/core/dist/collection/components/toolbar/toolbar.ios.css +161 -0
- package/dist/node_modules/@ionic/core/dist/collection/components/toolbar/toolbar.md.css +136 -0
- package/dist/node_modules/ionicons/dist/collection/components/icon/icon.css +101 -0
- package/dist/types/global/webmapgl.d.ts +1 -0
- package/dist/types/index.d.ts +1 -0
- package/dist/webmapgl/index.esm.js +1 -1
- package/dist/webmapgl/{p-29a0ba94.entry.js → p-10ecfbc1.entry.js} +3 -3
- package/dist/webmapgl/p-10ecfbc1.entry.js.map +1 -0
- package/dist/webmapgl/{p-d8674de4.js → p-1109414b.js} +2 -2
- package/dist/webmapgl/p-41aed25d.entry.js +8 -0
- package/dist/webmapgl/p-41aed25d.entry.js.map +1 -0
- package/dist/webmapgl/{p-9a52a393.entry.js → p-4bdbedef.entry.js} +2 -2
- package/dist/webmapgl/{p-43063806.entry.js → p-60c4d25c.entry.js} +2 -2
- package/dist/webmapgl/{p-47516d22.entry.js → p-725281ca.entry.js} +2 -2
- package/dist/webmapgl/{p-8d22e12f.entry.js → p-8e93527b.entry.js} +2 -2
- package/dist/webmapgl/p-8e93527b.entry.js.map +1 -0
- package/dist/webmapgl/p-b3dc2acc.js.map +1 -1
- package/dist/webmapgl/{p-96e77bf2.entry.js → p-c61eaf23.entry.js} +2 -2
- package/dist/webmapgl/p-c61eaf23.entry.js.map +1 -0
- package/dist/webmapgl/webmapgl.css +1 -1
- package/dist/webmapgl/webmapgl.esm.js +1 -1
- package/package.json +4 -3
- package/CHANGELOG.md +0 -234
- package/dist/webmapgl/p-29a0ba94.entry.js.map +0 -1
- package/dist/webmapgl/p-8d22e12f.entry.js.map +0 -1
- package/dist/webmapgl/p-96e77bf2.entry.js.map +0 -1
- package/dist/webmapgl/p-99a83939.entry.js +0 -8
- package/dist/webmapgl/p-99a83939.entry.js.map +0 -1
- /package/dist/webmapgl/{p-d8674de4.js.map → p-1109414b.js.map} +0 -0
- /package/dist/webmapgl/{p-9a52a393.entry.js.map → p-4bdbedef.entry.js.map} +0 -0
- /package/dist/webmapgl/{p-43063806.entry.js.map → p-60c4d25c.entry.js.map} +0 -0
- /package/dist/webmapgl/{p-47516d22.entry.js.map → p-725281ca.entry.js.map} +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"file":"gl-like-button.entry.cjs.js","mappings":";;;;;;;MAiBa,UAAU;;;;IA2Hb,gBAAW,GAAG;MACpB,IAAI,CAAC,IAAI,CAAC,QAAQ;QAAE,IAAI,CAAC,MAAM,EAAE,CAAC;KACnC,CAAC;iBA1HuB,CAAC;iBACA,KAAK;;;;qBASM,QAAQ;oBAKR,KAAK;;kBAUR,cAAc;mBAKb,MAAM;kBAK8B,MAAM;;;;;EA4B7E,MAAM,iBAAiB;IACrB,MAAM,IAAI,CAAC,QAAQ,EAAE,CAAC;GACvB;EAGD,MAAM,QAAQ;IACZ,IAAI,IAAI,CAAC,OAAO,IAAI,SAAS,EAAE;MAC7B,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;MACrD,IAAI,IAAI,CAAC,QAAQ,IAAI,SAAS,EAAE;QAC9B,IAAI,CAAC,QAAQ,GAAG,MAAMA,yBAAmB,CAAC,oBAAoB,CAAC,CAAC;OACjE;MACD,IAAI,CAAC,KAAK,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;MACtD,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC;KACnC;GACF;EAEO,MAAM,MAAM;;IAClB,IAAI,CAAC,KAAK,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC;IACzB,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;IAClC,IAAI,CAAA,MAAA,IAAI,CAAC,OAAO,0CAAE,UAAU,KAAI,SAAS;MACvC,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC;IACvD,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;;IAGrD,IAAI,OAAO,GAAG,KAAK,CAAC;IACpB,IAAI,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC;IACxC,IAAI;MACF,IAAI,IAAI,CAAC,QAAQ,IAAI,SAAS,EAAE;QAC9B,IAAI,CAAC,QAAQ,GAAG,MAAMA,yBAAmB,CAAC,oBAAoB,CAAC,CAAC;OACjE;MACD,MAAM,IAAI,CAAC,QAAQ,CAAC,MAAM,CACxB;QACE,IAAI,EAAE,SAAS;QACf,UAAU,EAAE;UACV,MAAM,EAAE,IAAI,CAAC,KAAK,GAAG,MAAM,GAAG,QAAQ;UACtC,UAAU,EAAE,IAAI,CAAC,OAAO,CAAC,EAAE;UAC3B,SAAS,EAAE,QAAQ;SACpB;OACF,EACD;QACE,GAAG,EAAE,IAAI,CAAC,GAAG;QACb,KAAK,EAAE,IAAI,CAAC,KAAK;QACjB,MAAM,EAAE,IAAI,CAAC,MAAM;QACnB,IAAI,EAAE,IAAI,CAAC,WAAW;OACvB,CACF,CAAC;MACF,OAAO,GAAG,IAAI,CAAC;KAChB;IAAC,OAAO,CAAC,EAAE,GAAE;IAEd,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC;MACf,OAAO,EAAE,OAAO;MAChB,OAAO,EAAE,IAAI,CAAC,OAAO;MACrB,MAAM,EAAE,IAAI,CAAC,KAAK,GAAG,MAAM,GAAG,QAAQ;MACtC,SAAS,EAAE,QAAQ;KACpB,CAAC,CAAC;GACJ;EAMD,MAAM;IACJ,QACEC,wBACE,IAAI,EAAC,OAAO,EACZ,OAAO,EAAE,IAAI,CAAC,WAAW,EACzB,QAAQ,EAAE,IAAI,CAAC,QAAQ,
|
|
1
|
+
{"file":"gl-like-button.entry.cjs.js","mappings":"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","names":["findOrCreateOnReady","h"],"sources":["src/components/like-button/like-button.tsx"],"sourcesContent":["import {\n h,\n Component,\n Element,\n Event,\n EventEmitter,\n Prop,\n State,\n Watch\n} from \"@stencil/core\";\nimport { LikeProxy } from \"../like-controller/like-proxy\";\nimport { findOrCreateOnReady } from \"../utils\";\nimport { Feature } from \"geojson\";\nimport { MapGeoJSONFeature } from \"maplibre-gl\";\n@Component({\n tag: \"gl-like-button\"\n})\nexport class LikeButton {\n @Element() el: HTMLGlLikeButtonElement;\n\n @State() count: number = 0;\n @State() liked: boolean = false;\n @State() proxy: LikeProxy;\n\n @State() likeCtrl: HTMLGlLikeControllerElement;\n @State() restCtrl: HTMLGlRestControllerElement;\n\n /**\n * The attribute which stores the number of likes this feature has received\n */\n @Prop() readonly attribute: string = \"_likes\";\n\n /**\n * Whether or not this like button is disabled\n */\n @Prop() readonly disabled: boolean = false;\n\n /**\n * The feature this like button is for\n */\n @Prop() readonly feature: Feature | MapGeoJSONFeature;\n\n /**\n * The icon for the like button if the user has not liked the feature\n */\n @Prop() readonly iconNo: string = \"star-outline\";\n\n /**\n * The icon for the like button if the user\n */\n @Prop() readonly iconYes: string = \"star\";\n\n /**\n * The HTTP method this like button uses to communicate a like\n */\n @Prop() readonly method: \"GET\" | \"POST\" | \"PATCH\" | \"PUT\" | \"DELETE\" = \"POST\";\n\n /**\n * The cors mode this like button uses to communicate\n */\n @Prop() readonly requestMode: RequestMode;\n\n /**\n * The authentication token this like button uses when communicating\n */\n @Prop() readonly token: string;\n\n /**\n * The url to the endpoint which which the like button communicates.\n * Most likely this will be the end point of a features-api instance.\n */\n @Prop() readonly url: string;\n\n /**\n * An event emitted when the user presses the like button\n */\n @Event() glLike: EventEmitter<{\n success: boolean;\n feature: Feature | MapGeoJSONFeature;\n action: \"like\" | \"unlike\";\n client_id: string;\n }>;\n\n async componentWillLoad() {\n await this.setState();\n }\n\n @Watch(\"feature\")\n async setState() {\n if (this.feature != undefined) {\n this.count = this.feature.properties[this.attribute];\n if (this.likeCtrl == undefined) {\n this.likeCtrl = await findOrCreateOnReady(\"gl-like-controller\");\n }\n this.proxy = await this.likeCtrl.create(this.feature);\n this.liked = this.proxy.isLiked();\n }\n }\n\n private async toggle() {\n this.liked = !this.liked;\n this.count += this.liked ? 1 : -1;\n if (this.feature?.properties != undefined)\n this.feature.properties[this.attribute] = this.count;\n this.liked ? this.proxy.like() : this.proxy.unlike();\n\n // Fail silently if request fails.\n let success = false;\n let clientId = this.proxy.getClientId();\n try {\n if (this.restCtrl == undefined) {\n this.restCtrl = await findOrCreateOnReady(\"gl-rest-controller\");\n }\n await this.restCtrl.create(\n {\n type: \"Feature\",\n properties: {\n action: this.liked ? \"like\" : \"unlike\",\n feature_id: this.feature.id,\n client_id: clientId\n }\n },\n {\n url: this.url,\n token: this.token,\n method: this.method,\n mode: this.requestMode\n }\n );\n success = true;\n } catch (e) {}\n\n this.glLike.emit({\n success: success,\n feature: this.feature,\n action: this.liked ? \"like\" : \"unlike\",\n client_id: clientId\n });\n }\n\n private likeClicked = () => {\n if (!this.disabled) this.toggle();\n };\n\n render() {\n return (\n <ion-button\n fill=\"clear\"\n onClick={this.likeClicked}\n disabled={this.disabled}\n aria-label=\"Like Button\"\n >\n <ion-icon\n slot=\"start\"\n name={this.liked ? this.iconYes : this.iconNo}\n aria-hidden=\"true\"\n ></ion-icon>\n <span class=\"gl-like-button-count\">{this.count}</span>\n </ion-button>\n );\n }\n}\n"],"version":3}
|
package/dist/cjs/index.cjs.js
CHANGED
|
@@ -1,4 +1,15 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
|
+
|
|
5
|
+
const utils = require('./utils-94ef970a.js');
|
|
6
|
+
require('./index-b8c5f2d4.js');
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
exports.fetchPdf = utils.fetchPdf;
|
|
11
|
+
exports.findOrCreateOnReady = utils.findOrCreateOnReady;
|
|
12
|
+
exports.getAbsoluteUrl = utils.getAbsoluteUrl;
|
|
13
|
+
exports.getMap = utils.getMap;
|
|
3
14
|
|
|
4
15
|
//# sourceMappingURL=index.cjs.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"file":"index.cjs.js","mappings":"
|
|
1
|
+
{"file":"index.cjs.js","mappings":";;;;;;;;;;;;","names":[],"sources":[],"sourcesContent":[],"version":3}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Host, h
|
|
1
|
+
import { Host, h } from "@stencil/core";
|
|
2
2
|
import { _t } from "../i18n/i18n";
|
|
3
3
|
import { findOrCreateOnReady } from "../utils";
|
|
4
4
|
export class AddressSearchBox {
|
|
@@ -100,7 +100,7 @@ export class AddressSearchBox {
|
|
|
100
100
|
let mapEl = this.el.closest("gl-map");
|
|
101
101
|
mapEl.map.fitBounds(result.bbox, {
|
|
102
102
|
maxZoom: this.maxZoom,
|
|
103
|
-
padding: this.zoomPadding
|
|
103
|
+
padding: this.zoomPadding
|
|
104
104
|
});
|
|
105
105
|
this.hasFocus = false;
|
|
106
106
|
}
|
|
@@ -111,7 +111,7 @@ export class AddressSearchBox {
|
|
|
111
111
|
bbox: this.bboxArray,
|
|
112
112
|
bounded: true,
|
|
113
113
|
jobId: this.jobId,
|
|
114
|
-
limit: this.limit
|
|
114
|
+
limit: this.limit
|
|
115
115
|
});
|
|
116
116
|
}
|
|
117
117
|
resultButtonFunction(result) {
|
|
@@ -120,7 +120,7 @@ export class AddressSearchBox {
|
|
|
120
120
|
renderResults() {
|
|
121
121
|
if (this.results.length === 0 || !this.hasValue || !this.hasFocus)
|
|
122
122
|
return null;
|
|
123
|
-
let items = this.results.map((result) => (h("ion-item", { button: true, onClick: this.resultButtonFunction(result) }, h("ion-icon", { name: "pin", slot: "start" }), h("ion-label", null, this.formatAddress(result.address, result.display)))));
|
|
123
|
+
let items = this.results.map((result) => (h("ion-item", { button: true, onClick: this.resultButtonFunction(result), "aria-label": "Address Result" }, h("ion-icon", { name: "pin", slot: "start", "aria-hidden": "true" }), h("ion-label", null, this.formatAddress(result.address, result.display)))));
|
|
124
124
|
return h("ion-list", { lines: "full" }, items);
|
|
125
125
|
}
|
|
126
126
|
handleChange() {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"address-search.js","sourceRoot":"","sources":["../../../src/components/address-search/address-search.tsx"],"names":[],"mappings":"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","sourcesContent":["import {\n Host,\n h,\n Component,\n Element,\n Listen,\n Prop,\n State,\n Watch,\n} from \"@stencil/core\";\nimport { Mode } from \"@ionic/core\";\nimport { _t } from \"../i18n/i18n\";\nimport { findOrCreateOnReady } from \"../utils\";\nimport {\n ForwardGeocodeOptions,\n GeocodeResponse,\n Address,\n} from \"../geocode-controller/geocode-interface\";\n\n@Component({\n styleUrls: {\n ios: \"address-search.ios.css\",\n md: \"address-search.md.css\",\n },\n tag: \"gl-address-search\",\n})\nexport class AddressSearchBox {\n private input?: HTMLIonSearchbarElement;\n private lazyGeocodeCtrl: HTMLGlGeocodeControllerElement;\n\n /**\n * @virtualProp {\"ios\" | \"md\"} mode - The mode determines which platform styles to use.\n */\n @Prop() readonly mode!: Mode;\n\n @Element() el: HTMLGlAddressSearchElement;\n\n @State() bboxArray: [number, number, number, number];\n @State() hasFocus: boolean = false;\n @State() hasValue: boolean = false;\n @State() results: GeocodeResponse[] = [];\n\n /** @internal */\n /**\n * Bounding box for the search in the format [west, south, east, north].\n */\n @Prop() readonly bbox: [number, number, number, number] | string;\n\n /**\n * Identifier for the geocode operation.\n */\n @Prop() readonly jobId: string = \"gl-address-search\";\n\n /**\n * Maximum number of results to display.\n */\n @Prop() readonly limit: number = 10;\n\n /**\n * Maximum level the map will zoom to when a result is selected (e.g., for point results).\n */\n @Prop() readonly maxZoom: number = 18;\n\n /**\n * Placeholder text displayed in the input element.\n */\n @Prop() readonly placeholder: string = _t(\"webmapgl.address-search.prompt\");\n\n /**\n * URL of the geocoding endpoint.\n */\n @Prop() readonly url: string;\n\n /**\n * Padding in pixels used when zooming to a selected result.\n */\n @Prop() readonly zoomPadding: number = 20;\n\n async componentWillLoad() {\n this.parseBbox();\n if (this.lazyGeocodeCtrl == undefined)\n this.lazyGeocodeCtrl = await findOrCreateOnReady(\"gl-geocode-controller\");\n }\n\n @Listen(\"glForwardGeocode\", { target: \"body\" })\n async handleGeocode(\n e: CustomEvent<{\n options: ForwardGeocodeOptions;\n response: GeocodeResponse[];\n }>\n ) {\n if (e.detail.options.jobId === this.jobId) this.results = e.detail.response;\n }\n\n @Listen(\"click\", { target: \"body\" })\n handleBodyClick() {\n this.hasFocus = false;\n }\n\n @Listen(\"keydown\")\n // @ts-ignore handleKey is listening to the key presses rather than being called elsewhere.\n private handleKey(e: KeyboardEvent) {\n if (e.key === \"ArrowUp\") this.handleUp(e);\n else if (e.key === \"ArrowDown\") this.handleDown(e);\n }\n\n private handleDown(e: KeyboardEvent) {\n let nextItem: Element;\n if (document.activeElement.tagName === \"ION-ITEM\") {\n this.unsetFocus();\n nextItem = document.activeElement.nextElementSibling;\n }\n if (nextItem == undefined) nextItem = this.el.querySelector(\"ion-item\");\n if (nextItem != null) {\n e.preventDefault();\n this.setFocus(nextItem);\n }\n }\n\n private handleUp(e: KeyboardEvent) {\n if (document.activeElement.tagName === \"ION-ITEM\") {\n e.preventDefault();\n this.unsetFocus();\n let prevItem = document.activeElement.previousElementSibling;\n if (prevItem != undefined) {\n this.setFocus(prevItem);\n } else if (this.input != undefined) {\n this.input.querySelector(\"input\").focus();\n }\n }\n }\n\n @Watch(\"bbox\")\n parseBbox() {\n this.bboxArray =\n typeof this.bbox === \"string\"\n ? (this.bbox.split(\",\").map((c) => parseFloat(c)) as [\n number,\n number,\n number,\n number\n ])\n : this.bbox;\n }\n\n private setFocus(el: Element) {\n let button = el.shadowRoot.querySelector(\"button\");\n button.focus();\n button.style.color = \"#3880ff\";\n }\n\n private unsetFocus() {\n let button = document.activeElement.shadowRoot.querySelector(\"button\");\n button.style.color = null;\n }\n\n private formatAddress(address: Address, displayName: string) {\n let parts = [];\n if (address.name != null && address.name !== address.city)\n parts.push(address.name);\n if (address.street != null) {\n parts.push(\n address.housenumber != null\n ? address.housenumber + \" \" + address.street\n : address.street\n );\n }\n if (address.city != null) parts.push(address.city);\n if (parts.length !== 0 && address.county != null)\n parts.push(address.county);\n if (parts.length !== 0) return parts.join(\", \");\n else return displayName;\n }\n\n private async selectResult(result: GeocodeResponse) {\n let mapEl = this.el.closest(\"gl-map\");\n mapEl.map.fitBounds(result.bbox, {\n maxZoom: this.maxZoom,\n padding: this.zoomPadding,\n });\n this.hasFocus = false;\n }\n\n private async geocode() {\n this.lazyGeocodeCtrl.forward({\n address: this.input.value,\n url: this.url,\n bbox: this.bboxArray,\n bounded: true,\n jobId: this.jobId,\n limit: this.limit,\n });\n }\n\n private resultButtonFunction(result: GeocodeResponse) {\n return () => this.selectResult(result);\n }\n\n private renderResults() {\n if (this.results.length === 0 || !this.hasValue || !this.hasFocus)\n return null;\n let items = this.results.map((result) => (\n <ion-item button={true} onClick={this.resultButtonFunction(result)}>\n <ion-icon name=\"pin\" slot=\"start\"></ion-icon>\n <ion-label>\n {this.formatAddress(result.address, result.display)}\n </ion-label>\n </ion-item>\n ));\n return <ion-list lines=\"full\">{items}</ion-list>;\n }\n\n private handleChange() {\n if (this.input?.value != undefined) {\n this.hasValue = true;\n this.geocode();\n } else {\n this.hasValue = false;\n if (this.results.length !== 0) this.results = [];\n }\n }\n\n private handleFocus() {\n this.hasFocus = true;\n }\n\n private handleClick(e: MouseEvent) {\n // Prevent propagation of click events from the searchbar so that\n // it does not lose focus.\n e.stopPropagation();\n }\n\n private callChange = () => this.handleChange();\n private callFocus = () => this.handleFocus();\n private callClick = (e: MouseEvent) => this.handleClick(e);\n\n render() {\n return (\n <Host>\n <ion-searchbar\n ref={(r: HTMLIonSearchbarElement) => (this.input = r)}\n placeholder={this.placeholder}\n onIonChange={this.callChange}\n onIonFocus={this.callFocus}\n onClick={this.callClick}\n ></ion-searchbar>\n {this.renderResults()}\n </Host>\n );\n }\n}\n"]}
|
|
1
|
+
{"version":3,"file":"address-search.js","sourceRoot":"","sources":["../../../src/components/address-search/address-search.tsx"],"names":[],"mappings":"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","sourcesContent":["import {\n Host,\n h,\n Component,\n Element,\n Listen,\n Prop,\n State,\n Watch\n} from \"@stencil/core\";\nimport { Mode } from \"@ionic/core\";\nimport { _t } from \"../i18n/i18n\";\nimport { findOrCreateOnReady } from \"../utils\";\nimport {\n ForwardGeocodeOptions,\n GeocodeResponse,\n Address\n} from \"../geocode-controller/geocode-interface\";\n\n@Component({\n styleUrls: {\n ios: \"address-search.ios.css\",\n md: \"address-search.md.css\"\n },\n tag: \"gl-address-search\"\n})\nexport class AddressSearchBox {\n private input?: HTMLIonSearchbarElement;\n private lazyGeocodeCtrl: HTMLGlGeocodeControllerElement;\n\n /**\n * @virtualProp {\"ios\" | \"md\"} mode - The mode determines which platform styles to use.\n */\n @Prop() readonly mode!: Mode;\n\n @Element() el: HTMLGlAddressSearchElement;\n\n @State() bboxArray: [number, number, number, number];\n @State() hasFocus: boolean = false;\n @State() hasValue: boolean = false;\n @State() results: GeocodeResponse[] = [];\n\n /** @internal */\n /**\n * Bounding box for the search in the format [west, south, east, north].\n */\n @Prop() readonly bbox: [number, number, number, number] | string;\n\n /**\n * Identifier for the geocode operation.\n */\n @Prop() readonly jobId: string = \"gl-address-search\";\n\n /**\n * Maximum number of results to display.\n */\n @Prop() readonly limit: number = 10;\n\n /**\n * Maximum level the map will zoom to when a result is selected (e.g., for point results).\n */\n @Prop() readonly maxZoom: number = 18;\n\n /**\n * Placeholder text displayed in the input element.\n */\n @Prop() readonly placeholder: string = _t(\"webmapgl.address-search.prompt\");\n\n /**\n * URL of the geocoding endpoint.\n */\n @Prop() readonly url: string;\n\n /**\n * Padding in pixels used when zooming to a selected result.\n */\n @Prop() readonly zoomPadding: number = 20;\n\n async componentWillLoad() {\n this.parseBbox();\n if (this.lazyGeocodeCtrl == undefined)\n this.lazyGeocodeCtrl = await findOrCreateOnReady(\"gl-geocode-controller\");\n }\n\n @Listen(\"glForwardGeocode\", { target: \"body\" })\n async handleGeocode(\n e: CustomEvent<{\n options: ForwardGeocodeOptions;\n response: GeocodeResponse[];\n }>\n ) {\n if (e.detail.options.jobId === this.jobId) this.results = e.detail.response;\n }\n\n @Listen(\"click\", { target: \"body\" })\n handleBodyClick() {\n this.hasFocus = false;\n }\n\n @Listen(\"keydown\")\n // @ts-ignore handleKey is listening to the key presses rather than being called elsewhere.\n private handleKey(e: KeyboardEvent) {\n if (e.key === \"ArrowUp\") this.handleUp(e);\n else if (e.key === \"ArrowDown\") this.handleDown(e);\n }\n\n private handleDown(e: KeyboardEvent) {\n let nextItem: Element;\n if (document.activeElement.tagName === \"ION-ITEM\") {\n this.unsetFocus();\n nextItem = document.activeElement.nextElementSibling;\n }\n if (nextItem == undefined) nextItem = this.el.querySelector(\"ion-item\");\n if (nextItem != null) {\n e.preventDefault();\n this.setFocus(nextItem);\n }\n }\n\n private handleUp(e: KeyboardEvent) {\n if (document.activeElement.tagName === \"ION-ITEM\") {\n e.preventDefault();\n this.unsetFocus();\n let prevItem = document.activeElement.previousElementSibling;\n if (prevItem != undefined) {\n this.setFocus(prevItem);\n } else if (this.input != undefined) {\n this.input.querySelector(\"input\").focus();\n }\n }\n }\n\n @Watch(\"bbox\")\n parseBbox() {\n this.bboxArray =\n typeof this.bbox === \"string\"\n ? (this.bbox.split(\",\").map((c) => parseFloat(c)) as [\n number,\n number,\n number,\n number\n ])\n : this.bbox;\n }\n\n private setFocus(el: Element) {\n let button = el.shadowRoot.querySelector(\"button\");\n button.focus();\n button.style.color = \"#3880ff\";\n }\n\n private unsetFocus() {\n let button = document.activeElement.shadowRoot.querySelector(\"button\");\n button.style.color = null;\n }\n\n private formatAddress(address: Address, displayName: string) {\n let parts = [];\n if (address.name != null && address.name !== address.city)\n parts.push(address.name);\n if (address.street != null) {\n parts.push(\n address.housenumber != null\n ? address.housenumber + \" \" + address.street\n : address.street\n );\n }\n if (address.city != null) parts.push(address.city);\n if (parts.length !== 0 && address.county != null)\n parts.push(address.county);\n if (parts.length !== 0) return parts.join(\", \");\n else return displayName;\n }\n\n private async selectResult(result: GeocodeResponse) {\n let mapEl = this.el.closest(\"gl-map\");\n mapEl.map.fitBounds(result.bbox, {\n maxZoom: this.maxZoom,\n padding: this.zoomPadding\n });\n this.hasFocus = false;\n }\n\n private async geocode() {\n this.lazyGeocodeCtrl.forward({\n address: this.input.value,\n url: this.url,\n bbox: this.bboxArray,\n bounded: true,\n jobId: this.jobId,\n limit: this.limit\n });\n }\n\n private resultButtonFunction(result: GeocodeResponse) {\n return () => this.selectResult(result);\n }\n\n private renderResults() {\n if (this.results.length === 0 || !this.hasValue || !this.hasFocus)\n return null;\n let items = this.results.map((result) => (\n <ion-item\n button={true}\n onClick={this.resultButtonFunction(result)}\n aria-label=\"Address Result\"\n >\n <ion-icon name=\"pin\" slot=\"start\" aria-hidden=\"true\"></ion-icon>\n <ion-label>\n {this.formatAddress(result.address, result.display)}\n </ion-label>\n </ion-item>\n ));\n return <ion-list lines=\"full\">{items}</ion-list>;\n }\n\n private handleChange() {\n if (this.input?.value != undefined) {\n this.hasValue = true;\n this.geocode();\n } else {\n this.hasValue = false;\n if (this.results.length !== 0) this.results = [];\n }\n }\n\n private handleFocus() {\n this.hasFocus = true;\n }\n\n private handleClick(e: MouseEvent) {\n // Prevent propagation of click events from the searchbar so that\n // it does not lose focus.\n e.stopPropagation();\n }\n\n private callChange = () => this.handleChange();\n private callFocus = () => this.handleFocus();\n private callClick = (e: MouseEvent) => this.handleClick(e);\n\n render() {\n return (\n <Host>\n <ion-searchbar\n ref={(r: HTMLIonSearchbarElement) => (this.input = r)}\n placeholder={this.placeholder}\n onIonChange={this.callChange}\n onIonFocus={this.callFocus}\n onClick={this.callClick}\n ></ion-searchbar>\n {this.renderResults()}\n </Host>\n );\n }\n}\n"]}
|
|
@@ -21,7 +21,7 @@ export class App {
|
|
|
21
21
|
}
|
|
22
22
|
getMenuButton() {
|
|
23
23
|
if (this.menu === true)
|
|
24
|
-
return (h("ion-menu-toggle", null, h("ion-button",
|
|
24
|
+
return (h("ion-menu-toggle", null, h("ion-button", { "aria-label": "Menu Button" }, h("ion-icon", { "aria-hidden": "true", slot: "icon-only", name: "menu" }))));
|
|
25
25
|
}
|
|
26
26
|
getMain() {
|
|
27
27
|
return (h("div", { class: "pane-main", id: "main" }, h("ion-header", null, h("ion-toolbar", null, h("ion-buttons", { slot: "start" }, this.getMenuButton(), h("slot", { name: "start-buttons" })), h("ion-buttons", { slot: "end" }, h("slot", { name: "end-buttons" })), h("ion-title", null, this.label))), h("ion-content", { scrollX: false, scrollY: false, class: "map-content" }, h("div", { class: "fixed-content", slot: "fixed" }, h("slot", null))), h("slot", { name: "after-content" }), h("ion-footer", null, h("slot", { name: "footer" }))));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"app.js","sourceRoot":"","sources":["../../../src/components/app/app.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,SAAS,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AAC5D,OAAO,EAAE,EAAE,EAAE,MAAM,cAAc,CAAC;AAMlC,MAAM,OAAO,GAAG;;;gBAY8B,IAAI;qBAKX,EAAE,CAAC,wBAAwB,CAAC;qBAK3B,IAAI;oBAKiB,MAAM;;EAEjE,gBAAgB;IACd,IAAI,CAAC,EAAE,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC,SAAS,EAAE,CAAC;EAC9C,CAAC;EAEO,OAAO;IACb,IAAI,IAAI,CAAC,IAAI,KAAK,IAAI,EAAE;MACtB,OAAO,CACL,8BAAqB,MAAM,EAAC,IAAI,EAAE,IAAI,CAAC,QAAQ;QAC7C;UACE;YACE,qBAAY,IAAI,CAAC,SAAS,CAAa,CAC3B,CACH;QACb;UACE,WAAK,KAAK,EAAC,iBAAiB;YAC1B,YAAM,IAAI,EAAC,MAAM,GAAG,CAChB,CACM,CACL,CACZ,CAAC;KACH;SAAM,IAAI,IAAI,CAAC,IAAI,KAAK,QAAQ,EAAE;MACjC,OAAO,YAAM,IAAI,EAAC,MAAM,GAAG,CAAC;KAC7B;EACH,CAAC;EAEO,aAAa;IACnB,IAAI,IAAI,CAAC,IAAI,KAAK,IAAI;MACpB,OAAO,CACL;QACE;
|
|
1
|
+
{"version":3,"file":"app.js","sourceRoot":"","sources":["../../../src/components/app/app.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,SAAS,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AAC5D,OAAO,EAAE,EAAE,EAAE,MAAM,cAAc,CAAC;AAMlC,MAAM,OAAO,GAAG;;;gBAY8B,IAAI;qBAKX,EAAE,CAAC,wBAAwB,CAAC;qBAK3B,IAAI;oBAKiB,MAAM;;EAEjE,gBAAgB;IACd,IAAI,CAAC,EAAE,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC,SAAS,EAAE,CAAC;EAC9C,CAAC;EAEO,OAAO;IACb,IAAI,IAAI,CAAC,IAAI,KAAK,IAAI,EAAE;MACtB,OAAO,CACL,8BAAqB,MAAM,EAAC,IAAI,EAAE,IAAI,CAAC,QAAQ;QAC7C;UACE;YACE,qBAAY,IAAI,CAAC,SAAS,CAAa,CAC3B,CACH;QACb;UACE,WAAK,KAAK,EAAC,iBAAiB;YAC1B,YAAM,IAAI,EAAC,MAAM,GAAG,CAChB,CACM,CACL,CACZ,CAAC;KACH;SAAM,IAAI,IAAI,CAAC,IAAI,KAAK,QAAQ,EAAE;MACjC,OAAO,YAAM,IAAI,EAAC,MAAM,GAAG,CAAC;KAC7B;EACH,CAAC;EAEO,aAAa;IACnB,IAAI,IAAI,CAAC,IAAI,KAAK,IAAI;MACpB,OAAO,CACL;QACE,gCAAuB,aAAa;UAClC,+BACc,MAAM,EAClB,IAAI,EAAC,WAAW,EAChB,IAAI,EAAC,MAAM,GACD,CACD,CACG,CACnB,CAAC;EACN,CAAC;EAEO,OAAO;IACb,OAAO,CACL,WAAK,KAAK,EAAC,WAAW,EAAC,EAAE,EAAC,MAAM;MAC9B;QACE;UACE,mBAAa,IAAI,EAAC,OAAO;YACtB,IAAI,CAAC,aAAa,EAAE;YACrB,YAAM,IAAI,EAAC,eAAe,GAAG,CACjB;UACd,mBAAa,IAAI,EAAC,KAAK;YACrB,YAAM,IAAI,EAAC,aAAa,GAAG,CACf;UACd,qBAAY,IAAI,CAAC,KAAK,CAAa,CACvB,CACH;MACb,mBAAa,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAC,aAAa;QAC9D,WAAK,KAAK,EAAC,eAAe,EAAC,IAAI,EAAC,OAAO;UACrC,eAAQ,CACJ,CACM;MACd,YAAM,IAAI,EAAC,eAAe,GAAG;MAC7B;QACE,YAAM,IAAI,EAAC,QAAQ,GAAG,CACX,CACT,CACP,CAAC;EACJ,CAAC;EAED,MAAM;IACJ,IAAI,OAAO,GAAG,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC;IAC/C,IAAI,IAAI,CAAC,SAAS;MAChB,OAAO,GAAG,CAAC,oCAA2B,MAAM,IAAE,OAAO,CAAkB,CAAC,CAAC;IAC3E,OAAO,mBAAU,OAAO,CAAW,CAAC;EACtC,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CACF","sourcesContent":["import { h, Component, Element, Prop } from \"@stencil/core\";\nimport { _t } from \"../i18n/i18n\";\n\n@Component({\n tag: \"gl-app\",\n styleUrl: \"app.css\"\n})\nexport class App {\n @Element() el: HTMLGlAppElement;\n\n /**\n * Application name in the main title bar.\n */\n @Prop() readonly label: string;\n\n /**\n * Menu type. A value of `false` disables the menu, while a `custom` menu\n * type creates a menu slot.\n */\n @Prop() readonly menu: \"custom\" | boolean = true;\n\n /**\n * Heading text for the menu.\n */\n @Prop() readonly menuLabel: string = _t(\"webmapgl.app.menulabel\");\n\n /**\n * Should the application use `ion-split-pane` to display the menu?\n */\n @Prop() readonly splitPane: boolean = true;\n\n /**\n * What type of side menu to use, valid options are `push`, `overlay`, and `reveal`.\n */\n @Prop() readonly menuType: \"push\" | \"overlay\" | \"reveal\" = \"push\";\n\n componentDidLoad() {\n this.el.querySelector(\"gl-map\").resizeMap();\n }\n\n private getMenu() {\n if (this.menu === true) {\n return (\n <ion-menu content-id=\"main\" type={this.menuType}>\n <ion-header>\n <ion-toolbar>\n <ion-title>{this.menuLabel}</ion-title>\n </ion-toolbar>\n </ion-header>\n <ion-content>\n <div class=\"gl-menu-content\">\n <slot name=\"menu\" />\n </div>\n </ion-content>\n </ion-menu>\n );\n } else if (this.menu === \"custom\") {\n return <slot name=\"menu\" />;\n }\n }\n\n private getMenuButton() {\n if (this.menu === true)\n return (\n <ion-menu-toggle>\n <ion-button aria-label=\"Menu Button\">\n <ion-icon\n aria-hidden=\"true\"\n slot=\"icon-only\"\n name=\"menu\"\n ></ion-icon>\n </ion-button>\n </ion-menu-toggle>\n );\n }\n\n private getMain() {\n return (\n <div class=\"pane-main\" id=\"main\">\n <ion-header>\n <ion-toolbar>\n <ion-buttons slot=\"start\">\n {this.getMenuButton()}\n <slot name=\"start-buttons\" />\n </ion-buttons>\n <ion-buttons slot=\"end\">\n <slot name=\"end-buttons\" />\n </ion-buttons>\n <ion-title>{this.label}</ion-title>\n </ion-toolbar>\n </ion-header>\n <ion-content scrollX={false} scrollY={false} class=\"map-content\">\n <div class=\"fixed-content\" slot=\"fixed\">\n <slot />\n </div>\n </ion-content>\n <slot name=\"after-content\" />\n <ion-footer>\n <slot name=\"footer\" />\n </ion-footer>\n </div>\n );\n }\n\n render() {\n let content = [this.getMenu(), this.getMain()];\n if (this.splitPane)\n content = [<ion-split-pane content-id=\"main\">{content}</ion-split-pane>];\n return <ion-app>{content}</ion-app>;\n }\n}\n"]}
|
|
@@ -100,7 +100,7 @@ export class AttributeValues {
|
|
|
100
100
|
"references": {
|
|
101
101
|
"attributeOptions": {
|
|
102
102
|
"location": "local",
|
|
103
|
-
"path": "/var/home/fj44404@co.champaign.il.us/.local/code/webmapgl/src/components/attribute-values/attribute-values.tsx",
|
|
103
|
+
"path": "/run/host/var/home/fj44404@co.champaign.il.us/.local/code/webmapgl/src/components/attribute-values/attribute-values.tsx",
|
|
104
104
|
"id": "src/components/attribute-values/attribute-values.tsx::attributeOptions"
|
|
105
105
|
}
|
|
106
106
|
}
|
|
@@ -8,7 +8,7 @@ export class Basemaps {
|
|
|
8
8
|
async openPopover(ev) {
|
|
9
9
|
const options = {
|
|
10
10
|
component: document.createElement("gl-basemap-switcher"),
|
|
11
|
-
ev: ev
|
|
11
|
+
ev: ev
|
|
12
12
|
};
|
|
13
13
|
const popover = await popoverController.create(options);
|
|
14
14
|
await popover.present();
|
|
@@ -16,7 +16,7 @@ export class Basemaps {
|
|
|
16
16
|
}
|
|
17
17
|
render() {
|
|
18
18
|
let title = _t("webmapgl.basemaps.title");
|
|
19
|
-
return (h("ion-button", { onClick: this.selectBasemap, title: title }, h("ion-icon", { slot: "icon-only", name: "earth" })));
|
|
19
|
+
return (h("ion-button", { onClick: this.selectBasemap, title: title, "aria-label": title }, h("ion-icon", { "aria-hidden": "true", slot: "icon-only", name: "earth" })));
|
|
20
20
|
}
|
|
21
21
|
static get is() { return "gl-basemaps"; }
|
|
22
22
|
static get elementRef() { return "el"; }
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"basemaps.js","sourceRoot":"","sources":["../../../src/components/basemaps/basemaps.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AACtD,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,EAAE,EAAE,EAAE,MAAM,cAAc,CAAC;AAKlC,MAAM,OAAO,QAAQ;EAHrB;IAgBU,kBAAa,GAAG,CAAC,CAAU,EAAE,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;GAU7D;EApBS,KAAK,CAAC,WAAW,CAAC,EAAW;IACnC,MAAM,OAAO,GAAG;MACd,SAAS,EAAE,QAAQ,CAAC,aAAa,CAAC,qBAAqB,CAAC;MACxD,EAAE,EAAE,EAAE;KACP,CAAC;IACF,MAAM,OAAO,GAAG,MAAM,iBAAiB,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IACxD,MAAM,OAAO,CAAC,OAAO,EAAE,CAAC;IACxB,OAAO,OAAO,CAAC;EACjB,CAAC;EAID,MAAM;IACJ,IAAI,KAAK,GAAG,EAAE,CAAC,yBAAyB,CAAC,CAAC;IAC1C,OAAO,CACL,kBAAY,OAAO,EAAE,IAAI,CAAC,aAAa,EAAE,KAAK,EAAE,KAAK;
|
|
1
|
+
{"version":3,"file":"basemaps.js","sourceRoot":"","sources":["../../../src/components/basemaps/basemaps.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AACtD,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,EAAE,EAAE,EAAE,MAAM,cAAc,CAAC;AAKlC,MAAM,OAAO,QAAQ;EAHrB;IAgBU,kBAAa,GAAG,CAAC,CAAU,EAAE,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;GAU7D;EApBS,KAAK,CAAC,WAAW,CAAC,EAAW;IACnC,MAAM,OAAO,GAAG;MACd,SAAS,EAAE,QAAQ,CAAC,aAAa,CAAC,qBAAqB,CAAC;MACxD,EAAE,EAAE,EAAE;KACP,CAAC;IACF,MAAM,OAAO,GAAG,MAAM,iBAAiB,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IACxD,MAAM,OAAO,CAAC,OAAO,EAAE,CAAC;IACxB,OAAO,OAAO,CAAC;EACjB,CAAC;EAID,MAAM;IACJ,IAAI,KAAK,GAAG,EAAE,CAAC,yBAAyB,CAAC,CAAC;IAC1C,OAAO,CACL,kBAAY,OAAO,EAAE,IAAI,CAAC,aAAa,EAAE,KAAK,EAAE,KAAK,gBAAc,KAAK;MACtE,+BAAsB,MAAM,EAAC,IAAI,EAAC,WAAW,EAAC,IAAI,EAAC,OAAO,GAAY,CAC3D,CACd,CAAC;EACJ,CAAC;;;CACF","sourcesContent":["import { h, Component, Element } from \"@stencil/core\";\nimport { popoverController } from \"@ionic/core\";\nimport { _t } from \"../i18n/i18n\";\n\n@Component({\n tag: \"gl-basemaps\"\n})\nexport class Basemaps {\n @Element() el: HTMLGlBasemapsElement;\n\n private async openPopover(ev: UIEvent) {\n const options = {\n component: document.createElement(\"gl-basemap-switcher\"),\n ev: ev\n };\n const popover = await popoverController.create(options);\n await popover.present();\n return popover;\n }\n\n private selectBasemap = (e: UIEvent) => this.openPopover(e);\n\n render() {\n let title = _t(\"webmapgl.basemaps.title\");\n return (\n <ion-button onClick={this.selectBasemap} title={title} aria-label={title}>\n <ion-icon aria-hidden=\"true\" slot=\"icon-only\" name=\"earth\"></ion-icon>\n </ion-button>\n );\n }\n}\n"]}
|
|
@@ -9,9 +9,9 @@ export class DownloadButton {
|
|
|
9
9
|
const options = {
|
|
10
10
|
component: document.createElement("gl-download-list"),
|
|
11
11
|
componentProps: {
|
|
12
|
-
files: Array.from(this.el.querySelectorAll("gl-download-file"))
|
|
12
|
+
files: Array.from(this.el.querySelectorAll("gl-download-file"))
|
|
13
13
|
},
|
|
14
|
-
ev: ev
|
|
14
|
+
ev: ev
|
|
15
15
|
};
|
|
16
16
|
const popover = await popoverController.create(options);
|
|
17
17
|
await popover.present();
|
|
@@ -19,7 +19,7 @@ export class DownloadButton {
|
|
|
19
19
|
}
|
|
20
20
|
render() {
|
|
21
21
|
let title = _t("webmapgl.download-button.title");
|
|
22
|
-
return (h("ion-button", { onClick: this.clickPopover, title: title }, h("ion-icon", { slot: "icon-only", name: "download-sharp" })));
|
|
22
|
+
return (h("ion-button", { onClick: this.clickPopover, title: title, "aria-label": title }, h("ion-icon", { "aria-hidden": "true", slot: "icon-only", name: "download-sharp" })));
|
|
23
23
|
}
|
|
24
24
|
static get is() { return "gl-download-button"; }
|
|
25
25
|
static get elementRef() { return "el"; }
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"download-button.js","sourceRoot":"","sources":["../../../src/components/download-button/download-button.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AACtD,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,EAAE,EAAE,EAAE,MAAM,cAAc,CAAC;AAKlC,MAAM,OAAO,cAAc;EAH3B;IAmBU,iBAAY,GAAG,CAAC,EAAW,EAAE,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"download-button.js","sourceRoot":"","sources":["../../../src/components/download-button/download-button.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AACtD,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,EAAE,EAAE,EAAE,MAAM,cAAc,CAAC;AAKlC,MAAM,OAAO,cAAc;EAH3B;IAmBU,iBAAY,GAAG,CAAC,EAAW,EAAE,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;GAc9D;EA3BS,KAAK,CAAC,WAAW,CAAC,EAAW;IACnC,MAAM,OAAO,GAAG;MACd,SAAS,EAAE,QAAQ,CAAC,aAAa,CAAC,kBAAkB,CAAC;MACrD,cAAc,EAAE;QACd,KAAK,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,gBAAgB,CAAC,kBAAkB,CAAC,CAAC;OAChE;MACD,EAAE,EAAE,EAAE;KACP,CAAC;IACF,MAAM,OAAO,GAAG,MAAM,iBAAiB,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IACxD,MAAM,OAAO,CAAC,OAAO,EAAE,CAAC;IACxB,OAAO,OAAO,CAAC;EACjB,CAAC;EAID,MAAM;IACJ,IAAI,KAAK,GAAG,EAAE,CAAC,gCAAgC,CAAC,CAAC;IACjD,OAAO,CACL,kBAAY,OAAO,EAAE,IAAI,CAAC,YAAY,EAAE,KAAK,EAAE,KAAK,gBAAc,KAAK;MACrE,+BACc,MAAM,EAClB,IAAI,EAAC,WAAW,EAChB,IAAI,EAAC,gBAAgB,GACX,CACD,CACd,CAAC;EACJ,CAAC;;;CACF","sourcesContent":["import { h, Component, Element } from \"@stencil/core\";\nimport { popoverController } from \"@ionic/core\";\nimport { _t } from \"../i18n/i18n\";\n\n@Component({\n tag: \"gl-download-button\"\n})\nexport class DownloadButton {\n @Element() el: HTMLGlDownloadButtonElement;\n\n private async openPopover(ev: UIEvent) {\n const options = {\n component: document.createElement(\"gl-download-list\"),\n componentProps: {\n files: Array.from(this.el.querySelectorAll(\"gl-download-file\"))\n },\n ev: ev\n };\n const popover = await popoverController.create(options);\n await popover.present();\n return popover;\n }\n\n private clickPopover = (ev: UIEvent) => this.openPopover(ev);\n\n render() {\n let title = _t(\"webmapgl.download-button.title\");\n return (\n <ion-button onClick={this.clickPopover} title={title} aria-label={title}>\n <ion-icon\n aria-hidden=\"true\"\n slot=\"icon-only\"\n name=\"download-sharp\"\n ></ion-icon>\n </ion-button>\n );\n }\n}\n"]}
|
|
@@ -12,7 +12,8 @@ export class DownloadList {
|
|
|
12
12
|
.join(", ");
|
|
13
13
|
if (formatString != undefined)
|
|
14
14
|
formatString = `(${formatString})`;
|
|
15
|
-
|
|
15
|
+
let title = _t("webmapgl.download-list.download", { file: file.label });
|
|
16
|
+
return (h("ion-item", null, h("ion-label", { "text-wrap": true }, file.label, " ", formatString), h("ion-button", { slot: "end", href: file.url, target: "_blank", title: title, "aria-label": title }, h("ion-icon", { "aria-hidden": "true", slot: "icon-only", name: "download" }))));
|
|
16
17
|
});
|
|
17
18
|
return (h("ion-content", null, h("ion-list", null, h("ion-list-header", null, header), fileList)));
|
|
18
19
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"download-list.js","sourceRoot":"","sources":["../../../src/components/download-list/download-list.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AACnD,OAAO,EAAE,EAAE,EAAE,MAAM,cAAc,CAAC;AAKlC,MAAM,OAAO,YAAY;;;;EAOvB,MAAM;IACJ,MAAM,MAAM,GAAG,EAAE,CAAC,+BAA+B,CAAC,CAAC;IACnD,IAAI,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;MACrC,IAAI,YAAY,GAAG,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,IAAI,CAAC;SACxC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC;SACtB,IAAI,CAAC,IAAI,CAAC,CAAC;MACd,IAAI,YAAY,IAAI,SAAS;QAAE,YAAY,GAAG,IAAI,YAAY,GAAG,CAAC;
|
|
1
|
+
{"version":3,"file":"download-list.js","sourceRoot":"","sources":["../../../src/components/download-list/download-list.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AACnD,OAAO,EAAE,EAAE,EAAE,MAAM,cAAc,CAAC;AAKlC,MAAM,OAAO,YAAY;;;;EAOvB,MAAM;IACJ,MAAM,MAAM,GAAG,EAAE,CAAC,+BAA+B,CAAC,CAAC;IACnD,IAAI,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;MACrC,IAAI,YAAY,GAAG,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,IAAI,CAAC;SACxC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC;SACtB,IAAI,CAAC,IAAI,CAAC,CAAC;MACd,IAAI,YAAY,IAAI,SAAS;QAAE,YAAY,GAAG,IAAI,YAAY,GAAG,CAAC;MAClE,IAAI,KAAK,GAAG,EAAE,CAAC,iCAAiC,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC;MAExE,OAAO,CACL;QACE;UACG,IAAI,CAAC,KAAK;;UAAG,YAAY,CAChB;QACZ,kBACE,IAAI,EAAC,KAAK,EACV,IAAI,EAAE,IAAI,CAAC,GAAG,EACd,MAAM,EAAC,QAAQ,EACf,KAAK,EAAE,KAAK,gBACA,KAAK;UAEjB,+BACc,MAAM,EAClB,IAAI,EAAC,WAAW,EAChB,IAAI,EAAC,UAAU,GACL,CACD,CACJ,CACZ,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,OAAO,CACL;MACE;QACE,2BAAkB,MAAM,CAAmB;QAC1C,QAAQ,CACA,CACC,CACf,CAAC;EACJ,CAAC;;;;;;;;;;;;;;;;;;;;;;;;CACF","sourcesContent":["import { h, Prop, Component } from \"@stencil/core\";\nimport { _t } from \"../i18n/i18n\";\n\n@Component({\n tag: \"gl-download-list\"\n})\nexport class DownloadList {\n /**\n * Array of [gl-download-file](../download-file) elements to be included\n * in the list.\n */\n @Prop() readonly files: HTMLGlDownloadFileElement[];\n\n render() {\n const header = _t(\"webmapgl.download-list.header\");\n let fileList = this.files.map((file) => {\n let formatString = [file.format, file.size]\n .filter((item) => item)\n .join(\", \");\n if (formatString != undefined) formatString = `(${formatString})`;\n let title = _t(\"webmapgl.download-list.download\", { file: file.label });\n\n return (\n <ion-item>\n <ion-label text-wrap>\n {file.label} {formatString}\n </ion-label>\n <ion-button\n slot=\"end\"\n href={file.url}\n target=\"_blank\"\n title={title}\n aria-label={title}\n >\n <ion-icon\n aria-hidden=\"true\"\n slot=\"icon-only\"\n name=\"download\"\n ></ion-icon>\n </ion-button>\n </ion-item>\n );\n });\n\n return (\n <ion-content>\n <ion-list>\n <ion-list-header>{header}</ion-list-header>\n {fileList}\n </ion-list>\n </ion-content>\n );\n }\n}\n"]}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { h
|
|
1
|
+
import { h } from "@stencil/core";
|
|
2
2
|
import { _t } from "../i18n/i18n";
|
|
3
3
|
export class DrawToolbar {
|
|
4
4
|
constructor() {
|
|
@@ -37,12 +37,12 @@ export class DrawToolbar {
|
|
|
37
37
|
}
|
|
38
38
|
cancel() {
|
|
39
39
|
this.glDrawCancel.emit({
|
|
40
|
-
mapId: this.mapId
|
|
40
|
+
mapId: this.mapId
|
|
41
41
|
});
|
|
42
42
|
}
|
|
43
43
|
confirm() {
|
|
44
44
|
this.glDrawConfirm.emit({
|
|
45
|
-
mapId: this.mapId
|
|
45
|
+
mapId: this.mapId
|
|
46
46
|
});
|
|
47
47
|
}
|
|
48
48
|
render() {
|
|
@@ -51,7 +51,7 @@ export class DrawToolbar {
|
|
|
51
51
|
let small = screen.width <= 640;
|
|
52
52
|
let canConfirm = this.featureCount >= this.minFeatures &&
|
|
53
53
|
this.featureCount <= this.maxFeatures;
|
|
54
|
-
return (h("ion-toolbar", { color: this.color }, h("ion-title", null, this.label), h("ion-buttons", { slot: "end" }, h("ion-button", { onClick: this.callCancel }, h("ion-icon", { slot: small ? "icon-only" : "start", name: "close" }), small ? null : this.cancelText), h("ion-button", { onClick: canConfirm ? this.callConfirm : undefined, disabled: !canConfirm }, h("ion-icon", { slot: small ? "icon-only" : "start", name: "checkmark" }), small ? null : this.confirmText))));
|
|
54
|
+
return (h("ion-toolbar", { color: this.color }, h("ion-title", null, this.label), h("ion-buttons", { slot: "end" }, h("ion-button", { onClick: this.callCancel, "aria-label": this.cancelText }, h("ion-icon", { slot: small ? "icon-only" : "start", name: "close", "aria-hidden": "true" }), small ? null : this.cancelText), h("ion-button", { onClick: canConfirm ? this.callConfirm : undefined, disabled: !canConfirm, "aria-label": this.confirmText }, h("ion-icon", { slot: small ? "icon-only" : "start", name: "checkmark", "aria-hidden": "true" }), small ? null : this.confirmText))));
|
|
55
55
|
}
|
|
56
56
|
static get is() { return "gl-draw-toolbar"; }
|
|
57
57
|
static get properties() {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"draw-toolbar.js","sourceRoot":"","sources":["../../../src/components/draw-toolbar/draw-toolbar.tsx"],"names":[],"mappings":"AAAA,OAAO,EACL,CAAC,EACD,SAAS,EACT,KAAK,EAEL,MAAM,EACN,IAAI,EACJ,KAAK,
|
|
1
|
+
{"version":3,"file":"draw-toolbar.js","sourceRoot":"","sources":["../../../src/components/draw-toolbar/draw-toolbar.tsx"],"names":[],"mappings":"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","sourcesContent":["import {\n h,\n Component,\n Event,\n EventEmitter,\n Listen,\n Prop,\n State\n} from \"@stencil/core\";\nimport { Color } from \"@ionic/core\";\nimport { _t } from \"../i18n/i18n\";\n\n@Component({\n tag: \"gl-draw-toolbar\"\n})\nexport class DrawToolbar {\n /**\n * Emitted when the user cancels the draw session.\n */\n @Event() glDrawCancel: EventEmitter;\n\n /**\n * Emitted when the user confirms the drawn features.\n */\n @Event() glDrawConfirm: EventEmitter;\n\n @State() visible: boolean = false;\n @State() featureCount = 0;\n\n /**\n * Text for the cancel button.\n */\n @Prop() readonly cancelText: string = _t(\"webmapgl.draw-toolbar.cancel\");\n\n /**\n * Background color for the toolbar.\n */\n @Prop() readonly color: Color = \"primary\";\n\n /**\n * Text for the confirm button.\n */\n @Prop() readonly confirmText: string = _t(\"webmapgl.draw-toolbar.confirm\");\n\n /**\n * Label for the toolbar.\n */\n @Prop() readonly label: string = _t(\"webmapgl.draw-toolbar.label\");\n\n /**\n * ID of the map with the drawing session.\n *\n * This defaults to the empty string as when a gl-map element is created without an id, the mapId passed along the glDraw events defaults to the empty string.\n */\n @Prop() readonly mapId: string = \"\";\n\n /**\n * Maximum number of features the user can draw.\n */\n @Prop() readonly maxFeatures: number = 1;\n\n /**\n * Minimum number of features the user must draw before confirming.\n */\n @Prop() readonly minFeatures: number = 1;\n\n @Listen(\"glDrawEnter\", { target: \"body\" })\n handleDrawEnter(e: CustomEvent) {\n if (e.detail.mapId !== this.mapId) return;\n this.featureCount = 0;\n this.visible = true;\n }\n\n @Listen(\"glDrawExit\", { target: \"body\" })\n handleDrawExit(e: CustomEvent) {\n if (e.detail.mapId !== this.mapId) return;\n this.visible = false;\n }\n\n @Listen(\"glDrawCreate\", { target: \"body\" })\n handleDrawCreate(e: CustomEvent) {\n if (e.detail.mapId !== this.mapId) return;\n this.featureCount += 1;\n }\n\n @Listen(\"glDrawDelete\", { target: \"body\" })\n handleDrawDelete(e: CustomEvent) {\n if (e.detail.mapId !== this.mapId) return;\n this.featureCount -= 1;\n }\n\n private cancel() {\n this.glDrawCancel.emit({\n mapId: this.mapId\n });\n }\n\n private confirm() {\n this.glDrawConfirm.emit({\n mapId: this.mapId\n });\n }\n\n private callCancel = () => this.cancel();\n private callConfirm = () => this.confirm();\n\n render() {\n if (!this.visible) return;\n\n let small = screen.width <= 640;\n let canConfirm =\n this.featureCount >= this.minFeatures &&\n this.featureCount <= this.maxFeatures;\n return (\n <ion-toolbar color={this.color}>\n <ion-title>{this.label}</ion-title>\n <ion-buttons slot=\"end\">\n <ion-button onClick={this.callCancel} aria-label={this.cancelText}>\n <ion-icon\n slot={small ? \"icon-only\" : \"start\"}\n name=\"close\"\n aria-hidden=\"true\"\n ></ion-icon>\n {small ? null : this.cancelText}\n </ion-button>\n <ion-button\n onClick={canConfirm ? this.callConfirm : undefined}\n disabled={!canConfirm}\n aria-label={this.confirmText}\n >\n <ion-icon\n slot={small ? \"icon-only\" : \"start\"}\n name=\"checkmark\"\n aria-hidden=\"true\"\n ></ion-icon>\n {small ? null : this.confirmText}\n </ion-button>\n </ion-buttons>\n </ion-toolbar>\n );\n }\n}\n"]}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { h, Host
|
|
1
|
+
import { h, Host } from "@stencil/core";
|
|
2
2
|
import { getMap } from "../utils";
|
|
3
3
|
export class Drawer {
|
|
4
4
|
constructor() {
|
|
@@ -10,7 +10,7 @@ export class Drawer {
|
|
|
10
10
|
}
|
|
11
11
|
openChanged(isOpen) {
|
|
12
12
|
this.glDrawerToggle.emit({
|
|
13
|
-
open: isOpen
|
|
13
|
+
open: isOpen
|
|
14
14
|
});
|
|
15
15
|
}
|
|
16
16
|
componentDidUpdate() {
|
|
@@ -26,8 +26,8 @@ export class Drawer {
|
|
|
26
26
|
render() {
|
|
27
27
|
return (h(Host, { class: {
|
|
28
28
|
"gl-drawer-closed": !this.open,
|
|
29
|
-
"gl-drawer-open": this.open
|
|
30
|
-
} }, h("ion-header", null, h("ion-toolbar", null, h("ion-buttons", { slot: "start" }, h("slot", { name: "toolbar-start-buttons" })), h("ion-title", null, this.drawerTitle), h("ion-buttons", { slot: "end" }, h("slot", { name: "toolbar-end-buttons" }), h("ion-button", { title: "Close", onClick: this.closeDrawerClick }, h("ion-icon", { slot: "icon-only", name: "close" }))))), h("ion-content", null, h("slot", null))));
|
|
29
|
+
"gl-drawer-open": this.open
|
|
30
|
+
} }, h("ion-header", null, h("ion-toolbar", null, h("ion-buttons", { slot: "start" }, h("slot", { name: "toolbar-start-buttons" })), h("ion-title", null, this.drawerTitle), h("ion-buttons", { slot: "end" }, h("slot", { name: "toolbar-end-buttons" }), h("ion-button", { title: "Close", onClick: this.closeDrawerClick, "aria-label": "Close" }, h("ion-icon", { "aria-hidden": "true", slot: "icon-only", name: "close" }))))), h("ion-content", null, h("slot", null))));
|
|
31
31
|
}
|
|
32
32
|
static get is() { return "gl-drawer"; }
|
|
33
33
|
static get originalStyleUrls() {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"drawer.js","sourceRoot":"","sources":["../../../src/components/drawer/drawer.tsx"],"names":[],"mappings":"AAAA,OAAO,EACL,CAAC,EACD,SAAS,EACT,KAAK,EAEL,MAAM,EACN,IAAI,EACJ,KAAK,EACL,KAAK,EACL,IAAI,
|
|
1
|
+
{"version":3,"file":"drawer.js","sourceRoot":"","sources":["../../../src/components/drawer/drawer.tsx"],"names":[],"mappings":"AAAA,OAAO,EACL,CAAC,EACD,SAAS,EACT,KAAK,EAEL,MAAM,EACN,IAAI,EACJ,KAAK,EACL,KAAK,EACL,IAAI,EACL,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAMlC,MAAM,OAAO,MAAM;;IA2CT,qBAAgB,GAAG,GAAG,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,GAAG,KAAK,CAAC,CAAC;;;;gBA3BrB,KAAK;;EAGrC,WAAW,CAAC,MAAe;IACzB,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC;MACvB,IAAI,EAAE,MAAM;KACb,CAAC,CAAC;EACL,CAAC;EAOD,kBAAkB;IAChB,IAAI,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC7B,GAAG,CAAC,SAAS,EAAE,CAAC;EAClB,CAAC;EAED;;KAEG;EAEH,KAAK,CAAC,MAAM;IACV,IAAI,CAAC,IAAI,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC;EACzB,CAAC;EAID,MAAM;IACJ,OAAO,CACL,EAAC,IAAI,IACH,KAAK,EAAE;QACL,kBAAkB,EAAE,CAAC,IAAI,CAAC,IAAI;QAC9B,gBAAgB,EAAE,IAAI,CAAC,IAAI;OAC5B;MAED;QACE;UACE,mBAAa,IAAI,EAAC,OAAO;YACvB,YAAM,IAAI,EAAC,uBAAuB,GAAG,CACzB;UACd,qBAAY,IAAI,CAAC,WAAW,CAAa;UACzC,mBAAa,IAAI,EAAC,KAAK;YACrB,YAAM,IAAI,EAAC,qBAAqB,GAAG;YACnC,kBACE,KAAK,EAAC,OAAO,EACb,OAAO,EAAE,IAAI,CAAC,gBAAgB,gBACnB,OAAO;cAElB,+BACc,MAAM,EAClB,IAAI,EAAC,WAAW,EAChB,IAAI,EAAC,OAAO,GACF,CACD,CACD,CACF,CACH;MACb;QACE,eAAQ,CACI,CACT,CACR,CAAC;EACJ,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CACF","sourcesContent":["import {\n h,\n Component,\n Event,\n EventEmitter,\n Method,\n Prop,\n State,\n Watch,\n Host\n} from \"@stencil/core\";\nimport { getMap } from \"../utils\";\n\n@Component({\n styleUrl: \"drawer.css\",\n tag: \"gl-drawer\"\n})\nexport class Drawer {\n @State() content: string;\n\n /**\n * Title of the drawer displayed in the toolbar.\n */\n @Prop() readonly drawerTitle: string;\n\n /**\n * Map ID of the map that should be resized when the drawer is opened or closed.\n */\n @Prop() readonly mapId: string;\n\n /**\n * The drawer is currently open.\n */\n @Prop({ mutable: true }) open = false;\n\n @Watch(\"open\")\n openChanged(isOpen: boolean) {\n this.glDrawerToggle.emit({\n open: isOpen\n });\n }\n\n /**\n * Emitted when the drawer is opened or closed.\n */\n @Event() glDrawerToggle: EventEmitter;\n\n componentDidUpdate() {\n let map = getMap(this.mapId);\n map.resizeMap();\n }\n\n /**\n * Opens the drawer if it is closed and closes the drawer if it is open\n */\n @Method()\n async toggle() {\n this.open = !this.open;\n }\n\n private closeDrawerClick = () => (this.open = false);\n\n render() {\n return (\n <Host\n class={{\n \"gl-drawer-closed\": !this.open,\n \"gl-drawer-open\": this.open\n }}\n >\n <ion-header>\n <ion-toolbar>\n <ion-buttons slot=\"start\">\n <slot name=\"toolbar-start-buttons\" />\n </ion-buttons>\n <ion-title>{this.drawerTitle}</ion-title>\n <ion-buttons slot=\"end\">\n <slot name=\"toolbar-end-buttons\" />\n <ion-button\n title=\"Close\"\n onClick={this.closeDrawerClick}\n aria-label=\"Close\"\n >\n <ion-icon\n aria-hidden=\"true\"\n slot=\"icon-only\"\n name=\"close\"\n ></ion-icon>\n </ion-button>\n </ion-buttons>\n </ion-toolbar>\n </ion-header>\n <ion-content>\n <slot />\n </ion-content>\n </Host>\n );\n }\n}\n"]}
|
|
@@ -16,7 +16,7 @@ export class DrawerToggle {
|
|
|
16
16
|
this.drawer.open = !this.drawer.open;
|
|
17
17
|
}
|
|
18
18
|
render() {
|
|
19
|
-
return (h("ion-button", { onClick: this.clickToggle, title: this.buttonTitle, disabled: this.disabled }, h("ion-icon", { slot: "icon-only", name: this.icon })));
|
|
19
|
+
return (h("ion-button", { onClick: this.clickToggle, title: this.buttonTitle, disabled: this.disabled, "aria-label": this.buttonTitle }, h("ion-icon", { "aria-hidden": "true", slot: "icon-only", name: this.icon })));
|
|
20
20
|
}
|
|
21
21
|
static get is() { return "gl-drawer-toggle"; }
|
|
22
22
|
static get properties() {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"drawer-toggle.js","sourceRoot":"","sources":["../../../src/components/drawer-toggle/drawer-toggle.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,SAAS,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AAC5D,OAAO,EAAE,EAAE,EAAE,MAAM,cAAc,CAAC;AAClC,OAAO,EAAE,mBAAmB,EAAE,MAAM,UAAU,CAAC;AAK/C,MAAM,OAAO,YAAY;;IA6Bf,gBAAW,GAAG,GAAG,EAAE,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC;gBArBhB,UAAU;uBAKH,EAAE,CAAC,8BAA8B,CAAC;oBAKpC,KAAK;;EAE1C,KAAK,CAAC,iBAAiB;IACrB,IAAI,IAAI,CAAC,MAAM,IAAI,SAAS;MAC1B,IAAI,CAAC,MAAM,GAAG,MAAM,mBAAmB,CAAC,WAAW,CAAC,CAAC;EACzD,CAAC;EAEO,YAAY;IAClB,IAAI,CAAC,MAAM,CAAC,IAAI,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC;EACvC,CAAC;EAID,MAAM;IACJ,OAAO,CACL,kBACE,OAAO,EAAE,IAAI,CAAC,WAAW,EACzB,KAAK,EAAE,IAAI,CAAC,WAAW,EACvB,QAAQ,EAAE,IAAI,CAAC,QAAQ;
|
|
1
|
+
{"version":3,"file":"drawer-toggle.js","sourceRoot":"","sources":["../../../src/components/drawer-toggle/drawer-toggle.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,SAAS,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AAC5D,OAAO,EAAE,EAAE,EAAE,MAAM,cAAc,CAAC;AAClC,OAAO,EAAE,mBAAmB,EAAE,MAAM,UAAU,CAAC;AAK/C,MAAM,OAAO,YAAY;;IA6Bf,gBAAW,GAAG,GAAG,EAAE,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC;gBArBhB,UAAU;uBAKH,EAAE,CAAC,8BAA8B,CAAC;oBAKpC,KAAK;;EAE1C,KAAK,CAAC,iBAAiB;IACrB,IAAI,IAAI,CAAC,MAAM,IAAI,SAAS;MAC1B,IAAI,CAAC,MAAM,GAAG,MAAM,mBAAmB,CAAC,WAAW,CAAC,CAAC;EACzD,CAAC;EAEO,YAAY;IAClB,IAAI,CAAC,MAAM,CAAC,IAAI,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC;EACvC,CAAC;EAID,MAAM;IACJ,OAAO,CACL,kBACE,OAAO,EAAE,IAAI,CAAC,WAAW,EACzB,KAAK,EAAE,IAAI,CAAC,WAAW,EACvB,QAAQ,EAAE,IAAI,CAAC,QAAQ,gBACX,IAAI,CAAC,WAAW;MAE5B,+BACc,MAAM,EAClB,IAAI,EAAC,WAAW,EAChB,IAAI,EAAE,IAAI,CAAC,IAAI,GACL,CACD,CACd,CAAC;EACJ,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CACF","sourcesContent":["import { h, Component, Element, Prop } from \"@stencil/core\";\nimport { _t } from \"../i18n/i18n\";\nimport { findOrCreateOnReady } from \"../utils\";\n\n@Component({\n tag: \"gl-drawer-toggle\"\n})\nexport class DrawerToggle {\n private drawer: HTMLGlDrawerElement;\n\n @Element() el: HTMLGlDrawerToggleElement;\n\n /**\n * Icon to display in the button.\n */\n @Prop() readonly icon: string = \"settings\";\n\n /**\n * Text to display in the button.\n */\n @Prop() readonly buttonTitle: string = _t(\"webmapgl.drawer-toggle.label\");\n\n /**\n * Whether the button is enabled\n */\n @Prop() readonly disabled: boolean = false;\n\n async componentWillLoad() {\n if (this.drawer == undefined)\n this.drawer = await findOrCreateOnReady(\"gl-drawer\");\n }\n\n private toggleDrawer() {\n this.drawer.open = !this.drawer.open;\n }\n\n private clickToggle = () => this.toggleDrawer();\n\n render() {\n return (\n <ion-button\n onClick={this.clickToggle}\n title={this.buttonTitle}\n disabled={this.disabled}\n aria-label={this.buttonTitle}\n >\n <ion-icon\n aria-hidden=\"true\"\n slot=\"icon-only\"\n name={this.icon}\n ></ion-icon>\n </ion-button>\n );\n }\n}\n"]}
|
|
@@ -183,7 +183,7 @@ export class FeatureList {
|
|
|
183
183
|
},
|
|
184
184
|
"limitedGeometry": {
|
|
185
185
|
"location": "local",
|
|
186
|
-
"path": "/var/home/fj44404@co.champaign.il.us/.local/code/webmapgl/src/components/feature-list/feature-list.tsx",
|
|
186
|
+
"path": "/run/host/var/home/fj44404@co.champaign.il.us/.local/code/webmapgl/src/components/feature-list/feature-list.tsx",
|
|
187
187
|
"id": "src/components/feature-list/feature-list.tsx::limitedGeometry"
|
|
188
188
|
}
|
|
189
189
|
}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { h, Host
|
|
1
|
+
import { h, Host } from "@stencil/core";
|
|
2
2
|
import { _t } from "../i18n/i18n";
|
|
3
3
|
export class FormPage {
|
|
4
4
|
constructor() {
|
|
@@ -53,7 +53,7 @@ export class FormPage {
|
|
|
53
53
|
}
|
|
54
54
|
render() {
|
|
55
55
|
let small = screen.width <= 640;
|
|
56
|
-
return (h(Host, { class: `gl-form-page-facet-${this.formFacet || "none"}` }, h("ion-header", null, h("ion-toolbar", { color: "primary" }, !this.root ? (h("ion-buttons", { slot: "start" }, h("ion-nav-pop", null, h("ion-button",
|
|
56
|
+
return (h(Host, { class: `gl-form-page-facet-${this.formFacet || "none"}` }, h("ion-header", null, h("ion-toolbar", { color: "primary" }, !this.root ? (h("ion-buttons", { slot: "start" }, h("ion-nav-pop", null, h("ion-button", { "aria-label": "Back" }, h("ion-icon", { slot: small ? "icon-only" : "start", name: "arrow-back", "aria-hidden": "true" }), small ? null : this.backText)))) : null, h("ion-title", null, this.label), h("ion-buttons", { slot: "end" }, h("ion-button", { onClick: this.clickCancel }, h("ion-icon", { slot: small ? "icon-only" : "start", name: "close", "aria-hidden": "true" }), small ? null : this.cancelText), h("ion-button", { onClick: this.clickSubmit, disabled: !this.canSubmit, "aria-label": "Submit" }, h("ion-icon", { slot: small ? "icon-only" : "start", name: "checkmark", "aria-hidden": "true" }), small ? null : this.submitText)))), h("ion-content", null, h("ion-list", null, this.renderFacets(), this.renderFields()))));
|
|
57
57
|
}
|
|
58
58
|
static get is() { return "gl-form-page"; }
|
|
59
59
|
static get originalStyleUrls() {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"form-page.js","sourceRoot":"","sources":["../../../src/components/form-page/form-page.tsx"],"names":[],"mappings":"AAAA,OAAO,EACL,CAAC,EACD,SAAS,EACT,OAAO,EACP,MAAM,EACN,IAAI,EACJ,KAAK,EACL,IAAI,
|
|
1
|
+
{"version":3,"file":"form-page.js","sourceRoot":"","sources":["../../../src/components/form-page/form-page.tsx"],"names":[],"mappings":"AAAA,OAAO,EACL,CAAC,EACD,SAAS,EACT,OAAO,EACP,MAAM,EACN,IAAI,EACJ,KAAK,EACL,IAAI,EACL,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,EAAE,EAAE,MAAM,cAAc,CAAC;AAMlC,MAAM,OAAO,QAAQ;;IAqHX,gBAAW,GAAG,GAAG,EAAE;MACzB,IAAI,IAAI,CAAC,SAAS;QAAE,IAAI,CAAC,MAAM,EAAE,CAAC;IACpC,CAAC,CAAC;IAEM,gBAAW,GAAG,GAAG,EAAE,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;qBAtHrB,KAAK;oBAKU,EAAE,CAAC,yBAAyB,CAAC;;;;;gBA0BhC,KAAK;sBAKA,EAAE,CAAC,2BAA2B,CAAC;sBAK/B,EAAE,CAAC,2BAA2B,CAAC;;EAErE,gBAAgB;IACd,IAAI,CAAC,sBAAsB,EAAE,CAAC;EAChC,CAAC;EAGD,KAAK,CAAC,sBAAsB;IAC1B,IAAI,IAAI,CAAC,EAAE,CAAC,gBAAgB,CAAC,UAAU,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE;MACrD,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;KACxB;SAAM;MACL,IAAI,CAAC,SAAS,GAAG,CAAC,MAAM,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC;KACvD;EACH,CAAC;EAEO,KAAK,CAAC,QAAQ;IACpB,IAAI,QAAQ,GAAG,MAAM,OAAO,CAAC,GAAG,CAC9B,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,gBAAgB,CAAC,UAAU,CAAC,CAAC,CAAC,GAAG,CAClD,KAAK,EAAE,KAAK,EAAE,EAAE,CAAC,MAAM,KAAK,CAAC,QAAQ,EAAE,CACxC,CACF,CAAC;IAEF,OAAO,QAAQ,CAAC,MAAM,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,IAAI,IAAI,CAAC,CAAC;EACvD,CAAC;EAEO,MAAM;IACZ,MAAM,IAAI,GAAG,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;IACxC,IAAI,CAAC,MAAM,EAAE,CAAC;EAChB,CAAC;EAEO,MAAM;IACZ,MAAM,IAAI,GAAG,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;IACxC,IAAI,CAAC,MAAM,EAAE,CAAC;EAChB,CAAC;EAEO,YAAY;IAClB,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAChC,gBACE,KAAK,EAAE,KAAK,CAAC,KAAK,EAClB,KAAK,EAAE,KAAK,CAAC,KAAK,EAClB,KAAK,EAAE,KAAK,CAAC,KAAK,EAClB,MAAM,EAAE,KAAK,CAAC,MAAM,GACV,CACb,CAAC,CAAC;EACL,CAAC;EAEO,YAAY;IAClB,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAChC,gBACE,SAAS,EAAE,KAAK,CAAC,SAAS,EAC1B,KAAK,EAAE,KAAK,CAAC,KAAK,EAClB,KAAK,EAAE,KAAK,CAAC,KAAK,EAClB,QAAQ,EAAE,KAAK,CAAC,QAAQ,EACxB,IAAI,EAAE,KAAK,CAAC,IAAI,EAChB,MAAM,EAAE,KAAK,CAAC,MAAM,EACpB,WAAW,EAAE,KAAK,CAAC,WAAW,IAE7B,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,OAAO,CAAC,CACzB,CACZ,CAAC,CAAC;EACL,CAAC;EAEO,aAAa,CAAC,OAAc;IAClC,IAAI,OAAO,IAAI,SAAS;MAAE,OAAO;IACjC,OAAO,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAC7B,iBACE,KAAK,EAAE,MAAM,CAAC,KAAK,EACnB,KAAK,EAAE,MAAM,CAAC,KAAK,EACnB,KAAK,EAAE,MAAM,CAAC,KAAK,GACR,CACd,CAAC,CAAC;EACL,CAAC;EAQD,MAAM;IACJ,IAAI,KAAK,GAAG,MAAM,CAAC,KAAK,IAAI,GAAG,CAAC;IAChC,OAAO,CACL,EAAC,IAAI,IAAC,KAAK,EAAE,sBAAsB,IAAI,CAAC,SAAS,IAAI,MAAM,EAAE;MAC3D;QACE,mBAAa,KAAK,EAAC,SAAS;UACzB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CACZ,mBAAa,IAAI,EAAC,OAAO;YACvB;cACE,gCAAuB,MAAM;gBAC3B,gBACE,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,OAAO,EACnC,IAAI,EAAC,YAAY,iBACL,MAAM,GACR;gBACX,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAClB,CACD,CACF,CACf,CAAC,CAAC,CAAC,IAAI;UACR,qBAAY,IAAI,CAAC,KAAK,CAAa;UACnC,mBAAa,IAAI,EAAC,KAAK;YACrB,kBAAY,OAAO,EAAE,IAAI,CAAC,WAAW;cACnC,gBACE,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,OAAO,EACnC,IAAI,EAAC,OAAO,iBACA,MAAM,GACR;cACX,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,CACpB;YACb,kBACE,OAAO,EAAE,IAAI,CAAC,WAAW,EACzB,QAAQ,EAAE,CAAC,IAAI,CAAC,SAAS,gBACd,QAAQ;cAEnB,gBACE,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,OAAO,EACnC,IAAI,EAAC,WAAW,iBACJ,MAAM,GACR;cACX,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,CACpB,CACD,CACF,CACH;MACb;QACE;UACG,IAAI,CAAC,YAAY,EAAE;UACnB,IAAI,CAAC,YAAY,EAAE,CACX,CACC,CACT,CACR,CAAC;EACJ,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CACF","sourcesContent":["import {\n h,\n Component,\n Element,\n Listen,\n Prop,\n State,\n Host\n} from \"@stencil/core\";\nimport { _t } from \"../i18n/i18n\";\n\n@Component({\n styleUrl: \"form-page.css\",\n tag: \"gl-form-page\"\n})\nexport class FormPage {\n @Element() el: HTMLGlFormPageElement;\n\n @State() canSubmit = false;\n\n /**\n * Text for the back button.\n */\n @Prop() readonly backText: string = _t(\"webmapgl.form-page.back\");\n\n /**\n * Facets for the page.\n */\n @Prop() readonly facets: any[];\n\n /**\n * Fields for the page.\n */\n @Prop() readonly fields: any[];\n\n /**\n * Currently-selected facet. It is used the set the CSS class of the page.\n */\n @Prop() readonly formFacet: string;\n\n /**\n * Label text displayed in the form toolbar.\n */\n @Prop() readonly label: string;\n\n /**\n * This is the root page in the form. If it is `true`, the back button\n * is not displayed.\n */\n @Prop() readonly root: boolean = false;\n\n /**\n * Text for the submit button.\n */\n @Prop() readonly submitText: string = _t(\"webmapgl.form-page.submit\");\n\n /**\n * Text for the cancel button.\n */\n @Prop() readonly cancelText: string = _t(\"webmapgl.form-page.cancel\");\n\n componentDidLoad() {\n this.updateValidationStatus();\n }\n\n @Listen(\"glFormFeatureChanged\", { target: \"body\" })\n async updateValidationStatus() {\n if (this.el.querySelectorAll(\"gl-field\").length === 0) {\n this.canSubmit = false;\n } else {\n this.canSubmit = (await this.validate()).length === 0;\n }\n }\n\n private async validate() {\n let messages = await Promise.all(\n Array.from(this.el.querySelectorAll(\"gl-field\")).map(\n async (field) => await field.validate()\n )\n );\n\n return messages.filter((message) => message != null);\n }\n\n private cancel() {\n const form = this.el.closest(\"gl-form\");\n form.cancel();\n }\n\n private submit() {\n const form = this.el.closest(\"gl-form\");\n form.submit();\n }\n\n private renderFacets() {\n return this.facets.map((facet) => (\n <gl-facet\n label={facet.label}\n value={facet.value}\n image={facet.image}\n widget={facet.widget}\n ></gl-facet>\n ));\n }\n\n private renderFields() {\n return this.fields.map((field) => (\n <gl-field\n attribute={field.attribute}\n label={field.label}\n image={field.image}\n required={field.required}\n type={field.type}\n widget={field.widget}\n placeholder={field.placeholder}\n >\n {this.renderOptions(field.options)}\n </gl-field>\n ));\n }\n\n private renderOptions(options: any[]) {\n if (options == undefined) return;\n return options.map((option) => (\n <gl-option\n image={option.image}\n label={option.label}\n value={option.value}\n ></gl-option>\n ));\n }\n\n private clickSubmit = () => {\n if (this.canSubmit) this.submit();\n };\n\n private clickCancel = () => this.cancel();\n\n render() {\n let small = screen.width <= 640;\n return (\n <Host class={`gl-form-page-facet-${this.formFacet || \"none\"}`}>\n <ion-header>\n <ion-toolbar color=\"primary\">\n {!this.root ? (\n <ion-buttons slot=\"start\">\n <ion-nav-pop>\n <ion-button aria-label=\"Back\">\n <ion-icon\n slot={small ? \"icon-only\" : \"start\"}\n name=\"arrow-back\"\n aria-hidden=\"true\"\n ></ion-icon>\n {small ? null : this.backText}\n </ion-button>\n </ion-nav-pop>\n </ion-buttons>\n ) : null}\n <ion-title>{this.label}</ion-title>\n <ion-buttons slot=\"end\">\n <ion-button onClick={this.clickCancel}>\n <ion-icon\n slot={small ? \"icon-only\" : \"start\"}\n name=\"close\"\n aria-hidden=\"true\"\n ></ion-icon>\n {small ? null : this.cancelText}\n </ion-button>\n <ion-button\n onClick={this.clickSubmit}\n disabled={!this.canSubmit}\n aria-label=\"Submit\"\n >\n <ion-icon\n slot={small ? \"icon-only\" : \"start\"}\n name=\"checkmark\"\n aria-hidden=\"true\"\n ></ion-icon>\n {small ? null : this.submitText}\n </ion-button>\n </ion-buttons>\n </ion-toolbar>\n </ion-header>\n <ion-content>\n <ion-list>\n {this.renderFacets()}\n {this.renderFields()}\n </ion-list>\n </ion-content>\n </Host>\n );\n }\n}\n"]}
|
|
@@ -17,7 +17,7 @@ export class Fullscreen {
|
|
|
17
17
|
? _t("webmapgl.fullscreen.exit")
|
|
18
18
|
: _t("webmapgl.fullscreen.enter");
|
|
19
19
|
if (screenfull.isEnabled)
|
|
20
|
-
return (h("ion-button", { onClick: this.clickToggle, title: title }, h("ion-icon", { slot: "icon-only", name: this.fullscreen ? "contract" : "expand" })));
|
|
20
|
+
return (h("ion-button", { onClick: this.clickToggle, title: title, "aria-label": title }, h("ion-icon", { slot: "icon-only", name: this.fullscreen ? "contract" : "expand", "aria-hidden": "true" })));
|
|
21
21
|
}
|
|
22
22
|
static get is() { return "gl-fullscreen"; }
|
|
23
23
|
static get states() {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fullscreen.js","sourceRoot":"","sources":["../../../src/components/fullscreen/fullscreen.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AACpD,OAAO,UAAU,MAAM,YAAY,CAAC;AACpC,OAAO,EAAE,EAAE,EAAE,MAAM,cAAc,CAAC;AAKlC,MAAM,OAAO,UAAU;;IAWb,gBAAW,GAAG,GAAG,EAAE,CAAC,IAAI,CAAC,gBAAgB,EAAE,CAAC;sBAV9B,KAAK;;EAE3B,gBAAgB;IACd,UAAU,CAAC,EAAE,CAAC,QAAQ,EAAE,GAAG,EAAE,CAAC,CAAC,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC,YAAY,CAAC,CAAC,CAAC;EAC7E,CAAC;EAEO,gBAAgB;IACtB,UAAU,CAAC,YAAY,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,OAAO,EAAE,CAAC;EACrE,CAAC;EAID,MAAM;IACJ,IAAI,KAAK,GAAG,IAAI,CAAC,UAAU;MACzB,CAAC,CAAC,EAAE,CAAC,0BAA0B,CAAC;MAChC,CAAC,CAAC,EAAE,CAAC,2BAA2B,CAAC,CAAC;IACpC,IAAI,UAAU,CAAC,SAAS;MACtB,OAAO,CACL,kBAAY,OAAO,EAAE,IAAI,CAAC,WAAW,EAAE,KAAK,EAAE,KAAK;
|
|
1
|
+
{"version":3,"file":"fullscreen.js","sourceRoot":"","sources":["../../../src/components/fullscreen/fullscreen.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AACpD,OAAO,UAAU,MAAM,YAAY,CAAC;AACpC,OAAO,EAAE,EAAE,EAAE,MAAM,cAAc,CAAC;AAKlC,MAAM,OAAO,UAAU;;IAWb,gBAAW,GAAG,GAAG,EAAE,CAAC,IAAI,CAAC,gBAAgB,EAAE,CAAC;sBAV9B,KAAK;;EAE3B,gBAAgB;IACd,UAAU,CAAC,EAAE,CAAC,QAAQ,EAAE,GAAG,EAAE,CAAC,CAAC,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC,YAAY,CAAC,CAAC,CAAC;EAC7E,CAAC;EAEO,gBAAgB;IACtB,UAAU,CAAC,YAAY,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,OAAO,EAAE,CAAC;EACrE,CAAC;EAID,MAAM;IACJ,IAAI,KAAK,GAAG,IAAI,CAAC,UAAU;MACzB,CAAC,CAAC,EAAE,CAAC,0BAA0B,CAAC;MAChC,CAAC,CAAC,EAAE,CAAC,2BAA2B,CAAC,CAAC;IACpC,IAAI,UAAU,CAAC,SAAS;MACtB,OAAO,CACL,kBAAY,OAAO,EAAE,IAAI,CAAC,WAAW,EAAE,KAAK,EAAE,KAAK,gBAAc,KAAK;QACpE,gBACE,IAAI,EAAC,WAAW,EAChB,IAAI,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,QAAQ,iBACjC,MAAM,GACR,CACD,CACd,CAAC;EACN,CAAC;;;;;CACF","sourcesContent":["import { h, Component, State } from \"@stencil/core\";\nimport screenfull from \"screenfull\";\nimport { _t } from \"../i18n/i18n\";\n\n@Component({\n tag: \"gl-fullscreen\"\n})\nexport class Fullscreen {\n @State() fullscreen = false;\n\n componentDidLoad() {\n screenfull.on(\"change\", () => (this.fullscreen = screenfull.isFullscreen));\n }\n\n private toggleFullscreen() {\n screenfull.isFullscreen ? screenfull.exit() : screenfull.request();\n }\n\n private clickToggle = () => this.toggleFullscreen();\n\n render() {\n let title = this.fullscreen\n ? _t(\"webmapgl.fullscreen.exit\")\n : _t(\"webmapgl.fullscreen.enter\");\n if (screenfull.isEnabled)\n return (\n <ion-button onClick={this.clickToggle} title={title} aria-label={title}>\n <ion-icon\n slot=\"icon-only\"\n name={this.fullscreen ? \"contract\" : \"expand\"}\n aria-hidden=\"true\"\n ></ion-icon>\n </ion-button>\n );\n }\n}\n"]}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { h
|
|
1
|
+
import { h } from "@stencil/core";
|
|
2
2
|
import { toArray } from "../utils";
|
|
3
3
|
export class LegendItem {
|
|
4
4
|
constructor() {
|
|
@@ -76,7 +76,7 @@ export class LegendItem {
|
|
|
76
76
|
content.push(h("ion-thumbnail", { slot: "start" }, h("img", { src: this.image, alt: this.el.textContent })));
|
|
77
77
|
content.push(h("ion-label", null, h("slot", null)));
|
|
78
78
|
if (this.toggle)
|
|
79
|
-
content.push(h("ion-toggle", { slot: "end", checked: this.visible, onIonChange: this.onToggle }));
|
|
79
|
+
content.push(h("ion-toggle", { slot: "end", checked: this.visible, onIonChange: this.onToggle, "aria-label": "Toggle Layer" }));
|
|
80
80
|
if (this.widget === "divider")
|
|
81
81
|
return h("ion-item-divider", null, content);
|
|
82
82
|
return h("ion-item", null, content);
|