@lokalise/harmony 1.37.1-exp-epic2x.1 → 1.39.0
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 +71 -62
- package/dist/harmony.cjs.map +1 -1
- package/dist/harmony.css +317 -110
- package/dist/harmony.mjs +71 -62
- package/dist/harmony.mjs.map +1 -1
- package/dist/harmony10.cjs +16 -45
- package/dist/harmony10.cjs.map +1 -1
- package/dist/harmony10.mjs +16 -45
- package/dist/harmony10.mjs.map +1 -1
- package/dist/harmony100.cjs +5 -10
- package/dist/harmony100.cjs.map +1 -1
- package/dist/harmony100.mjs +5 -10
- package/dist/harmony100.mjs.map +1 -1
- package/dist/harmony101.cjs +9 -29
- package/dist/harmony101.cjs.map +1 -1
- package/dist/harmony101.mjs +8 -28
- package/dist/harmony101.mjs.map +1 -1
- package/dist/harmony102.cjs +24 -14
- package/dist/harmony102.cjs.map +1 -1
- package/dist/harmony102.mjs +23 -13
- package/dist/harmony102.mjs.map +1 -1
- package/dist/harmony103.cjs +6 -37
- package/dist/harmony103.cjs.map +1 -1
- package/dist/harmony103.mjs +5 -36
- package/dist/harmony103.mjs.map +1 -1
- package/dist/harmony104.cjs +18 -11
- package/dist/harmony104.cjs.map +1 -1
- package/dist/harmony104.mjs +19 -12
- package/dist/harmony104.mjs.map +1 -1
- package/dist/harmony105.cjs +12 -22
- package/dist/harmony105.cjs.map +1 -1
- package/dist/harmony105.mjs +11 -21
- package/dist/harmony105.mjs.map +1 -1
- package/dist/harmony106.cjs +164 -33
- package/dist/harmony106.cjs.map +1 -1
- package/dist/harmony106.mjs +164 -33
- package/dist/harmony106.mjs.map +1 -1
- package/dist/harmony107.cjs +44 -21
- package/dist/harmony107.cjs.map +1 -1
- package/dist/harmony107.mjs +43 -20
- package/dist/harmony107.mjs.map +1 -1
- package/dist/harmony108.cjs +9 -18
- package/dist/harmony108.cjs.map +1 -1
- package/dist/harmony108.mjs +10 -19
- package/dist/harmony108.mjs.map +1 -1
- package/dist/harmony109.cjs +9 -3
- package/dist/harmony109.cjs.map +1 -1
- package/dist/harmony109.mjs +9 -3
- package/dist/harmony109.mjs.map +1 -1
- package/dist/harmony11.cjs +51 -8
- package/dist/harmony11.cjs.map +1 -1
- package/dist/harmony11.mjs +51 -8
- package/dist/harmony11.mjs.map +1 -1
- package/dist/harmony110.cjs +12 -16
- package/dist/harmony110.cjs.map +1 -1
- package/dist/harmony110.mjs +11 -15
- package/dist/harmony110.mjs.map +1 -1
- package/dist/harmony111.cjs +21 -5
- package/dist/harmony111.cjs.map +1 -1
- package/dist/harmony111.mjs +21 -5
- package/dist/harmony111.mjs.map +1 -1
- package/dist/harmony112.cjs +15 -6
- package/dist/harmony112.cjs.map +1 -1
- package/dist/harmony112.mjs +14 -5
- package/dist/harmony112.mjs.map +1 -1
- package/dist/harmony113.cjs +19 -10
- package/dist/harmony113.cjs.map +1 -1
- package/dist/harmony113.mjs +18 -9
- package/dist/harmony113.mjs.map +1 -1
- package/dist/harmony114.cjs +18 -3
- package/dist/harmony114.cjs.map +1 -1
- package/dist/harmony114.mjs +18 -3
- package/dist/harmony114.mjs.map +1 -1
- package/dist/harmony115.cjs +6 -9
- package/dist/harmony115.cjs.map +1 -1
- package/dist/harmony115.mjs +5 -8
- package/dist/harmony115.mjs.map +1 -1
- package/dist/harmony116.cjs +132 -24
- package/dist/harmony116.cjs.map +1 -1
- package/dist/harmony116.mjs +131 -23
- package/dist/harmony116.mjs.map +1 -1
- package/dist/harmony117.cjs +9 -3
- package/dist/harmony117.cjs.map +1 -1
- package/dist/harmony117.mjs +9 -3
- package/dist/harmony117.mjs.map +1 -1
- package/dist/harmony118.cjs +6 -13
- package/dist/harmony118.cjs.map +1 -1
- package/dist/harmony118.mjs +5 -12
- package/dist/harmony118.mjs.map +1 -1
- package/dist/harmony119.cjs +40 -6
- package/dist/harmony119.cjs.map +1 -1
- package/dist/harmony119.mjs +39 -5
- package/dist/harmony119.mjs.map +1 -1
- package/dist/harmony12.cjs +8 -4
- package/dist/harmony12.cjs.map +1 -1
- package/dist/harmony12.mjs +8 -4
- package/dist/harmony12.mjs.map +1 -1
- package/dist/harmony120.cjs +60 -96
- package/dist/harmony120.cjs.map +1 -1
- package/dist/harmony120.mjs +60 -96
- package/dist/harmony120.mjs.map +1 -1
- package/dist/harmony121.cjs +7 -13
- package/dist/harmony121.cjs.map +1 -1
- package/dist/harmony121.mjs +7 -13
- package/dist/harmony121.mjs.map +1 -1
- package/dist/harmony122.cjs +98 -13
- package/dist/harmony122.cjs.map +1 -1
- package/dist/harmony122.mjs +81 -13
- package/dist/harmony122.mjs.map +1 -1
- package/dist/harmony123.cjs +86 -35
- package/dist/harmony123.cjs.map +1 -1
- package/dist/harmony123.mjs +86 -35
- package/dist/harmony123.mjs.map +1 -1
- package/dist/harmony124.cjs +29 -27
- package/dist/harmony124.cjs.map +1 -1
- package/dist/harmony124.mjs +29 -27
- package/dist/harmony124.mjs.map +1 -1
- package/dist/harmony125.cjs +7 -14
- package/dist/harmony125.cjs.map +1 -1
- package/dist/harmony125.mjs +6 -13
- package/dist/harmony125.mjs.map +1 -1
- package/dist/harmony126.cjs +6 -16
- package/dist/harmony126.cjs.map +1 -1
- package/dist/harmony126.mjs +5 -15
- package/dist/harmony126.mjs.map +1 -1
- package/dist/harmony127.cjs +6 -17
- package/dist/harmony127.cjs.map +1 -1
- package/dist/harmony127.mjs +5 -16
- package/dist/harmony127.mjs.map +1 -1
- package/dist/harmony128.cjs +62 -11
- package/dist/harmony128.cjs.map +1 -1
- package/dist/harmony128.mjs +61 -10
- package/dist/harmony128.mjs.map +1 -1
- package/dist/harmony129.cjs +88 -16
- package/dist/harmony129.cjs.map +1 -1
- package/dist/harmony129.mjs +88 -16
- package/dist/harmony129.mjs.map +1 -1
- package/dist/harmony13.cjs +5 -32
- package/dist/harmony13.cjs.map +1 -1
- package/dist/harmony13.mjs +5 -32
- package/dist/harmony13.mjs.map +1 -1
- package/dist/harmony130.cjs +19 -22
- package/dist/harmony130.cjs.map +1 -1
- package/dist/harmony130.mjs +18 -21
- package/dist/harmony130.mjs.map +1 -1
- package/dist/harmony131.cjs +10 -12
- package/dist/harmony131.cjs.map +1 -1
- package/dist/harmony131.mjs +10 -12
- package/dist/harmony131.mjs.map +1 -1
- package/dist/harmony132.cjs +95 -5
- package/dist/harmony132.cjs.map +1 -1
- package/dist/harmony132.mjs +95 -5
- package/dist/harmony132.mjs.map +1 -1
- package/dist/harmony133.cjs +12 -11
- package/dist/harmony133.cjs.map +1 -1
- package/dist/harmony133.mjs +12 -11
- package/dist/harmony133.mjs.map +1 -1
- package/dist/harmony134.cjs +13 -31
- package/dist/harmony134.cjs.map +1 -1
- package/dist/harmony134.mjs +13 -31
- package/dist/harmony134.mjs.map +1 -1
- package/dist/harmony135.cjs +34 -12
- package/dist/harmony135.cjs.map +1 -1
- package/dist/harmony135.mjs +34 -12
- package/dist/harmony135.mjs.map +1 -1
- package/dist/harmony136.cjs +31 -0
- package/dist/harmony136.cjs.map +1 -0
- package/dist/harmony136.mjs +31 -0
- package/dist/harmony136.mjs.map +1 -0
- package/dist/harmony137.cjs +10 -0
- package/dist/harmony137.cjs.map +1 -0
- package/dist/harmony137.mjs +10 -0
- package/dist/harmony137.mjs.map +1 -0
- package/dist/harmony138.cjs +60 -0
- package/dist/harmony138.cjs.map +1 -0
- package/dist/harmony138.mjs +60 -0
- package/dist/harmony138.mjs.map +1 -0
- package/dist/harmony139.cjs +63 -0
- package/dist/harmony139.cjs.map +1 -0
- package/dist/harmony139.mjs +63 -0
- package/dist/harmony139.mjs.map +1 -0
- package/dist/harmony14.cjs +32 -5
- package/dist/harmony14.cjs.map +1 -1
- package/dist/harmony14.mjs +32 -5
- package/dist/harmony14.mjs.map +1 -1
- package/dist/harmony140.cjs +21 -0
- package/dist/harmony140.cjs.map +1 -0
- package/dist/harmony140.mjs +21 -0
- package/dist/harmony140.mjs.map +1 -0
- package/dist/harmony141.cjs +16 -0
- package/dist/harmony141.cjs.map +1 -0
- package/dist/harmony141.mjs +16 -0
- package/dist/harmony141.mjs.map +1 -0
- package/dist/harmony142.cjs +18 -0
- package/dist/harmony142.cjs.map +1 -0
- package/dist/harmony142.mjs +18 -0
- package/dist/harmony142.mjs.map +1 -0
- package/dist/harmony143.cjs +19 -0
- package/dist/harmony143.cjs.map +1 -0
- package/dist/harmony143.mjs +19 -0
- package/dist/harmony143.mjs.map +1 -0
- package/dist/harmony144.cjs +14 -0
- package/dist/harmony144.cjs.map +1 -0
- package/dist/harmony144.mjs +14 -0
- package/dist/harmony144.mjs.map +1 -0
- package/dist/harmony145.cjs +19 -0
- package/dist/harmony145.cjs.map +1 -0
- package/dist/harmony145.mjs +19 -0
- package/dist/harmony145.mjs.map +1 -0
- package/dist/harmony146.cjs +24 -0
- package/dist/harmony146.cjs.map +1 -0
- package/dist/harmony146.mjs +24 -0
- package/dist/harmony146.mjs.map +1 -0
- package/dist/harmony147.cjs +15 -0
- package/dist/harmony147.cjs.map +1 -0
- package/dist/harmony147.mjs +15 -0
- package/dist/harmony147.mjs.map +1 -0
- package/dist/harmony148.cjs +9 -0
- package/dist/harmony148.cjs.map +1 -0
- package/dist/harmony148.mjs +9 -0
- package/dist/harmony148.mjs.map +1 -0
- package/dist/harmony149.cjs +15 -0
- package/dist/harmony149.cjs.map +1 -0
- package/dist/harmony149.mjs +15 -0
- package/dist/harmony149.mjs.map +1 -0
- package/dist/harmony15.cjs +5 -11
- package/dist/harmony15.cjs.map +1 -1
- package/dist/harmony15.mjs +5 -11
- package/dist/harmony15.mjs.map +1 -1
- package/dist/harmony150.cjs +35 -0
- package/dist/harmony150.cjs.map +1 -0
- package/dist/harmony150.mjs +35 -0
- package/dist/harmony150.mjs.map +1 -0
- package/dist/harmony151.cjs +17 -0
- package/dist/harmony151.cjs.map +1 -0
- package/dist/harmony151.mjs +17 -0
- package/dist/harmony151.mjs.map +1 -0
- package/dist/harmony152.cjs +49 -0
- package/dist/harmony152.cjs.map +1 -0
- package/dist/harmony152.mjs +49 -0
- package/dist/harmony152.mjs.map +1 -0
- package/dist/harmony153.cjs +15 -0
- package/dist/harmony153.cjs.map +1 -0
- package/dist/harmony153.mjs +15 -0
- package/dist/harmony153.mjs.map +1 -0
- package/dist/harmony16.cjs +9 -9
- package/dist/harmony16.cjs.map +1 -1
- package/dist/harmony16.mjs +9 -9
- package/dist/harmony16.mjs.map +1 -1
- package/dist/harmony17.cjs +9 -16
- package/dist/harmony17.cjs.map +1 -1
- package/dist/harmony17.mjs +9 -16
- package/dist/harmony17.mjs.map +1 -1
- package/dist/harmony18.cjs +16 -14
- package/dist/harmony18.cjs.map +1 -1
- package/dist/harmony18.mjs +16 -14
- package/dist/harmony18.mjs.map +1 -1
- package/dist/harmony19.cjs +13 -139
- package/dist/harmony19.cjs.map +1 -1
- package/dist/harmony19.mjs +13 -139
- package/dist/harmony19.mjs.map +1 -1
- package/dist/harmony20.cjs +141 -13
- package/dist/harmony20.cjs.map +1 -1
- package/dist/harmony20.mjs +141 -13
- package/dist/harmony20.mjs.map +1 -1
- package/dist/harmony21.cjs +20 -17
- package/dist/harmony21.cjs.map +1 -1
- package/dist/harmony21.mjs +20 -17
- package/dist/harmony21.mjs.map +1 -1
- package/dist/harmony22.cjs +13 -17
- package/dist/harmony22.cjs.map +1 -1
- package/dist/harmony22.mjs +13 -17
- package/dist/harmony22.mjs.map +1 -1
- package/dist/harmony23.cjs +15 -18
- package/dist/harmony23.cjs.map +1 -1
- package/dist/harmony23.mjs +15 -18
- package/dist/harmony23.mjs.map +1 -1
- package/dist/harmony24.cjs +17 -19
- package/dist/harmony24.cjs.map +1 -1
- package/dist/harmony24.mjs +17 -19
- package/dist/harmony24.mjs.map +1 -1
- package/dist/harmony25.cjs +18 -8
- package/dist/harmony25.cjs.map +1 -1
- package/dist/harmony25.mjs +18 -8
- package/dist/harmony25.mjs.map +1 -1
- package/dist/harmony26.cjs +19 -10
- package/dist/harmony26.cjs.map +1 -1
- package/dist/harmony26.mjs +19 -10
- package/dist/harmony26.mjs.map +1 -1
- package/dist/harmony27.cjs +10 -55
- package/dist/harmony27.cjs.map +1 -1
- package/dist/harmony27.mjs +10 -55
- package/dist/harmony27.mjs.map +1 -1
- package/dist/harmony28.cjs +11 -31
- package/dist/harmony28.cjs.map +1 -1
- package/dist/harmony28.mjs +11 -31
- package/dist/harmony28.mjs.map +1 -1
- package/dist/harmony29.cjs +54 -10
- package/dist/harmony29.cjs.map +1 -1
- package/dist/harmony29.mjs +54 -10
- package/dist/harmony29.mjs.map +1 -1
- package/dist/harmony3.cjs +9 -5
- package/dist/harmony3.cjs.map +1 -1
- package/dist/harmony3.mjs +9 -5
- package/dist/harmony3.mjs.map +1 -1
- package/dist/harmony30.cjs +26 -50
- package/dist/harmony30.cjs.map +1 -1
- package/dist/harmony30.mjs +27 -51
- package/dist/harmony30.mjs.map +1 -1
- package/dist/harmony31.cjs +8 -27
- package/dist/harmony31.cjs.map +1 -1
- package/dist/harmony31.mjs +9 -28
- package/dist/harmony31.mjs.map +1 -1
- package/dist/harmony32.cjs +52 -15
- package/dist/harmony32.cjs.map +1 -1
- package/dist/harmony32.mjs +53 -16
- package/dist/harmony32.mjs.map +1 -1
- package/dist/harmony33.cjs +27 -15
- package/dist/harmony33.cjs.map +1 -1
- package/dist/harmony33.mjs +28 -16
- package/dist/harmony33.mjs.map +1 -1
- package/dist/harmony34.cjs +16 -12
- package/dist/harmony34.cjs.map +1 -1
- package/dist/harmony34.mjs +17 -13
- package/dist/harmony34.mjs.map +1 -1
- package/dist/harmony35.cjs +28 -14
- package/dist/harmony35.cjs.map +1 -1
- package/dist/harmony35.mjs +28 -14
- package/dist/harmony35.mjs.map +1 -1
- package/dist/harmony36.cjs +14 -14
- package/dist/harmony36.cjs.map +1 -1
- package/dist/harmony36.mjs +14 -14
- package/dist/harmony36.mjs.map +1 -1
- package/dist/harmony37.cjs +6 -6
- package/dist/harmony37.cjs.map +1 -1
- package/dist/harmony37.mjs +6 -6
- package/dist/harmony37.mjs.map +1 -1
- package/dist/harmony38.cjs +6 -6
- package/dist/harmony38.cjs.map +1 -1
- package/dist/harmony38.mjs +6 -6
- package/dist/harmony38.mjs.map +1 -1
- package/dist/harmony39.cjs +5 -4
- package/dist/harmony39.cjs.map +1 -1
- package/dist/harmony39.mjs +5 -4
- package/dist/harmony39.mjs.map +1 -1
- package/dist/harmony4.cjs +24 -15
- package/dist/harmony4.cjs.map +1 -1
- package/dist/harmony4.mjs +24 -15
- package/dist/harmony4.mjs.map +1 -1
- package/dist/harmony40.cjs +7 -15
- package/dist/harmony40.cjs.map +1 -1
- package/dist/harmony40.mjs +8 -16
- package/dist/harmony40.mjs.map +1 -1
- package/dist/harmony41.cjs +6 -6
- package/dist/harmony41.cjs.map +1 -1
- package/dist/harmony41.mjs +7 -7
- package/dist/harmony41.mjs.map +1 -1
- package/dist/harmony42.cjs +16 -7
- package/dist/harmony42.cjs.map +1 -1
- package/dist/harmony42.mjs +16 -7
- package/dist/harmony42.mjs.map +1 -1
- package/dist/harmony43.cjs +7 -11
- package/dist/harmony43.cjs.map +1 -1
- package/dist/harmony43.mjs +9 -13
- package/dist/harmony43.mjs.map +1 -1
- package/dist/harmony44.cjs +6 -10
- package/dist/harmony44.cjs.map +1 -1
- package/dist/harmony44.mjs +8 -12
- package/dist/harmony44.mjs.map +1 -1
- package/dist/harmony45.cjs +14 -12
- package/dist/harmony45.cjs.map +1 -1
- package/dist/harmony45.mjs +14 -12
- package/dist/harmony45.mjs.map +1 -1
- package/dist/harmony46.cjs +14 -12
- package/dist/harmony46.cjs.map +1 -1
- package/dist/harmony46.mjs +15 -13
- package/dist/harmony46.mjs.map +1 -1
- package/dist/harmony47.cjs +9 -9
- package/dist/harmony47.cjs.map +1 -1
- package/dist/harmony47.mjs +9 -9
- package/dist/harmony47.mjs.map +1 -1
- package/dist/harmony48.cjs +12 -14
- package/dist/harmony48.cjs.map +1 -1
- package/dist/harmony48.mjs +13 -15
- package/dist/harmony48.mjs.map +1 -1
- package/dist/harmony49.cjs +12 -14
- package/dist/harmony49.cjs.map +1 -1
- package/dist/harmony49.mjs +12 -14
- package/dist/harmony49.mjs.map +1 -1
- package/dist/harmony5.cjs +1 -1
- package/dist/harmony5.mjs +1 -1
- package/dist/harmony50.cjs +10 -10
- package/dist/harmony50.cjs.map +1 -1
- package/dist/harmony50.mjs +10 -10
- package/dist/harmony50.mjs.map +1 -1
- package/dist/harmony51.cjs +8 -8
- package/dist/harmony51.cjs.map +1 -1
- package/dist/harmony51.mjs +8 -8
- package/dist/harmony51.mjs.map +1 -1
- package/dist/harmony52.cjs +8 -8
- package/dist/harmony52.cjs.map +1 -1
- package/dist/harmony52.mjs +8 -8
- package/dist/harmony52.mjs.map +1 -1
- package/dist/harmony53.cjs +14 -12
- package/dist/harmony53.cjs.map +1 -1
- package/dist/harmony53.mjs +14 -12
- package/dist/harmony53.mjs.map +1 -1
- package/dist/harmony54.cjs +8 -8
- package/dist/harmony54.cjs.map +1 -1
- package/dist/harmony54.mjs +8 -8
- package/dist/harmony54.mjs.map +1 -1
- package/dist/harmony55.cjs +12 -14
- package/dist/harmony55.cjs.map +1 -1
- package/dist/harmony55.mjs +12 -14
- package/dist/harmony55.mjs.map +1 -1
- package/dist/harmony56.cjs +10 -7
- package/dist/harmony56.cjs.map +1 -1
- package/dist/harmony56.mjs +12 -9
- package/dist/harmony56.mjs.map +1 -1
- package/dist/harmony57.cjs +10 -7
- package/dist/harmony57.cjs.map +1 -1
- package/dist/harmony57.mjs +12 -9
- package/dist/harmony57.mjs.map +1 -1
- package/dist/harmony58.cjs +13 -123
- package/dist/harmony58.cjs.map +1 -1
- package/dist/harmony58.mjs +13 -123
- package/dist/harmony58.mjs.map +1 -1
- package/dist/harmony59.cjs +13 -81
- package/dist/harmony59.cjs.map +1 -1
- package/dist/harmony59.mjs +13 -81
- package/dist/harmony59.mjs.map +1 -1
- package/dist/harmony6.cjs +4 -4
- package/dist/harmony6.cjs.map +1 -1
- package/dist/harmony6.mjs +4 -4
- package/dist/harmony6.mjs.map +1 -1
- package/dist/harmony60.cjs +122 -4
- package/dist/harmony60.cjs.map +1 -1
- package/dist/harmony60.mjs +122 -4
- package/dist/harmony60.mjs.map +1 -1
- package/dist/harmony61.cjs +81 -22
- package/dist/harmony61.cjs.map +1 -1
- package/dist/harmony61.mjs +80 -21
- package/dist/harmony61.mjs.map +1 -1
- package/dist/harmony62.cjs +4 -18
- package/dist/harmony62.cjs.map +1 -1
- package/dist/harmony62.mjs +4 -18
- package/dist/harmony62.mjs.map +1 -1
- package/dist/harmony63.cjs +11 -131
- package/dist/harmony63.cjs.map +1 -1
- package/dist/harmony63.mjs +11 -131
- package/dist/harmony63.mjs.map +1 -1
- package/dist/harmony64.cjs +37 -34
- package/dist/harmony64.cjs.map +1 -1
- package/dist/harmony64.mjs +37 -34
- package/dist/harmony64.mjs.map +1 -1
- package/dist/harmony65.cjs +143 -24
- package/dist/harmony65.cjs.map +1 -1
- package/dist/harmony65.mjs +143 -24
- package/dist/harmony65.mjs.map +1 -1
- package/dist/harmony66.cjs +35 -7
- package/dist/harmony66.cjs.map +1 -1
- package/dist/harmony66.mjs +35 -7
- package/dist/harmony66.mjs.map +1 -1
- package/dist/harmony67.cjs +24 -82
- package/dist/harmony67.cjs.map +1 -1
- package/dist/harmony67.mjs +24 -82
- package/dist/harmony67.mjs.map +1 -1
- package/dist/harmony68.cjs +7 -32
- package/dist/harmony68.cjs.map +1 -1
- package/dist/harmony68.mjs +7 -32
- package/dist/harmony68.mjs.map +1 -1
- package/dist/harmony69.cjs +82 -16
- package/dist/harmony69.cjs.map +1 -1
- package/dist/harmony69.mjs +82 -16
- package/dist/harmony69.mjs.map +1 -1
- package/dist/harmony7.cjs +1 -1
- package/dist/harmony7.mjs +1 -1
- package/dist/harmony70.cjs +55 -16
- package/dist/harmony70.cjs.map +1 -1
- package/dist/harmony70.mjs +54 -15
- package/dist/harmony70.mjs.map +1 -1
- package/dist/harmony71.cjs +19 -19
- package/dist/harmony71.cjs.map +1 -1
- package/dist/harmony71.mjs +18 -18
- package/dist/harmony71.mjs.map +1 -1
- package/dist/harmony72.cjs +14 -60
- package/dist/harmony72.cjs.map +1 -1
- package/dist/harmony72.mjs +14 -60
- package/dist/harmony72.mjs.map +1 -1
- package/dist/harmony73.cjs +18 -51
- package/dist/harmony73.cjs.map +1 -1
- package/dist/harmony73.mjs +17 -50
- package/dist/harmony73.mjs.map +1 -1
- package/dist/harmony74.cjs +62 -40
- package/dist/harmony74.cjs.map +1 -1
- package/dist/harmony74.mjs +61 -39
- package/dist/harmony74.mjs.map +1 -1
- package/dist/harmony75.cjs +5 -8
- package/dist/harmony75.cjs.map +1 -1
- package/dist/harmony75.mjs +5 -8
- package/dist/harmony75.mjs.map +1 -1
- package/dist/harmony76.cjs +8 -7
- package/dist/harmony76.cjs.map +1 -1
- package/dist/harmony76.mjs +9 -8
- package/dist/harmony76.mjs.map +1 -1
- package/dist/harmony77.cjs +14 -25
- package/dist/harmony77.cjs.map +1 -1
- package/dist/harmony77.mjs +15 -26
- package/dist/harmony77.mjs.map +1 -1
- package/dist/harmony78.cjs +23 -3
- package/dist/harmony78.cjs.map +1 -1
- package/dist/harmony78.mjs +23 -3
- package/dist/harmony78.mjs.map +1 -1
- package/dist/harmony79.cjs +4 -32
- package/dist/harmony79.cjs.map +1 -1
- package/dist/harmony79.mjs +5 -33
- package/dist/harmony79.mjs.map +1 -1
- package/dist/harmony8.cjs +59 -30
- package/dist/harmony8.cjs.map +1 -1
- package/dist/harmony8.mjs +59 -30
- package/dist/harmony8.mjs.map +1 -1
- package/dist/harmony80.cjs +30 -25
- package/dist/harmony80.cjs.map +1 -1
- package/dist/harmony80.mjs +30 -25
- package/dist/harmony80.mjs.map +1 -1
- package/dist/harmony81.cjs +32 -3
- package/dist/harmony81.cjs.map +1 -1
- package/dist/harmony81.mjs +32 -3
- package/dist/harmony81.mjs.map +1 -1
- package/dist/harmony82.cjs +15 -14
- package/dist/harmony82.cjs.map +1 -1
- package/dist/harmony82.mjs +15 -14
- package/dist/harmony82.mjs.map +1 -1
- package/dist/harmony83.cjs +25 -69
- package/dist/harmony83.cjs.map +1 -1
- package/dist/harmony83.mjs +27 -71
- package/dist/harmony83.mjs.map +1 -1
- package/dist/harmony84.cjs +58 -11
- package/dist/harmony84.cjs.map +1 -1
- package/dist/harmony84.mjs +59 -12
- package/dist/harmony84.mjs.map +1 -1
- package/dist/harmony85.cjs +10 -31
- package/dist/harmony85.cjs.map +1 -1
- package/dist/harmony85.mjs +9 -30
- package/dist/harmony85.mjs.map +1 -1
- package/dist/harmony86.cjs +7 -8
- package/dist/harmony86.cjs.map +1 -1
- package/dist/harmony86.mjs +8 -9
- package/dist/harmony86.mjs.map +1 -1
- package/dist/harmony87.cjs +20 -38
- package/dist/harmony87.cjs.map +1 -1
- package/dist/harmony87.mjs +22 -40
- package/dist/harmony87.mjs.map +1 -1
- package/dist/harmony88.cjs +4 -10
- package/dist/harmony88.cjs.map +1 -1
- package/dist/harmony88.mjs +3 -9
- package/dist/harmony88.mjs.map +1 -1
- package/dist/harmony89.cjs +31 -9
- package/dist/harmony89.cjs.map +1 -1
- package/dist/harmony89.mjs +32 -10
- package/dist/harmony89.mjs.map +1 -1
- package/dist/harmony9.cjs +30 -23
- package/dist/harmony9.cjs.map +1 -1
- package/dist/harmony9.mjs +30 -23
- package/dist/harmony9.mjs.map +1 -1
- package/dist/harmony90.cjs +44 -22
- package/dist/harmony90.cjs.map +1 -1
- package/dist/harmony90.mjs +43 -21
- package/dist/harmony90.mjs.map +1 -1
- package/dist/harmony91.cjs +28 -11
- package/dist/harmony91.cjs.map +1 -1
- package/dist/harmony91.mjs +28 -11
- package/dist/harmony91.mjs.map +1 -1
- package/dist/harmony92.cjs +67 -13
- package/dist/harmony92.cjs.map +1 -1
- package/dist/harmony92.mjs +66 -12
- package/dist/harmony92.mjs.map +1 -1
- package/dist/harmony93.cjs +11 -95
- package/dist/harmony93.cjs.map +1 -1
- package/dist/harmony93.mjs +12 -79
- package/dist/harmony93.mjs.map +1 -1
- package/dist/harmony94.cjs +3 -14
- package/dist/harmony94.cjs.map +1 -1
- package/dist/harmony94.mjs +3 -14
- package/dist/harmony94.mjs.map +1 -1
- package/dist/harmony95.cjs +7 -21
- package/dist/harmony95.cjs.map +1 -1
- package/dist/harmony95.mjs +6 -20
- package/dist/harmony95.mjs.map +1 -1
- package/dist/harmony97.cjs +9 -14
- package/dist/harmony97.cjs.map +1 -1
- package/dist/harmony97.mjs +8 -13
- package/dist/harmony97.mjs.map +1 -1
- package/dist/harmony98.cjs +53 -13
- package/dist/harmony98.cjs.map +1 -1
- package/dist/harmony98.mjs +55 -15
- package/dist/harmony98.mjs.map +1 -1
- package/dist/harmony99.cjs +40 -19
- package/dist/harmony99.cjs.map +1 -1
- package/dist/harmony99.mjs +41 -20
- package/dist/harmony99.mjs.map +1 -1
- package/dist/types/src/components/NavigationPanel/components/DropdownContent/DropdownContent.d.ts +1 -1
- package/dist/types/src/components/NavigationPanel/components/NavigationTabs/NavigationTabs.d.ts +1 -1
- package/dist/types/src/components/NavigationPanel/components/NavigationTabs/__fixtures__/navigationMock.d.ts +1 -1
- package/dist/types/src/components/NavigationPanel/components/NavigationTabs/helpers.d.ts +1 -1
- package/dist/types/src/components/Sidebar/Sidebar.d.ts +49 -15
- package/dist/types/src/components/Sidebar/Widgets/Avatar/Avatar.d.ts +0 -5
- package/dist/types/src/components/Sidebar/Widgets/Menu/Menu.d.ts +2 -3
- package/dist/types/src/components/Sidebar/Widgets/ProfileMenu/ProfileMenu.d.ts +24 -11
- package/dist/types/src/components/Sidebar/Widgets/ProfileMenu/ProfileMenu.stories.d.ts +5 -3
- package/dist/types/src/components/Sidebar/Widgets/ProfileMenu/ProfileMenuContent.d.ts +6 -0
- package/dist/types/src/components/Sidebar/Widgets/ProfileMenu/ProfileMenuContext.d.ts +3 -0
- package/dist/types/src/components/Sidebar/Widgets/ProfileMenu/ProfileMenuProvider.d.ts +7 -0
- package/dist/types/src/components/Sidebar/Widgets/ProfileMenu/ProfileSettingsMenuItem/ProfileSettingsMenuItem.d.ts +35 -10
- package/dist/types/src/components/Sidebar/Widgets/ProfileMenu/TeamMenuItem/TeamMenuItem.d.ts +3 -1
- package/dist/types/src/components/Sidebar/Widgets/ProfileMenu/TeamSwitch/TeamSwitch.d.ts +7 -5
- package/dist/types/src/components/Sidebar/Widgets/ProfileMenu/UpgradeMenuItem/UpgradeMenuItem.d.ts +9 -6
- package/dist/types/src/components/Sidebar/Widgets/Tasks/utils/content.d.ts +0 -4
- package/dist/types/src/components/Sidebar/types.d.ts +0 -72
- package/dist/types/src/components/Sidebar/utils/index.d.ts +4 -0
- package/dist/types/src/features/auth/core/types/jwtTokenPayload.d.ts +10 -16
- package/dist/types/src/features/auth/core/types/jwtTokenPayload.fixture.d.ts +11 -15
- package/dist/types/src/features/auth/factories/headerBuilderFactories.d.ts +9 -0
- package/dist/types/src/features/auth/frontend/hooks/useAuthenticatedProjectContributor.d.ts +1 -1
- package/dist/types/src/features/auth/frontend/hooks/useAuthenticatedSessionPayload.d.ts +5 -7
- package/dist/types/src/features/auth/frontend/hooks/useAuthenticatedUser.d.ts +1 -1
- package/dist/types/src/features/auth/node.d.ts +1 -0
- package/dist/types/src/features/auth/utils/permissions.d.ts +2 -0
- package/dist/types/src/features/navigation/ProjectNavigationPanel.d.ts +13 -0
- package/dist/types/src/features/navigation/core/NavigationClient.d.ts +23 -0
- package/dist/types/src/features/navigation/hooks/useExpertNavigation.d.ts +8 -0
- package/dist/types/src/features/navigation/hooks/useNavigation.d.ts +18 -0
- package/dist/types/src/features/navigation/hooks/useNavigationQueries.d.ts +279 -0
- package/dist/types/src/features/navigation/hooks/useNextgenNavigation.d.ts +16 -0
- package/dist/types/src/features/navigation/providers/NavigationClientProvider.d.ts +9 -0
- package/dist/types/src/features/navigation/schemas/navigationSchema.d.ts +22 -0
- package/dist/types/src/{components/NavigationPanel → features/navigation}/types/navigation.d.ts +1 -0
- package/dist/types/src/features/navigation/utils/toolbarVisibility.d.ts +28 -0
- package/dist/types/src/features/publicApi/contributors.d.ts +16 -16
- package/dist/types/src/features/publicApi/hooks/useAddContributorsMutation.d.ts +1 -1
- package/dist/types/src/features/publicApi/hooks/useCreateProjectMutation.d.ts +3 -2
- package/dist/types/src/features/publicApi/hooks/useGetProjectPermissionMetaQuery.d.ts +2 -2
- package/dist/types/src/features/publicApi/hooks/useGetTeamUsersQuery.d.ts +1 -1
- package/dist/types/src/features/publicApi/hooks/useListContributorsQuery.d.ts +1 -1
- package/dist/types/src/features/publicApi/hooks/useListPermissionTemplates.d.ts +1 -1
- package/dist/types/src/features/publicApi/hooks/useListProjectsQuery.d.ts +3 -2
- package/dist/types/src/features/publicApi/hooks/useListTeamUsersQuery.d.ts +1 -1
- package/dist/types/src/features/publicApi/hooks/useRetrieveContributorQuery.d.ts +1 -1
- package/dist/types/src/features/publicApi/hooks/useRetrieveProjectQuery.d.ts +2 -1
- package/dist/types/src/features/publicApi/hooks/useRetrieveUserPermissions.d.ts +23 -0
- package/dist/types/src/features/publicApi/hooks/useUpdateContributorMutation.d.ts +1 -1
- package/dist/types/src/features/publicApi/hooks/useUpdateProjectMutation.d.ts +2 -1
- package/dist/types/src/features/publicApi/permissionTemplates.d.ts +4 -4
- package/dist/types/src/features/publicApi/projects.d.ts +50 -28
- package/dist/types/src/features/publicApi/teamUsers.d.ts +119 -8
- package/dist/types/src/features/publicApi/types/contributorTypes.d.ts +18 -18
- package/dist/types/src/features/publicApi/types/permissionTemplateTypes.d.ts +6 -6
- package/dist/types/src/features/publicApi/types/permissionTypes.d.ts +3 -2
- package/dist/types/src/features/publicApi/types/projectTypes.d.ts +42 -27
- package/dist/types/src/features/publicApi/types/teamUserTypes.d.ts +76 -10
- package/dist/types/src/node.d.ts +2 -0
- package/dist/types/src/shared/queryClient.d.ts +2 -0
- package/package.json +2 -1
- package/dist/types/src/components/Sidebar/SidebarContent/SidebarContent.d.ts +0 -7
- package/dist/types/src/components/Sidebar/SidebarContext.d.ts +0 -3
- package/dist/types/src/components/Sidebar/SidebarProvider.d.ts +0 -3
- package/dist/types/src/components/Sidebar/Widgets/HelpMenu/HelpMenu.d.ts +0 -13
- package/dist/types/src/components/Sidebar/Widgets/ProfileMenu/BillingMenuItem/BillingMenuItem.d.ts +0 -13
- package/dist/types/src/components/Sidebar/Widgets/ProfileMenu/CreateNewTeam/CreateNewTeam.d.ts +0 -17
- package/dist/types/src/components/Sidebar/Widgets/ProfileMenu/CreateNewTeam/CreateNewTeam.test.d.ts +0 -1
- package/dist/types/src/components/Sidebar/Widgets/ProfileMenu/CreateNewTeamPlaceholder/CreateNewTeamPlaceholder.d.ts +0 -17
- package/dist/types/src/components/Sidebar/Widgets/ProfileMenu/CreateNewTeamPlaceholder/CreateNewTeamPlaceholder.test.d.ts +0 -1
- package/dist/types/src/components/Sidebar/Widgets/ProfileMenu/DarkModeToggle/DarkModeToggle.d.ts +0 -18
- package/dist/types/src/components/Sidebar/Widgets/ProfileMenu/ProfileSettingsMenuItem/ProfileSettingsMenuItem.test.d.ts +0 -1
- package/dist/types/src/components/Sidebar/Widgets/ProfileMenu/ProviderMenuItem/ProviderMenuItem.d.ts +0 -13
- package/dist/types/src/components/Sidebar/Widgets/ProfileMenu/ProviderMenuItem/ProviderMenuItem.test.d.ts +0 -1
- package/dist/types/src/components/Sidebar/Widgets/ProfileMenu/TeamMenuItem/TeamMenuItem.test.d.ts +0 -1
- package/dist/types/src/components/Sidebar/Widgets/ProfileMenu/TeamSettingsMenuItem/TeamSettingsMenuItem.d.ts +0 -13
- package/dist/types/src/components/Sidebar/Widgets/ProfileMenu/TeamSettingsMenuItem/TeamSettingsMenuItem.test.d.ts +0 -1
- package/dist/types/src/components/Sidebar/Widgets/ProfileMenu/TeamSwitch/TeamSwitch.test.d.ts +0 -1
- package/dist/types/src/components/Sidebar/Widgets/ProfileMenu/UpgradeMenuItem/UpgradeMenuItem.test.d.ts +0 -1
- package/dist/types/src/components/Sidebar/hooks/useSidebar.d.ts +0 -1
- package/dist/types/src/components/Sidebar/hooks/useSidebarDataLoader.d.ts +0 -5
- package/dist/types/src/utils/user/permissions.d.ts +0 -9
- package/dist/types/src/utils/user/permissions.test.d.ts +0 -1
- package/dist/types/tests/mocks/sidebar/sidebar.d.ts +0 -19
- package/dist/types/tests/utils/sidebar.d.ts +0 -4
- /package/dist/types/src/components/{Sidebar/Widgets/Avatar/Avatar.test.d.ts → NavigationPanel/NavigationPanel.test.d.ts} +0 -0
- /package/dist/types/src/components/Sidebar/{Widgets/ProfileMenu/UpgradeIcon → UpgradeIcon}/UpgradeIcon.d.ts +0 -0
- /package/dist/types/src/components/Sidebar/Widgets/{HelpMenu/HelpMenu.test.d.ts → ProfileMenu/ProfileMenu.test.d.ts} +0 -0
- /package/dist/types/src/{components/Sidebar/Widgets/IconLink/IconLink.test.d.ts → shared/queryClient.test.d.ts} +0 -0
package/dist/harmony106.mjs
CHANGED
@@ -1,38 +1,169 @@
|
|
1
|
-
import {
|
2
|
-
import {
|
3
|
-
import {
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
const
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
if (!jwt.result || !canUpgradePlan(jwt.result) || !currentTeam.result) {
|
13
|
-
return null;
|
14
|
-
}
|
15
|
-
const isOnFreePlan = isFreePlan(jwt.result.planId);
|
16
|
-
const trialDaysLeft = currentTeam.result.trialDaysLeft;
|
17
|
-
const daysNoun = trialDaysLeft === 1 ? "day" : "days";
|
18
|
-
const ctaMessage = isOnFreePlan ? "Your team is currently on the Free plan" : `Free trial ends in ${trialDaysLeft} ${daysNoun}`;
|
19
|
-
return /* @__PURE__ */ jsxs(
|
20
|
-
MenuItem,
|
21
|
-
{
|
22
|
-
"data-testid": "sidebar-upgrade-menu-item",
|
23
|
-
href,
|
24
|
-
className: `flex-col gap-1 items-start ${styles.container}`,
|
25
|
-
children: [
|
26
|
-
/* @__PURE__ */ jsx("span", { className: styles.planCta, children: ctaMessage }),
|
27
|
-
/* @__PURE__ */ jsxs("div", { className: `flex-row items-center gap-1 ${styles.upgradeIconWrapper}`, children: [
|
28
|
-
/* @__PURE__ */ jsx(UpgradeIcon, {}),
|
29
|
-
/* @__PURE__ */ jsx("span", { children: "See upgrade options" })
|
30
|
-
] })
|
31
|
-
]
|
1
|
+
import { useMemo } from "react";
|
2
|
+
import { useNavigationClient } from "./harmony93.mjs";
|
3
|
+
import { getProjectNavigationVisibilityMap } from "./harmony123.mjs";
|
4
|
+
const useExpertNavigation = (enabled, project, contributor) => {
|
5
|
+
const adminRights = (contributor == null ? void 0 : contributor.admin_rights) || [];
|
6
|
+
const marketingSupportProjectSelectedAppSlug = "selected-app-slug";
|
7
|
+
const navigationClient = useNavigationClient();
|
8
|
+
const expertUrl = navigationClient.getExpertUrl();
|
9
|
+
return useMemo(() => {
|
10
|
+
if (!project || !enabled) {
|
11
|
+
return [];
|
32
12
|
}
|
33
|
-
|
13
|
+
const navigationVisibility = getProjectNavigationVisibilityMap(
|
14
|
+
project,
|
15
|
+
adminRights,
|
16
|
+
() => true
|
17
|
+
);
|
18
|
+
const appsNavigationItem = {
|
19
|
+
key: "apps",
|
20
|
+
label: "Apps",
|
21
|
+
isActive: (input) => input === "apps",
|
22
|
+
link: `${expertUrl}/apps/${project.project_id}/`,
|
23
|
+
...navigationVisibility.apps
|
24
|
+
};
|
25
|
+
const appsNavigationItemArrInMainMenu = [];
|
26
|
+
const appsNavigationItemArrInMoreMenu = [];
|
27
|
+
if (project.project_type === "content_integration") {
|
28
|
+
appsNavigationItemArrInMoreMenu.push(appsNavigationItem);
|
29
|
+
} else {
|
30
|
+
appsNavigationItemArrInMainMenu.push(appsNavigationItem);
|
31
|
+
}
|
32
|
+
return [
|
33
|
+
{
|
34
|
+
key: "edit",
|
35
|
+
label: "Editor",
|
36
|
+
link: `${expertUrl}/project/${project.project_id}/`,
|
37
|
+
isActive: (input) => input === "edit",
|
38
|
+
...navigationVisibility.editor
|
39
|
+
},
|
40
|
+
{
|
41
|
+
key: "files",
|
42
|
+
label: "Files",
|
43
|
+
link: `${expertUrl}/files/${project.project_id}/`,
|
44
|
+
isActive: (input) => input === "files",
|
45
|
+
...navigationVisibility.files
|
46
|
+
},
|
47
|
+
...project.project_type === "content_integration" ? [
|
48
|
+
{
|
49
|
+
key: "contentManagement",
|
50
|
+
label: "Content management",
|
51
|
+
isActive: (input) => input === "apps",
|
52
|
+
link: `${expertUrl}/apps/${project.project_id}/${marketingSupportProjectSelectedAppSlug}`,
|
53
|
+
...navigationVisibility.contentManagement
|
54
|
+
}
|
55
|
+
] : [
|
56
|
+
{
|
57
|
+
key: "upload",
|
58
|
+
label: "Upload",
|
59
|
+
link: `${expertUrl}/upload/${project.project_id}/`,
|
60
|
+
isActive: (input) => input === "upload",
|
61
|
+
...navigationVisibility.upload
|
62
|
+
},
|
63
|
+
{
|
64
|
+
key: "download",
|
65
|
+
label: "Download",
|
66
|
+
link: `${expertUrl}/download/${project.project_id}/`,
|
67
|
+
isActive: (input) => input === "download",
|
68
|
+
...navigationVisibility.download
|
69
|
+
}
|
70
|
+
],
|
71
|
+
{
|
72
|
+
key: "tasks",
|
73
|
+
label: "Tasks",
|
74
|
+
link: `${expertUrl}/tasks/${project.project_id}/`,
|
75
|
+
isActive: (input) => input === "tasks",
|
76
|
+
// TODO: Add task count
|
77
|
+
// badge: taskCount,
|
78
|
+
...navigationVisibility.tasks
|
79
|
+
},
|
80
|
+
{
|
81
|
+
key: "workflows",
|
82
|
+
label: "Workflows",
|
83
|
+
link: `${expertUrl}/workflows/${project.project_id}/`,
|
84
|
+
isActive: (input) => input === "workflows",
|
85
|
+
novel: "New",
|
86
|
+
onClick: () => {
|
87
|
+
window.location.assign(`${expertUrl}/workflows/${project.project_id}/`);
|
88
|
+
},
|
89
|
+
...navigationVisibility.workflows
|
90
|
+
},
|
91
|
+
{
|
92
|
+
key: "contributors",
|
93
|
+
label: "Contributors",
|
94
|
+
link: `${expertUrl}/contributors/${project.project_id}/`,
|
95
|
+
isActive: (input) => input === "contributors",
|
96
|
+
...navigationVisibility.contributors
|
97
|
+
},
|
98
|
+
{
|
99
|
+
key: "screenshots",
|
100
|
+
label: "Screenshots",
|
101
|
+
link: `${expertUrl}/screenshots/${project.project_id}/`,
|
102
|
+
isActive: (input) => input === "screenshots",
|
103
|
+
...navigationVisibility.screenshots
|
104
|
+
},
|
105
|
+
{
|
106
|
+
key: "glossary",
|
107
|
+
label: "Glossary",
|
108
|
+
link: `${expertUrl}/glossary/${project.project_id}/`,
|
109
|
+
isActive: (input) => input === "glossary",
|
110
|
+
...navigationVisibility.glossary
|
111
|
+
},
|
112
|
+
...appsNavigationItemArrInMainMenu,
|
113
|
+
{
|
114
|
+
key: "more",
|
115
|
+
label: "More...",
|
116
|
+
isActive: (input) => ["settings", "statistics", "duplicates", "live edit"].includes(input),
|
117
|
+
...navigationVisibility.more,
|
118
|
+
dropdown: [
|
119
|
+
[
|
120
|
+
{
|
121
|
+
link: `${expertUrl}/settings/${project.project_id}/`,
|
122
|
+
label: "Settings",
|
123
|
+
...navigationVisibility.settings
|
124
|
+
},
|
125
|
+
{
|
126
|
+
link: `${expertUrl}/settings/${project.project_id}/#branches`,
|
127
|
+
label: "Branches",
|
128
|
+
...navigationVisibility.branches
|
129
|
+
},
|
130
|
+
{
|
131
|
+
link: `${expertUrl}/settings/${project.project_id}/#ota-bundles`,
|
132
|
+
label: "OTA Bundles",
|
133
|
+
...navigationVisibility.otaBundles
|
134
|
+
},
|
135
|
+
{
|
136
|
+
link: `${expertUrl}/settings/${project.project_id}/#project-automations`,
|
137
|
+
label: "Automations",
|
138
|
+
...navigationVisibility.automations
|
139
|
+
},
|
140
|
+
{
|
141
|
+
link: `${expertUrl}/dupes/${project.project_id}/`,
|
142
|
+
label: "Duplicate finder",
|
143
|
+
...navigationVisibility.duplicateFinder
|
144
|
+
}
|
145
|
+
],
|
146
|
+
[
|
147
|
+
...appsNavigationItemArrInMoreMenu,
|
148
|
+
{
|
149
|
+
// TODO: This could be problematic tab, because it is not a link and we can't just redirect. We need to find a workaround for that.
|
150
|
+
label: "Activity",
|
151
|
+
onClick: () => {
|
152
|
+
},
|
153
|
+
...navigationVisibility.activity
|
154
|
+
},
|
155
|
+
{
|
156
|
+
link: `${expertUrl}/statistics/${project.project_id}/`,
|
157
|
+
label: "Statistics",
|
158
|
+
...navigationVisibility.statistics
|
159
|
+
}
|
160
|
+
]
|
161
|
+
]
|
162
|
+
}
|
163
|
+
];
|
164
|
+
}, [project, adminRights, enabled, expertUrl]);
|
34
165
|
};
|
35
166
|
export {
|
36
|
-
|
167
|
+
useExpertNavigation
|
37
168
|
};
|
38
169
|
//# sourceMappingURL=harmony106.mjs.map
|
package/dist/harmony106.mjs.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"harmony106.mjs","sources":["../src/components/Sidebar/Widgets/ProfileMenu/UpgradeMenuItem/UpgradeMenuItem.tsx"],"sourcesContent":["import { useSidebar } from '@components/Sidebar/hooks/useSidebar'\nimport { MenuItem } from '@lokalise/louis'\nimport { isFreePlan } from '@utils'\nimport { canUpgradePlan } from '@utils/user/permissions'\nimport { UpgradeIcon } from '../UpgradeIcon/UpgradeIcon'\nimport styles from './UpgradeMenuItem.module.css'\n\n/**\n * A menu item component that displays upgrade call-to-action information.\n * Only renders when upgrade options should be shown (determined by context).\n *\n * The component displays different messages based on the team's current plan:\n * - For free plans: \"Your team is currently on the Free plan\"\n * - For trial plans: \"Free trial ends in X days\"\n *\n * Includes an upgrade icon and \"See upgrade options\" text, styled to draw attention\n * to the upgrade opportunity.\n *\n * @example\n * ```tsx\n * <UpgradeMenuItem href=\"/pricing\" />\n * ```\n *\n * @note This component must be used within a Sidebar Context\n */\n\ntype UpgradeMenuItemProps = {\n\thref: string\n}\n\nexport const UpgradeMenuItem = ({ href }: UpgradeMenuItemProps) => {\n\tconst {\n\t\tdata: { jwt, currentTeam },\n\t} = useSidebar()\n\n\tif (!jwt.result || !canUpgradePlan(jwt.result) || !currentTeam.result) {\n\t\treturn null\n\t}\n\n\tconst isOnFreePlan = isFreePlan(jwt.result.planId)\n\n\tconst trialDaysLeft = currentTeam.result.trialDaysLeft\n\n\tconst daysNoun = trialDaysLeft === 1 ? 'day' : 'days'\n\tconst ctaMessage = isOnFreePlan\n\t\t? 'Your team is currently on the Free plan'\n\t\t: `Free trial ends in ${trialDaysLeft} ${daysNoun}`\n\n\treturn (\n\t\t<MenuItem\n\t\t\tdata-testid=\"sidebar-upgrade-menu-item\"\n\t\t\thref={href}\n\t\t\tclassName={`flex-col gap-1 items-start ${styles.container}`}\n\t\t>\n\t\t\t<span className={styles.planCta}>{ctaMessage}</span>\n\t\t\t<div className={`flex-row items-center gap-1 ${styles.upgradeIconWrapper}`}>\n\t\t\t\t<UpgradeIcon />\n\t\t\t\t<span>See upgrade options</span>\n\t\t\t</div>\n\t\t</MenuItem>\n\t)\n}\n"],"names":[],"mappings":";;;;;;;AA8BO,MAAM,kBAAkB,CAAC,EAAE,WAAiC;AAC5D,QAAA;AAAA,IACL,MAAM,EAAE,KAAK,YAAY;AAAA,MACtB,WAAW;AAEX,MAAA,CAAC,IAAI,UAAU,CAAC,eAAe,IAAI,MAAM,KAAK,CAAC,YAAY,QAAQ;AAC/D,WAAA;AAAA,EAAA;AAGR,QAAM,eAAe,WAAW,IAAI,OAAO,MAAM;AAE3C,QAAA,gBAAgB,YAAY,OAAO;AAEnC,QAAA,WAAW,kBAAkB,IAAI,QAAQ;AAC/C,QAAM,aAAa,eAChB,4CACA,sBAAsB,aAAa,IAAI,QAAQ;AAGjD,SAAA;AAAA,IAAC;AAAA,IAAA;AAAA,MACA,eAAY;AAAA,MACZ;AAAA,MACA,WAAW,8BAA8B,OAAO,SAAS;AAAA,MAEzD,UAAA;AAAA,QAAA,oBAAC,QAAK,EAAA,WAAW,OAAO,SAAU,UAAW,YAAA;AAAA,6BAC5C,OAAI,EAAA,WAAW,+BAA+B,OAAO,kBAAkB,IACvE,UAAA;AAAA,UAAA,oBAAC,aAAY,EAAA;AAAA,UACb,oBAAC,UAAK,UAAmB,sBAAA,CAAA;AAAA,QAAA,EAC1B,CAAA;AAAA,MAAA;AAAA,IAAA;AAAA,EACD;AAEF;"}
|
1
|
+
{"version":3,"file":"harmony106.mjs","sources":["../src/features/navigation/hooks/useExpertNavigation.ts"],"sourcesContent":["import type { Contributor, Project } from '@features/node'\nimport { useMemo } from 'react'\nimport { useNavigationClient } from '../providers/NavigationClientProvider'\nimport type { NavigationTabsItem } from '../types/navigation'\nimport { getProjectNavigationVisibilityMap } from '../utils/toolbarVisibility'\n\n// TODO: Validate features types\nexport const getIsFeatureEnabled = (features: Record<string, boolean>, name: string) => {\n\tconst featureState = features[name]\n\n\treturn (\n\t\tfeatureState !== null &&\n\t\tfeatureState !== undefined &&\n\t\t[true, 'on', 'true'].includes(featureState)\n\t)\n}\n\n/**\n * Hook to generate legacy navigation items using the existing structure\n * but with context API instead of Redux\n */\nexport const useExpertNavigation = (\n\tenabled: boolean,\n\tproject?: Project,\n\tcontributor?: Contributor,\n) => {\n\t// Use contributor data if provided, otherwise use defaults\n\tconst adminRights = contributor?.admin_rights || []\n\t// TODO: Implement selected app slug, small investigation is needed\n\tconst marketingSupportProjectSelectedAppSlug = 'selected-app-slug'\n\tconst navigationClient = useNavigationClient()\n\tconst expertUrl = navigationClient.getExpertUrl()\n\n\treturn useMemo(() => {\n\t\t// Get data from contexts instead of Redux, or use provided data\n\t\tif (!project || !enabled) {\n\t\t\treturn []\n\t\t}\n\t\t/* TODO: We're missing badges API. We need to get it from the backend or find alternative way to get task count\n\t\t * Fetch tasks and calculate count is not a good idea, because it can have pagination, therefore we can\n\t\t * ask for an additional prop in tasks response: task_count based on branch_id + project_id + task_status\n\t\t */\n\t\t// const taskCount = getTaskCount(project, branch, badges.tasks)\n\n\t\t// TODO: Implement feature flags functionality, most likely separate package\n\t\t// const isFeatureEnabled = (feature: string) => getIsFeatureEnabled(features, feature)\n\n\t\tconst navigationVisibility = getProjectNavigationVisibilityMap(\n\t\t\tproject,\n\t\t\tadminRights,\n\t\t\t() => true /*isFeatureEnabled*/,\n\t\t)\n\n\t\tconst appsNavigationItem: NavigationTabsItem = {\n\t\t\tkey: 'apps',\n\t\t\tlabel: 'Apps',\n\t\t\tisActive: (input: string) => input === 'apps',\n\t\t\tlink: `${expertUrl}/apps/${project.project_id}/`,\n\t\t\t...navigationVisibility.apps,\n\t\t}\n\n\t\tconst appsNavigationItemArrInMainMenu: NavigationTabsItem[] = []\n\t\tconst appsNavigationItemArrInMoreMenu: NavigationTabsItem[] = []\n\n\t\tif (project.project_type === 'content_integration') {\n\t\t\tappsNavigationItemArrInMoreMenu.push(appsNavigationItem)\n\t\t} else {\n\t\t\tappsNavigationItemArrInMainMenu.push(appsNavigationItem)\n\t\t}\n\n\t\treturn [\n\t\t\t{\n\t\t\t\tkey: 'edit',\n\t\t\t\tlabel: 'Editor',\n\t\t\t\tlink: `${expertUrl}/project/${project.project_id}/`,\n\t\t\t\tisActive: (input: string) => input === 'edit',\n\t\t\t\t...navigationVisibility.editor,\n\t\t\t},\n\t\t\t{\n\t\t\t\tkey: 'files',\n\t\t\t\tlabel: 'Files',\n\t\t\t\tlink: `${expertUrl}/files/${project.project_id}/`,\n\t\t\t\tisActive: (input: string) => input === 'files',\n\t\t\t\t...navigationVisibility.files,\n\t\t\t},\n\t\t\t...(project.project_type === 'content_integration'\n\t\t\t\t? [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tkey: 'contentManagement',\n\t\t\t\t\t\t\tlabel: 'Content management',\n\t\t\t\t\t\t\tisActive: (input: string) => input === 'apps',\n\t\t\t\t\t\t\tlink: `${expertUrl}/apps/${project.project_id}/${marketingSupportProjectSelectedAppSlug}`,\n\t\t\t\t\t\t\t...navigationVisibility.contentManagement,\n\t\t\t\t\t\t},\n\t\t\t\t\t]\n\t\t\t\t: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tkey: 'upload',\n\t\t\t\t\t\t\tlabel: 'Upload',\n\t\t\t\t\t\t\tlink: `${expertUrl}/upload/${project.project_id}/`,\n\t\t\t\t\t\t\tisActive: (input: string) => input === 'upload',\n\t\t\t\t\t\t\t...navigationVisibility.upload,\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tkey: 'download',\n\t\t\t\t\t\t\tlabel: 'Download',\n\t\t\t\t\t\t\tlink: `${expertUrl}/download/${project.project_id}/`,\n\t\t\t\t\t\t\tisActive: (input: string) => input === 'download',\n\t\t\t\t\t\t\t...navigationVisibility.download,\n\t\t\t\t\t\t},\n\t\t\t\t\t]),\n\t\t\t{\n\t\t\t\tkey: 'tasks',\n\t\t\t\tlabel: 'Tasks',\n\t\t\t\tlink: `${expertUrl}/tasks/${project.project_id}/`,\n\t\t\t\tisActive: (input: string) => input === 'tasks',\n\t\t\t\t// TODO: Add task count\n\t\t\t\t// badge: taskCount,\n\t\t\t\t...navigationVisibility.tasks,\n\t\t\t},\n\t\t\t{\n\t\t\t\tkey: 'workflows',\n\t\t\t\tlabel: 'Workflows',\n\t\t\t\tlink: `${expertUrl}/workflows/${project.project_id}/`,\n\t\t\t\tisActive: (input: string) => input === 'workflows',\n\t\t\t\tnovel: 'New',\n\t\t\t\tonClick: () => {\n\t\t\t\t\t// TODO: Resolve analytics globally, most likely separate package\n\t\t\t\t\t// track(AnalyticsEventName.EDITOR_WORKFLOWS_TAB_CLICKED);\n\t\t\t\t\twindow.location.assign(`${expertUrl}/workflows/${project.project_id}/`)\n\t\t\t\t},\n\t\t\t\t...navigationVisibility.workflows,\n\t\t\t},\n\t\t\t{\n\t\t\t\tkey: 'contributors',\n\t\t\t\tlabel: 'Contributors',\n\t\t\t\tlink: `${expertUrl}/contributors/${project.project_id}/`,\n\t\t\t\tisActive: (input: string) => input === 'contributors',\n\t\t\t\t...navigationVisibility.contributors,\n\t\t\t},\n\t\t\t{\n\t\t\t\tkey: 'screenshots',\n\t\t\t\tlabel: 'Screenshots',\n\t\t\t\tlink: `${expertUrl}/screenshots/${project.project_id}/`,\n\t\t\t\tisActive: (input: string) => input === 'screenshots',\n\t\t\t\t...navigationVisibility.screenshots,\n\t\t\t},\n\t\t\t{\n\t\t\t\tkey: 'glossary',\n\t\t\t\tlabel: 'Glossary',\n\t\t\t\tlink: `${expertUrl}/glossary/${project.project_id}/`,\n\t\t\t\tisActive: (input: string) => input === 'glossary',\n\t\t\t\t...navigationVisibility.glossary,\n\t\t\t},\n\t\t\t...appsNavigationItemArrInMainMenu,\n\t\t\t{\n\t\t\t\tkey: 'more',\n\t\t\t\tlabel: 'More...',\n\t\t\t\tisActive: (input: string) =>\n\t\t\t\t\t['settings', 'statistics', 'duplicates', 'live edit'].includes(input),\n\t\t\t\t...navigationVisibility.more,\n\t\t\t\tdropdown: [\n\t\t\t\t\t[\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tlink: `${expertUrl}/settings/${project.project_id}/`,\n\t\t\t\t\t\t\tlabel: 'Settings',\n\t\t\t\t\t\t\t...navigationVisibility.settings,\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tlink: `${expertUrl}/settings/${project.project_id}/#branches`,\n\t\t\t\t\t\t\tlabel: 'Branches',\n\t\t\t\t\t\t\t...navigationVisibility.branches,\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tlink: `${expertUrl}/settings/${project.project_id}/#ota-bundles`,\n\t\t\t\t\t\t\tlabel: 'OTA Bundles',\n\t\t\t\t\t\t\t...navigationVisibility.otaBundles,\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tlink: `${expertUrl}/settings/${project.project_id}/#project-automations`,\n\t\t\t\t\t\t\tlabel: 'Automations',\n\t\t\t\t\t\t\t...navigationVisibility.automations,\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tlink: `${expertUrl}/dupes/${project.project_id}/`,\n\t\t\t\t\t\t\tlabel: 'Duplicate finder',\n\t\t\t\t\t\t\t...navigationVisibility.duplicateFinder,\n\t\t\t\t\t\t},\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t...appsNavigationItemArrInMoreMenu,\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t// TODO: This could be problematic tab, because it is not a link and we can't just redirect. We need to find a workaround for that.\n\t\t\t\t\t\t\tlabel: 'Activity',\n\t\t\t\t\t\t\tonClick: () => {\n\t\t\t\t\t\t\t\t// const showActivityEvent = new CustomEvent(\"show-activity\", {\n\t\t\t\t\t\t\t\t// \tdetail: {\n\t\t\t\t\t\t\t\t// \t\tprojectId: project.id,\n\t\t\t\t\t\t\t\t// \t\tbranchId: branch.branchId,\n\t\t\t\t\t\t\t\t// \t\tbranchName: branch.branchName,\n\t\t\t\t\t\t\t\t// \t},\n\t\t\t\t\t\t\t\t// });\n\t\t\t\t\t\t\t\t// document.dispatchEvent(showActivityEvent);\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t...navigationVisibility.activity,\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tlink: `${expertUrl}/statistics/${project.project_id}/`,\n\t\t\t\t\t\t\tlabel: 'Statistics',\n\t\t\t\t\t\t\t...navigationVisibility.statistics,\n\t\t\t\t\t\t},\n\t\t\t\t\t],\n\t\t\t\t],\n\t\t\t},\n\t\t]\n\t}, [project, adminRights, enabled, expertUrl])\n}\n\n// TODO: Helper function for getting task count from badge data\n// const _getTaskCount = (project: any, branch: any, taskBadges: any) => {\n// \tif (!taskBadges) return 0\n\n// \t// Implementation would depend on your getTaskCountFromTasks utility\n// \t// Simplified version:\n// \tconst projectTasks = taskBadges[project.id] || {}\n// \treturn projectTasks[branch.branchId || 'master'] || 0\n// }\n"],"names":[],"mappings":"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"}
|
package/dist/harmony107.cjs
CHANGED
@@ -1,24 +1,47 @@
|
|
1
1
|
"use strict";
|
2
|
-
Object.
|
3
|
-
const
|
4
|
-
const
|
5
|
-
const
|
6
|
-
const
|
7
|
-
const
|
8
|
-
const
|
9
|
-
const
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
2
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
3
|
+
const React = require("react");
|
4
|
+
const NavigationClientProvider = require("./harmony93.cjs");
|
5
|
+
const navigationSchema = require("./harmony124.cjs");
|
6
|
+
const useNextgenNavigation = (activeKey, enabled, project, contributor) => {
|
7
|
+
const navigationClient = NavigationClientProvider.useNavigationClient();
|
8
|
+
const nextgenUrl = navigationClient.getNextgenUrl();
|
9
|
+
const navigate = React.useCallback(
|
10
|
+
(path) => {
|
11
|
+
window.location.href = `${nextgenUrl}${path}`;
|
12
|
+
},
|
13
|
+
[nextgenUrl]
|
14
|
+
);
|
15
|
+
return React.useMemo(() => {
|
16
|
+
if (!enabled) {
|
17
|
+
return [];
|
18
|
+
}
|
19
|
+
const projectId = (project == null ? void 0 : project.project_id) || "";
|
20
|
+
const context = {
|
21
|
+
flags: {},
|
22
|
+
// TODO: getFeatureFlags(features),
|
23
|
+
pathname: window.location.pathname,
|
24
|
+
permissions: []
|
25
|
+
};
|
26
|
+
return navigationSchema.navigationItems.filter((item) => item.shouldShow ? item.shouldShow(context) : true).map((item) => {
|
27
|
+
const disabled = typeof item.disabled === "function" ? item.disabled(context) : !!item.disabled;
|
28
|
+
const badge = typeof item.badge === "function" ? item.badge(context) : item.badge;
|
29
|
+
const isActive = (input) => item.isActive ? item.isActive(input) : item.key === activeKey || input === item.key;
|
30
|
+
return {
|
31
|
+
key: item.key,
|
32
|
+
label: item.labelKey,
|
33
|
+
// You can apply translations here if needed
|
34
|
+
icon: item.icon,
|
35
|
+
visible: true,
|
36
|
+
badge,
|
37
|
+
disabled,
|
38
|
+
dropdown: item.dropdown,
|
39
|
+
isActive,
|
40
|
+
link: `${nextgenUrl}${item.path({ projectId })}`,
|
41
|
+
onClick: () => navigate(item.path({ projectId }))
|
42
|
+
};
|
43
|
+
});
|
44
|
+
}, [project, activeKey, enabled, navigate, contributor, nextgenUrl]);
|
16
45
|
};
|
17
|
-
exports.
|
18
|
-
exports.menuContainer = menuContainer;
|
19
|
-
exports.profileButton = profileButton;
|
20
|
-
exports.profileImage = profileImage;
|
21
|
-
exports.profileImageHighlight = profileImageHighlight;
|
22
|
-
exports.profileImageUpgradeIcon = profileImageUpgradeIcon;
|
23
|
-
exports.userIconWrapper = userIconWrapper;
|
46
|
+
exports.useNextgenNavigation = useNextgenNavigation;
|
24
47
|
//# sourceMappingURL=harmony107.cjs.map
|
package/dist/harmony107.cjs.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"harmony107.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":"
|
1
|
+
{"version":3,"file":"harmony107.cjs","sources":["../src/features/navigation/hooks/useNextgenNavigation.ts"],"sourcesContent":["import type { Contributor, Project } from '@features/node'\nimport { useCallback, useMemo } from 'react'\nimport { useNavigationClient } from '../providers/NavigationClientProvider'\n// TODO: react-router-dom as peer dependencies works only inside next-gen apps. It shouldn't be like that.\n// Because of that we can't use THE WHOLE package in legacy apps, therefore it should be implemented in legacy apps as well(almost impossible),\n// so this dependency should be installed as direct dependency. or we should think about other options\n// import { useNavigate } from \"react-router-dom\";\nimport { navigationItems } from '../schemas/navigationSchema'\n\n// TODO: Unify navigation items for next-gen and legacy apps\n/**\n * Hook to generate navigation items for new applications\n */\nexport const useNextgenNavigation = (\n\tactiveKey: string,\n\tenabled: boolean,\n\tproject?: Project,\n\tcontributor?: Contributor,\n) => {\n\tconst navigationClient = useNavigationClient()\n\tconst nextgenUrl = navigationClient.getNextgenUrl()\n\n\tconst navigate = useCallback(\n\t\t(path: string) => {\n\t\t\t// TODO: Define navigate logic here\n\t\t\twindow.location.href = `${nextgenUrl}${path}`\n\t\t},\n\t\t[nextgenUrl],\n\t)\n\n\treturn useMemo(() => {\n\t\tif (!enabled) {\n\t\t\treturn []\n\t\t}\n\n\t\tconst projectId = project?.project_id || ''\n\n\t\t// Context for filtering and transforming navigation items\n\t\tconst context = {\n\t\t\tflags: {}, // TODO: getFeatureFlags(features),\n\t\t\tpathname: window.location.pathname,\n\t\t\tpermissions: contributor?.admin_rights || [],\n\t\t}\n\n\t\t// Filter and map items\n\t\treturn (\n\t\t\tnavigationItems\n\t\t\t\t// Filter based on conditions\n\t\t\t\t.filter((item) => (item.shouldShow ? item.shouldShow(context) : true))\n\t\t\t\t// Map to NavigationTabsItem shape\n\t\t\t\t.map((item) => {\n\t\t\t\t\tconst disabled =\n\t\t\t\t\t\ttypeof item.disabled === 'function' ? item.disabled(context) : !!item.disabled\n\n\t\t\t\t\tconst badge = typeof item.badge === 'function' ? item.badge(context) : item.badge\n\n\t\t\t\t\t// Create isActive function\n\t\t\t\t\tconst isActive = (input: string) =>\n\t\t\t\t\t\titem.isActive ? item.isActive(input) : item.key === activeKey || input === item.key\n\n\t\t\t\t\treturn {\n\t\t\t\t\t\tkey: item.key,\n\t\t\t\t\t\tlabel: item.labelKey, // You can apply translations here if needed\n\t\t\t\t\t\ticon: item.icon,\n\t\t\t\t\t\tvisible: true,\n\t\t\t\t\t\tbadge,\n\t\t\t\t\t\tdisabled,\n\t\t\t\t\t\tdropdown: item.dropdown,\n\t\t\t\t\t\tisActive,\n\t\t\t\t\t\tlink: `${nextgenUrl}${item.path({ projectId })}`,\n\t\t\t\t\t\tonClick: () => navigate(item.path({ projectId })),\n\t\t\t\t\t}\n\t\t\t\t})\n\t\t)\n\t}, [project, activeKey, enabled, navigate, contributor, nextgenUrl])\n}\n\n// TODO: Helper to convert features to flags format\n// const getFeatureFlags = (features) => {\n// \tif (!features) return {}\n//\n// \t// Convert features to the format expected by navigation schema\n// \treturn Object.keys(features).reduce((flags, key) => {\n// \t\tflags[key] = features[key] ? 'on' : 'off'\n// \t\treturn flags\n// \t}, {})\n// }\n"],"names":["useNavigationClient","useCallback","useMemo","navigationItems"],"mappings":";;;;;AAaO,MAAM,uBAAuB,CACnC,WACA,SACA,SACA,gBACI;AACJ,QAAM,mBAAmBA,yBAAAA,oBAAoB;AACvC,QAAA,aAAa,iBAAiB,cAAc;AAElD,QAAM,WAAWC,MAAA;AAAA,IAChB,CAAC,SAAiB;AAEjB,aAAO,SAAS,OAAO,GAAG,UAAU,GAAG,IAAI;AAAA,IAC5C;AAAA,IACA,CAAC,UAAU;AAAA,EACZ;AAEA,SAAOC,cAAQ,MAAM;AACpB,QAAI,CAAC,SAAS;AACb,aAAO,CAAC;AAAA,IAAA;AAGH,UAAA,aAAY,mCAAS,eAAc;AAGzC,UAAM,UAAU;AAAA,MACf,OAAO,CAAC;AAAA;AAAA,MACR,UAAU,OAAO,SAAS;AAAA,MAC1B,aAA0C,CAAA;AAAA,IAC3C;AAGA,WACCC,iBAEE,gBAAA,OAAO,CAAC,SAAU,KAAK,aAAa,KAAK,WAAW,OAAO,IAAI,IAAK,EAEpE,IAAI,CAAC,SAAS;AACR,YAAA,WACL,OAAO,KAAK,aAAa,aAAa,KAAK,SAAS,OAAO,IAAI,CAAC,CAAC,KAAK;AAEjE,YAAA,QAAQ,OAAO,KAAK,UAAU,aAAa,KAAK,MAAM,OAAO,IAAI,KAAK;AAG5E,YAAM,WAAW,CAAC,UACjB,KAAK,WAAW,KAAK,SAAS,KAAK,IAAI,KAAK,QAAQ,aAAa,UAAU,KAAK;AAE1E,aAAA;AAAA,QACN,KAAK,KAAK;AAAA,QACV,OAAO,KAAK;AAAA;AAAA,QACZ,MAAM,KAAK;AAAA,QACX,SAAS;AAAA,QACT;AAAA,QACA;AAAA,QACA,UAAU,KAAK;AAAA,QACf;AAAA,QACA,MAAM,GAAG,UAAU,GAAG,KAAK,KAAK,EAAE,UAAW,CAAA,CAAC;AAAA,QAC9C,SAAS,MAAM,SAAS,KAAK,KAAK,EAAE,UAAA,CAAW,CAAC;AAAA,MACjD;AAAA,IAAA,CACA;AAAA,EAAA,GAED,CAAC,SAAS,WAAW,SAAS,UAAU,aAAa,UAAU,CAAC;AACpE;;"}
|
package/dist/harmony107.mjs
CHANGED
@@ -1,24 +1,47 @@
|
|
1
|
-
|
2
|
-
|
3
|
-
|
4
|
-
const
|
5
|
-
const
|
6
|
-
const
|
7
|
-
const
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
1
|
+
import { useCallback, useMemo } from "react";
|
2
|
+
import { useNavigationClient } from "./harmony93.mjs";
|
3
|
+
import { navigationItems } from "./harmony124.mjs";
|
4
|
+
const useNextgenNavigation = (activeKey, enabled, project, contributor) => {
|
5
|
+
const navigationClient = useNavigationClient();
|
6
|
+
const nextgenUrl = navigationClient.getNextgenUrl();
|
7
|
+
const navigate = useCallback(
|
8
|
+
(path) => {
|
9
|
+
window.location.href = `${nextgenUrl}${path}`;
|
10
|
+
},
|
11
|
+
[nextgenUrl]
|
12
|
+
);
|
13
|
+
return useMemo(() => {
|
14
|
+
if (!enabled) {
|
15
|
+
return [];
|
16
|
+
}
|
17
|
+
const projectId = (project == null ? void 0 : project.project_id) || "";
|
18
|
+
const context = {
|
19
|
+
flags: {},
|
20
|
+
// TODO: getFeatureFlags(features),
|
21
|
+
pathname: window.location.pathname,
|
22
|
+
permissions: []
|
23
|
+
};
|
24
|
+
return navigationItems.filter((item) => item.shouldShow ? item.shouldShow(context) : true).map((item) => {
|
25
|
+
const disabled = typeof item.disabled === "function" ? item.disabled(context) : !!item.disabled;
|
26
|
+
const badge = typeof item.badge === "function" ? item.badge(context) : item.badge;
|
27
|
+
const isActive = (input) => item.isActive ? item.isActive(input) : item.key === activeKey || input === item.key;
|
28
|
+
return {
|
29
|
+
key: item.key,
|
30
|
+
label: item.labelKey,
|
31
|
+
// You can apply translations here if needed
|
32
|
+
icon: item.icon,
|
33
|
+
visible: true,
|
34
|
+
badge,
|
35
|
+
disabled,
|
36
|
+
dropdown: item.dropdown,
|
37
|
+
isActive,
|
38
|
+
link: `${nextgenUrl}${item.path({ projectId })}`,
|
39
|
+
onClick: () => navigate(item.path({ projectId }))
|
40
|
+
};
|
41
|
+
});
|
42
|
+
}, [project, activeKey, enabled, navigate, contributor, nextgenUrl]);
|
14
43
|
};
|
15
44
|
export {
|
16
|
-
|
17
|
-
menuContainer,
|
18
|
-
profileButton,
|
19
|
-
profileImage,
|
20
|
-
profileImageHighlight,
|
21
|
-
profileImageUpgradeIcon,
|
22
|
-
userIconWrapper
|
45
|
+
useNextgenNavigation
|
23
46
|
};
|
24
47
|
//# sourceMappingURL=harmony107.mjs.map
|
package/dist/harmony107.mjs.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"harmony107.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":"
|
1
|
+
{"version":3,"file":"harmony107.mjs","sources":["../src/features/navigation/hooks/useNextgenNavigation.ts"],"sourcesContent":["import type { Contributor, Project } from '@features/node'\nimport { useCallback, useMemo } from 'react'\nimport { useNavigationClient } from '../providers/NavigationClientProvider'\n// TODO: react-router-dom as peer dependencies works only inside next-gen apps. It shouldn't be like that.\n// Because of that we can't use THE WHOLE package in legacy apps, therefore it should be implemented in legacy apps as well(almost impossible),\n// so this dependency should be installed as direct dependency. or we should think about other options\n// import { useNavigate } from \"react-router-dom\";\nimport { navigationItems } from '../schemas/navigationSchema'\n\n// TODO: Unify navigation items for next-gen and legacy apps\n/**\n * Hook to generate navigation items for new applications\n */\nexport const useNextgenNavigation = (\n\tactiveKey: string,\n\tenabled: boolean,\n\tproject?: Project,\n\tcontributor?: Contributor,\n) => {\n\tconst navigationClient = useNavigationClient()\n\tconst nextgenUrl = navigationClient.getNextgenUrl()\n\n\tconst navigate = useCallback(\n\t\t(path: string) => {\n\t\t\t// TODO: Define navigate logic here\n\t\t\twindow.location.href = `${nextgenUrl}${path}`\n\t\t},\n\t\t[nextgenUrl],\n\t)\n\n\treturn useMemo(() => {\n\t\tif (!enabled) {\n\t\t\treturn []\n\t\t}\n\n\t\tconst projectId = project?.project_id || ''\n\n\t\t// Context for filtering and transforming navigation items\n\t\tconst context = {\n\t\t\tflags: {}, // TODO: getFeatureFlags(features),\n\t\t\tpathname: window.location.pathname,\n\t\t\tpermissions: contributor?.admin_rights || [],\n\t\t}\n\n\t\t// Filter and map items\n\t\treturn (\n\t\t\tnavigationItems\n\t\t\t\t// Filter based on conditions\n\t\t\t\t.filter((item) => (item.shouldShow ? item.shouldShow(context) : true))\n\t\t\t\t// Map to NavigationTabsItem shape\n\t\t\t\t.map((item) => {\n\t\t\t\t\tconst disabled =\n\t\t\t\t\t\ttypeof item.disabled === 'function' ? item.disabled(context) : !!item.disabled\n\n\t\t\t\t\tconst badge = typeof item.badge === 'function' ? item.badge(context) : item.badge\n\n\t\t\t\t\t// Create isActive function\n\t\t\t\t\tconst isActive = (input: string) =>\n\t\t\t\t\t\titem.isActive ? item.isActive(input) : item.key === activeKey || input === item.key\n\n\t\t\t\t\treturn {\n\t\t\t\t\t\tkey: item.key,\n\t\t\t\t\t\tlabel: item.labelKey, // You can apply translations here if needed\n\t\t\t\t\t\ticon: item.icon,\n\t\t\t\t\t\tvisible: true,\n\t\t\t\t\t\tbadge,\n\t\t\t\t\t\tdisabled,\n\t\t\t\t\t\tdropdown: item.dropdown,\n\t\t\t\t\t\tisActive,\n\t\t\t\t\t\tlink: `${nextgenUrl}${item.path({ projectId })}`,\n\t\t\t\t\t\tonClick: () => navigate(item.path({ projectId })),\n\t\t\t\t\t}\n\t\t\t\t})\n\t\t)\n\t}, [project, activeKey, enabled, navigate, contributor, nextgenUrl])\n}\n\n// TODO: Helper to convert features to flags format\n// const getFeatureFlags = (features) => {\n// \tif (!features) return {}\n//\n// \t// Convert features to the format expected by navigation schema\n// \treturn Object.keys(features).reduce((flags, key) => {\n// \t\tflags[key] = features[key] ? 'on' : 'off'\n// \t\treturn flags\n// \t}, {})\n// }\n"],"names":[],"mappings":";;;AAaO,MAAM,uBAAuB,CACnC,WACA,SACA,SACA,gBACI;AACJ,QAAM,mBAAmB,oBAAoB;AACvC,QAAA,aAAa,iBAAiB,cAAc;AAElD,QAAM,WAAW;AAAA,IAChB,CAAC,SAAiB;AAEjB,aAAO,SAAS,OAAO,GAAG,UAAU,GAAG,IAAI;AAAA,IAC5C;AAAA,IACA,CAAC,UAAU;AAAA,EACZ;AAEA,SAAO,QAAQ,MAAM;AACpB,QAAI,CAAC,SAAS;AACb,aAAO,CAAC;AAAA,IAAA;AAGH,UAAA,aAAY,mCAAS,eAAc;AAGzC,UAAM,UAAU;AAAA,MACf,OAAO,CAAC;AAAA;AAAA,MACR,UAAU,OAAO,SAAS;AAAA,MAC1B,aAA0C,CAAA;AAAA,IAC3C;AAGA,WACC,gBAEE,OAAO,CAAC,SAAU,KAAK,aAAa,KAAK,WAAW,OAAO,IAAI,IAAK,EAEpE,IAAI,CAAC,SAAS;AACR,YAAA,WACL,OAAO,KAAK,aAAa,aAAa,KAAK,SAAS,OAAO,IAAI,CAAC,CAAC,KAAK;AAEjE,YAAA,QAAQ,OAAO,KAAK,UAAU,aAAa,KAAK,MAAM,OAAO,IAAI,KAAK;AAG5E,YAAM,WAAW,CAAC,UACjB,KAAK,WAAW,KAAK,SAAS,KAAK,IAAI,KAAK,QAAQ,aAAa,UAAU,KAAK;AAE1E,aAAA;AAAA,QACN,KAAK,KAAK;AAAA,QACV,OAAO,KAAK;AAAA;AAAA,QACZ,MAAM,KAAK;AAAA,QACX,SAAS;AAAA,QACT;AAAA,QACA;AAAA,QACA,UAAU,KAAK;AAAA,QACf;AAAA,QACA,MAAM,GAAG,UAAU,GAAG,KAAK,KAAK,EAAE,UAAW,CAAA,CAAC;AAAA,QAC9C,SAAS,MAAM,SAAS,KAAK,KAAK,EAAE,UAAA,CAAW,CAAC;AAAA,MACjD;AAAA,IAAA,CACA;AAAA,EAAA,GAED,CAAC,SAAS,WAAW,SAAS,UAAU,aAAa,UAAU,CAAC;AACpE;"}
|
package/dist/harmony108.cjs
CHANGED
@@ -2,23 +2,14 @@
|
|
2
2
|
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
3
3
|
const jsxRuntime = require("react/jsx-runtime");
|
4
4
|
const louis = require("@lokalise/louis");
|
5
|
-
const
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
{
|
11
|
-
|
12
|
-
|
13
|
-
UpgradeIcon_module.default.iconContainer,
|
14
|
-
"flex-row",
|
15
|
-
"items-center",
|
16
|
-
"justify-center",
|
17
|
-
className
|
18
|
-
),
|
19
|
-
children: /* @__PURE__ */ jsxRuntime.jsx(louis.CaretUpIcon, {})
|
20
|
-
}
|
21
|
-
);
|
5
|
+
const SortingIcon = ({ direction }) => {
|
6
|
+
if (direction === "asc") {
|
7
|
+
return /* @__PURE__ */ jsxRuntime.jsx(louis.SortAscendingIcon, { ariaLabel: "ascending sorting" });
|
8
|
+
}
|
9
|
+
if (direction === "desc") {
|
10
|
+
return /* @__PURE__ */ jsxRuntime.jsx(louis.SortDescendingIcon, { ariaLabel: "descending sorting" });
|
11
|
+
}
|
12
|
+
return /* @__PURE__ */ jsxRuntime.jsx(louis.SortIcon, { ariaLabel: "sorting" });
|
22
13
|
};
|
23
|
-
exports.
|
14
|
+
exports.SortingIcon = SortingIcon;
|
24
15
|
//# sourceMappingURL=harmony108.cjs.map
|
package/dist/harmony108.cjs.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"harmony108.cjs","sources":["../src/components/
|
1
|
+
{"version":3,"file":"harmony108.cjs","sources":["../src/components/Table/components/SortingIcon.tsx"],"sourcesContent":["import { SortAscendingIcon, SortDescendingIcon, SortIcon } from '@lokalise/louis'\nimport type { SortDirection } from '@tanstack/react-table'\n\ntype SortingIconProps = {\n\tdirection: SortDirection | false\n}\n\nexport const SortingIcon = ({ direction }: SortingIconProps) => {\n\tif (direction === 'asc') {\n\t\treturn <SortAscendingIcon ariaLabel=\"ascending sorting\" />\n\t}\n\tif (direction === 'desc') {\n\t\treturn <SortDescendingIcon ariaLabel=\"descending sorting\" />\n\t}\n\treturn <SortIcon ariaLabel=\"sorting\" />\n}\n"],"names":["jsx","SortAscendingIcon","SortDescendingIcon","SortIcon"],"mappings":";;;;AAOO,MAAM,cAAc,CAAC,EAAE,gBAAkC;AAC/D,MAAI,cAAc,OAAO;AACjB,WAAAA,2BAAA,IAACC,MAAkB,mBAAA,EAAA,WAAU,oBAAoB,CAAA;AAAA,EAAA;AAEzD,MAAI,cAAc,QAAQ;AAClB,WAAAD,2BAAA,IAACE,MAAmB,oBAAA,EAAA,WAAU,qBAAqB,CAAA;AAAA,EAAA;AAEpD,SAAAF,2BAAA,IAACG,MAAS,UAAA,EAAA,WAAU,UAAU,CAAA;AACtC;;"}
|
package/dist/harmony108.mjs
CHANGED
@@ -1,24 +1,15 @@
|
|
1
1
|
import { jsx } from "react/jsx-runtime";
|
2
|
-
import {
|
3
|
-
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
{
|
9
|
-
|
10
|
-
|
11
|
-
styles.iconContainer,
|
12
|
-
"flex-row",
|
13
|
-
"items-center",
|
14
|
-
"justify-center",
|
15
|
-
className
|
16
|
-
),
|
17
|
-
children: /* @__PURE__ */ jsx(CaretUpIcon, {})
|
18
|
-
}
|
19
|
-
);
|
2
|
+
import { SortAscendingIcon, SortDescendingIcon, SortIcon } from "@lokalise/louis";
|
3
|
+
const SortingIcon = ({ direction }) => {
|
4
|
+
if (direction === "asc") {
|
5
|
+
return /* @__PURE__ */ jsx(SortAscendingIcon, { ariaLabel: "ascending sorting" });
|
6
|
+
}
|
7
|
+
if (direction === "desc") {
|
8
|
+
return /* @__PURE__ */ jsx(SortDescendingIcon, { ariaLabel: "descending sorting" });
|
9
|
+
}
|
10
|
+
return /* @__PURE__ */ jsx(SortIcon, { ariaLabel: "sorting" });
|
20
11
|
};
|
21
12
|
export {
|
22
|
-
|
13
|
+
SortingIcon
|
23
14
|
};
|
24
15
|
//# sourceMappingURL=harmony108.mjs.map
|
package/dist/harmony108.mjs.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"harmony108.mjs","sources":["../src/components/
|
1
|
+
{"version":3,"file":"harmony108.mjs","sources":["../src/components/Table/components/SortingIcon.tsx"],"sourcesContent":["import { SortAscendingIcon, SortDescendingIcon, SortIcon } from '@lokalise/louis'\nimport type { SortDirection } from '@tanstack/react-table'\n\ntype SortingIconProps = {\n\tdirection: SortDirection | false\n}\n\nexport const SortingIcon = ({ direction }: SortingIconProps) => {\n\tif (direction === 'asc') {\n\t\treturn <SortAscendingIcon ariaLabel=\"ascending sorting\" />\n\t}\n\tif (direction === 'desc') {\n\t\treturn <SortDescendingIcon ariaLabel=\"descending sorting\" />\n\t}\n\treturn <SortIcon ariaLabel=\"sorting\" />\n}\n"],"names":[],"mappings":";;AAOO,MAAM,cAAc,CAAC,EAAE,gBAAkC;AAC/D,MAAI,cAAc,OAAO;AACjB,WAAA,oBAAC,mBAAkB,EAAA,WAAU,oBAAoB,CAAA;AAAA,EAAA;AAEzD,MAAI,cAAc,QAAQ;AAClB,WAAA,oBAAC,oBAAmB,EAAA,WAAU,qBAAqB,CAAA;AAAA,EAAA;AAEpD,SAAA,oBAAC,UAAS,EAAA,WAAU,UAAU,CAAA;AACtC;"}
|
package/dist/harmony109.cjs
CHANGED
@@ -1,9 +1,15 @@
|
|
1
1
|
"use strict";
|
2
2
|
Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
|
3
|
-
const
|
3
|
+
const headerSortButton = "_headerSortButton_b5tlh_1";
|
4
|
+
const centeredCell = "_centeredCell_b5tlh_15";
|
5
|
+
const rightAlignedCell = "_rightAlignedCell_b5tlh_19";
|
4
6
|
const styles = {
|
5
|
-
|
7
|
+
headerSortButton,
|
8
|
+
centeredCell,
|
9
|
+
rightAlignedCell
|
6
10
|
};
|
11
|
+
exports.centeredCell = centeredCell;
|
7
12
|
exports.default = styles;
|
8
|
-
exports.
|
13
|
+
exports.headerSortButton = headerSortButton;
|
14
|
+
exports.rightAlignedCell = rightAlignedCell;
|
9
15
|
//# sourceMappingURL=harmony109.cjs.map
|
package/dist/harmony109.cjs.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"harmony109.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":"
|
1
|
+
{"version":3,"file":"harmony109.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;"}
|
package/dist/harmony109.mjs
CHANGED
@@ -1,9 +1,15 @@
|
|
1
|
-
const
|
1
|
+
const headerSortButton = "_headerSortButton_b5tlh_1";
|
2
|
+
const centeredCell = "_centeredCell_b5tlh_15";
|
3
|
+
const rightAlignedCell = "_rightAlignedCell_b5tlh_19";
|
2
4
|
const styles = {
|
3
|
-
|
5
|
+
headerSortButton,
|
6
|
+
centeredCell,
|
7
|
+
rightAlignedCell
|
4
8
|
};
|
5
9
|
export {
|
10
|
+
centeredCell,
|
6
11
|
styles as default,
|
7
|
-
|
12
|
+
headerSortButton,
|
13
|
+
rightAlignedCell
|
8
14
|
};
|
9
15
|
//# sourceMappingURL=harmony109.mjs.map
|
package/dist/harmony109.mjs.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"harmony109.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":"
|
1
|
+
{"version":3,"file":"harmony109.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;"}
|
package/dist/harmony11.cjs
CHANGED
@@ -1,12 +1,55 @@
|
|
1
1
|
"use strict";
|
2
2
|
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
3
|
-
const
|
4
|
-
const
|
5
|
-
const
|
6
|
-
const
|
7
|
-
const
|
8
|
-
|
3
|
+
const jsxRuntime = require("react/jsx-runtime");
|
4
|
+
const urlRegex = /(\b(https?|):\/\/[-a-zA-Zа-яА-Я0-9+&@#/%?=~_|!:,.;]*[-a-zA-Zа-яА-Я0-9+&@#/%=~_|])/gi;
|
5
|
+
const matchUrl = (input) => input.match(urlRegex) ?? [];
|
6
|
+
const replaceWithAnchor = (text, pattern, index) => {
|
7
|
+
const components = text.split(pattern);
|
8
|
+
if (components.length === 1) {
|
9
|
+
return text;
|
10
|
+
}
|
11
|
+
const result = [];
|
12
|
+
if (components[0] !== "") {
|
13
|
+
result.push(components[0]);
|
14
|
+
}
|
15
|
+
components.shift();
|
16
|
+
if (components[components.length - 1] === "") {
|
17
|
+
components.pop();
|
18
|
+
}
|
19
|
+
result.push(
|
20
|
+
/* @__PURE__ */ jsxRuntime.jsx("a", { href: pattern, target: "_blank", rel: "noreferrer noopener", children: pattern }, pattern + index)
|
21
|
+
);
|
22
|
+
result.push(components.join(pattern));
|
23
|
+
return result.filter((item) => item !== "");
|
9
24
|
};
|
10
|
-
|
11
|
-
|
25
|
+
const matchUrlsAndReplace = (text) => {
|
26
|
+
const matchedUrls = matchUrl(text);
|
27
|
+
if (!(matchedUrls == null ? void 0 : matchedUrls.length)) {
|
28
|
+
return text;
|
29
|
+
}
|
30
|
+
return matchedUrls.reduce((accumulator, pattern, index) => {
|
31
|
+
if (typeof accumulator === "string") {
|
32
|
+
return replaceWithAnchor(accumulator, pattern, index);
|
33
|
+
}
|
34
|
+
return accumulator.flatMap((item) => {
|
35
|
+
if (typeof item === "string") {
|
36
|
+
return replaceWithAnchor(item, pattern, index);
|
37
|
+
}
|
38
|
+
return item;
|
39
|
+
});
|
40
|
+
}, text);
|
41
|
+
};
|
42
|
+
const makeUrlClickable = (text) => {
|
43
|
+
if (typeof text === "string") {
|
44
|
+
return matchUrlsAndReplace(text);
|
45
|
+
}
|
46
|
+
return text.flatMap((item) => {
|
47
|
+
if (typeof item === "string") {
|
48
|
+
return matchUrlsAndReplace(item);
|
49
|
+
}
|
50
|
+
return item;
|
51
|
+
}, text);
|
52
|
+
};
|
53
|
+
exports.makeUrlClickable = makeUrlClickable;
|
54
|
+
exports.matchUrl = matchUrl;
|
12
55
|
//# sourceMappingURL=harmony11.cjs.map
|
package/dist/harmony11.cjs.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"harmony11.cjs","sources":["../src/utils/
|
1
|
+
{"version":3,"file":"harmony11.cjs","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":["jsx"],"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,IACNA,2BAAAA,IAAC,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;;;"}
|