@mongodb-js/compass-components 1.10.0 → 1.12.0
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/lib/components/bson-value.d.ts +0 -22
- package/lib/components/bson-value.d.ts.map +1 -1
- package/lib/components/bson-value.js +33 -36
- package/lib/components/bson-value.js.map +1 -1
- package/lib/components/collapsible-field-set.js +1 -1
- package/lib/components/collapsible-field-set.js.map +1 -1
- package/lib/components/combobox/Chip.js +2 -4
- package/lib/components/combobox/Chip.js.map +1 -1
- package/lib/components/combobox/Combobox.d.ts +1 -1
- package/lib/components/combobox/Combobox.d.ts.map +1 -1
- package/lib/components/combobox/Combobox.js +42 -55
- package/lib/components/combobox/Combobox.js.map +1 -1
- package/lib/components/combobox/Combobox.styles.js +1 -2
- package/lib/components/combobox/Combobox.styles.js.map +1 -1
- package/lib/components/combobox/Combobox.types.d.ts +2 -2
- package/lib/components/combobox/Combobox.types.d.ts.map +1 -1
- package/lib/components/combobox/Combobox.types.js.map +1 -1
- package/lib/components/combobox/ComboboxOption.d.ts +1 -1
- package/lib/components/combobox/ComboboxOption.d.ts.map +1 -1
- package/lib/components/combobox/ComboboxOption.js.map +1 -1
- package/lib/components/combobox/utils/OptionObjectUtils.js +3 -4
- package/lib/components/combobox/utils/OptionObjectUtils.js.map +1 -1
- package/lib/components/combobox/utils/getNameAndValue.js +2 -3
- package/lib/components/combobox/utils/getNameAndValue.js.map +1 -1
- package/lib/components/combobox/utils/wrapJSX.js +1 -2
- package/lib/components/combobox/utils/wrapJSX.js.map +1 -1
- package/lib/components/combobox-with-custom-option.d.ts.map +1 -1
- package/lib/components/combobox-with-custom-option.js +23 -20
- package/lib/components/combobox-with-custom-option.js.map +1 -1
- package/lib/components/document-list/document-actions-group.d.ts +2 -0
- package/lib/components/document-list/document-actions-group.d.ts.map +1 -1
- package/lib/components/document-list/document-actions-group.js +32 -15
- package/lib/components/document-list/document-actions-group.js.map +1 -1
- package/lib/components/document-list/document-edit-actions-footer.js +2 -2
- package/lib/components/document-list/document-edit-actions-footer.js.map +1 -1
- package/lib/components/document-list/document.js +2 -3
- package/lib/components/document-list/document.js.map +1 -1
- package/lib/components/document-list/element-actions.js +1 -1
- package/lib/components/document-list/element-actions.js.map +1 -1
- package/lib/components/document-list/element.d.ts.map +1 -1
- package/lib/components/document-list/element.js +15 -14
- package/lib/components/document-list/element.js.map +1 -1
- package/lib/components/error-boundary.js +1 -2
- package/lib/components/error-boundary.js.map +1 -1
- package/lib/components/feedback-popover.d.ts +11 -0
- package/lib/components/feedback-popover.d.ts.map +1 -0
- package/lib/components/feedback-popover.js +73 -0
- package/lib/components/feedback-popover.js.map +1 -0
- package/lib/components/file-input.js +7 -10
- package/lib/components/file-input.js.map +1 -1
- package/lib/components/generative-ai/ai-experience-entry.d.ts +12 -0
- package/lib/components/generative-ai/ai-experience-entry.d.ts.map +1 -0
- package/lib/components/generative-ai/ai-experience-entry.js +84 -0
- package/lib/components/generative-ai/ai-experience-entry.js.map +1 -0
- package/lib/components/generative-ai/ai-feedback.d.ts +7 -0
- package/lib/components/generative-ai/ai-feedback.d.ts.map +1 -0
- package/lib/components/generative-ai/ai-feedback.js +124 -0
- package/lib/components/generative-ai/ai-feedback.js.map +1 -0
- package/lib/components/generative-ai/generative-ai-input.d.ts +17 -0
- package/lib/components/generative-ai/generative-ai-input.d.ts.map +1 -0
- package/lib/components/generative-ai/generative-ai-input.js +191 -0
- package/lib/components/generative-ai/generative-ai-input.js.map +1 -0
- package/lib/components/generative-ai/index.d.ts +3 -0
- package/lib/components/generative-ai/index.d.ts.map +1 -0
- package/lib/components/generative-ai/index.js +9 -0
- package/lib/components/generative-ai/index.js.map +1 -0
- package/lib/components/generative-ai/robot-svg.d.ts +12 -0
- package/lib/components/generative-ai/robot-svg.d.ts.map +1 -0
- package/lib/components/generative-ai/robot-svg.js +55 -0
- package/lib/components/generative-ai/robot-svg.js.map +1 -0
- package/lib/components/guide-cue/guide-cue-exceptions.d.ts +18 -0
- package/lib/components/guide-cue/guide-cue-exceptions.d.ts.map +1 -0
- package/lib/components/guide-cue/guide-cue-exceptions.js +32 -0
- package/lib/components/guide-cue/guide-cue-exceptions.js.map +1 -0
- package/lib/components/guide-cue/guide-cue-groups.d.ts +8 -0
- package/lib/components/guide-cue/guide-cue-groups.d.ts.map +1 -0
- package/lib/components/guide-cue/guide-cue-groups.js +6 -0
- package/lib/components/guide-cue/guide-cue-groups.js.map +1 -0
- package/lib/components/guide-cue/guide-cue-service.d.ts +46 -0
- package/lib/components/guide-cue/guide-cue-service.d.ts.map +1 -0
- package/lib/components/guide-cue/guide-cue-service.js +174 -0
- package/lib/components/guide-cue/guide-cue-service.js.map +1 -0
- package/lib/components/guide-cue/guide-cue-storage.d.ts +19 -0
- package/lib/components/guide-cue/guide-cue-storage.d.ts.map +1 -0
- package/lib/components/guide-cue/guide-cue-storage.js +33 -0
- package/lib/components/guide-cue/guide-cue-storage.js.map +1 -0
- package/lib/components/guide-cue/guide-cue.d.ts +36 -0
- package/lib/components/guide-cue/guide-cue.d.ts.map +1 -0
- package/lib/components/guide-cue/guide-cue.js +167 -0
- package/lib/components/guide-cue/guide-cue.js.map +1 -0
- package/lib/components/index-keys-badge.d.ts.map +1 -1
- package/lib/components/index-keys-badge.js +1 -0
- package/lib/components/index-keys-badge.js.map +1 -1
- package/lib/components/interactive-popover.d.ts +9 -6
- package/lib/components/interactive-popover.d.ts.map +1 -1
- package/lib/components/interactive-popover.js +19 -16
- package/lib/components/interactive-popover.js.map +1 -1
- package/lib/components/item-action-controls.d.ts +11 -6
- package/lib/components/item-action-controls.d.ts.map +1 -1
- package/lib/components/item-action-controls.js +24 -10
- package/lib/components/item-action-controls.js.map +1 -1
- package/lib/components/list-editor.js +7 -10
- package/lib/components/list-editor.js.map +1 -1
- package/lib/components/loader.js +1 -2
- package/lib/components/loader.js.map +1 -1
- package/lib/components/more-options-toggle.js +1 -2
- package/lib/components/more-options-toggle.js.map +1 -1
- package/lib/components/placeholder.js +1 -2
- package/lib/components/placeholder.js.map +1 -1
- package/lib/components/signal-popover.d.ts +30 -0
- package/lib/components/signal-popover.d.ts.map +1 -0
- package/lib/components/signal-popover.js +356 -0
- package/lib/components/signal-popover.js.map +1 -0
- package/lib/components/signals.d.ts +87 -0
- package/lib/components/signals.d.ts.map +1 -0
- package/lib/components/signals.js +117 -0
- package/lib/components/signals.js.map +1 -0
- package/lib/components/store-connector.js +1 -2
- package/lib/components/store-connector.js.map +1 -1
- package/lib/components/tab-nav-bar.d.ts +1 -2
- package/lib/components/tab-nav-bar.d.ts.map +1 -1
- package/lib/components/tab-nav-bar.js +2 -2
- package/lib/components/tab-nav-bar.js.map +1 -1
- package/lib/components/tooltip.d.ts +4 -3
- package/lib/components/tooltip.d.ts.map +1 -1
- package/lib/components/tooltip.js.map +1 -1
- package/lib/components/virtual-grid.js +10 -12
- package/lib/components/virtual-grid.js.map +1 -1
- package/lib/components/workspace-tabs/workspace-tabs.js +1 -2
- package/lib/components/workspace-tabs/workspace-tabs.js.map +1 -1
- package/lib/hooks/use-confirmation.d.ts +1 -1
- package/lib/hooks/use-confirmation.d.ts.map +1 -1
- package/lib/hooks/use-confirmation.js +3 -6
- package/lib/hooks/use-confirmation.js.map +1 -1
- package/lib/hooks/use-dom-rect.js +2 -4
- package/lib/hooks/use-dom-rect.js.map +1 -1
- package/lib/hooks/use-focus-hover.d.ts +5 -1
- package/lib/hooks/use-focus-hover.d.ts.map +1 -1
- package/lib/hooks/use-focus-hover.js +1 -1
- package/lib/hooks/use-focus-hover.js.map +1 -1
- package/lib/hooks/use-hotkeys.d.ts.map +1 -1
- package/lib/hooks/use-hotkeys.js +5 -2
- package/lib/hooks/use-hotkeys.js.map +1 -1
- package/lib/hooks/use-sort.js +6 -8
- package/lib/hooks/use-sort.js.map +1 -1
- package/lib/hooks/use-toast.d.ts.map +1 -1
- package/lib/hooks/use-toast.js +6 -5
- package/lib/hooks/use-toast.js.map +1 -1
- package/lib/hooks/use-virtual-grid.js +5 -6
- package/lib/hooks/use-virtual-grid.js.map +1 -1
- package/lib/index.d.ts +9 -3
- package/lib/index.d.ts.map +1 -1
- package/lib/index.js +17 -5
- package/lib/index.js.map +1 -1
- package/package.json +8 -8
|
@@ -0,0 +1,191 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
+
if (mod && mod.__esModule) return mod;
|
|
20
|
+
var result = {};
|
|
21
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
+
__setModuleDefault(result, mod);
|
|
23
|
+
return result;
|
|
24
|
+
};
|
|
25
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
26
|
+
exports.GenerativeAIInput = void 0;
|
|
27
|
+
const react_1 = __importStar(require("react"));
|
|
28
|
+
const emotion_1 = require("@leafygreen-ui/emotion");
|
|
29
|
+
const palette_1 = require("@leafygreen-ui/palette");
|
|
30
|
+
const tokens_1 = require("@leafygreen-ui/tokens");
|
|
31
|
+
const leafygreen_1 = require("../leafygreen");
|
|
32
|
+
const use_theme_1 = require("../../hooks/use-theme");
|
|
33
|
+
const error_warning_summary_1 = require("../error-warning-summary");
|
|
34
|
+
const loader_1 = require("../loader");
|
|
35
|
+
const robot_svg_1 = require("./robot-svg");
|
|
36
|
+
const ai_feedback_1 = require("./ai-feedback");
|
|
37
|
+
const use_focus_ring_1 = require("../../hooks/use-focus-ring");
|
|
38
|
+
const containerStyles = (0, emotion_1.css)({
|
|
39
|
+
display: 'flex',
|
|
40
|
+
flexDirection: 'column',
|
|
41
|
+
gap: tokens_1.spacing[1],
|
|
42
|
+
});
|
|
43
|
+
const inputBarContainerStyles = (0, emotion_1.css)({
|
|
44
|
+
paddingTop: tokens_1.spacing[2],
|
|
45
|
+
gap: tokens_1.spacing[2],
|
|
46
|
+
flexGrow: 1,
|
|
47
|
+
display: 'flex',
|
|
48
|
+
});
|
|
49
|
+
const inputContainerStyles = (0, emotion_1.css)({
|
|
50
|
+
display: 'flex',
|
|
51
|
+
flexGrow: 1,
|
|
52
|
+
position: 'relative',
|
|
53
|
+
});
|
|
54
|
+
const textInputStyles = (0, emotion_1.css)({
|
|
55
|
+
flexGrow: 1,
|
|
56
|
+
input: {
|
|
57
|
+
paddingLeft: tokens_1.spacing[5],
|
|
58
|
+
paddingRight: tokens_1.spacing[6] * 2 + tokens_1.spacing[2],
|
|
59
|
+
},
|
|
60
|
+
});
|
|
61
|
+
const errorSummaryContainer = (0, emotion_1.css)({
|
|
62
|
+
marginTop: tokens_1.spacing[1],
|
|
63
|
+
});
|
|
64
|
+
const floatingButtonsContainerStyles = (0, emotion_1.css)({
|
|
65
|
+
position: 'absolute',
|
|
66
|
+
right: tokens_1.spacing[1],
|
|
67
|
+
display: 'flex',
|
|
68
|
+
gap: tokens_1.spacing[2],
|
|
69
|
+
alignItems: 'center',
|
|
70
|
+
height: tokens_1.spacing[4] + tokens_1.spacing[1],
|
|
71
|
+
});
|
|
72
|
+
const successIndicatorDarkModeStyles = (0, emotion_1.css)({
|
|
73
|
+
color: palette_1.palette.gray.dark3,
|
|
74
|
+
backgroundColor: palette_1.palette.green.base,
|
|
75
|
+
borderRadius: '50%',
|
|
76
|
+
});
|
|
77
|
+
const successIndicatorLightModeStyles = (0, emotion_1.css)({
|
|
78
|
+
color: palette_1.palette.white,
|
|
79
|
+
backgroundColor: palette_1.palette.green.dark1,
|
|
80
|
+
borderRadius: '50%',
|
|
81
|
+
});
|
|
82
|
+
const generateButtonStyles = (0, emotion_1.css)({
|
|
83
|
+
border: 'none',
|
|
84
|
+
height: tokens_1.spacing[4] - tokens_1.spacing[1],
|
|
85
|
+
display: 'flex',
|
|
86
|
+
fontSize: '12px',
|
|
87
|
+
borderRadius: tokens_1.spacing[1],
|
|
88
|
+
});
|
|
89
|
+
const generateButtonLightModeStyles = (0, emotion_1.css)({
|
|
90
|
+
backgroundColor: palette_1.palette.gray.light2,
|
|
91
|
+
});
|
|
92
|
+
const highlightSize = 14;
|
|
93
|
+
const buttonHighlightStyles = (0, emotion_1.css)({
|
|
94
|
+
height: `${highlightSize}px`,
|
|
95
|
+
lineHeight: `${highlightSize}px`,
|
|
96
|
+
padding: `0px ${tokens_1.spacing[1]}px`,
|
|
97
|
+
borderRadius: '2px',
|
|
98
|
+
});
|
|
99
|
+
const buttonHighlightDarkModeStyles = (0, emotion_1.css)({
|
|
100
|
+
backgroundColor: palette_1.palette.gray.dark1,
|
|
101
|
+
color: palette_1.palette.gray.light1,
|
|
102
|
+
});
|
|
103
|
+
const buttonHighlightLightModeStyles = (0, emotion_1.css)({
|
|
104
|
+
backgroundColor: palette_1.palette.gray.light1,
|
|
105
|
+
color: palette_1.palette.gray.dark1,
|
|
106
|
+
});
|
|
107
|
+
const loaderContainerStyles = (0, emotion_1.css)({
|
|
108
|
+
padding: tokens_1.spacing[1],
|
|
109
|
+
display: 'inline-flex',
|
|
110
|
+
width: robot_svg_1.DEFAULT_ROBOT_SIZE + tokens_1.spacing[2],
|
|
111
|
+
justifyContent: 'space-around',
|
|
112
|
+
});
|
|
113
|
+
const buttonResetStyles = (0, emotion_1.css)({
|
|
114
|
+
margin: 0,
|
|
115
|
+
padding: 0,
|
|
116
|
+
border: 'none',
|
|
117
|
+
background: 'none',
|
|
118
|
+
cursor: 'pointer',
|
|
119
|
+
});
|
|
120
|
+
const closeAIButtonStyles = (0, emotion_1.css)(buttonResetStyles, use_focus_ring_1.focusRing, {
|
|
121
|
+
padding: tokens_1.spacing[1],
|
|
122
|
+
position: 'absolute',
|
|
123
|
+
});
|
|
124
|
+
const closeText = 'Close AI Helper';
|
|
125
|
+
const SubmitArrowSVG = ({ darkMode }) => (react_1.default.createElement("svg", { width: highlightSize, height: highlightSize, viewBox: "0 0 14 14", fill: "none", xmlns: "http://www.w3.org/2000/svg" },
|
|
126
|
+
react_1.default.createElement("rect", { width: "14", height: "14", rx: "2", fill: darkMode ? palette_1.palette.gray.dark1 : palette_1.palette.gray.light1 }),
|
|
127
|
+
react_1.default.createElement("path", { d: "M5.24984 6.41668L2.9165 8.75001M2.9165 8.75001L5.24984 11.0833M2.9165 8.75001H9.33317C9.95201 8.75001 10.5455 8.50418 10.9831 8.06659C11.4207 7.62901 11.6665 7.03552 11.6665 6.41668C11.6665 5.79784 11.4207 5.20435 10.9831 4.76676C10.5455 4.32918 9.95201 4.08334 9.33317 4.08334H8.74984", stroke: darkMode ? palette_1.palette.gray.light1 : palette_1.palette.gray.dark1, strokeWidth: "1.5", strokeLinecap: "round", strokeLinejoin: "round" })));
|
|
128
|
+
function GenerativeAIInput({ aiPromptText, didSucceed, errorMessage, isFetching, placeholder = 'Tell Compass what documents to find (e.g. which movies were released in 2000)', show, onCancelRequest, onClose, onChangeAIPromptText, onSubmitFeedback, onSubmitText, }) {
|
|
129
|
+
const promptTextInputRef = (0, react_1.useRef)(null);
|
|
130
|
+
const [showSuccess, setShowSuccess] = (0, react_1.useState)(false);
|
|
131
|
+
const darkMode = (0, use_theme_1.useDarkMode)();
|
|
132
|
+
const onTextInputKeyDown = (0, react_1.useCallback)((evt) => {
|
|
133
|
+
if (evt.key === 'Enter') {
|
|
134
|
+
evt.preventDefault();
|
|
135
|
+
if (!aiPromptText) {
|
|
136
|
+
return;
|
|
137
|
+
}
|
|
138
|
+
onSubmitText(aiPromptText);
|
|
139
|
+
}
|
|
140
|
+
else if (evt.key === 'Escape') {
|
|
141
|
+
isFetching ? onCancelRequest() : onClose();
|
|
142
|
+
}
|
|
143
|
+
}, [aiPromptText, onClose, onSubmitText, isFetching, onCancelRequest]);
|
|
144
|
+
(0, react_1.useEffect)(() => {
|
|
145
|
+
if (didSucceed) {
|
|
146
|
+
setShowSuccess(true);
|
|
147
|
+
const timeoutId = setTimeout(() => {
|
|
148
|
+
setShowSuccess(false);
|
|
149
|
+
}, 1500);
|
|
150
|
+
return () => clearTimeout(timeoutId);
|
|
151
|
+
}
|
|
152
|
+
}, [didSucceed]);
|
|
153
|
+
(0, react_1.useEffect)(() => {
|
|
154
|
+
if (show) {
|
|
155
|
+
promptTextInputRef.current?.focus();
|
|
156
|
+
}
|
|
157
|
+
}, [show]);
|
|
158
|
+
const onCancelRequestRef = (0, react_1.useRef)(onCancelRequest);
|
|
159
|
+
onCancelRequestRef.current = onCancelRequest;
|
|
160
|
+
(0, react_1.useEffect)(() => {
|
|
161
|
+
return () => onCancelRequestRef.current?.();
|
|
162
|
+
}, []);
|
|
163
|
+
if (!show) {
|
|
164
|
+
return null;
|
|
165
|
+
}
|
|
166
|
+
return (react_1.default.createElement("div", { className: containerStyles },
|
|
167
|
+
react_1.default.createElement("div", { className: inputBarContainerStyles },
|
|
168
|
+
react_1.default.createElement("div", { className: inputContainerStyles },
|
|
169
|
+
react_1.default.createElement(leafygreen_1.TextInput, { className: textInputStyles, ref: promptTextInputRef, sizeVariant: "small", "data-testid": "ai-user-text-input", "aria-label": "Enter a plain text query that the AI will translate into MongoDB query language.", placeholder: placeholder, value: aiPromptText, onChange: (evt) => onChangeAIPromptText(evt.currentTarget.value), onKeyDown: onTextInputKeyDown }),
|
|
170
|
+
react_1.default.createElement("button", { className: closeAIButtonStyles, "data-testid": "close-ai-button", "aria-label": closeText, title: closeText, onClick: () => onClose() },
|
|
171
|
+
react_1.default.createElement(robot_svg_1.RobotSVG, null)),
|
|
172
|
+
react_1.default.createElement("div", { className: floatingButtonsContainerStyles },
|
|
173
|
+
isFetching ? (react_1.default.createElement("div", { className: loaderContainerStyles },
|
|
174
|
+
react_1.default.createElement(loader_1.SpinLoader, null))) : showSuccess ? (react_1.default.createElement("div", { className: loaderContainerStyles },
|
|
175
|
+
react_1.default.createElement(leafygreen_1.Icon, { className: darkMode
|
|
176
|
+
? successIndicatorDarkModeStyles
|
|
177
|
+
: successIndicatorLightModeStyles, glyph: "CheckmarkWithCircle" }))) : (react_1.default.createElement(react_1.default.Fragment, null, aiPromptText && (react_1.default.createElement(leafygreen_1.IconButton, { "aria-label": "Clear prompt", onClick: () => onChangeAIPromptText(''), "data-testid": "ai-text-clear-prompt" },
|
|
178
|
+
react_1.default.createElement(leafygreen_1.Icon, { glyph: "X" }))))),
|
|
179
|
+
react_1.default.createElement(leafygreen_1.Button, { size: "small", className: (0, emotion_1.cx)(generateButtonStyles, !darkMode && generateButtonLightModeStyles), disabled: !aiPromptText, "data-testid": "ai-generate-button", onClick: () => isFetching ? onCancelRequest() : onSubmitText(aiPromptText) }, isFetching ? (react_1.default.createElement(react_1.default.Fragment, null,
|
|
180
|
+
react_1.default.createElement("div", null, "Cancel"),
|
|
181
|
+
react_1.default.createElement("span", { className: (0, emotion_1.cx)(buttonHighlightStyles, darkMode
|
|
182
|
+
? buttonHighlightDarkModeStyles
|
|
183
|
+
: buttonHighlightLightModeStyles) }, "esc"))) : (react_1.default.createElement(react_1.default.Fragment, null,
|
|
184
|
+
react_1.default.createElement("div", null, "Generate"),
|
|
185
|
+
react_1.default.createElement(SubmitArrowSVG, { darkMode: darkMode })))))),
|
|
186
|
+
didSucceed && onSubmitFeedback && (react_1.default.createElement(ai_feedback_1.AIFeedback, { onSubmitFeedback: onSubmitFeedback }))),
|
|
187
|
+
errorMessage && (react_1.default.createElement("div", { className: errorSummaryContainer },
|
|
188
|
+
react_1.default.createElement(error_warning_summary_1.ErrorSummary, { "data-testid": "ai-error-msg", errors: errorMessage }, errorMessage)))));
|
|
189
|
+
}
|
|
190
|
+
exports.GenerativeAIInput = GenerativeAIInput;
|
|
191
|
+
//# sourceMappingURL=generative-ai-input.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"generative-ai-input.js","sourceRoot":"","sources":["../../../src/components/generative-ai/generative-ai-input.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/generative-ai/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAC1D,OAAO,EACL,iBAAiB,EACjB,kCAAkC,GACnC,MAAM,uBAAuB,CAAC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.createAIPlaceholderHTMLPlaceholder = exports.AIExperienceEntry = exports.GenerativeAIInput = void 0;
|
|
4
|
+
var generative_ai_input_1 = require("./generative-ai-input");
|
|
5
|
+
Object.defineProperty(exports, "GenerativeAIInput", { enumerable: true, get: function () { return generative_ai_input_1.GenerativeAIInput; } });
|
|
6
|
+
var ai_experience_entry_1 = require("./ai-experience-entry");
|
|
7
|
+
Object.defineProperty(exports, "AIExperienceEntry", { enumerable: true, get: function () { return ai_experience_entry_1.AIExperienceEntry; } });
|
|
8
|
+
Object.defineProperty(exports, "createAIPlaceholderHTMLPlaceholder", { enumerable: true, get: function () { return ai_experience_entry_1.createAIPlaceholderHTMLPlaceholder; } });
|
|
9
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/generative-ai/index.ts"],"names":[],"mappings":";;;AAAA,6DAA0D;AAAjD,wHAAA,iBAAiB,OAAA;AAC1B,6DAG+B;AAF7B,wHAAA,iBAAiB,OAAA;AACjB,yIAAA,kCAAkC,OAAA"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/// <reference types="react" />
|
|
2
|
+
export declare const robotSVGStyles: string;
|
|
3
|
+
export declare const robotSVGDarkModeStyles: string;
|
|
4
|
+
export declare const robotSVGLightModeStyles: string;
|
|
5
|
+
export declare const DEFAULT_ROBOT_SIZE = 20;
|
|
6
|
+
declare const RobotSVG: ({ darkMode, size, }: {
|
|
7
|
+
darkMode?: boolean | undefined;
|
|
8
|
+
size?: number | undefined;
|
|
9
|
+
}) => JSX.Element;
|
|
10
|
+
declare const getRobotSVGString: () => string;
|
|
11
|
+
export { getRobotSVGString, RobotSVG };
|
|
12
|
+
//# sourceMappingURL=robot-svg.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"robot-svg.d.ts","sourceRoot":"","sources":["../../../src/components/generative-ai/robot-svg.tsx"],"names":[],"mappings":";AAIA,eAAO,MAAM,cAAc,QAIzB,CAAC;AAEH,eAAO,MAAM,sBAAsB,QAUjC,CAAC;AAEH,eAAO,MAAM,uBAAuB,QASlC,CAAC;AAEH,eAAO,MAAM,kBAAkB,KAAK,CAAC;AAGrC,QAAA,MAAM,QAAQ;;;iBAkDb,CAAC;AAGF,QAAA,MAAM,iBAAiB,cAShB,CAAC;AAER,OAAO,EAAE,iBAAiB,EAAE,QAAQ,EAAE,CAAC"}
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.RobotSVG = exports.getRobotSVGString = exports.DEFAULT_ROBOT_SIZE = exports.robotSVGLightModeStyles = exports.robotSVGDarkModeStyles = exports.robotSVGStyles = void 0;
|
|
7
|
+
const react_1 = __importDefault(require("react"));
|
|
8
|
+
const emotion_1 = require("@leafygreen-ui/emotion");
|
|
9
|
+
const palette_1 = require("@leafygreen-ui/palette");
|
|
10
|
+
exports.robotSVGStyles = (0, emotion_1.css)({
|
|
11
|
+
rect: {
|
|
12
|
+
transition: 'fill 0.16s ease-in',
|
|
13
|
+
},
|
|
14
|
+
});
|
|
15
|
+
exports.robotSVGDarkModeStyles = (0, emotion_1.css)({
|
|
16
|
+
rect: {
|
|
17
|
+
fill: palette_1.palette.green.dark1,
|
|
18
|
+
},
|
|
19
|
+
'&:hover': {
|
|
20
|
+
rect: {
|
|
21
|
+
fill: palette_1.palette.green.base,
|
|
22
|
+
},
|
|
23
|
+
},
|
|
24
|
+
});
|
|
25
|
+
exports.robotSVGLightModeStyles = (0, emotion_1.css)({
|
|
26
|
+
rect: {
|
|
27
|
+
fill: palette_1.palette.green.dark2,
|
|
28
|
+
},
|
|
29
|
+
'&:hover': {
|
|
30
|
+
rect: {
|
|
31
|
+
fill: palette_1.palette.green.dark1,
|
|
32
|
+
},
|
|
33
|
+
},
|
|
34
|
+
});
|
|
35
|
+
exports.DEFAULT_ROBOT_SIZE = 20;
|
|
36
|
+
const RobotSVG = ({ darkMode, size = exports.DEFAULT_ROBOT_SIZE, }) => (react_1.default.createElement("svg", { width: size, height: size, viewBox: "0 0 20 20", className: (0, emotion_1.cx)(exports.robotSVGStyles, darkMode ? exports.robotSVGDarkModeStyles : exports.robotSVGLightModeStyles), fill: "none", xmlns: "http://www.w3.org/2000/svg" },
|
|
37
|
+
react_1.default.createElement("rect", { width: "20", height: "20", rx: "4" }),
|
|
38
|
+
react_1.default.createElement("path", { d: "M6.66675 6.66669H13.3334C13.687 6.66669 14.0262 6.80716 14.2762 7.05721C14.5263 7.30726 14.6667 7.6464 14.6667 8.00002V8.66669L15.3334 9.33335V11.3334L14.6667 12V14C14.6667 14.3536 14.5263 14.6928 14.2762 14.9428C14.0262 15.1929 13.687 15.3334 13.3334 15.3334H6.66675C6.31313 15.3334 5.97399 15.1929 5.72394 14.9428C5.47389 14.6928 5.33341 14.3536 5.33341 14V12L4.66675 11.3334V9.33335L5.33341 8.66669V8.00002C5.33341 7.6464 5.47389 7.30726 5.72394 7.05721C5.97399 6.80716 6.31313 6.66669 6.66675 6.66669Z", stroke: "white", strokeWidth: "1.5", strokeLinecap: "round", strokeLinejoin: "round" }),
|
|
39
|
+
react_1.default.createElement("path", { d: "M8.66675 12.6667H11.3334", stroke: "white", strokeWidth: "1.5", strokeLinecap: "round", strokeLinejoin: "round" }),
|
|
40
|
+
react_1.default.createElement("path", { d: "M7.99992 6.66667L7.33325 4", stroke: "white", strokeWidth: "1.5", strokeLinecap: "round", strokeLinejoin: "round" }),
|
|
41
|
+
react_1.default.createElement("path", { d: "M12 6.66667L12.6667 4", stroke: "white", strokeWidth: "1.5", strokeLinecap: "round", strokeLinejoin: "round" }),
|
|
42
|
+
react_1.default.createElement("circle", { cx: "7.75", cy: "9.75", r: "0.75", fill: "white" }),
|
|
43
|
+
react_1.default.createElement("circle", { cx: "12.25", cy: "9.75", r: "0.75", fill: "white" })));
|
|
44
|
+
exports.RobotSVG = RobotSVG;
|
|
45
|
+
const getRobotSVGString = () => `<svg width="20" height="20" viewBox="0 0 20 20" fill="none" style="display: inline-block; margin-top: -2px; margin-bottom: -10px" xmlns="http://www.w3.org/2000/svg">
|
|
46
|
+
<rect width="20" height="20" rx="4" />
|
|
47
|
+
<path d="M6.66675 6.66669H13.3334C13.687 6.66669 14.0262 6.80716 14.2762 7.05721C14.5263 7.30726 14.6667 7.6464 14.6667 8.00002V8.66669L15.3334 9.33335V11.3334L14.6667 12V14C14.6667 14.3536 14.5263 14.6928 14.2762 14.9428C14.0262 15.1929 13.687 15.3334 13.3334 15.3334H6.66675C6.31313 15.3334 5.97399 15.1929 5.72394 14.9428C5.47389 14.6928 5.33341 14.3536 5.33341 14V12L4.66675 11.3334V9.33335L5.33341 8.66669V8.00002C5.33341 7.6464 5.47389 7.30726 5.72394 7.05721C5.97399 6.80716 6.31313 6.66669 6.66675 6.66669Z" stroke="white" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
|
|
48
|
+
<path d="M8.66675 12.6667H11.3334" stroke="white" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
|
|
49
|
+
<path d="M7.99992 6.66667L7.33325 4" stroke="white" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
|
|
50
|
+
<path d="M12 6.66667L12.6667 4" stroke="white" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
|
|
51
|
+
<circle cx="7.75" cy="9.75" r="0.75" fill="white"/>
|
|
52
|
+
<circle cx="12.25" cy="9.75" r="0.75" fill="white"/>
|
|
53
|
+
</svg>`;
|
|
54
|
+
exports.getRobotSVGString = getRobotSVGString;
|
|
55
|
+
//# sourceMappingURL=robot-svg.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"robot-svg.js","sourceRoot":"","sources":["../../../src/components/generative-ai/robot-svg.tsx"],"names":[],"mappings":";;;;;;AAAA,kDAA0B;AAC1B,oDAAiD;AACjD,oDAAiD;AAEpC,QAAA,cAAc,GAAG,IAAA,aAAG,EAAC;IAChC,IAAI,EAAE;QACJ,UAAU,EAAE,oBAAoB;KACjC;CACF,CAAC,CAAC;AAEU,QAAA,sBAAsB,GAAG,IAAA,aAAG,EAAC;IACxC,IAAI,EAAE;QACJ,IAAI,EAAE,iBAAO,CAAC,KAAK,CAAC,KAAK;KAC1B;IAED,SAAS,EAAE;QACT,IAAI,EAAE;YACJ,IAAI,EAAE,iBAAO,CAAC,KAAK,CAAC,IAAI;SACzB;KACF;CACF,CAAC,CAAC;AAEU,QAAA,uBAAuB,GAAG,IAAA,aAAG,EAAC;IACzC,IAAI,EAAE;QACJ,IAAI,EAAE,iBAAO,CAAC,KAAK,CAAC,KAAK;KAC1B;IACD,SAAS,EAAE;QACT,IAAI,EAAE;YACJ,IAAI,EAAE,iBAAO,CAAC,KAAK,CAAC,KAAK;SAC1B;KACF;CACF,CAAC,CAAC;AAEU,QAAA,kBAAkB,GAAG,EAAE,CAAC;AAGrC,MAAM,QAAQ,GAAG,CAAC,EAChB,QAAQ,EACR,IAAI,GAAG,0BAAkB,GAI1B,EAAE,EAAE,CAAC,CACJ,uCACE,KAAK,EAAE,IAAI,EACX,MAAM,EAAE,IAAI,EACZ,OAAO,EAAC,WAAW,EACnB,SAAS,EAAE,IAAA,YAAE,EACX,sBAAc,EACd,QAAQ,CAAC,CAAC,CAAC,8BAAsB,CAAC,CAAC,CAAC,+BAAuB,CAC5D,EACD,IAAI,EAAC,MAAM,EACX,KAAK,EAAC,4BAA4B;IAElC,wCAAM,KAAK,EAAC,IAAI,EAAC,MAAM,EAAC,IAAI,EAAC,EAAE,EAAC,GAAG,GAAG;IACtC,wCACE,CAAC,EAAC,2fAA2f,EAC7f,MAAM,EAAC,OAAO,EACd,WAAW,EAAC,KAAK,EACjB,aAAa,EAAC,OAAO,EACrB,cAAc,EAAC,OAAO,GACtB;IACF,wCACE,CAAC,EAAC,0BAA0B,EAC5B,MAAM,EAAC,OAAO,EACd,WAAW,EAAC,KAAK,EACjB,aAAa,EAAC,OAAO,EACrB,cAAc,EAAC,OAAO,GACtB;IACF,wCACE,CAAC,EAAC,4BAA4B,EAC9B,MAAM,EAAC,OAAO,EACd,WAAW,EAAC,KAAK,EACjB,aAAa,EAAC,OAAO,EACrB,cAAc,EAAC,OAAO,GACtB;IACF,wCACE,CAAC,EAAC,uBAAuB,EACzB,MAAM,EAAC,OAAO,EACd,WAAW,EAAC,KAAK,EACjB,aAAa,EAAC,OAAO,EACrB,cAAc,EAAC,OAAO,GACtB;IACF,0CAAQ,EAAE,EAAC,MAAM,EAAC,EAAE,EAAC,MAAM,EAAC,CAAC,EAAC,MAAM,EAAC,IAAI,EAAC,OAAO,GAAG;IACpD,0CAAQ,EAAE,EAAC,OAAO,EAAC,EAAE,EAAC,MAAM,EAAC,CAAC,EAAC,MAAM,EAAC,IAAI,EAAC,OAAO,GAAG,CACjD,CACP,CAAC;AAc0B,4BAAQ;AAXpC,MAAM,iBAAiB,GACrB,GAAG,EAAE,CAAC;;;;;;;;OAQD,CAAC;AAEC,8CAAiB"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { type GroupName } from './guide-cue-groups';
|
|
2
|
+
export declare class UnregisteredGroupError extends Error {
|
|
3
|
+
name: string;
|
|
4
|
+
constructor(groupId: GroupName);
|
|
5
|
+
}
|
|
6
|
+
export declare class GroupStepsCompleteError extends Error {
|
|
7
|
+
name: string;
|
|
8
|
+
constructor(groupId: GroupName, steps: number);
|
|
9
|
+
}
|
|
10
|
+
export declare class InvalidCueStepError extends Error {
|
|
11
|
+
name: string;
|
|
12
|
+
constructor(groupId: GroupName, steps: number, step: number);
|
|
13
|
+
}
|
|
14
|
+
export declare class DuplicateCueStepError extends Error {
|
|
15
|
+
name: string;
|
|
16
|
+
constructor(groupId: GroupName, step: number);
|
|
17
|
+
}
|
|
18
|
+
//# sourceMappingURL=guide-cue-exceptions.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"guide-cue-exceptions.d.ts","sourceRoot":"","sources":["../../../src/components/guide-cue/guide-cue-exceptions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAEpD,qBAAa,sBAAuB,SAAQ,KAAK;IAC/C,IAAI,SAAuB;gBACf,OAAO,EAAE,SAAS;CAG/B;AAED,qBAAa,uBAAwB,SAAQ,KAAK;IAChD,IAAI,SAAwB;gBAChB,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM;CAK9C;AAED,qBAAa,mBAAoB,SAAQ,KAAK;IAC5C,IAAI,SAAoB;gBACZ,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM;CAK5D;AAED,qBAAa,qBAAsB,SAAQ,KAAK;IAC9C,IAAI,SAAsB;gBACd,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM;CAG7C"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.DuplicateCueStepError = exports.InvalidCueStepError = exports.GroupStepsCompleteError = exports.UnregisteredGroupError = void 0;
|
|
4
|
+
class UnregisteredGroupError extends Error {
|
|
5
|
+
constructor(groupId) {
|
|
6
|
+
super(`Group ${groupId} not registered.`);
|
|
7
|
+
this.name = 'UnregisteredGroup';
|
|
8
|
+
}
|
|
9
|
+
}
|
|
10
|
+
exports.UnregisteredGroupError = UnregisteredGroupError;
|
|
11
|
+
class GroupStepsCompleteError extends Error {
|
|
12
|
+
constructor(groupId, steps) {
|
|
13
|
+
super(`Group ${groupId} has already ${steps} step(s). Can not add another one.`);
|
|
14
|
+
this.name = 'GroupStepsComplete';
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
exports.GroupStepsCompleteError = GroupStepsCompleteError;
|
|
18
|
+
class InvalidCueStepError extends Error {
|
|
19
|
+
constructor(groupId, steps, step) {
|
|
20
|
+
super(`Group ${groupId} has only ${steps} steps. Can not add another with step:${step}.`);
|
|
21
|
+
this.name = 'InvalidCueStep';
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
exports.InvalidCueStepError = InvalidCueStepError;
|
|
25
|
+
class DuplicateCueStepError extends Error {
|
|
26
|
+
constructor(groupId, step) {
|
|
27
|
+
super(`Group ${groupId} already has Cue with step ${step} registered.`);
|
|
28
|
+
this.name = 'DuplicateCueStep';
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
exports.DuplicateCueStepError = DuplicateCueStepError;
|
|
32
|
+
//# sourceMappingURL=guide-cue-exceptions.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"guide-cue-exceptions.js","sourceRoot":"","sources":["../../../src/components/guide-cue/guide-cue-exceptions.ts"],"names":[],"mappings":";;;AAEA,MAAa,sBAAuB,SAAQ,KAAK;IAE/C,YAAY,OAAkB;QAC5B,KAAK,CAAC,SAAS,OAAO,kBAAkB,CAAC,CAAC;QAF5C,SAAI,GAAG,mBAAmB,CAAC;IAG3B,CAAC;CACF;AALD,wDAKC;AAED,MAAa,uBAAwB,SAAQ,KAAK;IAEhD,YAAY,OAAkB,EAAE,KAAa;QAC3C,KAAK,CACH,SAAS,OAAO,gBAAgB,KAAK,oCAAoC,CAC1E,CAAC;QAJJ,SAAI,GAAG,oBAAoB,CAAC;IAK5B,CAAC;CACF;AAPD,0DAOC;AAED,MAAa,mBAAoB,SAAQ,KAAK;IAE5C,YAAY,OAAkB,EAAE,KAAa,EAAE,IAAY;QACzD,KAAK,CACH,SAAS,OAAO,aAAa,KAAK,yCAAyC,IAAI,GAAG,CACnF,CAAC;QAJJ,SAAI,GAAG,gBAAgB,CAAC;IAKxB,CAAC;CACF;AAPD,kDAOC;AAED,MAAa,qBAAsB,SAAQ,KAAK;IAE9C,YAAY,OAAkB,EAAE,IAAY;QAC1C,KAAK,CAAC,SAAS,OAAO,8BAA8B,IAAI,cAAc,CAAC,CAAC;QAF1E,SAAI,GAAG,kBAAkB,CAAC;IAG1B,CAAC;CACF;AALD,sDAKC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"guide-cue-groups.d.ts","sourceRoot":"","sources":["../../../src/components/guide-cue/guide-cue-groups.ts"],"names":[],"mappings":"AAGA,QAAA,MAAM,MAAM,EAAE,KAAK,CAAC;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAAM,CAAC;AAExD,eAAO,MAAM,eAAe,qBAE3B,CAAC;AAEF,MAAM,MAAM,SAAS,GAAG,OAAO,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"guide-cue-groups.js","sourceRoot":"","sources":["../../../src/components/guide-cue/guide-cue-groups.ts"],"names":[],"mappings":";;;AAGA,MAAM,MAAM,GAAyC,EAAE,CAAC;AAE3C,QAAA,eAAe,GAAG,IAAI,GAAG,CACpC,MAAM,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC,CAC3C,CAAC"}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import { type GroupName } from './guide-cue-groups';
|
|
2
|
+
import { type GuideCueStorage } from './guide-cue-storage';
|
|
3
|
+
export type ShowCueEventDetail = CustomEvent<{
|
|
4
|
+
cueId: string;
|
|
5
|
+
groupId?: GroupName;
|
|
6
|
+
}>;
|
|
7
|
+
interface GuideCueEventMap {
|
|
8
|
+
'show-cue': ShowCueEventDetail;
|
|
9
|
+
}
|
|
10
|
+
export interface GuideCueService extends EventTarget {
|
|
11
|
+
addEventListener<K extends keyof GuideCueEventMap>(type: K, listener: (this: GuideCueEventMap, ev: GuideCueEventMap[K]) => void): void;
|
|
12
|
+
addEventListener(type: string, listener: EventListenerOrEventListenerObject): void;
|
|
13
|
+
removeEventListener<K extends keyof GuideCueEventMap>(type: K, listener: (this: GuideCueEventMap, ev: GuideCueEventMap[K]) => void): void;
|
|
14
|
+
removeEventListener(type: string, listener: EventListenerOrEventListenerObject): void;
|
|
15
|
+
}
|
|
16
|
+
export type Cue = {
|
|
17
|
+
groupId?: GroupName;
|
|
18
|
+
step: number;
|
|
19
|
+
cueId: string;
|
|
20
|
+
isIntersecting: boolean;
|
|
21
|
+
isVisited: boolean;
|
|
22
|
+
};
|
|
23
|
+
export declare class GuideCueService extends EventTarget {
|
|
24
|
+
private readonly _storage;
|
|
25
|
+
private _cues;
|
|
26
|
+
private _activeGroupId;
|
|
27
|
+
private _activeCue;
|
|
28
|
+
constructor(_storage: GuideCueStorage);
|
|
29
|
+
addCue(cue: Omit<Cue, 'isVisited'>): boolean | undefined;
|
|
30
|
+
private dispatchShowCueEvent;
|
|
31
|
+
private validateCueData;
|
|
32
|
+
removeCue(cueId: string, groupId?: GroupName): void;
|
|
33
|
+
onNext(): boolean | undefined;
|
|
34
|
+
getCountOfSteps(groupId?: GroupName): number;
|
|
35
|
+
private findNextCue;
|
|
36
|
+
private getNextCueFromGroup;
|
|
37
|
+
private getNextCueFromNextGroup;
|
|
38
|
+
private getCueIndex;
|
|
39
|
+
markCueAsVisited(cueId: string, groupId?: GroupName): void;
|
|
40
|
+
markGroupAsVisited(groupId: GroupName): void;
|
|
41
|
+
markAllCuesAsVisited(): void;
|
|
42
|
+
onCueIntersectionChange(isIntersecting: boolean, cueId: string, groupId?: GroupName): boolean | undefined;
|
|
43
|
+
}
|
|
44
|
+
export declare const guideCueService: GuideCueService;
|
|
45
|
+
export {};
|
|
46
|
+
//# sourceMappingURL=guide-cue-service.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"guide-cue-service.d.ts","sourceRoot":"","sources":["../../../src/components/guide-cue/guide-cue-service.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,KAAK,SAAS,EAAmB,MAAM,oBAAoB,CAAC;AACrE,OAAO,EAEL,KAAK,eAAe,EACrB,MAAM,qBAAqB,CAAC;AAG7B,MAAM,MAAM,kBAAkB,GAAG,WAAW,CAAC;IAC3C,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,SAAS,CAAC;CACrB,CAAC,CAAC;AAEH,UAAU,gBAAgB;IACxB,UAAU,EAAE,kBAAkB,CAAC;CAChC;AAED,MAAM,WAAW,eAAgB,SAAQ,WAAW;IAClD,gBAAgB,CAAC,CAAC,SAAS,MAAM,gBAAgB,EAC/C,IAAI,EAAE,CAAC,EACP,QAAQ,EAAE,CAAC,IAAI,EAAE,gBAAgB,EAAE,EAAE,EAAE,gBAAgB,CAAC,CAAC,CAAC,KAAK,IAAI,GAClE,IAAI,CAAC;IACR,gBAAgB,CACd,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,kCAAkC,GAC3C,IAAI,CAAC;IACR,mBAAmB,CAAC,CAAC,SAAS,MAAM,gBAAgB,EAClD,IAAI,EAAE,CAAC,EACP,QAAQ,EAAE,CAAC,IAAI,EAAE,gBAAgB,EAAE,EAAE,EAAE,gBAAgB,CAAC,CAAC,CAAC,KAAK,IAAI,GAClE,IAAI,CAAC;IACR,mBAAmB,CACjB,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,kCAAkC,GAC3C,IAAI,CAAC;CACT;AAED,MAAM,MAAM,GAAG,GAAG;IAChB,OAAO,CAAC,EAAE,SAAS,CAAC;IACpB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,cAAc,EAAE,OAAO,CAAC;IACxB,SAAS,EAAE,OAAO,CAAC;CACpB,CAAC;AAEF,qBAAa,eAAgB,SAAQ,WAAW;IAMlC,OAAO,CAAC,QAAQ,CAAC,QAAQ;IALrC,OAAO,CAAC,KAAK,CAAa;IAE1B,OAAO,CAAC,cAAc,CAA0B;IAChD,OAAO,CAAC,UAAU,CAAoB;gBAET,QAAQ,EAAE,eAAe;IAItD,MAAM,CAAC,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,WAAW,CAAC;IA2BlC,OAAO,CAAC,oBAAoB;IAc5B,OAAO,CAAC,eAAe;IAqBvB,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,SAAS;IAiB5C,MAAM;IAKN,eAAe,CAAC,OAAO,CAAC,EAAE,SAAS;IAMnC,OAAO,CAAC,WAAW;IAanB,OAAO,CAAC,mBAAmB;IAe3B,OAAO,CAAC,uBAAuB;IAqB/B,OAAO,CAAC,WAAW;IAMnB,gBAAgB,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,SAAS;IAUnD,kBAAkB,CAAC,OAAO,EAAE,SAAS;IAarC,oBAAoB;IAepB,uBAAuB,CACrB,cAAc,EAAE,OAAO,EACvB,KAAK,EAAE,MAAM,EACb,OAAO,CAAC,EAAE,SAAS;CAkBtB;AAED,eAAO,MAAM,eAAe,iBAE3B,CAAC"}
|
|
@@ -0,0 +1,174 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.guideCueService = exports.GuideCueService = void 0;
|
|
4
|
+
const guide_cue_exceptions_1 = require("./guide-cue-exceptions");
|
|
5
|
+
const guide_cue_groups_1 = require("./guide-cue-groups");
|
|
6
|
+
const guide_cue_storage_1 = require("./guide-cue-storage");
|
|
7
|
+
const lodash_1 = require("lodash");
|
|
8
|
+
class GuideCueService extends EventTarget {
|
|
9
|
+
constructor(_storage) {
|
|
10
|
+
super();
|
|
11
|
+
this._storage = _storage;
|
|
12
|
+
this._cues = [];
|
|
13
|
+
this._activeGroupId = null;
|
|
14
|
+
this._activeCue = null;
|
|
15
|
+
}
|
|
16
|
+
addCue(cue) {
|
|
17
|
+
if (process.env.DISABLE_GUIDE_CUES === 'true') {
|
|
18
|
+
return;
|
|
19
|
+
}
|
|
20
|
+
const cueIndex = this.getCueIndex(cue.cueId, cue.groupId);
|
|
21
|
+
if (cueIndex !== -1) {
|
|
22
|
+
console.warn(`The Cue ${cue.cueId} is already added.`);
|
|
23
|
+
return;
|
|
24
|
+
}
|
|
25
|
+
if (cue.groupId) {
|
|
26
|
+
this.validateCueData(cue.groupId, cue.step);
|
|
27
|
+
}
|
|
28
|
+
this._cues.push({
|
|
29
|
+
...cue,
|
|
30
|
+
isVisited: this._storage.isCueVisited(cue.cueId, cue.groupId),
|
|
31
|
+
});
|
|
32
|
+
if (!this._activeCue) {
|
|
33
|
+
return this.onNext();
|
|
34
|
+
}
|
|
35
|
+
return this.dispatchShowCueEvent();
|
|
36
|
+
}
|
|
37
|
+
dispatchShowCueEvent() {
|
|
38
|
+
if (!this._activeCue) {
|
|
39
|
+
return;
|
|
40
|
+
}
|
|
41
|
+
return this.dispatchEvent(new CustomEvent('show-cue', {
|
|
42
|
+
detail: {
|
|
43
|
+
cueId: this._activeCue.cueId,
|
|
44
|
+
groupId: this._activeCue.groupId,
|
|
45
|
+
},
|
|
46
|
+
}));
|
|
47
|
+
}
|
|
48
|
+
validateCueData(groupId, step) {
|
|
49
|
+
if (!guide_cue_groups_1.GROUP_STEPS_MAP.has(groupId)) {
|
|
50
|
+
throw new guide_cue_exceptions_1.UnregisteredGroupError(groupId);
|
|
51
|
+
}
|
|
52
|
+
const groupCues = this._cues.filter((x) => x.groupId === groupId);
|
|
53
|
+
const groupSteps = guide_cue_groups_1.GROUP_STEPS_MAP.get(groupId);
|
|
54
|
+
if (groupCues.length >= groupSteps) {
|
|
55
|
+
throw new guide_cue_exceptions_1.GroupStepsCompleteError(groupId, groupSteps);
|
|
56
|
+
}
|
|
57
|
+
if (step > groupSteps) {
|
|
58
|
+
throw new guide_cue_exceptions_1.InvalidCueStepError(groupId, groupSteps, step);
|
|
59
|
+
}
|
|
60
|
+
if (groupCues.find((x) => x.step === step)) {
|
|
61
|
+
throw new guide_cue_exceptions_1.DuplicateCueStepError(groupId, step);
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
removeCue(cueId, groupId) {
|
|
65
|
+
const cueIndex = this._cues.findIndex((cue) => cue.cueId === cueId && cue.groupId === groupId);
|
|
66
|
+
if (cueIndex === -1) {
|
|
67
|
+
return;
|
|
68
|
+
}
|
|
69
|
+
this._cues.splice(cueIndex, 1);
|
|
70
|
+
if (this._activeCue?.cueId === cueId &&
|
|
71
|
+
this._activeCue.groupId === groupId) {
|
|
72
|
+
this._activeCue = null;
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
onNext() {
|
|
76
|
+
this._activeCue = this.findNextCue();
|
|
77
|
+
return this.dispatchShowCueEvent();
|
|
78
|
+
}
|
|
79
|
+
getCountOfSteps(groupId) {
|
|
80
|
+
return !groupId
|
|
81
|
+
? 1
|
|
82
|
+
: this._cues.filter((x) => x.groupId === groupId).length || 1;
|
|
83
|
+
}
|
|
84
|
+
findNextCue() {
|
|
85
|
+
if (this._activeGroupId) {
|
|
86
|
+
const nextCue = this.getNextCueFromGroup(this._activeGroupId);
|
|
87
|
+
if (nextCue) {
|
|
88
|
+
return nextCue;
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
const nextCue = this.getNextCueFromNextGroup();
|
|
92
|
+
this._activeGroupId = nextCue?.groupId || null;
|
|
93
|
+
return nextCue;
|
|
94
|
+
}
|
|
95
|
+
getNextCueFromGroup(groupId) {
|
|
96
|
+
const groupCues = this._cues.filter((x) => x.groupId === groupId);
|
|
97
|
+
if (groupCues.length !== guide_cue_groups_1.GROUP_STEPS_MAP.get(groupId)) {
|
|
98
|
+
return null;
|
|
99
|
+
}
|
|
100
|
+
const unseenCues = groupCues.filter((x) => !x.isVisited && x.isIntersecting);
|
|
101
|
+
if (unseenCues.length === 0) {
|
|
102
|
+
return null;
|
|
103
|
+
}
|
|
104
|
+
unseenCues.sort((a, b) => a.step - b.step);
|
|
105
|
+
return unseenCues[0];
|
|
106
|
+
}
|
|
107
|
+
getNextCueFromNextGroup() {
|
|
108
|
+
let nextPossibleIndex = 0;
|
|
109
|
+
while (nextPossibleIndex < this._cues.length) {
|
|
110
|
+
const cue = this._cues[nextPossibleIndex];
|
|
111
|
+
if (!cue.groupId) {
|
|
112
|
+
if (!cue.isVisited && cue.isIntersecting) {
|
|
113
|
+
return cue;
|
|
114
|
+
}
|
|
115
|
+
}
|
|
116
|
+
else {
|
|
117
|
+
const nextCue = this.getNextCueFromGroup(cue.groupId);
|
|
118
|
+
if (nextCue) {
|
|
119
|
+
return nextCue;
|
|
120
|
+
}
|
|
121
|
+
}
|
|
122
|
+
nextPossibleIndex++;
|
|
123
|
+
}
|
|
124
|
+
return null;
|
|
125
|
+
}
|
|
126
|
+
getCueIndex(cueId, groupId) {
|
|
127
|
+
return this._cues.findIndex((cue) => cue.cueId === cueId && cue.groupId === groupId);
|
|
128
|
+
}
|
|
129
|
+
markCueAsVisited(cueId, groupId) {
|
|
130
|
+
const cueIndex = this.getCueIndex(cueId, groupId);
|
|
131
|
+
if (cueIndex === -1) {
|
|
132
|
+
return;
|
|
133
|
+
}
|
|
134
|
+
this._cues[cueIndex].isVisited = true;
|
|
135
|
+
this._storage.markCueAsVisited(cueId, groupId);
|
|
136
|
+
this._activeCue = null;
|
|
137
|
+
}
|
|
138
|
+
markGroupAsVisited(groupId) {
|
|
139
|
+
const groupCues = this._cues.filter((x) => x.groupId === groupId);
|
|
140
|
+
if (groupCues.length === guide_cue_groups_1.GROUP_STEPS_MAP.get(groupId)) {
|
|
141
|
+
groupCues.forEach(({ cueId }) => {
|
|
142
|
+
this.markCueAsVisited(cueId, groupId);
|
|
143
|
+
});
|
|
144
|
+
}
|
|
145
|
+
this._activeGroupId = null;
|
|
146
|
+
this._activeCue = null;
|
|
147
|
+
}
|
|
148
|
+
markAllCuesAsVisited() {
|
|
149
|
+
this._cues
|
|
150
|
+
.filter((x) => !x.groupId)
|
|
151
|
+
.forEach(({ cueId, groupId }) => {
|
|
152
|
+
this.markCueAsVisited(cueId, groupId);
|
|
153
|
+
});
|
|
154
|
+
const groupIds = (0, lodash_1.uniq)(this._cues.map((x) => x.groupId)).filter(Boolean);
|
|
155
|
+
groupIds.forEach((groupId) => this.markGroupAsVisited(groupId));
|
|
156
|
+
}
|
|
157
|
+
onCueIntersectionChange(isIntersecting, cueId, groupId) {
|
|
158
|
+
const cueIndex = this.getCueIndex(cueId, groupId);
|
|
159
|
+
if (cueIndex === -1) {
|
|
160
|
+
return;
|
|
161
|
+
}
|
|
162
|
+
this._cues[cueIndex].isIntersecting = isIntersecting;
|
|
163
|
+
const isNewCueShowable = !this._activeCue && isIntersecting;
|
|
164
|
+
const isActiveCueNotShowable = this._activeCue?.cueId === cueId &&
|
|
165
|
+
this._activeCue.groupId === groupId &&
|
|
166
|
+
!isIntersecting;
|
|
167
|
+
if (isActiveCueNotShowable || isNewCueShowable) {
|
|
168
|
+
return this.onNext();
|
|
169
|
+
}
|
|
170
|
+
}
|
|
171
|
+
}
|
|
172
|
+
exports.GuideCueService = GuideCueService;
|
|
173
|
+
exports.guideCueService = new GuideCueService(new guide_cue_storage_1.CompassGuideCueStorage());
|
|
174
|
+
//# sourceMappingURL=guide-cue-service.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"guide-cue-service.js","sourceRoot":"","sources":["../../../src/components/guide-cue/guide-cue-service.ts"],"names":[],"mappings":"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"}
|