@epam/ai-dial-skill-editor 1.2.0-dev.98 → 1.2.0-rc.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.
@@ -1,3 +1,4 @@
1
+ import { TextRefinementLabels } from '../../../chat-shared/src/index.ts';
1
2
  import { EditorThemes } from '@epam/ai-dial-ui-kit';
2
3
  import { ReactNode } from 'react';
3
4
  import { SkillFileNodeKind } from '../types/skill-file-node-kind';
@@ -104,23 +105,83 @@ export interface SkillEditorFileActions {
104
105
  commitBatch: (candidates: SkillFileUploadCandidate[]) => Promise<SkillFileCommitResult>;
105
106
  /** Called after the user confirms removing a non-protected node already present in the tree. */
106
107
  onRemoveNode: (path: string) => void;
108
+ /**
109
+ * Called with the full relative path of a folder the user named inline via
110
+ * "Create folder". Omit to hide every "Create folder" entry. The host adds
111
+ * the folder node to `files`; the library never mutates `files` itself.
112
+ */
113
+ onCreateFolder?: (path: string) => void;
114
+ /**
115
+ * Host path rule for a folder being named inline, run after the library's
116
+ * own empty/separator/duplicate checks. Returns an error message to block
117
+ * the name, or `undefined` to accept it.
118
+ */
119
+ validateFolderPath?: (path: string) => string | undefined;
120
+ /**
121
+ * Expands a picked `.zip` into its files, with paths relative to the
122
+ * archive root. Rejects for an unreadable archive. Omit to hide every
123
+ * "Upload archive from device" entry. The returned entries are staged in
124
+ * the upload dialog and go through `validateBatch`/`commitBatch` like any
125
+ * device file.
126
+ */
127
+ extractArchive?: (archive: File) => Promise<SkillFileSourceEntry[]>;
128
+ /**
129
+ * Opens the host's file-system picker and resolves with the picked files,
130
+ * or `undefined` when the user cancels. Omit to hide every "Open DIAL file
131
+ * system" entry. The returned entries are staged in the upload dialog.
132
+ */
133
+ pickFromFileSystem?: () => Promise<SkillFileSourceEntry[] | undefined>;
134
+ }
135
+ /** A file supplied by a host source (an archive entry or a file-system pick), with its path relative to the add target. */
136
+ export interface SkillFileSourceEntry {
137
+ /** Relative path, using `/` separators, below the folder the user is adding to. */
138
+ path: string;
139
+ /** The file's content. */
140
+ file: File;
107
141
  }
108
142
  /** Text overrides for `SkillEditor`. Every field has an English default. */
