pixel-react 1.21.97 → 1.21.99

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 (29) hide show
  1. package/lib/components/AutoTruncateText/resizeObserverService.js +6 -4
  2. package/lib/components/AutoTruncateText/resizeObserverService.js.map +1 -1
  3. package/lib/components/HighlightText/HighlightText.d.ts +2 -2
  4. package/lib/components/HighlightText/HighlightText.js +137 -13
  5. package/lib/components/HighlightText/HighlightText.js.map +1 -1
  6. package/lib/components/HighlightText/index.d.ts +1 -0
  7. package/lib/components/HighlightText/types.d.ts +41 -0
  8. package/lib/components/Icon/iconList.js +10 -0
  9. package/lib/components/Icon/iconList.js.map +1 -1
  10. package/lib/components/SequentialConnectingBranch/components/Branches/Branches.js +9 -1
  11. package/lib/components/SequentialConnectingBranch/components/Branches/Branches.js.map +1 -1
  12. package/lib/components/SequentialConnectingBranch/types.d.ts +1 -0
  13. package/lib/components/TooltipService/TooltipService.js +201 -104
  14. package/lib/components/TooltipService/TooltipService.js.map +1 -1
  15. package/lib/hooks/useFocusTrap.d.ts +29 -0
  16. package/lib/hooks/useFocusTrap.js +97 -0
  17. package/lib/hooks/useFocusTrap.js.map +1 -0
  18. package/lib/hooks/useInteractiveAncestor.d.ts +7 -0
  19. package/lib/hooks/useInteractiveAncestor.js +18 -0
  20. package/lib/hooks/useInteractiveAncestor.js.map +1 -0
  21. package/lib/index.d.ts +44 -3
  22. package/lib/index.js +9 -9
  23. package/lib/index.js.map +1 -1
  24. package/lib/styles.css +1 -1
  25. package/lib/tsconfig.tsbuildinfo +1 -1
  26. package/lib/utils/a11y/a11y.d.ts +28 -0
  27. package/lib/utils/a11y/a11y.js +62 -0
  28. package/lib/utils/a11y/a11y.js.map +1 -0
  29. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"Branches.js","sourceRoot":"","sources":["../../../../../src/components/SequentialConnectingBranch/components/Branches/Branches.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Branches.js","sourceRoot":"","sources":["../../../../../src/components/SequentialConnectingBranch/components/Branches/Branches.tsx"],"names":[],"mappings":";AAAA,OAAO,UAAU,MAAM,YAAY,CAAC;AACpC,OAAO,EAAE,UAAU,EAAE,MAAM,yCAAyC,CAAC;AAErE,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAC7C,OAAO,EAAE,IAAI,EAAE,MAAM,6BAA6B,CAAC;AAEnD,OAAO,iBAAiB,MAAM,4BAA4B,CAAC;AAC3D,OAAO,IAAI,MAAM,eAAe,CAAC;AACjC,OAAO,UAAU,MAAM,qBAAqB,CAAC;AAC7C,OAAO,MAAM,MAAM,iBAAiB,CAAC;AACrC,OAAO,iBAAiB,CAAC;AAEzB,OAAO,OAAO,MAAM,kBAAkB,CAAC;AACvC,OAAO,cAAc,MAAM,kCAAkC,CAAC;AAC9D,OAAO,EAAE,aAAa,EAAE,MAAM,+CAA+C,CAAC;AAC9E,OAAO,EAAE,4BAA4B,EAAE,MAAM,8CAA8C,CAAC;AAE5F,MAAM,QAAQ,GAAG,CAAC,EAChB,gBAAgB,EAChB,QAAQ,EACR,kBAAkB,EAClB,sBAAsB,EACtB,0BAA0B,EAC1B,YAAY,EACZ,eAAe,EACf,eAAe,EACf,mBAAmB,EACnB,0BAA0B,EAC1B,gBAAgB,GAAG,EAAE,EACrB,UAAU,GAAG,EAAE,EACf,WAAW,GAAG,EAAE,EAChB,QAAQ,EACR,WAAW,EACX,gBAAgB,GAAG,EAAE,GACP,EAAE,EAAE;IAClB,MAAM,OAAO,GAAG,QAAQ,GAAG,CAAC,KAAK,CAAC,CAAC;IACnC,MAAM,mBAAmB,GAAG,UAAU,CACpC,gBAAgB,CAAC,kBAAkB,GAAG,CAAC,CAAC,CACzC,CAAC;IACF,MAAM,iBAAiB,GAAG,4BAA4B,EAAE,CAAC;IACzD,MAAM,EACJ,cAAc,GAAG,EAAE,EACnB,iBAAiB,GAAG,EAAE,EACtB,kBAAkB,GAAG,EAAE,GACxB,GAAG,iBAAiB,IAAI,EAAE,CAAC;IAC5B,MAAM,aAAa,GAAG,GAAG,EAAE,CACzB,QAAQ;QACN,CAAC,CAAC,CAAC,mBAAmB,IAAI,CAAC,UAAU,CAAC,sBAAsB,CAAC;QAC7D,CAAC,CAAC,CAAC,mBAAmB,CAAC;IAE3B,MAAM,cAAc,GAAG,CACrB,aAAgD,EAChD,UAA6C,EAC7C,EAAE;QACF,IACE,aAAa;YACb,UAAU;YACV,mBAAmB,IAAI,aAAa;YACpC,mBAAmB,IAAI,UAAU,EACjC,CAAC;YACD,OAAO,aAAa,CAAC,iBAAiB,KAAK,UAAU,CAAC,iBAAiB;gBACrE,CAAC,CAAC,QAAQ;gBACV,CAAC,CAAC,OAAO,CAAC;QACd,CAAC;QACD,OAAO,OAAO,CAAC;IACjB,CAAC,CAAC;IAEF,MAAM,eAAe,GAAG,CAAC,KAAa,EAAE,EAAE,CACxC,gBAAgB,EAAE,MAAM,GAAG,CAAC,KAAK,KAAK,IAAI,kBAAkB,GAAG,CAAC,CAAC;IAEnE,MAAM,0BAA0B,GAAG,GAAG,EAAE;QACtC,IAAI,kBAAkB,KAAK,CAAC,EAAE,CAAC;YAC7B,OAAO,qCAAqC,CAAC;QAC/C,CAAC;QACD,OAAO,yCACL,kBAAkB,GAAG,CACvB,wCAAwC,CAAC;IAC3C,CAAC,CAAC;IACF,MAAM,yBAAyB,GAAG,CAChC,OAAe,EAAE,EACjB,eAAsC,EACtC,eAAyB,EAAE,EAC3B,EAAE;QACF,MAAM,EACJ,YAAY,EACZ,WAAW,EACX,cAAc,EACd,WAAW,EAAE,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAChE,UAAU,EACV,oBAAoB,GAAG,EAAE,GAC1B,GAAG,eAAmC,CAAC;QACxC,MAAM,cAAc,GAAG,CAAC,cAAsB,EAAE,EAAE,EAAE;YAClD,IAAI,WAAW,EAAE,WAAW,EAAE,KAAK,OAAO;gBAAE,OAAO,OAAO,CAAC;YAC3D,IAAI,WAAW,EAAE,WAAW,EAAE,EAAE,QAAQ,CAAC,cAAc,CAAC;gBACtD,OAAO,cAAc,CAAC;YACxB,IAAI,WAAW,EAAE,WAAW,EAAE,EAAE,QAAQ,CAAC,YAAY,CAAC;gBACpD,OAAO,YAAY,CAAC;YACtB,IAAI,WAAW,EAAE,WAAW,EAAE,EAAE,QAAQ,CAAC,WAAW,CAAC;gBAAE,OAAO,WAAW,CAAC;YAC1E,IAAI,WAAW,EAAE,WAAW,EAAE,EAAE,QAAQ,CAAC,uBAAuB,CAAC;gBAC/D,OAAO,WAAW,CAAC;YACrB,OAAO,EAAE,CAAC;QACZ,CAAC,CAAC;QAEF,eAAe;QACf,MAAM,WAAW,GAAG;YAClB;gBACE,KAAK,EACH,YAAY,KAAK,uBAAuB;oBACtC,CAAC,CAAC,oBAAoB;oBACtB,CAAC,CAAC,YAAY;gBAClB,IAAI,EAAE,cAAc,CAAC,YAAY,CAAC;aACnC;SACF,CAAC;QACF,IAAI,UAAU,EAAE,WAAW,EAAE,KAAK,QAAQ,EAAE,CAAC;YAC3C,WAAW,CAAC,IAAI,CAAC;gBACf,KAAK,EAAE,QAAQ,IAAI,EAAE;gBACrB,IAAI,EAAE,YAAY,EAAE,WAAW,EAAE,KAAK,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE;aAC7D,CAAC,CAAC;QACL,CAAC;QAED,MAAM,qBAAqB,GAAG,YAAY;YACxC,EAAE,WAAW,EAAE;YACf,EAAE,QAAQ,CAAC,uBAAuB,CAAC,CAAC;QACtC,MAAM,eAAe,GAClB,qBAAqB,IAAI,OAAO,QAAQ,KAAK,SAAS;YACtD,CAAC,CAAC,CAAC,QAAQ;YACV,CAAC,CAAC,EAAE,CAAC;QAET,uBAAuB;QACvB,MAAM,QAAQ,GAAG;YACf,KAAK,EAAE,SAAS,IAAI,EAAE;YACtB,IAAI,EAAE,QAAQ,IAAI,MAAM,IAAI,EAAE;YAC9B,SAAS,EAAE,eAAe;SAC3B,CAAC;QACF,MAAM,UAAU,GAAG;YACjB,QAAQ;YACR;gBACE,KAAK,EAAE,cAAc,IAAI,EAAE;gBAC3B,IAAI,EAAE,WAAW,IAAI,EAAE;gBACvB,SAAS,EAAE,eAAe;aAC3B;SACF,CAAC;QAEF,0BAA0B;QAC1B,MAAM,aAAa,GACjB,UAAU,EAAE,MAAM,CAAC,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE;YACjC,IAAI,MAAM,EAAE,CAAC;gBACX,GAAG,EAAE,IAAI,CAAC;oBACR,KAAK,EAAE,MAAM,EAAE,IAAI,IAAI,EAAE;oBACzB,IAAI,EACF,UAAU,EAAE,WAAW,EAAE,KAAK,QAAQ;wBACpC,CAAC,CAAC,SAAS;wBACX,CAAC,CAAC,MAAM,EAAE,QAAQ,IAAI,EAAE;oBAC5B,OAAO,EACL,UAAU,EAAE,WAAW,EAAE,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,EAAE;oBAC/D,SAAS,EACP,OAAO,MAAM,EAAE,SAAS,KAAK,SAAS;wBACpC,CAAC,CAAC,MAAM,EAAE,SAAS;wBACnB,CAAC,CAAC,EAAE;iBACT,CAAC,CAAC;YACL,CAAC;YACD,OAAO,GAAG,CAAC;QACb,CAAC,EAAE,EAAyB,CAAC,IAAI,EAAE,CAAC;QAEtC,MAAM,cAAc,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;QAC1C,MAAM,sBAAsB,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC,WAAW,EAAE,EAAE,CAC9D,WAAW,CAAC,WAAW,EAAE,CAC1B,CAAC;QACF,MAAM,cAAc,GAAwC;YAC1D,GAAG,EAAE,UAAU;YACf,aAAa,EAAE,UAAU;YACzB,cAAc,EAAE,CAAC,GAAG,UAAU,EAAE,GAAG,aAAa,CAAC;YACjD,aAAa,EAAE,CAAC,GAAG,UAAU,EAAE,GAAG,aAAa,CAAC;YAChD,UAAU,EAAE,CAAC,GAAG,UAAU,EAAE,GAAG,aAAa,CAAC;YAC7C,MAAM,EAAE,aAAa;YACrB,OAAO,EAAE,CAAC,QAAQ,CAAC;SACpB,CAAC;QAEF,IAAI,cAAc,KAAK,eAAe,EAAE,CAAC;YACvC,MAAM,OAAO,GAAG,CAAC,GAAG,WAAW,CAAC,CAAC;YAEjC,MAAM,eAAe,GAAG,CAAC,KAAK,EAAE,YAAY,EAAE,YAAY,EAAE,YAAY,CAAC,CAAC;YAE1E,MAAM,MAAM,GAAG,sBAAsB,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;YAEtD,MAAM,MAAM,GAAG,sBAAsB,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,EAAE,CACzD,eAAe,CAAC,QAAQ,CAAC,WAAW,CAAC,CACtC,CAAC;YAEF,MAAM,SAAS,GAAG,sBAAsB,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;YAC5D,MAAM,UAAU,GAAG,sBAAsB,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;YAE9D,IAAI,MAAM,EAAE,CAAC;gBACX,OAAO,CAAC,IAAI,CAAC,GAAG,UAAU,EAAE,QAAQ,EAAE,GAAG,aAAa,CAAC,CAAC;YAC1D,CAAC;iBAAM,CAAC;gBACN,IAAI,MAAM,EAAE,CAAC;oBACX,OAAO,CAAC,IAAI,CAAC,GAAG,UAAU,CAAC,CAAC;gBAC9B,CAAC;qBAAM,IAAI,UAAU,EAAE,CAAC;oBACtB,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;gBACzB,CAAC;gBAED,IAAI,SAAS,EAAE,CAAC;oBACd,OAAO,CAAC,IAAI,CAAC,GAAG,aAAa,CAAC,CAAC;gBACjC,CAAC;YACH,CAAC;YAED,OAAO,OAAO,CAAC;QACjB,CAAC;QAED,MAAM,WAAW,GAAG,cAAc,CAAC,cAAc,CAAC,CAAC;QAEnD,OAAO,WAAW,CAAC,CAAC,CAAC,CAAC,GAAG,WAAW,EAAE,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IAC7D,CAAC,CAAC;IAEF,MAAM,WAAW,GAAG,UAAU,EAAE,WAAW,EAAE,KAAK,QAAQ,CAAC;IAE3D,2CAA2C;IAC3C,MAAM,UAAU,GAAG,CAAC,gBAAqB,EAAW,EAAE;QACpD,OAAO,UAAU,CAAC,gBAAgB,CAAC;YACjC,CAAC,CAAC,aAAa,CAAC,gBAAgB,CAAC,IAAI,sBAAsB,KAAK,SAAS;YACzE,CAAC,CAAC,IAAI,CAAC;IACX,CAAC,CAAC;IAEF,OAAO,CACL,eACE,SAAS,EAAE,UAAU,CAAC;YACpB,2BAA2B,EAAE,OAAO;YACpC,mCAAmC,EAAE,CAAC,OAAO;SAC9C,CAAC,EACF,KAAK,EAAE;YACL,mBAAmB,EAAE,0BAA0B,EAAE;SAClD,aAED,eAAK,SAAS,EAAC,oCAAoC,aACjD,cACE,SAAS,EAAE,UAAU,CAAC;4BACpB,4BAA4B,EAAE,OAAO;4BACrC,oCAAoC,EAAE,CAAC,OAAO;yBAC/C,CAAC,GACG,EACP,cACE,SAAS,EAAE,UAAU,CAAC;4BACpB,gCAAgC,EAAE,OAAO;4BACzC,wCAAwC,EAAE,CAAC,OAAO;yBACnD,CAAC,EACF,KAAK,EAAE;4BACL,MAAM,EAAE,OAAO,cAAc,CAC3B,gBAAgB,CAAC,CAAC,CAAC,EACnB,0BAA0B,CAC3B,oCAAoC;4BACrC,SAAS,EAAE,MAAM;4BACjB,UAAU,EAAE,GAAG,CAAC,OAAO,IAAI,MAAM,EAAE;4BACnC,WAAW,EAAE,GAAG,OAAO,IAAI,MAAM,EAAE;yBACpC,GACI,IACH,EACL,gBAAgB,EAAE,GAAG,CAAC,CAAC,eAAe,EAAE,KAAK,EAAE,EAAE;gBAChD,6CAA6C;gBAC7C,iBAAiB;gBACjB,oBAAoB;gBACpB,sBAAsB;gBACtB,oEAAoE;gBACpE,MAAM,EACJ,QAAQ,GAAG,UAAU,IAAI,eAAe;oBACtC,CAAC,CAAC,eAAe,CAAC,QAAQ;oBAC1B,CAAC,CAAC,CAAC,EACL,YAAY,GAAG,CAAC,EAChB,iBAAiB,GAAG,EAAE,EACtB,eAAe,GAAG,EAAE,EACpB,mBAAmB,GAAG,EAAE,EACxB,aAAa,GAAG,EAAE,EAClB,eAAe,GAAG,EAAE,EACpB,iBAAiB,GAAG,EAAE,EACtB,qBAAqB,GAAG,EAAE,GAC3B,GAAG,eAAmC,CAAC;gBACxC,OAAO,CACL,MAAC,QAAQ,eACN,CAAC,UAAU,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,CAC9B,0BACE,eAAK,SAAS,EAAC,0CAA0C,aACtD,UAAU,CAAC,gBAAgB,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,IAAI,CAC1C,cACE,SAAS,EAAE,UAAU,CAAC;gDACpB,4BAA4B,EAAE,OAAO;gDACrC,oCAAoC,EAAE,CAAC,OAAO;6CAC/C,CAAC,GACG,CACR,EACD,KAAC,iBAAiB,IAChB,QAAQ,EAAE,QAAQ,EAElB,OAAO,EACL,yBAAyB,CACvB,WAAW,EACX,eAAe,EACf,gBAAgB,CACA,EAEpB,cAAc,EAAE,CAAC,OAAO,EACxB,OAAO,EAAE,GAAG,iBAAiB,aAAa,QAAQ,GAAG,CAAC,EAAE,EACxD,OAAO,EAAE,GAAG,EAAE,CACZ,QAAQ,IAAI,CAAC,IAAI,UAAU,KAAK,YAAY;gDAC1C,CAAC,CAAC,0BAA0B,CACxB,GAAG,iBAAiB,aAAa,EACjC,eAAmC,CACpC;gDACH,CAAC,CAAC,IAAI,EAEV,UAAU,EAAE,UAAU,EACtB,QAAQ,EAAE,QAAQ,IAnBb,IAAI,EAAE,CAqBX,IACE,EACN,eACE,SAAS,EAAE,UAAU,CAAC;wCACpB,+BAA+B,EAAE,OAAO;wCACxC,uCAAuC,EAAE,CAAC,OAAO;qCAClD,CAAC,aAED,WAAW,IAAI,CACd,8BACE,cACE,EAAE,EAAE,gCAAgC,iBAAiB,IAAI,QAAQ,EAAE,EACnE,SAAS,EAAC,wBAAwB,EAClC,OAAO,EAAE,GAAG,EAAE;wDACZ,IAAI,QAAQ;4DAAE,OAAO;wDACrB,mBAAmB,CACjB,gCAAgC,iBAAiB,IAAI,QAAQ,EAAE,EAC/D;4DACE,eAAe,EAAE,eAAe;4DAChC,mBAAmB,EAAE,mBAAmB;4DACxC,aAAa,EAAE,aAAa;4DAC5B,eAAe,EAAE,eAAe;4DAChC,qBAAqB,EAAE,qBAAqB;4DAC5C,iBAAiB,EAAE,iBAAiB;yDACrC,EACD,IAAI,EACJ,YAAY,EACZ,iBAAiB,CAClB,CAAC;oDACJ,CAAC,YAED,MAAC,OAAO,IACN,SAAS,EAAC,QAAQ,EAClB,KAAK,EACH,4BACE,KAAC,cAAc,IACb,aAAa,EAAE;oEACb,iBAAiB,EACf,kBAAkB,CAAC,eAAe,CAAC,IAAI,EAAE;oEAC3C,qBAAqB,EACnB,iBAAiB,CAAC,mBAAmB,CAAC;wEACtC,EAAE;oEACJ,eAAe,EACb,cAAc,CAAC,aAAa,CAAC,IAAI,EAAE;iEACtC,GACD,GACD,EAEL,KAAK,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,aAEhD,KAAC,IAAI,IACH,IAAI,EAAC,eAAe,EACpB,SAAS,EAAC,oBAAoB,EAC9B,WAAW,SACX,EACF,KAAC,UAAU,IACT,SAAS,EAAC,oBAAoB,EAC9B,KAAK,EAAC,mCAAmC,8BAG9B,IACL,GACN,EAEL,CAAC,QAAQ,IAAI,CACZ,4BACE,KAAC,OAAO,IACN,SAAS,EAAC,QAAQ,EAClB,KAAK,EACH,YAAY,IAAI,WAAW;4DACzB,CAAC,CAAC,WAAW,WAAW,oBAAoB;4DAC5C,CAAC,CAAC,EAAE,YAGR,eACE,SAAS,EAAC,8BAA8B,EACxC,OAAO,EACL,YAAY,IAAI,WAAW;gEACzB,CAAC,CAAC,SAAS;gEACX,CAAC,CAAC,GAAG,EAAE,CAAC,eAAe,CAAC,iBAAiB,CAAC,aAG9C,KAAC,IAAI,IACH,IAAI,EAAC,WAAW,EAChB,SAAS,EAAC,wBAAwB,EAClC,KAAK,EAAC,mCAAmC,EACzC,WAAW,QACX,QAAQ,EACN,YAAY,IAAI,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,GAE5C,EACF,KAAC,UAAU,IACT,SAAS,EAAC,wBAAwB,EAClC,KAAK,EAAC,mCAAmC,EACzC,KAAK,EAAE;wEACL,OAAO,EACL,YAAY,IAAI,WAAW,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;qEACxC,oBAGU,IACT,GACE,GACT,CACJ,IACA,CACJ,EACA,CAAC,QAAQ,IAAI,CACZ,KAAC,OAAO,IAAC,KAAK,EAAC,QAAQ,YACrB,KAAC,IAAI,IACH,IAAI,EAAC,QAAQ,EACb,SAAS,EAAC,2BAA2B,EACrC,OAAO,EAAE,GAAG,EAAE,CACZ,eAAe,CAAC,iBAAiB,EAAE,QAAQ,CAAC,EAE9C,KAAK,EAAC,0CAA0C,EAChD,WAAW,SACX,GACM,CACX,IACG,IACF,CACP,CAAC,CAAC,CAAC,CACF,CAAC,QAAQ,IAAI,CACX,cAAK,SAAS,EAAC,qCAAqC,YAClD,KAAC,MAAM,IACL,EAAE,EAAE,4BAA4B,iBAAiB,EAAE,EACnD,OAAO,EAAC,UAAU,EAClB,KAAK,EAAE,gBAAgB,EACvB,QAAQ,EAAC,WAAW,EACpB,YAAY,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,EACzC,OAAO,EAAE,GAAG,EAAE;oCACZ,IAAI,QAAQ;wCAAE,OAAO;oCACrB,YAAY,CACV,4BAA4B,iBAAiB,EAAE,CAChD,CAAC;gCACJ,CAAC,GACD,GACE,CACP,CACF,EACA,eAAe,CAAC,KAAK,CAAC,IAAI,CACzB,cACE,SAAS,EAAC,mCAAmC,EAC7C,KAAK,EAAE;gCACL,SAAS,EAAE,OAAO,cAAc,CAC9B,eAAe,EACf,gBAAgB,CAAC,KAAK,GAAG,CAAC,CAAC,CAC5B,oCAAoC;6BACtC,YAED,cACE,SAAS,EAAE,UAAU,CAAC;oCACpB,4BAA4B,EAAE,OAAO;oCACrC,oCAAoC,EAAE,CAAC,OAAO;iCAC/C,CAAC,GACG,GACH,CACP,KAjMY,IAAI,EAAE,CAkMV,CACZ,CAAC;YACJ,CAAC,CAAC,EACD,aAAa,EAAE,IAAI,CAClB,cACE,SAAS,EAAE,UAAU,CAAC;oBACpB,gCAAgC,EAAE,OAAO;oBACzC,wCAAwC,EAAE,CAAC,OAAO;iBACnD,CAAC,EACF,KAAK,EAAE;oBACL,MAAM,EAAE,OAAO,cAAc,CAC3B,gBAAgB,CAAC,kBAAkB,GAAG,CAAC,CAAC,EACxC,sBAAsB,CACvB,oCAAoC;oBACrC,YAAY,EAAE,MAAM;oBACpB,UAAU,EAAE,GAAG,OAAO,IAAI,MAAM,EAAE;oBAClC,WAAW,EAAE,GAAG,CAAC,OAAO,IAAI,MAAM,EAAE;iBACrC,GACI,CACR,IACG,CACP,CAAC;AACJ,CAAC,CAAC;AAEF,eAAe,QAAQ,CAAC"}
