@ytsaurus/ui 1.103.0 → 1.103.1

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 (60) hide show
  1. package/dist/public/build/assets-manifest.json +40 -40
  2. package/dist/public/build/css/default-subject-link.b01c2230.chunk.css +2 -0
  3. package/dist/public/build/css/default-subject-link.b01c2230.chunk.css.map +1 -0
  4. package/dist/public/build/css/{main.d1987746.css → main.23e8d0fd.css} +2 -2
  5. package/dist/public/build/css/main.23e8d0fd.css.map +1 -0
  6. package/dist/public/build/js/6157.6786c942.chunk.js +2 -0
  7. package/dist/public/build/js/6157.6786c942.chunk.js.map +1 -0
  8. package/dist/public/build/js/6983.a2b31b33.chunk.js +2 -0
  9. package/dist/public/build/js/6983.a2b31b33.chunk.js.map +1 -0
  10. package/dist/public/build/js/8165.9684f49e.chunk.js +2 -0
  11. package/dist/public/build/js/8165.9684f49e.chunk.js.map +1 -0
  12. package/dist/public/build/js/{accounts.aaa21eca.chunk.js → accounts.f328f823.chunk.js} +2 -2
  13. package/dist/public/build/js/accounts.f328f823.chunk.js.map +1 -0
  14. package/dist/public/build/js/acl.556f2525.chunk.js +2 -0
  15. package/dist/public/build/js/acl.556f2525.chunk.js.map +1 -0
  16. package/dist/public/build/js/{bundles.b851f32c.chunk.js → bundles.0ab2d6f4.chunk.js} +2 -2
  17. package/dist/public/build/js/{bundles.b851f32c.chunk.js.map → bundles.0ab2d6f4.chunk.js.map} +1 -1
  18. package/dist/public/build/js/cluster-page-wrapper.a5c05070.chunk.js +2 -0
  19. package/dist/public/build/js/{cluster-page-wrapper.45436df6.chunk.js.map → cluster-page-wrapper.a5c05070.chunk.js.map} +1 -1
  20. package/dist/public/build/js/dashboard.efdd63a2.chunk.js +3 -0
  21. package/dist/public/build/js/{dashboard.234b8062.chunk.js.map → dashboard.efdd63a2.chunk.js.map} +1 -1
  22. package/dist/public/build/js/main.a89bac74.js +3 -0
  23. package/dist/public/build/js/main.a89bac74.js.map +1 -0
  24. package/dist/public/build/js/{navigation-flow.a79a25f5.chunk.js → navigation-flow.1d83e216.chunk.js} +2 -2
  25. package/dist/public/build/js/{navigation-flow.a79a25f5.chunk.js.map → navigation-flow.1d83e216.chunk.js.map} +1 -1
  26. package/dist/public/build/js/{navigation.b91a7a0b.chunk.js → navigation.0aff5a3a.chunk.js} +2 -2
  27. package/dist/public/build/js/{navigation.b91a7a0b.chunk.js.map → navigation.0aff5a3a.chunk.js.map} +1 -1
  28. package/dist/public/build/js/{query-tracker.5a0d626f.chunk.js → query-tracker.b7334a6f.chunk.js} +2 -2
  29. package/dist/public/build/js/{query-tracker.5a0d626f.chunk.js.map → query-tracker.b7334a6f.chunk.js.map} +1 -1
  30. package/dist/public/build/js/{runtime.8a460b23.js → runtime.d583e98e.js} +2 -2
  31. package/dist/public/build/js/{runtime.8a460b23.js.map → runtime.d583e98e.js.map} +1 -1
  32. package/dist/public/build/js/users.aec1e380.chunk.js +2 -0
  33. package/dist/public/build/js/users.aec1e380.chunk.js.map +1 -0
  34. package/dist/public/build/js/yt-df-dialog.1d05b0a5.chunk.js +3 -0
  35. package/dist/public/build/js/yt-df-dialog.1d05b0a5.chunk.js.map +1 -0
  36. package/dist/public/build/manifest.json +34 -34
  37. package/package.json +4 -3
  38. package/dist/public/build/css/default-subject-link.4dc8a973.chunk.css +0 -2
  39. package/dist/public/build/css/default-subject-link.4dc8a973.chunk.css.map +0 -1
  40. package/dist/public/build/css/main.d1987746.css.map +0 -1
  41. package/dist/public/build/js/2009.8121a60e.chunk.js +0 -2
  42. package/dist/public/build/js/2009.8121a60e.chunk.js.map +0 -1
  43. package/dist/public/build/js/6157.92170346.chunk.js +0 -2
  44. package/dist/public/build/js/6157.92170346.chunk.js.map +0 -1
  45. package/dist/public/build/js/6960.8b7e01c6.chunk.js +0 -2
  46. package/dist/public/build/js/6960.8b7e01c6.chunk.js.map +0 -1
  47. package/dist/public/build/js/accounts.aaa21eca.chunk.js.map +0 -1
  48. package/dist/public/build/js/acl.1ad3d494.chunk.js +0 -2
  49. package/dist/public/build/js/acl.1ad3d494.chunk.js.map +0 -1
  50. package/dist/public/build/js/cluster-page-wrapper.45436df6.chunk.js +0 -2
  51. package/dist/public/build/js/dashboard.234b8062.chunk.js +0 -3
  52. package/dist/public/build/js/main.aa6a17d8.js +0 -3
  53. package/dist/public/build/js/main.aa6a17d8.js.map +0 -1
  54. package/dist/public/build/js/users.a0dc610f.chunk.js +0 -2
  55. package/dist/public/build/js/users.a0dc610f.chunk.js.map +0 -1
  56. package/dist/public/build/js/yt-df-dialog.acab4eb0.chunk.js +0 -3
  57. package/dist/public/build/js/yt-df-dialog.acab4eb0.chunk.js.map +0 -1
  58. /package/dist/public/build/js/{dashboard.234b8062.chunk.js.LICENSE.txt → dashboard.efdd63a2.chunk.js.LICENSE.txt} +0 -0
  59. /package/dist/public/build/js/{main.aa6a17d8.js.LICENSE.txt → main.a89bac74.js.LICENSE.txt} +0 -0
  60. /package/dist/public/build/js/{yt-df-dialog.acab4eb0.chunk.js.LICENSE.txt → yt-df-dialog.1d05b0a5.chunk.js.LICENSE.txt} +0 -0