109
- export interface SkillEditorLabels {
143
+ export interface SkillEditorLabels extends TextRefinementLabels {
110
144
  /** Files pane heading. Defaults to `'Files'`. */
111
145
  filesHeading?: string;
112
146
  /** Accessible name of the file tree region. Defaults to `'Skill files'`. */
113
147
  filesTreeAriaLabel?: string;
114
- /**
115
- * Label of the control that opens the device file picker to add a
116
- * supporting file. Defaults to `'Upload from device'`.
117
- */
118
- addUploadLabel?: string;
119
- /** Accessible label of a node's remove action. Defaults to `'Remove'`. */
120
- removeLabel?: string;
148
+ /** Label of the Files pane's Add dropdown trigger. Defaults to `'Add'`. */
149
+ addLabel?: string;
150
+ /** Add-menu entry that creates a folder inline. Defaults to `'Create folder'`. */
151
+ createFolderLabel?: string;
152
+ /** Add-menu entry that opens the upload dialog for device files. Defaults to `'Upload files from device'`. */
153
+ uploadFilesLabel?: string;
154
+ /** Add-menu entry that opens the upload dialog for a `.zip` archive. Defaults to `'Upload archive from device'`. */
155
+ uploadArchiveLabel?: string;
156
+ /** Add-menu entry that opens the host's file-system picker. Defaults to `'Open DIAL file system'`. */
157
+ openFileSystemLabel?: string;
158
+ /** Node context-menu submenu that adds next to the node. Defaults to `'Add sibling'`. */
159
+ addSiblingLabel?: string;
160
+ /** Node context-menu action that removes the node. Defaults to `'Delete'`. */
161
+ deleteLabel?: string;
162
+ /** Name prefilled in a folder being created inline. Defaults to `'New folder'`. */
163
+ newFolderDefaultName?: string;
164
+ /** Inline error for an empty folder name. Defaults to `'Enter a folder name'`. */
165
+ folderNameRequiredError?: string;
166
+ /** Inline error for a folder name containing a separator or equal to `.`/`..`. Defaults to `"Folder name can't contain / or \, or be . or .."`. */
167
+ folderNameInvalidError?: string;
168
+ /** Inline error for a folder name that matches a sibling. Defaults to `'An item with this name already exists here'`. */
169
+ folderNameDuplicateError?: string;
170
+ /** Upload dialog title in archive mode. Defaults to `'Upload archive from device'`. */
171
+ uploadArchiveDialogTitle?: string;
172
+ /** Archive-mode drop-zone copy at the `desktop` breakpoint. Defaults to `'Drag and drop a .zip archive or click here to upload'`. */
173
+ uploadArchiveDropZoneLabel?: string;
174
+ /** Archive-mode drop-zone copy at the `mobile` breakpoint. Defaults to `'Click here to upload a .zip archive'`. */
175
+ uploadArchiveDropZoneMobileLabel?: string;
176
+ /** Error shown when an archive can't be read. Defaults to `"Couldn't read this archive"`. */
177
+ uploadArchiveErrorMessage?: string;
178
+ /** Error shown when an archive contains no files. Defaults to `'This archive has no files'`. */
179
+ uploadArchiveEmptyMessage?: string;
180
+ /** Accessible label of the spinner shown while an archive is expanded. Defaults to `'Reading archive'`. */
181
+ uploadArchiveExtractingAriaLabel?: string;
121
182
  /** Collapsed mobile summary label. Defaults to `'Editing file'`. */
122
183
  editingFileLabel?: string;
123
- /** Main-pane heading, given the selected node's name. Defaults to the name itself. */
184
+ /** Setup-section heading for a selected supporting file or folder, given its name. Defaults to the name itself; `SKILL.md` is always headed by its path. */
124
185
  selectedFileHeading?: (name: string) => string;
125
186
  /** Name field label. Defaults to `'Name'`. */
126
187
  nameLabel?: string;
@@ -191,7 +252,11 @@ export interface SkillEditorConflict {
191
252
  }
192
253
  /** CSS custom-property color overrides for `SkillEditor`. */
193
254
  export interface SkillEditorColors {
194
- /** Color of the "Files" and selected-file section headings. Defaults to `--text-primary`. */
255
+ /** Refinement status text color. Defaults to the kit `CaptionText` color (`--text-secondary`). */
256
+ refineActionText?: string;
257
+ /** Refinement error color. Defaults to --text-error. */
258
+ refineErrorText?: string;
259
+ /** Color of the "Files" heading and of the Metadata and Setup section headings. Defaults to `--text-primary`. */
195
260
  title?: string;
196
261
  /** Color of the hand-rendered Instructions field label. Defaults to `--text-secondary`. */
197
262
  helperText?: string;
@@ -200,12 +265,16 @@ export interface SkillEditorColors {
200
265
  }
201
266
  /** Typography class overrides for `SkillEditor`. */
202
267
  export interface SkillEditorTypography {
203
- /** Typography class applied to the "Files" and selected-file section headings. Defaults to `'dial-body-semi-text'`. */
268
+ /** Refinement feedback typography. Defaults to the kit `CaptionText` class (`'dial-tiny-text'`). */
269
+ refineFeedbackClassName?: string;
270
+ /** Typography class applied to the "Files" heading. Defaults to `'dial-body-semi-text'`. */
204
271
  titleClassName?: string;
205
272
  /** Typography class applied to the hand-rendered Instructions field label. Defaults to `'dial-tiny-semi-text'`. */
206
273
  helperTextClassName?: string;
207
- /** Color class applied to the file tree "Remove" context-menu icon. Defaults to `'text-secondary'`. */
274
+ /** Color class applied to the file tree "Delete" context-menu icon. Unset by default, so the icon takes the item's danger color. */
208
275
  removeIconClassName?: string;
276
+ /** Color class applied to the file tree Add-menu entry icons. Defaults to `'text-secondary'`. */
277
+ menuIconClassName?: string;
209
278
  }
210
279
  /** Grouped style overrides for `SkillEditor`. */
211
280
  export interface SkillEditorStyles {
@@ -216,6 +285,10 @@ export interface SkillEditorStyles {
216
285
  }
217
286
  /** Props for `SkillEditor`. */
218
287
  export interface SkillEditorProps {
288
+ /** Optional Description rewrite callback; omission hides its action. */
289
+ onRefineDescription?: (value: string, signal: AbortSignal) => Promise<string>;
290
+ /** Optional Instructions rewrite callback; omission hides its action. */
291
+ onRefineInstructions?: (value: string, signal: AbortSignal) => Promise<string>;
219
292
  /**
220
293
  * Values to seed the fields with. Changing this object's identity re-seeds
221
294
  * the form, so hosts that load asynchronously should memoise it and only
@@ -236,11 +309,11 @@ export interface SkillEditorProps {
236
309
  isLoading?: boolean;
237
310
  /** Whether loading the skill failed; renders an error state with a retry instead of the form. Defaults to `false`. */
238
311
  hasLoadError?: boolean;
239
- /** Whether a save is in flight; disables submission. Defaults to `false`. */
312
+ /** Whether a save is in flight; disables submission and Cancel. Defaults to `false`. */
240
313
  isSubmitting?: boolean;
241
314
  /** Inline validation messages to render under the fields. */
242
315
  errors?: SkillEditorErrors;
243
- /** General submit-time error (e.g. a naming conflict or a server error) rendered in a `role="alert"` region. */
316
+ /** General submit-time error (e.g. a naming conflict or a server error) rendered in the `role="alert"` region above the Setup section. */
244
317
  submitError?: string;
245
318
  /**
246
319
  * A save-time conflict (e.g. a stale ETag), distinct from `submitError`.
@@ -255,7 +328,7 @@ export interface SkillEditorProps {
255
328
  * included in submitted values unchanged. The host sets this in edit mode,
256
329
  * since DIAL Core has no rename/move operation for a skill; the library
257
330
  * itself has no notion of "edit mode" and infers no policy from this flag
258
- * beyond disabling the field.
331
+ * beyond rendering the field read-only.
259
332
  */
260
333
  isNameReadOnly?: boolean;
261
334
  /**
@@ -290,12 +363,26 @@ export interface SkillEditorProps {
290
363
  * `labels.supportingFileNote` when omitted.
291
364
  */
292
365
  supportingFileContent?: ReactNode;
366
+ /**
367
+ * Host-rendered content of an Aside section in an extra column at the
368
+ * inline end, below the header, on desktop; stacked after the form on
369
+ * mobile/tablet. The library renders it verbatim with no knowledge of what
370
+ * it contains. Not rendered while the skill is loading or failed to load.
371
+ * Omit for the default layout.
372
+ */
373
+ asideData?: ReactNode;
293
374
  /** Called with the current values when the form is submitted. */
294
375
  onSubmit: (values: SkillEditorValues) => void;
295
376
  /** Called when the form is dismissed without saving. */
296
377
  onCancel: () => void;
297
378
  /** Called when the retry button in the load-error state is activated. */
298
379
  onRetry?: () => void;
380
+ /**
381
+ * Called when the retry action beside `submitError` is activated. Supply it
382
+ * only for a failure a plain re-send can clear, such as an unavailable
383
+ * service; when omitted, the error renders as text with no action.
384
+ */
385
+ onRetrySubmit?: () => void;
299
386
  /** Text overrides. */
300
387
  labels?: SkillEditorLabels;
301
388
  /** Style overrides. */
@@ -1 +1 @@
1
- {"version":3,"file":"skill-editor-props.d.ts","sourceRoot":"","sources":["../../src/models/skill-editor-props.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AACvC,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAEvE;;;;GAIG;AACH,MAAM,WAAW,iBAAiB;IAChC,+DAA+D;IAC/D,IAAI,EAAE,MAAM,CAAC;IACb,6CAA6C;IAC7C,IAAI,EAAE,MAAM,CAAC;IACb,+CAA+C;IAC/C,IAAI,EAAE,iBAAiB,CAAC;CACzB;AAED,8CAA8C;AAC9C,MAAM,WAAW,iBAAiB;IAChC,uEAAuE;IACvE,IAAI,EAAE,MAAM,CAAC;IACb,gDAAgD;IAChD,WAAW,EAAE,MAAM,CAAC;IACpB,gDAAgD;IAChD,YAAY,EAAE,MAAM,CAAC;CACtB;AAED;;;GAGG;AACH,MAAM,WAAW,iBAAiB;IAChC,0CAA0C;IAC1C,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,iDAAiD;IACjD,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,mDAAmD;IACnD,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,8FAA8F;AAC9F,oBAAY,sBAAsB;IAChC,gEAAgE;IAChE,cAAc,oBAAoB;IAClC,uGAAuG;IACvG,QAAQ,aAAa;CACtB;AAED,yEAAyE;AACzE,oBAAY,yBAAyB;IACnC,iDAAiD;IACjD,KAAK,UAAU;IACf,sEAAsE;IACtE,OAAO,YAAY;CACpB;AAED,6EAA6E;AAC7E,MAAM,WAAW,wBAAwB;IACvC,gFAAgF;IAChF,EAAE,EAAE,MAAM,CAAC;IACX,wCAAwC;IACxC,IAAI,EAAE,IAAI,CAAC;IACX,iGAAiG;IACjG,IAAI,EAAE,MAAM,CAAC;CACd;AAED,wDAAwD;AACxD,MAAM,WAAW,yBAAyB;IACxC,gEAAgE;IAChE,WAAW,EAAE,MAAM,CAAC;IACpB,8DAA8D;IAC9D,MAAM,EAAE,yBAAyB,CAAC;IAClC,mFAAmF;IACnF,IAAI,EAAE,sBAAsB,CAAC;IAC7B,0FAA0F;IAC1F,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,wGAAwG;AACxG,MAAM,WAAW,mBAAmB;IAClC,iEAAiE;IACjE,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,0DAA0D;AAC1D,MAAM,WAAW,qBAAqB;IACpC,0GAA0G;IAC1G,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;;;GAIG;AACH,MAAM,WAAW,sBAAsB;IACrC;;;OAGG;IACH,aAAa,EAAE,CAAC,UAAU,EAAE,wBAAwB,EAAE,KAAK,OAAO,CAAC;QACjE,mEAAmE;QACnE,OAAO,EAAE,yBAAyB,EAAE,CAAC;QACrC,mDAAmD;QACnD,WAAW,EAAE,mBAAmB,EAAE,CAAC;KACpC,CAAC,CAAC;IACH;;;;;OAKG;IACH,WAAW,EAAE,CACX,UAAU,EAAE,wBAAwB,EAAE,KACnC,OAAO,CAAC,qBAAqB,CAAC,CAAC;IACpC,gGAAgG;IAChG,YAAY,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;CACtC;AAED,4EAA4E;AAC5E,MAAM,WAAW,iBAAiB;IAChC,iDAAiD;IACjD,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,4EAA4E;IAC5E,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B;;;OAGG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,0EAA0E;IAC1E,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,oEAAoE;IACpE,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,sFAAsF;IACtF,mBAAmB,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,MAAM,CAAC;IAC/C,8CAA8C;IAC9C,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,sEAAsE;IACtE,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,sIAAsI;IACtI,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,4DAA4D;IAC5D,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,8FAA8F;IAC9F,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAChC,+DAA+D;IAC/D,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,iGAAiG;IACjG,uBAAuB,CAAC,EAAE,MAAM,CAAC;IACjC,mDAAmD;IACnD,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,mDAAmD;IACnD,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,+EAA+E;IAC/E,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,qHAAqH;IACrH,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,0EAA0E;IAC1E,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,0HAA0H;IAC1H,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,gIAAgI;IAChI,4BAA4B,CAAC,EAAE,MAAM,CAAC;IACtC,kKAAkK;IAClK,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,sJAAsJ;IACtJ,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,qEAAqE;IACrE,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,oFAAoF;IACpF,0BAA0B,CAAC,EAAE,MAAM,CAAC;IACpC,kHAAkH;IAClH,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,+GAA+G;IAC/G,yBAAyB,CAAC,EAAE,MAAM,CAAC;IACnC,+FAA+F;IAC/F,uBAAuB,CAAC,EAAE,MAAM,CAAC;IACjC,4HAA4H;IAC5H,0BAA0B,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,MAAM,CAAC;IACtD,uIAAuI;IACvI,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,uFAAuF;IACvF,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,wEAAwE;IACxE,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,mHAAmH;IACnH,0BAA0B,CAAC,EAAE,MAAM,CAAC;IACpC,+JAA+J;IAC/J,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,0GAA0G;IAC1G,mBAAmB,CAAC,EAAE,MAAM,CAAC;CAC9B;AAED;;;;;GAKG;AACH,MAAM,WAAW,mBAAmB;IAClC,0DAA0D;IAC1D,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,6DAA6D;AAC7D,MAAM,WAAW,iBAAiB;IAChC,6FAA6F;IAC7F,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,2FAA2F;IAC3F,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,wGAAwG;IACxG,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,oDAAoD;AACpD,MAAM,WAAW,qBAAqB;IACpC,uHAAuH;IACvH,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,mHAAmH;IACnH,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,uGAAuG;IACvG,mBAAmB,CAAC,EAAE,MAAM,CAAC;CAC9B;AAED,iDAAiD;AACjD,MAAM,WAAW,iBAAiB;IAChC,yDAAyD;IACzD,MAAM,CAAC,EAAE,iBAAiB,CAAC;IAC3B,kCAAkC;IAClC,UAAU,CAAC,EAAE,qBAAqB,CAAC;CACpC;AAED,+BAA+B;AAC/B,MAAM,WAAW,gBAAgB;IAC/B;;;;OAIG;IACH,aAAa,CAAC,EAAE,OAAO,CAAC,iBAAiB,CAAC,CAAC;IAC3C,oHAAoH;IACpH,KAAK,EAAE,iBAAiB,EAAE,CAAC;IAC3B,2EAA2E;IAC3E,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,oGAAoG;IACpG,oBAAoB,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IAC9C,8FAA8F;IAC9F,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;IACzB,4DAA4D;IAC5D,qBAAqB,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,IAAI,CAAC;IAClD,4EAA4E;IAC5E,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,sHAAsH;IACtH,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,6EAA6E;IAC7E,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,6DAA6D;IAC7D,MAAM,CAAC,EAAE,iBAAiB,CAAC;IAC3B,gHAAgH;IAChH,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;;;OAIG;IACH,QAAQ,CAAC,EAAE,mBAAmB,CAAC;IAC/B,kHAAkH;IAClH,cAAc,CAAC,EAAE,MAAM,IAAI,CAAC;IAC5B;;;;;;OAMG;IACH,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB;;;;OAIG;IACH,aAAa,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,IAAI,CAAC;IAC3C;;;;;;;;OAQG;IACH,cAAc,CAAC,EAAE,CAAC,MAAM,EAAE,iBAAiB,KAAK,IAAI,CAAC;IACrD,qCAAqC;IACrC,WAAW,EAAE,sBAAsB,CAAC;IACpC,uDAAuD;IACvD,MAAM,EAAE,MAAM,IAAI,CAAC;IACnB,wEAAwE;IACxE,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,0CAA0C;IAC1C,KAAK,EAAE,MAAM,CAAC;IACd;;;;;;OAMG;IACH,qBAAqB,CAAC,EAAE,SAAS,CAAC;IAClC,iEAAiE;IACjE,QAAQ,EAAE,CAAC,MAAM,EAAE,iBAAiB,KAAK,IAAI,CAAC;IAC9C,wDAAwD;IACxD,QAAQ,EAAE,MAAM,IAAI,CAAC;IACrB,yEAAyE;IACzE,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,sBAAsB;IACtB,MAAM,CAAC,EAAE,iBAAiB,CAAC;IAC3B,uBAAuB;IACvB,MAAM,CAAC,EAAE,iBAAiB,CAAC;IAC3B,qFAAqF;IACrF,GAAG,CAAC,EAAE,KAAK,GAAG,KAAK,CAAC;IACpB,0IAA0I;IAC1I,uBAAuB,CAAC,EAAE,YAAY,CAAC;CACxC"}
1
+ {"version":3,"file":"skill-editor-props.d.ts","sourceRoot":"","sources":["../../src/models/skill-editor-props.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@epam/ai-dial-skill-editor",
3
3
  "description": "Host-agnostic form for authoring a DIAL Skill, with an inline supporting-file tree",
4
- "version": "1.2.0-dev.98",
4
+ "version": "1.2.0-rc.0",
5
5
  "license": "Apache-2.0",
6
6
  "type": "module",
7
7
  "main": "./index.js",
@@ -20,12 +20,12 @@
20
20
  "@tabler/icons-react": "^3.44.0",
21
21
  "@uiw/react-markdown-preview": "^5.2.1",
22
22
  "@uiw/react-md-editor": "^4.1.1",
23
- "@epam/ai-dial-builder-form": "1.2.0-dev.98"
23
+ "@epam/ai-dial-builder-form": "1.2.0-rc.0"
24
24
  },
25
25
  "peerDependencies": {
26
- "@epam/ai-dial-chat-shared": "1.2.0-dev.98",
27
- "@epam/ai-dial-ui-kit": "^0.15.0-dev.12",
28
- "@epam/ai-dial-react-file-manager": "^0.3.0-dev.4",
26
+ "@epam/ai-dial-chat-shared": "1.2.0-rc.0",
27
+ "@epam/ai-dial-ui-kit": "^0.15.0",
28
+ "@epam/ai-dial-react-file-manager": "^0.3.0",
29
29
  "react": "^19.2.8"
30
30
  },
31
31
  "repository": {
@@ -0,0 +1,10 @@
1
+ /** Where an add action was started from, which decides the folder it adds to. */
2
+ export declare enum SkillAddSource {
3
+ /** The Files pane header's Add dropdown: the selected folder, else the root. */
4
+ Header = "header",
5
+ /** The add entries listed directly in a folder's context menu: that folder. */
6
+ Child = "child",
7
+ /** A node's "Add sibling" submenu: the node's parent folder. */
8
+ Sibling = "sibling"
9
+ }
10
+ //# sourceMappingURL=skill-add-source.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"skill-add-source.d.ts","sourceRoot":"","sources":["../../src/types/skill-add-source.ts"],"names":[],"mappings":"AAAA,iFAAiF;AACjF,oBAAY,cAAc;IACxB,gFAAgF;IAChF,MAAM,WAAW;IACjB,+EAA+E;IAC/E,KAAK,UAAU;IACf,gEAAgE;IAChE,OAAO,YAAY;CACpB"}
@@ -0,0 +1,8 @@
1
+ /** What the upload dialog stages: device files as-is, or the entries of `.zip` archives. */
2
+ export declare enum SkillFileUploadMode {
3
+ /** Every picked or dropped file is staged as one candidate. */
4
+ Files = "files",
5
+ /** Every picked or dropped `.zip` is expanded through `fileActions.extractArchive` and its entries staged. */
6
+ Archive = "archive"
7
+ }
8
+ //# sourceMappingURL=skill-file-upload-mode.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"skill-file-upload-mode.d.ts","sourceRoot":"","sources":["../../src/types/skill-file-upload-mode.ts"],"names":[],"mappings":"AAAA,4FAA4F;AAC5F,oBAAY,mBAAmB;IAC7B,+DAA+D;IAC/D,KAAK,UAAU;IACf,8GAA8G;IAC9G,OAAO,YAAY;CACpB"}
@@ -0,0 +1,8 @@
1
+ /** Which rendering of the Files pane an action started from; the pane renders once per breakpoint. */
2
+ export declare enum SkillFilesPane {
3
+ /** The collapsible Files accordion shown below the `desktop` breakpoint. */
4
+ Mobile = "mobile",
5
+ /** The always-visible Files sidebar shown at the `desktop` breakpoint. */
6
+ Desktop = "desktop"
7
+ }
8
+ //# sourceMappingURL=skill-files-pane.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"skill-files-pane.d.ts","sourceRoot":"","sources":["../../src/types/skill-files-pane.ts"],"names":[],"mappings":"AAAA,sGAAsG;AACtG,oBAAY,cAAc;IACxB,4EAA4E;IAC5E,MAAM,WAAW;IACjB,0EAA0E;IAC1E,OAAO,YAAY;CACpB"}
@@ -1,5 +1,6 @@
1
1
  import { DialFile } from '@epam/ai-dial-react-file-manager';
2
2
  import { SkillFileTreeNode } from '../models/skill-editor-props';
3
+ import { SkillAddSource } from '../types/skill-add-source';
3
4
  /**
4
5
  * Builds the nested `DialFile[]` tree `DialFoldersTree` expects from the flat
5
6
  * `SkillFileTreeNode[]` list, synthesising any implicit intermediate folders
@@ -7,4 +8,35 @@ import { SkillFileTreeNode } from '../models/skill-editor-props';
7
8
  * folder node was added for it).
8
9
  */
9
10
  export declare const buildDialFileTree: (nodes: SkillFileTreeNode[]) => DialFile[];
11
+ /** Joins a folder path (`''` for the skill root) and a relative path below it. */
12
+ export declare const joinSkillPath: (folderPath: string, relativePath: string) => string;
13
+ /** The folder containing `path`, or `''` for a top-level entry. */
14
+ export declare const parentSkillPath: (path: string) => string;
15
+ /**
16
+ * Resolves the folder an add action targets (`''` is the skill root). The
17
+ * header adds into the selected folder, or the root when a file (or nothing)
18
+ * is selected; a folder's own menu entries add into it; "Add sibling" adds
19
+ * next to the node.
20
+ */
21
+ export declare const resolveAddTarget: (source: SkillAddSource, node: SkillFileTreeNode | undefined) => string;
22
+ /**
23
+ * Names of the direct children of `folderPath`, including folders that exist
24
+ * only implicitly through a deeper file path.
25
+ */
26
+ export declare const listChildNames: (nodes: SkillFileTreeNode[], folderPath: string) => Set<string>;
27
+ /** Messages `validateFolderName` returns, resolved from the editor's labels. */
28
+ export interface FolderNameMessages {
29
+ /** The trimmed name is empty. */
30
+ required: string;
31
+ /** The name contains a separator or is `.`/`..`. */
32
+ invalid: string;
33
+ /** A sibling with the same name already exists. */
34
+ duplicate: string;
35
+ }
36
+ /**
37
+ * Structural checks for a folder being named inline, in order: required,
38
+ * separators and dot segments, then a clash with an existing sibling (or the
39
+ * root `SKILL.md`). Returns the first failing message, or `undefined`.
40
+ */
41
+ export declare const validateFolderName: (rawName: string, siblingNames: Set<string>, messages: FolderNameMessages) => string | undefined;
10
42
  //# sourceMappingURL=file-tree.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"file-tree.d.ts","sourceRoot":"","sources":["../../src/utils/file-tree.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,kCAAkC,CAAC;AACjE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;AAatE;;;;;GAKG;AACH,eAAO,MAAM,iBAAiB,GAAI,OAAO,iBAAiB,EAAE,KAAG,QAAQ,EAuDtE,CAAC"}
1
+ {"version":3,"file":"file-tree.d.ts","sourceRoot":"","sources":["../../src/utils/file-tree.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,kCAAkC,CAAC;AACjE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;AACtE,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAa3D;;;;;GAKG;AACH,eAAO,MAAM,iBAAiB,GAAI,OAAO,iBAAiB,EAAE,KAAG,QAAQ,EAuDtE,CAAC;AAEF,kFAAkF;AAClF,eAAO,MAAM,aAAa,GACxB,YAAY,MAAM,EAClB,cAAc,MAAM,KACnB,MAAuE,CAAC;AAE3E,mEAAmE;AACnE,eAAO,MAAM,eAAe,GAAI,MAAM,MAAM,KAAG,MAClB,CAAC;AAE9B;;;;;GAKG;AACH,eAAO,MAAM,gBAAgB,GAC3B,QAAQ,cAAc,EACtB,MAAM,iBAAiB,GAAG,SAAS,KAClC,MAUF,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,cAAc,GACzB,OAAO,iBAAiB,EAAE,EAC1B,YAAY,MAAM,KACjB,GAAG,CAAC,MAAM,CASZ,CAAC;AAEF,gFAAgF;AAChF,MAAM,WAAW,kBAAkB;IACjC,iCAAiC;IACjC,QAAQ,EAAE,MAAM,CAAC;IACjB,oDAAoD;IACpD,OAAO,EAAE,MAAM,CAAC;IAChB,mDAAmD;IACnD,SAAS,EAAE,MAAM,CAAC;CACnB;AAED;;;;GAIG;AACH,eAAO,MAAM,kBAAkB,GAC7B,SAAS,MAAM,EACf,cAAc,GAAG,CAAC,MAAM,CAAC,EACzB,UAAU,kBAAkB,KAC3B,MAAM,GAAG,SAQX,CAAC"}
@@ -0,0 +1,4 @@
1
+ import { TablerIcon } from '@tabler/icons-react';
2
+ /** Returns a decorative Tabler icon at the kit stroke, sized `DIAL_ICON_SIZE.MD` unless `size` is given. */
3
+ export declare const renderIcon: (Icon: TablerIcon, className?: string, size?: number) => import("react").JSX.Element;
4
+ //# sourceMappingURL=icon.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"icon.d.ts","sourceRoot":"","sources":["../../src/utils/icon.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAEtD,4GAA4G;AAC5G,eAAO,MAAM,UAAU,GACrB,MAAM,UAAU,EAChB,YAAY,MAAM,EAClB,OAAM,MAA0B,gCAQjC,CAAC"}