@salutejs/plasma-sb-utils 0.246.0-next-sbcom.0 → 0.246.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 (62) hide show
  1. package/lib/components/{Spinner/Spinner.d.ts → Breadcrumbs/Breadcrumbs.d.ts} +39 -10
  2. package/lib/components/{Spinner/Spinner.js → Breadcrumbs/Breadcrumbs.js} +10 -14
  3. package/lib/components/Breadcrumbs/Breadcrumbs.js.map +1 -0
  4. package/lib/components/Breadcrumbs/fixtures.d.ts +13 -0
  5. package/lib/components/Breadcrumbs/fixtures.js +7 -0
  6. package/lib/components/Breadcrumbs/fixtures.js.map +1 -0
  7. package/lib/components/Breadcrumbs/index.d.ts +1 -0
  8. package/lib/components/Breadcrumbs/index.js +2 -0
  9. package/lib/components/Breadcrumbs/index.js.map +1 -0
  10. package/lib/components/{Spinner → Breadcrumbs}/meta.d.ts +33 -3
  11. package/lib/components/{Spinner → Breadcrumbs}/meta.js +14 -7
  12. package/lib/components/Breadcrumbs/meta.js.map +1 -0
  13. package/lib/components/Breadcrumbs/stories.d.ts +3 -0
  14. package/lib/components/Breadcrumbs/stories.js +45 -0
  15. package/lib/components/Breadcrumbs/stories.js.map +1 -0
  16. package/lib/components/Note/meta.js +1 -1
  17. package/lib/components/Note/meta.js.map +1 -1
  18. package/lib/components/Note/stories.d.ts +1 -1
  19. package/lib/components/Note/stories.js +3 -3
  20. package/lib/components/Note/stories.js.map +1 -1
  21. package/lib/components/TokenUsage/TokenUsage.d.ts +27 -0
  22. package/lib/components/TokenUsage/TokenUsage.js +33 -0
  23. package/lib/components/TokenUsage/TokenUsage.js.map +1 -0
  24. package/lib/components/TokenUsage/index.d.ts +2 -0
  25. package/lib/components/TokenUsage/index.js +3 -0
  26. package/lib/components/TokenUsage/index.js.map +1 -0
  27. package/lib/components/TokenUsage/meta.d.ts +13 -0
  28. package/lib/components/TokenUsage/meta.js +12 -0
  29. package/lib/components/TokenUsage/meta.js.map +1 -0
  30. package/lib/components/TokenUsage/notify.d.ts +5 -0
  31. package/lib/components/TokenUsage/notify.js +27 -0
  32. package/lib/components/TokenUsage/notify.js.map +1 -0
  33. package/lib/components/TokenUsage/stories.d.ts +10 -0
  34. package/lib/components/TokenUsage/stories.js +181 -0
  35. package/lib/components/TokenUsage/stories.js.map +1 -0
  36. package/lib/components/TokenUsage/styles.d.ts +41 -0
  37. package/lib/components/TokenUsage/styles.js +71 -0
  38. package/lib/components/TokenUsage/styles.js.map +1 -0
  39. package/lib/components/TokenUsage/types.d.ts +6 -0
  40. package/lib/components/TokenUsage/types.js +2 -0
  41. package/lib/components/TokenUsage/types.js.map +1 -0
  42. package/lib/components/index.d.ts +2 -1
  43. package/lib/components/index.js +2 -1
  44. package/lib/components/index.js.map +1 -1
  45. package/lib/helpers/index.d.ts +3 -0
  46. package/lib/helpers/index.js +2 -0
  47. package/lib/helpers/index.js.map +1 -1
  48. package/lib/helpers/tokenUsage.d.ts +56 -0
  49. package/lib/helpers/tokenUsage.js +340 -0
  50. package/lib/helpers/tokenUsage.js.map +1 -0
  51. package/package.json +5 -5
  52. package/lib/components/Spinner/Spinner.js.map +0 -1
  53. package/lib/components/Spinner/fixtures.d.ts +0 -1
  54. package/lib/components/Spinner/fixtures.js +0 -2
  55. package/lib/components/Spinner/fixtures.js.map +0 -1
  56. package/lib/components/Spinner/index.d.ts +0 -1
  57. package/lib/components/Spinner/index.js +0 -2
  58. package/lib/components/Spinner/index.js.map +0 -1
  59. package/lib/components/Spinner/meta.js.map +0 -1
  60. package/lib/components/Spinner/stories.d.ts +0 -7
  61. package/lib/components/Spinner/stories.js +0 -60
  62. package/lib/components/Spinner/stories.js.map +0 -1
