@luzmo/analytics-components-kit 1.0.8-beta.5 → 1.0.8-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-events.d.ts +19 -3
- package/components/ai-chat/ai-chat-request.d.ts +5 -0
- package/components/ai-chat/ai-chat.d.ts +24 -5
- package/components/ai-chat/ai-prompt-types.d.ts +17 -2
- package/components/ai-chat/helpers/agent-config.d.ts +12 -0
- package/components/ai-chat/helpers/elicitation-template.d.ts +18 -0
- package/components/ai-chat/index.cjs +1 -1
- package/components/ai-chat/index.d.ts +2 -1
- package/components/ai-chat/index.js +3 -3
- package/components/ai-chat/session/ai-chat-session-controller.d.ts +3 -0
- package/components/ai-chat/session/ai-chat-session-types.d.ts +19 -3
- package/components/ai-chat/session/ai-chat-session.d.ts +17 -1
- package/components/ai-chat/stream/chunk-extractors.d.ts +3 -1
- package/components/ai-chat/stream/index.d.ts +1 -0
- package/components/ai-chat/stream/types.d.ts +5 -1
- package/components/ai-chat/types.d.ts +24 -0
- package/components/ai-chat-CG-eIiBr.cjs +337 -0
- package/components/{ai-chat-CI9l8ZOE.js → ai-chat-CMc_9Oo2.js} +917 -694
- package/components/ai-interaction-textarea/index.cjs +1 -1
- package/components/ai-interaction-textarea/index.js +1 -1
- package/components/{ai-interaction-textarea-Crcz4rCV.cjs → ai-interaction-textarea-B6tZgh5k.cjs} +1 -1
- package/components/{ai-interaction-textarea-BbVH-aF4.js → ai-interaction-textarea-D9g9G0T1.js} +3 -3
- package/components/{area-chart-positioning.config-DT7OiLe4.js → area-chart-positioning.config-BEwDQj3T.js} +1 -1
- package/components/{area-chart-positioning.config-D8_KYS-h.cjs → area-chart-positioning.config-CS-5H8-C.cjs} +1 -1
- package/components/{bar-chart-positioning.config-FEwWvMF6.js → bar-chart-positioning.config-CBbTYesB.js} +1 -1
- package/components/{bar-chart-positioning.config-CnMHGk5K.cjs → bar-chart-positioning.config-DkIvwJI5.cjs} +1 -1
- package/components/{base-XtzYH7G4.cjs → base-D6QPZnpu.cjs} +1 -1
- package/components/{base-BkD2CWTy.js → base-DSeXdW9S.js} +1 -1
- package/components/{box-plot-positioning.config-DxRLb2qS.js → box-plot-positioning.config-CNC-RTwl.js} +1 -1
- package/components/{box-plot-positioning.config-Cij5pfeH.cjs → box-plot-positioning.config-o5D-mRFr.cjs} +1 -1
- package/components/{bubble-chart-positioning.config-CVnk6LlN.js → bubble-chart-positioning.config-3ilPXLpZ.js} +1 -1
- package/components/{bubble-chart-positioning.config-BmNR5EQH.cjs → bubble-chart-positioning.config-CtreNdST.cjs} +1 -1
- package/components/{bullet-chart-positioning.config-7sPWksMT.js → bullet-chart-positioning.config-CkFhShBk.js} +1 -1
- package/components/{bullet-chart-positioning.config-CNkU3bzI.cjs → bullet-chart-positioning.config-dHj3YrT_.cjs} +1 -1
- package/components/{choropleth-map-positioning.config-CljoQanM.cjs → choropleth-map-positioning.config-BSs-bRGv.cjs} +1 -1
- package/components/{choropleth-map-positioning.config-CuaL7fSP.js → choropleth-map-positioning.config-DOt86t59.js} +1 -1
- package/components/{circle-pack-chart-positioning.config-maqHu5T2.js → circle-pack-chart-positioning.config-BkFATJjC.js} +1 -1
- package/components/{circle-pack-chart-positioning.config-CiF6h2TX.cjs → circle-pack-chart-positioning.config-CVNdIYau.cjs} +1 -1
- package/components/{circular-gauge-positioning.config-e9_VgpRY.js → circular-gauge-positioning.config-BV2xb5TF.js} +1 -1
- package/components/{circular-gauge-positioning.config-BK2YSDr1.cjs → circular-gauge-positioning.config-SrbCaaOr.cjs} +1 -1
- package/components/{column-chart-positioning.config-DdiwInY-.cjs → column-chart-positioning.config-DTQe3h_H.cjs} +1 -1
- package/components/{column-chart-positioning.config-DpPXllzx.js → column-chart-positioning.config-T7juV3XT.js} +1 -1
- package/components/{combination-chart-positioning.config-D7c6z5j6.js → combination-chart-positioning.config-78C7wKnS.js} +1 -1
- package/components/{combination-chart-positioning.config-5Qnm4ZYG.cjs → combination-chart-positioning.config-BrSmdan-.cjs} +1 -1
- package/components/{conditional-number-positioning.config-Bmc5b4Hr.cjs → conditional-number-positioning.config-_9ySKU1z.cjs} +1 -1
- package/components/{conditional-number-positioning.config-BnMcO9mu.js → conditional-number-positioning.config-z_eEfpud.js} +1 -1
- package/components/data-field/index.cjs +1 -1
- package/components/data-field/index.js +1 -1
- package/components/{data-field-BmpgtPX8.cjs → data-field-9ZZFw68C.cjs} +1 -1
- package/components/{data-field-DTQxvpeM.js → data-field-D1WW_V0N.js} +3 -3
- package/components/data-field-level/index.cjs +1 -1
- package/components/data-field-level/index.js +1 -1
- package/components/{data-field-level-EOj5KvoG.js → data-field-level-DR_dXjnL.js} +1 -1
- package/components/{data-field-level-D0RZHwqF.cjs → data-field-level-Dc-EMhC3.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-Bc_4pQwc.cjs → data-field-panel-DFA97_8o.cjs} +1 -1
- package/components/{data-field-panel-Dya_9wHn.js → data-field-panel-U-5Q-TRp.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-2Da7XC6m.js → data-fields-select-BYhAzdA6.js} +1 -1
- package/components/{data-fields-select-D4Sxxb_Z.cjs → data-fields-select-BtXNFZy9.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-m1XmVt8T.cjs → dataset-selector-list-BXg6DIKI.cjs} +1 -1
- package/components/{dataset-selector-list-CK9KzC1a.js → dataset-selector-list-q6qWA7B-.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-gBQl1Bza.js → dataset-selector-row-ZKET7lVc.js} +2 -2
- package/components/{dataset-selector-row-B78ZLWQS.cjs → dataset-selector-row-bqwY3zaf.cjs} +1 -1
- package/components/{de-_-1hLVI0.js → de-C5CMIy08.js} +3 -0
- package/components/de-CdZnQbKI.cjs +20 -0
- package/components/display-settings/index.cjs +1 -1
- package/components/display-settings/index.js +1 -1
- package/components/{display-settings-DLWnhQe0.cjs → display-settings-BlMhlvVS.cjs} +1 -1
- package/components/{display-settings-DgOPeUie.js → display-settings-D_wBgzm1.js} +2 -2
- package/components/display-settings-binning/index.cjs +1 -1
- package/components/display-settings-binning/index.js +1 -1
- package/components/{display-settings-binning-CE4hmdtx.js → display-settings-binning-GIE6ww1Q.js} +2 -2
- package/components/{display-settings-binning-CYM7FpXw.cjs → display-settings-binning-HrXOdGwO.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-h8CvoTZ8.cjs → display-settings-datetime-DNeLEl3L.cjs} +1 -1
- package/components/{display-settings-datetime-D4f_o6NK.js → display-settings-datetime-YS7_TUet.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-CnP8P-cu.js → display-settings-grand-totals-Bt_ju8jp.js} +2 -2
- package/components/{display-settings-grand-totals-D0YsVbSs.cjs → display-settings-grand-totals-C-7s1Tyo.cjs} +1 -1
- package/components/display-settings-numeric/index.cjs +1 -1
- package/components/display-settings-numeric/index.js +1 -1
- package/components/{display-settings-numeric-DF4zjmZj.cjs → display-settings-numeric--uwJWzC1.cjs} +1 -1
- package/components/{display-settings-numeric-DyAFuYTz.js → display-settings-numeric-OHmktQsz.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-B634a88N.js → display-settings-period-over-period-B1_IJjWK.js} +2 -2
- package/components/{display-settings-period-over-period-DXuRHg-1.cjs → display-settings-period-over-period-C4X8c-_R.cjs} +1 -1
- package/components/{donut-chart-positioning.config-BhIwOPI0.cjs → donut-chart-positioning.config-BY2TIeeY.cjs} +1 -1
- package/components/{donut-chart-positioning.config-Peq3v9qK.js → donut-chart-positioning.config-D34HegyZ.js} +1 -1
- package/components/es-7RD7O4q3.cjs +20 -0
- package/components/{es-Cdl4GvQt.js → es-BCur0-77.js} +3 -0
- package/components/{evolution-number-positioning.config-ClGlayIt.cjs → evolution-number-positioning.config-BBvULr59.cjs} +1 -1
- package/components/{evolution-number-positioning.config-e90XUBQG.js → evolution-number-positioning.config-CKzCTjdO.js} +1 -1
- package/components/filter-expression-picker/index.cjs +1 -1
- package/components/filter-expression-picker/index.js +1 -1
- package/components/{filter-expression-picker-COCoT5LG.cjs → filter-expression-picker-BOLyxG2r.cjs} +1 -1
- package/components/{filter-expression-picker-BPAwOijt.js → filter-expression-picker-DurfSgRY.js} +1 -1
- package/components/filter-item/index.cjs +1 -1
- package/components/filter-item/index.js +1 -1
- package/components/{filter-item-CbDbNmni.js → filter-item-C58zIpPh.js} +5 -5
- package/components/{filter-item-cyApfc9M.cjs → filter-item-obyHcs9f.cjs} +1 -1
- package/components/filter-parameter-picker/index.cjs +1 -1
- package/components/filter-parameter-picker/index.js +1 -1
- package/components/{filter-parameter-picker-CCd77cYS.js → filter-parameter-picker-BWNBc8BI.js} +1 -1
- package/components/{filter-parameter-picker-F68BatwD.cjs → filter-parameter-picker-DSYaE9Sv.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-DADia7jo.cjs → filter-value-picker-DYl_1pis.cjs} +1 -1
- 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-CuMmWJFV.cjs → filter-value-picker-datetime-BFbmCKs3.cjs} +1 -1
- package/components/{filter-value-picker-datetime-DM2K7Nrv.js → filter-value-picker-datetime-CP5__ua6.js} +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-BQTrc0ZU.cjs → filter-value-picker-hierarchy-BTf992WX.cjs} +1 -1
- package/components/{filter-value-picker-hierarchy-W-a9ycWV.js → filter-value-picker-hierarchy-j0LRYW1c.js} +2 -2
- package/components/{filter-value-picker-CLUUhn1d.js → filter-value-picker-kzIrnmdp.js} +4 -4
- 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-DL5cqR8I.js → filter-value-picker-numeric-BmKmeOol.js} +1 -1
- package/components/{filter-value-picker-numeric-CXfgDZ4W.cjs → filter-value-picker-numeric-DJi0Utk_.cjs} +1 -1
- package/components/filters/index.cjs +1 -1
- package/components/filters/index.js +1 -1
- package/components/{filters-bruSosZt.js → filters-BddhKRZC.js} +2 -2
- package/components/{filters-Dj4mQklp.cjs → filters-Dx6g0xl9.cjs} +1 -1
- package/components/formula/index.cjs +1 -1
- package/components/formula/index.js +1 -1
- package/components/{formula-CbApVbw7.js → formula-BYx4gH6i.js} +2 -2
- package/components/{formula-DkANj6Hi.cjs → formula-cc2AaiLt.cjs} +1 -1
- package/components/{formula-codemirror-C_wCMc2M.js → formula-codemirror-CVzyYNLO.js} +4 -4
- package/components/{formula-codemirror-DGxXJYCi.cjs → formula-codemirror-EMK3MCNZ.cjs} +1 -1
- package/components/{formula-display-store-SkrNDfyG.js → formula-display-store-BPn9m5TL.js} +3 -3
- package/components/{formula-display-store-B2DUrVwh.cjs → formula-display-store-DER7C0GG.cjs} +1 -1
- package/components/formula-editor/index.cjs +1 -1
- package/components/formula-editor/index.js +3 -3
- package/components/{formula-editor-DX5FRb2v.js → formula-editor-BxoIkARr.js} +5 -5
- package/components/{formula-editor-Dv4UIAe_.cjs → formula-editor-CWKXcUTF.cjs} +1 -1
- package/components/formula-field/index.cjs +1 -1
- package/components/formula-field/index.js +1 -1
- package/components/{formula-field-CwnAHHpw.js → formula-field-BtvaOWki.js} +1 -1
- package/components/{formula-field-tJsQsXic.cjs → formula-field-CzS2pKJI.cjs} +1 -1
- package/components/{formula-input-base-6iVykYb0.cjs → formula-input-base-CvD0b2cO.cjs} +1 -1
- package/components/{formula-input-base-mKhAiYM0.js → formula-input-base-DVtGLoyA.js} +1 -1
- package/components/{fr-qv7EjBRo.js → fr-BnECl1nx.js} +3 -0
- package/components/fr-CGw2IwXh.cjs +20 -0
- package/components/{funnel-chart-positioning.config-PrEIQPXg.cjs → funnel-chart-positioning.config-BPSmV76y.cjs} +1 -1
- package/components/{funnel-chart-positioning.config-Havc4gNs.js → funnel-chart-positioning.config-CvhpE7rN.js} +1 -1
- package/components/{get-dataset-name-CIf7x0nh.js → get-dataset-name-D53TN7N9.js} +1 -1
- package/components/{get-dataset-name-BR_H1MNL.cjs → get-dataset-name-DYLdbEs-.cjs} +1 -1
- package/components/{groupings-BKSBZ34s.cjs → groupings-Bn9384Zw.cjs} +1 -1
- package/components/{groupings-CIVQITJp.js → groupings-BtmmUlPK.js} +1 -1
- package/components/{heat-map-positioning.config-CF6XNksR.js → heat-map-positioning.config-AOHTEJf7.js} +1 -1
- package/components/{heat-map-positioning.config-L91C9c0t.cjs → heat-map-positioning.config-CHDHFIo2.cjs} +1 -1
- package/components/{heat-table-positioning.config-BuH8txu-.cjs → heat-table-positioning.config-DCLE9cy4.cjs} +1 -1
- package/components/{heat-table-positioning.config-0YNV-Whw.js → heat-table-positioning.config-DprOfmlW.js} +1 -1
- package/components/{hexbin-map-positioning.config-wKi8qbMF.js → hexbin-map-positioning.config-BjxkoqGh.js} +1 -1
- package/components/{hexbin-map-positioning.config-Dx42tGRj.cjs → hexbin-map-positioning.config-BmLljWez.cjs} +1 -1
- package/components/index.cjs +1 -1
- package/components/index.js +67 -67
- package/components/interactive-viz-item/index.cjs +1 -1
- package/components/interactive-viz-item/index.js +1 -1
- package/components/{interactive-viz-item-DMOsdrLN.js → interactive-viz-item-DL5aqkvx.js} +5 -5
- package/components/{interactive-viz-item-YwkjBGtN.cjs → interactive-viz-item-DTr14-9-.cjs} +1 -1
- package/components/item-grid/index.cjs +1 -1
- package/components/item-grid/index.js +1 -1
- package/components/{item-grid-iYxxuvvA.js → item-grid-C_OTtv4T.js} +6 -6
- package/components/{item-grid-B1ColM8x.cjs → item-grid-CcwnD_u5.cjs} +4 -4
- package/components/item-option/index.cjs +1 -1
- package/components/item-option/index.js +1 -1
- package/components/{item-option-BIWC5VRT.js → item-option-DRWLN89_.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-TPUU3sts.js → item-option-action-button-group-B9ghoHeh.js} +1 -1
- package/components/{item-option-action-button-group-Dq6xKpHi.cjs → item-option-action-button-group-Byg9h7uo.cjs} +1 -1
- package/components/{item-option-base-BKo7DBxK.cjs → item-option-base-Dwf3dByS.cjs} +1 -1
- package/components/{item-option-base-DcZILy3S.js → item-option-base-pYrkqt6q.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-i6Tnv4qN.js → item-option-color-palette-picker-DnVqGnm4.js} +1 -1
- package/components/{item-option-color-palette-picker-C_Jx5Prb.cjs → item-option-color-palette-picker-v6TBE-I0.cjs} +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-Co3iTjwo.cjs → item-option-color-picker-CNkNZ1p-.cjs} +1 -1
- package/components/{item-option-color-picker-BSXsKzZ-.js → item-option-color-picker-CO-OAFOs.js} +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-CUYGCwQG.cjs → item-option-color-range-BveD6fsp.cjs} +1 -1
- package/components/{item-option-color-range-DE8-UNxr.js → item-option-color-range-bdYUxgQ9.js} +1 -1
- package/components/item-option-guidelines/index.cjs +1 -1
- package/components/item-option-guidelines/index.js +1 -1
- package/components/{item-option-guidelines-DWdPS45K.js → item-option-guidelines-Ce88dTV-.js} +3 -3
- package/components/{item-option-guidelines-DUjfN-eB.cjs → item-option-guidelines-D8UjylMx.cjs} +1 -1
- package/components/{item-option-Cz10G9yw.cjs → item-option-h8URFjZ2.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-D5e36e1G.js → item-option-multi-language-field-0qfdBanp.js} +1 -1
- package/components/{item-option-multi-language-field-CWE9WrxP.cjs → item-option-multi-language-field-D0jRPAjY.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-BElZmdUU.js → item-option-number-field-CcEav5C3.js} +1 -1
- package/components/{item-option-number-field-RJ88VAyR.cjs → item-option-number-field-DYJ0eIf7.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-BmaT4y_2.cjs → item-option-panel-6Voh87nt.cjs} +1 -1
- package/components/{item-option-panel-D7klHx03.js → item-option-panel-DrI7HYrY.js} +2 -2
- package/components/item-option-picker/index.cjs +1 -1
- package/components/item-option-picker/index.js +1 -1
- package/components/{item-option-picker-DnWKHPYS.js → item-option-picker-Bv4aGaCO.js} +1 -1
- package/components/{item-option-picker-C3M-7kWF.cjs → item-option-picker-DkEgfEE7.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-CUTrYLPj.js → item-option-position-picker-1d7qZmDv.js} +1 -1
- package/components/{item-option-position-picker-B2qUrVJd.cjs → item-option-position-picker-CKgaqFJR.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-EXPp_Vr4.cjs → item-option-positions-number-field-BJXer0y5.cjs} +1 -1
- package/components/{item-option-positions-number-field-B4zcS62B.js → item-option-positions-number-field-DUlBsbUL.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-D8GbkHVX.cjs → item-option-radio-button-group-ChtTIO3B.cjs} +1 -1
- package/components/{item-option-radio-button-group-Cs1sSCVM.js → item-option-radio-button-group-DuMcIZvr.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-Bo1ALP8q.cjs → item-option-slider-CBSnkHVq.cjs} +1 -1
- package/components/{item-option-slider-CcKLS-V5.js → item-option-slider-CWxRoAbA.js} +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-Ch6u9CAm.js → item-option-switch-DvMLATBO.js} +1 -1
- package/components/{item-option-switch-CpeC7Eh7.cjs → item-option-switch-dO66fjoD.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-DAbQegOZ.js → item-option-text-field-DS-gn_Gc.js} +1 -1
- package/components/{item-option-text-field-BxvQAHf3.cjs → item-option-text-field-Furz80ho.cjs} +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-DDffbp-i.js → item-slot-drop-DE90FDdS.js} +5 -5
- package/components/{item-slot-drop-mKhyjodt.cjs → item-slot-drop-f8jm-34W.cjs} +1 -1
- 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-BtrZehGL.js → item-slot-drop-panel-CyfhbUlE.js} +39 -39
- package/components/{item-slot-drop-panel-CKXMQCyt.cjs → item-slot-drop-panel-DLqyYvKj.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-CWqeOJ8R.js → item-slot-picker-BM03UNRE.js} +6 -6
- package/components/{item-slot-picker-CwMjRpkT.cjs → item-slot-picker-CgEtqhqe.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-C6Hpc2rT.cjs → item-slot-picker-panel-CuH3OcmV.cjs} +1 -1
- package/components/{item-slot-picker-panel-cD3DvPbA.js → item-slot-picker-panel-DPaabfv5.js} +3 -3
- package/components/{line-chart-positioning.config-ZZid30rm.cjs → line-chart-positioning.config-BnDYCjGX.cjs} +1 -1
- package/components/{line-chart-positioning.config-DoHg1rwA.js → line-chart-positioning.config-CPGyHeJF.js} +1 -1
- package/components/{localized-mixin-DZFYG6RG.cjs → localized-mixin-CtNoCjjI.cjs} +1 -1
- package/components/{localized-mixin-CSF-kZFt.js → localized-mixin-DBUkUh0o.js} +1 -1
- package/components/{marker-map-positioning.config-DGZWoFAk.cjs → marker-map-positioning.config-Bq1EPg3J.cjs} +1 -1
- package/components/{marker-map-positioning.config-DX6bFQld.js → marker-map-positioning.config-CBERtxkG.js} +1 -1
- package/components/nl-BnzS_ZtB.cjs +20 -0
- package/components/{nl-MWgzbW0R.js → nl-h9vVAk2e.js} +3 -0
- package/components/{ohlc-chart-positioning.config-DaEUcXBJ.js → ohlc-chart-positioning.config-CpPJyyLB.js} +1 -1
- package/components/{ohlc-chart-positioning.config-Bev8Atsx.cjs → ohlc-chart-positioning.config-aCf-SEt7.cjs} +1 -1
- package/components/{parallel-coordinates-plot-positioning.config-DJ7K-dVp.cjs → parallel-coordinates-plot-positioning.config-D1CB7jOv.cjs} +1 -1
- package/components/{parallel-coordinates-plot-positioning.config-NWEEOd4d.js → parallel-coordinates-plot-positioning.config-DsNDp1G7.js} +1 -1
- package/components/{pivot-table-positioning.config-DpMiUVtd.js → pivot-table-positioning.config-BFWS3Yk_.js} +1 -1
- package/components/{pivot-table-positioning.config-U-M08Rwc.cjs → pivot-table-positioning.config-gBHM1_-K.cjs} +1 -1
- package/components/{pyramid-chart-positioning.config-CZwx_f40.js → pyramid-chart-positioning.config-B8dbZhvt.js} +1 -1
- package/components/{pyramid-chart-positioning.config-BpdI6jmg.cjs → pyramid-chart-positioning.config-DD64vCwl.cjs} +1 -1
- package/components/{radar-chart-positioning.config-IFacftgi.js → radar-chart-positioning.config-C2DWQu8V.js} +1 -1
- package/components/{radar-chart-positioning.config-IcaEKe9Q.cjs → radar-chart-positioning.config-DN51_Tzb.cjs} +1 -1
- package/components/{route-map-positioning.config-CHfz0eM_.js → route-map-positioning.config-D7X6QuWY.js} +1 -1
- package/components/{route-map-positioning.config-DKZvRmfJ.cjs → route-map-positioning.config-ryk_dUkh.cjs} +1 -1
- package/components/{sankey-diagram-positioning.config-BaCoBJXV.js → sankey-diagram-positioning.config-A_7xM06n.js} +1 -1
- package/components/{sankey-diagram-positioning.config-DJaK2xJX.cjs → sankey-diagram-positioning.config-CJfGpnPS.cjs} +1 -1
- package/components/{scatter-plot-positioning.config-DaNI54rh.cjs → scatter-plot-positioning.config-Duao2ftU.cjs} +1 -1
- package/components/{scatter-plot-positioning.config-PC47tloI.js → scatter-plot-positioning.config-qpwrugRe.js} +1 -1
- package/components/{set-locale-v6POkwmC.cjs → set-locale-B-GvqA1H.cjs} +1 -1
- package/components/{set-locale-Jz3DhqaW.js → set-locale-CgCeLPlb.js} +4 -4
- package/components/{slicer-filter-positioning.config-DMqYOG9Z.js → slicer-filter-positioning.config-93hC7jID.js} +1 -1
- package/components/{slicer-filter-positioning.config-KANe71ep.cjs → slicer-filter-positioning.config-DxhC39ak.cjs} +1 -1
- package/components/slot-menu/index.cjs +1 -1
- package/components/slot-menu/index.js +1 -1
- package/components/{slot-menu-CWMA97fn.cjs → slot-menu-CPxyyKSe.cjs} +6 -6
- package/components/{slot-menu-Cwee5fNa.js → slot-menu-DHJtAZ5_.js} +16 -16
- package/components/slot-menu-list/index.cjs +1 -1
- package/components/slot-menu-list/index.js +1 -1
- package/components/{slot-menu-list-BEou0QhK.cjs → slot-menu-list-CeWcE4KK.cjs} +1 -1
- package/components/{slot-menu-list-De2q0GGZ.js → slot-menu-list-QltpaoWh.js} +1 -1
- package/components/{speedometer-chart-positioning.config-CYVK0VnJ.js → speedometer-chart-positioning.config-CZbwyYsk.js} +1 -1
- package/components/{speedometer-chart-positioning.config-DW3dJD7n.cjs → speedometer-chart-positioning.config-DtRG3-e5.cjs} +1 -1
- package/components/{spike-map-positioning.config-Dl-Uf_O6.cjs → spike-map-positioning.config-CevjyQ5F.cjs} +1 -1
- package/components/{spike-map-positioning.config-CfVFEygx.js → spike-map-positioning.config-LBqSYD2n.js} +1 -1
- package/components/{strip-plot-positioning.config-eJ5MbyBk.cjs → strip-plot-positioning.config-DF5VxzvB.cjs} +1 -1
- package/components/{strip-plot-positioning.config-BMNtb-to.js → strip-plot-positioning.config-cCdQxMM_.js} +1 -1
- package/components/{sunburst-chart-positioning.config-CJgmPm-9.cjs → sunburst-chart-positioning.config-CERBvfoF.cjs} +1 -1
- package/components/{sunburst-chart-positioning.config-BRWF7dVf.js → sunburst-chart-positioning.config-DmkZEexM.js} +1 -1
- package/components/{symbol-map-positioning.config-_8L-oDxW.js → symbol-map-positioning.config-BwG_G6He.js} +1 -1
- package/components/{symbol-map-positioning.config-ONSN27l9.cjs → symbol-map-positioning.config-DhYxG8RC.cjs} +1 -1
- package/components/{treemap-chart-positioning.config-DrCRoNzf.cjs → treemap-chart-positioning.config-BwrrXs4a.cjs} +1 -1
- package/components/{treemap-chart-positioning.config-Bggn7Mqz.js → treemap-chart-positioning.config-arjPT6b_.js} +1 -1
- package/components/utils/base.cjs +1 -1
- package/components/utils/base.js +2 -2
- package/components/{utils-B2Eqs5i5.js → utils-B_rE5b7a.js} +1 -1
- package/components/{utils-CNH9xGyk.cjs → utils-BwJNkc-z.cjs} +1 -1
- package/components/utils.cjs +1 -1
- package/components/utils.js +2 -2
- package/components/{venn-diagram-positioning.config-BoH0wNEM.js → venn-diagram-positioning.config-DSh3Ns9L.js} +1 -1
- package/components/{venn-diagram-positioning.config-B-prEVEc.cjs → venn-diagram-positioning.config-GGLCcrqp.cjs} +1 -1
- package/components/viz-item-menu/index.cjs +1 -1
- package/components/viz-item-menu/index.js +1 -1
- package/components/viz-item-menu/viz-item-menu.d.ts +3 -0
- package/components/{viz-item-menu-BUSjo6j_.js → viz-item-menu-B7yRaSAU.js} +2 -2
- package/components/{viz-item-menu-C-kpX-Ft.cjs → viz-item-menu-hLdU-02Q.cjs} +1 -1
- package/components/{wordcloud-chart-positioning.config-B6pvD7_a.js → wordcloud-chart-positioning.config-B8ZzwIdd.js} +1 -1
- package/components/{wordcloud-chart-positioning.config-BJi5SVYf.cjs → wordcloud-chart-positioning.config-Cxyhs6gk.cjs} +1 -1
- package/custom-elements.json +268 -5
- package/package.json +1 -1
- package/react/components/ai-chat.component.ts +2 -2
- package/react/esm/components/ai-chat.component.d.ts +2 -2
- package/react/esm/components/ai-chat.component.js +2 -2
- package/react/package.json +2 -2
- package/types/ai-chat.types.d.ts +9 -0
- package/components/ai-chat-7kHoMVeu.cjs +0 -321
- package/components/de-g8uRTFxZ.cjs +0 -20
- package/components/es-C3dhJP2H.cjs +0 -20
- package/components/fr-WdV_fXl_.cjs +0 -20
- package/components/nl-D3gRr88b.cjs +0 -20
|
@@ -17,8 +17,8 @@
|
|
|
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 { c as e, d as t, s as n, u as r } from "./ai-interaction-textarea-
|
|
21
|
-
import { i } from "./base-
|
|
20
|
+
import { c as e, d as t, s as n, u as r } from "./ai-interaction-textarea-D9g9G0T1.js";
|
|
21
|
+
import { i } from "./base-DSeXdW9S.js";
|
|
22
22
|
import { t as a } from "./decorate-DyMgX_Uh.js";
|
|
23
23
|
import { msg as o } from "@lit/localize/lit-localize";
|
|
24
24
|
import { luzmoEllipsisVertical as s, luzmoIcon as c, luzmoSpin as l } from "@luzmo/icons";
|
|
@@ -32,19 +32,22 @@ import { html as u, nothing as d, unsafeCSS as f } from "lit";
|
|
|
32
32
|
import { property as p, state as m } from "lit/decorators.js";
|
|
33
33
|
import { unsafeHTML as ee } from "lit/directives/unsafe-html.js";
|
|
34
34
|
import "@luzmo/lucero/action-button";
|
|
35
|
+
import "@luzmo/lucero/question-box";
|
|
36
|
+
import { guard as h } from "lit/directives/guard.js";
|
|
37
|
+
import { keyed as te } from "lit/directives/keyed.js";
|
|
35
38
|
//#region node_modules/dompurify/dist/purify.es.mjs
|
|
36
|
-
function
|
|
39
|
+
function ne(e, t) {
|
|
37
40
|
this.v = e, this.k = t;
|
|
38
41
|
}
|
|
39
|
-
function
|
|
42
|
+
function re(e, t) {
|
|
40
43
|
(t == null || t > e.length) && (t = e.length);
|
|
41
44
|
for (var n = 0, r = Array(t); n < t; n++) r[n] = e[n];
|
|
42
45
|
return r;
|
|
43
46
|
}
|
|
44
|
-
function
|
|
47
|
+
function ie(e) {
|
|
45
48
|
if (Array.isArray(e)) return e;
|
|
46
49
|
}
|
|
47
|
-
function
|
|
50
|
+
function ae(e, t) {
|
|
48
51
|
var n = e == null ? null : typeof Symbol < "u" && e[Symbol.iterator] || e["@@iterator"];
|
|
49
52
|
if (n != null) {
|
|
50
53
|
var r, i, a, o, s = [], c = !0, l = !1;
|
|
@@ -65,24 +68,24 @@ function ne(e, t) {
|
|
|
65
68
|
return s;
|
|
66
69
|
}
|
|
67
70
|
}
|
|
68
|
-
function
|
|
71
|
+
function oe() {
|
|
69
72
|
throw TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
|
|
70
73
|
}
|
|
71
|
-
function
|
|
72
|
-
return
|
|
74
|
+
function se(e, t) {
|
|
75
|
+
return ie(e) || ae(e, t) || ce(e, t) || oe();
|
|
73
76
|
}
|
|
74
|
-
function
|
|
77
|
+
function ce(e, t) {
|
|
75
78
|
if (e) {
|
|
76
|
-
if (typeof e == "string") return
|
|
79
|
+
if (typeof e == "string") return re(e, t);
|
|
77
80
|
var n = {}.toString.call(e).slice(8, -1);
|
|
78
|
-
return n === "Object" && e.constructor && (n = e.constructor.name), n === "Map" || n === "Set" ? Array.from(e) : n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n) ?
|
|
81
|
+
return n === "Object" && e.constructor && (n = e.constructor.name), n === "Map" || n === "Set" ? Array.from(e) : n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n) ? re(e, t) : void 0;
|
|
79
82
|
}
|
|
80
83
|
}
|
|
81
|
-
function
|
|
84
|
+
function g(e) {
|
|
82
85
|
var t, n;
|
|
83
86
|
function r(t, n) {
|
|
84
87
|
try {
|
|
85
|
-
var a = e[t](n), o = a.value, s = o instanceof
|
|
88
|
+
var a = e[t](n), o = a.value, s = o instanceof ne;
|
|
86
89
|
Promise.resolve(s ? o.v : o).then(function(n) {
|
|
87
90
|
if (s) {
|
|
88
91
|
var c = t === "return" && o.k ? t : "next";
|
|
@@ -116,113 +119,113 @@ function _(e) {
|
|
|
116
119
|
});
|
|
117
120
|
}, typeof e.return != "function" && (this.return = void 0);
|
|
118
121
|
}
|
|
119
|
-
|
|
122
|
+
g.prototype[typeof Symbol == "function" && Symbol.asyncIterator || "@@asyncIterator"] = function() {
|
|
120
123
|
return this;
|
|
121
|
-
},
|
|
124
|
+
}, g.prototype.next = function(e) {
|
|
122
125
|
return this._invoke("next", e);
|
|
123
|
-
},
|
|
126
|
+
}, g.prototype.throw = function(e) {
|
|
124
127
|
return this._invoke("throw", e);
|
|
125
|
-
},
|
|
128
|
+
}, g.prototype.return = function(e) {
|
|
126
129
|
return this._invoke("return", e);
|
|
127
130
|
};
|
|
128
|
-
var
|
|
129
|
-
|
|
131
|
+
var le = Object.entries, _ = Object.setPrototypeOf, ue = Object.isFrozen, de = Object.getPrototypeOf, fe = Object.getOwnPropertyDescriptor, v = Object.freeze, y = Object.seal, pe = Object.create, me = typeof Reflect < "u" && Reflect, he = me.apply, ge = me.construct;
|
|
132
|
+
v ||= function(e) {
|
|
130
133
|
return e;
|
|
131
|
-
},
|
|
134
|
+
}, y ||= function(e) {
|
|
132
135
|
return e;
|
|
133
|
-
},
|
|
136
|
+
}, he ||= function(e, t) {
|
|
134
137
|
var n = [...arguments].slice(2);
|
|
135
138
|
return e.apply(t, n);
|
|
136
|
-
},
|
|
139
|
+
}, ge ||= function(e) {
|
|
137
140
|
return new e(...[...arguments].slice(1));
|
|
138
141
|
};
|
|
139
|
-
var
|
|
142
|
+
var _e = C(Array.prototype.forEach);
|
|
140
143
|
Array.prototype.indexOf;
|
|
141
|
-
var
|
|
144
|
+
var ve = C(Array.prototype.lastIndexOf), ye = C(Array.prototype.pop), be = C(Array.prototype.push);
|
|
142
145
|
Array.prototype.slice;
|
|
143
|
-
var
|
|
146
|
+
var xe = C(Array.prototype.splice), Se = Array.isArray, Ce = C(String.prototype.toLowerCase), we = C(String.prototype.toString), Te = C(String.prototype.match), Ee = C(String.prototype.replace), De = C(String.prototype.indexOf), Oe = C(String.prototype.trim), ke = C(Number.prototype.toString), Ae = C(Boolean.prototype.toString), je = typeof BigInt > "u" ? null : C(BigInt.prototype.toString), Me = typeof Symbol > "u" ? null : C(Symbol.prototype.toString), b = C(Object.prototype.hasOwnProperty), Ne = C(Object.prototype.toString), x = C(RegExp.prototype.test), S = Pe(TypeError);
|
|
144
147
|
function C(e) {
|
|
145
148
|
return function(t) {
|
|
146
149
|
t instanceof RegExp && (t.lastIndex = 0);
|
|
147
150
|
var n = [...arguments].slice(1);
|
|
148
|
-
return
|
|
151
|
+
return he(e, t, n);
|
|
149
152
|
};
|
|
150
153
|
}
|
|
151
|
-
function
|
|
154
|
+
function Pe(e) {
|
|
152
155
|
return function() {
|
|
153
|
-
return
|
|
156
|
+
return ge(e, [...arguments]);
|
|
154
157
|
};
|
|
155
158
|
}
|
|
156
159
|
function w(e, t) {
|
|
157
|
-
let n = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] :
|
|
158
|
-
if (
|
|
160
|
+
let n = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : Ce;
|
|
161
|
+
if (_ && _(e, null), !Se(t)) return e;
|
|
159
162
|
let r = t.length;
|
|
160
163
|
for (; r--;) {
|
|
161
164
|
let i = t[r];
|
|
162
165
|
if (typeof i == "string") {
|
|
163
166
|
let e = n(i);
|
|
164
|
-
e !== i && (
|
|
167
|
+
e !== i && (ue(t) || (t[r] = e), i = e);
|
|
165
168
|
}
|
|
166
169
|
e[i] = !0;
|
|
167
170
|
}
|
|
168
171
|
return e;
|
|
169
172
|
}
|
|
170
|
-
function
|
|
171
|
-
for (let t = 0; t < e.length; t++)
|
|
173
|
+
function T(e) {
|
|
174
|
+
for (let t = 0; t < e.length; t++) b(e, t) || (e[t] = null);
|
|
172
175
|
return e;
|
|
173
176
|
}
|
|
174
|
-
function
|
|
175
|
-
let t =
|
|
176
|
-
for (let r of
|
|
177
|
-
var n =
|
|
177
|
+
function E(e) {
|
|
178
|
+
let t = pe(null);
|
|
179
|
+
for (let r of le(e)) {
|
|
180
|
+
var n = se(r, 2);
|
|
178
181
|
let i = n[0], a = n[1];
|
|
179
|
-
|
|
182
|
+
b(e, i) && (Se(a) ? t[i] = T(a) : a && typeof a == "object" && a.constructor === Object ? t[i] = E(a) : t[i] = a);
|
|
180
183
|
}
|
|
181
184
|
return t;
|
|
182
185
|
}
|
|
183
|
-
function
|
|
186
|
+
function Fe(e) {
|
|
184
187
|
switch (typeof e) {
|
|
185
188
|
case "string": return e;
|
|
186
|
-
case "number": return
|
|
187
|
-
case "boolean": return
|
|
188
|
-
case "bigint": return
|
|
189
|
-
case "symbol": return
|
|
190
|
-
case "undefined": return
|
|
189
|
+
case "number": return ke(e);
|
|
190
|
+
case "boolean": return Ae(e);
|
|
191
|
+
case "bigint": return je ? je(e) : "0";
|
|
192
|
+
case "symbol": return Me ? Me(e) : "Symbol()";
|
|
193
|
+
case "undefined": return Ne(e);
|
|
191
194
|
case "function":
|
|
192
195
|
case "object": {
|
|
193
|
-
if (e === null) return
|
|
194
|
-
let t = e, n =
|
|
196
|
+
if (e === null) return Ne(e);
|
|
197
|
+
let t = e, n = D(t, "toString");
|
|
195
198
|
if (typeof n == "function") {
|
|
196
199
|
let e = n(t);
|
|
197
|
-
return typeof e == "string" ? e :
|
|
200
|
+
return typeof e == "string" ? e : Ne(e);
|
|
198
201
|
}
|
|
199
|
-
return
|
|
202
|
+
return Ne(e);
|
|
200
203
|
}
|
|
201
|
-
default: return
|
|
204
|
+
default: return Ne(e);
|
|
202
205
|
}
|
|
203
206
|
}
|
|
204
|
-
function
|
|
207
|
+
function D(e, t) {
|
|
205
208
|
for (; e !== null;) {
|
|
206
|
-
let n =
|
|
209
|
+
let n = fe(e, t);
|
|
207
210
|
if (n) {
|
|
208
211
|
if (n.get) return C(n.get);
|
|
209
212
|
if (typeof n.value == "function") return C(n.value);
|
|
210
213
|
}
|
|
211
|
-
e =
|
|
214
|
+
e = de(e);
|
|
212
215
|
}
|
|
213
216
|
function n() {
|
|
214
217
|
return null;
|
|
215
218
|
}
|
|
216
219
|
return n;
|
|
217
220
|
}
|
|
218
|
-
function
|
|
221
|
+
function Ie(e) {
|
|
219
222
|
try {
|
|
220
|
-
return
|
|
223
|
+
return x(e, ""), !0;
|
|
221
224
|
} catch {
|
|
222
225
|
return !1;
|
|
223
226
|
}
|
|
224
227
|
}
|
|
225
|
-
var
|
|
228
|
+
var Le = v(/* @__PURE__ */ "a.abbr.acronym.address.area.article.aside.audio.b.bdi.bdo.big.blink.blockquote.body.br.button.canvas.caption.center.cite.code.col.colgroup.content.data.datalist.dd.decorator.del.details.dfn.dialog.dir.div.dl.dt.element.em.fieldset.figcaption.figure.font.footer.form.h1.h2.h3.h4.h5.h6.head.header.hgroup.hr.html.i.img.input.ins.kbd.label.legend.li.main.map.mark.marquee.menu.menuitem.meter.nav.nobr.ol.optgroup.option.output.p.picture.pre.progress.q.rp.rt.ruby.s.samp.search.section.select.shadow.slot.small.source.spacer.span.strike.strong.style.sub.summary.sup.table.tbody.td.template.textarea.tfoot.th.thead.time.tr.track.tt.u.ul.var.video.wbr".split(".")), Re = v(/* @__PURE__ */ "svg.a.altglyph.altglyphdef.altglyphitem.animatecolor.animatemotion.animatetransform.circle.clippath.defs.desc.ellipse.enterkeyhint.exportparts.filter.font.g.glyph.glyphref.hkern.image.inputmode.line.lineargradient.marker.mask.metadata.mpath.part.path.pattern.polygon.polyline.radialgradient.rect.stop.style.switch.symbol.text.textpath.title.tref.tspan.view.vkern".split(".")), ze = v([
|
|
226
229
|
"feBlend",
|
|
227
230
|
"feColorMatrix",
|
|
228
231
|
"feComponentTransfer",
|
|
@@ -248,7 +251,7 @@ var Ie = y(/* @__PURE__ */ "a.abbr.acronym.address.area.article.aside.audio.b.bd
|
|
|
248
251
|
"feSpotLight",
|
|
249
252
|
"feTile",
|
|
250
253
|
"feTurbulence"
|
|
251
|
-
]),
|
|
254
|
+
]), Be = v([
|
|
252
255
|
"animate",
|
|
253
256
|
"color-profile",
|
|
254
257
|
"cursor",
|
|
@@ -271,7 +274,7 @@ var Ie = y(/* @__PURE__ */ "a.abbr.acronym.address.area.article.aside.audio.b.bd
|
|
|
271
274
|
"solidcolor",
|
|
272
275
|
"unknown",
|
|
273
276
|
"use"
|
|
274
|
-
]),
|
|
277
|
+
]), Ve = v(/* @__PURE__ */ "math.menclose.merror.mfenced.mfrac.mglyph.mi.mlabeledtr.mmultiscripts.mn.mo.mover.mpadded.mphantom.mroot.mrow.ms.mspace.msqrt.mstyle.msub.msup.msubsup.mtable.mtd.mtext.mtr.munder.munderover.mprescripts".split(".")), He = v([
|
|
275
278
|
"maction",
|
|
276
279
|
"maligngroup",
|
|
277
280
|
"malignmark",
|
|
@@ -287,13 +290,13 @@ var Ie = y(/* @__PURE__ */ "a.abbr.acronym.address.area.article.aside.audio.b.bd
|
|
|
287
290
|
"annotation-xml",
|
|
288
291
|
"mprescripts",
|
|
289
292
|
"none"
|
|
290
|
-
]),
|
|
293
|
+
]), Ue = v(["#text"]), We = v(/* @__PURE__ */ "accept.action.align.alt.autocapitalize.autocomplete.autopictureinpicture.autoplay.background.bgcolor.border.capture.cellpadding.cellspacing.checked.cite.class.clear.color.cols.colspan.command.commandfor.controls.controlslist.coords.crossorigin.datetime.decoding.default.dir.disabled.disablepictureinpicture.disableremoteplayback.download.draggable.enctype.enterkeyhint.exportparts.face.for.headers.height.hidden.high.href.hreflang.id.inert.inputmode.integrity.ismap.kind.label.lang.list.loading.loop.low.max.maxlength.media.method.min.minlength.multiple.muted.name.nonce.noshade.novalidate.nowrap.open.optimum.part.pattern.placeholder.playsinline.popover.popovertarget.popovertargetaction.poster.preload.pubdate.radiogroup.readonly.rel.required.rev.reversed.role.rows.rowspan.spellcheck.scope.selected.shape.size.sizes.slot.span.srclang.start.src.srcset.step.style.summary.tabindex.title.translate.type.usemap.valign.value.width.wrap.xmlns".split(".")), Ge = v(/* @__PURE__ */ "accent-height.accumulate.additive.alignment-baseline.amplitude.ascent.attributename.attributetype.azimuth.basefrequency.baseline-shift.begin.bias.by.class.clip.clippathunits.clip-path.clip-rule.color.color-interpolation.color-interpolation-filters.color-profile.color-rendering.cx.cy.d.dx.dy.diffuseconstant.direction.display.divisor.dominant-baseline.dur.edgemode.elevation.end.exponent.fill.fill-opacity.fill-rule.filter.filterunits.flood-color.flood-opacity.font-family.font-size.font-size-adjust.font-stretch.font-style.font-variant.font-weight.fx.fy.g1.g2.glyph-name.glyphref.gradientunits.gradienttransform.height.href.id.image-rendering.in.in2.intercept.k.k1.k2.k3.k4.kerning.keypoints.keysplines.keytimes.lang.lengthadjust.letter-spacing.kernelmatrix.kernelunitlength.lighting-color.local.marker-end.marker-mid.marker-start.markerheight.markerunits.markerwidth.maskcontentunits.maskunits.max.mask.mask-type.media.method.mode.min.name.numoctaves.offset.operator.opacity.order.orient.orientation.origin.overflow.paint-order.path.pathlength.patterncontentunits.patterntransform.patternunits.pointer-events.points.preservealpha.preserveaspectratio.primitiveunits.r.rx.ry.radius.refx.refy.repeatcount.repeatdur.restart.result.rotate.scale.seed.shape-rendering.slope.specularconstant.specularexponent.spreadmethod.startoffset.stddeviation.stitchtiles.stop-color.stop-opacity.stroke-dasharray.stroke-dashoffset.stroke-linecap.stroke-linejoin.stroke-miterlimit.stroke-opacity.stroke.stroke-width.style.surfacescale.systemlanguage.tabindex.tablevalues.targetx.targety.transform.transform-origin.text-anchor.text-decoration.text-orientation.text-rendering.textlength.type.u1.u2.unicode.values.vector-effect.viewbox.visibility.version.vert-adv-y.vert-origin-x.vert-origin-y.width.word-spacing.wrap.writing-mode.xchannelselector.ychannelselector.x.x1.x2.xmlns.y.y1.y2.z.zoomandpan".split(".")), Ke = v(/* @__PURE__ */ "accent.accentunder.align.bevelled.close.columnalign.columnlines.columnspacing.columnspan.denomalign.depth.dir.display.displaystyle.encoding.fence.frame.height.href.id.largeop.length.linethickness.lquote.lspace.mathbackground.mathcolor.mathsize.mathvariant.maxsize.minsize.movablelimits.notation.numalign.open.rowalign.rowlines.rowspacing.rowspan.rspace.rquote.scriptlevel.scriptminsize.scriptsizemultiplier.selection.separator.separators.stretchy.subscriptshift.supscriptshift.symmetric.voffset.width.xmlns".split(".")), qe = v([
|
|
291
294
|
"xlink:href",
|
|
292
295
|
"xml:id",
|
|
293
296
|
"xlink:title",
|
|
294
297
|
"xml:space",
|
|
295
298
|
"xmlns:xlink"
|
|
296
|
-
]),
|
|
299
|
+
]), Je = y(/{{[\w\W]*|^[\w\W]*}}/g), Ye = y(/<%[\w\W]*|^[\w\W]*%>/g), Xe = y(/\${[\w\W]*/g), Ze = y(/^data-[\-\w.\u00B7-\uFFFF]+$/), Qe = y(/^aria-[\-\w]+$/), $e = y(/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|sms|cid|xmpp|matrix):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i), et = y(/^(?:\w+script|data):/i), tt = y(/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g), nt = y(/^html$/i), rt = y(/^[a-z][.\w]*(-[.\w]+)+$/i), it = y(/<[/\w!]/g), at = y(/<[/\w]/g), ot = y(/<\/no(script|embed|frames)/i), st = y(/\/>/i), O = {
|
|
297
300
|
element: 1,
|
|
298
301
|
attribute: 2,
|
|
299
302
|
text: 3,
|
|
@@ -306,7 +309,7 @@ var Ie = y(/* @__PURE__ */ "a.abbr.acronym.address.area.article.aside.audio.b.bd
|
|
|
306
309
|
documentType: 10,
|
|
307
310
|
documentFragment: 11,
|
|
308
311
|
notation: 12
|
|
309
|
-
},
|
|
312
|
+
}, ct = [
|
|
310
313
|
"style",
|
|
311
314
|
"script",
|
|
312
315
|
"xmp",
|
|
@@ -315,14 +318,14 @@ var Ie = y(/* @__PURE__ */ "a.abbr.acronym.address.area.article.aside.audio.b.bd
|
|
|
315
318
|
"noframes",
|
|
316
319
|
"plaintext",
|
|
317
320
|
"noscript"
|
|
318
|
-
],
|
|
321
|
+
], lt = v(w({}, ct)), ut = function() {
|
|
319
322
|
let e = {};
|
|
320
|
-
return
|
|
321
|
-
e[t] =
|
|
322
|
-
}),
|
|
323
|
-
}(),
|
|
323
|
+
return _e(ct, (t) => {
|
|
324
|
+
e[t] = y(RegExp("</" + t + "(?=[\\t\\n\\f\\r />])", "i"));
|
|
325
|
+
}), v(e);
|
|
326
|
+
}(), dt = function() {
|
|
324
327
|
return typeof window > "u" ? null : window;
|
|
325
|
-
},
|
|
328
|
+
}, ft = function(e, t) {
|
|
326
329
|
if (typeof e != "object" || typeof e.createPolicy != "function") return null;
|
|
327
330
|
let n = null, r = "data-tt-policy-suffix";
|
|
328
331
|
t && t.hasAttribute(r) && (n = t.getAttribute(r));
|
|
@@ -339,7 +342,7 @@ var Ie = y(/* @__PURE__ */ "a.abbr.acronym.address.area.article.aside.audio.b.bd
|
|
|
339
342
|
} catch {
|
|
340
343
|
return console.warn("TrustedTypes policy " + i + " could not be created."), null;
|
|
341
344
|
}
|
|
342
|
-
},
|
|
345
|
+
}, pt = function() {
|
|
343
346
|
return {
|
|
344
347
|
afterSanitizeAttributes: [],
|
|
345
348
|
afterSanitizeElements: [],
|
|
@@ -351,60 +354,60 @@ var Ie = y(/* @__PURE__ */ "a.abbr.acronym.address.area.article.aside.audio.b.bd
|
|
|
351
354
|
uponSanitizeElement: [],
|
|
352
355
|
uponSanitizeShadowNode: []
|
|
353
356
|
};
|
|
354
|
-
},
|
|
355
|
-
return
|
|
356
|
-
},
|
|
357
|
-
let r =
|
|
358
|
-
return r && typeof r == "object" ?
|
|
357
|
+
}, mt = function(e, t, n, r) {
|
|
358
|
+
return b(e, t) && Se(e[t]) ? w(r.base ? E(r.base) : {}, e[t], r.transform) : n;
|
|
359
|
+
}, ht = function(e, t, n) {
|
|
360
|
+
let r = b(e, t) ? e[t] : void 0;
|
|
361
|
+
return r && typeof r == "object" ? E(r) : n();
|
|
359
362
|
};
|
|
360
|
-
function
|
|
361
|
-
let e = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] :
|
|
362
|
-
if (t.version = "3.4.16", t.removed = [], !e || !e.document || e.document.nodeType !==
|
|
363
|
+
function gt() {
|
|
364
|
+
let e = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : dt(), t = (e) => gt(e);
|
|
365
|
+
if (t.version = "3.4.16", t.removed = [], !e || !e.document || e.document.nodeType !== O.document || !e.Element) return t.isSupported = !1, t;
|
|
363
366
|
let n = e.document, r = n, i = r.currentScript;
|
|
364
367
|
e.DocumentFragment;
|
|
365
368
|
let a = e.HTMLTemplateElement, o = e.Node, s = e.Element, c = e.NodeFilter;
|
|
366
369
|
e.NamedNodeMap === void 0 && (e.NamedNodeMap || e.MozNamedAttrMap), e.HTMLFormElement;
|
|
367
|
-
let l = e.DOMParser, u = e.trustedTypes, d = s.prototype, f =
|
|
368
|
-
return
|
|
369
|
-
},
|
|
370
|
-
return
|
|
370
|
+
let l = e.DOMParser, u = e.trustedTypes, d = s.prototype, f = D(d, "cloneNode"), p = D(d, "remove"), m = D(d, "removeAttributeNode"), ee = D(d, "nextSibling"), h = D(d, "childNodes"), te = D(d, "parentNode"), ne = D(d, "shadowRoot"), re = D(d, "attributes"), ie = o && o.prototype ? D(o.prototype, "nodeType") : null, ae = o && o.prototype ? D(o.prototype, "nodeName") : null, oe = o && o.prototype ? D(o.prototype, "ownerDocument") : null, se = function(e) {
|
|
371
|
+
return ie ? ie(e) : e.nodeType;
|
|
372
|
+
}, ce = function(e) {
|
|
373
|
+
return ae ? ae(e) : e.nodeName;
|
|
371
374
|
};
|
|
372
375
|
if (typeof a == "function") {
|
|
373
376
|
let e = n.createElement("template");
|
|
374
377
|
e.content && e.content.ownerDocument && (n = e.content.ownerDocument);
|
|
375
378
|
}
|
|
376
|
-
let
|
|
377
|
-
if (fe > 0) throw
|
|
378
|
-
},
|
|
379
|
-
|
|
379
|
+
let g, _ = "", ue, de = !1, fe = 0, me = function() {
|
|
380
|
+
if (fe > 0) throw S("A configured TRUSTED_TYPES_POLICY callback (createHTML or createScriptURL) must not call DOMPurify.sanitize, as that causes infinite recursion. Do not pass a policy whose callbacks wrap DOMPurify as TRUSTED_TYPES_POLICY; see the \"DOMPurify and Trusted Types\" section of the README.");
|
|
381
|
+
}, he = function(e) {
|
|
382
|
+
me(), fe++;
|
|
380
383
|
try {
|
|
381
|
-
return
|
|
384
|
+
return g.createHTML(e);
|
|
382
385
|
} finally {
|
|
383
386
|
fe--;
|
|
384
387
|
}
|
|
385
|
-
},
|
|
386
|
-
|
|
388
|
+
}, ge = function(e) {
|
|
389
|
+
me(), fe++;
|
|
387
390
|
try {
|
|
388
|
-
return
|
|
391
|
+
return g.createScriptURL(e);
|
|
389
392
|
} finally {
|
|
390
393
|
fe--;
|
|
391
394
|
}
|
|
392
|
-
},
|
|
393
|
-
return de ||= (
|
|
394
|
-
},
|
|
395
|
-
t.isSupported = typeof
|
|
396
|
-
let
|
|
397
|
-
...Ie,
|
|
395
|
+
}, ke = function() {
|
|
396
|
+
return de ||= (ue = ft(u, i), !0), ue;
|
|
397
|
+
}, Ae = n, je = Ae.implementation, Me = Ae.createNodeIterator, Ne = Ae.createDocumentFragment, C = Ae.getElementsByTagName, Pe = r.importNode, T = pt();
|
|
398
|
+
t.isSupported = typeof le == "function" && typeof te == "function" && je && je.createHTMLDocument !== void 0;
|
|
399
|
+
let ct = Je, _t = Ye, vt = Xe, yt = Ze, bt = Qe, xt = et, St = tt, k = rt, Ct = $e, A = null, wt = w({}, [
|
|
398
400
|
...Le,
|
|
399
401
|
...Re,
|
|
400
|
-
...
|
|
401
|
-
...
|
|
402
|
-
|
|
403
|
-
|
|
402
|
+
...ze,
|
|
403
|
+
...Ve,
|
|
404
|
+
...Ue
|
|
405
|
+
]), j = null, Tt = w({}, [
|
|
404
406
|
...We,
|
|
405
407
|
...Ge,
|
|
406
|
-
...Ke
|
|
407
|
-
|
|
408
|
+
...Ke,
|
|
409
|
+
...qe
|
|
410
|
+
]), M = Object.seal(pe(null, {
|
|
408
411
|
tagNameCheck: {
|
|
409
412
|
writable: !0,
|
|
410
413
|
configurable: !1,
|
|
@@ -423,7 +426,7 @@ function ht() {
|
|
|
423
426
|
enumerable: !0,
|
|
424
427
|
value: !1
|
|
425
428
|
}
|
|
426
|
-
})),
|
|
429
|
+
})), Et = null, Dt = null, N = Object.seal(pe(null, {
|
|
427
430
|
tagCheck: {
|
|
428
431
|
writable: !0,
|
|
429
432
|
configurable: !1,
|
|
@@ -436,7 +439,7 @@ function ht() {
|
|
|
436
439
|
enumerable: !0,
|
|
437
440
|
value: null
|
|
438
441
|
}
|
|
439
|
-
})),
|
|
442
|
+
})), Ot = !0, kt = !0, At = !1, jt = !0, P = !1, F = !0, I = !1, Mt = !1, Nt = null, Pt = null, Ft = !1, L = !1, It = !1, Lt = !1, Rt = !0, zt = !1, Bt = "user-content-", Vt = !0, Ht = !1, R = {}, z = null, Ut = w({}, /* @__PURE__ */ "annotation-xml.audio.colgroup.desc.foreignobject.head.iframe.math.mi.mn.mo.ms.mtext.noembed.noframes.noscript.plaintext.script.selectedcontent.style.svg.template.thead.title.video.xmp".split(".")), Wt = null, Gt = w({}, [
|
|
440
443
|
"audio",
|
|
441
444
|
"video",
|
|
442
445
|
"img",
|
|
@@ -462,73 +465,73 @@ function ht() {
|
|
|
462
465
|
Jt,
|
|
463
466
|
Yt,
|
|
464
467
|
B
|
|
465
|
-
],
|
|
468
|
+
], we), en = v([
|
|
466
469
|
"mi",
|
|
467
470
|
"mo",
|
|
468
471
|
"mn",
|
|
469
472
|
"ms",
|
|
470
473
|
"mtext"
|
|
471
|
-
]), tn = w({}, en), nn =
|
|
474
|
+
]), tn = w({}, en), nn = v(["annotation-xml"]), rn = w({}, nn), an = w({}, [
|
|
472
475
|
"title",
|
|
473
476
|
"style",
|
|
474
477
|
"font",
|
|
475
478
|
"a",
|
|
476
479
|
"script"
|
|
477
|
-
]),
|
|
480
|
+
]), on = null, sn = ["application/xhtml+xml", "text/html"], V = null, cn = null, ln = n.createElement("form"), un = function(e) {
|
|
478
481
|
return e instanceof RegExp || e instanceof Function;
|
|
479
|
-
},
|
|
482
|
+
}, dn = function() {
|
|
480
483
|
let e = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {};
|
|
481
|
-
if (
|
|
482
|
-
(!e || typeof e != "object") && (e = {}), e =
|
|
483
|
-
transform:
|
|
484
|
+
if (cn && cn === e) return;
|
|
485
|
+
(!e || typeof e != "object") && (e = {}), e = E(e), on = sn.indexOf(e.PARSER_MEDIA_TYPE) === -1 ? "text/html" : e.PARSER_MEDIA_TYPE, V = on === "application/xhtml+xml" ? we : Ce, A = mt(e, "ALLOWED_TAGS", wt, { transform: V }), j = mt(e, "ALLOWED_ATTR", Tt, { transform: V }), Qt = mt(e, "ALLOWED_NAMESPACES", $t, { transform: we }), Kt = mt(e, "ADD_URI_SAFE_ATTR", qt, {
|
|
486
|
+
transform: V,
|
|
484
487
|
base: qt
|
|
485
|
-
}), Wt =
|
|
486
|
-
transform:
|
|
488
|
+
}), Wt = mt(e, "ADD_DATA_URI_TAGS", Gt, {
|
|
489
|
+
transform: V,
|
|
487
490
|
base: Gt
|
|
488
|
-
}),
|
|
489
|
-
let t =
|
|
490
|
-
if (
|
|
491
|
+
}), z = mt(e, "FORBID_CONTENTS", Ut, { transform: V }), Et = mt(e, "FORBID_TAGS", E({}), { transform: V }), Dt = mt(e, "FORBID_ATTR", E({}), { transform: V }), R = b(e, "USE_PROFILES") ? e.USE_PROFILES && typeof e.USE_PROFILES == "object" ? E(e.USE_PROFILES) : e.USE_PROFILES : !1, Ot = e.ALLOW_ARIA_ATTR !== !1, kt = e.ALLOW_DATA_ATTR !== !1, At = e.ALLOW_UNKNOWN_PROTOCOLS || !1, jt = e.ALLOW_SELF_CLOSE_IN_ATTR !== !1, P = e.SAFE_FOR_TEMPLATES || !1, F = e.SAFE_FOR_XML !== !1, I = e.WHOLE_DOCUMENT || !1, L = e.RETURN_DOM || !1, It = e.RETURN_DOM_FRAGMENT || !1, Lt = e.RETURN_TRUSTED_TYPE || !1, Ft = e.FORCE_BODY || !1, Rt = e.SANITIZE_DOM !== !1, zt = e.SANITIZE_NAMED_PROPS || !1, Vt = e.KEEP_CONTENT !== !1, Ht = e.IN_PLACE || !1, Ct = Ie(e.ALLOWED_URI_REGEXP) ? e.ALLOWED_URI_REGEXP : $e, Xt = typeof e.NAMESPACE == "string" ? e.NAMESPACE : B, tn = ht(e, "MATHML_TEXT_INTEGRATION_POINTS", () => w({}, en)), rn = ht(e, "HTML_INTEGRATION_POINTS", () => w({}, nn));
|
|
492
|
+
let t = ht(e, "CUSTOM_ELEMENT_HANDLING", () => pe(null));
|
|
493
|
+
if (M = pe(null), b(t, "tagNameCheck") && un(t.tagNameCheck) && (M.tagNameCheck = t.tagNameCheck), b(t, "attributeNameCheck") && un(t.attributeNameCheck) && (M.attributeNameCheck = t.attributeNameCheck), b(t, "allowCustomizedBuiltInElements") && typeof t.allowCustomizedBuiltInElements == "boolean" && (M.allowCustomizedBuiltInElements = t.allowCustomizedBuiltInElements), y(M), P && (kt = !1), It && (L = !0), R && (A = w({}, Ue), j = pe(null), R.html === !0 && (w(A, Le), w(j, We)), R.svg === !0 && (w(A, Re), w(j, Ge), w(j, qe)), R.svgFilters === !0 && (w(A, ze), w(j, Ge), w(j, qe)), R.mathMl === !0 && (w(A, Ve), w(j, Ke), w(j, qe))), N.tagCheck = null, N.attributeCheck = null, b(e, "ADD_TAGS") && (typeof e.ADD_TAGS == "function" ? N.tagCheck = e.ADD_TAGS : Se(e.ADD_TAGS) && (A === wt && (A = E(A)), w(A, e.ADD_TAGS, V))), b(e, "ADD_ATTR") && (typeof e.ADD_ATTR == "function" ? N.attributeCheck = e.ADD_ATTR : Se(e.ADD_ATTR) && (j === Tt && (j = E(j)), w(j, e.ADD_ATTR, V))), b(e, "ADD_FORBID_CONTENTS") && Se(e.ADD_FORBID_CONTENTS) && (z === Ut && (z = E(z)), w(z, e.ADD_FORBID_CONTENTS, V)), Vt && (A["#text"] = !0), I && w(A, [
|
|
491
494
|
"html",
|
|
492
495
|
"head",
|
|
493
496
|
"body"
|
|
494
|
-
]),
|
|
495
|
-
if (typeof e.TRUSTED_TYPES_POLICY.createHTML != "function") throw
|
|
496
|
-
if (typeof e.TRUSTED_TYPES_POLICY.createScriptURL != "function") throw
|
|
497
|
-
let t =
|
|
498
|
-
|
|
497
|
+
]), A.table && (w(A, ["tbody"]), delete Et.tbody), e.TRUSTED_TYPES_POLICY) {
|
|
498
|
+
if (typeof e.TRUSTED_TYPES_POLICY.createHTML != "function") throw S("TRUSTED_TYPES_POLICY configuration option must provide a \"createHTML\" hook.");
|
|
499
|
+
if (typeof e.TRUSTED_TYPES_POLICY.createScriptURL != "function") throw S("TRUSTED_TYPES_POLICY configuration option must provide a \"createScriptURL\" hook.");
|
|
500
|
+
let t = g;
|
|
501
|
+
g = e.TRUSTED_TYPES_POLICY;
|
|
499
502
|
try {
|
|
500
|
-
|
|
503
|
+
_ = he("");
|
|
501
504
|
} catch (e) {
|
|
502
|
-
throw
|
|
505
|
+
throw g = t, e;
|
|
503
506
|
}
|
|
504
|
-
} else e.TRUSTED_TYPES_POLICY === null ? (
|
|
505
|
-
|
|
506
|
-
},
|
|
507
|
-
...Le,
|
|
507
|
+
} else e.TRUSTED_TYPES_POLICY === null ? (g = void 0, _ = "") : (g === void 0 && (g = ke()), g && typeof _ == "string" && (_ = he("")));
|
|
508
|
+
v && v(e), cn = e;
|
|
509
|
+
}, fn = w({}, [
|
|
508
510
|
...Re,
|
|
509
|
-
...ze
|
|
510
|
-
|
|
511
|
-
|
|
512
|
-
|
|
513
|
-
return t.namespaceURI === B ? e === "math" : t.namespaceURI === Yt ? e === "math" && rn[n] : !!fn[e];
|
|
511
|
+
...ze,
|
|
512
|
+
...Be
|
|
513
|
+
]), pn = w({}, [...Ve, ...He]), mn = function(e, t, n) {
|
|
514
|
+
return t.namespaceURI === B ? e === "svg" : t.namespaceURI === Jt ? e === "svg" && (n === "annotation-xml" || tn[n]) : !!fn[e];
|
|
514
515
|
}, hn = function(e, t, n) {
|
|
515
|
-
return t.namespaceURI ===
|
|
516
|
-
}, gn = function(e) {
|
|
517
|
-
|
|
516
|
+
return t.namespaceURI === B ? e === "math" : t.namespaceURI === Yt ? e === "math" && rn[n] : !!pn[e];
|
|
517
|
+
}, gn = function(e, t, n) {
|
|
518
|
+
return t.namespaceURI === Yt && !rn[n] || t.namespaceURI === Jt && !tn[n] ? !1 : !pn[e] && (an[e] || !fn[e]);
|
|
519
|
+
}, _n = function(e) {
|
|
520
|
+
let t = te(e);
|
|
518
521
|
(!t || !t.tagName) && (t = {
|
|
519
522
|
namespaceURI: Xt,
|
|
520
523
|
tagName: "template"
|
|
521
524
|
});
|
|
522
|
-
let n =
|
|
523
|
-
return Qt[e.namespaceURI] ? e.namespaceURI === Yt ?
|
|
524
|
-
},
|
|
525
|
-
|
|
525
|
+
let n = Ce(e.tagName), r = Ce(t.tagName);
|
|
526
|
+
return Qt[e.namespaceURI] ? e.namespaceURI === Yt ? mn(n, t, r) : e.namespaceURI === Jt ? hn(n, t, r) : e.namespaceURI === B ? gn(n, t, r) : !!(on === "application/xhtml+xml" && Qt[e.namespaceURI]) : !1;
|
|
527
|
+
}, H = function(e) {
|
|
528
|
+
be(t.removed, { element: e });
|
|
526
529
|
try {
|
|
527
|
-
|
|
530
|
+
te(e).removeChild(e);
|
|
528
531
|
} catch {
|
|
529
|
-
if (p(e), !
|
|
532
|
+
if (p(e), !te(e)) throw S("a node selected for removal could not be detached from its tree and cannot be safely returned; refusing to sanitize in place");
|
|
530
533
|
}
|
|
531
|
-
},
|
|
534
|
+
}, vn = function(e, t, n) {
|
|
532
535
|
try {
|
|
533
536
|
m(e, t);
|
|
534
537
|
} catch {
|
|
@@ -536,31 +539,31 @@ function ht() {
|
|
|
536
539
|
e.removeAttribute(n);
|
|
537
540
|
} catch {}
|
|
538
541
|
}
|
|
539
|
-
},
|
|
540
|
-
|
|
542
|
+
}, yn = function(e) {
|
|
543
|
+
xn(e);
|
|
541
544
|
let t = h(e);
|
|
542
545
|
if (t) {
|
|
543
546
|
let e = [];
|
|
544
|
-
|
|
545
|
-
|
|
546
|
-
}),
|
|
547
|
+
_e(t, (t) => {
|
|
548
|
+
be(e, t);
|
|
549
|
+
}), _e(e, (e) => {
|
|
547
550
|
try {
|
|
548
551
|
p(e);
|
|
549
552
|
} catch {}
|
|
550
553
|
});
|
|
551
554
|
}
|
|
552
|
-
let n =
|
|
555
|
+
let n = re(e);
|
|
553
556
|
if (n) for (let t = n.length - 1; t >= 0; --t) {
|
|
554
557
|
let r = n[t], i = r && r.name;
|
|
555
|
-
typeof i == "string" &&
|
|
558
|
+
typeof i == "string" && vn(e, r, i);
|
|
556
559
|
}
|
|
557
|
-
},
|
|
560
|
+
}, U = function(e, n, r) {
|
|
558
561
|
if (!r) try {
|
|
559
562
|
r = n.getAttributeNode(e);
|
|
560
563
|
} catch {
|
|
561
564
|
r = null;
|
|
562
565
|
}
|
|
563
|
-
|
|
566
|
+
be(t.removed, {
|
|
564
567
|
attribute: r || null,
|
|
565
568
|
from: n
|
|
566
569
|
});
|
|
@@ -571,112 +574,112 @@ function ht() {
|
|
|
571
574
|
n.removeAttribute(e);
|
|
572
575
|
} catch {}
|
|
573
576
|
}
|
|
574
|
-
if (e === "is") if (
|
|
575
|
-
|
|
577
|
+
if (e === "is") if (L || It) try {
|
|
578
|
+
H(n);
|
|
576
579
|
} catch {}
|
|
577
580
|
else try {
|
|
578
581
|
n.setAttribute(e, "");
|
|
579
582
|
} catch {}
|
|
580
|
-
},
|
|
581
|
-
let t =
|
|
583
|
+
}, bn = function(e) {
|
|
584
|
+
let t = re(e);
|
|
582
585
|
if (t) for (let n = t.length - 1; n >= 0; --n) {
|
|
583
586
|
let r = t[n], i = r && r.name;
|
|
584
|
-
typeof i != "string" ||
|
|
587
|
+
typeof i != "string" || j[V(i)] || vn(e, r, i);
|
|
585
588
|
}
|
|
586
|
-
},
|
|
589
|
+
}, xn = function(e) {
|
|
587
590
|
let t = [e];
|
|
588
591
|
for (; t.length > 0;) {
|
|
589
592
|
let e = t.pop();
|
|
590
|
-
|
|
593
|
+
se(e) === O.element && bn(e);
|
|
591
594
|
let n = h(e);
|
|
592
595
|
if (n) for (let e = n.length - 1; e >= 0; --e) t.push(n[e]);
|
|
593
596
|
}
|
|
594
|
-
},
|
|
595
|
-
return
|
|
596
|
-
},
|
|
597
|
-
if (!
|
|
597
|
+
}, W = function(e, t) {
|
|
598
|
+
return F ? e === "patchsrc" || e === "for" && t !== "label" && t !== "output" : !1;
|
|
599
|
+
}, Sn = function(e) {
|
|
600
|
+
if (!F) return;
|
|
598
601
|
let t = [e];
|
|
599
602
|
for (; t.length > 0;) {
|
|
600
|
-
let e = t.pop(), n =
|
|
601
|
-
if (n ===
|
|
603
|
+
let e = t.pop(), n = se(e);
|
|
604
|
+
if (n === O.processingInstruction || n === O.comment && x(at, e.data)) {
|
|
602
605
|
try {
|
|
603
606
|
p(e);
|
|
604
607
|
} catch {}
|
|
605
608
|
continue;
|
|
606
609
|
}
|
|
607
|
-
if (n ===
|
|
608
|
-
let t = e, n =
|
|
610
|
+
if (n === O.element) {
|
|
611
|
+
let t = e, n = V(ce(e));
|
|
609
612
|
try {
|
|
610
|
-
t.hasAttribute && t.hasAttribute("patchsrc") && t.removeAttribute("patchsrc"), t.hasAttribute && t.hasAttribute("for") &&
|
|
613
|
+
t.hasAttribute && t.hasAttribute("patchsrc") && t.removeAttribute("patchsrc"), t.hasAttribute && t.hasAttribute("for") && W("for", n) && t.removeAttribute("for");
|
|
611
614
|
} catch {}
|
|
612
615
|
}
|
|
613
616
|
let r = h(e);
|
|
614
617
|
if (r) for (let e = r.length - 1; e >= 0; --e) t.push(r[e]);
|
|
615
618
|
}
|
|
616
|
-
},
|
|
619
|
+
}, Cn = function(e) {
|
|
617
620
|
let t = null, r = null;
|
|
618
|
-
if (
|
|
621
|
+
if (Ft) e = "<remove></remove>" + e;
|
|
619
622
|
else {
|
|
620
|
-
let t =
|
|
623
|
+
let t = Te(e, /^[\r\n\t ]+/);
|
|
621
624
|
r = t && t[0];
|
|
622
625
|
}
|
|
623
|
-
|
|
624
|
-
let i =
|
|
626
|
+
on === "application/xhtml+xml" && Xt === B && (e = "<html xmlns=\"http://www.w3.org/1999/xhtml\"><head></head><body>" + e + "</body></html>");
|
|
627
|
+
let i = g ? he(e) : e;
|
|
625
628
|
if (Xt === B) try {
|
|
626
|
-
t = new l().parseFromString(i,
|
|
629
|
+
t = new l().parseFromString(i, on);
|
|
627
630
|
} catch {}
|
|
628
631
|
if (!t || !t.documentElement) {
|
|
629
|
-
t =
|
|
632
|
+
t = je.createDocument(Xt, "template", null);
|
|
630
633
|
try {
|
|
631
|
-
t.documentElement.innerHTML = Zt ?
|
|
634
|
+
t.documentElement.innerHTML = Zt ? _ : i;
|
|
632
635
|
} catch {}
|
|
633
636
|
}
|
|
634
637
|
let a = t.body || t.documentElement;
|
|
635
|
-
return e && r && a.insertBefore(n.createTextNode(r), a.childNodes[0] || null), Xt === B ?
|
|
636
|
-
},
|
|
637
|
-
let t =
|
|
638
|
-
return
|
|
639
|
-
},
|
|
640
|
-
return e =
|
|
641
|
-
},
|
|
638
|
+
return e && r && a.insertBefore(n.createTextNode(r), a.childNodes[0] || null), Xt === B ? C.call(t, I ? "html" : "body")[0] : I ? t.documentElement : a;
|
|
639
|
+
}, wn = function(e) {
|
|
640
|
+
let t = oe ? oe(e) : e.ownerDocument;
|
|
641
|
+
return Me.call(t || e, e, c.SHOW_ELEMENT | c.SHOW_COMMENT | c.SHOW_TEXT | c.SHOW_PROCESSING_INSTRUCTION | c.SHOW_CDATA_SECTION, null);
|
|
642
|
+
}, Tn = function(e) {
|
|
643
|
+
return e = Ee(e, ct, " "), e = Ee(e, _t, " "), e = Ee(e, vt, " "), e;
|
|
644
|
+
}, En = function(e) {
|
|
642
645
|
e.normalize();
|
|
643
|
-
let t =
|
|
644
|
-
for (; r;) r.data =
|
|
646
|
+
let t = oe ? oe(e) : e.ownerDocument, n = Me.call(t || e, e, c.SHOW_TEXT | c.SHOW_COMMENT | c.SHOW_CDATA_SECTION | c.SHOW_PROCESSING_INSTRUCTION, null), r = n.nextNode();
|
|
647
|
+
for (; r;) r.data = Tn(r.data), r = n.nextNode();
|
|
645
648
|
let i = e.querySelectorAll?.call(e, "template");
|
|
646
|
-
i &&
|
|
647
|
-
|
|
649
|
+
i && _e(i, (e) => {
|
|
650
|
+
K(e.content) && En(e.content);
|
|
648
651
|
});
|
|
649
|
-
},
|
|
650
|
-
let t =
|
|
651
|
-
return typeof t != "string" ||
|
|
652
|
-
},
|
|
653
|
-
if (!
|
|
652
|
+
}, G = function(e) {
|
|
653
|
+
let t = ae ? ae(e) : null;
|
|
654
|
+
return typeof t != "string" || V(t) !== "form" ? !1 : typeof e.nodeName != "string" || typeof e.textContent != "string" || typeof e.removeChild != "function" || e.attributes !== re(e) || typeof e.removeAttribute != "function" || typeof e.removeAttributeNode != "function" || typeof e.getAttributeNode != "function" || typeof e.setAttribute != "function" || typeof e.namespaceURI != "string" || typeof e.insertBefore != "function" || typeof e.hasChildNodes != "function" || e.nodeType !== ie(e) || e.childNodes !== h(e);
|
|
655
|
+
}, K = function(e) {
|
|
656
|
+
if (!ie || typeof e != "object" || !e) return !1;
|
|
654
657
|
try {
|
|
655
|
-
return
|
|
658
|
+
return ie(e) === O.documentFragment;
|
|
656
659
|
} catch {
|
|
657
660
|
return !1;
|
|
658
661
|
}
|
|
659
|
-
},
|
|
660
|
-
if (!
|
|
662
|
+
}, q = function(e) {
|
|
663
|
+
if (!ie || typeof e != "object" || !e) return !1;
|
|
661
664
|
try {
|
|
662
|
-
return typeof
|
|
665
|
+
return typeof ie(e) == "number";
|
|
663
666
|
} catch {
|
|
664
667
|
return !1;
|
|
665
668
|
}
|
|
666
669
|
};
|
|
667
|
-
function
|
|
668
|
-
e.length !== 0 &&
|
|
669
|
-
e.call(t, n, r,
|
|
670
|
+
function J(e, n, r) {
|
|
671
|
+
e.length !== 0 && _e(e, (e) => {
|
|
672
|
+
e.call(t, n, r, cn);
|
|
670
673
|
});
|
|
671
674
|
}
|
|
672
|
-
let
|
|
673
|
-
return !!(
|
|
674
|
-
},
|
|
675
|
-
return e instanceof RegExp ?
|
|
676
|
-
},
|
|
677
|
-
if (!
|
|
678
|
-
if (
|
|
679
|
-
let t =
|
|
675
|
+
let Y = function(e, t) {
|
|
676
|
+
return !!(F && e.hasChildNodes() && !q(e.firstElementChild) && x(it, e.textContent) && x(it, e.innerHTML) || F && e.namespaceURI === B && lt[t] && (q(e.firstElementChild) || typeof e.textContent == "string" && x(ut[t], e.textContent)) || e.nodeType === O.processingInstruction || F && e.nodeType === O.comment && x(at, e.data));
|
|
677
|
+
}, X = function(e, t) {
|
|
678
|
+
return e instanceof RegExp ? x(e, t) : e instanceof Function && !!e(t, ...[...arguments].slice(2));
|
|
679
|
+
}, Dn = function(e, t, n) {
|
|
680
|
+
if (!Et[t] && Mn(t) && X(M.tagNameCheck, t)) return !1;
|
|
681
|
+
if (Vt && !z[t]) {
|
|
682
|
+
let t = te(e), r = h(e);
|
|
680
683
|
if (r && t) {
|
|
681
684
|
let i = r.length;
|
|
682
685
|
for (let a = i - 1; a >= 0; --a) {
|
|
@@ -685,35 +688,35 @@ function ht() {
|
|
|
685
688
|
}
|
|
686
689
|
}
|
|
687
690
|
}
|
|
688
|
-
return
|
|
689
|
-
},
|
|
690
|
-
return e.length === 0 ? t : t === n || t === r ?
|
|
691
|
-
},
|
|
692
|
-
return e === t ||
|
|
693
|
-
},
|
|
694
|
-
if (
|
|
695
|
-
if (
|
|
696
|
-
let r =
|
|
697
|
-
if (
|
|
691
|
+
return H(e), !0;
|
|
692
|
+
}, Z = function(e, t, n, r) {
|
|
693
|
+
return e.length === 0 ? t : t === n || t === r ? E(t) : t;
|
|
694
|
+
}, On = function(e, t) {
|
|
695
|
+
return e === t || te(e) !== null ? !1 : (Ht && xn(e), !0);
|
|
696
|
+
}, kn = function(e, n) {
|
|
697
|
+
if (J(T.beforeSanitizeElements, e, null), On(e, n)) return !0;
|
|
698
|
+
if (G(e)) return H(e), !0;
|
|
699
|
+
let r = V(ce(e));
|
|
700
|
+
if (A = Z(T.uponSanitizeElement, A, wt, Nt), J(T.uponSanitizeElement, e, {
|
|
698
701
|
tagName: r,
|
|
699
|
-
allowedTags:
|
|
700
|
-
}),
|
|
701
|
-
if (
|
|
702
|
-
if (
|
|
703
|
-
let t =
|
|
704
|
-
return t === !1 && (
|
|
702
|
+
allowedTags: A
|
|
703
|
+
}), On(e, n)) return !0;
|
|
704
|
+
if (Y(e, r)) return H(e), !0;
|
|
705
|
+
if (Et[r] || !(N.tagCheck instanceof Function && N.tagCheck(r)) && !A[r]) {
|
|
706
|
+
let t = Dn(e, r, n);
|
|
707
|
+
return t === !1 && (J(T.afterSanitizeElements, e, null), On(e, n)) ? !0 : t;
|
|
705
708
|
}
|
|
706
|
-
if (
|
|
707
|
-
if (
|
|
708
|
-
let n =
|
|
709
|
-
e.textContent !== n && (
|
|
709
|
+
if (se(e) === O.element && !_n(e) || (r === "noscript" || r === "noembed" || r === "noframes") && x(ot, e.innerHTML)) return H(e), !0;
|
|
710
|
+
if (P && e.nodeType === O.text) {
|
|
711
|
+
let n = Tn(e.textContent);
|
|
712
|
+
e.textContent !== n && (be(t.removed, { element: e.cloneNode() }), e.textContent = n);
|
|
710
713
|
}
|
|
711
|
-
return
|
|
712
|
-
},
|
|
713
|
-
if (
|
|
714
|
-
let i =
|
|
715
|
-
return
|
|
716
|
-
},
|
|
714
|
+
return J(T.afterSanitizeElements, e, null), On(e, n);
|
|
715
|
+
}, An = function(e, t, r) {
|
|
716
|
+
if (Dt[t] || W(t, e) || Rt && (t === "id" || t === "name") && (r in n || r in ln)) return !1;
|
|
717
|
+
let i = j[t] || N.attributeCheck instanceof Function && N.attributeCheck(t, e);
|
|
718
|
+
return kt && x(yt, t) || Ot && x(bt, t) ? !0 : i ? Kt[t] || x(Ct, Ee(r, St, "")) || (t === "src" || t === "xlink:href" || t === "href") && e !== "script" && De(r, "data:") === 0 && Wt[e] || At && !x(xt, Ee(r, St, "")) ? !0 : !r : Mn(e) && X(M.tagNameCheck, e) && X(M.attributeNameCheck, t, e) || t === "is" && M.allowCustomizedBuiltInElements && X(M.tagNameCheck, r);
|
|
719
|
+
}, jn = w({}, [
|
|
717
720
|
"annotation-xml",
|
|
718
721
|
"color-profile",
|
|
719
722
|
"font-face",
|
|
@@ -722,67 +725,67 @@ function ht() {
|
|
|
722
725
|
"font-face-src",
|
|
723
726
|
"font-face-uri",
|
|
724
727
|
"missing-glyph"
|
|
725
|
-
]),
|
|
726
|
-
return !
|
|
727
|
-
},
|
|
728
|
-
if (
|
|
729
|
-
case "TrustedHTML": return
|
|
730
|
-
case "TrustedScriptURL": return
|
|
728
|
+
]), Mn = function(e) {
|
|
729
|
+
return !jn[Ce(e)] && x(k, e);
|
|
730
|
+
}, Nn = function(e, t, n, r) {
|
|
731
|
+
if (g && typeof u == "object" && typeof u.getAttributeType == "function" && !n) switch (u.getAttributeType(e, t)) {
|
|
732
|
+
case "TrustedHTML": return he(r);
|
|
733
|
+
case "TrustedScriptURL": return ge(r);
|
|
731
734
|
}
|
|
732
735
|
return r;
|
|
733
|
-
},
|
|
736
|
+
}, Pn = function(e, t, n, r) {
|
|
734
737
|
try {
|
|
735
|
-
return n ? e.setAttributeNS(n, t, r) : e.setAttribute(t, r),
|
|
738
|
+
return n ? e.setAttributeNS(n, t, r) : e.setAttribute(t, r), G(e) ? (H(e), !1) : !0;
|
|
736
739
|
} catch {
|
|
737
|
-
return
|
|
740
|
+
return U(t, e), !1;
|
|
738
741
|
}
|
|
739
|
-
},
|
|
740
|
-
if (
|
|
742
|
+
}, Fn = function(e, n) {
|
|
743
|
+
if (J(T.beforeSanitizeAttributes, e, null), On(e, n)) return;
|
|
741
744
|
let r = e.attributes;
|
|
742
|
-
if (!r ||
|
|
743
|
-
|
|
745
|
+
if (!r || G(e)) return;
|
|
746
|
+
j = Z(T.uponSanitizeAttribute, j, Tt, Pt);
|
|
744
747
|
let i = {
|
|
745
748
|
attrName: "",
|
|
746
749
|
attrValue: "",
|
|
747
750
|
keepAttr: !0,
|
|
748
|
-
allowedAttributes:
|
|
751
|
+
allowedAttributes: j,
|
|
749
752
|
forceKeepAttr: void 0
|
|
750
|
-
}, a = r.length, o =
|
|
753
|
+
}, a = r.length, o = V(e.nodeName);
|
|
751
754
|
for (; a--;) {
|
|
752
|
-
let n = r[a], s = n.name, c = n.namespaceURI, l = n.value, u =
|
|
753
|
-
if (i.attrName = u, i.attrValue = f, i.keepAttr = !0, i.forceKeepAttr = void 0,
|
|
754
|
-
|
|
755
|
+
let n = r[a], s = n.name, c = n.namespaceURI, l = n.value, u = V(s), d = l, f = s === "value" ? d : Oe(d), p = !1;
|
|
756
|
+
if (i.attrName = u, i.attrValue = f, i.keepAttr = !0, i.forceKeepAttr = void 0, J(T.uponSanitizeAttribute, e, i), f = i.attrValue, zt && (u === "id" || u === "name") && De(f, Bt) !== 0 && (U(s, e, n), f = Bt + f, p = !0), F && x(/((--!?|])>)|<\/(style|script|title|xmp|textarea|noscript|iframe|noembed|noframes)/i, f)) {
|
|
757
|
+
U(s, e, n);
|
|
755
758
|
continue;
|
|
756
759
|
}
|
|
757
|
-
if (u === "attributename" &&
|
|
758
|
-
|
|
760
|
+
if (u === "attributename" && Te(f, "href")) {
|
|
761
|
+
U(s, e, n);
|
|
759
762
|
continue;
|
|
760
763
|
}
|
|
761
764
|
if (!i.forceKeepAttr) {
|
|
762
765
|
if (!i.keepAttr) {
|
|
763
|
-
|
|
766
|
+
U(s, e, n);
|
|
764
767
|
continue;
|
|
765
768
|
}
|
|
766
|
-
if (!
|
|
767
|
-
|
|
769
|
+
if (!jt && x(st, f)) {
|
|
770
|
+
U(s, e, n);
|
|
768
771
|
continue;
|
|
769
772
|
}
|
|
770
|
-
if (
|
|
771
|
-
|
|
773
|
+
if (P && (f = Tn(f)), !An(o, u, f)) {
|
|
774
|
+
U(s, e, n);
|
|
772
775
|
continue;
|
|
773
776
|
}
|
|
774
|
-
f =
|
|
777
|
+
f = Nn(o, u, c, f), f !== d && Pn(e, s, c, f) && p && ye(t.removed);
|
|
775
778
|
}
|
|
776
779
|
}
|
|
777
|
-
|
|
778
|
-
}, Fn = function(e) {
|
|
779
|
-
let t = null, n = Sn(e);
|
|
780
|
-
for (X(O.beforeSanitizeShadowDOM, e, null); t = n.nextNode();) if (X(O.uponSanitizeShadowNode, t, null), On(t, e), Pn(t, e), J(t.content) && Fn(t.content), _(t) === D.element) {
|
|
781
|
-
let e = te(t);
|
|
782
|
-
J(e) && (In(e), Fn(e));
|
|
783
|
-
}
|
|
784
|
-
X(O.afterSanitizeShadowDOM, e, null);
|
|
780
|
+
J(T.afterSanitizeAttributes, e, null), On(e, n);
|
|
785
781
|
}, In = function(e) {
|
|
782
|
+
let t = null, n = wn(e);
|
|
783
|
+
for (J(T.beforeSanitizeShadowDOM, e, null); t = n.nextNode();) if (J(T.uponSanitizeShadowNode, t, null), kn(t, e), Fn(t, e), K(t.content) && In(t.content), se(t) === O.element) {
|
|
784
|
+
let e = ne(t);
|
|
785
|
+
K(e) && (Ln(e), In(e));
|
|
786
|
+
}
|
|
787
|
+
J(T.afterSanitizeShadowDOM, e, null);
|
|
788
|
+
}, Ln = function(e) {
|
|
786
789
|
let t = [{
|
|
787
790
|
node: e,
|
|
788
791
|
shadow: null
|
|
@@ -790,27 +793,27 @@ function ht() {
|
|
|
790
793
|
for (; t.length > 0;) {
|
|
791
794
|
let e = t.pop();
|
|
792
795
|
if (e.shadow) {
|
|
793
|
-
|
|
796
|
+
In(e.shadow);
|
|
794
797
|
continue;
|
|
795
798
|
}
|
|
796
|
-
let n = e.node, r =
|
|
799
|
+
let n = e.node, r = se(n) === O.element, i = h(n);
|
|
797
800
|
if (i) for (let e = i.length - 1; e >= 0; --e) t.push({
|
|
798
801
|
node: i[e],
|
|
799
802
|
shadow: null
|
|
800
803
|
});
|
|
801
804
|
if (r) {
|
|
802
|
-
let e =
|
|
803
|
-
if (typeof e == "string" &&
|
|
805
|
+
let e = ae ? ae(n) : null;
|
|
806
|
+
if (typeof e == "string" && V(e) === "template") {
|
|
804
807
|
let e = n.content;
|
|
805
|
-
|
|
808
|
+
K(e) && t.push({
|
|
806
809
|
node: e,
|
|
807
810
|
shadow: null
|
|
808
811
|
});
|
|
809
812
|
}
|
|
810
813
|
}
|
|
811
814
|
if (r) {
|
|
812
|
-
let e =
|
|
813
|
-
|
|
815
|
+
let e = ne(n);
|
|
816
|
+
K(e) && t.push({
|
|
814
817
|
node: null,
|
|
815
818
|
shadow: e
|
|
816
819
|
}, {
|
|
@@ -822,81 +825,81 @@ function ht() {
|
|
|
822
825
|
};
|
|
823
826
|
return t.sanitize = function(e) {
|
|
824
827
|
let n = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {}, i = null, a = null, o = null, s = null;
|
|
825
|
-
if (Zt = !e, Zt && (e = "<!-->"), typeof e != "string" && !
|
|
828
|
+
if (Zt = !e, Zt && (e = "<!-->"), typeof e != "string" && !q(e) && (e = Fe(e), typeof e != "string")) throw S("dirty is not a string, aborting");
|
|
826
829
|
if (!t.isSupported) return e;
|
|
827
|
-
|
|
828
|
-
let c =
|
|
830
|
+
Mt ? (A = Nt, j = Pt) : dn(n), (T.uponSanitizeElement.length > 0 || T.uponSanitizeAttribute.length > 0) && (A = E(A)), T.uponSanitizeAttribute.length > 0 && (j = E(j)), t.removed = [];
|
|
831
|
+
let c = Ht && typeof e != "string" && q(e);
|
|
829
832
|
if (c) {
|
|
830
|
-
|
|
831
|
-
let t =
|
|
833
|
+
Sn(e);
|
|
834
|
+
let t = ce(e);
|
|
832
835
|
if (typeof t == "string") {
|
|
833
|
-
let n =
|
|
834
|
-
if (!
|
|
836
|
+
let n = V(t);
|
|
837
|
+
if (!A[n] || Et[n]) throw yn(e), S("root node is forbidden and cannot be sanitized in-place");
|
|
835
838
|
}
|
|
836
|
-
if (
|
|
839
|
+
if (G(e)) throw yn(e), S("root node is clobbered and cannot be sanitized in-place");
|
|
837
840
|
try {
|
|
838
|
-
|
|
841
|
+
Ln(e);
|
|
839
842
|
} catch (t) {
|
|
840
|
-
throw
|
|
843
|
+
throw yn(e), t;
|
|
841
844
|
}
|
|
842
|
-
} else if (
|
|
845
|
+
} else if (q(e)) i = Cn("<!---->"), a = i.ownerDocument.importNode(e, !0), a.nodeType === O.element && a.nodeName === "BODY" || a.nodeName === "HTML" ? i = a : i.appendChild(a), Ln(i);
|
|
843
846
|
else {
|
|
844
|
-
if (!
|
|
845
|
-
if (i =
|
|
847
|
+
if (!L && !P && !I && e.indexOf("<") === -1) return g && Lt ? he(e) : e;
|
|
848
|
+
if (i = Cn(e), !i) return L ? null : Lt ? _ : "";
|
|
846
849
|
}
|
|
847
|
-
i &&
|
|
850
|
+
i && Ft && H(i.firstChild);
|
|
848
851
|
let l = c ? e : i;
|
|
849
852
|
try {
|
|
850
|
-
let e =
|
|
851
|
-
for (; o = e.nextNode();)
|
|
853
|
+
let e = wn(l);
|
|
854
|
+
for (; o = e.nextNode();) kn(o, l), Fn(o, l), K(o.content) && In(o.content);
|
|
852
855
|
} catch (n) {
|
|
853
|
-
throw c && (
|
|
854
|
-
e.element &&
|
|
856
|
+
throw c && (yn(e), _e(t.removed, (e) => {
|
|
857
|
+
e.element && xn(e.element);
|
|
855
858
|
})), n;
|
|
856
859
|
}
|
|
857
860
|
if (c) {
|
|
858
861
|
let n = !1;
|
|
859
|
-
if (
|
|
860
|
-
t.element && (t.element === e && (n = !0),
|
|
861
|
-
}), n) throw
|
|
862
|
-
return
|
|
862
|
+
if (_e(t.removed, (t) => {
|
|
863
|
+
t.element && (t.element === e && (n = !0), xn(t.element));
|
|
864
|
+
}), n) throw S("a node selected for removal could not be safely returned; refusing to sanitize in place");
|
|
865
|
+
return P && En(e), e;
|
|
863
866
|
}
|
|
864
|
-
if (
|
|
865
|
-
if (
|
|
867
|
+
if (L) {
|
|
868
|
+
if (P && En(i), It) for (s = Ne.call(i.ownerDocument); i.firstChild;) s.appendChild(i.firstChild);
|
|
866
869
|
else s = i;
|
|
867
|
-
return (
|
|
870
|
+
return (j.shadowroot || j.shadowrootmode) && (s = Pe.call(r, s, !0)), s;
|
|
868
871
|
}
|
|
869
|
-
let u =
|
|
870
|
-
return
|
|
872
|
+
let u = I ? i.outerHTML : i.innerHTML;
|
|
873
|
+
return I && A["!doctype"] && i.ownerDocument && i.ownerDocument.doctype && i.ownerDocument.doctype.name && x(nt, i.ownerDocument.doctype.name) && (u = "<!DOCTYPE " + i.ownerDocument.doctype.name + ">\n" + u), P && (u = Tn(u)), g && Lt ? he(u) : u;
|
|
871
874
|
}, t.setConfig = function() {
|
|
872
875
|
let e = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {};
|
|
873
|
-
|
|
876
|
+
dn(e), Mt = !0, Nt = A, Pt = j;
|
|
874
877
|
}, t.clearConfig = function() {
|
|
875
|
-
|
|
878
|
+
cn = null, Mt = !1, Nt = null, Pt = null, g = ue, _ = "";
|
|
876
879
|
}, t.isValidAttribute = function(e, t, n) {
|
|
877
|
-
|
|
878
|
-
let r =
|
|
879
|
-
return
|
|
880
|
+
cn || dn({});
|
|
881
|
+
let r = V(e), i = V(t);
|
|
882
|
+
return An(r, i, n);
|
|
880
883
|
}, t.addHook = function(e, t) {
|
|
881
|
-
typeof t == "function" &&
|
|
884
|
+
typeof t == "function" && b(T, e) && be(T[e], t);
|
|
882
885
|
}, t.removeHook = function(e, t) {
|
|
883
|
-
if (
|
|
886
|
+
if (b(T, e)) {
|
|
884
887
|
if (t !== void 0) {
|
|
885
|
-
let n =
|
|
886
|
-
return n === -1 ? void 0 :
|
|
888
|
+
let n = ve(T[e], t);
|
|
889
|
+
return n === -1 ? void 0 : xe(T[e], n, 1)[0];
|
|
887
890
|
}
|
|
888
|
-
return
|
|
891
|
+
return ye(T[e]);
|
|
889
892
|
}
|
|
890
893
|
}, t.removeHooks = function(e) {
|
|
891
|
-
|
|
894
|
+
b(T, e) && (T[e] = []);
|
|
892
895
|
}, t.removeAllHooks = function() {
|
|
893
|
-
|
|
896
|
+
T = pt();
|
|
894
897
|
}, t;
|
|
895
898
|
}
|
|
896
|
-
var
|
|
899
|
+
var _t = gt();
|
|
897
900
|
//#endregion
|
|
898
901
|
//#region node_modules/marked/lib/marked.esm.js
|
|
899
|
-
function
|
|
902
|
+
function vt() {
|
|
900
903
|
return {
|
|
901
904
|
async: !1,
|
|
902
905
|
breaks: !1,
|
|
@@ -910,12 +913,12 @@ function gt() {
|
|
|
910
913
|
walkTokens: null
|
|
911
914
|
};
|
|
912
915
|
}
|
|
913
|
-
var
|
|
914
|
-
function vt(e) {
|
|
915
|
-
_t = e;
|
|
916
|
-
}
|
|
917
|
-
var yt = { exec: () => null };
|
|
916
|
+
var yt = vt();
|
|
918
917
|
function bt(e) {
|
|
918
|
+
yt = e;
|
|
919
|
+
}
|
|
920
|
+
var xt = { exec: () => null };
|
|
921
|
+
function St(e) {
|
|
919
922
|
let t = [];
|
|
920
923
|
return (n) => {
|
|
921
924
|
let r = Math.max(0, Math.min(3, n - 1)), i = t[r];
|
|
@@ -932,7 +935,7 @@ function k(e, t = "") {
|
|
|
932
935
|
};
|
|
933
936
|
return r;
|
|
934
937
|
}
|
|
935
|
-
var
|
|
938
|
+
var Ct = ((e = "") => {
|
|
936
939
|
try {
|
|
937
940
|
return !!RegExp("(?<=1)(?<!1)" + e);
|
|
938
941
|
} catch {
|
|
@@ -989,102 +992,102 @@ var xt = ((e = "") => {
|
|
|
989
992
|
notSpaceStart: /^\S*/,
|
|
990
993
|
endingNewline: /\n$/,
|
|
991
994
|
listItemRegex: (e) => RegExp(`^( {0,3}${e})((?:[ ][^\\n]*)?(?:\\n|$))`),
|
|
992
|
-
nextBulletRegex:
|
|
993
|
-
hrRegex:
|
|
994
|
-
fencesBeginRegex:
|
|
995
|
-
headingBeginRegex:
|
|
996
|
-
htmlBeginRegex:
|
|
997
|
-
blockquoteBeginRegex:
|
|
998
|
-
},
|
|
999
|
-
blockquote: k(/^( {0,3}> ?(paragraph|[^\n]*)(?:\n|$))+/).replace("paragraph",
|
|
995
|
+
nextBulletRegex: St((e) => RegExp(`^ {0,${e}}(?:[*+-]|\\d{1,9}[.)])((?:[ ][^\\n]*)?(?:\\n|$))`)),
|
|
996
|
+
hrRegex: St((e) => RegExp(`^ {0,${e}}((?:- *){3,}|(?:_ *){3,}|(?:\\* *){3,})(?:\\n+|$)`)),
|
|
997
|
+
fencesBeginRegex: St((e) => RegExp(`^ {0,${e}}(?:\`\`\`|~~~)`)),
|
|
998
|
+
headingBeginRegex: St((e) => RegExp(`^ {0,${e}}#`)),
|
|
999
|
+
htmlBeginRegex: St((e) => RegExp(`^ {0,${e}}<(?:[a-z].*>|!--)`, "i")),
|
|
1000
|
+
blockquoteBeginRegex: St((e) => RegExp(`^ {0,${e}}>`))
|
|
1001
|
+
}, wt = /^(?:[ \t]*(?:\n|$))+/, j = /^((?: {4}| {0,3}\t)[^\n]+(?:\n(?:[ \t]*(?:\n|$))*)?)+/, Tt = /^ {0,3}(`{3,}(?=[^`\n]*(?:\n|$))|~{3,})([^\n]*)(?:\n|$)(?:|([\s\S]*?)(?:\n|$))(?: {0,3}\1[~`]* *(?=\n|$)|$)/, M = /^ {0,3}((?:-[\t ]*){3,}|(?:_[ \t]*){3,}|(?:\*[ \t]*){3,})(?:\n+|$)/, Et = /^ {0,3}(#{1,6})(?=\s|$)(.*)(?:\n+|$)/, Dt = / {0,3}(?:[*+-]|\d{1,9}[.)])/, N = /^(?!bull |blockCode|fences|blockquote|heading|html|table)((?:.|\n(?!\s*?\n|bull |blockCode|fences|blockquote|heading|html|table))+?)\n {0,3}(=+|-+) *(?:\n+|$)/, Ot = k(N).replace(/bull/g, Dt).replace(/blockCode/g, /(?: {4}| {0,3}\t)/).replace(/fences/g, / {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g, / {0,3}>/).replace(/heading/g, / {0,3}#{1,6}/).replace(/html/g, / {0,3}<[^\n>]+>\n/).replace(/\|table/g, "").getRegex(), kt = k(N).replace(/bull/g, Dt).replace(/blockCode/g, /(?: {4}| {0,3}\t)/).replace(/fences/g, / {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g, / {0,3}>/).replace(/heading/g, / {0,3}#{1,6}/).replace(/html/g, / {0,3}<[^\n>]+>\n/).replace(/table/g, / {0,3}\|?(?:[:\- ]*\|)+[\:\- ]*\n/).getRegex(), At = /^([^\n]+(?:\n(?!hr|heading|lheading|blockquote|fences|list|html|table| +\n)[^\n]+)*)/, jt = /^[^\n]+/, P = /(?!\s*\])(?:\\[\s\S]|[^\[\]\\])+/, F = k(/^ {0,3}\[(label)\]: *(?:\n[ \t]*)?([^<\s][^\s]*|<.*?>)(?:(?: +(?:\n[ \t]*)?| *\n[ \t]*)(title))? *(?:\n+|$)/).replace("label", P).replace("title", /(?:"(?:\\"?|[^"\\])*"|'[^'\n]*(?:\n[^'\n]+)*\n?'|\([^()]*\))/).getRegex(), I = k(/^(bull)([ \t][^\n]*?)?(?:\n|$)/).replace(/bull/g, Dt).getRegex(), Mt = "address|article|aside|base|basefont|blockquote|body|caption|center|col|colgroup|dd|details|dialog|dir|div|dl|dt|fieldset|figcaption|figure|footer|form|frame|frameset|h[1-6]|head|header|hr|html|iframe|legend|li|link|main|menu|menuitem|meta|nav|noframes|ol|optgroup|option|p|param|search|section|summary|table|tbody|td|tfoot|th|thead|title|tr|track|ul", Nt = /<!--(?:-?>|[\s\S]*?(?:-->|$))/, Pt = k("^ {0,3}(?:<(script|pre|style|textarea)[\\s>][\\s\\S]*?(?:</\\1>[^\\n]*\\n+|$)|comment[^\\n]*(\\n+|$)|<\\?[\\s\\S]*?(?:\\?>\\n*|$)|<![A-Z][\\s\\S]*?(?:>\\n*|$)|<!\\[CDATA\\[[\\s\\S]*?(?:\\]\\]>\\n*|$)|</?(tag)(?: +|\\n|/?>)[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$)|<(?!script|pre|style|textarea)([a-z][\\w-]*)(?:attribute)*? */?>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$)|</(?!script|pre|style|textarea)[a-z][\\w-]*\\s*>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$))", "i").replace("comment", Nt).replace("tag", Mt).replace("attribute", / +[a-zA-Z:_][\w.:-]*(?: *= *"[^"\n]*"| *= *'[^'\n]*'| *= *[^\s"'=<>`]+)?/).getRegex(), Ft = k(At).replace("hr", M).replace("heading", " {0,3}#{1,6}(?:\\s|$)").replace("|lheading", "").replace("|table", "").replace("blockquote", " {0,3}>").replace("fences", " {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list", " {0,3}(?:[*+-]|1[.)])[ \\t]+[^ \\t\\n]").replace("html", "</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag", Mt).getRegex(), L = {
|
|
1002
|
+
blockquote: k(/^( {0,3}> ?(paragraph|[^\n]*)(?:\n|$))+/).replace("paragraph", Ft).getRegex(),
|
|
1000
1003
|
code: j,
|
|
1001
|
-
def:
|
|
1002
|
-
fences:
|
|
1003
|
-
heading:
|
|
1004
|
+
def: F,
|
|
1005
|
+
fences: Tt,
|
|
1006
|
+
heading: Et,
|
|
1004
1007
|
hr: M,
|
|
1005
|
-
html:
|
|
1006
|
-
lheading:
|
|
1007
|
-
list:
|
|
1008
|
-
newline:
|
|
1009
|
-
paragraph:
|
|
1010
|
-
table:
|
|
1011
|
-
text:
|
|
1012
|
-
},
|
|
1013
|
-
...
|
|
1014
|
-
lheading:
|
|
1015
|
-
table:
|
|
1016
|
-
paragraph: k(
|
|
1017
|
-
},
|
|
1018
|
-
...
|
|
1019
|
-
html: k("^ *(?:comment *(?:\\n|\\s*$)|<(tag)[\\s\\S]+?</\\1> *(?:\\n{2,}|\\s*$)|<tag(?:\"[^\"]*\"|'[^']*'|\\s[^'\"/>\\s]*)*?/?> *(?:\\n{2,}|\\s*$))").replace("comment",
|
|
1008
|
+
html: Pt,
|
|
1009
|
+
lheading: Ot,
|
|
1010
|
+
list: I,
|
|
1011
|
+
newline: wt,
|
|
1012
|
+
paragraph: Ft,
|
|
1013
|
+
table: xt,
|
|
1014
|
+
text: jt
|
|
1015
|
+
}, It = k("^ *([^\\n ].*)\\n {0,3}((?:\\| *)?:?-+:? *(?:\\| *:?-+:? *)*(?:\\| *)?)(?:\\n((?:(?! *\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)").replace("hr", M).replace("heading", " {0,3}#{1,6}(?:\\s|$)").replace("blockquote", " {0,3}>").replace("code", "(?: {4}| {0,3} )[^\\n]").replace("fences", " {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list", " {0,3}(?:[*+-]|1[.)])[ \\t]").replace("html", "</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag", Mt).getRegex(), Lt = {
|
|
1016
|
+
...L,
|
|
1017
|
+
lheading: kt,
|
|
1018
|
+
table: It,
|
|
1019
|
+
paragraph: k(At).replace("hr", M).replace("heading", " {0,3}#{1,6}(?:\\s|$)").replace("|lheading", "").replace("table", It).replace("blockquote", " {0,3}>").replace("fences", " {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list", " {0,3}(?:[*+-]|1[.)])[ \\t]+[^ \\t\\n]").replace("html", "</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag", Mt).getRegex()
|
|
1020
|
+
}, Rt = {
|
|
1021
|
+
...L,
|
|
1022
|
+
html: k("^ *(?:comment *(?:\\n|\\s*$)|<(tag)[\\s\\S]+?</\\1> *(?:\\n{2,}|\\s*$)|<tag(?:\"[^\"]*\"|'[^']*'|\\s[^'\"/>\\s]*)*?/?> *(?:\\n{2,}|\\s*$))").replace("comment", Nt).replace(/tag/g, "(?!(?:a|em|strong|small|s|cite|q|dfn|abbr|data|time|code|var|samp|kbd|sub|sup|i|b|u|mark|ruby|rt|rp|bdi|bdo|span|br|wbr|ins|del|img)\\b)\\w+(?!:|[^\\w\\s@]*@)\\b").getRegex(),
|
|
1020
1023
|
def: /^ *\[([^\]]+)\]: *<?([^\s>]+)>?(?: +(["(][^\n]+[")]))? *(?:\n+|$)/,
|
|
1021
1024
|
heading: /^(#{1,6})(.*)(?:\n+|$)/,
|
|
1022
|
-
fences:
|
|
1025
|
+
fences: xt,
|
|
1023
1026
|
lheading: /^(.+?)\n {0,3}(=+|-+) *(?:\n+|$)/,
|
|
1024
|
-
paragraph: k(
|
|
1025
|
-
},
|
|
1026
|
-
_backpedal:
|
|
1027
|
-
anyPunctuation:
|
|
1028
|
-
autolink:
|
|
1029
|
-
blockSkip:
|
|
1030
|
-
br:
|
|
1031
|
-
code:
|
|
1032
|
-
del:
|
|
1033
|
-
delLDelim:
|
|
1034
|
-
delRDelim:
|
|
1035
|
-
emStrongLDelim:
|
|
1036
|
-
emStrongRDelimAst:
|
|
1037
|
-
emStrongRDelimUnd:
|
|
1038
|
-
escape:
|
|
1039
|
-
link:
|
|
1040
|
-
nolink:
|
|
1041
|
-
punctuation:
|
|
1042
|
-
reflink:
|
|
1043
|
-
reflinkSearch:
|
|
1044
|
-
tag:
|
|
1045
|
-
text:
|
|
1046
|
-
url:
|
|
1047
|
-
},
|
|
1048
|
-
...
|
|
1027
|
+
paragraph: k(At).replace("hr", M).replace("heading", " *#{1,6} *[^\n]").replace("lheading", Ot).replace("|table", "").replace("blockquote", " {0,3}>").replace("|fences", "").replace("|list", "").replace("|html", "").replace("|tag", "").getRegex()
|
|
1028
|
+
}, zt = /^\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/, Bt = /^(`+)([^`]|[^`][\s\S]*?[^`])\1(?!`)/, Vt = /^( {2,}|\\)\n(?!\s*$)/, Ht = /^(`+|[^`])(?:(?= {2,}\n)|[\s\S]*?(?:(?=[\\<!\[`*_]|\b_|$)|[^ ](?= {2,}\n)))/, R = /[\p{P}\p{S}]/u, z = /[\s\p{P}\p{S}]/u, Ut = /[^\s\p{P}\p{S}]/u, Wt = k(/^((?![*_])punctSpace)/, "u").replace(/punctSpace/g, z).getRegex(), Gt = /(?!~)[\p{P}\p{S}]/u, Kt = /(?!~)[\s\p{P}\p{S}]/u, qt = /(?:[^\s\p{P}\p{S}]|~)/u, Jt = k(/link|precode-code|html/, "g").replace("link", /\[(?:[^\[\]`]|(?<a>`+)[^`]+\k<a>(?!`))*?\]\((?:\\[\s\S]|[^\\\(\)]|\((?:\\[\s\S]|[^\\\(\)])*\))*\)/).replace("precode-", Ct ? "(?<!`)()" : "(^^|[^`])").replace("code", /(?<b>`+)[^`]+\k<b>(?!`)/).replace("html", /<(?! )[^<>]*?>/).getRegex(), Yt = /^(?:\*+(?:((?!\*)punct)|([^\s*]))?)|^_+(?:((?!_)punct)|([^\s_]))?/, B = k(Yt, "u").replace(/punct/g, R).getRegex(), Xt = k(Yt, "u").replace(/punct/g, Gt).getRegex(), Zt = "^[^_*]*?__[^_*]*?\\*[^_*]*?(?=__)|[^*]+(?=[^*])|(?!\\*)punct(\\*+)(?=[\\s]|$)|notPunctSpace(\\*+)(?!\\*)(?=punctSpace|$)|(?!\\*)punctSpace(\\*+)(?=notPunctSpace)|[\\s](\\*+)(?!\\*)(?=punct)|(?!\\*)punct(\\*+)(?!\\*)(?=punct)|notPunctSpace(\\*+)(?=notPunctSpace)", Qt = k(Zt, "gu").replace(/notPunctSpace/g, Ut).replace(/punctSpace/g, z).replace(/punct/g, R).getRegex(), $t = k(Zt, "gu").replace(/notPunctSpace/g, qt).replace(/punctSpace/g, Kt).replace(/punct/g, Gt).getRegex(), en = k("^[^_*]*?\\*\\*[^_*]*?_[^_*]*?(?=\\*\\*)|[^_]+(?=[^_])|(?!_)punct(_+)(?=[\\s]|$)|notPunctSpace(_+)(?!_)(?=punctSpace|$)|(?!_)punctSpace(_+)(?=notPunctSpace)|[\\s](_+)(?!_)(?=punct)|(?!_)punct(_+)(?!_)(?=punct)", "gu").replace(/notPunctSpace/g, Ut).replace(/punctSpace/g, z).replace(/punct/g, R).getRegex(), tn = k(/^~~?(?:((?!~)punct)|[^\s~])/, "u").replace(/punct/g, R).getRegex(), nn = k("^[^~]+(?=[^~])|(?!~)punct(~~?)(?=[\\s]|$)|notPunctSpace(~~?)(?!~)(?=punctSpace|$)|(?!~)punctSpace(~~?)(?=notPunctSpace)|[\\s](~~?)(?!~)(?=punct)|(?!~)punct(~~?)(?!~)(?=punct)|notPunctSpace(~~?)(?=notPunctSpace)", "gu").replace(/notPunctSpace/g, Ut).replace(/punctSpace/g, z).replace(/punct/g, R).getRegex(), rn = k(/\\(punct)/, "gu").replace(/punct/g, R).getRegex(), an = k(/^<(scheme:[^\s\x00-\x1f<>]*|email)>/).replace("scheme", /[a-zA-Z][a-zA-Z0-9+.-]{1,31}/).replace("email", /[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+(@)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)+(?![-_])/).getRegex(), on = k(Nt).replace("(?:-->|$)", "-->").getRegex(), sn = k("^comment|^</[a-zA-Z][\\w:-]*\\s*>|^<[a-zA-Z][\\w-]*(?:attribute)*?\\s*/?>|^<\\?[\\s\\S]*?\\?>|^<![a-zA-Z]+\\s[\\s\\S]*?>|^<!\\[CDATA\\[[\\s\\S]*?\\]\\]>").replace("comment", on).replace("attribute", /\s+[a-zA-Z:_][\w.:-]*(?:\s*=\s*"[^"]*"|\s*=\s*'[^']*'|\s*=\s*[^\s"'=<>`]+)?/).getRegex(), V = /(?:\[(?:\\[\s\S]|[^\[\]\\])*\]|\\[\s\S]|`+(?!`)[^`]*?`+(?!`)|``+(?=\])|[^\[\]\\`])*?/, cn = k(/^!?\[(label)\]\(\s*(href)(?:(?:[ \t]+(?:\n[ \t]*)?|\n[ \t]*)(title))?\s*\)/).replace("label", V).replace("href", /<(?:\\.|[^\n<>\\])+>|[^ \t\n\x00-\x1f]*/).replace("title", /"(?:\\"?|[^"\\])*"|'(?:\\'?|[^'\\])*'|\((?:\\\)?|[^)\\])*\)/).getRegex(), ln = k(/^!?\[(label)\]\[(ref)\]/).replace("label", V).replace("ref", P).getRegex(), un = k(/^!?\[(ref)\](?:\[\])?/).replace("ref", P).getRegex(), dn = k("reflink|nolink(?!\\()", "g").replace("reflink", ln).replace("nolink", un).getRegex(), fn = /[hH][tT][tT][pP][sS]?|[fF][tT][pP]/, pn = {
|
|
1029
|
+
_backpedal: xt,
|
|
1030
|
+
anyPunctuation: rn,
|
|
1031
|
+
autolink: an,
|
|
1032
|
+
blockSkip: Jt,
|
|
1033
|
+
br: Vt,
|
|
1034
|
+
code: Bt,
|
|
1035
|
+
del: xt,
|
|
1036
|
+
delLDelim: xt,
|
|
1037
|
+
delRDelim: xt,
|
|
1038
|
+
emStrongLDelim: B,
|
|
1039
|
+
emStrongRDelimAst: Qt,
|
|
1040
|
+
emStrongRDelimUnd: en,
|
|
1041
|
+
escape: zt,
|
|
1042
|
+
link: cn,
|
|
1043
|
+
nolink: un,
|
|
1044
|
+
punctuation: Wt,
|
|
1045
|
+
reflink: ln,
|
|
1046
|
+
reflinkSearch: dn,
|
|
1047
|
+
tag: sn,
|
|
1048
|
+
text: Ht,
|
|
1049
|
+
url: xt
|
|
1050
|
+
}, mn = {
|
|
1051
|
+
...pn,
|
|
1049
1052
|
link: k(/^!?\[(label)\]\((.*?)\)/).replace("label", V).getRegex(),
|
|
1050
1053
|
reflink: k(/^!?\[(label)\]\s*\[([^\]]*)\]/).replace("label", V).getRegex()
|
|
1051
|
-
},
|
|
1052
|
-
...
|
|
1053
|
-
emStrongRDelimAst:
|
|
1054
|
-
emStrongLDelim:
|
|
1055
|
-
delLDelim:
|
|
1056
|
-
delRDelim:
|
|
1057
|
-
url: k(/^((?:protocol):\/\/|www\.)(?:[a-zA-Z0-9\-]+\.?)+[^\s<]*|^email/).replace("protocol",
|
|
1054
|
+
}, hn = {
|
|
1055
|
+
...pn,
|
|
1056
|
+
emStrongRDelimAst: $t,
|
|
1057
|
+
emStrongLDelim: Xt,
|
|
1058
|
+
delLDelim: tn,
|
|
1059
|
+
delRDelim: nn,
|
|
1060
|
+
url: k(/^((?:protocol):\/\/|www\.)(?:[a-zA-Z0-9\-]+\.?)+[^\s<]*|^email/).replace("protocol", fn).replace("email", /[A-Za-z0-9._+-]+(@)[a-zA-Z0-9-_]+(?:\.[a-zA-Z0-9-_]*[a-zA-Z0-9])+(?![-_])/).getRegex(),
|
|
1058
1061
|
_backpedal: /(?:[^?!.,:;*_'"~()&]+|\([^)]*\)|&(?![a-zA-Z0-9]+;$)|[?!.,:;*_'"~)]+(?!$))+/,
|
|
1059
1062
|
del: /^(~~?)(?=[^\s~])((?:\\[\s\S]|[^\\])*?(?:\\[\s\S]|[^\s~\\]))\1(?=[^~]|$)/,
|
|
1060
|
-
text: k(/^([`~]+|[^`~])(?:(?= {2,}\n)|(?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)|[\s\S]*?(?:(?=[\\<!\[`*~_]|\b_|protocol:\/\/|www\.|$)|[^ ](?= {2,}\n)|[^a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-](?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)))/).replace("protocol",
|
|
1061
|
-
}, pn = {
|
|
1062
|
-
...fn,
|
|
1063
|
-
br: k(zt).replace("{2,}", "*").getRegex(),
|
|
1064
|
-
text: k(fn.text).replace("\\b_", "\\b_| {2,}\\n").replace(/\{2,\}/g, "*").getRegex()
|
|
1065
|
-
}, mn = {
|
|
1066
|
-
normal: Nt,
|
|
1067
|
-
gfm: Ft,
|
|
1068
|
-
pedantic: It
|
|
1069
|
-
}, hn = {
|
|
1070
|
-
normal: un,
|
|
1071
|
-
gfm: fn,
|
|
1072
|
-
breaks: pn,
|
|
1073
|
-
pedantic: dn
|
|
1063
|
+
text: k(/^([`~]+|[^`~])(?:(?= {2,}\n)|(?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)|[\s\S]*?(?:(?=[\\<!\[`*~_]|\b_|protocol:\/\/|www\.|$)|[^ ](?= {2,}\n)|[^a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-](?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)))/).replace("protocol", fn).getRegex()
|
|
1074
1064
|
}, gn = {
|
|
1065
|
+
...hn,
|
|
1066
|
+
br: k(Vt).replace("{2,}", "*").getRegex(),
|
|
1067
|
+
text: k(hn.text).replace("\\b_", "\\b_| {2,}\\n").replace(/\{2,\}/g, "*").getRegex()
|
|
1068
|
+
}, _n = {
|
|
1069
|
+
normal: L,
|
|
1070
|
+
gfm: Lt,
|
|
1071
|
+
pedantic: Rt
|
|
1072
|
+
}, H = {
|
|
1073
|
+
normal: pn,
|
|
1074
|
+
gfm: hn,
|
|
1075
|
+
breaks: gn,
|
|
1076
|
+
pedantic: mn
|
|
1077
|
+
}, vn = {
|
|
1075
1078
|
"&": "&",
|
|
1076
1079
|
"<": "<",
|
|
1077
1080
|
">": ">",
|
|
1078
1081
|
"\"": """,
|
|
1079
1082
|
"'": "'"
|
|
1080
|
-
},
|
|
1081
|
-
function
|
|
1083
|
+
}, yn = (e) => vn[e];
|
|
1084
|
+
function U(e, t) {
|
|
1082
1085
|
if (t) {
|
|
1083
|
-
if (A.escapeTest.test(e)) return e.replace(A.escapeReplace,
|
|
1084
|
-
} else if (A.escapeTestNoEncode.test(e)) return e.replace(A.escapeReplaceNoEncode,
|
|
1086
|
+
if (A.escapeTest.test(e)) return e.replace(A.escapeReplace, yn);
|
|
1087
|
+
} else if (A.escapeTestNoEncode.test(e)) return e.replace(A.escapeReplaceNoEncode, yn);
|
|
1085
1088
|
return e;
|
|
1086
1089
|
}
|
|
1087
|
-
function
|
|
1090
|
+
function bn(e) {
|
|
1088
1091
|
try {
|
|
1089
1092
|
e = encodeURI(e).replace(A.percentDecode, "%");
|
|
1090
1093
|
} catch {
|
|
@@ -1092,7 +1095,7 @@ function _n(e) {
|
|
|
1092
1095
|
}
|
|
1093
1096
|
return e;
|
|
1094
1097
|
}
|
|
1095
|
-
function
|
|
1098
|
+
function xn(e, t) {
|
|
1096
1099
|
let n = e.replace(A.findPipe, (e, t, n) => {
|
|
1097
1100
|
let r = !1, i = t;
|
|
1098
1101
|
for (; --i >= 0 && n[i] === "\\";) r = !r;
|
|
@@ -1103,7 +1106,7 @@ function G(e, t) {
|
|
|
1103
1106
|
for (; r < n.length; r++) n[r] = n[r].trim().replace(A.slashPipe, "|");
|
|
1104
1107
|
return n;
|
|
1105
1108
|
}
|
|
1106
|
-
function
|
|
1109
|
+
function W(e, t, n) {
|
|
1107
1110
|
let r = e.length;
|
|
1108
1111
|
if (r === 0) return "";
|
|
1109
1112
|
let i = 0;
|
|
@@ -1115,12 +1118,12 @@ function K(e, t, n) {
|
|
|
1115
1118
|
}
|
|
1116
1119
|
return e.slice(0, r - i);
|
|
1117
1120
|
}
|
|
1118
|
-
function
|
|
1121
|
+
function Sn(e) {
|
|
1119
1122
|
let t = e.split("\n"), n = t.length - 1;
|
|
1120
1123
|
for (; n >= 0 && A.blankLine.test(t[n]);) n--;
|
|
1121
1124
|
return t.length - n <= 2 ? e : t.slice(0, n + 1).join("\n");
|
|
1122
1125
|
}
|
|
1123
|
-
function
|
|
1126
|
+
function Cn(e, t) {
|
|
1124
1127
|
if (e.indexOf(t[1]) === -1) return -1;
|
|
1125
1128
|
let n = 0;
|
|
1126
1129
|
for (let r = 0; r < e.length; r++) if (e[r] === "\\") r++;
|
|
@@ -1128,7 +1131,7 @@ function yn(e, t) {
|
|
|
1128
1131
|
else if (e[r] === t[1] && (n--, n < 0)) return r;
|
|
1129
1132
|
return n > 0 ? -2 : -1;
|
|
1130
1133
|
}
|
|
1131
|
-
function
|
|
1134
|
+
function wn(e, t = 0) {
|
|
1132
1135
|
let n = t, r = "";
|
|
1133
1136
|
for (let t of e) if (t === " ") {
|
|
1134
1137
|
let e = 4 - n % 4;
|
|
@@ -1136,7 +1139,7 @@ function bn(e, t = 0) {
|
|
|
1136
1139
|
} else r += t, n++;
|
|
1137
1140
|
return r;
|
|
1138
1141
|
}
|
|
1139
|
-
function
|
|
1142
|
+
function Tn(e, t, n, r, i) {
|
|
1140
1143
|
let a = t.href, o = t.title || null, s = e[1].replace(i.other.outputLinkReplace, "$1");
|
|
1141
1144
|
r.state.inLink = !0;
|
|
1142
1145
|
let c = {
|
|
@@ -1149,7 +1152,7 @@ function xn(e, t, n, r, i) {
|
|
|
1149
1152
|
};
|
|
1150
1153
|
return r.state.inLink = !1, c;
|
|
1151
1154
|
}
|
|
1152
|
-
function
|
|
1155
|
+
function En(e, t, n) {
|
|
1153
1156
|
let r = e.match(n.other.indentCodeCompensation);
|
|
1154
1157
|
if (r === null) return t;
|
|
1155
1158
|
let i = r[1];
|
|
@@ -1160,12 +1163,12 @@ function Sn(e, t, n) {
|
|
|
1160
1163
|
return r.length >= i.length ? e.slice(i.length) : e;
|
|
1161
1164
|
}).join("\n");
|
|
1162
1165
|
}
|
|
1163
|
-
var
|
|
1166
|
+
var G = class {
|
|
1164
1167
|
options;
|
|
1165
1168
|
rules;
|
|
1166
1169
|
lexer;
|
|
1167
1170
|
constructor(e) {
|
|
1168
|
-
this.options = e ||
|
|
1171
|
+
this.options = e || yt;
|
|
1169
1172
|
}
|
|
1170
1173
|
space(e) {
|
|
1171
1174
|
let t = this.rules.block.newline.exec(e);
|
|
@@ -1177,7 +1180,7 @@ var Cn = class {
|
|
|
1177
1180
|
code(e) {
|
|
1178
1181
|
let t = this.rules.block.code.exec(e);
|
|
1179
1182
|
if (t) {
|
|
1180
|
-
let e = this.options.pedantic ? t[0] :
|
|
1183
|
+
let e = this.options.pedantic ? t[0] : Sn(t[0]);
|
|
1181
1184
|
return {
|
|
1182
1185
|
type: "code",
|
|
1183
1186
|
raw: e,
|
|
@@ -1189,7 +1192,7 @@ var Cn = class {
|
|
|
1189
1192
|
fences(e) {
|
|
1190
1193
|
let t = this.rules.block.fences.exec(e);
|
|
1191
1194
|
if (t) {
|
|
1192
|
-
let e = t[0], n =
|
|
1195
|
+
let e = t[0], n = En(e, t[3] || "", this.rules);
|
|
1193
1196
|
return {
|
|
1194
1197
|
type: "code",
|
|
1195
1198
|
raw: e,
|
|
@@ -1203,12 +1206,12 @@ var Cn = class {
|
|
|
1203
1206
|
if (t) {
|
|
1204
1207
|
let e = t[2].trim();
|
|
1205
1208
|
if (this.rules.other.endingHash.test(e)) {
|
|
1206
|
-
let t =
|
|
1209
|
+
let t = W(e, "#");
|
|
1207
1210
|
(this.options.pedantic || !t || this.rules.other.endingSpaceChar.test(t)) && (e = t.trim());
|
|
1208
1211
|
}
|
|
1209
1212
|
return {
|
|
1210
1213
|
type: "heading",
|
|
1211
|
-
raw:
|
|
1214
|
+
raw: W(t[0], "\n"),
|
|
1212
1215
|
depth: t[1].length,
|
|
1213
1216
|
text: e,
|
|
1214
1217
|
tokens: this.lexer.inline(e)
|
|
@@ -1219,13 +1222,13 @@ var Cn = class {
|
|
|
1219
1222
|
let t = this.rules.block.hr.exec(e);
|
|
1220
1223
|
if (t) return {
|
|
1221
1224
|
type: "hr",
|
|
1222
|
-
raw:
|
|
1225
|
+
raw: W(t[0], "\n")
|
|
1223
1226
|
};
|
|
1224
1227
|
}
|
|
1225
1228
|
blockquote(e) {
|
|
1226
1229
|
let t = this.rules.block.blockquote.exec(e);
|
|
1227
1230
|
if (t) {
|
|
1228
|
-
let e =
|
|
1231
|
+
let e = W(t[0], "\n").split("\n"), n = "", r = "", i = [];
|
|
1229
1232
|
for (; e.length > 0;) {
|
|
1230
1233
|
let t = !1, a = [], o;
|
|
1231
1234
|
for (o = 0; o < e.length; o++) if (this.rules.other.blockquoteStart.test(e[o])) a.push(e[o]), t = !0;
|
|
@@ -1275,7 +1278,7 @@ ${c}` : c;
|
|
|
1275
1278
|
let n = !1, r = "", s = "";
|
|
1276
1279
|
if (!(t = a.exec(e)) || this.rules.block.hr.test(e)) break;
|
|
1277
1280
|
r = t[0], e = e.substring(r.length);
|
|
1278
|
-
let c =
|
|
1281
|
+
let c = wn(t[2].split("\n", 1)[0], t[1].length), l = e.split("\n", 1)[0], u = !c.trim(), d = 0;
|
|
1279
1282
|
if (this.options.pedantic ? (d = 2, s = c.trimStart()) : u ? d = t[1].length + 1 : (d = c.search(this.rules.other.nonSpaceChar), d = d > 4 ? 1 : d, s = c.slice(d), d += t[1].length), u && this.rules.other.blankLine.test(l) && (r += l + "\n", e = e.substring(l.length + 1), n = !0), !n) {
|
|
1280
1283
|
let t = this.rules.other.nextBulletRegex(d), n = this.rules.other.hrRegex(d), i = this.rules.other.fencesBeginRegex(d), a = this.rules.other.headingBeginRegex(d), o = this.rules.other.htmlBeginRegex(d), f = this.rules.other.blockquoteBeginRegex(d);
|
|
1281
1284
|
for (; e;) {
|
|
@@ -1341,7 +1344,7 @@ ${c}` : c;
|
|
|
1341
1344
|
html(e) {
|
|
1342
1345
|
let t = this.rules.block.html.exec(e);
|
|
1343
1346
|
if (t) {
|
|
1344
|
-
let e =
|
|
1347
|
+
let e = Sn(t[0]);
|
|
1345
1348
|
return {
|
|
1346
1349
|
type: "html",
|
|
1347
1350
|
block: !0,
|
|
@@ -1358,7 +1361,7 @@ ${c}` : c;
|
|
|
1358
1361
|
return {
|
|
1359
1362
|
type: "def",
|
|
1360
1363
|
tag: e,
|
|
1361
|
-
raw:
|
|
1364
|
+
raw: W(t[0], "\n"),
|
|
1362
1365
|
href: n,
|
|
1363
1366
|
title: r
|
|
1364
1367
|
};
|
|
@@ -1367,9 +1370,9 @@ ${c}` : c;
|
|
|
1367
1370
|
table(e) {
|
|
1368
1371
|
let t = this.rules.block.table.exec(e);
|
|
1369
1372
|
if (!t || !this.rules.other.tableDelimiter.test(t[2])) return;
|
|
1370
|
-
let n =
|
|
1373
|
+
let n = xn(t[1]), r = t[2].replace(this.rules.other.tableAlignChars, "").split("|"), i = t[3]?.trim() ? t[3].replace(this.rules.other.tableRowBlankLine, "").split("\n") : [], a = {
|
|
1371
1374
|
type: "table",
|
|
1372
|
-
raw:
|
|
1375
|
+
raw: W(t[0], "\n"),
|
|
1373
1376
|
header: [],
|
|
1374
1377
|
align: [],
|
|
1375
1378
|
rows: []
|
|
@@ -1382,7 +1385,7 @@ ${c}` : c;
|
|
|
1382
1385
|
header: !0,
|
|
1383
1386
|
align: a.align[e]
|
|
1384
1387
|
});
|
|
1385
|
-
for (let e of i) a.rows.push(
|
|
1388
|
+
for (let e of i) a.rows.push(xn(e, a.header.length).map((e, t) => ({
|
|
1386
1389
|
text: e,
|
|
1387
1390
|
tokens: this.lexer.inline(e),
|
|
1388
1391
|
header: !1,
|
|
@@ -1397,7 +1400,7 @@ ${c}` : c;
|
|
|
1397
1400
|
let e = t[1].trim();
|
|
1398
1401
|
return {
|
|
1399
1402
|
type: "heading",
|
|
1400
|
-
raw:
|
|
1403
|
+
raw: W(t[0], "\n"),
|
|
1401
1404
|
depth: t[2].charAt(0) === "=" ? 1 : 2,
|
|
1402
1405
|
text: e,
|
|
1403
1406
|
tokens: this.lexer.inline(e)
|
|
@@ -1450,10 +1453,10 @@ ${c}` : c;
|
|
|
1450
1453
|
let e = t[2].trim();
|
|
1451
1454
|
if (!this.options.pedantic && this.rules.other.startAngleBracket.test(e)) {
|
|
1452
1455
|
if (!this.rules.other.endAngleBracket.test(e)) return;
|
|
1453
|
-
let t =
|
|
1456
|
+
let t = W(e.slice(0, -1), "\\");
|
|
1454
1457
|
if ((e.length - t.length) % 2 == 0) return;
|
|
1455
1458
|
} else {
|
|
1456
|
-
let e =
|
|
1459
|
+
let e = Cn(t[2], "()");
|
|
1457
1460
|
if (e === -2) return;
|
|
1458
1461
|
if (e > -1) {
|
|
1459
1462
|
let n = (t[0].indexOf("!") === 0 ? 5 : 4) + t[1].length + e;
|
|
@@ -1465,7 +1468,7 @@ ${c}` : c;
|
|
|
1465
1468
|
let e = this.rules.other.pedanticHrefTitle.exec(n);
|
|
1466
1469
|
e && (n = e[1], r = e[3]);
|
|
1467
1470
|
} else r = t[3] ? t[3].slice(1, -1) : "";
|
|
1468
|
-
return n = n.trim(), this.rules.other.startAngleBracket.test(n) && (n = this.options.pedantic && !this.rules.other.endAngleBracket.test(e) ? n.slice(1) : n.slice(1, -1)),
|
|
1471
|
+
return n = n.trim(), this.rules.other.startAngleBracket.test(n) && (n = this.options.pedantic && !this.rules.other.endAngleBracket.test(e) ? n.slice(1) : n.slice(1, -1)), Tn(t, {
|
|
1469
1472
|
href: n && n.replace(this.rules.inline.anyPunctuation, "$1"),
|
|
1470
1473
|
title: r && r.replace(this.rules.inline.anyPunctuation, "$1")
|
|
1471
1474
|
}, t[0], this.lexer, this.rules);
|
|
@@ -1483,7 +1486,7 @@ ${c}` : c;
|
|
|
1483
1486
|
text: e
|
|
1484
1487
|
};
|
|
1485
1488
|
}
|
|
1486
|
-
return
|
|
1489
|
+
return Tn(n, e, n[0], this.lexer, this.rules);
|
|
1487
1490
|
}
|
|
1488
1491
|
}
|
|
1489
1492
|
emStrong(e, t, n = "") {
|
|
@@ -1615,29 +1618,29 @@ ${c}` : c;
|
|
|
1615
1618
|
};
|
|
1616
1619
|
}
|
|
1617
1620
|
}
|
|
1618
|
-
},
|
|
1621
|
+
}, K = class e {
|
|
1619
1622
|
tokens;
|
|
1620
1623
|
options;
|
|
1621
1624
|
state;
|
|
1622
1625
|
inlineQueue;
|
|
1623
1626
|
tokenizer;
|
|
1624
1627
|
constructor(e) {
|
|
1625
|
-
this.tokens = [], this.tokens.links = Object.create(null), this.options = e ||
|
|
1628
|
+
this.tokens = [], this.tokens.links = Object.create(null), this.options = e || yt, this.options.tokenizer = this.options.tokenizer || new G(), this.tokenizer = this.options.tokenizer, this.tokenizer.options = this.options, this.tokenizer.lexer = this, this.inlineQueue = [], this.state = {
|
|
1626
1629
|
inLink: !1,
|
|
1627
1630
|
inRawBlock: !1,
|
|
1628
1631
|
top: !0
|
|
1629
1632
|
};
|
|
1630
1633
|
let t = {
|
|
1631
1634
|
other: A,
|
|
1632
|
-
block:
|
|
1633
|
-
inline:
|
|
1635
|
+
block: _n.normal,
|
|
1636
|
+
inline: H.normal
|
|
1634
1637
|
};
|
|
1635
|
-
this.options.pedantic ? (t.block =
|
|
1638
|
+
this.options.pedantic ? (t.block = _n.pedantic, t.inline = H.pedantic) : this.options.gfm && (t.block = _n.gfm, this.options.breaks ? t.inline = H.breaks : t.inline = H.gfm), this.tokenizer.rules = t;
|
|
1636
1639
|
}
|
|
1637
1640
|
static get rules() {
|
|
1638
1641
|
return {
|
|
1639
|
-
block:
|
|
1640
|
-
inline:
|
|
1642
|
+
block: _n,
|
|
1643
|
+
inline: H
|
|
1641
1644
|
};
|
|
1642
1645
|
}
|
|
1643
1646
|
static lex(t, n) {
|
|
@@ -1837,18 +1840,18 @@ ${c}` : c;
|
|
|
1837
1840
|
if (this.options.silent) console.error(t);
|
|
1838
1841
|
else throw Error(t);
|
|
1839
1842
|
}
|
|
1840
|
-
},
|
|
1843
|
+
}, q = class {
|
|
1841
1844
|
options;
|
|
1842
1845
|
parser;
|
|
1843
1846
|
constructor(e) {
|
|
1844
|
-
this.options = e ||
|
|
1847
|
+
this.options = e || yt;
|
|
1845
1848
|
}
|
|
1846
1849
|
space(e) {
|
|
1847
1850
|
return "";
|
|
1848
1851
|
}
|
|
1849
1852
|
code({ text: e, lang: t, escaped: n }) {
|
|
1850
1853
|
let r = (t || "").match(A.notSpaceStart)?.[0], i = e.replace(A.endingNewline, "") + "\n";
|
|
1851
|
-
return r ? "<pre><code class=\"language-" +
|
|
1854
|
+
return r ? "<pre><code class=\"language-" + U(r) + "\">" + (n ? i : U(i, !0)) + "</code></pre>\n" : "<pre><code>" + (n ? i : U(i, !0)) + "</code></pre>\n";
|
|
1852
1855
|
}
|
|
1853
1856
|
blockquote({ tokens: e }) {
|
|
1854
1857
|
return `<blockquote>
|
|
@@ -1918,7 +1921,7 @@ ${e}</tr>
|
|
|
1918
1921
|
return `<em>${this.parser.parseInline(e)}</em>`;
|
|
1919
1922
|
}
|
|
1920
1923
|
codespan({ text: e }) {
|
|
1921
|
-
return `<code>${
|
|
1924
|
+
return `<code>${U(e, !0)}</code>`;
|
|
1922
1925
|
}
|
|
1923
1926
|
br(e) {
|
|
1924
1927
|
return "<br>";
|
|
@@ -1927,22 +1930,22 @@ ${e}</tr>
|
|
|
1927
1930
|
return `<del>${this.parser.parseInline(e)}</del>`;
|
|
1928
1931
|
}
|
|
1929
1932
|
link({ href: e, title: t, tokens: n }) {
|
|
1930
|
-
let r = this.parser.parseInline(n), i =
|
|
1933
|
+
let r = this.parser.parseInline(n), i = bn(e);
|
|
1931
1934
|
if (i === null) return r;
|
|
1932
1935
|
e = i;
|
|
1933
1936
|
let a = "<a href=\"" + e + "\"";
|
|
1934
|
-
return t && (a += " title=\"" +
|
|
1937
|
+
return t && (a += " title=\"" + U(t) + "\""), a += ">" + r + "</a>", a;
|
|
1935
1938
|
}
|
|
1936
1939
|
image({ href: e, title: t, text: n, tokens: r }) {
|
|
1937
1940
|
r && (n = this.parser.parseInline(r, this.parser.textRenderer));
|
|
1938
|
-
let i =
|
|
1939
|
-
if (i === null) return
|
|
1941
|
+
let i = bn(e);
|
|
1942
|
+
if (i === null) return U(n);
|
|
1940
1943
|
e = i;
|
|
1941
|
-
let a = `<img src="${e}" alt="${
|
|
1942
|
-
return t && (a += ` title="${
|
|
1944
|
+
let a = `<img src="${e}" alt="${U(n)}"`;
|
|
1945
|
+
return t && (a += ` title="${U(t)}"`), a += ">", a;
|
|
1943
1946
|
}
|
|
1944
1947
|
text(e) {
|
|
1945
|
-
return "tokens" in e && e.tokens ? this.parser.parseInline(e.tokens) : "escaped" in e && e.escaped ? e.text :
|
|
1948
|
+
return "tokens" in e && e.tokens ? this.parser.parseInline(e.tokens) : "escaped" in e && e.escaped ? e.text : U(e.text);
|
|
1946
1949
|
}
|
|
1947
1950
|
}, J = class {
|
|
1948
1951
|
strong({ text: e }) {
|
|
@@ -1980,7 +1983,7 @@ ${e}</tr>
|
|
|
1980
1983
|
renderer;
|
|
1981
1984
|
textRenderer;
|
|
1982
1985
|
constructor(e) {
|
|
1983
|
-
this.options = e ||
|
|
1986
|
+
this.options = e || yt, this.options.renderer = this.options.renderer || new q(), this.renderer = this.options.renderer, this.renderer.options = this.options, this.renderer.parser = this, this.textRenderer = new J();
|
|
1984
1987
|
}
|
|
1985
1988
|
static parse(t, n) {
|
|
1986
1989
|
return new e(n).parse(t);
|
|
@@ -2130,7 +2133,7 @@ ${e}</tr>
|
|
|
2130
2133
|
options;
|
|
2131
2134
|
block;
|
|
2132
2135
|
constructor(e) {
|
|
2133
|
-
this.options = e ||
|
|
2136
|
+
this.options = e || yt;
|
|
2134
2137
|
}
|
|
2135
2138
|
static passThroughHooks = /* @__PURE__ */ new Set([
|
|
2136
2139
|
"preprocess",
|
|
@@ -2156,21 +2159,21 @@ ${e}</tr>
|
|
|
2156
2159
|
return e;
|
|
2157
2160
|
}
|
|
2158
2161
|
provideLexer(e = this.block) {
|
|
2159
|
-
return e ?
|
|
2162
|
+
return e ? K.lex : K.lexInline;
|
|
2160
2163
|
}
|
|
2161
2164
|
provideParser(e = this.block) {
|
|
2162
2165
|
return e ? Y.parse : Y.parseInline;
|
|
2163
2166
|
}
|
|
2164
|
-
},
|
|
2165
|
-
defaults =
|
|
2167
|
+
}, Dn = new class {
|
|
2168
|
+
defaults = vt();
|
|
2166
2169
|
options = this.setOptions;
|
|
2167
2170
|
parse = this.parseMarkdown(!0);
|
|
2168
2171
|
parseInline = this.parseMarkdown(!1);
|
|
2169
2172
|
Parser = Y;
|
|
2170
|
-
Renderer =
|
|
2173
|
+
Renderer = q;
|
|
2171
2174
|
TextRenderer = J;
|
|
2172
|
-
Lexer =
|
|
2173
|
-
Tokenizer =
|
|
2175
|
+
Lexer = K;
|
|
2176
|
+
Tokenizer = G;
|
|
2174
2177
|
Hooks = X;
|
|
2175
2178
|
constructor(...e) {
|
|
2176
2179
|
this.use(...e);
|
|
@@ -2222,7 +2225,7 @@ ${e}</tr>
|
|
|
2222
2225
|
}
|
|
2223
2226
|
"childTokens" in e && e.childTokens && (t.childTokens[e.name] = e.childTokens);
|
|
2224
2227
|
}), n.extensions = t), e.renderer) {
|
|
2225
|
-
let t = this.defaults.renderer || new
|
|
2228
|
+
let t = this.defaults.renderer || new q(this.defaults);
|
|
2226
2229
|
for (let n in e.renderer) {
|
|
2227
2230
|
if (!(n in t)) throw Error(`renderer '${n}' does not exist`);
|
|
2228
2231
|
if (["options", "parser"].includes(n)) continue;
|
|
@@ -2235,7 +2238,7 @@ ${e}</tr>
|
|
|
2235
2238
|
n.renderer = t;
|
|
2236
2239
|
}
|
|
2237
2240
|
if (e.tokenizer) {
|
|
2238
|
-
let t = this.defaults.tokenizer || new
|
|
2241
|
+
let t = this.defaults.tokenizer || new G(this.defaults);
|
|
2239
2242
|
for (let n in e.tokenizer) {
|
|
2240
2243
|
if (!(n in t)) throw Error(`tokenizer '${n}' does not exist`);
|
|
2241
2244
|
if ([
|
|
@@ -2295,7 +2298,7 @@ ${e}</tr>
|
|
|
2295
2298
|
}, this;
|
|
2296
2299
|
}
|
|
2297
2300
|
lexer(e, t) {
|
|
2298
|
-
return
|
|
2301
|
+
return K.lex(e, t ?? this.defaults);
|
|
2299
2302
|
}
|
|
2300
2303
|
parser(e, t) {
|
|
2301
2304
|
return Y.parse(e, t ?? this.defaults);
|
|
@@ -2310,14 +2313,14 @@ ${e}</tr>
|
|
|
2310
2313
|
if (typeof t > "u" || t === null) return a(/* @__PURE__ */ Error("marked(): input parameter is undefined or null"));
|
|
2311
2314
|
if (typeof t != "string") return a(/* @__PURE__ */ Error("marked(): input parameter is of type " + Object.prototype.toString.call(t) + ", string expected"));
|
|
2312
2315
|
if (i.hooks && (i.hooks.options = i, i.hooks.block = e), i.async) return (async () => {
|
|
2313
|
-
let n = i.hooks ? await i.hooks.preprocess(t) : t, r = await (i.hooks ? await i.hooks.provideLexer(e) : e ?
|
|
2316
|
+
let n = i.hooks ? await i.hooks.preprocess(t) : t, r = await (i.hooks ? await i.hooks.provideLexer(e) : e ? K.lex : K.lexInline)(n, i), a = i.hooks ? await i.hooks.processAllTokens(r) : r;
|
|
2314
2317
|
i.walkTokens && await Promise.all(this.walkTokens(a, i.walkTokens));
|
|
2315
2318
|
let o = await (i.hooks ? await i.hooks.provideParser(e) : e ? Y.parse : Y.parseInline)(a, i);
|
|
2316
2319
|
return i.hooks ? await i.hooks.postprocess(o) : o;
|
|
2317
2320
|
})().catch(a);
|
|
2318
2321
|
try {
|
|
2319
2322
|
i.hooks && (t = i.hooks.preprocess(t));
|
|
2320
|
-
let n = (i.hooks ? i.hooks.provideLexer(e) : e ?
|
|
2323
|
+
let n = (i.hooks ? i.hooks.provideLexer(e) : e ? K.lex : K.lexInline)(t, i);
|
|
2321
2324
|
i.hooks && (n = i.hooks.processAllTokens(n)), i.walkTokens && this.walkTokens(n, i.walkTokens);
|
|
2322
2325
|
let r = (i.hooks ? i.hooks.provideParser(e) : e ? Y.parse : Y.parseInline)(n, i);
|
|
2323
2326
|
return i.hooks && (r = i.hooks.postprocess(r)), r;
|
|
@@ -2329,7 +2332,7 @@ ${e}</tr>
|
|
|
2329
2332
|
onError(e, t) {
|
|
2330
2333
|
return (n) => {
|
|
2331
2334
|
if (n.message += "\nPlease report this to https://github.com/markedjs/marked.", e) {
|
|
2332
|
-
let e = "<p>An error occurred:</p><pre>" +
|
|
2335
|
+
let e = "<p>An error occurred:</p><pre>" + U(n.message + "", !0) + "</pre>";
|
|
2333
2336
|
return t ? Promise.resolve(e) : e;
|
|
2334
2337
|
}
|
|
2335
2338
|
if (t) return Promise.reject(n);
|
|
@@ -2338,23 +2341,76 @@ ${e}</tr>
|
|
|
2338
2341
|
}
|
|
2339
2342
|
}();
|
|
2340
2343
|
function Z(e, t) {
|
|
2341
|
-
return
|
|
2344
|
+
return Dn.parse(e, t);
|
|
2342
2345
|
}
|
|
2343
2346
|
Z.options = Z.setOptions = function(e) {
|
|
2344
|
-
return
|
|
2345
|
-
}, Z.getDefaults =
|
|
2346
|
-
return
|
|
2347
|
+
return Dn.setOptions(e), Z.defaults = Dn.defaults, bt(Z.defaults), Z;
|
|
2348
|
+
}, Z.getDefaults = vt, Z.defaults = yt, Z.use = function(...e) {
|
|
2349
|
+
return Dn.use(...e), Z.defaults = Dn.defaults, bt(Z.defaults), Z;
|
|
2347
2350
|
}, Z.walkTokens = function(e, t) {
|
|
2348
|
-
return
|
|
2349
|
-
}, Z.parseInline =
|
|
2351
|
+
return Dn.walkTokens(e, t);
|
|
2352
|
+
}, Z.parseInline = Dn.parseInline, Z.Parser = Y, Z.parser = Y.parse, Z.Renderer = q, Z.TextRenderer = J, Z.Lexer = K, Z.lexer = K.lex, Z.Tokenizer = G, Z.Hooks = X, Z.parse = Z, Z.options, Z.setOptions, Z.use, Z.walkTokens, Z.parseInline, Y.parse, K.lex;
|
|
2350
2353
|
//#endregion
|
|
2351
2354
|
//#region src/components/ai-chat/ai-chat.module.scss?inline
|
|
2352
|
-
var En = ":host{box-sizing:border-box;flex-direction:column;width:100%;height:100%;display:flex}:host .chat-container{background:var(--luzmo-ai-chat-background,var(--ai-chat-background));border-radius:var(--luzmo-ai-chat-border-radius,var(--ai-chat-border-radius));width:100%;height:100%;min-height:0;padding:var(--luzmo-ai-chat-padding,var(--ai-chat-padding));gap:var(--luzmo-ai-chat-gap,var(--ai-chat-gap));border:var(--luzmo-ai-chat-border,var(--ai-chat-border));box-shadow:var(--luzmo-ai-chat-box-shadow,var(--ai-chat-box-shadow));box-sizing:border-box;flex-direction:column;flex:1;display:flex;overflow:hidden}:host .chat-messages-container{gap:var(--luzmo-ai-chat-gap,var(--ai-chat-gap));flex-direction:column;flex:1;min-height:0;display:flex;overflow:auto}:host .chat-messages-container luzmo-ai-chat-empty-state{flex:1;min-height:0}:host .chat-messages-container::-webkit-scrollbar{width:var(--luzmo-ai-chat-scrollbar-width,var(--ai-chat-scrollbar-width))}:host .chat-messages-container::-webkit-scrollbar-track{background:var(--luzmo-ai-chat-scrollbar-track-background,var(--ai-chat-scrollbar-track-background));border-radius:var(--luzmo-ai-chat-scrollbar-track-border-radius,var(--ai-chat-scrollbar-track-border-radius))}:host .chat-messages-container::-webkit-scrollbar-thumb{background:var(--luzmo-ai-chat-scrollbar-thumb-background,var(--ai-chat-scrollbar-thumb-background));border-radius:var(--luzmo-ai-chat-scrollbar-thumb-border-radius,var(--ai-chat-scrollbar-thumb-border-radius))}:host .chat-messages-container::-webkit-scrollbar-thumb:hover{background:var(--luzmo-ai-chat-scrollbar-thumb-hover-background,var(--ai-chat-scrollbar-thumb-hover-background))}:host .chat-messages-container{scrollbar-width:var(--luzmo-scrollbar-width,thin);scrollbar-color:var(--luzmo-ai-chat-scrollbar-thumb-background,var(--ai-chat-scrollbar-thumb-background)) var(--luzmo-ai-chat-scrollbar-track-background,var(--ai-chat-scrollbar-track-background))}:host luzmo-chat-message{--luzmo-primary:rgba(var(--luzmo-primary-rgb), .08);--chat-message-primary-text-color:var(--luzmo-font-color);--chat-message-primary-border-color:transparent}:host luzmo-chat-message.error{color:var(--luzmo-ai-chat-error-message-color,var(--ai-chat-error-message-color))}:host luzmo-chat-message.cancelled{color:var(--luzmo-ai-chat-cancelled-message-color,var(--ai-chat-cancelled-message-color));font-style:italic}:host .user-message-content{gap:var(--luzmo-spacing-3,8px);flex-direction:column;display:flex}:host .user-message-attachments{gap:var(--luzmo-spacing-2,4px);flex-wrap:wrap;display:flex}:host .user-message-attachment{width:var(--luzmo-ai-chat-user-message-attachment-size,var(--ai-chat-user-message-attachment-size));height:var(--luzmo-ai-chat-user-message-attachment-size,var(--ai-chat-user-message-attachment-size));object-fit:cover;object-position:center;border-radius:var(--luzmo-border-radius-s,4px);pointer-events:none;display:block}:host .user-message-text{white-space:pre-wrap;overflow-wrap:anywhere}:host .markdown-content{line-height:var(--luzmo-ai-chat-markdown-line-height,var(--ai-chat-markdown-line-height))}:host .markdown-content>:first-child{margin-top:0}:host .markdown-content>:last-child{margin-bottom:0}:host .markdown-content p,:host .markdown-content ul,:host .markdown-content ol,:host .markdown-content blockquote,:host .markdown-content pre,:host .markdown-content table{margin:0 0 var(--luzmo-ai-chat-markdown-spacing,var(--ai-chat-markdown-spacing))}:host .markdown-content h1,:host .markdown-content h2,:host .markdown-content h3,:host .markdown-content h4,:host .markdown-content h5,:host .markdown-content h6{margin:var(--luzmo-ai-chat-markdown-heading-spacing,var(--ai-chat-markdown-heading-spacing)) 0 var(--luzmo-ai-chat-markdown-spacing,var(--ai-chat-markdown-spacing));font-weight:var(--luzmo-ai-chat-markdown-heading-font-weight,var(--ai-chat-markdown-heading-font-weight))}:host .markdown-content ul,:host .markdown-content ol{padding-inline-start:var(--luzmo-ai-chat-markdown-list-indent,var(--ai-chat-markdown-list-indent))}:host .markdown-content a{color:var(--luzmo-ai-chat-markdown-link-color,var(--ai-chat-markdown-link-color))}:host .markdown-content code{font-family:var(--luzmo-ai-chat-markdown-code-font-family,var(--ai-chat-markdown-code-font-family));font-size:var(--luzmo-ai-chat-markdown-code-font-size,var(--ai-chat-markdown-code-font-size));background:var(--luzmo-ai-chat-markdown-code-background,var(--ai-chat-markdown-code-background));border-radius:var(--luzmo-ai-chat-markdown-code-border-radius,var(--ai-chat-markdown-code-border-radius));padding:.1em .3em}:host .markdown-content pre{background:var(--luzmo-ai-chat-markdown-code-background,var(--ai-chat-markdown-code-background));border-radius:var(--luzmo-ai-chat-markdown-code-border-radius,var(--ai-chat-markdown-code-border-radius));padding:.75em 1em;overflow-x:auto}:host .markdown-content pre code{background:0 0;padding:0}:host .markdown-content blockquote{border-inline-start:.1875rem solid var(--luzmo-ai-chat-markdown-border-color,var(--ai-chat-markdown-border-color));padding-inline-start:.75rem}:host .markdown-content hr{border:0;border-top:.0625rem solid var(--luzmo-ai-chat-markdown-border-color,var(--ai-chat-markdown-border-color));margin:var(--luzmo-ai-chat-markdown-heading-spacing,var(--ai-chat-markdown-heading-spacing)) 0}:host .markdown-content table{border-collapse:collapse;width:100%}:host .markdown-content th,:host .markdown-content td{border:.0625rem solid var(--luzmo-ai-chat-markdown-border-color,var(--ai-chat-markdown-border-color));text-align:start;padding:.375rem .625rem}:host .markdown-content th{background:var(--luzmo-ai-chat-markdown-table-header-background,var(--ai-chat-markdown-table-header-background));font-weight:600}:host .assistant-message-wrapper{gap:var(--luzmo-ai-chat-assistant-message-actions-margin-top,var(--ai-chat-assistant-message-actions-margin-top));font-family:var(--luzmo-ai-chat-assistant-message-font-family,var(--ai-chat-assistant-message-font-family));font-size:var(--luzmo-ai-chat-assistant-message-font-size,var(--ai-chat-assistant-message-font-size));line-height:var(--luzmo-ai-chat-assistant-message-line-height,var(--ai-chat-assistant-message-line-height));--chat-message-font-family:var(--luzmo-ai-chat-assistant-message-font-family,var(--ai-chat-assistant-message-font-family));--luzmo-chat-message-font-family:var(--luzmo-ai-chat-assistant-message-font-family,var(--ai-chat-assistant-message-font-family));--chat-message-font-size:var(--luzmo-ai-chat-assistant-message-font-size,var(--ai-chat-assistant-message-font-size));--luzmo-chat-message-font-size:var(--luzmo-ai-chat-assistant-message-font-size,var(--ai-chat-assistant-message-font-size));--chat-message-line-height:var(--luzmo-ai-chat-assistant-message-line-height,var(--ai-chat-assistant-message-line-height));--luzmo-chat-message-line-height:var(--luzmo-ai-chat-assistant-message-line-height,var(--ai-chat-assistant-message-line-height));flex-direction:column;display:flex}:host .assistant-message-body{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}:host .assistant-message-actions{align-items:center;gap:var(--luzmo-ai-chat-assistant-message-actions-gap,var(--ai-chat-assistant-message-actions-gap));flex-wrap:wrap;display:none}:host .assistant-message-actions.assistant-message-actions--has-content{display:flex}:host .assistant-message-actions.assistant-message-actions--confirming{flex-direction:column;align-items:flex-start}:host .assistant-message-actions .assistant-message-action-confirm-message{font-style:var(--luzmo-ai-chat-assistant-message-actions-font-style,var(--ai-chat-assistant-message-actions-font-style));color:var(--luzmo-ai-chat-assistant-message-actions-color,var(--ai-chat-assistant-message-actions-color));white-space:pre-line}:host .assistant-message-actions .assistant-message-action-confirm-controls{align-items:center;gap:var(--luzmo-ai-chat-assistant-message-actions-gap,var(--ai-chat-assistant-message-actions-gap));flex-wrap:wrap;display:flex}:host .assistant-message-actions luzmo-button.assistant-message-action,:host .assistant-message-actions slot::slotted(luzmo-button),:host .assistant-message-actions slot::slotted(button),:host .assistant-message-actions slot::slotted(a),:host .assistant-message-actions slot::slotted(input),:host .assistant-message-actions slot::slotted(select),:host .assistant-message-actions slot::slotted(textarea){font-style:normal}:host .assistant-message-actions slot::slotted(:not(luzmo-button):not(button):not(a):not(input):not(select):not(textarea)){font-style:var(--luzmo-ai-chat-assistant-message-actions-font-style,var(--ai-chat-assistant-message-actions-font-style));color:var(--luzmo-ai-chat-assistant-message-actions-color,var(--ai-chat-assistant-message-actions-color))}:host .assistant-context-menu-trigger{width:var(--luzmo-ai-chat-context-menu-trigger-size,var(--ai-chat-context-menu-trigger-size));height:var(--luzmo-ai-chat-context-menu-trigger-size,var(--ai-chat-context-menu-trigger-size));border:.0625rem solid var(--luzmo-ai-chat-context-menu-trigger-border-color,var(--ai-chat-context-menu-trigger-border-color));border-radius:var(--luzmo-ai-chat-context-menu-trigger-border-radius,var(--ai-chat-context-menu-trigger-border-radius));background:var(--luzmo-ai-chat-context-menu-trigger-background,var(--ai-chat-context-menu-trigger-background));color:var(--luzmo-ai-chat-context-menu-trigger-color,var(--ai-chat-context-menu-trigger-color));cursor:pointer;justify-content:center;align-items:center;padding:0;font-size:.875rem;line-height:1;transition:all .15s;display:inline-flex}:host .assistant-context-menu-trigger:hover{background:var(--luzmo-ai-chat-context-menu-trigger-hover-background,var(--ai-chat-context-menu-trigger-hover-background));border-color:var(--luzmo-ai-chat-context-menu-trigger-hover-border-color,var(--ai-chat-context-menu-trigger-hover-border-color));color:var(--luzmo-ai-chat-context-menu-trigger-hover-color,var(--ai-chat-context-menu-trigger-hover-color))}:host .assistant-context-menu-trigger:disabled{cursor:not-allowed;opacity:.6}:host .assistant-context-menu-trigger:disabled:hover{background:var(--luzmo-ai-chat-context-menu-trigger-background,var(--ai-chat-context-menu-trigger-background));border-color:var(--luzmo-ai-chat-context-menu-trigger-border-color,var(--ai-chat-context-menu-trigger-border-color));color:var(--luzmo-ai-chat-context-menu-trigger-color,var(--ai-chat-context-menu-trigger-color))}:host .assistant-context-menu-item{width:100%;color:var(--luzmo-font-color);text-align:start;cursor:pointer;font-family:var(--luzmo-ai-chat-context-menu-item-font-family,var(--ai-chat-context-menu-item-font-family));background:0 0;border:0;padding:.5rem .75rem}:host .assistant-context-menu-item:hover{background:var(--luzmo-ai-chat-context-menu-item-hover-background,var(--ai-chat-context-menu-item-hover-background))}:host .assistant-context-menu-item:disabled{opacity:.4;cursor:not-allowed}:host .assistant-context-menu-item:disabled:hover{background:0 0}:host luzmo-ai-interaction-textarea{flex-grow:0;flex-shrink:0}:host luzmo-progress-steps{padding:0 .25rem}:host .loading-message{color:var(--luzmo-font-color);align-items:center;gap:.5rem;display:flex}:host .loading-message svg{color:var(--luzmo-ai-chat-loading-message-color,var(--ai-chat-loading-message-color));font-size:var(--luzmo-ai-chat-loading-message-icon-font-size,var(--ai-chat-loading-message-icon-font-size,1rem));justify-content:center;align-items:center;display:flex}:host .loading-message svg.spin{animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){:host .assistant-context-menu-trigger{transition:none}:host .loading-message svg.spin{animation:none}}:host{--ai-chat-background:var(--luzmo-background-color);--ai-chat-border-radius:0;--ai-chat-padding:0;--ai-chat-gap:1rem;--ai-chat-border:none;--ai-chat-box-shadow:none;--ai-chat-loading-message-color:var(--luzmo-primary);--ai-chat-loading-message-icon-font-size:1rem;--ai-chat-error-message-color:var(--luzmo-danger,#dc3545);--ai-chat-cancelled-message-color:var(--luzmo-font-color-dimmed,var(--luzmo-font-color-extra-dimmed));--ai-chat-scrollbar-width:var(--luzmo-scrollbar-size);--ai-chat-scrollbar-track-background:var(--luzmo-scrollbar-track-background);--ai-chat-scrollbar-track-border-radius:var(--luzmo-scrollbar-track-border-radius);--ai-chat-scrollbar-thumb-background:var(--luzmo-scrollbar-thumb-background);--ai-chat-scrollbar-thumb-border-radius:var(--luzmo-scrollbar-thumb-border-radius);--ai-chat-scrollbar-thumb-hover-background:var(--luzmo-scrollbar-thumb-hover-background);--ai-chat-context-menu-trigger-size:1.5rem;--ai-chat-context-menu-trigger-border-color:var(--luzmo-border-color);--ai-chat-context-menu-trigger-border-radius:.375rem;--ai-chat-context-menu-trigger-background:var(--luzmo-background-color,transparent);--ai-chat-context-menu-trigger-color:var(--luzmo-font-color,#5a5a5a);--ai-chat-context-menu-trigger-hover-background:var(--luzmo-background-color-hover,#4434ff14);--ai-chat-context-menu-trigger-hover-border-color:var(--luzmo-border-color-hover,var(--luzmo-border-color));--ai-chat-context-menu-trigger-hover-color:var(--luzmo-font-color,#5a5a5a);--ai-chat-context-menu-item-hover-background:var(--luzmo-background-color-hover,#4434ff14);--ai-chat-context-menu-item-font-family:var(--luzmo-font-family);--ai-chat-markdown-line-height:1.5;--ai-chat-markdown-spacing:var(--luzmo-spacing-3);--ai-chat-markdown-heading-spacing:var(--luzmo-spacing-4);--ai-chat-markdown-heading-font-weight:var(--luzmo-font-weight-bold);--ai-chat-markdown-list-indent:calc(var(--luzmo-spacing-5) + var(--luzmo-spacing-3));--ai-chat-markdown-link-color:var(--luzmo-primary);--ai-chat-markdown-code-font-family:var(--luzmo-font-family-mono,ui-monospace, monospace);--ai-chat-markdown-code-font-size:.875em;--ai-chat-markdown-code-background:var(--luzmo-background-color-highlight);--ai-chat-markdown-code-border-radius:var(--luzmo-border-radius-s);--ai-chat-markdown-border-color:var(--luzmo-border-color);--ai-chat-markdown-table-header-background:var(--luzmo-background-color-highlight);--ai-chat-assistant-message-actions-gap:var(--luzmo-spacing-2);--ai-chat-assistant-message-actions-margin-top:var(--luzmo-spacing-3);--ai-chat-assistant-message-actions-color:var(--luzmo-font-color-extra-dimmed);--ai-chat-assistant-message-actions-font-style:italic;--ai-chat-assistant-message-font-family:var(--luzmo-font-family);--ai-chat-assistant-message-font-size:var(--luzmo-font-size-s,12px);--ai-chat-assistant-message-line-height:var(--ai-chat-markdown-line-height);--ai-chat-user-message-attachment-size:64px}", Dn = ":host{box-sizing:border-box;width:100%;min-height:0;padding-block:var(--luzmo-ai-chat-empty-state-padding-block,var(--ai-chat-empty-state-padding-block));padding-inline:var(--luzmo-ai-chat-empty-state-padding-inline,var(--ai-chat-empty-state-padding-inline));flex:1;justify-content:center;align-items:center;display:flex}.empty-state{justify-content:center;align-items:center;gap:var(--luzmo-ai-chat-empty-state-header-actions-gap,var(--ai-chat-empty-state-header-actions-gap));width:100%;max-width:var(--luzmo-ai-chat-empty-state-max-width,var(--ai-chat-empty-state-max-width));text-align:center;flex-direction:column;display:flex}.header{flex-direction:column;align-items:center;width:100%;display:flex}.actions{align-items:center;gap:var(--luzmo-ai-chat-empty-state-actions-gap,var(--ai-chat-empty-state-actions-gap));flex-direction:column;width:100%;display:flex}.title{font-family:var(--luzmo-font-family);font-size:var(--luzmo-ai-chat-empty-state-title-font-size,var(--ai-chat-empty-state-title-font-size));font-weight:var(--luzmo-ai-chat-empty-state-title-font-weight,var(--ai-chat-empty-state-title-font-weight));line-height:var(--luzmo-ai-chat-empty-state-title-line-height,var(--ai-chat-empty-state-title-line-height));color:var(--luzmo-ai-chat-empty-state-title-color,var(--ai-chat-empty-state-title-color));text-wrap:balance;margin:0}.subtitle{font-family:var(--luzmo-font-family);font-size:var(--luzmo-ai-chat-empty-state-subtitle-font-size,var(--ai-chat-empty-state-subtitle-font-size));font-weight:var(--luzmo-ai-chat-empty-state-subtitle-font-weight,var(--ai-chat-empty-state-subtitle-font-weight));line-height:var(--luzmo-ai-chat-empty-state-subtitle-line-height,var(--ai-chat-empty-state-subtitle-line-height));color:var(--luzmo-ai-chat-empty-state-subtitle-color,var(--ai-chat-empty-state-subtitle-color));margin:0}.suggestions{justify-content:center;align-items:center;gap:var(--luzmo-ai-chat-empty-state-suggestions-gap,var(--ai-chat-empty-state-suggestions-gap));flex-wrap:wrap;width:100%;display:flex}luzmo-action-button{max-width:100%}:host{--ai-chat-empty-state-header-actions-gap:1.5rem;--ai-chat-empty-state-actions-gap:var(--luzmo-spacing-4);--ai-chat-empty-state-suggestions-gap:var(--luzmo-spacing-3);--ai-chat-empty-state-max-width:22.5rem;--ai-chat-empty-state-padding-block:2rem;--ai-chat-empty-state-padding-inline:var(--luzmo-spacing-5);--ai-chat-empty-state-title-font-size:var(--luzmo-font-size-l);--ai-chat-empty-state-title-font-weight:var(--luzmo-font-weight);--ai-chat-empty-state-title-line-height:1.4;--ai-chat-empty-state-title-color:var(--luzmo-font-color-hard);--ai-chat-empty-state-subtitle-font-size:var(--luzmo-font-size-s);--ai-chat-empty-state-subtitle-font-weight:var(--luzmo-font-weight);--ai-chat-empty-state-subtitle-line-height:var(--luzmo-line-height);--ai-chat-empty-state-subtitle-color:var(--luzmo-font-color-dimmed,var(--luzmo-font-color-extra-dimmed))}", Q = class extends i {
|
|
2355
|
+
var On = ":host{box-sizing:border-box;flex-direction:column;width:100%;height:100%;display:flex}:host .chat-container{background:var(--luzmo-ai-chat-background,var(--ai-chat-background));border-radius:var(--luzmo-ai-chat-border-radius,var(--ai-chat-border-radius));width:100%;height:100%;min-height:0;padding:var(--luzmo-ai-chat-padding,var(--ai-chat-padding));gap:var(--luzmo-ai-chat-gap,var(--ai-chat-gap));border:var(--luzmo-ai-chat-border,var(--ai-chat-border));box-shadow:var(--luzmo-ai-chat-box-shadow,var(--ai-chat-box-shadow));box-sizing:border-box;flex-direction:column;flex:1;display:flex;overflow:hidden}:host .chat-messages-container{gap:var(--luzmo-ai-chat-gap,var(--ai-chat-gap));flex-direction:column;flex:1;min-height:0;display:flex;overflow:auto}:host .chat-messages-container luzmo-ai-chat-empty-state{flex:1;min-height:0}:host .chat-messages-container::-webkit-scrollbar{width:var(--luzmo-ai-chat-scrollbar-width,var(--ai-chat-scrollbar-width))}:host .chat-messages-container::-webkit-scrollbar-track{background:var(--luzmo-ai-chat-scrollbar-track-background,var(--ai-chat-scrollbar-track-background));border-radius:var(--luzmo-ai-chat-scrollbar-track-border-radius,var(--ai-chat-scrollbar-track-border-radius))}:host .chat-messages-container::-webkit-scrollbar-thumb{background:var(--luzmo-ai-chat-scrollbar-thumb-background,var(--ai-chat-scrollbar-thumb-background));border-radius:var(--luzmo-ai-chat-scrollbar-thumb-border-radius,var(--ai-chat-scrollbar-thumb-border-radius))}:host .chat-messages-container::-webkit-scrollbar-thumb:hover{background:var(--luzmo-ai-chat-scrollbar-thumb-hover-background,var(--ai-chat-scrollbar-thumb-hover-background))}:host .chat-messages-container{scrollbar-width:var(--luzmo-scrollbar-width,thin);scrollbar-color:var(--luzmo-ai-chat-scrollbar-thumb-background,var(--ai-chat-scrollbar-thumb-background)) var(--luzmo-ai-chat-scrollbar-track-background,var(--ai-chat-scrollbar-track-background))}:host luzmo-chat-message{--luzmo-primary:rgba(var(--luzmo-primary-rgb), .08);--chat-message-primary-text-color:var(--luzmo-font-color);--chat-message-primary-border-color:transparent}:host luzmo-chat-message.error{color:var(--luzmo-ai-chat-error-message-color,var(--ai-chat-error-message-color))}:host luzmo-chat-message.cancelled{color:var(--luzmo-ai-chat-cancelled-message-color,var(--ai-chat-cancelled-message-color));font-style:italic}:host .user-message-content{gap:var(--luzmo-spacing-3,8px);flex-direction:column;display:flex}:host .user-message-attachments{gap:var(--luzmo-spacing-2,4px);flex-wrap:wrap;display:flex}:host .user-message-attachment{width:var(--luzmo-ai-chat-user-message-attachment-size,var(--ai-chat-user-message-attachment-size));height:var(--luzmo-ai-chat-user-message-attachment-size,var(--ai-chat-user-message-attachment-size));object-fit:cover;object-position:center;border-radius:var(--luzmo-border-radius-s,4px);pointer-events:none;display:block}:host .user-message-text{white-space:pre-wrap;overflow-wrap:anywhere}:host .markdown-content{line-height:var(--luzmo-ai-chat-markdown-line-height,var(--ai-chat-markdown-line-height))}:host .markdown-content>:first-child{margin-top:0}:host .markdown-content>:last-child{margin-bottom:0}:host .markdown-content p,:host .markdown-content ul,:host .markdown-content ol,:host .markdown-content blockquote,:host .markdown-content pre,:host .markdown-content table{margin:0 0 var(--luzmo-ai-chat-markdown-spacing,var(--ai-chat-markdown-spacing))}:host .markdown-content h1,:host .markdown-content h2,:host .markdown-content h3,:host .markdown-content h4,:host .markdown-content h5,:host .markdown-content h6{margin:var(--luzmo-ai-chat-markdown-heading-spacing,var(--ai-chat-markdown-heading-spacing)) 0 var(--luzmo-ai-chat-markdown-spacing,var(--ai-chat-markdown-spacing));font-weight:var(--luzmo-ai-chat-markdown-heading-font-weight,var(--ai-chat-markdown-heading-font-weight))}:host .markdown-content ul,:host .markdown-content ol{padding-inline-start:var(--luzmo-ai-chat-markdown-list-indent,var(--ai-chat-markdown-list-indent))}:host .markdown-content a{color:var(--luzmo-ai-chat-markdown-link-color,var(--ai-chat-markdown-link-color))}:host .markdown-content code{font-family:var(--luzmo-ai-chat-markdown-code-font-family,var(--ai-chat-markdown-code-font-family));font-size:var(--luzmo-ai-chat-markdown-code-font-size,var(--ai-chat-markdown-code-font-size));background:var(--luzmo-ai-chat-markdown-code-background,var(--ai-chat-markdown-code-background));border-radius:var(--luzmo-ai-chat-markdown-code-border-radius,var(--ai-chat-markdown-code-border-radius));padding:.1em .3em}:host .markdown-content pre{background:var(--luzmo-ai-chat-markdown-code-background,var(--ai-chat-markdown-code-background));border-radius:var(--luzmo-ai-chat-markdown-code-border-radius,var(--ai-chat-markdown-code-border-radius));padding:.75em 1em;overflow-x:auto}:host .markdown-content pre code{background:0 0;padding:0}:host .markdown-content blockquote{border-inline-start:.1875rem solid var(--luzmo-ai-chat-markdown-border-color,var(--ai-chat-markdown-border-color));padding-inline-start:.75rem}:host .markdown-content hr{border:0;border-top:.0625rem solid var(--luzmo-ai-chat-markdown-border-color,var(--ai-chat-markdown-border-color));margin:var(--luzmo-ai-chat-markdown-heading-spacing,var(--ai-chat-markdown-heading-spacing)) 0}:host .markdown-content table{border-collapse:collapse;width:100%}:host .markdown-content th,:host .markdown-content td{border:.0625rem solid var(--luzmo-ai-chat-markdown-border-color,var(--ai-chat-markdown-border-color));text-align:start;padding:.375rem .625rem}:host .markdown-content th{background:var(--luzmo-ai-chat-markdown-table-header-background,var(--ai-chat-markdown-table-header-background));font-weight:600}:host .assistant-message-wrapper{gap:var(--luzmo-ai-chat-assistant-message-actions-margin-top,var(--ai-chat-assistant-message-actions-margin-top));font-family:var(--luzmo-ai-chat-assistant-message-font-family,var(--ai-chat-assistant-message-font-family));font-size:var(--luzmo-ai-chat-assistant-message-font-size,var(--ai-chat-assistant-message-font-size));line-height:var(--luzmo-ai-chat-assistant-message-line-height,var(--ai-chat-assistant-message-line-height));--chat-message-font-family:var(--luzmo-ai-chat-assistant-message-font-family,var(--ai-chat-assistant-message-font-family));--luzmo-chat-message-font-family:var(--luzmo-ai-chat-assistant-message-font-family,var(--ai-chat-assistant-message-font-family));--chat-message-font-size:var(--luzmo-ai-chat-assistant-message-font-size,var(--ai-chat-assistant-message-font-size));--luzmo-chat-message-font-size:var(--luzmo-ai-chat-assistant-message-font-size,var(--ai-chat-assistant-message-font-size));--chat-message-line-height:var(--luzmo-ai-chat-assistant-message-line-height,var(--ai-chat-assistant-message-line-height));--luzmo-chat-message-line-height:var(--luzmo-ai-chat-assistant-message-line-height,var(--ai-chat-assistant-message-line-height));flex-direction:column;display:flex}:host .assistant-message-body{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}:host .assistant-message-actions{align-items:center;gap:var(--luzmo-ai-chat-assistant-message-actions-gap,var(--ai-chat-assistant-message-actions-gap));flex-wrap:wrap;display:none}:host .assistant-message-actions.assistant-message-actions--has-content{display:flex}:host .assistant-message-actions.assistant-message-actions--confirming{flex-direction:column;align-items:flex-start}:host .assistant-message-actions .assistant-message-action-confirm-message{font-style:var(--luzmo-ai-chat-assistant-message-actions-font-style,var(--ai-chat-assistant-message-actions-font-style));color:var(--luzmo-ai-chat-assistant-message-actions-color,var(--ai-chat-assistant-message-actions-color));white-space:pre-line}:host .assistant-message-actions .assistant-message-action-confirm-controls{align-items:center;gap:var(--luzmo-ai-chat-assistant-message-actions-gap,var(--ai-chat-assistant-message-actions-gap));flex-wrap:wrap;display:flex}:host .assistant-message-actions luzmo-button.assistant-message-action,:host .assistant-message-actions slot::slotted(luzmo-button),:host .assistant-message-actions slot::slotted(button),:host .assistant-message-actions slot::slotted(a),:host .assistant-message-actions slot::slotted(input),:host .assistant-message-actions slot::slotted(select),:host .assistant-message-actions slot::slotted(textarea){font-style:normal}:host .assistant-message-actions slot::slotted(:not(luzmo-button):not(button):not(a):not(input):not(select):not(textarea)){font-style:var(--luzmo-ai-chat-assistant-message-actions-font-style,var(--ai-chat-assistant-message-actions-font-style));color:var(--luzmo-ai-chat-assistant-message-actions-color,var(--ai-chat-assistant-message-actions-color))}:host .assistant-context-menu-trigger{width:var(--luzmo-ai-chat-context-menu-trigger-size,var(--ai-chat-context-menu-trigger-size));height:var(--luzmo-ai-chat-context-menu-trigger-size,var(--ai-chat-context-menu-trigger-size));border:.0625rem solid var(--luzmo-ai-chat-context-menu-trigger-border-color,var(--ai-chat-context-menu-trigger-border-color));border-radius:var(--luzmo-ai-chat-context-menu-trigger-border-radius,var(--ai-chat-context-menu-trigger-border-radius));background:var(--luzmo-ai-chat-context-menu-trigger-background,var(--ai-chat-context-menu-trigger-background));color:var(--luzmo-ai-chat-context-menu-trigger-color,var(--ai-chat-context-menu-trigger-color));cursor:pointer;justify-content:center;align-items:center;padding:0;font-size:.875rem;line-height:1;transition:all .15s;display:inline-flex}:host .assistant-context-menu-trigger:hover{background:var(--luzmo-ai-chat-context-menu-trigger-hover-background,var(--ai-chat-context-menu-trigger-hover-background));border-color:var(--luzmo-ai-chat-context-menu-trigger-hover-border-color,var(--ai-chat-context-menu-trigger-hover-border-color));color:var(--luzmo-ai-chat-context-menu-trigger-hover-color,var(--ai-chat-context-menu-trigger-hover-color))}:host .assistant-context-menu-trigger:disabled{cursor:not-allowed;opacity:.6}:host .assistant-context-menu-trigger:disabled:hover{background:var(--luzmo-ai-chat-context-menu-trigger-background,var(--ai-chat-context-menu-trigger-background));border-color:var(--luzmo-ai-chat-context-menu-trigger-border-color,var(--ai-chat-context-menu-trigger-border-color));color:var(--luzmo-ai-chat-context-menu-trigger-color,var(--ai-chat-context-menu-trigger-color))}:host .assistant-context-menu-item{width:100%;color:var(--luzmo-font-color);text-align:start;cursor:pointer;font-family:var(--luzmo-ai-chat-context-menu-item-font-family,var(--ai-chat-context-menu-item-font-family));background:0 0;border:0;padding:.5rem .75rem}:host .assistant-context-menu-item:hover{background:var(--luzmo-ai-chat-context-menu-item-hover-background,var(--ai-chat-context-menu-item-hover-background))}:host .assistant-context-menu-item:disabled{opacity:.4;cursor:not-allowed}:host .assistant-context-menu-item:disabled:hover{background:0 0}:host luzmo-ai-interaction-textarea{flex-grow:0;flex-shrink:0}:host luzmo-progress-steps{padding:0 .25rem}:host .loading-message{color:var(--luzmo-font-color);align-items:center;gap:.5rem;display:flex}:host .loading-message svg{color:var(--luzmo-ai-chat-loading-message-color,var(--ai-chat-loading-message-color));font-size:var(--luzmo-ai-chat-loading-message-icon-font-size,var(--ai-chat-loading-message-icon-font-size,1rem));justify-content:center;align-items:center;display:flex}:host .loading-message svg.spin{animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){:host .assistant-context-menu-trigger{transition:none}:host .loading-message svg.spin{animation:none}}:host{--ai-chat-background:var(--luzmo-background-color);--ai-chat-border-radius:0;--ai-chat-padding:0;--ai-chat-gap:1rem;--ai-chat-border:none;--ai-chat-box-shadow:none;--ai-chat-loading-message-color:var(--luzmo-primary);--ai-chat-loading-message-icon-font-size:1rem;--ai-chat-error-message-color:var(--luzmo-danger,#dc3545);--ai-chat-cancelled-message-color:var(--luzmo-font-color-dimmed,var(--luzmo-font-color-extra-dimmed));--ai-chat-scrollbar-width:var(--luzmo-scrollbar-size);--ai-chat-scrollbar-track-background:var(--luzmo-scrollbar-track-background);--ai-chat-scrollbar-track-border-radius:var(--luzmo-scrollbar-track-border-radius);--ai-chat-scrollbar-thumb-background:var(--luzmo-scrollbar-thumb-background);--ai-chat-scrollbar-thumb-border-radius:var(--luzmo-scrollbar-thumb-border-radius);--ai-chat-scrollbar-thumb-hover-background:var(--luzmo-scrollbar-thumb-hover-background);--ai-chat-context-menu-trigger-size:1.5rem;--ai-chat-context-menu-trigger-border-color:var(--luzmo-border-color);--ai-chat-context-menu-trigger-border-radius:.375rem;--ai-chat-context-menu-trigger-background:var(--luzmo-background-color,transparent);--ai-chat-context-menu-trigger-color:var(--luzmo-font-color,#5a5a5a);--ai-chat-context-menu-trigger-hover-background:var(--luzmo-background-color-hover,#4434ff14);--ai-chat-context-menu-trigger-hover-border-color:var(--luzmo-border-color-hover,var(--luzmo-border-color));--ai-chat-context-menu-trigger-hover-color:var(--luzmo-font-color,#5a5a5a);--ai-chat-context-menu-item-hover-background:var(--luzmo-background-color-hover,#4434ff14);--ai-chat-context-menu-item-font-family:var(--luzmo-font-family);--ai-chat-markdown-line-height:1.5;--ai-chat-markdown-spacing:var(--luzmo-spacing-3);--ai-chat-markdown-heading-spacing:var(--luzmo-spacing-4);--ai-chat-markdown-heading-font-weight:var(--luzmo-font-weight-bold);--ai-chat-markdown-list-indent:calc(var(--luzmo-spacing-5) + var(--luzmo-spacing-3));--ai-chat-markdown-link-color:var(--luzmo-primary);--ai-chat-markdown-code-font-family:var(--luzmo-font-family-mono,ui-monospace, monospace);--ai-chat-markdown-code-font-size:.875em;--ai-chat-markdown-code-background:var(--luzmo-background-color-highlight);--ai-chat-markdown-code-border-radius:var(--luzmo-border-radius-s);--ai-chat-markdown-border-color:var(--luzmo-border-color);--ai-chat-markdown-table-header-background:var(--luzmo-background-color-highlight);--ai-chat-assistant-message-actions-gap:var(--luzmo-spacing-2);--ai-chat-assistant-message-actions-margin-top:var(--luzmo-spacing-3);--ai-chat-assistant-message-actions-color:var(--luzmo-font-color-extra-dimmed);--ai-chat-assistant-message-actions-font-style:italic;--ai-chat-assistant-message-font-family:var(--luzmo-font-family);--ai-chat-assistant-message-font-size:var(--luzmo-font-size-s,12px);--ai-chat-assistant-message-line-height:var(--ai-chat-markdown-line-height);--ai-chat-user-message-attachment-size:64px}";
|
|
2356
|
+
//#endregion
|
|
2357
|
+
//#region src/components/ai-chat/helpers/agent-config.ts
|
|
2358
|
+
function kn(e, t) {
|
|
2359
|
+
if (e.agentConfig) {
|
|
2360
|
+
let n = e.agentConfig, r = t ?? kn({
|
|
2361
|
+
...e,
|
|
2362
|
+
agentConfig: void 0
|
|
2363
|
+
});
|
|
2364
|
+
return n.context === void 0 && n.type === r.type ? {
|
|
2365
|
+
...r,
|
|
2366
|
+
...n,
|
|
2367
|
+
context: r.context
|
|
2368
|
+
} : n.context === void 0 ? {
|
|
2369
|
+
...n,
|
|
2370
|
+
context: null
|
|
2371
|
+
} : n;
|
|
2372
|
+
}
|
|
2373
|
+
switch (e.agent ?? "item") {
|
|
2374
|
+
case "item":
|
|
2375
|
+
default: return {
|
|
2376
|
+
type: "item",
|
|
2377
|
+
context: {
|
|
2378
|
+
chart: e.chart,
|
|
2379
|
+
task: e.task
|
|
2380
|
+
}
|
|
2381
|
+
};
|
|
2382
|
+
case "dashboard": return {
|
|
2383
|
+
type: "dashboard",
|
|
2384
|
+
context: {
|
|
2385
|
+
dashboard: e.dashboard,
|
|
2386
|
+
currentScreenMode: e.currentScreenMode
|
|
2387
|
+
}
|
|
2388
|
+
};
|
|
2389
|
+
case "custom-item": return {
|
|
2390
|
+
type: "custom-item",
|
|
2391
|
+
context: { customItem: e.customItem }
|
|
2392
|
+
};
|
|
2393
|
+
case "analyst": return { type: "analyst" };
|
|
2394
|
+
}
|
|
2395
|
+
}
|
|
2396
|
+
function An(e) {
|
|
2397
|
+
return {
|
|
2398
|
+
chart: null,
|
|
2399
|
+
dashboard: null,
|
|
2400
|
+
customItem: null,
|
|
2401
|
+
currentScreenMode: void 0,
|
|
2402
|
+
task: void 0,
|
|
2403
|
+
...e.context
|
|
2404
|
+
};
|
|
2405
|
+
}
|
|
2406
|
+
//#endregion
|
|
2407
|
+
//#region src/components/ai-chat/empty-state/ai-chat-empty-state.module.scss?inline
|
|
2408
|
+
var jn = ":host{box-sizing:border-box;width:100%;min-height:0;padding-block:var(--luzmo-ai-chat-empty-state-padding-block,var(--ai-chat-empty-state-padding-block));padding-inline:var(--luzmo-ai-chat-empty-state-padding-inline,var(--ai-chat-empty-state-padding-inline));flex:1;justify-content:center;align-items:center;display:flex}.empty-state{justify-content:center;align-items:center;gap:var(--luzmo-ai-chat-empty-state-header-actions-gap,var(--ai-chat-empty-state-header-actions-gap));width:100%;max-width:var(--luzmo-ai-chat-empty-state-max-width,var(--ai-chat-empty-state-max-width));text-align:center;flex-direction:column;display:flex}.header{flex-direction:column;align-items:center;width:100%;display:flex}.actions{align-items:center;gap:var(--luzmo-ai-chat-empty-state-actions-gap,var(--ai-chat-empty-state-actions-gap));flex-direction:column;width:100%;display:flex}.title{font-family:var(--luzmo-font-family);font-size:var(--luzmo-ai-chat-empty-state-title-font-size,var(--ai-chat-empty-state-title-font-size));font-weight:var(--luzmo-ai-chat-empty-state-title-font-weight,var(--ai-chat-empty-state-title-font-weight));line-height:var(--luzmo-ai-chat-empty-state-title-line-height,var(--ai-chat-empty-state-title-line-height));color:var(--luzmo-ai-chat-empty-state-title-color,var(--ai-chat-empty-state-title-color));text-wrap:balance;margin:0}.subtitle{font-family:var(--luzmo-font-family);font-size:var(--luzmo-ai-chat-empty-state-subtitle-font-size,var(--ai-chat-empty-state-subtitle-font-size));font-weight:var(--luzmo-ai-chat-empty-state-subtitle-font-weight,var(--ai-chat-empty-state-subtitle-font-weight));line-height:var(--luzmo-ai-chat-empty-state-subtitle-line-height,var(--ai-chat-empty-state-subtitle-line-height));color:var(--luzmo-ai-chat-empty-state-subtitle-color,var(--ai-chat-empty-state-subtitle-color));margin:0}.suggestions{justify-content:center;align-items:center;gap:var(--luzmo-ai-chat-empty-state-suggestions-gap,var(--ai-chat-empty-state-suggestions-gap));flex-wrap:wrap;width:100%;display:flex}luzmo-action-button{max-width:100%}:host{--ai-chat-empty-state-header-actions-gap:1.5rem;--ai-chat-empty-state-actions-gap:var(--luzmo-spacing-4);--ai-chat-empty-state-suggestions-gap:var(--luzmo-spacing-3);--ai-chat-empty-state-max-width:22.5rem;--ai-chat-empty-state-padding-block:2rem;--ai-chat-empty-state-padding-inline:var(--luzmo-spacing-5);--ai-chat-empty-state-title-font-size:var(--luzmo-font-size-l);--ai-chat-empty-state-title-font-weight:var(--luzmo-font-weight);--ai-chat-empty-state-title-line-height:1.4;--ai-chat-empty-state-title-color:var(--luzmo-font-color-hard);--ai-chat-empty-state-subtitle-font-size:var(--luzmo-font-size-s);--ai-chat-empty-state-subtitle-font-weight:var(--luzmo-font-weight);--ai-chat-empty-state-subtitle-line-height:var(--luzmo-line-height);--ai-chat-empty-state-subtitle-color:var(--luzmo-font-color-dimmed,var(--luzmo-font-color-extra-dimmed))}", Mn = class extends i {
|
|
2353
2409
|
constructor(...e) {
|
|
2354
2410
|
super(...e), this.title = o("What can I help you with?", { desc: "Title for the AI chat empty state" }), this.subtitle = "", this.suggestions = [], this.disabled = !1;
|
|
2355
2411
|
}
|
|
2356
2412
|
static {
|
|
2357
|
-
this.styles = f(
|
|
2413
|
+
this.styles = f(jn);
|
|
2358
2414
|
}
|
|
2359
2415
|
static {
|
|
2360
2416
|
this.tagName = "luzmo-ai-chat-empty-state";
|
|
@@ -2407,16 +2463,62 @@ var En = ":host{box-sizing:border-box;flex-direction:column;width:100%;height:10
|
|
|
2407
2463
|
};
|
|
2408
2464
|
//#endregion
|
|
2409
2465
|
//#region src/components/ai-chat/empty-state/index.ts
|
|
2410
|
-
a([p({ type: String })],
|
|
2466
|
+
a([p({ type: String })], Mn.prototype, "title", void 0), a([p({ type: String })], Mn.prototype, "subtitle", void 0), a([p({ type: Array })], Mn.prototype, "suggestions", void 0), a([p({
|
|
2411
2467
|
type: Boolean,
|
|
2412
2468
|
reflect: !0
|
|
2413
|
-
})],
|
|
2469
|
+
})], Mn.prototype, "disabled", void 0), customElements.get("luzmo-ai-chat-empty-state") || customElements.define("luzmo-ai-chat-empty-state", Mn);
|
|
2470
|
+
//#endregion
|
|
2471
|
+
//#region src/components/ai-chat/helpers/elicitation-template.ts
|
|
2472
|
+
var Nn = "answer", Pn = (e) => e.stopPropagation();
|
|
2473
|
+
function Fn(e) {
|
|
2474
|
+
let t = e.content?.[Nn];
|
|
2475
|
+
return typeof t == "string" ? t : void 0;
|
|
2476
|
+
}
|
|
2477
|
+
async function In(e) {
|
|
2478
|
+
e.stopPropagation();
|
|
2479
|
+
let t = e.currentTarget;
|
|
2480
|
+
await t.updateComplete, t.submit();
|
|
2481
|
+
}
|
|
2482
|
+
function Ln({ message: e, state: t, onSubmit: n }) {
|
|
2483
|
+
let r = e.elicitation;
|
|
2484
|
+
if (!r) return d;
|
|
2485
|
+
let i = [{
|
|
2486
|
+
id: Nn,
|
|
2487
|
+
type: "single",
|
|
2488
|
+
title: r.question,
|
|
2489
|
+
required: !0,
|
|
2490
|
+
options: r.options.map((e) => ({
|
|
2491
|
+
value: e,
|
|
2492
|
+
label: e
|
|
2493
|
+
}))
|
|
2494
|
+
}];
|
|
2495
|
+
return te(`${e.id}:${t}`, u`
|
|
2496
|
+
<luzmo-question-box
|
|
2497
|
+
size="s"
|
|
2498
|
+
.questions=${i}
|
|
2499
|
+
.value=${h([r.answer], () => r.answer ? { [Nn]: r.answer } : {})}
|
|
2500
|
+
.labels=${{
|
|
2501
|
+
submit: o("Submit", { desc: "Button that sends the chosen answer to an AI agent question" }),
|
|
2502
|
+
answerTitle: o("Answer", { desc: "Heading above the answer chosen for an AI agent question" }),
|
|
2503
|
+
change: o("Change", { desc: "Button that goes back to pick another answer for an AI agent question" })
|
|
2504
|
+
}}
|
|
2505
|
+
?readonly=${t === "answered"}
|
|
2506
|
+
?disabled=${t === "closed"}
|
|
2507
|
+
hide-close
|
|
2508
|
+
hide-skip
|
|
2509
|
+
@luzmo-submit=${n}
|
|
2510
|
+
@input=${Pn}
|
|
2511
|
+
@change=${In}
|
|
2512
|
+
@luzmo-cancel=${Pn}
|
|
2513
|
+
></luzmo-question-box>
|
|
2514
|
+
`);
|
|
2515
|
+
}
|
|
2414
2516
|
//#endregion
|
|
2415
2517
|
//#region src/components/ai-chat/ai-chat-request.ts
|
|
2416
|
-
function
|
|
2518
|
+
function Rn(e, t) {
|
|
2417
2519
|
return `${e.replace(/\/+$/, "")}/${t.replace(/^\/+|\/+$/g, "")}/aiprompt`;
|
|
2418
2520
|
}
|
|
2419
|
-
function
|
|
2521
|
+
function zn(e) {
|
|
2420
2522
|
return e.type === "placeholder" ? null : {
|
|
2421
2523
|
...e,
|
|
2422
2524
|
version: e.version || "",
|
|
@@ -2425,7 +2527,7 @@ function kn(e) {
|
|
|
2425
2527
|
aichartId: e.aichartId || ""
|
|
2426
2528
|
};
|
|
2427
2529
|
}
|
|
2428
|
-
function
|
|
2530
|
+
function Bn(e, t, n = []) {
|
|
2429
2531
|
return [
|
|
2430
2532
|
{
|
|
2431
2533
|
type: "text",
|
|
@@ -2441,7 +2543,7 @@ function An(e, t, n = []) {
|
|
|
2441
2543
|
}))
|
|
2442
2544
|
];
|
|
2443
2545
|
}
|
|
2444
|
-
function
|
|
2546
|
+
function Vn(e) {
|
|
2445
2547
|
return {
|
|
2446
2548
|
stream: e.stream ?? !0,
|
|
2447
2549
|
response_mode: "mixed",
|
|
@@ -2449,43 +2551,55 @@ function jn(e) {
|
|
|
2449
2551
|
...e.localeId ? { locale_id: e.localeId } : {}
|
|
2450
2552
|
};
|
|
2451
2553
|
}
|
|
2452
|
-
function
|
|
2554
|
+
function Hn(e, t, n) {
|
|
2453
2555
|
return {
|
|
2454
2556
|
agent: e,
|
|
2455
2557
|
task: t,
|
|
2456
|
-
...
|
|
2558
|
+
...Vn(n)
|
|
2457
2559
|
};
|
|
2458
2560
|
}
|
|
2459
|
-
function
|
|
2460
|
-
let t =
|
|
2561
|
+
function Un(e) {
|
|
2562
|
+
let t = Bn(e.prompt, e.datasetIds, e.attachmentUrls), n = e.chart ? zn(e.chart) : null;
|
|
2461
2563
|
return n && t.push({
|
|
2462
2564
|
type: "item",
|
|
2463
2565
|
value: n
|
|
2464
2566
|
}), {
|
|
2465
|
-
...
|
|
2567
|
+
...Hn("item", e.task ?? "generate", e),
|
|
2466
2568
|
input: t
|
|
2467
2569
|
};
|
|
2468
2570
|
}
|
|
2469
|
-
function
|
|
2470
|
-
let t =
|
|
2571
|
+
function Wn(e) {
|
|
2572
|
+
let t = Bn(e.prompt, e.datasetIds, e.attachmentUrls);
|
|
2471
2573
|
return e.dashboard && t.push({
|
|
2472
2574
|
type: "dashboard",
|
|
2473
2575
|
value: e.dashboard,
|
|
2474
2576
|
...e.currentScreenMode ? { current_screen_mode: e.currentScreenMode } : {}
|
|
2475
2577
|
}), {
|
|
2476
|
-
...
|
|
2578
|
+
...Hn("dashboard", "generate", e),
|
|
2477
2579
|
timezone_id: e.timezoneId ?? "UTC",
|
|
2478
2580
|
input: t
|
|
2479
2581
|
};
|
|
2480
2582
|
}
|
|
2481
|
-
function
|
|
2583
|
+
function Gn(e) {
|
|
2482
2584
|
return {
|
|
2483
|
-
...
|
|
2484
|
-
input:
|
|
2585
|
+
...Hn("analyst", "generate", e),
|
|
2586
|
+
input: Bn(e.prompt, e.datasetIds, e.attachmentUrls)
|
|
2587
|
+
};
|
|
2588
|
+
}
|
|
2589
|
+
function Kn(e) {
|
|
2590
|
+
let t = Bn(e.prompt, [], e.attachmentUrls);
|
|
2591
|
+
return e.customItem && t.push({
|
|
2592
|
+
type: "custom-item",
|
|
2593
|
+
value: e.customItem
|
|
2594
|
+
}), {
|
|
2595
|
+
...Hn("custom-item", "generate", e),
|
|
2596
|
+
text_format: "markdown",
|
|
2597
|
+
...e.internal ? { internal: !0 } : {},
|
|
2598
|
+
input: t
|
|
2485
2599
|
};
|
|
2486
2600
|
}
|
|
2487
|
-
function
|
|
2488
|
-
let n =
|
|
2601
|
+
function qn(e, t) {
|
|
2602
|
+
let n = Bn(t.prompt, t.datasetIds, t.attachmentUrls), r = t.chart ? zn(t.chart) : null;
|
|
2489
2603
|
return r && n.push({
|
|
2490
2604
|
type: "item",
|
|
2491
2605
|
value: r
|
|
@@ -2495,29 +2609,30 @@ function In(e, t) {
|
|
|
2495
2609
|
...t.currentScreenMode ? { current_screen_mode: t.currentScreenMode } : {}
|
|
2496
2610
|
}), {
|
|
2497
2611
|
agent_id: e,
|
|
2498
|
-
...
|
|
2612
|
+
...Vn(t),
|
|
2499
2613
|
input: n
|
|
2500
2614
|
};
|
|
2501
2615
|
}
|
|
2502
|
-
function
|
|
2503
|
-
if (t.agentId) return
|
|
2616
|
+
function Jn(e, t) {
|
|
2617
|
+
if (t.agentId) return qn(t.agentId, t);
|
|
2504
2618
|
switch (e) {
|
|
2505
|
-
case "dashboard": return
|
|
2506
|
-
case "analyst": return
|
|
2507
|
-
|
|
2619
|
+
case "dashboard": return Wn(t);
|
|
2620
|
+
case "analyst": return Gn(t);
|
|
2621
|
+
case "custom-item": return Kn(t);
|
|
2622
|
+
default: return Un(t);
|
|
2508
2623
|
}
|
|
2509
2624
|
}
|
|
2510
|
-
function
|
|
2625
|
+
function Yn(e, n) {
|
|
2511
2626
|
let { authKey: r, authToken: i, apiVersion: a = "0.1.0" } = n;
|
|
2512
2627
|
return n.attachmentUrls?.length && t(n.attachmentUrls), {
|
|
2513
2628
|
key: r,
|
|
2514
2629
|
token: i,
|
|
2515
2630
|
action: "create",
|
|
2516
2631
|
version: a,
|
|
2517
|
-
properties:
|
|
2632
|
+
properties: Jn(e, n)
|
|
2518
2633
|
};
|
|
2519
2634
|
}
|
|
2520
|
-
function
|
|
2635
|
+
function Xn(e, t, n, r = "0.1.0", i = null) {
|
|
2521
2636
|
return {
|
|
2522
2637
|
key: t,
|
|
2523
2638
|
token: n,
|
|
@@ -2532,7 +2647,7 @@ function zn(e, t, n, r = "0.1.0", i = null) {
|
|
|
2532
2647
|
}
|
|
2533
2648
|
//#endregion
|
|
2534
2649
|
//#region src/components/ai-chat/stream/transport.ts
|
|
2535
|
-
async function
|
|
2650
|
+
async function Zn(e) {
|
|
2536
2651
|
let t = await fetch(e.url, {
|
|
2537
2652
|
method: "POST",
|
|
2538
2653
|
headers: { "Content-Type": "application/json" },
|
|
@@ -2550,21 +2665,21 @@ async function Bn(e) {
|
|
|
2550
2665
|
conversationId: t.headers.get("x-conversation-id")
|
|
2551
2666
|
};
|
|
2552
2667
|
}
|
|
2553
|
-
function
|
|
2668
|
+
function Qn(e) {
|
|
2554
2669
|
let t = e.trim();
|
|
2555
2670
|
if (!t || t.startsWith(":") || t.startsWith("event:") || t.startsWith("id:")) return null;
|
|
2556
2671
|
let n = t;
|
|
2557
2672
|
return n.startsWith("data:") && (n = n.slice(5).trimStart()), !n || n === "[DONE]" ? null : JSON.parse(n);
|
|
2558
2673
|
}
|
|
2559
|
-
function
|
|
2674
|
+
function $n(e, t) {
|
|
2560
2675
|
try {
|
|
2561
|
-
let n =
|
|
2676
|
+
let n = Qn(e);
|
|
2562
2677
|
n && t(n);
|
|
2563
2678
|
} catch {
|
|
2564
2679
|
console.error("Failed to parse stream line");
|
|
2565
2680
|
}
|
|
2566
2681
|
}
|
|
2567
|
-
async function
|
|
2682
|
+
async function er(e, t) {
|
|
2568
2683
|
let n = e.getReader(), r = new TextDecoder(), i = "";
|
|
2569
2684
|
try {
|
|
2570
2685
|
for (;;) {
|
|
@@ -2573,18 +2688,18 @@ async function Un(e, t) {
|
|
|
2573
2688
|
i += r.decode(a, { stream: !0 });
|
|
2574
2689
|
let o = i.split(/\r?\n/);
|
|
2575
2690
|
i = o.pop() ?? "";
|
|
2576
|
-
for (let e of o)
|
|
2691
|
+
for (let e of o) $n(e, t);
|
|
2577
2692
|
}
|
|
2578
2693
|
i += r.decode();
|
|
2579
2694
|
let e = i.trim();
|
|
2580
|
-
e &&
|
|
2695
|
+
e && $n(e, t);
|
|
2581
2696
|
} finally {
|
|
2582
2697
|
n.releaseLock();
|
|
2583
2698
|
}
|
|
2584
2699
|
}
|
|
2585
2700
|
//#endregion
|
|
2586
2701
|
//#region src/components/ai-chat/stream/progress.ts
|
|
2587
|
-
function
|
|
2702
|
+
function tr() {
|
|
2588
2703
|
return {
|
|
2589
2704
|
id: "root",
|
|
2590
2705
|
step: "root",
|
|
@@ -2597,13 +2712,13 @@ function Wn() {
|
|
|
2597
2712
|
}]
|
|
2598
2713
|
};
|
|
2599
2714
|
}
|
|
2600
|
-
function
|
|
2715
|
+
function nr(e) {
|
|
2601
2716
|
let t = e.progress;
|
|
2602
2717
|
return typeof t != "object" || !t ? !1 : "id" in t && "step" in t && "status" in t;
|
|
2603
2718
|
}
|
|
2604
2719
|
//#endregion
|
|
2605
2720
|
//#region src/components/ai-chat/stream/chunk-extractors.ts
|
|
2606
|
-
function
|
|
2721
|
+
function rr(e) {
|
|
2607
2722
|
if (!e || typeof e != "object") return "";
|
|
2608
2723
|
let t = e.assistant_message;
|
|
2609
2724
|
if (!t || typeof t != "object") return "";
|
|
@@ -2613,75 +2728,82 @@ function Kn(e) {
|
|
|
2613
2728
|
let n = t.content;
|
|
2614
2729
|
return typeof n == "string" ? n : n && typeof n == "object" && typeof n.text == "string" ? n.text : "";
|
|
2615
2730
|
}
|
|
2616
|
-
function
|
|
2731
|
+
function ir(e) {
|
|
2617
2732
|
return e.type === "text_delta" && typeof e.delta == "string" ? e.delta : typeof e.text_delta == "string" ? e.text_delta : typeof e.chunk == "string" ? e.chunk : typeof e.message == "string" ? e.message : typeof e.summary == "string" ? e.summary : "";
|
|
2618
2733
|
}
|
|
2619
|
-
function
|
|
2620
|
-
return
|
|
2734
|
+
function ar(e) {
|
|
2735
|
+
return rr(e.result);
|
|
2621
2736
|
}
|
|
2622
|
-
function
|
|
2737
|
+
function or(e) {
|
|
2623
2738
|
return !!e.done || e.type === "finish" || e.type === "done" || "question" in e;
|
|
2624
2739
|
}
|
|
2625
|
-
function
|
|
2740
|
+
function sr(e, t) {
|
|
2626
2741
|
let n = typeof e.conversation_id == "string" && e.conversation_id || typeof e.conversationId == "string" && e.conversationId;
|
|
2627
2742
|
n && t.callbacks.onConversationIdChange(n);
|
|
2628
2743
|
}
|
|
2629
|
-
function
|
|
2744
|
+
function cr(e) {
|
|
2630
2745
|
for (let t of e) if (t && typeof t == "object" && t.type === "item") {
|
|
2631
2746
|
let e = t.value;
|
|
2632
2747
|
if (e && typeof e == "object") return e;
|
|
2633
2748
|
}
|
|
2634
2749
|
return null;
|
|
2635
2750
|
}
|
|
2636
|
-
function
|
|
2751
|
+
function lr(e) {
|
|
2637
2752
|
let t = e.chart ?? e.generatedChart;
|
|
2638
2753
|
if (t && typeof t == "object") return t;
|
|
2639
2754
|
let n = e.aiMessageAssets ?? e.ai_message_assets;
|
|
2640
2755
|
if (Array.isArray(n)) {
|
|
2641
|
-
let e =
|
|
2756
|
+
let e = cr(n);
|
|
2642
2757
|
if (e) return e;
|
|
2643
2758
|
}
|
|
2644
2759
|
let r = e.result;
|
|
2645
2760
|
if (r && typeof r == "object") {
|
|
2646
2761
|
let e = r.assistant_message, t = e?.aiMessageAssets ?? e?.ai_message_assets;
|
|
2647
|
-
if (Array.isArray(t)) return
|
|
2762
|
+
if (Array.isArray(t)) return cr(t);
|
|
2648
2763
|
}
|
|
2649
2764
|
return null;
|
|
2650
2765
|
}
|
|
2651
|
-
function
|
|
2766
|
+
function ur(e) {
|
|
2652
2767
|
for (let t of e) if (t && typeof t == "object" && t.type === "dashboard") {
|
|
2653
2768
|
let e = t.value;
|
|
2654
2769
|
if (e && typeof e == "object" && Array.isArray(e.views)) return e;
|
|
2655
2770
|
}
|
|
2656
2771
|
return null;
|
|
2657
2772
|
}
|
|
2658
|
-
function
|
|
2773
|
+
function dr(e) {
|
|
2659
2774
|
for (let t of e) if (t && typeof t == "object" && t.type === "dashboard") {
|
|
2660
2775
|
let e = t.name;
|
|
2661
2776
|
if (e && typeof e == "object") return e;
|
|
2662
2777
|
}
|
|
2663
2778
|
}
|
|
2664
|
-
function
|
|
2779
|
+
function fr(...e) {
|
|
2665
2780
|
return e.find(Array.isArray);
|
|
2666
2781
|
}
|
|
2667
|
-
function
|
|
2782
|
+
function pr(e) {
|
|
2668
2783
|
if (e.views && Array.isArray(e.views)) return e;
|
|
2669
2784
|
let t = e.aiMessageAssets ?? e.ai_message_assets;
|
|
2670
|
-
if (Array.isArray(t)) return
|
|
2785
|
+
if (Array.isArray(t)) return ur(t);
|
|
2671
2786
|
let n = e.result;
|
|
2672
2787
|
if (n && typeof n == "object") {
|
|
2673
2788
|
let e = n.assistant_message, t = e?.aiMessageAssets ?? e?.ai_message_assets;
|
|
2674
|
-
if (Array.isArray(t)) return
|
|
2789
|
+
if (Array.isArray(t)) return ur(t);
|
|
2675
2790
|
}
|
|
2676
2791
|
return null;
|
|
2677
2792
|
}
|
|
2678
|
-
function
|
|
2679
|
-
let t = e.aiMessageAssets ?? e.ai_message_assets, n = e.result?.assistant_message, r =
|
|
2680
|
-
return r ?
|
|
2793
|
+
function mr(e) {
|
|
2794
|
+
let t = e.aiMessageAssets ?? e.ai_message_assets, n = e.result?.assistant_message, r = fr(t, n?.aiMessageAssets ?? n?.ai_message_assets);
|
|
2795
|
+
return r ? dr(r) : void 0;
|
|
2796
|
+
}
|
|
2797
|
+
function hr(e) {
|
|
2798
|
+
let t = e.result?.assistant_message;
|
|
2799
|
+
for (let n of [e.aiMessageAssets ?? e.ai_message_assets, t?.aiMessageAssets ?? t?.ai_message_assets]) if (Array.isArray(n)) {
|
|
2800
|
+
for (let e of n) if (e && typeof e == "object" && e.type === "custom-item" && e.value && typeof e.value == "object" && !Array.isArray(e.value)) return e.value;
|
|
2801
|
+
}
|
|
2802
|
+
return null;
|
|
2681
2803
|
}
|
|
2682
2804
|
//#endregion
|
|
2683
2805
|
//#region src/components/ai-chat/stream/stream-processor.ts
|
|
2684
|
-
var
|
|
2806
|
+
var gr = /* @__PURE__ */ new Set([
|
|
2685
2807
|
"conversation-id",
|
|
2686
2808
|
"conversation_id",
|
|
2687
2809
|
"keepalive",
|
|
@@ -2689,7 +2811,7 @@ var ir = /* @__PURE__ */ new Set([
|
|
|
2689
2811
|
"finish",
|
|
2690
2812
|
"done"
|
|
2691
2813
|
]);
|
|
2692
|
-
function
|
|
2814
|
+
function _r(e, t, n) {
|
|
2693
2815
|
return {
|
|
2694
2816
|
agent: n.agent,
|
|
2695
2817
|
conversationId: t.callbacks.getConversationId(),
|
|
@@ -2697,128 +2819,148 @@ function ar(e, t, n) {
|
|
|
2697
2819
|
raw: e
|
|
2698
2820
|
};
|
|
2699
2821
|
}
|
|
2700
|
-
function
|
|
2822
|
+
function Q(e, t, n, r, i) {
|
|
2701
2823
|
let a = {
|
|
2702
|
-
...
|
|
2824
|
+
..._r(n, e, t),
|
|
2703
2825
|
recognized: !0,
|
|
2704
2826
|
type: r,
|
|
2705
2827
|
data: i
|
|
2706
2828
|
};
|
|
2707
2829
|
e.callbacks.onStep(a);
|
|
2708
2830
|
}
|
|
2709
|
-
function
|
|
2831
|
+
function vr(e, t, n, r, i) {
|
|
2710
2832
|
let a = {
|
|
2711
|
-
...
|
|
2833
|
+
..._r(n, e, t),
|
|
2712
2834
|
recognized: !1,
|
|
2713
2835
|
type: r,
|
|
2714
2836
|
data: i
|
|
2715
2837
|
};
|
|
2716
2838
|
e.callbacks.onStep(a);
|
|
2717
2839
|
}
|
|
2718
|
-
function
|
|
2840
|
+
function yr(e) {
|
|
2719
2841
|
e.state.progressCollapsed || (e.state.progressCollapsed = !0, e.callbacks.onProgressCollapsed(!0));
|
|
2720
2842
|
}
|
|
2721
|
-
function
|
|
2722
|
-
|
|
2843
|
+
function br(e, t) {
|
|
2844
|
+
yr(e), e.aiMessage.message = (e.aiMessage.message || "") + t, e.callbacks.onMessageUpdate(e.aiMessage);
|
|
2723
2845
|
}
|
|
2724
|
-
function
|
|
2846
|
+
function xr(e) {
|
|
2725
2847
|
if (!e) return null;
|
|
2726
2848
|
let t = e.descriptionMetadata?.decision;
|
|
2727
2849
|
if (t === "create" || t === "edit" || t === "question") return t;
|
|
2728
2850
|
for (let t of e.children ?? []) {
|
|
2729
|
-
let e =
|
|
2851
|
+
let e = xr(t);
|
|
2730
2852
|
if (e) return e;
|
|
2731
2853
|
}
|
|
2732
2854
|
return null;
|
|
2733
2855
|
}
|
|
2734
|
-
function
|
|
2735
|
-
if (!
|
|
2856
|
+
function Sr(e, t, n) {
|
|
2857
|
+
if (!nr(e)) return !1;
|
|
2736
2858
|
let r = e.progress;
|
|
2737
|
-
if (t.callbacks.onProgress(r),
|
|
2738
|
-
let i =
|
|
2739
|
-
i && (t.state.decision = i,
|
|
2859
|
+
if (t.callbacks.onProgress(r), Q(t, n, e, "progress", r), t.state.decision === null) {
|
|
2860
|
+
let i = xr(r);
|
|
2861
|
+
i && (t.state.decision = i, Q(t, n, e, "decision", { decision: i }));
|
|
2740
2862
|
}
|
|
2741
2863
|
return !0;
|
|
2742
2864
|
}
|
|
2743
|
-
function
|
|
2865
|
+
function Cr(e) {
|
|
2744
2866
|
return !!e.error || e.type === "error" || typeof e.error_text == "string";
|
|
2745
2867
|
}
|
|
2746
|
-
function
|
|
2868
|
+
function wr(e) {
|
|
2747
2869
|
return typeof e.error_text == "string" && e.error_text ? e.error_text : typeof e.error == "string" && e.error ? e.error : o("Something went wrong. Please try again.", { desc: "Generic error message shown in ai chat when the API request fails" });
|
|
2748
2870
|
}
|
|
2749
|
-
function
|
|
2750
|
-
if (!
|
|
2751
|
-
let r =
|
|
2752
|
-
return t.aiMessage.message = r, t.aiMessage.isError = !0, t.callbacks.onMessageUpdate(t.aiMessage),
|
|
2871
|
+
function Tr(e, t, n) {
|
|
2872
|
+
if (!Cr(e)) return !1;
|
|
2873
|
+
let r = wr(e);
|
|
2874
|
+
return t.aiMessage.message = r, t.aiMessage.isError = !0, delete t.aiMessage.elicitation, t.callbacks.onMessageUpdate(t.aiMessage), Yr(e, t, n, e.error ?? r), !0;
|
|
2753
2875
|
}
|
|
2754
|
-
function
|
|
2876
|
+
function Er(e) {
|
|
2755
2877
|
return typeof e.question == "string" && e.question ? e.question : typeof e.text == "string" && e.text ? e.text : "";
|
|
2756
2878
|
}
|
|
2757
|
-
function
|
|
2879
|
+
function Dr(e, t, n) {
|
|
2758
2880
|
if (e.type !== "interrupt") return !1;
|
|
2759
|
-
let r =
|
|
2760
|
-
return r && (t.state.interruptQuestion = r,
|
|
2881
|
+
let r = Er(e);
|
|
2882
|
+
return r && (t.state.interruptQuestion = r, br(t, r), Q(t, n, e, "interrupt", { question: r })), Yr(e, t, n), !0;
|
|
2883
|
+
}
|
|
2884
|
+
function Or(e) {
|
|
2885
|
+
let t = e.elicitation;
|
|
2886
|
+
if (!t || typeof t != "object") return null;
|
|
2887
|
+
let { question: n, options: r } = t, i = typeof n == "string" ? n.trim() : "", a = Array.isArray(r) ? [...new Set(r.filter((e) => typeof e == "string").map((e) => e.trim()))].filter(Boolean) : [];
|
|
2888
|
+
return i && a.length >= 2 ? {
|
|
2889
|
+
question: i,
|
|
2890
|
+
options: a
|
|
2891
|
+
} : null;
|
|
2892
|
+
}
|
|
2893
|
+
function kr(e, t, n) {
|
|
2894
|
+
if (e.type !== "elicitation") return !1;
|
|
2895
|
+
let r = Or(e);
|
|
2896
|
+
return r ? (yr(t), t.aiMessage.elicitation = r, t.callbacks.onMessageUpdate(t.aiMessage), Q(t, n, e, "elicitation", {
|
|
2897
|
+
question: r.question,
|
|
2898
|
+
options: r.options
|
|
2899
|
+
}), !0) : (vr(t, n, e, "elicitation", e), !0);
|
|
2761
2900
|
}
|
|
2762
|
-
function
|
|
2901
|
+
function Ar(e) {
|
|
2763
2902
|
return typeof e.asset_id == "string" ? e.asset_id : typeof e.asset_type == "string" ? e.asset_type : "default";
|
|
2764
2903
|
}
|
|
2765
|
-
function
|
|
2904
|
+
function jr(e) {
|
|
2766
2905
|
return typeof e.asset_type == "string" ? e.asset_type : "";
|
|
2767
2906
|
}
|
|
2768
|
-
function
|
|
2907
|
+
function Mr(e) {
|
|
2769
2908
|
return {
|
|
2770
|
-
assetType:
|
|
2909
|
+
assetType: jr(e),
|
|
2771
2910
|
snapshot: {}
|
|
2772
2911
|
};
|
|
2773
2912
|
}
|
|
2774
|
-
function
|
|
2913
|
+
function Nr(e, t) {
|
|
2775
2914
|
return {
|
|
2776
2915
|
...e,
|
|
2777
2916
|
...t
|
|
2778
2917
|
};
|
|
2779
2918
|
}
|
|
2780
|
-
function
|
|
2919
|
+
function Pr(e) {
|
|
2781
2920
|
let t = e.asset_delta ?? e.delta;
|
|
2782
2921
|
return t && typeof t == "object" ? t : null;
|
|
2783
2922
|
}
|
|
2784
|
-
function
|
|
2785
|
-
t.state.assets[
|
|
2923
|
+
function Fr(e, t) {
|
|
2924
|
+
t.state.assets[Ar(e)] = Mr(e);
|
|
2786
2925
|
}
|
|
2787
|
-
function
|
|
2788
|
-
let n =
|
|
2789
|
-
i && (r.snapshot =
|
|
2926
|
+
function Ir(e, t) {
|
|
2927
|
+
let n = Ar(e), r = t.state.assets[n] ?? Mr(e), i = Pr(e);
|
|
2928
|
+
i && (r.snapshot = Nr(r.snapshot, i)), t.state.assets[n] = r;
|
|
2790
2929
|
}
|
|
2791
|
-
function
|
|
2930
|
+
function Lr(e, t) {
|
|
2792
2931
|
let n = e.asset ?? e.value ?? e.asset_delta ?? e.delta;
|
|
2793
|
-
return n && typeof n == "object" ?
|
|
2932
|
+
return n && typeof n == "object" ? Nr(t?.snapshot ?? {}, n) : t?.snapshot ?? {};
|
|
2794
2933
|
}
|
|
2795
|
-
function
|
|
2796
|
-
let r =
|
|
2797
|
-
delete t.state.assets[r],
|
|
2934
|
+
function Rr(e, t, n) {
|
|
2935
|
+
let r = Ar(e), i = t.state.assets[r], a = i?.assetType || jr(e), o = Lr(e, i);
|
|
2936
|
+
delete t.state.assets[r], Hr(a, o, e, t, n);
|
|
2798
2937
|
}
|
|
2799
|
-
function
|
|
2938
|
+
function zr(e, t, n) {
|
|
2800
2939
|
switch (e.type) {
|
|
2801
|
-
case "asset_start": return
|
|
2802
|
-
case "asset_delta": return
|
|
2803
|
-
case "asset_end": return
|
|
2940
|
+
case "asset_start": return Fr(e, t), !0;
|
|
2941
|
+
case "asset_delta": return Ir(e, t), !0;
|
|
2942
|
+
case "asset_end": return Rr(e, t, n), !0;
|
|
2804
2943
|
default: return !1;
|
|
2805
2944
|
}
|
|
2806
2945
|
}
|
|
2807
|
-
function
|
|
2808
|
-
n.state.chartSnapshot = e, n.aiMessage.hasChart = !0, typeof t.messageId == "string" && (n.aiMessage.apiMessageId = t.messageId), n.callbacks.onMessageUpdate(n.aiMessage),
|
|
2946
|
+
function Br(e, t, n, r) {
|
|
2947
|
+
n.state.chartSnapshot = e, n.aiMessage.hasChart = !0, typeof t.messageId == "string" && (n.aiMessage.apiMessageId = t.messageId), n.callbacks.onMessageUpdate(n.aiMessage), Q(n, r, t, "chart", e);
|
|
2809
2948
|
}
|
|
2810
|
-
function
|
|
2949
|
+
function Vr(e, t, n, r) {
|
|
2950
|
+
n.state.customItemSnapshot = e, Q(n, r, t, "custom-item", e);
|
|
2951
|
+
}
|
|
2952
|
+
function Hr(e, t, n, r, i) {
|
|
2811
2953
|
switch (e) {
|
|
2812
2954
|
case "dashboard-title": {
|
|
2813
2955
|
let e = t.name;
|
|
2814
|
-
e && typeof e == "object" && (r.state.dashboardName = e,
|
|
2956
|
+
e && typeof e == "object" && (r.state.dashboardName = e, Q(r, i, n, "dashboard-title", { name: e }));
|
|
2815
2957
|
return;
|
|
2816
2958
|
}
|
|
2817
2959
|
case "dashboard-layout":
|
|
2818
|
-
|
|
2960
|
+
Q(r, i, n, "dashboard-layout", t);
|
|
2819
2961
|
return;
|
|
2820
2962
|
case "dashboard-item":
|
|
2821
|
-
|
|
2963
|
+
Q(r, i, n, "dashboard-item", {
|
|
2822
2964
|
slot: Number(t.slot),
|
|
2823
2965
|
chart: t.chart ?? t
|
|
2824
2966
|
});
|
|
@@ -2826,68 +2968,77 @@ function Or(e, t, n, r, i) {
|
|
|
2826
2968
|
case "dashboard":
|
|
2827
2969
|
r.state.dashboardSnapshot = t;
|
|
2828
2970
|
return;
|
|
2829
|
-
default:
|
|
2971
|
+
default: Ur(e, t, n, r, i);
|
|
2830
2972
|
}
|
|
2831
2973
|
}
|
|
2832
|
-
function
|
|
2974
|
+
function Ur(e, t, n, r, i) {
|
|
2833
2975
|
if (i.chartAssetType && e === i.chartAssetType) {
|
|
2834
|
-
|
|
2976
|
+
Br(t, n, r, i);
|
|
2835
2977
|
return;
|
|
2836
2978
|
}
|
|
2837
2979
|
if (i.dashboardAssetType && e === i.dashboardAssetType) {
|
|
2838
2980
|
r.state.dashboardSnapshot = t;
|
|
2839
2981
|
return;
|
|
2840
2982
|
}
|
|
2841
|
-
|
|
2983
|
+
if (i.customItemAssetType && e === i.customItemAssetType) {
|
|
2984
|
+
Vr(t, n, r, i);
|
|
2985
|
+
return;
|
|
2986
|
+
}
|
|
2987
|
+
vr(r, i, n, e || "asset", t);
|
|
2842
2988
|
}
|
|
2843
|
-
function
|
|
2989
|
+
function Wr(e, t, n) {
|
|
2844
2990
|
let r = !1;
|
|
2845
2991
|
if (n.dashboardAssetType) {
|
|
2846
|
-
let n =
|
|
2992
|
+
let n = pr(e);
|
|
2847
2993
|
if (n) {
|
|
2848
2994
|
t.state.dashboardSnapshot = n;
|
|
2849
|
-
let i =
|
|
2995
|
+
let i = mr(e);
|
|
2850
2996
|
i && (t.state.dashboardName = i), r = !0;
|
|
2851
2997
|
}
|
|
2852
2998
|
}
|
|
2853
2999
|
if (n.chartAssetType && !t.state.chartSnapshot) {
|
|
2854
|
-
let i =
|
|
2855
|
-
i && (
|
|
3000
|
+
let i = lr(e);
|
|
3001
|
+
i && (Br(i, e, t, n), r = !0);
|
|
3002
|
+
}
|
|
3003
|
+
if (n.customItemAssetType && !t.state.customItemSnapshot) {
|
|
3004
|
+
let i = hr(e);
|
|
3005
|
+
i && (Vr(i, e, t, n), r = !0);
|
|
2856
3006
|
}
|
|
2857
3007
|
return r;
|
|
2858
3008
|
}
|
|
2859
|
-
function
|
|
3009
|
+
function Gr(e, t, n) {
|
|
2860
3010
|
return {
|
|
2861
3011
|
...e,
|
|
2862
3012
|
generatedChart: t,
|
|
2863
3013
|
conversationId: n.callbacks.getConversationId()
|
|
2864
3014
|
};
|
|
2865
3015
|
}
|
|
2866
|
-
function
|
|
3016
|
+
function Kr(e, t, n) {
|
|
2867
3017
|
for (let r of Object.keys(t.state.assets)) {
|
|
2868
3018
|
let i = t.state.assets[r];
|
|
2869
|
-
delete t.state.assets[r], !(n.chartAssetType && i.assetType === n.chartAssetType && t.state.chartSnapshot || n.dashboardAssetType && i.assetType === n.dashboardAssetType && t.state.dashboardSnapshot) &&
|
|
3019
|
+
delete t.state.assets[r], !(n.chartAssetType && i.assetType === n.chartAssetType && t.state.chartSnapshot || n.dashboardAssetType && i.assetType === n.dashboardAssetType && t.state.dashboardSnapshot || n.customItemAssetType && i.assetType === n.customItemAssetType && t.state.customItemSnapshot) && Hr(i.assetType, i.snapshot, e, t, n);
|
|
2870
3020
|
}
|
|
2871
3021
|
}
|
|
2872
|
-
function
|
|
2873
|
-
let n =
|
|
3022
|
+
function qr(e, t) {
|
|
3023
|
+
let n = ar(e);
|
|
2874
3024
|
!n || t.aiMessage.message === n || (t.aiMessage.message = n, t.callbacks.onMessageUpdate(t.aiMessage));
|
|
2875
3025
|
}
|
|
2876
|
-
function
|
|
2877
|
-
let r = t.state.dashboardSnapshot ?? (n.dashboardAssetType ?
|
|
3026
|
+
function Jr(e, t, n) {
|
|
3027
|
+
let r = t.state.dashboardSnapshot ?? (n.dashboardAssetType ? pr(e) : null), i = t.state.chartSnapshot ?? (n.chartAssetType ? lr(e) : null);
|
|
2878
3028
|
return {
|
|
2879
3029
|
agent: n.agent,
|
|
2880
3030
|
conversationId: t.callbacks.getConversationId(),
|
|
2881
3031
|
message: t.aiMessage,
|
|
2882
3032
|
...r ? { dashboard: r } : {},
|
|
2883
|
-
...i ? { chart:
|
|
3033
|
+
...i ? { chart: Gr(e, i, t) } : {},
|
|
3034
|
+
...t.state.customItemSnapshot ? { customItem: t.state.customItemSnapshot } : {},
|
|
2884
3035
|
...t.state.dashboardName ? { name: t.state.dashboardName } : {},
|
|
2885
3036
|
raw: e
|
|
2886
3037
|
};
|
|
2887
3038
|
}
|
|
2888
|
-
function
|
|
3039
|
+
function Yr(e, t, n, r) {
|
|
2889
3040
|
if (!t.state.completed) {
|
|
2890
|
-
if (t.state.completed = !0,
|
|
3041
|
+
if (t.state.completed = !0, Kr(e, t, n), yr(t), r !== void 0) {
|
|
2891
3042
|
t.callbacks.onComplete({
|
|
2892
3043
|
agent: n.agent,
|
|
2893
3044
|
conversationId: t.callbacks.getConversationId(),
|
|
@@ -2897,32 +3048,32 @@ function Fr(e, t, n, r) {
|
|
|
2897
3048
|
});
|
|
2898
3049
|
return;
|
|
2899
3050
|
}
|
|
2900
|
-
|
|
3051
|
+
qr(e, t), t.callbacks.onComplete(Jr(e, t, n));
|
|
2901
3052
|
}
|
|
2902
3053
|
}
|
|
2903
|
-
function
|
|
3054
|
+
function Xr(e) {
|
|
2904
3055
|
return typeof e.type == "string" && e.type ? e.type : typeof e.asset_type == "string" && e.asset_type ? e.asset_type : "";
|
|
2905
3056
|
}
|
|
2906
|
-
function
|
|
2907
|
-
let r =
|
|
2908
|
-
return r ? (t.state.accumulatedText += r,
|
|
3057
|
+
function Zr(e, t, n) {
|
|
3058
|
+
let r = ir(e);
|
|
3059
|
+
return r ? (t.state.accumulatedText += r, br(t, r), Q(t, n, e, "text", {
|
|
2909
3060
|
delta: r,
|
|
2910
3061
|
text: t.state.accumulatedText
|
|
2911
3062
|
}), !0) : !1;
|
|
2912
3063
|
}
|
|
2913
|
-
function
|
|
3064
|
+
function Qr(e, t, n, r, i) {
|
|
2914
3065
|
if (r || i) return;
|
|
2915
|
-
let a =
|
|
2916
|
-
a && !
|
|
3066
|
+
let a = Xr(e);
|
|
3067
|
+
a && !gr.has(a) && vr(t, n, e, a, e);
|
|
2917
3068
|
}
|
|
2918
|
-
function
|
|
2919
|
-
if (
|
|
2920
|
-
let r =
|
|
2921
|
-
|
|
3069
|
+
function $r(e, t, n) {
|
|
3070
|
+
if (sr(e, t), Sr(e, t, n) || Tr(e, t, n) || Dr(e, t, n) || kr(e, t, n) || zr(e, t, n)) return;
|
|
3071
|
+
let r = Zr(e, t, n), i = Wr(e, t, n), a = r || i, o = or(e);
|
|
3072
|
+
Qr(e, t, n, a, o), o && Yr(e, t, n);
|
|
2922
3073
|
}
|
|
2923
3074
|
//#endregion
|
|
2924
3075
|
//#region src/components/ai-chat/stream/registry.ts
|
|
2925
|
-
function
|
|
3076
|
+
function ei(e) {
|
|
2926
3077
|
switch (e) {
|
|
2927
3078
|
case "dashboard": return {
|
|
2928
3079
|
agent: e,
|
|
@@ -2932,14 +3083,18 @@ function Br(e) {
|
|
|
2932
3083
|
agent: e,
|
|
2933
3084
|
chartAssetType: "item"
|
|
2934
3085
|
};
|
|
3086
|
+
case "custom-item": return {
|
|
3087
|
+
agent: e,
|
|
3088
|
+
customItemAssetType: "custom-item"
|
|
3089
|
+
};
|
|
2935
3090
|
default: return { agent: e };
|
|
2936
3091
|
}
|
|
2937
3092
|
}
|
|
2938
|
-
function
|
|
2939
|
-
let t =
|
|
2940
|
-
return (e, n) =>
|
|
3093
|
+
function ti(e) {
|
|
3094
|
+
let t = ei(e);
|
|
3095
|
+
return (e, n) => $r(e, n, t);
|
|
2941
3096
|
}
|
|
2942
|
-
function
|
|
3097
|
+
function ni() {
|
|
2943
3098
|
return {
|
|
2944
3099
|
progressCollapsed: !1,
|
|
2945
3100
|
accumulatedText: "",
|
|
@@ -2948,16 +3103,17 @@ function Hr() {
|
|
|
2948
3103
|
dashboardSnapshot: null,
|
|
2949
3104
|
dashboardName: void 0,
|
|
2950
3105
|
chartSnapshot: null,
|
|
3106
|
+
customItemSnapshot: null,
|
|
2951
3107
|
interruptQuestion: null,
|
|
2952
3108
|
completed: !1
|
|
2953
3109
|
};
|
|
2954
3110
|
}
|
|
2955
3111
|
//#endregion
|
|
2956
3112
|
//#region src/components/ai-chat/session/ai-chat-session.ts
|
|
2957
|
-
function
|
|
3113
|
+
function ri() {
|
|
2958
3114
|
return `msg-${Date.now()}-${Math.random().toString(36).slice(2, 9)}`;
|
|
2959
3115
|
}
|
|
2960
|
-
var
|
|
3116
|
+
var ii = class {
|
|
2961
3117
|
constructor(e, t = {}) {
|
|
2962
3118
|
this._uiBridgeCallbacks = {}, this._subscribers = /* @__PURE__ */ new Set(), this._state = {
|
|
2963
3119
|
messages: [],
|
|
@@ -2972,7 +3128,7 @@ var Wr = class {
|
|
|
2972
3128
|
apiVersion: "0.1.0",
|
|
2973
3129
|
stream: !0,
|
|
2974
3130
|
...e
|
|
2975
|
-
}, this._hostCallbacks = t, this._state = {
|
|
3131
|
+
}, e.agentConfig && (this._config.agentConfig = kn(e)), this._hostCallbacks = t, this._state = {
|
|
2976
3132
|
...this._state,
|
|
2977
3133
|
messages: e.messages ? [...e.messages] : [],
|
|
2978
3134
|
selectedDatasets: e.selectedDatasets ? [...e.selectedDatasets] : [],
|
|
@@ -2988,6 +3144,9 @@ var Wr = class {
|
|
|
2988
3144
|
get isGenerating() {
|
|
2989
3145
|
return this._state.isGenerating;
|
|
2990
3146
|
}
|
|
3147
|
+
get agentConfig() {
|
|
3148
|
+
return kn(this._config);
|
|
3149
|
+
}
|
|
2991
3150
|
subscribe(e) {
|
|
2992
3151
|
return this._subscribers.add(e), e(this._state), () => {
|
|
2993
3152
|
this._subscribers.delete(e);
|
|
@@ -2997,24 +3156,29 @@ var Wr = class {
|
|
|
2997
3156
|
this._uiBridgeCallbacks = e;
|
|
2998
3157
|
}
|
|
2999
3158
|
updateConfig(e) {
|
|
3159
|
+
let t = this.agentConfig, n = this._config.agentConfig !== void 0;
|
|
3000
3160
|
this._config = {
|
|
3001
3161
|
...this._config,
|
|
3002
3162
|
...e
|
|
3003
|
-
};
|
|
3004
|
-
let
|
|
3163
|
+
}, e.agentConfig && (this._config.agentConfig = kn(this._config, t));
|
|
3164
|
+
let r = {};
|
|
3005
3165
|
if ("conversationId" in e) {
|
|
3006
|
-
let
|
|
3007
|
-
|
|
3166
|
+
let t = e.conversationId ?? null;
|
|
3167
|
+
t !== this._state.conversationId && (r.conversationId = t);
|
|
3008
3168
|
}
|
|
3009
3169
|
if ("selectedDatasets" in e && e.selectedDatasets) {
|
|
3010
|
-
let
|
|
3011
|
-
this._areSelectedDatasetsEqual(
|
|
3170
|
+
let t = [...e.selectedDatasets];
|
|
3171
|
+
this._areSelectedDatasetsEqual(t, this._state.selectedDatasets) || (r.selectedDatasets = t);
|
|
3012
3172
|
}
|
|
3013
3173
|
if ("messages" in e && e.messages) {
|
|
3014
|
-
let
|
|
3015
|
-
this._areChatMessagesEqual(
|
|
3174
|
+
let t = [...e.messages];
|
|
3175
|
+
this._areChatMessagesEqual(t, this._state.messages) || (r.messages = t);
|
|
3176
|
+
}
|
|
3177
|
+
if ("isGenerating" in e && e.isGenerating !== this._state.isGenerating && (r.isGenerating = e.isGenerating), "progress" in e && (r.progress = e.progress ?? null), "progressCollapsed" in e && e.progressCollapsed !== this._state.progressCollapsed && (r.progressCollapsed = e.progressCollapsed), Object.keys(r).length > 0) this._patchState(r);
|
|
3178
|
+
else if ("agentConfig" in e && (n || this._config.agentConfig !== void 0)) {
|
|
3179
|
+
let e = this.agentConfig;
|
|
3180
|
+
(e.type !== t.type || e.context !== t.context) && this._notifySubscribers();
|
|
3016
3181
|
}
|
|
3017
|
-
"isGenerating" in e && e.isGenerating !== this._state.isGenerating && (t.isGenerating = e.isGenerating), "progress" in e && (t.progress = e.progress ?? null), "progressCollapsed" in e && e.progressCollapsed !== this._state.progressCollapsed && (t.progressCollapsed = e.progressCollapsed), Object.keys(t).length > 0 && this._patchState(t);
|
|
3018
3182
|
}
|
|
3019
3183
|
setSelectedDatasets(e) {
|
|
3020
3184
|
this._patchState({ selectedDatasets: [...e] }), this._emit("onDatasetsChanged", this._state.selectedDatasets);
|
|
@@ -3030,10 +3194,10 @@ var Wr = class {
|
|
|
3030
3194
|
return !this._config.requireDataset || this._state.selectedDatasets.length > 0 || !!e;
|
|
3031
3195
|
}
|
|
3032
3196
|
getAiPromptUrl() {
|
|
3033
|
-
return
|
|
3197
|
+
return Rn(this._config.apiUrl ?? "https://api.luzmo.com", this._config.apiVersion ?? "0.1.0");
|
|
3034
3198
|
}
|
|
3035
|
-
buildRequestBody(e, t, n = [], r = this._config.agentId) {
|
|
3036
|
-
return
|
|
3199
|
+
buildRequestBody(e, t, n = [], r = this._config.agentId, i = {}) {
|
|
3200
|
+
return Yn(this.agentConfig.type, {
|
|
3037
3201
|
prompt: e,
|
|
3038
3202
|
datasetIds: t,
|
|
3039
3203
|
authKey: this._config.authKey,
|
|
@@ -3042,14 +3206,17 @@ var Wr = class {
|
|
|
3042
3206
|
agentId: r,
|
|
3043
3207
|
chart: this._config.chart ?? null,
|
|
3044
3208
|
dashboard: this._config.dashboard ?? null,
|
|
3209
|
+
customItem: this._config.customItem ?? null,
|
|
3045
3210
|
currentScreenMode: this._config.currentScreenMode,
|
|
3046
3211
|
localeId: this._config.localeId,
|
|
3047
3212
|
timezoneId: this._config.timezoneId,
|
|
3048
3213
|
task: this._config.task,
|
|
3214
|
+
...this._config.agentConfig ? An(this.agentConfig) : {},
|
|
3049
3215
|
modelPreference: this._config.modelPreference,
|
|
3050
3216
|
apiVersion: this._config.apiVersion,
|
|
3051
3217
|
stream: this._config.stream,
|
|
3052
|
-
attachmentUrls: n
|
|
3218
|
+
attachmentUrls: n,
|
|
3219
|
+
internal: i.internal
|
|
3053
3220
|
});
|
|
3054
3221
|
}
|
|
3055
3222
|
buildPromptSubmittedDetail(e) {
|
|
@@ -3058,8 +3225,8 @@ var Wr = class {
|
|
|
3058
3225
|
prompt: e.prompt,
|
|
3059
3226
|
selectedDatasets: e.selectedDatasets,
|
|
3060
3227
|
datasetIds: e.datasetIds,
|
|
3061
|
-
agent: this.
|
|
3062
|
-
request: this.buildRequestBody(e.prompt, e.datasetIds, t, e.agentId),
|
|
3228
|
+
agent: this.agentConfig.type,
|
|
3229
|
+
request: this.buildRequestBody(e.prompt, e.datasetIds, t, e.agentId, { internal: e.internal }),
|
|
3063
3230
|
url: this.getAiPromptUrl(),
|
|
3064
3231
|
...e.signal ? { signal: e.signal } : {},
|
|
3065
3232
|
...e.attachments?.length ? { attachments: e.attachments } : {},
|
|
@@ -3093,8 +3260,11 @@ var Wr = class {
|
|
|
3093
3260
|
return t(r), r;
|
|
3094
3261
|
}
|
|
3095
3262
|
async submit(e) {
|
|
3263
|
+
await this._submit(e);
|
|
3264
|
+
}
|
|
3265
|
+
async _submit(e) {
|
|
3096
3266
|
let t = e.datasetIds ?? this._state.selectedDatasets.map((e) => e.id);
|
|
3097
|
-
if (!this.isDatasetRequirementMet(e.agentId)) return;
|
|
3267
|
+
if (!this.isDatasetRequirementMet(e.agentId)) return !1;
|
|
3098
3268
|
this._abortInflight();
|
|
3099
3269
|
let n = new AbortController();
|
|
3100
3270
|
this._abortController = n;
|
|
@@ -3102,18 +3272,18 @@ var Wr = class {
|
|
|
3102
3272
|
try {
|
|
3103
3273
|
r = await this._resolveAttachmentUrls(e, n.signal);
|
|
3104
3274
|
} catch (e) {
|
|
3105
|
-
if (this._abortController === n && (this._abortController = null), n.signal.aborted || e.name === "AbortError") return;
|
|
3275
|
+
if (this._abortController === n && (this._abortController = null), n.signal.aborted || e.name === "AbortError") return !1;
|
|
3106
3276
|
throw e;
|
|
3107
3277
|
}
|
|
3108
|
-
if (n.signal.aborted || this._abortController !== n) return;
|
|
3278
|
+
if (n.signal.aborted || this._abortController !== n) return !1;
|
|
3109
3279
|
let i = {
|
|
3110
|
-
id: e.aiMessageId ??
|
|
3280
|
+
id: e.aiMessageId ?? ri(),
|
|
3111
3281
|
type: "ai",
|
|
3112
3282
|
message: ""
|
|
3113
3283
|
}, a = [...this._state.messages];
|
|
3114
3284
|
if (!e.skipUserMessage) {
|
|
3115
3285
|
let t = {
|
|
3116
|
-
id:
|
|
3286
|
+
id: ri(),
|
|
3117
3287
|
type: "user",
|
|
3118
3288
|
message: e.prompt,
|
|
3119
3289
|
...r.length ? { attachmentUrls: r } : {}
|
|
@@ -3123,7 +3293,7 @@ var Wr = class {
|
|
|
3123
3293
|
a = [...a, i], this._inflightMessage = i, this._receivedProgress = !1, this._patchState({
|
|
3124
3294
|
messages: a,
|
|
3125
3295
|
isGenerating: !0,
|
|
3126
|
-
progress:
|
|
3296
|
+
progress: tr(),
|
|
3127
3297
|
progressCollapsed: !1,
|
|
3128
3298
|
inflightMessage: i
|
|
3129
3299
|
});
|
|
@@ -3136,96 +3306,123 @@ var Wr = class {
|
|
|
3136
3306
|
signal: n.signal,
|
|
3137
3307
|
attachments: e.attachments,
|
|
3138
3308
|
attachmentUrls: r,
|
|
3139
|
-
agentId: e.agentId
|
|
3309
|
+
agentId: e.agentId,
|
|
3310
|
+
internal: e.internal
|
|
3140
3311
|
});
|
|
3141
3312
|
try {
|
|
3142
3313
|
await this._invokeCallback("onPromptSubmitted", t);
|
|
3143
3314
|
} catch (e) {
|
|
3144
|
-
e.name === "AbortError" ? this.abort() : (this._handleSubmitError(e, i), this._finalizeInflightMessage()), this._patchState({ isGenerating: !1 });
|
|
3315
|
+
e.name === "AbortError" ? this.abort() : (this._handleSubmitError(e, i, t.agent), this._finalizeInflightMessage()), this._patchState({ isGenerating: !1 });
|
|
3145
3316
|
}
|
|
3146
|
-
return;
|
|
3317
|
+
return !0;
|
|
3147
3318
|
}
|
|
3148
|
-
let c = this.buildRequestBody(e.prompt, t, r, e.agentId), l =
|
|
3319
|
+
let c = this.buildRequestBody(e.prompt, t, r, e.agentId, { internal: e.internal }), l = this.agentConfig.type, u = ti(l), d = {
|
|
3149
3320
|
aiMessage: i,
|
|
3150
3321
|
callbacks: this._createStreamCallbacks(),
|
|
3151
|
-
state:
|
|
3152
|
-
},
|
|
3322
|
+
state: ni()
|
|
3323
|
+
}, f = this._config.fetchStreaming ?? Zn, p = !1;
|
|
3153
3324
|
try {
|
|
3154
|
-
let { body: e, conversationId: t } = await
|
|
3325
|
+
let { body: e, conversationId: t } = await f({
|
|
3155
3326
|
url: this.getAiPromptUrl(),
|
|
3156
3327
|
body: c,
|
|
3157
3328
|
signal: n.signal
|
|
3158
3329
|
});
|
|
3159
|
-
t && this._setConversationId(t), await
|
|
3330
|
+
t && this._setConversationId(t), await er(e, (e) => u(e, d)), p = !0;
|
|
3160
3331
|
} catch (e) {
|
|
3161
|
-
e.name !== "AbortError" && (this._handleSubmitError(e, i),
|
|
3332
|
+
e.name !== "AbortError" && (this._handleSubmitError(e, i, l), p = !0);
|
|
3333
|
+
} finally {
|
|
3334
|
+
this._abortController === n && (p ? this._finalizeInflightMessage() : this._discardInflightMessage(), this._patchState({ isGenerating: !1 }), this._abortController = null);
|
|
3335
|
+
}
|
|
3336
|
+
return !0;
|
|
3337
|
+
}
|
|
3338
|
+
async answerElicitation(e, t, n = {}) {
|
|
3339
|
+
let r = this._state.messages.at(-1), i = r?.id === e ? r.elicitation : void 0;
|
|
3340
|
+
if (this._state.isGenerating || !i || i.answer || !i.options.includes(t) || !this.isDatasetRequirementMet(n.agentId)) return !1;
|
|
3341
|
+
let a = (t) => {
|
|
3342
|
+
this._patchState({ messages: this._state.messages.map((n) => n.id === e ? {
|
|
3343
|
+
...n,
|
|
3344
|
+
elicitation: {
|
|
3345
|
+
...i,
|
|
3346
|
+
answer: t
|
|
3347
|
+
}
|
|
3348
|
+
} : n) });
|
|
3349
|
+
};
|
|
3350
|
+
a(t);
|
|
3351
|
+
let o = !1;
|
|
3352
|
+
try {
|
|
3353
|
+
o = await this._submit({
|
|
3354
|
+
...n,
|
|
3355
|
+
prompt: t
|
|
3356
|
+
});
|
|
3162
3357
|
} finally {
|
|
3163
|
-
|
|
3358
|
+
o || a(void 0);
|
|
3164
3359
|
}
|
|
3360
|
+
return o;
|
|
3165
3361
|
}
|
|
3166
3362
|
async restore(e) {
|
|
3167
|
-
|
|
3168
|
-
|
|
3363
|
+
let t = this.agentConfig.type;
|
|
3364
|
+
if (t !== "item") return {};
|
|
3365
|
+
let n = Xn(e.restoreToMessageId, this._config.authKey, this._config.authToken, this._config.apiVersion, this._state.conversationId);
|
|
3169
3366
|
if (this._patchState({
|
|
3170
3367
|
isGenerating: !0,
|
|
3171
3368
|
progress: null,
|
|
3172
3369
|
progressCollapsed: !1
|
|
3173
3370
|
}), this._hasCallback("onRestoreRequested")) {
|
|
3174
|
-
let
|
|
3371
|
+
let t = {
|
|
3175
3372
|
apiMessageId: e.restoreToMessageId,
|
|
3176
3373
|
messageIndex: e.messageIndex,
|
|
3177
|
-
request:
|
|
3374
|
+
request: n,
|
|
3178
3375
|
url: this.getAiPromptUrl()
|
|
3179
3376
|
};
|
|
3180
3377
|
try {
|
|
3181
|
-
await this._invokeCallback("onRestoreRequested",
|
|
3378
|
+
await this._invokeCallback("onRestoreRequested", t);
|
|
3182
3379
|
} finally {
|
|
3183
3380
|
this._patchState({ isGenerating: !1 });
|
|
3184
3381
|
}
|
|
3185
3382
|
return {};
|
|
3186
3383
|
}
|
|
3187
3384
|
try {
|
|
3188
|
-
let
|
|
3385
|
+
let r = await fetch(this.getAiPromptUrl(), {
|
|
3189
3386
|
method: "POST",
|
|
3190
3387
|
headers: { "Content-Type": "application/json" },
|
|
3191
3388
|
mode: "cors",
|
|
3192
|
-
body: JSON.stringify(
|
|
3389
|
+
body: JSON.stringify(n)
|
|
3193
3390
|
});
|
|
3194
|
-
if (!
|
|
3195
|
-
let e = await
|
|
3196
|
-
throw Error(e?.message || `API request failed with status ${
|
|
3391
|
+
if (!r.ok) {
|
|
3392
|
+
let e = await r.json().catch(() => null);
|
|
3393
|
+
throw Error(e?.message || `API request failed with status ${r.status}`);
|
|
3197
3394
|
}
|
|
3198
|
-
let
|
|
3199
|
-
...typeof
|
|
3200
|
-
...
|
|
3201
|
-
...
|
|
3202
|
-
generatedChart:
|
|
3395
|
+
let i = await r.json().catch(() => null), a = i?.generatedChart ?? (i ? lr(i) : null), o = {
|
|
3396
|
+
...typeof i?.message == "string" ? { message: i.message } : {},
|
|
3397
|
+
...a ? { chart: {
|
|
3398
|
+
...i,
|
|
3399
|
+
generatedChart: a
|
|
3203
3400
|
} } : {}
|
|
3204
|
-
},
|
|
3205
|
-
if (
|
|
3206
|
-
...
|
|
3207
|
-
message:
|
|
3208
|
-
}), this._patchState({ messages: [...
|
|
3209
|
-
let
|
|
3210
|
-
id:
|
|
3401
|
+
}, s = e.messageIndex >= 0 && e.messageIndex < this._state.messages.length ? this._state.messages.slice(0, e.messageIndex + 1) : this._state.messages;
|
|
3402
|
+
if (o.message && s[e.messageIndex]?.type === "ai" && (s[e.messageIndex] = {
|
|
3403
|
+
...s[e.messageIndex],
|
|
3404
|
+
message: o.message
|
|
3405
|
+
}), this._patchState({ messages: [...s] }), o.chart || o.message) {
|
|
3406
|
+
let n = s[e.messageIndex], r = n?.type === "ai" ? n : {
|
|
3407
|
+
id: ri(),
|
|
3211
3408
|
type: "ai",
|
|
3212
|
-
message:
|
|
3409
|
+
message: o.message ?? ""
|
|
3213
3410
|
};
|
|
3214
3411
|
this._emit("onComplete", {
|
|
3215
|
-
agent:
|
|
3412
|
+
agent: t,
|
|
3216
3413
|
conversationId: this._state.conversationId,
|
|
3217
|
-
message:
|
|
3218
|
-
...
|
|
3219
|
-
...
|
|
3414
|
+
message: r,
|
|
3415
|
+
...o.chart ? { chart: o.chart } : {},
|
|
3416
|
+
...i ? { raw: i } : {}
|
|
3220
3417
|
});
|
|
3221
3418
|
}
|
|
3222
|
-
return
|
|
3419
|
+
return o;
|
|
3223
3420
|
} finally {
|
|
3224
3421
|
this._patchState({ isGenerating: !1 });
|
|
3225
3422
|
}
|
|
3226
3423
|
}
|
|
3227
3424
|
buildRestoreRequest(e) {
|
|
3228
|
-
return
|
|
3425
|
+
return Xn(e, this._config.authKey, this._config.authToken, this._config.apiVersion, this._state.conversationId);
|
|
3229
3426
|
}
|
|
3230
3427
|
abort(e = {}) {
|
|
3231
3428
|
this._abortController?.abort(), this._abortController = null, e.notify && this._inflightMessage ? this._markInflightCancelled(e.cancelledMessage) : this._discardInflightMessage(), this._patchState({
|
|
@@ -3284,19 +3481,19 @@ var Wr = class {
|
|
|
3284
3481
|
this._inflightMessage && this._patchState({ messages: this._state.messages.filter((e) => e.id !== this._inflightMessage.id) });
|
|
3285
3482
|
}
|
|
3286
3483
|
_markInflightCancelled(e) {
|
|
3287
|
-
this._inflightMessage && (this._inflightMessage.message = e ?? o("Response cancelled.", { desc: "Placeholder shown in ai chat where the assistant reply would appear when the user stops an in-flight response" }), this._inflightMessage.isCancelled = !0, this._inflightMessage.hasChart = !1, delete this._inflightMessage.progress, this._upsertMessage(this._inflightMessage), this._inflightMessage = null, this._receivedProgress = !1, this._patchState({ inflightMessage: null }));
|
|
3484
|
+
this._inflightMessage && (this._inflightMessage.message = e ?? o("Response cancelled.", { desc: "Placeholder shown in ai chat where the assistant reply would appear when the user stops an in-flight response" }), this._inflightMessage.isCancelled = !0, this._inflightMessage.hasChart = !1, delete this._inflightMessage.progress, delete this._inflightMessage.elicitation, this._upsertMessage(this._inflightMessage), this._inflightMessage = null, this._receivedProgress = !1, this._patchState({ inflightMessage: null }));
|
|
3288
3485
|
}
|
|
3289
3486
|
_discardInflightMessage() {
|
|
3290
3487
|
let e = !!(this._inflightMessage || this._state.inflightMessage);
|
|
3291
3488
|
this._removeInflightFromMessages(), this._inflightMessage = null, this._receivedProgress = !1, e && this._patchState({ inflightMessage: null });
|
|
3292
3489
|
}
|
|
3293
|
-
_handleSubmitError(e, t) {
|
|
3294
|
-
t.message = o("Something went wrong. Please try again.", { desc: "Generic error message shown in ai chat when the API request fails" }), t.isError = !0, delete t.progress, this._inflightMessage = t, this._upsertMessage(t), this._patchState({
|
|
3490
|
+
_handleSubmitError(e, t, n) {
|
|
3491
|
+
t.message = o("Something went wrong. Please try again.", { desc: "Generic error message shown in ai chat when the API request fails" }), t.isError = !0, delete t.progress, delete t.elicitation, this._inflightMessage = t, this._upsertMessage(t), this._patchState({
|
|
3295
3492
|
inflightMessage: { ...t },
|
|
3296
3493
|
progress: null,
|
|
3297
3494
|
progressCollapsed: !1
|
|
3298
3495
|
}), this._emit("onComplete", {
|
|
3299
|
-
agent:
|
|
3496
|
+
agent: n,
|
|
3300
3497
|
conversationId: this._state.conversationId,
|
|
3301
3498
|
message: t,
|
|
3302
3499
|
error: e
|
|
@@ -3316,7 +3513,9 @@ var Wr = class {
|
|
|
3316
3513
|
this._state = {
|
|
3317
3514
|
...this._state,
|
|
3318
3515
|
...e
|
|
3319
|
-
}, this._emit("onStateChange", this._state);
|
|
3516
|
+
}, this._emit("onStateChange", this._state), this._notifySubscribers();
|
|
3517
|
+
}
|
|
3518
|
+
_notifySubscribers() {
|
|
3320
3519
|
for (let e of this._subscribers) e(this._state);
|
|
3321
3520
|
}
|
|
3322
3521
|
_areSelectedDatasetsEqual(e, t) {
|
|
@@ -3325,18 +3524,18 @@ var Wr = class {
|
|
|
3325
3524
|
_areChatMessagesEqual(e, t) {
|
|
3326
3525
|
return e.length === t.length && e.every((e, n) => {
|
|
3327
3526
|
let r = t[n];
|
|
3328
|
-
return e.id === r?.id && e.apiMessageId === r?.apiMessageId && e.type === r?.type && e.message === r?.message && e.isError === r?.isError && e.isCancelled === r?.isCancelled && e.hasChart === r?.hasChart && JSON.stringify(e.progress ?? null) === JSON.stringify(r?.progress ?? null) && JSON.stringify(e.actions ?? null) === JSON.stringify(r?.actions ?? null) && JSON.stringify(e.attachmentUrls ?? null) === JSON.stringify(r?.attachmentUrls ?? null);
|
|
3527
|
+
return e.id === r?.id && e.apiMessageId === r?.apiMessageId && e.type === r?.type && e.message === r?.message && e.isError === r?.isError && e.isCancelled === r?.isCancelled && e.hasChart === r?.hasChart && JSON.stringify(e.progress ?? null) === JSON.stringify(r?.progress ?? null) && JSON.stringify(e.actions ?? null) === JSON.stringify(r?.actions ?? null) && JSON.stringify(e.attachmentUrls ?? null) === JSON.stringify(r?.attachmentUrls ?? null) && JSON.stringify(e.elicitation ?? null) === JSON.stringify(r?.elicitation ?? null);
|
|
3329
3528
|
});
|
|
3330
3529
|
}
|
|
3331
3530
|
};
|
|
3332
|
-
function
|
|
3333
|
-
return new
|
|
3531
|
+
function ai(e, t) {
|
|
3532
|
+
return new ii(e, t);
|
|
3334
3533
|
}
|
|
3335
3534
|
//#endregion
|
|
3336
3535
|
//#region src/components/ai-chat/session/ai-chat-session-controller.ts
|
|
3337
|
-
var
|
|
3536
|
+
var oi = class {
|
|
3338
3537
|
constructor(e) {
|
|
3339
|
-
this.options = e, this._session = null, this._ownsSession = !1, this._seededFromProps = !1, this._unsubscribe = null;
|
|
3538
|
+
this.options = e, this._session = null, this._ownsSession = !1, this._customItemFromProps = !1, this._seededFromProps = !1, this._unsubscribe = null;
|
|
3340
3539
|
}
|
|
3341
3540
|
get current() {
|
|
3342
3541
|
return this._session;
|
|
@@ -3392,7 +3591,7 @@ var Kr = class {
|
|
|
3392
3591
|
requireDataset: t.requireDataset,
|
|
3393
3592
|
agent: t.agent
|
|
3394
3593
|
};
|
|
3395
|
-
t.task !== void 0 && (n.task = t.task), t.chart != null && (n.chart = t.chart), t.dashboard != null && (n.dashboard = t.dashboard), t.currentScreenMode != null && (n.currentScreenMode = t.currentScreenMode), t.conversationId != null && (n.conversationId = t.conversationId), e.updateConfig(n);
|
|
3594
|
+
t.agentConfig !== void 0 && (n.agentConfig = t.agentConfig), t.task !== void 0 && (n.task = t.task), t.chart != null && (n.chart = t.chart), t.dashboard != null && (n.dashboard = t.dashboard), t.customItem != null && (this._customItemFromProps = !0), this._customItemFromProps && (n.customItem = t.customItem ?? null), t.currentScreenMode != null && (n.currentScreenMode = t.currentScreenMode), t.conversationId != null && (n.conversationId = t.conversationId), e.updateConfig(n);
|
|
3396
3595
|
}
|
|
3397
3596
|
connect() {
|
|
3398
3597
|
this._session && this._wire(this._session);
|
|
@@ -3403,7 +3602,7 @@ var Kr = class {
|
|
|
3403
3602
|
_createSessionIfMissing() {
|
|
3404
3603
|
if (this._session) return;
|
|
3405
3604
|
let e = this.options.getSeed();
|
|
3406
|
-
this._session =
|
|
3605
|
+
this._session = ai({
|
|
3407
3606
|
...this.options.getConfig(),
|
|
3408
3607
|
messages: e.messages.length > 0 ? [...e.messages] : void 0,
|
|
3409
3608
|
selectedDatasets: e.selectedDatasets.length > 0 ? [...e.selectedDatasets] : void 0
|
|
@@ -3427,7 +3626,7 @@ var Kr = class {
|
|
|
3427
3626
|
}
|
|
3428
3627
|
}, $ = class t extends i {
|
|
3429
3628
|
constructor(...e) {
|
|
3430
|
-
super(...e), this.messages = [], this.selectedDatasets = [], this.placeholder = "Describe your change", this.disabled = !1, this.stoppable = !1, this.showAssistantContextMenu = !1, this.authKey = "", this.authToken = "", this.apiUrl = "https://api.luzmo.com", this.appServer = "https://app.luzmo.com", this.includePublicDatasets = !1, this.hideDatasetButton = !1, this.hideDatasetIcons = !1, this.disableDatasetModification = !1, this.hideSelectedDatasets = !1, this.hideAgents = !1, this.disableColumnMentions = !1, this.requireDataset = !1, this.allowImages = !1, this.allowVoiceInput = !1, this.acceptedFileTypes = [], this.agent = "item", this.task = "generate", this.modelPreference = "performance", this.chatSession = null, this.conversationId = null, this.chart = null, this.dashboard = null, this.timezoneId = "UTC", this.apiVersion = "0.1.0", this.stream = !0, this.loadingMessage = null, this.cancelledMessage = null, this.initialPrompt = null, this.emptyStateTitle = "", this.emptyStateSubtitle = "", this.emptyStateSuggestions = [], this._textareaValue = "", this._assistantMessageActionsSlotHasContent = !1, this._pendingAssistantMessageAction = null, this._shouldFocusAssistantMessageActionConfirm = !1, this._lastProcessedInitialPrompt = null, this._session = new
|
|
3629
|
+
super(...e), this.messages = [], this.selectedDatasets = [], this.placeholder = "Describe your change", this.disabled = !1, this.stoppable = !1, this.showAssistantContextMenu = !1, this.authKey = "", this.authToken = "", this.apiUrl = "https://api.luzmo.com", this.appServer = "https://app.luzmo.com", this.includePublicDatasets = !1, this.hideDatasetButton = !1, this.hideDatasetIcons = !1, this.disableDatasetModification = !1, this.hideSelectedDatasets = !1, this.hideAgents = !1, this.disableColumnMentions = !1, this.requireDataset = !1, this.allowImages = !1, this.allowVoiceInput = !1, this.acceptedFileTypes = [], this.agent = "item", this.task = "generate", this.modelPreference = "performance", this.chatSession = null, this.conversationId = null, this.chart = null, this.dashboard = null, this.customItem = null, this.timezoneId = "UTC", this.apiVersion = "0.1.0", this.stream = !0, this.loadingMessage = null, this.cancelledMessage = null, this.initialPrompt = null, this.emptyStateTitle = "", this.emptyStateSubtitle = "", this.emptyStateSuggestions = [], this._textareaValue = "", this._assistantMessageActionsSlotHasContent = !1, this._pendingAssistantMessageAction = null, this._shouldFocusAssistantMessageActionConfirm = !1, this._lastProcessedInitialPrompt = null, this._session = new oi({
|
|
3431
3630
|
getConfig: () => this._buildSessionConfig(),
|
|
3432
3631
|
getSeed: () => ({
|
|
3433
3632
|
messages: this.messages,
|
|
@@ -3446,7 +3645,7 @@ var Kr = class {
|
|
|
3446
3645
|
};
|
|
3447
3646
|
}
|
|
3448
3647
|
static {
|
|
3449
|
-
this.styles = f(
|
|
3648
|
+
this.styles = f(On);
|
|
3450
3649
|
}
|
|
3451
3650
|
static {
|
|
3452
3651
|
this.tagName = "luzmo-ai-chat";
|
|
@@ -3518,6 +3717,7 @@ var Kr = class {
|
|
|
3518
3717
|
_buildSessionConfig() {
|
|
3519
3718
|
return {
|
|
3520
3719
|
agent: this.agent,
|
|
3720
|
+
agentConfig: this.agentConfig,
|
|
3521
3721
|
agentId: this.agentId,
|
|
3522
3722
|
authKey: this.authKey,
|
|
3523
3723
|
authToken: this.authToken,
|
|
@@ -3527,6 +3727,7 @@ var Kr = class {
|
|
|
3527
3727
|
conversationId: this.conversationId,
|
|
3528
3728
|
chart: this.chart,
|
|
3529
3729
|
dashboard: this.dashboard,
|
|
3730
|
+
customItem: this.customItem,
|
|
3530
3731
|
currentScreenMode: this.currentScreenMode,
|
|
3531
3732
|
localeId: this.localeId,
|
|
3532
3733
|
timezoneId: this.timezoneId,
|
|
@@ -3535,6 +3736,10 @@ var Kr = class {
|
|
|
3535
3736
|
requireDataset: this.requireDataset
|
|
3536
3737
|
};
|
|
3537
3738
|
}
|
|
3739
|
+
_getAgentConfig() {
|
|
3740
|
+
let e = this._session.current?.agentConfig;
|
|
3741
|
+
return this.agentConfig === void 0 && this.chatSession && e ? e : kn(this._buildSessionConfig(), e);
|
|
3742
|
+
}
|
|
3538
3743
|
_emitConversationIdChanged(e) {
|
|
3539
3744
|
this.conversationId = e, this.dispatchEvent(new CustomEvent("luzmo-conversation-id-changed", {
|
|
3540
3745
|
detail: { conversationId: e },
|
|
@@ -3549,7 +3754,7 @@ var Kr = class {
|
|
|
3549
3754
|
});
|
|
3550
3755
|
}
|
|
3551
3756
|
async _handleRestoreState(e, t) {
|
|
3552
|
-
if (e.apiMessageId && this.
|
|
3757
|
+
if (e.apiMessageId && this._getAgentConfig().type === "item") try {
|
|
3553
3758
|
await this._restoreViaSession(e.apiMessageId, t);
|
|
3554
3759
|
} catch (e) {
|
|
3555
3760
|
console.error("AI restore error:", e);
|
|
@@ -3645,7 +3850,7 @@ var Kr = class {
|
|
|
3645
3850
|
}
|
|
3646
3851
|
_renderMarkdown(e) {
|
|
3647
3852
|
let t = String(Z.parse(e, { async: !1 }));
|
|
3648
|
-
return
|
|
3853
|
+
return _t.sanitize(t, {
|
|
3649
3854
|
ALLOWED_TAGS: /* @__PURE__ */ "p.br.strong.em.b.i.u.s.code.pre.blockquote.hr.ul.ol.li.h1.h2.h3.h4.h5.h6.table.thead.tbody.tr.th.td.a".split("."),
|
|
3650
3855
|
ALLOWED_ATTR: [
|
|
3651
3856
|
"href",
|
|
@@ -3820,7 +4025,7 @@ var Kr = class {
|
|
|
3820
4025
|
`;
|
|
3821
4026
|
}
|
|
3822
4027
|
_renderRestoreMenu(e, t, n, r = !1) {
|
|
3823
|
-
if (!(this.
|
|
4028
|
+
if (!(this._getAgentConfig().type === "item" && this.showAssistantContextMenu && e.hasChart && e.apiMessageId && !e.isError && e.id !== n)) return d;
|
|
3824
4029
|
let i = `context-menu-trigger-${e.apiMessageId}`;
|
|
3825
4030
|
return u`
|
|
3826
4031
|
<div class="assistant-context-menu">
|
|
@@ -3892,7 +4097,7 @@ var Kr = class {
|
|
|
3892
4097
|
</luzmo-chat-message>
|
|
3893
4098
|
`;
|
|
3894
4099
|
}
|
|
3895
|
-
let m = e.indexOf(t), h = t.isError ? "error" : t.isCancelled ? "cancelled" : "",
|
|
4100
|
+
let m = e.indexOf(t), h = t.isError ? "error" : t.isCancelled ? "cancelled" : "", te = !!t.elicitation && (!t.message.trim() || t.message.trim() === t.elicitation?.question), ne = t.isCancelled ? t.message : te ? d : u`<div class="markdown-content">${ee(this._renderMarkdown(t.message))}</div>`;
|
|
3896
4101
|
return u`
|
|
3897
4102
|
${p}
|
|
3898
4103
|
<div class="assistant-message-wrapper">
|
|
@@ -3905,7 +4110,12 @@ var Kr = class {
|
|
|
3905
4110
|
quiet
|
|
3906
4111
|
size="s"
|
|
3907
4112
|
>
|
|
3908
|
-
${
|
|
4113
|
+
${ne}
|
|
4114
|
+
${Ln({
|
|
4115
|
+
message: t,
|
|
4116
|
+
state: t.elicitation?.answer ? "answered" : t.id && t === i.at(-1) && !n && !this.disabled ? "open" : "closed",
|
|
4117
|
+
onSubmit: (e) => this._handleElicitationSubmit(t, e)
|
|
4118
|
+
})}
|
|
3909
4119
|
</luzmo-chat-message>
|
|
3910
4120
|
|
|
3911
4121
|
${this._renderRestoreMenu(t, m, s, r)}
|
|
@@ -3916,6 +4126,19 @@ var Kr = class {
|
|
|
3916
4126
|
`;
|
|
3917
4127
|
});
|
|
3918
4128
|
}
|
|
4129
|
+
async _handleElicitationSubmit(e, t) {
|
|
4130
|
+
t.stopPropagation();
|
|
4131
|
+
let n = t.currentTarget, r = n.parentElement, i = Fn(t.detail), a = !1;
|
|
4132
|
+
if (e.id && i) try {
|
|
4133
|
+
let t = this._session.requireSession().answerElicitation(e.id, i, { agentId: this._pickedAgentId });
|
|
4134
|
+
await this.updateComplete;
|
|
4135
|
+
let n = r?.querySelector("luzmo-question-box[readonly]");
|
|
4136
|
+
await n?.updateComplete, n?.focus(), a = await t;
|
|
4137
|
+
} catch (e) {
|
|
4138
|
+
e.name !== "AbortError" && console.error("AI prompt session error:", e);
|
|
4139
|
+
}
|
|
4140
|
+
a || (n.reset(), await n.updateComplete, n.focus());
|
|
4141
|
+
}
|
|
3919
4142
|
_renderStreamingResponse() {
|
|
3920
4143
|
let { inflightMessage: e } = this._getRenderState();
|
|
3921
4144
|
return e?.message ? u`
|
|
@@ -3932,7 +4155,7 @@ var Kr = class {
|
|
|
3932
4155
|
_renderLoadingMessage() {
|
|
3933
4156
|
let { isGenerating: e, progress: t, inflightMessage: n } = this._getRenderState();
|
|
3934
4157
|
if (!e || t?.children?.length || n?.message) return d;
|
|
3935
|
-
let r = this.
|
|
4158
|
+
let r = this._getAgentConfig(), i = An(r), a = r.type === "dashboard" ? !i.dashboard : i.chart?.type === "placeholder", s = r.type === "dashboard" ? a ? o("Creating dashboard...", { desc: "Label for ai chat creating dashboard message" }) : o("Updating dashboard...", { desc: "Label for ai chat updating dashboard message" }) : a ? o("Creating item...", { desc: "Label for ai chat creating item message" }) : o("Updating item...", { desc: "Label for ai chat updating item message" });
|
|
3936
4159
|
return u`
|
|
3937
4160
|
<luzmo-chat-message
|
|
3938
4161
|
avatar-placement="bottom"
|
|
@@ -3942,7 +4165,7 @@ var Kr = class {
|
|
|
3942
4165
|
>
|
|
3943
4166
|
<div class="loading-message" role="status" aria-live="polite">
|
|
3944
4167
|
<span class="icon-lg">${c(l, { className: "spin" })}</span>
|
|
3945
|
-
<span class="loading-message-text">${this.loadingMessage ||
|
|
4168
|
+
<span class="loading-message-text">${this.loadingMessage || s}</span>
|
|
3946
4169
|
</div>
|
|
3947
4170
|
</luzmo-chat-message>
|
|
3948
4171
|
`;
|
|
@@ -4072,7 +4295,7 @@ a([p({ type: Array })], $.prototype, "messages", void 0), a([p({
|
|
|
4072
4295
|
})], $.prototype, "allowVoiceInput", void 0), a([p({
|
|
4073
4296
|
type: Array,
|
|
4074
4297
|
attribute: "accepted-file-types"
|
|
4075
|
-
})], $.prototype, "acceptedFileTypes", void 0), a([p({ attribute: !1 })], $.prototype, "uploadAttachments", void 0), a([p({ type: String })], $.prototype, "agent", void 0), a([p({
|
|
4298
|
+
})], $.prototype, "acceptedFileTypes", void 0), a([p({ attribute: !1 })], $.prototype, "uploadAttachments", void 0), a([p({ type: String })], $.prototype, "agent", void 0), a([p({ attribute: !1 })], $.prototype, "agentConfig", void 0), a([p({
|
|
4076
4299
|
type: String,
|
|
4077
4300
|
attribute: "agent-id"
|
|
4078
4301
|
})], $.prototype, "agentId", void 0), a([p({ type: String })], $.prototype, "task", void 0), a([p({
|
|
@@ -4084,7 +4307,7 @@ a([p({ type: Array })], $.prototype, "messages", void 0), a([p({
|
|
|
4084
4307
|
})], $.prototype, "conversationId", void 0), a([p({
|
|
4085
4308
|
type: Object,
|
|
4086
4309
|
attribute: "chart"
|
|
4087
|
-
})], $.prototype, "chart", void 0), a([p({ type: Object })], $.prototype, "dashboard", void 0), a([p({
|
|
4310
|
+
})], $.prototype, "chart", void 0), a([p({ type: Object })], $.prototype, "dashboard", void 0), a([p({ attribute: !1 })], $.prototype, "customItem", void 0), a([p({
|
|
4088
4311
|
type: String,
|
|
4089
4312
|
attribute: "current-screen-mode"
|
|
4090
4313
|
})], $.prototype, "currentScreenMode", void 0), a([p({
|
|
@@ -4117,11 +4340,11 @@ a([p({ type: Array })], $.prototype, "messages", void 0), a([p({
|
|
|
4117
4340
|
})], $.prototype, "emptyStateSuggestions", void 0), a([m()], $.prototype, "_textareaValue", void 0), a([m()], $.prototype, "_assistantMessageActionsSlotHasContent", void 0), a([m()], $.prototype, "_pendingAssistantMessageAction", void 0);
|
|
4118
4341
|
//#endregion
|
|
4119
4342
|
//#region src/components/ai-chat/ai-chat-events.ts
|
|
4120
|
-
function
|
|
4343
|
+
function si(e) {
|
|
4121
4344
|
return e.recognized === !0;
|
|
4122
4345
|
}
|
|
4123
4346
|
//#endregion
|
|
4124
4347
|
//#region src/components/ai-chat/index.ts
|
|
4125
4348
|
customElements.get("luzmo-ai-chat") || customElements.define("luzmo-ai-chat", $);
|
|
4126
4349
|
//#endregion
|
|
4127
|
-
export {
|
|
4350
|
+
export { Un as C, Mn as D, Rn as E, Wn as S, zn as T, Xn as _, ai as a, Gn as b, ei as c, pr as d, tr as f, er as g, Qn as h, ii as i, $r as l, Zn as m, $ as n, ni as o, nr as p, oi as r, ti as s, si as t, lr as u, Jn as v, qn as w, Kn as x, Yn as y };
|