@weavix/tracker-components 0.1.1 → 0.1.3

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 (131) hide show
  1. package/README.md +29 -1
  2. package/build/cjs/components/Icon/EntityIcon/EntityIcon.js +2 -3
  3. package/build/cjs/components/Icon/EntityIcon/EntityIcon.js.map +1 -1
  4. package/build/cjs/components/Icon/IconRefuge/IconRefuge.classname.js.map +1 -1
  5. package/build/cjs/components/Icon/IconRefuge/IconRefuge.css +0 -3
  6. package/build/cjs/components/Icon/IconRefuge/IconRefuge.css.map +1 -1
  7. package/build/cjs/components/Icon/IssueTypeIcon/IssueTypeIcon.js +30 -50
  8. package/build/cjs/components/Icon/IssueTypeIcon/IssueTypeIcon.js.map +1 -1
  9. package/build/cjs/components/Icon/IssueTypeIcon/README.md +42 -0
  10. package/build/cjs/components/Icon/MetaEntityIcon/README.md +10 -0
  11. package/build/cjs/components/Icon/PortfolioIcon/PortfolioIcon.d.ts +4 -1
  12. package/build/cjs/components/Icon/PortfolioIcon/PortfolioIcon.js +1 -0
  13. package/build/cjs/components/Icon/PortfolioIcon/PortfolioIcon.js.map +1 -1
  14. package/build/cjs/components/Icon/PortfolioIcon/README.md +7 -0
  15. package/build/cjs/components/Icon/PriorityIcon/PriorityIcon.classname.d.ts +1 -0
  16. package/build/cjs/components/Icon/PriorityIcon/PriorityIcon.classname.js +9 -0
  17. package/build/cjs/components/Icon/PriorityIcon/PriorityIcon.classname.js.map +1 -0
  18. package/build/cjs/components/Icon/PriorityIcon/PriorityIcon.css +45 -0
  19. package/build/cjs/components/Icon/PriorityIcon/PriorityIcon.css.map +1 -0
  20. package/build/cjs/components/Icon/PriorityIcon/PriorityIcon.d.ts +13 -0
  21. package/build/cjs/components/Icon/PriorityIcon/PriorityIcon.js +80 -0
  22. package/build/cjs/components/Icon/PriorityIcon/PriorityIcon.js.map +1 -0
  23. package/build/cjs/components/Icon/PriorityIcon/README.md +172 -0
  24. package/build/cjs/components/Icon/PriorityIcon/i18n.d.ts +6 -0
  25. package/build/cjs/components/Icon/PriorityIcon/i18n.js +13 -0
  26. package/build/cjs/components/Icon/PriorityIcon/i18n.js.map +1 -0
  27. package/build/cjs/components/Icon/PriorityIcon/index.d.ts +3 -0
  28. package/build/cjs/components/Icon/PriorityIcon/index.js +13 -0
  29. package/build/cjs/components/Icon/PriorityIcon/index.js.map +1 -0
  30. package/build/cjs/components/Icon/PriorityIcon/types.d.ts +1 -0
  31. package/build/cjs/components/Icon/PriorityIcon/types.js +6 -0
  32. package/build/cjs/components/Icon/PriorityIcon/types.js.map +1 -0
  33. package/build/cjs/components/Icon/StatusIcon/README.md +128 -0
  34. package/build/cjs/components/Icon/StatusIcon/StatusIcon.classname.d.ts +1 -0
  35. package/build/cjs/components/Icon/StatusIcon/StatusIcon.classname.js +9 -0
  36. package/build/cjs/components/Icon/StatusIcon/StatusIcon.classname.js.map +1 -0
  37. package/build/cjs/components/Icon/StatusIcon/StatusIcon.css +28 -0
  38. package/build/cjs/components/Icon/StatusIcon/StatusIcon.css.map +1 -0
  39. package/build/cjs/components/Icon/StatusIcon/StatusIcon.d.ts +10 -0
  40. package/build/cjs/components/Icon/StatusIcon/StatusIcon.js +43 -0
  41. package/build/cjs/components/Icon/StatusIcon/StatusIcon.js.map +1 -0
  42. package/build/cjs/components/Icon/StatusIcon/i18n.d.ts +6 -0
  43. package/build/cjs/components/Icon/StatusIcon/i18n.js +13 -0
  44. package/build/cjs/components/Icon/StatusIcon/i18n.js.map +1 -0
  45. package/build/cjs/components/Icon/StatusIcon/index.d.ts +3 -0
  46. package/build/cjs/components/Icon/StatusIcon/index.js +13 -0
  47. package/build/cjs/components/Icon/StatusIcon/index.js.map +1 -0
  48. package/build/cjs/components/Icon/StatusIcon/types.d.ts +3 -0
  49. package/build/cjs/components/Icon/StatusIcon/types.js +6 -0
  50. package/build/cjs/components/Icon/StatusIcon/types.js.map +1 -0
  51. package/build/cjs/components/Icon/StatusIcon/utils.d.ts +3 -0
  52. package/build/cjs/components/Icon/StatusIcon/utils.js +39 -0
  53. package/build/cjs/components/Icon/StatusIcon/utils.js.map +1 -0
  54. package/build/cjs/components/Icon/index.d.ts +2 -0
  55. package/build/cjs/components/Icon/index.js +22 -0
  56. package/build/cjs/components/Icon/index.js.map +1 -1
  57. package/build/cjs/components/MetaEntitiesSelect/README.md +10 -0
  58. package/build/cjs/components/PluginFieldsSelect/README.md +18 -0
  59. package/build/cjs/components/QueueSelect/README.md +10 -0
  60. package/build/esm/components/Icon/EntityIcon/EntityIcon.js +2 -3
  61. package/build/esm/components/Icon/EntityIcon/EntityIcon.js.map +1 -1
  62. package/build/esm/components/Icon/IconRefuge/IconRefuge.classname.js.map +1 -1
  63. package/build/esm/components/Icon/IconRefuge/IconRefuge.css +0 -3
  64. package/build/esm/components/Icon/IconRefuge/IconRefuge.css.map +1 -1
  65. package/build/esm/components/Icon/IconRefuge/IconRefuge.scss +0 -4
  66. package/build/esm/components/Icon/IssueTypeIcon/IssueTypeIcon.js +30 -50
  67. package/build/esm/components/Icon/IssueTypeIcon/IssueTypeIcon.js.map +1 -1
  68. package/build/esm/components/Icon/IssueTypeIcon/README.md +42 -0
  69. package/build/esm/components/Icon/MetaEntityIcon/README.md +10 -0
  70. package/build/esm/components/Icon/PortfolioIcon/PortfolioIcon.d.ts +4 -1
  71. package/build/esm/components/Icon/PortfolioIcon/PortfolioIcon.js +1 -0
  72. package/build/esm/components/Icon/PortfolioIcon/PortfolioIcon.js.map +1 -1
  73. package/build/esm/components/Icon/PortfolioIcon/README.md +7 -0
  74. package/build/esm/components/Icon/PriorityIcon/PriorityIcon.classname.d.ts +1 -0
  75. package/build/esm/components/Icon/PriorityIcon/PriorityIcon.classname.js +3 -0
  76. package/build/esm/components/Icon/PriorityIcon/PriorityIcon.classname.js.map +1 -0
  77. package/build/esm/components/Icon/PriorityIcon/PriorityIcon.css +45 -0
  78. package/build/esm/components/Icon/PriorityIcon/PriorityIcon.css.map +1 -0
  79. package/build/esm/components/Icon/PriorityIcon/PriorityIcon.d.ts +13 -0
  80. package/build/esm/components/Icon/PriorityIcon/PriorityIcon.js +73 -0
  81. package/build/esm/components/Icon/PriorityIcon/PriorityIcon.js.map +1 -0
  82. package/build/esm/components/Icon/{Icon.scss → PriorityIcon/PriorityIcon.scss} +26 -8
  83. package/build/esm/components/Icon/PriorityIcon/README.md +172 -0
  84. package/build/esm/components/Icon/PriorityIcon/i18n.d.ts +6 -0
  85. package/build/esm/components/Icon/PriorityIcon/i18n.js +7 -0
  86. package/build/esm/components/Icon/PriorityIcon/i18n.js.map +1 -0
  87. package/build/esm/components/Icon/PriorityIcon/index.d.ts +3 -0
  88. package/build/esm/components/Icon/PriorityIcon/index.js +2 -0
  89. package/build/esm/components/Icon/PriorityIcon/index.js.map +1 -0
  90. package/build/esm/components/Icon/PriorityIcon/types.d.ts +1 -0
  91. package/build/esm/components/Icon/PriorityIcon/types.js +2 -0
  92. package/build/esm/components/Icon/PriorityIcon/types.js.map +1 -0
  93. package/build/esm/components/Icon/StatusIcon/README.md +128 -0
  94. package/build/esm/components/Icon/StatusIcon/StatusIcon.classname.d.ts +1 -0
  95. package/build/esm/components/Icon/StatusIcon/StatusIcon.classname.js +3 -0
  96. package/build/esm/components/Icon/StatusIcon/StatusIcon.classname.js.map +1 -0
  97. package/build/esm/components/Icon/StatusIcon/StatusIcon.css +28 -0
  98. package/build/esm/components/Icon/StatusIcon/StatusIcon.css.map +1 -0
  99. package/build/esm/components/Icon/StatusIcon/StatusIcon.d.ts +10 -0
  100. package/build/esm/components/Icon/StatusIcon/StatusIcon.js +36 -0
  101. package/build/esm/components/Icon/StatusIcon/StatusIcon.js.map +1 -0
  102. package/build/esm/components/Icon/StatusIcon/StatusIcon.scss +46 -0
  103. package/build/esm/components/Icon/StatusIcon/i18n.d.ts +6 -0
  104. package/build/esm/components/Icon/StatusIcon/i18n.js +7 -0
  105. package/build/esm/components/Icon/StatusIcon/i18n.js.map +1 -0
  106. package/build/esm/components/Icon/StatusIcon/index.d.ts +3 -0
  107. package/build/esm/components/Icon/StatusIcon/index.js +2 -0
  108. package/build/esm/components/Icon/StatusIcon/index.js.map +1 -0
  109. package/build/esm/components/Icon/StatusIcon/types.d.ts +3 -0
  110. package/build/esm/components/Icon/StatusIcon/types.js +2 -0
  111. package/build/esm/components/Icon/StatusIcon/types.js.map +1 -0
  112. package/build/esm/components/Icon/StatusIcon/utils.d.ts +3 -0
  113. package/build/esm/components/Icon/StatusIcon/utils.js +33 -0
  114. package/build/esm/components/Icon/StatusIcon/utils.js.map +1 -0
  115. package/build/esm/components/Icon/index.d.ts +2 -0
  116. package/build/esm/components/Icon/index.js +2 -0
  117. package/build/esm/components/Icon/index.js.map +1 -1
  118. package/build/esm/components/MetaEntitiesSelect/README.md +10 -0
  119. package/build/esm/components/PluginFieldsSelect/README.md +18 -0
  120. package/build/esm/components/QueueSelect/README.md +10 -0
  121. package/package.json +1 -1
  122. package/build/cjs/components/Icon/Icon.classname.d.ts +0 -1
  123. package/build/cjs/components/Icon/Icon.classname.js +0 -9
  124. package/build/cjs/components/Icon/Icon.classname.js.map +0 -1
  125. package/build/cjs/components/Icon/Icon.css +0 -33
  126. package/build/cjs/components/Icon/Icon.css.map +0 -1
  127. package/build/esm/components/Icon/Icon.classname.d.ts +0 -1
  128. package/build/esm/components/Icon/Icon.classname.js +0 -3
  129. package/build/esm/components/Icon/Icon.classname.js.map +0 -1
  130. package/build/esm/components/Icon/Icon.css +0 -33
  131. package/build/esm/components/Icon/Icon.css.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"names":["_EntityIcon","require","Object","keys","forEach","key","exports","defineProperty","enumerable","get","_GoalIcon","_IconRefuge","_IssueTypeIcon","_KeyResultIcon","_MetaEntityIcon","_PortfolioIcon","_ProjectIcon"],"sources":["index.ts"],"sourcesContent":["export * from './EntityIcon';\nexport * from './GoalIcon';\nexport * from './IconRefuge';\nexport * from './IssueTypeIcon';\nexport * from './KeyResultIcon';\nexport * from './MetaEntityIcon';\nexport * from './PortfolioIcon';\nexport * from './ProjectIcon';\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_EntityIcon","require","Object","keys","forEach","key","exports","defineProperty","enumerable","get","_GoalIcon","_IconRefuge","_IssueTypeIcon","_KeyResultIcon","_MetaEntityIcon","_PortfolioIcon","_PriorityIcon","_ProjectIcon","_StatusIcon"],"sources":["index.ts"],"sourcesContent":["export * from './EntityIcon';\nexport * from './GoalIcon';\nexport * from './IconRefuge';\nexport * from './IssueTypeIcon';\nexport * from './KeyResultIcon';\nexport * from './MetaEntityIcon';\nexport * from './PortfolioIcon';\nexport * from './PriorityIcon';\nexport * from './ProjectIcon';\nexport * from './StatusIcon';\n"],"mappings":"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","ignoreList":[]}