@@ -0,0 +1,181 @@
1
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
2
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
3
+ return new (P || (P = Promise))(function (resolve, reject) {
4
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
5
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
6
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
7
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
8
+ });
9
+ };
10
+ var __generator = (this && this.__generator) || function (thisArg, body) {
11
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g = Object.create((typeof Iterator === "function" ? Iterator : Object).prototype);
12
+ return g.next = verb(0), g["throw"] = verb(1), g["return"] = verb(2), typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
13
+ function verb(n) { return function (v) { return step([n, v]); }; }
14
+ function step(op) {
15
+ if (f) throw new TypeError("Generator is already executing.");
16
+ while (g && (g = 0, op[0] && (_ = 0)), _) try {
17
+ if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
18
+ if (y = 0, t) op = [op[0] & 2, t.value];
19
+ switch (op[0]) {
20
+ case 0: case 1: t = op; break;
21
+ case 4: _.label++; return { value: op[1], done: false };
22
+ case 5: _.label++; y = op[1]; op = [0]; continue;
23
+ case 7: op = _.ops.pop(); _.trys.pop(); continue;
24
+ default:
25
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
26
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
27
+ if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
28
+ if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
29
+ if (t[2]) _.ops.pop();
30
+ _.trys.pop(); continue;
31
+ }
32
+ op = body.call(thisArg, _);
33
+ } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
34
+ if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
35
+ }
36
+ };
37
+ import React, { useEffect, useMemo, useRef, useState } from 'react';
38
+ import { IconSearch } from '@salutejs/plasma-icons';
39
+ import { collapseTypographyProperty, getTokenInfo, getTypographyStyle, getUsageCount, groupUsagesByComponent, groupUsagesByVariation, plural, searchTokens, } from '../../helpers';
40
+ import { ColorCircle, ComponentCount, ComponentTitle, Details, DetailsHeader, DetailsTitle, EmptyDetails, Hint, Layout, MetaInfo, PropertyList, PropertyName, PropertyRow, ShadowBox, Sidebar, SidebarHead, TokenGlyph, TokenList, TokenListCount, TokenListItem, TokenListName, TokenName, TokenValue, TypographyPreview, UsageGroup, VariationName, Via, createStyledAccordion, } from './styles';
41
+ var createTokenPreview = function (usageIndex, themeTokens) { return function (_a) {
42
+ var token = _a.token, size = _a.size;
43
+ var _b = getTokenInfo(usageIndex, themeTokens, token), cssVars = _b.cssVars, kind = _b.kind, value = _b.value;
44
+ if (kind === 'color') {
45
+ return React.createElement(ColorCircle, { "$size": size, "$background": value });
46
+ }
47
+ if (kind === 'shadow') {
48
+ return React.createElement(ShadowBox, { "$size": size, "$boxShadow": value });
49
+ }
50
+ if (kind === 'typography') {
51
+ return (React.createElement(TokenGlyph, { "$size": size, style: { fontFamily: getTypographyStyle(cssVars).fontFamily } }, "Aa"));
52
+ }
53
+ return React.createElement(TokenGlyph, null, "#");
54
+ }; };
55
+ var Highlighted = function (_a) {
56
+ var value = _a.value, query = _a.query;
57
+ var search = query.replace(/^--/, '').toLowerCase();
58
+ var position = search ? value.toLowerCase().indexOf(search) : -1;
59
+ if (position === -1) {
60
+ return React.createElement(React.Fragment, null, value);
61
+ }
62
+ return (React.createElement(React.Fragment, null,
63
+ value.slice(0, position),
64
+ React.createElement("mark", null, value.slice(position, position + search.length)),
65
+ value.slice(position + search.length)));
66
+ };
67
+ export var createTokenUsageStory = function (_a) {
68
+ var themeTokens = _a.themeTokens, usageIndex = _a.usageIndex, components = _a.components, useNotify = _a.useNotify;
69
+ var AccordionItem = components.accordionItem, TextField = components.textField, accordion = components.accordion;
70
+ var StyledAccordion = createStyledAccordion(accordion);
71
+ var TokenPreview = createTokenPreview(usageIndex, themeTokens);
72
+ var UsageDetails = function (_a) {
73
+ var token = _a.token, copyToClipboard = _a.copyToClipboard;
74
+ var usages = usageIndex.byToken[token] || [];
75
+ var byComponent = groupUsagesByComponent(usages);
76
+ var _b = getTokenInfo(usageIndex, themeTokens, token), cssVars = _b.cssVars, kind = _b.kind;
77
+ var cssVarLabel = kind === 'typography' ? collapseTypographyProperty(cssVars[0]) : cssVars[0];
78
+ return (React.createElement(Details, null,
79
+ React.createElement(DetailsHeader, null,
80
+ React.createElement(DetailsTitle, null,
81
+ React.createElement(TokenPreview, { token: token, size: "1.25rem" }),
82
+ React.createElement(TokenName, { onClick: function () { return copyToClipboard(token); } }, token),
83
+ React.createElement(TokenValue, { onClick: function () { return copyToClipboard(cssVarLabel); } },
84
+ "\u00B7 ",
85
+ cssVarLabel)),
86
+ kind === 'typography' && (React.createElement(TypographyPreview, { style: getTypographyStyle(cssVars) }, "\u0421\u044A\u0435\u0448\u044C \u0435\u0449\u0451 \u044D\u0442\u0438\u0445 \u043C\u044F\u0433\u043A\u0438\u0445 \u0444\u0440\u0430\u043D\u0446\u0443\u0437\u0441\u043A\u0438\u0445 \u0431\u0443\u043B\u043E\u043A, \u0434\u0430 \u0432\u044B\u043F\u0435\u0439 \u0447\u0430\u044E")),
87
+ React.createElement(MetaInfo, null, usages.length
88
+ ? "".concat(usages.length, " ").concat(plural(usages.length, [
89
+ 'использование',
90
+ 'использования',
91
+ 'использований',
92
+ ]), " \u00B7 ").concat(byComponent.length, " ").concat(plural(byComponent.length, [
93
+ 'компонент',
94
+ 'компонента',
95
+ 'компонентов',
96
+ ]))
97
+ : 'Не используется в компонентах')),
98
+ usages.length > 0 && (React.createElement(StyledAccordion, { key: token, view: "clear", size: "s", stretching: "filled" }, byComponent.map(function (_a, position) {
99
+ var component = _a[0], componentUsages = _a[1];
100
+ return (React.createElement(AccordionItem, { key: component, eventKey: position, type: "arrow", title: React.createElement(ComponentTitle, null,
101
+ component,
102
+ React.createElement(ComponentCount, null, componentUsages.length)) }, groupUsagesByVariation(componentUsages).map(function (_a) {
103
+ var variation = _a[0], variationUsages = _a[1];
104
+ return (React.createElement(UsageGroup, { key: variation },
105
+ React.createElement(VariationName, null, variation),
106
+ React.createElement(PropertyList, null, variationUsages.map(function (usage, usagePosition) { return (React.createElement(PropertyRow, { key: "".concat(usage.property, "_").concat(usagePosition), title: "\u0421\u043A\u043E\u043F\u0438\u0440\u043E\u0432\u0430\u0442\u044C css-\u043F\u0435\u0440\u0435\u043C\u0435\u043D\u043D\u0443\u044E", onClick: function () { return copyToClipboard(usage.property); } },
107
+ React.createElement(PropertyName, null, usage.property),
108
+ usage.via.length > 0 && React.createElement(Via, null,
109
+ "\u0447\u0435\u0440\u0435\u0437 ",
110
+ usage.via.join(' → ')))); }))));
111
+ })));
112
+ })))));
113
+ };
114
+ return function () {
115
+ var _a = useState(''), query = _a[0], setQuery = _a[1];
116
+ var _b = useState(null), selected = _b[0], setSelected = _b[1];
117
+ var listRef = useRef(null);
118
+ var notify = useNotify();
119
+ var matched = useMemo(function () { return searchTokens(usageIndex, query); }, [query]);
120
+ var activeToken = selected && matched.includes(selected) ? selected : matched[0];
121
+ useEffect(function () {
122
+ var _a, _b;
123
+ (_b = (_a = listRef.current) === null || _a === void 0 ? void 0 : _a.querySelector('[data-selected="true"]')) === null || _b === void 0 ? void 0 : _b.scrollIntoView({ block: 'nearest' });
124
+ }, [activeToken]);
125
+ var copyToClipboard = function (value) { return __awaiter(void 0, void 0, void 0, function () {
126
+ var error_1;
127
+ return __generator(this, function (_a) {
128
+ switch (_a.label) {
129
+ case 0:
130
+ _a.trys.push([0, 2, , 3]);
131
+ return [4 /*yield*/, navigator.clipboard.writeText(value)];
132
+ case 1:
133
+ _a.sent();
134
+ notify('Скопировано');
135
+ return [3 /*break*/, 3];
136
+ case 2:
137
+ error_1 = _a.sent();
138
+ notify('Ошибка при копировании текста', true);
139
+ return [3 /*break*/, 3];
140
+ case 3: return [2 /*return*/];
141
+ }
142
+ });
143
+ }); };
144
+ var onKeyDown = function (event) {
145
+ if (event.key !== 'ArrowDown' && event.key !== 'ArrowUp') {
146
+ return;
147
+ }
148
+ event.preventDefault();
149
+ var position = matched.indexOf(activeToken);
150
+ var next = event.key === 'ArrowDown' ? position + 1 : position - 1;
151
+ if (matched[next]) {
152
+ setSelected(matched[next]);
153
+ }
154
+ };
155
+ return (React.createElement(Layout, null,
156
+ React.createElement(Sidebar, null,
157
+ React.createElement(SidebarHead, null,
158
+ React.createElement(TextField, { autoFocus: true, placeholder: "\u041F\u043E\u0438\u0441\u043A \u0442\u043E\u043A\u0435\u043D\u0430", value: query, contentLeft: React.createElement(IconSearch, { size: "xs", color: "inherit" }), onChange: function (event) {
159
+ setQuery(event.target.value);
160
+ setSelected(null);
161
+ }, onKeyDown: onKeyDown }),
162
+ React.createElement(Hint, null, query
163
+ ? "".concat(matched.length, " ").concat(plural(matched.length, ['токен', 'токена', 'токенов']))
164
+ : "".concat(usageIndex.stats.tokens, " ").concat(plural(usageIndex.stats.tokens, [
165
+ 'токен',
166
+ 'токена',
167
+ 'токенов',
168
+ ])))),
169
+ React.createElement(TokenList, { ref: listRef }, matched.map(function (token) {
170
+ var count = getUsageCount(usageIndex, token);
171
+ return (React.createElement(TokenListItem, { key: token, type: "button", "data-selected": token === activeToken, "$isSelected": token === activeToken, "$isUnused": count === 0, title: count === 0 ? 'Не используется ни одним компонентом' : undefined, onClick: function () { return setSelected(token); } },
172
+ React.createElement(TokenPreview, { token: token }),
173
+ React.createElement(TokenListName, null,
174
+ React.createElement(Highlighted, { value: token, query: query })),
175
+ React.createElement(TokenListCount, { "$isSelected": token === activeToken }, count || '—')));
176
+ }))),
177
+ activeToken ? (React.createElement(UsageDetails, { token: activeToken, copyToClipboard: copyToClipboard })) : (React.createElement(EmptyDetails, null,
178
+ React.createElement("div", null, "\u0412 \u0442\u0435\u043C\u0435 \u043D\u0435\u0442 \u0442\u0430\u043A\u043E\u0433\u043E \u0442\u043E\u043A\u0435\u043D\u0430")))));
179
+ };
180
+ };
181
+ //# sourceMappingURL=stories.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"stories.js","sourceRoot":"","sources":["../../../src/components/TokenUsage/stories.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,41 @@
1
+ export declare const Layout: import("styled-components").StyledComponent<"div", any, {}, never>;
2
+ export declare const Sidebar: import("styled-components").StyledComponent<"div", any, {}, never>;
3
+ export declare const SidebarHead: import("styled-components").StyledComponent<"div", any, {}, never>;
4
+ export declare const Hint: import("styled-components").StyledComponent<"div", any, {}, never>;
5
+ export declare const TokenList: import("styled-components").StyledComponent<"div", any, {}, never>;
6
+ export declare const TokenListItem: import("styled-components").StyledComponent<"button", any, {
7
+ $isSelected?: boolean;
8
+ $isUnused?: boolean;
9
+ }, never>;
10
+ export declare const TokenListName: import("styled-components").StyledComponent<"span", any, {}, never>;
11
+ export declare const TokenListCount: import("styled-components").StyledComponent<"span", any, {
12
+ $isSelected?: boolean;
13
+ }, never>;
14
+ export declare const ColorCircle: import("styled-components").StyledComponent<"div", any, {
15
+ $background?: string;
16
+ $size?: string;
17
+ }, never>;
18
+ export declare const ShadowBox: import("styled-components").StyledComponent<"div", any, {
19
+ $boxShadow?: string;
20
+ $size?: string;
21
+ }, never>;
22
+ export declare const TokenGlyph: import("styled-components").StyledComponent<"div", any, {
23
+ $size?: string;
24
+ }, never>;
25
+ export declare const Details: import("styled-components").StyledComponent<"div", any, {}, never>;
26
+ export declare const DetailsHeader: import("styled-components").StyledComponent<"div", any, {}, never>;
27
+ export declare const DetailsTitle: import("styled-components").StyledComponent<"div", any, {}, never>;
28
+ export declare const TokenName: import("styled-components").StyledComponent<"span", any, {}, never>;
29
+ export declare const TokenValue: import("styled-components").StyledComponent<"span", any, {}, never>;
30
+ export declare const MetaInfo: import("styled-components").StyledComponent<"div", any, {}, never>;
31
+ export declare const TypographyPreview: import("styled-components").StyledComponent<"div", any, {}, never>;
32
+ export declare const ComponentTitle: import("styled-components").StyledComponent<"div", any, {}, never>;
33
+ export declare const ComponentCount: import("styled-components").StyledComponent<"span", any, {}, never>;
34
+ export declare const UsageGroup: import("styled-components").StyledComponent<"div", any, {}, never>;
35
+ export declare const VariationName: import("styled-components").StyledComponent<"div", any, {}, never>;
36
+ export declare const PropertyList: import("styled-components").StyledComponent<"div", any, {}, never>;
37
+ export declare const PropertyRow: import("styled-components").StyledComponent<"div", any, {}, never>;
38
+ export declare const PropertyName: import("styled-components").StyledComponent<"span", any, {}, never>;
39
+ export declare const Via: import("styled-components").StyledComponent<"span", any, {}, never>;
40
+ export declare const EmptyDetails: import("styled-components").StyledComponent<"div", any, {}, never>;
41
+ export declare const createStyledAccordion: (Accordion: any) => import("styled-components").StyledComponent<any, any, object, string | number | symbol>;
@@ -0,0 +1,71 @@
1
+ var __makeTemplateObject = (this && this.__makeTemplateObject) || function (cooked, raw) {
2
+ if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; }
3
+ return cooked;
4
+ };
5
+ import styled from 'styled-components';
6
+ export var Layout = styled.div(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n box-sizing: border-box;\n\n display: grid;\n grid-template-columns: minmax(0, 17rem) minmax(0, 1fr);\n gap: 2rem;\n\n width: 100%;\n max-width: 100%;\n height: calc(100vh - 5rem);\n padding-top: 1rem;\n\n overflow: hidden;\n"], ["\n box-sizing: border-box;\n\n display: grid;\n grid-template-columns: minmax(0, 17rem) minmax(0, 1fr);\n gap: 2rem;\n\n width: 100%;\n max-width: 100%;\n height: calc(100vh - 5rem);\n padding-top: 1rem;\n\n overflow: hidden;\n"])));
7
+ export var Sidebar = styled.div(templateObject_2 || (templateObject_2 = __makeTemplateObject(["\n display: flex;\n flex-direction: column;\n gap: 0.75rem;\n\n min-width: 0;\n min-height: 0;\n"], ["\n display: flex;\n flex-direction: column;\n gap: 0.75rem;\n\n min-width: 0;\n min-height: 0;\n"])));
8
+ export var SidebarHead = styled.div(templateObject_3 || (templateObject_3 = __makeTemplateObject(["\n display: flex;\n flex-direction: column;\n gap: 0.375rem;\n"], ["\n display: flex;\n flex-direction: column;\n gap: 0.375rem;\n"])));
9
+ export var Hint = styled.div(templateObject_4 || (templateObject_4 = __makeTemplateObject(["\n color: var(--text-tertiary);\n font-family: var(--plasma-typo-body-xxs-font-family);\n font-size: var(--plasma-typo-body-xxs-font-size);\n line-height: var(--plasma-typo-body-xxs-line-height);\n"], ["\n color: var(--text-tertiary);\n font-family: var(--plasma-typo-body-xxs-font-family);\n font-size: var(--plasma-typo-body-xxs-font-size);\n line-height: var(--plasma-typo-body-xxs-line-height);\n"])));
10
+ export var TokenList = styled.div(templateObject_5 || (templateObject_5 = __makeTemplateObject(["\n display: flex;\n flex-direction: column;\n min-height: 0;\n\n overflow-x: hidden;\n overflow-y: auto;\n overscroll-behavior: contain;\n scrollbar-gutter: stable;\n\n margin: 0 -0.5rem;\n padding: 0 0.5rem 1rem;\n"], ["\n display: flex;\n flex-direction: column;\n min-height: 0;\n\n overflow-x: hidden;\n overflow-y: auto;\n overscroll-behavior: contain;\n scrollbar-gutter: stable;\n\n margin: 0 -0.5rem;\n padding: 0 0.5rem 1rem;\n"])));
11
+ export var TokenListItem = styled.button(templateObject_6 || (templateObject_6 = __makeTemplateObject(["\n display: grid;\n grid-template-columns: 0.875rem minmax(0, 1fr) auto;\n align-items: center;\n gap: 0.5rem;\n\n padding: 0.3125rem 0.5rem;\n\n color: ", ";\n background: ", ";\n border: none;\n border-radius: var(--border-radius-xxs);\n box-shadow: ", ";\n\n font-family: var(--plasma-typo-body-xs-font-family);\n font-size: var(--plasma-typo-body-xs-font-size);\n line-height: var(--plasma-typo-body-xs-line-height);\n text-align: left;\n cursor: pointer;\n\n &:hover {\n background: var(--surface-transparent-secondary);\n }\n\n mark {\n color: inherit;\n background: transparent;\n font-weight: var(--plasma-typo-body-xs-bold-font-weight);\n }\n"], ["\n display: grid;\n grid-template-columns: 0.875rem minmax(0, 1fr) auto;\n align-items: center;\n gap: 0.5rem;\n\n padding: 0.3125rem 0.5rem;\n\n color: ", ";\n background: ", ";\n border: none;\n border-radius: var(--border-radius-xxs);\n box-shadow: ", ";\n\n font-family: var(--plasma-typo-body-xs-font-family);\n font-size: var(--plasma-typo-body-xs-font-size);\n line-height: var(--plasma-typo-body-xs-line-height);\n text-align: left;\n cursor: pointer;\n\n &:hover {\n background: var(--surface-transparent-secondary);\n }\n\n mark {\n color: inherit;\n background: transparent;\n font-weight: var(--plasma-typo-body-xs-bold-font-weight);\n }\n"])), function (_a) {
12
+ var $isUnused = _a.$isUnused;
13
+ return ($isUnused ? 'var(--text-tertiary)' : 'var(--text-primary)');
14
+ }, function (_a) {
15
+ var $isSelected = _a.$isSelected;
16
+ return ($isSelected ? 'var(--surface-transparent-secondary)' : 'transparent');
17
+ }, function (_a) {
18
+ var $isSelected = _a.$isSelected;
19
+ return ($isSelected ? 'inset 0.125rem 0 0 var(--surface-accent)' : 'none');
20
+ });
21
+ export var TokenListName = styled.span(templateObject_7 || (templateObject_7 = __makeTemplateObject(["\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n"], ["\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n"])));
22
+ export var TokenListCount = styled.span(templateObject_8 || (templateObject_8 = __makeTemplateObject(["\n color: ", ";\n font-size: 0.6875rem;\n font-variant-numeric: tabular-nums;\n"], ["\n color: ", ";\n font-size: 0.6875rem;\n font-variant-numeric: tabular-nums;\n"])), function (_a) {
23
+ var $isSelected = _a.$isSelected;
24
+ return ($isSelected ? 'var(--text-secondary)' : 'var(--text-tertiary)');
25
+ });
26
+ export var ColorCircle = styled.div(templateObject_9 || (templateObject_9 = __makeTemplateObject(["\n box-sizing: border-box;\n flex-shrink: 0;\n\n width: ", ";\n height: ", ";\n\n background: ", ";\n border-radius: 50%;\n box-shadow: inset 0 0 0 1px var(--outline-solid-primary);\n"], ["\n box-sizing: border-box;\n flex-shrink: 0;\n\n width: ", ";\n height: ", ";\n\n background: ", ";\n border-radius: 50%;\n box-shadow: inset 0 0 0 1px var(--outline-solid-primary);\n"])), function (_a) {
27
+ var $size = _a.$size;
28
+ return $size || '0.875rem';
29
+ }, function (_a) {
30
+ var $size = _a.$size;
31
+ return $size || '0.875rem';
32
+ }, function (_a) {
33
+ var $background = _a.$background;
34
+ return $background || 'transparent';
35
+ });
36
+ export var ShadowBox = styled.div(templateObject_10 || (templateObject_10 = __makeTemplateObject(["\n box-sizing: border-box;\n flex-shrink: 0;\n\n width: ", ";\n height: ", ";\n\n background: var(--surface-solid-card);\n border-radius: var(--border-radius-xxs);\n box-shadow: ", ";\n"], ["\n box-sizing: border-box;\n flex-shrink: 0;\n\n width: ", ";\n height: ", ";\n\n background: var(--surface-solid-card);\n border-radius: var(--border-radius-xxs);\n box-shadow: ", ";\n"])), function (_a) {
37
+ var $size = _a.$size;
38
+ return $size || '0.875rem';
39
+ }, function (_a) {
40
+ var $size = _a.$size;
41
+ return $size || '0.875rem';
42
+ }, function (_a) {
43
+ var $boxShadow = _a.$boxShadow;
44
+ return $boxShadow || 'none';
45
+ });
46
+ export var TokenGlyph = styled.div(templateObject_11 || (templateObject_11 = __makeTemplateObject(["\n display: flex;\n align-items: baseline;\n justify-content: center;\n flex-shrink: 0;\n\n min-width: ", ";\n\n color: var(--text-tertiary);\n font-size: ", ";\n line-height: 1;\n white-space: nowrap;\n"], ["\n display: flex;\n align-items: baseline;\n justify-content: center;\n flex-shrink: 0;\n\n min-width: ", ";\n\n color: var(--text-tertiary);\n font-size: ", ";\n line-height: 1;\n white-space: nowrap;\n"])), function (_a) {
47
+ var $size = _a.$size;
48
+ return $size || '0.875rem';
49
+ }, function (_a) {
50
+ var $size = _a.$size;
51
+ return $size || '0.625rem';
52
+ });
53
+ export var Details = styled.div(templateObject_12 || (templateObject_12 = __makeTemplateObject(["\n display: flex;\n flex-direction: column;\n min-width: 0;\n min-height: 0;\n\n overflow-x: hidden;\n overflow-y: auto;\n overscroll-behavior: contain;\n scrollbar-gutter: stable;\n\n padding-right: 0.5rem;\n"], ["\n display: flex;\n flex-direction: column;\n min-width: 0;\n min-height: 0;\n\n overflow-x: hidden;\n overflow-y: auto;\n overscroll-behavior: contain;\n scrollbar-gutter: stable;\n\n padding-right: 0.5rem;\n"])));
54
+ export var DetailsHeader = styled.div(templateObject_13 || (templateObject_13 = __makeTemplateObject(["\n position: sticky;\n top: 0;\n z-index: 1;\n\n display: flex;\n flex-direction: column;\n gap: 0.25rem;\n min-width: 0;\n\n padding: 0.5rem 0 0.75rem;\n margin: -0.5rem 0 0.25rem;\n\n background: var(--surface-solid-primary);\n border-bottom: 1px solid var(--outline-solid-secondary);\n"], ["\n position: sticky;\n top: 0;\n z-index: 1;\n\n display: flex;\n flex-direction: column;\n gap: 0.25rem;\n min-width: 0;\n\n padding: 0.5rem 0 0.75rem;\n margin: -0.5rem 0 0.25rem;\n\n background: var(--surface-solid-primary);\n border-bottom: 1px solid var(--outline-solid-secondary);\n"])));
55
+ export var DetailsTitle = styled.div(templateObject_14 || (templateObject_14 = __makeTemplateObject(["\n display: flex;\n align-items: baseline;\n gap: 0.375rem;\n flex-wrap: wrap;\n min-width: 0;\n"], ["\n display: flex;\n align-items: baseline;\n gap: 0.375rem;\n flex-wrap: wrap;\n min-width: 0;\n"])));
56
+ export var TokenName = styled.span(templateObject_15 || (templateObject_15 = __makeTemplateObject(["\n font-family: var(--plasma-typo-body-l-font-family);\n font-size: var(--plasma-typo-body-l-font-size);\n font-weight: var(--plasma-typo-body-l-bold-font-weight);\n line-height: var(--plasma-typo-body-l-line-height);\n\n cursor: pointer;\n"], ["\n font-family: var(--plasma-typo-body-l-font-family);\n font-size: var(--plasma-typo-body-l-font-size);\n font-weight: var(--plasma-typo-body-l-bold-font-weight);\n line-height: var(--plasma-typo-body-l-line-height);\n\n cursor: pointer;\n"])));
57
+ export var TokenValue = styled.span(templateObject_16 || (templateObject_16 = __makeTemplateObject(["\n color: var(--text-secondary);\n\n font-family: 'SB Sans Mono', monospace;\n font-size: 0.75rem;\n\n cursor: pointer;\n"], ["\n color: var(--text-secondary);\n\n font-family: 'SB Sans Mono', monospace;\n font-size: 0.75rem;\n\n cursor: pointer;\n"])));
58
+ export var MetaInfo = styled.div(templateObject_17 || (templateObject_17 = __makeTemplateObject(["\n display: flex;\n align-items: baseline;\n gap: 0.5rem;\n flex-wrap: wrap;\n\n color: var(--text-tertiary);\n font-family: var(--plasma-typo-body-xs-font-family);\n font-size: var(--plasma-typo-body-xs-font-size);\n line-height: var(--plasma-typo-body-xs-line-height);\n"], ["\n display: flex;\n align-items: baseline;\n gap: 0.5rem;\n flex-wrap: wrap;\n\n color: var(--text-tertiary);\n font-family: var(--plasma-typo-body-xs-font-family);\n font-size: var(--plasma-typo-body-xs-font-size);\n line-height: var(--plasma-typo-body-xs-line-height);\n"])));
59
+ export var TypographyPreview = styled.div(templateObject_18 || (templateObject_18 = __makeTemplateObject(["\n overflow: hidden;\n\n min-width: 0;\n max-width: 100%;\n padding: 0.25rem 0;\n\n color: var(--text-primary);\n white-space: nowrap;\n text-overflow: ellipsis;\n"], ["\n overflow: hidden;\n\n min-width: 0;\n max-width: 100%;\n padding: 0.25rem 0;\n\n color: var(--text-primary);\n white-space: nowrap;\n text-overflow: ellipsis;\n"])));
60
+ export var ComponentTitle = styled.div(templateObject_19 || (templateObject_19 = __makeTemplateObject(["\n display: flex;\n align-items: baseline;\n gap: 0.5rem;\n min-width: 0;\n"], ["\n display: flex;\n align-items: baseline;\n gap: 0.5rem;\n min-width: 0;\n"])));
61
+ export var ComponentCount = styled.span(templateObject_20 || (templateObject_20 = __makeTemplateObject(["\n color: var(--text-tertiary);\n font-size: 0.6875rem;\n font-variant-numeric: tabular-nums;\n font-weight: var(--plasma-typo-body-xs-font-weight);\n"], ["\n color: var(--text-tertiary);\n font-size: 0.6875rem;\n font-variant-numeric: tabular-nums;\n font-weight: var(--plasma-typo-body-xs-font-weight);\n"])));
62
+ export var UsageGroup = styled.div(templateObject_21 || (templateObject_21 = __makeTemplateObject(["\n display: grid;\n grid-template-columns: 10rem minmax(0, 1fr);\n align-items: baseline;\n gap: 0.5rem;\n\n padding: 0.1875rem 0;\n"], ["\n display: grid;\n grid-template-columns: 10rem minmax(0, 1fr);\n align-items: baseline;\n gap: 0.5rem;\n\n padding: 0.1875rem 0;\n"])));
63
+ export var VariationName = styled.div(templateObject_22 || (templateObject_22 = __makeTemplateObject(["\n overflow: hidden;\n\n color: var(--text-secondary);\n white-space: nowrap;\n text-overflow: ellipsis;\n\n font-family: var(--plasma-typo-body-xs-font-family);\n font-size: var(--plasma-typo-body-xs-font-size);\n line-height: 1.5rem;\n"], ["\n overflow: hidden;\n\n color: var(--text-secondary);\n white-space: nowrap;\n text-overflow: ellipsis;\n\n font-family: var(--plasma-typo-body-xs-font-family);\n font-size: var(--plasma-typo-body-xs-font-size);\n line-height: 1.5rem;\n"])));
64
+ export var PropertyList = styled.div(templateObject_23 || (templateObject_23 = __makeTemplateObject(["\n display: flex;\n flex-direction: column;\n align-items: flex-start;\n min-width: 0;\n"], ["\n display: flex;\n flex-direction: column;\n align-items: flex-start;\n min-width: 0;\n"])));
65
+ export var PropertyRow = styled.div(templateObject_24 || (templateObject_24 = __makeTemplateObject(["\n display: flex;\n align-items: baseline;\n gap: 0.5rem;\n flex-wrap: wrap;\n\n max-width: 100%;\n padding: 0 0.25rem;\n margin-left: -0.25rem;\n\n border-radius: var(--border-radius-xxs);\n\n min-width: 0;\n\n font-family: 'SB Sans Mono', monospace;\n font-size: 0.75rem;\n line-height: 1.5rem;\n word-break: break-all;\n cursor: pointer;\n\n &:hover {\n background: var(--surface-transparent-secondary);\n }\n"], ["\n display: flex;\n align-items: baseline;\n gap: 0.5rem;\n flex-wrap: wrap;\n\n max-width: 100%;\n padding: 0 0.25rem;\n margin-left: -0.25rem;\n\n border-radius: var(--border-radius-xxs);\n\n min-width: 0;\n\n font-family: 'SB Sans Mono', monospace;\n font-size: 0.75rem;\n line-height: 1.5rem;\n word-break: break-all;\n cursor: pointer;\n\n &:hover {\n background: var(--surface-transparent-secondary);\n }\n"])));
66
+ export var PropertyName = styled.span(templateObject_25 || (templateObject_25 = __makeTemplateObject(["\n color: var(--text-primary);\n"], ["\n color: var(--text-primary);\n"])));
67
+ export var Via = styled.span(templateObject_26 || (templateObject_26 = __makeTemplateObject(["\n color: var(--text-tertiary);\n\n font-family: var(--plasma-typo-body-xxs-font-family);\n font-size: var(--plasma-typo-body-xxs-font-size);\n"], ["\n color: var(--text-tertiary);\n\n font-family: var(--plasma-typo-body-xxs-font-family);\n font-size: var(--plasma-typo-body-xxs-font-size);\n"])));
68
+ export var EmptyDetails = styled.div(templateObject_27 || (templateObject_27 = __makeTemplateObject(["\n display: flex;\n flex-direction: column;\n gap: 0.75rem;\n align-items: center;\n justify-content: center;\n\n height: 100%;\n padding-bottom: 6rem;\n\n color: var(--text-secondary);\n text-align: center;\n"], ["\n display: flex;\n flex-direction: column;\n gap: 0.75rem;\n align-items: center;\n justify-content: center;\n\n height: 100%;\n padding-bottom: 6rem;\n\n color: var(--text-secondary);\n text-align: center;\n"])));
69
+ export var createStyledAccordion = function (Accordion) { return styled(Accordion)(templateObject_28 || (templateObject_28 = __makeTemplateObject(["\n --plasma-accordion-item-padding-vertical: 0.5rem;\n --plasma-accordion-item-padding-horizontal: 0;\n --plasma-accordion-item-padding-horizontal-left: 0;\n --plasma-accordion-item-body-padding-bottom: 0.75rem;\n --plasma-accordion-item-title-font-size: var(--plasma-typo-body-s-font-size);\n --plasma-accordion-item-title-font-weight: var(--plasma-typo-body-s-bold-font-weight);\n --plasma-accordion-item-title-line-height: var(--plasma-typo-body-s-line-height);\n --plasma-accordion-item-icon-size: 0.75rem;\n"], ["\n --plasma-accordion-item-padding-vertical: 0.5rem;\n --plasma-accordion-item-padding-horizontal: 0;\n --plasma-accordion-item-padding-horizontal-left: 0;\n --plasma-accordion-item-body-padding-bottom: 0.75rem;\n --plasma-accordion-item-title-font-size: var(--plasma-typo-body-s-font-size);\n --plasma-accordion-item-title-font-weight: var(--plasma-typo-body-s-bold-font-weight);\n --plasma-accordion-item-title-line-height: var(--plasma-typo-body-s-line-height);\n --plasma-accordion-item-icon-size: 0.75rem;\n"]))); };
70
+ var templateObject_1, templateObject_2, templateObject_3, templateObject_4, templateObject_5, templateObject_6, templateObject_7, templateObject_8, templateObject_9, templateObject_10, templateObject_11, templateObject_12, templateObject_13, templateObject_14, templateObject_15, templateObject_16, templateObject_17, templateObject_18, templateObject_19, templateObject_20, templateObject_21, templateObject_22, templateObject_23, templateObject_24, templateObject_25, templateObject_26, templateObject_27, templateObject_28;
71
+ //# sourceMappingURL=styles.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"styles.js","sourceRoot":"","sources":["../../../src/components/TokenUsage/styles.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ export type TokenUsageComponents = {
2
+ accordion: any;
3
+ accordionItem: any;
4
+ textField: any;
5
+ };
6
+ export type NotifyHook = () => (text: string, isError?: boolean) => void;
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/components/TokenUsage/types.ts"],"names":[],"mappings":""}
@@ -6,6 +6,7 @@ export { ThemeColors } from './ThemeColors';
6
6
  export { withReactStrictMode, reactStrictModePreviewOption } from './ReactStrictModeDecorator';
