@progress/kendo-react-webmcp 15.0.0-develop.2
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/LICENSE.md +11 -0
- package/NOTICE.txt +383 -0
- package/README.md +72 -0
- package/WebMcpProvider.d.ts +49 -0
- package/WebMcpProvider.js +8 -0
- package/WebMcpProvider.mjs +138 -0
- package/adapters/aiprompt.d.ts +15 -0
- package/adapters/aiprompt.js +8 -0
- package/adapters/aiprompt.mjs +63 -0
- package/adapters/autocomplete.d.ts +18 -0
- package/adapters/autocomplete.js +8 -0
- package/adapters/autocomplete.mjs +69 -0
- package/adapters/button.d.ts +18 -0
- package/adapters/button.js +8 -0
- package/adapters/button.mjs +46 -0
- package/adapters/calendar.d.ts +16 -0
- package/adapters/calendar.js +8 -0
- package/adapters/calendar.mjs +61 -0
- package/adapters/chart.d.ts +29 -0
- package/adapters/chart.js +8 -0
- package/adapters/chart.mjs +95 -0
- package/adapters/chat.d.ts +16 -0
- package/adapters/chat.js +8 -0
- package/adapters/chat.mjs +66 -0
- package/adapters/colorpicker.d.ts +16 -0
- package/adapters/colorpicker.js +8 -0
- package/adapters/colorpicker.mjs +60 -0
- package/adapters/combobox.d.ts +20 -0
- package/adapters/combobox.js +8 -0
- package/adapters/combobox.mjs +87 -0
- package/adapters/dashboard.d.ts +18 -0
- package/adapters/dashboard.js +8 -0
- package/adapters/dashboard.mjs +41 -0
- package/adapters/datepicker.d.ts +17 -0
- package/adapters/datepicker.js +8 -0
- package/adapters/datepicker.mjs +59 -0
- package/adapters/daterangepicker.d.ts +19 -0
- package/adapters/daterangepicker.js +8 -0
- package/adapters/daterangepicker.mjs +70 -0
- package/adapters/datetimepicker.d.ts +16 -0
- package/adapters/datetimepicker.js +8 -0
- package/adapters/datetimepicker.mjs +59 -0
- package/adapters/dialog.d.ts +15 -0
- package/adapters/dialog.js +8 -0
- package/adapters/dialog.mjs +58 -0
- package/adapters/drawer.d.ts +33 -0
- package/adapters/drawer.js +8 -0
- package/adapters/drawer.mjs +86 -0
- package/adapters/dropdownlist.d.ts +19 -0
- package/adapters/dropdownlist.js +8 -0
- package/adapters/dropdownlist.mjs +74 -0
- package/adapters/dropdowntree.d.ts +22 -0
- package/adapters/dropdowntree.js +8 -0
- package/adapters/dropdowntree.mjs +108 -0
- package/adapters/editor.d.ts +30 -0
- package/adapters/editor.js +8 -0
- package/adapters/editor.mjs +109 -0
- package/adapters/form.d.ts +20 -0
- package/adapters/form.js +10 -0
- package/adapters/form.mjs +115 -0
- package/adapters/gantt.d.ts +65 -0
- package/adapters/gantt.js +8 -0
- package/adapters/gantt.mjs +370 -0
- package/adapters/grid.d.ts +102 -0
- package/adapters/grid.js +8 -0
- package/adapters/grid.mjs +692 -0
- package/adapters/listbox.d.ts +18 -0
- package/adapters/listbox.js +8 -0
- package/adapters/listbox.mjs +87 -0
- package/adapters/listview.d.ts +22 -0
- package/adapters/listview.js +8 -0
- package/adapters/listview.mjs +80 -0
- package/adapters/map.d.ts +32 -0
- package/adapters/map.js +8 -0
- package/adapters/map.mjs +88 -0
- package/adapters/maskedtextbox.d.ts +17 -0
- package/adapters/maskedtextbox.js +8 -0
- package/adapters/maskedtextbox.mjs +57 -0
- package/adapters/menu.d.ts +16 -0
- package/adapters/menu.js +8 -0
- package/adapters/menu.mjs +50 -0
- package/adapters/multiselect.d.ts +19 -0
- package/adapters/multiselect.js +8 -0
- package/adapters/multiselect.mjs +75 -0
- package/adapters/notification.d.ts +17 -0
- package/adapters/notification.js +8 -0
- package/adapters/notification.mjs +57 -0
- package/adapters/numerictextbox.d.ts +19 -0
- package/adapters/numerictextbox.js +8 -0
- package/adapters/numerictextbox.mjs +78 -0
- package/adapters/panelbar.d.ts +17 -0
- package/adapters/panelbar.js +8 -0
- package/adapters/panelbar.mjs +66 -0
- package/adapters/pivotgrid.d.ts +16 -0
- package/adapters/pivotgrid.js +8 -0
- package/adapters/pivotgrid.mjs +126 -0
- package/adapters/rangeslider.d.ts +21 -0
- package/adapters/rangeslider.js +8 -0
- package/adapters/rangeslider.mjs +55 -0
- package/adapters/rating.d.ts +16 -0
- package/adapters/rating.js +8 -0
- package/adapters/rating.mjs +60 -0
- package/adapters/scheduler.d.ts +45 -0
- package/adapters/scheduler.js +8 -0
- package/adapters/scheduler.mjs +165 -0
- package/adapters/scrollview.d.ts +21 -0
- package/adapters/scrollview.js +8 -0
- package/adapters/scrollview.mjs +74 -0
- package/adapters/signature.d.ts +16 -0
- package/adapters/signature.js +8 -0
- package/adapters/signature.mjs +47 -0
- package/adapters/slider.d.ts +19 -0
- package/adapters/slider.js +8 -0
- package/adapters/slider.mjs +47 -0
- package/adapters/sortable.d.ts +17 -0
- package/adapters/sortable.js +8 -0
- package/adapters/sortable.mjs +67 -0
- package/adapters/spreadsheet.d.ts +32 -0
- package/adapters/spreadsheet.js +8 -0
- package/adapters/spreadsheet.mjs +256 -0
- package/adapters/stepper.d.ts +23 -0
- package/adapters/stepper.js +8 -0
- package/adapters/stepper.mjs +47 -0
- package/adapters/switch.d.ts +17 -0
- package/adapters/switch.js +8 -0
- package/adapters/switch.mjs +48 -0
- package/adapters/tabstrip.d.ts +19 -0
- package/adapters/tabstrip.js +8 -0
- package/adapters/tabstrip.mjs +47 -0
- package/adapters/taskboard.d.ts +20 -0
- package/adapters/taskboard.js +8 -0
- package/adapters/taskboard.mjs +104 -0
- package/adapters/textarea.d.ts +16 -0
- package/adapters/textarea.js +8 -0
- package/adapters/textarea.mjs +57 -0
- package/adapters/textbox.d.ts +19 -0
- package/adapters/textbox.js +8 -0
- package/adapters/textbox.mjs +61 -0
- package/adapters/timepicker.d.ts +16 -0
- package/adapters/timepicker.js +8 -0
- package/adapters/timepicker.mjs +59 -0
- package/adapters/treelist.d.ts +81 -0
- package/adapters/treelist.js +8 -0
- package/adapters/treelist.mjs +403 -0
- package/adapters/treeview.d.ts +25 -0
- package/adapters/treeview.js +9 -0
- package/adapters/treeview.mjs +212 -0
- package/adapters/upload.d.ts +15 -0
- package/adapters/upload.js +8 -0
- package/adapters/upload.mjs +52 -0
- package/adapters/utils.d.ts +16 -0
- package/adapters/utils.js +8 -0
- package/adapters/utils.mjs +25 -0
- package/adapters/window.d.ts +17 -0
- package/adapters/window.js +8 -0
- package/adapters/window.mjs +99 -0
- package/commands/aiprompt.d.ts +30 -0
- package/commands/aiprompt.js +8 -0
- package/commands/aiprompt.mjs +54 -0
- package/commands/autocomplete.d.ts +26 -0
- package/commands/autocomplete.js +8 -0
- package/commands/autocomplete.mjs +36 -0
- package/commands/button.d.ts +19 -0
- package/commands/button.js +8 -0
- package/commands/button.mjs +21 -0
- package/commands/calendar.d.ts +29 -0
- package/commands/calendar.js +8 -0
- package/commands/calendar.mjs +52 -0
- package/commands/chart.d.ts +27 -0
- package/commands/chart.js +8 -0
- package/commands/chart.mjs +43 -0
- package/commands/chat.d.ts +22 -0
- package/commands/chat.js +8 -0
- package/commands/chat.mjs +30 -0
- package/commands/checkbox.d.ts +26 -0
- package/commands/checkbox.js +8 -0
- package/commands/checkbox.mjs +36 -0
- package/commands/colorpicker.d.ts +26 -0
- package/commands/colorpicker.js +8 -0
- package/commands/colorpicker.mjs +36 -0
- package/commands/combobox.d.ts +34 -0
- package/commands/combobox.js +8 -0
- package/commands/combobox.mjs +48 -0
- package/commands/dashboard.d.ts +19 -0
- package/commands/dashboard.js +8 -0
- package/commands/dashboard.mjs +21 -0
- package/commands/datepicker.d.ts +26 -0
- package/commands/datepicker.js +8 -0
- package/commands/datepicker.mjs +36 -0
- package/commands/daterangepicker.d.ts +27 -0
- package/commands/daterangepicker.js +8 -0
- package/commands/daterangepicker.mjs +37 -0
- package/commands/datetimepicker.d.ts +26 -0
- package/commands/datetimepicker.js +8 -0
- package/commands/datetimepicker.mjs +36 -0
- package/commands/dialog.d.ts +23 -0
- package/commands/dialog.js +8 -0
- package/commands/dialog.mjs +25 -0
- package/commands/drawer.d.ts +30 -0
- package/commands/drawer.js +8 -0
- package/commands/drawer.mjs +38 -0
- package/commands/dropdownlist.d.ts +30 -0
- package/commands/dropdownlist.js +8 -0
- package/commands/dropdownlist.mjs +42 -0
- package/commands/dropdowntree.d.ts +34 -0
- package/commands/dropdowntree.js +8 -0
- package/commands/dropdowntree.mjs +48 -0
- package/commands/editor.d.ts +26 -0
- package/commands/editor.js +8 -0
- package/commands/editor.mjs +36 -0
- package/commands/form.d.ts +34 -0
- package/commands/form.js +8 -0
- package/commands/form.mjs +54 -0
- package/commands/gantt.d.ts +119 -0
- package/commands/gantt.js +8 -0
- package/commands/gantt.mjs +156 -0
- package/commands/grid.d.ts +209 -0
- package/commands/grid.js +8 -0
- package/commands/grid.mjs +280 -0
- package/commands/index.d.ts +58 -0
- package/commands/listbox.d.ts +31 -0
- package/commands/listbox.js +8 -0
- package/commands/listbox.mjs +69 -0
- package/commands/listview.d.ts +22 -0
- package/commands/listview.js +8 -0
- package/commands/listview.mjs +29 -0
- package/commands/map.d.ts +43 -0
- package/commands/map.js +8 -0
- package/commands/map.mjs +77 -0
- package/commands/maskedtextbox.d.ts +26 -0
- package/commands/maskedtextbox.js +8 -0
- package/commands/maskedtextbox.mjs +36 -0
- package/commands/menu.d.ts +22 -0
- package/commands/menu.js +8 -0
- package/commands/menu.mjs +30 -0
- package/commands/multicolumncombobox.d.ts +34 -0
- package/commands/multicolumncombobox.js +8 -0
- package/commands/multicolumncombobox.mjs +48 -0
- package/commands/multiselect.d.ts +41 -0
- package/commands/multiselect.js +8 -0
- package/commands/multiselect.mjs +57 -0
- package/commands/notification.d.ts +27 -0
- package/commands/notification.js +8 -0
- package/commands/notification.mjs +46 -0
- package/commands/numerictextbox.d.ts +34 -0
- package/commands/numerictextbox.js +8 -0
- package/commands/numerictextbox.mjs +48 -0
- package/commands/panelbar.d.ts +29 -0
- package/commands/panelbar.js +8 -0
- package/commands/panelbar.mjs +43 -0
- package/commands/pivotgrid.d.ts +56 -0
- package/commands/pivotgrid.js +8 -0
- package/commands/pivotgrid.mjs +87 -0
- package/commands/rangeslider.d.ts +23 -0
- package/commands/rangeslider.js +8 -0
- package/commands/rangeslider.mjs +25 -0
- package/commands/rating.d.ts +26 -0
- package/commands/rating.js +8 -0
- package/commands/rating.mjs +36 -0
- package/commands/scheduler.d.ts +45 -0
- package/commands/scheduler.js +8 -0
- package/commands/scheduler.mjs +59 -0
- package/commands/scrollview.d.ts +30 -0
- package/commands/scrollview.js +8 -0
- package/commands/scrollview.mjs +46 -0
- package/commands/signature.d.ts +19 -0
- package/commands/signature.js +8 -0
- package/commands/signature.mjs +21 -0
- package/commands/slider.d.ts +22 -0
- package/commands/slider.js +8 -0
- package/commands/slider.mjs +24 -0
- package/commands/sortable.d.ts +23 -0
- package/commands/sortable.js +8 -0
- package/commands/sortable.mjs +32 -0
- package/commands/spreadsheet.d.ts +92 -0
- package/commands/spreadsheet.js +8 -0
- package/commands/spreadsheet.mjs +181 -0
- package/commands/stepper.d.ts +22 -0
- package/commands/stepper.js +8 -0
- package/commands/stepper.mjs +35 -0
- package/commands/switch.d.ts +26 -0
- package/commands/switch.js +8 -0
- package/commands/switch.mjs +36 -0
- package/commands/tabstrip.d.ts +23 -0
- package/commands/tabstrip.js +8 -0
- package/commands/tabstrip.mjs +30 -0
- package/commands/taskboard.d.ts +48 -0
- package/commands/taskboard.js +8 -0
- package/commands/taskboard.mjs +90 -0
- package/commands/textarea.d.ts +26 -0
- package/commands/textarea.js +8 -0
- package/commands/textarea.mjs +36 -0
- package/commands/textbox.d.ts +26 -0
- package/commands/textbox.js +8 -0
- package/commands/textbox.mjs +36 -0
- package/commands/timepicker.d.ts +26 -0
- package/commands/timepicker.js +8 -0
- package/commands/timepicker.mjs +36 -0
- package/commands/treelist.d.ts +135 -0
- package/commands/treelist.js +8 -0
- package/commands/treelist.mjs +177 -0
- package/commands/treeview.d.ts +44 -0
- package/commands/treeview.js +8 -0
- package/commands/treeview.mjs +84 -0
- package/commands/upload.d.ts +19 -0
- package/commands/upload.js +8 -0
- package/commands/upload.mjs +21 -0
- package/commands/window.d.ts +35 -0
- package/commands/window.js +8 -0
- package/commands/window.mjs +45 -0
- package/dist/cdn/js/kendo-react-webmcp.js +15 -0
- package/grid-mcp-tools.d.ts +26 -0
- package/grid-mcp-tools.js +8 -0
- package/grid-mcp-tools.mjs +75 -0
- package/index.d.mts +68 -0
- package/index.d.ts +68 -0
- package/index.js +8 -0
- package/index.mjs +308 -0
- package/mcp-types.d.ts +12 -0
- package/package.json +64 -0
- package/schemas/common.d.ts +27 -0
- package/schemas/common.js +8 -0
- package/schemas/common.mjs +113 -0
- package/schemas/gantt.d.ts +10 -0
- package/schemas/gantt.js +8 -0
- package/schemas/gantt.mjs +51 -0
- package/schemas/grid.d.ts +10 -0
- package/schemas/grid.js +8 -0
- package/schemas/grid.mjs +46 -0
- package/schemas/index.d.ts +13 -0
- package/schemas/input.d.ts +19 -0
- package/schemas/input.js +8 -0
- package/schemas/input.mjs +137 -0
- package/schemas/scheduler.d.ts +11 -0
- package/schemas/scheduler.js +8 -0
- package/schemas/scheduler.mjs +58 -0
- package/schemas/table.d.ts +12 -0
- package/schemas/table.js +8 -0
- package/schemas/table.mjs +87 -0
- package/types.d.ts +39 -0
|
@@ -0,0 +1,138 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
*-------------------------------------------------------------------------------------------
|
|
4
|
+
* Copyright © 2026 Progress Software Corporation. All rights reserved.
|
|
5
|
+
* Licensed under commercial license. See LICENSE.md in the package root for more information
|
|
6
|
+
*-------------------------------------------------------------------------------------------
|
|
7
|
+
*/
|
|
8
|
+
import * as t from "react";
|
|
9
|
+
import { getModelContext as b, WebMcpContext as w } from "@progress/kendo-react-common";
|
|
10
|
+
import { textBoxAdapter as k } from "./adapters/textbox.mjs";
|
|
11
|
+
import { buttonAdapter as h } from "./adapters/button.mjs";
|
|
12
|
+
import { treeViewAdapter as v } from "./adapters/treeview.mjs";
|
|
13
|
+
import { chatAdapter as P } from "./adapters/chat.mjs";
|
|
14
|
+
import { formAdapter as N } from "./adapters/form.mjs";
|
|
15
|
+
import { editorAdapter as B } from "./adapters/editor.mjs";
|
|
16
|
+
import { spreadsheetAdapter as D } from "./adapters/spreadsheet.mjs";
|
|
17
|
+
import { schedulerAdapter as M } from "./adapters/scheduler.mjs";
|
|
18
|
+
import { ganttAdapter as T } from "./adapters/gantt.mjs";
|
|
19
|
+
import { gridAdapter as R } from "./adapters/grid.mjs";
|
|
20
|
+
import { treeListAdapter as S } from "./adapters/treelist.mjs";
|
|
21
|
+
import { tabStripAdapter as V } from "./adapters/tabstrip.mjs";
|
|
22
|
+
import { panelBarAdapter as C } from "./adapters/panelbar.mjs";
|
|
23
|
+
import { stepperAdapter as E } from "./adapters/stepper.mjs";
|
|
24
|
+
import { drawerAdapter as L } from "./adapters/drawer.mjs";
|
|
25
|
+
import { windowAdapter as W } from "./adapters/window.mjs";
|
|
26
|
+
import { dropDownListAdapter as _ } from "./adapters/dropdownlist.mjs";
|
|
27
|
+
import { comboBoxAdapter as $ } from "./adapters/combobox.mjs";
|
|
28
|
+
import { autoCompleteAdapter as y } from "./adapters/autocomplete.mjs";
|
|
29
|
+
import { multiSelectAdapter as G } from "./adapters/multiselect.mjs";
|
|
30
|
+
import { dropDownTreeAdapter as j } from "./adapters/dropdowntree.mjs";
|
|
31
|
+
import { datePickerAdapter as q } from "./adapters/datepicker.mjs";
|
|
32
|
+
import { dateRangePickerAdapter as z } from "./adapters/daterangepicker.mjs";
|
|
33
|
+
import { timePickerAdapter as F } from "./adapters/timepicker.mjs";
|
|
34
|
+
import { dateTimePickerAdapter as H } from "./adapters/datetimepicker.mjs";
|
|
35
|
+
import { calendarAdapter as I } from "./adapters/calendar.mjs";
|
|
36
|
+
import { numericTextBoxAdapter as J } from "./adapters/numerictextbox.mjs";
|
|
37
|
+
import { sliderAdapter as K } from "./adapters/slider.mjs";
|
|
38
|
+
import { rangeSliderAdapter as O } from "./adapters/rangeslider.mjs";
|
|
39
|
+
import { colorPickerAdapter as Q } from "./adapters/colorpicker.mjs";
|
|
40
|
+
import { switchAdapter as U } from "./adapters/switch.mjs";
|
|
41
|
+
import { ratingAdapter as X } from "./adapters/rating.mjs";
|
|
42
|
+
import { textAreaAdapter as Y } from "./adapters/textarea.mjs";
|
|
43
|
+
import { maskedTextBoxAdapter as Z } from "./adapters/maskedtextbox.mjs";
|
|
44
|
+
import { signatureAdapter as rr } from "./adapters/signature.mjs";
|
|
45
|
+
import { uploadAdapter as tr } from "./adapters/upload.mjs";
|
|
46
|
+
import { listBoxAdapter as er } from "./adapters/listbox.mjs";
|
|
47
|
+
import { listViewAdapter as or } from "./adapters/listview.mjs";
|
|
48
|
+
import { dialogAdapter as pr } from "./adapters/dialog.mjs";
|
|
49
|
+
import { menuAdapter as ar } from "./adapters/menu.mjs";
|
|
50
|
+
import { scrollViewAdapter as mr } from "./adapters/scrollview.mjs";
|
|
51
|
+
import { sortableAdapter as ir } from "./adapters/sortable.mjs";
|
|
52
|
+
import { mapAdapter as dr } from "./adapters/map.mjs";
|
|
53
|
+
import { notificationAdapter as fr } from "./adapters/notification.mjs";
|
|
54
|
+
import { chartAdapter as cr } from "./adapters/chart.mjs";
|
|
55
|
+
import { taskboardAdapter as nr } from "./adapters/taskboard.mjs";
|
|
56
|
+
import { pivotgridAdapter as sr } from "./adapters/pivotgrid.mjs";
|
|
57
|
+
import { aipromptAdapter as Ar } from "./adapters/aiprompt.mjs";
|
|
58
|
+
const lr = /* @__PURE__ */ new Map([
|
|
59
|
+
["textbox", k],
|
|
60
|
+
["button", h],
|
|
61
|
+
["treeview", v],
|
|
62
|
+
["chat", P],
|
|
63
|
+
["form", N],
|
|
64
|
+
["editor", B],
|
|
65
|
+
["spreadsheet", D],
|
|
66
|
+
["scheduler", M],
|
|
67
|
+
["gantt", T],
|
|
68
|
+
["grid", R],
|
|
69
|
+
["treelist", S],
|
|
70
|
+
["tabstrip", V],
|
|
71
|
+
["panelbar", C],
|
|
72
|
+
["stepper", E],
|
|
73
|
+
["drawer", L],
|
|
74
|
+
["window", W],
|
|
75
|
+
["dropdownlist", _],
|
|
76
|
+
["combobox", $],
|
|
77
|
+
["autocomplete", y],
|
|
78
|
+
["multiselect", G],
|
|
79
|
+
["dropdowntree", j],
|
|
80
|
+
["datepicker", q],
|
|
81
|
+
["daterangepicker", z],
|
|
82
|
+
["timepicker", F],
|
|
83
|
+
["datetimepicker", H],
|
|
84
|
+
["calendar", I],
|
|
85
|
+
["numerictextbox", J],
|
|
86
|
+
["slider", K],
|
|
87
|
+
["rangeslider", O],
|
|
88
|
+
["colorpicker", Q],
|
|
89
|
+
["switch", U],
|
|
90
|
+
["rating", X],
|
|
91
|
+
["textarea", Y],
|
|
92
|
+
["maskedtextbox", Z],
|
|
93
|
+
["signature", rr],
|
|
94
|
+
["upload", tr],
|
|
95
|
+
["listbox", er],
|
|
96
|
+
["listview", or],
|
|
97
|
+
["dialog", pr],
|
|
98
|
+
["menu", ar],
|
|
99
|
+
["scrollview", mr],
|
|
100
|
+
["sortable", ir],
|
|
101
|
+
["map", dr],
|
|
102
|
+
["notification", fr],
|
|
103
|
+
["chart", cr],
|
|
104
|
+
["taskboard", nr],
|
|
105
|
+
["pivotgrid", sr],
|
|
106
|
+
["aiprompt", Ar]
|
|
107
|
+
]), nt = ({ children: f, dataName: a }) => {
|
|
108
|
+
const m = t.useRef(a);
|
|
109
|
+
m.current = a;
|
|
110
|
+
const i = t.useCallback(
|
|
111
|
+
(n, s, A, l) => {
|
|
112
|
+
const e = lr.get(n);
|
|
113
|
+
if (!e)
|
|
114
|
+
return () => {
|
|
115
|
+
};
|
|
116
|
+
const d = b();
|
|
117
|
+
if (!d)
|
|
118
|
+
return () => {
|
|
119
|
+
};
|
|
120
|
+
const r = l, o = (typeof (r == null ? void 0 : r.dataName) == "string" ? r.dataName : void 0) || m.current;
|
|
121
|
+
if (!o)
|
|
122
|
+
return () => {
|
|
123
|
+
};
|
|
124
|
+
const u = `${o}_${e.componentSuffix}`, g = {
|
|
125
|
+
dataName: o,
|
|
126
|
+
groupName: u
|
|
127
|
+
}, x = e.createTools(s, A, g, d);
|
|
128
|
+
return () => {
|
|
129
|
+
x.forEach((p) => p == null ? void 0 : p.unregister());
|
|
130
|
+
};
|
|
131
|
+
},
|
|
132
|
+
[]
|
|
133
|
+
), c = t.useMemo(() => ({ register: i }), [i]);
|
|
134
|
+
return /* @__PURE__ */ t.createElement(w.Provider, { value: c }, f);
|
|
135
|
+
};
|
|
136
|
+
export {
|
|
137
|
+
nt as WebMcpProvider
|
|
138
|
+
};
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
*-------------------------------------------------------------------------------------------
|
|
4
|
+
* Copyright © 2026 Progress Software Corporation. All rights reserved.
|
|
5
|
+
* Licensed under commercial license. See LICENSE.md in the package root for more information
|
|
6
|
+
*-------------------------------------------------------------------------------------------
|
|
7
|
+
*/
|
|
8
|
+
import { ToolAdapter } from '../types';
|
|
9
|
+
interface AIPromptAdapterProps {
|
|
10
|
+
onRequest?: (event: Record<string, unknown>) => void;
|
|
11
|
+
webMcp?: unknown;
|
|
12
|
+
}
|
|
13
|
+
/** @hidden */
|
|
14
|
+
export declare const aipromptAdapter: ToolAdapter<unknown, AIPromptAdapterProps>;
|
|
15
|
+
export {};
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
*-------------------------------------------------------------------------------------------
|
|
4
|
+
* Copyright © 2026 Progress Software Corporation. All rights reserved.
|
|
5
|
+
* Licensed under commercial license. See LICENSE.md in the package root for more information
|
|
6
|
+
*-------------------------------------------------------------------------------------------
|
|
7
|
+
*/
|
|
8
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const o=require("../commands/aiprompt.js"),S={componentSuffix:"aiprompt",createTools(u,m,p,d){const c=[],l=t=>`${p.groupName}_${t}`,a=[{name:"send_prompt",description:`Send a prompt to the ${p.dataName} AI prompt component.`,commandType:o.AIPromptCommands.SendPrompt,enabled:!0},{name:"set_suggestions",description:`Set the prompt suggestions shown in the ${p.dataName} AI prompt component.`,commandType:o.AIPromptCommands.SetSuggestions,enabled:!0}],n=m.current.webMcp,i=typeof n=="object"&&n!==null&&typeof n.tools=="function"?n.tools:void 0,g=i?i(a):a,y=async(t,e)=>{var r,s;switch(t){case o.AIPromptCommands.SendPrompt:return(s=(r=m.current).onRequest)==null||s.call(r,{value:e.prompt,syntheticEvent:null,target:u}),{content:[{type:"text",text:`Prompt sent: "${String(e.prompt)}".`}]};case o.AIPromptCommands.SetSuggestions:return{content:[{type:"text",text:`Suggestions updated: ${JSON.stringify(e.suggestions)}.`}]};default:return{content:[{type:"text",text:`Unknown command: ${t}`}],isError:!0}}};for(const t of g){if(!t.enabled)continue;const e=o.getAIPromptToolSchema(t.commandType),r=t.commandType;try{c.push(d.registerTool({name:l(t.name),description:t.description,inputSchema:e,execute:async s=>y(r,s||{})}))}catch{}}return c}};exports.aipromptAdapter=S;
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
*-------------------------------------------------------------------------------------------
|
|
4
|
+
* Copyright © 2026 Progress Software Corporation. All rights reserved.
|
|
5
|
+
* Licensed under commercial license. See LICENSE.md in the package root for more information
|
|
6
|
+
*-------------------------------------------------------------------------------------------
|
|
7
|
+
*/
|
|
8
|
+
import { AIPromptCommands as r, getAIPromptToolSchema as S } from "../commands/aiprompt.mjs";
|
|
9
|
+
const h = {
|
|
10
|
+
componentSuffix: "aiprompt",
|
|
11
|
+
createTools(u, c, p, d) {
|
|
12
|
+
const m = [], l = (t) => `${p.groupName}_${t}`, a = [
|
|
13
|
+
{
|
|
14
|
+
name: "send_prompt",
|
|
15
|
+
description: `Send a prompt to the ${p.dataName} AI prompt component.`,
|
|
16
|
+
commandType: r.SendPrompt,
|
|
17
|
+
enabled: !0
|
|
18
|
+
},
|
|
19
|
+
{
|
|
20
|
+
name: "set_suggestions",
|
|
21
|
+
description: `Set the prompt suggestions shown in the ${p.dataName} AI prompt component.`,
|
|
22
|
+
commandType: r.SetSuggestions,
|
|
23
|
+
enabled: !0
|
|
24
|
+
}
|
|
25
|
+
], o = c.current.webMcp, i = typeof o == "object" && o !== null && typeof o.tools == "function" ? o.tools : void 0, g = i ? i(a) : a, y = async (t, e) => {
|
|
26
|
+
var n, s;
|
|
27
|
+
switch (t) {
|
|
28
|
+
case r.SendPrompt:
|
|
29
|
+
return (s = (n = c.current).onRequest) == null || s.call(n, {
|
|
30
|
+
value: e.prompt,
|
|
31
|
+
syntheticEvent: null,
|
|
32
|
+
target: u
|
|
33
|
+
}), { content: [{ type: "text", text: `Prompt sent: "${String(e.prompt)}".` }] };
|
|
34
|
+
case r.SetSuggestions:
|
|
35
|
+
return {
|
|
36
|
+
content: [{ type: "text", text: `Suggestions updated: ${JSON.stringify(e.suggestions)}.` }]
|
|
37
|
+
};
|
|
38
|
+
default:
|
|
39
|
+
return { content: [{ type: "text", text: `Unknown command: ${t}` }], isError: !0 };
|
|
40
|
+
}
|
|
41
|
+
};
|
|
42
|
+
for (const t of g) {
|
|
43
|
+
if (!t.enabled)
|
|
44
|
+
continue;
|
|
45
|
+
const e = S(t.commandType), n = t.commandType;
|
|
46
|
+
try {
|
|
47
|
+
m.push(
|
|
48
|
+
d.registerTool({
|
|
49
|
+
name: l(t.name),
|
|
50
|
+
description: t.description,
|
|
51
|
+
inputSchema: e,
|
|
52
|
+
execute: async (s) => y(n, s || {})
|
|
53
|
+
})
|
|
54
|
+
);
|
|
55
|
+
} catch {
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
return m;
|
|
59
|
+
}
|
|
60
|
+
};
|
|
61
|
+
export {
|
|
62
|
+
h as aipromptAdapter
|
|
63
|
+
};
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
*-------------------------------------------------------------------------------------------
|
|
4
|
+
* Copyright © 2026 Progress Software Corporation. All rights reserved.
|
|
5
|
+
* Licensed under commercial license. See LICENSE.md in the package root for more information
|
|
6
|
+
*-------------------------------------------------------------------------------------------
|
|
7
|
+
*/
|
|
8
|
+
import { ToolAdapter } from '../types';
|
|
9
|
+
interface AutoCompleteAdapterProps {
|
|
10
|
+
data?: unknown[];
|
|
11
|
+
value?: string;
|
|
12
|
+
textField?: string;
|
|
13
|
+
onChange?: (event: Record<string, unknown>) => void;
|
|
14
|
+
webMcp?: unknown;
|
|
15
|
+
}
|
|
16
|
+
/** @hidden */
|
|
17
|
+
export declare const autoCompleteAdapter: ToolAdapter<unknown, AutoCompleteAdapterProps>;
|
|
18
|
+
export {};
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
*-------------------------------------------------------------------------------------------
|
|
4
|
+
* Copyright © 2026 Progress Software Corporation. All rights reserved.
|
|
5
|
+
* Licensed under commercial license. See LICENSE.md in the package root for more information
|
|
6
|
+
*-------------------------------------------------------------------------------------------
|
|
7
|
+
*/
|
|
8
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const n=require("../commands/autocomplete.js"),p="AutoCompleteType",x={componentSuffix:"autocomplete",createTools(r,l,a,d){const u=[],C=e=>`${a.groupName}_${e}`,s=!!l.current.onChange,m=[{name:"type",description:`Type text in the ${a.dataName} autocomplete to trigger suggestions`,commandType:p,enabled:s},{name:"select",description:`Select a suggestion from the ${a.dataName} autocomplete`,commandType:n.AutoCompleteCommands.SetValue,enabled:s},{name:"clear",description:`Clear the ${a.dataName} autocomplete input`,commandType:n.AutoCompleteCommands.Clear,enabled:s}],c=l.current.webMcp,i=typeof c=="object"&&c!==null&&typeof c.tools=="function"?c.tools:void 0,y=i?i(m):m,g=async(e,t)=>{const o=l.current;switch(e){case p:return o.onChange&&o.onChange({value:t.text,syntheticEvent:null,target:r}),{content:[{type:"text",text:`Typed "${String(t.text)}".`}]};case n.AutoCompleteCommands.SetValue:return o.onChange&&o.onChange({value:t.value,syntheticEvent:null,target:r}),{content:[{type:"text",text:`Selected "${String(t.value)}".`}]};case n.AutoCompleteCommands.Clear:return o.onChange&&o.onChange({value:"",syntheticEvent:null,target:r}),{content:[{type:"text",text:"Input cleared."}]};default:return{content:[{type:"text",text:`Unknown command: ${e}`}],isError:!0}}};for(const e of y){if(!e.enabled)continue;const t=e.commandType,o=t===p?{type:"object",properties:{text:{type:"string",description:"Text to type"}},required:["text"]}:n.getAutoCompleteToolSchema(t);try{u.push(d.registerTool({name:C(e.name),description:e.description,inputSchema:o,execute:async h=>g(t,h||{})}))}catch{}}return u}};exports.autoCompleteAdapter=x;
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
*-------------------------------------------------------------------------------------------
|
|
4
|
+
* Copyright © 2026 Progress Software Corporation. All rights reserved.
|
|
5
|
+
* Licensed under commercial license. See LICENSE.md in the package root for more information
|
|
6
|
+
*-------------------------------------------------------------------------------------------
|
|
7
|
+
*/
|
|
8
|
+
import { AutoCompleteCommands as c, getAutoCompleteToolSchema as x } from "../commands/autocomplete.mjs";
|
|
9
|
+
const p = "AutoCompleteType", b = {
|
|
10
|
+
componentSuffix: "autocomplete",
|
|
11
|
+
createTools(r, s, o, d) {
|
|
12
|
+
const u = [], y = (e) => `${o.groupName}_${e}`, l = !!s.current.onChange, i = [
|
|
13
|
+
{
|
|
14
|
+
name: "type",
|
|
15
|
+
description: `Type text in the ${o.dataName} autocomplete to trigger suggestions`,
|
|
16
|
+
commandType: p,
|
|
17
|
+
enabled: l
|
|
18
|
+
},
|
|
19
|
+
{
|
|
20
|
+
name: "select",
|
|
21
|
+
description: `Select a suggestion from the ${o.dataName} autocomplete`,
|
|
22
|
+
commandType: c.SetValue,
|
|
23
|
+
enabled: l
|
|
24
|
+
},
|
|
25
|
+
{
|
|
26
|
+
name: "clear",
|
|
27
|
+
description: `Clear the ${o.dataName} autocomplete input`,
|
|
28
|
+
commandType: c.Clear,
|
|
29
|
+
enabled: l
|
|
30
|
+
}
|
|
31
|
+
], a = s.current.webMcp, m = typeof a == "object" && a !== null && typeof a.tools == "function" ? a.tools : void 0, C = m ? m(i) : i, g = async (e, t) => {
|
|
32
|
+
const n = s.current;
|
|
33
|
+
switch (e) {
|
|
34
|
+
case p:
|
|
35
|
+
return n.onChange && n.onChange({ value: t.text, syntheticEvent: null, target: r }), { content: [{ type: "text", text: `Typed "${String(t.text)}".` }] };
|
|
36
|
+
case c.SetValue:
|
|
37
|
+
return n.onChange && n.onChange({ value: t.value, syntheticEvent: null, target: r }), { content: [{ type: "text", text: `Selected "${String(t.value)}".` }] };
|
|
38
|
+
case c.Clear:
|
|
39
|
+
return n.onChange && n.onChange({ value: "", syntheticEvent: null, target: r }), { content: [{ type: "text", text: "Input cleared." }] };
|
|
40
|
+
default:
|
|
41
|
+
return { content: [{ type: "text", text: `Unknown command: ${e}` }], isError: !0 };
|
|
42
|
+
}
|
|
43
|
+
};
|
|
44
|
+
for (const e of C) {
|
|
45
|
+
if (!e.enabled)
|
|
46
|
+
continue;
|
|
47
|
+
const t = e.commandType, n = t === p ? {
|
|
48
|
+
type: "object",
|
|
49
|
+
properties: { text: { type: "string", description: "Text to type" } },
|
|
50
|
+
required: ["text"]
|
|
51
|
+
} : x(t);
|
|
52
|
+
try {
|
|
53
|
+
u.push(
|
|
54
|
+
d.registerTool({
|
|
55
|
+
name: y(e.name),
|
|
56
|
+
description: e.description,
|
|
57
|
+
inputSchema: n,
|
|
58
|
+
execute: async (h) => g(t, h || {})
|
|
59
|
+
})
|
|
60
|
+
);
|
|
61
|
+
} catch {
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
return u;
|
|
65
|
+
}
|
|
66
|
+
};
|
|
67
|
+
export {
|
|
68
|
+
b as autoCompleteAdapter
|
|
69
|
+
};
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
*-------------------------------------------------------------------------------------------
|
|
4
|
+
* Copyright © 2026 Progress Software Corporation. All rights reserved.
|
|
5
|
+
* Licensed under commercial license. See LICENSE.md in the package root for more information
|
|
6
|
+
*-------------------------------------------------------------------------------------------
|
|
7
|
+
*/
|
|
8
|
+
import { ToolAdapter } from '../types';
|
|
9
|
+
interface ButtonHandle {
|
|
10
|
+
element?: HTMLButtonElement | null;
|
|
11
|
+
}
|
|
12
|
+
interface ButtonAdapterProps {
|
|
13
|
+
disabled?: boolean;
|
|
14
|
+
webMcp?: unknown;
|
|
15
|
+
}
|
|
16
|
+
/** @hidden */
|
|
17
|
+
export declare const buttonAdapter: ToolAdapter<ButtonHandle, ButtonAdapterProps>;
|
|
18
|
+
export {};
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
*-------------------------------------------------------------------------------------------
|
|
4
|
+
* Copyright © 2026 Progress Software Corporation. All rights reserved.
|
|
5
|
+
* Licensed under commercial license. See LICENSE.md in the package root for more information
|
|
6
|
+
*-------------------------------------------------------------------------------------------
|
|
7
|
+
*/
|
|
8
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const r=require("../commands/button.js"),f={componentSuffix:"button",createTools(n,s,c,m){const i=[],d=t=>`${c.groupName}_${t}`,a=[{name:"click",description:`Click the ${c.dataName} button.`,commandType:r.ButtonCommands.Click,enabled:!0}],o=s.current.webMcp,u=typeof o=="object"&&o!==null&&typeof o.tools=="function"?o.tools:void 0,p=u?u(a):a,b=async(t,l)=>{if(t!==r.ButtonCommands.Click)return{content:[{type:"text",text:`Unknown command: ${t}`}],isError:!0};const e=n==null?void 0:n.element;return e?e.disabled||s.current.disabled?{content:[{type:"text",text:"Button is disabled."}],isError:!0}:(e.click(),{content:[{type:"text",text:`Clicked the ${c.dataName} button.`}]}):{content:[{type:"text",text:"Button ref not available."}],isError:!0}};for(const t of p){if(!t.enabled)continue;const l=r.getButtonToolSchema(t.commandType),e=t.commandType;try{i.push(m.registerTool({name:d(t.name),description:t.description,inputSchema:l,execute:async y=>b(e,y||{})}))}catch{}}return i}};exports.buttonAdapter=f;
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
*-------------------------------------------------------------------------------------------
|
|
4
|
+
* Copyright © 2026 Progress Software Corporation. All rights reserved.
|
|
5
|
+
* Licensed under commercial license. See LICENSE.md in the package root for more information
|
|
6
|
+
*-------------------------------------------------------------------------------------------
|
|
7
|
+
*/
|
|
8
|
+
import { ButtonCommands as l, getButtonToolSchema as x } from "../commands/button.mjs";
|
|
9
|
+
const k = {
|
|
10
|
+
componentSuffix: "button",
|
|
11
|
+
createTools(n, r, c, m) {
|
|
12
|
+
const s = [], p = (t) => `${c.groupName}_${t}`, i = [
|
|
13
|
+
{
|
|
14
|
+
name: "click",
|
|
15
|
+
description: `Click the ${c.dataName} button.`,
|
|
16
|
+
commandType: l.Click,
|
|
17
|
+
enabled: !0
|
|
18
|
+
}
|
|
19
|
+
], o = r.current.webMcp, a = typeof o == "object" && o !== null && typeof o.tools == "function" ? o.tools : void 0, d = a ? a(i) : i, b = async (t, u) => {
|
|
20
|
+
if (t !== l.Click)
|
|
21
|
+
return { content: [{ type: "text", text: `Unknown command: ${t}` }], isError: !0 };
|
|
22
|
+
const e = n == null ? void 0 : n.element;
|
|
23
|
+
return e ? e.disabled || r.current.disabled ? { content: [{ type: "text", text: "Button is disabled." }], isError: !0 } : (e.click(), { content: [{ type: "text", text: `Clicked the ${c.dataName} button.` }] }) : { content: [{ type: "text", text: "Button ref not available." }], isError: !0 };
|
|
24
|
+
};
|
|
25
|
+
for (const t of d) {
|
|
26
|
+
if (!t.enabled)
|
|
27
|
+
continue;
|
|
28
|
+
const u = x(t.commandType), e = t.commandType;
|
|
29
|
+
try {
|
|
30
|
+
s.push(
|
|
31
|
+
m.registerTool({
|
|
32
|
+
name: p(t.name),
|
|
33
|
+
description: t.description,
|
|
34
|
+
inputSchema: u,
|
|
35
|
+
execute: async (f) => b(e, f || {})
|
|
36
|
+
})
|
|
37
|
+
);
|
|
38
|
+
} catch {
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
return s;
|
|
42
|
+
}
|
|
43
|
+
};
|
|
44
|
+
export {
|
|
45
|
+
k as buttonAdapter
|
|
46
|
+
};
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
*-------------------------------------------------------------------------------------------
|
|
4
|
+
* Copyright © 2026 Progress Software Corporation. All rights reserved.
|
|
5
|
+
* Licensed under commercial license. See LICENSE.md in the package root for more information
|
|
6
|
+
*-------------------------------------------------------------------------------------------
|
|
7
|
+
*/
|
|
8
|
+
import { ToolAdapter } from '../types';
|
|
9
|
+
interface CalendarAdapterProps {
|
|
10
|
+
value?: Date | null;
|
|
11
|
+
onChange?: (event: Record<string, unknown>) => void;
|
|
12
|
+
webMcp?: unknown;
|
|
13
|
+
}
|
|
14
|
+
/** @hidden */
|
|
15
|
+
export declare const calendarAdapter: ToolAdapter<unknown, CalendarAdapterProps>;
|
|
16
|
+
export {};
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
*-------------------------------------------------------------------------------------------
|
|
4
|
+
* Copyright © 2026 Progress Software Corporation. All rights reserved.
|
|
5
|
+
* Licensed under commercial license. See LICENSE.md in the package root for more information
|
|
6
|
+
*-------------------------------------------------------------------------------------------
|
|
7
|
+
*/
|
|
8
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const a=require("../commands/calendar.js"),h={componentSuffix:"calendar",createTools(s,r,l,p){const d=[],g=e=>`${l.groupName}_${e}`,i=r.current,m=[{name:"navigate",description:`Navigate the ${l.dataName} calendar to a specific month/year`,commandType:a.CalendarCommands.Navigate,enabled:!!i.onChange},{name:"select_date",description:`Select a date on the ${l.dataName} calendar`,commandType:a.CalendarCommands.SelectDate,enabled:!!i.onChange}],o=r.current.webMcp,u=typeof o=="object"&&o!==null&&typeof o.tools=="function"?o.tools:void 0,C=u?u(m):m,y=async(e,c)=>{const n=r.current;switch(e){case a.CalendarCommands.Navigate:{const t=new Date(c.date);return n.onChange&&n.onChange({value:t,syntheticEvent:null,target:s}),{content:[{type:"text",text:`Navigated to ${t.toISOString().slice(0,10)}.`}]}}case a.CalendarCommands.SelectDate:{const t=new Date(c.date);return n.onChange&&n.onChange({value:t,syntheticEvent:null,target:s}),{content:[{type:"text",text:`Selected ${t.toISOString().slice(0,10)}.`}]}}default:return{content:[{type:"text",text:`Unknown command: ${e}`}],isError:!0}}};for(const e of C){if(!e.enabled)continue;const c=a.getCalendarToolSchema(e.commandType),n=e.commandType;try{d.push(p.registerTool({name:g(e.name),description:e.description,inputSchema:c,execute:async t=>y(n,t||{})}))}catch{}}return d}};exports.calendarAdapter=h;
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
*-------------------------------------------------------------------------------------------
|
|
4
|
+
* Copyright © 2026 Progress Software Corporation. All rights reserved.
|
|
5
|
+
* Licensed under commercial license. See LICENSE.md in the package root for more information
|
|
6
|
+
*-------------------------------------------------------------------------------------------
|
|
7
|
+
*/
|
|
8
|
+
import { CalendarCommands as c, getCalendarToolSchema as C } from "../commands/calendar.mjs";
|
|
9
|
+
const S = {
|
|
10
|
+
componentSuffix: "calendar",
|
|
11
|
+
createTools(l, r, s, u) {
|
|
12
|
+
const i = [], g = (e) => `${s.groupName}_${e}`, d = r.current, m = [
|
|
13
|
+
{
|
|
14
|
+
name: "navigate",
|
|
15
|
+
description: `Navigate the ${s.dataName} calendar to a specific month/year`,
|
|
16
|
+
commandType: c.Navigate,
|
|
17
|
+
enabled: !!d.onChange
|
|
18
|
+
},
|
|
19
|
+
{
|
|
20
|
+
name: "select_date",
|
|
21
|
+
description: `Select a date on the ${s.dataName} calendar`,
|
|
22
|
+
commandType: c.SelectDate,
|
|
23
|
+
enabled: !!d.onChange
|
|
24
|
+
}
|
|
25
|
+
], a = r.current.webMcp, p = typeof a == "object" && a !== null && typeof a.tools == "function" ? a.tools : void 0, h = p ? p(m) : m, y = async (e, o) => {
|
|
26
|
+
const n = r.current;
|
|
27
|
+
switch (e) {
|
|
28
|
+
case c.Navigate: {
|
|
29
|
+
const t = new Date(o.date);
|
|
30
|
+
return n.onChange && n.onChange({ value: t, syntheticEvent: null, target: l }), { content: [{ type: "text", text: `Navigated to ${t.toISOString().slice(0, 10)}.` }] };
|
|
31
|
+
}
|
|
32
|
+
case c.SelectDate: {
|
|
33
|
+
const t = new Date(o.date);
|
|
34
|
+
return n.onChange && n.onChange({ value: t, syntheticEvent: null, target: l }), { content: [{ type: "text", text: `Selected ${t.toISOString().slice(0, 10)}.` }] };
|
|
35
|
+
}
|
|
36
|
+
default:
|
|
37
|
+
return { content: [{ type: "text", text: `Unknown command: ${e}` }], isError: !0 };
|
|
38
|
+
}
|
|
39
|
+
};
|
|
40
|
+
for (const e of h) {
|
|
41
|
+
if (!e.enabled)
|
|
42
|
+
continue;
|
|
43
|
+
const o = C(e.commandType), n = e.commandType;
|
|
44
|
+
try {
|
|
45
|
+
i.push(
|
|
46
|
+
u.registerTool({
|
|
47
|
+
name: g(e.name),
|
|
48
|
+
description: e.description,
|
|
49
|
+
inputSchema: o,
|
|
50
|
+
execute: async (t) => y(n, t || {})
|
|
51
|
+
})
|
|
52
|
+
);
|
|
53
|
+
} catch {
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
return i;
|
|
57
|
+
}
|
|
58
|
+
};
|
|
59
|
+
export {
|
|
60
|
+
S as calendarAdapter
|
|
61
|
+
};
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
*-------------------------------------------------------------------------------------------
|
|
4
|
+
* Copyright © 2026 Progress Software Corporation. All rights reserved.
|
|
5
|
+
* Licensed under commercial license. See LICENSE.md in the package root for more information
|
|
6
|
+
*-------------------------------------------------------------------------------------------
|
|
7
|
+
*/
|
|
8
|
+
import { ToolAdapter } from '../types';
|
|
9
|
+
interface ChartDrilldownStep {
|
|
10
|
+
seriesName: string;
|
|
11
|
+
drilldownValue: any;
|
|
12
|
+
}
|
|
13
|
+
interface ChartDrilldownState {
|
|
14
|
+
steps: ChartDrilldownStep[];
|
|
15
|
+
}
|
|
16
|
+
interface ChartAdapterProps {
|
|
17
|
+
onSeriesClick?: (event: Record<string, unknown>) => void;
|
|
18
|
+
onDrilldown?: (event: Record<string, unknown>) => void;
|
|
19
|
+
drilldownState?: ChartDrilldownState;
|
|
20
|
+
webMcp?: unknown;
|
|
21
|
+
}
|
|
22
|
+
interface ChartAdapterHandle {
|
|
23
|
+
chartInstance?: {
|
|
24
|
+
exportVisual?: (options?: any) => any;
|
|
25
|
+
} | null;
|
|
26
|
+
}
|
|
27
|
+
/** @hidden */
|
|
28
|
+
export declare const chartAdapter: ToolAdapter<ChartAdapterHandle, ChartAdapterProps>;
|
|
29
|
+
export {};
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
*-------------------------------------------------------------------------------------------
|
|
4
|
+
* Copyright © 2026 Progress Software Corporation. All rights reserved.
|
|
5
|
+
* Licensed under commercial license. See LICENSE.md in the package root for more information
|
|
6
|
+
*-------------------------------------------------------------------------------------------
|
|
7
|
+
*/
|
|
8
|
+
"use strict";var S=Object.create;var y=Object.defineProperty;var b=Object.getOwnPropertyDescriptor;var v=Object.getOwnPropertyNames;var T=Object.getPrototypeOf,E=Object.prototype.hasOwnProperty;var D=(t,e,r,c)=>{if(e&&typeof e=="object"||typeof e=="function")for(let o of v(e))!E.call(t,o)&&o!==r&&y(t,o,{get:()=>e[o],enumerable:!(c=b(e,o))||c.enumerable});return t};var h=(t,e,r)=>(r=t!=null?S(T(t)):{},D(e||!t||!t.__esModule?y(r,"default",{value:t,enumerable:!0}):r,t));Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const u=require("../commands/chart.js");function N(t,e,r,c){var l,i,a,p,d;const s={steps:[...(i=(l=e.current.drilldownState)==null?void 0:l.steps)!=null?i:[],{seriesName:typeof t.seriesName=="string"?t.seriesName:"",drilldownValue:t.category}]};return(d=(p=e.current).onDrilldown)==null||d.call(p,{nextState:s,currentState:(a=e.current.drilldownState)!=null?a:{steps:[]},value:t.category,target:r}),{content:[{type:"text",text:`Drilled down into category "${String(t.category)}".`}]}}async function $(t,e,r){var o,s;const c=(s=(o=e==null?void 0:e.chartInstance)==null?void 0:o.exportVisual)==null?void 0:s.call(o,{});if(!c)return{content:[{type:"text",text:"Chart visual not available for export."}],isError:!0};try{const{exportImage:l}=await import("@progress/kendo-drawing"),{saveAs:i}=await import("@progress/kendo-file-saver"),a=await l(c);return i(a,"chart.png"),{content:[{type:"text",text:"Chart exported as chart.png."}]}}catch{return{content:[{type:"text",text:"Export failed — @progress/kendo-drawing or @progress/kendo-file-saver not available."}],isError:!0}}}const k={componentSuffix:"chart",createTools(t,e,r,c){var x;const o=[],s=n=>`${r.groupName}_${n}`,l=e.current,i=[{name:"drilldown",description:`Drill down into the selected chart series or category of the ${r.dataName} chart`,commandType:u.ChartCommands.Drilldown,enabled:!!l.onDrilldown},{name:"export",description:`Export the ${r.dataName} chart as an image`,commandType:u.ChartCommands.Export,enabled:!!((x=t==null?void 0:t.chartInstance)!=null&&x.exportVisual)}],a=e.current.webMcp,p=typeof a=="object"&&a!==null&&typeof a.tools=="function"?a.tools:void 0,w=p?p(i,{tname:s}):i,g=async(n,m)=>{switch(n){case u.ChartCommands.Drilldown:return N(m,e,t);case u.ChartCommands.Export:return $(m,t);default:return{content:[{type:"text",text:`Unknown command: ${n}`}],isError:!0}}};for(const n of w){if(!n.enabled)continue;const m=u.getChartToolSchema(n.commandType),f=n.commandType;try{o.push(c.registerTool({name:s(n.name),description:n.description,inputSchema:m,execute:async C=>g(f,C||{})}))}catch{}}return o}};exports.chartAdapter=k;
|
|
@@ -0,0 +1,95 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
*-------------------------------------------------------------------------------------------
|
|
4
|
+
* Copyright © 2026 Progress Software Corporation. All rights reserved.
|
|
5
|
+
* Licensed under commercial license. See LICENSE.md in the package root for more information
|
|
6
|
+
*-------------------------------------------------------------------------------------------
|
|
7
|
+
*/
|
|
8
|
+
import { ChartCommands as m, getChartToolSchema as h } from "../commands/chart.mjs";
|
|
9
|
+
function C(t, e, s, l) {
|
|
10
|
+
var i, a, r, p, d;
|
|
11
|
+
const c = {
|
|
12
|
+
steps: [
|
|
13
|
+
...(a = (i = e.current.drilldownState) == null ? void 0 : i.steps) != null ? a : [],
|
|
14
|
+
{
|
|
15
|
+
seriesName: typeof t.seriesName == "string" ? t.seriesName : "",
|
|
16
|
+
drilldownValue: t.category
|
|
17
|
+
}
|
|
18
|
+
]
|
|
19
|
+
};
|
|
20
|
+
return (d = (p = e.current).onDrilldown) == null || d.call(p, {
|
|
21
|
+
nextState: c,
|
|
22
|
+
currentState: (r = e.current.drilldownState) != null ? r : { steps: [] },
|
|
23
|
+
value: t.category,
|
|
24
|
+
target: s
|
|
25
|
+
}), { content: [{ type: "text", text: `Drilled down into category "${String(t.category)}".` }] };
|
|
26
|
+
}
|
|
27
|
+
async function S(t, e, s) {
|
|
28
|
+
var n, c;
|
|
29
|
+
const l = (c = (n = e == null ? void 0 : e.chartInstance) == null ? void 0 : n.exportVisual) == null ? void 0 : c.call(n, {});
|
|
30
|
+
if (!l)
|
|
31
|
+
return { content: [{ type: "text", text: "Chart visual not available for export." }], isError: !0 };
|
|
32
|
+
try {
|
|
33
|
+
const { exportImage: i } = await import("@progress/kendo-drawing"), { saveAs: a } = await import("@progress/kendo-file-saver"), r = await i(l);
|
|
34
|
+
return a(r, "chart.png"), { content: [{ type: "text", text: "Chart exported as chart.png." }] };
|
|
35
|
+
} catch {
|
|
36
|
+
return {
|
|
37
|
+
content: [
|
|
38
|
+
{
|
|
39
|
+
type: "text",
|
|
40
|
+
text: "Export failed — @progress/kendo-drawing or @progress/kendo-file-saver not available."
|
|
41
|
+
}
|
|
42
|
+
],
|
|
43
|
+
isError: !0
|
|
44
|
+
};
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
const v = {
|
|
48
|
+
componentSuffix: "chart",
|
|
49
|
+
createTools(t, e, s, l) {
|
|
50
|
+
var x;
|
|
51
|
+
const n = [], c = (o) => `${s.groupName}_${o}`, i = e.current, a = [
|
|
52
|
+
{
|
|
53
|
+
name: "drilldown",
|
|
54
|
+
description: `Drill down into the selected chart series or category of the ${s.dataName} chart`,
|
|
55
|
+
commandType: m.Drilldown,
|
|
56
|
+
enabled: !!i.onDrilldown
|
|
57
|
+
},
|
|
58
|
+
{
|
|
59
|
+
name: "export",
|
|
60
|
+
description: `Export the ${s.dataName} chart as an image`,
|
|
61
|
+
commandType: m.Export,
|
|
62
|
+
enabled: !!((x = t == null ? void 0 : t.chartInstance) != null && x.exportVisual)
|
|
63
|
+
}
|
|
64
|
+
], r = e.current.webMcp, p = typeof r == "object" && r !== null && typeof r.tools == "function" ? r.tools : void 0, y = p ? p(a, { tname: c }) : a, w = async (o, u) => {
|
|
65
|
+
switch (o) {
|
|
66
|
+
case m.Drilldown:
|
|
67
|
+
return C(u, e, t);
|
|
68
|
+
case m.Export:
|
|
69
|
+
return S(u, t);
|
|
70
|
+
default:
|
|
71
|
+
return { content: [{ type: "text", text: `Unknown command: ${o}` }], isError: !0 };
|
|
72
|
+
}
|
|
73
|
+
};
|
|
74
|
+
for (const o of y) {
|
|
75
|
+
if (!o.enabled)
|
|
76
|
+
continue;
|
|
77
|
+
const u = h(o.commandType), f = o.commandType;
|
|
78
|
+
try {
|
|
79
|
+
n.push(
|
|
80
|
+
l.registerTool({
|
|
81
|
+
name: c(o.name),
|
|
82
|
+
description: o.description,
|
|
83
|
+
inputSchema: u,
|
|
84
|
+
execute: async (g) => w(f, g || {})
|
|
85
|
+
})
|
|
86
|
+
);
|
|
87
|
+
} catch {
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
return n;
|
|
91
|
+
}
|
|
92
|
+
};
|
|
93
|
+
export {
|
|
94
|
+
v as chartAdapter
|
|
95
|
+
};
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
*-------------------------------------------------------------------------------------------
|
|
4
|
+
* Copyright © 2026 Progress Software Corporation. All rights reserved.
|
|
5
|
+
* Licensed under commercial license. See LICENSE.md in the package root for more information
|
|
6
|
+
*-------------------------------------------------------------------------------------------
|
|
7
|
+
*/
|
|
8
|
+
import { ToolAdapter } from '../types';
|
|
9
|
+
interface ChatAdapterProps {
|
|
10
|
+
onSendMessage?: (event: Record<string, unknown>) => void;
|
|
11
|
+
authorId?: string | number;
|
|
12
|
+
webMcp?: unknown;
|
|
13
|
+
}
|
|
14
|
+
/** @hidden */
|
|
15
|
+
export declare const chatAdapter: ToolAdapter<unknown, ChatAdapterProps>;
|
|
16
|
+
export {};
|