@lokalise/harmony 1.25.1 → 1.26.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.
- package/dist/harmony.cjs +160 -1
- package/dist/harmony.cjs.map +1 -0
- package/dist/harmony.css +639 -1
- package/dist/harmony.mjs +158 -1993
- package/dist/harmony.mjs.map +1 -0
- package/dist/harmony10.cjs +9 -0
- package/dist/harmony10.cjs.map +1 -0
- package/dist/harmony10.mjs +9 -0
- package/dist/harmony10.mjs.map +1 -0
- package/dist/harmony100.cjs +17 -0
- package/dist/harmony100.cjs.map +1 -0
- package/dist/harmony100.mjs +17 -0
- package/dist/harmony100.mjs.map +1 -0
- package/dist/harmony101.cjs +39 -0
- package/dist/harmony101.cjs.map +1 -0
- package/dist/harmony101.mjs +39 -0
- package/dist/harmony101.mjs.map +1 -0
- package/dist/harmony102.cjs +31 -0
- package/dist/harmony102.cjs.map +1 -0
- package/dist/harmony102.mjs +31 -0
- package/dist/harmony102.mjs.map +1 -0
- package/dist/harmony103.cjs +16 -0
- package/dist/harmony103.cjs.map +1 -0
- package/dist/harmony103.mjs +16 -0
- package/dist/harmony103.mjs.map +1 -0
- package/dist/harmony104.cjs +18 -0
- package/dist/harmony104.cjs.map +1 -0
- package/dist/harmony104.mjs +18 -0
- package/dist/harmony104.mjs.map +1 -0
- package/dist/harmony105.cjs +19 -0
- package/dist/harmony105.cjs.map +1 -0
- package/dist/harmony105.mjs +19 -0
- package/dist/harmony105.mjs.map +1 -0
- package/dist/harmony106.cjs +10 -0
- package/dist/harmony106.cjs.map +1 -0
- package/dist/harmony106.mjs +10 -0
- package/dist/harmony106.mjs.map +1 -0
- package/dist/harmony107.cjs +60 -0
- package/dist/harmony107.cjs.map +1 -0
- package/dist/harmony107.mjs +60 -0
- package/dist/harmony107.mjs.map +1 -0
- package/dist/harmony108.cjs +63 -0
- package/dist/harmony108.cjs.map +1 -0
- package/dist/harmony108.mjs +63 -0
- package/dist/harmony108.mjs.map +1 -0
- package/dist/harmony109.cjs +21 -0
- package/dist/harmony109.cjs.map +1 -0
- package/dist/harmony109.mjs +21 -0
- package/dist/harmony109.mjs.map +1 -0
- package/dist/harmony11.cjs +8 -0
- package/dist/harmony11.cjs.map +1 -0
- package/dist/harmony11.mjs +8 -0
- package/dist/harmony11.mjs.map +1 -0
- package/dist/harmony110.cjs +14 -0
- package/dist/harmony110.cjs.map +1 -0
- package/dist/harmony110.mjs +14 -0
- package/dist/harmony110.mjs.map +1 -0
- package/dist/harmony111.cjs +19 -0
- package/dist/harmony111.cjs.map +1 -0
- package/dist/harmony111.mjs +19 -0
- package/dist/harmony111.mjs.map +1 -0
- package/dist/harmony112.cjs +24 -0
- package/dist/harmony112.cjs.map +1 -0
- package/dist/harmony112.mjs +24 -0
- package/dist/harmony112.mjs.map +1 -0
- package/dist/harmony113.cjs +15 -0
- package/dist/harmony113.cjs.map +1 -0
- package/dist/harmony113.mjs +15 -0
- package/dist/harmony113.mjs.map +1 -0
- package/dist/harmony114.cjs +49 -0
- package/dist/harmony114.cjs.map +1 -0
- package/dist/harmony114.mjs +49 -0
- package/dist/harmony114.mjs.map +1 -0
- package/dist/harmony115.cjs +15 -0
- package/dist/harmony115.cjs.map +1 -0
- package/dist/harmony115.mjs +15 -0
- package/dist/harmony115.mjs.map +1 -0
- package/dist/harmony116.cjs +9 -0
- package/dist/harmony116.cjs.map +1 -0
- package/dist/harmony116.mjs +9 -0
- package/dist/harmony116.mjs.map +1 -0
- package/dist/harmony117.cjs +15 -0
- package/dist/harmony117.cjs.map +1 -0
- package/dist/harmony117.mjs +15 -0
- package/dist/harmony117.mjs.map +1 -0
- package/dist/harmony118.cjs +35 -0
- package/dist/harmony118.cjs.map +1 -0
- package/dist/harmony118.mjs +35 -0
- package/dist/harmony118.mjs.map +1 -0
- package/dist/harmony119.cjs +17 -0
- package/dist/harmony119.cjs.map +1 -0
- package/dist/harmony119.mjs +17 -0
- package/dist/harmony119.mjs.map +1 -0
- package/dist/harmony12.cjs +27 -0
- package/dist/harmony12.cjs.map +1 -0
- package/dist/harmony12.mjs +27 -0
- package/dist/harmony12.mjs.map +1 -0
- package/dist/harmony13.cjs +8 -0
- package/dist/harmony13.cjs.map +1 -0
- package/dist/harmony13.mjs +8 -0
- package/dist/harmony13.mjs.map +1 -0
- package/dist/harmony14.cjs +14 -0
- package/dist/harmony14.cjs.map +1 -0
- package/dist/harmony14.mjs +14 -0
- package/dist/harmony14.mjs.map +1 -0
- package/dist/harmony15.cjs +14 -0
- package/dist/harmony15.cjs.map +1 -0
- package/dist/harmony15.mjs +14 -0
- package/dist/harmony15.mjs.map +1 -0
- package/dist/harmony16.cjs +21 -0
- package/dist/harmony16.cjs.map +1 -0
- package/dist/harmony16.mjs +21 -0
- package/dist/harmony16.mjs.map +1 -0
- package/dist/harmony17.cjs +19 -0
- package/dist/harmony17.cjs.map +1 -0
- package/dist/harmony17.mjs +19 -0
- package/dist/harmony17.mjs.map +1 -0
- package/dist/harmony18.cjs +145 -0
- package/dist/harmony18.cjs.map +1 -0
- package/dist/harmony18.mjs +145 -0
- package/dist/harmony18.mjs.map +1 -0
- package/dist/harmony19.cjs +17 -0
- package/dist/harmony19.cjs.map +1 -0
- package/dist/harmony19.mjs +17 -0
- package/dist/harmony19.mjs.map +1 -0
- package/dist/harmony2.cjs +22 -0
- package/dist/harmony2.cjs.map +1 -0
- package/dist/harmony2.mjs +22 -0
- package/dist/harmony2.mjs.map +1 -0
- package/dist/harmony20.cjs +20 -0
- package/dist/harmony20.cjs.map +1 -0
- package/dist/harmony20.mjs +20 -0
- package/dist/harmony20.mjs.map +1 -0
- package/dist/harmony21.cjs +21 -0
- package/dist/harmony21.cjs.map +1 -0
- package/dist/harmony21.mjs +21 -0
- package/dist/harmony21.mjs.map +1 -0
- package/dist/harmony22.cjs +23 -0
- package/dist/harmony22.cjs.map +1 -0
- package/dist/harmony22.mjs +23 -0
- package/dist/harmony22.mjs.map +1 -0
- package/dist/harmony23.cjs +23 -0
- package/dist/harmony23.cjs.map +1 -0
- package/dist/harmony23.mjs +23 -0
- package/dist/harmony23.mjs.map +1 -0
- package/dist/harmony24.cjs +13 -0
- package/dist/harmony24.cjs.map +1 -0
- package/dist/harmony24.mjs +13 -0
- package/dist/harmony24.mjs.map +1 -0
- package/dist/harmony25.cjs +14 -0
- package/dist/harmony25.cjs.map +1 -0
- package/dist/harmony25.mjs +14 -0
- package/dist/harmony25.mjs.map +1 -0
- package/dist/harmony26.cjs +30 -0
- package/dist/harmony26.cjs.map +1 -0
- package/dist/harmony26.mjs +30 -0
- package/dist/harmony26.mjs.map +1 -0
- package/dist/harmony27.cjs +34 -0
- package/dist/harmony27.cjs.map +1 -0
- package/dist/harmony27.mjs +34 -0
- package/dist/harmony27.mjs.map +1 -0
- package/dist/harmony28.cjs +41 -0
- package/dist/harmony28.cjs.map +1 -0
- package/dist/harmony28.mjs +41 -0
- package/dist/harmony28.mjs.map +1 -0
- package/dist/harmony29.cjs +13 -0
- package/dist/harmony29.cjs.map +1 -0
- package/dist/harmony29.mjs +13 -0
- package/dist/harmony29.mjs.map +1 -0
- package/dist/harmony3.cjs +47 -0
- package/dist/harmony3.cjs.map +1 -0
- package/dist/harmony3.mjs +47 -0
- package/dist/harmony3.mjs.map +1 -0
- package/dist/harmony30.cjs +17 -0
- package/dist/harmony30.cjs.map +1 -0
- package/dist/harmony30.mjs +17 -0
- package/dist/harmony30.mjs.map +1 -0
- package/dist/harmony31.cjs +83 -0
- package/dist/harmony31.cjs.map +1 -0
- package/dist/harmony31.mjs +83 -0
- package/dist/harmony31.mjs.map +1 -0
- package/dist/harmony32.cjs +113 -0
- package/dist/harmony32.cjs.map +1 -0
- package/dist/harmony32.mjs +113 -0
- package/dist/harmony32.mjs.map +1 -0
- package/dist/harmony33.cjs +11 -0
- package/dist/harmony33.cjs.map +1 -0
- package/dist/harmony33.mjs +11 -0
- package/dist/harmony33.mjs.map +1 -0
- package/dist/harmony34.cjs +59 -0
- package/dist/harmony34.cjs.map +1 -0
- package/dist/harmony34.mjs +59 -0
- package/dist/harmony34.mjs.map +1 -0
- package/dist/harmony35.cjs +27 -0
- package/dist/harmony35.cjs.map +1 -0
- package/dist/harmony35.mjs +27 -0
- package/dist/harmony35.mjs.map +1 -0
- package/dist/harmony36.cjs +21 -0
- package/dist/harmony36.cjs.map +1 -0
- package/dist/harmony36.mjs +21 -0
- package/dist/harmony36.mjs.map +1 -0
- package/dist/harmony37.cjs +24 -0
- package/dist/harmony37.cjs.map +1 -0
- package/dist/harmony37.mjs +24 -0
- package/dist/harmony37.mjs.map +1 -0
- package/dist/harmony38.cjs +16 -0
- package/dist/harmony38.cjs.map +1 -0
- package/dist/harmony38.mjs +16 -0
- package/dist/harmony38.mjs.map +1 -0
- package/dist/harmony39.cjs +18 -0
- package/dist/harmony39.cjs.map +1 -0
- package/dist/harmony39.mjs +18 -0
- package/dist/harmony39.mjs.map +1 -0
- package/dist/harmony4.cjs +29 -0
- package/dist/harmony4.cjs.map +1 -0
- package/dist/harmony4.mjs +29 -0
- package/dist/harmony4.mjs.map +1 -0
- package/dist/harmony40.cjs +18 -0
- package/dist/harmony40.cjs.map +1 -0
- package/dist/harmony40.mjs +18 -0
- package/dist/harmony40.mjs.map +1 -0
- package/dist/harmony41.cjs +20 -0
- package/dist/harmony41.cjs.map +1 -0
- package/dist/harmony41.mjs +20 -0
- package/dist/harmony41.mjs.map +1 -0
- package/dist/harmony42.cjs +20 -0
- package/dist/harmony42.cjs.map +1 -0
- package/dist/harmony42.mjs +20 -0
- package/dist/harmony42.mjs.map +1 -0
- package/dist/harmony43.cjs +18 -0
- package/dist/harmony43.cjs.map +1 -0
- package/dist/harmony43.mjs +18 -0
- package/dist/harmony43.mjs.map +1 -0
- package/dist/harmony44.cjs +20 -0
- package/dist/harmony44.cjs.map +1 -0
- package/dist/harmony44.mjs +20 -0
- package/dist/harmony44.mjs.map +1 -0
- package/dist/harmony45.cjs +17 -0
- package/dist/harmony45.cjs.map +1 -0
- package/dist/harmony45.mjs +17 -0
- package/dist/harmony45.mjs.map +1 -0
- package/dist/harmony46.cjs +17 -0
- package/dist/harmony46.cjs.map +1 -0
- package/dist/harmony46.mjs +17 -0
- package/dist/harmony46.mjs.map +1 -0
- package/dist/harmony47.cjs +20 -0
- package/dist/harmony47.cjs.map +1 -0
- package/dist/harmony47.mjs +20 -0
- package/dist/harmony47.mjs.map +1 -0
- package/dist/harmony48.cjs +18 -0
- package/dist/harmony48.cjs.map +1 -0
- package/dist/harmony48.mjs +18 -0
- package/dist/harmony48.mjs.map +1 -0
- package/dist/harmony49.cjs +21 -0
- package/dist/harmony49.cjs.map +1 -0
- package/dist/harmony49.mjs +21 -0
- package/dist/harmony49.mjs.map +1 -0
- package/dist/harmony5.cjs +14 -0
- package/dist/harmony5.cjs.map +1 -0
- package/dist/harmony5.mjs +14 -0
- package/dist/harmony5.mjs.map +1 -0
- package/dist/harmony50.cjs +64 -0
- package/dist/harmony50.cjs.map +1 -0
- package/dist/harmony50.mjs +64 -0
- package/dist/harmony50.mjs.map +1 -0
- package/dist/harmony51.cjs +9 -0
- package/dist/harmony51.cjs.map +1 -0
- package/dist/harmony51.mjs +9 -0
- package/dist/harmony51.mjs.map +1 -0
- package/dist/harmony52.cjs +12 -0
- package/dist/harmony52.cjs.map +1 -0
- package/dist/harmony52.mjs +12 -0
- package/dist/harmony52.mjs.map +1 -0
- package/dist/harmony53.cjs +21 -0
- package/dist/harmony53.cjs.map +1 -0
- package/dist/harmony53.mjs +21 -0
- package/dist/harmony53.mjs.map +1 -0
- package/dist/harmony54.cjs +26 -0
- package/dist/harmony54.cjs.map +1 -0
- package/dist/harmony54.mjs +26 -0
- package/dist/harmony54.mjs.map +1 -0
- package/dist/harmony55.cjs +8 -0
- package/dist/harmony55.cjs.map +1 -0
- package/dist/harmony55.mjs +8 -0
- package/dist/harmony55.mjs.map +1 -0
- package/dist/harmony56.cjs +35 -0
- package/dist/harmony56.cjs.map +1 -0
- package/dist/harmony56.mjs +35 -0
- package/dist/harmony56.mjs.map +1 -0
- package/dist/harmony57.cjs +35 -0
- package/dist/harmony57.cjs.map +1 -0
- package/dist/harmony57.mjs +35 -0
- package/dist/harmony57.mjs.map +1 -0
- package/dist/harmony58.cjs +22 -0
- package/dist/harmony58.cjs.map +1 -0
- package/dist/harmony58.mjs +22 -0
- package/dist/harmony58.mjs.map +1 -0
- package/dist/harmony59.cjs +34 -0
- package/dist/harmony59.cjs.map +1 -0
- package/dist/harmony59.mjs +34 -0
- package/dist/harmony59.mjs.map +1 -0
- package/dist/harmony6.cjs +52 -0
- package/dist/harmony6.cjs.map +1 -0
- package/dist/harmony6.mjs +52 -0
- package/dist/harmony6.mjs.map +1 -0
- package/dist/harmony60.cjs +62 -0
- package/dist/harmony60.cjs.map +1 -0
- package/dist/harmony60.mjs +62 -0
- package/dist/harmony60.mjs.map +1 -0
- package/dist/harmony61.cjs +12 -0
- package/dist/harmony61.cjs.map +1 -0
- package/dist/harmony61.mjs +12 -0
- package/dist/harmony61.mjs.map +1 -0
- package/dist/harmony62.cjs +11 -0
- package/dist/harmony62.cjs.map +1 -0
- package/dist/harmony62.mjs +11 -0
- package/dist/harmony62.mjs.map +1 -0
- package/dist/harmony63.cjs +32 -0
- package/dist/harmony63.cjs.map +1 -0
- package/dist/harmony63.mjs +32 -0
- package/dist/harmony63.mjs.map +1 -0
- package/dist/harmony64.cjs +6 -0
- package/dist/harmony64.cjs.map +1 -0
- package/dist/harmony64.mjs +6 -0
- package/dist/harmony64.mjs.map +1 -0
- package/dist/harmony65.cjs +9 -0
- package/dist/harmony65.cjs.map +1 -0
- package/dist/harmony65.mjs +9 -0
- package/dist/harmony65.mjs.map +1 -0
- package/dist/harmony66.cjs +12 -0
- package/dist/harmony66.cjs.map +1 -0
- package/dist/harmony66.mjs +12 -0
- package/dist/harmony66.mjs.map +1 -0
- package/dist/harmony67.cjs +12 -0
- package/dist/harmony67.cjs.map +1 -0
- package/dist/harmony67.mjs +12 -0
- package/dist/harmony67.mjs.map +1 -0
- package/dist/harmony68.cjs +60 -0
- package/dist/harmony68.cjs.map +1 -0
- package/dist/harmony68.mjs +60 -0
- package/dist/harmony68.mjs.map +1 -0
- package/dist/harmony69.cjs +35 -0
- package/dist/harmony69.cjs.map +1 -0
- package/dist/harmony69.mjs +35 -0
- package/dist/harmony69.mjs.map +1 -0
- package/dist/harmony7.cjs +33 -0
- package/dist/harmony7.cjs.map +1 -0
- package/dist/harmony7.mjs +33 -0
- package/dist/harmony7.mjs.map +1 -0
- package/dist/harmony70.cjs +8 -0
- package/dist/harmony70.cjs.map +1 -0
- package/dist/harmony70.mjs +8 -0
- package/dist/harmony70.mjs.map +1 -0
- package/dist/harmony71.cjs +12 -0
- package/dist/harmony71.cjs.map +1 -0
- package/dist/harmony71.mjs +12 -0
- package/dist/harmony71.mjs.map +1 -0
- package/dist/harmony72.cjs +27 -0
- package/dist/harmony72.cjs.map +1 -0
- package/dist/harmony72.mjs +27 -0
- package/dist/harmony72.mjs.map +1 -0
- package/dist/harmony73.cjs +9 -0
- package/dist/harmony73.cjs.map +1 -0
- package/dist/harmony73.mjs +9 -0
- package/dist/harmony73.mjs.map +1 -0
- package/dist/harmony74.cjs +24 -0
- package/dist/harmony74.cjs.map +1 -0
- package/dist/harmony74.mjs +24 -0
- package/dist/harmony74.mjs.map +1 -0
- package/dist/harmony75.cjs +15 -0
- package/dist/harmony75.cjs.map +1 -0
- package/dist/harmony75.mjs +15 -0
- package/dist/harmony75.mjs.map +1 -0
- package/dist/harmony76.cjs +14 -0
- package/dist/harmony76.cjs.map +1 -0
- package/dist/harmony76.mjs +14 -0
- package/dist/harmony76.mjs.map +1 -0
- package/dist/harmony77.cjs +24 -0
- package/dist/harmony77.cjs.map +1 -0
- package/dist/harmony77.mjs +24 -0
- package/dist/harmony77.mjs.map +1 -0
- package/dist/harmony78.cjs +21 -0
- package/dist/harmony78.cjs.map +1 -0
- package/dist/harmony78.mjs +21 -0
- package/dist/harmony78.mjs.map +1 -0
- package/dist/harmony79.cjs +17 -0
- package/dist/harmony79.cjs.map +1 -0
- package/dist/harmony79.mjs +17 -0
- package/dist/harmony79.mjs.map +1 -0
- package/dist/harmony8.cjs +26 -0
- package/dist/harmony8.cjs.map +1 -0
- package/dist/harmony8.mjs +26 -0
- package/dist/harmony8.mjs.map +1 -0
- package/dist/harmony80.cjs +29 -0
- package/dist/harmony80.cjs.map +1 -0
- package/dist/harmony80.mjs +29 -0
- package/dist/harmony80.mjs.map +1 -0
- package/dist/harmony81.cjs +14 -0
- package/dist/harmony81.cjs.map +1 -0
- package/dist/harmony81.mjs +14 -0
- package/dist/harmony81.mjs.map +1 -0
- package/dist/harmony82.cjs +102 -0
- package/dist/harmony82.cjs.map +1 -0
- package/dist/harmony82.mjs +85 -0
- package/dist/harmony82.mjs.map +1 -0
- package/dist/harmony83.cjs +24 -0
- package/dist/harmony83.cjs.map +1 -0
- package/dist/harmony83.mjs +24 -0
- package/dist/harmony83.mjs.map +1 -0
- package/dist/harmony84.cjs +8 -0
- package/dist/harmony84.cjs.map +1 -0
- package/dist/harmony84.mjs +8 -0
- package/dist/harmony84.mjs.map +1 -0
- package/dist/harmony85.cjs +135 -0
- package/dist/harmony85.cjs.map +1 -0
- package/dist/harmony85.mjs +135 -0
- package/dist/harmony85.mjs.map +1 -0
- package/dist/harmony86.cjs +15 -0
- package/dist/harmony86.cjs.map +1 -0
- package/dist/harmony86.mjs +15 -0
- package/dist/harmony86.mjs.map +1 -0
- package/dist/harmony87.cjs +8 -0
- package/dist/harmony87.cjs.map +1 -0
- package/dist/harmony87.mjs +8 -0
- package/dist/harmony87.mjs.map +1 -0
- package/dist/harmony88.cjs +43 -0
- package/dist/harmony88.cjs.map +1 -0
- package/dist/harmony88.mjs +43 -0
- package/dist/harmony88.mjs.map +1 -0
- package/dist/harmony89.cjs +63 -0
- package/dist/harmony89.cjs.map +1 -0
- package/dist/harmony89.mjs +63 -0
- package/dist/harmony89.mjs.map +1 -0
- package/dist/harmony9.cjs +55 -0
- package/dist/harmony9.cjs.map +1 -0
- package/dist/harmony9.mjs +55 -0
- package/dist/harmony9.mjs.map +1 -0
- package/dist/harmony90.cjs +10 -0
- package/dist/harmony90.cjs.map +1 -0
- package/dist/harmony90.mjs +10 -0
- package/dist/harmony90.mjs.map +1 -0
- package/dist/harmony91.cjs +9 -0
- package/dist/harmony91.cjs.map +1 -0
- package/dist/harmony91.mjs +9 -0
- package/dist/harmony91.mjs.map +1 -0
- package/dist/harmony92.cjs +8 -0
- package/dist/harmony92.cjs.map +1 -0
- package/dist/harmony92.mjs +8 -0
- package/dist/harmony92.mjs.map +1 -0
- package/dist/harmony93.cjs +8 -0
- package/dist/harmony93.cjs.map +1 -0
- package/dist/harmony93.mjs +8 -0
- package/dist/harmony93.mjs.map +1 -0
- package/dist/harmony94.cjs +19 -0
- package/dist/harmony94.cjs.map +1 -0
- package/dist/harmony94.mjs +19 -0
- package/dist/harmony94.mjs.map +1 -0
- package/dist/harmony95.cjs +65 -0
- package/dist/harmony95.cjs.map +1 -0
- package/dist/harmony95.mjs +65 -0
- package/dist/harmony95.mjs.map +1 -0
- package/dist/harmony96.cjs +91 -0
- package/dist/harmony96.cjs.map +1 -0
- package/dist/harmony96.mjs +91 -0
- package/dist/harmony96.mjs.map +1 -0
- package/dist/harmony97.cjs +21 -0
- package/dist/harmony97.cjs.map +1 -0
- package/dist/harmony97.mjs +21 -0
- package/dist/harmony97.mjs.map +1 -0
- package/dist/harmony98.cjs +99 -0
- package/dist/harmony98.cjs.map +1 -0
- package/dist/harmony98.mjs +99 -0
- package/dist/harmony98.mjs.map +1 -0
- package/dist/harmony99.cjs +16 -0
- package/dist/harmony99.cjs.map +1 -0
- package/dist/harmony99.mjs +16 -0
- package/dist/harmony99.mjs.map +1 -0
- package/dist/types/src/features/publicApi/hooks/useListPermissionTemplates.d.ts +29 -0
- package/dist/types/src/features/publicApi/permissionTemplates.d.ts +112 -0
- package/dist/types/src/features/publicApi/types/permissionTemplateTypes.d.ts +86 -0
- package/package.json +1 -1
@@ -0,0 +1,55 @@
|
|
1
|
+
import { jsx } from "react/jsx-runtime";
|
2
|
+
const urlRegex = /(\b(https?|):\/\/[-a-zA-Zа-яА-Я0-9+&@#/%?=~_|!:,.;]*[-a-zA-Zа-яА-Я0-9+&@#/%=~_|])/gi;
|
3
|
+
const matchUrl = (input) => input.match(urlRegex) ?? [];
|
4
|
+
const replaceWithAnchor = (text, pattern, index) => {
|
5
|
+
const components = text.split(pattern);
|
6
|
+
if (components.length === 1) {
|
7
|
+
return text;
|
8
|
+
}
|
9
|
+
const result = [];
|
10
|
+
if (components[0] !== "") {
|
11
|
+
result.push(components[0]);
|
12
|
+
}
|
13
|
+
components.shift();
|
14
|
+
if (components[components.length - 1] === "") {
|
15
|
+
components.pop();
|
16
|
+
}
|
17
|
+
result.push(
|
18
|
+
/* @__PURE__ */ jsx("a", { href: pattern, target: "_blank", rel: "noreferrer noopener", children: pattern }, pattern + index)
|
19
|
+
);
|
20
|
+
result.push(components.join(pattern));
|
21
|
+
return result.filter((item) => item !== "");
|
22
|
+
};
|
23
|
+
const matchUrlsAndReplace = (text) => {
|
24
|
+
const matchedUrls = matchUrl(text);
|
25
|
+
if (!(matchedUrls == null ? void 0 : matchedUrls.length)) {
|
26
|
+
return text;
|
27
|
+
}
|
28
|
+
return matchedUrls.reduce((accumulator, pattern, index) => {
|
29
|
+
if (typeof accumulator === "string") {
|
30
|
+
return replaceWithAnchor(accumulator, pattern, index);
|
31
|
+
}
|
32
|
+
return accumulator.flatMap((item) => {
|
33
|
+
if (typeof item === "string") {
|
34
|
+
return replaceWithAnchor(item, pattern, index);
|
35
|
+
}
|
36
|
+
return item;
|
37
|
+
});
|
38
|
+
}, text);
|
39
|
+
};
|
40
|
+
const makeUrlClickable = (text) => {
|
41
|
+
if (typeof text === "string") {
|
42
|
+
return matchUrlsAndReplace(text);
|
43
|
+
}
|
44
|
+
return text.flatMap((item) => {
|
45
|
+
if (typeof item === "string") {
|
46
|
+
return matchUrlsAndReplace(item);
|
47
|
+
}
|
48
|
+
return item;
|
49
|
+
}, text);
|
50
|
+
};
|
51
|
+
export {
|
52
|
+
makeUrlClickable,
|
53
|
+
matchUrl
|
54
|
+
};
|
55
|
+
//# sourceMappingURL=harmony9.mjs.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"harmony9.mjs","sources":["../src/utils/content/url/url.tsx"],"sourcesContent":["import type { ReactNode } from 'react'\n\nconst urlRegex =\n\t/(\\b(https?|):\\/\\/[-a-zA-Zа-яА-Я0-9+&@#/%?=~_|!:,.;]*[-a-zA-Zа-яА-Я0-9+&@#/%=~_|])/gi\n\nexport const matchUrl = (input: string): readonly string[] => input.match(urlRegex) ?? []\n\nconst replaceWithAnchor = (text: string, pattern: string, index: number) => {\n\tconst components = text.split(pattern)\n\t// if there are no matches\n\tif (components.length === 1) {\n\t\treturn text\n\t}\n\n\tconst result = []\n\n\t// empty value in first position means string starts with pattern\n\tif (components[0] !== '') {\n\t\tresult.push(components[0])\n\t}\n\n\tcomponents.shift()\n\n\t// empty value in last position means string ends with pattern\n\tif (components[components.length - 1] === '') {\n\t\tcomponents.pop()\n\t}\n\n\tresult.push(\n\t\t<a key={pattern + index} href={pattern} target=\"_blank\" rel=\"noreferrer noopener\">\n\t\t\t{pattern}\n\t\t</a>,\n\t)\n\tresult.push(components.join(pattern))\n\n\treturn result.filter((item) => item !== '')\n}\n\nconst matchUrlsAndReplace = (text: string) => {\n\tconst matchedUrls = matchUrl(text)\n\n\tif (!matchedUrls?.length) {\n\t\treturn text\n\t}\n\n\treturn matchedUrls.reduce<string | ReactNode[]>((accumulator, pattern, index) => {\n\t\tif (typeof accumulator === 'string') {\n\t\t\treturn replaceWithAnchor(accumulator, pattern, index)\n\t\t}\n\n\t\treturn accumulator.flatMap((item) => {\n\t\t\tif (typeof item === 'string') {\n\t\t\t\treturn replaceWithAnchor(item, pattern, index)\n\t\t\t}\n\n\t\t\treturn item\n\t\t})\n\t}, text)\n}\n\nexport const makeUrlClickable = (text: string | ReactNode[]) => {\n\tif (typeof text === 'string') {\n\t\treturn matchUrlsAndReplace(text)\n\t}\n\n\treturn text.flatMap((item) => {\n\t\tif (typeof item === 'string') {\n\t\t\treturn matchUrlsAndReplace(item)\n\t\t}\n\n\t\treturn item\n\t}, text)\n}\n"],"names":[],"mappings":";AAEA,MAAM,WACL;AAEM,MAAM,WAAW,CAAC,UAAqC,MAAM,MAAM,QAAQ,KAAK,CAAA;AAEvF,MAAM,oBAAoB,CAAC,MAAc,SAAiB,UAAkB;AACrE,QAAA,aAAa,KAAK,MAAM,OAAO;AAEjC,MAAA,WAAW,WAAW,GAAG;AACrB,WAAA;AAAA,EAAA;AAGR,QAAM,SAAS,CAAC;AAGZ,MAAA,WAAW,CAAC,MAAM,IAAI;AAClB,WAAA,KAAK,WAAW,CAAC,CAAC;AAAA,EAAA;AAG1B,aAAW,MAAM;AAGjB,MAAI,WAAW,WAAW,SAAS,CAAC,MAAM,IAAI;AAC7C,eAAW,IAAI;AAAA,EAAA;AAGT,SAAA;AAAA,IACN,oBAAC,KAAwB,EAAA,MAAM,SAAS,QAAO,UAAS,KAAI,uBAC1D,UADM,QAAA,GAAA,UAAU,KAElB;AAAA,EACD;AACA,SAAO,KAAK,WAAW,KAAK,OAAO,CAAC;AAEpC,SAAO,OAAO,OAAO,CAAC,SAAS,SAAS,EAAE;AAC3C;AAEA,MAAM,sBAAsB,CAAC,SAAiB;AACvC,QAAA,cAAc,SAAS,IAAI;AAE7B,MAAA,EAAC,2CAAa,SAAQ;AAClB,WAAA;AAAA,EAAA;AAGR,SAAO,YAAY,OAA6B,CAAC,aAAa,SAAS,UAAU;AAC5E,QAAA,OAAO,gBAAgB,UAAU;AAC7B,aAAA,kBAAkB,aAAa,SAAS,KAAK;AAAA,IAAA;AAG9C,WAAA,YAAY,QAAQ,CAAC,SAAS;AAChC,UAAA,OAAO,SAAS,UAAU;AACtB,eAAA,kBAAkB,MAAM,SAAS,KAAK;AAAA,MAAA;AAGvC,aAAA;AAAA,IAAA,CACP;AAAA,KACC,IAAI;AACR;AAEa,MAAA,mBAAmB,CAAC,SAA+B;AAC3D,MAAA,OAAO,SAAS,UAAU;AAC7B,WAAO,oBAAoB,IAAI;AAAA,EAAA;AAGzB,SAAA,KAAK,QAAQ,CAAC,SAAS;AACzB,QAAA,OAAO,SAAS,UAAU;AAC7B,aAAO,oBAAoB,IAAI;AAAA,IAAA;AAGzB,WAAA;AAAA,KACL,IAAI;AACR;"}
|
@@ -0,0 +1,10 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
3
|
+
const TaskEvents = {
|
4
|
+
TaskCompleted: "task_completed",
|
5
|
+
TaskClosed: "task_closed",
|
6
|
+
Refresh: "refresh",
|
7
|
+
ShowDialog: "show_dialog"
|
8
|
+
};
|
9
|
+
exports.TaskEvents = TaskEvents;
|
10
|
+
//# sourceMappingURL=harmony90.cjs.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"harmony90.cjs","sources":["../src/components/Sidebar/Widgets/Tasks/utils/taskEvents.ts"],"sourcesContent":["import type { TypesFromMap } from '@utils'\n\nexport const TaskEvents = {\n\tTaskCompleted: 'task_completed',\n\tTaskClosed: 'task_closed',\n\tRefresh: 'refresh',\n\tShowDialog: 'show_dialog',\n} as const\n\nexport type TaskEvent = TypesFromMap<typeof TaskEvents>\n\ntype SingleTaskPayload = {\n\ttaskId: string | number\n}\n\ntype DispatchTaskEventPayload =\n\t| {\n\t\t\tname: typeof TaskEvents.TaskCompleted\n\t\t\tdetail: SingleTaskPayload\n\t }\n\t| {\n\t\t\tname: typeof TaskEvents.TaskClosed\n\t\t\tdetail: SingleTaskPayload\n\t }\n\t| {\n\t\t\tname: typeof TaskEvents.Refresh\n\t }\n\t| {\n\t\t\tname: typeof TaskEvents.ShowDialog\n\t }\n\nexport const dispatchTaskEvent = (props: DispatchTaskEventPayload) => {\n\tconst { name } = props\n\tdocument.dispatchEvent(new CustomEvent(name, { detail: 'detail' in props ? props.detail : {} }))\n}\n"],"names":[],"mappings":";;AAEO,MAAM,aAAa;AAAA,EACzB,eAAe;AAAA,EACf,YAAY;AAAA,EACZ,SAAS;AAAA,EACT,YAAY;AACb;;"}
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"harmony90.mjs","sources":["../src/components/Sidebar/Widgets/Tasks/utils/taskEvents.ts"],"sourcesContent":["import type { TypesFromMap } from '@utils'\n\nexport const TaskEvents = {\n\tTaskCompleted: 'task_completed',\n\tTaskClosed: 'task_closed',\n\tRefresh: 'refresh',\n\tShowDialog: 'show_dialog',\n} as const\n\nexport type TaskEvent = TypesFromMap<typeof TaskEvents>\n\ntype SingleTaskPayload = {\n\ttaskId: string | number\n}\n\ntype DispatchTaskEventPayload =\n\t| {\n\t\t\tname: typeof TaskEvents.TaskCompleted\n\t\t\tdetail: SingleTaskPayload\n\t }\n\t| {\n\t\t\tname: typeof TaskEvents.TaskClosed\n\t\t\tdetail: SingleTaskPayload\n\t }\n\t| {\n\t\t\tname: typeof TaskEvents.Refresh\n\t }\n\t| {\n\t\t\tname: typeof TaskEvents.ShowDialog\n\t }\n\nexport const dispatchTaskEvent = (props: DispatchTaskEventPayload) => {\n\tconst { name } = props\n\tdocument.dispatchEvent(new CustomEvent(name, { detail: 'detail' in props ? props.detail : {} }))\n}\n"],"names":[],"mappings":"AAEO,MAAM,aAAa;AAAA,EACzB,eAAe;AAAA,EACf,YAAY;AAAA,EACZ,SAAS;AAAA,EACT,YAAY;AACb;"}
|
@@ -0,0 +1,9 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
|
3
|
+
const iconContainer = "_iconContainer_nz34m_1";
|
4
|
+
const styles = {
|
5
|
+
iconContainer
|
6
|
+
};
|
7
|
+
exports.default = styles;
|
8
|
+
exports.iconContainer = iconContainer;
|
9
|
+
//# sourceMappingURL=harmony91.cjs.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"harmony91.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;"}
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"harmony91.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;"}
|
@@ -0,0 +1,8 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
|
3
|
+
const _commonjsHelpers = require("./harmony116.cjs");
|
4
|
+
const debounce$1 = require("./harmony98.cjs");
|
5
|
+
var debounceExports = debounce$1.__require();
|
6
|
+
const debounce = /* @__PURE__ */ _commonjsHelpers.getDefaultExportFromCjs(debounceExports);
|
7
|
+
exports.default = debounce;
|
8
|
+
//# sourceMappingURL=harmony92.cjs.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"harmony92.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;"}
|
@@ -0,0 +1,8 @@
|
|
1
|
+
import { getDefaultExportFromCjs } from "./harmony116.mjs";
|
2
|
+
import { __require as requireDebounce } from "./harmony98.mjs";
|
3
|
+
var debounceExports = requireDebounce();
|
4
|
+
const debounce = /* @__PURE__ */ getDefaultExportFromCjs(debounceExports);
|
5
|
+
export {
|
6
|
+
debounce as default
|
7
|
+
};
|
8
|
+
//# sourceMappingURL=harmony92.mjs.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"harmony92.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;"}
|
@@ -0,0 +1,8 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
|
3
|
+
const _commonjsHelpers = require("./harmony116.cjs");
|
4
|
+
const throttle$1 = require("./harmony102.cjs");
|
5
|
+
var throttleExports = throttle$1.__require();
|
6
|
+
const throttle = /* @__PURE__ */ _commonjsHelpers.getDefaultExportFromCjs(throttleExports);
|
7
|
+
exports.default = throttle;
|
8
|
+
//# sourceMappingURL=harmony93.cjs.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"harmony93.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;"}
|
@@ -0,0 +1,8 @@
|
|
1
|
+
import { getDefaultExportFromCjs } from "./harmony116.mjs";
|
2
|
+
import { __require as requireThrottle } from "./harmony102.mjs";
|
3
|
+
var throttleExports = requireThrottle();
|
4
|
+
const throttle = /* @__PURE__ */ getDefaultExportFromCjs(throttleExports);
|
5
|
+
export {
|
6
|
+
throttle as default
|
7
|
+
};
|
8
|
+
//# sourceMappingURL=harmony93.mjs.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"harmony93.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;"}
|
@@ -0,0 +1,19 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
3
|
+
function buildGetRoute(params) {
|
4
|
+
return {
|
5
|
+
isEmptyResponseExpected: params.isEmptyResponseExpected ?? false,
|
6
|
+
isNonJSONResponseExpected: params.isNonJSONResponseExpected ?? false,
|
7
|
+
method: "get",
|
8
|
+
pathResolver: params.pathResolver,
|
9
|
+
requestHeaderSchema: params.requestHeaderSchema,
|
10
|
+
requestPathParamsSchema: params.requestPathParamsSchema,
|
11
|
+
requestQuerySchema: params.requestQuerySchema,
|
12
|
+
successResponseBodySchema: params.successResponseBodySchema,
|
13
|
+
description: params.description,
|
14
|
+
responseSchemasByStatusCode: params.responseSchemasByStatusCode,
|
15
|
+
metadata: params.metadata
|
16
|
+
};
|
17
|
+
}
|
18
|
+
exports.buildGetRoute = buildGetRoute;
|
19
|
+
//# sourceMappingURL=harmony94.cjs.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"harmony94.cjs","sources":["../node_modules/@lokalise/universal-ts-utils/dist/public/api-contracts/apiContracts.js"],"sourcesContent":["const EMPTY_PARAMS = {};\nexport function buildPayloadRoute(params) {\n return {\n isEmptyResponseExpected: params.isEmptyResponseExpected ?? false,\n isNonJSONResponseExpected: params.isNonJSONResponseExpected ?? false,\n method: params.method,\n pathResolver: params.pathResolver,\n requestBodySchema: params.requestBodySchema,\n requestHeaderSchema: params.requestHeaderSchema,\n requestPathParamsSchema: params.requestPathParamsSchema,\n requestQuerySchema: params.requestQuerySchema,\n successResponseBodySchema: params.successResponseBodySchema,\n description: params.description,\n responseSchemasByStatusCode: params.responseSchemasByStatusCode,\n metadata: params.metadata,\n };\n}\nexport function buildGetRoute(params) {\n return {\n isEmptyResponseExpected: params.isEmptyResponseExpected ?? false,\n isNonJSONResponseExpected: params.isNonJSONResponseExpected ?? false,\n method: 'get',\n pathResolver: params.pathResolver,\n requestHeaderSchema: params.requestHeaderSchema,\n requestPathParamsSchema: params.requestPathParamsSchema,\n requestQuerySchema: params.requestQuerySchema,\n successResponseBodySchema: params.successResponseBodySchema,\n description: params.description,\n responseSchemasByStatusCode: params.responseSchemasByStatusCode,\n metadata: params.metadata,\n };\n}\nexport function buildDeleteRoute(params) {\n return {\n isEmptyResponseExpected: params.isEmptyResponseExpected ?? true,\n isNonJSONResponseExpected: params.isNonJSONResponseExpected ?? false,\n method: 'delete',\n pathResolver: params.pathResolver,\n requestHeaderSchema: params.requestHeaderSchema,\n requestPathParamsSchema: params.requestPathParamsSchema,\n requestQuerySchema: params.requestQuerySchema,\n successResponseBodySchema: params.successResponseBodySchema,\n description: params.description,\n responseSchemasByStatusCode: params.responseSchemasByStatusCode,\n metadata: params.metadata,\n };\n}\n/**\n * This method maps given route definition to a string of the format '/static-path-part/:path-param-value'\n */\nexport function mapRouteToPath(\n// biome-ignore lint/suspicious/noExplicitAny: We don't care about types here, we just need Zod schema\nrouteDefinition) {\n if (!routeDefinition.requestPathParamsSchema) {\n return routeDefinition.pathResolver(EMPTY_PARAMS);\n }\n const shape = routeDefinition.requestPathParamsSchema.shape;\n const resolverParams = {};\n for (const key of Object.keys(shape)) {\n resolverParams[key] = `:${key}`;\n }\n return routeDefinition.pathResolver(resolverParams);\n}\n//# sourceMappingURL=apiContracts.js.map"],"names":[],"mappings":";;AAiBO,SAAS,cAAc,QAAQ;AAClC,SAAO;AAAA,IACH,yBAAyB,OAAO,2BAA2B;AAAA,IAC3D,2BAA2B,OAAO,6BAA6B;AAAA,IAC/D,QAAQ;AAAA,IACR,cAAc,OAAO;AAAA,IACrB,qBAAqB,OAAO;AAAA,IAC5B,yBAAyB,OAAO;AAAA,IAChC,oBAAoB,OAAO;AAAA,IAC3B,2BAA2B,OAAO;AAAA,IAClC,aAAa,OAAO;AAAA,IACpB,6BAA6B,OAAO;AAAA,IACpC,UAAU,OAAO;AAAA,EACpB;AACL;;","x_google_ignoreList":[0]}
|
@@ -0,0 +1,19 @@
|
|
1
|
+
function buildGetRoute(params) {
|
2
|
+
return {
|
3
|
+
isEmptyResponseExpected: params.isEmptyResponseExpected ?? false,
|
4
|
+
isNonJSONResponseExpected: params.isNonJSONResponseExpected ?? false,
|
5
|
+
method: "get",
|
6
|
+
pathResolver: params.pathResolver,
|
7
|
+
requestHeaderSchema: params.requestHeaderSchema,
|
8
|
+
requestPathParamsSchema: params.requestPathParamsSchema,
|
9
|
+
requestQuerySchema: params.requestQuerySchema,
|
10
|
+
successResponseBodySchema: params.successResponseBodySchema,
|
11
|
+
description: params.description,
|
12
|
+
responseSchemasByStatusCode: params.responseSchemasByStatusCode,
|
13
|
+
metadata: params.metadata
|
14
|
+
};
|
15
|
+
}
|
16
|
+
export {
|
17
|
+
buildGetRoute
|
18
|
+
};
|
19
|
+
//# sourceMappingURL=harmony94.mjs.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"harmony94.mjs","sources":["../node_modules/@lokalise/universal-ts-utils/dist/public/api-contracts/apiContracts.js"],"sourcesContent":["const EMPTY_PARAMS = {};\nexport function buildPayloadRoute(params) {\n return {\n isEmptyResponseExpected: params.isEmptyResponseExpected ?? false,\n isNonJSONResponseExpected: params.isNonJSONResponseExpected ?? false,\n method: params.method,\n pathResolver: params.pathResolver,\n requestBodySchema: params.requestBodySchema,\n requestHeaderSchema: params.requestHeaderSchema,\n requestPathParamsSchema: params.requestPathParamsSchema,\n requestQuerySchema: params.requestQuerySchema,\n successResponseBodySchema: params.successResponseBodySchema,\n description: params.description,\n responseSchemasByStatusCode: params.responseSchemasByStatusCode,\n metadata: params.metadata,\n };\n}\nexport function buildGetRoute(params) {\n return {\n isEmptyResponseExpected: params.isEmptyResponseExpected ?? false,\n isNonJSONResponseExpected: params.isNonJSONResponseExpected ?? false,\n method: 'get',\n pathResolver: params.pathResolver,\n requestHeaderSchema: params.requestHeaderSchema,\n requestPathParamsSchema: params.requestPathParamsSchema,\n requestQuerySchema: params.requestQuerySchema,\n successResponseBodySchema: params.successResponseBodySchema,\n description: params.description,\n responseSchemasByStatusCode: params.responseSchemasByStatusCode,\n metadata: params.metadata,\n };\n}\nexport function buildDeleteRoute(params) {\n return {\n isEmptyResponseExpected: params.isEmptyResponseExpected ?? true,\n isNonJSONResponseExpected: params.isNonJSONResponseExpected ?? false,\n method: 'delete',\n pathResolver: params.pathResolver,\n requestHeaderSchema: params.requestHeaderSchema,\n requestPathParamsSchema: params.requestPathParamsSchema,\n requestQuerySchema: params.requestQuerySchema,\n successResponseBodySchema: params.successResponseBodySchema,\n description: params.description,\n responseSchemasByStatusCode: params.responseSchemasByStatusCode,\n metadata: params.metadata,\n };\n}\n/**\n * This method maps given route definition to a string of the format '/static-path-part/:path-param-value'\n */\nexport function mapRouteToPath(\n// biome-ignore lint/suspicious/noExplicitAny: We don't care about types here, we just need Zod schema\nrouteDefinition) {\n if (!routeDefinition.requestPathParamsSchema) {\n return routeDefinition.pathResolver(EMPTY_PARAMS);\n }\n const shape = routeDefinition.requestPathParamsSchema.shape;\n const resolverParams = {};\n for (const key of Object.keys(shape)) {\n resolverParams[key] = `:${key}`;\n }\n return routeDefinition.pathResolver(resolverParams);\n}\n//# sourceMappingURL=apiContracts.js.map"],"names":[],"mappings":"AAiBO,SAAS,cAAc,QAAQ;AAClC,SAAO;AAAA,IACH,yBAAyB,OAAO,2BAA2B;AAAA,IAC3D,2BAA2B,OAAO,6BAA6B;AAAA,IAC/D,QAAQ;AAAA,IACR,cAAc,OAAO;AAAA,IACrB,qBAAqB,OAAO;AAAA,IAC5B,yBAAyB,OAAO;AAAA,IAChC,oBAAoB,OAAO;AAAA,IAC3B,2BAA2B,OAAO;AAAA,IAClC,aAAa,OAAO;AAAA,IACpB,6BAA6B,OAAO;AAAA,IACpC,UAAU,OAAO;AAAA,EACpB;AACL;","x_google_ignoreList":[0]}
|
@@ -0,0 +1,65 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
3
|
+
const min = Math.min;
|
4
|
+
const max = Math.max;
|
5
|
+
function clamp(start, value, end) {
|
6
|
+
return max(start, min(value, end));
|
7
|
+
}
|
8
|
+
function evaluate(value, param) {
|
9
|
+
return typeof value === "function" ? value(param) : value;
|
10
|
+
}
|
11
|
+
function getSide(placement) {
|
12
|
+
return placement.split("-")[0];
|
13
|
+
}
|
14
|
+
function getOppositeAxis(axis) {
|
15
|
+
return axis === "x" ? "y" : "x";
|
16
|
+
}
|
17
|
+
function getSideAxis(placement) {
|
18
|
+
return ["top", "bottom"].includes(getSide(placement)) ? "y" : "x";
|
19
|
+
}
|
20
|
+
function expandPaddingObject(padding) {
|
21
|
+
return {
|
22
|
+
top: 0,
|
23
|
+
right: 0,
|
24
|
+
bottom: 0,
|
25
|
+
left: 0,
|
26
|
+
...padding
|
27
|
+
};
|
28
|
+
}
|
29
|
+
function getPaddingObject(padding) {
|
30
|
+
return typeof padding !== "number" ? expandPaddingObject(padding) : {
|
31
|
+
top: padding,
|
32
|
+
right: padding,
|
33
|
+
bottom: padding,
|
34
|
+
left: padding
|
35
|
+
};
|
36
|
+
}
|
37
|
+
function rectToClientRect(rect) {
|
38
|
+
const {
|
39
|
+
x,
|
40
|
+
y,
|
41
|
+
width,
|
42
|
+
height
|
43
|
+
} = rect;
|
44
|
+
return {
|
45
|
+
width,
|
46
|
+
height,
|
47
|
+
top: y,
|
48
|
+
left: x,
|
49
|
+
right: x + width,
|
50
|
+
bottom: y + height,
|
51
|
+
x,
|
52
|
+
y
|
53
|
+
};
|
54
|
+
}
|
55
|
+
exports.clamp = clamp;
|
56
|
+
exports.evaluate = evaluate;
|
57
|
+
exports.expandPaddingObject = expandPaddingObject;
|
58
|
+
exports.getOppositeAxis = getOppositeAxis;
|
59
|
+
exports.getPaddingObject = getPaddingObject;
|
60
|
+
exports.getSide = getSide;
|
61
|
+
exports.getSideAxis = getSideAxis;
|
62
|
+
exports.max = max;
|
63
|
+
exports.min = min;
|
64
|
+
exports.rectToClientRect = rectToClientRect;
|
65
|
+
//# sourceMappingURL=harmony95.cjs.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"harmony95.cjs","sources":["../node_modules/@floating-ui/utils/dist/floating-ui.utils.mjs"],"sourcesContent":["/**\n * Custom positioning reference element.\n * @see https://floating-ui.com/docs/virtual-elements\n */\n\nconst sides = ['top', 'right', 'bottom', 'left'];\nconst alignments = ['start', 'end'];\nconst placements = /*#__PURE__*/sides.reduce((acc, side) => acc.concat(side, side + \"-\" + alignments[0], side + \"-\" + alignments[1]), []);\nconst min = Math.min;\nconst max = Math.max;\nconst round = Math.round;\nconst floor = Math.floor;\nconst createCoords = v => ({\n x: v,\n y: v\n});\nconst oppositeSideMap = {\n left: 'right',\n right: 'left',\n bottom: 'top',\n top: 'bottom'\n};\nconst oppositeAlignmentMap = {\n start: 'end',\n end: 'start'\n};\nfunction clamp(start, value, end) {\n return max(start, min(value, end));\n}\nfunction evaluate(value, param) {\n return typeof value === 'function' ? value(param) : value;\n}\nfunction getSide(placement) {\n return placement.split('-')[0];\n}\nfunction getAlignment(placement) {\n return placement.split('-')[1];\n}\nfunction getOppositeAxis(axis) {\n return axis === 'x' ? 'y' : 'x';\n}\nfunction getAxisLength(axis) {\n return axis === 'y' ? 'height' : 'width';\n}\nfunction getSideAxis(placement) {\n return ['top', 'bottom'].includes(getSide(placement)) ? 'y' : 'x';\n}\nfunction getAlignmentAxis(placement) {\n return getOppositeAxis(getSideAxis(placement));\n}\nfunction getAlignmentSides(placement, rects, rtl) {\n if (rtl === void 0) {\n rtl = false;\n }\n const alignment = getAlignment(placement);\n const alignmentAxis = getAlignmentAxis(placement);\n const length = getAxisLength(alignmentAxis);\n let mainAlignmentSide = alignmentAxis === 'x' ? alignment === (rtl ? 'end' : 'start') ? 'right' : 'left' : alignment === 'start' ? 'bottom' : 'top';\n if (rects.reference[length] > rects.floating[length]) {\n mainAlignmentSide = getOppositePlacement(mainAlignmentSide);\n }\n return [mainAlignmentSide, getOppositePlacement(mainAlignmentSide)];\n}\nfunction getExpandedPlacements(placement) {\n const oppositePlacement = getOppositePlacement(placement);\n return [getOppositeAlignmentPlacement(placement), oppositePlacement, getOppositeAlignmentPlacement(oppositePlacement)];\n}\nfunction getOppositeAlignmentPlacement(placement) {\n return placement.replace(/start|end/g, alignment => oppositeAlignmentMap[alignment]);\n}\nfunction getSideList(side, isStart, rtl) {\n const lr = ['left', 'right'];\n const rl = ['right', 'left'];\n const tb = ['top', 'bottom'];\n const bt = ['bottom', 'top'];\n switch (side) {\n case 'top':\n case 'bottom':\n if (rtl) return isStart ? rl : lr;\n return isStart ? lr : rl;\n case 'left':\n case 'right':\n return isStart ? tb : bt;\n default:\n return [];\n }\n}\nfunction getOppositeAxisPlacements(placement, flipAlignment, direction, rtl) {\n const alignment = getAlignment(placement);\n let list = getSideList(getSide(placement), direction === 'start', rtl);\n if (alignment) {\n list = list.map(side => side + \"-\" + alignment);\n if (flipAlignment) {\n list = list.concat(list.map(getOppositeAlignmentPlacement));\n }\n }\n return list;\n}\nfunction getOppositePlacement(placement) {\n return placement.replace(/left|right|bottom|top/g, side => oppositeSideMap[side]);\n}\nfunction expandPaddingObject(padding) {\n return {\n top: 0,\n right: 0,\n bottom: 0,\n left: 0,\n ...padding\n };\n}\nfunction getPaddingObject(padding) {\n return typeof padding !== 'number' ? expandPaddingObject(padding) : {\n top: padding,\n right: padding,\n bottom: padding,\n left: padding\n };\n}\nfunction rectToClientRect(rect) {\n const {\n x,\n y,\n width,\n height\n } = rect;\n return {\n width,\n height,\n top: y,\n left: x,\n right: x + width,\n bottom: y + height,\n x,\n y\n };\n}\n\nexport { alignments, clamp, createCoords, evaluate, expandPaddingObject, floor, getAlignment, getAlignmentAxis, getAlignmentSides, getAxisLength, getExpandedPlacements, getOppositeAlignmentPlacement, getOppositeAxis, getOppositeAxisPlacements, getOppositePlacement, getPaddingObject, getSide, getSideAxis, max, min, placements, rectToClientRect, round, sides };\n"],"names":[],"mappings":";;AAQK,MAAC,MAAM,KAAK;AACZ,MAAC,MAAM,KAAK;AAiBjB,SAAS,MAAM,OAAO,OAAO,KAAK;AAChC,SAAO,IAAI,OAAO,IAAI,OAAO,GAAG,CAAC;AACnC;AACA,SAAS,SAAS,OAAO,OAAO;AAC9B,SAAO,OAAO,UAAU,aAAa,MAAM,KAAK,IAAI;AACtD;AACA,SAAS,QAAQ,WAAW;AAC1B,SAAO,UAAU,MAAM,GAAG,EAAE,CAAC;AAC/B;AAIA,SAAS,gBAAgB,MAAM;AAC7B,SAAO,SAAS,MAAM,MAAM;AAC9B;AAIA,SAAS,YAAY,WAAW;AAC9B,SAAO,CAAC,OAAO,QAAQ,EAAE,SAAS,QAAQ,SAAS,CAAC,IAAI,MAAM;AAChE;AAuDA,SAAS,oBAAoB,SAAS;AACpC,SAAO;AAAA,IACL,KAAK;AAAA,IACL,OAAO;AAAA,IACP,QAAQ;AAAA,IACR,MAAM;AAAA,IACN,GAAG;AAAA,EACJ;AACH;AACA,SAAS,iBAAiB,SAAS;AACjC,SAAO,OAAO,YAAY,WAAW,oBAAoB,OAAO,IAAI;AAAA,IAClE,KAAK;AAAA,IACL,OAAO;AAAA,IACP,QAAQ;AAAA,IACR,MAAM;AAAA,EACP;AACH;AACA,SAAS,iBAAiB,MAAM;AAC9B,QAAM;AAAA,IACJ;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACJ,IAAM;AACJ,SAAO;AAAA,IACL;AAAA,IACA;AAAA,IACA,KAAK;AAAA,IACL,MAAM;AAAA,IACN,OAAO,IAAI;AAAA,IACX,QAAQ,IAAI;AAAA,IACZ;AAAA,IACA;AAAA,EACD;AACH;;;;;;;;;;;","x_google_ignoreList":[0]}
|
@@ -0,0 +1,65 @@
|
|
1
|
+
const min = Math.min;
|
2
|
+
const max = Math.max;
|
3
|
+
function clamp(start, value, end) {
|
4
|
+
return max(start, min(value, end));
|
5
|
+
}
|
6
|
+
function evaluate(value, param) {
|
7
|
+
return typeof value === "function" ? value(param) : value;
|
8
|
+
}
|
9
|
+
function getSide(placement) {
|
10
|
+
return placement.split("-")[0];
|
11
|
+
}
|
12
|
+
function getOppositeAxis(axis) {
|
13
|
+
return axis === "x" ? "y" : "x";
|
14
|
+
}
|
15
|
+
function getSideAxis(placement) {
|
16
|
+
return ["top", "bottom"].includes(getSide(placement)) ? "y" : "x";
|
17
|
+
}
|
18
|
+
function expandPaddingObject(padding) {
|
19
|
+
return {
|
20
|
+
top: 0,
|
21
|
+
right: 0,
|
22
|
+
bottom: 0,
|
23
|
+
left: 0,
|
24
|
+
...padding
|
25
|
+
};
|
26
|
+
}
|
27
|
+
function getPaddingObject(padding) {
|
28
|
+
return typeof padding !== "number" ? expandPaddingObject(padding) : {
|
29
|
+
top: padding,
|
30
|
+
right: padding,
|
31
|
+
bottom: padding,
|
32
|
+
left: padding
|
33
|
+
};
|
34
|
+
}
|
35
|
+
function rectToClientRect(rect) {
|
36
|
+
const {
|
37
|
+
x,
|
38
|
+
y,
|
39
|
+
width,
|
40
|
+
height
|
41
|
+
} = rect;
|
42
|
+
return {
|
43
|
+
width,
|
44
|
+
height,
|
45
|
+
top: y,
|
46
|
+
left: x,
|
47
|
+
right: x + width,
|
48
|
+
bottom: y + height,
|
49
|
+
x,
|
50
|
+
y
|
51
|
+
};
|
52
|
+
}
|
53
|
+
export {
|
54
|
+
clamp,
|
55
|
+
evaluate,
|
56
|
+
expandPaddingObject,
|
57
|
+
getOppositeAxis,
|
58
|
+
getPaddingObject,
|
59
|
+
getSide,
|
60
|
+
getSideAxis,
|
61
|
+
max,
|
62
|
+
min,
|
63
|
+
rectToClientRect
|
64
|
+
};
|
65
|
+
//# sourceMappingURL=harmony95.mjs.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"harmony95.mjs","sources":["../node_modules/@floating-ui/utils/dist/floating-ui.utils.mjs"],"sourcesContent":["/**\n * Custom positioning reference element.\n * @see https://floating-ui.com/docs/virtual-elements\n */\n\nconst sides = ['top', 'right', 'bottom', 'left'];\nconst alignments = ['start', 'end'];\nconst placements = /*#__PURE__*/sides.reduce((acc, side) => acc.concat(side, side + \"-\" + alignments[0], side + \"-\" + alignments[1]), []);\nconst min = Math.min;\nconst max = Math.max;\nconst round = Math.round;\nconst floor = Math.floor;\nconst createCoords = v => ({\n x: v,\n y: v\n});\nconst oppositeSideMap = {\n left: 'right',\n right: 'left',\n bottom: 'top',\n top: 'bottom'\n};\nconst oppositeAlignmentMap = {\n start: 'end',\n end: 'start'\n};\nfunction clamp(start, value, end) {\n return max(start, min(value, end));\n}\nfunction evaluate(value, param) {\n return typeof value === 'function' ? value(param) : value;\n}\nfunction getSide(placement) {\n return placement.split('-')[0];\n}\nfunction getAlignment(placement) {\n return placement.split('-')[1];\n}\nfunction getOppositeAxis(axis) {\n return axis === 'x' ? 'y' : 'x';\n}\nfunction getAxisLength(axis) {\n return axis === 'y' ? 'height' : 'width';\n}\nfunction getSideAxis(placement) {\n return ['top', 'bottom'].includes(getSide(placement)) ? 'y' : 'x';\n}\nfunction getAlignmentAxis(placement) {\n return getOppositeAxis(getSideAxis(placement));\n}\nfunction getAlignmentSides(placement, rects, rtl) {\n if (rtl === void 0) {\n rtl = false;\n }\n const alignment = getAlignment(placement);\n const alignmentAxis = getAlignmentAxis(placement);\n const length = getAxisLength(alignmentAxis);\n let mainAlignmentSide = alignmentAxis === 'x' ? alignment === (rtl ? 'end' : 'start') ? 'right' : 'left' : alignment === 'start' ? 'bottom' : 'top';\n if (rects.reference[length] > rects.floating[length]) {\n mainAlignmentSide = getOppositePlacement(mainAlignmentSide);\n }\n return [mainAlignmentSide, getOppositePlacement(mainAlignmentSide)];\n}\nfunction getExpandedPlacements(placement) {\n const oppositePlacement = getOppositePlacement(placement);\n return [getOppositeAlignmentPlacement(placement), oppositePlacement, getOppositeAlignmentPlacement(oppositePlacement)];\n}\nfunction getOppositeAlignmentPlacement(placement) {\n return placement.replace(/start|end/g, alignment => oppositeAlignmentMap[alignment]);\n}\nfunction getSideList(side, isStart, rtl) {\n const lr = ['left', 'right'];\n const rl = ['right', 'left'];\n const tb = ['top', 'bottom'];\n const bt = ['bottom', 'top'];\n switch (side) {\n case 'top':\n case 'bottom':\n if (rtl) return isStart ? rl : lr;\n return isStart ? lr : rl;\n case 'left':\n case 'right':\n return isStart ? tb : bt;\n default:\n return [];\n }\n}\nfunction getOppositeAxisPlacements(placement, flipAlignment, direction, rtl) {\n const alignment = getAlignment(placement);\n let list = getSideList(getSide(placement), direction === 'start', rtl);\n if (alignment) {\n list = list.map(side => side + \"-\" + alignment);\n if (flipAlignment) {\n list = list.concat(list.map(getOppositeAlignmentPlacement));\n }\n }\n return list;\n}\nfunction getOppositePlacement(placement) {\n return placement.replace(/left|right|bottom|top/g, side => oppositeSideMap[side]);\n}\nfunction expandPaddingObject(padding) {\n return {\n top: 0,\n right: 0,\n bottom: 0,\n left: 0,\n ...padding\n };\n}\nfunction getPaddingObject(padding) {\n return typeof padding !== 'number' ? expandPaddingObject(padding) : {\n top: padding,\n right: padding,\n bottom: padding,\n left: padding\n };\n}\nfunction rectToClientRect(rect) {\n const {\n x,\n y,\n width,\n height\n } = rect;\n return {\n width,\n height,\n top: y,\n left: x,\n right: x + width,\n bottom: y + height,\n x,\n y\n };\n}\n\nexport { alignments, clamp, createCoords, evaluate, expandPaddingObject, floor, getAlignment, getAlignmentAxis, getAlignmentSides, getAxisLength, getExpandedPlacements, getOppositeAlignmentPlacement, getOppositeAxis, getOppositeAxisPlacements, getOppositePlacement, getPaddingObject, getSide, getSideAxis, max, min, placements, rectToClientRect, round, sides };\n"],"names":[],"mappings":"AAQK,MAAC,MAAM,KAAK;AACZ,MAAC,MAAM,KAAK;AAiBjB,SAAS,MAAM,OAAO,OAAO,KAAK;AAChC,SAAO,IAAI,OAAO,IAAI,OAAO,GAAG,CAAC;AACnC;AACA,SAAS,SAAS,OAAO,OAAO;AAC9B,SAAO,OAAO,UAAU,aAAa,MAAM,KAAK,IAAI;AACtD;AACA,SAAS,QAAQ,WAAW;AAC1B,SAAO,UAAU,MAAM,GAAG,EAAE,CAAC;AAC/B;AAIA,SAAS,gBAAgB,MAAM;AAC7B,SAAO,SAAS,MAAM,MAAM;AAC9B;AAIA,SAAS,YAAY,WAAW;AAC9B,SAAO,CAAC,OAAO,QAAQ,EAAE,SAAS,QAAQ,SAAS,CAAC,IAAI,MAAM;AAChE;AAuDA,SAAS,oBAAoB,SAAS;AACpC,SAAO;AAAA,IACL,KAAK;AAAA,IACL,OAAO;AAAA,IACP,QAAQ;AAAA,IACR,MAAM;AAAA,IACN,GAAG;AAAA,EACJ;AACH;AACA,SAAS,iBAAiB,SAAS;AACjC,SAAO,OAAO,YAAY,WAAW,oBAAoB,OAAO,IAAI;AAAA,IAClE,KAAK;AAAA,IACL,OAAO;AAAA,IACP,QAAQ;AAAA,IACR,MAAM;AAAA,EACP;AACH;AACA,SAAS,iBAAiB,MAAM;AAC9B,QAAM;AAAA,IACJ;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACJ,IAAM;AACJ,SAAO;AAAA,IACL;AAAA,IACA;AAAA,IACA,KAAK;AAAA,IACL,MAAM;AAAA,IACN,OAAO,IAAI;AAAA,IACX,QAAQ,IAAI;AAAA,IACZ;AAAA,IACA;AAAA,EACD;AACH;","x_google_ignoreList":[0]}
|
@@ -0,0 +1,91 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
3
|
+
const jsxRuntime = require("react/jsx-runtime");
|
4
|
+
const louis = require("@lokalise/louis");
|
5
|
+
const text = require("./harmony8.cjs");
|
6
|
+
const url = require("./harmony9.cjs");
|
7
|
+
const date = require("./harmony10.cjs");
|
8
|
+
const dateFns = require("date-fns");
|
9
|
+
const index = require("./harmony106.cjs");
|
10
|
+
const TaskLanguage = require("./harmony107.cjs");
|
11
|
+
const TasksContext = require("./harmony87.cjs");
|
12
|
+
const content = require("./harmony108.cjs");
|
13
|
+
const TaskOverview_module = require("./harmony109.cjs");
|
14
|
+
const TaskOverview = ({ task }) => {
|
15
|
+
const { getProjectUrl, taskTitleOnClick } = TasksContext.useTasks();
|
16
|
+
const taskLanguages = content.getTaskLanguages(task.langs);
|
17
|
+
const handleDownloadStyleGuide = (styleGuide) => {
|
18
|
+
window.open(
|
19
|
+
`/style-guide/${task.team_id}/download/${styleGuide.id}/link`,
|
20
|
+
"_blank",
|
21
|
+
"noopener,noreferrer"
|
22
|
+
);
|
23
|
+
};
|
24
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: TaskOverview_module.default.taskContainer, children: [
|
25
|
+
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex-row gap-1 items-center", children: [
|
26
|
+
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex-row gap-1 items-start flex-wrap", children: [
|
27
|
+
/* @__PURE__ */ jsxRuntime.jsx(louis.Tag, { color: content.tagColor[task.task_type], variant: "solid", children: task.task_type.toLocaleUpperCase() }),
|
28
|
+
task.due_date && /* @__PURE__ */ jsxRuntime.jsxs(louis.Tag, { color: "#EAB308", children: [
|
29
|
+
"DUE ",
|
30
|
+
date.formatDate(dateFns.parseISO(task.due_date), "yyyy-MM-dd")
|
31
|
+
] })
|
32
|
+
] }),
|
33
|
+
task.style_guides.length > 0 && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex-row", children: task.style_guides.length === 1 ? /* @__PURE__ */ jsxRuntime.jsx(
|
34
|
+
louis.Button,
|
35
|
+
{
|
36
|
+
size: "sm",
|
37
|
+
variant: "secondary",
|
38
|
+
onClick: () => handleDownloadStyleGuide(task.style_guides[0]),
|
39
|
+
children: "Download style guide"
|
40
|
+
}
|
41
|
+
) : /* @__PURE__ */ jsxRuntime.jsx(
|
42
|
+
louis.Menu,
|
43
|
+
{
|
44
|
+
menuButton: /* @__PURE__ */ jsxRuntime.jsx(louis.Button, { variant: "secondary", size: "sm", children: "Download style guide" }),
|
45
|
+
children: /* @__PURE__ */ jsxRuntime.jsx(louis.MenuList, { children: task.style_guides.map((styleGuide) => /* @__PURE__ */ jsxRuntime.jsx(
|
46
|
+
louis.MenuItem,
|
47
|
+
{
|
48
|
+
onClick: () => handleDownloadStyleGuide(styleGuide),
|
49
|
+
children: index.splitFileName(styleGuide.name).name
|
50
|
+
},
|
51
|
+
styleGuide.id
|
52
|
+
)) })
|
53
|
+
}
|
54
|
+
) })
|
55
|
+
] }),
|
56
|
+
/* @__PURE__ */ jsxRuntime.jsx("h4", { className: TaskOverview_module.default.taskTitle, children: /* @__PURE__ */ jsxRuntime.jsx(
|
57
|
+
louis.Link,
|
58
|
+
{
|
59
|
+
href: getProjectUrl({ task, view: "multi" }),
|
60
|
+
onClick: () => {
|
61
|
+
taskTitleOnClick == null ? void 0 : taskTitleOnClick({ task });
|
62
|
+
},
|
63
|
+
children: task.title
|
64
|
+
}
|
65
|
+
) }),
|
66
|
+
task.description && /* @__PURE__ */ jsxRuntime.jsx("div", { className: TaskOverview_module.default.taskDescription, children: text.convertNewLineToBreakTag(url.makeUrlClickable(task.description)) }),
|
67
|
+
/* @__PURE__ */ jsxRuntime.jsxs("table", { className: TaskOverview_module.default.languagesTable, children: [
|
68
|
+
/* @__PURE__ */ jsxRuntime.jsx("thead", { children: /* @__PURE__ */ jsxRuntime.jsxs("tr", { children: [
|
69
|
+
/* @__PURE__ */ jsxRuntime.jsx("th", { children: "Languages" }),
|
70
|
+
/* @__PURE__ */ jsxRuntime.jsx("th", { children: "Words to do" }),
|
71
|
+
/* @__PURE__ */ jsxRuntime.jsx("th", { children: "Progress" }),
|
72
|
+
/* @__PURE__ */ jsxRuntime.jsx("th", { children: "Status" })
|
73
|
+
] }) }),
|
74
|
+
/* @__PURE__ */ jsxRuntime.jsx("tbody", { children: taskLanguages.map((language) => /* @__PURE__ */ jsxRuntime.jsx(TaskLanguage.TaskLanguage, { language, task }, language.lang_id)) })
|
75
|
+
] }),
|
76
|
+
/* @__PURE__ */ jsxRuntime.jsxs("div", { "data-testid": "sidebar-task-overview-metadata", className: TaskOverview_module.default.metadata, children: [
|
77
|
+
/* @__PURE__ */ jsxRuntime.jsxs("span", { children: [
|
78
|
+
"Source: ",
|
79
|
+
task.source_lang_name
|
80
|
+
] }),
|
81
|
+
/* @__PURE__ */ jsxRuntime.jsx("span", { children: task.created_by_fullname }),
|
82
|
+
/* @__PURE__ */ jsxRuntime.jsxs("span", { children: [
|
83
|
+
"In ",
|
84
|
+
task.project_name,
|
85
|
+
task.master_branching_enabled === "1" && /* @__PURE__ */ jsxRuntime.jsx("div", { className: TaskOverview_module.default.tag, children: task.branch_name ? task.branch_name : "master" })
|
86
|
+
] })
|
87
|
+
] })
|
88
|
+
] });
|
89
|
+
};
|
90
|
+
exports.TaskOverview = TaskOverview;
|
91
|
+
//# sourceMappingURL=harmony96.cjs.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"harmony96.cjs","sources":["../src/components/Sidebar/Widgets/Tasks/TaskOverview/TaskOverview.tsx"],"sourcesContent":["import { Button, Link, Menu, MenuItem, MenuList, Tag } from '@lokalise/louis'\nimport { convertNewLineToBreakTag, formatDate, makeUrlClickable } from '@utils'\nimport { parseISO } from 'date-fns'\nimport { splitFileName } from '../../../utils'\nimport { TaskLanguage } from '../TaskLanguage/TaskLanguage'\nimport { useTasks } from '../TasksContext'\nimport type { SidebarTask, SidebarTaskStyleGuide } from '../types'\nimport { getTaskLanguages, tagColor } from '../utils/content'\nimport styles from './TaskOverview.module.css'\n\nexport type TaskProps = {\n\ttask: SidebarTask\n}\n\nexport const TaskOverview = ({ task }: TaskProps) => {\n\tconst { getProjectUrl, taskTitleOnClick } = useTasks()\n\n\tconst taskLanguages = getTaskLanguages(task.langs)\n\n\tconst handleDownloadStyleGuide = (styleGuide: SidebarTaskStyleGuide) => {\n\t\twindow.open(\n\t\t\t`/style-guide/${task.team_id}/download/${styleGuide.id}/link`,\n\t\t\t'_blank',\n\t\t\t'noopener,noreferrer',\n\t\t)\n\t}\n\n\treturn (\n\t\t<div className={styles.taskContainer}>\n\t\t\t<div className=\"flex-row gap-1 items-center\">\n\t\t\t\t<div className=\"flex-row gap-1 items-start flex-wrap\">\n\t\t\t\t\t<Tag color={tagColor[task.task_type]} variant=\"solid\">\n\t\t\t\t\t\t{task.task_type.toLocaleUpperCase()}\n\t\t\t\t\t</Tag>\n\t\t\t\t\t{task.due_date && (\n\t\t\t\t\t\t<Tag color={'#EAB308'}>DUE {formatDate(parseISO(task.due_date), 'yyyy-MM-dd')}</Tag>\n\t\t\t\t\t)}\n\t\t\t\t</div>\n\t\t\t\t{task.style_guides.length > 0 && (\n\t\t\t\t\t<div className=\"flex-row\">\n\t\t\t\t\t\t{task.style_guides.length === 1 ? (\n\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\tsize=\"sm\"\n\t\t\t\t\t\t\t\tvariant=\"secondary\"\n\t\t\t\t\t\t\t\tonClick={() => handleDownloadStyleGuide(task.style_guides[0])}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\tDownload style guide\n\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t<Menu\n\t\t\t\t\t\t\t\tmenuButton={\n\t\t\t\t\t\t\t\t\t<Button variant=\"secondary\" size=\"sm\">\n\t\t\t\t\t\t\t\t\t\tDownload style guide\n\t\t\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<MenuList>\n\t\t\t\t\t\t\t\t\t{task.style_guides.map((styleGuide) => (\n\t\t\t\t\t\t\t\t\t\t<MenuItem\n\t\t\t\t\t\t\t\t\t\t\tkey={styleGuide.id}\n\t\t\t\t\t\t\t\t\t\t\tonClick={() => handleDownloadStyleGuide(styleGuide)}\n\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t{splitFileName(styleGuide.name).name}\n\t\t\t\t\t\t\t\t\t\t</MenuItem>\n\t\t\t\t\t\t\t\t\t))}\n\t\t\t\t\t\t\t\t</MenuList>\n\t\t\t\t\t\t\t</Menu>\n\t\t\t\t\t\t)}\n\t\t\t\t\t</div>\n\t\t\t\t)}\n\t\t\t</div>\n\n\t\t\t<h4 className={styles.taskTitle}>\n\t\t\t\t<Link\n\t\t\t\t\thref={getProjectUrl({ task, view: 'multi' })}\n\t\t\t\t\tonClick={() => {\n\t\t\t\t\t\ttaskTitleOnClick?.({ task })\n\t\t\t\t\t}}\n\t\t\t\t>\n\t\t\t\t\t{task.title}\n\t\t\t\t</Link>\n\t\t\t</h4>\n\n\t\t\t{task.description && (\n\t\t\t\t<div className={styles.taskDescription}>\n\t\t\t\t\t{convertNewLineToBreakTag(makeUrlClickable(task.description))}\n\t\t\t\t</div>\n\t\t\t)}\n\n\t\t\t<table className={styles.languagesTable}>\n\t\t\t\t<thead>\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<th>Languages</th>\n\t\t\t\t\t\t<th>Words to do</th>\n\t\t\t\t\t\t<th>Progress</th>\n\t\t\t\t\t\t<th>Status</th>\n\t\t\t\t\t</tr>\n\t\t\t\t</thead>\n\t\t\t\t<tbody>\n\t\t\t\t\t{taskLanguages.map((language) => (\n\t\t\t\t\t\t<TaskLanguage key={language.lang_id} language={language} task={task} />\n\t\t\t\t\t))}\n\t\t\t\t</tbody>\n\t\t\t</table>\n\t\t\t<div data-testid=\"sidebar-task-overview-metadata\" className={styles.metadata}>\n\t\t\t\t<span>Source: {task.source_lang_name}</span>\n\t\t\t\t<span>{task.created_by_fullname}</span>\n\t\t\t\t<span>\n\t\t\t\t\tIn {task.project_name}\n\t\t\t\t\t{task.master_branching_enabled === '1' && (\n\t\t\t\t\t\t<div className={styles.tag}>{task.branch_name ? task.branch_name : 'master'}</div>\n\t\t\t\t\t)}\n\t\t\t\t</span>\n\t\t\t</div>\n\t\t</div>\n\t)\n}\n"],"names":["useTasks","getTaskLanguages","jsxs","styles","jsx","Tag","tagColor","formatDate","parseISO","Button","Menu","MenuList","MenuItem","splitFileName","Link","convertNewLineToBreakTag","makeUrlClickable","TaskLanguage"],"mappings":"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"}
|
@@ -0,0 +1,91 @@
|
|
1
|
+
import { jsxs, jsx } from "react/jsx-runtime";
|
2
|
+
import { Tag, Button, Menu, MenuList, MenuItem, Link } from "@lokalise/louis";
|
3
|
+
import { convertNewLineToBreakTag } from "./harmony8.mjs";
|
4
|
+
import { makeUrlClickable } from "./harmony9.mjs";
|
5
|
+
import { formatDate } from "./harmony10.mjs";
|
6
|
+
import { parseISO } from "date-fns";
|
7
|
+
import { splitFileName } from "./harmony106.mjs";
|
8
|
+
import { TaskLanguage } from "./harmony107.mjs";
|
9
|
+
import { useTasks } from "./harmony87.mjs";
|
10
|
+
import { getTaskLanguages, tagColor } from "./harmony108.mjs";
|
11
|
+
import styles from "./harmony109.mjs";
|
12
|
+
const TaskOverview = ({ task }) => {
|
13
|
+
const { getProjectUrl, taskTitleOnClick } = useTasks();
|
14
|
+
const taskLanguages = getTaskLanguages(task.langs);
|
15
|
+
const handleDownloadStyleGuide = (styleGuide) => {
|
16
|
+
window.open(
|
17
|
+
`/style-guide/${task.team_id}/download/${styleGuide.id}/link`,
|
18
|
+
"_blank",
|
19
|
+
"noopener,noreferrer"
|
20
|
+
);
|
21
|
+
};
|
22
|
+
return /* @__PURE__ */ jsxs("div", { className: styles.taskContainer, children: [
|
23
|
+
/* @__PURE__ */ jsxs("div", { className: "flex-row gap-1 items-center", children: [
|
24
|
+
/* @__PURE__ */ jsxs("div", { className: "flex-row gap-1 items-start flex-wrap", children: [
|
25
|
+
/* @__PURE__ */ jsx(Tag, { color: tagColor[task.task_type], variant: "solid", children: task.task_type.toLocaleUpperCase() }),
|
26
|
+
task.due_date && /* @__PURE__ */ jsxs(Tag, { color: "#EAB308", children: [
|
27
|
+
"DUE ",
|
28
|
+
formatDate(parseISO(task.due_date), "yyyy-MM-dd")
|
29
|
+
] })
|
30
|
+
] }),
|
31
|
+
task.style_guides.length > 0 && /* @__PURE__ */ jsx("div", { className: "flex-row", children: task.style_guides.length === 1 ? /* @__PURE__ */ jsx(
|
32
|
+
Button,
|
33
|
+
{
|
34
|
+
size: "sm",
|
35
|
+
variant: "secondary",
|
36
|
+
onClick: () => handleDownloadStyleGuide(task.style_guides[0]),
|
37
|
+
children: "Download style guide"
|
38
|
+
}
|
39
|
+
) : /* @__PURE__ */ jsx(
|
40
|
+
Menu,
|
41
|
+
{
|
42
|
+
menuButton: /* @__PURE__ */ jsx(Button, { variant: "secondary", size: "sm", children: "Download style guide" }),
|
43
|
+
children: /* @__PURE__ */ jsx(MenuList, { children: task.style_guides.map((styleGuide) => /* @__PURE__ */ jsx(
|
44
|
+
MenuItem,
|
45
|
+
{
|
46
|
+
onClick: () => handleDownloadStyleGuide(styleGuide),
|
47
|
+
children: splitFileName(styleGuide.name).name
|
48
|
+
},
|
49
|
+
styleGuide.id
|
50
|
+
)) })
|
51
|
+
}
|
52
|
+
) })
|
53
|
+
] }),
|
54
|
+
/* @__PURE__ */ jsx("h4", { className: styles.taskTitle, children: /* @__PURE__ */ jsx(
|
55
|
+
Link,
|
56
|
+
{
|
57
|
+
href: getProjectUrl({ task, view: "multi" }),
|
58
|
+
onClick: () => {
|
59
|
+
taskTitleOnClick == null ? void 0 : taskTitleOnClick({ task });
|
60
|
+
},
|
61
|
+
children: task.title
|
62
|
+
}
|
63
|
+
) }),
|
64
|
+
task.description && /* @__PURE__ */ jsx("div", { className: styles.taskDescription, children: convertNewLineToBreakTag(makeUrlClickable(task.description)) }),
|
65
|
+
/* @__PURE__ */ jsxs("table", { className: styles.languagesTable, children: [
|
66
|
+
/* @__PURE__ */ jsx("thead", { children: /* @__PURE__ */ jsxs("tr", { children: [
|
67
|
+
/* @__PURE__ */ jsx("th", { children: "Languages" }),
|
68
|
+
/* @__PURE__ */ jsx("th", { children: "Words to do" }),
|
69
|
+
/* @__PURE__ */ jsx("th", { children: "Progress" }),
|
70
|
+
/* @__PURE__ */ jsx("th", { children: "Status" })
|
71
|
+
] }) }),
|
72
|
+
/* @__PURE__ */ jsx("tbody", { children: taskLanguages.map((language) => /* @__PURE__ */ jsx(TaskLanguage, { language, task }, language.lang_id)) })
|
73
|
+
] }),
|
74
|
+
/* @__PURE__ */ jsxs("div", { "data-testid": "sidebar-task-overview-metadata", className: styles.metadata, children: [
|
75
|
+
/* @__PURE__ */ jsxs("span", { children: [
|
76
|
+
"Source: ",
|
77
|
+
task.source_lang_name
|
78
|
+
] }),
|
79
|
+
/* @__PURE__ */ jsx("span", { children: task.created_by_fullname }),
|
80
|
+
/* @__PURE__ */ jsxs("span", { children: [
|
81
|
+
"In ",
|
82
|
+
task.project_name,
|
83
|
+
task.master_branching_enabled === "1" && /* @__PURE__ */ jsx("div", { className: styles.tag, children: task.branch_name ? task.branch_name : "master" })
|
84
|
+
] })
|
85
|
+
] })
|
86
|
+
] });
|
87
|
+
};
|
88
|
+
export {
|
89
|
+
TaskOverview
|
90
|
+
};
|
91
|
+
//# sourceMappingURL=harmony96.mjs.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"harmony96.mjs","sources":["../src/components/Sidebar/Widgets/Tasks/TaskOverview/TaskOverview.tsx"],"sourcesContent":["import { Button, Link, Menu, MenuItem, MenuList, Tag } from '@lokalise/louis'\nimport { convertNewLineToBreakTag, formatDate, makeUrlClickable } from '@utils'\nimport { parseISO } from 'date-fns'\nimport { splitFileName } from '../../../utils'\nimport { TaskLanguage } from '../TaskLanguage/TaskLanguage'\nimport { useTasks } from '../TasksContext'\nimport type { SidebarTask, SidebarTaskStyleGuide } from '../types'\nimport { getTaskLanguages, tagColor } from '../utils/content'\nimport styles from './TaskOverview.module.css'\n\nexport type TaskProps = {\n\ttask: SidebarTask\n}\n\nexport const TaskOverview = ({ task }: TaskProps) => {\n\tconst { getProjectUrl, taskTitleOnClick } = useTasks()\n\n\tconst taskLanguages = getTaskLanguages(task.langs)\n\n\tconst handleDownloadStyleGuide = (styleGuide: SidebarTaskStyleGuide) => {\n\t\twindow.open(\n\t\t\t`/style-guide/${task.team_id}/download/${styleGuide.id}/link`,\n\t\t\t'_blank',\n\t\t\t'noopener,noreferrer',\n\t\t)\n\t}\n\n\treturn (\n\t\t<div className={styles.taskContainer}>\n\t\t\t<div className=\"flex-row gap-1 items-center\">\n\t\t\t\t<div className=\"flex-row gap-1 items-start flex-wrap\">\n\t\t\t\t\t<Tag color={tagColor[task.task_type]} variant=\"solid\">\n\t\t\t\t\t\t{task.task_type.toLocaleUpperCase()}\n\t\t\t\t\t</Tag>\n\t\t\t\t\t{task.due_date && (\n\t\t\t\t\t\t<Tag color={'#EAB308'}>DUE {formatDate(parseISO(task.due_date), 'yyyy-MM-dd')}</Tag>\n\t\t\t\t\t)}\n\t\t\t\t</div>\n\t\t\t\t{task.style_guides.length > 0 && (\n\t\t\t\t\t<div className=\"flex-row\">\n\t\t\t\t\t\t{task.style_guides.length === 1 ? (\n\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\tsize=\"sm\"\n\t\t\t\t\t\t\t\tvariant=\"secondary\"\n\t\t\t\t\t\t\t\tonClick={() => handleDownloadStyleGuide(task.style_guides[0])}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\tDownload style guide\n\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t<Menu\n\t\t\t\t\t\t\t\tmenuButton={\n\t\t\t\t\t\t\t\t\t<Button variant=\"secondary\" size=\"sm\">\n\t\t\t\t\t\t\t\t\t\tDownload style guide\n\t\t\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<MenuList>\n\t\t\t\t\t\t\t\t\t{task.style_guides.map((styleGuide) => (\n\t\t\t\t\t\t\t\t\t\t<MenuItem\n\t\t\t\t\t\t\t\t\t\t\tkey={styleGuide.id}\n\t\t\t\t\t\t\t\t\t\t\tonClick={() => handleDownloadStyleGuide(styleGuide)}\n\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t{splitFileName(styleGuide.name).name}\n\t\t\t\t\t\t\t\t\t\t</MenuItem>\n\t\t\t\t\t\t\t\t\t))}\n\t\t\t\t\t\t\t\t</MenuList>\n\t\t\t\t\t\t\t</Menu>\n\t\t\t\t\t\t)}\n\t\t\t\t\t</div>\n\t\t\t\t)}\n\t\t\t</div>\n\n\t\t\t<h4 className={styles.taskTitle}>\n\t\t\t\t<Link\n\t\t\t\t\thref={getProjectUrl({ task, view: 'multi' })}\n\t\t\t\t\tonClick={() => {\n\t\t\t\t\t\ttaskTitleOnClick?.({ task })\n\t\t\t\t\t}}\n\t\t\t\t>\n\t\t\t\t\t{task.title}\n\t\t\t\t</Link>\n\t\t\t</h4>\n\n\t\t\t{task.description && (\n\t\t\t\t<div className={styles.taskDescription}>\n\t\t\t\t\t{convertNewLineToBreakTag(makeUrlClickable(task.description))}\n\t\t\t\t</div>\n\t\t\t)}\n\n\t\t\t<table className={styles.languagesTable}>\n\t\t\t\t<thead>\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<th>Languages</th>\n\t\t\t\t\t\t<th>Words to do</th>\n\t\t\t\t\t\t<th>Progress</th>\n\t\t\t\t\t\t<th>Status</th>\n\t\t\t\t\t</tr>\n\t\t\t\t</thead>\n\t\t\t\t<tbody>\n\t\t\t\t\t{taskLanguages.map((language) => (\n\t\t\t\t\t\t<TaskLanguage key={language.lang_id} language={language} task={task} />\n\t\t\t\t\t))}\n\t\t\t\t</tbody>\n\t\t\t</table>\n\t\t\t<div data-testid=\"sidebar-task-overview-metadata\" className={styles.metadata}>\n\t\t\t\t<span>Source: {task.source_lang_name}</span>\n\t\t\t\t<span>{task.created_by_fullname}</span>\n\t\t\t\t<span>\n\t\t\t\t\tIn {task.project_name}\n\t\t\t\t\t{task.master_branching_enabled === '1' && (\n\t\t\t\t\t\t<div className={styles.tag}>{task.branch_name ? task.branch_name : 'master'}</div>\n\t\t\t\t\t)}\n\t\t\t\t</span>\n\t\t\t</div>\n\t\t</div>\n\t)\n}\n"],"names":[],"mappings":"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"}
|