7
7
  export { disabledToolsParameters } from './disabledToolsParameters';
8
8
  export * from './Accordion';
9
+ export * from './Breadcrumbs';
9
10
  export * from './Button';
10
11
  export * from './EmbeddedButton';
11
12
  export * from './TextField';
@@ -42,10 +43,10 @@ export * from './Progress';
42
43
  export * from './Steps';
43
44
  export * from './Attach';
44
45
  export * from './Badge';
45
- export * from './Spinner';
46
46
  export * from './CodeField';
47
47
  export * from './CodeInput';
48
48
  export * from './CodeArea';
49
49
  export * from './Rating';
50
50
  export * from './Tabs';
51
51
  export * from './_ai';
52
+ export * from './TokenUsage';
@@ -6,6 +6,7 @@ export { ThemeColors } from './ThemeColors';
6
6
  export { withReactStrictMode, reactStrictModePreviewOption } from './ReactStrictModeDecorator';
7
7
  export { disabledToolsParameters } from './disabledToolsParameters';
8
8
  export * from './Accordion';
9
+ export * from './Breadcrumbs';
9
10
  export * from './Button';
10
11
  export * from './EmbeddedButton';
11
12
  export * from './TextField';
@@ -42,11 +43,11 @@ export * from './Progress';
42
43
  export * from './Steps';
