@genexus/genexus-ide-ui 1.1.55 → 1.1.57
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/assets-manager-089e91b1.js +7 -0
- package/dist/cjs/assets-manager-089e91b1.js.map +1 -0
- package/dist/cjs/genexus-ide-ui.cjs.js +1 -1
- package/dist/cjs/gx-ide-bpm-app-declaration.cjs.entry.js +8 -4
- package/dist/cjs/gx-ide-bpm-app-declaration.cjs.entry.js.map +1 -1
- package/dist/cjs/gx-ide-bpm-task-documents.cjs.entry.js +8 -4
- package/dist/cjs/gx-ide-bpm-task-documents.cjs.entry.js.map +1 -1
- package/dist/cjs/gx-ide-chat-container_2.cjs.entry.js +12 -16
- package/dist/cjs/gx-ide-chat-container_2.cjs.entry.js.map +1 -1
- package/dist/cjs/gx-ide-create-kb-from-server.cjs.entry.js +8 -4
- package/dist/cjs/gx-ide-create-kb-from-server.cjs.entry.js.map +1 -1
- package/dist/cjs/gx-ide-current-user-info.cjs.entry.js +6 -2
- package/dist/cjs/gx-ide-current-user-info.cjs.entry.js.map +1 -1
- package/dist/cjs/gx-ide-data-selector.cjs.entry.js +6 -2
- package/dist/cjs/gx-ide-data-selector.cjs.entry.js.map +1 -1
- package/dist/cjs/gx-ide-data-type-selector.cjs.entry.js +6 -2
- package/dist/cjs/gx-ide-data-type-selector.cjs.entry.js.map +1 -1
- package/dist/cjs/gx-ide-design-import.cjs.entry.js +11 -7
- package/dist/cjs/gx-ide-design-import.cjs.entry.js.map +1 -1
- package/dist/cjs/gx-ide-details-acknowledgements.cjs.entry.js +6 -2
- package/dist/cjs/gx-ide-details-acknowledgements.cjs.entry.js.map +1 -1
- package/dist/cjs/gx-ide-entity-selector.cjs.entry.js +7 -3
- package/dist/cjs/gx-ide-entity-selector.cjs.entry.js.map +1 -1
- package/dist/cjs/gx-ide-file-item.cjs.entry.js +9 -5
- package/dist/cjs/gx-ide-file-item.cjs.entry.js.map +1 -1
- package/dist/cjs/gx-ide-file-uploader.cjs.entry.js +6 -2
- package/dist/cjs/gx-ide-file-uploader.cjs.entry.js.map +1 -1
- package/dist/cjs/gx-ide-json-import.cjs.entry.js +7 -3
- package/dist/cjs/gx-ide-json-import.cjs.entry.js.map +1 -1
- package/dist/cjs/gx-ide-kb-manager-export.cjs.entry.js +10 -6
- package/dist/cjs/gx-ide-kb-manager-export.cjs.entry.js.map +1 -1
- package/dist/cjs/gx-ide-kb-manager-import.cjs.entry.js +9 -5
- package/dist/cjs/gx-ide-kb-manager-import.cjs.entry.js.map +1 -1
- package/dist/cjs/gx-ide-manage-module-references.cjs.entry.js +7 -3
- package/dist/cjs/gx-ide-manage-module-references.cjs.entry.js.map +1 -1
- package/dist/cjs/gx-ide-new-kb.cjs.entry.js +6 -2
- package/dist/cjs/gx-ide-new-kb.cjs.entry.js.map +1 -1
- package/dist/cjs/gx-ide-new-version.cjs.entry.js +15 -3
- package/dist/cjs/gx-ide-new-version.cjs.entry.js.map +1 -1
- package/dist/cjs/gx-ide-object-selector.cjs.entry.js +7 -3
- package/dist/cjs/gx-ide-object-selector.cjs.entry.js.map +1 -1
- package/dist/cjs/gx-ide-open-api-import.cjs.entry.js +7 -3
- package/dist/cjs/gx-ide-open-api-import.cjs.entry.js.map +1 -1
- package/dist/cjs/gx-ide-plugin-details.cjs.entry.js +8 -4
- package/dist/cjs/gx-ide-plugin-details.cjs.entry.js.map +1 -1
- package/dist/cjs/gx-ide-plugin-explorer.cjs.entry.js +6 -2
- package/dist/cjs/gx-ide-plugin-explorer.cjs.entry.js.map +1 -1
- package/dist/cjs/gx-ide-references.cjs.entry.js +7 -3
- package/dist/cjs/gx-ide-references.cjs.entry.js.map +1 -1
- package/dist/cjs/gx-ide-sc-chat-container.cjs.entry.js +263 -20
- package/dist/cjs/gx-ide-sc-chat-container.cjs.entry.js.map +1 -1
- package/dist/cjs/gx-ide-select-kb-items.cjs.entry.js +7 -3
- package/dist/cjs/gx-ide-select-kb-items.cjs.entry.js.map +1 -1
- package/dist/cjs/gx-ide-server-selector.cjs.entry.js +9 -5
- package/dist/cjs/gx-ide-server-selector.cjs.entry.js.map +1 -1
- package/dist/cjs/gx-ide-share-kb.cjs.entry.js +6 -2
- package/dist/cjs/gx-ide-share-kb.cjs.entry.js.map +1 -1
- package/dist/cjs/gx-ide-splash.cjs.entry.js +6 -2
- package/dist/cjs/gx-ide-splash.cjs.entry.js.map +1 -1
- package/dist/cjs/gx-ide-start-page.cjs.entry.js +9 -5
- package/dist/cjs/gx-ide-start-page.cjs.entry.js.map +1 -1
- package/dist/cjs/gx-ide-starting-template.cjs.entry.js +6 -2
- package/dist/cjs/gx-ide-starting-template.cjs.entry.js.map +1 -1
- package/dist/cjs/gx-ide-team-dev-bring-changes.cjs.entry.js +14 -10
- package/dist/cjs/gx-ide-team-dev-bring-changes.cjs.entry.js.map +1 -1
- package/dist/cjs/gx-ide-team-dev-commit.cjs.entry.js +7 -3
- package/dist/cjs/gx-ide-team-dev-commit.cjs.entry.js.map +1 -1
- package/dist/cjs/gx-ide-team-dev-history.cjs.entry.js +10 -6
- package/dist/cjs/gx-ide-team-dev-history.cjs.entry.js.map +1 -1
- package/dist/cjs/gx-ide-team-dev-update-partial-selection.cjs.entry.js +6 -2
- package/dist/cjs/gx-ide-team-dev-update-partial-selection.cjs.entry.js.map +1 -1
- package/dist/cjs/gx-ide-team-dev-update.cjs.entry.js +17 -13
- package/dist/cjs/gx-ide-team-dev-update.cjs.entry.js.map +1 -1
- package/dist/cjs/gx-ide-welcome-page.cjs.entry.js +6 -2
- package/dist/cjs/gx-ide-welcome-page.cjs.entry.js.map +1 -1
- package/dist/cjs/gx-ide-ww-attributes.cjs.entry.js +6 -2
- package/dist/cjs/gx-ide-ww-attributes.cjs.entry.js.map +1 -1
- package/dist/cjs/gx-ide-ww-files.cjs.entry.js +8 -4
- package/dist/cjs/gx-ide-ww-files.cjs.entry.js.map +1 -1
- package/dist/cjs/index.cjs.js +0 -3
- package/dist/cjs/index.cjs.js.map +1 -1
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/cjs/mer-animated-dots-001c7465.js +79 -0
- package/dist/cjs/mer-animated-dots-001c7465.js.map +1 -0
- package/dist/cjs/{tabular-grid-render-b1767da2.js → tabular-grid-render-f97a5ab3.js} +18 -14
- package/dist/cjs/tabular-grid-render-f97a5ab3.js.map +1 -0
- package/dist/cjs/{utilities-0e316b39.js → utilities-0815a260.js} +10 -6
- package/dist/cjs/utilities-0815a260.js.map +1 -0
- package/dist/collection/components/chat/chat-container/chat-container.js +2 -10
- package/dist/collection/components/chat/chat-container/chat-container.js.map +1 -1
- package/dist/collection/components/new-version/gx-ide-assets/new-version/shortcuts.json +15 -0
- package/dist/collection/components/new-version/new-version.js +17 -4
- package/dist/collection/components/new-version/new-version.js.map +1 -1
- package/dist/collection/index.js +0 -2
- package/dist/collection/index.js.map +1 -1
- package/dist/collection/showcase/chat-container/callbacks.js +9 -9
- package/dist/collection/showcase/chat-container/callbacks.js.map +1 -1
- package/dist/collection/showcase/chat-container/chat.showcase.js +4 -4
- package/dist/collection/showcase/chat-container/chat.showcase.js.map +1 -1
- package/dist/collection/showcase/chat-container/models.js +18 -18
- package/dist/collection/showcase/chat-container/models.js.map +1 -1
- package/dist/components/chat-container.js +6 -11
- package/dist/components/chat-container.js.map +1 -1
- package/dist/components/chat-welcome.js +4 -1
- package/dist/components/chat-welcome.js.map +1 -1
- package/dist/components/entity-selector.js +4 -1
- package/dist/components/entity-selector.js.map +1 -1
- package/dist/components/file-item.js +4 -1
- package/dist/components/file-item.js.map +1 -1
- package/dist/components/gx-ide-bpm-app-declaration.js +4 -1
- package/dist/components/gx-ide-bpm-app-declaration.js.map +1 -1
- package/dist/components/gx-ide-bpm-task-documents.js +4 -1
- package/dist/components/gx-ide-bpm-task-documents.js.map +1 -1
- package/dist/components/gx-ide-create-kb-from-server.js +4 -1
- package/dist/components/gx-ide-create-kb-from-server.js.map +1 -1
- package/dist/components/gx-ide-current-user-info.js +4 -1
- package/dist/components/gx-ide-current-user-info.js.map +1 -1
- package/dist/components/gx-ide-data-selector.js +4 -1
- package/dist/components/gx-ide-data-selector.js.map +1 -1
- package/dist/components/gx-ide-data-type-selector.js +4 -1
- package/dist/components/gx-ide-data-type-selector.js.map +1 -1
- package/dist/components/gx-ide-design-import.js +4 -1
- package/dist/components/gx-ide-design-import.js.map +1 -1
- package/dist/components/gx-ide-details-acknowledgements.js +4 -1
- package/dist/components/gx-ide-details-acknowledgements.js.map +1 -1
- package/dist/components/gx-ide-file-uploader.js +4 -1
- package/dist/components/gx-ide-file-uploader.js.map +1 -1
- package/dist/components/gx-ide-json-import.js +4 -1
- package/dist/components/gx-ide-json-import.js.map +1 -1
- package/dist/components/gx-ide-kb-manager-export.js +4 -1
- package/dist/components/gx-ide-kb-manager-export.js.map +1 -1
- package/dist/components/gx-ide-kb-manager-import.js +4 -1
- package/dist/components/gx-ide-kb-manager-import.js.map +1 -1
- package/dist/components/gx-ide-manage-module-references.js +4 -1
- package/dist/components/gx-ide-manage-module-references.js.map +1 -1
- package/dist/components/gx-ide-new-kb.js +4 -1
- package/dist/components/gx-ide-new-kb.js.map +1 -1
- package/dist/components/gx-ide-new-version.js +17 -4
- package/dist/components/gx-ide-new-version.js.map +1 -1
- package/dist/components/gx-ide-object-selector.js +4 -1
- package/dist/components/gx-ide-object-selector.js.map +1 -1
- package/dist/components/gx-ide-open-api-import.js +4 -1
- package/dist/components/gx-ide-open-api-import.js.map +1 -1
- package/dist/components/gx-ide-plugin-details.js +4 -1
- package/dist/components/gx-ide-plugin-details.js.map +1 -1
- package/dist/components/gx-ide-plugin-explorer.js +4 -1
- package/dist/components/gx-ide-plugin-explorer.js.map +1 -1
- package/dist/components/gx-ide-references.js +4 -1
- package/dist/components/gx-ide-references.js.map +1 -1
- package/dist/components/gx-ide-sc-chat-container.js +263 -20
- package/dist/components/gx-ide-sc-chat-container.js.map +1 -1
- package/dist/components/gx-ide-server-selector.js +4 -1
- package/dist/components/gx-ide-server-selector.js.map +1 -1
- package/dist/components/gx-ide-share-kb.js +4 -1
- package/dist/components/gx-ide-share-kb.js.map +1 -1
- package/dist/components/gx-ide-splash.js +4 -1
- package/dist/components/gx-ide-splash.js.map +1 -1
- package/dist/components/gx-ide-start-page.js +4 -1
- package/dist/components/gx-ide-start-page.js.map +1 -1
- package/dist/components/gx-ide-starting-template.js +4 -1
- package/dist/components/gx-ide-starting-template.js.map +1 -1
- package/dist/components/gx-ide-team-dev-bring-changes.js +4 -1
- package/dist/components/gx-ide-team-dev-bring-changes.js.map +1 -1
- package/dist/components/gx-ide-team-dev-history.js +4 -1
- package/dist/components/gx-ide-team-dev-history.js.map +1 -1
- package/dist/components/gx-ide-team-dev-update-partial-selection.js +4 -1
- package/dist/components/gx-ide-team-dev-update-partial-selection.js.map +1 -1
- package/dist/components/gx-ide-team-dev-update.js +4 -1
- package/dist/components/gx-ide-team-dev-update.js.map +1 -1
- package/dist/components/gx-ide-welcome-page.js +4 -1
- package/dist/components/gx-ide-welcome-page.js.map +1 -1
- package/dist/components/gx-ide-ww-attributes.js +4 -1
- package/dist/components/gx-ide-ww-attributes.js.map +1 -1
- package/dist/components/gx-ide-ww-files.js +4 -1
- package/dist/components/gx-ide-ww-files.js.map +1 -1
- package/dist/components/index.js +0 -1
- package/dist/components/index.js.map +1 -1
- package/dist/components/mer-animated-dots.js +81 -0
- package/dist/components/mer-animated-dots.js.map +1 -0
- package/dist/components/select-kb-items.js +4 -1
- package/dist/components/select-kb-items.js.map +1 -1
- package/dist/components/tabular-grid-render.js +4 -1
- package/dist/components/tabular-grid-render.js.map +1 -1
- package/dist/components/utilities.js +4 -1
- package/dist/components/utilities.js.map +1 -1
- package/dist/esm/assets-manager-7d6fc08f.js +5 -0
- package/dist/esm/assets-manager-7d6fc08f.js.map +1 -0
- package/dist/esm/genexus-ide-ui.js +1 -1
- package/dist/esm/gx-ide-bpm-app-declaration.entry.js +5 -1
- package/dist/esm/gx-ide-bpm-app-declaration.entry.js.map +1 -1
- package/dist/esm/gx-ide-bpm-task-documents.entry.js +5 -1
- package/dist/esm/gx-ide-bpm-task-documents.entry.js.map +1 -1
- package/dist/esm/gx-ide-chat-container_2.entry.js +7 -11
- package/dist/esm/gx-ide-chat-container_2.entry.js.map +1 -1
- package/dist/esm/gx-ide-create-kb-from-server.entry.js +5 -1
- package/dist/esm/gx-ide-create-kb-from-server.entry.js.map +1 -1
- package/dist/esm/gx-ide-current-user-info.entry.js +5 -1
- package/dist/esm/gx-ide-current-user-info.entry.js.map +1 -1
- package/dist/esm/gx-ide-data-selector.entry.js +5 -1
- package/dist/esm/gx-ide-data-selector.entry.js.map +1 -1
- package/dist/esm/gx-ide-data-type-selector.entry.js +5 -1
- package/dist/esm/gx-ide-data-type-selector.entry.js.map +1 -1
- package/dist/esm/gx-ide-design-import.entry.js +5 -1
- package/dist/esm/gx-ide-design-import.entry.js.map +1 -1
- package/dist/esm/gx-ide-details-acknowledgements.entry.js +5 -1
- package/dist/esm/gx-ide-details-acknowledgements.entry.js.map +1 -1
- package/dist/esm/gx-ide-entity-selector.entry.js +5 -1
- package/dist/esm/gx-ide-entity-selector.entry.js.map +1 -1
- package/dist/esm/gx-ide-file-item.entry.js +5 -1
- package/dist/esm/gx-ide-file-item.entry.js.map +1 -1
- package/dist/esm/gx-ide-file-uploader.entry.js +5 -1
- package/dist/esm/gx-ide-file-uploader.entry.js.map +1 -1
- package/dist/esm/gx-ide-json-import.entry.js +5 -1
- package/dist/esm/gx-ide-json-import.entry.js.map +1 -1
- package/dist/esm/gx-ide-kb-manager-export.entry.js +5 -1
- package/dist/esm/gx-ide-kb-manager-export.entry.js.map +1 -1
- package/dist/esm/gx-ide-kb-manager-import.entry.js +5 -1
- package/dist/esm/gx-ide-kb-manager-import.entry.js.map +1 -1
- package/dist/esm/gx-ide-manage-module-references.entry.js +5 -1
- package/dist/esm/gx-ide-manage-module-references.entry.js.map +1 -1
- package/dist/esm/gx-ide-new-kb.entry.js +5 -1
- package/dist/esm/gx-ide-new-kb.entry.js.map +1 -1
- package/dist/esm/gx-ide-new-version.entry.js +16 -4
- package/dist/esm/gx-ide-new-version.entry.js.map +1 -1
- package/dist/esm/gx-ide-object-selector.entry.js +5 -1
- package/dist/esm/gx-ide-object-selector.entry.js.map +1 -1
- package/dist/esm/gx-ide-open-api-import.entry.js +5 -1
- package/dist/esm/gx-ide-open-api-import.entry.js.map +1 -1
- package/dist/esm/gx-ide-plugin-details.entry.js +5 -1
- package/dist/esm/gx-ide-plugin-details.entry.js.map +1 -1
- package/dist/esm/gx-ide-plugin-explorer.entry.js +5 -1
- package/dist/esm/gx-ide-plugin-explorer.entry.js.map +1 -1
- package/dist/esm/gx-ide-references.entry.js +5 -1
- package/dist/esm/gx-ide-references.entry.js.map +1 -1
- package/dist/esm/gx-ide-sc-chat-container.entry.js +263 -20
- package/dist/esm/gx-ide-sc-chat-container.entry.js.map +1 -1
- package/dist/esm/gx-ide-select-kb-items.entry.js +5 -1
- package/dist/esm/gx-ide-select-kb-items.entry.js.map +1 -1
- package/dist/esm/gx-ide-server-selector.entry.js +5 -1
- package/dist/esm/gx-ide-server-selector.entry.js.map +1 -1
- package/dist/esm/gx-ide-share-kb.entry.js +5 -1
- package/dist/esm/gx-ide-share-kb.entry.js.map +1 -1
- package/dist/esm/gx-ide-splash.entry.js +5 -1
- package/dist/esm/gx-ide-splash.entry.js.map +1 -1
- package/dist/esm/gx-ide-start-page.entry.js +5 -1
- package/dist/esm/gx-ide-start-page.entry.js.map +1 -1
- package/dist/esm/gx-ide-starting-template.entry.js +5 -1
- package/dist/esm/gx-ide-starting-template.entry.js.map +1 -1
- package/dist/esm/gx-ide-team-dev-bring-changes.entry.js +7 -3
- package/dist/esm/gx-ide-team-dev-bring-changes.entry.js.map +1 -1
- package/dist/esm/gx-ide-team-dev-commit.entry.js +7 -3
- package/dist/esm/gx-ide-team-dev-commit.entry.js.map +1 -1
- package/dist/esm/gx-ide-team-dev-history.entry.js +6 -2
- package/dist/esm/gx-ide-team-dev-history.entry.js.map +1 -1
- package/dist/esm/gx-ide-team-dev-update-partial-selection.entry.js +5 -1
- package/dist/esm/gx-ide-team-dev-update-partial-selection.entry.js.map +1 -1
- package/dist/esm/gx-ide-team-dev-update.entry.js +7 -3
- package/dist/esm/gx-ide-team-dev-update.entry.js.map +1 -1
- package/dist/esm/gx-ide-welcome-page.entry.js +5 -1
- package/dist/esm/gx-ide-welcome-page.entry.js.map +1 -1
- package/dist/esm/gx-ide-ww-attributes.entry.js +5 -1
- package/dist/esm/gx-ide-ww-attributes.entry.js.map +1 -1
- package/dist/esm/gx-ide-ww-files.entry.js +5 -1
- package/dist/esm/gx-ide-ww-files.entry.js.map +1 -1
- package/dist/esm/index.js +0 -2
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/loader.js +1 -1
- package/dist/esm/mer-animated-dots-75d88f7e.js +77 -0
- package/dist/esm/mer-animated-dots-75d88f7e.js.map +1 -0
- package/dist/esm/{tabular-grid-render-96d67a8c.js → tabular-grid-render-2fca02f4.js} +7 -3
- package/dist/esm/tabular-grid-render-2fca02f4.js.map +1 -0
- package/dist/esm/{utilities-6624d90e.js → utilities-0cdc28eb.js} +6 -2
- package/dist/esm/utilities-0cdc28eb.js.map +1 -0
- package/dist/genexus-ide-ui/genexus-ide-ui.esm.js +1 -1
- package/dist/genexus-ide-ui/genexus-ide-ui.esm.js.map +1 -1
- package/dist/genexus-ide-ui/gx-ide-assets/new-version/shortcuts.json +15 -0
- package/dist/genexus-ide-ui/index.esm.js +0 -2
- package/dist/genexus-ide-ui/index.esm.js.map +1 -1
- package/dist/genexus-ide-ui/{p-2ce60f4c.entry.js → p-02883452.entry.js} +28 -20
- package/dist/genexus-ide-ui/{p-2ce60f4c.entry.js.map → p-02883452.entry.js.map} +1 -1
- package/dist/genexus-ide-ui/{p-c5eac770.entry.js → p-0548097b.entry.js} +10 -2
- package/dist/genexus-ide-ui/{p-c5eac770.entry.js.map → p-0548097b.entry.js.map} +1 -1
- package/dist/genexus-ide-ui/{p-64dbc4c0.entry.js → p-082780cc.entry.js} +10 -2
- package/dist/genexus-ide-ui/{p-64dbc4c0.entry.js.map → p-082780cc.entry.js.map} +1 -1
- package/dist/genexus-ide-ui/{p-9ac4aaa0.entry.js → p-1baf026c.entry.js} +16 -8
- package/dist/genexus-ide-ui/{p-9ac4aaa0.entry.js.map → p-1baf026c.entry.js.map} +1 -1
- package/dist/genexus-ide-ui/{p-098a7288.entry.js → p-1d647672.entry.js} +19 -11
- package/dist/genexus-ide-ui/{p-098a7288.entry.js.map → p-1d647672.entry.js.map} +1 -1
- package/dist/genexus-ide-ui/{p-13630aa2.entry.js → p-1e1d2672.entry.js} +51 -43
- package/dist/genexus-ide-ui/{p-13630aa2.entry.js.map → p-1e1d2672.entry.js.map} +1 -1
- package/dist/genexus-ide-ui/{p-b6a75c44.entry.js → p-207a698a.entry.js} +57 -49
- package/dist/genexus-ide-ui/{p-b6a75c44.entry.js.map → p-207a698a.entry.js.map} +1 -1
- package/dist/genexus-ide-ui/{p-d18c51fe.entry.js → p-2726ab59.entry.js} +18 -10
- package/dist/genexus-ide-ui/{p-d18c51fe.entry.js.map → p-2726ab59.entry.js.map} +1 -1
- package/dist/genexus-ide-ui/{p-0c5b7e75.entry.js → p-27633aae.entry.js} +10 -2
- package/dist/genexus-ide-ui/{p-0c5b7e75.entry.js.map → p-27633aae.entry.js.map} +1 -1
- package/dist/genexus-ide-ui/{p-2fe7ffc8.entry.js → p-28c11aff.entry.js} +32 -24
- package/dist/genexus-ide-ui/{p-2fe7ffc8.entry.js.map → p-28c11aff.entry.js.map} +1 -1
- package/dist/genexus-ide-ui/{p-3b955964.entry.js → p-2a51ea80.entry.js} +10 -2
- package/dist/genexus-ide-ui/{p-3b955964.entry.js.map → p-2a51ea80.entry.js.map} +1 -1
- package/dist/genexus-ide-ui/{p-1056dfe7.entry.js → p-336bb2ce.entry.js} +28 -20
- package/dist/genexus-ide-ui/{p-1056dfe7.entry.js.map → p-336bb2ce.entry.js.map} +1 -1
- package/dist/genexus-ide-ui/{p-ac026635.entry.js → p-364e8ecb.entry.js} +16 -8
- package/dist/genexus-ide-ui/{p-ac026635.entry.js.map → p-364e8ecb.entry.js.map} +1 -1
- package/dist/genexus-ide-ui/p-3c14bdfc.entry.js +234 -0
- package/dist/genexus-ide-ui/p-3c14bdfc.entry.js.map +1 -0
- package/dist/genexus-ide-ui/{p-1d044bf5.entry.js → p-4548ae72.entry.js} +17 -9
- package/dist/genexus-ide-ui/{p-1d044bf5.entry.js.map → p-4548ae72.entry.js.map} +1 -1
- package/dist/genexus-ide-ui/{p-80e49324.entry.js → p-46bb921b.entry.js} +36 -28
- package/dist/genexus-ide-ui/{p-80e49324.entry.js.map → p-46bb921b.entry.js.map} +1 -1
- package/dist/genexus-ide-ui/{p-11a60dbe.entry.js → p-506760d7.entry.js} +10 -2
- package/dist/genexus-ide-ui/{p-11a60dbe.entry.js.map → p-506760d7.entry.js.map} +1 -1
- package/dist/genexus-ide-ui/p-6e29711e.entry.js +608 -0
- package/dist/genexus-ide-ui/p-6e29711e.entry.js.map +1 -0
- package/dist/genexus-ide-ui/{p-7b986243.entry.js → p-71d4d3dd.entry.js} +32 -24
- package/dist/genexus-ide-ui/{p-7b986243.entry.js.map → p-71d4d3dd.entry.js.map} +1 -1
- package/dist/genexus-ide-ui/{p-891faf90.entry.js → p-77c315d9.entry.js} +28 -20
- package/dist/genexus-ide-ui/{p-891faf90.entry.js.map → p-77c315d9.entry.js.map} +1 -1
- package/dist/genexus-ide-ui/{p-18bbaa49.entry.js → p-7c95f511.entry.js} +16 -8
- package/dist/genexus-ide-ui/{p-18bbaa49.entry.js.map → p-7c95f511.entry.js.map} +1 -1
- package/dist/genexus-ide-ui/{p-eedb407c.entry.js → p-7e3cccf7.entry.js} +10 -2
- package/dist/genexus-ide-ui/{p-eedb407c.entry.js.map → p-7e3cccf7.entry.js.map} +1 -1
- package/dist/genexus-ide-ui/{p-410a35da.entry.js → p-8925fc99.entry.js} +40 -32
- package/dist/genexus-ide-ui/{p-410a35da.entry.js.map → p-8925fc99.entry.js.map} +1 -1
- package/dist/genexus-ide-ui/{p-072419f9.entry.js → p-94f74c12.entry.js} +18 -10
- package/dist/genexus-ide-ui/{p-072419f9.entry.js.map → p-94f74c12.entry.js.map} +1 -1
- package/dist/genexus-ide-ui/{p-d24c1115.entry.js → p-97f6438c.entry.js} +67 -59
- package/dist/genexus-ide-ui/{p-d24c1115.entry.js.map → p-97f6438c.entry.js.map} +1 -1
- package/dist/genexus-ide-ui/{p-9270c80f.entry.js → p-981873da.entry.js} +114 -118
- package/dist/genexus-ide-ui/p-981873da.entry.js.map +1 -0
- package/dist/genexus-ide-ui/{p-17b54532.entry.js → p-99b1dfd7.entry.js} +39 -31
- package/dist/genexus-ide-ui/{p-17b54532.entry.js.map → p-99b1dfd7.entry.js.map} +1 -1
- package/dist/genexus-ide-ui/{p-e1d0adf6.entry.js → p-9f7c347c.entry.js} +24 -16
- package/dist/genexus-ide-ui/{p-e1d0adf6.entry.js.map → p-9f7c347c.entry.js.map} +1 -1
- package/dist/genexus-ide-ui/{p-eacc81c8.entry.js → p-a28c2a64.entry.js} +122 -114
- package/dist/genexus-ide-ui/{p-eacc81c8.entry.js.map → p-a28c2a64.entry.js.map} +1 -1
- package/dist/genexus-ide-ui/{p-cccd6565.entry.js → p-a73db549.entry.js} +10 -2
- package/dist/genexus-ide-ui/{p-cccd6565.entry.js.map → p-a73db549.entry.js.map} +1 -1
- package/dist/genexus-ide-ui/{p-547fbde8.entry.js → p-be1ceb01.entry.js} +28 -20
- package/dist/genexus-ide-ui/{p-547fbde8.entry.js.map → p-be1ceb01.entry.js.map} +1 -1
- package/dist/genexus-ide-ui/{p-7adb9d1f.entry.js → p-c133095b.entry.js} +78 -70
- package/dist/genexus-ide-ui/{p-7adb9d1f.entry.js.map → p-c133095b.entry.js.map} +1 -1
- package/dist/genexus-ide-ui/{p-a58048e9.entry.js → p-c1c3996c.entry.js} +12 -4
- package/dist/genexus-ide-ui/{p-a58048e9.entry.js.map → p-c1c3996c.entry.js.map} +1 -1
- package/dist/genexus-ide-ui/{p-7551c2e9.entry.js → p-c426a3e7.entry.js} +22 -14
- package/dist/genexus-ide-ui/{p-7551c2e9.entry.js.map → p-c426a3e7.entry.js.map} +1 -1
- package/dist/genexus-ide-ui/{p-4f88fecd.entry.js → p-d12739cf.entry.js} +17 -9
- package/dist/genexus-ide-ui/{p-4f88fecd.entry.js.map → p-d12739cf.entry.js.map} +1 -1
- package/dist/genexus-ide-ui/{p-c8270f7d.js → p-d3ee56a4.js} +45 -37
- package/dist/genexus-ide-ui/{p-c8270f7d.js.map → p-d3ee56a4.js.map} +1 -1
- package/dist/genexus-ide-ui/p-d42e842b.js +7 -0
- package/dist/genexus-ide-ui/p-d42e842b.js.map +1 -0
- package/dist/genexus-ide-ui/{p-401bfc97.js → p-d4ecd3bb.js} +9366 -7152
- package/dist/genexus-ide-ui/p-d4ecd3bb.js.map +1 -0
- package/dist/genexus-ide-ui/{p-48e87e4f.entry.js → p-de6e9132.entry.js} +71 -63
- package/dist/genexus-ide-ui/{p-48e87e4f.entry.js.map → p-de6e9132.entry.js.map} +1 -1
- package/dist/genexus-ide-ui/{p-05fa08d7.entry.js → p-e4e3a7af.entry.js} +19 -11
- package/dist/genexus-ide-ui/{p-05fa08d7.entry.js.map → p-e4e3a7af.entry.js.map} +1 -1
- package/dist/genexus-ide-ui/{p-a24571ca.js → p-ea4b35b6.js} +19 -11
- package/dist/genexus-ide-ui/{p-a24571ca.js.map → p-ea4b35b6.js.map} +1 -1
- package/dist/genexus-ide-ui/{p-bd0ffc08.entry.js → p-f47b08c5.entry.js} +44 -36
- package/dist/genexus-ide-ui/{p-bd0ffc08.entry.js.map → p-f47b08c5.entry.js.map} +1 -1
- package/dist/types/components/new-version/new-version.d.ts +4 -0
- package/dist/types/index.d.ts +0 -2
- package/package.json +9 -8
- package/dist/cjs/MERCURY_ASSETS-f14e91ff.js +0 -9
- package/dist/cjs/MERCURY_ASSETS-f14e91ff.js.map +0 -1
- package/dist/cjs/render-item.lit-3f18e009.js +0 -329
- package/dist/cjs/render-item.lit-3f18e009.js.map +0 -1
- package/dist/cjs/tabular-grid-render-b1767da2.js.map +0 -1
- package/dist/cjs/utilities-0e316b39.js.map +0 -1
- package/dist/collection/components/chat/chat-container/gx-ide-assets/chat-container/chat-lit.css +0 -376
- package/dist/collection/components/chat/lit-custom-render/actions.lit.js +0 -27
- package/dist/collection/components/chat/lit-custom-render/actions.lit.js.map +0 -1
- package/dist/collection/components/chat/lit-custom-render/code-block.lit.js +0 -46
- package/dist/collection/components/chat/lit-custom-render/code-block.lit.js.map +0 -1
- package/dist/collection/components/chat/lit-custom-render/dots-animation.js +0 -61
- package/dist/collection/components/chat/lit-custom-render/dots-animation.js.map +0 -1
- package/dist/collection/components/chat/lit-custom-render/render-item.lit.js +0 -122
- package/dist/collection/components/chat/lit-custom-render/render-item.lit.js.map +0 -1
- package/dist/collection/components/chat/lit-custom-render/spinner-animation.js +0 -58
- package/dist/collection/components/chat/lit-custom-render/spinner-animation.js.map +0 -1
- package/dist/collection/components/chat/lit-custom-render/types.js +0 -2
- package/dist/collection/components/chat/lit-custom-render/types.js.map +0 -1
- package/dist/collection/components/chat/lit-custom-render/utils.js +0 -50
- package/dist/collection/components/chat/lit-custom-render/utils.js.map +0 -1
- package/dist/components/MERCURY_ASSETS.js +0 -7
- package/dist/components/MERCURY_ASSETS.js.map +0 -1
- package/dist/components/render-item.lit.js +0 -327
- package/dist/components/render-item.lit.js.map +0 -1
- package/dist/esm/MERCURY_ASSETS-ccf43ae3.js +0 -7
- package/dist/esm/MERCURY_ASSETS-ccf43ae3.js.map +0 -1
- package/dist/esm/render-item.lit-449f2946.js +0 -327
- package/dist/esm/render-item.lit-449f2946.js.map +0 -1
- package/dist/esm/tabular-grid-render-96d67a8c.js.map +0 -1
- package/dist/esm/utilities-6624d90e.js.map +0 -1
- package/dist/genexus-ide-ui/gx-ide-assets/chat-container/chat-lit.css +0 -376
- package/dist/genexus-ide-ui/p-401bfc97.js.map +0 -1
- package/dist/genexus-ide-ui/p-5f65a4bb.entry.js +0 -218
- package/dist/genexus-ide-ui/p-5f65a4bb.entry.js.map +0 -1
- package/dist/genexus-ide-ui/p-8d6f2b4f.entry.js +0 -359
- package/dist/genexus-ide-ui/p-8d6f2b4f.entry.js.map +0 -1
- package/dist/genexus-ide-ui/p-9270c80f.entry.js.map +0 -1
- package/dist/genexus-ide-ui/p-fd4f9904.js +0 -955
- package/dist/genexus-ide-ui/p-fd4f9904.js.map +0 -1
- package/dist/types/components/chat/lit-custom-render/actions.lit.d.ts +0 -2
- package/dist/types/components/chat/lit-custom-render/code-block.lit.d.ts +0 -2
- package/dist/types/components/chat/lit-custom-render/dots-animation.d.ts +0 -5
- package/dist/types/components/chat/lit-custom-render/render-item.lit.d.ts +0 -3
- package/dist/types/components/chat/lit-custom-render/spinner-animation.d.ts +0 -5
- package/dist/types/components/chat/lit-custom-render/types.d.ts +0 -4
- package/dist/types/components/chat/lit-custom-render/utils.d.ts +0 -23
|
@@ -3,7 +3,251 @@
|
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
4
|
|
|
5
5
|
const index = require('./index-2f1471c9.js');
|
|
6
|
-
|
|
6
|
+
require('./mer-animated-dots-001c7465.js');
|
|
7
|
+
const lit = require('lit');
|
|
8
|
+
const when_js = require('lit/directives/when.js');
|
|
9
|
+
const ifDefined_js = require('lit/directives/if-defined.js');
|
|
10
|
+
|
|
11
|
+
// TODO: The functions on this file are a WA until Chameleon 7 is released and we can reuse
|
|
12
|
+
// the existing functions from Chameleon. At the moment, we have to copy paste the functions
|
|
13
|
+
// because in Chameleon 6 we can import them.
|
|
14
|
+
// The following utils were copied from Chamelmeon (src/components/chat/utils.ts or src/common/utils.ts)
|
|
15
|
+
const getMessageSerializedContentAll = (message) => typeof message.content === "string"
|
|
16
|
+
? message.content
|
|
17
|
+
: JSON.stringify(message.content, undefined, 2);
|
|
18
|
+
const getMessageContent = (message) => typeof message.content === "string"
|
|
19
|
+
? message.content
|
|
20
|
+
: message.content.message;
|
|
21
|
+
/**
|
|
22
|
+
* Converts an object mapping token keys to booleans into a space-separated
|
|
23
|
+
* string containing the token keys that map to truthy values.
|
|
24
|
+
* @example
|
|
25
|
+
* part={tokenMap({
|
|
26
|
+
* header: true,
|
|
27
|
+
* disabled: this.disabled,
|
|
28
|
+
* selected: this.selected,
|
|
29
|
+
* [levelPart]: canShowLines,
|
|
30
|
+
* "expand-button":
|
|
31
|
+
* canShowLines && !this.leaf && this.expandableButton !== "no"
|
|
32
|
+
* })}
|
|
33
|
+
*/
|
|
34
|
+
const tokenMap = (tokens) => {
|
|
35
|
+
const keys = Object.keys(tokens);
|
|
36
|
+
let result = "";
|
|
37
|
+
for (let index = 0; index < keys.length; index++) {
|
|
38
|
+
const tokenKey = keys[index];
|
|
39
|
+
const tokenValue = tokens[tokenKey];
|
|
40
|
+
if (tokenValue) {
|
|
41
|
+
result += result === "" ? tokenKey : ` ${tokenKey}`;
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
return result;
|
|
45
|
+
};
|
|
46
|
+
const copyToTheClipboard = (text) => navigator.clipboard.writeText(text);
|
|
47
|
+
const copyButtonClickHandler = (event, text) => {
|
|
48
|
+
copyToTheClipboard(text);
|
|
49
|
+
const button = event.currentTarget;
|
|
50
|
+
if (button) {
|
|
51
|
+
const buttonOriginalParts = button.getAttribute("part");
|
|
52
|
+
const buttonWithCopyingParts = `${buttonOriginalParts} copying`;
|
|
53
|
+
button.setAttribute("disabled", "disabled");
|
|
54
|
+
button.setAttribute("part", buttonWithCopyingParts);
|
|
55
|
+
setTimeout(() => {
|
|
56
|
+
button.removeAttribute("disabled");
|
|
57
|
+
button.setAttribute("part", buttonOriginalParts || "");
|
|
58
|
+
}, 1500);
|
|
59
|
+
}
|
|
60
|
+
};
|
|
61
|
+
const DEFAULT_ASSISTANT_STATUS = "complete";
|
|
62
|
+
|
|
63
|
+
const copyClickHandler = (event, message) => {
|
|
64
|
+
// We use the whole message to support copying the files and/or sources
|
|
65
|
+
const messageSerializedContentAll = getMessageSerializedContentAll(message);
|
|
66
|
+
copyButtonClickHandler(event, messageSerializedContentAll);
|
|
67
|
+
};
|
|
68
|
+
const customActionsRender = (message, chatRef) => {
|
|
69
|
+
const { accessibleName } = chatRef.translations;
|
|
70
|
+
const conditionToRender1 = message.role === "assistant" &&
|
|
71
|
+
(message.status === "complete" || !message.status);
|
|
72
|
+
const conditionToRender2 = message.role === "error";
|
|
73
|
+
return when_js.when(conditionToRender1 || conditionToRender2, () => lit.html `<div part="actions-container"><button aria-label="${accessibleName.copyMessageContent}" part="${tokenMap({
|
|
74
|
+
[`action-button action-copy-message ${message.id}`]: true,
|
|
75
|
+
...(message.parts ? { [message.parts]: true } : {})
|
|
76
|
+
})}" type="button" @click="${(e) => copyClickHandler(e, message)}"></button></div>`);
|
|
77
|
+
};
|
|
78
|
+
|
|
79
|
+
const downloadCodeBlockCallback = (plainText, language, downloadCodeBlock) => () => downloadCodeBlock(plainText, language);
|
|
80
|
+
const customCodeBlockRender = (chatRef) => (options) => {
|
|
81
|
+
const { accessibleName, text } = chatRef.translations;
|
|
82
|
+
const downloadCb = chatRef.callbacks?.downloadCodeBlock;
|
|
83
|
+
return lit.html `<div part="code-block"><div part="code-block__header"><span part="code-block__header-caption">${options.language}</span><div part="code-block__header-actions"><button class="button-copy-code" aria-label="${text.copyCodeButton}" part="code-block__button--icon-only code-block__copy-code-button" type="button" @click="${(e) => copyButtonClickHandler(e, options.plainText)}"></button> ${when_js.when(downloadCb, () => lit.html `<button aria-label="${accessibleName.downloadCodeButton}" part="code-block__button--icon-only code-block__download-code-button" @click="${downloadCodeBlockCallback(options.plainText, options.language, downloadCb)}"></button>`)}</div></div><ch-code .language="${options.language}" .lastNestedChildClass="${options.lastNestedChildClass}" part="code-block__content" .showIndicator="${options.showIndicator}" .value="${options.plainText}"></ch-code></div>`;
|
|
84
|
+
};
|
|
85
|
+
|
|
86
|
+
const DEFAULT_FILE_UPLOAD_STATE = "uploaded";
|
|
87
|
+
// /**
|
|
88
|
+
// * Returns a skeleton element shown while a file is being uploaded.
|
|
89
|
+
// *
|
|
90
|
+
// * In Mercury, the loading state is visually represented in the footer,
|
|
91
|
+
// * so this skeleton is currently unused. However, it is recommended to keep
|
|
92
|
+
// * this function in the file in case the design changes and a visual loader
|
|
93
|
+
// * inside the file container becomes necessary again.
|
|
94
|
+
// *
|
|
95
|
+
// * @param file - The file object containing metadata and upload state.
|
|
96
|
+
// * @param fileFormat - The format type of the file (e.g., text, image, etc.).
|
|
97
|
+
// * @returns A TemplateResult with the skeleton element or `nothing` if not loading.
|
|
98
|
+
// */
|
|
99
|
+
// const fileSkeleton = (
|
|
100
|
+
// file: ChatMessageFile,
|
|
101
|
+
// fileFormat: keyof ChMimeTypeFormatMap
|
|
102
|
+
// ): TemplateResult | typeof nothing => {
|
|
103
|
+
// return file.uploadState === "in-progress"
|
|
104
|
+
// ? html`<div
|
|
105
|
+
// part=${tokenMap({
|
|
106
|
+
// [`file-skeleton format-${fileFormat} ${file.mimeType} ${
|
|
107
|
+
// file.uploadState ?? DEFAULT_FILE_UPLOAD_STATE
|
|
108
|
+
// }`]: true,
|
|
109
|
+
// [file.extension!]: !!file.extension,
|
|
110
|
+
// [file.parts!]: !!file.parts
|
|
111
|
+
// })}
|
|
112
|
+
// ></div>`
|
|
113
|
+
// : nothing;
|
|
114
|
+
// };
|
|
115
|
+
const fileFooter = (file, fileFormat) => {
|
|
116
|
+
return lit.html `<div class="elevation-1" part="${tokenMap({
|
|
117
|
+
[`file-footer format-${fileFormat} ${file.mimeType} ${file.uploadState ?? DEFAULT_FILE_UPLOAD_STATE}`]: true,
|
|
118
|
+
[file.extension]: !!file.extension,
|
|
119
|
+
[file.parts]: !!file.parts
|
|
120
|
+
})}"><span class="body-regular-xs" part="file-caption">${file.caption}${file.extension && "." + file.extension.toLowerCase()} </span>${file.uploadState === "in-progress"
|
|
121
|
+
? lit.html `<mer-spinner></mer-spinner>`
|
|
122
|
+
: lit.nothing}</div>`;
|
|
123
|
+
};
|
|
124
|
+
const getFileContainerParts = (file, fileFormat) => {
|
|
125
|
+
return tokenMap({
|
|
126
|
+
[`file-container format-${fileFormat} ${file.mimeType} ${file.uploadState ?? DEFAULT_FILE_UPLOAD_STATE}`]: true,
|
|
127
|
+
[file.extension]: !!file.extension,
|
|
128
|
+
[file.parts]: !!file.parts
|
|
129
|
+
});
|
|
130
|
+
};
|
|
131
|
+
const getFileParts = (file, fileFormat) => tokenMap({
|
|
132
|
+
[`file format-${fileFormat} ${file.mimeType} ${file.uploadState ?? DEFAULT_FILE_UPLOAD_STATE}`]: true,
|
|
133
|
+
[file.extension]: !!file.extension,
|
|
134
|
+
[file.parts]: !!file.parts
|
|
135
|
+
});
|
|
136
|
+
// TODO: Improve accessibility by exposing progress or spin states while
|
|
137
|
+
// uploading
|
|
138
|
+
const customFileRenders = {
|
|
139
|
+
audio: (file) => {
|
|
140
|
+
return lit.html `<li class="file-container" part="${getFileContainerParts(file, "audio")}"><audio aria-label="${ifDefined_js.ifDefined(file.accessibleName)}" part="${getFileParts(file, "audio")}" src="${ifDefined_js.ifDefined(file.uploadState === "in-progress" ? undefined : file.url)}" controls></audio>${fileFooter(file, "audio")}</li>`;
|
|
141
|
+
},
|
|
142
|
+
video: (file) => {
|
|
143
|
+
return lit.html `<li class="file-container" part="${getFileContainerParts(file, "video")}"><video aria-label="${ifDefined_js.ifDefined(file.accessibleName)}" part="${getFileParts(file, "video")}" src="${ifDefined_js.ifDefined(file.uploadState === "in-progress" ? undefined : file.url)}" controls></video>${fileFooter(file, "video")}</li>`;
|
|
144
|
+
},
|
|
145
|
+
image: (file) => {
|
|
146
|
+
return lit.html `<li class="file-container" part="${getFileContainerParts(file, "image")}"><img aria-label="${ifDefined_js.ifDefined(file.accessibleName)}" part="${getFileParts(file, "image")}" src="${file.url}" alt="${file.alternativeText ?? file.accessibleName ?? ""}" loading="lazy"> ${fileFooter(file, "image")}</li>`;
|
|
147
|
+
},
|
|
148
|
+
file: (file) => {
|
|
149
|
+
const disabledWhileUploading = file.uploadState === "in-progress";
|
|
150
|
+
return lit.html `<li class="file-container" part="${getFileContainerParts(file, "file")}"><a aria-label="${ifDefined_js.ifDefined(file.accessibleName)}" role="${disabledWhileUploading ? "link" : lit.nothing}" aria-disabled="${disabledWhileUploading ? "true" : lit.nothing}" part="${getFileParts(file, "file")}" href="${disabledWhileUploading ? lit.nothing : file.url}" target="_blank"></a> ${fileFooter(file, "file")}</li>`;
|
|
151
|
+
}
|
|
152
|
+
};
|
|
153
|
+
|
|
154
|
+
/*
|
|
155
|
+
README:
|
|
156
|
+
This file contains two utilities:
|
|
157
|
+
|
|
158
|
+
1) [Sections for customitizing the ch-chat renderItem]
|
|
159
|
+
The following sections are being customized at the time of writting:
|
|
160
|
+
- actions: customActionsRender,
|
|
161
|
+
- codeBlock: customCodeBlockRender,
|
|
162
|
+
- content: customContentRender
|
|
163
|
+
|
|
164
|
+
What for?
|
|
165
|
+
|
|
166
|
+
- actions: In order to be able to customize the copy button, by adding a part
|
|
167
|
+
"copying" when the user copies the message. This additional part allows changing
|
|
168
|
+
the current button icon of "copy" to a "checked" icon.
|
|
169
|
+
- codeBlock: Same reason as "actions" section.
|
|
170
|
+
- content: Mercury includes a "header" section for the assistant message. This
|
|
171
|
+
header includes an avatar, the assistant name, and optionally the message time.
|
|
172
|
+
This header requires custom markup, and for this reason this section has to be
|
|
173
|
+
customized.
|
|
174
|
+
|
|
175
|
+
2) [Configuration for the ch-chat sendContainerLayout property]
|
|
176
|
+
The chat styles are designed for a specific layout, so users must use the sendContainerLayout provided by Mercury. Customizing it is not supported.
|
|
177
|
+
*/
|
|
178
|
+
// 1) [Sections for customitizing the ch-chat renderItem.]
|
|
179
|
+
/**
|
|
180
|
+
* Mercury section that includes the assistant the assistant name, and an optional message time.
|
|
181
|
+
*
|
|
182
|
+
* @param messageMetaData - Metadata containing agentName and time
|
|
183
|
+
* @returns TemplateResult rendering the assistant message header
|
|
184
|
+
*/
|
|
185
|
+
const messageHeader = (messageMetaData, waiting = false) => {
|
|
186
|
+
const agentName = messageMetaData?.agentName;
|
|
187
|
+
const assistantId = agentName?.toLowerCase().replace(/ /g, "-");
|
|
188
|
+
const messageTime = messageMetaData?.time;
|
|
189
|
+
return lit.html `<div part="header assistant${assistantId ? ` header-${assistantId}` : ""}"><div part="header__start assistant"><div part="header__avatar-container assistant"><div part="header__avatar-border assistant"></div><div part="header__avatar-image assistant"></div></div><div part="header__role assistant">${agentName}</div>${waiting ? lit.html `<mer-animated-dots></mer-animated-dots>` : lit.nothing}</div>${messageTime
|
|
190
|
+
? lit.html `<time datetime="${messageTime}" part="header__time assistant">${messageTime}</time>`
|
|
191
|
+
: lit.nothing}</div>`;
|
|
192
|
+
};
|
|
193
|
+
// customzied in order to add the custom "messageHeader"
|
|
194
|
+
const customAssistantContentRender = (message, chatRef, codeBlockRender) => {
|
|
195
|
+
const messageContent = getMessageContent(message);
|
|
196
|
+
return message.status === "waiting"
|
|
197
|
+
? lit.html `${messageHeader(message.metadata, true)}<div class="assistant-loading" part="${tokenMap({
|
|
198
|
+
[`assistant content waiting ${message.id}`]: true,
|
|
199
|
+
...(message.parts ? { [message.parts]: true } : {})
|
|
200
|
+
})}">${messageContent}</div>`
|
|
201
|
+
: lit.html `${messageHeader(message.metadata)}<ch-markdown-viewer part="${tokenMap({
|
|
202
|
+
[`assistant content ${message.id} ${message.status ?? DEFAULT_ASSISTANT_STATUS}`]: true,
|
|
203
|
+
...(message.parts ? { [message.parts]: true } : {})
|
|
204
|
+
})}" .renderCode="${
|
|
205
|
+
// WA: Define codeBlockRender as "never" to avoid types incompatibility:
|
|
206
|
+
// codeBlockRender returns TemplateResult and renderCode expects TemplateResult | undefined
|
|
207
|
+
// In Chameleon this type mismatch does not happens. TODO: Evaluate a solution in Chameleon.
|
|
208
|
+
codeBlockRender(chatRef)}" .showIndicator="${message.status === "streaming"}" .theme="${chatRef.markdownTheme ?? undefined}" .value="${messageContent}"></ch-markdown-viewer>`;
|
|
209
|
+
};
|
|
210
|
+
// customzied in order to add the custom "messageHeader"
|
|
211
|
+
const customErrorContentRender = (message, chatRef, codeBlockRender) => {
|
|
212
|
+
const errorContent = getMessageContent(message);
|
|
213
|
+
return lit.html `${messageHeader(message.metadata)}<ch-markdown-viewer part="${tokenMap({
|
|
214
|
+
[`error content ${message.id}`]: true,
|
|
215
|
+
...(message.parts ? { [message.parts]: true } : {})
|
|
216
|
+
})}" .renderCode="${
|
|
217
|
+
// WA: Define codeBlockRender as "never" to avoid types incompatibility:
|
|
218
|
+
// codeBlockRender returns TemplateResult and renderCode expects TemplateResult | undefined
|
|
219
|
+
// In Chameleon this type mismatch does not happens. TODO: Evaluate a solution in Chameleon.
|
|
220
|
+
codeBlockRender(chatRef)}" .theme="${chatRef.markdownTheme ?? undefined}" .value="${errorContent}"></ch-markdown-viewer>`;
|
|
221
|
+
};
|
|
222
|
+
// No modification. It is required to be defined.
|
|
223
|
+
const defaultSystemContentRender = () => "string | TemplateResult";
|
|
224
|
+
// No modification. It is required to be defined.
|
|
225
|
+
const defaultUserContentRender = (messageModel) => getMessageContent(messageModel) ?? "";
|
|
226
|
+
const contentRenderByRole = {
|
|
227
|
+
// TODO: Check if each contentRender can be optional, since it may be not me required to implement
|
|
228
|
+
// a custom render for each type of content. ie.: Mercury does not requres to customize "system" and "user"
|
|
229
|
+
assistant: customAssistantContentRender,
|
|
230
|
+
error: customErrorContentRender,
|
|
231
|
+
system: defaultSystemContentRender, // No modification
|
|
232
|
+
user: defaultUserContentRender // No modification
|
|
233
|
+
};
|
|
234
|
+
const customContentRender = (message, chatRef, codeBlockRender) => contentRenderByRole[message.role](message, chatRef, codeBlockRender);
|
|
235
|
+
const renderItem = {
|
|
236
|
+
actions: customActionsRender,
|
|
237
|
+
codeBlock: customCodeBlockRender,
|
|
238
|
+
content: customContentRender,
|
|
239
|
+
file: customFileRenders
|
|
240
|
+
};
|
|
241
|
+
// 2) [Configuration for the ch-chat sendContainerLayout property]
|
|
242
|
+
const sendContainerLayout = {
|
|
243
|
+
sendInputAfter: [
|
|
244
|
+
"attach-files-button",
|
|
245
|
+
"live-audio-button",
|
|
246
|
+
"send-button",
|
|
247
|
+
"chat-attached-files-viewer"
|
|
248
|
+
],
|
|
249
|
+
sendContainerAfter: ["live-audio-container"]
|
|
250
|
+
};
|
|
7
251
|
|
|
8
252
|
const ASSISTANT_RESPONSE_SHORT_MARKDOWN = '\n### Code block {#code-block}\nTo create code blocks, you’ll use three backticks (` ``` `) or three tildes (`~~~`) on the lines before and after the code block.\n\n```json\n{\n "firstName": "John",\n "lastName": "Smith",\n "age": 25\n}';
|
|
9
253
|
const ASSISTANT_NAME = "Nexa";
|
|
@@ -98,7 +342,7 @@ const codeFixerRecord = [
|
|
|
98
342
|
status: "complete",
|
|
99
343
|
content: "Action required example. Action required example. Action required example.",
|
|
100
344
|
metadata: {
|
|
101
|
-
|
|
345
|
+
agentName: ASSISTANT_NAME,
|
|
102
346
|
time: "14:25"
|
|
103
347
|
}
|
|
104
348
|
},
|
|
@@ -108,7 +352,7 @@ const codeFixerRecord = [
|
|
|
108
352
|
status: "complete",
|
|
109
353
|
content: "Some fields contain missing or invalid data, which may prevent the process from completing correctly. Review your input carefully and make any necessary corrections before continuing.",
|
|
110
354
|
metadata: {
|
|
111
|
-
|
|
355
|
+
agentName: ASSISTANT_NAME,
|
|
112
356
|
time: "14:25"
|
|
113
357
|
},
|
|
114
358
|
parts: "warning"
|
|
@@ -118,7 +362,7 @@ const codeFixerRecord = [
|
|
|
118
362
|
role: "error",
|
|
119
363
|
content: "An unexpected error occurred while processing your request, and the operation couldn’t be completed.Please check your internet connection or try again later. If the problem persists, contact support.",
|
|
120
364
|
metadata: {
|
|
121
|
-
|
|
365
|
+
agentName: ASSISTANT_NAME,
|
|
122
366
|
time: "14:25"
|
|
123
367
|
}
|
|
124
368
|
},
|
|
@@ -128,7 +372,7 @@ const codeFixerRecord = [
|
|
|
128
372
|
status: "complete",
|
|
129
373
|
content: "Your information has been saved successfully, and all changes are now reflected in your account. You can continue with the next steps or return to the dashboard at any time.",
|
|
130
374
|
metadata: {
|
|
131
|
-
|
|
375
|
+
agentName: ASSISTANT_NAME,
|
|
132
376
|
time: "14:25"
|
|
133
377
|
},
|
|
134
378
|
parts: "success"
|
|
@@ -145,7 +389,7 @@ const codeFixerRecord = [
|
|
|
145
389
|
status: "complete",
|
|
146
390
|
content: "You can provide further details or updates regarding your support ticket and its associated code. Your input here helps us better understand and address your issue effectively.",
|
|
147
391
|
metadata: {
|
|
148
|
-
|
|
392
|
+
agentName: ASSISTANT_NAME,
|
|
149
393
|
time: "14:25"
|
|
150
394
|
}
|
|
151
395
|
},
|
|
@@ -155,7 +399,7 @@ const codeFixerRecord = [
|
|
|
155
399
|
status: "waiting",
|
|
156
400
|
content: "You can provide further details or updates",
|
|
157
401
|
metadata: {
|
|
158
|
-
|
|
402
|
+
agentName: ASSISTANT_NAME,
|
|
159
403
|
time: "14:25"
|
|
160
404
|
}
|
|
161
405
|
},
|
|
@@ -165,7 +409,7 @@ const codeFixerRecord = [
|
|
|
165
409
|
status: "complete",
|
|
166
410
|
content: ASSISTANT_RESPONSE_SHORT_MARKDOWN,
|
|
167
411
|
metadata: {
|
|
168
|
-
|
|
412
|
+
agentName: ASSISTANT_NAME,
|
|
169
413
|
time: "14:25"
|
|
170
414
|
}
|
|
171
415
|
}
|
|
@@ -173,14 +417,14 @@ const codeFixerRecord = [
|
|
|
173
417
|
|
|
174
418
|
const PROCESSING_PLACEHOLDER = "{{ASSISTANT_NAME}}";
|
|
175
419
|
const sendChatMessages = (chatRef) => () => {
|
|
176
|
-
chatRef.
|
|
420
|
+
chatRef.waitingResponse = true;
|
|
177
421
|
chatRef.addNewMessage({
|
|
178
422
|
id: `${new Date().getTime()}`,
|
|
179
423
|
role: "assistant",
|
|
180
424
|
content: "Analyzing",
|
|
181
425
|
status: "waiting",
|
|
182
426
|
metadata: {
|
|
183
|
-
|
|
427
|
+
agentName: ASSISTANT_NAME,
|
|
184
428
|
time: "14:25"
|
|
185
429
|
}
|
|
186
430
|
});
|
|
@@ -190,7 +434,7 @@ const sendChatMessages = (chatRef) => () => {
|
|
|
190
434
|
content: "Processing with Chat with LLMs",
|
|
191
435
|
status: "waiting",
|
|
192
436
|
metadata: {
|
|
193
|
-
|
|
437
|
+
agentName: ASSISTANT_NAME,
|
|
194
438
|
time: "14:25"
|
|
195
439
|
}
|
|
196
440
|
}, "replace");
|
|
@@ -199,7 +443,7 @@ const sendChatMessages = (chatRef) => () => {
|
|
|
199
443
|
}, 2000);
|
|
200
444
|
}, 2000);
|
|
201
445
|
};
|
|
202
|
-
const
|
|
446
|
+
const stopResponseAnswer = () => {
|
|
203
447
|
console.log("stop generating answer");
|
|
204
448
|
return new Promise(resolve => {
|
|
205
449
|
// Lógica asincrónica aquí si es necesario
|
|
@@ -216,7 +460,7 @@ const chatCallbacksWithChatRef = (chChatRef) => {
|
|
|
216
460
|
mimeType: "application/javascript"
|
|
217
461
|
});
|
|
218
462
|
}),
|
|
219
|
-
|
|
463
|
+
stopResponse: stopResponseAnswer
|
|
220
464
|
};
|
|
221
465
|
};
|
|
222
466
|
function dummyStreaming(chatRef, counter, stringToDisplay, mode) {
|
|
@@ -242,7 +486,7 @@ function dummyStreaming(chatRef, counter, stringToDisplay, mode) {
|
|
|
242
486
|
// },
|
|
243
487
|
status: streamingCompleted ? "complete" : "streaming",
|
|
244
488
|
metadata: {
|
|
245
|
-
|
|
489
|
+
agentName: ASSISTANT_NAME,
|
|
246
490
|
time: "14:25"
|
|
247
491
|
}
|
|
248
492
|
}, mode);
|
|
@@ -250,7 +494,7 @@ function dummyStreaming(chatRef, counter, stringToDisplay, mode) {
|
|
|
250
494
|
dummyStreaming(chatRef, counter + 20, stringToDisplay, "concat");
|
|
251
495
|
}
|
|
252
496
|
else {
|
|
253
|
-
chatRef.
|
|
497
|
+
chatRef.waitingResponse = false;
|
|
254
498
|
}
|
|
255
499
|
}, counter % 200 === 0 ? 50 : 40);
|
|
256
500
|
}
|
|
@@ -261,7 +505,7 @@ const chatTranslations = {
|
|
|
261
505
|
downloadCodeButton: "Download code",
|
|
262
506
|
sendButton: "Send",
|
|
263
507
|
sendInput: "Message",
|
|
264
|
-
|
|
508
|
+
stopResponseButton: "Stop generating answer"
|
|
265
509
|
},
|
|
266
510
|
placeholder: {
|
|
267
511
|
sendInput: "Ask me a question..."
|
|
@@ -272,7 +516,7 @@ const chatTranslations = {
|
|
|
272
516
|
downloadCodeButton: "Download code",
|
|
273
517
|
processing: `Processing with ${PROCESSING_PLACEHOLDER}`,
|
|
274
518
|
sourceFiles: "Source files:",
|
|
275
|
-
|
|
519
|
+
stopResponseButton: ""
|
|
276
520
|
}
|
|
277
521
|
};
|
|
278
522
|
|
|
@@ -295,11 +539,10 @@ var __classPrivateFieldSet = (undefined && undefined.__classPrivateFieldSet) ||
|
|
|
295
539
|
return (kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;
|
|
296
540
|
};
|
|
297
541
|
var _GxIdeScChatContainer_chatContainerRef, _GxIdeScChatContainer_chatWelcomeRef, _GxIdeScChatContainer_chChatRef, _GxIdeScChatContainer_chatCallbacks, _GxIdeScChatContainer_copyConversationCallbackHandler, _GxIdeScChatContainer_deleteConversationCallbackHandler, _GxIdeScChatContainer_suggestedPrompRequestedCallbackHandler;
|
|
298
|
-
// TODO: Add back "components/chat-lit" once chat bundle for lit is ready
|
|
299
|
-
// on a new Mercury version
|
|
300
542
|
const CSS_BUNDLES = [
|
|
301
543
|
"resets/box-sizing",
|
|
302
544
|
"utils/elevation",
|
|
545
|
+
"components/chat",
|
|
303
546
|
"components/markdown-viewer"
|
|
304
547
|
];
|
|
305
548
|
const GxIdeScChatContainer = class {
|
|
@@ -406,7 +649,7 @@ const GxIdeScChatContainer = class {
|
|
|
406
649
|
}
|
|
407
650
|
}
|
|
408
651
|
render() {
|
|
409
|
-
return (index.h(index.Host, null, index.h("ch-theme", { model: CSS_BUNDLES }), index.h("gx-ide-chat-container", { chatTitle: "GeneXus Assistant", copyConversationCallback: __classPrivateFieldGet(this, _GxIdeScChatContainer_copyConversationCallbackHandler, "f"), deleteConversationCallback: __classPrivateFieldGet(this, _GxIdeScChatContainer_deleteConversationCallbackHandler, "f"), ref: el => (__classPrivateFieldSet(this, _GxIdeScChatContainer_chatContainerRef, el, "f")), class: "elevation-1" }, index.h("ch-chat", { callbacks: __classPrivateFieldGet(this, _GxIdeScChatContainer_chatCallbacks, "f"), class: "chat
|
|
652
|
+
return (index.h(index.Host, null, index.h("ch-theme", { model: CSS_BUNDLES }), index.h("gx-ide-chat-container", { chatTitle: "GeneXus Assistant", copyConversationCallback: __classPrivateFieldGet(this, _GxIdeScChatContainer_copyConversationCallbackHandler, "f"), deleteConversationCallback: __classPrivateFieldGet(this, _GxIdeScChatContainer_deleteConversationCallbackHandler, "f"), ref: el => (__classPrivateFieldSet(this, _GxIdeScChatContainer_chatContainerRef, el, "f")), class: "elevation-1" }, index.h("ch-chat", { callbacks: __classPrivateFieldGet(this, _GxIdeScChatContainer_chatCallbacks, "f"), class: "chat", waitingResponse: this.generatingResponse, loadingState: this.loadingState, renderItem: renderItem, items: this.chatItems, showAdditionalContent: false, sendContainerLayout: sendContainerLayout, translations: chatTranslations, ref: (el) => (__classPrivateFieldSet(this, _GxIdeScChatContainer_chChatRef, el, "f")), markdownTheme: "components/markdown-viewer" }, index.h("gx-ide-chat-welcome", { ref: el => (__classPrivateFieldSet(this, _GxIdeScChatContainer_chatWelcomeRef, el, "f")), slot: "empty-chat", suggestedPrompRequestedCallback: __classPrivateFieldGet(this, _GxIdeScChatContainer_suggestedPrompRequestedCallbackHandler, "f") }), index.h("div", { slot: "additional-content" }, "Custom content that is rendered when the chat renders content")))));
|
|
410
653
|
}
|
|
411
654
|
};
|
|
412
655
|
_GxIdeScChatContainer_chatContainerRef = new WeakMap(), _GxIdeScChatContainer_chatWelcomeRef = new WeakMap(), _GxIdeScChatContainer_chChatRef = new WeakMap(), _GxIdeScChatContainer_chatCallbacks = new WeakMap(), _GxIdeScChatContainer_copyConversationCallbackHandler = new WeakMap(), _GxIdeScChatContainer_deleteConversationCallbackHandler = new WeakMap(), _GxIdeScChatContainer_suggestedPrompRequestedCallbackHandler = new WeakMap();
|