@@ -1 +0,0 @@
1
- {"version":3,"file":"js/6960.8b7e01c6.chunk.js","mappings":"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,eACA,kBACA,cACA,aACA,MACA,SACA,YACA,QACA,OACA,YACA,eACA,kBACA,cACA,aACA,iBACA,oBACA,uBACA,mBACA,kBACA,qBACA,wBACA,2BACA,uBACA,sBACA,oBACA,uBACA,0BACA,sBACA,qBACA,oBACA,uBACA,0BACA,sBACA,qBACA,0BACA,6BACA,gCACA,4BACA,2BACA,gBACA,mBACA,sBACA,kBACA,iBACA,qBACA,wBACA,2BACA,uBACA,sBACA,0BACA,6BACA,gCACA,4BACA,2BACA,qBACA,wBACA,2BACA,uBACA,sBACA,aACA,gBACA,mBACA,eACA,cACA,uBACA,0BACA,6BACA,yBACA,wBACA,sBACA,yBACA,4BACA,wBACA,uBACA,iBACA,oBACA,uBACA,mBACA,kBACA,kBACA,qBACA,wBACA,oBACA,mBACA,kBACA,qBACA,wBACA,oBACA,mBACA,mBACA,sBACA,yBACA,qBACA,oBACA,qBACA,wBACA,2BACA,uBACA,sBACA,mBACA,sBACA,yBACA,qBACA,oBACA,iBACA,oBACA,uBACA,mBACA,kBACA,YACA,eACA,kBACA,cACA,aACA,SACA,YACA,eACA,WACA,UACA,iBACA,oBACA,uBACA,mBACA,kBACA,sBACA,yBACA,4BACA,wBACA,uBACA,sBACA,yBACA,4BACA,wBACA,uBACA,sBACA,yBACA,4BACA,wBACA,uBACA,mBACA,sBACA,yBACA,qBACA,oBACA,wBACA,2BACA,8BACA,0BACA,yBACA,wBACA,2BACA,8BACA,0BACA,yBACA,wBACA,2BACA,8BACA,0BACA,yBACA,eACA,kBACA,qBACA,iBACA,gBACA,oBACA,uBACA,0BACA,sBACA,qBACA,yBACA,4BACA,+BACA,2BACA,0BACA,0BACA,6BACA,gCACA,4BACA,2BACA,oBACA,uBACA,0BACA,sBACA,qBACA,oBACA,uBACA,0BACA,sBACA,qBACA,iBACA,oBACA,uBACA,mBACA,kBACA,cACA,iBACA,oBACA,gBACA,eACA,cACA,iBACA,oBACA,gBACA,eACA,oBACA,uBACA,0BACA,sBACA,qBACA,oBACA,uBACA,0BACA,sBACA,qBACA,mBACA,sBACA,yBACA,qBACA,oBACA,oBACA,uBACA,0BACA,sBACA,qBACA,mBACA,sBACA,yBACA,qBACA,oBACA,kBACA,qBACA,wBACA,oBACA,mBACA,uBACA,0BACA,6BACA,yBACA,wBACA,uBACA,0BACA,6BACA,yBACA,wBACA,uBACA,0BACA,6BACA,yBACA,wBACA,oBACA,uBACA,0BACA,sBACA,qBACA,yBACA,4BACA,+BACA,2BACA,0BACA,yBACA,4BACA,+BACA,2BACA,0BACA,yBACA,4BACA,+BACA,2BACA,0BACA,aACA,gBACA,mBACA,eACA,cACA,kBACA,qBACA,wBACA,oBACA,mBACA,kBACA,qBACA,wBACA,oBACA,mBACA,kBACA,qBACA,wBACA,oBACA,mBACA,eACA,kBACA,qBACA,iBACA,gBACA,cACA,iBACA,oBACA,gBACA,eACA,mBACA,sBACA,yBACA,qBACA,oBACA,mBACA,sBACA,yBACA,qBACA,oBACA,mBACA,sBACA,yBACA,qBACA,oBACA,gBACA,mBACA,sBACA,kBACA,iBACA,cACA,iBACA,oBACA,gBACA,eACA,YACA,eACA,kBACA,cACA,aACA,iBACA,oBACA,uBACA,mBACA,kBACA,sBACA,yBACA,4BACA,wBACA,uBACA,uBACA,0BACA,6BACA,yBACA,wBACA,iBACA,oBACA,uBACA,mBACA,kBACA,iBACA,oBACA,uBACA,mBACA,kBACA,cACA,iBACA,oBACA,gBACA,eACA,SACA,YACA,eACA,WACA,UACA,qBACA,wBACA,2BACA,uBACA,sBACA,YACA,eACA,kBACA,cACA,aACA,YACA,eACA,kBACA,cACA,aACA,aACA,gBACA,mBACA,eACA,cACA,cACA,iBACA,oBACA,gBACA,eACA,cACA,iBACA,oBACA,gBACA,eACA,cACA,iBACA,oBACA,gBACA,eACA,aACA,gBACA,mBACA,eACA,cACA,KACA,QACA,WACA,OACA,MACA,QACA,WACA,cACA,UACA,SACA,OACA,UACA,aACA,SACA,QACA,WACA,cACA,iBACA,aACA,YACA,KACA,QACA,WACA,OACA,MACA,QACA,WACA,cACA,UACA,SACA,cACA,iBACA,oBACA,gBACA,eACA,aACA,gBACA,mBACA,eACA,cACA,YACA,eACA,kBACA,cACA,aACA,aACA,gBACA,mBACA,eACA,cACA,kBACA,qBACA,wBACA,oBACA,mBACA,kBACA,qBACA,wBACA,oBACA,mBACA,kBACA,qBACA,wBACA,oBACA,mBACA,aACA,gBACA,mBACA,eACA,cACA,cACA,iBACA,oBACA,gBACA,eACA,UACA,aACA,gBACA,YACA,WACA,UACA,aACA,gBACA,YACA,WACA,mBACA,sBACA,yBACA,qBACA,oBACA,eACA,kBACA,qBACA,iBACA,gBACA,SACA,YACA,eACA,WACA,UACA,MACA,SACA,YACA,QACA,OACA,YACA,eACA,kBACA,cACA,aACA,UACA,aACA,gBACA,YACA,WACA,OACA,UACA,aACA,SACA,QACA,MACA,SACA,YACA,QACA,OACA,OACA,UACA,aACA,SACA,QACA,KACA,QACA,WACA,OACA,MACA,aACA,gBACA,mBACA,eACA,cACA,KACA,QACA,WACA,OACA,MACA,SACA,YACA,eACA,WACA,UACA,YACA,eACA,kBACA,cACA,aACA,gBACA,mBACA,sBACA,kBACA,iBACA,WACA,cACA,iBACA,aACA,YACA,WACA,cACA,iBACA,aACA,YACA,aACA,gBACA,mBACA,eACA,cACA,WACA,cACA,iBACA,aACA,YACA,QACA,WACA,cACA,UACA,SACA,OACA,UACA,aACA,SACA,QACA,aACA,gBACA,mBACA,eACA,cACA,sBACA,yBACA,4BACA,wBACA,uBACA,cACA,iBACA,oBACA,gBACA,eACA,uBACA,0BACA,6BACA,yBACA,wBACA,WACA,cACA,iBACA,aACA,YACA,iBACA,oBACA,uBACA,mBACA,kBACA,cACA,iBACA,oBACA,gBACA,eACA,YACA,eACA,kBACA,cACA,aACA,gBACA,mBACA,sBACA,kBACA,iBACA,cACA,iBACA,oBACA,gBACA,eACA,wBACA,2BACA,8BACA,0BACA,yBACA,kBACA,qBACA,wBACA,oBACA,mBACA,uBACA,0BACA,6BACA,yBACA,wBACA,uBACA,0BACA,6BACA,yBACA,wBACA,qBACA,wBACA,2BACA,uBACA,sBACA,sBACA,yBACA,4BACA,wBACA,uBACA,aACA,gBACA,mBACA,eACA,cACA,KACA,QACA,WACA,OACA,MACA,OACA,UACA,aACA,SACA,QACA,OACA,UACA,aACA,SACA,QACA,WACA,cACA,iBACA,aACA,YACA,kBACA,qBACA,wBACA,oBACA,mBACA,eACA,kBACA,qBACA,iBACA,gBACA,eACA,kBACA,qBACA,iBACA,gBACA,aACA,gBACA,mBACA,eACA,cACA,gBACA,mBACA,sBACA,kBACA,iBACA,gBACA,mBACA,sBACA,kBACA,iBACA,kBACA,qBACA,wBACA,oBACA,mBACA,UACA,aACA,gBACA,YACA,WACA,UACA,aACA,gBACA,YACA,WACA,aACA,gBACA,mBACA,eACA,cACA,aACA,gBACA,mBACA,eACA,cACA,eACA,kBACA,qBACA,iBACA,gBACA,eACA,kBACA,qBACA,iBACA,gBACA,oBACA,uBACA,0BACA,sBACA,qBACA,sBACA,yBACA,4BACA,wBACA,uBACA,mBACA,sBACA,yBACA,qBACA,oBACA,SACA,YACA,eACA,WACA,UACA,UACA,aACA,gBACA,YACA,WACA,KACA,QACA,WACA,OACA,MACA,mBACA,sBACA,yBACA,qBACA,oBACA,iBACA,oBACA,uBACA,mBACA,kBACA,kBACA,qBACA,wBACA,oBACA,mBACA,UACA,aACA,gBACA,YACA,WACA,KACA,QACA,WACA,OACA,MACA,UACA,aACA,gBACA,YACA,WACA,UACA,aACA,gBACA,YACA,WACA,aACA,gBACA,mBACA,eACA,cACA,YACA,eACA,kBACA,cACA,aACA,iBACA,oBACA,uBACA,mBACA,kBACA,MACA,SACA,YACA,QACA,OACA,OACA,UACA,aACA,SACA,QACA,gBACA,mBACA,sBACA,kBACA,iBACA,YACA,eACA,kBACA,cACA,aACA,aACA,gBACA,mBACA,eACA,cACA,YACA,eACA,kBACA,cACA,aACA,iBACA,oBACA,uBACA,mBACA,kBACA,oBACA,uBACA,0BACA,sBACA,qBACA,gBACA,mBACA,sBACA,kBACA,iBACA,SACA,YACA,eACA,WACA,UACA,iBACA,oBACA,uBACA,mBACA,kBACA,mBACA,sBACA,yBACA,qBACA,oBACA,eACA,kBACA,qBACA,iBACA,gBACA,kBACA,qBACA,wBACA,oBACA,mBACA,oBACA,uBACA,0BACA,sBACA,qBACA,aACA,gBACA,mBACA,eACA,cACA,cACA,iBACA,oBACA,gBACA,eACA,YACA,eACA,kBACA,cACA,aACA,OACA,UACA,aACA,SACA,QACA,WACA,cACA,iBACA,aACA,YACA,gBACA,mBACA,sBACA,kBACA,iBACA,YACA,eACA,kBACA,cACA,aACA,WACA,cACA,iBACA,aACA,YACA,aACA,gBACA,mBACA,eACA,cACA,eACA,kBACA,qBACA,iBACA,gBACA,aACA,gBACA,mBACA,eACA,cACA,WACA,cACA,iBACA,aACA,YACA,WACA,cACA,iBACA,aACA,YACA,YACA,eACA,kBACA,cACA,aACA,WACA,cACA,iBACA,aACA,YACA,eACA,kBACA,qBACA,iBACA,gBACA,YACA,eACA,kBACA,cACA,aACA,gBACA,mBACA,sBACA,kBACA,iBACA,WACA,cACA,iBACA,aACA,YACA,eACA,kBACA,qBACA,iBACA,gBACA,KACA,QACA,WACA,OACA,MACA,KACA,QACA,WACA,OACA,MACA,YACA,eACA,kBACA,cACA,aACA,iBACA,oBACA,uBACA,mBACA,kBACA,iBACA,oBACA,uBACA,mBACA,kBACA,mBACA,sBACA,yBACA,qBACA,oBACA,kBACA,qBACA,wBACA,oBACA,mBACA,oBACA,uBACA,0BACA,sBACA,qBACA,UACA,aACA,gBACA,YACA,WACA,QACA,WACA,cACA,UACA,SACA,UACA,aACA,gBACA,YACA,WACA,UACA,aACA,gBACA,YACA,WACA,eACA,kBACA,qBACA,iBACA,gBACA,gBACA,mBACA,sBACA,kBACA,iBACA,eACA,kBACA,qBACA,iBACA,gBACA,eACA,kBACA,qBACA,iBACA,gBACA,WACA,cACA,iBACA,aACA,YACA,eACA,kBACA,qBACA,iBACA,gBACA,YACA,eACA,kBACA,cACA,aACA,YACA,eACA,kBACA,cACA,aACA,UACA,aACA,gBACA,YACA,WACA,kBACA,qBACA,wBACA,oBACA,mBACA,oBACA,uBACA,0BACA,sBACA,qBACA,gBACA,mBACA,sBACA,kBACA,iBACA,mBACA,sBACA,yBACA,qBACA,oBACA,qBACA,wBACA,2BACA,uBACA,sBACA,cACA,iBACA,oBACA,gBACA,eACA,eACA,kBACA,qBACA,iBACA,gBACA,aACA,gBACA,mBACA,eACA,cACA,iBACA,oBACA,uBACA,mBACA,kBACA,kBACA,qBACA,wBACA,oBACA,mBACA,kBACA,qBACA,wBACA,oBACA,mBACA,KACA,QACA,WACA,OACA,MACA,cACA,iBACA,oBACA,gBACA,eACA,oBACA,uBACA,0BACA,sBACA,qBACA,gBACA,mBACA,sBACA,kBACA,iBACA,WACA,cACA,iBACA,aACA,YACA,KACA,QACA,WACA,OACA,MACA,KACA,QACA,WACA,OACA,MACA,IACA,OACA,UACA,MACA,KACA,SACA,YACA,eACA,WACA,UACA,MACA,SACA,YACA,QACA,OACA,MACA,SACA,YACA,QACA,OACA,SACA,YACA,eACA,WACA,UACA,SACA,YACA,eACA,WACA,UACA,QACA,WACA,cACA,UACA,SACA,YACA,eACA,kBACA,cACA,aACA,YACA,eACA,kBACA,cACA,aACA,eACA,kBACA,qBACA,iBACA,gBACA,IACA,OACA,UACA,MACA,KACA,iBACA,oBACA,uBACA,mBACA,kBACA,uBACA,0BACA,6BACA,yBACA,wBACA,wBACA,2BACA,8BACA,0BACA,yBACA,iBACA,oBACA,uBACA,mBACA,kBACA,sBACA,yBACA,4BACA,wBACA,uBACA,cACA,iBACA,oBACA,gBACA,eACA,eACA,kBACA,qBACA,iBACA,gBACA,UACA,aACA,gBACA,YACA,WACA,cACA,iBACA,oBACA,gBACA,eACA,YACA,eACA,kBACA,cACA,aACA,gBACA,mBACA,sBACA,kBACA,iBACA,qBACA,wBACA,2BACA,uBACA,sBACA,iBACA,oBACA,uBACA,mBACA,kBACA,sBACA,yBACA,4BACA,wBACA,uBACA,qBACA,wBACA,2BACA,uBACA,sBACA,sBACA,yBACA,4BACA,wBACA,uBACA,eACA,kBACA,qBACA,iBACA,gBACA,oBACA,uBACA,0BACA,sBACA,qBACA,uBACA,0BACA,6BACA,yBACA,wBACA,oBACA,uBACA,0BACA,sBACA,qBACA,aACA,gBACA,mBACA,eACA,cACA,kBACA,qBACA,wBACA,oBACA,mBACA,eACA,kBACA,qBACA,iBACA,gBACA,gBACA,mBACA,sBACA,kBACA,iBACA,aACA,gBACA,mBACA,eACA,cACA,gBACA,mBACA,sBACA,kBACA,iBACA,wBACA,2BACA,8BACA,0BACA,yBACA,MACA,SACA,YACA,QACA,OACA,cACA,iBACA,oBACA,gBACA,eACA,YACA,eACA,kBACA,cACA,aACA,eACA,kBACA,qBACA,iBACA,gBACA,kBACA,qBACA,wBACA,oBACA,mBACA,iBACA,oBACA,uBACA,mBACA,kBACA,aACA,gBACA,mBACA,eACA,cACA,kBACA,qBACA,wBACA,oBACA,mBACA,qBACA,wBACA,2BACA,uBACA,sBACA,qBACA,wBACA,2BACA,uBACA,sBACA,2BACA,8BACA,iCACA,6BACA,4BACA,OACA,UACA,aACA,SACA,QACA,cACA,iBACA,oBACA,gBACA,eACA,QACA,WACA,cACA,UACA,SACA,gBACA,mBACA,sBACA,kBACA,iBACA,KACA,QACA,WACA,OACA,MACA,aACA,gBACA,mBACA,eACA,cACA,OACA,UACA,aACA,SACA,QACA,OACA,UACA,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","sources":["webpack://@ytsaurus/ui/./src/ui/components/Markdown/Markdown.tsx","webpack://@ytsaurus/ui/./src/ui/containers/ACL/RequestPermissions/PermissionsControl/PermissionsControl.tsx","webpack://@ytsaurus/ui/./src/ui/store/api/yt/endpoints/executeBatch.ts","webpack://@ytsaurus/ui/./src/ui/store/api/yt/endpoints/listQueries.ts","webpack://@ytsaurus/ui/./src/ui/store/api/yt/endpoints/flowExecute.ts","webpack://@ytsaurus/ui/./src/ui/store/api/yt/index.ts","webpack://@ytsaurus/ui/./src/ui/utils/navigation/path-editor.js","webpack://@ytsaurus/ui/./node_modules/react-lifecycles-compat/react-lifecycles-compat.es.js","webpack://@ytsaurus/ui/./node_modules/react-split-pane/dist/index.esm.js","webpack://@ytsaurus/ui/./src/ui/components/EditTextWithPreview/TabbedContent.tsx","webpack://@ytsaurus/ui/./src/ui/components/EditTextWithPreview/EditTextWithPreview.tsx","webpack://@ytsaurus/ui/./node_modules/@diplodoc/transform/node_modules/@diplodoc/tabs-extension/src/common.ts","webpack://@ytsaurus/ui/./node_modules/@diplodoc/transform/node_modules/@diplodoc/tabs-extension/src/runtime/utils.ts","webpack://@ytsaurus/ui/./node_modules/@diplodoc/transform/node_modules/@diplodoc/tabs-extension/src/runtime/TabsController.ts","webpack://@ytsaurus/ui/./node_modules/@diplodoc/transform/node_modules/get-root-node-polyfill/index.js","webpack://@ytsaurus/ui/./node_modules/@diplodoc/transform/node_modules/@diplodoc/tabs-extension/src/runtime/index.ts","webpack://@ytsaurus/ui/./node_modules/@diplodoc/transform/src/js/polyfill.js","webpack://@ytsaurus/ui/./node_modules/@diplodoc/transform/src/js/utils.ts","webpack://@ytsaurus/ui/./node_modules/@diplodoc/transform/src/js/code.ts","webpack://@ytsaurus/ui/./node_modules/@diplodoc/transform/src/js/cut.ts","webpack://@ytsaurus/ui/./node_modules/@diplodoc/transform/src/js/term/utils.ts","webpack://@ytsaurus/ui/./node_modules/@diplodoc/transform/src/js/term/index.ts","webpack://@ytsaurus/ui/./node_modules/react-style-proptype/src/css-properties.js","webpack://@ytsaurus/ui/./src/ui/components/EditAnnotationWithPreview/EditAnnotationWithPreview.tsx","webpack://@ytsaurus/ui/./node_modules/react-style-proptype/src/index.js"],"sourcesContent":["import React, {memo} from 'react';\nimport cn from 'bem-cn-lite';\nimport axios from 'axios';\n\nimport {OutputType} from '@diplodoc/transform/lib/typings';\n\nimport {wrapApiPromiseByToaster} from '../../utils/utils';\nimport UIFactory from '../../UIFactory';\n\nimport './Markdown.scss';\nimport '@diplodoc/transform/dist/css/yfm.css';\nimport '@diplodoc/transform/dist/js/yfm';\nimport './yfm-overrides.scss';\n\nconst block = cn('yt-markdown');\n\ninterface Props {\n text: string;\n allowHTML?: boolean;\n}\n\ninterface Response {\n result?: {html?: string; plainText?: string};\n}\n\nconst emptyTransformResponse: OutputType = {\n result: {html: '', headings: []},\n logs: {info: [], warn: [], error: [], disabled: []},\n};\n\nexport async function transformMarkdown({text, allowHTML}: Props): Promise<OutputType> {\n try {\n const {data} = await wrapApiPromiseByToaster(\n axios.post<Response>('/api/markdown-to-html', {\n text,\n allowHTML,\n }),\n {\n toasterName: 'useMarkdown',\n skipSuccessToast: true,\n errorContent: 'Failed to transform markdown text',\n },\n );\n return data as OutputType;\n } catch (e) {\n return {\n result: {...emptyTransformResponse['result']},\n logs: {...emptyTransformResponse['logs'], error: [(e as Error).message]},\n };\n }\n}\n\nexport function useMarkdown({text, allowHTML = true}: Props) {\n const [res, setResult] = React.useState<OutputType>(emptyTransformResponse);\n\n React.useEffect(() => {\n async function transform() {\n try {\n const data = await transformMarkdown({text, allowHTML});\n\n setResult(data);\n } catch (e) {}\n }\n transform();\n }, [text, allowHTML]);\n\n return res;\n}\n\nfunction MD({text}: Props) {\n const {html} = useMarkdown({text, allowHTML: true}).result ?? {};\n\n return (\n <React.Fragment>\n <div className={block(null, 'yfm')} dangerouslySetInnerHTML={{__html: html ?? ''}} />\n </React.Fragment>\n );\n}\n\nexport const Markdown = memo(function Markdown({text}: Props) {\n const customMarkdown = UIFactory.renderMarkdown({text});\n return customMarkdown ?? <MD text={text} />;\n});\n","import React, {Component} from 'react';\nimport cn from 'bem-cn-lite';\n\nimport indexOf_ from 'lodash/indexOf';\nimport isEmpty_ from 'lodash/isEmpty';\nimport map_ from 'lodash/map';\n\nimport {Checkbox} from '@gravity-ui/uikit';\n\nimport format from '../../../../common/hammer/format';\nimport {YTPermissionTypeUI} from '../../../../utils/acl/acl-api';\n\nimport './PermissionsControl.scss';\n\nconst block = cn('acl-permissions-control');\n\ninterface Props {\n value: Record<string, Array<YTPermissionTypeUI>>;\n onChange: (value: Props['value']) => void;\n disabled?: boolean;\n choices?: Array<Array<YTPermissionTypeUI>>;\n disabledChoices?: Array<number>; // array of indices\n validate?: (value: Props['value']) => string | undefined;\n\n error?: string;\n}\n\ninterface State {\n errorMessage?: string;\n}\n\nexport default class PermissionsControl extends Component<Props, State> {\n static getChoiceName(choice: Array<string>) {\n return choice.join('/');\n }\n\n // eslint-disable-next-line @typescript-eslint/member-ordering\n static hasErrorRenderer = true;\n\n static getDefaultValue = () => ({});\n static isEmpty(value: Props['value']) {\n return isEmpty_(value);\n }\n\n state: State = {};\n\n handleCheckboxChange = (\n permissionName: string,\n permissionsToSet: Array<YTPermissionTypeUI>,\n ) => {\n const {value, onChange} = this.props;\n const {[permissionName]: permissions, ...rest} = value || {};\n\n const updatedValue = permissions ? rest : {...rest, [permissionName]: permissionsToSet};\n onChange(updatedValue);\n };\n\n renderPermissionCheckbox(\n permissionName: string,\n permissionsToSet: Array<YTPermissionTypeUI>,\n index: number,\n ) {\n const {value, disabled, disabledChoices} = this.props;\n const itemDisabled = disabled || indexOf_(disabledChoices, index) !== -1;\n\n return (\n <Checkbox\n checked={Boolean(value?.[permissionName])}\n key={permissionName}\n content={format.ReadableField(permissionName)}\n onChange={() => this.handleCheckboxChange(permissionName, permissionsToSet)}\n disabled={itemDisabled}\n className={block('item')}\n />\n );\n }\n\n renderChoices(choices?: Required<Props>['choices']) {\n return map_(choices, (item, index) => {\n const name = PermissionsControl.getChoiceName(item);\n return (\n <React.Fragment key={index}>\n {this.renderPermissionCheckbox(name, item, index)}\n </React.Fragment>\n );\n });\n }\n\n render() {\n const {choices, error} = this.props;\n\n return (\n <div className={block()}>\n {this.renderChoices(choices)}\n {error && <div className={block('error-message')}>{error}</div>}\n </div>\n );\n }\n}\n","import {YTApiIdType} from '../../../../../shared/constants/yt-api-id';\nimport {BatchParameters, ytApiV3Id} from '../../../../rum/rum-wrap-api';\nimport {BatchResultsItem} from '../../../../../shared/yt-types';\nimport {WrapApiOptions, getBatchError, wrapApiPromiseByToaster} from '../../../../utils/utils';\nimport {YTError} from '../../../../types';\nimport {YTEndpointApiArgs} from './types';\n\nexport type BatchApiArgs = YTEndpointApiArgs<BatchParameters> & {\n id: YTApiIdType;\n errorTitle: string;\n toaster?: WrapApiOptions<unknown, 'v3'>;\n};\n\nexport type BatchApiResults<T = unknown> = Array<BatchResultsItem<T>>;\n\nexport const executeBatchV3 = async (args: BatchApiArgs) => {\n const {id, errorTitle, parameters, data, cancellation, toaster} = args;\n try {\n const setup = 'setup' in args ? args.setup : undefined;\n const request = async () => {\n const results = await ytApiV3Id.executeBatch(id, {\n parameters,\n data,\n setup,\n cancellation,\n });\n\n const error = getBatchError(results, errorTitle);\n if (error) throw error;\n\n return results;\n };\n\n let results;\n\n if (toaster) {\n results = await wrapApiPromiseByToaster(request(), toaster);\n } else {\n results = await request();\n }\n\n const error = getBatchError(results, errorTitle);\n if (error) throw error;\n\n return {data: results};\n } catch (error: unknown) {\n return {error} as {error: YTError};\n }\n};\n","import {ListQueriesParams} from '../../../../../shared/yt-types';\nimport {YTApiId, ytApiV4Id} from '../../../../rum/rum-wrap-api';\n\nexport async function listQueries(args: ListQueriesParams) {\n try {\n const response = ytApiV4Id.listQueries(YTApiId.listQueries, args);\n return {data: response};\n } catch (error) {\n return {error};\n }\n}\n","import {YTApiId, ytApiV4Id} from '../../../../rum/rum-wrap-api';\nimport {YTError} from '../../../../types';\nimport {YTEndpointApiArgs} from './types';\nimport {\n FlowExecuteCommand,\n FlowExecuteData,\n FlowExecuteParams,\n} from '../../../../../shared/yt-types';\n\nexport type FlowApiArgs<T extends FlowExecuteCommand> = YTEndpointApiArgs<FlowExecuteParams<T>>;\n\nexport function flowExecute<T extends FlowExecuteCommand>({...args}: FlowApiArgs<T>) {\n try {\n const data = ytApiV4Id.flowExecute(YTApiId.flowExecuteDescribePipeline, {\n ...args,\n data: {},\n }) as Promise<FlowExecuteData[T]>;\n\n return {data};\n } catch (error: unknown) {\n return {error} as {error: YTError};\n }\n}\n","import {useSelector} from 'react-redux';\nimport {BaseQueryFn, TypedUseMutationResult} from '@reduxjs/toolkit/dist/query/react';\n\nimport {rootApi} from '..';\nimport {BatchApiArgs, BatchApiResults, executeBatchV3} from './endpoints/executeBatch';\nimport {getUseAutoRefresh} from '../../../store/selectors/settings/settings-ts';\nimport {getCluster} from '../../../store/selectors/global';\n\nimport {DEFAULT_UPDATER_TIMEOUT} from '../../../hooks/use-updater';\nimport {YTApiId} from '../../../../shared/constants/yt-api-id';\n\nimport {MutationOptions, UseQueryOptions} from './types';\nimport {listQueries} from './endpoints/listQueries';\nimport {flowExecute} from './endpoints/flowExecute';\nimport {FlowExecuteCommand, FlowExecuteData} from '../../../../shared/yt-types';\nimport {OverrideDataType} from './endpoints/types';\n\nexport const ytApi = rootApi.injectEndpoints({\n endpoints: (build) => ({\n fetchBatch: build.query<BatchApiResults, BatchApiArgs>({\n queryFn: executeBatchV3,\n providesTags: (_result, _error, arg) => [arg.id],\n }),\n updateBatch: build.mutation<BatchApiResults, BatchApiArgs>({\n queryFn: executeBatchV3,\n invalidatesTags: (_result, _error, arg) => [arg.id],\n }),\n listQueries: build.query({\n queryFn: listQueries,\n providesTags: (_result, _error, _arg) => [YTApiId.listQueries],\n }),\n flowExecute: build.query({\n queryFn: flowExecute,\n providesTags: (_result, _error, _args) => {\n const {flow_command, pipeline_path} = _args.parameters;\n return [`flowExecuteDescribePipeline_${flow_command}_${pipeline_path}`];\n },\n }),\n }),\n});\n\nexport const {useListQueriesQuery} = ytApi;\n\nexport function useFlowExecuteQuery<T extends FlowExecuteCommand>(\n ...args: Parameters<typeof flowExecute>\n) {\n const res = ytApi.useFlowExecuteQuery(...args);\n return res as OverrideDataType<typeof res, FlowExecuteData[T]>;\n}\n\ntype BatchQueryResult = typeof ytApi.endpoints.fetchBatch.Types.ResultType;\ntype BatchQueryArgs = typeof ytApi.endpoints.fetchBatch.Types.QueryArg;\n\n/**\n * Custom hook for fetching batch query data with automatic type conversion.\n * This hook extends the base RTK Query functionality with automatic refresh support\n *\n * @template T The expected type of the batch results data\n * @param args The batch API arguments including YTApiId, cluster dependency and parameters for the batch operation\n * @param options Optional query configuration options (polling, caching, etc.)\n * @returns A query result object with properly typed data and status information\n *\n * @example\n * const { data, isLoading } = useFetchBatchQuery<MyDataType>({\n * id: YTApiId.getMyAttribute,\n * parameters: {\n * requests: [\n * {\n * command: 'get' as const,\n * parameters: prepareRequest('/@my_attribute', {\n * path,\n * }),\n * },\n * ],\n * },\n * });\n */\nexport function useFetchBatchQuery<T>(\n args: BatchQueryArgs,\n options?: UseQueryOptions<BatchQueryResult, BatchQueryArgs>,\n) {\n const useAutoRefresh = useSelector(getUseAutoRefresh);\n const cluster = useSelector(getCluster);\n\n const defaultOptions = {\n pollingInterval: useAutoRefresh ? DEFAULT_UPDATER_TIMEOUT : undefined,\n skipPollingIfUnfocused: true,\n };\n\n const customOptions = {\n ...defaultOptions,\n ...options,\n };\n\n const customArgs =\n 'setup' in args && 'proxy' in args.setup\n ? args\n : {\n ...args,\n cluster,\n };\n\n const res = ytApi.useFetchBatchQuery(customArgs, customOptions);\n return res as OverrideDataType<typeof res, BatchApiResults<T>>;\n}\n\ntype BatchMutationDefinition = typeof ytApi.endpoints.updateBatch.Types.MutationDefinition;\ntype BatchMutationResultType = typeof ytApi.endpoints.updateBatch.Types.ResultType;\n\ntype BatchMutationReturnType = TypedUseMutationResult<\n BatchMutationResultType,\n BatchApiArgs,\n BaseQueryFn\n>;\n\n/**\n * Custom hook for executing batch mutation operations.\n *\n * @template T The expected type of the batch results data\n * @param options Optional mutation configuration options\n * @returns A tuple containing:\n * - A typed mutation function that accepts BatchApiArgs\n * - The mutation result object with status and data\n *\n * @example\n * const [updateBatch, { isLoading }] = useUpdateBatchMutation<MyDataType>();\n *\n * // Later in code:\n * const result = await updateBatch({\n * id: YTApiId.navigationGetAnnotation,\n * parameters: {\n * requests: [\n * {\n * command: 'set' as const,\n * parameters: prepareRequest('/@annotation', {\n * path,\n * }),\n * input: annotation,\n * },\n * ],\n * },\n * toaster: {\n * toasterName: 'update_annotation',\n * successTitle: 'Annotation saved',\n * errorTitle: 'Failed to save annotation',\n * },\n * });\n */\nexport function useUpdateBatchMutation<T>(\n options?: MutationOptions<BatchMutationReturnType, BatchMutationDefinition>,\n) {\n const [updateFn, result] = ytApi.useUpdateBatchMutation(options);\n // cluster param makes no sense for mutation requests\n const typedUpdateFn = async (args: Omit<BatchApiArgs, 'cluster'>) => {\n // adding cluster param for types compatibility\n const response = await updateFn({...args, cluster: ''});\n if (response.data) {\n return {\n data: response.data as BatchApiResults<T> | undefined,\n };\n }\n\n return response;\n };\n\n return [typedUpdateFn, result] as const;\n}\n","import filter_ from 'lodash/filter';\nimport map_ from 'lodash/map';\nimport sortBy_ from 'lodash/sortBy';\n\nimport unipika from '../../common/thor/unipika';\nimport ypath from '../../common/thor/ypath';\n\nimport CancelHelper from '../cancel-helper';\nimport {YTApiId, ytApiV3Id} from '../../rum/rum-wrap-api';\n\nexport const pathEditorRequests = new CancelHelper();\n\nfunction prepareSuggestions(initialPath, parentPath, children) {\n let suggestions = map_(children, (child) => {\n const prepared = {};\n\n prepared.parentPath = parentPath;\n prepared.childPath = '/' + unipika.decode(ypath.getValue(child));\n prepared.path = prepared.parentPath + prepared.childPath;\n prepared.type = ypath.getValue(child, '/@type');\n prepared.dynamic = ypath.getValue(child, '/@dynamic');\n prepared.targetPathBroken = ypath.getValue(child, '/@broken');\n\n return prepared;\n });\n\n suggestions = sortBy_(suggestions, 'childPath');\n\n return suggestions;\n}\n\nexport function preparePath(currentPath) {\n return ypath.YPath.create(currentPath, 'absolute').toSubpath(-2).stringify();\n}\n\nexport function loadSuggestions(path, customFilter) {\n const parentPath = preparePath(path);\n\n return ytApiV3Id\n .list(YTApiId.pathEditorLoadSuggestions, {\n parameters: {path: parentPath, attributes: ['type', 'dynamic']},\n cancellation: pathEditorRequests.saveCancelToken,\n })\n .then(ypath.getValue)\n .then((nodes) => prepareSuggestions(path, parentPath, nodes))\n .then((suggestions) => (customFilter ? customFilter(suggestions) : suggestions));\n}\n\nexport function filterByCurrentPath(currentPath, suggestions) {\n const path = currentPath.toLowerCase();\n\n return filter_(suggestions, (child) => {\n const hasPartOfPath = child.path.startsWith(path);\n const isShowCurrentChild = child.path !== path || child.type === 'map_node';\n\n return hasPartOfPath && isShowCurrentChild;\n });\n}\n\nexport function getNextSelectedIndex(suggestion, selectedIndex) {\n if (selectedIndex === -1 || selectedIndex === suggestion.length - 1) {\n return 0;\n }\n\n return selectedIndex + 1;\n}\n\nexport function getPrevSelectedIndex(suggestions, selectedIndex) {\n if (selectedIndex === -1 || selectedIndex === 0) {\n return suggestions.length - 1;\n }\n\n return selectedIndex - 1;\n}\n\nexport function getCompletedPath(suggestion) {\n return suggestion.type === 'map_node' ? suggestion.path + '/' : suggestion.path;\n}\n\nexport function getIconNameForType(type, targetPathBroken) {\n const icons = {\n document: 'file-alt',\n string_node: 'file-alt',\n int64_node: 'file-alt',\n uint64_node: 'file-alt',\n double_node: 'file-alt',\n boolean_node: 'file-alt',\n map_node: 'folder',\n scheduler_pool_tree_map: 'folder-tree',\n scheduler_pool: 'tasks',\n tablet_cell: 'th',\n journal: 'book',\n table: 'th',\n table_dynamic: 'dyn-th',\n replicated_table: 'th',\n chaos_replicated_table: 'chaos-replicated-table',\n replication_log_table: 'replication-log-table',\n file: 'file',\n topmost_transaction_map: 'folder',\n transaction_map: 'folder',\n transaction: 'code-branch',\n nested_transaction: 'code-branch',\n link: ypath.getBoolean(targetPathBroken) ? 'unlink' : 'link',\n rootstock: 'link',\n portal_entrance: 'link',\n cell_node: 'circle',\n cell_node_map: 'far circle',\n sys_node: 'cog',\n access_control_object_namespace_map: 'acl-namespace-map',\n access_control_object_namespace: 'acl-namespace',\n access_control_object: 'acl-object',\n };\n\n const icon = type ? icons[type] || 'not-suported' : 'eye-slash';\n\n return icon;\n}\n","/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nfunction componentWillMount() {\n // Call this.constructor.gDSFP to support sub-classes.\n var state = this.constructor.getDerivedStateFromProps(this.props, this.state);\n if (state !== null && state !== undefined) {\n this.setState(state);\n }\n}\n\nfunction componentWillReceiveProps(nextProps) {\n // Call this.constructor.gDSFP to support sub-classes.\n // Use the setState() updater to ensure state isn't stale in certain edge cases.\n function updater(prevState) {\n var state = this.constructor.getDerivedStateFromProps(nextProps, prevState);\n return state !== null && state !== undefined ? state : null;\n }\n // Binding \"this\" is important for shallow renderer support.\n this.setState(updater.bind(this));\n}\n\nfunction componentWillUpdate(nextProps, nextState) {\n try {\n var prevProps = this.props;\n var prevState = this.state;\n this.props = nextProps;\n this.state = nextState;\n this.__reactInternalSnapshotFlag = true;\n this.__reactInternalSnapshot = this.getSnapshotBeforeUpdate(\n prevProps,\n prevState\n );\n } finally {\n this.props = prevProps;\n this.state = prevState;\n }\n}\n\n// React may warn about cWM/cWRP/cWU methods being deprecated.\n// Add a flag to suppress these warnings for this special case.\ncomponentWillMount.__suppressDeprecationWarning = true;\ncomponentWillReceiveProps.__suppressDeprecationWarning = true;\ncomponentWillUpdate.__suppressDeprecationWarning = true;\n\nfunction polyfill(Component) {\n var prototype = Component.prototype;\n\n if (!prototype || !prototype.isReactComponent) {\n throw new Error('Can only polyfill class components');\n }\n\n if (\n typeof Component.getDerivedStateFromProps !== 'function' &&\n typeof prototype.getSnapshotBeforeUpdate !== 'function'\n ) {\n return Component;\n }\n\n // If new component APIs are defined, \"unsafe\" lifecycles won't be called.\n // Error if any of these lifecycles are present,\n // Because they would work differently between older and newer (16.3+) versions of React.\n var foundWillMountName = null;\n var foundWillReceivePropsName = null;\n var foundWillUpdateName = null;\n if (typeof prototype.componentWillMount === 'function') {\n foundWillMountName = 'componentWillMount';\n } else if (typeof prototype.UNSAFE_componentWillMount === 'function') {\n foundWillMountName = 'UNSAFE_componentWillMount';\n }\n if (typeof prototype.componentWillReceiveProps === 'function') {\n foundWillReceivePropsName = 'componentWillReceiveProps';\n } else if (typeof prototype.UNSAFE_componentWillReceiveProps === 'function') {\n foundWillReceivePropsName = 'UNSAFE_componentWillReceiveProps';\n }\n if (typeof prototype.componentWillUpdate === 'function') {\n foundWillUpdateName = 'componentWillUpdate';\n } else if (typeof prototype.UNSAFE_componentWillUpdate === 'function') {\n foundWillUpdateName = 'UNSAFE_componentWillUpdate';\n }\n if (\n foundWillMountName !== null ||\n foundWillReceivePropsName !== null ||\n foundWillUpdateName !== null\n ) {\n var componentName = Component.displayName || Component.name;\n var newApiName =\n typeof Component.getDerivedStateFromProps === 'function'\n ? 'getDerivedStateFromProps()'\n : 'getSnapshotBeforeUpdate()';\n\n throw Error(\n 'Unsafe legacy lifecycles will not be called for components using new component APIs.\\n\\n' +\n componentName +\n ' uses ' +\n newApiName +\n ' but also contains the following legacy lifecycles:' +\n (foundWillMountName !== null ? '\\n ' + foundWillMountName : '') +\n (foundWillReceivePropsName !== null\n ? '\\n ' + foundWillReceivePropsName\n : '') +\n (foundWillUpdateName !== null ? '\\n ' + foundWillUpdateName : '') +\n '\\n\\nThe above lifecycles should be removed. Learn more about this warning here:\\n' +\n 'https://fb.me/react-async-component-lifecycle-hooks'\n );\n }\n\n // React <= 16.2 does not support static getDerivedStateFromProps.\n // As a workaround, use cWM and cWRP to invoke the new static lifecycle.\n // Newer versions of React will ignore these lifecycles if gDSFP exists.\n if (typeof Component.getDerivedStateFromProps === 'function') {\n prototype.componentWillMount = componentWillMount;\n prototype.componentWillReceiveProps = componentWillReceiveProps;\n }\n\n // React <= 16.2 does not support getSnapshotBeforeUpdate.\n // As a workaround, use cWU to invoke the new lifecycle.\n // Newer versions of React will ignore that lifecycle if gSBU exists.\n if (typeof prototype.getSnapshotBeforeUpdate === 'function') {\n if (typeof prototype.componentDidUpdate !== 'function') {\n throw new Error(\n 'Cannot polyfill getSnapshotBeforeUpdate() for components that do not define componentDidUpdate() on the prototype'\n );\n }\n\n prototype.componentWillUpdate = componentWillUpdate;\n\n var componentDidUpdate = prototype.componentDidUpdate;\n\n prototype.componentDidUpdate = function componentDidUpdatePolyfill(\n prevProps,\n prevState,\n maybeSnapshot\n ) {\n // 16.3+ will not execute our will-update method;\n // It will pass a snapshot value to did-update though.\n // Older versions will require our polyfilled will-update value.\n // We need to handle both cases, but can't just check for the presence of \"maybeSnapshot\",\n // Because for <= 15.x versions this might be a \"prevContext\" object.\n // We also can't just check \"__reactInternalSnapshot\",\n // Because get-snapshot might return a falsy value.\n // So check for the explicit __reactInternalSnapshotFlag flag to determine behavior.\n var snapshot = this.__reactInternalSnapshotFlag\n ? this.__reactInternalSnapshot\n : maybeSnapshot;\n\n componentDidUpdate.call(this, prevProps, prevState, snapshot);\n };\n }\n\n return Component;\n}\n\nexport { polyfill };\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport stylePropType from 'react-style-proptype';\nimport { polyfill } from 'react-lifecycles-compat';\n\nfunction _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n}\n\nfunction _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n}\n\nfunction _createClass(Constructor, protoProps, staticProps) {\n if (protoProps) _defineProperties(Constructor.prototype, protoProps);\n if (staticProps) _defineProperties(Constructor, staticProps);\n return Constructor;\n}\n\nfunction _defineProperty(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n\n return obj;\n}\n\nfunction ownKeys(object, enumerableOnly) {\n var keys = Object.keys(object);\n\n if (Object.getOwnPropertySymbols) {\n var symbols = Object.getOwnPropertySymbols(object);\n if (enumerableOnly) symbols = symbols.filter(function (sym) {\n return Object.getOwnPropertyDescriptor(object, sym).enumerable;\n });\n keys.push.apply(keys, symbols);\n }\n\n return keys;\n}\n\nfunction _objectSpread2(target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i] != null ? arguments[i] : {};\n\n if (i % 2) {\n ownKeys(Object(source), true).forEach(function (key) {\n _defineProperty(target, key, source[key]);\n });\n } else if (Object.getOwnPropertyDescriptors) {\n Object.defineProperties(target, Object.getOwnPropertyDescriptors(source));\n } else {\n ownKeys(Object(source)).forEach(function (key) {\n Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));\n });\n }\n }\n\n return target;\n}\n\nfunction _inherits(subClass, superClass) {\n if (typeof superClass !== \"function\" && superClass !== null) {\n throw new TypeError(\"Super expression must either be null or a function\");\n }\n\n subClass.prototype = Object.create(superClass && superClass.prototype, {\n constructor: {\n value: subClass,\n writable: true,\n configurable: true\n }\n });\n if (superClass) _setPrototypeOf(subClass, superClass);\n}\n\nfunction _getPrototypeOf(o) {\n _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) {\n return o.__proto__ || Object.getPrototypeOf(o);\n };\n return _getPrototypeOf(o);\n}\n\nfunction _setPrototypeOf(o, p) {\n _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) {\n o.__proto__ = p;\n return o;\n };\n\n return _setPrototypeOf(o, p);\n}\n\nfunction _isNativeReflectConstruct() {\n if (typeof Reflect === \"undefined\" || !Reflect.construct) return false;\n if (Reflect.construct.sham) return false;\n if (typeof Proxy === \"function\") return true;\n\n try {\n Date.prototype.toString.call(Reflect.construct(Date, [], function () {}));\n return true;\n } catch (e) {\n return false;\n }\n}\n\nfunction _assertThisInitialized(self) {\n if (self === void 0) {\n throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n }\n\n return self;\n}\n\nfunction _possibleConstructorReturn(self, call) {\n if (call && (typeof call === \"object\" || typeof call === \"function\")) {\n return call;\n }\n\n return _assertThisInitialized(self);\n}\n\nfunction _createSuper(Derived) {\n return function () {\n var Super = _getPrototypeOf(Derived),\n result;\n\n if (_isNativeReflectConstruct()) {\n var NewTarget = _getPrototypeOf(this).constructor;\n\n result = Reflect.construct(Super, arguments, NewTarget);\n } else {\n result = Super.apply(this, arguments);\n }\n\n return _possibleConstructorReturn(this, result);\n };\n}\n\nvar Pane = /*#__PURE__*/function (_React$PureComponent) {\n _inherits(Pane, _React$PureComponent);\n\n var _super = _createSuper(Pane);\n\n function Pane() {\n _classCallCheck(this, Pane);\n\n return _super.apply(this, arguments);\n }\n\n _createClass(Pane, [{\n key: \"render\",\n value: function render() {\n var _this$props = this.props,\n children = _this$props.children,\n className = _this$props.className,\n split = _this$props.split,\n styleProps = _this$props.style,\n size = _this$props.size,\n eleRef = _this$props.eleRef;\n var classes = ['Pane', split, className];\n var style = {\n flex: 1,\n position: 'relative',\n outline: 'none'\n };\n\n if (size !== undefined) {\n if (split === 'vertical') {\n style.width = size;\n } else {\n style.height = size;\n style.display = 'flex';\n }\n\n style.flex = 'none';\n }\n\n style = Object.assign({}, style, styleProps || {});\n return /*#__PURE__*/React.createElement(\"div\", {\n ref: eleRef,\n className: classes.join(' '),\n style: style\n }, children);\n }\n }]);\n\n return Pane;\n}(React.PureComponent);\n\nPane.propTypes = {\n className: PropTypes.string.isRequired,\n children: PropTypes.node.isRequired,\n size: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n split: PropTypes.oneOf(['vertical', 'horizontal']),\n style: stylePropType,\n eleRef: PropTypes.func\n};\nPane.defaultProps = {};\n\nvar RESIZER_DEFAULT_CLASSNAME = 'Resizer';\n\nvar Resizer = /*#__PURE__*/function (_React$Component) {\n _inherits(Resizer, _React$Component);\n\n var _super = _createSuper(Resizer);\n\n function Resizer() {\n _classCallCheck(this, Resizer);\n\n return _super.apply(this, arguments);\n }\n\n _createClass(Resizer, [{\n key: \"render\",\n value: function render() {\n var _this$props = this.props,\n className = _this$props.className,\n _onClick = _this$props.onClick,\n _onDoubleClick = _this$props.onDoubleClick,\n _onMouseDown = _this$props.onMouseDown,\n _onTouchEnd = _this$props.onTouchEnd,\n _onTouchStart = _this$props.onTouchStart,\n resizerClassName = _this$props.resizerClassName,\n split = _this$props.split,\n style = _this$props.style;\n var classes = [resizerClassName, split, className];\n return /*#__PURE__*/React.createElement(\"span\", {\n role: \"presentation\",\n className: classes.join(' '),\n style: style,\n onMouseDown: function onMouseDown(event) {\n return _onMouseDown(event);\n },\n onTouchStart: function onTouchStart(event) {\n event.preventDefault();\n\n _onTouchStart(event);\n },\n onTouchEnd: function onTouchEnd(event) {\n event.preventDefault();\n\n _onTouchEnd(event);\n },\n onClick: function onClick(event) {\n if (_onClick) {\n event.preventDefault();\n\n _onClick(event);\n }\n },\n onDoubleClick: function onDoubleClick(event) {\n if (_onDoubleClick) {\n event.preventDefault();\n\n _onDoubleClick(event);\n }\n }\n });\n }\n }]);\n\n return Resizer;\n}(React.Component);\n\nResizer.propTypes = {\n className: PropTypes.string.isRequired,\n onClick: PropTypes.func,\n onDoubleClick: PropTypes.func,\n onMouseDown: PropTypes.func.isRequired,\n onTouchStart: PropTypes.func.isRequired,\n onTouchEnd: PropTypes.func.isRequired,\n split: PropTypes.oneOf(['vertical', 'horizontal']),\n style: stylePropType,\n resizerClassName: PropTypes.string.isRequired\n};\nResizer.defaultProps = {\n resizerClassName: RESIZER_DEFAULT_CLASSNAME\n};\n\nfunction unFocus(document, window) {\n if (document.selection) {\n document.selection.empty();\n } else {\n try {\n window.getSelection().removeAllRanges(); // eslint-disable-next-line no-empty\n } catch (e) {}\n }\n}\n\nfunction getDefaultSize(defaultSize, minSize, maxSize, draggedSize) {\n if (typeof draggedSize === 'number') {\n var min = typeof minSize === 'number' ? minSize : 0;\n var max = typeof maxSize === 'number' && maxSize >= 0 ? maxSize : Infinity;\n return Math.max(min, Math.min(max, draggedSize));\n }\n\n if (defaultSize !== undefined) {\n return defaultSize;\n }\n\n return minSize;\n}\n\nfunction removeNullChildren(children) {\n return React.Children.toArray(children).filter(function (c) {\n return c;\n });\n}\n\nvar SplitPane = /*#__PURE__*/function (_React$Component) {\n _inherits(SplitPane, _React$Component);\n\n var _super = _createSuper(SplitPane);\n\n function SplitPane(props) {\n var _this;\n\n _classCallCheck(this, SplitPane);\n\n _this = _super.call(this, props);\n _this.onMouseDown = _this.onMouseDown.bind(_assertThisInitialized(_this));\n _this.onTouchStart = _this.onTouchStart.bind(_assertThisInitialized(_this));\n _this.onMouseMove = _this.onMouseMove.bind(_assertThisInitialized(_this));\n _this.onTouchMove = _this.onTouchMove.bind(_assertThisInitialized(_this));\n _this.onMouseUp = _this.onMouseUp.bind(_assertThisInitialized(_this)); // order of setting panel sizes.\n // 1. size\n // 2. getDefaultSize(defaultSize, minsize, maxSize)\n\n var size = props.size,\n defaultSize = props.defaultSize,\n minSize = props.minSize,\n maxSize = props.maxSize,\n primary = props.primary;\n var initialSize = size !== undefined ? size : getDefaultSize(defaultSize, minSize, maxSize, null);\n _this.state = {\n active: false,\n resized: false,\n pane1Size: primary === 'first' ? initialSize : undefined,\n pane2Size: primary === 'second' ? initialSize : undefined,\n // these are props that are needed in static functions. ie: gDSFP\n instanceProps: {\n size: size\n }\n };\n return _this;\n }\n\n _createClass(SplitPane, [{\n key: \"componentDidMount\",\n value: function componentDidMount() {\n document.addEventListener('mouseup', this.onMouseUp);\n document.addEventListener('mousemove', this.onMouseMove);\n document.addEventListener('touchmove', this.onTouchMove);\n this.setState(SplitPane.getSizeUpdate(this.props, this.state));\n }\n }, {\n key: \"componentWillUnmount\",\n value: function componentWillUnmount() {\n document.removeEventListener('mouseup', this.onMouseUp);\n document.removeEventListener('mousemove', this.onMouseMove);\n document.removeEventListener('touchmove', this.onTouchMove);\n }\n }, {\n key: \"onMouseDown\",\n value: function onMouseDown(event) {\n var eventWithTouches = Object.assign({}, event, {\n touches: [{\n clientX: event.clientX,\n clientY: event.clientY\n }]\n });\n this.onTouchStart(eventWithTouches);\n }\n }, {\n key: \"onTouchStart\",\n value: function onTouchStart(event) {\n var _this$props = this.props,\n allowResize = _this$props.allowResize,\n onDragStarted = _this$props.onDragStarted,\n split = _this$props.split;\n\n if (allowResize) {\n unFocus(document, window);\n var position = split === 'vertical' ? event.touches[0].clientX : event.touches[0].clientY;\n\n if (typeof onDragStarted === 'function') {\n onDragStarted();\n }\n\n this.setState({\n active: true,\n position: position\n });\n }\n }\n }, {\n key: \"onMouseMove\",\n value: function onMouseMove(event) {\n var eventWithTouches = Object.assign({}, event, {\n touches: [{\n clientX: event.clientX,\n clientY: event.clientY\n }]\n });\n this.onTouchMove(eventWithTouches);\n }\n }, {\n key: \"onTouchMove\",\n value: function onTouchMove(event) {\n var _this$props2 = this.props,\n allowResize = _this$props2.allowResize,\n maxSize = _this$props2.maxSize,\n minSize = _this$props2.minSize,\n onChange = _this$props2.onChange,\n split = _this$props2.split,\n step = _this$props2.step;\n var _this$state = this.state,\n active = _this$state.active,\n position = _this$state.position;\n\n if (allowResize && active) {\n unFocus(document, window);\n var isPrimaryFirst = this.props.primary === 'first';\n var ref = isPrimaryFirst ? this.pane1 : this.pane2;\n var ref2 = isPrimaryFirst ? this.pane2 : this.pane1;\n\n if (ref) {\n var node = ref;\n var node2 = ref2;\n\n if (node.getBoundingClientRect) {\n var width = node.getBoundingClientRect().width;\n var height = node.getBoundingClientRect().height;\n var current = split === 'vertical' ? event.touches[0].clientX : event.touches[0].clientY;\n var size = split === 'vertical' ? width : height;\n var positionDelta = position - current;\n\n if (step) {\n if (Math.abs(positionDelta) < step) {\n return;\n } // Integer division\n // eslint-disable-next-line no-bitwise\n\n\n positionDelta = ~~(positionDelta / step) * step;\n }\n\n var sizeDelta = isPrimaryFirst ? positionDelta : -positionDelta;\n var pane1Order = parseInt(window.getComputedStyle(node).order);\n var pane2Order = parseInt(window.getComputedStyle(node2).order);\n\n if (pane1Order > pane2Order) {\n sizeDelta = -sizeDelta;\n }\n\n var newMaxSize = maxSize;\n\n if (maxSize !== undefined && maxSize <= 0) {\n var splitPane = this.splitPane;\n\n if (split === 'vertical') {\n newMaxSize = splitPane.getBoundingClientRect().width + maxSize;\n } else {\n newMaxSize = splitPane.getBoundingClientRect().height + maxSize;\n }\n }\n\n var newSize = size - sizeDelta;\n var newPosition = position - positionDelta;\n\n if (newSize < minSize) {\n newSize = minSize;\n } else if (maxSize !== undefined && newSize > newMaxSize) {\n newSize = newMaxSize;\n } else {\n this.setState({\n position: newPosition,\n resized: true\n });\n }\n\n if (onChange) onChange(newSize);\n this.setState(_defineProperty({\n draggedSize: newSize\n }, isPrimaryFirst ? 'pane1Size' : 'pane2Size', newSize));\n }\n }\n }\n }\n }, {\n key: \"onMouseUp\",\n value: function onMouseUp() {\n var _this$props3 = this.props,\n allowResize = _this$props3.allowResize,\n onDragFinished = _this$props3.onDragFinished;\n var _this$state2 = this.state,\n active = _this$state2.active,\n draggedSize = _this$state2.draggedSize;\n\n if (allowResize && active) {\n if (typeof onDragFinished === 'function') {\n onDragFinished(draggedSize);\n }\n\n this.setState({\n active: false\n });\n }\n } // we have to check values since gDSFP is called on every render and more in StrictMode\n\n }, {\n key: \"render\",\n value: function render() {\n var _this2 = this;\n\n var _this$props4 = this.props,\n allowResize = _this$props4.allowResize,\n children = _this$props4.children,\n className = _this$props4.className,\n onResizerClick = _this$props4.onResizerClick,\n onResizerDoubleClick = _this$props4.onResizerDoubleClick,\n paneClassName = _this$props4.paneClassName,\n pane1ClassName = _this$props4.pane1ClassName,\n pane2ClassName = _this$props4.pane2ClassName,\n paneStyle = _this$props4.paneStyle,\n pane1StyleProps = _this$props4.pane1Style,\n pane2StyleProps = _this$props4.pane2Style,\n resizerClassName = _this$props4.resizerClassName,\n resizerStyle = _this$props4.resizerStyle,\n split = _this$props4.split,\n styleProps = _this$props4.style;\n var _this$state3 = this.state,\n pane1Size = _this$state3.pane1Size,\n pane2Size = _this$state3.pane2Size;\n var disabledClass = allowResize ? '' : 'disabled';\n var resizerClassNamesIncludingDefault = resizerClassName ? \"\".concat(resizerClassName, \" \").concat(RESIZER_DEFAULT_CLASSNAME) : resizerClassName;\n var notNullChildren = removeNullChildren(children);\n\n var style = _objectSpread2({\n display: 'flex',\n flex: 1,\n height: '100%',\n position: 'absolute',\n outline: 'none',\n overflow: 'hidden',\n MozUserSelect: 'text',\n WebkitUserSelect: 'text',\n msUserSelect: 'text',\n userSelect: 'text'\n }, styleProps);\n\n if (split === 'vertical') {\n Object.assign(style, {\n flexDirection: 'row',\n left: 0,\n right: 0\n });\n } else {\n Object.assign(style, {\n bottom: 0,\n flexDirection: 'column',\n minHeight: '100%',\n top: 0,\n width: '100%'\n });\n }\n\n var classes = ['SplitPane', className, split, disabledClass];\n\n var pane1Style = _objectSpread2({}, paneStyle, {}, pane1StyleProps);\n\n var pane2Style = _objectSpread2({}, paneStyle, {}, pane2StyleProps);\n\n var pane1Classes = ['Pane1', paneClassName, pane1ClassName].join(' ');\n var pane2Classes = ['Pane2', paneClassName, pane2ClassName].join(' ');\n return /*#__PURE__*/React.createElement(\"div\", {\n className: classes.join(' '),\n ref: function ref(node) {\n _this2.splitPane = node;\n },\n style: style\n }, /*#__PURE__*/React.createElement(Pane, {\n className: pane1Classes,\n key: \"pane1\",\n eleRef: function eleRef(node) {\n _this2.pane1 = node;\n },\n size: pane1Size,\n split: split,\n style: pane1Style\n }, notNullChildren[0]), /*#__PURE__*/React.createElement(Resizer, {\n className: disabledClass,\n onClick: onResizerClick,\n onDoubleClick: onResizerDoubleClick,\n onMouseDown: this.onMouseDown,\n onTouchStart: this.onTouchStart,\n onTouchEnd: this.onMouseUp,\n key: \"resizer\",\n resizerClassName: resizerClassNamesIncludingDefault,\n split: split,\n style: resizerStyle || {}\n }), /*#__PURE__*/React.createElement(Pane, {\n className: pane2Classes,\n key: \"pane2\",\n eleRef: function eleRef(node) {\n _this2.pane2 = node;\n },\n size: pane2Size,\n split: split,\n style: pane2Style\n }, notNullChildren[1]));\n }\n }], [{\n key: \"getDerivedStateFromProps\",\n value: function getDerivedStateFromProps(nextProps, prevState) {\n return SplitPane.getSizeUpdate(nextProps, prevState);\n }\n }, {\n key: \"getSizeUpdate\",\n value: function getSizeUpdate(props, state) {\n var newState = {};\n var instanceProps = state.instanceProps;\n\n if (instanceProps.size === props.size && props.size !== undefined) {\n return {};\n }\n\n var newSize = props.size !== undefined ? props.size : getDefaultSize(props.defaultSize, props.minSize, props.maxSize, state.draggedSize);\n\n if (props.size !== undefined) {\n newState.draggedSize = newSize;\n }\n\n var isPanel1Primary = props.primary === 'first';\n newState[isPanel1Primary ? 'pane1Size' : 'pane2Size'] = newSize;\n newState[isPanel1Primary ? 'pane2Size' : 'pane1Size'] = undefined;\n newState.instanceProps = {\n size: props.size\n };\n return newState;\n }\n }]);\n\n return SplitPane;\n}(React.Component);\n\nSplitPane.propTypes = {\n allowResize: PropTypes.bool,\n children: PropTypes.arrayOf(PropTypes.node).isRequired,\n className: PropTypes.string,\n primary: PropTypes.oneOf(['first', 'second']),\n minSize: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n maxSize: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n // eslint-disable-next-line react/no-unused-prop-types\n defaultSize: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n size: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n split: PropTypes.oneOf(['vertical', 'horizontal']),\n onDragStarted: PropTypes.func,\n onDragFinished: PropTypes.func,\n onChange: PropTypes.func,\n onResizerClick: PropTypes.func,\n onResizerDoubleClick: PropTypes.func,\n style: stylePropType,\n resizerStyle: stylePropType,\n paneClassName: PropTypes.string,\n pane1ClassName: PropTypes.string,\n pane2ClassName: PropTypes.string,\n paneStyle: stylePropType,\n pane1Style: stylePropType,\n pane2Style: stylePropType,\n resizerClassName: PropTypes.string,\n step: PropTypes.number\n};\nSplitPane.defaultProps = {\n allowResize: true,\n minSize: 50,\n primary: 'first',\n split: 'vertical',\n paneClassName: '',\n pane1ClassName: '',\n pane2ClassName: ''\n};\npolyfill(SplitPane);\n\nexport default SplitPane;\nexport { Pane };\n","import React from 'react';\nimport cn from 'bem-cn-lite';\nimport Button from '../../components/Button/Button';\n\nimport './TabbedContent.scss';\nimport {DropdownMenu, DropdownMenuItem} from '@gravity-ui/uikit';\n\nconst block = cn('yt-tabbed-content');\n\ninterface Props {\n className?: string;\n name: string;\n subTitle?: string;\n actions?: Array<DropdownMenuItem<unknown>>;\n actionAsDropdown?: boolean;\n children: React.ReactNode;\n contentClassName?: string;\n}\n\nexport default function TabbedContent(props: Props) {\n const {name, subTitle, actions, children, className, contentClassName, actionAsDropdown} =\n props;\n const growTitle = !subTitle;\n return (\n <div className={block(null, className)}>\n <div className={block('header')}>\n <span className={block('title', {growable: growTitle})} title={name}>\n {name}\n </span>\n {subTitle && (\n <React.Fragment>\n <span className={block('sub-title')} title={subTitle}>\n {subTitle}\n </span>\n </React.Fragment>\n )}\n {actions && <Actions actions={actions} useDropdown={Boolean(actionAsDropdown)} />}\n </div>\n <div className={block('content', contentClassName)}>{children}</div>\n </div>\n );\n}\n\nfunction Actions(props: {actions: Required<Props>['actions']; useDropdown: boolean}) {\n const {actions, useDropdown} = props;\n\n return !actions.length ? null : (\n <span className={block('actions')}>\n {useDropdown ? (\n <DropdownMenu items={actions} />\n ) : (\n actions.map(({text, icon, action}, index) => {\n return (\n <Button\n key={index}\n onClick={action}\n size={'m'}\n className={block('actions-item')}\n >\n {icon}\n {text}\n </Button>\n );\n })\n )}\n </span>\n );\n}\n","import React, {useRef} from 'react';\nimport cn from 'bem-cn-lite';\nimport SplitPane from 'react-split-pane';\n\nimport {DialogControlProps} from '../Dialog/Dialog.types';\nimport MonacoEditor from '../../components/MonacoEditor';\nimport Icon from '../../components/Icon/Icon';\n\nimport TabbedContent from './TabbedContent';\n\nimport './EditTextWithPreview.scss';\nimport {DropdownMenuItem} from '@gravity-ui/uikit';\nimport type {editor} from 'monaco-editor';\n\nconst DEFAULT_SIZE = 350;\nconst block = cn('edit-text-with-preview');\n\nexport type EditTextWithPreviewProps = DialogControlProps<\n {value: string | undefined},\n {\n className?: string;\n editorActions?: Array<DropdownMenuItem>;\n editorTitle?: string;\n editorSubTitle?: string;\n disabled?: boolean;\n\n editorLang: 'markdown' | 'json';\n renderPreview: (value?: string) => React.ReactElement;\n\n minHeight?: number;\n\n initialShowPreview?: boolean;\n }\n> & {initialSplitSize?: number | string};\n\nEditTextWithPreview.isEmpty = (value: EditTextWithPreviewProps['value']) => {\n return !value;\n};\n\nEditTextWithPreview.getDefaultValue = () => {\n return {value: undefined};\n};\n\nexport function EditTextWithPreview({\n value: valueProp,\n onChange: onChangeProp,\n editorLang,\n editorActions,\n className,\n editorTitle = 'Text',\n editorSubTitle,\n renderPreview,\n minHeight,\n initialShowPreview,\n disabled,\n initialSplitSize,\n}: EditTextWithPreviewProps) {\n const editorRef = useRef<editor.IStandaloneCodeEditor>();\n const {value} = valueProp;\n\n const [showPreview, setShowPreview] = React.useState(initialShowPreview);\n const togglePreview = React.useCallback(() => {\n setShowPreview(!showPreview);\n }, [setShowPreview, showPreview]);\n\n const showHideAction = {\n text: !showPreview ? 'Show preview' : 'Hide',\n icon: <Icon awesome={!showPreview ? 'eye' : 'eye-slash'} />,\n action: togglePreview,\n };\n\n const actions = showPreview ? editorActions : [...(editorActions ?? []), showHideAction];\n\n const onChange = React.useCallback(\n (value: string) => {\n onChangeProp({value});\n },\n [onChangeProp],\n );\n\n const left = (\n <TabbedContent\n key=\"editor\"\n className={block('panel', {growable: !showPreview})}\n contentClassName={block('left')}\n name={editorTitle}\n subTitle={editorSubTitle}\n actions={actions}\n actionAsDropdown={showPreview}\n >\n <MonacoEditor\n value={value || ''}\n language={editorLang}\n className={block('monaco')}\n onChange={onChange}\n readOnly={disabled}\n editorRef={editorRef}\n />\n </TabbedContent>\n );\n\n const sizeRef = React.useRef<number | string>(initialSplitSize || DEFAULT_SIZE);\n\n const style = React.useMemo(() => {\n return minHeight ? {minHeight} : undefined;\n }, [minHeight]);\n\n const divProps = {className: block(null, className), style: style};\n\n if (!showPreview) {\n return <div {...divProps}>{left}</div>;\n }\n\n return (\n <div {...divProps}>\n <SplitPane\n allowResize={true}\n minSize={160}\n maxSize={-160}\n defaultSize={sizeRef.current}\n onDragFinished={(size) => {\n sizeRef.current = size;\n }}\n {...{\n children: [\n left,\n !showPreview ? null : (\n <TabbedContent\n key=\"preview\"\n className={block('panel')}\n contentClassName={block('markdown')}\n name={'Preview'}\n actions={[showHideAction]}\n >\n {renderPreview ? renderPreview(value) : value}\n </TabbedContent>\n ),\n ],\n }}\n />\n </div>\n );\n}\n","import type {TabsOrientation} from './plugin/transform';\nimport type {TabsController} from './runtime/TabsController';\n\nexport const TABS_CLASSNAME = 'yfm-tabs';\nexport const TABS_VERTICAL_CLASSNAME = 'yfm-tabs-vertical';\nexport const TABS_LIST_CLASSNAME = 'yfm-tab-list';\nexport const TAB_CLASSNAME = 'yfm-tab';\nexport const TAB_PANEL_CLASSNAME = 'yfm-tab-panel';\nexport const ACTIVE_CLASSNAME = 'active';\nexport const VERTICAL_TAB_CLASSNAME = 'yfm-vertical-tab';\n\nexport const GROUP_DATA_KEY = 'data-diplodoc-group';\nexport const TAB_DATA_KEY = 'data-diplodoc-key';\nexport const TAB_DATA_ID = 'data-diplodoc-id';\nexport const TAB_DATA_VERTICAL_TAB = 'data-diplodoc-vertical-tab';\nexport const TAB_ACTIVE_KEY = 'data-diplodoc-is-active';\nexport const TAB_RADIO_KEY = 'data-diplodoc-input';\n\nexport const DEFAULT_TABS_GROUP_PREFIX = 'defaultTabsGroup-';\n\nexport interface Tab {\n group?: string;\n key: string;\n align: TabsOrientation;\n}\n\nexport interface SelectedTabEvent {\n tab: Tab;\n currentTabId?: string;\n}\n\nexport const GLOBAL_SYMBOL: unique symbol = Symbol.for('diplodocTabs');\n\ndeclare global {\n interface Window {\n [GLOBAL_SYMBOL]: TabsController;\n }\n}\n","export const getEventTarget = (event: Event) => {\n const path = event.composedPath();\n return Array.isArray(path) && path.length > 0 ? path[0] : event.target;\n};\n\nexport const isCustom = (event: Event) => {\n const target = getEventTarget(event);\n return !target || !(target as HTMLElement).matches;\n};\n\nexport const getClosestScrollableParent = (element: HTMLElement): HTMLElement | undefined => {\n if (Math.abs(element.scrollHeight - element.clientHeight) > 1) {\n return element;\n }\n\n return element.parentElement ? getClosestScrollableParent(element.parentElement) : undefined;\n};\n\nexport interface ElementOffset {\n top: number;\n left: number;\n scrollTop: number;\n scrollLeft: number;\n}\n\nexport const getOffsetByScrollableParent = (\n element: HTMLElement,\n scrollableParent: HTMLElement,\n): ElementOffset => {\n const elementBounds = element.getBoundingClientRect();\n const scrollableParentBounds = scrollableParent.getBoundingClientRect();\n return {\n top: elementBounds.top - scrollableParentBounds.top,\n left: elementBounds.left - scrollableParentBounds.left,\n scrollTop: scrollableParent.scrollTop,\n scrollLeft: scrollableParent.scrollLeft,\n };\n};\n","import {\n ACTIVE_CLASSNAME,\n DEFAULT_TABS_GROUP_PREFIX,\n GROUP_DATA_KEY,\n SelectedTabEvent,\n TABS_CLASSNAME,\n TABS_LIST_CLASSNAME,\n TABS_VERTICAL_CLASSNAME,\n TAB_CLASSNAME,\n TAB_DATA_ID,\n TAB_DATA_KEY,\n TAB_PANEL_CLASSNAME,\n Tab,\n} from '../common';\nimport type {TabsOrientation} from '../plugin/transform';\nimport {\n ElementOffset,\n getClosestScrollableParent,\n getEventTarget,\n getOffsetByScrollableParent,\n isCustom,\n} from './utils';\n\nconst Selector = {\n TABS: `.${TABS_CLASSNAME}`,\n TAB_LIST: `.${TABS_LIST_CLASSNAME}`,\n TAB: `.${TAB_CLASSNAME}`,\n TAB_PANEL: `.${TAB_PANEL_CLASSNAME}`,\n VERTICAL_TABS: `.${TABS_VERTICAL_CLASSNAME}`,\n};\n\nexport interface ISelectTabByIdOptions {\n scrollToElement: boolean;\n}\n\ntype Handler = (data: SelectedTabEvent) => void;\n\ntype TabSwitchDirection = 'left' | 'right';\n\nexport class TabsController {\n private _document: Document;\n\n private _onSelectTabHandlers: Set<Handler> = new Set();\n\n constructor(document: Document) {\n this._document = document;\n this._document.addEventListener('click', (event) => {\n const target = getEventTarget(event) as HTMLElement;\n const areVertical = this.areTabsVertical(target);\n\n if (isCustom(event)) {\n return;\n }\n\n if (!(this.isValidTabElement(target) || areVertical)) {\n return;\n }\n\n const tab = this.getTabDataFromHTMLElement(target);\n\n if (tab) {\n this._selectTab(tab, target);\n }\n });\n this._document.addEventListener('keydown', (event) => {\n let direction: TabSwitchDirection | null = null;\n switch (event.key) {\n case 'ArrowLeft': {\n direction = 'left';\n break;\n }\n case 'ArrowRight': {\n direction = 'right';\n break;\n }\n }\n if (!direction) {\n return;\n }\n\n const target = getEventTarget(event) as HTMLElement;\n\n if (isCustom(event) || !this.isValidTabElement(target)) {\n return;\n }\n\n const {tabs, nodes} = this.getTabs(target);\n const currentTab = this.getTabDataFromHTMLElement(target);\n const currentTabIndex = tabs.findIndex(\n ({key}) => currentTab?.key && key === currentTab.key,\n );\n if (!currentTab || tabs.length <= 1 || currentTabIndex === -1) {\n return;\n }\n\n const newIndex =\n (currentTabIndex + (direction === 'left' ? -1 : 1) + tabs.length) % tabs.length;\n\n this.selectTab(tabs[newIndex]);\n nodes[newIndex].focus();\n });\n }\n\n onSelectTab(handler: Handler) {\n this._onSelectTabHandlers.add(handler);\n\n return () => {\n this._onSelectTabHandlers.delete(handler);\n };\n }\n\n selectTabById(id: string, options?: ISelectTabByIdOptions) {\n const target = this._document.querySelector(\n `${Selector.TAB}[${TAB_DATA_ID}=\"${id}\"]`,\n ) as HTMLElement;\n\n if (!target || !this.isValidTabElement(target)) {\n return;\n }\n\n const tab = this.getTabDataFromHTMLElement(target);\n\n if (tab) {\n this._selectTab(tab, target);\n }\n\n if (options?.scrollToElement) {\n target.scrollIntoView();\n }\n }\n\n selectTab(tab: Tab) {\n this._selectTab(tab);\n }\n\n private _selectTab(tab: Tab, targetTab?: HTMLElement) {\n const {group, key, align} = tab;\n\n if (!group) {\n return;\n }\n\n const scrollableParent = targetTab && getClosestScrollableParent(targetTab);\n const previousTargetOffset =\n scrollableParent && getOffsetByScrollableParent(targetTab, scrollableParent);\n\n const updatedTabs = this.updateHTML({group, key, align}, align);\n\n if (updatedTabs > 0) {\n this.fireSelectTabEvent({group, key, align}, targetTab?.dataset.diplodocId);\n\n if (previousTargetOffset) {\n this.resetScroll(targetTab, scrollableParent, previousTargetOffset);\n }\n }\n }\n\n private updateHTML(tab: Required<Tab>, align: TabsOrientation) {\n switch (align) {\n case 'vertical': {\n return this.updateHTMLVertical(tab);\n }\n case 'horizontal': {\n return this.updateHTMLHorizontal(tab);\n }\n }\n\n return 0;\n }\n\n private updateHTMLVertical(tab: Required<Tab>) {\n const {group, key} = tab;\n\n const [tabs] = this._document.querySelectorAll(\n `${Selector.TABS}[${GROUP_DATA_KEY}=\"${group}\"] ${Selector.TAB}[${TAB_DATA_KEY}=\"${key}\"]`,\n );\n\n let updated = 0;\n const root = tabs.parentNode!;\n const elements = root.children;\n\n for (let i = 0; i < elements.length; i += 2) {\n const [title, content] = [elements.item(i), elements.item(i + 1)] as HTMLElement[];\n\n const input = title.children.item(0) as HTMLInputElement;\n\n if (input.hasAttribute('checked')) {\n title.classList.remove('active');\n content?.classList.remove('active');\n input.removeAttribute('checked');\n }\n\n if (title === tabs) {\n title.classList.add('active');\n content?.classList.add('active');\n input.setAttribute('checked', 'true');\n }\n\n updated++;\n }\n\n return updated;\n }\n\n private updateHTMLHorizontal(tab: Required<Tab>) {\n const {group, key} = tab;\n\n const tabs = this._document.querySelectorAll(\n `${Selector.TABS}[${GROUP_DATA_KEY}=\"${group}\"] ${Selector.TAB}[${TAB_DATA_KEY}=\"${key}\"]`,\n );\n\n let updated = 0;\n\n tabs.forEach((element) => {\n const htmlElem = element as HTMLElement;\n if (!this.isValidTabElement(htmlElem) || htmlElem.dataset.diplodocIsActive === 'true') {\n return;\n }\n\n updated++;\n\n const tab = element;\n const tabList = tab.parentNode;\n const tabsContainer = tabList?.parentNode;\n const allTabs = Array.from(tabList?.querySelectorAll(Selector.TAB) || []);\n const allPanels = Array.from(tabsContainer?.children || []).filter((node) =>\n node.classList.contains(TAB_PANEL_CLASSNAME),\n );\n const targetIndex = allTabs.indexOf(tab);\n\n allTabs.forEach((tab, i) => {\n const panel = allPanels[i];\n const isTargetTab = i === targetIndex;\n const htmlElem = tab as HTMLElement;\n\n htmlElem.dataset.diplodocIsActive = isTargetTab ? 'true' : 'false';\n\n tab.classList.toggle(ACTIVE_CLASSNAME, isTargetTab);\n tab.setAttribute('aria-selected', isTargetTab.toString());\n tab.setAttribute('tabindex', isTargetTab ? '0' : '-1');\n panel.classList.toggle(ACTIVE_CLASSNAME, isTargetTab);\n });\n });\n\n return updated;\n }\n\n private resetScroll(\n target: HTMLElement,\n scrollableParent: HTMLElement,\n previousTargetOffset: ElementOffset,\n ) {\n const targetOffset = getOffsetByScrollableParent(target, scrollableParent);\n const topDelta = targetOffset.top - previousTargetOffset.top;\n const leftDelta = targetOffset.left - previousTargetOffset.left;\n const scrollTopDelta = targetOffset.scrollTop - previousTargetOffset.scrollTop;\n const scrollLeftDelta = targetOffset.scrollLeft - previousTargetOffset.scrollLeft;\n scrollableParent.scrollTo(\n scrollableParent.scrollLeft + leftDelta - scrollLeftDelta,\n scrollableParent.scrollTop + topDelta - scrollTopDelta,\n );\n }\n\n private fireSelectTabEvent(tab: Required<Tab>, diplodocId?: string) {\n const {group, key, align} = tab;\n\n const eventTab: Tab = group.startsWith(DEFAULT_TABS_GROUP_PREFIX) ? {key, align} : tab;\n\n this._onSelectTabHandlers.forEach((handler) => {\n handler({tab: eventTab, currentTabId: diplodocId});\n });\n }\n\n private isValidTabElement(element: HTMLElement) {\n const tabList =\n element.matches(Selector.TAB) && element.dataset.diplodocId\n ? element.closest(Selector.TAB_LIST)\n : null;\n\n return tabList?.closest(Selector.TABS);\n }\n\n private areTabsVertical(target: HTMLElement) {\n const parent = target.parentElement;\n\n return target.dataset.diplodocVerticalTab || Boolean(parent?.dataset.diplodocVerticalTab);\n }\n\n private getTabDataFromHTMLElement(target: HTMLElement): Tab | null {\n if (this.areTabsVertical(target)) {\n const tab = target.dataset.diplodocVerticalTab ? target : target.parentElement!;\n\n const key = tab.dataset.diplodocKey;\n const group = (tab.closest(Selector.TABS) as HTMLElement)?.dataset.diplodocGroup;\n return key && group ? {group, key, align: 'vertical'} : null;\n }\n\n const key = target.dataset.diplodocKey;\n const group = (target.closest(Selector.TABS) as HTMLElement)?.dataset.diplodocGroup;\n return key && group ? {group, key, align: 'horizontal'} : null;\n }\n\n private getTabs(target: HTMLElement): {tabs: Tab[]; nodes: NodeListOf<HTMLElement>} {\n const group = (target.closest(Selector.TABS) as HTMLElement)?.dataset.diplodocGroup;\n const nodes = (\n target.closest(Selector.TAB_LIST) as HTMLElement\n )?.querySelectorAll<HTMLElement>(Selector.TAB);\n\n const tabs: Tab[] = [];\n nodes.forEach((tabEl) => {\n const key = tabEl?.dataset.diplodocKey;\n if (!key) {\n return;\n }\n\n /** horizontal-only supported feature (used in left/right button click) */\n tabs.push({\n group,\n key,\n align: 'horizontal',\n });\n });\n\n return {tabs, nodes};\n }\n}\n","'use strict';\n\n// Node getRootNode(optional GetRootNodeOptions options);\n\n/**\n * Returns the context object’s shadow-including root if options’s composed is true.\n * Returns the context object’s root otherwise.\n *\n * The root of an object is itself, if its parent is null, or else it is the root of its parent.\n *\n * The shadow-including root of an object is its root’s host’s shadow-including root,\n * if the object’s root is a shadow root, and its root otherwise.\n *\n * https://dom.spec.whatwg.org/#dom-node-getrootnode\n *\n * @memberof Node.prototype\n * @param {!Object} [opt = {}] - Options.\n * @param {!boolean} [opt.composed] - See above description.\n * @returns {!Node} The root node.\n */\nfunction getRootNode(opt) {\n var composed = typeof opt === 'object' && Boolean(opt.composed);\n\n return composed ? getShadowIncludingRoot(this) : getRoot(this);\n}\n\nfunction getShadowIncludingRoot(node) {\n var root = getRoot(node);\n\n if (isShadowRoot(root)) {\n return getShadowIncludingRoot(root.host);\n }\n\n return root;\n}\n\nfunction getRoot(node) {\n if (node.parentNode != null) {\n return getRoot(node.parentNode);\n }\n\n return node;\n}\n\nfunction isShadowRoot(node) {\n return node.nodeName === '#document-fragment' && node.constructor.name === 'ShadowRoot';\n}\n\nif (typeof module === 'object' && module.exports) {\n module.exports = getRootNode;\n}\n","import {GLOBAL_SYMBOL} from '../common';\nimport {TabsController} from './TabsController';\nimport './scss/tabs.scss';\n\nif (typeof window !== 'undefined' && typeof document !== 'undefined' && !window[GLOBAL_SYMBOL]) {\n window[GLOBAL_SYMBOL] = new TabsController(document);\n}\n","import getRootNode from 'get-root-node-polyfill';\n\nif (typeof document !== 'undefined') {\n // matches polyfill for old edge\n (function (e) {\n const matches =\n e.matches ||\n e.matchesSelector ||\n e.webkitMatchesSelector ||\n e.mozMatchesSelector ||\n e.msMatchesSelector ||\n e.oMatchesSelector;\n\n if (matches) {\n e.matches = e.matchesSelector = matches;\n } else {\n e.matches = e.matchesSelector = function matches(selector) {\n const rootNode = e.getRootNode ? e.getRootNode() : getRootNode.call(e);\n const matches = rootNode.querySelectorAll(selector);\n const th = this;\n return Array.prototype.some.call(matches, (e) => {\n return e === th;\n });\n };\n }\n })(Element.prototype);\n}\n","export const getEventTarget = (event: Event) => {\n const path = event.composedPath();\n return Array.isArray(path) && path.length > 0 ? path[0] : event.target;\n};\n\nexport const isCustom = (event: Event) => {\n const target = getEventTarget(event);\n return !target || !(target as HTMLElement).matches;\n};\n","import {getEventTarget, isCustom} from './utils';\n\nconst BUTTON_SELECTOR = '.yfm-clipboard-button';\n\nfunction copyToClipboard(text: string) {\n if (!text) {\n return Promise.resolve();\n }\n\n if (navigator.clipboard && typeof navigator.clipboard.writeText) {\n return navigator.clipboard.writeText(text);\n }\n const textarea = document.createElement('textarea');\n textarea.setAttribute('style', 'position: absolute; left: 1000%');\n textarea.textContent = text;\n document.body.append(textarea);\n\n textarea.select();\n document.execCommand('copy');\n\n document.body.removeChild(textarea);\n\n return Promise.resolve();\n}\n\nfunction notifySuccess(svgButton: HTMLElement | null) {\n if (!svgButton) {\n return;\n }\n\n const id = svgButton.getAttribute('data-animation');\n // @ts-expect-error\n const icon = svgButton.getRootNode().getElementById(`visibileAnimation-${id}`);\n\n if (!icon) {\n return;\n }\n\n icon.beginElement();\n}\n\nif (typeof document !== 'undefined') {\n document.addEventListener('click', (event) => {\n const target = getEventTarget(event) as HTMLElement;\n\n if (isCustom(event) || !target.matches(BUTTON_SELECTOR)) {\n return;\n }\n\n const parent = target.parentNode;\n\n if (!parent) {\n return;\n }\n\n const code = parent.querySelector<HTMLElement>('pre code');\n if (!code) {\n return;\n }\n\n copyToClipboard(code.innerText).then(() => {\n notifySuccess(parent.querySelector('.yfm-clipboard-button'));\n });\n });\n}\n","import {getEventTarget, isCustom} from './utils';\n\nconst Selector = {\n CUT: '.yfm .yfm-cut',\n TITLE: '.yfm .yfm-cut-title',\n CONTENT: '.yfm .yfm-cut-content',\n};\n\nconst ClassName = {\n OPEN: 'open',\n};\n\nfunction toggleCut(element: HTMLElement) {\n const cutNode = element.parentNode;\n\n if (!(cutNode instanceof HTMLElement)) {\n return;\n }\n\n cutNode.classList.toggle(ClassName.OPEN);\n}\n\nfunction matchTitle(target: EventTarget | null) {\n if (!(target instanceof HTMLElement)) {\n return false;\n }\n\n return target?.matches?.(Selector.TITLE);\n}\n\nfunction findTitleInPath(event: MouseEvent): HTMLElement | undefined {\n const target = getEventTarget(event);\n\n if (matchTitle(target)) {\n return target as HTMLElement;\n }\n\n const path = event.composedPath?.();\n\n return path?.find(matchTitle) as HTMLElement | undefined;\n}\n\nif (typeof document !== 'undefined') {\n document.addEventListener('click', (event) => {\n if (isCustom(event)) {\n return;\n }\n\n const title = findTitleInPath(event);\n\n if (!title) {\n return;\n }\n\n toggleCut(title);\n });\n}\n","export const Selector = {\n TITLE: '.yfm .yfm-term_title',\n CONTENT: '.yfm .yfm-term_dfn',\n};\nexport const openClass = 'open';\nexport const openDefinitionClass = Selector.CONTENT.replace(/\\./g, '') + ' ' + openClass;\nlet isListenerNeeded = true;\n\nexport function createDefinitionElement(termElement: HTMLElement) {\n const termKey = termElement.getAttribute('term-key');\n const definitionTemplate = document.getElementById(\n `${termKey}_template`,\n ) as HTMLTemplateElement;\n const definitionElement = definitionTemplate?.content.cloneNode(true).firstChild as HTMLElement;\n\n definitionTemplate?.parentElement?.appendChild(definitionElement);\n definitionTemplate.remove();\n\n return definitionElement;\n}\n\nexport function setDefinitionId(definitionElement: HTMLElement, termElement: HTMLElement): void {\n const termId = termElement.getAttribute('id') || Math.random().toString(36).substr(2, 8);\n definitionElement?.setAttribute('term-id', termId);\n}\n\nexport function setDefinitionPosition(\n definitionElement: HTMLElement,\n termElement: HTMLElement,\n): void {\n const {\n x: termX,\n y: termY,\n right: termRight,\n left: termLeft,\n width: termWidth,\n height: termHeight,\n } = termElement.getBoundingClientRect();\n\n const termParent = termParentElement(termElement);\n\n if (!termParent) {\n return;\n }\n\n const {right: termParentRight, left: termParentLeft} = termParent.getBoundingClientRect();\n\n if ((termParentRight < termLeft || termParentLeft > termRight) && !isListenerNeeded) {\n closeDefinition(definitionElement);\n return;\n }\n\n if (isListenerNeeded && termParent) {\n termParent.addEventListener('scroll', termOnResize);\n isListenerNeeded = false;\n }\n\n const relativeX = Number(definitionElement.getAttribute('relativeX'));\n const relativeY = Number(definitionElement.getAttribute('relativeY'));\n\n if (relativeX === termX && relativeY === termY) {\n return;\n }\n\n definitionElement.setAttribute('relativeX', String(termX));\n definitionElement.setAttribute('relativeY', String(termY));\n\n const offsetTop = termHeight + 5;\n const definitionParent = definitionElement.parentElement;\n\n if (!definitionParent) {\n return;\n }\n\n const {width: definitionWidth} = definitionElement.getBoundingClientRect();\n const {left: definitionParentLeft} = definitionParent.getBoundingClientRect();\n\n // If definition not fit document change base alignment\n const definitionLeftCoordinate = Number(getCoords(termElement).left);\n const definitionRightCoordinate = definitionWidth + definitionLeftCoordinate;\n\n const definitionOutOfScreenOnLeft = definitionLeftCoordinate - definitionWidth < 0;\n const definitionOutOfScreenOnRight = definitionRightCoordinate > document.body.clientWidth;\n\n const isAlignSwapped = definitionOutOfScreenOnRight || document.dir === 'rtl';\n const fitDefinitionDocument =\n isAlignSwapped && !definitionOutOfScreenOnLeft ? definitionWidth - termWidth : 0;\n const customHeaderTop = getCoords(definitionParent).top - definitionParent.offsetTop;\n\n definitionElement.style.top =\n Number(getCoords(termElement).top + offsetTop - customHeaderTop) + 'px';\n definitionElement.style.left =\n Number(\n getCoords(termElement).left -\n definitionParentLeft +\n definitionParent.offsetLeft -\n fitDefinitionDocument,\n ) + 'px';\n}\n\nfunction termOnResize() {\n const openDefinition = document.getElementsByClassName(openDefinitionClass)[0] as HTMLElement;\n\n if (!openDefinition) {\n return;\n }\n const termId = openDefinition.getAttribute('term-id') || '';\n const termElement = document.getElementById(termId);\n\n if (!termElement) {\n return;\n }\n\n setDefinitionPosition(openDefinition, termElement);\n}\n\nfunction termParentElement(term: HTMLElement | null) {\n if (!term) {\n return null;\n }\n\n const closestScrollableParent = term.closest('table') || term.closest('code');\n\n return closestScrollableParent || term.parentElement;\n}\n\nexport function closeDefinition(definition: HTMLElement) {\n definition.classList.remove(openClass);\n const termId = definition.getAttribute('term-id') || '';\n const termParent = termParentElement(document.getElementById(termId));\n\n if (!termParent) {\n return;\n }\n\n termParent.removeEventListener('scroll', termOnResize);\n isListenerNeeded = true;\n}\n\nfunction getCoords(elem: HTMLElement) {\n const box = elem.getBoundingClientRect();\n\n const body = document.body;\n const docEl = document.documentElement;\n\n const scrollTop = window.pageYOffset || docEl.scrollTop || body.scrollTop;\n const scrollLeft = window.pageXOffset || docEl.scrollLeft || body.scrollLeft;\n\n const clientTop = docEl.clientTop || body.clientTop || 0;\n const clientLeft = docEl.clientLeft || body.clientLeft || 0;\n\n const top = box.top + scrollTop - clientTop;\n const left = box.left + scrollLeft - clientLeft;\n\n return {top: Math.round(top), left: Math.round(left)};\n}\n","import {\n Selector,\n closeDefinition,\n createDefinitionElement,\n openClass,\n openDefinitionClass,\n setDefinitionId,\n setDefinitionPosition,\n} from './utils';\nimport {getEventTarget, isCustom} from '../utils';\n\nif (typeof document !== 'undefined') {\n document.addEventListener('click', (event) => {\n const openDefinition = document.getElementsByClassName(\n openDefinitionClass,\n )[0] as HTMLElement;\n const target = getEventTarget(event) as HTMLElement;\n\n const termId = target.getAttribute('id');\n const termKey = target.getAttribute('term-key');\n let definitionElement = document.getElementById(termKey + '_element');\n\n if (termKey && !definitionElement) {\n definitionElement = createDefinitionElement(target);\n }\n\n const isSameTerm = openDefinition && termId === openDefinition.getAttribute('term-id');\n if (isSameTerm) {\n closeDefinition(openDefinition);\n return;\n }\n\n const isTargetDefinitionContent = target.closest(\n [Selector.CONTENT.replace(' ', ''), openClass].join('.'),\n );\n\n if (openDefinition && !isTargetDefinitionContent) {\n closeDefinition(openDefinition);\n }\n\n if (isCustom(event) || !target.matches(Selector.TITLE) || !definitionElement) {\n return;\n }\n\n setDefinitionId(definitionElement, target);\n setDefinitionPosition(definitionElement, target);\n\n definitionElement.classList.toggle(openClass);\n });\n\n document.addEventListener('keydown', (event) => {\n const openDefinition = document.getElementsByClassName(\n openDefinitionClass,\n )[0] as HTMLElement;\n if (event.key === 'Escape' && openDefinition) {\n closeDefinition(openDefinition);\n }\n });\n\n window.addEventListener('resize', () => {\n const openDefinition = document.getElementsByClassName(\n openDefinitionClass,\n )[0] as HTMLElement;\n\n if (!openDefinition) {\n return;\n }\n\n const termId = openDefinition.getAttribute('term-id') || '';\n const termElement = document.getElementById(termId);\n\n if (!termElement) {\n openDefinition.classList.toggle(openClass);\n return;\n }\n\n setDefinitionPosition(openDefinition, termElement);\n });\n}\n","// GENERATED DO NOT EDIT\nmodule.exports = [\n \"alignContent\",\n \"MozAlignContent\",\n \"WebkitAlignContent\",\n \"MSAlignContent\",\n \"OAlignContent\",\n \"alignItems\",\n \"MozAlignItems\",\n \"WebkitAlignItems\",\n \"MSAlignItems\",\n \"OAlignItems\",\n \"alignSelf\",\n \"MozAlignSelf\",\n \"WebkitAlignSelf\",\n \"MSAlignSelf\",\n \"OAlignSelf\",\n \"all\",\n \"MozAll\",\n \"WebkitAll\",\n \"MSAll\",\n \"OAll\",\n \"animation\",\n \"MozAnimation\",\n \"WebkitAnimation\",\n \"MSAnimation\",\n \"OAnimation\",\n \"animationDelay\",\n \"MozAnimationDelay\",\n \"WebkitAnimationDelay\",\n \"MSAnimationDelay\",\n \"OAnimationDelay\",\n \"animationDirection\",\n \"MozAnimationDirection\",\n \"WebkitAnimationDirection\",\n \"MSAnimationDirection\",\n \"OAnimationDirection\",\n \"animationDuration\",\n \"MozAnimationDuration\",\n \"WebkitAnimationDuration\",\n \"MSAnimationDuration\",\n \"OAnimationDuration\",\n \"animationFillMode\",\n \"MozAnimationFillMode\",\n \"WebkitAnimationFillMode\",\n \"MSAnimationFillMode\",\n \"OAnimationFillMode\",\n \"animationIterationCount\",\n \"MozAnimationIterationCount\",\n \"WebkitAnimationIterationCount\",\n \"MSAnimationIterationCount\",\n \"OAnimationIterationCount\",\n \"animationName\",\n \"MozAnimationName\",\n \"WebkitAnimationName\",\n \"MSAnimationName\",\n \"OAnimationName\",\n \"animationPlayState\",\n \"MozAnimationPlayState\",\n \"WebkitAnimationPlayState\",\n \"MSAnimationPlayState\",\n \"OAnimationPlayState\",\n \"animationTimingFunction\",\n \"MozAnimationTimingFunction\",\n \"WebkitAnimationTimingFunction\",\n \"MSAnimationTimingFunction\",\n \"OAnimationTimingFunction\",\n \"backfaceVisibility\",\n \"MozBackfaceVisibility\",\n \"WebkitBackfaceVisibility\",\n \"MSBackfaceVisibility\",\n \"OBackfaceVisibility\",\n \"background\",\n \"MozBackground\",\n \"WebkitBackground\",\n \"MSBackground\",\n \"OBackground\",\n \"backgroundAttachment\",\n \"MozBackgroundAttachment\",\n \"WebkitBackgroundAttachment\",\n \"MSBackgroundAttachment\",\n \"OBackgroundAttachment\",\n \"backgroundBlendMode\",\n \"MozBackgroundBlendMode\",\n \"WebkitBackgroundBlendMode\",\n \"MSBackgroundBlendMode\",\n \"OBackgroundBlendMode\",\n \"backgroundClip\",\n \"MozBackgroundClip\",\n \"WebkitBackgroundClip\",\n \"MSBackgroundClip\",\n \"OBackgroundClip\",\n \"backgroundColor\",\n \"MozBackgroundColor\",\n \"WebkitBackgroundColor\",\n \"MSBackgroundColor\",\n \"OBackgroundColor\",\n \"backgroundImage\",\n \"MozBackgroundImage\",\n \"WebkitBackgroundImage\",\n \"MSBackgroundImage\",\n \"OBackgroundImage\",\n \"backgroundOrigin\",\n \"MozBackgroundOrigin\",\n \"WebkitBackgroundOrigin\",\n \"MSBackgroundOrigin\",\n \"OBackgroundOrigin\",\n \"backgroundPosition\",\n \"MozBackgroundPosition\",\n \"WebkitBackgroundPosition\",\n \"MSBackgroundPosition\",\n \"OBackgroundPosition\",\n \"backgroundRepeat\",\n \"MozBackgroundRepeat\",\n \"WebkitBackgroundRepeat\",\n \"MSBackgroundRepeat\",\n \"OBackgroundRepeat\",\n \"backgroundSize\",\n \"MozBackgroundSize\",\n \"WebkitBackgroundSize\",\n \"MSBackgroundSize\",\n \"OBackgroundSize\",\n \"blockSize\",\n \"MozBlockSize\",\n \"WebkitBlockSize\",\n \"MSBlockSize\",\n \"OBlockSize\",\n \"border\",\n \"MozBorder\",\n \"WebkitBorder\",\n \"MSBorder\",\n \"OBorder\",\n \"borderBlockEnd\",\n \"MozBorderBlockEnd\",\n \"WebkitBorderBlockEnd\",\n \"MSBorderBlockEnd\",\n \"OBorderBlockEnd\",\n \"borderBlockEndColor\",\n \"MozBorderBlockEndColor\",\n \"WebkitBorderBlockEndColor\",\n \"MSBorderBlockEndColor\",\n \"OBorderBlockEndColor\",\n \"borderBlockEndStyle\",\n \"MozBorderBlockEndStyle\",\n \"WebkitBorderBlockEndStyle\",\n \"MSBorderBlockEndStyle\",\n \"OBorderBlockEndStyle\",\n \"borderBlockEndWidth\",\n \"MozBorderBlockEndWidth\",\n \"WebkitBorderBlockEndWidth\",\n \"MSBorderBlockEndWidth\",\n \"OBorderBlockEndWidth\",\n \"borderBlockStart\",\n \"MozBorderBlockStart\",\n \"WebkitBorderBlockStart\",\n \"MSBorderBlockStart\",\n \"OBorderBlockStart\",\n \"borderBlockStartColor\",\n \"MozBorderBlockStartColor\",\n \"WebkitBorderBlockStartColor\",\n \"MSBorderBlockStartColor\",\n \"OBorderBlockStartColor\",\n \"borderBlockStartStyle\",\n \"MozBorderBlockStartStyle\",\n \"WebkitBorderBlockStartStyle\",\n \"MSBorderBlockStartStyle\",\n \"OBorderBlockStartStyle\",\n \"borderBlockStartWidth\",\n \"MozBorderBlockStartWidth\",\n \"WebkitBorderBlockStartWidth\",\n \"MSBorderBlockStartWidth\",\n \"OBorderBlockStartWidth\",\n \"borderBottom\",\n \"MozBorderBottom\",\n \"WebkitBorderBottom\",\n \"MSBorderBottom\",\n \"OBorderBottom\",\n \"borderBottomColor\",\n \"MozBorderBottomColor\",\n \"WebkitBorderBottomColor\",\n \"MSBorderBottomColor\",\n \"OBorderBottomColor\",\n \"borderBottomLeftRadius\",\n \"MozBorderBottomLeftRadius\",\n \"WebkitBorderBottomLeftRadius\",\n \"MSBorderBottomLeftRadius\",\n \"OBorderBottomLeftRadius\",\n \"borderBottomRightRadius\",\n \"MozBorderBottomRightRadius\",\n \"WebkitBorderBottomRightRadius\",\n \"MSBorderBottomRightRadius\",\n \"OBorderBottomRightRadius\",\n \"borderBottomStyle\",\n \"MozBorderBottomStyle\",\n \"WebkitBorderBottomStyle\",\n \"MSBorderBottomStyle\",\n \"OBorderBottomStyle\",\n \"borderBottomWidth\",\n \"MozBorderBottomWidth\",\n \"WebkitBorderBottomWidth\",\n \"MSBorderBottomWidth\",\n \"OBorderBottomWidth\",\n \"borderCollapse\",\n \"MozBorderCollapse\",\n \"WebkitBorderCollapse\",\n \"MSBorderCollapse\",\n \"OBorderCollapse\",\n \"borderColor\",\n \"MozBorderColor\",\n \"WebkitBorderColor\",\n \"MSBorderColor\",\n \"OBorderColor\",\n \"borderImage\",\n \"MozBorderImage\",\n \"WebkitBorderImage\",\n \"MSBorderImage\",\n \"OBorderImage\",\n \"borderImageOutset\",\n \"MozBorderImageOutset\",\n \"WebkitBorderImageOutset\",\n \"MSBorderImageOutset\",\n \"OBorderImageOutset\",\n \"borderImageRepeat\",\n \"MozBorderImageRepeat\",\n \"WebkitBorderImageRepeat\",\n \"MSBorderImageRepeat\",\n \"OBorderImageRepeat\",\n \"borderImageSlice\",\n \"MozBorderImageSlice\",\n \"WebkitBorderImageSlice\",\n \"MSBorderImageSlice\",\n \"OBorderImageSlice\",\n \"borderImageSource\",\n \"MozBorderImageSource\",\n \"WebkitBorderImageSource\",\n \"MSBorderImageSource\",\n \"OBorderImageSource\",\n \"borderImageWidth\",\n \"MozBorderImageWidth\",\n \"WebkitBorderImageWidth\",\n \"MSBorderImageWidth\",\n \"OBorderImageWidth\",\n \"borderInlineEnd\",\n \"MozBorderInlineEnd\",\n \"WebkitBorderInlineEnd\",\n \"MSBorderInlineEnd\",\n \"OBorderInlineEnd\",\n \"borderInlineEndColor\",\n \"MozBorderInlineEndColor\",\n \"WebkitBorderInlineEndColor\",\n \"MSBorderInlineEndColor\",\n \"OBorderInlineEndColor\",\n \"borderInlineEndStyle\",\n \"MozBorderInlineEndStyle\",\n \"WebkitBorderInlineEndStyle\",\n \"MSBorderInlineEndStyle\",\n \"OBorderInlineEndStyle\",\n \"borderInlineEndWidth\",\n \"MozBorderInlineEndWidth\",\n \"WebkitBorderInlineEndWidth\",\n \"MSBorderInlineEndWidth\",\n \"OBorderInlineEndWidth\",\n \"borderInlineStart\",\n \"MozBorderInlineStart\",\n \"WebkitBorderInlineStart\",\n \"MSBorderInlineStart\",\n \"OBorderInlineStart\",\n \"borderInlineStartColor\",\n \"MozBorderInlineStartColor\",\n \"WebkitBorderInlineStartColor\",\n \"MSBorderInlineStartColor\",\n \"OBorderInlineStartColor\",\n \"borderInlineStartStyle\",\n \"MozBorderInlineStartStyle\",\n \"WebkitBorderInlineStartStyle\",\n \"MSBorderInlineStartStyle\",\n \"OBorderInlineStartStyle\",\n \"borderInlineStartWidth\",\n \"MozBorderInlineStartWidth\",\n \"WebkitBorderInlineStartWidth\",\n \"MSBorderInlineStartWidth\",\n \"OBorderInlineStartWidth\",\n \"borderLeft\",\n \"MozBorderLeft\",\n \"WebkitBorderLeft\",\n \"MSBorderLeft\",\n \"OBorderLeft\",\n \"borderLeftColor\",\n \"MozBorderLeftColor\",\n \"WebkitBorderLeftColor\",\n \"MSBorderLeftColor\",\n \"OBorderLeftColor\",\n \"borderLeftStyle\",\n \"MozBorderLeftStyle\",\n \"WebkitBorderLeftStyle\",\n \"MSBorderLeftStyle\",\n \"OBorderLeftStyle\",\n \"borderLeftWidth\",\n \"MozBorderLeftWidth\",\n \"WebkitBorderLeftWidth\",\n \"MSBorderLeftWidth\",\n \"OBorderLeftWidth\",\n \"borderRadius\",\n \"MozBorderRadius\",\n \"WebkitBorderRadius\",\n \"MSBorderRadius\",\n \"OBorderRadius\",\n \"borderRight\",\n \"MozBorderRight\",\n \"WebkitBorderRight\",\n \"MSBorderRight\",\n \"OBorderRight\",\n \"borderRightColor\",\n \"MozBorderRightColor\",\n \"WebkitBorderRightColor\",\n \"MSBorderRightColor\",\n \"OBorderRightColor\",\n \"borderRightStyle\",\n \"MozBorderRightStyle\",\n \"WebkitBorderRightStyle\",\n \"MSBorderRightStyle\",\n \"OBorderRightStyle\",\n \"borderRightWidth\",\n \"MozBorderRightWidth\",\n \"WebkitBorderRightWidth\",\n \"MSBorderRightWidth\",\n \"OBorderRightWidth\",\n \"borderSpacing\",\n \"MozBorderSpacing\",\n \"WebkitBorderSpacing\",\n \"MSBorderSpacing\",\n \"OBorderSpacing\",\n \"borderStyle\",\n \"MozBorderStyle\",\n \"WebkitBorderStyle\",\n \"MSBorderStyle\",\n \"OBorderStyle\",\n \"borderTop\",\n \"MozBorderTop\",\n \"WebkitBorderTop\",\n \"MSBorderTop\",\n \"OBorderTop\",\n \"borderTopColor\",\n \"MozBorderTopColor\",\n \"WebkitBorderTopColor\",\n \"MSBorderTopColor\",\n \"OBorderTopColor\",\n \"borderTopLeftRadius\",\n \"MozBorderTopLeftRadius\",\n \"WebkitBorderTopLeftRadius\",\n \"MSBorderTopLeftRadius\",\n \"OBorderTopLeftRadius\",\n \"borderTopRightRadius\",\n \"MozBorderTopRightRadius\",\n \"WebkitBorderTopRightRadius\",\n \"MSBorderTopRightRadius\",\n \"OBorderTopRightRadius\",\n \"borderTopStyle\",\n \"MozBorderTopStyle\",\n \"WebkitBorderTopStyle\",\n \"MSBorderTopStyle\",\n \"OBorderTopStyle\",\n \"borderTopWidth\",\n \"MozBorderTopWidth\",\n \"WebkitBorderTopWidth\",\n \"MSBorderTopWidth\",\n \"OBorderTopWidth\",\n \"borderWidth\",\n \"MozBorderWidth\",\n \"WebkitBorderWidth\",\n \"MSBorderWidth\",\n \"OBorderWidth\",\n \"bottom\",\n \"MozBottom\",\n \"WebkitBottom\",\n \"MSBottom\",\n \"OBottom\",\n \"boxDecorationBreak\",\n \"MozBoxDecorationBreak\",\n \"WebkitBoxDecorationBreak\",\n \"MSBoxDecorationBreak\",\n \"OBoxDecorationBreak\",\n \"boxShadow\",\n \"MozBoxShadow\",\n \"WebkitBoxShadow\",\n \"MSBoxShadow\",\n \"OBoxShadow\",\n \"boxSizing\",\n \"MozBoxSizing\",\n \"WebkitBoxSizing\",\n \"MSBoxSizing\",\n \"OBoxSizing\",\n \"breakAfter\",\n \"MozBreakAfter\",\n \"WebkitBreakAfter\",\n \"MSBreakAfter\",\n \"OBreakAfter\",\n \"breakBefore\",\n \"MozBreakBefore\",\n \"WebkitBreakBefore\",\n \"MSBreakBefore\",\n \"OBreakBefore\",\n \"breakInside\",\n \"MozBreakInside\",\n \"WebkitBreakInside\",\n \"MSBreakInside\",\n \"OBreakInside\",\n \"captionSide\",\n \"MozCaptionSide\",\n \"WebkitCaptionSide\",\n \"MSCaptionSide\",\n \"OCaptionSide\",\n \"caretColor\",\n \"MozCaretColor\",\n \"WebkitCaretColor\",\n \"MSCaretColor\",\n \"OCaretColor\",\n \"ch\",\n \"MozCh\",\n \"WebkitCh\",\n \"MSCh\",\n \"OCh\",\n \"clear\",\n \"MozClear\",\n \"WebkitClear\",\n \"MSClear\",\n \"OClear\",\n \"clip\",\n \"MozClip\",\n \"WebkitClip\",\n \"MSClip\",\n \"OClip\",\n \"clipPath\",\n \"MozClipPath\",\n \"WebkitClipPath\",\n \"MSClipPath\",\n \"OClipPath\",\n \"cm\",\n \"MozCm\",\n \"WebkitCm\",\n \"MSCm\",\n \"OCm\",\n \"color\",\n \"MozColor\",\n \"WebkitColor\",\n \"MSColor\",\n \"OColor\",\n \"columnCount\",\n \"MozColumnCount\",\n \"WebkitColumnCount\",\n \"MSColumnCount\",\n \"OColumnCount\",\n \"columnFill\",\n \"MozColumnFill\",\n \"WebkitColumnFill\",\n \"MSColumnFill\",\n \"OColumnFill\",\n \"columnGap\",\n \"MozColumnGap\",\n \"WebkitColumnGap\",\n \"MSColumnGap\",\n \"OColumnGap\",\n \"columnRule\",\n \"MozColumnRule\",\n \"WebkitColumnRule\",\n \"MSColumnRule\",\n \"OColumnRule\",\n \"columnRuleColor\",\n \"MozColumnRuleColor\",\n \"WebkitColumnRuleColor\",\n \"MSColumnRuleColor\",\n \"OColumnRuleColor\",\n \"columnRuleStyle\",\n \"MozColumnRuleStyle\",\n \"WebkitColumnRuleStyle\",\n \"MSColumnRuleStyle\",\n \"OColumnRuleStyle\",\n \"columnRuleWidth\",\n \"MozColumnRuleWidth\",\n \"WebkitColumnRuleWidth\",\n \"MSColumnRuleWidth\",\n \"OColumnRuleWidth\",\n \"columnSpan\",\n \"MozColumnSpan\",\n \"WebkitColumnSpan\",\n \"MSColumnSpan\",\n \"OColumnSpan\",\n \"columnWidth\",\n \"MozColumnWidth\",\n \"WebkitColumnWidth\",\n \"MSColumnWidth\",\n \"OColumnWidth\",\n \"columns\",\n \"MozColumns\",\n \"WebkitColumns\",\n \"MSColumns\",\n \"OColumns\",\n \"content\",\n \"MozContent\",\n \"WebkitContent\",\n \"MSContent\",\n \"OContent\",\n \"counterIncrement\",\n \"MozCounterIncrement\",\n \"WebkitCounterIncrement\",\n \"MSCounterIncrement\",\n \"OCounterIncrement\",\n \"counterReset\",\n \"MozCounterReset\",\n \"WebkitCounterReset\",\n \"MSCounterReset\",\n \"OCounterReset\",\n \"cursor\",\n \"MozCursor\",\n \"WebkitCursor\",\n \"MSCursor\",\n \"OCursor\",\n \"deg\",\n \"MozDeg\",\n \"WebkitDeg\",\n \"MSDeg\",\n \"ODeg\",\n \"direction\",\n \"MozDirection\",\n \"WebkitDirection\",\n \"MSDirection\",\n \"ODirection\",\n \"display\",\n \"MozDisplay\",\n \"WebkitDisplay\",\n \"MSDisplay\",\n \"ODisplay\",\n \"dpcm\",\n \"MozDpcm\",\n \"WebkitDpcm\",\n \"MSDpcm\",\n \"ODpcm\",\n \"dpi\",\n \"MozDpi\",\n \"WebkitDpi\",\n \"MSDpi\",\n \"ODpi\",\n \"dppx\",\n \"MozDppx\",\n \"WebkitDppx\",\n \"MSDppx\",\n \"ODppx\",\n \"em\",\n \"MozEm\",\n \"WebkitEm\",\n \"MSEm\",\n \"OEm\",\n \"emptyCells\",\n \"MozEmptyCells\",\n \"WebkitEmptyCells\",\n \"MSEmptyCells\",\n \"OEmptyCells\",\n \"ex\",\n \"MozEx\",\n \"WebkitEx\",\n \"MSEx\",\n \"OEx\",\n \"filter\",\n \"MozFilter\",\n \"WebkitFilter\",\n \"MSFilter\",\n \"OFilter\",\n \"flexBasis\",\n \"MozFlexBasis\",\n \"WebkitFlexBasis\",\n \"MSFlexBasis\",\n \"OFlexBasis\",\n \"flexDirection\",\n \"MozFlexDirection\",\n \"WebkitFlexDirection\",\n \"MSFlexDirection\",\n \"OFlexDirection\",\n \"flexFlow\",\n \"MozFlexFlow\",\n \"WebkitFlexFlow\",\n \"MSFlexFlow\",\n \"OFlexFlow\",\n \"flexGrow\",\n \"MozFlexGrow\",\n \"WebkitFlexGrow\",\n \"MSFlexGrow\",\n \"OFlexGrow\",\n \"flexShrink\",\n \"MozFlexShrink\",\n \"WebkitFlexShrink\",\n \"MSFlexShrink\",\n \"OFlexShrink\",\n \"flexWrap\",\n \"MozFlexWrap\",\n \"WebkitFlexWrap\",\n \"MSFlexWrap\",\n \"OFlexWrap\",\n \"float\",\n \"MozFloat\",\n \"WebkitFloat\",\n \"MSFloat\",\n \"OFloat\",\n \"font\",\n \"MozFont\",\n \"WebkitFont\",\n \"MSFont\",\n \"OFont\",\n \"fontFamily\",\n \"MozFontFamily\",\n \"WebkitFontFamily\",\n \"MSFontFamily\",\n \"OFontFamily\",\n \"fontFeatureSettings\",\n \"MozFontFeatureSettings\",\n \"WebkitFontFeatureSettings\",\n \"MSFontFeatureSettings\",\n \"OFontFeatureSettings\",\n \"fontKerning\",\n \"MozFontKerning\",\n \"WebkitFontKerning\",\n \"MSFontKerning\",\n \"OFontKerning\",\n \"fontLanguageOverride\",\n \"MozFontLanguageOverride\",\n \"WebkitFontLanguageOverride\",\n \"MSFontLanguageOverride\",\n \"OFontLanguageOverride\",\n \"fontSize\",\n \"MozFontSize\",\n \"WebkitFontSize\",\n \"MSFontSize\",\n \"OFontSize\",\n \"fontSizeAdjust\",\n \"MozFontSizeAdjust\",\n \"WebkitFontSizeAdjust\",\n \"MSFontSizeAdjust\",\n \"OFontSizeAdjust\",\n \"fontStretch\",\n \"MozFontStretch\",\n \"WebkitFontStretch\",\n \"MSFontStretch\",\n \"OFontStretch\",\n \"fontStyle\",\n \"MozFontStyle\",\n \"WebkitFontStyle\",\n \"MSFontStyle\",\n \"OFontStyle\",\n \"fontSynthesis\",\n \"MozFontSynthesis\",\n \"WebkitFontSynthesis\",\n \"MSFontSynthesis\",\n \"OFontSynthesis\",\n \"fontVariant\",\n \"MozFontVariant\",\n \"WebkitFontVariant\",\n \"MSFontVariant\",\n \"OFontVariant\",\n \"fontVariantAlternates\",\n \"MozFontVariantAlternates\",\n \"WebkitFontVariantAlternates\",\n \"MSFontVariantAlternates\",\n \"OFontVariantAlternates\",\n \"fontVariantCaps\",\n \"MozFontVariantCaps\",\n \"WebkitFontVariantCaps\",\n \"MSFontVariantCaps\",\n \"OFontVariantCaps\",\n \"fontVariantEastAsian\",\n \"MozFontVariantEastAsian\",\n \"WebkitFontVariantEastAsian\",\n \"MSFontVariantEastAsian\",\n \"OFontVariantEastAsian\",\n \"fontVariantLigatures\",\n \"MozFontVariantLigatures\",\n \"WebkitFontVariantLigatures\",\n \"MSFontVariantLigatures\",\n \"OFontVariantLigatures\",\n \"fontVariantNumeric\",\n \"MozFontVariantNumeric\",\n \"WebkitFontVariantNumeric\",\n \"MSFontVariantNumeric\",\n \"OFontVariantNumeric\",\n \"fontVariantPosition\",\n \"MozFontVariantPosition\",\n \"WebkitFontVariantPosition\",\n \"MSFontVariantPosition\",\n \"OFontVariantPosition\",\n \"fontWeight\",\n \"MozFontWeight\",\n \"WebkitFontWeight\",\n \"MSFontWeight\",\n \"OFontWeight\",\n \"fr\",\n \"MozFr\",\n \"WebkitFr\",\n \"MSFr\",\n \"OFr\",\n \"grad\",\n \"MozGrad\",\n \"WebkitGrad\",\n \"MSGrad\",\n \"OGrad\",\n \"grid\",\n \"MozGrid\",\n \"WebkitGrid\",\n \"MSGrid\",\n \"OGrid\",\n \"gridArea\",\n \"MozGridArea\",\n \"WebkitGridArea\",\n \"MSGridArea\",\n \"OGridArea\",\n \"gridAutoColumns\",\n \"MozGridAutoColumns\",\n \"WebkitGridAutoColumns\",\n \"MSGridAutoColumns\",\n \"OGridAutoColumns\",\n \"gridAutoFlow\",\n \"MozGridAutoFlow\",\n \"WebkitGridAutoFlow\",\n \"MSGridAutoFlow\",\n \"OGridAutoFlow\",\n \"gridAutoRows\",\n \"MozGridAutoRows\",\n \"WebkitGridAutoRows\",\n \"MSGridAutoRows\",\n \"OGridAutoRows\",\n \"gridColumn\",\n \"MozGridColumn\",\n \"WebkitGridColumn\",\n \"MSGridColumn\",\n \"OGridColumn\",\n \"gridColumnEnd\",\n \"MozGridColumnEnd\",\n \"WebkitGridColumnEnd\",\n \"MSGridColumnEnd\",\n \"OGridColumnEnd\",\n \"gridColumnGap\",\n \"MozGridColumnGap\",\n \"WebkitGridColumnGap\",\n \"MSGridColumnGap\",\n \"OGridColumnGap\",\n \"gridColumnStart\",\n \"MozGridColumnStart\",\n \"WebkitGridColumnStart\",\n \"MSGridColumnStart\",\n \"OGridColumnStart\",\n \"gridGap\",\n \"MozGridGap\",\n \"WebkitGridGap\",\n \"MSGridGap\",\n \"OGridGap\",\n \"gridRow\",\n \"MozGridRow\",\n \"WebkitGridRow\",\n \"MSGridRow\",\n \"OGridRow\",\n \"gridRowEnd\",\n \"MozGridRowEnd\",\n \"WebkitGridRowEnd\",\n \"MSGridRowEnd\",\n \"OGridRowEnd\",\n \"gridRowGap\",\n \"MozGridRowGap\",\n \"WebkitGridRowGap\",\n \"MSGridRowGap\",\n \"OGridRowGap\",\n \"gridRowStart\",\n \"MozGridRowStart\",\n \"WebkitGridRowStart\",\n \"MSGridRowStart\",\n \"OGridRowStart\",\n \"gridTemplate\",\n \"MozGridTemplate\",\n \"WebkitGridTemplate\",\n \"MSGridTemplate\",\n \"OGridTemplate\",\n \"gridTemplateAreas\",\n \"MozGridTemplateAreas\",\n \"WebkitGridTemplateAreas\",\n \"MSGridTemplateAreas\",\n \"OGridTemplateAreas\",\n \"gridTemplateColumns\",\n \"MozGridTemplateColumns\",\n \"WebkitGridTemplateColumns\",\n \"MSGridTemplateColumns\",\n \"OGridTemplateColumns\",\n \"gridTemplateRows\",\n \"MozGridTemplateRows\",\n \"WebkitGridTemplateRows\",\n \"MSGridTemplateRows\",\n \"OGridTemplateRows\",\n \"height\",\n \"MozHeight\",\n \"WebkitHeight\",\n \"MSHeight\",\n \"OHeight\",\n \"hyphens\",\n \"MozHyphens\",\n \"WebkitHyphens\",\n \"MSHyphens\",\n \"OHyphens\",\n \"hz\",\n \"MozHz\",\n \"WebkitHz\",\n \"MSHz\",\n \"OHz\",\n \"imageOrientation\",\n \"MozImageOrientation\",\n \"WebkitImageOrientation\",\n \"MSImageOrientation\",\n \"OImageOrientation\",\n \"imageRendering\",\n \"MozImageRendering\",\n \"WebkitImageRendering\",\n \"MSImageRendering\",\n \"OImageRendering\",\n \"imageResolution\",\n \"MozImageResolution\",\n \"WebkitImageResolution\",\n \"MSImageResolution\",\n \"OImageResolution\",\n \"imeMode\",\n \"MozImeMode\",\n \"WebkitImeMode\",\n \"MSImeMode\",\n \"OImeMode\",\n \"in\",\n \"MozIn\",\n \"WebkitIn\",\n \"MSIn\",\n \"OIn\",\n \"inherit\",\n \"MozInherit\",\n \"WebkitInherit\",\n \"MSInherit\",\n \"OInherit\",\n \"initial\",\n \"MozInitial\",\n \"WebkitInitial\",\n \"MSInitial\",\n \"OInitial\",\n \"inlineSize\",\n \"MozInlineSize\",\n \"WebkitInlineSize\",\n \"MSInlineSize\",\n \"OInlineSize\",\n \"isolation\",\n \"MozIsolation\",\n \"WebkitIsolation\",\n \"MSIsolation\",\n \"OIsolation\",\n \"justifyContent\",\n \"MozJustifyContent\",\n \"WebkitJustifyContent\",\n \"MSJustifyContent\",\n \"OJustifyContent\",\n \"khz\",\n \"MozKhz\",\n \"WebkitKhz\",\n \"MSKhz\",\n \"OKhz\",\n \"left\",\n \"MozLeft\",\n \"WebkitLeft\",\n \"MSLeft\",\n \"OLeft\",\n \"letterSpacing\",\n \"MozLetterSpacing\",\n \"WebkitLetterSpacing\",\n \"MSLetterSpacing\",\n \"OLetterSpacing\",\n \"lineBreak\",\n \"MozLineBreak\",\n \"WebkitLineBreak\",\n \"MSLineBreak\",\n \"OLineBreak\",\n \"lineHeight\",\n \"MozLineHeight\",\n \"WebkitLineHeight\",\n \"MSLineHeight\",\n \"OLineHeight\",\n \"listStyle\",\n \"MozListStyle\",\n \"WebkitListStyle\",\n \"MSListStyle\",\n \"OListStyle\",\n \"listStyleImage\",\n \"MozListStyleImage\",\n \"WebkitListStyleImage\",\n \"MSListStyleImage\",\n \"OListStyleImage\",\n \"listStylePosition\",\n \"MozListStylePosition\",\n \"WebkitListStylePosition\",\n \"MSListStylePosition\",\n \"OListStylePosition\",\n \"listStyleType\",\n \"MozListStyleType\",\n \"WebkitListStyleType\",\n \"MSListStyleType\",\n \"OListStyleType\",\n \"margin\",\n \"MozMargin\",\n \"WebkitMargin\",\n \"MSMargin\",\n \"OMargin\",\n \"marginBlockEnd\",\n \"MozMarginBlockEnd\",\n \"WebkitMarginBlockEnd\",\n \"MSMarginBlockEnd\",\n \"OMarginBlockEnd\",\n \"marginBlockStart\",\n \"MozMarginBlockStart\",\n \"WebkitMarginBlockStart\",\n \"MSMarginBlockStart\",\n \"OMarginBlockStart\",\n \"marginBottom\",\n \"MozMarginBottom\",\n \"WebkitMarginBottom\",\n \"MSMarginBottom\",\n \"OMarginBottom\",\n \"marginInlineEnd\",\n \"MozMarginInlineEnd\",\n \"WebkitMarginInlineEnd\",\n \"MSMarginInlineEnd\",\n \"OMarginInlineEnd\",\n \"marginInlineStart\",\n \"MozMarginInlineStart\",\n \"WebkitMarginInlineStart\",\n \"MSMarginInlineStart\",\n \"OMarginInlineStart\",\n \"marginLeft\",\n \"MozMarginLeft\",\n \"WebkitMarginLeft\",\n \"MSMarginLeft\",\n \"OMarginLeft\",\n \"marginRight\",\n \"MozMarginRight\",\n \"WebkitMarginRight\",\n \"MSMarginRight\",\n \"OMarginRight\",\n \"marginTop\",\n \"MozMarginTop\",\n \"WebkitMarginTop\",\n \"MSMarginTop\",\n \"OMarginTop\",\n \"mask\",\n \"MozMask\",\n \"WebkitMask\",\n \"MSMask\",\n \"OMask\",\n \"maskClip\",\n \"MozMaskClip\",\n \"WebkitMaskClip\",\n \"MSMaskClip\",\n \"OMaskClip\",\n \"maskComposite\",\n \"MozMaskComposite\",\n \"WebkitMaskComposite\",\n \"MSMaskComposite\",\n \"OMaskComposite\",\n \"maskImage\",\n \"MozMaskImage\",\n \"WebkitMaskImage\",\n \"MSMaskImage\",\n \"OMaskImage\",\n \"maskMode\",\n \"MozMaskMode\",\n \"WebkitMaskMode\",\n \"MSMaskMode\",\n \"OMaskMode\",\n \"maskOrigin\",\n \"MozMaskOrigin\",\n \"WebkitMaskOrigin\",\n \"MSMaskOrigin\",\n \"OMaskOrigin\",\n \"maskPosition\",\n \"MozMaskPosition\",\n \"WebkitMaskPosition\",\n \"MSMaskPosition\",\n \"OMaskPosition\",\n \"maskRepeat\",\n \"MozMaskRepeat\",\n \"WebkitMaskRepeat\",\n \"MSMaskRepeat\",\n \"OMaskRepeat\",\n \"maskSize\",\n \"MozMaskSize\",\n \"WebkitMaskSize\",\n \"MSMaskSize\",\n \"OMaskSize\",\n \"maskType\",\n \"MozMaskType\",\n \"WebkitMaskType\",\n \"MSMaskType\",\n \"OMaskType\",\n \"maxHeight\",\n \"MozMaxHeight\",\n \"WebkitMaxHeight\",\n \"MSMaxHeight\",\n \"OMaxHeight\",\n \"maxWidth\",\n \"MozMaxWidth\",\n \"WebkitMaxWidth\",\n \"MSMaxWidth\",\n \"OMaxWidth\",\n \"minBlockSize\",\n \"MozMinBlockSize\",\n \"WebkitMinBlockSize\",\n \"MSMinBlockSize\",\n \"OMinBlockSize\",\n \"minHeight\",\n \"MozMinHeight\",\n \"WebkitMinHeight\",\n \"MSMinHeight\",\n \"OMinHeight\",\n \"minInlineSize\",\n \"MozMinInlineSize\",\n \"WebkitMinInlineSize\",\n \"MSMinInlineSize\",\n \"OMinInlineSize\",\n \"minWidth\",\n \"MozMinWidth\",\n \"WebkitMinWidth\",\n \"MSMinWidth\",\n \"OMinWidth\",\n \"mixBlendMode\",\n \"MozMixBlendMode\",\n \"WebkitMixBlendMode\",\n \"MSMixBlendMode\",\n \"OMixBlendMode\",\n \"mm\",\n \"MozMm\",\n \"WebkitMm\",\n \"MSMm\",\n \"OMm\",\n \"ms\",\n \"MozMs\",\n \"WebkitMs\",\n \"MSMs\",\n \"OMs\",\n \"objectFit\",\n \"MozObjectFit\",\n \"WebkitObjectFit\",\n \"MSObjectFit\",\n \"OObjectFit\",\n \"objectPosition\",\n \"MozObjectPosition\",\n \"WebkitObjectPosition\",\n \"MSObjectPosition\",\n \"OObjectPosition\",\n \"offsetBlockEnd\",\n \"MozOffsetBlockEnd\",\n \"WebkitOffsetBlockEnd\",\n \"MSOffsetBlockEnd\",\n \"OOffsetBlockEnd\",\n \"offsetBlockStart\",\n \"MozOffsetBlockStart\",\n \"WebkitOffsetBlockStart\",\n \"MSOffsetBlockStart\",\n \"OOffsetBlockStart\",\n \"offsetInlineEnd\",\n \"MozOffsetInlineEnd\",\n \"WebkitOffsetInlineEnd\",\n \"MSOffsetInlineEnd\",\n \"OOffsetInlineEnd\",\n \"offsetInlineStart\",\n \"MozOffsetInlineStart\",\n \"WebkitOffsetInlineStart\",\n \"MSOffsetInlineStart\",\n \"OOffsetInlineStart\",\n \"opacity\",\n \"MozOpacity\",\n \"WebkitOpacity\",\n \"MSOpacity\",\n \"OOpacity\",\n \"order\",\n \"MozOrder\",\n \"WebkitOrder\",\n \"MSOrder\",\n \"OOrder\",\n \"orphans\",\n \"MozOrphans\",\n \"WebkitOrphans\",\n \"MSOrphans\",\n \"OOrphans\",\n \"outline\",\n \"MozOutline\",\n \"WebkitOutline\",\n \"MSOutline\",\n \"OOutline\",\n \"outlineColor\",\n \"MozOutlineColor\",\n \"WebkitOutlineColor\",\n \"MSOutlineColor\",\n \"OOutlineColor\",\n \"outlineOffset\",\n \"MozOutlineOffset\",\n \"WebkitOutlineOffset\",\n \"MSOutlineOffset\",\n \"OOutlineOffset\",\n \"outlineStyle\",\n \"MozOutlineStyle\",\n \"WebkitOutlineStyle\",\n \"MSOutlineStyle\",\n \"OOutlineStyle\",\n \"outlineWidth\",\n \"MozOutlineWidth\",\n \"WebkitOutlineWidth\",\n \"MSOutlineWidth\",\n \"OOutlineWidth\",\n \"overflow\",\n \"MozOverflow\",\n \"WebkitOverflow\",\n \"MSOverflow\",\n \"OOverflow\",\n \"overflowWrap\",\n \"MozOverflowWrap\",\n \"WebkitOverflowWrap\",\n \"MSOverflowWrap\",\n \"OOverflowWrap\",\n \"overflowX\",\n \"MozOverflowX\",\n \"WebkitOverflowX\",\n \"MSOverflowX\",\n \"OOverflowX\",\n \"overflowY\",\n \"MozOverflowY\",\n \"WebkitOverflowY\",\n \"MSOverflowY\",\n \"OOverflowY\",\n \"padding\",\n \"MozPadding\",\n \"WebkitPadding\",\n \"MSPadding\",\n \"OPadding\",\n \"paddingBlockEnd\",\n \"MozPaddingBlockEnd\",\n \"WebkitPaddingBlockEnd\",\n \"MSPaddingBlockEnd\",\n \"OPaddingBlockEnd\",\n \"paddingBlockStart\",\n \"MozPaddingBlockStart\",\n \"WebkitPaddingBlockStart\",\n \"MSPaddingBlockStart\",\n \"OPaddingBlockStart\",\n \"paddingBottom\",\n \"MozPaddingBottom\",\n \"WebkitPaddingBottom\",\n \"MSPaddingBottom\",\n \"OPaddingBottom\",\n \"paddingInlineEnd\",\n \"MozPaddingInlineEnd\",\n \"WebkitPaddingInlineEnd\",\n \"MSPaddingInlineEnd\",\n \"OPaddingInlineEnd\",\n \"paddingInlineStart\",\n \"MozPaddingInlineStart\",\n \"WebkitPaddingInlineStart\",\n \"MSPaddingInlineStart\",\n \"OPaddingInlineStart\",\n \"paddingLeft\",\n \"MozPaddingLeft\",\n \"WebkitPaddingLeft\",\n \"MSPaddingLeft\",\n \"OPaddingLeft\",\n \"paddingRight\",\n \"MozPaddingRight\",\n \"WebkitPaddingRight\",\n \"MSPaddingRight\",\n \"OPaddingRight\",\n \"paddingTop\",\n \"MozPaddingTop\",\n \"WebkitPaddingTop\",\n \"MSPaddingTop\",\n \"OPaddingTop\",\n \"pageBreakAfter\",\n \"MozPageBreakAfter\",\n \"WebkitPageBreakAfter\",\n \"MSPageBreakAfter\",\n \"OPageBreakAfter\",\n \"pageBreakBefore\",\n \"MozPageBreakBefore\",\n \"WebkitPageBreakBefore\",\n \"MSPageBreakBefore\",\n \"OPageBreakBefore\",\n \"pageBreakInside\",\n \"MozPageBreakInside\",\n \"WebkitPageBreakInside\",\n \"MSPageBreakInside\",\n \"OPageBreakInside\",\n \"pc\",\n \"MozPc\",\n \"WebkitPc\",\n \"MSPc\",\n \"OPc\",\n \"perspective\",\n \"MozPerspective\",\n \"WebkitPerspective\",\n \"MSPerspective\",\n \"OPerspective\",\n \"perspectiveOrigin\",\n \"MozPerspectiveOrigin\",\n \"WebkitPerspectiveOrigin\",\n \"MSPerspectiveOrigin\",\n \"OPerspectiveOrigin\",\n \"pointerEvents\",\n \"MozPointerEvents\",\n \"WebkitPointerEvents\",\n \"MSPointerEvents\",\n \"OPointerEvents\",\n \"position\",\n \"MozPosition\",\n \"WebkitPosition\",\n \"MSPosition\",\n \"OPosition\",\n \"pt\",\n \"MozPt\",\n \"WebkitPt\",\n \"MSPt\",\n \"OPt\",\n \"px\",\n \"MozPx\",\n \"WebkitPx\",\n \"MSPx\",\n \"OPx\",\n \"q\",\n \"MozQ\",\n \"WebkitQ\",\n \"MSQ\",\n \"OQ\",\n \"quotes\",\n \"MozQuotes\",\n \"WebkitQuotes\",\n \"MSQuotes\",\n \"OQuotes\",\n \"rad\",\n \"MozRad\",\n \"WebkitRad\",\n \"MSRad\",\n \"ORad\",\n \"rem\",\n \"MozRem\",\n \"WebkitRem\",\n \"MSRem\",\n \"ORem\",\n \"resize\",\n \"MozResize\",\n \"WebkitResize\",\n \"MSResize\",\n \"OResize\",\n \"revert\",\n \"MozRevert\",\n \"WebkitRevert\",\n \"MSRevert\",\n \"ORevert\",\n \"right\",\n \"MozRight\",\n \"WebkitRight\",\n \"MSRight\",\n \"ORight\",\n \"rubyAlign\",\n \"MozRubyAlign\",\n \"WebkitRubyAlign\",\n \"MSRubyAlign\",\n \"ORubyAlign\",\n \"rubyMerge\",\n \"MozRubyMerge\",\n \"WebkitRubyMerge\",\n \"MSRubyMerge\",\n \"ORubyMerge\",\n \"rubyPosition\",\n \"MozRubyPosition\",\n \"WebkitRubyPosition\",\n \"MSRubyPosition\",\n \"ORubyPosition\",\n \"s\",\n \"MozS\",\n \"WebkitS\",\n \"MSS\",\n \"OS\",\n \"scrollBehavior\",\n \"MozScrollBehavior\",\n \"WebkitScrollBehavior\",\n \"MSScrollBehavior\",\n \"OScrollBehavior\",\n \"scrollSnapCoordinate\",\n \"MozScrollSnapCoordinate\",\n \"WebkitScrollSnapCoordinate\",\n \"MSScrollSnapCoordinate\",\n \"OScrollSnapCoordinate\",\n \"scrollSnapDestination\",\n \"MozScrollSnapDestination\",\n \"WebkitScrollSnapDestination\",\n \"MSScrollSnapDestination\",\n \"OScrollSnapDestination\",\n \"scrollSnapType\",\n \"MozScrollSnapType\",\n \"WebkitScrollSnapType\",\n \"MSScrollSnapType\",\n \"OScrollSnapType\",\n \"shapeImageThreshold\",\n \"MozShapeImageThreshold\",\n \"WebkitShapeImageThreshold\",\n \"MSShapeImageThreshold\",\n \"OShapeImageThreshold\",\n \"shapeMargin\",\n \"MozShapeMargin\",\n \"WebkitShapeMargin\",\n \"MSShapeMargin\",\n \"OShapeMargin\",\n \"shapeOutside\",\n \"MozShapeOutside\",\n \"WebkitShapeOutside\",\n \"MSShapeOutside\",\n \"OShapeOutside\",\n \"tabSize\",\n \"MozTabSize\",\n \"WebkitTabSize\",\n \"MSTabSize\",\n \"OTabSize\",\n \"tableLayout\",\n \"MozTableLayout\",\n \"WebkitTableLayout\",\n \"MSTableLayout\",\n \"OTableLayout\",\n \"textAlign\",\n \"MozTextAlign\",\n \"WebkitTextAlign\",\n \"MSTextAlign\",\n \"OTextAlign\",\n \"textAlignLast\",\n \"MozTextAlignLast\",\n \"WebkitTextAlignLast\",\n \"MSTextAlignLast\",\n \"OTextAlignLast\",\n \"textCombineUpright\",\n \"MozTextCombineUpright\",\n \"WebkitTextCombineUpright\",\n \"MSTextCombineUpright\",\n \"OTextCombineUpright\",\n \"textDecoration\",\n \"MozTextDecoration\",\n \"WebkitTextDecoration\",\n \"MSTextDecoration\",\n \"OTextDecoration\",\n \"textDecorationColor\",\n \"MozTextDecorationColor\",\n \"WebkitTextDecorationColor\",\n \"MSTextDecorationColor\",\n \"OTextDecorationColor\",\n \"textDecorationLine\",\n \"MozTextDecorationLine\",\n \"WebkitTextDecorationLine\",\n \"MSTextDecorationLine\",\n \"OTextDecorationLine\",\n \"textDecorationStyle\",\n \"MozTextDecorationStyle\",\n \"WebkitTextDecorationStyle\",\n \"MSTextDecorationStyle\",\n \"OTextDecorationStyle\",\n \"textEmphasis\",\n \"MozTextEmphasis\",\n \"WebkitTextEmphasis\",\n \"MSTextEmphasis\",\n \"OTextEmphasis\",\n \"textEmphasisColor\",\n \"MozTextEmphasisColor\",\n \"WebkitTextEmphasisColor\",\n \"MSTextEmphasisColor\",\n \"OTextEmphasisColor\",\n \"textEmphasisPosition\",\n \"MozTextEmphasisPosition\",\n \"WebkitTextEmphasisPosition\",\n \"MSTextEmphasisPosition\",\n \"OTextEmphasisPosition\",\n \"textEmphasisStyle\",\n \"MozTextEmphasisStyle\",\n \"WebkitTextEmphasisStyle\",\n \"MSTextEmphasisStyle\",\n \"OTextEmphasisStyle\",\n \"textIndent\",\n \"MozTextIndent\",\n \"WebkitTextIndent\",\n \"MSTextIndent\",\n \"OTextIndent\",\n \"textOrientation\",\n \"MozTextOrientation\",\n \"WebkitTextOrientation\",\n \"MSTextOrientation\",\n \"OTextOrientation\",\n \"textOverflow\",\n \"MozTextOverflow\",\n \"WebkitTextOverflow\",\n \"MSTextOverflow\",\n \"OTextOverflow\",\n \"textRendering\",\n \"MozTextRendering\",\n \"WebkitTextRendering\",\n \"MSTextRendering\",\n \"OTextRendering\",\n \"textShadow\",\n \"MozTextShadow\",\n \"WebkitTextShadow\",\n \"MSTextShadow\",\n \"OTextShadow\",\n \"textTransform\",\n \"MozTextTransform\",\n \"WebkitTextTransform\",\n \"MSTextTransform\",\n \"OTextTransform\",\n \"textUnderlinePosition\",\n \"MozTextUnderlinePosition\",\n \"WebkitTextUnderlinePosition\",\n \"MSTextUnderlinePosition\",\n \"OTextUnderlinePosition\",\n \"top\",\n \"MozTop\",\n \"WebkitTop\",\n \"MSTop\",\n \"OTop\",\n \"touchAction\",\n \"MozTouchAction\",\n \"WebkitTouchAction\",\n \"MSTouchAction\",\n \"OTouchAction\",\n \"transform\",\n \"MozTransform\",\n \"WebkitTransform\",\n \"msTransform\",\n \"OTransform\",\n \"transformBox\",\n \"MozTransformBox\",\n \"WebkitTransformBox\",\n \"MSTransformBox\",\n \"OTransformBox\",\n \"transformOrigin\",\n \"MozTransformOrigin\",\n \"WebkitTransformOrigin\",\n \"MSTransformOrigin\",\n \"OTransformOrigin\",\n \"transformStyle\",\n \"MozTransformStyle\",\n \"WebkitTransformStyle\",\n \"MSTransformStyle\",\n \"OTransformStyle\",\n \"transition\",\n \"MozTransition\",\n \"WebkitTransition\",\n \"MSTransition\",\n \"OTransition\",\n \"transitionDelay\",\n \"MozTransitionDelay\",\n \"WebkitTransitionDelay\",\n \"MSTransitionDelay\",\n \"OTransitionDelay\",\n \"transitionDuration\",\n \"MozTransitionDuration\",\n \"WebkitTransitionDuration\",\n \"MSTransitionDuration\",\n \"OTransitionDuration\",\n \"transitionProperty\",\n \"MozTransitionProperty\",\n \"WebkitTransitionProperty\",\n \"MSTransitionProperty\",\n \"OTransitionProperty\",\n \"transitionTimingFunction\",\n \"MozTransitionTimingFunction\",\n \"WebkitTransitionTimingFunction\",\n \"MSTransitionTimingFunction\",\n \"OTransitionTimingFunction\",\n \"turn\",\n \"MozTurn\",\n \"WebkitTurn\",\n \"MSTurn\",\n \"OTurn\",\n \"unicodeBidi\",\n \"MozUnicodeBidi\",\n \"WebkitUnicodeBidi\",\n \"MSUnicodeBidi\",\n \"OUnicodeBidi\",\n \"unset\",\n \"MozUnset\",\n \"WebkitUnset\",\n \"MSUnset\",\n \"OUnset\",\n \"verticalAlign\",\n \"MozVerticalAlign\",\n \"WebkitVerticalAlign\",\n \"MSVerticalAlign\",\n \"OVerticalAlign\",\n \"vh\",\n \"MozVh\",\n \"WebkitVh\",\n \"MSVh\",\n \"OVh\",\n \"visibility\",\n \"MozVisibility\",\n \"WebkitVisibility\",\n \"MSVisibility\",\n \"OVisibility\",\n \"vmax\",\n \"MozVmax\",\n \"WebkitVmax\",\n \"MSVmax\",\n \"OVmax\",\n \"vmin\",\n \"MozVmin\",\n \"WebkitVmin\",\n \"MSVmin\",\n \"OVmin\",\n \"vw\",\n \"MozVw\",\n \"WebkitVw\",\n \"MSVw\",\n \"OVw\",\n \"whiteSpace\",\n \"MozWhiteSpace\",\n \"WebkitWhiteSpace\",\n \"MSWhiteSpace\",\n \"OWhiteSpace\",\n \"widows\",\n \"MozWidows\",\n \"WebkitWidows\",\n \"MSWidows\",\n \"OWidows\",\n \"width\",\n \"MozWidth\",\n \"WebkitWidth\",\n \"MSWidth\",\n \"OWidth\",\n \"willChange\",\n \"MozWillChange\",\n \"WebkitWillChange\",\n \"MSWillChange\",\n \"OWillChange\",\n \"wordBreak\",\n \"MozWordBreak\",\n \"WebkitWordBreak\",\n \"MSWordBreak\",\n \"OWordBreak\",\n \"wordSpacing\",\n \"MozWordSpacing\",\n \"WebkitWordSpacing\",\n \"MSWordSpacing\",\n \"OWordSpacing\",\n \"wordWrap\",\n \"MozWordWrap\",\n \"WebkitWordWrap\",\n \"MSWordWrap\",\n \"OWordWrap\",\n \"writingMode\",\n \"MozWritingMode\",\n \"WebkitWritingMode\",\n \"MSWritingMode\",\n \"OWritingMode\",\n \"zIndex\",\n \"MozZIndex\",\n \"WebkitZIndex\",\n \"MSZIndex\",\n \"OZIndex\",\n \"fontSize\",\n \"MozFontSize\",\n \"WebkitFontSize\",\n \"MSFontSize\",\n \"OFontSize\",\n \"flex\",\n \"MozFlex\",\n \"WebkitFlex\",\n \"MSFlex\",\n \"OFlex\",\n \"fr\",\n \"MozFr\",\n \"WebkitFr\",\n \"MSFr\",\n \"OFr\",\n \"overflowScrolling\",\n \"MozOverflowScrolling\",\n \"WebkitOverflowScrolling\",\n \"MSOverflowScrolling\",\n \"OOverflowScrolling\",\n \"userSelect\",\n \"MozUserSelect\",\n \"WebkitUserSelect\",\n \"MSUserSelect\",\n \"OUserSelect\"\n]\n","import React from 'react';\n\nimport {DialogControlProps} from '../Dialog/Dialog.types';\nimport {EditTextWithPreview, EditTextWithPreviewProps} from '../EditTextWithPreview';\nimport {Markdown} from '../Markdown/Markdown';\n\nexport type EditAnnotationProps = DialogControlProps<\n EditTextWithPreviewProps['value'],\n {\n initialValue: EditAnnotationProps['value'];\n valuePath: string;\n hideReset?: boolean;\n className: string;\n }\n>;\n\nEditAnnotationWithPreview.isEmpty = (value: EditTextWithPreviewProps['value']) => {\n return !value;\n};\n\nEditAnnotationWithPreview.getDefaultValue = () => {\n return {value: undefined};\n};\n\nexport function EditAnnotationWithPreview(props: EditAnnotationProps) {\n const {\n value: valueProp,\n onChange: onChangeProp,\n initialValue: initialValueProp,\n valuePath: valuePathProp,\n hideReset,\n className,\n } = props;\n\n const {value: initialValue} = initialValueProp;\n const {value} = valueProp;\n const onChange = React.useCallback(\n ({value: newValue}: {value?: string} = {}) => {\n if (value !== newValue) {\n const prevIsUndefined = value === undefined;\n if (prevIsUndefined && newValue === '') {\n // nothing to do\n } else {\n onChangeProp({value: newValue});\n }\n }\n },\n [onChangeProp, value],\n );\n\n const valuePath = value === undefined ? undefined : valuePathProp;\n const changed = initialValue !== value;\n\n let editorSubTitle = value === undefined ? '(reset to inheritance)' : '';\n if (valuePath) editorSubTitle = `(from ${valuePath})`;\n\n /**\n * value === undefined means it is already inherited or user already pressed 'Reset to inheritance' button\n */\n const resetActions: EditTextWithPreviewProps['editorActions'] = [];\n if (value === undefined || value === null) {\n if (changed) {\n resetActions.push({\n text: 'Restore',\n action: () => onChangeProp(initialValueProp),\n });\n }\n } else if (!valuePath || changed) {\n resetActions.push({\n text: 'Reset to inheritance',\n action: () => {\n if (valuePath) {\n onChangeProp(initialValueProp);\n } else {\n onChange(undefined);\n }\n },\n });\n }\n\n return (\n <EditTextWithPreview\n className={className}\n value={valueProp}\n onChange={onChange}\n editorTitle={'Description'}\n editorSubTitle={editorSubTitle}\n editorActions={hideReset ? undefined : resetActions}\n editorLang={'markdown'}\n renderPreview={renderPreview}\n initialSplitSize=\"50%\"\n />\n );\n}\n\nfunction renderPreview(value?: string) {\n return <Markdown text={value || ''} />;\n}\n","var properties = require('./css-properties.js');\nvar PropTypes = require('prop-types');\n\nmodule.exports = function(props, propName, componentName) {\n var styles = props[propName];\n if (!styles) {\n return;\n }\n\n var failures = [];\n Object.keys(styles).forEach(function(styleKey){\n if (properties.indexOf(styleKey) === -1) {\n failures.push(styleKey);\n }\n });\n if (failures.length) {\n throw new Error('Prop ' + propName + ' passed to ' + componentName + '. Has invalid keys ' + failures.join(', '));\n }\n};\n\nmodule.exports.isRequired = function(props, propName, componentName) {\n if (!props[propName]) {\n throw new Error('Prop ' + propName + ' passed to ' + componentName + ' is required');\n }\n return module.exports(props, propName, componentName);\n};\n\nmodule.exports.supportingArrays = PropTypes.oneOfType([\n PropTypes.arrayOf(module.exports),\n module.exports\n]);\n"],"names":["block","cn","emptyTransformResponse","result","html","headings","logs","info","warn","error","disabled","transformMarkdown","_x","_transformMarkdown","apply","arguments","_asyncToGenerator","_regeneratorRuntime","mark","_callee2","_ref","text","allowHTML","_yield$wrapApiPromise","data","wrap","_context2","prev","next","wrapApiPromiseByToaster","axios","post","toasterName","skipSuccessToast","errorContent","sent","abrupt","t0","_objectSpread","message","stop","useMarkdown","_ref2","_ref2$allowHTML","_React$useState","React","_React$useState2","_slicedToArray","res","setResult","_transform","_callee","_context","transform","MD","_ref3","_useMarkdown$result","_jsx","children","className","dangerouslySetInnerHTML","__html","Markdown","memo","_ref5","customMarkdown","UIFactory","renderMarkdown","PermissionsControl","_Component","_this","_classCallCheck","_len","length","args","Array","_key","_callSuper","concat","state","handleCheckboxChange","permissionName","permissionsToSet","_this$props","props","value","onChange","permissions","rest","_objectWithoutProperties","map","_toPropertyKey","_defineProperty","_inherits","_createClass","key","index","_this2","_this$props2","this","disabledChoices","itemDisabled","indexOf_","Checkbox","checked","Boolean","content","format","ReadableField","choices","_this3","map_","item","name","getChoiceName","renderPermissionCheckbox","_this$props3","_jsxs","renderChoices","choice","join","isEmpty_","Component","hasErrorRenderer","getDefaultValue","executeBatchV3","id","errorTitle","parameters","cancellation","toaster","setup","request","results","undefined","ytApiV3Id","executeBatch","getBatchError","listQueries","_listQueries","response","ytApiV4Id","YTApiId","flowExecute","_extends","_objectDestructuringEmpty","flowExecuteDescribePipeline","ytApi","rootApi","injectEndpoints","endpoints","build","fetchBatch","query","queryFn","providesTags","_result","_error","arg","updateBatch","mutation","invalidatesTags","_arg","_args","_args$parameters","flow_command","pipeline_path","useFlowExecuteQuery","useFetchBatchQuery","options","useAutoRefresh","useSelector","getUseAutoRefresh","cluster","getCluster","defaultOptions","pollingInterval","DEFAULT_UPDATER_TIMEOUT","skipPollingIfUnfocused","customOptions","customArgs","useUpdateBatchMutation","_ytApi$useUpdateBatch","_ytApi$useUpdateBatch2","updateFn","typedUpdateFn","useListQueriesQuery","pathEditorRequests","CancelHelper","preparePath","currentPath","ypath","YPath","create","toSubpath","stringify","loadSuggestions","path","customFilter","parentPath","list","pathEditorLoadSuggestions","attributes","saveCancelToken","then","getValue","nodes","initialPath","suggestions","child","prepared","childPath","unipika","decode","type","dynamic","targetPathBroken","sortBy_","prepareSuggestions","filterByCurrentPath","toLowerCase","filter_","hasPartOfPath","startsWith","isShowCurrentChild","getNextSelectedIndex","suggestion","selectedIndex","getPrevSelectedIndex","getCompletedPath","getIconNameForType","icons","document","string_node","int64_node","uint64_node","double_node","boolean_node","map_node","scheduler_pool_tree_map","scheduler_pool","tablet_cell","journal","table","table_dynamic","replicated_table","chaos_replicated_table","replication_log_table","file","topmost_transaction_map","transaction_map","transaction","nested_transaction","link","getBoolean","rootstock","portal_entrance","cell_node","cell_node_map","sys_node","access_control_object_namespace_map","access_control_object_namespace","access_control_object","componentWillMount","constructor","getDerivedStateFromProps","setState","componentWillReceiveProps","nextProps","prevState","bind","componentWillUpdate","nextState","prevProps","__reactInternalSnapshotFlag","__reactInternalSnapshot","getSnapshotBeforeUpdate","instance","Constructor","TypeError","_defineProperties","target","i","descriptor","enumerable","configurable","writable","Object","defineProperty","protoProps","staticProps","prototype","obj","ownKeys","object","enumerableOnly","keys","getOwnPropertySymbols","symbols","filter","sym","getOwnPropertyDescriptor","push","_objectSpread2","source","forEach","getOwnPropertyDescriptors","defineProperties","subClass","superClass","_setPrototypeOf","_getPrototypeOf","o","setPrototypeOf","getPrototypeOf","__proto__","p","_assertThisInitialized","self","ReferenceError","_createSuper","Derived","Super","Reflect","construct","sham","Proxy","Date","toString","call","e","_isNativeReflectConstruct","NewTarget","_possibleConstructorReturn","__suppressDeprecationWarning","Pane","_React$PureComponent","_super","split","styleProps","style","size","eleRef","classes","flex","position","outline","width","height","display","assign","ref","propTypes","isRequired","defaultProps","RESIZER_DEFAULT_CLASSNAME","Resizer","_React$Component","_onClick","onClick","_onDoubleClick","onDoubleClick","_onMouseDown","onMouseDown","_onTouchEnd","onTouchEnd","_onTouchStart","onTouchStart","resizerClassName","role","event","preventDefault","unFocus","window","selection","empty","getSelection","removeAllRanges","getDefaultSize","defaultSize","minSize","maxSize","draggedSize","min","max","Infinity","Math","SplitPane","onMouseMove","onTouchMove","onMouseUp","primary","initialSize","active","resized","pane1Size","pane2Size","instanceProps","addEventListener","getSizeUpdate","removeEventListener","eventWithTouches","touches","clientX","clientY","allowResize","onDragStarted","step","_this$state","isPrimaryFirst","pane1","pane2","ref2","node","node2","getBoundingClientRect","positionDelta","abs","sizeDelta","parseInt","getComputedStyle","order","newMaxSize","splitPane","newSize","newPosition","onDragFinished","_this$state2","_this$props4","onResizerClick","onResizerDoubleClick","paneClassName","pane1ClassName","pane2ClassName","paneStyle","pane1StyleProps","pane1Style","pane2StyleProps","pane2Style","resizerStyle","_this$state3","disabledClass","resizerClassNamesIncludingDefault","notNullChildren","toArray","c","removeNullChildren","overflow","MozUserSelect","WebkitUserSelect","msUserSelect","userSelect","flexDirection","left","right","bottom","minHeight","top","pane1Classes","pane2Classes","newState","isPanel1Primary","isReactComponent","Error","foundWillMountName","foundWillReceivePropsName","foundWillUpdateName","UNSAFE_componentWillMount","UNSAFE_componentWillReceiveProps","UNSAFE_componentWillUpdate","componentName","displayName","newApiName","componentDidUpdate","maybeSnapshot","snapshot","polyfill","TabbedContent","subTitle","actions","contentClassName","actionAsDropdown","growTitle","growable","title","Actions","useDropdown","DropdownMenu","items","icon","action","Button","DEFAULT_SIZE","EditTextWithPreview","valueProp","onChangeProp","editorLang","editorActions","_ref$editorTitle","editorTitle","editorSubTitle","renderPreview","initialShowPreview","initialSplitSize","editorRef","useRef","showPreview","setShowPreview","togglePreview","showHideAction","Icon","awesome","_toConsumableArray","MonacoEditor","language","readOnly","sizeRef","divProps","current","isEmpty","TAB_PANEL_CLASSNAME","ACTIVE_CLASSNAME","GROUP_DATA_KEY","TAB_DATA_KEY","GLOBAL_SYMBOL","getEventTarget","isCustom","getClosestScrollableParent","getOffsetByScrollableParent","Selector","getShadowIncludingRoot","root","getRoot","nodeName","isShadowRoot","host","parentNode","module","exports","opt","composed","Symbol","for","composedPath","isArray","matches","element","scrollHeight","clientHeight","parentElement","scrollableParent","elementBounds","scrollableParentBounds","scrollTop","scrollLeft","TABS","TAB_LIST","TAB","TAB_PANEL","VERTICAL_TABS","_onSelectTabHandlers","Set","_document","areVertical","areTabsVertical","isValidTabElement","tab","getTabDataFromHTMLElement","_selectTab","direction","tabs","getTabs","currentTab","currentTabIndex","findIndex","newIndex","selectTab","focus","onSelectTab","handler","add","delete","selectTabById","querySelector","scrollToElement","scrollIntoView","targetTab","group","align","previousTargetOffset","updateHTML","fireSelectTabEvent","dataset","diplodocId","resetScroll","updateHTMLVertical","updateHTMLHorizontal","querySelectorAll","updated","elements","input","hasAttribute","classList","remove","removeAttribute","setAttribute","htmlElem","diplodocIsActive","tabList","tabsContainer","allTabs","from","allPanels","contains","targetIndex","indexOf","panel","isTargetTab","toggle","targetOffset","topDelta","leftDelta","scrollTopDelta","scrollLeftDelta","scrollTo","eventTab","currentTabId","closest","parent","diplodocVerticalTab","_a","_b","diplodocKey","diplodocGroup","tabEl","matchesSelector","webkitMatchesSelector","mozMatchesSelector","msMatchesSelector","oMatchesSelector","selector","getRootNode","th","some","Element","code","Promise","resolve","navigator","clipboard","writeText","textarea","createElement","textContent","body","append","select","execCommand","removeChild","copyToClipboard","innerText","svgButton","getAttribute","getElementById","beginElement","notifySuccess","matchTitle","HTMLElement","find","findTitleInPath","cutNode","toggleCut","TITLE","CONTENT","openClass","openDefinitionClass","replace","isListenerNeeded","setDefinitionPosition","definitionElement","termElement","x","termX","y","termY","termRight","termLeft","termWidth","termHeight","termParent","termParentElement","termParentRight","termParentLeft","closeDefinition","termOnResize","relativeX","Number","relativeY","String","offsetTop","definitionParent","definitionWidth","definitionParentLeft","definitionLeftCoordinate","getCoords","definitionOutOfScreenOnLeft","fitDefinitionDocument","clientWidth","dir","customHeaderTop","offsetLeft","openDefinition","getElementsByClassName","termId","term","definition","elem","box","docEl","documentElement","pageYOffset","pageXOffset","clientTop","clientLeft","round","termKey","definitionTemplate","cloneNode","firstChild","appendChild","createDefinitionElement","isTargetDefinitionContent","random","substr","setDefinitionId","EditAnnotationWithPreview","initialValueProp","initialValue","valuePathProp","valuePath","hideReset","newValue","changed","resetActions","properties","PropTypes","propName","styles","failures","styleKey","supportingArrays","oneOfType","arrayOf"],"sourceRoot":""}