43
44
  export * from './Attach';
44
45
  export * from './Badge';
45
- export * from './Spinner';
46
46
  export * from './CodeField';
47
47
  export * from './CodeInput';
48
48
  export * from './CodeArea';
49
49
  export * from './Rating';
50
50
  export * from './Tabs';
51
51
  export * from './_ai';
52
+ export * from './TokenUsage';
52
53
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/components/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,SAAS,IAAI,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AACpE,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,mBAAmB,EAAE,4BAA4B,EAAE,MAAM,4BAA4B,CAAC;AAC/F,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AACpE,cAAc,aAAa,CAAC;AAC5B,cAAc,UAAU,CAAC;AACzB,cAAc,kBAAkB,CAAC;AACjC,cAAc,aAAa,CAAC;AAC5B,cAAc,mBAAmB,CAAC;AAClC,cAAc,YAAY,CAAC;AAC3B,cAAc,YAAY,CAAC;AAC3B,cAAc,SAAS,CAAC;AACxB,cAAc,SAAS,CAAC;AACxB,cAAc,cAAc,CAAC;AAC7B,cAAc,kBAAkB,CAAC;AACjC,cAAc,cAAc,CAAC;AAC7B,cAAc,QAAQ,CAAC;AACvB,cAAc,WAAW,CAAC;AAC1B,OAAO,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AACxC,cAAc,YAAY,CAAC;AAC3B,cAAc,sBAAsB,CAAC;AACrC,OAAO,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAC;AACpD,OAAO,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAC;AACtD,cAAc,gBAAgB,CAAC;AAC/B,cAAc,QAAQ,CAAC;AACvB,cAAc,QAAQ,CAAC;AACvB,cAAc,YAAY,CAAC;AAC3B,cAAc,QAAQ,CAAC;AACvB,cAAc,QAAQ,CAAC;AACvB,cAAc,UAAU,CAAC;AACzB,cAAc,UAAU,CAAC;AACzB,cAAc,YAAY,CAAC;AAC3B,cAAc,YAAY,CAAC;AAC3B,cAAc,eAAe,CAAC;AAC9B,cAAc,UAAU,CAAC;AACzB,cAAc,WAAW,CAAC;AAC1B,cAAc,YAAY,CAAC;AAC3B,cAAc,YAAY,CAAC;AAC3B,cAAc,SAAS,CAAC;AACxB,cAAc,UAAU,CAAC;AACzB,cAAc,SAAS,CAAC;AACxB,cAAc,WAAW,CAAC;AAC1B,cAAc,aAAa,CAAC;AAC5B,cAAc,aAAa,CAAC;AAC5B,cAAc,YAAY,CAAC;AAC3B,cAAc,UAAU,CAAC;AACzB,cAAc,QAAQ,CAAC;AACvB,cAAc,OAAO,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/components/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,SAAS,IAAI,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AACpE,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,mBAAmB,EAAE,4BAA4B,EAAE,MAAM,4BAA4B,CAAC;AAC/F,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AACpE,cAAc,aAAa,CAAC;AAC5B,cAAc,eAAe,CAAC;AAC9B,cAAc,UAAU,CAAC;AACzB,cAAc,kBAAkB,CAAC;AACjC,cAAc,aAAa,CAAC;AAC5B,cAAc,mBAAmB,CAAC;AAClC,cAAc,YAAY,CAAC;AAC3B,cAAc,YAAY,CAAC;AAC3B,cAAc,SAAS,CAAC;AACxB,cAAc,SAAS,CAAC;AACxB,cAAc,cAAc,CAAC;AAC7B,cAAc,kBAAkB,CAAC;AACjC,cAAc,cAAc,CAAC;AAC7B,cAAc,QAAQ,CAAC;AACvB,cAAc,WAAW,CAAC;AAC1B,OAAO,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AACxC,cAAc,YAAY,CAAC;AAC3B,cAAc,sBAAsB,CAAC;AACrC,OAAO,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAC;AACpD,OAAO,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAC;AACtD,cAAc,gBAAgB,CAAC;AAC/B,cAAc,QAAQ,CAAC;AACvB,cAAc,QAAQ,CAAC;AACvB,cAAc,YAAY,CAAC;AAC3B,cAAc,QAAQ,CAAC;AACvB,cAAc,QAAQ,CAAC;AACvB,cAAc,UAAU,CAAC;AACzB,cAAc,UAAU,CAAC;AACzB,cAAc,YAAY,CAAC;AAC3B,cAAc,YAAY,CAAC;AAC3B,cAAc,eAAe,CAAC;AAC9B,cAAc,UAAU,CAAC;AACzB,cAAc,WAAW,CAAC;AAC1B,cAAc,YAAY,CAAC;AAC3B,cAAc,YAAY,CAAC;AAC3B,cAAc,SAAS,CAAC;AACxB,cAAc,UAAU,CAAC;AACzB,cAAc,SAAS,CAAC;AACxB,cAAc,aAAa,CAAC;AAC5B,cAAc,aAAa,CAAC;AAC5B,cAAc,YAAY,CAAC;AAC3B,cAAc,UAAU,CAAC;AACzB,cAAc,QAAQ,CAAC;AACvB,cAAc,OAAO,CAAC;AACtB,cAAc,cAAc,CAAC"}
@@ -5,6 +5,9 @@ export { getGroupedCornerRadiusTokens, getGroupedSpacingTokens } from './numberT
5
5
  export { getOpacityFromHex, getGroupedTokens, upperFirstLetter } from './colorTokens';
