@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 @@
|
|
1
|
+
{"version":3,"file":"harmony117.cjs","sources":["../node_modules/lodash/_Symbol.js"],"sourcesContent":["var root = require('./_root');\n\n/** Built-in value references. */\nvar Symbol = root.Symbol;\n\nmodule.exports = Symbol;\n"],"names":["require$$0","Symbol"],"mappings":";;;;;;;;AAAA,MAAI,OAAOA,MAAAA,UAAkB;AAG7B,MAAIC,UAAS,KAAK;AAElB,YAAiBA;;;;","x_google_ignoreList":[0]}
|
@@ -0,0 +1,15 @@
|
|
1
|
+
import { __require as require_root } from "./harmony103.mjs";
|
2
|
+
var _Symbol;
|
3
|
+
var hasRequired_Symbol;
|
4
|
+
function require_Symbol() {
|
5
|
+
if (hasRequired_Symbol) return _Symbol;
|
6
|
+
hasRequired_Symbol = 1;
|
7
|
+
var root = require_root();
|
8
|
+
var Symbol = root.Symbol;
|
9
|
+
_Symbol = Symbol;
|
10
|
+
return _Symbol;
|
11
|
+
}
|
12
|
+
export {
|
13
|
+
require_Symbol as __require
|
14
|
+
};
|
15
|
+
//# sourceMappingURL=harmony117.mjs.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"harmony117.mjs","sources":["../node_modules/lodash/_Symbol.js"],"sourcesContent":["var root = require('./_root');\n\n/** Built-in value references. */\nvar Symbol = root.Symbol;\n\nmodule.exports = Symbol;\n"],"names":["require$$0"],"mappings":";;;;;;AAAA,MAAI,OAAOA,aAAkB;AAG7B,MAAI,SAAS,KAAK;AAElB,YAAiB;;;","x_google_ignoreList":[0]}
|
@@ -0,0 +1,35 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
3
|
+
const _Symbol = require("./harmony117.cjs");
|
4
|
+
var _getRawTag;
|
5
|
+
var hasRequired_getRawTag;
|
6
|
+
function require_getRawTag() {
|
7
|
+
if (hasRequired_getRawTag) return _getRawTag;
|
8
|
+
hasRequired_getRawTag = 1;
|
9
|
+
var Symbol2 = _Symbol.__require();
|
10
|
+
var objectProto = Object.prototype;
|
11
|
+
var hasOwnProperty = objectProto.hasOwnProperty;
|
12
|
+
var nativeObjectToString = objectProto.toString;
|
13
|
+
var symToStringTag = Symbol2 ? Symbol2.toStringTag : void 0;
|
14
|
+
function getRawTag(value) {
|
15
|
+
var isOwn = hasOwnProperty.call(value, symToStringTag), tag = value[symToStringTag];
|
16
|
+
try {
|
17
|
+
value[symToStringTag] = void 0;
|
18
|
+
var unmasked = true;
|
19
|
+
} catch (e) {
|
20
|
+
}
|
21
|
+
var result = nativeObjectToString.call(value);
|
22
|
+
if (unmasked) {
|
23
|
+
if (isOwn) {
|
24
|
+
value[symToStringTag] = tag;
|
25
|
+
} else {
|
26
|
+
delete value[symToStringTag];
|
27
|
+
}
|
28
|
+
}
|
29
|
+
return result;
|
30
|
+
}
|
31
|
+
_getRawTag = getRawTag;
|
32
|
+
return _getRawTag;
|
33
|
+
}
|
34
|
+
exports.__require = require_getRawTag;
|
35
|
+
//# sourceMappingURL=harmony118.cjs.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"harmony118.cjs","sources":["../node_modules/lodash/_getRawTag.js"],"sourcesContent":["var Symbol = require('./_Symbol');\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * Used to resolve the\n * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring)\n * of values.\n */\nvar nativeObjectToString = objectProto.toString;\n\n/** Built-in value references. */\nvar symToStringTag = Symbol ? Symbol.toStringTag : undefined;\n\n/**\n * A specialized version of `baseGetTag` which ignores `Symbol.toStringTag` values.\n *\n * @private\n * @param {*} value The value to query.\n * @returns {string} Returns the raw `toStringTag`.\n */\nfunction getRawTag(value) {\n var isOwn = hasOwnProperty.call(value, symToStringTag),\n tag = value[symToStringTag];\n\n try {\n value[symToStringTag] = undefined;\n var unmasked = true;\n } catch (e) {}\n\n var result = nativeObjectToString.call(value);\n if (unmasked) {\n if (isOwn) {\n value[symToStringTag] = tag;\n } else {\n delete value[symToStringTag];\n }\n }\n return result;\n}\n\nmodule.exports = getRawTag;\n"],"names":["Symbol","require$$0"],"mappings":";;;;;;;;AAAA,MAAIA,UAASC,QAAAA,UAAoB;AAGjC,MAAI,cAAc,OAAO;AAGzB,MAAI,iBAAiB,YAAY;AAOjC,MAAI,uBAAuB,YAAY;AAGvC,MAAI,iBAAiBD,UAASA,QAAO,cAAc;AASnD,WAAS,UAAU,OAAO;AACxB,QAAI,QAAQ,eAAe,KAAK,OAAO,cAAc,GACjD,MAAM,MAAM,cAAc;AAE9B,QAAI;AACF,YAAM,cAAc,IAAI;AACxB,UAAI,WAAW;AAAA,IAChB,SAAQ,GAAG;AAAA,IAAA;AAEZ,QAAI,SAAS,qBAAqB,KAAK,KAAK;AAC5C,QAAI,UAAU;AACZ,UAAI,OAAO;AACT,cAAM,cAAc,IAAI;AAAA,MAC9B,OAAW;AACL,eAAO,MAAM,cAAc;AAAA,MACjC;AAAA,IACA;AACE,WAAO;AAAA,EACT;AAEA,eAAiB;;;;","x_google_ignoreList":[0]}
|
@@ -0,0 +1,35 @@
|
|
1
|
+
import { __require as require_Symbol } from "./harmony117.mjs";
|
2
|
+
var _getRawTag;
|
3
|
+
var hasRequired_getRawTag;
|
4
|
+
function require_getRawTag() {
|
5
|
+
if (hasRequired_getRawTag) return _getRawTag;
|
6
|
+
hasRequired_getRawTag = 1;
|
7
|
+
var Symbol = require_Symbol();
|
8
|
+
var objectProto = Object.prototype;
|
9
|
+
var hasOwnProperty = objectProto.hasOwnProperty;
|
10
|
+
var nativeObjectToString = objectProto.toString;
|
11
|
+
var symToStringTag = Symbol ? Symbol.toStringTag : void 0;
|
12
|
+
function getRawTag(value) {
|
13
|
+
var isOwn = hasOwnProperty.call(value, symToStringTag), tag = value[symToStringTag];
|
14
|
+
try {
|
15
|
+
value[symToStringTag] = void 0;
|
16
|
+
var unmasked = true;
|
17
|
+
} catch (e) {
|
18
|
+
}
|
19
|
+
var result = nativeObjectToString.call(value);
|
20
|
+
if (unmasked) {
|
21
|
+
if (isOwn) {
|
22
|
+
value[symToStringTag] = tag;
|
23
|
+
} else {
|
24
|
+
delete value[symToStringTag];
|
25
|
+
}
|
26
|
+
}
|
27
|
+
return result;
|
28
|
+
}
|
29
|
+
_getRawTag = getRawTag;
|
30
|
+
return _getRawTag;
|
31
|
+
}
|
32
|
+
export {
|
33
|
+
require_getRawTag as __require
|
34
|
+
};
|
35
|
+
//# sourceMappingURL=harmony118.mjs.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"harmony118.mjs","sources":["../node_modules/lodash/_getRawTag.js"],"sourcesContent":["var Symbol = require('./_Symbol');\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * Used to resolve the\n * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring)\n * of values.\n */\nvar nativeObjectToString = objectProto.toString;\n\n/** Built-in value references. */\nvar symToStringTag = Symbol ? Symbol.toStringTag : undefined;\n\n/**\n * A specialized version of `baseGetTag` which ignores `Symbol.toStringTag` values.\n *\n * @private\n * @param {*} value The value to query.\n * @returns {string} Returns the raw `toStringTag`.\n */\nfunction getRawTag(value) {\n var isOwn = hasOwnProperty.call(value, symToStringTag),\n tag = value[symToStringTag];\n\n try {\n value[symToStringTag] = undefined;\n var unmasked = true;\n } catch (e) {}\n\n var result = nativeObjectToString.call(value);\n if (unmasked) {\n if (isOwn) {\n value[symToStringTag] = tag;\n } else {\n delete value[symToStringTag];\n }\n }\n return result;\n}\n\nmodule.exports = getRawTag;\n"],"names":["require$$0"],"mappings":";;;;;;AAAA,MAAI,SAASA,eAAoB;AAGjC,MAAI,cAAc,OAAO;AAGzB,MAAI,iBAAiB,YAAY;AAOjC,MAAI,uBAAuB,YAAY;AAGvC,MAAI,iBAAiB,SAAS,OAAO,cAAc;AASnD,WAAS,UAAU,OAAO;AACxB,QAAI,QAAQ,eAAe,KAAK,OAAO,cAAc,GACjD,MAAM,MAAM,cAAc;AAE9B,QAAI;AACF,YAAM,cAAc,IAAI;AACxB,UAAI,WAAW;AAAA,IAChB,SAAQ,GAAG;AAAA,IAAA;AAEZ,QAAI,SAAS,qBAAqB,KAAK,KAAK;AAC5C,QAAI,UAAU;AACZ,UAAI,OAAO;AACT,cAAM,cAAc,IAAI;AAAA,MAC9B,OAAW;AACL,eAAO,MAAM,cAAc;AAAA,MACjC;AAAA,IACA;AACE,WAAO;AAAA,EACT;AAEA,eAAiB;;;","x_google_ignoreList":[0]}
|
@@ -0,0 +1,17 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
3
|
+
var _objectToString;
|
4
|
+
var hasRequired_objectToString;
|
5
|
+
function require_objectToString() {
|
6
|
+
if (hasRequired_objectToString) return _objectToString;
|
7
|
+
hasRequired_objectToString = 1;
|
8
|
+
var objectProto = Object.prototype;
|
9
|
+
var nativeObjectToString = objectProto.toString;
|
10
|
+
function objectToString(value) {
|
11
|
+
return nativeObjectToString.call(value);
|
12
|
+
}
|
13
|
+
_objectToString = objectToString;
|
14
|
+
return _objectToString;
|
15
|
+
}
|
16
|
+
exports.__require = require_objectToString;
|
17
|
+
//# sourceMappingURL=harmony119.cjs.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"harmony119.cjs","sources":["../node_modules/lodash/_objectToString.js"],"sourcesContent":["/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/**\n * Used to resolve the\n * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring)\n * of values.\n */\nvar nativeObjectToString = objectProto.toString;\n\n/**\n * Converts `value` to a string using `Object.prototype.toString`.\n *\n * @private\n * @param {*} value The value to convert.\n * @returns {string} Returns the converted string.\n */\nfunction objectToString(value) {\n return nativeObjectToString.call(value);\n}\n\nmodule.exports = objectToString;\n"],"names":[],"mappings":";;;;;;;AACA,MAAI,cAAc,OAAO;AAOzB,MAAI,uBAAuB,YAAY;AASvC,WAAS,eAAe,OAAO;AAC7B,WAAO,qBAAqB,KAAK,KAAK;AAAA,EACxC;AAEA,oBAAiB;;;;","x_google_ignoreList":[0]}
|
@@ -0,0 +1,17 @@
|
|
1
|
+
var _objectToString;
|
2
|
+
var hasRequired_objectToString;
|
3
|
+
function require_objectToString() {
|
4
|
+
if (hasRequired_objectToString) return _objectToString;
|
5
|
+
hasRequired_objectToString = 1;
|
6
|
+
var objectProto = Object.prototype;
|
7
|
+
var nativeObjectToString = objectProto.toString;
|
8
|
+
function objectToString(value) {
|
9
|
+
return nativeObjectToString.call(value);
|
10
|
+
}
|
11
|
+
_objectToString = objectToString;
|
12
|
+
return _objectToString;
|
13
|
+
}
|
14
|
+
export {
|
15
|
+
require_objectToString as __require
|
16
|
+
};
|
17
|
+
//# sourceMappingURL=harmony119.mjs.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"harmony119.mjs","sources":["../node_modules/lodash/_objectToString.js"],"sourcesContent":["/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/**\n * Used to resolve the\n * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring)\n * of values.\n */\nvar nativeObjectToString = objectProto.toString;\n\n/**\n * Converts `value` to a string using `Object.prototype.toString`.\n *\n * @private\n * @param {*} value The value to convert.\n * @returns {string} Returns the converted string.\n */\nfunction objectToString(value) {\n return nativeObjectToString.call(value);\n}\n\nmodule.exports = objectToString;\n"],"names":[],"mappings":";;;;;AACA,MAAI,cAAc,OAAO;AAOzB,MAAI,uBAAuB,YAAY;AASvC,WAAS,eAAe,OAAO;AAC7B,WAAO,qBAAqB,KAAK,KAAK;AAAA,EACxC;AAEA,oBAAiB;;;","x_google_ignoreList":[0]}
|
@@ -0,0 +1,27 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
3
|
+
const createHeaderBuilderMiddleware = require("./harmony17.cjs");
|
4
|
+
const jwtTokenPayload = require("./harmony15.cjs");
|
5
|
+
const UnauthorizedError = require("./harmony14.cjs");
|
6
|
+
const dateFns = require("date-fns");
|
7
|
+
function JwtAuthHeaderBuilderMiddleware(props) {
|
8
|
+
return createHeaderBuilderMiddleware.createHeaderBuilderMiddleware(async (builder) => {
|
9
|
+
var _a, _b;
|
10
|
+
const token = props.getCurrentToken() ?? await ((_a = props.generateNewToken) == null ? void 0 : _a.call(props));
|
11
|
+
if (!token) {
|
12
|
+
throw new UnauthorizedError.UnauthorizedError();
|
13
|
+
}
|
14
|
+
const { exp } = jwtTokenPayload.parseJwtTokenPayload(token.accessToken) ?? { exp: 0 };
|
15
|
+
if (!dateFns.isThisSecond(new Date(exp))) {
|
16
|
+
return builder.add("authorization", `Bearer ${token.accessToken}`);
|
17
|
+
}
|
18
|
+
const newToken = await props.refreshToken(token);
|
19
|
+
if (!newToken) {
|
20
|
+
throw new UnauthorizedError.UnauthorizedError();
|
21
|
+
}
|
22
|
+
(_b = props.onNewTokenIssued) == null ? void 0 : _b.call(props, newToken);
|
23
|
+
return builder.add("authorization", `Bearer ${newToken.accessToken}`);
|
24
|
+
});
|
25
|
+
}
|
26
|
+
exports.JwtAuthHeaderBuilderMiddleware = JwtAuthHeaderBuilderMiddleware;
|
27
|
+
//# sourceMappingURL=harmony12.cjs.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"harmony12.cjs","sources":["../src/features/auth/core/middleware/jwtAuthHeaderBuilderMiddleware.ts"],"sourcesContent":["import { createHeaderBuilderMiddleware } from '@features/auth/core/headers/createHeaderBuilderMiddleware'\nimport { parseJwtTokenPayload } from '@features/auth/core/utils/jwtTokenPayload'\nimport { UnauthorizedError } from '@features/auth/errors/UnauthorizedError'\nimport type { JwtToken } from '@features/publicApi/types/userTokenTypes'\nimport { isThisSecond } from 'date-fns'\n\nexport type JwtAuthHeaderBuilderMiddlewareProps = {\n\trefreshToken: (current: JwtToken) => Promise<JwtToken | null>\n\tgetCurrentToken: () => JwtToken | null\n\tgenerateNewToken?: () => Promise<JwtToken | null>\n\tonNewTokenIssued?: (token: JwtToken) => void\n}\n\nexport function JwtAuthHeaderBuilderMiddleware(props: JwtAuthHeaderBuilderMiddlewareProps) {\n\treturn createHeaderBuilderMiddleware(async (builder) => {\n\t\tconst token = props.getCurrentToken() ?? (await props.generateNewToken?.())\n\n\t\tif (!token) {\n\t\t\tthrow new UnauthorizedError()\n\t\t}\n\n\t\tconst { exp } = parseJwtTokenPayload(token.accessToken) ?? { exp: 0 }\n\t\tif (!isThisSecond(new Date(exp))) {\n\t\t\treturn builder.add('authorization', `Bearer ${token.accessToken}`)\n\t\t}\n\n\t\tconst newToken = await props.refreshToken(token)\n\n\t\tif (!newToken) {\n\t\t\tthrow new UnauthorizedError()\n\t\t}\n\n\t\tprops.onNewTokenIssued?.(newToken)\n\n\t\treturn builder.add('authorization', `Bearer ${newToken.accessToken}`)\n\t})\n}\n"],"names":["createHeaderBuilderMiddleware","UnauthorizedError","parseJwtTokenPayload","isThisSecond"],"mappings":";;;;;;AAaO,SAAS,+BAA+B,OAA4C;AACnF,SAAAA,8BAAAA,8BAA8B,OAAO,YAAY;;AACvD,UAAM,QAAQ,MAAM,gBAAsB,KAAA,QAAM,WAAM,qBAAN;AAEhD,QAAI,CAAC,OAAO;AACX,YAAM,IAAIC,kBAAAA,kBAAkB;AAAA,IAAA;AAGvB,UAAA,EAAE,IAAQ,IAAAC,qCAAqB,MAAM,WAAW,KAAK,EAAE,KAAK,EAAE;AACpE,QAAI,CAACC,QAAAA,aAAa,IAAI,KAAK,GAAG,CAAC,GAAG;AACjC,aAAO,QAAQ,IAAI,iBAAiB,UAAU,MAAM,WAAW,EAAE;AAAA,IAAA;AAGlE,UAAM,WAAW,MAAM,MAAM,aAAa,KAAK;AAE/C,QAAI,CAAC,UAAU;AACd,YAAM,IAAIF,kBAAAA,kBAAkB;AAAA,IAAA;AAG7B,gBAAM,qBAAN,+BAAyB;AAEzB,WAAO,QAAQ,IAAI,iBAAiB,UAAU,SAAS,WAAW,EAAE;AAAA,EAAA,CACpE;AACF;;"}
|
@@ -0,0 +1,27 @@
|
|
1
|
+
import { createHeaderBuilderMiddleware } from "./harmony17.mjs";
|
2
|
+
import { parseJwtTokenPayload } from "./harmony15.mjs";
|
3
|
+
import { UnauthorizedError } from "./harmony14.mjs";
|
4
|
+
import { isThisSecond } from "date-fns";
|
5
|
+
function JwtAuthHeaderBuilderMiddleware(props) {
|
6
|
+
return createHeaderBuilderMiddleware(async (builder) => {
|
7
|
+
var _a, _b;
|
8
|
+
const token = props.getCurrentToken() ?? await ((_a = props.generateNewToken) == null ? void 0 : _a.call(props));
|
9
|
+
if (!token) {
|
10
|
+
throw new UnauthorizedError();
|
11
|
+
}
|
12
|
+
const { exp } = parseJwtTokenPayload(token.accessToken) ?? { exp: 0 };
|
13
|
+
if (!isThisSecond(new Date(exp))) {
|
14
|
+
return builder.add("authorization", `Bearer ${token.accessToken}`);
|
15
|
+
}
|
16
|
+
const newToken = await props.refreshToken(token);
|
17
|
+
if (!newToken) {
|
18
|
+
throw new UnauthorizedError();
|
19
|
+
}
|
20
|
+
(_b = props.onNewTokenIssued) == null ? void 0 : _b.call(props, newToken);
|
21
|
+
return builder.add("authorization", `Bearer ${newToken.accessToken}`);
|
22
|
+
});
|
23
|
+
}
|
24
|
+
export {
|
25
|
+
JwtAuthHeaderBuilderMiddleware
|
26
|
+
};
|
27
|
+
//# sourceMappingURL=harmony12.mjs.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"harmony12.mjs","sources":["../src/features/auth/core/middleware/jwtAuthHeaderBuilderMiddleware.ts"],"sourcesContent":["import { createHeaderBuilderMiddleware } from '@features/auth/core/headers/createHeaderBuilderMiddleware'\nimport { parseJwtTokenPayload } from '@features/auth/core/utils/jwtTokenPayload'\nimport { UnauthorizedError } from '@features/auth/errors/UnauthorizedError'\nimport type { JwtToken } from '@features/publicApi/types/userTokenTypes'\nimport { isThisSecond } from 'date-fns'\n\nexport type JwtAuthHeaderBuilderMiddlewareProps = {\n\trefreshToken: (current: JwtToken) => Promise<JwtToken | null>\n\tgetCurrentToken: () => JwtToken | null\n\tgenerateNewToken?: () => Promise<JwtToken | null>\n\tonNewTokenIssued?: (token: JwtToken) => void\n}\n\nexport function JwtAuthHeaderBuilderMiddleware(props: JwtAuthHeaderBuilderMiddlewareProps) {\n\treturn createHeaderBuilderMiddleware(async (builder) => {\n\t\tconst token = props.getCurrentToken() ?? (await props.generateNewToken?.())\n\n\t\tif (!token) {\n\t\t\tthrow new UnauthorizedError()\n\t\t}\n\n\t\tconst { exp } = parseJwtTokenPayload(token.accessToken) ?? { exp: 0 }\n\t\tif (!isThisSecond(new Date(exp))) {\n\t\t\treturn builder.add('authorization', `Bearer ${token.accessToken}`)\n\t\t}\n\n\t\tconst newToken = await props.refreshToken(token)\n\n\t\tif (!newToken) {\n\t\t\tthrow new UnauthorizedError()\n\t\t}\n\n\t\tprops.onNewTokenIssued?.(newToken)\n\n\t\treturn builder.add('authorization', `Bearer ${newToken.accessToken}`)\n\t})\n}\n"],"names":[],"mappings":";;;;AAaO,SAAS,+BAA+B,OAA4C;AACnF,SAAA,8BAA8B,OAAO,YAAY;;AACvD,UAAM,QAAQ,MAAM,gBAAsB,KAAA,QAAM,WAAM,qBAAN;AAEhD,QAAI,CAAC,OAAO;AACX,YAAM,IAAI,kBAAkB;AAAA,IAAA;AAGvB,UAAA,EAAE,IAAQ,IAAA,qBAAqB,MAAM,WAAW,KAAK,EAAE,KAAK,EAAE;AACpE,QAAI,CAAC,aAAa,IAAI,KAAK,GAAG,CAAC,GAAG;AACjC,aAAO,QAAQ,IAAI,iBAAiB,UAAU,MAAM,WAAW,EAAE;AAAA,IAAA;AAGlE,UAAM,WAAW,MAAM,MAAM,aAAa,KAAK;AAE/C,QAAI,CAAC,UAAU;AACd,YAAM,IAAI,kBAAkB;AAAA,IAAA;AAG7B,gBAAM,qBAAN,+BAAyB;AAEzB,WAAO,QAAQ,IAAI,iBAAiB,UAAU,SAAS,WAAW,EAAE;AAAA,EAAA,CACpE;AACF;"}
|
@@ -0,0 +1,8 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
3
|
+
const createHeaderBuilderMiddleware = require("./harmony17.cjs");
|
4
|
+
const PublicApiHeaderBuilderMiddleware = createHeaderBuilderMiddleware.createHeaderBuilderMiddleware(
|
5
|
+
(builder) => builder.and({ "x-lokalise-plugin": "true" })
|
6
|
+
);
|
7
|
+
exports.PublicApiHeaderBuilderMiddleware = PublicApiHeaderBuilderMiddleware;
|
8
|
+
//# sourceMappingURL=harmony13.cjs.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"harmony13.cjs","sources":["../src/features/auth/core/middleware/publicApiHeaderBuilderMiddleware.ts"],"sourcesContent":["import { createHeaderBuilderMiddleware } from '@features/auth/core/headers/createHeaderBuilderMiddleware'\n\nexport const PublicApiHeaderBuilderMiddleware = createHeaderBuilderMiddleware((builder) =>\n\tbuilder.and({ 'x-lokalise-plugin': 'true' }),\n)\n"],"names":["createHeaderBuilderMiddleware"],"mappings":";;;AAEO,MAAM,mCAAmCA,8BAAA;AAAA,EAA8B,CAAC,YAC9E,QAAQ,IAAI,EAAE,qBAAqB,OAAQ,CAAA;AAC5C;;"}
|
@@ -0,0 +1,8 @@
|
|
1
|
+
import { createHeaderBuilderMiddleware } from "./harmony17.mjs";
|
2
|
+
const PublicApiHeaderBuilderMiddleware = createHeaderBuilderMiddleware(
|
3
|
+
(builder) => builder.and({ "x-lokalise-plugin": "true" })
|
4
|
+
);
|
5
|
+
export {
|
6
|
+
PublicApiHeaderBuilderMiddleware
|
7
|
+
};
|
8
|
+
//# sourceMappingURL=harmony13.mjs.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"harmony13.mjs","sources":["../src/features/auth/core/middleware/publicApiHeaderBuilderMiddleware.ts"],"sourcesContent":["import { createHeaderBuilderMiddleware } from '@features/auth/core/headers/createHeaderBuilderMiddleware'\n\nexport const PublicApiHeaderBuilderMiddleware = createHeaderBuilderMiddleware((builder) =>\n\tbuilder.and({ 'x-lokalise-plugin': 'true' }),\n)\n"],"names":[],"mappings":";AAEO,MAAM,mCAAmC;AAAA,EAA8B,CAAC,YAC9E,QAAQ,IAAI,EAAE,qBAAqB,OAAQ,CAAA;AAC5C;"}
|
@@ -0,0 +1,14 @@
|
|
1
|
+
"use strict";
|
2
|
+
var __defProp = Object.defineProperty;
|
3
|
+
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
4
|
+
var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
|
5
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
6
|
+
class UnauthorizedError extends Error {
|
7
|
+
constructor() {
|
8
|
+
super(...arguments);
|
9
|
+
__publicField(this, "name", "UnauthorizedError");
|
10
|
+
__publicField(this, "status", 401);
|
11
|
+
}
|
12
|
+
}
|
13
|
+
exports.UnauthorizedError = UnauthorizedError;
|
14
|
+
//# sourceMappingURL=harmony14.cjs.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"harmony14.cjs","sources":["../src/features/auth/errors/UnauthorizedError.ts"],"sourcesContent":["export class UnauthorizedError extends Error {\n\toverride readonly name = 'UnauthorizedError'\n\treadonly status = 401\n}\n"],"names":[],"mappings":";;;;;AAAO,MAAM,0BAA0B,MAAM;AAAA,EAAtC;AAAA;AACY,gCAAO;AAChB,kCAAS;AAAA;AACnB;;"}
|
@@ -0,0 +1,14 @@
|
|
1
|
+
var __defProp = Object.defineProperty;
|
2
|
+
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
3
|
+
var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
|
4
|
+
class UnauthorizedError extends Error {
|
5
|
+
constructor() {
|
6
|
+
super(...arguments);
|
7
|
+
__publicField(this, "name", "UnauthorizedError");
|
8
|
+
__publicField(this, "status", 401);
|
9
|
+
}
|
10
|
+
}
|
11
|
+
export {
|
12
|
+
UnauthorizedError
|
13
|
+
};
|
14
|
+
//# sourceMappingURL=harmony14.mjs.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"harmony14.mjs","sources":["../src/features/auth/errors/UnauthorizedError.ts"],"sourcesContent":["export class UnauthorizedError extends Error {\n\toverride readonly name = 'UnauthorizedError'\n\treadonly status = 401\n}\n"],"names":[],"mappings":";;;AAAO,MAAM,0BAA0B,MAAM;AAAA,EAAtC;AAAA;AACY,gCAAO;AAChB,kCAAS;AAAA;AACnB;"}
|
@@ -0,0 +1,14 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
3
|
+
const jwtTokenPayload = require("./harmony78.cjs");
|
4
|
+
function parseJwtTokenPayload(token) {
|
5
|
+
try {
|
6
|
+
const payload = token.split(".")[1];
|
7
|
+
const decoded = atob(payload);
|
8
|
+
return jwtTokenPayload.JWT_TOKEN_PAYLOAD_SCHEMA.parse(JSON.parse(decoded));
|
9
|
+
} catch (_error) {
|
10
|
+
return void 0;
|
11
|
+
}
|
12
|
+
}
|
13
|
+
exports.parseJwtTokenPayload = parseJwtTokenPayload;
|
14
|
+
//# sourceMappingURL=harmony15.cjs.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"harmony15.cjs","sources":["../src/features/auth/core/utils/jwtTokenPayload.ts"],"sourcesContent":["import { JWT_TOKEN_PAYLOAD_SCHEMA, type JwtTokenPayload } from '../types/jwtTokenPayload'\n\n/**\n * Parses the payload of a JWT token.\n *\n * @param token - The JWT token to parse.\n */\nexport function parseJwtTokenPayload(token: string): JwtTokenPayload | undefined {\n\ttry {\n\t\tconst payload = token.split('.')[1]\n\t\tconst decoded = atob(payload)\n\t\treturn JWT_TOKEN_PAYLOAD_SCHEMA.parse(JSON.parse(decoded))\n\t} catch (_error) {\n\t\treturn undefined\n\t}\n}\n"],"names":["JWT_TOKEN_PAYLOAD_SCHEMA"],"mappings":";;;AAOO,SAAS,qBAAqB,OAA4C;AAC5E,MAAA;AACH,UAAM,UAAU,MAAM,MAAM,GAAG,EAAE,CAAC;AAC5B,UAAA,UAAU,KAAK,OAAO;AAC5B,WAAOA,gBAAyB,yBAAA,MAAM,KAAK,MAAM,OAAO,CAAC;AAAA,WACjD,QAAQ;AACT,WAAA;AAAA,EAAA;AAET;;"}
|
@@ -0,0 +1,14 @@
|
|
1
|
+
import { JWT_TOKEN_PAYLOAD_SCHEMA } from "./harmony78.mjs";
|
2
|
+
function parseJwtTokenPayload(token) {
|
3
|
+
try {
|
4
|
+
const payload = token.split(".")[1];
|
5
|
+
const decoded = atob(payload);
|
6
|
+
return JWT_TOKEN_PAYLOAD_SCHEMA.parse(JSON.parse(decoded));
|
7
|
+
} catch (_error) {
|
8
|
+
return void 0;
|
9
|
+
}
|
10
|
+
}
|
11
|
+
export {
|
12
|
+
parseJwtTokenPayload
|
13
|
+
};
|
14
|
+
//# sourceMappingURL=harmony15.mjs.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"harmony15.mjs","sources":["../src/features/auth/core/utils/jwtTokenPayload.ts"],"sourcesContent":["import { JWT_TOKEN_PAYLOAD_SCHEMA, type JwtTokenPayload } from '../types/jwtTokenPayload'\n\n/**\n * Parses the payload of a JWT token.\n *\n * @param token - The JWT token to parse.\n */\nexport function parseJwtTokenPayload(token: string): JwtTokenPayload | undefined {\n\ttry {\n\t\tconst payload = token.split('.')[1]\n\t\tconst decoded = atob(payload)\n\t\treturn JWT_TOKEN_PAYLOAD_SCHEMA.parse(JSON.parse(decoded))\n\t} catch (_error) {\n\t\treturn undefined\n\t}\n}\n"],"names":[],"mappings":";AAOO,SAAS,qBAAqB,OAA4C;AAC5E,MAAA;AACH,UAAM,UAAU,MAAM,MAAM,GAAG,EAAE,CAAC;AAC5B,UAAA,UAAU,KAAK,OAAO;AAC5B,WAAO,yBAAyB,MAAM,KAAK,MAAM,OAAO,CAAC;AAAA,WACjD,QAAQ;AACT,WAAA;AAAA,EAAA;AAET;"}
|
@@ -0,0 +1,21 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
3
|
+
function getJwtTokenFromCookie() {
|
4
|
+
const accessToken = getCookie(document.cookie, "accessToken");
|
5
|
+
const refreshToken = getCookie(document.cookie, "refreshToken");
|
6
|
+
if (!accessToken || !refreshToken) {
|
7
|
+
return null;
|
8
|
+
}
|
9
|
+
return { accessToken, refreshToken };
|
10
|
+
}
|
11
|
+
function getCsrfTokenFromCookie() {
|
12
|
+
return getCookie(document.cookie, "csrf_token") ?? null;
|
13
|
+
}
|
14
|
+
function getCookie(cookies, name) {
|
15
|
+
var _a, _b;
|
16
|
+
return (_b = (_a = cookies.split(";").find((cookie) => cookie.trim().startsWith(`${name}=`))) == null ? void 0 : _a.trim()) == null ? void 0 : _b.substring(name.length + 1);
|
17
|
+
}
|
18
|
+
exports.getCookie = getCookie;
|
19
|
+
exports.getCsrfTokenFromCookie = getCsrfTokenFromCookie;
|
20
|
+
exports.getJwtTokenFromCookie = getJwtTokenFromCookie;
|
21
|
+
//# sourceMappingURL=harmony16.cjs.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"harmony16.cjs","sources":["../src/features/auth/frontend/utils/cookieTokenUtils.ts"],"sourcesContent":["import type { JwtToken } from '@features/publicApi/types/userTokenTypes'\n\nexport function getJwtTokenFromCookie(): JwtToken | null {\n\tconst accessToken = getCookie(document.cookie, 'accessToken')\n\tconst refreshToken = getCookie(document.cookie, 'refreshToken')\n\n\tif (!accessToken || !refreshToken) {\n\t\treturn null\n\t}\n\n\treturn { accessToken, refreshToken }\n}\n\nexport function getCsrfTokenFromCookie(): string | null {\n\treturn getCookie(document.cookie, 'csrf_token') ?? null\n}\n\nexport function getCookie(cookies: string, name: string): string | undefined {\n\treturn cookies\n\t\t.split(';')\n\t\t.find((cookie) => cookie.trim().startsWith(`${name}=`))\n\t\t?.trim()\n\t\t?.substring(name.length + 1)\n}\n"],"names":[],"mappings":";;AAEO,SAAS,wBAAyC;AACxD,QAAM,cAAc,UAAU,SAAS,QAAQ,aAAa;AAC5D,QAAM,eAAe,UAAU,SAAS,QAAQ,cAAc;AAE1D,MAAA,CAAC,eAAe,CAAC,cAAc;AAC3B,WAAA;AAAA,EAAA;AAGD,SAAA,EAAE,aAAa,aAAa;AACpC;AAEO,SAAS,yBAAwC;AACvD,SAAO,UAAU,SAAS,QAAQ,YAAY,KAAK;AACpD;AAEgB,SAAA,UAAU,SAAiB,MAAkC;;AACrE,UAAA,mBACL,MAAM,GAAG,EACT,KAAK,CAAC,WAAW,OAAO,OAAO,WAAW,GAAG,IAAI,GAAG,CAAC,MAFhD,mBAGJ,WAHI,mBAIJ,UAAU,KAAK,SAAS;AAC5B;;;;"}
|
@@ -0,0 +1,21 @@
|
|
1
|
+
function getJwtTokenFromCookie() {
|
2
|
+
const accessToken = getCookie(document.cookie, "accessToken");
|
3
|
+
const refreshToken = getCookie(document.cookie, "refreshToken");
|
4
|
+
if (!accessToken || !refreshToken) {
|
5
|
+
return null;
|
6
|
+
}
|
7
|
+
return { accessToken, refreshToken };
|
8
|
+
}
|
9
|
+
function getCsrfTokenFromCookie() {
|
10
|
+
return getCookie(document.cookie, "csrf_token") ?? null;
|
11
|
+
}
|
12
|
+
function getCookie(cookies, name) {
|
13
|
+
var _a, _b;
|
14
|
+
return (_b = (_a = cookies.split(";").find((cookie) => cookie.trim().startsWith(`${name}=`))) == null ? void 0 : _a.trim()) == null ? void 0 : _b.substring(name.length + 1);
|
15
|
+
}
|
16
|
+
export {
|
17
|
+
getCookie,
|
18
|
+
getCsrfTokenFromCookie,
|
19
|
+
getJwtTokenFromCookie
|
20
|
+
};
|
21
|
+
//# sourceMappingURL=harmony16.mjs.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"harmony16.mjs","sources":["../src/features/auth/frontend/utils/cookieTokenUtils.ts"],"sourcesContent":["import type { JwtToken } from '@features/publicApi/types/userTokenTypes'\n\nexport function getJwtTokenFromCookie(): JwtToken | null {\n\tconst accessToken = getCookie(document.cookie, 'accessToken')\n\tconst refreshToken = getCookie(document.cookie, 'refreshToken')\n\n\tif (!accessToken || !refreshToken) {\n\t\treturn null\n\t}\n\n\treturn { accessToken, refreshToken }\n}\n\nexport function getCsrfTokenFromCookie(): string | null {\n\treturn getCookie(document.cookie, 'csrf_token') ?? null\n}\n\nexport function getCookie(cookies: string, name: string): string | undefined {\n\treturn cookies\n\t\t.split(';')\n\t\t.find((cookie) => cookie.trim().startsWith(`${name}=`))\n\t\t?.trim()\n\t\t?.substring(name.length + 1)\n}\n"],"names":[],"mappings":"AAEO,SAAS,wBAAyC;AACxD,QAAM,cAAc,UAAU,SAAS,QAAQ,aAAa;AAC5D,QAAM,eAAe,UAAU,SAAS,QAAQ,cAAc;AAE1D,MAAA,CAAC,eAAe,CAAC,cAAc;AAC3B,WAAA;AAAA,EAAA;AAGD,SAAA,EAAE,aAAa,aAAa;AACpC;AAEO,SAAS,yBAAwC;AACvD,SAAO,UAAU,SAAS,QAAQ,YAAY,KAAK;AACpD;AAEgB,SAAA,UAAU,SAAiB,MAAkC;AAftE;AAgBC,UAAA,mBACL,MAAM,GAAG,EACT,KAAK,CAAC,WAAW,OAAO,OAAO,WAAW,GAAG,IAAI,GAAG,CAAC,MAFhD,mBAGJ,WAHI,mBAIJ,UAAU,KAAK,SAAS;AAC5B;"}
|
@@ -0,0 +1,19 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
3
|
+
const headerBuilder = require("./harmony18.cjs");
|
4
|
+
function createHeaderBuilderMiddleware(middleware) {
|
5
|
+
return new HeaderBuilderMiddleware(middleware);
|
6
|
+
}
|
7
|
+
class HeaderBuilderMiddleware {
|
8
|
+
constructor(middleware) {
|
9
|
+
this.middleware = middleware;
|
10
|
+
}
|
11
|
+
apply(base) {
|
12
|
+
return base.from(async () => {
|
13
|
+
const middlewareBuilder = this.middleware(headerBuilder.HeaderBuilder.create());
|
14
|
+
return middlewareBuilder instanceof Promise ? middlewareBuilder.then((r) => r.resolve()) : middlewareBuilder.resolve();
|
15
|
+
});
|
16
|
+
}
|
17
|
+
}
|
18
|
+
exports.createHeaderBuilderMiddleware = createHeaderBuilderMiddleware;
|
19
|
+
//# sourceMappingURL=harmony17.cjs.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"harmony17.cjs","sources":["../src/features/auth/core/headers/createHeaderBuilderMiddleware.ts"],"sourcesContent":["import { HeaderBuilder, type Headers } from '@features/auth/core/headers/headerBuilder'\n\n/**\n * A helper function that creates a HeaderBuilderMiddleware, it removed the\n * complexity of creating a new instance of the middleware class and tracking the input types.\n *\n * @param middleware - A function that modifies a HeaderBuilder\n * @returns - A new instance of HeaderBuilderMiddleware to be used with a HeaderBuilder\n */\nexport function createHeaderBuilderMiddleware<const H extends Headers>(\n\tmiddleware: (builder: HeaderBuilder) => HeaderBuilder<H> | Promise<HeaderBuilder<H>>,\n) {\n\treturn new HeaderBuilderMiddleware<H>(middleware)\n}\n\n// There is no need to have access to the implementation of the HeaderBuilderMiddleware class\n// all users should use the createHeaderBuilderMiddleware function to create a new instance,\n// but I have to export the type for reference outside the file\nexport type { HeaderBuilderMiddleware }\n\n/**\n * A middleware class that allows you to modify a HeaderBuilder in a type-safe way.\n * It receives a builder and returns a new builder with the modifications applied.\n *\n * @example\n * ```typescript\n * const authMiddleware = createHeaderBuilderMiddleware(async (builder) => {\n * const token = await fetchToken()\n * return builder.add('authorization', `Bearer ${token}`)\n * })\n *\n * const builder = HeaderBuilder.create()\n * .with(authMiddleware)\n *\n * const headers = await builder.resolve() // Type of headers is { 'authorization': string }\n * console.log(headers) // { 'authorization': 'Bearer <token>' }\n */\nclass HeaderBuilderMiddleware<const H extends Headers> {\n\tconstructor(\n\t\tprivate readonly middleware: (\n\t\t\tbuilder: HeaderBuilder<Headers>,\n\t\t) => HeaderBuilder<H> | Promise<HeaderBuilder<H>>,\n\t) {}\n\n\tapply<const BH extends Headers>(base: HeaderBuilder<BH>): HeaderBuilder<BH & H> {\n\t\t// Using the `from` method to make the promise lazy - it should only resolve when the builder is resolved\n\t\treturn base.from(async () => {\n\t\t\tconst middlewareBuilder = this.middleware(HeaderBuilder.create())\n\n\t\t\treturn middlewareBuilder instanceof Promise\n\t\t\t\t? middlewareBuilder.then((r) => r.resolve())\n\t\t\t\t: middlewareBuilder.resolve()\n\t\t})\n\t}\n}\n"],"names":["HeaderBuilder"],"mappings":";;;AASO,SAAS,8BACf,YACC;AACM,SAAA,IAAI,wBAA2B,UAAU;AACjD;AAwBA,MAAM,wBAAiD;AAAA,EACtD,YACkB,YAGhB;AAHgB,SAAA,aAAA;AAAA,EAAA;AAAA,EAKlB,MAAgC,MAAgD;AAExE,WAAA,KAAK,KAAK,YAAY;AAC5B,YAAM,oBAAoB,KAAK,WAAWA,cAAA,cAAc,QAAQ;AAEzD,aAAA,6BAA6B,UACjC,kBAAkB,KAAK,CAAC,MAAM,EAAE,QAAQ,CAAC,IACzC,kBAAkB,QAAQ;AAAA,IAAA,CAC7B;AAAA,EAAA;AAEH;;"}
|
@@ -0,0 +1,19 @@
|
|
1
|
+
import { HeaderBuilder } from "./harmony18.mjs";
|
2
|
+
function createHeaderBuilderMiddleware(middleware) {
|
3
|
+
return new HeaderBuilderMiddleware(middleware);
|
4
|
+
}
|
5
|
+
class HeaderBuilderMiddleware {
|
6
|
+
constructor(middleware) {
|
7
|
+
this.middleware = middleware;
|
8
|
+
}
|
9
|
+
apply(base) {
|
10
|
+
return base.from(async () => {
|
11
|
+
const middlewareBuilder = this.middleware(HeaderBuilder.create());
|
12
|
+
return middlewareBuilder instanceof Promise ? middlewareBuilder.then((r) => r.resolve()) : middlewareBuilder.resolve();
|
13
|
+
});
|
14
|
+
}
|
15
|
+
}
|
16
|
+
export {
|
17
|
+
createHeaderBuilderMiddleware
|
18
|
+
};
|
19
|
+
//# sourceMappingURL=harmony17.mjs.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"harmony17.mjs","sources":["../src/features/auth/core/headers/createHeaderBuilderMiddleware.ts"],"sourcesContent":["import { HeaderBuilder, type Headers } from '@features/auth/core/headers/headerBuilder'\n\n/**\n * A helper function that creates a HeaderBuilderMiddleware, it removed the\n * complexity of creating a new instance of the middleware class and tracking the input types.\n *\n * @param middleware - A function that modifies a HeaderBuilder\n * @returns - A new instance of HeaderBuilderMiddleware to be used with a HeaderBuilder\n */\nexport function createHeaderBuilderMiddleware<const H extends Headers>(\n\tmiddleware: (builder: HeaderBuilder) => HeaderBuilder<H> | Promise<HeaderBuilder<H>>,\n) {\n\treturn new HeaderBuilderMiddleware<H>(middleware)\n}\n\n// There is no need to have access to the implementation of the HeaderBuilderMiddleware class\n// all users should use the createHeaderBuilderMiddleware function to create a new instance,\n// but I have to export the type for reference outside the file\nexport type { HeaderBuilderMiddleware }\n\n/**\n * A middleware class that allows you to modify a HeaderBuilder in a type-safe way.\n * It receives a builder and returns a new builder with the modifications applied.\n *\n * @example\n * ```typescript\n * const authMiddleware = createHeaderBuilderMiddleware(async (builder) => {\n * const token = await fetchToken()\n * return builder.add('authorization', `Bearer ${token}`)\n * })\n *\n * const builder = HeaderBuilder.create()\n * .with(authMiddleware)\n *\n * const headers = await builder.resolve() // Type of headers is { 'authorization': string }\n * console.log(headers) // { 'authorization': 'Bearer <token>' }\n */\nclass HeaderBuilderMiddleware<const H extends Headers> {\n\tconstructor(\n\t\tprivate readonly middleware: (\n\t\t\tbuilder: HeaderBuilder<Headers>,\n\t\t) => HeaderBuilder<H> | Promise<HeaderBuilder<H>>,\n\t) {}\n\n\tapply<const BH extends Headers>(base: HeaderBuilder<BH>): HeaderBuilder<BH & H> {\n\t\t// Using the `from` method to make the promise lazy - it should only resolve when the builder is resolved\n\t\treturn base.from(async () => {\n\t\t\tconst middlewareBuilder = this.middleware(HeaderBuilder.create())\n\n\t\t\treturn middlewareBuilder instanceof Promise\n\t\t\t\t? middlewareBuilder.then((r) => r.resolve())\n\t\t\t\t: middlewareBuilder.resolve()\n\t\t})\n\t}\n}\n"],"names":[],"mappings":";AASO,SAAS,8BACf,YACC;AACM,SAAA,IAAI,wBAA2B,UAAU;AACjD;AAwBA,MAAM,wBAAiD;AAAA,EACtD,YACkB,YAGhB;AAHgB,SAAA,aAAA;AAAA,EAAA;AAAA,EAKlB,MAAgC,MAAgD;AAExE,WAAA,KAAK,KAAK,YAAY;AAC5B,YAAM,oBAAoB,KAAK,WAAW,cAAc,QAAQ;AAEzD,aAAA,6BAA6B,UACjC,kBAAkB,KAAK,CAAC,MAAM,EAAE,QAAQ,CAAC,IACzC,kBAAkB,QAAQ;AAAA,IAAA,CAC7B;AAAA,EAAA;AAEH;"}
|
@@ -0,0 +1,145 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
3
|
+
class HeaderBuilder {
|
4
|
+
/**
|
5
|
+
* This constructor is private to prevent the creation of a HeaderBuilder, it's an implementation detail
|
6
|
+
* that users of this class should not be aware of. The only way to create a HeaderBuilder is through the
|
7
|
+
* static create method.
|
8
|
+
*
|
9
|
+
* @private
|
10
|
+
*/
|
11
|
+
constructor(factories) {
|
12
|
+
this.factories = factories;
|
13
|
+
}
|
14
|
+
static create(initialHeaders = {}) {
|
15
|
+
return new HeaderBuilder([() => initialHeaders]);
|
16
|
+
}
|
17
|
+
/**
|
18
|
+
* Adds a single header to the builder by providing a key and a value.
|
19
|
+
*
|
20
|
+
* @example
|
21
|
+
* ```typescript
|
22
|
+
* const builder = HeaderBuilder.create()
|
23
|
+
* .add('Content-Type', 'application/json')
|
24
|
+
* .add('authorization', 'Bearer token')
|
25
|
+
*
|
26
|
+
* const headers = await builder.resolve()
|
27
|
+
* console.log(headers)
|
28
|
+
* // { 'Content-Type': 'application/json', 'authorization': 'Bearer token' }
|
29
|
+
* ```
|
30
|
+
*
|
31
|
+
* @param key - The key of the header
|
32
|
+
* @param value - The value of the header
|
33
|
+
*/
|
34
|
+
add(key, value) {
|
35
|
+
return new HeaderBuilder([...this.factories, () => ({ [key]: value })]);
|
36
|
+
}
|
37
|
+
/**
|
38
|
+
* Adds multiple headers to the builder by providing an object or a promise of an object with the headers.
|
39
|
+
*
|
40
|
+
* @example
|
41
|
+
* ```typescript
|
42
|
+
* const builder = HeaderBuilder.create()
|
43
|
+
* .and({ 'Content-Type': 'application/json', 'authorization': 'Bearer token' })
|
44
|
+
* .and(Promise.resolve({ 'X-Custom-Header': 'custom', 'X-Another-Header': 'another' }))
|
45
|
+
*
|
46
|
+
* const headers = await builder.resolve()
|
47
|
+
* console.log(headers)
|
48
|
+
* // Prints: {
|
49
|
+
* // 'Content-Type': 'application/json',
|
50
|
+
* // 'authorization': 'Bearer token',
|
51
|
+
* // 'X-Custom-Header': 'custom',
|
52
|
+
* // 'X-Another-Header': 'another'
|
53
|
+
* // }
|
54
|
+
* ```
|
55
|
+
*
|
56
|
+
* @param extension - An object with the headers to add
|
57
|
+
*/
|
58
|
+
and(extension) {
|
59
|
+
return new HeaderBuilder([...this.factories, () => extension]);
|
60
|
+
}
|
61
|
+
/**
|
62
|
+
* Adds a factory function that returns a promise of headers to the builder.
|
63
|
+
* This is useful when you need to fetch some data asynchronously to build the headers.
|
64
|
+
*
|
65
|
+
* @example
|
66
|
+
* ```typescript
|
67
|
+
* const builder = HeaderBuilder.create()
|
68
|
+
* .from(async () => {
|
69
|
+
* const token = await fetchToken()
|
70
|
+
* return { 'authorization': `Bearer ${token}` }
|
71
|
+
* })
|
72
|
+
*
|
73
|
+
* const headers = await builder.resolve()
|
74
|
+
* console.log(headers) // { 'authorization': 'Bearer <token>' }
|
75
|
+
* ```
|
76
|
+
*
|
77
|
+
* @param factory - A function that returns a promise of headers
|
78
|
+
*/
|
79
|
+
from(factory) {
|
80
|
+
return new HeaderBuilder([...this.factories, factory]);
|
81
|
+
}
|
82
|
+
/**
|
83
|
+
* Takes a middleware function that receives the current builder and returns a new, modified, builder.
|
84
|
+
*
|
85
|
+
* @example
|
86
|
+
* ```typescript
|
87
|
+
* const authMiddleware = createHeaderBuilderMiddleware(async (builder) => {
|
88
|
+
* const token = await fetchToken()
|
89
|
+
* return builder.add('authorization', `Bearer ${token}`)
|
90
|
+
* })
|
91
|
+
*
|
92
|
+
* const builder = HeaderBuilder.create()
|
93
|
+
* .with(authMiddleware)
|
94
|
+
*
|
95
|
+
* const headers = await builder.resolve() // Type of headers is { 'authorization': string }
|
96
|
+
* console.log(headers) // { 'authorization': 'Bearer <token>' }
|
97
|
+
* ```
|
98
|
+
*
|
99
|
+
* @param middleware
|
100
|
+
*/
|
101
|
+
with(middleware) {
|
102
|
+
return middleware.apply(this);
|
103
|
+
}
|
104
|
+
/**
|
105
|
+
* Merges the current builder with another builder.
|
106
|
+
*
|
107
|
+
* @example
|
108
|
+
* ```typescript
|
109
|
+
* const builderA = HeaderBuilder.create()
|
110
|
+
* .add('Content-Type', 'application/json')
|
111
|
+
*
|
112
|
+
* const builderB = HeaderBuilder.create()
|
113
|
+
* .add('authorization', 'Bearer token')
|
114
|
+
*
|
115
|
+
* const mergedBuilder = builderA.merge(builderB)
|
116
|
+
*
|
117
|
+
* const headers = await mergedBuilder.resolve()
|
118
|
+
* console.log(headers)
|
119
|
+
* // { 'Content-Type': 'application/json', 'authorization': 'Bearer token' }
|
120
|
+
* ```
|
121
|
+
*
|
122
|
+
* @param builder - The builder to merge with
|
123
|
+
*/
|
124
|
+
merge(builder) {
|
125
|
+
return new HeaderBuilder([...this.factories, ...builder.factories]);
|
126
|
+
}
|
127
|
+
/**
|
128
|
+
* Resolves the headers by waiting for all the promises to resolve and merging them together.
|
129
|
+
*
|
130
|
+
* @example
|
131
|
+
* ```typescript
|
132
|
+
* const builder = HeaderBuilder.create()
|
133
|
+
* .add('Content-Type', 'application/json')
|
134
|
+
*
|
135
|
+
* const headers = await builder.resolve()
|
136
|
+
* console.log(headers) // { 'Content-Type': 'application/json' }
|
137
|
+
*/
|
138
|
+
async resolve() {
|
139
|
+
const headers = this.factories.map((header) => header());
|
140
|
+
const resolvedHeaders = await Promise.all(headers);
|
141
|
+
return Object.assign({}, ...resolvedHeaders);
|
142
|
+
}
|
143
|
+
}
|
144
|
+
exports.HeaderBuilder = HeaderBuilder;
|
145
|
+
//# sourceMappingURL=harmony18.cjs.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"harmony18.cjs","sources":["../src/features/auth/core/headers/headerBuilder.ts"],"sourcesContent":["import type { HeaderBuilderMiddleware } from '@features/auth/core/headers/createHeaderBuilderMiddleware'\n\nexport type Headers<K extends string = string, V extends string = string> = Record<K, V>\n\n// biome-ignore lint/complexity/noBannedTypes: To represent no headers we need use an empty object\ntype NoHeaders = {}\n\n/**\n * A builder class that helps to build up a set of headers in a type-safe way.\n * It allows you to add headers, merge them together, and resolve them into a single object.\n * The builder is immutable, so every operation returns a new instance of the builder.\n * It offers a middleware function that allows you to modify the builder, asynchronously, in a type-safe way.\n *\n * @example\n * ```typescript\n * const authMiddleware = createHeaderBuilderMiddleware(async (builder) => {\n * const token = await fetchToken()\n * return builder.add('authorization', `Bearer ${token}`)\n * })\n *\n * const builder = HeaderBuilder.create()\n * .add('Content-Type', 'application/json')\n * .and({ 'X-Custom-Header': 'custom', 'X-Another-Header': 'another' })\n * .with(authMiddleware)\n *\n * const headers = await builder.resolve()\n * console.log(headers)\n * // Prints: {\n * // 'Content-Type': 'application/json',\n * // 'X-Custom-Header': 'custom',\n * // 'X-Another-Header': 'another',\n * // 'authorization': 'Bearer <token>'\n * // }\n */\nexport class HeaderBuilder<H extends Headers = NoHeaders> {\n\t/**\n\t * Creates a new HeaderBuilder, optionally with an initial set of headers.\n\t *\n\t * @example\n\t * ```typescript\n\t * const builder = HeaderBuilder.create()\n\t *\n\t * const builderWithHeaders = HeaderBuilder.create({ 'Content-Type': 'application/json' })\n\t *\n\t * console.log(builder) // {}\n\t * console.log(builderWithHeaders) // { 'Content-Type': 'application/json' }\n\t * ```\n\t */\n\t// biome-ignore lint/complexity/noBannedTypes: If headers are not provided the initial type is an empty object\n\tstatic create<const H extends Headers = {}>(): HeaderBuilder<H>\n\tstatic create<const H extends Headers>(initialHeaders: H): HeaderBuilder<H>\n\tstatic create<const H extends Headers>(initialHeaders = {} as H): HeaderBuilder<H> {\n\t\treturn new HeaderBuilder([() => initialHeaders])\n\t}\n\n\t/**\n\t * This constructor is private to prevent the creation of a HeaderBuilder, it's an implementation detail\n\t * that users of this class should not be aware of. The only way to create a HeaderBuilder is through the\n\t * static create method.\n\t *\n\t * @private\n\t */\n\tprivate constructor(\n\t\t// This is a list of headers that will be put together in the resolve method.\n\t\t// You can think of this as building up a history of added headers that will be\n\t\t// merged together when they are needed.\n\t\tprivate readonly factories: (() => Promise<Headers> | Headers)[],\n\t) {}\n\n\t/**\n\t * Adds a single header to the builder by providing a key and a value.\n\t *\n\t * @example\n\t * ```typescript\n\t * const builder = HeaderBuilder.create()\n\t * .add('Content-Type', 'application/json')\n\t * .add('authorization', 'Bearer token')\n\t *\n\t * const headers = await builder.resolve()\n\t * console.log(headers)\n\t * // { 'Content-Type': 'application/json', 'authorization': 'Bearer token' }\n\t * ```\n\t *\n\t * @param key - The key of the header\n\t * @param value - The value of the header\n\t */\n\tadd<const K extends string, const V>(key: K, value: V): HeaderBuilder<H & { [k in K]: V }> {\n\t\treturn new HeaderBuilder([...this.factories, () => ({ [key]: value }) as Headers])\n\t}\n\n\t/**\n\t * Adds multiple headers to the builder by providing an object or a promise of an object with the headers.\n\t *\n\t * @example\n\t * ```typescript\n\t * const builder = HeaderBuilder.create()\n\t * .and({ 'Content-Type': 'application/json', 'authorization': 'Bearer token' })\n\t * .and(Promise.resolve({ 'X-Custom-Header': 'custom', 'X-Another-Header': 'another' }))\n\t *\n\t * const headers = await builder.resolve()\n\t * console.log(headers)\n\t * // Prints: {\n\t * // 'Content-Type': 'application/json',\n\t * // 'authorization': 'Bearer token',\n\t * // 'X-Custom-Header': 'custom',\n\t * // 'X-Another-Header': 'another'\n\t * // }\n\t * ```\n\t *\n\t * @param extension - An object with the headers to add\n\t */\n\tand<const K extends string, const V extends string, E extends Headers<K, V>>(\n\t\textension: E | Promise<E>,\n\t): HeaderBuilder<H & E> {\n\t\treturn new HeaderBuilder([...this.factories, () => extension])\n\t}\n\n\t/**\n\t * Adds a factory function that returns a promise of headers to the builder.\n\t * This is useful when you need to fetch some data asynchronously to build the headers.\n\t *\n\t * @example\n\t * ```typescript\n\t * const builder = HeaderBuilder.create()\n\t * .from(async () => {\n\t * const token = await fetchToken()\n\t * return { 'authorization': `Bearer ${token}` }\n\t * })\n\t *\n\t * const headers = await builder.resolve()\n\t * console.log(headers) // { 'authorization': 'Bearer <token>' }\n\t * ```\n\t *\n\t * @param factory - A function that returns a promise of headers\n\t */\n\tfrom<E extends Headers>(factory: () => E | Promise<E>): HeaderBuilder<H & E> {\n\t\treturn new HeaderBuilder([...this.factories, factory])\n\t}\n\n\t/**\n\t * Takes a middleware function that receives the current builder and returns a new, modified, builder.\n\t *\n\t * @example\n\t * ```typescript\n\t * const authMiddleware = createHeaderBuilderMiddleware(async (builder) => {\n\t * const token = await fetchToken()\n\t * return builder.add('authorization', `Bearer ${token}`)\n\t * })\n\t *\n\t * const builder = HeaderBuilder.create()\n\t * .with(authMiddleware)\n\t *\n\t * const headers = await builder.resolve() // Type of headers is { 'authorization': string }\n\t * console.log(headers) // { 'authorization': 'Bearer <token>' }\n\t * ```\n\t *\n\t * @param middleware\n\t */\n\twith<const T extends Headers>(middleware: HeaderBuilderMiddleware<T>) {\n\t\treturn middleware.apply(this)\n\t}\n\n\t/**\n\t * Merges the current builder with another builder.\n\t *\n\t * @example\n\t * ```typescript\n\t * const builderA = HeaderBuilder.create()\n\t * .add('Content-Type', 'application/json')\n\t *\n\t * const builderB = HeaderBuilder.create()\n\t * .add('authorization', 'Bearer token')\n\t *\n\t * const mergedBuilder = builderA.merge(builderB)\n\t *\n\t * const headers = await mergedBuilder.resolve()\n\t * console.log(headers)\n\t * // { 'Content-Type': 'application/json', 'authorization': 'Bearer token' }\n\t * ```\n\t *\n\t * @param builder - The builder to merge with\n\t */\n\tmerge<const T extends Headers>(builder: HeaderBuilder<T>): HeaderBuilder<H & T> {\n\t\treturn new HeaderBuilder([...this.factories, ...builder.factories])\n\t}\n\n\t/**\n\t * Resolves the headers by waiting for all the promises to resolve and merging them together.\n\t *\n\t * @example\n\t * ```typescript\n\t * const builder = HeaderBuilder.create()\n\t * .add('Content-Type', 'application/json')\n\t *\n\t * const headers = await builder.resolve()\n\t * console.log(headers) // { 'Content-Type': 'application/json' }\n\t */\n\tasync resolve(): Promise<H> {\n\t\tconst headers = this.factories.map((header) => header())\n\t\tconst resolvedHeaders = await Promise.all(headers)\n\n\t\treturn Object.assign({}, ...resolvedHeaders)\n\t}\n}\n"],"names":[],"mappings":";;AAkCO,MAAM,cAA6C;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EA4BjD,YAIU,WAChB;AADgB,SAAA,YAAA;AAAA,EAAA;AAAA,EAflB,OAAO,OAAgC,iBAAiB,IAA2B;AAClF,WAAO,IAAI,cAAc,CAAC,MAAM,cAAc,CAAC;AAAA,EAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAkChD,IAAqC,KAAQ,OAA8C;AAC1F,WAAO,IAAI,cAAc,CAAC,GAAG,KAAK,WAAW,OAAO,EAAE,CAAC,GAAG,GAAG,QAAmB,CAAC;AAAA,EAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAwBlF,IACC,WACuB;AAChB,WAAA,IAAI,cAAc,CAAC,GAAG,KAAK,WAAW,MAAM,SAAS,CAAC;AAAA,EAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAqB9D,KAAwB,SAAqD;AAC5E,WAAO,IAAI,cAAc,CAAC,GAAG,KAAK,WAAW,OAAO,CAAC;AAAA,EAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAsBtD,KAA8B,YAAwC;AAC9D,WAAA,WAAW,MAAM,IAAI;AAAA,EAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAuB7B,MAA+B,SAAiD;AACxE,WAAA,IAAI,cAAc,CAAC,GAAG,KAAK,WAAW,GAAG,QAAQ,SAAS,CAAC;AAAA,EAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAcnE,MAAM,UAAsB;AAC3B,UAAM,UAAU,KAAK,UAAU,IAAI,CAAC,WAAW,QAAQ;AACvD,UAAM,kBAAkB,MAAM,QAAQ,IAAI,OAAO;AAEjD,WAAO,OAAO,OAAO,CAAC,GAAG,GAAG,eAAe;AAAA,EAAA;AAE7C;;"}
|