@@ -100,6 +100,16 @@ type MetaEntityV2 = {
100
100
 
101
101
  `MetaEntitiesSelect` is data-agnostic — it accepts items via the `getItems` prop. You are responsible for fetching data from the Tracker API and passing it to the component.
102
102
 
103
+ Requires the `"tracker:entities:write"` permission in your plugin's `manifest.json`:
104
+
105
+ ```json
106
+ {
107
+ "permissions": {
108
+ "data": ["tracker:entities:write"]
109
+ }
110
+ }
111
+ ```
112
+
103
113
  ### Getting projects
104
114
 
105
115
  Use the entities search endpoint to fetch projects (or other entity types):
@@ -235,6 +235,24 @@ type TrackerSelectItem = {
235
235
 
236
236
  `PluginFieldsSelect` is data-agnostic — it accepts fields via the `fields` prop. You are responsible for fetching data from the Tracker API and passing it to the component.
237
237
 
238
+ Add the required permissions to your plugin's `manifest.json`:
239
+
240
+ ```json
241
+ {
242
+ "permissions": {
243
+ "data": [
244
+ "tracker:fields:read",
245
+ "tracker:fields:write",
246
+ "tracker:queues:read"
247
+ ]
248
+ }
249
+ }
250
+ ```
251
+
252
+ - `tracker:fields:read` — required for `GET /fields` and `POST /fields/_suggest`
253
+ - `tracker:fields:write` — required if your plugin writes field values back to Tracker
254
+ - `tracker:queues:read` — required when using `localFields: true` with queue keys (Flow 3)
255
+
238
256
  There are three fetch flows depending on whether the user has typed anything and whether local (queue-specific) fields are needed.
239
257
 
240
258
  ### Flow 1 — Initial load (no user input)
@@ -178,6 +178,16 @@ type QueueSuggestItem = {
178
178
 
179
179
  `QueueSelect` is data-agnostic — it accepts queues via the `queues` prop and search results via the `onSearch` callback. You are responsible for fetching data from the Tracker API and passing it to the component.
180
180
 
181
+ Requires the `"tracker:queues:read"` permission in your plugin's `manifest.json`:
182
+
183
+ ```json
184
+ {
185
+ "permissions": {
186
+ "data": ["tracker:queues:read"]
187
+ }
188
+ }
189
+ ```
190
+
181
191
  There are two fetch flows depending on whether the user has typed anything in the search filter.
182
192
 
183
193
  ### Flow 1 — Initial load (no user input)
@@ -8,8 +8,7 @@ import { jsx as _jsx } from "react/jsx-runtime";
8
8
  export var EntityIcon = /*#__PURE__*/memo(function (_ref) {
9
9
  var data = _ref.data,
10
10
  className = _ref.className,
11
- _ref$id = _ref.id,
12
- id = _ref$id === void 0 ? ' ' : _ref$id,
11
+ id = _ref.id,
13
12
  type = _ref.type,
14
13
  _ref$refugeSize = _ref.refugeSize,
15
14
  refugeSize = _ref$refugeSize === void 0 ? 24 : _ref$refugeSize,
@@ -25,7 +24,7 @@ export var EntityIcon = /*#__PURE__*/memo(function (_ref) {
25
24
  colorAlpha = _ref$colorAlpha === void 0 ? 1 : _ref$colorAlpha;
26
25
  var theme = useThemeType();
27
26
  var randomColor = useColorGenerator({
28
- seed: String(id),
27
+ seed: id !== undefined ? String(id) : ' ',
29
28
  theme: theme
30
29
  });
31
30
  var color = "rgba(".concat(randomColor.rgb.r, ",").concat(randomColor.rgb.g, ",").concat(randomColor.rgb.b, ",").concat(colorAlpha, ")");
@@ -1 +1 @@
1
- {"version":3,"names":["React","memo","useColorGenerator","useThemeType","IconRefuge","cnEntityIcon","jsx","_jsx","EntityIcon","_ref","data","className","_ref$id","id","type","_ref$refugeSize","refugeSize","_ref$size","size","_ref$alpha","alpha","_ref$withBackground","withBackground","_ref$radius","radius","_ref$colorAlpha","colorAlpha","theme","randomColor","seed","String","color","concat","rgb","r","g","b","backgroundColor","containerStyle","background","containerClassName","displayName"],"sources":["EntityIcon.tsx"],"sourcesContent":["import type {FC} from 'react';\nimport React, {memo} from 'react';\n\nimport {type IconData, useColorGenerator, useThemeType} from '@gravity-ui/uikit';\n\nimport {IconRefuge} from '../IconRefuge';\n\nimport {cnEntityIcon} from './EntityIcon.classname';\n\nimport './EntityIcon.scss';\n\nexport type EntityIconProps = {\n data: IconData;\n className?: string;\n id?: number | string;\n type?: string;\n refugeSize?: number;\n size?: number;\n alpha?: number;\n withBackground?: boolean;\n radius?: 'm' | 'l';\n colorAlpha?: number;\n};\n\nexport const EntityIcon: FC<EntityIconProps> = memo(\n ({\n data,\n className,\n id = ' ',\n type,\n refugeSize = 24,\n size = 16,\n alpha = 0.15,\n withBackground = true,\n radius = 'm',\n colorAlpha = 1,\n }) => {\n const theme = useThemeType();\n\n const randomColor = useColorGenerator({seed: String(id), theme});\n\n const color = `rgba(${randomColor.rgb.r},${randomColor.rgb.g},${randomColor.rgb.b},${colorAlpha})`;\n const backgroundColor = `rgba(${randomColor.rgb.r},${randomColor.rgb.g},${randomColor.rgb.b},${alpha})`;\n\n const containerStyle: {\n background?: string;\n color?: string;\n } = {};\n\n if (withBackground) {\n containerStyle.background = backgroundColor;\n containerStyle.color = color;\n } else {\n containerStyle.color = backgroundColor;\n }\n\n return (\n <IconRefuge\n data={data}\n containerClassName={cnEntityIcon({type, radius}, className)}\n refugeSize={refugeSize}\n size={size}\n containerStyle={containerStyle}\n />\n );\n },\n);\n\nEntityIcon.displayName = 'EntityIcon';\n"],"mappings":";AACA,OAAOA,KAAK,IAAGC,IAAI,QAAO,OAAO;AAEjC,SAAuBC,iBAAiB,EAAEC,YAAY,QAAO,mBAAmB;AAEhF,SAAQC,UAAU;AAElB,SAAQC,YAAY;AAEpB;AAA2B,SAAAC,GAAA,IAAAC,IAAA;AAe3B,OAAO,IAAMC,UAA+B,gBAAGP,IAAI,CAC/C,UAAAQ,IAAA,EAWM;EAAA,IAVFC,IAAI,GAAAD,IAAA,CAAJC,IAAI;IACJC,SAAS,GAAAF,IAAA,CAATE,SAAS;IAAAC,OAAA,GAAAH,IAAA,CACTI,EAAE;IAAFA,EAAE,GAAAD,OAAA,cAAG,GAAG,GAAAA,OAAA;IACRE,IAAI,GAAAL,IAAA,CAAJK,IAAI;IAAAC,eAAA,GAAAN,IAAA,CACJO,UAAU;IAAVA,UAAU,GAAAD,eAAA,cAAG,EAAE,GAAAA,eAAA;IAAAE,SAAA,GAAAR,IAAA,CACfS,IAAI;IAAJA,IAAI,GAAAD,SAAA,cAAG,EAAE,GAAAA,SAAA;IAAAE,UAAA,GAAAV,IAAA,CACTW,KAAK;IAALA,KAAK,GAAAD,UAAA,cAAG,IAAI,GAAAA,UAAA;IAAAE,mBAAA,GAAAZ,IAAA,CACZa,cAAc;IAAdA,cAAc,GAAAD,mBAAA,cAAG,IAAI,GAAAA,mBAAA;IAAAE,WAAA,GAAAd,IAAA,CACrBe,MAAM;IAANA,MAAM,GAAAD,WAAA,cAAG,GAAG,GAAAA,WAAA;IAAAE,eAAA,GAAAhB,IAAA,CACZiB,UAAU;IAAVA,UAAU,GAAAD,eAAA,cAAG,CAAC,GAAAA,eAAA;EAEd,IAAME,KAAK,GAAGxB,YAAY,CAAC,CAAC;EAE5B,IAAMyB,WAAW,GAAG1B,iBAAiB,CAAC;IAAC2B,IAAI,EAAEC,MAAM,CAACjB,EAAE,CAAC;IAAEc,KAAK,EAALA;EAAK,CAAC,CAAC;EAEhE,IAAMI,KAAK,WAAAC,MAAA,CAAWJ,WAAW,CAACK,GAAG,CAACC,CAAC,OAAAF,MAAA,CAAIJ,WAAW,CAACK,GAAG,CAACE,CAAC,OAAAH,MAAA,CAAIJ,WAAW,CAACK,GAAG,CAACG,CAAC,OAAAJ,MAAA,CAAIN,UAAU,MAAG;EAClG,IAAMW,eAAe,WAAAL,MAAA,CAAWJ,WAAW,CAACK,GAAG,CAACC,CAAC,OAAAF,MAAA,CAAIJ,WAAW,CAACK,GAAG,CAACE,CAAC,OAAAH,MAAA,CAAIJ,WAAW,CAACK,GAAG,CAACG,CAAC,OAAAJ,MAAA,CAAIZ,KAAK,MAAG;EAEvG,IAAMkB,cAGL,GAAG,CAAC,CAAC;EAEN,IAAIhB,cAAc,EAAE;IAChBgB,cAAc,CAACC,UAAU,GAAGF,eAAe;IAC3CC,cAAc,CAACP,KAAK,GAAGA,KAAK;EAChC,CAAC,MAAM;IACHO,cAAc,CAACP,KAAK,GAAGM,eAAe;EAC1C;EAEA,oBACI9B,IAAA,CAACH,UAAU;IACPM,IAAI,EAAEA,IAAK;IACX8B,kBAAkB,EAAEnC,YAAY,CAAC;MAACS,IAAI,EAAJA,IAAI;MAAEU,MAAM,EAANA;IAAM,CAAC,EAAEb,SAAS,CAAE;IAC5DK,UAAU,EAAEA,UAAW;IACvBE,IAAI,EAAEA,IAAK;IACXoB,cAAc,EAAEA;EAAe,CAClC,CAAC;AAEV,CACJ,CAAC;AAED9B,UAAU,CAACiC,WAAW,GAAG,YAAY","ignoreList":[]}
1
+ {"version":3,"names":["React","memo","useColorGenerator","useThemeType","IconRefuge","cnEntityIcon","jsx","_jsx","EntityIcon","_ref","data","className","id","type","_ref$refugeSize","refugeSize","_ref$size","size","_ref$alpha","alpha","_ref$withBackground","withBackground","_ref$radius","radius","_ref$colorAlpha","colorAlpha","theme","randomColor","seed","undefined","String","color","concat","rgb","r","g","b","backgroundColor","containerStyle","background","containerClassName","displayName"],"sources":["EntityIcon.tsx"],"sourcesContent":["import type {FC} from 'react';\nimport React, {memo} from 'react';\n\nimport {type IconData, useColorGenerator, useThemeType} from '@gravity-ui/uikit';\n\nimport {IconRefuge} from '../IconRefuge';\n\nimport {cnEntityIcon} from './EntityIcon.classname';\n\nimport './EntityIcon.scss';\n\nexport type EntityIconProps = {\n data: IconData;\n className?: string;\n id?: number | string;\n type?: string;\n refugeSize?: number;\n size?: number;\n alpha?: number;\n withBackground?: boolean;\n radius?: 'm' | 'l';\n colorAlpha?: number;\n};\n\nexport const EntityIcon: FC<EntityIconProps> = memo(\n ({\n data,\n className,\n id,\n type,\n refugeSize = 24,\n size = 16,\n alpha = 0.15,\n withBackground = true,\n radius = 'm',\n colorAlpha = 1,\n }) => {\n const theme = useThemeType();\n\n const randomColor = useColorGenerator({seed: id !== undefined ? String(id) : ' ', theme});\n\n const color = `rgba(${randomColor.rgb.r},${randomColor.rgb.g},${randomColor.rgb.b},${colorAlpha})`;\n const backgroundColor = `rgba(${randomColor.rgb.r},${randomColor.rgb.g},${randomColor.rgb.b},${alpha})`;\n\n const containerStyle: {\n background?: string;\n color?: string;\n } = {};\n\n if (withBackground) {\n containerStyle.background = backgroundColor;\n containerStyle.color = color;\n } else {\n containerStyle.color = backgroundColor;\n }\n\n return (\n <IconRefuge\n data={data}\n containerClassName={cnEntityIcon({type, radius}, className)}\n refugeSize={refugeSize}\n size={size}\n containerStyle={containerStyle}\n />\n );\n },\n);\n\nEntityIcon.displayName = 'EntityIcon';\n"],"mappings":";AACA,OAAOA,KAAK,IAAGC,IAAI,QAAO,OAAO;AAEjC,SAAuBC,iBAAiB,EAAEC,YAAY,QAAO,mBAAmB;AAEhF,SAAQC,UAAU;AAElB,SAAQC,YAAY;AAEpB;AAA2B,SAAAC,GAAA,IAAAC,IAAA;AAe3B,OAAO,IAAMC,UAA+B,gBAAGP,IAAI,CAC/C,UAAAQ,IAAA,EAWM;EAAA,IAVFC,IAAI,GAAAD,IAAA,CAAJC,IAAI;IACJC,SAAS,GAAAF,IAAA,CAATE,SAAS;IACTC,EAAE,GAAAH,IAAA,CAAFG,EAAE;IACFC,IAAI,GAAAJ,IAAA,CAAJI,IAAI;IAAAC,eAAA,GAAAL,IAAA,CACJM,UAAU;IAAVA,UAAU,GAAAD,eAAA,cAAG,EAAE,GAAAA,eAAA;IAAAE,SAAA,GAAAP,IAAA,CACfQ,IAAI;IAAJA,IAAI,GAAAD,SAAA,cAAG,EAAE,GAAAA,SAAA;IAAAE,UAAA,GAAAT,IAAA,CACTU,KAAK;IAALA,KAAK,GAAAD,UAAA,cAAG,IAAI,GAAAA,UAAA;IAAAE,mBAAA,GAAAX,IAAA,CACZY,cAAc;IAAdA,cAAc,GAAAD,mBAAA,cAAG,IAAI,GAAAA,mBAAA;IAAAE,WAAA,GAAAb,IAAA,CACrBc,MAAM;IAANA,MAAM,GAAAD,WAAA,cAAG,GAAG,GAAAA,WAAA;IAAAE,eAAA,GAAAf,IAAA,CACZgB,UAAU;IAAVA,UAAU,GAAAD,eAAA,cAAG,CAAC,GAAAA,eAAA;EAEd,IAAME,KAAK,GAAGvB,YAAY,CAAC,CAAC;EAE5B,IAAMwB,WAAW,GAAGzB,iBAAiB,CAAC;IAAC0B,IAAI,EAAEhB,EAAE,KAAKiB,SAAS,GAAGC,MAAM,CAAClB,EAAE,CAAC,GAAG,GAAG;IAAEc,KAAK,EAALA;EAAK,CAAC,CAAC;EAEzF,IAAMK,KAAK,WAAAC,MAAA,CAAWL,WAAW,CAACM,GAAG,CAACC,CAAC,OAAAF,MAAA,CAAIL,WAAW,CAACM,GAAG,CAACE,CAAC,OAAAH,MAAA,CAAIL,WAAW,CAACM,GAAG,CAACG,CAAC,OAAAJ,MAAA,CAAIP,UAAU,MAAG;EAClG,IAAMY,eAAe,WAAAL,MAAA,CAAWL,WAAW,CAACM,GAAG,CAACC,CAAC,OAAAF,MAAA,CAAIL,WAAW,CAACM,GAAG,CAACE,CAAC,OAAAH,MAAA,CAAIL,WAAW,CAACM,GAAG,CAACG,CAAC,OAAAJ,MAAA,CAAIb,KAAK,MAAG;EAEvG,IAAMmB,cAGL,GAAG,CAAC,CAAC;EAEN,IAAIjB,cAAc,EAAE;IAChBiB,cAAc,CAACC,UAAU,GAAGF,eAAe;IAC3CC,cAAc,CAACP,KAAK,GAAGA,KAAK;EAChC,CAAC,MAAM;IACHO,cAAc,CAACP,KAAK,GAAGM,eAAe;EAC1C;EAEA,oBACI9B,IAAA,CAACH,UAAU;IACPM,IAAI,EAAEA,IAAK;IACX8B,kBAAkB,EAAEnC,YAAY,CAAC;MAACQ,IAAI,EAAJA,IAAI;MAAEU,MAAM,EAANA;IAAM,CAAC,EAAEZ,SAAS,CAAE;IAC5DI,UAAU,EAAEA,UAAW;IACvBE,IAAI,EAAEA,IAAK;IACXqB,cAAc,EAAEA;EAAe,CAClC,CAAC;AAEV,CACJ,CAAC;AAED9B,UAAU,CAACiC,WAAW,GAAG,YAAY","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["block","cnIconRefuge"],"sources":["IconRefuge.classname.tsx"],"sourcesContent":["import {block} from '~/src/components/cn';\n\nexport const cnIconRefuge = block('icon-refuge');\n"],"mappings":"AAAA,SAAQA,KAAK;AAEb,OAAO,IAAMC,YAAY,GAAGD,KAAK,CAAC,aAAa,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["block","cnIconRefuge"],"sources":["IconRefuge.classname.ts"],"sourcesContent":["import {block} from '~/src/components/cn';\n\nexport const cnIconRefuge = block('icon-refuge');\n"],"mappings":"AAAA,SAAQA,KAAK;AAEb,OAAO,IAAMC,YAAY,GAAGD,KAAK,CAAC,aAAa,CAAC","ignoreList":[]}
@@ -3,9 +3,6 @@
3
3
  align-items: center;
4
4
  justify-content: center;
5
5
  }
6
- .tpc-icon-refuge_inline {
7
- display: inline-flex;
8
- }
9
6
  .tpc-icon-refuge__hidden-label {
10
7
  position: absolute;
11
8
  overflow: hidden;
@@ -1 +1 @@
1
- {"version":3,"sources":["IconRefuge.scss"],"names":[],"mappings":"AAAA;EACI,oBAAA;EACA,mBAAA;EACA,uBAAA;AACJ;AACI;EACI,oBAAA;AACR;AAEI;EACI,kBAAA;EAEA,gBAAA;EACA,mBAAA;EAEA,UAAA;EACA,WAAA;EACA,UAAA;EACA,YAAA;EAEA,mBAAA;AAHR","file":"IconRefuge.css","sourcesContent":[".tpc-icon-refuge {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n\n &_inline {\n display: inline-flex;\n }\n\n &__hidden-label {\n position: absolute;\n\n overflow: hidden;\n clip: rect(0 0 0 0);\n\n width: 1px;\n height: 1px;\n padding: 0;\n margin: -1px;\n\n white-space: nowrap;\n }\n}\n"],"sourceRoot":""}
1
+ {"version":3,"sources":["IconRefuge.scss"],"names":[],"mappings":"AAAA;EACI,oBAAA;EACA,mBAAA;EACA,uBAAA;AACJ;AACI;EACI,kBAAA;EAEA,gBAAA;EACA,mBAAA;EAEA,UAAA;EACA,WAAA;EACA,UAAA;EACA,YAAA;EAEA,mBAAA;AAFR","file":"IconRefuge.css","sourcesContent":[".tpc-icon-refuge {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n\n &__hidden-label {\n position: absolute;\n\n overflow: hidden;\n clip: rect(0 0 0 0);\n\n width: 1px;\n height: 1px;\n padding: 0;\n margin: -1px;\n\n white-space: nowrap;\n }\n}\n"],"sourceRoot":""}
@@ -3,10 +3,6 @@
3
3
  align-items: center;
4
4
  justify-content: center;
5
5
 
6
- &_inline {
7
- display: inline-flex;
8
- }
9
-
10
6
  &__hidden-label {
11
7
  position: absolute;
12
8
 
@@ -1,7 +1,6 @@
1
1
  import React from 'react';
2
2
  import { getConfig } from '@gravity-ui/uikit';
3
3
  import { useLocalizedString } from "./../../../hooks/useLocalizedString";
4
- import { cnIcon } from "../Icon.classname";
5
4
  import { IconRefuge } from "../IconRefuge";
6
5
  import { cnIssueTypeIcon } from "./IssueTypeIcon.classname";
7
6
  import { defaultMessages } from "./i18n";
@@ -25,47 +24,28 @@ import taskIcon from "../../../assets/icons/issue-type/task";
25
24
  import technicalDebtIcon from "../../../assets/icons/issue-type/technical-debt";
26
25
  import "./IssueTypeIcon.css";
27
26
  import { jsx as _jsx } from "react/jsx-runtime";
28
- var getIconData = function getIconData(issueType) {
29
- switch (issueType) {
30
- case 'bug':
31
- return bugIcon;
32
- case 'design':
33
- return designIcon;
34
- case 'epic':
35
- return epicIcon;
36
- case 'improvement':
37
- return improvementIcon;
38
- case 'incident':
39
- return incidentIcon;
40
- case 'info':
41
- return infoIcon;
42
- case 'newFeature':
43
- return newFeatureIcon;
44
- case 'query':
45
- return queryIcon;
46
- case 'refactoring':
47
- return refactoringIcon;
48
- case 'release':
49
- return releaseIcon;
50
- case 'research':
51
- return researchIcon;
52
- case 'serviceRequest':
53
- return serviceRequestIcon;
54
- case 'story':
55
- return storyIcon;
56
- case 'subBug':
57
- return subbugIcon;
58
- case 'subTask':
59
- return subtaskIcon;
60
- case 'technicalDebt':
61
- return technicalDebtIcon;
62
- case 'milestone':
63
- return milestoneIcon;
64
- default:
65
- return taskIcon;
66
- }
27
+ var ISSUE_TYPE_ICONS = {
28
+ bug: bugIcon,
29
+ design: designIcon,
30
+ epic: epicIcon,
31
+ improvement: improvementIcon,
32
+ incident: incidentIcon,
33
+ info: infoIcon,
34
+ milestone: milestoneIcon,
35
+ newFeature: newFeatureIcon,
36
+ query: queryIcon,
37
+ refactoring: refactoringIcon,
38
+ release: releaseIcon,
39
+ research: researchIcon,
40
+ serviceRequest: serviceRequestIcon,
41
+ story: storyIcon,
42
+ subBug: subbugIcon,
43
+ subTask: subtaskIcon,
44
+ task: taskIcon,
45
+ technicalDebt: technicalDebtIcon
67
46
  };
68
47
  export var IssueTypeIcon = function IssueTypeIcon(_ref) {
48
+ var _ISSUE_TYPE_ICONS$iss;
69
49
  var className = _ref.className,
70
50
  containerClassName = _ref.containerClassName,
71
51
  _ref$issueType = _ref.issueType,
@@ -76,20 +56,20 @@ export var IssueTypeIcon = function IssueTypeIcon(_ref) {
76
56
  var config = getConfig();
77
57
  var _useLocalizedString = useLocalizedString(defaultMessages, config.lang),
78
58
  t = _useLocalizedString.t;
79
- var ariaLabel = title && t('type-label', {
80
- type: title
81
- });
59
+ var ariaLabel = title ? t('type-label', {
60
+ type: issueType
61
+ }) : undefined;
82
62
  return /*#__PURE__*/_jsx(IconRefuge, {
83
- className: cnIcon({
84
- issueType: issueType
85
- }, [cnIssueTypeIcon({
63
+ className: cnIssueTypeIcon({
86
64
  type: issueType
87
- }, className)]),
65
+ }, className),
88
66
  containerClassName: containerClassName,
89
- data: getIconData(issueType),
67
+ data: (_ISSUE_TYPE_ICONS$iss = ISSUE_TYPE_ICONS[issueType]) !== null && _ISSUE_TYPE_ICONS$iss !== void 0 ? _ISSUE_TYPE_ICONS$iss : taskIcon,
90
68
  refugeSize: size,
91
- "aria-label": ariaLabel
69
+ title: title,
70
+ "aria-label": ariaLabel,
71
+ "aria-hidden": !title || undefined
92
72
  });
93
73
  };
94
- IssueTypeIcon.displayName = cnIcon();
74
+ IssueTypeIcon.displayName = 'IssueTypeIcon';
95
75
  // #sourceMappingURL=IssueTypeIcon.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["React","getConfig","useLocalizedString","cnIcon","IconRefuge","cnIssueTypeIcon","defaultMessages","bugIcon","designIcon","epicIcon","improvementIcon","incidentIcon","infoIcon","milestoneIcon","newFeatureIcon","queryIcon","refactoringIcon","releaseIcon","researchIcon","serviceRequestIcon","storyIcon","subbugIcon","subtaskIcon","taskIcon","technicalDebtIcon","jsx","_jsx","getIconData","issueType","IssueTypeIcon","_ref","className","containerClassName","_ref$issueType","_ref$size","size","title","config","_useLocalizedString","lang","t","ariaLabel","type","data","refugeSize","displayName"],"sources":["IssueTypeIcon.tsx"],"sourcesContent":["import type {FC} from 'react';\nimport React from 'react';\n\nimport {getConfig} from '@gravity-ui/uikit';\n\nimport {useLocalizedString} from '~/src/hooks/useLocalizedString';\n\nimport {cnIcon} from '../Icon.classname';\nimport type {IconRefugeProps} from '../IconRefuge';\nimport {IconRefuge} from '../IconRefuge';\n\nimport {cnIssueTypeIcon} from './IssueTypeIcon.classname';\nimport {defaultMessages} from './i18n';\nimport type {IssueType} from './types';\n\nimport bugIcon from '../../../../assets/icons/issue-type/bug.svg';\nimport designIcon from '../../../../assets/icons/issue-type/design.svg';\nimport epicIcon from '../../../../assets/icons/issue-type/epic.svg';\nimport improvementIcon from '../../../../assets/icons/issue-type/improvement.svg';\nimport incidentIcon from '../../../../assets/icons/issue-type/incident.svg';\nimport infoIcon from '../../../../assets/icons/issue-type/info.svg';\nimport milestoneIcon from '../../../../assets/icons/issue-type/milestone.svg';\nimport newFeatureIcon from '../../../../assets/icons/issue-type/new-feature.svg';\nimport queryIcon from '../../../../assets/icons/issue-type/query.svg';\nimport refactoringIcon from '../../../../assets/icons/issue-type/refactoring.svg';\nimport releaseIcon from '../../../../assets/icons/issue-type/release.svg';\nimport researchIcon from '../../../../assets/icons/issue-type/research.svg';\nimport serviceRequestIcon from '../../../../assets/icons/issue-type/service-request.svg';\nimport storyIcon from '../../../../assets/icons/issue-type/story.svg';\nimport subbugIcon from '../../../../assets/icons/issue-type/subbug.svg';\nimport subtaskIcon from '../../../../assets/icons/issue-type/subtask.svg';\nimport taskIcon from '../../../../assets/icons/issue-type/task.svg';\nimport technicalDebtIcon from '../../../../assets/icons/issue-type/technical-debt.svg';\n\nimport './IssueTypeIcon.scss';\n\nexport type IssueTypeIconProps = Partial<Pick<IconRefugeProps, 'containerClassName' | 'title'>> & {\n className?: string;\n size?: number;\n issueType?: IssueType;\n};\n\nconst getIconData = (issueType: string) => {\n switch (issueType) {\n case 'bug':\n return bugIcon;\n case 'design':\n return designIcon;\n case 'epic':\n return epicIcon;\n case 'improvement':\n return improvementIcon;\n case 'incident':\n return incidentIcon;\n case 'info':\n return infoIcon;\n case 'newFeature':\n return newFeatureIcon;\n case 'query':\n return queryIcon;\n case 'refactoring':\n return refactoringIcon;\n case 'release':\n return releaseIcon;\n case 'research':\n return researchIcon;\n case 'serviceRequest':\n return serviceRequestIcon;\n case 'story':\n return storyIcon;\n case 'subBug':\n return subbugIcon;\n case 'subTask':\n return subtaskIcon;\n case 'technicalDebt':\n return technicalDebtIcon;\n case 'milestone':\n return milestoneIcon;\n\n default:\n return taskIcon;\n }\n};\n\nexport const IssueTypeIcon: FC<IssueTypeIconProps> = ({\n className,\n containerClassName,\n issueType = 'task',\n size = 16,\n title,\n}) => {\n const config = getConfig();\n const {t} = useLocalizedString(defaultMessages, config.lang);\n const ariaLabel = title && t('type-label', {type: title});\n\n return (\n <IconRefuge\n className={cnIcon({issueType}, [cnIssueTypeIcon({type: issueType}, className)])}\n containerClassName={containerClassName}\n data={getIconData(issueType)}\n refugeSize={size}\n aria-label={ariaLabel}\n />\n );\n};\n\nIssueTypeIcon.displayName = cnIcon();\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["React","getConfig","useLocalizedString","IconRefuge","cnIssueTypeIcon","defaultMessages","bugIcon","designIcon","epicIcon","improvementIcon","incidentIcon","infoIcon","milestoneIcon","newFeatureIcon","queryIcon","refactoringIcon","releaseIcon","researchIcon","serviceRequestIcon","storyIcon","subbugIcon","subtaskIcon","taskIcon","technicalDebtIcon","jsx","_jsx","ISSUE_TYPE_ICONS","bug","design","epic","improvement","incident","info","milestone","newFeature","query","refactoring","release","research","serviceRequest","story","subBug","subTask","task","technicalDebt","IssueTypeIcon","_ref","_ISSUE_TYPE_ICONS$iss","className","containerClassName","_ref$issueType","issueType","_ref$size","size","title","config","_useLocalizedString","lang","t","ariaLabel","type","undefined","data","refugeSize","displayName"],"sources":["IssueTypeIcon.tsx"],"sourcesContent":["import type {FC} from 'react';\nimport React from 'react';\n\nimport {type IconData, getConfig} from '@gravity-ui/uikit';\n\nimport {useLocalizedString} from '~/src/hooks/useLocalizedString';\n\nimport type {IconRefugeProps} from '../IconRefuge';\nimport {IconRefuge} from '../IconRefuge';\n\nimport {cnIssueTypeIcon} from './IssueTypeIcon.classname';\nimport {defaultMessages} from './i18n';\nimport type {IssueType} from './types';\n\nimport bugIcon from '../../../../assets/icons/issue-type/bug.svg';\nimport designIcon from '../../../../assets/icons/issue-type/design.svg';\nimport epicIcon from '../../../../assets/icons/issue-type/epic.svg';\nimport improvementIcon from '../../../../assets/icons/issue-type/improvement.svg';\nimport incidentIcon from '../../../../assets/icons/issue-type/incident.svg';\nimport infoIcon from '../../../../assets/icons/issue-type/info.svg';\nimport milestoneIcon from '../../../../assets/icons/issue-type/milestone.svg';\nimport newFeatureIcon from '../../../../assets/icons/issue-type/new-feature.svg';\nimport queryIcon from '../../../../assets/icons/issue-type/query.svg';\nimport refactoringIcon from '../../../../assets/icons/issue-type/refactoring.svg';\nimport releaseIcon from '../../../../assets/icons/issue-type/release.svg';\nimport researchIcon from '../../../../assets/icons/issue-type/research.svg';\nimport serviceRequestIcon from '../../../../assets/icons/issue-type/service-request.svg';\nimport storyIcon from '../../../../assets/icons/issue-type/story.svg';\nimport subbugIcon from '../../../../assets/icons/issue-type/subbug.svg';\nimport subtaskIcon from '../../../../assets/icons/issue-type/subtask.svg';\nimport taskIcon from '../../../../assets/icons/issue-type/task.svg';\nimport technicalDebtIcon from '../../../../assets/icons/issue-type/technical-debt.svg';\n\nimport './IssueTypeIcon.scss';\n\nexport type IssueTypeIconProps = Partial<Pick<IconRefugeProps, 'containerClassName' | 'title'>> & {\n className?: string;\n size?: number;\n issueType?: IssueType;\n};\n\nconst ISSUE_TYPE_ICONS: Record<IssueType, IconData> = {\n bug: bugIcon,\n design: designIcon,\n epic: epicIcon,\n improvement: improvementIcon,\n incident: incidentIcon,\n info: infoIcon,\n milestone: milestoneIcon,\n newFeature: newFeatureIcon,\n query: queryIcon,\n refactoring: refactoringIcon,\n release: releaseIcon,\n research: researchIcon,\n serviceRequest: serviceRequestIcon,\n story: storyIcon,\n subBug: subbugIcon,\n subTask: subtaskIcon,\n task: taskIcon,\n technicalDebt: technicalDebtIcon,\n};\n\nexport const IssueTypeIcon: FC<IssueTypeIconProps> = ({\n className,\n containerClassName,\n issueType = 'task',\n size = 16,\n title,\n}) => {\n const config = getConfig();\n const {t} = useLocalizedString(defaultMessages, config.lang);\n const ariaLabel = title ? t('type-label', {type: issueType}) : undefined;\n\n return (\n <IconRefuge\n className={cnIssueTypeIcon({type: issueType}, className)}\n containerClassName={containerClassName}\n data={ISSUE_TYPE_ICONS[issueType] ?? taskIcon}\n refugeSize={size}\n title={title}\n aria-label={ariaLabel}\n aria-hidden={!title || undefined}\n />\n );\n};\n\nIssueTypeIcon.displayName = 'IssueTypeIcon';\n"],"mappings":"AACA,OAAOA,KAAK,MAAM,OAAO;AAEzB,SAAuBC,SAAS,QAAO,mBAAmB;AAE1D,SAAQC,kBAAkB;AAG1B,SAAQC,UAAU;AAElB,SAAQC,eAAe;AACvB,SAAQC,eAAe;AAGvB,OAAOC,OAAO;AACd,OAAOC,UAAU;AACjB,OAAOC,QAAQ;AACf,OAAOC,eAAe;AACtB,OAAOC,YAAY;AACnB,OAAOC,QAAQ;AACf,OAAOC,aAAa;AACpB,OAAOC,cAAc;AACrB,OAAOC,SAAS;AAChB,OAAOC,eAAe;AACtB,OAAOC,WAAW;AAClB,OAAOC,YAAY;AACnB,OAAOC,kBAAkB;AACzB,OAAOC,SAAS;AAChB,OAAOC,UAAU;AACjB,OAAOC,WAAW;AAClB,OAAOC,QAAQ;AACf,OAAOC,iBAAiB;AAExB;AAA8B,SAAAC,GAAA,IAAAC,IAAA;AAQ9B,IAAMC,gBAA6C,GAAG;EAClDC,GAAG,EAAErB,OAAO;EACZsB,MAAM,EAAErB,UAAU;EAClBsB,IAAI,EAAErB,QAAQ;EACdsB,WAAW,EAAErB,eAAe;EAC5BsB,QAAQ,EAAErB,YAAY;EACtBsB,IAAI,EAAErB,QAAQ;EACdsB,SAAS,EAAErB,aAAa;EACxBsB,UAAU,EAAErB,cAAc;EAC1BsB,KAAK,EAAErB,SAAS;EAChBsB,WAAW,EAAErB,eAAe;EAC5BsB,OAAO,EAAErB,WAAW;EACpBsB,QAAQ,EAAErB,YAAY;EACtBsB,cAAc,EAAErB,kBAAkB;EAClCsB,KAAK,EAAErB,SAAS;EAChBsB,MAAM,EAAErB,UAAU;EAClBsB,OAAO,EAAErB,WAAW;EACpBsB,IAAI,EAAErB,QAAQ;EACdsB,aAAa,EAAErB;AACnB,CAAC;AAED,OAAO,IAAMsB,aAAqC,GAAG,SAAxCA,aAAqCA,CAAAC,IAAA,EAM5C;EAAA,IAAAC,qBAAA;EAAA,IALFC,SAAS,GAAAF,IAAA,CAATE,SAAS;IACTC,kBAAkB,GAAAH,IAAA,CAAlBG,kBAAkB;IAAAC,cAAA,GAAAJ,IAAA,CAClBK,SAAS;IAATA,SAAS,GAAAD,cAAA,cAAG,MAAM,GAAAA,cAAA;IAAAE,SAAA,GAAAN,IAAA,CAClBO,IAAI;IAAJA,IAAI,GAAAD,SAAA,cAAG,EAAE,GAAAA,SAAA;IACTE,KAAK,GAAAR,IAAA,CAALQ,KAAK;EAEL,IAAMC,MAAM,GAAGtD,SAAS,CAAC,CAAC;EAC1B,IAAAuD,mBAAA,GAAYtD,kBAAkB,CAACG,eAAe,EAAEkD,MAAM,CAACE,IAAI,CAAC;IAArDC,CAAC,GAAAF,mBAAA,CAADE,CAAC;EACR,IAAMC,SAAS,GAAGL,KAAK,GAAGI,CAAC,CAAC,YAAY,EAAE;IAACE,IAAI,EAAET;EAAS,CAAC,CAAC,GAAGU,SAAS;EAExE,oBACIpC,IAAA,CAACtB,UAAU;IACP6C,SAAS,EAAE5C,eAAe,CAAC;MAACwD,IAAI,EAAET;IAAS,CAAC,EAAEH,SAAS,CAAE;IACzDC,kBAAkB,EAAEA,kBAAmB;IACvCa,IAAI,GAAAf,qBAAA,GAAErB,gBAAgB,CAACyB,SAAS,CAAC,cAAAJ,qBAAA,cAAAA,qBAAA,GAAIzB,QAAS;IAC9CyC,UAAU,EAAEV,IAAK;IACjBC,KAAK,EAAEA,KAAM;IACb,cAAYK,SAAU;IACtB,eAAa,CAACL,KAAK,IAAIO;EAAU,CACpC,CAAC;AAEV,CAAC;AAEDhB,aAAa,CAACmB,WAAW,GAAG,eAAe","ignoreList":[]}
@@ -52,6 +52,19 @@ import {IssueTypeIcon} from '@weavix/tracker-components';
52
52
  * Additional CSS class applied to the root element.
53
53
  */
54
54
  className?: string;
55
+
56
+ /**
57
+ * Additional CSS class applied to the outer container element.
58
+ */
59
+ containerClassName?: string;
60
+
61
+ /**
62
+ * Human-readable display name for the issue type (e.g. `"Bug"`, `"Story"`).
63
+ * When provided, an accessible label `"Type: <issueType>"` is rendered for
64
+ * screen readers and `title` is forwarded to the icon container.
65
+ * When omitted, the icon is treated as decorative (`aria-hidden`).
66
+ */
67
+ title?: string;
55
68
  }
56
69
  ```
57
70
  <!-- props:end -->
@@ -114,9 +127,38 @@ export const IssueTypeGallery = () => (
114
127
  );
115
128
  ```
116
129
 
130
+ ### From Tracker API
131
+
132
+ Requires the `"tracker:issuetypes:read"` permission in your plugin's `manifest.json`:
133
+
134
+ ```json
135
+ {
136
+ "permissions": {
137
+ "data": ["tracker:issuetypes:read"]
138
+ }
139
+ }
140
+ ```
141
+
142
+ ```tsx
143
+ import {IssueTypeIcon} from '@weavix/tracker-components';
144
+
145
+ const issueType = await trackerApi.v3.get['/issues/{id}/{field}']({
146
+ pathParams: {
147
+ id: 'ISSUEKEY-1',
148
+ field: 'type',
149
+ },
150
+ });
151
+
152
+ <IssueTypeIcon
153
+ issueType={issueType.data.key}
154
+ title={issueType.data.display}
155
+ />
156
+ ```
157
+
117
158
  ---
118
159
 
119
160
  ## Notes
120
161
 
121
162
  - The `issueType` value is matched case-sensitively against the known keys. Values returned by the Tracker API (e.g. `"newFeature"`, `"subTask"`) match directly without transformation.
122
163
  - Passing an unknown string does not throw — the component renders a generic fallback icon.
164
+ - When `title` is omitted the icon is treated as decorative and gets `aria-hidden="true"`. Pass `title` (e.g. `type.display` from the API) to make the icon accessible.
@@ -76,6 +76,16 @@ import {MetaEntityIcon} from '@weavix/tracker-components';
76
76
 
77
77
  ### Rendering from a Tracker API response
78
78
 
79
+ Requires the `"tracker:entities:write"` permission in your plugin's `manifest.json`:
80
+
81
+ ```json
82
+ {
83
+ "permissions": {
84
+ "data": ["tracker:entities:write"]
85
+ }
86
+ }
87
+ ```
88
+
79
89
  `MetaEntityIcon` accepts the shape returned directly by the Tracker entities search endpoint, so you can pass `result.data[i]` without any mapping:
80
90
 
81
91
  ```tsx
@@ -3,4 +3,7 @@ import type { EntityIconProps } from '../EntityIcon';
3
3
  export type PortfolioIconProps = {
4
4
  portfolioId: string;
5
5
  } & Omit<EntityIconProps, 'data' | 'id' | 'alpha'>;
6
- export declare const PortfolioIcon: ({ portfolioId, ...props }: PortfolioIconProps) => React.JSX.Element;
6
+ export declare const PortfolioIcon: {
7
+ ({ portfolioId, ...props }: PortfolioIconProps): React.JSX.Element;
8
+ displayName: string;
9
+ };
@@ -16,4 +16,5 @@ export var PortfolioIcon = function PortfolioIcon(_ref) {
16
16
  withBackground: false
17
17
  }, props));
18
18
  };
19
+ PortfolioIcon.displayName = 'PortfolioIcon';
19
20
  // #sourceMappingURL=PortfolioIcon.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["React","EntityIcon","portfolioIcon","jsx","_jsx","PortfolioIcon","_ref","portfolioId","props","_objectWithoutProperties","_excluded","_objectSpread","data","id","type","alpha","withBackground"],"sources":["PortfolioIcon.tsx"],"sourcesContent":["import React from 'react';\n\nimport type {EntityIconProps} from '../EntityIcon';\nimport {EntityIcon} from '../EntityIcon';\n\nimport portfolioIcon from '../../../../assets/icons/portfolio.svg';\n\nexport type PortfolioIconProps = {portfolioId: string} & Omit<\n EntityIconProps,\n 'data' | 'id' | 'alpha'\n>;\n\nexport const PortfolioIcon = ({portfolioId, ...props}: PortfolioIconProps) => (\n <EntityIcon\n data={portfolioIcon}\n id={portfolioId}\n type=\"portfolio\"\n alpha={0.5}\n withBackground={false}\n {...props}\n />\n);\n"],"mappings":";;;AAAA,OAAOA,KAAK,MAAM,OAAO;AAGzB,SAAQC,UAAU;AAElB,OAAOC,aAAa;AAA+C,SAAAC,GAAA,IAAAC,IAAA;AAOnE,OAAO,IAAMC,aAAa,GAAG,SAAhBA,aAAaA,CAAAC,IAAA;EAAA,IAAKC,WAAW,GAAAD,IAAA,CAAXC,WAAW;IAAKC,KAAK,GAAAC,wBAAA,CAAAH,IAAA,EAAAI,SAAA;EAAA,oBAChDN,IAAA,CAACH,UAAU,EAAAU,aAAA;IACPC,IAAI,EAAEV,aAAc;IACpBW,EAAE,EAAEN,WAAY;IAChBO,IAAI,EAAC,WAAW;IAChBC,KAAK,EAAE,GAAI;IACXC,cAAc,EAAE;EAAM,GAClBR,KAAK,CACZ,CAAC;AAAA,CACL","ignoreList":[]}
1
+ {"version":3,"names":["React","EntityIcon","portfolioIcon","jsx","_jsx","PortfolioIcon","_ref","portfolioId","props","_objectWithoutProperties","_excluded","_objectSpread","data","id","type","alpha","withBackground","displayName"],"sources":["PortfolioIcon.tsx"],"sourcesContent":["import React from 'react';\n\nimport type {EntityIconProps} from '../EntityIcon';\nimport {EntityIcon} from '../EntityIcon';\n\nimport portfolioIcon from '../../../../assets/icons/portfolio.svg';\n\nexport type PortfolioIconProps = {portfolioId: string} & Omit<\n EntityIconProps,\n 'data' | 'id' | 'alpha'\n>;\n\nexport const PortfolioIcon = ({portfolioId, ...props}: PortfolioIconProps) => (\n <EntityIcon\n data={portfolioIcon}\n id={portfolioId}\n type=\"portfolio\"\n alpha={0.5}\n withBackground={false}\n {...props}\n />\n);\n\nPortfolioIcon.displayName = 'PortfolioIcon';\n"],"mappings":";;;AAAA,OAAOA,KAAK,MAAM,OAAO;AAGzB,SAAQC,UAAU;AAElB,OAAOC,aAAa;AAA+C,SAAAC,GAAA,IAAAC,IAAA;AAOnE,OAAO,IAAMC,aAAa,GAAG,SAAhBA,aAAaA,CAAAC,IAAA;EAAA,IAAKC,WAAW,GAAAD,IAAA,CAAXC,WAAW;IAAKC,KAAK,GAAAC,wBAAA,CAAAH,IAAA,EAAAI,SAAA;EAAA,oBAChDN,IAAA,CAACH,UAAU,EAAAU,aAAA;IACPC,IAAI,EAAEV,aAAc;IACpBW,EAAE,EAAEN,WAAY;IAChBO,IAAI,EAAC,WAAW;IAChBC,KAAK,EAAE,GAAI;IACXC,cAAc,EAAE;EAAM,GAClBR,KAAK,CACZ,CAAC;AAAA,CACL;AAEDH,aAAa,CAACY,WAAW,GAAG,eAAe","ignoreList":[]}
@@ -47,10 +47,17 @@ import {PortfolioIcon} from '@weavix/tracker-components';
47
47
 
48
48
  /**
49
49
  * Whether to render a colored background behind the icon.
50
+ * `PortfolioIcon` defaults this to `false`; `EntityIcon`'s own default is `true`.
50
51
  * @default false
51
52
  */
52
53
  withBackground?: boolean;
53
54
 
55
+ /**
56
+ * Alpha (opacity) of the icon foreground color, in the range 0–1.
57
+ * @default 1
58
+ */
59
+ colorAlpha?: number;
60
+
54
61
  /**
55
62
  * Border radius variant of the icon container.
56
63
  * @default 'm'
@@ -0,0 +1 @@
1
+ export declare const cnPriorityIcon: import("@bem-react/classname").ClassNameFormatter;
@@ -0,0 +1,3 @@
1
+ import { block } from "./../../cn";
2
+ export var cnPriorityIcon = block('priority-icon');
3
+ // #sourceMappingURL=PriorityIcon.classname.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["block","cnPriorityIcon"],"sources":["PriorityIcon.classname.ts"],"sourcesContent":["import {block} from '~/src/components/cn';\n\nexport const cnPriorityIcon = block('priority-icon');\n"],"mappings":"AAAA,SAAQA,KAAK;AAEb,OAAO,IAAMC,cAAc,GAAGD,KAAK,CAAC,eAAe,CAAC","ignoreList":[]}
@@ -0,0 +1,45 @@
1
+ .tpc-priority-icon_priority_blocker {
2
+ color: var(--g-color-text-danger);
3
+ }
4
+ .tpc-priority-icon_priority_critical {
5
+ color: var(--g-color-text-warning-heavy);
6
+ }
7
+ .tpc-priority-icon_priority_critical.tpc-priority-icon_metaEntity {
8
+ color: var(--g-color-text-danger-heavy);
9
+ }
10
+ .tpc-priority-icon_priority_important {
11
+ color: var(--g-color-text-warning);
12
+ }
13
+ .tpc-priority-icon_priority_trivial {
14
+ color: var(--g-color-text-hint);
15
+ }
16
+ .tpc-priority-icon_priority_normal, .tpc-priority-icon_priority_minor, .tpc-priority-icon_priority_minimal {
17
+ color: var(--g-color-text-secondary);
18
+ }
19
+ .tpc-priority-icon__background {
20
+ display: flex;
21
+ align-items: center;
22
+ justify-content: center;
23
+ width: 100%;
24
+ height: 100%;
25
+ border-radius: 50%;
26
+ }
27
+ .tpc-priority-icon__background_priority_blocker {
28
+ background: var(--g-color-base-danger-light);
29
+ }
30
+ .tpc-priority-icon__background_priority_critical {
31
+ background: var(--g-color-base-warning-light);
32
+ }
33
+ .tpc-priority-icon__background_priority_critical.tpc-priority-icon-background_metaEntity {
34
+ background: var(--g-color-base-danger-light);
35
+ }
36
+ .tpc-priority-icon__background_priority_important {
37
+ background: var(--g-color-base-warning-light);
38
+ }
39
+ .tpc-priority-icon__background_priority_trivial {
40
+ background: var(--g-color-base-neutral-light);
41
+ }
42
+ .tpc-priority-icon__background_priority_normal, .tpc-priority-icon__background_priority_minor, .tpc-priority-icon__background_priority_minimal {
43
+ background: var(--g-color-base-neutral-light);
44
+ }
45
+ /*# sourceMappingURL=PriorityIcon.css.map */
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["PriorityIcon.scss"],"names":[],"mappings":"AACI;EACI,iCAAA;AAAR;AAGI;EACI,wCAAA;AADR;AAGQ;EACI,uCAAA;AADZ;AAKI;EACI,kCAAA;AAHR;AAMI;EACI,+BAAA;AAJR;AAOI;EAGI,oCAAA;AAPR;AAUI;EACI,aAAA;EACA,mBAAA;EACA,uBAAA;EAEA,WAAA;EACA,YAAA;EAEA,kBAAA;AAVR;AAaI;EACI,4CAAA;AAXR;AAcI;EACI,6CAAA;AAZR;AAcQ;EACI,4CAAA;AAZZ;AAgBI;EACI,6CAAA;AAdR;AAiBI;EACI,6CAAA;AAfR;AAkBI;EAGI,6CAAA;AAlBR","file":"PriorityIcon.css","sourcesContent":[".tpc-priority-icon {\n &_priority_blocker {\n color: var(--g-color-text-danger);\n }\n\n &_priority_critical {\n color: var(--g-color-text-warning-heavy);\n\n &.tpc-priority-icon_metaEntity {\n color: var(--g-color-text-danger-heavy);\n }\n }\n\n &_priority_important {\n color: var(--g-color-text-warning);\n }\n\n &_priority_trivial {\n color: var(--g-color-text-hint);\n }\n\n &_priority_normal,\n &_priority_minor,\n &_priority_minimal {\n color: var(--g-color-text-secondary);\n }\n\n &__background {\n display: flex;\n align-items: center;\n justify-content: center;\n\n width: 100%;\n height: 100%;\n\n border-radius: 50%;\n }\n\n &__background_priority_blocker {\n background: var(--g-color-base-danger-light);\n }\n\n &__background_priority_critical {\n background: var(--g-color-base-warning-light);\n\n &.tpc-priority-icon-background_metaEntity {\n background: var(--g-color-base-danger-light);\n }\n }\n\n &__background_priority_important {\n background: var(--g-color-base-warning-light);\n }\n\n &__background_priority_trivial {\n background: var(--g-color-base-neutral-light);\n }\n\n &__background_priority_normal,\n &__background_priority_minor,\n &__background_priority_minimal {\n background: var(--g-color-base-neutral-light);\n }\n}\n"],"sourceRoot":""}
@@ -0,0 +1,13 @@
1
+ import { type FC } from 'react';
2
+ import type { IconRefugeProps } from '../IconRefuge';
3
+ import type { Priority } from './types';
4
+ import './PriorityIcon.scss';
5
+ export type PriorityIconProps = Partial<Pick<IconRefugeProps, 'containerClassName' | 'title'>> & {
6
+ className?: string;
7
+ size?: number;
8
+ priority?: Priority;
9
+ showBackground?: boolean;
10
+ backgroundSize?: number;
11
+ metaEntity?: boolean;
12
+ };
13
+ export declare const PriorityIcon: FC<PriorityIconProps>;
@@ -0,0 +1,73 @@
1
+ import React from 'react';
2
+ import { ChevronDownWide, ChevronUpWide, ChevronsDownWide, ChevronsUpWide, CircleExclamation, Equal } from '@gravity-ui/icons';
3
+ import { getConfig } from '@gravity-ui/uikit';
4
+ import { useLocalizedString } from "./../../../hooks/useLocalizedString";
5
+ import { IconRefuge } from "../IconRefuge";
6
+ import { cnPriorityIcon } from "./PriorityIcon.classname";
7
+ import { defaultMessages } from "./i18n";
8
+ import "./PriorityIcon.css";
9
+ import { jsx as _jsx } from "react/jsx-runtime";
10
+ var getIconData = function getIconData(priority, metaEntity) {
11
+ switch (priority) {
12
+ case 'blocker':
13
+ return CircleExclamation;
14
+ case 'critical':
15
+ return metaEntity ? CircleExclamation : ChevronsUpWide;
16
+ case 'minor':
17
+ return ChevronDownWide;
18
+ case 'trivial':
19
+ case 'minimal':
20
+ return ChevronsDownWide;
21
+ case 'important':
22
+ return ChevronUpWide;
23
+ default:
24
+ return Equal;
25
+ }
26
+ };
27
+ export var PriorityIcon = function PriorityIcon(_ref) {
28
+ var className = _ref.className,
29
+ containerClassName = _ref.containerClassName,
30
+ _ref$priority = _ref.priority,
31
+ priority = _ref$priority === void 0 ? 'normal' : _ref$priority,
32
+ _ref$size = _ref.size,
33
+ size = _ref$size === void 0 ? 16 : _ref$size,
34
+ title = _ref.title,
35
+ showBackground = _ref.showBackground,
36
+ backgroundSize = _ref.backgroundSize,
37
+ metaEntity = _ref.metaEntity;
38
+ var config = getConfig();
39
+ var _useLocalizedString = useLocalizedString(defaultMessages, config.lang),
40
+ t = _useLocalizedString.t;
41
+ var ariaLabel = title ? t('priority-label', {
42
+ priority: title
43
+ }) : undefined;
44
+ var iconNode = /*#__PURE__*/_jsx(IconRefuge, {
45
+ containerClassName: containerClassName,
46
+ className: cnPriorityIcon({
47
+ priority: priority,
48
+ metaEntity: metaEntity
49
+ }, className),
50
+ data: getIconData(priority, metaEntity),
51
+ refugeSize: size,
52
+ title: title,
53
+ "aria-label": ariaLabel,
54
+ "aria-hidden": !title || undefined
55
+ });
56
+ if (!showBackground) {
57
+ return iconNode;
58
+ }
59
+ return /*#__PURE__*/_jsx("div", {
60
+ className: cnPriorityIcon('background', {
61
+ priority: priority,
62
+ metaEntity: metaEntity
63
+ }),
64
+ style: backgroundSize ? {
65
+ width: backgroundSize,
66
+ height: backgroundSize,
67
+ minWidth: backgroundSize
68
+ } : undefined,
69
+ children: iconNode
70
+ });
71
+ };
72
+ PriorityIcon.displayName = 'PriorityIcon';
73
+ // #sourceMappingURL=PriorityIcon.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["React","ChevronDownWide","ChevronUpWide","ChevronsDownWide","ChevronsUpWide","CircleExclamation","Equal","getConfig","useLocalizedString","IconRefuge","cnPriorityIcon","defaultMessages","jsx","_jsx","getIconData","priority","metaEntity","PriorityIcon","_ref","className","containerClassName","_ref$priority","_ref$size","size","title","showBackground","backgroundSize","config","_useLocalizedString","lang","t","ariaLabel","undefined","iconNode","data","refugeSize","style","width","height","minWidth","children","displayName"],"sources":["PriorityIcon.tsx"],"sourcesContent":["import React, {type FC} from 'react';\n\nimport {\n ChevronDownWide,\n ChevronUpWide,\n ChevronsDownWide,\n ChevronsUpWide,\n CircleExclamation,\n Equal,\n} from '@gravity-ui/icons';\nimport {type IconData, getConfig} from '@gravity-ui/uikit';\n\nimport {useLocalizedString} from '~/src/hooks/useLocalizedString';\n\nimport type {IconRefugeProps} from '../IconRefuge';\nimport {IconRefuge} from '../IconRefuge';\n\nimport {cnPriorityIcon} from './PriorityIcon.classname';\nimport {defaultMessages} from './i18n';\nimport type {Priority} from './types';\n\nimport './PriorityIcon.scss';\n\nexport type PriorityIconProps = Partial<Pick<IconRefugeProps, 'containerClassName' | 'title'>> & {\n className?: string;\n size?: number;\n priority?: Priority;\n showBackground?: boolean;\n backgroundSize?: number;\n metaEntity?: boolean;\n};\n\nconst getIconData = (priority: Priority, metaEntity?: boolean): IconData => {\n switch (priority) {\n case 'blocker':\n return CircleExclamation;\n case 'critical':\n return metaEntity ? CircleExclamation : ChevronsUpWide;\n case 'minor':\n return ChevronDownWide;\n case 'trivial':\n case 'minimal':\n return ChevronsDownWide;\n case 'important':\n return ChevronUpWide;\n default:\n return Equal;\n }\n};\n\nexport const PriorityIcon: FC<PriorityIconProps> = ({\n className,\n containerClassName,\n priority = 'normal',\n size = 16,\n title,\n showBackground,\n backgroundSize,\n metaEntity,\n}) => {\n const config = getConfig();\n const {t} = useLocalizedString(defaultMessages, config.lang);\n const ariaLabel = title ? t('priority-label', {priority: title}) : undefined;\n\n const iconNode = (\n <IconRefuge\n containerClassName={containerClassName}\n className={cnPriorityIcon({priority, metaEntity}, className)}\n data={getIconData(priority, metaEntity)}\n refugeSize={size}\n title={title}\n aria-label={ariaLabel}\n aria-hidden={!title || undefined}\n />\n );\n\n if (!showBackground) {\n return iconNode;\n }\n\n return (\n <div\n className={cnPriorityIcon('background', {priority, metaEntity})}\n style={\n backgroundSize\n ? {\n width: backgroundSize,\n height: backgroundSize,\n minWidth: backgroundSize,\n }\n : undefined\n }\n >\n {iconNode}\n </div>\n );\n};\n\nPriorityIcon.displayName = 'PriorityIcon';\n"],"mappings":"AAAA,OAAOA,KAAK,MAAiB,OAAO;AAEpC,SACIC,eAAe,EACfC,aAAa,EACbC,gBAAgB,EAChBC,cAAc,EACdC,iBAAiB,EACjBC,KAAK,QACF,mBAAmB;AAC1B,SAAuBC,SAAS,QAAO,mBAAmB;AAE1D,SAAQC,kBAAkB;AAG1B,SAAQC,UAAU;AAElB,SAAQC,cAAc;AACtB,SAAQC,eAAe;AAGvB;AAA6B,SAAAC,GAAA,IAAAC,IAAA;AAW7B,IAAMC,WAAW,GAAG,SAAdA,WAAWA,CAAIC,QAAkB,EAAEC,UAAoB,EAAe;EACxE,QAAQD,QAAQ;IACZ,KAAK,SAAS;MACV,OAAOV,iBAAiB;IAC5B,KAAK,UAAU;MACX,OAAOW,UAAU,GAAGX,iBAAiB,GAAGD,cAAc;IAC1D,KAAK,OAAO;MACR,OAAOH,eAAe;IAC1B,KAAK,SAAS;IACd,KAAK,SAAS;MACV,OAAOE,gBAAgB;IAC3B,KAAK,WAAW;MACZ,OAAOD,aAAa;IACxB;MACI,OAAOI,KAAK;EACpB;AACJ,CAAC;AAED,OAAO,IAAMW,YAAmC,GAAG,SAAtCA,YAAmCA,CAAAC,IAAA,EAS1C;EAAA,IARFC,SAAS,GAAAD,IAAA,CAATC,SAAS;IACTC,kBAAkB,GAAAF,IAAA,CAAlBE,kBAAkB;IAAAC,aAAA,GAAAH,IAAA,CAClBH,QAAQ;IAARA,QAAQ,GAAAM,aAAA,cAAG,QAAQ,GAAAA,aAAA;IAAAC,SAAA,GAAAJ,IAAA,CACnBK,IAAI;IAAJA,IAAI,GAAAD,SAAA,cAAG,EAAE,GAAAA,SAAA;IACTE,KAAK,GAAAN,IAAA,CAALM,KAAK;IACLC,cAAc,GAAAP,IAAA,CAAdO,cAAc;IACdC,cAAc,GAAAR,IAAA,CAAdQ,cAAc;IACdV,UAAU,GAAAE,IAAA,CAAVF,UAAU;EAEV,IAAMW,MAAM,GAAGpB,SAAS,CAAC,CAAC;EAC1B,IAAAqB,mBAAA,GAAYpB,kBAAkB,CAACG,eAAe,EAAEgB,MAAM,CAACE,IAAI,CAAC;IAArDC,CAAC,GAAAF,mBAAA,CAADE,CAAC;EACR,IAAMC,SAAS,GAAGP,KAAK,GAAGM,CAAC,CAAC,gBAAgB,EAAE;IAACf,QAAQ,EAAES;EAAK,CAAC,CAAC,GAAGQ,SAAS;EAE5E,IAAMC,QAAQ,gBACVpB,IAAA,CAACJ,UAAU;IACPW,kBAAkB,EAAEA,kBAAmB;IACvCD,SAAS,EAAET,cAAc,CAAC;MAACK,QAAQ,EAARA,QAAQ;MAAEC,UAAU,EAAVA;IAAU,CAAC,EAAEG,SAAS,CAAE;IAC7De,IAAI,EAAEpB,WAAW,CAACC,QAAQ,EAAEC,UAAU,CAAE;IACxCmB,UAAU,EAAEZ,IAAK;IACjBC,KAAK,EAAEA,KAAM;IACb,cAAYO,SAAU;IACtB,eAAa,CAACP,KAAK,IAAIQ;EAAU,CACpC,CACJ;EAED,IAAI,CAACP,cAAc,EAAE;IACjB,OAAOQ,QAAQ;EACnB;EAEA,oBACIpB,IAAA;IACIM,SAAS,EAAET,cAAc,CAAC,YAAY,EAAE;MAACK,QAAQ,EAARA,QAAQ;MAAEC,UAAU,EAAVA;IAAU,CAAC,CAAE;IAChEoB,KAAK,EACDV,cAAc,GACR;MACIW,KAAK,EAAEX,cAAc;MACrBY,MAAM,EAAEZ,cAAc;MACtBa,QAAQ,EAAEb;IACd,CAAC,GACDM,SACT;IAAAQ,QAAA,EAEAP;EAAQ,CACR,CAAC;AAEd,CAAC;AAEDhB,YAAY,CAACwB,WAAW,GAAG,cAAc","ignoreList":[]}