@teambit/react.ui.component-highlighter 0.0.491 → 0.0.495

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 (142) hide show
  1. package/{multi-highlighter/multi-highlighter.composition.tsx → children-highlighter/children-highlighter.composition.tsx} +33 -27
  2. package/{multi-highlighter/multi-highlighter.spec.tsx → children-highlighter/children-highlighter.spec.tsx} +3 -3
  3. package/children-highlighter/children-highlighter.tsx +9 -0
  4. package/children-highlighter/index.ts +5 -0
  5. package/{multi-highlighter/use-multi-highlighter.tsx → children-highlighter/use-children-highlighter.tsx} +16 -16
  6. package/component-highlighter.docs.md +5 -4
  7. package/dist/children-highlighter/children-highlighter.composition.d.ts +5 -0
  8. package/dist/{multi-highlighter/multi-highlighter.composition.js → children-highlighter/children-highlighter.composition.js} +31 -27
  9. package/dist/children-highlighter/children-highlighter.composition.js.map +1 -0
  10. package/dist/children-highlighter/children-highlighter.d.ts +3 -0
  11. package/dist/{multi-highlighter/multi-highlighter.js → children-highlighter/children-highlighter.js} +6 -6
  12. package/dist/children-highlighter/children-highlighter.js.map +1 -0
  13. package/dist/{multi-highlighter/multi-highlighter.spec.d.ts → children-highlighter/children-highlighter.spec.d.ts} +0 -0
  14. package/dist/{multi-highlighter/multi-highlighter.spec.js → children-highlighter/children-highlighter.spec.js} +4 -4
  15. package/dist/children-highlighter/children-highlighter.spec.js.map +1 -0
  16. package/dist/children-highlighter/index.d.ts +4 -0
  17. package/dist/children-highlighter/index.js +8 -0
  18. package/dist/children-highlighter/index.js.map +1 -0
  19. package/dist/{multi-highlighter/use-multi-highlighter.d.ts → children-highlighter/use-children-highlighter.d.ts} +2 -4
  20. package/dist/{multi-highlighter/use-multi-highlighter.js → children-highlighter/use-children-highlighter.js} +9 -12
  21. package/dist/children-highlighter/use-children-highlighter.js.map +1 -0
  22. package/dist/component-highlighter.docs.md +5 -4
  23. package/dist/element-highlighter/element-highlighter.compositions.d.ts +3 -1
  24. package/dist/element-highlighter/element-highlighter.compositions.js +15 -7
  25. package/dist/element-highlighter/element-highlighter.compositions.js.map +1 -1
  26. package/dist/element-highlighter/element-highlighter.d.ts +8 -9
  27. package/dist/element-highlighter/element-highlighter.js +3 -3
  28. package/dist/element-highlighter/element-highlighter.js.map +1 -1
  29. package/dist/element-highlighter/element-highlighter.module.scss +2 -5
  30. package/dist/element-highlighter/index.d.ts +1 -1
  31. package/dist/hover-highlighter/hover-highlighter.compositions.js +1 -1
  32. package/dist/hover-highlighter/hover-highlighter.compositions.js.map +1 -1
  33. package/dist/hover-highlighter/hover-highlighter.d.ts +1 -1
  34. package/dist/hover-highlighter/hover-highlighter.js +2 -2
  35. package/dist/hover-highlighter/hover-highlighter.js.map +1 -1
  36. package/dist/hover-highlighter/use-hover-highlighter.js +9 -14
  37. package/dist/hover-highlighter/use-hover-highlighter.js.map +1 -1
  38. package/dist/{hybrid-highligher → hybrid-highlighter}/hybrid-highlighter.d.ts +4 -2
  39. package/dist/{hybrid-highligher → hybrid-highlighter}/hybrid-highlighter.js +6 -6
  40. package/dist/hybrid-highlighter/hybrid-highlighter.js.map +1 -0
  41. package/dist/{hybrid-highligher → hybrid-highlighter}/index.d.ts +0 -0
  42. package/dist/{hybrid-highligher → hybrid-highlighter}/index.js +0 -0
  43. package/dist/hybrid-highlighter/index.js.map +1 -0
  44. package/dist/index.d.ts +4 -4
  45. package/dist/index.js +5 -5
  46. package/dist/index.js.map +1 -1
  47. package/dist/label/component-strip.d.ts +9 -0
  48. package/dist/label/component-strip.js +49 -0
  49. package/dist/label/component-strip.js.map +1 -0
  50. package/dist/label/component-strip.module.scss +49 -0
  51. package/dist/label/index.d.ts +4 -2
  52. package/dist/label/index.js +3 -2
  53. package/dist/label/index.js.map +1 -1
  54. package/dist/label/label-container.d.ts +13 -0
  55. package/dist/label/label-container.js +53 -0
  56. package/dist/label/label-container.js.map +1 -0
  57. package/dist/label/label.d.ts +7 -19
  58. package/dist/label/label.js +20 -27
  59. package/dist/label/label.js.map +1 -1
  60. package/dist/label/label.module.scss +24 -0
  61. package/dist/label/links.d.ts +2 -0
  62. package/dist/label/links.js +17 -0
  63. package/dist/label/links.js.map +1 -0
  64. package/dist/label/other-components.d.ts +10 -0
  65. package/dist/label/other-components.js +35 -0
  66. package/dist/label/other-components.js.map +1 -0
  67. package/dist/rule-matcher.d.ts +3 -3
  68. package/dist/rule-matcher.js +1 -0
  69. package/dist/rule-matcher.js.map +1 -1
  70. package/dist/use-animation-frame.d.ts +1 -1
  71. package/dist/use-animation-frame.js.map +1 -1
  72. package/element-highlighter/element-highlighter.compositions.tsx +22 -8
  73. package/element-highlighter/element-highlighter.module.scss +2 -5
  74. package/element-highlighter/element-highlighter.tsx +11 -16
  75. package/element-highlighter/index.ts +7 -1
  76. package/hover-highlighter/hover-highlighter.compositions.tsx +1 -1
  77. package/hover-highlighter/hover-highlighter.tsx +1 -1
  78. package/hover-highlighter/use-hover-highlighter.tsx +19 -19
  79. package/{hybrid-highligher → hybrid-highlighter}/hybrid-highlighter.tsx +16 -6
  80. package/{hybrid-highligher → hybrid-highlighter}/index.ts +0 -0
  81. package/index.ts +4 -4
  82. package/label/component-strip.module.scss +49 -0
  83. package/label/component-strip.tsx +49 -0
  84. package/label/index.ts +5 -2
  85. package/label/label-container.tsx +46 -0
  86. package/label/label.module.scss +24 -0
  87. package/label/label.tsx +35 -66
  88. package/label/links.tsx +9 -0
  89. package/label/other-components.tsx +53 -0
  90. package/package-tar/teambit-react.ui.component-highlighter-0.0.495.tgz +0 -0
  91. package/package.json +16 -16
  92. package/rule-matcher.tsx +4 -3
  93. package/tsconfig.json +2 -1
  94. package/use-animation-frame.tsx +1 -1
  95. package/bubble/bubble.module.scss +0 -24
  96. package/bubble/index.ts +0 -3
  97. package/dist/bubble/bubble.module.scss +0 -24
  98. package/dist/bubble/index.d.ts +0 -1
  99. package/dist/bubble/index.js +0 -9
  100. package/dist/bubble/index.js.map +0 -1
  101. package/dist/hybrid-highligher/hybrid-highlighter.js.map +0 -1
  102. package/dist/hybrid-highligher/index.js.map +0 -1
  103. package/dist/label/component-label/component-bubble.d.ts +0 -7
  104. package/dist/label/component-label/component-bubble.js +0 -35
  105. package/dist/label/component-label/component-bubble.js.map +0 -1
  106. package/dist/label/component-label/component-label.d.ts +0 -9
  107. package/dist/label/component-label/component-label.js +0 -32
  108. package/dist/label/component-label/component-label.js.map +0 -1
  109. package/dist/label/component-label/duo-component-bubble.module.scss +0 -24
  110. package/dist/label/component-label/index.d.ts +0 -2
  111. package/dist/label/component-label/index.js +0 -6
  112. package/dist/label/component-label/index.js.map +0 -1
  113. package/dist/label/component-label/scope-bubble.d.ts +0 -6
  114. package/dist/label/component-label/scope-bubble.js +0 -28
  115. package/dist/label/component-label/scope-bubble.js.map +0 -1
  116. package/dist/label/default-label/default-label.d.ts +0 -5
  117. package/dist/label/default-label/default-label.js +0 -30
  118. package/dist/label/default-label/default-label.js.map +0 -1
  119. package/dist/label/default-label/default-label.module.scss +0 -12
  120. package/dist/label/default-label/index.d.ts +0 -1
  121. package/dist/label/default-label/index.js +0 -6
  122. package/dist/label/default-label/index.js.map +0 -1
  123. package/dist/multi-highlighter/index.d.ts +0 -2
  124. package/dist/multi-highlighter/index.js +0 -6
  125. package/dist/multi-highlighter/index.js.map +0 -1
  126. package/dist/multi-highlighter/multi-highlighter.composition.d.ts +0 -5
  127. package/dist/multi-highlighter/multi-highlighter.composition.js.map +0 -1
  128. package/dist/multi-highlighter/multi-highlighter.d.ts +0 -3
  129. package/dist/multi-highlighter/multi-highlighter.js.map +0 -1
  130. package/dist/multi-highlighter/multi-highlighter.spec.js.map +0 -1
  131. package/dist/multi-highlighter/use-multi-highlighter.js.map +0 -1
  132. package/label/component-label/component-bubble.tsx +0 -30
  133. package/label/component-label/component-label.tsx +0 -31
  134. package/label/component-label/duo-component-bubble.module.scss +0 -24
  135. package/label/component-label/index.ts +0 -2
  136. package/label/component-label/scope-bubble.tsx +0 -20
  137. package/label/default-label/default-label.module.scss +0 -12
  138. package/label/default-label/default-label.tsx +0 -22
  139. package/label/default-label/index.ts +0 -1
  140. package/multi-highlighter/index.ts +0 -2
  141. package/multi-highlighter/multi-highlighter.tsx +0 -9
  142. package/package-tar/teambit-react.ui.component-highlighter-0.0.491.tgz +0 -0
