@rt-tools/ui-kit-v2 0.19.1 → 0.21.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.
Files changed (44) hide show
  1. package/fesm2022/rt-tools-ui-kit-v2-core.mjs +61 -1
  2. package/fesm2022/rt-tools-ui-kit-v2-core.mjs.map +1 -1
  3. package/fesm2022/rt-tools-ui-kit-v2-dynamic-selector.mjs +129 -18
  4. package/fesm2022/rt-tools-ui-kit-v2-dynamic-selector.mjs.map +1 -1
  5. package/fesm2022/rt-tools-ui-kit-v2-empty-state.mjs +2 -2
  6. package/fesm2022/rt-tools-ui-kit-v2-empty-state.mjs.map +1 -1
  7. package/fesm2022/rt-tools-ui-kit-v2-icon.mjs +28 -11
  8. package/fesm2022/rt-tools-ui-kit-v2-icon.mjs.map +1 -1
  9. package/fesm2022/rt-tools-ui-kit-v2-input-number.mjs +4 -3
  10. package/fesm2022/rt-tools-ui-kit-v2-input-number.mjs.map +1 -1
  11. package/fesm2022/rt-tools-ui-kit-v2-input.mjs +4 -3
  12. package/fesm2022/rt-tools-ui-kit-v2-input.mjs.map +1 -1
  13. package/fesm2022/rt-tools-ui-kit-v2-rich-editor.mjs +100 -19
  14. package/fesm2022/rt-tools-ui-kit-v2-rich-editor.mjs.map +1 -1
  15. package/fesm2022/rt-tools-ui-kit-v2-thread-list.mjs +15 -9
  16. package/fesm2022/rt-tools-ui-kit-v2-thread-list.mjs.map +1 -1
  17. package/package.json +1 -1
  18. package/rt-tools-ui-kit-v2-0.21.0.tgz +0 -0
  19. package/src/assets/icons-material/history.fill.svg +5 -0
  20. package/src/assets/icons-material/history.svg +5 -0
  21. package/src/assets/icons-material/window-minimize.fill.svg +5 -0
  22. package/src/assets/icons-material/window-minimize.svg +5 -0
  23. package/src/lib/components/dynamic-selector/CONTEXT.md +24 -3
  24. package/src/lib/components/dynamic-selector/dynamic-input/rt-dynamic-input.component.scss +4 -5
  25. package/src/lib/components/dynamic-selector/list/rt-dynamic-selector-list.component.scss +50 -6
  26. package/src/lib/components/dynamic-selector/popup/rt-dynamic-selector-popup-options.scss +108 -0
  27. package/src/lib/components/dynamic-selector/popup/rt-dynamic-selector-popup.component.scss +28 -23
  28. package/src/lib/components/dynamic-selector/rt-dynamic-selector.component.scss +4 -5
  29. package/src/lib/components/empty-state/CONTEXT.md +3 -1
  30. package/src/lib/components/empty-state/rt-empty-state.component.scss +9 -5
  31. package/src/lib/components/icon/CONTEXT.md +7 -0
  32. package/src/lib/components/input/rt-input.component.scss +17 -0
  33. package/src/lib/components/input-number/rt-input-number.component.scss +15 -0
  34. package/src/lib/components/markdown-text/CONTEXT.md +3 -0
  35. package/src/lib/components/thread-list/CONTEXT.md +3 -1
  36. package/src/rich-editor/lib/components/ai-chat/CONTEXT.md +15 -0
  37. package/src/rich-editor/lib/components/ai-chat/copy/rt-ai-chat-copy.component.scss +5 -0
  38. package/src/rich-editor/lib/components/ai-chat/rt-ai-chat.component.scss +8 -1
  39. package/types/rt-tools-ui-kit-v2-core.d.ts +81 -5
  40. package/types/rt-tools-ui-kit-v2-dynamic-selector.d.ts +45 -3
  41. package/types/rt-tools-ui-kit-v2-icon.d.ts +14 -3
  42. package/types/rt-tools-ui-kit-v2-rich-editor.d.ts +23 -6
  43. package/types/rt-tools-ui-kit-v2-thread-list.d.ts +13 -8
  44. package/rt-tools-ui-kit-v2-0.19.1.tgz +0 -0