@@ -40,6 +40,7 @@ export interface MachineInfo {
40
40
  osVersion: string;
41
41
  hostName: string;
42
42
  iconName: string;
43
+ isBooked?: boolean;
43
44
  }
44
45
  export interface DeviceInfo {
45
46
  name: string;
@@ -1,7 +1,8 @@
1
1
  import { useEffect } from 'react';
2
- import { delegate, hideAll } from 'tippy.js';
2
+ import tippy, { hideAll } from 'tippy.js';
3
3
  import 'tippy.js/dist/tippy.css';
4
4
  import './TooltipService.scss';
5
+ const TOOLTIP_TARGET = '[data-tooltip], [data-tooltip-id], [data-tooltip-overflow]';
5
6
  const VALID_PLACEMENTS = new Set([
6
7
  'auto',
7
8
  'auto-start',
@@ -19,6 +20,30 @@ const VALID_PLACEMENTS = new Set([
19
20
  'left-start',
20
21
  'left-end',
21
22
  ]);
23
+ const TOOLTIP_PROPS = {
24
+ arrow: false,
25
+ theme: 'ff-global-tooltip',
26
+ appendTo: () => document.body,
27
+ allowHTML: true,
28
+ popperOptions: {
29
+ modifiers: [
30
+ {
31
+ name: 'preventOverflow',
32
+ options: {
33
+ altAxis: true,
34
+ padding: 8,
35
+ },
36
+ },
37
+ {
38
+ name: 'flip',
39
+ options: {
40
+ padding: 8,
41
+ fallbackPlacements: ['top', 'right', 'left'],
42
+ },
43
+ },
44
+ ],
45
+ },
46
+ };
22
47
  const getTooltipContent = (reference) => {
23
48
  const contentNode = document.createElement('div');
24
49
  // Accept template content via id
@@ -45,7 +70,12 @@ const getTooltipContent = (reference) => {
45
70
  return contentNode;
46
71
  }
47
72
  }
48
- const rawText = reference.getAttribute('data-tooltip') || '';
73
+ // An overflow-only element without its own text shows the text it cuts off
74
+ const rawText = reference.getAttribute('data-tooltip') ||
75
+ (reference.hasAttribute('data-tooltip-overflow')
76
+ ? reference.textContent
77
+ : '') ||
78
+ '';
49
79
  if (!rawText.trim())
50
80
  return '';
51
81
  const text = rawText
@@ -79,118 +109,185 @@ const getTooltipContent = (reference) => {
79
109
  }
80
110
  return contentNode;
81
111
  };
82
- const TooltipService = () => {
83
- useEffect(() => {
84
- const hideTooltipsOnScroll = (event) => {
85
- const target = event.target;
86
- if (target instanceof Element && target.closest('[data-tippy-root]')) {
87
- return;
112
+ // One-line ellipsis cut-off, read only when the element is hovered
113
+ const isClipped = (element) => element.scrollWidth > element.clientWidth + 0.5;
114
+ // The innermost element with something to show. A `data-tooltip-overflow`
115
+ // element counts only while its text is cut off; otherwise the next one out is tried.
116
+ const findTooltipTarget = (start) => {
117
+ let element = start.closest(TOOLTIP_TARGET);
118
+ while (element) {
119
+ const overflowOnly = element.hasAttribute('data-tooltip-overflow');
120
+ if ((!overflowOnly || isClipped(element)) &&
121
+ getTooltipContent(element) !== '') {
122
+ return element;
123
+ }
124
+ element = element.parentElement?.closest(TOOLTIP_TARGET) ?? null;
125
+ }
126
+ return null;
127
+ };
128
+ // Tippy's own ARIA, except where it would be wrong: a hoverable tooltip is not
129
+ // interactive, so it still describes its element and sets no aria-expanded;
130
+ // and text shown only because an ellipsis cuts it off repeats what the element
131
+ // already says, so it is not added as a description
132
+ const getAria = (reference) => {
133
+ if (reference.hasAttribute('data-tooltip-interactive'))
134
+ return {};
135
+ const repeatsOwnText = reference.hasAttribute('data-tooltip-overflow') &&
136
+ !reference.hasAttribute('data-tooltip') &&
137
+ !reference.hasAttribute('data-tooltip-id');
138
+ if (!repeatsOwnText && !reference.hasAttribute('data-tooltip-hoverable')) {
139
+ return {};
140
+ }
141
+ return {
142
+ aria: { expanded: false, content: repeatsOwnText ? null : 'describedby' },
143
+ };
144
+ };
145
+ const getPlacement = (reference) => {
146
+ // placement attribute for tooltip
147
+ const normalizedPlacement = reference
148
+ .getAttribute('data-tooltip-placement')
149
+ ?.trim()
150
+ .toLowerCase();
151
+ return normalizedPlacement && VALID_PLACEMENTS.has(normalizedPlacement)
152
+ ? normalizedPlacement
153
+ : 'bottom';
154
+ };
155
+ /**
156
+ * Shows at most one tooltip at a time. The instance is created when its element
157
+ * is hovered or focused and destroyed when it hides, so nothing is kept for
158
+ * elements that were hovered and later removed (e.g. virtualized rows).
159
+ */
160
+ const startTooltips = () => {
161
+ let active = null;
162
+ // Closed with Escape: stays hidden until the pointer or focus leaves it
163
+ let dismissed = null;
164
+ // While a tooltip shows: refresh it when its attributes change, and drop it
165
+ // when its element leaves the page
166
+ const activeObserver = new MutationObserver((records) => {
167
+ if (!active)
168
+ return;
169
+ if (!active.reference.isConnected) {
170
+ destroyActive();
171
+ return;
172
+ }
173
+ if (records.some((record) => record.type === 'attributes')) {
174
+ const content = getTooltipContent(active.reference);
175
+ if (content === '') {
176
+ destroyActive();
88
177
  }
89
- hideAll({ duration: 0 });
90
- };
91
- window.addEventListener('scroll', hideTooltipsOnScroll, true);
92
- const instance = delegate(document.body, {
93
- target: '[data-tooltip], [data-tooltip-id]',
94
- arrow: false,
95
- placement: 'bottom',
96
- theme: 'ff-global-tooltip',
97
- appendTo: document.body,
98
- allowHTML: true,
99
- popperOptions: {
100
- modifiers: [
101
- {
102
- name: 'preventOverflow',
103
- options: {
104
- altAxis: true,
105
- padding: 8,
106
- },
107
- },
108
- {
109
- name: 'flip',
110
- options: {
111
- padding: 8,
112
- fallbackPlacements: ['top', 'right', 'left'],
113
- },
114
- },
115
- ],
116
- },
117
- content(reference) {
118
- return getTooltipContent(reference);
119
- },
120
- onShow(tippyInstance) {
121
- const { reference } = tippyInstance;
122
- if (!document.body.contains(reference)) {
123
- return false;
124
- }
125
- const latestContent = getTooltipContent(reference);
126
- // If no tooltip content is currently available, prevent showing.
127
- if (latestContent === '') {
178
+ else {
179
+ active.setContent(content);
180
+ }
181
+ }
182
+ });
183
+ const destroyActive = () => {
184
+ activeObserver.disconnect();
185
+ active?.destroy();
186
+ active = null;
187
+ };
188
+ const show = (reference) => {
189
+ destroyActive();
190
+ // Another copy of this service (e.g. from a second bundle) already handles it
191
+ if (reference._tippy)
192
+ return;
193
+ active = tippy(reference, {
194
+ ...TOOLTIP_PROPS,
195
+ content: getTooltipContent(reference),
196
+ placement: getPlacement(reference),
197
+ // This is specific tooltip attributefor interactive. A hoverable
198
+ // tooltip uses it only so the pointer can move onto it (WCAG 1.4.13).
199
+ interactive: reference.hasAttribute('data-tooltip-interactive') ||
200
+ reference.hasAttribute('data-tooltip-hoverable'),
201
+ ...getAria(reference),
202
+ showOnCreate: true,
203
+ onShow(instance) {
204
+ if (!instance.reference.isConnected)
128
205
  return false;
129
- }
130
- // This is specific tooltip attributefor interactive
131
- const isInteractive = tippyInstance.reference.hasAttribute('data-tooltip-interactive');
132
- // placement attribute for tooltip
133
- const rawPlacement = tippyInstance.reference.getAttribute('data-tooltip-placement');
134
- const normalizedPlacement = rawPlacement?.trim().toLowerCase();
135
- const placement = normalizedPlacement && VALID_PLACEMENTS.has(normalizedPlacement)
136
- ? normalizedPlacement
137
- : 'bottom';
138
- tippyInstance.setProps({
139
- interactive: isInteractive,
140
- placement,
141
- content: latestContent,
142
- });
143
206
  },
144
- onCreate(tippyInstance) {
145
- const attrObserver = new MutationObserver(() => {
146
- if (tippyInstance.state.isVisible) {
147
- const newContent = getTooltipContent(tippyInstance.reference);
148
- if (newContent === '') {
149
- tippyInstance.hide();
150
- }
151
- else {
152
- tippyInstance.setContent(newContent);
153
- }
154
- }
155
- });
156
- attrObserver.observe(tippyInstance.reference, {
157
- attributes: true,
158
- attributeFilter: ['data-tooltip', 'data-tooltip-id'],
159
- });
160
- tippyInstance._attrObserver = attrObserver;
161
- const parentEl = tippyInstance.reference.parentElement;
162
- if (parentEl) {
163
- const domObserver = new MutationObserver(() => {
164
- if (!document.body.contains(tippyInstance.reference)) {
165
- tippyInstance.hide();
166
- tippyInstance.destroy();
167
- }
168
- });
169
- domObserver.observe(parentEl, { childList: true });
170
- tippyInstance._domObserver = domObserver;
171
- }
172
- },
173
- onDestroy(tippyInstance) {
174
- tippyInstance._attrObserver?.disconnect();
175
- tippyInstance._domObserver?.disconnect();
176
- },
177
- onMount(tippyInstance) {
178
- const isExplicitlyInteractive = tippyInstance.reference.hasAttribute('data-tooltip-interactive');
207
+ onMount(instance) {
208
+ const isExplicitlyInteractive = instance.reference.hasAttribute('data-tooltip-interactive');
179
209
  if (!isExplicitlyInteractive) {
180
- const tippyBox = tippyInstance.popper.querySelector('.tippy-box');
210
+ const tippyBox = instance.popper.querySelector('.tippy-box');
181
211
  if (tippyBox && tippyBox.scrollHeight > tippyBox.clientHeight) {
182
- tippyInstance.setProps({ interactive: true });
212
+ instance.setProps({ interactive: true });
183
213
  }
184
214
  }
185
215
  },
216
+ onHidden(instance) {
217
+ if (instance === active) {
218
+ destroyActive();
219
+ }
220
+ else {
221
+ instance.destroy();
222
+ }
223
+ },
224
+ });
225
+ activeObserver.observe(reference, {
226
+ attributes: true,
227
+ attributeFilter: ['data-tooltip', 'data-tooltip-id'],
186
228
  });
229
+ activeObserver.observe(document.body, { childList: true, subtree: true });
230
+ };
231
+ const handlePointerOrFocus = (event) => {
232
+ const { target } = event;
233
+ if (!(target instanceof Element))
234
+ return;
235
+ // Moving into an interactive tooltip keeps it open
236
+ if (active?.popper.contains(target))
237
+ return;
238
+ if (dismissed && !dismissed.contains(target))
239
+ dismissed = null;
240
+ // Nothing new under the pointer: the shown tooltip hides itself on mouseleave
241
+ const closest = target.closest(TOOLTIP_TARGET);
242
+ if (!closest || closest === active?.reference)
243
+ return;
244
+ const reference = findTooltipTarget(closest);
245
+ if (reference &&
246
+ reference !== active?.reference &&
247
+ reference !== dismissed) {
248
+ show(reference);
249
+ }
250
+ };
251
+ // Escape hides the tooltip without moving the pointer or focus (WCAG 1.4.13)
252
+ const hideOnEscape = (event) => {
253
+ if (event.key !== 'Escape' || !active)
254
+ return;
255
+ dismissed = active.reference;
256
+ destroyActive();
257
+ };
258
+ const hideTooltipsOnScroll = (event) => {
259
+ const target = event.target;
260
+ if (target instanceof Element && target.closest('[data-tippy-root]')) {
261
+ return;
262
+ }
263
+ hideAll({ duration: 0 });
264
+ destroyActive();
265
+ };
266
+ document.addEventListener('mouseover', handlePointerOrFocus);
267
+ document.addEventListener('focusin', handlePointerOrFocus);
268
+ document.addEventListener('keydown', hideOnEscape);
269
+ window.addEventListener('scroll', hideTooltipsOnScroll, true);
270
+ return () => {
271
+ document.removeEventListener('mouseover', handlePointerOrFocus);
272
+ document.removeEventListener('focusin', handlePointerOrFocus);
273
+ document.removeEventListener('keydown', hideOnEscape);
274
+ window.removeEventListener('scroll', hideTooltipsOnScroll, true);
275
+ destroyActive();
276
+ };
277
+ };
278
+ // Every mounted TooltipService shares one set of listeners
279
+ let mountedServices = 0;
280
+ let stopTooltips = null;
281
+ const TooltipService = () => {
282
+ useEffect(() => {
283
+ mountedServices += 1;
284
+ if (mountedServices === 1)
285
+ stopTooltips = startTooltips();
187
286
  return () => {
188
- window.removeEventListener('scroll', hideTooltipsOnScroll, true);
189
- if (Array.isArray(instance)) {
190
- instance.forEach((i) => i.destroy());
191
- }
192
- else {
193
- instance.destroy();
287
+ mountedServices -= 1;
288
+ if (mountedServices === 0) {
289
+ stopTooltips?.();
290
+ stopTooltips = null;
194
291
  }
195
292
  };
196
293
  }, []);
@@ -1 +1 @@
1
- {"version":3,"file":"TooltipService.js","sourceRoot":"","sources":["../../../src/components/TooltipService/TooltipService.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAElC,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,UAAU,CAAC;AAE7C,OAAO,yBAAyB,CAAC;AACjC,OAAO,uBAAuB,CAAC;AAE/B,MAAM,gBAAgB,GAAG,IAAI,GAAG,CAAqB;IACnD,MAAM;IACN,YAAY;IACZ,UAAU;IACV,KAAK;IACL,WAAW;IACX,SAAS;IACT,QAAQ;IACR,cAAc;IACd,YAAY;IACZ,OAAO;IACP,aAAa;IACb,WAAW;IACX,MAAM;IACN,YAAY;IACZ,UAAU;CACX,CAAC,CAAC;AAEH,MAAM,iBAAiB,GAAG,CAAC,SAAkB,EAAoB,EAAE;IACjE,MAAM,WAAW,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;IAElD,iCAAiC;IACjC,MAAM,UAAU,GAAG,SAAS,CAAC,YAAY,CAAC,iBAAiB,CAAC,CAAC;IAC7D,IAAI,UAAU,EAAE,CAAC;QACf,MAAM,UAAU,GAAG,QAAQ,CAAC,cAAc,CAAC,UAAU,CAAC,CAAC;QACvD,IAAI,UAAU,EAAE,CAAC;YACf,uBAAuB;YACvB,IAAI,WAAW,GAAG,UAAU,CAAC,SAAS;iBACnC,OAAO,CAAC,kBAAkB,EAAE,EAAE,CAAC;iBAC/B,IAAI,EAAE,CAAC;YAEV,2GAA2G;YAC3G,IACE,WAAW,KAAK,IAAI;gBACpB,WAAW,KAAK,IAAI;gBACpB,WAAW,KAAK,cAAc,EAC9B,CAAC;gBACD,WAAW,GAAG,EAAE,CAAC;YACnB,CAAC;YAED,0GAA0G;YAC1G,IACE,WAAW,KAAK,EAAE;gBAClB,oCAAoC,CAAC,IAAI,CAAC,WAAW,CAAC,EACtD,CAAC;gBACD,OAAO,EAAE,CAAC;YACZ,CAAC;YAED,WAAW,CAAC,SAAS,GAAG,UAAU,CAAC,SAAS,CAAC;YAC7C,OAAO,WAAW,CAAC;QACrB,CAAC;IACH,CAAC;IAED,MAAM,OAAO,GAAG,SAAS,CAAC,YAAY,CAAC,cAAc,CAAC,IAAI,EAAE,CAAC;IAC7D,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE;QAAE,OAAO,EAAE,CAAC;IAE/B,MAAM,IAAI,GAAG,OAAO;SACjB,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC;SACpB,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC;SACnB,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC;SACpB,IAAI,EAAE,CAAC;IAEV,IAAI,CAAC,IAAI;QAAE,OAAO,EAAE,CAAC;IAErB,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;IAC5E,MAAM,OAAO,GAAG,kDAAkD,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAE9E,MAAM,SAAS,GAAG,SAAS,CAAC,YAAY,CAAC,wBAAwB,CAAC,CAAC;IACnE,gGAAgG;IAChG,IAAI,SAAS,EAAE,CAAC;QACd,IAAI,UAAU,EAAE,CAAC;YACf,WAAW,CAAC,SAAS,GAAG,IAAI,CAAC;QAC/B,CAAC;aAAM,CAAC;YACN,WAAW,CAAC,KAAK,CAAC,SAAS,GAAG,YAAY,CAAC;YAE3C,IAAI,OAAO,EAAE,CAAC;gBACZ,WAAW,CAAC,SAAS,GAAG,IAAI,CAAC;YAC/B,CAAC;iBAAM,CAAC;gBACN,WAAW,CAAC,WAAW,GAAG,IAAI,CAAC;YACjC,CAAC;QACH,CAAC;IACH,CAAC;SAAM,CAAC;QACN,WAAW,CAAC,KAAK,CAAC,SAAS,GAAG,YAAY,CAAC;QAC3C,WAAW,CAAC,WAAW,GAAG,IAAI,CAAC;IACjC,CAAC;IACD,OAAO,WAAW,CAAC;AACrB,CAAC,CAAC;AAEF,MAAM,cAAc,GAAG,GAAG,EAAE;IAC1B,SAAS,CAAC,GAAG,EAAE;QACb,MAAM,oBAAoB,GAAG,CAAC,KAAY,EAAQ,EAAE;YAClD,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC;YAC5B,IAAI,MAAM,YAAY,OAAO,IAAI,MAAM,CAAC,OAAO,CAAC,mBAAmB,CAAC,EAAE,CAAC;gBACrE,OAAO;YACT,CAAC;YACD,OAAO,CAAC,EAAE,QAAQ,EAAE,CAAC,EAAE,CAAC,CAAC;QAC3B,CAAC,CAAC;QAEF,MAAM,CAAC,gBAAgB,CAAC,QAAQ,EAAE,oBAAoB,EAAE,IAAI,CAAC,CAAC;QAE9D,MAAM,QAAQ,GAAwC,QAAQ,CAC5D,QAAQ,CAAC,IAAI,EACb;YACE,MAAM,EAAE,mCAAmC;YAC3C,KAAK,EAAE,KAAK;YACZ,SAAS,EAAE,QAAQ;YACnB,KAAK,EAAE,mBAAmB;YAC1B,QAAQ,EAAE,QAAQ,CAAC,IAAI;YACvB,SAAS,EAAE,IAAI;YACf,aAAa,EAAE;gBACb,SAAS,EAAE;oBACT;wBACE,IAAI,EAAE,iBAAiB;wBACvB,OAAO,EAAE;4BACP,OAAO,EAAE,IAAI;4BACb,OAAO,EAAE,CAAC;yBACX;qBACF;oBACD;wBACE,IAAI,EAAE,MAAM;wBACZ,OAAO,EAAE;4BACP,OAAO,EAAE,CAAC;4BACV,kBAAkB,EAAE,CAAC,KAAK,EAAE,OAAO,EAAE,MAAM,CAAC;yBAC7C;qBACF;iBACF;aACF;YACD,OAAO,CAAC,SAAS;gBACf,OAAO,iBAAiB,CAAC,SAAS,CAAC,CAAC;YACtC,CAAC;YACD,MAAM,CAAC,aAAa;gBAClB,MAAM,EAAE,SAAS,EAAE,GAAG,aAAa,CAAC;gBAEpC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC;oBACvC,OAAO,KAAK,CAAC;gBACf,CAAC;gBAED,MAAM,aAAa,GAAG,iBAAiB,CAAC,SAAS,CAAC,CAAC;gBAEnD,iEAAiE;gBACjE,IAAI,aAAa,KAAK,EAAE,EAAE,CAAC;oBACzB,OAAO,KAAK,CAAC;gBACf,CAAC;gBAED,qDAAqD;gBACrD,MAAM,aAAa,GAAG,aAAa,CAAC,SAAS,CAAC,YAAY,CACxD,0BAA0B,CAC3B,CAAC;gBAEF,mCAAmC;gBACnC,MAAM,YAAY,GAAG,aAAa,CAAC,SAAS,CAAC,YAAY,CACvD,wBAAwB,CACzB,CAAC;gBACF,MAAM,mBAAmB,GAAG,YAAY,EAAE,IAAI,EAAE,CAAC,WAAW,EAEpD,CAAC;gBACT,MAAM,SAAS,GACb,mBAAmB,IAAI,gBAAgB,CAAC,GAAG,CAAC,mBAAmB,CAAC;oBAC9D,CAAC,CAAC,mBAAmB;oBACrB,CAAC,CAAC,QAAQ,CAAC;gBAEf,aAAa,CAAC,QAAQ,CAAC;oBACrB,WAAW,EAAE,aAAa;oBAC1B,SAAS;oBACT,OAAO,EAAE,aAAa;iBACvB,CAAC,CAAC;YACL,CAAC;YACD,QAAQ,CAAC,aAAa;gBACpB,MAAM,YAAY,GAAG,IAAI,gBAAgB,CAAC,GAAG,EAAE;oBAC7C,IAAI,aAAa,CAAC,KAAK,CAAC,SAAS,EAAE,CAAC;wBAClC,MAAM,UAAU,GAAG,iBAAiB,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC;wBAC9D,IAAI,UAAU,KAAK,EAAE,EAAE,CAAC;4BACtB,aAAa,CAAC,IAAI,EAAE,CAAC;wBACvB,CAAC;6BAAM,CAAC;4BACN,aAAa,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;wBACvC,CAAC;oBACH,CAAC;gBACH,CAAC,CAAC,CAAC;gBACH,YAAY,CAAC,OAAO,CAAC,aAAa,CAAC,SAAS,EAAE;oBAC5C,UAAU,EAAE,IAAI;oBAChB,eAAe,EAAE,CAAC,cAAc,EAAE,iBAAiB,CAAC;iBACrD,CAAC,CAAC;gBACF,aAAqB,CAAC,aAAa,GAAG,YAAY,CAAC;gBAEpD,MAAM,QAAQ,GAAG,aAAa,CAAC,SAAS,CAAC,aAAa,CAAC;gBACvD,IAAI,QAAQ,EAAE,CAAC;oBACb,MAAM,WAAW,GAAG,IAAI,gBAAgB,CAAC,GAAG,EAAE;wBAC5C,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,SAAS,CAAC,EAAE,CAAC;4BACrD,aAAa,CAAC,IAAI,EAAE,CAAC;4BACrB,aAAa,CAAC,OAAO,EAAE,CAAC;wBAC1B,CAAC;oBACH,CAAC,CAAC,CAAC;oBACH,WAAW,CAAC,OAAO,CAAC,QAAQ,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;oBAClD,aAAqB,CAAC,YAAY,GAAG,WAAW,CAAC;gBACpD,CAAC;YACH,CAAC;YACD,SAAS,CAAC,aAAa;gBACpB,aAAqB,CAAC,aAAa,EAAE,UAAU,EAAE,CAAC;gBAClD,aAAqB,CAAC,YAAY,EAAE,UAAU,EAAE,CAAC;YACpD,CAAC;YACD,OAAO,CAAC,aAAa;gBACnB,MAAM,uBAAuB,GAAG,aAAa,CAAC,SAAS,CAAC,YAAY,CAClE,0BAA0B,CAC3B,CAAC;gBAEF,IAAI,CAAC,uBAAuB,EAAE,CAAC;oBAC7B,MAAM,QAAQ,GAAG,aAAa,CAAC,MAAM,CAAC,aAAa,CAAC,YAAY,CAAC,CAAC;oBAClE,IAAI,QAAQ,IAAI,QAAQ,CAAC,YAAY,GAAG,QAAQ,CAAC,YAAY,EAAE,CAAC;wBAC9D,aAAa,CAAC,QAAQ,CAAC,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC,CAAC;oBAChD,CAAC;gBACH,CAAC;YACH,CAAC;SACF,CACF,CAAC;QAEF,OAAO,GAAG,EAAE;YACV,MAAM,CAAC,mBAAmB,CAAC,QAAQ,EAAE,oBAAoB,EAAE,IAAI,CAAC,CAAC;YACjE,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC;gBAC5B,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;YACvC,CAAC;iBAAM,CAAC;gBACN,QAAQ,CAAC,OAAO,EAAE,CAAC;YACrB,CAAC;QACH,CAAC,CAAC;IACJ,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,OAAO,IAAI,CAAC;AACd,CAAC,CAAC;AAEF,eAAe,cAAc,CAAC"}
1
+ {"version":3,"file":"TooltipService.js","sourceRoot":"","sources":["../../../src/components/TooltipService/TooltipService.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAElC,OAAO,KAAK,EAAE,EAAE,OAAO,EAAE,MAAM,UAAU,CAAC;AAE1C,OAAO,yBAAyB,CAAC;AACjC,OAAO,uBAAuB,CAAC;AAE/B,MAAM,cAAc,GAClB,4DAA4D,CAAC;AAE/D,MAAM,gBAAgB,GAAG,IAAI,GAAG,CAAqB;IACnD,MAAM;IACN,YAAY;IACZ,UAAU;IACV,KAAK;IACL,WAAW;IACX,SAAS;IACT,QAAQ;IACR,cAAc;IACd,YAAY;IACZ,OAAO;IACP,aAAa;IACb,WAAW;IACX,MAAM;IACN,YAAY;IACZ,UAAU;CACX,CAAC,CAAC;AAEH,MAAM,aAAa,GAAmB;IACpC,KAAK,EAAE,KAAK;IACZ,KAAK,EAAE,mBAAmB;IAC1B,QAAQ,EAAE,GAAG,EAAE,CAAC,QAAQ,CAAC,IAAI;IAC7B,SAAS,EAAE,IAAI;IACf,aAAa,EAAE;QACb,SAAS,EAAE;YACT;gBACE,IAAI,EAAE,iBAAiB;gBACvB,OAAO,EAAE;oBACP,OAAO,EAAE,IAAI;oBACb,OAAO,EAAE,CAAC;iBACX;aACF;YACD;gBACE,IAAI,EAAE,MAAM;gBACZ,OAAO,EAAE;oBACP,OAAO,EAAE,CAAC;oBACV,kBAAkB,EAAE,CAAC,KAAK,EAAE,OAAO,EAAE,MAAM,CAAC;iBAC7C;aACF;SACF;KACF;CACF,CAAC;AAEF,MAAM,iBAAiB,GAAG,CAAC,SAAkB,EAAoB,EAAE;IACjE,MAAM,WAAW,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;IAElD,iCAAiC;IACjC,MAAM,UAAU,GAAG,SAAS,CAAC,YAAY,CAAC,iBAAiB,CAAC,CAAC;IAC7D,IAAI,UAAU,EAAE,CAAC;QACf,MAAM,UAAU,GAAG,QAAQ,CAAC,cAAc,CAAC,UAAU,CAAC,CAAC;QACvD,IAAI,UAAU,EAAE,CAAC;YACf,uBAAuB;YACvB,IAAI,WAAW,GAAG,UAAU,CAAC,SAAS;iBACnC,OAAO,CAAC,kBAAkB,EAAE,EAAE,CAAC;iBAC/B,IAAI,EAAE,CAAC;YAEV,2GAA2G;YAC3G,IACE,WAAW,KAAK,IAAI;gBACpB,WAAW,KAAK,IAAI;gBACpB,WAAW,KAAK,cAAc,EAC9B,CAAC;gBACD,WAAW,GAAG,EAAE,CAAC;YACnB,CAAC;YAED,0GAA0G;YAC1G,IACE,WAAW,KAAK,EAAE;gBAClB,oCAAoC,CAAC,IAAI,CAAC,WAAW,CAAC,EACtD,CAAC;gBACD,OAAO,EAAE,CAAC;YACZ,CAAC;YAED,WAAW,CAAC,SAAS,GAAG,UAAU,CAAC,SAAS,CAAC;YAC7C,OAAO,WAAW,CAAC;QACrB,CAAC;IACH,CAAC;IAED,2EAA2E;IAC3E,MAAM,OAAO,GACX,SAAS,CAAC,YAAY,CAAC,cAAc,CAAC;QACtC,CAAC,SAAS,CAAC,YAAY,CAAC,uBAAuB,CAAC;YAC9C,CAAC,CAAC,SAAS,CAAC,WAAW;YACvB,CAAC,CAAC,EAAE,CAAC;QACP,EAAE,CAAC;IACL,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE;QAAE,OAAO,EAAE,CAAC;IAE/B,MAAM,IAAI,GAAG,OAAO;SACjB,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC;SACpB,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC;SACnB,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC;SACpB,IAAI,EAAE,CAAC;IAEV,IAAI,CAAC,IAAI;QAAE,OAAO,EAAE,CAAC;IAErB,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;IAC5E,MAAM,OAAO,GAAG,kDAAkD,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAE9E,MAAM,SAAS,GAAG,SAAS,CAAC,YAAY,CAAC,wBAAwB,CAAC,CAAC;IACnE,gGAAgG;IAChG,IAAI,SAAS,EAAE,CAAC;QACd,IAAI,UAAU,EAAE,CAAC;YACf,WAAW,CAAC,SAAS,GAAG,IAAI,CAAC;QAC/B,CAAC;aAAM,CAAC;YACN,WAAW,CAAC,KAAK,CAAC,SAAS,GAAG,YAAY,CAAC;YAE3C,IAAI,OAAO,EAAE,CAAC;gBACZ,WAAW,CAAC,SAAS,GAAG,IAAI,CAAC;YAC/B,CAAC;iBAAM,CAAC;gBACN,WAAW,CAAC,WAAW,GAAG,IAAI,CAAC;YACjC,CAAC;QACH,CAAC;IACH,CAAC;SAAM,CAAC;QACN,WAAW,CAAC,KAAK,CAAC,SAAS,GAAG,YAAY,CAAC;QAC3C,WAAW,CAAC,WAAW,GAAG,IAAI,CAAC;IACjC,CAAC;IACD,OAAO,WAAW,CAAC;AACrB,CAAC,CAAC;AAEF,mEAAmE;AACnE,MAAM,SAAS,GAAG,CAAC,OAAgB,EAAW,EAAE,CAC9C,OAAO,CAAC,WAAW,GAAG,OAAO,CAAC,WAAW,GAAG,GAAG,CAAC;AAElD,0EAA0E;AAC1E,sFAAsF;AACtF,MAAM,iBAAiB,GAAG,CAAC,KAAc,EAAkB,EAAE;IAC3D,IAAI,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;IAC5C,OAAO,OAAO,EAAE,CAAC;QACf,MAAM,YAAY,GAAG,OAAO,CAAC,YAAY,CAAC,uBAAuB,CAAC,CAAC;QACnE,IACE,CAAC,CAAC,YAAY,IAAI,SAAS,CAAC,OAAO,CAAC,CAAC;YACrC,iBAAiB,CAAC,OAAO,CAAC,KAAK,EAAE,EACjC,CAAC;YACD,OAAO,OAAO,CAAC;QACjB,CAAC;QACD,OAAO,GAAG,OAAO,CAAC,aAAa,EAAE,OAAO,CAAC,cAAc,CAAC,IAAI,IAAI,CAAC;IACnE,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC,CAAC;AAEF,+EAA+E;AAC/E,4EAA4E;AAC5E,+EAA+E;AAC/E,oDAAoD;AACpD,MAAM,OAAO,GAAG,CAAC,SAAkB,EAAkB,EAAE;IACrD,IAAI,SAAS,CAAC,YAAY,CAAC,0BAA0B,CAAC;QAAE,OAAO,EAAE,CAAC;IAClE,MAAM,cAAc,GAClB,SAAS,CAAC,YAAY,CAAC,uBAAuB,CAAC;QAC/C,CAAC,SAAS,CAAC,YAAY,CAAC,cAAc,CAAC;QACvC,CAAC,SAAS,CAAC,YAAY,CAAC,iBAAiB,CAAC,CAAC;IAC7C,IAAI,CAAC,cAAc,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,wBAAwB,CAAC,EAAE,CAAC;QACzE,OAAO,EAAE,CAAC;IACZ,CAAC;IACD,OAAO;QACL,IAAI,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE,OAAO,EAAE,cAAc,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,aAAa,EAAE;KAC1E,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,YAAY,GAAG,CAAC,SAAkB,EAAsB,EAAE;IAC9D,mCAAmC;IACnC,MAAM,mBAAmB,GAAG,SAAS;SAClC,YAAY,CAAC,wBAAwB,CAAC;QACvC,EAAE,IAAI,EAAE;SACP,WAAW,EAAoC,CAAC;IACnD,OAAO,mBAAmB,IAAI,gBAAgB,CAAC,GAAG,CAAC,mBAAmB,CAAC;QACrE,CAAC,CAAC,mBAAmB;QACrB,CAAC,CAAC,QAAQ,CAAC;AACf,CAAC,CAAC;AAEF;;;;GAIG;AACH,MAAM,aAAa,GAAG,GAAiB,EAAE;IACvC,IAAI,MAAM,GAA2B,IAAI,CAAC;IAC1C,wEAAwE;IACxE,IAAI,SAAS,GAAmB,IAAI,CAAC;IAErC,4EAA4E;IAC5E,mCAAmC;IACnC,MACA,cAAc,GAAG,IAAI,gBAAgB,CAAC,CAAC,OAAO,EAAE,EAAE;QAChD,IAAI,CAAC,MAAM;YAAE,OAAO;QACpB,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,WAAW,EAAE,CAAC;YAClC,aAAa,EAAE,CAAC;YAChB,OAAO;QACT,CAAC;QACD,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,KAAK,YAAY,CAAC,EAAE,CAAC;YAC3D,MAAM,OAAO,GAAG,iBAAiB,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;YACpD,IAAI,OAAO,KAAK,EAAE,EAAE,CAAC;gBACnB,aAAa,EAAE,CAAC;YAClB,CAAC;iBAAM,CAAC;gBACN,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;YAC7B,CAAC;QACH,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,MAAM,aAAa,GAAG,GAAS,EAAE;QAC/B,cAAc,CAAC,UAAU,EAAE,CAAC;QAC5B,MAAM,EAAE,OAAO,EAAE,CAAC;QAClB,MAAM,GAAG,IAAI,CAAC;IAChB,CAAC,CAAC;IAEF,MAAM,IAAI,GAAG,CAAC,SAAkB,EAAQ,EAAE;QACxC,aAAa,EAAE,CAAC;QAChB,8EAA8E;QAC9E,IAAK,SAA6C,CAAC,MAAM;YAAE,OAAO;QAElE,MAAM,GAAG,KAAK,CAAC,SAAS,EAAE;YACxB,GAAG,aAAa;YAChB,OAAO,EAAE,iBAAiB,CAAC,SAAS,CAAC;YACrC,SAAS,EAAE,YAAY,CAAC,SAAS,CAAC;YAClC,kEAAkE;YAClE,sEAAsE;YACtE,WAAW,EACT,SAAS,CAAC,YAAY,CAAC,0BAA0B,CAAC;gBAClD,SAAS,CAAC,YAAY,CAAC,wBAAwB,CAAC;YAClD,GAAG,OAAO,CAAC,SAAS,CAAC;YACrB,YAAY,EAAE,IAAI;YAClB,MAAM,CAAC,QAAQ;gBACb,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,WAAW;oBAAE,OAAO,KAAK,CAAC;YACpD,CAAC;YACD,OAAO,CAAC,QAAQ;gBACd,MAAM,uBAAuB,GAAG,QAAQ,CAAC,SAAS,CAAC,YAAY,CAC7D,0BAA0B,CAC3B,CAAC;gBAEF,IAAI,CAAC,uBAAuB,EAAE,CAAC;oBAC7B,MAAM,QAAQ,GAAG,QAAQ,CAAC,MAAM,CAAC,aAAa,CAAC,YAAY,CAAC,CAAC;oBAC7D,IAAI,QAAQ,IAAI,QAAQ,CAAC,YAAY,GAAG,QAAQ,CAAC,YAAY,EAAE,CAAC;wBAC9D,QAAQ,CAAC,QAAQ,CAAC,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC,CAAC;oBAC3C,CAAC;gBACH,CAAC;YACH,CAAC;YACD,QAAQ,CAAC,QAAQ;gBACf,IAAI,QAAQ,KAAK,MAAM,EAAE,CAAC;oBACxB,aAAa,EAAE,CAAC;gBAClB,CAAC;qBAAM,CAAC;oBACN,QAAQ,CAAC,OAAO,EAAE,CAAC;gBACrB,CAAC;YACH,CAAC;SACF,CAAC,CAAC;QACH,cAAc,CAAC,OAAO,CAAC,SAAS,EAAE;YAChC,UAAU,EAAE,IAAI;YAChB,eAAe,EAAE,CAAC,cAAc,EAAE,iBAAiB,CAAC;SACrD,CAAC,CAAC;QACH,cAAc,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC;IAC5E,CAAC,CAAC;IAEF,MAAM,oBAAoB,GAAG,CAAC,KAAY,EAAQ,EAAE;QAClD,MAAM,EAAE,MAAM,EAAE,GAAG,KAAK,CAAC;QACzB,IAAI,CAAC,CAAC,MAAM,YAAY,OAAO,CAAC;YAAE,OAAO;QACzC,mDAAmD;QACnD,IAAI,MAAM,EAAE,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC;YAAE,OAAO;QAC5C,IAAI,SAAS,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,MAAM,CAAC;YAAE,SAAS,GAAG,IAAI,CAAC;QAE/D,8EAA8E;QAC9E,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;QAC/C,IAAI,CAAC,OAAO,IAAI,OAAO,KAAK,MAAM,EAAE,SAAS;YAAE,OAAO;QAEtD,MAAM,SAAS,GAAG,iBAAiB,CAAC,OAAO,CAAC,CAAC;QAC7C,IACE,SAAS;YACT,SAAS,KAAK,MAAM,EAAE,SAAS;YAC/B,SAAS,KAAK,SAAS,EACvB,CAAC;YACD,IAAI,CAAC,SAAS,CAAC,CAAC;QAClB,CAAC;IACH,CAAC,CAAC;IAEF,6EAA6E;IAC7E,MAAM,YAAY,GAAG,CAAC,KAAoB,EAAQ,EAAE;QAClD,IAAI,KAAK,CAAC,GAAG,KAAK,QAAQ,IAAI,CAAC,MAAM;YAAE,OAAO;QAC9C,SAAS,GAAG,MAAM,CAAC,SAAS,CAAC;QAC7B,aAAa,EAAE,CAAC;IAClB,CAAC,CAAC;IAEF,MAAM,oBAAoB,GAAG,CAAC,KAAY,EAAQ,EAAE;QAClD,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC;QAC5B,IAAI,MAAM,YAAY,OAAO,IAAI,MAAM,CAAC,OAAO,CAAC,mBAAmB,CAAC,EAAE,CAAC;YACrE,OAAO;QACT,CAAC;QACD,OAAO,CAAC,EAAE,QAAQ,EAAE,CAAC,EAAE,CAAC,CAAC;QACzB,aAAa,EAAE,CAAC;IAClB,CAAC,CAAC;IAEF,QAAQ,CAAC,gBAAgB,CAAC,WAAW,EAAE,oBAAoB,CAAC,CAAC;IAC7D,QAAQ,CAAC,gBAAgB,CAAC,SAAS,EAAE,oBAAoB,CAAC,CAAC;IAC3D,QAAQ,CAAC,gBAAgB,CAAC,SAAS,EAAE,YAAY,CAAC,CAAC;IACnD,MAAM,CAAC,gBAAgB,CAAC,QAAQ,EAAE,oBAAoB,EAAE,IAAI,CAAC,CAAC;IAE9D,OAAO,GAAG,EAAE;QACV,QAAQ,CAAC,mBAAmB,CAAC,WAAW,EAAE,oBAAoB,CAAC,CAAC;QAChE,QAAQ,CAAC,mBAAmB,CAAC,SAAS,EAAE,oBAAoB,CAAC,CAAC;QAC9D,QAAQ,CAAC,mBAAmB,CAAC,SAAS,EAAE,YAAY,CAAC,CAAC;QACtD,MAAM,CAAC,mBAAmB,CAAC,QAAQ,EAAE,oBAAoB,EAAE,IAAI,CAAC,CAAC;QACjE,aAAa,EAAE,CAAC;IAClB,CAAC,CAAC;AACJ,CAAC,CAAC;AAEF,2DAA2D;AAC3D,IAAI,eAAe,GAAG,CAAC,CAAC;AACxB,IAAI,YAAY,GAAwB,IAAI,CAAC;AAE7C,MAAM,cAAc,GAAG,GAAG,EAAE;IAC1B,SAAS,CAAC,GAAG,EAAE;QACb,eAAe,IAAI,CAAC,CAAC;QACrB,IAAI,eAAe,KAAK,CAAC;YAAE,YAAY,GAAG,aAAa,EAAE,CAAC;QAE1D,OAAO,GAAG,EAAE;YACV,eAAe,IAAI,CAAC,CAAC;YACrB,IAAI,eAAe,KAAK,CAAC,EAAE,CAAC;gBAC1B,YAAY,EAAE,EAAE,CAAC;gBACjB,YAAY,GAAG,IAAI,CAAC;YACtB,CAAC;QACH,CAAC,CAAC;IACJ,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,OAAO,IAAI,CAAC;AACd,CAAC,CAAC;AAEF,eAAe,cAAc,CAAC"}
@@ -0,0 +1,29 @@
1
+ import { RefObject } from 'react';
2
+ /**
3
+ * Remembers the element that had focus when `isOpen` became true, read during
4
+ * render — before children with autoFocus take focus — so it can be restored.
5
+ */
6
+ export declare const useOpenerElement: (isOpen: boolean) => import("react").MutableRefObject<HTMLElement | null>;
7
+ interface FocusTrapOptions {
8
+ active: boolean;
9
+ /** Element to focus on activation; defaults to the first focusable child. */
10
+ initialFocusRef?: RefObject<HTMLElement>;
11
+ /** Return focus to the element that was focused before activation. */
12
+ restoreFocus?: boolean;
13
+ /** Explicit element to return focus to (see useOpenerElement). */
14
+ returnFocusRef?: RefObject<HTMLElement | null>;
15
+ /**
16
+ * Keep Tab/Shift+Tab inside the container (modal). When false, focus only
17
+ * moves in on activation and back out afterwards (non-modal panel).
18
+ */
19
+ trapTab?: boolean;
20
+ }
21
+ export declare const isTopMostFocusTrap: (container: HTMLElement | null) => boolean;
22
+ export declare const getTopMostFocusTrap: () => HTMLElement | null;
23
+ /**
24
+ * Moves keyboard focus into a dialog when it opens, optionally keeps it there
25
+ * while it is modal, and restores it to the trigger afterwards — WCAG 2.4.3
26
+ * Focus Order and 2.1.2 No Keyboard Trap (focus is released on close).
27
+ */
28
+ declare const useFocusTrap: (containerRef: RefObject<HTMLElement>, { active, initialFocusRef, restoreFocus, trapTab, returnFocusRef, }: FocusTrapOptions) => void;
29
+ export default useFocusTrap;
@@ -0,0 +1,97 @@
1
+ import { useEffect, useRef } from 'react';
2
+ import { getFocusableElements } from '../utils/a11y/a11y';
3
+ /**
4
+ * Remembers the element that had focus when `isOpen` became true, read during
5
+ * render — before children with autoFocus take focus — so it can be restored.
6
+ */
7
+ export const useOpenerElement = (isOpen) => {
8
+ const openerRef = useRef(null);
9
+ const wasOpenRef = useRef(false);
10
+ if (isOpen && !wasOpenRef.current && typeof document !== 'undefined') {
11
+ const focused = document.activeElement;
12
+ openerRef.current =
13
+ focused instanceof HTMLElement && focused !== document.body
14
+ ? focused
15
+ : null;
16
+ }
17
+ wasOpenRef.current = isOpen;
18
+ return openerRef;
19
+ };
20
+ // Traps are stacked so only the top-most dialog handles Tab and Escape.
21
+ const trapStack = [];
22
+ export const isTopMostFocusTrap = (container) => !!container && trapStack[trapStack.length - 1] === container;
23
+ export const getTopMostFocusTrap = () => trapStack[trapStack.length - 1] ?? null;
24
+ /**
25
+ * Moves keyboard focus into a dialog when it opens, optionally keeps it there
26
+ * while it is modal, and restores it to the trigger afterwards — WCAG 2.4.3
27
+ * Focus Order and 2.1.2 No Keyboard Trap (focus is released on close).
28
+ */
29
+ const useFocusTrap = (containerRef, { active, initialFocusRef, restoreFocus = true, trapTab = true, returnFocusRef, }) => {
30
+ useEffect(() => {
31
+ const container = containerRef.current;
32
+ if (!active || !container)
33
+ return undefined;
34
+ const focusedNow = document.activeElement instanceof HTMLElement
35
+ ? document.activeElement
36
+ : null;
37
+ // Prefer the opener captured at render; otherwise whatever had focus,
38
+ // unless that is already inside the container (e.g. an autoFocus field).
39
+ const previouslyFocused = returnFocusRef?.current ??
40
+ (focusedNow && !container.contains(focusedNow) ? focusedNow : null);
41
+ if (trapTab)
42
+ trapStack.push(container);
43
+ // Deferred so children using autoFocus win, and portal content is laid out.
44
+ const frame = requestAnimationFrame(() => {
45
+ if (container.contains(document.activeElement))
46
+ return;
47
+ const target = initialFocusRef?.current ??
48
+ getFocusableElements(container)[0] ??
49
+ container;
50
+ target.focus({ preventScroll: true });
51
+ });
52
+ const handleKeyDown = (event) => {
53
+ if (event.key !== 'Tab' ||
54
+ // Composite widgets (e.g. a spreadsheet) may use Tab internally.
55
+ event.defaultPrevented ||
56
+ !isTopMostFocusTrap(container)) {
57
+ return;
58
+ }
59
+ const focusable = getFocusableElements(container);
60
+ const first = focusable[0];
61
+ const last = focusable[focusable.length - 1];
62
+ if (!first || !last) {
63
+ event.preventDefault();
64
+ container.focus({ preventScroll: true });
65
+ return;
66
+ }
67
+ const activeElement = document.activeElement;
68
+ const focusIsOutside = !container.contains(activeElement);
69
+ if (event.shiftKey && (activeElement === first || focusIsOutside)) {
70
+ event.preventDefault();
71
+ last.focus();
72
+ }
73
+ else if (!event.shiftKey && (activeElement === last || focusIsOutside)) {
74
+ event.preventDefault();
75
+ first.focus();
76
+ }
77
+ };
78
+ if (trapTab)
79
+ document.addEventListener('keydown', handleKeyDown);
80
+ return () => {
81
+ cancelAnimationFrame(frame);
82
+ document.removeEventListener('keydown', handleKeyDown);
83
+ const index = trapStack.lastIndexOf(container);
84
+ if (index !== -1)
85
+ trapStack.splice(index, 1);
86
+ // Only restore when focus would otherwise be lost (inside the closing
87
+ // container or already on <body>), never steal it from elsewhere.
88
+ const focused = document.activeElement;
89
+ const focusWouldBeLost = !focused || focused === document.body || container.contains(focused);
90
+ if (restoreFocus && focusWouldBeLost && previouslyFocused?.isConnected) {
91
+ previouslyFocused.focus({ preventScroll: true });
92
+ }
93
+ };
94
+ }, [active, containerRef, initialFocusRef, restoreFocus, trapTab, returnFocusRef]);
95
+ };
96
+ export default useFocusTrap;
97
+ //# sourceMappingURL=useFocusTrap.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useFocusTrap.js","sourceRoot":"","sources":["../../src/hooks/useFocusTrap.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ import { RefObject } from 'react';
2
+ /**
3
+ * True when the element is rendered inside a control that already handles
4
+ * keyboard activation, so the element should not add its own tab stop.
5
+ */
6
+ declare const useInteractiveAncestor: (ref: RefObject<HTMLElement>, enabled: boolean) => boolean;
7
+ export default useInteractiveAncestor;
@@ -0,0 +1,18 @@
1
+ import { useLayoutEffect, useState } from 'react';
2
+ import { hasInteractiveAncestor } from '../utils/a11y/a11y';
3
+ /**
4
+ * True when the element is rendered inside a control that already handles
5
+ * keyboard activation, so the element should not add its own tab stop.
6
+ */
7
+ const useInteractiveAncestor = (ref, enabled) => {
8
+ const [isNested, setIsNested] = useState(false);
9
+ useLayoutEffect(() => {
10
+ if (!enabled)
11
+ return;
12
+ const nested = hasInteractiveAncestor(ref.current);
13
+ setIsNested((previous) => (previous === nested ? previous : nested));
14
+ }, [enabled, ref]);
15
+ return enabled && isNested;
16
+ };
17
+ export default useInteractiveAncestor;
18
+ //# sourceMappingURL=useInteractiveAncestor.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useInteractiveAncestor.js","sourceRoot":"","sources":["../../src/hooks/useInteractiveAncestor.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAa,eAAe,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAC7D,OAAO,EAAE,sBAAsB,EAAE,MAAM,oBAAoB,CAAC;AAE5D;;;GAGG;AACH,MAAM,sBAAsB,GAAG,CAC7B,GAA2B,EAC3B,OAAgB,EAChB,EAAE;IACF,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAEhD,eAAe,CAAC,GAAG,EAAE;QACnB,IAAI,CAAC,OAAO;YAAE,OAAO;QACrB,MAAM,MAAM,GAAG,sBAAsB,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QACnD,WAAW,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,QAAQ,KAAK,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;IACvE,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,CAAC;IAEnB,OAAO,OAAO,IAAI,QAAQ,CAAC;AAC7B,CAAC,CAAC;AAEF,eAAe,sBAAsB,CAAC"}