6
6
  export { getGroupedTypographyTokens, typographyPangrams, typographyToCssMap } from './typographyTokens';
7
7
  export { getConfigVariations } from './getConfigVariations';
8
+ export { collectTokenUsage, searchTokens, getUsageCount, groupUsagesByComponent, groupUsagesByVariation, getTokenInfo, getTokenKind, getComputedTokenValue, collapseTypographyProperty, getTypographyStyle, plural, } from './tokenUsage';
9
+ export { convertTheme } from './convertTheme';
8
10
  export type { GroupedTokens, TokenData } from './colorTokens';
9
11
  export type { GroupedNumberTokens } from './numberTokens';
10
12
  export type { TypographyStructure, TypographyProperties, Breakpoint, TypographyWeight } from './typographyTokens';
13
+ export type { TokenUsageEntry, TokenUsageIndex, TokenKind } from './tokenUsage';
@@ -5,4 +5,6 @@ export { getGroupedCornerRadiusTokens, getGroupedSpacingTokens } from './numberT
5
5
  export { getOpacityFromHex, getGroupedTokens, upperFirstLetter } from './colorTokens';
6
6
  export { getGroupedTypographyTokens, typographyPangrams, typographyToCssMap } from './typographyTokens';
7
7
  export { getConfigVariations } from './getConfigVariations';
