@anoki/fse-ui 1.0.765 → 1.0.768
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/components/ui/Button/Button.css +1 -1
- package/dist/index.cjs10.js +1 -1
- package/dist/index.cjs103.js +1 -1
- package/dist/index.cjs104.js +1 -1
- package/dist/index.cjs105.js +1 -1
- package/dist/index.cjs106.js +1 -1
- package/dist/index.cjs107.js +1 -1
- package/dist/index.cjs11.js +1 -1
- package/dist/index.cjs110.js +1 -1
- package/dist/index.cjs115.js +1 -1
- package/dist/index.cjs117.js +1 -1
- package/dist/index.cjs118.js +1 -1
- package/dist/index.cjs119.js +1 -1
- package/dist/index.cjs12.js +1 -1
- package/dist/index.cjs120.js +1 -1
- package/dist/index.cjs121.js +1 -1
- package/dist/index.cjs123.js +1 -1
- package/dist/index.cjs124.js +1 -1
- package/dist/index.cjs125.js +1 -1
- package/dist/index.cjs126.js +1 -1
- package/dist/index.cjs127.js +1 -1
- package/dist/index.cjs13.js +1 -1
- package/dist/index.cjs130.js +1 -1
- package/dist/index.cjs132.js +1 -1
- package/dist/index.cjs134.js +1 -1
- package/dist/index.cjs135.js +1 -1
- package/dist/index.cjs136.js +1 -1
- package/dist/index.cjs137.js +1 -1
- package/dist/index.cjs138.js +1 -1
- package/dist/index.cjs139.js +1 -1
- package/dist/index.cjs14.js +1 -1
- package/dist/index.cjs140.js +1 -1
- package/dist/index.cjs141.js +1 -1
- package/dist/index.cjs142.js +1 -1
- package/dist/index.cjs143.js +1 -1
- package/dist/index.cjs144.js +1 -1
- package/dist/index.cjs145.js +1 -1
- package/dist/index.cjs146.js +1 -1
- package/dist/index.cjs147.js +1 -1
- package/dist/index.cjs148.js +1 -1
- package/dist/index.cjs149.js +1 -1
- package/dist/index.cjs15.js +1 -1
- package/dist/index.cjs150.js +1 -1
- package/dist/index.cjs151.js +1 -1
- package/dist/index.cjs152.js +1 -1
- package/dist/index.cjs153.js +1 -1
- package/dist/index.cjs154.js +1 -1
- package/dist/index.cjs155.js +1 -1
- package/dist/index.cjs156.js +1 -1
- package/dist/index.cjs157.js +1 -1
- package/dist/index.cjs158.js +1 -1
- package/dist/index.cjs159.js +1 -1
- package/dist/index.cjs16.js +1 -1
- package/dist/index.cjs160.js +1 -1
- package/dist/index.cjs161.js +1 -1
- package/dist/index.cjs162.js +1 -1
- package/dist/index.cjs164.js +1 -1
- package/dist/index.cjs165.js +1 -1
- package/dist/index.cjs166.js +1 -1
- package/dist/index.cjs167.js +1 -1
- package/dist/index.cjs168.js +1 -1
- package/dist/index.cjs169.js +1 -1
- package/dist/index.cjs17.js +1 -1
- package/dist/index.cjs170.js +1 -1
- package/dist/index.cjs171.js +1 -1
- package/dist/index.cjs172.js +1 -1
- package/dist/index.cjs173.js +1 -1
- package/dist/index.cjs173.js.map +1 -1
- package/dist/index.cjs174.js +1 -1
- package/dist/index.cjs175.js +1 -1
- package/dist/index.cjs176.js +1 -1
- package/dist/index.cjs177.js +1 -1
- package/dist/index.cjs178.js +1 -1
- package/dist/index.cjs179.js +1 -1
- package/dist/index.cjs18.js +1 -1
- package/dist/index.cjs180.js +1 -1
- package/dist/index.cjs182.js +1 -1
- package/dist/index.cjs183.js +1 -1
- package/dist/index.cjs184.js +1 -1
- package/dist/index.cjs185.js +1 -1
- package/dist/index.cjs186.js +1 -1
- package/dist/index.cjs187.js +1 -1
- package/dist/index.cjs188.js +1 -1
- package/dist/index.cjs189.js +1 -1
- package/dist/index.cjs19.js +1 -1
- package/dist/index.cjs195.js +1 -1
- package/dist/index.cjs197.js +1 -1
- package/dist/index.cjs197.js.map +1 -1
- package/dist/index.cjs198.js +1 -1
- package/dist/index.cjs198.js.map +1 -1
- package/dist/index.cjs20.js +1 -1
- package/dist/index.cjs202.js +1 -1
- package/dist/index.cjs202.js.map +1 -1
- package/dist/index.cjs21.js +1 -1
- package/dist/index.cjs211.js +1 -1
- package/dist/index.cjs211.js.map +1 -1
- package/dist/index.cjs215.js +1 -1
- package/dist/index.cjs215.js.map +1 -1
- package/dist/index.cjs218.js +1 -1
- package/dist/index.cjs218.js.map +1 -1
- package/dist/index.cjs220.js +2 -0
- package/dist/index.cjs220.js.map +1 -0
- package/dist/index.cjs227.js +2 -0
- package/dist/index.cjs227.js.map +1 -0
- package/dist/index.cjs228.js +6 -1
- package/dist/index.cjs228.js.map +1 -1
- package/dist/index.cjs23.js +1 -1
- package/dist/index.cjs231.js +2 -0
- package/dist/index.cjs231.js.map +1 -0
- package/dist/index.cjs24.js +1 -1
- package/dist/index.cjs241.js +1 -1
- package/dist/index.cjs245.js +1 -1
- package/dist/index.cjs249.js +1 -1
- package/dist/index.cjs252.js +1 -1
- package/dist/index.cjs253.js +1 -1
- package/dist/index.cjs254.js +1 -1
- package/dist/index.cjs26.js +1 -1
- package/dist/index.cjs26.js.map +1 -1
- package/dist/index.cjs260.js +1 -1
- package/dist/index.cjs27.js +1 -1
- package/dist/index.cjs270.js +1 -1
- package/dist/index.cjs274.js +1 -1
- package/dist/index.cjs276.js +1 -1
- package/dist/index.cjs284.js +1 -1
- package/dist/index.cjs287.js +1 -1
- package/dist/index.cjs293.js +1 -1
- package/dist/index.cjs298.js +1 -1
- package/dist/index.cjs30.js +1 -1
- package/dist/index.cjs301.js +1 -1
- package/dist/index.cjs302.js +1 -1
- package/dist/index.cjs303.js +1 -1
- package/dist/index.cjs31.js +1 -1
- package/dist/index.cjs32.js +1 -1
- package/dist/index.cjs33.js +1 -1
- package/dist/index.cjs34.js +1 -1
- package/dist/index.cjs342.js +1 -1
- package/dist/index.cjs35.js +1 -1
- package/dist/index.cjs350.js +1 -1
- package/dist/index.cjs36.js +1 -1
- package/dist/index.cjs361.js +1 -1
- package/dist/index.cjs363.js +1 -1
- package/dist/index.cjs382.js +1 -1
- package/dist/index.cjs385.js +1 -1
- package/dist/index.cjs389.js +1 -1
- package/dist/index.cjs390.js +12 -3
- package/dist/index.cjs390.js.map +1 -1
- package/dist/index.cjs391.js +1 -1
- package/dist/index.cjs391.js.map +1 -1
- package/dist/index.cjs392.js +2 -1
- package/dist/index.cjs392.js.map +1 -1
- package/dist/index.cjs393.js +27 -1
- package/dist/index.cjs393.js.map +1 -1
- package/dist/index.cjs394.js +1 -1
- package/dist/index.cjs394.js.map +1 -1
- package/dist/index.cjs395.js +1 -1
- package/dist/index.cjs395.js.map +1 -1
- package/dist/index.cjs396.js +1 -1
- package/dist/index.cjs396.js.map +1 -1
- package/dist/index.cjs397.js +1 -1
- package/dist/index.cjs397.js.map +1 -1
- package/dist/index.cjs399.js +1 -1
- package/dist/index.cjs399.js.map +1 -1
- package/dist/index.cjs40.js +1 -1
- package/dist/index.cjs400.js +1 -1
- package/dist/index.cjs400.js.map +1 -1
- package/dist/index.cjs401.js +1 -1
- package/dist/index.cjs401.js.map +1 -1
- package/dist/index.cjs402.js +2 -0
- package/dist/index.cjs402.js.map +1 -0
- package/dist/index.cjs403.js +1 -1
- package/dist/index.cjs403.js.map +1 -1
- package/dist/index.cjs404.js +1 -1
- package/dist/index.cjs404.js.map +1 -1
- package/dist/index.cjs405.js +1 -1
- package/dist/index.cjs405.js.map +1 -1
- package/dist/index.cjs406.js +1 -27
- package/dist/index.cjs406.js.map +1 -1
- package/dist/index.cjs407.js +1 -1
- package/dist/index.cjs407.js.map +1 -1
- package/dist/index.cjs408.js +1 -1
- package/dist/index.cjs408.js.map +1 -1
- package/dist/index.cjs409.js +1 -2
- package/dist/index.cjs409.js.map +1 -1
- package/dist/index.cjs41.js +1 -1
- package/dist/index.cjs410.js +1 -1
- package/dist/index.cjs410.js.map +1 -1
- package/dist/index.cjs411.js +2 -0
- package/dist/index.cjs411.js.map +1 -0
- package/dist/index.cjs412.js +2 -0
- package/dist/index.cjs412.js.map +1 -0
- package/dist/index.cjs413.js +1 -1
- package/dist/index.cjs413.js.map +1 -1
- package/dist/index.cjs414.js +1 -1
- package/dist/index.cjs414.js.map +1 -1
- package/dist/index.cjs415.js +2 -0
- package/dist/index.cjs415.js.map +1 -0
- package/dist/index.cjs416.js +2 -0
- package/dist/index.cjs416.js.map +1 -0
- package/dist/index.cjs417.js +1 -1
- package/dist/index.cjs417.js.map +1 -1
- package/dist/index.cjs418.js +1 -1
- package/dist/index.cjs418.js.map +1 -1
- package/dist/index.cjs419.js +1 -1
- package/dist/index.cjs419.js.map +1 -1
- package/dist/index.cjs42.js +1 -1
- package/dist/index.cjs420.js +1 -1
- package/dist/index.cjs420.js.map +1 -1
- package/dist/index.cjs421.js +1 -1
- package/dist/index.cjs421.js.map +1 -1
- package/dist/index.cjs422.js +1 -1
- package/dist/index.cjs422.js.map +1 -1
- package/dist/index.cjs423.js +1 -1
- package/dist/index.cjs423.js.map +1 -1
- package/dist/index.cjs424.js +1 -1
- package/dist/index.cjs424.js.map +1 -1
- package/dist/index.cjs425.js +1 -1
- package/dist/index.cjs425.js.map +1 -1
- package/dist/index.cjs426.js +1 -1
- package/dist/index.cjs426.js.map +1 -1
- package/dist/index.cjs427.js +2 -0
- package/dist/index.cjs427.js.map +1 -0
- package/dist/index.cjs428.js +1 -1
- package/dist/index.cjs428.js.map +1 -1
- package/dist/index.cjs429.js +2 -0
- package/dist/{index.cjs449.js.map → index.cjs429.js.map} +1 -1
- package/dist/{index.cjs450.js → index.cjs430.js} +2 -2
- package/dist/{index.cjs450.js.map → index.cjs430.js.map} +1 -1
- package/dist/index.cjs431.js +5 -0
- package/dist/index.cjs431.js.map +1 -0
- package/dist/{index.cjs452.js → index.cjs432.js} +2 -2
- package/dist/{index.cjs452.js.map → index.cjs432.js.map} +1 -1
- package/dist/{index.cjs453.js → index.cjs433.js} +2 -2
- package/dist/{index.cjs453.js.map → index.cjs433.js.map} +1 -1
- package/dist/{index.cjs454.js → index.cjs434.js} +1 -1
- package/dist/{index.cjs454.js.map → index.cjs434.js.map} +1 -1
- package/dist/index.cjs435.js +1 -1
- package/dist/index.cjs435.js.map +1 -1
- package/dist/index.cjs436.js +38 -1
- package/dist/index.cjs436.js.map +1 -1
- package/dist/index.cjs437.js +1 -1
- package/dist/index.cjs437.js.map +1 -1
- package/dist/{index.cjs458.js → index.cjs438.js} +1 -1
- package/dist/{index.cjs458.js.map → index.cjs438.js.map} +1 -1
- package/dist/{index.cjs459.js → index.cjs439.js} +1 -1
- package/dist/{index.cjs459.js.map → index.cjs439.js.map} +1 -1
- package/dist/index.cjs44.js +1 -1
- package/dist/{index.cjs460.js → index.cjs440.js} +2 -2
- package/dist/{index.cjs460.js.map → index.cjs440.js.map} +1 -1
- package/dist/index.cjs441.js +1 -1
- package/dist/index.cjs441.js.map +1 -1
- package/dist/index.cjs442.js +1 -1
- package/dist/index.cjs442.js.map +1 -1
- package/dist/index.cjs443.js +1 -1
- package/dist/index.cjs443.js.map +1 -1
- package/dist/index.cjs444.js +1 -1
- package/dist/index.cjs444.js.map +1 -1
- package/dist/{index.cjs463.js → index.cjs445.js} +1 -1
- package/dist/{index.cjs463.js.map → index.cjs445.js.map} +1 -1
- package/dist/{index.cjs464.js → index.cjs446.js} +2 -2
- package/dist/{index.cjs464.js.map → index.cjs446.js.map} +1 -1
- package/dist/{index.cjs465.js → index.cjs447.js} +2 -2
- package/dist/{index.cjs465.js.map → index.cjs447.js.map} +1 -1
- package/dist/index.cjs448.js +1 -1
- package/dist/index.cjs448.js.map +1 -1
- package/dist/index.cjs45.js +1 -1
- package/dist/index.cjs451.js +1 -4
- package/dist/index.cjs451.js.map +1 -1
- package/dist/index.cjs46.js +1 -1
- package/dist/index.cjs47.js +1 -1
- package/dist/index.cjs472.js +1 -1
- package/dist/index.cjs473.js +1 -1
- package/dist/index.cjs476.js +1 -1
- package/dist/index.cjs479.js +1 -1
- package/dist/index.cjs489.js +1 -1
- package/dist/index.cjs489.js.map +1 -1
- package/dist/index.cjs490.js +1 -1
- package/dist/index.cjs490.js.map +1 -1
- package/dist/index.cjs491.js +1 -1
- package/dist/index.cjs491.js.map +1 -1
- package/dist/index.cjs492.js +1 -1
- package/dist/index.cjs492.js.map +1 -1
- package/dist/index.cjs493.js +1 -1
- package/dist/index.cjs493.js.map +1 -1
- package/dist/index.cjs494.js +1 -1
- package/dist/index.cjs494.js.map +1 -1
- package/dist/index.cjs496.js +1 -1
- package/dist/index.cjs50.js +1 -1
- package/dist/index.cjs51.js +1 -1
- package/dist/index.cjs52.js +1 -1
- package/dist/index.cjs53.js +1 -1
- package/dist/index.cjs54.js +1 -1
- package/dist/index.cjs55.js +1 -1
- package/dist/index.cjs56.js +1 -1
- package/dist/index.cjs58.js +1 -1
- package/dist/index.cjs6.js +1 -1
- package/dist/index.cjs60.js +1 -1
- package/dist/index.cjs61.js +1 -1
- package/dist/index.cjs62.js +1 -1
- package/dist/index.cjs63.js +1 -1
- package/dist/index.cjs65.js +1 -1
- package/dist/index.cjs67.js +1 -1
- package/dist/index.cjs68.js +1 -1
- package/dist/index.cjs69.js +1 -1
- package/dist/index.cjs7.js +1 -1
- package/dist/index.cjs71.js +1 -1
- package/dist/index.cjs72.js +1 -1
- package/dist/index.cjs73.js +1 -1
- package/dist/index.cjs8.js +1 -1
- package/dist/index.cjs9.js +1 -1
- package/dist/index.cjs93.js +1 -1
- package/dist/index.cjs95.js +1 -1
- package/dist/index.cjs97.js +1 -1
- package/dist/index.d.ts +6 -1
- package/dist/index.es10.js +2 -2
- package/dist/index.es103.js +1 -1
- package/dist/index.es104.js +1 -1
- package/dist/index.es105.js +1 -1
- package/dist/index.es106.js +1 -1
- package/dist/index.es107.js +1 -1
- package/dist/index.es11.js +1 -1
- package/dist/index.es110.js +1 -1
- package/dist/index.es115.js +1 -1
- package/dist/index.es117.js +1 -1
- package/dist/index.es118.js +1 -1
- package/dist/index.es119.js +1 -1
- package/dist/index.es12.js +1 -1
- package/dist/index.es120.js +1 -1
- package/dist/index.es121.js +1 -1
- package/dist/index.es123.js +2 -2
- package/dist/index.es124.js +1 -1
- package/dist/index.es125.js +1 -1
- package/dist/index.es126.js +2 -2
- package/dist/index.es127.js +1 -1
- package/dist/index.es13.js +1 -1
- package/dist/index.es130.js +2 -2
- package/dist/index.es132.js +1 -1
- package/dist/index.es134.js +2 -2
- package/dist/index.es135.js +2 -2
- package/dist/index.es136.js +2 -2
- package/dist/index.es137.js +2 -2
- package/dist/index.es138.js +2 -2
- package/dist/index.es139.js +2 -2
- package/dist/index.es14.js +1 -1
- package/dist/index.es140.js +2 -2
- package/dist/index.es141.js +2 -2
- package/dist/index.es142.js +2 -2
- package/dist/index.es143.js +2 -2
- package/dist/index.es144.js +2 -2
- package/dist/index.es145.js +2 -2
- package/dist/index.es146.js +2 -2
- package/dist/index.es147.js +2 -2
- package/dist/index.es148.js +2 -2
- package/dist/index.es149.js +2 -2
- package/dist/index.es15.js +1 -1
- package/dist/index.es150.js +2 -2
- package/dist/index.es151.js +2 -2
- package/dist/index.es152.js +2 -2
- package/dist/index.es153.js +2 -2
- package/dist/index.es154.js +2 -2
- package/dist/index.es155.js +2 -2
- package/dist/index.es156.js +2 -2
- package/dist/index.es157.js +1 -1
- package/dist/index.es158.js +1 -1
- package/dist/index.es159.js +1 -1
- package/dist/index.es16.js +1 -1
- package/dist/index.es160.js +2 -2
- package/dist/index.es161.js +2 -2
- package/dist/index.es162.js +2 -2
- package/dist/index.es164.js +2 -2
- package/dist/index.es165.js +2 -2
- package/dist/index.es166.js +2 -2
- package/dist/index.es167.js +2 -2
- package/dist/index.es168.js +2 -2
- package/dist/index.es169.js +2 -2
- package/dist/index.es17.js +1 -1
- package/dist/index.es170.js +2 -2
- package/dist/index.es171.js +2 -2
- package/dist/index.es172.js +2 -2
- package/dist/index.es173.js +4 -3
- package/dist/index.es173.js.map +1 -1
- package/dist/index.es174.js +2 -2
- package/dist/index.es175.js +2 -2
- package/dist/index.es176.js +2 -2
- package/dist/index.es177.js +2 -2
- package/dist/index.es178.js +2 -2
- package/dist/index.es179.js +2 -2
- package/dist/index.es18.js +1 -1
- package/dist/index.es180.js +2 -2
- package/dist/index.es182.js +2 -2
- package/dist/index.es183.js +2 -2
- package/dist/index.es184.js +2 -2
- package/dist/index.es185.js +2 -2
- package/dist/index.es186.js +2 -2
- package/dist/index.es187.js +2 -2
- package/dist/index.es188.js +2 -2
- package/dist/index.es189.js +2 -2
- package/dist/index.es19.js +1 -1
- package/dist/index.es195.js +2 -2
- package/dist/index.es197.js +71 -76
- package/dist/index.es197.js.map +1 -1
- package/dist/index.es198.js +1 -11
- package/dist/index.es198.js.map +1 -1
- package/dist/index.es20.js +1 -1
- package/dist/index.es202.js +58 -63
- package/dist/index.es202.js.map +1 -1
- package/dist/index.es21.js +1 -1
- package/dist/index.es211.js +26 -29
- package/dist/index.es211.js.map +1 -1
- package/dist/index.es215.js +15 -18
- package/dist/index.es215.js.map +1 -1
- package/dist/index.es218.js +15 -2
- package/dist/index.es218.js.map +1 -1
- package/dist/index.es220.js +6 -0
- package/dist/index.es220.js.map +1 -0
- package/dist/index.es227.js +8 -0
- package/dist/index.es227.js.map +1 -0
- package/dist/index.es228.js +59 -5
- package/dist/index.es228.js.map +1 -1
- package/dist/index.es23.js +2 -2
- package/dist/index.es231.js +5 -0
- package/dist/index.es231.js.map +1 -0
- package/dist/index.es24.js +1 -1
- package/dist/index.es241.js +2 -2
- package/dist/index.es245.js +1 -1
- package/dist/index.es249.js +7 -7
- package/dist/index.es252.js +2 -2
- package/dist/index.es253.js +2 -2
- package/dist/index.es254.js +2 -2
- package/dist/index.es26.js +29 -29
- package/dist/index.es26.js.map +1 -1
- package/dist/index.es260.js +8 -8
- package/dist/index.es27.js +1 -1
- package/dist/index.es270.js +1 -1
- package/dist/index.es274.js +2 -2
- package/dist/index.es276.js +14 -14
- package/dist/index.es284.js +1 -1
- package/dist/index.es287.js +1 -1
- package/dist/index.es293.js +1 -1
- package/dist/index.es298.js +1 -1
- package/dist/index.es30.js +1 -1
- package/dist/index.es301.js +2 -2
- package/dist/index.es302.js +2 -2
- package/dist/index.es303.js +7 -7
- package/dist/index.es31.js +1 -1
- package/dist/index.es32.js +1 -1
- package/dist/index.es33.js +1 -1
- package/dist/index.es34.js +1 -1
- package/dist/index.es342.js +4 -4
- package/dist/index.es35.js +1 -1
- package/dist/index.es350.js +1 -1
- package/dist/index.es36.js +1 -1
- package/dist/index.es361.js +1 -1
- package/dist/index.es363.js +1 -1
- package/dist/index.es382.js +1 -1
- package/dist/index.es385.js +2 -2
- package/dist/index.es389.js +1 -1
- package/dist/index.es390.js +307 -146
- package/dist/index.es390.js.map +1 -1
- package/dist/index.es391.js +6 -2
- package/dist/index.es391.js.map +1 -1
- package/dist/index.es392.js +521 -2
- package/dist/index.es392.js.map +1 -1
- package/dist/index.es393.js +3674 -5
- package/dist/index.es393.js.map +1 -1
- package/dist/index.es394.js +5 -26
- package/dist/index.es394.js.map +1 -1
- package/dist/index.es395.js +2 -68
- package/dist/index.es395.js.map +1 -1
- package/dist/index.es396.js +2 -7
- package/dist/index.es396.js.map +1 -1
- package/dist/index.es397.js +2 -30
- package/dist/index.es397.js.map +1 -1
- package/dist/index.es399.js +6 -24
- package/dist/index.es399.js.map +1 -1
- package/dist/index.es40.js +1 -1
- package/dist/index.es400.js +21 -63
- package/dist/index.es400.js.map +1 -1
- package/dist/index.es401.js +67 -32
- package/dist/index.es401.js.map +1 -1
- package/dist/index.es402.js +33 -0
- package/dist/index.es402.js.map +1 -0
- package/dist/index.es403.js +32 -10
- package/dist/index.es403.js.map +1 -1
- package/dist/index.es404.js +621 -3
- package/dist/index.es404.js.map +1 -1
- package/dist/index.es405.js +10 -52
- package/dist/index.es405.js.map +1 -1
- package/dist/index.es406.js +10 -3674
- package/dist/index.es406.js.map +1 -1
- package/dist/index.es407.js +53 -2
- package/dist/index.es407.js.map +1 -1
- package/dist/index.es408.js +45 -5
- package/dist/index.es408.js.map +1 -1
- package/dist/index.es409.js +7 -520
- package/dist/index.es409.js.map +1 -1
- package/dist/index.es41.js +1 -1
- package/dist/index.es410.js +124 -14
- package/dist/index.es410.js.map +1 -1
- package/dist/index.es411.js +18 -0
- package/dist/index.es411.js.map +1 -0
- package/dist/index.es412.js +138 -0
- package/dist/index.es412.js.map +1 -0
- package/dist/index.es413.js +193 -597
- package/dist/index.es413.js.map +1 -1
- package/dist/index.es414.js +14 -11
- package/dist/index.es414.js.map +1 -1
- package/dist/index.es415.js +72 -0
- package/dist/index.es415.js.map +1 -0
- package/dist/index.es416.js +181 -0
- package/dist/index.es416.js.map +1 -0
- package/dist/index.es417.js +47 -122
- package/dist/index.es417.js.map +1 -1
- package/dist/index.es418.js +8 -134
- package/dist/index.es418.js.map +1 -1
- package/dist/index.es419.js +4 -14
- package/dist/index.es419.js.map +1 -1
- package/dist/index.es42.js +1 -1
- package/dist/index.es420.js +8 -11
- package/dist/index.es420.js.map +1 -1
- package/dist/index.es421.js +204 -8
- package/dist/index.es421.js.map +1 -1
- package/dist/index.es422.js +22 -50
- package/dist/index.es422.js.map +1 -1
- package/dist/index.es423.js +24 -45
- package/dist/index.es423.js.map +1 -1
- package/dist/index.es424.js +392 -7
- package/dist/index.es424.js.map +1 -1
- package/dist/index.es425.js +22 -215
- package/dist/index.es425.js.map +1 -1
- package/dist/index.es426.js +27 -176
- package/dist/index.es426.js.map +1 -1
- package/dist/index.es427.js +8 -0
- package/dist/index.es427.js.map +1 -0
- package/dist/index.es428.js +5 -12
- package/dist/index.es428.js.map +1 -1
- package/dist/index.es429.js +6 -0
- package/dist/{index.es449.js.map → index.es429.js.map} +1 -1
- package/dist/{index.es450.js → index.es430.js} +3 -3
- package/dist/{index.es450.js.map → index.es430.js.map} +1 -1
- package/dist/index.es431.js +113 -0
- package/dist/index.es431.js.map +1 -0
- package/dist/{index.es452.js → index.es432.js} +2 -2
- package/dist/{index.es452.js.map → index.es432.js.map} +1 -1
- package/dist/{index.es453.js → index.es433.js} +2 -2
- package/dist/{index.es453.js.map → index.es433.js.map} +1 -1
- package/dist/{index.es454.js → index.es434.js} +1 -1
- package/dist/{index.es454.js.map → index.es434.js.map} +1 -1
- package/dist/index.es435.js +121 -197
- package/dist/index.es435.js.map +1 -1
- package/dist/index.es436.js +69 -22
- package/dist/index.es436.js.map +1 -1
- package/dist/index.es437.js +7 -391
- package/dist/index.es437.js.map +1 -1
- package/dist/{index.es458.js → index.es438.js} +1 -1
- package/dist/{index.es458.js.map → index.es438.js.map} +1 -1
- package/dist/{index.es459.js → index.es439.js} +1 -1
- package/dist/{index.es459.js.map → index.es439.js.map} +1 -1
- package/dist/index.es44.js +1 -1
- package/dist/{index.es460.js → index.es440.js} +2 -2
- package/dist/{index.es460.js.map → index.es440.js.map} +1 -1
- package/dist/index.es441.js +3 -14
- package/dist/index.es441.js.map +1 -1
- package/dist/index.es442.js +22 -24
- package/dist/index.es442.js.map +1 -1
- package/dist/index.es443.js +6 -29
- package/dist/index.es443.js.map +1 -1
- package/dist/index.es444.js +15 -5
- package/dist/index.es444.js.map +1 -1
- package/dist/{index.es463.js → index.es445.js} +1 -1
- package/dist/{index.es463.js.map → index.es445.js.map} +1 -1
- package/dist/{index.es464.js → index.es446.js} +2 -2
- package/dist/{index.es464.js.map → index.es446.js.map} +1 -1
- package/dist/{index.es465.js → index.es447.js} +2 -2
- package/dist/{index.es465.js.map → index.es447.js.map} +1 -1
- package/dist/index.es448.js +5 -5
- package/dist/index.es448.js.map +1 -1
- package/dist/index.es45.js +1 -1
- package/dist/index.es451.js +14 -109
- package/dist/index.es451.js.map +1 -1
- package/dist/index.es46.js +1 -1
- package/dist/index.es47.js +1 -1
- package/dist/index.es472.js +1 -1
- package/dist/index.es473.js +2 -2
- package/dist/index.es476.js +3 -3
- package/dist/index.es479.js +8 -8
- package/dist/index.es489.js +2 -4
- package/dist/index.es489.js.map +1 -1
- package/dist/index.es490.js +2 -3
- package/dist/index.es490.js.map +1 -1
- package/dist/index.es491.js +3 -2
- package/dist/index.es491.js.map +1 -1
- package/dist/index.es492.js +2 -4
- package/dist/index.es492.js.map +1 -1
- package/dist/index.es493.js +3 -4
- package/dist/index.es493.js.map +1 -1
- package/dist/index.es494.js +7 -2
- package/dist/index.es494.js.map +1 -1
- package/dist/index.es496.js +1 -1
- package/dist/index.es50.js +2 -2
- package/dist/index.es51.js +1 -1
- package/dist/index.es52.js +1 -1
- package/dist/index.es53.js +1 -1
- package/dist/index.es54.js +1 -1
- package/dist/index.es55.js +1 -1
- package/dist/index.es56.js +1 -1
- package/dist/index.es58.js +2 -2
- package/dist/index.es6.js +1 -1
- package/dist/index.es60.js +1 -1
- package/dist/index.es61.js +1 -1
- package/dist/index.es62.js +1 -1
- package/dist/index.es63.js +2 -2
- package/dist/index.es65.js +1 -1
- package/dist/index.es67.js +1 -1
- package/dist/index.es68.js +1 -1
- package/dist/index.es69.js +1 -1
- package/dist/index.es7.js +1 -1
- package/dist/index.es71.js +1 -1
- package/dist/index.es72.js +1 -1
- package/dist/index.es73.js +1 -1
- package/dist/index.es8.js +1 -1
- package/dist/index.es9.js +2 -2
- package/dist/index.es93.js +1 -1
- package/dist/index.es95.js +1 -1
- package/dist/index.es97.js +1 -1
- package/package.json +1 -1
- package/dist/index.cjs217.js +0 -2
- package/dist/index.cjs217.js.map +0 -1
- package/dist/index.cjs221.js +0 -2
- package/dist/index.cjs221.js.map +0 -1
- package/dist/index.cjs229.js +0 -7
- package/dist/index.cjs229.js.map +0 -1
- package/dist/index.cjs398.js +0 -2
- package/dist/index.cjs398.js.map +0 -1
- package/dist/index.cjs449.js +0 -2
- package/dist/index.cjs455.js +0 -2
- package/dist/index.cjs455.js.map +0 -1
- package/dist/index.cjs456.js +0 -39
- package/dist/index.cjs456.js.map +0 -1
- package/dist/index.cjs457.js +0 -2
- package/dist/index.cjs457.js.map +0 -1
- package/dist/index.cjs461.js +0 -2
- package/dist/index.cjs461.js.map +0 -1
- package/dist/index.cjs462.js +0 -2
- package/dist/index.cjs462.js.map +0 -1
- package/dist/index.cjs466.js +0 -2
- package/dist/index.cjs466.js.map +0 -1
- package/dist/index.es217.js +0 -18
- package/dist/index.es217.js.map +0 -1
- package/dist/index.es221.js +0 -6
- package/dist/index.es221.js.map +0 -1
- package/dist/index.es229.js +0 -62
- package/dist/index.es229.js.map +0 -1
- package/dist/index.es398.js +0 -9
- package/dist/index.es398.js.map +0 -1
- package/dist/index.es449.js +0 -6
- package/dist/index.es455.js +0 -132
- package/dist/index.es455.js.map +0 -1
- package/dist/index.es456.js +0 -72
- package/dist/index.es456.js.map +0 -1
- package/dist/index.es457.js +0 -12
- package/dist/index.es457.js.map +0 -1
- package/dist/index.es461.js +0 -7
- package/dist/index.es461.js.map +0 -1
- package/dist/index.es462.js +0 -26
- package/dist/index.es462.js.map +0 -1
- package/dist/index.es466.js +0 -8
- package/dist/index.es466.js.map +0 -1
package/dist/index.es198.js
CHANGED
@@ -125,13 +125,6 @@ class a {
|
|
125
125
|
get end() {
|
126
126
|
return this.isValid ? this.e : null;
|
127
127
|
}
|
128
|
-
/**
|
129
|
-
* Returns the last DateTime included in the interval (since end is not part of the interval)
|
130
|
-
* @type {DateTime}
|
131
|
-
*/
|
132
|
-
get lastDateTime() {
|
133
|
-
return this.isValid && this.e ? this.e.minus(1) : null;
|
134
|
-
}
|
135
128
|
/**
|
136
129
|
* Returns whether this Interval's end is at least its start, meaning that the Interval isn't 'backwards'.
|
137
130
|
* @type {boolean}
|
@@ -330,11 +323,8 @@ class a {
|
|
330
323
|
return a.fromDateTimes(i, e);
|
331
324
|
}
|
332
325
|
/**
|
333
|
-
* Merge an array of Intervals into
|
326
|
+
* Merge an array of Intervals into a equivalent minimal set of Intervals.
|
334
327
|
* Combines overlapping and adjacent Intervals.
|
335
|
-
* The resulting array will contain the Intervals in ascending order, that is, starting with the earliest Interval
|
336
|
-
* and ending with the latest.
|
337
|
-
*
|
338
328
|
* @param {Array} intervals
|
339
329
|
* @return {Array}
|
340
330
|
*/
|
package/dist/index.es198.js.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"index.es198.js","sources":["../node_modules/luxon/src/interval.js"],"sourcesContent":["import DateTime, { friendlyDateTime } from \"./datetime.js\";\nimport Duration from \"./duration.js\";\nimport Settings from \"./settings.js\";\nimport { InvalidArgumentError, InvalidIntervalError } from \"./errors.js\";\nimport Invalid from \"./impl/invalid.js\";\nimport Formatter from \"./impl/formatter.js\";\nimport * as Formats from \"./impl/formats.js\";\n\nconst INVALID = \"Invalid Interval\";\n\n// checks if the start is equal to or before the end\nfunction validateStartEnd(start, end) {\n if (!start || !start.isValid) {\n return Interval.invalid(\"missing or invalid start\");\n } else if (!end || !end.isValid) {\n return Interval.invalid(\"missing or invalid end\");\n } else if (end < start) {\n return Interval.invalid(\n \"end before start\",\n `The end of an interval must be after its start, but you had start=${start.toISO()} and end=${end.toISO()}`\n );\n } else {\n return null;\n }\n}\n\n/**\n * An Interval object represents a half-open interval of time, where each endpoint is a {@link DateTime}. Conceptually, it's a container for those two endpoints, accompanied by methods for creating, parsing, interrogating, comparing, transforming, and formatting them.\n *\n * Here is a brief overview of the most commonly used methods and getters in Interval:\n *\n * * **Creation** To create an Interval, use {@link Interval.fromDateTimes}, {@link Interval.after}, {@link Interval.before}, or {@link Interval.fromISO}.\n * * **Accessors** Use {@link Interval#start} and {@link Interval#end} to get the start and end.\n * * **Interrogation** To analyze the Interval, use {@link Interval#count}, {@link Interval#length}, {@link Interval#hasSame}, {@link Interval#contains}, {@link Interval#isAfter}, or {@link Interval#isBefore}.\n * * **Transformation** To create other Intervals out of this one, use {@link Interval#set}, {@link Interval#splitAt}, {@link Interval#splitBy}, {@link Interval#divideEqually}, {@link Interval.merge}, {@link Interval.xor}, {@link Interval#union}, {@link Interval#intersection}, or {@link Interval#difference}.\n * * **Comparison** To compare this Interval to another one, use {@link Interval#equals}, {@link Interval#overlaps}, {@link Interval#abutsStart}, {@link Interval#abutsEnd}, {@link Interval#engulfs}\n * * **Output** To convert the Interval into other representations, see {@link Interval#toString}, {@link Interval#toLocaleString}, {@link Interval#toISO}, {@link Interval#toISODate}, {@link Interval#toISOTime}, {@link Interval#toFormat}, and {@link Interval#toDuration}.\n */\nexport default class Interval {\n /**\n * @private\n */\n constructor(config) {\n /**\n * @access private\n */\n this.s = config.start;\n /**\n * @access private\n */\n this.e = config.end;\n /**\n * @access private\n */\n this.invalid = config.invalid || null;\n /**\n * @access private\n */\n this.isLuxonInterval = true;\n }\n\n /**\n * Create an invalid Interval.\n * @param {string} reason - simple string of why this Interval is invalid. Should not contain parameters or anything else data-dependent\n * @param {string} [explanation=null] - longer explanation, may include parameters and other useful debugging information\n * @return {Interval}\n */\n static invalid(reason, explanation = null) {\n if (!reason) {\n throw new InvalidArgumentError(\"need to specify a reason the Interval is invalid\");\n }\n\n const invalid = reason instanceof Invalid ? reason : new Invalid(reason, explanation);\n\n if (Settings.throwOnInvalid) {\n throw new InvalidIntervalError(invalid);\n } else {\n return new Interval({ invalid });\n }\n }\n\n /**\n * Create an Interval from a start DateTime and an end DateTime. Inclusive of the start but not the end.\n * @param {DateTime|Date|Object} start\n * @param {DateTime|Date|Object} end\n * @return {Interval}\n */\n static fromDateTimes(start, end) {\n const builtStart = friendlyDateTime(start),\n builtEnd = friendlyDateTime(end);\n\n const validateError = validateStartEnd(builtStart, builtEnd);\n\n if (validateError == null) {\n return new Interval({\n start: builtStart,\n end: builtEnd,\n });\n } else {\n return validateError;\n }\n }\n\n /**\n * Create an Interval from a start DateTime and a Duration to extend to.\n * @param {DateTime|Date|Object} start\n * @param {Duration|Object|number} duration - the length of the Interval.\n * @return {Interval}\n */\n static after(start, duration) {\n const dur = Duration.fromDurationLike(duration),\n dt = friendlyDateTime(start);\n return Interval.fromDateTimes(dt, dt.plus(dur));\n }\n\n /**\n * Create an Interval from an end DateTime and a Duration to extend backwards to.\n * @param {DateTime|Date|Object} end\n * @param {Duration|Object|number} duration - the length of the Interval.\n * @return {Interval}\n */\n static before(end, duration) {\n const dur = Duration.fromDurationLike(duration),\n dt = friendlyDateTime(end);\n return Interval.fromDateTimes(dt.minus(dur), dt);\n }\n\n /**\n * Create an Interval from an ISO 8601 string.\n * Accepts `<start>/<end>`, `<start>/<duration>`, and `<duration>/<end>` formats.\n * @param {string} text - the ISO string to parse\n * @param {Object} [opts] - options to pass {@link DateTime#fromISO} and optionally {@link Duration#fromISO}\n * @see https://en.wikipedia.org/wiki/ISO_8601#Time_intervals\n * @return {Interval}\n */\n static fromISO(text, opts) {\n const [s, e] = (text || \"\").split(\"/\", 2);\n if (s && e) {\n let start, startIsValid;\n try {\n start = DateTime.fromISO(s, opts);\n startIsValid = start.isValid;\n } catch (e) {\n startIsValid = false;\n }\n\n let end, endIsValid;\n try {\n end = DateTime.fromISO(e, opts);\n endIsValid = end.isValid;\n } catch (e) {\n endIsValid = false;\n }\n\n if (startIsValid && endIsValid) {\n return Interval.fromDateTimes(start, end);\n }\n\n if (startIsValid) {\n const dur = Duration.fromISO(e, opts);\n if (dur.isValid) {\n return Interval.after(start, dur);\n }\n } else if (endIsValid) {\n const dur = Duration.fromISO(s, opts);\n if (dur.isValid) {\n return Interval.before(end, dur);\n }\n }\n }\n return Interval.invalid(\"unparsable\", `the input \"${text}\" can't be parsed as ISO 8601`);\n }\n\n /**\n * Check if an object is an Interval. Works across context boundaries\n * @param {object} o\n * @return {boolean}\n */\n static isInterval(o) {\n return (o && o.isLuxonInterval) || false;\n }\n\n /**\n * Returns the start of the Interval\n * @type {DateTime}\n */\n get start() {\n return this.isValid ? this.s : null;\n }\n\n /**\n * Returns the end of the Interval\n * @type {DateTime}\n */\n get end() {\n return this.isValid ? this.e : null;\n }\n\n /**\n * Returns the last DateTime included in the interval (since end is not part of the interval)\n * @type {DateTime}\n */\n get lastDateTime() {\n return this.isValid ? (this.e ? this.e.minus(1) : null) : null;\n }\n\n /**\n * Returns whether this Interval's end is at least its start, meaning that the Interval isn't 'backwards'.\n * @type {boolean}\n */\n get isValid() {\n return this.invalidReason === null;\n }\n\n /**\n * Returns an error code if this Interval is invalid, or null if the Interval is valid\n * @type {string}\n */\n get invalidReason() {\n return this.invalid ? this.invalid.reason : null;\n }\n\n /**\n * Returns an explanation of why this Interval became invalid, or null if the Interval is valid\n * @type {string}\n */\n get invalidExplanation() {\n return this.invalid ? this.invalid.explanation : null;\n }\n\n /**\n * Returns the length of the Interval in the specified unit.\n * @param {string} unit - the unit (such as 'hours' or 'days') to return the length in.\n * @return {number}\n */\n length(unit = \"milliseconds\") {\n return this.isValid ? this.toDuration(...[unit]).get(unit) : NaN;\n }\n\n /**\n * Returns the count of minutes, hours, days, months, or years included in the Interval, even in part.\n * Unlike {@link Interval#length} this counts sections of the calendar, not periods of time, e.g. specifying 'day'\n * asks 'what dates are included in this interval?', not 'how many days long is this interval?'\n * @param {string} [unit='milliseconds'] - the unit of time to count.\n * @param {Object} opts - options\n * @param {boolean} [opts.useLocaleWeeks=false] - If true, use weeks based on the locale, i.e. use the locale-dependent start of the week; this operation will always use the locale of the start DateTime\n * @return {number}\n */\n count(unit = \"milliseconds\", opts) {\n if (!this.isValid) return NaN;\n const start = this.start.startOf(unit, opts);\n let end;\n if (opts?.useLocaleWeeks) {\n end = this.end.reconfigure({ locale: start.locale });\n } else {\n end = this.end;\n }\n end = end.startOf(unit, opts);\n return Math.floor(end.diff(start, unit).get(unit)) + (end.valueOf() !== this.end.valueOf());\n }\n\n /**\n * Returns whether this Interval's start and end are both in the same unit of time\n * @param {string} unit - the unit of time to check sameness on\n * @return {boolean}\n */\n hasSame(unit) {\n return this.isValid ? this.isEmpty() || this.e.minus(1).hasSame(this.s, unit) : false;\n }\n\n /**\n * Return whether this Interval has the same start and end DateTimes.\n * @return {boolean}\n */\n isEmpty() {\n return this.s.valueOf() === this.e.valueOf();\n }\n\n /**\n * Return whether this Interval's start is after the specified DateTime.\n * @param {DateTime} dateTime\n * @return {boolean}\n */\n isAfter(dateTime) {\n if (!this.isValid) return false;\n return this.s > dateTime;\n }\n\n /**\n * Return whether this Interval's end is before the specified DateTime.\n * @param {DateTime} dateTime\n * @return {boolean}\n */\n isBefore(dateTime) {\n if (!this.isValid) return false;\n return this.e <= dateTime;\n }\n\n /**\n * Return whether this Interval contains the specified DateTime.\n * @param {DateTime} dateTime\n * @return {boolean}\n */\n contains(dateTime) {\n if (!this.isValid) return false;\n return this.s <= dateTime && this.e > dateTime;\n }\n\n /**\n * \"Sets\" the start and/or end dates. Returns a newly-constructed Interval.\n * @param {Object} values - the values to set\n * @param {DateTime} values.start - the starting DateTime\n * @param {DateTime} values.end - the ending DateTime\n * @return {Interval}\n */\n set({ start, end } = {}) {\n if (!this.isValid) return this;\n return Interval.fromDateTimes(start || this.s, end || this.e);\n }\n\n /**\n * Split this Interval at each of the specified DateTimes\n * @param {...DateTime} dateTimes - the unit of time to count.\n * @return {Array}\n */\n splitAt(...dateTimes) {\n if (!this.isValid) return [];\n const sorted = dateTimes\n .map(friendlyDateTime)\n .filter((d) => this.contains(d))\n .sort((a, b) => a.toMillis() - b.toMillis()),\n results = [];\n let { s } = this,\n i = 0;\n\n while (s < this.e) {\n const added = sorted[i] || this.e,\n next = +added > +this.e ? this.e : added;\n results.push(Interval.fromDateTimes(s, next));\n s = next;\n i += 1;\n }\n\n return results;\n }\n\n /**\n * Split this Interval into smaller Intervals, each of the specified length.\n * Left over time is grouped into a smaller interval\n * @param {Duration|Object|number} duration - The length of each resulting interval.\n * @return {Array}\n */\n splitBy(duration) {\n const dur = Duration.fromDurationLike(duration);\n\n if (!this.isValid || !dur.isValid || dur.as(\"milliseconds\") === 0) {\n return [];\n }\n\n let { s } = this,\n idx = 1,\n next;\n\n const results = [];\n while (s < this.e) {\n const added = this.start.plus(dur.mapUnits((x) => x * idx));\n next = +added > +this.e ? this.e : added;\n results.push(Interval.fromDateTimes(s, next));\n s = next;\n idx += 1;\n }\n\n return results;\n }\n\n /**\n * Split this Interval into the specified number of smaller intervals.\n * @param {number} numberOfParts - The number of Intervals to divide the Interval into.\n * @return {Array}\n */\n divideEqually(numberOfParts) {\n if (!this.isValid) return [];\n return this.splitBy(this.length() / numberOfParts).slice(0, numberOfParts);\n }\n\n /**\n * Return whether this Interval overlaps with the specified Interval\n * @param {Interval} other\n * @return {boolean}\n */\n overlaps(other) {\n return this.e > other.s && this.s < other.e;\n }\n\n /**\n * Return whether this Interval's end is adjacent to the specified Interval's start.\n * @param {Interval} other\n * @return {boolean}\n */\n abutsStart(other) {\n if (!this.isValid) return false;\n return +this.e === +other.s;\n }\n\n /**\n * Return whether this Interval's start is adjacent to the specified Interval's end.\n * @param {Interval} other\n * @return {boolean}\n */\n abutsEnd(other) {\n if (!this.isValid) return false;\n return +other.e === +this.s;\n }\n\n /**\n * Returns true if this Interval fully contains the specified Interval, specifically if the intersect (of this Interval and the other Interval) is equal to the other Interval; false otherwise.\n * @param {Interval} other\n * @return {boolean}\n */\n engulfs(other) {\n if (!this.isValid) return false;\n return this.s <= other.s && this.e >= other.e;\n }\n\n /**\n * Return whether this Interval has the same start and end as the specified Interval.\n * @param {Interval} other\n * @return {boolean}\n */\n equals(other) {\n if (!this.isValid || !other.isValid) {\n return false;\n }\n\n return this.s.equals(other.s) && this.e.equals(other.e);\n }\n\n /**\n * Return an Interval representing the intersection of this Interval and the specified Interval.\n * Specifically, the resulting Interval has the maximum start time and the minimum end time of the two Intervals.\n * Returns null if the intersection is empty, meaning, the intervals don't intersect.\n * @param {Interval} other\n * @return {Interval}\n */\n intersection(other) {\n if (!this.isValid) return this;\n const s = this.s > other.s ? this.s : other.s,\n e = this.e < other.e ? this.e : other.e;\n\n if (s >= e) {\n return null;\n } else {\n return Interval.fromDateTimes(s, e);\n }\n }\n\n /**\n * Return an Interval representing the union of this Interval and the specified Interval.\n * Specifically, the resulting Interval has the minimum start time and the maximum end time of the two Intervals.\n * @param {Interval} other\n * @return {Interval}\n */\n union(other) {\n if (!this.isValid) return this;\n const s = this.s < other.s ? this.s : other.s,\n e = this.e > other.e ? this.e : other.e;\n return Interval.fromDateTimes(s, e);\n }\n\n /**\n * Merge an array of Intervals into an equivalent minimal set of Intervals.\n * Combines overlapping and adjacent Intervals.\n * The resulting array will contain the Intervals in ascending order, that is, starting with the earliest Interval\n * and ending with the latest.\n *\n * @param {Array} intervals\n * @return {Array}\n */\n static merge(intervals) {\n const [found, final] = intervals\n .sort((a, b) => a.s - b.s)\n .reduce(\n ([sofar, current], item) => {\n if (!current) {\n return [sofar, item];\n } else if (current.overlaps(item) || current.abutsStart(item)) {\n return [sofar, current.union(item)];\n } else {\n return [sofar.concat([current]), item];\n }\n },\n [[], null]\n );\n if (final) {\n found.push(final);\n }\n return found;\n }\n\n /**\n * Return an array of Intervals representing the spans of time that only appear in one of the specified Intervals.\n * @param {Array} intervals\n * @return {Array}\n */\n static xor(intervals) {\n let start = null,\n currentCount = 0;\n const results = [],\n ends = intervals.map((i) => [\n { time: i.s, type: \"s\" },\n { time: i.e, type: \"e\" },\n ]),\n flattened = Array.prototype.concat(...ends),\n arr = flattened.sort((a, b) => a.time - b.time);\n\n for (const i of arr) {\n currentCount += i.type === \"s\" ? 1 : -1;\n\n if (currentCount === 1) {\n start = i.time;\n } else {\n if (start && +start !== +i.time) {\n results.push(Interval.fromDateTimes(start, i.time));\n }\n\n start = null;\n }\n }\n\n return Interval.merge(results);\n }\n\n /**\n * Return an Interval representing the span of time in this Interval that doesn't overlap with any of the specified Intervals.\n * @param {...Interval} intervals\n * @return {Array}\n */\n difference(...intervals) {\n return Interval.xor([this].concat(intervals))\n .map((i) => this.intersection(i))\n .filter((i) => i && !i.isEmpty());\n }\n\n /**\n * Returns a string representation of this Interval appropriate for debugging.\n * @return {string}\n */\n toString() {\n if (!this.isValid) return INVALID;\n return `[${this.s.toISO()} – ${this.e.toISO()})`;\n }\n\n /**\n * Returns a string representation of this Interval appropriate for the REPL.\n * @return {string}\n */\n [Symbol.for(\"nodejs.util.inspect.custom\")]() {\n if (this.isValid) {\n return `Interval { start: ${this.s.toISO()}, end: ${this.e.toISO()} }`;\n } else {\n return `Interval { Invalid, reason: ${this.invalidReason} }`;\n }\n }\n\n /**\n * Returns a localized string representing this Interval. Accepts the same options as the\n * Intl.DateTimeFormat constructor and any presets defined by Luxon, such as\n * {@link DateTime.DATE_FULL} or {@link DateTime.TIME_SIMPLE}. The exact behavior of this method\n * is browser-specific, but in general it will return an appropriate representation of the\n * Interval in the assigned locale. Defaults to the system's locale if no locale has been\n * specified.\n * @see https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/DateTimeFormat\n * @param {Object} [formatOpts=DateTime.DATE_SHORT] - Either a DateTime preset or\n * Intl.DateTimeFormat constructor options.\n * @param {Object} opts - Options to override the configuration of the start DateTime.\n * @example Interval.fromISO('2022-11-07T09:00Z/2022-11-08T09:00Z').toLocaleString(); //=> 11/7/2022 – 11/8/2022\n * @example Interval.fromISO('2022-11-07T09:00Z/2022-11-08T09:00Z').toLocaleString(DateTime.DATE_FULL); //=> November 7 – 8, 2022\n * @example Interval.fromISO('2022-11-07T09:00Z/2022-11-08T09:00Z').toLocaleString(DateTime.DATE_FULL, { locale: 'fr-FR' }); //=> 7–8 novembre 2022\n * @example Interval.fromISO('2022-11-07T17:00Z/2022-11-07T19:00Z').toLocaleString(DateTime.TIME_SIMPLE); //=> 6:00 – 8:00 PM\n * @example Interval.fromISO('2022-11-07T17:00Z/2022-11-07T19:00Z').toLocaleString({ weekday: 'short', month: 'short', day: '2-digit', hour: '2-digit', minute: '2-digit' }); //=> Mon, Nov 07, 6:00 – 8:00 p\n * @return {string}\n */\n toLocaleString(formatOpts = Formats.DATE_SHORT, opts = {}) {\n return this.isValid\n ? Formatter.create(this.s.loc.clone(opts), formatOpts).formatInterval(this)\n : INVALID;\n }\n\n /**\n * Returns an ISO 8601-compliant string representation of this Interval.\n * @see https://en.wikipedia.org/wiki/ISO_8601#Time_intervals\n * @param {Object} opts - The same options as {@link DateTime#toISO}\n * @return {string}\n */\n toISO(opts) {\n if (!this.isValid) return INVALID;\n return `${this.s.toISO(opts)}/${this.e.toISO(opts)}`;\n }\n\n /**\n * Returns an ISO 8601-compliant string representation of date of this Interval.\n * The time components are ignored.\n * @see https://en.wikipedia.org/wiki/ISO_8601#Time_intervals\n * @return {string}\n */\n toISODate() {\n if (!this.isValid) return INVALID;\n return `${this.s.toISODate()}/${this.e.toISODate()}`;\n }\n\n /**\n * Returns an ISO 8601-compliant string representation of time of this Interval.\n * The date components are ignored.\n * @see https://en.wikipedia.org/wiki/ISO_8601#Time_intervals\n * @param {Object} opts - The same options as {@link DateTime#toISO}\n * @return {string}\n */\n toISOTime(opts) {\n if (!this.isValid) return INVALID;\n return `${this.s.toISOTime(opts)}/${this.e.toISOTime(opts)}`;\n }\n\n /**\n * Returns a string representation of this Interval formatted according to the specified format\n * string. **You may not want this.** See {@link Interval#toLocaleString} for a more flexible\n * formatting tool.\n * @param {string} dateFormat - The format string. This string formats the start and end time.\n * See {@link DateTime#toFormat} for details.\n * @param {Object} opts - Options.\n * @param {string} [opts.separator = ' – '] - A separator to place between the start and end\n * representations.\n * @return {string}\n */\n toFormat(dateFormat, { separator = \" – \" } = {}) {\n if (!this.isValid) return INVALID;\n return `${this.s.toFormat(dateFormat)}${separator}${this.e.toFormat(dateFormat)}`;\n }\n\n /**\n * Return a Duration representing the time spanned by this interval.\n * @param {string|string[]} [unit=['milliseconds']] - the unit or units (such as 'hours' or 'days') to include in the duration.\n * @param {Object} opts - options that affect the creation of the Duration\n * @param {string} [opts.conversionAccuracy='casual'] - the conversion system to use\n * @example Interval.fromDateTimes(dt1, dt2).toDuration().toObject() //=> { milliseconds: 88489257 }\n * @example Interval.fromDateTimes(dt1, dt2).toDuration('days').toObject() //=> { days: 1.0241812152777778 }\n * @example Interval.fromDateTimes(dt1, dt2).toDuration(['hours', 'minutes']).toObject() //=> { hours: 24, minutes: 34.82095 }\n * @example Interval.fromDateTimes(dt1, dt2).toDuration(['hours', 'minutes', 'seconds']).toObject() //=> { hours: 24, minutes: 34, seconds: 49.257 }\n * @example Interval.fromDateTimes(dt1, dt2).toDuration('seconds').toObject() //=> { seconds: 88489.257 }\n * @return {Duration}\n */\n toDuration(unit, opts) {\n if (!this.isValid) {\n return Duration.invalid(this.invalidReason);\n }\n return this.e.diff(this.s, unit, opts);\n }\n\n /**\n * Run mapFn on the interval start and end, returning a new Interval from the resulting DateTimes\n * @param {function} mapFn\n * @return {Interval}\n * @example Interval.fromDateTimes(dt1, dt2).mapEndpoints(endpoint => endpoint.toUTC())\n * @example Interval.fromDateTimes(dt1, dt2).mapEndpoints(endpoint => endpoint.plus({ hours: 2 }))\n */\n mapEndpoints(mapFn) {\n return Interval.fromDateTimes(mapFn(this.s), mapFn(this.e));\n }\n}\n"],"names":["INVALID","validateStartEnd","start","end","Interval","config","reason","explanation","InvalidArgumentError","invalid","Invalid","Settings","InvalidIntervalError","builtStart","friendlyDateTime","builtEnd","validateError","duration","dur","Duration","dt","text","opts","s","e","startIsValid","DateTime","endIsValid","o","unit","dateTime","dateTimes","sorted","d","a","b","results","i","added","next","idx","x","numberOfParts","other","intervals","found","final","sofar","current","item","currentCount","ends","flattened","arr","formatOpts","Formats.DATE_SHORT","Formatter","dateFormat","separator","mapFn"],"mappings":"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","x_google_ignoreList":[0]}
|
1
|
+
{"version":3,"file":"index.es198.js","sources":["../node_modules/luxon/src/interval.js"],"sourcesContent":["import DateTime, { friendlyDateTime } from \"./datetime.js\";\nimport Duration from \"./duration.js\";\nimport Settings from \"./settings.js\";\nimport { InvalidArgumentError, InvalidIntervalError } from \"./errors.js\";\nimport Invalid from \"./impl/invalid.js\";\nimport Formatter from \"./impl/formatter.js\";\nimport * as Formats from \"./impl/formats.js\";\n\nconst INVALID = \"Invalid Interval\";\n\n// checks if the start is equal to or before the end\nfunction validateStartEnd(start, end) {\n if (!start || !start.isValid) {\n return Interval.invalid(\"missing or invalid start\");\n } else if (!end || !end.isValid) {\n return Interval.invalid(\"missing or invalid end\");\n } else if (end < start) {\n return Interval.invalid(\n \"end before start\",\n `The end of an interval must be after its start, but you had start=${start.toISO()} and end=${end.toISO()}`\n );\n } else {\n return null;\n }\n}\n\n/**\n * An Interval object represents a half-open interval of time, where each endpoint is a {@link DateTime}. Conceptually, it's a container for those two endpoints, accompanied by methods for creating, parsing, interrogating, comparing, transforming, and formatting them.\n *\n * Here is a brief overview of the most commonly used methods and getters in Interval:\n *\n * * **Creation** To create an Interval, use {@link Interval.fromDateTimes}, {@link Interval.after}, {@link Interval.before}, or {@link Interval.fromISO}.\n * * **Accessors** Use {@link Interval#start} and {@link Interval#end} to get the start and end.\n * * **Interrogation** To analyze the Interval, use {@link Interval#count}, {@link Interval#length}, {@link Interval#hasSame}, {@link Interval#contains}, {@link Interval#isAfter}, or {@link Interval#isBefore}.\n * * **Transformation** To create other Intervals out of this one, use {@link Interval#set}, {@link Interval#splitAt}, {@link Interval#splitBy}, {@link Interval#divideEqually}, {@link Interval.merge}, {@link Interval.xor}, {@link Interval#union}, {@link Interval#intersection}, or {@link Interval#difference}.\n * * **Comparison** To compare this Interval to another one, use {@link Interval#equals}, {@link Interval#overlaps}, {@link Interval#abutsStart}, {@link Interval#abutsEnd}, {@link Interval#engulfs}\n * * **Output** To convert the Interval into other representations, see {@link Interval#toString}, {@link Interval#toLocaleString}, {@link Interval#toISO}, {@link Interval#toISODate}, {@link Interval#toISOTime}, {@link Interval#toFormat}, and {@link Interval#toDuration}.\n */\nexport default class Interval {\n /**\n * @private\n */\n constructor(config) {\n /**\n * @access private\n */\n this.s = config.start;\n /**\n * @access private\n */\n this.e = config.end;\n /**\n * @access private\n */\n this.invalid = config.invalid || null;\n /**\n * @access private\n */\n this.isLuxonInterval = true;\n }\n\n /**\n * Create an invalid Interval.\n * @param {string} reason - simple string of why this Interval is invalid. Should not contain parameters or anything else data-dependent\n * @param {string} [explanation=null] - longer explanation, may include parameters and other useful debugging information\n * @return {Interval}\n */\n static invalid(reason, explanation = null) {\n if (!reason) {\n throw new InvalidArgumentError(\"need to specify a reason the Interval is invalid\");\n }\n\n const invalid = reason instanceof Invalid ? reason : new Invalid(reason, explanation);\n\n if (Settings.throwOnInvalid) {\n throw new InvalidIntervalError(invalid);\n } else {\n return new Interval({ invalid });\n }\n }\n\n /**\n * Create an Interval from a start DateTime and an end DateTime. Inclusive of the start but not the end.\n * @param {DateTime|Date|Object} start\n * @param {DateTime|Date|Object} end\n * @return {Interval}\n */\n static fromDateTimes(start, end) {\n const builtStart = friendlyDateTime(start),\n builtEnd = friendlyDateTime(end);\n\n const validateError = validateStartEnd(builtStart, builtEnd);\n\n if (validateError == null) {\n return new Interval({\n start: builtStart,\n end: builtEnd,\n });\n } else {\n return validateError;\n }\n }\n\n /**\n * Create an Interval from a start DateTime and a Duration to extend to.\n * @param {DateTime|Date|Object} start\n * @param {Duration|Object|number} duration - the length of the Interval.\n * @return {Interval}\n */\n static after(start, duration) {\n const dur = Duration.fromDurationLike(duration),\n dt = friendlyDateTime(start);\n return Interval.fromDateTimes(dt, dt.plus(dur));\n }\n\n /**\n * Create an Interval from an end DateTime and a Duration to extend backwards to.\n * @param {DateTime|Date|Object} end\n * @param {Duration|Object|number} duration - the length of the Interval.\n * @return {Interval}\n */\n static before(end, duration) {\n const dur = Duration.fromDurationLike(duration),\n dt = friendlyDateTime(end);\n return Interval.fromDateTimes(dt.minus(dur), dt);\n }\n\n /**\n * Create an Interval from an ISO 8601 string.\n * Accepts `<start>/<end>`, `<start>/<duration>`, and `<duration>/<end>` formats.\n * @param {string} text - the ISO string to parse\n * @param {Object} [opts] - options to pass {@link DateTime#fromISO} and optionally {@link Duration#fromISO}\n * @see https://en.wikipedia.org/wiki/ISO_8601#Time_intervals\n * @return {Interval}\n */\n static fromISO(text, opts) {\n const [s, e] = (text || \"\").split(\"/\", 2);\n if (s && e) {\n let start, startIsValid;\n try {\n start = DateTime.fromISO(s, opts);\n startIsValid = start.isValid;\n } catch (e) {\n startIsValid = false;\n }\n\n let end, endIsValid;\n try {\n end = DateTime.fromISO(e, opts);\n endIsValid = end.isValid;\n } catch (e) {\n endIsValid = false;\n }\n\n if (startIsValid && endIsValid) {\n return Interval.fromDateTimes(start, end);\n }\n\n if (startIsValid) {\n const dur = Duration.fromISO(e, opts);\n if (dur.isValid) {\n return Interval.after(start, dur);\n }\n } else if (endIsValid) {\n const dur = Duration.fromISO(s, opts);\n if (dur.isValid) {\n return Interval.before(end, dur);\n }\n }\n }\n return Interval.invalid(\"unparsable\", `the input \"${text}\" can't be parsed as ISO 8601`);\n }\n\n /**\n * Check if an object is an Interval. Works across context boundaries\n * @param {object} o\n * @return {boolean}\n */\n static isInterval(o) {\n return (o && o.isLuxonInterval) || false;\n }\n\n /**\n * Returns the start of the Interval\n * @type {DateTime}\n */\n get start() {\n return this.isValid ? this.s : null;\n }\n\n /**\n * Returns the end of the Interval\n * @type {DateTime}\n */\n get end() {\n return this.isValid ? this.e : null;\n }\n\n /**\n * Returns whether this Interval's end is at least its start, meaning that the Interval isn't 'backwards'.\n * @type {boolean}\n */\n get isValid() {\n return this.invalidReason === null;\n }\n\n /**\n * Returns an error code if this Interval is invalid, or null if the Interval is valid\n * @type {string}\n */\n get invalidReason() {\n return this.invalid ? this.invalid.reason : null;\n }\n\n /**\n * Returns an explanation of why this Interval became invalid, or null if the Interval is valid\n * @type {string}\n */\n get invalidExplanation() {\n return this.invalid ? this.invalid.explanation : null;\n }\n\n /**\n * Returns the length of the Interval in the specified unit.\n * @param {string} unit - the unit (such as 'hours' or 'days') to return the length in.\n * @return {number}\n */\n length(unit = \"milliseconds\") {\n return this.isValid ? this.toDuration(...[unit]).get(unit) : NaN;\n }\n\n /**\n * Returns the count of minutes, hours, days, months, or years included in the Interval, even in part.\n * Unlike {@link Interval#length} this counts sections of the calendar, not periods of time, e.g. specifying 'day'\n * asks 'what dates are included in this interval?', not 'how many days long is this interval?'\n * @param {string} [unit='milliseconds'] - the unit of time to count.\n * @param {Object} opts - options\n * @param {boolean} [opts.useLocaleWeeks=false] - If true, use weeks based on the locale, i.e. use the locale-dependent start of the week; this operation will always use the locale of the start DateTime\n * @return {number}\n */\n count(unit = \"milliseconds\", opts) {\n if (!this.isValid) return NaN;\n const start = this.start.startOf(unit, opts);\n let end;\n if (opts?.useLocaleWeeks) {\n end = this.end.reconfigure({ locale: start.locale });\n } else {\n end = this.end;\n }\n end = end.startOf(unit, opts);\n return Math.floor(end.diff(start, unit).get(unit)) + (end.valueOf() !== this.end.valueOf());\n }\n\n /**\n * Returns whether this Interval's start and end are both in the same unit of time\n * @param {string} unit - the unit of time to check sameness on\n * @return {boolean}\n */\n hasSame(unit) {\n return this.isValid ? this.isEmpty() || this.e.minus(1).hasSame(this.s, unit) : false;\n }\n\n /**\n * Return whether this Interval has the same start and end DateTimes.\n * @return {boolean}\n */\n isEmpty() {\n return this.s.valueOf() === this.e.valueOf();\n }\n\n /**\n * Return whether this Interval's start is after the specified DateTime.\n * @param {DateTime} dateTime\n * @return {boolean}\n */\n isAfter(dateTime) {\n if (!this.isValid) return false;\n return this.s > dateTime;\n }\n\n /**\n * Return whether this Interval's end is before the specified DateTime.\n * @param {DateTime} dateTime\n * @return {boolean}\n */\n isBefore(dateTime) {\n if (!this.isValid) return false;\n return this.e <= dateTime;\n }\n\n /**\n * Return whether this Interval contains the specified DateTime.\n * @param {DateTime} dateTime\n * @return {boolean}\n */\n contains(dateTime) {\n if (!this.isValid) return false;\n return this.s <= dateTime && this.e > dateTime;\n }\n\n /**\n * \"Sets\" the start and/or end dates. Returns a newly-constructed Interval.\n * @param {Object} values - the values to set\n * @param {DateTime} values.start - the starting DateTime\n * @param {DateTime} values.end - the ending DateTime\n * @return {Interval}\n */\n set({ start, end } = {}) {\n if (!this.isValid) return this;\n return Interval.fromDateTimes(start || this.s, end || this.e);\n }\n\n /**\n * Split this Interval at each of the specified DateTimes\n * @param {...DateTime} dateTimes - the unit of time to count.\n * @return {Array}\n */\n splitAt(...dateTimes) {\n if (!this.isValid) return [];\n const sorted = dateTimes\n .map(friendlyDateTime)\n .filter((d) => this.contains(d))\n .sort((a, b) => a.toMillis() - b.toMillis()),\n results = [];\n let { s } = this,\n i = 0;\n\n while (s < this.e) {\n const added = sorted[i] || this.e,\n next = +added > +this.e ? this.e : added;\n results.push(Interval.fromDateTimes(s, next));\n s = next;\n i += 1;\n }\n\n return results;\n }\n\n /**\n * Split this Interval into smaller Intervals, each of the specified length.\n * Left over time is grouped into a smaller interval\n * @param {Duration|Object|number} duration - The length of each resulting interval.\n * @return {Array}\n */\n splitBy(duration) {\n const dur = Duration.fromDurationLike(duration);\n\n if (!this.isValid || !dur.isValid || dur.as(\"milliseconds\") === 0) {\n return [];\n }\n\n let { s } = this,\n idx = 1,\n next;\n\n const results = [];\n while (s < this.e) {\n const added = this.start.plus(dur.mapUnits((x) => x * idx));\n next = +added > +this.e ? this.e : added;\n results.push(Interval.fromDateTimes(s, next));\n s = next;\n idx += 1;\n }\n\n return results;\n }\n\n /**\n * Split this Interval into the specified number of smaller intervals.\n * @param {number} numberOfParts - The number of Intervals to divide the Interval into.\n * @return {Array}\n */\n divideEqually(numberOfParts) {\n if (!this.isValid) return [];\n return this.splitBy(this.length() / numberOfParts).slice(0, numberOfParts);\n }\n\n /**\n * Return whether this Interval overlaps with the specified Interval\n * @param {Interval} other\n * @return {boolean}\n */\n overlaps(other) {\n return this.e > other.s && this.s < other.e;\n }\n\n /**\n * Return whether this Interval's end is adjacent to the specified Interval's start.\n * @param {Interval} other\n * @return {boolean}\n */\n abutsStart(other) {\n if (!this.isValid) return false;\n return +this.e === +other.s;\n }\n\n /**\n * Return whether this Interval's start is adjacent to the specified Interval's end.\n * @param {Interval} other\n * @return {boolean}\n */\n abutsEnd(other) {\n if (!this.isValid) return false;\n return +other.e === +this.s;\n }\n\n /**\n * Returns true if this Interval fully contains the specified Interval, specifically if the intersect (of this Interval and the other Interval) is equal to the other Interval; false otherwise.\n * @param {Interval} other\n * @return {boolean}\n */\n engulfs(other) {\n if (!this.isValid) return false;\n return this.s <= other.s && this.e >= other.e;\n }\n\n /**\n * Return whether this Interval has the same start and end as the specified Interval.\n * @param {Interval} other\n * @return {boolean}\n */\n equals(other) {\n if (!this.isValid || !other.isValid) {\n return false;\n }\n\n return this.s.equals(other.s) && this.e.equals(other.e);\n }\n\n /**\n * Return an Interval representing the intersection of this Interval and the specified Interval.\n * Specifically, the resulting Interval has the maximum start time and the minimum end time of the two Intervals.\n * Returns null if the intersection is empty, meaning, the intervals don't intersect.\n * @param {Interval} other\n * @return {Interval}\n */\n intersection(other) {\n if (!this.isValid) return this;\n const s = this.s > other.s ? this.s : other.s,\n e = this.e < other.e ? this.e : other.e;\n\n if (s >= e) {\n return null;\n } else {\n return Interval.fromDateTimes(s, e);\n }\n }\n\n /**\n * Return an Interval representing the union of this Interval and the specified Interval.\n * Specifically, the resulting Interval has the minimum start time and the maximum end time of the two Intervals.\n * @param {Interval} other\n * @return {Interval}\n */\n union(other) {\n if (!this.isValid) return this;\n const s = this.s < other.s ? this.s : other.s,\n e = this.e > other.e ? this.e : other.e;\n return Interval.fromDateTimes(s, e);\n }\n\n /**\n * Merge an array of Intervals into a equivalent minimal set of Intervals.\n * Combines overlapping and adjacent Intervals.\n * @param {Array} intervals\n * @return {Array}\n */\n static merge(intervals) {\n const [found, final] = intervals\n .sort((a, b) => a.s - b.s)\n .reduce(\n ([sofar, current], item) => {\n if (!current) {\n return [sofar, item];\n } else if (current.overlaps(item) || current.abutsStart(item)) {\n return [sofar, current.union(item)];\n } else {\n return [sofar.concat([current]), item];\n }\n },\n [[], null]\n );\n if (final) {\n found.push(final);\n }\n return found;\n }\n\n /**\n * Return an array of Intervals representing the spans of time that only appear in one of the specified Intervals.\n * @param {Array} intervals\n * @return {Array}\n */\n static xor(intervals) {\n let start = null,\n currentCount = 0;\n const results = [],\n ends = intervals.map((i) => [\n { time: i.s, type: \"s\" },\n { time: i.e, type: \"e\" },\n ]),\n flattened = Array.prototype.concat(...ends),\n arr = flattened.sort((a, b) => a.time - b.time);\n\n for (const i of arr) {\n currentCount += i.type === \"s\" ? 1 : -1;\n\n if (currentCount === 1) {\n start = i.time;\n } else {\n if (start && +start !== +i.time) {\n results.push(Interval.fromDateTimes(start, i.time));\n }\n\n start = null;\n }\n }\n\n return Interval.merge(results);\n }\n\n /**\n * Return an Interval representing the span of time in this Interval that doesn't overlap with any of the specified Intervals.\n * @param {...Interval} intervals\n * @return {Array}\n */\n difference(...intervals) {\n return Interval.xor([this].concat(intervals))\n .map((i) => this.intersection(i))\n .filter((i) => i && !i.isEmpty());\n }\n\n /**\n * Returns a string representation of this Interval appropriate for debugging.\n * @return {string}\n */\n toString() {\n if (!this.isValid) return INVALID;\n return `[${this.s.toISO()} – ${this.e.toISO()})`;\n }\n\n /**\n * Returns a string representation of this Interval appropriate for the REPL.\n * @return {string}\n */\n [Symbol.for(\"nodejs.util.inspect.custom\")]() {\n if (this.isValid) {\n return `Interval { start: ${this.s.toISO()}, end: ${this.e.toISO()} }`;\n } else {\n return `Interval { Invalid, reason: ${this.invalidReason} }`;\n }\n }\n\n /**\n * Returns a localized string representing this Interval. Accepts the same options as the\n * Intl.DateTimeFormat constructor and any presets defined by Luxon, such as\n * {@link DateTime.DATE_FULL} or {@link DateTime.TIME_SIMPLE}. The exact behavior of this method\n * is browser-specific, but in general it will return an appropriate representation of the\n * Interval in the assigned locale. Defaults to the system's locale if no locale has been\n * specified.\n * @see https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/DateTimeFormat\n * @param {Object} [formatOpts=DateTime.DATE_SHORT] - Either a DateTime preset or\n * Intl.DateTimeFormat constructor options.\n * @param {Object} opts - Options to override the configuration of the start DateTime.\n * @example Interval.fromISO('2022-11-07T09:00Z/2022-11-08T09:00Z').toLocaleString(); //=> 11/7/2022 – 11/8/2022\n * @example Interval.fromISO('2022-11-07T09:00Z/2022-11-08T09:00Z').toLocaleString(DateTime.DATE_FULL); //=> November 7 – 8, 2022\n * @example Interval.fromISO('2022-11-07T09:00Z/2022-11-08T09:00Z').toLocaleString(DateTime.DATE_FULL, { locale: 'fr-FR' }); //=> 7–8 novembre 2022\n * @example Interval.fromISO('2022-11-07T17:00Z/2022-11-07T19:00Z').toLocaleString(DateTime.TIME_SIMPLE); //=> 6:00 – 8:00 PM\n * @example Interval.fromISO('2022-11-07T17:00Z/2022-11-07T19:00Z').toLocaleString({ weekday: 'short', month: 'short', day: '2-digit', hour: '2-digit', minute: '2-digit' }); //=> Mon, Nov 07, 6:00 – 8:00 p\n * @return {string}\n */\n toLocaleString(formatOpts = Formats.DATE_SHORT, opts = {}) {\n return this.isValid\n ? Formatter.create(this.s.loc.clone(opts), formatOpts).formatInterval(this)\n : INVALID;\n }\n\n /**\n * Returns an ISO 8601-compliant string representation of this Interval.\n * @see https://en.wikipedia.org/wiki/ISO_8601#Time_intervals\n * @param {Object} opts - The same options as {@link DateTime#toISO}\n * @return {string}\n */\n toISO(opts) {\n if (!this.isValid) return INVALID;\n return `${this.s.toISO(opts)}/${this.e.toISO(opts)}`;\n }\n\n /**\n * Returns an ISO 8601-compliant string representation of date of this Interval.\n * The time components are ignored.\n * @see https://en.wikipedia.org/wiki/ISO_8601#Time_intervals\n * @return {string}\n */\n toISODate() {\n if (!this.isValid) return INVALID;\n return `${this.s.toISODate()}/${this.e.toISODate()}`;\n }\n\n /**\n * Returns an ISO 8601-compliant string representation of time of this Interval.\n * The date components are ignored.\n * @see https://en.wikipedia.org/wiki/ISO_8601#Time_intervals\n * @param {Object} opts - The same options as {@link DateTime#toISO}\n * @return {string}\n */\n toISOTime(opts) {\n if (!this.isValid) return INVALID;\n return `${this.s.toISOTime(opts)}/${this.e.toISOTime(opts)}`;\n }\n\n /**\n * Returns a string representation of this Interval formatted according to the specified format\n * string. **You may not want this.** See {@link Interval#toLocaleString} for a more flexible\n * formatting tool.\n * @param {string} dateFormat - The format string. This string formats the start and end time.\n * See {@link DateTime#toFormat} for details.\n * @param {Object} opts - Options.\n * @param {string} [opts.separator = ' – '] - A separator to place between the start and end\n * representations.\n * @return {string}\n */\n toFormat(dateFormat, { separator = \" – \" } = {}) {\n if (!this.isValid) return INVALID;\n return `${this.s.toFormat(dateFormat)}${separator}${this.e.toFormat(dateFormat)}`;\n }\n\n /**\n * Return a Duration representing the time spanned by this interval.\n * @param {string|string[]} [unit=['milliseconds']] - the unit or units (such as 'hours' or 'days') to include in the duration.\n * @param {Object} opts - options that affect the creation of the Duration\n * @param {string} [opts.conversionAccuracy='casual'] - the conversion system to use\n * @example Interval.fromDateTimes(dt1, dt2).toDuration().toObject() //=> { milliseconds: 88489257 }\n * @example Interval.fromDateTimes(dt1, dt2).toDuration('days').toObject() //=> { days: 1.0241812152777778 }\n * @example Interval.fromDateTimes(dt1, dt2).toDuration(['hours', 'minutes']).toObject() //=> { hours: 24, minutes: 34.82095 }\n * @example Interval.fromDateTimes(dt1, dt2).toDuration(['hours', 'minutes', 'seconds']).toObject() //=> { hours: 24, minutes: 34, seconds: 49.257 }\n * @example Interval.fromDateTimes(dt1, dt2).toDuration('seconds').toObject() //=> { seconds: 88489.257 }\n * @return {Duration}\n */\n toDuration(unit, opts) {\n if (!this.isValid) {\n return Duration.invalid(this.invalidReason);\n }\n return this.e.diff(this.s, unit, opts);\n }\n\n /**\n * Run mapFn on the interval start and end, returning a new Interval from the resulting DateTimes\n * @param {function} mapFn\n * @return {Interval}\n * @example Interval.fromDateTimes(dt1, dt2).mapEndpoints(endpoint => endpoint.toUTC())\n * @example Interval.fromDateTimes(dt1, dt2).mapEndpoints(endpoint => endpoint.plus({ hours: 2 }))\n */\n mapEndpoints(mapFn) {\n return Interval.fromDateTimes(mapFn(this.s), mapFn(this.e));\n }\n}\n"],"names":["INVALID","validateStartEnd","start","end","Interval","config","reason","explanation","InvalidArgumentError","invalid","Invalid","Settings","InvalidIntervalError","builtStart","friendlyDateTime","builtEnd","validateError","duration","dur","Duration","dt","text","opts","s","e","startIsValid","DateTime","endIsValid","o","unit","dateTime","dateTimes","sorted","d","a","b","results","i","added","next","idx","x","numberOfParts","other","intervals","found","final","sofar","current","item","currentCount","ends","flattened","arr","formatOpts","Formats.DATE_SHORT","Formatter","dateFormat","separator","mapFn"],"mappings":"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","x_google_ignoreList":[0]}
|
package/dist/index.es20.js
CHANGED
package/dist/index.es202.js
CHANGED
@@ -1,51 +1,46 @@
|
|
1
|
-
import { validateWeekSettings as
|
2
|
-
import { formatRelativeTime as
|
1
|
+
import { validateWeekSettings as C, hasLocaleWeekInfo as S, roundTo as N, padStart as O, hasRelative as F } from "./index.es203.js";
|
2
|
+
import { formatRelativeTime as I, months as W, weekdays as D, meridiems as x, eras as Z } from "./index.es386.js";
|
3
3
|
import m from "./index.es4.js";
|
4
4
|
import l from "./index.es197.js";
|
5
|
-
import
|
6
|
-
let
|
7
|
-
function
|
5
|
+
import v from "./index.es211.js";
|
6
|
+
let k = {};
|
7
|
+
function L(n, e = {}) {
|
8
8
|
const t = JSON.stringify([n, e]);
|
9
|
-
let s =
|
10
|
-
return s || (s = new Intl.ListFormat(n, e),
|
9
|
+
let s = k[t];
|
10
|
+
return s || (s = new Intl.ListFormat(n, e), k[t] = s), s;
|
11
11
|
}
|
12
|
-
|
12
|
+
let d = {};
|
13
13
|
function y(n, e = {}) {
|
14
14
|
const t = JSON.stringify([n, e]);
|
15
|
-
let s = d
|
16
|
-
return s
|
15
|
+
let s = d[t];
|
16
|
+
return s || (s = new Intl.DateTimeFormat(n, e), d[t] = s), s;
|
17
17
|
}
|
18
|
-
|
19
|
-
function
|
18
|
+
let g = {};
|
19
|
+
function E(n, e = {}) {
|
20
20
|
const t = JSON.stringify([n, e]);
|
21
|
-
let s = g
|
22
|
-
return s
|
21
|
+
let s = g[t];
|
22
|
+
return s || (s = new Intl.NumberFormat(n, e), g[t] = s), s;
|
23
23
|
}
|
24
|
-
|
25
|
-
function
|
24
|
+
let p = {};
|
25
|
+
function P(n, e = {}) {
|
26
26
|
const { base: t, ...s } = e, i = JSON.stringify([n, s]);
|
27
|
-
let r = p
|
28
|
-
return r
|
27
|
+
let r = p[i];
|
28
|
+
return r || (r = new Intl.RelativeTimeFormat(n, e), p[i] = r), r;
|
29
29
|
}
|
30
30
|
let f = null;
|
31
|
-
function
|
31
|
+
function R() {
|
32
32
|
return f || (f = new Intl.DateTimeFormat().resolvedOptions().locale, f);
|
33
33
|
}
|
34
|
-
|
35
|
-
function
|
36
|
-
let e =
|
37
|
-
return e === void 0 && (e = new Intl.DateTimeFormat(n).resolvedOptions(), C.set(n, e)), e;
|
38
|
-
}
|
39
|
-
const k = /* @__PURE__ */ new Map();
|
40
|
-
function J(n) {
|
41
|
-
let e = k.get(n);
|
34
|
+
let w = {};
|
35
|
+
function M(n) {
|
36
|
+
let e = w[n];
|
42
37
|
if (!e) {
|
43
38
|
const t = new Intl.Locale(n);
|
44
|
-
e = "getWeekInfo" in t ? t.getWeekInfo() : t.weekInfo,
|
39
|
+
e = "getWeekInfo" in t ? t.getWeekInfo() : t.weekInfo, w[n] = e;
|
45
40
|
}
|
46
41
|
return e;
|
47
42
|
}
|
48
|
-
function
|
43
|
+
function z(n) {
|
49
44
|
const e = n.indexOf("-x-");
|
50
45
|
e !== -1 && (n = n.substring(0, e));
|
51
46
|
const t = n.indexOf("-u-");
|
@@ -63,10 +58,10 @@ function U(n) {
|
|
63
58
|
return [i, r, a];
|
64
59
|
}
|
65
60
|
}
|
66
|
-
function
|
61
|
+
function $(n, e, t) {
|
67
62
|
return (t || e) && (n.includes("-u-") || (n += "-u"), t && (n += `-ca-${t}`), e && (n += `-nu-${e}`)), n;
|
68
63
|
}
|
69
|
-
function
|
64
|
+
function J(n) {
|
70
65
|
const e = [];
|
71
66
|
for (let t = 1; t <= 12; t++) {
|
72
67
|
const s = l.utc(2009, t, 1);
|
@@ -74,7 +69,7 @@ function A(n) {
|
|
74
69
|
}
|
75
70
|
return e;
|
76
71
|
}
|
77
|
-
function
|
72
|
+
function U(n) {
|
78
73
|
const e = [];
|
79
74
|
for (let t = 1; t <= 7; t++) {
|
80
75
|
const s = l.utc(2016, 11, 13 + t);
|
@@ -86,16 +81,16 @@ function c(n, e, t, s) {
|
|
86
81
|
const i = n.listingMode();
|
87
82
|
return i === "error" ? null : i === "en" ? t(e) : s(e);
|
88
83
|
}
|
89
|
-
function
|
90
|
-
return n.numberingSystem && n.numberingSystem !== "latn" ? !1 : n.numberingSystem === "latn" || !n.locale || n.locale.startsWith("en") ||
|
84
|
+
function j(n) {
|
85
|
+
return n.numberingSystem && n.numberingSystem !== "latn" ? !1 : n.numberingSystem === "latn" || !n.locale || n.locale.startsWith("en") || new Intl.DateTimeFormat(n.intl).resolvedOptions().numberingSystem === "latn";
|
91
86
|
}
|
92
|
-
class
|
87
|
+
class A {
|
93
88
|
constructor(e, t, s) {
|
94
89
|
this.padTo = s.padTo || 0, this.floor = s.floor || !1;
|
95
90
|
const { padTo: i, floor: r, ...a } = s;
|
96
91
|
if (!t || Object.keys(a).length > 0) {
|
97
92
|
const o = { useGrouping: !1, ...s };
|
98
|
-
s.padTo > 0 && (o.minimumIntegerDigits = s.padTo), this.inf =
|
93
|
+
s.padTo > 0 && (o.minimumIntegerDigits = s.padTo), this.inf = E(e, o);
|
99
94
|
}
|
100
95
|
}
|
101
96
|
format(e) {
|
@@ -103,12 +98,12 @@ class K {
|
|
103
98
|
const t = this.floor ? Math.floor(e) : e;
|
104
99
|
return this.inf.format(t);
|
105
100
|
} else {
|
106
|
-
const t = this.floor ? Math.floor(e) :
|
107
|
-
return
|
101
|
+
const t = this.floor ? Math.floor(e) : N(e, 3);
|
102
|
+
return O(t, this.padTo);
|
108
103
|
}
|
109
104
|
}
|
110
105
|
}
|
111
|
-
class
|
106
|
+
class G {
|
112
107
|
constructor(e, t, s) {
|
113
108
|
this.opts = s, this.originalZone = void 0;
|
114
109
|
let i;
|
@@ -116,7 +111,7 @@ class B {
|
|
116
111
|
this.dt = e;
|
117
112
|
else if (e.zone.type === "fixed") {
|
118
113
|
const a = -1 * (e.offset / 60), o = a >= 0 ? `Etc/GMT+${a}` : `Etc/GMT${a}`;
|
119
|
-
e.offset !== 0 &&
|
114
|
+
e.offset !== 0 && v.create(o).valid ? (i = o, this.dt = e) : (i = "UTC", this.dt = e.offset === 0 ? e : e.setZone("UTC").plus({ minutes: e.offset }), this.originalZone = e.zone);
|
120
115
|
} else e.zone.type === "system" ? this.dt = e : e.zone.type === "iana" ? (this.dt = e, i = e.zone.name) : (i = "UTC", this.dt = e.setZone("UTC").plus({ minutes: e.offset }), this.originalZone = e.zone);
|
121
116
|
const r = { ...this.opts };
|
122
117
|
r.timeZone = r.timeZone || i, this.dtf = y(t, r);
|
@@ -144,18 +139,18 @@ class B {
|
|
144
139
|
return this.dtf.resolvedOptions();
|
145
140
|
}
|
146
141
|
}
|
147
|
-
class
|
142
|
+
class q {
|
148
143
|
constructor(e, t, s) {
|
149
|
-
this.opts = { style: "long", ...s }, !t &&
|
144
|
+
this.opts = { style: "long", ...s }, !t && F() && (this.rtf = P(e, s));
|
150
145
|
}
|
151
146
|
format(e, t) {
|
152
|
-
return this.rtf ? this.rtf.format(e, t) :
|
147
|
+
return this.rtf ? this.rtf.format(e, t) : I(t, e, this.opts.numeric, this.opts.style !== "long");
|
153
148
|
}
|
154
149
|
formatToParts(e, t) {
|
155
150
|
return this.rtf ? this.rtf.formatToParts(e, t) : [];
|
156
151
|
}
|
157
152
|
}
|
158
|
-
const
|
153
|
+
const K = {
|
159
154
|
firstDay: 1,
|
160
155
|
minimalDays: 4,
|
161
156
|
weekend: [6, 7]
|
@@ -171,21 +166,21 @@ class h {
|
|
171
166
|
);
|
172
167
|
}
|
173
168
|
static create(e, t, s, i, r = !1) {
|
174
|
-
const a = e || m.defaultLocale, o = a || (r ? "en-US" :
|
175
|
-
return new h(o, u,
|
169
|
+
const a = e || m.defaultLocale, o = a || (r ? "en-US" : R()), u = t || m.defaultNumberingSystem, T = s || m.defaultOutputCalendar, b = C(i) || m.defaultWeekSettings;
|
170
|
+
return new h(o, u, T, b, a);
|
176
171
|
}
|
177
172
|
static resetCache() {
|
178
|
-
f = null, d
|
173
|
+
f = null, d = {}, g = {}, p = {};
|
179
174
|
}
|
180
175
|
static fromObject({ locale: e, numberingSystem: t, outputCalendar: s, weekSettings: i } = {}) {
|
181
176
|
return h.create(e, t, s, i);
|
182
177
|
}
|
183
178
|
constructor(e, t, s, i, r) {
|
184
|
-
const [a, o, u] =
|
185
|
-
this.locale = a, this.numberingSystem = t || o || null, this.outputCalendar = s || u || null, this.weekSettings = i, this.intl =
|
179
|
+
const [a, o, u] = z(e);
|
180
|
+
this.locale = a, this.numberingSystem = t || o || null, this.outputCalendar = s || u || null, this.weekSettings = i, this.intl = $(this.locale, this.numberingSystem, this.outputCalendar), this.weekdaysCache = { format: {}, standalone: {} }, this.monthsCache = { format: {}, standalone: {} }, this.meridiemCache = null, this.eraCache = {}, this.specifiedLocale = r, this.fastNumbersCached = null;
|
186
181
|
}
|
187
182
|
get fastNumbers() {
|
188
|
-
return this.fastNumbersCached == null && (this.fastNumbersCached =
|
183
|
+
return this.fastNumbersCached == null && (this.fastNumbersCached = j(this)), this.fastNumbersCached;
|
189
184
|
}
|
190
185
|
listingMode() {
|
191
186
|
const e = this.isEnglish(), t = (this.numberingSystem === null || this.numberingSystem === "latn") && (this.outputCalendar === null || this.outputCalendar === "gregory");
|
@@ -196,7 +191,7 @@ class h {
|
|
196
191
|
e.locale || this.specifiedLocale,
|
197
192
|
e.numberingSystem || this.numberingSystem,
|
198
193
|
e.outputCalendar || this.outputCalendar,
|
199
|
-
|
194
|
+
C(e.weekSettings) || this.weekSettings,
|
200
195
|
e.defaultToEN || !1
|
201
196
|
);
|
202
197
|
}
|
@@ -207,15 +202,15 @@ class h {
|
|
207
202
|
return this.clone({ ...e, defaultToEN: !1 });
|
208
203
|
}
|
209
204
|
months(e, t = !1) {
|
210
|
-
return c(this, e,
|
205
|
+
return c(this, e, W, () => {
|
211
206
|
const s = t ? { month: e, day: "numeric" } : { month: e }, i = t ? "format" : "standalone";
|
212
|
-
return this.monthsCache[i][e] || (this.monthsCache[i][e] =
|
207
|
+
return this.monthsCache[i][e] || (this.monthsCache[i][e] = J((r) => this.extract(r, s, "month"))), this.monthsCache[i][e];
|
213
208
|
});
|
214
209
|
}
|
215
210
|
weekdays(e, t = !1) {
|
216
|
-
return c(this, e,
|
211
|
+
return c(this, e, D, () => {
|
217
212
|
const s = t ? { weekday: e, year: "numeric", month: "long", day: "numeric" } : { weekday: e }, i = t ? "format" : "standalone";
|
218
|
-
return this.weekdaysCache[i][e] || (this.weekdaysCache[i][e] =
|
213
|
+
return this.weekdaysCache[i][e] || (this.weekdaysCache[i][e] = U(
|
219
214
|
(r) => this.extract(r, s, "weekday")
|
220
215
|
)), this.weekdaysCache[i][e];
|
221
216
|
});
|
@@ -224,7 +219,7 @@ class h {
|
|
224
219
|
return c(
|
225
220
|
this,
|
226
221
|
void 0,
|
227
|
-
() =>
|
222
|
+
() => x,
|
228
223
|
() => {
|
229
224
|
if (!this.meridiemCache) {
|
230
225
|
const e = { hour: "numeric", hourCycle: "h12" };
|
@@ -237,7 +232,7 @@ class h {
|
|
237
232
|
);
|
238
233
|
}
|
239
234
|
eras(e) {
|
240
|
-
return c(this, e,
|
235
|
+
return c(this, e, Z, () => {
|
241
236
|
const t = { era: e };
|
242
237
|
return this.eraCache[e] || (this.eraCache[e] = [l.utc(-40, 1, 1), l.utc(2017, 1, 1)].map(
|
243
238
|
(s) => this.extract(s, t, "era")
|
@@ -249,22 +244,22 @@ class h {
|
|
249
244
|
return a ? a.value : null;
|
250
245
|
}
|
251
246
|
numberFormatter(e = {}) {
|
252
|
-
return new
|
247
|
+
return new A(this.intl, e.forceSimple || this.fastNumbers, e);
|
253
248
|
}
|
254
249
|
dtFormatter(e, t = {}) {
|
255
|
-
return new
|
250
|
+
return new G(e, this.intl, t);
|
256
251
|
}
|
257
252
|
relFormatter(e = {}) {
|
258
|
-
return new
|
253
|
+
return new q(this.intl, this.isEnglish(), e);
|
259
254
|
}
|
260
255
|
listFormatter(e = {}) {
|
261
|
-
return
|
256
|
+
return L(this.intl, e);
|
262
257
|
}
|
263
258
|
isEnglish() {
|
264
|
-
return this.locale === "en" || this.locale.toLowerCase() === "en-us" ||
|
259
|
+
return this.locale === "en" || this.locale.toLowerCase() === "en-us" || new Intl.DateTimeFormat(this.intl).resolvedOptions().locale.startsWith("en-us");
|
265
260
|
}
|
266
261
|
getWeekSettings() {
|
267
|
-
return this.weekSettings ? this.weekSettings :
|
262
|
+
return this.weekSettings ? this.weekSettings : S() ? M(this.locale) : K;
|
268
263
|
}
|
269
264
|
getStartOfWeek() {
|
270
265
|
return this.getWeekSettings().firstDay;
|
package/dist/index.es202.js.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"index.es202.js","sources":["../node_modules/luxon/src/impl/locale.js"],"sourcesContent":["import { hasLocaleWeekInfo, hasRelative, padStart, roundTo, validateWeekSettings } from \"./util.js\";\nimport * as English from \"./english.js\";\nimport Settings from \"../settings.js\";\nimport DateTime from \"../datetime.js\";\nimport IANAZone from \"../zones/IANAZone.js\";\n\n// todo - remap caching\n\nlet intlLFCache = {};\nfunction getCachedLF(locString, opts = {}) {\n const key = JSON.stringify([locString, opts]);\n let dtf = intlLFCache[key];\n if (!dtf) {\n dtf = new Intl.ListFormat(locString, opts);\n intlLFCache[key] = dtf;\n }\n return dtf;\n}\n\nconst intlDTCache = new Map();\nfunction getCachedDTF(locString, opts = {}) {\n const key = JSON.stringify([locString, opts]);\n let dtf = intlDTCache.get(key);\n if (dtf === undefined) {\n dtf = new Intl.DateTimeFormat(locString, opts);\n intlDTCache.set(key, dtf);\n }\n return dtf;\n}\n\nconst intlNumCache = new Map();\nfunction getCachedINF(locString, opts = {}) {\n const key = JSON.stringify([locString, opts]);\n let inf = intlNumCache.get(key);\n if (inf === undefined) {\n inf = new Intl.NumberFormat(locString, opts);\n intlNumCache.set(key, inf);\n }\n return inf;\n}\n\nconst intlRelCache = new Map();\nfunction getCachedRTF(locString, opts = {}) {\n const { base, ...cacheKeyOpts } = opts; // exclude `base` from the options\n const key = JSON.stringify([locString, cacheKeyOpts]);\n let inf = intlRelCache.get(key);\n if (inf === undefined) {\n inf = new Intl.RelativeTimeFormat(locString, opts);\n intlRelCache.set(key, inf);\n }\n return inf;\n}\n\nlet sysLocaleCache = null;\nfunction systemLocale() {\n if (sysLocaleCache) {\n return sysLocaleCache;\n } else {\n sysLocaleCache = new Intl.DateTimeFormat().resolvedOptions().locale;\n return sysLocaleCache;\n }\n}\n\nconst intlResolvedOptionsCache = new Map();\nfunction getCachedIntResolvedOptions(locString) {\n let opts = intlResolvedOptionsCache.get(locString);\n if (opts === undefined) {\n opts = new Intl.DateTimeFormat(locString).resolvedOptions();\n intlResolvedOptionsCache.set(locString, opts);\n }\n return opts;\n}\n\nconst weekInfoCache = new Map();\nfunction getCachedWeekInfo(locString) {\n let data = weekInfoCache.get(locString);\n if (!data) {\n const locale = new Intl.Locale(locString);\n // browsers currently implement this as a property, but spec says it should be a getter function\n data = \"getWeekInfo\" in locale ? locale.getWeekInfo() : locale.weekInfo;\n // minimalDays was removed from WeekInfo: https://github.com/tc39/proposal-intl-locale-info/issues/86\n if (!(\"minimalDays\" in data)) {\n data = { ...fallbackWeekSettings, ...data };\n }\n weekInfoCache.set(locString, data);\n }\n return data;\n}\n\nfunction parseLocaleString(localeStr) {\n // I really want to avoid writing a BCP 47 parser\n // see, e.g. https://github.com/wooorm/bcp-47\n // Instead, we'll do this:\n\n // a) if the string has no -u extensions, just leave it alone\n // b) if it does, use Intl to resolve everything\n // c) if Intl fails, try again without the -u\n\n // private subtags and unicode subtags have ordering requirements,\n // and we're not properly parsing this, so just strip out the\n // private ones if they exist.\n const xIndex = localeStr.indexOf(\"-x-\");\n if (xIndex !== -1) {\n localeStr = localeStr.substring(0, xIndex);\n }\n\n const uIndex = localeStr.indexOf(\"-u-\");\n if (uIndex === -1) {\n return [localeStr];\n } else {\n let options;\n let selectedStr;\n try {\n options = getCachedDTF(localeStr).resolvedOptions();\n selectedStr = localeStr;\n } catch (e) {\n const smaller = localeStr.substring(0, uIndex);\n options = getCachedDTF(smaller).resolvedOptions();\n selectedStr = smaller;\n }\n\n const { numberingSystem, calendar } = options;\n return [selectedStr, numberingSystem, calendar];\n }\n}\n\nfunction intlConfigString(localeStr, numberingSystem, outputCalendar) {\n if (outputCalendar || numberingSystem) {\n if (!localeStr.includes(\"-u-\")) {\n localeStr += \"-u\";\n }\n\n if (outputCalendar) {\n localeStr += `-ca-${outputCalendar}`;\n }\n\n if (numberingSystem) {\n localeStr += `-nu-${numberingSystem}`;\n }\n return localeStr;\n } else {\n return localeStr;\n }\n}\n\nfunction mapMonths(f) {\n const ms = [];\n for (let i = 1; i <= 12; i++) {\n const dt = DateTime.utc(2009, i, 1);\n ms.push(f(dt));\n }\n return ms;\n}\n\nfunction mapWeekdays(f) {\n const ms = [];\n for (let i = 1; i <= 7; i++) {\n const dt = DateTime.utc(2016, 11, 13 + i);\n ms.push(f(dt));\n }\n return ms;\n}\n\nfunction listStuff(loc, length, englishFn, intlFn) {\n const mode = loc.listingMode();\n\n if (mode === \"error\") {\n return null;\n } else if (mode === \"en\") {\n return englishFn(length);\n } else {\n return intlFn(length);\n }\n}\n\nfunction supportsFastNumbers(loc) {\n if (loc.numberingSystem && loc.numberingSystem !== \"latn\") {\n return false;\n } else {\n return (\n loc.numberingSystem === \"latn\" ||\n !loc.locale ||\n loc.locale.startsWith(\"en\") ||\n getCachedIntResolvedOptions(loc.locale).numberingSystem === \"latn\"\n );\n }\n}\n\n/**\n * @private\n */\n\nclass PolyNumberFormatter {\n constructor(intl, forceSimple, opts) {\n this.padTo = opts.padTo || 0;\n this.floor = opts.floor || false;\n\n const { padTo, floor, ...otherOpts } = opts;\n\n if (!forceSimple || Object.keys(otherOpts).length > 0) {\n const intlOpts = { useGrouping: false, ...opts };\n if (opts.padTo > 0) intlOpts.minimumIntegerDigits = opts.padTo;\n this.inf = getCachedINF(intl, intlOpts);\n }\n }\n\n format(i) {\n if (this.inf) {\n const fixed = this.floor ? Math.floor(i) : i;\n return this.inf.format(fixed);\n } else {\n // to match the browser's numberformatter defaults\n const fixed = this.floor ? Math.floor(i) : roundTo(i, 3);\n return padStart(fixed, this.padTo);\n }\n }\n}\n\n/**\n * @private\n */\n\nclass PolyDateFormatter {\n constructor(dt, intl, opts) {\n this.opts = opts;\n this.originalZone = undefined;\n\n let z = undefined;\n if (this.opts.timeZone) {\n // Don't apply any workarounds if a timeZone is explicitly provided in opts\n this.dt = dt;\n } else if (dt.zone.type === \"fixed\") {\n // UTC-8 or Etc/UTC-8 are not part of tzdata, only Etc/GMT+8 and the like.\n // That is why fixed-offset TZ is set to that unless it is:\n // 1. Representing offset 0 when UTC is used to maintain previous behavior and does not become GMT.\n // 2. Unsupported by the browser:\n // - some do not support Etc/\n // - < Etc/GMT-14, > Etc/GMT+12, and 30-minute or 45-minute offsets are not part of tzdata\n const gmtOffset = -1 * (dt.offset / 60);\n const offsetZ = gmtOffset >= 0 ? `Etc/GMT+${gmtOffset}` : `Etc/GMT${gmtOffset}`;\n if (dt.offset !== 0 && IANAZone.create(offsetZ).valid) {\n z = offsetZ;\n this.dt = dt;\n } else {\n // Not all fixed-offset zones like Etc/+4:30 are present in tzdata so\n // we manually apply the offset and substitute the zone as needed.\n z = \"UTC\";\n this.dt = dt.offset === 0 ? dt : dt.setZone(\"UTC\").plus({ minutes: dt.offset });\n this.originalZone = dt.zone;\n }\n } else if (dt.zone.type === \"system\") {\n this.dt = dt;\n } else if (dt.zone.type === \"iana\") {\n this.dt = dt;\n z = dt.zone.name;\n } else {\n // Custom zones can have any offset / offsetName so we just manually\n // apply the offset and substitute the zone as needed.\n z = \"UTC\";\n this.dt = dt.setZone(\"UTC\").plus({ minutes: dt.offset });\n this.originalZone = dt.zone;\n }\n\n const intlOpts = { ...this.opts };\n intlOpts.timeZone = intlOpts.timeZone || z;\n this.dtf = getCachedDTF(intl, intlOpts);\n }\n\n format() {\n if (this.originalZone) {\n // If we have to substitute in the actual zone name, we have to use\n // formatToParts so that the timezone can be replaced.\n return this.formatToParts()\n .map(({ value }) => value)\n .join(\"\");\n }\n return this.dtf.format(this.dt.toJSDate());\n }\n\n formatToParts() {\n const parts = this.dtf.formatToParts(this.dt.toJSDate());\n if (this.originalZone) {\n return parts.map((part) => {\n if (part.type === \"timeZoneName\") {\n const offsetName = this.originalZone.offsetName(this.dt.ts, {\n locale: this.dt.locale,\n format: this.opts.timeZoneName,\n });\n return {\n ...part,\n value: offsetName,\n };\n } else {\n return part;\n }\n });\n }\n return parts;\n }\n\n resolvedOptions() {\n return this.dtf.resolvedOptions();\n }\n}\n\n/**\n * @private\n */\nclass PolyRelFormatter {\n constructor(intl, isEnglish, opts) {\n this.opts = { style: \"long\", ...opts };\n if (!isEnglish && hasRelative()) {\n this.rtf = getCachedRTF(intl, opts);\n }\n }\n\n format(count, unit) {\n if (this.rtf) {\n return this.rtf.format(count, unit);\n } else {\n return English.formatRelativeTime(unit, count, this.opts.numeric, this.opts.style !== \"long\");\n }\n }\n\n formatToParts(count, unit) {\n if (this.rtf) {\n return this.rtf.formatToParts(count, unit);\n } else {\n return [];\n }\n }\n}\n\nconst fallbackWeekSettings = {\n firstDay: 1,\n minimalDays: 4,\n weekend: [6, 7],\n};\n\n/**\n * @private\n */\nexport default class Locale {\n static fromOpts(opts) {\n return Locale.create(\n opts.locale,\n opts.numberingSystem,\n opts.outputCalendar,\n opts.weekSettings,\n opts.defaultToEN\n );\n }\n\n static create(locale, numberingSystem, outputCalendar, weekSettings, defaultToEN = false) {\n const specifiedLocale = locale || Settings.defaultLocale;\n // the system locale is useful for human-readable strings but annoying for parsing/formatting known formats\n const localeR = specifiedLocale || (defaultToEN ? \"en-US\" : systemLocale());\n const numberingSystemR = numberingSystem || Settings.defaultNumberingSystem;\n const outputCalendarR = outputCalendar || Settings.defaultOutputCalendar;\n const weekSettingsR = validateWeekSettings(weekSettings) || Settings.defaultWeekSettings;\n return new Locale(localeR, numberingSystemR, outputCalendarR, weekSettingsR, specifiedLocale);\n }\n\n static resetCache() {\n sysLocaleCache = null;\n intlDTCache.clear();\n intlNumCache.clear();\n intlRelCache.clear();\n intlResolvedOptionsCache.clear();\n weekInfoCache.clear();\n }\n\n static fromObject({ locale, numberingSystem, outputCalendar, weekSettings } = {}) {\n return Locale.create(locale, numberingSystem, outputCalendar, weekSettings);\n }\n\n constructor(locale, numbering, outputCalendar, weekSettings, specifiedLocale) {\n const [parsedLocale, parsedNumberingSystem, parsedOutputCalendar] = parseLocaleString(locale);\n\n this.locale = parsedLocale;\n this.numberingSystem = numbering || parsedNumberingSystem || null;\n this.outputCalendar = outputCalendar || parsedOutputCalendar || null;\n this.weekSettings = weekSettings;\n this.intl = intlConfigString(this.locale, this.numberingSystem, this.outputCalendar);\n\n this.weekdaysCache = { format: {}, standalone: {} };\n this.monthsCache = { format: {}, standalone: {} };\n this.meridiemCache = null;\n this.eraCache = {};\n\n this.specifiedLocale = specifiedLocale;\n this.fastNumbersCached = null;\n }\n\n get fastNumbers() {\n if (this.fastNumbersCached == null) {\n this.fastNumbersCached = supportsFastNumbers(this);\n }\n\n return this.fastNumbersCached;\n }\n\n listingMode() {\n const isActuallyEn = this.isEnglish();\n const hasNoWeirdness =\n (this.numberingSystem === null || this.numberingSystem === \"latn\") &&\n (this.outputCalendar === null || this.outputCalendar === \"gregory\");\n return isActuallyEn && hasNoWeirdness ? \"en\" : \"intl\";\n }\n\n clone(alts) {\n if (!alts || Object.getOwnPropertyNames(alts).length === 0) {\n return this;\n } else {\n return Locale.create(\n alts.locale || this.specifiedLocale,\n alts.numberingSystem || this.numberingSystem,\n alts.outputCalendar || this.outputCalendar,\n validateWeekSettings(alts.weekSettings) || this.weekSettings,\n alts.defaultToEN || false\n );\n }\n }\n\n redefaultToEN(alts = {}) {\n return this.clone({ ...alts, defaultToEN: true });\n }\n\n redefaultToSystem(alts = {}) {\n return this.clone({ ...alts, defaultToEN: false });\n }\n\n months(length, format = false) {\n return listStuff(this, length, English.months, () => {\n const intl = format ? { month: length, day: \"numeric\" } : { month: length },\n formatStr = format ? \"format\" : \"standalone\";\n if (!this.monthsCache[formatStr][length]) {\n this.monthsCache[formatStr][length] = mapMonths((dt) => this.extract(dt, intl, \"month\"));\n }\n return this.monthsCache[formatStr][length];\n });\n }\n\n weekdays(length, format = false) {\n return listStuff(this, length, English.weekdays, () => {\n const intl = format\n ? { weekday: length, year: \"numeric\", month: \"long\", day: \"numeric\" }\n : { weekday: length },\n formatStr = format ? \"format\" : \"standalone\";\n if (!this.weekdaysCache[formatStr][length]) {\n this.weekdaysCache[formatStr][length] = mapWeekdays((dt) =>\n this.extract(dt, intl, \"weekday\")\n );\n }\n return this.weekdaysCache[formatStr][length];\n });\n }\n\n meridiems() {\n return listStuff(\n this,\n undefined,\n () => English.meridiems,\n () => {\n // In theory there could be aribitrary day periods. We're gonna assume there are exactly two\n // for AM and PM. This is probably wrong, but it's makes parsing way easier.\n if (!this.meridiemCache) {\n const intl = { hour: \"numeric\", hourCycle: \"h12\" };\n this.meridiemCache = [DateTime.utc(2016, 11, 13, 9), DateTime.utc(2016, 11, 13, 19)].map(\n (dt) => this.extract(dt, intl, \"dayperiod\")\n );\n }\n\n return this.meridiemCache;\n }\n );\n }\n\n eras(length) {\n return listStuff(this, length, English.eras, () => {\n const intl = { era: length };\n\n // This is problematic. Different calendars are going to define eras totally differently. What I need is the minimum set of dates\n // to definitely enumerate them.\n if (!this.eraCache[length]) {\n this.eraCache[length] = [DateTime.utc(-40, 1, 1), DateTime.utc(2017, 1, 1)].map((dt) =>\n this.extract(dt, intl, \"era\")\n );\n }\n\n return this.eraCache[length];\n });\n }\n\n extract(dt, intlOpts, field) {\n const df = this.dtFormatter(dt, intlOpts),\n results = df.formatToParts(),\n matching = results.find((m) => m.type.toLowerCase() === field);\n return matching ? matching.value : null;\n }\n\n numberFormatter(opts = {}) {\n // this forcesimple option is never used (the only caller short-circuits on it, but it seems safer to leave)\n // (in contrast, the rest of the condition is used heavily)\n return new PolyNumberFormatter(this.intl, opts.forceSimple || this.fastNumbers, opts);\n }\n\n dtFormatter(dt, intlOpts = {}) {\n return new PolyDateFormatter(dt, this.intl, intlOpts);\n }\n\n relFormatter(opts = {}) {\n return new PolyRelFormatter(this.intl, this.isEnglish(), opts);\n }\n\n listFormatter(opts = {}) {\n return getCachedLF(this.intl, opts);\n }\n\n isEnglish() {\n return (\n this.locale === \"en\" ||\n this.locale.toLowerCase() === \"en-us\" ||\n getCachedIntResolvedOptions(this.intl).locale.startsWith(\"en-us\")\n );\n }\n\n getWeekSettings() {\n if (this.weekSettings) {\n return this.weekSettings;\n } else if (!hasLocaleWeekInfo()) {\n return fallbackWeekSettings;\n } else {\n return getCachedWeekInfo(this.locale);\n }\n }\n\n getStartOfWeek() {\n return this.getWeekSettings().firstDay;\n }\n\n getMinDaysInFirstWeek() {\n return this.getWeekSettings().minimalDays;\n }\n\n getWeekendDays() {\n return this.getWeekSettings().weekend;\n }\n\n equals(other) {\n return (\n this.locale === other.locale &&\n this.numberingSystem === other.numberingSystem &&\n this.outputCalendar === other.outputCalendar\n );\n }\n\n toString() {\n return `Locale(${this.locale}, ${this.numberingSystem}, ${this.outputCalendar})`;\n }\n}\n"],"names":["intlLFCache","getCachedLF","locString","opts","key","dtf","intlDTCache","getCachedDTF","intlNumCache","getCachedINF","inf","intlRelCache","getCachedRTF","base","cacheKeyOpts","sysLocaleCache","systemLocale","intlResolvedOptionsCache","getCachedIntResolvedOptions","weekInfoCache","getCachedWeekInfo","data","locale","fallbackWeekSettings","parseLocaleString","localeStr","xIndex","uIndex","options","selectedStr","smaller","numberingSystem","calendar","intlConfigString","outputCalendar","mapMonths","f","ms","i","dt","DateTime","mapWeekdays","listStuff","loc","length","englishFn","intlFn","mode","supportsFastNumbers","PolyNumberFormatter","intl","forceSimple","padTo","floor","otherOpts","intlOpts","fixed","roundTo","padStart","PolyDateFormatter","z","gmtOffset","offsetZ","IANAZone","value","parts","part","offsetName","PolyRelFormatter","isEnglish","hasRelative","count","unit","English.formatRelativeTime","Locale","weekSettings","defaultToEN","specifiedLocale","Settings","localeR","numberingSystemR","outputCalendarR","weekSettingsR","validateWeekSettings","numbering","parsedLocale","parsedNumberingSystem","parsedOutputCalendar","isActuallyEn","hasNoWeirdness","alts","format","English.months","formatStr","English.weekdays","English.meridiems","English.eras","field","df","results","matching","m","hasLocaleWeekInfo","other"],"mappings":"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","x_google_ignoreList":[0]}
|
1
|
+
{"version":3,"file":"index.es202.js","sources":["../node_modules/luxon/src/impl/locale.js"],"sourcesContent":["import { hasLocaleWeekInfo, hasRelative, padStart, roundTo, validateWeekSettings } from \"./util.js\";\nimport * as English from \"./english.js\";\nimport Settings from \"../settings.js\";\nimport DateTime from \"../datetime.js\";\nimport IANAZone from \"../zones/IANAZone.js\";\n\n// todo - remap caching\n\nlet intlLFCache = {};\nfunction getCachedLF(locString, opts = {}) {\n const key = JSON.stringify([locString, opts]);\n let dtf = intlLFCache[key];\n if (!dtf) {\n dtf = new Intl.ListFormat(locString, opts);\n intlLFCache[key] = dtf;\n }\n return dtf;\n}\n\nlet intlDTCache = {};\nfunction getCachedDTF(locString, opts = {}) {\n const key = JSON.stringify([locString, opts]);\n let dtf = intlDTCache[key];\n if (!dtf) {\n dtf = new Intl.DateTimeFormat(locString, opts);\n intlDTCache[key] = dtf;\n }\n return dtf;\n}\n\nlet intlNumCache = {};\nfunction getCachedINF(locString, opts = {}) {\n const key = JSON.stringify([locString, opts]);\n let inf = intlNumCache[key];\n if (!inf) {\n inf = new Intl.NumberFormat(locString, opts);\n intlNumCache[key] = inf;\n }\n return inf;\n}\n\nlet intlRelCache = {};\nfunction getCachedRTF(locString, opts = {}) {\n const { base, ...cacheKeyOpts } = opts; // exclude `base` from the options\n const key = JSON.stringify([locString, cacheKeyOpts]);\n let inf = intlRelCache[key];\n if (!inf) {\n inf = new Intl.RelativeTimeFormat(locString, opts);\n intlRelCache[key] = inf;\n }\n return inf;\n}\n\nlet sysLocaleCache = null;\nfunction systemLocale() {\n if (sysLocaleCache) {\n return sysLocaleCache;\n } else {\n sysLocaleCache = new Intl.DateTimeFormat().resolvedOptions().locale;\n return sysLocaleCache;\n }\n}\n\nlet weekInfoCache = {};\nfunction getCachedWeekInfo(locString) {\n let data = weekInfoCache[locString];\n if (!data) {\n const locale = new Intl.Locale(locString);\n // browsers currently implement this as a property, but spec says it should be a getter function\n data = \"getWeekInfo\" in locale ? locale.getWeekInfo() : locale.weekInfo;\n weekInfoCache[locString] = data;\n }\n return data;\n}\n\nfunction parseLocaleString(localeStr) {\n // I really want to avoid writing a BCP 47 parser\n // see, e.g. https://github.com/wooorm/bcp-47\n // Instead, we'll do this:\n\n // a) if the string has no -u extensions, just leave it alone\n // b) if it does, use Intl to resolve everything\n // c) if Intl fails, try again without the -u\n\n // private subtags and unicode subtags have ordering requirements,\n // and we're not properly parsing this, so just strip out the\n // private ones if they exist.\n const xIndex = localeStr.indexOf(\"-x-\");\n if (xIndex !== -1) {\n localeStr = localeStr.substring(0, xIndex);\n }\n\n const uIndex = localeStr.indexOf(\"-u-\");\n if (uIndex === -1) {\n return [localeStr];\n } else {\n let options;\n let selectedStr;\n try {\n options = getCachedDTF(localeStr).resolvedOptions();\n selectedStr = localeStr;\n } catch (e) {\n const smaller = localeStr.substring(0, uIndex);\n options = getCachedDTF(smaller).resolvedOptions();\n selectedStr = smaller;\n }\n\n const { numberingSystem, calendar } = options;\n return [selectedStr, numberingSystem, calendar];\n }\n}\n\nfunction intlConfigString(localeStr, numberingSystem, outputCalendar) {\n if (outputCalendar || numberingSystem) {\n if (!localeStr.includes(\"-u-\")) {\n localeStr += \"-u\";\n }\n\n if (outputCalendar) {\n localeStr += `-ca-${outputCalendar}`;\n }\n\n if (numberingSystem) {\n localeStr += `-nu-${numberingSystem}`;\n }\n return localeStr;\n } else {\n return localeStr;\n }\n}\n\nfunction mapMonths(f) {\n const ms = [];\n for (let i = 1; i <= 12; i++) {\n const dt = DateTime.utc(2009, i, 1);\n ms.push(f(dt));\n }\n return ms;\n}\n\nfunction mapWeekdays(f) {\n const ms = [];\n for (let i = 1; i <= 7; i++) {\n const dt = DateTime.utc(2016, 11, 13 + i);\n ms.push(f(dt));\n }\n return ms;\n}\n\nfunction listStuff(loc, length, englishFn, intlFn) {\n const mode = loc.listingMode();\n\n if (mode === \"error\") {\n return null;\n } else if (mode === \"en\") {\n return englishFn(length);\n } else {\n return intlFn(length);\n }\n}\n\nfunction supportsFastNumbers(loc) {\n if (loc.numberingSystem && loc.numberingSystem !== \"latn\") {\n return false;\n } else {\n return (\n loc.numberingSystem === \"latn\" ||\n !loc.locale ||\n loc.locale.startsWith(\"en\") ||\n new Intl.DateTimeFormat(loc.intl).resolvedOptions().numberingSystem === \"latn\"\n );\n }\n}\n\n/**\n * @private\n */\n\nclass PolyNumberFormatter {\n constructor(intl, forceSimple, opts) {\n this.padTo = opts.padTo || 0;\n this.floor = opts.floor || false;\n\n const { padTo, floor, ...otherOpts } = opts;\n\n if (!forceSimple || Object.keys(otherOpts).length > 0) {\n const intlOpts = { useGrouping: false, ...opts };\n if (opts.padTo > 0) intlOpts.minimumIntegerDigits = opts.padTo;\n this.inf = getCachedINF(intl, intlOpts);\n }\n }\n\n format(i) {\n if (this.inf) {\n const fixed = this.floor ? Math.floor(i) : i;\n return this.inf.format(fixed);\n } else {\n // to match the browser's numberformatter defaults\n const fixed = this.floor ? Math.floor(i) : roundTo(i, 3);\n return padStart(fixed, this.padTo);\n }\n }\n}\n\n/**\n * @private\n */\n\nclass PolyDateFormatter {\n constructor(dt, intl, opts) {\n this.opts = opts;\n this.originalZone = undefined;\n\n let z = undefined;\n if (this.opts.timeZone) {\n // Don't apply any workarounds if a timeZone is explicitly provided in opts\n this.dt = dt;\n } else if (dt.zone.type === \"fixed\") {\n // UTC-8 or Etc/UTC-8 are not part of tzdata, only Etc/GMT+8 and the like.\n // That is why fixed-offset TZ is set to that unless it is:\n // 1. Representing offset 0 when UTC is used to maintain previous behavior and does not become GMT.\n // 2. Unsupported by the browser:\n // - some do not support Etc/\n // - < Etc/GMT-14, > Etc/GMT+12, and 30-minute or 45-minute offsets are not part of tzdata\n const gmtOffset = -1 * (dt.offset / 60);\n const offsetZ = gmtOffset >= 0 ? `Etc/GMT+${gmtOffset}` : `Etc/GMT${gmtOffset}`;\n if (dt.offset !== 0 && IANAZone.create(offsetZ).valid) {\n z = offsetZ;\n this.dt = dt;\n } else {\n // Not all fixed-offset zones like Etc/+4:30 are present in tzdata so\n // we manually apply the offset and substitute the zone as needed.\n z = \"UTC\";\n this.dt = dt.offset === 0 ? dt : dt.setZone(\"UTC\").plus({ minutes: dt.offset });\n this.originalZone = dt.zone;\n }\n } else if (dt.zone.type === \"system\") {\n this.dt = dt;\n } else if (dt.zone.type === \"iana\") {\n this.dt = dt;\n z = dt.zone.name;\n } else {\n // Custom zones can have any offset / offsetName so we just manually\n // apply the offset and substitute the zone as needed.\n z = \"UTC\";\n this.dt = dt.setZone(\"UTC\").plus({ minutes: dt.offset });\n this.originalZone = dt.zone;\n }\n\n const intlOpts = { ...this.opts };\n intlOpts.timeZone = intlOpts.timeZone || z;\n this.dtf = getCachedDTF(intl, intlOpts);\n }\n\n format() {\n if (this.originalZone) {\n // If we have to substitute in the actual zone name, we have to use\n // formatToParts so that the timezone can be replaced.\n return this.formatToParts()\n .map(({ value }) => value)\n .join(\"\");\n }\n return this.dtf.format(this.dt.toJSDate());\n }\n\n formatToParts() {\n const parts = this.dtf.formatToParts(this.dt.toJSDate());\n if (this.originalZone) {\n return parts.map((part) => {\n if (part.type === \"timeZoneName\") {\n const offsetName = this.originalZone.offsetName(this.dt.ts, {\n locale: this.dt.locale,\n format: this.opts.timeZoneName,\n });\n return {\n ...part,\n value: offsetName,\n };\n } else {\n return part;\n }\n });\n }\n return parts;\n }\n\n resolvedOptions() {\n return this.dtf.resolvedOptions();\n }\n}\n\n/**\n * @private\n */\nclass PolyRelFormatter {\n constructor(intl, isEnglish, opts) {\n this.opts = { style: \"long\", ...opts };\n if (!isEnglish && hasRelative()) {\n this.rtf = getCachedRTF(intl, opts);\n }\n }\n\n format(count, unit) {\n if (this.rtf) {\n return this.rtf.format(count, unit);\n } else {\n return English.formatRelativeTime(unit, count, this.opts.numeric, this.opts.style !== \"long\");\n }\n }\n\n formatToParts(count, unit) {\n if (this.rtf) {\n return this.rtf.formatToParts(count, unit);\n } else {\n return [];\n }\n }\n}\n\nconst fallbackWeekSettings = {\n firstDay: 1,\n minimalDays: 4,\n weekend: [6, 7],\n};\n\n/**\n * @private\n */\n\nexport default class Locale {\n static fromOpts(opts) {\n return Locale.create(\n opts.locale,\n opts.numberingSystem,\n opts.outputCalendar,\n opts.weekSettings,\n opts.defaultToEN\n );\n }\n\n static create(locale, numberingSystem, outputCalendar, weekSettings, defaultToEN = false) {\n const specifiedLocale = locale || Settings.defaultLocale;\n // the system locale is useful for human-readable strings but annoying for parsing/formatting known formats\n const localeR = specifiedLocale || (defaultToEN ? \"en-US\" : systemLocale());\n const numberingSystemR = numberingSystem || Settings.defaultNumberingSystem;\n const outputCalendarR = outputCalendar || Settings.defaultOutputCalendar;\n const weekSettingsR = validateWeekSettings(weekSettings) || Settings.defaultWeekSettings;\n return new Locale(localeR, numberingSystemR, outputCalendarR, weekSettingsR, specifiedLocale);\n }\n\n static resetCache() {\n sysLocaleCache = null;\n intlDTCache = {};\n intlNumCache = {};\n intlRelCache = {};\n }\n\n static fromObject({ locale, numberingSystem, outputCalendar, weekSettings } = {}) {\n return Locale.create(locale, numberingSystem, outputCalendar, weekSettings);\n }\n\n constructor(locale, numbering, outputCalendar, weekSettings, specifiedLocale) {\n const [parsedLocale, parsedNumberingSystem, parsedOutputCalendar] = parseLocaleString(locale);\n\n this.locale = parsedLocale;\n this.numberingSystem = numbering || parsedNumberingSystem || null;\n this.outputCalendar = outputCalendar || parsedOutputCalendar || null;\n this.weekSettings = weekSettings;\n this.intl = intlConfigString(this.locale, this.numberingSystem, this.outputCalendar);\n\n this.weekdaysCache = { format: {}, standalone: {} };\n this.monthsCache = { format: {}, standalone: {} };\n this.meridiemCache = null;\n this.eraCache = {};\n\n this.specifiedLocale = specifiedLocale;\n this.fastNumbersCached = null;\n }\n\n get fastNumbers() {\n if (this.fastNumbersCached == null) {\n this.fastNumbersCached = supportsFastNumbers(this);\n }\n\n return this.fastNumbersCached;\n }\n\n listingMode() {\n const isActuallyEn = this.isEnglish();\n const hasNoWeirdness =\n (this.numberingSystem === null || this.numberingSystem === \"latn\") &&\n (this.outputCalendar === null || this.outputCalendar === \"gregory\");\n return isActuallyEn && hasNoWeirdness ? \"en\" : \"intl\";\n }\n\n clone(alts) {\n if (!alts || Object.getOwnPropertyNames(alts).length === 0) {\n return this;\n } else {\n return Locale.create(\n alts.locale || this.specifiedLocale,\n alts.numberingSystem || this.numberingSystem,\n alts.outputCalendar || this.outputCalendar,\n validateWeekSettings(alts.weekSettings) || this.weekSettings,\n alts.defaultToEN || false\n );\n }\n }\n\n redefaultToEN(alts = {}) {\n return this.clone({ ...alts, defaultToEN: true });\n }\n\n redefaultToSystem(alts = {}) {\n return this.clone({ ...alts, defaultToEN: false });\n }\n\n months(length, format = false) {\n return listStuff(this, length, English.months, () => {\n const intl = format ? { month: length, day: \"numeric\" } : { month: length },\n formatStr = format ? \"format\" : \"standalone\";\n if (!this.monthsCache[formatStr][length]) {\n this.monthsCache[formatStr][length] = mapMonths((dt) => this.extract(dt, intl, \"month\"));\n }\n return this.monthsCache[formatStr][length];\n });\n }\n\n weekdays(length, format = false) {\n return listStuff(this, length, English.weekdays, () => {\n const intl = format\n ? { weekday: length, year: \"numeric\", month: \"long\", day: \"numeric\" }\n : { weekday: length },\n formatStr = format ? \"format\" : \"standalone\";\n if (!this.weekdaysCache[formatStr][length]) {\n this.weekdaysCache[formatStr][length] = mapWeekdays((dt) =>\n this.extract(dt, intl, \"weekday\")\n );\n }\n return this.weekdaysCache[formatStr][length];\n });\n }\n\n meridiems() {\n return listStuff(\n this,\n undefined,\n () => English.meridiems,\n () => {\n // In theory there could be aribitrary day periods. We're gonna assume there are exactly two\n // for AM and PM. This is probably wrong, but it's makes parsing way easier.\n if (!this.meridiemCache) {\n const intl = { hour: \"numeric\", hourCycle: \"h12\" };\n this.meridiemCache = [DateTime.utc(2016, 11, 13, 9), DateTime.utc(2016, 11, 13, 19)].map(\n (dt) => this.extract(dt, intl, \"dayperiod\")\n );\n }\n\n return this.meridiemCache;\n }\n );\n }\n\n eras(length) {\n return listStuff(this, length, English.eras, () => {\n const intl = { era: length };\n\n // This is problematic. Different calendars are going to define eras totally differently. What I need is the minimum set of dates\n // to definitely enumerate them.\n if (!this.eraCache[length]) {\n this.eraCache[length] = [DateTime.utc(-40, 1, 1), DateTime.utc(2017, 1, 1)].map((dt) =>\n this.extract(dt, intl, \"era\")\n );\n }\n\n return this.eraCache[length];\n });\n }\n\n extract(dt, intlOpts, field) {\n const df = this.dtFormatter(dt, intlOpts),\n results = df.formatToParts(),\n matching = results.find((m) => m.type.toLowerCase() === field);\n return matching ? matching.value : null;\n }\n\n numberFormatter(opts = {}) {\n // this forcesimple option is never used (the only caller short-circuits on it, but it seems safer to leave)\n // (in contrast, the rest of the condition is used heavily)\n return new PolyNumberFormatter(this.intl, opts.forceSimple || this.fastNumbers, opts);\n }\n\n dtFormatter(dt, intlOpts = {}) {\n return new PolyDateFormatter(dt, this.intl, intlOpts);\n }\n\n relFormatter(opts = {}) {\n return new PolyRelFormatter(this.intl, this.isEnglish(), opts);\n }\n\n listFormatter(opts = {}) {\n return getCachedLF(this.intl, opts);\n }\n\n isEnglish() {\n return (\n this.locale === \"en\" ||\n this.locale.toLowerCase() === \"en-us\" ||\n new Intl.DateTimeFormat(this.intl).resolvedOptions().locale.startsWith(\"en-us\")\n );\n }\n\n getWeekSettings() {\n if (this.weekSettings) {\n return this.weekSettings;\n } else if (!hasLocaleWeekInfo()) {\n return fallbackWeekSettings;\n } else {\n return getCachedWeekInfo(this.locale);\n }\n }\n\n getStartOfWeek() {\n return this.getWeekSettings().firstDay;\n }\n\n getMinDaysInFirstWeek() {\n return this.getWeekSettings().minimalDays;\n }\n\n getWeekendDays() {\n return this.getWeekSettings().weekend;\n }\n\n equals(other) {\n return (\n this.locale === other.locale &&\n this.numberingSystem === other.numberingSystem &&\n this.outputCalendar === other.outputCalendar\n );\n }\n\n toString() {\n return `Locale(${this.locale}, ${this.numberingSystem}, ${this.outputCalendar})`;\n }\n}\n"],"names":["intlLFCache","getCachedLF","locString","opts","key","dtf","intlDTCache","getCachedDTF","intlNumCache","getCachedINF","inf","intlRelCache","getCachedRTF","base","cacheKeyOpts","sysLocaleCache","systemLocale","weekInfoCache","getCachedWeekInfo","data","locale","parseLocaleString","localeStr","xIndex","uIndex","options","selectedStr","smaller","numberingSystem","calendar","intlConfigString","outputCalendar","mapMonths","f","ms","i","dt","DateTime","mapWeekdays","listStuff","loc","length","englishFn","intlFn","mode","supportsFastNumbers","PolyNumberFormatter","intl","forceSimple","padTo","floor","otherOpts","intlOpts","fixed","roundTo","padStart","PolyDateFormatter","z","gmtOffset","offsetZ","IANAZone","value","parts","part","offsetName","PolyRelFormatter","isEnglish","hasRelative","count","unit","English.formatRelativeTime","fallbackWeekSettings","Locale","weekSettings","defaultToEN","specifiedLocale","Settings","localeR","numberingSystemR","outputCalendarR","weekSettingsR","validateWeekSettings","numbering","parsedLocale","parsedNumberingSystem","parsedOutputCalendar","isActuallyEn","hasNoWeirdness","alts","format","English.months","formatStr","English.weekdays","English.meridiems","English.eras","field","df","results","matching","m","hasLocaleWeekInfo","other"],"mappings":"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","x_google_ignoreList":[0]}
|
package/dist/index.es21.js
CHANGED
@@ -2,7 +2,7 @@ import { j as e } from "./index.es216.js";
|
|
2
2
|
import { Container as m } from "./index.es6.js";
|
3
3
|
import { LOGOS as n } from "./index.es25.js";
|
4
4
|
import { Divider as l } from "./index.es241.js";
|
5
|
-
import { clsx as x } from "./index.
|
5
|
+
import { clsx as x } from "./index.es218.js";
|
6
6
|
import { Row as d } from "./index.es9.js";
|
7
7
|
const b = ({
|
8
8
|
asLink: i = "a",
|