@@ -20,21 +20,26 @@ var __importStar = (this && this.__importStar) || function (mod) {
20
20
  };
21
21
  Object.defineProperty(exports, "__esModule", { value: true });
22
22
  exports.MovingElement = exports.Sizes = exports.Customized = exports.HighlightedElement = void 0;
23
+ const react_ui_highlighter_component_metadata_bit_component_meta_1 = require("@teambit/react.ui.highlighter.component-metadata.bit-component-meta");
23
24
  const react_1 = __importStar(require("react"));
24
25
  const element_highlighter_1 = require("./element-highlighter");
25
26
  const mockTarget = {
26
- id: 'teambit.design/ui/icon-button',
27
- link: 'https://bit.dev/teambit/design/ui/icon-button',
28
- scopeLink: 'https://bit.dev/teambit/design',
27
+ components: [
28
+ {
29
+ [react_ui_highlighter_component_metadata_bit_component_meta_1.componentMetaField]: {
30
+ id: 'teambit.design/ui/icon-button@1.6.2',
31
+ },
32
+ },
33
+ ],
29
34
  };
30
- const HighlightedElement = ({ style, targetStyle, watchMotion, className }) => {
35
+ const HighlightedElement = ({ style, targetStyle, watchMotion, className, size }) => {
31
36
  const [targetElement, setTargetElement] = (0, react_1.useState)(undefined);
32
37
  const targetRef = (0, react_1.createRef)();
33
38
  (0, react_1.useEffect)(() => setTargetElement(targetRef.current || undefined), [targetRef.current]);
34
39
  const target = targetElement && Object.assign(Object.assign({}, mockTarget), { element: targetElement });
35
- return (react_1.default.createElement("div", { className: className, style: { padding: '16px 16px 50px 16px', width: 300 } },
40
+ return (react_1.default.createElement("div", { className: className, style: { padding: '16px 16px 40px 16px', width: 300, fontFamily: 'sans-serif' } },
36
41
  react_1.default.createElement("div", { ref: targetRef, style: Object.assign({ width: 100 }, targetStyle) }, "highlight target"),
37
- target && react_1.default.createElement(element_highlighter_1.ElementHighlighter, { target: target, style: style, watchMotion: watchMotion, placement: "bottom" })));
42
+ target && (react_1.default.createElement(element_highlighter_1.ElementHighlighter, { target: target, style: style, watchMotion: watchMotion, placement: "bottom", size: size }))));
38
43
  };
39
44
  exports.HighlightedElement = HighlightedElement;
40
45
  const Customized = () => {
@@ -46,7 +51,10 @@ const Customized = () => {
46
51
  };
47
52
  exports.Customized = Customized;
48
53
  const Sizes = () => {
49
- return react_1.default.createElement(exports.HighlightedElement, { style: { fontSize: '16px' } });
54
+ return (react_1.default.createElement("div", null,
55
+ react_1.default.createElement(exports.HighlightedElement, { style: { fontSize: 10 } }),
56
+ react_1.default.createElement(exports.HighlightedElement, { style: { fontSize: 14 } }),
57
+ react_1.default.createElement(exports.HighlightedElement, { style: { fontSize: 18 } })));
50
58
  };
51
59
  exports.Sizes = Sizes;
52
60
  const MovingElement = () => {
@@ -1 +1 @@
1
- {"version":3,"file":"element-highlighter.compositions.js","sourceRoot":"","sources":["../../element-highlighter/element-highlighter.compositions.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAAA,+CAA6E;AAC7E,+DAA4E;AAE5E,MAAM,UAAU,GAA6B;IAC3C,EAAE,EAAE,+BAA+B;IACnC,IAAI,EAAE,+CAA+C;IACrD,SAAS,EAAE,gCAAgC;CAC5C,CAAC;AASK,MAAM,kBAAkB,GAAG,CAAC,EAAE,KAAK,EAAE,WAAW,EAAE,WAAW,EAAE,SAAS,EAA2B,EAAE,EAAE;IAC5G,MAAM,CAAC,aAAa,EAAE,gBAAgB,CAAC,GAAG,IAAA,gBAAQ,EAA0B,SAAS,CAAC,CAAC;IACvF,MAAM,SAAS,GAAG,IAAA,iBAAS,GAAkB,CAAC;IAE9C,IAAA,iBAAS,EAAC,GAAG,EAAE,CAAC,gBAAgB,CAAC,SAAS,CAAC,OAAO,IAAI,SAAS,CAAC,EAAE,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC;IACvF,MAAM,MAAM,GAAG,aAAa,oCAAS,UAAU,KAAE,OAAO,EAAE,aAAa,GAAE,CAAC;IAE1E,OAAO,CACL,uCAAK,SAAS,EAAE,SAAS,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,qBAAqB,EAAE,KAAK,EAAE,GAAG,EAAE;QAC9E,uCAAK,GAAG,EAAE,SAAS,EAAE,KAAK,kBAAI,KAAK,EAAE,GAAG,IAAK,WAAW,wBAElD;QACL,MAAM,IAAI,8BAAC,wCAAkB,IAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,WAAW,EAAE,WAAW,EAAE,SAAS,EAAC,QAAQ,GAAG,CACxG,CACP,CAAC;AACJ,CAAC,CAAC;AAfW,QAAA,kBAAkB,sBAe7B;AAEK,MAAM,UAAU,GAAG,GAAG,EAAE;IAC7B,OAAO,CACL,8BAAC,0BAAkB,IACjB,KAAK,EACH;YACE,yBAAyB,EAAE,SAAS;YACpC,+BAA+B,EAAE,SAAS;YAC1C,gCAAgC,EAAE,SAAS;SAC3B,GAEpB,CACH,CAAC;AACJ,CAAC,CAAC;AAZW,QAAA,UAAU,cAYrB;AAEK,MAAM,KAAK,GAAG,GAAG,EAAE;IACxB,OAAO,8BAAC,0BAAkB,IAAC,KAAK,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAI,CAAC;AAC7D,CAAC,CAAC;AAFW,QAAA,KAAK,SAEhB;AAEK,MAAM,aAAa,GAAG,GAAG,EAAE;IAChC,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,IAAA,gBAAQ,EAAC,CAAC,CAAC,CAAC;IAExC,IAAA,iBAAS,EAAC,GAAG,EAAE;QACb,MAAM,UAAU,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC,EAAE,EAAE,CAAC,CAAC;QAC1E,OAAO,GAAG,EAAE,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC;IACzC,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,OAAO,8BAAC,0BAAkB,IAAC,WAAW,EAAE,EAAE,UAAU,EAAE,MAAM,EAAE,GAAI,CAAC;AACrE,CAAC,CAAC;AATW,QAAA,aAAa,iBASxB"}
1
+ {"version":3,"file":"element-highlighter.compositions.js","sourceRoot":"","sources":["../../element-highlighter/element-highlighter.compositions.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAAA,oJAAyG;AACzG,+CAA6E;AAC7E,+DAA6F;AAE7F,MAAM,UAAU,GAA6B;IAC3C,UAAU,EAAE;QACV;YACE,CAAC,+EAAkB,CAAC,EAAE;gBACpB,EAAE,EAAE,qCAAqC;aAC1C;SACF;KACF;CACF,CAAC;AAUK,MAAM,kBAAkB,GAAG,CAAC,EAAE,KAAK,EAAE,WAAW,EAAE,WAAW,EAAE,SAAS,EAAE,IAAI,EAA2B,EAAE,EAAE;IAClH,MAAM,CAAC,aAAa,EAAE,gBAAgB,CAAC,GAAG,IAAA,gBAAQ,EAA0B,SAAS,CAAC,CAAC;IACvF,MAAM,SAAS,GAAG,IAAA,iBAAS,GAAkB,CAAC;IAE9C,IAAA,iBAAS,EAAC,GAAG,EAAE,CAAC,gBAAgB,CAAC,SAAS,CAAC,OAAO,IAAI,SAAS,CAAC,EAAE,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC;IACvF,MAAM,MAAM,GAAG,aAAa,oCAAS,UAAU,KAAE,OAAO,EAAE,aAAa,GAAE,CAAC;IAE1E,OAAO,CACL,uCAAK,SAAS,EAAE,SAAS,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,qBAAqB,EAAE,KAAK,EAAE,GAAG,EAAE,UAAU,EAAE,YAAY,EAAE;QACxG,uCAAK,GAAG,EAAE,SAAS,EAAE,KAAK,kBAAI,KAAK,EAAE,GAAG,IAAK,WAAW,wBAElD;QACL,MAAM,IAAI,CACT,8BAAC,wCAAkB,IAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,WAAW,EAAE,WAAW,EAAE,SAAS,EAAC,QAAQ,EAAC,IAAI,EAAE,IAAI,GAAI,CAC9G,CACG,CACP,CAAC;AACJ,CAAC,CAAC;AAjBW,QAAA,kBAAkB,sBAiB7B;AAEK,MAAM,UAAU,GAAG,GAAG,EAAE;IAC7B,OAAO,CACL,8BAAC,0BAAkB,IACjB,KAAK,EACH;YACE,yBAAyB,EAAE,SAAS;YACpC,+BAA+B,EAAE,SAAS;YAC1C,gCAAgC,EAAE,SAAS;SAC3B,GAEpB,CACH,CAAC;AACJ,CAAC,CAAC;AAZW,QAAA,UAAU,cAYrB;AAEK,MAAM,KAAK,GAAG,GAAG,EAAE;IACxB,OAAO,CACL;QACE,8BAAC,0BAAkB,IAAC,KAAK,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,GAAI;QAC/C,8BAAC,0BAAkB,IAAC,KAAK,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,GAAI;QAC/C,8BAAC,0BAAkB,IAAC,KAAK,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,GAAI,CAC3C,CACP,CAAC;AACJ,CAAC,CAAC;AARW,QAAA,KAAK,SAQhB;AAEK,MAAM,aAAa,GAAG,GAAG,EAAE;IAChC,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,IAAA,gBAAQ,EAAC,CAAC,CAAC,CAAC;IAExC,IAAA,iBAAS,EAAC,GAAG,EAAE;QACb,MAAM,UAAU,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC,EAAE,EAAE,CAAC,CAAC;QAC1E,OAAO,GAAG,EAAE,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC;IACzC,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,OAAO,8BAAC,0BAAkB,IAAC,WAAW,EAAE,EAAE,UAAU,EAAE,MAAM,EAAE,GAAI,CAAC;AACrE,CAAC,CAAC;AATW,QAAA,aAAa,iBASxB"}
@@ -1,5 +1,7 @@
1
1
  import React from 'react';
2
- import { Placement } from '../label';
2
+ import { ComponentMetaHolder } from '@teambit/react.ui.highlighter.component-metadata.bit-component-meta';
3
+ import { Placement, LabelSize } from '../label';
4
+ export declare type HighlighterSize = LabelSize;
3
5
  export interface ElementHighlighterProps extends React.HTMLAttributes<HTMLDivElement> {
4
6
  /** target element to highlight */
5
7
  target: HighlightTarget;
@@ -9,21 +11,18 @@ export interface ElementHighlighterProps extends React.HTMLAttributes<HTMLDivEle
9
11
  classes?: HighlightClasses;
10
12
  /** continually update highlighter to match moving elements */
11
13
  watchMotion?: boolean;
14
+ size?: HighlighterSize;
12
15
  }
13
16
  export { Placement };
14
17
  export declare type HighlightTarget = {
15
- id?: string;
18
+ /** element to show the highlight at */
16
19
  element: HTMLElement;
17
- /** e.g. 'https://bit.dev/teambit/base-ui/elements/dots-loader', */
18
- link?: string;
19
- /** e.g. 'https://bit.dev/teambit/base-ui' */
20
- scopeLink?: string;
21
- /** use full production url, or local workspace url */
22
- local?: boolean;
20
+ /** components with metadata to show in the label */
21
+ components?: ComponentMetaHolder[];
23
22
  };
24
23
  export declare type HighlightClasses = {
25
24
  container?: string;
26
25
  frame?: string;
27
26
  label?: string;
28
27
  };
29
- export declare function ElementHighlighter({ target, placement, watchMotion, className, classes, ...props }: ElementHighlighterProps): JSX.Element;
28
+ export declare function ElementHighlighter({ target, placement, watchMotion, className, classes, size, ...props }: ElementHighlighterProps): JSX.Element;
@@ -22,11 +22,11 @@ const label_1 = require("../label");
22
22
  const ignore_highlighter_1 = require("../ignore-highlighter");
23
23
  const element_highlighter_module_scss_1 = __importDefault(require("./element-highlighter.module.scss"));
24
24
  function ElementHighlighter(_a) {
25
- var { target, placement = 'top', watchMotion = true, className, classes } = _a, props = __rest(_a, ["target", "placement", "watchMotion", "className", "classes"]);
25
+ var { target, placement = 'top', watchMotion = true, className, classes, size } = _a, props = __rest(_a, ["target", "placement", "watchMotion", "className", "classes", "size"]);
26
26
  return (react_1.default.createElement("div", Object.assign({}, props, ignore_highlighter_1.excludeHighlighterAtt, { className: (0, classnames_1.default)(classes === null || classes === void 0 ? void 0 : classes.container, element_highlighter_module_scss_1.default.container, className) }),
27
27
  react_1.default.createElement(frame_1.Frame, { targetRef: target.element, className: (0, classnames_1.default)(element_highlighter_module_scss_1.default.frame, classes === null || classes === void 0 ? void 0 : classes.frame), watchMotion: watchMotion }),
28
- target.id && (react_1.default.createElement(label_1.LabelContainer, { className: element_highlighter_module_scss_1.default.label, targetRef: target.element, placement: placement, watchMotion: watchMotion },
29
- react_1.default.createElement(label_1.Label, { componentId: target.id, link: target.link, scopeLink: target.scopeLink, local: target.local, className: classes === null || classes === void 0 ? void 0 : classes.label })))));
28
+ target.components && (react_1.default.createElement(label_1.LabelContainer, { className: element_highlighter_module_scss_1.default.label, targetRef: target.element, placement: placement, watchMotion: watchMotion },
29
+ react_1.default.createElement(label_1.Label, { components: target.components, className: classes === null || classes === void 0 ? void 0 : classes.label, size: size })))));
30
30
  }
31
31
  exports.ElementHighlighter = ElementHighlighter;
32
32
  //# sourceMappingURL=element-highlighter.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"element-highlighter.js","sourceRoot":"","sources":["../../element-highlighter/element-highlighter.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,kDAA0B;AAC1B,4DAAoC;AACpC,oCAAiC;AACjC,oCAA4D;AAC5D,8DAA8D;AAC9D,wGAAuD;AAgCvD,SAAgB,kBAAkB,CAAC,EAOT;QAPS,EACjC,MAAM,EACN,SAAS,GAAG,KAAK,EACjB,WAAW,GAAG,IAAI,EAClB,SAAS,EACT,OAAO,OAEiB,EADrB,KAAK,cANyB,8DAOlC,CADS;IAER,OAAO,CACL,uDAAS,KAAK,EAAM,0CAAqB,IAAE,SAAS,EAAE,IAAA,oBAAU,EAAC,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,SAAS,EAAE,yCAAM,CAAC,SAAS,EAAE,SAAS,CAAC;QAC/G,8BAAC,aAAK,IACJ,SAAS,EAAE,MAAM,CAAC,OAAO,EACzB,SAAS,EAAE,IAAA,oBAAU,EAAC,yCAAM,CAAC,KAAK,EAAE,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,KAAK,CAAC,EACnD,WAAW,EAAE,WAAW,GACxB;QAED,MAAM,CAAC,EAAE,IAAI,CACZ,8BAAC,sBAAc,IACb,SAAS,EAAE,yCAAM,CAAC,KAAK,EACvB,SAAS,EAAE,MAAM,CAAC,OAAO,EACzB,SAAS,EAAE,SAAS,EACpB,WAAW,EAAE,WAAW;YAExB,8BAAC,aAAK,IACJ,WAAW,EAAE,MAAM,CAAC,EAAE,EACtB,IAAI,EAAE,MAAM,CAAC,IAAI,EACjB,SAAS,EAAE,MAAM,CAAC,SAAS,EAC3B,KAAK,EAAE,MAAM,CAAC,KAAK,EACnB,SAAS,EAAE,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,KAAK,GACzB,CACa,CAClB,CACG,CACP,CAAC;AACJ,CAAC;AAlCD,gDAkCC"}
1
+ {"version":3,"file":"element-highlighter.js","sourceRoot":"","sources":["../../element-highlighter/element-highlighter.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,kDAA0B;AAC1B,4DAAoC;AAEpC,oCAAiC;AACjC,oCAAuE;AACvE,8DAA8D;AAC9D,wGAAuD;AA+BvD,SAAgB,kBAAkB,CAAC,EAQT;QARS,EACjC,MAAM,EACN,SAAS,GAAG,KAAK,EACjB,WAAW,GAAG,IAAI,EAClB,SAAS,EACT,OAAO,EACP,IAAI,OAEoB,EADrB,KAAK,cAPyB,sEAQlC,CADS;IAER,OAAO,CACL,uDAAS,KAAK,EAAM,0CAAqB,IAAE,SAAS,EAAE,IAAA,oBAAU,EAAC,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,SAAS,EAAE,yCAAM,CAAC,SAAS,EAAE,SAAS,CAAC;QAC/G,8BAAC,aAAK,IACJ,SAAS,EAAE,MAAM,CAAC,OAAO,EACzB,SAAS,EAAE,IAAA,oBAAU,EAAC,yCAAM,CAAC,KAAK,EAAE,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,KAAK,CAAC,EACnD,WAAW,EAAE,WAAW,GACxB;QAED,MAAM,CAAC,UAAU,IAAI,CACpB,8BAAC,sBAAc,IACb,SAAS,EAAE,yCAAM,CAAC,KAAK,EACvB,SAAS,EAAE,MAAM,CAAC,OAAO,EACzB,SAAS,EAAE,SAAS,EACpB,WAAW,EAAE,WAAW;YAExB,8BAAC,aAAK,IAAC,UAAU,EAAE,MAAM,CAAC,UAAU,EAAE,SAAS,EAAE,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,KAAK,EAAE,IAAI,EAAE,IAAI,GAAI,CAChE,CAClB,CACG,CACP,CAAC;AACJ,CAAC;AA7BD,gDA6BC"}
@@ -1,11 +1,8 @@
1
1
  @import '~@teambit/ui-foundation.ui.constants.z-indexes/z-indexes.module.scss';
2
2
 
3
- .container {
4
- font-size: 12px;
5
- }
6
-
7
3
  .label {
8
- font-family: sans-serif;
4
+ // space between the label and the target
5
+ // keep this space so users can move their cursor in this space.
9
6
  padding: 8px;
10
7
  }
11
8
 
@@ -1,2 +1,2 @@
1
1
  export { ElementHighlighter } from './element-highlighter';
2
- export type { ElementHighlighterProps, HighlightTarget, Placement, HighlightClasses } from './element-highlighter';
2
+ export type { ElementHighlighterProps, HighlightTarget, Placement, HighlightClasses, HighlighterSize, } from './element-highlighter';
@@ -25,7 +25,7 @@ const design_ui_icon_button_1 = require("@teambit/design.ui.icon-button");
25
25
  const hover_highlighter_1 = require("./hover-highlighter");
26
26
  const ShowWhenHovering = () => {
27
27
  const [disabled, setDisabled] = (0, react_1.useState)(false);
28
- return (react_1.default.createElement("div", { style: { padding: '16px 50px 32px 16px', minWidth: 300 } },
28
+ return (react_1.default.createElement("div", { style: { padding: '16px 50px 32px 16px', minWidth: 300, fontFamily: 'sans-serif' } },
29
29
  react_1.default.createElement(hover_highlighter_1.HoverHighlighter, { style: { padding: 16 }, disabled: disabled },
30
30
  react_1.default.createElement("div", null,
31
31
  react_1.default.createElement("br", null),
@@ -1 +1 @@
1
- {"version":3,"file":"hover-highlighter.compositions.js","sourceRoot":"","sources":["../../hover-highlighter/hover-highlighter.compositions.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAAA,+CAAwC;AACxC,0EAA4D;AAC5D,2DAAuD;AAEhD,MAAM,gBAAgB,GAAG,GAAG,EAAE;IACnC,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,IAAA,gBAAQ,EAAU,KAAK,CAAC,CAAC;IAEzD,OAAO,CACL,uCAAK,KAAK,EAAE,EAAE,OAAO,EAAE,qBAAqB,EAAE,QAAQ,EAAE,GAAG,EAAE;QAC3D,8BAAC,oCAAgB,IAAC,KAAK,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,EAAE,QAAQ,EAAE,QAAQ;YAC1D;gBACE,yCAAM;gBACN;oBACE,8BAAC,kCAAU,IAAC,OAAO,EAAE,GAAG,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,iBAAyB,CACtE;gBACN;oBACG,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG;;oBAAkB,QAAQ,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS,CACpE,CACF,CACW,CACf,CACP,CAAC;AACJ,CAAC,CAAC;AAlBW,QAAA,gBAAgB,oBAkB3B"}
1
+ {"version":3,"file":"hover-highlighter.compositions.js","sourceRoot":"","sources":["../../hover-highlighter/hover-highlighter.compositions.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAAA,+CAAwC;AACxC,0EAA4D;AAC5D,2DAAuD;AAEhD,MAAM,gBAAgB,GAAG,GAAG,EAAE;IACnC,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,IAAA,gBAAQ,EAAU,KAAK,CAAC,CAAC;IAEzD,OAAO,CACL,uCAAK,KAAK,EAAE,EAAE,OAAO,EAAE,qBAAqB,EAAE,QAAQ,EAAE,GAAG,EAAE,UAAU,EAAE,YAAY,EAAE;QACrF,8BAAC,oCAAgB,IAAC,KAAK,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,EAAE,QAAQ,EAAE,QAAQ;YAC1D;gBACE,yCAAM;gBACN;oBACE,8BAAC,kCAAU,IAAC,OAAO,EAAE,GAAG,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,iBAAyB,CACtE;gBACN;oBACG,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG;;oBAAkB,QAAQ,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS,CACpE,CACF,CACW,CACf,CACP,CAAC;AACJ,CAAC,CAAC;AAlBW,QAAA,gBAAgB,oBAkB3B"}
@@ -1,3 +1,3 @@
1
- import { HybridHighlighterProps } from '../hybrid-highligher';
1
+ import { HybridHighlighterProps } from '../hybrid-highlighter';
2
2
  export declare type HoverHighlighterProps = Omit<HybridHighlighterProps, 'mode'>;
3
3
  export declare function HoverHighlighter({ ...props }: HoverHighlighterProps): JSX.Element;
@@ -16,10 +16,10 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
17
  exports.HoverHighlighter = void 0;
18
18
  const react_1 = __importDefault(require("react"));
19
- const hybrid_highligher_1 = require("../hybrid-highligher");
19
+ const hybrid_highlighter_1 = require("../hybrid-highlighter");
20
20
  function HoverHighlighter(_a) {
21
21
  var props = __rest(_a, []);
22
- return react_1.default.createElement(hybrid_highligher_1.HybridHighlighter, Object.assign({}, props, { mode: 'hover' }));
22
+ return react_1.default.createElement(hybrid_highlighter_1.HybridHighlighter, Object.assign({}, props, { mode: 'hover' }));
23
23
  }
24
24
  exports.HoverHighlighter = HoverHighlighter;
25
25
  //# sourceMappingURL=hover-highlighter.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"hover-highlighter.js","sourceRoot":"","sources":["../../hover-highlighter/hover-highlighter.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,kDAA0B;AAC1B,4DAAiF;AAIjF,SAAgB,gBAAgB,CAAC,EAAmC;QAA9B,KAAK,cAAV,EAAY,CAAF;IACzC,OAAO,8BAAC,qCAAiB,oBAAK,KAAK,IAAE,IAAI,EAAE,OAAO,IAAI,CAAC;AACzD,CAAC;AAFD,4CAEC"}
1
+ {"version":3,"file":"hover-highlighter.js","sourceRoot":"","sources":["../../hover-highlighter/hover-highlighter.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,kDAA0B;AAC1B,8DAAkF;AAIlF,SAAgB,gBAAgB,CAAC,EAAmC;QAA9B,KAAK,cAAV,EAAY,CAAF;IACzC,OAAO,8BAAC,sCAAiB,oBAAK,KAAK,IAAE,IAAI,EAAE,OAAO,IAAI,CAAC;AACzD,CAAC;AAFD,4CAEC"}
@@ -31,10 +31,7 @@ function useHoverHandler({ onChange, scopeClass = '', debounceDuration, disabled
31
31
  return;
32
32
  onChange({
33
33
  element: result.element,
34
- id: result.meta.id,
35
- scopeLink: undefined,
36
- link: result.meta.homepage,
37
- local: result.meta.exported === false,
34
+ components: result.components,
38
35
  });
39
36
  };
40
37
  const handleElement = (0, use_debounce_1.useDebouncedCallback)(_handleElement, debounceDuration);
@@ -52,16 +49,14 @@ function bubbleToBitComponent(element, elementRule, componentRule) {
52
49
  if (!current)
53
50
  return undefined;
54
51
  if ((0, rule_matcher_1.ruleMatcher)(current, elementRule)) {
55
- const component = (0, react_modules_dom_to_react_1.domToReact)(current);
56
- if ((0, react_ui_highlighter_component_metadata_bit_component_meta_1.hasComponentMeta)(component)) {
57
- const meta = component.__bit_component;
58
- if ((0, rule_matcher_1.componentRuleMatcher)({ meta }, componentRule))
59
- return {
60
- element: current,
61
- component,
62
- meta,
63
- };
64
- }
52
+ const components = (0, react_modules_dom_to_react_1.domToReacts)(current);
53
+ const relevantComponents = components.filter((x) => (0, react_ui_highlighter_component_metadata_bit_component_meta_1.hasComponentMeta)(x) && (0, rule_matcher_1.componentRuleMatcher)({ meta: x[react_ui_highlighter_component_metadata_bit_component_meta_1.componentMetaField] }, componentRule));
54
+ if (relevantComponents.length < 1)
55
+ return undefined;
56
+ return {
57
+ element: current,
58
+ components: relevantComponents,
59
+ };
65
60
  }
66
61
  }
67
62
  return undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"use-hover-highlighter.js","sourceRoot":"","sources":["../../hover-highlighter/use-hover-highlighter.tsx"],"names":[],"mappings":";;;AAAA,iCAAyC;AACzC,+CAAoD;AACpD,oFAAgF;AAChF,8EAAqE;AACrE,oJAAuG;AAEvG,8DAAmE;AAEnE,kDAAmG;AAYnG,oDAAoD;AACpD,SAAgB,mBAAmB,CACjC,QAA4C,EAC5C,QAAiC,EAAE,EACnC,EAAE,gBAAgB,EAAE,UAAU,EAAE,QAAQ,EAAE,IAAI,EAAE,aAAa,EAA8B;IAE3F,MAAM,EAAE,aAAa,EAAE,GAAG,eAAe,CAAC,EAAE,QAAQ,EAAE,UAAU,EAAE,gBAAgB,EAAE,QAAQ,EAAE,IAAI,EAAE,aAAa,EAAE,CAAC,CAAC;IAErH,MAAM,QAAQ,GAAG,IAAA,2CAAiB,EAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,aAAa,EAAE,KAAK,CAAC,CAAC;IAEhF,OAAO,QAAQ,CAAC;AAClB,CAAC;AAVD,kDAUC;AAWD,SAAS,eAAe,CAAC,EACvB,QAAQ,EACR,UAAU,GAAG,EAAE,EACf,gBAAgB,EAChB,QAAQ,EACR,IAAI,EACJ,aAAa,GACY;IACzB,yDAAyD;IACzD,MAAM,cAAc,GAAG,CAAC,OAA2B,EAAE,EAAE;QACrD,kCAAkC;QAClC,IAAI,CAAC,OAAO,IAAI,OAAO,CAAC,YAAY,CAAC,kCAAkC,CAAC,EAAE;YACxE,QAAQ,CAAC,SAAS,CAAC,CAAC;YACpB,OAAO;SACR;QAED,0DAA0D;QAC1D,IAAI,OAAO,CAAC,OAAO,CAAC,IAAI,UAAU,IAAI,+CAA0B,EAAE,CAAC;YAAE,OAAO;QAE5E,MAAM,MAAM,GAAG,oBAAoB,CAAC,OAAO,EAAE,IAAI,EAAE,aAAa,CAAC,CAAC;QAClE,IAAI,CAAC,MAAM;YAAE,OAAO;QAEpB,QAAQ,CAAC;YACP,OAAO,EAAE,MAAM,CAAC,OAAO;YACvB,EAAE,EAAE,MAAM,CAAC,IAAI,CAAC,EAAE;YAClB,SAAS,EAAE,SAAS;YACpB,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,QAAQ;YAC1B,KAAK,EAAE,MAAM,CAAC,IAAI,CAAC,QAAQ,KAAK,KAAK;SACtC,CAAC,CAAC;IACL,CAAC,CAAC;IAEF,MAAM,aAAa,GAAG,IAAA,mCAAoB,EAAC,cAAc,EAAE,gBAAgB,CAAC,CAAC;IAE7E,uBAAuB;IACvB,IAAA,iBAAS,EAAC,GAAG,EAAE;QACb,IAAI,QAAQ;YAAE,aAAa,CAAC,MAAM,EAAE,CAAC;IACvC,CAAC,EAAE,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAC,CAAC;IAE9B,OAAO,EAAE,aAAa,EAAE,CAAC;AAC3B,CAAC;AAED,8DAA8D;AAC9D,SAAS,oBAAoB,CAC3B,OAA2B,EAC3B,WAAuB,EACvB,aAAkC;IAElC,KAAK,IAAI,OAAO,GAAG,OAAO,EAAE,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,aAAa,EAAE;QACpE,OAAO,GAAG,IAAA,0CAAa,EAAC,OAAO,CAAC,CAAC;QACjC,IAAI,CAAC,OAAO;YAAE,OAAO,SAAS,CAAC;QAC/B,IAAI,IAAA,0BAAW,EAAC,OAAO,EAAE,WAAW,CAAC,EAAE;YACrC,MAAM,SAAS,GAAG,IAAA,uCAAU,EAAC,OAAO,CAAC,CAAC;YAEtC,IAAI,IAAA,6EAAgB,EAAC,SAAS,CAAC,EAAE;gBAC/B,MAAM,IAAI,GAAG,SAAS,CAAC,eAAe,CAAC;gBAEvC,IAAI,IAAA,mCAAoB,EAAC,EAAE,IAAI,EAAE,EAAE,aAAa,CAAC;oBAC/C,OAAO;wBACL,OAAO,EAAE,OAAO;wBAChB,SAAS;wBACT,IAAI;qBACL,CAAC;aACL;SACF;KACF;IAED,OAAO,SAAS,CAAC;AACnB,CAAC"}
1
+ {"version":3,"file":"use-hover-highlighter.js","sourceRoot":"","sources":["../../hover-highlighter/use-hover-highlighter.tsx"],"names":[],"mappings":";;;AAAA,iCAAyC;AACzC,+CAAoD;AACpD,oFAAiF;AACjF,8EAAqE;AACrE,oJAI6E;AAE7E,8DAAmE;AAEnE,kDAAmG;AAYnG,oDAAoD;AACpD,SAAgB,mBAAmB,CACjC,QAA4C,EAC5C,QAAiC,EAAE,EACnC,EAAE,gBAAgB,EAAE,UAAU,EAAE,QAAQ,EAAE,IAAI,EAAE,aAAa,EAA8B;IAE3F,MAAM,EAAE,aAAa,EAAE,GAAG,eAAe,CAAC,EAAE,QAAQ,EAAE,UAAU,EAAE,gBAAgB,EAAE,QAAQ,EAAE,IAAI,EAAE,aAAa,EAAE,CAAC,CAAC;IAErH,MAAM,QAAQ,GAAG,IAAA,2CAAiB,EAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,aAAa,EAAE,KAAK,CAAC,CAAC;IAEhF,OAAO,QAAQ,CAAC;AAClB,CAAC;AAVD,kDAUC;AAWD,SAAS,eAAe,CAAC,EACvB,QAAQ,EACR,UAAU,GAAG,EAAE,EACf,gBAAgB,EAChB,QAAQ,EACR,IAAI,EACJ,aAAa,GACY;IACzB,yDAAyD;IACzD,MAAM,cAAc,GAAG,CAAC,OAA2B,EAAE,EAAE;QACrD,kCAAkC;QAClC,IAAI,CAAC,OAAO,IAAI,OAAO,CAAC,YAAY,CAAC,kCAAkC,CAAC,EAAE;YACxE,QAAQ,CAAC,SAAS,CAAC,CAAC;YACpB,OAAO;SACR;QAED,0DAA0D;QAC1D,IAAI,OAAO,CAAC,OAAO,CAAC,IAAI,UAAU,IAAI,+CAA0B,EAAE,CAAC;YAAE,OAAO;QAE5E,MAAM,MAAM,GAAG,oBAAoB,CAAC,OAAO,EAAE,IAAI,EAAE,aAAa,CAAC,CAAC;QAClE,IAAI,CAAC,MAAM;YAAE,OAAO;QAEpB,QAAQ,CAAC;YACP,OAAO,EAAE,MAAM,CAAC,OAAO;YACvB,UAAU,EAAE,MAAM,CAAC,UAAU;SAC9B,CAAC,CAAC;IACL,CAAC,CAAC;IAEF,MAAM,aAAa,GAAG,IAAA,mCAAoB,EAAC,cAAc,EAAE,gBAAgB,CAAC,CAAC;IAE7E,uBAAuB;IACvB,IAAA,iBAAS,EAAC,GAAG,EAAE;QACb,IAAI,QAAQ;YAAE,aAAa,CAAC,MAAM,EAAE,CAAC;IACvC,CAAC,EAAE,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAC,CAAC;IAE9B,OAAO,EAAE,aAAa,EAAE,CAAC;AAC3B,CAAC;AAED,8DAA8D;AAC9D,SAAS,oBAAoB,CAC3B,OAA2B,EAC3B,WAAuB,EACvB,aAAkC;IAElC,KAAK,IAAI,OAAO,GAAG,OAAO,EAAE,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,aAAa,EAAE;QACpE,OAAO,GAAG,IAAA,0CAAa,EAAC,OAAO,CAAC,CAAC;QACjC,IAAI,CAAC,OAAO;YAAE,OAAO,SAAS,CAAC;QAC/B,IAAI,IAAA,0BAAW,EAAC,OAAO,EAAE,WAAW,CAAC,EAAE;YACrC,MAAM,UAAU,GAAG,IAAA,wCAAW,EAAC,OAAO,CAAC,CAAC;YAExC,MAAM,kBAAkB,GAAG,UAAU,CAAC,MAAM,CAC1C,CAAC,CAAC,EAAE,EAAE,CAAC,IAAA,6EAAgB,EAAC,CAAC,CAAC,IAAI,IAAA,mCAAoB,EAAC,EAAE,IAAI,EAAE,CAAC,CAAC,+EAAkB,CAAC,EAAE,EAAE,aAAa,CAAC,CACrE,CAAC;YAEhC,IAAI,kBAAkB,CAAC,MAAM,GAAG,CAAC;gBAAE,OAAO,SAAS,CAAC;YACpD,OAAO;gBACL,OAAO,EAAE,OAAO;gBAChB,UAAU,EAAE,kBAAkB;aAC/B,CAAC;SACH;KACF;IAED,OAAO,SAAS,CAAC;AACnB,CAAC"}
@@ -1,5 +1,5 @@
1
1
  import React, { CSSProperties } from 'react';
2
- import { Placement, HighlightClasses } from '../element-highlighter';
2
+ import { Placement, HighlightClasses, HighlighterSize } from '../element-highlighter';
3
3
  import type { MatchRule, ComponentMatchRule } from '../rule-matcher';
4
4
  export interface HybridHighlighterProps extends React.HTMLAttributes<HTMLDivElement> {
5
5
  /** stop all highlighting and drop listeners */
@@ -20,6 +20,7 @@ export interface HybridHighlighterProps extends React.HTMLAttributes<HTMLDivElem
20
20
  watchMotion?: boolean;
21
21
  /** filter highlighter targets by this query selector. (May be a more complex object in the future) */
22
22
  rule?: MatchRule;
23
+ /** filter components to match this rule. Can be id, array of ids, or a function */
23
24
  componentRule?: ComponentMatchRule;
24
25
  /** set the behavior of the highlighter.
25
26
  * `disabled` - stops highlighting.
@@ -30,6 +31,7 @@ export interface HybridHighlighterProps extends React.HTMLAttributes<HTMLDivElem
30
31
  bgColor?: string;
31
32
  bgColorHover?: string;
32
33
  bgColorActive?: string;
34
+ size?: HighlighterSize;
33
35
  }
34
36
  /** automatically highlight components on hover */
35
- export declare function HybridHighlighter({ disabled, mode, debounceSelection, watchMotion, placement, rule, componentRule, classes, highlightStyle, className, style, bgColor, bgColorHover, bgColorActive, children, ...rest }: HybridHighlighterProps): JSX.Element;
37
+ export declare function HybridHighlighter({ disabled, mode, debounceSelection, watchMotion, placement, rule, componentRule, classes, highlightStyle, className, style, bgColor, bgColorHover, bgColorActive, size, children, ...rest }: HybridHighlighterProps): JSX.Element;
@@ -39,10 +39,10 @@ const classnames_1 = __importDefault(require("classnames"));
39
39
  const uuid_1 = require("uuid");
40
40
  const hover_highlighter_1 = require("../hover-highlighter");
41
41
  const element_highlighter_1 = require("../element-highlighter");
42
- const use_multi_highlighter_1 = require("../multi-highlighter/use-multi-highlighter");
42
+ const children_highlighter_1 = require("../children-highlighter");
43
43
  /** automatically highlight components on hover */
44
44
  function HybridHighlighter(_a) {
45
- var { disabled, mode = 'hover', debounceSelection = 80, watchMotion = true, placement, rule, componentRule, classes, highlightStyle, className, style, bgColor, bgColorHover, bgColorActive, children } = _a, rest = __rest(_a, ["disabled", "mode", "debounceSelection", "watchMotion", "placement", "rule", "componentRule", "classes", "highlightStyle", "className", "style", "bgColor", "bgColorHover", "bgColorActive", "children"]);
45
+ var { disabled, mode = 'hover', debounceSelection = 80, watchMotion = true, placement, rule, componentRule, classes, highlightStyle, className, style, bgColor, bgColorHover, bgColorActive, size, children } = _a, rest = __rest(_a, ["disabled", "mode", "debounceSelection", "watchMotion", "placement", "rule", "componentRule", "classes", "highlightStyle", "className", "style", "bgColor", "bgColorHover", "bgColorActive", "size", "children"]);
46
46
  const ref = (0, react_1.createRef)();
47
47
  const [targets, setTarget] = (0, react_1.useState)({});
48
48
  const scopeClass = (0, react_1.useRef)(`hl-scope-${(0, uuid_1.v4)()}`).current;
@@ -57,20 +57,20 @@ function HybridHighlighter(_a) {
57
57
  scopeClass,
58
58
  disabled: disabled || mode !== 'hover',
59
59
  rule,
60
- componentRule
60
+ componentRule,
61
61
  });
62
- (0, use_multi_highlighter_1.useMultiHighlighter)({
62
+ (0, children_highlighter_1.useChildrenHighlighter)({
63
63
  onChange: setTarget,
64
64
  scopeRef: ref,
65
65
  scopeClass,
66
66
  disabled: disabled || mode !== 'allChildren',
67
67
  rule,
68
- componentRule
68
+ componentRule,
69
69
  });
70
70
  const _styles = (0, react_1.useMemo)(() => (Object.assign({ '--bit-highlighter-color': bgColor, '--bit-highlighter-color-hover': bgColorHover, '--bit-highlighter-color-active': bgColorActive }, style)), [bgColor, bgColorHover, bgColorActive, style]);
71
71
  return (react_1.default.createElement("div", Object.assign({ ref: ref }, rest, handlers, { style: _styles, className: (0, classnames_1.default)(className, scopeClass), "data-nullify-component-highlight": true }),
72
72
  children,
73
- Object.entries(targets).map(([key, target]) => (react_1.default.createElement(element_highlighter_1.ElementHighlighter, { key: key, target: target, classes: classes, style: highlightStyle, placement: placement, watchMotion: watchMotion })))));
73
+ Object.entries(targets).map(([key, target]) => (react_1.default.createElement(element_highlighter_1.ElementHighlighter, { key: key, target: target, classes: classes, style: highlightStyle, placement: placement, watchMotion: watchMotion, size: size })))));
74
74
  }
75
75
  exports.HybridHighlighter = HybridHighlighter;
76
76
  //# sourceMappingURL=hybrid-highlighter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hybrid-highlighter.js","sourceRoot":"","sources":["../../hybrid-highlighter/hybrid-highlighter.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,+CAA8F;AAC9F,4DAAoC;AACpC,+BAA0B;AAE1B,4DAA2D;AAC3D,gEAMgC;AAChC,kEAAiE;AAsCjE,kDAAkD;AAClD,SAAgB,iBAAiB,CAAC,EAmBT;QAnBS,EAChC,QAAQ,EACR,IAAI,GAAG,OAAO,EACd,iBAAiB,GAAG,EAAE,EACtB,WAAW,GAAG,IAAI,EAClB,SAAS,EACT,IAAI,EACJ,aAAa,EAEb,OAAO,EACP,cAAc,EACd,SAAS,EACT,KAAK,EACL,OAAO,EACP,YAAY,EACZ,aAAa,EACb,IAAI,EACJ,QAAQ,OAEe,EADpB,IAAI,cAlByB,iNAmBjC,CADQ;IAEP,MAAM,GAAG,GAAG,IAAA,iBAAS,GAAkB,CAAC;IACxC,MAAM,CAAC,OAAO,EAAE,SAAS,CAAC,GAAG,IAAA,gBAAQ,EAAkC,EAAE,CAAC,CAAC;IAC3E,MAAM,UAAU,GAAG,IAAA,cAAM,EAAC,YAAY,IAAA,SAAE,GAAE,EAAE,CAAC,CAAC,OAAO,CAAC;IACtD,MAAM,UAAU,GAAG,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC;IAEtD,8BAA8B;IAC9B,IAAA,iBAAS,EAAC,GAAG,EAAE;QACb,IAAI,QAAQ;YAAE,SAAS,CAAC,EAAE,CAAC,CAAC;IAC9B,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC;IAEf,MAAM,QAAQ,GAAG,IAAA,uCAAmB,EAClC,CAAC,UAAU,EAAE,EAAE,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAC3E,IAAI,EACJ;QACE,gBAAgB,EAAE,UAAU,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC;QACpD,UAAU;QACV,QAAQ,EAAE,QAAQ,IAAI,IAAI,KAAK,OAAO;QACtC,IAAI;QACJ,aAAa;KACd,CACF,CAAC;IAEF,IAAA,6CAAsB,EAAC;QACrB,QAAQ,EAAE,SAAS;QACnB,QAAQ,EAAE,GAAG;QACb,UAAU;QACV,QAAQ,EAAE,QAAQ,IAAI,IAAI,KAAK,aAAa;QAC5C,IAAI;QACJ,aAAa;KACd,CAAC,CAAC;IAEH,MAAM,OAAO,GAAG,IAAA,eAAO,EACrB,GAAG,EAAE,CAAC,iBACJ,yBAAyB,EAAE,OAAO,EAClC,+BAA+B,EAAE,YAAY,EAC7C,gCAAgC,EAAE,aAAa,IAC5C,KAAK,EACR,EACF,CAAC,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,KAAK,CAAC,CAC9C,CAAC;IAEF,OAAO,CACL,qDACE,GAAG,EAAE,GAAG,IACJ,IAAI,EACJ,QAAQ,IACZ,KAAK,EAAE,OAAO,EACd,SAAS,EAAE,IAAA,oBAAU,EAAC,SAAS,EAAE,UAAU,CAAC;QAG3C,QAAQ;QAKR,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,MAAM,CAAC,EAAE,EAAE,CAAC,CAC9C,8BAAC,wCAAkB,IACjB,GAAG,EAAE,GAAG,EACR,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,OAAO,EAChB,KAAK,EAAE,cAAc,EACrB,SAAS,EAAE,SAAS,EACpB,WAAW,EAAE,WAAW,EACxB,IAAI,EAAE,IAAI,GACV,CACH,CAAC,CACE,CACP,CAAC;AACJ,CAAC;AAxFD,8CAwFC"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../hybrid-highlighter/index.ts"],"names":[],"mappings":";;;AAAA,2DAAyD;AAAhD,uHAAA,iBAAiB,OAAA"}
package/dist/index.d.ts CHANGED
@@ -1,9 +1,9 @@
1
- export { HybridHighlighter as ComponentHighlighter } from './hybrid-highligher';
2
- export type { HybridHighlighterProps as ComponentHighlightProps } from './hybrid-highligher';
1
+ export { HybridHighlighter as ComponentHighlighter } from './hybrid-highlighter';
2
+ export type { HybridHighlighterProps as ComponentHighlightProps } from './hybrid-highlighter';
3
3
  export { HoverHighlighter } from './hover-highlighter';
4
4
  export type { HoverHighlighterProps } from './hover-highlighter';
5
- export { MultiHighlighter } from './multi-highlighter';
6
- export type { MultiHighlighterProps } from './multi-highlighter';
5
+ export { ChildrenHighlighter } from './children-highlighter';
6
+ export type { ChildrenHighlighterProps } from './children-highlighter';
7
7
  export { ElementHighlighter } from './element-highlighter';
8
8
  export type { ElementHighlighterProps, HighlightTarget, Placement, HighlightClasses } from './element-highlighter';
9
9
  export { ExcludeHighlighter, excludeHighlighterAtt, excludeHighlighterSelector, excludeHighlighterAttrName, } from './ignore-highlighter';
package/dist/index.js CHANGED
@@ -1,12 +1,12 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.excludeHighlighterAttrName = exports.excludeHighlighterSelector = exports.excludeHighlighterAtt = exports.ExcludeHighlighter = exports.ElementHighlighter = exports.MultiHighlighter = exports.HoverHighlighter = exports.ComponentHighlighter = void 0;
4
- var hybrid_highligher_1 = require("./hybrid-highligher");
5
- Object.defineProperty(exports, "ComponentHighlighter", { enumerable: true, get: function () { return hybrid_highligher_1.HybridHighlighter; } });
3
+ exports.excludeHighlighterAttrName = exports.excludeHighlighterSelector = exports.excludeHighlighterAtt = exports.ExcludeHighlighter = exports.ElementHighlighter = exports.ChildrenHighlighter = exports.HoverHighlighter = exports.ComponentHighlighter = void 0;
4
+ var hybrid_highlighter_1 = require("./hybrid-highlighter");
5
+ Object.defineProperty(exports, "ComponentHighlighter", { enumerable: true, get: function () { return hybrid_highlighter_1.HybridHighlighter; } });
6
6
  var hover_highlighter_1 = require("./hover-highlighter");
7
7
  Object.defineProperty(exports, "HoverHighlighter", { enumerable: true, get: function () { return hover_highlighter_1.HoverHighlighter; } });
8
- var multi_highlighter_1 = require("./multi-highlighter");
9
- Object.defineProperty(exports, "MultiHighlighter", { enumerable: true, get: function () { return multi_highlighter_1.MultiHighlighter; } });
8
+ var children_highlighter_1 = require("./children-highlighter");
9
+ Object.defineProperty(exports, "ChildrenHighlighter", { enumerable: true, get: function () { return children_highlighter_1.ChildrenHighlighter; } });
10
10
  var element_highlighter_1 = require("./element-highlighter");
11
11
  Object.defineProperty(exports, "ElementHighlighter", { enumerable: true, get: function () { return element_highlighter_1.ElementHighlighter; } });
12
12
  var ignore_highlighter_1 = require("./ignore-highlighter");
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":";;;AAAA,yDAAgF;AAAvE,yHAAA,iBAAiB,OAAwB;AAGlD,yDAAuD;AAA9C,qHAAA,gBAAgB,OAAA;AAGzB,yDAAuD;AAA9C,qHAAA,gBAAgB,OAAA;AAGzB,6DAA2D;AAAlD,yHAAA,kBAAkB,OAAA;AAG3B,2DAK8B;AAJ5B,wHAAA,kBAAkB,OAAA;AAClB,2HAAA,qBAAqB,OAAA;AACrB,gIAAA,0BAA0B,OAAA;AAC1B,gIAAA,0BAA0B,OAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":";;;AAAA,2DAAiF;AAAxE,0HAAA,iBAAiB,OAAwB;AAGlD,yDAAuD;AAA9C,qHAAA,gBAAgB,OAAA;AAGzB,+DAA6D;AAApD,2HAAA,mBAAmB,OAAA;AAG5B,6DAA2D;AAAlD,yHAAA,kBAAkB,OAAA;AAG3B,2DAK8B;AAJ5B,wHAAA,kBAAkB,OAAA;AAClB,2HAAA,qBAAqB,OAAA;AACrB,gIAAA,0BAA0B,OAAA;AAC1B,gIAAA,0BAA0B,OAAA"}
@@ -0,0 +1,9 @@
1
+ import React from 'react';
2
+ import { ComponentMetaHolder } from '@teambit/react.ui.highlighter.component-metadata.bit-component-meta';
3
+ export declare type ComponentStripSize = 's' | 'm' | 'l';
4
+ interface ComponentStripProps extends React.HTMLAttributes<HTMLDivElement> {
5
+ component: ComponentMetaHolder;
6
+ size?: ComponentStripSize;
7
+ }
8
+ export declare const ComponentStrip: React.ForwardRefExoticComponent<ComponentStripProps & React.RefAttributes<HTMLDivElement>>;
9
+ export {};
@@ -0,0 +1,49 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
5
+ }) : (function(o, m, k, k2) {
6
+ if (k2 === undefined) k2 = k;
7
+ o[k2] = m[k];
8
+ }));
9
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
10
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
11
+ }) : function(o, v) {
12
+ o["default"] = v;
13
+ });
14
+ var __importStar = (this && this.__importStar) || function (mod) {
15
+ if (mod && mod.__esModule) return mod;
16
+ var result = {};
17
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
18
+ __setModuleDefault(result, mod);
19
+ return result;
20
+ };
21
+ var __importDefault = (this && this.__importDefault) || function (mod) {
22
+ return (mod && mod.__esModule) ? mod : { "default": mod };
23
+ };
24
+ Object.defineProperty(exports, "__esModule", { value: true });
25
+ exports.ComponentStrip = void 0;
26
+ const react_1 = __importStar(require("react"));
27
+ const base_ui_routing_native_link_1 = require("@teambit/base-ui.routing.native-link");
28
+ const component_id_1 = require("@teambit/component-id");
29
+ const component_modules_component_url_1 = require("@teambit/component.modules.component-url");
30
+ const react_ui_highlighter_component_metadata_bit_component_meta_1 = require("@teambit/react.ui.highlighter.component-metadata.bit-component-meta");
31
+ const component_strip_module_scss_1 = __importDefault(require("./component-strip.module.scss"));
32
+ const links_1 = require("./links");
33
+ exports.ComponentStrip = (0, react_1.forwardRef)(function ComponentStrip({ component, size = 'm', children }, ref) {
34
+ const { id, homepage, exported } = component[react_ui_highlighter_component_metadata_bit_component_meta_1.componentMetaField];
35
+ const parsedId = (0, react_1.useMemo)(() => component_id_1.ComponentID.tryFromString(id), [id]);
36
+ const componentLink = homepage || (0, links_1.calcComponentLink)(parsedId, exported);
37
+ return (react_1.default.createElement("div", { className: component_strip_module_scss_1.default.componentStrip, ref: ref, "data-size": size },
38
+ !parsedId && react_1.default.createElement(LabelBlock, { link: homepage }, id),
39
+ parsedId && react_1.default.createElement(LabelBlock, { link: component_modules_component_url_1.ScopeUrl.toUrl(parsedId.scope) }, parsedId.scope),
40
+ parsedId && (react_1.default.createElement(LabelBlock, { link: componentLink },
41
+ parsedId.fullName,
42
+ parsedId.version && parsedId.version !== 'latest' && `@${parsedId.version}`)),
43
+ children));
44
+ });
45
+ function LabelBlock({ link, children }) {
46
+ const Comp = link ? base_ui_routing_native_link_1.NativeLink : 'span';
47
+ return (react_1.default.createElement(Comp, { href: link, external: !!link }, children));
48
+ }
49
+ //# sourceMappingURL=component-strip.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"component-strip.js","sourceRoot":"","sources":["../../label/component-strip.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAAA,+CAA4E;AAC5E,sFAAkE;AAClE,wDAAoD;AACpD,8FAAoE;AACpE,oJAG6E;AAC7E,gGAAmD;AACnD,mCAA4C;AAQ/B,QAAA,cAAc,GAAG,IAAA,kBAAU,EAAC,SAAS,cAAc,CAC9D,EAAE,SAAS,EAAE,IAAI,GAAG,GAAG,EAAE,QAAQ,EAAuB,EACxD,GAAiC;IAEjC,MAAM,EAAE,EAAE,EAAE,QAAQ,EAAE,QAAQ,EAAE,GAAG,SAAS,CAAC,+EAAkB,CAAC,CAAC;IAEjE,MAAM,QAAQ,GAAG,IAAA,eAAO,EAAC,GAAG,EAAE,CAAC,0BAAW,CAAC,aAAa,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IACpE,MAAM,aAAa,GAAG,QAAQ,IAAI,IAAA,yBAAiB,EAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;IAExE,OAAO,CACL,uCAAK,SAAS,EAAE,qCAAM,CAAC,cAAc,EAAE,GAAG,EAAE,GAAG,eAAa,IAAI;QAC7D,CAAC,QAAQ,IAAI,8BAAC,UAAU,IAAC,IAAI,EAAE,QAAQ,IAAG,EAAE,CAAc;QAC1D,QAAQ,IAAI,8BAAC,UAAU,IAAC,IAAI,EAAE,0CAAQ,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAG,QAAQ,CAAC,KAAK,CAAc;QAC3F,QAAQ,IAAI,CACX,8BAAC,UAAU,IAAC,IAAI,EAAE,aAAa;YAC5B,QAAQ,CAAC,QAAQ;YACjB,QAAQ,CAAC,OAAO,IAAI,QAAQ,CAAC,OAAO,KAAK,QAAQ,IAAI,IAAI,QAAQ,CAAC,OAAO,EAAE,CACjE,CACd;QACA,QAAQ,CACL,CACP,CAAC;AACJ,CAAC,CAAC,CAAC;AAEH,SAAS,UAAU,CAAC,EAAE,IAAI,EAAE,QAAQ,EAA0C;IAC5E,MAAM,IAAI,GAAG,IAAI,CAAC,CAAC,CAAC,wCAAU,CAAC,CAAC,CAAC,MAAM,CAAC;IACxC,OAAO,CACL,8BAAC,IAAI,IAAC,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,CAAC,IAAI,IAC/B,QAAQ,CACJ,CACR,CAAC;AACJ,CAAC"}
@@ -0,0 +1,49 @@
1
+ $borderRadius: 0.5em;
2
+ $gap: 0.125em;
3
+
4
+ .componentStrip {
5
+ display: flex;
6
+ width: fit-content; // for correct shadow size
7
+
8
+ border-radius: $borderRadius;
9
+ box-shadow: var(--bit-highlighter-shadow);
10
+
11
+ > * {
12
+ padding: 0 0.5em;
13
+ line-height: 1.5; //use line height to get rounder values than 0.25em padding
14
+
15
+ transition: filter 300ms, background-color 300ms;
16
+ transform: translateZ(0); //fix blurriness in Safari
17
+
18
+ background: var(--bit-highlighter-color, #eebcc9);
19
+
20
+ &:link,
21
+ &:visited {
22
+ text-decoration: inherit; // reset browser defaults
23
+ color: inherit; // reset browser defaults
24
+
25
+ &:hover {
26
+ background: var(--bit-highlighter-color-hover, #f6dae2);
27
+ }
28
+
29
+ &:active {
30
+ background: var(--bit-highlighter-color-active, #e79db1);
31
+ color: inherit;
32
+ }
33
+ }
34
+
35
+ &:first-child {
36
+ border-top-left-radius: $borderRadius;
37
+ border-bottom-left-radius: $borderRadius;
38
+ }
39
+
40
+ margin-right: $gap;
41
+
42
+ &:last-child {
43
+ border-top-right-radius: $borderRadius;
44
+ border-bottom-right-radius: $borderRadius;
45
+
46
+ margin-right: unset;
47
+ }
48
+ }
49
+ }
@@ -1,2 +1,4 @@
1
- export { LabelContainer, Label } from './label';
2
- export type { LabelContainerProps, LabelProps, Placement } from './label';
1
+ export { Label } from './label';
2
+ export type { LabelProps, LabelSize } from './label';
3
+ export { LabelContainer } from './label-container';
4
+ export type { LabelContainerProps, Placement } from './label-container';
@@ -1,7 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.Label = exports.LabelContainer = void 0;
3
+ exports.LabelContainer = exports.Label = void 0;
4
4
  var label_1 = require("./label");
5
- Object.defineProperty(exports, "LabelContainer", { enumerable: true, get: function () { return label_1.LabelContainer; } });
6
5
  Object.defineProperty(exports, "Label", { enumerable: true, get: function () { return label_1.Label; } });
6
+ var label_container_1 = require("./label-container");
7
+ Object.defineProperty(exports, "LabelContainer", { enumerable: true, get: function () { return label_container_1.LabelContainer; } });
7
8
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../label/index.ts"],"names":[],"mappings":";;;AAAA,iCAAgD;AAAvC,uGAAA,cAAc,OAAA;AAAE,8FAAA,KAAK,OAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../label/index.ts"],"names":[],"mappings":";;;AAAA,iCAAgC;AAAvB,8FAAA,KAAK,OAAA;AAGd,qDAAmD;AAA1C,iHAAA,cAAc,OAAA"}
@@ -0,0 +1,13 @@
1
+ import React from 'react';
2
+ import type { Placement } from '@popperjs/core';
3
+ import '@popperjs/core';
4
+ export interface LabelContainerProps extends React.HTMLAttributes<HTMLDivElement> {
5
+ targetRef: HTMLElement | null;
6
+ offset?: [number, number];
7
+ placement?: Placement;
8
+ flip?: boolean;
9
+ /** continually update label position to match moving elements */
10
+ watchMotion?: boolean;
11
+ }
12
+ export type { Placement };
13
+ export declare function LabelContainer({ targetRef, offset, placement, flip, watchMotion, className, ...rest }: LabelContainerProps): JSX.Element;
@@ -0,0 +1,53 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
5
+ }) : (function(o, m, k, k2) {
6
+ if (k2 === undefined) k2 = k;
7
+ o[k2] = m[k];
8
+ }));
9
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
10
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
11
+ }) : function(o, v) {
12
+ o["default"] = v;
13
+ });
14
+ var __importStar = (this && this.__importStar) || function (mod) {
15
+ if (mod && mod.__esModule) return mod;
16
+ var result = {};
17
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
18
+ __setModuleDefault(result, mod);
19
+ return result;
20
+ };
21
+ var __rest = (this && this.__rest) || function (s, e) {
22
+ var t = {};
23
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
24
+ t[p] = s[p];
25
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
26
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
27
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
28
+ t[p[i]] = s[p[i]];
29
+ }
30
+ return t;
31
+ };
32
+ Object.defineProperty(exports, "__esModule", { value: true });
33
+ exports.LabelContainer = void 0;
34
+ const react_1 = __importStar(require("react"));
35
+ const react_popper_1 = require("react-popper");
36
+ require("@popperjs/core");
37
+ const use_animation_frame_1 = require("../use-animation-frame");
38
+ // TODO - replace this with TippyJS, when it supports a `targetElement={targetRef.current}` prop
39
+ function LabelContainer(_a) {
40
+ var { targetRef, offset, placement, flip = true, watchMotion, className } = _a, rest = __rest(_a, ["targetRef", "offset", "placement", "flip", "watchMotion", "className"]);
41
+ const [sourceRef, setSourceRef] = (0, react_1.useState)(null);
42
+ const modifiers = (0, react_1.useMemo)(() => [{ name: 'offset', options: { offset } }], [flip, offset]);
43
+ const { styles, attributes, update } = (0, react_popper_1.usePopper)(targetRef, sourceRef, {
44
+ modifiers,
45
+ placement,
46
+ });
47
+ (0, use_animation_frame_1.useAnimationFrame)(!!watchMotion && update);
48
+ if (!targetRef)
49
+ return null;
50
+ return react_1.default.createElement("div", Object.assign({}, rest, { ref: setSourceRef, className: className, style: styles.popper }, attributes.popper));
51
+ }
52
+ exports.LabelContainer = LabelContainer;
53
+ //# sourceMappingURL=label-container.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"label-container.js","sourceRoot":"","sources":["../../label/label-container.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,+CAAiD;AACjD,+CAAyC;AAEzC,0BAAwB;AAExB,gEAA2D;AAa3D,gGAAgG;AAChG,SAAgB,cAAc,CAAC,EAQT;QARS,EAC7B,SAAS,EACT,MAAM,EACN,SAAS,EACT,IAAI,GAAG,IAAI,EACX,WAAW,EACX,SAAS,OAEW,EADjB,IAAI,cAPsB,wEAQ9B,CADQ;IAEP,MAAM,CAAC,SAAS,EAAE,YAAY,CAAC,GAAG,IAAA,gBAAQ,EAAwB,IAAI,CAAC,CAAC;IAExE,MAAM,SAAS,GAAG,IAAA,eAAO,EACvB,GAAG,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,EAC/C,CAAC,IAAI,EAAE,MAAM,CAAC,CACf,CAAC;IAEF,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,GAAG,IAAA,wBAAS,EAAC,SAAS,EAAE,SAAS,EAAE;QACrE,SAAS;QACT,SAAS;KACV,CAAC,CAAC;IAEH,IAAA,uCAAiB,EAAC,CAAC,CAAC,WAAW,IAAI,MAAM,CAAC,CAAC;IAE3C,IAAI,CAAC,SAAS;QAAE,OAAO,IAAI,CAAC;IAE5B,OAAO,uDAAS,IAAI,IAAE,GAAG,EAAE,YAAY,EAAE,SAAS,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,CAAC,MAAM,IAAM,UAAU,CAAC,MAAM,EAAI,CAAC;AACjH,CAAC;AA1BD,wCA0BC"}
@@ -1,21 +1,9 @@
1
1
  import React from 'react';
2
- import type { CardProps } from '@teambit/base-ui.surfaces.card';
3
- import type { Placement } from '@popperjs/core';
4
- import '@popperjs/core';
5
- export interface LabelContainerProps extends React.HTMLAttributes<HTMLDivElement> {
6
- targetRef: HTMLElement | null;
7
- offset?: [number, number];
8
- placement?: Placement;
9
- flip?: boolean;
10
- /** continually update label position to match moving elements */
11
- watchMotion?: boolean;
2
+ import { ComponentMetaHolder } from '@teambit/react.ui.highlighter.component-metadata.bit-component-meta';
3
+ import { ComponentStripSize } from './component-strip';
4
+ export declare type LabelSize = ComponentStripSize;
5
+ export interface LabelProps extends React.HTMLAttributes<HTMLDivElement> {
6
+ components: ComponentMetaHolder[];
7
+ size?: LabelSize;
12
8
  }
13
- export type { Placement };
14
- export declare function LabelContainer({ targetRef, offset, placement, flip, watchMotion, className, ...rest }: LabelContainerProps): JSX.Element;
15
- export interface LabelProps extends CardProps {
16
- componentId: string;
17
- link?: string;
18
- scopeLink?: string;
19
- local?: boolean;
20
- }
21
- export declare function Label({ componentId, link, scopeLink, local, ...rest }: LabelProps): JSX.Element;
9
+ export declare function Label({ components, size, ...props }: LabelProps): JSX.Element;