@luzmo/analytics-components-kit 1.0.3-beta.6 → 1.0.3-beta.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/components/ai-chat/ai-chat.d.ts +17 -1
- package/components/ai-chat/empty-state/ai-chat-empty-state.d.ts +46 -0
- package/components/ai-chat/empty-state/index.d.ts +8 -0
- package/components/ai-chat/empty-state/types.d.ts +14 -0
- package/components/ai-chat/index.cjs +1 -1
- package/components/ai-chat/index.d.ts +2 -0
- package/components/ai-chat/index.js +2 -2
- package/components/ai-chat-BITPlYbm.cjs +178 -0
- package/components/{ai-chat-DVU9XiA2.js → ai-chat-D6fgbjA2.js} +368 -295
- package/components/ai-interaction-textarea/index.cjs +1 -1
- package/components/ai-interaction-textarea/index.js +1 -1
- package/components/{ai-interaction-textarea-DI98QoMZ.js → ai-interaction-textarea-C1DMkiX9.js} +3 -3
- package/components/{ai-interaction-textarea-DqWt823F.cjs → ai-interaction-textarea-wt2weV1c.cjs} +1 -1
- package/components/{base-D3ehdFno.js → base-D82dU2vv.js} +1 -1
- package/components/{base-HUGXYn6t.cjs → base-iNk9N4Tk.cjs} +1 -1
- package/components/data-field/index.cjs +1 -1
- package/components/data-field/index.js +1 -1
- package/components/{data-field-DwSYggPc.js → data-field-2gH1_AhT.js} +3 -3
- package/components/{data-field-DSzU9Apl.cjs → data-field-DDO-2ESu.cjs} +1 -1
- package/components/data-field-level/index.cjs +1 -1
- package/components/data-field-level/index.js +1 -1
- package/components/{data-field-level-BquNqRm1.js → data-field-level-2h8s8KK1.js} +1 -1
- package/components/{data-field-level-CYUtLiIi.cjs → data-field-level-COl8ZWdN.cjs} +1 -1
- package/components/data-field-panel/index.cjs +1 -1
- package/components/data-field-panel/index.js +1 -1
- package/components/{data-field-panel-B_83HNyI.cjs → data-field-panel-CgfuCAp8.cjs} +1 -1
- package/components/{data-field-panel-Bqslx0EB.js → data-field-panel-P9QrDHMI.js} +3 -3
- package/components/data-fields-select/index.cjs +1 -1
- package/components/data-fields-select/index.js +1 -1
- package/components/{data-fields-select-t1ikPTLw.js → data-fields-select-1I8-Brdz.js} +1 -1
- package/components/{data-fields-select-BZj1cpL5.cjs → data-fields-select-Cudq0iLk.cjs} +1 -1
- package/components/dataset-selector-list/index.cjs +1 -1
- package/components/dataset-selector-list/index.js +1 -1
- package/components/{dataset-selector-list-Bta-CGoN.cjs → dataset-selector-list-BxGYITHM.cjs} +1 -1
- package/components/{dataset-selector-list-Ho8JnQp7.js → dataset-selector-list-DmbQl9uz.js} +1 -1
- package/components/dataset-selector-row/index.cjs +1 -1
- package/components/dataset-selector-row/index.js +1 -1
- package/components/{dataset-selector-row-CKhHK1H5.cjs → dataset-selector-row-BgGa4uFN.cjs} +1 -1
- package/components/{dataset-selector-row-8hgsmMRg.js → dataset-selector-row-CaTsyi1d.js} +1 -1
- package/components/{de-D2bZwq4D.js → de-DFS1MvFY.js} +7 -7
- package/components/de-DWpyMlmz.cjs +20 -0
- package/components/display-settings/index.cjs +1 -1
- package/components/display-settings/index.js +1 -1
- package/components/{display-settings-Bmb0HUlu.cjs → display-settings-Bfz2tg_G.cjs} +1 -1
- package/components/{display-settings-Di9dXtUM.js → display-settings-DWoUj0P7.js} +1 -1
- package/components/display-settings-binning/index.cjs +1 -1
- package/components/display-settings-binning/index.js +1 -1
- package/components/{display-settings-binning-B8qUIt6T.js → display-settings-binning-BIBzOWZA.js} +2 -2
- package/components/{display-settings-binning-CpwCqvwm.cjs → display-settings-binning-Cf1QlQy6.cjs} +1 -1
- package/components/display-settings-datetime/index.cjs +1 -1
- package/components/display-settings-datetime/index.js +1 -1
- package/components/{display-settings-datetime-3M3DvzTN.cjs → display-settings-datetime-C76Et2ED.cjs} +1 -1
- package/components/{display-settings-datetime-C8JfjDJK.js → display-settings-datetime-DGlj31eD.js} +2 -2
- package/components/display-settings-grand-totals/index.cjs +1 -1
- package/components/display-settings-grand-totals/index.js +1 -1
- package/components/{display-settings-grand-totals-DMDa6C5k.cjs → display-settings-grand-totals-By98iKXS.cjs} +1 -1
- package/components/{display-settings-grand-totals-kyfMh55D.js → display-settings-grand-totals-ZWO02WXj.js} +2 -2
- package/components/display-settings-numeric/index.cjs +1 -1
- package/components/display-settings-numeric/index.js +1 -1
- package/components/{display-settings-numeric-B51KddXI.cjs → display-settings-numeric-BPKl9ljn.cjs} +1 -1
- package/components/{display-settings-numeric-Cw8Nx5s9.js → display-settings-numeric-DHvjUxmC.js} +2 -2
- package/components/display-settings-period-over-period/index.cjs +1 -1
- package/components/display-settings-period-over-period/index.js +1 -1
- package/components/{display-settings-period-over-period-B2AN0rwz.js → display-settings-period-over-period-CPsfL-OC.js} +2 -2
- package/components/{display-settings-period-over-period-CjjA2NqZ.cjs → display-settings-period-over-period-CYwa8_dX.cjs} +1 -1
- package/components/es-Bm4nseZH.cjs +20 -0
- package/components/{es-9-jszdOJ.js → es-C1prodbH.js} +7 -7
- package/components/filter-expression-picker/index.cjs +1 -1
- package/components/filter-expression-picker/index.js +1 -1
- package/components/{filter-expression-picker-DCFZKpBE.cjs → filter-expression-picker-CJB_jgcc.cjs} +1 -1
- package/components/{filter-expression-picker-Brn-vNUd.js → filter-expression-picker-DbIwoTsX.js} +1 -1
- package/components/filter-item/index.cjs +1 -1
- package/components/filter-item/index.js +1 -1
- package/components/{filter-item-BlSQe2nu.js → filter-item-BGtJwvjk.js} +4 -4
- package/components/{filter-item-Cjrhb1RR.cjs → filter-item-as8Ocmp3.cjs} +1 -1
- package/components/filter-value-picker/index.cjs +1 -1
- package/components/filter-value-picker/index.js +1 -1
- package/components/{filter-value-picker-BCckBdal.cjs → filter-value-picker-BL-1pN_G.cjs} +1 -1
- package/components/{filter-value-picker-CBetCjIs.js → filter-value-picker-BrYCGFst.js} +4 -4
- package/components/filter-value-picker-datetime/index.cjs +1 -1
- package/components/filter-value-picker-datetime/index.js +1 -1
- package/components/{filter-value-picker-datetime-CT63jJDI.js → filter-value-picker-datetime-BPtF1l_J.js} +1 -1
- package/components/{filter-value-picker-datetime-CxM6HXe3.cjs → filter-value-picker-datetime-wXHf2Ybs.cjs} +1 -1
- package/components/filter-value-picker-hierarchy/index.cjs +1 -1
- package/components/filter-value-picker-hierarchy/index.js +1 -1
- package/components/{filter-value-picker-hierarchy-CAORy2A-.js → filter-value-picker-hierarchy-CDhpfB2Y.js} +2 -2
- package/components/{filter-value-picker-hierarchy-C5QZXiQz.cjs → filter-value-picker-hierarchy-Cmw2p2K6.cjs} +1 -1
- package/components/filter-value-picker-numeric/index.cjs +1 -1
- package/components/filter-value-picker-numeric/index.js +1 -1
- package/components/{filter-value-picker-numeric-Fao-PKN7.js → filter-value-picker-numeric-BEvT5oKu.js} +1 -1
- package/components/{filter-value-picker-numeric-CtOfHaJR.cjs → filter-value-picker-numeric-UwkCyHGV.cjs} +1 -1
- package/components/filters/index.cjs +1 -1
- package/components/filters/index.js +1 -1
- package/components/{filters-DI0GTL9k.cjs → filters-DdB5-4Db.cjs} +1 -1
- package/components/{filters-CtWut3ce.js → filters-ltvxQR-K.js} +2 -2
- package/components/{fr-DLf99-F8.js → fr-BMYUCp2R.js} +7 -7
- package/components/fr-BPTbVsj0.cjs +20 -0
- package/components/{get-dataset-name-EKmxKZU9.js → get-dataset-name-BfFHT__k.js} +1 -1
- package/components/{get-dataset-name-CvZduuOo.cjs → get-dataset-name-Cl6mPSex.cjs} +1 -1
- package/components/index.cjs +1 -1
- package/components/index.js +58 -58
- package/components/item-grid/index.cjs +1 -1
- package/components/item-grid/index.js +1 -1
- package/components/{item-grid-Bcez8lwg.cjs → item-grid-DR36E_MC.cjs} +1 -1
- package/components/{item-grid-DgxtJ0eX.js → item-grid-Q0Ggl_US.js} +1 -1
- package/components/item-option/index.cjs +1 -1
- package/components/item-option/index.js +1 -1
- package/components/{item-option-BgYyAKSW.cjs → item-option-CbvYq_WJ.cjs} +1 -1
- package/components/{item-option-DjiTHr0r.js → item-option-DI3KO7QY.js} +1 -1
- package/components/item-option-action-button-group/index.cjs +1 -1
- package/components/item-option-action-button-group/index.js +1 -1
- package/components/{item-option-action-button-group-DdqzgR08.cjs → item-option-action-button-group-BnMVlPWX.cjs} +1 -1
- package/components/{item-option-action-button-group-U5GCtFjg.js → item-option-action-button-group-D6IwxNDf.js} +1 -1
- package/components/{item-option-base-BeIdCZMp.cjs → item-option-base-CKQPWveC.cjs} +1 -1
- package/components/{item-option-base-DM3U9dbW.js → item-option-base-DH5wKqEF.js} +1 -1
- package/components/item-option-color-palette-picker/index.cjs +1 -1
- package/components/item-option-color-palette-picker/index.js +1 -1
- package/components/{item-option-color-palette-picker-oj8nSb-q.cjs → item-option-color-palette-picker-h-3xHsR4.cjs} +1 -1
- package/components/{item-option-color-palette-picker-BsMZ3IUR.js → item-option-color-palette-picker-n_OxJNd9.js} +1 -1
- package/components/item-option-color-picker/index.cjs +1 -1
- package/components/item-option-color-picker/index.js +1 -1
- package/components/{item-option-color-picker-B_pemZKJ.js → item-option-color-picker-C1x5vS5d.js} +1 -1
- package/components/{item-option-color-picker-BJKGTrIi.cjs → item-option-color-picker-C6LZkkBG.cjs} +1 -1
- package/components/item-option-color-range/index.cjs +1 -1
- package/components/item-option-color-range/index.js +1 -1
- package/components/{item-option-color-range-DW3rdMt5.js → item-option-color-range-B2jermJT.js} +1 -1
- package/components/{item-option-color-range-BOegJZim.cjs → item-option-color-range-DBiG8jhK.cjs} +1 -1
- package/components/item-option-multi-language-field/index.cjs +1 -1
- package/components/item-option-multi-language-field/index.js +1 -1
- package/components/{item-option-multi-language-field-CeYgkRzs.js → item-option-multi-language-field-BmJY3dG0.js} +1 -1
- package/components/{item-option-multi-language-field-BQZ4Lmiy.cjs → item-option-multi-language-field-DDeFZMwX.cjs} +1 -1
- package/components/item-option-number-field/index.cjs +1 -1
- package/components/item-option-number-field/index.js +1 -1
- package/components/{item-option-number-field-CFQyJG_w.js → item-option-number-field-B5ed4vvs.js} +1 -1
- package/components/{item-option-number-field-T2L2jFCf.cjs → item-option-number-field-BJo-SKQB.cjs} +1 -1
- package/components/item-option-panel/index.cjs +1 -1
- package/components/item-option-panel/index.js +1 -1
- package/components/{item-option-panel-ChOItFmc.js → item-option-panel-B8BKxNPg.js} +2 -2
- package/components/{item-option-panel-BOJmKPgY.cjs → item-option-panel-Dm34avUG.cjs} +1 -1
- package/components/item-option-picker/index.cjs +1 -1
- package/components/item-option-picker/index.js +1 -1
- package/components/{item-option-picker-IBP7QFLA.js → item-option-picker-C8evzSOb.js} +1 -1
- package/components/{item-option-picker-3krQktmk.cjs → item-option-picker-DlbKU1wY.cjs} +1 -1
- package/components/item-option-position-picker/index.cjs +1 -1
- package/components/item-option-position-picker/index.js +1 -1
- package/components/{item-option-position-picker-DF54K_Mw.js → item-option-position-picker-Bue5o0fT.js} +1 -1
- package/components/{item-option-position-picker-BiLRWUWK.cjs → item-option-position-picker-CB4Y0Z6D.cjs} +1 -1
- package/components/item-option-positions-number-field/index.cjs +1 -1
- package/components/item-option-positions-number-field/index.js +1 -1
- package/components/{item-option-positions-number-field-B6qxN1x7.cjs → item-option-positions-number-field-Bbru1yNj.cjs} +1 -1
- package/components/{item-option-positions-number-field-Dchzu5NS.js → item-option-positions-number-field-CdK1WdMx.js} +1 -1
- package/components/item-option-radio-button-group/index.cjs +1 -1
- package/components/item-option-radio-button-group/index.js +1 -1
- package/components/{item-option-radio-button-group-DzI_2jB3.cjs → item-option-radio-button-group-BCiDl5wB.cjs} +1 -1
- package/components/{item-option-radio-button-group-BiOpqNXX.js → item-option-radio-button-group-BlQxNUIM.js} +1 -1
- package/components/item-option-slider/index.cjs +1 -1
- package/components/item-option-slider/index.js +1 -1
- package/components/{item-option-slider-Dba7mmcA.js → item-option-slider-CX8XWUEP.js} +1 -1
- package/components/{item-option-slider-6E4VgJpv.cjs → item-option-slider-Db-HdZ9C.cjs} +1 -1
- package/components/item-option-switch/index.cjs +1 -1
- package/components/item-option-switch/index.js +1 -1
- package/components/{item-option-switch-BAYX5lTr.js → item-option-switch-1wVCBJpo.js} +1 -1
- package/components/{item-option-switch-Dt4pzFNi.cjs → item-option-switch-BI0b6qMP.cjs} +1 -1
- package/components/item-option-text-field/index.cjs +1 -1
- package/components/item-option-text-field/index.js +1 -1
- package/components/{item-option-text-field-BLOz4LvH.cjs → item-option-text-field-Cuo1cBWG.cjs} +1 -1
- package/components/{item-option-text-field-CHalqTt1.js → item-option-text-field-c8PsVNYB.js} +1 -1
- package/components/item-slot-drop/index.cjs +1 -1
- package/components/item-slot-drop/index.js +1 -1
- package/components/{item-slot-drop-CNeF_Qmg.cjs → item-slot-drop-2SpLWjPC.cjs} +1 -1
- package/components/{item-slot-drop-n6UHgA-Q.js → item-slot-drop-Cpf4DnI4.js} +4 -4
- package/components/item-slot-drop-panel/index.cjs +1 -1
- package/components/item-slot-drop-panel/index.js +1 -1
- package/components/{item-slot-drop-panel-Hhp9_pDd.js → item-slot-drop-panel-C77wRsvJ.js} +3 -3
- package/components/{item-slot-drop-panel-Bh6PlCJx.cjs → item-slot-drop-panel-ClEOXFHz.cjs} +1 -1
- package/components/item-slot-picker/index.cjs +1 -1
- package/components/item-slot-picker/index.js +1 -1
- package/components/{item-slot-picker-BAMVwHtd.js → item-slot-picker-BEPRIyMJ.js} +5 -5
- package/components/{item-slot-picker-7oF3vLwb.cjs → item-slot-picker-B_l4VnV_.cjs} +1 -1
- package/components/item-slot-picker-panel/index.cjs +1 -1
- package/components/item-slot-picker-panel/index.js +1 -1
- package/components/{item-slot-picker-panel-BYCDx6Hk.js → item-slot-picker-panel-B4tCFh38.js} +3 -3
- package/components/{item-slot-picker-panel-C6mMlurQ.cjs → item-slot-picker-panel-BCzV9MAV.cjs} +1 -1
- package/components/{localized-mixin-CxGNXOcg.cjs → localized-mixin-AEA3w4H0.cjs} +1 -1
- package/components/{localized-mixin-CpYxJczB.js → localized-mixin-XqTi4F7d.js} +1 -1
- package/components/nl-BE6MZtti.cjs +20 -0
- package/components/{nl-QLEhlKsI.js → nl-DzdJmn0w.js} +7 -7
- package/components/{set-locale-wsrhUZVV.js → set-locale-B8CaHx6q.js} +4 -4
- package/components/{set-locale-xSK2Wd4D.cjs → set-locale-CFD7fxS3.cjs} +1 -1
- package/components/slot-menu/index.cjs +1 -1
- package/components/slot-menu/index.js +1 -1
- package/components/{slot-menu-CIQRPLvx.cjs → slot-menu-C8446xNy.cjs} +1 -1
- package/components/{slot-menu-B431N66z.js → slot-menu-DuJRaqmC.js} +3 -3
- package/components/slot-menu-list/index.cjs +1 -1
- package/components/slot-menu-list/index.js +1 -1
- package/components/{slot-menu-list-BROocU0s.cjs → slot-menu-list-B6A6w2d9.cjs} +1 -1
- package/components/{slot-menu-list-Cdh09ie0.js → slot-menu-list-Zzwr6h1J.js} +1 -1
- package/components/utils/base.cjs +1 -1
- package/components/utils/base.js +2 -2
- package/components/{utils-iY1cKQaF.cjs → utils-1SB0pExj.cjs} +1 -1
- package/components/{utils-CJ3Vy98n.js → utils-sAvG9cHu.js} +1 -1
- package/components/utils.cjs +1 -1
- package/components/utils.js +2 -2
- package/components/viz-item-menu/index.cjs +1 -1
- package/components/viz-item-menu/index.js +1 -1
- package/components/{viz-item-menu-D20StIE_.cjs → viz-item-menu-B4mavjZ5.cjs} +1 -1
- package/components/{viz-item-menu--FyB_XCf.js → viz-item-menu-CEcwbasZ.js} +1 -1
- package/custom-elements.json +284 -0
- package/package.json +1 -1
- package/react/components/ai-chat/empty-state/index.ts +1 -0
- package/react/components/ai-chat/empty-state/types.ts +16 -0
- package/react/esm/components/ai-chat/empty-state/index.d.ts +1 -0
- package/react/esm/components/ai-chat/empty-state/index.js +1 -0
- package/react/esm/components/ai-chat/empty-state/types.d.ts +14 -0
- package/react/esm/components/ai-chat/empty-state/types.js +1 -0
- package/components/ai-chat-CY73iYCg.cjs +0 -154
- package/components/de-CVLDoWlp.cjs +0 -20
- package/components/es-Byjf7YBI.cjs +0 -20
- package/components/fr-BVxPTfyF.cjs +0 -20
- package/components/nl-D4uOyZ6h.cjs +0 -20
|
@@ -17,4 +17,4 @@
|
|
|
17
17
|
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
18
18
|
* SOFTWARE.
|
|
19
19
|
* */
|
|
20
|
-
require(`./set-locale-
|
|
20
|
+
require(`./set-locale-CFD7fxS3.cjs`),require(`./load-data-fields-for-datasets-Co30ufjO.cjs`);const e=require(`./slots-config-D45__I20.cjs`);var t=new Set([`x-axis`,`y-axis`,`category`,`name`,`row`,`levels`]),n=new Set([`legend`,`color`,`column`]),r=new Set([`measure`]),i={dimension:`mainGroupBy`,time:`mainGroupBy`,identifier:`mainGroupBy`,evolution:`mainGroupBy`,source:`mainGroupBy`,destination:`secondaryGroupBy`,open:`measure`,high:`measure`,low:`measure`,close:`measure`,target:`measure`,slidermetric:`measure`,geo:`other`,coordinates:`other`},a={"x-axis":[`y-axis`,`category`,`name`,`row`,`levels`],"y-axis":[`x-axis`,`category`,`name`,`row`,`levels`],category:[`name`,`x-axis`,`y-axis`,`row`,`levels`],name:[`category`,`x-axis`,`y-axis`,`row`,`levels`],row:[`x-axis`,`y-axis`,`category`,`name`,`levels`],levels:[`x-axis`,`y-axis`,`category`,`name`,`row`]},o={legend:[`color`,`column`],color:[`legend`,`column`],column:[`legend`,`color`]};function s(e){return e.type===`numeric`||e.type===`array[numeric]`?`numeric`:`dimension`}function c(e){return i[e.slotName]||(r.has(e.slotName)?`measure`:n.has(e.slotName)?`secondaryGroupBy`:t.has(e.slotName)?`mainGroupBy`:e.slotType===`numeric`?`measure`:e.slotType===`categorical`?`mainGroupBy`:e.slotType===`mixed`?e.contentKind===`numeric`?`measure`:`mainGroupBy`:`other`)}function l(e){let a=new Set,o=i[e.name];return o&&a.add(o),t.has(e.name)&&a.add(`mainGroupBy`),n.has(e.name)&&a.add(`secondaryGroupBy`),r.has(e.name)&&a.add(`measure`),e.type===`numeric`?a.add(`measure`):e.type===`categorical`?a.size===0&&a.add(`mainGroupBy`):e.type===`mixed`&&(a.add(`mainGroupBy`),a.add(`measure`)),a.size===0&&a.add(`other`),a}function u(e){return e.some(e=>l(e).has(`secondaryGroupBy`))}function d(e,t){let n=e===`mainGroupBy`?a:e===`secondaryGroupBy`?o:void 0;return!n||!(t in n)?[]:[...n[t]]}function f(e){let t=new Map,n=e=>{let n=`${e.name}::${e.type??``}`,r=t.get(n);return r||(r=l(e),t.set(n,r)),r},r=[e.sourceSlotName,...d(e.sourceRole,e.sourceSlotName)],i=new Map;return r.forEach((e,t)=>{i.has(e)||i.set(e,t)}),[...e.targetSlots.filter(t=>{let r=n(t);return e.preferredRoles.some(e=>r.has(e))?e.isAdditionalCompatible?e.isAdditionalCompatible(t):!0:!1})].sort((t,r)=>{let a=n(t),o=n(r),s=e.preferredRoles.findIndex(e=>a.has(e)),c=e.preferredRoles.findIndex(e=>o.has(e)),l=s===-1?2**53-1:s,u=c===-1?2**53-1:c;if(l!==u)return l-u;let d=i.get(t.name)??2**53-1,f=i.get(r.name)??2**53-1;return d===f?(t.order??0)-(r.order??0):d-f})}function p(e,t){return e.sourceRole===`mainGroupBy`?[`mainGroupBy`,`secondaryGroupBy`]:e.sourceRole===`secondaryGroupBy`?t?[`secondaryGroupBy`]:[`mainGroupBy`]:e.sourceRole===`measure`?[`measure`]:[`other`]}function m(e,t){let n=e.acceptableDataFieldTypes,r=e.acceptableColumnSubtypes;return!(t.type&&Array.isArray(n)&&n.length>0&&!n.includes(t.type)||t.subtype&&Array.isArray(r)&&r.length>0&&!r.includes(t.subtype))}function h(e){return e.canAcceptMultipleDataFields===!0||e.canAcceptMultipleColumns===!0}async function g(t){let n=t.customItemSlotsConfigs?.find(e=>e.type===t.itemType)?.slotsConfig;return n?structuredClone(n):await e.t(t.itemType)??void 0}function _(e){return(e?.content?.length??0)>0}function v(e){return e?.content?.length??0}function y(e){let t=e.options,n=t?Object.prototype.hasOwnProperty.call(t,`isAggregationDisabled`):!1,r=t?Object.prototype.hasOwnProperty.call(t,`isBinningDisabled`):!1,i=e.type===`categorical`||e.type===`mixed`,a=e.type===`mixed`||e.type===`numeric`;return{aggregationDisabled:n?t?.isAggregationDisabled===!0:i,binningDisabled:r?t?.isBinningDisabled===!0:a}}function b(e,t){let n=y(t),r=structuredClone(e);return n.aggregationDisabled&&delete r.aggregation,n.binningDisabled&&delete r.bins,r}function x(e){let t=new Map(e.slotsConfig.map(e=>[e.name,e]));return e.slots.map(e=>{let n=t.get(e.name);return n?{name:e.name,content:(e.content??[]).map(e=>b(e,n))}:{name:e.name,content:structuredClone(e.content??[])}})}function S(e){let t=new Map(e.map(e=>[e.name,e]));for(let n of e)n.content=n.content??[],n.content.length>1&&n.noMultipleIfSlotsFilled?.some(e=>_(t.get(e)))&&(n.content=[n.content[0]]),n.content.length>1&&n.keepOnlyFirstWhenOtherSlotFilled?.some(e=>_(t.get(e)))&&(n.content=[n.content[0]]),n.content.length>0&&n.clearWhenOtherSlotHasMultipleItems?.some(e=>v(t.get(e))>1)&&(n.content=[])}function C(e){let t=[...e].sort((e,t)=>(e.order??0)-(t.order??0)),n=[],r=0;for(let e of t)for(let t=0;t<(e.content??[]).length;t++){let i=e.content?.[t];if(!i)continue;let a=s(i),o=c({slotName:e.name,slotType:e.type,contentKind:a});n.push({id:`staged-${e.name}-${t}-${r}`,sourceSlotName:e.name,sourceSlotIsRequired:e.isRequired===!0,sourceRole:o,sourceOrder:r,content:structuredClone(i)}),r++}return n}function w(e){let t=new Set;for(let n of e.targetSlots)for(let e of n.content??[]){let n=e._stagedId;n&&t.add(n)}e.placedIds.clear();for(let n of t)e.placedIds.add(n)}function T(e,t){let n=new Map(t.map(e=>[e.name,e])),r=new Map(e.map(e=>[e.name,e]));for(let t of e){let e=n.get(t.name);if(!e)return!1;let i=t.content?.length??0;if(i>1&&!h(e))return!1;for(let n of t.content??[])if(!m(e,n))return!1;if(i>1&&e.noMultipleIfSlotsFilled?.some(e=>_(r.get(e)))||i>1&&e.keepOnlyFirstWhenOtherSlotFilled?.some(e=>_(r.get(e)))||i>0&&e.clearWhenOtherSlotHasMultipleItems?.some(e=>v(r.get(e))>1))return!1}return!0}function E(e,t,n,r){let i=!1,a=new Set(t.targetSlots.map(e=>e.name)),o=[...e].sort((e,t)=>{let n=+!a.has(e.sourceSlotName),r=+!a.has(t.sourceSlotName);if(n!==r)return n-r;let i=+!e.sourceSlotIsRequired,o=+!t.sourceSlotIsRequired;return i===o?e.sourceOrder-t.sourceOrder:i-o});for(let e of o){if(t.placedIds.has(e.id))continue;let a=n?n(e):p(e,t.hasTargetSecondaryGroupBy),o=f({targetSlots:t.targetSlots,sourceSlotName:e.sourceSlotName,sourceRole:e.sourceRole,preferredRoles:a,isAdditionalCompatible:t=>m(t,e.content)&&(r?r(e,t):!0)});for(let n of o)if(n.content=n.content??[],n.content.length===0||h(n)){n.content.push(e.content),Object.defineProperty(e.content,`_stagedId`,{value:e.id,configurable:!0,enumerable:!1}),i=!0,t.placedIds.add(e.id);break}}i&&(S(t.targetSlots),w({targetSlots:t.targetSlots,placedIds:t.placedIds}))}function D(e){let t=l(e);return t.has(`measure`)?!t.has(`mainGroupBy`)&&!t.has(`secondaryGroupBy`):!1}async function O(e){let t=await g({itemType:e.oldItemType,customItemSlotsConfigs:e.customItemSlotsConfigs}),n=await g({itemType:e.newItemType,customItemSlotsConfigs:e.customItemSlotsConfigs}),r=structuredClone(n??[]);if(!n||n.length===0)return{type:e.oldItemType||`bar-chart`,slots:[...e.slots??[]],options:{...e.options}};if(e.oldItemType===e.newItemType&&e.slots&&T(e.slots,n)){let t=new Map(e.slots.map(e=>[e.name,e])),r=n.map(e=>{let n=t.get(e.name);return{name:e.name,content:n?.content??[]}});return{type:e.newItemType,slots:x({slots:r,slotsConfig:n}),options:{...e.options}}}let i=structuredClone(e.slots??[]);for(let e of i){let n=t?.find(t=>t.name===e.name);n?.type&&(e.type=n.type),n?.isRequired===!0&&(e.isRequired=!0),n?.order!==void 0&&(e.order=n.order)}let a=C(i),o=new Set,s=u(r),c=a.filter(e=>e.sourceRole===`mainGroupBy`),d=a.filter(e=>e.sourceRole===`secondaryGroupBy`),f=a.filter(e=>e.sourceRole===`measure`),m=a.filter(e=>e.sourceRole===`other`),y=!(c.length>0),b=r.some(e=>e.isRequired===!0&&l(e).has(`mainGroupBy`)),w={targetSlots:r,placedIds:o,hasTargetSecondaryGroupBy:s};E(c,w,()=>[`mainGroupBy`]),E(d,w,()=>[`mainGroupBy`],(e,t)=>t.isRequired===!0&&l(t).has(`mainGroupBy`)&&!_(t)),y&&!b&&E(d,w,()=>[`mainGroupBy`],(e,t)=>t.isRequired!==!0&&l(t).has(`mainGroupBy`)&&(v(t)===0||h(t))),E(d,w,e=>p(e,s)),y&&b&&E(d,w,()=>[`mainGroupBy`],(e,t)=>t.isRequired!==!0&&l(t).has(`mainGroupBy`)&&(v(t)===0||h(t))),s&&E(c,w,()=>[`secondaryGroupBy`]);let O=r.some(e=>D(e));return E(f,w,()=>[`measure`],(e,t)=>D(t)),O||E(f,w),E(m,w),S(r),{type:e.newItemType,slots:x({slots:r.map(e=>({name:e.name,content:e.content??[]})),slotsConfig:n}),options:{...e.options}}}Object.defineProperty(exports,`t`,{enumerable:!0,get:function(){return O}});
|
|
@@ -17,7 +17,7 @@
|
|
|
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 "./set-locale-
|
|
20
|
+
import "./set-locale-B8CaHx6q.js";
|
|
21
21
|
import "./load-data-fields-for-datasets-CqgoEsRu.js";
|
|
22
22
|
import { t as e } from "./slots-config-vPaGUfS5.js";
|
|
23
23
|
//#region src/utils/switch-item/slot-role-classification.ts
|
package/components/utils.cjs
CHANGED
|
@@ -17,4 +17,4 @@
|
|
|
17
17
|
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
18
18
|
* SOFTWARE.
|
|
19
19
|
* */
|
|
20
|
-
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require(`./set-locale-
|
|
20
|
+
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require(`./set-locale-CFD7fxS3.cjs`),t=require(`./localize-BKptOXuV.cjs`),n=require(`./formatter-BblIPq_5.cjs`),r=require(`./decompose-numeric-format-DuZkAMnU.cjs`),i=require(`./period-over-period-condition.const-BkZf5SbF.cjs`),a=require(`./convert-datasets-to-data-fields-Cw51cEmZ.cjs`),o=require(`./load-data-fields-for-datasets-Co30ufjO.cjs`),s=require(`./themes-D20ABfIw.cjs`),c=require(`./utils-1SB0pExj.cjs`);exports.PeriodOverPeriodCondition=i.t,exports.convertDatasetsToDataFields=a.t,exports.decomposeNumericFormat=r.t,exports.formatter=n.t,exports.getLocale=e.t,exports.getTheme=s.t,exports.loadDataFieldsForDatasets=o.t,exports.localize=t.t,exports.setLocale=e.n,exports.switchItem=c.t,exports.systemThemeIds=s.n,exports.targetLocales=e.r;
|
package/components/utils.js
CHANGED
|
@@ -17,7 +17,7 @@
|
|
|
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 { n as e, r as t, t as n } from "./set-locale-
|
|
20
|
+
import { n as e, r as t, t as n } from "./set-locale-B8CaHx6q.js";
|
|
21
21
|
import { t as r } from "./localize-BTLmwb_o.js";
|
|
22
22
|
import { t as i } from "./formatter-B-7UHTKd.js";
|
|
23
23
|
import { t as a } from "./decompose-numeric-format-bSRd_jIJ.js";
|
|
@@ -25,5 +25,5 @@ import { t as o } from "./period-over-period-condition.const-BUEH5Yg0.js";
|
|
|
25
25
|
import { t as s } from "./convert-datasets-to-data-fields-y2MdBEer.js";
|
|
26
26
|
import { t as c } from "./load-data-fields-for-datasets-CqgoEsRu.js";
|
|
27
27
|
import { n as l, t as u } from "./themes-CzAQg_23.js";
|
|
28
|
-
import { t as d } from "./utils-
|
|
28
|
+
import { t as d } from "./utils-sAvG9cHu.js";
|
|
29
29
|
export { o as PeriodOverPeriodCondition, s as convertDatasetsToDataFields, a as decomposeNumericFormat, i as formatter, n as getLocale, u as getTheme, c as loadDataFieldsForDatasets, r as localize, e as setLocale, d as switchItem, l as systemThemeIds, t as targetLocales };
|
|
@@ -17,4 +17,4 @@
|
|
|
17
17
|
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
18
18
|
* SOFTWARE.
|
|
19
19
|
* */
|
|
20
|
-
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require(`../viz-item-menu-
|
|
20
|
+
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require(`../viz-item-menu-B4mavjZ5.cjs`);Object.defineProperty(exports,`LuzmoVizItemMenu`,{enumerable:!0,get:function(){return e.t}});
|
|
@@ -24,5 +24,5 @@
|
|
|
24
24
|
e.setAttribute("data-luzmo-vars", ""), e.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-scrollbar-size: 6px;--luzmo-scrollbar-width: thin;--luzmo-scrollbar-track-background: transparent;--luzmo-scrollbar-track-border-radius: var(--luzmo-border-radius-s);--luzmo-scrollbar-thumb-background: rgba(var(--luzmo-border-color-rgb), 0.3);--luzmo-scrollbar-thumb-border-radius: var(--luzmo-border-radius-s);--luzmo-scrollbar-thumb-hover-background: rgba(var(--luzmo-border-color-rgb), 0.4);--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(e);
|
|
25
25
|
}
|
|
26
26
|
})();
|
|
27
|
-
import { t as e } from "../viz-item-menu
|
|
27
|
+
import { t as e } from "../viz-item-menu-CEcwbasZ.js";
|
|
28
28
|
export { e as LuzmoVizItemMenu };
|
|
@@ -17,7 +17,7 @@
|
|
|
17
17
|
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
18
18
|
* SOFTWARE.
|
|
19
19
|
* */
|
|
20
|
-
require(`./chunk-i8uDWG73.cjs`);const e=require(`./decorate-BfLyr4NV.cjs`),t=require(`./localized-mixin-
|
|
20
|
+
require(`./chunk-i8uDWG73.cjs`);const e=require(`./decorate-BfLyr4NV.cjs`),t=require(`./localized-mixin-AEA3w4H0.cjs`);let n=require(`@luzmo/icons`),r=require(`lit`),i=require(`lit/decorators.js`),a=require(`@lit/localize`);require(`@luzmo/lucero/icon`),require(`@luzmo/lucero/tooltip`);var o=`:host{box-sizing:border-box;width:min-content;display:block}:host luzmo-icon{display:flex}:host .viz-item-menu{align-items:center;gap:var(--luzmo-viz-item-menu-gap,var(--viz-item-menu-gap));font-size:var(--luzmo-viz-item-menu-font-size,var(--viz-item-menu-font-size));flex-direction:column;width:min-content;display:flex}:host .viz-item-menu .viz-item-menu-top-section{gap:var(--luzmo-viz-item-menu-button-edit-gap,var(--viz-item-menu-button-edit-gap));flex-direction:column;display:flex}:host .viz-item-menu .viz-item-menu-top-section>.viz-item-menu-button{padding:var(--luzmo-viz-item-menu-button-edit-padding,var(--viz-item-menu-button-edit-padding));background-color:var(--luzmo-viz-item-menu-button-edit-background,var(--viz-item-menu-button-edit-background))}:host .viz-item-menu .viz-item-menu-top-section>.viz-item-menu-button:first-child{border-top-right-radius:var(--luzmo-viz-item-menu-button-edit-border-radius,var(--viz-item-menu-button-edit-border-radius));border-top-left-radius:var(--luzmo-viz-item-menu-button-edit-border-radius,var(--viz-item-menu-button-edit-border-radius))}:host .viz-item-menu .viz-item-menu-top-section>.viz-item-menu-button:last-child{border-bottom-right-radius:var(--luzmo-viz-item-menu-button-edit-border-radius,var(--viz-item-menu-button-edit-border-radius));border-bottom-left-radius:var(--luzmo-viz-item-menu-button-edit-border-radius,var(--viz-item-menu-button-edit-border-radius));box-shadow:var(--luzmo-viz-item-menu-box-shadow,var(--viz-item-menu-box-shadow))}:host .viz-item-menu .viz-item-menu-top-section>.viz-item-menu-button:hover{background-color:var(--luzmo-viz-item-menu-button-edit-background-hover,var(--viz-item-menu-button-edit-background-hover))}:host .viz-item-menu .viz-item-menu-top-section>.viz-item-menu-button:active,:host .viz-item-menu .viz-item-menu-top-section>.viz-item-menu-button[aria-pressed=true]{background-color:var(--luzmo-viz-item-menu-button-edit-background-active,var(--viz-item-menu-button-edit-background-active))}:host .viz-item-menu .viz-item-menu-top-section>.viz-item-menu-button luzmo-icon{color:var(--luzmo-viz-item-menu-button-edit-icon-color,var(--viz-item-menu-button-edit-icon-color))}:host .viz-item-menu .viz-item-menu-button{cursor:pointer;transition:var(--luzmo-viz-item-menu-transition,var(--viz-item-menu-transition));width:1rem;height:1rem;font:inherit;color:inherit;box-sizing:content-box;background:0 0;border:none;justify-content:center;align-items:center;padding:0;display:flex;position:relative}:host .viz-item-menu .viz-item-menu-button-delete{padding:var(--luzmo-viz-item-menu-delete-padding,var(--viz-item-menu-delete-padding));border-radius:var(--luzmo-viz-item-menu-delete-border-radius,var(--viz-item-menu-delete-border-radius));background-color:var(--luzmo-viz-item-menu-delete-background,var(--viz-item-menu-delete-background));box-shadow:var(--luzmo-viz-item-menu-box-shadow,var(--viz-item-menu-box-shadow))}:host .viz-item-menu .viz-item-menu-button-delete:hover{background-color:var(--luzmo-viz-item-menu-delete-background-hover,var(--viz-item-menu-delete-background-hover))}:host .viz-item-menu .viz-item-menu-button-delete:hover luzmo-icon{color:var(--luzmo-viz-item-menu-delete-icon-color-hover,var(--viz-item-menu-delete-icon-color-hover))}:host .viz-item-menu .viz-item-menu-button-delete:active{background-color:var(--luzmo-viz-item-menu-delete-background-active,var(--viz-item-menu-delete-background-active))}:host .viz-item-menu .viz-item-menu-button-delete:active luzmo-icon{color:var(--luzmo-viz-item-menu-delete-icon-color-hover,var(--viz-item-menu-delete-icon-color-hover))}:host .viz-item-menu .viz-item-menu-button-delete luzmo-icon{color:var(--luzmo-viz-item-menu-delete-icon-color,var(--viz-item-menu-delete-icon-color))}:host .viz-item-menu luzmo-tooltip{--tooltip-font-family:var(--luzmo-viz-item-menu-tooltip-font-family,var(--viz-item-menu-tooltip-font-family));font-family:var(--luzmo-viz-item-menu-tooltip-font-family,var(--viz-item-menu-tooltip-font-family))}@media (prefers-reduced-motion:reduce){:host .viz-item-menu .viz-item-menu-button{transition:none}}:host{--viz-item-menu-gap:var(--luzmo-spacing-3,.375rem);--viz-item-menu-button-edit-gap:0;--viz-item-menu-button-edit-padding:var(--luzmo-spacing-3,.125rem);--viz-item-menu-button-edit-border-radius:var(--luzmo-border-radius,.25rem);--viz-item-menu-button-edit-background:var(--luzmo-selected-color-hover,#46454c);--viz-item-menu-button-edit-background-hover:var(--secondary,var(--luzmo-primary));--viz-item-menu-button-edit-background-active:var(--primary,var(--luzmo-primary));--viz-item-menu-button-edit-icon-color:var(--luzmo-primary-inverse-color,white);--viz-item-menu-delete-padding:var(--luzmo-spacing-3,.125rem);--viz-item-menu-delete-border-radius:var(--luzmo-border-radius,.25rem);--viz-item-menu-delete-background:var(--luzmo-selected-color-hover,#46454c);--viz-item-menu-delete-background-hover:var(--luzmo-negative-color,#de3737);--viz-item-menu-delete-background-active:var(--luzmo-negative-color,#de3737);--viz-item-menu-delete-icon-color:var(--luzmo-primary-inverse-color,white);--viz-item-menu-delete-icon-color-hover:var(--luzmo-primary-inverse-color,white);--viz-item-menu-transition:all var(--luzmo-animation-duration,.2s) ease;--viz-item-menu-font-size:var(--luzmo-font-size-m,.875rem);--viz-item-menu-box-shadow:0px 4px 4px 0px var(--Boxshadow,rgba(var(--luzmo-border-color-rgb), .2));--viz-item-menu-tooltip-font-family:var(--luzmo-font-family,"Geist", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell, "Open Sans", "Helvetica Neue", sans-serif)}`,s=class extends t.t(r.LitElement){constructor(...e){super(...e),this.vizItemId=``,this.hiddenButtons=[],this.selectedButton=null,this.menuButtonConfigs={edit:{icon:n.luzmoEdit,label:`Edit`,eventName:`edit`,type:`edit`,cssClass:`viz-item-menu-button viz-item-menu-button-edit`,dataE2e:`viz-item-menu-button-edit`,onHover:()=>this._handleHoverOverEdit()},clone:{icon:n.luzmoClone,label:`Clone`,eventName:`clone`,type:`clone`,cssClass:`viz-item-menu-button viz-item-menu-button-clone`,dataE2e:`viz-item-menu-button-clone`},delete:{icon:n.luzmoTrashOutline,label:`Delete`,eventName:`delete`,type:`delete`,cssClass:`viz-item-menu-button viz-item-menu-button-delete`,dataE2e:`viz-item-menu-button-delete`}}}static{this.styles=(0,r.unsafeCSS)(o)}static{this.tagName=`luzmo-viz-item-menu`}get hasTopSectionButtons(){let e=this._shouldShowButton(`edit`),t=this._shouldShowButton(`clone`);return e||t}_shouldShowButton(e){return!this.hiddenButtons?.includes(e)}_handleSelectedToggle(e){e===`edit`&&(this.selectedButton=this.selectedButton===e?null:e,this._emitSelectedChanged())}_emitSelectedChanged(){this.dispatchEvent(new CustomEvent(`selected-changed`,{bubbles:!0,composed:!0,detail:{selectedButton:this.selectedButton}}))}_handleMenuButtonClick(e){this._handleSelectedToggle(e.type),this.dispatchEvent(new CustomEvent(`button-clicked`,{bubbles:!0,composed:!0,detail:{action:e.eventName,type:e.type,id:this.vizItemId}}))}_createMenuButtonClickHandler(e){return()=>this._handleMenuButtonClick(e)}_handleHoverOverEdit(){this.dispatchEvent(new CustomEvent(`edit-button-hovered`,{bubbles:!0,composed:!0}))}_renderMenuButton(e){let t=this.selectedButton===e.type,n=``;e.type===`edit`?n=(0,a.msg)(`Edit`,{desc:`Edit action label`}):e.type===`clone`?n=(0,a.msg)(`Clone`,{desc:`Grid item action tooltip`}):e.type===`delete`&&(n=(0,a.msg)(`Delete`,{desc:`Delete action label`}));let i=e.type===`edit`;return r.html`
|
|
21
21
|
<button
|
|
22
22
|
class=${e.cssClass}
|
|
23
23
|
data-e2e=${e.dataE2e||``}
|
|
@@ -18,7 +18,7 @@
|
|
|
18
18
|
* SOFTWARE.
|
|
19
19
|
* */
|
|
20
20
|
import { t as e } from "./decorate-DKLaHs_w.js";
|
|
21
|
-
import { t } from "./localized-mixin-
|
|
21
|
+
import { t } from "./localized-mixin-XqTi4F7d.js";
|
|
22
22
|
import { luzmoClone as n, luzmoEdit as r, luzmoTrashOutline as i } from "@luzmo/icons";
|
|
23
23
|
import { LitElement as a, html as o, nothing as s, unsafeCSS as c } from "lit";
|
|
24
24
|
import { property as l } from "lit/decorators.js";
|
package/custom-elements.json
CHANGED
|
@@ -663,6 +663,35 @@
|
|
|
663
663
|
"description": "When set, auto-submits via the session without adding a duplicate user message\n(assumes the prompt is already in the transcript).",
|
|
664
664
|
"attribute": "initial-prompt"
|
|
665
665
|
},
|
|
666
|
+
{
|
|
667
|
+
"kind": "field",
|
|
668
|
+
"name": "emptyStateTitle",
|
|
669
|
+
"type": {
|
|
670
|
+
"text": "string"
|
|
671
|
+
},
|
|
672
|
+
"default": "''",
|
|
673
|
+
"description": "Title for the empty state when there are no messages.",
|
|
674
|
+
"attribute": "empty-state-title"
|
|
675
|
+
},
|
|
676
|
+
{
|
|
677
|
+
"kind": "field",
|
|
678
|
+
"name": "emptyStateSubtitle",
|
|
679
|
+
"type": {
|
|
680
|
+
"text": "string"
|
|
681
|
+
},
|
|
682
|
+
"default": "''",
|
|
683
|
+
"description": "Optional label above empty-state suggestion chips. Only shown when `emptyStateSuggestions` is non-empty.",
|
|
684
|
+
"attribute": "empty-state-subtitle"
|
|
685
|
+
},
|
|
686
|
+
{
|
|
687
|
+
"kind": "field",
|
|
688
|
+
"name": "emptyStateSuggestions",
|
|
689
|
+
"type": {
|
|
690
|
+
"text": "AiChatEmptyStateSuggestion[]"
|
|
691
|
+
},
|
|
692
|
+
"default": "[]",
|
|
693
|
+
"description": "Optional suggestion chips for the empty state. When empty, only the title is shown.\nEach entry may include `selectedDatasets` to pre-select datasets when the chip is activated."
|
|
694
|
+
},
|
|
666
695
|
{
|
|
667
696
|
"kind": "field",
|
|
668
697
|
"name": "session",
|
|
@@ -1175,6 +1204,24 @@
|
|
|
1175
1204
|
"default": "null",
|
|
1176
1205
|
"description": "When set, auto-submits via the session without adding a duplicate user message\n(assumes the prompt is already in the transcript).",
|
|
1177
1206
|
"fieldName": "initialPrompt"
|
|
1207
|
+
},
|
|
1208
|
+
{
|
|
1209
|
+
"name": "empty-state-title",
|
|
1210
|
+
"type": {
|
|
1211
|
+
"text": "string"
|
|
1212
|
+
},
|
|
1213
|
+
"default": "''",
|
|
1214
|
+
"description": "Title for the empty state when there are no messages.",
|
|
1215
|
+
"fieldName": "emptyStateTitle"
|
|
1216
|
+
},
|
|
1217
|
+
{
|
|
1218
|
+
"name": "empty-state-subtitle",
|
|
1219
|
+
"type": {
|
|
1220
|
+
"text": "string"
|
|
1221
|
+
},
|
|
1222
|
+
"default": "''",
|
|
1223
|
+
"description": "Optional label above empty-state suggestion chips. Only shown when `emptyStateSuggestions` is non-empty.",
|
|
1224
|
+
"fieldName": "emptyStateSubtitle"
|
|
1178
1225
|
}
|
|
1179
1226
|
],
|
|
1180
1227
|
"superclass": {
|
|
@@ -1203,6 +1250,243 @@
|
|
|
1203
1250
|
"declarations": [],
|
|
1204
1251
|
"exports": []
|
|
1205
1252
|
},
|
|
1253
|
+
{
|
|
1254
|
+
"kind": "javascript-module",
|
|
1255
|
+
"path": "src/components/ai-chat/empty-state/ai-chat-empty-state.ts",
|
|
1256
|
+
"declarations": [
|
|
1257
|
+
{
|
|
1258
|
+
"kind": "class",
|
|
1259
|
+
"description": "",
|
|
1260
|
+
"name": "LuzmoAiChatEmptyState",
|
|
1261
|
+
"members": [
|
|
1262
|
+
{
|
|
1263
|
+
"kind": "field",
|
|
1264
|
+
"name": "tagName",
|
|
1265
|
+
"type": {
|
|
1266
|
+
"text": "string"
|
|
1267
|
+
},
|
|
1268
|
+
"static": true,
|
|
1269
|
+
"default": "'luzmo-ai-chat-empty-state'"
|
|
1270
|
+
},
|
|
1271
|
+
{
|
|
1272
|
+
"kind": "field",
|
|
1273
|
+
"name": "title",
|
|
1274
|
+
"description": "Heading shown above the suggestions.",
|
|
1275
|
+
"attribute": "title"
|
|
1276
|
+
},
|
|
1277
|
+
{
|
|
1278
|
+
"kind": "field",
|
|
1279
|
+
"name": "subtitle",
|
|
1280
|
+
"type": {
|
|
1281
|
+
"text": "string"
|
|
1282
|
+
},
|
|
1283
|
+
"default": "''",
|
|
1284
|
+
"description": "Supporting text shown above suggestion chips when `suggestions` is non-empty.",
|
|
1285
|
+
"attribute": "subtitle"
|
|
1286
|
+
},
|
|
1287
|
+
{
|
|
1288
|
+
"kind": "field",
|
|
1289
|
+
"name": "suggestions",
|
|
1290
|
+
"type": {
|
|
1291
|
+
"text": "AiChatEmptyStateSuggestion[]"
|
|
1292
|
+
},
|
|
1293
|
+
"default": "[]",
|
|
1294
|
+
"description": "Suggestion chips rendered with https://lucero.luzmo.com/ | Lucero `luzmo-suggestion` (`variant=\"prompt\"`).",
|
|
1295
|
+
"attribute": "suggestions"
|
|
1296
|
+
},
|
|
1297
|
+
{
|
|
1298
|
+
"kind": "field",
|
|
1299
|
+
"name": "disabled",
|
|
1300
|
+
"type": {
|
|
1301
|
+
"text": "boolean"
|
|
1302
|
+
},
|
|
1303
|
+
"default": "false",
|
|
1304
|
+
"description": "When true, suggestion chips cannot be activated.",
|
|
1305
|
+
"attribute": "disabled",
|
|
1306
|
+
"reflects": true
|
|
1307
|
+
},
|
|
1308
|
+
{
|
|
1309
|
+
"type": {
|
|
1310
|
+
"text": "string"
|
|
1311
|
+
},
|
|
1312
|
+
"description": "Gap between the title and the actions block",
|
|
1313
|
+
"name": "--luzmo-ai-chat-empty-state-header-actions-gap",
|
|
1314
|
+
"kind": "field"
|
|
1315
|
+
},
|
|
1316
|
+
{
|
|
1317
|
+
"type": {
|
|
1318
|
+
"text": "string"
|
|
1319
|
+
},
|
|
1320
|
+
"description": "Gap between the actions label and suggestion chips",
|
|
1321
|
+
"name": "--luzmo-ai-chat-empty-state-actions-gap",
|
|
1322
|
+
"kind": "field"
|
|
1323
|
+
},
|
|
1324
|
+
{
|
|
1325
|
+
"type": {
|
|
1326
|
+
"text": "string"
|
|
1327
|
+
},
|
|
1328
|
+
"description": "Gap between suggestion chips",
|
|
1329
|
+
"name": "--luzmo-ai-chat-empty-state-suggestions-gap",
|
|
1330
|
+
"kind": "field"
|
|
1331
|
+
},
|
|
1332
|
+
{
|
|
1333
|
+
"type": {
|
|
1334
|
+
"text": "string"
|
|
1335
|
+
},
|
|
1336
|
+
"description": "Maximum content width",
|
|
1337
|
+
"name": "--luzmo-ai-chat-empty-state-max-width",
|
|
1338
|
+
"kind": "field"
|
|
1339
|
+
},
|
|
1340
|
+
{
|
|
1341
|
+
"type": {
|
|
1342
|
+
"text": "string"
|
|
1343
|
+
},
|
|
1344
|
+
"description": "Vertical padding",
|
|
1345
|
+
"name": "--luzmo-ai-chat-empty-state-padding-block",
|
|
1346
|
+
"kind": "field"
|
|
1347
|
+
},
|
|
1348
|
+
{
|
|
1349
|
+
"type": {
|
|
1350
|
+
"text": "string"
|
|
1351
|
+
},
|
|
1352
|
+
"description": "Horizontal padding",
|
|
1353
|
+
"name": "--luzmo-ai-chat-empty-state-padding-inline",
|
|
1354
|
+
"kind": "field"
|
|
1355
|
+
},
|
|
1356
|
+
{
|
|
1357
|
+
"type": {
|
|
1358
|
+
"text": "string"
|
|
1359
|
+
},
|
|
1360
|
+
"description": "Title font size",
|
|
1361
|
+
"name": "--luzmo-ai-chat-empty-state-title-font-size",
|
|
1362
|
+
"kind": "field"
|
|
1363
|
+
},
|
|
1364
|
+
{
|
|
1365
|
+
"type": {
|
|
1366
|
+
"text": "string"
|
|
1367
|
+
},
|
|
1368
|
+
"description": "Title font weight",
|
|
1369
|
+
"name": "--luzmo-ai-chat-empty-state-title-font-weight",
|
|
1370
|
+
"kind": "field"
|
|
1371
|
+
},
|
|
1372
|
+
{
|
|
1373
|
+
"type": {
|
|
1374
|
+
"text": "string"
|
|
1375
|
+
},
|
|
1376
|
+
"description": "Title line height",
|
|
1377
|
+
"name": "--luzmo-ai-chat-empty-state-title-line-height",
|
|
1378
|
+
"kind": "field"
|
|
1379
|
+
},
|
|
1380
|
+
{
|
|
1381
|
+
"type": {
|
|
1382
|
+
"text": "string"
|
|
1383
|
+
},
|
|
1384
|
+
"description": "Title text color",
|
|
1385
|
+
"name": "--luzmo-ai-chat-empty-state-title-color",
|
|
1386
|
+
"kind": "field"
|
|
1387
|
+
},
|
|
1388
|
+
{
|
|
1389
|
+
"type": {
|
|
1390
|
+
"text": "string"
|
|
1391
|
+
},
|
|
1392
|
+
"description": "Subtitle font size",
|
|
1393
|
+
"name": "--luzmo-ai-chat-empty-state-subtitle-font-size",
|
|
1394
|
+
"kind": "field"
|
|
1395
|
+
},
|
|
1396
|
+
{
|
|
1397
|
+
"type": {
|
|
1398
|
+
"text": "string"
|
|
1399
|
+
},
|
|
1400
|
+
"description": "Subtitle font weight",
|
|
1401
|
+
"name": "--luzmo-ai-chat-empty-state-subtitle-font-weight",
|
|
1402
|
+
"kind": "field"
|
|
1403
|
+
},
|
|
1404
|
+
{
|
|
1405
|
+
"type": {
|
|
1406
|
+
"text": "string"
|
|
1407
|
+
},
|
|
1408
|
+
"description": "Subtitle line height",
|
|
1409
|
+
"name": "--luzmo-ai-chat-empty-state-subtitle-line-height",
|
|
1410
|
+
"kind": "field"
|
|
1411
|
+
},
|
|
1412
|
+
{
|
|
1413
|
+
"type": {
|
|
1414
|
+
"text": "string"
|
|
1415
|
+
},
|
|
1416
|
+
"description": "Subtitle text color (`--luzmo-font-color-dimmed`)",
|
|
1417
|
+
"name": "--luzmo-ai-chat-empty-state-subtitle-color",
|
|
1418
|
+
"kind": "field"
|
|
1419
|
+
}
|
|
1420
|
+
],
|
|
1421
|
+
"events": [
|
|
1422
|
+
{
|
|
1423
|
+
"name": "luzmo-suggestion-selected",
|
|
1424
|
+
"type": {
|
|
1425
|
+
"text": "CustomEvent"
|
|
1426
|
+
},
|
|
1427
|
+
"description": "Fired when the user selects a suggestion chip. `event.detail`: `{ label, prompt, selectedDatasets? }`."
|
|
1428
|
+
}
|
|
1429
|
+
],
|
|
1430
|
+
"attributes": [
|
|
1431
|
+
{
|
|
1432
|
+
"name": "title",
|
|
1433
|
+
"description": "Heading shown above the suggestions.",
|
|
1434
|
+
"fieldName": "title"
|
|
1435
|
+
},
|
|
1436
|
+
{
|
|
1437
|
+
"name": "subtitle",
|
|
1438
|
+
"type": {
|
|
1439
|
+
"text": "string"
|
|
1440
|
+
},
|
|
1441
|
+
"default": "''",
|
|
1442
|
+
"description": "Supporting text shown above suggestion chips when `suggestions` is non-empty.",
|
|
1443
|
+
"fieldName": "subtitle"
|
|
1444
|
+
},
|
|
1445
|
+
{
|
|
1446
|
+
"name": "suggestions",
|
|
1447
|
+
"type": {
|
|
1448
|
+
"text": "AiChatEmptyStateSuggestion[]"
|
|
1449
|
+
},
|
|
1450
|
+
"default": "[]",
|
|
1451
|
+
"description": "Suggestion chips rendered with https://lucero.luzmo.com/ | Lucero `luzmo-suggestion` (`variant=\"prompt\"`).",
|
|
1452
|
+
"fieldName": "suggestions"
|
|
1453
|
+
},
|
|
1454
|
+
{
|
|
1455
|
+
"name": "disabled",
|
|
1456
|
+
"type": {
|
|
1457
|
+
"text": "boolean"
|
|
1458
|
+
},
|
|
1459
|
+
"default": "false",
|
|
1460
|
+
"description": "When true, suggestion chips cannot be activated.",
|
|
1461
|
+
"fieldName": "disabled"
|
|
1462
|
+
}
|
|
1463
|
+
],
|
|
1464
|
+
"superclass": {
|
|
1465
|
+
"name": "LuzmoElement",
|
|
1466
|
+
"package": "@utils/base"
|
|
1467
|
+
},
|
|
1468
|
+
"tagName": "luzmo-ai-chat-empty-state",
|
|
1469
|
+
"customElement": true,
|
|
1470
|
+
"summary": "Empty state for AI chat with title, subtitle, and prompt suggestions."
|
|
1471
|
+
}
|
|
1472
|
+
],
|
|
1473
|
+
"exports": [
|
|
1474
|
+
{
|
|
1475
|
+
"kind": "js",
|
|
1476
|
+
"name": "LuzmoAiChatEmptyState",
|
|
1477
|
+
"declaration": {
|
|
1478
|
+
"name": "LuzmoAiChatEmptyState",
|
|
1479
|
+
"module": "src/components/ai-chat/empty-state/ai-chat-empty-state.ts"
|
|
1480
|
+
}
|
|
1481
|
+
}
|
|
1482
|
+
]
|
|
1483
|
+
},
|
|
1484
|
+
{
|
|
1485
|
+
"kind": "javascript-module",
|
|
1486
|
+
"path": "src/components/ai-chat/empty-state/types.ts",
|
|
1487
|
+
"declarations": [],
|
|
1488
|
+
"exports": []
|
|
1489
|
+
},
|
|
1206
1490
|
{
|
|
1207
1491
|
"kind": "javascript-module",
|
|
1208
1492
|
"path": "src/components/ai-chat/session/ai-chat-session-controller.ts",
|
package/package.json
CHANGED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './types';
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import type { Dataset } from '../../../types';
|
|
2
|
+
|
|
3
|
+
export type AiChatEmptyStateSuggestion = {
|
|
4
|
+
/** Visible label on the suggestion chip. */
|
|
5
|
+
label: string;
|
|
6
|
+
/** Prompt text inserted or submitted when selected; defaults to `label`. */
|
|
7
|
+
prompt?: string;
|
|
8
|
+
/** Datasets applied to the chat input when this suggestion is selected. */
|
|
9
|
+
selectedDatasets?: Dataset[];
|
|
10
|
+
};
|
|
11
|
+
|
|
12
|
+
export type AiChatEmptyStateSuggestionSelectedDetail = {
|
|
13
|
+
label: string;
|
|
14
|
+
prompt: string;
|
|
15
|
+
selectedDatasets?: Dataset[];
|
|
16
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './types';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './types';
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import type { Dataset } from '../../../types';
|
|
2
|
+
export type AiChatEmptyStateSuggestion = {
|
|
3
|
+
/** Visible label on the suggestion chip. */
|
|
4
|
+
label: string;
|
|
5
|
+
/** Prompt text inserted or submitted when selected; defaults to `label`. */
|
|
6
|
+
prompt?: string;
|
|
7
|
+
/** Datasets applied to the chat input when this suggestion is selected. */
|
|
8
|
+
selectedDatasets?: Dataset[];
|
|
9
|
+
};
|
|
10
|
+
export type AiChatEmptyStateSuggestionSelectedDetail = {
|
|
11
|
+
label: string;
|
|
12
|
+
prompt: string;
|
|
13
|
+
selectedDatasets?: Dataset[];
|
|
14
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|