8
+ export { collectTokenUsage, searchTokens, getUsageCount, groupUsagesByComponent, groupUsagesByVariation, getTokenInfo, getTokenKind, getComputedTokenValue, collapseTypographyProperty, getTypographyStyle, plural, } from './tokenUsage';
9
+ export { convertTheme } from './convertTheme';
8
10
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/helpers/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,wBAAwB,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAC;AAChF,OAAO,EAAE,4BAA4B,EAAE,uBAAuB,EAAE,MAAM,gBAAgB,CAAC;AACvF,OAAO,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AACtF,OAAO,EAAE,0BAA0B,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AACxG,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/helpers/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,wBAAwB,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAC;AAChF,OAAO,EAAE,4BAA4B,EAAE,uBAAuB,EAAE,MAAM,gBAAgB,CAAC;AACvF,OAAO,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AACtF,OAAO,EAAE,0BAA0B,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AACxG,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EACH,iBAAiB,EACjB,YAAY,EACZ,aAAa,EACb,sBAAsB,EACtB,sBAAsB,EACtB,YAAY,EACZ,YAAY,EACZ,qBAAqB,EACrB,0BAA0B,EAC1B,kBAAkB,EAClB,MAAM,GACT,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC"}
@@ -0,0 +1,56 @@
1
+ type ThemeTokens = Record<string, string>;
2
+ export type TokenUsageEntry = {
3
+ component: string;
4
+ /** Конфигурация компонента: `clear` */
5
+ variant: string;
6
+ /** `view`, `size`, `disabled` */
7
+ variation: string;
8
+ /** `accent`, `m` */
9
+ value: string;
10
+ /** Куда попал токен: `--plasma-button-text-color` */
11
+ property: string;
12
+ /** Промежуточные переменные компонента, если токен пришёл через алиас */
13
+ via: string[];
14
+ };
15
+ export type TokenUsageIndex = {
16
+ /** имя токена -> где используется */
17
+ byToken: Record<string, TokenUsageEntry[]>;
18
+ /** Токен -> его css-переменные */
19
+ cssVarsByToken: Record<string, string[]>;
20
+ /** Все токены темы, включая неиспользуемые */
21
+ tokenKeys: string[];
22
+ usedTokenKeys: string[];
23
+ stats: {
24
+ components: number;
25
+ tokens: number;
26
+ usedTokens: number;
27
+ usages: number;
28
+ };
29
+ };
30
+ export declare const getTokenKey: (cssVar: string) => string;
31
+ export declare const collapseTypographyProperty: (property: string) => string;
32
+ export declare const stringifyCss: (value: unknown, depth?: number) => string;
33
+ /**
34
+ * @param configModules результат `import.meta.glob` по конфигам пакета, `{ eager: true }`
35
+ * @param themeTokens результат `convertTheme(theme[0])`
36
+ */
37
+ export declare const collectTokenUsage: (configModules: Record<string, unknown>, themeTokens: ThemeTokens) => TokenUsageIndex;
38
+ export declare const getUsageCount: (index: TokenUsageIndex, token: string) => number;
39
+ /**
40
+ * Поиск по всей теме, неиспользуемые токены в конце.
41
+ */
42
+ export declare const searchTokens: (index: TokenUsageIndex, query: string) => string[];
43
+ export declare const groupUsagesByComponent: (usages: TokenUsageEntry[]) => [string, TokenUsageEntry[]][];
44
+ export declare const groupUsagesByVariation: (usages: TokenUsageEntry[]) => [string, TokenUsageEntry[]][];
45
+ export type TokenKind = 'color' | 'typography' | 'shadow' | 'number' | 'other';
46
+ export declare const getTokenKind: (cssVar?: string) => TokenKind;
47
+ export declare const getTypographyStyle: (cssVars?: string[]) => Record<string, string>;
48
+ /** `plural(2, ['токен', 'токена', 'токенов'])` -> `токена` */
49
+ export declare const plural: (count: number, forms: [string, string, string]) => string;
50
+ export declare const getComputedTokenValue: (cssVar: string | undefined, themeTokens: ThemeTokens) => string | undefined;
51
+ export declare const getTokenInfo: (index: TokenUsageIndex, themeTokens: ThemeTokens, token: string) => {
52
+ cssVars: string[];
53
+ kind: TokenKind;
54
+ value: string | undefined;
55
+ };
56
+ export {};