@luzmo/analytics-components-kit 1.0.1-alpha.85 → 1.0.1-alpha.86
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/angular/README.md +1 -0
- package/angular/components/ai-interaction-textarea.component.ts +2 -0
- package/angular/components/dataset-icon.component.ts +21 -0
- package/angular/components/dataset-selector-row.component.ts +2 -0
- package/angular/esm/components/ai-interaction-textarea.component.d.ts +2 -1
- package/angular/esm/components/ai-interaction-textarea.component.js +7 -2
- package/angular/esm/components/dataset-icon.component.d.ts +9 -0
- package/angular/esm/components/dataset-icon.component.js +36 -0
- package/angular/esm/components/dataset-selector-row.component.d.ts +2 -1
- package/angular/esm/components/dataset-selector-row.component.js +7 -2
- package/angular/esm/index.d.ts +3 -1
- package/angular/esm/index.js +3 -0
- package/angular/esm/types.d.ts +14 -0
- package/angular/index.ts +3 -0
- package/angular/types.ts +13 -0
- package/components/ai-chat-messages-container/index.cjs +1 -1
- package/components/ai-chat-messages-container/index.js +2 -2
- package/components/ai-interaction-textarea/ai-interaction-textarea.d.ts +7 -1
- package/components/ai-interaction-textarea/index.cjs +32 -28
- package/components/ai-interaction-textarea/index.js +62 -49
- package/components/area-chart-options.config-C7sMAHco.cjs +20 -0
- package/components/{area-chart-options.config-u8itidsi.js → area-chart-options.config-_J0sG4NF.js} +26 -14
- package/components/{bar-chart-options.config-DIirbAJ0.js → bar-chart-options.config-D1mb5TDl.js} +35 -21
- package/components/bar-chart-options.config-DcxEkOT5.cjs +20 -0
- package/components/box-plot-options.config-SrrbDEYW.cjs +20 -0
- package/components/{box-plot-options.config-BWROiguA.js → box-plot-options.config-xu_i6ms7.js} +88 -52
- package/components/{bubble-chart-options.config-4QD8VPhU.js → bubble-chart-options.config-BacgXkJ_.js} +18 -9
- package/components/bubble-chart-options.config-Ihn6eVQI.cjs +20 -0
- package/components/{bullet-chart-options.config-3bH7uekx.js → bullet-chart-options.config-CDPpX1yc.js} +1 -1
- package/components/{bullet-chart-options.config-tWb6Fio-.cjs → bullet-chart-options.config-DfS4Bwds.cjs} +1 -1
- package/components/calculate-data-item-icon-DZDqb3xu.js +139 -0
- package/components/{calculate-data-item-icon-CX4VW9Km.cjs → calculate-data-item-icon-DjW1_RI1.cjs} +1 -1
- package/components/{choropleth-map-options.config-CMxx3ORp.js → choropleth-map-options.config-B_W9-rhe.js} +84 -63
- package/components/choropleth-map-options.config-ZW8yoZH2.cjs +20 -0
- package/components/{circular-gauge-options.config-DhIKn44k.js → circular-gauge-options.config-DAIjz4Rl.js} +36 -23
- package/components/circular-gauge-options.config-msZ4mfpN.cjs +20 -0
- package/components/color-B6LaL8qz.cjs +20 -0
- package/components/{color-B7m0j8lX.js → color-DuJ4-73S.js} +950 -941
- package/components/{color-range-utils-BSfqtB3A.js → color-range-utils-Bvo9sm5A.js} +32 -31
- package/components/color-range-utils-C5yXW7ZC.cjs +20 -0
- package/components/{column-chart-options.config-D5-yR7iq.js → column-chart-options.config-B5SjBVdy.js} +37 -27
- package/components/column-chart-options.config-BjDvA7i9.cjs +20 -0
- package/components/{conditional-number-options.config-DPYsdML5.js → conditional-number-options.config-BCEpSK9J.js} +40 -24
- package/components/conditional-number-options.config-DgzUo0xi.cjs +20 -0
- package/components/dataset-icon/dataset-icon.d.ts +45 -0
- package/components/dataset-icon/index.cjs +60 -0
- package/components/dataset-icon/index.d.ts +7 -0
- package/components/dataset-icon/index.js +167 -0
- package/components/dataset-selector-list/dataset-selector-list.d.ts +1 -0
- package/components/dataset-selector-list/index.cjs +10 -8
- package/components/dataset-selector-list/index.js +68 -68
- package/components/dataset-selector-row/dataset-selector-row.d.ts +7 -0
- package/components/dataset-selector-row/index.cjs +21 -18
- package/components/dataset-selector-row/index.js +63 -57
- package/components/{date-comparison-filter-options.config-QaoWaFUn.cjs → date-comparison-filter-options.config-DAVncmi0.cjs} +1 -1
- package/components/{date-comparison-filter-options.config-CSwGyuBg.js → date-comparison-filter-options.config-JA_yYpJa.js} +6 -3
- package/components/{date-filter-options.config-n-zhWaYa.cjs → date-filter-options.config-CWPMtA18.cjs} +1 -1
- package/components/{date-filter-options.config-BTVyHRkp.js → date-filter-options.config-DBRxlTWy.js} +6 -3
- package/components/display-settings/index.cjs +1 -1
- package/components/display-settings/index.js +1 -1
- package/components/display-settings-binning/index.cjs +5 -5
- package/components/display-settings-binning/index.js +30 -29
- package/components/display-settings-datetime/index.cjs +29 -29
- package/components/display-settings-datetime/index.js +120 -112
- package/components/display-settings-grand-totals/index.cjs +4 -4
- package/components/display-settings-grand-totals/index.js +24 -23
- package/components/display-settings-numeric/index.cjs +48 -48
- package/components/display-settings-numeric/index.js +211 -194
- package/components/display-settings-period-over-period/index.cjs +16 -16
- package/components/display-settings-period-over-period/index.js +97 -91
- package/components/{donut-chart-options.config-3ZqX8Cbb.js → donut-chart-options.config-BulUEiaH.js} +37 -21
- package/components/donut-chart-options.config-tNpqBZfR.cjs +20 -0
- package/components/draggable-data-item/index.cjs +8 -8
- package/components/draggable-data-item/index.js +45 -44
- package/components/draggable-data-item-level/index.cjs +11 -11
- package/components/draggable-data-item-level/index.js +92 -89
- package/components/{dropdown-filter-options.config-CGJTtgAX.js → dropdown-filter-options.config-D9dvPypF.js} +10 -7
- package/components/{dropdown-filter-options.config-DJvfCTk7.cjs → dropdown-filter-options.config-DS-MORmq.cjs} +1 -1
- package/components/droppable-slot/index.cjs +20 -20
- package/components/droppable-slot/index.js +181 -167
- package/components/edit-item/index.cjs +9 -9
- package/components/edit-item/index.js +119 -116
- package/components/edit-option/index.cjs +1 -1
- package/components/edit-option/index.js +1 -1
- package/components/edit-option-action-button-group/index.cjs +8 -8
- package/components/edit-option-action-button-group/index.js +53 -52
- package/components/{edit-option-base-Bh29-Cak.js → edit-option-base-DIc7iC-b.js} +1 -1
- package/components/{edit-option-base-tFr8Qg2B.cjs → edit-option-base-VhTih9T1.cjs} +1 -1
- package/components/edit-option-color-palette-picker/index.cjs +1 -1
- package/components/edit-option-color-palette-picker/index.js +1 -1
- package/components/edit-option-color-picker/index.cjs +1 -1
- package/components/edit-option-color-picker/index.js +1 -1
- package/components/edit-option-color-range/index.cjs +19 -19
- package/components/edit-option-color-range/index.js +117 -106
- package/components/edit-option-multi-language-field/index.cjs +3 -3
- package/components/edit-option-multi-language-field/index.js +27 -26
- package/components/edit-option-number-field/index.cjs +1 -1
- package/components/edit-option-number-field/index.js +1 -1
- package/components/edit-option-picker/index.cjs +5 -5
- package/components/edit-option-picker/index.js +7 -7
- package/components/edit-option-position-picker/index.cjs +4 -4
- package/components/edit-option-position-picker/index.js +25 -21
- package/components/edit-option-positions-number-field/index.cjs +9 -9
- package/components/edit-option-positions-number-field/index.js +81 -76
- package/components/edit-option-radio-button-group/index.cjs +6 -6
- package/components/edit-option-radio-button-group/index.js +22 -21
- package/components/edit-option-slider/index.cjs +1 -1
- package/components/edit-option-slider/index.js +1 -1
- package/components/edit-option-switch/index.cjs +1 -1
- package/components/edit-option-switch/index.js +1 -1
- package/components/edit-option-text-field/index.cjs +2 -2
- package/components/edit-option-text-field/index.js +23 -22
- package/components/en-BKBhKBXY.cjs +20 -0
- package/components/en-BOTjhwEc.js +1488 -0
- package/components/{en-GB-CbNfyZMo.js → en-GB-CEHEs8F2.js} +1 -1
- package/components/{en-GB-CXVKFWyH.cjs → en-GB-DG6uS3sM.cjs} +1 -1
- package/components/{evolution-number-options.config-Bc9eKYnn.cjs → evolution-number-options.config-BgIZY4gQ.cjs} +1 -1
- package/components/{evolution-number-options.config-BIPO_4n3.js → evolution-number-options.config-DzkfeoIN.js} +14 -11
- package/components/{extrapolate-color-C0n1UDs-.cjs → extrapolate-color-0j_AeYkz.cjs} +1 -1
- package/components/{extrapolate-color-v1PimdQr.js → extrapolate-color-CC9CURf6.js} +1 -1
- package/components/filter-data-item-picker/index.cjs +7 -7
- package/components/filter-data-item-picker/index.js +86 -85
- package/components/filter-expression-picker/index.cjs +1 -1
- package/components/filter-expression-picker/index.js +1 -1
- package/components/filter-item/index.cjs +6 -6
- package/components/filter-item/index.js +119 -109
- package/components/filter-value-picker/index.cjs +2 -2
- package/components/filter-value-picker/index.js +36 -34
- package/components/filter-value-picker-datetime/index.cjs +8 -8
- package/components/filter-value-picker-datetime/index.js +71 -56
- package/components/filter-value-picker-hierarchy/index.cjs +12 -12
- package/components/filter-value-picker-hierarchy/index.js +124 -113
- package/components/filter-value-picker-numeric/index.cjs +8 -8
- package/components/filter-value-picker-numeric/index.js +110 -101
- package/components/focusable-B3E_hQmm.cjs +20 -0
- package/components/{focusable-BS2pbY7w.js → focusable-DCIFkpiW.js} +26 -24
- package/components/{funnel-chart-options.config-CrJy2U7_.js → funnel-chart-options.config-C_VjTOvD.js} +20 -5
- package/components/funnel-chart-options.config-D7H7gFcx.cjs +20 -0
- package/components/{get-css-variable-CuDaWSjr.cjs → get-css-variable-DLiZYZEi.cjs} +2 -2
- package/components/{get-css-variable-DEf4GhTH.js → get-css-variable-YlLiVgo8.js} +4 -4
- package/components/grid/index.cjs +46 -46
- package/components/grid/index.js +1873 -2612
- package/components/{heat-map-options.config-CmL87j1j.js → heat-map-options.config-BnLWe8jS.js} +41 -35
- package/components/heat-map-options.config-DVH-Bb5-.cjs +20 -0
- package/components/heat-table-options.config-B12JEYnp.cjs +20 -0
- package/components/{heat-table-options.config-BrCYAgYD.js → heat-table-options.config-CUsDdgUr.js} +88 -60
- package/components/helpers-DXQwEH1P.cjs +20 -0
- package/components/helpers-v1bPALRP.js +91 -0
- package/components/hexbin-map-options.config-DZERRhM8.cjs +20 -0
- package/components/{hexbin-map-options.config-BguV1w8q.js → hexbin-map-options.config-F-7uCqxb.js} +38 -20
- package/components/index-BPN3bG9X.js +1733 -0
- package/components/{index-BNAmjOkm.cjs → index-BPNsFiyq.cjs} +4 -4
- package/components/index-CQ9ck-BO.cjs +249 -0
- package/components/index-CXn67vdn.cjs +121 -0
- package/components/{index-haa7WNrl.js → index-CdIUfo-L.js} +481 -453
- package/components/{index-3WsfvkZF.js → index-Do7O9azB.js} +123 -112
- package/components/{index-BDFBUGBc.js → index-PMDgRSzR.js} +104 -94
- package/components/index-cfj52IbK.cjs +20 -0
- package/components/index.cjs +1 -1
- package/components/index.js +90 -88
- package/components/item-options-configs.cjs +1 -1
- package/components/item-options-configs.js +37 -37
- package/components/{line-chart-options.config-BhirTGqD.js → line-chart-options.config-DB3IsXXr.js} +28 -13
- package/components/line-chart-options.config-DSugoe0t.cjs +20 -0
- package/components/{localize-CcDpq940.js → localize-BX7q0S0M.js} +10 -10
- package/components/{localize-C4zNlrwK.cjs → localize-r7ALOUy_.cjs} +1 -1
- package/components/{marker-map-options.config-Bx17jmiq.js → marker-map-options.config-DPJ955tt.js} +1 -1
- package/components/{marker-map-options.config-CvhCylSC.cjs → marker-map-options.config-_FYZzRwA.cjs} +1 -1
- package/components/pivot-table-options.config-BiJXKSFR.cjs +20 -0
- package/components/{pivot-table-options.config-CFc7y0IT.js → pivot-table-options.config-DNK_AIG7.js} +24 -15
- package/components/pyramid-chart-options.config-C4zbFS26.cjs +20 -0
- package/components/{pyramid-chart-options.config-2Waxb11l.js → pyramid-chart-options.config-CcVMatYx.js} +43 -29
- package/components/{radar-chart-options.config-CPN5fOl8.js → radar-chart-options.config-CUZn_3Fd.js} +23 -11
- package/components/radar-chart-options.config-EqQu6PTh.cjs +20 -0
- package/components/{regular-table-options.config-CFKCJQK1.js → regular-table-options.config-BoLZsBry.js} +23 -17
- package/components/{regular-table-options.config-YRuoijIk.cjs → regular-table-options.config-DTx3RTnS.cjs} +1 -1
- package/components/{route-map-options.config-CyolTJfK.js → route-map-options.config-CN86T7c0.js} +109 -87
- package/components/route-map-options.config-D7NJePTu.cjs +20 -0
- package/components/{sankey-diagram-options.config-D7OSvSqm.cjs → sankey-diagram-options.config-RFB83YLZ.cjs} +1 -1
- package/components/{sankey-diagram-options.config-Ldjk84ro.js → sankey-diagram-options.config-tVLKy_Zn.js} +10 -7
- package/components/scatter-plot-options.config-CFfGJXsV.cjs +20 -0
- package/components/{scatter-plot-options.config-CfxEfkQ1.js → scatter-plot-options.config-Corlzno1.js} +86 -56
- package/components/{search-filter-options.config-Oqco9BKj.cjs → search-filter-options.config-BCaDlYqZ.cjs} +1 -1
- package/components/{search-filter-options.config-C0syQmP4.js → search-filter-options.config-BE3JhR-F.js} +6 -3
- package/components/{set-locale-nv7fWEtl.js → set-locale-B-Tz2sdI.js} +8 -1
- package/components/{slicer-filter-options.config-DmOe3440.js → slicer-filter-options.config-3JZZcw5C.js} +18 -9
- package/components/slicer-filter-options.config-DNI-XevE.cjs +20 -0
- package/components/{slider-filter-options.config-B1M8RcDs.js → slider-filter-options.config-DH4SS8wH.js} +1 -1
- package/components/{slider-filter-options.config-k45I-t6G.cjs → slider-filter-options.config-_8Z2zKmU.cjs} +1 -1
- package/components/slot-contents-picker/index.cjs +33 -33
- package/components/slot-contents-picker/index.js +205 -194
- package/components/slot-menu/index.cjs +12 -12
- package/components/slot-menu/index.js +184 -171
- package/components/slot-menu-list/index.cjs +3 -3
- package/components/slot-menu-list/index.js +103 -97
- package/components/speedometer-chart-options.config-BX9LTQBH.cjs +20 -0
- package/components/{speedometer-chart-options.config-CzOmuEF8.js → speedometer-chart-options.config-SL581yOa.js} +53 -31
- package/components/{spike-map-options.config-Cbt1YUw6.js → spike-map-options.config-C5KewecZ.js} +122 -91
- package/components/spike-map-options.config-DoBFXPmN.cjs +20 -0
- package/components/{sunburst-chart-options.config-Yrxc2i57.cjs → sunburst-chart-options.config-AbNjWS6t.cjs} +1 -1
- package/components/{sunburst-chart-options.config-_dyLQxPJ.js → sunburst-chart-options.config-CNauGQJv.js} +20 -9
- package/components/{symbol-map-options.config-BORL1NSU.js → symbol-map-options.config-DdDA4aa7.js} +20 -11
- package/components/symbol-map-options.config-m-lwLTtu.cjs +20 -0
- package/components/treemap-chart-options.config-C0Q9aQ1Z.cjs +20 -0
- package/components/{treemap-chart-options.config-B9i9qIm_.js → treemap-chart-options.config-D5AJaF_u.js} +37 -20
- package/components/utils.cjs +1 -1
- package/components/utils.js +65 -64
- package/components/{video-options.config-B0asgYt8.cjs → video-options.config-CGsDTwHc.cjs} +1 -1
- package/components/{video-options.config-UX-9MDfS.js → video-options.config-Dk36zJ1B.js} +10 -7
- package/components/{wordcloud-chart-options.config-BKtJT8Va.cjs → wordcloud-chart-options.config-vGfCW8kE.cjs} +1 -1
- package/components/{wordcloud-chart-options.config-BoB_KuhA.js → wordcloud-chart-options.config-w2NUIWVA.js} +7 -4
- package/custom-elements.json +154 -20
- package/index.d.ts +1 -0
- package/package.json +6 -1
- package/types.d.ts +14 -0
- package/components/area-chart-options.config-Bl8bhhOo.cjs +0 -20
- package/components/bar-chart-options.config-CePAqM83.cjs +0 -20
- package/components/box-plot-options.config-BVNrV2eD.cjs +0 -20
- package/components/bubble-chart-options.config-BDgOe3GQ.cjs +0 -20
- package/components/calculate-data-item-icon-C8CbsMQf.js +0 -139
- package/components/choropleth-map-options.config-CWJACFd0.cjs +0 -20
- package/components/circular-gauge-options.config-BMxgq3zH.cjs +0 -20
- package/components/color-Czp4Im5q.cjs +0 -20
- package/components/color-range-utils-DYYR-iwx.cjs +0 -20
- package/components/column-chart-options.config-BV9R3ssH.cjs +0 -20
- package/components/conditional-number-options.config-Co099Qfm.cjs +0 -20
- package/components/donut-chart-options.config-BQyPgnC9.cjs +0 -20
- package/components/en--a5SfjnM.cjs +0 -20
- package/components/en-CtCctD2c.js +0 -1483
- package/components/focusable-QLh-LlNt.cjs +0 -20
- package/components/funnel-chart-options.config-DrP4AFgk.cjs +0 -20
- package/components/heat-map-options.config-CIHnPdYE.cjs +0 -20
- package/components/heat-table-options.config-DTlZRc_i.cjs +0 -20
- package/components/helpers-9I0oLoUB.cjs +0 -20
- package/components/helpers-bR8Ibjqh.js +0 -79
- package/components/hexbin-map-options.config-CKnn3VAB.cjs +0 -20
- package/components/index-BGb_wRRW.js +0 -1766
- package/components/index-BUal0r_D.cjs +0 -121
- package/components/index-D1Y5TRsH.cjs +0 -20
- package/components/index-DvkzMbLt.cjs +0 -249
- package/components/line-chart-options.config-Cqwou5u6.cjs +0 -20
- package/components/pivot-table-options.config-uZDAertf.cjs +0 -20
- package/components/pyramid-chart-options.config-DoGfEvzU.cjs +0 -20
- package/components/radar-chart-options.config-CtNUMN1l.cjs +0 -20
- package/components/route-map-options.config-CVTk5RVL.cjs +0 -20
- package/components/scatter-plot-options.config-5gN7pMTm.cjs +0 -20
- package/components/slicer-filter-options.config-CrusP6a0.cjs +0 -20
- package/components/speedometer-chart-options.config-B4ceg_qI.cjs +0 -20
- package/components/spike-map-options.config-BkkDqb4g.cjs +0 -20
- package/components/symbol-map-options.config-NpBKm64d.cjs +0 -20
- package/components/treemap-chart-options.config-x4J54WSw.cjs +0 -20
|
@@ -0,0 +1,167 @@
|
|
|
1
|
+
/*! * A kit of modern Luzmo Web Components for analytics in your web application.
|
|
2
|
+
*
|
|
3
|
+
* Copyright © 2025 Luzmo
|
|
4
|
+
* All rights reserved.
|
|
5
|
+
* Luzmo web components (“Luzmo Web Components”)
|
|
6
|
+
* must be used according to the Luzmo Terms of Service.
|
|
7
|
+
* This license allows users with a current active Luzmo account
|
|
8
|
+
* to use the Luzmo Web Components. This license terminates
|
|
9
|
+
* automatically if a user no longer has an active Luzmo account.
|
|
10
|
+
* Please view the Luzmo Terms of Service at: https://www.luzmo.com/information-pages/terms-of-use.
|
|
11
|
+
*
|
|
12
|
+
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
13
|
+
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
14
|
+
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
15
|
+
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
16
|
+
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
17
|
+
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
18
|
+
* SOFTWARE.
|
|
19
|
+
* */
|
|
20
|
+
import { luzmoIcon as b, luzmoFileUploadOutline as g, luzmoPlugin as x } from "@luzmo/icons";
|
|
21
|
+
import { LitElement as m, unsafeCSS as k, html as i } from "lit";
|
|
22
|
+
import { property as s } from "lit/decorators.js";
|
|
23
|
+
(function() {
|
|
24
|
+
if (typeof document < "u" && !document.querySelector("style[data-luzmo-vars]")) {
|
|
25
|
+
const o = document.createElement("style");
|
|
26
|
+
o.setAttribute("data-luzmo-vars", ""), o.textContent = 'html{--luzmo-animation-duration: 0.15s;--luzmo-border-color: rgba(var(--luzmo-border-color-rgb), 0.1);--luzmo-border-color-hover: rgba(var(--luzmo-border-color-rgb), 0.15);--luzmo-border-color-down: rgba(var(--luzmo-border-color-rgb), 0.3);--luzmo-border-color-focus: rgba(var(--luzmo-border-color-rgb), 0.15);--luzmo-border-color-rgb: 0, 0, 0;--luzmo-border-color-full: rgb(180, 180, 180);--luzmo-border-color-full-hover: rgb(140, 140, 140);--luzmo-border-color-full-down: rgb(110, 110, 110);--luzmo-border-color-full-focus: rgb(140, 140, 140);--luzmo-border-color-disabled: #dddddd;--luzmo-border-radius: 6px;--luzmo-border-radius-s: 4px;--luzmo-border-radius-l: 8px;--luzmo-border-radius-xl: 12px;--luzmo-border-radius-full: 999rem;--luzmo-background-color: #ffffff;--luzmo-background-color-rgb: 255, 255, 255;--luzmo-background-color-disabled: #eeeeee;--luzmo-background-color-hover: #f0f0fc;--luzmo-background-color-down: #f1f1ff;--luzmo-background-color-focus: #f0f0fc;--luzmo-background-color-highlight: rgb(240, 240, 240);--luzmo-background-color-highlight-disabled: rgb(245, 245, 245);--luzmo-background-color-highlight-hover: rgb(225, 225, 225);--luzmo-background-color-highlight-down: rgb(215, 215, 215);--luzmo-background-color-highlight-focus: rgb(225, 225, 225);--luzmo-background-color-alt-1: rgb(250, 250, 250);--luzmo-background-color-alt-2: rgb(239, 239, 239);--luzmo-border-width: 1px;--luzmo-font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", Helvetica, Arial, sans-serif;--luzmo-font-size-xs: 10px;--luzmo-font-size-s: 12px;--luzmo-font-size-m: 14px;--luzmo-font-size: 14px;--luzmo-font-size-l: 16px;--luzmo-font-size-xl: 18px;--luzmo-font-size-xxl: 20px;--luzmo-font-style: normal;--luzmo-line-height: normal;--luzmo-font-weight: 400;--luzmo-font-weight-semibold: 500;--luzmo-font-weight-bold: 600;--luzmo-font-color: #333;--luzmo-font-color-hard: #000;--luzmo-font-color-disabled: var(--luzmo-color-disabled);--luzmo-font-color-extra-dimmed: #888;--luzmo-font-color-hover: #333;--luzmo-font-color-down: #111;--luzmo-font-color-focus: #333;--luzmo-primary: #4434ff;--luzmo-primary-hover: #4234e4;--luzmo-primary-down: #392cc7;--luzmo-primary-focus: #4234e4;--luzmo-primary-inverse-color: #ffffff;--luzmo-primary-rgb: 68, 52, 255;--luzmo-secondary: #ff00ff;--luzmo-secondary-hover: #e309e3;--luzmo-secondary-down: #c711c7;--luzmo-secondary-focus: #e309e3;--luzmo-secondary-inverse-color: #ffffff;--luzmo-secondary-rgb: 255, 0, 255;--luzmo-secondary-outline: rgba(255, 0, 255, 0.2);--luzmo-negative-color: #ca221c;--luzmo-negative-color-hover: #b3241f;--luzmo-negative-color-down: #9f231f;--luzmo-negative-color-focus: #b3241f;--luzmo-negative-color-rgb: 202, 34, 28;--luzmo-positive-color: rgb(20, 150, 101);--luzmo-positive-color-hover: rgb(17, 128, 86);--luzmo-positive-color-down: rgb(16, 105, 71);--luzmo-positive-color-focus: rgb(17, 128, 86);--luzmo-positive-color-rgb: 20, 150, 101;--luzmo-selected-color: rgb(110, 110, 110);--luzmo-selected-color-hover: rgb(70, 70, 70);--luzmo-selected-color-down: rgb(40, 40, 40);--luzmo-selected-color-focus: rgb(70, 70, 70);--luzmo-selected-color-hard: #1e1e1e;--luzmo-selected-color-hard-hover: rgb(0, 0, 0);--luzmo-selected-color-hard-down: rgb(0, 0, 0);--luzmo-selected-color-hard-focus: rgb(0, 0, 0);--luzmo-color-informative: #1a77e9;--luzmo-color-informative-rgb: 26, 119, 233;--luzmo-color-disabled: #aaaaaa;--luzmo-spacing-1: 2px;--luzmo-spacing-2: 4px;--luzmo-spacing-3: 8px;--luzmo-spacing-4: 12px;--luzmo-spacing-5: 16px;--luzmo-indicator-gap: 2px;--luzmo-indicator-width: 1px;--luzmo-indicator-color: var(--luzmo-primary);--luzmo-component-height-xxs: 20px;--luzmo-component-height-xs: 24px;--luzmo-component-height-s: 28px;--luzmo-component-height: 32px;--luzmo-component-height-l: 40px;--luzmo-component-height-xl: 48px;--luzmo-component-height-xxl: 64px;--luzmo-icon-size-xxs: 12px;--luzmo-icon-size-xs: 14px;--luzmo-icon-size-s: 16px;--luzmo-icon-size-m: 18px;--luzmo-icon-size-l: 20px;--luzmo-icon-size-xl: 22px;--luzmo-icon-size-xxl: 32px}', document.head.appendChild(o);
|
|
27
|
+
}
|
|
28
|
+
})();
|
|
29
|
+
const h = ".dataset-icon{display:flex;justify-content:center;align-items:center}.dataset-icon .public-connector{overflow:hidden}.dataset-icon .public-connector img{display:block;object-fit:cover}.dataset-icon [class*=public-connector-]{width:100%;height:100%;background-size:cover;background-repeat:no-repeat;background-position:center}.dataset-icon .public-connector-16,.dataset-icon .public-connector-24,.dataset-icon .public-connector-32{background-image:var(--connector-sprite-64x64)}.dataset-icon .public-connector-48,.dataset-icon .public-connector-64{background-image:var(--connector-sprite-96x96)}.dataset-icon .text-primary{color:var(--luzmo-primary, #007bff);display:flex;align-items:center;justify-content:center}.dataset-icon .text-primary.upload-icon,.dataset-icon .text-primary.plugin-icon{width:100%;height:100%}.public-connector-16.amazonathena{background-position:0 0}.public-connector-16.asana{background-position:0 -16px}.public-connector-16.bigquery{background-position:0 -32px}.public-connector-16.citybikes{background-position:0 -48px}.public-connector-16.clickhouse{background-position:0 -64px}.public-connector-16.demodataplugin{background-position:0 -80px}.public-connector-16.elasticsearch{background-position:0 -96px}.public-connector-16.exactonline,.public-connector-16.exactonlinenl{background-position:0 -112px}.public-connector-16.google{background-position:0 -128px}.public-connector-16.googleanalytics,.public-connector-16.googleanalyticsv4{background-position:0 -144px}.public-connector-16.googledrive{background-position:0 -160px}.public-connector-16.hubspot{background-position:0 -176px}.public-connector-16.lobbipad{background-position:0 -192px}.public-connector-16.mailchimp{background-position:0 -208px}.public-connector-16.mariadb{background-position:0 -224px}.public-connector-16.mongodb{background-position:0 -240px}.public-connector-16.mysql{background-position:0 -256px}.public-connector-16.oracle{background-position:0 -272px}.public-connector-16.panoply{background-position:0 -288px}.public-connector-16.pipedrive{background-position:0 -304px}.public-connector-16.pipelinedb{background-position:0 -320px}.public-connector-16.postgresql{background-position:0 -336px}.public-connector-16.presto{background-position:0 -352px}.public-connector-16.redshift{background-position:0 -368px}.public-connector-16.salesforce{background-position:0 -384px}.public-connector-16.saphana{background-position:0 -400px}.public-connector-16.snowflake{background-position:0 -416px}.public-connector-16.sqlserver{background-position:0 -432px}.public-connector-16.stardog{background-position:0 -448px}.public-connector-16.synapse{background-position:0 -464px}.public-connector-16.teamleader{background-position:0 -480px}.public-connector-16.trino{background-position:0 -496px}.public-connector-16.typeform{background-position:0 -512px}.public-connector-16.zendesk{background-position:0 -528px}.public-connector-24.amazonathena{background-position:0 0}.public-connector-24.asana{background-position:0 -24px}.public-connector-24.bigquery{background-position:0 -48px}.public-connector-24.citybikes{background-position:0 -72px}.public-connector-24.clickhouse{background-position:0 -96px}.public-connector-24.demodataplugin{background-position:0 -120px}.public-connector-24.elasticsearch{background-position:0 -144px}.public-connector-24.exactonline,.public-connector-24.exactonlinenl{background-position:0 -168px}.public-connector-24.google{background-position:0 -192px}.public-connector-24.googleanalytics,.public-connector-24.googleanalyticsv4{background-position:0 -216px}.public-connector-24.googledrive{background-position:0 -240px}.public-connector-24.hubspot{background-position:0 -264px}.public-connector-24.lobbipad{background-position:0 -288px}.public-connector-24.mailchimp{background-position:0 -312px}.public-connector-24.mariadb{background-position:0 -336px}.public-connector-24.mongodb{background-position:0 -360px}.public-connector-24.mysql{background-position:0 -384px}.public-connector-24.oracle{background-position:0 -408px}.public-connector-24.panoply{background-position:0 -432px}.public-connector-24.pipedrive{background-position:0 -456px}.public-connector-24.pipelinedb{background-position:0 -480px}.public-connector-24.postgresql{background-position:0 -504px}.public-connector-24.presto{background-position:0 -528px}.public-connector-24.redshift{background-position:0 -552px}.public-connector-24.salesforce{background-position:0 -576px}.public-connector-24.saphana{background-position:0 -600px}.public-connector-24.snowflake{background-position:0 -624px}.public-connector-24.sqlserver{background-position:0 -648px}.public-connector-24.stardog{background-position:0 -672px}.public-connector-24.synapse{background-position:0 -696px}.public-connector-24.teamleader{background-position:0 -720px}.public-connector-24.trino{background-position:0 -744px}.public-connector-24.typeform{background-position:0 -768px}.public-connector-24.zendesk{background-position:0 -792px}.public-connector-32.amazonathena{background-position:0 0}.public-connector-32.asana{background-position:0 -32px}.public-connector-32.bigquery{background-position:0 -64px}.public-connector-32.citybikes{background-position:0 -96px}.public-connector-32.clickhouse{background-position:0 -128px}.public-connector-32.demodataplugin{background-position:0 -160px}.public-connector-32.elasticsearch{background-position:0 -192px}.public-connector-32.exactonline,.public-connector-32.exactonlinenl{background-position:0 -224px}.public-connector-32.google{background-position:0 -256px}.public-connector-32.googleanalytics,.public-connector-32.googleanalyticsv4{background-position:0 -288px}.public-connector-32.googledrive{background-position:0 -320px}.public-connector-32.hubspot{background-position:0 -352px}.public-connector-32.lobbipad{background-position:0 -384px}.public-connector-32.mailchimp{background-position:0 -416px}.public-connector-32.mariadb{background-position:0 -448px}.public-connector-32.mongodb{background-position:0 -480px}.public-connector-32.mysql{background-position:0 -512px}.public-connector-32.oracle{background-position:0 -544px}.public-connector-32.panoply{background-position:0 -576px}.public-connector-32.pipedrive{background-position:0 -608px}.public-connector-32.pipelinedb{background-position:0 -640px}.public-connector-32.postgresql{background-position:0 -672px}.public-connector-32.presto{background-position:0 -704px}.public-connector-32.redshift{background-position:0 -736px}.public-connector-32.salesforce{background-position:0 -768px}.public-connector-32.saphana{background-position:0 -800px}.public-connector-32.snowflake{background-position:0 -832px}.public-connector-32.sqlserver{background-position:0 -864px}.public-connector-32.stardog{background-position:0 -896px}.public-connector-32.synapse{background-position:0 -928px}.public-connector-32.teamleader{background-position:0 -960px}.public-connector-32.trino{background-position:0 -992px}.public-connector-32.typeform{background-position:0 -1024px}.public-connector-32.zendesk{background-position:0 -1056px}.public-connector-48.amazonathena{background-position:0 0}.public-connector-48.asana{background-position:0 -48px}.public-connector-48.bigquery{background-position:0 -96px}.public-connector-48.citybikes{background-position:0 -144px}.public-connector-48.clickhouse{background-position:0 -192px}.public-connector-48.demodataplugin{background-position:0 -240px}.public-connector-48.elasticsearch{background-position:0 -288px}.public-connector-48.exactonline,.public-connector-48.exactonlinenl{background-position:0 -336px}.public-connector-48.google{background-position:0 -384px}.public-connector-48.googleanalytics,.public-connector-48.googleanalyticsv4{background-position:0 -432px}.public-connector-48.googledrive{background-position:0 -480px}.public-connector-48.hubspot{background-position:0 -528px}.public-connector-48.lobbipad{background-position:0 -576px}.public-connector-48.mailchimp{background-position:0 -624px}.public-connector-48.mariadb{background-position:0 -672px}.public-connector-48.mongodb{background-position:0 -720px}.public-connector-48.mysql{background-position:0 -768px}.public-connector-48.oracle{background-position:0 -816px}.public-connector-48.panoply{background-position:0 -864px}.public-connector-48.pipedrive{background-position:0 -912px}.public-connector-48.pipelinedb{background-position:0 -960px}.public-connector-48.postgresql{background-position:0 -1008px}.public-connector-48.presto{background-position:0 -1056px}.public-connector-48.redshift{background-position:0 -1104px}.public-connector-48.salesforce{background-position:0 -1152px}.public-connector-48.saphana{background-position:0 -1200px}.public-connector-48.snowflake{background-position:0 -1248px}.public-connector-48.sqlserver{background-position:0 -1296px}.public-connector-48.stardog{background-position:0 -1344px}.public-connector-48.synapse{background-position:0 -1392px}.public-connector-48.teamleader{background-position:0 -1440px}.public-connector-48.trino{background-position:0 -1488px}.public-connector-48.typeform{background-position:0 -1536px}.public-connector-48.zendesk{background-position:0 -1584px}.public-connector-64.amazonathena{background-position:0 0}.public-connector-64.asana{background-position:0 -64px}.public-connector-64.bigquery{background-position:0 -128px}.public-connector-64.citybikes{background-position:0 -192px}.public-connector-64.clickhouse{background-position:0 -256px}.public-connector-64.demodataplugin{background-position:0 -320px}.public-connector-64.elasticsearch{background-position:0 -384px}.public-connector-64.exactonline,.public-connector-64.exactonlinenl{background-position:0 -448px}.public-connector-64.google{background-position:0 -512px}.public-connector-64.googleanalytics,.public-connector-64.googleanalyticsv4{background-position:0 -576px}.public-connector-64.googledrive{background-position:0 -640px}.public-connector-64.hubspot{background-position:0 -704px}.public-connector-64.lobbipad{background-position:0 -768px}.public-connector-64.mailchimp{background-position:0 -832px}.public-connector-64.mariadb{background-position:0 -896px}.public-connector-64.mongodb{background-position:0 -960px}.public-connector-64.mysql{background-position:0 -1024px}.public-connector-64.oracle{background-position:0 -1088px}.public-connector-64.panoply{background-position:0 -1152px}.public-connector-64.pipedrive{background-position:0 -1216px}.public-connector-64.pipelinedb{background-position:0 -1280px}.public-connector-64.postgresql{background-position:0 -1344px}.public-connector-64.presto{background-position:0 -1408px}.public-connector-64.redshift{background-position:0 -1472px}.public-connector-64.salesforce{background-position:0 -1536px}.public-connector-64.saphana{background-position:0 -1600px}.public-connector-64.snowflake{background-position:0 -1664px}.public-connector-64.sqlserver{background-position:0 -1728px}.public-connector-64.stardog{background-position:0 -1792px}.public-connector-64.synapse{background-position:0 -1856px}.public-connector-64.teamleader{background-position:0 -1920px}.public-connector-64.trino{background-position:0 -1984px}.public-connector-64.typeform{background-position:0 -2048px}.public-connector-64.zendesk{background-position:0 -2112px}";
|
|
30
|
+
var z = Object.defineProperty, u = (e, o, n, a) => {
|
|
31
|
+
for (var c = void 0, r = e.length - 1, p; r >= 0; r--)
|
|
32
|
+
(p = e[r]) && (c = p(o, n, c) || c);
|
|
33
|
+
return c && z(o, n, c), c;
|
|
34
|
+
};
|
|
35
|
+
const f = [
|
|
36
|
+
"amazonathena",
|
|
37
|
+
"asana",
|
|
38
|
+
"bigquery",
|
|
39
|
+
"citybikes",
|
|
40
|
+
"clickhouse",
|
|
41
|
+
"demodataplugin",
|
|
42
|
+
"elasticsearch",
|
|
43
|
+
"exact",
|
|
44
|
+
"exactonline",
|
|
45
|
+
"exactonlinenl",
|
|
46
|
+
"google",
|
|
47
|
+
"googleanalytics",
|
|
48
|
+
"googleanalyticsv4",
|
|
49
|
+
"googledrive",
|
|
50
|
+
"hubspot",
|
|
51
|
+
"mailchimp",
|
|
52
|
+
"mariadb",
|
|
53
|
+
"mongodb",
|
|
54
|
+
"mysql",
|
|
55
|
+
"oracle",
|
|
56
|
+
"panoply",
|
|
57
|
+
"pipedrive",
|
|
58
|
+
"pipelinedb",
|
|
59
|
+
"postgresql",
|
|
60
|
+
"presto",
|
|
61
|
+
"redshift",
|
|
62
|
+
"salesforce",
|
|
63
|
+
"saphana",
|
|
64
|
+
"snowflake",
|
|
65
|
+
"sqlserver",
|
|
66
|
+
"stardog",
|
|
67
|
+
"synapse",
|
|
68
|
+
"teamleader",
|
|
69
|
+
"trino",
|
|
70
|
+
"typeform",
|
|
71
|
+
"zendesk"
|
|
72
|
+
];
|
|
73
|
+
function y(e) {
|
|
74
|
+
const o = {};
|
|
75
|
+
return e.forEach((n) => {
|
|
76
|
+
(n.size === "32px" || n.size === "64px") && (o[n.size] = n.url);
|
|
77
|
+
}), o;
|
|
78
|
+
}
|
|
79
|
+
const l = class l extends m {
|
|
80
|
+
constructor() {
|
|
81
|
+
super(...arguments), this.size = "32px", this.appUrl = "", this._subtype = "", this._isPublicConnector = !1, this._thumbnails = {}, this.thumbnailSizeMap = {
|
|
82
|
+
"16px": "32px",
|
|
83
|
+
"24px": "32px",
|
|
84
|
+
"32px": "32px",
|
|
85
|
+
"48px": "64px",
|
|
86
|
+
"64px": "64px"
|
|
87
|
+
};
|
|
88
|
+
}
|
|
89
|
+
willUpdate(o) {
|
|
90
|
+
(o.has("datasetInfo") || o.has("size")) && this._updateDatasetProperties();
|
|
91
|
+
}
|
|
92
|
+
_updateDatasetProperties() {
|
|
93
|
+
var o, n;
|
|
94
|
+
if (!this.datasetInfo) {
|
|
95
|
+
this._subtype = "", this._isPublicConnector = !1, this._thumbnails = {};
|
|
96
|
+
return;
|
|
97
|
+
}
|
|
98
|
+
this._subtype = this.datasetInfo.subtype || "", this._isPublicConnector = this.datasetInfo.subtype !== "api" && this.datasetInfo.subtype !== "upload" && f.includes(
|
|
99
|
+
this.datasetInfo.subtype
|
|
100
|
+
), this._thumbnails = (n = (o = this.datasetInfo.account) == null ? void 0 : o.plugin) != null && n.thumbnails ? y(this.datasetInfo.account.plugin.thumbnails) : {};
|
|
101
|
+
}
|
|
102
|
+
render() {
|
|
103
|
+
if (!this.datasetInfo)
|
|
104
|
+
return i``;
|
|
105
|
+
const o = this.thumbnailSizeMap[this.size], n = !!this._thumbnails[o], a = this.size.slice(0, -2), c = this.appUrl ? `${this.appUrl}/assets/images/connectors/sprites/all-connectors.64x64.png` : "", r = this.appUrl ? `${this.appUrl}/assets/images/connectors/sprites/all-connectors.96x96.png` : "";
|
|
106
|
+
if (this._subtype !== "upload" && n) {
|
|
107
|
+
const p = this._thumbnails[o], d = p ? `${this.appUrl}/${p}` : "";
|
|
108
|
+
return i`
|
|
109
|
+
<div
|
|
110
|
+
class="position-relative dataset-icon d-flex justify-content-center"
|
|
111
|
+
style="width: ${this.size}; height: ${this.size};"
|
|
112
|
+
>
|
|
113
|
+
<div class="public-connector">
|
|
114
|
+
<img
|
|
115
|
+
src=${d}
|
|
116
|
+
style="width: ${this.size}; height: ${this.size};"
|
|
117
|
+
alt="Dataset icon"
|
|
118
|
+
/>
|
|
119
|
+
</div>
|
|
120
|
+
</div>
|
|
121
|
+
`;
|
|
122
|
+
}
|
|
123
|
+
return this._isPublicConnector && this._subtype !== "upload" && !n ? i`
|
|
124
|
+
<div
|
|
125
|
+
class="position-relative dataset-icon d-flex justify-content-center"
|
|
126
|
+
style="width: ${this.size}; height: ${this.size}; --connector-sprite-64x64: url('${c}'); --connector-sprite-96x96: url('${r}');"
|
|
127
|
+
>
|
|
128
|
+
<div
|
|
129
|
+
class="public-connector-${a} ${this._subtype}"
|
|
130
|
+
></div>
|
|
131
|
+
</div>
|
|
132
|
+
` : !this._isPublicConnector && this._subtype === "upload" ? i`
|
|
133
|
+
<div
|
|
134
|
+
class="position-relative dataset-icon d-flex justify-content-center"
|
|
135
|
+
style="width: ${this.size}; height: ${this.size};"
|
|
136
|
+
>
|
|
137
|
+
<div class="text-primary d-flex align-items-center" style="font-size: ${this.size};">
|
|
138
|
+
${b(g)}
|
|
139
|
+
</div>
|
|
140
|
+
</div>
|
|
141
|
+
` : !this._isPublicConnector && this._subtype !== "upload" && !n ? i`
|
|
142
|
+
<div
|
|
143
|
+
class="position-relative dataset-icon d-flex justify-content-center"
|
|
144
|
+
style="width: ${this.size}; height: ${this.size};"
|
|
145
|
+
>
|
|
146
|
+
<div class="text-primary ${this._subtype}" style="font-size: ${this.size};">
|
|
147
|
+
${b(x)}
|
|
148
|
+
</div>
|
|
149
|
+
</div>
|
|
150
|
+
` : i``;
|
|
151
|
+
}
|
|
152
|
+
};
|
|
153
|
+
l.styles = k(h), l.tagName = "luzmo-dataset-icon";
|
|
154
|
+
let t = l;
|
|
155
|
+
u([
|
|
156
|
+
s({ type: Object, attribute: "dataset" })
|
|
157
|
+
], t.prototype, "datasetInfo");
|
|
158
|
+
u([
|
|
159
|
+
s({ type: String, reflect: !0 })
|
|
160
|
+
], t.prototype, "size");
|
|
161
|
+
u([
|
|
162
|
+
s({ type: String, attribute: "app-url" })
|
|
163
|
+
], t.prototype, "appUrl");
|
|
164
|
+
customElements.get("luzmo-dataset-icon") || customElements.define("luzmo-dataset-icon", t);
|
|
165
|
+
export {
|
|
166
|
+
t as LuzmoDatasetIcon
|
|
167
|
+
};
|
|
@@ -17,15 +17,17 @@
|
|
|
17
17
|
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
18
18
|
* SOFTWARE.
|
|
19
19
|
* */
|
|
20
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const f=require("@luzmo/icons"),v=require("../index-D1Y5TRsH.cjs"),_=require("../localize-C4zNlrwK.cjs"),y=require("../set-locale-BRRalqne.cjs"),l=require("lit"),i=require("lit/decorators.js"),z=require("lit/directives/repeat.js"),D=":host{box-sizing:border-box;display:flex;flex-direction:column;height:100%;font-family:var(--luzmo-dataset-selector-list-font-family, var(--dataset-selector-list-font-family))}:host .dataset-selector-list{display:flex;flex-direction:column;gap:var(--luzmo-dataset-selector-list-gap, var(--dataset-selector-list-gap));height:100%;background:var(--luzmo-dataset-selector-list-background, var(--dataset-selector-list-background));padding:var(--luzmo-dataset-selector-list-padding, var(--dataset-selector-list-padding));border-radius:var(--luzmo-dataset-selector-list-border-radius, var(--dataset-selector-list-border-radius))}:host .search-input{background-color:var(--luzmo-dataset-selector-list-input-background, var(--dataset-selector-list-input-background));border:none;border-bottom:1px solid var(--luzmo-dataset-selector-list-input-border-color, var(--dataset-selector-list-input-border-color));color:var(--luzmo-dataset-selector-list-input-color, var(--dataset-selector-list-input-color));line-height:var(--luzmo-dataset-selector-list-input-line-height, var(--dataset-selector-list-input-line-height));font-size:var(--luzmo-dataset-selector-list-input-font-size, var(--dataset-selector-list-input-font-size));margin:0;outline:none;padding:var(--luzmo-dataset-selector-list-input-padding, var(--dataset-selector-list-input-padding));width:100%;box-sizing:border-box}:host .search-input::placeholder{color:var(--luzmo-font-color-tertiary, #999)}:host .datasets-scroll-container{flex:1;overflow-y:auto;overflow-x:hidden;min-height:0}:host .datasets-scroll-container::-webkit-scrollbar{width:var(--luzmo-dataset-selector-list-scrollbar-width, var(--dataset-selector-list-scrollbar-width))}:host .datasets-scroll-container::-webkit-scrollbar-track{background:var(--luzmo-dataset-selector-list-scrollbar-track-background, var(--dataset-selector-list-scrollbar-track-background));border-radius:var(--luzmo-dataset-selector-list-scrollbar-track-border-radius, var(--dataset-selector-list-scrollbar-track-border-radius))}:host .datasets-scroll-container::-webkit-scrollbar-thumb{background:var(--luzmo-dataset-selector-list-scrollbar-thumb-background, var(--dataset-selector-list-scrollbar-thumb-background));border-radius:var(--luzmo-dataset-selector-list-scrollbar-thumb-border-radius, var(--dataset-selector-list-scrollbar-thumb-border-radius))}:host .datasets-scroll-container::-webkit-scrollbar-thumb:hover{background:var(--luzmo-dataset-selector-list-scrollbar-thumb-hover-background, var(--dataset-selector-list-scrollbar-thumb-hover-background))}:host .datasets-scroll-container{scrollbar-width:thin;scrollbar-color:var(--luzmo-dataset-selector-list-scrollbar-thumb-background, var(--dataset-selector-list-scrollbar-thumb-background)) var(--luzmo-dataset-selector-list-scrollbar-track-background, var(--dataset-selector-list-scrollbar-track-background))}:host .datasets-list{display:flex;flex-direction:column}:host .available-dataset-item{padding:var(--luzmo-dataset-selector-list-item-padding, var(--dataset-selector-list-item-padding));display:flex;flex-direction:row;align-items:center;gap:var(--luzmo-dataset-selector-list-item-gap, var(--dataset-selector-list-item-gap));cursor:pointer;border-radius:var(--luzmo-dataset-selector-list-item-border-radius, var(--dataset-selector-list-item-border-radius));transition:background-color .15s ease}:host .available-dataset-item:hover{background-color:var(--luzmo-dataset-selector-list-item-hover-background, var(--dataset-selector-list-item-hover-background))}:host .available-dataset-item:focus{outline:none}:host .available-dataset-item .dataset-icon{display:flex;align-items:center;justify-content:center;flex-shrink:0;width:16px;height:16px}:host .available-dataset-item .dataset-icon luzmo-icon{display:flex}:host .available-dataset-item .dataset-icon-img{width:16px;height:16px;object-fit:contain}:host .available-dataset-item .dataset-name{flex:1;line-height:var(--luzmo-dataset-selector-list-item-line-height, var(--dataset-selector-list-item-line-height));font-size:var(--luzmo-dataset-selector-list-item-font-size, var(--dataset-selector-list-item-font-size));overflow:hidden;text-overflow:ellipsis;white-space:nowrap}:host .no-datasets-found{display:flex;align-items:center;justify-content:center;height:50%;color:var(--luzmo-dataset-selector-list-no-datasets-color, var(--dataset-selector-list-no-datasets-color));font-size:var(--luzmo-dataset-selector-list-no-datasets-font-size, var(--dataset-selector-list-no-datasets-font-size));text-align:center;padding:var(--luzmo-spacing-4, 1rem)}:host .loader{display:flex;align-items:center;justify-content:center;padding:var(--luzmo-spacing-5, 1.25rem) 0}:host .loader .spinner{width:var(--luzmo-dataset-selector-list-loader-size, var(--dataset-selector-list-loader-size));height:var(--luzmo-dataset-selector-list-loader-size, var(--dataset-selector-list-loader-size));border:2px solid var(--luzmo-border-color-light, #e0e0e0);border-top-color:var(--luzmo-dataset-selector-list-loader-color, var(--dataset-selector-list-loader-color));border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}:host{--dataset-selector-list-background: var(--luzmo-background-color);--dataset-selector-list-padding: 0;--dataset-selector-list-gap: var(--luzmo-spacing-2);--dataset-selector-list-border-radius: var(--luzmo-border-radius-m);--dataset-selector-list-font-family: var(--luzmo-font-family);--dataset-selector-list-input-background: var(--luzmo-background-color);--dataset-selector-list-input-border-color: var(--luzmo-border-color-light, rgba(0,0,0,.05));--dataset-selector-list-input-color: var(--luzmo-font-color);--dataset-selector-list-input-padding: 0 var(--luzmo-spacing-4) var(--luzmo-spacing-2);--dataset-selector-list-input-font-size: var(--luzmo-font-size-s);--dataset-selector-list-input-line-height: 1.5rem;--dataset-selector-list-item-padding: var(--luzmo-spacing-1) var(--luzmo-spacing-4);--dataset-selector-list-item-gap: var(--luzmo-spacing-3);--dataset-selector-list-item-hover-background: var( --luzmo-background-color-highlight );--dataset-selector-list-item-font-size: var(--luzmo-font-size-s);--dataset-selector-list-item-line-height: 1.5rem;--dataset-selector-list-item-border-radius: var(--luzmo-border-radius-s);--dataset-selector-list-scrollbar-width: 6px;--dataset-selector-list-scrollbar-track-background: var( --luzmo-background-color-highlight );--dataset-selector-list-scrollbar-track-border-radius: var( --luzmo-border-radius-s );--dataset-selector-list-scrollbar-thumb-background: var( --luzmo-border-color-full );--dataset-selector-list-scrollbar-thumb-border-radius: var( --luzmo-border-radius-s );--dataset-selector-list-scrollbar-thumb-hover-background: var( --luzmo-border-color-full-hover );--dataset-selector-list-loader-size: 24px;--dataset-selector-list-loader-color: var(--luzmo-primary);--dataset-selector-list-no-datasets-color: var(--luzmo-font-color-tertiary);--dataset-selector-list-no-datasets-font-size: var(--luzmo-font-size-s)}";var k=Object.defineProperty,w=Object.getOwnPropertyDescriptor,d=(g,t,e,a)=>{for(var s=a>1?void 0:a?w(t,e):t,r=g.length-1,c;r>=0;r--)(c=g[r])&&(s=(a?c(t,e,s):c(s))||s);return a&&s&&k(t,e,s),s};const m=7,L=600,x=5,b=class b extends l.LitElement{constructor(){super(...arguments),this._selectedDatasets=new Set,this.showSearch=!0,this.searchPlaceholder="Search datasets...",this.noDatasetsMessage="No datasets found",this.authKey="",this.authToken="",this.apiUrl="https://api.luzmo.com",this.appServer="https://app.luzmo.com",this.flagOpendata=!1,this._availableDatasets=[],this._status={allDatasetsLoaded:!1,paging:!1,busy:!0,error:!1},this._searchValue="",this._currentOffset=0,this._searchDebounceTimer=null,this._queryCache=new Map,this._calculatedQueryLimit=null,this._hasLoadedEmptyPage=!1}set selectedDatasets(t){this._selectedDatasets=t,this._shouldLoadMoreDatasetsForViewport()&&this._loadAvailableDatasets({append:!0})}get selectedDatasets(){return this._selectedDatasets}connectedCallback(){super.connectedCallback?.(),this._configureBroker(),this._waitForContainerHeightAndLoad()}_configureBroker(){(this.authKey||this.authToken||this.apiUrl)&&v.dataBroker.configure({authKey:this.authKey,authToken:this.authToken,apiUrl:this.apiUrl})}_waitForContainerHeightAndLoad(){requestAnimationFrame(()=>{this._loadAvailableDatasets({append:!1})})}_calculateOptimalQueryLimit(){if(this._calculatedQueryLimit!==null)return this._calculatedQueryLimit;const t=this.shadowRoot?.querySelector(".dataset-selector-list");if(!t)return m;const e=getComputedStyle(t),a=t.clientHeight,s=Number.parseFloat(e.height),r=Math.max(a,s);if(r<=0)return m;const h=Math.floor(r/24),n=Math.max(h+x,m);return this._calculatedQueryLimit=n,n}get _filteredDatasets(){return this._selectedDatasets.size===0?this._availableDatasets:this._availableDatasets.filter(e=>!this._selectedDatasets.has(e.id))}_handleSearchInput(t){const e=t.target;this._searchValue=e.value,this._searchDebounceTimer!==null&&clearTimeout(this._searchDebounceTimer),this._searchDebounceTimer=window.setTimeout(()=>{this._loadAvailableDatasets({append:!1})},L)}_handleScroll(t){const e=t.target,a=e.scrollTop,s=e.scrollHeight,r=e.clientHeight;a+r>=s-50&&!this._status.allDatasetsLoaded&&!this._status.busy&&this._loadAvailableDatasets({append:!0})}async _loadAvailableDatasets({append:t}){t||(this._calculatedQueryLimit=null,this._hasLoadedEmptyPage=!1),this._status={...this._status,busy:!0,allDatasetsLoaded:t?this._status.allDatasetsLoaded:!1,paging:t};const e=this._generateQuery(t),a=JSON.stringify(e),s=this._queryCache.has(a);try{let r;s?r=this._queryCache.get(a):(r=await v.dataBroker.fetchApi("/securable",{action:"get",version:"0.1.0",find:e}),this._queryCache.set(a,r)),this._onDatasetsLoaded(t,r),this._shouldLoadMoreDatasetsForViewport()&&await this._loadAvailableDatasets({append:!0})}catch(r){console.error("Error loading datasets:",r),this._status={...this._status,busy:!1,paging:!1,error:!0}}finally{this._status={...this._status,busy:!1,paging:!1}}}_generateQuery(t){const e=this._calculateOptimalQueryLimit();t?this._currentOffset+=e:this._currentOffset=0;const a=this._searchValue?{search:{match_types:["name","description"],keyphrase:this._searchValue,securable_types:"dataset"},order:[["name","asc"]]}:{order:[["updated_at","desc"]]};return{attributes:["id","updated_at","name","subtype"],include:[{model:"Collection",attributes:["id","favorite"],where:{favorite:!0}},{model:"Account",attributes:["id","provider","name"],include:[{model:"Plugin",attributes:["id"],include:[{model:"Thumbnail",where:{size:"32px"}}]}]}],where:{type:"dataset"},limit:e,offset:this._currentOffset,...a,...this.flagOpendata?{public:null}:{}}}_onDatasetsLoaded(t,{rows:e,count:a}){let s;if(t){const n=new Set(this._availableDatasets.map(u=>u.id)),p=e.filter(u=>!n.has(u.id));s=[...this._availableDatasets,...p]}else s=e||[];t&&e.length===0?this._hasLoadedEmptyPage=!0:e.length>0&&(this._hasLoadedEmptyPage=!1);const r=s.reduce((n,p)=>(n.some(u=>u.id===p.id)||n.push(p),n),[]),c=s.length,h=this._hasLoadedEmptyPage||c>=a;this._status={...this._status,allDatasetsLoaded:h},this._availableDatasets=r}_shouldLoadMoreDatasetsForViewport(){if(this._status.allDatasetsLoaded||this._hasLoadedEmptyPage||this._status.busy)return!1;const t=this.shadowRoot?.querySelector(".datasets-scroll-container");if(!t)return!1;const e=t.clientHeight,s=Math.ceil(e/24),c=Math.ceil(s*1.5);return this._filteredDatasets.length<c}_getDatasetName(t){const e=y.getLocale();return _.localize(t.name,e)||t.id||"Unknown Dataset"}_selectDataset(t){this.dispatchEvent(new CustomEvent("dataset-selected",{detail:t,bubbles:!0,composed:!0}))}_handleDatasetClick(t){const e=t.currentTarget.dataset.datasetId,a=this._filteredDatasets.find(s=>s.id===e);a&&this._selectDataset(a)}_handleDatasetKeydown(t){if(t.key==="Enter"||t.key===" "){t.preventDefault();const e=t.currentTarget.dataset.datasetId,a=this._filteredDatasets.find(s=>s.id===e);a&&this._selectDataset(a)}}_renderLoader(){return l.html`
|
|
20
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const f=require("../index-cfj52IbK.cjs"),v=require("../localize-r7ALOUy_.cjs"),_=require("../set-locale-BRRalqne.cjs"),l=require("lit"),i=require("lit/decorators.js"),y=require("lit/directives/repeat.js");require("../dataset-icon/index.cjs");const z=":host{box-sizing:border-box;display:flex;flex-direction:column;height:100%;font-family:var(--luzmo-dataset-selector-list-font-family, var(--dataset-selector-list-font-family))}:host .dataset-selector-list{display:flex;flex-direction:column;gap:var(--luzmo-dataset-selector-list-gap, var(--dataset-selector-list-gap));height:100%;background:var(--luzmo-dataset-selector-list-background, var(--dataset-selector-list-background));padding:var(--luzmo-dataset-selector-list-padding, var(--dataset-selector-list-padding));border-radius:var(--luzmo-dataset-selector-list-border-radius, var(--dataset-selector-list-border-radius))}:host .search-input{background-color:var(--luzmo-dataset-selector-list-input-background, var(--dataset-selector-list-input-background));border:none;border-bottom:1px solid var(--luzmo-dataset-selector-list-input-border-color, var(--dataset-selector-list-input-border-color));color:var(--luzmo-dataset-selector-list-input-color, var(--dataset-selector-list-input-color));line-height:var(--luzmo-dataset-selector-list-input-line-height, var(--dataset-selector-list-input-line-height));font-size:var(--luzmo-dataset-selector-list-input-font-size, var(--dataset-selector-list-input-font-size));margin:0;outline:none;padding:var(--luzmo-dataset-selector-list-input-padding, var(--dataset-selector-list-input-padding));width:100%;box-sizing:border-box}:host .search-input::placeholder{color:var(--luzmo-font-color-tertiary, #999)}:host .datasets-scroll-container{flex:1;overflow-y:auto;overflow-x:hidden;min-height:0;scrollbar-width:thin;scrollbar-color:var(--luzmo-dataset-selector-list-scrollbar-thumb-background, var(--dataset-selector-list-scrollbar-thumb-background)) var(--luzmo-dataset-selector-list-scrollbar-track-background, var(--dataset-selector-list-scrollbar-track-background))}:host .datasets-scroll-container::-webkit-scrollbar{width:var(--luzmo-dataset-selector-list-scrollbar-width, var(--dataset-selector-list-scrollbar-width))}:host .datasets-scroll-container::-webkit-scrollbar-track{background:var(--luzmo-dataset-selector-list-scrollbar-track-background, var(--dataset-selector-list-scrollbar-track-background));border-radius:var(--luzmo-dataset-selector-list-scrollbar-track-border-radius, var(--dataset-selector-list-scrollbar-track-border-radius))}:host .datasets-scroll-container::-webkit-scrollbar-thumb{background:var(--luzmo-dataset-selector-list-scrollbar-thumb-background, var(--dataset-selector-list-scrollbar-thumb-background));border-radius:var(--luzmo-dataset-selector-list-scrollbar-thumb-border-radius, var(--dataset-selector-list-scrollbar-thumb-border-radius))}:host .datasets-scroll-container::-webkit-scrollbar-thumb:hover{background:var(--luzmo-dataset-selector-list-scrollbar-thumb-hover-background, var(--dataset-selector-list-scrollbar-thumb-hover-background))}:host .datasets-list{display:flex;flex-direction:column}:host .available-dataset-item{padding:var(--luzmo-dataset-selector-list-item-padding, var(--dataset-selector-list-item-padding));display:flex;flex-direction:row;align-items:center;gap:var(--luzmo-dataset-selector-list-item-gap, var(--dataset-selector-list-item-gap));cursor:pointer;border-radius:var(--luzmo-dataset-selector-list-item-border-radius, var(--dataset-selector-list-item-border-radius));transition:background-color .15s ease}:host .available-dataset-item:hover{background-color:var(--luzmo-dataset-selector-list-item-hover-background, var(--dataset-selector-list-item-hover-background))}:host .available-dataset-item:focus{outline:none}:host .available-dataset-item .dataset-icon{display:flex;align-items:center;justify-content:center;flex-shrink:0;width:16px;height:16px}:host .available-dataset-item .dataset-icon luzmo-icon{display:flex}:host .available-dataset-item .dataset-icon-img{width:16px;height:16px;object-fit:contain}:host .available-dataset-item .dataset-name{flex:1;line-height:var(--luzmo-dataset-selector-list-item-line-height, var(--dataset-selector-list-item-line-height));font-size:var(--luzmo-dataset-selector-list-item-font-size, var(--dataset-selector-list-item-font-size));overflow:hidden;text-overflow:ellipsis;white-space:nowrap}:host .no-datasets-found{display:flex;align-items:center;justify-content:center;height:50%;color:var(--luzmo-dataset-selector-list-no-datasets-color, var(--dataset-selector-list-no-datasets-color));font-size:var(--luzmo-dataset-selector-list-no-datasets-font-size, var(--dataset-selector-list-no-datasets-font-size));text-align:center;padding:var(--luzmo-spacing-4, 1rem)}:host .loader{display:flex;align-items:center;justify-content:center;padding:var(--luzmo-spacing-5, 1.25rem) 0}:host .loader .spinner{width:var(--luzmo-dataset-selector-list-loader-size, var(--dataset-selector-list-loader-size));height:var(--luzmo-dataset-selector-list-loader-size, var(--dataset-selector-list-loader-size));border:2px solid var(--luzmo-border-color-light, #e0e0e0);border-top-color:var(--luzmo-dataset-selector-list-loader-color, var(--dataset-selector-list-loader-color));border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}:host{--dataset-selector-list-background: var(--luzmo-background-color);--dataset-selector-list-padding: 0;--dataset-selector-list-gap: var(--luzmo-spacing-2);--dataset-selector-list-border-radius: var(--luzmo-border-radius-m);--dataset-selector-list-font-family: var(--luzmo-font-family);--dataset-selector-list-input-background: var(--luzmo-background-color);--dataset-selector-list-input-border-color: var(--luzmo-border-color-light, rgba(0,0,0,.05));--dataset-selector-list-input-color: var(--luzmo-font-color);--dataset-selector-list-input-padding: 0 var(--luzmo-spacing-4) var(--luzmo-spacing-2);--dataset-selector-list-input-font-size: var(--luzmo-font-size-s);--dataset-selector-list-input-line-height: 1.5rem;--dataset-selector-list-item-padding: var(--luzmo-spacing-1) var(--luzmo-spacing-4);--dataset-selector-list-item-gap: var(--luzmo-spacing-3);--dataset-selector-list-item-hover-background: var( --luzmo-background-color-highlight );--dataset-selector-list-item-font-size: var(--luzmo-font-size-s);--dataset-selector-list-item-line-height: 1.5rem;--dataset-selector-list-item-border-radius: var(--luzmo-border-radius-s);--dataset-selector-list-scrollbar-width: 6px;--dataset-selector-list-scrollbar-track-background: var( --luzmo-background-color-highlight );--dataset-selector-list-scrollbar-track-border-radius: var( --luzmo-border-radius-s );--dataset-selector-list-scrollbar-thumb-background: var( --luzmo-border-color-full );--dataset-selector-list-scrollbar-thumb-border-radius: var( --luzmo-border-radius-s );--dataset-selector-list-scrollbar-thumb-hover-background: var( --luzmo-border-color-full-hover );--dataset-selector-list-loader-size: 24px;--dataset-selector-list-loader-color: var(--luzmo-primary);--dataset-selector-list-no-datasets-color: var(--luzmo-font-color-tertiary);--dataset-selector-list-no-datasets-font-size: var(--luzmo-font-size-s)}";var D=Object.defineProperty,k=Object.getOwnPropertyDescriptor,d=(g,t,e,s)=>{for(var a=s>1?void 0:s?k(t,e):t,r=g.length-1,c;r>=0;r--)(c=g[r])&&(a=(s?c(t,e,a):c(a))||a);return s&&a&&D(t,e,a),a};const m=7,w=600,L=5,b=class b extends l.LitElement{constructor(){super(...arguments),this._selectedDatasets=new Set,this.showSearch=!0,this.searchPlaceholder="Search datasets...",this.noDatasetsMessage="No datasets found",this.authKey="",this.authToken="",this.apiUrl="https://api.luzmo.com",this.appServer="https://app.luzmo.com",this.flagOpendata=!1,this._availableDatasets=[],this._status={allDatasetsLoaded:!1,paging:!1,busy:!0,error:!1},this._searchValue="",this._currentOffset=0,this._searchDebounceTimer=null,this._queryCache=new Map,this._calculatedQueryLimit=null,this._hasLoadedEmptyPage=!1}set selectedDatasets(t){this._selectedDatasets=t,this._shouldLoadMoreDatasetsForViewport()&&this._loadAvailableDatasets({append:!0})}get selectedDatasets(){return this._selectedDatasets}connectedCallback(){var t;(t=super.connectedCallback)==null||t.call(this),this._configureBroker(),this._waitForContainerHeightAndLoad()}_configureBroker(){(this.authKey||this.authToken||this.apiUrl)&&f.dataBroker.configure({authKey:this.authKey,authToken:this.authToken,apiUrl:this.apiUrl})}_waitForContainerHeightAndLoad(){requestAnimationFrame(()=>{this._loadAvailableDatasets({append:!1})})}_calculateOptimalQueryLimit(){var n;if(this._calculatedQueryLimit!==null)return this._calculatedQueryLimit;const t=(n=this.shadowRoot)==null?void 0:n.querySelector(".dataset-selector-list");if(!t)return m;const e=getComputedStyle(t),s=t.clientHeight,a=Number.parseFloat(e.height),r=Math.max(s,a);if(r<=0)return m;const p=Math.floor(r/24),u=Math.max(p+L,m);return this._calculatedQueryLimit=u,u}get _filteredDatasets(){return this._selectedDatasets.size===0?this._availableDatasets:this._availableDatasets.filter(e=>!this._selectedDatasets.has(e.id))}_handleSearchInput(t){const e=t.target;this._searchValue=e.value,this._searchDebounceTimer!==null&&clearTimeout(this._searchDebounceTimer),this._searchDebounceTimer=window.setTimeout(()=>{this._loadAvailableDatasets({append:!1})},w)}_handleScroll(t){const e=t.target,s=e.scrollTop,a=e.scrollHeight,r=e.clientHeight;s+r>=a-50&&!this._status.allDatasetsLoaded&&!this._status.busy&&this._loadAvailableDatasets({append:!0})}async _loadAvailableDatasets({append:t}){t||(this._calculatedQueryLimit=null,this._hasLoadedEmptyPage=!1),this._status={...this._status,busy:!0,allDatasetsLoaded:t?this._status.allDatasetsLoaded:!1,paging:t};const e=this._generateQuery(t),s=JSON.stringify(e),a=this._queryCache.has(s);try{let r;a?r=this._queryCache.get(s):(r=await f.dataBroker.fetchApi("/securable",{action:"get",version:"0.1.0",find:e}),this._queryCache.set(s,r)),this._onDatasetsLoaded(t,r),this._shouldLoadMoreDatasetsForViewport()&&await this._loadAvailableDatasets({append:!0})}catch(r){console.error("Error loading datasets:",r),this._status={...this._status,busy:!1,paging:!1,error:!0}}finally{this._status={...this._status,busy:!1,paging:!1}}}_generateQuery(t){const e=this._calculateOptimalQueryLimit();t?this._currentOffset+=e:this._currentOffset=0;const s=this._searchValue?{search:{match_types:["name","description"],keyphrase:this._searchValue,securable_types:"dataset"},order:[["name","asc"]]}:{order:[["updated_at","desc"]]};return{attributes:["id","updated_at","name","subtype"],include:[{model:"Collection",attributes:["id","favorite"],where:{favorite:!0}},{model:"Account",attributes:["id","provider","name"],include:[{model:"Plugin",attributes:["id"],include:[{model:"Thumbnail",where:{size:"32px"}}]}]}],where:{type:"dataset"},limit:e,offset:this._currentOffset,...s,...this.flagOpendata?{public:null}:{}}}_onDatasetsLoaded(t,{rows:e,count:s}){let a;if(t){const u=new Set(this._availableDatasets.map(h=>h.id)),n=e.filter(h=>!u.has(h.id));a=[...this._availableDatasets,...n]}else a=e||[];t&&e.length===0?this._hasLoadedEmptyPage=!0:e.length>0&&(this._hasLoadedEmptyPage=!1);const r=a.reduce((u,n)=>(u.some(h=>h.id===n.id)||u.push(n),u),[]),c=a.length,p=this._hasLoadedEmptyPage||c>=s;this._status={...this._status,allDatasetsLoaded:p},this._availableDatasets=r}_shouldLoadMoreDatasetsForViewport(){var n;if(this._status.allDatasetsLoaded||this._hasLoadedEmptyPage||this._status.busy)return!1;const t=(n=this.shadowRoot)==null?void 0:n.querySelector(".datasets-scroll-container");if(!t)return!1;const e=t.clientHeight,a=Math.ceil(e/24),c=Math.ceil(a*1.5);return this._filteredDatasets.length<c}_getDatasetName(t){const e=_.getLocale();return v.localize(t.name,e)||t.id||"Unknown Dataset"}_selectDataset(t){this.dispatchEvent(new CustomEvent("dataset-selected",{detail:t,bubbles:!0,composed:!0}))}_handleDatasetClick(t){const e=t.currentTarget.dataset.datasetId,s=this._filteredDatasets.find(a=>a.id===e);s&&this._selectDataset(s)}_handleDatasetKeydown(t){if(t.key==="Enter"||t.key===" "){t.preventDefault();const e=t.currentTarget.dataset.datasetId,s=this._filteredDatasets.find(a=>a.id===e);s&&this._selectDataset(s)}}_renderLoader(){return l.html`
|
|
21
21
|
<div class="loader">
|
|
22
22
|
<div class="spinner"></div>
|
|
23
23
|
</div>
|
|
24
|
-
`}_renderDatasetIcon(t){
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
24
|
+
`}_renderDatasetIcon(t){return l.html`
|
|
25
|
+
<luzmo-dataset-icon
|
|
26
|
+
.datasetInfo=${t}
|
|
27
|
+
size="16px"
|
|
28
|
+
app-url=${this.appServer}
|
|
29
|
+
></luzmo-dataset-icon>
|
|
30
|
+
`}_renderSearchInput(){return this.showSearch?l.html`
|
|
29
31
|
<input
|
|
30
32
|
name="dataset-search"
|
|
31
33
|
type="text"
|
|
@@ -42,7 +44,7 @@
|
|
|
42
44
|
<div class="datasets-scroll-container" @scroll=${this._handleScroll}>
|
|
43
45
|
${this._status.busy&&!this._status.paging?this._renderLoader():l.nothing}
|
|
44
46
|
<div class="datasets-list">
|
|
45
|
-
${
|
|
47
|
+
${y.repeat(this._filteredDatasets,t=>t.id,t=>l.html`
|
|
46
48
|
<div
|
|
47
49
|
class="available-dataset-item"
|
|
48
50
|
data-dataset-id=${t.id}
|
|
@@ -69,4 +71,4 @@
|
|
|
69
71
|
<div class="dataset-selector-list">
|
|
70
72
|
${this._renderSearchInput()} ${this._renderDatasetList()}
|
|
71
73
|
</div>
|
|
72
|
-
`}};b.styles=l.unsafeCSS(
|
|
74
|
+
`}};b.styles=l.unsafeCSS(z);let o=b;d([i.property({type:Object,attribute:!1})],o.prototype,"selectedDatasets",1);d([i.property({type:Boolean,attribute:"show-search"})],o.prototype,"showSearch",2);d([i.property({type:String,attribute:"search-placeholder"})],o.prototype,"searchPlaceholder",2);d([i.property({type:String,attribute:"no-datasets-message"})],o.prototype,"noDatasetsMessage",2);d([i.property({type:String,attribute:"auth-key"})],o.prototype,"authKey",2);d([i.property({type:String,attribute:"auth-token"})],o.prototype,"authToken",2);d([i.property({type:String,attribute:"api-url"})],o.prototype,"apiUrl",2);d([i.property({type:String,attribute:"app-server"})],o.prototype,"appServer",2);d([i.property({type:Boolean,attribute:"flag-opendata"})],o.prototype,"flagOpendata",2);d([i.state()],o.prototype,"_availableDatasets",2);d([i.state()],o.prototype,"_status",2);d([i.state()],o.prototype,"_searchValue",2);customElements.get("luzmo-dataset-selector-list")||customElements.define("luzmo-dataset-selector-list",o);exports.LuzmoDatasetSelectorList=o;
|
|
@@ -17,26 +17,26 @@
|
|
|
17
17
|
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
18
18
|
* SOFTWARE.
|
|
19
19
|
* */
|
|
20
|
-
import {
|
|
21
|
-
import {
|
|
22
|
-
import {
|
|
23
|
-
import {
|
|
24
|
-
import {
|
|
25
|
-
import {
|
|
26
|
-
import
|
|
20
|
+
import { d as v } from "../index-BPN3bG9X.js";
|
|
21
|
+
import { l as _ } from "../localize-BX7q0S0M.js";
|
|
22
|
+
import { g as y } from "../set-locale-B-Tz2sdI.js";
|
|
23
|
+
import { LitElement as x, unsafeCSS as k, html as u, nothing as b } from "lit";
|
|
24
|
+
import { property as n, state as f } from "lit/decorators.js";
|
|
25
|
+
import { repeat as w } from "lit/directives/repeat.js";
|
|
26
|
+
import "../dataset-icon/index.js";
|
|
27
27
|
(function() {
|
|
28
28
|
if (typeof document < "u" && !document.querySelector("style[data-luzmo-vars]")) {
|
|
29
29
|
const t = document.createElement("style");
|
|
30
30
|
t.setAttribute("data-luzmo-vars", ""), t.textContent = 'html{--luzmo-animation-duration: 0.15s;--luzmo-border-color: rgba(var(--luzmo-border-color-rgb), 0.1);--luzmo-border-color-hover: rgba(var(--luzmo-border-color-rgb), 0.15);--luzmo-border-color-down: rgba(var(--luzmo-border-color-rgb), 0.3);--luzmo-border-color-focus: rgba(var(--luzmo-border-color-rgb), 0.15);--luzmo-border-color-rgb: 0, 0, 0;--luzmo-border-color-full: rgb(180, 180, 180);--luzmo-border-color-full-hover: rgb(140, 140, 140);--luzmo-border-color-full-down: rgb(110, 110, 110);--luzmo-border-color-full-focus: rgb(140, 140, 140);--luzmo-border-color-disabled: #dddddd;--luzmo-border-radius: 6px;--luzmo-border-radius-s: 4px;--luzmo-border-radius-l: 8px;--luzmo-border-radius-xl: 12px;--luzmo-border-radius-full: 999rem;--luzmo-background-color: #ffffff;--luzmo-background-color-rgb: 255, 255, 255;--luzmo-background-color-disabled: #eeeeee;--luzmo-background-color-hover: #f0f0fc;--luzmo-background-color-down: #f1f1ff;--luzmo-background-color-focus: #f0f0fc;--luzmo-background-color-highlight: rgb(240, 240, 240);--luzmo-background-color-highlight-disabled: rgb(245, 245, 245);--luzmo-background-color-highlight-hover: rgb(225, 225, 225);--luzmo-background-color-highlight-down: rgb(215, 215, 215);--luzmo-background-color-highlight-focus: rgb(225, 225, 225);--luzmo-background-color-alt-1: rgb(250, 250, 250);--luzmo-background-color-alt-2: rgb(239, 239, 239);--luzmo-border-width: 1px;--luzmo-font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", Helvetica, Arial, sans-serif;--luzmo-font-size-xs: 10px;--luzmo-font-size-s: 12px;--luzmo-font-size-m: 14px;--luzmo-font-size: 14px;--luzmo-font-size-l: 16px;--luzmo-font-size-xl: 18px;--luzmo-font-size-xxl: 20px;--luzmo-font-style: normal;--luzmo-line-height: normal;--luzmo-font-weight: 400;--luzmo-font-weight-semibold: 500;--luzmo-font-weight-bold: 600;--luzmo-font-color: #333;--luzmo-font-color-hard: #000;--luzmo-font-color-disabled: var(--luzmo-color-disabled);--luzmo-font-color-extra-dimmed: #888;--luzmo-font-color-hover: #333;--luzmo-font-color-down: #111;--luzmo-font-color-focus: #333;--luzmo-primary: #4434ff;--luzmo-primary-hover: #4234e4;--luzmo-primary-down: #392cc7;--luzmo-primary-focus: #4234e4;--luzmo-primary-inverse-color: #ffffff;--luzmo-primary-rgb: 68, 52, 255;--luzmo-secondary: #ff00ff;--luzmo-secondary-hover: #e309e3;--luzmo-secondary-down: #c711c7;--luzmo-secondary-focus: #e309e3;--luzmo-secondary-inverse-color: #ffffff;--luzmo-secondary-rgb: 255, 0, 255;--luzmo-secondary-outline: rgba(255, 0, 255, 0.2);--luzmo-negative-color: #ca221c;--luzmo-negative-color-hover: #b3241f;--luzmo-negative-color-down: #9f231f;--luzmo-negative-color-focus: #b3241f;--luzmo-negative-color-rgb: 202, 34, 28;--luzmo-positive-color: rgb(20, 150, 101);--luzmo-positive-color-hover: rgb(17, 128, 86);--luzmo-positive-color-down: rgb(16, 105, 71);--luzmo-positive-color-focus: rgb(17, 128, 86);--luzmo-positive-color-rgb: 20, 150, 101;--luzmo-selected-color: rgb(110, 110, 110);--luzmo-selected-color-hover: rgb(70, 70, 70);--luzmo-selected-color-down: rgb(40, 40, 40);--luzmo-selected-color-focus: rgb(70, 70, 70);--luzmo-selected-color-hard: #1e1e1e;--luzmo-selected-color-hard-hover: rgb(0, 0, 0);--luzmo-selected-color-hard-down: rgb(0, 0, 0);--luzmo-selected-color-hard-focus: rgb(0, 0, 0);--luzmo-color-informative: #1a77e9;--luzmo-color-informative-rgb: 26, 119, 233;--luzmo-color-disabled: #aaaaaa;--luzmo-spacing-1: 2px;--luzmo-spacing-2: 4px;--luzmo-spacing-3: 8px;--luzmo-spacing-4: 12px;--luzmo-spacing-5: 16px;--luzmo-indicator-gap: 2px;--luzmo-indicator-width: 1px;--luzmo-indicator-color: var(--luzmo-primary);--luzmo-component-height-xxs: 20px;--luzmo-component-height-xs: 24px;--luzmo-component-height-s: 28px;--luzmo-component-height: 32px;--luzmo-component-height-l: 40px;--luzmo-component-height-xl: 48px;--luzmo-component-height-xxl: 64px;--luzmo-icon-size-xxs: 12px;--luzmo-icon-size-xs: 14px;--luzmo-icon-size-s: 16px;--luzmo-icon-size-m: 18px;--luzmo-icon-size-l: 20px;--luzmo-icon-size-xl: 22px;--luzmo-icon-size-xxl: 32px}', document.head.appendChild(t);
|
|
31
31
|
}
|
|
32
32
|
})();
|
|
33
|
-
const
|
|
34
|
-
var
|
|
35
|
-
for (var
|
|
36
|
-
(i = p[s]) && (
|
|
37
|
-
return
|
|
33
|
+
const D = ":host{box-sizing:border-box;display:flex;flex-direction:column;height:100%;font-family:var(--luzmo-dataset-selector-list-font-family, var(--dataset-selector-list-font-family))}:host .dataset-selector-list{display:flex;flex-direction:column;gap:var(--luzmo-dataset-selector-list-gap, var(--dataset-selector-list-gap));height:100%;background:var(--luzmo-dataset-selector-list-background, var(--dataset-selector-list-background));padding:var(--luzmo-dataset-selector-list-padding, var(--dataset-selector-list-padding));border-radius:var(--luzmo-dataset-selector-list-border-radius, var(--dataset-selector-list-border-radius))}:host .search-input{background-color:var(--luzmo-dataset-selector-list-input-background, var(--dataset-selector-list-input-background));border:none;border-bottom:1px solid var(--luzmo-dataset-selector-list-input-border-color, var(--dataset-selector-list-input-border-color));color:var(--luzmo-dataset-selector-list-input-color, var(--dataset-selector-list-input-color));line-height:var(--luzmo-dataset-selector-list-input-line-height, var(--dataset-selector-list-input-line-height));font-size:var(--luzmo-dataset-selector-list-input-font-size, var(--dataset-selector-list-input-font-size));margin:0;outline:none;padding:var(--luzmo-dataset-selector-list-input-padding, var(--dataset-selector-list-input-padding));width:100%;box-sizing:border-box}:host .search-input::placeholder{color:var(--luzmo-font-color-tertiary, #999)}:host .datasets-scroll-container{flex:1;overflow-y:auto;overflow-x:hidden;min-height:0;scrollbar-width:thin;scrollbar-color:var(--luzmo-dataset-selector-list-scrollbar-thumb-background, var(--dataset-selector-list-scrollbar-thumb-background)) var(--luzmo-dataset-selector-list-scrollbar-track-background, var(--dataset-selector-list-scrollbar-track-background))}:host .datasets-scroll-container::-webkit-scrollbar{width:var(--luzmo-dataset-selector-list-scrollbar-width, var(--dataset-selector-list-scrollbar-width))}:host .datasets-scroll-container::-webkit-scrollbar-track{background:var(--luzmo-dataset-selector-list-scrollbar-track-background, var(--dataset-selector-list-scrollbar-track-background));border-radius:var(--luzmo-dataset-selector-list-scrollbar-track-border-radius, var(--dataset-selector-list-scrollbar-track-border-radius))}:host .datasets-scroll-container::-webkit-scrollbar-thumb{background:var(--luzmo-dataset-selector-list-scrollbar-thumb-background, var(--dataset-selector-list-scrollbar-thumb-background));border-radius:var(--luzmo-dataset-selector-list-scrollbar-thumb-border-radius, var(--dataset-selector-list-scrollbar-thumb-border-radius))}:host .datasets-scroll-container::-webkit-scrollbar-thumb:hover{background:var(--luzmo-dataset-selector-list-scrollbar-thumb-hover-background, var(--dataset-selector-list-scrollbar-thumb-hover-background))}:host .datasets-list{display:flex;flex-direction:column}:host .available-dataset-item{padding:var(--luzmo-dataset-selector-list-item-padding, var(--dataset-selector-list-item-padding));display:flex;flex-direction:row;align-items:center;gap:var(--luzmo-dataset-selector-list-item-gap, var(--dataset-selector-list-item-gap));cursor:pointer;border-radius:var(--luzmo-dataset-selector-list-item-border-radius, var(--dataset-selector-list-item-border-radius));transition:background-color .15s ease}:host .available-dataset-item:hover{background-color:var(--luzmo-dataset-selector-list-item-hover-background, var(--dataset-selector-list-item-hover-background))}:host .available-dataset-item:focus{outline:none}:host .available-dataset-item .dataset-icon{display:flex;align-items:center;justify-content:center;flex-shrink:0;width:16px;height:16px}:host .available-dataset-item .dataset-icon luzmo-icon{display:flex}:host .available-dataset-item .dataset-icon-img{width:16px;height:16px;object-fit:contain}:host .available-dataset-item .dataset-name{flex:1;line-height:var(--luzmo-dataset-selector-list-item-line-height, var(--dataset-selector-list-item-line-height));font-size:var(--luzmo-dataset-selector-list-item-font-size, var(--dataset-selector-list-item-font-size));overflow:hidden;text-overflow:ellipsis;white-space:nowrap}:host .no-datasets-found{display:flex;align-items:center;justify-content:center;height:50%;color:var(--luzmo-dataset-selector-list-no-datasets-color, var(--dataset-selector-list-no-datasets-color));font-size:var(--luzmo-dataset-selector-list-no-datasets-font-size, var(--dataset-selector-list-no-datasets-font-size));text-align:center;padding:var(--luzmo-spacing-4, 1rem)}:host .loader{display:flex;align-items:center;justify-content:center;padding:var(--luzmo-spacing-5, 1.25rem) 0}:host .loader .spinner{width:var(--luzmo-dataset-selector-list-loader-size, var(--dataset-selector-list-loader-size));height:var(--luzmo-dataset-selector-list-loader-size, var(--dataset-selector-list-loader-size));border:2px solid var(--luzmo-border-color-light, #e0e0e0);border-top-color:var(--luzmo-dataset-selector-list-loader-color, var(--dataset-selector-list-loader-color));border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}:host{--dataset-selector-list-background: var(--luzmo-background-color);--dataset-selector-list-padding: 0;--dataset-selector-list-gap: var(--luzmo-spacing-2);--dataset-selector-list-border-radius: var(--luzmo-border-radius-m);--dataset-selector-list-font-family: var(--luzmo-font-family);--dataset-selector-list-input-background: var(--luzmo-background-color);--dataset-selector-list-input-border-color: var(--luzmo-border-color-light, rgba(0,0,0,.05));--dataset-selector-list-input-color: var(--luzmo-font-color);--dataset-selector-list-input-padding: 0 var(--luzmo-spacing-4) var(--luzmo-spacing-2);--dataset-selector-list-input-font-size: var(--luzmo-font-size-s);--dataset-selector-list-input-line-height: 1.5rem;--dataset-selector-list-item-padding: var(--luzmo-spacing-1) var(--luzmo-spacing-4);--dataset-selector-list-item-gap: var(--luzmo-spacing-3);--dataset-selector-list-item-hover-background: var( --luzmo-background-color-highlight );--dataset-selector-list-item-font-size: var(--luzmo-font-size-s);--dataset-selector-list-item-line-height: 1.5rem;--dataset-selector-list-item-border-radius: var(--luzmo-border-radius-s);--dataset-selector-list-scrollbar-width: 6px;--dataset-selector-list-scrollbar-track-background: var( --luzmo-background-color-highlight );--dataset-selector-list-scrollbar-track-border-radius: var( --luzmo-border-radius-s );--dataset-selector-list-scrollbar-thumb-background: var( --luzmo-border-color-full );--dataset-selector-list-scrollbar-thumb-border-radius: var( --luzmo-border-radius-s );--dataset-selector-list-scrollbar-thumb-hover-background: var( --luzmo-border-color-full-hover );--dataset-selector-list-loader-size: 24px;--dataset-selector-list-loader-color: var(--luzmo-primary);--dataset-selector-list-no-datasets-color: var(--luzmo-font-color-tertiary);--dataset-selector-list-no-datasets-font-size: var(--luzmo-font-size-s)}";
|
|
34
|
+
var L = Object.defineProperty, S = Object.getOwnPropertyDescriptor, l = (p, t, e, o) => {
|
|
35
|
+
for (var a = o > 1 ? void 0 : o ? S(t, e) : t, s = p.length - 1, i; s >= 0; s--)
|
|
36
|
+
(i = p[s]) && (a = (o ? i(t, e, a) : i(a)) || a);
|
|
37
|
+
return o && a && L(t, e, a), a;
|
|
38
38
|
};
|
|
39
|
-
const g = 7,
|
|
39
|
+
const g = 7, C = 600, E = 5, z = class z extends x {
|
|
40
40
|
constructor() {
|
|
41
41
|
super(...arguments), this._selectedDatasets = /* @__PURE__ */ new Set(), this.showSearch = !0, this.searchPlaceholder = "Search datasets...", this.noDatasetsMessage = "No datasets found", this.authKey = "", this.authToken = "", this.apiUrl = "https://api.luzmo.com", this.appServer = "https://app.luzmo.com", this.flagOpendata = !1, this._availableDatasets = [], this._status = {
|
|
42
42
|
allDatasetsLoaded: !1,
|
|
@@ -52,7 +52,8 @@ const g = 7, E = 600, I = 5, z = class z extends w {
|
|
|
52
52
|
return this._selectedDatasets;
|
|
53
53
|
}
|
|
54
54
|
connectedCallback() {
|
|
55
|
-
|
|
55
|
+
var t;
|
|
56
|
+
(t = super.connectedCallback) == null || t.call(this), this._configureBroker(), this._waitForContainerHeightAndLoad();
|
|
56
57
|
}
|
|
57
58
|
_configureBroker() {
|
|
58
59
|
(this.authKey || this.authToken || this.apiUrl) && v.configure({
|
|
@@ -67,18 +68,19 @@ const g = 7, E = 600, I = 5, z = class z extends w {
|
|
|
67
68
|
});
|
|
68
69
|
}
|
|
69
70
|
_calculateOptimalQueryLimit() {
|
|
71
|
+
var d;
|
|
70
72
|
if (this._calculatedQueryLimit !== null)
|
|
71
73
|
return this._calculatedQueryLimit;
|
|
72
|
-
const t = this.shadowRoot
|
|
74
|
+
const t = (d = this.shadowRoot) == null ? void 0 : d.querySelector(
|
|
73
75
|
".dataset-selector-list"
|
|
74
76
|
);
|
|
75
77
|
if (!t)
|
|
76
78
|
return g;
|
|
77
|
-
const e = getComputedStyle(t),
|
|
79
|
+
const e = getComputedStyle(t), o = t.clientHeight, a = Number.parseFloat(e.height), s = Math.max(o, a);
|
|
78
80
|
if (s <= 0)
|
|
79
81
|
return g;
|
|
80
|
-
const
|
|
81
|
-
|
|
82
|
+
const m = Math.floor(s / 24), c = Math.max(
|
|
83
|
+
m + E,
|
|
82
84
|
g
|
|
83
85
|
);
|
|
84
86
|
return this._calculatedQueryLimit = c, c;
|
|
@@ -92,11 +94,11 @@ const g = 7, E = 600, I = 5, z = class z extends w {
|
|
|
92
94
|
const e = t.target;
|
|
93
95
|
this._searchValue = e.value, this._searchDebounceTimer !== null && clearTimeout(this._searchDebounceTimer), this._searchDebounceTimer = window.setTimeout(() => {
|
|
94
96
|
this._loadAvailableDatasets({ append: !1 });
|
|
95
|
-
},
|
|
97
|
+
}, C);
|
|
96
98
|
}
|
|
97
99
|
_handleScroll(t) {
|
|
98
|
-
const e = t.target,
|
|
99
|
-
|
|
100
|
+
const e = t.target, o = e.scrollTop, a = e.scrollHeight, s = e.clientHeight;
|
|
101
|
+
o + s >= a - 50 && !this._status.allDatasetsLoaded && !this._status.busy && this._loadAvailableDatasets({ append: !0 });
|
|
100
102
|
}
|
|
101
103
|
async _loadAvailableDatasets({
|
|
102
104
|
append: t
|
|
@@ -107,14 +109,14 @@ const g = 7, E = 600, I = 5, z = class z extends w {
|
|
|
107
109
|
allDatasetsLoaded: t ? this._status.allDatasetsLoaded : !1,
|
|
108
110
|
paging: t
|
|
109
111
|
};
|
|
110
|
-
const e = this._generateQuery(t),
|
|
112
|
+
const e = this._generateQuery(t), o = JSON.stringify(e), a = this._queryCache.has(o);
|
|
111
113
|
try {
|
|
112
114
|
let s;
|
|
113
|
-
|
|
115
|
+
a ? s = this._queryCache.get(o) : (s = await v.fetchApi("/securable", {
|
|
114
116
|
action: "get",
|
|
115
117
|
version: "0.1.0",
|
|
116
118
|
find: e
|
|
117
|
-
}), this._queryCache.set(
|
|
119
|
+
}), this._queryCache.set(o, s)), this._onDatasetsLoaded(t, s), this._shouldLoadMoreDatasetsForViewport() && await this._loadAvailableDatasets({ append: !0 });
|
|
118
120
|
} catch (s) {
|
|
119
121
|
console.error("Error loading datasets:", s), this._status = {
|
|
120
122
|
...this._status,
|
|
@@ -133,7 +135,7 @@ const g = 7, E = 600, I = 5, z = class z extends w {
|
|
|
133
135
|
_generateQuery(t) {
|
|
134
136
|
const e = this._calculateOptimalQueryLimit();
|
|
135
137
|
t ? this._currentOffset += e : this._currentOffset = 0;
|
|
136
|
-
const
|
|
138
|
+
const o = this._searchValue ? {
|
|
137
139
|
search: {
|
|
138
140
|
match_types: ["name", "description"],
|
|
139
141
|
keyphrase: this._searchValue,
|
|
@@ -171,36 +173,37 @@ const g = 7, E = 600, I = 5, z = class z extends w {
|
|
|
171
173
|
where: { type: "dataset" },
|
|
172
174
|
limit: e,
|
|
173
175
|
offset: this._currentOffset,
|
|
174
|
-
...
|
|
176
|
+
...o,
|
|
175
177
|
...this.flagOpendata ? { public: null } : {}
|
|
176
178
|
};
|
|
177
179
|
}
|
|
178
|
-
_onDatasetsLoaded(t, { rows: e, count:
|
|
179
|
-
let
|
|
180
|
+
_onDatasetsLoaded(t, { rows: e, count: o }) {
|
|
181
|
+
let a;
|
|
180
182
|
if (t) {
|
|
181
|
-
const c = new Set(this._availableDatasets.map((
|
|
182
|
-
|
|
183
|
+
const c = new Set(this._availableDatasets.map((h) => h.id)), d = e.filter((h) => !c.has(h.id));
|
|
184
|
+
a = [...this._availableDatasets, ...d];
|
|
183
185
|
} else
|
|
184
|
-
|
|
186
|
+
a = e || [];
|
|
185
187
|
t && e.length === 0 ? this._hasLoadedEmptyPage = !0 : e.length > 0 && (this._hasLoadedEmptyPage = !1);
|
|
186
|
-
const s =
|
|
188
|
+
const s = a.reduce((c, d) => (c.some((h) => h.id === d.id) || c.push(d), c), []), i = a.length, m = this._hasLoadedEmptyPage || i >= o;
|
|
187
189
|
this._status = {
|
|
188
190
|
...this._status,
|
|
189
|
-
allDatasetsLoaded:
|
|
191
|
+
allDatasetsLoaded: m
|
|
190
192
|
}, this._availableDatasets = s;
|
|
191
193
|
}
|
|
192
194
|
_shouldLoadMoreDatasetsForViewport() {
|
|
195
|
+
var d;
|
|
193
196
|
if (this._status.allDatasetsLoaded || this._hasLoadedEmptyPage || this._status.busy)
|
|
194
197
|
return !1;
|
|
195
|
-
const t = this.shadowRoot
|
|
198
|
+
const t = (d = this.shadowRoot) == null ? void 0 : d.querySelector(".datasets-scroll-container");
|
|
196
199
|
if (!t)
|
|
197
200
|
return !1;
|
|
198
|
-
const e = t.clientHeight,
|
|
201
|
+
const e = t.clientHeight, a = Math.ceil(e / 24), i = Math.ceil(a * 1.5);
|
|
199
202
|
return this._filteredDatasets.length < i;
|
|
200
203
|
}
|
|
201
204
|
_getDatasetName(t) {
|
|
202
|
-
const e =
|
|
203
|
-
return
|
|
205
|
+
const e = y();
|
|
206
|
+
return _(t.name, e) || t.id || "Unknown Dataset";
|
|
204
207
|
}
|
|
205
208
|
_selectDataset(t) {
|
|
206
209
|
this.dispatchEvent(
|
|
@@ -212,37 +215,34 @@ const g = 7, E = 600, I = 5, z = class z extends w {
|
|
|
212
215
|
);
|
|
213
216
|
}
|
|
214
217
|
_handleDatasetClick(t) {
|
|
215
|
-
const e = t.currentTarget.dataset.datasetId,
|
|
216
|
-
|
|
218
|
+
const e = t.currentTarget.dataset.datasetId, o = this._filteredDatasets.find((a) => a.id === e);
|
|
219
|
+
o && this._selectDataset(o);
|
|
217
220
|
}
|
|
218
221
|
_handleDatasetKeydown(t) {
|
|
219
222
|
if (t.key === "Enter" || t.key === " ") {
|
|
220
223
|
t.preventDefault();
|
|
221
|
-
const e = t.currentTarget.dataset.datasetId,
|
|
222
|
-
|
|
224
|
+
const e = t.currentTarget.dataset.datasetId, o = this._filteredDatasets.find((a) => a.id === e);
|
|
225
|
+
o && this._selectDataset(o);
|
|
223
226
|
}
|
|
224
227
|
}
|
|
225
228
|
_renderLoader() {
|
|
226
|
-
return
|
|
229
|
+
return u`
|
|
227
230
|
<div class="loader">
|
|
228
231
|
<div class="spinner"></div>
|
|
229
232
|
</div>
|
|
230
233
|
`;
|
|
231
234
|
}
|
|
232
235
|
_renderDatasetIcon(t) {
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
/>`;
|
|
241
|
-
}
|
|
242
|
-
return n`${_(y)}`;
|
|
236
|
+
return u`
|
|
237
|
+
<luzmo-dataset-icon
|
|
238
|
+
.datasetInfo=${t}
|
|
239
|
+
size="16px"
|
|
240
|
+
app-url=${this.appServer}
|
|
241
|
+
></luzmo-dataset-icon>
|
|
242
|
+
`;
|
|
243
243
|
}
|
|
244
244
|
_renderSearchInput() {
|
|
245
|
-
return this.showSearch ?
|
|
245
|
+
return this.showSearch ? u`
|
|
246
246
|
<input
|
|
247
247
|
name="dataset-search"
|
|
248
248
|
type="text"
|
|
@@ -256,16 +256,16 @@ const g = 7, E = 600, I = 5, z = class z extends w {
|
|
|
256
256
|
` : b;
|
|
257
257
|
}
|
|
258
258
|
_renderDatasetList() {
|
|
259
|
-
return this._filteredDatasets.length === 0 ? this._status.busy && !this._status.paging ? this._renderLoader() :
|
|
259
|
+
return this._filteredDatasets.length === 0 ? this._status.busy && !this._status.paging ? this._renderLoader() : u`
|
|
260
260
|
<div class="no-datasets-found">${this.noDatasetsMessage}</div>
|
|
261
|
-
` :
|
|
261
|
+
` : u`
|
|
262
262
|
<div class="datasets-scroll-container" @scroll=${this._handleScroll}>
|
|
263
263
|
${this._status.busy && !this._status.paging ? this._renderLoader() : b}
|
|
264
264
|
<div class="datasets-list">
|
|
265
|
-
${
|
|
265
|
+
${w(
|
|
266
266
|
this._filteredDatasets,
|
|
267
267
|
(t) => t.id,
|
|
268
|
-
(t) =>
|
|
268
|
+
(t) => u`
|
|
269
269
|
<div
|
|
270
270
|
class="available-dataset-item"
|
|
271
271
|
data-dataset-id=${t.id}
|
|
@@ -292,41 +292,41 @@ const g = 7, E = 600, I = 5, z = class z extends w {
|
|
|
292
292
|
`;
|
|
293
293
|
}
|
|
294
294
|
render() {
|
|
295
|
-
return
|
|
295
|
+
return u`
|
|
296
296
|
<div class="dataset-selector-list">
|
|
297
297
|
${this._renderSearchInput()} ${this._renderDatasetList()}
|
|
298
298
|
</div>
|
|
299
299
|
`;
|
|
300
300
|
}
|
|
301
301
|
};
|
|
302
|
-
z.styles = D
|
|
302
|
+
z.styles = k(D);
|
|
303
303
|
let r = z;
|
|
304
304
|
l([
|
|
305
|
-
|
|
305
|
+
n({ type: Object, attribute: !1 })
|
|
306
306
|
], r.prototype, "selectedDatasets", 1);
|
|
307
307
|
l([
|
|
308
|
-
|
|
308
|
+
n({ type: Boolean, attribute: "show-search" })
|
|
309
309
|
], r.prototype, "showSearch", 2);
|
|
310
310
|
l([
|
|
311
|
-
|
|
311
|
+
n({ type: String, attribute: "search-placeholder" })
|
|
312
312
|
], r.prototype, "searchPlaceholder", 2);
|
|
313
313
|
l([
|
|
314
|
-
|
|
314
|
+
n({ type: String, attribute: "no-datasets-message" })
|
|
315
315
|
], r.prototype, "noDatasetsMessage", 2);
|
|
316
316
|
l([
|
|
317
|
-
|
|
317
|
+
n({ type: String, attribute: "auth-key" })
|
|
318
318
|
], r.prototype, "authKey", 2);
|
|
319
319
|
l([
|
|
320
|
-
|
|
320
|
+
n({ type: String, attribute: "auth-token" })
|
|
321
321
|
], r.prototype, "authToken", 2);
|
|
322
322
|
l([
|
|
323
|
-
|
|
323
|
+
n({ type: String, attribute: "api-url" })
|
|
324
324
|
], r.prototype, "apiUrl", 2);
|
|
325
325
|
l([
|
|
326
|
-
|
|
326
|
+
n({ type: String, attribute: "app-server" })
|
|
327
327
|
], r.prototype, "appServer", 2);
|
|
328
328
|
l([
|
|
329
|
-
|
|
329
|
+
n({ type: Boolean, attribute: "flag-opendata" })
|
|
330
330
|
], r.prototype, "flagOpendata", 2);
|
|
331
331
|
l([
|
|
332
332
|
f()
|