@epam/ai-dial-skills 1.1.2 → 1.2.0-dev.101
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/components/ChatSkill/ChatSkill.d.ts.map +1 -1
- package/components/FavoriteSkillsPanel/FavoriteSkillsPanel.d.ts.map +1 -1
- package/components/SkillArchiveUploadDialog/SkillArchiveUploadDialog.d.ts +9 -0
- package/components/SkillArchiveUploadDialog/SkillArchiveUploadDialog.d.ts.map +1 -0
- package/constants/public-class-names.d.ts +13 -0
- package/constants/public-class-names.d.ts.map +1 -0
- package/index.css +1 -1
- package/index.d.ts +3 -0
- package/index.d.ts.map +1 -1
- package/index.js +172 -142
- package/models/skill-archive-upload-dialog-props.d.ts +33 -0
- package/models/skill-archive-upload-dialog-props.d.ts.map +1 -0
- package/models/skill-selector-overlay.d.ts +1 -1
- package/package.json +5 -5
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ChatSkill.d.ts","sourceRoot":"","sources":["../../../src/components/ChatSkill/ChatSkill.tsx"],"names":[],"mappings":"AAMA,OAAO,EAAY,KAAK,EAAE,EAAE,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"ChatSkill.d.ts","sourceRoot":"","sources":["../../../src/components/ChatSkill/ChatSkill.tsx"],"names":[],"mappings":"AAMA,OAAO,EAAY,KAAK,EAAE,EAAE,MAAM,OAAO,CAAC;AAE1C,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAGpE;;;GAGG;AACH,eAAO,MAAM,SAAS,EAAE,EAAE,CAAC,cAAc,CAmFxC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FavoriteSkillsPanel.d.ts","sourceRoot":"","sources":["../../../src/components/FavoriteSkillsPanel/FavoriteSkillsPanel.tsx"],"names":[],"mappings":"AAaA,OAAO,EAKL,KAAK,EAAE,EAER,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"FavoriteSkillsPanel.d.ts","sourceRoot":"","sources":["../../../src/components/FavoriteSkillsPanel/FavoriteSkillsPanel.tsx"],"names":[],"mappings":"AAaA,OAAO,EAKL,KAAK,EAAE,EAER,MAAM,OAAO,CAAC;AAGf,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,0CAA0C,CAAC;AAYzF,sHAAsH;AACtH,eAAO,MAAM,mBAAmB,EAAE,EAAE,CAAC,wBAAwB,CAiQ5D,CAAC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { FC } from 'react';
|
|
2
|
+
import { SkillArchiveUploadDialogProps } from '../../models/skill-archive-upload-dialog-props';
|
|
3
|
+
/**
|
|
4
|
+
* Dialog presenting the drop area and supported formats for a skill-archive upload, so the host
|
|
5
|
+
* can start the flow before the native file picker appears. Presentation only — the host wires
|
|
6
|
+
* selection/rejection/close to its own import controller.
|
|
7
|
+
*/
|
|
8
|
+
export declare const SkillArchiveUploadDialog: FC<SkillArchiveUploadDialogProps>;
|
|
9
|
+
//# sourceMappingURL=SkillArchiveUploadDialog.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SkillArchiveUploadDialog.d.ts","sourceRoot":"","sources":["../../../src/components/SkillArchiveUploadDialog/SkillArchiveUploadDialog.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC;AAChC,OAAO,KAAK,EAAE,6BAA6B,EAAE,MAAM,gDAAgD,CAAC;AAIpG;;;;GAIG;AACH,eAAO,MAAM,wBAAwB,EAAE,EAAE,CAAC,6BAA6B,CA4CtE,CAAC"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
export declare const SKILLS_CLASS: {
|
|
2
|
+
/** The favorite-skills panel root, which carries the themed CSS variables. */
|
|
3
|
+
readonly favoritesPanel: "dial-skills-favorites-panel";
|
|
4
|
+
/**
|
|
5
|
+
* The `/name` chip a `ChatSkill` renders inside the composer, additive to
|
|
6
|
+
* the `dial-kit-base-button` that `@epam/ai-dial-ui-kit` draws. The chip's
|
|
7
|
+
* height is its label line, so a host changing its padding should keep the
|
|
8
|
+
* vertical padding at zero or the chip stops aligning with the input's first
|
|
9
|
+
* text line.
|
|
10
|
+
*/
|
|
11
|
+
readonly chip: "dial-skills-chip";
|
|
12
|
+
};
|
|
13
|
+
//# sourceMappingURL=public-class-names.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"public-class-names.d.ts","sourceRoot":"","sources":["../../src/constants/public-class-names.ts"],"names":[],"mappings":"AAUA,eAAO,MAAM,YAAY;IACvB,8EAA8E;;IAE9E;;;;;;OAMG;;CAEK,CAAC"}
|
package/index.css
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
._row_1ovug_1:hover,._row_1ovug_1:focus-visible{background:var(--fs-row-hover-bg,var(--bg-layer-sunken,#eef1f7))}._header_1ovug_5{color:var(--fs-header-text,var(--text-tertiary,#848e9c))}._emptyHint_1ovug_9{color:var(--fs-empty-hint-text,var(--text-icon-tertiary,#848e9c))}._star_1ovug_13{color:var(--fs-star-color,var(--text-warning-icon,#eec840))}._footer_1ovug_17{border-top-color:var(--fs-footer-border,var(--stroke-tertiary,#e0e6f0))}._rowEnter_1ovug_25{animation:.2s ease-out _rowFadeIn_1ovug_1}._rowLeaving_1ovug_29{pointer-events:none;animation:.18s ease-out forwards _rowFadeOut_1ovug_1}@keyframes _rowFadeIn_1ovug_1{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}@keyframes _rowFadeOut_1ovug_1{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.96)}}._listContent_1ovug_57{transition:max-height .2s}@media (prefers-reduced-motion:reduce){._rowEnter_1ovug_25,._rowLeaving_1ovug_29{animation:none}._listContent_1ovug_57{transition:none}}
|
|
2
|
-
/*$vite$:1*/.visible{visibility:visible}.inline{display:inline}.flex{display:flex}.inline-flex{display:inline-flex}.hidden{display:none}.h-\[24px\]{height:24px}.h-\[40px\]{height:40px}.h-\[min\(80vh\2c 840px\)\]{height:min(80vh,840px)}.h-\[min\(90vh\2c 860px\)\]{height:min(90vh,860px)}.h-auto{height:auto}.max-h-72{max-height:18rem}.min-h-0{min-height:0}.w-full{width:100%}.min-w-0{min-width:0}.\!max-w-\[min\(95vw\2c 1200px\)\]{max-width:min(95vw,1200px)!important}.max-w-\[550px\]{max-width:550px}.flex-1{flex:1 1 0%}.cursor-pointer{cursor:pointer}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-center{justify-content:center}.gap-1{gap:.25rem}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.self-start{align-self:flex-start}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-y-auto{overflow-y:auto}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rounded-lg{border-radius:.5rem}.border{border-width:1px}.border-t{border-top-width:1px}.border-transparent{border-color:transparent}.bg-error{background-color:var(--bg-error,#f3d6d8)}.px-1{padding-left:.25rem;padding-right:.25rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.py-0{padding-bottom:0;padding-top:0}.py-1{padding-bottom:.25rem;padding-top:.25rem}.py-1\.5{padding-bottom:.375rem;padding-top:.375rem}.py-3{padding-bottom:.75rem;padding-top:.75rem}.py-4{padding-bottom:1rem;padding-top:1rem}.pb-0{padding-bottom:0}.pb-0\.5{padding-bottom:.125rem}.pb-1{padding-bottom:.25rem}.pt-2{padding-top:.5rem}.text-start{text-align:start}.text-error{color:var(--text-error,#ae2f2f)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition{transition-duration:.15s;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition-colors{transition-duration:.15s;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1)}@media (min-width:1280px){.desktop\:w-\[280px\]{width:280px}}
|
|
2
|
+
/*$vite$:1*/.visible{visibility:visible}.inline{display:inline}.flex{display:flex}.inline-flex{display:inline-flex}.hidden{display:none}.h-\[24px\]{height:24px}.h-\[40px\]{height:40px}.h-\[min\(80vh\2c 840px\)\]{height:min(80vh,840px)}.h-\[min\(90vh\2c 860px\)\]{height:min(90vh,860px)}.h-auto{height:auto}.max-h-72{max-height:18rem}.min-h-0{min-height:0}.w-full{width:100%}.min-w-0{min-width:0}.\!max-w-\[min\(95vw\2c 1200px\)\]{max-width:min(95vw,1200px)!important}.max-w-\[550px\]{max-width:550px}.flex-1{flex:1 1 0%}.cursor-pointer{cursor:pointer}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-center{justify-content:center}.gap-1{gap:.25rem}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.self-start{align-self:flex-start}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-y-auto{overflow-y:auto}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rounded-lg{border-radius:.5rem}.border{border-width:1px}.border-t{border-top-width:1px}.border-transparent{border-color:transparent}.bg-error{background-color:var(--bg-error,#f3d6d8)}.px-1{padding-left:.25rem;padding-right:.25rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.py-0{padding-bottom:0;padding-top:0}.py-1{padding-bottom:.25rem;padding-top:.25rem}.py-1\.5{padding-bottom:.375rem;padding-top:.375rem}.py-3{padding-bottom:.75rem;padding-top:.75rem}.py-4{padding-bottom:1rem;padding-top:1rem}.pb-0{padding-bottom:0}.pb-0\.5{padding-bottom:.125rem}.pb-1{padding-bottom:.25rem}.pt-2{padding-top:.5rem}.text-start{text-align:start}.text-error{color:var(--text-error,#ae2f2f)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition{transition-duration:.15s;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition-colors{transition-duration:.15s;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1)}@media (min-width:1280px){.desktop\:inline{display:inline}.desktop\:hidden{display:none}.desktop\:w-\[280px\]{width:280px}}
|
package/index.d.ts
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
export { ChatSkill } from './components/ChatSkill/ChatSkill';
|
|
2
2
|
export { FavoriteSkillsPanel } from './components/FavoriteSkillsPanel/FavoriteSkillsPanel';
|
|
3
|
+
export { SkillArchiveUploadDialog } from './components/SkillArchiveUploadDialog/SkillArchiveUploadDialog';
|
|
3
4
|
export { SkillCatalogModal } from './components/SkillCatalogModal/SkillCatalogModal';
|
|
4
5
|
export { SkillDetailsSidePanel } from './components/SkillDetailsSidePanel/SkillDetailsSidePanel';
|
|
5
6
|
export { SkillInfoTooltipContent } from './components/SkillInfoTooltipContent/SkillInfoTooltipContent';
|
|
@@ -8,8 +9,10 @@ export { buildFavoriteSkillItem } from './models/favorite-skill-item';
|
|
|
8
9
|
export type { ChatSkillLabels, ChatSkillProps, } from './models/chat-skill-props';
|
|
9
10
|
export type { FavoriteSkillItem, SkillListingEntry, } from './models/favorite-skill-item';
|
|
10
11
|
export type { FavoriteSkillsPanelColors, FavoriteSkillsPanelLabels, FavoriteSkillsPanelProps, } from './models/favorite-skills-panel-props';
|
|
12
|
+
export type { SkillArchiveUploadDialogLabels, SkillArchiveUploadDialogProps, } from './models/skill-archive-upload-dialog-props';
|
|
11
13
|
export type { SkillCatalogModalProps } from './models/skill-catalog-modal-props';
|
|
12
14
|
export type { SkillDetailsSidePanelProps } from './models/skill-details-side-panel-props';
|
|
13
15
|
export type { SkillInfoTooltipContentProps } from './models/skill-info-tooltip-content-props';
|
|
14
16
|
export type { SkillDetailsPanelComponentProps, SkillSelectorOverlayLabels, UseSkillSelectorOverlayOptions, UseSkillSelectorOverlayResult, } from './models/skill-selector-overlay';
|
|
17
|
+
export { SKILLS_CLASS } from './constants/public-class-names';
|
|
15
18
|
//# sourceMappingURL=index.d.ts.map
|
package/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,kCAAkC,CAAC;AAC7D,OAAO,EAAE,mBAAmB,EAAE,MAAM,sDAAsD,CAAC;AAC3F,OAAO,EAAE,iBAAiB,EAAE,MAAM,kDAAkD,CAAC;AACrF,OAAO,EAAE,qBAAqB,EAAE,MAAM,0DAA0D,CAAC;AACjG,OAAO,EAAE,uBAAuB,EAAE,MAAM,8DAA8D,CAAC;AACvG,OAAO,EAAE,uBAAuB,EAAE,MAAM,yDAAyD,CAAC;AAClG,OAAO,EAAE,sBAAsB,EAAE,MAAM,8BAA8B,CAAC;AACtE,YAAY,EACV,eAAe,EACf,cAAc,GACf,MAAM,2BAA2B,CAAC;AACnC,YAAY,EACV,iBAAiB,EACjB,iBAAiB,GAClB,MAAM,8BAA8B,CAAC;AACtC,YAAY,EACV,yBAAyB,EACzB,yBAAyB,EACzB,wBAAwB,GACzB,MAAM,sCAAsC,CAAC;AAC9C,YAAY,EAAE,sBAAsB,EAAE,MAAM,oCAAoC,CAAC;AACjF,YAAY,EAAE,0BAA0B,EAAE,MAAM,yCAAyC,CAAC;AAC1F,YAAY,EAAE,4BAA4B,EAAE,MAAM,2CAA2C,CAAC;AAC9F,YAAY,EACV,+BAA+B,EAC/B,0BAA0B,EAC1B,8BAA8B,EAC9B,6BAA6B,GAC9B,MAAM,iCAAiC,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,kCAAkC,CAAC;AAC7D,OAAO,EAAE,mBAAmB,EAAE,MAAM,sDAAsD,CAAC;AAC3F,OAAO,EAAE,wBAAwB,EAAE,MAAM,gEAAgE,CAAC;AAC1G,OAAO,EAAE,iBAAiB,EAAE,MAAM,kDAAkD,CAAC;AACrF,OAAO,EAAE,qBAAqB,EAAE,MAAM,0DAA0D,CAAC;AACjG,OAAO,EAAE,uBAAuB,EAAE,MAAM,8DAA8D,CAAC;AACvG,OAAO,EAAE,uBAAuB,EAAE,MAAM,yDAAyD,CAAC;AAClG,OAAO,EAAE,sBAAsB,EAAE,MAAM,8BAA8B,CAAC;AACtE,YAAY,EACV,eAAe,EACf,cAAc,GACf,MAAM,2BAA2B,CAAC;AACnC,YAAY,EACV,iBAAiB,EACjB,iBAAiB,GAClB,MAAM,8BAA8B,CAAC;AACtC,YAAY,EACV,yBAAyB,EACzB,yBAAyB,EACzB,wBAAwB,GACzB,MAAM,sCAAsC,CAAC;AAC9C,YAAY,EACV,8BAA8B,EAC9B,6BAA6B,GAC9B,MAAM,4CAA4C,CAAC;AACpD,YAAY,EAAE,sBAAsB,EAAE,MAAM,oCAAoC,CAAC;AACjF,YAAY,EAAE,0BAA0B,EAAE,MAAM,yCAAyC,CAAC;AAC1F,YAAY,EAAE,4BAA4B,EAAE,MAAM,2CAA2C,CAAC;AAC9F,YAAY,EACV,+BAA+B,EAC/B,0BAA0B,EAC1B,8BAA8B,EAC9B,6BAA6B,GAC9B,MAAM,iCAAiC,CAAC;AACzC,OAAO,EAAE,YAAY,EAAE,MAAM,gCAAgC,CAAC"}
|
package/index.js
CHANGED
|
@@ -1,53 +1,56 @@
|
|
|
1
1
|
import { DeploymentIcon as e, buildCssVars as t, mergeClasses as n } from "@epam/ai-dial-chat-shared";
|
|
2
|
-
import { BASE_ICON_SIZE as r, Button as i, ButtonAppearance as a, ButtonVariant as o, DIAL_ICON_SIZE as s, DIAL_KIT_ICON_STROKE as c,
|
|
3
|
-
import { Suspense as
|
|
4
|
-
import { IconBlocks as
|
|
5
|
-
import { jsx as
|
|
6
|
-
import { DetailsPanel as
|
|
7
|
-
//#region src/
|
|
8
|
-
var
|
|
2
|
+
import { BASE_ICON_SIZE as r, Button as i, ButtonAppearance as a, ButtonVariant as o, DIAL_ICON_SIZE as s, DIAL_KIT_ICON_STROKE as c, FileDropzone as l, GhostButton as u, Highlight as d, InteractiveTooltip as f, Popup as p, PopupSize as m, ToggleIconButton as h, TooltipPlacement as g } from "@epam/ai-dial-ui-kit";
|
|
3
|
+
import { Suspense as _, useCallback as v, useEffect as y, useLayoutEffect as b, useMemo as x, useRef as S, useState as C } from "react";
|
|
4
|
+
import { IconBlocks as w, IconEye as T, IconStarFilled as E } from "@tabler/icons-react";
|
|
5
|
+
import { Fragment as D, jsx as O, jsxs as k } from "react/jsx-runtime";
|
|
6
|
+
import { DetailsPanel as A } from "@epam/ai-dial-catalog";
|
|
7
|
+
//#region src/constants/public-class-names.ts
|
|
8
|
+
var j = {
|
|
9
|
+
favoritesPanel: "dial-skills-favorites-panel",
|
|
10
|
+
chip: "dial-skills-chip"
|
|
11
|
+
}, M = ({ description: e, unsupportedMessage: t, viewDetailsLabel: n = "View details", onViewDetails: r }) => t == null ? /* @__PURE__ */ k("div", {
|
|
9
12
|
className: "flex flex-col gap-3",
|
|
10
|
-
children: [e != null && e !== "" && /* @__PURE__ */
|
|
13
|
+
children: [e != null && e !== "" && /* @__PURE__ */ O("p", {
|
|
11
14
|
className: "text-start",
|
|
12
15
|
children: e
|
|
13
|
-
}), /* @__PURE__ */
|
|
16
|
+
}), /* @__PURE__ */ O(i, {
|
|
14
17
|
variant: o.Primary,
|
|
15
18
|
appearance: a.Link,
|
|
16
19
|
className: "h-[24px] self-start",
|
|
17
20
|
label: n,
|
|
18
|
-
iconBefore: /* @__PURE__ */
|
|
21
|
+
iconBefore: /* @__PURE__ */ O(T, {
|
|
19
22
|
size: s.SM,
|
|
20
23
|
stroke: c,
|
|
21
24
|
"aria-hidden": !0
|
|
22
25
|
}),
|
|
23
26
|
onClick: r
|
|
24
27
|
})]
|
|
25
|
-
}) : /* @__PURE__ */
|
|
28
|
+
}) : /* @__PURE__ */ O("p", {
|
|
26
29
|
className: "text-start",
|
|
27
30
|
children: t
|
|
28
|
-
}),
|
|
29
|
-
let { viewDetailsLabel:
|
|
30
|
-
return /* @__PURE__ */
|
|
31
|
+
}), N = ({ name: e, path: t, description: r, isUnsupported: i = !1, labelClassName: a = "dial-body-paragraph-text", unsupportedLabelClassName: o = "text-error", unsupportedClassName: s = "bg-error", onViewDetails: c, labels: l = {} }) => {
|
|
32
|
+
let { viewDetailsLabel: d = "View details", unsupportedTooltipLabel: p = "Selected model does not support skills. Remove the skill or select different model to proceed." } = l, [m, h] = C(0);
|
|
33
|
+
return /* @__PURE__ */ O(f, {
|
|
31
34
|
asChild: !0,
|
|
32
|
-
placement:
|
|
35
|
+
placement: g.Top,
|
|
33
36
|
contentClassName: "max-w-[550px]",
|
|
34
|
-
content: i ? /* @__PURE__ */
|
|
37
|
+
content: i ? /* @__PURE__ */ O(M, { unsupportedMessage: p }) : /* @__PURE__ */ O(M, {
|
|
35
38
|
description: r,
|
|
36
|
-
viewDetailsLabel:
|
|
39
|
+
viewDetailsLabel: d,
|
|
37
40
|
onViewDetails: () => {
|
|
38
|
-
|
|
41
|
+
h((e) => e + 1), c(t);
|
|
39
42
|
}
|
|
40
43
|
}),
|
|
41
|
-
children: /* @__PURE__ */
|
|
44
|
+
children: /* @__PURE__ */ O("span", {
|
|
42
45
|
className: "inline-flex items-center",
|
|
43
|
-
children: /* @__PURE__ */
|
|
46
|
+
children: /* @__PURE__ */ O(u, {
|
|
44
47
|
label: `/${e}`,
|
|
45
48
|
textClassName: i ? n(a, o) : a,
|
|
46
|
-
className:
|
|
49
|
+
className: n("h-auto px-2 py-0", i && s, j.chip)
|
|
47
50
|
})
|
|
48
51
|
})
|
|
49
52
|
}, m);
|
|
50
|
-
},
|
|
53
|
+
}, P = {
|
|
51
54
|
row: "_row_1ovug_1",
|
|
52
55
|
header: "_header_1ovug_5",
|
|
53
56
|
emptyHint: "_emptyHint_1ovug_9",
|
|
@@ -58,143 +61,170 @@ var k = ({ description: e, unsupportedMessage: t, viewDetailsLabel: n = "View de
|
|
|
58
61
|
rowLeaving: "_rowLeaving_1ovug_29",
|
|
59
62
|
rowFadeOut: "_rowFadeOut_1ovug_1",
|
|
60
63
|
listContent: "_listContent_1ovug_57"
|
|
61
|
-
},
|
|
62
|
-
let { myCollectionLabel:
|
|
63
|
-
"--fs-row-hover-bg":
|
|
64
|
-
"--fs-header-text":
|
|
65
|
-
"--fs-empty-hint-text":
|
|
66
|
-
"--fs-star-color":
|
|
67
|
-
"--fs-footer-border":
|
|
68
|
-
}), [
|
|
69
|
-
|
|
70
|
-
let e =
|
|
64
|
+
}, F = "px-3 pb-0.5 pt-2", I = 180, L = 288, R = ({ favorites: r, onSelect: i, onToggleFavorite: a, onBrowse: o, onViewDetails: c, searchQuery: l, labels: p = {}, colors: m, nameClassName: g = "dial-small-text", headerClassName: _ = "dial-tiny-lead-semi-text", emptyHintClassName: v = "dial-small-text" }) => {
|
|
65
|
+
let { myCollectionLabel: x = "My Collection", emptyHintLabel: w = "Star a skill to pin it here", browseLabel: T = "Browse", removeFromFavoritesLabel: D = "Remove from favorites", viewDetailsLabel: A = "View details", noMatchingSkillsLabel: N = "No matching skills" } = p, R = t({
|
|
66
|
+
"--fs-row-hover-bg": m?.rowHoverBackground,
|
|
67
|
+
"--fs-header-text": m?.headerText,
|
|
68
|
+
"--fs-empty-hint-text": m?.emptyHintText,
|
|
69
|
+
"--fs-star-color": m?.starColor,
|
|
70
|
+
"--fs-footer-border": m?.footerBorder
|
|
71
|
+
}), [z, B] = C(/* @__PURE__ */ new Set()), V = S(/* @__PURE__ */ new Map());
|
|
72
|
+
y(() => {
|
|
73
|
+
let e = V.current;
|
|
71
74
|
return () => {
|
|
72
75
|
e.forEach((e) => clearTimeout(e)), e.clear();
|
|
73
76
|
};
|
|
74
77
|
}, []);
|
|
75
|
-
let
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
}, [r,
|
|
79
|
-
let
|
|
78
|
+
let H = l != null, U = l?.toLowerCase() ?? "", W = H ? r.filter((e) => e.name.toLowerCase().includes(U)) : r, G = S(null), [K, q] = C();
|
|
79
|
+
b(() => {
|
|
80
|
+
G.current && q(Math.min(G.current.scrollHeight, L));
|
|
81
|
+
}, [r, l]);
|
|
82
|
+
let J = (e, t) => {
|
|
80
83
|
e.target === e.currentTarget && (e.key === "Enter" || e.key === " ") && (e.preventDefault(), i(t));
|
|
81
|
-
},
|
|
82
|
-
|
|
84
|
+
}, Y = (e) => {
|
|
85
|
+
B((t) => new Set(t).add(e));
|
|
83
86
|
let t = setTimeout(() => {
|
|
84
|
-
a(e),
|
|
87
|
+
a(e), B((t) => {
|
|
85
88
|
let n = new Set(t);
|
|
86
89
|
return n.delete(e), n;
|
|
87
|
-
}),
|
|
88
|
-
},
|
|
89
|
-
|
|
90
|
+
}), V.current.delete(e);
|
|
91
|
+
}, I);
|
|
92
|
+
V.current.set(e, t);
|
|
90
93
|
};
|
|
91
|
-
return /* @__PURE__ */
|
|
92
|
-
className: "flex w-full flex-col desktop:w-[280px]",
|
|
93
|
-
style:
|
|
94
|
+
return /* @__PURE__ */ k("div", {
|
|
95
|
+
className: n("flex w-full flex-col desktop:w-[280px]", j.favoritesPanel),
|
|
96
|
+
style: R,
|
|
94
97
|
children: [
|
|
95
|
-
/* @__PURE__ */
|
|
96
|
-
className: n(_,
|
|
97
|
-
children:
|
|
98
|
+
/* @__PURE__ */ O("p", {
|
|
99
|
+
className: n(_, F, P.header),
|
|
100
|
+
children: x
|
|
98
101
|
}),
|
|
99
|
-
/* @__PURE__ */
|
|
100
|
-
className: n("max-h-72 min-h-0 flex-1 overflow-y-auto",
|
|
101
|
-
style: { maxHeight:
|
|
102
|
-
children: /* @__PURE__ */
|
|
103
|
-
ref:
|
|
104
|
-
children:
|
|
102
|
+
/* @__PURE__ */ O("div", {
|
|
103
|
+
className: n("max-h-72 min-h-0 flex-1 overflow-y-auto", P.listContent),
|
|
104
|
+
style: { maxHeight: K },
|
|
105
|
+
children: /* @__PURE__ */ O("div", {
|
|
106
|
+
ref: G,
|
|
107
|
+
children: W.length > 0 ? /* @__PURE__ */ O("ul", {
|
|
105
108
|
className: "flex flex-col gap-1 px-1 pb-1",
|
|
106
|
-
children:
|
|
107
|
-
let r = /* @__PURE__ */
|
|
109
|
+
children: W.map((t) => {
|
|
110
|
+
let r = /* @__PURE__ */ k("div", {
|
|
108
111
|
role: "button",
|
|
109
112
|
tabIndex: 0,
|
|
110
|
-
className: n("flex cursor-pointer items-center gap-2 rounded-lg border border-transparent px-2 py-1.5 transition-colors",
|
|
113
|
+
className: n("flex cursor-pointer items-center gap-2 rounded-lg border border-transparent px-2 py-1.5 transition-colors", P.row),
|
|
111
114
|
onClick: () => i(t),
|
|
112
|
-
onKeyDown: (e) =>
|
|
115
|
+
onKeyDown: (e) => J(e, t),
|
|
113
116
|
children: [
|
|
114
|
-
/* @__PURE__ */
|
|
117
|
+
/* @__PURE__ */ O(e, {
|
|
115
118
|
size: s.MD,
|
|
116
119
|
initialsName: t.name
|
|
117
120
|
}),
|
|
118
|
-
|
|
121
|
+
l == null ? /* @__PURE__ */ O("span", {
|
|
119
122
|
className: n(g, "min-w-0 flex-1 truncate text-start"),
|
|
120
123
|
children: t.name
|
|
121
|
-
}) : /* @__PURE__ */
|
|
124
|
+
}) : /* @__PURE__ */ O(d, {
|
|
122
125
|
text: t.name,
|
|
123
|
-
query:
|
|
126
|
+
query: l,
|
|
124
127
|
maxLines: 1,
|
|
125
128
|
className: n(g, "min-w-0 flex-1 text-start")
|
|
126
129
|
}),
|
|
127
|
-
/* @__PURE__ */
|
|
128
|
-
icon: /* @__PURE__ */ E
|
|
130
|
+
/* @__PURE__ */ O(h, {
|
|
131
|
+
icon: /* @__PURE__ */ O(E, {
|
|
129
132
|
size: s.SM,
|
|
130
|
-
className:
|
|
133
|
+
className: P.star,
|
|
131
134
|
"aria-hidden": !0
|
|
132
135
|
}),
|
|
133
|
-
"aria-label":
|
|
136
|
+
"aria-label": D,
|
|
134
137
|
isSelected: !0,
|
|
135
138
|
onClick: (e) => {
|
|
136
|
-
e.stopPropagation(),
|
|
139
|
+
e.stopPropagation(), Y(t.id);
|
|
137
140
|
}
|
|
138
141
|
})
|
|
139
142
|
]
|
|
140
143
|
});
|
|
141
|
-
return /* @__PURE__ */
|
|
142
|
-
className:
|
|
143
|
-
children: /* @__PURE__ */
|
|
144
|
+
return /* @__PURE__ */ O("li", {
|
|
145
|
+
className: z.has(t.id) ? P.rowLeaving : P.rowEnter,
|
|
146
|
+
children: /* @__PURE__ */ O(f, {
|
|
144
147
|
asChild: !0,
|
|
145
148
|
contentClassName: "max-w-[550px]",
|
|
146
|
-
content: /* @__PURE__ */
|
|
149
|
+
content: /* @__PURE__ */ O(M, {
|
|
147
150
|
description: t.description,
|
|
148
|
-
viewDetailsLabel:
|
|
151
|
+
viewDetailsLabel: A,
|
|
149
152
|
onViewDetails: () => c(t)
|
|
150
153
|
}),
|
|
151
154
|
children: r
|
|
152
155
|
})
|
|
153
156
|
}, t.id);
|
|
154
157
|
})
|
|
155
|
-
}) :
|
|
158
|
+
}) : H && U !== "" ? /* @__PURE__ */ O("p", {
|
|
156
159
|
role: "status",
|
|
157
160
|
"aria-live": "polite",
|
|
158
|
-
className: n(
|
|
159
|
-
children:
|
|
160
|
-
}) : /* @__PURE__ */
|
|
161
|
-
className: n(
|
|
161
|
+
className: n(v, "px-4 py-4 text-start", P.emptyHint),
|
|
162
|
+
children: N
|
|
163
|
+
}) : /* @__PURE__ */ O("p", {
|
|
164
|
+
className: n(v, "px-4 py-4 text-start", P.emptyHint),
|
|
162
165
|
children: w
|
|
163
166
|
})
|
|
164
167
|
})
|
|
165
168
|
}),
|
|
166
|
-
/* @__PURE__ */
|
|
167
|
-
className: n("border-t px-2 py-3",
|
|
168
|
-
children: /* @__PURE__ */
|
|
169
|
-
label:
|
|
169
|
+
/* @__PURE__ */ O("div", {
|
|
170
|
+
className: n("border-t px-2 py-3", P.footer),
|
|
171
|
+
children: /* @__PURE__ */ O(u, {
|
|
172
|
+
label: T,
|
|
170
173
|
className: "w-full justify-center",
|
|
171
174
|
onClick: o
|
|
172
175
|
})
|
|
173
176
|
})
|
|
174
177
|
]
|
|
175
178
|
});
|
|
176
|
-
},
|
|
179
|
+
}, z = ".zip,.md", B = ({ isOpen: e, errorText: t, accept: n = z, labels: r, onClose: i, onFilesSelected: a, onFilesRejected: o }) => {
|
|
180
|
+
let { dialogTitle: s = "Upload skill", dropZoneLabel: c = "Drag and drop it or click here to upload", dropZoneMobileLabel: u = "Click here to upload", formatsLabel: d = "File formats .zip and SKILL.md", fileInputAriaLabel: f = "Upload a skill ZIP archive or a SKILL.md file", closeAriaLabel: h = "Close" } = r ?? {};
|
|
181
|
+
return /* @__PURE__ */ O(p, {
|
|
182
|
+
open: e,
|
|
183
|
+
size: m.Sm,
|
|
184
|
+
header: s,
|
|
185
|
+
closeAriaLabel: h,
|
|
186
|
+
onClose: i,
|
|
187
|
+
children: /* @__PURE__ */ O("div", {
|
|
188
|
+
className: "px-6 py-4",
|
|
189
|
+
children: /* @__PURE__ */ O(l, {
|
|
190
|
+
label: /* @__PURE__ */ k(D, { children: [/* @__PURE__ */ O("span", {
|
|
191
|
+
className: "desktop:hidden",
|
|
192
|
+
children: u
|
|
193
|
+
}), /* @__PURE__ */ O("span", {
|
|
194
|
+
className: "hidden desktop:inline",
|
|
195
|
+
children: c
|
|
196
|
+
})] }),
|
|
197
|
+
description: d,
|
|
198
|
+
ariaLabel: f,
|
|
199
|
+
accept: n,
|
|
200
|
+
errorText: t,
|
|
201
|
+
onChange: a,
|
|
202
|
+
onReject: o
|
|
203
|
+
})
|
|
204
|
+
})
|
|
205
|
+
});
|
|
206
|
+
}, V = ({ isOpen: e, onClose: t, onSelect: n, title: r, renderContent: i }) => /* @__PURE__ */ O(p, {
|
|
177
207
|
open: e,
|
|
178
208
|
header: r,
|
|
179
|
-
size:
|
|
209
|
+
size: m.Lg,
|
|
180
210
|
className: "h-[min(90vh,860px)] !max-w-[min(95vw,1200px)] overflow-hidden",
|
|
181
211
|
onClose: t,
|
|
182
|
-
children: /* @__PURE__ */
|
|
212
|
+
children: /* @__PURE__ */ O("div", {
|
|
183
213
|
className: "h-[min(80vh,840px)] overflow-auto",
|
|
184
|
-
children: /* @__PURE__ */
|
|
214
|
+
children: /* @__PURE__ */ O(_, {
|
|
185
215
|
fallback: null,
|
|
186
216
|
children: e && i(n, t)
|
|
187
217
|
})
|
|
188
218
|
})
|
|
189
|
-
}),
|
|
219
|
+
}), H = (e) => /* @__PURE__ */ O(A, { ...e }), U = (e) => ({
|
|
190
220
|
id: e.url,
|
|
191
221
|
name: e.name,
|
|
192
222
|
description: e.description
|
|
193
|
-
}),
|
|
223
|
+
}), W = (e) => {
|
|
194
224
|
let t = e.split("/").filter((e) => e.length > 0);
|
|
195
225
|
return t[t.length - 1] ?? e;
|
|
196
|
-
},
|
|
197
|
-
let { addMenuLabel: p = "Skills", backLabel: m = "Back", catalogModalTitleLabel: h = "Use skill", emptyQueryHintLabel:
|
|
226
|
+
}, G = ({ isEnabled: e, isSkillsSupported: t, skills: n, sharedWithMe: i, publicSkills: a, favoriteIds: o, onToggleFavorite: s, labels: l, historyChipLabelClassName: u, renderCatalogContent: d, detailsPanelComponent: f }) => {
|
|
227
|
+
let { addMenuLabel: p = "Skills", backLabel: m = "Back", catalogModalTitleLabel: h = "Use skill", emptyQueryHintLabel: g = "Type to filter", unsupportedTooltipLabel: y = "Selected model does not support skills. Remove the skill or select different model to proceed.", panelLabels: b } = l ?? {}, S = e && t, [T, E] = C(!1), [D, k] = C(null), [A, j] = C(null), M = x(() => [
|
|
198
228
|
...n,
|
|
199
229
|
...i ?? [],
|
|
200
230
|
...a ?? []
|
|
@@ -202,61 +232,61 @@ var k = ({ description: e, unsupportedMessage: t, viewDetailsLabel: n = "View de
|
|
|
202
232
|
n,
|
|
203
233
|
i,
|
|
204
234
|
a
|
|
205
|
-
]), P =
|
|
206
|
-
|
|
207
|
-
}, []),
|
|
208
|
-
|
|
209
|
-
}, []),
|
|
210
|
-
name:
|
|
211
|
-
path:
|
|
212
|
-
description:
|
|
213
|
-
isUnsupported:
|
|
235
|
+
]), P = x(() => new Map(M.map((e) => [e.url, e])), [M]), F = x(() => M.filter((e) => o.has(e.url)).map((e) => U(e)), [M, o]), I = x(() => A == null ? null : P.get(A) ?? null, [P, A]), L = I != null && !t, z = v((e) => {
|
|
236
|
+
j(e);
|
|
237
|
+
}, []), B = v(() => {
|
|
238
|
+
j(null);
|
|
239
|
+
}, []), H = A, G = x(() => A == null ? void 0 : [{ url: A }], [A]), K = x(() => I == null ? null : /* @__PURE__ */ O(N, {
|
|
240
|
+
name: I.name,
|
|
241
|
+
path: I.url,
|
|
242
|
+
description: I.description,
|
|
243
|
+
isUnsupported: L,
|
|
214
244
|
onViewDetails: k,
|
|
215
245
|
labels: {
|
|
216
|
-
viewDetailsLabel:
|
|
246
|
+
viewDetailsLabel: b?.viewDetailsLabel,
|
|
217
247
|
unsupportedTooltipLabel: y
|
|
218
248
|
}
|
|
219
249
|
}), [
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
250
|
+
I,
|
|
251
|
+
L,
|
|
252
|
+
b,
|
|
223
253
|
y
|
|
224
|
-
]), q =
|
|
254
|
+
]), q = v((e) => e == null || e.length === 0 ? null : e.map((e) => {
|
|
225
255
|
let t = P.get(e.url);
|
|
226
|
-
return /* @__PURE__ */
|
|
227
|
-
name: t?.name ??
|
|
256
|
+
return /* @__PURE__ */ O(N, {
|
|
257
|
+
name: t?.name ?? W(e.url),
|
|
228
258
|
path: e.url,
|
|
229
259
|
labelClassName: u,
|
|
230
260
|
description: t?.description,
|
|
231
261
|
onViewDetails: k,
|
|
232
|
-
labels: { viewDetailsLabel:
|
|
262
|
+
labels: { viewDetailsLabel: b?.viewDetailsLabel }
|
|
233
263
|
}, e.url);
|
|
234
264
|
}), [
|
|
235
265
|
P,
|
|
236
266
|
u,
|
|
237
|
-
|
|
238
|
-
]), J =
|
|
239
|
-
favorites:
|
|
267
|
+
b
|
|
268
|
+
]), J = v((e) => /* @__PURE__ */ O(R, {
|
|
269
|
+
favorites: F,
|
|
240
270
|
onSelect: (t) => {
|
|
241
|
-
|
|
271
|
+
z(t.id), e();
|
|
242
272
|
},
|
|
243
273
|
onToggleFavorite: s,
|
|
244
274
|
onBrowse: () => {
|
|
245
|
-
e(),
|
|
275
|
+
e(), E(!0);
|
|
246
276
|
},
|
|
247
277
|
onViewDetails: (t) => {
|
|
248
278
|
e(), k(t.id);
|
|
249
279
|
},
|
|
250
|
-
labels:
|
|
280
|
+
labels: b
|
|
251
281
|
}), [
|
|
252
|
-
|
|
253
|
-
|
|
282
|
+
F,
|
|
283
|
+
z,
|
|
254
284
|
s,
|
|
255
|
-
|
|
256
|
-
]), Y =
|
|
285
|
+
b
|
|
286
|
+
]), Y = x(() => S ? {
|
|
257
287
|
key: "skills",
|
|
258
288
|
title: p,
|
|
259
|
-
icon: /* @__PURE__ */
|
|
289
|
+
icon: /* @__PURE__ */ O(w, {
|
|
260
290
|
size: r,
|
|
261
291
|
"aria-hidden": !0,
|
|
262
292
|
stroke: c
|
|
@@ -264,63 +294,63 @@ var k = ({ description: e, unsupportedMessage: t, viewDetailsLabel: n = "View de
|
|
|
264
294
|
renderOverlay: J,
|
|
265
295
|
backLabel: m
|
|
266
296
|
} : void 0, [
|
|
267
|
-
|
|
297
|
+
S,
|
|
268
298
|
p,
|
|
269
299
|
m,
|
|
270
300
|
J
|
|
271
|
-
]), X =
|
|
301
|
+
]), X = x(() => S ? {
|
|
272
302
|
triggerPrefix: "/",
|
|
273
303
|
menuLabel: p,
|
|
274
|
-
emptyQueryHint:
|
|
275
|
-
renderMenu: ({ query: e, close: t }) => /* @__PURE__ */
|
|
276
|
-
favorites:
|
|
304
|
+
emptyQueryHint: g,
|
|
305
|
+
renderMenu: ({ query: e, close: t }) => /* @__PURE__ */ O(R, {
|
|
306
|
+
favorites: F,
|
|
277
307
|
searchQuery: e,
|
|
278
308
|
onSelect: (e) => {
|
|
279
|
-
t({ consumeQuery: !0 }),
|
|
309
|
+
t({ consumeQuery: !0 }), z(e.id);
|
|
280
310
|
},
|
|
281
311
|
onToggleFavorite: s,
|
|
282
312
|
onBrowse: () => {
|
|
283
|
-
t({ consumeQuery: !0 }),
|
|
313
|
+
t({ consumeQuery: !0 }), E(!0);
|
|
284
314
|
},
|
|
285
315
|
onViewDetails: (e) => {
|
|
286
316
|
t({ consumeQuery: !0 }), k(e.id);
|
|
287
317
|
},
|
|
288
|
-
labels:
|
|
318
|
+
labels: b
|
|
289
319
|
})
|
|
290
320
|
} : void 0, [
|
|
291
|
-
|
|
321
|
+
S,
|
|
292
322
|
p,
|
|
293
|
-
|
|
294
|
-
|
|
295
|
-
|
|
323
|
+
g,
|
|
324
|
+
F,
|
|
325
|
+
z,
|
|
296
326
|
s,
|
|
297
|
-
|
|
327
|
+
b
|
|
298
328
|
]);
|
|
299
329
|
return e ? {
|
|
300
330
|
skillMenuOverlay: Y,
|
|
301
331
|
commandMenu: X,
|
|
302
|
-
skillCatalogModal: /* @__PURE__ */
|
|
332
|
+
skillCatalogModal: /* @__PURE__ */ O(V, {
|
|
303
333
|
isOpen: T,
|
|
304
|
-
onClose: () =>
|
|
334
|
+
onClose: () => E(!1),
|
|
305
335
|
onSelect: (e) => {
|
|
306
|
-
|
|
336
|
+
z(e), E(!1);
|
|
307
337
|
},
|
|
308
338
|
title: h,
|
|
309
339
|
renderContent: d
|
|
310
340
|
}),
|
|
311
|
-
skillDetailsPanel: /* @__PURE__ */
|
|
341
|
+
skillDetailsPanel: /* @__PURE__ */ O(_, {
|
|
312
342
|
fallback: null,
|
|
313
|
-
children: /* @__PURE__ */
|
|
314
|
-
skillId:
|
|
343
|
+
children: /* @__PURE__ */ O(f, {
|
|
344
|
+
skillId: D,
|
|
315
345
|
onClose: () => k(null)
|
|
316
346
|
})
|
|
317
347
|
}),
|
|
318
348
|
selectedSkillElement: K,
|
|
319
|
-
selectedSkillPath:
|
|
349
|
+
selectedSkillPath: H,
|
|
320
350
|
selectedSkills: G,
|
|
321
|
-
isSkillUnsupported:
|
|
322
|
-
selectSkill:
|
|
323
|
-
removeSelectedSkill:
|
|
351
|
+
isSkillUnsupported: L,
|
|
352
|
+
selectSkill: z,
|
|
353
|
+
removeSelectedSkill: B,
|
|
324
354
|
renderHistorySkills: q
|
|
325
355
|
} : {
|
|
326
356
|
skillMenuOverlay: void 0,
|
|
@@ -337,4 +367,4 @@ var k = ({ description: e, unsupportedMessage: t, viewDetailsLabel: n = "View de
|
|
|
337
367
|
};
|
|
338
368
|
};
|
|
339
369
|
//#endregion
|
|
340
|
-
export {
|
|
370
|
+
export { N as ChatSkill, R as FavoriteSkillsPanel, j as SKILLS_CLASS, B as SkillArchiveUploadDialog, V as SkillCatalogModal, H as SkillDetailsSidePanel, M as SkillInfoTooltipContent, U as buildFavoriteSkillItem, G as useSkillSelectorOverlay };
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
/** Labels for {@link SkillArchiveUploadDialogProps}; each has an English default. */
|
|
2
|
+
export interface SkillArchiveUploadDialogLabels {
|
|
3
|
+
/** Dialog header. Defaults to `'Upload skill'`. */
|
|
4
|
+
dialogTitle?: string;
|
|
5
|
+
/** Drop-zone label shown on desktop widths. Defaults to `'Drag and drop it or click here to upload'`. */
|
|
6
|
+
dropZoneLabel?: string;
|
|
7
|
+
/** Drop-zone label shown on mobile widths. Defaults to `'Click here to upload'`. */
|
|
8
|
+
dropZoneMobileLabel?: string;
|
|
9
|
+
/** Sentence describing accepted formats, shown under the drop zone. Defaults to `'File formats .zip and SKILL.md'`. */
|
|
10
|
+
formatsLabel?: string;
|
|
11
|
+
/** Accessible name for the native file input. Defaults to `'Upload a skill ZIP archive or a SKILL.md file'`. */
|
|
12
|
+
fileInputAriaLabel?: string;
|
|
13
|
+
/** Accessible name for the dialog's close button. Defaults to `'Close'`. */
|
|
14
|
+
closeAriaLabel?: string;
|
|
15
|
+
}
|
|
16
|
+
/** Props for {@link SkillArchiveUploadDialog}. */
|
|
17
|
+
export interface SkillArchiveUploadDialogProps {
|
|
18
|
+
/** Whether the dialog is open. */
|
|
19
|
+
isOpen: boolean;
|
|
20
|
+
/** Rejection message rendered under the drop area; omit when nothing was rejected. */
|
|
21
|
+
errorText?: string;
|
|
22
|
+
/** `accept` value forwarded to the drop zone/native file input. Defaults to `'.zip,.md'`. */
|
|
23
|
+
accept?: string;
|
|
24
|
+
/** Labels rendered by the dialog; each falls back to an English default. */
|
|
25
|
+
labels?: SkillArchiveUploadDialogLabels;
|
|
26
|
+
/** Called on Escape, the close button, or an outside click. */
|
|
27
|
+
onClose: () => void;
|
|
28
|
+
/** Called with the picked or dropped files that `accept` allowed through. */
|
|
29
|
+
onFilesSelected: (files: File[]) => void;
|
|
30
|
+
/** Called when a drop carried files that `accept` excluded. */
|
|
31
|
+
onFilesRejected: () => void;
|
|
32
|
+
}
|
|
33
|
+
//# sourceMappingURL=skill-archive-upload-dialog-props.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"skill-archive-upload-dialog-props.d.ts","sourceRoot":"","sources":["../../src/models/skill-archive-upload-dialog-props.ts"],"names":[],"mappings":"AAAA,qFAAqF;AACrF,MAAM,WAAW,8BAA8B;IAC7C,mDAAmD;IACnD,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,yGAAyG;IACzG,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,oFAAoF;IACpF,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,uHAAuH;IACvH,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,gHAAgH;IAChH,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,4EAA4E;IAC5E,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,kDAAkD;AAClD,MAAM,WAAW,6BAA6B;IAC5C,kCAAkC;IAClC,MAAM,EAAE,OAAO,CAAC;IAChB,sFAAsF;IACtF,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,6FAA6F;IAC7F,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,4EAA4E;IAC5E,MAAM,CAAC,EAAE,8BAA8B,CAAC;IACxC,+DAA+D;IAC/D,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,6EAA6E;IAC7E,eAAe,EAAE,CAAC,KAAK,EAAE,IAAI,EAAE,KAAK,IAAI,CAAC;IACzC,+DAA+D;IAC/D,eAAe,EAAE,MAAM,IAAI,CAAC;CAC7B"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { RequestSkill } from '
|
|
1
|
+
import { RequestSkill } from '@epam/ai-dial-chat-shared';
|
|
2
2
|
import { CommandMenuConfig, MenuOverlayConfig } from '@epam/ai-dial-conversation-input';
|
|
3
3
|
import { ComponentType, ReactNode } from 'react';
|
|
4
4
|
import { SkillListingEntry } from './favorite-skill-item';
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@epam/ai-dial-skills",
|
|
3
3
|
"description": "Host-agnostic UI for picking a favorite skill to attach to a chat input",
|
|
4
|
-
"version": "1.
|
|
4
|
+
"version": "1.2.0-dev.101",
|
|
5
5
|
"license": "Apache-2.0",
|
|
6
6
|
"type": "module",
|
|
7
7
|
"main": "./index.js",
|
|
@@ -18,12 +18,12 @@
|
|
|
18
18
|
},
|
|
19
19
|
"dependencies": {
|
|
20
20
|
"@tabler/icons-react": "^3.44.0",
|
|
21
|
-
"@epam/ai-dial-catalog": "1.
|
|
22
|
-
"@epam/ai-dial-conversation-input": "1.
|
|
21
|
+
"@epam/ai-dial-catalog": "1.2.0-dev.101",
|
|
22
|
+
"@epam/ai-dial-conversation-input": "1.2.0-dev.101"
|
|
23
23
|
},
|
|
24
24
|
"peerDependencies": {
|
|
25
|
-
"@epam/ai-dial-chat-shared": "1.
|
|
26
|
-
"@epam/ai-dial-ui-kit": "^0.
|
|
25
|
+
"@epam/ai-dial-chat-shared": "1.2.0-dev.101",
|
|
26
|
+
"@epam/ai-dial-ui-kit": "^0.15.0-dev.12",
|
|
27
27
|
"react": "^19.2.8"
|
|
28
28
|
},
|
|
29
29
|
"repository": {
|