@@ -1544,20 +1544,38 @@ const RT_CONSUMER_HANDLE_NAMES = [
1544
1544
  '--rt-dialog-title-transform',
1545
1545
  '--rt-dialog-title-weight',
1546
1546
  '--rt-dialog-width',
1547
+ '--rt-dynamic-selector-list-actions-gap',
1548
+ '--rt-dynamic-selector-list-actions-offset',
1549
+ '--rt-dynamic-selector-list-actions-padding-end',
1547
1550
  '--rt-dynamic-selector-list-add-color',
1551
+ '--rt-dynamic-selector-list-controls-divider-color',
1552
+ '--rt-dynamic-selector-list-controls-divider-width',
1553
+ '--rt-dynamic-selector-list-controls-gap',
1554
+ '--rt-dynamic-selector-list-handle-padding-end',
1555
+ '--rt-dynamic-selector-list-handle-padding-start',
1556
+ '--rt-dynamic-selector-list-row-padding-end',
1557
+ '--rt-dynamic-selector-list-title-gap',
1548
1558
  '--rt-dynamic-selector-popup-bg',
1549
1559
  '--rt-dynamic-selector-popup-border-width',
1550
1560
  '--rt-dynamic-selector-popup-button-font-size',
1551
1561
  '--rt-dynamic-selector-popup-button-height',
1562
+ '--rt-dynamic-selector-popup-empty-gap',
1552
1563
  '--rt-dynamic-selector-popup-empty-icon-size',
1553
1564
  '--rt-dynamic-selector-popup-empty-icon-wrap-bg',
1554
1565
  '--rt-dynamic-selector-popup-empty-text-color',
1555
1566
  '--rt-dynamic-selector-popup-empty-text-size',
1556
1567
  '--rt-dynamic-selector-popup-empty-text-weight',
1557
1568
  '--rt-dynamic-selector-popup-foot-border-width',
1569
+ '--rt-dynamic-selector-popup-foot-padding',
1570
+ '--rt-dynamic-selector-popup-highlight-bg',
1571
+ '--rt-dynamic-selector-popup-highlight-color',
1572
+ '--rt-dynamic-selector-popup-highlight-radius',
1573
+ '--rt-dynamic-selector-popup-highlight-weight',
1558
1574
  '--rt-dynamic-selector-popup-max-height',
1559
1575
  '--rt-dynamic-selector-popup-min-height',
1560
1576
  '--rt-dynamic-selector-popup-nav-color',
1577
+ '--rt-dynamic-selector-popup-option-line-height',
1578
+ '--rt-dynamic-selector-popup-option-min-height',
1561
1579
  '--rt-dynamic-selector-popup-padding',
1562
1580
  '--rt-dynamic-selector-popup-radius',
1563
1581
  '--rt-dynamic-selector-popup-shadow',
@@ -2056,6 +2074,48 @@ function parseMarkdown(source) {
2056
2074
  return blocks;
2057
2075
  }
2058
2076
 
2077
+ /** Между блоками — пустая строка, как между абзацами на экране. */
2078
+ const BLOCK_SEPARATOR = '\n\n';
2079
+ /** Между ячейками строки таблицы — табуляция: так таблицу понимают редакторы и таблицы при вставке. */
2080
+ const CELL_SEPARATOR = '\t';
2081
+ function inlineText(nodes) {
2082
+ return nodes
2083
+ .map((node) => {
2084
+ if (node.kind === ERtMarkdownInline.Break) {
2085
+ return '\n';
2086
+ }
2087
+ return node.children.length > 0 ? inlineText(node.children) : node.text;
2088
+ })
2089
+ .join('');
2090
+ }
2091
+ function tableRow(cells) {
2092
+ return cells.map((cell) => inlineText(cell)).join(CELL_SEPARATOR);
2093
+ }
2094
+ function blockText(block) {
2095
+ switch (block.kind) {
2096
+ case ERtMarkdownBlock.List:
2097
+ return block.items.map((item) => inlineText(item.content)).join('\n');
2098
+ case ERtMarkdownBlock.Code:
2099
+ return block.code;
2100
+ case ERtMarkdownBlock.Table:
2101
+ return [block.head, ...block.rows].map(tableRow).join('\n');
2102
+ default:
2103
+ return inlineText(block.content);
2104
+ }
2105
+ }
2106
+ /**
2107
+ * Видимый текст разметки без её знаков: то, что `rt-markdown-text` показывает читателю.
2108
+ *
2109
+ * Строится по тому же дереву узлов, что рисует компонент, поэтому `##`, `**`, маркеры списков и
2110
+ * черта таблицы в вывод не попадают, а то, что разборщик оставил текстом, остаётся текстом.
2111
+ *
2112
+ * @param source Текст в разметке. Пустота и отсутствие значения дают пустую строку.
2113
+ * @returns Блоки через пустую строку, пункты списка и строки таблицы — построчно, ячейки — через табуляцию.
2114
+ */
2115
+ function markdownToPlainText(source) {
2116
+ return parseMarkdown(source).map(blockText).join(BLOCK_SEPARATOR);
2117
+ }
2118
+
2059
2119
  /** Значение — ровно `true` (флаговые атрибуты). */
2060
2120
  function isTrue(value) {
2061
2121
  return value === true;
@@ -2684,5 +2744,5 @@ const iconsName = [
2684
2744
  * Generated bundle index. Do not edit.
2685
2745
  */
2686
2746
 
2687
- export { BreakpointsService, ERtDataTableCellColor, ERtDataTableColumnType, ERtDataTableFilterType, ERtMarkdownBlock, ERtMarkdownInline, ERtStorageKeys, MessageBus, NotificationBus, RT_CONSUMER_HANDLE_NAMES, RT_DATA_TABLE_PRESET_FROM_HOST, RT_DESIGN_TOKEN_NAMES, RT_KIT_CONFIG, RT_KIT_LABELS, RT_KIT_LABELS_EN, RT_KIT_LOCALE, RT_KIT_TRANSLATOR, RT_MATERIAL_PRESET_CLASS, RT_MATERIAL_PRESET_SELECTOR, RT_PRESET_MATERIAL_CLASS, RT_RADIUS_DEFAULT, RT_RADIUS_STEPS, RT_THEME_SCOPE_ATTRIBUTE, RtDayStampPipe, RtInfiniteScrollDirective, RtKitLabelPipe, RtThemeScopeDirective, SEARCH_DEBOUNCE_MS, ThemeService, breakNode, carryThemeScope, carryThemeScopeOfFocus, coerceQuillDeltaOutput, fileNameFromUrl, formatFileSize, iconsName, materialPresetClassesOf, materialPresetClassesOfFocus, normalizeQuillDelta, parseInline, parseMarkdown, provideRtKit, provideRtKitLabels, rtKitDefault, rtKitLabel, searchDebounce, themeScopeOf, themeScopeOfFocus };
2747
+ export { BreakpointsService, ERtDataTableCellColor, ERtDataTableColumnType, ERtDataTableFilterType, ERtMarkdownBlock, ERtMarkdownInline, ERtStorageKeys, MessageBus, NotificationBus, RT_CONSUMER_HANDLE_NAMES, RT_DATA_TABLE_PRESET_FROM_HOST, RT_DESIGN_TOKEN_NAMES, RT_KIT_CONFIG, RT_KIT_LABELS, RT_KIT_LABELS_EN, RT_KIT_LOCALE, RT_KIT_TRANSLATOR, RT_MATERIAL_PRESET_CLASS, RT_MATERIAL_PRESET_SELECTOR, RT_PRESET_MATERIAL_CLASS, RT_RADIUS_DEFAULT, RT_RADIUS_STEPS, RT_THEME_SCOPE_ATTRIBUTE, RtDayStampPipe, RtInfiniteScrollDirective, RtKitLabelPipe, RtThemeScopeDirective, SEARCH_DEBOUNCE_MS, ThemeService, breakNode, carryThemeScope, carryThemeScopeOfFocus, coerceQuillDeltaOutput, fileNameFromUrl, formatFileSize, iconsName, markdownToPlainText, materialPresetClassesOf, materialPresetClassesOfFocus, normalizeQuillDelta, parseInline, parseMarkdown, provideRtKit, provideRtKitLabels, rtKitDefault, rtKitLabel, searchDebounce, themeScopeOf, themeScopeOfFocus };
2688
2748
  //# sourceMappingURL=rt-tools-ui-kit-v2-core.mjs.map